/* Residential property page — isolated additions to the approved V4 styling. */
.residential-hero{padding:78px 0 84px;background:#f0eee6}
.residential-hero-layout{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:clamp(30px,5vw,78px);align-items:center}
.residential-hero-copy,.residential-hero-visual{min-width:0}
.residential-hero h1{font-size:clamp(46px,5.3vw,77px);line-height:1.095;letter-spacing:-2.8px;margin:20px 0 24px;font-weight:800}
.residential-hero h1 em,.residential-heading h2 em,.residential-next h2 em{font:italic 400 1em Georgia,'Times New Roman',serif;letter-spacing:-1.8px;color:var(--olive)}
.residential-hero-copy>p{font-size:16px;line-height:1.85;color:var(--muted);max-width:600px;margin-bottom:30px}
.residential-hero .hero-buttons{gap:12px}
.residential-hero .btn{min-width:0;gap:14px}
.residential-hero-copy .residential-location{font-size:12px;letter-spacing:.3px;margin-top:24px;margin-bottom:0;color:#596153}
.residential-hero-visual{margin:0;overflow:hidden;background:#deded4}
.residential-hero-visual img{width:100%;height:500px;object-fit:cover;object-position:center 43%}
.residential-offerings{padding-top:103px;padding-bottom:112px}
.residential-heading{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:36px}
.residential-heading h2,.residential-next h2{font-size:clamp(34px,4vw,55px);letter-spacing:-1.9px;line-height:1.17;margin:15px 0 0;max-width:760px}
.residential-heading>p{color:var(--muted);max-width:350px;font-size:15px;line-height:1.85;margin:0}
.residential-service-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.residential-service-card{background:#fff;border:1px solid #e8e5dc;display:flex;flex-direction:column;min-height:226px;padding:28px 31px 32px;transition:box-shadow .15s,transform .15s}
.residential-service-card:hover{transform:translateY(-3px);box-shadow:0 14px 28px rgba(41,45,41,.09)}
.residential-service-number{font-weight:800;font-size:10px;letter-spacing:2px;color:#4f692e}
.residential-service-title{font-size:clamp(21px,2.1vw,29px);font-weight:800;letter-spacing:-.65px;line-height:1.3;display:flex;justify-content:space-between;gap:15px;margin:22px 0 12px}
.residential-service-title>span{font-size:20px;flex-shrink:0;color:var(--olive)}
.residential-service-desc{color:var(--muted);font-size:14px;line-height:1.75;max-width:500px}
.residential-gallery-section{background:#eeeae1;padding:100px 0 100px}
.residential-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.residential-gallery figure{margin:0;min-width:0}
.residential-gallery img{width:100%;height:365px;object-fit:cover}
.residential-gallery figcaption{font-weight:700;font-size:13px;letter-spacing:.15px;margin-top:15px}
.residential-gallery figcaption span{font-size:10px;font-weight:800;color:#4f692e;letter-spacing:1.4px;margin-right:11px}
.residential-next{padding-top:100px;padding-bottom:102px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.9fr);gap:65px}
.residential-next-copy p{color:var(--muted);font-size:15px;line-height:1.9;margin:0 0 17px}
.residential-next-copy a{color:#4f692e;text-decoration:underline;text-underline-offset:3px;font-weight:700}
.residential-cta{background:var(--deep);color:#f7f5ee;padding:84px 0 91px}
.residential-cta .section-eyebrow{color:#d1dcbf}
.residential-cta h2{font-size:clamp(35px,4.3vw,56px);line-height:1.18;letter-spacing:-1.9px;max-width:780px;margin:12px 0 18px;color:#fff}
.residential-cta p{color:#e0e0d8;max-width:650px;margin-bottom:28px;font-size:16px}
.residential-cta .btn-neutral{background:transparent;border:1px solid #ede9df;color:#fff}
.residential-cta .btn{min-width:0;gap:15px}
@media(max-width:1000px){.residential-hero-layout{gap:30px}.residential-hero-visual img{height:440px}.residential-hero h1{font-size:clamp(42px,5vw,63px)}.residential-service-card{padding:24px}}
@media(max-width:800px){.residential-hero{padding:55px 0 67px}.residential-hero-layout{grid-template-columns:1fr;gap:35px}.residential-hero-visual img{height:330px}.residential-heading{display:block}.residential-heading>p{max-width:620px;margin-top:14px}.residential-offerings{padding-top:78px;padding-bottom:84px}.residential-gallery-section{padding:73px 0}.residential-gallery img{height:270px}.residential-next{grid-template-columns:1fr;gap:20px;padding-top:77px;padding-bottom:73px}.residential-cta{padding:73px 0}}
@media(max-width:600px){.residential-hero h1{font-size:clamp(40px,10.5vw,52px);letter-spacing:-1.7px}.residential-hero-visual img{height:280px}.residential-hero .hero-buttons{flex-direction:column}.residential-hero .btn,.residential-cta .btn{width:100%;justify-content:space-between}.residential-service-grid,.residential-gallery{grid-template-columns:1fr}.residential-service-card{min-height:0}.residential-gallery img{height:250px}.residential-gallery figure+figure{margin-top:14px}.residential-heading h2,.residential-next h2{font-size:clamp(32px,8.6vw,43px)}.residential-cta .hero-buttons{flex-direction:column}.residential-cta h2{font-size:clamp(33px,8vw,43px)}}
@media(prefers-reduced-motion:reduce){.residential-service-card{transition:none}}
