@font-face{font-family:'Noto Sans';src:url('assets/noto-sans-400.ttf') format('truetype');font-weight:400;font-display:swap}
@font-face{font-family:'Noto Sans';src:url('assets/noto-sans-600.ttf') format('truetype');font-weight:600;font-display:swap}
@font-face{font-family:'Noto Sans';src:url('assets/noto-sans-700.ttf') format('truetype');font-weight:700;font-display:swap}
:root{--red:#d51519;--ink:#171717;--body:#3e4246;--width:1280px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;font-family:'Noto Sans',Arial,sans-serif;font-size:16px;line-height:1.5;color:var(--body);background:#fff}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer}a{color:inherit;text-underline-offset:3px}a:hover{color:var(--red)}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #2378bd;outline-offset:4px}img{max-width:100%;height:auto;display:block}h1,h2,h3,h4,p{margin:0}h1{font-size:2.5rem}h2{font-size:2.125rem;line-height:1.25}h3{font-size:1.25rem;line-height:1.5}h1,h2,h3,h4{color:var(--ink)}.rich p+p{margin-top:.5rem}/* Keep list markers beside their text, even inside centered sections. */
.rich ul,.rich ol{width:fit-content;max-width:100%;margin:1rem auto;padding-inline-start:1.5rem;text-align:left;list-style-position:outside}
.rich li{padding-inline-start:.25rem;text-align:left!important}
.rich li+li{margin-top:.4rem}
.rich li p,.rich li div{text-align:left!important}
.rich li>ul,.rich li>ol{width:auto;margin:.5rem 0}
.rich table{border-collapse:collapse;width:100%;max-width:100%}.rich td,.rich th{padding:8px;border:1px solid #ddd}.rich img{max-width:100%;height:auto}.rich{overflow-wrap:anywhere}.rich iframe{max-width:100%}.skip-link{position:absolute;top:-70px;left:12px;z-index:100;background:white;padding:12px}.skip-link:focus{top:10px}.site-header{position:sticky;top:0;z-index:30;background:#fff;box-shadow:0 1px 10px #0000000a}.nav-wrap{max-width:1280px;margin:auto;display:flex;align-items:center;gap:26px;min-height:72px;padding:8px 0}.brand{width:128px;flex-shrink:0}.brand img{width:128px}nav{flex:1}nav>ul{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;list-style:none;margin:0;padding:0;gap:0 6px}nav li{list-style:none}nav>ul>li>a,.nav-trigger{display:block;background:none;border:0;padding:12px 10px;color:#111;font-weight:700;font-size:16px;text-decoration:none;white-space:nowrap;line-height:1.25}nav>ul>li>a[aria-current],.nav-trigger.active{box-shadow:inset 0 -4px #111}.nav-group{position:relative}.chevron{display:inline-block;width:7px;height:7px;border-bottom:2px solid currentColor;border-right:2px solid currentColor;transform:rotate(45deg);margin:0 3px 3px 10px}.dropdown{position:absolute;top:100%;left:0;min-width:240px;background:#fff;border:1px solid #eee;box-shadow:0 8px 20px #0002;border-radius:0 0 8px 8px;padding:8px;margin:0;display:none}.nav-group.open>.dropdown{display:block}.dropdown a{display:block;text-decoration:none;color:#111;font-size:14px;padding:10px 12px;border-radius:4px}.dropdown a:hover,.dropdown a[aria-current]{background:#fff5f5;color:var(--red)}.menu-toggle{display:none}.section{background-position:center;background-size:cover}.title{margin-bottom:16px}.tag{margin-bottom:12px;font-weight:700;text-transform:uppercase}.text-1,.text-2,.text-3,.text-4,.text-5,.key-figures-1,.speakers-1,.sponsors-2,.sponsors-3,.timeline-1,.text-media-9,.social-post-1{padding:5% max(24px,calc((100% - 1280px)/2))}.text-1>.rich,.text-2>.rich,.text-3>.rich,.text-5>.rich{max-width:1000px;margin-left:auto;margin-right:auto}.text-1,.text-2,.text-4,.text-5,.key-figures-1,.speakers-1,.sponsors-2,.sponsors-3{text-align:center}.text-4 .copy{margin-bottom:32px}.text-cards{display:flex;justify-content:center;flex-wrap:wrap;gap:48px;margin-top:32px}.text-cards article{width:250px}.text-cards .rich:empty{display:none}.compact{padding-bottom:3%}.text-media-1 .hero-inner{max-width:1000px;margin:auto;padding:5% 0}.hero-panel{padding:5%;border-radius:10px;color:#fff}.hero-panel>.rich+.rich{margin-top:16px}.hero-panel h3{color:white}.split{display:flex;align-items:center;gap:64px;max-width:1000px;margin:auto;padding:5% 0}.media-column{flex:1;min-width:0}.text-column{flex:2;min-width:0}.text-media-3 .text-column,.text-media-4 .text-column{flex:1}.text-column>.rich+.rich{margin-top:16px}.media-column img{width:100%;object-fit:contain}.text-infinite-scroll-1{overflow:hidden;padding:16px 0;white-space:nowrap;min-height:56px}.text-infinite-scroll-1>.rich{display:inline-block;animation:marquee 24s linear infinite;padding-left:100%}@keyframes marquee{from{transform:translateX(0)}to{transform:translateX(-100%)}}.media-1 img{width:100%}.media-2{padding:5% 24px;text-align:center}.media-2>img{max-height:600px;width:auto;max-width:100%;margin:24px auto 0;object-fit:contain}.media-3{padding:5% max(24px,calc((100% - 1000px)/2));text-align:center}.image-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:32px}.image-grid img{width:100%;height:100%;object-fit:cover}.image-grid img:first-child{grid-column:1/-1}/* Split photo headers follow the original transport and social pages. */
.cover-3{position:relative;min-height:calc(80vh - 72px);display:flex;align-items:center;overflow:hidden;padding:0}
.cover-inner{width:50%;padding:5% 0 5% max(32px,calc((100vw - 1280px)/2));text-align:left}
.cover-inner>.rich{max-width:80%}
.cover-photo{position:absolute;inset:0 0 0 auto;width:50%;height:100%;object-fit:cover;object-position:center}
.action-1{padding:4% max(24px,calc((100% - 1000px)/2));color:#fff}.action-inner{display:flex;align-items:center;justify-content:space-between;gap:40px}.button{display:inline-block;text-decoration:none;background:#111;border:1px solid #111;color:#fff;padding:12px 22px;border-radius:8px;white-space:normal;text-align:center}.button:hover{background:#333;color:#fff}.button.outlined{background:transparent;color:inherit}.action-inner>.button{flex-shrink:0;background:#fff;color:#111;border-color:#fff}.figures{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;margin-top:24px}.figures article{padding:20px}.timeline{max-width:1000px;margin:24px auto}.timeline article{display:grid;grid-template-columns:180px 1fr;gap:30px;padding:24px 0;border-bottom:1px solid #ddd}.timeline-time{color:var(--red);border-right:3px solid var(--red);padding-right:24px}.speakers,.sponsors{max-width:1280px;margin:32px auto 0;display:grid;grid-template-columns:repeat(3,1fr);gap:40px}.speakers article{padding:24px;background:#fff5f5;border-radius:8px}.speakers img{height:220px;width:220px;object-fit:cover;border-radius:50%;margin:0 auto 20px}.speakers h3{margin-bottom:8px}.sponsors article{text-align:center;min-width:0}.sponsors img{width:100%;height:140px;object-fit:contain;margin:0 auto 16px}.sponsors h3{margin-bottom:12px}details{text-align:left;margin-top:12px}summary{cursor:pointer;color:var(--red);font-weight:600;padding:10px 0}details[open]>.rich{margin-top:12px}.session-list{padding:5% max(24px,calc((100% - 1280px)/2));background:#fff5f5}.session-list>.copy{text-align:center}.program-day{margin:40px 0 24px;font-size:1.75rem}.sessions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;align-items:start}.session{display:grid;grid-template-columns:110px 1fr;gap:20px;padding:24px;background:#fff;border-radius:8px;border-top:4px solid var(--session-color)}.session-time{font-weight:700;color:var(--ink)}.session h3{margin-bottom:8px}.session-place{font-size:14px;color:#666}.map-1{padding:48px 24px;text-align:center}.map-1>.rich{max-width:1000px;margin-left:auto;margin-right:auto}.map-1 .button{margin-top:24px}.feature-items{display:grid;grid-template-columns:repeat(3,1fr);gap:32px;max-width:1000px;margin:32px auto}.site-footer{padding:12px 20px;font-size:14px;text-align:center;color:#222}.site-footer span{padding:0 8px}.back-top{position:fixed;bottom:20px;right:20px;border:0;border-radius:50%;background:#111;color:#fff;width:44px;height:44px;font-size:24px;z-index:20}[hidden]{display:none!important}
@media(min-width:1001px){.nav-group:hover>.dropdown{display:block}}
@media(max-width:1320px){.nav-wrap{padding:8px 24px;gap:16px}.nav-trigger,nav>ul>li>a{font-size:14px;padding:12px 8px}.text-4{padding-left:5%;padding-right:5%}}
@media(max-width:1050px){.split,.text-media-1 .hero-inner{margin:0 24px}}
@media(max-width:1000px){.nav-wrap{justify-content:space-between;min-height:72px;flex-wrap:wrap}.menu-toggle{display:block;border:1px solid #ddd;background:white;border-radius:6px;padding:8px 12px;font-weight:600}.menu-toggle span{margin-left:8px}nav{display:none;flex-basis:100%;max-height:calc(100dvh - 88px);overflow:auto}nav.visible{display:block}nav>ul{display:block}nav>ul>li>a,.nav-trigger{font-size:16px;width:100%;text-align:left;padding:14px 10px}.dropdown{position:static;box-shadow:none;border:0;padding:0 0 8px 20px}.chevron{float:right;margin-top:5px}.sessions{grid-template-columns:1fr}}
@media(max-width:768px){h1{font-size:2rem}h2{font-size:1.75rem}h3{font-size:1.25rem}.text-1,.text-2,.text-3,.text-4,.text-5,.key-figures-1,.speakers-1,.sponsors-2,.sponsors-3,.timeline-1,.text-media-9,.social-post-1{padding:36px 20px}.text-media-1 .hero-inner{padding:36px 0;margin:0 20px}.hero-panel{padding:28px 24px}.split{flex-direction:column;gap:28px;padding:36px 0;margin:0 20px}.text-media-4 .split{flex-direction:column-reverse}.media-column,.text-column{width:100%}.media-column img{max-height:400px}.text-cards{gap:28px}.text-cards article{width:100%}.image-grid,.figures,.feature-items{grid-template-columns:1fr}.image-grid img:first-child{grid-column:auto}.speakers,.sponsors{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.speakers img{width:140px;height:140px}.speakers article{padding:16px}.action-inner{flex-direction:column;text-align:center;gap:24px}.cover-3{min-height:0;flex-direction:column}.cover-inner{width:100%;padding:36px 20px}.cover-inner>.rich{max-width:none}.cover-photo{position:relative;inset:auto;width:100%;height:350px;max-height:350px}.timeline article{grid-template-columns:1fr;gap:12px}.timeline-time{border:0;border-left:3px solid var(--red);padding-left:16px}.session-list{padding:36px 16px}.session{grid-template-columns:1fr;gap:8px;padding:20px}.program-day{font-size:1.5rem}.rich table{display:block;overflow:auto}.rich [style*="width"]{max-width:100%}.site-footer{line-height:1.8}}
@media(max-width:450px){.speakers,.sponsors{grid-template-columns:1fr}.brand{width:128px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.text-infinite-scroll-1{white-space:normal;padding:16px 24px;text-align:center}.text-infinite-scroll-1>.rich{animation:none;padding-left:0}}
@media print{.site-header,.back-top,.skip-link{display:none}body{font-size:11pt}.section{padding:20px!important}.sessions{display:block}.session{break-inside:avoid;margin:12px 0}details>.rich{display:block}.text-infinite-scroll-1>.rich{animation:none;padding-left:0}a{color:inherit}.site-footer{font-size:9pt}}

/* Detailed program: native controls keep filters usable without dependencies. */
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.program-filters{margin:24px 0 32px;padding:20px;background:#fff;border:1px solid #e5dada;border-radius:8px}
.program-filter-groups{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;align-items:start}
.program-filter{margin:0;min-width:0}
.program-filter summary{padding:12px;border:1px solid #ddd;border-radius:6px;color:var(--ink);font-size:16px}
.program-filter[open] summary{border-color:var(--red)}
.program-filter fieldset{border:0;margin:8px 0 0;padding:0;max-height:300px;overflow:auto}
.program-filter label{display:flex;align-items:flex-start;gap:8px;padding:9px 4px;cursor:pointer;text-align:left;font-size:14px}
.program-filter input{width:18px;height:18px;flex-shrink:0;margin:2px 0 0;accent-color:var(--red)}
.program-filter-status{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:20px}
.filter-reset{background:#fff;border:1px solid #aaa;border-radius:6px;padding:8px 14px;color:var(--ink)}
.filter-reset:hover:not(:disabled){border-color:var(--red);color:var(--red)}
.filter-reset:disabled{opacity:.5;cursor:default}
.program-empty{padding:24px;background:#fff;border-left:4px solid var(--red);border-radius:4px}
@media(max-width:1000px){.program-filter-groups{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:500px){.program-filters{padding:16px}.program-filter-groups{grid-template-columns:1fr}.program-filter-status{flex-wrap:wrap}}
@media print{.program-filters{display:none}}

/* Keynote cards: original EPDIC mark replaces the empty timeline column. */
.keynotes{padding-top:32px;padding-bottom:48px}
.keynotes>.title{margin-bottom:28px}
.keynotes>.title h2{font-size:1.75rem}
.keynotes .timeline{display:grid;gap:16px;margin:0 auto}
.keynotes .keynote-card{display:grid;grid-template-columns:80px minmax(0,1fr);align-items:center;gap:24px;padding:24px 28px;background:#fff;border:1px solid #ecdede;border-left:3px solid var(--red);border-radius:8px}
.keynote-brand{display:flex;align-items:center;justify-content:center;width:80px;height:80px}
.keynote-brand img{width:80px;height:80px;object-fit:contain}
.keynote-body{min-width:0;text-align:left}
.keynote-body h3{font-size:1.25rem;line-height:1.35;margin-bottom:6px}
.keynote-body p{line-height:1.6}
.keynote-body .rich p+p{margin-top:12px}
.keynote-body a{text-decoration:none;text-underline-offset:4px}
.keynote-body a:hover{text-decoration:underline}
.keynote-body a em,.keynote-body em a{font-style:normal}
@media(max-width:768px){.keynotes{padding-top:24px;padding-bottom:32px}.keynotes .keynote-card{grid-template-columns:52px minmax(0,1fr);align-items:start;gap:16px;padding:20px 16px}.keynote-brand,.keynote-brand img{width:52px;height:52px}.keynote-body h3{font-size:1.125rem}.keynotes>.title h2{font-size:1.5rem}}

/* Workshop pages share one reading column and clearly separated practical details. */
.workshop-page .text-media-4{background:#fff5f5}
.workshop-page .split{max-width:1120px;margin:0 auto;padding:56px 24px;gap:48px}
.workshop-page .text-media-4 .text-column{flex:1.4}
.workshop-page .text-column .tag{color:var(--red);font-size:14px}
.workshop-page .text-column .title h2{font-size:2rem;line-height:1.25}
.workshop-page .media-column img{max-height:280px;width:100%;object-fit:contain;border-radius:8px}
.workshop-page .text-5{padding:48px max(24px,calc((100% - 1120px)/2));text-align:left}
.workshop-page .text-5>.title{max-width:900px;margin:0 0 24px}
.workshop-page .text-5>.title h2{text-align:left!important;font-size:1.75rem;line-height:1.35}
.workshop-page .text-5>.title em{font-style:normal}
.workshop-page .rich p,.workshop-page .rich li{text-align:left!important;line-height:1.7}
.workshop-page .rich p+p{margin-top:16px}
.workshop-page .rich ul,.workshop-page .rich ol{width:auto;margin:16px 0;padding-inline-start:24px}
.workshop-overview{max-width:900px}
.workshop-overview>h3{margin:28px 0 12px;font-size:1.25rem}
.workshop-practical{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:20px;margin:36px 0}
.workshop-info{min-width:0;background:#fff5f5;border:1px solid #efdede;border-top:3px solid var(--red);border-radius:8px;padding:24px}
.workshop-info h3,.workshop-people h3{font-size:1.125rem;color:var(--red);margin-bottom:12px}
.workshop-info p{font-size:15px}
.workshop-info .workshop-download{display:inline-block;margin-top:8px;padding:10px 14px;border:1px solid var(--red);border-radius:6px;color:var(--red);font-weight:600;font-style:normal;text-decoration:none}
.workshop-download:hover{background:#fff}
.workshop-download em{font-style:normal}
.workshop-team{display:grid;grid-template-columns:1fr 2fr;gap:40px;padding-top:28px;border-top:1px solid #e5e5e5}
.workshop-people{min-width:0}
.workshop-notice{white-space:normal;padding:20px 24px;min-height:0}
.workshop-notice>.rich{display:block;max-width:1120px;margin:0 auto;animation:none;padding-left:0}
.workshop-notice p,.workshop-notice span,.workshop-notice strong{color:#fff!important}
.workshop-index .text-1{padding:48px max(24px,calc((100% - 1120px)/2));text-align:left}
.workshop-index .text-1>.rich{max-width:none}
.workshop-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:28px}
.workshop-option{display:block;background:#fff;padding:24px;border-radius:8px;text-decoration:none;color:var(--ink)}
.workshop-option h3{color:var(--red);margin-bottom:8px}
.workshop-option p{color:var(--body)}
.workshop-option:hover{box-shadow:0 4px 16px #0002}
@media(max-width:900px){.workshop-practical{grid-template-columns:1fr 1fr}.workshop-info:first-child{grid-column:1/-1}}
@media(max-width:768px){.workshop-page .split,.workshop-page .text-media-4 .split{flex-direction:column;gap:28px;padding:32px 20px;margin:0}.workshop-page .text-column .title h2{font-size:1.75rem}.workshop-page .media-column img{max-height:220px}.workshop-page .text-5{padding:32px 20px}.workshop-page .text-5>.title h2{font-size:1.5rem}.workshop-team{grid-template-columns:1fr;gap:28px}.workshop-index .text-1{padding:32px 20px}.workshop-options{grid-template-columns:1fr;gap:16px}}
@media(max-width:500px){.workshop-practical{grid-template-columns:1fr;gap:16px}.workshop-info:first-child{grid-column:auto}.workshop-info{padding:20px}}

/* Sponsors: shared margins, evenly sized logo areas, and aligned card controls. */
.sponsors-page .action-1{padding:40px max(24px,calc((100% - 1120px)/2))}
.sponsors-page .action-inner{max-width:1120px;margin:0 auto;text-align:left}
.sponsors-page .sponsor-section{padding:32px max(24px,calc((100% - 1120px)/2));text-align:left}
.sponsor-section>.title{border-left:4px solid var(--tier-color);padding-left:16px;margin:0 0 24px}
.sponsor-section>.title h2{font-size:1.75rem;text-align:left!important;line-height:1.3}
.sponsor-section>.title h2 span{color:var(--ink)!important}
.sponsor-section>.copy{margin:0 0 24px}
.sponsor-section>.copy p{text-align:left!important}
.sponsors-page .sponsors{margin:0;gap:24px;grid-template-columns:repeat(3,minmax(0,1fr));align-items:start}
.sponsors-page .sponsors-pair{grid-template-columns:repeat(2,minmax(0,1fr))}
.sponsors-page .sponsor-card{padding:24px;background:#fff;border:1px solid #e3e3e3;border-top:3px solid var(--tier-color);border-radius:8px;min-width:0}
.sponsors-page .sponsor-card>img{height:128px;width:100%;object-fit:contain;margin:0 0 20px}
.sponsors-page .sponsor-card>h3{font-size:1.125rem;line-height:1.5;min-height:3em;margin:0 0 16px;display:flex;align-items:center;justify-content:center}
.sponsors-page .sponsor-card>details{margin:0;border-top:1px solid #eee}
.sponsors-page .sponsor-card summary{padding:14px 0 0}
.sponsors-page .sponsor-card details p{line-height:1.7;text-align:left}
.sponsors-page .sponsor-card details>.rich{margin-top:16px}
.sponsors-page .sponsor-card details>p:last-child{margin-top:16px}
.sponsors-page>.media-1{margin-top:32px}
/* Photos: a centered photograph and two clearly separated gallery links. */
.photos-page .photos-hero{max-width:1168px;margin:0 auto;padding:40px 24px 0}
.photos-hero h1{font-size:2.125rem;line-height:1.25;margin-bottom:24px}
.photos-hero img{width:100%;height:auto;border-radius:8px}
.photo-galleries{max-width:1168px;margin:0 auto;padding:32px 24px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.photo-gallery{padding:28px;border:1px solid #e4dede;border-top:3px solid var(--red);border-radius:8px;display:flex;flex-direction:column;align-items:flex-start;text-align:left}
.photo-gallery h2{font-size:1.5rem;line-height:1.35;margin-bottom:12px}
.photo-gallery p{line-height:1.7;margin-bottom:24px}
.photo-gallery .button{margin-top:auto;background:var(--red);border-color:var(--red)}
.photo-gallery .button:hover{background:#b91217}
.photo-usage-note{grid-column:1/-1;font-size:14px;line-height:1.6;color:#555}
.photos-page .photo-contact{max-width:1120px;margin:0 auto 40px;border-top:1px solid #e5e5e5;padding:0}
.photo-contact .split{max-width:none;padding:28px 0;margin:0;gap:24px;justify-content:flex-start}
.photo-contact .media-column{flex:0 0 88px}
.photo-contact .media-column img{width:88px;height:88px;object-fit:contain}
.photo-contact .text-column{flex:1}
.photo-contact .text-column>.rich+.rich{margin-top:8px}
.photo-contact .title{margin-bottom:0}
@media(max-width:900px){.sponsors-page .sponsors{grid-template-columns:repeat(2,minmax(0,1fr))}.photos-page .photo-contact{margin-left:24px;margin-right:24px}}
@media(max-width:768px){.sponsors-page .action-inner{align-items:flex-start;text-align:left}.sponsors-page .sponsor-section{padding:28px 20px}.sponsor-section>.title h2{font-size:1.5rem}.sponsors-page .sponsors{gap:16px}.sponsors-page .sponsor-card{padding:20px}.photos-page .photos-hero{padding:32px 20px 0}.photo-galleries{padding:24px 20px;grid-template-columns:1fr;gap:20px}.photo-gallery{padding:24px}.photos-page .photo-contact{margin:0 20px 28px}.photo-contact .split{flex-direction:row;gap:20px;padding:24px 0}.photo-contact .media-column{width:72px;flex-basis:72px}.photo-contact .media-column img{width:72px;height:72px}.photo-contact .text-column{width:auto}}
@media(max-width:550px){.sponsors-page .sponsors,.sponsors-page .sponsors-pair{grid-template-columns:1fr}.sponsors-page .sponsor-card>img{height:112px}.sponsors-page .sponsor-card>h3{min-height:0}}

/* Awards: keep each recipient's portrait, lecture, and chair together. */
.awards-page .awards-intro{padding:40px max(24px,calc((100% - 1120px)/2));text-align:left}
.awards-intro h1{font-size:2.125rem;margin-bottom:24px}
.awards-page .awards-intro>.rich{max-width:1120px;margin:0}
.awards-intro .copy p{line-height:1.7}
.awards-intro .copy p+p{margin-top:16px}
.awards-page .award-section{padding:24px max(24px,calc((100% - 1120px)/2)) 32px;text-align:left}
.award-section>.title{padding-left:16px;border-left:4px solid var(--red);margin-bottom:24px}
.award-section>.title h2{text-align:left!important;font-size:1.75rem;line-height:1.35}
.award-recipients{display:grid;gap:20px}
.award-recipient{display:grid;grid-template-columns:128px minmax(0,1fr);gap:28px;align-items:start;padding:28px;border:1px solid #e6dede;border-left:3px solid var(--red);border-radius:8px}
.award-portrait{width:128px;height:128px;border-radius:50%;object-fit:cover}
.award-body{min-width:0}
.award-body h3{text-align:left!important;font-size:1.5rem;line-height:1.35;margin-bottom:12px}
.award-body h3 em{font-style:normal}
.award-body p{text-align:left!important;line-height:1.65}
.award-affiliation{margin-bottom:12px;color:#666}
.award-lecture a{color:var(--red);text-decoration:none;text-underline-offset:4px}
.award-lecture a:hover{text-decoration:underline}
.award-lecture em{font-style:normal}
.award-lecture strong{font-weight:600}
.award-chair{margin-top:20px;padding-top:12px;border-top:1px solid #eee;font-size:14px}
.award-chair-label{font-weight:700;margin-bottom:4px}
@media(max-width:768px){.awards-page .awards-intro{padding:32px 20px 20px}.awards-page .award-section{padding:24px 20px}.award-section>.title h2{font-size:1.5rem}.award-recipient{grid-template-columns:72px minmax(0,1fr);gap:20px;padding:20px}.award-portrait{width:72px;height:72px}.award-body h3{font-size:1.25rem}}
@media(max-width:450px){.award-recipient{grid-template-columns:56px minmax(0,1fr);gap:16px;padding:20px 16px}.award-portrait{width:56px;height:56px}}

/* Plenary speakers: carry the conference red through the heading and portraits. */
.plenary-page .speakers-1>.title{max-width:1280px;margin:0 auto 32px;padding:32px 24px;background:var(--red);border-radius:8px}
.plenary-page .speakers-1>.title h2,.plenary-page .speakers-1>.title span{color:#fff!important}
.plenary-page .speakers-1>.rich:not(.title)>p>strong{color:var(--red)}
.plenary-page .speakers{gap:24px;margin-top:40px;align-items:stretch}
.plenary-page .speakers article{background:#fff;border:1px solid #ecdede;border-top:5px solid var(--red);padding:28px 24px}
.plenary-page .speakers img{border:3px solid var(--red);padding:5px;background:#fff}
.plenary-page .speakers h3{color:var(--red);margin-bottom:10px}
.plenary-page .speakers article p{line-height:1.6}
@media(max-width:768px){.plenary-page .speakers-1>.title{padding:24px 20px;margin-bottom:24px}.plenary-page .speakers{gap:20px}.plenary-page .speakers article{padding:24px 16px}}

/* Exhibitor category colors remain visible on each disclosure button. */
.sponsors-page .sponsor-card>details{border-top:0}
.sponsors-page .sponsor-card summary{padding:12px 16px;min-height:48px;background:var(--tier-button-background,var(--tier-color));color:var(--tier-button-text,#fff);border-radius:6px;line-height:1.5}
.sponsors-page .sponsor-card summary:hover{filter:brightness(.96)}
.sponsors-page .sponsor-card summary::marker{color:currentColor}
.sponsors-page .sponsor-card details[open] summary{margin-bottom:16px}
