/* The .s7-link CTA and .s7-download-lines components are reused without overrides. */
@layer spr-standard{
body.projects-page .s8-page .s8-column{position:relative;z-index:1;padding-inline:26% 7vw}
body.projects-page .s8-page .s8-section{padding-top:40px;padding-bottom:48px}
body.projects-page .s8-page h1{font-size:calc(64px * var(--a11y-text-factor,1));line-height:1.08;letter-spacing:-.035em;max-width:20ch;overflow-wrap:anywhere}
body.projects-page .s8-page h2{font-size:calc(42px * var(--a11y-text-factor,1));line-height:1.15;letter-spacing:-.025em;margin:0 0 28px;max-width:28ch;overflow-wrap:anywhere}
body.projects-page .s8-page h3{font-size:calc(30px * var(--a11y-text-factor,1));line-height:1.2;letter-spacing:-.015em;margin:0 0 20px;overflow-wrap:anywhere}
body.projects-page .s8-page p,.s8-page li,.s8-page dd{font-size:calc(18px * var(--a11y-text-factor,1));line-height:1.6;margin:0 0 20px;overflow-wrap:anywhere}
.s8-crumb{font-size:calc(16px * var(--a11y-text-factor,1));text-underline-offset:4px}
.s8-project-list{display:grid;gap:28px}
.s8-project-card{background:#F8E8DB;color:#202868;border:1px solid #84B5C2;border-radius:24px;padding:36px;display:grid;grid-template-columns:minmax(0,150px) minmax(0,1fr);gap:32px;min-width:0}
body.projects-page .s8-page .s8-date{font-size:calc(20px * var(--a11y-text-factor,1));font-weight:600;color:#710034;margin:0 0 16px}
body.projects-page .s8-page .s8-label{font-size:calc(14px * var(--a11y-text-factor,1));font-weight:600;line-height:1.5;color:#710034;margin:0 0 16px}
.s8-project-copy{min-width:0}
.s8-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;list-style:none;padding:0;margin:28px 0}
body.projects-page .s8-page .s8-stats li{display:flex;flex-direction:column;gap:12px;background:#fff;border-radius:16px;padding:24px;margin:0;min-width:0}
.s8-stats strong{font-size:calc(52px * var(--a11y-text-factor,1));font-weight:600;line-height:1;color:#710034}
.s8-stats span{font-size:calc(17px * var(--a11y-text-factor,1));line-height:1.45;color:#202868}
.s8-intro{max-width:65ch}
.s8-coop-container{background:#F8E8DB;border:1px solid #84B5C2;border-radius:24px;padding:28px;margin-top:32px}
.s8-coop-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.s8-coop-card{background:#fff;color:#202868;border-radius:20px;padding:32px;display:flex;flex-direction:column;align-items:flex-start;min-width:0}
.s8-coop-card .s7-link{margin-top:auto}
.s8-more[hidden]{display:none}
.s8-more p{margin-bottom:28px}
.s8-detail-copy{max-width:100%}
.s8-detail-copy>p,.s8-detail-copy>ul,.s8-detail-copy>dl{max-width:70ch}
.s8-detail-copy>.s7-link{margin-top:8px}
.s8-text-list{padding-left:24px;margin:0 0 28px}
.s8-partners{margin:0 0 32px}
.s8-partners>div+div{margin-top:24px}
.s8-partners dt{font-size:calc(22px * var(--a11y-text-factor,1));line-height:1.3;font-weight:600;color:#710034;margin-bottom:12px}
.s8-partners dd{margin-left:0}
.s8-funding{margin-top:36px;max-width:70ch}
body.projects-page .s8-page .s8-funding h3{font-size:calc(24px * var(--a11y-text-factor,1))}
body.projects-page .s8-page .s8-back{padding-top:24px;padding-bottom:64px}
/* The download module itself retains its approved heading hierarchy and typography. */
body.projects-page .s8-page .s7-download h3{font-size:calc(28px * var(--a11y-text-factor,1));font-weight:700;color:#710034}
@media(max-width:1100px){.s8-project-card{grid-template-columns:minmax(0,1fr);gap:20px}.s8-project-meta{display:flex;gap:24px;align-items:baseline;flex-wrap:wrap}.s8-coop-grid{grid-template-columns:minmax(0,1fr)}body.projects-page .s8-page h1{font-size:calc(54px * var(--a11y-text-factor,1))}}
@media(max-width:700px){body.projects-page .s8-page .s8-column{padding-inline:24px}body.projects-page .s8-page .s8-section{padding-top:24px;padding-bottom:32px}body.projects-page .s8-page h1{font-size:calc(40px * var(--a11y-text-factor,1))}body.projects-page .s8-page h2{font-size:calc(32px * var(--a11y-text-factor,1))}body.projects-page .s8-page h3{font-size:calc(27px * var(--a11y-text-factor,1))}.s8-project-card,.s8-coop-container,.s8-coop-card{padding:24px}.s8-stats{grid-template-columns:minmax(0,1fr)}.s8-coop-container{padding:16px}.s8-coop-grid{gap:16px}.s8-project-meta{gap:8px 24px}}
}
:root[data-contrast]:not([data-contrast="standard"]) .s8-page :is(.s8-project-card,.s8-coop-container,.s8-coop-card,.s8-stats li){background:var(--hc-bg);color:var(--hc-fg);border:1px solid var(--hc-line)}
:root[data-contrast]:not([data-contrast="standard"]) .s8-page .s8-stats :is(strong,span){color:var(--hc-fg)}
:root[data-contrast]:not([data-contrast="standard"]) .s8-page .s8-partners dt{color:var(--hc-fg)}
@layer spr-priority{
 :root:not([data-contrast="dark"]):not([data-contrast="light"]) .s8-page :is(a,button):focus-visible{outline:3px solid #202868!important;outline-offset:4px!important}
}
:root[data-contrast]:not([data-contrast="standard"]) .s8-page .s8-column{width:min(100%,1200px);max-width:1200px;margin-inline:auto;padding-inline:24px}

/* Programmatic page-title focus remains available without a decorative-looking box. */
@layer spr-priority{
 #main .s8-page h1[tabindex="-1"]:focus{outline:none!important}
}
