html{scroll-padding-top:88px}
body.menu-open{overflow:hidden}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #79a9ff;outline-offset:4px}
.brand img,.footer-brand img{height:auto}
.mobile-nav-cta{display:none}
.menu-button{padding:0;width:44px;height:44px;place-items:center;position:relative}
.menu-button span{position:absolute;width:24px;height:1.5px;margin:0;transition:transform .25s,top .25s}
.menu-button span:first-child{top:17px}
.menu-button span:last-child{top:26px}
.site-header.open .menu-button span:first-child{top:22px;transform:rotate(45deg)}
.site-header.open .menu-button span:last-child{top:22px;transform:rotate(-45deg)}
.contact-card[href^="mailto:"] strong{overflow-wrap:anywhere}
@media(max-width:900px){
  html{scroll-padding-top:74px}
  .brand{width:230px;max-width:calc(100vw - 92px)}
  .menu-button{display:grid}
  .site-header.open nav{height:calc(100svh - 74px);padding:2rem 1.25rem max(2rem,env(safe-area-inset-bottom));gap:.35rem;background:rgba(255,255,255,.98);box-shadow:0 20px 40px rgba(7,17,29,.12)}
  .site-header.open nav a{display:flex;align-items:center;min-height:56px;border-bottom:1px solid var(--line);font:600 1.2rem/1.2 "Manrope",sans-serif}
  .site-header.open nav .mobile-nav-cta{display:flex;justify-content:space-between;margin-top:auto;padding:1rem 1.1rem;background:var(--blue);color:#fff;border:0}
  .site-header.is-scrolled.open nav{height:calc(100svh - 66px)}
  .site-header nav a::after{display:none}
}
@media(max-width:380px){
  .brand{width:195px}
  h1{font-size:2.75rem}
  .section{padding-left:1rem;padding-right:1rem}
}
@media(prefers-reduced-motion:reduce){
  .menu-button span{transition:none}
}
@media(min-width:1700px){
  .section,footer{padding-left:calc((100vw - var(--max))/2);padding-right:calc((100vw - var(--max))/2)}
  .site-header{padding-left:calc((100vw - var(--max))/2);padding-right:calc((100vw - var(--max))/2)}
  .hero-content{padding-left:calc((100vw - var(--max))/2)}
}
