/* ===== Who We Serve mega menu ===== */
header.site .wrap{position:relative}
nav li.has-mega{position:static}
.mega-toggle{display:none}
.mega-label{display:flex;align-items:center;gap:6px;white-space:nowrap;font-size:.95rem;padding:8px 11px;border-radius:999px;color:var(--ink);font-weight:500;cursor:pointer;user-select:none}
.mega-label::after{content:"";width:6px;height:6px;border-right:1.6px solid currentColor;border-bottom:1.6px solid currentColor;transform:rotate(45deg) translateY(-2px);transition:transform .15s}
.has-mega:hover .mega-label,.has-mega:focus-within .mega-label{background:var(--cream)}

.mega{position:absolute;left:20px;right:20px;top:calc(100% - 4px);background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:0 18px 40px rgba(43,38,34,.14);overflow:hidden;opacity:0;visibility:hidden;transform:translateY(6px);transition:opacity .15s,transform .15s,visibility .15s}
.has-mega:hover .mega,.has-mega:focus-within .mega{opacity:1;visibility:visible;transform:none}
.mega-cols{display:grid;grid-template-columns:repeat(4,1fr) 1.1fr;gap:24px;padding:26px 28px 22px}
.mega h4{margin:0 0 10px;padding-bottom:10px;border-bottom:1px solid var(--line);font-size:1.05rem;font-weight:600;color:var(--ink)}
.mega h4 a{padding:0;border-radius:0;font-size:inherit;font-weight:inherit;color:inherit;display:inline}
.mega h4 a:hover{background:none;color:var(--gold-dark)}
.mega h4 a::after{content:" \2192";color:var(--gold)}
.mega ul{display:block;padding:0;margin:0}
.mega li a{display:block;padding:6px 0;border-radius:0;font-size:.93rem;font-weight:400;color:var(--muted);white-space:normal}
.mega li a:hover{background:none;color:var(--gold-dark)}
.mega li.sub a{padding-left:16px;position:relative}
.mega li.sub a::before{content:"";position:absolute;left:3px;top:50%;width:8px;border-top:1px solid var(--line)}
.mega-note{margin:0 0 8px;font-size:.88rem;line-height:1.5;color:var(--muted)}
.mega-card{background:var(--cream);border-radius:14px;padding:18px}
.mega-card strong{display:block;font-size:1rem;color:var(--ink);margin-bottom:6px}
.mega-card p{margin:0 0 14px;font-size:.88rem;line-height:1.5;color:var(--muted)}
.mega-card a.btn-mini{display:inline-block;background:var(--ink);color:#fff;padding:8px 14px;border-radius:999px;font-size:.85rem;font-weight:600}
.mega-card a.btn-mini:hover{background:var(--gold-dark)}
.mega-bar{display:flex;align-items:center;justify-content:space-between;gap:16px;background:#5a4f45;color:#f4f0e8;padding:14px 28px;font-size:.9rem}
.mega-bar a{background:transparent;border:1.5px solid #f4f0e8;color:#fff;padding:8px 16px;border-radius:999px;font-weight:600;font-size:.88rem}
.mega-bar a:hover{background:#f4f0e8;color:var(--ink)}

/* Phones and tablets: the menu opens as a tap-to-expand list */
@media (max-width:1080px){
  nav{max-height:calc(100vh - 90px);overflow-y:auto}
  .mega-label{justify-content:space-between;padding:10px 11px}
  .mega{position:static;opacity:1;visibility:visible;transform:none;box-shadow:none;border:0;border-radius:0;display:none}
  .has-mega:hover .mega,.has-mega:focus-within .mega{display:none}
  .has-mega .mega-toggle:checked ~ .mega{display:block}
  .mega-toggle:checked + .mega-label::after{transform:rotate(-135deg)}
  .mega-cols{grid-template-columns:1fr;gap:16px;padding:6px 14px 10px}
  .mega h4{font-size:.98rem;margin-bottom:4px;padding-bottom:6px}
  .mega-card,.mega-bar{display:none}
}

/* Medium screens: tighten the menu so the extra item fits on one line */
@media (min-width:1081px){
  header.site .wrap{gap:10px}
  nav ul{gap:2px}
  nav a,.mega-label{font-size:.88rem;padding:7px 8px}
  nav a.btn-call{margin-left:2px}
  .logo img{height:52px}
}