/* One navigation state: script.js controls .open for pointer, touch and keyboard. */
.nav-shell{--nav-height:82px;position:fixed;inset:0 0 auto;z-index:60;display:flex;align-items:center;justify-content:space-between;gap:30px;width:100%;height:var(--nav-height);padding:0 4vw;background:rgba(247,246,242,.96);backdrop-filter:blur(18px);border-bottom:1px solid rgba(12,14,17,.1);transition:height .2s ease,background .2s ease}
.nav-shell.scrolled{--nav-height:68px;background:rgba(255,255,255,.98)}
.nav-shell .nav-links{display:flex;position:static;align-items:stretch;justify-content:center;gap:16px;height:100%;margin:0;padding:0;text-transform:uppercase;overflow:visible}
.nav-links>.nav-item{position:relative;display:flex;align-items:center;justify-content:center;flex:0 0 112px;width:112px;min-height:0;gap:0;border:0}
.nav-links>.nav-item:not(:last-child)::after{content:"";position:absolute;right:-10px;top:calc(50% - 2px);width:4px;height:4px;border-radius:50%;background:var(--red);pointer-events:none}
.nav-links .nav-section-link,.nav-links .nav-direct{display:flex;align-items:center;min-height:44px;padding:0;color:var(--ink);font-family:var(--font-headline),sans-serif;font-size:12px;font-weight:700;line-height:1.3;letter-spacing:0;text-transform:uppercase}
.nav-links a::after,.nav-links .nav-group-toggle::after{content:none}
.nav-links .nav-group-toggle{display:flex;align-items:center;justify-content:center;flex:0 0 28px;width:28px;height:44px;padding:0;border:0;border-radius:4px;background:transparent;color:var(--ink);cursor:pointer;touch-action:manipulation}
.nav-links .nav-group-toggle:hover{background:rgba(227,34,50,.07)}
.nav-links .nav-chevron{display:block;width:6px;height:6px;margin: -3px 0 0;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg);transition:transform .16s ease}
.nav-links .open>.nav-group-toggle .nav-chevron{transform:rotate(225deg);margin-top:3px}
.nav-links .nav-item.open>.nav-section-link,.nav-links .nav-item.active>.nav-section-link,.nav-links .nav-direct.active,.nav-links a[aria-current="page"]{color:var(--red)}
.nav-links .nav-submenu{position:absolute;top:100%;left:0;z-index:1;display:block;min-width:240px;max-height:calc(100dvh - var(--nav-height) - 16px);overflow-y:auto;overscroll-behavior:contain;margin:0;padding:10px;background:#fff;border:1px solid #deddd7;border-radius:0 0 4px 4px;box-shadow:0 16px 32px rgba(12,14,17,.1);opacity:0;visibility:hidden;pointer-events:none;transform:translateY(-4px);transition:opacity .12s ease,transform .12s ease,visibility .12s}
.nav-links .nav-group.open>.nav-submenu{opacity:1;visibility:visible;pointer-events:auto;transform:none}
.nav-links .nav-submenu a{display:block;min-height:44px;margin:0;padding:12px 10px;border:0;border-radius:3px;color:var(--ink);font-family:var(--font-copy),sans-serif;font-size:12px;font-weight:400;line-height:1.65;text-transform:none}
.nav-links .nav-submenu a:hover,.nav-links .nav-submenu a:focus-visible{background:#f0efeb;color:var(--red)}
.nav-links .nav-submenu a:focus-visible{outline:2px solid var(--red);outline-offset:-2px}
.nav-links .nav-mobile-contact,.nav-shell .menu{display:none}
.nav-shell .menu{align-items:center;justify-content:center;flex-direction:column;gap:6px;flex:0 0 44px;width:44px;height:44px;padding:0;border:0;background:transparent;cursor:pointer;touch-action:manipulation}
.nav-shell .menu span{display:block;width:25px;height:1px;background:var(--ink);transition:transform .16s ease}
.nav-shell .menu[aria-expanded="true"] span:first-child{transform:translateY(3.5px) rotate(45deg)}
.nav-shell .menu[aria-expanded="true"] span:last-child{transform:translateY(-3.5px) rotate(-45deg)}
@media(hover:hover) and (pointer:fine){.nav-links .nav-section-link:hover,.nav-links .nav-direct:hover{color:var(--red)}}
@media(max-width:1100px){
  .nav-shell,.nav-shell.scrolled{--nav-height:70px}
  .nav-shell .menu{display:flex}
  .nav-shell .nav-links{display:none;position:absolute;top:100%;left:0;align-items:stretch;justify-content:flex-start;flex-direction:column;gap:0;width:100%;height:auto;max-height:calc(100dvh - var(--nav-height));overflow-y:auto;overscroll-behavior:contain;padding:12px 5vw 24px;background:#fff;border-bottom:1px solid #ddd;box-shadow:0 16px 32px rgba(12,14,17,.08)}
  .nav-shell .nav-links.open{display:flex}
  .nav-links>.nav-item{justify-content:space-between;flex:0 0 auto;flex-wrap:wrap;width:100%;border-bottom:1px solid #ddd}
  .nav-links>.nav-item::after{display:none}
  .nav-links .nav-section-link,.nav-links .nav-direct{flex:1;min-height:52px;padding:16px 0;font-size:14px}
  .nav-links .nav-group-toggle{flex:0 0 48px;width:48px;height:52px}
  .nav-links .nav-submenu{position:static;display:none;flex:0 0 100%;min-width:0;width:100%;max-height:none;padding:0 0 12px 14px;border:0;box-shadow:none;background:transparent;transform:none;transition:none}
  .nav-links .nav-group.open>.nav-submenu{display:block}
  .nav-links .nav-submenu a{padding:12px 8px}
  body.navigation-open{overflow:hidden}
}
@media(prefers-reduced-motion:reduce){.nav-shell,.nav-links .nav-chevron,.nav-links .nav-submenu,.nav-shell .menu span{transition:none}}
