/* Full-width homepage photography with a fixed, readable introduction. */
.hero-slider{isolation:isolate;position:relative;min-width:0;overflow:hidden;background:var(--paper)}
.hero-slider .hero-slide{position:absolute;inset:0;margin:0}
.hero-slider .hero-slide>img.photo{width:100%;height:100%;object-fit:cover;object-position:var(--photo-position,50% 50%)}
.hero-slider .hero-slide:not([hidden]){animation:hero-image-in .4s ease-out}
.hero-slider .image-caption{display:flex;bottom:0;z-index:1;padding:16px 24px 91px;pointer-events:none;font-size:10px;line-height:1.5;letter-spacing:.08em;gap:12px}
.hero-slider:focus-visible{outline:3px solid var(--ink);outline-offset:-3px}
@keyframes hero-image-in{from{opacity:.5}to{opacity:1}}

.hero:has(.hero-slider){position:relative;display:block;isolation:isolate;height:clamp(540px,45vw,680px);min-height:540px;max-height:none;background:var(--ink)}
.hero:has(.hero-slider) .hero-slider{position:absolute;inset:0;z-index:0;height:100%;min-height:0;background:var(--ink)}
.hero-slider:before{content:'';position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(90deg,rgba(0,0,0,.79) 0%,rgba(0,0,0,.55) 34%,rgba(0,0,0,.08) 70%),linear-gradient(0deg,rgba(0,0,0,.5),transparent 35%)}
.hero:has(.hero-slider) .hero-copy{position:relative;z-index:2;pointer-events:none;width:min(60%,800px);height:100%;padding:40px 40px 65px var(--gutter);color:#fff}
.hero:has(.hero-slider) .hero-copy a{pointer-events:auto}
.hero:has(.hero-slider) h1{font-size:clamp(60px,6vw,96px);margin-bottom:24px}
.hero:has(.hero-slider) h1 br:nth-of-type(2){display:none}
.hero:has(.hero-slider) .hero-intro{color:#fff;max-width:410px;text-shadow:0 1px 4px #0005}
.hero:has(.hero-slider) .hero-actions .text-link{color:#fff}
.hero-slider .image-caption{left:var(--gutter);right:auto;bottom:24px;padding:0;background:none;font-size:10px}
.hero-slider .image-caption .slide-credit{display:inline;font-size:9px;letter-spacing:0;opacity:.85}
/* Only two quiet edge arrows; their 44px targets remain easy to use. */
.slider-controls{display:none;position:absolute;inset:0;z-index:3;pointer-events:none}
[data-slider-ready=true] .slider-controls{display:block}
.slider-controls button{position:absolute;top:50%;transform:translateY(-50%);display:flex;align-items:center;justify-content:center;width:44px;height:64px;padding:0;border:0;background:#1d1d1b26;color:#fff;pointer-events:auto;transition:background .2s}
.slider-controls [data-slide-prev]{left:12px}.slider-controls [data-slide-next]{right:12px}
.slider-controls button:hover{background:#1d1d1b80}
.slider-controls button:focus-visible{outline:2px solid var(--yellow);outline-offset:3px;background:var(--ink)}
@media(max-width:940px){.hero:has(.hero-slider){height:620px}.hero:has(.hero-slider) .hero-copy{width:75%;padding-bottom:115px}.hero:has(.hero-slider) h1{font-size:74px}.hero-slider .image-caption{bottom:24px}}
@media(max-width:600px){
 .hero:has(.hero-slider){display:flex;flex-direction:column;height:auto;min-height:0}
 .hero:has(.hero-slider) .hero-copy{order:2;width:100%;height:auto;padding:30px var(--gutter) 36px;background:var(--ink)}
 .hero:has(.hero-slider) h1{font-size:clamp(46px,11vw,66px)}
 .hero:has(.hero-slider) h1 br{display:none}
 .hero:has(.hero-slider) .hero-slider{position:relative;order:1;height:380px;min-height:380px}
 .hero-slider .hero-slide:nth-child(1)>img.photo{object-position:66% 0%}
 .hero-slider .hero-slide:nth-child(2)>img.photo{object-position:45% 48%}
 .hero-slider .hero-slide:nth-child(3)>img.photo{object-position:80% 25%}
 .hero-slider:before{background:linear-gradient(0deg,rgba(0,0,0,.75),transparent 45%)}
 .hero-slider .image-caption{left:16px;bottom:20px;font-size:9px}
 .slider-controls [data-slide-prev]{left:4px}.slider-controls [data-slide-next]{right:4px}

}
@media(prefers-reduced-motion:reduce){.hero-slider .hero-slide:not([hidden]){animation:none}}

