@charset "UTF-8";
@import "./base.css";

#toast-container {
    top: 70px !important;
}

.swal2-close {
    border: none !important;
    outline: none !important;
    box-shadow: none !important;
    font-size: 24px !important;
    transition: all 0.2s ease;
}

.swal2-close:hover {
    color: #90090C !important;
}

/* start customcursor*/

.cursor1 {
    position: fixed;
    width: 40px;
    height: 40px;
    border: 1px solid var(--color-primary) !important;
    border-radius: 50%;
    left: 0;
    top: 0;
    pointer-events: none;
    transform: translate(-50%, -50%);
    transition: 0.15s;
    z-index: 999;
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
}

.cursor1.hide {
    opacity: 0;
    visibility: hidden;
}

@media (max-width: 1200px) {
    .cursor1 {
        display: none;
    }
}

.cursor2 {
    position: fixed;
    width: 8px;
    height: 8px;
    background-color: var(--color-primary) !important;
    border-radius: 50%;
    left: 0;
    top: 0;
    pointer-events: none;
    transform: translate(-50%, -50%);
    transition: 0.2s;
    z-index: 999;
}

.cursor2.hide {
    opacity: 0;
    visibility: hidden;
}

.cursor2.circle {
    width: 60px;
    height: 60px;
}

@media (max-width: 1200px) {
    .cursor2 {
        display: none;
    }
}

/* end customcursor*/

.nav-icons ul li a.animated-search-trigger {
    text-decoration: none;
    display: flex;
    align-items: center;
}

.search-box {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 8px 16px;
    border: 1px solid #e0e0e0;
    border-radius: 40px;
    background: #f8f8f8;
    transition: all 0.3s ease;
    min-width: 280px;
    /* Normal flex direction - items in order they appear in HTML */
    flex-direction: row;
}

.search-box:hover {
    border-color: var(--color-primary, #8B4513);
    background: white;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05);
}

.search-box svg {
    flex-shrink: 0;
    order: 2;
    /* Force SVG to the right */
}

.animated-placeholder {
    color: #666;
    font-size: 14px;
    font-weight: 400;
    white-space: nowrap;
    overflow: hidden;
    border-right: 2px solid transparent;
    text-align: left;
    flex: 1;
    order: 1;
    /* Force text to the left */
}

/* Remove the default underline effect */
.nav-icons ul li a.animated-search-trigger::after {
    display: none;
}

.cart-icon-wrapper,
.wishlist-icon-wrapper {
    position: relative;
}

.cart-icon-wrapper .cart-link,
.wishlist-icon-wrapper .wishlist-link {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
}

.cart-badge,
.wishlist-badge {
    position: absolute;
    top: -14px;
    right: -14px;
    background: var(--color-primary);
    color: white;
    width: 24px;
    height: 24px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 12px;
    font-weight: 600;
    min-width: 24px;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.15);
    transition: all 0.3s ease;
}

.cart-badge:empty,
.cart-badge[data-count="0"],
.wishlist-badge:empty,
.wishlist-badge[data-count="0"] {
    display: none;
}

#main nav .header-strip {
    padding: 8px 32px;
    background-color: var(--color-primary);
}

#main nav .header-strip p {
    color: var(--color-white);
    text-align: center;
    font-size: 14px !important;
    font-style: normal;
    font-weight: 500;
    line-height: 150%;
}

#main nav .header-strip p span {
    color: var(--color-white);
    font-size: 14px;
    font-style: normal;
    font-weight: 500;
    line-height: 150%;
    text-decoration-line: underline;
    text-decoration-style: solid;
    -webkit-text-decoration-skip: ink;
    text-decoration-skip-ink: auto;
    text-decoration-thickness: auto;
    text-underline-offset: auto;
    text-underline-position: from-font;
    cursor: pointer;
}

#main nav .nav-container {
    display: grid;
    grid-template-columns: 1fr auto 1fr;
    align-items: center;
    padding: 20px 30px;
}

/* ===== STICKY NAVBAR ===== */
#main nav .nav-container.nav-fixed {
    position: fixed !important;
    top: 0;
    left: 0;
    right: 0;
    z-index: 1000;
    background: #fff;
    box-shadow: 0 2px 20px rgba(0, 0, 0, 0.08);
    animation: slideDown 0.3s ease;
}

@keyframes slideDown {
    from {
        transform: translateY(-100%);
        opacity: 0;
    }

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

nav.scrolled .nav-container {
    box-shadow: 0 2px 20px rgba(0, 0, 0, 0.1);
}

.nav-placeholder {
    display: block;
}

#main nav .nav-container .nav-pages {
    justify-self: start;
}

#main nav .nav-container .nav-pages ul {
    display: flex;
    gap: 30px;
    align-items: center;
}

#main nav .nav-container .nav-pages ul li a {
    color: var(--color-black);
    text-decoration: none;
    font-weight: 600;
    position: relative;
    transition: color 0.3s;
}

#main nav .nav-container .nav-pages ul li a::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: -2px;
    width: 0%;
    height: 2px;
    background: var(--color-primary);
    transition: width 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

#main nav .nav-container .nav-pages ul li a:hover {
    color: var(--color-primary);
}

#main nav .nav-container .nav-pages ul li a:hover::after {
    width: 100%;
}

#main nav .nav-container .logo {
    justify-self: center;
    display: flex;
    align-items: center;
    height: 100%;
}

/*PY*/
#main nav .nav-container .logo img {
    width: 136px;
    height: auto;
    max-height: 76px;
}

#main nav .nav-container .nav-icons {
    justify-self: end;
}

#main nav .nav-container .nav-icons ul {
    display: flex;
    align-items: center;
    gap: 25px;
}

#main {
    /* Updated CSS for hero section with swiper */
}

#main .hero-swiper {
    padding: 0 30px;
    position: relative;
}

#main .hero-swiper-container {
    width: 100%;
    height: 100%;
    border-radius: 16px;
    overflow: hidden;
}

#main .hero {
    position: relative;
    width: 100%;
    height: 550px;
}

#main .hero img {
    width: 100%;
    height: 550px;
    -o-object-fit: cover;
    object-fit: cover;
    border-radius: 16px;
}

#main .hero .content {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 100%;
    padding: 0 20px;
    z-index: 2;
}

#main .hero .content h2 {
    color: var(--color-primary);
    text-align: center;
    font-size: 48px;
    font-style: normal;
    font-weight: 600;
    line-height: 120%;
    letter-spacing: -0.96px;
    text-shadow: 0 2px 4px rgba(255, 255, 255, 0.5);
}

#main .hero .content p {
    color: var(--color-black);
    text-align: center;
    font-variant-numeric: ordinal;
    font-feature-settings: "dlig" on;
    font-size: 16px;
    font-style: normal;
    font-weight: 500;
    line-height: 150%;
    margin-top: 20px;
    text-shadow: 0 1px 2px rgba(255, 255, 255, 0.5);
}

#main .hero .content .btn-container {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 20px;
    margin-top: 20px;
}

#main .hero .content .btn-container .btn1 {
    display: flex;
    padding: 8px 24px;
    align-items: flex-start;
    gap: 8px;
    border-radius: 6px;
    background: var(--color-primary);
    color: var(--color-white);
    text-align: center;
    font-variant-numeric: ordinal;
    font-feature-settings: "dlig" on;
    font-size: 16px;
    font-style: normal;
    font-weight: 500;
    line-height: 150%;
    transition: all 0.3s ease;
    text-decoration: none;
    border: none;
}

#main .hero .content .btn-container .btn1:hover {
    background: #78070a;
}

#main .hero .content .btn-container .btn2 {
    display: flex;
    padding: 8px 24px;
    justify-content: center;
    align-items: center;
    gap: 10px;
    border-radius: 6px;
    border: 1px solid var(--color-primary);
    background: rgba(255, 255, 255, 0.2);
    backdrop-filter: blur(5px);
    color: var(--color-primary);
    text-align: center;
    font-variant-numeric: ordinal;
    font-feature-settings: "dlig" on;
    font-size: 16px;
    font-style: normal;
    font-weight: 500;
    line-height: 150%;
    transition: all 0.3s ease;
    text-decoration: none;
}

#main .hero .content .btn-container .btn2:hover {
    background-color: var(--color-primary);
    color: var(--color-white);
}

#main {
    /* Navigation Arrows */
}

#main .hero-swiper-button-next,
#main .hero-swiper-button-prev {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 44px;
    height: 44px;
    background: rgba(144, 9, 12, 0.8);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    z-index: 10;
    transition: all 0.3s ease;
    backdrop-filter: blur(4px);
}

#main .hero-swiper-button-next svg,
#main .hero-swiper-button-prev svg {
    width: 24px;
    height: 24px;
}

#main .hero-swiper-button-next svg path,
#main .hero-swiper-button-prev svg path {
    stroke: white;
}

#main .hero-swiper-button-next:hover,
#main .hero-swiper-button-prev:hover {
    background: var(--color-primary);
    transform: translateY(-50%) scale(1.1);
}

#main .hero-swiper-button-next.swiper-button-disabled,
#main .hero-swiper-button-prev.swiper-button-disabled {
    opacity: 0.4;
    cursor: not-allowed;
}

#main .hero-swiper-button-next.swiper-button-disabled:hover,
#main .hero-swiper-button-prev.swiper-button-disabled:hover {
    background: rgba(144, 9, 12, 0.8);
    transform: translateY(-50%);
}

#main .hero-swiper-button-next {
    right: 20px;
}

#main .hero-swiper-button-prev {
    left: 20px;
}

#main {
    /* Pagination Dots */
}

#main .hero-swiper-pagination {
    position: absolute;
    bottom: 20px !important;
    left: 0;
    right: 0;
    display: flex;
    justify-content: center;
    gap: 8px;
    z-index: 10;
}

#main .hero-swiper-pagination .swiper-pagination-bullet {
    width: 10px;
    height: 10px;
    background: rgba(255, 255, 255, 0.6);
    opacity: 0.7;
    border-radius: 50%;
    cursor: pointer;
    transition: all 0.3s ease;
    margin: 0 4px !important;
    border: 1px solid var(--color-primary);
}

#main .hero-swiper-pagination .swiper-pagination-bullet:hover {
    background: white;
    opacity: 1;
}

#main .hero-swiper-pagination .swiper-pagination-bullet-active {
    background: var(--color-primary);
    width: 30px;
    border-radius: 5px;
    opacity: 1;
}

#main {
    /* Responsive styles */
}

@media (max-width: 768px) {
    #main .hero-swiper {
        padding: 0 15px;
    }

    #main .hero {
        height: 450px;
    }

    #main .hero img {
        height: 450px;
    }

    #main .hero .content h2 {
        font-size: 32px;
        letter-spacing: -0.64px;
    }

    #main .hero .content p {
        font-size: 14px;
    }

    #main .hero .content p br {
        display: none;
    }

    #main .hero .content .btn-container {
        flex-direction: column;
        gap: 10px;
    }

    #main .hero .content .btn-container .btn1,
    #main .hero .content .btn-container .btn2 {
        width: 200px;
        justify-content: center;
    }

    #main .hero-swiper-button-next,
    #main .hero-swiper-button-prev {
        width: 36px;
        height: 36px;
    }

    #main .hero-swiper-button-next svg,
    #main .hero-swiper-button-prev svg {
        width: 20px;
        height: 20px;
    }
}

@media (max-width: 480px) {
    #main .hero {
        height: 400px;
    }

    #main .hero img {
        height: 400px;
    }

    #main .hero .content h2 {
        font-size: 24px;
    }
}

#main {
    /* Updated CSS for click-based dropdown - make sure these styles are included */
}

/* Skeleton loader for Bestsellers / Trending sections */
.skeleton-product-grid {
    display: flex;
    gap: 20px;
    overflow: hidden;
    padding: 4px 0;
}

.skeleton-card {
    flex: 0 0 calc(25% - 15px);
    min-width: 0;
    background: #fff;
    border-radius: 8px;
    padding: 12px;
}

@media (max-width: 1023px) {
    .skeleton-card {
        flex: 0 0 calc(50% - 10px);
    }

    .skeleton-card:nth-child(n+3) {
        display: none;
    }
}

@media (max-width: 767px) {
    .skeleton-card {
        flex: 0 0 100%;
    }

    .skeleton-card:nth-child(n+2) {
        display: none;
    }
}

.skeleton-img {
    width: 100%;
    height: 200px;
    border-radius: 6px;
    background: #e0e0e0;
}

.skeleton-line {
    border-radius: 4px;
    background: #e0e0e0;
    display: block;
}

@keyframes skeleton-shimmer {
    0% {
        background-position: -400px 0;
    }

    100% {
        background-position: 400px 0;
    }
}

.skeleton-pulse {
    background: linear-gradient(90deg, #e0e0e0 25%, #f0f0f0 50%, #e0e0e0 75%);
    background-size: 800px 100%;
    animation: skeleton-shimmer 1.4s infinite linear;
}

#main .our-bestseller {
    padding: 50px 30px;
    margin-top: 32px;
    background-color: #f4f8ec;
    position: relative;
}

#main .our-bestseller .heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding-bottom: 30px;
    position: relative;
}

#main .our-bestseller .heading h3 {
    color: var(--color-primary);
    font-size: 40px;
    font-style: normal;
    font-weight: 600;
    line-height: 120%;
    letter-spacing: -0.8px;
}

#main .our-bestseller .heading .swiper-nav-buttons {
    display: flex;
    gap: 30px;
    margin-left: 20px;
    align-items: center;
}

#main .our-bestseller .heading .swiper-nav-buttons .button-wrapper {
    display: flex;
    gap: 10px;
}

#main .our-bestseller .heading .swiper-nav-buttons .button-wrapper .swiper-button-next,
#main .our-bestseller .heading .swiper-nav-buttons .button-wrapper .swiper-button-prev {
    position: relative;
    top: auto;
    left: auto;
    right: auto;
    margin-top: 0;
    width: 44px;
    height: 44px;
    background: var(--color-white);
    border-radius: 50%;
    box-shadow: 0 2px 12px rgba(0, 0, 0, 0.1);
    transition: all 0.3s ease;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    color: var(--color-primary);
}

#main .our-bestseller .heading .swiper-nav-buttons .button-wrapper .swiper-button-next svg,
#main .our-bestseller .heading .swiper-nav-buttons .button-wrapper .swiper-button-prev svg {
    width: 24px;
    height: 24px;
    color: var(--color-primary);
    transition: all 0.3s ease;
}

#main .our-bestseller .heading .swiper-nav-buttons .button-wrapper .swiper-button-next:hover,
#main .our-bestseller .heading .swiper-nav-buttons .button-wrapper .swiper-button-prev:hover {
    background: var(--color-primary);
    color: var(--color-white) !important;
}

#main .our-bestseller .heading .swiper-nav-buttons .button-wrapper .swiper-button-next:hover svg,
#main .our-bestseller .heading .swiper-nav-buttons .button-wrapper .swiper-button-prev:hover svg {
    color: var(--color-white);
}

#main .our-bestseller .heading .swiper-nav-buttons .button-wrapper .swiper-button-next.swiper-button-disabled,
#main .our-bestseller .heading .swiper-nav-buttons .button-wrapper .swiper-button-prev.swiper-button-disabled {
    opacity: 0.4;
    cursor: not-allowed;
}

#main .our-bestseller .heading .swiper-nav-buttons .button-wrapper .swiper-button-next.swiper-button-disabled:hover,
#main .our-bestseller .heading .swiper-nav-buttons .button-wrapper .swiper-button-prev.swiper-button-disabled:hover {
    background: var(--color-white);
}

#main .our-bestseller .heading .swiper-nav-buttons .button-wrapper .swiper-button-next.swiper-button-disabled:hover svg,
#main .our-bestseller .heading .swiper-nav-buttons .button-wrapper .swiper-button-prev.swiper-button-disabled:hover svg {
    color: var(--color-primary);
}

#main .our-bestseller .swiper {
    width: 100%;
}

#main .our-bestseller .swiper .swiper-wrapper {
    display: flex;
}

#main .our-bestseller .swiper .swiper-slide {
    height: auto;
}

#main .our-bestseller .swiper .swiper-slide .product-card {
    height: 100%;
    margin: 0 10px;
    display: flex;
    flex-direction: column;
}

#main .our-bestseller .swiper .swiper-slide .product-card .img-container {
    position: relative;
    width: 100%;
    height: 330px;
    overflow: hidden;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center center;
    object-position: center center;
    border-radius: 8px;
}

#main .our-bestseller .swiper .swiper-slide .product-card .img-container img {
    position: absolute;
    z-index: 4;
    width: 100%;
    height: 100%;
    transition: all 0.3s ease;
}

#main .our-bestseller .swiper .swiper-slide .product-card .img-container span {
    position: absolute;
    z-index: 5;
    padding: 6px 20px;
    border-radius: 8px 0;
    background: var(--color-secondary);
    color: var(--color-primary);
    font-size: 14px;
    font-style: normal;
    font-weight: 500;
    line-height: 150%;
}

#main .our-bestseller .swiper .swiper-slide .product-card .img-container .wishlist {
    display: flex;
    width: 45px;
    height: 45px;
    padding: 15px 11px 11px 11px;
    justify-content: center;
    align-items: center;
    gap: 8px;
    aspect-ratio: 1/1;
    position: absolute;
    right: 16px;
    top: 16px;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.92);
    box-shadow: 0 12px 24px 0 rgba(0, 0, 0, 0.2);
    z-index: 5;
    cursor: pointer;
    transition: all 0.3s ease;
}

.wishlist.active {
    background: #90090C !important;
}

.wishlist.active svg path {
    stroke: white !important;
    fill: white !important;
}

.wishlist.active i {
    color: white !important;
}

#main .our-bestseller .swiper .swiper-slide .product-card h3 {
    color: var(--color-black);
    font-size: 20px;
    font-style: normal;
    font-weight: 500;
    line-height: 130%;
    letter-spacing: -0.2px;
    margin-top: 10px;
}

#main .our-bestseller .swiper .swiper-slide .product-card p {
    color: #696969;
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: 150%;
    margin-top: 10px;
    flex-grow: 1;
}

#main .our-bestseller .swiper .swiper-slide .product-card .star {
    margin-top: 10px;
    display: flex;
    align-items: center;
    gap: 4px;
}

#main .our-bestseller .swiper .swiper-slide .product-card .star span {
    color: #696969;
    font-size: 12px;
    font-style: normal;
    font-weight: 400;
    line-height: 150%;
    margin-left: 8px;
}

#main .our-bestseller .swiper .swiper-slide .product-card h4 {
    color: var(--color-black);
    font-size: 20px;
    font-style: normal;
    font-weight: 600;
    line-height: 130%;
    letter-spacing: -0.2px;
    margin-top: 10px;
}

#main .our-bestseller .swiper .swiper-slide .product-card .product-footer {
    display: flex;
    gap: 10px;
    margin-top: 20px;
    width: 100%;
    flex-direction: column;
}

#main .our-bestseller .swiper .swiper-slide .product-card .product-footer .dropdown {
    position: relative;
    flex: 1;
}

#main .our-bestseller .swiper .swiper-slide .product-card .product-footer .dropdown .dropdown-btn {
    width: 100%;
    padding: 9px 12px;
    background: white;
    border: 1px solid #ddd;
    border-radius: 4px;
    color: var(--color-primary);
    font-size: 14px;
    font-weight: 500;
    display: flex;
    align-items: center;
    justify-content: space-between;
    cursor: pointer;
    transition: all 0.3s ease;
}

#main .our-bestseller .swiper .swiper-slide .product-card .product-footer .dropdown .dropdown-btn svg {
    transition: transform 0.3s ease;
}

#main .our-bestseller .swiper .swiper-slide .product-card .product-footer .dropdown .dropdown-btn:hover {
    border-color: var(--color-primary);
}

#main .our-bestseller .swiper .swiper-slide .product-card .product-footer .dropdown .dropdown-content {
    display: none;
    position: absolute;
    bottom: 100%;
    left: 0;
    right: 0;
    background: white;
    border: 1px solid #ddd;
    border-radius: 4px;
    margin-bottom: 5px;
    z-index: 10;
    box-shadow: 0 -2px 10px rgba(0, 0, 0, 0.1);
}

#main .our-bestseller .swiper .swiper-slide .product-card .product-footer .dropdown .dropdown-content a {
    display: block;
    padding: 8px 12px;
    text-decoration: none;
    color: var(--color-primary);
    font-size: 14px;
    transition: all 0.3s ease;
    cursor: pointer;
}

#main .our-bestseller .swiper .swiper-slide .product-card .product-footer .dropdown .dropdown-content a:hover {
    background: var(--color-secondary);
}

#main .our-bestseller .swiper .swiper-slide .product-card .product-footer .dropdown {
    /* Active state for click */
}

#main .our-bestseller .swiper .swiper-slide .product-card .product-footer .dropdown.active .dropdown-btn {
    border-color: var(--color-primary);
}

#main .our-bestseller .swiper .swiper-slide .product-card .product-footer .dropdown.active .dropdown-btn svg {
    transform: rotate(180deg);
}

#main .our-bestseller .swiper .swiper-slide .product-card .product-footer .dropdown.active .dropdown-content {
    display: block;
}

#main .our-bestseller .swiper .swiper-slide .product-card .product-footer .add-to-cart-btn {
    flex: 1;
    display: flex;
    padding: 12px 16px;
    justify-content: center;
    align-items: center;
    gap: 8px;
    border-radius: 4px;
    background: var(--color-primary);
    color: var(--color-white);
    font-size: 14px;
    font-weight: 500;
    line-height: 150%;
    border: none;
    cursor: pointer;
    transition: all 0.3s ease;
    white-space: nowrap;
}

#main .our-bestseller .swiper .swiper-slide .product-card .product-footer .add-to-cart-btn:hover {
    background-color: #78070a;
}

#main .our-bestseller .swiper .bestseller-swiper-pagination {
    position: relative;
    bottom: 0;
    margin-top: 20px;
}

#main .our-bestseller .swiper .bestseller-swiper-pagination .swiper-pagination-bullet {
    width: 8px;
    height: 8px;
    background: #ccc;
    opacity: 0.7;
    transition: all 0.3s ease;
}

#main .our-bestseller .swiper .bestseller-swiper-pagination .swiper-pagination-bullet-active {
    background: var(--color-primary);
    opacity: 1;
    transform: scale(1.2);
}

@media (max-width: 767px) {
    #main .our-bestseller .heading .swiper-nav-buttons .button-wrapper {
        display: none;
    }

    #main .our-bestseller .swiper .swiper-slide {
        width: 100%;
    }

    #main .our-bestseller .swiper .swiper-slide .product-footer {
        flex-direction: column;
    }

    #main .our-bestseller .swiper .swiper-slide .product-footer .dropdown,
    #main .our-bestseller .swiper .swiper-slide .product-footer .add-to-cart-btn {
        width: 100%;
    }
}

@media (min-width: 768px) and (max-width: 1023px) {
    #main .our-bestseller .swiper .swiper-slide {
        width: 50%;
    }
}

@media (min-width: 1024px) {
    #main .our-bestseller .swiper .swiper-slide {
        width: 25%;
    }
}

#main .shop-categories {
    padding: 50px 30px;
    background-color: var(--color-white);
    margin: 0 auto;
}

#main .shop-categories .heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding-bottom: 30px;
}

#main .shop-categories .heading h3 {
    color: var(--color-primary);
    font-size: 40px;
    font-weight: 600;
    letter-spacing: -0.8px;
}

#main .shop-categories .heading span {
    color: var(--color-primary);
    font-size: 20px;
    font-weight: 400;
    display: flex;
    align-items: center;
    gap: 20px;
}

#main .shop-categories .img-grid {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    grid-template-areas: "oil rice honey" "oil sugar honey";
    gap: 20px;
}

@media (max-width: 992px) {
    #main .shop-categories .img-grid {
        grid-template-columns: 1fr 1fr;
        grid-template-areas: "oil rice" "sugar honey";
    }
}

@media (max-width: 600px) {
    #main .shop-categories .img-grid {
        grid-template-columns: 1fr;
        grid-template-areas: "oil" "rice" "sugar" "honey";
    }
}

#main .shop-categories .item {
    position: relative;
    border-radius: 8px;
    overflow: hidden;
    height: 100%;
}

#main .shop-categories .item img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    transition: transform 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

#main .shop-categories .item:hover img {
    transform: scale(1.15);
}

#main .shop-categories .item .content {
    position: absolute;
    top: 0;
    left: 0;
    padding: 20px;
    color: var(--color-white);
}

#main .shop-categories .item .content h3 {
    font-size: 28px;
    font-weight: 500;
}

#main .shop-categories .item .content p {
    font-size: 14px;
    line-height: 150%;
    margin-top: 10px;
}

#main .shop-categories .item .content a {
    display: inline-block;
    padding: 6px 16px;
    border-radius: 4px;
    border: 1px solid var(--color-white);
    color: var(--color-white);
    margin-top: 20px;
    transition: all 0.3s ease;
}

#main .shop-categories .item .content a:hover {
    background-color: var(--color-white);
    color: var(--color-black);
}

#main .shop-categories .oil {
    grid-area: oil;
    height: 520px;
}

#main .shop-categories .rice {
    grid-area: rice;
    height: 250px;
}

#main .shop-categories .sugar {
    grid-area: sugar;
    height: 250px;
}

#main .shop-categories .honey {
    grid-area: honey;
    height: 520px;
}

#main .trending-product {
    padding: 50px 30px;
    background-color: #f4f8ec;
    position: relative;
}

#main .trending-product .heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding-bottom: 30px;
}

#main .trending-product .heading h3 {
    color: var(--color-primary);
    font-size: 40px;
    font-weight: 600;
    line-height: 120%;
}

#main .trending-product .heading .swiper-nav-buttons {
    display: flex;
    gap: 30px;
    align-items: center;
}

#main .trending-product .heading .swiper-nav-buttons .button-wrapper {
    display: flex;
    gap: 10px;
}

#main .trending-product .heading .swiper-nav-buttons .button-wrapper .swiper-button-next,
#main .trending-product .heading .swiper-nav-buttons .button-wrapper .swiper-button-prev {
    position: relative;
    width: 44px;
    height: 44px;
    background: var(--color-white);
    border-radius: 50%;
    box-shadow: 0 2px 12px rgba(0, 0, 0, 0.1);
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    color: var(--color-primary);
}

#main .trending-product .swiper {
    width: 100%;
}

#main .trending-product .swiper .swiper-slide {
    height: auto;
}

#main .trending-product .swiper .swiper-slide .product-card {
    height: 100%;
    margin: 0 10px;
    display: flex;
    flex-direction: column;
}

@media (max-width: 767px) {
    #main .trending-product .swiper-slide {
        width: 100%;
    }
}

@media (min-width: 768px) and (max-width: 1023px) {
    #main .trending-product .swiper-slide {
        width: 50%;
    }
}

@media (min-width: 1024px) {
    #main .trending-product .swiper-slide {
        width: 25%;
    }
}

#main .cta {
    width: 100%;
    height: 650px;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center center;
    object-position: center center;
    overflow: hidden;
    position: relative;
}

#main .cta img {
    width: 100%;
    height: 100%;
}

#main .cta .content {
    position: absolute;
    top: 0;
    left: 50%;
    transform: translate(-50%, 50px);
    text-align: center;
}

#main .cta .content h2 {
    color: #2c390e;
    text-align: center;
    font-size: 48px;
    font-style: normal;
    font-weight: 800;
    line-height: 120%;
    letter-spacing: -0.96px;
}

#main .cta .content p {
    color: #2c390e;
    text-align: center;
    font-size: 20px;
    font-style: normal;
    font-weight: 400;
    line-height: 150%;
    letter-spacing: -0.2px;
    margin-top: 12px;
}

#main .cta .content a {
    display: inline-block;
    padding: 8px 24px;
    gap: 8px;
    border-radius: 6px;
    background: #2c390e;
    margin-top: 20px;
    color: var(--color-white);
    transition: all 0.3s ease;
}

#main .cta .content a:hover {
    background: #415515;
}

#main .shop-by-concern {
    padding: 50px 30px;
    position: relative;
}

#main .shop-by-concern .heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding-bottom: 30px;
    position: relative;
}

#main .shop-by-concern .heading h3 {
    color: var(--color-primary);
    font-size: 40px;
    font-style: normal;
    font-weight: 600;
    line-height: 120%;
    letter-spacing: -0.8px;
}

#main .shop-by-concern .swiper-nav-buttons {
    display: flex;
    gap: 30px;
    align-items: center;
    justify-content: center;
}

#main .shop-by-concern .swiper-nav-buttons span {
    color: var(--color-primary);
    font-size: 20px;
    font-style: normal;
    font-weight: 400;
    line-height: 150%;
    letter-spacing: -0.2px;
    display: flex;
    align-items: center;
    gap: 20px;
}

#main .shop-by-concern .button-wrapper {
    display: flex;
    gap: 10px;
}

#main .shop-by-concern .swiper-button-next,
#main .shop-by-concern .swiper-button-prev {
    position: relative;
    top: auto;
    left: auto;
    right: auto;
    margin-top: 0;
    width: 44px;
    height: 44px;
    background: var(--color-white);
    border-radius: 50%;
    box-shadow: 0 2px 12px rgba(0, 0, 0, 0.1);
    transition: all 0.3s ease;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    color: var(--color-primary);
}

#main .shop-by-concern .swiper-button-next svg,
#main .shop-by-concern .swiper-button-prev svg {
    width: 24px;
    height: 24px;
    color: var(--color-primary);
    transition: all 0.3s ease;
}

#main .shop-by-concern .swiper-button-next:hover,
#main .shop-by-concern .swiper-button-prev:hover {
    background: var(--color-primary);
    color: var(--color-white) !important;
}

#main .shop-by-concern .swiper-button-next:hover svg,
#main .shop-by-concern .swiper-button-prev:hover svg {
    color: var(--color-white);
}

#main .shop-by-concern .swiper-button-next.swiper-button-disabled,
#main .shop-by-concern .swiper-button-prev.swiper-button-disabled {
    opacity: 0.4;
    cursor: not-allowed;
}

#main .shop-by-concern .swiper-button-next.swiper-button-disabled:hover,
#main .shop-by-concern .swiper-button-prev.swiper-button-disabled:hover {
    background: var(--color-white);
}

#main .shop-by-concern .swiper-button-next.swiper-button-disabled:hover svg,
#main .shop-by-concern .swiper-button-prev.swiper-button-disabled:hover svg {
    color: var(--color-primary);
}

#main .shop-by-concern .nav-pills {
    width: 25%;
    padding-right: 20px;
}

#main .shop-by-concern .nav-pills .nav-link {
    color: #696969;
    font-size: 18px;
    font-weight: 500;
    padding: 15px 20px;
    margin-bottom: 14px;
    border-radius: 8px;
    text-align: center;
    transition: all 0.3s ease;
    border: 1px solid #415515;
    background: var(--color-white);
}

#main .shop-by-concern .nav-pills .nav-link.active {
    background-color: var(--color-primary);
    color: #fff;
}

#main .shop-by-concern .nav-pills .nav-link:not(.active):hover {
    background-color: rgba(74, 124, 89, 0.1);
}

#main .shop-by-concern .tab-content {
    width: 75%;
}

#main .shop-by-concern .swiper {
    width: 100%;
}

#main .shop-by-concern .swiper .swiper-wrapper {
    display: flex;
}

#main .shop-by-concern .swiper .swiper-slide {
    height: auto;
}

#main .shop-by-concern .product-card {
    height: 100%;
    margin: 0 10px;
    border-radius: 8px;
    overflow: hidden;
    transition: transform 0.3s ease;
}

#main .shop-by-concern .product-card:hover {
    transform: translateY(-5px);
}

#main .shop-by-concern .product-card h3 {
    color: var(--color-black);
    font-size: 20px;
    font-style: normal;
    font-weight: 500;
    line-height: 130%;
    letter-spacing: -0.2px;
    margin-top: 10px;
}

#main .shop-by-concern .product-card p {
    color: #696969;
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: 150%;
    margin-top: 10px;
}

#main .shop-by-concern .product-card h4 {
    color: var(--color-black);
    font-size: 20px;
    font-style: normal;
    font-weight: 600;
    line-height: 130%;
    letter-spacing: -0.2px;
    margin-top: 10px;
}

#main .shop-by-concern .product-card .star {
    margin-top: 10px;
    display: flex;
    align-items: center;
    gap: 4px;
}

#main .shop-by-concern .product-card .star span {
    color: #696969;
    font-size: 12px;
    font-style: normal;
    font-weight: 400;
    line-height: 150%;
    margin-left: 8px;
}

#main .shop-by-concern .img-container {
    position: relative;
    width: 100%;
    height: 330px;
    overflow: hidden;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center center;
    object-position: center center;
    transition: all 0.3s ease;
    border-radius: 8px;
}

#main .shop-by-concern .img-container img {
    position: absolute;
    z-index: 4;
    width: 100%;
    height: 100%;
    transition: all 0.3s ease;
}

#main .shop-by-concern .img-container .wishlist {
    display: flex;
    width: 45px;
    height: 45px;
    padding: 15px 11px 11px 11px;
    justify-content: center;
    align-items: center;
    gap: 8px;
    aspect-ratio: 1/1;
    position: absolute;
    right: 16px;
    top: 16px;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.92);
    box-shadow: 0 12px 24px 0 rgba(0, 0, 0, 0.2);
    z-index: 5;
}

#main .shop-by-concern .img-container .hover-actions {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 12px;
    opacity: 0;
    visibility: hidden;
    transition: all 0.3s ease;
    z-index: 6;
    border-radius: 8px;
}

#main .shop-by-concern .img-container .hover-actions::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(255, 255, 255, 0.66);
    z-index: -1;
    border-radius: 8px;
}

#main .shop-by-concern .img-container:hover .hover-actions {
    opacity: 1;
    visibility: visible;
}

#main .shop-by-concern .action-btn {
    padding: 12px 24px;
    background: var(--color-secondary);
    color: var(--color-primary);
    font-weight: 600;
    cursor: pointer;
    border-radius: 6px;
    transition: all 0.3s ease;
    min-width: 160px;
    text-align: center;
    font-size: 14px;
    border: none;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 8px;
    position: relative;
    z-index: 7;
}

#main .shop-by-concern .action-btn:hover {
    background: #f5d976;
}

#main .shop-by-concern .action-btn.primary {
    background: var(--color-primary);
    color: var(--color-white);
}

#main .shop-by-concern .action-btn.primary:hover {
    background: #78070a;
}

#main .shop-by-concern .bestseller-swiper-pagination {
    position: relative;
    bottom: 0;
    margin-top: 20px;
}

#main .shop-by-concern .swiper-pagination-bullet {
    width: 8px;
    height: 8px;
    background: #ccc;
    opacity: 0.7;
    transition: all 0.3s ease;
}

#main .shop-by-concern .swiper-pagination-bullet-active {
    background: var(--color-primary);
    opacity: 1;
    transform: scale(1.2);
}

#main .testimonial {
    padding: 50px 30px;
    position: relative;
}

#main .testimonial .heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding-bottom: 30px;
    position: relative;
}

#main .testimonial .heading h3 {
    color: var(--color-primary);
    font-size: 40px;
    font-style: normal;
    font-weight: 600;
    line-height: 120%;
    letter-spacing: -0.8px;
}

#main .testimonial .heading .swiper-nav-buttons {
    display: flex;
    gap: 30px;
    /* margin-left: 20px; */
    align-items: center;
}

#main .testimonial .heading .swiper-nav-buttons span {
    color: var(--color-primary);
    font-size: 20px;
    font-style: normal;
    font-weight: 400;
    line-height: 150%;
    letter-spacing: -0.2px;
    display: flex;
    align-items: center;
    gap: 20px;
}

#main .testimonial .heading .swiper-nav-buttons .button-wrapper {
    display: flex;
    gap: 10px;
}

#main .testimonial .heading .swiper-nav-buttons .button-wrapper .swiper-button-next,
#main .testimonial .heading .swiper-nav-buttons .button-wrapper .swiper-button-prev {
    position: relative;
    top: auto;
    left: auto;
    right: auto;
    margin-top: 0;
    width: 44px;
    height: 44px;
    background: var(--color-white);
    border-radius: 50%;
    box-shadow: 0 2px 12px rgba(0, 0, 0, 0.1);
    transition: all 0.3s ease;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    color: var(--color-primary);
}

#main .testimonial .heading .swiper-nav-buttons .button-wrapper .swiper-button-next svg,
#main .testimonial .heading .swiper-nav-buttons .button-wrapper .swiper-button-prev svg {
    width: 24px;
    height: 24px;
    color: var(--color-primary);
    transition: all 0.3s ease;
}

#main .testimonial .heading .swiper-nav-buttons .button-wrapper .swiper-button-next:hover,
#main .testimonial .heading .swiper-nav-buttons .button-wrapper .swiper-button-prev:hover {
    background: var(--color-primary);
    color: var(--color-white) !important;
}

#main .testimonial .heading .swiper-nav-buttons .button-wrapper .swiper-button-next:hover svg,
#main .testimonial .heading .swiper-nav-buttons .button-wrapper .swiper-button-prev:hover svg {
    color: var(--color-white);
}

#main .testimonial .heading .swiper-nav-buttons .button-wrapper .swiper-button-next.swiper-button-disabled,
#main .testimonial .heading .swiper-nav-buttons .button-wrapper .swiper-button-prev.swiper-button-disabled {
    opacity: 0.4;
    cursor: not-allowed;
}

#main .testimonial .heading .swiper-nav-buttons .button-wrapper .swiper-button-next.swiper-button-disabled:hover,
#main .testimonial .heading .swiper-nav-buttons .button-wrapper .swiper-button-prev.swiper-button-disabled:hover {
    background: var(--color-white);
}

#main .testimonial .heading .swiper-nav-buttons .button-wrapper .swiper-button-next.swiper-button-disabled:hover svg,
#main .testimonial .heading .swiper-nav-buttons .button-wrapper .swiper-button-prev.swiper-button-disabled:hover svg {
    color: var(--color-primary);
}

#main .testimonial .swiper {
    width: 100%;
}

#main .testimonial .swiper .swiper-wrapper {
    display: flex;
}

#main .testimonial .swiper .swiper-slide {
    height: auto;
}

#main .testimonial .swiper .swiper-slide .info-card {
    padding: 20px;
    border-radius: 16px;
    border: 1px solid #afafaf;
    background: var(--color-white);
}

#main .testimonial .swiper .swiper-slide .info-card .info {
    display: flex;
    align-items: center;
    gap: 20px;
    padding-bottom: 20px;
}

#main .testimonial .swiper .swiper-slide .info-card .info .content span {
    color: var(--color-black);
    font-size: 20px;
    font-style: normal;
    font-weight: 600;
    line-height: 130%;
    letter-spacing: -0.2px;
}

#main .testimonial .swiper .swiper-slide .info-card .info .content p {
    color: #878787;
    font-size: 12px;
    font-style: normal;
    font-weight: 400;
    line-height: 150%;
}

#main .testimonial .swiper .swiper-slide .info-card .para-wrapper p {
    color: var(--color-black);
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 150%;
}

#main .testimonial .swiper .testimonial-swiper-pagination {
    position: relative;
    bottom: 0;
    margin-top: 20px;
}

#main .testimonial .swiper .testimonial-swiper-pagination .swiper-pagination-bullet {
    width: 8px;
    height: 8px;
    background: #ccc;
    opacity: 0.7;
    transition: all 0.3s ease;
}

#main .testimonial .swiper .testimonial-swiper-pagination .swiper-pagination-bullet-active {
    background: var(--color-primary);
    opacity: 1;
    transform: scale(1.2);
}

#main .testimonial .card-container {
    display: none;
}

#main .our-strength {
    padding: 50px 30px;
    background-color: #f4f8ec;
}

#main .our-strength .heading {
    text-align: center;
}

#main .our-strength .heading h2 {
    color: var(--supporting-green);
    text-align: center;
    font-size: 40px;
    font-style: normal;
    font-weight: 600;
    line-height: 120%;
    letter-spacing: -0.8px;
}

#main .our-strength .heading p {
    color: var(--supporting-green);
    text-align: center;
    font-size: 20px;
    font-style: normal;
    font-weight: 400;
    line-height: 150%;
    letter-spacing: -0.2px;
    padding-top: 12px;
}

#main .our-strength .heading a {
    display: inline-block;
    padding: 8px 24px;
    border-radius: 6px;
    background: var(--supporting-green);
    transition: all 0.3s ease;
    color: var(--color-white);
    margin-top: 20px;
}

#main .our-strength .heading a:hover {
    background: #2c390e;
}

#main .our-strength .icon-wrapper {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 20px;
    margin-top: 50px;
    padding: 0 60px;
}

#main .our-strength .icon-wrapper .icon-box {
    display: flex;
    padding: 30px 68px;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 24px;
    border-radius: 16px;
    background: #dce6d0;
}

#main .our-strength .icon-wrapper .icon-box span {
    color: var(--supporting-green);
    text-align: center;
    font-size: 20px;
    font-style: normal;
    font-weight: 500;
    line-height: 130%;
    letter-spacing: -0.2px;
}

#main .video {
    position: relative;
    height: 80vh;
}

#main .video .video-player-wrapper {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%) scale(1.1);
    z-index: 2;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
}

#main .video .video-player-wrapper .video-thumbnail {
    position: relative;
    width: 800px;
    height: 500px;
    -o-object-fit: cover;
    object-fit: cover;
    border-radius: 18px;
}

#main .video .video-player-wrapper .video-thumbnail img {
    width: 100%;
    height: 100%;
    display: block;
    border-radius: 18px;
}

#main .video .video-player-wrapper .video-thumbnail #video-play-btn {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    background: var(--color-white);
    border: none;
    border-radius: 50%;
    width: 64px;
    height: 64px;
    display: flex;
    justify-content: center;
    align-items: center;
    cursor: pointer;
    z-index: 3;
    transition: 0.2s ease;
}

#main .video .video-player-wrapper .video-thumbnail #video-play-btn svg circle {
    fill: var(--color-white);
}

#main .video .video-player-wrapper .video-thumbnail #video-play-btn svg polygon {
    fill: #2c390e;
}

#main .video .video-player-wrapper .video-thumbnail #video-play-btn:hover {
    background: var(--color-primary);
    transform: translate(-50%, -50%) scale(1.05);
}

#main .video .video-player-wrapper #main-video {
    display: none;
    border-radius: 18px;
    width: 800px;
    height: 500px;
    -o-object-fit: cover;
    object-fit: cover;
}

#main .video .bg-img {
    width: 100%;
    height: auto;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center center;
    object-position: center center;
    position: absolute;
    bottom: 0;
}

#main .video .bg-img img {
    width: 100%;
    display: block;
}

#main .our-blog {
    padding: 50px 30px;
    position: relative;
}

#main .our-blog .heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding-bottom: 30px;
    position: relative;
}

#main .our-blog .heading h3 {
    color: var(--color-primary);
    font-size: 40px;
    font-style: normal;
    font-weight: 600;
    line-height: 120%;
    letter-spacing: -0.8px;
}

#main .our-blog .heading .swiper-nav-buttons {
    display: flex;
    gap: 30px;
    margin-left: 20px;
    align-items: center;
}

#main .our-blog .heading .swiper-nav-buttons span {
    color: var(--color-primary);
    font-size: 20px;
    font-style: normal;
    font-weight: 400;
    line-height: 150%;
    letter-spacing: -0.2px;
    display: flex;
    align-items: center;
    gap: 20px;
}

#main .our-blog .heading .swiper-nav-buttons .button-wrapper {
    display: flex;
    gap: 10px;
}

#main .our-blog .heading .swiper-nav-buttons .button-wrapper .swiper-button-next,
#main .our-blog .heading .swiper-nav-buttons .button-wrapper .swiper-button-prev {
    position: relative;
    top: auto;
    left: auto;
    right: auto;
    margin-top: 0;
    width: 44px;
    height: 44px;
    background: var(--color-white);
    border-radius: 50%;
    box-shadow: 0 2px 12px rgba(0, 0, 0, 0.1);
    transition: all 0.3s ease;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    color: var(--color-primary);
}

#main .our-blog .heading .swiper-nav-buttons .button-wrapper .swiper-button-next svg,
#main .our-blog .heading .swiper-nav-buttons .button-wrapper .swiper-button-prev svg {
    width: 24px;
    height: 24px;
    color: var(--color-primary);
    transition: all 0.3s ease;
}

#main .our-blog .heading .swiper-nav-buttons .button-wrapper .swiper-button-next:hover,
#main .our-blog .heading .swiper-nav-buttons .button-wrapper .swiper-button-prev:hover {
    background: var(--color-primary);
    color: var(--color-white) !important;
}

#main .our-blog .heading .swiper-nav-buttons .button-wrapper .swiper-button-next:hover svg,
#main .our-blog .heading .swiper-nav-buttons .button-wrapper .swiper-button-prev:hover svg {
    color: var(--color-white);
}

#main .our-blog .heading .swiper-nav-buttons .button-wrapper .swiper-button-next.swiper-button-disabled,
#main .our-blog .heading .swiper-nav-buttons .button-wrapper .swiper-button-prev.swiper-button-disabled {
    opacity: 0.4;
    cursor: not-allowed;
}

#main .our-blog .heading .swiper-nav-buttons .button-wrapper .swiper-button-next.swiper-button-disabled:hover,
#main .our-blog .heading .swiper-nav-buttons .button-wrapper .swiper-button-prev.swiper-button-disabled:hover {
    background: var(--color-white);
}

#main .our-blog .heading .swiper-nav-buttons .button-wrapper .swiper-button-next.swiper-button-disabled:hover svg,
#main .our-blog .heading .swiper-nav-buttons .button-wrapper .swiper-button-prev.swiper-button-disabled:hover svg {
    color: var(--color-primary);
}

#main .our-blog .swiper {
    width: 100%;
}

#main .our-blog .swiper .swiper-wrapper {
    display: flex;
}

#main .our-blog .swiper .swiper-slide {
    height: auto;
}

#main .our-blog .swiper .swiper-slide .product-card {
    height: 100%;
    margin: 0 10px;
}

#main .our-blog .swiper .swiper-slide .product-card .img-container {
    position: relative;
    width: 100%;
    height: 270px;
    overflow: hidden;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center center;
    object-position: center center;
    transition: all 0.3s ease;
    border-radius: 8px;
    margin-bottom: 10px;
}

#main .our-blog .swiper .swiper-slide .product-card .img-container img {
    position: absolute;
    z-index: 4;
    width: 100%;
    height: 100%;
    transition: opacity 0.3s ease;
}

#main .our-blog .swiper .swiper-slide .product-card span {
    color: #696969;
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: 150%;
}

#main .our-blog .swiper .swiper-slide .product-card h3 {
    color: var(--color-black);
    font-size: 20px;
    font-style: normal;
    font-weight: 500;
    line-height: 130%;
    letter-spacing: -0.2px;
    margin-top: 10px;
}

#main .our-blog .swiper .swiper-slide .product-card p {
    color: #696969;
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: 150%;
    margin-top: 5px;
    margin-bottom: 8px !important;
}

#main .our-blog .swiper .swiper-slide .product-card a {
    padding: 8px 24px;
    border-radius: 6px;
    border: 1px solid var(--color-primary);
    color: var(--color-primary);
    text-align: center;
    font-variant-numeric: ordinal;
    font-feature-settings: "dlig" on;
    font-size: 16px;
    font-style: normal;
    font-weight: 500;
    line-height: 150%;
    display: inline-block;

    transition: all 0.3s ease;
    width: -moz-max-content;
    width: max-content;
}

#main .our-blog .swiper .swiper-slide .product-card a:hover {
    background-color: var(--color-primary);
    color: var(--color-white);
}

#main .our-blog .swiper .blog-swiper-pagination {
    position: relative;
    bottom: 0;
    margin-top: 20px;
}

#main .our-blog .swiper .blog-swiper-pagination .swiper-pagination-bullet {
    width: 8px;
    height: 8px;
    background: #ccc;
    opacity: 0.7;
    transition: all 0.3s ease;
}

#main .our-blog .swiper .blog-swiper-pagination .swiper-pagination-bullet-active {
    background: var(--color-primary);
    opacity: 1;
    transform: scale(1.2);
}

#main .our-blog .card-container {
    display: none;
}

#main footer {
    background: linear-gradient(180deg, #deefff 0%, #fff 21.63%);
    padding: 80px 0px 50px;
    position: relative;
}

#main footer .row {
    padding: 0 80px;
    justify-content: space-between;
}

#main footer .row .card1 img {
    width: 100px;
}

#main footer .row .card1 h2 {
    color: var(--color-primary);
    font-size: 36px;
    font-style: normal;
    font-weight: 600;
    line-height: 120%;
    letter-spacing: -0.72px;
    margin-top: 24px;
}

#main footer .row .card1 a {
    padding: 12px 32px;
    border-radius: 8px;
    background: #5b2825;
    color: var(--color-white);
    display: inline-block;
    margin-top: 24px;
    font-size: 16px;
    font-weight: 600;
    transition: all 0.3s ease;
}

#main footer .row .card1 a:hover {
    background-color: #4a211e;
}

#main footer .row .card2 span {
    color: var(--color-black);
    font-size: 20px;
    font-style: normal;
    font-weight: 600;
    line-height: 120%;
    letter-spacing: -0.2px;
}

#main footer .row .card2 ul {
    margin-top: 24px;
}

#main footer .row .card2 ul li {
    margin-bottom: 12px;
}

#main footer .row .card2 ul li a {
    color: #696969;
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 150%;
    letter-spacing: -0.16px;
}

#main footer .row .card3 span {
    color: var(--color-black);
    font-size: 20px;
    font-style: normal;
    font-weight: 600;
    line-height: 120%;
    letter-spacing: -0.2px;
}

#main footer .row .card3 p {
    color: #696969;
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 150%;
    letter-spacing: -0.16px;
    margin-top: 24px;
}

#main footer .row .card3 .email {
    color: var(--color-black);
    font-size: 20px;
    font-style: normal;
    font-weight: 600;
    line-height: 130%;
    letter-spacing: -0.2px;
    display: block;
    margin-top: 24px;
}

#main footer .row .card3 a {
    display: inline-block;
    color: #696969;
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 150%;
    letter-spacing: -0.16px;
    margin-top: 8px;
}

#main footer .follw-us {
    padding: 40px 80px 20px;
    text-align: center;
    margin: 0;
}

#main footer .follw-us span {
    color: var(--color-black);
    font-size: 18px;
    font-style: normal;
    font-weight: 600;
    line-height: 150%;
    letter-spacing: -0.18px;
}

#main footer .follw-us ul {
    justify-content: center;
    display: flex;
    align-items: center;
    gap: 24px;
    margin-top: 16px;
}

#main footer .follw-us ul li a {
    color: #1e2810;
    transition: all 0.3s ease;
}

#main footer .follw-us ul li a:hover {
    color: var(--color-primary);
    transform: translateY(-2px);
}

#main footer .follw-us ul li a i {
    font-size: 18px;
}

#main footer .copyright {
    margin-top: 40px;
    margin-bottom: 80px;
    padding: 0 80px;
    border-top: 1px solid #eee;
    padding-top: 24px;
}

#main footer .copyright .d-flex {
    gap: 10px;
}

#main footer .copyright .d-flex a,
#main footer .copyright .d-flex span {
    color: var(--color-black);
    font-size: 16px;
    font-style: normal;
    font-weight: 500;
    line-height: 150%;
    letter-spacing: -0.16px;
}

#main footer .copyright .col-md-8 p {
    color: var(--color-black);
    text-align: right;
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 150%;
    letter-spacing: -0.16px;
}

#main footer .copyright .col-md-8 p a {
    color: var(--color-black);
    text-align: right;
    font-size: 16px;
    font-style: normal;
    font-weight: 600;
    line-height: 150%;
    letter-spacing: -0.16px;
    transition: all 0.3s ease;
}

#main footer .copyright .col-md-8 p a:hover {
    color: var(--color-primary);
}

#main footer .frame {
    position: absolute;
    bottom: 0;
    width: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    height: auto;
}

#main footer .frame img {
    width: 100%;
    height: 100%;
}

@media (max-width: 768px) {
    #main nav .header-strip {
        padding: 8px 16px;
    }

    #main nav .header-strip p {
        font-size: 12px !important;
    }

    #main nav .nav-container {
        padding: 15px 5px 85px;
        /* Pushed sides to the edges (5px) and adjusted top padding */
        display: flex;
        justify-content: space-between;
        align-items: center;
        position: sticky;
        /* Sticky Header */
        top: 0;
        z-index: 1000;
        /* Ensure stays on top while scrolling */
        background: #fff;
        box-shadow: 0 2px 10px rgba(0, 0, 0, 0.05);
        /* Subtle depth */
    }

    #main nav .nav-container .nav-pages {
        display: none;
    }

    #main nav .nav-container .logo {
        position: absolute;
        left: 50%;
        transform: translateX(-50%);
        z-index: 10;
        display: flex;
        align-items: center;
        justify-content: center;
    }

    #main nav .nav-container .logo img {
        width: 115px;
        /* Larger Width as requested */
        height: auto;
        max-height: none !important;
        /* Allow more height */
    }

    #main nav .nav-container .mobile-menu-toggle {
        position: relative;
        z-index: 11;
    }

    #main nav .nav-container .mobile-menu-toggle .menu-text {
        display: none;
    }

    #main nav .nav-container .nav-icons {
        position: relative;
        z-index: 11;
        max-width: 90px;
        /* Tighter container for icons */
    }

    #main nav .nav-container .nav-icons ul {
        gap: 3px;
        /* Minimal gaps for maximum space */
        justify-content: flex-end;
    }

    #main nav .nav-container .nav-icons ul li svg {
        width: 16px !important;
        /* Smaller icons as requested */
        height: 16px !important;
    }

    #main nav .nav-container .nav-icons ul li .profile-link {
        width: 20px !important;
        height: 20px !important;
    }

    /* Pull badges inward to avoid hitting the logo */
    #main nav .nav-container .nav-icons ul li .cart-badge,
    #main nav .nav-container .nav-icons ul li .wishlist-badge {
        width: 16px !important;
        height: 16px !important;
        min-width: 16px !important;
        font-size: 10px !important;
        top: -8px !important;
        right: -4px !important;
    }

    #main nav .nav-container .mobile-menu-toggle {
        order: 1;
        margin-right: 0;
    }

    #main nav .nav-container .nav-icons {
        order: 3;
        flex: 0 1 auto;
    }

    #main nav .nav-container .nav-icons ul {
        gap: 8px;
        /* Extra tight spacing to avoid overlap */
    }

    /* Small icons as requested */
    #main nav .nav-container .nav-icons ul li svg {
        width: 18px !important;
        height: 18px !important;
    }

    #main nav .nav-container .nav-icons ul li .profile-link {
        width: 15px !important;
        height: 28px !important;
    }

    #main nav .nav-container .nav-icons ul {
        gap: 10px;
        /* Reduced to avoid overlap */
    }

    #main nav .nav-container .nav-icons ul li:not(:nth-child(1)):not(:nth-child(3)) {
        /* Removed display: none to show wishlist and profile icons */
    }

    #main nav .nav-container .mobile-menu-toggle {
        display: flex;
        align-items: center;
        background: none;
        border: none;
        font-size: 20px;
        color: var(--color-black);
        cursor: pointer;
        z-index: 1001;
        gap: 8px;
    }

    #main nav .nav-container .mobile-menu-toggle .menu-text {
        font-size: 16px;
        font-weight: 600;
    }

    #main nav .nav-container .mobile-menu-toggle .fa-times {
        display: none;
    }

    #main nav .nav-container .mobile-menu-toggle.active .fa-bars {
        display: none;
    }

    #main nav .nav-container .mobile-menu-toggle.active .fa-times {
        display: block;
    }

    #main nav .nav-container .mobile-menu-toggle.active .menu-text {
        display: none;
    }

    #main .mobile-menu-overlay {
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background: var(--color-white);
        z-index: 1000;
        transform: translateX(-100%);
        transition: transform 0.3s ease-in-out;
        padding: 120px 24px 40px;
        display: flex;
        flex-direction: column;
        overflow-y: auto;
    }

    #main .mobile-menu-overlay.active {
        transform: translateX(0);
    }

    #main .mobile-menu-overlay .mobile-menu-close {
        position: absolute;
        top: 30px;
        right: 24px;
        background: none;
        border: none;
        font-size: 24px;
        color: var(--color-black);
        cursor: pointer;
    }

    #main .mobile-menu-overlay .mobile-nav-section {
        margin-bottom: 30px;
    }

    #main .mobile-menu-overlay .mobile-nav-section .nav-section-title {
        font-size: 18px;
        font-weight: 700;
        color: var(--color-black);
        margin-bottom: 16px;
        padding-bottom: 8px;
        border-bottom: 2px solid var(--color-primary);
    }

    #main .mobile-menu-overlay .mobile-nav-section .mobile-nav-links {
        display: flex;
        flex-direction: column;
        gap: 0;
    }

    #main .mobile-menu-overlay .mobile-nav-section .mobile-nav-links a {
        color: var(--color-black);
        text-decoration: none;
        font-size: 16px;
        font-weight: 600;
        padding: 14px 0;
        border-bottom: 1px solid #f0f0f0;
        transition: all 0.3s ease;
        display: flex;
        align-items: center;
        justify-content: space-between;
    }

    #main .mobile-menu-overlay .mobile-nav-section .mobile-nav-links a:hover {
        color: var(--color-primary);
        background: #f9f9f9;
        padding-left: 8px;
    }

    #main .mobile-menu-overlay .mobile-nav-section .mobile-nav-links a .dropdown-arrow {
        font-size: 12px;
        transition: transform 0.3s ease;
    }

    #main .mobile-menu-overlay .mobile-nav-section .mobile-nav-links a.has-dropdown.active .dropdown-arrow {
        transform: rotate(180deg);
    }

    #main .mobile-menu-overlay .mobile-nav-section .mobile-dropdown {
        max-height: 0;
        overflow: hidden;
        transition: max-height 0.3s ease;
        background: #f9f9f9;
    }

    #main .mobile-menu-overlay .mobile-nav-section .mobile-dropdown.active {
        max-height: 300px;
    }

    #main .mobile-menu-overlay .mobile-nav-section .mobile-dropdown .dropdown-links {
        display: flex;
        flex-direction: column;
        padding: 0 16px;
    }

    #main .mobile-menu-overlay .mobile-nav-section .mobile-dropdown .dropdown-links a {
        color: #666;
        text-decoration: none;
        font-size: 14px;
        font-weight: 500;
        padding: 12px 8px;
        border-bottom: 1px solid #eee;
        transition: all 0.3s ease;
    }

    #main .mobile-menu-overlay .mobile-nav-section .mobile-dropdown .dropdown-links a:hover {
        color: var(--color-primary);
        background: #f0f0f0;
    }

    #main .mobile-menu-overlay .mobile-nav-section .mobile-dropdown .dropdown-links a:last-child {
        border-bottom: none;
    }

    #main .mobile-menu-overlay .mobile-account-section {
        margin-top: auto;
        padding-top: 30px;
        border-top: 2px solid #f0f0f0;
    }

    #main .mobile-menu-overlay .mobile-account-section .mobile-nav-links {
        display: flex;
        flex-direction: column;
        gap: 0;
    }

    #main .mobile-menu-overlay .mobile-account-section .mobile-nav-links a {
        color: var(--color-black);
        text-decoration: none;
        font-size: 16px;
        font-weight: 600;
        padding: 14px 0;
        border-bottom: 1px solid #f0f0f0;
        transition: all 0.3s ease;
        display: flex;
        align-items: center;
        gap: 12px;
    }

    #main .mobile-menu-overlay .mobile-account-section .mobile-nav-links a:hover {
        color: var(--color-primary);
        background: #f9f9f9;
        padding-left: 8px;
    }

    #main .mobile-menu-overlay .mobile-account-section .mobile-nav-links a:last-child {
        border-bottom: none;
    }

    #main .mobile-menu-backdrop {
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background: rgba(0, 0, 0, 0.5);
        z-index: 999;
        opacity: 0;
        visibility: hidden;
        transition: all 0.3s ease-in-out;
    }

    #main .mobile-menu-backdrop.active {
        opacity: 1;
        visibility: visible;
    }

    #main .hero {
        /* padding: 0 16px; */
        position: relative;
    }

    #main .hero img {
        height: 400px;
        -o-object-fit: cover;
        object-fit: cover;
        width: 100%;
    }

    #main .hero .content {
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        text-align: center;
    }

    #main .hero .content h2 {
        font-size: 32px !important;
        line-height: 120%;
        letter-spacing: -0.5px;
        margin-bottom: 16px;
    }

    #main .hero .content h2 span {
        font-size: 32px !important;
    }

    #main .hero .content p {
        font-size: 16px;
        line-height: 150%;
        margin-bottom: 24px;
    }

    #main .hero .content p br {
        display: block;
    }

    #main .hero .content .btn-container {
        flex-direction: row;
        gap: 12px;
    }

    #main .hero .content .btn-container .btn1,
    #main .hero .content .btn-container .btn2 {
        max-width: 200px;
        justify-content: center;
        padding: 8px 24px;
    }
}

@media (min-width: 769px) and (max-width: 1024px) {
    #main nav .nav-container {
        padding: 10px 20px;
    }

    #main nav .nav-container .nav-pages ul {
        gap: 20px;
    }

    #main nav .nav-container .logo img {
        width: 70px;
    }

    #main nav .nav-container .nav-icons ul {
        gap: 20px;
    }

    #main .hero {
        padding: 0 20px;
    }

    #main .hero img {
        height: 500px;
    }

    #main .hero .content h2 {
        font-size: 40px;
    }

    #main .hero .content h2 span {
        font-size: 40px;
    }

    #main .hero .content p {
        font-size: 17px;
    }

    #main .hero .content .btn-container .btn1,
    #main .hero .content .btn-container .btn2 {
        padding: 10px 28px;
    }
}

.mobile-menu-toggle {
    display: none;
}

.mobile-menu-overlay {
    display: none;
}

.mobile-menu-backdrop {
    display: none;
}

@media (max-width: 768px) {
    .mobile-menu-toggle {
        display: flex !important;
    }

    .mobile-menu-overlay {
        display: flex !important;
    }

    .mobile-menu-backdrop {
        display: block !important;
    }
}

nav {
    width: 100%;
    position: relative;
    z-index: 999;
}

.header-strip {
    background-color: #8b0000;
    color: white;
    text-align: center;
    padding: 8px 32px;
    font-size: 14px;
    transition: opacity 0.2s ease;
}

.nav-placeholder {
    width: 100%;
    height: 0;
}

.nav-container {
    background: white;
    display: grid;
    grid-template-columns: 1fr auto 1fr;
    align-items: center;
    padding: 10px 30px;
    transition: transform 0.25s ease, box-shadow 0.25s ease;
    position: relative;
    will-change: transform;
}

.nav-container.nav-fixed {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);
    transform: translateY(0);
}

.nav-container.nav-fixed.hide {
    transform: translateY(-100%);
}

.menu-overlay {
    position: absolute;
    top: 100%;
    left: 0;
    width: 100%;
    background: #fff;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
    opacity: 0;
    visibility: hidden;
    transform: translateY(10px);
    transition: all 0.3s ease;
    z-index: 999;
}

.nav-container.nav-fixed+.menu-overlay {
    position: fixed;
    top: 70px;
}

.menu-overlay.active {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}

.menu-overlay .overlay-inner {
    padding: 40px 30px;
    border-top: 1px solid;
}

.menu-overlay .menu-columns {
    display: flex;
    flex: 1;
    gap: 60px;
    justify-content: space-between;
}

.menu-overlay .shop_all {
    border-bottom: 1px solid rgba(0, 0, 0, 0.1882352941);
    padding-bottom: 20px;
}

.menu-overlay .shop-all {
    display: inline-block;
    padding: 12px 24px;
    align-items: flex-start;
    text-align: center;
    position: relative;
    left: 50%;
    transform: translate(-50%);
    border-radius: 6px;
    background: var(--color-primary);
    border-top: 1px solid;
    margin-top: 20px;
    color: var(--color-white);
    text-align: center;
    font-variant-numeric: ordinal;
    font-feature-settings: "dlig" on;
    font-size: 16px;
    font-style: normal;
    font-weight: 500;
    line-height: 120%;
    transition: all 0.3s ease;
}

.menu-overlay .shop-all:hover {
    background-color: #78070a;
}

.menu-overlay .menu-columns .column h4 {
    font-weight: 600;
    margin-bottom: 12px;
}

.menu-overlay .menu-columns .column ul {
    list-style: none;
    padding: 0;
}

.menu-overlay .menu-columns .column ul li {
    margin-bottom: 8px;
    font-size: 14px;
    color: #444;
    cursor: pointer;
    transition: color 0.2s ease;
}

.menu-overlay .menu-columns .column ul li:hover {
    color: var(--color-primary);
}

.menu-overlay .menu-image {
    height: 150px;
    border-radius: 8px;
    -o-object-fit: cover;
    object-fit: cover;
}

.menu-overlay .menu-image img {
    width: 100%;
    height: 100%;
    border-radius: 8px;
}

.nav-pages ul li a {
    position: relative;
    text-decoration: none;
    color: #000;
    font-weight: 500;
    transition: color 0.3s ease;
}

.nav-pages ul li.active a {
    color: #5b2a1f;
    font-weight: 600;
}

.nav-pages ul li.active a::after {
    content: "";
    position: absolute;
    bottom: -6px;
    left: 0;
    width: 100%;
    height: 2px;
    background-color: #5b2a1f;
    border-radius: 2px;
}

.nav-container.nav-fixed~.menu-overlay {
    position: fixed;
    top: calc(var(--nav-height, 70px));
    left: 0;
    width: 100%;
    z-index: 998;
}

@media (max-width: 678px) {
    #main .our-strength .icon-wrapper {
        display: flex;
        flex-direction: column;
    }

    .button-wrapper {
        display: none !important;
    }

    #main .heading h3 {
        font-size: 28px !important;
    }

    #main .heading {
        display: flex;
        align-items: center;
        justify-content: center;
        padding-bottom: 30px;
        position: relative;
        flex-wrap: wrap;
        flex-direction: column;
        gap: 20px;
    }

    .view-all {
        font-size: 16px !important;
    }

    #main .video .video-player-wrapper .video-thumbnail {
        padding: 0 10px;
        width: 100%;
    }

    #main .video .video-player-wrapper {
        position: static;
        transform: none;
    }

    #main .video {
        position: relative;
        height: -moz-fit-content;
        height: fit-content;
    }

    #main .video .bg-img {
        width: 100%;
        height: auto;
        -o-object-fit: cover;
        object-fit: cover;
        -o-object-position: center center;
        object-position: center center;
        position: absolute;
        bottom: 0;
        z-index: -1;
    }

    #main .video .video-player-wrapper #main-video {
        width: 100%;
        padding: 0 10px;
    }

    #main footer .copyright .col-md-8 p {
        text-align: center;
        margin-top: 20px;
        font-size: 18px;
    }

    #main footer .copyright .col-md-8 p a {
        font-size: 18px;
    }

    #main footer .copyright .d-flex a {
        font-size: 18px;
    }

    #main footer {
        text-align: center;
    }

    #main footer .card1,
    #main footer .card2 {
        margin-bottom: 40px;
    }

    #main footer .row .card3 p {
        margin-bottom: 20px !important;
    }

    #main footer .row .card3 a {
        margin-top: 0 !important;
    }

    .shop-by-concern .d-flex {
        align-items: center !important;
    }

    br {
        display: none;
    }

    #main .our-strength .heading {
        gap: 0 !important;
    }

    #main footer .copyright .d-flex {
        justify-content: center !important;
    }

    #main .cta .content {
        position: absolute;
        top: 0;
        left: auto;
        transform: none;
        text-align: center;
        margin-top: 50px;
        padding: 0 20px;
    }

    .product-card .cart-mobile {
        display: block !important;
    }

    #main footer .copyright {
        margin-bottom: 0;
    }
}

@media (max-width: 768px) {
    .shop-by-concern {
        padding: 30px 15px;
    }

    .shop-by-concern .heading {
        flex-direction: column;
        align-items: flex-start;
        gap: 20px;
        padding-bottom: 20px;
    }

    .shop-by-concern .heading h3 {
        font-size: 28px;
    }

    .shop-by-concern .swiper-nav-buttons {
        width: 100%;
        justify-content: space-between;
        margin-left: 0;
    }

    .shop-by-concern .d-flex.align-items-start {
        flex-direction: column;
    }

    .shop-by-concern .nav-pills {
        width: 100% !important;
        padding-right: 0;
        flex-direction: row !important;
        overflow-x: auto;
        flex-wrap: nowrap;
        margin-bottom: 20px;
        padding-bottom: 10px;
        padding-right: 0 !important;
    }

    .shop-by-concern .nav-pills .nav-link {
        white-space: nowrap;
        font-size: 14px;
        padding: 12px 16px;
        margin-bottom: 0;
        margin-right: 8px;
        flex-shrink: 0;
    }

    .shop-by-concern .tab-content {
        width: 100%;
    }

    .shop-by-concern .product-card {
        margin: 0 5px;
    }

    .shop-by-concern .img-container {
        height: 250px;
    }

    .shop-by-concern .product-card h3 {
        font-size: 16px;
    }

    .shop-by-concern .product-card p {
        font-size: 12px;
        display: -webkit-box;
        -webkit-line-clamp: 2;
        -webkit-box-orient: vertical;
        overflow: hidden;
    }

    .shop-by-concern .product-card h4 {
        font-size: 18px;
    }

    .shop-by-concern .action-btn {
        min-width: 140px;
        padding: 10px 16px;
        font-size: 12px;
    }

    .shop-by-concern .swiper-button-next,
    .shop-by-concern .swiper-button-prev {
        width: 36px;
        height: 36px;
    }

    .shop-by-concern .swiper-button-next svg,
    .shop-by-concern .swiper-button-prev svg {
        width: 18px;
        height: 18px;
    }

    .shop-by-concern .wishlist {
        width: 36px !important;
        height: 36px !important;
        padding: 8px !important;
    }

    .shop-by-concern .wishlist svg {
        width: 18px !important;
        height: 18px !important;
    }
}

@media (max-width: 480px) {
    .shop-by-concern {
        padding: 20px 10px;
    }

    .shop-by-concern .heading h3 {
        font-size: 24px;
    }

    .shop-by-concern .img-container {
        height: 200px;
    }

    .shop-by-concern .nav-pills .nav-link {
        font-size: 12px;
        padding: 10px 12px;
    }

    .shop-by-concern .action-btn {
        min-width: 120px;
        padding: 8px 12px;
        font-size: 11px;
    }
}

@media (max-width: 768px) {
    .our-strength {
        padding: 40px 20px;
    }

    .our-strength .heading h2 {
        font-size: 26px;
    }

    .our-strength .heading p {
        font-size: 15px;
        line-height: 140%;
    }

    .our-strength .icon-wrapper {
        display: grid !important;
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 16px;
        justify-items: center;
        padding: 0;
        margin-top: 30px !important;
    }

    .our-strength .icon-box {
        width: 100%;
        max-width: 160px;
        padding: 20px 10px;
        border-radius: 12px;
        height: 220px;
    }

    .our-strength .icon-box img {
        width: 60px;
        height: 60px;
    }

    .our-strength .icon-box span {
        font-size: 14px;
        line-height: 120%;
    }
}

.nav-container.nav-fixed {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 999;
    background: #fff;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.08);
    transition: top 0.25s ease-in-out;
}

@media (max-width: 768px) {
    .nav-container.nav-fixed {
        position: fixed;
        top: 0;
        left: 0;
        right: 0;
        z-index: 999;
        background: #fff;
        box-shadow: 0 2px 6px rgba(0, 0, 0, 0.08);
        transition: none !important;
    }

    .nav-placeholder {
        display: none !important;
    }

    .hero {
        margin-top: 180px;
    }
}

.desktop-img {
    display: block;
}

.mobile-img {
    display: none;
}

@media (max-width: 768px) {
    .desktop-img {
        display: none;
    }

    .mobile-img {
        display: block;
    }
}

@media (max-width: 768px) {
    .shop-by-swiper .swiper-wrapper {
        margin: 0 !important;
    }

    .shop-by-swiper .swiper-slide {
        width: 100% !important;
        margin: 0 auto !important;
    }

    .shop-by-concern {
        padding-left: 30px !important;
        padding-right: 30px !important;
    }

    .shop-by-concern .tab-content {
        width: 100% !important;
        padding: 0 !important;
        margin: 0 !important;
    }
}

.product-card .cart-mobile {
    display: flex;
    padding: 9px 16px;
    justify-content: center;
    align-items: center;
    gap: 8px;
    align-self: stretch;
    border-radius: 4px;
    background: var(--color-primary);
    color: var(--color-white);
    font-variant-numeric: ordinal;
    font-feature-settings: "dlig" on;
    font-size: 14px;
    font-style: normal;
    font-weight: 500;
    line-height: 150%;
    margin-top: 20px;
    transition: all 0.3s ease;
    display: none;
    text-align: center;
}

.product-card .cart-mobile:hover {
    background-color: #78070a;
}

.product-card .cart-mobile svg {
    fill: var(--color-white);
    margin-right: 10px;
}

nav {
    position: sticky;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 999;
    background-color: #fff;
    transition: all 0.3s ease;
}

nav.scrolled {
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
}

/* Search Offcanvas - Top Position Styles */
/* Scope all styles to .search-offcanvas to avoid conflicts */
.search-offcanvas {
    height: auto !important;
    max-height: 90vh !important;
    background: white;
    border-bottom: 1px solid #eee;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.1);
    width: 80%;
    margin: auto;
}

.search-offcanvas.offcanvas-top {
    top: 0;
    transform: translateY(-100%);
}

.search-offcanvas.offcanvas-top.show {
    transform: translateY(0);
}

.search-offcanvas .offcanvas-header {
    border-bottom: 1px solid #eee;
    padding: 15px 0;
    background: #f9f9f9;
}

.search-offcanvas .header-content {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
}

.search-offcanvas .offcanvas-title {
    color: var(--color-primary);
    font-size: 24px;
    font-weight: 600;
    letter-spacing: -0.24px;
}

.search-offcanvas .btn-close {
    font-size: 14px;
}

.search-offcanvas .offcanvas-body {
    padding: 30px 0;
    overflow-y: auto;
}

/* Search Section */
.search-offcanvas .search-section {
    margin-bottom: 30px;
}

.search-offcanvas .search-input-wrapper {
    position: relative;
    margin-bottom: 20px;
}

.search-offcanvas .search-input-wrapper i {
    position: absolute;
    left: 15px;
    top: 50%;
    transform: translateY(-50%);
    color: #888;
    font-size: 18px;
    pointer-events: none;
    z-index: 3;
}

.search-offcanvas .search-input {
    width: 100%;
    padding: 15px 18px 15px 45px;
    border: 2px solid #eee;
    border-radius: 12px;
    font-size: 16px;
    background: white;
    transition: all 0.3s ease;
}

.search-offcanvas .search-input:focus {
    border-color: var(--color-primary);
    box-shadow: 0 0 0 3px rgba(144, 9, 12, 0.1);
    outline: none;
}

/* Suggestions Chips */
.search-offcanvas .suggestions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 15px;
}

.search-offcanvas .suggestion-chip {
    padding: 8px 16px;
    background: #f0f0f0;
    border-radius: 30px;
    font-size: 14px;
    color: #333;
    cursor: pointer;
    transition: all 0.3s ease;
}

.search-offcanvas .suggestion-chip:hover {
    background: var(--color-primary);
    color: white;
}

/* Recent Searches */
.search-offcanvas .recent-searches {
    margin-bottom: 40px;
}

.search-offcanvas .recent-searches .title-row {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 15px;
}

.search-offcanvas .recent-searches .title-row h6 {
    font-size: 16px;
    font-weight: 600;
    color: #2c2c2c;
    margin: 0;
}

.search-offcanvas .recent-searches .clear-all {
    color: var(--color-primary);
    font-size: 14px;
    font-weight: 500;
    text-decoration: none;
}

.search-offcanvas .recent-searches ul {
    list-style: none;
    padding: 0;
    margin: 0 0 10px 0;
}

.search-offcanvas .recent-searches li {
    padding: 8px 0;
    font-size: 15px;
    color: #333;
    border-bottom: 1px dashed #f0f0f0;
    cursor: pointer;
    transition: color 0.3s ease;
}

.search-offcanvas .recent-searches li:hover {
    color: var(--color-primary);
}

.search-offcanvas .recent-searches .view-more {
    color: var(--color-primary);
    font-size: 14px;
    text-decoration: none;
    font-weight: 500;
    display: inline-block;
    margin-top: 5px;
}

/* Recommended Header */
.search-offcanvas .recommended-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin: 30px 0 20px 0;
}

.search-offcanvas .recommended-header h3 {
    color: var(--color-primary);
    font-size: 24px;
    font-weight: 600;
    margin: 0;
    letter-spacing: -0.4px;
}

.search-offcanvas .recommended-nav {
    display: flex;
    gap: 10px;
}

.search-offcanvas .rec-swiper-button-prev,
.search-offcanvas .rec-swiper-button-next {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background: white;
    border: 1px solid #eee;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all 0.3s ease;
    color: var(--color-primary);
}

.search-offcanvas .rec-swiper-button-prev:hover,
.search-offcanvas .rec-swiper-button-next:hover {
    background: var(--color-primary);
    color: white;
    border-color: var(--color-primary);
}

.search-offcanvas .rec-swiper-button-prev.swiper-button-disabled,
.search-offcanvas .rec-swiper-button-next.swiper-button-disabled {
    opacity: 0.4;
    cursor: not-allowed;
}

.search-offcanvas .rec-swiper-button-prev.swiper-button-disabled:hover,
.search-offcanvas .rec-swiper-button-next.swiper-button-disabled:hover {
    background: white;
    color: var(--color-primary);
    border-color: #eee;
}

/* Recommended Swiper - Scoped to search-offcanvas only */
.search-offcanvas .recommended-swiper {
    width: 100%;
    padding: 5px 0 30px 0;
}

.search-offcanvas .recommended-swiper .swiper-slide {
    height: auto;
}

/* Product Card Styles - Scoped to search-offcanvas only */
.search-offcanvas .product-card {
    background: white;
    border-radius: 12px;
    padding: 15px;
    border: 1px solid #eee;
    transition: all 0.3s ease;
    height: 100%;
    display: flex;
    flex-direction: column;
}

.search-offcanvas .product-card:hover {
    box-shadow: 0 5px 20px rgba(0, 0, 0, 0.05);
    transform: translateY(-2px);
}

.search-offcanvas .img-container {
    position: relative;
    width: 100%;
    height: 200px;
    border-radius: 8px;
    overflow: hidden;
    margin-bottom: 12px;
}

.search-offcanvas .img-container img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
}

.search-offcanvas .wishlist {
    position: absolute;
    top: 10px;
    right: 10px;
    width: 35px;
    height: 35px;
    background: rgba(255, 255, 255, 0.9);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    z-index: 2;
}

.search-offcanvas .wishlist svg {
    width: 18px;
    height: 18px;
}

.search-offcanvas .img-container span {
    position: absolute;
    top: 10px;
    left: 10px;
    background: var(--color-secondary);
    color: var(--color-primary);
    padding: 4px 12px;
    border-radius: 4px;
    font-size: 12px;
    font-weight: 500;
    z-index: 2;
}

.search-offcanvas h3 {
    font-size: 16px;
    font-weight: 600;
    margin: 8px 0 4px;
    color: #333;
}

.search-offcanvas p {
    font-size: 13px;
    color: #666;
    margin-bottom: 8px;
    line-height: 1.4;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    flex-grow: 1;
}

.search-offcanvas .star {
    display: flex;
    align-items: center;
    gap: 2px;
    margin-bottom: 8px;
}

.search-offcanvas .star i {
    color: #ffc800;
    font-size: 12px;
}

.search-offcanvas .star span {
    color: #666;
    font-size: 12px;
    margin-left: 5px;
}

.search-offcanvas h4 {
    font-size: 18px;
    font-weight: 700;
    color: #333;
    margin-bottom: 12px;
}

.search-offcanvas .product-footer {
    display: flex;
    flex-direction: column;
    gap: 8px;
    margin-top: auto;
}

.search-offcanvas .dropdown {
    position: relative;
    width: 100%;
}

.search-offcanvas .dropdown-btn {
    width: 100%;
    padding: 8px 12px;
    background: white;
    border: 1px solid #ddd;
    border-radius: 6px;
    color: var(--color-primary);
    font-size: 13px;
    font-weight: 500;
    display: flex;
    align-items: center;
    justify-content: space-between;
    cursor: pointer;
}

.search-offcanvas .dropdown-btn:hover {
    border-color: var(--color-primary);
}

.search-offcanvas .dropdown-content {
    display: none;
    position: absolute;
    bottom: 100%;
    left: 0;
    right: 0;
    background: white;
    border: 1px solid #ddd;
    border-radius: 6px;
    margin-bottom: 5px;
    z-index: 10;
}

.search-offcanvas .dropdown.active .dropdown-content {
    display: block;
}

.search-offcanvas .dropdown.active .dropdown-btn svg {
    transform: rotate(180deg);
}

.search-offcanvas .dropdown-content a {
    display: block;
    padding: 8px 12px;
    text-decoration: none;
    color: var(--color-primary);
    font-size: 13px;
}

.search-offcanvas .dropdown-content a:hover {
    background: var(--color-secondary);
}

.search-offcanvas .add-to-cart-btn {
    width: 100%;
    padding: 8px 12px;
    background: var(--color-primary);
    border: none;
    border-radius: 6px;
    color: white;
    font-size: 13px;
    font-weight: 500;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    cursor: pointer;
    transition: background 0.3s ease;
}

.search-offcanvas .add-to-cart-btn:hover {
    background: #78070a;
}

.search-offcanvas .recommended-swiper-pagination {
    position: relative;
    bottom: 0;
    margin-top: 20px;
}

.search-offcanvas .recommended-swiper-pagination .swiper-pagination-bullet {
    width: 8px;
    height: 8px;
    background: #ccc;
    opacity: 0.7;
    transition: all 0.3s ease;
}

.search-offcanvas .recommended-swiper-pagination .swiper-pagination-bullet-active {
    background: var(--color-primary);
    opacity: 1;
    transform: scale(1.2);
}

/* Responsive */
@media (max-width: 768px) {
    .search-offcanvas .offcanvas-body {
        padding: 20px 0;
    }

    .search-offcanvas .recommended-header h3 {
        font-size: 20px;
    }

    .search-offcanvas .suggestions {
        gap: 8px;
    }

    .search-offcanvas .suggestion-chip {
        padding: 6px 12px;
        font-size: 13px;
    }

    .search-offcanvas .img-container {
        height: 180px;
    }
}

/* ************************************************************************* */
/* Cart Sidebar Styles */
.cart-sidebar {
    width: 600px !important;
}

.cart-sidebar .offcanvas-header {
    border-bottom: 1px solid #eee;
    padding: 20px 25px;
}

.cart-sidebar .offcanvas-header h5 {
    color: var(--color-black);
    font-size: 24px;
    font-weight: 500;
    letter-spacing: -0.24px;
}

.cart-sidebar .offcanvas-body {
    padding: 20px 25px;
    display: flex;
    flex-direction: column;
    gap: 24px;
}

/* Cart Items */
.cart-items {
    display: flex;
    flex-direction: column;
    gap: 20px;
    border-bottom: 1px solid #eee;
    padding-bottom: 24px;
}

.cart-item-card {
    display: flex;
    gap: 16px;
    background: #fafafa;
    border-radius: 16px;
    padding: 12px;
}

.cart-item-img {
    width: 80px;
    height: 80px;
    border-radius: 12px;
    overflow: hidden;
    flex-shrink: 0;
}

.cart-item-img img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
}

.cart-item-info {
    flex: 1;
}

.cart-item-info h4 {
    font-size: 16px;
    font-weight: 600;
    margin: 0 0 4px 0;
    color: #1e1e1e;
}

.cart-item-description {
    font-size: 12px;
    color: #6f6f6f;
    margin: 0 0 6px 0;
    line-height: 1.4;
}

.cart-item-review {
    display: flex;
    align-items: center;
    gap: 4px;
    font-size: 11px;
    color: #6f6f6f;
    margin-bottom: 8px;
}

.cart-item-review .stars {
    display: flex;
    gap: 2px;
    color: #ffc800;
}

.cart-item-price-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.cart-item-price {
    font-weight: 700;
    font-size: 18px;
    color: var(--color-black);
}

.cart-qty-control {
    display: flex;
    align-items: center;
    border: 1px solid var(--color-primary);
    border-radius: 40px;
    background: white;
    padding: 2px;
}

.cart-qty-btn {
    background: none;
    border: none;
    width: 28px;
    height: 28px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--color-primary);
    font-weight: bold;
    font-size: 12px;
    cursor: pointer;
    transition: 0.15s;
}

.cart-qty-btn:hover {
    background: #f8f0f0;
}

.cart-qty-value {
    min-width: 28px;
    text-align: center;
    font-weight: 600;
    font-size: 14px;
    color: var(--color-primary);
}

/* Quick Add Section */
.quick-add-section {
    border-bottom: 1px solid #eee;
    padding-bottom: 24px;
}

.quick-add-section h6 {
    font-size: 18px;
    font-weight: 600;
    color: var(--color-primary);
    margin: 0 0 16px 0;
}

.quick-add-card {
    display: flex;
    gap: 16px;
    background: #fafafa;
    border-radius: 16px;
    padding: 12px;
    margin-bottom: 12px;
}

.quick-add-card:last-child {
    margin-bottom: 0;
}

.quick-add-img {
    width: 70px;
    height: 70px;
    border-radius: 12px;
    overflow: hidden;
    flex-shrink: 0;
}

.quick-add-img img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
}

.quick-add-info {
    flex: 1;
}

.quick-add-info h4 {
    font-size: 15px;
    font-weight: 600;
    margin: 0 0 2px 0;
    color: #1e1e1e;
}

.quick-add-description {
    font-size: 11px;
    color: #6f6f6f;
    margin: 0 0 4px 0;
    line-height: 1.4;
}

.quick-add-review {
    display: flex;
    align-items: center;
    gap: 4px;
    font-size: 10px;
    color: #6f6f6f;
    margin-bottom: 6px;
}

.quick-add-review .stars {
    display: flex;
    gap: 2px;
    color: #ffc800;
}

.quick-add-price-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.quick-add-price {
    font-weight: 700;
    font-size: 16px;
    color: var(--color-black);
}

.quick-add-btn {
    background: var(--color-primary);
    border: none;
    color: white;
    padding: 4px 12px;
    border-radius: 40px;
    font-size: 12px;
    font-weight: 600;
    display: flex;
    align-items: center;
    gap: 4px;
    cursor: pointer;
    transition: 0.15s;
}

.quick-add-btn i {
    font-size: 10px;
}

.quick-add-btn:hover {
    background: #78070a;
}

/* Cart Footer */
.cart-footer {
    margin-top: auto;
}

.total-amount {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 16px;
    font-size: 18px;
    font-weight: 500;
    color: var(--color-black);
}

.total-price {
    font-weight: 700;
    color: var(--color-primary);
    font-size: 22px;
}

.checkout-btn {
    width: 100%;
    background: var(--color-primary);
    color: white;
    border: none;
    padding: 16px;
    border-radius: 50px;
    font-size: 16px;
    font-weight: 600;
    cursor: pointer;
    transition: 0.15s;
    margin-bottom: 12px;
}

.checkout-btn:hover {
    background: #78070a;
}

.shipping-note {
    text-align: center;
    font-size: 13px;
    color: #888;
    margin: 0;
}

/* FORCE SINGLE SCROLLBAR - ADD THIS AT THE END OF YOUR CSS */
.offcanvas.search-sidebar {
    overflow: hidden !important;
}

.offcanvas.search-sidebar .offcanvas-body {
    overflow-y: auto !important;
    overflow-x: hidden !important;
    max-height: calc(100vh - 80px) !important;
    /* Adjust based on header height */
}

/* Remove any overflow from offcanvas backdrop */
.offcanvas-backdrop {
    overflow: hidden !important;
}

/* Ensure no other elements cause scroll */
.offcanvas-header {
    overflow: visible !important;
}

.recommended-list {
    overflow: visible !important;
}

/* Add this to your existing CSS */
.cart-item-price-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 8px;
}

.cart-item-actions {
    display: flex;
    align-items: center;
    gap: 8px;
}

.cart-delete-btn {
    background: none;
    border: 1px solid #e0e0e0;
    width: 32px;
    height: 32px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #999;
    font-size: 14px;
    cursor: pointer;
    transition: all 0.15s ease;
}

.cart-delete-btn:hover {
    background: #fff1f0;
    border-color: var(--color-primary);
    color: var(--color-primary);
}

/* Alternative style if you prefer the trash icon without border */
.cart-delete-btn.borderless {
    border: none;
    width: 28px;
    height: 28px;
}

.cart-delete-btn.borderless:hover {
    background: #f5f5f5;
}

.delete-icon {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

/* *************************************************************** */
/* Wishlist Sidebar - matching search sidebar */
.wishlist-sidebar {
    width: 600px !important;
    display: flex;
    flex-direction: column;
}

.offcanvas.wishlist-sidebar .offcanvas-header {
    border-bottom: 1px solid #eee;
    padding: 20px 25px;
    flex-shrink: 0;
}

.offcanvas.wishlist-sidebar .offcanvas-header h5 {
    color: var(--color-black);
    font-size: 24px;
    font-weight: 500;
    letter-spacing: -0.24px;
    margin: 0;
}

.offcanvas .offcanvas-body {
    padding: 20px 25px;
    overflow-y: auto;
    flex: 1 1 auto;
    display: flex;
    flex-direction: column;
    gap: 20px;
    /* Scrollbar styling */
    scrollbar-width: thin;
    scrollbar-color: var(--color-primary) #f1f1f1;
}

/* Scrollbar webkit styling */
.offcanvas.wishlist-sidebar .offcanvas-body::-webkit-scrollbar {
    width: 4px;
}

.offcanvas.wishlist-sidebar .offcanvas-body::-webkit-scrollbar-track {
    background: #f1f1f1;
}

.offcanvas.wishlist-sidebar .offcanvas-body::-webkit-scrollbar-thumb {
    background: var(--color-primary);
    border-radius: 4px;
}

/* Search input - same as search sidebar */
.wishlist-sidebar .search-input {
    position: relative;
    width: 100%;
    flex-shrink: 0;
}

.wishlist-sidebar .search-input i {
    position: absolute;
    left: 15px;
    top: 50%;
    transform: translateY(-50%);
    color: #888;
    font-size: 16px;
    z-index: 3;
}

.wishlist-sidebar .search-input .form-control {
    width: 100%;
    padding: 12px 18px 12px 40px;
    border: 1px solid #ccc;
    border-radius: 8px;
    font-size: 15px;
    background: white;
}

.wishlist-sidebar .search-input .form-control:focus {
    border-color: var(--color-primary);
    box-shadow: 0 0 0 2px rgba(144, 9, 12, 0.1);
    outline: none;
}

/* Wishlist header */
.wishlist-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
    flex-shrink: 0;
}

.wishlist-header h3 {
    color: var(--color-primary);
    font-size: 20px;
    font-weight: 600;
    margin: 0;
    letter-spacing: -0.4px;
}

/* Wishlist items list */
.wishlist-list {
    display: flex;
    flex-direction: column;
    gap: 18px;
    width: 100%;
    flex-shrink: 0;
}

/* Wishlist item card - matching rec-product-card */
.wishlist-item-card {
    display: flex;
    align-items: center;
    background: #fafafa;
    border-radius: 16px;
    padding: 12px 16px;
    border: 1px solid #efefef;
    transition: 0.2s;
    width: 100%;
}

.wishlist-item-card:hover {
    background: white;
    box-shadow: 0 4px 14px rgba(0, 0, 0, 0.04);
}

.wishlist-item-img {
    width: 75px;
    height: 75px;
    border-radius: 12px;
    background: #eaeaea;
    margin-right: 16px;
    overflow: hidden;
    flex-shrink: 0;
}

.wishlist-item-img img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
}

.wishlist-item-info {
    flex: 1;
    min-width: 0;
}

.wishlist-item-info h4 {
    font-size: 16px;
    font-weight: 600;
    margin: 0 0 4px 0;
    color: #1e1e1e;
}

.wishlist-item-description {
    font-size: 13px;
    color: #6f6f6f;
    margin: 0 0 4px 0;
    line-height: 1.4;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.wishlist-item-review {
    display: flex;
    align-items: center;
    gap: 4px;
    font-size: 12px;
    color: #6f6f6f;
    margin-bottom: 4px;
}

.wishlist-item-review .stars {
    display: flex;
    gap: 2px;
    color: #ffc800;
}

.wishlist-item-price-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-top: 4px;
}

.wishlist-item-price {
    font-weight: 700;
    font-size: 18px;
    color: var(--color-black);
}

/* Wishlist action buttons */
.wishlist-actions {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-shrink: 0;
}

.move-to-cart-btn {
    background: var(--color-primary);
    border: none;
    color: white;
    padding: 6px 14px;
    border-radius: 40px;
    font-size: 12px;
    font-weight: 600;
    display: flex;
    align-items: center;
    gap: 6px;
    cursor: pointer;
    transition: 0.15s;
    white-space: nowrap;
}

.move-to-cart-btn i {
    font-size: 11px;
}

.move-to-cart-btn:hover {
    background: #78070a;
}

.delete-btn {
    background: none;
    border: 1px solid #ddd;
    color: #999;
    width: 32px;
    height: 32px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: 0.15s;
}

.delete-btn i {
    font-size: 14px;
    color: #999;
}

.delete-btn:hover {
    border-color: var(--color-primary);
    background: #fff0f0;
}

.delete-btn:hover i {
    color: var(--color-primary);
}

@media (max-width: 768px) {
    nav {
        position: fixed;
    }

    body {
        overflow-x: hidden;
    }

    .nav-container,
    .header-strip {
        max-width: 100%;
        overflow-x: hidden;
    }

    .wishlist-item-price-row {
        display: flex;
        justify-content: space-between;
        margin-top: 4px;
        flex-direction: column;
        align-items: baseline;
    }
}

/* ===============================
   GLOBAL PRODUCT CARD STYLES
================================= */
.product-card {
    height: 100%;
    margin: 0 10px;
    display: flex;
    flex-direction: column;
}

/* Image Container */
.product-card .img-container {
    position: relative;
    width: 100%;
    height: 330px;
    overflow: hidden;
    border-radius: 8px;
}

.product-card .img-container img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
}

/* Tag */
.product-card .img-container span {
    position: absolute;
    top: 0;
    left: 0;
    padding: 6px 20px;
    border-radius: 8px 0;
    background: var(--color-secondary);
    color: var(--color-primary);
    font-size: 14px;
    font-weight: 500;
}

/* Wishlist */
.product-card .wishlist {
    position: absolute;
    right: 16px;
    top: 16px;
    width: 45px;
    height: 45px;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.92);
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 12px 24px rgba(0, 0, 0, 0.2);
}

/* Title */
.product-card h3 {
    color: var(--color-black);
    font-size: 20px;
    font-weight: 500;
    margin-top: 10px;
}

/* Description */
.product-card p {
    color: #696969;
    font-size: 14px;
    margin-top: 10px;
    flex-grow: 1;
}

/* Rating */
.product-card .star {
    margin-top: 10px;
    display: flex;
    align-items: center;
    gap: 4px;
}

.product-card .star span {
    font-size: 12px;
    margin-left: 8px;
    color: #696969;
}

/* Price */
.product-card h4 {
    font-size: 20px;
    font-weight: 600;
    margin-top: 10px;
}

/* ===============================
   PRODUCT FOOTER
================================= */
.product-card .product-footer {
    display: flex;
    flex-direction: column;
    gap: 10px;
    margin-top: 20px;
}

/* Dropdown */
.product-card .dropdown {
    position: relative;
}

.product-card .dropdown-btn {
    width: 100%;
    padding: 9px 12px;
    background: white;
    border: 1px solid #ddd;
    border-radius: 4px;
    color: var(--color-primary);
    font-size: 14px;
    font-weight: 500;
    display: flex;
    align-items: center;
    justify-content: space-between;
    cursor: pointer;
    transition: 0.3s;
}

.product-card .dropdown-btn:hover {
    border-color: var(--color-primary);
}

/* Dropdown Content */
.product-card .dropdown-content {
    display: none;
    position: absolute;
    bottom: 100%;
    left: 0;
    right: 0;
    background: white;
    border: 1px solid #ddd;
    border-radius: 4px;
    margin-bottom: 5px;
    box-shadow: 0 -2px 10px rgba(0, 0, 0, 0.1);
    z-index: 10;
}

.product-card .dropdown-content a {
    display: block;
    padding: 8px 12px;
    text-decoration: none;
    color: var(--color-primary);
    font-size: 14px;
}

.product-card .dropdown-content a:hover {
    background: var(--color-secondary);
}

/* Active Dropdown */
/* Quantity control used by cards when add-to-cart is clicked */
.product-card .quantity-control {
    display: flex;
    height: 43px;
    justify-content: space-between;
    align-items: center;
    flex: 1 0 0;
    border-radius: 6px;
    border: 1px solid #622F2B;
    background: #FFF;
}

.product-card .qty-btn {
    width: 40px;
    height: 40px;
    border: none;
    background: none;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--color-primary);
    font-size: 16px;
    cursor: pointer;
    transition: all 0.3s ease;
}

.product-card .qty-btn:hover {
    background: #f5f5f5;
}

.product-card .qty-value {
    min-width: 40px;
    text-align: center;
    font-weight: 600;
    font-size: 16px;
}

.product-card .dropdown.active .dropdown-content {
    display: block;
}

.product-card .dropdown.active .dropdown-btn svg {
    transform: rotate(180deg);
}

/* Add To Cart Button */
.product-card .add-to-cart-btn {
    display: block;
    width: 100%;
    padding: 12px 16px;
    border-radius: 4px;
    background: var(--color-primary);
    color: var(--color-white);
    font-size: 14px;
    font-weight: 500;
    border: none;
    cursor: pointer;
    transition: 0.3s;
    text-align: center;
}

.product-card .add-to-cart-btn:hover {
    background: #78070a;
}

.shop-by-concern .product-card .product-footer {
    display: flex;
    gap: 10px;
    margin-top: 20px;
    width: 100%;
    flex-direction: column;
}

.shop-by-concern .product-card .product-footer .dropdown {
    position: relative;
    flex: 1;
}

.shop-by-concern .product-card .product-footer .dropdown .dropdown-btn {
    width: 100%;
    padding: 9px 12px;
    background: white;
    border: 1px solid #ddd;
    border-radius: 4px;
    color: var(--color-primary);
    font-size: 14px;
    font-weight: 500;
    display: flex;
    align-items: center;
    justify-content: space-between;
    cursor: pointer;
    transition: all 0.3s ease;
}

.shop-by-concern .product-card .product-footer .dropdown .dropdown-btn svg {
    transition: transform 0.3s ease;
}

.shop-by-concern .product-card .product-footer .dropdown .dropdown-btn:hover {
    border-color: var(--color-primary);
}

.shop-by-concern .product-card .product-footer .dropdown .dropdown-content {
    display: none;
    position: absolute;
    bottom: 100%;
    left: 0;
    right: 0;
    background: white;
    border: 1px solid #ddd;
    border-radius: 4px;
    margin-bottom: 5px;
    z-index: 10;
    box-shadow: 0 -2px 10px rgba(0, 0, 0, 0.1);
}

.shop-by-concern .product-card .product-footer .dropdown .dropdown-content a {
    display: block;
    padding: 8px 12px;
    text-decoration: none;
    color: var(--color-primary);
    font-size: 14px;
    transition: all 0.3s ease;
    cursor: pointer;
}

.shop-by-concern .product-card .product-footer .dropdown .dropdown-content a:hover {
    background: var(--color-secondary);
}

.shop-by-concern .product-card .product-footer .dropdown.active .dropdown-btn {
    border-color: var(--color-primary);
}

.shop-by-concern .product-card .product-footer .dropdown.active .dropdown-btn svg {
    transform: rotate(180deg);
}

.shop-by-concern .product-card .product-footer .dropdown.active .dropdown-content {
    display: block;
}

.shop-by-concern .product-card .product-footer .add-to-cart-btn {
    flex: 1;
    display: flex;
    padding: 9px 16px;
    justify-content: center;
    align-items: center;
    gap: 8px;
    border-radius: 4px;
    background: var(--color-primary);
    color: var(--color-white);
    font-size: 14px;
    font-weight: 500;
    line-height: 150%;
    border: none;
    cursor: pointer;
    transition: all 0.3s ease;
    white-space: nowrap;
}

.shop-by-concern .product-card .product-footer .add-to-cart-btn:hover {
    background-color: #78070a;
}

.shop-by-concern .product-card .img-container .hover-actions {
    display: none;
}

.shop-by-concern .product-card .cart-mobile {
    display: none;
}

@media (max-width: 767px) {
    .shop-by-concern .product-card .product-footer {
        flex-direction: column;
    }

    .shop-by-concern .product-card .product-footer .dropdown,
    .shop-by-concern .product-card .product-footer .add-to-cart-btn {
        width: 100%;
    }
}

.shop-by-concern .img-container span {
    position: absolute;
    z-index: 5;
    padding: 6px 20px;
    border-radius: 8px 0;
    background: var(--color-secondary);
    color: var(--color-primary);
    font-size: 14px;
    font-style: normal;
    font-weight: 500;
    line-height: 150%;
}

.shop-by-concern .product-card .product-footer {
    display: flex;
    gap: 10px;
    margin-top: 20px;
    width: 100%;
    flex-direction: column;
    position: relative;
}

.shop-by-concern .product-card .product-footer .dropdown {
    position: relative;
    flex: 1;
}

.shop-by-concern .product-card .product-footer .dropdown .dropdown-btn {
    width: 100%;
    padding: 9px 12px;
    background: white;
    border: 1px solid #ddd;
    border-radius: 4px;
    color: var(--color-primary);
    font-size: 14px;
    font-weight: 500;
    display: flex;
    align-items: center;
    justify-content: space-between;
    cursor: pointer;
    transition: all 0.3s ease;
}

.shop-by-concern .product-card .product-footer .dropdown .dropdown-btn svg {
    transition: transform 0.3s ease;
}

.shop-by-concern .product-card .product-footer .dropdown .dropdown-btn:hover {
    border-color: var(--color-primary);
}

.shop-by-concern .product-card .product-footer .dropdown .dropdown-content {
    display: none;
    position: absolute;
    bottom: 100%;
    left: 0;
    right: 0;
    background: white;
    border: 1px solid #ddd;
    border-radius: 4px;
    margin-bottom: 5px;
    z-index: 1000;
    box-shadow: 0 -2px 10px rgba(0, 0, 0, 0.1);
}

.shop-by-concern .product-card .product-footer .dropdown .dropdown-content a {
    display: block;
    padding: 8px 12px;
    text-decoration: none;
    color: var(--color-primary);
    font-size: 14px;
    transition: all 0.3s ease;
    cursor: pointer;
}

.shop-by-concern .product-card .product-footer .dropdown .dropdown-content a:hover {
    background: var(--color-secondary);
}

.shop-by-concern .product-card .product-footer .dropdown.active .dropdown-btn {
    border-color: var(--color-primary);
}

.shop-by-concern .product-card .product-footer .dropdown.active .dropdown-btn svg {
    transform: rotate(180deg);
}

.shop-by-concern .product-card .product-footer .dropdown.active .dropdown-content {
    display: block;
}

.shop-by-concern .product-card .product-footer .add-to-cart-btn {
    flex: 1;
    display: flex;
    padding: 9px 16px;
    justify-content: center;
    align-items: center;
    gap: 8px;
    border-radius: 4px;
    background: var(--color-primary);
    color: var(--color-white);
    font-size: 14px;
    font-weight: 500;
    line-height: 150%;
    border: none;
    cursor: pointer;
    transition: all 0.3s ease;
    white-space: nowrap;
}

.shop-by-concern .product-card .product-footer .add-to-cart-btn:hover {
    background-color: #78070a;
}

/* Shop By Concern Section */
.search-offcanvas .concern-section {
    margin: 30px 0;
}

.search-offcanvas .section-title {
    color: var(--color-primary);
    font-size: 24px;
    font-weight: 600;
    letter-spacing: -0.4px;
    padding: 20px 0;
}

.search-offcanvas .concern-grid {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 20px;
    margin-bottom: 10px;
}

.search-offcanvas .concern-item {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 15px;
    background: #f9f9f9;
    border-radius: 12px;
    cursor: pointer;
    transition: all 0.3s ease;
    border: 1px solid transparent;
}

.search-offcanvas .concern-item:hover {
    background: white;
    border-color: var(--color-primary);
    transform: translateY(-2px);
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.05);
}

.search-offcanvas .concern-icon {
    width: 60px;
    height: 60px;
    background: white;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid #eee;
    transition: all 0.3s ease;
}

.search-offcanvas .concern-item:hover .concern-icon {
    border-color: var(--color-primary);
    background: var(--color-secondary);
}

.search-offcanvas .concern-icon svg {
    width: 30px;
    height: 30px;
}

.search-offcanvas .concern-item span {
    color: #333;
    font-size: 14px;
    font-weight: 500;
    text-align: center;
}

/* Responsive */
@media (max-width: 768px) {
    .search-offcanvas .concern-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 15px;
    }

    .search-offcanvas .concern-icon {
        width: 50px;
        height: 50px;
    }

    .search-offcanvas .concern-icon svg {
        width: 24px;
        height: 24px;
    }

    .search-offcanvas .concern-item span {
        font-size: 13px;
    }

    .search-offcanvas .section-title {
        font-size: 20px;
        margin-bottom: 15px;
    }
}

.recommended-swiper .product-card .img-container {
    position: relative;
    width: 100%;
    height: 200px;
    overflow: hidden;
    border-radius: 8px;
}

.donate-cta {
    background: var(--color-primary);
    color: white;
    padding: 24px 30px;
    font-size: 14px;
    font-weight: 600;
    display: flex;
    gap: 8px;
    justify-content: space-between;
    transition: all 0.3s ease;
    align-items: center;
}

.donate-cta .content h1 {
    color: #FFF;
    font-variant-numeric: ordinal;
    font-feature-settings: "dlig" on;
    font-size: 40px;
    font-style: normal;
    font-weight: 600;
    line-height: 120%;
    /* 48px */
}

.donate-cta .content p {
    color: #FFF;
    font-feature-settings: "dlig" on;
    font-size: 22px;
    font-style: normal;
    font-weight: 400;
    line-height: 120%;
    /* 33.6px */
    margin-top: 10px;
}

.donate-cta .content a {
    display: inline-block;
    padding: 12px 24px;
    align-items: flex-start;
    gap: 8px;
    border-radius: 6px;
    background: #FFCB0D;
    color: #622F2B;
    text-align: center;
    font-variant-numeric: ordinal;
    font-feature-settings: "dlig" on;
    font-family: Outfit;
    font-size: 18px;
    font-style: normal;
    font-weight: 500;
    line-height: 120%;
    /* 28.8px */
    margin-top: 20px;
    transition: all 0.3s ease;
}

.donate-cta .content a:hover {
    background: #ffffff;
}

.testimonial {
    width: 100%;
}

.testimonial-swiper {
    width: 100%;
}

.gallery-card {
    width: 100%;
    height: 450px;
    /* Adjust height as needed */
    overflow: hidden;
    border-radius: 12px;
}

.gallery-card img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    display: block;
}

/* Search Container */
.search-container {
    position: static !important;
    margin-right: 10px;
}

.integrated-search {
    position: relative;
    width: 300px;
}

.search-input-wrapper {
    position: relative;
    width: 100%;
}

.search-input-wrapper input {
    width: 100%;
    padding: 10px 40px 10px 15px;
    border: 1px solid #e0e0e0;
    border-radius: 30px;
    font-size: 14px;
    transition: all 0.3s ease;
    background: #f8f8f8;
}

.search-input-wrapper input:focus {
    outline: none;
    border-color: var(--color-primary);
    background: white;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05);
}

.search-icon {
    position: absolute;
    right: 12px;
    top: 50%;
    transform: translateY(-50%);
    display: flex;
    align-items: center;
    justify-content: center;
    pointer-events: none;
}

.search-icon svg path {
    stroke: #666;
}

/* Search Dropdown */
.search-dropdown-content {
    position: absolute;
    top: calc(100% + 10px);
    left: 0;
    width: 600px;
    background: white;
    border-radius: 12px;
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.15);
    padding: 20px;
    opacity: 0;
    visibility: hidden;
    transform: translateY(-10px);
    transition: all 0.3s ease;
    z-index: 1000;
}

/* The dropdown is now shown only when the container has the "active" class.  
   We previously also used :focus-within which kept the menu open after clicking the 
   close button, because the input/button remained focused.  Keeping the rule here
   would conflict with the JavaScript logic, so we rely solely on .active instead. */
.search-dropdown-trigger {
    /* placeholder selector to avoid empty rule */
}

/* Suggestions Section */
.suggestions-section {
    margin-bottom: 20px;
}

.suggestions-section h4,
.concern-section h4,
.recommended-section h4 {
    font-size: 14px;
    color: #666;
    margin-bottom: 10px;
    font-weight: 500;
}

.suggestion-chips {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.suggestion-chips span {
    padding: 6px 12px;
    background: #f5f5f5;
    border-radius: 20px;
    font-size: 13px;
    color: #333;
    cursor: pointer;
    transition: all 0.2s ease;
}

.suggestion-chips span:hover {
    background: var(--color-primary);
    color: white;
}

/* Concern Grid */
.concern-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 8px;
    margin-bottom: 20px;
}

.concern-item {
    padding: 8px 12px;
    background: #f9f9f9;
    border-radius: 8px;
    font-size: 13px;
    color: #333;
    cursor: pointer;
    transition: all 0.2s ease;
    text-align: center;
    border: 1px solid transparent;
}

.concern-item:hover {
    background: white;
    border-color: var(--color-primary);
    color: var(--color-primary);
}

/* Recommended Section */
.recommended-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 15px;
}

.trending-tags {
    display: flex;
    gap: 8px;
}

.trending-tags span {
    font-size: 12px;
    color: var(--color-primary);
    background: rgba(144, 9, 12, 0.1);
    padding: 4px 8px;
    border-radius: 4px;
    font-weight: 500;
}

.recommended-products {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 15px;
    max-height: 400px;
    overflow-y: auto;
}

.recommended-product {
    display: flex;
    gap: 12px;
    padding: 10px;
    border-radius: 8px;
    transition: all 0.2s ease;
    border: 1px solid transparent;
}

.recommended-product:hover {
    background: #f9f9f9;
    border-color: #eee;
}

.recommended-product img {
    width: 60px;
    height: 60px;
    border-radius: 8px;
    -o-object-fit: cover;
    object-fit: cover;
}

.recommended-product .product-info {
    flex: 1;
}

.recommended-product h5 {
    font-size: 14px;
    font-weight: 600;
    margin: 0 0 4px;
    color: #333;
}

.recommended-product p {
    font-size: 12px;
    color: #666;
    margin: 0 0 2px;
    line-height: 1.3;
}

.recommended-product .product-desc {
    font-size: 11px;
    color: #999;
}

.recommended-product .price {
    font-size: 14px;
    font-weight: 700;
    color: var(--color-primary);
    display: block;
    margin-top: 4px;
}

/* Scrollbar styling */
.recommended-products::-webkit-scrollbar {
    width: 4px;
}

.recommended-products::-webkit-scrollbar-track {
    background: #f1f1f1;
    border-radius: 4px;
}

.recommended-products::-webkit-scrollbar-thumb {
    background: #ccc;
    border-radius: 4px;
}

.recommended-products::-webkit-scrollbar-thumb:hover {
    background: #999;
}

/* Responsive */
@media (max-width: 768px) {
    .integrated-search {
        width: 100%;
    }

    .search-dropdown-content {
        width: calc(100vw - 40px);
        left: -100px;
    }

    .recommended-products {
        grid-template-columns: 1fr;
    }
}

/* Search Container */
.search-container {
    position: static !important;
    margin-right: 15px;
}

.integrated-search {
    position: relative;
}

.integrated-search .search-box {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 8px 15px;
    border: 1px solid #e0e0e0;
    border-radius: 4px;
    background: #f8f8f8;
    cursor: pointer;
    transition: all 0.3s ease;
    min-width: 250px;
}

.integrated-search .search-box:hover,
.integrated-search.active .search-box {
    border-color: var(--color-primary);
    background: white;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05);
}

.integrated-search .search-box .animated-placeholder,
.integrated-search .search-box .main-search-input {
    flex: 1;
    color: #666;
    font-size: 14px;
    transition: opacity 0.3s ease;
}

.integrated-search .search-box .main-search-input {
    background: transparent;
    border: none;
    outline: none;
    padding: 0;
    width: 100%;
}

.integrated-search .search-box .main-search-input::placeholder {
    color: #666;
    opacity: 1;
}

/* Search Dropdown - Exact same as your offcanvas */
.search-dropdown-content {
    position: absolute;
    top: calc(100% + 10px);
    right: 0;
    width: 90vw;
    max-width: 1200px;
    background: white;
    border-radius: 16px;
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.15);
    opacity: 0;
    visibility: hidden;
    transform: translateY(-10px);
    transition: all 0.3s ease;
    z-index: 1000;
    max-height: 80vh;
    overflow-y: auto;
}

.integrated-search.active .search-dropdown-content {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}

.search-dropdown-container {
    padding: 30px;
    position: relative;
}

.search-dropdown-close {
    position: absolute;
    top: -10px;
    right: -10px;
    background: #f5f5f5;
    border: none;
    width: 35px;
    height: 35px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all 0.3s ease;
    z-index: 100;
    color: #666;
}

.search-dropdown-close:hover {
    background: var(--color-primary);
    color: white;
    transform: rotate(90deg);
}

/* Import all your existing offcanvas styles here */
/* Copy all your .search-offcanvas styles and replace .search-offcanvas with .search-dropdown-content */
/* For example: */
.search-dropdown-content .search-input-wrapper {
    position: relative;
    margin-bottom: 30px;
}

.search-dropdown-content .search-input-wrapper i {
    position: absolute;
    left: 15px;
    top: 50%;
    transform: translateY(-50%);
    color: #888;
    font-size: 18px;
    z-index: 1;
}

.search-dropdown-content .search-input {
    width: 100%;
    padding: 15px 18px 15px 45px;
    border: 2px solid #eee;
    border-radius: 12px;
    font-size: 16px;
    transition: all 0.3s ease;
}

.search-dropdown-content .search-input:focus {
    border-color: var(--color-primary);
    outline: none;
    box-shadow: 0 0 0 3px rgba(144, 9, 12, 0.1);
}

/* Copy ALL your existing offcanvas styles from your CSS */
/* Just replace .search-offcanvas with .search-dropdown-content */
/* Suggestions */
.search-dropdown-content .suggestions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-bottom: 30px;
}

.search-dropdown-content .suggestion-chip {
    padding: 8px 16px;
    background: #f0f0f0;
    border-radius: 30px;
    font-size: 14px;
    cursor: pointer;
    transition: all 0.3s ease;
}

.search-dropdown-content .suggestion-chip:hover {
    background: var(--color-primary);
    color: white;
}

/* Concern Section */
.search-dropdown-content .concern-section {
    margin-bottom: 30px;
}

.search-dropdown-content .section-title {
    color: var(--color-primary);
    font-size: 24px;
    font-weight: 600;
    margin-bottom: 20px !important;
}

.search-dropdown-content .concern-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
}

.search-dropdown-content .concern-item {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 15px;
    background: #f9f9f9;
    border-radius: 12px;
    cursor: pointer;
    transition: all 0.3s ease;
}

.search-dropdown-content .concern-item:hover {
    background: white;
    border-color: var(--color-primary);
    transform: translateY(-2px);
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.05);
}

.search-dropdown-content .concern-icon {
    width: 50px;
    height: 50px;
    background: white;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid #eee;
}

/* Recommended Header */
.search-dropdown-content .recommended-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin: 30px 0 20px;
}

.search-dropdown-content .recommended-header h3 {
    color: var(--color-primary);
    font-size: 24px;
    font-weight: 600;
    margin: 0;
}

.search-dropdown-content .recommended-nav {
    display: flex;
    gap: 10px;
}

.search-dropdown-content .rec-swiper-button-prev,
.search-dropdown-content .rec-swiper-button-next {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background: white;
    border: 1px solid #eee;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all 0.3s ease;
    color: var(--color-primary);
}

/* Product Card Styles */
.search-dropdown-content .product-card {
    background: white;
    border-radius: 12px;
    padding: 15px;
    border: 1px solid #eee;
    height: 100%;
    display: flex;
    flex-direction: column;
}

.search-dropdown-content .img-container {
    position: relative;
    height: 180px;
    border-radius: 8px;
    overflow: hidden;
    margin-bottom: 12px;
}

/* Continue copying all your offcanvas styles... */
/* Responsive */
@media (max-width: 768px) {
    .search-dropdown-content {
        width: 100vw;
        position: fixed;
        top: 60px;
        left: 0;
        right: 0;
        border-radius: 0;
        max-height: calc(100vh - 60px);
    }

    .integrated-search .search-box {
        min-width: auto;
    }
}

/* Update this part in your CSS */
.search-dropdown-content {
    position: absolute;
    top: calc(100% + 10px);
    left: 50%;
    /* Change from right: 0 to left: 50% */
    transform: translateX(-50%) translateY(-10px);
    /* Center horizontally and add initial Y offset */
    width: 90vw;
    max-width: 1200px;
    background: white;
    border-radius: 16px;
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.15);
    opacity: 0;
    visibility: hidden;
    transition: all 0.3s ease;
    z-index: 1000;
    max-height: 80vh;
    overflow-y: auto;
}

.integrated-search.active .search-dropdown-content {
    opacity: 1;
    visibility: visible;
    transform: translateX(-50%) translateY(0);
    /* Keep centered when visible */
}

/* Optional: Add a small arrow/pointer */
.search-dropdown-content::before {
    content: "";
    position: absolute;
    top: -8px;
    left: 50%;
    transform: translateX(-50%);
    width: 16px;
    height: 16px;
    background: white;
    rotate: 45deg;
    box-shadow: -4px -4px 8px rgba(0, 0, 0, 0.05);
    z-index: -1;
}

/* Mobile responsive */
@media (max-width: 768px) {
    .search-dropdown-content {
        left: 50%;
        width: 95vw;
        transform: translateX(-50%) translateY(-10px);
    }

    .integrated-search.active .search-dropdown-content {
        transform: translateX(-50%) translateY(0);
    }

    .search-dropdown-content::before {
        display: none;
        /* Hide arrow on mobile */
    }
}

.search-dropdown-content {
    position: fixed;
    /* change from absolute */
    top: 120px;
    /* adjust based on navbar height */
    left: 50%;
    transform: translateX(-50%) translateY(-20px);
    width: 90vw;
    max-width: 1200px;
    background: white;
    border-radius: 16px;
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.15);
    opacity: 0;
    visibility: hidden;
    transition: all 0.3s ease;
    z-index: 9999;
    max-height: 80vh;
    overflow-y: auto;
}

/* Active state */
.integrated-search.active .search-dropdown-content {
    opacity: 1;
    visibility: visible;
    transform: translateX(-50%) translateY(0);
}

.search-dropdown-content {
    position: fixed;
    top: 110px;
    /* adjust based on your navbar height */
    left: 50%;
    transform: translate(-50%, -20px);
    width: 90vw;
    max-width: 1400px;
    background: #fff;
    border-radius: 16px;
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.15);
    opacity: 0;
    visibility: hidden;
    transition: all 0.3s ease;
    z-index: 9999;
    max-height: 80vh;
    overflow-y: auto;
}

.search-dropdown-content.active {
    opacity: 1;
    visibility: visible;
    transform: translate(-50%, 0);
}

.otp-input {
    width: 55px;
    height: 55px;
    text-align: center;
    font-size: 20px;
    border: 1px solid #ccc;
    border-radius: 12px;
    outline: none;
}

.otp-input:focus {
    border-color: #7B2E24;
    box-shadow: 0 0 0 2px rgba(123, 46, 36, 0.2);
}

/* modern card style (used outside modal for demo, but same as modal interior) */
.demo-modal-card {
    max-width: 380px;
    width: 100%;
    background: #ffffff;
    border-radius: 20px;
    box-shadow: 0 20px 35px -8px rgba(0, 0, 0, 0.15), 0 5px 12px -4px rgba(0, 0, 0, 0.05);
    padding: 32px 24px 44px;
    /* Finalized padding for resend visibility */
    transition: transform 0.2s;
    border: none;
    overflow: visible;
}

.demo-modal-card:first-child {
    margin-right: 8px;
}

.overline-head {
    font-size: 13px;
    letter-spacing: 0.3px;
    color: #8B8B93;
    font-weight: 500;
    margin-bottom: 2px;
}

h5.fw-semibold {
    font-weight: 600;
    font-size: 1.5rem;
    letter-spacing: -0.02em;
    color: #1C1C1E;
    margin-bottom: 4px;
}

.text-muted.small {
    color: #666670 !important;
    font-size: 0.9rem;
    font-weight: 400;
    padding: 4px 0;
    padding-bottom: 10px;
}

/* phone input row — elevated */
.phone-input-group {
    background: #F8F9FC;
    border: 1.5px solid #E9EAF0;
    border-radius: 20px;
    padding: 6px 6px 6px 18px;
    transition: all 0.15s ease;
    margin: 20px 0 22px;
}

.phone-input-group:focus-within {
    border-color: #7B2E24;
    background: #ffffff;
    box-shadow: 0 0 0 4px rgba(123, 46, 36, 0.08);
}

.country-code {
    font-weight: 500;
    font-size: 1rem;
    color: #1C1C1E;
    background: transparent;
    border: none;
    padding: 8px 4px 8px 0;
    display: flex;
    align-items: center;
    gap: 4px;
}

.country-code .material-symbols-outlined {
    font-size: 20px;
    color: #5E5E6B;
}

.phone-input-group .form-control {
    background: transparent;
    border: none;
    padding: 14px 0 14px 8px;
    font-size: 1rem;
    border-left: 1.5px solid #E0E2E9;
    border-radius: 0;
    margin-left: 8px;
}

.phone-input-group .form-control::-moz-placeholder {
    color: #B0B3C1;
    font-weight: 400;
}

.phone-input-group .form-control::placeholder {
    color: #B0B3C1;
    font-weight: 400;
}

.phone-input-group .form-control:focus {
    box-shadow: none;
}

/* primary button */
.btn-primary-custom {
    padding: 16px 20px;
    font-weight: 600;
    font-size: 1.1rem;
    letter-spacing: 0.2px;
    color: white;
    transition: all 0.2s;
    margin-bottom: 20px;
    background: transparent !important;
    border-radius: 6px !important;
    border: 1px solid var(--Primary-500, #622F2B) !important;
    color: var(--color-primary) !important;
}

.btn-primary-custom:hover {
    background: var(--color-primary) !important;
    transform: scale(1.01);
    box-shadow: 0 12px 24px -8px rgba(123, 46, 36, 0.5);
    color: white !important;
}

.btn-primary-custom:active {
    background: #64241c;
    transform: scale(0.99);
}

/* checkbox modern style */
.form-check {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
}

.form-check-input {
    width: 1.2rem;
    height: 1.2rem;
    border: 2px solid #CACDD8;
    border-radius: 6px;
    background-color: #ffffff;
    cursor: pointer;
    transition: all 0.1s;
}

.form-check-input:checked {
    background-color: #7B2E24;
    border-color: #7B2E24;
}

.form-check-label {
    color: #3A3A44;
    font-weight: 450;
    font-size: 0.9rem;
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none;
}

/* OTP inputs — refined */
.otp-boxes {
    display: flex;
    justify-content: center;
    gap: 12px;
    margin: 24px 0 28px;
}

.otp-input-modern {
    width: 68px;
    height: 74px;
    text-align: center;
    font-size: 32px;
    font-weight: 500;
    background: #F8F9FC;
    border: 1.5px solid #E3E5ED;
    border-radius: 24px;
    color: #1C1C1E;
    transition: 0.15s;
    box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.02);
}

.otp-input-modern:focus {
    border-color: #7B2E24;
    background: #ffffff;
    box-shadow: 0 0 0 4px rgba(123, 46, 36, 0.12);
    outline: none;
}

/* remove spinner */
.otp-input-modern::-webkit-outer-spin-button,
.otp-input-modern::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

.otp-input-modern[type=number] {
    -moz-appearance: textfield;
}

/* subtle extra polish */
.divider-text {
    display: flex;
    align-items: center;
    color: #A7AAB8;
    font-size: 12px;
    margin: 12px 0 4px;
}

.keep-me-row {
    margin-top: 6px;
}

/* icon hint inside phone */
.material-symbols-outlined {
    font-variation-settings: "FILL" 0, "wght" 400, "GRAD" 0, "opsz" 24;
}

/* product quick card (from the description) */
.product-mini-card {
    background: #F5F7FA;
    border-radius: 22px;
    padding: 14px 18px;
    margin-top: 20px;
    display: flex;
    align-items: center;
    gap: 12px;
    border: 1px solid #ECEEF5;
}

.product-mini-card .product-img-placeholder {
    width: 48px;
    height: 48px;
    background: #D9DDE8;
    border-radius: 16px;
}

.product-info small {
    color: #2C2C34;
    font-weight: 500;
    opacity: 0.8;
}

.product-info .price {
    font-weight: 700;
    color: #1C1C1E;
    font-size: 1.2rem;
}

.stars {
    color: #f5b342;
    font-size: 13px;
}

/* reference style for "10" badge? we add light badge */
.badge-10 {
    background: #EBE9F0;
    color: #2F2F3B;
    border-radius: 60px;
    padding: 4px 12px;
    font-weight: 600;
    font-size: 14px;
    display: inline-block;
}

/* Primary button */
.btn-primary-custom {
    background: #7B2E24;
    color: #fff;
    border: none;
    border-radius: 14px;
    padding: 12px;
}

.btn-primary-custom:hover {
    background: #64241c;
}

/* OTP boxes */
.otp-boxes {
    display: flex;
    justify-content: center;
    gap: 10px;
    margin: 20px 0;
}

.otp-input-modern {
    width: 55px;
    height: 55px;
    text-align: center;
    font-size: 20px;
    border: 1px solid #ccc;
    border-radius: 12px;
}

.otp-input-modern:focus {
    border-color: #7B2E24;
    box-shadow: 0 0 0 2px rgba(123, 46, 36, 0.2);
    outline: none;
}

@media (max-width: 768px) {
    #main nav .nav-container {
        padding-bottom: 100px;
        /* Make space for absolute search box */
        overflow: visible !important;
        /* Critical: prevent clipping the search dropdown */
    }

    #main nav .nav-container .nav-icons {
        position: static;
    }

    #main nav .nav-container .nav-icons ul {
        gap: 8px;
        /* Matched the 8px from redesign block */
        justify-content: flex-end;
    }

    /* Fix order of items to follow HTML sequence */
    #main nav .nav-container .nav-icons ul li {
        order: initial;
    }

    /* Make wishlist & profile visible in mobile */
    #main nav .nav-container .nav-icons ul li:not(:nth-child(1)):not(:nth-child(3)) {
        display: block !important;
    }

    /* Separate full width search box below nav */
    #main nav .nav-container .nav-icons ul li.search-container {
        position: absolute !important;
        top: 80px !important;
        left: 16px !important;
        margin: 0 !important;
        width: calc(100% - 32px) !important;
    }

    #main nav .nav-container .nav-icons ul li.search-container .integrated-search {
        width: 100% !important;
        max-width: none !important;
    }

    #main nav .nav-container .nav-icons ul li.search-container .integrated-search .search-box {
        width: 100% !important;
        min-width: 100% !important;
        border: 1px solid #1E1E1E !important;
        background-color: #fff !important;
        border-radius: 4px !important;
        padding: 10px 15px !important;
    }

    /* Responsive inner dropdown for the search */
    .search-dropdown-content {
        width: 100% !important;
        left: 0 !important;
        right: 0 !important;
        top: calc(100% + 10px) !important;
        transform: translateX(0) !important;
        max-width: 100vw !important;
        border-radius: 8px !important;
        padding: 15px !important;
    }

    #main .hero-swiper-button-next,
    #main .hero-swiper-button-prev {
        display: none;
    }


    .search-dropdown-content .concern-grid {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        gap: 20px;
    }


    .donate-cta {
        background: var(--color-primary);
        color: white;
        padding: 24px 30px;
        font-size: 14px;
        font-weight: 600;
        display: flex;
        gap: 8px;
        justify-content: center;
        transition: all 0.3s ease;
        align-items: center;
        flex-direction: column-reverse;
        text-align: center;
    }

    #main footer .row {
        padding: 0 20px;
    }

    #main footer .copyright {
        margin-top: 20px;
        padding: 0 20px;
        border-top: 1px solid #eee;
        padding-top: 24px;
    }

    .size-boxes {
        display: flex;
        flex-wrap: nowrap !important;
        gap: 12px;
        margin-top: 10px;
        justify-content: space-between;
        overflow: scroll;
    }

    .customer-reviews-section .col-6 {
        width: 100%;
    }

    .review-images {
        display: flex;
        justify-content: center;
    }

    .recommended-swiper .product-card .img-container {
        /* MY: Fixed height to prevent image from stretching too far and overlaying text */
        height: 180px !important;
        overflow: hidden;
    }
}

/* =============================================
   Footer Accordion — Desktop: always open
   ============================================= */
#main footer .footer-accordion {
    /* Remove default details marker */
    list-style: none;
}

#main footer .footer-accordion>summary {
    /* Desktop: looks like a plain heading, not interactive */
    display: flex;
    align-items: center;
    justify-content: space-between;
    list-style: none;
    cursor: default;
    pointer-events: none;
}

/* Hide the default triangle marker cross-browser */
#main footer .footer-accordion>summary::-webkit-details-marker,
#main footer .footer-accordion>summary::marker {
    display: none;
}

/* Hide chevron icon on desktop */
#main footer .footer-accordion>summary .footer-chevron {
    display: none;
}

/* Keep details always "open" visually on desktop by not using the open attribute,
   instead we force the content visible via CSS. The <details> element is still 
   technically closed; we override with display block. */
@media (min-width: 679px) {
    #main footer .footer-accordion>summary {
        pointer-events: none;
        cursor: default;
    }

    /* Force inner content always visible on desktop */
    #main footer .footer-accordion>ul,
    #main footer .footer-accordion>p,
    #main footer .footer-accordion>.email,
    #main footer .footer-accordion>a {
        display: block !important;
    }
}

/* =============================================
   Footer Accordion — Mobile: collapsible
   ============================================= */
@media (max-width: 678px) {
    #main footer .footer-accordion {
        width: 100%;
        border-bottom: 1px solid rgba(0, 0, 0, 0.1);
        padding-bottom: 0;
    }

    #main footer .footer-accordion>summary {
        display: flex;
        align-items: center;
        justify-content: space-between;
        padding: 14px 0;
        cursor: pointer;
        pointer-events: all;
        -webkit-user-select: none;
        user-select: none;
        justify-content: center;
        gap: 12px;
    }

    #main footer .footer-accordion>summary span {
        color: var(--color-black);
        font-size: 16px;
        font-weight: 600;
    }

    /* Show chevron on mobile */
    #main footer .footer-accordion>summary .footer-chevron {
        display: inline-block;
        font-size: 13px;
        color: var(--color-primary);
        transition: transform 0.3s ease;
    }

    /* Rotate chevron when open */
    #main footer .footer-accordion[open]>summary .footer-chevron {
        transform: rotate(180deg);
    }

    /* Animate the content sliding open */
    #main footer .footer-accordion>ul,
    #main footer .footer-accordion>p,
    #main footer .footer-accordion>.email,
    #main footer .footer-accordion>a {
        animation: footerAccordionOpen 0.25s ease;
    }

    #main footer .footer-accordion>ul {
        margin-top: 8px;
        margin-bottom: 12px;
    }

    #main footer .footer-accordion>ul li {
        margin-bottom: 10px;
    }

    #main footer .footer-accordion>ul li a {
        font-size: 14px;
    }

    /* card2/card3 take full width stacked */
    #main footer .card2,
    #main footer .card3 {
        width: 100% !important;
        max-width: 100% !important;
        flex: 0 0 100% !important;
        margin-bottom: 0 !important;
        padding: 0 !important;
    }
}

@keyframes footerAccordionOpen {
    from {
        opacity: 0;
        transform: translateY(-6px);
    }

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

/*# sourceMappingURL=main.css.map */

.verification-toggle .flex_wrap {
    display: flex;
    gap: 10px;
}

.phone_grow,
.email_grow {
    flex-grow: 1;
}


.btn-check:checked+.btn,
.btn.active,
.btn.show,
.btn:first-child:active,
:not(.btn-check)+.btn:active {
    color: var(--color-white);
    background-color: var(--color-primary);
    border-color: var(--color-primary);
}

.btn-outline-primary {
    color: var(--color-black);
    border-color: var(--color-primary);
}

.btn-outline-primary:hover {
    color: var(--color-black);
    background-color: transparent;
    border-color: var(--color-primary);
}

.txt_red {
    color: red !important;
}

.txt_green {
    color: green !important;
}

.txt_blue {
    color: blue !important;
}

/* MY: Scroll to Top Button Styles */
#scrollToTopBtn {
    position: fixed;
    bottom: 30px;
    right: 30px;
    width: 45px;
    height: 45px;
    background-color: var(--color-primary, #90090C);
    color: white;
    border: none;
    border-radius: 50%;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 18px;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.2);
    opacity: 0;
    visibility: hidden;
    transform: translateY(20px);
    transition: all 0.3s ease-in-out;
    z-index: 9999;
}

#scrollToTopBtn.show {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}

#scrollToTopBtn:hover {
    background-color: #7B2E24;
    transform: translateY(-5px);
    box-shadow: 0 6px 15px rgba(0, 0, 0, 0.3);
}

@media (max-width: 768px) {
    #scrollToTopBtn {
        bottom: 90px;
        /* MY: Slightly higher on mobile to avoid overlapping floating search/nav */
        right: 20px;
        width: 40px;
        height: 40px;
        font-size: 16px;
    }
}

/* MY: Mobile Responsive Fixes for Testimonials (320px - 480px) */
@media (max-width: 768px) {
    #main .testimonial {
        padding: 40px 15px;
        /* Reduce horizontal padding to prevent screen bleed */
        overflow: hidden;
    }

    #main .testimonial .heading {
        flex-direction: column;
        text-align: center;
        gap: 15px;
    }

    #main .testimonial .heading h3 {
        font-size: 28px;
        /* Scale down title */
    }

    #main .testimonial .heading .swiper-nav-buttons {
        justify-content: center;
        width: 100%;
    }

    /* Let Swiper calculate single card width */
    #main .testimonial .swiper-slide {
        box-sizing: border-box;
    }

    #main .testimonial .swiper .swiper-slide .info-card {
        padding: 18px 15px;
        /* Tighter padding inside card */
        margin: 0;
        width: 100%;
        box-sizing: border-box;
    }

    /* Stack reviewer info */
    #main .testimonial .swiper .swiper-slide .info-card .info {
        flex-direction: column;
        align-items: flex-start;
        gap: 12px;
        padding-bottom: 12px;
    }

    .testimonial-card .reviewer-meta {
        width: 100%;
    }

    /* Typography fixes to prevent overflow */
    .testimonial-card .reviewer-name {
        font-size: 15px;
        word-wrap: break-word;
    }

    .testimonial-card .review-title-text {
        font-size: 16px;
        white-space: normal;
        word-wrap: break-word;
        display: block;
        margin-top: 8px;
    }

    .testimonial-card .review-body-text {
        font-size: 14px;
        word-wrap: break-word;
        line-height: 1.5;
    }

    /* Review Images Grid Fix - Allow wrapping */
    .review-images-grid {
        display: flex;
        flex-wrap: wrap;
        gap: 8px;
        margin-top: 15px;
        width: 100%;
    }

    .review-images-grid .review-img,
    .review-images-grid .review-video-thumb {
        width: 70px;
        height: 70px;
        object-fit: cover;
        border-radius: 8px;
        flex-shrink: 0;
        position: relative;
        display: block;
    }

    .review-video-thumb video {
        width: 100%;
        height: 100%;
        object-fit: cover;
        border-radius: 8px;
    }

    /* Fix play button floating off video thumbnail */
    .review-video-thumb i,
    .review-video-thumb .fa-play {
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        color: white;
        z-index: 2;
        pointer-events: none;
    }

    /* Disable hover effects properly on mobile */
    .testimonial-card,
    #main .testimonial .swiper .swiper-slide .info-card {
        transform: none !important;
        transition: none !important;
    }

    #main .testimonial .swiper .swiper-slide .info-card:hover {
        box-shadow: 0 4px 6px rgba(0, 0, 0, 0.05) !important;
        /* Neutral static shadow */
        transform: none !important;
    }

    /* Fix header controls overlapping */
    .home-review-sort {
        display: flex;
        flex-direction: column;
        align-items: center;
        width: 100%;
        margin-bottom: 5px;
    }

    #main .testimonial .view-all {
        width: 100%;
        text-align: center;
        justify-content: center;
        margin-bottom: 10px;
    }

    /* Wrap swiper nav buttons */
    #main .testimonial .heading .swiper-nav-buttons,
    #main .our-blog .heading .swiper-nav-buttons,
    #main .our-strength .heading .swiper-nav-buttons {
        flex-direction: column;
        gap: 10px;
        align-items: center;
        justify-content: center;
    }

    /* Fix main video section overflow causing scrollbars */
    .video-player-wrapper {
        width: 100% !important;
        box-sizing: border-box;
    }

    .video-player-wrapper iframe,
    .video-player-wrapper .video-thumbnail,
    .video-player-wrapper .video-thumbnail img {
        width: 100% !important;
        max-width: 100vw;
        height: auto !important;
        aspect-ratio: 16 / 9;
        /* Ensures the video retains correct proportions */
        border-radius: 12px;
    }

    .video {
        overflow: hidden;
        width: 100%;
    }

    /* Fix Pagination visibility on mobile */
    #main .testimonial .testimonial-swiper-pagination {
        display: block !important;
        position: relative !important;
        margin-top: 15px !important;
        z-index: 20 !important;
        text-align: center;
        width: 100% !important;
    }

    /* Important: Ensure the swiper wrapper height is calculated properly */
    .testimonial-swiper {
        padding-bottom: 25px;
        /* Leave space for pagination dots */
    }
}