/* Product-demo storefront polish */
:root {
    --demo-ink: #0f172a;
    --demo-muted: #000;
    --demo-line: #e5e7eb;
    --demo-soft: #f8fafc;
    --demo-green: #16a34a;
    --demo-blue: #2563eb;
}

.demo-band {
    background: var(--demo-soft);
}

.demo-panel {
    border: 1px solid var(--demo-line);
    border-radius: 8px;
    background: #fff;
    box-shadow: 0 16px 36px rgba(15, 23, 42, .06);
}

.demo-kicker {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: #047857;
    background: #ecfdf5;
    border: 1px solid #bbf7d0;
    border-radius: 999px;
    padding: 6px 11px;
    font-size: 12px;
    font-weight: 850;
}

.demo-title {
    color: var(--demo-ink);
    font-weight: 850;
    letter-spacing: 0;
}

.demo-muted {
    color: var(--demo-muted);
}

.demo-trust-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 12px;
}

.demo-trust-item {
    display: flex;
    align-items: center;
    gap: 10px;
    min-height: 72px;
    padding: 14px;
    border: 1px solid var(--demo-line);
    border-radius: 8px;
    background: #fff;
}

.demo-trust-item i {
width: 40px;
    height: 40px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 38px;
    border-radius: 999px;
    color: #047857;
    background: #dcfce7;
    font-size: 26px;
    padding: 5px;
}

.demo-trust-item strong {
    display: block;
    color: var(--demo-ink);
    font-size: 14px;
    font-weight: 850;
}

.demo-trust-item span {
    display: block;
    color: var(--demo-muted);
    font-size: 12px;
    font-weight: 700;
}

.banner .banner-item {
    border-radius: 8px !important;
    border: 1px solid #dbeafe;
    background: linear-gradient(135deg, #eff6ff 0%, #f0fdf4 55%, #fff 100%);
    box-shadow: 0 18px 44px rgba(15, 23, 42, .08);
}

.banner .banner-item__title {
    color: var(--demo-ink);
    letter-spacing: 0;
}

.banner .banner-item__content {
    position: relative;
    z-index: 2;
}

.feature-item,
.product-card,
.promotional-banner-item,
.flash-sales-item,
.why-box {
    border-radius: 8px !important;
}

.product-card {
    box-shadow: 0 12px 28px rgba(15, 23, 42, .04);
}

.header-middle,
.header {
    position: relative;
    z-index: 40;
}

.mobile-bottom-nav {
    position: fixed;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 999;
    display: none;
    grid-template-columns: repeat(4, 1fr);
    border-top: 1px solid var(--demo-line);
    background: rgba(255, 255, 255, .96);
    box-shadow: 0 -12px 28px rgba(15, 23, 42, .12);
    backdrop-filter: blur(12px);
}

.mobile-bottom-nav a,
.mobile-bottom-nav button {
    min-height: 58px;
    border: 0;
    background: transparent;
    color: #334155;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 3px;
    font-size: 11px;
    font-weight: 800;
}

.mobile-bottom-nav i {
    font-size: 22px;
}

.mobile-bottom-nav .mobile-bottom-count {
    min-width: 16px;
    height: 16px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 999px;
    background: var(--demo-green);
    color: #fff;
    font-size: 10px;
    position: absolute;
    transform: translate(12px, -10px);
}

.checkout-payment-option,
.cart-mobile-card,
.wishlist-item,
.checkout-summary-item,
.checkout-address-option {
    border-radius: 8px !important;
}

@media (min-width: 992px) {
    .storefront-trust-strip {
        min-height: 36px;
        background: linear-gradient(90deg, #14532d 0%, #166534 52%, #0f5132 100%) !important;
        border-bottom: 1px solid rgba(255, 255, 255, .08);
        color: #fff;
    }

    .storefront-trust-strip .container-lg {
        max-width: none;
        padding-inline: 32px;
    }

    .storefront-trust-strip .flex-between {
        min-height: 36px;
    }

    .storefront-trust-marquee.mar-sect {
        align-items: center;
        background: linear-gradient(90deg, #f8b400 0%, #f59e0b 100%) !important;
        border-radius: 0 999px 999px 0;
        bottom: auto;
        box-shadow: 0 6px 18px rgba(146, 64, 14, .22);
        color: #111827 !important;
        display: flex;
        min-height: 30px;
        padding: 0 22px;
        width: min(78%, 1180px);
    }

    .storefront-trust-marquee .text-slider {
        width: 100%;
    }

    .storefront-trust-marquee h4 {
        color: #111827;
        font-size: 13px !important;
        font-weight: 800 !important;
        line-height: 1;
        white-space: nowrap;
    }

    .storefront-trust-marquee .top-announcement-icon {
        display: inline-flex;
        margin-right: 6px;
    }

    .storefront-trust-actions {
        gap: 18px !important;
        margin-left: auto;
    }

    .storefront-trust-actions a,
    .storefront-trust-actions .selected-text {
        color: #fff !important;
        font-size: 13px !important;
        font-weight: 850;
        letter-spacing: 0;
    }

    .storefront-header-main {
        background: #fff;
        border-bottom: 1px solid #edf2f7 !important;
        padding: 5px 0 !important;
        box-shadow: 0 12px 36px rgba(15, 23, 42, .04);
    }

    .storefront-header-main .container-lg,
    .storefront-nav-row .container-lg {
        max-width: none;
        padding-inline: 32px;
    }

    .storefront-header-main .header-inner {
        display: grid !important;
        grid-template-columns: minmax(210px, 320px) minmax(360px, 740px) minmax(190px, auto);
        gap: 28px !important;
        align-items: center;
    }

    .storefront-header-main .logo img {
        max-height: 86px;
        max-width: 260px;
        object-fit: contain;
    }

    .storefront-search-form {
        max-width: 760px !important;
        justify-self: center;
    }

    .storefront-search-shell {
        align-items: center;
        background: #fff;
        border: 1px solid #dbe4ee;
        border-radius: 999px;
        box-shadow: 0 10px 26px rgba(15, 23, 42, .055);
        display: grid !important;
        grid-template-columns: minmax(0, 1fr);
        min-height: 54px;
        overflow: hidden;
        transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease;
    }

    .storefront-search-shell:focus-within {
        border-color: #16a34a;
        box-shadow: 0 16px 36px rgba(22, 163, 74, .12);
        transform: translateY(-1px);
    }

    .storefront-search-shell .select2-container {
        min-width: 112px !important;
        width: 112px !important;
    }

    .storefront-search-shell .select2-selection.select2-selection--single {
        align-items: center;
        background: #f8fafc !important;
        border: 0 !important;
        border-radius: 0 !important;
        display: flex;
        height: 58px !important;
        padding-inline: 20px 12px !important;
    }

    .storefront-search-shell .select2-selection__rendered {
        color: #334155 !important;
        font-size: 14px !important;
        font-weight: 800;
        line-height: 58px !important;
        padding: 0 !important;
    }

    .storefront-search-shell .select2-selection__arrow {
        height: 58px !important;
        right: 12px !important;
    }

    .storefront-search-input-wrap {
        align-items: center;
        display: grid;
        grid-template-columns: auto minmax(0, 1fr);
        min-height: 54px;
    }

    .storefront-search-icon {
        color: #16a34a;
        font-size: 20px;
        margin-left: 20px;
    }

    .storefront-search-input-wrap .common-input {
        border: 0 !important;
        border-radius: 0 !important;
        color: #0f172a;
        font-size: 15px !important;
        font-weight: 500;
        height: 54px !important;
        padding: 0 22px 0 12px !important;
    }

    .storefront-search-input-wrap .common-input::placeholder {
        color: #94a3b8;
        font-weight: 500;
    }

    .storefront-header-actions {
        justify-self: end;
    }

    .storefront-account-menu,
    .storefront-account-guest {
        display: block !important;
    }

    .storefront-account-trigger {
        align-items: center !important;
        background: #ecfeff !important;
        border: 1px solid #cffafe;
        border-radius: 999px !important;
        box-shadow: 0 12px 28px rgba(8, 145, 178, .1);
        color: #0f172a !important;
        display: inline-flex !important;
        gap: 12px !important;
        min-height: 56px;
        padding: 8px 10px 8px 18px !important;
        text-decoration: none;
        transition: transform .18s ease, box-shadow .18s ease, background .18s ease;
        white-space: nowrap;
    }

    .storefront-account-trigger:hover {
        background: #dff7fb !important;
        box-shadow: 0 16px 34px rgba(8, 145, 178, .16);
        color: #0f172a !important;
        transform: translateY(-1px);
    }

    .storefront-account-copy {
        display: grid;
        gap: 1px;
        line-height: 1.1;
    }

    .storefront-account-copy small {
        color: #000;
        font-size: 11px;
        font-weight: 700;
        letter-spacing: .02em;
        text-transform: uppercase;
    }

    .storefront-account-copy strong {
        color: #0f172a;
        font-size: 14px;
        font-weight: 700;
    }

    .storefront-account-icon {
        align-items: center;
        background: #fff;
        border-radius: 999px;
        color: #047857;
        display: inline-flex;
        height: 40px;
        justify-content: center;
        width: 40px;
    }

    .storefront-account-icon i {
        color: #047857 !important;
        font-size: 20px;
    }

    .storefront-account-menu .common-dropdown {
        background: #fff !important;
        border: 1px solid #e5e7eb;
        border-radius: 16px;
        box-shadow: 0 24px 60px rgba(15, 23, 42, .16);
        left: auto !important;
        min-width: 210px;
        padding: 8px !important;
        right: 0;
    }

    .storefront-account-menu .common-dropdown li {
        align-items: center;
        border-radius: 12px;
        display: flex;
        gap: 8px;
        padding: 9px 10px;
    }

    .storefront-account-menu .common-dropdown li:hover {
        background: #f0fdf4;
    }

    .storefront-account-menu .common-dropdown li i,
    .storefront-account-menu .common-dropdown li a {
        color: #334155 !important;
        font-size: 13px;
        font-weight: 850;
    }

    .storefront-nav-row {
        background: rgba(255, 255, 255, .96) !important;
        border-bottom: 1px solid #e5e7eb !important;
        box-shadow: 0 10px 30px rgba(15, 23, 42, .04) !important;
        padding: 12px 0 !important;
        backdrop-filter: blur(14px);
    }

    .storefront-nav-row .header-inner {
        align-items: center;
    }

    .storefront-category-button {
        border-radius: 12px !important;
        box-shadow: 0 12px 28px rgba(22, 101, 52, .18);
        font-size: 14px;
        font-weight: 900;
        min-height: 48px;
        padding: 0 22px !important;
    }

    .storefront-nav-row .nav-menu__link {
        border-radius: 999px;
        color: #334155 !important;
        font-size: 14px;
        font-weight: 600;
        padding: 10px 4px;
        transition: color .16s ease, background .16s ease;
    }

    .storefront-nav-row .nav-menu__item.activePage > a,
    .storefront-nav-row .nav-menu__link:hover {
        color: #047857 !important;
    }

    .storefront-quick-actions .item-hover {
        align-items: center;
        background: #f8fafc;
        border: 1px solid #e5e7eb;
        border-radius: 999px;
        color: #334155;
        gap: 8px !important;
        min-height: 42px;
        padding: 0 14px 0 12px;
        transition: background .16s ease, border-color .16s ease, transform .16s ease;
    }

    .storefront-quick-actions .item-hover:hover {
        background: #f0fdf4;
        border-color: #bbf7d0;
        transform: translateY(-1px);
    }

    .storefront-quick-actions .item-hover i {
        color: #0f172a;
        font-size: 20px;
    }

    .storefront-quick-actions .item-hover span:last-child {

        font-size: 13px !important;
        font-weight: 600;
    }

    .storefront-quick-actions .js-wishlist-count,
    .storefront-quick-actions .js-cart-count,
    .storefront-quick-actions #cart-count {
        background: #16a34a !important;
        box-shadow: 0 0 0 2px #fff;
        color: #ffffff !important;
        font-weight: 900;
    }
}

@media (min-width: 992px) and (max-width: 1199px) {
    .storefront-header-main .header-inner {
        grid-template-columns: minmax(180px, 240px) minmax(320px, 1fr) auto;
        gap: 16px !important;
    }

    .storefront-header-main .logo img {
        max-width: 220px;
    }

    .storefront-account-copy small {
        display: none;
    }

    .storefront-account-copy strong {
        font-size: 13px;
    }

    .storefront-quick-actions .item-hover span:last-child {
        display: none !important;
    }
}

@media (max-width: 991px) {
    body {
        padding-bottom: 66px;
    }

    .mobile-bottom-nav {
        display: grid;
    }

    .demo-trust-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 575px) {
    .demo-trust-grid {
        grid-template-columns: 1fr;
    }

    .banner .banner-item {
        border-radius: 8px !important;
    }
}
