/* Residential architecture in the same editorial family as the hospitality collection. */
.estate-arrival { padding-block:58px 0; }
.estate-masthead { display:grid; grid-template-columns:1.35fr 1fr; gap:9%; align-items:end; margin-bottom:40px; }
.estate-masthead h1,.estate-project-heading h2,.estate-ledger h2,.estate-enquiry h2 { font-family:Georgia,'Times New Roman',serif; font-weight:400; letter-spacing:-.045em; }
.estate-masthead h1 { font-size:clamp(48px,6vw,86px); line-height:1.04; }
.estate-masthead h1 em { color:var(--accent); font-weight:400; }
.estate-intro { max-width:420px; padding-bottom:8px; }
.estate-intro p { color:var(--muted); font-size:14px; line-height:1.9; }
.estate-intro .text-link { margin-top:20px; font-size:11px; }
.estate-cover .photo-button,.estate-panorama .photo-button,.estate-gallery .photo-button,.estate-build-image .photo-button { border-radius:0; }
.estate-cover img { width:100%; aspect-ratio:2.35; object-fit:cover; object-position:center 55%; }
.estate-cover figcaption { display:flex; justify-content:space-between; gap:20px; padding-top:15px; }
.estate-index { margin-top:25px; }
.estate-record { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:45px; padding-block:38px; }
.estate-record > div { display:flex; gap:22px; align-items:center; }
.estate-record strong { font-family:Georgia,'Times New Roman',serif; font-size:33px; font-weight:400; white-space:nowrap; letter-spacing:-.04em; }
.estate-record span { max-width:180px; font-size:11px; color:var(--muted); line-height:1.6; }
.estate-project { padding-block:90px 60px; scroll-margin-top:85px; }
.estate-project-heading { display:grid; grid-template-columns:1fr 1fr; gap:10%; align-items:end; padding-bottom:40px; }
.estate-project-heading h2 { font-size:clamp(42px,5.4vw,76px); line-height:1.06; }
.estate-project-heading > div:last-child { max-width:490px; }
.estate-tagline { font-family:Georgia,'Times New Roman',serif; font-style:italic; font-size:25px; line-height:1.3; margin-bottom:17px; }
.estate-project-heading p:not(.eyebrow):not(.estate-tagline) { font-size:14px; line-height:1.85; color:var(--muted); }
.estate-panorama > .photo-button,.estate-gallery .media-gallery-track { width:calc(100% - 56px); margin-inline:auto; }
.estate-panorama img { width:100%; aspect-ratio:2.1; object-fit:cover; }
.estate-project-footer { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:24px; padding-block:27px 0; }
.estate-features { display:flex; flex-wrap:wrap; gap:12px 30px; list-style:none; padding:0; color:var(--muted); font-size:11px; }
.estate-project-footer .text-link { font-size:11px; }
.estate-paper { background:var(--paper); }
.estate-gallery .media-gallery-track { border-radius:0; }
.estate-gallery .media-gallery-slide img { width:100%; aspect-ratio:2.05; object-fit:cover; }
.estate-gallery .media-gallery-slide figcaption { width:calc(100% - 56px); }
.estate-gallery .media-gallery-footer { padding-top:22px; }
.estate-ledger { display:grid; grid-template-columns:.8fr 1.2fr; gap:10%; padding-block:95px; border-top:1px solid var(--line); }
.estate-ledger h2 { font-size:clamp(38px,4vw,58px); margin-bottom:25px; }
.estate-ledger p:not(.eyebrow) { font-size:13px; line-height:1.9; color:var(--muted); max-width:39ch; }
.estate-table { min-width:0; }
.estate-table table { width:100%; border-collapse:collapse; font-size:12px; }
.estate-table caption { text-align:left; color:var(--muted); font-size:10px; padding-bottom:18px; }
.estate-table th,.estate-table td { text-align:left; padding:18px 12px 18px 0; border-bottom:1px solid var(--line); font-weight:400; }
.estate-table thead th { color:var(--accent); font-size:9px; text-transform:uppercase; letter-spacing:.1em; }
.estate-table th:last-child,.estate-table td:last-child { text-align:right; padding-right:0; }
.estate-build { padding-block:90px; scroll-margin-top:85px; }
.estate-build-image img { width:100%; aspect-ratio:2.25; object-fit:cover; }
.estate-capabilities { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:45px; padding-top:45px; }
.estate-capabilities article { border-top:1px solid var(--line); padding-top:20px; }
.estate-capabilities article > span { color:var(--accent); font-size:10px; }
.estate-capabilities h3 { margin-block:15px; font-size:24px; }
.estate-capabilities p { color:var(--muted); font-size:13px; line-height:1.8; max-width:35ch; }
.estate-enquiry { display:flex; justify-content:space-between; align-items:center; gap:40px; padding-block:85px; }
.estate-enquiry h2 { font-size:clamp(38px,4vw,58px); margin-bottom:20px; }
.estate-enquiry p:not(.eyebrow) { color:var(--muted); font-size:13px; max-width:50ch; }
.estate-enquiry .button { flex-shrink:0; }
@media(min-width:1800px) { .estate-panorama > .photo-button,.estate-gallery .media-gallery-track { width:calc(100% - 80px); max-width:1800px; } }
@media(max-width:900px) {
 .estate-masthead { gap:6%; }
 .estate-record { gap:25px; }
 .estate-record > div { display:block; }
 .estate-record span { display:block; margin-top:10px; }
 .estate-project-heading { gap:6%; }
 .estate-ledger { gap:6%; }
 .estate-features { gap:12px 22px; }
}
@media(max-width:600px) {
 .estate-arrival { padding-top:34px; }
 .estate-masthead { grid-template-columns:1fr; gap:24px; margin-bottom:26px; }
 .estate-masthead h1 { font-size:clamp(42px,11vw,64px); }
 .estate-masthead .eyebrow { font-size:8px; }
 .estate-intro p { font-size:13px; }
 .estate-cover img { aspect-ratio:1.3; }
 .estate-cover figcaption { display:block; font-size:10px; }
 .estate-cover figcaption span:last-child { display:none; }
 .estate-record { gap:17px; padding-block:28px; }
 .estate-record strong { font-size:25px; }
 .estate-record span { font-size:9px; }
 .estate-project { padding-block:58px 40px; }
 .estate-project-heading { grid-template-columns:1fr; gap:25px; padding-bottom:28px; }
 .estate-project-heading h2 { font-size:clamp(39px,11vw,54px); }
 .estate-tagline { font-size:23px; }
 .estate-project-heading p:not(.eyebrow):not(.estate-tagline) { font-size:13px; }
 .estate-panorama > .photo-button,.estate-gallery .media-gallery-track { width:100%; }
 .estate-panorama img,.estate-gallery .media-gallery-slide img { aspect-ratio:1.5; }
 .estate-gallery .media-gallery-slide figcaption { width:calc(100% - 40px); }
 .estate-features { gap:10px 22px; font-size:10px; }
 .estate-ledger { grid-template-columns:1fr; gap:30px; padding-block:55px; }
 .estate-ledger p:not(.eyebrow) { max-width:none; }
 .estate-table table { font-size:10px; }
 .estate-table th,.estate-table td { padding-block:15px; }
 .estate-build { padding-block:55px; }
 .estate-build-image img { aspect-ratio:1.5; }
 .estate-capabilities { grid-template-columns:1fr; gap:25px; padding-top:30px; }
 .estate-capabilities h3 { margin-block:10px; }
 .estate-capabilities p { max-width:none; }
 .estate-enquiry { display:block; padding-block:55px; }
 .estate-enquiry .button { margin-top:28px; }
}
