/* ============================================================
   E.R.M. site navigation — single source of truth (styles)
   Extracted verbatim from the homepage inline nav CSS.
   Do not edit per-page nav styling; edit this file only.
   ============================================================ */

/* NAV */
nav#nav{position:fixed;top:0;left:0;right:0;z-index:200;display:flex;align-items:center;justify-content:space-between;padding:1.75rem 4rem;transition:padding 0.5s,background 0.5s,backdrop-filter 0.5s;}
nav#nav.stuck{padding:1rem 4rem;background:rgba(12,11,9,0.94);backdrop-filter:blur(20px);}
.nav-logo{font-family:var(--sans);font-size:0.75rem;font-weight:700;letter-spacing:0.32em;text-transform:uppercase;color:var(--paper);text-decoration:none;}
.nav-links{display:flex;gap:2.5rem;list-style:none;align-items:center;}
.nav-links a{font-family:var(--sans);font-size:0.75rem;font-weight:600;letter-spacing:0.18em;text-transform:uppercase;color:rgba(247,244,238,0.82);text-decoration:none;transition:color 0.22s;position:relative;}
.nav-links a::after{content:'';position:absolute;bottom:-3px;left:0;right:100%;height:1px;background:var(--gold);transition:right 0.3s ease;}
.nav-links a:hover{color:var(--paper);}
.nav-links a:hover::after{right:0;}
.nav-cta{font-family:var(--sans);font-size:0.75rem;font-weight:600;letter-spacing:0.18em;text-transform:uppercase;color:var(--gold) !important;border:1px solid rgba(184,146,42,0.6);padding:0.4rem 1rem;}
.nav-cta:hover{background:rgba(184,146,42,0.1);}
.nav-cta::after{display:none !important;}

/* ── MOBILE NAV ── */
.nav-hamburger{
  display:none;
  flex-direction:column;gap:5px;
  background:none;border:none;cursor:pointer;padding:6px;
  z-index:300;
}
.nav-hamburger span{
  display:block;width:24px;height:1.5px;
  background:var(--paper);transition:transform 0.3s,opacity 0.3s;
}
/* Desktop: hamburger always hidden */
@media (min-width:769px){
  .nav-hamburger{display:none !important;}
  .nav-links-mobile{display:none !important;}
}
.nav-hamburger[aria-expanded="true"] span:nth-child(1){transform:translateY(6.5px) rotate(45deg);}
.nav-hamburger[aria-expanded="true"] span:nth-child(2){opacity:0;}
.nav-hamburger[aria-expanded="true"] span:nth-child(3){transform:translateY(-6.5px) rotate(-45deg);}

/* Mobile nav overlay */
.nav-links-mobile{
  display:none;
  position:fixed;inset:0;z-index:250;
  background:rgba(9,8,10,0.97);
  flex-direction:column;align-items:center;justify-content:center;
  gap:2.5rem;list-style:none;
  padding:0;margin:0;
}
.nav-links-mobile.open{display:flex;}
.nav-links-mobile a{
  font-family:var(--serif);font-size:clamp(2rem,6vw,3.5rem);
  font-weight:300;color:rgba(247,244,238,0.9);
  text-decoration:none;letter-spacing:0.02em;
  transition:color 0.2s;
}
.nav-links-mobile a:hover,.nav-links-mobile a:focus{color:var(--gold-lt);}
.nav-links-mobile .nav-cta{
  font-family:var(--sans);font-size:0.75rem;font-weight:700;
  letter-spacing:0.2em;text-transform:uppercase;
  color:var(--gold) !important;
  border:1px solid rgba(184,146,42,0.5);padding:0.75rem 2rem;
}

/* MOBILE RESPONSIVE — 768px and below */
@media (max-width:768px){
  nav#nav{padding:1.25rem 1.5rem;}
  nav#nav.stuck{padding:0.9rem 1.5rem;}
  .nav-links{display:none;}
  .nav-logo{font-size:0.65rem;}
  .nav-hamburger{display:flex;}
}

/* TABLET — 769px to 1024px */
@media (min-width:769px) and (max-width:1024px){
  nav#nav{padding:1.5rem 3rem;}
  nav#nav.stuck{padding:0.9rem 3rem;}
}
