/* Large photographic opening with content kept in normal grid flow. */
.hero{display:grid;grid-template-columns:minmax(0,1fr);padding:20px 3% 0}
.hero-photo,.hero-copy{grid-area:1/1}
.hero-photo{height:auto;min-height:clamp(560px,76svh,760px);isolation:isolate}
.hero-photo img{position:absolute;inset:0;object-position:center 67%;height:100%;width:100%}
.hero-photo::after{content:"";position:absolute;inset:0;background:linear-gradient(100deg,rgba(249,247,240,.84) 0%,rgba(249,247,240,.61) 37%,rgba(249,247,240,.05) 77%);z-index:1;pointer-events:none}
.hero-photo figcaption,.photo-index{z-index:2}
.hero-photo figcaption{bottom:22px;left:auto;right:25px;background:rgba(30,33,27,.68);line-height:1.6}
.hero-photo figcaption span{display:block;margin:4px 0 0}
.photo-index{left:60px;right:auto;bottom:30px;color:#30362b}
.hero-copy{z-index:2;align-self:start;padding:65px 60px 135px;pointer-events:none}
.hero-copy .eyebrow{color:#4f5842;margin-bottom:28px}
.hero-copy h1{font-size:clamp(44px,4.6vw,70px);line-height:1.35;color:#242b20;letter-spacing:-3px}
.hero-bottom{display:block;margin-top:23px}
.hero-bottom p{color:#40493a;font-size:14px;line-height:1.95}
.hero-actions{display:flex;align-items:center;gap:28px;margin-top:32px;pointer-events:auto}
.hero-cta{display:flex;justify-content:space-between;gap:40px;align-items:center;padding:17px 24px;background:#535e46;color:white;font-size:13px;border:1px solid #535e46;transition:background-color .25s,transform .25s}
.hero-cta:hover{background:#3e4833;transform:translateY(-2px)}
.hero-actions .text-link{min-width:154px;color:#303a29;border-color:#727c68;font-size:12px;padding:12px 0;align-self:center}
.hero-foot{padding:18px 2.2% 0}
@media(max-width:760px){
 .hero{padding:10px 4% 0}
 .hero-photo{min-height:610px}
 .hero-photo img{object-position:center 64%}
 .hero-photo::after{background:linear-gradient(180deg,rgba(249,247,240,.88) 0%,rgba(249,247,240,.73) 44%,rgba(249,247,240,.02) 77%)}
 .hero-copy{padding:40px 24px 180px}
 .hero-copy h1{font-size:clamp(30px,8.7vw,46px);letter-spacing:-1.8px;line-height:1.4}
 .hero-copy .eyebrow{font-size:8px;letter-spacing:1.4px;margin-bottom:22px}
 .hero-bottom{margin-top:19px}
 .hero-bottom p{font-size:12px;line-height:1.9;max-width:300px}
 .hero-actions{gap:20px;margin-top:24px;flex-wrap:wrap}
 .hero-cta{padding:14px 18px;gap:24px;font-size:12px}
 .hero-actions .text-link{min-width:127px;font-size:10px;gap:15px}
 .hero-photo figcaption{left:14px;right:auto;bottom:14px;max-width:calc(100% - 28px);font-size:7px;padding:8px 10px}
 .hero-photo figcaption span,.hero-photo figcaption a{font-size:8px}
 .hero-foot{font-size:8px;padding:16px 0 0}
 .hero-foot a{letter-spacing:.6px}
}
@media(max-width:360px){.hero-copy{padding-left:19px;padding-right:19px}.hero-actions{gap:14px}.hero-actions .text-link{min-width:115px}.hero-cta{padding:13px 14px;gap:17px}}
@media(prefers-reduced-motion:reduce){.hero-cta{transition:none}.hero-cta:hover{transform:none}}
