
:root{--b:#1d4ed8;--b-d:#1e3a8a;--ink:#16202e;--soft:#516074;--mist:#eef2fb;--line:#dde5f2;--cta:#ea580c;--cta-d:#c2410c}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font:16px/1.65 system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;color:var(--ink);background:#fff;-webkit-font-smoothing:antialiased}
.wrap{max-width:1060px;margin:0 auto;padding:0 20px}
a{color:var(--b)}img{max-width:100%;height:auto}
.hdr{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.95);backdrop-filter:blur(8px);border-bottom:1px solid var(--line)}
.hdr-in{display:flex;align-items:center;gap:1rem;padding:.65rem 20px;max-width:1060px;margin:0 auto}
.brand{font-weight:800;font-size:1.02rem;color:var(--ink);text-decoration:none;white-space:nowrap}
.brand span{color:var(--b)}
nav.main{display:flex;flex-wrap:wrap;gap:.15rem;row-gap:.25rem;flex:1}
nav.main a{color:var(--soft);text-decoration:none;font-size:.9rem;font-weight:600;padding:.4rem .6rem;border-radius:8px;white-space:nowrap}
nav.main a:hover{background:var(--mist);color:var(--b)}
.tel-btn{background:var(--cta);color:#fff!important;font-weight:800;text-decoration:none;padding:.5rem 1rem;border-radius:99px;white-space:nowrap;font-size:.92rem}
.tel-btn:hover{background:var(--cta-d)}
.hero{background:linear-gradient(165deg,var(--mist),#fff 72%);border-bottom:1px solid var(--line);padding:2.8rem 0 2.2rem}
.badge{display:inline-block;border:1.5px solid var(--b);color:var(--b);border-radius:99px;font-size:.76rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;padding:.22rem .75rem;margin-bottom:.9rem;background:#fff}
h1{font-size:clamp(1.65rem,4.2vw,2.45rem);line-height:1.16;font-weight:850;letter-spacing:-.01em}
.lead{color:var(--soft);font-size:1.07rem;max-width:48rem;margin-top:.8rem}
.cta-row{display:flex;gap:.9rem;align-items:center;flex-wrap:wrap;margin-top:1.4rem}
.cta{display:inline-block;background:var(--cta);color:#fff;font-weight:800;font-size:1.04rem;text-decoration:none;padding:.85rem 1.5rem;border-radius:12px;box-shadow:0 6px 18px rgba(234,88,12,.25)}
.cta:hover{background:var(--cta-d)}
.cta-sub{color:var(--soft);font-size:.9rem}
.strip{border-bottom:1px solid var(--line);background:#fff}
.strip .wrap{display:flex;gap:1.4rem;flex-wrap:wrap;padding:.8rem 20px;color:var(--soft);font-size:.9rem}
section{padding:2.3rem 0}
section.alt{background:var(--mist)}
h2{font-size:1.45rem;font-weight:800;margin-bottom:.8rem;letter-spacing:-.01em}
h3{font-size:1.06rem;font-weight:750;margin:1.1rem 0 .35rem}
section p{color:#3a4757;max-width:52rem;margin-bottom:.7rem}
section ul{margin:.3rem 0 .9rem 1.2rem;color:#3a4757;max-width:50rem}
section li{margin-bottom:.3rem}
.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(225px,1fr));gap:.9rem;margin-top:1.1rem}
.card{display:block;background:#fff;border:1px solid var(--line);border-radius:14px;padding:1rem 1.1rem;text-decoration:none;color:var(--ink);transition:box-shadow .15s,transform .15s}
.card:hover{box-shadow:0 8px 22px rgba(29,78,216,.13);transform:translateY(-2px)}
.card b{display:block;margin-bottom:.25rem;color:var(--b-d)}
.card small{color:var(--soft);line-height:1.45;display:block}
.tel-inline{display:inline-block;background:var(--cta);color:#fff;padding:.85rem 1.7rem;border-radius:12px;text-decoration:none;font-weight:800;font-size:1.08rem}
details{background:#fff;border:1px solid var(--line);border-radius:12px;padding:.9rem 1.1rem;margin-bottom:.65rem;max-width:52rem}
details summary{cursor:pointer;font-weight:700;color:var(--ink)}
details p{margin-top:.55rem}
.crumb{font-size:.85rem;color:var(--soft);padding:.8rem 0 0}
.crumb a{color:var(--soft);text-decoration:none}
.crumb a:hover{color:var(--b)}
.ftr{background:#0f2033;color:#9fb2cc;padding:1.8rem 0 2rem;font-size:.86rem}
.ftr a{color:#cfe0f2;text-decoration:none}
.ftr .wrap{display:flex;flex-wrap:wrap;gap:1.4rem;justify-content:space-between;align-items:flex-start}
.ftr h4{color:#fff;font-size:.95rem;margin-bottom:.5rem}
.ftr .col a{display:block;padding:.12rem 0}
.cta-final{background:linear-gradient(135deg,var(--b),var(--b-d));color:#fff;text-align:center;padding:2.6rem 0}
.cta-final h2{color:#fff}
.cta-final p{color:#d6e2f7;max-width:42rem;margin:.5rem auto 1.3rem}
a:focus-visible,summary:focus-visible{outline:3px solid var(--cta);outline-offset:2px;border-radius:4px}
@media(prefers-reduced-motion:reduce){*{transition:none!important}html{scroll-behavior:auto}}
@media(max-width:760px){nav.main{order:3;flex-basis:100%}.hdr-in{flex-wrap:wrap;padding-bottom:.45rem}nav.main a{font-size:.8rem;padding:.26rem .42rem}}
