/* Photo-first hero (Jordan, 2026-10-18): one photo with nothing on it, then
   the H1 and description underneath on the page background. Every page with a
   hero uses this, so they all look the same.

   The photo fills a wide frame edge to edge, cropped to fit (Jordan,
   2026-10-19: "we can really be doing this crop across the site"). No blurred
   side bars. The frame is 16:9 on desktop (at most two thirds of the screen
   tall) and 4:3 on phones, so the H1 still shows under it. The crop sits a
   little above centre, where faces usually are. If a crop cuts off
   the subject, move it with style="--phero-pos:50% 10%" on .phero-photo. */
.phero{position:relative;background:transparent;color:var(--ink,#15110f)}
.hero.phero{background:transparent;border-bottom:0}
.phero-photo{position:relative;overflow:hidden;background:#15110f;margin:0;width:100%;height:min(66vh,56.25vw);height:min(66svh,56.25vw)}
.phero-photo picture{display:contents}
.phero-photo img{position:absolute;inset:0;display:block;width:100%;height:100%;max-width:none;max-height:none;margin:0;border-radius:0;object-fit:cover;object-position:var(--phero-pos,50% 35%)}
.phero-copy{max-width:1080px;margin:0 auto;padding:clamp(30px,5vw,60px) 22px clamp(36px,5vw,64px);text-align:center;display:flex;flex-direction:column;align-items:center}
.phero-copy h1{margin:0 auto;max-width:22ch;font-size:clamp(34px,5.4vw,64px);line-height:1.02;color:var(--ink,#15110f);text-shadow:none}
.phero-copy h1 em{font-style:normal;color:var(--fuchsia,#E83C8E)}
.phero-copy .eyebrow,.phero-copy .kicker,.phero-copy .hero-eyebrow{margin:0 0 14px;color:var(--fuchsia,#E83C8E);opacity:1;text-shadow:none}
/* The description reads as plain sentences (Jordan, 2026-10-19: "way too
   big"): Figtree, normal case, no letter spacing, whatever the page set. */
.phero-copy .sub,.phero-copy .lead,.phero-copy .hero-offer{max-width:56ch;margin:16px auto 0;font-family:'Figtree',system-ui,-apple-system,sans-serif;font-size:clamp(15px,1.4vw,17px);font-weight:400;line-height:1.55;letter-spacing:0;text-transform:none;color:var(--ink,#15110f);opacity:.78;text-shadow:none}
.phero-copy .hbadge{display:inline-block;text-align:center;margin-top:22px;color:var(--ink,#15110f);background:#fff;border:1px solid var(--line,#e7e2d9)}
.phero-copy .hbadge b{color:var(--fuchsia,#E83C8E)}
.phero-copy .hero-ctas,.phero-copy .hero-cta-wrap,.phero-copy .hbtns{margin-top:26px;display:flex;flex-wrap:wrap;gap:14px;justify-content:center}
@media(max-width:760px){
  .phero-photo{height:min(62vh,75vw);height:min(62svh,75vw)}
  .phero-copy{padding:26px 18px 34px}
  .phero-copy h1{font-size:clamp(30px,9vw,44px)}
}

/* SEO swap (Jordan, 2026-10-19): on the event and service pages the keyword
   line ("Engagement Party Decor · Pittsburgh") is the <h1>, and the slogan is a
   <p class="h1-display">. Neither looks any different: h1.eyebrow drops the
   heading font back to the eyebrow's, and .h1-display takes the H1's. */
.phero-copy h1.eyebrow{max-width:none;font-family:inherit;font-size:12px;font-weight:600;letter-spacing:3px;line-height:inherit;text-transform:uppercase}
.phero-copy .h1-display{margin:0 auto;max-width:22ch;font-family:'Anton',sans-serif;font-weight:400;text-transform:uppercase;letter-spacing:.5px;font-size:clamp(34px,5.4vw,64px);line-height:1.02;color:var(--ink,#15110f);text-shadow:none}
.phero-copy .h1-display em{font-style:normal;color:var(--fuchsia,#E83C8E)}
@media(max-width:760px){
  .phero-copy .h1-display{font-size:clamp(30px,9vw,44px)}
}
