/* Stage three preserves desktop composition and fixes intrinsic image sizing. */
.opening-word{font-family:var(--font-display)}
.chapter h2,.water-caption h2,.chapter h3{line-height:1.2}
.request-dialog input:not([type=checkbox]):not([type=radio]),.request-dialog textarea{font-size:16px}
.request-dialog{max-height:calc(100dvh - 32px)}
.selected-card img{object-fit:contain}
.range-slider .range-track input:focus-visible{z-index:2}
@media(max-width:720px){
 .final-contact .final-image{height:auto;margin:0 calc(-1*var(--gutter));min-width:0}
 .final-contact .final-image>img{height:auto;width:100%;aspect-ratio:4/5;object-fit:cover;object-position:center;flex:none}
 .final-image .sources{padding:24px var(--gutter) 12px}
 .final-contact>div:last-child{min-width:0}
 .final-contact h2{font-size:clamp(39px,10.8vw,46px);line-height:1.2}
 .final-contact{gap:32px}
 .request-dialog h2{font-size:34px;line-height:1.12;padding-right:18px}
 .request-dialog .selected-card{font-size:13px;line-height:1.5;padding-top:10px}
 .request-dialog .selected-card img{width:76px;height:88px}
 .request-dialog .black-atlas-lead-contact__options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
 .request-dialog .black-atlas-lead-contact__options label{min-height:44px;display:flex;align-items:center}
 .gallery-grid button,.gallery-grid img{width:100%}
 .plan-tools>button{min-height:44px}
 .room-options label{min-height:44px;display:inline-flex;align-items:center}
 .catalog-summary{flex-wrap:wrap;gap:12px}
}
@media(max-width:920px) and (min-width:721px){
 .final-contact{grid-template-columns:1fr;gap:40px}
 .final-contact .final-image{max-width:620px;margin-inline:auto;height:auto}
 .final-contact .final-image>img{height:auto;aspect-ratio:4/5;object-fit:cover}
 .final-contact>div:last-child{max-width:660px;width:100%;margin-inline:auto}
 .catalog-controls{grid-template-columns:1fr 1fr}
 .room-options{grid-column:1/-1}
 .catalog-controls [data-ranges]{grid-row:auto;gap:24px}
 .lot-view{grid-template-columns:1fr;gap:35px}
 .lot-meta{max-width:650px}
}
@media(max-height:500px) and (orientation:landscape){.hero{min-height:580px}.hero-heading{top:100px}.hero-bottom{bottom:24px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}.water-story{height:auto;min-height:80svh}.water-sticky{position:relative;min-height:80svh}.water-window{display:none}}

