/* Separate floating elements; the photograph remains visible between them. */
:root{--header:76px}
html{scroll-padding-top:calc(var(--header) + 12px)}
.site-header{height:var(--header);padding:12px clamp(18px,3vw,40px) 0;pointer-events:none;background:none;border:0;backdrop-filter:none;-webkit-backdrop-filter:none}
.header-inner{width:min(1320px,100%);height:54px;padding:0;gap:24px;background:none;border:0;border-radius:0;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none;pointer-events:none}
.header-inner>*{pointer-events:auto}
.site-header.is-scrolled .header-inner{background:none;box-shadow:none}
.site-header .brand{position:relative;isolation:isolate;gap:11px;flex-shrink:0}
.site-header .brand img{width:54px;height:54px;object-fit:contain;filter:drop-shadow(0 2px 5px rgba(0,0,0,.9)) drop-shadow(0 0 8px rgba(251,217,94,.12))}
.site-header .brand-wordmark{display:block;font:800 14px/1.18 Montserrat,Arial,sans-serif;letter-spacing:.08em;text-transform:uppercase;color:#fff4c8;background:linear-gradient(160deg,#fff4c8,#fbd95e 55%,#c79a2f);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;filter:drop-shadow(0 2px 4px rgba(0,0,0,.95))}
.site-header .brand-wordmark small{display:none}
.site-footer .brand img{width:46px;height:54px}
.site-footer .brand-wordmark{font-family:Montserrat,Arial,sans-serif;font-weight:800}
.desktop-nav{position:relative;isolation:isolate;gap:20px;margin-left:auto}
.site-header .brand:before,.desktop-nav:before{content:'';position:absolute;inset:-16px -20px;z-index:-1;pointer-events:none;background:rgba(0,0,0,.32);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);mask-image:radial-gradient(ellipse closest-side,#000 62%,transparent 100%);-webkit-mask-image:radial-gradient(ellipse closest-side,#000 62%,transparent 100%);opacity:0;transition:opacity .25s}
.site-header.is-scrolled .brand:before,.site-header.is-scrolled .desktop-nav:before{opacity:1}
.desktop-nav a{font-size:12px;font-weight:650;color:#f3ede2;padding:12px 0;text-shadow:0 1px 4px #000,0 0 12px #000}
.desktop-nav a:after{bottom:7px}
.header-contact{gap:16px}
.header-phone{color:#fff4df;font-size:11px;text-shadow:0 1px 4px #000,0 0 12px #000}
.header-contact .button{min-height:38px;padding:8px 15px;font-size:10px;border-radius:14px;gap:0}
.header-contact .button:after{content:none;display:none}
.menu-toggle{width:44px;height:44px;border-radius:13px;flex-shrink:0;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}
.mobile-menu{left:12px;right:12px;top:var(--header);max-height:calc(100dvh - var(--header) - 16px);border:1px solid rgba(255,255,255,.16);border-top-color:rgba(255,255,255,.28);border-radius:18px;background:linear-gradient(180deg,rgba(255,255,255,.07),rgba(255,255,255,.025)),rgba(0,0,0,.62);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);box-shadow:0 16px 45px rgba(0,0,0,.28)}
.mobile-menu nav a{border-bottom:0}
@media(max-width:1250px){.header-phone{display:none}.desktop-nav{gap:16px}.header-inner{padding:0;gap:20px}}
@media(max-width:1050px){.desktop-nav{display:none}.menu-toggle{display:flex}.header-contact{margin-left:auto;gap:12px}.site-header{padding-inline:24px}.header-inner{gap:16px}}
@media(max-width:850px){:root{--header:72px}.site-header{padding-top:8px;padding-inline:20px}.header-inner{height:54px}.header-contact .button{min-height:38px}}
@media(max-width:540px){.site-header{padding-inline:14px}.header-inner{height:54px;padding:0;border-radius:0;gap:10px}.site-header .brand{gap:8px}.site-header .brand img{width:48px;height:48px}.site-header .brand-wordmark{font-size:12px;letter-spacing:.06em}.header-contact .button{display:none}.header-contact{gap:0}.menu-toggle{width:44px;height:44px}}
