/* ============================================================
   SEOST DMC — "THE BOLD EVENT / Advanced" (San Diego reference language)
   Navy base · electric CYAN accent · burgundy secondary · gray.
   Heavy custom CSS: kinetic marquee, rotating dial, animated icons,
   tilted image wall, scroll reveals, hover states.
   ============================================================ */
:root{
  --bg:#080a1c;         /* deep navy-black page base */
  --bg2:#0c0f24;
  --panel:#12142f;
  --panel2:#181b3d;
  --navy:#202051;       /* brand navy */
  --line:#26295a;
  --cyan:#29abe2;       /* brand accent (replaces reference yellow) */
  --cyan-hi:#7fd3f2;
  --burgundy:#811517;
  --burgundy-hi:#a8302f;
  --white:#f4f5fb;
  --mute:#aeb2cc;
  --gray:#bfbebe;
  --ink:#0a0a16;
  --maxw:1280px;
  --gut:clamp(20px,5vw,64px);
  --ease:cubic-bezier(.2,.75,.2,1);
  --disp:'Archivo',sans-serif;
  --anton:'Anton',sans-serif;
  --serif:'Newsreader',Georgia,serif;
  --body:'Inter',system-ui,sans-serif;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{background:var(--bg);color:var(--white);font-family:var(--body);font-size:16px;line-height:1.6;
  -webkit-font-smoothing:antialiased;overflow-x:hidden}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
[hidden]{display:none!important}
::selection{background:var(--cyan);color:#00121e}
.wrap{max-width:var(--maxw);margin-inline:auto;padding-inline:var(--gut)}
/* full-width sections: content spans the full page width (gutter only) */
.intro .wrap,.photostrip .wrap,.speakers .wrap,.more .wrap,.trusted .wrap{max-width:none}
section[id]{scroll-margin-top:90px}
.dot{color:var(--cyan)}
.dot--dark{color:var(--burgundy)}
.stroke{-webkit-text-stroke:2px var(--cyan);color:transparent;paint-order:stroke}
.eyebrow{font-family:var(--disp);font-weight:800;text-transform:uppercase;letter-spacing:.14em;
  font-size:.78rem;color:var(--cyan)}
.serif{font-family:var(--serif);font-style:italic;font-size:clamp(1.05rem,2vw,1.5rem);color:var(--mute);line-height:1.5}

/* ---------- buttons ---------- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5em;font-weight:600;font-size:15px;
  padding:14px 30px;border-radius:999px;cursor:pointer;transition:transform .25s var(--ease),background .25s,color .25s,box-shadow .25s,border-color .25s;
  border:1.5px solid transparent;white-space:nowrap}
.btn.lg{padding:18px 40px;font-size:16px}
.btn--accent{background:var(--cyan);color:#00121e}
.btn--accent:hover{background:var(--cyan-hi);transform:translateY(-3px);box-shadow:0 16px 40px -12px rgba(41,171,226,.6)}
.btn--outline{background:transparent;color:#fff;border-color:rgba(255,255,255,.4)}
.btn--outline:hover{background:#fff;color:#0a0a16;transform:translateY(-3px)}
.btn--frost{background:rgba(255,255,255,.09);color:#fff;border-color:rgba(255,255,255,.14);backdrop-filter:blur(6px)}
.btn--frost:hover{background:rgba(255,255,255,.18);transform:translateY(-3px)}
.btn--dark{background:#0a0a16;color:#fff}
.btn--dark:hover{background:#000;transform:translateY(-3px);box-shadow:0 14px 34px -12px rgba(0,0,0,.6)}
.btn--darkline{background:transparent;color:#0a0a16;border-color:#0a0a16}
.btn--darkline:hover{background:#0a0a16;color:#fff;transform:translateY(-3px)}
.btn span{transition:transform .25s var(--ease)}
.btn:hover span{transform:translateX(4px)}

/* ---------- reveal ---------- */
.reveal{opacity:0;transform:translateY(30px);transition:opacity .8s var(--ease),transform .8s var(--ease)}
.reveal.in{opacity:1;transform:none}
.reveal.d1{transition-delay:.1s}.reveal.d2{transition-delay:.2s}.reveal.d3{transition-delay:.3s}.reveal.d4{transition-delay:.4s}


/* ---------- side rails ---------- */
.rail{position:fixed;top:0;bottom:0;width:44px;z-index:40;display:none;pointer-events:none}
.rail span{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%) rotate(-90deg);white-space:nowrap;
  font-family:var(--disp);font-weight:700;font-size:11px;letter-spacing:.32em;text-transform:uppercase;color:rgba(255,255,255,.32)}
.rail--l{left:0}.rail--r{right:0}
@media(min-width:1180px){.rail{display:block}}

/* ===================== NAV ===================== */
.nav{position:fixed;top:0;left:0;right:0;z-index:90;transition:background .35s,border-color .35s,padding .35s;
  padding:calc(env(safe-area-inset-top,0px) + 30px) 0 20px;border-bottom:1px solid transparent}
.nav.solid{background:rgba(8,10,28,.9);backdrop-filter:blur(14px);border-color:var(--line);padding-top:calc(env(safe-area-inset-top,0px) + 12px);padding-bottom:12px}
.nav__in{max-width:var(--maxw);margin-inline:auto;padding-inline:var(--gut);display:flex;align-items:center;justify-content:space-between;gap:1.5rem}
.nav__logo img{height:72px;width:auto;transition:height .35s}
/* keep the logo the same size when the nav goes sticky/solid (no shrink) */
.nav.solid .nav__logo img{height:72px}
.nav__links{display:flex;gap:32px;margin-left:auto}
.nav__links a{font-size:15px;font-weight:500;color:#dfe2f2;position:relative;transition:color .2s}
.nav__links a::after{content:"";position:absolute;left:0;right:100%;bottom:-6px;height:2px;background:var(--cyan);border-radius:2px;transition:right .3s var(--ease)}
.nav__links a:hover{color:#fff}.nav__links a:hover::after{right:0}
.nav__burger{display:none;flex-direction:column;gap:5px;background:none;border:0;cursor:pointer;padding:10px;position:relative;z-index:5}
.nav__burger span{display:block;width:26px;height:2px;border-radius:2px;background:#fff;transform-origin:center;
  filter:drop-shadow(0 1px 2px rgba(0,0,0,.55));transition:transform .3s var(--ease),opacity .2s var(--ease)}
/* burger -> X when the menu is open */
body.menu-open .nav__burger span:nth-child(1){transform:translateY(7px) rotate(45deg)}
body.menu-open .nav__burger span:nth-child(2){opacity:0}
body.menu-open .nav__burger span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
/* click-out backdrop behind the mobile panel */
.nav__backdrop{position:fixed;inset:0;z-index:80;background:rgba(4,6,18,.55);backdrop-filter:blur(2px);
  opacity:0;visibility:hidden;transition:opacity .3s var(--ease),visibility .3s;pointer-events:none}
.nav__backdrop.show{opacity:1;visibility:visible;pointer-events:auto}
body.menu-open{overflow:hidden}
a:focus-visible,button:focus-visible{outline:3px solid var(--cyan);outline-offset:3px;border-radius:6px}

/* ===================== HERO ===================== */
.hero{position:relative;min-height:100vh;display:grid;place-items:center;text-align:center;overflow:hidden;padding:120px 0 90px}
.hero__bg{position:absolute;inset:0;z-index:0;background:#0a0c1e}
.hero__bg img,.hero__bg video{width:100%;height:100%;object-fit:cover;object-position:50% 45%}
.hero__bg img{filter:grayscale(.35) brightness(.4) saturate(.9);transform:scale(1.06);animation:heroZoom 18s ease-out forwards}
/* no runtime filter on the playing video — it forces per-frame recompositing and stutters.
   The darkening is done by the static .hero::after tint instead. Promote to its own GPU layer. */
.hero__bg video{transform:translateZ(0);will-change:transform;backface-visibility:hidden}
@keyframes heroZoom{to{transform:scale(1)}}
.hero::after{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;
  background:radial-gradient(120% 90% at 50% 30%,transparent 30%,rgba(6,8,20,.72) 100%),
  linear-gradient(180deg,rgba(6,8,20,.7),rgba(6,8,20,.2) 30%,rgba(6,8,20,.95)),
  linear-gradient(rgba(6,8,20,.4),rgba(6,8,20,.4))}
.hero__grain{position:absolute;inset:0;z-index:1;pointer-events:none;opacity:.5;
  background-image:linear-gradient(rgba(255,255,255,.03) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.03) 1px,transparent 1px);
  background-size:60px 60px;-webkit-mask-image:radial-gradient(120% 90% at 50% 40%,#000,transparent 78%);mask-image:radial-gradient(120% 90% at 50% 40%,#000,transparent 78%)}
.hero__in{position:relative;z-index:2;width:100%;max-width:1000px;padding-inline:var(--gut)}
.hero__lockup{display:flex;align-items:center;justify-content:center;gap:26px;flex-wrap:wrap}
.hero__logo{width:min(460px,74vw);filter:drop-shadow(0 8px 40px rgba(0,0,0,.5))}
.hero__year{text-align:left;line-height:.9}
.hero__year b{display:block;font-family:var(--anton);font-size:clamp(30px,4.2vw,58px);color:var(--cyan);letter-spacing:.02em}
.hero__year i{display:block;font-family:var(--serif);font-style:italic;font-weight:500;font-size:clamp(30px,4.6vw,62px);color:var(--white);margin-top:.02em;line-height:.92}
.hero__sub{margin:36px auto 0;max-width:56ch;font-size:clamp(17px,2.1vw,23px);line-height:1.5;color:#dfe2f2;letter-spacing:.01em}
.hero__sub b{display:block;margin-top:10px;color:#fff;font-size:1.12em}
.hero__sponsors{margin:30px auto 0;max-width:520px}
.hero__sponsors img{filter:grayscale(1) brightness(1.85);opacity:.66}
.hero__cta{display:flex;gap:clamp(20px,3.4vw,48px);justify-content:center;flex-wrap:wrap;margin-top:52px}
.hero__cta .btn.lg{padding:24px 64px;font-size:21px;border-radius:14px}
@media(max-width:560px){.hero__cta{gap:16px}.hero__cta .btn.lg{padding:18px 36px;font-size:17px}}
/* sits ABOVE the intro block, which is pulled up 34px over the hero — otherwise the
   word gets clipped by the intro's rounded top. Word on top, line below = reads "scroll down". */
.hero__scroll{position:absolute;bottom:clamp(46px,6vh,66px);left:50%;transform:translateX(-50%);z-index:4;
  font-family:var(--disp);font-size:11px;letter-spacing:.28em;text-transform:uppercase;color:var(--mute);
  display:flex;flex-direction:column;align-items:center;gap:10px;white-space:nowrap}
.hero__scroll em{font-style:normal;line-height:1;text-indent:.28em}
.hero__scroll span{width:1px;height:34px;transform-origin:top center;
  background:linear-gradient(transparent,var(--cyan));animation:scrollLine 1.8s ease-in-out infinite}
/* grows downward from the word toward the page content */
@keyframes scrollLine{0%,100%{transform:scaleY(.3);opacity:.4}50%{transform:scaleY(1);opacity:1}}

/* section heading base */
h2{font-family:var(--disp);font-weight:800;line-height:1.02;letter-spacing:-.02em}
.intro h2,.more h2,.trusted h2,.exp h2,.future h2,.speakers h2{font-size:clamp(2rem,4.6vw,4rem)}

/* ===================== INTRO + VENUE ===================== */
.intro{padding:clamp(90px,12vw,150px) 0 clamp(70px,9vw,120px);border-radius:34px 34px 0 0;margin-top:-34px;background:var(--bg);position:relative;z-index:3}
.intro__grid{display:grid;grid-template-columns:1.2fr .9fr;gap:clamp(30px,5vw,72px);align-items:start}
.intro__copy .eyebrow{color:var(--cyan)}
.intro__copy h2{margin:16px 0 22px;max-width:15ch}
.intro__venue{align-self:start}
.venue__name{font-family:var(--disp);font-weight:800;font-size:1.25rem}
.venue__addr{color:var(--mute);margin:8px 0 14px;font-size:.98rem}
.venue__link{color:var(--cyan);font-weight:600;font-size:.98rem}
.venue__map{display:block;width:100%;height:200px;margin-top:20px;border:1px solid var(--line);border-radius:16px;overflow:hidden;filter:grayscale(.15) contrast(1.02)}
.venue__map--tbd{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;filter:none;border-style:dashed;border-color:rgba(255,255,255,.16);background:var(--panel);text-align:center}
.venue__map--tbd .venue__pin-ic{color:var(--cyan);opacity:.9;line-height:0}
.venue__map--tbd b{font-family:var(--disp);font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:#fff;font-size:1.05rem}
.venue__map--tbd small{color:var(--mute);font-size:.9rem}
@media(max-width:820px){.venue__map{height:220px}}

/* ---------- photo strip (conference photos under intro) ---------- */
.photostrip{padding:clamp(30px,4vw,48px) 0 clamp(50px,7vw,90px)}
.photogrid{display:grid;grid-template-columns:repeat(6,1fr);gap:10px}
.photogrid .mtile{border-radius:12px;overflow:hidden;position:relative;background:var(--panel);aspect-ratio:3/2}
.photogrid .mtile img{width:100%;height:100%;object-fit:cover;transition:transform .6s var(--ease)}
.photogrid .mtile:hover img{transform:scale(1.07)}
@media(max-width:1080px){.photogrid{grid-template-columns:repeat(4,1fr)}}
@media(max-width:680px){.photogrid{grid-template-columns:repeat(3,1fr)}}

/* ===================== SPEAKERS ===================== */
.speakers{padding:clamp(60px,8vw,100px) 0}
.speakers__head{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:34px}
.speakers__head h2{max-width:16ch}
.speakers__head .serif{margin-top:12px;max-width:46ch}
.speakers__nav{display:flex;gap:10px}
.sbtn{width:52px;height:52px;border-radius:50%;border:1.5px solid var(--line);background:var(--panel);color:#fff;font-size:20px;cursor:pointer;transition:.25s}
.sbtn:hover{background:var(--cyan);color:#00121e;border-color:var(--cyan);transform:translateY(-2px)}
.speakers__rail{display:flex;gap:18px;overflow-x:auto;scroll-snap-type:x mandatory;padding:6px var(--gut) 20px;scrollbar-width:none}
.speakers__rail::-webkit-scrollbar{display:none}
.spk{flex:0 0 clamp(270px,29vw,400px);scroll-snap-align:start;position:relative;border-radius:18px;overflow:hidden;
  background:var(--panel);border:1px solid var(--line);aspect-ratio:556/691;transition:transform .35s var(--ease),border-color .35s,box-shadow .35s}
.spk img{width:100%;height:100%;object-fit:cover;display:block}
.spk:hover{transform:translateY(-6px);border-color:var(--cyan);box-shadow:0 22px 50px -22px rgba(41,171,226,.5)}
.spk--soon{display:flex;align-items:center;justify-content:center;text-align:center;
  background:radial-gradient(120% 90% at 50% 32%,rgba(41,171,226,.12),transparent 62%),linear-gradient(165deg,var(--panel),var(--bg2));
  border:1.5px dashed rgba(41,171,226,.5)}
.spk__soon{display:flex;flex-direction:column;align-items:center;gap:14px;padding:26px}
.spk__soon-ic{width:66px;height:66px;border-radius:50%;display:grid;place-items:center;font-size:36px;line-height:1;color:var(--cyan);border:1.5px solid rgba(41,171,226,.55);background:rgba(41,171,226,.08)}
.spk__soon b{font-family:var(--disp);font-weight:800;text-transform:uppercase;letter-spacing:.02em;font-size:clamp(1.15rem,1.5vw,1.4rem);color:#fff;line-height:1.05}
.spk__soon-sub{font-family:var(--disp);font-weight:800;text-transform:uppercase;letter-spacing:.02em;font-size:clamp(1.15rem,1.5vw,1.4rem);color:var(--cyan);line-height:1.05}

/* ===================== MORE / MOSAIC ===================== */
.more{padding:clamp(60px,8vw,100px) 0}
.more__head{text-align:center;max-width:820px;margin:0 auto 40px}
.more__head .serif{margin-top:16px}
.schedrail{display:flex;gap:18px;overflow-x:auto;padding:6px var(--gut) 20px;scrollbar-width:none;scroll-snap-type:x mandatory}
.schedrail::-webkit-scrollbar{display:none}
.scard{flex:0 0 clamp(280px,26vw,330px);scroll-snap-align:start;position:relative;border-radius:18px;overflow:hidden;aspect-ratio:3/4;border:1px solid var(--line);display:flex;align-items:flex-end;transition:transform .35s var(--ease),border-color .35s}
.scard__bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:brightness(.58);z-index:0;transition:transform .5s var(--ease)}
.scard::after{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(8,10,28,.15),transparent 28%,rgba(8,10,28,.94))}
.scard__logo{position:absolute;top:16px;left:16px;z-index:3;width:72px;opacity:.92}
.scard__body{position:relative;z-index:3;padding:16px 20px 20px}
.scard__time{display:inline-block;background:var(--cyan);color:#00121e;font-family:var(--disp);font-weight:800;font-size:11px;letter-spacing:.04em;text-transform:uppercase;padding:5px 11px;border-radius:999px;margin-bottom:8px}
.scard h3{font-family:var(--disp);font-weight:800;font-size:1.3rem;line-height:1.05;text-transform:uppercase;letter-spacing:-.01em}
.scard p{color:#cdd2e0;font-size:.9rem;margin-top:6px;line-height:1.4}
.scard__loc{display:inline-block;margin-top:12px;background:rgba(41,171,226,.14);border:1px solid rgba(41,171,226,.42);color:var(--cyan);font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;padding:5px 11px;border-radius:999px}
.scard:hover{transform:translateY(-6px);border-color:var(--cyan)}
.scard:hover .scard__bg{transform:scale(1.06)}
.more__cta{text-align:center;margin-top:44px}

/* ===================== TRUSTED / TESTIMONIALS ===================== */
.trusted{padding:clamp(60px,8vw,100px) 0;background:var(--bg2)}
.trusted__head{text-align:center;max-width:840px;margin:0 auto 34px}
.trusted__head .serif{margin-top:14px}
.trusted__logos{max-width:1120px;margin:0 auto 56px;
  background:linear-gradient(180deg,#fff 0%,#eef1f7 100%);
  border:1px solid rgba(32,32,81,.10);border-radius:24px;
  padding:clamp(30px,4vw,60px) clamp(26px,4.5vw,72px);
  box-shadow:0 30px 70px -34px rgba(0,0,0,.6),inset 0 1px 0 rgba(255,255,255,.7)}
.trusted__logos img{width:100%;max-width:960px;margin:0 auto;display:block}
/* social-post marquee: a continuous, slow auto-scroll of the attendee cards.
   .tml is the mask; .tml__track holds two identical .tml__set rows and slides
   left by exactly one set (translateX(-50%)) for a seamless loop. */
.tml{overflow:hidden;padding:6px 0 16px;scrollbar-width:none}
.tml::-webkit-scrollbar{display:none}
.tml__track{display:flex;width:max-content;will-change:transform;animation:tmlMarq 110s linear infinite}
.tml__set{display:flex;gap:18px;margin-right:18px}
.tml:hover .tml__track,.tml:focus-within .tml__track{animation-play-state:paused}
@keyframes tmlMarq{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.rcard{flex:0 0 clamp(320px,34vw,400px);height:clamp(380px,46vw,500px);border-radius:16px;overflow:hidden;position:relative;
  border:1px solid var(--line);background:#fff;box-shadow:0 24px 60px -26px rgba(0,0,0,.7);transition:transform .3s var(--ease),border-color .3s}
.rcard img{width:100%;display:block}
.rcard::after{content:"";position:absolute;left:0;right:0;bottom:0;height:120px;pointer-events:none;background:linear-gradient(transparent,var(--bg2))}
.rcard:hover{transform:translateY(-5px);border-color:var(--cyan)}
@media(prefers-reduced-motion:reduce){
  .tml{overflow-x:auto}
  .tml__track{animation:none}
}

/* ===================== STATS ===================== */
.stats{padding:clamp(50px,7vw,90px) 0;border-block:1px solid var(--line);background:var(--bg)}
.stats__row{display:flex;justify-content:space-between;flex-wrap:wrap;gap:24px}
.stat{flex:1 1 140px;text-align:center}
.stat b{display:block;font-family:var(--anton);font-size:clamp(2.6rem,6vw,5rem);line-height:1;color:#fff}
.stat span{display:block;margin-top:8px;font-family:var(--disp);font-weight:700;text-transform:uppercase;letter-spacing:.08em;font-size:.8rem;color:var(--cyan)}

/* ===================== INFLECTION POINT ===================== */
.inflect{position:relative;padding:clamp(90px,13vw,170px) 0;background:linear-gradient(180deg,#0a0c22,#070818);overflow:hidden}
.inflect__streaks{position:absolute;inset:-25% -15%;pointer-events:none;
  background:
   linear-gradient(118deg,transparent 26%,rgba(255,255,255,.07) 34%,rgba(41,171,226,.06) 38%,transparent 46%),
   linear-gradient(118deg,transparent 52%,rgba(255,255,255,.05) 60%,transparent 68%),
   linear-gradient(118deg,transparent 74%,rgba(255,255,255,.04) 80%,transparent 86%),
   radial-gradient(50% 55% at 88% 8%,rgba(41,171,226,.14),transparent 60%),
   radial-gradient(48% 55% at 6% 92%,rgba(129,21,23,.16),transparent 60%);
  will-change:transform;animation:streakDrift 16s ease-in-out infinite alternate}
@keyframes streakDrift{from{transform:translate3d(-3%,-2%,0)}to{transform:translate3d(3%,2%,0)}}
@media(prefers-reduced-motion:reduce){.inflect__streaks{animation:none}}
.inflect__head{position:relative;z-index:2;text-align:center;max-width:1000px;margin:0 auto clamp(50px,7vw,90px)}
.theme-kicker{font-family:var(--disp);font-weight:700;letter-spacing:.55em;font-size:.78rem;color:var(--cyan)}
.inflect__title{font-family:var(--disp);font-weight:900;font-size:clamp(2.8rem,8vw,6.8rem);letter-spacing:-.035em;margin:20px 0 22px;line-height:.96;text-transform:uppercase}
.inflect__title .t1{color:var(--cyan)}
.inflect__title .t2{color:#565c80}
.inflect__title .t3{color:#fff}
.icol__ic{display:inline-flex;width:40px;height:40px;margin-bottom:16px}
.icol__ic svg{width:40px;height:40px;fill:none;stroke:var(--cyan);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.icol__ic svg *{stroke-dasharray:90;stroke-dashoffset:0;animation:icolDraw 3.2s ease-in-out infinite}
.icol:nth-child(2) .icol__ic svg *{animation-delay:.5s}
.icol:nth-child(3) .icol__ic svg *{animation-delay:1s}
@keyframes icolDraw{0%,100%{stroke-dashoffset:0;opacity:.7}45%{stroke-dashoffset:90;opacity:1}55%{stroke-dashoffset:180;opacity:1}}
/* moving glare beam across the inflection section */
.inflect::before{content:"";position:absolute;top:-30%;left:-60%;width:55%;height:160%;z-index:0;pointer-events:none;
  background:linear-gradient(100deg,transparent,rgba(41,171,226,.10) 40%,rgba(255,255,255,.07) 52%,transparent 70%);
  transform:skewX(-14deg);animation:inflectGlare 8s linear infinite}
@keyframes inflectGlare{0%{left:-60%}100%{left:130%}}
@media(prefers-reduced-motion:reduce){.inflect::before,.icol__ic svg *{animation:none}}
.inflect__cols{position:relative;z-index:2;display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(26px,4vw,56px)}
.icol__k{font-family:var(--disp);font-weight:700;text-transform:uppercase;letter-spacing:.08em;font-size:.8rem;color:var(--mute);margin-bottom:14px}
.icol h3{font-family:var(--disp);font-weight:800;font-size:clamp(1.5rem,2.4vw,2.3rem);line-height:1.1}
.circle{position:relative;display:inline-block;color:var(--cyan)}
.circle::after{content:"";position:absolute;inset:-8% -12% -14% -12%;border:2.5px solid var(--cyan);border-radius:50%;
  transform:rotate(-4deg) scaleX(1.04);opacity:0;clip-path:inset(0 100% 0 0);transition:clip-path 1s var(--ease) .2s,opacity .3s .2s}
.icol.in .circle::after{opacity:.85;clip-path:inset(0 0 0 0)}
.circle--2{color:var(--cyan)}.circle--2::after{border-color:var(--cyan-hi);transform:rotate(3deg) scaleX(1.05)}
.circle--3{color:var(--cyan)}.circle--3::after{border-color:var(--cyan);transform:rotate(-2deg) scaleX(1.03)}
@media(max-width:820px){.inflect__cols{grid-template-columns:1fr;gap:34px}}

/* ===================== FUTURE + DIAL ===================== */
.future{padding:clamp(80px,11vw,150px) 0;background:var(--bg);overflow:hidden}
.future .wrap{max-width:1640px}
.future__grid{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:clamp(48px,9vw,170px);align-items:center}
.future__copy{max-width:600px}
.future__copy h2{font-size:clamp(2rem,4.4vw,3.7rem);max-width:13ch}
.ul{color:var(--cyan);position:relative;white-space:nowrap}
.ul::after{content:"";position:absolute;left:0;right:0;bottom:.02em;height:3px;background:var(--cyan);transform:scaleX(0);transform-origin:left;transition:transform .8s var(--ease) .3s}
.future__copy h2.in .ul::after{transform:scaleX(1)}
.future__urgency{margin:24px 0 28px;color:var(--mute);font-size:1.05rem}
.dial{position:relative;aspect-ratio:1;width:min(44vw,540px);margin:0;justify-self:end}
.dial__disc{position:absolute;inset:0;border-radius:50%;
  background:radial-gradient(circle at 50% 42%,rgba(41,171,226,.12),rgba(32,32,81,.14) 46%,transparent 72%);
  border:1px solid rgba(255,255,255,.08)}
.dial__disc::before{content:"";position:absolute;inset:11%;border-radius:50%;border:1px dashed rgba(255,255,255,.13);animation:spin 60s linear infinite}
.dial__disc::after{content:"";position:absolute;inset:11%;border-radius:50%;
  background:conic-gradient(from 0deg,rgba(41,171,226,.26),rgba(41,171,226,0) 30%);
  -webkit-mask:radial-gradient(circle,transparent 60%,#000 61%);mask:radial-gradient(circle,transparent 60%,#000 61%);animation:spin 10s linear infinite}
.dial__list{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:max-content;max-width:78%;z-index:2;list-style:none;display:flex;flex-direction:column;gap:clamp(22px,3.2vw,36px)}
.dial__list li{display:flex;align-items:center;gap:14px;font-family:var(--disp);font-weight:800;text-transform:uppercase;letter-spacing:.02em;font-size:clamp(1rem,1.5vw,1.35rem);color:#fff;
  opacity:0;transform:translateX(-16px);transition:opacity .7s var(--ease),transform .7s var(--ease)}
.dial.in .dial__list li{opacity:1;transform:none}
.dial.in .dial__list li:nth-child(1){transition-delay:.35s}
.dial.in .dial__list li:nth-child(2){transition-delay:1.25s}
.dial.in .dial__list li:nth-child(3){transition-delay:2.15s}
.dial__list li i{width:28px;height:2px;background:var(--cyan);flex:none}
@keyframes spin{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){.dial__disc::before,.dial__disc::after{animation:none}.dial__list li{opacity:1;transform:none;transition:none}}
@media(max-width:820px){.future .wrap{max-width:var(--maxw)}.future__grid{grid-template-columns:1fr;gap:48px}.future__copy{max-width:none}.dial{width:min(100%,380px);margin-inline:auto;justify-self:center}}

/* ===================== KINETIC MARQUEE ===================== */
.kinetic{position:relative;padding:clamp(40px,7vw,90px) 0;overflow:hidden;background:linear-gradient(180deg,#070818,#0a0c22)}
.kinetic__watermark{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-family:var(--anton);
  font-size:clamp(12rem,34vw,30rem);color:rgba(255,255,255,.03);letter-spacing:.02em;pointer-events:none;user-select:none;z-index:0}
.kinetic__row{display:flex;gap:.4em;white-space:nowrap;width:max-content;animation:marq 22s linear infinite;position:relative;z-index:1}
.kinetic__row span{font-family:var(--anton);font-size:clamp(3.4rem,11vw,10rem);letter-spacing:.01em;
  background:linear-gradient(180deg,#ffffff 0%,#9fb6d6 42%,#2a3352 52%,#8fa9cf 60%,#e8f3ff 100%);
  -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;
  text-shadow:0 2px 30px rgba(41,171,226,.14)}
.kinetic__row span::after{content:"·";color:var(--cyan);-webkit-text-fill-color:var(--cyan);margin-left:.4em}
@keyframes marq{to{transform:translateX(-50%)}}

/* ===================== EXPERIENCE / VIDEO ===================== */
.exp{padding:clamp(70px,10vw,130px) 0;background:var(--bg)}
.exp__grid{display:grid;grid-template-columns:1fr 1.05fr;gap:clamp(30px,5vw,64px);align-items:center}
.exp__copy{order:1}.exp__media{order:2}
.exp__media{position:relative;border-radius:22px;overflow:hidden;aspect-ratio:16/11;border:1px solid var(--line)}
.exp__media img{width:100%;height:100%;object-fit:cover;filter:brightness(.7)}
.exp__play{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:78px;height:78px;border-radius:50%;
  border:0;background:var(--cyan);color:#00121e;display:grid;place-items:center;cursor:pointer;transition:.25s;box-shadow:0 0 0 0 rgba(41,171,226,.5)}
.exp__play svg{width:30px;height:30px;fill:currentColor;margin-left:3px}
.exp__play:hover{transform:translate(-50%,-50%) scale(1.08);box-shadow:0 0 0 16px rgba(41,171,226,.14)}
.exp__badge{position:absolute;top:16px;left:16px;background:var(--cyan);color:#00121e;font-family:var(--disp);font-weight:800;font-size:11px;letter-spacing:.06em;padding:6px 12px;border-radius:999px}
.exp__copy h2{font-size:clamp(2rem,4vw,3.4rem);margin:12px 0 10px}
.exp__copy .serif{margin-bottom:16px}
.exp__copy p:last-child{color:var(--mute)}
@media(max-width:820px){.exp__grid{grid-template-columns:1fr}}

/* ===================== QUOTE ===================== */
.quote{padding:clamp(80px,11vw,140px) 0;background:var(--bg2)}
.quote__grid{display:grid;grid-template-columns:.62fr 1.38fr;gap:clamp(34px,5vw,72px);align-items:center}
.quote__media{position:relative;border-radius:18px;overflow:hidden;aspect-ratio:3/4;border:1px solid var(--line);max-width:360px}
.quote__media img{width:100%;height:100%;object-fit:cover}
.quote__brand{position:absolute;left:0;right:0;bottom:0;padding:18px;background:linear-gradient(transparent,rgba(6,8,20,.9))}
.quote__brand b{display:block;font-family:var(--disp);font-weight:900;letter-spacing:.02em}
.quote__brand span{color:var(--cyan);font-size:.8rem;font-weight:600}
.quote__head{display:flex;align-items:center;gap:14px;margin-bottom:26px}
.quote__av{width:52px;height:52px;border-radius:50%;object-fit:cover;border:2px solid var(--cyan)}
.quote__head b{display:block;font-family:var(--disp);font-weight:800;font-size:1rem}
.quote__head span{color:var(--mute);font-size:.85rem}
.quote blockquote{font-family:var(--disp);font-weight:700;font-size:clamp(1.4rem,2.9vw,2.5rem);line-height:1.3;letter-spacing:-.01em;color:#f0f2fb;margin-bottom:30px}
.quote .u{position:relative;white-space:nowrap}
.quote .u::after{content:"";position:absolute;left:0;right:0;bottom:2px;height:3px;background:var(--cyan)}
.quote .circ{position:relative;color:var(--cyan);display:inline-block;white-space:nowrap}
.quote .circ::after{content:"";position:absolute;inset:-16% -7% -18% -7%;border:2.5px solid var(--cyan);border-radius:50%;transform:rotate(-3deg) scaleX(1.02)}
@media(max-width:760px){.quote__grid{grid-template-columns:1fr}.quote__media{max-width:280px}}

/* ===================== SECURE YOUR SPOT (finale) ===================== */
.secure{position:relative;margin-top:24px;background:linear-gradient(180deg,var(--cyan),#1f93c9);color:#00121e;
  border-radius:clamp(28px,4vw,60px) clamp(28px,4vw,60px) 0 0;padding:clamp(70px,10vw,130px) 0 clamp(80px,11vw,140px);overflow:hidden}
.secure__grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(30px,5vw,60px);align-items:center}
.secure__kicker{font-family:var(--disp);font-weight:800;text-transform:uppercase;letter-spacing:.1em;font-size:.9rem;color:#00121e}
.secure__title{font-family:var(--anton);font-size:clamp(3.4rem,9vw,8rem);line-height:.9;margin:14px 0 34px;color:#0a0a16}
.secure__list{list-style:none;display:flex;flex-direction:column;gap:22px;margin-bottom:38px}
.secure__list li{display:flex;align-items:center;gap:18px;font-size:clamp(1rem,1.6vw,1.2rem);font-weight:500;color:#0a1420}
.micon{flex:0 0 auto;width:54px;height:54px;display:grid;place-items:center}
.micon svg{width:46px;height:46px;fill:none;stroke:#0a0a16;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round;overflow:visible}
/* network: nodes pulse in sequence, links flash along */
.micon--net .nd{transform-box:fill-box;transform-origin:center;animation:ndPulse 2.4s ease-in-out infinite}
.micon--net .nd2{animation-delay:.4s}.micon--net .nd3{animation-delay:.8s}
@keyframes ndPulse{0%,100%{transform:scale(.8);opacity:.65}50%{transform:scale(1.14);opacity:1}}
.micon--net .ln{opacity:.3;animation:lnFlash 2.4s ease-in-out infinite}
.micon--net .ln2{animation-delay:.4s}.micon--net .ln3{animation-delay:.8s}
@keyframes lnFlash{0%,100%{opacity:.25}50%{opacity:.95}}
/* cup: steam wisps rising continuously */
.micon--cup .steam{opacity:0;transform-box:fill-box;animation:steamRise 2.6s ease-in-out infinite}
.micon--cup .s2{animation-delay:.55s}.micon--cup .s3{animation-delay:1.1s}
@keyframes steamRise{0%{opacity:0;transform:translateY(4px)}30%{opacity:.85}70%{opacity:.6}100%{opacity:0;transform:translateY(-7px)}}
/* mic: sound waves pulsing out */
.micon--mic .wave{opacity:0;transform-box:fill-box;transform-origin:0 50%;animation:waveOut 2s ease-out infinite}
.micon--mic .w2{animation-delay:.55s}
@keyframes waveOut{0%{opacity:0;transform:scale(.55)}35%{opacity:.9}100%{opacity:0;transform:scale(1.15)}}
@media(prefers-reduced-motion:reduce){.micon *{animation:none!important;opacity:1!important}}
.secure__cta{display:flex;gap:14px;flex-wrap:wrap}
.secure__wall{position:relative;aspect-ratio:1/1.02;border-radius:22px;overflow:hidden;box-shadow:0 34px 80px -34px rgba(0,20,34,.55);background:#0a1420}
.wallgrid{position:absolute;inset:-22%;display:grid;grid-template-columns:repeat(4,1fr);gap:12px;transform:rotate(-9deg)}
.wallgrid img{width:100%;height:100%;object-fit:cover;border-radius:10px;aspect-ratio:3/4;box-shadow:0 10px 24px rgba(0,0,0,.28)}
.wallcol{display:flex;flex-direction:column;gap:12px;will-change:transform}
@media(max-width:860px){.secure__grid{grid-template-columns:1fr}.secure__wall{aspect-ratio:1.2/1;margin-top:20px}}

/* ===================== HOST ===================== */
.host{padding:clamp(60px,8vw,110px) 0;background:var(--bg)}
.host__head{text-align:center;margin-bottom:clamp(30px,4vw,48px)}
.host__head h2{font-family:var(--disp);font-weight:900;font-size:clamp(2rem,4vw,3.2rem);margin-top:12px}
.host__grid{display:grid;grid-template-columns:1fr 1fr;gap:22px;max-width:900px;margin-inline:auto}
.host__card{display:flex;align-items:center;gap:22px;background:var(--panel);border:1px solid var(--line);border-radius:18px;padding:26px;transition:transform .3s var(--ease),border-color .3s}
.host__card:hover{transform:translateY(-4px);border-color:var(--cyan)}
.host__card img{width:96px;height:96px;border-radius:50%;object-fit:cover;flex:none;border:2px solid var(--cyan)}
.host__role{font-family:var(--disp);font-weight:700;text-transform:uppercase;letter-spacing:.08em;font-size:.75rem;color:var(--cyan)}
.host__name{font-family:var(--disp);font-weight:800;font-size:1.3rem;margin-top:4px}
.host__bio{color:var(--mute);font-size:.88rem;margin-top:5px}
.host__foot{text-align:center;color:var(--mute);font-size:.98rem;margin-top:36px}
.host__foot a{color:var(--cyan);font-weight:600}
@media(max-width:760px){.host__grid{grid-template-columns:1fr}}

/* ===================== FAQ ===================== */
.faq{padding:clamp(70px,9vw,120px) 0;background:linear-gradient(180deg,#eef0f6,#e4e6ef);color:#0a0a16;border-radius:44px 44px 0 0;margin-top:20px}
.faq__grid{display:grid;grid-template-columns:.7fr 1.3fr;gap:clamp(30px,5vw,64px);align-items:start}
.faq__aside h2{font-family:var(--anton);font-size:clamp(3rem,7vw,5.5rem);color:#0a0a16;margin-bottom:24px;line-height:.9}
.faq__aside .btn{display:flex;margin-bottom:12px}
.faq__item{border-bottom:1px solid rgba(10,10,22,.14)}
.faq__q{width:100%;text-align:left;background:none;border:0;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:16px;
  padding:22px 4px;font-family:var(--disp);font-weight:700;font-size:clamp(1rem,1.6vw,1.2rem);color:#0a0a16}
.faq__q .chev{flex:none;width:26px;height:26px;position:relative;transition:transform .3s var(--ease)}
.faq__q .chev::before,.faq__q .chev::after{content:"";position:absolute;top:50%;left:50%;width:12px;height:2px;background:var(--burgundy);transform:translate(-50%,-50%)}
.faq__q .chev::after{transform:translate(-50%,-50%) rotate(90deg);transition:opacity .3s}
.faq__item.open .chev::after{opacity:0}
.faq__a{max-height:0;overflow:hidden;transition:max-height .4s var(--ease)}
.faq__a p{padding:0 4px 22px;color:#333a4d;max-width:70ch}

/* ===================== FOOTER ===================== */
.foot{background:var(--ink);padding:clamp(50px,7vw,80px) 0 40px}
.foot__top{display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap;padding-bottom:30px;border-bottom:1px solid var(--line)}
.foot__logo{height:56px;width:auto}
.foot__tag{color:var(--mute);max-width:36ch;font-size:1rem}
.foot__bottom{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;padding-top:26px;color:var(--mute);font-size:.85rem}
.foot__bottom nav{display:flex;gap:20px}
.foot__bottom a:hover{color:var(--cyan)}

/* ===================== STICKY CTA ===================== */
.sticky{position:fixed;left:0;right:0;bottom:0;z-index:70;transform:translateY(120%);transition:transform .4s var(--ease);
  padding-bottom:env(safe-area-inset-bottom,0px);background:rgba(10,10,22,.92);backdrop-filter:blur(12px);border-top:1px solid var(--line)}
.sticky.show{transform:none}
.sticky__in{max-width:var(--maxw);margin-inline:auto;padding:12px var(--gut);display:flex;align-items:center;justify-content:space-between;gap:16px}
.sticky__txt b{display:block;color:var(--cyan);font-size:.95rem}
.sticky__txt span{color:var(--mute);font-size:.82rem}

/* ===================== LIGHTBOX ===================== */
.lb{position:fixed;inset:0;z-index:120;background:rgba(4,5,14,.92);display:none;place-items:center;padding:20px}
.lb.open{display:grid}
.lb video{width:min(960px,92vw);border-radius:14px}
.lb__x{position:absolute;top:20px;right:24px;width:44px;height:44px;border-radius:50%;border:0;background:#fff;color:#0a0a16;font-size:24px;cursor:pointer}

/* ===================== RESPONSIVE ===================== */
@media(max-width:960px){
  .intro__grid{grid-template-columns:1fr}.intro__venue{position:static}
  .exp__grid,.future__grid{grid-template-columns:1fr}
}
@media(max-width:760px){
  .nav__links{position:fixed;inset:0 0 0 auto;z-index:1;width:min(300px,80vw);flex-direction:column;justify-content:flex-start;align-items:stretch;gap:2px;
    background:rgba(9,11,26,.99);backdrop-filter:blur(16px);border-left:1px solid var(--line);box-shadow:-18px 0 50px rgba(0,0,0,.42);
    padding:calc(env(safe-area-inset-top,0px) + 92px) 24px 40px;transform:translateX(100%);transition:transform .35s var(--ease);margin:0;overflow-y:auto;overscroll-behavior:contain}
  .nav__links.open{transform:none}
  .nav__links a{font-size:18px;padding:15px 8px;border-bottom:1px solid rgba(255,255,255,.07)}
  .nav__links a::after{display:none}
  .nav__burger{display:flex;order:3}
  .nav__cta{display:none}
  .speakers__head{flex-direction:column;align-items:flex-start}
  .foot__bottom{flex-direction:column;align-items:flex-start}
}
@media(prefers-reduced-motion:reduce){
  .reveal{opacity:1;transform:none}
  .hero__bg img,.kinetic__row,.dial__ring,.micon svg,.hero__scroll span,.venue__pin{animation:none!important}
  .kinetic__row{transform:none}
}

/* ============================================================
   INNER PAGES — Sponsor & Schedule (same theme system)
   ============================================================ */

/* ---------- interior hero ---------- */
.ihero{position:relative;min-height:64vh;display:grid;align-items:end;text-align:center;overflow:hidden;
  padding:clamp(150px,21vh,230px) 0 clamp(48px,7vw,86px)}
.ihero__bg{position:absolute;inset:0;z-index:0;background:#0a0c1e}
.ihero__bg img{width:100%;height:100%;object-fit:cover;object-position:50% 42%;
  filter:grayscale(.32) brightness(.42) saturate(.92);transform:scale(1.05);animation:heroZoom 16s ease-out forwards}
.ihero::after{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;
  background:radial-gradient(120% 92% at 50% 24%,transparent 26%,rgba(6,8,20,.72) 100%),
  linear-gradient(180deg,rgba(6,8,20,.78),rgba(6,8,20,.28) 34%,rgba(6,8,20,.96))}
.ihero__grain{position:absolute;inset:0;z-index:1;pointer-events:none;opacity:.5;
  background-image:linear-gradient(rgba(255,255,255,.03) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.03) 1px,transparent 1px);
  background-size:60px 60px;-webkit-mask-image:radial-gradient(120% 90% at 50% 40%,#000,transparent 78%);mask-image:radial-gradient(120% 90% at 50% 40%,#000,transparent 78%)}
.ihero__in{position:relative;z-index:2;width:100%;max-width:1000px;margin-inline:auto;padding-inline:var(--gut)}
.ihero__crumb{font-family:var(--disp);font-weight:800;text-transform:uppercase;letter-spacing:.28em;font-size:.72rem;color:var(--cyan);margin-bottom:20px}
.ihero__crumb a{color:var(--mute)}.ihero__crumb a:hover{color:#fff}
.ihero h1{font-family:var(--disp);font-weight:900;font-size:clamp(2.4rem,6.6vw,5.4rem);line-height:.97;letter-spacing:-.025em;text-transform:uppercase}
.ihero h1 .g{color:var(--cyan)}
.ihero__sub{margin:26px auto 0;max-width:62ch;font-size:clamp(1.05rem,2vw,1.5rem);font-family:var(--serif);font-style:italic;color:#d6daf0;line-height:1.5}
.ihero__cta{display:flex;gap:16px;justify-content:center;flex-wrap:wrap;margin-top:38px}

/* ---------- generic inner section header ---------- */
.isec{padding:clamp(64px,9vw,120px) 0}
.isec--alt{background:var(--bg2)}
.isec--panel{background:linear-gradient(180deg,#0a0c22,#070818)}
.ihead{max-width:820px;margin:0 auto clamp(38px,5vw,60px);text-align:center}
.ihead.left{margin-inline:0;text-align:left}
.ihead h2{font-family:var(--disp);font-weight:800;font-size:clamp(2rem,4.4vw,3.5rem);line-height:1.03;letter-spacing:-.02em}
.ihead .serif{margin-top:16px}

/* ---------- why-sponsor split ---------- */
.pwhy__grid{display:grid;grid-template-columns:1.15fr .85fr;gap:clamp(34px,5vw,72px);align-items:center}
.pwhy__copy h2{font-family:var(--disp);font-weight:800;font-size:clamp(2rem,4.2vw,3.4rem);line-height:1.04;letter-spacing:-.02em;margin:14px 0 20px}
.pwhy__copy p{color:var(--mute);font-size:1.05rem;margin-bottom:16px;max-width:52ch}
.pwhy__copy p b{color:#fff}
.pwhy__card{background:var(--panel);border:1px solid var(--line);border-radius:20px;padding:clamp(24px,3vw,34px);position:relative;overflow:hidden}
.pwhy__card::before{content:"";position:absolute;inset:-40% -40% auto auto;width:70%;height:70%;
  background:radial-gradient(circle,rgba(41,171,226,.18),transparent 62%);pointer-events:none}
.pwhy__card h3{font-family:var(--disp);font-weight:800;font-size:1.1rem;text-transform:uppercase;letter-spacing:.03em;margin-bottom:18px;color:var(--cyan)}
.pwhy__facts{list-style:none;display:flex;flex-direction:column;gap:16px}
.pwhy__facts li{display:flex;gap:14px;align-items:flex-start;font-size:.98rem;color:#dfe2f2}
.pwhy__facts b{display:block;font-family:var(--anton);font-size:1.9rem;line-height:1;color:#fff;margin-bottom:2px}
.pwhy__facts .fic{flex:0 0 auto;width:40px;height:40px;border-radius:10px;display:grid;place-items:center;background:rgba(41,171,226,.1);border:1px solid rgba(41,171,226,.4);color:var(--cyan)}
@media(max-width:900px){.pwhy__grid{grid-template-columns:1fr;gap:36px}}

/* ---------- benefits grid ---------- */
.bgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.bcard{background:var(--panel);border:1px solid var(--line);border-radius:18px;padding:clamp(24px,2.6vw,32px);
  transition:transform .35s var(--ease),border-color .35s,box-shadow .35s}
.bcard:hover{transform:translateY(-6px);border-color:var(--cyan);box-shadow:0 24px 54px -26px rgba(41,171,226,.5)}
.bcard__ic{width:46px;height:46px;margin-bottom:18px}
.bcard__ic svg{width:46px;height:46px;fill:none;stroke:var(--cyan);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.bcard__ic svg *{stroke-dasharray:120;animation:icolDraw 3.4s ease-in-out infinite}
.bcard:nth-child(2) .bcard__ic svg *{animation-delay:.4s}
.bcard:nth-child(3) .bcard__ic svg *{animation-delay:.8s}
.bcard:nth-child(4) .bcard__ic svg *{animation-delay:1.2s}
.bcard:nth-child(5) .bcard__ic svg *{animation-delay:1.6s}
.bcard:nth-child(6) .bcard__ic svg *{animation-delay:2s}
.bcard h3{font-family:var(--disp);font-weight:800;font-size:1.25rem;line-height:1.15;margin-bottom:10px}
.bcard p{color:var(--mute);font-size:.96rem;line-height:1.55}
@media(prefers-reduced-motion:reduce){.bcard__ic svg *{animation:none}}
@media(max-width:900px){.bgrid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.bgrid{grid-template-columns:1fr}}

/* ---------- sponsorship tiers ---------- */
.tgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;align-items:stretch}
.tier{display:flex;flex-direction:column;background:var(--panel);border:1px solid var(--line);border-radius:20px;
  padding:clamp(24px,2.4vw,32px);position:relative;transition:transform .35s var(--ease),border-color .35s}
.tier:hover{transform:translateY(-6px);border-color:var(--cyan)}
.tier--feat{border-color:var(--cyan);background:linear-gradient(180deg,rgba(41,171,226,.12),var(--panel) 42%);box-shadow:0 30px 70px -34px rgba(41,171,226,.5)}
.tier__badge{position:absolute;top:-11px;left:50%;transform:translateX(-50%);background:var(--cyan);color:#00121e;
  font-family:var(--disp);font-weight:800;font-size:10px;letter-spacing:.1em;text-transform:uppercase;padding:5px 14px;border-radius:999px;white-space:nowrap}
.tier__name{font-family:var(--disp);font-weight:800;font-size:1.35rem;text-transform:uppercase;letter-spacing:-.01em}
.tier__tag{color:var(--cyan);font-size:.82rem;font-weight:600;margin-top:4px}
.tier__price{font-family:var(--anton);font-size:clamp(2rem,3vw,2.6rem);line-height:1;margin:18px 0 4px;color:#fff}
.tier__price span{display:block;font-family:var(--disp);font-weight:600;font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;color:var(--mute);margin-top:8px}
.tier__list{list-style:none;display:flex;flex-direction:column;gap:12px;margin:22px 0 26px}
.tier__list li{display:flex;gap:10px;align-items:flex-start;font-size:.92rem;color:#dfe2f2;line-height:1.4}
.tier__list li::before{content:"";flex:0 0 auto;width:18px;height:18px;margin-top:1px;border-radius:50%;
  background:rgba(41,171,226,.14) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2329abe2' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6L9 17l-5-5'/%3E%3C/svg%3E") center/12px no-repeat}
.tier .btn{margin-top:auto;width:100%}
@media(max-width:960px){.tgrid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:520px){.tgrid{grid-template-columns:1fr}}

/* ---------- sponsors at the real conference (masonry) ---------- */
.spongal{columns:3;column-gap:16px}
.sgcard{break-inside:avoid;margin-bottom:16px;border-radius:16px;overflow:hidden;position:relative;
  border:1px solid var(--line);background:var(--panel);box-shadow:0 20px 50px -28px rgba(0,0,0,.7);
  transition:transform .3s var(--ease),border-color .3s}
.sgcard img{width:100%;display:block}
.sgcard:hover{transform:translateY(-4px);border-color:var(--cyan)}
.sgcard__cap{position:absolute;left:0;right:0;bottom:0;padding:26px 16px 14px;z-index:2;
  background:linear-gradient(transparent,rgba(6,8,20,.92));
  font-family:var(--disp);font-weight:700;font-size:.82rem;letter-spacing:.02em;color:#fff}
.sgcard__cap b{color:var(--cyan)}
@media(max-width:900px){.spongal{columns:2}}
@media(max-width:560px){.spongal{columns:1}}

/* ---------- final CTA band ---------- */
.foncta{position:relative;margin-top:24px;background:linear-gradient(180deg,var(--cyan),#1f93c9);color:#00121e;
  border-radius:clamp(28px,4vw,60px) clamp(28px,4vw,60px) 0 0;padding:clamp(64px,9vw,120px) 0;overflow:hidden;text-align:center}
.foncta h2{font-family:var(--anton);font-size:clamp(2.6rem,7vw,6rem);line-height:.92;color:#0a0a16;margin-bottom:18px}
.foncta p{max-width:56ch;margin:0 auto 30px;color:#0a1420;font-size:clamp(1rem,1.6vw,1.2rem);font-weight:500}
.foncta__cta{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}

/* ---------- schedule ---------- */
.sched__tabs{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin-bottom:clamp(34px,5vw,54px)}
.stab{cursor:pointer;border:1.5px solid var(--line);background:var(--panel);color:#dfe2f2;border-radius:14px;
  padding:12px 20px;text-align:center;transition:.25s;min-width:132px}
.stab b{display:block;font-family:var(--disp);font-weight:800;font-size:.95rem;letter-spacing:.01em}
.stab span{display:block;font-size:.74rem;color:var(--mute);margin-top:3px;text-transform:uppercase;letter-spacing:.06em}
.stab:hover{border-color:var(--cyan);transform:translateY(-2px)}
.stab.active{background:var(--cyan);border-color:var(--cyan);color:#00121e}
.stab.active span{color:rgba(0,18,30,.7)}
.sched__panel{display:none;max-width:940px;margin:0 auto}
.sched__panel.active{display:block;animation:schedFade .4s var(--ease)}
@keyframes schedFade{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
.sched__daytag{display:inline-block;font-family:var(--disp);font-weight:800;text-transform:uppercase;letter-spacing:.08em;
  font-size:.78rem;color:var(--cyan);border:1px solid rgba(41,171,226,.4);background:rgba(41,171,226,.08);padding:6px 14px;border-radius:999px;margin-bottom:26px}
.agrow{display:grid;grid-template-columns:132px 1fr auto;gap:20px;padding:22px 0;border-top:1px solid var(--line);align-items:start}
.agrow:last-child{border-bottom:1px solid var(--line)}
.agrow--break{background:linear-gradient(90deg,rgba(41,171,226,.06),transparent);border-radius:12px;padding-inline:14px}
.agtime{font-family:var(--disp);font-weight:800;font-size:.92rem;color:var(--cyan);white-space:nowrap;padding-top:2px}
.agtime small{display:block;color:var(--mute);font-weight:600;font-size:.72rem;margin-top:3px}
.agbody h3{font-family:var(--disp);font-weight:800;font-size:1.15rem;line-height:1.12}
.agbody p{color:var(--mute);font-size:.9rem;margin-top:5px;line-height:1.5;max-width:60ch}
.agbody .agspk{color:#cdd2e0;font-size:.82rem;margin-top:8px}
.agbody .agspk b{color:#fff;font-weight:700}
.agtrack{justify-self:end;font-family:var(--disp);font-weight:800;font-size:.66rem;letter-spacing:.06em;text-transform:uppercase;
  padding:6px 11px;border-radius:999px;white-space:nowrap;color:var(--cyan);background:rgba(41,171,226,.1);border:1px solid rgba(41,171,226,.34)}
.agtrack--paid{color:var(--cyan-hi);background:rgba(127,211,242,.1);border-color:rgba(127,211,242,.34)}
.agtrack--ai{color:#c58bff;background:rgba(160,110,255,.1);border-color:rgba(160,110,255,.34)}
.agtrack--social{color:#ff9aa0;background:rgba(168,48,47,.14);border-color:rgba(168,48,47,.4)}
.agtrack--all{color:#0a0a16;background:var(--cyan);border-color:var(--cyan)}
.sched__note{text-align:center;color:var(--mute);font-size:.9rem;margin-top:30px;max-width:60ch;margin-inline:auto}
@media(max-width:680px){
  .agrow{grid-template-columns:1fr;gap:8px}
  .agtrack{justify-self:start;margin-top:4px}
}

/* ---------- speaker lineup grid ---------- */
.lineup__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.lcard{position:relative;border-radius:16px;overflow:hidden;background:var(--panel);border:1px solid var(--line);
  aspect-ratio:556/691;transition:transform .35s var(--ease),border-color .35s,box-shadow .35s}
.lcard img{width:100%;height:100%;object-fit:cover;display:block}
.lcard:hover{transform:translateY(-6px);border-color:var(--cyan);box-shadow:0 22px 50px -24px rgba(41,171,226,.5)}
.lcard--soon{display:flex;align-items:center;justify-content:center;text-align:center;
  background:radial-gradient(120% 90% at 50% 32%,rgba(41,171,226,.12),transparent 62%),linear-gradient(165deg,var(--panel),var(--bg2));
  border:1.5px dashed rgba(41,171,226,.5)}
.lcard--soon div{display:flex;flex-direction:column;align-items:center;gap:12px;padding:22px}
.lcard--soon .ic{width:60px;height:60px;border-radius:50%;display:grid;place-items:center;font-size:32px;color:var(--cyan);border:1.5px solid rgba(41,171,226,.55);background:rgba(41,171,226,.08)}
.lcard--soon b{font-family:var(--disp);font-weight:800;text-transform:uppercase;font-size:1.1rem;line-height:1.1}
.lcard--soon span{font-family:var(--disp);font-weight:800;text-transform:uppercase;color:var(--cyan);font-size:1.1rem}
@media(max-width:900px){.lineup__grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:600px){.lineup__grid{grid-template-columns:repeat(2,1fr)}}

/* ---------- modal / apply form ---------- */
.modal{position:fixed;inset:0;z-index:200;display:none;place-items:center;padding:20px;
  background:rgba(4,5,14,.86);backdrop-filter:blur(8px)}
.modal.open{display:grid;animation:modalFade .3s ease}
@keyframes modalFade{from{opacity:0}to{opacity:1}}
.modal__card{width:min(640px,100%);max-height:92vh;overflow:auto;position:relative;
  background:linear-gradient(180deg,var(--panel2),var(--panel));border:1px solid var(--line);border-radius:22px;
  padding:clamp(26px,4vw,46px);box-shadow:0 50px 120px -30px #000;transform:translateY(16px);transition:transform .35s var(--ease)}
.modal.open .modal__card{transform:none}
.modal__x{position:absolute;top:16px;right:16px;width:40px;height:40px;border-radius:50%;border:1px solid var(--line);
  background:var(--bg2);color:#fff;font-size:22px;cursor:pointer;transition:.2s;line-height:1}
.modal__x:hover{background:var(--burgundy);border-color:var(--burgundy)}
.modal__eyebrow{font-family:var(--disp);font-weight:800;text-transform:uppercase;letter-spacing:.14em;font-size:.72rem;color:var(--cyan)}
.modal h3{font-family:var(--disp);font-weight:900;font-size:clamp(1.6rem,3vw,2.2rem);line-height:1.05;margin:8px 0 6px}
.modal__lead{color:var(--mute);font-size:.95rem;margin-bottom:24px;max-width:48ch}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.field{display:flex;flex-direction:column;gap:7px}
.field--full{grid-column:1/-1}
.field label{font-family:var(--disp);font-weight:700;font-size:.72rem;letter-spacing:.06em;text-transform:uppercase;color:#aeb2cc}
.field label .req{color:var(--cyan)}
.field input,.field select,.field textarea{width:100%;background:var(--bg2);border:1.5px solid var(--line);border-radius:12px;
  padding:13px 15px;color:#fff;font-family:var(--body);font-size:15px;transition:border-color .2s,box-shadow .2s}
.field textarea{resize:vertical;min-height:96px}
.field input::placeholder,.field textarea::placeholder{color:#6d739a}
.field input:focus,.field select:focus,.field textarea:focus{outline:0;border-color:var(--cyan);box-shadow:0 0 0 3px rgba(41,171,226,.18)}
.field select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2329abe2' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;background-size:16px;padding-right:40px}
.field select option{background:#12142f;color:#fff}
.modal .btn{margin-top:22px;width:100%}
.modal__fine{margin-top:14px;text-align:center;color:#6d739a;font-size:.78rem}
.modal__success{display:none;text-align:center;padding:16px 6px}
.modal__success.show{display:block;animation:schedFade .4s var(--ease)}
.modal__success .chk{width:76px;height:76px;border-radius:50%;margin:0 auto 22px;display:grid;place-items:center;
  background:rgba(41,171,226,.12);border:2px solid var(--cyan)}
.modal__success .chk svg{width:38px;height:38px;fill:none;stroke:var(--cyan);stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round}
.modal__success h3{margin-bottom:8px}
.modal__success p{color:var(--mute);max-width:42ch;margin:0 auto 24px}
.modal__form.hide{display:none}
@media(max-width:520px){.form-grid{grid-template-columns:1fr}}

/* ---------- homepage sponsor CTA (replaces old logo wall) ---------- */
.sponcta-home{max-width:1120px;margin:0 auto 56px;text-align:center;position:relative;overflow:hidden;
  background:linear-gradient(135deg,var(--navy) 0%,var(--panel2) 60%,var(--panel) 100%);
  border:1px solid var(--line);border-radius:24px;
  padding:clamp(38px,5vw,64px) clamp(26px,4.5vw,72px);
  box-shadow:0 30px 70px -34px rgba(0,0,0,.6),inset 0 1px 0 rgba(255,255,255,.05)}
.sponcta-home::before{content:"";position:absolute;inset:-50% -30% auto auto;width:60%;height:120%;pointer-events:none;
  background:radial-gradient(circle,rgba(41,171,226,.22),transparent 60%)}
.sponcta-home::after{content:"";position:absolute;left:-40%;bottom:-60%;width:55%;height:120%;pointer-events:none;
  background:radial-gradient(circle,rgba(129,21,23,.18),transparent 62%)}
.sponcta-home__k{position:relative;z-index:1;font-family:var(--disp);font-weight:800;text-transform:uppercase;letter-spacing:.16em;font-size:.78rem;color:var(--cyan)}
.sponcta-home h3{position:relative;z-index:1;font-family:var(--disp);font-weight:900;font-size:clamp(1.7rem,3.6vw,2.9rem);line-height:1.05;letter-spacing:-.02em;margin:12px auto 14px;max-width:20ch}
.sponcta-home p{position:relative;z-index:1;color:var(--mute);max-width:60ch;margin:0 auto 28px;font-size:1.02rem}
.sponcta-home .btn{position:relative;z-index:1}

/* ============================================================
   INNER PAGES v2 — premium hero(es), poppy tiers, timeline schedule
   (later rules intentionally override the v1 inner-page blocks)
   ============================================================ */

/* ===================== SPONSOR HERO (premium) ===================== */
.shero{position:relative;overflow:hidden;background:var(--bg);padding:clamp(140px,20vh,205px) 0 clamp(60px,8vw,100px)}
.shero__bg{position:absolute;inset:0;z-index:0;pointer-events:none;overflow:hidden}
.shero__bg .blob{position:absolute;border-radius:50%;filter:blur(70px);opacity:.55;will-change:transform}
.shero__bg .b1{width:60vw;height:60vw;max-width:760px;max-height:760px;top:-24%;right:-12%;
  background:radial-gradient(circle,rgba(41,171,226,.6),transparent 68%);animation:blobDrift1 18s ease-in-out infinite alternate}
.shero__bg .b2{width:52vw;height:52vw;max-width:640px;max-height:640px;bottom:-28%;left:-16%;
  background:radial-gradient(circle,rgba(129,21,23,.55),transparent 66%);animation:blobDrift2 22s ease-in-out infinite alternate}
.shero__bg .sgrid{position:absolute;inset:0;
  background-image:linear-gradient(rgba(255,255,255,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px);
  background-size:64px 64px;-webkit-mask-image:radial-gradient(120% 100% at 62% 34%,#000,transparent 74%);mask-image:radial-gradient(120% 100% at 62% 34%,#000,transparent 74%)}
@keyframes blobDrift1{to{transform:translate3d(-8%,10%,0) scale(1.08)}}
@keyframes blobDrift2{to{transform:translate3d(8%,-8%,0) scale(1.1)}}
@media(prefers-reduced-motion:reduce){.shero__bg .blob{animation:none}}
.shero__in{position:relative;z-index:2;display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(30px,5vw,64px);align-items:center}
.shero__eyebrow{display:inline-flex;align-items:center;gap:10px;font-family:var(--disp);font-weight:800;text-transform:uppercase;letter-spacing:.15em;font-size:.72rem;color:var(--cyan);
  border:1px solid rgba(41,171,226,.35);background:rgba(41,171,226,.08);padding:8px 16px;border-radius:999px}
.shero__eyebrow .pd{width:8px;height:8px;border-radius:50%;background:var(--cyan);box-shadow:0 0 0 4px rgba(41,171,226,.22);animation:pdPulse 2s ease-in-out infinite}
@keyframes pdPulse{50%{box-shadow:0 0 0 8px rgba(41,171,226,0)}}
.shero h1{font-family:var(--disp);font-weight:900;font-size:clamp(2.5rem,5.5vw,4.8rem);line-height:.98;letter-spacing:-.03em;text-transform:uppercase;margin:22px 0 0}
.shero__grad{background:linear-gradient(100deg,var(--cyan),var(--cyan-hi) 46%,#fff);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.shero__sub{margin:22px 0 0;max-width:52ch;font-size:clamp(1.02rem,1.5vw,1.18rem);color:#cfd4ee;line-height:1.62}
.shero__sub b{color:#fff}
.shero__chips{display:flex;gap:12px;flex-wrap:wrap;margin-top:26px}
.schip{font-size:.86rem;color:#dfe2f2;border:1px solid var(--line);background:rgba(255,255,255,.04);padding:9px 15px;border-radius:12px}
.schip b{font-family:var(--disp);font-weight:800;color:var(--cyan);margin-right:5px}
.shero__cta{display:flex;gap:14px;flex-wrap:wrap;margin-top:30px}
/* photo stack */
.shero__stack{position:relative;aspect-ratio:1/1;min-height:380px;will-change:transform}
.shero__stack .ph{position:absolute;border-radius:16px;overflow:hidden;border:1px solid rgba(255,255,255,.16);
  box-shadow:0 44px 90px -34px rgba(0,0,0,.85);background:var(--panel);transition:transform .5s var(--ease)}
.shero__stack .ph img{width:100%;height:100%;object-fit:cover;display:block}
.shero__stack .ph1{width:58%;top:2%;right:3%;aspect-ratio:3/4;transform:rotate(4deg);z-index:2}
.shero__stack .ph2{width:56%;bottom:0;left:0;aspect-ratio:4/3;transform:rotate(-5deg);z-index:3}
.shero__stack .ph3{width:34%;top:44%;right:9%;aspect-ratio:3/4;transform:rotate(9deg);z-index:1}
.shero__tag{position:absolute;z-index:5;top:-3%;left:8%;background:var(--cyan);color:#00121e;font-family:var(--disp);font-weight:900;
  text-transform:uppercase;letter-spacing:.02em;font-size:.82rem;padding:10px 16px;border-radius:12px;box-shadow:0 16px 34px -12px rgba(41,171,226,.75);transform:rotate(-4deg)}
.shero__badge{position:absolute;z-index:5;bottom:6%;right:-2%;background:rgba(10,12,30,.85);backdrop-filter:blur(8px);border:1px solid var(--line);
  border-radius:14px;padding:13px 17px;display:flex;flex-direction:column;box-shadow:0 22px 44px -16px #000}
.shero__badge b{font-family:var(--anton);font-size:1.8rem;line-height:1;color:#fff}
.shero__badge span{font-family:var(--disp);font-weight:700;text-transform:uppercase;letter-spacing:.06em;font-size:.62rem;color:var(--cyan);margin-top:4px}
@media(max-width:900px){.shero__in{grid-template-columns:1fr;gap:48px}.shero__stack{max-width:480px;margin-inline:auto;width:100%;aspect-ratio:4/3;min-height:340px}}

/* ===================== POPPY SPONSOR TIERS ===================== */
.tgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;align-items:stretch}
.tier{overflow:hidden;padding:34px 26px 30px;border-radius:22px;border:1px solid var(--line);background:linear-gradient(180deg,var(--panel2),var(--panel));
  transition:transform .35s var(--ease),border-color .35s,box-shadow .35s}
.tier:hover{transform:translateY(-8px);border-color:var(--cyan);box-shadow:0 34px 74px -34px rgba(41,171,226,.55)}
.tier__bar{position:absolute;top:0;left:0;right:0;height:5px;background:var(--cyan)}
.tier__ic{width:52px;height:52px;border-radius:14px;display:grid;place-items:center;margin-bottom:16px}
.tier__ic svg{width:28px;height:28px;fill:none;stroke:#00121e;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.tier__name{font-family:var(--disp);font-weight:900;font-size:1.5rem;text-transform:uppercase;letter-spacing:-.01em;line-height:1}
.tier__for{color:var(--mute);font-size:.86rem;margin-top:8px;line-height:1.4;min-height:2.4em}
.tier__slots{display:inline-flex;align-items:center;gap:7px;margin-top:16px;font-family:var(--disp);font-weight:800;text-transform:uppercase;
  letter-spacing:.04em;font-size:.68rem;color:#ffd7a6;background:rgba(168,48,47,.16);border:1px solid rgba(168,48,47,.4);padding:6px 11px;border-radius:999px}
.tier__slots i{width:7px;height:7px;border-radius:50%;background:#ff6b6b;box-shadow:0 0 0 3px rgba(255,107,107,.25);animation:pdPulse 2s ease-in-out infinite}
.tier__price{margin:18px 0 2px;font-family:var(--disp);font-weight:700;font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;color:var(--mute)}
.tier__price b{display:block;font-family:var(--anton);font-weight:400;font-size:2rem;letter-spacing:0;color:#fff;margin:4px 0 2px;text-transform:none}
.tier__price span{font-size:.72rem;color:var(--mute);text-transform:none;letter-spacing:0;font-weight:500}
.tier__list{list-style:none;display:flex;flex-direction:column;gap:12px;margin:20px 0 22px}
.tier__list li{display:flex;gap:10px;align-items:flex-start;font-size:.9rem;color:#e4e7f5;line-height:1.4}
.tier__list li svg{flex:0 0 auto;width:18px;height:18px;margin-top:1px}
.tier__hl{font-family:var(--disp);font-weight:800;font-size:.76rem;letter-spacing:.03em;text-transform:uppercase;color:var(--cyan);margin-bottom:18px;display:flex;align-items:center;gap:7px}
.tier .btn{margin-top:auto;width:100%}
.tier__ribbon{position:absolute;top:16px;right:-34px;transform:rotate(45deg);background:var(--cyan);color:#00121e;
  font-family:var(--disp);font-weight:900;text-transform:uppercase;letter-spacing:.05em;font-size:.64rem;padding:6px 42px;box-shadow:0 8px 20px -6px rgba(0,0,0,.5)}
/* tier color themes */
.tier--feat{border-color:var(--cyan);transform:scale(1.035);background:linear-gradient(180deg,rgba(41,171,226,.16),var(--panel) 46%);
  box-shadow:0 40px 90px -34px rgba(41,171,226,.6),0 0 0 1px rgba(41,171,226,.4)}
.tier--feat:hover{transform:scale(1.035) translateY(-8px)}
.tier--feat .tier__bar,.tier--feat .tier__ic{background:linear-gradient(120deg,var(--cyan),var(--cyan-hi))}
.tier--gold .tier__bar,.tier--gold .tier__ic{background:linear-gradient(120deg,#f0b955,#d98f2b)}
.tier--gold .tier__hl,.tier--gold .tier__price b{color:#f0b955}
.tier--gold .tier__list li svg{stroke:#f0b955}
.tier--silver .tier__bar,.tier--silver .tier__ic{background:linear-gradient(120deg,#dfe4f5,#9aa3c4)}
.tier--silver .tier__hl{color:#c7cde6}
.tier--silver .tier__list li svg{stroke:#c7cde6}
.tier--comm .tier__bar,.tier--comm .tier__ic{background:linear-gradient(120deg,#a8302f,#811517)}
.tier--comm .tier__ic svg{stroke:#fff}
.tier--comm .tier__hl{color:#e88b8a}
.tier--comm .tier__list li svg{stroke:#e88b8a}
.tier--feat .tier__list li svg{stroke:var(--cyan)}
.tier__note{text-align:center;color:var(--mute);font-size:.9rem;margin-top:30px}
.tier__note b{color:#fff}
@media(max-width:960px){.tgrid{grid-template-columns:repeat(2,1fr)}.tier--feat{transform:none}.tier--feat:hover{transform:translateY(-8px)}}
@media(max-width:520px){.tgrid{grid-template-columns:1fr}}

/* ===================== SCHEDULE HERO (distinct) ===================== */
.chero{position:relative;overflow:hidden;display:grid;align-items:end;min-height:84vh;padding:clamp(150px,20vh,220px) 0 clamp(48px,6vw,80px)}
.chero__bg{position:absolute;inset:0;z-index:0;background:#0a0c1e}
.chero__bg img{width:100%;height:100%;object-fit:cover;object-position:50% 42%;transform:scale(1.05);animation:heroZoom 16s ease-out forwards}
.chero::after{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;
  background:linear-gradient(180deg,rgba(6,8,20,.7),rgba(6,8,20,.32) 30%,rgba(6,8,20,.97)),
  radial-gradient(85% 70% at 16% 24%,rgba(41,171,226,.32),transparent 60%),
  radial-gradient(70% 60% at 98% 8%,rgba(129,21,23,.34),transparent 60%)}
.chero__grain{position:absolute;inset:0;z-index:1;pointer-events:none;opacity:.5;
  background-image:linear-gradient(rgba(255,255,255,.03) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.03) 1px,transparent 1px);
  background-size:60px 60px;-webkit-mask-image:radial-gradient(120% 90% at 30% 40%,#000,transparent 78%);mask-image:radial-gradient(120% 90% at 30% 40%,#000,transparent 78%)}
.chero__in{position:relative;z-index:2}
.chero__eyebrow{display:inline-flex;align-items:center;gap:10px;font-family:var(--disp);font-weight:800;text-transform:uppercase;letter-spacing:.15em;font-size:.72rem;color:var(--cyan);
  border:1px solid rgba(41,171,226,.4);background:rgba(41,171,226,.1);padding:8px 16px;border-radius:999px}
.chero__eyebrow .pd{width:8px;height:8px;border-radius:50%;background:var(--cyan);box-shadow:0 0 0 4px rgba(41,171,226,.22);animation:pdPulse 2s ease-in-out infinite}
.chero h1{font-family:var(--disp);font-weight:900;font-size:clamp(2.6rem,7vw,5.6rem);line-height:.95;letter-spacing:-.03em;text-transform:uppercase;margin-top:22px;max-width:16ch}
.chero h1 .g{color:var(--cyan)}
.chero__sub{margin-top:22px;max-width:56ch;font-size:clamp(1.05rem,1.8vw,1.4rem);font-family:var(--serif);font-style:italic;color:#dbe0f4;line-height:1.5}
.chero__days{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:38px;max-width:860px}
.cday{text-align:left;cursor:pointer;background:rgba(10,12,30,.5);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.14);border-radius:16px;padding:15px 17px;transition:.25s;color:#fff}
.cday:hover{border-color:var(--cyan);transform:translateY(-4px);background:rgba(10,12,30,.72)}
.cday b{display:block;font-family:var(--disp);font-weight:800;font-size:1rem}
.cday .cdate{display:block;font-size:.7rem;color:var(--cyan);text-transform:uppercase;letter-spacing:.06em;margin:3px 0 8px}
.cday .ctheme{display:block;font-size:.8rem;color:var(--mute);line-height:1.35}
@media(max-width:820px){.chero__days{grid-template-columns:repeat(2,1fr)}}
@media(max-width:460px){.chero__days{grid-template-columns:1fr}}

/* ===================== SCHEDULE TOOLBAR + LEGEND ===================== */
.myschedbar{display:flex;align-items:center;justify-content:center;gap:16px;flex-wrap:wrap;margin:2px auto 22px;text-align:center}
.myschedbar .btn{white-space:nowrap}
.mysched-count{font-variant-numeric:tabular-nums}
.myschedbar__hint{color:var(--mute);font-size:.86rem;max-width:38ch;text-align:left}
.tracklegend{display:flex;gap:16px;flex-wrap:wrap;justify-content:center;margin:0 auto 30px}
.tracklegend span{display:inline-flex;align-items:center;gap:7px;font-family:var(--disp);font-weight:700;font-size:.7rem;text-transform:uppercase;letter-spacing:.05em;color:var(--mute)}
.tracklegend i{width:11px;height:11px;border-radius:3px}
.lg-seo{background:var(--cyan)}.lg-paid{background:var(--cyan-hi)}.lg-ai{background:#a06eff}.lg-social{background:#a8302f}.lg-all{background:#586089}

/* ===================== TIMELINE AGENDA ===================== */
.sched__panel{position:relative}
.agrow{display:grid;grid-template-columns:96px 30px 1fr auto;gap:16px;padding:20px 0;align-items:start;position:relative}
.agrow+.agrow{border-top:1px solid var(--line)}
.agtime{font-family:var(--disp);font-weight:800;font-size:.92rem;color:var(--cyan);white-space:nowrap;padding-top:14px;text-align:right}
.agtime small{display:block;color:var(--mute);font-weight:600;font-size:.7rem;margin-top:3px}
.agspine{position:relative;align-self:stretch}
.agspine::before{content:"";position:absolute;left:50%;top:-20px;bottom:-20px;width:2px;background:var(--line);transform:translateX(-50%)}
.agrow:first-child .agspine::before{top:20px}
.agrow:last-child .agspine::before{bottom:auto;height:calc(100% - 20px)}
.agnode{position:absolute;left:50%;top:16px;transform:translateX(-50%);width:15px;height:15px;border-radius:50%;background:var(--bg);border:2.5px solid var(--cyan);z-index:1;transition:.3s}
.agrow:hover .agnode{box-shadow:0 0 0 6px rgba(41,171,226,.16)}
.tr-paid .agnode{border-color:var(--cyan-hi)}.tr-ai .agnode{border-color:#a06eff}.tr-social .agnode{border-color:#a8302f}.tr-all .agnode{border-color:#586089}
.agbody{padding-top:6px}
.agbody h3{font-family:var(--disp);font-weight:800;font-size:1.18rem;line-height:1.14}
.agbody p{color:var(--mute);font-size:.9rem;margin-top:5px;line-height:1.5;max-width:58ch}
.agbody .agspk{color:#cdd2e0;font-size:.82rem;margin-top:8px}
.agbody .agspk b{color:#fff;font-weight:700}
.agmeta{display:flex;flex-direction:column;align-items:flex-end;gap:10px;padding-top:8px}
.agtrack{font-family:var(--disp);font-weight:800;font-size:.64rem;letter-spacing:.06em;text-transform:uppercase;padding:6px 11px;border-radius:999px;white-space:nowrap;color:var(--cyan);background:rgba(41,171,226,.1);border:1px solid rgba(41,171,226,.34)}
.agtrack--paid{color:var(--cyan-hi);background:rgba(127,211,242,.1);border-color:rgba(127,211,242,.34)}
.agtrack--ai{color:#c58bff;background:rgba(160,110,255,.12);border-color:rgba(160,110,255,.34)}
.agtrack--social{color:#ff9aa0;background:rgba(168,48,47,.16);border-color:rgba(168,48,47,.42)}
.agtrack--all{color:#aeb4d6;background:rgba(88,96,137,.16);border-color:rgba(88,96,137,.5)}
.agadd{display:inline-flex;align-items:center;gap:6px;cursor:pointer;font-family:var(--disp);font-weight:800;font-size:.76rem;
  border:1.5px solid var(--line);background:var(--panel);color:#dfe2f2;border-radius:999px;padding:8px 14px;transition:.2s;white-space:nowrap}
.agadd svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round}
.agadd:hover{border-color:var(--cyan);color:#fff;transform:translateY(-2px)}
.agadd.added{background:var(--cyan);border-color:var(--cyan);color:#00121e}
.agrow--break .agbody h3{font-weight:700;color:#c8cde0;font-size:1.05rem}
@media(max-width:680px){
  .agrow{grid-template-columns:1fr;gap:7px;padding:18px 0}
  .agspine{display:none}
  .agtime{text-align:left;padding-top:0}
  .agmeta{flex-direction:row;align-items:center;justify-content:flex-start;gap:12px;margin-top:8px}
}

/* ===================== MY SCHEDULE modal list ===================== */
.msched__group{margin-bottom:20px}
.msched__group h4{font-family:var(--disp);font-weight:800;text-transform:uppercase;letter-spacing:.06em;font-size:.74rem;color:var(--cyan);margin-bottom:8px}
.msched__item{display:flex;gap:12px;align-items:flex-start;padding:12px 0;border-top:1px solid var(--line)}
.msched__item .t{color:var(--cyan);font-family:var(--disp);font-weight:800;font-size:.8rem;white-space:nowrap;min-width:76px;padding-top:2px}
.msched__item .ti{flex:1}
.msched__item .ti b{display:block;font-family:var(--disp);font-weight:700;font-size:.98rem;color:#fff;line-height:1.2}
.msched__item .ti span{font-size:.78rem;color:var(--mute)}
.msched__rm{flex:0 0 auto;border:1px solid var(--line);background:var(--bg2);color:var(--mute);cursor:pointer;font-size:16px;width:28px;height:28px;border-radius:8px;line-height:1;transition:.2s}
.msched__rm:hover{color:#fff;border-color:var(--burgundy);background:var(--burgundy)}
.msched__empty{text-align:center;color:var(--mute);padding:24px 6px}
.msched__empty svg{width:48px;height:48px;stroke:var(--cyan);fill:none;stroke-width:1.6;margin:0 auto 14px;display:block;opacity:.7}
.msched__foot{display:flex;justify-content:space-between;gap:12px;margin-top:22px;align-items:center}
.msched__foot .clear{background:none;border:0;color:var(--mute);cursor:pointer;font-size:.85rem;text-decoration:underline;text-underline-offset:3px}
.msched__foot .clear:hover{color:var(--burgundy-hi)}
.msched__fine{color:#6d739a;font-size:.76rem;margin-top:10px;text-align:center}

/* ===================== WAYS TO PARTNER (à la carte, reference-style) ===================== */
.ways{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.wcard{position:relative;background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:26px 24px;transition:transform .3s var(--ease),border-color .3s}
.wcard:hover{transform:translateY(-5px);border-color:var(--cyan)}
.wcard__tag{position:absolute;top:16px;right:16px;font-family:var(--disp);font-weight:800;font-size:.6rem;letter-spacing:.08em;text-transform:uppercase;color:var(--cyan);border:1px solid rgba(41,171,226,.34);background:rgba(41,171,226,.08);padding:4px 9px;border-radius:999px}
.wcard__ic{width:44px;height:44px;border-radius:12px;display:grid;place-items:center;background:rgba(41,171,226,.1);border:1px solid rgba(41,171,226,.3);margin-bottom:16px}
.wcard__ic svg{width:24px;height:24px;fill:none;stroke:var(--cyan);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.wcard h3{font-family:var(--disp);font-weight:800;font-size:1.15rem;line-height:1.1}
.wcard p{color:var(--mute);font-size:.9rem;line-height:1.5;margin-top:8px}
@media(max-width:860px){.ways{grid-template-columns:repeat(2,1fr)}}
@media(max-width:520px){.ways{grid-template-columns:1fr}}

/* ===================== PARTNER TESTIMONIAL ===================== */
.ptquote{max-width:900px;margin:0 auto;background:linear-gradient(135deg,var(--navy),var(--panel2));border:1px solid var(--line);border-radius:24px;
  padding:clamp(30px,4.5vw,56px);position:relative;overflow:hidden}
.ptquote::before{content:"\201C";position:absolute;top:-28px;left:22px;font-family:var(--serif);font-style:italic;font-size:12rem;color:rgba(41,171,226,.14);line-height:1}
.ptquote blockquote{position:relative;z-index:1;font-family:var(--disp);font-weight:700;font-size:clamp(1.3rem,2.6vw,2rem);line-height:1.32;color:#f0f2fb;letter-spacing:-.01em}
.ptquote__by{position:relative;z-index:1;display:flex;align-items:center;gap:14px;margin-top:26px}
.ptquote__by .ava{width:50px;height:50px;border-radius:12px;background:#fff;display:grid;place-items:center;flex:none;overflow:hidden;border:1px solid var(--line);padding:7px}
.ptquote__by .ava img{width:100%;height:100%;object-fit:contain}
.ptquote__by b{display:block;font-family:var(--disp);font-weight:800;font-size:1rem}
.ptquote__by span{color:var(--cyan);font-size:.85rem;font-weight:600}

/* ===================== agenda: room + avatars ===================== */
.agbody .agroom{display:inline-flex;align-items:center;gap:6px;margin-top:10px;color:#aeb4d6;font-size:.76rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em}
.agbody .agroom svg{width:13px;height:13px;fill:none;stroke:var(--cyan);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.agavs{display:flex;align-items:center;gap:-8px;margin-top:12px}
.agavs img{width:36px;height:36px;border-radius:50%;object-fit:cover;border:2px solid var(--panel);margin-right:-8px;object-position:50% 22%}
.agavs .agavtx{margin-left:16px;color:#cdd2e0;font-size:.82rem;align-self:center}
.agavs .agavtx b{color:#fff}

/* --- v2 fixes --- */
.tier__list li::before{display:none!important}   /* kill v1 pseudo check (we now use inline svg) */
.msched__foot .clear{white-space:nowrap}

/* --- v2 fix: hero headline fit on narrow screens --- */
.shero h1{font-size:clamp(1.8rem,6.8vw,4.8rem)}
.chero h1{font-size:clamp(2rem,6.8vw,5.6rem)}
@media(max-width:430px){
  .shero h1,.chero h1{letter-spacing:-.02em}
  .shero,.chero{overflow-x:clip}
}

/* --- v2 fix: let hero headline wrap naturally on phones --- */
@media(max-width:600px){.shero h1 br{display:none}}

/* --- v2 fix: final hero headline sizing for small phones --- */
.shero h1{font-size:clamp(1.5rem,6.6vw,4.8rem)}

/* --- v2 fix: prevent grid track blowout (minmax 0) --- */
.shero__in{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr)}
@media(max-width:900px){.shero__in{grid-template-columns:minmax(0,1fr)}}
.shero h1{font-size:clamp(1.7rem,6.4vw,4.8rem)}

/* ============================================================
   SCHEDULE v3 — photo-forward session cards (reference-style)
   ============================================================ */
.sched__panel{position:relative}
.sesgroup{margin-bottom:8px}
.ses{display:grid;grid-template-columns:88px 1fr auto;gap:20px;align-items:center;
  background:linear-gradient(180deg,var(--panel2),var(--panel));border:1px solid var(--line);border-radius:16px;
  padding:15px 18px;margin-bottom:12px;transition:transform .3s var(--ease),border-color .3s,box-shadow .3s}
.ses:hover{transform:translateY(-3px);border-color:var(--cyan);box-shadow:0 22px 48px -28px rgba(41,171,226,.5)}
.ses__thumb{position:relative;width:88px;aspect-ratio:556/691;border-radius:12px;overflow:hidden;border:1px solid var(--line);background:var(--bg2);flex:none}
.ses__thumb img{width:100%;height:100%;object-fit:cover;display:block}
.ses__more{position:absolute;right:5px;bottom:5px;background:var(--cyan);color:#00121e;font-family:var(--disp);font-weight:900;font-size:.66rem;padding:3px 7px;border-radius:999px;box-shadow:0 4px 10px rgba(0,0,0,.4)}
.ses__ph{width:88px;aspect-ratio:556/691;border-radius:12px;display:grid;place-items:center;flex:none;
  background:radial-gradient(circle at 50% 34%,rgba(41,171,226,.22),var(--panel2));border:1px solid var(--line);color:var(--cyan)}
.ses__ph svg{width:30px;height:30px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.ses__body{min-width:0}
.ses__time{font-family:var(--disp);font-weight:800;font-size:.8rem;color:var(--cyan);letter-spacing:.04em}
.ses__title{font-family:var(--serif);font-style:italic;font-size:clamp(1.18rem,1.9vw,1.55rem);color:#fff;line-height:1.18;margin:4px 0 7px}
.ses__spk{font-size:.9rem;color:#c7cde0;line-height:1.4}
.ses__spk b{color:#fff;font-weight:700}
.ses__room{display:inline-flex;align-items:center;gap:6px;margin-top:9px;color:var(--cyan);font-size:.74rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em}
.ses__room svg{width:12px;height:12px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.ses__meta{display:flex;flex-direction:column;align-items:flex-end;gap:11px;flex:none}
/* break row */
.brk{display:flex;align-items:center;gap:14px;padding:13px 18px;margin-bottom:12px;border:1px dashed rgba(255,255,255,.15);border-radius:13px;background:rgba(255,255,255,.02)}
.brk__ic{width:36px;height:36px;border-radius:10px;display:grid;place-items:center;background:rgba(41,171,226,.09);border:1px solid rgba(41,171,226,.3);color:var(--cyan);flex:none}
.brk__ic svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.brk__t{font-family:var(--disp);font-weight:700;color:#c8cde0;font-size:1rem;flex:1;min-width:0}
.brk__t small{display:block;color:var(--mute);font-weight:500;font-size:.8rem;margin-top:2px}
.brk__time{color:var(--cyan);font-family:var(--disp);font-weight:800;font-size:.78rem;white-space:nowrap}
.brk .agadd{flex:none}
@media(max-width:640px){
  .ses{grid-template-columns:64px 1fr;gap:14px;align-items:start}
  .ses__ph{width:64px}.ses__thumb{width:64px}
  .ses__meta{grid-column:1/-1;flex-direction:row;align-items:center;gap:12px;margin-top:2px}
  .brk{flex-wrap:wrap}
}

/* ============================================================
   SPONSOR v3 — audience insights pills, photo OPTION cards, editorial quotes
   ============================================================ */
/* audience role pills */
.rolepills{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin-top:38px}
.rolepills span{font-family:var(--disp);font-weight:700;font-size:.8rem;letter-spacing:.02em;color:#dfe2f2;
  border:1px solid var(--line);background:var(--panel);padding:9px 16px;border-radius:999px;transition:.2s}
.rolepills span:hover{border-color:var(--cyan);color:#fff}
.rolepills b{color:var(--cyan);font-weight:800}

/* photo OPTION cards (reference-style) */
.optgrid{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.opt{position:relative;display:grid;grid-template-columns:1fr 43%;min-height:196px;border-radius:18px;overflow:hidden;
  border:1px solid var(--line);background:linear-gradient(180deg,var(--panel2),var(--panel));transition:transform .35s var(--ease),border-color .35s,box-shadow .35s}
.opt:hover{transform:translateY(-5px);border-color:var(--cyan);box-shadow:0 30px 64px -32px rgba(41,171,226,.5)}
.opt__txt{padding:clamp(22px,2.4vw,30px);display:flex;flex-direction:column;justify-content:center}
.opt__tag{align-self:flex-start;font-family:var(--disp);font-weight:800;font-size:.6rem;letter-spacing:.09em;text-transform:uppercase;
  color:var(--cyan);border:1px solid rgba(41,171,226,.35);background:rgba(41,171,226,.08);padding:5px 11px;border-radius:999px;margin-bottom:14px}
.opt__txt h3{font-family:var(--disp);font-weight:800;font-size:1.4rem;line-height:1.08;letter-spacing:-.01em}
.opt__txt p{color:var(--mute);font-size:.92rem;line-height:1.5;margin-top:9px}
.opt__img{position:relative;overflow:hidden}
.opt__img::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,var(--panel) 0%,transparent 34%)}
.opt__img img{width:100%;height:100%;object-fit:cover;transition:transform .6s var(--ease)}
.opt:hover .opt__img img{transform:scale(1.06)}
.opt--wide{grid-column:1/-1;grid-template-columns:1fr 30%;min-height:172px}
@media(max-width:820px){.optgrid{grid-template-columns:1fr}.opt--wide{grid-column:auto;grid-template-columns:1fr 43%}}
@media(max-width:520px){.opt,.opt--wide{grid-template-columns:1fr}.opt__img{min-height:150px;order:-1}.opt__img::after{background:linear-gradient(0deg,var(--panel) 0%,transparent 44%)}}

/* editorial pull quotes (two-up) */
.pqgrid{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.pq{background:linear-gradient(135deg,var(--navy),var(--panel2));border:1px solid var(--line);border-radius:22px;padding:clamp(26px,3vw,40px);position:relative}
.pq__mark{font-family:var(--serif);font-style:italic;font-size:4.5rem;line-height:.6;color:rgba(41,171,226,.35);height:.5em}
.pq blockquote{font-family:var(--serif);font-style:italic;font-size:clamp(1.12rem,1.7vw,1.4rem);line-height:1.45;color:#eef0fb;margin:6px 0 20px}
.pq mark{background:linear-gradient(transparent 58%,rgba(41,171,226,.32) 58%);color:#fff;padding:0 2px}
.pq__by{display:flex;align-items:center;gap:13px}
.pq__by .ava{width:46px;height:46px;border-radius:11px;display:grid;place-items:center;flex:none;font-family:var(--disp);font-weight:900;font-size:.95rem;color:#00121e;background:linear-gradient(135deg,var(--cyan),var(--cyan-hi))}
.pq__by b{display:block;font-family:var(--disp);font-weight:800;font-size:.98rem}
.pq__by span{color:var(--cyan);font-size:.82rem;font-weight:600}
@media(max-width:760px){.pqgrid{grid-template-columns:1fr}}

/* --- v3 fix: break row layout on phones --- */
@media(max-width:640px){
  .brk{display:grid;grid-template-columns:auto 1fr;grid-template-areas:"ic ttl" "tim add";column-gap:12px;row-gap:10px;align-items:center}
  .brk__ic{grid-area:ic}
  .brk__t{grid-area:ttl;min-width:0}
  .brk__time{grid-area:tim;white-space:nowrap}
  .brk .agadd{grid-area:add;justify-self:end}
}

/* --- v3.1: headshot thumbs (face-safe crop, cohesive bg) --- */
.ses__thumb{aspect-ratio:4/5;background:linear-gradient(180deg,#1a1e40,#12142f)}
.ses__thumb img{object-position:50% 20%}
.ses__ph{aspect-ratio:4/5}
@media(max-width:640px){.ses{grid-template-columns:60px 1fr}.ses__thumb,.ses__ph{width:60px}}

/* --- v3.2: break-row photo thumb, conference-photo session thumbs --- */
.agadd{white-space:nowrap}
.brk{align-items:center}
.brk__thumb{width:52px;height:52px;border-radius:10px;overflow:hidden;flex:none;border:1px solid var(--line);background:var(--bg2)}
.brk__thumb img{width:100%;height:100%;object-fit:cover;display:block}
.ses__thumb--conf{aspect-ratio:4/5;background:var(--bg2)}
.ses__thumb--conf img{object-position:50% 42%}
@media(max-width:640px){.brk__thumb{width:44px;height:44px}}

/* ============================================================
   SPONSOR HERO v4 — reference-style: inline form + photo mosaic
   ============================================================ */
.shero__mosaic{position:relative;display:grid;grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(3,minmax(0,1fr));
  gap:10px;aspect-ratio:1/1;grid-template-areas:"a a b" "a a c" "d e c"}
.shero__mosaic img{width:100%;height:100%;object-fit:cover;border-radius:14px;border:1px solid rgba(255,255,255,.1);box-shadow:0 20px 50px -30px rgba(0,0,0,.7)}
.shero__mosaic .m-a{grid-area:a}.shero__mosaic .m-b{grid-area:b}.shero__mosaic .m-c{grid-area:c}
.shero__mosaic .m-d{grid-area:d}.shero__mosaic .m-e{grid-area:e}
.shero__mosaic .shero__tag{top:-14px;left:14px}
.shero__mosaic .shero__badge{bottom:-14px;right:-8px}
@media(max-width:900px){.shero__mosaic{max-width:480px;margin-inline:auto;width:100%}}

.sform{margin-top:26px;max-width:540px;background:rgba(12,15,36,.62);border:1px solid var(--line);border-radius:18px;padding:22px 22px 20px;backdrop-filter:blur(8px)}
.sform .form-grid{gap:14px}
.sform .btn{margin-top:16px;width:100%}
.sform__fine{margin-top:11px;color:#6d739a;font-size:.76rem;text-align:center}
.sform__done{display:none;margin-top:26px;max-width:540px;align-items:center;gap:16px;
  background:rgba(41,171,226,.1);border:1px solid rgba(41,171,226,.42);border-radius:16px;padding:22px}
.sform__done.show{display:flex}
.sform__done .chk{flex:none;width:52px;height:52px;border-radius:50%;display:grid;place-items:center;background:rgba(41,171,226,.15);border:2px solid var(--cyan)}
.sform__done .chk svg{width:26px;height:26px;fill:none;stroke:var(--cyan);stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round}
.sform__done b{display:block;font-family:var(--disp);font-weight:800;font-size:1.05rem}
.sform__done span{color:var(--mute);font-size:.9rem}

/* ============================================================
   PALETTE VARIATION — introduce brand burgundy + warm sections
   ============================================================ */
.eyebrow--warm{color:var(--burgundy-hi)!important}
.dot--warm{color:var(--burgundy-hi)}
.isec--warm{background:radial-gradient(120% 90% at 15% 0%,rgba(129,21,23,.16),transparent 55%),linear-gradient(180deg,#140a18,#0b0a1e)}
.opt__tag--warm{color:#eb9b9a;border-color:rgba(168,48,47,.45);background:rgba(168,48,47,.15)}
.rolepills span:nth-child(3n) b{color:var(--burgundy-hi)}
.rolepills span:nth-child(3n):hover{border-color:var(--burgundy-hi)}
/* warm eyebrow chip variant for hero pills */
.shero__eyebrow--warm,.chero__eyebrow--warm{color:#eb9b9a;border-color:rgba(168,48,47,.4);background:rgba(168,48,47,.1)}
.shero__eyebrow--warm .pd,.chero__eyebrow--warm .pd{background:var(--burgundy-hi);box-shadow:0 0 0 4px rgba(168,48,47,.22)}

/* warm pull-quote variant */
.pq--warm{background:linear-gradient(135deg,#2a1020,#1a0e1e)}
.pq--warm .pq__mark{color:rgba(168,48,47,.4)}
.pq--warm mark{background:linear-gradient(transparent 58%,rgba(168,48,47,.42) 58%)}
.pq--warm .ava{background:linear-gradient(135deg,#a8302f,#811517)!important;color:#fff!important}
.pq--warm .pq__by span{color:#eb9b9a}

/* --- v4 fix: compact hero headline so the form sits in-view --- */
.shero h1{font-size:clamp(1.65rem,4vw,3.3rem);line-height:1.02}
.shero__sub{margin-top:16px;font-size:clamp(1rem,1.4vw,1.12rem)}

/* ============================================================
   SPONSOR v5 — reference editorial: left-aligned huge headings,
   boxed insight stats, minimal hero form
   ============================================================ */
.ihead--brand{max-width:none;text-align:left;margin-inline:0;margin-bottom:clamp(34px,4.5vw,56px)}
.ihead--brand .eyebrow{display:block;margin-bottom:16px}
.ihead--brand h2{text-transform:uppercase;font-size:clamp(2.3rem,5.4vw,4.4rem);line-height:.96;letter-spacing:-.025em;max-width:20ch}
.ihead--brand .serif{font-family:var(--body);font-style:normal;font-size:1.05rem;line-height:1.55;color:var(--mute);margin-top:18px;max-width:58ch}

/* boxed insight stats (reference INSIGHTS grid) */
#insights .stats__row{gap:12px;justify-content:flex-start}
#insights .stat{flex:1 1 0;min-width:132px;border:1px solid var(--line);background:linear-gradient(180deg,var(--panel2),var(--panel));border-radius:16px;padding:26px 14px}
#insights .rolepills{justify-content:flex-start;margin-top:20px}

/* minimal hero form (no heavy card) */
.sform{background:transparent;border:0;padding:0;backdrop-filter:none;max-width:560px}
.sform__done{max-width:560px}

/* option cards a touch taller to match reference presence */
.opt{min-height:210px}
.opt--wide{min-height:186px}
@media(max-width:900px){.ihead--brand h2{font-size:clamp(2.1rem,7vw,3.2rem)}}

/* ============================================================
   SPONSOR v6 — reference full-bleed width, cleaner form, uniform gallery,
   consistent accents (remove random maroon words)
   ============================================================ */
/* full-bleed like reference (scoped to sponsor page via body.wide) */
body.wide .wrap,body.wide .shero__in{max-width:2360px;padding-inline:clamp(20px,4.5vw,120px)}
body.wide .nav__in,body.wide .sticky__in{max-width:2360px;padding-inline:clamp(20px,4.5vw,120px)}
body.wide .trusted__logos{max-width:1500px}
body.wide .opt{min-height:250px}
body.wide .foncta .wrap{max-width:2360px}

/* consistent role pills — kill the random burgundy words */
.rolepills span:nth-child(3n) b{color:var(--cyan)}
.rolepills span:nth-child(3n):hover{border-color:var(--cyan)}
/* option tags all cyan (word-level accents consistent; warmth stays at section level) */
.opt__tag--warm{color:var(--cyan);border-color:rgba(41,171,226,.35);background:rgba(41,171,226,.08)}

/* cleaner hero form — reference underline-style inputs */
.sform{max-width:680px}
.sform .form-grid{gap:24px 30px}
.sform .field label{font-size:.72rem;letter-spacing:.09em;color:#aeb2cc}
.sform .field input,.sform .field select{background:transparent;border:0;border-bottom:1.6px solid rgba(255,255,255,.22);border-radius:0;padding:12px 2px 11px;font-size:16px}
.sform .field input::placeholder{color:#7b81a6}
.sform .field input:focus,.sform .field select:focus{outline:0;border-bottom-color:var(--cyan);box-shadow:none;background:transparent}
.sform .field select{background-position:right 2px center}
.sform .field select option{background:#12142f}
.sform .btn{margin-top:26px}

/* uniform sponsor gallery grid (fixes inconsistent boxes) */
.spongrid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.spongrid .sgcard{margin:0;aspect-ratio:4/3;border-radius:16px;overflow:hidden;position:relative;border:1px solid var(--line);transition:transform .3s var(--ease),border-color .3s}
.spongrid .sgcard img{width:100%;height:100%;object-fit:cover;object-position:50% 42%}
.spongrid .sgcard:hover{transform:translateY(-4px);border-color:var(--cyan)}
@media(max-width:900px){.spongrid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.spongrid{grid-template-columns:1fr}}

/* ============================================================
   SPONSOR v7 — hero form reworked to match reference: tall FILLED
   rounded inputs, soft labels, generous spacing, contained width
   (overrides the v6 underline rules)
   ============================================================ */
.sform{max-width:600px}
.sform .form-grid{gap:20px 22px}
.sform .field{gap:8px}
.sform .field label{text-transform:none;font-weight:600;font-size:.85rem;letter-spacing:0;color:#c8ccdf}
.sform .field label .req{color:var(--cyan);font-weight:700}
.sform .field input,
.sform .field select{
  background:rgba(255,255,255,.055);
  border:1px solid rgba(255,255,255,.16);
  border-radius:11px;
  padding:16px 18px;
  font-size:16px;
  color:#fff;
  transition:border-color .2s,background .2s,box-shadow .2s;
}
.sform .field select{padding-right:42px;background-position:right 16px center}
.sform .field input::placeholder{color:#7b81a6}
.sform .field input:focus,
.sform .field select:focus{
  outline:0;
  border-color:var(--cyan);
  background:rgba(41,171,226,.07);
  box-shadow:0 0 0 3px rgba(41,171,226,.16);
}
.sform .btn{margin-top:26px;padding:19px 40px;border-radius:12px;font-size:16px}
.sform__fine{margin-top:14px}
@media(max-width:480px){.sform .form-grid{grid-template-columns:1fr}}

/* ============================================================
   SPONSOR v8 — elegant hero: single-column form, top-aligned
   header/image, plainer eyebrow, solid accent (less "vibe-code")
   ============================================================ */
.shero__in{align-items:start}
.shero{padding-top:clamp(150px,20vh,200px)}
/* plainer, editorial eyebrow (no pill / no pulse) */
.shero__eyebrow{border:0;background:none;padding:0;letter-spacing:.22em;font-size:.74rem;color:#7fd3f2}
.shero__eyebrow .pd{display:none}
/* solid accent word instead of gradient */
.shero__grad{background:none;-webkit-background-clip:initial;background-clip:initial;-webkit-text-fill-color:var(--cyan);color:var(--cyan)}
.shero h1{margin-top:20px;line-height:1.0}
.shero__sub{margin-top:20px;font-size:clamp(1.02rem,1.35vw,1.2rem);max-width:46ch;color:#cfd4ee}
/* single-column form — one field per row */
.sform{max-width:560px;margin-top:30px}
.sform .form-grid{grid-template-columns:1fr;gap:18px}

/* v8.1: larger option-card titles (they read small on the big full-width cards) */
.opt__txt h3{font-size:clamp(1.7rem,2.3vw,2.6rem);line-height:1.05;letter-spacing:-.02em}
.opt__txt p{font-size:1rem;margin-top:12px;max-width:46ch}
.opt__tag{font-size:.66rem;margin-bottom:16px}
@media(max-width:520px){.opt__txt h3{font-size:1.5rem}}

/* ============================================================
   SPONSOR v9 — MATCH reference FORM EXACTLY: fully-rounded PILL inputs,
   soft fill / no border, "(required)" italic gray labels, wide
   fields, small pill submit (not full-width)
   ============================================================ */
.sform{max-width:820px;margin-top:34px}
.sform .form-grid{grid-template-columns:1fr;gap:22px}
.sform .field{gap:10px}
.sform .field label{text-transform:none;font-weight:600;font-size:1rem;letter-spacing:0;color:#fff;margin:0}
.sform .field label .req{font-weight:400;font-style:italic;font-size:.9em;color:#8b90ad}
.sform .field input,
.sform .field select{
  background:rgba(255,255,255,.06);
  border:1px solid transparent;
  border-radius:999px;
  padding:17px 26px;
  font-size:16px;
  color:#fff;
  transition:background .2s,box-shadow .2s,border-color .2s;
}
.sform .field select{padding-right:46px;background-position:right 22px center}
.sform .field input::placeholder{color:#6d739a}
.sform .field input:focus,
.sform .field select:focus{
  outline:0;
  border-color:rgba(41,171,226,.55);
  background:rgba(255,255,255,.09);
  box-shadow:0 0 0 3px rgba(41,171,226,.14);
}
/* small pill submit, left-aligned — NOT full width */
.sform .btn{width:auto;align-self:flex-start;margin-top:30px;border-radius:999px;padding:16px 36px;font-size:16px}
.sform__fine{margin-top:16px;text-align:left}
@media(max-width:520px){.sform .btn{width:100%;justify-content:center}}

/* ============================================================
   SPONSOR v10 — Name row (First|Last side by side at top),
   drop the vibe-codey grid texture, add multi-accent color
   ============================================================ */
:root{--gold:#e6a94b;--violet:#a06eff}
/* Name = two fields in one row, up top */
.sform__glabel{display:block;font-weight:600;font-size:1rem;color:#fff}
.name-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}
@media(max-width:480px){.name-row{grid-template-columns:1fr}}

/* kill the grid background texture in the hero */
.shero__bg .sgrid{display:none!important}

/* ---- accent color variety (beyond navy + cyan) ---- */
/* insight stat numbers cycle through the accent palette */
#insights .stat:nth-child(2) b{color:var(--gold)}
#insights .stat:nth-child(4) b{color:var(--burgundy-hi)}
#insights .stat:nth-child(5) b{color:var(--violet)}
/* benefit icons cycle accents */
.bcard:nth-child(2) .bcard__ic svg{stroke:var(--gold)}
.bcard:nth-child(3) .bcard__ic svg{stroke:var(--burgundy-hi)}
.bcard:nth-child(4) .bcard__ic svg{stroke:var(--violet)}
.bcard:nth-child(6) .bcard__ic svg{stroke:var(--gold)}
/* warm gold eyebrow on The Payoff for section variety */
#benefits .eyebrow{color:var(--gold)}
/* a warmer second glow in the hero (gold) alongside cyan + burgundy */
.shero__bg .b1{background:radial-gradient(circle,rgba(41,171,226,.55),transparent 68%)}
.shero__bg::after{content:"";position:absolute;width:34vw;height:34vw;max-width:440px;max-height:440px;top:34%;right:24%;
  border-radius:50%;filter:blur(80px);opacity:.4;pointer-events:none;
  background:radial-gradient(circle,rgba(230,169,75,.5),transparent 66%)}

/* v10.1: kill the white flash when opening the native select dropdown
   (the OS renders the popup in light mode until color-scheme is set) */
.field select,.sform select,select{color-scheme:dark}
.field select option{background:#12142f;color:#fff}

/* ============================================================
   Custom dropdown (.cselect) — replaces the ugly/flashing native
   <select>; matches the pill form, fully themed, no white flash
   ============================================================ */
.cselect{position:relative}
.cselect__btn{width:100%;display:flex;align-items:center;justify-content:space-between;gap:12px;
  background:rgba(255,255,255,.06);border:1px solid transparent;border-radius:999px;padding:17px 22px 17px 26px;
  color:#fff;font-family:inherit;font-size:16px;text-align:left;cursor:pointer;transition:background .2s,border-color .2s,box-shadow .2s}
.cselect__btn:hover{background:rgba(255,255,255,.09)}
.cselect.open .cselect__btn,.cselect__btn:focus-visible{outline:0;border-color:rgba(41,171,226,.55);box-shadow:0 0 0 3px rgba(41,171,226,.14)}
.cselect__val{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.cselect__chev{width:18px;height:18px;flex:none;fill:none;stroke:var(--cyan);stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round;transition:transform .25s var(--ease)}
.cselect.open .cselect__chev{transform:rotate(180deg)}
.cselect__menu{position:absolute;top:calc(100% + 8px);left:0;right:0;z-index:30;list-style:none;margin:0;padding:6px;
  background:#151735;border:1px solid var(--line);border-radius:18px;box-shadow:0 26px 54px -22px rgba(0,0,0,.75);
  opacity:0;visibility:hidden;transform:translateY(-6px);transition:opacity .18s,transform .18s,visibility .18s;
  max-height:290px;overflow:auto}
.cselect.open .cselect__menu{opacity:1;visibility:visible;transform:none}
.cselect__menu li{padding:13px 16px;border-radius:12px;cursor:pointer;color:#dfe2f2;font-size:15px;line-height:1.2;
  display:flex;align-items:center;justify-content:space-between;gap:10px;transition:background .15s,color .15s}
.cselect__menu li:hover{background:rgba(41,171,226,.14);color:#fff}
.cselect__menu li.sel{background:rgba(41,171,226,.1);color:var(--cyan);font-weight:600}
.cselect__menu li.sel::after{content:"";width:16px;height:16px;flex:none;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2329abe2' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6L9 17l-5-5'/%3E%3C/svg%3E") center/16px no-repeat}

/* ============================================================
   v11 — PERF + dropdown clipping fix
   ============================================================ */
/* Lag source: two big blur(70px) blobs animating transform forever.
   Make them static (keeps the color glow, drops the per-frame cost). */
.shero__bg .blob{animation:none!important;will-change:auto}
.shero__bg .b1,.shero__bg .b2{filter:blur(58px)}
@keyframes blobDrift1{to{transform:none}}
@keyframes blobDrift2{to{transform:none}}

/* Dropdown was clipped by .shero overflow:hidden + the next section painting
   on top. Let the hero overflow and sit above following sections so the menu
   shows fully. (Blobs are still clipped by .shero__bg's own overflow:hidden.) */
.shero{overflow:visible;z-index:5}

/* v11.1 — stop needless continuous animations (lag + icon flicker) */
/* (benefit icon draw animation kept ON — it's a nice touch; the blobs were the real lag) */

/* ============================================================
   v12 — LIGHT sections to break up the dark-on-dark scroll
   ============================================================ */
/* CYAN section (brand color) to break up the navy scroll — dark navy cards on cyan */
.isec--cyan{background:linear-gradient(165deg,#33b4e8 0%,#1f93c9 100%);color:#00121e;position:relative}
.isec--cyan .ihead--brand h2{color:#052033}
.isec--cyan .ihead--brand .serif,.isec--cyan .serif{color:rgba(4,26,40,.74)}
.isec--cyan .eyebrow{color:#052033}
.isec--cyan .dot{color:#052033}
/* dark navy cards on cyan */
.isec--cyan .bcard{background:#0f1330;border-color:rgba(0,18,30,.22);box-shadow:0 24px 48px -22px rgba(0,20,34,.5)}
.isec--cyan .bcard:hover{border-color:#fff;box-shadow:0 32px 62px -24px rgba(0,20,34,.62)}
.isec--cyan .bcard h3{color:#fff}
.isec--cyan .bcard p{color:#c1c7e0}
/* benefits is now a light section — burgundy eyebrow reads better than gold on cream */
#benefits .eyebrow{color:#a8302f}
/* benefits eyebrow: dark navy on the cyan section */
#benefits .eyebrow{color:#052033}

/* v13.1 — "Who fills the room" numbers: drop the multi-color, use one clean
   white→steel gradient (overrides the earlier gold/burgundy/violet cycle) */
#insights .stat b{
  background:linear-gradient(180deg,#ffffff 0%,#bcd6f0 100%);
  -webkit-background-clip:text;background-clip:text;
  -webkit-text-fill-color:transparent;color:#fff;
}

/* ============================================================
   SCHEDULE HERO v2 — unique "agenda preview" (not a basic photo hero)
   ============================================================ */
.chero{position:relative;overflow:hidden;display:block;min-height:0;
  background:linear-gradient(180deg,#0a0c22,var(--bg));
  padding:clamp(150px,20vh,200px) 0 clamp(56px,7vw,92px)}
.chero__glow{position:absolute;inset:0;z-index:0;pointer-events:none;overflow:hidden}
.chero__glow .cg{position:absolute;border-radius:50%;filter:blur(66px);opacity:.52}
.chero__glow .cg1{width:46vw;height:46vw;max-width:640px;max-height:640px;top:-18%;left:-8%;background:radial-gradient(circle,rgba(41,171,226,.5),transparent 66%)}
.chero__glow .cg2{width:40vw;height:40vw;max-width:560px;max-height:560px;bottom:-26%;right:-6%;background:radial-gradient(circle,rgba(129,21,23,.45),transparent 64%)}
.chero__in{position:relative;z-index:2;display:grid;grid-template-columns:minmax(0,1.02fr) minmax(0,.98fr);gap:clamp(32px,5vw,72px);align-items:center;text-align:left}
.chero__eyebrow{display:inline-block;font-family:var(--disp);font-weight:800;text-transform:uppercase;letter-spacing:.22em;font-size:.74rem;color:#7fd3f2}
.chero h1{font-family:var(--disp);font-weight:900;font-size:clamp(2.4rem,5.4vw,4.8rem);line-height:.98;letter-spacing:-.025em;text-transform:uppercase;margin-top:20px;max-width:none}
.chero h1 .g{color:var(--cyan)}
.chero__sub{margin-top:22px;max-width:48ch;color:#cfd4ee;font-size:clamp(1.02rem,1.35vw,1.2rem);line-height:1.6;font-family:var(--body);font-style:normal}
.chero__cta{display:flex;gap:14px;flex-wrap:wrap;margin-top:30px}
.chero__meta{display:flex;gap:clamp(20px,3vw,38px);flex-wrap:wrap;margin-top:36px}
.chero__meta span{font-size:.86rem;color:var(--mute);display:inline-flex;align-items:baseline;gap:8px}
.chero__meta b{font-family:var(--anton);font-size:1.7rem;color:#fff;line-height:1}
/* agenda preview card */
.cprev{position:relative;background:linear-gradient(180deg,rgba(21,24,55,.9),rgba(13,16,38,.9));border:1px solid var(--line);border-radius:22px;
  padding:22px 24px;box-shadow:0 44px 100px -44px rgba(0,0,0,.85);backdrop-filter:blur(8px)}
.cprev__head{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px;padding-bottom:14px;border-bottom:1px solid var(--line)}
.cprev__day{font-family:var(--disp);font-weight:800;font-size:1rem;color:#fff}
.cprev__live{display:inline-flex;align-items:center;gap:7px;font-family:var(--disp);font-weight:800;font-size:.66rem;letter-spacing:.08em;text-transform:uppercase;color:var(--cyan)}
.cprev__live i{width:7px;height:7px;border-radius:50%;background:var(--cyan);box-shadow:0 0 0 4px rgba(41,171,226,.2)}
.cprev__list{list-style:none;position:relative}
.cprev__list::before{content:"";position:absolute;left:73px;top:26px;bottom:26px;width:2px;background:var(--line)}
.cprev__list li{display:grid;grid-template-columns:52px 20px 1fr auto;gap:13px;align-items:center;padding:13px 0;position:relative;z-index:1}
.cprev__list li+li{border-top:1px solid rgba(255,255,255,.05)}
.cprev__t{font-family:var(--disp);font-weight:800;font-size:.82rem;color:var(--cyan);text-align:right;line-height:1}
.cprev__t small{display:block;font-size:.58rem;color:var(--mute);margin-top:3px;letter-spacing:.04em}
.cprev__node{width:13px;height:13px;border-radius:50%;border:2.5px solid var(--cyan);background:#151837;justify-self:center}
.cprev__node.ai{border-color:#a06eff}.cprev__node.paid{border-color:var(--cyan-hi)}.cprev__node.all{border-color:#586089}
.cprev__b{min-width:0}
.cprev__b b{display:block;font-family:var(--disp);font-weight:700;font-size:.95rem;line-height:1.16;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cprev__b em{font-style:normal;color:var(--mute);font-size:.8rem}
.cprev__list li img{width:38px;height:38px;border-radius:50%;object-fit:cover;object-position:50% 18%;border:2px solid #151837;flex:none}
.cprev__foot{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:6px;padding-top:15px;border-top:1px solid var(--line);color:var(--cyan);font-weight:700;font-size:.9rem;font-family:var(--disp)}
.cprev__foot span{transition:transform .25s var(--ease)}
.cprev__foot:hover span{transform:translateY(3px)}
@media(max-width:900px){.chero__in{grid-template-columns:1fr;gap:40px}.cprev{max-width:540px}}

/* fuller schedule width (page goes wide; agenda kept readable but not tiny) */
body.wide .sched__panel,body.wide .myschedbar,body.wide .tracklegend,body.wide #schedTabs,body.wide .sched__note{max-width:1180px}
/* plain editorial eyebrow on the schedule hero (drop the old pill) */
.chero__eyebrow{border:0;background:none;padding:0}

/* ============================================================
   SCHEDULE HERO v3 — reference-style: big title + full-width experience rail
   (overrides the v2 preview-card hero)
   ============================================================ */
.chero{position:relative;overflow:hidden;background:var(--bg);padding:clamp(140px,18vh,190px) 0 clamp(50px,6vw,80px)}
.chero__glow{display:none}
.chero__head{margin-bottom:clamp(28px,4vw,44px)}
.chero__title{font-family:var(--disp);font-weight:900;font-size:clamp(2.6rem,6vw,5.4rem);line-height:.96;letter-spacing:-.03em;text-transform:uppercase;margin-top:16px;max-width:22ch}
.chero__title .g{color:var(--cyan)}
/* full-width horizontal experience rail */
.chero__rail{display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;
  padding:6px clamp(20px,4.5vw,120px) 10px}
.chero__rail::-webkit-scrollbar{display:none}
.xcard{flex:0 0 clamp(300px,25vw,400px);scroll-snap-align:start;position:relative;aspect-ratio:1/1.16;border-radius:18px;overflow:hidden;
  border:1px solid var(--line);display:flex;align-items:flex-end;transition:transform .35s var(--ease),border-color .35s}
.xcard img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:brightness(.6);transition:transform .5s var(--ease)}
.xcard::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(8,10,28,.12),transparent 30%,rgba(8,10,28,.94))}
.xcard:hover{transform:translateY(-6px);border-color:var(--cyan)}
.xcard:hover img{transform:scale(1.06)}
.xcard__body{position:relative;z-index:2;padding:24px}
.xcard__tag{display:inline-block;font-family:var(--disp);font-weight:800;font-size:.64rem;letter-spacing:.08em;text-transform:uppercase;
  color:#00121e;background:var(--cyan);padding:5px 11px;border-radius:999px;margin-bottom:14px}
.xcard__title{font-family:var(--serif);font-style:italic;font-size:clamp(1.5rem,2vw,1.9rem);line-height:1.05;color:#fff}
.xcard__desc{color:#cdd2e0;font-size:.92rem;margin-top:9px;line-height:1.45}
.xcard__loc{display:block;margin-top:12px;color:var(--cyan);font-size:.76rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em}

/* ---- agenda goes FULL page width; tabs/toolbar/legend stay centered ---- */
body.wide .sched__panel,body.wide #schedTabs,body.wide .myschedbar,body.wide .tracklegend,body.wide .sched__note{max-width:none}
.sched__tabs,.myschedbar,.tracklegend{justify-content:center}
/* session description fills the wider card */
.ses{grid-template-columns:96px 1fr auto}
.ses__thumb,.ses__ph{width:96px}
.ses__desc{color:var(--mute);font-size:.9rem;line-height:1.5;margin-top:7px;max-width:80ch}
@media(max-width:640px){.ses{grid-template-columns:64px 1fr}.ses__thumb,.ses__ph{width:64px}}

/* v15.1 — schedule fixes: clear (not faded) hero title + larger break rows */
.chero__title{color:#fff}
.chero .chero__title{color:#fff}          /* beat .chero h1 specificity, ensure crisp white */
/* bigger break rows so light days (Day 1) don't look tiny next to session cards */
.brk{padding:20px 22px;gap:16px;border-radius:15px}
.brk__thumb{width:66px;height:66px;border-radius:12px}
.brk__ic{width:48px;height:48px}
.brk__t{font-size:1.15rem}
.brk__t small{font-size:.88rem;margin-top:4px}

/* v15.2 — the old photo-hero .chero::after tint overlay was darkening the new
   title/rail (that's the "faded" look). Kill it + lift content above any overlay. */
.chero::after{content:none!important;display:none!important}
.chero__head,.chero__rail{position:relative;z-index:2}

/* ============================================================
   SPEAKERS PAGE
   ============================================================ */
.spkhero{position:relative;overflow:hidden;background:linear-gradient(180deg,#0a0c22,var(--bg));padding:clamp(150px,20vh,200px) 0 clamp(46px,6vw,80px)}
.spkhero__glow{position:absolute;inset:0;z-index:0;pointer-events:none;overflow:hidden}
.spkhero__glow span{position:absolute;border-radius:50%;filter:blur(66px);opacity:.5}
.spkhero__glow .g1{width:44vw;height:44vw;max-width:600px;max-height:600px;top:-20%;right:-6%;background:radial-gradient(circle,rgba(41,171,226,.5),transparent 66%)}
.spkhero__glow .g2{width:38vw;height:38vw;max-width:520px;max-height:520px;bottom:-26%;left:-8%;background:radial-gradient(circle,rgba(129,21,23,.42),transparent 64%)}
.spkhero__in{position:relative;z-index:2;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:clamp(28px,4vw,64px);align-items:end}
.spkhero__eyebrow{display:inline-block;font-family:var(--disp);font-weight:800;text-transform:uppercase;letter-spacing:.22em;font-size:.74rem;color:#7fd3f2}
.spkhero h1{font-family:var(--disp);font-weight:900;font-size:clamp(2.5rem,5.6vw,5rem);line-height:.97;letter-spacing:-.03em;text-transform:uppercase;color:#fff;margin-top:18px;max-width:16ch}
.spkhero h1 .g{color:var(--cyan)}
.spkhero__sub{color:#cfd4ee;font-size:clamp(1.02rem,1.4vw,1.22rem);line-height:1.6;max-width:52ch}
.spkhero__sub b{color:#fff}
.spkhero__chips{display:flex;gap:clamp(20px,3vw,40px);flex-wrap:wrap;margin-top:26px}
.spkhero__chips span{display:inline-flex;align-items:baseline;gap:8px;font-size:.86rem;color:var(--mute)}
.spkhero__chips b{font-family:var(--anton);font-size:1.7rem;color:#fff;line-height:1}
@media(max-width:860px){.spkhero__in{grid-template-columns:1fr;gap:22px;align-items:start}}

/* grid */
.spksec{padding:clamp(48px,6vw,86px) 0 clamp(64px,8vw,110px)}
.spkgrid{display:grid;grid-template-columns:repeat(5,1fr);gap:20px}
@media(max-width:1500px){.spkgrid{grid-template-columns:repeat(4,1fr)}}
@media(max-width:1040px){.spkgrid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:700px){.spkgrid{grid-template-columns:repeat(2,1fr);gap:14px}}
@media(max-width:420px){.spkgrid{grid-template-columns:1fr}}
.spkcard{position:relative;aspect-ratio:4/5;border-radius:18px;overflow:hidden;border:1px solid var(--line);cursor:pointer;background:var(--panel);
  transition:transform .35s var(--ease),border-color .35s,box-shadow .35s}
.spkcard img{width:100%;height:100%;object-fit:cover;object-position:50% 10%;transition:transform .5s var(--ease)}
.spkcard::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,rgba(8,10,28,.04),transparent 32%,rgba(8,10,28,.93))}
.spkcard:hover{transform:translateY(-6px);border-color:var(--cyan);box-shadow:0 30px 60px -30px rgba(41,171,226,.5)}
.spkcard:hover img{transform:scale(1.05)}
.spkcard__tag{position:absolute;top:13px;left:13px;z-index:2;font-family:var(--disp);font-weight:800;font-size:.6rem;letter-spacing:.06em;text-transform:uppercase;
  padding:5px 10px;border-radius:999px;color:var(--cyan);background:rgba(41,171,226,.14);border:1px solid rgba(41,171,226,.4);backdrop-filter:blur(4px)}
.spkcard__tag.t-ai{color:#c9a6ff;background:rgba(160,110,255,.16);border-color:rgba(160,110,255,.42)}
.spkcard__tag.t-paid{color:#a6e4ff;background:rgba(127,211,242,.14);border-color:rgba(127,211,242,.4)}
.spkcard__tag.t-social{color:#ff9aa0;background:rgba(168,48,47,.18);border-color:rgba(168,48,47,.46)}
.spkcard__tag.t-host{color:#f0c98a;background:rgba(230,169,75,.16);border-color:rgba(230,169,75,.44)}
.spkcard__tag.t-all{color:#aeb4d6;background:rgba(88,96,137,.2);border-color:rgba(88,96,137,.5)}
.spkcard__info{position:absolute;left:0;right:0;bottom:0;z-index:2;padding:18px 18px 16px}
.spkcard__name{font-family:var(--disp);font-weight:800;font-size:1.22rem;line-height:1.08;color:#fff}
.spkcard__role{color:var(--cyan);font-size:.82rem;font-weight:600;margin-top:4px}
.spkcard__more{display:inline-flex;align-items:center;gap:6px;margin-top:9px;font-family:var(--disp);font-weight:700;font-size:.74rem;letter-spacing:.03em;text-transform:uppercase;color:#fff;opacity:0;transform:translateY(4px);transition:opacity .3s,transform .3s}
.spkcard:hover .spkcard__more{opacity:1;transform:none}
/* "more soon" card */
.spkcard--soon{display:flex;align-items:center;justify-content:center;text-align:center;cursor:default;
  background:radial-gradient(120% 90% at 50% 30%,rgba(41,171,226,.1),transparent 62%),linear-gradient(165deg,var(--panel),var(--bg2));border:1.5px dashed rgba(41,171,226,.5)}
.spkcard--soon:hover{transform:none;box-shadow:none;border-color:rgba(41,171,226,.5)}
.spkcard--soon div{display:flex;flex-direction:column;align-items:center;gap:12px;padding:22px}
.spkcard--soon .ic{width:58px;height:58px;border-radius:50%;display:grid;place-items:center;font-size:30px;color:var(--cyan);border:1.5px solid rgba(41,171,226,.55);background:rgba(41,171,226,.08)}
.spkcard--soon b{font-family:var(--disp);font-weight:800;text-transform:uppercase;font-size:1.05rem;color:#fff}
.spkcard--soon span{font-family:var(--disp);font-weight:800;text-transform:uppercase;color:var(--cyan);font-size:1.05rem}
.spksec__note{text-align:center;color:var(--mute);font-size:.9rem;margin-top:34px;max-width:60ch;margin-inline:auto}

/* bio modal */
#speakerModal .modal__card{width:min(860px,100%)}
.spkm{display:grid;grid-template-columns:240px 1fr;gap:30px;align-items:start}
.spkm__photo{aspect-ratio:4/5;border-radius:16px;overflow:hidden;border:1px solid var(--line);background:var(--bg2)}
.spkm__photo img{width:100%;height:100%;object-fit:cover;object-position:50% 10%}
.spkm__tag{display:inline-block;font-family:var(--disp);font-weight:800;font-size:.64rem;letter-spacing:.06em;text-transform:uppercase;color:var(--cyan);background:rgba(41,171,226,.12);border:1px solid rgba(41,171,226,.4);padding:5px 11px;border-radius:999px;margin-bottom:14px}
.spkm__name{font-family:var(--disp);font-weight:900;font-size:clamp(1.7rem,3vw,2.3rem);line-height:1.02}
.spkm__role{color:var(--cyan);font-weight:600;font-size:1rem;margin-top:6px}
.spkm__bio{color:#cfd4ee;font-size:1rem;line-height:1.65;margin-top:20px}
.spkm__bio p{margin-bottom:14px}
@media(max-width:640px){.spkm{grid-template-columns:1fr}.spkm__photo{max-width:220px}}

/* ============================================================
   TICKET PRICING (homepage #tickets)
   ============================================================ */
.pricing{padding:clamp(70px,10vw,130px) 0;background:var(--bg2)}
.pricing__head{text-align:center;max-width:780px;margin:0 auto clamp(40px,5vw,58px)}
.pricing__head h2{font-family:var(--disp);font-weight:900;font-size:clamp(2rem,4.4vw,3.6rem);line-height:1.02;letter-spacing:-.02em}
.pricing__head .serif{margin-top:14px}
.tktgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;max-width:1180px;margin:0 auto;align-items:stretch}
.tkt{display:flex;flex-direction:column;position:relative;border-radius:22px;border:1px solid var(--line);
  background:linear-gradient(180deg,var(--panel2),var(--panel));padding:36px 30px 32px;
  transition:transform .35s var(--ease),border-color .35s,box-shadow .35s}
.tkt:hover{transform:translateY(-7px);border-color:var(--cyan);box-shadow:0 34px 74px -34px rgba(41,171,226,.5)}
.tkt--feat{border-color:var(--cyan);transform:scale(1.035);background:linear-gradient(180deg,rgba(41,171,226,.14),var(--panel) 46%);
  box-shadow:0 40px 90px -34px rgba(41,171,226,.55),0 0 0 1px rgba(41,171,226,.4)}
.tkt--feat:hover{transform:scale(1.035) translateY(-7px)}
.tkt__badge{position:absolute;top:-12px;left:50%;transform:translateX(-50%);background:var(--cyan);color:#00121e;
  font-family:var(--disp);font-weight:800;font-size:10px;letter-spacing:.1em;text-transform:uppercase;padding:6px 15px;border-radius:999px;white-space:nowrap}
.tkt__name{font-family:var(--disp);font-weight:900;font-size:1.5rem;text-transform:uppercase;letter-spacing:-.01em;line-height:1}
.tkt__access{color:var(--cyan);font-size:.82rem;font-weight:600;margin-top:8px}
.tkt__price{font-family:var(--anton);font-size:clamp(2.8rem,4.4vw,3.7rem);line-height:1;color:#fff;margin:18px 0 2px}
.tkt__price span{display:block;font-family:var(--disp);font-weight:600;font-size:.72rem;letter-spacing:.06em;text-transform:uppercase;color:var(--mute);margin-top:8px}
.tkt__list{list-style:none;display:flex;flex-direction:column;gap:13px;margin:22px 0 26px}
.tkt__list li{display:flex;gap:11px;align-items:flex-start;font-size:.92rem;color:#e4e7f5;line-height:1.4}
.tkt__list li svg{flex:0 0 auto;width:18px;height:18px;margin-top:1px;stroke:var(--cyan)}
.tkt .btn{margin-top:auto;width:100%}
.pricing__note{text-align:center;color:var(--mute);font-size:.9rem;margin-top:30px}
.pricing__note a{color:var(--cyan);font-weight:600}
@media(max-width:900px){.tktgrid{grid-template-columns:1fr;max-width:440px}.tkt--feat{transform:none}.tkt--feat:hover{transform:translateY(-7px)}}

/* ============================================================
   SPEAKER CARDS v2 — 3D flip (photo front / bio back), accented
   ============================================================ */
.spkgrid{perspective:none}
.spkcard{position:relative;aspect-ratio:4/5;border:0;background:transparent;overflow:visible;box-shadow:none;cursor:pointer;
  perspective:1300px;transition:none}
.spkcard:hover{transform:none;box-shadow:none;border-color:transparent}
.spkcard__inner{position:relative;width:100%;height:100%;transition:transform .66s cubic-bezier(.2,.75,.2,1);transform-style:preserve-3d;
  border-radius:18px;box-shadow:0 22px 46px -28px rgba(0,0,0,.7)}
@media(hover:hover){.spkcard:hover .spkcard__inner{transform:rotateY(180deg)}}
.spkcard:focus-visible{outline:none}
.spkcard:focus-visible .spkcard__inner{transform:rotateY(180deg);box-shadow:0 0 0 3px var(--acc,var(--cyan))}
@media(prefers-reduced-motion:reduce){.spkcard__inner{transition:none}}
.spkcard__face{position:absolute;inset:0;border-radius:18px;overflow:hidden;border:1px solid var(--line);
  -webkit-backface-visibility:hidden;backface-visibility:hidden}
/* front */
.spkcard__front{background:var(--panel)}
.spkcard__front img{width:100%;height:100%;object-fit:cover;object-position:50% 9%}
.spkcard__front::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,rgba(8,10,28,.03),transparent 30%,rgba(8,10,28,.93))}
.spkcard__front::before{content:"";position:absolute;left:-14%;top:-16%;width:74%;height:48%;z-index:1;pointer-events:none;
  background:radial-gradient(circle,var(--accglow,rgba(41,171,226,.28)),transparent 66%)}
.spkcard__front .spkcard__tag{position:absolute;top:13px;left:13px;z-index:2}
.spkcard__flip{position:absolute;bottom:14px;right:13px;z-index:2;display:inline-flex;align-items:center;gap:5px;
  font-family:var(--disp);font-weight:800;font-size:.6rem;letter-spacing:.05em;text-transform:uppercase;color:#fff;
  background:rgba(10,12,30,.5);backdrop-filter:blur(5px);border:1px solid rgba(255,255,255,.16);padding:5px 9px;border-radius:999px}
/* back */
.spkcard__back{transform:rotateY(180deg);display:flex;flex-direction:column;padding:22px 20px 18px;color:#fff;
  background:linear-gradient(158deg,#1a1e48 0%,#10122f 58%,#0b0d24 100%)}
.spkcard__back::before{content:"";position:absolute;inset:0;pointer-events:none;
  background:radial-gradient(92% 60% at 18% 4%,var(--accglow,rgba(41,171,226,.3)),transparent 60%)}
.spkcard__back::after{content:"DMC";position:absolute;right:-4px;bottom:-22px;font-family:var(--anton);font-size:6.2rem;line-height:1;
  color:rgba(255,255,255,.045);pointer-events:none;letter-spacing:.02em}
.spkcard__back > *{position:relative;z-index:1}
.spkcard__back .spkcard__tag{position:static;align-self:flex-start;margin-bottom:13px;backdrop-filter:none}
.spkcard__bname{font-family:var(--disp);font-weight:800;font-size:1.24rem;line-height:1.08}
.spkcard__brole{color:var(--acc,var(--cyan));font-size:.8rem;font-weight:600;margin-top:4px}
.spkcard__bbio{color:#d3d7ee;font-size:.85rem;line-height:1.5;margin-top:13px;flex:1;
  display:-webkit-box;-webkit-line-clamp:6;-webkit-box-orient:vertical;overflow:hidden}
.spkcard__back .spkcard__more{opacity:1;transform:none;color:var(--acc,var(--cyan));margin-top:12px;
  font-family:var(--disp);font-weight:800;font-size:.76rem;letter-spacing:.03em;text-transform:uppercase}

/* v19.1 — front uses the branded speaker trading card (not flat navy) */
.spkcard{aspect-ratio:556/692}
.spkcard__front img{object-fit:cover;object-position:center}
.spkcard__front::after,.spkcard__front::before{content:none}   /* card is self-designed; drop overlays */
.spkcard__front .spkcard__tag,.spkcard__info{display:none}      /* name/role/logo baked into the card */
.spkcard__flip{top:12px;right:12px;bottom:auto;left:auto;background:rgba(10,12,30,.62);border-color:rgba(255,255,255,.22)}
.spkcard__inner{box-shadow:0 24px 50px -26px rgba(0,0,0,.75)}
@media(hover:hover){.spkcard:hover .spkcard__inner{box-shadow:0 34px 66px -26px var(--accglow,rgba(41,171,226,.5))}}

/* v19.2 — back watermark: use the SEOST DMC logo instead of "DMC" text, a touch brighter */
.spkcard__back::after{
  content:"";
  right:16px;bottom:16px;left:auto;
  width:150px;height:64px;
  background:url('assets/logos/logo-dmc-white.png') no-repeat right bottom;
  background-size:contain;
  opacity:.16;
  font-size:0;letter-spacing:normal;color:transparent;
}

/* v19.3 — brighter back-of-card logo watermark */
.spkcard__back::after{opacity:.26}

/* v19.4 — kill the leftover poster-card .spkcard::after gradient (a dark, sharp-cornered
   overlay on the flip container that tinted the fronts + showed as a "glass square" mid-flip) */
.spkcard::after{content:none!important}

/* v19.5 — italicize the role/company line on the card back */
.spkcard__brole{font-style:italic}

/* ============================================================
   v20 — "Pick your pass" tiers: distinct per-tier colors + section polish
   ============================================================ */
.pricing{position:relative;overflow:hidden}
.pricing::before{content:"";position:absolute;left:8%;top:12%;width:38%;height:60%;pointer-events:none;z-index:0;
  background:radial-gradient(circle,rgba(41,171,226,.16),transparent 62%);filter:blur(20px)}
.pricing::after{content:"";position:absolute;right:6%;bottom:6%;width:40%;height:62%;pointer-events:none;z-index:0;
  background:radial-gradient(circle,rgba(230,169,75,.14),transparent 62%);filter:blur(20px)}
.pricing__head,.pricing .tktgrid,.pricing__note{position:relative;z-index:1}

/* per-tier accent color via --tc */
.tkt--access{--tc:var(--cyan)}
.tkt--tech{--tc:#a774ff}
.tkt--vip{--tc:#e8b04e}
/* colored top accent bar */
.tkt--access::before,.tkt--tech::before,.tkt--vip::before{content:"";position:absolute;top:0;left:22px;right:22px;height:4px;border-radius:0 0 4px 4px;
  background:linear-gradient(90deg,transparent,var(--tc),transparent)}
/* tinted card bodies + colored borders + glow */
.tkt--access{background:linear-gradient(180deg,rgba(41,171,226,.10),var(--panel) 46%);border-color:rgba(41,171,226,.4)}
.tkt--tech{background:linear-gradient(180deg,rgba(167,116,255,.20),var(--panel) 48%)!important;border-color:var(--tc)!important;
  box-shadow:0 42px 92px -34px rgba(167,116,255,.6),0 0 0 1px rgba(167,116,255,.42)!important}
.tkt--vip{background:linear-gradient(180deg,rgba(232,176,78,.18),var(--panel) 48%);border-color:var(--tc);
  box-shadow:0 34px 74px -34px rgba(232,176,78,.5)}
.tkt--tech:hover,.tkt--vip:hover,.tkt--access:hover{border-color:var(--tc)}
/* colored accents inside */
.tkt--access .tkt__access,.tkt--tech .tkt__access,.tkt--vip .tkt__access{color:var(--tc)}
.tkt--tech .tkt__price,.tkt--vip .tkt__price{color:var(--tc)}
.tkt--access .tkt__list li svg,.tkt--tech .tkt__list li svg,.tkt--vip .tkt__list li svg{stroke:var(--tc)}
.tkt--tech .tkt__name,.tkt--vip .tkt__name{color:#fff}
/* badges recolored per tier */
.tkt--tech .tkt__badge{background:var(--tc);color:#160a2e}
.tkt--vip .tkt__badge{background:var(--tc);color:#241800}
/* buttons in tier color */
.tkt--tech .btn{background:var(--tc);color:#160a2e;border-color:var(--tc)}
.tkt--tech .btn:hover{background:#bf93ff;box-shadow:0 16px 40px -12px rgba(167,116,255,.6)}
.tkt--vip .btn{background:var(--tc);color:#241800;border-color:var(--tc)}
.tkt--vip .btn:hover{background:#f2c877;box-shadow:0 16px 40px -12px rgba(232,176,78,.6)}
.tkt--access .btn{border-color:rgba(41,171,226,.6);color:#fff}
.tkt--access .btn:hover{background:var(--cyan);color:#00121e;border-color:var(--cyan)}

/* ============================================================
   ABOUT PAGE — founders hero + story blocks
   ============================================================ */
.abhero{position:relative;overflow:hidden;background:linear-gradient(180deg,#0a0c22,var(--bg));
  padding:clamp(140px,19vh,196px) 0 clamp(52px,7vw,92px)}
.abhero__glow{position:absolute;inset:0;z-index:0;pointer-events:none;overflow:hidden}
.abhero__glow span{position:absolute;border-radius:50%;filter:blur(72px);opacity:.5}
.abhero__glow .g1{width:52vw;height:52vw;left:-14vw;top:-16vw;background:radial-gradient(circle,rgba(41,171,226,.5),transparent 66%)}
.abhero__glow .g2{width:46vw;height:46vw;right:-12vw;bottom:-20vw;background:radial-gradient(circle,rgba(129,21,23,.55),transparent 66%)}
.abhero__in{position:relative;z-index:2;display:grid;grid-template-columns:1.02fr .98fr;gap:clamp(28px,4.5vw,66px);align-items:center}
.abhero__eyebrow{display:inline-flex;align-items:center;gap:9px;font-family:var(--disp);font-weight:800;text-transform:uppercase;
  letter-spacing:.16em;font-size:.76rem;color:var(--cyan);margin-bottom:22px}
.abhero__eyebrow::before{content:"";width:26px;height:2px;background:var(--cyan)}
.abhero h1{font-family:var(--disp);font-weight:900;font-size:clamp(2.3rem,5.6vw,4.6rem);line-height:.99;letter-spacing:-.025em}
.abhero h1 .g{color:var(--cyan)}
.abhero__sub{margin-top:24px;max-width:52ch;font-family:var(--serif);font-style:italic;color:#d6daf0;
  font-size:clamp(1.05rem,1.8vw,1.4rem);line-height:1.5}
.abhero__meta{display:flex;flex-wrap:wrap;gap:10px;margin-top:30px}
.abhero__meta span{font-family:var(--disp);font-weight:700;font-size:.78rem;letter-spacing:.02em;color:#dfe2f2;
  border:1px solid var(--line);background:rgba(255,255,255,.03);border-radius:999px;padding:9px 16px}
.abhero__meta b{color:var(--cyan)}
/* founder cards */
.abfounders{position:relative;display:flex;justify-content:center;gap:clamp(10px,2vw,22px);padding:10px 0}
.abcard{position:relative;width:clamp(150px,20vw,236px);aspect-ratio:556/692;border-radius:18px;overflow:hidden;
  border:1px solid var(--line);box-shadow:0 30px 60px -30px rgba(0,0,0,.8);transition:transform .5s var(--ease),box-shadow .5s}
.abcard img{width:100%;height:100%;object-fit:cover;display:block}
.abcard--1{transform:rotate(-5deg) translateY(10px);animation:abFloatA 7s ease-in-out infinite}
.abcard--2{transform:rotate(5deg) translateY(-10px);animation:abFloatB 8s ease-in-out infinite}
.abcard:hover{transform:rotate(0) translateY(-6px) scale(1.03);box-shadow:0 40px 80px -28px rgba(41,171,226,.5);z-index:3}
.abcard__badge{position:absolute;top:12px;left:12px;z-index:2;font-family:var(--disp);font-weight:800;font-size:.58rem;
  letter-spacing:.14em;text-transform:uppercase;color:#00121e;background:var(--cyan);padding:5px 10px;border-radius:999px}
.abcard--2 .abcard__badge{background:var(--burgundy-hi);color:#fff}
@keyframes abFloatA{0%,100%{transform:rotate(-5deg) translateY(10px)}50%{transform:rotate(-5deg) translateY(-2px)}}
@keyframes abFloatB{0%,100%{transform:rotate(5deg) translateY(-10px)}50%{transform:rotate(5deg) translateY(2px)}}
@media(prefers-reduced-motion:reduce){.abcard--1,.abcard--2{animation:none}}
@media(max-width:900px){.abhero__in{grid-template-columns:1fr;gap:40px}.abfounders{order:2}}

/* story split — reuse .pwhy grid; add pull-quote card variant */
.abquote{position:relative;background:linear-gradient(158deg,#1a1e48,#10122f 60%,#0b0d24);border:1px solid var(--line);
  border-radius:22px;padding:clamp(28px,3.4vw,44px);overflow:hidden}
.abquote::after{content:"";position:absolute;right:-6px;bottom:-30px;width:160px;height:70px;opacity:.16;
  background:url('assets/logos/logo-dmc-white.png') no-repeat right bottom/contain;pointer-events:none}
.abquote__mark{font-family:var(--serif);font-size:5rem;line-height:.6;color:var(--cyan);opacity:.5}
.abquote blockquote{font-family:var(--serif);font-style:italic;font-size:clamp(1.15rem,2vw,1.55rem);line-height:1.42;color:#eef0fb;margin:6px 0 22px}
.abquote figcaption{display:flex;align-items:center;gap:13px}
.abquote figcaption img{width:52px;height:52px;border-radius:50%;object-fit:cover;border:2px solid rgba(41,171,226,.5)}
.abquote figcaption b{display:block;font-family:var(--disp);font-weight:800}
.abquote figcaption span{color:var(--mute);font-size:.85rem}

/* ============================================================
   TICKETS PAGE — CRO hero (ticket stub + live countdown) + matrix
   ============================================================ */
.txhero{position:relative;overflow:hidden;background:linear-gradient(180deg,#0a0c22,var(--bg));
  padding:clamp(140px,19vh,196px) 0 clamp(52px,7vw,92px)}
.txhero__glow{position:absolute;inset:0;z-index:0;pointer-events:none;overflow:hidden}
.txhero__glow span{position:absolute;border-radius:50%;filter:blur(74px);opacity:.5}
.txhero__glow .g1{width:50vw;height:50vw;left:-12vw;top:-18vw;background:radial-gradient(circle,rgba(41,171,226,.5),transparent 66%)}
.txhero__glow .g2{width:44vw;height:44vw;right:-10vw;bottom:-22vw;background:radial-gradient(circle,rgba(232,176,78,.4),transparent 66%)}
.txhero__in{position:relative;z-index:2;display:grid;grid-template-columns:1.08fr .92fr;gap:clamp(30px,4.5vw,64px);align-items:center}
.txhero__eyebrow{display:inline-flex;align-items:center;gap:9px;font-family:var(--disp);font-weight:800;text-transform:uppercase;
  letter-spacing:.16em;font-size:.76rem;color:var(--cyan);margin-bottom:22px}
.txhero__eyebrow::before{content:"";width:26px;height:2px;background:var(--cyan)}
.txhero h1{font-family:var(--disp);font-weight:900;font-size:clamp(2.3rem,5.6vw,4.6rem);line-height:.99;letter-spacing:-.025em}
.txhero h1 .g{color:var(--cyan)}
.txhero__sub{margin-top:24px;max-width:52ch;font-family:var(--serif);font-style:italic;color:#d6daf0;
  font-size:clamp(1.05rem,1.8vw,1.4rem);line-height:1.5}
.txhero__cta{display:flex;gap:14px;flex-wrap:wrap;margin-top:32px}
.txtrust{display:flex;flex-wrap:wrap;gap:8px 20px;margin-top:26px}
.txtrust span{display:inline-flex;align-items:center;gap:8px;font-size:.9rem;color:#cfd4ea;font-weight:500}
.txtrust svg{width:17px;height:17px;flex:none;stroke:var(--cyan);fill:none;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}
/* ticket stub */
.txticket{position:relative;background:linear-gradient(180deg,var(--panel2),var(--panel));border:1px solid var(--line);
  border-radius:22px;padding:clamp(24px,3vw,34px);box-shadow:0 40px 90px -40px rgba(41,171,226,.5),0 0 0 1px rgba(41,171,226,.12);overflow:hidden}
.txticket::before{content:"";position:absolute;top:0;left:24px;right:24px;height:4px;border-radius:0 0 4px 4px;
  background:linear-gradient(90deg,transparent,var(--cyan),transparent)}
.txticket__top{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:22px}
.txticket__brand{font-family:var(--disp);font-weight:900;font-size:1.02rem;letter-spacing:-.01em;line-height:1.1}
.txticket__brand span{display:block;color:var(--mute);font-size:.74rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase;margin-top:5px}
.txticket__seat{text-align:right;font-family:var(--disp);font-weight:800;font-size:.72rem;letter-spacing:.06em;text-transform:uppercase;color:var(--cyan)}
.txticket__seat b{display:block;font-family:var(--anton);font-size:1.5rem;color:#fff;letter-spacing:0}
.txticket__cdlabel{font-family:var(--disp);font-weight:800;text-transform:uppercase;letter-spacing:.14em;font-size:.7rem;color:var(--mute);margin-bottom:12px}
.txcd{display:grid;grid-template-columns:repeat(4,1fr);gap:9px}
.txcd__u{background:rgba(255,255,255,.04);border:1px solid var(--line);border-radius:12px;padding:14px 6px;text-align:center}
.txcd__n{font-family:var(--anton);font-size:clamp(1.6rem,3.4vw,2.5rem);line-height:1;color:#fff}
.txcd__l{display:block;font-family:var(--disp);font-weight:700;font-size:.6rem;letter-spacing:.1em;text-transform:uppercase;color:var(--mute);margin-top:7px}
.txticket__perf{position:relative;margin:24px -34px;border-top:2px dashed rgba(255,255,255,.16)}
.txticket__perf::before,.txticket__perf::after{content:"";position:absolute;top:50%;width:26px;height:26px;border-radius:50%;background:var(--bg);transform:translateY(-50%)}
.txticket__perf::before{left:-13px}.txticket__perf::after{right:-13px}
.txticket__foot{display:flex;justify-content:space-between;align-items:flex-end;gap:14px}
.txticket__from{font-family:var(--disp);font-weight:600;font-size:.72rem;letter-spacing:.06em;text-transform:uppercase;color:var(--mute)}
.txticket__from b{display:block;font-family:var(--anton);font-size:clamp(2rem,4vw,2.8rem);color:#fff;letter-spacing:0;margin-top:4px}
.txticket__note{font-size:.76rem;color:var(--mute);max-width:18ch;text-align:right;line-height:1.4}
@media(max-width:900px){.txhero__in{grid-template-columns:1fr;gap:38px}}

/* per-tier price anchor line under the price */
.tkt__anchor{display:flex;align-items:center;gap:8px;font-size:.8rem;color:var(--cyan);font-weight:600;margin:2px 0 4px}
.tkt__anchor svg{width:15px;height:15px;stroke:var(--cyan);fill:none;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}
.tkt__save{display:inline-block;font-family:var(--disp);font-weight:800;font-size:.62rem;letter-spacing:.08em;text-transform:uppercase;
  color:#00121e;background:var(--cyan);border-radius:999px;padding:4px 10px;margin-top:14px}

/* comparison matrix */
.txcmp-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch;border:1px solid var(--line);border-radius:20px;background:var(--panel)}
.txcmp{width:100%;min-width:640px;border-collapse:collapse;font-size:.94rem}
.txcmp th,.txcmp td{padding:16px 18px;text-align:center;border-bottom:1px solid var(--line)}
.txcmp thead th{position:sticky;top:0;background:var(--panel2);font-family:var(--disp);font-weight:900;font-size:1rem;color:#fff}
.txcmp thead th small{display:block;font-family:var(--body);font-weight:600;font-size:.72rem;color:var(--cyan);margin-top:4px}
.txcmp thead th.txcmp--pop{color:var(--cyan)}
.txcmp tbody th{text-align:left;font-weight:600;color:#e4e7f5;font-family:var(--body);font-size:.94rem}
.txcmp tbody tr:hover{background:rgba(41,171,226,.05)}
.txcmp .yes{color:var(--cyan)}
.txcmp .yes svg{width:20px;height:20px;stroke:var(--cyan);fill:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}
.txcmp .no{color:#4b4f6e;font-size:1.2rem}
.txcmp td.txcmp--pop{background:rgba(41,171,226,.06)}
.txcmp tr:last-child td,.txcmp tr:last-child th{border-bottom:0}

/* ============================================================
   FAQ PAGE — help-center hero + categorized accordions
   ============================================================ */
.faqhero{position:relative;overflow:hidden;background:linear-gradient(180deg,#0a0c22,var(--bg));
  padding:clamp(140px,19vh,196px) 0 clamp(44px,6vw,74px);text-align:center}
.faqhero__glow{position:absolute;inset:0;z-index:0;pointer-events:none;overflow:hidden}
.faqhero__glow span{position:absolute;border-radius:50%;filter:blur(72px);opacity:.5}
.faqhero__glow .g1{width:48vw;height:48vw;left:-14vw;top:-18vw;background:radial-gradient(circle,rgba(41,171,226,.5),transparent 66%)}
.faqhero__glow .g2{width:42vw;height:42vw;right:-12vw;bottom:-22vw;background:radial-gradient(circle,rgba(129,21,23,.5),transparent 66%)}
.faqhero__in{position:relative;z-index:2;max-width:820px;margin-inline:auto;padding-inline:var(--gut)}
.faqhero__eyebrow{display:inline-flex;align-items:center;gap:9px;font-family:var(--disp);font-weight:800;text-transform:uppercase;
  letter-spacing:.16em;font-size:.76rem;color:var(--cyan);margin-bottom:20px}
.faqhero__eyebrow::before,.faqhero__eyebrow::after{content:"";width:22px;height:2px;background:var(--cyan)}
.faqhero h1{font-family:var(--disp);font-weight:900;font-size:clamp(2.3rem,5.6vw,4.4rem);line-height:1;letter-spacing:-.025em}
.faqhero h1 .g{color:var(--cyan)}
.faqhero__sub{margin:22px auto 0;max-width:56ch;font-family:var(--serif);font-style:italic;color:#d6daf0;font-size:clamp(1.05rem,1.8vw,1.35rem);line-height:1.5}
.faqchips{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-top:34px}
.faqchips a{font-family:var(--disp);font-weight:700;font-size:.82rem;color:#dfe2f2;border:1px solid var(--line);
  background:rgba(255,255,255,.04);border-radius:999px;padding:10px 18px;transition:.25s}
.faqchips a:hover{border-color:var(--cyan);color:#fff;transform:translateY(-2px)}

.faqpage{background:linear-gradient(180deg,#eef0f6,#e4e6ef);color:#0a0a16;border-radius:44px 44px 0 0;margin-top:18px;
  padding:clamp(52px,8vw,104px) 0 clamp(60px,9vw,120px)}
.faqcat{max-width:900px;margin:0 auto clamp(40px,6vw,72px);scroll-margin-top:96px}
.faqcat:last-child{margin-bottom:0}
.faqcat__h{display:flex;align-items:center;gap:14px;font-family:var(--disp);font-weight:900;
  font-size:clamp(1.5rem,3.2vw,2.3rem);letter-spacing:-.01em;color:#0a0a16;margin-bottom:8px}
.faqcat__h::before{content:"";width:34px;height:5px;border-radius:3px;background:var(--cyan)}
.faqcat:nth-child(even) .faqcat__h::before{background:var(--burgundy)}
.faqcat__note{color:#5a6076;font-size:.92rem;margin:0 0 8px 48px}

/* ============================================================
   REFINEMENTS v2 — logo, founder cards, ticket mockup, compare, replay
   ============================================================ */
/* bigger main (nav) logo */
.nav__logo img,.nav.solid .nav__logo img{height:92px}
@media(max-width:760px){.nav__logo img,.nav.solid .nav__logo img{height:72px}}

/* founder cards — larger + straight (no slant) */
.abcard{width:clamp(185px,24vw,268px)}
.abcard--1,.abcard--2{transform:none;animation:abFloatUp 7s ease-in-out infinite}
.abcard--2{animation-delay:-3.5s}
.abcard:hover{transform:translateY(-8px) scale(1.03);z-index:3}
@keyframes abFloatUp{0%,100%{transform:translateY(0)}50%{transform:translateY(-9px)}}
@media(prefers-reduced-motion:reduce){.abcard--1,.abcard--2{animation:none}}

/* pass-includes icons: size + center the swapped SVGs */
.pwhy__facts .fic svg{width:20px;height:20px}

/* tickets hero — calmer glow for a more pro feel */
.txhero__glow span{opacity:.36}

/* premium ticket-stub mockup */
.txticket__head{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:20px}
.txticket__logo{height:34px;width:auto}
.txticket__admit{font-family:var(--disp);font-weight:800;font-size:.6rem;letter-spacing:.16em;text-transform:uppercase;
  color:var(--cyan);border:1px solid rgba(41,171,226,.42);border-radius:999px;padding:6px 12px;white-space:nowrap}
.txticket__meta{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:22px;
  border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:15px 0}
.txticket__meta div{display:flex;flex-direction:column;gap:4px}
.txticket__meta span{font-family:var(--disp);font-weight:700;font-size:.58rem;letter-spacing:.1em;text-transform:uppercase;color:var(--mute)}
.txticket__meta b{font-family:var(--disp);font-weight:800;font-size:.98rem;color:#fff}
.txticket__barcode{flex:0 0 auto;width:132px;height:40px;align-self:center;border-radius:3px;opacity:.9;
  background:repeating-linear-gradient(90deg,#eef1f8 0,#eef1f8 2px,transparent 2px,transparent 4px,#eef1f8 4px,#eef1f8 7px,transparent 7px,transparent 9px,#eef1f8 9px,#eef1f8 10px,transparent 10px,transparent 13px)}
.txticket__foot{align-items:center}

/* comparison matrix — per-tier column colors + zebra rows */
.txcmp thead th:nth-child(2) small{color:var(--cyan)}
.txcmp thead th:nth-child(3){color:#c9a9ff}
.txcmp thead th:nth-child(3) small{color:#a774ff}
.txcmp thead th:nth-child(4) small{color:#e8b04e}
.txcmp td:nth-child(2) .yes svg{stroke:var(--cyan)}
.txcmp td:nth-child(3) .yes svg{stroke:#a774ff}
.txcmp td:nth-child(4) .yes svg{stroke:#e8b04e}
.txcmp tbody tr:nth-child(odd){background:rgba(255,255,255,.022)}
.txcmp td.txcmp--pop,.txcmp th.txcmp--pop{background:rgba(167,116,255,.09)}
.txcmp tbody tr:hover{background:rgba(41,171,226,.06)}

/* pricing reassurance flags */
.pricing__flags{display:flex;flex-wrap:wrap;justify-content:center;gap:10px 22px;margin-top:22px}
.pricing__flags span{display:inline-flex;align-items:center;gap:8px;font-size:.9rem;color:#cfd4ea;font-weight:500}
.pricing__flags span::before{content:"";width:17px;height:17px;flex:none;border-radius:50%;
  background:rgba(41,171,226,.16) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2329abe2' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6L9 17l-5-5'/%3E%3C/svg%3E") center/11px no-repeat}

/* video replay band */
.replaywrap{margin-top:22px}
.replay{display:grid;grid-template-columns:auto 1fr auto;gap:clamp(16px,2.4vw,30px);align-items:center;
  max-width:1180px;margin:0 auto;background:linear-gradient(120deg,var(--panel2),var(--panel));
  border:1px solid var(--line);border-radius:20px;padding:clamp(22px,2.6vw,32px);position:relative;overflow:hidden}
.replay::before{content:"";position:absolute;inset:0 auto 0 0;width:4px;background:linear-gradient(180deg,var(--cyan),#1f93c9)}
.replay__ic{width:56px;height:56px;border-radius:14px;display:grid;place-items:center;
  background:rgba(41,171,226,.1);border:1px solid rgba(41,171,226,.4);color:var(--cyan)}
.replay__ic svg{width:27px;height:27px}
.replay__k{font-family:var(--disp);font-weight:800;text-transform:uppercase;letter-spacing:.08em;font-size:.7rem;color:var(--cyan);margin-bottom:5px}
.replay__txt h3{font-family:var(--disp);font-weight:800;font-size:1.32rem;margin-bottom:6px}
.replay__txt p{color:var(--mute);font-size:.95rem;max-width:56ch}
.replay__buy{text-align:center}
.replay__price{font-family:var(--anton);font-size:2.5rem;color:#fff;line-height:1;margin-bottom:10px}
.replay__buy .btn{white-space:nowrap}
@media(max-width:760px){.replay{grid-template-columns:1fr;text-align:center}.replay__ic{margin:0 auto}.replay__txt p{margin-inline:auto}}

/* ============================================================
   REFINEMENTS v3 — founder badges, ticket logo, centered cards, full replay
   ============================================================ */
/* both founder cards read "Founder" — unify the badge color */
.abcard--2 .abcard__badge{background:var(--cyan);color:#00121e}

/* bigger logo inside the hero ticket mockup */
.txticket__logo{height:52px}

/* centered pass-card text (name / access / price / anchor) */
.tkt__name,.tkt__access,.tkt__price{text-align:center}
.tkt__anchor{justify-content:center;text-align:center}
.tkt__price span{text-align:center}

/* Video Replay band — full width of the content column */
.replay{max-width:none}

/* center the checkmark feature rows in the pass cards (matches centered headers) */
.tkt__list li{justify-content:center}

/* Compare grid — bordered cells so each ticket column is outlined per row */
.txcmp th,.txcmp td{border-right:1px solid var(--line)}
.txcmp th:last-child,.txcmp td:last-child{border-right:0}
.txcmp tr:last-child td,.txcmp tr:last-child th{border-bottom:1px solid var(--line)}

.nav__login{padding:11px 20px!important;font-size:14px}

/* ===== Terry mobile punch-list 2026-09-26 (parity with live) ===== */
/* Popup close "×" centred in its circle */
.modal__x,.tkmodal__x,.lb__x{display:flex;align-items:center;justify-content:center;padding:0;line-height:1;text-align:center}
/* Sponsor final-CTA "Step 2 · Ready to commit?" — was cyan-on-cyan (invisible) */
.foncta p b{color:var(--burgundy)!important}
@media(max-width:760px){
  .faq__grid{grid-template-columns:1fr;gap:26px}      /* FAQ flows full-width, one per row */
  .bgrid{grid-template-columns:1fr!important}          /* Buy-With-Confidence cards stack */
  .hero__scroll{left:0!important;right:0!important;margin-inline:auto!important;width:max-content!important;max-width:90vw;transform:none!important} /* re-centre scroll cue */
}
/* FAQ question rows: no cyan hover/tap highlight (parity with live) */
.faq__q:hover,.faq__q:focus{background:none!important;color:#0a0a16!important;border-radius:0!important}
.faq__q:hover .chev::before,.faq__q:hover .chev::after{background:var(--cyan)!important}
/* Mobile menu: drop nav backdrop-filter while open (it clipped the fixed panel to header height) */
body.menu-open .nav{backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
/* Burger: kill global theme button pink focus/hover bg */
.nav__burger,.nav__burger:hover,.nav__burger:focus,.nav__burger:active,.nav__burger:focus-visible{background:none!important;border:0!important;color:inherit!important;outline:none!important}
