:root{--ink:#171717;--muted:#77736e;--paper:#f5f3ef;--card:#fff;--line:#dedbd5;--accent:#d84a28;--accent-soft:#f4ded6;--dark:#1e1e1c;--soft:#ece9e3}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif}.top{height:74px;border-bottom:1px solid var(--line);background:rgba(255,255,255,.94);backdrop-filter:blur(14px);display:flex;align-items:center;justify-content:space-between;padding:0 5vw;position:sticky;top:0;z-index:20}.brand{display:flex;align-items:center;gap:11px;text-decoration:none;color:inherit}.brand-mark{font-size:24px}.brand b{font:700 21px Georgia,serif}.brand small{display:block;font-size:8px;letter-spacing:.18em;color:var(--muted);margin-top:2px}.top nav{display:flex;gap:24px}.top nav a{font-size:12px;text-decoration:none;color:#555}.live{font-size:9px;letter-spacing:.1em;color:#5f6e61}.live i{display:inline-block;width:7px;height:7px;background:#4f9a62;border-radius:50%;margin-right:5px}main{max-width:1480px;margin:auto;padding:0 5vw 80px}.hero{min-height:560px;display:grid;grid-template-columns:1fr 340px;gap:70px;align-items:end;padding:72px 0}.eyebrow{font-size:9px;font-weight:800;letter-spacing:.19em;color:var(--accent)}h1,h2,h3{font-family:Georgia,serif;font-weight:500}h1{font-size:clamp(54px,7vw,104px);line-height:.88;letter-spacing:-.06em;max-width:1000px;margin:17px 0 30px}.hero p{font-size:18px;line-height:1.7;color:#5f5c58;max-width:840px}.hero-actions{display:flex;gap:17px;align-items:center;margin-top:32px}.btn{background:var(--dark);color:white;text-decoration:none;padding:13px 18px;font-size:11px}.hero-actions span{font-size:10px;color:#8b8781}.hero-card{background:var(--dark);color:#fff;padding:30px;min-height:285px;display:flex;flex-direction:column;justify-content:flex-end;box-shadow:14px 14px 0 var(--accent)}.hero-card span{font-size:9px;letter-spacing:.18em;color:#aaa;margin-bottom:auto}.hero-card strong{font:500 66px Georgia,serif;letter-spacing:-.05em}.hero-card small{color:#bbb;font-size:11px}.hero-card p{font-size:12px;line-height:1.55;color:#aaa;margin:15px 0 0}.hero-rule{width:46px;height:2px;background:var(--accent);margin-top:18px}.metric-grid{display:grid;grid-template-columns:repeat(5,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.metric{padding:25px 16px;border-right:1px solid var(--line)}.metric:last-child{border-right:0}.metric strong{display:block;font:500 40px Georgia,serif}.metric span{font-size:10px;text-transform:uppercase;letter-spacing:.1em;color:#65615d}.metric small{display:block;color:#aaa;font-size:10px;margin-top:5px}.quality-strip{display:grid;grid-template-columns:1.2fr .8fr;gap:70px;padding:75px 0 45px}.quality-strip h2,.section-head h2{font-size:43px;line-height:1;letter-spacing:-.045em;margin:10px 0 16px}.quality-strip p,.section-head p{color:#6c6965;line-height:1.7;font-size:14px;max-width:750px}.quality-numbers{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);align-self:end}.quality-numbers div{background:var(--paper);padding:18px}.quality-numbers strong{display:block;font:500 31px Georgia,serif}.quality-numbers span{font-size:10px;color:#777}.toolbar{display:grid;grid-template-columns:1.4fr 2fr 1fr 1fr 1fr auto;gap:8px;align-items:end;margin:20px 0}.toolbar-title h2{margin:6px 0 0;font-size:28px}.toolbar input,.toolbar select,.toolbar button{height:44px;border:1px solid var(--line);background:#fff;border-radius:2px;padding:0 12px;font:inherit;font-size:11px}.toolbar button{background:var(--dark);color:#fff;border-color:var(--dark);cursor:pointer}.explorer{display:grid;grid-template-columns:1fr 1fr;gap:20px}.panel{background:var(--card);border:1px solid var(--line);padding:25px}.panel-head{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;border-bottom:1px solid var(--line);padding-bottom:15px;margin-bottom:18px}.panel-head h2,.panel-head h3{margin:6px 0 0;font-size:27px}.muted,.caption{font-size:11px;color:#888;line-height:1.55}.map-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:7px}.uf{border:1px solid var(--line);background:#faf9f6;min-height:70px;text-align:left;padding:10px;cursor:pointer}.uf b{font-size:12px}.uf span{display:block;font-size:10px;color:#888;margin-top:6px}.uf.hot{background:var(--accent-soft);border-color:#dfb7a9}.caption{border-top:1px solid var(--line);padding-top:12px;margin-top:15px}.list{max-height:590px;overflow:auto}.item{padding:15px 0;border-bottom:1px solid var(--line)}.item:last-child{border-bottom:0}.item-top,.item-bottom{display:flex;justify-content:space-between;gap:10px;font-size:9px;color:#898580;text-transform:uppercase;letter-spacing:.05em}.item h3{font-size:19px;line-height:1.1;margin:7px 0}.tags{display:flex;gap:5px;flex-wrap:wrap}.tags span{background:var(--soft);padding:4px 7px;border-radius:20px;font-size:9px;color:#68645f}.item p{font-size:11px;line-height:1.5;color:#666;margin:9px 0}.item-bottom b{color:#444}.item-bottom a{color:var(--accent);text-decoration:none}.section-head{padding:90px 0 28px}.section-head.compact{padding:0 0 25px}.analysis-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:20px}.chart-panel.wide{grid-row:span 1}.bars{display:flex;flex-direction:column;gap:12px}.bar-label{display:flex;justify-content:space-between;gap:10px;font-size:11px}.bar-label span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bar-label b{font-size:11px}.track{height:7px;background:#ece9e3;margin-top:5px}.track i{display:block;height:100%;background:var(--accent)}.chart{height:235px;display:flex;gap:8px;align-items:flex-end;overflow-x:auto;padding:10px 0}.year{min-width:45px;display:flex;flex-direction:column;align-items:center;gap:5px;font-size:9px;color:#777}.year-track{height:175px;width:24px;background:#efede8;display:flex;align-items:flex-end}.year-track i{display:block;width:100%;background:var(--accent);min-height:2px}.year b{color:#333}.insight-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:20px;margin-top:20px}.big-insight{min-height:260px;background:var(--dark);color:#fff}.big-insight h2{font-size:43px;line-height:1;letter-spacing:-.04em;max-width:700px;margin-top:40px}.big-insight p{color:#aaa;max-width:650px;font-size:13px;line-height:1.6}.vehicle{margin-top:20px}.vehicle-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:30px}.vehicle-grid>b{font-size:10px;text-transform:uppercase;letter-spacing:.1em}.vehicle-grid .bars{margin-top:12px}.method{padding:90px 0 0}.method-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);margin-top:20px}.method-grid article{background:var(--paper);padding:24px}.method-grid article>b{color:var(--accent);font-size:12px}.method-grid h3{font-size:23px;margin:18px 0 9px}.method-grid p{font-size:12px;color:#6e6a65;line-height:1.6}.method-note{margin-top:20px;background:#eeeae4;border-left:3px solid var(--accent);padding:18px;display:flex;gap:20px;font-size:11px;line-height:1.55}.method-note strong{white-space:nowrap}footer{border-top:1px solid var(--line);padding:25px 5vw;color:#888;font-size:10px}footer a{color:inherit}@media(max-width:1050px){.hero,.quality-strip,.explorer,.analysis-grid,.insight-grid{grid-template-columns:1fr}.metric-grid{grid-template-columns:repeat(3,1fr)}.metric:nth-child(3){border-right:0}.toolbar{grid-template-columns:1fr 1fr}.toolbar-title{grid-column:1/-1}.vehicle-grid,.method-grid{grid-template-columns:1fr 1fr}}@media(max-width:650px){.top{padding:0 18px}.top nav{display:none}.live{display:none}main{padding:0 18px 60px}.hero{padding:42px 0;min-height:auto}.hero h1{font-size:52px}.hero p{font-size:16px}.hero-card{margin-top:20px}.metric-grid{grid-template-columns:1fr 1fr}.metric{border-right:1px solid var(--line)}.quality-strip{gap:30px}.quality-numbers{grid-template-columns:1fr 1fr}.toolbar{grid-template-columns:1fr}.toolbar-title{grid-column:auto}.map-grid{grid-template-columns:repeat(3,1fr)}.vehicle-grid,.method-grid{grid-template-columns:1fr}.method-note{flex-direction:column;gap:8px}.section-head h2,.quality-strip h2{font-size:34px}.big-insight h2{font-size:35px}}
.quality-breakdown{display:flex;flex-wrap:wrap;gap:6px;margin-top:9px}.quality-breakdown span{background:#ece9e3;padding:6px 8px;font-size:9px;color:#69655f}.quality-breakdown b{color:#222;margin-right:3px}


/* ===== Mobile / responsive navigation ===== */
body.menu-open{overflow:hidden}
.menu-toggle{display:none;width:42px;height:42px;border:1px solid var(--line);background:#fff;border-radius:3px;padding:9px;align-items:center;justify-content:center;flex-direction:column;gap:5px;cursor:pointer}
.menu-toggle span{display:block;width:20px;height:1.5px;background:var(--dark);transition:transform .2s,opacity .2s}
.mobile-menu,.menu-backdrop{display:none}
.mobile-menu{position:fixed;top:0;right:0;width:min(88vw,360px);height:100dvh;background:#fff;z-index:50;padding:22px 22px 30px;box-shadow:-18px 0 45px rgba(0,0,0,.14);transform:translateX(105%);transition:transform .25s ease;overflow-y:auto}
.mobile-menu.open{transform:translateX(0)}
.menu-backdrop{position:fixed;inset:0;background:rgba(20,20,18,.42);z-index:45;opacity:0;pointer-events:none;transition:opacity .25s ease}
.menu-backdrop.open{opacity:1;pointer-events:auto}
.mobile-menu-head{display:flex;align-items:center;justify-content:space-between;padding-bottom:20px;border-bottom:1px solid var(--line);font-size:9px;letter-spacing:.18em;font-weight:800;color:var(--accent)}
.mobile-menu-head button{border:0;background:none;font-size:31px;line-height:1;color:var(--dark);cursor:pointer;padding:0 3px}
.mobile-menu nav{display:flex;flex-direction:column;padding:12px 0}
.mobile-menu nav a{padding:17px 0;border-bottom:1px solid var(--line);font:500 22px Georgia,serif;color:var(--ink);text-decoration:none}
.mobile-menu nav a:active{color:var(--accent)}
.mobile-live{margin-top:24px;font-size:9px;letter-spacing:.1em;color:#5f6e61}
.mobile-live i{display:inline-block;width:7px;height:7px;background:#4f9a62;border-radius:50%;margin-right:5px}

/* Prevent layout overflow on narrow screens */
img,svg,canvas{max-width:100%}
.panel,.hero-copy,.hero-card,.quality-strip>div,.toolbar,.section-head,.method-grid article{min-width:0}

@media(max-width:1050px){
  .top{padding:0 4vw}
  .top nav{gap:14px}
  .hero{gap:40px}
  .toolbar input,.toolbar select,.toolbar button{min-width:0}
}

@media(max-width:650px){
  html{scroll-padding-top:68px}
  .top{height:68px;padding:0 16px;gap:10px}
  .brand{min-width:0;gap:8px}
  .brand-mark{font-size:21px}
  .brand b{font-size:19px}
  .brand small{font-size:6.5px;letter-spacing:.14em;white-space:nowrap}
  .desktop-nav{display:none!important}
  .live{display:none}
  .menu-toggle{display:flex;margin-left:auto;flex:0 0 42px}
  .mobile-menu{display:block}
  .menu-backdrop{display:block}
  main{padding:0 14px 48px;overflow:hidden}
  .hero{padding:34px 0 38px;gap:28px}
  .eyebrow{font-size:8px;letter-spacing:.14em}
  .hero h1{font-size:clamp(42px,14vw,58px);line-height:.91;margin:13px 0 22px;letter-spacing:-.055em}
  .hero p{font-size:15px;line-height:1.6}
  .hero-actions{align-items:stretch;flex-direction:column;gap:11px;margin-top:24px}
  .btn{text-align:center;padding:14px 16px;font-size:11px}
  .hero-actions span{font-size:9px}
  .hero-card{min-height:230px;padding:22px;box-shadow:8px 8px 0 var(--accent)}
  .hero-card strong{font-size:52px}
  .hero-card p{font-size:11px}
  .metric-grid{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:2px}
  .metric{padding:18px 12px;min-width:0}
  .metric strong{font-size:31px}
  .metric span{font-size:8px;letter-spacing:.07em}
  .metric small{font-size:9px}
  .quality-strip{padding:52px 0 30px;gap:26px}
  .quality-strip h2,.section-head h2{font-size:32px}
  .quality-strip p,.section-head p{font-size:13px;line-height:1.6}
  .quality-numbers{grid-template-columns:repeat(2,minmax(0,1fr))}
  .quality-numbers div{padding:14px 12px}
  .quality-numbers strong{font-size:26px}
  .quality-numbers span{font-size:9px}
  .quality-breakdown{gap:5px}
  .quality-breakdown span{font-size:8px;padding:5px 6px}
  .toolbar{display:flex;flex-direction:column;align-items:stretch;gap:7px;margin:18px 0 12px}
  .toolbar-title{width:100%}
  .toolbar-title h2{font-size:25px}
  .toolbar input,.toolbar select,.toolbar button{width:100%;height:46px;font-size:12px}
  .toolbar button{margin-top:2px}
  .explorer{gap:12px}
  .panel{padding:17px 14px}
  .panel-head{gap:10px;margin-bottom:14px;padding-bottom:12px}
  .panel-head h2,.panel-head h3{font-size:23px}
  .map-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:5px}
  .uf{min-height:61px;padding:8px}
  .uf b{font-size:11px}
  .uf span{font-size:9px;margin-top:4px}
  .list{max-height:none;overflow:visible}
  .item{padding:14px 0}
  .item-top,.item-bottom{font-size:8px}
  .item h3{font-size:18px;line-height:1.12}
  .item p{font-size:10.5px}
  .section-head{padding:58px 0 20px}
  .section-head.compact{padding:0 0 20px}
  .analysis-grid,.insight-grid{gap:12px}
  .chart-panel.wide{overflow:hidden}
  .chart{height:205px;gap:7px;padding-bottom:4px;-webkit-overflow-scrolling:touch}
  .year{min-width:37px}
  .year-track{height:145px;width:20px}
  .year b,.year span{font-size:8px}
  .bars{gap:10px}
  .bar-label{font-size:10px}
  .bar-label b{font-size:10px}
  .track{height:6px}
  .big-insight{min-height:230px}
  .big-insight h2{font-size:33px;margin-top:30px}
  .big-insight p{font-size:12px}
  .vehicle{margin-top:12px}
  .vehicle-grid{gap:25px}
  .method{padding-top:58px}
  .method-grid{gap:1px}
  .method-grid article{padding:19px 16px}
  .method-grid h3{font-size:21px;margin:13px 0 7px}
  .method-grid p{font-size:11px}
  .method-note{font-size:10.5px;padding:15px}
  footer{padding:20px 16px;line-height:1.7}
}

@media(max-width:380px){
  .brand small{font-size:6px;letter-spacing:.1em}
  .hero h1{font-size:40px}
  .metric strong{font-size:28px}
  .map-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .quality-numbers{grid-template-columns:1fr 1fr}
}
