/* Swiper Container */
        .swiper {
            width: 100%;
            height: 100vh;
        }

        /* Floating product image particles */
        .floating-nuts {
            position: absolute;
            inset: 0;
            pointer-events: none;
            z-index: 3;
        }

        .nut-particle {
            position: absolute;
            width: 70px;
            height: 70px;
            object-fit: contain;
            filter: drop-shadow(0 8px 16px rgba(0, 0, 0, 0.45));
            animation: floatBob var(--dur, 4s) ease-in-out infinite alternate;
            animation-delay: var(--delay, 0s);
        }

        .nut-particle.sm {
            width: 48px;
            height: 48px;
        }

        .nut-particle.xs {
            width: 34px;
            height: 34px;
        }

        .nut-particle.lg {
            width: 90px;
            height: 90px;
        }

        @keyframes floatBob {
            0% {
                transform: translateY(0px) rotate(var(--r0, 0deg));
            }

            100% {
                transform: translateY(-18px) rotate(var(--r1, 10deg));
            }
        }

        .swiper-slide {
            position: relative;
            width: 100%;
            height: 100%;
            background-color: #1B4332;
            display: flex;
            align-items: center;
            justify-content: center;
            overflow: hidden;
        }

        /* Luxury Background Light Elements */
        .bg-circle {
            position: absolute;
            right: -10%;
            top: -10%;
            width: 70vw;
            height: 70vw;
            background: radial-gradient(circle, rgba(212, 175, 55, 0.15) 0%, rgba(0, 0, 0, 0) 70%);
            border-radius: 50%;
            z-index: 1;
            pointer-events: none;
        }

        /* Two Column Slider Layout Grid */
        .slider-container {
            position: relative;
            z-index: 2;
            width: 100%;
            max-width: 1200px;
            margin: 0 auto;
            padding: 0 40px;
            display: grid;
            grid-template-columns: 1fr 1fr;
            align-items: center;
            height: 100%;
        }

        /* --- LEFT SIDE: TEXT CONTENT --- */
        .left-content {
            display: flex;
            flex-direction: column;
            justify-content: center;
        }

        .tagline-wrapper {
            display: flex;
            align-items: center;
            gap: 15px;
            margin-bottom: 10px;
            opacity: 0;
        }

        .tagline {
            color: #D4AF37;
            /* Premium Metallic Gold */
            font-weight: 700;
            font-size: 1.1rem;
            text-transform: uppercase;
            letter-spacing: 2px;
        }

        .tagline-line {
            width: 60px;
            height: 3px;
            background-color: #D4AF37;
        }

        /* Master Title Wrapper for Character Splitting */
        .main-title {
            color: #ffffff;
            font-size: 5.2rem;
            font-weight: 900;
            line-height: 0.95;
            text-transform: uppercase;
            margin-bottom: 40px;
            letter-spacing: -1px;
        }

        .title-line {
            display: block;
            white-space: nowrap;
        }

        /* Single Character Animation Frame Setup */
        .char {
            display: inline-block;
            opacity: 0;
            transform: translateX(0) rotate(0deg);
        }

        /* --- BOTTOM PREMIUM INFO BAR COMPONENT --- */
        .price-bar {
            background-color: #2D6A4F;
            /* Rich Green highlight bar */
            border-radius: 4px;
            padding: 20px 40px;
            display: flex;
            align-items: center;
            justify-content: space-between;
            width: 90%;
            border-left: 5px solid #D4AF37;
            box-shadow: 0 15px 35px rgba(0, 0, 0, 0.3);
            opacity: 0;
        }

        .menu-options {
            display: flex;
            flex-direction: column;
            gap: 4px;
            max-width: 70%;
        }

        .menu-options p {
            color: #e0e0e0;
            font-size: 0.95rem;
            line-height: 1.4;
        }

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

        .price-label {
            color: #ffffff;
            display: flex;
            flex-direction: column;
            font-size: 0.85rem;
            font-weight: 600;
            text-transform: uppercase;
            letter-spacing: 1px;
        }

        .price-amount {
            font-size: 1.3rem;
            font-weight: 900;
            color: #D4AF37;
        }

        .add-btn {
            width: 50px;
            height: 50px;
            background-color: #D4AF37;
            border-radius: 50%;
            display: flex;
            align-items: center;
            justify-content: center;
            border: none;
            cursor: pointer;
            position: relative;
            box-shadow: 0 5px 15px rgba(0, 0, 0, 0.2);
            transition: transform 0.2s ease, background-color 0.2s ease;
        }

        .add-btn:hover {
            transform: scale(1.1);
            background-color: #f39c12;
        }

        /* Right Arrow Icon inside button */
        .add-btn::after {
            content: '';
            width: 10px;
            height: 10px;
            border-top: 3px solid #1B4332;
            border-right: 3px solid #1B4332;
            transform: rotate(45deg);
            margin-left: -4px;
            display: block;
        }

        /* --- RIGHT SIDE: IMAGE CONTENT --- */
        .right-content {
            display: flex;
            align-items: center;
            justify-content: center;
            position: relative;
        }

        .image-wrapper {
            position: relative;
            width: 100%;
            max-width: 620px;
            opacity: 0;
        }

        /* Premium Organic Abstract Blob Backdrop */
        .image-blob {
            position: absolute;
            top: 50%;
            left: 50%;
            transform: translate(-50%, -50%);
            width: 115%;
            height: 115%;
            background: url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill='%232D6A4F' d='M44.7,-76.3C57.3,-69.1,66.5,-55.4,73.4,-40.7C80.3,-26,84.9,-10.3,83.9,5.2C82.9,20.7,76.3,36,67.1,49.1C57.9,62.1,46.1,72.9,32.2,77.7C18.3,82.5,2.3,81.3,-13.9,77.3C-30.1,73.3,-46.4,66.6,-58.5,55C-70.6,43.4,-78.6,26.9,-81,9.6C-83.4,-7.7,-80.3,-25.7,-71.9,-40.2C-63.5,-54.7,-49.8,-65.7,-35.4,-72C-21,-78.3,-5.9,-79.8,10.2,-78.1C26.3,-76.4,44.7,-76.3,44.7,-76.3Z' transform='translate(100 100)' /%3E%3C/svg%3E") center center no-repeat;
            z-index: 1;
            opacity: 0.6;
        }

        .product-img {
            width: 100%;
            height: auto;
            position: relative;
            z-index: 2;
            filter: drop-shadow(0 25px 35px rgba(0, 0, 0, 0.4));
        }

        /* -----------------------------------------------
           EXPLICIT JAVASCRIPT-TRIGGERED ANIMATION CLASSES
        ----------------------------------------------- */

        .animate-tagline {
            animation: fadeInUp 0.6s ease forwards 0.2s;
        }

        .animate-char-left {
            animation: charFromLeft 0.7s cubic-bezier(0.175, 0.885, 0.32, 1.275) forwards;
            animation-delay: calc(var(--char-index) * 0.05s + 0.4s);
        }

        .animate-char-right {
            animation: charFromRight 0.7s cubic-bezier(0.175, 0.885, 0.32, 1.275) forwards;
            animation-delay: calc(var(--char-index) * 0.05s + 0.4s);
        }

        .animate-pricebar {
            animation: fadeInUp 0.6s ease forwards 1.4s;
        }

        .animate-image {
            animation: imagePopIn 0.9s cubic-bezier(0.165, 0.84, 0.44, 1) forwards 0.6s;
        }

        /* Keyframes */
        @keyframes charFromLeft {
            0% {
                opacity: 0;
                transform: translateX(-150px) rotate(-15deg);
            }

            100% {
                opacity: 1;
                transform: translateX(0) rotate(0deg);
            }
        }

        @keyframes charFromRight {
            0% {
                opacity: 0;
                transform: translateX(150px) rotate(15deg);
            }

            100% {
                opacity: 1;
                transform: translateX(0) rotate(0deg);
            }
        }

        @keyframes fadeInUp {
            0% {
                opacity: 0;
                transform: translateY(40px);
            }

            100% {
                opacity: 1;
                transform: translateY(0);
            }
        }

        @keyframes imagePopIn {
            0% {
                opacity: 0;
                transform: scale(0.6) rotate(-10deg);
            }

            70% {
                transform: scale(1.03) rotate(1deg);
            }

            100% {
                opacity: 1;
                transform: scale(1) rotate(0deg);
            }
        }

        /* Navigation styling overrides */
        .swiper-button-next,
        .swiper-button-prev {
            color: #D4AF37 !important;
            background: rgba(0, 0, 0, 0.2);
            width: 50px;
            height: 50px;
            border-radius: 50%;
            z-index: 10;
        }

        .swiper-button-next:after,
        .swiper-button-prev:after {
            font-size: 1.2rem !important;
            font-weight: 900;
        }

        /* Responsive Optimization styling */
        @media (max-width: 992px) {
            .slider-container {
                grid-template-columns: 1fr;
                grid-template-rows: auto auto;
                padding-top: 40px;
                gap: 20px;
            }

            .main-title {
                font-size: 3rem;
                margin-bottom: 20px;
                text-align: center;
            }

            .tagline-wrapper {
                justify-content: center;
            }

            .price-bar {
                width: 100%;
                margin: 0 auto;
                padding: 15px 25px;
            }

            .image-wrapper {
                max-width: 260px;
            }

            .right-content {
                grid-row: 1;
            }

            .left-content {
                grid-row: 2;
            }
        }
