:root{--paper:#FAFAF7;--paper-2:#F1EFE8;--ink:#03255B;--ink-dim:#5B6B82;--line:#E3E2DC;--accent:#FA5E07;--accent-ink:#03255B;
--f-d:"Newsreader",Georgia,serif;--f-b:"Outfit",system-ui,sans-serif;--f-m:"IBM Plex Mono",ui-monospace,monospace;--pad:88px}
@media(min-width:900px){:root{--pad:144px}}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font:400 17px/1.55 var(--f-b)}
@media(min-width:900px){body{font-size:18px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important;animation:none!important}}
img,iframe{max-width:100%}
a{color:inherit}
:focus-visible{outline:3px solid var(--accent);outline-offset:3px}
.w{max-width:1120px;margin:0 auto;padding:0 24px}
.t{max-width:680px}
h1,h2,h3{font-family:var(--f-d);font-optical-sizing:auto;font-weight:650;margin:0 0 .5em;letter-spacing:-.02em}
h1{font-size:clamp(2.6rem,8vw,5.2rem);line-height:1.04;font-weight:680}
h2{font-size:clamp(1.9rem,4.5vw,3rem);line-height:1.1}
h3{font-size:1.5rem;line-height:1.2}
p{margin:0 0 1em}
.lb{font:400 12px/1.4 var(--f-m);text-transform:uppercase;letter-spacing:.12em;color:var(--ink-dim);margin:0 0 20px;display:block}
.dim{color:var(--ink-dim)}
.mono{font-family:var(--f-m);font-size:14px}
header.h{position:sticky;top:0;background:var(--paper);border-bottom:1px solid var(--line);z-index:20}
.hb{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:68px}
.wm{display:flex;align-items:center;text-decoration:none}
.wm img{height:32px;width:auto;display:block}
@media(min-width:900px){.wm img{height:38px}}
nav.n{display:none;position:absolute;left:0;right:0;top:68px;background:var(--paper);border-bottom:1px solid var(--line);padding:12px 24px 20px}
header.open nav.n{display:block}
nav.n a{display:block;padding:12px 0;text-decoration:none;font-size:16px}
nav.n a[aria-current]{text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:6px}
.hr{display:flex;align-items:center;gap:14px}
.lg{font:400 12px var(--f-m);display:flex;gap:6px}
.lg button{background:none;border:0;padding:8px 2px;min-height:44px;font:inherit;color:var(--ink-dim);cursor:pointer}
.lg button[aria-pressed=true]{color:var(--ink);text-decoration:underline;text-underline-offset:5px}
.mt{background:none;border:1px solid var(--line);min-height:44px;padding:0 14px;font:400 12px var(--f-m);cursor:pointer;color:var(--ink)}
.hr .btn{display:none}
@media(min-width:900px){
nav.n{display:flex;position:static;border:0;padding:0;gap:26px;background:none}
nav.n a{padding:6px 0;font-size:15px}
.mt{display:none}
.hr .btn{display:inline-flex}}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 26px;background:var(--accent);color:var(--accent-ink);border:0;border-radius:2px;font:500 16px var(--f-b);text-decoration:none;cursor:pointer}
.btn:hover{background:#D94E00}
.hero{padding-block:72px var(--pad)}
.hg{display:grid;gap:48px;align-items:center}
@media(min-width:900px){.hg{grid-template-columns:1.25fr 1fr;gap:80px}.hero{padding-block:110px var(--pad)}}
.sub{font-size:1.2rem;max-width:560px;margin:24px 0 32px}
.trust{font:400 13px var(--f-m);color:var(--ink-dim);margin:18px 0 0}
.tl{display:inline-block;margin-top:22px;color:var(--ink-dim)}
.panel{background:var(--paper-2);border:1px solid var(--line);padding:36px 32px;font:400 15px/2 var(--f-m)}
.panel p{margin:0}
.s{padding-block:var(--pad)}
.band{background:var(--paper-2)}
.ls{list-style:none;margin:0;padding:0}
.ls li{padding:22px 0;border-top:1px solid var(--line)}
.ls li:last-child{border-bottom:1px solid var(--line)}
.ls strong{display:block;font:650 1.4rem var(--f-d);letter-spacing:-.01em}
.g{display:grid;gap:0}
@media(min-width:800px){.g2{grid-template-columns:1fr 1fr;column-gap:64px}}
.num{font:400 12px var(--f-m);color:var(--ink-dim);letter-spacing:.12em}
.svc{padding:44px 0;border-top:1px solid var(--line)}
.svc .t{margin:0}
.pl{font:400 15px/2.1 var(--f-m);max-width:880px}
.card{border:1px solid var(--line);padding:44px 36px}
.cards{display:grid;gap:24px}
@media(min-width:800px){.cards{grid-template-columns:repeat(3,1fr)}}
form{max-width:560px;display:grid;gap:26px;margin-top:40px}
label{font:400 12px var(--f-m);text-transform:uppercase;letter-spacing:.12em;color:var(--ink-dim);display:block;margin-bottom:8px}
input,textarea{width:100%;min-height:48px;padding:12px 14px;background:#fff;border:1px solid var(--ink);border-radius:2px;font:400 17px var(--f-b);color:var(--ink)}
.fb{margin-top:18px;font-size:15px}
.fb a{color:var(--ink)}
details{border-top:1px solid var(--line);padding:22px 0}
details:last-of-type{border-bottom:1px solid var(--line)}
summary{font:650 1.35rem var(--f-d);cursor:pointer;letter-spacing:-.01em;min-height:44px}
details p{margin:12px 0 0;max-width:620px}
.big{font:680 clamp(1.8rem,6vw,3.2rem) var(--f-d);letter-spacing:-.02em;line-height:1.1}
.big a{display:inline-block;background:var(--accent);color:var(--accent-ink);text-decoration:none;padding:20px 30px;border-radius:2px}
.dl{display:grid;gap:22px;margin:48px 0}
.dl div{border-top:1px solid var(--line);padding-top:14px}
.dl span{display:block}
.map{width:100%;height:380px;border:1px solid var(--line);margin-top:56px;filter:grayscale(1)}
footer{background:var(--paper-2);padding:64px 0 120px;font-size:14px;color:var(--ink-dim);border-top:1px solid var(--line)}
footer p{margin:0 0 10px;max-width:680px}
footer a{color:var(--ink)}
.fab{position:fixed;right:20px;bottom:20px;width:56px;height:56px;border-radius:50%;background:var(--accent);display:flex;align-items:center;justify-content:center;z-index:30}
.fab svg{width:28px;height:28px;fill:#fff}
.fab:hover{background:#d9541a}
