/* Maritime archive: shared Home/About tokens and responsive, semantic content. */
.past-page{background-image:url('../images/past/2280-1289-Uuid1E08462295F64752B5980492Facbb607.svg');background-size:89vw auto;background-position:center 61rem;background-repeat:repeat-y}
.past-hero .hero-subtitle{margin-top:1.875rem!important;font-size:1.75rem!important;line-height:1.2!important;text-transform:uppercase}.past-hero h1{font-size:5rem;line-height:1.125}.past-layout{width:95rem;max-width:calc(100% - 48px);margin:3.75rem auto 6.25rem;display:grid;grid-template-columns:22.625rem minmax(0,1fr);gap:1.5rem;align-items:start}.past-sidebar{background:#20155f;padding:.625rem 1.5rem;font-size:1.25rem;font-weight:700}.past-sidebar>a,.past-sidebar>details{display:block;border-bottom:1px solid #ffffff26}.past-sidebar>a{padding:1.25rem 0}.past-sidebar>details:last-child{border-bottom:0}.past-sidebar a,.past-sidebar summary{color:#ffffff80}.past-sidebar summary{padding:1.25rem 1.5rem 1.25rem 0;list-style:none;position:relative;cursor:pointer}.past-sidebar summary::-webkit-details-marker{display:none}.past-sidebar summary:after{content:'+';color:var(--lime);position:absolute;right:0}.past-sidebar details[open]>summary:after{content:'−'}.past-sidebar details[open]>summary,.past-sidebar a[aria-current],.past-sidebar a:hover{color:var(--lime)}.past-sidebar details>div{padding:0 .75rem 1rem}.past-sidebar details a{display:block;font-size:.875rem;line-height:1.3;padding:.4rem 0}.past-content{background:#20155f;padding:2.5rem;min-width:0;font-size:1rem;line-height:1.4}.past-content>p{margin:1.5rem 0}.past-content .lead{font-weight:700}.past-title{font-size:2.5rem;line-height:1.15;text-transform:none;font-weight:900;letter-spacing:0;margin:0 0 2.5rem}.past-content>.past-title:not(:first-child){margin-top:2.5rem}.past-title .underline{text-decoration-thickness:.1em;text-underline-offset:.15em;text-decoration-color:var(--magenta)}.past-content a:not(.button){color:var(--lime);text-decoration:underline;text-underline-offset:3px}.content-wide{width:100%;height:auto;margin:2.5rem 0 0}.past-content .content-wide+p{margin-top:1.5rem}.impact-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1.125rem}.impact-card{background:#241e68;min-height:16.25rem;padding:1.25rem;position:relative;display:flex;flex-direction:column}.impact-card>:is(img,svg.lucide){width:2.25rem;height:2.25rem;object-fit:contain;margin-bottom:1.25rem}.impact-card h3{font-size:.875rem;font-weight:500;line-height:1.3;text-transform:uppercase;min-height:2.4rem}.impact-card>p{font-size:3.8rem;line-height:1;font-weight:700;color:var(--lime);margin-top:auto;padding-top:2rem}.impact-card:after{content:'';width:3rem;height:.1875rem;background:var(--magenta);position:absolute;bottom:0;left:1.25rem}.program-grid .impact-card:nth-child(n+5){grid-column:span 2}.past-partners{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:1.125rem}.past-partners.international{grid-template-columns:repeat(3,minmax(0,1fr))}.past-partners figure{margin:0;background:white;color:var(--purple);box-shadow:.25rem .25rem 0 var(--lime);height:12rem;display:flex;flex-direction:column;padding:1rem .5rem}.past-partners img{width:100%;height:8rem;object-fit:contain;padding:1rem}.past-partners figcaption{font-size:.875rem;text-transform:uppercase;text-align:center;text-decoration:underline;margin-top:auto}.impact-compact section{display:flex;padding:1.5rem 0 3rem;gap:1rem}.impact-compact section+section{border-top:2px solid var(--lime)}.impact-compact section>h3{writing-mode:vertical-rl;text-transform:uppercase;color:var(--magenta);letter-spacing:.2rem;font-size:.9rem}.impact-compact section>div{display:flex;flex:1}.impact-compact .impact-card{background:none;min-height:8rem;flex:1;padding:1rem .25rem;text-align:center;border-right:1px solid #ffffff20}.impact-compact .impact-card:after{display:none}.impact-compact .impact-card>p{order:-1;padding:0;margin:0 0 1rem;font-size:3rem}.impact-compact .impact-card h3{font-size:.75rem}
.table-scroll{max-width:100%;overflow:auto}.past-table{border-collapse:collapse;width:100%;border:1px solid #ffffff30;font-size:1rem;line-height:1.2}.past-table th,.past-table td{padding:1.75rem 1.5rem;text-align:left;vertical-align:middle;border-right:1px solid #ffffff30}.past-table thead{color:var(--lime)}.past-table tbody tr:nth-child(odd){background:#1b0b56}.past-table tbody th{font-weight:700}.teams-table th:first-child{width:41%}.teams-table th:nth-child(2){width:18%}.teams-table{min-width:650px}.qualified-map{width:100%;height:36rem;object-fit:cover;object-position:center;margin:1rem 0 3rem}.past-timeline{padding:0 0 0 1rem;list-style:none;counter-reset:phase}.past-timeline>li{position:relative;border:1px solid #ffffff20;background:#1b0b56;margin-top:1rem;padding:1.5rem 2rem;font-size:.875rem;counter-increment:phase}.past-timeline>li:before{content:counter(phase);position:absolute;left:-1rem;top:1rem;border:1px solid var(--lime);border-radius:50%;width:2rem;height:2rem;background:var(--purple);color:var(--lime);display:grid;place-items:center}.past-timeline>li:not(:last-child):after{content:'';position:absolute;left:0;top:3rem;height:calc(100% - 1rem);border-left:1px dashed var(--lime)}.past-timeline h3{font-size:1rem;text-transform:none}.timeline-year{font-size:.75rem;color:var(--lime)}.past-timeline p{margin-top:1.5rem}.people-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:2.625rem;row-gap:4rem;margin-bottom:5rem}.people-grid:last-child{margin-bottom:0}.person-card{aspect-ratio:1;position:relative;margin-bottom:1.25rem}.person-card>img{width:100%;height:100%;object-fit:cover}.person-card:after{content:'';position:absolute;inset:0;background:#1b0b5666}.person-copy{position:absolute;z-index:1;inset:auto 1.5rem -1.25rem}.person-copy h3{font-size:2rem;text-transform:none;line-height:1.15;font-weight:700}.person-copy>span{display:block;width:1.5rem;height:2px;background:white;margin:1.5rem 0 2.5rem}.person-copy .button{font-size:1rem;padding:1rem 1.5rem;gap:2.5rem;min-height:0}.person-copy .button span{color:var(--lime);font-size:1.5rem}.simulator-logo{width:18.75rem;height:7.3125rem;object-fit:contain;margin:2.5rem 0}.weather-logo{width:18.75rem;height:7.3125rem;object-fit:contain;margin:2.5rem auto}.resource-cover{display:block;margin:2.5rem auto 0;width:40.3125rem;max-width:100%}.resource-cover img{width:100%}.past-weather .past-content{min-height:22.3125rem}.past-weather .past-layout{min-height:32rem}.finalist{background:var(--purple);margin-bottom:1.5rem;padding:1.5rem}.finalist:last-child{margin-bottom:0}.finalist summary{display:flex;gap:2.5rem;align-items:center;cursor:pointer;list-style:none;font-size:1.5rem;font-weight:700}.finalist summary::-webkit-details-marker{display:none}.finalist summary:after{content:'+';color:var(--lime);margin-left:auto}.finalist[open] summary:after{content:'−'}.finalist summary img{width:6.5rem;height:4.5rem;object-fit:contain}.finalist>div{padding-left:7.5rem;padding-top:1rem}.finalist p{font-size:1rem;margin-bottom:1.5rem;color:#ffffffa0}.finalist .button{font-size:1rem;margin-bottom:1.5rem;padding:1rem 1.5rem;min-height:0}.finalist .content-wide{margin-top:1rem}.usv-section{margin-top:3rem}.usv-diagrams{display:flex;justify-content:center;align-items:center;gap:4rem;margin:2rem 0}.usv-diagrams img{width:35%;max-height:16rem;object-fit:contain}.usv-diagrams.dimensions img{width:40%;max-height:20rem}.usv-section:nth-of-type(1) .usv-diagrams img{width:14rem;height:6rem}.spec-bullets{padding:0;list-style:none;font-size:1rem}.spec-bullets li{padding-left:1.5rem;position:relative;margin:.75rem 0}.spec-bullets li:before{content:'›';font-size:1.5rem;color:var(--lime);position:absolute;left:0;top:-.35rem;font-weight:900}.spec-table th:first-child{width:41%}.spec-table tbody th{font-weight:400}.spec-table td,.spec-table th{padding:1.5rem}.past-page #profile-dialog{width:min(1200px,calc(100% - 40px));padding:0;background:#20155f;color:white;box-shadow:none}.profile-layout{display:grid;grid-template-columns:40% 60%}.profile-layout>img{width:100%;height:100%;object-fit:cover;min-height:480px}.profile-body{padding:3rem}.profile-body h2{font-size:2rem;text-transform:none}.profile-body #profile-role{color:var(--lime);font-weight:700}.profile-body #profile-bio{color:#ffffffb3;font-size:1.125rem}.past-page #profile-dialog .dialog-close{z-index:2;color:white;background:#1b0b56;border-radius:50%;width:40px;height:40px;line-height:1}
@media(max-width:1000px){.past-hero h1{font-size:3.5rem}.past-layout{grid-template-columns:15rem minmax(0,1fr);gap:20px;margin-block:40px 70px}.past-sidebar{font-size:1rem;padding:8px 16px}.past-content{padding:24px}.past-title{font-size:2rem}.impact-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.program-grid .impact-card:nth-child(n+5){grid-column:auto}.past-partners{grid-template-columns:repeat(3,minmax(0,1fr))}.past-partners figure{height:10rem}.past-partners img{height:6rem;padding:.5rem}.past-partners figcaption{font-size:.7rem}.people-grid{gap:40px 20px}.person-copy{inset:auto 12px -15px}.person-copy h3{font-size:1.2rem}.person-copy>span{margin:14px 0 18px}.person-copy .button{font-size:.8rem;padding:10px;gap:15px}.qualified-map{height:auto}.impact-compact section>div{flex-wrap:wrap}.impact-compact .impact-card{flex-basis:33%}.finalist>div{padding-left:0}.finalist summary{gap:20px;font-size:1.2rem}.usv-diagrams{gap:20px}.usv-diagrams img{width:45%}.past-hero .hero-subtitle{font-size:1.2rem!important}.profile-body{padding:40px 24px}.profile-body #profile-bio{font-size:1rem}}
@media(max-width:600px){.past-layout{display:flex;flex-direction:column;max-width:calc(100% - 32px);gap:24px;margin-top:28px}.past-sidebar,.past-content{width:100%}.past-sidebar{padding:0 16px}.past-sidebar>a,.past-sidebar summary{padding-block:14px}.past-sidebar details a{font-size:14px;padding-block:8px}.past-content{padding:24px 18px}.past-title{font-size:1.8rem;margin-bottom:28px}.past-hero h1{font-size:2.65rem}.past-hero .about-chevron{opacity:.5}.past-hero .hero-subtitle{font-size:1rem!important}.impact-card{min-height:210px;padding:16px}.impact-card>p{font-size:3rem}.impact-card h3{font-size:.75rem}.past-partners,.past-partners.international{grid-template-columns:repeat(2,minmax(0,1fr))}.past-partners figure{height:140px}.people-grid{grid-template-columns:1fr;gap:45px;margin-bottom:60px}.person-copy h3{font-size:1.5rem}.person-copy .button{font-size:1rem;padding:12px 18px}.person-copy>span{margin:18px 0 30px}.past-timeline>li{padding:20px}.past-timeline>li p{font-size:1rem}.finalist{padding:16px}.finalist summary img{width:55px;height:45px}.finalist summary{font-size:1rem;gap:15px}.usv-diagrams{flex-wrap:wrap}.usv-diagrams img,.usv-diagrams.dimensions img{width:85%}.spec-table{font-size:.85rem}.spec-table td,.spec-table th{padding:14px 10px;overflow-wrap:anywhere}.profile-layout{grid-template-columns:1fr}.profile-layout>img{height:220px;min-height:0;object-position:50% 25%}.profile-body{padding:28px 24px}.past-weather .past-layout{min-height:0}.impact-compact .impact-card>p{font-size:2.5rem}.impact-compact .impact-card{flex-basis:50%}}
.past-content img{max-width:100%; height: 100%}.past-content{overflow-wrap:break-word}.past-timeline ul{padding-left:1.25rem}.past-timeline strong{display:block}.past-page .site-header .nav-dropdown:has(a[href="past-impact.html"])>summary{color:var(--lime)}

.video-preview{display:block}.profile-source{color:var(--lime);text-underline-offset:4px}.past-timeline>li ul li{font-size:inherit;line-height:1.4}.past-timeline>li p{font-size:.875rem;line-height:1.4}.past-usv-specifications .usv-section{margin-top:2.5rem}

.impact-card>.lucide{color:var(--lime)}
.past-sidebar summary:after,.finalist summary:after{display:none}
.past-sidebar summary>.ui-icon{position:absolute;right:0;top:50%;transform:translateY(-50%);width:1rem;height:1rem;color:var(--lime)}
.collapse-icon{display:none !important}
details[open]>summary>.expand-icon{display:none !important}
details[open]>summary>.collapse-icon{display:inline-block !important}
.finalist summary>.ui-icon{margin-left:auto;color:var(--lime);width:1.25rem;height:1.25rem}
.person-copy .button>.lucide,.finalist .button>.lucide{color:var(--lime)}
.spec-bullets li:before{content:'';width:1rem;height:1rem;top:.1rem;background:var(--lime);mask:url('../icons/lucide/chevron-right.svg') center/contain no-repeat;-webkit-mask:url('../icons/lucide/chevron-right.svg') center/contain no-repeat}
/* Figma comparison pass: common Home typography and predictable content rhythm. */
.past-content>p{line-height:1.4}
.past-title{line-height:1}
.past-title .underline{text-decoration-thickness:.115em;text-underline-offset:.15em}
.past-content .button{min-height:3.5rem;padding:.875rem 1.3125rem;font-size:1rem;gap:2.5rem}
.qualified-map-frame{overflow:hidden;position:relative;aspect-ratio:1054/612;margin-bottom:2.5rem}
.qualified-map-frame .qualified-map{display:block;width:100%;height:117.94%;max-width:none;position:absolute;top:-3.43%;left:0;object-fit:fill;margin:0}
.past-partners figure{align-items:center;justify-content:center;padding:1rem .5rem;height:11.8rem}
.past-partners img{padding:0;object-fit:contain;width:90%;height:6.0625rem;margin:auto}
.past-partners figure:nth-child(2) img{width:5.375rem}
.past-partners figcaption{font-weight:500;text-decoration-color:var(--magenta);text-decoration-thickness:.125em;line-height:1.15}
.past-partners.international img{height:auto;width:11.5rem;max-height:6rem}
.past-partners.international figure:nth-child(2) img{width:11.4375rem}
.past-partners.international figure:nth-child(3) img{width:14.8125rem}
.past-weather .weather-logo{margin:2.5rem auto 1.5rem}
.past-weather .past-content>p:last-child{margin-bottom:0}
@media(min-width:1001px){
 .impact-card h3{font-size:.875rem;letter-spacing:-.02em;min-height:0}
 .impact-card>p{margin-top:2.5rem;padding-top:0;line-height:1.2}
 .program-grid{row-gap:2.5rem}
 .impact-card{height:16.25rem}
 .impact-compact section{padding:1rem 0 1.5rem}
 .impact-compact section>h3{text-orientation:upright;letter-spacing:.1rem;line-height:1.4;font-size:.75rem}
 .impact-compact .impact-card{height:auto;min-height:8rem}
 .impact-compact .impact-card>p{margin:0 0 1rem;line-height:1}
 .past-overview .past-content>p{margin:1.5rem 0}
 .past-overview .video-preview .content-wide{height:36.125rem;object-fit:cover;margin-top:3.125rem}
 .past-timeline{margin-top:2.5rem}
 .past-timeline>li{padding:1.25rem 2rem}
 .past-timeline>li p{margin-top:1.125rem;line-height:1.2}
 .past-timeline>li strong:after{content:'';display:block;background:var(--magenta);width:1.5rem;height:2px;margin-top:.75rem}
 .past-timeline>li ul{margin:0;list-style-type:disc}
 .past-timeline>li ul li{line-height:1.2}
 .past-jury-panel .past-title,.past-simulation-judges .past-title{margin-bottom:4.625rem}
 .people-grid{row-gap:2.375rem;margin-bottom:5rem}
 .person-copy{bottom:-1.875rem}
 .person-copy h3{line-height:1}
 .person-copy>span{margin:1.5rem 0 3.125rem}
 .person-copy .button{height:3.75rem}
 .past-content:has(.people-grid){padding-bottom:4rem}
 .past-white-paper-requirements .resource-cover{width:38.75rem;margin:2.5rem 0 0}
 .past-white-paper-requirements .resource-cover img{height:54.875rem;object-fit:cover}
 .past-brochure .resource-cover img{height:55.25rem;object-fit:cover}
 .past-simulator .simulator-logo{margin-top:4.125rem;margin-bottom:2rem}
 .past-simulator .simulator-logo+p{max-width:62rem}
 .past-simulator .past-content>p{margin-block:1.25rem}
 .past-simulator .past-content>p:nth-of-type(2){margin-bottom:0}
 .past-simulator .video-preview .content-wide{margin-top:1.25rem;height:35.75rem;object-fit:cover}
 .past-simulator .weather-logo{margin-block:1.5rem}
 .past-simulator .past-content>p:last-child{margin-bottom:0}
 .past-table{line-height:1.1}
 .past-table th,.past-table td{padding-block:1.75rem}
 .teams-table{table-layout:fixed}
 .teams-table th:nth-child(2){width:18.3%}
 .past-qualified-teams .past-title:first-child{max-width:62rem;line-height:1.1;margin-bottom:3rem}
 .past-qualified-teams .past-table td:nth-child(2){padding-right:4.5rem}
 .finalist{padding:1.5rem;margin-bottom:1.25rem}
 .finalist summary{gap:2.5rem}
 .finalist summary img{width:4.75rem;height:4rem}
 .finalist>div{padding-left:7.25rem;padding-top:.5rem}
 .finalist p{line-height:1.2;margin-bottom:1.5rem}
 .finalist>div>p:first-child{max-width:42rem}
 .finalist .content-wide{width:100%;height:22.125rem;object-fit:cover}
 .finalist .button{margin-bottom:2rem}
 .usv-section{border-bottom:1px solid #ffffff26;padding-bottom:1.25rem}
 .usv-section:last-child,.usv-section:has(.dimensions){border-bottom:0}
 .usv-section .past-title{margin-bottom:3rem}
 .usv-diagrams{margin:2rem 0;gap:5.375rem}
 .usv-section:nth-of-type(1) .usv-diagrams img{width:13.5625rem;height:6rem}
 .usv-section:nth-of-type(2) .usv-diagrams img{width:13.5625rem;height:10.125rem}
 .usv-section:nth-of-type(3) .usv-diagrams:first-of-type img{width:13.5625rem;height:13.875rem}
 .usv-section:nth-of-type(3) .usv-diagrams:last-child img{width:21.0625rem;height:13.875rem}
 .usv-section:nth-of-type(4) .usv-diagrams img:first-child{width:24.9375rem;height:9.5625rem}
 .usv-section:nth-of-type(4) .usv-diagrams img:last-child{width:23.875rem;height:12.9375rem}
 .usv-diagrams.dimensions img:first-child{width:11.875rem;height:16.125rem}
 .usv-diagrams.dimensions img:last-child{width:28.0625rem;height:7.4375rem}
 .usv-section:last-child .usv-diagrams img{width:20.6875rem;height:12.9375rem}
 .spec-bullets{line-height:1.2}.spec-bullets li{margin:.75rem 0}
}
@media(max-width:1000px){.past-partners figure{height:10rem}.past-partners img{max-width:90%;height:5.5rem}.past-partners.international img{max-width:90%}}
@media(max-width:600px){.past-partners figure{height:140px}.past-partners img{height:75px}.past-content .button{font-size:1rem}.qualified-map-frame{margin-bottom:2rem}.past-title{line-height:1.15}}
@media(min-width:1001px){
 .impact-grid .impact-card>p{position:absolute;top:9.5625rem;left:1.25rem;margin:0;line-height:1.2}
 .impact-grid .impact-card h3{font-weight:700;font-size:.875rem;letter-spacing:-.035em}
 .past-partners:not(.international) figure:first-child img{height:6.0625rem;width:100%;object-fit:cover}
 .past-partners:not(.international) figure:first-child{overflow:hidden}
 .past-partners:not(.international) figure:nth-child(3) img{width:10.65rem;height:5.375rem}
 .past-partners:not(.international) figure:nth-child(4) img{width:8.264rem;height:4.028rem}
 .past-partners:not(.international) figure:nth-child(5) img{width:10.525rem;height:2.875rem}
 .past-qualified-teams .qualified-map-frame+.past-title{margin-bottom:3.75rem}
 .past-weather .weather-logo{margin-top:4.125rem;margin-bottom:2rem}
 .past-usv-specifications .spec-table th,.past-usv-specifications .spec-table td{padding-block:1.5rem}
 .past-usv-specifications .usv-section{margin-top:2rem}
 .past-usv-specifications .usv-diagrams{margin-block:1.5rem}
}
@media(min-width:1001px){
 .past-partners:not(.international) figure:nth-child(3) img,.past-partners:not(.international) figure:nth-child(4) img{object-fit:cover}
 .impact-compact section>h3{padding-left:2rem}
 .impact-compact section{padding-top:1.5rem;padding-bottom:1.75rem}
 .finalist>div .button{margin-bottom:.875rem}
}
@media(max-width:600px){
 .impact-grid .impact-card>p{font-size:clamp(1.75rem,8vw,2.5rem);white-space:nowrap;letter-spacing:-.03em}
 .teams-table{font-size:.875rem}
 .teams-table th,.teams-table td{padding:1.25rem 1rem}
}

/* Canonical Past Challenges landing page — Figma 2311:11041. */
.past-impact{position:relative;isolation:isolate;background-image:url('../images/past-correct/imgUuid1E08462295F64752B5980492Facbb607.svg');background-size:89.01vw auto;background-position:5.52vw 50.94vw;background-repeat:no-repeat}
.impact-backdrop{position:absolute;inset:0;z-index:-1;overflow:hidden;pointer-events:none}
.impact-backdrop:before{content:'';position:absolute;left:21.77vw;top:126.4vw;width:89.01vw;aspect-ratio:1709/1904;transform:rotate(180deg);background:url('../images/past-correct/imgUuid1E08462295F64752B5980492Facbb609.svg') center/contain no-repeat}
.impact-strips{margin-top:2.6rem}
.impact-strip{display:flex;align-items:center;height:11.25rem}
.impact-strip+.impact-strip{border-top:2px solid var(--lime)}
.impact-strip>h3{flex:0 0 5rem;align-self:stretch;display:flex;align-items:center;justify-content:center;writing-mode:vertical-rl;transform:rotate(180deg);font-size:.875rem;line-height:1.2;letter-spacing:.34rem;color:var(--magenta);font-weight:900}
.impact-strip>div{display:flex;flex:1;min-width:0;padding:0 1.25rem;align-items:center}
.impact-metric{flex:1;min-width:0;text-align:center;min-height:8.75rem;display:flex;flex-direction:column;justify-content:center;padding:1.25rem .25rem}
.impact-metric:not(:last-child){border-right:1px solid #ffffff26}
.impact-metric p{font-size:3.375rem;font-weight:700;line-height:1;color:var(--lime)}
.impact-metric h4{font-size:.8125rem;font-weight:700;line-height:1.2;text-transform:uppercase;margin:.75rem 0 0}
.impact-partners{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:1.119rem}
.impact-partners.international{grid-template-columns:repeat(3,minmax(0,1fr))}
.impact-partners figure{margin:0;background:white;color:var(--purple);box-shadow:.332rem .332rem 0 var(--lime);height:11.794rem;padding:1rem .5rem;display:flex;flex-direction:column;align-items:center;justify-content:space-between;min-width:0}
.impact-partners .partner-image{height:7.25rem;width:100%;display:flex;align-items:center;justify-content:center}
.impact-partners img{height:auto;max-height:6.063rem;max-width:100%;object-fit:contain}
.impact-partners.local figure:first-child .partner-image{height:1.86rem;position:relative;overflow:hidden;margin-top:3.438rem;width:100%}
.impact-partners.local figure:first-child img{position:absolute;max-height:none;width:100%;height:673.4%;top:-287.23%;object-fit:fill}
.impact-partners.local figure:nth-child(2) img{width:5.375rem}
.impact-partners.local figure:nth-child(3) img{width:11.284rem}
.impact-partners.local figure:nth-child(4) img{width:8.264rem}
.impact-partners.local figure:nth-child(5) img{width:10.525rem}
.impact-partners.international figure:nth-child(1) img{width:11.499rem}
.impact-partners.international figure:nth-child(2) img{width:11.438rem}
.impact-partners.international figure:nth-child(3) img{width:14.813rem}
.impact-partners figcaption{font-size:.875rem;line-height:1.15;font-weight:500;text-align:center;text-transform:uppercase;text-decoration:underline;text-decoration-color:var(--magenta);text-decoration-thickness:.125em}
.past-impact .past-content>.past-title{margin-bottom:2.6rem}
@media(max-width:1000px){
 .impact-strip{height:auto;min-height:11rem}.impact-strip>h3{flex-basis:2.5rem;font-size:.75rem;letter-spacing:.15rem}
 .impact-strip>div{flex-wrap:wrap;padding:.5rem}.impact-metric{flex:0 0 50%;min-height:8rem}.impact-metric p{font-size:2.5rem}.impact-metric:nth-child(even){border-right:0}
 .impact-partners{grid-template-columns:repeat(2,minmax(0,1fr))}.impact-partners.international{grid-template-columns:repeat(2,minmax(0,1fr))}
 .impact-partners figure{height:11rem}.impact-partners figcaption{font-size:.7rem}.impact-partners .partner-image{height:6.5rem}
 .impact-backdrop:before{top:auto;bottom:200px;left:10%;width:130%}
}
@media(max-width:600px){.past-impact{background-size:180% auto;background-position:center 800px}.impact-metric p{font-size:2rem}.impact-metric h4{font-size:.65rem}.impact-strip>h3{flex-basis:2rem}.impact-partners{gap:12px}.impact-partners figure{height:150px}.impact-partners .partner-image{height:90px}.impact-partners.local figure:first-child .partner-image{margin-top:2rem}.impact-partners figcaption{font-size:.6rem}.past-impact .past-content>.past-title{margin-bottom:28px}}
.impact-metric p{white-space:nowrap;letter-spacing:-.035em}
/* Challenge navigation stays below the shared fixed header. */
@media(min-width:601px){.past-sidebar{position:sticky;top:calc(var(--header-height) + 1.25rem);max-height:calc(100dvh - var(--header-height) - 2.5rem);overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin}}

/* Center the two-line vertical labels independently of text length. */
.impact-strip>h3{position:relative;writing-mode:horizontal-tb;transform:none;display:block;margin:0}
.impact-label-inner{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%) rotate(-90deg);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.3rem;white-space:nowrap;line-height:1.2;letter-spacing:.22rem;text-align:center}
.impact-category{color:var(--lime)}
.impact-strip:nth-child(2) .impact-category{color:#fff}
.impact-word{color:var(--magenta)}
@media(max-width:600px){.impact-label-inner{font-size:.65rem;letter-spacing:.16rem;gap:.2rem}}

@media(max-width:600px){
 /* Impact labels and partner captions were 9.6-10.4px on phones. */
 .impact-metric h4,.impact-label-inner :is(.impact-category,.impact-word){font-size:12px}
 .past-partners figcaption,.impact-partners figcaption{font-size:11px}
 /* Finalist "Read More" link: a full-height tap target. */
 .finalist a:not(.button){display:inline-block;padding-block:12px}
 /* Sidebar sub-links were 34px tall. */
 .past-sidebar details a{padding-block:12px}
}

/* Phones/tablets: navigation built by sidebar.js from the sidebar (current + past challenge pages).
   Flat by design - the content card is the only box:
   1. section tabs: plain text on the page background, lime underline on the active one;
   2. phase pages: a borderless accordion between two hairlines at the top of the card.
   Desktop keeps the sidebar. */
.past-tabs,.past-subnav{display:none}
@media(max-width:1000px){
 .past-layout>.past-sidebar{display:none}
 .past-tabs{grid-column:1/-1;width:100%;min-width:0;max-width:100%;box-sizing:border-box;display:flex;gap:26px;overflow-x:auto;
  scroll-snap-type:x proximity;scrollbar-width:none;overscroll-behavior-x:contain;padding:0 4px;margin-bottom:-4px;
  border-bottom:1px solid #ffffff1f;background:none}
 .past-tabs::-webkit-scrollbar{display:none}
 .past-tabs a{flex:none;scroll-snap-align:start;white-space:nowrap;display:flex;align-items:center;min-height:48px;position:relative;
  font-size:15px;font-weight:500;color:#ffffffa6;transition:color .3s ease}
 .past-tabs a:after{content:'';position:absolute;left:0;right:0;bottom:-1px;height:2px;background:var(--lime);transform:scaleX(0);
  transform-origin:left;transition:transform .45s var(--motion-ease)}
 .past-tabs a.is-active{color:var(--lime);font-weight:700}
 .past-tabs a.is-active:after{transform:scaleX(1)}
 .past-subnav{display:block;margin:0 0 22px;border:0;border-bottom:1px solid #ffffff1f;background:none}
 .past-subnav>summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:52px;padding:6px 0}
 .past-subnav>summary::-webkit-details-marker{display:none}
 .past-subnav-text{display:flex;align-items:baseline;gap:10px;min-width:0;flex-wrap:wrap}
 .past-subnav-phase{font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:#ffffff8c}
 .past-subnav-current{font-size:15px;font-weight:700;color:var(--lime);line-height:1.3}
 .past-subnav-icon{position:relative;flex:none;width:14px;height:14px}
 .past-subnav-icon:before,.past-subnav-icon:after{content:'';position:absolute;left:0;top:6px;width:14px;height:2px;background:var(--lime);transition:transform .4s var(--motion-ease)}
 .past-subnav-icon:after{transform:rotate(90deg)}
 .past-subnav[open] .past-subnav-icon:after{transform:rotate(0)}
 .past-subnav-list{display:grid;padding:0 0 10px}
 .past-content .past-subnav-list a{display:flex;align-items:center;min-height:44px;padding:6px 0 6px 22px;position:relative;
  font-size:15px;font-weight:500;color:#ffffffcc;text-decoration:none}
 .past-content .past-subnav-list a[aria-current]{color:var(--lime);font-weight:700}
 .past-content .past-subnav-list a[aria-current]:before{content:'';position:absolute;left:2px;top:50%;width:7px;height:7px;border:solid var(--lime);border-width:2px 2px 0 0;transform:translateY(-50%) rotate(45deg)}
}
}

/* Past schedule timeline: more readable without getting bulky - Body M text with relaxed leading,
   ~70-character lines, a clearer title/date hierarchy, slightly more air between items. */
.past-timeline>li{padding:clamp(1.25rem,2vw,1.75rem) clamp(1.25rem,2.4vw,2.25rem);margin-top:1.25rem}
.past-timeline>li h3{font-size:var(--type-h5-size,1.3rem);line-height:1.25}
.past-timeline>li strong{font-size:clamp(15px,1vw + 8px,17px);margin-top:.25rem}
.past-timeline>li :is(p,ul){max-width:68ch}
.past-timeline>li p,.past-timeline>li ul li{font-size:var(--type-body-m-size,1rem)!important;line-height:1.6!important}
.past-timeline>li p{margin-top:1rem}
.past-timeline>li ul{margin-top:.5rem}
.past-timeline>li ul li+li{margin-top:.35rem}

/* Desktop sidebar sub-menus: readable size (Body M), lighter weight than the group headings,
   comfortable spacing and a lime hover. Phones use the chip row instead. */
@media(min-width:1001px){
 .past-sidebar details>div{padding:0 0 1.25rem .25rem}
 .past-sidebar details a{font-size:var(--type-body-m-size,1rem);font-weight:500;line-height:1.35;padding:.55rem 0;transition:color .25s ease}
 .past-sidebar details a:hover{color:var(--lime)}
}

/* Accordions manage their own scroll position while animating. */
.finalist,.past-sidebar details,.faq details{overflow-anchor:none}

/* Smooth open animation — pure CSS, no JS height/overflow state to get stuck. */
@media (prefers-reduced-motion: no-preference) {
  .finalist[open]>div,
  .past-sidebar details[open]>div,
  .faq details[open]>div {
    animation: accordion-open 420ms cubic-bezier(.22,1,.36,1) both;
  }
}
@keyframes accordion-open {
  from { opacity: 0; transform: translateY(-6px); }
  to   { opacity: 1; transform: none; }
}
