/* =========================
   CPD – Reference UI Style
   Paste full file
========================= */

/* Base */
.cpd-wrap, .cpd-wrap * { box-sizing: border-box !important; }
.cpd-wrap {
  max-width: 1220px !important;
  margin: 0 auto !important;
  padding: 18px !important;
}

.cpd-wrap img { max-width: 100% !important; height: auto !important; display: block !important; }
.cpd-wrap a { text-decoration: none !important; }

/* Layout */
.cpd-main.cpd-two-col {
  display: grid !important;
  grid-template-columns: 1fr 380px !important;
  gap: 18px !important;
  align-items: start !important;
  margin-top:30px;
}
.cpd-content p{
    margin-bottom:20px !important;
}
.cpd-media-preview{display:flex;flex-wrap:wrap;gap:10px;margin-top:10px}
.cpd-media-preview .cpd-thumb-admin{width:72px;height:72px;border:1px solid #ddd;border-radius:8px;overflow:hidden;background:#fafafa}
.cpd-media-preview .cpd-thumb-admin img{width:100%;height:100%;object-fit:cover;display:block}


.cpd-video {
  position: relative;
  max-width: 100%;
  margin: 12px 0;
}

.cpd-video iframe,
.cpd-video video {
  width: 100%;
  height: 420px;
  border-radius: 10px;
}

@media (max-width: 992px) {
  .cpd-main.cpd-two-col { grid-template-columns: 1fr !important; }
  .cpd-right { order: 2 !important; }
}

/* Card style (like screenshot) */
.cpd-card {
  background: #fff !important;
  border: 1px solid #e9edf3 !important;
  border-radius: 14px !important;
  padding: 18px !important;
  box-shadow: 0 6px 20px rgba(16, 24, 40, 0.06) !important;
   margin-bottom: 20px !important;
}

/* HERO (title + price) */
.cpd-hero {
  display: flex !important;
  justify-content: space-between !important;
  align-items: flex-start !important;
  gap: 14px !important;
  padding: 18px !important;
  border-radius: 14px !important;
  background: #fff !important;
  border: 1px solid #e9edf3 !important;
  box-shadow: 0 6px 20px rgba(16, 24, 40, 0.06) !important;
  margin-bottom: 30px;
}
@media (max-width: 720px) {
  .cpd-hero { flex-direction: column !important; }
  .cpd-hero-right { text-align: left !important; }
}

.cpd-title { margin: 0 !important; font-size: 28px !important; line-height: 1.2 !important; font-weight: 800 !important; color: #0b1220 !important; }
.cpd-sub { margin-top: 6px !important; color: #667085 !important; font-size: 14px !important; }

.cpd-hero-right { text-align: right !important; min-width: 260px !important; }
.cpd-price { font-size: 18px !important; font-weight: 800 !important; color: #0b1220 !important; }
.cpd-meta { margin-top: 8px !important; display: flex !important; gap: 10px !important; justify-content: flex-end !important; flex-wrap: wrap !important; }
.cpd-meta span {
  font-size: 12px !important;
  color: #667085 !important;
  border: 1px solid #e9edf3 !important;
  padding: 6px 10px !important;
  border-radius: 999px !important;
  background: #f8fafc !important;
}

/* Gallery */
.cpd-gallery { margin-top: 16px !important;margin-bottom:50px !important; }
.cpd-gallery-main {
  border-radius: 14px !important;
  overflow: hidden !important;
  border: 1px solid #e9edf3 !important;
  background: #f8fafc !important;
  box-shadow: 0 6px 20px rgba(16, 24, 40, 0.06) !important;
}
.cpd-gallery-main img { width: 100% !important; display: block !important; }

.cpd-gallery-thumbs { display: flex !important; gap: 10px !important; flex-wrap: wrap !important; margin-top: 10px !important; }
.cpd-thumb {
  border: 1px solid #e9edf3 !important;
  border-radius: 12px !important;
  overflow: hidden !important;
  background: #fff !important;
  cursor: pointer !important;
  padding: 0 !important;
  box-shadow: 0 4px 14px rgba(16, 24, 40, 0.06) !important;
}
.cpd-thumb img { width: 78px !important; height: 78px !important; object-fit: cover !important; display: block !important; }

/* Sticky Tabs (inner header) */
.cpd-tabs {
  position: sticky !important;
  top: 0 !important; /* change if your header height differs */
  z-index: 9999 !important;
  margin-top: 14px !important;
}

.cpd-amenities-admin-preview{display:flex;flex-wrap:wrap;gap:10px;margin-top:12px}
.cpd-am-admin-item{width:150px;border:1px solid #ddd;border-radius:10px;padding:10px;background:#fff;text-align:center}
.cpd-am-admin-thumb{width:54px;height:54px;margin:0 auto 8px;border:1px solid #eee;border-radius:8px;overflow:hidden;display:flex;align-items:center;justify-content:center;background:#fafafa}
.cpd-am-admin-thumb img{width:100%;height:100%;object-fit:cover;display:block}
.cpd-am-admin-label{font-size:12px;font-weight:600;color:#333;margin-bottom:6px}


.cpd-amenities-tiles{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
}
.cpd-amenity-tile{
  width:140px;
  border:1px solid #e9edf3;
  border-radius:12px;
  background:#fff;
  padding:10px 10px 12px;
  text-align:center;
  box-shadow:0 6px 18px rgba(16,24,40,0.06);
}
.cpd-amenity-icon{
  width:54px;
  height:54px;
  margin:0 auto 8px;
  border:1px solid #edf1f6;
  border-radius:10px;
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;
  background:#f8fafc;
}
.cpd-amenity-icon img{
  width:100%;
  height:100%;
  object-fit:contain;
  padding:6px;
  display:block;
}
.cpd-amenity-label{
  font-size:12px;
  font-weight:700;
  color:#101828;
  line-height:1.2;
}

@media (max-width: 992px) { .cpd-tabs { top: 74px !important; } }

.cpd-tabs-inner {
  display: flex !important;
  gap: 10px !important;
  flex-wrap: wrap !important;
  padding: 13px 10px!important;
  background: #fff !important;
  border: 1px solid #e9edf3 !important;
  border-radius: 14px !important;
  box-shadow: 0 8px 24px rgba(16, 24, 40, 0.08) !important;
}

.cpd-tab {
  display: inline-flex !important;
  align-items: center !important;
  padding: 9px 12px !important;
  border-radius: 999px !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  color: #0b1220 !important;
  border: 1px solid #e9edf3 !important;
  background: #f8fafc !important;
  transition: all 0.15s ease !important;
}
.cpd-tab:hover { transform: translateY(-1px) !important; }
.cpd-tab.active {
  background: #4a56e2 !important;  /* same feel like your form button */
  border-color: #4a56e2 !important;
  color: #fff !important;
}

/* Section headings */
.cpd-card h2 {
  margin: 0 0 12px !important;
  font-size: 18px !important;
  font-weight: 800 !important;
  color: #0b1220 !important;
 
}
.cpd-muted { color: #667085 !important; }

/* Lists (Amenities / Pros / Cons) */
.cpd-list {
  margin: 0 !important;
  padding-left: 18px !important;
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 8px 16px !important;
}


/* Swiper Gallery */
.cpd-gallery-swiper .cpd-swiper-wrap { margin-top: 14px; }
.cpd-swiper-main {
  border-radius: 14px;
  overflow: hidden;
  border: 1px solid #e9edf3;
  background: #f8fafc;
  box-shadow: 0 6px 20px rgba(16, 24, 40, 0.06);
}
.cpd-swiper-main .swiper-slide img {
  width: 100%;
  height: 520px;
  object-fit: cover;
  display: block;
}



@media (max-width: 768px) {
  .cpd-swiper-main .swiper-slide img { height: 320px; }
}

.cpd-swiper-thumbs {
  margin-top: 10px;
}
.cpd-swiper-thumbs .swiper-slide {
  border-radius: 12px;
  overflow: hidden;
  border: 1px solid #e9edf3;
  opacity: 0.65;
  cursor: pointer;
  background: #fff;
}
.cpd-swiper-thumbs .swiper-slide-thumb-active {
  opacity: 1;
  border-color: #4a56e2;
}
.cpd-swiper-thumbs img {
  width: 100%;
  height: 80px;
  object-fit: cover;
  display: block;
}
@media (max-width: 768px) {
  .cpd-swiper-thumbs img { height: 64px; }
}

/* Navigation arrows */
.cpd-swiper-nav button {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 44px;
  height: 44px;
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,0.35);
  background: rgba(11, 18, 32, 0.35);
  backdrop-filter: blur(6px);
  cursor: pointer;
  z-index: 10;
}
.cpd-swiper-prev { left: 14px; }
.cpd-swiper-next { right: 14px; }
.cpd-swiper-prev::before,
.cpd-swiper-next::before {
  content: "";
  display: block;
  width: 10px; height: 10px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  margin: 0 auto;
}
.cpd-swiper-prev::before { transform: rotate(-135deg); }
.cpd-swiper-next::before { transform: rotate(45deg); }

/* Pagination dots */
.cpd-swiper-pagination .swiper-pagination-bullet {
  opacity: 0.45;
}
.cpd-swiper-pagination .swiper-pagination-bullet-active {
  opacity: 1;
}
@media (max-width: 720px) { .cpd-list { grid-template-columns: 1fr !important; } }
.cpd-list li { color: #101828 !important; }

/* Pros & Cons block */
.cpd-proscons {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 14px !important;
}
@media (max-width: 720px) { .cpd-proscons { grid-template-columns: 1fr !important; } }
.cpd-pc {
  border: 1px solid #e9edf3 !important;
  border-radius: 12px !important;
  padding: 14px !important;
  background: #f8fafc !important;
}
.cpd-pc h3 { margin: 0 0 10px !important; font-size: 15px !important; font-weight: 800 !important; color: #0b1220 !important; }

/* Floor plan grid */
.cpd-media-grid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 12px !important;
}
@media (max-width: 720px) { .cpd-media-grid { grid-template-columns: 1fr !important; } }
.cpd-media {
  display: block !important;
  border: 1px solid #e9edf3 !important;
  border-radius: 14px !important;
  overflow: hidden !important;
  background: #f8fafc !important;
  box-shadow: 0 6px 18px rgba(16, 24, 40, 0.06) !important;
}

/* Map */
.cpd-map {
  margin-top: 10px !important;
  border-radius: 14px !important;
  overflow: hidden !important;
  border: 1px solid #e9edf3 !important;
  box-shadow: 0 6px 18px rgba(16, 24, 40, 0.06) !important;
}
.cpd-map iframe { width: 100% !important; height: 320px !important; border: 0 !important; display: block !important; }

/* Video */
.cpd-video { overflow: hidden !important; border-radius: 14px !important; }
.cpd-video iframe { width: 100% !important; min-height: 340px !important; border: 0 !important; }

/* Right Form Card (like screenshot) */
.cpd-form-card { padding: 18px !important; }
.cpd-form-title { margin: 0 0 14px !important; font-size: 18px !important; font-weight: 900 !important; color: #0b1220 !important; }

.cpd-sticky { position: sticky !important; top: 156px !important; } /* change if needed */
@media (max-width: 992px) { .cpd-sticky { position: static !important; } }

.cpd-form .cpd-field { margin-bottom: 12px !important; }
.cpd-form input,
.cpd-form textarea {
  width: 100% !important;
  padding: 13px 14px !important;
  border: 1px solid #e9edf3 !important;
  border-radius: 12px !important;
  background: #fff !important;
  outline: none !important;
  font-size: 14px !important;
  color: #101828 !important;
  transition: box-shadow 0.15s ease, border-color 0.15s ease !important;
}
.cpd-form textarea { min-height: 140px !important; resize: vertical !important; }

.cpd-form input:focus,
.cpd-form textarea:focus {
  border-color: #4a56e2 !important;
  box-shadow: 0 0 0 4px rgba(74, 86, 226, 0.14) !important;
}

.cpd-btn {
  width: 100% !important;
  padding: 14px !important;
  border: 0 !important;
  border-radius: 12px !important;
  cursor: pointer !important;
  background: #4a56e2 !important;
  color: #fff !important;
  font-weight: 900 !important;
  font-size: 15px !important;
  box-shadow: 0 10px 18px rgba(74, 86, 226, 0.25) !important;
  transition: transform 0.15s ease, box-shadow 0.15s ease !important;
}
.cpd-btn:hover { transform: translateY(-1px) !important; box-shadow: 0 14px 24px rgba(74, 86, 226, 0.30) !important; }

.cpd-form-status { margin-top: 10px !important; font-size: 13px !important; }
.cpd-form-status.is-error { color: #b42318 !important; }
.cpd-form-status.is-success { color: #067647 !important; }

/* Small spacing tweaks */
.cpd-left { display: flex !important; flex-direction: column !important; gap: 14px !important; }
.cpd-clean-body { background: #f3f5f9 !important; }