/* Experience-led refinement: existing routes, forms and factual content stay intact. */
.site-header { background: #102b2e; }
@media (min-width:1041px) {
  .site-header .nav-list { gap: clamp(9px, 1.1vw, 18px); }
  .site-header .nav-link { white-space: nowrap; font-size: .8rem; }
  .site-header .nav-cta { white-space: nowrap; padding-inline: 15px; font-size: .8rem; }
  .site-header .nav-shell { gap: 20px; }
}
@media (min-width:1041px) and (max-width:1350px) {
  .site-header .brand-name { font-size: .82rem; letter-spacing: .045em; }
  .site-header .brand-tagline { font-size: .53rem; letter-spacing: .08em; }
  .site-header .brand { gap: 10px; }
  .site-header .site-nav { margin-left: auto; }
}
.experience-home { --font-display: Georgia, 'Times New Roman', serif; }
.experience-hero { background:#102b2e; color:#f5f3ed; padding:48px 0 34px; }
.experience-hero-grid { display:grid; grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr); gap:50px; align-items:center; }
.experience-hero .eyebrow { color:#d7dccd; font-size:.72rem; letter-spacing:.14em; }
.experience-hero h1 { margin:20px 0; font:400 clamp(3.3rem,5.5vw,5.8rem)/1.02 var(--font-display); letter-spacing:-.04em; }
.experience-hero h1 em { color:#ead19a; font-weight:400; }
.experience-location { font-size:.84rem; color:#ead19a; margin:23px 0 12px; }
.experience-intro { max-width:430px; color:#e1e8e2; font-size:1rem; line-height:1.7; }
.experience-actions { display:flex; gap:12px 20px; align-items:center; flex-wrap:wrap; margin-top:25px; }
.experience-rates { font-size:.83rem; min-height:44px; display:inline-flex; align-items:center; gap:10px; text-underline-offset:5px; }
.experience-contact { font-size:.79rem; color:#cbd9d3; margin:14px 0 0; }
.experience-contact a { display:inline-flex; min-height:44px; align-items:center; color:#fff; text-underline-offset:4px; }
.experience-hero-photo { margin:0; }
.experience-hero-photo picture { display:block; }
.experience-hero-photo img { width:100%; height:auto; aspect-ratio:4/3; object-fit:contain; }
.experience-hero-photo figcaption { display:flex; justify-content:space-between; gap:16px; align-items:center; padding-top:10px; color:#ccd8d0; font-size:.72rem; }
.experience-hero-photo figcaption a { display:inline-flex; align-items:center; min-height:44px; text-underline-offset:4px; }
.experience-home .experience-hero :focus-visible, .experience-home .host-story :focus-visible { outline-color:#ead19a; }
.experience-home .proof-items span { font-size:.78rem; }
.experience-home .selection-heading > p { font-size:.96rem; max-width:380px; }
.trip-fit { display:grid; grid-template-columns:.7fr 1fr 1fr 1fr; gap:20px; align-items:center; margin:0 0 30px; border-block:1px solid #cbd2c8; padding:18px 0; }
.trip-fit > span { font-size:.83rem; color:#526467; }
.trip-fit a { display:grid; gap:5px; padding:5px 0 5px 20px; border-left:1px solid #cbd2c8; text-decoration:none; }
.trip-fit strong { font-size:.9rem; font-weight:650; }
.trip-fit a > span { font-size:.76rem; color:#526467; }
.trip-fit a:hover strong { text-decoration:underline; text-underline-offset:5px; }
.charter-option { scroll-margin-top:130px; }
.experience-home .option-details > p { font-size:.95rem; }
.experience-home .selection-notes p { font-size:.82rem; }
.first-time-note { border-top:1px solid #cbd2c8; margin-top:24px; padding-top:24px; }
.selection-atmosphere { width:100%; height:auto; aspect-ratio:4/3; object-fit:contain; }
.first-time-note .eyebrow { margin:0 0 10px; }
.first-time-note h3 { font:400 1.8rem/1.2 var(--font-display); margin:0; }
.first-time-note p:not(.eyebrow) { font-size:.9rem; color:#526467; }
.first-time-note a { font-size:.86rem; display:inline-flex; align-items:center; min-height:44px; text-underline-offset:4px; }
.host-story { background:#102b2e; color:#f5f3ed; padding:72px 0; }
.host-story-grid { display:grid; grid-template-columns:minmax(0,.72fr) minmax(0,1.28fr); gap:70px; align-items:start; }
.host-portrait { margin:0; }
.host-portrait img { width:100%; height:auto; aspect-ratio:2/3; object-fit:contain; }
.host-portrait figcaption { font:400 1.65rem/1.3 var(--font-display); padding-top:16px; }
.host-portrait figcaption span { display:block; margin-top:7px; font:400 .8rem/1.6 var(--font-body); color:#cad8d1; }
.host-story .eyebrow { color:#c6d8cd; margin:0 0 18px; }
.host-story h2 { font:400 clamp(2rem,3.2vw,3.2rem)/1.12 var(--font-display); letter-spacing:-.025em; margin:0 0 22px; }
.host-story-copy > p:not(.eyebrow) { color:#dce5df; font-size:1rem; max-width:570px; }
.host-story .text-link { color:#ead19a; }
.host-boat { margin:28px 0 0; }
.host-boat img { width:100%; height:auto; aspect-ratio:4/3; object-fit:contain; }
.host-boat figcaption { padding-top:16px; display:grid; gap:6px; }
.host-boat strong { font:400 1.3rem/1.3 var(--font-display); }
.host-boat span { color:#cad8d1; font-size:.8rem; }
.host-boat a { display:inline-flex; min-height:44px; align-items:center; font-size:.82rem; text-underline-offset:4px; color:#ead19a; }
.experience-explore { padding-block:64px; }
.experience-explore .explore-heading h2 { font-size:clamp(2rem,3vw,2.8rem); line-height:1.15; }
.experience-explore-grid { display:grid; grid-template-columns:.9fr 1.1fr; gap:60px; align-items:center; }
.experience-tile { display:grid; grid-template-columns:1fr; text-decoration:none; }
.experience-tile > img { width:100%; height:auto; aspect-ratio:3/4; object-fit:contain; max-height:510px; background:#102b2e; }
.experience-tile > span { display:grid; gap:8px; padding-top:17px; }
.experience-tile small { text-transform:uppercase; letter-spacing:.12em; font-size:.7rem; color:#526467; }
.experience-tile strong { font:400 1.8rem/1.2 var(--font-display); }
.experience-tile b { font-size:.85rem; text-decoration:underline; text-underline-offset:5px; font-weight:600; }
.planning-panel h3 { font:400 2.3rem/1.1 var(--font-display); margin:0 0 25px; }
.planning-panel ol { list-style:none; padding:0; margin:0 0 20px; counter-reset:steps; }
.planning-panel li { counter-increment:steps; display:grid; grid-template-columns:35px 1fr; column-gap:14px; padding:19px 0; border-top:1px solid #becbc0; }
.planning-panel li::before { content:'0' counter(steps); grid-row:1/3; font-size:.78rem; color:#426057; padding-top:4px; }
.planning-panel li strong { font-size:1rem; font-weight:650; }
.planning-panel li span { font-size:.9rem; color:#526467; margin-top:6px; }
.planning-links { display:flex; flex-wrap:wrap; gap:0 20px; margin-top:18px; }
.planning-links a { display:inline-flex; min-height:44px; align-items:center; font-size:.82rem; text-underline-offset:4px; }
.experience-home .home-review { padding-block:60px; }
@media(max-width:1040px) {
  .experience-hero-grid { gap:28px; }
  .experience-hero h1 { font-size:3.35rem; }
  .trip-fit { grid-template-columns:1fr 1fr 1fr; gap:12px; }
  .trip-fit > span { grid-column:1/-1; }
  .trip-fit a { padding-left:12px; }
  .host-story-grid { gap:35px; }
  .experience-explore-grid { gap:35px; }
}
@media(max-width:760px) {
  .experience-hero { padding:28px 0 20px; }
  .experience-hero-grid { grid-template-columns:1fr; gap:26px; }
  .experience-hero .eyebrow { font-size:.66rem; margin-bottom:15px; }
  .experience-hero h1 { font-size:clamp(3.15rem,13vw,4.7rem); margin:0 0 18px; }
  .experience-location { font-size:.75rem; margin-top:16px; }
  .experience-intro { font-size:.94rem; margin-block:12px; }
  .experience-actions { margin-top:18px; gap:2px 18px; }
  .experience-contact { margin-top:4px; font-size:.74rem; }
  .experience-hero-photo figcaption { font-size:.67rem; }
  .experience-home .proof-items span { font-size:.72rem; }
  .trip-fit { grid-template-columns:1fr; gap:0; padding-block:16px 8px; }
  .trip-fit > span { margin-bottom:8px; }
  .trip-fit a { display:flex; justify-content:space-between; flex-wrap:wrap; gap:3px 12px; border:0; padding:12px 0; min-height:48px; }
  .trip-fit a + a { border-top:1px solid #d1d8cd; }
  .trip-fit strong { font-size:.86rem; }
  .trip-fit a > span { font-size:.74rem; }
  .host-story { padding-block:45px; }
  .host-story-grid { grid-template-columns:1fr; gap:30px; }
  .host-portrait { display:grid; grid-template-columns:100px 1fr; gap:20px; align-items:center; }
  .host-portrait figcaption { padding:0; }
  .host-story h2 { font-size:2.2rem; }
  .host-story-copy > p:not(.eyebrow) { font-size:.95rem; }
  .host-boat { margin-top:23px; }
  .experience-explore { padding-block:42px; }
  .experience-explore-grid { grid-template-columns:1fr; gap:36px; }
  .experience-tile { grid-template-columns:110px 1fr; gap:20px; align-items:center; }
  .experience-tile > span { padding:0; }
  .experience-tile strong { font-size:1.6rem; }
  .experience-home .home-review { padding-block:38px; }
}
@media(prefers-reduced-motion:reduce) { .experience-home { scroll-behavior:auto; } }
