@font-face{font-family:Sora;src:url('assets/sora.woff2') format('woff2');font-style:normal;font-weight:100 800;font-display:swap}
:root{--bg:#0f172a;--panel:#152034;--raised:#1e293b;--ink:#f8fafc;--muted:#94a3b8;--line:#2b3a52;--green:#22c55e;--green-ink:#052e16;--green-text:#4ade80;--radius:16px;--ease:cubic-bezier(.16,1,.3,1)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:112px;color-scheme:dark}body{margin:0;background:var(--bg);color:var(--ink);font:400 16px/1.65 Sora,Arial,sans-serif;-webkit-font-smoothing:antialiased}::selection{background:var(--green);color:var(--green-ink)}body{scrollbar-color:var(--line) var(--bg)}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}button,a{-webkit-tap-highlight-color:transparent;touch-action:manipulation}button:focus-visible,a:focus-visible,summary:focus-visible{outline:2px solid var(--green-text);outline-offset:6px}p,h1,h2,h3,figure{margin:0}h1,h2,h3{font-weight:600;letter-spacing:-.035em;text-wrap:balance}h2{font-size:48px;line-height:1.12}p{max-width:65ch}img{display:block;max-width:100%;object-fit:cover}svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.svg-defs{position:absolute;width:0;height:0;overflow:hidden}.wrap{width:calc(100% - 96px);max-width:1200px;margin-inline:auto}.section{margin-top:112px}.skip{position:fixed;top:8px;left:24px;background:var(--green);color:var(--green-ink);padding:12px;z-index:100;transform:translateY(-160%)}.skip:focus{transform:translateY(0)}
.header{background:var(--bg);position:sticky;top:0;z-index:30}.header-inner{display:flex;align-items:center;justify-content:space-between;gap:32px;height:96px}.logo{object-fit:contain;width:144px;height:auto}.header nav{display:flex;gap:32px;margin-left:auto;margin-right:24px}.header nav a{font-size:14px;min-height:44px;display:flex;align-items:center}.button{display:inline-flex;align-items:center;justify-content:center;gap:20px;min-height:52px;padding:13px 24px;border-radius:999px;background:var(--green);color:var(--green-ink);font-size:16px;font-weight:600;line-height:1.4;border:1px solid transparent;transition:transform 200ms var(--ease)}.button svg{width:20px;height:20px}.button.small{min-height:44px;font-size:14px;padding:10px 20px;gap:12px}.button.outline{border-color:var(--line);background:transparent;color:var(--ink)}.button.dark{background:var(--bg);color:var(--ink)}.menu-toggle{display:none}.text-link{display:inline-flex;gap:16px;align-items:center;min-height:44px;font-weight:500;font-size:16px}.text-link svg{width:20px;transition:transform 200ms var(--ease)}
.hero{padding-top:44px}.hero-copy{text-align:center}.hero h1{font-size:clamp(56px,6.2vw,88px);line-height:1.03;letter-spacing:-.04em}.hero-copy p{color:var(--muted);margin:28px auto 24px;font-size:17px;max-width:760px;line-height:1.65}.invitation{margin-top:48px}.invitation-tabs{display:flex;justify-content:space-between;align-items:flex-end;padding-inline:24px}.invitation-tabs span{background:var(--panel);padding:12px 24px;border-radius:16px 16px 0 0;font-size:14px}.invitation-tabs span:first-child{color:var(--green-text);font-weight:500}.hero-photo{height:430px;position:relative;border-radius:16px 16px 0 0;overflow:hidden;background:var(--raised)}.hero-photo>img{width:100%;height:100%;filter:brightness(.48);object-position:center 52%}.master{position:absolute;top:32px;left:32px;display:flex;gap:24px;align-items:center}.master img{width:124px;height:auto}.master span{font-size:14px;color:var(--ink);padding:8px 14px;border:1px solid var(--muted);border-radius:999px}.photo-title{position:absolute;left:40px;bottom:40px;font-size:42px;font-weight:500;line-height:1.2;letter-spacing:-.03em}.photo-year{position:absolute;right:40px;bottom:32px;color:var(--green-text);font-size:88px;font-weight:600;line-height:.9;letter-spacing:-.07em}.event-facts{display:flex;align-items:center;justify-content:space-between;background:var(--panel);gap:24px;padding:28px 32px;border-radius:0 0 16px 16px}.event-facts>div{display:flex;align-items:center;gap:14px}.event-facts>div>svg{color:var(--green-text)}.event-facts p{display:flex;flex-direction:column;font-size:14px}.event-facts strong{font-weight:500;font-size:14px}.event-facts span{color:var(--muted)}.calendar-link{display:flex;align-items:center;gap:12px;font-size:14px;min-height:44px}.calendar-link svg{width:18px}
.about{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:88px}.about-image{position:relative}.about-image img{width:100%;height:536px;border-radius:var(--radius);filter:saturate(.65)}.image-note{position:absolute;left:24px;bottom:24px;background:var(--bg);border-radius:999px;padding:12px 20px;font-size:14px}.about-copy>p,.sponsor-copy>p{margin-top:24px;color:var(--muted)}.about-copy p.lead,.sponsor-copy p.lead{font-size:20px;color:var(--ink);line-height:1.5;margin-top:32px}.about-copy strong{color:var(--ink);font-weight:500}.about-copy .text-link{margin-top:24px;color:var(--green-text)}
.topics-section{background:var(--panel);padding-block:80px}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:80px}.section-heading>p{max-width:340px;color:var(--muted)}.topics-layout{display:grid;grid-template-columns:1.1fr 1fr;gap:88px;margin-top:56px;align-items:start}.topic{padding:24px 0;border-bottom:0}.topic:first-child{padding-top:0}.topic h3 button{width:100%;text-align:left;display:flex;align-items:center;justify-content:space-between;gap:24px;border:0;background:transparent;padding:8px 0;font-size:24px;line-height:1.3;font-weight:500;letter-spacing:-.02em}.topic.active button{color:var(--green-text)}.topic h3 button svg{transition:transform 200ms var(--ease)}.topic.active button svg{transform:rotate(-45deg)}.topic-content p{padding-top:16px;color:var(--muted)}.topic-content span{display:block;font-size:14px;margin-top:20px;color:var(--green-text)}.topic-visual img{height:408px;width:100%;border-radius:var(--radius);filter:saturate(.6)}.topic-visual figcaption{font-size:14px;margin-top:16px;color:var(--muted)}.program-note{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:48px}.program-note p{font-size:18px}.program-note a{color:var(--green-text)}
.sponsor{display:grid;grid-template-columns:1fr 1fr;gap:88px;align-items:center}.sponsor-copy>.button{margin-top:32px}.sponsor-art{position:relative;min-height:560px;padding-top:80px;padding-right:32px}.sponsor-art>img{height:360px;width:100%;border-radius:var(--radius);position:relative;filter:saturate(.6)}.brand-pill{position:absolute;top:0;right:0;width:88%;height:160px;border-radius:80px;background:var(--green)}.brand-pill span{display:block;width:64px;height:64px;border-radius:50%;background:var(--green-ink);position:absolute;left:40px;top:32px}.sponsor-art>p{padding-top:32px;font-size:24px;line-height:1.4;font-weight:500;letter-spacing:-.02em}.dots{position:absolute;right:0;bottom:12px;display:grid;grid-template-columns:repeat(5,6px);gap:12px}.dots span{width:6px;height:6px;border-radius:50%;background:var(--green)}
.details-section{background:var(--panel);padding:80px 0}.details-grid{display:grid;grid-template-columns:1fr 1fr;gap:88px}.details-intro>p{margin-top:24px;color:var(--muted);max-width:390px}.location{display:flex;gap:16px;margin-top:40px}.location>svg{color:var(--green-text);margin-top:4px}.location strong{font-weight:500}.location p{font-size:14px;margin-top:12px;color:var(--muted);line-height:1.8}.location .text-link{margin-top:8px;color:var(--green-text)}.details-intro>.button{margin-top:32px}.faq>h3{font-size:24px;margin-bottom:20px}.faq details{border-bottom:0}.faq summary{display:flex;align-items:center;justify-content:space-between;gap:24px;list-style:none;cursor:pointer;font-weight:500;padding:22px 0;min-height:64px;font-size:16px}.faq summary::-webkit-details-marker{display:none}.faq summary svg{width:18px;height:18px;transition:transform 200ms var(--ease);color:var(--muted)}.faq details[open] summary svg{transform:rotate(45deg);color:var(--green-text)}.faq details p{padding:0 24px 24px 0;color:var(--muted);font-size:16px}.faq details a{text-decoration:underline;text-underline-offset:4px;color:var(--green-text)}
.final-section{background:var(--green);color:var(--green-ink);padding-block:80px}.final-inner{display:grid;grid-template-columns:1fr 1fr;gap:88px;align-items:center}.final-inner h2{font-size:64px;line-height:1.05}.final-inner>div>p{margin-top:24px}.final-inner .button{margin-top:28px}.final-ticket{background:var(--bg);border-radius:24px;padding:32px;color:var(--ink);position:relative;max-width:472px;text-align:center}.final-ticket::before,.final-ticket::after{content:'';position:absolute;top:68%;width:32px;height:32px;border-radius:50%;background:var(--green)}.final-ticket::before{left:-16px}.final-ticket::after{right:-16px}.final-ticket>span{font-size:14px;display:block}.final-ticket>span:first-child{color:var(--green-text)}.final-ticket>strong{font-size:96px;font-weight:600;line-height:1.3;letter-spacing:-.06em;font-variant-numeric:tabular-nums}.final-ticket>div{display:flex;justify-content:space-between;align-items:center;margin-top:40px;padding-top:24px;border-top:0;text-align:left}.final-ticket p{font-size:14px;color:var(--muted);line-height:1.4}.footer{padding-block:56px 24px}.footer-main{display:flex;align-items:center;gap:64px;justify-content:space-between}.footer-main>p{font-size:14px;color:var(--muted);margin-right:auto}.footer-main>div>span{font-size:14px;color:var(--muted);display:block}.footer-main>div>a{display:flex;align-items:center;gap:24px;font-size:24px;font-weight:500}.footer-bottom{display:flex;gap:32px;justify-content:space-between;margin-top:48px;font-size:14px;color:var(--muted)}
@media(hover:hover) and (pointer:fine){.button:hover{transform:translateY(-2px)}.button:not(.outline):not(.dark):hover{outline:4px solid rgb(34 197 94 / .2);outline-offset:0}.header nav a:hover,.footer a:hover{color:var(--green-text)}.text-link:hover svg{transform:translate(3px,-3px)}.topic button:hover{color:var(--green-text)}}
@media(min-width:1600px){.hero{padding-top:56px}.hero-photo{height:472px}}
@media(max-width:1100px){.wrap{width:calc(100% - 64px)}.header nav{gap:20px;margin-right:0}.header-inner{gap:24px}.about,.topics-layout,.sponsor,.details-grid,.final-inner{gap:48px}.event-facts{flex-wrap:wrap}.calendar-link{display:none}h2{font-size:40px}.hero-photo{height:400px}.about-image img{height:520px}.section-heading{gap:40px}.sponsor-art{min-height:520px}.final-inner h2{font-size:56px}}
@media(max-width:767px){html{scroll-padding-top:88px}.wrap{width:calc(100% - 48px)}.header-inner{height:80px;gap:16px}.logo{width:120px}.header-cta{margin-left:auto}.header-cta.button{padding:10px 14px;font-size:14px;min-height:40px;gap:8px}.header-cta svg{width:16px}.menu-toggle{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:6px;border:0;background:transparent;width:44px;height:44px;padding:8px;flex-shrink:0;margin-right:-8px}.menu-toggle span{width:22px;height:1.5px;background:var(--ink)}.header nav{display:none;position:absolute;left:0;right:0;top:80px;padding:16px 24px 24px;background:var(--panel);margin:0;flex-direction:column;gap:8px}.header nav.open{display:flex}.header nav a{font-size:16px}.hero{padding-top:32px}.hero h1{font-size:44px;line-height:1.08;letter-spacing:-.04em}.hero-copy p{font-size:16px;margin-top:24px}.desktop{display:none}.hero-copy .button{margin-top:0;min-height:48px}.invitation{margin-top:40px}.invitation-tabs{padding-inline:0}.invitation-tabs span{padding:10px 14px;font-size:14px;line-height:1.4}.invitation-tabs span:last-child{display:none}.hero-photo{height:340px;border-radius:0 16px 0 0}.hero-photo>img{object-position:45% center}.master{top:24px;left:24px;gap:12px;align-items:flex-start;flex-direction:column}.master img{width:108px}.master span{font-size:14px;padding:5px 10px}.photo-title{left:24px;bottom:28px;font-size:27px;max-width:240px}.photo-year{font-size:52px;right:24px;bottom:28px;display:none}.event-facts{padding:24px;gap:20px;align-items:flex-start;flex-direction:column}.event-facts strong{font-size:14px}.event-facts p{font-size:14px}.event-facts>div>svg{width:20px}.event-facts>div{gap:16px}.section{margin-top:72px}h2{font-size:32px;letter-spacing:-.03em}.about,.topics-layout,.sponsor,.details-grid,.final-inner{grid-template-columns:1fr;gap:32px}.about-image img{height:360px}.about-copy p.lead,.sponsor-copy p.lead{font-size:18px;margin-top:24px}.about-copy>p,.sponsor-copy>p{margin-top:20px;font-size:16px}.image-note{left:16px;bottom:16px;font-size:14px;padding:10px 14px}.topics-section,.details-section{padding-block:56px}.section-heading{display:block}.section-heading>p{margin-top:24px;font-size:16px}.topics-layout{margin-top:32px}.topic h3 button{font-size:21px;min-height:48px}.topic-content p{font-size:16px}.topic-content span{font-size:14px}.topic-visual img{height:300px}.program-note{align-items:flex-start;flex-direction:column;margin-top:32px;gap:12px}.program-note p{font-size:16px}.program-note a{font-size:14px}.sponsor-art{min-height:420px;padding-top:64px;padding-right:24px}.sponsor-art>img{height:280px}.brand-pill{height:128px;border-radius:64px}.brand-pill span{height:48px;width:48px;top:24px;left:32px}.sponsor-art>p{font-size:20px;padding-top:24px}.dots{bottom:0;gap:10px;grid-template-columns:repeat(5,5px)}.dots span{height:5px;width:5px}.details-grid{gap:48px}.details-intro>p{font-size:16px}.location{margin-top:32px}.location p{font-size:14px}.faq summary{font-size:14px;gap:12px}.faq details p{font-size:14px}.final-section{padding-block:56px}.final-inner{gap:40px}.final-inner h2{font-size:48px}.final-inner>div>p{font-size:16px}.final-ticket{padding:24px}.final-ticket>strong{font-size:88px}.final-ticket>span{font-size:14px}.final-ticket>div{margin-top:32px}.final-ticket>div img{width:124px;height:auto}.footer{padding-top:40px}.footer-main{flex-wrap:wrap;gap:24px}.footer-main>p{width:100%;order:3}.footer-main>div{margin-left:auto}.footer-main>div>span{font-size:14px}.footer-main>div>a{font-size:20px}.footer-main>a img{width:128px;height:auto}.footer-bottom{flex-wrap:wrap;gap:16px;font-size:14px;margin-top:32px}.footer-bottom>span:last-child{width:100%}}
@media(max-width:374px){.hero h1{font-size:40px}.header-cta.button{font-size:14px;padding:10px 12px}.header-inner{gap:8px}.logo{width:112px}.photo-title{font-size:24px}}
@media(min-width:768px) and (max-width:900px){.about,.topics-layout,.sponsor,.details-grid,.final-inner{grid-template-columns:1fr}.about-image img{height:420px}.section-heading{align-items:flex-start;flex-direction:column;gap:24px}.section-heading>p{max-width:520px}.topic-visual img{height:420px}.sponsor-art{max-width:600px}.final-ticket{max-width:100%}.header nav{gap:16px}.header nav a{font-size:13px}.header-inner{gap:16px}.header-cta.button{font-size:12px;padding-inline:16px}.logo{width:124px}}
@media(max-width:767px){.header-cta.button{font-size:12px}.hero-photo .photo-title{font-size:25px;max-width:270px}.invitation-tabs span{font-size:14px}.master span{font-size:14px}.image-note{font-size:14px}.footer-main>div>span{font-size:14px}.footer-bottom{font-size:14px}.final-ticket>span{font-size:14px}.topic-content span{font-size:14px}.hero-copy p{font-size:16px}.header-inner{gap:12px}.menu-toggle{margin-right:-12px}}
@media(max-width:374px){.header-cta.button{font-size:12px;padding-inline:12px;gap:4px}.header-inner{gap:4px}.logo{width:108px}.hero-photo .photo-title{font-size:24px}}
.hero-copy .hero-date{font-size:20px;color:var(--green-text);margin:24px auto 0;font-weight:500}.hero-copy>p:not(.hero-date){max-width:650px;margin-top:16px}.about-copy>p,.sponsor-copy>p,.topic-content p,.faq details p{color:var(--ink);font-size:16px}.section-heading>p{max-width:36ch}.footer-main>p,.details-intro>p{max-width:45ch}
@media(max-width:767px){.hero-copy .hero-date{font-size:16px;max-width:26ch;line-height:1.5}.hero-copy>p:not(.hero-date){font-size:16px}.about-copy>p,.sponsor-copy>p,.topic-content p,.faq details p,.location p,.details-intro>p{font-size:16px}.header-cta.button{font-size:12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;transition-delay:0ms!important}.button:hover,.text-link:hover svg{transform:none}}
@media(prefers-reduced-motion:no-preference){
 .hero h1{animation:hero-title-reveal 760ms var(--ease) both}
 .hero-date{animation:hero-copy-arrive 520ms 140ms var(--ease) both}
 .hero-copy>p:not(.hero-date){animation:hero-copy-arrive 520ms 220ms var(--ease) both}
 .hero-copy>.button{animation:hero-copy-arrive 520ms 300ms var(--ease) both}
}
@keyframes hero-title-reveal{from{clip-path:inset(0 0 100% 0);transform:translateY(.08em)}to{clip-path:inset(0);transform:translateY(0)}}
@keyframes hero-copy-arrive{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
html.motion-enabled [data-reveal]{opacity:0;transition:opacity 650ms var(--ease),transform 650ms var(--ease),clip-path 700ms var(--ease)}
html.motion-enabled [data-reveal="content"]{transform:translateY(20px)}
html.motion-enabled [data-reveal="media"]{clip-path:inset(0 0 14% 0 round 16px);transform:scale(.985)}
html.motion-enabled [data-reveal="content"].is-visible{opacity:1;transform:none}
html.motion-enabled [data-reveal="media"].is-visible{opacity:1;clip-path:inset(0 round 16px);transform:none}
.about-image,.topic-visual{overflow:hidden;border-radius:var(--radius)}
.hero-photo>img,.about-image>img,.topic-visual img,.sponsor-art>img{transition:transform 600ms var(--ease),filter 600ms var(--ease)}
@media(hover:hover) and (pointer:fine){
 .hero-photo:hover>img{transform:scale(1.025);filter:brightness(.53)}
 .about-image:hover>img,.topic-visual:hover img{transform:scale(1.035);filter:saturate(.82)}
 .sponsor-art:hover>img{filter:saturate(.82)}
}
@media(prefers-reduced-motion:reduce){.hero-photo:hover>img,.about-image:hover>img,.topic-visual:hover img{transform:none}}
.reading-progress{position:fixed;inset:0 0 auto;z-index:40;height:3px;background:rgb(43 58 82 / .65);pointer-events:none}
.reading-progress span{display:block;width:100%;height:100%;background:var(--green);transform:scaleX(0);transform-origin:left center}
.word-swap{display:inline-block;position:relative;isolation:isolate;white-space:nowrap;padding-inline:.18em;color:var(--green-ink)}
.word-swap::before{content:'';position:absolute;inset:0;background:var(--green);border-radius:4px;transform:scaleX(1);transform-origin:left center;z-index:-1}
.word-swap.is-leaving{animation:word-label-out 180ms ease-in both}
.word-swap.is-leaving::before{transform-origin:right center;animation:word-block-out 180ms ease-in both}
.word-swap.is-entering{animation:word-label-in 700ms var(--ease) both}
.word-swap.is-entering::before{transform-origin:left center;animation:word-block-in 700ms var(--ease) both}
.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@keyframes word-label-out{to{opacity:0;transform:translateY(-.32em)}}
@keyframes word-block-out{to{transform:scaleX(0)}}
@keyframes word-label-in{0%,45%{opacity:0;transform:translateY(.32em)}100%{opacity:1;transform:translateY(0)}}
@keyframes word-block-in{0%,24%{transform:scaleX(0)}100%{transform:scaleX(1)}}
@media(prefers-reduced-motion:reduce){.word-swap.is-leaving,.word-swap.is-entering{animation:none}.word-swap::before{transform:none!important}}
