/* Compact proportions aligned with the SPD Hagen reference */
.section{padding-top:58px;padding-bottom:58px}
.section-head{margin-bottom:24px}
.section-head h2,.section h2,.join h2{font-size:clamp(30px,3.3vw,46px)}
.lead-story{gap:42px;padding-top:52px;padding-bottom:52px}
.lead-story h1{font-size:clamp(32px,3.8vw,52px)}
.news-stream .card{padding-top:20px;padding-bottom:20px}
.news-stream .card h3{font-size:25px}
@media(max-width:1050px){.header-top{min-height:94px}.brand{width:330px}.campaign-hero{padding:32px 18px 36px}.campaign-frame img{max-height:390px}.section{padding-top:50px;padding-bottom:50px}}
@media(max-width:650px){.brand{width:235px;padding:6px 8px}.campaign-hero{padding:22px 14px 26px}.campaign-frame:before{font-size:10px}.campaign-frame img{min-height:0;max-height:none;object-fit:contain}.section{padding-top:42px;padding-bottom:42px}}

/* Full-bleed responsive campaign artwork */
.campaign-hero{padding:0;background:#d50057}
.campaign-hero:before,.campaign-frame:before{display:none}
.campaign-frame{width:100%;max-width:none;margin:0}
.campaign-frame img{display:block;width:100%;height:auto;min-height:0;max-height:none;aspect-ratio:auto;object-fit:contain;box-shadow:none}
@media(max-width:1050px){.campaign-hero{padding:0}.campaign-frame img{max-height:none}}
@media(max-width:650px){.campaign-hero{padding:0}.campaign-frame img{width:100%;height:auto;min-height:0;max-height:none;object-fit:contain}}

html,body{max-width:100%;overflow-x:hidden}
.campaign-hero,.campaign-frame{width:100%;max-width:100vw;overflow:hidden}
.campaign-frame img{width:100vw;max-width:100vw}
@media(max-width:650px){.campaign-frame img{width:100vw;max-width:100vw}.cookie-banner{width:100vw;max-width:100vw;padding:10px}.cookie-card{width:calc(100vw - 20px);max-width:calc(100vw - 20px);min-width:0}.cookie-actions{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.cookie-actions button{min-width:0;padding-inline:6px}.news-section,.news-stream,.empty{min-width:0;max-width:100%}}
