
@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300..700;1,300..700&family=Jost:ital,wght@0,100..900;1,100..900&display=swap');


/*Animations*/
/*Animations*/
.fadeinleft {
    opacity:0;
    transform: translateX(200px);
    transition: all 1.3s ease-out;
}

.fadeinright{
    opacity: 0;
    transform: translateX(-200px);
    transition: all 0.8s ease-out;
}

.fadeindown{
    opacity: 0;
    transform: translateY(-100px);
    transition: all 1.2s ease-out;
}

.fade-in-up{
    opacity:0;
    transform: translateY(100px);
    transition: all 0.5s ease-in-out;
}

.active-left,.active-right,.active-down{
    opacity:1;
    transform: translateX(0);
    transform: translateY(0);
}

.active-up{
    opacity:1;
    transform: translateX(0);
    transform: translateY(0);
}


.fadein{
opacity: 0;
}   

@keyframes fade-left {
    from {
      transform: translateX(200px);
    }
  
    to {
      transform: translateX(0px);
    }
  }

.fade-left{
    animation: fade-left ease-in-out 0.2s;
}

html,body
{
    width: 100%;
    
   
    overflow-x: hidden; 
}

/* End Animations*/


.container{
    max-width: 1400px;
}

/* From Uiverse.io by alexmaracinaru */ 
.cta {
    border: none;
    background: none;
    cursor: pointer;
    margin-top: 2em;
  }
  
  .cta span {
    padding-bottom: 7px;
    letter-spacing: 4px;
    font-size: 14px;
    padding-right: 15px;
    text-transform: uppercase;
  }
  
  .cta svg {
    transform: translateX(-8px);
    transition: all 0.3s ease;
  }
  
  .cta:hover svg {
    transform: translateX(0);
  }
  
  .cta:active svg {
    transform: scale(0.9);
  }
  
  .hover-underline-animation {
    position: relative;
    color: black;
    padding-bottom: 20px;
  }
  
  .hover-underline-animation:after {
    content: "";
    position: absolute;
    width: 100%;
    transform: scaleX(0);
    height: 2px;
    bottom: 0;
    left: 0;
    background-color: #000000;
    transform-origin: bottom right;
    transition: transform 0.25s ease-out;
  }
  
  .cta:hover .hover-underline-animation:after {
    transform: scaleX(1);
    transform-origin: bottom left;
  }


  .sec-btn{
    font-family: 'Jost';
    font-size: 16px;
    color: white;
    border-bottom: 2px solid white;
    padding: 0px;
    height: fit-content;
    border-radius: 0px;
  }

p{
    font-family: 'Jost';
    font-size: 18px;
    
}

h1,h2,h3,h4,h5,h6{
    font-family: 'Cormorant Garamond';
    
}

.dark-img{
    filter: brightness(30%);
}

.carousel-main{
    margin-top: -10em;
}

.navbar{
    position: relative;
    z-index: 10;
    background-color: transparent!important;
    box-shadow: none!important;
}

.navbar li a{
    color: white!important;
}

.navbar li a.active{
    color: white!important;
}

.carousel-caption{
   bottom: 30%;
    text-transform: uppercase;
}

.carousel-caption h1{
    font-weight: 600!important;
    color: rgba(255, 255, 255, 0.945);
}


.navbar li{
    margin: 0em 1em;
}

.navbar li  a{
    font-family: 'Jost';
    font-weight: 400;
    text-transform: uppercase;
}


.navbar{
    padding: 20px 0px;
    margin: 0em;
}


.rooms-home{
    background-color: #122223;
    padding: 10em 0em;
}

.carousel-1{
    background: url('../img/proviz-main.jpg')rgba(0, 0, 0, 0.7);
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    background-blend-mode: multiply;
    height: 90vh;
}

.carousel-2{
    background: url('../img/oricon-slide-3.jpg')rgba(0, 0, 0, 0.6);
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    background-blend-mode: multiply;
    height: 90vh;
}

.carousel-3{
    background: url('../img/proviz-3.jpg')rgba(0, 0, 0, 0.75);
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    background-blend-mode: multiply;
    height: 90vh;
}


.carousel-control-prev{
    border: 1px solid #585f5f;
    width: 60px;
    height: 60px;
    top: 48%!important;
    left: 3%;
    padding: 1em;

    padding-top: 0.4em;
    border-radius: 50%;
    background: rgba(30, 65, 59, 0.88);

box-shadow: 0 4px 30px rgba(0, 0, 0, 0.1);
backdrop-filter: blur(12px);
-webkit-backdrop-filter: blur(12px);
border: 1px solid rgba(30, 65, 59, 0.3);
}

.carousel-control-prev span{
    color: #f9daba;
}

.carousel-control-next{
    border: 1px solid #585f5f;
    width: 60px;
    height: 60px;
    top: 48%!important;
    right: 3%;
    padding: 1em;

    padding-top: 0.4em;
    border-radius: 50%;
    background: rgba(30, 65, 59, 0.88);

box-shadow: 0 4px 30px rgba(0, 0, 0, 0.1);
backdrop-filter: blur(12px);
-webkit-backdrop-filter: blur(12px);
border: 1px solid rgba(30, 65, 59, 0.3);
}

.carousel-control-next-icon{
    color: #f9daba;
}

.sticky{
    position: fixed;
    top: 0;
    z-index: 1000!important;
   /* From https://css.glass */
background: rgba(30, 65, 59, 0.75)!important;
box-shadow: 0 4px 30px rgba(0, 0, 0, 0.1)!important;
backdrop-filter: blur(12px)!important;
-webkit-backdrop-filter: blur(12px)!important;
border: 0px solid rgba(30, 65, 59, 0.3)!important;
   padding:  0em;
  
    width: 100%;
    transition-duration: 0.6s;
    padding: 0.5em 0em;
    overflow-x: hidden!important;
  }

  @keyframes fadeinnav {
    from {opacity: 0;}
    to {opacity: 1;}
  }

  .sticky img{
    width: 65px!important;
  }


  .fade-in-nav{
    animation-name: fadeinnav;
    animation-duration: 0.9s;
  }


  .booking-form {
            display: flex;
            flex-wrap: wrap;
            align-items: center;
            background-color: #122223;
            color: white;
            padding: 15px 30px;
            border-radius: 30px;
            box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
            position: relative;
           margin-top: -3em;
            z-index: 14;
           width:1200px;
            font-family: 'Jost';
            background: rgba(30, 65, 59, 0.88);
            border-radius: 16px;
            box-shadow: 0 4px 30px rgba(0, 0, 0, 0.1);
            backdrop-filter: blur(12px);
            -webkit-backdrop-filter: blur(12px);
            border: 1px solid rgba(30, 65, 59, 0.3);
        }
        
        .form-section {
            position: relative;
            margin-right: 15px;
            flex: 1;
            min-width: 200px;
           
        }
        
        .form-section:last-of-type {
            flex: 0 0 auto;
            margin-right: 0;
        }
        
        .form-label {
            display: block;
            margin-top: 10px;
            font-size: 18px;
            color: white;
            cursor: pointer;
            
        }
       
        
        .date-label, .guests-label {
            display: flex;
            align-items: center;
            position: relative;
            justify-content: center;
            
            
        }
        
        .date-label:after, .guests-label:after {
            content: "↓";
            margin-left: 10px;
        }
        
        .check-button {
            background-color: #f3dbc3;
            color: #333;
            font-weight: bold;
            border: none;
            padding: 12px 24px;
            border-radius: 50px;
            font-size: 16px;
            cursor: pointer;
            transition: background-color 0.3s ease;
            text-transform: uppercase;
            min-width: 200px;
        }
        
        .check-button:hover {
            background-color: #e6c9a8;
        }
        
        /* Calendar and dropdown styling */
        .dropdown-panel {
            display: none;
            position: absolute;
            left: 0;
            top: 100%;
            margin-top: 5px;
            width: 700px;
            background-color: white;
            box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
            z-index: 100;
            border-radius: 8px;
            overflow: visible;
            
        }
         /* Special styling for calendar panel */
         #calendar-panel {
            width: auto; /* Allow it to size to content */
            min-width: 100%; /* At least as wide as its container */
        }
        
        /* Special styling for guest panel */
        #guests-panel {
            width: 100%;
        }
        
        .calendar-container {
            padding: 15px;
            display: flex;
            gap: 20px;
            max-width: 800px;
            z-index: 10;
            
        }
        
        .calendar {
            width: 400px;
            position: relative;
            z-index: 100;
           
        }
        
        .calendar-header {
            display: flex;
            justify-content: space-between;
            padding: 10px 0;
            color: #333;
            font-weight: bold;
        }
        
        .calendar-grid {
            display: grid;
            grid-template-columns: repeat(7, 1fr);
            gap: 10px;
            position: relative;
            z-index: 100;
            
        }
        
        .calendar-day-header {
            text-align: center;
            font-size: 12px;
            color: #777;
            padding: 5px 0;
        }
        
        .calendar-day {
            height: 36px;
            width: 36px;
            display: flex;
            align-items: center;
            justify-content: center;
            cursor: pointer;
            border-radius: 50%;
            color: #333;
        }
        
        .calendar-day:hover {
            background-color: #f0f0f0;
        }
        
        .calendar-day.selected {
            background-color: #0f2a2a;
            color: white;
        }
        
        .calendar-day.in-range {
            background-color: #e6f2f2;
        }
        
        .calendar-day.disabled {
            color: #ccc;
            cursor: not-allowed;
        }
        
        #guests-panel{
            max-width: 300px;
        }

        .guests-panel {
            padding: 15px;
            color: #333;
           
        }
        
        .guest-option {
            padding: 10px;
            cursor: pointer;
            border-bottom: 1px solid #eee;
        }
        
        .guest-option:last-child {
            border-bottom: none;
        }
        
        .guest-option:hover {
            background-color: #f0f0f0;
        }
        
        .show {
            display: block;
        }

        
        
        /* Responsive adjustments */
        @media screen and (max-width: 987px) {
            .booking-form {
                flex-direction: column;
                align-items: stretch;
                margin-top: -3em;
                
            }


            .form-section {
                margin-right: 0;
                margin-bottom: 15px;
                width:340px;
            }
            
            .check-button {
                width: 100%;
            }
            
            .calendar-container {
                flex-direction: column;
                width: 100%;
            }
            
            .calendar {
                width: 100%;
            }
            
            /* Ensure dropdown panels are properly positioned on mobile */
            .dropdown-panel {
                position: absolute;
                left: 0;
                width: 100%;
            }
            
            /* Special handling for calendar on mobile */
            #calendar-panel {
                position: absolute;
                width: 100%;
            }
        
            .carousel-1{
                height: 110vh!important;
            }
        
        
        
        }

       
        .owl-dots .owl-dot span {
            width: 12px;
            height: 12px;
            margin: 5px 7px;
            background: rgba(255, 255, 255, 0.5); /* White with 50% opacity for inactive dots */
            border: 1px solid white;              /* 1px white border around all dots */
            border-radius: 50%;                   /* Circular shape */
            display: block;
            transition: all 200ms ease;   
                    /* Smooth transition effect */
          }
          
          /* Active dot style */
          .owl-dots .owl-dot.active span {
            background: rgba(255, 255, 255, 1);   /* Solid white for active dot */
          }
          
          /* Optional hover effect */
          .owl-dots .owl-dot:hover span {
            background: rgba(255, 255, 255, 0.8); /* Slightly more opaque on hover */
          }


          .room-box p{
            color: #f9daba;
          }



    #facilities{
        background-color: #f8f5f0;
        padding: 8em 0em;
    }      

    #activities{
        padding: 8em 0em;
    }

    #activities img{
        border-radius: 15px;
    }

    .page-btn{
        background-color: #f9daba;
        font-family: 'Jost';
        font-size: 18px;
        padding: 0.7em 2.5em;
        color: #122223;
        border-radius: 10px;
        width: fit-content;
        font-weight: 600;
        
        transition-duration: 0.4s;

    }

    .page-btn:hover{
        background-color: #f9daba;
        color: black;
        box-shadow: rgba(50, 50, 93, 0.25) 0px 6px 12px -2px, rgba(0, 0, 0, 0.3) 0px 3px 7px -3px;
        transition-duration: 0.4s;
    }


    .review-box{
        box-shadow: rgba(100, 100, 111, 0.2) 0px 7px 29px 0px;
        margin: 1em;
        padding: 2em;
    }


 footer{
    background-color: #122223;
    padding: 5em 0em;
 }   


 .rooms-head{
    background: url('../img/rooms-head.jpg')rgba(0, 0, 0, 0.7);
    background-size: cover;
    background-position: 0% 70%;
    background-repeat: no-repeat;
    background-blend-mode: multiply;
    height: 60vh;
    display: flex;
    align-items: center;
    color: white;
 }

 .navbar-2{
    background-color: #0f2a2a!important;
    padding: 0.2em 0em!important;
 }

 .our-rooms .row{
    margin: 6em 0em;
 }

 
 .gallery-head{
    background: url('../img/gallery-1.jpg')rgba(0, 0, 0, 0.6);
    background-size: cover;
    background-position: 0% 70%;
    background-repeat: no-repeat;
    background-blend-mode: multiply;
    height: 60vh;
    display: flex;
    align-items: center;
    color: white;
 }

 .about-head{
    background: url('../img/proviz-main.jpg')rgba(0, 0, 0, 0.7);
    background-size: cover;
    background-position: 0% 70%;
    background-repeat: no-repeat;
    background-blend-mode: multiply;
    height: 60vh;
    display: flex;
    align-items: center;
    color: white;
 }


 .contact-head{
    background: url('../img/oricon-coast-luxury-resort-orikum-img-12.jpg')rgba(0, 0, 0, 0.65);
    background-size: cover;
    background-position: 0% 70%;
    background-repeat: no-repeat;
    background-blend-mode: multiply;
    height: 60vh;
    display: flex;
    align-items: center;
    color: white;
 }

 .rooms-home a{
    color: white;
 }


 .navbar-toggler-icon {
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='rgba(255,255,255, 0.95)' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 8h24M4 16h24M4 24h24'/%3E%3C/svg%3E");
  }

  @media only screen and (max-width: 870px) {
    .navbar {
        background: rgba(30, 65, 59, 0.75)!important;
        box-shadow: 0 4px 30px rgba(0, 0, 0, 0.1)!important;
        backdrop-filter: blur(12px)!important;
        -webkit-backdrop-filter: blur(12px)!important;
        border: 0px solid rgba(30, 65, 59, 0.3)!important;
        padding: 0em;
    }
    .reveal-image,.image-container{
        max-height: 400px;
    }
    .room-box{
        margin: 1em;
    }
    .rooms-nav{
        display: flex!important;
        justify-content: start!important;
    }
    .logo-pos{
        text-align: start!important;
    }
  }
  