/* CUB Phase 4 final responsive and regression-safety layer. */

html,
body.theme2-storefront {
    max-width: 100%;
    overflow-x: clip;
}

.theme2-storefront img,
.theme2-storefront video,
.theme2-storefront iframe {
    max-width: 100%;
}

.theme2-storefront .row > *,
.theme2-storefront .stx-mainbar__inner,
.theme2-storefront .footer-eight-top-info-con,
.theme2-storefront .footer-two__widget-content {
    min-width: 0;
}

.theme2-storefront .footer-eight-top-info-con a,
.theme2-storefront .footer-two__widget-content a,
.theme2-storefront .footer-two__widget-content p {
    overflow-wrap: anywhere;
}

.theme2-storefront .common-banner {
    overflow: hidden;
    margin-top: 0 !important;
}

/* Product pages previously inherited a 65–150px top margin from the original
   theme. Keep the 1920x350 banner ratio while removing that empty strip. */
.theme2-storefront .common-banner--product-detail {
    width: 100%;
    height: clamp(160px, 18.23vw, 350px) !important;
    min-height: 0 !important;
    margin-block: 0 !important;
    padding-block: 0 !important;
}

.theme2-storefront .common-banner--product-detail .banner-bg,
.theme2-storefront .common-banner--product-detail .banner-bg img,
.theme2-storefront .common-banner--product-detail .banner-bg picture {
    width: 100%;
    height: 100%;
}

.theme2-storefront .common-banner--product-detail .banner-bg img {
    object-fit: cover !important;
    object-position: center center !important;
}

.theme2-storefront .common-banner__content {
    position: relative;
    z-index: 2;
    padding-inline: 16px;
}

.theme2-storefront .common-banner__content .title-animation {
    overflow-wrap: anywhere;
}

.theme2-storefront .cub-product-video-frame,
.theme2-storefront .cub-product-video-frame iframe,
.theme2-storefront .cub-product-video-frame video {
    width: 100%;
    aspect-ratio: 16 / 9;
}

.theme2-storefront .cub-product-video-frame iframe,
.theme2-storefront .cub-product-video-frame video {
    display: block;
    height: 100%;
    border: 0;
    object-fit: contain;
}

.theme2-storefront .table-responsive,
.theme2-storefront .phase3-product-tabs table {
    -webkit-overflow-scrolling: touch;
}

@media (max-width: 991.98px) {
    .theme2-storefront .stx-mainbar__inner {
        display: grid;
        grid-template-columns: auto minmax(72px, auto) 1fr auto;
        gap: 10px;
        align-items: center;
    }

    .theme2-storefront .stx-mobile-menu-btn {
        grid-column: 1;
    }

    .theme2-storefront .stx-logo {
        grid-column: 2;
    }

    .theme2-storefront .stx-search {
        grid-column: 3;
        width: 100%;
        min-width: 0;
    }

    .theme2-storefront .stx-mobile-actions {
        grid-column: 4;
        white-space: nowrap;
    }

    .theme2-storefront .footer-eight-top-info {
        height: 100%;
    }
}

@media (max-width: 767.98px) {
    .theme2-storefront .stx-mainbar__inner {
        grid-template-columns: auto minmax(68px, 1fr) auto;
        row-gap: 9px;
    }

    .theme2-storefront .stx-mobile-menu-btn {
        grid-column: 1;
        grid-row: 1;
    }

    .theme2-storefront .stx-logo {
        grid-column: 2;
        grid-row: 1;
        justify-self: start;
    }

    .theme2-storefront .stx-mobile-actions {
        grid-column: 3;
        grid-row: 1;
    }

    .theme2-storefront .stx-search {
        grid-column: 1 / -1;
        grid-row: 2;
    }

    .theme2-storefront .stx-search__box,
    .theme2-storefront .stx-search__box input {
        width: 100%;
        min-width: 0;
    }

    .theme2-storefront .common-banner--large,
    .theme2-storefront .common-banner--standard,
    .theme2-storefront .common-banner--legal {
        min-height: 180px !important;
        height: clamp(180px, 34vw, 230px) !important;
    }

    .theme2-storefront .common-banner--product-detail {
        height: clamp(160px, 34vw, 230px) !important;
    }

    .theme2-storefront .common-banner__content .title-animation {
        font-size: clamp(24px, 7vw, 36px) !important;
        line-height: 1.18 !important;
    }

    .theme2-storefront .cub-newsletter-form {
        width: 100%;
    }

    .theme2-storefront .footer-eight-top-info-con a {
        font-size: 13px;
    }

    .theme2-storefront .phase3-product-tabs .product-tab__btn-wrap {
        overflow-x: auto;
        flex-wrap: nowrap !important;
        scrollbar-width: thin;
    }

    .theme2-storefront .phase3-product-tabs .product-tab__btn {
        flex: 0 0 auto;
        white-space: nowrap;
    }
}

@media (max-width: 575.98px) {
    .theme2-storefront .stx-header-container {
        padding-inline: 10px !important;
    }

    .theme2-storefront .stx-mainbar__inner {
        gap: 7px;
    }

    .theme2-storefront .stx-mobile-actions {
        gap: 5px;
    }

    .theme2-storefront .stx-mobile-action,
    .theme2-storefront .stx-mobile-menu-btn {
        flex: 0 0 40px;
        width: 40px;
        height: 40px;
    }

    .theme2-storefront .cub-newsletter-form {
        display: flex;
        align-items: stretch;
        gap: 8px;
    }

    .theme2-storefront .cub-newsletter-form > input {
        flex: 1 1 auto;
        width: 1%;
        min-width: 0;
    }

    .theme2-storefront .cub-newsletter-form .subscribe-six-button,
    .theme2-storefront .cub-newsletter-form button {
        flex: 0 0 auto;
    }

    .theme2-storefront .footer-eight-top .col-6 {
        width: 100%;
    }

    .theme2-storefront .footer-eight-top-info {
        justify-content: flex-start !important;
        text-align: left;
    }

    .theme2-storefront .product-details-slider-single,
    .theme2-storefront .phase3-product-details .product-details-slider-single {
        height: clamp(260px, 88vw, 340px) !important;
    }
}

@media (max-width: 374.98px) {
    .theme2-storefront .stx-mobile-action {
        flex-basis: 36px;
        width: 36px;
        height: 36px;
    }

    .theme2-storefront .cub-newsletter-form {
        display: grid;
        grid-template-columns: 1fr;
    }

    .theme2-storefront .cub-newsletter-form > input,
    .theme2-storefront .cub-newsletter-form button {
        width: 100%;
    }

    .theme2-storefront .cub-newsletter-form .subscribe-six-button {
        width: 100%;
    }
}

@media (prefers-reduced-motion: reduce) {
    .theme2-storefront *,
    .theme2-storefront *::before,
    .theme2-storefront *::after {
        scroll-behavior: auto !important;
        animation-duration: .01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: .01ms !important;
    }
}
