/* ===========================
   PROJECTS LISTING PAGE
=========================== */

.listing-hero{
padding:160px 6% 40px;
text-align:center;
}

.listing-filters{
padding:0 6% 40px;
display:flex;
justify-content:center;
}

.listing-filters form{
display:flex;
align-items:flex-end;
gap:20px;
flex-wrap:wrap;
background:#fff;
padding:20px 26px;
border-radius:16px;
box-shadow:0 15px 40px rgba(0,0,0,.08);
}

.listing-filters .search-field{
display:flex;
flex-direction:column;
gap:6px;
}

.listing-filters label{
font-size:12px;
font-weight:600;
color:#777;
text-transform:uppercase;
letter-spacing:1px;
}

.listing-filters select{
padding:10px 14px;
border:1px solid #ddd;
border-radius:8px;
font-family:inherit;
font-size:14px;
min-width:190px;
}

.listing-filters .clear-filters{
color:#C89D43;
font-weight:600;
font-size:14px;
align-self:center;
}

.listing-grid-section{
padding:20px 6% 100px;
}

.listing-empty{
text-align:center;
color:#777;
padding:60px 0;
font-size:16px;
}

.listing-grid{
display:grid;
grid-template-columns:repeat(3, 1fr);
gap:30px;
}

.listing-grid .project-card .project-image{
position:relative;
}

.listing-badge{
position:absolute;
top:14px;
left:14px;
background:#C89D43;
color:#fff;
font-size:12px;
font-weight:600;
padding:6px 14px;
border-radius:999px;
letter-spacing:.5px;
}

@media(max-width:991px){
.listing-grid{
grid-template-columns:1fr;
}
.listing-hero{
padding:140px 6% 30px;
}
}

/* ===========================
   PROJECT DETAIL PAGE
=========================== */

.not-found{
padding:200px 6% 120px;
text-align:center;
}

.not-found h2{
font-family:'Playfair Display',serif;
font-size:36px;
color:#1C3155;
margin-bottom:14px;
}

.not-found p{
color:#777;
margin-bottom:30px;
}

.pd-hero{
margin-top:0;
min-height:520px;
background-size:cover;
background-position:center;
display:flex;
align-items:flex-end;
padding:150px 6% 60px;
}

.pd-hero-content{
color:#fff;
max-width:700px;
}

.pd-tag{
display:inline-block;
background:#C89D43;
padding:7px 18px;
border-radius:999px;
font-size:13px;
font-weight:600;
letter-spacing:1px;
margin-bottom:16px;
}

.pd-hero-content h1{
font-family:'Playfair Display',serif;
font-size:48px;
margin-bottom:10px;
}

.pd-hero-content p{
font-size:16px;
opacity:.9;
margin-bottom:26px;
}

.pd-hero-content p i{
color:#D6B15E;
margin-right:6px;
}

.pd-hero-buttons{
display:flex;
gap:16px;
flex-wrap:wrap;
}

.btn-outline-white{
display:inline-flex;
align-items:center;
gap:10px;
border:2px solid #fff;
color:#fff;
padding:14px 28px;
border-radius:50px;
font-weight:600;
transition:.3s;
}

.btn-outline-white:hover{
background:#fff;
color:#1C3155;
}

.pd-facts{
display:flex;
flex-wrap:wrap;
justify-content:center;
gap:0;
background:#fff;
box-shadow:0 15px 40px rgba(0,0,0,.08);
margin:0 6%;
transform:translateY(-40px);
border-radius:16px;
position:relative;
z-index:5;
}

.pd-fact{
flex:1;
min-width:150px;
text-align:center;
padding:26px 16px;
border-right:1px solid #eee;
}

.pd-fact:last-child{
border-right:none;
}

.pd-fact span{
display:block;
font-size:12px;
color:#888;
text-transform:uppercase;
letter-spacing:1px;
margin-bottom:8px;
}

.pd-fact strong{
font-size:18px;
color:#1C3155;
font-family:'Playfair Display',serif;
}

.pd-section{
padding:60px 6% 20px;
max-width:1200px;
margin:0 auto;
}

.pd-section-alt{
background:#F9F7F2;
max-width:none;
padding:60px 6%;
}

.pd-section-alt > *{
max-width:1200px;
margin-left:auto;
margin-right:auto;
}

.pd-description{
font-size:15px;
line-height:1.9;
color:#555;
max-width:900px;
margin-bottom:26px;
}

.pd-highlights{
list-style:none;
display:grid;
grid-template-columns:repeat(2, 1fr);
gap:14px 30px;
max-width:900px;
}

.pd-highlights li{
font-size:14px;
color:#333;
}

.pd-highlights i{
color:#C89D43;
margin-right:8px;
}

.pd-config-table{
overflow-x:auto;
border-radius:14px;
box-shadow:0 15px 40px rgba(0,0,0,.06);
background:#fff;
}

.pd-config-table table{
width:100%;
border-collapse:collapse;
}

.pd-config-table th,
.pd-config-table td{
padding:16px 22px;
text-align:left;
font-size:14px;
border-bottom:1px solid #eee;
}

.pd-config-table th{
background:#1C3155;
color:#fff;
font-weight:600;
text-transform:uppercase;
font-size:12px;
letter-spacing:.5px;
}

.pd-config-table tbody tr:last-child td{
border-bottom:none;
}

.pd-payment-plan{
margin-top:18px;
font-size:14px;
color:#555;
}

.pd-payment-plan i{
color:#C89D43;
margin-right:8px;
}

.pd-amenities-grid{
display:grid;
grid-template-columns:repeat(auto-fill, minmax(220px, 1fr));
gap:16px;
}

.pd-amenity{
background:#fff;
padding:18px 20px;
border-radius:12px;
box-shadow:0 10px 25px rgba(0,0,0,.05);
font-size:14px;
color:#333;
}

.pd-amenity i{
color:#C89D43;
margin-right:10px;
}

.pd-gallery-grid{
display:grid;
grid-template-columns:repeat(3, 1fr);
gap:18px;
}

.pd-gallery-item{
border-radius:14px;
overflow:hidden;
height:220px;
}

.pd-gallery-item img{
width:100%;
height:100%;
object-fit:cover;
transition:.5s;
}

.pd-gallery-item:hover img{
transform:scale(1.06);
}

.pd-meta-strip{
display:flex;
gap:30px;
flex-wrap:wrap;
font-size:14px;
color:#555;
margin-bottom:14px;
}

.pd-meta-strip strong{
color:#1C3155;
}

.pd-disclaimer{
font-size:12px;
color:#999;
}

@media(max-width:991px){
.pd-hero{
padding:130px 6% 50px;
min-height:420px;
}
.pd-hero-content h1{
font-size:34px;
}
.pd-facts{
transform:translateY(-20px);
}
.pd-fact{
border-right:none;
border-bottom:1px solid #eee;
min-width:50%;
}
.pd-highlights{
grid-template-columns:1fr;
}
.pd-gallery-grid{
grid-template-columns:1fr 1fr;
}
}

@media(max-width:600px){
.pd-gallery-grid{
grid-template-columns:1fr;
}
}
