/* Enter Your Custom CSS Here */
.property-desc {
	padding: 10px 15px 15px !important;
	
}
.property-item {
    padding: 0px !important;
	margin-bottom: 30px;
}

.price-sq-ft {
	font-size: 11px;
	color: #000;
	line-height: 16px;
}
.property-desc h3 a, .property-desc h3 {
	font-size: 16px;
	line-height: 20px !important;
	color: #000;
	font-weight: 500;
	padding-bottom: 10px;
	text-decoration: unset;
}
.block h2 {
	border-bottom: unset !important;
}
.locality {
	display: flex;
	font-size: 14px;
}
.red-line {
    height: 4px;
    width: 60px;
    border-radius: 4px;
    background: #dc0000;
    display: inline-block;
}
.property-cont-desc p {
	margin-bottom: 0px;
}
.property-desc p {
	font-size: 14px;
	line-height: 21px;
}
.property-slide .nav {
	font-size: 45px;
	padding: 8px 16px 16px 14px;
	line-height: 44px;
	border-radius: 39px;
	background: rgba(0,0,0,0.4) !important;
}

.read-more {
	background: #741a2c;
	color: #fff !important;
	padding: 6px 25px;
	font-size: 14px;
	text-decoration: unset !important;
	border-radius: 14px;
}
.content-grid.property-cont-desc {
	font-size: 14px;
	line-height: 21px;
}
.property-cont-desc .block.reveal, .pform-card{
	padding: 20px 25px;
	border-radius: 5px;
	box-shadow: 0px 0px 5px rgba(85, 85, 85, 0.2);
}
.property-btn {
/* 	text-align: center; */
}
.property-title h1 {
	font-size: 22px;
}
.property-cont-desc ul {
	padding: 0px !important;
	font-size: 14px;
}
/* single page css */

.title-row.property-title {
	display: block !important;
}
.start-pc-desc {
	font-size: 14px;
}
.start-pc {
	color: #000;
	font-size: 11px;
	position: relative;
	top: -20px;
	left: 53px;
}
.property-cont-desc h3, .property-cont-desc h2 {
	font-size: 24px;
	font-weight: 500;
	line-height: 30px;
}
.start-pc-type {
	color: #000;
}
.p-read-more, .read-less {
	color: #000 !important;
	font-weight: 500;
	text-transform: capitalize;
}
/*  Animities css */
.amenities-container {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.desktop-view {
    width: 100%;
}
.amenities-column ul {
    list-style-type: none;
    padding: 0;
}
.amenities-column ul li {
    margin-bottom: 5px;
    display: flex;
    align-items: center;
}
.amenities-column {
    flex: 1 1 auto;
    margin-bottom: 20px;
}
.amenities-column ul li img {
    margin-right: 5px;
    height: 20px;
}
.property-cont-desc ul {
	list-style: none !important;
}
#details {
	display: block;
}
.amenities-list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	grid-template-columns: repeat(3,1fr);
	gap: 5px 18px;
}

.amenities-list li{
  display:flex;
  align-items:center;
  gap:8px;
  font-size:14px;
  color:#222;
}

.amenities-list img{
  width:26px;
  height:26px;
  object-fit:contain;
}

/* Tablet */
@media(max-width:991px){
  .amenities-list{
    grid-template-columns:repeat(2,1fr);
  }
	.property-cont-desc .tabs {
	display: block !important;
}
	.property-cont-desc .tab {
	margin: 0 7px 10px 0px !important;
	width: 47%;
	font-size: 12px !important;
}
}

/* Mobile */
@media(max-width:575px){
  .amenities-list{
    grid-template-columns:1fr;
  }
}
/* property details Css */
 .pd-sections{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
      .pd-card{background:#f5f7fa;border:1px solid #e6e9ef;border-radius:12px;padding:16px}
      .pd-title{font-weight:600;margin-bottom:12px;color:#6b7280 !important;}
      .pd-list{display:flex;flex-direction:column;gap:12px}
      .pd-row{display:grid;grid-template-columns:32px 1fr;grid-template-rows:auto auto;align-items:center;column-gap:12px;background:#fff;border:1px solid #eaecef;border-radius:10px;padding:8px 12px;box-shadow:0 1px 1px rgba(0,0,0,0.02);border: unset !important;min-height:56px}
      .pd-row i{margin:0;padding:0}
      .pd-row .lucide-icon{grid-column:1;grid-row:1 / span 2;place-self:center;width:18px;height:18px;stroke:#dc0000;margin-right:0;background:rgba(220,0,0,0.08);border:1px solid rgba(220,0,0,0.25);border-radius:50%;padding:6px;box-sizing:content-box}
      .pd-label{grid-column:2;color:#6b7280;font-size:13px}
      .pd-value{grid-column:2;margin-left:0;margin-top:2px;font-weight:400;color:#111}
      @media (max-width:768px){.pd-sections{grid-template-columns:1fr}}
/*  form css */
.form-card {
	 padding: 0px !important;
}
.wpcf7-not-valid-tip {
	font-size: 11px;
}
.form-card input, .form-card textarea, .form-card select, .bfrm {
	border: 1px solid #000 !important;
	background: transparent !important;
	border-radius: 4px !important;
	color: #5c636c !important;
	font-size: 14px !important;
}
::placeholder {
	opacity: 1;
	color: #5c636c;
}
.wpcf7-form-control.wpcf7-checkbox.bfrm {
	border: unset !important;
	font-size: 12px !important;
	line-height: 11px !important;
}
.wpcf7-checkbox.bfrm .wpcf7-list-item-label {
	font-size: 12px;
	line-height: 11px !important;
}
.wpcf7-checkbox.bfrm label {
	line-height: 12px;
	display: flex;
	color: #5c636c !important;
	font-weight: 500 !important;
}
.wpcf7-checkbox.bfrm input {
	width: 28px;
	height: 28px;
	margin-right: 11px;
	position: relative;
	top: -6px;
	font-weight: 500 !important;
	color: #5c636c !important;
}
.wpcf7-form-control.wpcf7-checkbox.bfrm .first {
	margin-left: 0px;
	margin-bottom: 17px;
	margin-top: 10px;
	font-weight: 500 !important;
	color: #5c636c !important;
}
.bi-sbmt .wpcf7-submit {
	background: #03268c !important;
	color: #fff !important;
	padding: 10px !important;
	line-height: 11px;
	font-size: 16px !important;
	font-weight: 500;
	border: 1px solid #03268c !important;
}
.bi-sbmt .wpcf7-submit:hover {
	background: transparent !important;
	color: #03268c !important
}
@media (min-width: 1025px){
.prop-top-loc {
	display: flex;
	gap: 20px;
}
.property-slide .thumbs {
	position: absolute;
	z-index: 99;
	top: 0;
	right: 0;
	width: 120px !important;
	display: block;
}
	.prop-top-loc p, .prop-top-loc div {
	width: 50%;
	margin-bottom: 0px;
}
}

/* new slider css */
/* ===== SLIDER CONTAINER ===== */
.p2p-slider{
    display:flex;
    gap:18px;
    position:relative;
    background:#fff;
    padding:14px;
    border-radius:16px;
    box-shadow:0 12px 35px rgba(0,0,0,.18);
    margin:auto;
}

/* ===== MAIN IMAGE ===== */
.p2p-main{
    width:78%;
    border-radius:14px;
    overflow:hidden;
    position:relative;
}

.p2p-main img{
    width:100%;
    height:460px;
    object-fit:cover;
    display:none;
}

.p2p-main img.active{
    display:block;
}

/* ===== THUMBNAILS (RIGHT) ===== */

.p2p-thumbs{
    width:18%;
    display:flex;
    flex-direction:column;
    gap:12px;
    max-height:460px;          /* same as main image height */
    overflow-y:auto;           /* ENABLE VERTICAL SCROLL */
    padding-right:6px;         /* space for scrollbar */
}

/* optional scrollbar styling */
.p2p-thumbs::-webkit-scrollbar{
    width:6px;
}
.p2p-thumbs::-webkit-scrollbar-thumb{
    background:#cfcfcf;
    border-radius:10px;
}

.p2p-thumbs img{
    height:90px;
    width:100%;
    object-fit:cover;
    border-radius:8px;
    cursor:pointer;
    opacity:.6;
    border:3px solid transparent;
    transition:.3s;
}

.p2p-thumbs img.active{
    opacity:1;
    border-color:#1e88ff;
}

/* ===== ARROWS ===== */
.p2p-nav{
    position:absolute;
    top:50%;
    transform:translateY(-50%);
    color:#fff;
    border:none;
    border-radius:50%;
    cursor:pointer;
    z-index:10;
	width: unset;
	height: unset;
	padding: 21px 20px 20px 17px !important;
	line-height: 3px;
	border-radius: 24px !important;
	font-size: 20px;
	background: rgba(0,0,0,0.4) !important;
}
.p2p-nav.prev{ left: -14px; }
.p2p-nav.next{ right:22%; }

/* ===== MOBILE ===== */
@media(max-width:768px){
    .p2p-slider{ flex-direction:column; }
    .p2p-main,.p2p-thumbs{ width:100%; }
    .p2p-thumbs{ flex-direction:row; overflow-x:auto; }
    .p2p-thumbs img{ min-width:120px; height:80px; }
    .p2p-nav.next{ right:15px; }
}
========================= */
@media (min-width:1200px){
    .p2p-main img{
        height:480px;
    }
    .p2p-thumbs{
        max-height:480px;
    }
}

/* =========================
   LAPTOPS / SMALL DESKTOP
========================= */
@media (max-width:1199px){
    .p2p-main img{
        height:420px;
    }
    .p2p-thumbs{
        max-height:420px;
    }
}

/* =========================
   TABLETS (iPad)
========================= */
@media (max-width:991px){
    .p2p-slider{
        gap:12px;
        padding:10px;
    }

    .p2p-main{
        width:72%;
    }

    .p2p-thumbs{
        width:24%;
        max-height:380px;
    }

    .p2p-main img{
        height:380px;
    }

    .p2p-thumbs img{
        height:75px;
    }

    .p2p-nav.next{
        right:26%;
    }
}

/* =========================
   MOBILE (STACK MODE)
========================= */
@media (max-width:768px){
    .p2p-slider{
        flex-direction:column;
        padding:8px;
    }

    .p2p-main,
    .p2p-thumbs{
        width:100%;
    }

    .p2p-main img{
        height:260px;
        border-radius:10px;
    }

    /* thumbs move below main image */
    .p2p-thumbs{
        flex-direction:row;
        max-height:none;
        overflow-x:auto;
        overflow-y:hidden;
        padding:8px 0;
    }

    .p2p-thumbs img{
        min-width:110px;
        height:70px;
    }

    .p2p-nav.prev{
        left:10px;
    }

    .p2p-nav.next{
        right:10px;
    }
}

/* =========================
   SMALL MOBILES
========================= */
@media (max-width:480px){
    .p2p-main img{
        height:220px;
    }

    .p2p-thumbs img{
        min-width:90px;
        height:60px;
    }
}
.property-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr); /* 4 columns */
    gap: 20px; /* spacing between cards */
}

.property-item {
    background: #fff;
    border: 1px solid #ddd;
    border-radius: 8px;
    overflow: hidden;
    box-shadow: 0 2px 6px rgba(0,0,0,0.1);
    padding: 15px;
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.property-item-img {
  height: 200px !important;
}
.property-item:hover {
    transform: translateY(-5px);
    box-shadow: 0 6px 15px rgba(0,0,0,0.15);
}

.property-item img {
    width: 100%;
    height: auto;
    display: block;
    border-radius: 5px;
}

.property-item h3 {
    margin: 10px 0 5px;
    font-size: 1.1rem;
}

.property-item p {
    font-size: 0.9rem;
    color: #555;
}

@media (max-width: 1200px) {
    .property-grid {
        grid-template-columns: repeat(3, 1fr); /* 3 columns */
    }
}

@media (max-width: 900px) {
    .property-grid {
        grid-template-columns: repeat(2, 1fr); /* 2 columns */
    }
}

@media (max-width: 600px) {
    .property-grid {
        grid-template-columns: 1fr; /* single column */
    }
}
/*above css for card property display*/

/*Start css for single listing page*/
.container {
  max-width: 100%;
  margin: auto;
  padding: 0px;
}

/* TITLE */
.title-row {
  display: flex;
  justify-content: space-between;
  margin-bottom: 20px;
}
.title-row h1 {
  font-size: 22px;
}
.location, .posted {
  font-size: 13px;
  color: #666;
}
.price {
  text-align: right;
  color: #c00;
}
.price strong {
  font-size: 22px;
}

/* SLIDER */
.slider {
  position: relative;
  background: #000;
  border-radius: 6px;
  overflow: hidden;
}
.slides {
  display: flex;
  transition: transform 0.5s ease;
}
.slides img {
  width: 100%;
  flex-shrink: 0;
  width: 100%;
  height: 400px !important;
  object-fit: cover;
  object-position: center;
  border-radius: 10px;
  background-color: #f8f9fa;
}
.nav {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  background: rgba(0,0,0,.5);
  color: #fff;
  border: none;
  font-size: 28px;
  padding: 5px 12px;
  cursor: pointer;
}
.prev { left: 10px; z-index: 1;}
.next { right: 10px; }

.thumbs {
  display: flex;
  gap: 8px;
  padding: 10px;
}
.thumbs img {
  width: 60px;
  opacity: .6;
  cursor: pointer;
}
.thumbs img.active {
  border: 2px solid #c00;
  opacity: 1;
}

/* GRID */
.content-grid {
  display: grid;
  grid-template-columns: 3fr 1.2fr;
  gap: 20px;
  margin-top: 20px;
}

/* TABS */
.tabs {
  display: flex;
  gap: 10px;
  margin-bottom: 20px;
}
.tab {
  border: 1px solid #c00;
  background: #fff;
  padding: 8px 14px;
  cursor: pointer;
}
.tab.active {
  background: #c00;
  color: #fff;
}

/* BLOCKS */
.block {
  background: #fff;
  padding: 20px;
  margin-bottom: 20px;
  border-radius: 6px;
}
.block h2 {
  margin-bottom: 10px;
  display: inline-block;
}

.amenities {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 10px;
  list-style: none;
}

/* DETAILS */
.grid-details {
  display: grid;
  grid-template-columns: repeat(2,1fr);
  gap: 15px;
}
.grid-details h3 {
  margin-bottom: 8px;
}

/* MAP */
iframe {
  width: 100%;
  height: 250px;
  border: none;
}

/* FORM */
.form-card {
  background: #fff;
  padding: 20px;
  border-radius: 6px;
}
.form-card input,
.form-card textarea,
.form-card select {
  width: 100%;
  padding: 10px;
  margin-bottom: 10px;
  border: 1px solid #ccc;
}
.form-card textarea {
  resize: none;
  height: 80px;
}
.checkbox {
  font-size: 12px;
  display: flex;
  gap: 6px;
  margin-bottom: 10px;
}
.captcha {
  border: 1px solid #ccc;
  padding: 10px;
  margin-bottom: 10px;
  font-size: 12px;
}
.submit {
  width: 100%;
  padding: 12px;
  background: #0033aa;
  color: #fff;
  border: none;
  cursor: pointer;
}

/* ANIMATION */
.reveal {
  opacity: 0;
  transform: translateY(20px);
  transition: 0.6s ease;
}
.reveal.visible {
  opacity: 1;
  transform: none;
}
/* ============================= */
/* RESPONSIVE — PIXEL PERFECT */
/* ============================= */

/* ---------- LARGE TABLETS ---------- */
@media (max-width: 1199px) {
  .content-grid {
    grid-template-columns: 1fr;
  }

  .form-card {
    margin-top: 10px;
  }

  .title-row {
    gap: 20px;
  }
}

/* ---------- TABLETS ---------- */
@media (max-width: 991px) {
  .title-row {
    flex-direction: column;
    align-items: flex-start;
  }

  .price {
    text-align: left;
  }

  .amenities {
    grid-template-columns: repeat(2, 1fr);
  }

  .grid-details {
    grid-template-columns: 1fr;
  }

  .tabs {
    flex-wrap: nowrap;
    overflow-x: auto;
    scrollbar-width: none;
  }

  .tabs::-webkit-scrollbar {
    display: none;
  }

  .tab {
    white-space: nowrap;
    flex-shrink: 0;
  }
}

/* ---------- MOBILE ---------- */
@media (max-width: 767px) {
  .container {
    padding: 14px;
  }

  .title-row h1 {
    font-size: 18px;
    line-height: 1.4;
  }

  .slider {
    border-radius: 4px;
  }

  .nav {
    font-size: 22px;
    padding: 4px 10px;
  }

  .thumbs {
    justify-content: center;
  }

  .thumbs img {
    width: 48px;
  }

  .block {
    padding: 16px;
  }

  .block h2 {
    font-size: 16px;
  }

  .amenities {
    grid-template-columns: 1fr 1fr;
    font-size: 13px;
  }

  iframe {
    height: 220px;
  }

  .form-card h3 {
    font-size: 16px;
  }

  .submit {
    padding: 14px;
    font-size: 14px;
  }
}

/* ---------- SMALL MOBILE ---------- */
@media (max-width: 480px) {
  .amenities {
    grid-template-columns: 1fr;
  }

  .title-row h1 {
    font-size: 16px;
  }

  .price strong {
    font-size: 18px;
  }
}