/* Original event design: editorial structure, shared purpose, people first. */
.conference-page{--red:#a21e29;--ink:#191919;--paper:#faf8f3;color:var(--ink);background:var(--paper)}
.conference-page header{background:#fff;border-bottom:1px solid #dedbd5;padding:8px 5%;gap:24px}.conference-page header img{width:142px;height:auto}.conference-page nav{gap:25px;font-size:14px}.conference-page .nav-ticket{background:var(--red);padding:16px 22px}.conference-page .draft{font-size:12px;background:#eeece7;color:#68655e}
.conference-page .section{padding:90px 7%}.conference-page .eyebrow{color:var(--red);font-size:12px;letter-spacing:.16em;font-weight:600;margin-bottom:24px}.conference-page h2{letter-spacing:.015em;line-height:1.55}.conference-page .main-visual{width:100%;height:auto}.conference-page .about{display:grid;grid-template-columns:1.1fr 1fr;gap:7%;padding-top:95px;padding-bottom:65px;border-bottom:0}.conference-page .about h2{font-size:clamp(29px,3vw,43px);font-family:'Yu Mincho','Hiragino Mincho ProN',serif}.conference-page .prose{padding-top:40px}.conference-page .prose p{font-size:16px;line-height:2.1;margin:0}.conference-page .prose .concept-summary{color:#69645c;font-size:14px;margin-top:18px}.conference-page .audience-chips{margin-top:27px;gap:13px}.conference-page .audience-chips span{padding:0;border:0;border-radius:0;background:none;color:#78716a;font-size:12px}
.conference-page .photo-experience{padding-top:20px;padding-bottom:95px}.conference-page .photo-experience .section-head{margin-bottom:30px}.conference-page .photo-experience h2{font-size:28px}.conference-page .photo-experience .eyebrow{margin-bottom:10px}.conference-page .experience-photo-grid{gap:24px}.conference-page .photo-story figure{aspect-ratio:1.05}.conference-page .photo-caption{left:25px;bottom:24px}.conference-page .photo-caption h3{font-size:27px}.conference-page .photo-caption>span{font-size:12px}.conference-page .photo-story-copy b{font-size:16px}.conference-page .photo-story-copy p{font-size:14px;line-height:1.85;color:#68645e}.conference-page .experience-image-note{font-size:12px;margin-top:18px;color:#8b8479}
.conference-page #speakers{background:#171717;color:#fff;padding-top:85px;padding-bottom:85px}.conference-page #speakers>.eyebrow{color:#ee8b88}.conference-page .people-heading h2{font-size:clamp(32px,3.5vw,48px);line-height:1.45;font-family:'Yu Mincho','Hiragino Mincho ProN',serif}.conference-page .section-intro{margin-top:20px}.conference-page .people-notice{color:#c1bbb3;font-size:13px}.conference-page .speaker-grid{margin-top:42px;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px 25px}.conference-page .speaker-card{background:#fff;color:var(--ink);border:0;border-radius:0;box-shadow:none;overflow:hidden}.conference-page .speaker-portrait{aspect-ratio:1.03;background:#eeece8;overflow:hidden}.conference-page .speaker-portrait img{filter:none;transition:transform .4s;object-fit:cover;width:100%;height:100%}.conference-page .speaker-card:hover .speaker-portrait img{transform:scale(1.025)}.conference-page .speaker-info{padding:23px 24px 27px;border-top:3px solid var(--red)}.conference-page .speaker .field{font-size:12px;letter-spacing:.07em;color:var(--red);margin-bottom:11px}.conference-page .speaker h3{font-size:26px;letter-spacing:0;line-height:1.5;margin-bottom:12px}.conference-page .speaker p{font-size:14px;color:#66615b;line-height:1.8;min-height:76px}.conference-page .speaker-profile{font-size:12px;margin-top:15px;margin-bottom:0;color:#8e2932}.conference-page .speaker-portrait:has(.portrait-1){display:flex;align-items:center;justify-content:center}.conference-page .speaker-portrait .portrait-1{width:62%;height:62%;max-width:210px;max-height:210px;object-fit:contain}.conference-page .speaker-portrait .portrait-7{object-position:50% 66%}.conference-page .speaker-portrait .portrait-8{object-position:70% 45%}.conference-page .source-note{font-size:12px;color:#a9a298;margin-top:27px}
.conference-page .program{background:#faf8f3;color:var(--ink)}.conference-page .program .section-head{margin:0;padding:0 0 25px;border-top:0;border-bottom:1px solid #c9c3b8;align-items:center}.conference-page .program h2.timetable-heading{font-size:15px;color:var(--red);margin:0}.conference-page .program .section-head>p{font-size:16px;color:var(--ink)}.conference-page .program .small{font-size:12px;color:#797267}.conference-page .program-format{font:600 13px Arial,sans-serif;letter-spacing:.08em;padding:24px 0;color:var(--red)}.conference-page .program-format span{font:13px sans-serif;letter-spacing:0;color:#777168;margin-left:18px}.conference-page .program-layout{display:block;margin-top:0}.conference-page .timeline{max-width:none}.conference-page .slot{display:grid;grid-template-columns:180px 1fr;padding:27px 0;border-bottom:1px solid #ddd7cb;gap:30px}.conference-page .slot time{font-size:21px;font-family:Arial,sans-serif;color:var(--ink);line-height:1.6}.conference-page .slot h3{font-size:23px;color:var(--ink);line-height:1.5}.conference-page .slot p{font-size:14px;color:#716a60;margin-top:7px;line-height:1.9}.conference-page .tag{font:11px Arial,sans-serif;letter-spacing:.13em;color:var(--red);margin-bottom:7px;background:none;padding:0}.conference-page .break{padding:15px 0;font-size:13px;color:#817a70;display:grid;grid-template-columns:180px 1fr;gap:30px;border-bottom:1px solid #ddd7cb}.conference-page .special,.conference-page .night{background:none;border-left:0;margin:0;padding:27px 0}.conference-page .night h3{color:var(--red)}
.conference-page .workshop{background:#efeae0;padding:65px 7%}.conference-page .workshop-layout{grid-template-columns:1fr 1fr;gap:65px}.conference-page .workshop h2{font-size:34px;font-family:'Yu Mincho',serif}.conference-page .workshop-copy>p:last-child{font-size:16px;line-height:2}.conference-page .workshop-photo{aspect-ratio:1.6}.conference-page .workshop-steps{margin-top:40px;padding-top:30px;gap:30px}.conference-page .workshop-steps article>span{font-size:35px;color:#a12d35}.conference-page .workshop-steps small{display:none}.conference-page .workshop-steps h3{font-size:18px}.conference-page .workshop-steps p{font-size:14px}.conference-page .workshop-photo figcaption{font-size:12px}
.banquet-feature{display:grid;grid-template-columns:1.1fr 1fr;background:#56151d;color:white}.banquet-feature figure{margin:0;min-height:530px;overflow:hidden}.banquet-feature figure img{width:100%;height:100%;object-fit:cover;object-position:53% center}.banquet-copy{padding:65px 10%}.banquet-copy .eyebrow{color:#e7b6b5;margin-bottom:20px}.banquet-copy h2{font-family:'Yu Mincho','Hiragino Mincho ProN',serif;font-size:52px;margin:0 0 25px}.banquet-copy .banquet-lead{font-size:25px;line-height:1.7;margin-bottom:22px}.banquet-copy>p:not(.eyebrow):not(.banquet-lead){font-size:15px;line-height:2;color:#e8d5d5}.banquet-meta{border-top:1px solid #b1787d;padding-top:20px;margin-top:26px;display:flex;flex-direction:column;gap:7px;font-size:12px;color:#dcbfc0}.banquet-copy>a{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #bb8c91;padding:18px 0;margin-top:18px;font-size:14px;color:white}
.conference-page .partner-gallery{background:white}.conference-page .partner-gallery h2{font-size:32px}.conference-page .partner-tier{grid-template-columns:210px 1fr;padding:35px 0;border-color:#e1dbd3}.conference-page .rank-logo{background:#faf9f6;border-color:#e8e3da}.conference-page .tier-label h3{color:#26211e;font-size:12px}.conference-page .tier-label>span{color:#817970;font-size:13px}.conference-page .partner-note{font-size:12px;color:#867e72}.conference-page .access{background:#f3f0e8;gap:50px}.conference-page .access h2{font-size:27px}.conference-page .access p{font-size:15px}.conference-page .event-facts b{font-size:14px}.conference-page .event-facts span{font-size:13px}.conference-page .text-link{font-size:14px}.conference-page .home-ticket-gateway{padding:65px 7%;background:#171717;color:#fff;gap:35px}.conference-page .home-ticket-gateway .eyebrow{color:#e7a1a1}.conference-page .home-ticket-gateway h2{font-family:'Yu Mincho',serif;font-size:38px}.conference-page .home-ticket-gateway p{font-size:15px;color:#cfc8bf}.conference-page .gateway-action .button{background:#a8202a;color:#fff;border-color:#a8202a;padding:22px 30px;font-size:16px}.conference-page .gateway-action small{font-size:12px;color:#beb6ad}.conference-page footer{background:#fff;color:#71695e}.conference-page a:focus-visible{outline:3px solid #c9682e;outline-offset:5px}
@media(max-width:900px){.conference-page nav{gap:14px}.conference-page nav>a:not(.nav-ticket){font-size:12px}.conference-page .about{gap:35px;grid-template-columns:1fr 1fr}.conference-page .speaker h3{font-size:22px}.conference-page .speaker-info{padding:18px}.conference-page .speaker p{font-size:13px;min-height:96px}.banquet-copy{padding:45px 8%}.banquet-copy h2{font-size:40px}.banquet-copy .banquet-lead{font-size:23px}.banquet-feature figure{min-height:490px}}
@media(max-width:650px){.conference-page header{padding:7px 5%;gap:16px}.conference-page header img{width:110px}.conference-page nav{gap:0}.conference-page nav>a:not(.nav-ticket){display:none}.conference-page .nav-ticket{font-size:13px;padding:13px 17px}.conference-page .section{padding:55px 6%}.conference-page .about{display:block;padding-top:50px;padding-bottom:35px}.conference-page .about h2{font-size:29px}.conference-page .prose{padding-top:22px}.conference-page .prose p{font-size:15px}.conference-page .prose p br{display:none}.conference-page .audience-chips{gap:12px;margin-top:21px}.conference-page .eyebrow{margin-bottom:18px}.conference-page .photo-experience{padding-top:15px}.conference-page .photo-experience h2{font-size:23px}.conference-page .experience-photo-grid{grid-template-columns:1fr;gap:29px}.conference-page .photo-story figure{aspect-ratio:1.3}.conference-page .photo-caption h3{font-size:27px}.conference-page #speakers{padding:55px 6%}.conference-page .people-heading h2{font-size:33px}.conference-page .speaker-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 12px;margin-top:27px}.conference-page .speaker-portrait{aspect-ratio:.88}.conference-page .speaker-info{padding:15px 12px 18px}.conference-page .speaker h3{font-size:20px}.conference-page .speaker .field{font-size:12px;line-height:1.5}.conference-page .speaker p{font-size:12px;min-height:110px}.conference-page .speaker-profile{font-size:12px}.conference-page .program .section-head{display:block}.conference-page .program .section-head>p{font-size:14px;margin-top:16px}.conference-page .slot{grid-template-columns:1fr;gap:9px;padding:23px 0}.conference-page .slot time{font-size:17px}.conference-page .slot h3{font-size:21px}.conference-page .slot p{font-size:14px}.conference-page .break{grid-template-columns:120px 1fr;gap:12px;font-size:12px}.conference-page .workshop{padding:50px 6%}.conference-page .workshop-layout{display:flex;flex-direction:column;gap:25px;align-items:stretch}.conference-page .workshop h2{font-size:29px}.conference-page .workshop-steps{grid-template-columns:1fr;margin-top:25px;gap:24px}.conference-page .workshop-photo{width:100%}.banquet-feature{grid-template-columns:1fr}.banquet-feature figure{min-height:0;aspect-ratio:1.2}.banquet-copy{padding:35px 6% 45px}.banquet-copy h2{font-size:44px}.banquet-copy .banquet-lead{font-size:24px}.banquet-copy>p br{display:none}.conference-page .partner-tier{display:block;padding:27px 0}.conference-page .partner-gallery h2{font-size:28px}.conference-page .access h2{font-size:24px}.conference-page .home-ticket-gateway{padding:45px 6%;display:block}.conference-page .home-ticket-gateway h2{font-size:29px}.conference-page .gateway-action{margin-top:25px}.conference-page .gateway-action .button{display:flex;width:100%;justify-content:space-between}}
@media(prefers-reduced-motion:reduce){.conference-page .speaker-portrait img{transition:none}.conference-page .speaker-card:hover .speaker-portrait img{transform:none}}

/* Faceted festival visual: full bleed, no duplicate title or dates. */
.conference-page .festival-hero{background:#88888e;overflow:hidden}.conference-page .festival-hero .main-visual{display:block;width:100%;height:auto;animation:festival-reveal .9s ease-out both}.conference-page .festival-hero+section{position:relative;background:var(--paper)}@keyframes festival-reveal{from{opacity:.3;transform:scale(1.025)}to{opacity:1;transform:scale(1)}}@media(prefers-reduced-motion:reduce){.conference-page .festival-hero .main-visual{animation:none}}

/* Restore readable text after changing the workshop from dark to light. */
.conference-page .workshop{background:#f4f1ea;color:#242424}
.conference-page .workshop h2,.conference-page .workshop h3{color:#242424}
.conference-page .workshop-copy .eyebrow{color:#92212c}
.conference-page .workshop-copy>p:last-child,.conference-page .workshop-steps p{color:#44413c}
.conference-page .workshop-steps{border-top-color:#bdb5a8}
.conference-page .workshop-steps article>span{color:#92212c}
.conference-page .workshop-photo figcaption{background:#ffffff;color:#38352f}

.confirmed-speakers{display:grid;grid-template-columns:1fr 1fr;gap:32px;margin:28px 0 50px}.confirmed-speakers article{border-top:3px solid #d85c65;padding:24px 0}.confirmed-speakers h3{font-size:30px;margin:10px 0 18px}.confirmed-speakers p{font-size:15px;color:#d4cfca;line-height:1.8}.confirmed-speakers .confirmed-label{font-size:13px;color:#ffb8bc}.confirmed-speakers article p+p{margin-top:8px}@media(max-width:650px){.confirmed-speakers{grid-template-columns:1fr;gap:12px}.confirmed-speakers h3{font-size:26px}}
