/* Together and Stronger Foundation — main menu (22 Oct 2026)
   Mega-menu: six entries, each opening a full-width panel of grouped links
   with one-line descriptions and an arch-framed feature photo.
   Uses the site's own tokens (--acc, --warm, --ink, --slate, --line, --white, --grey, --sand). */
.hdr__in{position:static}
.hdr{--mm-bg:var(--white,#FDFBF6);--mm-soft:var(--sand,#F5EFE3);--mm-rule:var(--warm,#C8622F)}

.mm .mm__top{appearance:none;background:none;border:0;padding:0;margin:0;cursor:pointer;display:flex;align-items:center;gap:6px;min-height:44px;color:var(--ink);font:500 .9rem/1.3 var(--sans);white-space:nowrap;position:relative}
.mm .mm__top::after{content:"";position:absolute;left:0;right:18px;bottom:6px;height:2px;background:var(--acc);transform:scaleX(0);transform-origin:left;transition:transform .25s}
.mm .mm__top[aria-current="true"]::after{transform:scaleX(1)}
.mm .mm__chev{width:10px;height:10px;color:var(--slate);transition:transform .2s}
.mm .mm__top:focus-visible{outline:3px solid var(--acc);outline-offset:4px;border-radius:2px}

.mm .mm__panel{display:none}
.mm .mm__panel a{white-space:normal;min-height:0;border-bottom:0;font:inherit;position:static}
.mm .mm__panel a::after{display:none!important}
.mm .mm__h{margin:0 0 10px;font:700 .72rem/1.2 var(--sans);letter-spacing:.11em;text-transform:uppercase;color:var(--warm-dark,#A94E22)}
.mm .mm__links{list-style:none;margin:0;padding:0;display:grid;gap:2px}
.mm .mm__a{display:grid;gap:3px;padding:10px 12px;margin:0 -12px;border-radius:12px;text-decoration:none;color:var(--ink);transition:background .15s}
.mm .mm__a:hover,.mm .mm__a:focus-visible{background:var(--grey)}
.mm .mm__a:focus-visible{outline:2px solid var(--acc);outline-offset:-2px}
.mm .mm__a[aria-current="page"] .mm__t{color:var(--acc)}
.mm .mm__t{font:600 .95rem/1.3 var(--sans);display:inline-flex;align-items:center;gap:6px;text-wrap:balance}
.mm .mm__d{font:400 .8125rem/1.45 var(--sans);color:var(--slate)}
.mm .mm__a--plain{padding-block:8px}
.mm .mm__a--plain .mm__t{font-weight:500}
.mm .mm__ext{color:var(--slate);flex:none}

.mm .mm__feat{display:grid;align-content:start;gap:8px;text-decoration:none;color:var(--ink);background:var(--mm-soft);border-radius:var(--r,18px);padding:14px 14px 18px}
.mm .mm__img{display:block;aspect-ratio:14/9;overflow:hidden;border-radius:140px 140px 14px 14px;background:var(--grey)}
.mm .mm__img img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .6s}
.mm .mm__feat:hover .mm__img img{transform:scale(1.04)}
.mm .mm__ft{font:500 1.2rem/1.25 var(--serif);color:var(--acc-dark,#123B2E);text-wrap:balance;margin-top:4px}
.mm .mm__fd{font-size:.8438rem;line-height:1.5;color:var(--slate)}
.mm .mm__fb{display:inline-flex;align-items:center;gap:8px;font:700 .85rem/1 var(--sans);color:var(--warm-dark,#A94E22);margin-top:4px}
.mm .mm__arrow{transition:transform .2s}
.mm .mm__feat:hover .mm__arrow{transform:translateX(3px)}
.mm .mm__feat:focus-visible{outline:3px solid var(--acc);outline-offset:2px}

/* ---------- Desktop: full-width panels under the header ---------- */
@media (min-width:1260px){
  .nav__list.mm{align-self:stretch;align-items:stretch;gap:0 clamp(16px,1.7vw,30px)}
  html:lang(fr) .nav__list.mm,html:lang(es) .nav__list.mm{gap:0 clamp(12px,1.25vw,24px)}
  .mm .mm__item{display:flex;align-items:center}
  .mm .mm__panel{display:block;position:absolute;left:0;right:0;top:100%;z-index:60;background:var(--mm-bg);border-top:1px solid var(--line);box-shadow:0 30px 60px -20px rgba(18,48,42,.22);visibility:hidden;opacity:0;transform:translateY(-6px);transition:opacity .18s ease,transform .18s ease,visibility 0s linear .18s}
  .mm .mm__panel::before{content:"";position:absolute;left:0;top:-1px;height:3px;width:100%;background:linear-gradient(90deg,var(--acc) 0 33%,var(--mm-rule) 33% 66%,var(--gold,#D9A441) 66%);opacity:.85}
  .mm .mm__item.open>.mm__panel{visibility:visible;opacity:1;transform:none;transition-delay:0s}
  .mm .mm__item.open>.mm__top .mm__chev{transform:rotate(180deg)}
  .mm .mm__item.open>.mm__top::after{transform:scaleX(1)}
  .mm .mm__inner{max-width:var(--wrap,1400px);margin:0 auto;padding:30px var(--gut,48px) 34px;display:grid;gap:clamp(24px,3vw,48px);align-items:start}
  .mm .mm__inner--2{grid-template-columns:1fr 1fr minmax(280px,.95fr)}
  .mm .mm__inner--3{grid-template-columns:1fr 1fr 1fr minmax(260px,.9fr)}
  .mm .mm__col{min-width:0}
  .mm__scrim{position:fixed;inset:0;z-index:40;background:rgba(18,48,42,.18);opacity:0;visibility:hidden;transition:opacity .2s,visibility 0s .2s;pointer-events:none}
  .mm-open .mm__scrim{opacity:1;visibility:visible;transition-delay:0s}
}

/* ---------- Tablet & phone: accordion inside the Menu drawer ---------- */
@media (max-width:1259px){
  .mm .mm__item{border-bottom:1px solid var(--line)}
  .mm .mm__top{width:100%;justify-content:space-between;min-height:56px;font-size:1.0625rem}
  .mm .mm__top::after{display:none}
  .mm .mm__top[aria-current="true"]{color:var(--acc)}
  .mm .mm__item.open>.mm__top .mm__chev{transform:rotate(180deg)}
  .mm .mm__item.open>.mm__panel{display:block;padding:2px 0 18px}
  .mm .mm__inner{display:grid;gap:18px}
  .mm .mm__a{margin:0;padding:9px 10px}
  .mm .mm__feat{grid-template-columns:96px 1fr;column-gap:14px;align-items:center;padding:12px}
  .mm .mm__img{grid-row:span 3;aspect-ratio:1;border-radius:48px 48px 10px 10px}
  .mm .mm__ft{font-size:1.05rem;margin:0}
  .mm .mm__fd{display:none}
  .mm__scrim{display:none}
}
@media (max-width:480px){.mm .mm__d{font-size:.8rem}}
@media (prefers-reduced-motion:reduce){.mm__panel,.mm__chev,.mm__img img,.mm__arrow{transition:none!important}}
@media print{.mm__panel{display:none!important}}
.mm .mm__chev{flex:none}
/* Longer Spanish and French labels: tighter rhythm on narrower desktops */
@media (min-width:1260px){
  .hdr__in{gap:16px}
  .nav{gap:12px 18px}
  .nav__list.mm{gap:0 clamp(12px,1.15vw,20px)}
  html:lang(es) .mm .mm__top,html:lang(fr) .mm .mm__top{font-size:.85rem;gap:4px}
  html:lang(es) .nav__list.mm,html:lang(fr) .nav__list.mm{gap:0 clamp(9px,.85vw,16px)}
  html:lang(es) .nav__cta,html:lang(fr) .nav__cta{padding-inline:16px;font-size:.85rem}
  html:lang(es) .fam summary,html:lang(fr) .fam summary{font-size:.78rem}
}
.mm .mm__tag{display:inline-flex;align-items:center;gap:5px;margin-left:4px;padding:3px 8px 3px 7px;border-radius:999px;background:var(--acc);color:#fff;font:700 .66rem/1 var(--sans);letter-spacing:.06em;text-transform:uppercase}
.mm .mm__tag::before{content:"";border-style:solid;border-width:4px 0 4px 6px;border-color:transparent transparent transparent currentColor}
@media (max-width:1259px){.mm .mm__chev{width:14px;height:14px}}
