/* The supplied landscape photos fill each slide; only the backdrop beneath copy is softened. */
.home-slideshow{position:relative;isolation:isolate;overflow:hidden;background:#101923;color:#fff;min-height:650px;touch-action:pan-y;--slide-duration:3000ms;--control-ink:#fff;--control-muted:#e0e6ef;--control-line:#ffffff70;--control-fill:#07121e45;--control-hover:#ffffff24;--control-accent:#ff8b98}
.home-slideshow[data-theme="light"]{--control-ink:#111d3b;--control-muted:#243550;--control-line:#14243f55;--control-fill:#ffffff70;--control-hover:#fff;--control-accent:#b61027}
.hero-slides{position:relative;min-height:650px}
.hero-slide{position:absolute;inset:0;isolation:isolate;overflow:hidden;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .65s ease,visibility .65s;--photo-position:50% 65%;--hero-ink:#fff;--hero-copy:#eef2f7;--hero-eyebrow:#fff;--hero-rule:#ffffff80}
.hero-slide.is-active{opacity:1;visibility:visible;pointer-events:auto;z-index:1}
.hero-slide[data-theme="light"]{--hero-ink:#111d3b;--hero-copy:#26374c;--hero-eyebrow:#172a45;--hero-rule:#14243f70}
.hero-slide--reach{--photo-position:50% 60%}
.hero-slide--frontline{--photo-position:50% 46%}
.hero-slide--foam{--photo-position:50% 56%}
.hero-original{position:absolute;inset:0;z-index:-3;width:100%;height:100%;max-width:none;object-fit:cover;object-position:var(--photo-position)}
.hero-scene{position:absolute;inset:0;z-index:-2;background-image:var(--slide-image);background-size:cover;background-position:var(--photo-position);filter:blur(5px);mask-image:linear-gradient(90deg,#000 0%,#000 30%,transparent 62%);pointer-events:none}
.hero-slide--foam .hero-scene{filter:blur(8px);mask-image:linear-gradient(180deg,#000 0%,#000 9%,transparent 34%),linear-gradient(90deg,#000 0%,#000 30%,transparent 62%)}
.hero-overlay{position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#07111ed6 0%,#07111e99 34%,#07111e0d 67%,transparent 100%),linear-gradient(0deg,#07111edb 0%,transparent 27%);pointer-events:none}
.hero-slide[data-theme="light"] .hero-overlay{background:linear-gradient(90deg,#f5f8fbd6 0%,#f5f8fba3 32%,#f5f8fb19 61%,transparent 78%),linear-gradient(0deg,#edf3f8ed 0%,#edf3f873 13%,transparent 31%)}
.hero-slide-inner{display:flex;align-items:center;min-height:650px;padding-block:58px 138px}
.hero-copy{width:55%;max-width:620px;color:var(--hero-ink)}
.hero-copy .eyebrow{color:var(--hero-eyebrow);font-size:.67rem;letter-spacing:.17em;margin-bottom:24px}
.hero-copy .eyebrow>span{background:#d52338;width:30px}
.home-page .hero-headline{font-size:clamp(3.5rem,5.8vw,5.65rem);line-height:1.035;letter-spacing:-.045em;font-weight:650;color:var(--hero-ink);text-wrap:initial;margin:0}
.hero-copy .hero-description{max-width:435px;font-size:1.025rem;line-height:1.75;color:var(--hero-copy);margin:25px 0 29px}
.hero-copy .button-row{align-items:center;gap:27px}
.hero-copy .btn{padding:16px 23px;min-height:54px;gap:32px}
.hero-quote{display:inline-flex;align-items:center;gap:19px;color:var(--hero-ink);font-size:.82rem;font-weight:650;padding-block:15px;border-bottom:1px solid var(--hero-rule)}
.hero-quote:hover{border-color:var(--hero-ink)}.hero-quote>span{font-size:1.1rem}
.hero-controls{position:absolute;left:0;right:0;bottom:29px;z-index:3;display:flex;align-items:center;justify-content:space-between;gap:32px;color:var(--control-ink)}
.hero-controls[hidden]{display:none}
.hero-selector{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:26px;width:min(900px,80%)}
.hero-select{position:relative;display:flex;align-items:center;gap:12px;text-align:left;border:0;border-top:1px solid var(--control-line);background:none;color:var(--control-muted);min-height:49px;padding:17px 0 1px;font-size:.73rem;font-weight:550;line-height:1.35}
.hero-select:after{content:"";position:absolute;top:-2px;left:0;width:100%;height:3px;background:#d52338;transform:scaleX(0);transform-origin:left}
.hero-select.is-current{color:var(--control-ink);font-weight:700}.hero-select.is-current:after{transform:scaleX(1)}
.home-slideshow[data-playing="true"] .hero-select.is-current:after{animation:hero-progress var(--slide-duration) linear both}
.hero-select-number{font-size:.66rem;letter-spacing:.06em;color:var(--control-muted)}.hero-select.is-current .hero-select-number{color:var(--control-accent)}
.hero-transport{display:flex;align-items:center;gap:8px}
.hero-transport button{border:1px solid var(--control-line);background:var(--control-fill);color:var(--control-ink);width:43px;height:43px;display:grid;place-items:center;font-size:1.2rem;transition:background .2s,border-color .2s}
.hero-transport button:hover{background:var(--control-hover);border-color:var(--control-ink)}.hero-transport .hero-play{font-size:.85rem}
.home-slideshow a:focus-visible,.home-slideshow button:focus-visible{outline:3px solid var(--control-ink);outline-offset:4px}
.hero-status{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
@keyframes hero-progress{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@media(min-width:1700px){.home-slideshow,.hero-slides,.hero-slide-inner{min-height:720px}.hero-slide-inner{padding-bottom:145px}}
@media(max-width:1000px){
  .home-slideshow,.hero-slides,.hero-slide-inner{min-height:610px}
  .hero-slide-inner{padding-block:48px 140px}.hero-copy{width:66%}
  .home-page .hero-headline{font-size:clamp(3rem,6.5vw,4.4rem)}
  .hero-copy .eyebrow{font-size:.6rem;letter-spacing:.1em}.hero-copy .hero-description{font-size:.95rem;max-width:350px}
  .hero-copy .button-row{gap:18px}.hero-copy .btn{font-size:.78rem;padding-inline:18px;gap:18px}.hero-quote{font-size:.76rem;gap:12px}
  .hero-slide--control{--photo-position:66% 65%}.hero-slide--reach{--photo-position:88% 60%}.hero-slide--frontline{--photo-position:100% 46%}.hero-slide--foam{--photo-position:70% 56%}
  .hero-selector{gap:18px;flex:1}.hero-select-label{font-size:.66rem}.hero-controls{gap:24px}.hero-transport{gap:6px}.hero-transport button{width:38px;height:40px}
}
@media(max-width:600px){
  .home-slideshow,.hero-slides,.hero-slide-inner{min-height:680px}
  .hero-slide-inner{align-items:flex-start;padding-block:37px 138px}.hero-copy{width:100%;max-width:450px}
  .hero-copy .eyebrow{font-size:.57rem;letter-spacing:.1em;gap:9px;margin-bottom:18px}.hero-copy .eyebrow>span{width:21px}
  .home-page .hero-headline{font-size:clamp(2.7rem,11vw,3.8rem);line-height:1.05;letter-spacing:-.04em}
  .hero-copy .hero-description{font-size:.88rem;line-height:1.65;max-width:315px;margin:18px 0 22px}
  .hero-copy .button-row{gap:12px;flex-wrap:wrap}.hero-copy .btn{min-height:47px;font-size:.7rem;padding:12px 14px;gap:12px}.hero-quote{font-size:.7rem;gap:10px;padding-block:12px}
  .hero-slide--control{--photo-position:73% center}.hero-slide--reach{--photo-position:95% center}.hero-slide--frontline{--photo-position:100% center}.hero-slide--foam{--photo-position:74% center}
  .hero-scene,.hero-slide--foam .hero-scene{filter:blur(4px);mask-image:linear-gradient(180deg,#000 0%,#000 20%,transparent 55%)}
  .hero-overlay{background:linear-gradient(180deg,#07111eeb 0%,#07111eb8 27%,#07111e18 61%,#07111e3d 73%,#07111ee8 100%)}
  .hero-slide[data-theme="light"] .hero-overlay{background:linear-gradient(180deg,#f1f6f9ed 0%,#f1f6f9d4 27%,#f1f6f90d 60%,#edf3f82e 72%,#edf3f8f5 100%)}
  .hero-controls{bottom:19px;gap:16px;align-items:flex-end;flex-wrap:wrap}.hero-selector{width:100%;flex:auto;gap:12px}
  .hero-select{display:grid;gap:6px;align-content:start;min-height:65px;padding-top:11px}.hero-select-label{font-size:.61rem;line-height:1.4;max-width:80px}.hero-select-number{font-size:.58rem;line-height:1.5}
  .hero-transport{margin-left:auto;gap:7px}.hero-transport button{width:42px;height:40px}.hero-select:after{height:2px}
}
@media(max-width:360px){.home-slideshow,.hero-slides,.hero-slide-inner{min-height:700px}.hero-copy .eyebrow{font-size:.52rem}.home-page .hero-headline{font-size:2.65rem}.hero-copy .button-row{gap:13px}.hero-copy .btn{font-size:.67rem;padding-inline:12px;gap:10px}.hero-quote{font-size:.64rem;gap:7px}.hero-select{gap:5px}.hero-select-label{font-size:.56rem}}
@media(prefers-reduced-motion:reduce){.hero-slide{transition:none}.home-slideshow[data-playing="true"] .hero-select.is-current:after{animation:none}}
@media print{.home-slideshow,.hero-slides,.hero-slide-inner{min-height:400px}.hero-slide:not(.is-active),.hero-controls{display:none!important}}
