﻿/* Shared storefront sizing for phones, tablets, and small desktop windows. */
.page-wrapper,
.page-wrapper > .main,
.page-wrapper .page-content,
.page-wrapper .row > [class*="col-"] {
    min-width: 0;
}

.page-wrapper img,
.page-wrapper video,
.page-wrapper iframe {
    max-width: 100%;
}

.page-wrapper h1,
.page-wrapper h2,
.page-wrapper h3,
.page-wrapper p,
.page-wrapper a {
    overflow-wrap: anywhere;
}

.page-wrapper .table-responsive {
    max-width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}

.header-search form,
.mobile-search { position: relative; }
.header-search .search-suggestions,
.mobile-search .search-suggestions { z-index: 1050 !important; width: 100%; font-size: 14px; line-height: 1.4; text-align: left; }
.header-search .search-suggestions a,
.mobile-search .search-suggestions a { overflow-wrap: anywhere; }
.header-search .search-suggestions a:hover,
.header-search .search-suggestions a:focus,
.mobile-search .search-suggestions a:hover,
.mobile-search .search-suggestions a:focus { background: var(--site-primary-soft); color: #c90b54 !important; }

@media (max-width: 991px) {
    .cart .table-cart .product-col .product {
        min-width: 0;
    }

    .cart .table-cart .product-title {
        min-width: 0;
    }
}

@media (max-width: 767px) {
    .page-wrapper .container,
    .page-wrapper .container-fluid {
        max-width: 100%;
    }

    .breadcrumb-nav .breadcrumb {
        flex-wrap: wrap;
    }

    .cart .table-cart,
    .cart .table-cart tbody,
    .cart .table-cart tr,
    .cart .table-cart td {
        max-width: 100%;
        min-width: 0;
    }

    .cart .table-cart .product-col .product {
        flex-wrap: wrap;
        justify-content: center;
        gap: 8px;
    }

    .cart .table-cart .product-title {
        flex: 1 1 130px;
    }

    .dashboard .nav-dashboard {
        margin-bottom: 22px !important;
    }

    .dashboard .tab-content,
    .dashboard .tab-pane {
        min-width: 0;
    }

    .modern-checkout .checkout-heading,
    .modern-checkout .checkout-panel-heading,
    .modern-checkout .checkout-item,
    .modern-checkout .checkout-totals > div {
        min-width: 0;
    }

    .modern-checkout .checkout-item-end,
    .modern-checkout .checkout-totals strong {
        white-space: normal;
        overflow-wrap: anywhere;
    }
}

@media (max-width: 380px) {
    .cart .table-mobile tr td {
        padding-left: 12px;
        padding-right: 12px;
    }

    .modern-checkout .checkout-item {
        flex-wrap: wrap;
    }

    .modern-checkout .checkout-item-end {
        flex: 1 0 100%;
        padding-left: 58px;
        text-align: left;
    }

    .modern-checkout .checkout-item-end a {
        display: inline-block;
    }
}
/* Shared order action on product cards and product details. */
.storefront-product-card .product-action { padding-left: 16px; padding-right: 16px; padding-bottom: 14px; overflow: visible; }
.storefront-product-card .storefront-order-button { width: 100%; min-height: 38px; border-radius: 10px; }
.storefront-order-button { font-weight: 800 !important; transform-origin: center; animation: storefront-order-pulse 1.8s ease-in-out infinite; }
.storefront-order-button span { font-weight: 800 !important; }
@keyframes storefront-order-pulse {
    0%, 100% { transform: scale(1); }
    50% { transform: scale(1.035); }
}
@media (max-width: 767px) {
    .storefront-product-card .product-action { padding-left: 14px; padding-right: 14px; padding-bottom: 12px; }
}
@media (prefers-reduced-motion: reduce) {
    .storefront-order-button { animation: none; }
}
