*{box-sizing:border-box;margin:0;padding:0}
:root{--ink:#1c2430;--mut:#5a6675;--line:#e2e6ec;--bg:#fff;--soft:#f6f8fa;--acc:#0b5cab;--acc2:#08447e}
body{font:16px/1.65 -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;color:var(--ink);background:var(--bg)}
.wrap{max-width:1080px;margin:0 auto;padding:0 22px}
a{color:var(--acc);text-decoration:none}a:hover{text-decoration:underline}
header{border-bottom:1px solid var(--line);background:#fff;position:sticky;top:0;z-index:20}
.bar{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:14px 0;flex-wrap:wrap}
.brand{font-weight:700;font-size:19px;letter-spacing:-.2px;color:var(--ink)}
.brand small{display:block;font-weight:400;font-size:12px;color:var(--mut);letter-spacing:.02em}
nav ul{list-style:none;display:flex;gap:18px;flex-wrap:wrap}
nav a{color:var(--mut);font-size:14.5px}nav a:hover{color:var(--acc)}
.tel{background:var(--acc);color:#fff;padding:9px 16px;border-radius:5px;font-weight:600;font-size:15px;white-space:nowrap}
.tel:hover{background:var(--acc2);text-decoration:none}
.hero{background:linear-gradient(135deg,#0b5cab 0%,#08447e 55%,#062f59 100%);border-bottom:4px solid #f5a623;padding:60px 0;color:#fff;position:relative;overflow:hidden}.hero:after{content:"";position:absolute;right:-70px;top:-70px;width:300px;height:300px;border-radius:50%;background:rgba(255,255,255,.07)}.hero .wrap{position:relative;z-index:1}.hero h1{color:#fff}.hero .lede{color:rgba(255,255,255,.92)}
h1{font-size:34px;line-height:1.2;letter-spacing:-.5px;margin-bottom:14px;color:var(--ink)}
h2{font-size:23px;margin:34px 0 12px;letter-spacing:-.3px;color:var(--ink)}
h3{font-size:17px;margin:22px 0 7px;color:var(--ink)}
p{margin-bottom:14px;max-width:70ch}
.lede{font-size:18px;color:var(--mut);max-width:66ch}
main{padding:38px 0 54px}
ul.bul{margin:0 0 16px 20px}ul.bul li{margin-bottom:8px;max-width:68ch}
.grid{display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));margin:22px 0}
.card{border:1px solid var(--line);border-radius:7px;padding:18px;background:#fff}
.card h3{margin-top:0}.card p{font-size:14.5px;color:var(--mut);margin-bottom:0}
.note{background:var(--soft);border-left:3px solid var(--acc);padding:16px 18px;border-radius:0 5px 5px 0;margin:22px 0}
.note p{margin-bottom:0}
form{max-width:560px;margin-top:18px}
.f{margin-bottom:14px}
label{display:block;font-size:14px;font-weight:600;margin-bottom:5px}
input,select,textarea{width:100%;padding:10px 12px;border:1px solid #c9d1da;border-radius:5px;font:inherit;font-size:15px}
textarea{min-height:110px;resize:vertical}
button{background:var(--acc);color:#fff;border:0;padding:12px 26px;border-radius:5px;font:inherit;font-weight:600;font-size:15.5px;cursor:pointer}
button:hover{background:var(--acc2)}
.req{color:#b3261e}
footer{border-top:1px solid var(--line);background:var(--soft);padding:30px 0;font-size:14px;color:var(--mut);margin-top:40px}
footer a{color:var(--mut)}footer .cols{display:grid;gap:22px;grid-template-columns:repeat(auto-fit,minmax(210px,1fr))}
footer strong{color:var(--ink);display:block;margin-bottom:7px}
footer ul{list-style:none}footer li{margin-bottom:5px}
.fine{margin-top:22px;padding-top:16px;border-top:1px solid var(--line);font-size:13px}
@media(max-width:640px){h1{font-size:27px}.hero{padding:34px 0}nav ul{gap:12px}}
