/* Shared navigation and the new pages; approved hero and speaker files stay unchanged. */
.site-header nav a{position:relative;padding-block:8px}
.site-header nav a[aria-current="page"]::after{content:"";position:absolute;bottom:0;left:0;width:18px;height:2px;background:var(--red)}
#mobile-menu a[aria-current="page"]{text-decoration:underline;text-decoration-color:var(--red);text-underline-offset:8px}
.site-footer .license{margin-top:50px}
.teaser-section{width:calc(100% - 48px);max-width:1680px;margin:40px auto 30px}
.teaser-card{position:relative;display:block;isolation:isolate;width:100%;aspect-ratio:16/9;border:0;border-radius:12px;overflow:hidden;padding:0;color:#fff;background:#000;text-align:left}
.teaser-poster{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .6s cubic-bezier(.2,.7,.2,1)}
.teaser-card::after{content:"";position:absolute;inset:0;z-index:0;background:linear-gradient(180deg,#0006,transparent 35%,#0001 55%,#000c)}
.teaser-card:hover .teaser-poster{transform:scale(1.025)}
.teaser-card:focus-visible{outline-offset:6px}
.teaser-kicker{position:absolute;z-index:1;left:42px;top:34px;font-size:12px;letter-spacing:.12em}
.teaser-play{position:absolute;z-index:1;left:50%;top:46%;transform:translate(-50%,-50%);width:100px;height:100px;border:1px solid #fff;border-radius:50%;background:#0004;backdrop-filter:blur(8px);display:grid;place-items:center;transition:background .2s,color .2s}
.teaser-play svg{width:32px;height:32px;margin-left:4px}
.teaser-card:hover .teaser-play,.teaser-card:focus-visible .teaser-play{background:#fff;color:#000}
.teaser-caption{position:absolute;z-index:1;inset:auto 42px 40px;display:flex;align-items:flex-end;justify-content:space-between;gap:30px}
.teaser-caption>span:first-child{font-size:clamp(38px,5.1vw,80px);line-height:1.02;letter-spacing:-.045em;font-weight:400}
.teaser-watch{display:flex;align-items:center;gap:30px;font-size:15px;white-space:nowrap;padding-bottom:6px}
.teaser-watch svg{width:25px;height:25px;transform:rotate(-45deg)}
.teaser-duration{position:absolute;z-index:1;right:42px;top:34px;font-size:12px;font-variant-numeric:tabular-nums;letter-spacing:.08em}
.teaser-modal{position:fixed;inset:0;width:min(1440px,calc(100% - 64px));max-width:none;max-height:calc(100dvh - 40px);height:fit-content;margin:auto;border:0;padding:0;overflow:visible;background:transparent;color:#fff}
.teaser-modal::backdrop{background:#000c;backdrop-filter:blur(9px);-webkit-backdrop-filter:blur(9px)}
.teaser-modal-shell{overflow:hidden;border:1px solid #ffffff40;border-radius:14px;background:#000;animation:teaser-enter .28s cubic-bezier(.2,.7,.2,1) both}
.teaser-modal-heading{height:64px;padding:0 18px 0 24px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.teaser-modal-heading h2{font-size:13px;font-weight:500;letter-spacing:.045em;line-height:1.4}
.teaser-modal-heading h2 span{font-weight:400;margin-left:12px}
.teaser-close{display:grid;place-items:center;width:40px;height:40px;border:1px solid #ffffff60;border-radius:50%;background:#000;color:#fff;padding:0;flex-shrink:0}
.teaser-close svg{width:20px;height:20px}
.teaser-close:hover{background:#fff;color:#000}
#teaser-video{display:block;width:100%;height:auto;max-height:calc(100dvh - 108px);background:#000;object-fit:contain}
.teaser-status{padding:12px 24px;font-size:14px}
@keyframes teaser-enter{from{opacity:0;transform:translateY(12px) scale(.985)}to{opacity:1;transform:none}}
.inner-page main{padding-top:var(--header-height)}
.page-intro{padding-block:85px 100px}
.page-intro h1{font-weight:400;font-size:clamp(68px,7.6vw,114px);line-height:1;letter-spacing:-.055em;margin:38px 0 44px}
.red-dot{color:var(--red)}
.page-lead{font-size:23px;line-height:1.5;max-width:720px}
.inner-heading{display:flex;justify-content:space-between;gap:40px;align-items:end;margin-bottom:45px}
.inner-heading h2{font-size:64px;letter-spacing:-.045em}
.inner-heading>p{font-size:18px}
.board-section{padding-block:10px 100px}
.board-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:54px}
.board-portrait{border:1px solid #ffffff40;border-radius:14px;aspect-ratio:4/4.6;display:grid;place-items:center;overflow:hidden;background:#000}
.board-portrait span{font-size:clamp(80px,13vw,200px);line-height:1;font-weight:300;letter-spacing:-.05em}
.board-card .eyebrow{margin-top:24px;font-size:10px;color:var(--red)}
.board-card h3{font-size:36px;margin-top:10px;letter-spacing:-.025em}
.collaborators-section{padding-block:90px 100px;border-top:1px solid #ffffff40}
.collaborators-section h2{font-size:clamp(56px,6.5vw,92px);letter-spacing:-.045em;margin:32px 0}
.collaborators-section>p:not(.eyebrow){max-width:580px;font-size:21px}
.collaborators-section .team-upcoming{font-size:15px!important;margin-top:26px}
.join-section,.partner-invitation{display:grid;grid-template-columns:1fr 1fr;gap:80px;border-top:1px solid #ffffff40;padding-block:85px 100px}
.join-section h2,.partner-invitation h2{font-size:clamp(48px,5.3vw,78px);letter-spacing:-.045em;margin-top:25px}
.join-section>div:last-child,.partner-invitation>div:last-child{align-self:end;max-width:520px}
.join-section .text-link,.partner-invitation .text-link{margin-top:30px}
.inner-page .site-footer{border-top:1px solid #ffffff40}
.contact-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:72px;padding-bottom:100px}
.contact-card{border-top:1px solid #ffffff60;padding-top:28px}
.contact-card h2{font-size:36px;letter-spacing:-.025em;margin:35px 0 22px}
.contact-card>p:not(.eyebrow){font-size:18px;max-width:460px;min-height:54px}
.contact-email{display:flex;justify-content:space-between;align-items:center;gap:16px;font-size:clamp(17px,1.75vw,25px);padding-block:32px 18px;line-height:1.4}
.contact-email span{overflow-wrap:anywhere}
.contact-email svg{width:24px;height:24px;flex:0 0 24px;color:var(--red)}
.contact-email:hover span{text-decoration:underline;text-underline-offset:6px}
@media(min-width:761px) and (max-width:1150px){.header-cta{display:inline-flex;font-size:12px;gap:14px;padding-inline:15px}.site-header{gap:20px}.site-header .logo{width:180px}.site-header nav{gap:22px;font-size:13px}.board-grid{gap:32px}.contact-grid{gap:40px}}
@media(max-width:760px){
 .teaser-section{width:calc(100% - 24px);margin-block:20px 0}
 .teaser-card{aspect-ratio:4/3;border-radius:8px}
 .teaser-poster{object-position:48% center}
 .teaser-kicker{left:18px;top:18px;font-size:9px}
 .teaser-duration{right:18px;top:18px;font-size:10px}
 .teaser-play{width:64px;height:64px;top:42%}
 .teaser-play svg{width:23px;height:23px;margin-left:3px}
 .teaser-caption{inset:auto 18px 21px;gap:10px}
 .teaser-caption>span:first-child{font-size:32px}
 .teaser-watch{font-size:11px;gap:9px;white-space:normal;max-width:80px;line-height:1.4}
 .teaser-watch svg{width:19px;height:19px;flex:0 0 19px}
 .teaser-modal{width:calc(100% - 20px)}
 .teaser-modal-heading{height:56px;padding-inline:14px}
 .teaser-modal-heading h2{font-size:11px}
 .teaser-modal-heading h2 span{margin-left:8px}
 #teaser-video{max-height:calc(100dvh - 100px)}
 .page-intro{padding-block:55px 64px}
 .page-intro h1{font-size:58px;margin:30px 0;letter-spacing:-.05em}
 .page-lead{font-size:19px}
 .inner-heading{display:block;margin-bottom:34px}
 .inner-heading h2{font-size:48px}.inner-heading>p{margin-top:20px;font-size:17px}
 .board-grid{grid-template-columns:1fr;gap:42px;max-width:440px}
 .board-portrait{aspect-ratio:1.12}
 .board-portrait span{font-size:145px}
 .board-card h3{font-size:32px}.board-card .eyebrow{margin-top:18px}
 .board-section{padding-bottom:64px}
 .collaborators-section{padding-block:60px}
 .collaborators-section h2{font-size:56px}.collaborators-section>p:not(.eyebrow){font-size:18px}
 .join-section,.partner-invitation{grid-template-columns:1fr;gap:30px;padding-block:55px 65px}
 .join-section h2,.partner-invitation h2{font-size:48px}
 .contact-grid{grid-template-columns:1fr;gap:55px;padding-bottom:64px}
 .contact-card h2{font-size:32px;margin-top:28px}
 .contact-email{font-size:19px;gap:12px;padding-top:25px}
 .contact-email svg{width:20px;flex-basis:20px}
 .site-footer .license{margin-top:40px}
}
@media(max-width:359px){.page-intro h1{font-size:49px}.teaser-caption>span:first-child{font-size:27px}.contact-email{font-size:16px}}
@media(prefers-reduced-motion:reduce){.teaser-poster,.teaser-play{transition:none}.teaser-modal-shell{animation:none}}

/* Confirmed contact footer, October 2026. */
.site-footer .footer-legal{display:flex;justify-content:space-between;align-items:baseline;gap:24px;margin-top:50px}
.site-footer .footer-legal .license{margin:0}
.site-footer .footer-credit{font-size:11px;white-space:nowrap;margin-left:auto;text-align:right}
.footer-credit a{text-decoration:underline;text-underline-offset:3px}
@media(max-width:760px){.site-footer .footer-legal{flex-direction:column;align-items:flex-start;margin-top:38px;gap:25px}.site-footer .footer-credit{align-self:flex-end}}

/* Five-page navigation keeps the ticket CTA reachable at tablet widths. */
@media(min-width:761px) and (max-width:1020px){.site-header{gap:14px;padding-inline:24px}.site-header .logo{width:155px}.site-header nav{gap:15px;font-size:12px}.site-header .header-cta{font-size:11px;gap:8px;padding-inline:10px}.site-header .header-cta svg{width:18px;height:18px}}
