/* Nominations-open popup — tap anywhere to dismiss */
.promo{--pr-ease:cubic-bezier(.2,.8,.2,1);position:fixed;inset:0;z-index:200;display:grid;place-items:center;padding:1.25rem;cursor:pointer;
  background:radial-gradient(70% 60% at 50% 45%,rgba(120,10,30,.35),rgba(6,3,5,.88));-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);
  opacity:0;visibility:hidden;transition:opacity .45s var(--pr-ease),visibility 0s .45s}
.promo.is-open{opacity:1;visibility:visible;transition:opacity .45s var(--pr-ease)}
.promo__card{position:relative;width:min(100%,30rem);padding:clamp(2rem,6vw,3rem) clamp(1.5rem,5vw,2.75rem) 1.75rem;text-align:center;border-radius:calc(var(--r-card,18px) + 6px);outline:0;
  background:linear-gradient(180deg,rgba(40,12,20,.94),rgba(14,6,9,.97)) padding-box,linear-gradient(150deg,#fff4d6,#d9a653 30%,#7a1226 55%,#f0cf8f 80%,#fff4d6) border-box;border:1.5px solid transparent;
  box-shadow:0 40px 90px -30px rgba(0,0,0,.95),0 0 90px -20px rgba(215,26,58,.55);
  transform:translateY(24px) scale(.94);transition:transform .6s var(--pr-ease)}
.promo.is-open .promo__card{transform:none}
.promo__card::before{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;background:radial-gradient(60% 40% at 50% 0,rgba(240,207,143,.22),transparent 70%)}
.promo__card::after{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;overflow:hidden;background:linear-gradient(105deg,transparent 40%,rgba(255,244,214,.14) 50%,transparent 60%) -150% 0/250% 100% no-repeat;animation:promo-sheen 4.5s 1s ease-in-out infinite}
@keyframes promo-sheen{to{background-position:150% 0}}
.promo__badge{display:inline-flex;align-items:center;gap:.55rem;padding:.4rem .95rem;border-radius:999px;font-size:.78rem;letter-spacing:.16em;text-transform:uppercase;color:var(--gold-100,#fff4d6);background:rgba(215,26,58,.2);border:1px solid rgba(240,207,143,.35)}
.promo__dot{width:.5rem;height:.5rem;border-radius:50%;background:#ff4560;box-shadow:0 0 0 0 rgba(255,69,96,.7);animation:promo-pulse 1.8s infinite}
@keyframes promo-pulse{70%{box-shadow:0 0 0 .55rem rgba(255,69,96,0)}100%{box-shadow:0 0 0 0 rgba(255,69,96,0)}}
.promo__title{margin:1.25rem 0 .6rem;font-family:'Cormorant Garamond',serif;font-weight:600;font-size:clamp(2.3rem,9vw,3.3rem);line-height:1.02;letter-spacing:-.01em;background:var(--grad-gold-text);-webkit-background-clip:text;background-clip:text;color:transparent}
.promo__title span{display:block;font-style:italic;font-weight:500}
.promo__text{margin:0 auto;max-width:26rem;font-size:1.02rem;line-height:1.6;color:var(--text-mute,#d9cdc2)}
.promo__text b{color:var(--gold-100,#fff4d6);font-weight:500}
.promo__facts{display:flex;justify-content:center;gap:1.75rem;margin:1.5rem 0 1.6rem;padding:1rem 0;border-block:1px solid var(--line,rgba(255,255,255,.1))}
.promo__facts div{display:flex;flex-direction:column;gap:.15rem}
.promo__facts strong{font-family:'Cormorant Garamond',serif;font-size:1.6rem;font-weight:600;color:var(--gold-200,#f0cf8f);line-height:1}
.promo__facts small{font-size:.78rem;letter-spacing:.1em;text-transform:uppercase;color:var(--text-dim,#aa9c91)}
.promo .btn{min-height:3rem}
.promo__hint{margin:1.1rem 0 0;font-size:.82rem;letter-spacing:.06em;color:var(--text-dim,#aa9c91)}
@media(prefers-reduced-motion:reduce){.promo,.promo__card{transition:opacity .2s;transform:none}.promo__card::after,.promo__dot{animation:none}}

/* Hero copy: calmer, sentence case, clearer hierarchy */
.hero .eyebrow{display:inline-flex;align-items:center;gap:.6rem;padding:.4rem .95rem;border-radius:999px;font-size:.78rem;letter-spacing:.14em;color:var(--gold-100,#fff4d6);background:rgba(10,5,7,.55);border:1px solid rgba(240,207,143,.3);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}
.hero .eyebrow::before{content:"";width:.5rem;height:.5rem;border-radius:50%;background:#ff4560;animation:promo-pulse 1.8s infinite}
.hero .h1.display--caps{text-transform:none;letter-spacing:-.015em;font-weight:600;line-height:1.04;font-size:clamp(2.4rem,4.6vw,3.8rem)}
.hero .h1 em{display:block;font-style:italic;font-weight:500}
.hero .lead{font-size:clamp(1.02rem,1.4vw,1.2rem);max-width:40ch;line-height:1.6}
.hero .meta{letter-spacing:.06em;text-transform:none;font-size:.95rem}
@media(prefers-reduced-motion:reduce){.hero .eyebrow::before{animation:none}}

/* Hero: ceremony date + venue */
.hero__when{display:flex;flex-wrap:wrap;gap:.75rem;margin:.75rem 0 0;padding:0;list-style:none}
.hero__when li{display:flex;align-items:center;gap:.8rem;padding:.7rem 1.1rem .7rem .8rem;border-radius:14px;
  background:linear-gradient(180deg,rgba(255,255,255,.07),rgba(255,255,255,.025));border:1px solid rgba(240,207,143,.28);
  -webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:0 14px 34px -18px rgba(0,0,0,.9)}
.hero__when svg{flex:none;width:2.6rem;height:2.6rem;padding:.6rem;border-radius:11px;color:var(--gold-100,#fff4d6);
  background:linear-gradient(135deg,rgba(215,26,58,.55),rgba(120,10,30,.55));border:1px solid rgba(240,207,143,.35)}
.hero__when span{display:flex;flex-direction:column;gap:.1rem;line-height:1.25}
.hero__when b{font-weight:500;font-size:1.05rem;letter-spacing:.01em;color:var(--text,#fbf6f0)}
.hero .hero__when small{opacity:1;font-size:.8rem;letter-spacing:.1em;text-transform:uppercase;color:#f6dfae;text-shadow:0 1px 2px rgba(0,0,0,.8)}
@media(max-width:520px){.hero__when{flex-direction:column;align-items:stretch;width:100%}}

/* Footer credit */
.powered{margin:0;color:var(--text-dim,#aa9c91);font-size:.8rem;letter-spacing:.04em}
.powered a{color:var(--gold-200,#f0cf8f);font-weight:500;text-decoration:none;background:linear-gradient(currentColor,currentColor) 0 100%/0 1px no-repeat;transition:background-size .35s var(--ease,ease),color .2s}
.powered a:hover,.powered a:focus-visible{color:var(--gold-100,#fff4d6);background-size:100% 1px}
@media(max-width:640px){footer .shell.py-6{justify-content:center;text-align:center}}

/* Taller desktop hero: fills most of the first screen, content centred in it */
@media (min-width:1024px){
  .hero{--hero-min:clamp(46rem,94svh,66rem);min-height:var(--hero-min);display:flex;align-items:center}
  .hero .hero__content{width:100%}
}

/* Entrance animations (enabled by js/reveal.js): left / right / rise / zoom / de-blur */
.rv-on [data-rv]{--rx:0px;--ry:28px;--rs:.985;--rb:0px;opacity:0;transform:translate3d(var(--rx),var(--ry),0) scale(var(--rs));filter:blur(var(--rb));
  transition:opacity .9s var(--ease,ease) var(--rv,0ms),transform 1s var(--ease,ease) var(--rv,0ms),filter .9s var(--ease,ease) var(--rv,0ms)}
.rv-on [data-rv=left]{--rx:-64px;--ry:0px}
.rv-on [data-rv=right]{--rx:64px;--ry:0px}
.rv-on [data-rv=zoom]{--ry:24px;--rs:.94}
.rv-on [data-rv=blur]{--ry:20px;--rb:10px}
.rv-on [data-rv].is-in{opacity:1;transform:none;filter:blur(0)}
@media(prefers-reduced-motion:reduce){.rv-on [data-rv]{opacity:1;transform:none;filter:none;transition:none}}

/* Stats strip: bigger, brighter */
.why{gap:1.1rem}
.why div:has(> strong.num){padding:1.9rem 1rem 1.7rem}
.why strong.num{font-size:clamp(2.4rem,4.2vw,3.3rem)!important;line-height:1;margin-bottom:.7rem;font-variant-numeric:tabular-nums;
  background:var(--grad-gold-text);-webkit-background-clip:text;background-clip:text;color:transparent}
.why strong.num + span{font-size:1.05rem;letter-spacing:.03em;color:var(--text,#fbf6f0);opacity:.88}

/* Nominate CTA: wider stage, roomier copy */
.cta-wide{width:min(100% - 2.5rem,1480px);margin-inline:auto}
.call--stage.px-6{padding-block:clamp(4.5rem,9vw,7.5rem)}
.call--stage .max-w-2xl{max-width:min(100%,56rem)}
.call--stage .lead{max-width:46ch;font-size:clamp(1.1rem,1.5vw,1.3rem)}
.call--stage .h2{font-size:clamp(2.6rem,6vw,4.8rem);line-height:1.02}
.call--stage .meta{padding:.55rem 1.2rem;border-radius:999px;background:rgba(10,5,7,.62);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);flex-wrap:wrap;justify-content:center;gap:.6rem 1.25rem;font-size:.9rem;letter-spacing:.1em;color:var(--text,#fbf6f0);text-shadow:0 1px 3px rgba(0,0,0,.95)}
.call--stage .meta span:not(.diamond){white-space:nowrap}
