/* Our Range (/boats): hero film, introduction and every model in three categories on one page. */
.hero-range{height:78svh;min-height:560px;max-height:900px}
.hero-range .hero-content{bottom:72px}
.hero-range .eyebrow{color:#fff;margin-bottom:16px}
.hero-range h1{font-size:clamp(2.25rem,3.9vw,3.75rem);max-width:820px;line-height:1.08}
.hero-range .hero-intro{margin-top:20px;font-size:1.125rem;max-width:520px}
.range-intro{padding-block:96px}
.range-intro-grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(40px,5vw,96px);align-items:center}
.range-intro-copy .eyebrow{margin-bottom:24px;color:var(--muted)}
.range-intro-copy h2{margin-bottom:28px;line-height:1.12;max-width:16ch}
.range-intro-copy p:not(.eyebrow){margin-bottom:20px;max-width:56ch;line-height:1.7}
.range-jump{display:flex;flex-wrap:wrap;gap:12px 28px;margin-top:32px}
.range-jump a{display:inline-flex;align-items:center;gap:10px;min-height:44px;font-family:var(--font-button,var(--font-body));font-weight:700;font-size:.9375rem;color:var(--original-navy,#073453);border-bottom:1px solid var(--border);text-decoration:none}
.range-jump a:hover{border-bottom-color:currentColor}
.range-intro-image{margin:0;overflow:hidden;background:var(--navy)}
.range-intro-image img{display:block;width:100%;height:auto;aspect-ratio:1.15;object-fit:cover}
.range-band{margin:0;width:100%;max-height:760px;overflow:hidden;background:var(--navy)}
.range-band img{display:block;width:100%;height:auto;max-height:760px;aspect-ratio:16/9;object-fit:cover;object-position:center}
.range-category{padding-block:88px 72px;border-bottom:1px solid var(--border)}
.range-category:nth-of-type(even){background:var(--surface)}
.range-category-head{display:flex;align-items:flex-end;justify-content:space-between;gap:48px;margin-bottom:36px}
.range-category-head .eyebrow{color:var(--muted);margin-bottom:12px}
.range-category-head h2{font-family:var(--font-display);font-weight:700;text-transform:uppercase;font-size:var(--text-xl);line-height:1.1;letter-spacing:.035em;margin:0}
.range-category-head>p{max-width:480px;font-size:var(--text-base);line-height:1.6;text-align:right}
.range-tiles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.range-tile{min-width:0;display:block;position:relative;text-decoration:none;background:var(--original-navy,#073453);color:#fff;overflow:hidden}
.range-tile:focus-visible{outline:3px solid #397a8a;outline-offset:3px}
.range-tile img,.range-tile-placeholder{width:100%;aspect-ratio:1.65;object-fit:cover;display:block;transition:transform .35s;filter:brightness(1.08) saturate(1.03)}
.range-tile:hover img{transform:scale(1.025)}
.range-tile-label{position:absolute;inset:auto 0 0;display:flex;align-items:flex-end;justify-content:space-between;gap:16px;padding:56px 24px 22px;background:linear-gradient(transparent,rgba(3,25,38,.82));color:#fff}
.range-tile-label h3{font-family:var(--font-display);font-weight:700;font-size:clamp(1.35rem,1.8vw,1.85rem);text-transform:uppercase;letter-spacing:.025em;line-height:1.15;margin:0;color:#fff}
.range-tile-facts{margin:8px 0 0;font-size:.875rem;line-height:1.45;color:#e6eef3}
.range-tile-note{display:block;font-size:.9375rem;line-height:1.4;margin-bottom:8px;color:#fff}
.range-tile-arrow{font-size:1.5rem;flex:none}
.range-help{background:var(--surface)}
.range-help .range-end{border-top:0;margin-top:0;padding-block:32px}
@media(min-width:1024px){
  .range-category>.wrap{width:calc(100% - 32px);max-width:none}
}
@media(max-width:900px){
  .hero-range{height:auto;min-height:0;max-height:none}
  .hero-range .hero-content{position:static}
  .hero-range .eyebrow{margin-bottom:10px}
  .hero-range h1{font-size:clamp(1.75rem,4.4vw,2.75rem);max-width:none}
  .hero-range .hero-intro{margin-top:12px;font-size:1rem;max-width:none}
  .range-intro{padding-block:72px}
  .range-intro-grid{grid-template-columns:1fr;gap:40px}
  .range-intro-copy h2{max-width:none}
  .range-intro-image img{aspect-ratio:1.5}
  .range-category-head{display:block}
  .range-category-head>p{text-align:left;margin-top:16px;max-width:60ch}
  .range-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}
  .range-tile-label{padding:44px 20px 20px}
}
@media(max-width:600px){
  .hero-range h1{font-size:clamp(1.125rem,4.8vw,1.5rem);line-height:1.2;letter-spacing:.025em}
  .hero-range .hero-intro{display:none}
  .range-intro{padding-block:56px}
  .range-band{max-height:none}
  .range-band img{max-height:none}
  .range-category{padding-block:56px 48px}
  .range-category-head{margin-bottom:24px}
  .range-tiles{grid-template-columns:minmax(0,1fr);gap:16px}
  .range-tile img,.range-tile-placeholder{aspect-ratio:1.6}
  .range-tile-label h3{font-size:1.5rem}
  .range-help .range-end{display:block}
  .range-help .range-end .text-link{margin-top:12px}
}
@media(prefers-reduced-motion:reduce){
  .range-tile img{transition:none}
  .range-tile:hover img{transform:none}
}
