:root{--ink:#111;--paper:#fffaf0;--white:#fff;--yellow:#ffd600;--pink:#ff4fa3;--blue:#42c8ff;--green:#78e08f;--orange:#ff7a35;--muted:#5a554d;--s1:4px;--s2:8px;--s3:12px;--s4:16px;--s5:24px;--s6:40px;--s7:64px;--border:3px solid var(--ink);--shadow:8px 8px 0 var(--ink);--max:1180px}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background-color:var(--paper);background-image:linear-gradient(rgba(17,17,17,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(17,17,17,.045) 1px,transparent 1px);background-size:24px 24px;color:var(--ink);font-family:Arial,Helvetica,sans-serif;line-height:1.65}
body,button,input,textarea,select{font-size:16px}
img{display:block;width:100%;height:auto;border:var(--border)}
a{color:inherit;text-decoration-thickness:2px;text-underline-offset:4px}
a:hover{text-decoration-thickness:4px}
button,input,textarea,select{font:inherit}
button{cursor:pointer}
h1,h2,h3,p,li,td,th,address,label{overflow-wrap:anywhere}
h1,h2,h3{margin-top:0;line-height:1.04;letter-spacing:-.035em}
h1{font-size:clamp(2.5rem,8vw,6.5rem)}
h2{font-size:clamp(2rem,5vw,4rem)}
h3{font-size:clamp(1.35rem,3vw,2rem)}
p,ul,ol{margin-top:0}
p:last-child,ul:last-child,ol:last-child{margin-bottom:0}
.skip-link{position:absolute;left:var(--s4);top:var(--s4);z-index:100;background:var(--yellow);color:var(--ink);border:var(--border);padding:var(--s2) var(--s4);transform:translateY(-200%)}
.skip-link:focus{transform:none}
:focus-visible{outline:4px solid #005fcc;outline-offset:4px}
.site-header{height:60px;border-bottom:var(--border);background:var(--white);color:var(--ink)}
.header-inner{width:min(calc(100% - 32px),var(--max));height:100%;margin:auto;display:flex;align-items:center;gap:var(--s4)}
.brand{display:inline-flex;align-items:center;gap:var(--s2);font-weight:900;text-decoration:none;letter-spacing:-.03em;min-width:0}
.brand svg{width:32px;height:32px;flex:0 0 auto}
.desktop-nav{display:none;margin-left:auto}
.desktop-nav ul,.mobile-nav ul,.footer-links{list-style:none;padding:0;margin:0}
.desktop-nav ul{display:flex;align-items:center;gap:var(--s4)}
.desktop-nav a{font-size:13px;font-weight:800;white-space:nowrap;text-decoration:none}
.header-cta,.button-link,.card-link{display:inline-block;border:var(--border);background:var(--yellow);color:var(--ink);font-weight:900;text-decoration:none;padding:var(--s2) var(--s4);box-shadow:4px 4px 0 var(--ink)}
.header-cta{display:none;margin-left:var(--s4);white-space:nowrap}
.menu-toggle{margin-left:auto;width:40px;height:40px;border:var(--border);background:var(--pink);color:var(--ink);font-weight:900}
.mobile-nav{display:none;position:fixed;inset:60px 0 0;z-index:80;background:var(--ink);color:var(--white);overflow-y:auto;padding:var(--s5) var(--s4)}
.mobile-nav.is-open{display:flex;justify-content:flex-start}
.mobile-nav ul{width:min(100%,560px);margin-block:auto;margin-inline:auto;display:flex;flex-direction:column;gap:var(--s4);padding:var(--s5) 0}
.mobile-nav a{display:block;border:3px solid var(--white);padding:var(--s4);font-size:1.25rem;font-weight:900;text-decoration:none}
.mobile-nav .mobile-cta{background:var(--yellow);color:var(--ink);border-color:var(--yellow)}
.container{width:min(calc(100% - 32px),var(--max));margin-inline:auto}
.hero{padding:var(--s7) 0}
.hero-grid{display:grid;gap:var(--s6);align-items:center}
.eyebrow{display:inline-block;margin-bottom:var(--s4);background:var(--ink);color:var(--white);border:var(--border);padding:var(--s1) var(--s2);font-size:.8rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.hero h1{max-width:960px;margin-bottom:var(--s5)}
.hero-copy{max-width:720px;font-size:1.2rem}
.hero-actions{display:flex;flex-wrap:wrap;gap:var(--s4);margin-top:var(--s5)}
.button-link.alt{background:var(--white);color:var(--ink)}
.lead-image{background:var(--blue);padding:var(--s4);box-shadow:var(--shadow);transform:rotate(-1deg)}
.lead-image img{aspect-ratio:16/9;object-fit:cover}
.section{padding:var(--s7) 0}
.section-title{max-width:800px;margin-bottom:var(--s6)}
.section-title p{font-size:1.1rem}
.mosaic{display:grid;gap:var(--s5)}
.mosaic-card{position:relative;min-width:0;border:var(--border);background:var(--white);box-shadow:var(--shadow);display:flex;flex-direction:column}
.mosaic-card:nth-child(2){background:var(--yellow)}
.mosaic-card:nth-child(3){background:#d8f5ff}
.mosaic-card:nth-child(4){background:#ffe1ef}
.mosaic-card:nth-child(5){background:#ddf7df}
.card-media{aspect-ratio:16/9;object-fit:cover;border:0;border-bottom:var(--border)}
.card-body{padding:var(--s5);flex:1}
.card-number{display:inline-flex;width:48px;height:48px;align-items:center;justify-content:center;border:var(--border);background:var(--ink);color:var(--white);font-size:1.25rem;font-weight:900;margin-bottom:var(--s4)}
.card-body h3{margin-bottom:var(--s4)}
.card-link{margin:0 var(--s5) var(--s5);align-self:flex-start;background:var(--pink)}
.support-grid,.article-grid,.contact-grid{display:grid;gap:var(--s6);align-items:start}
.callout{border:var(--border);background:var(--yellow);color:var(--ink);padding:var(--s5);box-shadow:var(--shadow)}
.callout.blue{background:var(--blue)}
.callout.pink{background:var(--pink)}
.article-header{padding:var(--s7) 0 var(--s6)}
.article-header h1{font-size:clamp(2.5rem,7vw,5.5rem);margin-bottom:var(--s5)}
.article-intro{max-width:780px;font-size:1.22rem}
.article-body{max-width:780px}
.article-body section{margin-bottom:var(--s7)}
.article-body h2{font-size:clamp(1.8rem,4vw,3rem);margin-bottom:var(--s4)}
.article-body h3{margin-bottom:var(--s4)}
.article-aside{border:var(--border);background:var(--yellow);padding:var(--s5);box-shadow:var(--shadow)}
.compare-list{padding-left:var(--s5)}
.compare-list li{margin-bottom:var(--s4)}
.fact-strip{display:grid;gap:var(--s4);margin:var(--s6) 0}
.fact{border:var(--border);background:var(--white);padding:var(--s5)}
.fact strong{display:block;font-size:1.15rem;margin-bottom:var(--s3)}
.contact-card,.legal-card{border:var(--border);background:var(--white);padding:var(--s5);box-shadow:var(--shadow)}
address{font-style:normal}
form{display:grid;gap:var(--s5)}
.field{display:grid;gap:var(--s2)}
label{font-weight:900}
input,textarea,select{width:100%;border:var(--border);background:var(--white);color:var(--ink);padding:var(--s4)}
textarea{min-height:180px;resize:vertical}
input.is-invalid,textarea.is-invalid{border-color:#b00020;background:#fff0f2;color:var(--ink)}
.error{color:#8b0018;font-weight:800;margin:0}
.form-status{border:var(--border);background:#ddf7df;color:var(--ink);padding:var(--s4)}
.submit-button{justify-self:start;border:var(--border);background:var(--yellow);color:var(--ink);padding:var(--s4) var(--s5);font-weight:900;box-shadow:4px 4px 0 var(--ink)}
.legal-layout{max-width:900px}
.legal-layout section{margin-bottom:var(--s6)}
.legal-layout h2{font-size:2rem;margin-bottom:var(--s4)}
.table-wrap{overflow-x:auto;border:var(--border);background:var(--white)}
table{width:100%;border-collapse:collapse;min-width:640px}
th,td{text-align:left;vertical-align:top;border-bottom:2px solid var(--ink);padding:var(--s4)}
th{background:var(--yellow);color:var(--ink)}
.site-footer{margin-top:var(--s7);border-top:var(--border);background:var(--ink);color:var(--white);padding:var(--s6) 0}
.footer-grid{display:grid;gap:var(--s6)}
.site-footer a{color:var(--white)}
.footer-title{font-weight:900;font-size:1.1rem;margin-bottom:var(--s4)}
.footer-links{display:grid;gap:var(--s2)}
.independence{border-top:1px solid #aaa;padding-top:var(--s5);margin-top:var(--s6)}
.cookie-banner{position:fixed;left:var(--s4);right:var(--s4);bottom:var(--s4);z-index:120;border:3px solid var(--white);background:#171717;color:var(--white);padding:var(--s4);box-shadow:8px 8px 0 var(--pink)}
.cookie-inner{width:min(100%,var(--max));margin:auto}
.cookie-row{display:flex;flex-direction:column;gap:var(--s4)}
.cookie-copy{min-width:0}
.cookie-copy p{margin:0}
.cookie-actions{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:var(--s2)}
.cookie-actions button,.preference-panel button{flex:1 1 auto;border:2px solid var(--white);background:var(--yellow);color:var(--ink);padding:var(--s2) var(--s4);font-weight:900}
.cookie-actions button:nth-child(2){background:var(--white);color:var(--ink)}
.cookie-actions button:nth-child(3){background:var(--blue);color:var(--ink)}
.preference-panel{margin-top:var(--s4);border-top:1px solid #aaa;padding-top:var(--s4)}
.preference-options{display:flex;flex-wrap:wrap;gap:var(--s4);margin-bottom:var(--s4)}
.preference-options label{display:flex;align-items:center;gap:var(--s2)}
.preference-options input{width:auto}
.cookie-banner :focus-visible,.site-footer :focus-visible,.mobile-nav :focus-visible{outline-color:var(--yellow)}
[hidden]{display:none!important}
@media (max-width:479px){.cookie-actions{flex-direction:column}.cookie-actions button{width:100%}.hero-actions{flex-direction:column}.hero-actions a{width:100%;text-align:center}.brand span{font-size:.8rem}}
@media (min-width:480px){.cookie-actions button{flex:1 1 auto}}
@media (min-width:768px){.hero-grid{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr)}.mosaic{grid-template-columns:repeat(2,minmax(0,1fr))}.mosaic-card:first-child{grid-column:span 2}.mosaic-card:nth-child(5){grid-column:span 2}.support-grid,.contact-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.article-grid{grid-template-columns:minmax(0,2fr) minmax(0,1fr)}.article-aside{position:sticky;top:var(--s4)}.fact-strip{grid-template-columns:repeat(3,minmax(0,1fr))}.footer-grid{grid-template-columns:1.4fr 1fr 1fr}.cookie-row{flex-direction:column}.cookie-actions button{flex:0 1 auto}}
@media (max-width:767px){.lead-image{transform:none}.mosaic-card{transform:none}}
@media (min-width:1024px){.desktop-nav{display:block}.header-cta{display:inline-block}.menu-toggle,.mobile-nav{display:none!important}.brand{flex-shrink:0;white-space:nowrap}.mosaic{grid-template-columns:repeat(12,minmax(0,1fr))}.mosaic-card:first-child{grid-column:span 7;grid-row:span 2}.mosaic-card:nth-child(2){grid-column:span 5}.mosaic-card:nth-child(3){grid-column:span 5}.mosaic-card:nth-child(4){grid-column:span 5}.mosaic-card:nth-child(5){grid-column:span 7}.cookie-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center}}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important;animation:none!important}}