:root{--ink:#10243a;--ink-2:#294560;--muted:#5a6b7d;--line:#dbe3ea;--paper:#f6f8fa;--card:#fff;--brand:#0f6e4f;--brand-2:#0b5a40;--brand-soft:#e3f3ec;--warn:#9a5b00;--warn-soft:#fff3dd;--bad:#b42318;--bad-soft:#fdecea;--ok:#0f6e4f;--ok-soft:#e3f3ec;--radius:12px;--shadow:0 10px 30px -18px rgba(16,36,58,.35);--font:"Inter",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif}
*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.55 var(--font)}
a{color:var(--brand)}a:hover{color:var(--brand-2)}
.wrap{max-width:1040px;margin:0 auto;padding:0 16px}
header.top{background:#fff;border-bottom:1px solid var(--line)}
header.top .wrap{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:60px;flex-wrap:wrap}
.logo{display:flex;align-items:center;gap:8px;font-weight:800;font-size:19px;color:var(--ink);text-decoration:none;letter-spacing:-.01em}
.logo .tick{display:grid;place-items:center;width:28px;height:28px;border-radius:8px;background:var(--brand);color:#fff;font-size:17px}
nav.main{display:flex;gap:16px;flex-wrap:wrap;font-size:15px}nav.main a{color:var(--ink-2);text-decoration:none}nav.main a:hover{color:var(--brand)}
.hero{padding:44px 0 28px}.hero h1{font-size:clamp(28px,5vw,44px);line-height:1.1;margin:0 0 12px;letter-spacing:-.02em}
.hero p.lead{font-size:18px;color:var(--ink-2);max-width:640px;margin:0 0 22px}
h1{font-size:clamp(26px,4.4vw,36px);line-height:1.15;letter-spacing:-.015em;margin:28px 0 10px}
h2{font-size:22px;margin:30px 0 10px;letter-spacing:-.01em}h3{font-size:17px;margin:18px 0 6px}
.muted{color:var(--muted)}.small{font-size:14px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:46px;padding:0 18px;border-radius:10px;border:1px solid var(--brand);background:var(--brand);color:#fff;font-weight:700;font-size:16px;text-decoration:none;cursor:pointer}
.btn:hover{background:var(--brand-2);color:#fff}.btn.ghost{background:#fff;color:var(--brand)}.btn.ghost:hover{background:var(--brand-soft)}
.btn[disabled]{opacity:.6;cursor:wait}
.grid{display:grid;gap:14px}.g2{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.g3{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}
.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:18px;box-shadow:var(--shadow)}
.card h3{margin-top:0}.tool{text-decoration:none;color:var(--ink);display:block}.tool:hover{border-color:var(--brand)}
.tool .ico{font-size:26px}.tool strong{display:block;font-size:17px;margin:6px 0 4px}
.steps{counter-reset:s;list-style:none;padding:0;margin:0}.steps li{counter-increment:s;padding-left:38px;position:relative;margin:0 0 12px}
.steps li:before{content:counter(s);position:absolute;left:0;top:0;width:26px;height:26px;border-radius:50%;background:var(--brand-soft);color:var(--brand);font-weight:800;display:grid;place-items:center;font-size:14px}
.chips{display:flex;flex-wrap:wrap;gap:8px}.chip{border:1px solid var(--line);background:#fff;border-radius:999px;padding:8px 14px;font-size:15px;cursor:pointer;color:var(--ink);text-decoration:none}
.chip.on,.chip:hover{border-color:var(--brand);background:var(--brand-soft);color:var(--brand-2)}
label{display:block;font-weight:600;margin:14px 0 6px}input[type=text],input[type=tel],input[type=email],input[type=date],select,textarea{width:100%;min-height:46px;padding:10px 12px;border:1px solid #c9d4de;border-radius:10px;font:inherit;background:#fff;color:var(--ink)}
textarea{min-height:96px}.check{display:flex;gap:10px;align-items:flex-start;font-weight:400;font-size:14px;color:var(--ink-2)}.check input{margin-top:4px;width:20px;height:20px;flex:none}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin:14px 0}
.fact{background:#fff;border:1px solid var(--line);border-radius:10px;padding:12px}.fact b{display:block;font-size:26px;line-height:1.1}
table.pros{width:100%;border-collapse:collapse;background:#fff;border:1px solid var(--line);border-radius:10px;overflow:hidden;font-size:15px}
table.pros th,table.pros td{text-align:left;padding:10px 12px;border-bottom:1px solid var(--line);vertical-align:top}table.pros th{background:#eef3f7;font-size:13px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}
.tablewrap{overflow-x:auto}
.badge{display:inline-block;border-radius:999px;padding:3px 10px;font-size:13px;font-weight:700}
.badge.ok{background:var(--ok-soft);color:var(--ok)}.badge.bad{background:var(--bad-soft);color:var(--bad)}.badge.warn{background:var(--warn-soft);color:var(--warn)}
.result{margin-top:16px}.urg{font-weight:800;font-size:18px}.urg.emergency{color:var(--bad)}.urg.soon{color:var(--warn)}.urg.can_wait{color:var(--ok)}
.note{border-left:4px solid var(--brand);background:#fff;padding:12px 14px;border-radius:0 10px 10px 0;margin:16px 0}
.note.warn{border-color:var(--warn);background:var(--warn-soft)}.note.bad{border-color:var(--bad);background:var(--bad-soft)}
.towns{columns:3 180px;padding:0;list-style:none}.towns li{margin:0 0 6px;break-inside:avoid}
details.faq{background:#fff;border:1px solid var(--line);border-radius:10px;padding:12px 14px;margin:0 0 8px}details.faq summary{font-weight:700;cursor:pointer}
footer.foot{margin-top:48px;border-top:1px solid var(--line);background:#fff;font-size:14px;color:var(--muted)}footer.foot .wrap{padding:24px 16px}
footer.foot .disclose{color:var(--ink-2);max-width:760px}
.crumbs{font-size:14px;color:var(--muted);margin-top:18px}.crumbs a{color:var(--muted)}
.drop{border:2px dashed #b9c7d4;border-radius:12px;padding:20px;text-align:center;background:#fff;cursor:pointer}
.drop.has{border-color:var(--brand);background:var(--brand-soft)}.preview-img{max-width:100%;max-height:220px;border-radius:10px;margin-top:10px}
.err{color:var(--bad);font-weight:600;margin-top:8px}
@media (max-width:640px){header.top .wrap{gap:4px;padding-top:8px}nav.main{width:100%;flex-wrap:nowrap;overflow-x:auto;white-space:nowrap;gap:14px;font-size:14px;padding-bottom:10px}.facts{grid-template-columns:1fr 1fr}.fact b{font-size:22px}.hero{padding:28px 0 18px}table.pros{font-size:14px}}

/* --- Visual layer: icons, tiles, gauges, bars --- */
.i{width:24px;height:24px;flex:none;vertical-align:middle}.i.lg{width:32px;height:32px}.i.xl{width:44px;height:44px}
.iconbox{display:inline-grid;place-items:center;width:52px;height:52px;border-radius:14px;background:var(--brand-soft);color:var(--brand)}
.iconbox.warn{background:var(--warn-soft);color:var(--warn)}.iconbox.bad{background:var(--bad-soft);color:var(--bad)}
.hero2{display:grid;grid-template-columns:1.5fr 1fr;gap:28px;align-items:center;padding:40px 0 24px}
.hero2 h1{font-size:clamp(32px,4.6vw,50px);line-height:1.05;margin:0 0 14px;letter-spacing:-.025em}
.hero2 .sub{font-size:19px;color:var(--ink-2);margin:0 0 22px}
.phone{justify-self:center;width:250px;border-radius:34px;background:#10243a;padding:10px;box-shadow:0 30px 60px -30px rgba(16,36,58,.6)}
.phone .scr{background:#fff;border-radius:26px;padding:16px;min-height:380px;display:flex;flex-direction:column;gap:10px}
.phone .shot{height:120px;border-radius:14px;background:linear-gradient(160deg,#cfe3f3,#9ec3e2);display:grid;place-items:center;color:#2f6a9c}
.gauge{display:grid;grid-template-columns:repeat(3,1fr);gap:4px;margin:8px 0}.gauge span{height:10px;border-radius:6px;background:#e5ebf0}
.gauge.can_wait span:nth-child(1){background:var(--ok)}.gauge.soon span:nth-child(-n+2){background:#e0a100}.gauge.emergency span{background:var(--bad)}
.gauge-l{display:flex;justify-content:space-between;font-size:12px;color:var(--muted)}
.tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px;margin:8px 0 10px}
.tile{display:flex;gap:14px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:16px;padding:16px;text-decoration:none;color:var(--ink);box-shadow:var(--shadow);transition:border-color .15s,transform .15s}
.tile:hover{border-color:var(--brand);transform:translateY(-1px);color:var(--ink)}.tile strong{font-size:17px;display:block}.tile small{color:var(--muted);font-size:14px}
.flow{display:grid;grid-template-columns:1fr auto 1fr auto 1fr;gap:10px;align-items:center;text-align:center;margin:10px 0 6px}
.flow .st{background:#fff;border:1px solid var(--line);border-radius:16px;padding:16px 10px}.flow .st b{display:block;margin-top:8px}.flow .st small{color:var(--muted)}
.flow .ar{color:#9fb0c0}
.probs{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:10px}
.prob{display:flex;gap:10px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:12px;padding:12px 14px;text-decoration:none;color:var(--ink);font-weight:600}
.prob:hover{border-color:var(--brand);color:var(--brand-2)}.prob .i{color:var(--brand)}
.dos{display:grid;gap:10px;margin:10px 0}.do{display:flex;gap:12px;align-items:flex-start;background:#fff;border:1px solid var(--line);border-radius:12px;padding:12px 14px}
.do .n{flex:none;display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:var(--brand);color:#fff;font-weight:800;font-size:14px}
.bigdrop{display:flex;flex-direction:column;align-items:center;gap:8px;border:2px dashed #b9c7d4;border-radius:18px;padding:28px 16px;text-align:center;background:#fff;cursor:pointer;color:var(--ink-2)}
.bigdrop .i{width:48px;height:48px;color:var(--brand)}.bigdrop.has{border-color:var(--brand);background:var(--brand-soft)}
.getpro{margin-top:18px}.getpro>summary{list-style:none;cursor:pointer}.getpro>summary::-webkit-details-marker{display:none}
.getpro[open]>summary{margin-bottom:6px}
.agebar{position:relative;height:16px;border-radius:10px;background:linear-gradient(90deg,var(--ok) 0 53%,#e0a100 53% 80%,var(--bad) 80%);margin:14px 0 6px}
.agebar i{position:absolute;top:-6px;width:4px;height:28px;border-radius:3px;background:var(--ink);transform:translateX(-2px)}
.agebar-l{display:flex;justify-content:space-between;font-size:12px;color:var(--muted)}
.timeline{display:flex;align-items:center;gap:8px;margin:12px 0}.timeline .dot{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:var(--brand-soft);color:var(--brand);flex:none}
.timeline .line{flex:1;height:4px;border-radius:3px;background:var(--line)}.timeline .lbl{font-size:13px;color:var(--muted)}
.status{display:flex;gap:14px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:16px;padding:14px 16px;margin:0 0 10px}
.status .i{width:40px;height:40px}.status.ok .i{color:var(--ok)}.status.bad .i{color:var(--bad)}.status .meta{color:var(--muted);font-size:14px}
.bars{display:grid;gap:8px;margin:10px 0}.bar{display:grid;grid-template-columns:150px 1fr 40px;gap:10px;align-items:center;font-size:14px;text-decoration:none;color:var(--ink)}
.bar .track{height:12px;border-radius:8px;background:#e8eef3;overflow:hidden}.bar .fill{height:100%;background:var(--brand);border-radius:8px}
.bar.on .fill{background:var(--brand-2)}.bar.on{font-weight:700}
.prolist{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:10px}
.procard{background:#fff;border:1px solid var(--line);border-radius:12px;padding:12px 14px}.procard b{display:block}.procard .meta{font-size:13px;color:var(--muted)}
.tank{display:flex;gap:16px;align-items:center}
@media (max-width:760px){.hero2{grid-template-columns:1fr;padding-top:24px}.phone{display:none}.flow{grid-template-columns:1fr}.flow .ar{transform:rotate(90deg)}.bar{grid-template-columns:110px 1fr 34px}}
details.more>summary{list-style:none}details.more>summary::-webkit-details-marker{display:none}details.more[open]>summary{display:none}
.bar .track,.bar .fill{display:block}
.townhero{position:relative;border-radius:20px;overflow:hidden;margin:16px 0 8px;min-height:260px;display:flex;align-items:flex-end;background:linear-gradient(135deg,#0f6e4f,#10243a)}
.townhero img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.townhero:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(16,36,58,0) 30%,rgba(16,36,58,.85))}
.townhero .in{position:relative;z-index:1;padding:22px;color:#fff}
.townhero h1{color:#fff;margin:0 0 6px;font-size:clamp(28px,4.6vw,44px)}.townhero p{margin:0;color:#e3edf5}
.credit{font-size:12px;color:var(--muted);margin:0 0 14px}.credit a{color:var(--muted)}
.tradetiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px;margin:10px 0}
.tt{display:flex;flex-direction:column;gap:8px;background:#fff;border:1px solid var(--line);border-radius:16px;padding:16px;text-decoration:none;color:var(--ink);box-shadow:var(--shadow)}
.tt:hover{border-color:var(--brand);color:var(--ink)}.tt b{font-size:28px;line-height:1}.tt span{font-weight:600}.tt small{color:var(--muted)}
.tt.off{opacity:.55;box-shadow:none}
.banner{position:relative;height:150px;border-radius:16px;overflow:hidden;margin:14px 0 0}.banner img{width:100%;height:100%;object-fit:cover}
.tradetiles{grid-template-columns:repeat(3,1fr)}@media (max-width:640px){.tradetiles{grid-template-columns:repeat(2,1fr)}}
