/* Canonical public header — copied from home-concept.php. Scope: header.top */
header.top{
  --mm-forest:#1F3B2E;
  --mm-ivory:#F4EFE6;
  --mm-charcoal:#1C1A17;
  --mm-serif:'Cormorant Garamond', Georgia, serif;
  --mm-sans:'DM Sans', sans-serif;
  display:grid;
  grid-template-columns:1fr auto 1fr;
  align-items:center;
  height:80px;
  padding:0 40px;
  color:#F7F3EC;
  font-family:var(--mm-sans);
  box-sizing:border-box;
  background:#1F3B2E !important;
  background-color:#1F3B2E !important;
  opacity:1 !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
  mix-blend-mode:normal !important;
}
header.top *, header.top *::before, header.top *::after{ box-sizing:border-box; }
header.top a{ color:inherit; text-decoration:none; }
header.top.is-overlay,
header.top.is-solid{
  background:#1F3B2E !important;
  background-color:#1F3B2E !important;
  opacity:1 !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
  mix-blend-mode:normal !important;
}
header.top.is-overlay{
  position:absolute; top:0; left:0; right:0; z-index:3;
}
header.top.is-solid{
  position:sticky; top:0; z-index:200;
}
header.top .brand{
  display:flex; align-items:center; gap:10px; justify-self:start;
}
header.top .brand img{
  height:40px; width:auto; object-fit:contain;
  filter:brightness(0) invert(1);
}
header.top .brand span{
  font-family:var(--mm-serif); font-size:25px; letter-spacing:.04em;
}
header.top nav.menu{
  display:flex; align-items:center; gap:4px;
  font-size:16px; color:rgba(247,243,236,.82);
}
header.top nav.menu .dd-trigger,
header.top nav.menu .menu-link,
header.top .tools .dd-trigger{
  display:inline-flex; align-items:center; min-height:38px; padding:0 16px;
  border:0; background:transparent; color:inherit; font:inherit; cursor:pointer;
  border-radius:999px;
}
header.top nav.menu .dd:hover .dd-trigger,
header.top nav.menu .dd:focus-within .dd-trigger,
header.top nav.menu .menu-link:hover,
header.top nav.menu .menu-link:focus-visible,
header.top .tools .dd:hover .dd-trigger,
header.top .tools .dd:focus-within .dd-trigger{
  background:var(--mm-forest); color:#F4EFE6;
}
header.top .tools .pill{
  background:var(--mm-forest); color:#F4EFE6;
}
header.top .dd{ position:relative; }
header.top .dd-trigger::after{
  content:""; width:6px; height:6px; margin-left:7px;
  border-right:1.5px solid currentColor; border-bottom:1.5px solid currentColor;
  transform:rotate(45deg) translateY(-2px);
}
header.top .dd-menu{
  position:absolute; top:calc(100% + 10px); left:0; z-index:10;
  min-width:220px; padding:10px 8px;
  background:var(--mm-ivory); border-radius:16px;
  box-shadow:0 16px 40px rgba(0,0,0,.22);
  opacity:0; visibility:hidden; pointer-events:none;
}
header.top .tools .dd-menu{ left:auto; right:0; }
header.top .dd:hover .dd-menu,
header.top .dd:focus-within .dd-menu{
  opacity:1; visibility:visible; pointer-events:auto;
}
header.top .dd-menu a{
  display:flex; align-items:center; min-height:42px; padding:0 14px;
  border-radius:10px; color:var(--mm-charcoal); font-size:15px; white-space:nowrap;
}
header.top .dd-menu a:hover,
header.top .dd-menu a:focus-visible{
  background:rgba(16,36,24,.08);
}
header.top .tools{
  justify-self:end; display:flex; align-items:center; gap:8px; font-size:16px;
}
header.top .nav-toggle{ display:none; }
header.top .nav-sheet{ display:contents; }

@media (max-width:1100px) and (min-width:901px){
  header.top{ padding:0 24px; }
  header.top nav.menu, header.top .tools{ font-size:15px; }
  header.top nav.menu .dd-trigger, header.top nav.menu .menu-link, header.top .tools .dd-trigger{ padding:0 11px; }
  header.top .brand span{ font-size:22px; }
}
@media (max-width:900px){
  header.top{ grid-template-columns:1fr auto; padding:0 18px; }
  header.top .nav-toggle{
    display:inline-flex; align-items:center; justify-content:center;
    justify-self:end; z-index:4;
    min-height:38px; padding:0 14px;
    border:1px solid rgba(247,243,236,.55); border-radius:999px;
    background:transparent; color:#F7F3EC; font:inherit; font-size:15px; cursor:pointer;
  }
  header.top.is-open .nav-toggle{
    background:var(--mm-forest); color:#F4EFE6; border-color:transparent;
  }
  header.top .nav-sheet{
    display:none; position:absolute; top:80px; left:0; right:0; z-index:5;
    flex-direction:column; gap:4px;
    max-height:calc(100vh - 80px); max-height:calc(100svh - 80px);
    overflow-y:auto;
    padding:12px 18px 20px;
    background:var(--mm-ivory); color:var(--mm-charcoal);
    box-shadow:0 16px 40px rgba(0,0,0,.18);
  }
  header.top.is-open .nav-sheet{ display:flex; }
  header.top nav.menu{
    display:flex; flex-direction:column; align-items:stretch;
    color:var(--mm-charcoal);
  }
  header.top .tools{
    display:flex; flex-direction:column; align-items:stretch;
    justify-self:stretch; gap:4px; margin-top:8px; padding-top:8px;
    border-top:1px solid rgba(16,36,24,.1); color:var(--mm-charcoal);
  }
  header.top nav.menu .dd-trigger,
  header.top nav.menu .menu-link,
  header.top .tools .dd-trigger{
    width:100%; justify-content:space-between; color:inherit;
  }
  header.top .tools .pill{ background:var(--mm-forest); color:#F4EFE6; }
  header.top .dd-menu{
    position:static; opacity:1; visibility:visible; pointer-events:auto;
    box-shadow:none; background:transparent; min-width:0; padding:0 0 8px 8px;
  }
}
@media (max-width:420px){
  header.top .brand span{ display:none; }
}
