/**
 * Mobile storefront logo sizing (all themes).
 * Loaded after per-theme responsive.css so it wins over legacy 42px caps.
 */
@media (max-width: 1199.98px) {
  :root {
    --storefront-mobile-logo-height: clamp(44px, 11vw, 56px);
    --storefront-mobile-logo-max-width: min(220px, 58vw);
    --storefront-mobile-navbar-min-height: 64px;
  }

  .mobile-navbar .container {
    padding-inline: max(12px, env(safe-area-inset-left, 0px)) max(12px, env(safe-area-inset-right, 0px));
  }

  .mobile-navbar .mobile-navbar-inner {
    min-height: var(--storefront-mobile-navbar-min-height);
    height: auto;
    padding-block: 8px;
    gap: 12px;
  }

  .mobile-navbar-inner .logo,
  .mobile-navbar .logo {
    display: inline-flex;
    align-items: center;
    flex: 1 1 auto;
    min-width: 0;
    width: auto;
    max-width: var(--storefront-mobile-logo-max-width);
    margin: 0;
    padding: 0;
    line-height: 0;
  }

  .mobile-navbar-inner .logo img,
  .mobile-navbar .logo img {
    display: block;
    width: auto;
    height: auto;
    max-width: 100%;
    max-height: var(--storefront-mobile-logo-height);
    object-fit: contain;
    object-position: left center;
  }

  /* Keep default block layout for the three spans; only reserve space beside the logo. */
  .mobile-navbar .mobile-menu-toggler {
    flex: 0 0 auto;
    margin-inline-start: 8px;
    align-self: center;
  }

  .mobile-menu-top {
    padding: 16px 20px;
    gap: 12px;
    min-height: var(--storefront-mobile-navbar-min-height);
  }

  .mobile-menu-top .logo {
    display: flex;
    align-items: center;
    flex: 1 1 auto;
    min-width: 0;
    width: auto;
    max-width: var(--storefront-mobile-logo-max-width);
    margin: 0;
    padding: 0;
    text-transform: none;
    font-weight: inherit;
    font-size: inherit;
    border: 0;
    cursor: default;
  }

  .mobile-menu-top .logo > a.logo {
    display: inline-flex;
    align-items: center;
    min-width: 0;
    max-width: 100%;
    line-height: 0;
  }

  .mobile-menu-top .logo img {
    display: block;
    width: auto;
    height: auto;
    max-width: 100%;
    max-height: var(--storefront-mobile-logo-height);
    object-fit: contain;
    object-position: left center;
  }

  .mobile-menu-top .mobile-menu-close {
    flex: 0 0 auto;
    margin-inline-start: auto;
  }

  html[dir='rtl'] .mobile-navbar-inner .logo img,
  html[dir='rtl'] .mobile-navbar .logo img,
  html[dir='rtl'] .mobile-menu-top .logo img {
    object-position: right center;
  }
}

@media (max-width: 575.98px) {
  :root {
    --storefront-mobile-logo-height: clamp(40px, 12vw, 52px);
    --storefront-mobile-logo-max-width: min(200px, 62vw);
  }
}
