/* Shared external header, matching the approved HOME header. */
body.external-home .ext-header {
  position:sticky!important; top:0!important; z-index:60;
  display:flex!important; align-items:center!important;
  height:76px!important; padding:0 max(48px,calc((100vw - 1200px)/2))!important;
  background:#fdfcf9!important; border-bottom:1px solid #d9d4cf!important; box-shadow:none!important;
}
body.external-home .ext-header .ext-brand { flex:0 0 auto; margin-right:0; }
body.external-home .ext-header .ext-brand img { display:block; height:44px!important; width:auto!important; }
body.external-home .ext-header .ext-nav { margin-left:auto!important; gap:28px!important; font-size:18px!important; font-weight:500!important; }
body.external-home .ext-header .ext-nav > a,
body.external-home .ext-header .nav-group-toggle {
  font-size:18px!important; font-weight:500!important; color:#292827!important;
  background:none!important; border:0!important; padding:28px 0!important;
}
body.external-home .ext-header .ext-menu-toggle { flex:0 0 auto; width:48px!important; height:48px!important; margin-left:34px!important; color:#292827!important; }
body.external-home .ext-header .nav-group-menu { top:calc(100% - 7px)!important; background:#fdfcf9!important; border:1px solid #d9d4cf!important; border-radius:0!important; padding:12px 0!important; box-shadow:none!important; }
body.external-home .ext-header .nav-group-menu a { padding:8px 16px!important; font-size:13px!important; color:#292827!important; }
@media (max-width:1280px) { body.external-home .ext-header .ext-menu-toggle { margin-left:24px!important; } }
@media (max-width:1080px) {
  body.external-home .ext-header .ext-nav { display:none!important; }
  body.external-home .ext-header .ext-menu-toggle { margin-left:auto!important; }
}
@media (max-width:640px) {
  body.external-home .ext-header { height:64px!important; padding-inline:20px!important; }
  body.external-home .ext-header .ext-brand img { height:36px!important; }
}

/* Desktop dropdowns share the header's warm neutral palette. */
body.external-home .ext-header .nav-group-menu { display:none!important; left:0; min-width:220px; }
body.external-home .ext-header .nav-group.open .nav-group-menu { display:grid!important; }
body.external-home .ext-header .nav-group:last-child .nav-group-menu { left:auto; right:0; }
body.external-home .ext-header .ext-nav > a:hover,
body.external-home .ext-header .ext-nav > a:focus-visible,
body.external-home .ext-header .nav-group.open > .nav-group-toggle,
body.external-home .ext-header .nav-group-toggle:focus-visible { color:#8b7358!important; }
body.external-home .ext-header .nav-group-menu a:hover,
body.external-home .ext-header .nav-group-menu a:focus-visible { background:#f1efed; color:#8b7358!important; }
body.external-home .ext-header .nav-group > .nav-group-toggle { display:block; text-decoration:none; }

/* EXT-013: public chrome only; no selectors reach another page's main content. */
body.external-home .ext-header,
body.external-home .mobile-overlay { background:#FFFFFF!important; }
body.external-home .mobile-overlay { padding-inline:max(48px,calc((100vw - 1200px)/2))!important; }
body.external-home .mobile-overlay .mega-menu-title {
  box-sizing:border-box; min-height:48px; display:flex!important; align-items:center;
  color:#302E2B!important; font-size:24px!important;
}
body.external-home .mobile-overlay .mobile-overlay-close { width:48px; height:48px; color:#302E2B!important; }
body.external-home :is(.ext-header a,.ext-header button,.mobile-overlay a,.mobile-overlay button,.ext-footer a):focus-visible {
  outline:3px solid #655E56!important; outline-offset:4px;
}
body.external-home .mobile-overlay a[aria-current=page] { text-decoration:underline; text-underline-offset:6px; font-weight:600!important; }
body.external-home .ext-footer .footer-company p,
body.external-home .ext-footer .footer-bottom p {
  font-size:15px!important; line-height:1.7!important; color:#655E56!important;
  white-space:normal!important; overflow-wrap:break-word; word-break:keep-all;
}
body.external-home .ext-footer .footer-company p span { white-space:normal!important; }
body.external-home .ext-footer .footer-top nav a,
body.external-home .ext-footer .privacy-policy-link {
  display:inline-flex; align-items:center; box-sizing:border-box; min-height:48px;
}
@media(max-width:640px) {
  body.external-home .mobile-overlay { padding-inline:20px!important; }
  body.external-home .mobile-overlay .mega-menu-title { min-height:48px; font-size:22px!important; }
  body.external-home .ext-footer .footer-top nav { font-size:15px!important; }
  body.external-home .ext-footer .footer-top nav a { padding-block:12px!important; }
}
