/* =========================
   LITEPICKER CALENDAR STYLES
   ========================= */
.favorite-btn {
    right: 5px !important;
    top: 15px !important;
}
/* Base day */
.litepicker .day-item {
    width: 40px;
    height: 40px;
    line-height: 40px;
    text-align: center;
    border-radius: 50%;
    font-size: 14px;
    cursor: pointer;
    transition: all 0.2s ease;
}

/* AVAILABLE DAY */
.litepicker .day-item:not(.is-locked) {
    background: #ffffff;
    color: #111;
}

.litepicker .day-item:not(.is-locked):hover {
    background: #f2f2f2;
}

/* UNAVAILABLE / BOOKED */
.litepicker .day-item.is-locked {
    background: #f5f5f5;
    color: #bbb;
    text-decoration: line-through;
    cursor: not-allowed;
    opacity: 0.6;
}

/* START & END DATES */
.litepicker .day-item.is-start-date,
.litepicker .day-item.is-end-date {
    background: #000;
    color: #fff;
    font-weight: 600;
}

/* RANGE BETWEEN */
.litepicker .day-item.is-in-range {
    background: rgba(0,0,0,0.08);
    color: #111;
}

/* TODAY */
.litepicker .day-item.is-today {
    border: 1px solid #000;
}

/* DISABLE FOCUS OUTLINE */
.litepicker .day-item:focus {
    outline: none;
}

/* MOBILE FRIENDLY */
@media (max-width: 768px) {
    .litepicker .day-item {
        width: 36px;
        height: 36px;
        line-height: 36px;
        font-size: 13px;
    }
}
	
	.video-bg-container .image-bg{
	  cursor: pointer;
	}
    /* ===== CLICKABLE GALLERY HOVER EFFECT ===== */
    .gallery-item {
        position: relative;
        cursor: pointer;
    }
	.amenity-icon {
	  font-size: 20px;
	  color: #444;
	  line-height: 1;
	  opacity: 0.85;
	}

	/* default fallback */
	.amenity-icon::before {
		font-family:"Font Awesome 5 Free";
		font-weight:900;
		font-size: 24px;
		font-style:normal;
		display:inline-block;
		text-rendering:auto;
		-webkit-font-smoothing:antialiased;
	  content: "\f155"; /* star-filled */
	}
/* Climate */
.amenity-icon.air-conditioning::before{content:"\f2dc";}
.amenity-icon.heating::before{content:"\f769";}
/* Pool */
.amenity-icon.pool::before,
.amenity-icon.swimming-pool::before {
    content: "\f5c4"; /* swimming-pool */
}
.amenity-icon.smoking-allowed::before {
    content: "\f48d";
}
/* Fire Pit */
.amenity-icon.fire-pit::before,
.amenity-icon.fireplace::before {
    content: "\f06d"; /* fire */
}
/* Suitable for Events */
.amenity-icon.suitable-for-events::before,
.amenity-icon.events-allowed::before {
    content: "\f79f"; /* glass-cheers / celebration */
}

/* Pets */
.amenity-icon.pets::before,
.amenity-icon.pets-allowed::before {
    content: "\f6d3"; /* paw */
}
/* Kitchen / Food */
.amenity-icon.kitchen::before{content:"\f2e7";}
.amenity-icon.baking-sheet::before,
.amenity-icon.cookware::before,
.amenity-icon.dishes-and-silverware::before{content:"\f2e7";}
.amenity-icon.blender::before{content:"\f517";}
.amenity-icon.coffee::before,
.amenity-icon.coffee-maker::before{content:"\f0f4";}
.amenity-icon.kettle::before{content:"\f2e7";}
.amenity-icon.toaster::before{content:"\f2e7";}
.amenity-icon.microwave::before{content:"\f2e7";}
.amenity-icon.oven::before,
.amenity-icon.stove::before{content:"\f2e7";}
.amenity-icon.refrigerator::before,
.amenity-icon.freezer::before{content:"\f2e7";}
.amenity-icon.wine-glasses::before{content:"\f4e3";}
.amenity-icon.dining-table::before{content:"\f2e7";}
/* Concierge Icons */
.amenity-icon.airport-transfer::before { content: "\f5b0"; }   /* plane-arrival */
.amenity-icon.private-driver::before { content: "\f1b9"; }     /* car */
.amenity-icon.luxury-car-rental::before { content: "\f5e4"; }  /* car-side */
.amenity-icon.grocery-pre-stock::before { content: "\f291"; }  /* shopping-basket */
.amenity-icon.personal-chef::before { content: "\f2e7"; }      /* utensils */
.amenity-icon.in-home-massage::before { content: "\f5bb"; }    /* spa */
.amenity-icon.private-yoga::before { content: "\f5c5"; }       /* child-pose */
.amenity-icon.private-spa::before { content: "\f5bb"; }        /* spa */
.amenity-icon.surf-lessons::before { content: "\f578"; }       /* water */
.amenity-icon.boat-charters::before { content: "\f21a"; }      /* ship */
.amenity-icon.private-tours::before { content: "\f5a0"; }      /* map-marked-alt */
.amenity-icon.fitness-coaching::before { content: "\f44b"; }   /* dumbbell */
.amenity-icon.breathwork-meditation::before { content: "\f5da";}/* om */
.amenity-icon.sound-bath::before { content: "\f001"; }         /* music */
.amenity-icon.beauty-aesthetic::before { content: "\f553"; }   /* magic */
.amenity-icon.iv-drip-therapy::before { content: "\f484"; }    /* syringe */
.amenity-icon.wellness-services::before { content: "\f21e"; }  /* heartbeat */

/* Base amenity icon styling */
.amenity-icon::before {
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    margin-right: 10px;
    color: #111;
}

/* Bathroom / Hygiene */
.amenity-icon.bathtub::before,
.amenity-icon.hot-tub::before,
.amenity-icon.hot-water::before{content:"\f2cd";}
.amenity-icon.hair-dryer::before{content:"\f013";}
.amenity-icon.body-soap::before,
.amenity-icon.shampoo::before,
.amenity-icon.conditioner::before,
.amenity-icon.shower-gel::before{content:"\f46d";}

/* Bedroom */
.amenity-icon.bed-linens::before,
.amenity-icon.extra-pillows-and-blankets::before{content:"\f236";}
.amenity-icon.clothing-storage::before,
.amenity-icon.hangers::before{content:"\f553";}
.amenity-icon.room-darkening-shades::before{content:"\f185";}

/* Safety */
.amenity-icon.smoke-detector::before,
.amenity-icon.carbon-monoxide-detector::before{content:"\f071";}
.amenity-icon.fire-extinguisher::before,
.amenity-icon.indoor-fireplace::before{content:"\f06d";}
.amenity-icon.first-aid-kit::before{content:"\f479";}

/* Cleaning / Utility */
.amenity-icon.cleaning-before-checkout::before,
.amenity-icon.cleaning-products::before{content:"\f51a";}
.amenity-icon.washer::before,
.amenity-icon.dryer::before{content:"\f013";}
.amenity-icon.iron::before{content:"\f2cd";}

/* Entertainment / Tech */
.amenity-icon.tv::before{content:"\f26c";}
.amenity-icon.wireless-internet::before{content:"\f1eb";}

/* Outdoor */
.amenity-icon.bbq-grill::before,
.amenity-icon.barbeque-utensils::before{content:"\f6ad";}
.amenity-icon.garden-or-backyard::before{content:"\f06c";}
.amenity-icon.patio-or-balcony::before{content:"\f6c0";}
.amenity-icon.outdoor-seating-furniture::before{content:"\f2e7";}
.amenity-icon.waterfront::before{content:"\f773";}

/* Property / Access */
.amenity-icon.garage::before{content:"\f494";}
.amenity-icon.private-entrance::before{content:"\f52b";}

/* Workspace / Long stays */
.amenity-icon.laptop-friendly-workspace::before{content:"\f109";}
.amenity-icon.long-term-stays-allowed::before{content:"\f017";}

/* Family */
.amenity-icon.suitable-for-children-2-12-years::before,
.amenity-icon.suitable-for-infants-under-2-years::before{content:"\f77c";}
/* =========================
   AMENITY ICONS (COMPLETE)
   ========================= */

/* Bathroom / Hygiene */
.amenity-icon.bathtub::before,
.amenity-icon.hot-tub::before,
.amenity-icon.hot-water::before,
.amenity-icon.bidet::before{content:"\f2cd";}

.amenity-icon.hair-dryer::before,
.amenity-icon.washer::before,
.amenity-icon.dryer::before,
.amenity-icon.washer-dryer::before{content:"\f013";}

.amenity-icon.body-soap::before,
.amenity-icon.shampoo::before,
.amenity-icon.conditioner::before,
.amenity-icon.shower-gel::before,
.amenity-icon.luxury-toiletries-supplies::before{content:"\f46d";}

/* Bedroom */
.amenity-icon.bed-linens::before,
.amenity-icon.premium-linens::before,
.amenity-icon.extra-pillows-and-blankets::before{content:"\f236";}

.amenity-icon.clothing-storage::before,
.amenity-icon.hangers::before{content:"\f553";}

.amenity-icon.room-darkening-shades::before{content:"\f185";}

/* Safety */
.amenity-icon.smoke-detector::before,
.amenity-icon.carbon-monoxide-detector::before{content:"\f071";}

.amenity-icon.fire-extinguisher::before,
.amenity-icon.firepit::before,
.amenity-icon.indoor-fireplace::before{content:"\f06d";}

.amenity-icon.first-aid-kit::before{content:"\f479";}

/* Cleaning / Utility */
.amenity-icon.cleaning-before-checkout::before,
.amenity-icon.cleaning-products::before{content:"\f51a";}

.amenity-icon.iron::before,
.amenity-icon.dishwasher::before{content:"\f2cd";}

/* Entertainment / Tech */
.amenity-icon.tv::before,
.amenity-icon.media-room::before{content:"\f26c";}

.amenity-icon.movie-theater::before{content:"\f008";}
.amenity-icon.sound-system::before{content:"\f028";}
.amenity-icon.game-room::before,
.amenity-icon.ping-pong-table::before,
.amenity-icon.foosball-table::before{content:"\f11b";}

.amenity-icon.pool-table::before{content:"\f44c";}
.amenity-icon.wireless-internet::before,
.amenity-icon.high-speed-reliable-wi-fi::before{content:"\f1eb";}

/* Outdoor */
.amenity-icon.bbq-grill::before,
.amenity-icon.barbeque-utensils::before{content:"\f6ad";}

.amenity-icon.garden-or-backyard::before,
.amenity-icon.backyard::before{content:"\f06c";}

.amenity-icon.patio-or-balcony::before,
.amenity-icon.outdoor-living-space::before{content:"\f6c0";}

.amenity-icon.outdoor-seating-furniture::before{content:"\f2e7";}
.amenity-icon.waterfront::before,
.amenity-icon.beach-access::before{content:"\f773";}

.amenity-icon.ocean-or-lake-view::before{content:"\f6ff";}
.amenity-icon.pool::before{content:"\f5c4";}

/* Property / Access */
.amenity-icon.garage::before{content:"\f494";}
.amenity-icon.private-entrance::before{content:"\f52b";}
.amenity-icon.gated-property::before{content:"\f023";}
.amenity-icon.guesthouse::before{content:"\f015";}
.amenity-icon.elevator::before{content:"\f0d8";}

/* Workspace / Long stays */
.amenity-icon.laptop-friendly-workspace::before,
.amenity-icon.dedicated-workspace::before{content:"\f109";}

.amenity-icon.long-term-stays-allowed::before{content:"\f017";}

/* Wellness / Comfort */
.amenity-icon.sauna::before{content:"\f593";}
.amenity-icon.gym::before{content:"\f44b";}
.amenity-icon.climate-control-ac-heating::before{content:"\f2dc";}
.amenity-icon.smart-home-technology::before{content:"\f2db";}

/* Utilities */
.amenity-icon.ev-charger::before{content:"\f0e7";}

/* Family */
.amenity-icon.suitable-for-children-2-12-years::before,
.amenity-icon.suitable-for-infants-under-2-years::before{content:"\f77c";}

/* Essentials */
.amenity-icon.essentials::before{content:"\f46d";}


    .gallery-item img {
        transition: transform 0.4s ease;
    }



    .price-box {
        background: #fff;
        border: 1px solid #e3e3e3;
        padding: 15px;
        border-radius: 8px;
        font-size: 14px;
    }
    
    .pb-row {
        display: flex;
        justify-content: space-between;
        padding: 4px 0;
    }
    
    .pb-row.total {
        font-size: 16px;
        font-weight: 700;
        margin-top: 10px;
    }
    
    .pb-meta {
        margin-top: 10px;
        font-size: 12px;
        color: #666;
    }

    /* ===== SIDEBAR LAYOUT ===== */
    .property-content-wrapper {
      width: 100%;
      margin: 0;
    }
    
    /* LEFT COLUMN (70%) */
    .property-main {
      width: 65%;
      float: left;
      padding-right: 4%;
      box-sizing: border-box;
    }
    
    /* RIGHT COLUMN (30%) SIDEBAR */
    .property-sidebar {
      width: 30%;
      float: right;
      box-sizing: border-box;
      margin-top: 30px;
    }

    
    /* ===== ENQUIRY FORM ===== */
    .enquiry-box {
      background: #f7f7f7;
      border: 1px solid #ddd;
      padding: 25px 25px 30px;
      border-radius: 4px;
      box-shadow: 0 2px 6px rgba(0,0,0,0.05);
    }
    
    .enquiry-form h3 {
      font-size: 20px;
      margin-bottom: 20px;
    }
    
    .enquiry-form .form-group {
      margin-bottom: 15px;
    }
    
    .enquiry-form label {
      font-size: 16px;
      font-weight: 500;
      color: #333;
      display: block;
      margin-bottom: 5px;
    }
    
    .enquiry-form input[type="text"],
    .enquiry-form input[type="number"],
    .enquiry-form input[type="email"],
    .enquiry-form input[type="date"],
    .enquiry-form textarea {
      width: 100%;
      border: 1px solid #ccc;
      border-radius: 2px;
      padding: 12px 10px;
      font-size: 14px;
      font-family: inherit;
      box-sizing: border-box;
    }
    
    .enquiry-form input:focus,
    .enquiry-form textarea:focus {
      outline: none;
      border-color: #000;
    }
    
    .name-fields {
      display: flex;
      gap: 10px;
    }
    
    .half {
      display: flex;
      flex-direction: column;
    }
    
    .enquiry-form textarea {
      resize: vertical;
    }
    
    .btn-submit {
      width: 100%;
      background: #000;
      color: #fff;
      border: none;
      padding: 12px;
      font-size: 20px;
      font-weight: 600;
      cursor: pointer;
      margin-top: 10px;
      transition: background 0.3s ease;
    }
    
    .btn-submit:hover {
      background: #333;
    }
    
    /* ===== Responsive ===== */
    @media (max-width: 992px) {
      .property-content-wrapper {
        flex-direction: column;
        width: 90%;
      }
    
      .property-sidebar {
        flex: 0 0 100%;
        position: static;
        margin-top: 40px;
      }
    }

    /* ===== MULTI-IMAGE GALLERY STYLE ===== */
    section.common{
        margin: 60px 0px 40px 30px !important;
        width: 100%;
    }
    section.common h2{width: 100%;font-size: 30px !important;}
    section.common h1{font-size: 45px !important;}
    .property-gallery-multi {
      position: relative;
      width: 100%;
      margin: 0;
      padding: 0;
      overflow: hidden;
    }
    
    .gallery-container {
      position: relative;
      width: 100%;
      overflow: hidden;
    }
    
    .gallery-track {
      display: flex;
      gap: 5px;
      overflow-x: auto;
      scroll-behavior: smooth;
      scrollbar-width: none; /* Firefox */
    }
    
    .gallery-track::-webkit-scrollbar {
      display: none; /* Chrome/Safari */
    }
    
    .gallery-item {
      flex: 0 0 25%; /* 4 images visible at a time */
      position: relative;
    }
    
    .gallery-item img {
      width: 100%;
      height: 70vh;
      object-fit: cover;
      display: block;
    }
    
    /* Arrows */
    .gallery-nav {
      position: absolute;
      top: 50%;
      transform: translateY(-50%);
      background: rgba(0,0,0,0.45);
      color: #fff;
      border: none;
      font-size: 2rem;
      width: 48px;
      height: 48px;
      border-radius: 50%;
      cursor: pointer;
      transition: 0.3s;
      z-index: 20;
    }
    
    .gallery-nav:hover {
      background: rgba(0,0,0,0.7);
    }
    
    .gallery-nav.prev { left: 20px; }
    .gallery-nav.next { right: 20px; }
    
    @media (max-width: 1024px) {
      .gallery-item { flex: 0 0 33.33%; } /* 3 visible */
    }
    @media (max-width: 768px) {
	  .concierge-columns{gap: 0 !important;}
      .gallery-item { flex: 0 0 50%; } /* 2 visible */
    }
    @media (max-width: 480px) {
      .gallery-item { flex: 0 0 100%; } /* 1 visible on small screens */
    }
    /* ===== PROPERTY INTRO SECTION ===== */
    .property-intro.common{
        margin: 0px 0px 40px 30px !important;
    }
    .property-intro {
      width: 70%;
      margin: 60px auto 40px;
      line-height: 1.7;
      font-size: 16px;
      color: #333;
    }
    
    .property-intro-inner {
      max-width: 1500px;
      margin: 0 auto;
    }
    
    .property-title {
      font-size: 3rem;
      margin-bottom: 10px;
    }
    
    .property-icons {
      display: flex;
      gap: 25px;
      align-items: center;
      margin-bottom: 30px;
    }
    
    .property-icons div {
      display: flex;
      align-items: center;
      font-size: 16px;
      color: #555;
    }
   /* ===== REVIEWS SECTION ===== */
.property-reviews {
  position: relative;
  width: 70%;
  margin: 40px auto 80px;
}

.property-reviews h2 {
  font-size: 1.8rem;
  margin-bottom: 25px;
}
.property-icons .emoji{margin-top: -5px !important;}
.reviews-slider {
  display: flex;
  gap: 20px;
  overflow-x: auto;
  scroll-behavior: smooth;
  scrollbar-width: none;
  scroll-snap-type: x mandatory; /* ✅ Snap per slide */
  -webkit-overflow-scrolling: touch;
}

.reviews-slider::-webkit-scrollbar {
  display: none;
}

.review-slide {
  flex: 0 0 48%;
  min-width: 48%; /* ✅ Prevents shrinking (critical for consistent scroll) */
  scroll-snap-align: start; /* ✅ Ensures perfect stop position */
  background: #f8f8f8;
  border-radius: 10px;
  padding: 25px 30px;
  box-sizing: border-box;
  min-height: 180px;
  transition: transform 0.3s ease;
}

.review-slide:hover {
  transform: translateY(-4px);
}

.review-slide blockquote {
  font-size: 16px;
  line-height: 1.5;
  color: #222;
  margin: 0 0 10px 0;
  quotes: "“" "”" "‘" "’";
}

.review-slide blockquote::before {
  content: open-quote;
}

.review-slide blockquote::after {
  content: close-quote;
}

.review-author {
  font-weight: 500;
  color: #444;
}

/* Slider arrows */
.review-nav {
  position: absolute;
  top: 45%;
  transform: translateY(-50%);
  background: rgba(0,0,0,0.4);
  color: #fff;
  border: none;
  font-size: 1.5rem;
  padding: 10px 14px;
  border-radius: 50%;
  cursor: pointer;
  transition: 0.3s;
  z-index: 10;
}

.review-nav:hover {
  background: rgba(0,0,0,0.6);
}

.review-nav.prev { left: -25px; }
.review-nav.next { right: -25px; }

@media (max-width: 768px) {
  .review-slide {
    flex: 0 0 90%;
    min-width: 90%;
  }
  .review-nav {
    display: none; /* Hide arrows on mobile; use swipe */
  }
}

    /* ===== BEDROOMS SECTION ===== */
    .property-bedrooms {
      position: relative;
      width: 70%;
      margin: 60px auto;
    }
    
    .property-bedrooms h2 {
      font-size: 1.8rem;
      margin-bottom: 25px;
    }
    
    .bedroom-slider {
      display: flex;
      gap: 20px;
      overflow-x: auto;
      scroll-behavior: smooth;
      scrollbar-width: none;
    }
    .bedroom-slider::-webkit-scrollbar { display: none; }
    
    .bedroom-slide {
      flex: 0 0 25%;
      min-width: 250px;
    }
    
    .bedroom-slide img {
      width: 100%;
      height: 220px;
      object-fit: cover;
      border-radius: 5px;
      margin-bottom: 10px;
    }
    
    .bedroom-slide h4 {
      font-weight: 600;
      margin: 5px 0 2px;
    }
    
    .bedroom-slide p {
      color: #555;
      font-size: 0.95rem;
    }
    
    /* Arrows */
    .bedroom-nav {
      position: absolute;
      top: 50%;
      transform: translateY(-50%);
      background: rgba(0,0,0,0.4);
      color: #fff;
      border: none;
      font-size: 1.5rem;
      width: 40px;
      height: 40px;
      border-radius: 50%;
      cursor: pointer;
      transition: 0.3s;
      z-index: 10;
    }
    
    .bedroom-nav:hover { background: rgba(0,0,0,0.6); }
    .bedroom-nav.prev { left: -25px; }
    .bedroom-nav.next { right: -25px; }
    
    @media (max-width: 768px) {
      .bedroom-slide { flex: 0 0 80%; }
    }
    
    /* ===== AMENITIES SECTION ===== */
    .property-amenities {
      width: 70%;
      margin: 80px auto;
    }
    
    .property-amenities h2 {
      font-size: 1.8rem;
      margin-bottom: 30px;
    }
    
    .amenities-grid {
      display: grid;
      grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
      gap: 15px 30px;
    }
    
    .amenity {
      display: flex;
      align-items: center;
      gap: 12px;
      font-size: 16px;
      color: #333;
    }
    
    .amenity-icon {
      font-size: 1.4rem;
      width: 28px;
      text-align: center;
    }
    /* ===== MORE VISUALS SECTION ===== */
    .property-more-visuals {
      width: 70%;
      margin: 80px auto;
    }
    
    .property-more-visuals h2 {
      font-size: 1.8rem;
      margin-bottom: 25px;
    }
    
    .more-visuals-grid {
      display: grid;
      grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
      gap: 15px;
    }
    
    .visual-item img {
      width: 100%;
      height: 260px;
      object-fit: cover;
      border-radius: 6px;
      transition: transform 0.3s ease;
    }
    
    .visual-item img:hover {
      transform: scale(1.03);
    }
    
    /* ===== IDEAL FOR SECTION ===== */
    .property-ideal-for {
      width: 70%;
      margin: 80px auto;
    }
    
    .property-ideal-for h2 {
      font-size: 1.6rem;
      margin-bottom: 35px;
    }
    
    .ideal-for-grid {
      display: grid;
      grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
      gap: 20px 40px;
    }
    
    .ideal-item {
      display: flex;
      align-items: center;
      gap: 12px;
      font-size: 16px;
      color: #333;
    }
    
    .ideal-icon {
      font-size: 1.8rem;
      width: 36px;
      text-align: center;
    }
    /* ===== CONCIERGE SERVICES ===== */
    .property-concierge {
      width: 70%;
      margin: 80px auto;
    }
    
    .property-concierge h2 {
      font-size: 1.7rem;
      margin-bottom: 25px;
    }
    
    .concierge-columns {
      display: flex;
      justify-content: space-between;
      flex-wrap: wrap;
      gap: 20px;
    }
    
    .concierge-list {
		list-style: none;
		margin: 0;
		padding: 0;
		flex: 1;
		min-width: 240px;
	}

	.concierge-list li {
		display: flex;
		align-items: flex-start;
		gap: 8px;
		margin-bottom: 10px;
		font-size: 16px;
		color: #333;
		line-height: 1.6;
	}
    
    /* ===== LOCATION SECTION ===== */
    .property-location {
      width: 70%;
      margin: 80px auto;
    }
    
    .property-location h2 {
      font-size: 1.7rem;
      margin-bottom: 25px;
    }
    
    #propertyMap {
      width: 100%;
      height: 400px;
      border-radius: 8px;
      overflow: hidden;
      background-color: #eee;
    }
    /* ===== RELATED PROPERTIES SECTION ===== */
    .property-related {
      width: 70%;
      margin: 80px auto 100px;
    }
    
    .property-related h2 {
      font-size: 1.7rem;
      margin-bottom: 40px;
    }
    
    .related-properties-grid {
      display: flex;
      justify-content: space-between;
      gap: 20px;
      flex-wrap: wrap;
    }
    
    .related-item {
      flex: 0 0 30%;
      text-decoration: none;
      color: inherit;
      transition: transform 0.3s ease;
    }
    
    .related-item:hover {
      transform: translateY(-5px);
    }
    
    .related-thumb img {
      width: 100%;
      height: 220px;
      object-fit: cover;
      border-radius: 6px;
      margin-bottom: 10px;
    }
    
    .related-item h4 {
      font-size: 16px;
      font-weight: 600;
      color: #111;
      text-align: center;
    }
    
    @media (max-width: 768px) {
      .related-item { flex: 0 0 48%; }
    }
    @media (max-width: 480px) {
      .related-item { flex: 0 0 100%; }
    }
    /* ===== MAIN CONTENT WRAPPER ===== */
    /* ===== HERO VIDEO SECTION ===== */
    .property-hero-video {
      position: relative;
	  margin-bottom: 5px;
      width: 100%;
      height: 70vh; /* Slightly shorter than full screen */
      overflow: hidden;
      background: #000; /* fallback color */
    }
    
    
    /* Option
/* ===== PROPERTY PAGE LAYOUT ===== */
.property-content-wrapper {
  display: flex;
  align-items: flex-start;
  gap: 40px;
  margin: 0 auto;
  padding: 40px 20px;
}

/* Main Content Area */
.property-main {
  width: 70%;
}
/* Sidebar Area */
:root {
    --header-height: 150px;
}
.property-sidebar {
    width: 30%;
    position: sticky;
    top: var(--header-height); /* banner + header height */
    z-index: 5;
}
/* Optional: Add background and shadow for clarity */
.property-sidebar .sidebar-content {
  background: #fff;
  padding: 20px;
  border-radius: 10px;
  box-shadow: 0 2px 10px rgba(0,0,0,0.1);
}

/* ===== RESPONSIVE (Mobile) ===== */
@media (max-width: 767px) {
	.favorite-btn {
        top: 35px !important;
        right: 15px !important;
    }
	.icon-label{display: none;}
    .property-content-wrapper {
    gap:0;padding:40px 0px;}
  .property-intro.common, section.common{margin: 0 !important;}
  .property-layout {
    flex-direction: column;
    gap: 20px;
  }
	.property-sidebar {
        order: -1;   /* Moves sidebar above main */
		        width: 100%;
        margin-top: 0;
        margin-bottom: 30px;
    }
  .related-properties-grid{display: block;}.related-item{flex: none;}
  section.common h1 {
        font-size: 20px !important;
    }    
  section.common h2 {
    font-size: 24px !important;    margin-top: 22px;
}    
  .property-main,
  .property-sidebar {
    width: 100%;
  }

  .property-sidebar {
    position: static; /* removes stickiness */
    top: auto;
  }
}

/* Overlay (dark background) */
.questions-popup-overlay {
    display: none;
    position: fixed;
    top: 0; 
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0,0,0,0.55);
    z-index: 99999;
    justify-content: center;
    align-items: center;
}
.concierge-options label{
		margin-right: 8px;
}
/* Popup box */
.questions-popup {
    background: #fff;
    max-width: 520px;
    max-height: 85vh; 
	overflow: scroll;    
    max-width: 90%;
    padding: 25px;
    border-radius: 10px;
    position: relative;
    animation: fadeIn 0.25s ease;
}

/* Popup animation */
@keyframes fadeIn {
    from { opacity: 0; transform: scale(0.9); }
    to   { opacity: 1; transform: scale(1); }
}

/* Close button */
.close-popup {
    position: absolute;
    top: 10px; 
    right: 15px;
    font-size: 22px;
    cursor: pointer;
    color: #333;
}
.secure-box {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    font-size: 14px;
    font-weight: 600;
    color: #333;
    margin-top: 10px;
}

.secure-box .secure-lock {
    color: #111;
}
.questions-popup-overlay {
    display: none;
    position: fixed;
    top: 0; left: 0;
    width: 100%; height: 100%;
    background: rgba(0,0,0,0.6);
    z-index: 999999;
    justify-content: center;
    align-items: center;
}

.questions-popup {
    background: #ffffff;
    width: 500px;
    max-width: 95%;
    border-radius: 4px;
    animation: fadeIn 0.25s ease;
}

.qp-header {
    background: #3a0a1a;
    color: #fff;
    padding: 18px;
    font-size: 20px;
    font-weight: 700;
    text-align: center;
    position: relative;
}

.close-popup {
    position: absolute;
    right: 18px;
    top: 16px;
    font-size: 20px;
    cursor: pointer;
    color: #fff;
}

#popupInquiryForm {
    padding: 20px;
}
	#popupInquiryForm input[type=checkbox]{
		width: auto;
		margin-right: 3px;
	}
#popupInquiryForm input,
#popupInquiryForm textarea {
    width: 100%;
    padding: 8px;
    margin-bottom: 10px;
    border: 1px solid #ccc;
    border-radius: 4px;
}
#popupInquiryForm input[type=radio]{
    width: auto;
}
.concierge-title{font-weight: bold; margin-bottom: 10px;}
.concierge-box span{font-weight: normal;}
.concierge-box{margin-bottom: 10px; margin-top: 10px;}	
.qp-row {
    display: flex;
    gap: 15px;
}

.qp-row input {
    width: 100%;
}

.qp-submit-btn {
    width: 100%;
    background: #3a0a1a;
    color: #fff;
    padding: 14px;
    font-weight: 700;
    border: none;
    border-radius: 3px;
    cursor: pointer;
    font-size: 15px;
}
.property-hero-video {
  width: 100%;
  height: 70vh; /* Adjust height */
  overflow: hidden;
  position: relative;
}

.property-hero-video {
    position: relative;
    width: 100%;
    height: 65vh;   /* Adjust as needed */
    overflow: hidden;
}

/* Container for controlling crop */
.video-bg-container {
    position: relative;
    width: 100%;
    height: 100%;
    overflow: hidden;
}

/* TRUE FULL-WIDTH NO-BLACK-CORNER FIX */
.video-bg-iframe {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 177.78vh;  /* 100vh * 16/9  → covers horizontal always */
    height: 100vh;    /* ensures vertical cover */
    transform: translate(-50%, -50%);
    object-fit: cover;
    pointer-events: none;
}

/* Mobile fix for portrait screens */
@media (max-aspect-ratio: 16/9) {
    .video-bg-iframe {
        width: 100vw;
        height: 56.25vw; /* 100vw * 9/16 */
    }
}

.video-overlay-logo {
    position: absolute;
    top: 25px;
    left: 50%;
    transform: translateX(-50%);
    z-index: 20;
}

.video-overlay-logo img {
    max-width: 150px;
}
/* ===== LIGHTBOX POPUP ===== */
.lightbox-overlay {
    display: none;
    position: fixed;
    inset: 0;
    background: rgba(0,0,0,0.85);
    justify-content: center;
    align-items: center;
    z-index: 999999;
}

.lightbox-img {
    max-width: 90%;
    max-height: 90vh;
    border-radius: 6px;
    box-shadow: 0 0 25px rgba(0,0,0,0.6);
}

.lightbox-close {
    position: absolute;
    top: 20px;
    right: 30px;
    font-size: 45px;
    color: white;
    cursor: pointer;
    z-index: 20;
}

.lightbox-nav {
    position: absolute;
    top: 50%;
    font-size: 3rem;
    padding: 10px 18px;
    color: white;
    background: rgba(0,0,0,0.35);
    border: none;
    border-radius: 50%;
    cursor: pointer;
    transform: translateY(-50%);
    transition: 0.3s;
}
.lightbox-nav:hover {
    background: rgba(0,0,0,0.55);
}

.lightbox-nav.prev { left: 30px; }
.lightbox-nav.next { right: 30px; }
.image-bg {
  position: absolute;
  inset: 0;
  background-size: cover;
  background-position: center;
}
/* ===== HERO BOTTOM OVERLAY ===== */
.hero-bottom-bar {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    z-index: 25;

    background: linear-gradient(
        to top,
        rgba(0,0,0,0.65),
        rgba(0,0,0,0)
    );
}

.hero-bottom-inner {
    margin: 0 auto;
    padding: 22px 30px;

    display: flex;
    justify-content: space-between;
    align-items: center;

    color: #fff;
}

/* TITLE */
.hero-title {
    font-size: 26px;
    font-weight: 600;
    line-height: 1.2;
}

/* ICONS */
.hero-icons {
    display: flex;
    gap: 22px;
}

.hero-icons div {
    display: flex;
    align-items: center;
    font-size: 14px;
    gap: 6px;
    white-space: nowrap;
}
.hero-icons span {
    opacity: 0.85;
}
@media (max-width: 768px) {
    .hero-bottom-inner {
        flex-direction: column;
        align-items: flex-start;
        gap: 10px;
    }

    .hero-title {
        font-size: 20px;
    }

    .hero-icons {
        gap: 14px;
    }

    .hero-icons span {
        display: none; /* icons + numbers only */
    }
}
.youtube-lazy{
    position:absolute;
    inset:0;
    cursor:pointer;
}

.youtube-thumb{
    width:100%;
    height:100%;
    object-fit:cover;
}

.youtube-play{
    position:absolute;
    top:50%;
    left:50%;
    transform:translate(-50%,-50%);
    font-size:60px;
    border:none;
    background:rgba(0,0,0,0.6);
    color:white;
    width:80px;
    height:80px;
    border-radius:50%;
    cursor:pointer;
}