/* MX Towns DEV v141. Header always visible; footer invariant across HTML templates.
 * External CSS, compatible with the existing CSP. No JS, overlay or layout-wide fixed spacer. */
.mx-persistent-header-v141{
  position:sticky!important;top:0!important;z-index:1100!important;
  background:#fff;isolation:isolate;overflow:visible;
  box-shadow:0 3px 10px rgb(12 48 63 / 10%);
}
.mx-persistent-header-v141>.utility,
.mx-persistent-header-v141>.mast,
.mx-persistent-header-v141>.t-util,
.mx-persistent-header-v141>.t-head{width:100%;}
.mx-persistent-header-v141>.mast,
.mx-persistent-header-v141>.t-head{
  position:relative!important;top:auto!important;
}
.mx-persistent-header-v141 .nav-menu .menu,
.mx-persistent-header-v141 .lang-menu .menu,
.mx-persistent-header-v141 .t-menu nav{z-index:1120;}
/* Legal and other legacy views use a single header element. */
body .bar.site-bar,body .site-bar.bar,
body .mxtp-header{
  position:sticky!important;top:0!important;z-index:1100!important;
  background-color:#fff;isolation:isolate;overflow:visible;
  box-shadow:0 3px 10px rgb(12 48 63 / 9%);
}
/* Keep anchor targets visible below the persistent multirow header. */
html{scroll-padding-top:clamp(8.5rem,22vw,15rem)}
html:has(.mxtp-header),html:has(.site-bar){scroll-padding-top:6.5rem}
.mx-site-footer-v141,.mx-site-footer-v141 *{box-sizing:border-box}
.mx-site-footer-v141{
  background:#173443!important;color:#fff!important;
  padding:1.15rem 0!important;margin:0!important;width:100%;
  font:500 .91rem/1.5 system-ui,-apple-system,"Segoe UI",sans-serif;
  border:0!important;text-align:initial;
}
.mx-site-footer-v141-inner{
  width:min(100%,1180px);margin:auto;padding:0 clamp(1rem,3vw,1.5rem);
  display:flex;justify-content:space-between;align-items:center;
  flex-wrap:wrap;gap:1rem 1.5rem;
}
.mx-site-footer-v141-copyright{font-weight:600;white-space:nowrap;color:#fff}
.mx-site-footer-v141 nav{display:flex;flex-wrap:wrap;gap:.7rem clamp(.9rem,2.2vw,1.8rem);align-items:center}
.mx-site-footer-v141 a{color:#fff!important;text-decoration:underline!important;text-underline-offset:4px;font-weight:600;min-height:44px;display:inline-flex;align-items:center}
.mx-site-footer-v141 a:hover{color:#fff2b1!important}
.mx-site-footer-v141 a:focus-visible{outline:3px solid #ffd34e;outline-offset:3px;border-radius:3px}
@media (max-width:620px){
  .mx-site-footer-v141-inner{justify-content:center;text-align:center;gap:.4rem 1rem}
  .mx-site-footer-v141 nav{justify-content:center;gap:.25rem .9rem}
  .mx-site-footer-v141{padding:.8rem 0!important;font-size:.84rem}
  .mx-site-footer-v141 a{min-height:42px}
}
@media (prefers-reduced-motion: reduce){.mx-persistent-header-v141{scroll-behavior:auto}}
/* Historic tourist template keeps its original sponsored carousel, above the new footer. */
.mx-tour-invites-v141{padding:clamp(1rem,2.5vw,1.6rem) 0;background:#f4f8fa;color:#173443}
.mx-tour-invites-v141 .t-wrap{max-width:1180px;margin:auto;padding-inline:clamp(1rem,3vw,1.5rem)}
.mx-tour-invites-v141 h2{font-size:1.12rem;margin:0 0 .65rem}
.mx-tour-independence-v141{padding:1rem clamp(1rem,3vw,1.5rem);max-width:1180px;margin:auto;color:#44606d;font-size:.82rem;line-height:1.5}
.mx-tour-invites-v141 .t-spons-row a,.mx-tour-invites-v141 .t-spons-row span{color:#173443!important}
.mx-tour-invites-v141 .t-spons-row a:hover,.mx-tour-invites-v141 .t-spons-row a:focus-visible{color:#8a1769!important}
