        :root {
            --ink: #161b22;
            --muted: #5f6b7a;
            --line: #e7ecf2;
            --brand: #ff4d30;
            --brand-dark: #d63b22;
            --green: #15803d;
            --surface: #f6f8fb;
            --deep: #111827;
        }

        body {
            font-family: 'Sora', sans-serif;
            color: var(--ink);
            background: linear-gradient(180deg, #fff 0%, #f7f9fc 100%);
            overflow-x: hidden;
        }

        h1, h2, h3, h4, h5, .navbar-brand {
            font-family: 'Sora', sans-serif;
            font-weight: 600;
        }
        .hero-title {
            font-size: clamp(2rem, 4.2vw, 3rem);
            font-weight: 600;
            line-height: 1.12;
            max-width: 18ch;
        }

        .top-sale {
            background: linear-gradient(90deg, #111827, #1f2937);
            color: #fff;
            font-size: .88rem;
        }

        .navbar {
            background: #fff !important;
            border-bottom: 1px solid var(--line);
            box-shadow: 0 2px 8px rgba(15, 23, 42, .04);
            z-index: 1030;
        }

        .brand-logo-nav {
            height: 38px;
            width: auto;
            display: block;
        }

        .brand-logo-footer {
            height: 46px;
            width: auto;
            display: block;
            margin-bottom: .6rem;
        }

        @media (max-width: 575.98px) {
            .brand-logo-nav {
                height: 24px;
            }

            .brand-logo-footer {
                height: 40px;
            }
        }

        .search-bar {
            border-radius: 999px;
            border: 1px solid var(--line);
            background: #fff;
            padding: .45rem .85rem;
            font-size: .86rem;
        }

        .header-nav-link {
            position: relative;
            color: #334155;
            font-weight: 600;
            padding: .78rem .62rem !important;
            transition: color .3s ease;
        }

        .header-nav-link::after {
            content: '';
            position: absolute;
            left: .62rem;
            right: .62rem;
            bottom: .38rem;
            height: 2px;
            border-radius: 999px;
            background: var(--bs-primary);
            transform: scaleX(0);
            transform-origin: left;
            transition: transform .3s ease;
        }

        .header-nav-link:hover,
        .header-nav-link:focus-visible {
            color: var(--bs-primary);
        }

        .header-nav-link:hover::after,
        .header-nav-link:focus-visible::after {
            transform: scaleX(1);
        }

        .header-icon-btn {
            width: 38px;
            height: 38px;
            border-radius: 999px;
            border: 1px solid #e2e8f0;
            background: #fff;
            color: #334155;
            display: inline-flex;
            align-items: center;
            justify-content: center;
            text-decoration: none;
            transition: all .3s ease;
        }

        .header-icon-btn:hover {
            color: var(--bs-primary);
            border-color: rgba(var(--bs-primary-rgb), .35);
            box-shadow: 0 8px 18px rgba(var(--bs-primary-rgb), .16);
            transform: translateY(-1px);
        }

        .hero {
            padding: 2.3rem 0 1.6rem;
        }

        .hero-banner {
            border-radius: 1.1rem;
            overflow: hidden;
            background:
                radial-gradient(circle at 0% 20%, rgba(255, 77, 48, .24), transparent 40%),
                radial-gradient(circle at 100% 0%, rgba(var(--bs-primary-rgb), .2), transparent 40%),
                linear-gradient(130deg, #fff3ef 0%, #eef4ff 100%);
            border: 1px solid #f3d6cf;
        }

        .hero-product {
            width: 100%;
            max-height: 320px;
            object-fit: cover;
            border-radius: .9rem;
            border: 1px solid #dbe3ef;
            box-shadow: 0 18px 35px rgba(17, 24, 39, .12);
        }

        .badge-pill {
            display: inline-block;
            border-radius: 999px;
            background: #fff;
            border: 1px solid #ffd9d2;
            color: #b42318;
            padding: .35rem .65rem;
            font-weight: 700;
            font-size: .78rem;
        }

        .section-gap {
            padding: 3.2rem 0;
        }

        .card-icon {
            width: 34px;
            height: 34px;
            border-radius: .6rem;
            display: inline-grid;
            place-items: center;
            background: #eaf1ff;
            border: 1px solid #d2def8;
            color: #315ddb;
            font-size: .95rem;
            margin-bottom: .55rem;
        }

        .section-link-cta {
            display: inline-flex;
            align-items: center;
            gap: .45rem;
            padding: .5rem .95rem;
            border-radius: 999px;
            border: 1px solid rgba(var(--bs-primary-rgb), .28);
            background: linear-gradient(180deg, #ffffff 0%, #f5f9ff 100%);
            color: var(--bs-primary);
            font-weight: 600;
            font-size: .92rem;
            text-decoration: none;
            box-shadow: 0 8px 18px rgba(var(--bs-primary-rgb), .18);
            transition: all .3s ease;
        }

        .section-link-cta:hover {
            color: var(--bs-primary);
            border-color: rgba(var(--bs-primary-rgb), .45);
            transform: translateY(-2px) scale(1.01);
            box-shadow: 0 14px 28px rgba(var(--bs-primary-rgb), .28);
        }

        .section-surface {
            background: #ffffff;
        }

        .section-ice {
            background: linear-gradient(180deg, #f8fbff 0%, #f2f7ff 100%);
        }

        .section-warm {
            background: linear-gradient(180deg, #fffaf7 0%, #fff4ef 100%);
        }

        .section-mist {
            background: linear-gradient(180deg, #f8fafc 0%, #f1f5f9 100%);
        }

        .shop-budget-wrap {
            border: 1px solid #dbe5f0;
            border-radius: 1.1rem;
            background: linear-gradient(180deg, #f8fbff 0%, #f2f7ff 100%);
            padding: 1rem;
        }

        .budget-grid {
            display: grid;
            grid-template-columns: 1.2fr 1fr 1fr;
            gap: .9rem;
        }

        .budget-hero,
        .budget-card {
            position: relative;
            border-radius: 1rem;
            border: 1px solid #d7e2f0;
            overflow: hidden;
            text-decoration: none;
            color: inherit;
            transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease;
            box-shadow: 0 3px 12px rgba(15, 23, 42, .07);
            isolation: isolate;
        }

        .budget-hero {
            min-height: 235px;
            padding: 1.15rem;
            display: flex;
            align-items: flex-end;
            background:
                linear-gradient(180deg, rgba(15, 23, 42, .18), rgba(15, 23, 42, .55)),
                var(--bg);
            background-size: cover;
            background-position: center;
            color: #f8fafc;
            grid-row: span 2;
        }

        .budget-hero::before {
            content: '';
            position: absolute;
            inset: 0;
            background: linear-gradient(180deg, rgba(15, 23, 42, .04), rgba(15, 23, 42, .42));
            z-index: -1;
        }

        .budget-hero:hover {
            transform: translateY(-4px);
            box-shadow: 0 16px 34px rgba(37, 99, 235, .24);
            border-color: #9eb8ea;
        }

        .budget-hero .budget-amount {
            color: #fff;
            font-size: 1.45rem;
            margin-bottom: .35rem;
        }

        .budget-hero .budget-copy {
            color: rgba(226, 232, 240, .92);
            margin-bottom: .9rem;
        }

        .budget-pill {
            display: inline-block;
            font-size: .72rem;
            border-radius: 999px;
            padding: .22rem .55rem;
            background: rgba(255, 255, 255, .2);
            border: 1px solid rgba(255, 255, 255, .4);
            color: #f8fafc;
            margin-bottom: .45rem;
            font-weight: 600;
        }

        .budget-hero-cta {
            display: inline-flex;
            align-items: center;
            gap: .35rem;
            color: #fff;
            font-size: .86rem;
            font-weight: 600;
            border: 1px solid rgba(255, 255, 255, .5);
            border-radius: 999px;
            padding: .35rem .72rem;
            background: rgba(255, 255, 255, .1);
            transition: all .3s ease;
        }

        .budget-hero-cta:hover {
            color: #fff;
            background: rgba(255, 255, 255, .2);
            transform: translateY(-2px) scale(1.01);
        }

        .budget-card {
            min-height: 112px;
            padding: .9rem .9rem;
            background:
                linear-gradient(180deg, rgba(15, 23, 42, .08), rgba(15, 23, 42, .36)),
                var(--bg);
            background-size: cover;
            background-position: center;
        }

        .budget-card:hover {
            transform: translateY(-4px);
            border-color: #b9cced;
            box-shadow: 0 14px 28px rgba(37, 99, 235, .14);
        }

        .budget-card .budget-top {
            display: flex;
            align-items: center;
            justify-content: space-between;
            margin-bottom: .45rem;
        }

        .budget-icon {
            width: 30px;
            height: 30px;
            border-radius: .65rem;
            display: grid;
            place-items: center;
            font-size: .86rem;
            color: #315ddb;
            border: 1px solid #cfddf5;
            background: #edf3ff;
        }

        .budget-tag {
            font-size: .68rem;
            color: #1d4ed8;
            background: #e9f0ff;
            border: 1px solid #cfe0ff;
            border-radius: 999px;
            padding: .16rem .45rem;
            font-weight: 600;
        }

        .budget-amount {
            font-size: 1.05rem;
            font-weight: 600;
            color: #f8fafc;
            text-shadow: 0 2px 8px rgba(2, 6, 23, .35);
            margin-bottom: .2rem;
            line-height: 1.25;
        }

        .budget-copy {
            font-size: .82rem;
            color: rgba(226, 232, 240, .95);
            text-shadow: 0 2px 8px rgba(2, 6, 23, .25);
            margin: 0;
            line-height: 1.35;
        }

        .best-usecase-wrap {
            border: 1px solid #dbe5f0;
            border-radius: 1.1rem;
            background: linear-gradient(180deg, #f8fbff 0%, #f2f7ff 100%);
            padding: 1rem;
        }

        .usecase-card {
            position: relative;
            min-height: 315px;
            border-radius: 1rem;
            overflow: hidden;
            border: 1px solid #d8e2f0;
            box-shadow: 0 8px 24px rgba(15, 23, 42, .12);
            background-size: cover;
            background-position: center;
            isolation: isolate;
            transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
            display: block;
            text-decoration: none;
        }

        .usecase-overlay {
            position: absolute;
            inset: 0;
            background: transparent;
            transition: background .25s ease;
            z-index: -1;
        }

        .usecase-content {
            height: 100%;
            display: flex;
            flex-direction: column;
            justify-content: flex-end;
            padding: 1rem;
            color: #fff;
        }

        .usecase-chip {
            width: fit-content;
            display: inline-flex;
            align-items: center;
            gap: .35rem;
            margin-top: auto;
            padding: .35rem .72rem;
            border-radius: 999px;
            font-size: .78rem;
            font-weight: 600;
            transform: translateY(6px);
            opacity: .92;
            transition: all .3s ease;
        }

        .usecase-card:hover {
            transform: translateY(-6px);
            border-color: #b7c8e8;
            box-shadow: 0 18px 36px rgba(15, 23, 42, .2);
        }

        .usecase-card:hover .usecase-chip {
            transform: translateY(0) scale(1.01);
            opacity: 1;
        }

        .mood-office {
            background-image: url('https://loremflickr.com/760/980/office,desk,tech?lock=701');
        }

        .mood-travel {
            background-image: url('https://loremflickr.com/760/980/travel,backpack,charger?lock=812');
        }

        .mood-gaming {
            background-image: url('https://picsum.photos/id/160/760/980');
        }

        .mood-creator {
            background-image: url('https://picsum.photos/id/119/760/980');
        }

        .section-kicker {
            display: inline-flex;
            align-items: center;
            gap: .35rem;
            font-size: .7rem;
            font-weight: 600;
            text-transform: uppercase;
            letter-spacing: .1em;
            color: #667085;
            margin-bottom: .4rem;
        }

        .section-kicker::before {
            content: '';
            width: 18px;
            height: 1px;
            border-radius: 999px;
            background: #98a2b3;
        }

        .section-head {
            font-size: clamp(1.45rem, 2.2vw, 1.85rem);
            font-weight: 600;
            letter-spacing: -.015em;
            line-height: 1.2;
            color: #0f172a;
            margin-bottom: 0;
            max-width: 24ch;
        }

        .product-card:hover {
            transform: translateY(-4px);
            box-shadow: 0 16px 30px rgba(17, 24, 39, .09);
        }


        .product-card {
            border: 1px solid var(--line);
            border-radius: 1rem;
            background: #fff;
            overflow: hidden;
            transition: transform .2s ease, box-shadow .2s ease;
            height: 100%;
        }

        .product-image-wrap {
            position: relative;
            background: linear-gradient(135deg, rgba(255, 77, 48, 0.08) 0%, rgba(13, 110, 253, 0.06) 100%);
            border-bottom: 1px solid var(--line);
        }

        .product-image-wrap img {
            width: 100%;
            height: 230px;
            object-fit: contain;
            object-position: center;
            padding: 12px;
            display: block;
        }

        .badge-float {
            position: absolute;
            top: .7rem;
            left: .7rem;
            font-size: .72rem;
            font-weight: 700;
            border-radius: .45rem;
            padding: .3rem .45rem;
        }

        .badge-float.hot { background: #fee4e2; color: #b42318; }
        .badge-float.new { background: #dbeafe; color: #1d4ed8; }
        .badge-float.trend { background: #dcfce7; color: #166534; }

        .discount-chip {
            color: #166534;
            background: #ecfdf3;
            border: 1px solid #bbf7d0;
            font-size: .75rem;
            border-radius: .4rem;
            padding: .2rem .45rem;
            font-weight: 700;
        }

        .price {
            font-size: 1.15rem;
            font-weight: 800;
            line-height: 1;
        }

        .cut-price {
            text-decoration: line-through;
            color: #98a2b3;
            font-size: .86rem;
            font-weight: 600;
        }

        .rating {
            font-size: .78rem;
            color: #b45309;
            font-weight: 700;
            background: #fffbeb;
            border: 1px solid #fde68a;
            border-radius: .35rem;
            padding: .16rem .42rem;
        }

        .flash-strip {
            border: 0;
            border-radius: 1rem;
            background: transparent;
        }

        .promo-card {
            position: relative;
            border-radius: 1rem;
            overflow: hidden;
            padding: 2rem 2rem;
            min-height: 250px;
            display: flex;
            flex-direction: column;
            justify-content: center;
            color: #f8fafc;
        }

        .promo-card::after {
            content: '';
            position: absolute;
            width: 190px;
            height: 190px;
            border-radius: 50%;
            right: -35px;
            bottom: -45px;
            background: rgba(255, 255, 255, .12);
        }

        .promo-card.dark {
            background: linear-gradient(110deg, #0b1734 0%, #1e2b48 100%);
        }

        .promo-card.green {
            background: linear-gradient(110deg, #1f5f53 0%, #2f7e6f 100%);
        }

        .promo-tag {
            display: inline-block;
            width: fit-content;
            padding: .35rem .7rem;
            border-radius: 999px;
            background: rgba(255, 255, 255, .92);
            color: #1f2937;
            font-size: .8rem;
            font-weight: 700;
            margin-bottom: .9rem;
        }

        .promo-title {
            font-family: 'Sora', sans-serif;
            font-size: clamp(1.7rem, 3vw, 2.35rem);
            line-height: 1.15;
            font-weight: 600;
            margin-bottom: .6rem;
            letter-spacing: -.02em;
        }

        .promo-sub {
            color: rgba(226, 232, 240, .72);
            font-size: 1.05rem;
            margin-bottom: 1.35rem;
            max-width: 540px;
        }

        .promo-btn {
            width: fit-content;
            border-radius: 999px;
            padding: .55rem 1.25rem;
            border: 2px solid rgba(255, 255, 255, .7);
            color: #fff;
            background: transparent;
            font-weight: 600;
            text-decoration: none;
            transition: all .3s ease;
        }

        .promo-btn:hover {
            color: #fff;
            background: rgba(255, 255, 255, .08);
            transform: translateY(-2px) scale(1.01);
            box-shadow: 0 12px 24px rgba(2, 6, 23, .2);
        }

        .visual-tile {
            border: 1px solid var(--line);
            border-radius: 1rem;
            overflow: hidden;
            background: #fff;
            height: 100%;
            transition: transform .2s ease, box-shadow .2s ease;
            box-shadow: 0 1px 2px rgba(15, 23, 42, .04);
        }

        .visual-tile img {
            width: 100%;
            height: 210px;
            object-fit: cover;
            display: block;
            transition: transform .35s ease;
            background: linear-gradient(135deg, rgba(255, 77, 48, 0.08) 0%, rgba(13, 110, 253, 0.06) 100%);
        }

        .visual-tile:hover {
            transform: translateY(-4px);
            box-shadow: 0 16px 30px rgba(17, 24, 39, .09);
        }

        .visual-tile:hover img {
            transform: scale(1.04);
        }

        .lookbook-card {
            border-radius: .9rem;
            overflow: hidden;
            border: 1px solid var(--line);
            background: #fff;
        }

        .lookbook-card img {
            width: 100%;
            height: 170px;
            object-fit: contain;
            object-position: center;
            display: block;
            background: #fff;
            background: linear-gradient(135deg, rgba(255, 77, 48, 0.08) 0%, rgba(13, 110, 253, 0.06) 100%);
        }

        .logo-card {
            border: 1px dashed #d0d5dd;
            border-radius: .8rem;
            background: #fff;
            text-align: center;
            padding: 1rem .5rem;
            font-weight: 700;
            color: #667085;
            font-size: .88rem;
            transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
        }

        .logo-card:hover {
            transform: translateY(-3px);
            box-shadow: 0 12px 24px rgba(17, 24, 39, .08);
            border-color: #b8c4d5;
        }

        .bundle-card {
            border: 1px solid var(--line);
            border-radius: 1rem;
            background: #fff;
            overflow: hidden;
            height: 100%;
            transition: transform .2s ease, box-shadow .2s ease;
            box-shadow: 0 1px 2px rgba(15, 23, 42, .04);
        }

        .bundle-card:hover {
            transform: translateY(-4px);
            box-shadow: 0 16px 30px rgba(17, 24, 39, .09);
        }

        .bundle-card img {
            width: 100%;
            height: 230px;
            object-fit: contain;
            object-position: center;
            padding: 12px;
            background: linear-gradient(135deg, rgba(255, 77, 48, 0.08) 0%, rgba(13, 110, 253, 0.06) 100%);
            display: block;
            border-bottom: 1px solid var(--line);
            transition: transform .35s ease;
        }

        .bundle-card:hover img {
            transform: scale(1.04);
        }

        .fc-grid {
            display: grid;
            grid-template-columns: 1.3fr 1fr 1fr;
            grid-auto-rows: 205px;
            gap: 1rem;
        }

        .fc-tile {
            position: relative;
            border-radius: 1rem;
            overflow: hidden;
            padding: 1rem;
            display: flex;
            align-items: flex-end;
            color: #fff;
            background-image: var(--bg);
            background-size: cover;
            background-position: center;
            box-shadow: 0 10px 24px rgba(15, 23, 42, .12);
            isolation: isolate;
            transition: transform .25s ease, box-shadow .25s ease;
        }

        .fc-tile::before {
            content: '';
            position: absolute;
            inset: 0;
            z-index: -1;
            background: linear-gradient(180deg, rgba(2, 6, 23, .02) 0%, rgba(2, 6, 23, .32) 70%, rgba(2, 6, 23, .52) 100%);
            transition: background .2s ease;
        }

        .fc-tile:hover {
            transform: translateY(-5px);
            box-shadow: 0 16px 34px rgba(15, 23, 42, .18);
        }

        .fc-tile:hover::before {
            background: linear-gradient(180deg, rgba(2, 6, 23, .06) 0%, rgba(2, 6, 23, .42) 68%, rgba(2, 6, 23, .66) 100%);
        }

        .fc-lg {
            grid-row: span 2;
        }

        .fc-content {
            width: 100%;
            display: flex;
            flex-direction: column;
            justify-content: flex-end;
            min-height: 100%;
            transform: translateY(0);
            transition: transform .2s ease;
        }

        .fc-tile:hover .fc-content {
            transform: translateY(0);
        }

        .fc-meta {
            display: flex;
            align-items: center;
            gap: .5rem;
            margin-bottom: .35rem;
            flex-wrap: wrap;
        }

        .fc-count,
        .fc-badge {
            font-size: .72rem;
            font-weight: 600;
            border-radius: 999px;
            padding: .2rem .55rem;
            border: 1px solid rgba(255, 255, 255, .35);
            background: rgba(255, 255, 255, .17);
            color: #f8fafc;
        }

        .fc-badge {
            border-color: rgba(253, 224, 71, .55);
            background: rgba(250, 204, 21, .22);
            color: #fef3c7;
        }

        .fc-title {
            font-size: 1.12rem;
            line-height: 1.22;
            font-weight: 600;
            margin: 0 0 .5rem;
            color: #fff;
            text-shadow: 0 2px 8px rgba(2, 6, 23, .35);
        }

        .card-title-sm {
            line-height: 1.3;
            font-weight: 600;
        }

        .fc-link {
            display: inline-flex;
            align-items: center;
            gap: .35rem;
            align-self: flex-start;
            width: auto;
            color: #fff;
            text-decoration: none;
            font-size: .84rem;
            font-weight: 600;
            border: 1px solid rgba(255, 255, 255, .42);
            background: rgba(255, 255, 255, .1);
            border-radius: 999px;
            padding: .35rem .72rem;
            transform: translateY(6px);
            opacity: 0;
            transition: all .3s ease;
        }

        .fc-tile:hover .fc-link {
            transform: translateY(0);
            opacity: 1;
        }

        .fc-link:hover {
            color: #fff;
            background: rgba(255, 255, 255, .2);
            transform: translateY(-2px) scale(1.01);
        }

        .cta-btn {
            transition: all .3s ease;
            will-change: transform;
        }

        .cta-btn:hover {
            transform: translateY(-2px) scale(1.01);
            box-shadow: 0 12px 24px rgba(15, 23, 42, .2) !important;
        }

        .bundle-save {
            display: inline-block;
            border-radius: 999px;
            background: #ecfdf3;
            color: #166534;
            border: 1px solid #bbf7d0;
            font-size: .72rem;
            font-weight: 600;
            padding: .2rem .5rem;
        }

        .bundle-card .p-3 {
            padding: 1rem !important;
        }

        @media (max-width: 991.98px) {
            .section-gap {
                padding: 2.4rem 0;
            }

            .section-gap .d-flex.justify-content-between.align-items-end {
                align-items: flex-start !important;
                gap: .75rem;
                flex-wrap: wrap;
            }

            .promo-card {
                min-height: 215px;
                padding: 1.5rem 1.25rem;
            }

            .promo-title {
                font-size: clamp(1.35rem, 5vw, 1.8rem);
            }

            .product-image-wrap img,
            .bundle-card img {
                height: 205px;
            }

            .fc-grid {
                grid-template-columns: 1fr 1fr;
                grid-auto-rows: 210px;
            }

            .fc-lg {
                grid-column: span 2;
                grid-row: span 1;
            }
        }

        @media (max-width: 575.98px) {
            .section-gap {
                padding: 2rem 0;
            }

            .top-sale {
                font-size: .76rem;
                padding-inline: .65rem;
            }

            .container {
                padding-left: .85rem;
                padding-right: .85rem;
            }

            .hero {
                padding: 1.6rem 0 1rem;
            }

            .hero-banner {
                padding: 1.15rem !important;
            }

            .hero-title {
                font-size: clamp(1.52rem, 7vw, 2rem);
                max-width: 100%;
            }

            .hero-product {
                max-height: 250px;
            }

            .hero .d-flex.gap-2.flex-wrap {
                flex-direction: column;
            }

            .hero .btn-cta,
            .hero .btn-cta-outline {
                width: 100%;
                justify-content: center;
            }

            .navbar .container {
                padding-top: 0;
                padding-bottom: 0;
            }

            .header-icon-btn {
                width: 34px;
                height: 34px;
                font-size: .92rem;
            }

            .navbar-toggler {
                padding: .1rem !important;
                transform: scale(.84);
            }

            .search-bar {
                font-size: .86rem;
                padding: .48rem .78rem;
            }

            #mainNav .header-nav-link {
                padding-top: .45rem;
                padding-bottom: .45rem;
            }

            .section-gap .d-flex.justify-content-between.align-items-end {
                flex-direction: column;
                align-items: flex-start !important;
                gap: .8rem;
                margin-bottom: 1rem !important;
            }

            .section-link-cta {
                padding: .5rem .82rem !important;
                font-size: .84rem;
            }

            .product-image-wrap img,
            .bundle-card img,
            .visual-tile img {
                height: 185px;
            }

            .fc-grid {
                display: flex;
                overflow-x: auto;
                gap: .8rem;
                padding-bottom: .3rem;
                scroll-snap-type: x mandatory;
                -webkit-overflow-scrolling: touch;
                scroll-padding-left: .2rem;
            }

            .fc-tile {
                min-width: 86%;
                min-height: 240px;
                scroll-snap-align: start;
            }

            .fc-lg {
                grid-column: auto;
            }

            .shop-budget-wrap {
                padding: .85rem;
            }

            .budget-grid {
                display: flex;
                overflow-x: auto;
                gap: .8rem;
                padding-bottom: .2rem;
                scroll-snap-type: x mandatory;
                -webkit-overflow-scrolling: touch;
                scroll-padding-left: .2rem;
            }

            .budget-hero,
            .budget-card {
                min-width: 84%;
                scroll-snap-align: start;
            }

            .budget-hero {
                min-height: 210px;
            }

            .budget-card {
                min-height: 100px;
            }

            .best-usecase-wrap {
                padding: .85rem;
            }

            .usecase-card {
                min-height: 255px;
            }

        }
        .btn-cta {
            position: relative;
            border: 0;
            border-radius: .8rem;
            background: linear-gradient(135deg, #ff6a3d 0%, #ff3f2e 45%, #e62e2d 100%);
            color: #fff;
            font-weight: 700;
            letter-spacing: .01em;
            box-shadow: 0 14px 28px rgba(230, 46, 45, .34), inset 0 1px 0 rgba(255, 255, 255, .25);
            transition: transform .2s ease, box-shadow .2s ease, filter .2s ease;
        }

        .btn-cta:hover {
            color: #fff;
            transform: translateY(-2px);
            filter: saturate(1.08);
            box-shadow: 0 18px 34px rgba(230, 46, 45, .42), inset 0 1px 0 rgba(255, 255, 255, .34);
        }

        .btn-cta:focus-visible {
            outline: 3px solid rgba(255, 77, 48, .25);
            outline-offset: 2px;
        }

        .btn-cta-outline {
            border-radius: .8rem;
            border: 1px solid #cad5e2;
            background: rgba(255, 255, 255, .85);
            color: #111827;
            font-weight: 700;
            transition: transform .2s ease, border-color .2s ease, background .2s ease;
        }

        .btn-cta-outline:hover {
            transform: translateY(-2px);
            border-color: #9fb3cb;
            background: #fff;
            color: #111827;
        }

        .hero .btn-cta,
        .hero .btn-cta-outline {
            font-size: .92rem;
            padding: .58rem 1rem;
        }

        .footer-wrap {
            margin-top: 1rem;
        }

        .footer-main {
            background: #0b1220;
            color: #cbd5e1;
        }

        .footer-main a {
            color: #cbd5e1;
            text-decoration: none;
            transition: all .3s ease;
        }

        .footer-main a:hover {
            color: #ffffff;
            opacity: 1;
        }

        .footer-title {
            color: #ffffff;
            font-weight: 600;
            font-size: .95rem;
            margin-bottom: .7rem;
        }

        .footer-list {
            list-style: none;
            padding: 0;
            margin: 0;
            display: grid;
            gap: .45rem;
            font-size: .9rem;
        }

        .footer-link {
            opacity: .9;
            display: inline-block;
        }

        .footer-link:hover {
            opacity: 1;
            transform: translateX(2px);
        }

        .footer-pill {
            border: 1px solid #334155;
            border-radius: .6rem;
            padding: .4rem .65rem;
            display: inline-block;
            margin-right: .35rem;
            margin-bottom: .35rem;
            font-size: .78rem;
            font-weight: 700;
            color: #e2e8f0;
            background: #111c33;
        }

        .footer-input {
            background: #0f172a;
            border: 1px solid #334155;
            color: #e2e8f0;
        }

        .footer-input::placeholder {
            color: #94a3b8;
        }

        .footer-social {
            width: 34px;
            height: 34px;
            border-radius: 999px;
            border: 1px solid #334155;
            display: inline-flex;
            align-items: center;
            justify-content: center;
            color: #cbd5e1;
            background: #111c33;
            transition: all .3s ease;
        }

        .footer-social:hover {
            color: #fff;
            border-color: rgba(var(--bs-primary-rgb), .45);
            transform: translateY(-1px);
        }

        .footer-bottom {
            border-top: 1px solid #273449;
            color: #94a3b8;
            font-size: .84rem;
        }

/* PDP marketplace logos */
.marketplace-logo img{width:auto;max-width:100px;max-height:64px;object-fit:contain;}



/* =========================
   Contact Page Redesign
========================= */

.contact-page {
    position: relative;
}

.contact-hero {
    background:
        radial-gradient(circle at top left, rgba(255, 77, 48, .18), transparent 30%),
        radial-gradient(circle at bottom right, rgba(13, 110, 253, .12), transparent 30%),
        linear-gradient(135deg, #ffffff 0%, #f7faff 55%, #fff7f3 100%);
    border: 1px solid #e6edf6;
    box-shadow: 0 20px 50px rgba(15, 23, 42, .08);
}

.contact-kicker {
    font-size: .78rem;
    font-weight: 700;
    color: #b42318;
    letter-spacing: .08em;
    text-transform: uppercase;
    background: #fff;
    border: 1px solid #ffd9d2;
    border-radius: 999px;
    padding: .45rem .8rem;
}

.contact-title {
    font-size: clamp(2rem, 4vw, 3.25rem);
    line-height: 1.08;
    letter-spacing: -.02em;
    max-width: 14ch;
    margin-bottom: 0;
}

.text-gradient {
    background: linear-gradient(135deg, #ff5f3d 0%, #0d6efd 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}

.contact-subtitle {
    font-size: 1rem;
    max-width: 60ch;
}

.contact-chip {
    display: inline-flex;
    align-items: center;
    border-radius: 999px;
    border: 1px solid #d8e3ef;
    background: rgba(255,255,255,.9);
    color: #0f172a;
    font-weight: 600;
    font-size: .86rem;
    padding: .55rem .9rem;
    box-shadow: 0 8px 18px rgba(15, 23, 42, .04);
}

.contact-stat {
    background: rgba(255,255,255,.82);
    border: 1px solid #e6edf5;
    border-radius: 1rem;
    padding: 1rem;
    box-shadow: 0 12px 24px rgba(15, 23, 42, .04);
}

.contact-stat-icon {
    width: 42px;
    height: 42px;
    border-radius: .85rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(135deg, rgba(255,77,48,.12), rgba(13,110,253,.12));
    color: #0d6efd;
    margin-bottom: .8rem;
    font-size: 1rem;
}

.contact-hero-panel {
    background: linear-gradient(135deg, #0f172a 0%, #1e293b 55%, #334155 100%);
    box-shadow: 0 18px 36px rgba(15, 23, 42, .24);
    border: 1px solid rgba(255,255,255,.08);
}

.contact-hero-action {
    border-radius: .95rem;
    font-weight: 600;
    padding: .9rem 1rem;
}

.contact-response-note {
    border-top: 1px solid rgba(255,255,255,.12);
    padding-top: 1rem;
}

.contact-form-card {
    box-shadow: 0 18px 50px rgba(15, 23, 42, .08) !important;
}

.contact-form-card .form-control,
.contact-form-card .form-select,
.contact-form-card textarea {
    border-radius: .9rem;
    border-color: #d5e0ec;
    padding: .9rem 1rem;
    box-shadow: none;
}

.contact-form-card .form-control:focus,
.contact-form-card .form-select:focus,
.contact-form-card textarea:focus {
    border-color: rgba(var(--bs-primary-rgb), .45);
    box-shadow: 0 0 0 .25rem rgba(var(--bs-primary-rgb), .12);
}

.contact-form-card textarea.form-control {
    min-height: 160px;
    resize: vertical;
}

.contact-mini-badge {
    display: inline-flex;
    align-items: center;
    white-space: nowrap;
    font-size: .82rem;
    font-weight: 700;
    color: #0d6efd;
    background: #edf4ff;
    border: 1px solid #d5e4ff;
    border-radius: 999px;
    padding: .55rem .85rem;
}

.contact-side-top {
    background: linear-gradient(135deg, #0f172a 0%, #1e293b 55%, #334155 100%);
}

.contact-info-btn {
    border-radius: 1rem;
    padding: .85rem .95rem;
    transition: all .25s ease;
}

.contact-info-btn:hover {
    transform: translateY(-2px);
    box-shadow: 0 16px 28px rgba(15, 23, 42, .08);
    border-color: #c9d7e6 !important;
    background: #fff !important;
}

.contact-icon-circle {
    width: 44px;
    height: 44px;
    border-radius: 999px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.contact-address-box {
    border-color: #e4ebf3 !important;
}

.contact-benefit-item {
    display: flex;
    align-items: start;
    gap: .7rem;
    border: 1px solid #e8edf3;
    background: #fff;
    border-radius: 1rem;
    padding: .9rem 1rem;
    font-weight: 500;
    color: #334155;
}

.contact-bottom-strip {
    background: linear-gradient(135deg, #111827 0%, #0f172a 55%, #1d4ed8 140%);
    box-shadow: 0 18px 40px rgba(15, 23, 42, .18);
}

@media (max-width: 991.98px) {
    .contact-title {
        max-width: 100%;
    }

    .contact-hero {
        padding: 1.5rem !important;
    }
}

@media (max-width: 575.98px) {
    .contact-kicker {
        font-size: .72rem;
    }

    .contact-title {
        font-size: clamp(1.7rem, 8vw, 2.2rem);
    }

    .contact-chip {
        font-size: .8rem;
        padding: .5rem .75rem;
    }

    .contact-stat,
    .contact-benefit-item {
        border-radius: .9rem;
    }

    .contact-hero-panel,
    .contact-form-card,
    .contact-bottom-strip,
    .contact-info-btn {
        border-radius: 1rem !important;
    }
}