/*Home*/
.home-banner {
  background-image: url('/assets/images/banner/WS1.webp');
  background-size: 'cover';
  background-position: 'center';
}

@media only screen and (max-width: 600px) {
  .home-banner {
    background-image: url('/assets/images/banner/ws_mobile_home_banner.webp');
  }
  .banner .single-wrapper {
    display: none;
  }
  .banner .social-wrapper {
    width: 100px;
  }
}

.custom-modal-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0,0,0,0.5);
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 1000;
}

.custom-modal {
  background: #fff;
  border-radius: 8px;
  width: 700px;
  max-width: 90%;
  min-height: 500px;
  box-shadow: 0 5px 15px rgba(0,0,0,0.3);
  animation: slideIn 0.3s ease-out;
}

.custom-modal-header,
.custom-modal-body,
.custom-modal-footer {
  padding: 16px;
}

.custom-modal-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  border-bottom: 1px solid #ddd;
}

.custom-modal-body {
  font-size: 14px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

.custom-modal-footer {
  display: flex;
  justify-content: flex-end;
  gap: 8px;
}

.close-btn {
  background: none;
  border: none;
  font-size: 20px;
  line-height: 1;
  cursor: pointer;
}

.btn {
  padding: 8px 16px;
  border-radius: 4px;
  font-weight: 500;
  border: none;
  cursor: pointer;
}

.btn-primary {
  background-color: #007bff;
  color: white;
}

.btn-secondary {
  background-color: #6c757d;
  color: white;
}

@keyframes slideIn {
  from {
    transform: translateY(-50px);
    opacity: 0;
  }
  to {
    transform: translateY(0px);
    opacity: 1;
  }
}

/*header*/
.ws-logo {
  width: 150px;
}

/*Login*/
.login-btn {
  width: 100%;
  text-align: center;
  display: block;
}

.listing-boxs {
    position: relative;
}

.listing-image-box {
    margin-bottom: 1rem;
} 

.listing-image-box img {
    border-radius: 5px;
}

.listing-details-box {
    border: 1px solid #000;
    border-radius: 5px;
    padding: 10px;
    text-transform: uppercase;
}

.listing-details-box .ldb-title, .listing-details-box p, .listing-details-box span {
    color: #000;
    margin-bottom: 10px;
}

.listing-details-box .ldb-city {
    font-size: 12px;
}

.listing-amenity-box {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 20px;
}

.listing-amenity-box .lmb-title {
    background: #4a4a4a;
    padding: 0px 10px;
}

.listing-amenity-box .lmb-title span {
    color: #fff;
    font-size: 12px;
    text-transform: none;
    margin-bottom: 0;
}

.listing-price-box {
    display: flex;
    align-items: center;
    gap: 10px;
    justify-content: space-between;
}

/*Partner*/
.partner-img-wrapper{
  transform: rotateZ(-4deg);
  border: 1em solid #fff;
  border-bottom: 4em solid #fff;
  border-radius: .25em;
  box-shadow: 1em 1em 2em 0.25em rgb(0 0 0 / 20%);
  transition: transform 4s .25s cubic-bezier(0,1,.3,1), opacity .3s .25s ease-in;
  will-change: transform, opacity;
}
.text-slider {
  --space: 2rem;
  overflow: hidden;
  gap: var(--space);
  width: 100%;
}
.txtmarquee {
  --duration: 60s;
  --gap: var(--space);
  display: flex;
  gap: var(--gap);
  padding: 0;
}
	
.lm{
	-webkit-transform: scale(1.02) rotate(2deg);
    transform: scale(1.02) rotate(2deg);
	background: #00ffa7;
}
.rm{
	-webkit-transform: scale(1.02) rotate(358deg);
    transform: scale(1.02) rotate(358deg);
	background: #ed0153;
}

.marquee__group {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: space-around;
  gap: var(--gap);
  min-width: 100%;
}

.marquee__group.left-scroll {		
	animation: lscroll var(--duration) linear infinite;
}

.marquee__group.right-scroll {		
	animation: rscroll var(--duration) linear infinite;
}

@media (prefers-reduced-motion: reduce) {
  .marquee__group {
    animation-play-state: paused;
  }
}

.marquee__group img {
  aspect-ratio: 1;
  object-fit: cover;
  border-radius: 1rem;
  max-width:none!important;
  width: 620px;
  height: 80px;
  border-radius: 0;
}

.marquee__group p {
	font-size: 4vw;
	margin-bottom:0;
	padding: 10px 0;
	color: #fff;
}

.marquee--reverse .marquee__group {
  animation-direction: reverse;
  animation-delay: calc(var(--duration) / -2);
}

@keyframes lscroll {
  0% {
    transform: translateX(-100%);
  }

  100% {
    transform: translateX(calc(-0 - var(--gap)));
  }
}
	
@keyframes rscroll {
  0% {
    transform: translateX(-0);
  }

  100% {
    transform: translateX(calc(-100% - var(--gap)));
  }
}
	
@media only screen and (max-width: 1000px) {
	.marquee__group p {
		font-size: 9vw;
		line-height: 1.1em;
	}
	.marquee__group {
		padding: 20px 0;
	}
}

.section-wrapper-txt {
  height: 100%;
  display: flex;
  padding: 0 100px;
  align-items: center;
}

.ps-img-section {
    overflow: hidden;
    height: 670px;
    position: relative;
}

.section-wrapper-image {
  width: 100%;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-repeat: no-repeat;
  background-size: cover;
}

.pgpw-icon {
  display: block;
  width: 50%;
}

.aff-about-head {
  color: #fff;
}

@media only screen and (max-width: 767px) {
	.marquee__group img {
    width: 400px;
    height: 50px;
  }
  .section-wrapper-txt {
    padding: 50px 8.9vw;
    height: 500px;
  }
}

.accordion-main{
	position: relative;
    margin-bottom:36px;
  }
  .accordion-main:last-child .accordion_body{
    padding-bottom: 0;
  }
  .accordion_head {
	position:relative;
    background: #ccc;
    color: #000;
    cursor: pointer;
    font-size: 20px;
    padding: 30px 25px;
    border-radius: 3px;
    font-weight: normal;
    font-style: normal;
    font-stretch: normal;
    line-height: normal;
    letter-spacing: normal;
    box-shadow: rgba(60, 64, 67, 0.3) 0px 1px 2px 0px, rgba(60, 64, 67, 0.15) 0px 1px 3px 1px;
  }
  .accordion_body {
    position: relative;
    background: transparent;
    font-size: 18px;
    padding: 20px;
    padding-left: 30px;
  }
  .accordion_body::before {
    content: '';
    position: absolute;
    width: 4px;
    height: 90%;
    top: 56%;
    left: 10px;
    background-color: #ccc;
    transform: translateY(-50%);
  }
  .accordion_body img{
    width: 100%;
    max-width: 230px;
    margin-bottom: 30px;
  }
  .accordion_body p {
    margin: 0px;
    color: #fff;
  }
  .accordion_body h3,
  .div-bott h3{
    font-size: 28px;
    font-weight: 600;
    margin: 15px 0;
    color: #1e352e;
  }
  .div-bott h3{
  font-size: 35px;
  }
  .div-bott{
  text-align:center;
  }
  .div-bott p{
  font-size:24px;
  }
  .accordion_head .icon {
    display: inline-block;
    position: absolute;
	top: 30px;
    right: 15px;
    width: 20px;
    height: 20px;
    border: 1px solid #fff;
    border-radius: 50%;
  }
  .accordion_head .icon::before {
    display: block;
    position: absolute;
    content: '';
    top: 8px;
    left: 4px;
    width: 10px;
    height: 2px;
    background: currentColor;
  }
  .accordion_head .icon::after {
    display: block;
    position: absolute;
    content: '';
    top: 4px;
    left: 8px;
    width: 2px;
    height: 10px;
    background: currentColor;
  }
  .accordion_head.coll-back .icon::after {
    width: 0;
  }
  .plusminus {
    float: right;
    font-size: 36px;
    margin-top: -9px;
  }
  .coll-back{
    background-color: #fff;
    color: #fff;
  }
  .hr-clc{
    height: 2px;
    background: #111;
    margin-top: 22px;
    width: 17px;
    padding: 0;
    border: 0;
    margin-left: -20px;
  }

  /*media queries*/
  @media (min-width:992px) and (max-width:1100px){
    .pockets-main p {
      font-size: 22px;
      width: 684px;
      margin:0 auto;
      margin-bottom: 20px !important;
    }
    .accordion_body {
      padding: 35px 40px 5px;
    }
    .accordion_body img {
      max-width: 205px;
      margin-bottom: 20px;
    }
  }
  @media (min-width: 768px) and (max-width: 991px){
    .pockets-main {
      padding: 30px 15px;
    }
    .pockets-main h1 {
      font-size: 45px;
      margin: 0 0px 20px;
    }
    .pockets-main p {
      font-size: 20px !important;
      margin-bottom: 20px !important;
      width: 600px;
      margin: 0 auto;
    }
    .intro-cont h3,
    .div-bott h3{
      font-size: 30px;
      margin: 35px 0;
    }
    .kind h2 {
      font-size: 30px;
      margin: 35px 0 30px;
    }
    .accordion_head {
      font-size: 20px;
      padding: 11px 18px;
    }
    .plusminus {
      font-size: 27px;
      margin-top: -5px;
    }
    .accordion-main {
      margin-bottom: 24px;
    }
    .hr-clc {
      margin-top: 16px;
      width: 15px;
      margin-left: -15px;
    }
    .accordion_body {
      font-size: 18px;
      padding: 30px 40px 5px;
    }
    .accordion_body img {
      width: 100%;
      max-width: 185px;
      margin-bottom: 20px;
    }
    .accordion_body h3 {
      font-size: 24px;
    }
  }

  @media (min-width: 576px) and (max-width: 767px){
    .pockets-main {
      padding: 35px 15px;
    }
    .pockets-main h1 {
      font-size: 40px;
      margin: 0 0px 30px;
    }
    .pockets-main p {
      font-size: 18px !important;
      margin-bottom: 20px !important;
      width: 400px;
      margin: 0 auto;
    }
    .intro-cont h3,
    .div-bott h3{
      font-size: 26px;
      width: 400px;
      margin: 30px auto;
      line-height: 1.2 !important;
    }
    .div-bott h3{
    width:unset;
    }
    .kind h2 {
      font-size: 26px;
      margin: 30px 0 30px;
    }
    .accordion_head {
      font-size: 20px;
      padding: 10px 15px;
    }
    .accordion-main {
      margin-bottom: 25px;
    }
    .plusminus {
      font-size: 30px;
      margin-top: -5px;
    }
    .accordion_body {
      padding: 30px 25px 5px;
    }
    .accordion_body img {
      max-width: 170px;
      margin-bottom: 20px;
    }
    .hr-clc {
      margin-top: 17px;
      width: 16px;
    }
    .accordion_body h3 {
      font-size: 22px;
      margin: 15px 0;
    }
  }
  @media (max-width:575px){
    .pockets-main{
      padding:15px 0px;
    }
    .pockets-main h1 {
      font-size: 30px;
      margin: 0 0px 15px;
    }
    .pockets-main p {
      font-size: 16px !important;
      margin-bottom: 15px !important;
    }
    .intro-cont h3,
    .kind h2,
    .div-bott h3{
      margin: 30px 0px;
      line-height: normal !important;
      font-size:24px;
    }
    .accordion_head {
      font-size: 14px;
      padding: 20px 50px 20px 15px;
    }
	.accordion_body p {
    	font-size: 14px;
	 }
    .plusminus {
      font-size: 27px;
      margin-top: -7px;
    }
    .accordion-main {
      margin-bottom: 22px;
    }
    .accordion_body {
      font-size: 18px;
      padding: 20px 20px 5px;
    }
    .accordion_body img {
      max-width: 150px;
      margin-bottom: 20px;
    }
    .accordion_body h3 {
      font-size: 18px;
      margin: 10px 0;
      line-height: normal;
    }
    .hr-clc {
      height: 2px;
      margin-top: 16px;
      width: 15px;
      margin-left: -15px;
    }
    .cycle-tab-container{
		width:90%;
    }
	.accordion_head .icon {
		top: 20px;
	}
}

/*booking*/
.selected-guest {
  background-color: #e6f7ff; 
  border-left: 5px solid #0d6efd;
}

/*terms*/
.mobile-banner {
  font-family: 'Poppins';
}
.mobile-banner p, .mobile-banner ul li {
  color: #000!important;
  font-family: 'Poppins';
}
.mobile-banner ul li::before {
  background-color: #000!important;
}
@media only screen and (max-width: 600px) {
  .details-banner {
    background-image: linear-gradient(to bottom, #8fdfa6, #263238);
  }
  .details-banner .h2 {
    text-align: left;
  }
  .details-banner .dhh, .details-banner .dbp {
    color: #000!important;
  }
}

/*Footer*/
.footer__logo {
  margin-bottom: 2rem;
  text-align: center;
}
.footer-logo {
  width: 400px;
  margin: auto;
}
.footer__store {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
}
.footer__store img {
  width: 200px;
}