/* ==========================================================================
   TBH INDIA — HOMEPAGE VISUAL UPGRADE V2
   Scope: .tbh-home only
   Purpose: richer marketplace presentation without changing shared Shop UI.
   Common design tokens come from assets/css/style.css
========================================================================== */


/* ==========================================================================
   01. HOMEPAGE DESIGN TOKENS
========================================================================== */

.tbh-home {
    --home-gold: var(--tbh-gold);
    --home-gold-deep: var(--tbh-gold-dark);
    --home-cream: var(--tbh-cream);
    --home-paper: var(--tbh-paper);
    --home-ink: var(--tbh-black);
    --home-muted: var(--tbh-gray-600);

    --home-container: var(--tbh-container-xl);
}


/* ==========================================================================
   02. HERO
========================================================================== */

.tbh-home .home-hero {
    min-height: 600px;

    background:
        radial-gradient(
            circle at 78% 34%,
            rgba(212,175,55,.20),
            transparent 25%
        ),
        radial-gradient(
            circle at 14% 85%,
            rgba(255,255,255,.06),
            transparent 23%
        ),
        linear-gradient(
            135deg,
            #111 0%,
            #0c0c0c 55%,
            #201a0b 100%
        );
}

.tbh-home .home-hero .hero-content {
    width: min(
        var(--home-container),
        calc(100% - (var(--tbh-page-padding-x) * 2))
    );

    min-height: 600px;

    display: grid;

    grid-template-columns:
        1.05fr
        .95fr;

    align-items: center;

    gap: 30px;

    padding: 64px 0;
}

.tbh-home .home-hero-copy {
    position: relative;
    z-index: 2;
}

.tbh-home .home-hero-copy h1 {
    max-width: 820px;
}

.tbh-home .home-hero-actions {
    display: flex;
    align-items: center;
    gap: 12px;
    flex-wrap: wrap;
}

.tbh-home .home-hero-secondary {
    min-height: 52px;

    display: inline-flex;
    align-items: center;
    justify-content: center;

    padding: 0 22px;

    border:
        1px solid
        rgba(255,255,255,.20);

    border-radius: 999px;

    color: rgba(255,255,255,.86);

    background:
        rgba(255,255,255,.04);

    font-weight: 800;

    transition:
        .2s ease;
}

.tbh-home .home-hero-secondary:hover {
    border-color:
        rgba(212,175,55,.55);

    background:
        rgba(212,175,55,.08);
}

.tbh-home .home-hero-trust {
    display: flex;

    gap: 18px;

    flex-wrap: wrap;

    margin-top: 22px;

    color:
        rgba(255,255,255,.58);

    font-size: 12px;
}

.tbh-home .home-hero-trust span::first-letter {
    color: var(--home-gold);
}


/* ==========================================================================
   03. HERO ART
========================================================================== */

.tbh-home .home-hero-art {
    position: relative;

    min-height: 470px;

    display: grid;

    place-items: center;

    isolation: isolate;
}

.tbh-home .home-hero-glow {
    position: absolute;

    width: 330px;
    height: 330px;

    border-radius: 50%;

    background:
        radial-gradient(
            circle,
            rgba(212,175,55,.18),
            rgba(212,175,55,.02) 58%,
            transparent 72%
        );

    filter: blur(2px);

    z-index: -1;
}

.tbh-home .home-hero-orbit {
    position: absolute;

    border:
        1px solid
        rgba(212,175,55,.18);

    border-radius: 50%;
}

.tbh-home .home-hero-orbit--one {
    width: 390px;
    height: 390px;
}

.tbh-home .home-hero-orbit--two {
    width: 500px;
    height: 250px;

    transform:
        rotate(28deg);
}

.tbh-home .home-hero-orbit--three {
    width: 250px;
    height: 500px;

    transform:
        rotate(-22deg);
}

.tbh-home .home-hero-core {
    width: 220px;
    height: 220px;

    display: grid;

    place-items: center;

    align-content: center;

    border:
        1px solid
        rgba(212,175,55,.55);

    border-radius: 50%;

    background:
        radial-gradient(
            circle at 50% 30%,
            rgba(212,175,55,.18),
            rgba(255,255,255,.03) 54%,
            rgba(0,0,0,.18) 100%
        );

    box-shadow:
        0 0 0 16px rgba(212,175,55,.04),
        0 0 80px rgba(212,175,55,.12),
        inset 0 0 40px rgba(255,255,255,.02);
}

.tbh-home .home-hero-core span {
    color:
        var(--home-gold);

    font-size: 54px;

    font-weight: 950;

    line-height: 1;

    letter-spacing:
        -.06em;
}

.tbh-home .home-hero-core small {
    margin-top: 7px;

    color:
        #fff;

    font-size: 10px;

    font-weight: 900;

    letter-spacing:
        .34em;
}

.tbh-home .home-float-card {
    position: absolute;

    min-width: 130px;

    padding: 12px 14px;

    display: flex;

    align-items: center;

    gap: 9px;

    border:
        1px solid
        rgba(255,255,255,.10);

    border-radius: 15px;

    background:
        rgba(255,255,255,.06);

    backdrop-filter:
        blur(10px);

    box-shadow:
        0 18px 40px
        rgba(0,0,0,.18);

    color:
        #fff;

    font-size: 12px;

    font-weight: 800;
}

.tbh-home .home-float-card strong {
    font-size: 21px;
}

.tbh-home .home-float-card--one {
    top: 17%;
    right: 4%;
}

.tbh-home .home-float-card--two {
    top: 59%;
    right: 2%;
}

.tbh-home .home-float-card--three {
    left: 6%;
    bottom: 13%;
}

.tbh-home .home-float-card--four {
    left: 2%;
    top: 29%;
}


/* ==========================================================================
   04. SECTION
========================================================================== */

.tbh-home .home-section-subtitle {
    margin: 10px 0 0;

    max-width: 620px;

    color:
        var(--home-muted);

    font-size: 15px;
}


/* ==========================================================================
   05. CATEGORIES
========================================================================== */

.tbh-home .home-category-section {
    padding-top: 82px;
    padding-bottom: 60px;

    background:
        radial-gradient(
            circle at 10% 15%,
            rgba(212,175,55,.08),
            transparent 22%
        ),
        #fffdf8;
}

.tbh-home .home-category-grid {
    grid-template-columns:
        repeat(6, minmax(0,1fr));

    gap: 14px;
}

.tbh-home .home-category-card {
    position: relative;

    min-height: 190px;

    padding: 20px;

    justify-content: flex-end;

    overflow: hidden;

    isolation: isolate;

    border-radius: 20px;

    background:
        linear-gradient(
            180deg,
            #fff,
            #f8f3e7
        );
}

.tbh-home .home-category-card__shine {
    position: absolute;

    inset:
        -35%
        -20%
        auto
        auto;

    width: 120px;
    height: 120px;

    border-radius: 50%;

    background:
        rgba(255,255,255,.35);

    filter:
        blur(12px);

    z-index: -1;
}

.tbh-home .home-category-card__icon {
    width: 66px;
    height: 66px;

    margin-bottom: auto;

    border-radius: 20px;

    font-size: 30px;

    box-shadow:
        0 10px 25px
        rgba(17,17,17,.08);
}

.tbh-home .home-category-card__content h3 {
    margin:
        0
        0
        7px;

    font-size: 18px;

    line-height: 1.15;
}

.tbh-home .home-category-card__content span {
    color:
        rgba(17,17,17,.58);

    font-size: 12px;

    font-weight: 800;
}

.tbh-home .home-category-card__content b {
    color:
        var(--home-gold-deep);

    font-size: 13px;
}


/* CATEGORY TONES */

.tbh-home .home-category-card--beauty {
    background:
        linear-gradient(160deg, #fff, #fff0f5);
}

.tbh-home .home-category-card--electronics {
    background:
        linear-gradient(160deg, #fff, #eef6ff);
}

.tbh-home .home-category-card--home {
    background:
        linear-gradient(160deg, #fff, #f0f7ee);
}

.tbh-home .home-category-card--kids {
    background:
        linear-gradient(160deg, #fff, #fff4dc);
}

.tbh-home .home-category-card--men {
    background:
        linear-gradient(160deg, #fff, #edf0f5);
}

.tbh-home .home-category-card--women {
    background:
        linear-gradient(160deg, #fff, #f6eef8);
}

.tbh-home .home-category-card--fashion {
    background:
        linear-gradient(160deg, #fff, #f6efe6);
}

.tbh-home .home-category-card--footwear {
    background:
        linear-gradient(160deg, #fff, #f1efe9);
}


/* ==========================================================================
   06. CURATED COLLECTIONS
========================================================================== */

.tbh-home .home-collections-section {
    padding: 38px 0 84px;

    background:
        #f4efe3;
}

.tbh-home .home-wide-container {
    width: min(
        var(--home-container),
        calc(100% - (var(--tbh-page-padding-x) * 2))
    );

    margin-inline: auto;
}

.tbh-home .home-collections-heading {
    display: flex;

    align-items: flex-end;

    justify-content: space-between;

    gap: 24px;

    margin-bottom: 26px;
}

.tbh-home .home-section-kicker {
    display: inline-block;

    margin-bottom: 9px;

    color:
        var(--home-gold-deep);

    font-size: 11px;

    font-weight: 950;

    letter-spacing:
        .22em;

    text-transform:
        uppercase;
}

.tbh-home .home-collections-heading h2 {
    margin: 0;

    font-size:
        clamp(
            30px,
            4vw,
            48px
        );

    line-height: 1;

    letter-spacing:
        -.04em;
}

.tbh-home .home-collections-heading p {
    max-width: 620px;

    margin:
        11px
        0
        0;

    color:
        var(--home-muted);
}

.tbh-home .home-text-link {
    color:
        var(--home-gold-deep);

    font-weight: 900;

    white-space:
        nowrap;
}

.tbh-home .home-collection-grid {
    display: grid;

    grid-template-columns:
        repeat(
            3,
            minmax(0,1fr)
        );

    gap: 16px;
}

.tbh-home .home-collection-card {
    position: relative;

    min-height: 280px;

    display: flex;

    align-items: flex-end;

    padding: 26px;

    overflow: hidden;

    border-radius: 24px;

    isolation: isolate;

    box-shadow:
        0 16px 42px
        rgba(17,17,17,.08);
}

.tbh-home .home-collection-card::before {
    content: "";

    position: absolute;

    inset: 0;

    background:
        linear-gradient(
            140deg,
            rgba(255,255,255,.88),
            rgba(255,255,255,.05) 60%
        );

    z-index: -1;
}

.tbh-home .home-collection-card--fashion {
    background:
        linear-gradient(
            145deg,
            #ead8c6,
            #f8f1ea
        );
}

.tbh-home .home-collection-card--tech {
    background:
        linear-gradient(
            145deg,
            #d6e3ee,
            #eef3f7
        );
}

.tbh-home .home-collection-card--beauty {
    background:
        linear-gradient(
            145deg,
            #ead7e8,
            #f8f0f6
        );
}

.tbh-home .home-collection-card__content {
    position: relative;

    z-index: 2;

    max-width: 74%;
}

.tbh-home .home-collection-card__content > span {
    display: block;

    margin-bottom: 10px;

    color:
        rgba(17,17,17,.58);

    font-size: 10px;

    font-weight: 950;

    letter-spacing:
        .20em;
}

.tbh-home .home-collection-card__content h3 {
    margin:
        0
        0
        16px;

    font-size: 26px;

    line-height: 1.05;

    letter-spacing:
        -.03em;
}

.tbh-home .home-collection-card__content strong {
    color:
        #151515;

    font-size: 13px;
}

.tbh-home .home-collection-orb {
    position: absolute;

    right: -14px;
    top: 22px;

    width: 150px;
    height: 150px;

    display: grid;

    place-items: center;

    border:
        1px solid
        rgba(17,17,17,.08);

    border-radius: 50%;

    background:
        rgba(255,255,255,.45);

    box-shadow:
        0 0 0 18px
        rgba(255,255,255,.12);

    font-size: 66px;

    transform:
        rotate(-7deg);
}


/* ==========================================================================
   07. PRODUCTS
========================================================================== */

.tbh-home .products-section {
    padding-top: 88px;

    background:
        #fffdf8;
}

.tbh-home .products-section .section-heading {
    margin-bottom: 22px;
}

.tbh-home .products-section .section-heading h2 {
    font-size:
        clamp(
            32px,
            4vw,
            48px
        );
}

.tbh-home .home-product-topline {
    min-height: 22px;

    display: flex;

    align-items: center;

    justify-content: space-between;

    gap: 8px;

    margin-bottom: 8px;
}

.tbh-home .home-product-category {
    color:
        #918a7c;

    font-size: 10px;

    font-weight: 900;

    letter-spacing:
        .13em;

    text-transform:
        uppercase;
}

.tbh-home .home-product-discount {
    padding:
        4px
        7px;

    border-radius:
        999px;

    background:
        #f0e7c8;

    color:
        var(--home-gold-deep);

    font-size: 10px;

    font-weight: 950;
}

.tbh-home .product-price {
    letter-spacing:
        -.01em;
}


/* ==========================================================================
   08. PROMISE SECTION
========================================================================== */

.tbh-home .home-promise-section {
    padding:
        0
        0
        82px;

    background:
        #fffdf8;
}

.tbh-home .home-promise-panel {
    display: grid;

    grid-template-columns:
        1.05fr
        .95fr;

    gap: 22px;

    padding: 34px;

    border:
        1px solid
        rgba(212,175,55,.26);

    border-radius:
        26px;

    background:
        radial-gradient(
            circle at 92% 12%,
            rgba(212,175,55,.13),
            transparent 30%
        ),
        linear-gradient(
            140deg,
            #171717,
            #101010 65%,
            #1e170b
        );

    color:
        #fff;

    box-shadow:
        0 22px 60px
        rgba(17,17,17,.12);
}

.tbh-home .home-promise-copy h2 {
    max-width: 620px;

    margin: 0;

    font-size:
        clamp(
            31px,
            4vw,
            50px
        );

    line-height: 1;

    letter-spacing:
        -.04em;
}

.tbh-home .home-promise-copy p {
    max-width: 620px;

    margin:
        16px
        0
        0;

    color:
        rgba(255,255,255,.65);
}

.tbh-home .home-promise-stats {
    display: grid;

    grid-template-columns:
        repeat(
            3,
            1fr
        );

    gap: 10px;

    align-items: stretch;
}

.tbh-home .home-promise-stats > div {
    min-height: 150px;

    padding: 18px;

    display: flex;

    flex-direction: column;

    justify-content: flex-end;

    border:
        1px solid
        rgba(255,255,255,.08);

    border-radius:
        18px;

    background:
        rgba(255,255,255,.035);
}

.tbh-home .home-promise-stats strong {
    color:
        var(--home-gold);

    font-size: 30px;
}

.tbh-home .home-promise-stats span {
    margin-top: 8px;

    font-weight: 900;
}

.tbh-home .home-promise-stats small {
    margin-top: 5px;

    color:
        rgba(255,255,255,.50);

    line-height: 1.35;
}


/* ==========================================================================
   09. TRUST
========================================================================== */

.tbh-home .trust-section {
    padding-top: 12px;
}


/* ==========================================================================
   10. RESPONSIVE — TABLET / SMALL DESKTOP
========================================================================== */

@media (max-width: 1100px) {

    .tbh-home .home-category-grid {
        grid-template-columns:
            repeat(
                3,
                minmax(0,1fr)
            );
    }

    .tbh-home .home-hero .hero-content {
        grid-template-columns:
            1fr
            .8fr;
    }

    .tbh-home .home-float-card--one {
        right: 0;
    }

    .tbh-home .home-float-card--two {
        right: 0;
    }

}


/* ==========================================================================
   11. RESPONSIVE — TABLET
========================================================================== */

@media (max-width: 820px) {

    .tbh-home .home-hero .hero-content {
        grid-template-columns:
            1fr;

        min-height: auto;

        padding:
            54px
            0
            60px;
    }

    .tbh-home .home-hero-art {
        min-height: 300px;
    }

    .tbh-home .home-collection-grid {
        grid-template-columns:
            1fr;
    }

    .tbh-home .home-promise-panel {
        grid-template-columns:
            1fr;
    }

}


/* ==========================================================================
   12. RESPONSIVE — MOBILE
========================================================================== */

@media (max-width: 640px) {

    .tbh-home .home-hero {
        min-height: auto;

        border-radius:
            0
            0
            20px
            20px;
    }

    .tbh-home .home-hero .hero-content {
        width: min(
            var(--home-container),
            calc(100% - (var(--tbh-page-padding-x) * 2))
        );

        padding:
            46px
            0
            38px;

        gap: 28px;
    }

    .tbh-home .home-hero-copy h1 {
        font-size:
            clamp(
                39px,
                12.5vw,
                56px
            );
    }

    .tbh-home .home-hero-copy p {
        font-size: 15px;
    }

    .tbh-home .home-hero-actions {
        gap: 9px;
    }

    .tbh-home .home-hero-secondary,
    .tbh-home .home-hero .hero-button {
        min-height: 48px;

        padding-inline:
            18px;

        font-size: 14px;
    }

    .tbh-home .home-hero-trust {
        gap:
            8px
            14px;

        margin-top: 15px;

        font-size: 11px;
    }

    .tbh-home .home-hero-art {
        min-height: 205px;
    }

    .tbh-home .home-hero-core {
        width: 145px;
        height: 145px;
    }

    .tbh-home .home-hero-core span {
        font-size: 40px;
    }

    .tbh-home .home-hero-orbit--one {
        width: 210px;
        height: 210px;
    }

    .tbh-home .home-hero-orbit--two {
        width: 270px;
        height: 135px;
    }

    .tbh-home .home-hero-orbit--three {
        width: 135px;
        height: 270px;
    }

    .tbh-home .home-float-card {
        min-width: 96px;

        padding:
            8px
            9px;

        border-radius: 12px;

        font-size: 10px;
    }

    .tbh-home .home-float-card strong {
        font-size: 17px;
    }

    .tbh-home .home-float-card--one {
        top: 8%;
        right: 0;
    }

    .tbh-home .home-float-card--two {
        top: 50%;
        right: 0;
    }

    .tbh-home .home-float-card--three {
        left: 0;
        bottom: 6%;
    }

    .tbh-home .home-float-card--four {
        left: 0;
        top: 24%;
    }


    /* ----------------------------------------------------------------------
       MOBILE CATEGORIES
    ---------------------------------------------------------------------- */

    .tbh-home .home-category-section {
        padding-top: 50px;
        padding-bottom: 34px;
    }

    .tbh-home .home-category-grid {
        grid-template-columns:
            repeat(
                2,
                minmax(0,1fr)
            );

        gap: 10px;
    }

    .tbh-home .home-category-card {
        min-height: 154px;

        padding: 15px;

        border-radius: 17px;
    }

    .tbh-home .home-category-card__icon {
        width: 52px;
        height: 52px;

        border-radius: 17px;

        font-size: 25px;
    }

    .tbh-home .home-category-card__content h3 {
        font-size: 15px;
    }

    .tbh-home .home-category-card__content span {
        font-size: 10.5px;
    }


    /* ----------------------------------------------------------------------
       MOBILE COLLECTIONS
    ---------------------------------------------------------------------- */

    .tbh-home .home-collections-section {
        padding:
            25px
            0
            52px;
    }

    .tbh-home .home-wide-container {
        width: min(
            var(--home-container),
            calc(100% - (var(--tbh-page-padding-x) * 2))
        );
    }

    .tbh-home .home-collections-heading {
        display: block;

        margin-bottom: 18px;
    }

    .tbh-home .home-collections-heading h2 {
        font-size: 31px;
    }

    .tbh-home .home-collections-heading p {
        font-size: 14px;
    }

    .tbh-home .home-text-link {
        display: inline-block;

        margin-top: 12px;

        font-size: 13px;
    }

    .tbh-home .home-collection-card {
        min-height: 220px;

        padding: 21px;

        border-radius: 20px;
    }

    .tbh-home .home-collection-card__content {
        max-width: 72%;
    }

    .tbh-home .home-collection-card__content h3 {
        font-size: 23px;
    }

    .tbh-home .home-collection-orb {
        width: 120px;
        height: 120px;

        right: -10px;

        font-size: 54px;
    }


    /* ----------------------------------------------------------------------
       MOBILE PRODUCTS
    ---------------------------------------------------------------------- */

    .tbh-home .products-section {
        padding-top: 58px;
    }

    .tbh-home .home-product-category {
        font-size: 9px;
    }

    .tbh-home .home-product-discount {
        font-size: 9px;
    }


    /* ----------------------------------------------------------------------
       MOBILE PROMISE
    ---------------------------------------------------------------------- */

    .tbh-home .home-promise-section {
        padding-bottom: 54px;
    }

    .tbh-home .home-promise-panel {
        padding: 22px;

        border-radius: 22px;
    }

    .tbh-home .home-promise-copy h2 {
        font-size: 32px;
    }

    .tbh-home .home-promise-copy p {
        font-size: 14px;
    }

    .tbh-home .home-promise-stats {
        grid-template-columns: 1fr;

        gap: 9px;
    }

    .tbh-home .home-promise-stats > div {
        min-height: 92px;
    }

}


/* ==========================================================================
   13. RESPONSIVE — VERY SMALL MOBILE
========================================================================== */

@media (max-width: 390px) {

    .tbh-home .home-hero-copy h1 {
        font-size: 40px;
    }

    .tbh-home .home-category-card {
        min-height: 148px;
    }

    .tbh-home .home-collection-card__content h3 {
        font-size: 21px;
    }

}