/* Autobabbel. Mobile first, light only. Chart colours: --bar (#2a78d6) and --bar-electric (#0d9488)
   pass the dataviz palette checks against white and --paper (CVD ΔE 15.7, normal 16.4, contrast >= 3:1). */
:root{
  color-scheme:light;
  --ink:#14213d;--muted:#4b5563;--paper:#faf8f4;--surface:#fff;--line:#e5e1d8;--line-strong:#cfc9bc;
  --accent:#c2410c;--accent-d:#9a3412;--accent-soft:#fff4ec;
  --teal:#0f766e;--teal-soft:#e7f5f2;--link:#1f56a8;
  --bar:#2a78d6;--bar-electric:#0d9488;--bar-muted:#b9b6ad;--grid:#e7e4dc;
  --radius:12px;--shadow:0 1px 2px rgba(20,33,61,.06),0 4px 14px rgba(20,33,61,.05);
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;font:17px/1.6 system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;color:var(--ink);background:var(--paper);overflow-wrap:break-word}
img,svg{max-width:100%}
a{color:var(--link);text-underline-offset:2px}
a:hover{color:var(--ink)}
:focus-visible{outline:3px solid var(--accent);outline-offset:2px;border-radius:3px}
h1,h2,h3{line-height:1.2;color:var(--ink);overflow-wrap:normal;letter-spacing:-.01em}
h1{font-size:clamp(1.8rem,5vw,2.6rem);margin:.4em 0 .35em}
h2{font-size:clamp(1.3rem,3vw,1.6rem);margin:1.6em 0 .5em}
h3{font-size:1.1rem;margin:1.2em 0 .4em}
p{margin:0 0 1em}
.wrap{max-width:1120px;margin:0 auto;padding:0 18px}
.narrow{max-width:760px}
.small{font-size:.875rem}
.muted{color:var(--muted)}
.lead{font-size:1.125rem;color:var(--muted);max-width:46em}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.skip{position:absolute;left:-999px;top:8px}
.skip:focus{left:10px;background:var(--surface);padding:8px 12px;z-index:20}
.env-banner{margin:0;padding:6px 16px;background:#fde68a;color:var(--ink);font-size:.875rem;text-align:center}
[hidden]{display:none!important}

/* buttons */
.btn{display:inline-block;background:var(--accent);color:#fff;border:2px solid var(--accent);border-radius:999px;padding:.55em 1.3em;font:inherit;font-weight:650;text-decoration:none;cursor:pointer;line-height:1.3}
.btn:hover{background:var(--accent-d);border-color:var(--accent-d);color:#fff}
.btn-ghost{background:transparent;color:var(--ink);border-color:var(--line-strong)}
.btn-ghost:hover{background:var(--surface);color:var(--ink);border-color:var(--ink)}
.cta-row{display:flex;flex-wrap:wrap;gap:10px;margin:1.2em 0 0}

/* header */
.site-header{background:var(--surface);border-bottom:1px solid var(--line)}
.header-inner{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:64px;position:relative}
.logo{display:flex;align-items:center;gap:8px;text-decoration:none;color:var(--ink);font-size:1.3rem;font-weight:800;letter-spacing:-.02em}
.logo-text span{color:var(--accent)}
.logo-mark{flex:none;display:block}
.nav-wide{display:none}
.menu>summary{list-style:none;cursor:pointer;font-weight:650;padding:7px 14px;border:1px solid var(--line-strong);border-radius:999px}
.menu>summary::-webkit-details-marker{display:none}
.menu>summary::after{content:"";display:inline-block;width:.45em;height:.45em;margin-left:.5em;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:translateY(-.15em) rotate(45deg)}
.menu[open]>summary::after{transform:translateY(.05em) rotate(-135deg)}
.nav-narrow{position:absolute;right:18px;top:60px;z-index:10;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:8px;display:flex;flex-direction:column;min-width:220px}
.main-nav a{padding:9px 12px;text-decoration:none;color:var(--ink);font-weight:550;border-radius:8px}
.main-nav a:hover{background:var(--paper)}
.main-nav a[aria-current=page]{color:var(--accent-d);text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:6px}

/* hero */
.hero{background:var(--surface);border-bottom:1px solid var(--line)}
.hero-inner{display:grid;gap:22px;padding-top:28px;padding-bottom:30px}
.hero h1{margin-top:.1em;max-width:15em}
.eyebrow{margin:0;font-weight:700;color:var(--accent-d);font-size:.9rem;text-transform:uppercase;letter-spacing:.06em}

/* stat tiles */
.stat-tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px;margin:0 0 1.2em}
.stat{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:12px 14px}
.page-head .stat{background:var(--surface)}
.stat dt{font-size:.875rem;color:var(--muted)}
.stat dd{margin:0;font-size:clamp(1.3rem,6vw,1.65rem);font-weight:700;line-height:1.2;white-space:nowrap}
.stat dd.stat-note{font-size:.8rem;font-weight:400;color:var(--muted);margin-top:2px;white-space:normal}
.stat-electric{border-left:4px solid var(--bar-electric)}

/* sections and cards */
.section{padding-top:8px;padding-bottom:8px}
.page-head{padding-bottom:4px}
.section-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:4px 16px}
.section-head h2{margin-bottom:.3em}
.two-col{display:grid;gap:18px;margin-top:18px}
.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:16px 18px;box-shadow:var(--shadow);min-width:0}
.card h2{margin-top:.2em}
.card h3{margin-top:.1em}
.card-grid{display:grid;gap:14px;grid-template-columns:minmax(0,1fr)}
.link-card{position:relative;display:flex;flex-direction:column;gap:6px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:16px 18px;color:var(--ink);box-shadow:var(--shadow)}
.link-card-title{font-size:1.1rem;font-weight:700;color:var(--link);text-decoration:none}
/* The title is the link; this layer makes the whole card clickable. */
.link-card-title::after{content:"";position:absolute;inset:0;border-radius:inherit}
.link-card:hover{border-color:var(--ink)}
.link-card:hover .link-card-title{text-decoration:underline}
.link-card:focus-within{outline:3px solid var(--link);outline-offset:2px}
.link-card-title:focus-visible{outline:none}
.chips{list-style:none;margin:0 0 12px;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.chips a{display:block;padding:6px 14px;background:var(--surface);border:1px solid var(--line-strong);border-radius:999px;text-decoration:none;color:var(--ink);font-weight:550}
.chips a:hover{border-color:var(--ink)}
.all-makes{margin:4px 0 8px}
.all-makes>summary{cursor:pointer;font-weight:650;color:var(--link);padding:6px 0}
.make-columns{columns:2 140px;column-gap:24px;padding:0;list-style:none;margin:8px 0 0}
.make-columns li{padding:2px 0;break-inside:avoid}
.notice{background:var(--surface);border:1px solid var(--line);border-left:4px solid var(--bar);padding:12px 14px;border-radius:8px}
.warning{background:var(--accent-soft);border-left:4px solid var(--accent);padding:10px 12px;border-radius:8px;font-size:.95rem}
.note{font-size:.9rem;color:var(--muted);border-top:1px solid var(--line);padding-top:10px;margin-top:16px}
.source-note{font-size:.875rem;color:var(--muted);margin:24px 0 8px}
.prose{max-width:46em}
.prose p{margin-bottom:.9em}
.facts{display:grid;gap:12px;margin:0 0 16px}
.facts>div{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:12px 14px}
.facts dt{font-size:.875rem;color:var(--muted)}
.facts dd{margin:2px 0 0}
.facts dd strong{display:block;font-size:1.4rem}
.facts dd .small{display:block;margin-top:4px}

/* letter index (makes) */
.letters{display:flex;flex-wrap:wrap;gap:6px;margin:4px 0 8px}
.letters a{display:inline-grid;place-items:center;min-width:2.3em;min-height:2.3em;padding:0 4px;background:var(--surface);border:1px solid var(--line);border-radius:8px;text-decoration:none;font-weight:650}
.letter-groups{display:grid;gap:4px 28px;grid-template-columns:repeat(auto-fill,minmax(230px,1fr))}
.letter-group h2{margin:.8em 0 .2em;font-size:1.3rem;color:var(--accent-d)}
.make-list{list-style:none;margin:0;padding:0}
.make-list li{display:flex;justify-content:space-between;gap:12px;padding:4px 0;border-bottom:1px solid var(--line)}
.make-list .muted{font-variant-numeric:tabular-nums}

/* tables */
.table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch;margin:0 0 12px}
.table,.bar-table{width:100%;border-collapse:collapse;font-size:.95rem;background:var(--surface)}
.table th,.table td,.bar-table th,.bar-table td{padding:7px 8px;border-bottom:1px solid var(--line);text-align:left;vertical-align:middle}
.table thead th,.bar-table thead th{font-size:.8rem;font-weight:600;color:var(--muted);border-bottom-color:var(--line-strong)}
.table tbody th,.bar-table tbody th{font-weight:500}
.num{text-align:right!important;white-space:nowrap;font-variant-numeric:tabular-nums}
.rank{width:2.2em;color:var(--muted)}
.table caption{caption-side:top;text-align:left;font-weight:650;padding:6px 0}
.table tfoot th,.table tfoot td{font-weight:700;border-top:2px solid var(--ink);border-bottom:0}
.table.compact th,.table.compact td{padding:4px 8px}
.bar-table .label{min-width:9em}
.bar-col{width:38%;min-width:90px}
.bar{display:block;height:12px;border-radius:0 4px 4px 0;background:var(--bar)}
.bar.w-0{display:none}
.tone-electric{background:var(--bar-electric)}
.tone-muted{background:var(--bar-muted)}
.is-unknown th,.is-unknown td{color:var(--muted)}
.card .bar-table{background:transparent}

/* figure and year chart */
.figure{margin:0 0 16px}
.figure figcaption{margin:6px 0 10px}
.figure figcaption strong{display:block}
.year-chart{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:14px 14px 6px}
.columns-chart{--plot-h:200px;--label-h:22px;display:grid;grid-template-columns:auto minmax(0,1fr);gap:8px;height:calc(var(--plot-h) + var(--label-h));margin:8px 0 6px}
.axis{position:relative;height:var(--plot-h);min-width:3.4em;font-size:.75rem;color:var(--muted);font-variant-numeric:tabular-nums}
.tick{position:absolute;right:0;transform:translateY(50%);white-space:nowrap;line-height:1}
.tick.t-0{bottom:0}.tick.t-50{bottom:50%}.tick.t-100{bottom:100%}
.plot{display:flex;align-items:stretch;gap:2px;height:100%;
  background:linear-gradient(var(--grid),var(--grid)) 0 0/100% 1px no-repeat,linear-gradient(var(--grid),var(--grid)) 0 calc(var(--plot-h) / 2)/100% 1px no-repeat,linear-gradient(var(--line-strong),var(--line-strong)) 0 var(--plot-h)/100% 1px no-repeat}
.col{flex:1 1 0;min-width:0;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;position:relative;height:100%;padding-bottom:var(--label-h)}
.col-bar{display:block;width:min(24px,72%);border-radius:4px 4px 0 0;background:var(--bar)}
.col:hover .col-bar{background:#1c5cab}
.col-label{position:absolute;bottom:0;left:50%;transform:translateX(-50%);font-size:.72rem;color:var(--muted);white-space:nowrap;font-variant-numeric:tabular-nums}
.col-label.is-hidden{display:none}
.col-value{font-size:.72rem;font-weight:650;color:var(--ink);white-space:nowrap;margin-bottom:2px;font-variant-numeric:tabular-nums}
.table-toggle{margin:6px 0 4px}
.table-toggle>summary{cursor:pointer;color:var(--link);font-weight:600;padding:4px 0}

/* calculators */
.calc-layout{display:grid;gap:22px;align-items:start}
.calculator{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:8px 16px 4px;box-shadow:var(--shadow)}
.calculator fieldset{border:0;margin:0;padding:8px 0 4px;min-width:0}
.calculator legend{font-weight:750;font-size:1.05rem;padding:8px 0 2px}
.field{margin:0 0 12px}
.field label{display:block;font-weight:600;font-size:.95rem;margin-bottom:3px}
.input-unit{display:flex;align-items:stretch;border:1px solid #8a8f99;border-radius:8px;background:var(--surface);overflow:hidden}
.input-unit:focus-within{outline:3px solid var(--accent);outline-offset:1px}
.input-unit input{flex:1;min-width:0;border:0;padding:.55em .7em;font:inherit;color:var(--ink);background:transparent;min-height:2.75rem}
.input-unit input:focus{outline:none}
.unit{display:flex;align-items:center;padding:0 .7em;background:var(--paper);color:var(--muted);font-size:.9rem;white-space:nowrap}
.help{margin:4px 0 0;font-size:.85rem;color:var(--muted)}
.calculator.is-live .calc-submit{display:none}
.calc-result{min-width:0}
.calc-result h2{margin-top:.2em}
.result-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0 0 12px}
.result-card{margin:0;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:12px 14px;display:flex;flex-direction:column}
.result-card strong{font-size:1.7rem;line-height:1.2}
.result-lease{border-left:4px solid var(--accent)}
.verdict{font-weight:650;font-size:1.1rem}
.result-table caption{font-size:1rem}
.assumptions{padding-left:1.2em}
.assumptions li{margin:0 0 .4em}

/* sister sites */
.sister{margin-top:26px;margin-bottom:10px}
.sister-grid{display:grid;gap:14px}
.sister-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:16px 18px;box-shadow:var(--shadow);border-top:4px solid var(--accent)}
.sister-leasecontract{border-top-color:var(--ink)}
.sister-card h2{margin:.1em 0 .4em;font-size:1.25rem}
.sister-card p:last-child{margin-bottom:0}
.sister-note{margin-top:8px}

/* breadcrumbs */
.crumbs{font-size:.875rem;padding-top:14px}
.crumbs ol{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:2px 6px}
.crumbs li+li::before{content:"›";margin-right:6px;color:var(--muted)}

/* article */
.article{padding-bottom:12px}
.article-head{border-bottom:1px solid var(--line);margin-bottom:18px}
.article-body h2{margin-top:1.4em}
.article-body ul,.article-body ol{padding-left:1.3em}
.article-body li{margin-bottom:.35em}
.article-body blockquote{margin:1em 0;padding:8px 16px;border-left:4px solid var(--teal);background:var(--teal-soft);border-radius:0 8px 8px 0}
.article-body table{width:100%;border-collapse:collapse;margin:0 0 1em;font-size:.95rem;background:var(--surface);display:block;overflow-x:auto}
.article-body th,.article-body td{border-bottom:1px solid var(--line);padding:6px 8px;text-align:left}
.sources ul{padding-left:1.2em;font-size:.95rem}
.page-body{padding-bottom:24px}
.error-page{padding-top:40px}

/* footer */
.site-footer{margin-top:40px;background:var(--ink);color:#c8d3e6;padding:30px 0 14px}
.site-footer a{color:#fff}
.footer-grid{display:grid;gap:22px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}
.footer-title{font-weight:700;color:#fff;margin:0 0 6px}
.site-footer ul{list-style:none;margin:0 0 8px;padding:0;font-size:.95rem}
.site-footer li{margin:4px 0}
.footer-makes{columns:2;column-gap:16px}
.footer-makes li{margin:0;padding:2px 0;break-inside:avoid}
.footer-source{margin-top:18px;color:#c8d3e6;border-top:1px solid rgba(255,255,255,.15);padding-top:12px}

@media (min-width:700px){
  .two-col{grid-template-columns:repeat(2,minmax(0,1fr))}
  .card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .card-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}
  .sister-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .sister-grid.is-single{grid-template-columns:minmax(0,1fr)}
  .facts{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}
  .columns-chart{--plot-h:240px}
}
@media (min-width:920px){
  .nav-wide{display:flex;gap:2px}
  .menu{display:none}
  .hero-inner{grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);align-items:center;padding-top:40px;padding-bottom:42px}
  .hero .stat-tiles{grid-template-columns:minmax(0,1fr)}
  .calc-layout{grid-template-columns:minmax(0,1fr) minmax(0,1.1fr)}
  .calc-result{position:sticky;top:12px}
}
@media (max-width:480px){
  body{font-size:16px}
  .bar-table .rank{display:none}
  .bar-col{width:30%;min-width:60px}
  .result-card strong{font-size:1.4rem}
}
@media print{
  .site-header,.site-footer,.sister,.menu,.calc-submit{display:none}
  body{background:#fff}
}

/* bar widths and column heights in whole percent (no inline styles: the CSP forbids them) */
.w-0{width:0%}.w-1{width:1%}.w-2{width:2%}.w-3{width:3%}.w-4{width:4%}.w-5{width:5%}.w-6{width:6%}.w-7{width:7%}.w-8{width:8%}.w-9{width:9%}.w-10{width:10%}.w-11{width:11%}.w-12{width:12%}.w-13{width:13%}.w-14{width:14%}.w-15{width:15%}.w-16{width:16%}.w-17{width:17%}.w-18{width:18%}.w-19{width:19%}.w-20{width:20%}.w-21{width:21%}.w-22{width:22%}.w-23{width:23%}.w-24{width:24%}.w-25{width:25%}.w-26{width:26%}.w-27{width:27%}.w-28{width:28%}.w-29{width:29%}.w-30{width:30%}.w-31{width:31%}.w-32{width:32%}.w-33{width:33%}.w-34{width:34%}.w-35{width:35%}.w-36{width:36%}.w-37{width:37%}.w-38{width:38%}.w-39{width:39%}.w-40{width:40%}.w-41{width:41%}.w-42{width:42%}.w-43{width:43%}.w-44{width:44%}.w-45{width:45%}.w-46{width:46%}.w-47{width:47%}.w-48{width:48%}.w-49{width:49%}.w-50{width:50%}.w-51{width:51%}.w-52{width:52%}.w-53{width:53%}.w-54{width:54%}.w-55{width:55%}.w-56{width:56%}.w-57{width:57%}.w-58{width:58%}.w-59{width:59%}.w-60{width:60%}.w-61{width:61%}.w-62{width:62%}.w-63{width:63%}.w-64{width:64%}.w-65{width:65%}.w-66{width:66%}.w-67{width:67%}.w-68{width:68%}.w-69{width:69%}.w-70{width:70%}.w-71{width:71%}.w-72{width:72%}.w-73{width:73%}.w-74{width:74%}.w-75{width:75%}.w-76{width:76%}.w-77{width:77%}.w-78{width:78%}.w-79{width:79%}.w-80{width:80%}.w-81{width:81%}.w-82{width:82%}.w-83{width:83%}.w-84{width:84%}.w-85{width:85%}.w-86{width:86%}.w-87{width:87%}.w-88{width:88%}.w-89{width:89%}.w-90{width:90%}.w-91{width:91%}.w-92{width:92%}.w-93{width:93%}.w-94{width:94%}.w-95{width:95%}.w-96{width:96%}.w-97{width:97%}.w-98{width:98%}.w-99{width:99%}.w-100{width:100%}
.h-0{height:0%}.h-1{height:1%}.h-2{height:2%}.h-3{height:3%}.h-4{height:4%}.h-5{height:5%}.h-6{height:6%}.h-7{height:7%}.h-8{height:8%}.h-9{height:9%}.h-10{height:10%}.h-11{height:11%}.h-12{height:12%}.h-13{height:13%}.h-14{height:14%}.h-15{height:15%}.h-16{height:16%}.h-17{height:17%}.h-18{height:18%}.h-19{height:19%}.h-20{height:20%}.h-21{height:21%}.h-22{height:22%}.h-23{height:23%}.h-24{height:24%}.h-25{height:25%}.h-26{height:26%}.h-27{height:27%}.h-28{height:28%}.h-29{height:29%}.h-30{height:30%}.h-31{height:31%}.h-32{height:32%}.h-33{height:33%}.h-34{height:34%}.h-35{height:35%}.h-36{height:36%}.h-37{height:37%}.h-38{height:38%}.h-39{height:39%}.h-40{height:40%}.h-41{height:41%}.h-42{height:42%}.h-43{height:43%}.h-44{height:44%}.h-45{height:45%}.h-46{height:46%}.h-47{height:47%}.h-48{height:48%}.h-49{height:49%}.h-50{height:50%}.h-51{height:51%}.h-52{height:52%}.h-53{height:53%}.h-54{height:54%}.h-55{height:55%}.h-56{height:56%}.h-57{height:57%}.h-58{height:58%}.h-59{height:59%}.h-60{height:60%}.h-61{height:61%}.h-62{height:62%}.h-63{height:63%}.h-64{height:64%}.h-65{height:65%}.h-66{height:66%}.h-67{height:67%}.h-68{height:68%}.h-69{height:69%}.h-70{height:70%}.h-71{height:71%}.h-72{height:72%}.h-73{height:73%}.h-74{height:74%}.h-75{height:75%}.h-76{height:76%}.h-77{height:77%}.h-78{height:78%}.h-79{height:79%}.h-80{height:80%}.h-81{height:81%}.h-82{height:82%}.h-83{height:83%}.h-84{height:84%}.h-85{height:85%}.h-86{height:86%}.h-87{height:87%}.h-88{height:88%}.h-89{height:89%}.h-90{height:90%}.h-91{height:91%}.h-92{height:92%}.h-93{height:93%}.h-94{height:94%}.h-95{height:95%}.h-96{height:96%}.h-97{height:97%}.h-98{height:98%}.h-99{height:99%}.h-100{height:100%}
