:root{--s4:4px;--s8:8px;--s12:12px;--s16:16px;--s24:24px;--s32:32px;--s40:40px;--s64:64px;--c-bg:#ffffff;--c-fg:#000000;--c-accent:#ff0000;--c-muted:#666666;--c-dark-bg:#000000;--c-dark-fg:#ffffff;--c-dark-muted:#a3a3a3;--c-focus-dark:#ff4d4d;--font-sans:"Helvetica Neue",Helvetica,Arial,sans-serif}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{font-family:var(--font-sans);color:var(--c-fg);background:var(--c-bg);line-height:1.4;font-size:16px;scroll-behavior:smooth}
body{min-width:320px}
h1,h2,h3,h4,h5,h6{font-weight:900;text-transform:uppercase;letter-spacing:-0.04em}
h1{font-size:clamp(3rem,8vw,8rem);line-height:0.85;margin-bottom:var(--s32)}
h2{font-size:clamp(2rem,5vw,4rem);line-height:0.9;margin-bottom:var(--s24);border-bottom:4px solid var(--c-fg);padding-bottom:var(--s12)}
h3{font-size:1.75rem;margin-bottom:var(--s16);margin-top:var(--s32)}
p{margin-bottom:var(--s24);font-size:1.125rem;max-width:75ch;color:var(--c-fg)}
a{color:var(--c-fg);text-decoration-thickness:2px;text-underline-offset:4px}
a:hover{color:var(--c-accent)}
img{max-width:100%;height:auto;display:block}
.grid>*,.flex>*,table{min-width:0}
.table-wrap{overflow-x:auto;min-width:0;margin-bottom:var(--s24)}
table{width:100%;border-collapse:collapse;text-align:left}
th,td{padding:var(--s16);border:2px solid var(--c-fg)}
th{background:var(--c-fg);color:var(--c-bg);font-weight:700;text-transform:uppercase;letter-spacing:-0.02em}
.skip-link{position:absolute;top:-100px;left:0;background:var(--c-accent);color:var(--c-bg);padding:var(--s16);z-index:9999;font-weight:700;text-transform:uppercase;text-decoration:none}
.skip-link:focus{top:0}
:focus-visible{outline:4px solid var(--c-accent);outline-offset:2px}
.site-footer :focus-visible,.mobile-overlay :focus-visible,.cookie-banner :focus-visible,.inverted :focus-visible{outline-color:var(--c-focus-dark)}
.container{max-width:1440px;margin-inline:auto;padding-inline:var(--s24)}
.site-header{height:64px;display:flex;align-items:center;border-bottom:4px solid var(--c-fg);background:var(--c-bg);position:relative;z-index:100}
.header-inner{display:flex;align-items:center;justify-content:space-between;width:100%}
.brand{display:flex;align-items:center;gap:var(--s12);text-decoration:none;color:var(--c-fg);font-weight:900;font-size:1.5rem;text-transform:uppercase;letter-spacing:-0.02em;flex-shrink:0;white-space:nowrap}
.brand svg{width:32px;height:32px;fill:var(--c-fg)}
.main-nav{display:none}
.menu-toggle{display:block;background:none;border:none;cursor:pointer;padding:var(--s8);width:40px;height:40px}
.menu-toggle svg{width:100%;height:100%;fill:var(--c-fg)}
.mobile-overlay{position:fixed;top:64px;left:0;right:0;bottom:0;background:var(--c-dark-bg);color:var(--c-dark-fg);display:flex;flex-direction:column;padding:var(--s24);transform:translateX(100%);transition:transform 0.3s cubic-bezier(0.77,0,0.175,1);z-index:90;overflow-y:auto}
.mobile-overlay.is-open{transform:translateX(0)}
.mobile-overlay ul{list-style:none;display:flex;flex-direction:column;gap:var(--s32);margin-block:auto;align-items:flex-start;width:100%}
.mobile-overlay a{color:var(--c-dark-fg);font-size:2rem;font-weight:900;text-transform:uppercase;text-decoration:none;letter-spacing:-0.02em;white-space:nowrap;overflow-wrap:anywhere}
.mobile-overlay a:hover{color:var(--c-accent)}
.cta-button{background:var(--c-accent);color:var(--c-bg);padding:var(--s12) var(--s24);font-weight:900;text-transform:uppercase;text-decoration:none;letter-spacing:-0.01em;display:inline-block;white-space:nowrap}
.cta-button:hover{background:var(--c-fg);color:var(--c-bg)}
@media(min-width:1024px){
.menu-toggle{display:none}
.main-nav{display:flex;align-items:center;gap:var(--s32)}
.main-nav ul{display:flex;list-style:none;gap:var(--s24);align-items:center}
.main-nav a{text-decoration:none;font-weight:700;text-transform:uppercase;font-size:0.875rem;letter-spacing:-0.01em;white-space:nowrap}
.mobile-overlay{display:none}
}
@media(max-width:1023px){
.header-cta-desktop{display:none}
}
.hero{display:grid;gap:var(--s40);margin-block:var(--s64);align-items:start}
@media(min-width:1024px){.hero{grid-template-columns:7fr 5fr}}
.hero-content{display:flex;flex-direction:column;gap:var(--s16)}
.hero-image{width:100%;border:4px solid var(--c-fg)}
.stat-cards{display:grid;gap:var(--s24);margin-block:var(--s64)}
@media(min-width:768px){.stat-cards{grid-template-columns:repeat(auto-fit,minmax(320px,1fr))}}
.stat-cards > *{min-width:0}
.card{border:4px solid var(--c-fg);display:flex;flex-direction:column;background:var(--c-bg);text-decoration:none;color:var(--c-fg);transition:background 0.2s}
.card:hover{background:var(--c-fg);color:var(--c-bg)}
.metric-strip{display:flex;justify-content:space-between;align-items:center;border-bottom:4px solid var(--c-fg);padding:var(--s16) var(--s24);font-size:1.75rem;font-weight:900;letter-spacing:-0.02em;text-transform:uppercase}
.card:hover .metric-strip{border-bottom-color:var(--c-bg)}
.card-body{padding:var(--s24);flex-grow:1}
.card-body p{margin:0;font-size:1rem;color:currentColor;max-width:none}
.card-footer{border-top:4px solid var(--c-fg);padding:var(--s16) var(--s24);font-weight:900;text-transform:uppercase;letter-spacing:-0.02em;display:flex;justify-content:space-between;align-items:center}
.card:hover .card-footer{border-top-color:var(--c-bg)}
.article-grid{display:grid;gap:var(--s40);margin-block:var(--s64)}
@media(min-width:768px){.article-grid{grid-template-columns:3fr 8fr;align-items:start}}
.article-meta{border-top:4px solid var(--c-fg);padding-top:var(--s16);position:sticky;top:var(--s24)}
.article-meta strong{display:block;font-size:1.5rem;font-weight:900;text-transform:uppercase;margin-bottom:var(--s8);letter-spacing:-0.02em}
.article-meta span{display:block;font-size:0.875rem;color:var(--c-muted);text-transform:uppercase;font-weight:700}
.article-content p{margin-bottom:var(--s24);font-size:1.25rem;line-height:1.5;max-width:65ch}
.site-footer{background:var(--c-dark-bg);color:var(--c-dark-fg);padding-block:var(--s64);border-top:4px solid var(--c-fg);margin-top:var(--s64)}
.footer-grid{display:grid;gap:var(--s40)}
@media(min-width:768px){.footer-grid{grid-template-columns:repeat(4,1fr)}}
.footer-col h4{font-size:1.25rem;margin-bottom:var(--s24);color:var(--c-dark-muted)}
.footer-col ul{list-style:none;display:flex;flex-direction:column;gap:var(--s12)}
.footer-col a{color:var(--c-dark-fg);text-decoration:none;font-weight:700}
.footer-col a:hover{color:var(--c-accent)}
.footer-col p{font-size:0.875rem;color:var(--c-dark-muted);margin-bottom:var(--s8);max-width:none}
.footer-bottom{margin-top:var(--s64);padding-top:var(--s24);border-top:2px solid var(--c-dark-muted);display:flex;flex-direction:column;gap:var(--s16);font-size:0.875rem;color:var(--c-dark-muted);font-weight:700;text-transform:uppercase}
.cookie-banner{position:fixed;bottom:0;left:0;right:0;background:var(--c-fg);color:var(--c-bg);padding:var(--s24);z-index:900;border-top:4px solid var(--c-accent)}
.cookie-banner[hidden]{display:none}
.cookie-inner{max-width:1440px;margin-inline:auto;display:flex;flex-direction:column;gap:var(--s24)}
@media(min-width:768px){.cookie-inner{flex-direction:row;align-items:center;justify-content:space-between}}
.cookie-text{flex:1;font-weight:700;font-size:1.125rem}
.cookie-buttons{display:flex;flex-direction:column;gap:var(--s12);width:100%}
@media(max-width:479px){.cookie-buttons button{width:100%}}
@media(min-width:480px) and (max-width:767px){.cookie-buttons{flex-direction:row;flex-wrap:wrap}.cookie-buttons button{flex:1 1 auto}}
@media(min-width:768px){.cookie-buttons{flex-direction:row;width:auto;justify-content:flex-end}}
.cookie-buttons button{background:var(--c-bg);color:var(--c-fg);border:none;padding:var(--s12) var(--s24);font-weight:900;text-transform:uppercase;cursor:pointer;white-space:nowrap}
.cookie-buttons button:hover{background:var(--c-accent);color:var(--c-bg)}
.cookie-prefs{margin-top:var(--s24);padding-top:var(--s24);border-top:2px solid var(--c-muted);display:flex;flex-direction:column;gap:var(--s16)}
.cookie-prefs[hidden]{display:none}
.pref-row{display:flex;align-items:center;gap:var(--s12);font-weight:700}
.form-group{margin-bottom:var(--s24)}
.form-group label{display:block;font-weight:900;text-transform:uppercase;margin-bottom:var(--s8);letter-spacing:-0.01em}
.form-control{width:100%;padding:var(--s16);border:4px solid var(--c-fg);background:var(--c-bg);color:var(--c-fg);font-family:var(--font-sans);font-size:1rem;font-weight:700}
.form-control:focus{outline:none;border-color:var(--c-accent)}
textarea.form-control{min-height:150px;resize:vertical}
.submit-btn{background:var(--c-fg);color:var(--c-bg);border:none;padding:var(--s16) var(--s32);font-weight:900;text-transform:uppercase;font-size:1.25rem;cursor:pointer}
.submit-btn:hover{background:var(--c-accent)}
@media (prefers-reduced-motion:reduce){*{transition-duration:.01ms!important;animation-duration:.01ms!important}html{scroll-behavior:auto}}