   /* Celebration Popup Styles */
   .celebration-popup-overlay {
       position: fixed;
       top: 0;
       left: 0;
       width: 100%;
       height: 100%;
       background: rgba(0, 0, 0, 0.5);
       display: none;
       justify-content: center;
       align-items: center;
       z-index: 3000;
   }

   .celebration-popup-content {
       background-color: white;
       padding: 20px;
       border-radius: 8px;
       text-align: center;
       width: 450px;
       box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
       position: relative;
   }

   .celebration-popup-content h2 {
       font-size: 24px;
       color: #333;
   }

   .celebration-popup-content p {
       margin: 10px 0;
   }

   #close-celebration-popup {
       background-color: #333;
       color: white;
       border: none;
       padding: 10px 20px;
       cursor: pointer;
       border-radius: 4px;
   }

   #close-celebration-popup:hover {
       background: linear-gradient(90deg, #00abc5, #dfcf18 100%, #dfcf18 0) !important;
   }

   .prebooking-products {
       display: flex;
       flex-wrap: wrap;
       gap: 20px;
   }

   .page-title-wrapper {
       font-size: medium;
   }

   .prebooking-main .product-item {
       width: 49%;
       /* 2 items per row */
       box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
       padding: 15px;
       background-color: #fff;
       border-radius: 8px;
       display: flex;
       position: relative;
   }

   .prebooking-main .product-image {
       max-width: 40%;
       height: auto;
       margin-right: 20px;
   }

   .prebooking-main .right-section {
       display: flex;
       flex-direction: column;
       justify-content: space-between;
       flex-grow: 1;
   }

   .prebooking-main .product-name {
       font-size: 25px;
       margin-bottom: 10px;
       text-align: left;
       color: #333333;
   }

   .prebooking-main .product-variants label {
       display: block;
       font-weight: bold;
       margin-bottom: 5px;
       text-align: left;
   }

   .prebooking-main .variant-swatch-group {
       display: flex;
       flex-wrap: wrap;
       gap: 10px;
       margin-bottom: 15px;
   }

   .prebooking-main .variant-swatch {
       padding: 8px 12px;
       border: 1px solid #ccc;
       border-radius: 4px;
       background-color: #f1f1f1;
       cursor: pointer;
       flex: 1 1 30%;
       text-align: center;
   }

   .prebooking-main .variant-swatch.selected {
       border-color: #333333;
       background-color: #333333;
       color: white;
   }

   .prebooking-main .prebook-btn {
    background: linear-gradient(90deg, #00abc5, #dfcf18 100%, #dfcf18 0) !important;

       background-color: #333333;
       color: white;
       border: none;
       padding: 10px 20px;
       cursor: pointer;
       border-radius: 4px;
   }

   .prebooking-main .prebook-btn:hover {
    background-color: #333333;
}

   .prebooking-main .new-label {
       position: absolute;
       top: 10px;
       right: 10px;
       background: linear-gradient(90deg, #00abc5, #dfcf18 100%, #dfcf18 0) !important;
       color: white;
       padding: 5px 10px;
       border-radius: 4px;
       font-size: 14px;
       font-weight: bold;
   }

   .popup-overlay {
       position: fixed;
       top: 0;
       left: 0;
       width: 100%;

       height: 100%;
       background: rgba(0, 0, 0, 0.5);
       display: none;
       justify-content: center;
       align-items: center;
       z-index: 3000;
   }

   .popup-content {
       /* top: 10%;
        left: 42%; */
       background-color: white;
       padding: 20px;
       border-radius: 8px;
       text-align: center;
       width: 300px;
       box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
       position: relative;
   }

   .prebooking-main .form-group label {
       float: left;
   }

   /* button#close-popup {
        margin-top: 23px;
    } */
/* Loader CSS */
.prebooking-loader {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.5);
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 9999;
}

.prebooking-spinner {
    border: 8px solid rgba(0, 0, 0, 0.1);
    border-radius: 50%;
    border-top: 8px solid #fff;
    width: 50px;
    height: 50px;
    animation: spin 1s linear infinite;
}

@keyframes spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}

   @media only screen and (max-width: 600px) {
       .prebooking-main .product-item {
           width: 100%;
           display: block;
       }

       .prebooking-main .product-image {
        max-width: 63%;
        margin-left: 40px;
        margin-bottom: 17px;
       }

       .celebration-popup-content {
           width: 80%;
       }

       /* .popup-content {
            top: 16%;
            left: 16%;
            position: relative;
        } */
   }