.site-header{border-bottom:1px solid #ecefec;background:#fff}
.site-header .wrap{width:min(1680px,calc(100% - 48px))}
.site-header .header-main{min-height:102px;display:flex;align-items:center;justify-content:space-between;gap:clamp(14px,1.5vw,28px)}
.header-brand{flex:none;display:flex;align-items:center;line-height:1}
.header-brand img{display:block;width:clamp(215px,16vw,252px);height:auto}
.header-brand__name{color:#08c866;font-size:clamp(38px,3.1vw,48px);font-weight:500;letter-spacing:-.08em;white-space:nowrap}
.header-brand__name span{margin-left:.14em}
.header-brand__caption{margin-top:4px;color:#151735;font-size:11px;font-weight:600;letter-spacing:.015em;white-space:nowrap}
.header-address{display:flex;align-items:center;gap:13px;min-width:0;color:#10142f;line-height:1.25}
.header-address__icon{width:28px;height:32px;color:#08c866;flex:none}
.header-address div{display:grid;gap:3px;white-space:nowrap}
.header-address strong{font-size:16px;font-weight:750}
.header-address span{font-size:15px}
.header-catalog{min-height:56px;display:inline-flex;align-items:center;justify-content:center;gap:12px;padding:10px 22px;border:1px solid #a6aaa9;border-radius:999px;color:#25272d;font-size:16px;white-space:nowrap;transition:border-color .2s,color .2s,background .2s}
.header-catalog:hover{border-color:#08c866;background:#f3fbf5;color:#037d44}
.header-catalog svg{width:22px;height:22px;flex:none;color:#08c866}
.header-write{display:flex;align-items:center;gap:21px;flex:none}
.header-write__label{font-size:15px;line-height:1.18;white-space:nowrap;color:#121631}
.header-write__label strong{font-weight:750}
.header-write__label i,.header-phone__hours i{display:inline-block;width:7px;height:7px;margin-right:5px;border-radius:50%;background:#08c866;box-shadow:0 0 0 3px #daf7e5;vertical-align:middle}
.header-write__links{display:flex;align-items:center;gap:9px}
.header-write__links a{width:40px;height:40px;display:grid;place-items:center;border-radius:50%;background:#08c866;color:#fff;transition:background .2s,transform .2s}
.header-write__links a:hover{background:#04a454;transform:translateY(-2px)}
.header-write__links svg{width:22px;height:22px}
.header-phone{display:flex;flex:none;align-items:flex-end;flex-direction:column;line-height:1.18;white-space:nowrap}
.header-phone__hours{font-size:14px;font-weight:650;color:#121631}
.header-phone__number{margin-top:5px;font-size:clamp(22px,1.8vw,29px);font-weight:800;letter-spacing:-.05em;color:#070c2a}
.header-phone__number:hover{color:#04a454}
.header-phone__callback{margin-top:4px;color:#08c866;font-size:19px;font-weight:750}
.header-phone__callback:hover{text-decoration:underline}
.site-header .menu-toggle{flex:none;display:flex;align-items:center;justify-content:center;width:58px;height:58px;margin:0;border:1px solid #08c866;border-radius:4px;background:#fff;color:#08c866;transition:background .2s}
.site-header .menu-toggle:hover,.site-header .menu-toggle[aria-expanded="true"]{background:#f3fbf5}
.menu-toggle__lines{width:32px;display:grid;gap:7px}
.menu-toggle__lines span{display:block;width:100%;height:2px;background:currentColor;border-radius:2px;transition:transform .2s,opacity .2s,width .2s}
.menu-toggle__lines span:last-child{width:65%}
.menu-toggle[aria-expanded="true"] .menu-toggle__lines span:first-child{transform:translateY(9px) rotate(45deg)}
.menu-toggle[aria-expanded="true"] .menu-toggle__lines span:nth-child(2){opacity:0}
.menu-toggle[aria-expanded="true"] .menu-toggle__lines span:last-child{width:100%;transform:translateY(-9px) rotate(-45deg)}
.site-header .site-nav{display:none;position:absolute;top:100%;left:0;right:0;background:#fff;border-top:1px solid #e6eee8;border-bottom:1px solid #e6eee8;box-shadow:0 20px 32px #071f1717;z-index:40}
.site-header .site-nav.is-open{display:block}
.site-header .site-nav__inner{display:flex;align-items:center;gap:40px;min-height:105px;padding-block:22px}
.site-header .site-nav ul{display:flex;gap:clamp(14px,2vw,38px)}
.site-header .site-nav a{font-size:16px;font-weight:650;padding:9px 0}
.site-header .nav-search{display:flex;flex:none;margin-left:auto;height:44px}
.site-header .site-nav__mobile-contact{display:none}
.site-header :is(a,button,input):focus-visible{outline:3px solid #05a956;outline-offset:3px}
@media(max-width:1600px){.site-header .header-main{min-height:94px;gap:18px}.header-catalog{min-height:52px;padding-inline:18px;font-size:14px}.header-address strong{font-size:14px}.header-address span{font-size:13px}.header-write{gap:13px}.header-write__label{font-size:13px}.header-phone__callback{font-size:17px}.site-header .menu-toggle{width:54px;height:54px}}
@media(max-width:1270px){.site-header .header-main{min-height:86px}.header-address{display:none}.header-catalog{margin-left:auto}}
@media(max-width:980px){.header-catalog{display:none}.header-write{margin-left:auto}.site-header .site-nav__inner{display:block}.site-header .site-nav ul{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px 20px}.site-header .site-nav a{display:block;border-bottom:1px solid #edf1ed;padding:12px 0}.site-header .nav-search{margin:20px 0 0;max-width:360px}}
@media(max-width:700px){.site-header .wrap{width:calc(100% - 32px)}.site-header .header-main{min-height:70px;gap:12px}.header-brand img{width:190px}.header-write{display:none}.header-phone{margin-left:auto}.header-phone__hours,.header-phone__callback{display:none}.header-phone__number{font-size:17px;letter-spacing:-.04em;margin:0}.site-header .menu-toggle{width:46px;height:46px}.menu-toggle__lines{width:24px;gap:5px}.menu-toggle[aria-expanded="true"] .menu-toggle__lines span:first-child{transform:translateY(7px) rotate(45deg)}.menu-toggle[aria-expanded="true"] .menu-toggle__lines span:last-child{transform:translateY(-7px) rotate(-45deg)}.site-header .site-nav ul{grid-template-columns:repeat(2,minmax(0,1fr))}.site-header .site-nav__mobile-contact{display:grid;gap:7px;margin-top:22px;padding-top:18px;border-top:1px solid #edf1ed;font-size:14px}.site-header .site-nav__mobile-contact a{border:0;padding:0;color:#0a924b}.site-header .site-nav__mobile-contact span{color:#677068}}
@media(max-width:400px){.header-brand img{width:150px}.header-phone__number{font-size:14px}.site-header .site-nav ul{grid-template-columns:1fr}}
@media(max-width:365px){.header-phone__number{width:42px;height:42px;display:grid;place-items:center;overflow:hidden;font-size:0;background:#08c66b;color:#fff;border-radius:50%}.header-phone__number::before{content:"☎";font-size:23px;line-height:1}.site-header .header-main{gap:8px}}