/* One uninterrupted photograph, including the mobile first screen. */
.hero-photo{background:#202521;height:clamp(620px,80svh,850px);isolation:isolate;color:#fff}
.hero-photo .hero-backdrop{inset:0;width:100%;height:100%;z-index:-1}
.hero-photo .hero-backdrop .hero-image{width:100%;height:100%;object-fit:cover;object-position:57% 48%}
.hero-photo .hero-backdrop:after{background:linear-gradient(0deg,rgba(9,14,19,.86) 0%,rgba(9,14,19,.56) 26%,rgba(9,14,19,.12) 64%,rgba(9,14,19,.04) 100%),linear-gradient(90deg,rgba(9,14,19,.22),transparent 70%)}
.hero-photo .hero-grid{height:100%;min-height:0;max-width:1220px;padding:60px 30px 125px;align-items:flex-end;display:flex;position:relative}
.hero-photo .hero-copy{max-width:660px;width:100%;margin:0}
.hero-photo .hero-eyebrow{background:none;border:0;border-radius:0;padding:0;backdrop-filter:none;font-size:.8rem;font-weight:500;letter-spacing:.07em;color:#e8edf1;gap:12px;margin:0 0 22px;display:flex;align-items:center}
.hero-photo .hero-eyebrow:before{content:'';height:1px;width:32px;background:#ffffffb3;flex-shrink:0}
.hero-photo h1{font-size:clamp(3rem,4.4vw,4.4rem);font-weight:700;line-height:1.22;letter-spacing:-.045em;min-height:166px;text-shadow:0 3px 28px #00000030}
.hero-photo .hero-description{font-size:.97rem;font-weight:400;line-height:1.9;color:#e5e8ec;margin:22px 0 30px;min-height:59px}
.hero-photo .hero-links{display:flex;align-items:center;gap:28px;flex-wrap:wrap}
.hero-photo .button.white{background:#fff;color:#1b2738;padding:16px 24px;min-height:54px;border-radius:7px;box-shadow:none;font-size:.89rem;font-weight:600;gap:30px}
.hero-photo .hero-how{font-size:.83rem;font-weight:400;color:#f0f3f7;margin:0;padding:9px 0;border-bottom:1px solid #ffffff65;gap:12px}
.hero-photo .slider-bar{position:absolute;bottom:26px;left:50%;transform:translateX(-50%);width:calc(100% - 60px);max-width:1160px;margin:0;padding:22px 0 0;border-top:1px solid #ffffff40}
.hero-photo .slide-dots{gap:8px}.hero-photo .slide-dot{width:45px;height:22px}
.hero-photo .slide-dot:after{width:100%;height:2px;border-radius:0;background:#ffffff55}
.hero-photo .slide-dot.active:after{width:100%;background:#fff}
.hero-photo .slide-actions{gap:16px}.hero-photo .slide-number{font-size:.7rem;color:#fff;letter-spacing:.15em}
.hero-photo .slide-pause{background:none;border:1px solid #ffffff50;border-radius:50%;width:32px;height:32px;color:white}
@media(max-width:1000px){.hero-photo .hero-grid{padding-bottom:115px}.hero-photo h1{font-size:3.25rem;min-height:134px}.hero-photo .slider-bar{margin:0}.hero-photo .hero-copy{max-width:570px}}
@media(max-width:680px){
  .hero-photo{height:calc(100svh - 138px);min-height:620px;max-height:820px}
  .hero-photo .hero-backdrop{inset:0;height:100%;width:100%}
  .hero-photo .hero-backdrop .hero-image{object-position:57% 45%}
  .hero-photo .hero-backdrop:after{background:linear-gradient(0deg,rgba(7,12,17,.91) 0%,rgba(7,12,17,.66) 28%,rgba(7,12,17,.13) 66%,rgba(7,12,17,.03) 100%)}
  .hero-photo .hero-grid{display:flex;align-items:flex-end;height:100%;min-height:0;padding:35px 24px 103px}
  .hero-photo .hero-copy{max-width:100%;width:100%}
  .hero-photo .hero-eyebrow{font-size:.68rem;letter-spacing:.05em;margin-bottom:16px;padding:0}
  .hero-photo .hero-eyebrow:before{width:25px}
  .hero-photo h1{font-size:2.6rem;line-height:1.24;min-height:104px;font-weight:700}
  .hero-photo .hero-description{font-size:.79rem;line-height:1.85;margin:17px 0 23px;min-height:47px;word-break:keep-all}
  .hero-photo .hero-description br{display:block}
  .hero-photo .hero-links{gap:21px;flex-wrap:nowrap}
  .hero-photo .button.white{padding:12px 16px;min-height:46px;font-size:.78rem;border-radius:6px;gap:18px;white-space:nowrap}
  .hero-photo .hero-how{font-size:.72rem;gap:6px;white-space:nowrap;padding:8px 0}
  .hero-photo .hero-links .icon{width:17px;height:17px}
  .hero-photo .slider-bar{bottom:23px;width:calc(100% - 48px);margin:0;padding-top:18px}
  .hero-photo .slide-dots{gap:6px}.hero-photo .slide-dot{width:27px;height:24px}
  .hero-photo .slide-actions{gap:11px}.hero-photo .slide-number{font-size:.62rem}
  .hero-photo .slide-pause{width:29px;height:29px;font-size:.7rem}
}
@media(max-width:360px){.hero-photo .hero-grid{padding-left:20px;padding-right:20px}.hero-photo h1{font-size:2.3rem;min-height:94px}.hero-photo .hero-links{gap:14px}.hero-photo .button.white{padding:12px 13px;gap:12px}.hero-photo .slider-bar{width:calc(100% - 40px)}}
