/* Homepage refinement: retain the Ranch's photography and sage/ivory identity. */
#erh-main { --home-ease:cubic-bezier(.23,1,.32,1); }
#erh-main ::selection { background:#d7e0cf; color:#223b30; }
#erh-main :is(h1,h2) { text-wrap:balance; letter-spacing:-.03em; }
#erh-main .erh-eyebrow { display:none; }
#erh-main .erh-hero { height:auto; min-height:660px; display:flex; flex-direction:column; align-items:stretch; justify-content:flex-end; }
#erh-main .erh-hero-copy { padding:72px 6.5vw 36px; }
#erh-main .erh-hero h1 { max-width:19ch; font-size:clamp(48px,5.3vw,80px); line-height:1.06; margin:0 0 24px; }
#erh-main .erh-hero-shade { background:linear-gradient(90deg,rgba(21,35,27,.72),rgba(21,35,27,.35) 52%,rgba(21,35,27,.04)),linear-gradient(0deg,rgba(21,35,27,.65),transparent 60%); }
#erh-main .erh-hero-description { font-size:16px; line-height:1.65; max-width:52ch; }
#erh-main .erh-hero-actions { display:flex; flex-wrap:wrap; align-items:center; gap:16px 28px; margin-top:28px; }
#erh-main .erh-hero .erh-button { margin-top:0; }
#erh-main .erh-hero-pricing { display:inline-flex; align-items:center; justify-content:center; min-height:48px; color:#fff!important; border-bottom:1px solid #ffffff80; font-size:16px; padding:10px 0; }
#erh-main .erh-hero-bottom { position:relative; inset:auto; margin:0 6.5vw 24px; gap:20px; }
#erh-main .erh-hero-bottom a { min-height:44px; display:inline-flex; align-items:center; }
#erh-main .erh-section { padding-block:clamp(64px,7vw,104px); }
#erh-main :is(.erh-section-heading>p,.erh-card-copy>p:not(.erh-eyebrow),.erh-feature p,.erh-gallery-note,.erh-answers p,.erh-final-contact) { font-size:16px; line-height:1.65; }
#erh-main :is(.erh-button,.erh-link) { font-size:16px; min-height:48px; }
#erh-main .erh-button { gap:20px; transition:background-color 160ms ease,transform 160ms var(--home-ease); }
#erh-main .erh-button:not(.erh-button-light) { background:#435f4d; }
#erh-main .erh-occasion-grid article { display:flex; flex-direction:column; min-width:0; }
#erh-main .erh-card-copy { display:flex; flex-direction:column; flex:1; align-items:flex-start; padding-top:24px; }
#erh-main .erh-card-copy h3 { font-size:clamp(28px,2.5vw,36px); min-height:2.4em; }
#erh-main .erh-card-copy>p:not(.erh-eyebrow) { min-height:0; margin-bottom:24px; }
#erh-main .erh-card-copy .erh-link { margin-top:auto; gap:12px; }
#erh-main .erh-feature>span { display:none; }
#erh-main :is(.erh-space,.erh-visit) { background:#435f4d!important; }
#erh-main .erh-space .erh-button-light { background:var(--cream); color:#293b32!important; }
#erh-main .erh-space .erh-button-light span { color:#293b32!important; }
#erh-main .erh-visit-panel .erh-button,#erh-main .erh-visit-panel .erh-button span { color:#fff!important; }
#erh-main .erh-visit-panel { padding:clamp(28px,4vw,52px); }
#erh-main .erh-answers summary { min-height:48px; }
#erh-main .erh-answers p { max-width:65ch; }
#erh-main .erh-final h2 { font-size:clamp(48px,7vw,96px); }
#erh-main :is(a,summary):focus-visible { outline:3px solid #b79b68; outline-offset:5px; box-shadow:0 0 0 2px #f7f8f2; }
#erh-main .erh-facts span { font-size:14px; }
#erh-main .erh-gallery-grid img { height:auto; aspect-ratio:16/8; }
@media(hover:hover) and (pointer:fine) {
 #erh-main .erh-button:hover { transform:translateY(-1px); }
 #erh-main .erh-button:active { transform:scale(.98); }
 #erh-main .erh-button:not(.erh-button-light):hover { background:#354e3e; }
 #erh-main .erh-button-light:hover { background:#fff; }
}
@media(max-width:1100px) {
 #erh-main .erh-card-copy h3 { min-height:0; }
 #erh-main .erh-hero { min-height:620px; }
}
@media(max-width:800px) {
 #erh-main .erh-hero { min-height:600px; }
 #erh-main .erh-hero-copy { padding:80px 24px 32px; }
 #erh-main .erh-hero h1 { font-size:clamp(42px,8vw,62px); max-width:19ch; }
 #erh-main .erh-hero-description br { display:none; }
 #erh-main .erh-hero-bottom { margin:0 24px 24px; font-size:12px; line-height:1.6; }
 #erh-main .erh-hero-bottom a { display:none; }
 #erh-main .erh-hero-actions { align-items:stretch; }
 #erh-main .erh-hero-shade { background:linear-gradient(0deg,rgba(21,35,27,.86),rgba(21,35,27,.45) 65%,rgba(21,35,27,.08)); }
 #erh-main .erh-space-photo { min-height:420px; }
 #erh-main .erh-gallery-grid img { aspect-ratio:4/3; }
 #erh-main .erh-visit-panel h3 { font-size:36px; }
}
@media(max-width:480px) {
 #erh-main .erh-hero-actions { flex-direction:column; gap:12px; }
 #erh-main .erh-hero-pricing { align-self:center; }
 #erh-main .erh-facts { grid-template-columns:1fr; gap:0; padding:8px 24px; }
 #erh-main .erh-facts p { padding:18px 0; border:0; border-bottom:1px solid #c9d4c3; }
 #erh-main .erh-facts strong { font-size:26px; }
 #erh-main .erh-occasion-grid article>picture>img { height:auto; aspect-ratio:4/3; }
 #erh-main .erh-visit-panel .erh-button { width:100%; gap:12px; }
}
@media(prefers-reduced-motion:reduce) {
 #erh-main .erh-button { transition:none; }
 #erh-main .erh-button:hover,#erh-main .erh-button:active { transform:none; }
}
