@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:wght@400;700&family=Poppins:wght@300;400&display=swap');

        body {
            color: black;
        }

        .overlay {
            position: fixed;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            background: rgba(0, 0, 0, 0.7); /* Dark background */
            z-index: 99;
            display: none; /* Initially hidden */
        }
        body.no-scroll {
            overflow: hidden;
        }
        .filter-container {
            background: #222;
            border-radius: 10px;
            box-shadow: 0 4px 15px rgba(0, 0, 0, 0.5);
            color: black;
            text-align: center;
            width: fit-content;
            margin: 20px auto 20px 60px; /* Aligns left */
            position: relative;
        }
        .filter-header {
            font-size: 18px;
            font-weight: 400;
            color: #000;
            padding: 10px;
            background: #fff;
            text-align: center;
            cursor: pointer;
            border-radius: 10px;
            font-family: 'Poppins', sans-serif;

        }
        .filter-header::after {
            content: "";
            position: absolute;
            bottom: 0;
            left: 50%;
            width: 0;
            height: 2px;
            background-color: transparent;
            transition: all 0.3s ease;
            transform: translateX(-50%);
        }
        .filter-header.active::after {
            width: 100%;
        }
        .filter-header:hover {
            background: #EB889E;
        }
        .filter-content {
            display: none;
            position: absolute;
            top: 100%;
            left: 0;
            width: 1200px;
            max-height: 400px; /* Add this */
            overflow-y: auto;  /* Add this */
            background: #fff;
            padding: 20px;

            border-radius: 0 10px 10px 10px;
            z-index: 999;
        }
        .filter-options.grid-layout {
            display: grid;
            grid-template-columns: repeat(6, 1fr); /* 6 columns */
            grid-template-rows: repeat(3, auto); /* 3 rows */
            gap: 10px;
            padding: 10px;
            column-gap: 80px;
        }
        .filter-options:not(.grid-layout) {
            display: flex;
            gap: 145px; /* Adjust space between attributes */
            padding: 10px;
        }
        .filter-options:not(.grid-layout) label {
            display: flex;
            align-items: center;
            gap: 10px; /* Space between checkbox and text */
            cursor: pointer;
        }
        .filter-options label::before {
            content: "";
            width: 10px;
            height: 10px;
            border: 1px solid #EB889E; /* Soft pink border */
            border-radius: 4px;
            display: inline-block;
            background: white;
            transition: 0.3s;
        }
        .filter-options input[type="checkbox"] {
            display: none;
        }
        .filter-options label input[type="checkbox"]:checked + label::before {
            background: #EB889E; /* Soft pink background */
            border-color: #EB889E;

            color:  #EB889E;
            font-size: 14px;
            display: flex;
            align-items: center;
            justify-content: center;
            font-weight: bold;
        }
        .filter-options {
            display: none; /* This hides all filters initially */
            margin-top: 0;
            padding: 30px;
            margin-left: 50px;
        }
        .filter-options label {
            display: flex;
            align-items: center;
            gap: 5px;
            font-size: 14px;
            cursor: pointer;
            font-family: 'Cormorant Unicase';
            color: #000;
            font-weight: 400;
            position: relative;

        }
        .apply-button {
            /*width: 136px;*/
            height: 59px;
            font-family: 'Cormorant Unicase';
            background: #ff5c8a;
            color: white;
            font-size: 26px;
            font-weight: 700;
            padding: 10px;
            border-radius: 10px;
            border: none;
            border-radius: 5px;
            cursor: pointer;
            text-align: center;
            margin-top: 15px;
            align-items: center;
            justify-content: center;
        }
        .apply-button:hover {
            background: #EB889E;
        }
        .hidden {
            display: none;
        }
        .active {
            display: block;
        }
        .filter-wrapper {
            display: flex;
            gap: 20px;  /* Space between filters */
            align-items: center;
            flex-wrap: nowrap; /* Ensure all filters stay in one line */
            overflow-x: auto;  /* Enable horizontal scrolling if necessary */
            padding: 10px;
        }
        .filter-section {
            cursor: pointer;
            padding: 10px 33px;
            color: #000;
            font-weight: 400;
            border-radius: 5px;
            text-align: center;
            font-size: 20px;
            transition: background-color 0.3s ease;
            font-family: 'Cormorant Unicase';
            display: inline-block;
            position: relative;
        }
        .filter-section::after {
            content: "";
            position: absolute;
            bottom: 0;
            left: 50%;
            width: 0;
            height: 2px;
            background-color: transparent;
            transition: all 0.3s ease;
            transform: translateX(-50%);
        }

        .filter-section.active::after {
            width: 100%;
            background-color: #000000; /* Pink bottom border when active */
        }

        .filter-options-container {
            margin-top: 5px; /* Adjust space to prevent overlap */
            text-align: center;
        }
        .flower-type .filter-options {
            display: grid;
            grid-template-columns: repeat(6, 1fr); /* Always 6 columns */
            grid-template-rows: repeat(3, auto);  /* Always 3 rows */
            gap: 10px; /* Space between items */
        }
        .filter-sections-wrapper {
            display: flex;
            justify-content: center;
            gap: 15px;
            position: sticky;
            top: 0;
            background-color: rgba(235, 136, 158, 0.5);
            z-index: 1000;
        }
        .collection {
            width: 100%;
            background: white; /* Adjust background as needed */
            flex-wrap: wrap;
            gap: 20px;
            margin: 0 auto;
            /*height: 84%;*/
            opacity: 1;
            overflow: hidden;
        }
        .left2{
            width: 90%;
            margin-left: 100px;
            text-align: left;
        }
        .leftside{
            margin-left: 60px;
        }
        h4{
            font-family: 'Caveat';
            color: #333;
            font-weight: 400;
            font-size: 24px;
        }
        h2{
            font-family: 'Cormorant Unicase', serif;
            font-weight: 500;
            font-size: 48px;
        }
        .collection h2 {
            font-family: 'Cormorant Unicase', serif;
            font-size: 32px;
            margin-bottom: 20px;
        }
        .collection-container {
            display: grid;
            grid-template-columns: repeat(auto-fill, minmax(250px, 1fr)); /* Responsive grid */
            gap: 40px;
            padding: 40px 100px;
            min-height: 400px;
            overflow-y: auto;
        }

        /* Responsive padding for smaller screens */
        @media (max-width: 768px) {
            .collection-container {
                padding: 0 20px;
                gap: 20px;
            }
        }
        .collection-item {
            background: white;
            padding: 10px;
            width: 420px;
            height: 470px;
            border-radius: 8px;
            text-align: center;
        }
        .collection-item img {
            width: 300px;
            height: 250px;
            object-fit: cover;
            border-radius: 4px;
            object-fit: cover;
        }
        .collection-item h3 {
            font-family: 'Cormorant Unicase', serif;
            font-size: 24px;
            margin: 10px 0;
            font-weight: 500;
        }
        .collection-item p {
            font-size: 32px;
            font-weight: 700;
            font-family: 'Cormorant Unicase', serif;
        }
        .buy-now {
            background: #EB889E;
            border: none;
            padding: 8px 15px;
            border-radius: 5px;
            cursor: pointer;
            font-family: 'Cormorant Unicase', serif;
            font-weight: 600;
            font-size: 14px;
        }
        .view-all {
            background: #f8b6c1;
            border: none;
            padding: 10px 20px;
            border-radius: 5px;
            font-size: 18px;
            margin-top: 20px;
            cursor: pointer;
        }
        .filter-options input[type="checkbox"] {
            appearance: none;  /* Remove default checkbox */
            -webkit-appearance: none;
            -moz-appearance: none;
            position: absolute;
            opacity: 0;
        }
        .filter-options input[type="checkbox"]:checked + label::before {
            background: #EB889E;
            border-color: #EB889E;
            color: white; /* Show checkmark */
        }
        .filter-options input[type="checkbox"]:checked + label::before {
            background: #EB889E;
            border-color: #EB889E;
            text-align: center;
            line-height: 18px;
            font-weight: bold;
        }
        /* Bouquet Card Styles */
        .bouquet-card {
            background: #fff;
            border-radius: 10px;
            box-shadow: 0 2px 5px rgba(0,0,0,0.1);
            overflow: hidden;
            transition: transform 0.3s, box-shadow 0.3s;
            cursor: pointer;
            display: flex;
            flex-direction: column;
            height: 100%; /* Full height for grid alignment */
            position: relative;
        }

        .bouquet-card:hover {
            transform: translateY(-5px);
            box-shadow: 0 8px 20px rgba(0,0,0,0.2);
        }

        .bouquet-card-inner {
            display: flex;
            flex-direction: column;
            height: 100%;
        }
        .bouquet-image {
            width: 100%;
            aspect-ratio: 3 / 4;
            object-fit: cover;
            border-radius: 10px;
        }
        .bouquet-info {
            flex-grow: 1; /* Makes info stretch */
            padding: 15px;
            text-align: center;
            display: flex;
            flex-direction: column;
            justify-content: space-between;
        }
        .price {
            font-size: 18px;
            font-weight: bold;
        }
        .price-discount {
            font-size: 18px;
            font-weight: bold;
            color: #EB889E;
        }
        .price-original {
            text-decoration: line-through;
            font-size: 14px;
            color: gray;
        }

        /* Modal Styles */
        .modal {
            background: rgba(0, 0, 0, 0.5);
        }
        .modal-content.enhanced {
            display: flex;
            flex-direction: row;
            justify-content: space-between;
            align-items: flex-start;
            gap: 30px;
            background: #fff;
            border-radius: 15px;
            padding: 30px;
            max-width: 900px;
            width: 90%;
            margin: auto;
            animation: popUp 0.3s ease-out;
            position: fixed;
            top: 50%;
            left: 50%;
            transform: translate(-50%, -50%);
            z-index: 1001;
            max-height: 90vh;
            overflow-y: auto;
        }

        .modal-content.enhanced img {
            width: auto;
            max-width: 100%;
            max-height: 400px;
            object-fit: contain;
            border-radius: 10px;
            margin-bottom: 20px;
        }

        .modal-info {
            text-align: left;
            width: 50%;
        }
        .modal-reviews {
            width: 50%;
            padding-left: 20px;
            border-left: 1px solid #eee;
        }

        .modal-info h2 {
            font-family: 'Cormorant Unicase', serif;
            font-size: 28px;
            margin-bottom: 10px;
        }

        .modal-info .description {
            font-size: 16px;
            margin-bottom: 15px;
        }

        .modal-details p {
            font-size: 14px;
            margin: 5px 0;
        }

        .modal-details strong {
            color: #EB889E;
        }

        /* Styled Close Button */
        .close-btn {
            position: absolute;
            top: 15px;
            right: 15px;
            background: #EB889E;
            border: none;
            color: white;
            font-size: 20px;
            padding: 0 10px;
            border-radius: 50%;
            cursor: pointer;
            transition: background 0.3s;
        }

        .close-btn:hover {
            background: #d63384;
        }

        .bouquet-card.bestseller {
            border: 2px solid #d63384;
            position: relative;
        }

        .bouquet-card.bestseller::before {
            content: "Bestseller";
            position: absolute;
            top: 10px;
            left: 10px;
            background: #d63384;
            color: white;
            padding: 4px 8px;
            font-size: 12px;
            font-weight: bold;
            border-radius: 4px;
        }

        .discount-badge {
            position: absolute;
            top: 10px;
            right: 10px;
            background: #28a745;
            color: white;
            padding: 4px 6px;
            font-size: 12px;
            border-radius: 4px;
            font-weight: bold;
            visibility: visible !important;
            display: block !important;
        }

        /* .bouquet-card .discount-badge {
            display: block !important;
        } */

        .rating-badge {
            position: absolute;
            bottom: 10px;
            right: 10px;
            background: #ffc107;
            color: black;
            padding: 3px 6px;
            font-size: 12px;
            border-radius: 4px;
            font-weight: bold;
            visibility: visible !important;
            display: block !important;
        }

        .star-rating {
            direction: rtl;
            display: inline-flex;
            font-size: 24px;
        }

        .star-rating input[type="radio"] {
            display: none;
        }

        .star-rating label {
            color: lightgray;
            cursor: pointer;
            padding: 0 2px;
        }

        .star-rating input[type="radio"]:checked ~ label,
        .star-rating label:hover,
        .star-rating label:hover ~ label {
            color: gold;
        }