/* Vision Realty Projects — single project page styles */

.vrp-container{max-width:1160px;margin:0 auto;padding:0 32px;}
.vrp-hero,.vrp-section,.vrp-cta-strip{
  font-family:'Poppins',-apple-system,BlinkMacSystemFont,sans-serif;
  --green-900:#122d24;--green-800:#1c4436;--green-700:#24523f;
  --gold-500:#c9a03e;--gold-400:#dcb95a;--gold-100:#f3e6bf;
  --cream-100:#f6f2e7;--ink-900:#1a2420;--ink-600:#4d5a54;--ink-400:#7c8a83;--white:#fff;
  --shadow-card:0 12px 30px -14px rgba(18,45,36,.35);--ease:cubic-bezier(.4,0,.2,1);
}
.vrp-hero *,.vrp-section *,.vrp-cta-strip *{box-sizing:border-box;}
.vrp-hero h1,.vrp-section h2,.vrp-highlight-item h4{
  font-family:'Fraunces',Georgia,serif;margin:0 0 .5em;line-height:1.15;color:var(--green-900);font-weight:600;
}
.vrp-eyebrow{font-size:.75rem;letter-spacing:.16em;text-transform:uppercase;color:var(--gold-500);font-weight:600;margin-bottom:.75rem;display:block;}

/* hero */
.vrp-hero{background:linear-gradient(135deg,var(--green-900) 0%,var(--green-800) 55%,var(--green-700) 100%);color:var(--white);padding:64px 0 0;overflow:hidden;}
.vrp-hero-top{display:flex;justify-content:space-between;align-items:flex-start;gap:32px;flex-wrap:wrap;padding-bottom:40px;}
.vrp-badges{display:flex;gap:10px;margin-bottom:1rem;flex-wrap:wrap;}
.vrp-badge{font-size:.72rem;letter-spacing:.05em;text-transform:uppercase;font-weight:700;padding:7px 14px;}
.vrp-badge.gold{background:var(--gold-500);color:var(--green-900) !important;}
.vrp-badge.outline{border:1px solid rgba(255,255,255,.4);color:var(--white) !important;}
.vrp-hero h1{color:var(--white) !important;font-size:clamp(2.2rem,4.5vw,3.4rem);margin-bottom:.2em;}
.vrp-loc{color:rgba(255,255,255,.8) !important;font-size:1.02rem;display:flex;align-items:center;gap:8px;}
.vrp-price-box{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.18);padding:22px 28px;min-width:230px;}
.vrp-price-box .from{font-size:.75rem;text-transform:uppercase;letter-spacing:.08em;color:rgba(255,255,255,.65) !important;margin-bottom:.3em;}
.vrp-price-box .amt{font-family:'Fraunces',Georgia,serif;font-size:1.9rem;font-weight:600;color:var(--white) !important;}
.vrp-price-box .amt small{font-size:.8rem;font-weight:400;color:rgba(255,255,255,.6) !important;}

.vrp-hero-gallery{display:grid;grid-template-columns:2fr 1fr 1fr;gap:6px;}
.vrp-hero-gallery img{width:100%;height:280px;object-fit:cover;}
.vrp-stack{display:grid;grid-template-rows:1fr 1fr;gap:6px;}
.vrp-stack img{height:137px;}

/* facts */
.vrp-fact-strip{background:var(--white);box-shadow:var(--shadow-card);margin-top:-30px;position:relative;z-index:5;display:grid;grid-template-columns:repeat(4,1fr);}
.vrp-fact-strip div{padding:26px 20px;text-align:center;border-right:1px solid var(--cream-100);}
.vrp-fact-strip div:last-child{border-right:none;}
.vrp-fact-strip b{display:block;font-family:'Fraunces',Georgia,serif;font-size:1.6rem;color:var(--green-800);margin-bottom:.15em;}
.vrp-fact-strip span{font-size:.75rem;color:var(--ink-400);text-transform:uppercase;letter-spacing:.06em;}

/* sections */
.vrp-section{padding:70px 0;}
.vrp-section-alt{background:var(--cream-100);}
.vrp-section-head{max-width:640px;margin-bottom:36px;}

/* config table */
.vrp-config-table{width:100%;border-collapse:collapse;background:var(--white);box-shadow:var(--shadow-card);}
.vrp-config-table th,.vrp-config-table td{padding:18px 24px;text-align:left;border-bottom:1px solid var(--cream-100);}
.vrp-config-table thead th{background:var(--green-900);color:var(--white);font-weight:500;font-size:.8rem;text-transform:uppercase;letter-spacing:.05em;}
.vrp-config-table tbody tr:last-child td{border-bottom:none;}
.vrp-config-table td.config-name{font-family:'Fraunces',Georgia,serif;font-weight:600;color:var(--green-800);font-size:1.05rem;}
.vrp-config-table td.price{font-family:'Fraunces',Georgia,serif;font-weight:600;color:var(--gold-500);font-size:1.05rem;}

/* highlights */
.vrp-highlight-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;}
.vrp-highlight-item{background:var(--white);box-shadow:var(--shadow-card);padding:24px 26px;display:flex;gap:16px;align-items:flex-start;}
.vrp-highlight-item .num{font-family:'Fraunces',Georgia,serif;font-size:1.4rem;color:var(--gold-500);font-weight:600;flex-shrink:0;}
.vrp-highlight-item h4{font-size:1.02rem;margin-bottom:.3em;}
.vrp-highlight-item p{color:var(--ink-600);font-size:.9rem;margin:0;}

/* gallery */
.vrp-gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;}
.vrp-gallery-grid img{width:100%;aspect-ratio:4/3;object-fit:cover;box-shadow:var(--shadow-card);}

/* CTA */
.vrp-cta-strip{background:var(--green-900);color:var(--white);padding:60px 0;text-align:center;}
.vrp-cta-strip h2{color:var(--white) !important;}
.vrp-cta-strip p{color:rgba(255,255,255,.72) !important;max-width:520px;margin:0 auto 24px;}
.vrp-cta-row{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;}
.vrp-btn-gold{background:var(--gold-500);color:var(--green-900);padding:12px 26px;font-weight:600;font-size:.86rem;text-decoration:none;border:none;cursor:pointer;font-family:inherit;}
.vrp-btn-gold:hover{background:var(--gold-400);}
.vrp-btn-outline{border:1px solid rgba(255,255,255,.4);background:transparent;color:var(--white);padding:12px 26px;font-weight:600;font-size:.86rem;cursor:pointer;font-family:inherit;}
.vrp-btn-outline:hover{border-color:var(--gold-400);color:var(--gold-400);}

@media (max-width:900px){
  .vrp-hero-gallery{grid-template-columns:1fr;}
  .vrp-stack{grid-template-rows:1fr 1fr;}
  .vrp-fact-strip{grid-template-columns:repeat(2,1fr);}
  .vrp-highlight-grid{grid-template-columns:1fr;}
  .vrp-gallery-grid{grid-template-columns:1fr 1fr;}
}
@media (max-width:560px){
  .vrp-gallery-grid{grid-template-columns:1fr;}
  .vrp-config-table{font-size:.85rem;}
  .vrp-config-table th,.vrp-config-table td{padding:12px 14px;}
}
