.herobanner .swiper-slide {
    display: grid;
    align-items: end
}

.herobanner .swiper-slide>* {
    grid-area: 1/1
}

.herobanner .swiper-slide .inner-container {
    width: 100%;
    max-width: 1920px;
    padding-left: 100px
}

.herobanner .swiper-wrapper+.container .col-lg-10 {
    position: relative
}

.herobanner .col-lg-10 {
    width: 100%
}

.herobanner .inner-container {
    padding-bottom: 8em
}

.herobanner .banner-content {
    padding: 2.5em 2em;
    background: #202020bb;
    width: fit-content;
    translate: 0 5em;
    opacity: 0;
    animation-delay: 1s
}

.herobanner picture {
    position: relative
}

.herobanner picture::after {
    content: '';
    position: absolute;
    inset: 0;
    height: 35%;
    background: transparent linear-gradient(180deg, #000000 0%, #00000000 100%) 0% 0% no-repeat padding-box;
    opacity: .5
}

.herobanner .swiper-controls {
    position: absolute;
    bottom: 60px;
    right: 0;
    width: 23em;
    z-index: 5;
    display: flex;
    align-items: center;
    column-gap: 20px
}

.herobanner .swiper-navs :is(.swiper-button-next, .swiper-button-prev) {
    border-color: var(--color-white)
}

.herobanner .swiper-navs :is(.swiper-button-next, .swiper-button-prev):hover {
    border-color: var(--color-accent)
}

.herobanner .swiper-navs :is(.swiper-button-next, .swiper-button-prev)::after {
    font-size: .8em;
    color: var(--color-white)
}

.herobanner .swiper-progress {
    display: flex;
    justify-content: space-between;
    flex-grow: 1;
    position: relative
}

.herobanner .swiper-progress .swiper-pagination-progress {
    font-size: var(--text-20);
    top: 50%;
    translate: 0 -50%;
    width: calc(100% - (1.4em * 2));
    left: 1.4em;
    background: transparent;
    border-bottom: 1px solid var(--color-white)
}

.herobanner .swiper-pagination-progress .swiper-pagination-progressbar-fill {
    background: var(--color-white)
}

.herobanner .swiper-progress .swiper-pagination-fraction {
    width: 100%;
    display: flex;
    justify-content: space-between
}

.herobanner .swiper-progress .swiper-pagination-fraction span {
    font-size: var(--text-20);
    color: var(--color-white)
}

.herobanner .inner-container .link-icon {
    translate: 0 5em;
    opacity: 0;
    animation-delay: 2.5s
}

.herobanner .inner-container span {
    font-size: var(--text-16);
    color: var(--color-secondary);
    animation-delay: 1.2s
}

.herobanner .inner-container p {
    font-size: var(--text-32);
    max-width: 11em;
    font-weight: 700;
    color: var(--color-white);
    line-height: 1.15;
    margin-bottom: .35em;
    translate: 0 2em;
    opacity: 0;
    animation-delay: 2s
}

.herobanner .swiper-slide.swiper-slide-active p {
    animation-name: fade-up;
    animation-duration: 1s;
    animation-fill-mode: both
}

.herobanner .inner-container span {
    clip-path: polygon(0 0, 0 0, 0 100%, 0 100%);
    transition-duration: 1s;
    -webkit-transition: 1s;
    -moz-transition: 1s all;
    -ms-transition: 1s all;
    -o-transition: 1s all
}

.herobanner .swiper-slide.swiper-slide-active span {
    animation-name: clip-horizontal;
    animation-duration: 1s;
    animation-fill-mode: forwards
}

.herobanner .swiper-slide.swiper-slide-active .banner-content {
    animation-name: fadeRight;
    animation-duration: 1s;
    animation-fill-mode: both
}

.herobanner .swiper-slide.swiper-slide-active .link-icon {
    animation-name: fade-up;
    animation-duration: 1s;
    animation-fill-mode: forwards
}

@keyframes clip-horizontal {
    from {
        clip-path: polygon(0 0, 0 0, 0 100%, 0 100%)
    }

    to {
        clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%)
    }
}

@keyframes fade-up {

    /* from{
        translate: 0 30%; opacity: 0;
    } */
    to {
        translate: 0 0%;
        opacity: 1;
    }
}

@keyframes fadeRight {

    /* from{
        translate: 0 30%; opacity: 0;
    } */
    to {
        translate: 0% 0;
        opacity: 1;
    }
}

@media (max-width:768px) {
    .herobanner .swiper-slide picture {
        height: auto;
        min-height: auto;
        display: block;
        width: 100%;
    }

    .herobanner .swiper-slide picture img {
        height: auto;
        width: 100%;
        object-fit: contain;
    }
}

@media (max-width:575px) {
    .herobanner .swiper-slide {
        align-items: center;
    }

    .herobanner .swiper-slide picture {
        height: auto;
    }

    .herobanner .swiper-slide .inner-container {
        padding-bottom: 2em;
        text-align: center;
        padding-inline: 13px;
        position: absolute;
        bottom: 0;
    }

    .herobanner .inner-container p {
        margin-inline: auto;
        max-width: 12em;
        font-size: var(--text-20);
    }

    .herobanner .inner-container .link-icon {
        margin-inline: auto
    }

    .herobanner .swiper-controls {
        display: flex;
        width: 100%;
        bottom: 10px;
        justify-content: center;
        column-gap: 10px;
        transform: scale(0.85);
        /* scale down slightly for mobile */
    }

    .herobanner .swiper-navs :is(.swiper-button-next, .swiper-button-prev)::after {
        margin-top: 2px
    }
}

/* =============================
PRODUCT RANGE SECTION (SHOP BY CATEGORY)
============================= */

.product-range {
    background: #fdf3ea; /* Creamy peach background */
    overflow: hidden;
    position: relative;
    padding: 80px 0 90px;
}

.product-range .section-title {
    font-size: 2.5rem;
    font-weight: 600;
    color: #333;
    margin-bottom: 15px;
}

.product-range .section-desc {
    color: #555;
    font-size: 1.1rem;
    line-height: 1.6;
}

.category-slider-container {
    padding: 0 40px; /* Space for arrows */
}

/* Category Circular Cards */
.category-circle-img {
    width: 150px;
    height: 150px;
    border-radius: 50%;
    /* Maroon/Brown Gradient Background */
   background: linear-gradient(
  to bottom,
  #b8643e 0%,
  #7d2934 45%,
  #56001f 100%
);
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    margin: 0 auto;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    box-shadow: 0 10px 20px rgba(74, 11, 31, 0.15);
}

.category-circle-img img {
    max-width: 85%;
    max-height: 85%;
    object-fit: contain;
    transition: transform 0.3s ease;
}

.swiper-slide a:hover .category-circle-img {
    transform: translateY(-5px);
    box-shadow: 0 15px 25px rgba(74, 11, 31, 0.25);
}

.swiper-slide a:hover .category-circle-img img {
    transform: scale(1.08);
}

/* Category Title */
.category-name-title {
    color: #6a1a2b; /* Dark Maroon */
    font-weight: 700;
    font-size: 1.2rem;
    margin-top: 20px;
    transition: color 0.3s ease;
}

.swiper-slide a:hover .category-name-title {
    color: #e5b07d; /* Highlight Orange */
}

/* Swiper Navigation Arrows */
.category-next {
    position: absolute;
    top: 50%;
    right: 0;
    transform: translateY(-50%);
    width: 45px;
    height: 45px;
    background: #e1a657; /* Orange */
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 10;
    cursor: pointer;
    box-shadow: 0 4px 10px rgba(225, 166, 87, 0.3);
    transition: background 0.3s ease, transform 0.2s ease;
}

.category-next:hover {
    background: #c98b3c;
    transform: translateY(-50%) scale(1.05);
}

.category-next::after {
    content: '\f105'; /* FontAwesome right arrow */
    font-family: 'Font Awesome 6 Free';
    font-weight: 900;
    font-size: 1.2rem;
    color: #fff;
}

/* Bottom Pattern Decor */
.pattern-decor {
    position: absolute;
    bottom: 20px;
    right: 20px;
    width: 100%;
    height: 40px;
    /* Placeholder for the pattern image */
    /* background: url('../images/leaf-pattern.svg') repeat-x bottom right; */
    background-size: contain;
    opacity: 0.3;
    pointer-events: none;
}

/* Responsive Adjustments */
@media (max-width: 1200px) {
    .category-circle-img {
        width: 180px;
        height: 180px;
    }
}

@media (max-width: 991px) {
    .product-range {
        padding: 60px 0;
    }
    .product-range .section-title {
        font-size: 2rem;
    }
    .category-circle-img {
        width: 160px;
        height: 160px;
    }
    .category-name-title {
        font-size: 1.1rem;
    }
}

@media (max-width: 575px) {
    .category-slider-container {
        padding: 0 10px;
    }
    .category-circle-img {
        width: 140px;
        height: 140px;
    }
    .category-next {
        width: 35px;
        height: 35px;
    }
    .category-next::after {
        font-size: 1rem;
    }
}



/* =============================
Best Sellers swiper section
============================= */


.heading-top {
    font-size: 14px;
    color: #777;
}

.section-title {
    font-size: 32px;
    font-weight: 600;
    margin-top: 5px;
}



/* HEADER */
.heading-top {
    font-size: 14px;
    letter-spacing: 1px;
    color: #777;
    display: block;
    margin-bottom: 5px;
}

.section-title {
    font-size: 28px;
    font-weight: 600;
}

/* CARD */
.hnv-card {
    background: #fff;
    transition: .35s;
    position: relative;
    overflow: hidden;
}

.hnv-card:hover {
    transform: translateY(-6px);
}

/* IMAGE */
.hnv-img-wrap {
    position: relative;
    overflow: hidden;
    background: #f2f2f2;
}

.hnv-img-wrap img {
    width: 100%;
    height: 420px;
    object-fit: cover;
    transition: .5s;
}

.hnv-card:hover img {
    transform: scale(1.05);
}

/* WISHLIST */
.hnv-wishlist {
    position: absolute;
    top: 15px;
    right: 15px;
    width: 38px;
    height: 38px;
    border-radius: 50%;
    background: #fff;
    border: none;
    font-size: 18px;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 3px 10px rgba(0, 0, 0, .08);
    transition: .3s;
}

.hnv-wishlist span {
    transition: .3s;
}

.hnv-wishlist:hover {
    background: #b00505;
}

.hnv-wishlist:hover span {
    color: #fff;
    transform: scale(1.2);
}

/* TEXT AREA */
.hnv-info {
    padding: 18px 10px 25px;
}

/* CATEGORY LABEL */
.hnv-category {
    font-size: 13px;
    border: 1px solid #ccc;
    padding: 4px 10px;
    display: inline-block;
    margin-bottom: 8px;
    background: #fff;
}

/* TITLE */
.hnv-title {
    font-size: 15px;
    font-weight: 500;
    line-height: 1.5;
    color: #222;
    margin-bottom: 8px;
    min-height: 44px;
}

/* PRICE */
.hnv-price-wrap {
    font-size: 16px;
    font-weight: 600;
    color: #111;
}

/* SWIPER FIX */
.swiper-slide {
    height: auto;
}

/* ARROWS */
.hnv-next,
.hnv-prev {
    color: #000;
}

/* RESPONSIVE */
@media(max-width:991px) {

    .hnv-img-wrap img {
        height: 360px;
    }

}

@media(max-width:575px) {

    .hnv-img-wrap img {
        height: 300px;
    }

    .hnv-title {
        font-size: 14px;
    }

}

/* ===== Product by district section ===== */
.odisha-craft-map {
    --indigo: #1f3c5a;
    --turmeric: #d4a017;
    --terracotta: #c45a2d;
    --cream: #f6f1e9;
    position: relative;
    background: #fff;
    padding: 30px 20px;
    overflow: hidden;
}

/* HEADER */
.odisha-craft-map .ocm-header {
    text-align: center;
    margin-bottom: 50px;
}

/* =============================
MANDALA DECORATION
============================= */

.ocm-mandala {
    position: absolute;
    pointer-events: none;
}


.ocm-mandala-top {
    bottom: 150px;
    left: -5px;
    width: 750px;
    z-index: 1;
    opacity: 0.3;
}

.ocm-mandala-bottom {
    animation: mandalaRotate 40s linear infinite;
    bottom: -180px;
    width: 450px;
    right: -150px;
    transform: rotate(180deg);
    opacity: 0.6;


}

@keyframes mandalaRotate {
    0% {
        transform: rotate(0deg);
    }

    100% {
        transform: rotate(360deg);
    }
}

/* LAYOUT */
.odisha-craft-map .ocm-layout {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 80px;
    flex-wrap: wrap;
    position: relative;
    z-index: 10;
}

/* District Labels */
.ocm-label {
    font-size: 120px;
    /* adjust based on your SVG size */
    fill: #000000;
    text-anchor: middle;
    dominant-baseline: middle;
    pointer-events: none;
    font-weight: 600;
}

.ocm-district {
    fill: #d9a066;
    stroke: #fff;
    stroke-width: 3px;
    cursor: pointer;
    transition: .3s;
}

.ocm-district:hover {
    fill: var(--turmeric);

}

.ocm-active {
    fill: #7a2e2a !important;
    stroke: var(--turmeric);
    stroke-width: 2;
    filter: drop-shadow(0 0 10px rgba(212, 160, 23, .7));
}

/* POPUP */
.ocm-popup {
    width: 360px;
    background: #f0edeb;
    backdrop-filter: blur(10px);
    border-radius: 16px;
    overflow: hidden;
    color: #000000;
    opacity: 0;
    transform: translateY(30px);
    transition: all 0.35s ease;
}

.ocm-popup.active {
    opacity: 1;
    transform: translateY(0);
}

.ocm-popup img {
    width: 100%;
    /* height: 220px; */
    object-fit: cover;
}

.ocm-popup-content {
    padding: 8px;
}

.ocm-popup h3 {
    color: var(--turmeric);
    margin: 0;
}

.ocm-btn {
    display: inline-block;
    margin-top: 15px;
    padding: 10px 18px;
    background: var(--terracotta);
    color: #fff;
    border-radius: 6px;
    text-decoration: none;
}

.ocm-btn:hover {
    background: #7a2e2a;
    color: #fff;
}

/* MOBILE */
@media(max-width:768px) {
    .odisha-craft-map .ocm-layout {
        flex-direction: column;
    }

    .ocm-popup {
        order: 1;
        width: 100%;
    }

    .ocm-map {
        order: 2;
        width: 100%;
    }
}

/* Story SECTION */
.craft-stories {
    background: #811515;
    color: #fff;
    padding-block: 6em;
}

/* HEADING */
.craft-stories .heading {
    margin-bottom: 1.5em;
}

.craft-stories .heading h3 {
    color: #fff;
}

.craft-stories .section-title {
    color: #fff;
}

/* SLIDER WRAPPER */
.craft-stories-slider {
    margin-top: 3rem;
}

/* SWIPER */
.craftSwiper {
    padding-bottom: 4rem;
}

.craftSwiper .swiper-wrapper {
    align-items: center;
}

/* SLIDE */
.craftSwiper .swiper-slide {
    height: auto;
    margin-right: 20px;
}

/* IMAGE */
.craftSwiper figure {
    position: relative;
}

.craftSwiper figure::after {
    content: '';
    position: absolute;
    inset: 0;
    transform: translate(1em, 2em);
    background: #000;
    opacity: 0.2;
    filter: blur(2em);
    z-index: -1;
}

.craftSwiper figure img {
    border-radius: 12px;
    width: 100%;
    max-width: 100%;
}

/* TEXT */
.craftSwiper h5 {
    margin-top: 1rem;
    font-size: 14px;
}

/* BUTTON */
.craftSwiper .btn-link .link-icon {
    background-color: #e3e0e0;
}

.craftSwiper .btn-link:hover .link-icon {
    background: #000;
}

/* NAV */
.craft-stories .swiper-button-next,
.craft-stories .swiper-button-prev {
    width: 36px;
    height: 36px;
    background: #fff;
    border-radius: 50%;
}

.craft-stories .swiper-button-next::after,
.craft-stories .swiper-button-prev::after {
    font-size: 12px;
    color: #000;
}

/* RESPONSIVE */
@media (min-width: 992px) {
    .craftSwiper .swiper-slide {
        width: 22%;
    }
}

@media (max-width: 991px) {
    .craft-stories {
        background: #ec3237;
    }

    .craft-stories .heading,
    .craft-stories .content {
        text-align: center;
    }
}


/* =============================
About Section
============================= */
.about-section {
    background: #ffffff;
    padding: 120px 0;
    position: relative;
    overflow: hidden;
}

/* LEFT BIG ART - reduced size */
.about-art {
    position: absolute;
    left: -60px;
    top: 50%;
    transform: translateY(-50%);
    width: 320px;
    height: auto;
    z-index: 0;
    pointer-events: none;
}

.about-art img {
    width: 320px;
    max-width: none;
}

/* CONTENT ABOVE ART */
.about-section .container {
    position: relative;
    z-index: 2;
}

/* HEADING */
.heading-top {
    font-size: 18px;
    font-weight: 600;
    color: #6b6b6b;
    margin-bottom: 10px;
}

.section-title {
    font-size: 44px;
    font-weight: 700;
    color: #7f2f2b;
    line-height: 1.2;
    margin-bottom: 20px;
}

.heading p {
    color: #6b6b6b;
    font-size: 16px;
    line-height: 1.7;
    max-width: 480px;
}

/* STATS */
.statistics {
    display: flex;
    flex-direction: column;
    gap: 35px;
}

.stats {
    display: flex;
    align-items: center;
    gap: 18px;
}

/* ICON CIRCLE */
.icon {
    width: 75px;
    height: 75px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
}

.icon img {
    width: 34px;
}

/* COLORS */
.bg-orange {
    background: #c57759;
}

.bg-green {
    background: #5f7353;
}

.bg-red {
    background: #9b4a43;
}

/* COUNT TEXT */
.count {
    font-size: 36px;
    font-weight: 700;
    color: #7f2f2b;
}


/* RESPONSIVE */
@media(max-width:1200px) {

    .about-art img {
        width: 520px;
    }

}

@media(max-width:991px) {

    .about-art {
        display: none;
    }

    .about-section {
        text-align: center;
        /* padding: 80px 0; */
    }

    .statistics {
        flex-direction: row;
        justify-content: center;
        flex-wrap: wrap;
        margin-top: 40px;
    }

    .stats {
        width: 45%;
        justify-content: center;
    }

    .section-title {
        font-size: 32px;
    }

}

@media(max-width:576px) {

    .section-title {
        font-size: 26px;
    }

    .stats {
        width: 100%;
    }

    .icon {
        width: 60px;
        height: 60px;
    }

    .count {
        font-size: 26px;
    }

}

/* =============================
About Section End
============================= */
.about {
    padding-block: 2em 4em;
    position: relative
}

.about .floating {
    position: absolute;
    right: 0;
    top: 0;
    z-index: -1;
    background: var(--color-light);
    max-width: 30%
}

.about .stats .text {
    font-size: var(--text-16);
    font-weight: 700
}

.about .stats {
    display: flex;
    align-items: center;
    column-gap: .77em;
    width: fit-content;
    padding-right: 30px;
    padding-left: 30px
}

.about .statistics {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding-inline: 11.33%;
    background: var(--color-light);
    position: relative
}

.about .statistics::before,
.about .statistics::after {
    content: '';
    position: absolute;
    top: 50%;
    translate: 0 -50%;
    width: 15%;
    height: .1em;
    background: #d9d9d9
}

.about .statistics::before {
    right: calc(100% - 3em)
}

.about .statistics::after {
    left: calc(100% - 3em)
}

.abt-des {
    padding-top: 80px;
    position: relative
}

.abt-left {
    position: relative
}

.abt-left figure {
    position: relative
}

.abt-left figure .playVideo {
    bottom: 50%;
    right: 50%;
    translate: 50% 50%;
    width: 80px
}

.abt-dec-img figure {
    position: absolute
}

.abt-dec-img .abt-img1 {
    position: absolute;
    bottom: -23px;
    left: -170px
}

.abt-dec-img .abt-img2 {
    position: absolute;
    bottom: -23px;
    left: -75px
}

.abt-right {
    padding-left: 7em;
    padding-right: 0;
    position: relative;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center
}

.abt-right h5 {
    font-size: var(--text-18);
    font-weight: 700;
    color: #231f27
}

.abt-right h3 {
    font-size: var(--text-40);
    font-weight: 400;
    margin-bottom: 16px;
    color: var(--color-black);
    padding-right: 1em;
    line-height: 1
}

.abt-right h3 span {
    color: var(--color-accent);
    font-weight: 700
}

.abt-right p {
    font-size: var(--text-13);
    padding-right: 60px;
    margin-bottom: 60px
}

.abt-point {
    background-color: var(--color-black);
    padding: 14px 6px;
    border-radius: 10px;
    position: absolute;
    bottom: 20px;
    left: -50px
}

.abt-point ul {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    padding-left: 0;
    margin-bottom: 0
}

.abt-point ul li {
    position: relative;
    padding-right: 20px;
    padding-left: 20px;
    text-align: center
}

.abt-point ul li a {
    color: #fff;
    text-decoration: none;
    font-size: var(--text-16)
}

.abt-point ul li::after {
    content: '';
    display: block;
    position: absolute;
    width: 4px;
    height: 4px;
    border-radius: 50%;
    background: var(--color-secondary);
    right: 0;
    top: 50%
}

.abt-point ul li:last-child::after {
    display: none
}

.about .responsive-embed iframe {
    aspect-ratio: 5/3;
    width: 100%;
    overflow: hidden
}

.about+.social-media {
    padding-top: 0
}

@media (max-width:1800px) {
    .abt-right h3 {
        padding-right: 0
    }
}

@media (max-width:1600px) {
    .abt-right {
        padding-left: 6em
    }

    .content {
        padding-left: rem
    }

    .new-arrivals {
        margin-left: 90px;
        padding: 5.4em 4em 3.4em
    }

}

@media screen and (max-width:1450px) {
    .new-arrivals {
        padding: 2.4em 2em 0
    }
}

@media screen and (max-width:1366px) {

    .new-arrivals {
        padding: 2.4em 2em 0;
        margin-left: 40px
    }
}

@media (max-width:1299px) {
    .abt-point {
        padding-inline: 0
    }

}

@media (max-width:991px) {
    .abt-right {
        padding-left: 0
    }

    .abt-right :is(p, h5, h3) {
        display: none
    }

    .abt-left {
        margin-inline: auto;
        margin-bottom: 20px
    }

    .abt-left .abt-dec-img {
        display: none
    }

    .abt-point {
        background: transparent;
        position: relative;
        left: 0
    }

    .abt-point ul li a {
        color: var(--color-dark);
        font-size: 14px;
        font-weight: 500
    }

    .abt-point ul li::after {
        background-color: var(--color-accent)
    }

    .about .statistics {
        padding-inline: 0
    }

    .about .statistics::before,
    .about .statistics::after {
        display: none
    }

    .about .heading {
        padding-inline: 20px
    }

    .abt-des {
        padding-top: 3em
    }

    .about {
        /* padding-block: 7em 2.5em; */
        position: relative
    }

    .new-arrivals {
        margin-left: 0
    }
}

@media (max-width:768px) {
    .about .statistics {
        flex-direction: column
    }

    .about .statistics .stats {
        flex-direction: column;
        position: relative;
        width: 200px;
        padding-block: 1em 1.5em;
        border-bottom: 1px solid #e0e0e0
    }

    .about .stats .text {
        text-align: center
    }

    .about .heading {
        margin-bottom: 15px
    }

    .abt-point ul li {
        padding-inline: 10px
    }

    .abt-point ul li:first-child {
        padding-left: 0
    }

    .abt-point ul li:last-child {
        padding-right: 0
    }
}

@media (max-width:360px) {
    .abt-point ul li a {
        font-size: 12px
    }
}

.media-news .container {
    background: var(--color-white);
    padding-block: 6.5em;
    border-radius: 1.54em;
    -webkit-border-radius: 1.54em;
    -moz-border-radius: 1.54em;
    -ms-border-radius: 1.54em;
    -o-border-radius: 1.54em
}

.media-news .link-icon {
    filter: drop-shadow(2px 0 2px rgba(0, 0, 0, .3));
    -webkit-filter: drop-shadow(1px 1px 3px rgba(0, 0, 0, .15))
}

.media-news .inner-container {
    display: grid;
    grid-template-columns: 38.8% 29% 29%;
    gap: 1.23em
}

.media-news .news-heading {
    display: flex;
    align-items: center;
    justify-content: center
}

.media-news .news-heading .heading {
    max-width: 21em;
    margin-block: auto
}

.media-news .news-thumb {
    position: relative;
    overflow: hidden
}

.media-news .news-thumb figure img {
    width: 100%;
    height: 100%;
    object-fit: cover
}

.media-news .news-thumb {
    color: var(--color-white)
}

.media-news .news-thumb a::before {
    content: '';
    position: absolute;
    inset: 0
}

.media-news .news-thumb:nth-child(2) {
    grid-column: 2/span 2;
    display: flex;
    flex-direction: row-reverse
}

.media-news .news-thumb:nth-child(2) .desc {
    background-color: var(--color-accent);
    width: 47%;
    padding: 2.5em;
    color: #fff;
    border-radius: .77em 0 0 .77em;
    -webkit-border-radius: .77em 0 0 .77em;
    -moz-border-radius: .77em 0 0 .77em;
    -ms-border-radius: .77em 0 0 .77em;
    -o-border-radius: .77em 0 0 .77em
}

.media-news .news-thumb:nth-child(2) figure {
    flex-grow: 1
}

.media-news .news-thumb:nth-child(2) h4 {
    margin-top: 1.15em
}

.media-news .news-thumb:nth-child(2) a:hover {
    color: var(--color-white)
}

.media-news :is(.news-thumb:nth-child(3), .news-thumb:nth-child(4)) {
    border-radius: 0 0 .77em .77em;
    -webkit-border-radius: 0 0 .77em .77em;
    -moz-border-radius: 0 0 .77em .77em;
    -ms-border-radius: 0 0 .77em .77em;
    -o-border-radius: 0 0 .77em .77em
}

.media-news :is(.news-thumb:nth-child(3), .news-thumb:nth-child(4)) figure {
    height: 100%
}

.media-news :is(.news-thumb:nth-child(3), .news-thumb:nth-child(4)) figure img {
    height: 100%;
    object-fit: cover
}

.media-news :is(.news-thumb:nth-child(3), .news-thumb:nth-child(4)) .desc {
    position: absolute;
    inset: 0;
    background-image: linear-gradient(to top, rgba(0, 0, 0, .7)3%, rgba(0, 0, 0, 0)40%);
    display: flex;
    align-items: flex-end;
    padding: 1em 1.2em;
    column-gap: 1.55em
}

.media-news :is(.news-thumb:nth-child(3), .news-thumb:nth-child(4)) time {
    font-size: var(--text-21);
    line-height: 1.1;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 2.8em;
    min-width: 2.8em;
    aspect-ratio: 1/1;
    background: var(--color-accent);
    border-radius: .5em;
    -webkit-border-radius: .5em;
    -moz-border-radius: .5em;
    -ms-border-radius: .5em;
    -o-border-radius: .5em
}

.media-news :is(.news-thumb:nth-child(3), .news-thumb:nth-child(4)) time span {
    font-size: var(--text-14)
}

.media-news :is(.news-thumb:nth-child(3), .news-thumb:nth-child(4)) time span:last-child {
    display: none
}

.media-news :is(.news-thumb:nth-child(3), .news-thumb:nth-child(4)) h4 {
    font-size: var(--text-16);
    font-weight: 300;
    margin-bottom: .7em;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden
}

.media-news .news-thumb:nth-child(5) .desc {
    background: transparent linear-gradient(247deg, #231f27 0%, #382e43 100%) 0% 0% no-repeat padding-box;
    height: 100%;
    padding: 2.3em;
    border-radius: .77em;
    -webkit-border-radius: .77em;
    -moz-border-radius: .77em;
    -ms-border-radius: .77em;
    -o-border-radius: .77em
}

.media-news :is(.news-thumb:nth-child(5), .news-thumb:nth-child(2)) h4 {
    font-size: var(--text-21);
    font-weight: 400
}

.media-news :is(.news-thumb:nth-child(5), .news-thumb:nth-child(2)) time {
    font-size: var(--text-10)
}

.media-news .news-thumb:nth-child(5) time {
    position: relative;
    display: block;
    width: 100%
}

.media-news .news-thumb:nth-child(5) time::after {
    content: '';
    position: absolute;
    right: 0;
    top: 50%;
    width: calc(100% - 8em);
    height: 1px;
    background: var(--color-white);
    opacity: .2
}

.media-news .news-thumb:nth-child(5) h4 {
    margin-top: 1.5em;
    font-weight: 300;
    padding-right: 2em
}

@media (max-width:1600px) {
    .media-news .news-thumb:nth-child(5) h4 {
        padding-right: 4em
    }
}

@media (max-width:1300px) {
    .media-news .news-thumb:nth-child(5) h4 {
        padding-right: 0
    }
}

@media (max-width:992px) {
    .media-news {
        padding-top: 3em;
        border-top: 2px solid #fff
    }

    .media-news .container {
        padding-block: 0 2em;
        background-color: transparent;
        position: relative
    }

    .media-news .container::before {
        content: '';
        position: absolute;
        inset: 0;
        top: auto;
        height: calc(100% - 8em);
        background-color: #fff;
        border-radius: .77em;
        -webkit-border-radius: .77em;
        -moz-border-radius: .77em;
        -ms-border-radius: .77em;
        -o-border-radius: .77em
    }

    .media-news .inner-container {
        grid-template-columns: 45% auto
    }

    .media-news .news-heading {
        grid-column: 1/span 2;
        margin-bottom: 40px;
        margin-bottom: 3em
    }

    .media-news .news-heading .heading {
        max-width: 100%;
        text-align: center
    }

    .media-news .news-heading a {
        margin-inline: auto
    }

    .media-news .news-thumb:nth-child(2) {
        grid-column: 1/span 2
    }

    .media-news .news-thumb:last-child {
        display: none
    }
}

.product-range {
    background-color: #eee
}

@media (max-width:575px) {
    .media-news .news-thumb:nth-child(2) {
        grid-row: 3
    }

    .media-news .news-thumb:nth-child(2) figure {
        display: none
    }

    .media-news .inner-container {
        grid-template-columns: 100%;
        column-gap: 0
    }

    .media-news .news-thumb:nth-child(2) .desc {
        flex-grow: 1;
        border-radius: .77em;
        -webkit-border-radius: .77em;
        -moz-border-radius: .77em;
        -ms-border-radius: .77em;
        -o-border-radius: .77em
    }

    .media-news .news-thumb:nth-child(4) {
        display: none
    }

    .media-news .news-heading {
        margin-bottom: 2em
    }

    .media-news .news-thumb:nth-child(3) {
        border-radius: .77em;
        -webkit-border-radius: .77em;
        -moz-border-radius: .77em;
        -ms-border-radius: .77em;
        -o-border-radius: .77em
    }

    .media-news :is(.news-thumb:nth-child(5), .news-thumb:nth-child(2)) h4 {
        font-size: 18px
    }

    .herobanner .banner-content {
        width: 100%
    }

    .herobanner .inner-container p {
        font-size: 24px
    }

    .herobanner .inner-container span {
        font-size: 16px;
        margin-bottom: 10px;
        display: block;
        font-weight: 700
    }

    header .navbar-brand {
        max-width: 120px
    }

    .new-arrivals {
        margin-left: 30px;
        padding: 4.4em 4em .4em
    }
}

@media (max-width:370px) {
    .herobanner .banner-content {
        width: 100%;
        padding: 2.5em 0
    }
}

@media (max-width:345px) {
    .media-news .container::before {
        content: '';
        position: absolute;
        inset: 0;
        top: auto;
        height: calc(100% - 10em)
    }
}

@media screen and (min-width:2500px) {
    .herobanner picture img {
        height: 850px;
        object-fit: cover
    }
}

.best-sellers .swiper-slide figure {
    position: relative
}

.best-sellers .swiper-slide figure::before {
    position: absolute;
    top: 0;
    left: -75%;
    z-index: 2;
    display: block;
    content: '';
    width: 40%;
    height: 100%;
    background: -webkit-linear-gradient(left, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, .3) 100%);
    background: linear-gradient(to right, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, .3) 100%);
    -webkit-transform: skewX(-25deg);
    transform: skewX(-25deg)
}

.best-sellers .swiper-slide:hover figure::before {
    -webkit-animation: shine .75s;
    animation: shine .75s
}

.best-sellers figure img {
    transition: transform .3s
}

.best-sellers figure:hover img {
    transform: scale(1.1)
}

#nav-tabContent .col-lg-8 figure {
    position: relative
}

#nav-tabContent .col-lg-8 figure img {
    transition: transform .3s
}

#nav-tabContent .col-lg-8 figure:hover img {
    transform: scale(1.1)
}

@-webkit-keyframes shine {
    100% {
        left: 125%;
    }
}

@keyframes shine {
    100% {
        left: 125%;
    }
}

/* =================================
   HEADING
================================= */

/* =========================
   NEW PRODUCT CARD DESIGN
========================= */
/* =============================
Product Highlight Section
============================= */
/* SECTION */

.spotlight-section {
    width: 100%;
    padding: 40px 0 60px;
    overflow: hidden;
}

.spotlight-container {
    width: 100%;
    max-width: 1200px;
    margin: auto;
    /* padding:0 40px; */
}

/* HEADER */

.spotlight-top {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 20px;
    margin-bottom: 28px;
}

.spotlight-title h2 {
    font-size: 44px;
    font-weight: 700;
    color: #7f2f2b;
    line-height: 1.2;
    margin-bottom: 12px;

}

.spotlight-line {
    width: 320px;
    height: 1px;
    background: #c2c1c0;
}

.view-all-btn {
    background: #c96b3c;
    color: white;
    border-radius: 6px;
    padding: 10px 22px;
    font-weight: 500;

    white-space: nowrap;
    border: none;
    font-size: 14px;
    transition: .3s ease;
}

.view-all-btn:hover {
    background: #a5552c;
    color: #fff;
}

/* SLIDER */

.spotlight-grid {
    display: flex;
    gap: 34px;

    overflow-x: auto;
    overflow-y: hidden;

    scroll-behavior: smooth;
    -webkit-overflow-scrolling: touch;

    padding-bottom: 10px;

    scroll-snap-type: x mandatory;

    scrollbar-width: none;
}

.spotlight-grid::-webkit-scrollbar {
    display: none;
}

/* CARD */

/* .product-card{
    flex:0 0 calc(20% - 28px);
    min-width:0;

    scroll-snap-align:start;
} */
.product-card {
    flex: 0 0 calc(20% - 28px);
    overflow: hidden;
    min-width: 0;
    scroll-snap-align: start;
    transition: border-color .2s, transform .2s;
}

/* IMAGE */

.product-image {
    position: relative;
    aspect-ratio: 3 / 4;
    background: #f0efe8;
    overflow: hidden;
    border-radius: 15px;
}

.product-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform .3s ease;
}

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

/* RATING */

.rating-badge {
    position: absolute;
    bottom: 8px;
    left: 8px;
    background: rgba(0, 0, 0, 0.264);
    color: #fff;
    border-radius: 99px;
    font-size: 11px;
    padding: 2px 8px;
    display: flex;
    align-items: center;
    gap: 4px;
    z-index: 2;
}

.rating-stars {
    color: #0db84c;
    font-size: 10px;
}

/* CONTENT */

.product-content {
    padding: 10px 12px 13px;
}

.product-title {
    font-size: 13px;
    color: var(--clr-text);
    line-height: 1.45;
    margin-bottom: 8px;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.price-row {
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    gap: 5px;
}

.price {
    font-size: 15px;
    font-weight: 600;
    color: #1a1a1a;
}

.old-price {
    font-size: 12px;
    text-decoration: line-through;
    color: #aaa9a0;
}


.discount {
    font-size: 11px;
    font-weight: 500;
    color: var(--clr-green);
    background: var(--clr-green-lt);
    padding: 1px 6px;
    border-radius: 99px;
    display: inline-flex;
    align-items: center;
    gap: 2px;
}

/* DOTS */

.slider-dots {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 10px;
    margin-top: 28px;
}

.dot {
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background: rgba(109, 53, 23, .25);
    cursor: pointer;
    transition: .3s ease;
}

.dot.active {
    width: 34px;
    border-radius: 20px;
    background: #6d3517;
}

/* LARGE TABLET */

@media(max-width:1200px) {

    .product-card {
        flex: 0 0 calc(25% - 26px);
    }

    .spotlight-title h2 {
        font-size: 48px;
    }

}

/* TABLET */

@media(max-width:900px) {

    .product-card {
        flex: 0 0 calc(33.333% - 23px);
    }

}

/* MOBILE */

@media(max-width:768px) {

    .spotlight-section {
        padding: 28px 0 40px;
    }

    .spotlight-container {
        padding: 0 16px;
    }

    .spotlight-top {
        align-items: center;
        margin-bottom: 20px;
    }

    .spotlight-title h2 {
        font-size: 36px;
        margin-bottom: 8px;
    }

    .spotlight-line {
        width: 140px;
    }

    .view-all-btn {
        padding: 12px 18px;
        font-size: 15px;
        border-radius: 6px;
    }

    .spotlight-grid {
        gap: 16px;
    }

    .product-card {
        flex: 0 0 calc(50% - 8px);
    }

    .product-image {
        border-radius: 12px;
    }

    .rating-badge {
        left: 8px;
        bottom: 8px;
        padding: 4px 7px;
        font-size: 11px;
        gap: 4px;
    }

    .rating-stars {
        font-size: 10px;
    }

    .product-content {
        padding-top: 12px;
    }

    .product-title {
        font-size: 15px;
        margin-bottom: 6px;
    }

    .price-row {
        gap: 6px;
    }

    .price {
        font-size: 15px;
    }

    .old-price,
    .discount {
        font-size: 12px;
    }

    .slider-dots {
        margin-top: 20px;
    }

}

/* SMALL MOBILE */

@media(max-width:420px) {

    .product-card {
        flex: 0 0 calc(50% - 7px);
    }

    .spotlight-title h2 {
        font-size: 26px;
    }

}

/* Wishlist */
.wishlist-btn {
    position: absolute;
    top: 8px;
    right: 8px;
    width: 30px;
    height: 30px;
    border-radius: 50%;
    background: #ffffff;
    border: 1px solid #e2e2da;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    font-size: 13px;
    color: #6b6b63;
    transition: color .15s, border-color .15s;
    z-index: 2;
}

.wishlist-btn:hover,
.wishlist-btn.active {
    color: #E24B4A;
    border-color: #f5c1c1;
}


/* ---------- FEATURED SECTION ---------- */
.featured-section {
    padding: 35px 0 30px;
    background: #fff;
}

@media (max-width: 767px) {
    .featured-section {
        padding: 22px 0 25px;
    }
}

/* ---------- FEATURED GRID ---------- */
.featured-grid {
    display: flex;
    gap: 55px;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
    padding-bottom: 4px;
    justify-content: center;
}

.featured-grid::-webkit-scrollbar {
    display: none;
}

.featured-card {
    position: relative;
    border-radius: 10px;
    overflow: hidden;
    aspect-ratio: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    text-decoration: none;
    flex: 6 3 189px;
    max-width: 180px;
    scroll-snap-align: start;
}

.featured-card:hover {
    transform: scale(1.06);
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.12);
}

.featured-card__emoji {
    font-size: 40px;
    opacity: 0.75;
}

.featured-card__img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.4s ease;
}

.featured-card:hover .featured-card__img {
    transform: scale(1.08);
}

.featured-card__label {
    position: absolute;
    bottom: 7px;
    left: 7px;
    right: 7px;
    background: rgba(255, 255, 255, 0.93);
    padding: 4px 6px;
    border-radius: 6px;
    font-weight: 600;
    font-size: 0.7rem;
    text-align: center;
    color: #333;
    backdrop-filter: blur(4px);
    line-height: 1.25;
}

/* Tablet — keep single row */
@media (max-width: 1024px) {
    .featured-grid {
        justify-content: flex-start;
    }

    .featured-card {
        flex: 0 0 120px;
        max-width: 120px;
    }

    .featured-card__emoji {
        font-size: 32px;
    }

    .featured-card__label {
        bottom: 6px;
        left: 6px;
        right: 6px;
        padding: 4px 6px;
        font-size: 0.68rem;
        border-radius: 6px;
    }
}

/* Mobile */
@media (max-width: 480px) {
    .featured-grid {
        gap: 8px;
    }

    .featured-card {
        /* flex: 0 0 90px;
        max-width: 90px; */
    }

    .featured-card__emoji {
        font-size: 24px;
    }

    .featured-card__label {
        padding: 3px 4px;
        font-size: 0.55rem;
        bottom: 4px;
        left: 4px;
        right: 4px;
    }
}



/* ============================================
   SECTION BASE
   ============================================ */
.section {
    padding: 45px 0;
    background: #fff;
}

.section .container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 20px;
}

@media (max-width: 767px) {
    .section {
        padding: 30px 0;
    }

    .section .container {
        padding: 0 12px;
    }
}



.faq-hero {

    padding: 90px 0 60px;
    text-align: center;
    background: linear-gradient(180deg, #ffffff, #f7f4ef);

}

.faq-hero h1 {

    font-size: 42px;
    font-weight: 600;
    margin-bottom: 12px;

}

.faq-hero p {

    color: var(--muted);
    max-width: 620px;
    margin: auto;

}

/* =========================
FAQ SECTION
========================= */

.faq-section {

    padding: 40px 0 90px;

}

.faq-group {

    margin-bottom: 55px;

}

.faq-group h2 {

    font-size: 20px;
    font-weight: 600;
    margin-bottom: 18px;
    color: var(--primary);
    border-left: 4px solid var(--accent);
    padding-left: 10px;

}

/* =========================
ACCORDION
========================= */

.faq-item {

    background: var(--card);
    border-radius: 12px;
    margin-bottom: 12px;
    overflow: hidden;
    box-shadow: 0 6px 18px rgba(0, 0, 0, .05);
    transition: .25s;

}

.faq-item:hover {

    transform: translateY(-2px);

}

.faq-question {

    padding: 16px 20px;
    cursor: pointer;
    font-weight: 500;
    position: relative;

}

.faq-question::after {

    content: "+";
    position: absolute;
    right: 20px;
    font-size: 22px;
    transition: .25s;

}

.faq-item.active .faq-question::after {

    transform: rotate(45deg);

}

.faq-answer {

    max-height: 0;
    overflow: hidden;
    transition: max-height .35s ease;
    padding: 0 20px;

}

.faq-answer p {

    padding-bottom: 18px;
    color: var(--muted);

}

/* =========================
RESPONSIVE
========================= */

@media(max-width:768px) {

    .faq-hero h1 {

        font-size: 30px;

    }

}

.faq-answer ul {
    padding-left: 20px;
    margin-top: 10px;
    list-style-type: disc;
}

.faq-answer ul li {
    margin-bottom: 8px;
    display: list-item;
}

.policy-hero {

    padding: 85px 0 50px;
    text-align: center;
    background: linear-gradient(180deg, #ffffff, #f7f4ef);

}

.policy-hero h1 {

    font-size: 40px;
    font-weight: 600;
    margin-bottom: 12px;

}

.policy-hero p {

    color: var(--muted);
    max-width: 680px;
    margin: auto;

}

/* =========================
CONTENT CARD
========================= */

.policy-section {

    padding: 30px 0 90px;

}

.policy-card {

    background: var(--card);
    border-radius: 14px;
    padding: 40px 38px;
    box-shadow: 0 8px 28px rgba(0, 0, 0, .05);

}

/* =========================
ITEM
========================= */

.policy-item {

    margin-bottom: 28px;
    padding-bottom: 25px;
    border-bottom: 1px solid var(--border);

}

.policy-item:last-child {

    border-bottom: none;
    margin-bottom: 0;

}

.policy-item h3 {

    font-size: 18px;
    font-weight: 600;
    margin-bottom: 8px;
    color: var(--primary);

}

.policy-item p {

    color: var(--muted);
    margin: 0 0 10px 0;

}

.policy-item ul {
    margin: 8px 0 0 0;
    padding-left: 20px;
    color: var(--muted);
    list-style-type: disc;
    /* ensures bullet dots */
}

.policy-item ul li {
    margin-bottom: 6px;
}

/* =========================
CONTACT BOX
========================= */

.policy-contact {

    margin-top: 35px;
    padding: 25px;
    border-radius: 12px;
    background: #faf7f3;
    border: 1px solid var(--border);

}

/* =========================
RESPONSIVE
========================= */

@media(max-width:768px) {

    .policy-hero h1 {

        font-size: 28px;

    }

    .policy-card {

        padding: 25px;

    }

}


.policy-hero {

    padding: 85px 0 50px;
    text-align: center;
    background: linear-gradient(180deg, #ffffff, #f7f4ef);

}

.policy-hero h1 {

    font-size: 40px;
    font-weight: 600;
    margin-bottom: 12px;

}

.policy-hero p {

    color: var(--muted);
    max-width: 650px;
    margin: auto;

}

/* =========================
CONTENT CARD
========================= */

.policy-section {

    padding: 30px 0 90px;

}

.policy-card {

    background: var(--card);
    border-radius: 14px;
    padding: 40px 38px;
    box-shadow: 0 8px 28px rgba(0, 0, 0, .05);

}

/* =========================
ITEM
========================= */

.policy-item {

    margin-bottom: 28px;
    padding-bottom: 25px;
    border-bottom: 1px solid var(--border);

}

.policy-item:last-child {

    border-bottom: none;
    margin-bottom: 0;

}

.policy-item h3 {

    font-size: 18px;
    font-weight: 600;
    margin-bottom: 8px;
    color: var(--primary);

}

.policy-item p {

    color: var(--muted);
    margin: 0 0 8px 0;

}



/* =========================
CONTACT BOX
========================= */

.policy-contact {

    margin-top: 30px;
    padding: 22px;
    border-radius: 12px;
    background: #faf7f3;
    border: 1px solid var(--border);

}

/* =========================
RESPONSIVE
========================= */

@media(max-width:768px) {

    .policy-hero h1 {

        font-size: 28px;

    }

    .policy-card {

        padding: 25px;

    }

}

.policy-item ul {
    margin: 8px 0 0 0;
    padding-left: 20px;
    color: var(--muted);
    list-style-type: disc;
    /* ensures bullet dots */
}

.policy-item ul li {
    margin-bottom: 6px;
}


.ss-spin-popup{
  position:fixed;
  inset:0;
  z-index:99999;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:20px;
  font-family:'Archivo',sans-serif;
}

.ss-spin-overlay{
  position:absolute;
  inset:0;
  background:rgba(0,0,0,.7);
  backdrop-filter:blur(8px);
}

/* =========================
MODAL
========================= */

.ss-spin-modal{
  position:relative;
  width:min(860px,92%);
  background:#fff;
  border-radius:24px;
  overflow:hidden;
  display:grid;
  grid-template-columns:.95fr 1fr;
  z-index:2;
  box-shadow:
  0 30px 80px rgba(0,0,0,.25);
  transition:.4s ease;
}

/* =========================
LEFT CONTENT
========================= */

.ss-spin-content{
  padding:34px;
  background:
  radial-gradient(circle at top left,#fff6dc 0%,#fff 60%);
  display:flex;
  flex-direction:column;
  justify-content:center;
}

.ss-badge{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:7px 14px;
  background:#111;
  color:#fff;
  border-radius:999px;
  width:max-content;
  font-size:11px;
  font-weight:700;
  letter-spacing:.5px;
  margin-bottom:14px;
}

.ss-spin-content h2{
  font-size:44px;
  line-height:1;
  font-weight:800;
  color:#111;
  margin:0 0 14px;
}

.ss-spin-content h2 span{
  display:block;
  color:#d97706;
}

.ss-spin-content p{
  font-size:15px;
  line-height:1.5;
  color:#555;
  max-width:420px;
  margin-bottom:18px;
}

/* =========================
SPIN BUTTON
========================= */

.ss-spin-btn{
  width:max-content;
  border:none;
  outline:none;
  background:
  linear-gradient(135deg,#f59e0b,#ea580c);
  color:#fff;
  padding:14px 24px;
  border-radius:12px;
  font-size:14px;
  font-weight:800;
  letter-spacing:1px;
  cursor:pointer;
  transition:.3s ease;
  box-shadow:
  0 12px 28px rgba(234,88,12,.28);
}

.ss-spin-btn:hover{
  transform:translateY(-2px);
}

/* =========================
RESULT WRAP
========================= */

.ss-result-wrap{
  width:100%;
  margin-top:20px;
}

/* =========================
RESULT
========================= */

.ss-result{
  width:100%;
  text-align:center;
}

.ss-result.show{
  animation:ssZoom .6s ease;
}

/* =========================
FINAL RESULT
========================= */

.ss-final-result{
  width:100%;
}

.ss-final-icon{
  width:90px;
  height:90px;
  margin:0 auto 20px;
  border-radius:50%;
  display:flex;
  align-items:center;
  justify-content:center;
  background:
  linear-gradient(135deg,#f59e0b,#ea580c);
  color:#fff;
  font-size:38px;
  box-shadow:
  0 20px 50px rgba(234,88,12,.28);
  animation:ssBounce 1.5s infinite;
}

.ss-final-result h3{
  font-size:34px;
  font-weight:800;
  color:#111;
  margin:0 0 12px;
}

.ss-final-text{
  font-size:22px;
  font-weight:800;
  color:#ea580c;
  line-height:1.4;
}

.ss-final-result p{
  margin-top:12px;
  font-size:15px;
  color:#666;
}

/* =========================
REDEEM BUTTON
========================= */

.ss-redeem-btn{
  width:100%;
  margin-top:22px;
  border:none;
  outline:none;
  display:none;
  align-items:center;
  justify-content:center;
  gap:10px;
  background:
  linear-gradient(135deg,#111,#2c2c2c);
  color:#fff;
  padding:15px 20px;
  border-radius:14px;
  font-size:14px;
  font-weight:700;
  cursor:pointer;
  transition:.3s ease;
}

.ss-redeem-btn:hover{
  transform:translateY(-2px);
  background:
  linear-gradient(135deg,#ea580c,#f59e0b);
}

.ss-redeem-btn.show{
  display:flex;
  animation:ssFadeUp .5s ease;
}

/* =========================
WHEEL AREA
========================= */

.ss-wheel-wrap{
  position:relative;
  display:flex;
  align-items:center;
  justify-content:center;
  background:
  linear-gradient(135deg,#ffedd5,#fff7ed);
  min-height:420px;
  overflow:hidden;
  padding:20px;
}

/* GLOW */

.ss-wheel-wrap::before{
  content:'';
  position:absolute;
  width:380px;
  height:380px;
  border-radius:50%;
  background:
  radial-gradient(circle,
  rgba(249,115,22,.18),
  transparent 70%);
}

/* =========================
POINTER
========================= */

.ss-pointer{
  position:absolute;
  top:24px;
  z-index:20;
  width:0;
  height:0;
  border-left:16px solid transparent;
  border-right:16px solid transparent;
  border-top:34px solid #111;
}

/* =========================
WHEEL
========================= */

.ss-wheel{
  position:relative;
  width:340px;
  height:340px;
  border-radius:50%;
  border:10px solid #fff;
  overflow:hidden;
  transition:transform 5s cubic-bezier(.17,.67,.18,1);
  box-shadow:
  0 20px 50px rgba(0,0,0,.16);
  background:
  conic-gradient(
    #f59e0b 0deg 45deg,
    #fb923c 45deg 90deg,
    #facc15 90deg 135deg,
    #ea580c 135deg 180deg,
    #f59e0b 180deg 225deg,
    #fb923c 225deg 270deg,
    #facc15 270deg 315deg,
    #ea580c 315deg 360deg
  );
}

/* CENTER */

.ss-wheel::after{
  content:'';
  position:absolute;
  inset:50%;
  transform:translate(-50%,-50%);
  width:64px;
  height:64px;
  border-radius:50%;
  background:#111;
  border:7px solid #fff;
  z-index:10;
}

/* =========================
SEGMENTS
========================= */

.ss-segment{
  position:absolute;
  left:50%;
  top:50%;
  transform-origin:0 0;
  width:132px;
  text-align:right;
  padding-right:12px;
  font-size:12px;
  font-weight:800;
  color:#fff;
  letter-spacing:.3px;
}

.s1{ transform:rotate(-67.5deg) translateX(30px); }
.s2{ transform:rotate(-22.5deg) translateX(30px); }
.s3{ transform:rotate(22.5deg) translateX(30px); }
.s4{ transform:rotate(67.5deg) translateX(30px); }
.s5{ transform:rotate(112.5deg) translateX(30px); }
.s6{ transform:rotate(157.5deg) translateX(30px); }
.s7{ transform:rotate(202.5deg) translateX(30px); }
.s8{ transform:rotate(247.5deg) translateX(30px); }

/* =========================
CLOSE
========================= */

.ss-spin-close{
  position:absolute;
  top:14px;
  right:14px;
  width:40px;
  height:40px;
  border:none;
  border-radius:50%;
  background:#111;
  color:#fff;
  font-size:16px;
  cursor:pointer;
  z-index:50;
  transition:.3s ease;
}

.ss-spin-close:hover{
  transform:rotate(90deg);
  background:#ea580c;
}

/* =========================
RESULT MODE
========================= */

.ss-spin-modal.ss-result-mode{
  width:min(520px,92%);
  display:flex;
  align-items:center;
  justify-content:center;
  padding:50px 30px;
  text-align:center;
}

/* =========================
ANIMATION
========================= */

@keyframes ssZoom{

  from{
    opacity:0;
    transform:scale(.7);
  }

  to{
    opacity:1;
    transform:scale(1);
  }

}

@keyframes ssFadeUp{

  from{
    opacity:0;
    transform:translateY(12px);
  }

  to{
    opacity:1;
    transform:translateY(0);
  }

}

@keyframes ssBounce{

  0%,100%{
    transform:translateY(0);
  }

  50%{
    transform:translateY(-8px);
  }

}

/* =========================
TABLET
========================= */

@media(max-width:820px){

  .ss-spin-modal{
    grid-template-columns:1fr;
  }

  .ss-spin-content{
    text-align:center;
    align-items:center;
  }

  .ss-wheel-wrap{
    min-height:auto;
    padding:10px 0 30px;
  }

  .ss-wheel{
    width:280px;
    height:280px;
  }

}

/* =========================
MOBILE
========================= */

@media(max-width:520px){

  .ss-spin-popup{
    padding:10px;
  }

  .ss-spin-modal{
    border-radius:18px;
  }

  .ss-spin-content{
    padding:26px 18px 10px;
  }

  .ss-spin-content h2{
    font-size:30px;
  }

  .ss-wheel{
    width:230px;
    height:230px;
  }

  .ss-segment{
    width:88px;
    font-size:8px;
  }

  .ss-final-icon{
    width:76px;
    height:76px;
    font-size:30px;
  }

  .ss-final-result h3{
    font-size:26px;
  }

  .ss-final-text{
    font-size:18px;
  }

}


.ss-testimonials {
    padding: 100px 0;
    background: #fffefc;
    overflow: hidden;
}

.ss-testimonials-header {
    text-align: center;
    margin-bottom: 60px;
}

.ss-label {
    display: inline-block;
    color: #b27a3d;
    font-size: 14px;
    font-weight: 600;
    letter-spacing: 2px;
    text-transform: uppercase;
    margin-bottom: 10px;
}

.ss-testimonials-header h2 {
    font-size: 36px;
    font-weight: 700;
    color: #7f2f2b;
    margin: 0;
    line-height: 1.2;
}

.ss-testimonial-item{
    position:relative;

    display:grid;
    grid-template-columns:220px 1fr;
    gap:50px;
    align-items:center;

    background:#fff;

    border:1px solid #f1e7da;
    border-radius:24px;

    padding:35px;

    box-shadow:
        0 10px 30px rgba(0,0,0,.04),
        0 2px 8px rgba(0,0,0,.03);

    overflow:hidden;
}



.ss-person-image{
    max-width:200px;
    margin:auto;
}

.ss-person-image img{
    width:100%;
    aspect-ratio:4/5;
    object-fit:cover;

    border-radius:18px;
    border:6px solid #fff;

    box-shadow:0 15px 35px rgba(0,0,0,.08);
}

.ss-testimonial-content{
    position:relative;
}

.ss-quote-icon{
    position:absolute;
    top:-20px;
    right:0;

    font-size:90px;
    color:rgba(109,53,23,.08);

    line-height:1;
}

.ss-testimonial-content blockquote{
    position:relative;
    z-index:2;

    font-size:22px;
    line-height:1.8;
    color:#333;

    margin-bottom:25px;
}

.ss-person-info{
    border-top:1px solid #eee;
    padding-top:15px;
}

.ss-person-info h3{
    font-size:20px;
    color:#222;
    margin-bottom:4px;
}

.ss-person-info p{
    font-size:14px;
    color:#888;
}

.ss-nav {
    margin-top: 60px;

    display: flex;
    align-items: center;
    justify-content: left;
    gap: 25px;
}

.ss-prev,
.ss-next {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background: #f0eaea;

    display: flex;
    align-items: center;
    justify-content: center;

    cursor: pointer;

    transition: all .3s ease;
}

.ss-prev:hover,
.ss-next:hover {
    transform: translateY(-3px);
}

.ss-prev i,
.ss-next i {
    color: #222;
}

.swiper-pagination {
    position: relative !important;
    top: 20px !important;
    width: auto !important;
}

.swiper-pagination-bullet {
    width: 10px;
    height: 10px;
    background: #c8c8c8;
    opacity: 1;
}

.swiper-pagination-bullet-active {
    /* background: #b27a3d; */
    width: 34px;
    border-radius: 20px;
    background: #6d3517;
}

@media (max-width: 991px) {

    .ss-testimonials {
        padding: 70px 0;
    }

    .ss-testimonials-header h2 {
        font-size: 32px;
    }

    .ss-testimonial-item {
        grid-template-columns: 1fr;
        gap: 30px;
        text-align: center;
    }

    .ss-person-image {
        max-width: 220px;
    }

    .ss-quote-icon {
        margin-bottom: 15px;
    }

    .ss-person-info {
        margin-top: 25px;
    }

}

@media (max-width: 767px) {

    .ss-testimonials {
        padding: 50px 0;
    }

    .ss-testimonials-header {
        margin-bottom: 35px;
    }

    .ss-testimonials-header h2 {
        font-size: 28px;
    }

    .ss-testimonial-item {
        grid-template-columns: 1fr;
        gap: 18px;
        text-align: center;
        padding: 20px;
        border-radius: 18px;
    }

    .ss-person-image {
        max-width: 140px;
    }

    .ss-person-image img {
        border-radius: 14px;
        border-width: 4px;
    }

    .ss-testimonial-content blockquote {
        font-size: 16px;
        line-height: 1.7;
        margin-bottom: 16px;
    }

    .ss-quote-icon {
        font-size: 60px;
        top: -10px;
        right: 50%;
        transform: translateX(50%);
    }

    .ss-person-info {
        margin-top: 0;
        padding-top: 12px;
    }

    .ss-person-info h3 {
        font-size: 18px;
    }

    .ss-person-info p {
        font-size: 13px;
    }

    .ss-nav {
        margin-top: 25px;
        gap: 15px;
    }

    .ss-prev,
    .ss-next {
        width: 36px;
        height: 36px;
    }
}

@media (max-width: 480px) {

    .ss-testimonials-header h2 {
        font-size: 24px;
    }

    .ss-person-image {
        max-width: 120px;
    }

    .ss-testimonial-item {
        padding: 18px;
    }

    .ss-testimonial-content blockquote {
        font-size: 15px;
        line-height: 1.6;
    }

    .ss-quote-icon {
        font-size: 50px;
    }

    .ss-person-info h3 {
        font-size: 17px;
    }
}

.ss-testimonial-slider {
    overflow: visible !important;
    padding: 20px 0 40px;
}

.ss-testimonial-slider .swiper-wrapper {
    align-items: center;
}

.ss-testimonial-slider .swiper-slide {
    opacity: .4;
    transform: scale(.92);
    transition: all .4s ease;
}

.ss-testimonial-slider .swiper-slide-active {
    opacity: 1;
    transform: scale(1);
}

.ss-testimonials .container {
    max-width: 1400px;
}

.ss-testimonial-slider {
    overflow: visible;
}

.ss-testimonial-slider .swiper-slide-prev,
.ss-testimonial-slider .swiper-slide-next {
    opacity: .65;
    transform: scale(.95);
}

/* =============================
NEW PRODUCT CARD STYLES
============================= */

.product-card.new-design {
    background: transparent;
    border: none;
    box-shadow: none;
    padding: 0;
    margin: 0;
}

.product-card.new-design .product-image {
    border-radius: 8px;
    overflow: hidden;
}

/* Wishlist Button Overlay */
.wishlist-overlay-btn {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.7);
    border: none;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #666;
    font-size: 14px;
    transition: all 0.2s ease;
    cursor: pointer;
    backdrop-filter: blur(4px);
}

.wishlist-overlay-btn:hover {
    background: #fff;
    color: #e74c3c;
}

/* Rating Badge Overlay */
.rating-overlay-badge {
    background: rgba(255, 255, 255, 0.9);
    padding: 4px 8px;
    border-radius: 6px;
    font-size: 11px;
    font-weight: 600;
    color: #333;
    display: flex;
    align-items: center;
    gap: 4px;
    box-shadow: 0 2px 5px rgba(0,0,0,0.1);
}

/* Add & Buy Now Buttons */
.btn-card-add {
    flex: 1;
    background: #c98b3c;
    color: #fff;
    border: none;
    border-radius: 6px;
    padding: 8px 0;
    font-size: 13px;
    font-weight: 600;
    transition: background 0.2s;
}

.btn-card-add:hover {
    background: #b57a32;
}

.btn-card-buy {
    flex: 1;
    background: #7a2e2a;
    color: #fff;
    border: none;
    border-radius: 6px;
    padding: 8px 0;
    font-size: 13px;
    font-weight: 600;
    transition: background 0.2s;
}

.btn-card-buy:hover {
    background: #63231f;
}

/* Featured Section Swiper Navigation */
.featured-next {
    position: absolute;
    top: 50%;
    right: -25px;
    transform: translateY(-50%);
    width: 40px;
    height: 40px;
    background: #e1a657;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 10;
    cursor: pointer;
    box-shadow: 0 4px 10px rgba(225, 166, 87, 0.3);
    transition: background 0.3s ease, transform 0.2s ease;
}

.featured-next:hover {
    background: #c98b3c;
    transform: translateY(-50%) scale(1.05);
}

.featured-next::after {
    content: '\f105';
    font-family: 'Font Awesome 6 Free';
    font-weight: 900;
    font-size: 1.2rem;
    color: #fff;
}

@media (max-width: 768px) {
    .featured-next {
        display: none !important;
    }
}

/* Exclusive Collection Grid */
.exclusive-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    grid-auto-rows: 240px;
    gap: 15px;
}
.exclusive-item {
    border-radius: 8px;
    overflow: hidden;
    display: block;
}
.exclusive-item img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.4s ease;
}
.exclusive-item:hover img {
    transform: scale(1.04);
}

/* Specific Grid Placements */
.exclusive-item.item-1 { grid-column: span 1; grid-row: span 2; }
.exclusive-item.item-2 { grid-column: span 2; grid-row: span 1; }
.exclusive-item.item-3 { grid-column: span 1; grid-row: span 1; }
.exclusive-item.item-4 { grid-column: span 1; grid-row: span 1; }
.exclusive-item.item-5 { grid-column: span 2; grid-row: span 1; }

/* Responsive */
@media (max-width: 991px) {
    .exclusive-grid {
        grid-template-columns: repeat(2, 1fr);
        grid-auto-rows: 200px;
    }
    .exclusive-item.item-1 { grid-column: span 2; grid-row: span 1; }
    .exclusive-item.item-2 { grid-column: span 2; grid-row: span 1; }
    .exclusive-item.item-3 { grid-column: span 1; grid-row: span 1; }
    .exclusive-item.item-4 { grid-column: span 1; grid-row: span 1; }
    .exclusive-item.item-5 { grid-column: span 2; grid-row: span 1; }
}
@media (max-width: 575px) {
    .exclusive-grid {
        display: flex;
        flex-direction: column;
        gap: 10px;
    }
    .exclusive-item {
        height: auto;
        width: 100%;
        display: flex;
    }
    .exclusive-item img {
        height: auto; /* Let it scale proportionally */
    }
}