/* Existing mobile header and drawer; preserve open/close and nested navigation. */
html body .ui_kit_mobile_header {
  background-color: var(--cheers-component-background) !important;
  color: var(--cheers-component-heading);
  border-bottom: 1px solid var(--cheers-component-border);
  box-shadow: var(--parks-template-shadow);
}
html body .ui_kit_mobile_header .navbar-toggler {
  min-width: 48px;
  min-height: 48px;
  border-radius: 10px;
  color: var(--cheers-component-heading);
}
html body .ui_kit_mobile_header .phone-icon {
  background-color: var(--cheers-component-accent);
  box-shadow: var(--parks-template-button-shadow);
}
html body .bc_nav_container_mobile,
html body .bc_nav_container_mobile :is(.navbar-collapse,.nav-header,.nav-header-level-3,.dropdown-menu,.level-3-background) {
  background-color: var(--site-header-background) !important;
  color: var(--site-header-text) !important;
}
html body .bc_nav_container_mobile :is(.nav-link,.dropdown-item) {
  min-height: 48px;
  color: var(--site-header-text) !important;
  border-color: var(--parks-template-light-border) !important;
  font-size: 18px !important;
  line-height: 1.4 !important;
  font-weight: 600;
  text-transform: none;
}
html body .bc_nav_container_mobile :is(.nav-link,.dropdown-item):hover {
  background-color: var(--parks-template-glass) !important;
}
html body :is(.ui_kit_mobile_header,.bc_nav_container_mobile) :is(a,button):focus-visible {
  outline: 3px solid var(--cheers-component-focus);
  outline-offset: 3px;
}

/* The branded 404 does not load the compact header rules in site-revisions.css.
   Give its existing columns the same single-row geometry without touching
   the working headers, navigation markup or sticky behavior elsewhere. */
@media (max-width: 991.98px) {
  html body.error404 .ui_kit_mobile_header.mobile_header_type_A {
    padding-inline: 12px !important;
  }
  html body.error404 .ui_kit_mobile_header.mobile_header_type_A > .container-fluid > .row {
    min-height: 76px !important;
    flex-wrap: nowrap;
    margin-inline: 0 !important;
  }
  html body.error404 .ui_kit_mobile_header.mobile_header_type_A > .container-fluid > .row > div:first-child,
  html body.error404 .ui_kit_mobile_header.mobile_header_type_A > .container-fluid > .row > div:last-child {
    flex: 0 0 52px;
    width: 52px;
    max-width: 52px;
    padding-inline: 0 !important;
  }
  html body.error404 .ui_kit_mobile_header.mobile_header_type_A > .container-fluid > .row > div:nth-child(2) {
    flex: 1 1 auto;
    min-width: 0;
    width: auto;
    max-width: none;
    margin: 0 !important;
    padding: 8px 4px !important;
  }
  html body.error404 .ui_kit_mobile_header.mobile_header_type_A .navbar-toggler {
    display: inline-flex;
    width: 48px;
    height: 48px;
    align-items: center;
    justify-content: center;
    margin: 0 !important;
    padding: 0 !important;
  }
  html body.error404 .ui_kit_mobile_header.mobile_header_type_A .phone-icon {
    width: 48px !important;
    height: 48px !important;
    margin: 0 auto !important;
    padding-top: 0 !important;
  }
  html body.error404 .ui_kit_mobile_header.mobile_header_type_A .phone-icon > a {
    display: flex;
    width: 100%;
    height: 100% !important;
    align-items: center;
    justify-content: center;
    margin: 0 !important;
  }
}
