:root { color-scheme: dark; --accent:#73c4ff; --text:#fff; --muted:#b8c7d9; --line:rgba(255,255,255,.16); }
* { box-sizing:border-box; }
html { min-width:320px; background:#102036; }
body { margin:0; min-height:100vh; min-height:100svh; display:flex; flex-direction:column; color:var(--text); background:linear-gradient(105deg,#0f1d31 0%,#213f64 100%); font-family:Manrope,Arial,sans-serif; -webkit-font-smoothing:antialiased; }
.container { width:calc(100% - 160px); max-width:1280px; margin-inline:auto; }
a { color:inherit; text-decoration:none; }
a:focus-visible { outline:3px solid var(--accent); outline-offset:6px; border-radius:4px; }
.site-header { border-bottom:1px solid var(--line); }
.header-inner { height:111px; display:flex; align-items:center; justify-content:space-between; gap:24px; }
.brand { display:inline-flex; flex-shrink:0; }
.brand img { display:block; width:175px; height:40px; }
.cabinet { min-height:48px; width:190px; display:inline-flex; align-items:center; justify-content:center; padding:12px 20px; border-radius:10px; background:var(--accent); color:#102137; font-size:15px; font-weight:600; line-height:24px; white-space:nowrap; transition:background-color .15s ease; }
.cabinet:hover { background:#9bd5ff; }
.cabinet:focus-visible { outline-color:#fff; }
.hero { display:flex; flex:1; }
.hero-inner { position:relative; display:flex; align-items:center; padding-block:72px; }
.hero-content { position:relative; z-index:1; }
h1 { margin:0; font-size:64px; font-weight:700; line-height:1.08; letter-spacing:-1.3px; }
.heading-line { display:block; }
h1 em { color:var(--accent); font-style:normal; }
.description { max-width:620px; margin:32px 0 0; color:var(--muted); font-size:18px; line-height:28px; font-weight:400; }
.contact { margin-top:28px; }
.contact-label { margin:0 0 10px; color:var(--muted); font-size:14px; line-height:22px; }
.phone-row { display:flex; align-items:baseline; gap:14px; }
.phone { font-size:28px; font-weight:600; line-height:40px; white-space:nowrap; }
.phone:hover { color:var(--accent); }
.extension { color:#d2deec; font-size:18px; line-height:28px; white-space:nowrap; }
.brand-art { position:absolute; width:345px; height:auto; right:28px; top:50%; transform:translateY(-50%); opacity:.6; }
.site-footer { border-top:1px solid var(--line); color:var(--muted); }
.footer-inner { min-height:77px; display:flex; align-items:center; justify-content:space-between; gap:20px; padding-block:24px; }
.footer-inner small,.policy-label { font-size:12px; font-weight:400; line-height:20px; }
@media (min-width:761px) and (max-width:1250px) {
 .container { width:calc(100% - 96px); }
 h1 { font-size:clamp(38px,4.45vw,56px); letter-spacing:-.8px; }
 .description { max-width:56%; }
 .brand-art { width:25%; right:0; }
}
@media (max-width:760px) {
 .container { width:calc(100% - 48px); }
 .header-inner { height:87px; gap:16px; }
 .brand img { width:131.25px; height:30px; }
 .cabinet { width:153px; min-height:44px; padding:10px 12px; font-size:13px; line-height:24px; }
 .hero-inner { display:block; padding-top:40px; padding-bottom:26px; }
 h1 { max-width:520px; font-size:38px; line-height:44px; letter-spacing:-.65px; }
 .heading-line { display:inline; }
 .description { margin-top:18px; max-width:520px; font-size:16px; line-height:26px; }
 .contact { margin-top:26px; }
 .contact-label { margin-bottom:8px; }
 .phone-row { gap:12px; }
 .phone { font-size:22px; line-height:34px; }
 .extension { font-size:16px; line-height:26px; }
 .brand-art { width:72px; right:0; top:auto; bottom:0; transform:none; opacity:.35; }
 .footer-inner { min-height:89px; padding-block:20px 18px; display:flex; flex-direction:column; align-items:flex-start; justify-content:center; gap:10px; }
 .policy-label { font-size:12px; }
}
@media (max-width:374px) {
 .header-inner { gap:10px; }
 .brand img { width:122.5px; height:28px; }
 .cabinet { width:146px; padding-inline:8px; }
 h1 { font-size:35px; line-height:41px; }
 .phone { font-size:20px; }
 .phone-row { gap:10px; }
 .extension { font-size:15px; }
 .brand-art { width:58px; opacity:.28; }
}
@media (prefers-reduced-motion:reduce) { * { transition:none !important; } }
