/* Reflow controls at narrow effective widths and in short/zoomed windows. */
html { scroll-padding-top: 7rem; }
.site-header { grid-template-columns:minmax(0,1fr) auto; column-gap:.75rem; }
.site-header .brand { min-width:0; max-width:100%; }
.site-header .brand img { flex:none; }
.site-header .brand span { min-width:0; white-space:normal; line-height:1.15; }
.site-header .menu-toggle { flex:none; gap:.5rem; }
.site-page :is(input,textarea,select) { max-width:100%; }
.site-page :is(.footer-navigation-column,.marcoplay-hero > div,.marcoplay-info > div) { min-width:0; }
.site-page :is(.footer-legal,.prize-terms-draft,.marcoplay-info) { overflow-wrap:anywhere; }
.analytics-consent { max-height:calc(100svh - 2rem); max-height:calc(100dvh - 2rem); overflow-y:auto; overscroll-behavior:contain; }
.analytics-consent__actions { flex-wrap:wrap; }
.site-page :is(.page-button,.text-link,.question-action-link) { max-width:100%; }
@media(min-width:64rem) {
  .site-header { grid-template-columns:minmax(12rem,1fr) minmax(0,38rem); }
}
@media(max-width:63.99rem) {
  .site-header .site-nav { max-height:calc(100svh - 7rem); max-height:calc(100dvh - 7rem); min-height:0; overflow-y:auto; overscroll-behavior:contain; padding-bottom:.75rem; scrollbar-gutter:stable; }
  body.menu-open .site-header { border-radius:1.5rem; }
  .site-header .nav-service-links { min-width:0; }
  .site-header .nav-service-links a { white-space:normal; overflow-wrap:anywhere; }
}
@media(max-width:47.99rem) {
  .md-testimonials__people { flex-wrap:wrap; overflow:visible; }
  .site-page :is(.page-button,.marcoplay-invitation .page-button) { white-space:normal; text-align:center; }
}
@media(max-width:24rem) {
  .site-header { padding-inline:.75rem; column-gap:.5rem; }
  .site-header .brand { gap:.4rem; font-size:.9rem; }
  .site-header .brand img { width:2.4rem; height:2.4rem; }
  .site-header .menu-toggle { padding:.5rem; }
  .site-header .menu-toggle > span:first-child { display:none; }
  .marcoplay-race-facts li { flex-wrap:wrap; align-content:start; }
}
@media(max-height:32rem) {
  .analytics-consent { max-height:55svh; max-height:55dvh; }
  .site-header { top:.4rem; }
  .site-header .site-nav { max-height:calc(100svh - 6rem); max-height:calc(100dvh - 6rem); }
}
/* Text enlargement must reflow within the available column, including the footer. */
.site-header .site-nav > a,.site-header .site-nav > .nav-websites > summary { min-width:0; white-space:normal; overflow-wrap:anywhere; }
body.site-page .site-footer,body.site-page .site-footer :is(.footer-primary,.footer-brand-contact,.footer-navigation,.footer-navigation-column,.footer-legal) { min-width:0; max-width:100%; }
body.site-page .site-footer .footer-brand { min-width:0; max-width:100%; white-space:normal; }
body.site-page .site-footer .footer-brand span { min-width:0; overflow-wrap:anywhere; }
body.site-page .site-footer .footer-navigation a { max-width:100%; white-space:normal; overflow-wrap:anywhere; }
@media(max-width:30rem) {
  body.site-page .site-footer .footer-navigation { grid-template-columns:minmax(0,1fr); text-align:center; }
  body.site-page .site-footer .footer-navigation-column { align-items:center; }
  body.site-page .site-footer .footer-brand { flex-wrap:wrap; justify-content:center; }
  .site-page main :is(h1,h2,h3) { overflow-wrap:anywhere; }
}
body.site-page .site-footer.site-footer--shared .footer-navigation a[href],body.site-page .site-footer.site-footer--shared .footer-legal > * { min-width:0; max-width:100%; white-space:normal; overflow-wrap:anywhere; }
.site-header.is-compact { grid-template-columns:minmax(0,1fr) auto; }
.site-header.is-compact .menu-toggle { display:inline-flex; }
.js .site-header.is-compact .site-nav { display:none; }
.js .site-header.is-compact .site-nav.is-open { display:grid; grid-template-columns:minmax(0,1fr); gap:.25rem; }
.site-header.is-compact .site-nav { grid-column:1 / -1; width:100%; max-height:calc(100dvh - 7rem); overflow-y:auto; padding:.5rem 0 .75rem; }
.site-header.is-compact .site-nav > a,.site-header.is-compact .site-nav > .nav-websites > summary { justify-content:flex-start; text-align:left; padding-inline:.75rem; }
.site-header.is-compact .site-nav .nav-contact { justify-content:center; white-space:normal; }
.site-header.is-compact .site-nav .nav-websites .nav-service-links { position:static; width:auto; max-width:100%; }
.site-header.is-compact .site-nav :is(a,summary) { color:#3a5a40 !important; }
body.menu-open .site-header.is-compact { border-radius:1.5rem; background:#eceeee; }
@media(max-width:24rem) {
  .site-header .brand { gap:8px; }
  .site-header .brand img { width:38px; height:38px; }
  .site-header .brand span { overflow-wrap:normal; }
  .site-header .menu-toggle { padding:8px; }
  .site-header .menu-icon { width:24px; }
  .marcoplay-race-facts { grid-template-columns:minmax(0,1fr); }
}
.site-page.page-audit main :is(h1,h2,h3,p,li,a,button),.site-page.page-audit .audit-credit__inner > * { min-width:0; overflow-wrap:anywhere; }
.site-page.page-audit .audit-button { min-width:0; max-width:100%; flex-wrap:wrap; }
@media(max-width:30rem) {
  .site-page.page-audit :is(.audit-hero__price,.audit-intake__status,.audit-credit__statement) { padding:1rem; }
  .analytics-consent__button { max-width:100%; overflow-wrap:anywhere; }
}
