@import url('https://fonts.googleapis.com/css2?family=Bebas+Neue&family=DM+Serif+Display:ital@0;1&family=Space+Mono:wght@400;700&display=swap');

:root{--dark:#141418;--dark2:#1c1c22;--paper:#f0eaf5;--purple:#c07fd4;--purple-light:#d4a0e8;--muted:rgba(240,234,245,.7);--line:rgba(192,127,212,.28);--max:1440px}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--dark);color:var(--paper);font-family:'Space Mono','Courier New',monospace;overflow-x:hidden}
body::before{content:"";position:fixed;inset:0;z-index:20;pointer-events:none;opacity:.045;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}
img{max-width:100%;display:block}
a{color:inherit}
a:focus-visible{outline:2px solid var(--purple-light);outline-offset:5px}
.skip{position:absolute;top:-100px;left:16px;z-index:50;background:var(--purple);color:var(--dark);padding:12px 16px}
.skip:focus{top:12px}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.wrap{width:min(calc(100% - 64px),var(--max));margin-inline:auto}
.eyebrow{font-size:11px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--purple);line-height:1.7}
.eyebrow::before{content:'◆';font-size:8px;margin-right:10px;vertical-align:2px}
.topbar{border-bottom:1px solid var(--line);background:rgba(20,20,24,.95)}
.topbar-inner{min-height:88px;display:flex;align-items:center;justify-content:space-between;gap:28px}
.brand{display:flex;align-items:center;gap:20px;text-decoration:none;min-width:0}
.brand img{width:210px;height:auto;max-height:48px;object-fit:contain;object-position:left}
.brand-year{font-family:'Bebas Neue','Arial Black',sans-serif;font-size:24px;letter-spacing:.05em;color:var(--purple);border-left:1px solid var(--line);padding-left:20px}
.nav{display:flex;align-items:center;gap:30px}
.nav a{text-decoration:none;font-size:10px;text-transform:uppercase;letter-spacing:.15em;white-space:nowrap}
.nav a:hover,.nav a[aria-current="page"]{color:var(--purple-light)}
.nav .nav-cta{color:var(--dark);background:var(--purple);padding:14px 18px;font-weight:700}
.nav .nav-cta:hover{color:var(--dark);background:var(--purple-light)}
.announcement{border-bottom:1px solid var(--line);font-size:10px;letter-spacing:.11em;text-transform:uppercase;color:var(--muted)}
.announcement .wrap{display:flex;justify-content:space-between;gap:20px;padding-block:12px}
.announcement a{text-decoration:none;color:var(--purple-light)}
.hero{position:relative;overflow:hidden;border-bottom:1px solid var(--line)}
.hero::before{content:"27";position:absolute;right:-2.5vw;top:-2vw;font:clamp(260px,36vw,680px)/.8 'Bebas Neue','Arial Black',sans-serif;color:rgba(192,127,212,.055);pointer-events:none}
.hero-grid{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(320px,.88fr);gap:clamp(50px,7vw,130px);align-items:end;min-height:700px;padding-block:72px 78px;position:relative}
.hero-copy{max-width:860px}
.hero h1,.page-hero h1{font-family:'Bebas Neue','Arial Black',sans-serif;font-weight:400;text-transform:uppercase;letter-spacing:-.015em;line-height:.85;margin:18px 0 32px;font-size:clamp(90px,11.6vw,202px)}
.hero h1 span,.page-hero h1 span{display:block;color:var(--purple)}
.hero-lede{max-width:740px;font:italic clamp(23px,2.4vw,39px)/1.21 'DM Serif Display',Georgia,serif;margin:0 0 24px}
.hero-desc{max-width:650px;font-size:13px;line-height:1.9;color:var(--muted);margin:0 0 32px}
.button-row{display:flex;flex-wrap:wrap;gap:14px;align-items:center}
.button{display:inline-flex;align-items:center;justify-content:space-between;gap:28px;padding:16px 20px;min-height:52px;text-decoration:none;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.12em;border:1px solid var(--purple);transition:background .2s,color .2s,transform .2s}
.button:hover{transform:translateY(-2px)}
.button.primary{background:var(--purple);color:var(--dark)}
.button.primary:hover{background:var(--purple-light)}
.button.secondary:hover{background:rgba(192,127,212,.14)}
.hero-photo{position:relative;align-self:center;height:clamp(390px,38vw,520px);min-height:0;display:flex;align-items:end;background:var(--dark2)}
.hero-photo::before{content:"";position:absolute;inset:22px -22px -22px 22px;border:1px solid var(--purple);z-index:0}
.hero-photo img{width:100%;height:100%;min-height:0;position:absolute;inset:0;object-fit:contain;object-position:center;filter:saturate(.78) contrast(1.06)}
.hero-photo::after{content:"";position:absolute;inset:auto 0 0;height:64px;background:rgba(20,20,24,.92)}
.photo-credit{position:relative;z-index:1;width:100%;padding:22px;color:white;font-size:10px;text-transform:uppercase;letter-spacing:.12em}
.hero-slides{position:absolute;inset:0 0 64px;overflow:hidden}
.hero-track{display:flex;width:100%;height:100%;transition:transform .8s cubic-bezier(.22,.61,.36,1);will-change:transform}
.hero-slide{position:relative;flex:0 0 100%;height:100%;margin:0}
.hero-slide img{width:100%;height:100%;object-fit:contain}
.hero-slide--crowd{display:flex;align-items:center}
.hero-slide--crowd img{position:relative;inset:auto;height:auto;aspect-ratio:16/9;object-fit:cover;object-position:center 78%}
.hero-photo::after{z-index:1}
.hero-carousel .photo-credit{z-index:2;width:auto;margin-right:auto;padding-right:8px}
.hero-carousel-controls{position:relative;z-index:3;display:flex;align-items:center;gap:3px;padding:14px;color:#fff}
.hero-carousel-controls button{width:28px;height:28px;border:1px solid rgba(255,255,255,.55);border-radius:50%;background:rgba(20,20,24,.62);color:#fff;cursor:pointer;font:19px/1 'Bebas Neue','Arial Black',sans-serif}
.hero-carousel-controls button:hover,.hero-carousel-controls button:focus-visible{background:var(--purple);border-color:var(--purple);color:var(--dark)}
.hero-carousel-controls [data-carousel-toggle]{font:700 11px/1 'Space Mono','Courier New',monospace}
.hero-carousel-dots{display:flex;align-items:center;gap:1px;margin-inline:3px}
.hero-carousel-controls .hero-carousel-dot{display:grid;place-items:center;width:18px;height:28px;border:0;border-radius:0;background:transparent;padding:0}
.hero-carousel-dot::before{content:"";width:7px;height:7px;border-radius:50%;background:rgba(255,255,255,.45);transition:background .2s,transform .2s}
.hero-carousel-controls .hero-carousel-dot:hover,.hero-carousel-controls .hero-carousel-dot:focus-visible{background:transparent}
.hero-carousel-dot:hover::before,.hero-carousel-dot:focus-visible::before{background:#fff;transform:scale(1.25)}
.hero-carousel-dot.is-active::before{background:var(--purple);transform:scale(1.25)}
.ticker{overflow:hidden;background:var(--purple);color:var(--dark);white-space:nowrap;padding:11px 0;font-family:'Bebas Neue','Arial Black',sans-serif;font-size:23px;letter-spacing:.09em}
.ticker-inner{display:flex;gap:28px;width:max-content;animation:marquee 34s linear infinite}
.ticker span{display:inline-flex;align-items:center;gap:28px}
.ticker span::after{content:'◆';font:10px 'Space Mono',monospace}
.ticker a{display:inline-flex;align-items:center;gap:28px;color:inherit;text-decoration:none}
.ticker a::after{content:'◆';font:10px 'Space Mono',monospace}
.ticker a:hover,.ticker a:focus-visible{text-decoration:underline;text-underline-offset:4px}
.ticker:has(a:hover) .ticker-inner,.ticker:has(a:focus-visible) .ticker-inner{animation-play-state:paused}
@keyframes marquee{to{transform:translateX(-50%)}}
.section{padding-block:110px;border-bottom:1px solid var(--line)}
.about-story{background:var(--dark2)}
.about-story-grid{display:grid;grid-template-columns:minmax(260px,.8fr) minmax(0,1.2fr);gap:clamp(50px,8vw,150px);align-items:start}
.about-story-copy{max-width:760px}
.about-story-copy p{font-size:14px;line-height:1.85;color:var(--muted);margin:0 0 22px}
.about-story-copy p:last-child{margin-bottom:0}
.about-story-copy .about-story-lede{font:italic clamp(23px,2.4vw,36px)/1.3 'DM Serif Display',Georgia,serif;color:var(--paper);margin-bottom:30px}
.section-head{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:52px}
.section h2,.page-hero h2{font:400 clamp(58px,7vw,112px)/.88 'Bebas Neue','Arial Black',sans-serif;text-transform:uppercase;margin:12px 0 0}
.section h2 em{font:italic .54em 'DM Serif Display',Georgia,serif;text-transform:none;color:var(--purple)}
.section-intro{max-width:450px;font-size:13px;line-height:1.8;color:var(--muted);margin:0}
.lens-grid{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--line)}
.lens{padding:34px 30px 38px;min-height:315px;position:relative}
.lens+.lens{border-left:1px solid var(--line)}
.lens-number{font-family:'Bebas Neue','Arial Black',sans-serif;font-size:38px;color:var(--purple)}
.lens h3{font:400 clamp(38px,3.9vw,62px)/.93 'Bebas Neue','Arial Black',sans-serif;text-transform:uppercase;margin:38px 0 14px}
.lens p{font-size:12px;line-height:1.85;color:var(--muted);max-width:350px;margin:0}
.statement{padding-block:125px;background:var(--purple);color:var(--dark)}
.statement .wrap{display:grid;grid-template-columns:230px 1fr;gap:70px}
.statement .eyebrow{color:var(--dark)}
.statement p{font:italic clamp(34px,5vw,76px)/1.1 'DM Serif Display',Georgia,serif;margin:0;max-width:1050px}
.proof-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid var(--line);background:rgba(192,127,212,.055)}
.proof-metric{padding:30px 36px 32px;min-width:0}
.proof-metric+.proof-metric{border-left:1px solid var(--line)}
.proof-metric strong{display:block;font:400 clamp(68px,7.2vw,112px)/.9 'Bebas Neue','Arial Black',sans-serif;color:var(--purple);margin-bottom:14px}
.proof-metric span{display:block;font-size:11px;line-height:1.7;text-transform:uppercase;letter-spacing:.1em;color:var(--muted);max-width:270px}
.proof-showcase{border:1px solid var(--line);border-top:0}
.logo-group{padding:36px}
.logo-group+.logo-group,.proof-speakers{border-top:1px solid var(--line)}
.logo-group h3,.proof-speakers h3{font:400 clamp(35px,3.4vw,51px)/.96 'Bebas Neue','Arial Black',sans-serif;text-transform:uppercase;margin:26px 0 24px}
.logo-group-label{font-size:10px;line-height:1.5;letter-spacing:.13em;text-transform:uppercase;color:var(--muted);margin:24px 0 13px}
.logo-grid{display:grid;gap:1px;background:var(--line);border:1px solid var(--line)}
.sponsor-logos{grid-template-columns:repeat(5,minmax(0,1fr))}
.community-logos{grid-template-columns:repeat(3,minmax(0,1fr))}
.campus-logos{grid-template-columns:repeat(4,minmax(0,1fr))}
.speaker-logos{grid-template-columns:repeat(7,minmax(0,1fr))}
.logo-tile{min-width:0;min-height:142px;margin:0;padding:18px 12px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;text-align:center;background:var(--dark2)}
.logo-tile img{width:min(100%,170px);height:62px;object-fit:contain}
.community-logos .logo-tile img,.campus-logos .logo-tile img{height:70px}
.logo-tile figcaption{font-size:10px;line-height:1.45;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.logo-tile .logo-ibm{filter:brightness(1.7)}
.logo-tile .logo-nyu{filter:brightness(2.4)}
.proof-speakers{display:grid;grid-template-columns:minmax(220px,.45fr) 1fr;gap:32px;padding:36px}
.proof-speakers h3{margin-bottom:0}
.proof-speakers p{font-size:12px;line-height:1.8;color:var(--muted);margin:0 0 15px}
.proof-speakers p:last-child{margin-bottom:0}
.proof-speakers strong{color:var(--paper)}
.proof-speakers a{color:var(--purple-light);text-underline-offset:4px}
.speaker-affiliations{grid-column:1/-1}
.speaker-affiliations .logo-group-label{margin-top:0}
@media(max-width:1000px){.speaker-logos{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:680px){.speaker-logos{grid-template-columns:repeat(2,minmax(0,1fr))}}
.proof-action{display:flex;justify-content:space-between;align-items:center;gap:28px;padding:24px 0;border-bottom:1px solid var(--line)}
.proof-action p{max-width:550px;font-size:11px;line-height:1.8;color:var(--muted);margin:0}
.proof-action .button{flex:none}
.ambition{background:var(--dark2)}
.ambition-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border:1px solid var(--line)}
.ambition-item{padding:34px 32px 38px;min-width:0}
.ambition-item+.ambition-item{border-left:1px solid var(--line)}
.ambition-item h3{font:400 clamp(38px,4vw,62px)/.95 'Bebas Neue','Arial Black',sans-serif;text-transform:uppercase;margin:34px 0 16px}
.ambition-item p{font-size:12px;line-height:1.85;color:var(--muted);margin:0;max-width:360px}
.moment-list{border-top:1px solid var(--line)}
.moment{display:grid;grid-template-columns:150px minmax(0,1fr) 125px;gap:36px;align-items:start;padding:30px 0;border-bottom:1px solid var(--line)}
.moment-time{font-family:'Bebas Neue','Arial Black',sans-serif;font-size:31px;color:var(--purple)}
.moment h3{font:400 clamp(31px,3vw,47px)/1 'Bebas Neue','Arial Black',sans-serif;text-transform:uppercase;margin:0 0 11px}
.moment p{font-size:12px;line-height:1.8;color:var(--muted);margin:0;max-width:760px}
.moment-tag{text-align:right;font-size:10px;line-height:1.6;letter-spacing:.12em;text-transform:uppercase;color:var(--purple-light)}
.small-note{font-size:11px;line-height:1.8;color:var(--muted);max-width:800px;margin:24px 0 0}
.program-preview{background:var(--dark2)}
.program-preview .small-note a{color:var(--purple-light);text-underline-offset:4px}
.cta-panel{display:grid;grid-template-columns:1fr auto;gap:40px;align-items:end;padding:50px;border:1px solid var(--purple);background:linear-gradient(115deg,rgba(192,127,212,.13),transparent 65%)}
.cta-panel h2{margin-bottom:20px}
.cta-panel p{max-width:660px;font-size:12px;line-height:1.8;color:var(--muted);margin:0}
.ticket-section{background:var(--dark2)}
.ticket-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(340px,.8fr);gap:clamp(40px,8vw,140px);align-items:center}
.ticket-intro{max-width:630px;font-size:14px;line-height:1.8;color:var(--muted);margin:28px 0 0}
.ticket-card{border:1px solid var(--purple);background:var(--dark);padding:clamp(28px,4vw,52px)}
.ticket-card-label{color:var(--purple);font-size:11px;letter-spacing:.16em;text-transform:uppercase}
.ticket-release-name{font:400 clamp(31px,3vw,45px)/1 'Bebas Neue','Arial Black',sans-serif;text-transform:uppercase;margin:32px 0 6px}
.ticket-price{font:400 clamp(85px,10vw,145px)/.85 'Bebas Neue','Arial Black',sans-serif;color:var(--purple);margin:0 0 22px}
.ticket-status,.ticket-fine{font-size:12px;line-height:1.75;color:var(--muted)}
.ticket-status{min-height:2.5em;margin:0 0 24px}
.ticket-buy{width:100%}
.ticket-fine{margin:20px 0 0}
.ticket-fine a{color:var(--purple-light);text-underline-offset:3px}
.ticket-policy{border-top:1px solid var(--line);padding-top:18px;margin:20px 0 0;color:var(--muted);font-size:11px;line-height:1.7}
.ticket-policy strong{color:var(--paper)}
.explore-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;border:1px solid var(--line);background:var(--line)}
.explore-card{display:flex;flex-direction:column;align-items:start;min-height:285px;padding:32px;background:var(--dark2);text-decoration:none;transition:background .2s}
.explore-card:hover,.explore-card:focus-visible{background:#28212d}
.explore-card h3{font:400 clamp(36px,3.4vw,56px)/1 'Bebas Neue','Arial Black',sans-serif;text-transform:uppercase;margin:23px 0 10px}
.explore-card p{max-width:520px;color:var(--muted);font-size:12px;line-height:1.75;margin:0 0 24px}
.explore-link{margin-top:auto;color:var(--purple-light);font-size:10px;text-transform:uppercase;letter-spacing:.12em}
.photo-recap{background:var(--dark)}
.photo-recap-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px}
.photo-recap-item{position:relative;grid-column:span 2;min-width:0;margin:0;overflow:hidden;background:var(--dark2)}
.photo-recap-item:nth-child(-n+2){grid-column:span 3}
.photo-recap-item img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:contain;transition:filter .35s ease}
.photo-recap-item:hover img{filter:brightness(1.08)}
.photo-recap-item figcaption{position:absolute;left:0;right:0;bottom:0;padding:30px 18px 17px;background:linear-gradient(transparent,rgba(20,20,24,.82));color:#fff;font-size:10px;font-weight:700;letter-spacing:.14em;text-transform:uppercase}
.photo-recap-more{display:inline-flex;gap:18px;margin-top:28px;color:var(--purple-light);font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;text-underline-offset:5px}
.topbar{position:sticky;top:0;z-index:100;background:rgba(20,20,24,.96);backdrop-filter:blur(12px)}
.topbar-inner{min-height:88px}
.brand img{width:auto;height:48px;max-height:48px}
.nav a:not(.nav-cta){opacity:.7}
.nav a:not(.nav-cta):hover,.nav a[aria-current="page"]{opacity:1}
.nav .nav-cta{border-radius:2px;box-shadow:0 0 0 rgba(192,127,212,0);transition:background .2s,box-shadow .2s,transform .2s}
.nav .nav-cta:hover{transform:translateY(-1px);box-shadow:0 8px 24px -8px rgba(192,127,212,.7)}
.site-footer{padding:0;background:var(--dark2);border-top:1px solid var(--line)}
.footer-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:48px;padding-block:80px}
.footer-brand h2{font:400 42px/.9 'Bebas Neue','Arial Black',sans-serif;color:var(--purple);margin:0 0 20px}
.footer-brand p,.footer-col p{font-size:11px;line-height:1.8;color:var(--muted);margin:0}
.footer-col h3{font-size:10px;text-transform:uppercase;letter-spacing:.18em;color:var(--purple-light);margin:0 0 22px}
.footer-col ul{list-style:none;padding:0;margin:0}
.footer-col li{font-size:12px;line-height:2.2;color:var(--muted)}
.footer-col a{text-decoration:none}
.footer-col a:hover{color:var(--purple-light)}
.footer-col p{margin-bottom:16px}
.footer-bottom{border-top:1px solid var(--line);padding:26px 0}
.footer-bottom .wrap{display:flex;align-items:center;justify-content:space-between;gap:20px}
.sticky-tickets{position:fixed;left:0;right:0;bottom:0;z-index:90;display:flex;justify-content:center;align-items:center;gap:22px;padding:13px 24px;background:rgba(20,20,24,.96);backdrop-filter:blur(14px);border-top:1px solid var(--purple);transform:translateY(105%);transition:transform .35s ease}
.sticky-tickets.visible{transform:translateY(0)}
.sticky-tickets span{font-size:10px;letter-spacing:.15em;text-transform:uppercase;color:var(--muted)}
.sticky-tickets strong{font:400 23px 'Bebas Neue','Arial Black',sans-serif;text-transform:uppercase;letter-spacing:.04em;color:var(--purple-light)}
.sticky-tickets a{background:var(--purple);color:var(--dark);padding:12px 20px;text-decoration:none;text-transform:uppercase;font-size:10px;font-weight:700;letter-spacing:.12em}
.sticky-tickets a:hover{background:var(--purple-light)}
.site-footer{padding:60px 0 36px}
.footer-top{display:flex;justify-content:space-between;gap:30px;align-items:start;padding-bottom:70px}
.footer-top img{width:min(320px,100%)}
.footer-links{display:flex;gap:24px;flex-wrap:wrap}
.footer-links a{font-size:10px;text-transform:uppercase;letter-spacing:.12em;text-decoration:none}
.footer-links a:hover{color:var(--purple)}
.footer-bottom{border-top:1px solid var(--line);padding-top:24px;display:flex;justify-content:space-between;gap:24px;color:var(--muted);font-size:10px;line-height:1.6}
.footer-bottom a{text-decoration:underline;text-decoration-color:var(--purple);text-underline-offset:3px}
.footer-bottom a:hover{color:var(--purple-light)}
.page-hero{padding:95px 0 85px;border-bottom:1px solid var(--line);position:relative;overflow:hidden}
.page-hero::after{content:'PROGRAM';position:absolute;right:-25px;bottom:-.15em;font:clamp(130px,21vw,380px)/1 'Bebas Neue','Arial Black',sans-serif;color:rgba(192,127,212,.05);pointer-events:none}
.page-hero .wrap{position:relative;z-index:1}
.sponsor-hero{border-bottom:1px solid var(--line);position:relative;overflow:hidden}
.sponsor-hero::before{content:'PARTNER';position:absolute;right:-.04em;bottom:-.2em;font:clamp(210px,29vw,500px)/1 'Bebas Neue','Arial Black',sans-serif;color:rgba(192,127,212,.045);pointer-events:none}
.sponsor-hero-grid{position:relative;display:grid;grid-template-columns:minmax(0,1.35fr) minmax(290px,.65fr);align-items:end;gap:clamp(45px,7vw,115px);padding-block:105px 100px}
.sponsor-hero h1{font:400 clamp(88px,10vw,164px)/.85 'Bebas Neue','Arial Black',sans-serif;text-transform:uppercase;letter-spacing:-.015em;margin:20px 0 32px}
.sponsor-hero h1 span{color:var(--purple)}
.sponsor-lede{font:italic clamp(25px,2.6vw,40px)/1.22 'DM Serif Display',Georgia,serif;max-width:810px;margin:0 0 22px}
.sponsor-copy{font-size:13px;line-height:1.85;color:var(--muted);max-width:710px;margin:0 0 34px}
.sponsor-reply{font-size:10px;line-height:1.6;color:var(--muted);margin:15px 0 0}
.sponsor-brief{border:1px solid var(--line);padding:30px;background:rgba(192,127,212,.06)}
.sponsor-brief .eyebrow{display:block;margin-bottom:22px}
.sponsor-brief>div{border-top:1px solid var(--line);padding:17px 0}
.sponsor-brief>div:last-child{padding-bottom:0}
.sponsor-brief strong{display:block;font:400 clamp(34px,3.5vw,48px)/1 'Bebas Neue','Arial Black',sans-serif;text-transform:uppercase;color:var(--purple)}
.sponsor-brief span:not(.eyebrow){display:block;font-size:10px;line-height:1.55;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin-top:7px}
.sponsor-method{font-size:10px;line-height:1.7;color:var(--muted);margin:13px 0 0}
.sponsor-proof .proof-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}
.sponsor-legacy{display:grid;grid-template-columns:minmax(220px,.7fr) 1fr;gap:45px;align-items:center;border:1px solid var(--line);padding:36px;margin-top:38px}
.sponsor-legacy h3{font:400 clamp(33px,3.3vw,50px)/.98 'Bebas Neue','Arial Black',sans-serif;text-transform:uppercase;margin:22px 0 15px}
.sponsor-legacy p{font-size:11px;line-height:1.75;color:var(--muted);margin:0}
.sponsor-legacy-logos{grid-template-columns:repeat(3,minmax(0,1fr))}
.sponsor-proof-link{margin:24px 0 0;font-size:11px;text-transform:uppercase;letter-spacing:.08em}
.sponsor-proof-link a{color:var(--purple-light);text-underline-offset:4px}
.sponsor-offers{background:var(--dark2)}
.sponsor-offer-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border:1px solid var(--line)}
.sponsor-offer{padding:32px;min-width:0}
.sponsor-offer:nth-child(even){border-left:1px solid var(--line)}
.sponsor-offer:nth-child(n+3){border-top:1px solid var(--line)}
.sponsor-offer h3{font:400 clamp(34px,3.4vw,54px)/.98 'Bebas Neue','Arial Black',sans-serif;text-transform:uppercase;min-height:2em;margin:34px 0 15px}
.sponsor-offer p,.sponsor-offer dd{font-size:11px;line-height:1.8;color:var(--muted)}
.sponsor-offer p{min-height:5.4em;margin:0 0 20px}
.sponsor-offer dl{margin:0;border-top:1px solid var(--line)}
.sponsor-offer dt{font-size:10px;line-height:1.5;color:var(--purple-light);text-transform:uppercase;letter-spacing:.11em;margin-top:18px}
.sponsor-offer dd{margin:6px 0 0}
.sponsor-status-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:end}
.sponsor-status p{font-size:12px;line-height:1.85;color:var(--muted);max-width:700px;margin:0 0 19px}
.sponsor-status p:last-child{margin-bottom:0}
.sponsor-examples{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:var(--line);border:1px solid var(--line);margin-top:1px}
.sponsor-example{background:var(--dark2);padding:32px;min-width:0}
.sponsor-example h3{font:400 clamp(32px,3.1vw,48px)/.98 'Bebas Neue','Arial Black',sans-serif;text-transform:uppercase;margin:22px 0 13px}
.sponsor-example p{font-size:11px;line-height:1.85;color:var(--muted);margin:0;max-width:600px}
.sponsor-inquiry-grid{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:clamp(45px,7vw,110px);align-items:start}
.sponsor-inquiry-grid>div>p{font-size:12px;line-height:1.85;color:var(--muted);max-width:540px;margin:26px 0 32px}
.sponsor-inquiry-grid .sponsor-contact-alt{font-size:10px;margin-top:18px}
.sponsor-contact-alt a{color:var(--purple-light);text-underline-offset:3px}
.sponsor-inquiry-form{display:grid;gap:22px;border:1px solid var(--line);padding:36px;background:var(--dark2)}
.sponsor-form-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.sponsor-inquiry-form label{display:block;font-size:10px;line-height:1.6;letter-spacing:.09em;text-transform:uppercase;color:var(--paper)}
.sponsor-inquiry-form label span{color:var(--purple)}
.sponsor-inquiry-form input,.sponsor-inquiry-form select,.sponsor-inquiry-form textarea{display:block;width:100%;min-height:48px;margin-top:9px;border:1px solid var(--line);border-radius:0;padding:12px 14px;background:var(--dark);color:var(--paper);font:12px/1.5 'Space Mono','Courier New',monospace;letter-spacing:0;text-transform:none}
.sponsor-inquiry-form textarea{resize:vertical;min-height:112px}
.sponsor-inquiry-form input:focus-visible,.sponsor-inquiry-form select:focus-visible,.sponsor-inquiry-form textarea:focus-visible,.sponsor-inquiry-form button:focus-visible{outline:2px solid var(--purple-light);outline-offset:2px}
.sponsor-inquiry-form input::placeholder,.sponsor-inquiry-form textarea::placeholder{color:var(--muted)}
.sponsor-inquiry-form .button{cursor:pointer;font-family:'Space Mono','Courier New',monospace;width:100%}
.sponsor-inquiry-form .button:disabled{opacity:.65;cursor:wait}
.sponsor-form-status{font-size:11px;line-height:1.7;margin:0}
.sponsor-form-status:empty{display:none}
.sponsor-form-status[data-state="error"]{color:#ffb5b5}
.sponsor-form-status[data-state="success"]{color:var(--purple-light)}
.sponsor-form-note{font-size:10px;line-height:1.7;color:var(--muted);margin:0}
.sponsor-honeypot{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
@media(max-width:1000px){.sponsor-hero-grid,.sponsor-legacy,.sponsor-status-grid{grid-template-columns:1fr}.sponsor-brief{max-width:650px}.sponsor-offer h3,.sponsor-offer p{min-height:0}}
@media(max-width:1000px){.sponsor-inquiry-grid{grid-template-columns:1fr}.sponsor-inquiry-form{max-width:760px}}
@media(max-width:680px){.sponsor-hero-grid{padding-block:66px 74px;gap:48px}.sponsor-hero h1{font-size:clamp(68px,17vw,110px)}.sponsor-lede{font-size:27px}.sponsor-brief,.sponsor-legacy{padding:25px}.sponsor-legacy{gap:28px}.sponsor-legacy-logos{grid-template-columns:repeat(3,minmax(0,1fr))}.sponsor-legacy-logos .logo-tile{min-height:95px}.sponsor-legacy-logos .logo-tile img{width:min(100%,90px);height:34px}.sponsor-legacy-logos .logo-tile figcaption{font-size:8px}.sponsor-offer{padding:28px}.sponsor-hero .button{width:100%}.sponsor-page .announcement a{display:block;margin-top:8px}}
@media(max-width:680px){.sponsor-examples,.sponsor-form-row,.sponsor-offer-grid{grid-template-columns:1fr}.sponsor-offer:nth-child(even){border-left:0}.sponsor-offer:nth-child(n+2){border-top:1px solid var(--line)}.sponsor-example{padding:26px}.sponsor-inquiry-form{padding:24px}.sponsor-inquiry-grid .button{width:100%}}
.page-hero h1{font-size:clamp(100px,13vw,210px);margin-bottom:24px}
.page-hero p{max-width:830px;font:italic clamp(23px,2.5vw,38px)/1.27 'DM Serif Display',Georgia,serif;margin:0 0 26px}
.program-status{display:inline-flex;border:1px solid var(--line);padding:10px 14px;font-size:10px;line-height:1.6;text-transform:uppercase;letter-spacing:.11em;color:var(--muted)}
.program-index{display:grid;grid-template-columns:1fr 1fr;gap:0 50px;border-top:1px solid var(--line)}
.program-index a{display:flex;justify-content:space-between;gap:16px;border-bottom:1px solid var(--line);padding:20px 0;text-decoration:none;font:22px 'Bebas Neue','Arial Black',sans-serif;text-transform:uppercase}
.program-index a:hover{color:var(--purple)}
.program-section{padding:80px 0;border-bottom:1px solid var(--line)}
.program-section-header{display:grid;grid-template-columns:220px 1fr;gap:40px;align-items:start;margin-bottom:38px}
.program-section-header .range{font:40px 'Bebas Neue','Arial Black',sans-serif;color:var(--purple)}
.program-section-header h2{font:400 clamp(58px,6vw,98px)/.92 'Bebas Neue','Arial Black',sans-serif;text-transform:uppercase;margin:0 0 15px}
.program-section-header p{font-size:12px;line-height:1.8;color:var(--muted);max-width:760px;margin:0}
.program-rows{border-top:1px solid var(--line)}
.program-row{display:grid;grid-template-columns:220px minmax(0,1fr);gap:40px;padding:28px 0;border-bottom:1px solid var(--line)}
.program-row time{font:29px 'Bebas Neue','Arial Black',sans-serif;color:var(--purple)}
.program-row h3{font:400 clamp(28px,3vw,44px)/1.03 'Bebas Neue','Arial Black',sans-serif;text-transform:uppercase;margin:0 0 8px}
.program-row p{font-size:12px;line-height:1.85;color:var(--muted);max-width:790px;margin:0}
.program-row ul{padding-left:18px;margin:12px 0 0;color:var(--muted);font-size:12px;line-height:1.9}
.program-row .format{display:inline-block;color:var(--purple-light);font-size:10px;text-transform:uppercase;letter-spacing:.13em;margin-bottom:11px}
.program-row.highlight{background:rgba(192,127,212,.06);padding-inline:20px;margin-inline:-20px}
.program-preview-note{margin:28px 0 0;padding-top:22px;border-top:1px solid var(--line);color:var(--muted);font-size:15px;line-height:1.7}
@media(max-width:1000px){.hero-grid{grid-template-columns:1fr;min-height:0;padding-block:70px}.hero-photo{width:100%;max-width:650px;height:500px}.hero h1{font-size:clamp(110px,17vw,170px)}.nav{gap:18px}.nav a{font-size:9px}.brand img{width:165px}.statement .wrap{grid-template-columns:1fr;gap:25px}.proof-metric{padding:26px}.ambition-grid{grid-template-columns:1fr}.ambition-item+.ambition-item{border-left:0;border-top:1px solid var(--line)}.ambition-item h3{margin-top:18px}.moment{grid-template-columns:125px 1fr}.moment-tag{grid-column:2;text-align:left}.program-section-header,.program-row{grid-template-columns:160px 1fr;gap:25px}}
@media(max-width:680px){.wrap{width:min(calc(100% - 36px),var(--max))}.topbar-inner{min-height:76px;flex-wrap:wrap;padding-block:14px;gap:16px}.brand img{width:150px}.brand-year{font-size:21px;padding-left:13px}.nav{width:100%;justify-content:space-between;gap:10px;overflow-x:auto;padding-bottom:3px}.nav a{font-size:9px}.nav .nav-cta{padding:10px}.announcement .wrap{display:block}.announcement a{display:inline-block;margin-top:4px}.hero-grid{padding-block:54px 62px;gap:50px}.hero h1{font-size:clamp(85px,20vw,134px)}.hero-lede{font-size:26px}.hero-photo{height:clamp(350px,90vw,430px)}.hero-photo::before{inset:12px -12px -12px 12px}.section{padding-block:74px}.section-head{display:block;margin-bottom:35px}.section-intro{margin-top:22px}.lens-grid{grid-template-columns:1fr}.lens{min-height:0;padding:28px}.lens+.lens{border-left:0;border-top:1px solid var(--line)}.lens h3{margin-top:18px}.statement{padding-block:75px}.statement p{font-size:clamp(35px,8vw,55px)}.moment{grid-template-columns:1fr;gap:9px;padding:25px 0}.moment-time{font-size:27px}.moment-tag{grid-column:1}.cta-panel{display:block;padding:28px}.cta-panel .button{margin-top:25px}.footer-top,.footer-bottom{display:block}.footer-links{margin-top:32px}.page-hero{padding-block:65px}.page-hero h1{font-size:clamp(85px,19vw,130px)}.program-index{grid-template-columns:1fr}.program-section{padding-block:60px}.program-section-header,.program-row{display:block}.program-section-header .range{display:block;margin-bottom:15px}.program-row time{display:block;margin-bottom:8px}.program-row.highlight{margin-inline:-10px;padding-inline:10px}}
@media(max-width:800px){.proof-metrics{grid-template-columns:1fr}.proof-metric{display:grid;grid-template-columns:145px 1fr;align-items:center;gap:16px;padding:22px}.proof-metric+.proof-metric{border-left:0;border-top:1px solid var(--line)}.proof-metric strong{font-size:66px;margin:0}.proof-metric span{font-size:10px}.logo-group,.proof-speakers{padding:28px}.sponsor-logos,.community-logos,.campus-logos{grid-template-columns:repeat(2,minmax(0,1fr))}.sponsor-logos .logo-tile:last-child,.community-logos .logo-tile:last-child{grid-column:span 2}.proof-speakers{grid-template-columns:1fr}.proof-speakers h3{margin:18px 0 0}.proof-action{display:block}.proof-action .button{margin-top:20px;width:100%;justify-content:space-between}}
@media(max-width:420px){.proof-metric{display:block}.proof-metric strong{margin-bottom:8px}.ambition-item{padding:28px}}
@media(max-width:800px){.about-story-grid{grid-template-columns:1fr;gap:24px}}
@media(max-width:680px){.footer-bottom span{display:block}}
@media(max-width:850px){.ticket-grid{grid-template-columns:1fr}.ticket-card{max-width:650px}}
@media(max-width:800px){.footer-grid{grid-template-columns:1fr 1fr;gap:38px}.footer-brand{grid-column:1/-1}}
@media(max-width:680px){.explore-grid{grid-template-columns:1fr}.explore-card{min-height:230px}.footer-grid{grid-template-columns:1fr;gap:32px;padding-block:58px}.footer-brand{grid-column:auto}.footer-bottom .wrap{display:block}.sticky-tickets{justify-content:space-between;gap:12px;padding:10px 18px}.sticky-tickets span{display:none}.sticky-tickets strong{font-size:19px}.sticky-tickets a{padding:11px 13px}}
@media(max-width:680px){.brand img{width:40px;height:40px}.nav{flex-wrap:wrap;justify-content:flex-start;overflow:visible;gap:10px 16px}.nav .nav-cta{margin-left:auto}}
@media(max-width:680px){.footer-bottom>*+*{margin-top:15px}}
@media(max-width:680px){.photo-recap-grid{grid-template-columns:1fr;gap:12px}.photo-recap-item,.photo-recap-item:nth-child(-n+2){grid-column:1}.photo-recap-item figcaption{font-size:9px;padding:26px 12px 12px}}
@media(max-width:680px){.hero-carousel .photo-credit{font-size:8px;padding:14px 4px 14px 14px}.hero-carousel-controls{gap:2px;padding:10px}.hero-carousel-controls button{width:26px;height:26px}.hero-carousel-controls .hero-carousel-dot{width:15px;height:26px}.hero-carousel-controls [data-carousel-toggle]{font-size:10px}}
@media(prefers-reduced-motion:reduce){.sticky-tickets{transition:none}}
@media(prefers-reduced-motion:reduce){.photo-recap-item img{transition:none}}
@media(prefers-reduced-motion:reduce){.hero-track{transition:none}}

/* 2027 homepage: the original poster artwork with the 2026 program-card language below. */
.home-page .topbar{position:absolute;top:0;left:0;right:0;z-index:10;background:rgba(20,20,24,.46);border-bottom:1px solid rgba(240,234,245,.18);backdrop-filter:blur(10px)}
.home-page .announcement{display:none}
.poster-hero{min-height:100svh;min-height:max(680px,100svh);background:var(--dark) url('/public/header.webp') center/cover no-repeat;border-bottom:1px solid var(--line)}
.poster-hero::before{display:none}
.poster-hero::after{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(to bottom,rgba(20,20,24,.38),transparent 28%,transparent 58%,rgba(20,20,24,.72))}
.poster-hero .poster-title{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.poster-title span{display:block;color:var(--purple)}
.poster-title .mobile-break{display:none}
.poster-presented,.poster-details{position:absolute;z-index:2;bottom:55px}
.poster-presented{left:max(32px,calc((100vw - var(--max))/2));text-transform:uppercase;letter-spacing:.15em}
.poster-presented span{display:block;color:rgba(255,255,255,.66);font-size:9px;margin-bottom:7px}
.poster-presented a{text-decoration:none}
.poster-presented a:hover strong{text-decoration:underline;text-underline-offset:3px}
.poster-presented strong{font-size:12px;color:#fff}
.poster-details{right:max(32px,calc((100vw - var(--max))/2));text-align:right}
.poster-date,.poster-location{display:block;font:400 clamp(38px,4vw,62px)/.95 'Bebas Neue','Arial Black',sans-serif;text-transform:uppercase;color:var(--purple-light)}
.poster-location{font-size:clamp(29px,3vw,44px)}
.poster-details p{font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:#fff;margin:9px 0 20px}
.poster-details .button{min-width:240px;background:var(--purple);box-shadow:0 15px 40px rgba(20,20,24,.28)}
.carousel-feature{background:var(--dark);padding-block:110px}
.carousel-feature-grid{display:grid;grid-template-columns:minmax(0,.83fr) minmax(0,1.17fr);gap:clamp(42px,6vw,105px);align-items:center}
.carousel-feature h2{margin-bottom:27px}
.carousel-feature .hero-lede{margin-bottom:19px}
.carousel-feature .hero-desc{max-width:580px}
.carousel-feature .hero-photo{width:100%;height:clamp(430px,39vw,590px)}
.carousel-feature .hero-slide--crowd img{max-height:100%}
.program-preview .moment-list{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:2px;border:0;background:var(--line)}
.program-preview .moment{display:block;position:relative;min-width:0;min-height:325px;padding:43px 30px;background:var(--dark);border:0;overflow:hidden;transition:background .25s}
.program-preview .moment:hover{background:#211c28}
.program-preview .moment::before{content:attr(data-num);position:absolute;top:18px;right:21px;font:60px/1 'Bebas Neue','Arial Black',sans-serif;color:rgba(192,127,212,.16)}
.program-preview .moment-bar{display:block;width:32px;height:2px;background:var(--purple);margin-bottom:22px;transition:width .25s}
.program-preview .moment:hover .moment-bar{width:60px}
.program-preview .moment-tag{display:block;text-align:left;margin-bottom:27px;color:var(--purple);font-size:10px;letter-spacing:.18em;text-transform:uppercase}
.program-preview .moment h3{font:italic clamp(23px,2.2vw,31px)/1.16 'DM Serif Display',Georgia,serif;text-transform:none;margin:0 0 17px;max-width:250px}
.program-preview .moment p{font-size:13px;line-height:1.8;max-width:310px}
.program-page .program-topics{margin-top:25px;padding-top:17px;border-top:1px solid var(--line)}
.program-page .program-topics>span{display:block;margin-bottom:10px;color:var(--purple-light);font-size:10px;letter-spacing:.14em;text-transform:uppercase}
.program-page .program-topics ul{list-style:none;margin:0;padding:0}
.program-page .program-topics li{position:relative;padding:6px 0 6px 15px;color:var(--text);font-size:13px;line-height:1.45}
.program-page .program-topics li::before{content:'·';position:absolute;left:2px;color:var(--purple-light);font-weight:700}
.home-page .explore-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.home-page .explore-card{min-height:330px;padding:31px 25px}
.home-page .explore-card h3{font-size:clamp(32px,3vw,46px)}
@media(max-width:1050px){.carousel-feature-grid{grid-template-columns:1fr}.carousel-feature .hero-photo{max-width:800px}.program-preview .moment-list,.home-page .explore-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:900px) and (orientation:portrait){.poster-hero{background-image:url('/public/FoD_916.webp')}}
@media(max-width:680px){.home-page .topbar{background:rgba(20,20,24,.7)}.poster-hero{min-height:100svh;min-height:max(690px,100svh)}.poster-details{left:18px;right:18px;bottom:30px;text-align:left}.poster-date{font-size:43px}.poster-location{font-size:33px}.poster-details p{font-size:10px}.poster-details .button{width:100%;min-width:0}.poster-presented{left:18px;bottom:230px}.carousel-feature{padding-block:80px}.carousel-feature-grid{gap:38px}.carousel-feature .hero-photo{height:clamp(350px,95vw,500px)}.program-preview .moment-list,.home-page .explore-grid{grid-template-columns:1fr}.program-preview .moment{min-height:0;padding:34px 30px}.program-preview .moment h3{max-width:none}.home-page .explore-card{min-height:225px}}
@media(max-width:680px){.logo-tile{min-height:106px;padding:12px 9px;gap:8px}.logo-grid .logo-tile img{width:min(100%,116px);height:43px}.speaker-logos .logo-tile:last-child{grid-column:1/-1}.logo-tile figcaption{font-size:9px}}
@media(max-width:680px){.sponsor-legacy-logos .logo-tile img{width:min(100%,90px);height:34px}}
@media(max-width:800px){.sponsor-proof .proof-metrics{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.ticker-inner{animation:none}.button{transition:none}.button:hover{transform:none}}

/* Comfortable paragraph size across the hidden 2027 pages. */
.hero-desc,.section-intro,.lens p,.proof-speakers p,.ambition-item p,.moment p,.program-section-header p,.program-row p,.program-row ul,.cta-panel p{font-size:14px;line-height:1.75}
.proof-action p{font-size:13px;line-height:1.7}
.proof-metric span{font-size:12px}

/* Sponsor page reading type: keep compact labels, but make the copy easy to scan. */
.sponsor-page .sponsor-copy,.sponsor-page .section-intro{font-size:15px;line-height:1.8}
.sponsor-page .sponsor-legacy p,.sponsor-page .sponsor-example p,.sponsor-page .sponsor-offer p,.sponsor-page .sponsor-offer dd,.sponsor-page .sponsor-status p,.sponsor-page .sponsor-inquiry-grid>div>p{font-size:14px;line-height:1.75}
.sponsor-page .sponsor-reply,.sponsor-page .sponsor-method,.sponsor-page .small-note,.sponsor-page .sponsor-form-note,.sponsor-page .sponsor-inquiry-grid .sponsor-contact-alt{font-size:12px;line-height:1.7}
.sponsor-page .sponsor-brief span:not(.eyebrow),.sponsor-page .proof-metric span,.sponsor-page .sponsor-offer dt,.sponsor-page .sponsor-proof-link{font-size:12px;line-height:1.65}
.sponsor-page .sponsor-inquiry-form label{font-size:12px}
.sponsor-page .sponsor-inquiry-form input,.sponsor-page .sponsor-inquiry-form select,.sponsor-page .sponsor-inquiry-form textarea{font-size:14px;line-height:1.5}
.sponsor-page .sponsor-form-status{font-size:13px}
.sponsor-page .button{font-size:12px}

/* 2027 home reading type and the program update action. */
.home-page .about-story-copy p,.home-page .hero-desc,.home-page .section-intro,.home-page .lens p,.home-page .ambition-item p,.home-page .program-preview .moment p,.home-page .explore-card p,.home-page .ticket-intro,.home-page .ticket-status,.home-page .ticket-fine,.home-page .cta-panel p{font-size:16px;line-height:1.7;color:rgba(240,234,245,.83)}
.home-page .ticket-policy,.home-page .footer-brand p,.home-page .footer-col p,.home-page .footer-col li{font-size:14px;line-height:1.75}
.home-page .button,.home-page .nav .nav-cta,.home-page .sticky-tickets a{font-size:13px}
.home-page .program-preview-action{display:flex;justify-content:space-between;align-items:end;gap:28px;margin-top:30px}
.home-page .program-preview-action .small-note{flex:1;max-width:660px;margin:0;font-size:16px;line-height:1.7}
.home-page .program-preview-action .button{flex:none;min-width:245px}
@media(max-width:680px){.home-page .program-preview-action{display:flex;flex-direction:column;align-items:flex-end;gap:22px}.home-page .program-preview-action .small-note{width:100%;font-size:15px}.home-page .program-preview-action .button{width:100%;min-width:0}.home-page .about-story-copy p,.home-page .hero-desc,.home-page .section-intro,.home-page .lens p,.home-page .ambition-item p,.home-page .program-preview .moment p,.home-page .explore-card p,.home-page .ticket-intro,.home-page .ticket-status,.home-page .ticket-fine,.home-page .cta-panel p{font-size:15px}}

/* The 2026 dot-and-ring cursor, with a quicker follow and inverted link state. */
.custom-cursor-dot,.custom-cursor-ring{display:none;position:fixed;left:0;top:0;pointer-events:none;opacity:0;transform:translate(-50%,-50%);z-index:9999}
@media(hover:hover) and (pointer:fine){
  html.has-custom-cursor,html.has-custom-cursor body,html.has-custom-cursor a,html.has-custom-cursor button,html.has-custom-cursor [role="button"]{cursor:none!important}
  html.has-custom-cursor input,html.has-custom-cursor textarea{cursor:text!important}
  html.has-custom-cursor [contenteditable="true"]{cursor:text!important}
  html.has-custom-cursor select{cursor:default!important}
  html.has-custom-cursor button:disabled{cursor:wait!important}
  .has-custom-cursor .custom-cursor-dot,.has-custom-cursor .custom-cursor-ring{display:block;opacity:1}
  .custom-cursor-dot{width:10px;height:10px;border-radius:50%;background:var(--purple);transition:transform .15s ease,background .15s ease,opacity .15s ease}
  .custom-cursor-ring{width:36px;height:36px;border:1px solid var(--purple);border-radius:50%;z-index:9998;opacity:.5!important;transform:translate(-50%,-50%) scale(var(--motion-scale,1));transition:opacity .15s ease,border-color .15s ease}
  .custom-cursor-dot.is-hovering{background:#fff;mix-blend-mode:difference;transform:translate(-50%,-50%) scale(2.5)}
  .custom-cursor-ring.is-hovering{border-color:#fff;mix-blend-mode:difference;opacity:.22!important}
  .custom-cursor-dot.is-hidden,.custom-cursor-ring.is-hidden{opacity:0!important}
}
@media(prefers-reduced-motion:reduce){.custom-cursor-dot,.custom-cursor-ring{transition:none!important}}

/* 2027 updates signup, shared by the home and program pages. */
.updates-dialog{width:min(560px,calc(100vw - 32px));max-height:min(90vh,780px);padding:0;border:1px solid var(--purple);background:var(--dark2);color:var(--paper);box-shadow:0 24px 90px rgba(0,0,0,.6);overflow:auto}
.updates-dialog::backdrop{background:rgba(6,5,10,.78);backdrop-filter:blur(7px)}
.updates-dialog-inner{position:relative;padding:clamp(24px,5vw,44px)}
.updates-dialog-close{position:absolute;right:16px;top:16px;width:38px;height:38px;border:1px solid var(--line);background:transparent;color:var(--paper);font:28px/1 'Space Mono',monospace;cursor:pointer}
.updates-dialog-close:hover,.updates-dialog-close:focus-visible{border-color:var(--purple);background:rgba(192,127,212,.15)}
.updates-dialog h2{font:400 clamp(54px,9vw,82px)/.88 'Bebas Neue','Arial Black',sans-serif;text-transform:uppercase;margin:18px 0 14px}
.updates-dialog h2 em{font-style:normal;color:var(--purple)}
.updates-dialog-intro,.updates-dialog-success p:not(.eyebrow){font:13px/1.75 'Space Mono',monospace;color:var(--muted);margin:0 0 22px}
.updates-dialog-form>label,.updates-dialog legend{display:block;margin:13px 0 7px;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.updates-dialog label span,.updates-dialog legend span{color:var(--muted);font-weight:400;text-transform:none;letter-spacing:0}
.updates-dialog-form>input:not(.updates-honeypot){display:block;width:100%;min-height:44px;padding:10px 12px;border:1px solid var(--line);border-radius:0;background:var(--dark);color:var(--paper);font:13px 'Space Mono',monospace}
.updates-dialog-form>input:focus{outline:2px solid var(--purple);outline-offset:1px}
.updates-dialog fieldset{margin:17px 0 20px;padding:0;border:0}
.updates-dialog fieldset label{display:block;margin:10px 0;font:12px/1.5 'Space Mono',monospace;cursor:pointer}
.updates-dialog fieldset input{accent-color:var(--purple);width:17px;height:17px;vertical-align:middle}
.updates-honeypot{position:absolute;left:-9999px;width:1px;height:1px;opacity:0}
.updates-dialog-submit{display:block;width:100%;min-height:52px;padding:12px 18px;border:1px solid var(--purple);background:var(--purple);color:var(--dark);font:700 11px 'Space Mono',monospace;letter-spacing:.12em;text-transform:uppercase;cursor:pointer}
.updates-dialog-submit:hover:not(:disabled){background:var(--purple-light)}
.updates-dialog-submit:disabled{opacity:.6;cursor:wait}
.updates-dialog-status{min-height:1.5em;font:12px/1.5 'Space Mono',monospace;color:#f4b4b4}
.updates-dialog-status a{color:var(--purple-light)}
.updates-dialog-note{margin:0;font:11px/1.5 'Space Mono',monospace;color:var(--muted)}
.updates-dialog [hidden]{display:none!important}

/* Full-width artwork crops vertically to keep the ticket overlay in the first screen. */
.home-page .topbar{position:relative;background:var(--dark)}
.home-page .poster-hero{min-height:0;background:var(--dark)}
.poster-hero::after{display:none}
.poster-media{position:relative;height:min(56.25vw,calc(100svh - var(--home-header-height,89px)));background:#ebe6ee;overflow:hidden}
.poster-media picture,.poster-media img{display:block;width:100%;height:100%}
.poster-media img{object-fit:cover;object-position:center}
.poster-media video{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;opacity:0}
.poster-media.is-playing video{opacity:1}
.poster-caption{position:absolute;inset:0;z-index:2;pointer-events:none}
.poster-caption .poster-presented,.poster-caption .poster-details{position:absolute;bottom:24px;pointer-events:auto;background:rgba(20,20,24,.94);border:1px solid rgba(255,255,255,.22);box-shadow:0 6px 24px rgba(0,0,0,.18)}
.poster-caption .poster-presented{left:24px;padding:12px 16px}
.poster-caption .poster-presented span{color:#fff}
.poster-caption .poster-details{left:50%;right:auto;bottom:auto;top:min(calc(50% + 11.5vw),calc(100% - 110px));transform:translateX(-50%);width:max-content;max-width:calc(100% - 32px);padding:0;text-align:center;background:none;border:0;box-shadow:none}
.poster-caption .poster-date{font:700 clamp(20px,2.2vw,34px)/1.25 'Space Mono',monospace;color:#864598;text-transform:none;white-space:nowrap}
.poster-caption .poster-location{font:400 clamp(11px,1.1vw,16px)/1.4 'Space Mono',monospace;color:#242027;margin-top:7px}
.poster-caption .poster-details p{font-size:10px;margin:7px 0 0;color:#242027}
.poster-caption .poster-details .button{position:absolute;left:calc(100% + 28px);top:50%;transform:translateY(-50%);background:#864598;color:#fff;border-color:#864598;box-shadow:none;min-width:180px;white-space:nowrap}
.poster-caption .poster-details .button:hover{background:#703780;border-color:#703780}
.poster-caption a:focus-visible{outline:3px solid #864598;outline-offset:4px}
.poster-motion{position:absolute;right:14px;top:14px;bottom:auto;z-index:2;border:1px solid var(--line);border-radius:4px;padding:8px 12px;background:var(--dark);color:#fff;font-size:12px;line-height:1.4;cursor:pointer}
.poster-motion[hidden]{display:none}
.poster-motion:focus-visible{outline:3px solid var(--purple);outline-offset:3px}
@media(max-width:680px){
  .home-page .poster-hero{min-height:0}
  .poster-media{height:min(100vw,calc(100svh - var(--home-header-height,145px)))}
  .poster-caption .poster-presented{top:12px;bottom:auto;left:12px;padding:7px 10px}
  .poster-caption .poster-presented span{font-size:7px;margin-bottom:3px}
  .poster-caption .poster-presented strong{font-size:10px}
  .poster-caption .poster-details{left:50%;right:auto;bottom:auto;top:min(69%,calc(100% - 110px));padding:0;display:flex;flex-direction:column;align-items:center;gap:0}
  .poster-caption .poster-date{font-size:clamp(18px,5vw,25px)}
  .poster-caption .poster-location{font-size:11px;margin-top:3px}
  .poster-caption .poster-details p{display:none}
  .poster-caption .poster-details .button{position:static;transform:none;min-width:155px;width:auto;margin-top:10px;padding:12px 18px;font-size:10px;letter-spacing:.06em}
  .poster-motion{top:12px;right:12px;font-size:10px;padding:7px 9px}
}
