/* Shared floating header; the mobile contact sheet attaches to the top edge. */
:root{--site-header-clearance:112px}
html{scroll-padding-top:var(--site-header-clearance)}
body .header.site-header--floating{position:fixed;inset:12px 0 auto;z-index:120;padding:0;background:none;box-shadow:none;pointer-events:none}
body .header.site-header--floating>.container{box-sizing:border-box;width:calc(100% - 40px);max-width:1520px;margin-inline:auto;padding:14px 24px;border-radius:24px;background:#fff;pointer-events:auto}
body .header.site-header--floating .header__inner{display:flex;align-items:center;justify-content:space-between;gap:24px;min-width:0}
body .header.site-header--floating .header__logo{order:0;flex:1 1 auto;min-width:0}
body .header.site-header--floating .header__logo-img{display:block;width:220px;max-width:100%;height:auto}
body .header.site-header--floating .header__phone{order:2;flex:none;margin:0;color:#000;font:800 clamp(19px,1.55vw,23px)/1.25 'Manrope',system-ui,sans-serif;letter-spacing:-.03em;text-decoration:none;white-space:nowrap}
body .header.site-header--floating .header__phone:hover{text-decoration:underline;text-underline-offset:.18em}
body .header.site-header--floating .header__primary-nav{order:1;flex:1 1 auto;justify-content:center;gap:14px}
body .header.site-header--floating .header__aside{order:3;flex:0 0 auto;margin:0}
body .header.site-header--floating .header__phone:focus-visible{outline:2px solid currentColor;outline-offset:5px;border-radius:4px}
.header__messengers,.site-header--original{display:none}
.site-header-spacer{height:var(--site-header-clearance);flex:none;pointer-events:none}
@media(max-width:1349px){body .header.site-header--floating .header__primary-nav{display:none}}
@media(min-width:1024px){
 body .offer__sticky{top:var(--site-header-clearance);height:min(80vh,calc(100dvh - var(--site-header-clearance) - 16px));min-height:min(460px,calc(100dvh - var(--site-header-clearance) - 16px))}
 body .section--portfolio-v2 .portfolio-split__left{top:var(--site-header-clearance);height:calc(100dvh - var(--site-header-clearance))}
}
@keyframes site-header-enter{from{transform:translateY(-110%)}to{transform:translateY(0)}}
@media(max-width:767px){
 :root{--site-header-clearance:76px}
 body .header.site-header--floating{top:0;visibility:hidden;pointer-events:none;--header-contact-size:clamp(32px,calc(11.43vw - 4.57px),44px)}
 body .header.site-header--floating>.container{width:100%;max-width:none;padding:calc(10px + env(safe-area-inset-top,0px)) max(12px,env(safe-area-inset-right,0px)) 10px max(12px,env(safe-area-inset-left,0px));border-radius:0 0 18px 18px;box-shadow:0 5px 18px rgba(0,0,0,.09);transform:translateY(-115%);transition:transform .28s cubic-bezier(.2,.7,.3,1)}
 body .header.site-header--floating.is-site-header-visible{visibility:visible;pointer-events:auto}
 body .header.site-header--floating.is-site-header-visible>.container{transform:translateY(0)}
 body .header.site-header--original{display:block;position:relative;padding:18px 0 12px;background:#fff}
 body .header.site-header--original>.container{box-sizing:border-box;width:calc(100% - 24px);max-width:none;margin-inline:auto;padding:0}
 body .header.site-header--original .header__inner{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px 12px}
 body .header.site-header--original .header__logo{grid-area:1/1;min-width:0}
 body .header.site-header--original .header__logo-img{display:block;width:180px;max-width:100%;height:auto}
 body .header.site-header--original .header__aside{grid-area:1/2;margin:0;display:block}
 body .header.site-header--original .header__aside .btn{font-size:clamp(12px,3.5vw,16px);padding:9px 12px;gap:8px}
 body .header.site-header--original .header__aside .btn__icon{width:16px;height:16px}
 body .header.site-header--original .header__phone{grid-area:2/1/3/-1;justify-self:end;color:#000;font:600 17px/1.25 'Manrope',sans-serif;letter-spacing:-.03em;text-decoration:none;white-space:nowrap}
 body .header.site-header--original .header__primary-nav{display:none}
 .site-header-spacer{display:none}
 body .header.site-header--floating .header__inner{position:relative;display:flex;justify-content:space-between;align-items:center;gap:6px;height:var(--header-contact-size)}
 body .header.site-header--floating .header__logo{display:flex;align-items:center;justify-content:center;flex:0 0 var(--header-contact-size);width:var(--header-contact-size);height:var(--header-contact-size)}
 body .header.site-header--floating .header__logo picture{display:block;line-height:0;width:76%}
 body .header.site-header--floating .header__logo-img{width:100%;max-width:none;height:auto}
 body .header.site-header--floating .header__aside{display:none}
 body .header.site-header--floating .header__phone{display:flex;align-items:center;justify-content:center;flex:1 1 auto;min-width:0;height:var(--header-contact-size);gap:6px;padding:0 6px;border-radius:11px;background:#f3f3f1;font-size:clamp(16px,calc(3.57vw + 4.57px),20px);font-weight:600;line-height:1.2;letter-spacing:-.04em}
 body .header.site-header--floating .header__messengers{order:3;display:flex;align-items:center;gap:4px;flex:none}
 body .header.site-header--floating .header__messenger{display:flex;align-items:center;justify-content:center;flex:none;width:var(--header-contact-size);height:var(--header-contact-size);color:#fff;border-radius:11px;text-decoration:none;transition:filter .2s ease}
 body .header.site-header--floating .header__messenger--tg{background:#229ed9}
 body .header.site-header--floating .header__messenger--wa{background:#25d366}
 body .header.site-header--floating .header__messenger--max{background:linear-gradient(135deg,#3db6ff 0%,#4e50e0 45%,#9446d3 100%)}
 body .header.site-header--floating .header__messenger:hover{filter:brightness(1.06)}
 body .header.site-header--floating .header__messenger-icon{display:block;width:62%;height:62%;fill:currentColor}
 body .header.site-header--floating :is(.header__messenger,.header__logo):focus-visible{outline:2px solid #000;outline-offset:2px}
 body .header.site-header--floating .header__phone:focus-visible{outline:2px solid #34c759;outline-offset:2px;border-radius:11px}
}
@media(max-width:359px){body .header.site-header--floating>.container{padding-right:max(8px,env(safe-area-inset-right,0px));padding-left:max(8px,env(safe-area-inset-left,0px))}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}body .header.site-header--floating>.container{animation:none;transition:none}}
