/* Bloompad Websites — light, fast, system fonts only.
   Weight is a budget, not an afterthought: this market pays for data. */
:root{
  --paper:#ffffff; --paper-2:#f6f8f9; --line:#e2e8ec; --line-2:#cbd5db;
  --ink:#0f1b21; --ink-2:#44555f; --ink-3:#6b7f8a;
  --accent:#0e7490; --accent-2:#0b5e74; --accent-wash:#e6f4f8;
  --warn-wash:#fff8e6; --warn-line:#f0dba8;
  --max:1060px;
  --sans:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
  color-scheme:light;
}
*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:76px}
body{background:var(--paper);color:var(--ink);font-family:var(--sans);line-height:1.65;font-size:17px;-webkit-font-smoothing:antialiased;overflow-x:hidden}
a{color:var(--accent);text-decoration:none}
a:hover{text-decoration:underline}
img{display:block;max-width:100%}
h1,h2,h3{line-height:1.15;letter-spacing:-.021em;font-weight:700}
.wrap{max-width:var(--max);margin:0 auto;padding:0 clamp(16px,5vw,28px)}
.narrow{max-width:760px}

.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;padding:14px 26px;border-radius:8px;font-size:16px;font-weight:600;font-family:inherit;border:2px solid transparent;cursor:pointer}
.btn-fill{background:var(--accent);color:#fff}
.btn-fill:hover{background:var(--accent-2);text-decoration:none}
.btn-line{border-color:var(--line-2);color:var(--ink)}
.btn-line:hover{border-color:var(--ink);text-decoration:none}

header.top{border-bottom:1px solid var(--line);position:sticky;top:0;background:rgba(255,255,255,.95);backdrop-filter:blur(8px);z-index:50;padding-top:env(safe-area-inset-top,0px)}
header.top .wrap{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:64px;flex-wrap:wrap}
.brand{font-weight:700;font-size:19px;letter-spacing:-.025em;color:var(--ink)}
.brand:hover{text-decoration:none}
.brand .tm{font-size:9px;vertical-align:super;color:var(--ink-3)}
nav.main{display:flex;align-items:center;gap:19px;flex-wrap:wrap}
nav.main a{font-size:15px;color:var(--ink-2)}
nav.main a[aria-current]{color:var(--ink);font-weight:600}
.lang{font-size:13px;color:var(--ink-3);border-left:1px solid var(--line);padding-left:17px}

.hero{padding:clamp(44px,7vw,78px) 0 clamp(34px,5vw,54px)}
.hero h1{font-size:clamp(31px,5.3vw,50px)}
.hero .lede{margin-top:19px;font-size:clamp(17px,2vw,20px);color:var(--ink-2);max-width:60ch}
.hero .acts{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}
.hero .fine{margin-top:16px;font-size:14px;color:var(--ink-3)}

section.blk{padding:clamp(34px,5vw,56px) 0;border-top:1px solid var(--line)}
section.blk h2{font-size:clamp(24px,3.3vw,34px)}
section.blk p.intro{margin-top:14px;font-size:17.5px;color:var(--ink-2);max-width:62ch}

.cols{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;margin-top:32px}
.cols.two{grid-template-columns:repeat(2,1fr)}
.col h3{font-size:18.5px;margin-bottom:9px}
.col p{font-size:15.5px;color:var(--ink-2)}

ol.steps{list-style:none;counter-reset:s;margin-top:30px;display:grid;gap:22px}
ol.steps li{counter-increment:s;padding-left:46px;position:relative}
ol.steps li::before{content:counter(s);position:absolute;left:0;top:1px;width:30px;height:30px;border-radius:50%;background:var(--accent-wash);color:var(--accent-2);font-weight:700;font-size:15px;display:flex;align-items:center;justify-content:center}
ol.steps h3{font-size:17.5px;margin-bottom:5px}
ol.steps p{font-size:15.5px;color:var(--ink-2)}

ul.plain{list-style:none;margin-top:24px;display:grid;gap:13px}
ul.plain li{padding-left:27px;position:relative;font-size:16px;color:var(--ink-2)}
ul.plain li::before{content:"";position:absolute;left:2px;top:9px;width:9px;height:9px;border-radius:2px;background:var(--accent);opacity:.85}
ul.plain li b{color:var(--ink)}

.panel{background:var(--paper-2);border:1px solid var(--line);border-radius:12px;padding:clamp(20px,3vw,30px);margin-top:28px}
.panel h3{font-size:19px;margin-bottom:10px}
.panel p{color:var(--ink-2);font-size:16px}
.note{background:var(--warn-wash);border:1px solid var(--warn-line);border-radius:10px;padding:17px 19px;margin-top:26px;font-size:15.5px;color:#5c4a12}
.note b{color:#3f3208}

.price{font-size:clamp(32px,5vw,46px);font-weight:700;letter-spacing:-.03em;margin-top:6px}
.price small{display:block;font-size:15px;font-weight:400;color:var(--ink-3);letter-spacing:0;margin-top:7px}

.cta{border-top:1px solid var(--line);background:var(--paper-2);padding:clamp(36px,5vw,58px) 0;margin-top:clamp(36px,5vw,58px)}
.cta h2{font-size:clamp(23px,3vw,31px)}
.cta p{margin-top:12px;color:var(--ink-2);max-width:58ch}
.cta .acts{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px;align-items:center}
.cta .mail{font-weight:600;font-size:17px}

footer.btm{border-top:1px solid var(--line);padding:30px 0 calc(34px + env(safe-area-inset-bottom,0px));font-size:14.5px;color:var(--ink-3)}
footer.btm .wrap{display:flex;gap:18px;justify-content:space-between;flex-wrap:wrap;align-items:center}
footer.btm nav{display:flex;gap:17px;flex-wrap:wrap}
footer.btm a{color:var(--ink-2)}

.legal h2{font-size:21px;margin-top:34px}
.legal h3{font-size:17px;margin-top:22px}
.legal p,.legal li{color:var(--ink-2);font-size:16px;margin-top:11px}
.legal ul{margin-left:21px}
.legal .upd{font-size:14px;color:var(--ink-3)}

@media (max-width:820px){ .cols,.cols.two{grid-template-columns:1fr} }
@media (prefers-reduced-motion:reduce){ html{scroll-behavior:auto} }
