/* Homepage hero only. Final photographs should leave clear space at left (desktop)
   and in the lower portion (mobile). Adjust these focal points for supplied art. */
.home-banner{--desktop-focus:100% 50%;--mobile-focus:78% 50%;position:relative;isolation:isolate;min-height:640px;height:75vh;height:75svh;max-height:1000px;display:flex;align-items:center;background:#e8e5dd;overflow:hidden}
.home-banner-media,.home-banner-media img,.home-banner-shade{position:absolute;inset:0;width:100%;height:100%}
.home-banner-media{z-index:-2}.home-banner-media img{object-fit:cover;object-position:var(--desktop-focus)}
.home-banner-shade{z-index:-1;background:linear-gradient(90deg,rgba(247,246,242,.95) 0%,rgba(247,246,242,.82) 36%,rgba(247,246,242,.18) 73%,transparent 100%)}
.home-banner-content{width:600px;max-width:calc(100% - 80px);margin-left:10%;padding-block:55px}
.home-banner h1{font:500 clamp(48px,4.8vw,70px)/1.06 var(--display);letter-spacing:-.075em;margin:0;color:var(--ink)}
.home-banner h1 em{font-family:var(--serif);font-weight:400;letter-spacing:-.07em}
.home-banner .eyebrow{font-size:11px;color:var(--green);margin-bottom:25px}
.home-banner-lede{max-width:490px;font-size:17px;line-height:1.75;color:#4d524e;margin:28px 0 32px}
.home-banner .hero-actions{flex-wrap:wrap;gap:16px}.home-banner .button{min-height:48px}
@media(max-width:760px){.home-banner{height:auto;min-height:760px;min-height:max(760px,85svh);max-height:none;align-items:flex-end}.home-banner-content{width:auto;max-width:none;margin:0;padding:290px 24px 48px}.home-banner h1{font-size:clamp(40px,10.8vw,58px)}.home-banner .eyebrow{margin-bottom:20px}.home-banner-lede{font-size:16px;line-height:1.65;margin:23px 0 26px}.home-banner-media img{object-position:var(--mobile-focus)}.home-banner-shade{background:linear-gradient(180deg,transparent 0%,rgba(247,246,242,.12) 20%,rgba(247,246,242,.9) 46%,rgba(247,246,242,.98) 100%)}.home-banner .hero-actions{gap:12px}.home-banner .button{font-size:12px}}
