.speaker-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.speaker-card{border:1px solid var(--line);border-radius:20px;overflow:hidden;background:var(--panel);padding:16px}
.speaker-portrait{aspect-ratio:1/1.05;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:18px;border-radius:12px;margin-bottom:24px;background:radial-gradient(ellipse at 30% 20%,#3975d647,transparent 65%),linear-gradient(145deg,#152e53,#0c1424);color:#d1e3ff;border:1px solid #7aa9f030}
.speaker-portrait>span{font-size:66px;line-height:1;font-weight:500;letter-spacing:-4px}
.speaker-portrait>small{font-size:8px;letter-spacing:1.4px;color:#adc4e7}.speaker-card.guest .speaker-portrait{background:radial-gradient(ellipse,#568de02a,transparent 60%),#101c32}
.speaker-role{font-size:9px;letter-spacing:1px;font-weight:600;color:var(--accent);margin:0 0 10px}.speaker-card h3{font-size:24px;margin-bottom:12px;letter-spacing:-.7px}.speaker-card>p:not(.speaker-role){font-size:12px;line-height:1.8;min-height:64px}.speaker-card .text-link{font-size:11px}.speaker-host{padding:22px 0 0;font-size:13px}.speaker-host strong{color:var(--text)}
.detailed-timeline article{grid-template-columns:120px 1fr;gap:24px;position:relative}.detailed-timeline .timeline-time{font-size:18px}.detailed-timeline h3{margin:12px 0;font-size:25px}.detailed-timeline .tag{font-size:9px;letter-spacing:.4px;white-space:normal;line-height:1.6}
.estate-film{margin-top:44px}.film-screen{position:relative;isolation:isolate;overflow:hidden;border-radius:20px;background:#101a29;color:#fff;aspect-ratio:16/9}
.film-screen video{width:100%;height:100%;display:block;object-fit:cover}.film-screen:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,#05101a70,transparent 30%,#05101a25 48%,#05101aeb 100%);z-index:1}
.film-topline{position:absolute;inset:28px 32px auto;display:flex;justify-content:space-between;font-size:9px;letter-spacing:2px;color:#eef4ff;z-index:2}.film-topline span:last-child{padding-right:135px}
.film-control{position:absolute;right:24px;top:17px;z-index:3;border:1px solid #ffffff65;border-radius:30px;background:#081525a6;backdrop-filter:blur(12px);color:#fff;min-width:108px;min-height:44px;font-size:11px;padding:10px 18px}
.film-caption{position:absolute;left:40px;bottom:36px;right:40px;z-index:2;max-width:560px}.film-caption>span{display:block;font-size:10px;letter-spacing:1.7px;color:#b7d2ff;font-weight:600;margin-bottom:14px}.film-caption h3{font-size:clamp(30px,4.1vw,56px);letter-spacing:-1.8px;line-height:1.05;margin:0 0 15px;text-wrap:balance}.film-caption p{color:#e0e7f1;font-size:13px;line-height:1.7;max-width:410px;margin:0}
.film-progress{position:absolute;bottom:0;left:0;right:0;height:3px;background:#ffffff20;z-index:3}.film-progress span{display:block;width:100%;height:100%;transform:scaleX(0);transform-origin:left;background:#8cb8ff}
.film-chapters{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-bottom:1px solid var(--line)}.film-chapters button{position:relative;text-align:left;padding:26px 22px 28px 0;margin-right:22px;color:var(--text);background:transparent;border:0;min-width:0}.film-chapters button:before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:transparent}.film-chapters button[aria-current]:before{background:var(--accent)}.film-chapters button>span{display:block;color:var(--muted);font-size:9px;letter-spacing:1.1px;margin-bottom:10px}.film-chapters button[aria-current]>span{color:var(--accent)}.film-chapters strong{display:block;font-weight:500;font-size:19px;line-height:1.3;letter-spacing:-.5px;margin-bottom:8px}.film-chapters small{display:block;color:var(--muted);font-size:11px;line-height:1.6}.film-disclaimer{font-size:10px;line-height:1.6;margin:16px 0 0;max-width:680px}
@media(prefers-reduced-motion:no-preference){.film-caption.is-changing{animation:film-caption-in .45s ease-out}@keyframes film-caption-in{from{opacity:.4;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}}
@media(max-width:1000px){.speaker-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.film-chapters strong{font-size:16px}}
@media(max-width:700px){.speaker-grid{gap:12px}.speaker-card{padding:12px}.speaker-card h3{font-size:21px}.speaker-portrait>span{font-size:50px}.speaker-portrait>small{font-size:6px;letter-spacing:.6px}.speaker-role{font-size:8px}.detailed-timeline article{grid-template-columns:93px 1fr;gap:16px}.detailed-timeline .timeline-time{font-size:15px}.detailed-timeline h3{font-size:22px}
.film-screen{aspect-ratio:auto;border-radius:14px}.film-screen video{aspect-ratio:16/9;height:auto;object-fit:contain}.film-screen:after{background:linear-gradient(180deg,#05101a60,transparent 30%);bottom:auto;height:70px}.film-topline{inset:17px 16px auto;font-size:7px;letter-spacing:1px}.film-topline span:last-child{display:none}.film-control{top:8px;right:8px;min-width:85px;min-height:36px;font-size:10px;padding:7px 12px}.film-caption{position:relative;inset:auto;min-height:215px;padding:26px 22px 30px;max-width:none;background:#101a29}.film-caption h3{font-size:31px;letter-spacing:-1px}.film-caption p{font-size:12px}.film-caption>span{font-size:8px}.film-chapters{grid-template-columns:1fr 1fr}.film-chapters button{padding:20px 8px 20px 0;margin-right:12px}.film-chapters strong{font-size:17px}.film-chapters button>span{font-size:8px}.estate-film{margin-top:30px}}
.film-caption h3{white-space:pre-line}
@media(min-width:701px){.phone-scene .film-caption{max-width:26%;bottom:40px}.phone-scene .film-caption h3{font-size:clamp(24px,2.5vw,36px)}.phone-scene .film-caption p{font-size:12px}.phone-scene .film-screen:after{background:linear-gradient(90deg,#05101aa8,transparent 40%),linear-gradient(180deg,#05101a50,transparent 18%)}}
@media(min-width:701px){.phone-scene .film-caption{visibility:hidden}.phone-scene .film-screen:after{background:linear-gradient(180deg,#05101a30,transparent 18%)}}
.speaker-portrait.has-photo{position:relative;overflow:hidden;padding:0;display:block;background:#0879dd}.speaker-portrait.has-photo img{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 32%}
@media(min-width:701px){.studio-scene .film-caption{visibility:hidden}.studio-scene .film-screen:after{display:none}}
.hero .hero-grid{display:flex;flex-direction:column;gap:34px;align-items:center}.hero .event-cover{width:100%;max-width:620px}.hero .hero-copy{width:100%;max-width:850px;text-align:center}.hero .hero-copy h1{font-size:clamp(36px,4.5vw,60px);margin-bottom:0}.hero .hero-copy h1 span{max-width:none;font-size:.53em;margin:16px auto 0}.hero .hero-actions{justify-content:center;margin-top:28px}.hero{padding-top:28px}.hero .hero-copy .eyebrow{margin-bottom:14px}
/* One fluid composition: wide artwork on desktop, stacked content on mobile. */
.hero .hero-grid{gap:clamp(24px,3vw,40px);min-width:0}
.hero .event-cover{max-width:none;display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);grid-template-rows:auto 1fr auto;gap:12px 32px;padding:clamp(20px,3vw,40px);min-width:0}
.hero .cover-top{grid-column:1;grid-row:1;justify-content:flex-start;font-size:12px}
.hero .cover-title{grid-column:1;grid-row:2;align-self:center;font-size:clamp(26px,3.5vw,44px);margin:8px 0}
.hero .cover-city{grid-column:2;grid-row:1/4;align-self:center;min-width:0;margin:0}
.hero .cover-city svg{width:100%;height:auto;display:block}
.hero .cover-bottom{grid-column:1;grid-row:3;border:0;padding:0;display:block}
.hero .cover-bottom .cover-date{font-size:clamp(52px,6vw,76px);line-height:.95;letter-spacing:-3px}
.hero .cover-date span{font-size:12px;letter-spacing:2px;margin-top:10px}
.hero .event-cover .art-caption{grid-column:2;grid-row:4;text-align:right;margin:0;font-size:12px}
.hero .hero-copy{min-width:0}.hero .hero-copy h1{font-size:clamp(30px,4.5vw,60px);letter-spacing:-.04em}
@media(max-width:700px){.hero .hero-grid{gap:26px}.hero .event-cover{grid-template-columns:minmax(0,1fr) minmax(0,1.3fr);gap:16px 12px;padding:22px 18px}.hero .cover-top{grid-column:1/-1}.hero .cover-title{grid-column:1/-1;grid-row:2;font-size:clamp(26px,6vw,36px);margin:0}.hero .cover-city{grid-column:2;grid-row:3}.hero .cover-bottom{grid-column:1;grid-row:3;align-self:center}.hero .event-cover .art-caption{grid-column:1/-1;grid-row:4;font-size:11px}.hero .hero-copy{text-align:left}.hero .hero-copy h1{font-size:clamp(30px,8vw,38px);letter-spacing:-1.2px}.hero .hero-copy h1 span{font-size:clamp(20px,5.4vw,23px);letter-spacing:-.7px;line-height:1.35}.hero .hero-actions{justify-content:flex-start}.hero .hero-actions .button{width:100%}.hero .hero-copy .eyebrow{font-size:11px;letter-spacing:1px}}
