.nav-services-mobile-trigger,.nav-services-overview{display:none}

@media(max-width:800px){
  body{padding-top:var(--opening-nav-height)}
  .site-header{position:fixed;top:0;right:0;left:0;z-index:50;height:var(--opening-nav-height)}
  .header-inner{height:calc(var(--opening-nav-height) - 1px);min-height:0;flex-wrap:nowrap;gap:12px}
  .brand{flex:0 1 clamp(150px,45vw,210px);min-width:0}
  .brand img{width:100%}
  .js .menu-toggle{flex:none;display:grid;place-items:center;width:48px;height:48px;min-width:48px;margin-left:auto;padding:0;color:var(--action-bg)}
  .menu-icon{display:block;position:relative;width:28px;height:22px;border:0}
  .menu-icon::before,.menu-icon::after,.menu-icon-middle{content:'';position:absolute;left:1px;top:3px;width:26px;height:2px;border:0;border-radius:1px;background:currentColor;transform-origin:center;transition:top .25s ease,transform .25s ease,opacity .15s ease}
  .menu-icon-middle{top:10px}
  .menu-icon::after{top:17px}
  .menu-toggle[aria-expanded="true"] .menu-icon::before{top:10px;transform:rotate(45deg)}
  .menu-toggle[aria-expanded="true"] .menu-icon::after{top:10px;transform:rotate(-45deg)}
  .menu-toggle[aria-expanded="true"] .menu-icon-middle{opacity:0;transform:scaleX(0)}
  .main-nav{position:fixed;top:var(--opening-nav-height);right:0;left:0;z-index:50;width:auto;max-height:calc(100dvh - var(--opening-nav-height));display:flex;flex-direction:column;flex-wrap:nowrap;align-items:stretch;gap:8px;overflow-y:auto;overscroll-behavior:contain;margin:0;padding:16px var(--gutter) 24px;border-top:1px solid #eee8e3;background:#fff;box-shadow:0 16px 28px #30241d20;-webkit-overflow-scrolling:touch}
  .js .main-nav{display:none}
  .js .main-nav.is-open{display:flex}
  .main-nav>a{width:100%;min-height:50px;justify-content:flex-start;margin:0}
  .main-nav .button{width:100%;margin:0}
  .nav-services{width:100%}
  .nav-services.has-submenu .nav-services-trigger{display:none}
  .nav-services-mobile-trigger{width:100%;min-height:50px;display:flex;align-items:center;justify-content:space-between;padding:14px 18px;border:0;border-radius:12px;background:#f1ebe5;color:var(--ink);font-size:18px;line-height:1.3;text-align:left;cursor:pointer}
  .nav-services-mobile-trigger:hover,.nav-services-mobile-trigger[aria-expanded="true"]{background:#e8ded5}
  .nav-services .nav-services-mobile-trigger .nav-services-chevron{transform:rotate(-45deg)}
  .nav-services.is-mobile-open .nav-services-mobile-trigger .nav-services-chevron{transform:rotate(45deg)}
  .main-nav .nav-services .nav-services-menu{position:static;min-width:0;max-height:0;display:grid;grid-template-columns:minmax(0,1fr);gap:0;overflow:hidden;margin:0 0 0 12px;padding:0 0 0 14px;border:0;border-left:1px solid var(--line);border-radius:0;background:#fff;box-shadow:none;opacity:0;visibility:hidden;pointer-events:none;transform:none;transition:max-height .3s ease,opacity .2s ease,visibility 0s .3s}
  .main-nav .nav-services.is-mobile-open .nav-services-menu{max-height:720px;margin-top:8px;margin-bottom:4px;opacity:1;visibility:visible;pointer-events:auto;transition-delay:0s}
  .main-nav .nav-services .nav-services-menu a{width:100%;display:block;padding:13px 12px;border-radius:0;background:transparent;white-space:normal;font-size:16px;line-height:1.35}
  .main-nav .nav-services .nav-services-menu a+a{border-top:1px solid #eee8e3}
  .main-nav .nav-services .nav-services-menu a:hover,.main-nav .nav-services .nav-services-menu a[aria-current="page"]{background:#f7f3ef}
  .main-nav .nav-services .nav-services-menu .nav-services-overview{display:block}
  html:not(.js) body{padding-top:0}
  html:not(.js) .site-header{position:relative;height:auto}
  html:not(.js) .header-inner{height:auto;min-height:88px;flex-wrap:wrap}
  html:not(.js) .main-nav{position:static;max-height:none;box-shadow:none}
  html:not(.js) .nav-services.has-submenu .nav-services-trigger{display:flex}
  html:not(.js) .nav-services-mobile-trigger{display:none}
  html:not(.js) .main-nav .nav-services .nav-services-menu{max-height:none;opacity:1;visibility:visible;pointer-events:auto}
}

@media(max-width:480px){
  .main-nav{gap:8px}
  .main-nav>a,.nav-services-mobile-trigger{min-height:48px}
}

@media(prefers-reduced-motion:reduce){
  .menu-icon::before,.menu-icon::after,.menu-icon-middle,.nav-services-mobile-trigger,.main-nav .nav-services .nav-services-menu{transition:none}
}
