/*
Theme Name: Organic
Theme URI: https://templatesjungle.com/
Author: TemplatesJungle
Author URI: https://templatesjungle.com/
Description: Organic is specially designed product packaged for eCommerce store websites.
Version: 1.1
*/

/*--------------------------------------------------------------
This is main CSS file that contains custom style rules used in this template
--------------------------------------------------------------*/

/*--------------------------------------------------------------
/** VARIABLES
--------------------------------------------------------------*/

body {
    --heading-font: "Inter", sans-serif;
    --bs-link-color: #333;
    --bs-link-hover-color: #333;
    --bs-link-color-rgb: 40, 40, 40;
    --bs-link-hover-color-rgb: 0, 0, 0;
    --bs-light-rgb: 248, 248, 248;
    --bs-font-sans-serif: "Inter", sans-serif;
    --bs-body-font-family: var(--bs-font-sans-serif);
    --bs-body-font-size: 1rem;
    --bs-body-font-weight: 400;
    --bs-body-line-height: 2;
    --bs-body-color: #747474;
    --bs-dark: #060809;
    --bs-dark-rgb: 6, 8, 9;
    --bs-primary: #6BB252;
    --bs-primary-rgb: 107, 178, 82;
    --bs-secondary: #364127;
    --bs-secondary-rgb: 54, 65, 39;
    --bs-danger: #F95F09;
    --bs-danger-rgb: 249, 95, 9;
    --bs-success: #a3be4c;
    --bs-success-rgb: 163, 190, 76;
    --bs-primary-bg-subtle: #FFF9EB;
    --bs-success-bg-subtle: #eef5e5;
    --bs-border-color: #D0D0D0;
    --swiper-theme-color: var(--bs-primary);
}

.btn-primary {
    --bs-btn-color: #fff;
    --bs-btn-bg: var(--bs-primary);
    --bs-btn-border-color: transparent;
    --bs-btn-hover-color: #fff;
    --bs-btn-hover-bg: #f7a422;
    --bs-btn-hover-border-color: transparent;
    --bs-btn-focus-shadow-rgb: 49, 132, 253;
    --bs-btn-active-color: #fff;
    --bs-btn-active-bg: var(--bs-primary);
    --bs-btn-active-border-color: transparent;
    --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
    --bs-btn-disabled-color: #fff;
    --bs-btn-disabled-bg: #d3d7dd;
    --bs-btn-disabled-border-color: transparent;
}

.btn-outline-primary {
    --bs-btn-color: var(--bs-primary);
    --bs-btn-border-color: var(--bs-primary);
    --bs-btn-hover-color: #fff;
    --bs-btn-hover-bg: #ffc107;
    --bs-btn-hover-border-color: #ffc107;
    --bs-btn-focus-shadow-rgb: 13, 110, 253;
    --bs-btn-active-color: #fff;
    --bs-btn-active-bg: #ffc107;
    --bs-btn-active-border-color: #ffc107;
    --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
    --bs-btn-disabled-color: #fff3cd;
    --bs-btn-disabled-bg: transparent;
    --bs-btn-disabled-border-color: #fff3cd;
    --bs-gradient: none;
}

.btn-outline-light {
    --bs-btn-color: #747474;
    --bs-btn-border-color: #EFEFEF;
    --bs-btn-hover-color: #000;
    --bs-btn-hover-bg: #EFEFEF;
    --bs-btn-hover-border-color: #EFEFEF;
    --bs-btn-focus-shadow-rgb: 248, 249, 250;
    --bs-btn-active-color: #000;
    --bs-btn-active-bg: #EFEFEF;
    --bs-btn-active-border-color: #EFEFEF;
    --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
    --bs-btn-disabled-color: #EFEFEF;
    --bs-btn-disabled-bg: transparent;
    --bs-btn-disabled-border-color: #EFEFEF;
    --bs-gradient: none;
}

.btn-warning {
    --bs-btn-color: #747474;
    --bs-btn-bg: #FCF7EB;
    --bs-btn-border-color: #FCF7EB;
    --bs-btn-hover-color: #747474;
    --bs-btn-hover-bg: #FFECBE;
    --bs-btn-hover-border-color: #FFECBE;
    --bs-btn-focus-shadow-rgb: 217, 164, 6;
    --bs-btn-active-color: #000;
    --bs-btn-active-bg: #FFECBE;
    --bs-btn-active-border-color: #FFECBE;
    --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
    --bs-btn-disabled-color: #000;
    --bs-btn-disabled-bg: #FCF7EB;
    --bs-btn-disabled-border-color: #FCF7EB;
}

.btn-success {
    --bs-btn-color: #222;
    --bs-btn-bg: #EEF5E4;
    --bs-btn-border-color: #EEF5E4;
    --bs-btn-hover-color: #222;
    --bs-btn-hover-bg: #9de3c2;
    --bs-btn-hover-border-color: #9de3c2;
    --bs-btn-focus-shadow-rgb: 60, 153, 110;
    --bs-btn-active-color: #222;
    --bs-btn-active-bg: #9de3c2;
    --bs-btn-active-border-color: #9de3c2;
    --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
    --bs-btn-disabled-color: #222;
    --bs-btn-disabled-bg: #EEF5E4;
    --bs-btn-disabled-border-color: #EEF5E4;
}

.btn-danger {
    --bs-btn-color: #222;
    --bs-btn-bg: #FFEADA;
    --bs-btn-border-color: #FFEADA;
    --bs-btn-hover-color: #222;
    --bs-btn-hover-bg: #ecc9af;
    --bs-btn-hover-border-color: #ecc9af;
    --bs-btn-focus-shadow-rgb: 60, 153, 110;
    --bs-btn-active-color: #222;
    --bs-btn-active-bg: #ecc9af;
    --bs-btn-active-border-color: #ecc9af;
    --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
    --bs-btn-disabled-color: #222;
    --bs-btn-disabled-bg: #FFEADA;
    --bs-btn-disabled-border-color: #FFEADA;
}

body {
    letter-spacing: 0.03em;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    font-family: var(--heading-font);
    color: var(--bs-dark);
    font-weight: 700;
}

.breadcrumb.text-white {
    --bs-breadcrumb-divider-color: #fff;
    --bs-breadcrumb-item-active-color: var(--bs-primary);
}

.dropdown-menu {
    --bs-dropdown-link-active-bg: var(--bs-primary);
}

.nav-pills .nav-link {
    --bs-nav-pills-link-active-color: #111;
    --bs-nav-pills-link-active-bg: #f1f1f1;
}

.pagination {
    --bs-pagination-active-bg: var(--bs-primary);
    --bs-pagination-active-border-color: var(--bs-primary);
}

.container,
.container-fluid,
.container-lg,
.container-md,
.container-sm,
.container-xl,
.container-xxl {
    --bs-gutter-x: 3rem;
}

/*----------------------------------------------*/

/* 6. SITE STRUCTURE */

/*----------------------------------------------*/

/* 6.1 Header
--------------------------------------------------------------*/

/* Preloader */

.preloader-wrapper {
    width: 100%;
    height: 100vh;
    margin: 0 auto;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 111;
    background: #fff;
}

.preloader-wrapper .preloader {
    margin: 20% auto 0;
    transform: translateZ(0);
}

.preloader:before,
.preloader:after {
    content: '';
    position: absolute;
    top: 0;
}

.preloader:before,
.preloader:after,
.preloader {
    border-radius: 50%;
    width: 2em;
    height: 2em;
    animation: animation 1.2s infinite ease-in-out;
}

.preloader {
    animation-delay: -0.16s;
}

.preloader:before {
    left: -3.5em;
    animation-delay: -0.32s;
}

.preloader:after {
    left: 3.5em;
}

@keyframes animation {
    0%,
    80%,
    100% {
        box-shadow: 0 2em 0 -1em var(--bs-primary);
    }
    40% {
        box-shadow: 0 2em 0 0 var(--bs-primary);
    }
}

/* *** Start editing below this line *** */

/* .container-fluid {
  max-width: 1600px;
} */

@media (min-width: 1400px) {
    .container,
    .container-lg,
    .container-md,
    .container-sm,
    .container-xl,
    .container-xxl {
        max-width: 1400px;
    }
}

.banner-blocks {
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    grid-template-rows: repeat(2, 1fr);
    grid-gap: 2rem;
}

.block-1 {
    grid-area: 1 / 1 / 3 / 8;
}

.block-2 {
    grid-area: 1 / 8 / 2 / 13;
}

.block-3 {
    grid-area: 2 / 8 / 3 / 13;
}

@media screen and (max-width:1140px) {
    .banner-blocks {
        grid-template-columns: 1fr;
        grid-template-rows: repeat(4, 1fr);
    }
    .block-1 {
        grid-area: 1 / 1 / 3 / 2;
    }
    .block-2 {
        grid-area: 3 / 1 / 4 / 2;
    }
    .block-3 {
        grid-area: 4 / 1 / 5 / 2;
    }
}

/* Swiper carousel */

.swiper-prev,
.swiper-next {
    width: 38px;
    height: 38px;
    line-height: 38px;
    background: #F1F1F1;
    color: #222222;
    padding: 0;
    text-align: center;
    border-radius: 10px;
    --bs-btn-border-color: transparent;
    --bs-btn-active-bg: #ec9b22;
    --bs-btn-active-border-color: transparent;
    --bs-btn-hover-bg: var(--bs-primary);
    --bs-btn-hover-border-color: transparent;
    --bs-btn-disabled-color: #ccc;
    --bs-btn-disabled-bg: #eaeaea;
    --bs-btn-disabled-border-color: #eaeaea
}

.swiper-prev:hover,
.swiper-next:hover {
    background: var(--bs-primary);
}

/* category carousel */

.category-carousel .category-item {
    background: #FFFFFF;
    border: 1px solid #FBFBFB;
    box-shadow: 0px 5px 22px rgba(0, 0, 0, 0.04);
    border-radius: 16px;
    text-align: center;
    padding: 60px 20px;
    margin: 20px 0;
    transition: box-shadow 0.3s ease-out, transform 0.3s ease-out;
}

.category-carousel .category-item:hover {
    transform: translate3d(0, -10px, 0);
    box-shadow: 0px 21px 44px rgba(0, 0, 0, 0.08);
}

.category-carousel .category-item .category-title {
    font-weight: 600;
    font-size: 20px;
    line-height: 27px;
    letter-spacing: 0.02em;
    text-transform: capitalize;
    color: #222222;
    margin-top: 20px;
}

/* brand carousel */

.brand-carousel .brand-item {
    background: #FFFFFF;
    border: 1px solid #FBFBFB;
    box-shadow: 0px 5px 22px rgba(0, 0, 0, 0.04);
    border-radius: 16px;
    padding: 16px;
}

.brand-carousel .brand-item img {
    width: 100%;
    border-radius: 12px;
}

.brand-carousel .brand-item .brand-details {
    margin-left: 15px;
}

.brand-carousel .brand-item .brand-title {
    margin: 0;
}

/* product tabs */

.product-tabs .nav-tabs {
    justify-content: flex-end;
    border: none;
    --bs-nav-link-hover-color: #111;
    --bs-nav-link-color: #555;
    --bs-nav-tabs-link-border-color: #fff;
    --bs-nav-tabs-link-hover-border-color: transparent;
    --bs-nav-tabs-link-active-border-color: #fff;
}

.product-tabs .nav-tabs .nav-link.active,
.product-tabs .nav-tabs .nav-item.show .nav-link {
    /* border: none; */
    border-bottom: 3px solid var(--bs-primary);
}

/* products-carousel */

.products-carousel.swiper,
.products-carousel.swiper-container {
    overflow: visible;
}

/* product-grid */

input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button {
    opacity: 1;
}

.product-item .button-area .quantity {
    padding: 0.5rem;
}

.product-item .button-area {
    display: none;
    position: absolute;
    text-align: center;
    background: #fff;
    width: 100%;
    left: 0;
    bottom: -47px;
    z-index: 1;
    box-shadow: 0px 20px 44px rgba(0, 0, 0, 0.08);
    /* transition: box-shadow 0.3s ease-out; */
}

.product-item {
    position: relative;
    padding: 10px;
    background: #FFFFFF;
    border-radius: 16px;
    margin-bottom: 30px;
    box-shadow: 0px 0px 22px rgba(0, 0, 0, 0);
    /* transition: box-shadow 0.3s ease-out, margin 0.3s ease-out; */
}

.product-item:hover .button-area {
    display: block;
}

.product-item:hover {
    /* z-index: 1; */
    /* margin-bottom: -50px; */
    /* max-height: 500px; */
    box-shadow: 0px 0px 44px rgba(0, 0, 0, 0.08);
}

.product-item figure {
    text-align: center;
}

.product-item figure img {
    max-height: 210px;
    height: auto;
}

.product-item .product-qty {
    width: 85px;
}

.product-item .btn-link {
    text-decoration: none;
}

.product-item #quantity {
    height: auto;
    width: 28px;
    text-align: center;
    border: none;
    margin: 0;
    padding: 0;
}

.product-item .btn-number {
    width: 26px;
    height: 26px;
    line-height: 1;
    text-align: center;
    background: #FFFFFF;
    border: 1px solid #E2E2E2;
    border-radius: 6px;
    color: #222;
    padding: 0;
}

@media screen and (max-width:991px) {
    .product-item {
        box-shadow: 0px 0px 44px rgba(0, 0, 0, 0.08);
    }
    .product-item .button-area {
        position: relative;
        display: block;
        bottom: auto;
        box-shadow: none;
    }
}

/* cart */

.cart .product-qty {
    min-width: 130px;
}

/* floating image */

.image-float {
    margin-top: -140px;
    margin-bottom: -140px;
}

@media screen and (max-width:991px) {
    .image-float {
        margin: 0;
    }
}

/* post item */

.post-item .post-meta {
    font-size: 0.8rem;
    line-height: 1;
}

.post-item .post-meta svg {
    margin-right: 5px;
}

@media screen and (max-width: 991px) {
    /* offcanvas menu */
    .offcanvas-body .nav-item {
        font-weight: 700;
        border-bottom: 1px solid #d1d1d1;
    }
    .offcanvas-body .filter-categories {
        width: 100%;
        margin-bottom: 20px !important;
        border: 1px solid #d1d1d1 !important;
        padding: 14px;
        border-radius: 8px;
    }
    /* dropdown-menu */
    .dropdown-menu {
        padding: 0;
        border: none;
        line-height: 1.5;
        font-weight: 400;
    }
    .dropdown-menu a {
        padding-left: 0;
    }
    .dropdown-toggle::after {
        position: absolute;
        right: 0;
        top: 21px;
    }
}

/* single product */

/* product-thumbnail-slider */

.product-thumbnail-slider {
    height: 740px;
}

@media screen and (max-width:992px) {
    .product-thumbnail-slider {
        margin-top: 20px;
        height: auto;
    }
}

@media screen and (min-width:992px) {
    .product-thumbnail-slider {
        height: 520px;
    }
}

@media screen and (min-width:1200px) {
    .product-thumbnail-slider {
        height: 740px;
    }
}

/* bootstrap extended */

.border-dashed {
    border-bottom: 1px dashed #d1d1d1;
}

.ls-1 {
    letter-spacing: -0.04em;
}

.button-area .btn-cart {
    text-wrap: nowrap;
    height: 3.3em;
    line-height: 2em;
    width: 100%;
}

.fs-7 {
    font-size: 0.8rem !important;
}

/* button */

.btn-link {
    display: inline-block;
    font-size: 0.875rem;
    font-weight: bold;
    font-family: var(--bs-body-font-family);
    letter-spacing: 0.0875rem;
    text-transform: uppercase;
    text-decoration: none;
}

a.btn-link,
a.btn-link:after {
    transition: all .5s;
}

a.btn-link {
    position: relative;
}

a.btn-link:before,
a.btn-link:after {
    content: '';
    display: block;
    position: absolute;
    bottom: 0;
    left: 0;
    width: 0;
    background-color: var(--bs-dark);
    height: 2px;
}

[data-bs-theme=dark] a.btn-link:after {
    background-color: var(--bs-light);
}

a.btn-link:before {
    background-color: rgba( var(--bs-light-rgb), 0.2);
    width: 100%;
}

a.btn-link.is-checked:after,
a.btn-link:hover:after {
    width: 100%;
}

a.btn-link.text-white:after {
    background-color: var(--bs-light);
}

a.btn-link.text-light:after {
    background-color: var(--bs-light);
}

.navbar .megamenu {
    padding: 1rem;
}

.megamenu .nav-link:hover {
    color: var(--bs-primary);
}

/* Dropdown toggle improvements */
.dropdown-toggle {
    cursor: pointer;
}

.dropdown-toggle[aria-expanded="true"] {
    text-decoration: underline;
    color: var(--bs-primary);
}

.dropdown-menu.show {
    display: block !important;
    animation: slideDown 0.3s ease-out;
}

@keyframes slideDown {
    from {
        opacity: 0;
        transform: translateY(-10px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* ============ desktop view ============ */

@media all and (min-width: 992px) {
    .navbar .has-megamenu {
        position: static !important;
    }
    .navbar .megamenu {
        left: 0;
        right: 0;
        width: 100%;
        max-width: 1200px;
        margin-top: 0;
    }
}

/* ============ desktop view .end// ============ */

/* ============ mobile view ============ */

@media(max-width: 991px) {
    .navbar.fixed-top .navbar-collapse,
    .navbar.sticky-top .navbar-collapse {
        overflow-y: auto;
        max-height: 90vh;
        margin-top: 10px;
    }
}

/* ============ mobile view .end// ============ */

/* slideshow */

.slideshow {
    overflow: hidden;
}

.slideshow .pagination-wrapper {
    width: 100%;
    bottom: 9rem;
    z-index: 10;
}

.swiper-pagination-bullet {
    transition: transform 0.3s ease-out;
}

.swiper-pagination-bullet.swiper-pagination-bullet-active {
    transform: scale(1.6);
}

.slideshow .swiper-slide {
    background-position: center;
    background-origin: padding-box;
    background-repeat: no-repeat;
    background-size: cover;
    transition: background-size 1s ease-in-out;
}

/* fade in */

.slideshow.fade-in .swiper-slide .banner-content {
    opacity: 0;
    transition: opacity 0.3s ease-out;
    transition-delay: 600ms;
}

.slideshow.fade-in .swiper-slide.swiper-slide-active .banner-content {
    opacity: 1;
}

/* slide in */

.slide-in .swiper-slide .banner-content h2,
.slide-in .swiper-slide .banner-content p,
.slide-in .swiper-slide .banner-content .btn {
    opacity: 0;
    transform: translate3d(0, 60px, 0);
    transition: opacity 0.9s, transform 0.9s;
}

.slide-in .swiper-slide .banner-content p {
    transition-delay: 200ms;
}

.slide-in .swiper-slide .banner-content h2 {
    transition-delay: 400ms;
}

.slide-in .swiper-slide .banner-content .btn {
    transition-delay: 600ms;
}

.slide-in .swiper-slide.swiper-slide-active .banner-content h2,
.slide-in .swiper-slide.swiper-slide-active .banner-content p,
.slide-in .swiper-slide.swiper-slide-active .banner-content .btn {
    opacity: 1;
    transform: translate3d(0, 0, 0);
}

/* Text Effects */

.txt-fx {
    overflow: hidden;
    /* line-height: 1; */
}

.txt-fx.zoom {
    overflow: visible;
}

.txt-fx,
.txt-fx .word,
.txt-fx .letter {
    line-height: 0.8em;
}

.txt-fx .word {
    overflow: hidden;
    transform-origin: 0 100%;
    display: inline-block;
    /* line-height: 1em; */
}

.txt-fx .letter {
    transform-origin: 0 100%;
    display: inline-block;
    /* line-height: 1.2em; */
}

.txt-fx {
    --delay: 50ms;
    --easing: ease-out;
}

/* fade right */

.txt-fx.fade-right .letter {
    transform: translate3d(-50px, 0, 0);
    opacity: 0;
    transition: transform 0.6s var(--easing), opacity 0.6s var(--easing);
}

.aos-animate .txt-fx.fade-right .letter {
    transform: translate3d(0, 0, 0);
    opacity: 1;
}

/* slide up */

.txt-fx.slide-up .letter {
    transform: translate3d(0, 1.2em, 0);
    transition: transform 0.9s var(--easing);
}

.swiper-slide-active .txt-fx.slide-up .letter,
.aos-animate .txt-fx.slide-up .letter {
    transform: translate3d(0, 0, 0);
}

/* domino */

.txt-fx.domino .letter {
    transform-origin: 50% 0;
    transform: rotateY(90deg);
    transition: transform 0.9s var(--easing);
}

.swiper-slide-active .txt-fx.domino .letter,
.aos-animate .txt-fx.domino .letter {
    transform: rotateY(0);
}

/* zoom */

.txt-fx.zoom .letter {
    transform-origin: 50% 0;
    transform: scale(3);
    transition: transform 0.9s var(--easing);
}

.swiper-slide-active .txt-fx.zoom .letter,
.aos-animate .txt-fx.zoom .letter {
    transform: scale(1);
}

/* used for banner heading */

.display-1,
.display-2,
.display-3,
.display-4,
.display-5 {
    font-family: "Rubik Mono One", monospace;
    line-height: 1em;
}

.display-1 {
    font-size: calc(4.625rem + 4.5vw);
    letter-spacing: -0.4rem;
}

/* for small device */

@media screen and (max-width:767px) {
    .display-1 {
        font-size: calc(2.625rem + 4.5vw);
    }
}

.slideshow-swiper-pagination.light {
    --swiper-pagination-bullet-inactive-color: #fff;
    --swiper-pagination-bullet-inactive-opacity: 0.5;
    --swiper-pagination-bullet-horizontal-gap: 8px;
}

.nav-item.active a {
    background-color: var(--bs-primary);
    color: #fff;
}

.dropdown-item {
    letter-spacing: 0;
    /* padding: 0; */
}

/*alag se mene index mai css add kar diya tha*/

.whatsapp-button {
      position: fixed;
      bottom: 20px;
      right: 20px;
      width: 60px;
      height: 60px;
      background: transparent; /* No background */
      border: none;
      border-radius: 50%;
      padding: 0;
      display: flex;
      align-items: center;
      justify-content: center;
      cursor: pointer;
      z-index: 1000;
      animation: blink 1.5s infinite;
    }

    .whatsapp-button img {
      width: 50px;
      height: 50px;
    }

    @keyframes blink {
      0% { opacity: 1; }
      50% { opacity: 0.5; }
      100% { opacity: 1; }
    }

  /* Reset & Box model fix */
  * {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
  }

  body {
    font-family: sans-serif;
    line-height: 1.5;
    padding: 0;
    margin: 0;
  }

  /* Layout Center */
  .container, .main, .content, .section {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 15px;
  }



  /* Responsive Design */
  @media (max-width: 768px) {
    .btn, .btn-cart, .razorpay-button {
      width: 100%;
      font-size: 18px;
      padding: 14px 0;
    }

    .product-item, .card, .section {
      margin-bottom: 20px;
    }

    .container, .main, .content {
      padding: 0 10px;
    }

    img {
      max-width: 100%;
      height: auto;
    }
  }

 

@media (max-width: 768px) {
  .btn, .btn-cart, .razorpay-button {
    display: block;
    width: 100%;
    font-size: 18px;
    padding: 14px 0;
    margin-top: 10px;
  }
}
.product-item .btn-cart {
  width: 100%;
  display: block;
  text-align: center;
  margin-top: 10px;
}
/* Product Card Layout: auto height but equal look */
.product-item {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  border: 1px solid #ddd;
  padding: 10px;
  border-radius: 8px;
  height: 100%;
  background-color: #fff;
}

/* Product Image: Responsive */
.product-item img {
  max-width: 100%;
  height: auto;
  object-fit: contain;
}

/* Button Full Width */
.product-item .btn-cart,
.product-item .razorpay-button {
  width: 100%;
  display: block;
  text-align: center;
  margin-top: auto;
  padding: 12px;
  background-color: #ff6600;
  color: white;
  font-weight: bold;
  border: none;
  border-radius: 6px;
  transition: all 0.3s ease;
}

.product-item .btn-cart:hover,
.product-item .razorpay-button:hover {
  background-color: #e65c00;
  transform: scale(1.03);
}
.banner img {
  width: 100%;
  height: auto;
  display: block;
  object-fit: cover; /* optional */
}

/* Add vertical spacing between product rows */
  .row > .col {
    margin-bottom: 30px;
  }

  /* Ensure product cards are styled correctly */
  .product-item {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    height: 100%;
    border: 1px solid #ddd;
    border-radius: 10px;
    padding: 10px;
    background-color: #fff;
  }

  /* Make product images fit properly */
  .product-item img {
    width: 100%;
    height: auto;
    object-fit: contain;
    margin-bottom: 10px;
  }

  /* Full width Add to Cart Button */
  .product-item .btn-cart, 
  .product-item .razorpay-button {
    width: 100%;
    display: block;
    padding: 12px;
    font-size: 16px;
    background-color: #ff6600;
    color: white;
    border: none;
    border-radius: 6px;
    font-weight: bold;
    text-align: center;
    transition: all 0.3s ease;
  }

  .product-item .btn-cart:hover, 
  .product-item .razorpay-button:hover {
    background-color: #e65c00;
    transform: scale(1.03);
  }

.popup-container {
      display: none;
      position: fixed;
      top: 0; 
      left: 0; 
      right: 0; 
      bottom: 0;
      background: rgba(0,0,0,0.6);
      align-items: center;
      justify-content: center;
      z-index: 9999;
    }
    
    .popup-container.show {
      display: flex !important;
    }
    
    @keyframes backdropFadeIn {
      from {
        background: rgba(0,0,0,0);
      }
      to {
        background: rgba(0,0,0,0.6);
      }
    }
    
    .popup-form {
      background: #fff;
      padding: 25px;
      border-radius: 12px;
      width: 90%;
      max-width: 400px;
      max-height: 90vh;
      overflow-y: auto;
      display: flex;
      flex-direction: column;
      gap: 12px;
      animation: springPopIn 1.2s cubic-bezier(0.175, 0.885, 0.32, 1.275) forwards;
      transform-origin: center center;
      box-shadow: 0 20px 60px rgba(0,0,0,0.3);
    }
    
    /* 🎪 PREMIUM SPRING POP-IN ANIMATION */
    @keyframes springPopIn {
      0% {
        opacity: 0;
        transform: scale(0.6) translateY(-100px) rotateX(30deg);
      }
      50% {
        opacity: 1;
        transform: scale(1.08) translateY(0) rotateX(0deg);
      }
      65% {
        transform: scale(0.95);
      }
      80% {
        transform: scale(1.02);
      }
      100% {
        opacity: 1;
        transform: scale(1) translateY(0) rotateX(0deg);
      }
    }
    
    /* Staggered children animation for form inputs */
    .popup-form input,
    .popup-form textarea,
    .popup-form select,
    .popup-form h2,
    .popup-form div {
      animation: slideInUp 0.6s ease-out forwards;
      opacity: 0;
    }
    
    .popup-form h2 {
      animation-delay: 0.1s;
    }
    
    .popup-form input:nth-of-type(1) { animation-delay: 0.15s; }
    .popup-form input:nth-of-type(2) { animation-delay: 0.2s; }
    .popup-form input:nth-of-type(3) { animation-delay: 0.25s; }
    .popup-form input:nth-of-type(4) { animation-delay: 0.3s; }
    .popup-form input:nth-of-type(5) { animation-delay: 0.35s; }
    .popup-form input:nth-of-type(6) { animation-delay: 0.4s; }
    
    @keyframes slideInUp {
      from {
        opacity: 0;
        transform: translateY(20px);
      }
      to {
        opacity: 1;
        transform: translateY(0);
      }
    }
    
    .popup-form.close-animation {
      animation: springPopOut 0.65s cubic-bezier(0.6, 0.04, 0.98, 0.36) forwards;
    }
    
    /* Premium Close Animation */
    @keyframes springPopOut {
      0% {
        opacity: 1;
        transform: scale(1);
      }
      50% {
        opacity: 0.8;
        transform: scale(1.05);
      }
      100% {
        opacity: 0;
        transform: scale(0.4) translateY(-100px) rotateX(-30deg);
      }
    }
    
    /* Backdrop fade out */
    .popup-container.close-animation {
      animation: backdropFadeOut 0.4s ease-in forwards;
    }
    
    @keyframes backdropFadeOut {
      from {
        background: rgba(0,0,0,0.6);
      }
      to {
        background: rgba(0,0,0,0);
      }
    }

    /* Privacy Modal Styles */
    .privacy-modal-container {
      display: none;
      position: fixed;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      background: rgba(0, 0, 0, 0.6);
      z-index: 9999;
      justify-content: center;
      align-items: center;
      padding: 20px;
      overflow-y: auto;
    }

    .privacy-modal-container.show {
      display: flex;
      animation: backdropFadeIn 0.5s ease-out forwards;
    }

    .privacy-modal-content {
      position: relative;
      background: white;
      border-radius: 15px;
      width: 100%;
      max-width: 700px;
      max-height: 85vh;
      overflow-y: auto;
      padding: 40px;
      box-shadow: 0 20px 60px rgba(0,0,0,0.3);
      animation: springPopIn 1.2s cubic-bezier(0.175, 0.885, 0.32, 1.275) forwards;
      transform-origin: center center;
    }

    .privacy-content h6 {
      color: #333;
      font-size: 15px;
      line-height: 1.8;
      margin: 10px 0;
      font-weight: 400;
    }

    .privacy-content h4 {
      color: #000;
      font-size: 18px;
      font-weight: 600;
      margin: 20px 0 10px 0;
      border-bottom: 3px solid #ff9800;
      padding-bottom: 8px;
      display: inline-block;
    }

    .privacy-content .section-title {
      color: #ff6600;
      font-size: 20px;
      font-weight: 700;
      text-align: center;
      margin: 30px 0 15px 0;
      text-decoration: underline;
    }

    .privacy-modal-container.show .privacy-modal-content {
      animation: springPopIn 1.2s cubic-bezier(0.175, 0.885, 0.32, 1.275) forwards;
    }

    .privacy-modal-container.close-animation .privacy-modal-content {
      animation: springPopOut 0.65s cubic-bezier(0.6, 0.04, 0.98, 0.36) forwards;
    }

    .privacy-modal-container.close-animation {
      animation: backdropFadeOut 0.65s ease-in forwards;
    }

    /* Responsive Privacy Modal */
    @media (max-width: 768px) {
      .privacy-modal-content {
        padding: 25px;
        max-height: 90vh;
        max-width: 95%;
      }

      .privacy-content h4 {
        font-size: 16px;
      }

      .privacy-content .section-title {
        font-size: 18px;
      }

      .privacy-content h6 {
        font-size: 14px;
      }
    }

    /* Cooking Modal Styles */
    .cooking-modal-container {
      display: none;
      position: fixed;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      background: rgba(0, 0, 0, 0.6);
      z-index: 9999;
      justify-content: center;
      align-items: center;
      padding: 20px;
      overflow-y: auto;
    }

    .cooking-modal-container.show {
      display: flex;
      animation: backdropFadeIn 0.5s ease-out forwards;
    }

    .cooking-modal-content {
      position: relative;
      background: white;
      border-radius: 15px;
      width: 100%;
      max-width: 700px;
      max-height: 85vh;
      overflow-y: auto;
      padding: 40px;
      box-shadow: 0 20px 60px rgba(0,0,0,0.3);
      animation: springPopIn 1.2s cubic-bezier(0.175, 0.885, 0.32, 1.275) forwards;
      transform-origin: center center;
    }

    .cooking-content h6 {
      color: #333;
      font-size: 15px;
      line-height: 1.8;
      margin: 10px 0;
      font-weight: 400;
    }

    .cooking-content h4 {
      color: #000;
      font-size: 18px;
      font-weight: 600;
      margin: 20px 0 10px 0;
      border-bottom: 3px solid #ff9800;
      padding-bottom: 8px;
      display: inline-block;
    }

    .cooking-content .section-title {
      color: #ff6600;
      font-size: 20px;
      font-weight: 700;
      text-align: center;
      margin: 30px 0 15px 0;
      text-decoration: underline;
    }

    .cooking-content p {
      color: #333;
      font-size: 15px;
      line-height: 1.8;
    }

    .cooking-modal-container.show .cooking-modal-content {
      animation: springPopIn 1.2s cubic-bezier(0.175, 0.885, 0.32, 1.275) forwards;
    }

    .cooking-modal-container.close-animation .cooking-modal-content {
      animation: springPopOut 0.65s cubic-bezier(0.6, 0.04, 0.98, 0.36) forwards;
    }

    .cooking-modal-container.close-animation {
      animation: backdropFadeOut 0.65s ease-in forwards;
    }

    /* Responsive Cooking Modal */
    @media (max-width: 768px) {
      .cooking-modal-content {
        padding: 25px;
        max-height: 90vh;
        max-width: 95%;
      }

      .cooking-content h4 {
        font-size: 16px;
      }

      .cooking-content .section-title {
        font-size: 18px;
      }

      .cooking-content h6 {
        font-size: 14px;
      }
    }

    /* Returns & Refunds Modal Styles */
    .returns-modal-container {
      display: none;
      position: fixed;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      background: rgba(0, 0, 0, 0.6);
      z-index: 9999;
      justify-content: center;
      align-items: center;
      padding: 20px;
      overflow-y: auto;
    }

    .returns-modal-container.show {
      display: flex;
      animation: backdropFadeIn 0.5s ease-out forwards;
    }

    .returns-modal-content {
      position: relative;
      background: white;
      border-radius: 15px;
      width: 100%;
      max-width: 700px;
      max-height: 85vh;
      overflow-y: auto;
      padding: 40px;
      box-shadow: 0 20px 60px rgba(0,0,0,0.3);
      animation: springPopIn 1.2s cubic-bezier(0.175, 0.885, 0.32, 1.275) forwards;
      transform-origin: center center;
    }

    .returns-content h6 {
      color: #333;
      font-size: 15px;
      line-height: 1.8;
      margin: 10px 0;
      font-weight: 400;
    }

    .returns-content h4 {
      color: #000;
      font-size: 18px;
      font-weight: 600;
      margin: 20px 0 10px 0;
      border-bottom: 3px solid #ff9800;
      padding-bottom: 8px;
      display: inline-block;
    }

    .returns-content .section-title {
      color: #ff6600;
      font-size: 20px;
      font-weight: 700;
      text-align: center;
      margin: 30px 0 15px 0;
      text-decoration: underline;
    }

    .returns-content p {
      color: #333;
      font-size: 15px;
      line-height: 1.8;
    }

    .returns-modal-container.show .returns-modal-content {
      animation: springPopIn 1.2s cubic-bezier(0.175, 0.885, 0.32, 1.275) forwards;
    }

    .returns-modal-container.close-animation .returns-modal-content {
      animation: springPopOut 0.65s cubic-bezier(0.6, 0.04, 0.98, 0.36) forwards;
    }

    .returns-modal-container.close-animation {
      animation: backdropFadeOut 0.65s ease-in forwards;
    }

    /* Responsive Returns Modal */
    @media (max-width: 768px) {
      .returns-modal-content {
        padding: 25px;
        max-height: 90vh;
        max-width: 95%;
      }

      .returns-content h4 {
        font-size: 16px;
      }

      .returns-content .section-title {
        font-size: 18px;
      }

      .returns-content h6 {
        font-size: 14px;
      }
    }

    /* Terms & Conditions Modal Styles */
    .terms-modal-container {
      display: none;
      position: fixed;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      background: rgba(0, 0, 0, 0.6);
      z-index: 9999;
      justify-content: center;
      align-items: center;
      padding: 20px;
      overflow-y: auto;
    }

    .terms-modal-container.show {
      display: flex;
      animation: backdropFadeIn 0.5s ease-out forwards;
    }

    .terms-modal-content {
      position: relative;
      background: white;
      border-radius: 15px;
      width: 100%;
      max-width: 700px;
      max-height: 85vh;
      overflow-y: auto;
      padding: 40px;
      box-shadow: 0 20px 60px rgba(0,0,0,0.3);
      animation: springPopIn 1.2s cubic-bezier(0.175, 0.885, 0.32, 1.275) forwards;
      transform-origin: center center;
    }

    .terms-content h6 {
      color: #333;
      font-size: 15px;
      line-height: 1.8;
      margin: 10px 0;
      font-weight: 400;
    }

    .terms-content h4 {
      color: #000;
      font-size: 18px;
      font-weight: 600;
      margin: 20px 0 10px 0;
      border-bottom: 3px solid #ff9800;
      padding-bottom: 8px;
      display: inline-block;
    }

    .terms-content .section-title {
      color: #ff6600;
      font-size: 20px;
      font-weight: 700;
      text-align: center;
      margin: 30px 0 15px 0;
      text-decoration: underline;
    }

    .terms-modal-container.show .terms-modal-content {
      animation: springPopIn 1.2s cubic-bezier(0.175, 0.885, 0.32, 1.275) forwards;
    }

    .terms-modal-container.close-animation .terms-modal-content {
      animation: springPopOut 0.65s cubic-bezier(0.6, 0.04, 0.98, 0.36) forwards;
    }

    .terms-modal-container.close-animation {
      animation: backdropFadeOut 0.65s ease-in forwards;
    }

    /* Responsive Terms Modal */
    @media (max-width: 768px) {
      .terms-modal-content {
        padding: 25px;
        max-height: 90vh;
        max-width: 95%;
      }

      .terms-content h4 {
        font-size: 16px;
      }

      .terms-content .section-title {
        font-size: 18px;
      }

      .terms-content h6 {
        font-size: 14px;
      }
    }

    /* FAQ Modal Styles */
    .faq-modal-container {
      display: none;
      position: fixed;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      background: rgba(0, 0, 0, 0.6);
      z-index: 9999;
      justify-content: center;
      align-items: center;
      padding: 20px;
      overflow-y: auto;
    }

    .faq-modal-container.show {
      display: flex;
      animation: backdropFadeIn 0.5s ease-out forwards;
    }

    .faq-modal-content {
      position: relative;
      background: white;
      border-radius: 15px;
      width: 100%;
      max-width: 700px;
      max-height: 85vh;
      overflow-y: auto;
      padding: 40px;
      box-shadow: 0 20px 60px rgba(0,0,0,0.3);
      animation: springPopIn 1.2s cubic-bezier(0.175, 0.885, 0.32, 1.275) forwards;
      transform-origin: center center;
    }

    .faq-content h6 {
      color: #333;
      font-size: 15px;
      line-height: 1.8;
      margin: 10px 0;
      font-weight: 400;
    }

    .faq-content h4 {
      color: #000;
      font-size: 18px;
      font-weight: 600;
      margin: 20px 0 10px 0;
      border-bottom: 3px solid #ff9800;
      padding-bottom: 8px;
      display: inline-block;
    }

    .faq-content .section-title {
      color: #ff6600;
      font-size: 20px;
      font-weight: 700;
      text-align: center;
      margin: 30px 0 15px 0;
      text-decoration: underline;
    }

    .faq-modal-container.show .faq-modal-content {
      animation: springPopIn 1.2s cubic-bezier(0.175, 0.885, 0.32, 1.275) forwards;
    }

    .faq-modal-container.close-animation .faq-modal-content {
      animation: springPopOut 0.65s cubic-bezier(0.6, 0.04, 0.98, 0.36) forwards;
    }

    .faq-modal-container.close-animation {
      animation: backdropFadeOut 0.65s ease-in forwards;
    }

    /* Responsive FAQ Modal */
    @media (max-width: 768px) {
      .faq-modal-content {
        padding: 25px;
        max-height: 90vh;
        max-width: 95%;
      }

      .faq-content h4 {
        font-size: 16px;
      }

      .faq-content .section-title {
        font-size: 18px;
      }

      .faq-content h6 {
        font-size: 14px;
      }
    }

    /* About Us Modal Styles */
    #aboutUsModal {
      position: fixed;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      background: rgba(0, 0, 0, 0.7) !important;
      z-index: 9999;
      display: none !important;
      visibility: hidden !important;
      justify-content: center;
      align-items: center;
      padding: 20px;
      overflow-y: auto;
    }

    #aboutUsModal.show {
      display: flex !important;
      visibility: visible !important;
      animation: backdropFadeIn 0.5s ease-out forwards;
    }

    #aboutUsModal.modal-backdrop.show {
      display: flex !important;
      visibility: visible !important;
    }

    #aboutUsModal.close-animation {
      animation: backdropFadeOut 0.65s ease-in forwards;
    }

    .modal-backdrop {
      position: fixed;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      background: rgba(0, 0, 0, 0.7) !important;
      z-index: 9999;
      display: none;
      justify-content: center;
      align-items: center;
      padding: 20px;
      overflow-y: auto;
    }

    .modal-backdrop.show {
      display: flex !important;
      animation: backdropFadeIn 0.5s ease-out forwards;
    }

    .modal-container {
      position: relative;
      background: white !important;
      background-color: #ffffff !important;
      border-radius: 20px;
      width: 100%;
      max-width: 700px;
      max-height: 85vh;
      padding: 40px;
      box-shadow: 0 20px 60px rgba(0, 0, 0, 0.3);
      animation: springPopIn 1.2s cubic-bezier(0.175, 0.885, 0.32, 1.275) forwards;
      overflow-y: auto;
      z-index: 10000;
      opacity: 1 !important;
    }

    .modal-content {
      width: 100%;
    }

    .modal-heading {
      color: #ff6600;
      font-size: 26px;
      font-weight: 700;
      margin-bottom: 25px;
      text-align: center;
      text-decoration: underline;
    }

    .modal-body-content {
      color: #333;
      line-height: 1.8;
    }

    .modal-body-content h4 {
      color: #ff6600;
      font-weight: 700;
      font-size: 16px;
      margin-top: 20px;
      margin-bottom: 10px;
    }

    .modal-body-content h5 {
      color: #555;
      font-weight: 500;
      font-size: 14px;
      margin: 10px 0;
      line-height: 1.7;
    }

    .close-cross-btn {
      position: absolute;
      top: 15px;
      right: 20px;
      background: none;
      border: none;
      font-size: 32px;
      cursor: pointer;
      color: #ff6600;
      transition: all 0.3s ease;
    }

    .close-cross-btn:hover {
      color: #e65c00;
      transform: rotate(90deg);
    }

    .modal-backdrop.close-animation {
      animation: backdropFadeOut 0.65s ease-in forwards;
    }

    .modal-backdrop.close-animation .modal-container {
      animation: springPopOut 0.65s cubic-bezier(0.6, 0.04, 0.98, 0.36) forwards;
    }

    /* Responsive About Us Modal */
    @media (max-width: 768px) {
      .modal-container {
        padding: 25px;
        max-height: 90vh;
        max-width: 95%;
      }

      .modal-heading {
        font-size: 22px;
        margin-bottom: 20px;
      }

      .modal-body-content h5 {
        font-size: 13px;
      }

      .modal-body-content h4 {
        font-size: 15px;
        margin-top: 15px;
      }

      .close-cross-btn {
        font-size: 28px;
        top: 10px;
        right: 15px;
      }
    }

    /* Curved Horizontal Carousel Styles */
    .curved-carousel-container {
      display: none;
      position: fixed;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      background: rgba(0, 0, 0, 0.6);
      z-index: 9999;
      justify-content: center;
      align-items: center;
      padding: 20px;
      overflow-y: auto;
    }

    .curved-carousel-container.show {
      display: flex;
      animation: backdropFadeIn 0.5s ease-out forwards;
    }

    .curved-carousel-content {
      position: relative;
      background: white;
      border-radius: 20px;
      width: 100%;
      max-width: 900px;
      max-height: 85vh;
      padding: 40px;
      box-shadow: 0 20px 60px rgba(0,0,0,0.3);
      animation: springPopIn 1.2s cubic-bezier(0.175, 0.885, 0.32, 1.275) forwards;
      overflow-y: auto;
    }

    .carousel-title {
      text-align: center;
      color: #ff6600;
      font-size: 24px;
      font-weight: 700;
      margin-bottom: 30px;
      text-decoration: underline;
    }

    .curved-carousel-wrapper {
      display: flex;
      align-items: center;
      gap: 20px;
      position: relative;
    }

    .curved-carousel-swiper {
      flex: 1;
      min-height: 350px;
      position: relative;
    }

    .curved-swiper {
      width: 100%;
      height: 100%;
    }

    .curved-swiper .swiper-wrapper {
      perspective: 1000px;
      transform-style: preserve-3d;
    }

    .curved-swiper .swiper-slide {
      background: #f9f9f9;
      border-radius: 15px;
      padding: 20px;
      display: flex;
      flex-direction: column;
      align-items: center;
      justify-content: center;
      text-align: center;
      transform-style: preserve-3d;
      transition: all 0.6s cubic-bezier(0.175, 0.885, 0.32, 1.275);
      opacity: 0.6;
      transform: scale(0.85) rotateY(-20deg);
    }

    .curved-swiper .swiper-slide.swiper-slide-active {
      opacity: 1;
      transform: scale(1) rotateY(0deg);
      background: white;
      box-shadow: 0 10px 40px rgba(0, 0, 0, 0.15);
    }

    .curved-swiper .swiper-slide.swiper-slide-next {
      opacity: 0.7;
      transform: scale(0.88) rotateY(15deg);
    }

    .curved-swiper .swiper-slide.swiper-slide-prev {
      opacity: 0.7;
      transform: scale(0.88) rotateY(-15deg);
    }

    .curved-swiper .swiper-slide img {
      max-width: 150px;
      max-height: 150px;
      object-fit: contain;
      margin-bottom: 15px;
    }

    .curved-swiper .swiper-slide h4 {
      color: #333;
      font-size: 16px;
      font-weight: 600;
      margin: 10px 0;
    }

    .curved-swiper .swiper-slide p {
      color: #666;
      font-size: 14px;
      margin: 5px 0;
    }

    .curved-swiper .swiper-slide .product-price {
      color: #ff6600;
      font-size: 18px;
      font-weight: 700;
      margin: 10px 0;
    }

    .carousel-arrow {
      position: absolute;
      top: 50%;
      transform: translateY(-50%);
      width: 50px;
      height: 50px;
      border-radius: 50%;
      background: #ff6600;
      color: white;
      border: none;
      font-size: 24px;
      cursor: pointer;
      transition: all 0.3s ease;
      z-index: 10;
      display: flex;
      align-items: center;
      justify-content: center;
      font-weight: bold;
    }

    .carousel-arrow:hover {
      background: #e65c00;
      transform: translateY(-50%) scale(1.1);
    }

    .carousel-prev {
      left: -10px;
    }

    .carousel-next {
      right: -10px;
    }

    .curved-carousel-container.close-animation {
      animation: backdropFadeOut 0.65s ease-in forwards;
    }

    .curved-carousel-container.close-animation .curved-carousel-content {
      animation: springPopOut 0.65s cubic-bezier(0.6, 0.04, 0.98, 0.36) forwards;
    }

    /* Responsive Curved Carousel */
    @media (max-width: 1024px) {
      .curved-carousel-content {
        max-width: 95%;
        padding: 30px 20px;
      }

      .carousel-arrow {
        width: 40px;
        height: 40px;
        font-size: 20px;
      }

      .curved-carousel-swiper {
        min-height: 300px;
      }
    }

    @media (max-width: 768px) {
      .curved-carousel-content {
        padding: 20px;
        max-height: 90vh;
      }

      .carousel-title {
        font-size: 20px;
        margin-bottom: 20px;
      }

      .curved-carousel-wrapper {
        gap: 10px;
      }

      .carousel-arrow {
        width: 35px;
        height: 35px;
        font-size: 18px;
      }

      .carousel-prev {
        left: -5px;
      }

      .carousel-next {
        right: -5px;
      }

      .curved-swiper .swiper-slide {
        padding: 15px;
      }

      .curved-swiper .swiper-slide img {
        max-width: 120px;
        max-height: 120px;
      }

      .curved-swiper .swiper-slide h4 {
        font-size: 14px;
      }

      .curved-swiper .swiper-slide p {
        font-size: 12px;
      }

      .curved-swiper .swiper-slide .product-price {
        font-size: 16px;
      }

      .curved-carousel-swiper {
        min-height: 250px;
      }
    }

    /* FSSAI Logo & License Styling */
    .fssai-logo {
      height: 45px;
      width: auto;
      display: block;
    }

    .fssai-text {
      font-size: 12px;
      color: #fff;
      font-weight: 500;
      white-space: nowrap;
    }

    /* Responsive FSSAI */
    @media (max-width: 768px) {
      .fssai-logo {
        height: 40px;
      }

      .fssai-text {
        font-size: 11px;
      }
    }

    @media (max-width: 480px) {
      .fssai-logo {
        height: 35px;
      }

      .fssai-text {
        font-size: 10px;
      }
    }

.product-card {
  position: relative;
  overflow: hidden;
}

.buy-btn {
  background: linear-gradient(45deg, #ff6a00, #ff9900);
  color: #fff;
  font-size: 12px;
  font-weight: bold;
  padding: 12px 28px;
  border: none;
  border-radius: 50px;
  cursor: pointer;
  box-shadow: 0 5px 15px rgba(255, 140, 0, 0.4);
  transition: all 0.3s ease;
  position: relative;
  overflow: hidden;
}

.buy-btn::before {
  content: "";
  position: absolute;
  left: -50%;
  top: 0;
  width: 200%;
  height: 100%;
  background: linear-gradient(
    120deg,
    transparent,
    rgba(255, 255, 255, 0.4),
    transparent
  );
  transform: skewX(-25deg);
  transition: 0.5s;
}

.buy-btn:hover::before {
  left: 150%;
}

.buy-btn:hover {
  transform: scale(1.08);
  box-shadow: 0 8px 20px rgba(255, 140, 0, 0.6);
}

.buy-btn:active {
  transform: scale(0.96);
}

/* Chrome, Safari, Edge ke liye arrows hatana */
input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

#datetime {
  border: 2px solid orange;   /* Orange border */
  border-radius: 6px;         
  padding: 8px 12px;          
  font-size: 16px;            
  font-family: Arial, sans-serif;
  width: 280px;               
  box-sizing: border-box;
}
#datetime:focus {
  outline: none;
  border-color: darkorange;   
}
.close-cross-btn {
  position: absolute;
  top: 8px;
  right: 8px;
  background: #ff6600;
  border: none;
  font-size: 18px;
  cursor: pointer;
  color: white;
  width: 28px;
  height: 28px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  transition: all 0.3s ease;
  z-index: 1000;
  font-weight: bold;
}

/* Desktop ke liye alag styling */
@media (min-width: 768px) {
  .close-cross-btn {
    top: 5px;
    right: 5px;
    width: 25px;
    height: 25px;
    font-size: 16px;
  }
}

 /* Orange Shop Now Button for Banners */
.orange-shop-btn {
  background: #ff6600 !important;
  color: white !important;
  border: none;
  padding: 14px 35px;
  border-radius: 8px;
  font-weight: bold;
  cursor: pointer;
  transition: all 0.3s ease;
  text-transform: uppercase;
  font-size: 16px;
  box-shadow: 0 6px 20px rgba(255, 102, 0, 0.4);
  position: relative;
  overflow: hidden;
  letter-spacing: 1px;
  margin-top: 20px;
  display: inline-block;
}

.orange-shop-btn::before {
  content: '';
  position: absolute;
  top: 0;
  left: -100%;
  width: 100%;
  height: 100%;
  background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.3), transparent);
  transition: left 0.5s ease;
}

.orange-shop-btn:hover::before {
  left: 100%;
}

.orange-shop-btn:hover {
  background: #e65c00 !important;
  transform: translateY(-3px);
  box-shadow: 0 8px 25px rgba(255, 102, 0, 0.5);
}

.orange-shop-btn:active {
  transform: translateY(-1px);
}

/* Swiper button styling */
.banner-nav-btn {
    background: #ff6600 !important;
    color: white !important;
    border: 2px solid white;
    width: 45px !important;
    height: 45px !important;
    border-radius: 50%;
    font-size: 24px !important;
    font-weight: bold !important;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.3s ease;
    box-shadow: 0 6px 18px rgba(255, 102, 0, 0.4);
    position: relative;
    overflow: hidden;
}

.banner-nav-btn:hover {
    background: #e65c00 !important;
    transform: scale(1.15);
    box-shadow: 0 8px 25px rgba(255, 102, 0, 0.5);
    border-color: white;
}

.banner-nav-btn:active {
    transform: scale(1.05);
}

/* Banner content positioning */
.banner-content {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
}

.banner-content h2 {
  margin-bottom: 15px !important;
}

.banner-content .orange-shop-btn {
  margin-top: 25px;
  align-self: center;
}

/* Mobile responsive banner button */
@media (max-width: 768px) {
  .orange-shop-btn {
    padding: 12px 28px;
    font-size: 14px;
    margin-top: 15px;
  }
  
  .banner-nav-btn {
    width: 40px !important;
    height: 40px !important;
    font-size: 20px !important;
  }
}

@media (max-width: 480px) {
  .orange-shop-btn {
    padding: 10px 24px;
    font-size: 12px;
    margin-top: 12px;
  }
  
  .banner-nav-btn {
    width: 35px !important;
    height: 35px !important;
    font-size: 18px !important;
  }
}

/* Transparent Product Scrolling Section */
.product-scrolling-section {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.7);
  z-index: 9999;
  display: flex;
  align-items: center;
  justify-content: center;
  backdrop-filter: blur(8px);
}

.product-scroll-content {
  background: rgba(255, 255, 255, 0.95);
  border-radius: 15px;
  padding: 30px;
  max-width: 95%;
  max-height: 90vh;
  overflow: hidden;
  box-shadow: 0 10px 30px rgba(0,0,0,0.3);
  position: relative;
}

.products-scroll-container {
  width: 100%;
  overflow-x: auto;
  padding: 20px 0;
}

.products-scroll-wrapper {
  display: flex;
  gap: 20px;
  padding: 0 15px;
  min-width: max-content;
}

.scroll-product-item {
  min-width: 250px;
  max-width: 250px;
  border: 2px solid rgba(255, 102, 0, 0.3);
  border-radius: 12px;
  padding: 20px;
  text-align: center;
  background: rgba(255, 255, 255, 0.9);
  box-shadow: 0 8px 25px rgba(0,0,0,0.1);
  flex-shrink: 0;
  transition: transform 0.3s ease;
}

.scroll-product-item:hover {
  transform: translateY(-5px);
  border-color: #ff6600;
}

.scroll-product-item img {
  width: 150px !important;
  height: 120px !important;
  object-fit: contain;
  margin-bottom: 15px;
}

.scroll-product-item h3 {
  font-size: 16px !important;
  margin-bottom: 8px !important;
  color: #333;
  font-weight: bold;
}

.scroll-product-item .rating {
  font-size: 12px;
  margin-bottom: 5px;
}

.scroll-product-item .text-dark.fw-semibold {
  font-size: 18px;
  color: #ff6600;
  font-weight: bold;
}

.scroll-product-item .buy-btn {
  padding: 10px 20px !important;
  font-size: 14px !important;
  margin-top: 12px;
  background: #ff6600;
  color: white;
  border: none;
  border-radius: 6px;
  cursor: pointer;
  transition: all 0.3s ease;
  width: 100%;
  font-weight: bold;
}

.scroll-product-item .buy-btn:hover {
  background: #e65c00;
  transform: scale(1.05);
}

/* Orange Category Box - LEFT Side */
.category-title-box {
  position: absolute;
  top: 20px;
  left: 20px;
  background: #ff6600;
  color: white;
  padding: 12px 25px;
  border-radius: 8px;
  font-weight: bold;
  font-size: 18px;
  z-index: 10000;
  box-shadow: 0 4px 15px rgba(255, 102, 0, 0.3);
  text-transform: uppercase;
  letter-spacing: 1px;
}

/* Navigation Buttons */
.scroll-nav-buttons {
  position: absolute;
  bottom: 20px;
  left: 50%;
  transform: translateX(-50%);
  display: flex;
  gap: 15px;
  z-index: 10000;
}

.scroll-nav-btn {
  background: #ff6600;
  color: white;
  border: none;
  width: 50px;
  height: 50px;
  border-radius: 50%;
  font-size: 20px;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 0.3s ease;
  box-shadow: 0 4px 15px rgba(0,0,0,0.2);
}

.scroll-nav-btn:hover {
  background: #e65c00;
  transform: scale(1.1);
}

/* Close Button */
.close-scroll-btn {
  position: absolute;
  top: 15px;
  right: 15px;
  background: #ff6600;
  border: none;
  color: white;
  width: 35px;
  height: 35px;
  border-radius: 50%;
  font-size: 18px;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 0.3s ease;
  z-index: 10000;
  box-shadow: 0 4px 15px rgba(0,0,0,0.3);
}

.close-scroll-btn:hover {
  background: #e65c00;
  transform: scale(1.1);
}

/* Hide scrollbar */
.products-scroll-container::-webkit-scrollbar {
  display: none;
}

.products-scroll-container {
  -ms-overflow-style: none;
  scrollbar-width: none;
}

/* Mobile Responsive */
@media (max-width: 768px) {
  .product-scroll-content {
    padding: 20px 15px;
    max-width: 98%;
  }
  
  .scroll-product-item {
    min-width: 200px;
    max-width: 200px;
    padding: 15px;
  }
  
  .scroll-product-item img {
    width: 120px !important;
    height: 100px !important;
  }
  
  .category-title-box {
    font-size: 14px;
    padding: 8px 15px;
    top: 15px;
    left: 15px;
  }
  
  .scroll-nav-btn {
    width: 45px;
    height: 45px;
    font-size: 18px;
  }
  
  .orange-shop-btn {
    padding: 10px 25px;
    font-size: 14px;
  }
}

/* Loader overlay */
  #loader {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: transparent; /* Bilkul transparent */
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 9999;
  }

  /* Logo styling */
  #loader-logo {
    width: 200px;
    height: auto;
    animation: crack 2s ease-in-out infinite;
  }

  /* Crack + shake animation */
  @keyframes crack {
    0% { transform: scale(1) rotate(0deg); }
    25% { transform: scale(1.05) rotate(-5deg); }
    50% { transform: scale(1.1) rotate(5deg); }
    75% { transform: scale(1.05) rotate(-5deg); }
    100% { transform: scale(1) rotate(0deg); }
  }

  /* Loader hide animation */
  .loader-hidden {
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition: opacity 0.5s ease, visibility 0.5s ease;
  }
  
  /* Prevent loader from blocking interactions */
  #loader {
    pointer-events: none;
  }
  
  #loader:not(.loader-hidden) {
    pointer-events: auto;
  }

/* Custom Offcanvas Design */
.custom-cart {
  width: 280px;      
  height: auto;      
  max-height: 400px; 
  border: 5px solid orange;   
  border-radius: 12px;        
  top: 80px;         
  background: #fffdf9;        
  box-shadow: 0 0 12px rgba(255, 165, 0, 0.7); 
}

.custom-cart .offcanvas-header {
  background: #fff4e6;
  padding: 10px;
  font-weight: bold;
  border-bottom: 3px solid orange;
}

.custom-cart .offcanvas-body {
  overflow-y: auto;   
  padding: 10px;
}

.custom-cart .item-box {
  border: 2px solid orange;
  border-radius: 10px;
  padding: 10px;
  margin-bottom: 8px;
  font-weight: bold;
  background: #ffffff;
}

.custom-cart .delete-btn {
  background: orange;
  color: white;
  border: none;
  padding: 5px 10px;
  border-radius: 6px;
  font-size: 13px;
  font-weight: bold;
  cursor: pointer;
  transition: 0.3s;
}
.custom-cart .delete-btn:hover {
  background: darkorange;
}

/* 🔥 Cart Dot */
.cart-icon-wrapper {
  position: relative;
}
.cart-dot {
  position: absolute;
  top: 2px;
  right: 2px;
  width: 10px;
  height: 10px;
  background: orange;
  border-radius: 50%;
  display: none; /* default hidden */
}
/* Orange Basket Button Colors Only - Fixed Size */
.custom-cart .delete-btn {
  background: #ff6600 !important;
  color: white !important;
  padding: 8px 15px !important;
  font-size: 13px !important;
  width: auto !important;
  min-width: 80px !important;
  border: 2px solid transparent !important;
  transition: all 0.3s ease !important;
  transform: scale(1) !important;
}

.custom-cart .delete-btn:hover {
  transform: scale(1.05) !important;
  border: 2px solid white !important;
  box-shadow: 0 0 10px rgba(255, 255, 255, 0.5) !important;
}

.custom-cart .basket-buy-btn {
  background: #ff6600 !important;
  color: white !important;
  padding: 8px 15px !important;
  font-size: 13px !important;
  width: auto !important;
  min-width: 80px !important;
  border: 2px solid transparent !important;
  transition: all 0.3s ease !important;
  transform: scale(1) !important;
}

.custom-cart .basket-buy-btn:hover {
  transform: scale(1.05) !important;
  border: 2px solid white !important;
  box-shadow: 0 0 10px rgba(255, 255, 255, 0.5) !important;
}

.custom-cart .btn-success {
  background: #ff6600 !important;
  color: white !important;
  padding: 12px !important;
  font-size: 16px !important;
  width: 100% !important;
  border: 2px solid transparent !important;
  transition: all 0.3s ease !important;
  transform: scale(1) !important;
}

.custom-cart .btn-success:hover {
  transform: scale(1.02) !important;
  border: 2px solid white !important;
  box-shadow: 0 0 15px rgba(255, 255, 255, 0.6) !important;
}

/* Close Button Orange */
.custom-cart .btn-close {
  background: transparent url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23ff6600'%3e%3cpath d='M.293.293a1 1 0 0 1 1.414 0L8 6.586 14.293.293a1 1 0 1 1 1.414 1.414L9.414 8l6.293 6.293a1 1 0 0 1-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 0 1-1.414-1.414L6.586 8 .293 1.707a1 1 0 0 1 0-1.414z'/%3e%3c/svg%3e") center/1em auto no-repeat !important;
  width: 24px !important;
  height: 24px !important;
  border: 2px solid transparent !important;
  transition: all 0.3s ease !important;
  transform: scale(1) !important;
  border-radius: 50% !important;
}

.custom-cart .btn-close:hover {
  transform: scale(1.1) !important;
  border: 2px solid white !important;
  box-shadow: 0 0 8px rgba(255, 255, 255, 0.5) !important;
}

/* Button Container - Fixed Layout */
.custom-cart .d-flex.justify-content-between {
  gap: 10px !important;
}

.custom-cart .d-flex.justify-content-between .btn {
  flex: 1 !important;
  min-width: 0 !important;
}

/* Ensure basket width is consistent */
.custom-cart {
  width: 280px !important;
}

/* Mobile - Same Size Buttons */
@media (max-width: 768px) {
  .custom-cart {
    width: 280px !important;
    max-width: 280px !important;
  }
  
  .custom-cart .delete-btn {
    padding: 8px 15px !important;
    font-size: 13px !important;
    min-width: 80px !important;
  }
  
  .custom-cart .basket-buy-btn {
    padding: 8px 15px !important;
    font-size: 13px !important;
    min-width: 80px !important;
  }
  
  .custom-cart .btn-success {
    padding: 12px !important;
    font-size: 16px !important;
  }
  
  .custom-cart .btn-close {
    width: 24px !important;
    height: 24px !important;
  }
}

/* Banner Navigation Buttons */
.banner-navigation {
    position: absolute;
    bottom: 30px;
    left: 50%;
    transform: translateX(-50%);
    display: flex;
    gap: 20px;
    z-index: 10;
}

.banner-nav-btn {
    background: #ff6600;
    color: white;
    border: none;
    width: 30px;
    height: 30px;
    border-radius: 50%;
    font-size: 24px;
    font-weight: bold;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.3s ease;
    box-shadow: 0 4px 15px rgba(255, 102, 0, 0.4);
    position: relative;
    overflow: hidden;
}

/* Hover Effects */
.banner-nav-btn:hover {
    background: #e65c00;
    transform: scale(1.2);
    box-shadow: 0 6px 25px rgba(255, 102, 0, 0.6);
    border: 3px solid white;
}

/* Pulse animation on hover */
.banner-nav-btn:hover::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(255, 255, 255, 0.3);
    border-radius: 50%;
    animation: bannerPulse 1s infinite;
}

@keyframes bannerPulse {
    0% { transform: scale(1); opacity: 1; }
    100% { transform: scale(1.8); opacity: 0; }
}

/* Active click effect */
.banner-nav-btn:active {
    transform: scale(1.1);
}

/* Hide original banner arrows (left/right in center) */
.slideshow .icon-arrow {
  display: none !important;
}
/* Mobile Search Overlay */
.mobile-search-overlay {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0,0,0,0.95);
    z-index: 9999;
    padding: 20px;
}

.mobile-search-box {
    background: white;
    border-radius: 12px;
    padding: 20px;
    margin-top: 80px;
    position: relative;
}

.mobile-search-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 15px;
    padding-bottom: 10px;
    border-bottom: 2px solid #ff6600;
}

.mobile-search-title {
    font-size: 18px;
    font-weight: bold;
    color: #333;
    margin: 0;
}

.close-mobile-search {
    background: #ff6600;
    color: white;
    border: none;
    width: 35px;
    height: 35px;
    border-radius: 50%;
    font-size: 18px;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.3s ease;
}

.close-mobile-search:hover {
    background: #e65c00;
    transform: scale(1.1);
}

.mobile-search-input-container {
    display: flex;
    gap: 10px;
    margin-bottom: 15px;
}

.mobile-search-input {
    flex: 1;
    padding: 12px 15px;
    border: 2px solid #ff6600;
    border-radius: 8px;
    font-size: 16px;
    outline: none;
}

.mobile-search-button {
    background: #ff6600;
    color: white;
    border: none;
    padding: 12px 20px;
    border-radius: 8px;
    cursor: pointer;
    font-weight: bold;
    transition: all 0.3s ease;
}

.mobile-search-button:hover {
    background: #e65c00;
    transform: scale(1.05);
}

/* Search Suggestions for Mobile */
.mobile-search-suggestions {
    background: white;
    border: 2px solid #ff6600;
    border-top: none;
    border-radius: 0 0 8px 8px;
    max-height: 50vh;
    overflow-y: auto;
    display: none;
}

.mobile-suggestion-item {
    padding: 12px 15px;
    cursor: pointer;
    border-bottom: 1px solid #eee;
    transition: all 0.2s ease;
    display: flex;
    align-items: center;
    gap: 12px;
}

.mobile-suggestion-item:hover {
    background: #fff8f0;
}

.mobile-suggestion-item:last-child {
    border-bottom: none;
}

.mobile-suggestion-item img {
    width: 45px;
    height: 45px;
    object-fit: contain;
}

.mobile-suggestion-info {
    flex: 1;
}

.mobile-suggestion-name {
    font-weight: bold;
    color: #333;
    margin-bottom: 4px;
    font-size: 14px;
}

.mobile-suggestion-price {
    color: #ff6600;
    font-weight: bold;
    font-size: 13px;
}

.mobile-no-results {
    padding: 20px;
    text-align: center;
    color: #666;
    font-style: italic;
}

/* Popular Searches */
.popular-searches {
    margin-top: 20px;
    padding-top: 15px;
    border-top: 1px solid #eee;
}

.popular-searches-title {
    font-size: 14px;
    color: #666;
    margin-bottom: 10px;
    font-weight: bold;
}

.popular-search-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.popular-search-tag {
    background: #f8f9fa;
    border: 1px solid #ddd;
    padding: 6px 12px;
    border-radius: 20px;
    font-size: 12px;
    cursor: pointer;
    transition: all 0.3s ease;
}

.popular-search-tag:hover {
    background: #ff6600;
    color: white;
    border-color: #ff6600;
}

/* Animation for mobile search */
@keyframes slideInDown {
    from {
        opacity: 0;
        transform: translateY(-30px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.mobile-search-box {
    animation: slideInDown 0.3s ease-out;
}
/* Search Suggestion Action Buttons - Compact */
.suggestion-action-buttons {
    display: flex;
    gap: 6px;
    margin-top: 8px;
}

.suggestion-buy-btn,
.suggestion-addcart-btn {
    background: linear-gradient(45deg, #ff6600, #ff9900);
    color: white;
    border: 1px solid white;
    padding: 4px 8px;
    border-radius: 4px;
    cursor: pointer;
    font-weight: bold;
    font-size: 10px;
    transition: all 0.3s ease;
    flex: 1;
    text-align: center;
    box-shadow: 0 1px 4px rgba(255, 102, 0, 0.3);
    min-height: 26px;
}

.suggestion-buy-btn:hover,
.suggestion-addcart-btn:hover {
    background: linear-gradient(45deg, #e65c00, #e68900);
    transform: scale(1.03);
    box-shadow: 0 2px 8px rgba(255, 102, 0, 0.4);
    border-color: #fff;
}

/* Hide ALL pagination dots completely */
.swiper-pagination,
.slideshow-swiper-pagination, 
.pagination-wrapper,
.swiper-pagination-bullets,
.swiper-pagination-bullet {
    display: none !important;
    opacity: 0 !important;
    visibility: hidden !important;
}

/* Specifically target the dots container */
.slideshow .swiper-pagination,
.slideshow .slideshow-swiper-pagination {
    display: none !important;
}

/* Hide the pagination wrapper div */
.pagination-wrapper {
    display: none !important;
}

/* Icon Arrow Navigation Buttons */
.icon-arrow {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 50px;
    height: 50px;
    background: #ff6600;
    border: none;
    color: white;
    border-radius: 50%;
    font-size: 24px;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.3s ease;
    z-index: 10;
    box-shadow: 0 4px 12px rgba(255, 102, 0, 0.3);
}

.icon-arrow:hover {
    background: #e65c00;
    transform: translateY(-50%) scale(1.1);
    box-shadow: 0 6px 16px rgba(255, 102, 0, 0.4);
}

.icon-arrow:active {
    transform: translateY(-50%) scale(0.95);
}

.icon-arrow-left {
    left: 20px;
}

.icon-arrow-right {
    right: 20px;
}

/* Envelope container */
#thankYouEnvelope {
    display: none;
    position: fixed;
    bottom: 20px;
    left: 50%;
    transform: translateX(-50%);
    width: 280px;
    height: 100px;
    perspective: 600px;
    z-index: 9999;
}

/* Envelope */
.envelope {
    width: 100%;
    height: 100%;
    background: rgba(0,0,0,0.8);
    color: #fff;
    border-radius: 12px;
    text-align: center;
    font-family: 'Poppins', sans-serif;
    font-size: 16px;
    display: flex;
    align-items: center;
    justify-content: center;
    transform-origin: top;
    transform: scaleY(0);
    transition: transform 0.3s ease, opacity 0.3s ease;
    opacity: 0;
    box-shadow: 0 8px 25px rgba(0,0,0,0.3);
}

/* Open animation */
.envelope.show {
    transform: scaleY(1);
    opacity: 1;
}

/* Close slide down */
.envelope.hide {
    transform: translateY(100px) scaleY(0);
    opacity: 0;
    transition: transform 0.5s ease, opacity 0.5s ease;
}

/* Profile System Styles */
.profile-pic {
  width: 80px;
  height: 80px;
  border-radius: 50%;
  object-fit: cover;
  border: 3px solid #ff6600;
}

/* Header Profile Icon */
.header-profile-container {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  cursor: pointer;
  margin: 0 10px;
}

.header-profile-icon {
  width: 35px;
  height: 35px;
  border-radius: 50%;
  background: linear-gradient(45deg, #ff6600, #ff9900);
  display: flex;
  align-items: center;
  justify-content: center;
  color: white;
  font-weight: 600;
  font-size: 12px;
  border: 2px solid white;
  box-shadow: 0 2px 5px rgba(255, 102, 0, 0.3);
  transition: all 0.3s ease;
  overflow: hidden;
}

.header-profile-icon:hover {
  transform: scale(1.1);
  box-shadow: 0 3px 8px rgba(255, 102, 0, 0.4);
}

.header-profile-icon img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 50%;
}

.header-profile-initials {
  font-size: 12px;
  font-weight: bold;
}

.header-profile-name {
  font-size: 9px;
  color: #ff6600;
  margin-top: 2px;
  font-weight: 600;
  text-align: center;
  line-height: 1;
}

/* Address Cards */
.address-card {
  border: 1px solid #ffa726;
  border-radius: 8px;
  padding: 12px;
  margin-bottom: 10px;
  position: relative;
  background: white;
  transition: all 0.3s ease;
}

.address-card:hover {
  border-color: #ff6600;
  box-shadow: 0 2px 8px rgba(255, 102, 0, 0.1);
}

.address-card.active {
  border-color: #ff6600;
  background: #fff8f0;
}

.address-actions {
  position: absolute;
  top: 8px;
  right: 8px;
}

/* Order Cards */
.order-card {
  border: 1px solid #ffa726;
  border-radius: 8px;
  padding: 12px;
  margin-bottom: 10px;
  background: white;
  transition: all 0.3s ease;
}

.order-card:hover {
  border-color: #ff6600;
  box-shadow: 0 2px 8px rgba(255, 102, 0, 0.1);
}

.order-status {
  display: inline-block;
  padding: 4px 8px;
  border-radius: 15px;
  font-size: 0.7rem;
  font-weight: bold;
}

.status-pending {
  background: #fff3cd;
  color: #856404;
}

.status-confirmed {
  background: #d1ecf1;
  color: #0c5460;
}

.status-shipped {
  background: #d4edda;
  color: #155724;
}

.status-delivered {
  background: #d1e7dd;
  color: #0f5132;
}

/* Scrollbar */
.modal-body::-webkit-scrollbar {
  width: 6px;
}

.modal-body::-webkit-scrollbar-track {
  background: #f1f1f1;
  border-radius: 10px;
}

.modal-body::-webkit-scrollbar-thumb {
  background: #ff6600;
  border-radius: 10px;
}

.modal-body::-webkit-scrollbar-thumb:hover {
  background: #e65c00;
}

/* Animations */
@keyframes slideIn {
  from {
    opacity: 0;
    transform: translateY(-10px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.modal-content {
  animation: slideIn 0.3s ease-out;
}

/* Input Validation */
.input-valid {
  border-color: #28a745 !important;
  background-color: #f8fff9 !important;
}

.input-invalid {
  border-color: #dc3545 !important;
  background-color: #fff8f8 !important;
}

.validation-message {
  font-size: 0.7rem;
  margin-top: 5px;
  display: none;
}

.validation-success {
  color: #28a745;
  display: block;
}

.validation-error {
  color: #dc3545;
  display: block;
}

/* Order Tracking Styles */
.order-details-card {
  background: #f8f9fa;
  border-radius: 10px;
  padding: 20px;
  border: 1px solid #dee2e6;
}

.section-title {
  color: #333;
  font-weight: 600;
  font-size: 0.9rem;
  margin-bottom: 10px;
  padding-bottom: 5px;
  border-bottom: 2px solid #ff6600;
}

.status-section {
  margin-bottom: 15px;
}

.status-badge {
  display: inline-block;
  padding: 6px 12px;
  border-radius: 20px;
  font-size: 0.8rem;
  font-weight: 600;
}

.status-pending {
  background: #fff3cd;
  color: #856404;
}

.status-paid {
  background: #d4edda;
  color: #155724;
}

.status-failed {
  background: #f8d7da;
  color: #721c24;
}

/* Timeline Styles */
.timeline {
  position: relative;
  padding-left: 20px;
}

.timeline::before {
  content: '';
  position: absolute;
  left: 7px;
  top: 0;
  bottom: 0;
  width: 2px;
  background: #dee2e6;
}

.timeline-step {
  position: relative;
  margin-bottom: 15px;
  padding-left: 20px;
}

.timeline-step::before {
  content: '';
  position: absolute;
  left: -7px;
  top: 0;
  width: 16px;
  height: 16px;
  border-radius: 50%;
  background: #6c757d;
  border: 2px solid white;
}

.timeline-step.active::before {
  background: #ff6600;
  border-color: #ff6600;
}

.timeline-step.completed::before {
  background: #28a745;
  border-color: #28a745;
}

.timeline-content {
  background: white;
  padding: 8px;
  border-radius: 6px;
  border: 1px solid #dee2e6;
  font-size: 0.85rem;
}

.timeline-date {
  font-size: 0.7rem;
  color: #6c757d;
  margin-top: 3px;
}

/* Address Styles */
.address-line {
  margin-bottom: 5px;
  font-size: 0.85rem;
}

.address-label {
  font-weight: 600;
  color: #666;
  min-width: 80px;
  display: inline-block;
}

.address-value {
  color: #333;
}

/* Products List */
.products-list {
  background: #f8f9fa;
  border-radius: 6px;
  padding: 10px;
  border: 1px solid #dee2e6;
}

.product-item {
  display: flex;
  justify-content: space-between;
  padding: 5px 0;
  border-bottom: 1px solid #dee2e6;
  font-size: 0.85rem;
}

.product-item:last-child {
  border-bottom: none;
}

/* Bill Information Styles */
.bill-line {
  margin-bottom: 5px;
  font-size: 0.85rem;
}

.bill-label {
  font-weight: 600;
  color: #666;
  min-width: 100px;
  display: inline-block;
}

.bill-value {
  color: #333;
}

.bill-download-btn {
  background: #ff6600;
  color: white;
  border: none;
  border-radius: 5px;
  padding: 6px 12px;
  font-size: 0.8rem;
  cursor: pointer;
  margin-top: 8px;
}

.bill-download-btn:hover {
  background: #e65c00;
}

/* Payment Action Button */
.payment-action-btn {
  background: #28a745;
  color: white;
  border: none;
  border-radius: 5px;
  padding: 6px 12px;
  font-size: 0.8rem;
  cursor: pointer;
}

.payment-action-btn:hover {
  background: #218838;
}

/* Admin Navbar Link */
.admin-nav-link {
  border-left: 2px solid #ff6600 !important;
  margin-left: 10px !important;
  padding-left: 15px !important;
}

.admin-nav-link .nav-link {
  color: #ff6600 !important;
  font-weight: 600 !important;
}

.admin-nav-link .nav-link:hover {
  color: #e65c00 !important;
}

/* Admin Panel Styles */
.admin-info-line {
  margin-bottom: 3px;
  font-size: 0.8rem;
}

.admin-info-label {
  font-weight: 600;
  color: #666;
  min-width: 100px;
  display: inline-block;
}

.admin-info-value {
  color: #333;
}

/* Scrollbar Styling */
.timeline-container::-webkit-scrollbar,
.products-list::-webkit-scrollbar,
.modal-body::-webkit-scrollbar {
  width: 6px;
}

.timeline-container::-webkit-scrollbar-track,
.products-list::-webkit-scrollbar-track,
.modal-body::-webkit-scrollbar-track {
  background: #f1f1f1;
  border-radius: 3px;
}

.timeline-container::-webkit-scrollbar-thumb,
.products-list::-webkit-scrollbar-thumb,
.modal-body::-webkit-scrollbar-thumb {
  background: #c1c1c1;
  border-radius: 3px;
}

.timeline-container::-webkit-scrollbar-thumb:hover,
.products-list::-webkit-scrollbar-thumb:hover,
.modal-body::-webkit-scrollbar-thumb:hover {
  background: #a8a8a8;
}

/* Responsive */
@media (max-width: 576px) {
  .modal-dialog {
    margin: 10px;
  }
  
  #adminOrderPanel {
    width: 90% !important;
    right: 5% !important;
    left: 5% !important;
  }
  
  .address-line,
  .bill-line {
    display: block;
  }
  
  .address-label,
  .bill-label {
    min-width: auto;
    display: block;
    margin-bottom: 2px;
  }
  
  .admin-nav-link {
    border-left: none !important;
    margin-left: 0 !important;
    padding-left: 0 !important;
    border-top: 2px solid #ff6600 !important;
    margin-top: 10px !important;
    padding-top: 10px !important;
  }
  
  .admin-info-line {
    display: block;
  }
  
  .admin-info-label {
    min-width: auto;
    display: block;
    margin-bottom: 2px;
  }
}

/* Notification Animations */
@keyframes slideInRight {
    from {
      opacity: 0;
      transform: translateX(100%);
    }
    to {
      opacity: 1;
      transform: translateX(0);
    }
  }
  
  @keyframes slideOutRight {
    from {
      opacity: 1;
      transform: translateX(0);
    }
    to {
      opacity: 0;
      transform: translateX(100%);
    }
  }


  /* ==================== BANNER FIXES ONLY ==================== */

/* 1. BANNER HEADING - BOLD HATAO (font-weight normal) */
.banner-content h2.display-1 {
    font-weight: normal !important;
    position: relative;
    padding-bottom: 15px !important;
}

/* 2. BANNER HEADING KE NICHE ORANGE-YELLOW UNDERLINE */
.banner-content h2.display-1::after {
    content: '';
    position: absolute;
    left: 50%;
    bottom: 0;
    transform: translateX(-50%);
    width: 200px;
    height: 4px;
    background: linear-gradient(to right, #ff6600, #ff9900, #ffcc00);
    border-radius: 2px;
}

/* 3. BANNER IMAGE - ORIGINAL SIZE (Kuch bhi change nahi) */
.swiper-slide.jarallax img.jarallax-img {
    /* Kuch bhi change nahi - original size hi rahega */
}

/* 4. "Simple Ingredients" paragraph - HIDDEN */
.banner-content p.fs-3 {
    display: none !important;
}

/* 5. RESPONSIVE - Mobile pe underline adjust */
@media (max-width: 768px) {
    .banner-content h2.display-1::after {
        width: 150px;
        height: 3px;
    }
}

@media (max-width: 480px) {
    .banner-content h2.display-1::after {
        width: 120px;
        height: 2px;
    }
}
/* "Simple Ingredients..." paragraph वापस लाएं */
.banner-content p.fs-3 {
    display: block !important;
    font-size: 1.2rem !important;
    color: white !important;
    margin-bottom: 15px !important;
    text-shadow: 1px 1px 3px rgba(0, 0, 0, 0.7) !important;
}

/* Mobile responsive */
@media (max-width: 768px) {
    .banner-content p.fs-3 {
        font-size: 1rem !important;
        padding: 0 10px !important;
    }
}

@media (max-width: 480px) {
    .banner-content p.fs-3 {
        font-size: 0.9rem !important;
    }
}
/* ==================== OUR RECENT BLOG SECTION - MOBILE FIX ==================== */

/* Desktop (default) - कोई change नहीं */
.section-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

/* Mobile पर fix */
@media (max-width: 768px) {
    .section-header {
        flex-direction: column !important;
        align-items: flex-start !important;
        gap: 10px !important;
    }
    
    .section-header h2.section-title {
        font-size: 1.4rem !important;
        margin-bottom: 0 !important;
        width: 100% !important;
    }
    
    .section-header a.btn.btn-primary {
        width: 100% !important;
        max-width: 150px !important;
        padding: 8px 15px !important;
        font-size: 0.9rem !important;
        margin-left: 0 !important;
        margin-top: 5px !important;
    }
    
    /* Underline adjust */
    .section-header h2.section-title::after {
        width: 100% !important;
        left: 0 !important;
        transform: none !important;
    }
}

/* Small mobile (480px से छोटे) */
@media (max-width: 480px) {
    .section-header h2.section-title {
        font-size: 1.2rem !important;
    }
    
    .section-header a.btn.btn-primary {
        max-width: 120px !important;
        padding: 6px 12px !important;
        font-size: 0.8rem !important;
    }
}
/* Profile Modal Edit Button Styling */
.profile-pic-container {
  position: relative;
  display: inline-block;
}

.edit-profile-button-container {
  z-index: 10;
}

#editProfileBtn {
  box-shadow: 0 2px 5px rgba(0,0,0,0.2);
  transition: all 0.3s ease;
}

#editProfileBtn:hover {
  transform: translateY(-2px);
  box-shadow: 0 4px 8px rgba(0,0,0,0.3);
}

/* Profile Modal Footer */
.modal-footer {
  border-top: 1px solid #eee;
  padding: 1rem;
}

/* Validation Styles */
.input-valid {
  border-color: #28a745 !important;
}

.input-invalid {
  border-color: #dc3545 !important;
}

.validation-success {
  color: #28a745;
  font-size: 0.85rem;
  margin-top: 5px;
}

.validation-error {
  color: #dc3545;
  font-size: 0.85rem;
  margin-top: 5px;
}
/* ==================== ABOUT US MODAL TRANSPARENCY FIX ==================== */
#aboutUsModal {
    background: rgba(0, 0, 0, 0.85) !important;
}

#aboutUsModal.modal-backdrop {
    background: rgba(0, 0, 0, 0.85) !important;
    opacity: 1 !important;
}

#aboutUsModal .modal-container {
    background: #ffffff !important;
    background-color: #ffffff !important;
    opacity: 1 !important;
}

#aboutUsModal .modal-content {
    background: transparent !important;
    opacity: 1 !important;
}

#aboutUsModal .close-cross-btn {
    opacity: 1 !important;
    visibility: visible !important;
}
/* ==================== PROFILE MODAL OVERLAY FIX ==================== */

/* Profile Modal के लिए specific overlay */
#profileModal {
    z-index: 99999 !important; /* सबसे ऊपर */
    background: rgba(0, 0, 0, 0.5) !important; /* Light black overlay */
    pointer-events: auto !important; /* Overlay पर click होने दें */
}

/* Profile Modal content */
#profileModal .modal-content {
    pointer-events: auto !important; /* Modal content पर click होने दें */
    z-index: 100000 !important; /* Overlay से ऊपर */
}

/* Overlay को modal के बाहर ही clickable बनाएं */
#profileModal .modal-backdrop {
    pointer-events: auto !important;
}

/* Body को scroll रोकने से बचाएं */

/* ==================== PRODUCT POPUP MODAL STYLES ==================== */
.product-popup-modal {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.7);
    display: none;
    align-items: center;
    justify-content: center;
    z-index: 10000;
    padding: 20px;
    backdrop-filter: blur(4px);
    animation: fadeIn 0.3s ease-out;
    overflow-y: auto;
}

.product-popup-modal.show,
.product-popup-modal[style*="display: flex"] {
    display: flex !important;
}

@keyframes fadeIn {
    from {
        opacity: 0;
    }
    to {
        opacity: 1;
    }
}

.product-popup-container {
    background: white;
    border-radius: 16px;
    max-width: 360px;
    width: 85%;
    max-height: 75vh;
    overflow-y: auto;
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.3);
    position: relative;
    animation: slideUp 0.4s cubic-bezier(0.34, 1.56, 0.64, 1);
    margin: auto;
}

/* Add underlines to all headings in popup */
.product-popup-container h2,
.product-popup-container h3,
.product-popup-container h4,
.product-popup-container h5,
.product-popup-container h6 {
    display: inline-block;
    border-bottom: 3px solid #ff6600;
    padding-bottom: 8px;
    margin-bottom: 12px;
    max-width: 100%;
}

/* Responsive popup - mobile */
@media (max-width: 768px) {
    .product-popup-container {
        max-width: 320px;
        max-height: 80vh;
    }
    
    .popup-content {
        grid-template-columns: 1fr 1fr;
        gap: 12px;
        padding: 16px;
    }
    
    .popup-image-section {
        min-height: 160px;
        max-height: 180px;
        padding: 6px;
    }
    
    .popup-product-name {
        font-size: 14px;
    }
    
    .popup-btn {
        padding: 6px 10px;
        font-size: 11px;
    }
}

@media (max-width: 480px) {
    .product-popup-container {
        max-width: 90vw;
        max-height: 85vh;
    }
    
    .popup-content {
        grid-template-columns: 1fr 1fr;
        gap: 10px;
        padding: 14px;
    }
    
    .popup-image-section {
        min-height: 140px;
        max-height: 160px;
        padding: 5px;
    }
    
    .popup-product-name {
        font-size: 13px;
    }
    
    .current-price {
        font-size: 16px;
    }
    
    .popup-btn {
        padding: 5px 8px;
        font-size: 10px;
    }
}

@keyframes slideUp {
    from {
        opacity: 0;
        transform: translateY(50px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.popup-close-btn {
    position: absolute;
    top: 10px;
    right: 10px;
    background: #ff6600;
    border: none;
    width: 30px;
    height: 30px;
    border-radius: 50%;
    font-size: 20px;
    color: white;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.3s ease;
    z-index: 10001;
    font-weight: bold;
}

.popup-close-btn:hover {
    background: #e65c00;
    transform: scale(1.1) rotate(90deg);
}

.popup-content {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 15px;
    padding: 20px;
}

.popup-image-section {
    display: flex;
    align-items: center;
    justify-content: center;
    background: #f8f9fa;
    border-radius: 12px;
    padding: 8px;
    min-height: 180px;
    max-height: 200px;
}

.popup-product-image {
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
    border-radius: 8px;
}

.popup-details-section {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.popup-product-name {
    font-size: 16px;
    font-weight: 700;
    color: #333;
    margin-bottom: 8px;
}

.popup-rating {
    display: flex;
    align-items: center;
    gap: 6px;
    margin-bottom: 8px;
}

.rating-stars {
    font-size: 14px;
    color: #ffc107;
}

.rating-count {
    font-size: 12px;
    color: #666;
}

.popup-description {
    margin-bottom: 12px;
}

.popup-description p {
    font-size: 13px;
    color: #555;
    line-height: 1.5;
    margin: 0;
}

.popup-quantity {
    margin-bottom: 12px;
    padding: 8px;
    background: #f8f9fa;
    border-radius: 8px;
}

.quantity-label {
    font-weight: 600;
    color: #333;
    margin-right: 6px;
    font-size: 12px;
}

.quantity-value {
    color: #ff6600;
    font-weight: 600;
    font-size: 12px;
}

.popup-price {
    margin-bottom: 16px;
}

.price-display {
    display: flex;
    align-items: center;
    gap: 12px;
}

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

.current-price {
    font-size: 20px;
    font-weight: 700;
    color: #ff6600;
}

.discount-badge {
    background: #ff6600;
    color: white;
    padding: 2px 6px;
    border-radius: 4px;
    font-size: 10px;
    font-weight: 600;
}

.popup-buttons {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.popup-btn {
    padding: 8px 12px;
    border: none;
    border-radius: 6px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.3s ease;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    font-size: 12px;
    text-transform: uppercase;
}

.btn-buy-now {
    background: linear-gradient(135deg, #ff6600, #ff9900);
    color: white;
    box-shadow: 0 4px 12px rgba(255, 102, 0, 0.3);
}

.btn-buy-now:hover {
    transform: translateY(-2px);
    box-shadow: 0 6px 18px rgba(255, 102, 0, 0.4);
}

.btn-add-cart {
    background: #f0f0f0;
    color: #333;
    border: 2px solid #ff6600;
    box-shadow: none;
}

.btn-add-cart:hover {
    background: #ff6600;
    color: white;
    transform: translateY(-2px);
}

.btn-remove {
    background: #e8e8e8;
    color: #666;
    border: 1px solid #ccc;
    box-shadow: none;
}

.btn-remove:hover {
    background: #ff6600;
    color: white;
    border-color: #ff6600;
    transform: translateY(-2px);
}

.popup-btn:active {
    transform: translateY(0);
}

/* Mobile Responsive */
@media (max-width: 768px) {
    .popup-content {
        grid-template-columns: 1fr;
        padding: 20px;
        gap: 20px;
    }
    
    .popup-image-section {
        min-height: 250px;
    }
    
    .popup-product-name {
        font-size: 20px;
    }
    
    .current-price {
        font-size: 24px;
    }
    
    .popup-btn {
        padding: 10px 16px;
        font-size: 13px;
    }
    
    .popup-close-btn {
        width: 30px;
        height: 30px;
        font-size: 20px;
    }
}

/* Mobile Responsive */
@media (max-width: 768px) {
    .popup-content {
        grid-template-columns: 1fr;
        padding: 20px;
        gap: 20px;
    }
    
    .popup-image-section {
        min-height: 250px;
    }
    
    .popup-product-name {
        font-size: 20px;
    }
    
    .current-price {
        font-size: 24px;
    }
    
    .popup-btn {
        padding: 10px 16px;
        font-size: 13px;
    }
    
    .popup-close-btn {
        width: 30px;
        height: 30px;
        font-size: 20px;
    }
}

@media (max-width: 480px) {
    .popup-container {
        max-width: 95%;
    }
    
    .popup-content {
        padding: 15px;
    }
    
    .popup-product-name {
        font-size: 18px;
    }
    
    .current-price {
        font-size: 20px;
    }
    
    .popup-btn {
        padding: 10px 12px;
        font-size: 12px;
    }
}

/* ==================== IMPROVED DROPDOWN MENU STYLING ==================== */

/* Megamenu container */
.navbar .megamenu {
    background: white;
    border: 2px solid #ff6600;
    border-radius: 12px;
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.1);
    animation: slideDown 0.3s ease-out;
}

@keyframes slideDown {
    from {
        opacity: 0;
        transform: translateY(-10px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* Column megamenu styling */
.col-megamenu {
    padding: 20px;
}

.col-megamenu h6.title {
    color: #ff6600;
    font-size: 16px;
    font-weight: 700;
    margin-bottom: 15px;
    padding-bottom: 8px;
    border-bottom: 2px solid #ff6600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.col-megamenu .nav-link {
    color: #333;
    font-size: 14px;
    padding: 8px 0 !important;
    margin-bottom: 5px;
    transition: all 0.3s ease;
    position: relative;
    padding-left: 0 !important;
    display: inline-block;
    border-bottom: 2px solid #ff6600;
}

.col-megamenu .nav-link::before {
    content: '▶';
    color: #ff6600;
    margin-right: 8px;
    font-size: 10px;
    opacity: 0;
    transition: all 0.3s ease;
}

.col-megamenu .nav-link:hover {
    color: #ff6600;
    transform: translateX(5px);
    font-weight: 500;
    border-bottom: 3px solid #ff6600;
}

.col-megamenu .nav-link:hover::before {
    opacity: 1;
}

/* Dropdown menu improvements */
.dropdown-toggle {
    cursor: pointer;
    position: relative;
}

.dropdown-toggle::after {
    content: '▼';
    margin-left: 8px;
    font-size: 10px;
    transition: transform 0.3s ease;
}

.dropdown-toggle[aria-expanded="true"]::after {
    transform: rotate(180deg);
    color: #ff6600;
}

.dropdown-menu {
    border: 1px solid #ff6600;
    border-radius: 8px;
    box-shadow: 0 8px 25px rgba(255, 102, 0, 0.15);
}

.dropdown-menu.show {
    animation: slideDown 0.3s ease-out;
}

.dropdown-item {
    padding: 10px 15px;
    transition: all 0.2s ease;
    border-left: 3px solid transparent;
}

.dropdown-item:hover {
    background-color: #fff8f0;
    border-left-color: #ff6600;
    color: #ff6600;
    font-weight: 500;
}

/* Has megamenu styling */
.navbar .has-megamenu {
    position: relative;
}

.navbar .has-megamenu > a {
    color: #333 !important;
    transition: all 0.3s ease;
}

.navbar .has-megamenu > a:hover {
    color: #ff6600 !important;
    font-weight: 600;
}

/* Nav item borders */
.nav-item.border-end-0 {
    border-right: 1px solid #e0e0e0 !important;
}

/* Responsive dropdown menu */
@media (max-width: 991px) {
    .navbar .megamenu {
        position: static !important;
        border: none;
        box-shadow: none;
        background: transparent;
        padding: 10px 0;
    }
    
    .col-megamenu {
        padding: 10px 20px;
    }
    
    .col-megamenu h6.title {
        font-size: 14px;
    }
}

/* Footer Headings - Orange Underline */
footer h5,
footer h4,
footer h3,
footer h2,
.footer-menu h5,
.footer-menu h4,
.footer-menu h3,
.footer-menu h2 {
    color: white;
    display: inline-block;
    border-bottom: 3px solid #ff6600;
    padding-bottom: 10px;
    margin-bottom: 15px;
    max-width: 100%;
}
        margin-bottom: 10px;
    }
    
    .col-megamenu .nav-link {
        font-size: 13px;
        padding: 6px 0 !important;
    }
}

/* Body with modal open - prevent scrolling without breaking layout */
body[style*="overflow: hidden"] {
    position: fixed;
    width: 100%;
}

/* Keep girl image within yellow section */
section.bg-warning {
    overflow: hidden;
    position: relative;
}

section.bg-warning img {
    max-width: 100%;
    height: auto;
    display: block;
}

/* Profile Modal खुलने पर background elements को disable न करें */
#profileModal.modal-backdrop ~ *:not(#profileModal) {
    pointer-events: auto !important;
    opacity: 1 !important;
}

/* Modal Backdrop Show State */
.modal-backdrop.show {
    display: flex !important;
    visibility: visible !important;
    opacity: 1 !important;
}


