:root{--ink:#1f2933;--mut:#52606d;--bg:#f7f9fb;--pri:#1f4e79;--acc:#2b7a78;--line:#e4e7eb}
*{box-sizing:border-box}body{margin:0;font:16px/1.6 system-ui,-apple-system,Segoe UI,Roboto,sans-serif;color:var(--ink);background:#fff}
a{color:var(--pri)}.wrap{max-width:1040px;margin:0 auto;padding:0 18px}
header{border-bottom:1px solid var(--line);background:#fff;position:sticky;top:0;z-index:5}.nav{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 18px;flex-wrap:wrap}
.logo{font-weight:800;color:var(--pri);text-decoration:none;font-size:1.1rem}.logo span{color:var(--acc)}
nav a{margin-left:14px;color:var(--mut);text-decoration:none;font-size:.93rem}nav a:hover{color:var(--pri)}
@media(max-width:700px){nav{width:100%;overflow-x:auto;white-space:nowrap}nav a{margin:0 12px 0 0}}
.hero{background:linear-gradient(180deg,#eef4f9,#fff);padding:36px 0 10px}h1{font-size:clamp(1.7rem,4.5vw,2.6rem);line-height:1.2;margin:.2em 0}.lead{font-size:1.1rem;color:var(--mut);max-width:720px}
section{padding:18px 0}h2{font-size:1.5rem;margin-top:1.4em}
.box{background:#fff;border:1px solid var(--line);border-radius:14px;padding:18px;box-shadow:0 2px 10px rgba(0,0,0,.04)}
.row{display:grid;grid-template-columns:2fr 1.3fr 1fr 1.2fr auto;gap:8px;align-items:end;margin-bottom:8px}
@media(max-width:700px){.row{grid-template-columns:1fr 1fr;border-bottom:1px dashed var(--line);padding-bottom:10px}.row .x{justify-self:start}}
label{font-size:.82rem;color:var(--mut);display:block}input{width:100%;font:inherit;padding:9px 10px;border:1px solid #cbd2d9;border-radius:8px;margin-top:2px}
.x{border:0;background:#f1f3f5;border-radius:8px;padding:10px 12px;cursor:pointer}
.ctrl{display:flex;flex-wrap:wrap;gap:10px;align-items:end;margin-top:10px}.ctrl label{max-width:260px}
.btn{display:inline-block;background:var(--pri);color:#fff;border:0;border-radius:10px;padding:11px 18px;font:600 1rem system-ui;cursor:pointer;text-decoration:none}.btn.ghost{background:#fff;color:var(--pri);border:1px solid var(--pri)}
.plans{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:16px 0}@media(max-width:800px){.plans{grid-template-columns:1fr}}
.plan{border:2px solid var(--line);border-radius:12px;padding:12px 14px;cursor:pointer}.plan.on{border-color:var(--acc);background:#f0f8f7}.plan h3{margin:0}.plan p{margin:.2em 0}.big{font-size:1.4rem;font-weight:800;color:var(--pri)}
canvas{width:100%;height:auto;border:1px solid var(--line);border-radius:10px}
.warn{background:#fff7e6;border:1px solid #f0c36d;padding:10px 12px;border-radius:10px}.note,.disc{font-size:.85rem;color:var(--mut)}
.tbl{overflow:auto;max-height:420px;border:1px solid var(--line);border-radius:10px}table{border-collapse:collapse;width:100%;font-size:.85rem}th,td{padding:6px 8px;border-bottom:1px solid var(--line);text-align:right;white-space:nowrap}th{position:sticky;top:0;background:#f1f5f9}
.offer{margin-top:22px;border:1px solid #cfe3e2;background:#f6fbfb;border-radius:14px;padding:16px}.aff-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}
.aff{display:block;border:1px solid var(--line);background:#fff;border-radius:10px;padding:12px;text-decoration:none;color:var(--ink)}.aff span{display:block;font-size:.88rem;color:var(--mut)}.aff em{font-style:normal;color:var(--acc);font-weight:600;font-size:.9rem}
.optin{margin-top:18px;border:1px solid var(--line);border-radius:14px;padding:16px}.optin input[type=email]{max-width:360px;display:block;margin-bottom:8px}.consent{display:flex;gap:8px;align-items:flex-start;font-size:.85rem;margin-bottom:10px}.consent input{width:auto;margin-top:4px}
.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:12px}.card{border:1px solid var(--line);border-radius:12px;padding:14px;text-decoration:none;color:var(--ink)}.card:hover{border-color:var(--acc)}
details{border-bottom:1px solid var(--line);padding:8px 0}summary{cursor:pointer;font-weight:600}
.ad{min-height:0}.ad:empty{display:none}
footer{margin-top:40px;background:var(--bg);border-top:1px solid var(--line);padding:22px 0;font-size:.88rem;color:var(--mut)}footer a{margin-right:14px}
.cmp{width:100%}.cmp td,.cmp th{text-align:left;white-space:normal}

.hero-card{background:linear-gradient(135deg,#1f4e79,#2b7a78);color:#fff;border-radius:16px;padding:20px 22px;margin:16px 0}.hero-card .k{margin:0;opacity:.9}.free{font-size:clamp(2.2rem,7vw,3.4rem);font-weight:800;margin:.1em 0;line-height:1.1}.free small{font-size:1rem;font-weight:600;opacity:.85}.hero-card .sub{margin:.2em 0 .8em;font-size:1.05rem}
.hstats{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px}.hstats div{background:rgba(255,255,255,.12);border-radius:10px;padding:10px 12px}.hstats b{display:block;font-size:1.35rem}.hstats span{font-size:.85rem;opacity:.9}.hero-card .note{color:#dbe7ef;margin:.8em 0 0}
.miles{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}@media(max-width:800px){.miles{grid-template-columns:1fr}}.mcol{border:1px solid var(--line);border-radius:12px;padding:10px 12px}.mcol.on{border-color:var(--acc);background:#f0f8f7}
.tl{list-style:none;padding:0;margin:8px 0 0;border-left:2px solid #cfe3e2}.tl li{position:relative;padding:0 0 10px 16px;font-size:.9rem}.tl .dot{position:absolute;left:-6px;top:5px;width:10px;height:10px;border-radius:50%;background:var(--acc)}
select{font:inherit;padding:8px;border:1px solid #cbd2d9;border-radius:8px;margin-top:2px;max-width:100%}#results,#miles,.amort,#hero{scroll-margin-top:120px}@media(min-width:701px){#results,#miles,.amort,#hero{scroll-margin-top:70px}}
