/* RHB Properties — Brand System v1.2
   Primary: #022c6d navy | Gold: #c9a227 | Font: Jost */
:root{
  --rhb-primary:#022c6d;
  --rhb-primary-light:#0a3f8f;
  --rhb-deep:#011c47;
  --rhb-dark2:#0d2547;
  --rhb-gold:#c9a227;
  --rhb-gold-light:#dcb52f;
  --rhb-muted:#8fa0c4;
  --rhb-line:#1c3a6b;
}

#rhb-prop{font-family:'Jost',sans-serif;color:#1c1f26;background:#fff;}
#rhb-prop, #rhb-prop *{box-sizing:border-box;font-family:'Jost',sans-serif;}
#rhb-prop a{text-decoration:none;}
#rhb-prop .wrap{max-width:1180px;margin:0 auto;padding:0 20px;}

/* Full-bleed helper: spans the whole viewport even inside a theme container */
#rhb-prop .rhb-full{width:100vw;position:relative;left:50%;right:50%;margin-left:-50vw;margin-right:-50vw;}

/* ---- HERO ---- */
#rhb-prop .hero{background:linear-gradient(135deg,var(--rhb-deep) 0%,var(--rhb-primary) 70%,#0a3f8f 100%);color:#fff;padding:clamp(40px,7vw,68px) 0 clamp(32px,5vw,52px);}
#rhb-prop .eyebrow{color:var(--rhb-gold-light);letter-spacing:2px;text-transform:uppercase;font-size:clamp(11px,1.6vw,12.5px);font-weight:600;margin-bottom:14px;display:flex;align-items:center;gap:8px;}
#rhb-prop .eyebrow .dot{width:6px;height:6px;background:var(--rhb-gold-light);border-radius:50%;display:inline-block;}
#rhb-prop .hero h1{font-size:clamp(25px,4.5vw,40px);font-weight:700;line-height:1.22;margin:0 0 10px;max-width:840px;color:#fff !important;word-wrap:break-word;}
#rhb-prop .hero .addr{color:var(--rhb-muted);font-size:clamp(14px,2vw,16px);margin-bottom:22px;}
#rhb-prop .hero .price-row{display:flex;align-items:center;gap:14px;flex-wrap:wrap;}
#rhb-prop .hero .price{font-size:clamp(26px,4vw,34px);font-weight:700;color:var(--rhb-gold-light);}
#rhb-prop .hero .tag{background:rgba(220,181,47,.16);border:1px solid var(--rhb-gold);color:var(--rhb-gold-light);font-size:11.5px;font-weight:700;letter-spacing:1.2px;text-transform:uppercase;padding:6px 13px;border-radius:5px;}

/* ---- STAT BAR ---- */
#rhb-prop .stats{background:var(--rhb-dark2);border-top:1px solid var(--rhb-line);border-bottom:1px solid var(--rhb-line);}
#rhb-prop .stats-grid{display:grid;grid-template-columns:repeat(4,1fr);}
#rhb-prop .stat{padding:clamp(16px,2.5vw,26px) 14px;text-align:center;border-right:1px solid var(--rhb-line);}
#rhb-prop .stat:last-child{border-right:none;}
#rhb-prop .stat .num{color:#fff;font-size:clamp(15px,2.2vw,21px);font-weight:700;margin-bottom:4px;white-space:nowrap;}
#rhb-prop .stat .label{color:var(--rhb-muted);font-size:clamp(10px,1.4vw,11.5px);text-transform:uppercase;letter-spacing:1px;}

/* ---- PHOTO BLOCK (top of content column) ---- */
#rhb-prop .photo-block{display:flex;flex-direction:column;gap:12px;max-width:520px;margin-bottom:clamp(24px,4vw,34px);}
#rhb-prop .photo-card{position:relative;border-radius:14px;overflow:hidden;background:#eef1f6;aspect-ratio:4/3;box-shadow:0 6px 20px rgba(2,44,109,.1);}
#rhb-prop .photo-card img{width:100%;height:100%;object-fit:cover;display:block;}
#rhb-prop .photo-count{position:absolute;bottom:10px;right:10px;background:rgba(1,28,71,.88);color:#fff;font-size:11.5px;font-weight:600;padding:6px 12px;border-radius:6px;}
#rhb-prop .media-btn{display:flex;align-items:center;justify-content:center;gap:9px;background:var(--rhb-gold);color:var(--rhb-deep) !important;font-weight:700;font-size:13px;letter-spacing:.5px;text-transform:uppercase;padding:14px 18px;border-radius:9px;box-shadow:0 4px 12px rgba(201,162,39,.3);transition:background .15s ease,transform .15s ease,box-shadow .15s ease;}
#rhb-prop .media-btn:hover{background:var(--rhb-gold-light);transform:translateY(-1px);box-shadow:0 6px 16px rgba(201,162,39,.4);}
#rhb-prop .media-btn svg{flex-shrink:0;}

/* ---- MAIN 2-COL ---- */
#rhb-prop .main{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:clamp(24px,4vw,48px);padding:clamp(30px,5vw,52px) 0 clamp(36px,5vw,60px);align-items:start;}
#rhb-prop .section-label{font-size:11.5px;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:var(--rhb-gold);margin-bottom:8px;}
#rhb-prop .content h2{font-size:clamp(20px,3vw,24px);font-weight:600;margin:clamp(26px,4vw,38px) 0 14px;color:var(--rhb-primary) !important;}
#rhb-prop .content > h2:first-of-type{margin-top:0;}
#rhb-prop .content p{line-height:1.75;color:#3c424e;font-size:15.5px;margin:0 0 14px;}
#rhb-prop .map-addr{font-weight:600;color:var(--rhb-primary) !important;}

#rhb-prop .fact-table{width:100%;border-collapse:collapse;margin-top:6px;}
#rhb-prop .fact-table tr{border-bottom:1px solid #e9ecf1;}
#rhb-prop .fact-table tr:nth-child(even){background:#f8fafc;}
#rhb-prop .fact-table td{padding:12px 10px;font-size:14.5px;}
#rhb-prop .fact-table td:first-child{color:#687080;width:44%;}
#rhb-prop .fact-table td:last-child{font-weight:600;color:var(--rhb-primary);}

#rhb-prop .fin-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:14px;}
#rhb-prop .fin-card{background:linear-gradient(135deg,var(--rhb-deep),var(--rhb-primary));border-radius:11px;padding:20px;color:#fff;}
#rhb-prop .fin-card .fin-label{color:var(--rhb-muted);font-size:11px;text-transform:uppercase;letter-spacing:1px;margin-bottom:7px;}
#rhb-prop .fin-card .fin-num{font-size:clamp(18px,2.4vw,22px);font-weight:700;color:var(--rhb-gold-light);}

#rhb-prop .map-embed{border-radius:11px;overflow:hidden;margin-top:14px;border:1px solid #e7e9ee;}
#rhb-prop .map-embed iframe{width:100%;height:clamp(240px,40vw,340px);border:0;display:block;}

/* ---- SIDEBAR ---- */
#rhb-prop .sidebar{position:sticky;top:20px;}
#rhb-prop .agent-card{background:linear-gradient(160deg,var(--rhb-deep),var(--rhb-primary));color:#fff;border-radius:14px;padding:24px;margin-bottom:18px;box-shadow:0 8px 24px rgba(2,44,109,.18);}
#rhb-prop .agent-label{color:var(--rhb-gold-light);font-size:10.5px;font-weight:700;letter-spacing:1.6px;text-transform:uppercase;margin-bottom:10px;}
#rhb-prop .agent-name{font-size:17px;font-weight:700;margin-bottom:2px;}
#rhb-prop .agent-role{color:var(--rhb-muted);font-size:12.5px;margin-bottom:16px;}
#rhb-prop .agent-phone{display:block;color:var(--rhb-gold-light) !important;font-size:20px;font-weight:700;margin-bottom:4px;}
#rhb-prop .agent-email{display:block;color:#c9d4ea !important;font-size:13px;margin-bottom:16px;word-break:break-all;}
#rhb-prop .btn-gold{display:block;text-align:center;background:var(--rhb-gold);color:var(--rhb-deep) !important;font-weight:700;padding:14px 18px;border-radius:8px;font-size:13px;letter-spacing:.6px;text-transform:uppercase;border:none;cursor:pointer;width:100%;transition:background .15s ease,transform .15s ease;}
#rhb-prop .btn-gold:hover{background:var(--rhb-gold-light);transform:translateY(-1px);}
#rhb-prop .btn-outline{display:block;text-align:center;background:transparent;color:#fff !important;font-weight:600;padding:12px 18px;border-radius:8px;font-size:13px;border:1px solid rgba(255,255,255,.28);margin-top:10px;transition:border-color .15s ease;}
#rhb-prop .btn-outline:hover{border-color:var(--rhb-gold);}

#rhb-prop .form-card{background:#f6f8fb;border:1px solid #e7e9ee;border-radius:14px;padding:22px;}
#rhb-prop .form-card h3{font-size:16.5px;font-weight:600;margin:0 0 4px;color:var(--rhb-primary) !important;}
#rhb-prop .form-card p{font-size:12.5px;color:#7c8493;margin:0 0 14px;}
#rhb-prop .form-card input, #rhb-prop .form-card textarea{width:100%;padding:12px 14px;border:1px solid #dcdfe5;border-radius:8px;font-size:14px;margin-bottom:10px;background:#fff;}
#rhb-prop .form-card input:focus, #rhb-prop .form-card textarea:focus{outline:none;border-color:var(--rhb-primary);}
#rhb-prop .form-card textarea{resize:vertical;min-height:76px;}

/* ---- CTA BAND ---- */
#rhb-prop .cta-band{background:linear-gradient(135deg,var(--rhb-gold) 0%,var(--rhb-gold-light) 100%);text-align:center;padding:clamp(40px,6vw,60px) 20px;}
#rhb-prop .cta-eyebrow{color:var(--rhb-deep);letter-spacing:2px;text-transform:uppercase;font-size:11.5px;font-weight:700;margin-bottom:10px;}
#rhb-prop .cta-band h2{font-size:clamp(22px,3.6vw,29px);font-weight:700;margin:0 0 10px;color:var(--rhb-deep) !important;}
#rhb-prop .cta-band p{color:#3a3210;max-width:520px;margin:0 auto 24px;font-size:clamp(14px,1.8vw,15.5px);line-height:1.6;}
#rhb-prop .cta-btn{display:inline-block;width:auto;padding:15px 32px;background:var(--rhb-primary);color:#fff !important;box-shadow:0 4px 14px rgba(1,28,71,.28);}
#rhb-prop .cta-btn:hover{background:var(--rhb-primary-light);}

/* ---- RESPONSIVE ---- */
@media(max-width:960px){
  #rhb-prop .main{grid-template-columns:1fr;}
  #rhb-prop .sidebar{position:static;}
}
@media(max-width:760px){
  #rhb-prop .stats-grid{grid-template-columns:repeat(2,1fr);}
  #rhb-prop .stat{border-bottom:1px solid var(--rhb-line);}
  #rhb-prop .stat:nth-child(2n){border-right:none;}
  #rhb-prop .photo-block{max-width:100%;}
  #rhb-prop .fin-grid{grid-template-columns:1fr;}
}
@media(max-width:420px){
  #rhb-prop .hero .price-row{gap:10px;}
  #rhb-prop .media-btn{font-size:12px;padding:13px 14px;}
}

/* ===================== GRID / ARCHIVE ===================== */
.rhb-grid-wrap{padding:40px 0;}
.rhb-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:24px;}
.rhb-card{background:#fff;border:1px solid #e7e9ee;border-radius:12px;overflow:hidden;transition:transform .15s ease,box-shadow .15s ease;}
.rhb-card:hover{transform:translateY(-3px);box-shadow:0 10px 26px rgba(2,44,109,.12);}
.rhb-card-img{position:relative;height:200px;background:#eceef1;}
.rhb-card-img img{width:100%;height:100%;object-fit:cover;display:block;}
.rhb-card-tag{position:absolute;top:12px;left:12px;background:var(--rhb-primary);color:#fff;font-size:11px;font-weight:700;letter-spacing:1px;text-transform:uppercase;padding:5px 10px;border-radius:4px;}
.rhb-card-body{padding:18px 20px 20px;}
.rhb-card-title{font-size:16px;font-weight:600;color:var(--rhb-primary);margin:0 0 6px;line-height:1.35;}
.rhb-card-addr{font-size:13px;color:#7c8493;margin-bottom:12px;}
.rhb-card-price{font-size:20px;font-weight:700;color:var(--rhb-primary);margin-bottom:12px;}
.rhb-card-meta{display:flex;gap:14px;font-size:12.5px;color:#7c8493;margin-bottom:14px;}
.rhb-card-link{display:block;text-align:center;background:var(--rhb-primary);color:#fff;font-weight:600;font-size:13.5px;padding:11px;border-radius:7px;}
.rhb-card-link:hover{background:var(--rhb-primary-light);}

/* ===================== AREAS (v1.1) ===================== */
.rhb-area, .rhb-areas-grid-wrap{font-family:'Jost',sans-serif;color:#1c1f26;}
.rhb-area *, .rhb-areas-grid-wrap *{box-sizing:border-box;font-family:'Jost',sans-serif;}
.rhb-area a{text-decoration:none;}
.rhb-area .rhb-wrap{max-width:1180px;margin:0 auto;padding:0 24px;}

/* Area hero */
.rhb-area-hero{background:linear-gradient(180deg,#011c47 0%,var(--rhb-primary,#022c6d) 100%);color:#fff;padding:clamp(44px,8vw,70px) 0;text-align:center;}
.rhb-area-eyebrow{color:#dcb52f;letter-spacing:2px;text-transform:uppercase;font-size:clamp(11px,2vw,13px);font-weight:600;margin-bottom:14px;}
.rhb-area-hero h1{font-size:clamp(26px,5vw,40px);font-weight:700;margin:0 0 14px;color:#fff !important;line-height:1.2;}
.rhb-area-intro{color:#c9d4ea;font-size:clamp(14.5px,2.2vw,16.5px);max-width:640px;margin:0 auto;line-height:1.65;}

/* Area stat bar */
.rhb-area-stats{background:#f4f6fa;border-bottom:1px solid #e7e9ee;}
.rhb-area-stats-grid{display:grid;grid-template-columns:repeat(4,1fr);}
.rhb-area-stat{padding:clamp(18px,3vw,28px) 12px;text-align:center;}
.rhb-area-stat .num{font-size:clamp(18px,3vw,26px);font-weight:700;color:var(--rhb-primary,#022c6d);margin-bottom:4px;}
.rhb-area-stat .label{font-size:11.5px;text-transform:uppercase;letter-spacing:1px;color:#7c8493;}

/* Area body */
.rhb-area-body{padding:clamp(36px,6vw,56px) 24px;}
.rhb-area-body h2{font-size:clamp(21px,3.5vw,26px);font-weight:600;color:var(--rhb-primary,#022c6d) !important;margin:40px 0 16px;}
.rhb-area-body h2:first-child{margin-top:0;}
.rhb-area-body p{font-size:15.5px;line-height:1.75;color:#3c424e;margin-bottom:16px;}
.rhb-area-lead{font-size:16.5px !important;font-weight:500;color:#1c1f26 !important;}

/* FAQ */
.rhb-area-faqs{display:flex;flex-direction:column;gap:10px;}
.rhb-area-faq{border:1px solid #e7e9ee;border-radius:9px;padding:0;background:#fff;}
.rhb-area-faq summary{cursor:pointer;font-weight:600;font-size:15px;color:#14171f;padding:16px 18px;list-style:none;position:relative;}
.rhb-area-faq summary::before{content:"\25B8";margin-right:10px;color:var(--rhb-gold,#c9a227);transition:transform .15s ease;display:inline-block;}
.rhb-area-faq[open] summary::before{transform:rotate(90deg);}
.rhb-area-faq p{padding:0 18px 16px 40px;margin:0;font-size:14.5px;}

/* Nearby pills */
.rhb-area-nearby{display:flex;flex-wrap:wrap;gap:10px;}
.rhb-area-nearby a{border:1px solid #dcdfe5;border-radius:7px;padding:9px 16px;font-size:13.5px;font-weight:500;color:#1c1f26;transition:border-color .15s ease,color .15s ease,background .15s ease;}
.rhb-area-nearby a:hover{border-color:var(--rhb-primary,#022c6d);color:var(--rhb-primary,#022c6d);background:#f2f5fb;}

/* Area CTA band */
.rhb-area-cta{background:linear-gradient(135deg,#c9a227 0%,#dcb52f 100%);text-align:center;padding:clamp(44px,7vw,60px) 20px;}
.rhb-area-cta-eyebrow{color:#011c47;letter-spacing:2px;text-transform:uppercase;font-size:12px;font-weight:700;margin-bottom:10px;}
.rhb-area-cta h2{font-size:clamp(23px,4vw,28px);font-weight:700;color:#011c47 !important;margin:0 0 10px;}
.rhb-area-cta p{color:#3a3210;max-width:480px;margin:0 auto 24px;font-size:15px;line-height:1.6;}
.rhb-area-cta-btn{display:inline-block;background:#022c6d;color:#fff !important;font-weight:700;font-size:13.5px;letter-spacing:.4px;text-transform:uppercase;padding:14px 30px;border-radius:8px;box-shadow:0 4px 14px rgba(1,28,71,.28);transition:background .15s ease,transform .15s ease;}
.rhb-area-cta-btn:hover{background:#0a3f8f;transform:translateY(-1px);}

/* Areas hub grid */
.rhb-areas-grid-wrap{padding:clamp(28px,5vw,44px) 0;}
.rhb-areas-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:22px;}
.rhb-area-card{background:#fff;border:1px solid #e7e9ee;border-radius:12px;padding:26px 24px 22px;box-shadow:0 2px 10px rgba(2,44,109,.05);transition:transform .15s ease,box-shadow .15s ease;}
.rhb-area-card:hover{transform:translateY(-3px);box-shadow:0 12px 28px rgba(2,44,109,.13);}
.rhb-area-card-head{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;margin-bottom:18px;}
.rhb-area-card-title{font-size:19px;font-weight:600;color:#14171f;}
.rhb-area-card-type{background:#f2f5fb;color:#5a6274;font-size:10.5px;font-weight:600;letter-spacing:.8px;text-transform:uppercase;padding:5px 10px;border-radius:20px;white-space:nowrap;}
.rhb-area-card-stats{display:grid;grid-template-columns:repeat(3,auto);justify-content:space-between;gap:14px;margin-bottom:18px;}
.rhb-acs-label{font-size:10.5px;text-transform:uppercase;letter-spacing:.8px;color:#8b93a3;margin-bottom:3px;}
.rhb-acs-num{font-size:17px;font-weight:700;color:#14171f;white-space:nowrap;}
.rhb-acs-accent{color:var(--rhb-primary,#022c6d);}
.rhb-area-card-link{font-size:14px;font-weight:600;color:var(--rhb-primary,#022c6d);}
.rhb-area-card-link:hover{color:var(--rhb-gold,#c9a227);}

@media(max-width:700px){
  .rhb-area-stats-grid{grid-template-columns:repeat(2,1fr);}
  .rhb-area-stat{border-bottom:1px solid #e7e9ee;}
}
