:root{
--bg:#f6f8fb;
--panel:#ffffff;
--text:#1f2933;
--muted:#5f6f7f;
--line:#d8e0e8;
--accent:#1f5f95;
--accent2:#6e879d;
--soft:#eef4f8;
--good:#3f7d3a;
--warn:#8b6b32;
--shadow-sm:0 6px 18px rgba(31,41,51,.05);
--shadow-md:0 14px 34px rgba(31,41,51,.08);
}
*{box-sizing:border-box}
body{margin:0;font:16px/1.6 Inter,Arial,sans-serif;background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
a{color:var(--accent);text-decoration:none}
a:hover{text-decoration:underline}
.wrap{max-width:1120px;margin:0 auto;padding:0 24px}
header{background:rgba(255,255,255,.96);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:10;backdrop-filter:saturate(140%) blur(8px);box-shadow:0 2px 10px rgba(31,41,51,.03)}
.nav{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:10px 0}
.brand{font-weight:700;font-size:1.15rem;display:flex;align-items:center}
.brand a{display:flex;align-items:center}
.brand-logo{display:block;height:130px;width:auto}
.navlinks{display:flex;gap:18px;flex-wrap:wrap}
.navlinks a{color:var(--text);font-weight:600}
.navlinks a:hover{text-decoration:none;color:var(--accent)}
main section{padding:38px 0}
.hero{padding:58px 0 46px;background:
linear-gradient(180deg, rgba(255,255,255,1) 0%, rgba(245,248,251,1) 100%)}
.hero-grid,.page-hero-grid,.grid-2,.grid-3,.footer-grid,.score-grid,.summary-grid,.compare-grid,.state-grid,.cards-list{display:grid;gap:20px}
.hero-grid{grid-template-columns:1.15fr .85fr;align-items:start}
.page-hero-grid{grid-template-columns:1.2fr .55fr;align-items:start}
.grid-2{grid-template-columns:1fr 1fr}
.grid-3{grid-template-columns:repeat(3,1fr)}
.score-grid{grid-template-columns:repeat(3,1fr)}
.summary-grid{grid-template-columns:repeat(4,1fr)}
.footer-grid{grid-template-columns:repeat(4,1fr);padding:24px 0}
.state-grid{grid-template-columns:repeat(5,1fr)}
.cards-list{grid-template-columns:1fr}
.eyebrow,.kicker,.label{color:var(--accent2);font-size:.79rem;font-weight:800;letter-spacing:.05em;text-transform:uppercase}
.lead{font-size:1.12rem;color:#36526d;max-width:46rem}
h1,h2,h3,h4{line-height:1.16;margin:0 0 10px;letter-spacing:-.01em}
h1{font-size:2.65rem}
h2{font-size:1.72rem}
h3{font-size:1.16rem}
.muted,.meta{color:var(--muted)}
.panel,.card,.score-card,.summary-block,.result-row,.compare-summary{
background:var(--panel);
border:1px solid var(--line);
border-radius:18px;
padding:18px;
box-shadow:var(--shadow-sm)
}
.panel.tight{padding:14px}
.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:18px}
.btn{
display:inline-block;
padding:12px 17px;
border-radius:12px;
font-weight:800;
border:1px solid transparent;
transition:transform .12s ease, box-shadow .12s ease, background .12s ease, border-color .12s ease
}
.btn:hover{text-decoration:none;transform:translateY(-1px)}
.btn.primary{background:var(--accent);color:#fff;box-shadow:0 8px 20px rgba(31,95,149,.18)}
.btn.primary:hover{background:#184f7c}
.btn.secondary{background:#fff;border-color:var(--line);color:var(--text)}
.btn.secondary:hover{background:#f9fbfc;border-color:#c7d3df}
.trust-line{margin-top:18px;color:#425466}
.field{margin:10px 0}
.field input,.field select{
width:100%;
padding:12px 14px;
border:1px solid var(--line);
border-radius:12px;
background:#fff;
font:inherit
}
.field input:focus,.field select:focus{
outline:none;
border-color:#9bb6ce;
box-shadow:0 0 0 4px rgba(31,95,149,.08)
}
.chips{display:flex;gap:8px;flex-wrap:wrap}
.chip{display:inline-block;padding:7px 10px;background:var(--soft);border:1px solid var(--line);border-radius:999px;font-size:.93rem}
.chip.active{background:var(--accent);color:#fff;border-color:var(--accent)}
.section-head{display:flex;justify-content:space-between;align-items:end;gap:16px;margin-bottom:18px}
.breadcrumbs{font-size:.93rem;color:var(--muted);margin-bottom:18px}
.page-hero{padding:30px 0 18px}
.score-big{min-width:220px;text-align:center}
.score-num{font-size:3rem;font-weight:800;line-height:1;color:var(--accent)}
.quick-box{font-size:1.04rem}
.score-bar{height:10px;background:var(--soft);border-radius:999px;overflow:hidden;margin:10px 0}
.score-fill{height:100%;background:linear-gradient(90deg,var(--accent),#4e82ad)}
.score-label{font-weight:800}
.result-row{
display:grid;
grid-template-columns:80px 1.2fr 1fr 180px;
align-items:start;
gap:14px
}
.rank{font-size:2rem;font-weight:800;color:var(--accent)}
.place-name{font-size:1.18rem;font-weight:800}
.mini-scores{display:flex;gap:8px;flex-wrap:wrap;margin:8px 0}
.mini-scores span{font-size:.92rem;background:var(--soft);padding:6px 9px;border-radius:999px;border:1px solid var(--line)}
.summary-block .label{margin-bottom:4px}
.faq details{background:#fff;border:1px solid var(--line);border-radius:14px;padding:14px 16px;margin:10px 0;box-shadow:var(--shadow-sm)}
.faq summary{cursor:pointer;font-weight:800}
.table-like{display:grid;gap:10px}
.compare-row{display:grid;grid-template-columns:1fr 150px 150px;gap:14px;align-items:center;padding:12px 0;border-top:1px solid var(--line)}
.compare-row:first-child{border-top:0}
.winner{font-weight:800;color:var(--good)}
.warn{color:var(--warn)}
footer{margin-top:34px;background:#fff;border-top:1px solid var(--line)}
footer h4{margin-bottom:8px}
footer a{display:block;margin:6px 0;color:#425466}
.directory-list{columns:3;column-gap:32px}
.directory-list a{display:block;padding:4px 0}
.subtle{background:var(--soft);padding:3px 8px;border-radius:999px;border:1px solid var(--line);font-size:.87rem}
.split-points{display:grid;grid-template-columns:1fr 1fr 1fr;gap:16px}
.split-points .card{height:100%}
.schema-note{display:none}
.dir-columns{columns:3;column-gap:32px}
.dir-columns a{display:block;padding:4px 0}
.note{color:#425466;font-size:.95rem}
.list-tight li{margin:6px 0}
.score-pair{display:flex;gap:8px;flex-wrap:wrap;margin-top:8px}
.state-section{margin-top:12px}
.cta-row{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}
.autocomplete-box{position:absolute;left:0;right:0;top:calc(100% + 6px);background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow-md);z-index:20;display:none;overflow:hidden}
.autocomplete-item{display:block;width:100%;padding:11px 12px;border:0;background:#fff;text-align:left;font:inherit;color:var(--text);cursor:pointer}
.autocomplete-item:hover{background:var(--soft)}
@media (max-width:980px){
.hero-grid,.page-hero-grid,.grid-2,.grid-3,.score-grid,.summary-grid,.footer-grid,.state-grid,.split-points,.result-row{grid-template-columns:1fr}
.result-row{gap:10px}
.directory-list{columns:2}
.page-hero{padding-top:18px}
}
@media (max-width:700px){
.brand-logo{height:36px}
}
@media (max-width:680px){
h1{font-size:2.1rem}
h2{font-size:1.52rem}
.wrap{padding:0 16px}
.directory-list,.dir-columns{columns:1}
.nav{align-items:start;flex-direction:column}
}

.chips .chip{display:inline-block}
.chip-btn{cursor:pointer;background:var(--soft);border:1px solid var(--line);border-radius:999px;padding:7px 10px;font-size:.93rem;color:var(--text);font:inherit}
.chip-btn:hover{background:#e5eef5}
.chip-btn.active{background:var(--accent);color:#fff;border-color:var(--accent)}
.hidden-row{display:none !important}

a[href$='-metro.html'] { word-break: normal; overflow-wrap: anywhere; }
