/* Shared account layout; never change access rules or hide validation errors. */
.woocommerce-account #primary { margin-top: 2.5rem; margin-bottom: 3rem; }
.woocommerce-account .woocommerce:has(> .woocommerce-MyAccount-navigation) {
  display: grid; grid-template-columns: minmax(200px, 240px) minmax(0, 1fr); gap: 2rem; align-items: start; padding: 1.25rem;
}
.woocommerce-account .woocommerce > .woocommerce-MyAccount-navigation,
.woocommerce-account .woocommerce > .woocommerce-MyAccount-content { float: none; width: auto; min-width: 0; }
.woocommerce-account .woocommerce::before,
.woocommerce-account .woocommerce::after { content: none; }
.woocommerce-account .woocommerce > .woocommerce-notices-wrapper { grid-column: 1 / -1; }
.woocommerce-account .woocommerce > .woocommerce-notices-wrapper:empty { display: none; }
.woocommerce-account .woocommerce-MyAccount-content h2 { margin-top: 0; }
.woocommerce-account .woocommerce-MyAccount-navigation a { overflow-wrap: anywhere; }
.woocommerce-account .woocommerce-MyAccount-content table { width: 100%; }
.woocommerce-account .woocommerce form.login { max-width: 540px; }
.smotrite-account-cards { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; margin: 1.5rem 0; }
.smotrite-account-cards a { padding: 1.25rem; border: 1px solid #d8d0c5; border-radius: 8px; background: #fff; color: #167b66; overflow-wrap: anywhere; }
.smotrite-account-cards a:hover, .smotrite-account-cards a:focus-visible { border-color: #167b66; text-decoration: underline; }
@media (max-width: 767px) {
  .woocommerce-account .woocommerce:has(> .woocommerce-MyAccount-navigation) { grid-template-columns: minmax(0, 1fr); gap: 1.25rem; }
  .smotrite-account-cards { grid-template-columns: minmax(0, 1fr); }
  .woocommerce-account #primary { margin-top: 1.5rem; }
}
/* The header container is capped at 1240px even on wide screens. Keep the
   complete member menu compact at every desktop width, not just laptops. */
/* Astra's JS uses the available width excluding the scrollbar. Follow its
   active mode at the boundary so both header variants cannot appear. */
body.ast-header-break-point #ast-desktop-header { display: none; }
body.ast-header-break-point #ast-mobile-header { display: block; }
body.ast-desktop #ast-mobile-header { display: none; }
body.ast-desktop #ast-desktop-header { display: block; }
@media (min-width: 1201px) {
  #ast-desktop-header .site-title a { font-size: 1.7rem; }
  #ast-desktop-header .site-description { font-size: .88rem !important; }
  #ast-desktop-header .main-header-menu .menu-item > a { padding-inline: .5rem !important; }
  #ast-desktop-header .site-branding { flex-shrink: 0; }
  #ast-desktop-header .main-header-menu { flex-wrap: nowrap; }
}
@media (max-width: 1200px) {
  #ast-desktop-header { display: none; }
  #ast-mobile-header { display: block; }
  #ast-mobile-header .site-branding { flex: 1 1 auto; min-width: 0; }
  #ast-mobile-header .site-header-primary-section-left,
  #ast-mobile-header .ast-site-title-wrap { min-width: 0; }
  #ast-mobile-header .site-logo-img { flex-shrink: 0; }
  #ast-mobile-header .site-title, #ast-mobile-header .site-description { word-break: normal; overflow-wrap: normal; }
}
