/* ================================================================
   DS Urban Nest – Property Plugin CSS  v3
   Card: border + proper fonts/spacing
   Detail: overlap fixed, amenity icon no red, clean layout
================================================================ */

/* ══ GRID WIDGET ════════════════════════════════════════════════ */
.dspg-wrap { padding: 100px 0; background: #fff; }
.dspg-rule { display:block; width:44px; height:3px; background:var(--main-color); margin:14px auto 52px; }

/* CARD BORDER */
.dspg-wrap .property-block_one-inner {
    border: 1px solid rgba(23,27,42,0.09) !important;
    border-radius: 16px !important;
    padding: 12px !important;
    transition: all 500ms ease !important;
}
.dspg-wrap .property-block_one-inner:hover {
    border-color: transparent !important;
    box-shadow: 0 8px 30px rgba(0,0,0,0.10) !important;
    transform: translateY(-3px) !important;
}

/* CARD IMAGE */
.dspg-wrap .property-block_one-image { aspect-ratio:16/11 !important; overflow:hidden !important; border-radius:12px !important; }
.dspg-wrap .property-block_one-image img { width:100% !important; height:100% !important; object-fit:cover !important; transition:all 500ms ease !important; }
.dspg-wrap .property-block_one-inner:hover .property-block_one-image img { transform:scale(1.04) !important; opacity:0.85 !important; }
.dspg-wrap .property-block_one-image:before {
    position:absolute !important; content:'' !important;
    left:0 !important; top:35% !important; bottom:0 !important; right:0 !important; z-index:1 !important;
    background:linear-gradient(to top, rgba(17,20,35,0.92) 0%, rgba(17,20,35,0) 100%) !important;
    border-radius:0 0 12px 12px !important;
}

/* PRICE */
.dspg-wrap .property-block_one-price {
    position:relative !important; z-index:2 !important; color:#fff !important;
    font-size:18px !important; font-weight:700 !important;
    font-family:"Plus Jakarta Sans",sans-serif !important; line-height:1.2 !important;
}
.dspg-wrap .property-block_one-price span { font-size:11px !important; opacity:0.70 !important; margin-left:4px !important; font-weight:400 !important; }

/* STATUS BADGE */
.dspg-wrap .property-block_one-title { font-size:11px !important; font-weight:700 !important; letter-spacing:0.8px !important; padding:4px 14px !important; }

/* CARD CONTENT */
.dspg-wrap .property-block_one-content { padding:16px 14px 14px !important; }
.dspg-wrap .property-block_one-location { font-size:12px !important; font-weight:600 !important; color:var(--main-color) !important; letter-spacing:0.3px !important; gap:5px !important; }
.dspg-wrap .property-block_one-location i { font-family:'Font Awesome 5 Free',FontAwesome !important; font-weight:900 !important; font-size:11px !important; margin-top:2px !important; }
.dspg-wrap .property-block_one-heading { margin-top:6px !important; font-size:15px !important; font-weight:700 !important; line-height:1.3 !important; letter-spacing:0.3px !important; }
.dspg-wrap .property-block_one-heading a { color:var(--color-two) !important; font-family:"Plus Jakarta Sans",sans-serif !important; }
.dspg-wrap .property-block_one-heading a:hover { color:var(--main-color) !important; }

/* BHK INFO */
.dspg-wrap .property-block_one-info {
    display:flex !important; flex-wrap:wrap !important; gap:2px !important;
    margin-top:10px !important; margin-bottom:12px !important; padding:10px 0 !important;
    border-top:1px solid rgba(23,27,42,0.07) !important; border-bottom:1px solid rgba(23,27,42,0.07) !important;
}
.dspg-wrap .property-block_one-info li { font-size:11px !important; font-weight:500 !important; color:rgba(23,27,42,0.65) !important; padding-right:10px !important; margin-right:10px !important; border-right:1px solid rgba(23,27,42,0.10) !important; line-height:1.3 !important; }
.dspg-wrap .property-block_one-info li:last-child { border-right:none !important; padding-right:0 !important; margin-right:0 !important; }
.dspg-wrap .property-block_one-info li i { font-family:'Font Awesome 5 Free',FontAwesome !important; font-weight:900 !important; font-size:10px !important; margin-right:3px !important; color:var(--main-color) !important; }

/* VIEW LINK */
.dspg-viewlink { display:inline-flex; align-items:center; gap:6px; font-size:11px; font-weight:700; letter-spacing:0.8px; text-transform:uppercase; color:var(--main-color); text-decoration:none; transition:gap 300ms ease; }
.dspg-viewlink:hover { gap:12px; color:var(--main-color); text-decoration:none; }
.dspg-viewlink i { font-family:'Font Awesome 5 Free',FontAwesome !important; font-weight:900 !important; font-size:9px !important; }

@media only screen and (max-width:600px) { .dspg-wrap { padding:60px 0 !important; } }

/* ══ SINGLE DETAIL ══════════════════════════════════════════════ */

/* HERO */
.dsp-hero-banner { position:relative; padding:160px 0 80px; background-color:#17171a; background-size:cover; background-position:center; text-align:center; overflow:hidden; }
.dsp-hero-overlay { position:absolute; inset:0; z-index:0; background:linear-gradient(to bottom, rgba(17,20,35,0.60) 0%, rgba(17,20,35,0.88) 100%); }
.dsp-hero-content { position:relative; z-index:1; }
.dsp-hero-status { display:inline-block; padding:5px 18px; background:var(--main-color); color:#fff; font-size:11px; font-weight:700; letter-spacing:1.5px; text-transform:uppercase; border-radius:50px; margin-bottom:14px; }
.dsp-hero-title { font-size:40px; font-weight:700; color:#fff !important; text-transform:uppercase; letter-spacing:0.8px; line-height:1.15; margin:0 0 16px; font-family:"Plus Jakarta Sans",sans-serif; }
.dsp-hero-crumb { display:inline-flex !important; justify-content:center; }
.dsp-hero-crumb li, .dsp-hero-crumb li:before { color:rgba(255,255,255,0.55) !important; font-size:13px !important; }
.dsp-hero-crumb li a { color:rgba(255,255,255,0.55) !important; }
.dsp-hero-crumb li a:hover { color:var(--main-color) !important; }
.dsp-hero-crumb li:last-child { color:var(--main-color) !important; }

/* OVERLAP FIX */
.dsp-hero-banner + .sidebar-page-container { padding-top:50px !important; }

/* DETAIL INNER */
.sidebar-page-container .property-detail_inner { background:#f9f9f9 !important; padding:16px !important; border-radius:12px !important; border:1px solid rgba(23,27,42,0.07) !important; }
.sidebar-page-container .property-detail_image { border-radius:10px !important; overflow:hidden !important; margin-bottom:0 !important; }
.sidebar-page-container .property-detail_image img { width:100% !important; display:block !important; border-radius:10px !important; height:auto !important; }

/* DETAIL FONTS */
.sidebar-page-container .property-detail_location { font-size:14px !important; font-weight:600 !important; color:var(--main-color) !important; display:flex !important; align-items:center !important; gap:6px !important; margin-top:20px !important; margin-bottom:6px !important; }
.sidebar-page-container .property-detail_heading { font-size:26px !important; font-weight:700 !important; color:var(--color-two) !important; text-transform:uppercase !important; letter-spacing:0.4px !important; margin-top:8px !important; margin-bottom:16px !important; line-height:1.2 !important; font-family:"Plus Jakarta Sans",sans-serif !important; }
.sidebar-page-container .property-detail_subheading { font-size:16px !important; font-weight:700 !important; color:var(--color-two) !important; text-transform:uppercase !important; letter-spacing:0.5px !important; margin-top:32px !important; margin-bottom:16px !important; padding-bottom:10px !important; border-bottom:2px solid rgba(23,27,42,0.07) !important; font-family:"Plus Jakarta Sans",sans-serif !important; }
.sidebar-page-container .property-detail p { font-size:15px !important; line-height:1.80 !important; color:rgba(23,27,42,0.65) !important; margin-top:10px !important; }

/* PRICE BAND */
.dsp-price-band { display:inline-block; background:#fff; border:1px solid rgba(23,27,42,0.08); border-left:3px solid var(--main-color); border-radius:0 8px 8px 0; padding:10px 18px; margin:10px 0 18px; }
.dsp-price-lbl { display:block; font-size:9px; letter-spacing:1.5px; text-transform:uppercase; color:rgba(23,27,42,0.45); margin-bottom:3px; }
.dsp-price-val { font-size:20px; font-weight:700; color:var(--main-color); font-family:"Plus Jakarta Sans",sans-serif; }
.dsp-price-val small { font-size:12px; font-weight:500; color:rgba(23,27,42,0.50); margin-left:5px; }

/* BHK CONFIG TABLE */
.sidebar-page-container .propert-info { border-radius:10px !important; padding:20px 22px !important; margin-bottom:4px !important; background:#fff !important; border:1px solid rgba(23,27,42,0.08) !important; box-shadow:none !important; }
.sidebar-page-container .propert-info:before { display:none !important; }
.sidebar-page-container .propert-info_list li { font-size:14px !important; margin-bottom:14px !important; color:rgba(23,27,42,0.55) !important; font-weight:500 !important; }
.sidebar-page-container .propert-info_list li span { color:#17171a !important; font-weight:600 !important; }
.dsp-config-price-row { color:var(--main-color) !important; font-weight:700 !important; }
.dsp-config-price-row span { color:var(--main-color) !important; }

/* FLOOR PLANS */
.dsp-floors-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:16px; margin-bottom:4px; }
.dsp-floors-grid .property-block_two-inner { border:1px solid rgba(23,27,42,0.08) !important; border-radius:10px !important; padding:18px !important; }
.dsp-floors-grid .property-block_two-title { font-size:15px !important; font-weight:700 !important; color:var(--color-two) !important; margin-top:0 !important; }
.dsp-floors-grid .property-block_two-text { font-size:17px !important; font-weight:700 !important; color:var(--main-color) !important; margin-top:8px !important; }
.dsp-floor-img-wrap { background:#f5f5f5; border-radius:8px; overflow:hidden; aspect-ratio:4/3; display:flex; align-items:center; justify-content:center; margin-bottom:12px; }
.dsp-floor-img-wrap img { max-width:100%; max-height:100%; object-fit:contain; }
.dsp-floor-img-placeholder { height:130px; background:#f5f5f5; border-radius:8px; display:flex; align-items:center; justify-content:center; color:rgba(23,27,42,0.15); font-size:28px; margin-bottom:12px; }
.dsp-floor-sub { font-size:11px; color:rgba(23,27,42,0.50); margin:3px 0 6px; }
.dsp-floor-tags { margin:6px 0 10px; }
.dsp-avail-tag { font-size:10px; font-weight:700; color:var(--main-color); text-transform:uppercase; letter-spacing:1px; margin-right:6px; }
.dsp-poss-tag { font-size:11px; color:rgba(23,27,42,0.45); }
.dsp-floor-cta { display:inline-flex; align-items:center; gap:5px; font-size:12px; font-weight:600; color:var(--main-color); text-decoration:none; transition:gap 300ms ease; margin-top:4px; }
.dsp-floor-cta:hover { gap:10px; }
.dsp-floor-cta i { font-family:'Font Awesome 5 Free',FontAwesome !important; font-weight:900 !important; font-size:9px; }

/* GALLERY */
.dsp-gallery-grid { display:grid !important; grid-template-columns:repeat(3,1fr) !important; gap:10px !important; margin-bottom:4px; padding:0 !important; background:none !important; box-shadow:none !important; border-radius:0 !important; }
.dsp-gal-item { display:block; aspect-ratio:4/3; overflow:hidden; border-radius:8px; background:#f0ece6; border:1px solid rgba(23,27,42,0.07); }
.dsp-gal-item img { width:100%; height:100%; object-fit:cover; transition:transform 500ms ease; }
.dsp-gal-item:hover img { transform:scale(1.05); }

/* AMENITIES — NO RED — hardcoded gold */
.dsp-amenities-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:10px; margin-bottom:4px; }
.dsp-amenity-item { display:flex; align-items:center; gap:10px; background:#fff; border:1px solid rgba(23,27,42,0.08); border-radius:10px; padding:12px 14px; transition:all 400ms ease; }
.dsp-amenity-item:hover { box-shadow:0 4px 16px rgba(0,0,0,0.07); border-color:transparent; }
.dsp-am-icon { width:38px; height:38px; border-radius:8px; flex-shrink:0; background:#f0e8d0; display:flex; align-items:center; justify-content:center; }
.dsp-am-icon i { color:#b08c3c; font-size:15px; font-family:'Font Awesome 5 Free','Font Awesome 6 Free',FontAwesome !important; font-weight:900 !important; line-height:1; }
.dsp-am-name { font-size:13px; font-weight:600; color:#17171a; line-height:1.3; }

/* MAP + VIDEO */
.dsp-map-wrap { border-radius:10px; overflow:hidden; margin-bottom:4px; border:1px solid rgba(23,27,42,0.08); }
.dsp-video-wrap { aspect-ratio:16/9; border-radius:10px; overflow:hidden; margin-bottom:4px; box-shadow:0 6px 24px rgba(0,0,0,0.08); }
.dsp-video-wrap iframe, .dsp-video-wrap video { width:100%; height:100%; border:0; display:block; }
.dsp-custom-html { margin-bottom:4px; }

/* SIDEBAR */
.dsp-sidebar-box { background:#f9f9f9; border-radius:12px; padding:22px 20px; margin-bottom:18px; border:1px solid rgba(23,27,42,0.08); }
.dsp-sidebar-title { font-size:13px; font-weight:700; color:var(--color-two); text-transform:uppercase; letter-spacing:0.8px; margin:0 0 14px; padding-bottom:11px; border-bottom:1px solid rgba(23,27,42,0.08); font-family:"Plus Jakarta Sans",sans-serif; }
.dsp-sidebar-sub { font-size:14px; color:rgba(23,27,42,0.62); line-height:1.65; margin:0 0 14px; }
.dsp-sidebar-call { display:flex; align-items:center; justify-content:center; gap:8px; width:100%; padding:12px; border:1px solid rgba(23,27,42,0.12); border-radius:8px; font-size:13px; font-weight:600; color:var(--color-two); text-decoration:none; transition:all 300ms ease; }
.dsp-sidebar-call:hover { background:var(--color-two); color:#fff; }
.dsp-info-list { list-style:none; padding:0; margin:0; }
.dsp-info-list li { display:flex; justify-content:space-between; align-items:flex-start; padding:8px 0; border-bottom:1px solid rgba(23,27,42,0.06); font-size:13px; }
.dsp-info-list li:last-child { border-bottom:none; }
.dsp-info-lbl { color:rgba(23,27,42,0.50); font-weight:500; flex-shrink:0; margin-right:10px; }
.dsp-info-val { color:#17171a; font-weight:600; text-align:right; word-break:break-word; max-width:58%; }
.dsp-nearby-list { list-style:none; padding:0; margin:0; }
.dsp-nearby-list li { padding:7px 0; border-bottom:1px dashed rgba(23,27,42,0.08); font-size:13px; color:rgba(23,27,42,0.68); display:flex; align-items:flex-start; gap:8px; line-height:1.5; }
.dsp-nearby-list li:last-child { border-bottom:none; }
.dsp-nearby-list li i { font-family:'Font Awesome 5 Free',FontAwesome !important; font-weight:900 !important; font-size:11px; color:var(--main-color); margin-top:2px; flex-shrink:0; }

/* RESPONSIVE */
@media only screen and (max-width:1024px) {
    .dsp-floors-grid { grid-template-columns:repeat(2,1fr); }
    .dsp-amenities-grid { grid-template-columns:repeat(2,1fr); }
    .dsp-gallery-grid { grid-template-columns:repeat(2,1fr)!important; }
}
@media only screen and (max-width:767px) {
    .dsp-hero-banner { padding:120px 0 60px; }
    .dsp-hero-title { font-size:24px !important; }
    .dsp-hero-banner + .sidebar-page-container { padding-top:30px !important; }
    .dsp-floors-grid { grid-template-columns:1fr; }
    .dsp-amenities-grid { grid-template-columns:1fr 1fr; gap:8px; }
    .dsp-gallery-grid { grid-template-columns:1fr 1fr!important; }
    .sidebar-page-container .property-detail_heading { font-size:20px !important; }
}
@media only screen and (max-width:480px) {
    .dsp-amenities-grid { grid-template-columns:1fr; }
    .dsp-gallery-grid { grid-template-columns:1fr!important; }
}
