/* Mobile touch targets; preserve desktop typography and the approved palette. */
@media (max-width: 700px) {
  .site-header .header-inner {
    gap: 12px !important;
  }
  .site-header .header-inner > .brand {
    flex: 1 1 0 !important;
    min-width: 0 !important;
  }
  .site-header .brand-subtitle {
    white-space: normal !important;
    font-size: 12.5px !important;
    line-height: 1.35 !important;
  }
  .site-header .menu-toggle {
    flex: 0 0 44px !important;
    width: 44px !important;
    min-width: 44px !important;
    height: 44px !important;
  }
  .jy-menu-close,
  .consultation-modal .contact-close,
  .jy-success-close,
  .cp-success > button[aria-label],
  .wm-lightbox > button {
    width: 44px !important;
    height: 44px !important;
    min-width: 44px;
    min-height: 44px;
    flex-shrink: 0;
  }
}

@media (max-width: 400px) {
  .site-header .brand-title {
    font-size: 20px !important;
  }
}

@media (max-width: 650px) {
  .wm-series .wm-mobile-actions {
    padding-bottom: max(10px, env(safe-area-inset-bottom));
  }
  .wm-series .wm-mobile-actions .wm-button {
    min-height: 46px;
    padding: 10px 8px;
    line-height: 1.35;
    white-space: nowrap;
  }
}
