.gp-mobile-nav{position:fixed;inset:0;z-index:var(--z-overlay);visibility:hidden;pointer-events:none}
.gp-mobile-nav.is-open{visibility:visible;pointer-events:auto}
.gp-mobile-nav__backdrop{position:absolute;inset:0;border:0;background:rgb(17 23 19 / .54);opacity:0;transition:opacity var(--transition)}
.gp-mobile-nav.is-open .gp-mobile-nav__backdrop{opacity:1}
.gp-mobile-nav__panel{position:absolute;inset-block:0;right:0;width:min(88vw,390px);height:100vh;height:100dvh;background:var(--gp-white);transform:translateX(102%);transition:transform var(--transition);display:flex;flex-direction:column;box-shadow:var(--shadow-lg);outline:0}
.gp-mobile-nav.is-open .gp-mobile-nav__panel{transform:translateX(0)}
.gp-mobile-nav__head{display:flex;align-items:center;justify-content:space-between;min-height:72px;padding:max(var(--space-3),env(safe-area-inset-top)) var(--space-4) var(--space-3);border-bottom:1px solid var(--color-border)}
.gp-mobile-nav__brand{display:inline-flex}
.gp-mobile-nav__logo{display:block;width:150px;height:auto;max-height:54px;object-fit:contain}
.gp-mobile-nav__body{overflow:auto;overscroll-behavior:contain;padding:var(--space-2) var(--space-4) calc(var(--space-12) + env(safe-area-inset-bottom))}
.gp-mobile-nav__list{list-style:none;margin:0;padding:0}
.gp-mobile-nav__item{border-bottom:1px solid var(--gp-gray-100)}
.gp-mobile-nav__item.is-active{border-bottom-color:var(--gp-green-100)}
.gp-mobile-nav__direct,.gp-mobile-nav__parent{min-height:52px;display:flex;align-items:center;color:var(--color-text);font-size:1rem;font-weight:750;line-height:1.35;text-decoration:none}
.gp-mobile-nav__direct{width:100%}
.gp-mobile-nav__row{display:grid;grid-template-columns:minmax(0,1fr) 48px;align-items:stretch}
.gp-mobile-nav__parent{min-width:0}
.gp-mobile-nav__toggle{width:48px;min-width:48px;min-height:52px;border:0;background:transparent;color:var(--color-text-secondary);display:grid;place-items:center;cursor:pointer}
.gp-mobile-nav__toggle:hover,.gp-mobile-nav__toggle:focus-visible{color:var(--color-primary-dark);background:var(--gp-green-050)}
.gp-mobile-nav__toggle svg{width:18px;height:18px;transition:transform var(--transition-fast)}
.gp-mobile-nav__toggle[aria-expanded="true"] svg{transform:rotate(180deg)}
.gp-mobile-nav__item.is-active>.gp-mobile-nav__direct,.gp-mobile-nav__item.is-active .gp-mobile-nav__parent{color:var(--color-primary-dark)}
.gp-mobile-submenu{margin:0 0 .65rem;padding:.25rem 0 .2rem .7rem;border-left:2px solid var(--gp-green-100)}
.gp-mobile-submenu[hidden]{display:none}
.gp-mobile-submenu__heading{display:block;margin:.7rem .4rem .2rem;color:var(--color-primary-dark);font-size:.69rem;font-weight:800;letter-spacing:.09em;text-transform:uppercase}
.gp-mobile-submenu a{display:flex;align-items:center;min-height:44px;padding:.55rem;color:var(--color-text-secondary);font-size:.91rem;line-height:1.4;text-decoration:none;border-radius:var(--radius-sm)}
.gp-mobile-submenu a:hover,.gp-mobile-submenu a:focus-visible,.gp-mobile-submenu a[aria-current="page"]{color:var(--color-primary-dark);background:var(--color-primary-light)}
.gp-mobile-nav__actions{padding-top:var(--space-5)}
.gp-mobile-nav__utility{display:grid;grid-template-columns:1fr 1fr;gap:.2rem var(--space-3);margin-top:var(--space-4)}
.gp-mobile-nav__utility a{min-height:44px;display:flex;align-items:center;padding:.55rem 0;color:var(--color-text-secondary);font-size:var(--font-size-sm);text-decoration:none}
body.gp-menu-open,body.gp-overlay-open{overflow:hidden}
@media(max-width:359px){
  .gp-mobile-nav__body{padding-inline:.85rem}
  .gp-mobile-nav__logo{width:132px}
  .gp-mobile-nav__utility{grid-template-columns:1fr}
}
@media(min-width:1120px){.gp-mobile-nav{display:none!important}}
