/* Mobile overrides loaded after the legacy theme styles. */
@media (max-width: 991px) {
  .wrd-site-header .wrd-util-bar { height: auto; }
  .wrd-site-header .wrd-util-seo { display: flex; position: static; flex: 1 1 0%; min-width: 0; height: auto; }
  .wrd-site-header .wrd-util-seo h1.wrd-seo-text { white-space: normal; overflow-wrap: anywhere; height: auto !important; line-height: 1.3 !important; }
  .wrd-site-header .wrd-util-inner { min-height: 32px; height: auto; padding: 6px 0; }
  .wrd-site-header .wrd-util-right { margin-left: auto; flex: 0 0 auto; flex-wrap: nowrap; }
  .wrd-site-header .wrd-util-right > a { white-space: nowrap; }
  .wrd-site-header .wrd-util-right > a:not(:first-child) { display: none; }
  .wrd-site-header .wrd-main-header__inner { gap: 12px; }
  .wrd-site-header .wrd-header-search { min-width: 0; width: 100%; flex: 1 1 100%; }
  .wrd-header-search #search,
  .wrd-header-search #search .search_toggle,
  .wrd-header-search #search #searchbox { width: 100%; min-width: 0; max-width: 100%; margin: 0; float: none; }
  .wrd-header-search #search #searchbox { display: flex; align-items: stretch; }
  .wrd-header-search #search input { width: 0; min-width: 0; flex: 1 1 0%; font-size: 16px; }
  .wrd-header-search #search .input-group-btn { width: auto; flex: 0 0 auto; position: static; display: flex; height: 44px; align-items: stretch; }
  .wrd-header-search #search .btn-lg { position: static; margin: 0; top: auto; height: 44px; width: auto; min-width: 44px; padding: 0 12px; }
  .wrd-primary-nav a.toggle-menu { position: static; width: auto; height: auto; min-height: 44px; margin: 0; padding: 10px 16px; background: #0f3066; color: #fff; font-size: 14px; line-height: 24px; border: 0; border-radius: 0; }
  .wrd-primary-nav a.toggle-menu .fa { font-size: 18px; }
  .wrd-primary-nav .exo-menu { width: 100%; min-width: 0; }
  .wrd-primary-nav .exo-menu > li > a { white-space: normal; }
  .wrd-site-header .wrd-account-dropdown.dropdown.myaccount { margin: 0; padding: 0; z-index: 20; }
  .wrd-site-header .wrd-account-dropdown .myaccount-menu { top: 100%; right: 0; margin-top: 4px; }
  .wrd-site-header .wrd-account-dropdown.dropdown.myaccount > a { border: 0; box-shadow: none; background: transparent; min-height: 44px; padding: 0 8px; }
  .wrd-site-header .wrd-account-dropdown.dropdown.myaccount > a .fa-user { display: inline-block; font-size: 22px; background: none; color: #0f3066; }
  .wrd-site-header .wrd-mini-cart #cart > .btn { min-width: 44px; min-height: 44px; justify-content: center; }
  .wrd-mini-cart #cart .dropdown-menu { width: min(360px, calc(100vw - 30px)); min-width: 0; right: 0; left: auto; }
  .wrd-mini-cart #cart .dropdown-menu td { white-space: normal; overflow-wrap: anywhere; }
  .wrd-mini-cart #cart .dropdown-menu .img-thumbnail { max-width: 44px; }
}
@media (max-width: 767px) {
  .wrd-site-header .wrd-header-logo { min-width: 0; flex: 1 1 0%; }
  .wrd-site-header .wrd-logo-wordmark { display: flex; flex-direction: column; align-items: flex-start; gap: 3px; }
  .wrd-site-header .wrd-logo-primary,
  .wrd-site-header .wrd-logo-secondary { font-size: clamp(18px, 4.8vw, 26px); }
  .wrd-site-header .wrd-header-actions { gap: 2px; margin: 0; }
  .wrd-site-header .wrd-account-dropdown.dropdown.myaccount > a span,
  .wrd-site-header .wrd-account-dropdown.dropdown.myaccount > a .fa-angle-down { display: none; }
  .wrd-site-header .wrd-account-dropdown.dropdown.myaccount > a { min-width: 44px; justify-content: center; }
  .wrd-site-header .wrd-account-dropdown.dropdown.myaccount > a .fa-user { font-size: 22px; }
  #checkout-cart #content > form > .table-responsive { overflow: visible; border: 0; }
  #checkout-cart .shopping-cart { display: block; width: 100%; border: 0; }
  #checkout-cart .shopping-cart thead { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
  #checkout-cart .shopping-cart tbody { display: block; width: 100%; }
  #checkout-cart .shopping-cart tbody > tr { display: grid; grid-template-columns: 64px minmax(0, 1fr); gap: 0 12px; margin-bottom: 16px; padding: 12px; border: 1px solid #d8dee7; border-radius: 6px; background: #fff; }
  #checkout-cart .shopping-cart tbody > tr > td { display: block; min-width: 0; padding: 10px 0; border: 0; white-space: normal; overflow-wrap: anywhere; }
  #checkout-cart .shopping-cart tbody > tr > td:first-child img { max-width: 64px; height: auto; }
  #checkout-cart .shopping-cart tbody > tr > td:nth-child(n+3) { grid-column: 1 / -1; display: flex; align-items: center; justify-content: space-between; gap: 12px; border-top: 1px solid #edf1f6; text-align: right; }
  #checkout-cart .shopping-cart tbody > tr > td:nth-child(n+3)::before { content: attr(data-label); flex: 0 0 auto; font-weight: 600; color: #243348; text-align: left; }
  #checkout-cart .shopping-cart .input-group { display: flex; width: 152px; max-width: 100%; }
  #checkout-cart .shopping-cart .input-group .form-control { width: 0; min-width: 40px; flex: 1 1 0%; height: 44px; font-size: 16px; }
  #checkout-cart .shopping-cart .input-group-btn { display: flex; width: auto; flex: 0 0 auto; }
  #checkout-cart .shopping-cart .input-group-btn > .btn { min-width: 44px; height: 44px; padding: 8px; margin: 0; }
  #checkout-cart .buttons > div { float: none; flex: 1 1 100%; }
  #checkout-cart .buttons .btn { width: 100%; min-height: 44px; white-space: normal; }
  #checkout-cart .buttons { display: flex; flex-wrap: wrap; gap: 12px; justify-content: space-between; }
}

/* Keep preview sizing in the site theme, independent of Configurator OCMOD upgrades. */
@media (max-width: 980px) {
  .ic-wrap .ic-preview { display: flex; flex-wrap: nowrap; width: 100%; }
  .ic-wrap .ic-preview .ic-img { flex: 1 1 0%; min-width: 0; width: 33.3333%; height: clamp(80px, 24vw, 180px); }
}

@media (max-width: 767px) {
  .wrd-subfooter .row { flex-direction: column; align-items: center; }
  .wrd-subfooter .wrd-subfooter__column { float: none; flex: 0 0 auto; width: 100%; text-align: center; margin-bottom: 28px; }
  .wrd-subfooter .wrd-subfooter__column:last-child { margin-bottom: 0; }
  .wrd-subfooter h5, .wrd-subfooter h6, .wrd-subfooter ul { text-align: center; }
  .wrd-subfooter .wrd-subfooter__address, .wrd-subfooter .wrd-subfooter__payments li { justify-content: center; }
}
