/* Tablet */

@media (max-width: 1080px) {
    .store-site-header {
        --store-header-row-height: 64px;
        --store-header-control-size: 38px;
        --store-header-search-height: 38px;
        --store-header-menu-link-height: 44px;
        --store-header-brand-width: clamp(128px, 22vw, 180px);
        --store-header-brand-gap: var(--store-space-4);
    }

    body.store-page-active #content>.ast-container {
        width: min(100%, calc(100vw - 24px));
        max-width: min(100%, calc(100vw - 24px));
        padding-left: var(--store-space-4);
        padding-right: var(--store-space-4);
    }

    .store-site-header__inner {
        width: min(100%, calc(100vw - 24px));
        max-width: min(100%, calc(100vw - 24px));
        padding: var(--store-space-2) var(--store-space-4);
    }

    .store-site-header__row {
        grid-template-columns: auto var(--store-header-brand-width) minmax(0, 1fr) auto auto;
        gap: var(--store-space-4);
    }

    .store-site-header__tools {
        display: contents;
    }

    .store-site-header__toggle--menu {
        grid-column: 1;
        grid-row: 1;
        justify-self: start;
    }

    .store-site-header__brand {
        grid-column: 2;
        grid-row: 1;
    }

    .store-site-header__toggle--search {
        grid-column: 4;
        grid-row: 1;
        justify-self: end;
    }

    .store-site-header__cart {
        grid-column: 5;
        grid-row: 1;
        justify-self: end;
    }

    .store-site-header__search--desktop {
        display: none;
    }

    .store-site-header__menu-panel {
        display: none;
        grid-column: 1 / -1;
        grid-row: 2;
        width: 100%;
        justify-content: stretch;
        margin-top: var(--store-space-4);
        padding: 0;
        border: 0;
        border-radius: 0;
        background: transparent;
        box-shadow: none;
    }

    .store-site-header.is-menu-open .store-site-header__menu-panel {
        display: block;
    }

    .store-site-header__nav {
        width: 100%;
    }

    .store-site-header__search-panel {
        display: none;
        padding-top: var(--store-space-4);
    }

    .store-site-header.is-search-open .store-site-header__search-panel {
        display: block;
    }

    .store-site-header__toggle {
        display: inline-flex;
    }

    .store-site-header__toggle--menu,
    .store-site-header__toggle--search {
        display: inline-flex !important;
        color: var(--store-color-primary) !important;
        opacity: 1 !important;
        visibility: visible !important;
    }

    .store-site-header__toggle,
    .store-site-header__cart .store-side-cart-trigger {
        width: var(--store-header-control-size);
        min-width: var(--store-header-control-size);
        height: var(--store-header-control-size);
    }

    .store-site-header__menu {
        flex-direction: column;
        align-items: stretch;
        gap: var(--store-space-2);
    }

    .store-site-header__menu>li {
        width: 100%;
    }

    .store-site-header__menu a {
        display: flex;
        justify-content: flex-start;
        width: 100%;
        min-height: var(--store-header-menu-link-height);
        padding: 0 var(--store-space-6);
        border: 0;
        border-radius: 0;
        background: transparent;
        box-shadow: none;
        touch-action: manipulation;
        -webkit-tap-highlight-color: transparent;
    }

    .store-site-header__menu a:hover,
    .store-site-header__menu a:focus-visible {
        background: transparent;
        box-shadow: none;
        transform: none;
    }

    .store-site-header__menu .current-menu-item>a,
    .store-site-header__menu .current-menu-parent>a,
    .store-site-header__menu .current_page_item>a,
    .store-site-header__menu .current_page_parent>a {
        color: var(--store-color-primary);
        background: transparent;
        box-shadow: none;
    }

    .store-site-header__menu > li.menu-item-feedback > a.store-site-header__feedback-link {
        justify-content: flex-start;
        width: 100%;
        min-height: 44px;
        padding: 0 16px;
        transform: none;
    }

    .store-site-header__menu > li.menu-item-feedback > a.store-site-header__feedback-link:hover,
    .store-site-header__menu > li.menu-item-feedback > a.store-site-header__feedback-link:focus-visible {
        transform: none;
    }

    .store-site-header__menu li ul {
        position: static;
        top: auto;
        left: auto;
        display: none;
        min-width: 0;
        margin-top: 0;
        padding: 0 0 0 var(--store-space-5);
        border: 0;
        border-radius: 0;
        background: transparent;
        box-shadow: none;
        z-index: auto;
    }

    .store-site-header__menu li.menu-item-has-children.is-submenu-open>ul {
        display: flex;
        flex-direction: column;
        margin-top: var(--store-space-2);
        padding-top: var(--store-space-2);
    }

    .store-site-header__menu li.menu-item-has-children>a::after {
        display: inline-block;
        flex-shrink: 0;
        margin-left: var(--store-space-4);
        transform: rotate(45deg) translateY(-1px);
        transition: transform var(--store-transition-fast);
    }

    .store-site-header__menu li ul li.menu-item-has-children>a::after {
        transform: rotate(45deg) translateY(-1px);
    }

    .store-site-header__menu li.menu-item-has-children.is-submenu-open>a::after {
        transform: rotate(-135deg) translateY(-1px);
    }

    .store-site-header__menu>li.menu-item-has-children>ul::before,
    .store-site-header__menu li ul li.menu-item-has-children>ul::before {
        display: none;
    }

    .store-site-header__menu li ul li.menu-item-has-children>ul {
        position: static;
        top: auto;
        left: auto;
        margin-top: 0;
        padding-top: 0;
        padding-left: var(--store-space-4);
        min-width: 0;
    }

    .store-site-header__search-panel .store-global-search-form,
    .store-site-header__search-panel .store-global-search-live {
        width: 100%;
        max-width: none;
    }

    .store-site-header__search-panel .store-global-search-live-panel {
        position: static;
        top: auto;
        left: auto;
        width: 100%;
        min-width: 0;
        margin-top: var(--store-space-3);
    }

    .store-shell,
    .store-legacy-layout {
        grid-template-columns: 1fr !important;
    }

    .store-shell-catalog {
        grid-template-columns: 1fr !important;
        grid-template-rows: auto;
    }

    .store-shell-catalog .store-sidebar,
    .store-shell-catalog .store-toolbar,
    .store-shell-catalog .store-main {
        grid-column: 1;
        grid-row: auto;
    }

    .store-shell-catalog .store-toolbar {
        margin-bottom: var(--store-space-9);
    }

    .store-sidebar,
    .store-legacy-filters-column {
        position: fixed;
        top: 0;
        left: 0;
        bottom: 0;
        width: min(84vw, 320px);
        max-width: 320px;
        z-index: 45;
        padding: 0;
        margin: 0 !important;
        overflow: hidden;
        transform: translateX(-104%);
        transition: transform var(--store-transition-base);
    }

    .store-shell.is-filters-open .store-sidebar,
    .store-legacy-layout.is-legacy-filters-open .store-legacy-filters-column {
        transform: translateX(0);
    }

    .store-filters-backdrop {
        display: block;
        position: fixed;
        inset: 0;
        z-index: 40;
        opacity: 0;
        pointer-events: none;
        background: var(--store-color-backdrop);
        transition: opacity var(--store-transition-base);
    }

    .store-shell.is-filters-open .store-filters-backdrop,
    .store-legacy-filters-backdrop.is-open {
        opacity: 1;
        pointer-events: auto;
    }

    .store-sidebar-mobile-bar {
        display: flex;
        align-items: center;
        justify-content: space-between;
        padding: var(--store-space-7) var(--store-space-8) var(--store-space-5);
        background: var(--store-color-white);
        border-bottom: 1px solid var(--store-color-border-strong);
        border-radius: 0 var(--store-radius-toolbar) 0 0;
    }

    .store-filters-mobile-bar {
        display: flex;
        margin: -20px -20px 16px;
    }

    .store-sidebar-search {
        margin-bottom: var(--store-space-5);
    }

    .store-sidebar-mobile-title {
        font-weight: 700;
        color: var(--store-color-title);
    }

    .store-sidebar-close {
        border: 0;
        background: transparent;
        color: var(--store-color-primary);
        font-weight: 700;
        cursor: pointer;
    }

    .store-sidebar .store-filters-panel {
        height: calc(100vh - 61px);
        max-height: none;
        border-radius: 0 0 var(--store-radius-toolbar) 0;
        border-top: 0;
        padding-right: var(--store-space-7);
        overflow-y: auto;
        -webkit-overflow-scrolling: touch;
    }

    .store-legacy-filters-column #filters {
        height: 100%;
        max-height: none;
        overflow-y: auto;
        border-radius: 0 var(--store-radius-toolbar) var(--store-radius-toolbar) 0;
    }

    .store-legacy-filters-column #filters>h3 {
        display: none;
    }

    .store-legacy-toolbar {
        display: flex;
        justify-content: flex-end;
        margin-bottom: var(--store-space-6);
    }

    .store-toolbar {
        flex-wrap: wrap;
        padding: var(--store-space-6) var(--store-space-7);
    }

    .store-toolbar-left,
    .store-toolbar-right {
        width: 100%;
    }

    .store-toolbar-right {
        justify-content: flex-end;
        gap: var(--store-space-3);
    }

    .store-global-search-header {
        align-items: stretch;
    }

    .store-global-search-form {
        max-width: none;
    }

    .store-side-cart {
        width: min(420px, 100vw);
    }

    .store-filters-toggle {
        display: inline-flex;
        flex: 0 0 auto;
    }

    .store-sort-control {
        position: relative;
        display: block;
        flex: 0 0 auto;
        width: var(--store-mobile-control-size);
        height: var(--store-mobile-control-size);
        min-width: var(--store-mobile-control-size);
        padding: 0;
        border: 1px solid var(--store-color-primary-pale);
        border-radius: 14px;
        background: var(--store-color-white);
        box-shadow: var(--store-shadow-control);
    }

    .store-filters-toggle,
    .store-legacy-filters-toggle,
    .store-sidebar-close {
        position: relative;
        width: var(--store-mobile-control-size);
        min-width: var(--store-mobile-control-size);
        min-height: var(--store-mobile-control-size);
        padding: 0;
        border: 1px solid var(--store-color-primary-pale);
        border-radius: 14px;
        background: var(--store-color-white);
        color: transparent;
        font-size: 0;
        line-height: 0;
        box-shadow: var(--store-shadow-control);
    }

    .store-filters-toggle::before,
    .store-legacy-filters-toggle::before,
    .store-sort-control::before,
    .store-sidebar-close::before {
        content: "";
        position: absolute;
        top: 50%;
        left: 50%;
        width: var(--store-mobile-control-icon-size);
        height: var(--store-mobile-control-icon-size);
        background-color: var(--store-color-primary);
        transform: translate(-50%, -50%);
        pointer-events: none;
        -webkit-mask-position: center;
        -webkit-mask-repeat: no-repeat;
        -webkit-mask-size: contain;
        mask-position: center;
        mask-repeat: no-repeat;
        mask-size: contain;
    }

    .store-filters-toggle::before,
    .store-legacy-filters-toggle::before {
        -webkit-mask-image: var(--store-icon-mask-filter);
        mask-image: var(--store-icon-mask-filter);
    }

    .store-sort-control::before {
        -webkit-mask-image: var(--store-icon-mask-sort);
        mask-image: var(--store-icon-mask-sort);
    }

    .store-sidebar-close::before {
        -webkit-mask-image: var(--store-icon-mask-close);
        mask-image: var(--store-icon-mask-close);
    }

    .store-filters-toggle:hover,
    .store-legacy-filters-toggle:hover,
    .store-sidebar-close:hover,
    .store-sort-control:hover {
        background: var(--store-color-surface-soft);
    }

    .store-filters-toggle:focus-visible,
    .store-legacy-filters-toggle:focus-visible,
    .store-sidebar-close:focus-visible,
    .store-sort-control:focus-within {
        outline: none;
        border-color: var(--store-color-primary);
        box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.14);
    }

    .store-sort-label {
        position: absolute;
        width: 1px;
        height: 1px;
        padding: 0;
        margin: -1px;
        overflow: hidden;
        clip: rect(0, 0, 0, 0);
        white-space: nowrap;
        border: 0;
    }

    .store-sort-select-wrap {
        position: absolute;
        inset: 0;
        min-width: 0;
        width: 100%;
    }

    .store-sort-select-wrap::after {
        display: none;
    }

    .store-sort-select {
        position: absolute;
        inset: 0;
        width: 100%;
        height: 100%;
        min-width: 0;
        margin: 0;
        padding: 0;
        border: 0;
        opacity: 0;
        cursor: pointer;
    }

    .store-sort-select option {
        color: var(--store-color-text);
    }

    .store-products-grid,
    #products-grid {
        grid-template-columns: var(--store-grid-columns-tablet);
        gap: var(--store-space-7);
    }

    .product-card-button-primary,
    .product-card-button-secondary,
    .product-card-button-disabled {
        flex: 1 1 180px;
    }

    .product-card-out-of-stock-row .product-card-button-disabled {
        flex: 1 1 auto;
        width: auto;
    }

    .store-cart-page-summary-grid {
        grid-template-columns: 1fr;
    }
}

/* Compact tablet */

@media (max-width: 820px) {
    .product-card-quantity {
        display: none;
    }

    .product-card-actions {
        align-items: stretch;
    }

    .product-card-button-primary,
    .product-card-button-secondary,
    .product-card-button-disabled,
    .product-card-actions .added_to_cart {
        width: 100%;
    }

    .product-card-out-of-stock-row {
        flex-wrap: nowrap;
    }

    .product-card-out-of-stock-row .product-card-button-disabled {
        width: auto;
        flex: 1 1 auto;
    }
}

/* Phone */

@media (max-width: 640px) {
    .store-site-header {
        --store-header-row-height: 56px;
        --store-header-control-size: 36px;
        --store-header-search-height: 36px;
        --store-header-brand-width: clamp(100px, 30vw, 136px);
        --store-header-brand-gap: var(--store-space-3);
    }

    body.store-page-active #content>.ast-container {
        width: min(100%, calc(100vw - 16px));
        max-width: min(100%, calc(100vw - 16px));
        padding-left: var(--store-space-2);
        padding-right: var(--store-space-2);
    }

    .store-site-header__inner {
        width: min(100%, calc(100vw - 16px));
        max-width: min(100%, calc(100vw - 16px));
        padding: var(--store-space-1) var(--store-space-2);
    }

    .store-site-header__row {
        grid-template-columns: auto var(--store-header-brand-width) minmax(0, 1fr) auto auto;
        gap: var(--store-space-3);
    }

    .store-site-header__tools {
        display: contents;
    }

    .store-site-header__toggle--menu {
        grid-column: 1;
        grid-row: 1;
        justify-self: start;
    }

    .store-site-header__brand {
        grid-column: 2;
        grid-row: 1;
    }

    .store-site-header__toggle--search {
        grid-column: 4;
        grid-row: 1;
        justify-self: end;
    }

    .store-site-header__cart {
        grid-column: 5;
        grid-row: 1;
        justify-self: end;
    }

    .store-site-header__brand-link--has-mobile-logo .store-site-header__logo-image--desktop {
        display: none;
    }

    .store-site-header__brand-link--has-mobile-logo .store-site-header__logo-image--mobile {
        display: block;
    }

    .store-site-header__toggle--menu,
    .store-site-header__toggle--search {
        display: inline-flex !important;
        color: var(--store-color-primary) !important;
        opacity: 1 !important;
        visibility: visible !important;
    }

    .store-site-header__toggle,
    .store-site-header__cart .store-side-cart-trigger {
        width: var(--store-header-control-size);
        min-width: var(--store-header-control-size);
        height: var(--store-header-control-size);
    }

    .store-site-header__search-panel .store-global-search-form {
        flex-direction: column;
    }

    .store-site-header__search-panel .store-global-search-input,
    .store-site-header__search-panel .store-global-search-submit {
        width: 100%;
    }

    .store-toolbar {
        flex-direction: row;
        align-items: stretch;
        justify-content: space-between;
    }

    .store-toolbar-left,
    .store-toolbar-right {
        width: auto;
    }

    .store-toolbar-left {
        flex: 1 1 auto;
        min-width: 0;
        justify-content: flex-start;
    }

    .store-results-chip {
        min-height: var(--store-mobile-control-size);
        justify-content: center;
    }

    .store-toolbar-right {
        display: flex;
        flex: 0 0 auto;
        justify-content: flex-end;
        align-items: center;
        gap: var(--store-space-3);
    }

    .store-sort-control {
        width: var(--store-mobile-control-size);
    }

    .store-filters-toggle {
        width: var(--store-mobile-control-size);
    }

    .store-products-grid,
    #products-grid {
        grid-template-columns: var(--store-grid-columns-phone);
        gap: var(--store-space-5);
    }

    .store-pagination {
        gap: var(--store-space-2);
    }

    .store-pagination-pages {
        gap: var(--store-space-1);
    }

    .store-pagination-button,
    .store-pagination-ellipsis {
        min-width: 36px;
        min-height: 36px;
        padding: 0 var(--store-space-3);
        font-size: 0.82rem;
    }

    .store-global-search-form-results {
        flex-direction: column;
    }

    .store-global-search-form-results .store-global-search-submit,
    .store-global-search-form-results .store-global-search-input {
        width: 100%;
    }

    .store-global-search-live-panel {
        width: min(560px, calc(100vw - 16px));
    }

    .store-side-cart {
        width: 100vw;
    }

    .store-side-cart-item {
        grid-template-columns: 76px minmax(0, 1fr);
        gap: var(--store-space-4);
        padding: var(--store-space-6);
    }

    .store-side-cart-item-image-link {
        width: 76px;
        height: 76px;
    }

    .store-side-cart-actions {
        grid-template-columns: 1fr;
    }

    .store-cart-page-header {
        padding: var(--store-space-7) var(--store-space-6);
    }

    .store-cart-page-title {
        font-size: 1.12rem;
    }

    .store-cart-page-notices {
        padding: 0 var(--store-space-6);
    }

    .store-cart-page-summary-grid {
        padding: var(--store-space-6);
    }

    .store-cart-page-panel-coupon {
        padding: 16px;
        border-radius: 20px;
    }

    .store-cart-page-panel-coupon .store-checkout-coupon-box__row {
        grid-template-columns: 1fr;
    }

    .store-cart-page-actions {
        grid-template-columns: 1fr;
    }

    .store-cart-page .store-side-cart-item {
        grid-template-columns: 78px minmax(0, 1fr);
        padding: var(--store-space-6);
    }

    .store-cart-page .store-side-cart-item-image-link {
        width: 78px;
        height: 78px;
        border-radius: 16px;
    }

    .product-card-content {
        padding: var(--store-space-5);
        gap: var(--store-space-4);
    }

    .product-card-actions {
        flex-wrap: wrap;
    }

    .product-card-button,
    .product-card-actions .added_to_cart {
        width: 100%;
    }

.product-card-quantity-input {
        width: 100%;
        max-width: 72px;
    }
}

