:root{--ink:#1b1f2a;--bg:#fff;--soft:#f3f5fa;--acc:#1f4fd1;--acc2:#0b7a5c;--max:68rem}
*{box-sizing:border-box}body{margin:0;font:1.05rem/1.6 system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;color:var(--ink);background:var(--bg)}
a{color:var(--acc)}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #f5a300;outline-offset:2px}
.skip{position:absolute;left:-999px}.skip:focus{left:1rem;top:1rem;background:#fff;padding:.5rem;z-index:9}
.wrap{max-width:var(--max);margin:auto;padding:0 1.25rem}
header.site{border-bottom:1px solid #e3e6ee}header.site .wrap{display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between;align-items:center;padding-block:.8rem}
.brand{font-weight:800;text-decoration:none;color:var(--ink)}nav ul{list-style:none;display:flex;flex-wrap:wrap;gap:1rem;margin:0;padding:0}
.hero{background:var(--soft);padding:3.5rem 0}.hero h1{font-size:clamp(1.8rem,5vw,2.8rem);line-height:1.15;margin:.2rem 0 1rem}
.btn{display:inline-block;background:var(--acc);color:#fff;padding:.75rem 1.2rem;border-radius:.4rem;text-decoration:none;font-weight:700;border:0;font-size:1rem;cursor:pointer}.btn.alt{background:#fff;color:var(--acc);border:2px solid var(--acc)}
section{padding:2.5rem 0}.grid{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(15rem,1fr))}
.card{border:1px solid #dfe3ec;border-radius:.6rem;padding:1.2rem;background:#fff}.card.feature{border:2px solid var(--acc)}
.price{font-size:2rem;font-weight:800}table{border-collapse:collapse;width:100%}th,td{border:1px solid #dfe3ec;padding:.5rem;text-align:left}
details{border-bottom:1px solid #dfe3ec;padding:.7rem 0}summary{font-weight:700;cursor:pointer}
.note{background:#fff6dd;border-left:4px solid #f5a300;padding:.8rem 1rem}
form label{display:block;font-weight:600;margin-top:1rem}input,select{width:100%;max-width:28rem;padding:.6rem;font-size:1rem;border:1px solid #8a93a6;border-radius:.3rem}
.check{display:flex;gap:.5rem;align-items:flex-start;font-weight:400}.check input{width:auto;margin-top:.35rem}
footer{background:var(--ink);color:#e9ecf3;padding:2rem 0;margin-top:2rem}footer a{color:#cfe0ff}
