@font-face{font-family:Literata;src:url('/assets/fonts/serif-2.woff2') format('woff2');font-style:normal;font-weight:400 650;font-display:swap}
@font-face{font-family:Archivo;src:url('/assets/fonts/sans-2.woff2') format('woff2');font-style:normal;font-weight:400 700;font-display:swap}
:root{--linen:oklch(94% .018 87);--paper:oklch(97% .012 87);--charcoal:oklch(25% .015 65);--muted:oklch(45% .025 75);--violet:oklch(49% .25 297);--olive:oklch(47% .08 112);--rule:oklch(70% .025 80);--white:oklch(99% .006 87);--serif:Literata,Georgia,serif;--sans:Archivo,Verdana,sans-serif;--s1:.25rem;--s2:.5rem;--s3:.75rem;--s4:1rem;--s5:1.5rem;--s6:2rem;--s7:3rem;--s8:4rem;--s9:6rem}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--linen);color:var(--charcoal);font-family:var(--serif);line-height:1.66}
img{display:block;max-width:100%}
a{color:inherit;text-decoration-thickness:1px;text-underline-offset:.18em}
a:hover{color:var(--violet)}
a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--violet);outline-offset:4px}
.skip-link{position:fixed;top:1rem;left:1rem;z-index:20;transform:translateY(-180%);background:var(--charcoal);color:var(--paper);padding:.7rem 1rem;font-family:var(--sans)}
.skip-link:focus{transform:none}
.site-header{min-height:92px;display:grid;grid-template-columns:minmax(220px,1fr) auto auto;align-items:center;gap:var(--s6);padding:var(--s4) clamp(1rem,4vw,4.5rem);border-bottom:1px solid var(--charcoal);font-family:var(--sans);background:var(--linen)}
.brand,.footer-brand{display:flex;align-items:center;gap:.8rem;text-decoration:none;font-weight:700;letter-spacing:-.02em}
.brand small{display:block;font-size:.68rem;font-weight:400;letter-spacing:.04em;color:var(--muted)}
.brand img{width:46px;height:46px}
.site-nav{display:flex;gap:clamp(.8rem,2vw,1.6rem);font-size:.84rem;min-width:0}
.site-nav a{text-decoration:none}
.header-age,.age-disc{width:3.25rem;height:3.25rem;border:2px solid currentColor;border-radius:50%;display:grid;place-items:center;font:700 .92rem var(--sans)}
.page-hero,.home-hero{display:grid;grid-template-columns:minmax(210px,.7fr) minmax(0,2.3fr);gap:clamp(2rem,6vw,7rem);padding:clamp(3rem,8vw,8rem) clamp(1rem,4vw,4.5rem);border-bottom:1px solid var(--charcoal)}
.home-hero{padding-bottom:clamp(2.5rem,6vw,5.5rem)}
h1,h2,h3{font-family:var(--serif);line-height:1.03;letter-spacing:-.045em;margin:0}
h1{font-size:clamp(3.3rem,9vw,9.5rem);max-width:10ch;font-weight:650}
.inner h1{font-size:clamp(3rem,7.2vw,7.5rem);max-width:12ch}
h2{font-size:clamp(2rem,4.3vw,4.5rem);max-width:14ch}
h3{font-size:clamp(1.45rem,2.2vw,2rem)}
p{margin:0}
.eyebrow{font:700 .72rem/1.2 var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--violet);margin-bottom:var(--s4)}
.standfirst{font-size:clamp(1.15rem,2vw,1.6rem);line-height:1.5;max-width:52ch;margin-top:var(--s6)}
.rail-note{max-width:31ch;color:var(--muted);font-size:.98rem}
.pre-comparison{display:grid;grid-template-columns:1fr 1fr;gap:var(--s8);padding:var(--s7) clamp(1rem,4vw,4.5rem);border-bottom:1px solid var(--charcoal);background:var(--paper)}
.pre-comparison h2{font-size:1.2rem;font-family:var(--sans);letter-spacing:-.02em;margin-bottom:var(--s3)}
.pre-comparison p{max-width:58ch}
.responsibility-band{display:grid;grid-template-columns:auto 1fr;gap:var(--s5);align-items:center;padding:var(--s5) clamp(1rem,4vw,4.5rem);background:var(--charcoal);color:var(--linen)}
.responsibility-band p{max-width:84ch}
.comparison-block,.editorial-section{display:grid;grid-template-columns:minmax(210px,.7fr) minmax(0,2.3fr);gap:clamp(2rem,6vw,7rem);padding:clamp(3rem,7vw,7rem) clamp(1rem,4vw,4.5rem);border-bottom:1px solid var(--charcoal)}
.section-rail{position:sticky;top:1.5rem;align-self:start}
.section-rail h2{font-size:clamp(1.8rem,3.3vw,3rem)}
.section-rail>p:not(.eyebrow){margin-top:var(--s5);max-width:32ch;color:var(--muted)}
.text-link{display:inline-block;margin-top:var(--s5);font:700 .82rem var(--sans)}
.operator-list{display:grid}
.operator-row{display:grid;grid-template-columns:54px minmax(150px,.55fr) minmax(260px,1.45fr) minmax(150px,.5fr);gap:var(--s5);padding:var(--s6) 0;border-top:1px solid var(--charcoal);align-items:start}
.operator-row:last-child{border-bottom:1px solid var(--charcoal)}
.operator-number{font:700 .75rem var(--sans);color:var(--violet)}
.operator-brand{display:flex;gap:var(--s4);align-items:center}
.operator-brand img{width:64px;height:64px;object-fit:contain;background:var(--white);border:1px solid var(--rule);padding:.35rem}
.operator-brand p{font:.72rem var(--sans);color:var(--muted);overflow-wrap:anywhere}
.operator-assessment{display:grid;gap:var(--s3);max-width:62ch}
.operator-assessment p{font-size:.96rem}
.rating{font-family:var(--sans);display:flex;align-items:center;gap:.7rem}
.stars{letter-spacing:.06em;color:var(--violet)}
.licence-line{color:var(--muted);font:400 .75rem/1.5 var(--sans)!important}
.operator-action{display:grid;gap:.65rem;justify-items:start}
.operator-action span{font:.68rem/1.4 var(--sans);color:var(--muted)}
.button{display:inline-block;background:var(--violet);color:var(--white);padding:.8rem 1rem;border:1px solid var(--violet);font:700 .76rem var(--sans);text-decoration:none}
.button:hover{background:var(--charcoal);color:var(--white);border-color:var(--charcoal)}
.two-track.alt{background:var(--paper)}
.prose{display:grid;gap:var(--s5);max-width:72ch;font-size:1.04rem}
.prose h2{font-size:clamp(1.7rem,3vw,2.7rem);margin-top:var(--s6)}
.prose h2:first-child{margin-top:0}
.prose ol,.prose ul{margin:0;padding-left:1.3rem}
.prose li+li{margin-top:var(--s3)}
.big-list{counter-reset:item;list-style:none;padding:0;margin:0;display:grid}
.big-list li{display:grid;grid-template-columns:5rem 1fr;gap:var(--s5);padding:var(--s5) 0;border-top:1px solid var(--charcoal);font-size:1.1rem}
.big-list li:before{counter-increment:item;content:"0" counter(item);font:700 1.6rem var(--sans);color:var(--violet)}
.support-panel{background:var(--olive);color:var(--white);padding:clamp(3rem,7vw,7rem) clamp(1rem,4vw,4.5rem);display:grid;grid-template-columns:.75fr 2.25fr;gap:clamp(2rem,6vw,7rem)}
.support-panel .eyebrow{color:var(--white)}
.support-links{display:grid;grid-template-columns:1fr 1fr}
.support-links a{display:grid;gap:.35rem;padding:var(--s5);border:1px solid color-mix(in oklch,var(--white),transparent 45%);text-decoration:none}
.support-links span{font:.78rem var(--sans)}
.faq details{border-top:1px solid var(--charcoal);padding:var(--s5) 0}
.faq details:last-child{border-bottom:1px solid var(--charcoal)}
.faq summary{font:700 1.02rem var(--sans);cursor:pointer}
.faq details p{max-width:65ch;margin-top:var(--s4)}
.article-grid{display:grid;grid-template-columns:minmax(210px,.7fr) minmax(0,2.3fr);gap:clamp(2rem,6vw,7rem);padding:clamp(3rem,7vw,7rem) clamp(1rem,4vw,4.5rem);border-bottom:1px solid var(--charcoal)}
.article-grid aside{position:sticky;top:1.5rem;align-self:start}
.pull{font-size:clamp(1.25rem,2vw,1.8rem);line-height:1.35;max-width:20ch}
.age-disc.large{width:5rem;height:5rem;font-size:1.3rem;margin-bottom:var(--s5)}
.table-section{padding:clamp(2rem,5vw,5rem) clamp(1rem,4vw,4.5rem);border-bottom:1px solid var(--charcoal)}
.table-wrap{overflow-x:auto;border:1px solid var(--charcoal)}
table{width:100%;border-collapse:collapse;min-width:900px;background:var(--paper);font-family:var(--sans)}
caption{text-align:left;padding:var(--s4);font-weight:700;background:var(--charcoal);color:var(--linen)}
th,td{text-align:left;padding:var(--s4);border:1px solid var(--rule);vertical-align:middle}
tbody th{display:flex;align-items:center;gap:.7rem}
tbody th img{object-fit:contain;background:var(--white);padding:.2rem}
.site-footer{padding:clamp(3rem,6vw,6rem) clamp(1rem,4vw,4.5rem) var(--s5);background:var(--charcoal);color:var(--linen);font-family:var(--sans)}
.footer-lead{display:grid;grid-template-columns:1fr 1fr;gap:var(--s8);padding-bottom:var(--s7);border-bottom:1px solid color-mix(in oklch,var(--linen),transparent 55%)}
.footer-lead p{max-width:58ch;margin-top:var(--s4);font-size:.85rem}
.footer-brand{font-size:1.15rem}
.footer-brand img{width:42px;filter:brightness(0) invert(1)}
.footer-statement{font-size:1rem!important}
.footer-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--s7);padding:var(--s7) 0}
.footer-grid section{display:grid;align-content:start;gap:.55rem}
.footer-grid h2{font:700 .76rem var(--sans);text-transform:uppercase;letter-spacing:.1em;margin-bottom:.4rem}
.footer-grid a{font-size:.83rem}
.licence-register{border-top:1px solid color-mix(in oklch,var(--linen),transparent 55%);border-bottom:1px solid color-mix(in oklch,var(--linen),transparent 55%);padding:var(--s4) 0}
.licence-register summary{cursor:pointer;font-weight:700;font-size:.8rem}
.licence-register ul{columns:2;column-gap:var(--s6);font-size:.7rem;line-height:1.55;padding-left:1rem}
.licence-register li{break-inside:avoid;margin:.5rem 0}
.footer-small{font-size:.68rem;color:color-mix(in oklch,var(--linen),transparent 25%);max-width:100ch;margin-top:var(--s4)}
.cookie-note{position:fixed;z-index:10;right:1rem;bottom:1rem;max-width:420px;background:var(--paper);border:1px solid var(--charcoal);padding:var(--s4);display:grid;grid-template-columns:1fr auto;gap:var(--s4);align-items:end}
.cookie-note p{font:.75rem/1.5 var(--sans)}
.cookie-note button{background:var(--charcoal);color:var(--linen);border:0;padding:.7rem .9rem;font:700 .72rem var(--sans);cursor:pointer}
.cookie-note[hidden]{display:none}
code{font-size:.88em;overflow-wrap:anywhere}
@media(max-width:980px){
 .site-header{grid-template-columns:minmax(0,1fr) auto}.site-nav{grid-column:1/-1;overflow-x:auto;padding-bottom:.2rem}.header-age{grid-column:2;grid-row:1}
 .page-hero,.home-hero,.comparison-block,.editorial-section,.article-grid,.support-panel{grid-template-columns:1fr}
 .section-rail,.article-grid aside{position:static}
 .operator-row{grid-template-columns:44px 1fr 1fr}.operator-assessment{grid-column:2/-1}.operator-action{grid-column:2/-1}
}
@media(max-width:680px){
 .site-header{padding:var(--s3) var(--s4)}.brand small{display:none}.site-nav{gap:1.1rem;font-size:.75rem}
 .page-hero,.home-hero{padding-top:var(--s8)}h1{font-size:clamp(3rem,14vw,4.4rem)}.eyebrow{letter-spacing:.09em}
 .pre-comparison,.footer-lead,.footer-grid{grid-template-columns:1fr;gap:var(--s6)}
 .operator-row{grid-template-columns:34px 1fr;padding:var(--s5) 0}.operator-brand,.operator-assessment,.operator-action{grid-column:2}
 .support-links{grid-template-columns:1fr}.big-list li{grid-template-columns:3.2rem 1fr}
 .licence-register ul{columns:1}.cookie-note{left:.75rem;right:.75rem;bottom:.75rem;grid-template-columns:1fr}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
