:root{--blue:#1b3a8a;--blue2:#0b5fff;--orange:#f08a00;--fg:#1d2433;--mut:#5b6478;--line:#dfe4ee;--bg:#fff;--peach:#f7dccb;--sky:#c9eaf6;--mint:#eef3ee}
*{box-sizing:border-box}
body{margin:0;font:15px/1.6 system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;color:var(--fg);background:#f1f3f8}
a{color:var(--blue2)}img{max-width:100%;height:auto}
.sr{position:absolute;left:-9999px}
.shell{display:grid;grid-template-columns:260px minmax(0,1fr);max-width:1180px;margin:0 auto;background:var(--bg);min-height:100vh}
.side{border-right:1px solid var(--line);display:flex;flex-direction:column;padding:20px 0 0}
.brand{padding:0 20px}.city{margin:6px 0 14px;padding:0 20px;font-weight:700;color:var(--mut);letter-spacing:.2em;font-size:12px}
.side-photo{width:100%;display:block}
.side-menu{list-style:none;margin:0;padding:0}
.side-menu a{display:block;padding:12px 20px 12px 38px;border-bottom:1px solid var(--line);background:#f6f7fa;color:#444;text-decoration:none;font-weight:700;font-size:13px;letter-spacing:.05em;text-transform:uppercase;position:relative}
.side-menu a::before{content:"";position:absolute;left:18px;top:50%;width:8px;height:8px;margin-top:-4px;background:#b3123b}
.side-menu a:hover{background:#fff;color:var(--blue2)}
.call{margin-top:auto;display:flex;align-items:center;gap:10px;padding:14px 16px;border-top:3px solid #b3123b;text-decoration:none;color:var(--blue)}
.call span{font-size:11px;font-weight:800;color:#b3123b;line-height:1.1}.call strong{font-size:18px}
.topbar{display:flex;justify-content:flex-end;gap:18px;padding:6px 20px;font-size:18px}.topbar a{color:#b3123b;text-decoration:none}
.banner{margin:0 16px;padding:22px 28px;border-radius:6px;color:#fff;background:linear-gradient(100deg,#c75a00,#f08a00 45%,#e07a00);text-align:right}
.banner strong{display:block;font-size:clamp(1rem,2.2vw,1.35rem)}.banner span{display:block;font-weight:700}.banner em{display:block;font:italic 1.6rem Georgia,serif}
.navrow{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 20px;position:relative}
.nav{display:flex;gap:4px;flex-wrap:wrap}.nav a{padding:8px 12px;color:var(--fg);text-decoration:none;font-weight:600;font-size:14px;border-radius:6px}
.nav a:hover,.nav a.active{background:var(--mint);color:var(--blue2)}
.phone-pill{background:#2a2f3a;color:#fff;padding:8px 22px;border-radius:20px;text-decoration:none;font-weight:700;letter-spacing:.12em;white-space:nowrap}
.nav-toggle{display:none;background:none;border:1px solid var(--line);border-radius:8px;padding:6px 12px;font:inherit;cursor:pointer}
.hero{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:0 16px;padding:24px 32px;background:radial-gradient(circle at 70% 40%,#e6f3ff,#fff 70%);border:1px solid var(--line)}
.hero-text{max-width:340px}.kicker{margin:0;font-size:1.15rem;color:#555;letter-spacing:.04em}.kicker b{color:var(--blue)}
.hero h1{margin:4px 0 12px;font-size:clamp(1.8rem,4vw,2.6rem);color:var(--orange);letter-spacing:.04em}
.hero img{flex:1 1 0;min-width:0;max-width:520px}
.btn{display:inline-block;background:var(--orange);color:#fff;border:0;border-radius:8px;padding:11px 22px;font:inherit;font-weight:700;text-decoration:none;cursor:pointer}.btn:hover{filter:brightness(.92)}
.trio{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);align-items:start;gap:10px;padding:16px}
.box{border-radius:10px;padding:16px 18px}
.brands{background:var(--mint)}.brands ul{list-style:none;margin:0;padding:0;column-width:112px;column-gap:12px;font-size:12px;color:#444}.brands li{break-inside:avoid;padding:1px 0;overflow-wrap:anywhere}

.sky{background:var(--sky)}.check{list-style:none;margin:0;padding:0;font-weight:700;font-size:14px}.check li{padding-left:16px;position:relative;margin-bottom:6px}.check li::before{content:"•";position:absolute;left:2px;color:var(--blue2)}
.check.big{font-size:16px;font-weight:600}
.page{padding:28px 32px}.narrow{max-width:760px}.center{text-align:center}.lead{font-size:1.1rem;color:var(--mut)}
h1{color:var(--blue)}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:16px;margin-top:20px}
.card{display:block;background:#f6f7fa;border:1px solid var(--line);border-radius:10px;padding:20px;color:var(--fg);text-decoration:none}
a.card:hover{border-color:var(--blue2)}.card h3{margin:.4rem 0}.card p{margin:0;color:var(--mut)}.ico{font-size:28px}
.brand-grid{list-style:none;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px}.brand-grid li{background:var(--mint);padding:10px 12px;border-radius:8px;font-weight:700;font-size:13px}
.contact{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:28px}
form label{display:block;font-weight:600;margin-bottom:14px}
input,textarea{display:block;width:100%;margin-top:6px;padding:10px 12px;border:1px solid var(--line);border-radius:8px;font:inherit}
input:focus,textarea:focus,.btn:focus-visible,a:focus-visible,button:focus-visible{outline:3px solid #0b5fff66;outline-offset:2px}
.hp{position:absolute;left:-9999px;height:0;overflow:hidden}
.alert{padding:12px 16px;border-radius:8px;margin-bottom:16px}.alert.ok{background:#e7f7ee}.alert.err{background:#fdeaea}
.site-footer{margin-top:20px;border-top:3px solid var(--orange);background:#f6f7fa;padding:24px 28px 8px}
.cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px}.cols p{color:var(--mut);margin:.3rem 0}.copy{color:var(--mut);font-size:12px}
@media(max-width:900px){.shell{grid-template-columns:minmax(0,1fr)}.side{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 16px}.brand{padding:0}.brand img{width:150px;height:auto}.side-photo,.city,.side-menu{display:none}.call{margin:0;padding:0;border:0}.call span{display:none}.call strong{font-size:16px;white-space:nowrap}
.nav-toggle{display:block}.nav{display:none;position:absolute;top:100%;left:20px;right:20px;z-index:5;flex-direction:column;background:#fff;border:1px solid var(--line);border-radius:8px;padding:8px}.nav.open{display:flex}
.phone-pill{display:none}.hero{flex-direction:column;text-align:center;padding:20px}.trio{grid-template-columns:minmax(0,1fr)}.contact{grid-template-columns:minmax(0,1fr)}.page{padding:20px 16px}.hero img{flex:none;width:100%;max-width:420px}.hero-text{max-width:none}}

html{-webkit-text-size-adjust:100%}
.content{min-width:0}
.box,.card,.cols p,.page,.site-footer,.brand-grid li{overflow-wrap:anywhere}
.nav a{white-space:normal}
@media(max-width:480px){
.banner{margin:0 10px;padding:16px;text-align:center}.banner em{font-size:1.3rem}
.navrow{padding:10px 10px}.hero{margin:0 10px;padding:16px 12px}.trio{padding:12px 10px}
.brands ul{column-width:100px}.brand-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.grid{grid-template-columns:minmax(0,1fr)}.page{padding:18px 12px}.site-footer{padding:20px 12px 8px}
.topbar{padding:6px 12px}.brand img{width:130px}.call strong{font-size:14px}
}
