.site-header{display:grid;grid-template-columns:auto minmax(0,1fr) auto;column-gap:clamp(1rem,2vw,2.25rem)}
.mobile-menu-state{position:fixed;left:-9999px;opacity:0;pointer-events:none}
.desktop-nav{display:flex;visibility:visible;opacity:1;min-width:0;justify-content:center;gap:clamp(.5rem,1vw,1.25rem);font-size:clamp(.58rem,.6vw,.7rem);letter-spacing:.08em;white-space:nowrap}
.site-header>.brand,.header-phone{position:relative;z-index:1;flex-shrink:0}
.mobile-menu-toggle,.mobile-menu,.mobile-menu-backdrop{display:none}
.mobile-menu-backdrop[hidden]{display:none!important}
@media(max-width:1180px){
  .desktop-nav{display:none}
  .site-header{display:flex;justify-content:space-between}
  .site-header>.header-phone{display:none}
  body.mobile-menu-open{overflow:hidden}
  .mobile-menu-toggle{display:grid;width:48px;height:48px;padding:12px;border:1px solid rgba(255,255,255,.45);background:rgba(15,145,157,.28);backdrop-filter:blur(10px);place-content:center;gap:5px;color:#fff;cursor:pointer}
  .mobile-menu-toggle span{display:block;width:22px;height:2px;background:currentColor;transition:transform .25s,opacity .2s}
  .mobile-menu-open .mobile-menu-toggle span:nth-child(1),.mobile-menu-state:checked~.site-header .mobile-menu-toggle span:nth-child(1){transform:translateY(7px) rotate(45deg)}
  .mobile-menu-open .mobile-menu-toggle span:nth-child(2),.mobile-menu-state:checked~.site-header .mobile-menu-toggle span:nth-child(2){opacity:0}
  .mobile-menu-open .mobile-menu-toggle span:nth-child(3),.mobile-menu-state:checked~.site-header .mobile-menu-toggle span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
  .mobile-menu-backdrop{display:block;position:fixed;inset:0;z-index:79;background:rgba(4,28,31,.42);backdrop-filter:blur(4px);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .28s,visibility 0s linear .28s}
  .mobile-menu-open .mobile-menu-backdrop{opacity:1}
  .mobile-menu-state:checked~.mobile-menu-backdrop{opacity:1;visibility:visible;pointer-events:auto;transition-delay:0s}
  .mobile-menu{display:flex;position:fixed;z-index:999;top:0;right:0;bottom:0;width:min(90vw,410px);padding:1.3rem 1.25rem 6.5rem;flex-direction:column;color:#fff;background:linear-gradient(155deg,rgba(16,181,195,.98),rgba(5,128,149,.98));box-shadow:-22px 0 65px rgba(0,45,55,.38);backdrop-filter:blur(18px);transform:translateX(104%);visibility:hidden;opacity:0;pointer-events:none;transition:transform .3s ease,opacity .2s ease,visibility 0s linear .3s;overflow-y:auto}
  .mobile-menu-open .mobile-menu{transform:translateX(0);visibility:visible;opacity:1;pointer-events:auto;transition-delay:0s}
  .mobile-menu-state:checked~.mobile-menu{transform:translateX(0);visibility:visible;opacity:1;pointer-events:auto;transition-delay:0s}
  .mobile-menu-head{display:flex;justify-content:space-between;align-items:flex-start;padding-bottom:1.3rem;border-bottom:1px solid rgba(255,255,255,.3)}
  .mobile-menu-head div{display:flex;flex-direction:column}.mobile-menu-head small{font-size:.58rem;letter-spacing:.16em;opacity:.78}.mobile-menu-head strong{font:600 2.25rem/1.1 var(--display);margin-top:.25rem}
  .mobile-menu-head button,.mobile-menu-close{width:44px;height:44px;border:1px solid rgba(255,255,255,.45);background:rgba(255,255,255,.08);color:#fff;font-size:1.8rem;line-height:42px;text-align:center;cursor:pointer}
  .mobile-menu nav{display:block!important;visibility:visible!important;opacity:1!important}
  .mobile-menu nav p{display:block;margin:1.35rem 0 .4rem;font-size:.62rem;font-weight:700;letter-spacing:.18em;color:rgba(255,255,255,.78)}
  .mobile-menu nav a{display:grid!important;visibility:visible!important;opacity:1!important;grid-template-columns:42px 1fr;align-items:center;min-height:54px;padding-inline:.2rem;border-bottom:1px solid rgba(255,255,255,.32);color:#fff!important;font:700 1.03rem var(--display);letter-spacing:.01em;text-shadow:0 1px 2px rgba(0,54,64,.22)}
  .mobile-menu nav a span{color:#fff;font:700 .62rem var(--sans);letter-spacing:.12em;opacity:.8}
  .mobile-menu nav a:focus-visible,.mobile-menu nav a:hover{background:rgba(255,255,255,.12);outline:0;padding-left:.5rem}
  .mobile-menu-footer{display:grid;gap:.35rem;margin-top:auto;padding-top:1.4rem}.mobile-menu-footer a{border:1px solid rgba(255,255,255,.4);padding:.7rem .85rem;text-align:center;font-size:.74rem;font-weight:600;letter-spacing:.05em}
}
@media(prefers-reduced-motion:reduce){.mobile-menu,.mobile-menu-backdrop,.mobile-menu-toggle span{transition:none}}
