
:root{
  --blue:#2433e8; --blue-d:#1a26b8; --ink:#0d1236; --mint:#a8f0c6; --paper:#f3f5ff; --muted:#5b6088; --line:#dde1f7;
  --head:'Bricolage Grotesque','Trebuchet MS',system-ui,sans-serif; --body:'DM Sans',system-ui,-apple-system,'Segoe UI',sans-serif;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:var(--body);color:var(--ink);background:#fff;line-height:1.6;font-size:17px}
a{color:inherit;text-decoration:none}
:focus-visible{outline:3px solid var(--mint);outline-offset:3px}
.wrap{max-width:1140px;margin:0 auto;padding:0 24px}

/* top */
.top{background:var(--blue);color:#fff}
.bar{display:flex;justify-content:space-between;align-items:center;padding:22px 0}
.logo{font-family:var(--head);font-weight:800;font-size:1.7rem;letter-spacing:-.04em;display:flex;align-items:center;gap:10px}
.logo .mark{flex:none}
.bar nav{display:flex;align-items:center;gap:28px;font-weight:500;font-size:.95rem}
.bar nav a.l{opacity:.85}.bar nav a.l:hover{opacity:1}
.pill{display:inline-block;padding:10px 22px;border-radius:999px;border:2px solid #fff;font-weight:700;font-size:.95rem}
.pill:hover{background:#fff;color:var(--blue)}

/* hero */
.hero{display:grid;grid-template-columns:1fr 480px;gap:64px;align-items:center;padding:48px 0 96px}
.hero h1{font-family:var(--head);font-weight:800;font-size:clamp(2.6rem,6vw,4.6rem);line-height:1;letter-spacing:-.045em}
.hero p.lead{font-size:1.2rem;margin:24px 0 32px;max-width:30em;opacity:.9}
.chips{display:flex;flex-wrap:wrap;gap:10px}
.chip{border:2px solid rgba(255,255,255,.45);background:none;color:#fff;font:inherit;font-weight:500;font-size:.95rem;padding:8px 18px;border-radius:999px;cursor:pointer}
.chip:hover,.chip.on{background:var(--mint);border-color:var(--mint);color:var(--ink)}
.chips-l{font-size:.95rem;opacity:.85;margin-bottom:12px}

/* calculator */
.calc{background:#fff;color:var(--ink);border-radius:32px;padding:34px;box-shadow:0 30px 70px rgba(5,10,80,.35)}
.lab{display:flex;justify-content:space-between;font-weight:700;font-size:.95rem;color:var(--muted)}
.big{font-family:var(--head);font-weight:800;font-size:clamp(3.2rem,8vw,4.6rem);letter-spacing:-.05em;line-height:1;margin:6px 0 14px;font-variant-numeric:tabular-nums}
.big small{font-size:.38em;font-weight:700;letter-spacing:0;margin-left:6px;color:var(--muted)}
.mid{font-family:var(--head);font-weight:800;font-size:2.2rem;letter-spacing:-.04em;margin:4px 0 12px}
.mid small{font-size:.5em;color:var(--muted);font-weight:700;letter-spacing:0}
input[type=range]{-webkit-appearance:none;appearance:none;width:100%;height:10px;border-radius:99px;background:var(--line);outline-offset:8px;cursor:pointer}
input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:30px;height:30px;border-radius:50%;background:var(--blue);border:5px solid #fff;box-shadow:0 2px 10px rgba(36,51,232,.55)}
input[type=range]::-moz-range-thumb{width:20px;height:20px;border-radius:50%;background:var(--blue);border:5px solid #fff;box-shadow:0 2px 10px rgba(36,51,232,.55)}
.ends{display:flex;justify-content:space-between;font-size:.8rem;color:var(--muted);margin:6px 0 26px}
.sum{background:var(--paper);border-radius:20px;padding:20px 22px;margin:8px 0 22px}
.sum p{font-size:1.05rem}
.sum p b{font-family:var(--head);font-size:1.5rem;letter-spacing:-.03em;color:var(--blue)}
.sum dl{display:grid;grid-template-columns:1fr auto;gap:4px 12px;margin-top:12px;padding-top:12px;border-top:1px solid var(--line);font-size:.9rem;color:var(--muted)}
.sum dd{text-align:right;color:var(--ink);font-weight:700}
.btn{display:block;width:100%;text-align:center;background:var(--blue);color:#fff;border:0;font:inherit;font-weight:700;font-size:1.1rem;padding:18px;border-radius:999px;cursor:pointer;transition:background .2s}
.btn:hover{background:var(--blue-d)}
.fine{font-size:.75rem;color:var(--muted);margin-top:14px}

/* facts */
.facts{display:grid;grid-template-columns:repeat(3,1fr);border-bottom:1px solid var(--line)}
.facts div{padding:36px 28px}
.facts div+div{border-left:1px solid var(--line)}
.facts h3,.step h3{font-family:var(--head);font-size:1.35rem;letter-spacing:-.02em;margin-bottom:6px}
.facts p,.step p{color:var(--muted)}

/* steps */
.sec{padding:96px 0}
.sec h2{font-family:var(--head);font-weight:800;font-size:clamp(2rem,4vw,3rem);letter-spacing:-.04em;line-height:1.05;margin-bottom:12px}
.split{display:grid;grid-template-columns:1fr 1.2fr;gap:64px}
.split>div:first-child p{color:var(--muted);max-width:24em}
.step{display:grid;grid-template-columns:72px 1fr;gap:20px;padding:28px 0;border-top:1px solid var(--line)}
.step:last-child{border-bottom:1px solid var(--line)}
.step b{font-family:var(--head);font-size:3rem;font-weight:800;color:var(--blue);line-height:1;letter-spacing:-.05em}

/* faq */
.faqs{background:var(--paper)}
details{border-top:1px solid #cdd2f1;padding:22px 0}
details:last-child{border-bottom:1px solid #cdd2f1}
summary{font-family:var(--head);font-weight:700;font-size:1.25rem;cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:20px}
summary::-webkit-details-marker{display:none}
summary::after{content:"+";font-size:1.6rem;line-height:1;color:var(--blue);transition:transform .2s}
details[open] summary::after{transform:rotate(45deg)}
details p{margin-top:12px;color:var(--muted);max-width:42em}

/* cta */
.cta{background:var(--mint);padding:80px 0}
.cta .wrap{display:flex;justify-content:space-between;align-items:center;gap:32px;flex-wrap:wrap}
.cta h2{font-family:var(--head);font-weight:800;font-size:clamp(2rem,4vw,3rem);letter-spacing:-.04em;line-height:1.05}
.cta .btn{width:auto;padding:18px 40px;background:var(--ink)}

footer{background:var(--ink);color:#b8bde6;padding:48px 0;font-size:.85rem}
footer .logo{color:#fff;margin-bottom:16px}
footer p{max-width:60em;margin-top:8px}
footer a{text-decoration:underline;margin-right:16px}

@media(max-width:900px){
  .hero,.split{grid-template-columns:1fr;gap:40px}
  .facts{grid-template-columns:1fr}.facts div+div{border-left:0;border-top:1px solid var(--line)}
  .bar nav a.l{display:none}
  .sec{padding:64px 0}
}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}

:root{--head:'Trebuchet MS',system-ui,sans-serif;--body:system-ui,-apple-system,'Segoe UI',sans-serif}
section[id]{scroll-margin-top:24px}.eyebrow{text-transform:uppercase;letter-spacing:.12em;font-size:.76rem;font-weight:700;margin-bottom:20px}.hero h1 em{font-style:normal;color:var(--mint)}
.text-link{text-decoration:underline;text-underline-offset:4px}.subtle{color:var(--muted)}.intro{max-width:650px;margin-bottom:36px}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.card{padding:30px;border:1px solid var(--line);border-radius:24px;background:#fff;display:flex;flex-direction:column;align-items:flex-start}.card h3{font-family:var(--head);font-size:1.45rem;line-height:1.2;margin:16px 0 12px}.card p{color:var(--muted);margin-bottom:24px}.card a{margin-top:auto;color:var(--blue);font-weight:700}.tag{background:var(--paper);color:var(--blue);padding:5px 12px;border-radius:99px;font-size:.8rem;font-weight:700}.partner-strip{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}.partner-strip span{border:1px solid var(--line);padding:12px 20px;border-radius:99px;font-weight:700}.notice{border-left:3px solid var(--blue);padding:16px 20px;background:var(--paper);border-radius:0 12px 12px 0;margin-top:24px}.contact{background:var(--paper)}.contact-form{background:white;padding:32px;border-radius:28px}.fields{display:grid;grid-template-columns:1fr 1fr;gap:18px}.field{display:flex;flex-direction:column;gap:6px;margin-bottom:18px}.field label{font-size:.88rem;font-weight:700}.field input,.field select,.field textarea{width:100%;min-width:0;padding:13px 14px;border:1px solid #bfc5e6;border-radius:12px;font:inherit;color:var(--ink);background:#fff}.field textarea{resize:vertical}.check{display:flex;gap:10px;font-size:.85rem;margin:12px 0 22px}.check input{width:19px;height:19px;flex-shrink:0;margin-top:4px;accent-color:var(--blue)}.hidden{display:none}.form-status{margin:16px 0;font-size:.9rem}.footer-links{display:flex;flex-wrap:wrap;gap:12px 20px;margin:24px 0}.footer-links a{margin:0}.footer-bottom{border-top:1px solid #33395d;padding-top:24px;margin-top:24px;display:flex;justify-content:space-between;gap:24px;flex-wrap:wrap}.sal-link{display:inline-flex;align-items:center;justify-content:center;width:250px;min-height:50px;background:#fff;color:#163d73;font-size:.8rem;font-weight:700;text-align:center;border-radius:5px;margin:0}.sal-link img{width:250px;height:50px;object-fit:contain}.legal{max-width:800px;padding:64px 24px 88px;margin:auto}.legal h1{font-family:var(--head);font-size:clamp(2rem,5vw,3.5rem);line-height:1.1;letter-spacing:-.04em;margin:24px 0}.legal h2{font-family:var(--head);font-size:1.5rem;line-height:1.2;margin:32px 0 12px}.legal p,.legal ul{margin:14px 0}.legal ul{padding-left:24px}.legal a{color:var(--blue);text-decoration:underline}.legal .btn{color:white;text-decoration:none;margin-top:32px}.skip{position:absolute;left:16px;top:-100px;background:white;color:var(--ink);padding:12px;z-index:10}.skip:focus{top:12px}.menu-button{display:none}.hero .fine{font-size:.82rem}.calc h2{font-size:1.25rem;margin-bottom:24px}.calc .notice{font-size:.85rem}.bar nav{gap:22px}.brand-note{font-size:.75rem;letter-spacing:.08em;font-weight:500;display:block}.logo img{width:38px;height:38px}.logo{line-height:1}.hero .btn{margin-top:24px}.quote{font-family:var(--head);font-size:clamp(1.7rem,3vw,2.4rem);line-height:1.25;letter-spacing:-.03em}.mint-section{background:var(--mint)}
@media(max-width:900px){.grid{grid-template-columns:1fr}.hero{padding:32px 0 56px}.bar{position:relative;flex-wrap:wrap;gap:20px}.menu-button{display:block;background:transparent;color:white;border:1px solid #ffffff88;padding:9px 14px;border-radius:99px;font:inherit}.bar nav{width:100%;flex-wrap:wrap;gap:14px}.bar nav a.l{display:inline-block}.bar nav .pill{padding:8px 15px}.js .bar nav[hidden]{display:none}.hero h1{max-width:680px}.calc{max-width:600px;width:100%;padding:26px}.split{gap:30px}}
@media(max-width:520px){.fields{grid-template-columns:1fr;gap:0}.contact-form{padding:22px}.wrap{padding:0 20px}.hero h1{font-size:2.9rem}.big{font-size:3.5rem}.step{grid-template-columns:42px 1fr;gap:14px}.facts div{padding:26px 4px}.cta{padding:54px 0}.legal{padding:36px 20px 60px}.logo{font-size:1.5rem}}

:root{--head:'Bricolage Grotesque','Trebuchet MS',system-ui,sans-serif;--body:'DM Sans',system-ui,-apple-system,'Segoe UI',sans-serif}
