/* Stroydoc header identity refresh, 2026-08-31. */
.sd-header-shell{--sdh-wow-blue:#006fcb;--sdh-wow-navy:#071d38;--sdh-wow-orange:#ff6400;isolation:isolate}
.sd-header-shell::before{content:"";position:absolute;z-index:4;right:0;bottom:-1px;left:0;height:2px;pointer-events:none;background:linear-gradient(90deg,#006fcb 0%,#38a5ff 28%,#ff6400 52%,#ff9a45 68%,#006fcb 100%);background-size:220% 100%;animation:sdHeaderSignal 8s linear infinite}
#top.sd-header{background:radial-gradient(circle at 12% -110%,rgba(0,111,203,.14),transparent 34%),linear-gradient(180deg,#fff 0%,#fbfdff 100%)!important}
.sd-header__logo{isolation:isolate;padding:5px 10px 5px 5px!important;border:1px solid rgba(0,94,172,.13)!important;border-radius:16px!important;background:linear-gradient(135deg,rgba(255,255,255,.98),rgba(239,247,255,.94))!important;box-shadow:0 9px 24px rgba(11,29,52,.08),inset 0 1px 0 #fff!important;overflow:hidden;transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease!important}
.sd-header__logo::before{content:"";position:absolute;z-index:-1;left:-18px;top:-22px;width:86px;height:86px;border-radius:50%;background:radial-gradient(circle,rgba(0,111,203,.2),rgba(0,111,203,0) 70%);pointer-events:none}
.sd-header__logo::after{content:"";position:absolute;z-index:4;top:-55%;left:-35%;width:30%;height:210%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.9),transparent);transform:translateX(-180%) rotate(18deg);transition:transform .7s ease;pointer-events:none}
.sd-header__logo:hover{transform:translateY(-2px);border-color:rgba(0,94,172,.28)!important;box-shadow:0 14px 30px rgba(11,29,52,.13),0 0 0 3px rgba(0,111,203,.05),inset 0 1px 0 #fff!important}
.sd-header__logo:hover::after{transform:translateX(580%) rotate(18deg)}
.sd-header__logo .logo-icon{position:relative;z-index:2;width:43px!important;height:56px!important;padding:6px!important;border:1px solid rgba(0,94,172,.16);border-radius:13px;background:linear-gradient(145deg,#fff 6%,#e9f4ff 60%,#dfeeff);box-shadow:0 7px 16px rgba(0,94,172,.16),inset 0 1px 0 #fff;filter:drop-shadow(0 2px 2px rgba(11,29,52,.08));transition:transform .28s cubic-bezier(.2,.8,.2,1)}
.sd-header__logo:hover .logo-icon{transform:translateY(-1px) rotate(-2deg) scale(1.035)}
.sd-header__logo .logo-title{font:850 18px/1.02 "Rubik",Arial,sans-serif!important;letter-spacing:-.035em;text-shadow:0 1px 0 #fff}
.sd-header__logo .logo-line{position:relative;width:68px!important;height:3px!important;margin:5px 0 4px!important;border-radius:999px;background:linear-gradient(90deg,var(--sdh-wow-blue) 0 72%,var(--sdh-wow-orange) 72% 100%)!important;box-shadow:0 2px 7px rgba(0,94,172,.2)}
.sd-header__logo .logo-line::after{content:"";position:absolute;right:-5px;top:50%;width:5px;height:5px;border-radius:50%;background:var(--sdh-wow-orange);box-shadow:0 0 0 3px rgba(255,100,0,.12);transform:translateY(-50%)}
.sd-header__logo .logo-subtitle{color:#50657c!important;font:750 7.5px/1.1 "Rubik",Arial,sans-serif!important;letter-spacing:.075em;text-transform:uppercase}
.sd-header__messengers{position:relative;display:flex;align-items:center;gap:6px;padding:5px 6px 5px 11px;border:1px solid rgba(0,94,172,.14);border-radius:999px;background:linear-gradient(145deg,#f8fbff,#edf5fc);box-shadow:0 7px 18px rgba(11,29,52,.08),inset 0 1px 0 #fff}
.sd-header__messengers::before{content:"НАПИСАТЬ";padding-left:9px;color:#49627c;font:850 7.5px/1 "Rubik",Arial,sans-serif;letter-spacing:.09em}
.sd-header__messengers::after{content:"";position:absolute;left:9px;top:50%;width:6px;height:6px;border-radius:50%;background:#23b26d;box-shadow:0 0 0 0 rgba(35,178,109,.35);transform:translateY(-50%);animation:sdHeaderPulse 2.3s ease-out infinite}
.sd-header__messenger{position:relative;width:34px!important;height:34px!important;padding:2px!important;border:2px solid #fff!important;border-radius:50%!important;overflow:hidden;background:#fff!important;box-shadow:0 5px 13px rgba(11,29,52,.14)!important;filter:saturate(.96);transition:transform .24s cubic-bezier(.2,.8,.2,1),box-shadow .24s ease,filter .24s ease!important}
.sd-header__messenger::before{content:"";position:absolute;z-index:3;inset:-30%;background:linear-gradient(110deg,transparent 37%,rgba(255,255,255,.82) 50%,transparent 63%);transform:translateX(-100%) rotate(10deg);transition:transform .48s ease;pointer-events:none}
.sd-header__messenger:hover{transform:translateY(-3px) scale(1.08);filter:saturate(1.1) brightness(1.02)}
.sd-header__messenger:hover::before{transform:translateX(100%) rotate(10deg)}
.sd-header__messenger--max:hover{box-shadow:0 8px 20px rgba(93,80,255,.34)!important}
.sd-header__messenger--telegram:hover{box-shadow:0 8px 20px rgba(42,171,238,.34)!important}
.sd-header__messenger--whatsapp:hover{box-shadow:0 8px 20px rgba(37,211,102,.3)!important}
.sd-header__messenger svg{width:100%!important;height:100%!important;border-radius:50%;display:block}
@media (max-width:1220px) and (min-width:961px){.sd-header__messengers{padding-left:5px}.sd-header__messengers::before,.sd-header__messengers::after{display:none}}
@media (max-width:960px){
#top .sd-header__messengers{display:none!important}
.sd-header-nav__contacts{margin:0 10px 10px;padding:16px 20px 18px!important;border:1px solid #dce7f1;border-radius:14px;background:linear-gradient(145deg,#f5f9fd,#eef5fb)!important;box-shadow:0 10px 24px rgba(11,29,52,.08)}
.sd-header-nav__messengers{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px!important;margin-top:8px!important}
.sd-header-nav__messengers::before{content:"БЫСТРЫЙ ОТВЕТ В ЧАТЕ";grid-column:1/-1;margin-bottom:2px;color:#536b83;font:850 9px/1.2 "Rubik",Arial,sans-serif;letter-spacing:.075em}
.sd-header-nav__messengers .sd-header__messenger{width:100%!important;height:46px!important;display:flex!important;align-items:center;justify-content:center;gap:6px;padding:5px 8px!important;border:1px solid rgba(0,94,172,.14)!important;border-radius:12px!important;color:#17324f!important;background:#fff!important;box-shadow:0 5px 13px rgba(11,29,52,.08)!important}
.sd-header-nav__messengers .sd-header__messenger svg{flex:0 0 27px;width:27px!important;height:27px!important}
.sd-header-nav__messengers .sd-header__messenger::after{font:850 9px/1 "Rubik",Arial,sans-serif;letter-spacing:.02em}
.sd-header-nav__messengers .sd-header__messenger--max::after{content:"MAX"}
.sd-header-nav__messengers .sd-header__messenger--telegram::after{content:"TELEGRAM"}
.sd-header-nav__messengers .sd-header__messenger--whatsapp::after{content:"WHATSAPP"}
}
@media (max-width:720px){
.sd-header__logo{gap:6px!important;padding:3px 6px 3px 3px!important;border-radius:12px!important;box-shadow:0 5px 15px rgba(11,29,52,.07),inset 0 1px 0 #fff!important}
.sd-header__logo .logo-icon{width:32px!important;height:44px!important;padding:5px!important;border-radius:10px}
.sd-header__logo .logo-title{font-size:13.5px!important}
.sd-header__logo .logo-line{width:46px!important;height:2px!important;margin:3px 0!important}
.sd-header__logo .logo-subtitle{display:block!important;font-size:6.4px!important;letter-spacing:.045em}
}
@media (max-width:400px){
.sd-header__logo .logo-icon{width:30px!important;height:42px!important}
.sd-header__logo .logo-title{font-size:12.5px!important}
.sd-header__logo .logo-subtitle{display:block!important;font-size:6px!important}
.sd-header__logo .logo-line{width:42px!important}
.sd-header-nav__messengers .sd-header__messenger{padding-inline:5px!important}
.sd-header-nav__messengers .sd-header__messenger::after{font-size:8px}
}
@media (max-width:360px){
.sd-header__logo{gap:4px!important;padding-right:4px!important}
.sd-header__logo .logo-icon{width:28px!important;height:40px!important;padding:4px!important}
.sd-header__logo .logo-title{font-size:11.5px!important}
.sd-header__logo .logo-subtitle{font-size:5.5px!important;letter-spacing:.02em}
.sd-header__logo .logo-line{width:36px!important}
.sd-header-nav__messengers{grid-template-columns:1fr!important}
.sd-header-nav__messengers .sd-header__messenger{height:42px!important}
}
@media (max-width:340px){
.sd-header__inner{grid-template-columns:minmax(0,1fr) 116px 38px!important;gap:5px!important}
.sd-header__logo{gap:3px!important;padding:3px!important}
.sd-header__logo .logo-icon{width:25px!important;height:38px!important;padding:4px!important}
.sd-header__logo .logo-title{font-size:10px!important;letter-spacing:-.045em}
.sd-header__logo .logo-subtitle{display:none!important}
.sd-header__logo .logo-line{width:32px!important}
.sd-header__phone-compact{height:38px;padding:3px 4px}
.sd-header__phone-compact small{font-size:7.5px}
.sd-header__phone-compact strong{font-size:10.5px}
.sd-header__menu-toggle{width:38px;height:38px}
}
@keyframes sdHeaderSignal{to{background-position:-220% 0}}
@keyframes sdHeaderPulse{70%{box-shadow:0 0 0 6px rgba(35,178,109,0)}100%{box-shadow:0 0 0 0 rgba(35,178,109,0)}}
@media (prefers-reduced-motion:reduce){.sd-header-shell::before,.sd-header__messengers::after{animation:none!important}.sd-header__logo::after{display:none}}
/* CTA hierarchy refinement: quiet at rest, vivid on interaction. */
.sd-header-shell::before{height:1px;opacity:.62;animation-duration:14s}
@media (min-width:961px){
.sd-header__messengers{border-color:rgba(0,94,172,.09);background:linear-gradient(145deg,#fbfdff,#f3f7fb);box-shadow:0 4px 12px rgba(11,29,52,.055),inset 0 1px 0 #fff}
.sd-header__messengers::before{color:#66798c}
.sd-header__messengers::after{background:#7aa68f;box-shadow:none;animation:none}
.sd-header__messengers .sd-header__messenger{box-shadow:0 2px 7px rgba(11,29,52,.09)!important;filter:saturate(.55) brightness(1.035)}
.sd-header__messengers .sd-header__messenger:hover,.sd-header__messengers .sd-header__messenger:focus-visible{filter:saturate(1.08) brightness(1.02)}
.sd-header__messengers .sd-header__messenger--max:hover,.sd-header__messengers .sd-header__messenger--max:focus-visible{box-shadow:0 8px 20px rgba(93,80,255,.28)!important}
.sd-header__messengers .sd-header__messenger--telegram:hover,.sd-header__messengers .sd-header__messenger--telegram:focus-visible{box-shadow:0 8px 20px rgba(42,171,238,.28)!important}
.sd-header__messengers .sd-header__messenger--whatsapp:hover,.sd-header__messengers .sd-header__messenger--whatsapp:focus-visible{box-shadow:0 8px 20px rgba(37,211,102,.25)!important}
}
/* Unified header/footer brand badge. */
.sd-footer__logo{position:relative;isolation:isolate;gap:10px!important;padding:5px 10px 5px 5px!important;border:1px solid rgba(83,158,226,.24)!important;border-radius:16px!important;box-sizing:border-box;background:linear-gradient(135deg,rgba(255,255,255,.99),rgba(239,247,255,.97))!important;box-shadow:0 12px 30px rgba(0,0,0,.18),inset 0 1px 0 #fff!important;overflow:hidden;transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease!important}
.sd-footer__logo::before{content:"";position:absolute;z-index:0;left:-18px;top:-22px;width:86px;height:86px;border-radius:50%;background:radial-gradient(circle,rgba(0,111,203,.2),rgba(0,111,203,0) 70%);pointer-events:none}
.sd-footer__logo::after{content:"";position:absolute;z-index:4;top:-55%;left:-35%;width:30%;height:210%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.9),transparent);transform:translateX(-180%) rotate(18deg);transition:transform .7s ease;pointer-events:none}
.sd-footer__logo:hover{transform:translateY(-2px);border-color:rgba(83,158,226,.42)!important;box-shadow:0 16px 34px rgba(0,0,0,.22),0 0 0 3px rgba(53,151,235,.06),inset 0 1px 0 #fff!important}
.sd-footer__logo:hover::after{transform:translateX(580%) rotate(18deg)}
.sd-footer__logo .logo-icon{position:relative;z-index:2;width:43px!important;height:56px!important;padding:6px!important;border:1px solid rgba(0,94,172,.16);border-radius:13px;background:linear-gradient(145deg,#fff 6%,#e9f4ff 60%,#dfeeff);box-shadow:0 7px 16px rgba(0,94,172,.16),inset 0 1px 0 #fff;filter:drop-shadow(0 2px 2px rgba(11,29,52,.08));box-sizing:border-box;transition:transform .28s cubic-bezier(.2,.8,.2,1)}
.sd-footer__logo:hover .logo-icon{transform:translateY(-1px) rotate(-2deg) scale(1.035)}
.sd-footer__logo-text{position:relative;z-index:2;display:grid;align-content:center}
.sd-footer__logo-text strong{color:#0b1d34!important;font:850 18px/1.02 "Rubik",Arial,sans-serif!important;letter-spacing:-.035em;text-shadow:0 1px 0 #fff}
.sd-footer__logo-text i{position:relative;width:68px!important;height:3px!important;margin:5px 0 4px!important;border-radius:999px;background:linear-gradient(90deg,#006fcb 0 72%,#ff6400 72% 100%)!important;box-shadow:0 2px 7px rgba(0,94,172,.2)}
.sd-footer__logo-text i::after{content:"";position:absolute;right:-5px;top:50%;width:5px;height:5px;border-radius:50%;background:#ff6400;box-shadow:0 0 0 3px rgba(255,100,0,.12);transform:translateY(-50%)}
.sd-footer__logo-text small{color:#50657c!important;font:750 7.5px/1.1 "Rubik",Arial,sans-serif!important;letter-spacing:.075em;text-transform:uppercase}
@media (prefers-reduced-motion:reduce){.sd-footer__logo::after{display:none}}

