/*
 * Van Hameren Hout - 219.6.15
 * Mobiele header: winkelwagen/account/favorieten altijd volledig binnen viewport.
 * Gericht op smalle iPhone/Android schermen; desktop blijft ongewijzigd.
 */

@media (max-width: 760px) {
  .vh-site-header,
  .vh-header-main {
    box-sizing: border-box !important;
    max-width: 100% !important;
  }

  .vh-header-main {
    width: 100% !important;
    min-width: 0 !important;
    grid-template-columns: 36px minmax(0, 1fr) auto !important;
    column-gap: 7px !important;
    padding-left: max(10px, env(safe-area-inset-left)) !important;
    padding-right: max(12px, env(safe-area-inset-right)) !important;
    overflow: visible !important;
  }

  .vh-mobile-menu-trigger {
    width: 36px !important;
    min-width: 36px !important;
    max-width: 36px !important;
    margin: 0 !important;
  }

  .vh-brand {
    min-width: 0 !important;
    width: auto !important;
    max-width: min(40vw, 150px) !important;
    justify-self: start !important;
    overflow: hidden !important;
  }

  .vh-brand img {
    display: block !important;
    width: 100% !important;
    max-width: 150px !important;
    height: auto !important;
    object-fit: contain !important;
  }

  .vh-mobile-header-actions {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    justify-self: end !important;
    gap: 4px !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: 140px !important;
    margin: 0 !important;
    padding: 0 1px 0 0 !important;
    box-sizing: border-box !important;
    overflow: visible !important;
  }

  .vh-mobile-header-actions > a {
    flex: 0 0 42px !important;
    width: 42px !important;
    min-width: 42px !important;
    max-width: 42px !important;
    height: 42px !important;
    margin: 0 !important;
    padding: 0 !important;
    box-sizing: border-box !important;
    position: relative !important;
    overflow: visible !important;
  }

  .vh-mobile-header-actions .vh-ui-icon {
    width: 24px !important;
    height: 24px !important;
  }

  /* Badge blijft binnen de knop en dus binnen de viewport. */
  .vh-mobile-header-actions > a em,
  .vh-mobile-cart-action em[data-cart-count] {
    right: 0 !important;
    max-width: 22px !important;
  }
}

@media (max-width: 380px) {
  .vh-header-main {
    grid-template-columns: 34px minmax(0, 1fr) auto !important;
    column-gap: 5px !important;
    padding-left: max(8px, env(safe-area-inset-left)) !important;
    padding-right: max(10px, env(safe-area-inset-right)) !important;
  }

  .vh-mobile-menu-trigger {
    width: 34px !important;
    min-width: 34px !important;
    max-width: 34px !important;
  }

  .vh-brand {
    max-width: min(36vw, 132px) !important;
  }

  .vh-brand img {
    max-width: 132px !important;
  }

  .vh-mobile-header-actions {
    gap: 3px !important;
    max-width: 126px !important;
  }

  .vh-mobile-header-actions > a {
    flex-basis: 40px !important;
    width: 40px !important;
    min-width: 40px !important;
    max-width: 40px !important;
    height: 40px !important;
  }
}
