@import url("https://fonts.googleapis.com/css2?family=Poppins:wght@200;300;400;500;600;700&display=swap");

*,
*::after,
*::before {
  padding: 0%;
  margin: 0%;
  box-sizing: border-box;
}

html {
  font-size: 62.5%;
  scroll-behavior: smooth;
}

body {
  font-family: "Poppins", sans-serif;
}

::-webkit-scrollbar {
  width: 10px;
}

/* Handle */
::-webkit-scrollbar-thumb {
  background: #168ba0;
}

/* Handle on hover */
::-webkit-scrollbar-thumb:hover {
  background: #0e6a7a;
}

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

/* ############## utility classes ###################  */

.container {
  max-width: 1200px;
  width: 90%;
  margin: auto;
}

.btn {
  display: inline-block;
  border: none;
  padding: 0.7em 2em;
  text-decoration: none;
  border-radius: 50px;
  cursor: pointer;
  outline: none;
  margin-top: 1em;
  text-transform: uppercase;
  font-weight: 500;
}
.btn-primary {
  color: #fff;
  background-color: #168ba0;
  transition: background-color 0.3s ease-in-out;
}

.btn-primary:hover {
  background-color: #0e6f72;
}
/*############################ navbar styling ##############################################*/

/* for desktop */

.navbar input[type="checkbox"],
.navbar .hamburger-lines {
  display: none;
}

.navbar {
  /* box-shadow: 0 5px 10px 0 #aaa; */
  position: fixed;
  width: 100%;
  background: #fff;
  color: #000;
  opacity: 0.9;
  z-index: 999;
  top: 0;
}
.logo {
  font-size: 2.8rem;
  order: 1;
}
.logo:hover {
  color: rgb(7, 7, 7);
}

.navbar-container {
  display: flex;
  justify-content: space-between;
  height: 64px;
  align-items: center;
}

.navbar .menu-items li {
  list-style: none;
  margin-left: 2.4rem;
}
.navbar .menu-items {
  display: flex;
  order: 2;
  font-size: 1.5rem;
}

.navbar a {
  color: #444;
  text-decoration: none;
  font-weight: 500;
  transition: all 0.3s ease-in-out;
}

.navbar a:hover {
  color: #168ba0;
}

#hotels {
  background-color: rgba(225, 225, 225, 0.377);
}

#hotels .hotels-head h1 {
  font-size: 3.3rem;
  line-height: 1;
  padding-top: 14rem;
  margin-bottom: 40px;
  text-align: center;
}

#hotels .hotels-head p {
  color: #4a4a4a;
  font-weight: 400;
  font-size: 1.5rem;
  line-height: 26px;
  padding-bottom: 70px;
}

/* main */

#hotels .hotels-container {
  display: flex;
  justify-content: space-between;
}

aside{
    width: 25%;
}

main{
    width: 75%;
}

.hotels-container .enquiry {
  min-width: 220px;
  padding: 20px;
  background-color: #508a4c;
  color: #fff;
  border-radius: 5px;
  max-height: 400px;
  width: 90%;
}

.hotels-container .enquiry form h3 {
  text-align: center;
}

.hotels-container .enquiry form input,
.hotels-container .enquiry form textarea {
  display: block;
  margin-top: 15px;
  padding: 10px;
  border: none;
  outline: none;
  width: 100%;
  border-radius: 5px;
}

.hotels-container .enquiry form textarea {
  max-width: 100%;
  min-width: 100%;
  min-height: 50px;
  max-height: 150px;
}

.hotels-container .enquiry form button {
  display: block;
  border-radius: 4px;
  width: 100px;
  margin: 0 auto;
  margin-top: 17px;
  transition: all 0.4s ease-in-out;
}

.hotels-container .enquiry form button:hover {
  background-color: rgb(209, 209, 209);
}

.cardT--1 .card__img,
.cardT--1 .cardT__img--hover {
  background-image: url("../imgs/sidetigerImg.png");
}

.cardT--2 .cardT__img,
.cardT--2 .cardT__img--hover {
  background-image: url("../imgs/peoplecardImg.jpg");
}

.cardT__like {
  width: 18px;
}

.cardT__img {
  visibility: hidden;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  width: 100%;
  height: 235px;
  border-top-left-radius: 12px;
  border-top-right-radius: 12px;
}

.cardT__info-hover {
  position: absolute;
  padding: 16px;
  width: 100%;
  opacity: 0;
  top: 0;
}

.cardT__img--hover {
  transition: 0.2s all ease-out;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  width: 100%;
  position: absolute;
  height: 235px;
  border-top-left-radius: 12px;
  border-top-right-radius: 12px;
  top: 0;
}
.cardT {
  background-color: #fff;
  position: relative;
  border-radius: 12px;
  overflow: hidden;
  box-shadow: 0px 13px 10px -7px rgba(0, 0, 0, 0.1);
  margin-top: 20px;
  width: 90%;
}

.cardT__info {
  z-index: 2;
  background-color: #fff;
  border-bottom-left-radius: 12px;
  border-bottom-right-radius: 12px;
  padding: 16px 24px 24px 24px;
}

.cardT__category {
  text-transform: uppercase;
  font-size: 13px;
  letter-spacing: 2px;
  font-weight: 700;
  color: #333333;
}

.cardT__title {
  margin-top: 5px;
  margin-bottom: 10px;
  color: rgb(106, 106, 106);
  font-weight: 500;
}

.cardT__day {
  font-weight: 600;
  text-decoration: none;
  color: #ad7d52;
}

.cardT:hover .cardT__info {
  background-color: transparent;
  position: relative;
}

.cardT:hover .cardT__info-hover {
  opacity: 1;
}

/* hotel card */

#hotels .Hcard {
  display: flex;
  justify-content: space-between;
  border: 2px solid #e8e8e8;
  margin-bottom: 28px;
  border-radius: 6px;
  transition: all 0.3s;
}

#hotels .Himg {
  width: 25%;
  padding: 5px;
}
#hotels .Himg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

#hotels .Hcontent {
  padding: 15px;
  padding-left: 0%;
  max-width: 460px;
}

#hotels .Hcontent h3 {
  font-size: 20px;
  line-height: 20px;
  color: #333;
  padding-bottom: 15px;
  font-weight: 600;
}

#hotels .Hcontent label {
  font-size: 12px;
  line-height: 15px;
  color: rgb(77, 77, 77);
  display: block;
  padding-bottom: 20px;
  border-bottom: 1px solid #efefef;
}

#hotels .Hcontent h4 {
  font-size: 14px;
  line-height: 14px;
  color: #333;
  font-weight: 500;
  padding-bottom: 0px;
}

#hotels .Hcontent .Hdetail span {
  color: #006981;
  font-size: 12px;
  line-height: 28px;
  padding-right: 10px;
}

#hotels .Hcontent .Hdetail ul {
  padding-top: 20px;
}

#hotels .Hcontent .Hdetail li {
  list-style: none;
  display: inline-block;
  font-size: 13px;
  font-weight: 300;
  padding-right: 10px;
}

#hotels .Hpricing{
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    background-color: #D9E8D8;
    padding: 0 30px;
}

#hotels .Hpricing h3 {
  font-size: 29px;
  line-height: 32px;
  font-weight: 700;
  color: #333;
  text-align: right;
  padding-bottom: 8px;
}

#hotels .Hpricing p {
  text-align: right;
}

.Hbtn {
  display: block;
  width: fit-content;
  margin: 4rem auto;
  font-size: 1.5rem;
  padding: 10px 20px;
  text-align: center;
}

@keyframes append-animate {
	from {
		transform: translateY(-20%);
		opacity: 0;
	}
	to {
		transform: translateY(0%);;
		opacity: 1;	
	}
}

/* animate new box */
.new-box {
	animation: append-animate 0.4s ease-in-out;
}

/* float btn */

#myBtn {
  display: none;
  position: fixed;
  bottom: 20px;
  right: 30px;
  z-index: 99;
  border: none;
  outline: none;
  transition: all 0.4s ease-in-out;
  background-color: #168ba0;
  padding: 10px;
  border-radius: 5px;
  color: #fff;
}

#myBtn:hover {
  background-color: #0e6a7a;
}
i {
  transition: all 0.4s ease-in-out;
}

#myBtn:hover i {
  transform: rotate(360deg);
}

/* modal */

.modal-window {
  position: fixed;
  background-color: rgba(0, 0, 0, 0.53);
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 999;
  visibility: hidden;
  opacity: 0;
  pointer-events: none;
  transition: all 0.3s;
  font-size: 1.4rem;
}
.modal-window.window2 h2{
    text-align: center;
}

.modal-window.window2 h5{
  text-align: center;
  font-weight: 500;
}

.modal-window.window2 img{
    display: block;
    width: 140px;
    margin: 20px auto;
}
.modal-window.window2 h2+a{
    width: fit-content;
    display: block;
    margin:2rem auto;
    font-size: 1.4rem;
    text-transform: none;
    background-color: rgb(79, 79, 79);
}
.modal-window.window2 h2+a:hover{
    background-color: rgb(63, 63, 63);
}
.modal-window:target {
  visibility: visible;
  opacity: 1;
  pointer-events: auto;
}
.modal-window > div {
  width: 400px;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  padding: 2em;
  background: white;
}
.modal-window header {
  font-weight: bold;
}
.modal-close {
  color: #aaa;
  line-height: 50px;
  font-size: 80%;
  position: absolute;
  right: 0;
  text-align: center;
  top: 0;
  width: 70px;
  text-decoration: none;
}
.modal-close:hover {
  color: black;
}
.modal-window .btn.closebtn{
  display: block;
  width: fit-content;
  margin:1.5rem auto;
  background-color:rgb(78, 78, 78);
  color: white;
  transition: all 0.4s ease-in-out;
}
.modal-window .btn.closebtn:hover{
  background-color:rgb(40, 40, 40);
}
.modal-window > div {
  border-radius: 1rem;
}
.modal-window div:not(:last-of-type) {
  margin-bottom: 15px;
}


/****** Style Star Rating Widget *****/
#ratz{
  border:2px solid rgba(149, 149, 149, 0.452);
  padding: 20px;
  padding-bottom: 50px;
  margin-top: 2.5rem;
  width: 90%;
  box-shadow: 10px 5px 5px rgba(0, 0, 0, 0.381);
  position: relative;
}

#ratz h2{
  margin-bottom: 10px;
}

.rating { 
  border: none;
  float: left;
}

.rating > input { display: none; } 
.rating > label:before { 
  margin: 5px;
  font-size: 1.25em;
  font-family: FontAwesome;
  display: inline-block;
  content: "\f005";
}

.rating > .half:before { 
  content: "\f089";
  position: absolute;
}

.rating > label { 
  color: rgb(109, 109, 109); 
 float: right; 
 
}


/***** CSS Magic to Highlight Stars on Hover *****/

.rating > input:checked ~ label, /* show gold star when clicked */
.rating:not(:checked) > label:hover, /* hover current star */
.rating:not(:checked) > label:hover ~ label { color: #FFD700;  } /* hover previous stars in list */

.rating > input:checked + label:hover, /* hover current star when changing rating */
.rating > input:checked ~ label:hover,
.rating > label:hover ~ input:checked ~ label, /* lighten current selection */
.rating > input:checked ~ label:hover ~ label { color: #FFED85;  } 



/* ####################### footer ######################### */

.footer{
  background: rgba(231, 231, 231, 0.179);
  padding: 50px;
  padding-bottom:15px;
  margin-top: 3rem;
}

.footer .fbox-container{
  display: flex;
  justify-content: center;
}

.footer .fbox-container .fbox{
  margin-right: 8rem;
}

.footer .fbox-container .fbox:nth-child(1){
    width: 40%;
}

.footer .fbox-container .fbox h3{
  font-size: 2.5rem;
  color:black;
  padding:1rem 0;
}

.footer .fbox-container .fbox h3 i{
  color:#0e6a7a;
}

.footer .fbox-container .fbox .links{
  display: block;
  font-size: 1.5rem;
  color:gray;
  padding:1rem 0;
  transition: all 0.2s ease-in-out;
  text-decoration: none;
}

.footer .fbox-container .fbox .links i{
  color:#0e6a7a;
  padding-right: .5rem;
}

.footer .fbox-container .fbox .links:hover{
  font-size: 1.6rem;
  text-decoration: underline;
  color:rgb(79, 79, 79);
}

.footer .fbox-container .fbox .link:hover{
  font-size: 1.5rem;
  text-decoration: none;
  color:gray;

}

.footer .fbox-container .fbox p{
  line-height: 1.8;
  font-size: 1.5rem;
  color:gray;
  padding:1rem 0;
}

.footer .fbox-container .fbox .share a{
  height:4rem;
  width:4rem;
  line-height:4rem;
  border-radius: .5rem;
  font-size: 2rem;
  color:black;
  margin-right: .2rem;
  background: #eee;
  text-align: center;
}

.footer .fbox-container .fbox .share a:hover{
  background: #0e6a7a;
  color: #fff;
}

.footer .fbox-container .fbox .email{
  width: 100%;
  margin:.7rem 0;
  padding:1rem;
  border-radius: .5rem;
  background: #eee;
  font-size: 1.6rem;
  color:black;
  text-transform: none;
}

.footer .fbox-container .fbox .payment-img{
  margin-top: 2rem;
  height: 3rem;
  display: block;
}

.footer .credit{
  text-align: center;
  margin-top: 2rem;
  padding:1rem;
  padding-top: 2.5rem;
  font-size: 2rem;
  color:black;
  border-top: rgb(39, 39, 39);
  background-color: rgba(210, 210, 210, 0.193);
}

.footer .credit span{
  color:#0e6a7a;
}



/* ############# media queries ############### */

@media (max-width: 768px) {
  .navbar {
    opacity: 0.95;
  }
  .navbar-container input[type="checkbox"],
  .navbar-container .hamburger-lines {
    display: block;
  }
  .navbar-container {
    display: block;
    position: relative;
  }
  .navbar-container input[type="checkbox"] {
    position: absolute;
    display: block;
    height: 32px;
    width: 40px;
    top: 20px;
    left: 20px;
    z-index: 5;
    opacity: 0;
  }
  .navbar-container .hamburger-lines {
    display: block;
    height: 25px;
    width: 35px;
    position: absolute;
    top: 20px;
    left: 20px;
    z-index: 2;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
  }
  .navbar-container .hamburger-lines .line {
    display: block;
    height: 4px;
    width: 100%;
    border-radius: 10px;
    background-color: #333;
  }

  .navbar-container .hamburger-lines .line1 {
    transform-origin: 0% 0%;
    transition: all 0.4s ease-in-out;
  }
  .navbar-container .hamburger-lines .line2 {
    transition: all 0.4s ease-in-out;
  }
  .navbar-container .hamburger-lines .line3 {
    transform-origin: 0% 100%;
    transition: all 0.4s ease-in-out;
  }

  .navbar .menu-items {
    padding-top: 100px;
    background-color: #fff;
    height: 100vh;
    max-width: 300px;
    transform: translateX(-150%);
    display: flex;
    flex-direction: column;
    margin-left: -40px;
    padding: 50px;
    transition: transform 0.4s ease-in-out;
    box-shadow: 5px 0px 10px 0px #aaa;
  }

  .navbar .menu-items li:first-child {
    margin-top: 35px;
  }
  .navbar .menu-items li {
    /* display: none; */
    margin-bottom: 3rem;
    font-size: 2rem;
    font-weight: 500;
  }
  .logo {
    position: absolute;
    top: 10px;
    right: 15px;
    font-size: 3rem;
  }

  .navbar input[type="checkbox"]:checked ~ .menu-items {
    transform: translateX(0%);
  }
  .navbar input[type="checkbox"]:checked ~ .hamburger-lines .line1 {
    transform: rotate(40deg);
  }
  .navbar input[type="checkbox"]:checked ~ .hamburger-lines .line2 {
    transform: scaleY(0);
  }
  .navbar input[type="checkbox"]:checked ~ .hamburger-lines .line3 {
    transform: rotate(-40deg);
  }

  .hotels-container{
    flex-direction: column;
  }

  aside{
    width: 85%;
    order: 2;
    margin:5rem auto;
  }

  .hotels-container .enquiry{
    width: 100%;
  }
  .cardT{
    width: 100%;
  }
  main{
    width: 100%;
    order: 1;
  }

  #hotels .Hcard{
    flex-direction: column;
  }

  #hotels .Himg{
    width: 100%;
    height: 200px;
  }

  #hotels .Hpricing{
    padding: 1.5rem;
  }
  #open-modal2.modal-window > div{
    width: 370px;
  }

  #ratz{
    width: 100%;
  }

  .footer .fbox-container .fbox {
    margin-right: 0;
  }

  .footer .fbox-container .fbox .share {
    margin: 2rem 0;
  }

  .footer .fbox-container .fbox h3 {
    margin-top: 5rem;
  }

  .footer .fbox-container {
    flex-direction: column;
  }

  .footer .fbox-container .fbox:nth-child(1) {
    width: 100%;
  }
}

/* From Uiverse.io by alexruix */ 
.group {
  display: flex;
  line-height: 28px;
  align-items: center;
  position: relative;
  width: 63%;
  /* New styles for centering */
  margin: 0 auto; /* This centers the search bar horizontally */
  padding: 20px 0; /* This adds some vertical space above and below the search bar */
}

.input {
  height: 40px;
  line-height: 28px;
  padding: 0 1rem;
  width: 100%;
  padding-left: 2.5rem;
  border: 2px solid transparent;
  border-radius: 8px;
  outline: none;
  background-color: #D9E8D8;
  color: #0d0c22;
  box-shadow: 0 0 5px #C1D9BF, 0 0 0 10px #f5f5f5eb;
  transition: .3s ease;
}

.input::placeholder {
  color: #777;
}

.icon {
  position: absolute;
  left: 1rem;
  fill: #777;
  width: 1rem;
  height: 1rem;
}

.logo-container {
  display: flex;
  align-items: center;
  text-decoration: none;
}

.logo-image {
  width: 145px; /* Adjust this value to resize the logo */
  height: auto;
  margin-right: 10px;
}

.logo-text {
  font-size: 2.8rem;
  color: #000;
  transition: all 0.4s ease-in-out;
}

.logo-text:hover {
  color: rgb(7, 7, 7);
}

/* Media query for smaller screens */
@media (max-width: 768px) {
  .logo-container {
      position: absolute;
      top: 10px;
      right: 15px;
  }

  .logo-image {
      width: 40px; /* Slightly smaller on mobile */
  }

  .logo-text {
      font-size: 2.4rem; /* Slightly smaller on mobile */
  }
}