/* Shared site nav - solid bar for interior pages */
.nav{
  position:sticky;top:0;z-index:100;
  background:rgba(248,247,243,.94);
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
  padding:18px 0;
  box-shadow:0 1px 0 rgba(28,28,26,.06);
}
.nav-inner{
  display:flex;align-items:center;justify-content:space-between;gap:24px;
  max-width:1240px;margin:0 auto;padding:0 clamp(24px,5vw,56px);width:100%;
}
.nav .brand{display:inline-flex;align-items:center;line-height:0;flex-shrink:0;text-decoration:none;color:inherit}
.nav .brand-img{height:clamp(36px,4.5vw,46px);width:auto;display:block}
.nav-links{display:flex;align-items:center;gap:clamp(12px,1.8vw,26px);flex-wrap:nowrap}
.nav-links a{
  font-size:12px;font-weight:400;letter-spacing:.05em;
  color:var(--ink-soft,#3D3D38);
  transition:color .3s,border-color .3s,background .3s;
  white-space:nowrap;text-decoration:none;
}
.nav-links a:hover{color:var(--accent,#4A6B62);opacity:1}
.nav-links a.nav-cta{
  font-weight:500;letter-spacing:.08em;padding:8px 16px;
  border:1px solid var(--accent-line,#B8CCC4);border-radius:999px;
  color:var(--accent,#4A6B62);
}
.nav-links a.nav-cta:hover{
  background:var(--accent-soft,#E8EFEC);border-color:var(--accent,#4A6B62);
}
.nav-toggle{display:none;position:relative;z-index:2;width:44px;height:44px;background:none;border:0;cursor:pointer;padding:0}
.nav-toggle span{
  position:absolute;left:10px;top:17px;display:block;width:24px;height:1px;
  background:var(--ink,#1C1C1A);transition:top .25s,transform .25s,background .3s;
}
.nav-toggle span+span{top:26px}
.nav-toggle.is-open span{top:21px;transform:rotate(45deg)}
.nav-toggle.is-open span+span{transform:rotate(-45deg)}
body.menu-open{overflow:hidden}
/* backdrop-filter makes .nav a containing block - clear it while the menu is open */
body.menu-open .nav{
  background:transparent;box-shadow:none;
  backdrop-filter:none;-webkit-backdrop-filter:none;
}
@media(min-width:1441px){
  .nav .brand-img{height:clamp(44px,2.4vw,56px)}
  .nav{padding:20px 0}
  .nav-links{gap:clamp(18px,1.4vw,32px)}
  .nav-links a{font-size:13px}
  .nav-links a.nav-cta{padding:9px 18px}
}
@media(max-width:900px){
  .nav-links{
    position:fixed;z-index:1;inset:0;width:100%;min-height:100dvh;
    background:var(--paper,#F8F7F3);
    flex-direction:column;justify-content:center;align-items:center;gap:32px;
    opacity:0;visibility:hidden;pointer-events:none;
    transition:opacity .4s,visibility .4s;
  }
  .nav-links.open{opacity:1;visibility:visible;pointer-events:auto}
  .nav-links a{font-size:15px;color:var(--ink,#1C1C1A)}
  .nav-links a.nav-cta{color:var(--accent,#4A6B62);border-color:var(--accent-line,#B8CCC4)}
  .nav-toggle{display:block}
  .nav-inner{position:relative;z-index:2}
}
