:root{--ink:#1b2430;--muted:#5b6672;--line:#e3e8ee;--bg:#ffffff;--soft:#f5f7fa;--brand:#0f4c81;--brand-2:#1b7f79;--accent:#e0a526;--ok:#1b7f3a;--radius:12px;--max:1100px}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;font:16px/1.55 -apple-system,BlinkMacSystemFont,"Segoe UI",Inter,Roboto,"Helvetica Neue",Arial,sans-serif;color:var(--ink);background:var(--bg)}
a{color:var(--brand);text-decoration:none}a:hover{text-decoration:underline}
.wrap{max-width:var(--max);margin:0 auto;padding:0 20px}
header.top{border-bottom:1px solid var(--line);background:#fff;position:sticky;top:0;z-index:5}
header.top .wrap{display:flex;align-items:center;justify-content:space-between;height:64px}
.logo{font-weight:700;letter-spacing:.2px;color:var(--ink);display:flex;align-items:center;gap:10px}
.logo .mark{width:28px;height:28px;border-radius:7px;display:inline-block}
nav a{margin-left:22px;color:var(--ink);font-weight:500}nav a.cta{background:var(--brand);color:#fff;padding:9px 14px;border-radius:8px}
.hero{padding:72px 0 48px;background:linear-gradient(180deg,var(--soft),#fff)}
.hero h1{font-size:clamp(30px,4.5vw,46px);line-height:1.15;margin:0 0 16px;max-width:760px}
.hero p.lead{font-size:19px;color:var(--muted);max-width:680px;margin:0 0 28px}
.btn{display:inline-block;padding:12px 18px;border-radius:9px;font-weight:600;border:1px solid var(--brand);color:var(--brand);background:#fff}
.btn.primary{background:var(--brand);color:#fff}.btn+.btn{margin-left:10px}
.badges{display:flex;flex-wrap:wrap;gap:10px;margin-top:28px}.badge{font-size:13px;color:var(--muted);border:1px solid var(--line);border-radius:999px;padding:6px 12px;background:#fff}
section{padding:56px 0}section.alt{background:var(--soft)}
h2{font-size:clamp(24px,3vw,32px);margin:0 0 10px}p.sub{color:var(--muted);margin:0 0 28px;max-width:720px}
.grid{display:grid;gap:18px}.grid.c3{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.grid.c4{grid-template-columns:repeat(auto-fit,minmax(230px,1fr))}
.card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:22px}
.card h3{margin:0 0 8px;font-size:18px}.card p{margin:0;color:var(--muted);font-size:15px}
.steps{counter-reset:s}.steps .card{position:relative;padding-left:60px}.steps .card:before{counter-increment:s;content:counter(s);position:absolute;left:20px;top:20px;width:28px;height:28px;border-radius:50%;background:var(--brand);color:#fff;font-weight:700;display:flex;align-items:center;justify-content:center;font-size:14px}
.tiers{display:grid;gap:18px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}
.tier{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:24px;display:flex;flex-direction:column}
.tier.featured{border-color:var(--brand);box-shadow:0 8px 30px rgba(15,76,129,.10)}
.tier .name{font-weight:700;font-size:18px}.tier .for{color:var(--muted);font-size:14px;min-height:42px;margin:4px 0 12px}
.tier .price{font-size:32px;font-weight:700}.tier .price small{font-size:14px;color:var(--muted);font-weight:500}
.tier ul{list-style:none;padding:0;margin:16px 0 20px;font-size:15px}.tier li{padding:6px 0;border-top:1px solid var(--line)}.tier li:first-child{border-top:0}
.tier .btn{margin-top:auto;text-align:center}
table.compare{width:100%;border-collapse:collapse;font-size:15px;background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}
table.compare th,table.compare td{padding:10px 12px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}table.compare th{background:var(--soft)}
.note{font-size:14px;color:var(--muted)}
.faq details{border:1px solid var(--line);border-radius:10px;padding:14px 18px;background:#fff;margin-bottom:10px}.faq summary{font-weight:600;cursor:pointer}
footer{border-top:1px solid var(--line);padding:32px 0;color:var(--muted);font-size:14px}footer .wrap{display:flex;flex-wrap:wrap;gap:18px;justify-content:space-between}
.prose{max-width:780px}.prose h2{margin-top:36px}.prose h3{margin-top:24px}.prose li{margin:6px 0}
@media (max-width:720px){nav a{margin-left:12px;font-size:14px}nav a.cta{padding:7px 10px}.hero{padding:48px 0 36px}.btn+.btn{margin-left:0;margin-top:10px}}
