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

* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  font-family: Roboto;
  text-decoration: none;
}

@font-face {
  font-family: Trajan;
  src: url(../fonts/Trajan_Pro_Bold.ttf);
}

@font-face {
  font-family: Varsity;
  src: url(../fonts/varsity_regular.ttf);
}

body {
  font-family: "Varsity";
}

:root {
  --colorPrimary: #2c3d4d;
  --colorSecondary: #2b5c8a;
  --colorWhite: #ffffff;
  --colorOffWhite: #f7f7f7;
  --colorBorderWhite: #dbe4e9;
  --colorBlack: #000000;
  --colorHalfBlack: #333333;
  --colorBackgroundBlack: #343a40bd;
  --colorBackgroundOverlay: #00000070;
  --colorWhiteOverlay: rgba(212, 210, 212, 1);
  --colorYellow: #e69431;
}

/* Navbar Section */

.navbar-expand-lg .navbar-collapse {
  justify-content: flex-end;
}

.navbar-nav .nav-link {
  color: var(--colorBlack);
}

.navbar-nav .nav-link.active,
.navbar-nav .nav-link.show {
  background-color: var(--colorPrimary);
  height: 100%;
  color: var(--colorWhite) !important;
  font-weight: 600;
  border-radius: 5px;
}

.nav-link:hover {
  background-color: var(--colorOffWhite);
}

.navbar-nav i {
  padding: 0px 10px;
}

/* .navbar-toggler {
  background-color: var(--colorPrimary);
} */

@media only screen and (min-width: 1000px) {
  .navbar-nav .nav-link {
    font-size: 1.3vw !important;
    letter-spacing: 0.02vw;
  }
}

@media only screen and (max-width: 900px) {
  .logo {
    width: 150px;
  }
}

/* common */

.Heading h4 {
  text-align: center;
  text-transform: uppercase;
  /* color: var(--colorPrimary); */
  font-size: 2em;
  color: var(--colorYellow);
  padding-bottom: 10px;
  font-family: "Trajan";
}

.form-label {
  display: none;
}

/* slider */

.carousel-item {
  height: 90vh;
  margin-top: 80px;
}

.carousel-item img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

@media screen and (min-width: 1000px) {
  .fixed-form {
    position: absolute;
    bottom: 50px;
    left: 30px;
    width: 450px;
    padding: 10px 20px 20px;
    background: rgba(0, 0, 0, 0.4);
    box-shadow: 5px 5px 0 0 rgb(44, 61, 77, 0.7);
    -webkit-backdrop-filter: blur(4px);
    backdrop-filter: blur(4px);
    z-index: 1000;
    transition: all 300ms ease-in-out;
    z-index: 1;
    border-radius: 25px;
  }
}

@media screen and (max-width: 600px) {
  .carousel-item .banner1 {
    content: url("../images/banner/mobile1.jpg");
  }

  .carousel-item .banner2 {
    content: url("../images/banner/mobile2.jpg");
  }

  /* .carousel-item .banner3 {
    content: url("../img/banner/mobile_banner3.jpg");
  } */

  .carousel-item {
    margin-top: 70px;
    height: 80vh;
  }

  .carousel-item img {
    height: 100%;
    width: 100%;
  }

  .fixed-form {
    bottom: 50px;
    /* left: 60px; */
    /* width: 400px; */
    padding: 10px 20px 20px 20px;
    background: rgba(0, 0, 0, 0.5);
    box-shadow: 5px 5px 0 0 rgb(44, 61, 77, 0.7);
    -webkit-backdrop-filter: blur(4px);
    backdrop-filter: blur(4px);
    /* z-index: 1000; */
    transition: all 300ms ease-in-out;
    /* z-index: 1; */
    margin: 30px 0px;
    border-radius: 25px;
  }
}

/* Overview */

#over_section {
  background-color: #f1f1f1;
}

.over-img {
  height: 300px;
}

.over-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 20px;
  box-shadow: rgba(54, 54, 56, 0.8) 0px 7px 29px 0px;
}

/* hightlights */
#high_section .row {
  --bs-gutter-y: 1.5rem !important;
}

.highlights {
  border: 3px solid black;
}

.highlights:hover {
  box-shadow: rgba(0, 0, 0, 0.212) 0px 6px 6px, rgba(0, 0, 0, 0.226) 0px 6px 6px;
}

.highlights P {
  background: linear-gradient(
    145deg,
    var(--colorPrimary) 0%,
    var(--colorSecondary) 100%
  );
  color: white;
  margin-bottom: 0px;
  padding: 10px;
  height: max-content;
  text-align: center;
  margin: 5px;
  font-size: 1.5em;
}

/* Price */

#configuration_section {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

.plan {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 100vh;
  background-image: url(../images/gallery/Living2.jpg);
  background-repeat: no-repeat;
  background-position: fixed;
  background-size: cover;
  /* padding: 20px auto; */
  /* width: 100vw; */
}

/* .plan1{
background-color: #00000070;
} */

@media screen and (min-width: 1000px) {
  .wrapper {
    width: 520px;
    background: #fff;
    border-radius: 16px;
    padding: 30px;
    margin: 40px auto;
    box-shadow: 10px 10px 15px rgba(0, 0, 0, 0.05);
  }

  #tab-3:checked ~ .conf_head .tab-3 {
    color: #fff;
    padding-left: 25px !important;
  }

  #tab-1:checked ~ .conf_head .tab-1 {
    color: #fff;
    padding-right: 20px !important;
  }

  table.table.table-striped.table-borderless.border.price-table.table-pricing {
    font-size: 1.5em;
  }
}

@media screen and (max-width: 1000px) {
  .wrapper {
    width: 400px;
    background: #fff;
    border-radius: 16px;
    padding: 30px;
    margin: 0 15px !important;
    box-shadow: 10px 10px 15px rgba(0, 0, 0, 0.05);
  }
  table.table.table-striped.table-borderless.border.price-table.table-pricing {
    font-size: 1.1em;
  }
}

.wrapper .conf_head {
  height: 55px;
  display: flex;
  align-items: center;
  border: 1px solid #ccc;
  border-radius: 30px;
  position: relative;
}

.conf_head label {
  height: 100%;
  z-index: 2;
  width: 30%;
  display: flex;
  cursor: pointer;
  font-size: 18px;
  position: relative;
  align-items: center;
  justify-content: center;
  transition: color 0.3s ease;
}

#tab-1:checked ~ .conf_head .tab-1,
#tab-2:checked ~ .conf_head .tab-2 {
  color: #fff;
}

.conf_head label:nth-child(2) {
  width: 40%;
}

.conf_head .slider {
  position: absolute;
  height: 85%;
  border-radius: inherit;
  background: linear-gradient(
    145deg,
    var(--colorPrimary) 0%,
    var(--colorSecondary) 100%
  );
  transition: all 0.3s ease;
}

#tab-1:checked ~ .conf_head .slider {
  left: 0%;
  width: 90px;
  transform: translateX(5%);
}

#tab-2:checked ~ .conf_head .slider {
  left: 50%;
  width: 120px;
  transform: translateX(-50%);
}

#tab-3:checked ~ .conf_head .slider {
  left: 100%;
  width: 95px;
  transform: translateX(-105%);
}

.wrapper input[type="radio"] {
  display: none;
}

.card-area {
  overflow: hidden;
}

.card-area .cards {
  display: flex;
  width: 300%;
}

.cards .conf {
  width: 33.4%;
}

.cards .conf-1 {
  transition: all 0.3s ease;
}

#tab-1:checked ~ .card-area .cards .conf-1 {
  margin-left: 0%;
}

#tab-2:checked ~ .card-area .cards .conf-1 {
  margin-left: -33.4%;
}

#tab-3:checked ~ .card-area .cards .conf-1 {
  margin-left: -66.8%;
}

.conf .price-details {
  margin: 20px 0;
  text-align: center;
  /* padding-bottom: 25px; */
  border-bottom: 1px solid #e6e6e6;
}

.price-details .price {
  font-size: 1.6em;
  font-weight: 600;
  position: relative;
  font-family: "Noto Sans", sans-serif;
}

.price-details .price::before,
.price-details .price::after {
  position: absolute;
  font-weight: 400;
  font-family: "Poppins", sans-serif;
}

.price-details p {
  font-size: 18px;
  margin-top: 5px;
}

.features {
  height: 200px;
  /* width: 100%; */
  display: flex;
  justify-content: center;
  align-items: center;
}

.features img {
  /* width: 100%; */
  height: 100%;
  object-fit: cover;
}

.wrapper button {
  width: 100%;
  border-radius: 25px;
  border: none;
  outline: none;
  height: 50px;
  font-size: 18px;
  color: #fff;
  cursor: pointer;
  margin-top: 20px;
  background: linear-gradient(
    145deg,
    var(--colorPrimary) 0%,
    var(--colorSecondary) 100%
  );
  transition: transform 0.3s ease;
}

.wrapper button:hover {
  transform: scale(0.98);
}

@media only screen and (max-width: 990px) {
  .price-table {
    width: 500px;
  }
}

/* gallery */

#gallery {
  position: relative;
  /* left: calc(-1 * var(--adjust-size)); */
  display: grid;
  /* grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); */
  grid-template-columns: repeat(2, 1fr);
  gap: 40px;
  max-width: 100vw;
  padding: 20px;
  -webkit-perspective: 0;
  perspective: 0;
}

#gallery figure:nth-child(7n) {
  --duration: 1s;
  --pin-color: crimson;
}

#gallery figure:nth-child(7n + 1) {
  --duration: 1.8s;
  --pin-color: hotpink;
}

#gallery figure:nth-child(7n + 2) {
  --duration: 1.3s;
  --pin-color: magenta;
}

#gallery figure:nth-child(7n + 3) {
  --duration: 1.5s;
  --pin-color: orangered;
}

#gallery figure:nth-child(7n + 4) {
  --duration: 1.1s;
  --pin-color: darkorchid;
}

#gallery figure:nth-child(7n + 5) {
  --duration: 1.6s;
  --pin-color: deeppink;
}

#gallery figure:nth-child(7n + 6) {
  --duration: 1.2s;
  --pin-color: mediumvioletred;
}

#gallery figure:nth-child(3n) {
  --angle: 3deg;
}

#gallery figure:nth-child(3n + 1) {
  --angle: -3.3deg;
}

#gallery figure:nth-child(3n + 2) {
  --angle: 2.4deg;
}

#gallery figure:nth-child(odd) {
  --direction: alternate;
}

#gallery figure:nth-child(even) {
  --direction: alternate-reverse;
}

#gallery figure {
  --angle: 3deg;
  --count: 5;
  --duration: 1s;
  --delay: calc(-0.5 * var(--duration));
  --direction: alternate;
  --pin-color: red;

  position: relative;
  display: inline-block;
  margin: var(--adjust-size);
  padding: 0.5rem;
  border-radius: 5px;
  box-shadow: 0 7px 8px rgba(0, 0, 0, 0.4);
  width: 100%;
  height: auto;
  text-align: center;
  background-color: ghostwhite;
  /* background-image: url("https://images.unsplash.com/photo-1629968417850-3505f5180761?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3wzMjM4NDZ8MHwxfHJhbmRvbXx8fHx8fHx8fDE2OTMzMjQ3ODJ8&ixlib=rb-4.0.3&q=80&w=500");
background-size: cover;
background-position: center;
background-blend-mode: multiply; */

  transform-origin: center 0.22rem;
  will-change: transform;
  break-inside: avoid;
  overflow: hidden;
  outline: 1px solid transparent;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

#gallery.active figure {
  animation-duration: var(--duration), 1.5s;
  animation-delay: var(--delay),
    calc(var(--delay) + var(--duration) * var(--count));
  animation-timing-function: ease-in-out;
  animation-iteration-count: var(--count), 1;
  animation-direction: var(--direction), normal;
  animation-fill-mode: both;
  animation-name: swing, swingEnd;
}

#gallery figure:after {
  position: absolute;
  top: 0.22rem;
  left: 50%;
  width: 0.7rem;
  height: 0.7rem;
  content: "";
  background: var(--pin-color);
  border-radius: 50%;
  box-shadow: -0.1rem -0.1rem 0.3rem 0.02rem rgba(0, 0, 0, 0.5) inset;
  filter: drop-shadow(0.3rem 0.15rem 0.2rem rgba(0, 0, 0, 0.5));
  transform: translateZ(0);
  z-index: 2;
}

#gallery figure img {
  aspect-ratio: 1 /1;
  width: 100%;
  object-fit: cover;
  display: block;
  border-radius: 5px;
  margin-bottom: 10px;
  z-index: 1;
}

#gallery figure figcaption {
  font-size: 14px;
  font-weight: 400;
  z-index: 1;
}

/* figure h2 {
  color: crimson;
  font-size: 22px;
} */

#gallery figure p {
  font-size: 17px;
}

#gallery figure small {
  font-size: 12px;
}

#gallery figure > div {
  width: 100%;
  height: 100%;
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
}

@keyframes swing {
  0% {
    transform: rotate3d(0, 0, 1, calc(-1 * var(--angle)));
  }

  100% {
    transform: rotate3d(0, 0, 1, var(--angle));
  }
}

@keyframes swingEnd {
  to {
    transform: rotate3d(0, 0, 1, 0deg);
  }
}

@media (min-width: 800px) {
  #gallery {
    /* grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); */
    grid-template-columns: repeat(4, 1fr);
  }
}

/* walkthrough */

#walkthrough_section .nav > li > a {
  background: var(--colorWhite);
  color: var(--colorPrimary) !important;
  border-radius: 60px;
  text-align: center;
  padding: 10px 40px;
  text-transform: uppercase;
  font-size: 16px;
  font-weight: 500;
  border: 0.5px solid var(--colorBorderWhite);
  border-radius: 60px;
  box-shadow: 0 4px 8px 0 var(--colorBackgroundOverlay);
  margin: 10px;
}

#walkthrough_section .nav > li > a:hover,
#walkthrough_section .nav > li > a:focus,
#walkthrough_section .nav .active {
  background: var(--colorSecondary);
  color: var(--colorWhite) !important;
}

.walkthrough_container img {
  object-fit: fill;
}

.virtual-visit {
  height: 400px;
}

.bg-image {
  background-image: url("../images/gallery/Master-BedRoom2.jpg");
  height: 100%;
  background-position: center;
  /* Center the image */
  background-repeat: no-repeat;
  /* Do not repeat the image */
  background-size: cover;
  /* Resize the background image to cover the entire container */
  border-radius: 20px;
}

.tour-img {
  border-radius: 20px;
  height: 100%;
  width: 100%;
  padding: 20px;
  background-color: rgba(0, 0, 0, 0.5);
  display: flex;
  justify-content: center;
  align-items: center;
}

.play-btn {
  font-size: 4vw;
}

.overlay-info:hover {
  transform: scale(0.9);
  transition: ease-in-out;
  -webkit-transition: ease-in-out;
  -moz-transition: ease-in-out;
  -ms-transition: ease-in-out;
  -o-transition: ease-in-out;
}

/* For Mobile */
@media only screen and (max-width: 990px) {
  .play-btn {
    font-size: 50px;
  }
}

@media screen and (max-width: 600px) {
  ul#pills-tab-walk-sec {
    display: flex;
    justify-content: center;
  }
}

/* amenities */

.amenities-card {
  width: 100%;
  height: 15vw;
  min-height: 250px;
  background-color: rgba(0, 0, 0);
  position: relative;
  overflow: hidden;
  border-radius: 0.4rem;
  box-shadow: -0.5rem -0.5rem 2rem rgba(0, 0, 0, 0.2),
    0.5rem 0.5rem 2rem rgba(0, 0, 0, 0.2);
  margin-bottom: 25px;
}

.amenities-card:hover .title {
  transform: translateY(100%);
}

.amenities-card:hover .photo {
  opacity: 1;
}

.amenities-card .title {
  background-color: rgba(32, 37, 41, 0.5);
  backdrop-filter: blur(0.5rem);
  width: 100%;
  text-align: center;
  /* height: 35%; */
  position: absolute;
  bottom: 0%;
  padding: 1rem;
  border-top: 0.1rem solid #4c555c;
  box-shadow: 0rem -0.1rem 0.5rem rgba(0, 0, 0, 0.4);
  display: flex;
  flex-direction: column;
  transition: 0.5s ease-in;
}

.amenities-card .photo {
  width: 100%;
  height: 100%;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  position: absolute;
  opacity: 0.8;
  transition: 0.5s ease-in-out;
  /* aspect-ratio: 3/2; */
}

.amenities-card .img1 {
  background-image: url(../images/amenities/BANQUET.jpg);
}

.amenities-card .img2 {
  background-image: url(../images/amenities/multipurpose.jpg);
}

.amenities-card .img3 {
  background-image: url(../images/amenities/Gym.jpg);
}

.amenities-card .img4 {
  background-image: url(../images/amenities/JOGGINGTRACK.jpg);
}

.amenities-card .img5 {
  background-image: url(../images/amenities/Lobby.jpg);
}

.amenities-card .img6 {
  background-image: url(../images/amenities/SPORTSAREA.jpg);
}

.amenities-card .img7 {
  background-image: url(../images/amenities/SETTINGAREA.jpg);
}

.amenities-card .img8 {
  background-image: url(../images/amenities/YOGAAREA.jpg);
}

.amenities-card h4 {
  font-family: "Roboto Condensed", sans-serif;
  font-weight: 500;
  font-size: 1.5em;
  color: #f3f5f8;
  text-transform: capitalize;
}

/* location */

.accordion-button i {
  padding-right: 10px;
}

.accordion-button {
  display: block;
  padding: 15px 20px 15px 30px;
  font-size: 16px;
  font-weight: 600;
  color: #fff !important;
  background: var(--colorPrimary) !important;
  border: none;
  transition: all 1s ease 0s;
}

.accordion-button:not(.collapsed) {
  display: block;
  padding: 15px 20px 15px 30px;
  font-size: 16px;
  font-weight: 600;
  color: #fff !important;
  background: #000 !important;
  border: none;
  transition: all 1s ease 0s;
}

.accordion-collapse {
  /* padding: 25px 20px 15px 40px; */
  font-size: 1.2em;
  color: #fff;
  line-height: 28px;
  background: var(--colorPrimary);
  border: none;
  position: relative;
}

.accordion-item {
  margin-bottom: 20px;
}

.loc_map {
  filter: blur(2px);
  -webkit-filter: blur(2px);
}
/* contact */

#contact_Section {
  background-image: url(../images/gallery/Kitchen2.jpg);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}

.overlay_contact {
  background-color: var(--colorBackgroundOverlay);
  padding: 60px 20px;
}

#contact-form input,
#contact-form-slider input {
  border-radius: 0;
  padding: 10px 0;
  background-color: transparent;
  border: none;
  border-bottom: 1px solid rgb(255, 255, 255);
  color: #fff;
  outline: none;
}

#contact-form input::placeholder,
#contact-form-slider input::placeholder {
  color: white;
}

/* Footer */

#footer {
  background-color: var(--colorBlack);
  padding: 40px 20px 20px 20px;
}

.qrcode {
  text-align: center;
  margin: 10px 20px;
  color: var(--colorWhite);
}

.qrcode img {
  /* display: block;
  margin: auto; */
  width: 100px;
  /* margin-bottom: 10px; */
}

@media screen and (min-width: 990px) {
  .navbar-nav {
    justify-content: flex-end;
  }
}

/* mobile footer */

.action-footer-container {
  margin: 0;
  padding: 0;
}

.action-footer {
  margin: 0;
  padding: 7px;
  background-color: var(--colorPrimary);
  color: #fff;
  cursor: pointer;
  border-top-left-radius: 1vw;
  border-top-right-radius: 1vw;
  font-size: 0.8em;
}

.action-footer li {
  border-left: 1px solid black;
}

.action-footer li:first-child {
  border-left: none !important;
}

/* For Desktop */
@media screen and (min-width: 990px) {
  .action-footer-container {
    display: none;
  }
}

/* thank you page  */

#thanku_section {
  margin-top: 5em !important;
  min-height: 60vh;
  display: flex;
  justify-content: center;
  align-items: center;
}

#thanku_section h2 {
  letter-spacing: 0.1em;
  font-size: 5em;
}

#thanku_section p {
  font-size: 1em;
}

@media screen and (max-width: 600px) {
  #thanku_section h2 {
    font-size: 2.3em;
  }

  #thanku_section p {
    padding: 0 1.2em;
    font-size: 0.8em;
  }
}

/* button */

.pro-button {
  font-size: 1.1em;
  padding: 0.5em 1.5em;
  border-radius: 10px;
  text-transform: capitalize;
}

.effectMoveGradient,
.effectMoveGradient:hover {
  text-shadow: 0 3px 6px var(--colorPrimary);
  background-color: var(--colorSecondary);
  background: linear-gradient(
    -45deg,
    var(--colorPrimary),
    var(--colorSecondary),
    var(--colorPrimary),
    var(--colorSecondary)
  );
  background-size: 400% 400%;
  -webkit-animation: 3s infinite Gradient, 3s infinite rocking;
  -moz-animation: 3s infinite Gradient, 3s infinite rocking;
  animation: 3s 2s infinite Gradient, 3s 2s infinite rocking;
  color: var(--colorWhite);
  border: none;
}
