/* Оформление главной: стилистика первого одностраничного сайта. */
.home-page { --home-gold: #ffb52f; --home-navy: #0b2132; }
.home-page .topline { background: #0c2030; color: #aebdc7; }
.home-page .sitehead { background: #fff; backdrop-filter: none; }
.home-page .brandicon { position:relative; overflow:hidden; transform:none; font-size:0; background:#132e44; }
.home-page .brandicon::before,.home-page .brandicon::after { content:""; position:absolute; top:9px; width:8px; height:26px; border-radius:2px; background:#f7ab23; transform:skewX(-25deg); }
.home-page .brandicon::before { left:13px; }.home-page .brandicon::after { left:25px; }
.home-page .brandname { font-style:italic; font-weight:900; }
.home-hero { position:relative; overflow:hidden; background:#061c2c; color:white; }
.home-hero-bg,.home-hero-grid { position:absolute; inset:0; pointer-events:none; }
.home-hero-bg { background-image:linear-gradient(90deg,rgba(4,22,35,.96) 0%,rgba(4,22,35,.91) 31%,rgba(4,22,35,.67) 54%,rgba(4,22,35,.14) 100%),linear-gradient(0deg,rgba(5,23,35,.7) 0%,transparent 44%),url('/assets/hero.webp'); background-size:cover; background-position:center; }
.home-hero-grid { opacity:.14; background-image:linear-gradient(rgba(255,255,255,.13) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.13) 1px,transparent 1px); background-size:56px 56px; mask-image:linear-gradient(90deg,#000,transparent 65%); }
.home-hero-wrap { position:relative; }
.home-hero-main { min-height:550px; display:flex; align-items:center; padding:64px 0 82px; }
.home-hero-copy { max-width:720px; }
.home-eyebrow { display:flex; align-items:center; gap:10px; color:#ffbe45; font-size:11px; font-weight:800; letter-spacing:2px; }
.home-eyebrow span { width:28px; height:2px; background:#f7ab23; flex:none; }
.home-hero h1 { max-width:720px; margin:22px 0 23px; font-size:clamp(44px,4.7vw,68px); line-height:1.05; letter-spacing:-.045em; font-weight:900; }
.home-hero h1 em { font-style:normal; color:#ffbe45; white-space:nowrap; }
.home-hero p { max-width:570px; margin:0 0 28px; color:#d6e0e7; font-size:17px; line-height:1.75; }
.home-hero-actions { display:flex; flex-wrap:wrap; gap:12px; }
.home-btn { display:inline-flex; justify-content:center; align-items:center; gap:18px; padding:18px 24px; border:1px solid transparent; border-radius:9px; font:inherit; font-weight:800; font-size:14px; line-height:1.15; cursor:pointer; transition:transform .2s,background .2s; text-decoration:none; }
.home-btn:hover { transform:translateY(-2px); }.home-btn:focus-visible { outline:3px solid #ffbe45; outline-offset:3px; }
.home-btn-accent { background:#f7ab23; color:#10283b; box-shadow:0 8px 25px #f7ab233b; }.home-btn-accent:hover { background:#ffc452; }
.home-btn-outline { border-color:#ffffff5c; color:#fff; background:#ffffff0d; }.home-btn-outline:hover { background:#ffffff29; }
.home-price { display:flex; align-items:center; gap:13px; margin-top:28px; color:#cad5dc; font-size:13px; }.home-price span { width:22px; height:1px; background:#c5a25c; }.home-price b { color:white; font-size:17px; }
.home-hero-legend { position:absolute; right:20px; bottom:48px; color:#f0eee8; font-size:11px; letter-spacing:1.3px; text-transform:uppercase; font-weight:750; }.home-hero-legend::before { content:""; display:inline-block; width:7px; height:7px; margin-right:9px; border-radius:50%; background:#ffbc38; }
.home-features { position:relative; background:#102a3e; border-top:1px solid #3d5260; }.home-feature-list { display:grid; grid-template-columns:repeat(4,1fr); min-height:109px; }
.home-feature { display:flex; align-items:center; gap:14px; padding:24px 19px; border-left:1px solid #365064; }.home-feature:first-child { border-left:0; }
.home-feature-icon { display:grid; place-items:center; flex:0 0 42px; width:42px; height:42px; border:1px solid #486176; border-radius:10px; color:#ffbe45; font-size:22px; }
.home-feature strong { display:block; color:#fff; font-size:13px; margin-bottom:5px; }.home-feature small { display:block; color:#a9bdc9; font-size:11px; line-height:1.55; }
.home-page .stats { transform:none; margin:32px 0 0; border:1px solid #e5ebef; border-radius:12px; box-shadow:0 14px 40px #0b22340a; }
.home-page .section { padding:92px 0; }.home-page .section.alt { background:#f5f7f8; }
.home-page .productcard { border-color:#e6ebee; border-radius:14px; }.home-page .productcard .pic { height:205px; }.home-page .productbody { padding:23px; }
.home-page .cta { background:#0b2538; color:white; }.home-page .cta .wrap { color:inherit; }
@media (max-width:1000px) { .home-hero-legend { display:none; }.home-feature-list { grid-template-columns:repeat(2,1fr); }.home-feature:nth-child(3) { border-left:0; }.home-feature:nth-child(n+3) { border-top:1px solid #365064; } }
@media (max-width:600px) {
 .home-hero-bg { background-image:linear-gradient(90deg,rgba(4,22,35,.95),rgba(4,22,35,.70)),linear-gradient(0deg,rgba(5,23,35,.72),transparent 45%),url('/assets/hero.webp'); background-position:57% center; }
 .home-hero-main { min-height:0; padding:60px 0 72px; }.home-hero h1 { font-size:clamp(39px,10vw,55px); letter-spacing:-.045em; margin:22px 0; }.home-hero p { font-size:15px; line-height:1.7; }
 .home-eyebrow { font-size:9px; letter-spacing:1.5px; }.home-hero-actions { flex-direction:column; }.home-btn { width:100%; min-height:55px; }.home-price { flex-wrap:wrap; }.home-price b { font-size:16px; }
 .home-feature { padding:19px 10px; gap:9px; }.home-feature:nth-child(even) { border-left:1px solid #365064; }.home-feature-icon { flex-basis:36px; width:36px; height:36px; font-size:19px; }.home-feature strong { font-size:11px; }.home-feature small { font-size:10px; }
 .home-page .stats { margin-top:24px; }.home-page .section { padding:65px 0; }
}

/* Шапка и типографика исходной версии, с безопасной шириной на телефонах. */
.home-page { font-family:Inter,system-ui,-apple-system,"Segoe UI",Arial,sans-serif; -webkit-font-smoothing:antialiased; }
.home-page .topline .wrap > span:first-child { display:flex; align-items:center; gap:8px; min-width:0; }
.home-page .topline .wrap > span:first-child::before { content:""; display:block; flex:0 0 7px; width:7px; height:7px; background:#ffc64d; border-radius:50%; }
.home-page .sitehead .wrap { max-width:1400px; gap:clamp(10px,1.3vw,20px); }
.home-page .headnav { gap:clamp(10px,1.4vw,22px); font-weight:700; }
.home-page .headphone { font-size:17px; letter-spacing:-.35px; }
.home-header-cta { flex:0 0 auto; display:inline-flex; align-items:center; justify-content:center; gap:12px; border:0; border-radius:9px; background:#f7ab23; color:#172a37; padding:15px 19px; white-space:nowrap; font-size:13px; font-weight:800; box-shadow:0 8px 25px #f7ab233b; }
.home-header-cta:hover { background:#ffc452; }
.home-hero h1 { font-weight:900; letter-spacing:-3.1px; }
.home-calc { box-sizing:border-box; width:min(490px,calc(100% - 32px)); max-height:calc(100dvh - 32px); border:0; border-radius:14px; padding:0; color:#162d3e; background:#fff; box-shadow:0 22px 70px #0006; }
.home-calc::backdrop { background:#071724b8; }
.home-calc-inner { position:relative; padding:30px; }
.home-calc-close { position:absolute; right:16px; top:12px; border:0; background:transparent; color:#516876; font-size:28px; line-height:1; }
.home-calc-eyebrow { color:#b5790c; text-transform:uppercase; font-size:10px; font-weight:800; letter-spacing:.13em; padding-right:24px; }
.home-calc h2 { margin:13px 30px 8px 0; font-size:27px; line-height:1.12; letter-spacing:-.04em; }
.home-calc p { margin:0 0 18px; color:#60717f; font-size:13px; line-height:1.6; }
.home-calc label { display:block; color:#344d5d; font-size:12px; font-weight:800; margin:12px 0 5px; }
.home-calc input,.home-calc select { width:100%; min-width:0; padding:12px; border:1px solid #cedae0; border-radius:7px; background:#fff; color:#183144; font:inherit; font-size:14px; }
.home-calc-row { display:grid; grid-template-columns:1fr 1fr; gap:12px; }.home-calc-row > div { min-width:0; }
.home-calc-result { display:grid; gap:5px; margin:19px 0; padding:17px; background:#f2f6f6; border-radius:9px; }.home-calc-result small { color:#5f7481; font-size:11px; }.home-calc-result strong { font-size:24px; line-height:1.2; }.home-calc-result span { font-size:11px; color:#647a86; line-height:1.5; }
.home-calc-actions { display:flex; flex-wrap:wrap; gap:9px; }.home-calc-actions .home-btn { font-size:12px; }.home-calc-copy { border:1px solid #dce5e8; border-radius:9px; background:white; color:#183144; padding:12px 15px; font-size:12px; font-weight:800; }.home-calc-feedback { color:#456477; font-size:11px; margin-top:8px; }
@media (max-width:1200px) {
 .home-page .headnav,.home-page .headphone,.home-header-cta { display:none; }
 .home-page .mobiletoggle { display:grid; place-items:center; margin-left:auto; flex:0 0 44px; width:44px; height:44px; padding:0; border:0; border-radius:9px; background:#f2f5f6; font-size:25px; line-height:1; }
 .home-page .sitehead .wrap { min-height:72px; }
}
@media (max-width:650px) {
 .home-page .topline .wrap { flex-direction:row; justify-content:center; padding:8px 16px; font-size:11px; }
 .home-page .topline .wrap > span:last-child { display:none; }
 .home-page .sitehead .wrap { width:100%; min-width:0; padding-left:18px; padding-right:18px; gap:10px; }
 .home-page .brand { flex:0 1 auto; min-width:0; }
 .home-page .brandicon { flex:0 0 40px; width:40px; height:40px; }
 .home-page .brandicon::before,.home-page .brandicon::after { top:7px; }
 .home-page .brandicon::before { left:12px; }.home-page .brandicon::after { left:24px; }
 .home-page .brandname { font-size:23px; }.home-page .brand small { font-size:8px; letter-spacing:.08em; }
 .home-hero-wrap,.home-hero-copy,.home-hero-actions { min-width:0; max-width:100%; }
 .home-hero-main { min-height:545px; padding-top:52px; padding-bottom:55px; }
 .home-hero h1 { font-size:clamp(34px,9vw,53px); line-height:1.05; letter-spacing:-1.9px; overflow-wrap:normal; }
 .home-hero h1 em { white-space:nowrap; }
 .home-hero p { font-size:14px; line-height:1.7; }.home-hero-actions { width:100%; max-width:360px; align-items:stretch; }
 .home-hero-actions .home-btn { box-sizing:border-box; width:100%; min-width:0; white-space:normal; }
 .home-feature { min-width:0; }.home-feature > div { min-width:0; }
 .home-calc-inner { padding:23px 18px; }.home-calc h2 { font-size:23px; }.home-calc-actions { flex-direction:column; }.home-calc-actions .home-btn,.home-calc-copy { width:100%; }
}
@media (max-width:350px) { .home-page .brand small { font-size:7px; letter-spacing:.03em; }.home-hero h1 { font-size:32px; }.home-calc-row { grid-template-columns:1fr; gap:0; } }

@media (max-width:350px) { .home-eyebrow { font-size:8px; letter-spacing:1px; gap:8px; }.home-price { gap:8px; font-size:11px; }.home-price b { font-size:14px; } }
