/* FY-HEADER-STICKY-010: shared header only; stable height avoids scroll jumps. */
:root{--fy-header-height:122px;--fy-admin-offset:0px}
html{scroll-padding-top:calc(var(--fy-header-height) + var(--fy-admin-offset) + 16px)}
/* Neve's overflow:hidden creates a scroll container on non-Elementor pages. */
body#neve_body{overflow-x:clip;overflow-y:visible}
body#neve_body>.wrapper{overflow:clip}
header.fy-ui{position:sticky;top:var(--fy-admin-offset);z-index:1000;background:#fff;box-shadow:0 3px 12px #172c3b0d;overflow:visible}
header.fy-ui .head-main{min-height:76px;gap:16px}
header.fy-ui .logo{width:48px;height:48px}
header.fy-ui .identity{gap:12px}
header.fy-ui .brand{font-size:22px}
header.fy-ui .experience{font-size:12px;margin-top:5px}
header.fy-ui .number{font-size:20px}
header.fy-ui .phone{margin-right:8px;gap:8px}
header.fy-ui .phone-label{margin-bottom:3px}
header.fy-ui .social{width:118px;height:40px}
header.fy-ui .navigation{min-height:44px;gap:28px}
header.fy-ui .services-panel{max-height:calc(100dvh - var(--fy-header-height) - var(--fy-admin-offset) - 12px);overflow:auto;overscroll-behavior:contain}
@media(min-width:721px) and (max-width:1000px){
 header.fy-ui .wrap{padding-inline:18px}
 header.fy-ui .brand{font-size:19px}
 header.fy-ui .logo{width:42px;height:42px}
 header.fy-ui .number{font-size:17px}
 header.fy-ui .social{width:92px;padding-inline:8px;font-size:12px;gap:5px}
 header.fy-ui .contacts{gap:6px}
 header.fy-ui .navigation{gap:22px}
}
@media(max-width:720px){
 :root{--fy-header-height:104px}
 header.fy-ui .head-main{padding:8px 12px;min-height:0;display:block}
 header.fy-ui .identity{gap:8px;width:calc(100% - 44px);min-height:40px}
 header.fy-ui .logo{width:36px;height:36px}
 header.fy-ui .brand{font-size:17px;letter-spacing:-.3px}
 header.fy-ui .experience{font-size:11px;margin-top:3px}
 header.fy-ui .contacts{display:flex;gap:6px;margin-top:5px;min-height:40px}
 header.fy-ui .phone{flex:1;min-width:0;margin:0;padding:0;gap:5px}
 header.fy-ui .phone-icon{width:26px;height:26px}
 header.fy-ui .number{font-size:16px;letter-spacing:-.3px}
 header.fy-ui .social{width:40px;height:40px;min-width:40px;padding:0;gap:0;border-radius:8px}
 header.fy-ui .social>span{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
 header.fy-ui .social svg,header.fy-ui .social .max-logo{width:23px;height:23px}
 header.fy-ui .nav-row{border:0}
 header.fy-ui .mobile-menu{padding:0;margin:0;width:100%;max-width:none}
 header.fy-ui .mobile-menu summary{position:absolute;right:12px;top:8px;width:40px;height:40px;min-height:40px;justify-content:center;font-size:0;gap:0;border:1px solid #dce7eb;border-radius:8px}
 header.fy-ui .mobile-menu summary svg{width:23px;height:23px}
 header.fy-ui .mobile-menu[open] summary{background:#eef5f8}
 header.fy-ui .mobile-links{position:absolute;left:0;right:0;top:100%;background:#fff;border-top:1px solid #e4ebef;box-shadow:0 8px 15px #172c3b15;padding:10px 16px 16px;gap:0;max-height:calc(100dvh - var(--fy-header-height) - var(--fy-admin-offset) - 8px);overflow:auto;overscroll-behavior:contain}
 header.fy-ui .mobile-links>a{display:flex;align-items:center;min-height:44px}
 header.fy-ui .mobile-links .services-panel{max-height:none;overflow:visible}
 header.fy-ui .services-trigger{min-height:44px}
}
@media(max-width:350px){header.fy-ui .brand{font-size:15px}header.fy-ui .number{font-size:14px}header.fy-ui .phone-icon{display:none}}
