/*
Theme Name: QuoteChecked
Theme URI: https://quotechecked.com
Author: QuoteChecked
Description: Lean editorial theme for QuoteChecked. Cobalt on bone, numbers-forward, built for long-form price guides and display advertising.
Version: 1.0.1
Requires at least: 6.5
Tested up to: 7.0
Requires PHP: 8.0
License: GNU General Public License v2 or later
Text Domain: quotechecked
*/

@font-face{font-family:"Space Grotesk";src:url(assets/fonts/space-grotesk-700.woff2) format("woff2");font-weight:300 700;font-style:normal;font-display:swap}
@font-face{font-family:"IBM Plex Sans";src:url(assets/fonts/ibm-plex-sans-400.woff2) format("woff2");font-weight:100 700;font-style:normal;font-display:swap}
@font-face{font-family:"IBM Plex Mono";src:url(assets/fonts/ibm-plex-mono-500.woff2) format("woff2");font-weight:500;font-style:normal;font-display:swap}

:root{
 --bg:#F6F5F1; --surface:#FFFFFF; --ink:#101418; --accent:#1B3FC4;
 --muted:#5C6470; --rule:#D8D6CE; --ok:#0E6B45; --flag:#A32E22;
 --font-display:"Space Grotesk",system-ui,sans-serif;
 --font-body:"IBM Plex Sans",system-ui,sans-serif;
 --font-mono:"IBM Plex Mono",ui-monospace,monospace;
 --r-sm:2px; --r-md:4px;
 --s-xs:6px; --s-sm:12px; --s-md:24px; --s-lg:48px; --s-xl:88px;
 --wrap:1160px; --measure:720px;
}

:where(*,*::before,*::after){box-sizing:border-box}
:where(body,h1,h2,h3,h4,p,figure,blockquote,ul,ol,dl,dd){margin:0;padding:0}
:where(ul,ol){list-style:none}
:where(img,svg){display:block;max-width:100%;height:auto}
:where(a){color:inherit;text-decoration:none}
:where(button,input,select){font:inherit;color:inherit}

html{-webkit-text-size-adjust:100%}
body{background:var(--bg);color:var(--ink);font-family:var(--font-body);font-size:17px;line-height:1.65;font-weight:400;-webkit-font-smoothing:antialiased}
h1,h2,h3,h4,.display{font-family:var(--font-display);font-weight:700;line-height:1.08;letter-spacing:-0.015em}
h1{font-size:clamp(38px,5.2vw,60px)}
h2{font-size:clamp(27px,3.4vw,34px)}
h3{font-size:22px}
.num{font-family:var(--font-mono);font-weight:500;font-variant-numeric:tabular-nums}
.wrap{width:100%;max-width:var(--wrap);margin:0 auto;padding:0 var(--s-md)}
.measure{max-width:var(--measure)}
.eyebrow{font-size:13px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-weight:600}
.lede{font-size:19px;color:var(--muted);line-height:1.6}
.small{font-size:14px;color:var(--muted)}
.rule-top{border-top:1px solid var(--rule)}

.btn{display:inline-block;background:var(--accent);color:#FFFFFF;font-weight:600;font-size:16px;padding:13px 22px;border:1px solid var(--accent);border-radius:var(--r-md);cursor:pointer;transition:background .12s ease}
.btn:hover{background:#16339F;border-color:#16339F}
.btn-ghost{display:inline-block;background:transparent;color:var(--ink);font-weight:600;font-size:16px;padding:13px 22px;border:1px solid var(--ink);border-radius:var(--r-md)}
.btn-ghost:hover{background:var(--ink);color:var(--bg)}

.site-head{border-bottom:1px solid var(--rule);background:var(--bg);position:relative;z-index:5}
.head-in{display:flex;align-items:center;gap:var(--s-lg);height:76px}
.brand{display:flex;align-items:center;gap:10px;flex:none}
.brand-mark{width:26px;height:26px;flex:none}
.brand-text{font-family:var(--font-display);font-size:20px;letter-spacing:-0.02em;font-weight:500}
.brand-text b{font-weight:700}
.nav{display:flex;gap:var(--s-md);margin-left:auto;align-items:center;white-space:nowrap}
.nav a{font-size:15px;color:var(--muted);font-weight:400}
.nav a:hover{color:var(--ink)}
.nav-cta{margin-left:var(--s-sm)}
.nav-toggle{display:none;margin-left:auto;background:none;border:1px solid var(--rule);border-radius:var(--r-md);padding:8px 12px;font-size:14px;cursor:pointer}

.hero{padding:var(--s-xl) 0 var(--s-lg)}
.hero-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:var(--s-xl);align-items:start}
.hero h1{margin-bottom:var(--s-md)}
.hero h1 i{font-style:italic;color:var(--accent)}
.hero .lede{max-width:34ch;margin-bottom:var(--s-md)}
.hero-actions{display:flex;gap:var(--s-sm);flex-wrap:wrap}

.checker{background:var(--surface);border:1px solid var(--rule);border-radius:var(--r-md);padding:var(--s-md)}
.checker h2{font-size:18px;margin-bottom:var(--s-sm)}
.field{display:block;margin-bottom:var(--s-sm)}
.field span{display:block;font-size:13px;color:var(--muted);margin-bottom:5px}
.field input,.field select{width:100%;height:44px;padding:0 12px;background:var(--bg);border:1px solid var(--rule);border-radius:var(--r-md);font-family:var(--font-mono);font-size:16px}
.field select{font-family:var(--font-body)}
.field input:focus,.field select:focus{outline:2px solid var(--accent);outline-offset:-1px}
.checker .btn{width:100%;margin-top:var(--s-xs)}
.verdict{margin-top:var(--s-md);border-top:1px solid var(--rule);padding-top:var(--s-md)}
.verdict-band{display:inline-block;font-size:14px;font-weight:600;padding:4px 10px;border-radius:var(--r-sm);margin-bottom:10px}
.v-ok{background:#E4EFE9;color:var(--ok)}
.v-flag{background:#F4E3E0;color:var(--flag)}
.v-low{background:#E4E8F5;color:var(--accent)}
.verdict-num{font-family:var(--font-mono);font-weight:500;font-size:30px;line-height:1.1;display:block;margin-bottom:6px}
.bar{position:relative;height:8px;background:var(--rule);border-radius:var(--r-sm);margin:14px 0 8px}
.bar-range{position:absolute;top:0;bottom:0;background:#C3CAE8;border-radius:var(--r-sm)}
.bar-pin{position:absolute;top:-4px;width:2px;height:16px;background:var(--ink)}

.band{padding:var(--s-xl) 0;border-top:1px solid var(--rule)}
.band-head{display:flex;align-items:baseline;justify-content:space-between;gap:var(--s-md);margin-bottom:var(--s-lg);flex-wrap:wrap}
.band-head h2{max-width:20ch}

table.prices{width:100%;border-collapse:collapse;font-size:16px}
table.prices th{text-align:left;font-family:var(--font-body);font-size:13px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);font-weight:600;padding:0 12px 10px 0;border-bottom:1px solid var(--rule)}
table.prices th.r,table.prices td.r{text-align:right;padding-right:0}
table.prices td{padding:14px 12px 14px 0;border-bottom:1px solid var(--rule);vertical-align:baseline}
table.prices td.r{font-family:var(--font-mono);font-weight:500;white-space:nowrap}
table.prices tr:last-child td{border-bottom:0}
.table-scroll{overflow-x:auto}

.states{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:0 var(--s-md)}
.states a{display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding:12px 0;border-bottom:1px solid var(--rule);font-size:16px}
.states a:hover{color:var(--accent)}
.states .num{font-size:14px;color:var(--muted)}

.method{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:var(--s-xl)}
.method ol{counter-reset:m;display:grid;gap:var(--s-md)}
.method li{display:grid;grid-template-columns:auto 1fr;gap:14px;align-items:start}
.method li::before{counter-increment:m;content:counter(m,decimal-leading-zero);font-family:var(--font-mono);font-size:14px;color:var(--accent);padding-top:3px}
.method li b{display:block;font-family:var(--font-display);font-size:18px;font-weight:700;margin-bottom:2px}
.method li span{color:var(--muted);font-size:16px}

.guides{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:var(--s-md) var(--s-lg)}
.guide{border-top:1px solid var(--ink);padding-top:14px}
.guide h3{font-size:19px;margin-bottom:6px}
.guide h3 a:hover{color:var(--accent)}
.guide p{font-size:15px;color:var(--muted)}
.guide .kicker{font-family:var(--font-mono);font-size:13px;color:var(--accent);display:block;margin-bottom:8px}
.empty{border-top:1px solid var(--ink);padding-top:14px;max-width:46ch}

.adslot{margin:var(--s-lg) 0;border-top:1px solid var(--rule);padding-top:10px;min-height:110px}
.adslot-label{font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}

.site-foot{background:var(--ink);color:#E8E6E1;margin-top:var(--s-xl);padding:var(--s-lg) 0 var(--s-md)}
.foot-grid{display:grid;grid-template-columns:1.4fr repeat(3,1fr);gap:var(--s-md)}
.site-foot h4{font-family:var(--font-display);font-size:14px;color:#FFFFFF;margin-bottom:12px;letter-spacing:.04em}
.site-foot li{margin-bottom:8px}
.site-foot a{font-size:15px;color:#E8E6E1}
.site-foot a:hover{color:#FFFFFF}
.site-foot .small{color:#9BA1A8}
.foot-bottom{border-top:1px solid #2A2F35;margin-top:var(--s-lg);padding-top:var(--s-md);display:flex;justify-content:space-between;gap:var(--s-md);flex-wrap:wrap;font-size:14px;color:#9BA1A8}

.entry{padding:var(--s-lg) 0}
.entry-head{max-width:var(--measure);margin-bottom:var(--s-md)}
.entry-head h1{margin-bottom:var(--s-sm)}
.entry-meta{font-size:14px;color:var(--muted);display:flex;gap:var(--s-sm);flex-wrap:wrap}
.entry-body{max-width:var(--measure)}
.entry-body p,.entry-body ul,.entry-body ol,.entry-body figure,.entry-body table{margin-bottom:var(--s-md)}
.entry-body h2{margin:var(--s-lg) 0 var(--s-sm)}
.entry-body h3{margin:var(--s-md) 0 var(--s-xs)}
.entry-body ul{list-style:disc;padding-left:22px}
.entry-body ol{list-style:decimal;padding-left:22px}
.entry-body li{margin-bottom:8px}
.entry-body a{color:var(--accent);text-decoration:underline;text-underline-offset:3px}
.entry-body table{width:100%;border-collapse:collapse;font-size:16px}
.entry-body th{text-align:left;font-size:13px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);border-bottom:1px solid var(--rule);padding:0 12px 10px 0}
.entry-body td{border-bottom:1px solid var(--rule);padding:12px 12px 12px 0}
.entry-body blockquote{border-left:2px solid var(--accent);padding:0 0 0 var(--s-md);margin:var(--s-md) 0;font-size:19px}

.pager{display:flex;gap:var(--s-sm);margin-top:var(--s-lg)}
.pager a,.pager span{border:1px solid var(--rule);border-radius:var(--r-md);padding:8px 14px;font-size:15px}
.pager .current{background:var(--ink);color:var(--bg);border-color:var(--ink)}
.skip{position:absolute;left:-9999px}
.skip:focus{left:var(--s-md);top:10px;background:var(--accent);color:#FFF;padding:8px 14px;z-index:99}

@media(max-width:1000px){
 .hero-grid,.method{grid-template-columns:1fr;gap:var(--s-lg)}
 .foot-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:860px){
 .nav{display:none;position:absolute;top:76px;left:0;right:0;flex-direction:column;align-items:flex-start;gap:0;background:var(--bg);border-bottom:1px solid var(--rule);padding:var(--s-sm) var(--s-md)}
 .nav.open{display:flex}
 .nav a{padding:10px 0;font-size:16px}
 .nav-cta{margin:8px 0 4px}
 .nav-toggle{display:block}
 .hero{padding:var(--s-lg) 0}
 body{font-size:16px}
}
@media(prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}
.bars{display:grid;gap:0;margin-bottom:var(--s-sm)}
.bar-row{display:grid;grid-template-columns:minmax(150px,1.05fr) minmax(0,2.1fr) auto;gap:var(--s-md);align-items:center;padding:16px 0;border-bottom:1px solid var(--rule)}
.bar-row:last-child{border-bottom:0}
.bar-label{font-size:16px}
.bar-label small{display:block;font-family:var(--font-mono);font-size:13px;color:var(--muted);margin-top:2px}
.bar-track{position:relative;height:10px;background:#E9E7E0;border-radius:var(--r-sm)}
.bar-fill{position:absolute;top:0;bottom:0;background:#C3CAE8;border-radius:var(--r-sm);box-shadow:inset 2px 0 0 var(--accent),inset -2px 0 0 var(--accent)}
.bar-figure{font-family:var(--font-mono);font-weight:500;white-space:nowrap;font-size:15px}
.bar-axis{display:flex;justify-content:space-between;font-family:var(--font-mono);font-size:12px;color:var(--muted);border-top:1px solid var(--rule);padding-top:8px}

.band-ink{background:var(--ink);color:#E8E6E1;border-top:1px solid var(--ink)}
.band-ink h2{color:#FFFFFF}
.band-ink .lede,.band-ink .small{color:#9BA1A8}
.schem{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(0,1fr);gap:var(--s-lg);align-items:center}
.schem svg{width:100%;height:auto}
.keys{display:grid}
.keys a{display:grid;grid-template-columns:24px 1fr;gap:10px;align-items:baseline;padding:12px 0;border-bottom:1px solid #2A2F35;color:#E8E6E1;font-size:16px}
.keys a:last-child{border-bottom:0}
.keys a:hover{color:#FFFFFF}
.keys i{font-family:var(--font-mono);font-style:normal;font-size:13px;color:#7E96EE}
.big-figure{font-family:var(--font-mono);font-weight:500;color:var(--accent);font-size:.92em}
.method-note{border-left:2px solid var(--accent);padding-left:var(--s-sm);margin-top:var(--s-md);font-size:15px;color:var(--muted);max-width:44ch}
@media(max-width:1000px){.schem{grid-template-columns:1fr;gap:var(--s-md)}.bar-row{grid-template-columns:1fr auto;gap:8px var(--s-sm)}.bar-track{grid-column:1/-1;order:3}}
.nav ul{display:flex;gap:var(--s-md);align-items:center;flex-wrap:wrap}
@media(max-width:860px){.nav ul{flex-direction:column;align-items:flex-start;gap:0}}

.schem-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}
@media(max-width:600px){
 .schem-scroll svg{min-width:430px}
 .foot-grid{grid-template-columns:1fr;gap:var(--s-md)}
 .band{padding:var(--s-lg) 0}
 .band-head{margin-bottom:var(--s-md)}
 .verdict-num{font-size:26px}
 h1{letter-spacing:-0.01em}
}
.method li{grid-template-columns:2.4em minmax(0,1fr)}
.method li::before{content:counter(m);grid-column:1;grid-row:1;padding-top:4px}
.method li b{grid-column:2;grid-row:1}
.method li span{grid-column:2;grid-row:2}
.btn,a.btn,a.btn:visited{color:#FFFFFF}
.entry-body a.btn,.empty a.btn{color:#FFFFFF;text-decoration:none}
.nav .btn,.nav a.btn,.nav a.nav-cta{color:#FFFFFF}
.nav .btn:hover,.nav a.nav-cta:hover{color:#FFFFFF}

.bar-typical{position:absolute;top:0;bottom:0;background:var(--accent);border-radius:var(--r-sm)}
.bar-figure small{display:block;font-family:var(--font-body);font-weight:400;font-size:12px;color:var(--muted);margin-top:3px;white-space:nowrap}
.bar-legend{display:flex;gap:var(--s-md);flex-wrap:wrap;font-size:13px;color:var(--muted);margin-top:var(--s-sm)}
.bar-legend span{display:inline-flex;align-items:center;gap:7px}
.bar-legend i{width:18px;height:8px;border-radius:var(--r-sm);display:inline-block;flex:none}
.bar .bar-typical{border-radius:var(--r-sm)}
.checker .verdict .small{line-height:1.55}

.entry-body .checker{max-width:480px;margin-bottom:var(--s-md)}

.states.roster span{display:block;padding:12px 0;border-bottom:1px solid var(--rule);font-size:16px;color:var(--muted)}

.states{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--s-md) var(--s-lg)}
.states a.route{display:block;padding:18px 0 20px;border-top:1px solid var(--ink);border-bottom:0;transition:border-color .12s ease}
.states a.route:hover{border-top-color:var(--accent)}
.route-path{display:flex;align-items:baseline;gap:9px;flex-wrap:wrap;margin-bottom:10px}
.route-path b{font-family:var(--font-display);font-weight:700;font-size:19px;letter-spacing:-0.015em;line-height:1.15}
.states a.route:hover .route-path b{color:var(--accent)}
.route-price{display:block;font-family:var(--font-mono);font-weight:500;font-size:19px;line-height:1.2;margin-bottom:4px;font-variant-numeric:tabular-nums}
.route-meta{display:block;font-size:13px;color:var(--muted)}
@media(max-width:600px){.states{gap:0 var(--s-md)}}