.contact-section{background:linear-gradient(180deg, #f8f7f1fa, #ede9dff0), var(--color-paper);color:var(--color-ink);padding:clamp(84px,10vw,132px) 0;position:relative;overflow:hidden}.contact-section:before{pointer-events:none;content:"";opacity:1;background:radial-gradient(circle at 0 0,#7b8f7b14,#0000 26%),radial-gradient(circle at 100% 100%,#c0a46f1a,#0000 24%),linear-gradient(#27302708,#0000 24%);position:absolute;inset:0}.contact-section--top{background:linear-gradient(180deg, #f8f7f1b8, #f8f7f15c), var(--color-paper);color:var(--color-ink);padding:clamp(38px,6vw,72px) 0}.contact-section__inner{width:var(--container);margin:0 auto;position:relative}.contact-section__inner--top{z-index:1;grid-template-columns:minmax(0,1.1fr) minmax(320px,.82fr);align-items:center;gap:clamp(24px,5vw,72px);display:grid;position:relative}.contact-top-shell{border-top:1px solid #27302714;border-bottom:1px solid #27302714;padding:clamp(26px,4vw,40px);position:relative}.contact-section__ornament{opacity:.72;width:96px}.contact-section__ornament-icon{aspect-ratio:1;width:100%;mask-image:var(--ornament-mask);mask-position:50%;mask-size:contain;mask-repeat:no-repeat;-webkit-mask-image:var(--ornament-mask);background:#f0f0ebe6;display:block;-webkit-mask-position:50%;-webkit-mask-size:contain;-webkit-mask-repeat:no-repeat}.contact-section--top .contact-section__ornament-icon{background:var(--color-accent)}.contact-section--top .eyebrow{color:var(--color-sage)}.contact-section--top h2{max-width:10ch;font-size:clamp(2.25rem,4vw,4rem);line-height:.96}.contact-section--top p{max-width:42ch}.contact-section__top-copy{gap:18px;display:grid}.contact-section__top-copy .contact-section__ornament{width:62px}.contact-section__top-copy p{max-width:44ch;margin:0;font-size:1.04rem;line-height:1.62}.contact-top-actions{background:linear-gradient(180deg, #ffffffeb, #f8f7f1e0), var(--color-paper);border:1px solid #27302714;border-radius:8px;align-content:start;gap:18px;padding:24px;display:grid;box-shadow:inset 0 1px #ffffff75,0 14px 28px #2730270b}.contact-top-actions__primary{background:var(--color-sage-deep);width:100%;min-height:48px;color:var(--color-ivory);letter-spacing:.16em;text-transform:uppercase;border:1px solid #c0a46f80;border-radius:6px;justify-content:center;align-items:center;padding:0 24px;font-size:.72rem;font-weight:600;transition:transform .22s,background .22s,border-color .22s,box-shadow .22s;display:inline-flex;position:relative;overflow:hidden;box-shadow:inset 0 1px #f8f7f11f,inset 0 -1px #2730272e,0 12px 24px #27302717,0 4px 12px #60745f14}.contact-top-actions__primary span{z-index:1;position:relative}.contact-top-actions__primary:hover{background:#566a55;border-color:#c0a46fb3;transform:translateY(-1px);box-shadow:inset 0 1px #f8f7f129,inset 0 -1px #27302729,0 16px 30px #2730271c,0 5px 16px #c0a46f1a}.contact-top-actions__secondary{gap:10px;display:grid}.contact-top-actions__secondary>span{letter-spacing:.16em;text-transform:uppercase;color:var(--color-sage-deep);font-size:.68rem;font-weight:600}.contact-top-actions__links{grid-template-columns:1fr;gap:10px;display:grid}.contact-top-link{color:var(--color-ink);background:#ffffffb8;border:1px solid #27302714;border-radius:8px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:12px;padding:14px 16px;transition:background-color .24s,border-color .24s,transform .24s,box-shadow .24s;display:grid}.contact-top-link:hover{background:#fffaf1f5;border-color:#c0a46f70;transform:translateY(-1px);box-shadow:0 14px 24px #c0a46f1f}.contact-top-link__icon{width:42px;height:42px;color:var(--color-warm-stone);background:#a8745514;border:1px solid #a8745538;border-radius:999px;place-items:center;transition:background-color .24s,border-color .24s,color .24s;display:grid}.contact-top-link:hover .contact-top-link__icon{color:var(--color-accent);background:#c0a46f24;border-color:#c0a46f6b}.contact-top-link__icon svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.75px;width:18px;height:18px}.contact-top-link__content{gap:5px;min-width:0;display:grid}.contact-top-link__content span{letter-spacing:.14em;text-transform:uppercase;color:var(--color-sage-deep);opacity:.8;font-size:.66rem;font-weight:600}.contact-top-link__content strong{letter-spacing:-.01em;white-space:nowrap;text-overflow:ellipsis;max-width:100%;font-size:.98rem;font-weight:500;display:block;overflow:hidden}@media (width<=900px){.contact-section__inner{width:var(--container)}.contact-section__inner--top{grid-template-columns:1fr}.contact-top-shell{padding:22px}.contact-top-actions{padding:18px}.contact-top-link__content strong{font-size:.94rem}}@media (width<=560px){.contact-section{padding:46px 0}.contact-section__inner--top{grid-template-columns:1fr}.contact-section--top{padding:28px 0}.contact-section--top h2{font-size:clamp(1.8rem,11vw,2.8rem)}.contact-top-shell{padding:18px}.contact-top-actions{padding:16px}.contact-top-actions__links{gap:8px}.contact-top-link{padding:13px 14px}.contact-top-link__content strong{font-size:.92rem}.contact-section__ornament{width:58px}}.boat-location{background:linear-gradient(180deg, #f8f7f1fa, #ede9dff0), var(--color-paper);color:var(--color-ink);position:relative;overflow:hidden}.boat-location:before{pointer-events:none;content:"";opacity:.86;background:linear-gradient(90deg,#c0a46f14,#0000 34%),linear-gradient(#27302708 1px,#0000 1px) 0 0/72px 72px,linear-gradient(90deg,#27302706 1px,#0000 1px) 0 0/72px 72px;position:absolute;inset:0}.boat-location__inner{width:var(--container);grid-template-columns:1fr;align-items:start;gap:clamp(20px,3.5vw,36px);margin:0 auto;display:grid;position:relative}.boat-location__eyebrow{color:var(--color-sage)}.boat-location__copy h2{max-width:16ch;color:var(--color-ink);margin-bottom:clamp(20px,3vw,28px)}.boat-dest-grid{grid-template-columns:1fr;gap:8px;display:grid}.boat-dest-card{text-align:left;cursor:pointer;min-height:0;color:var(--color-ink);box-shadow:none;background:#f8f7f1b3;border:1px solid #60745f24;border-radius:8px;flex-direction:column;align-items:flex-start;gap:3px;padding:11px 14px 11px 16px;transition:background .22s,border-color .22s,box-shadow .22s;display:flex;position:relative;overflow:hidden}.has-js .boat-dest-card[data-reveal-boat-dest]{opacity:0;transition:opacity .56s cubic-bezier(.2,.7,.18,1),transform .56s cubic-bezier(.2,.7,.18,1),background .22s,border-color .22s,box-shadow .22s;transition-delay:calc(var(--dest-order,0) * 70ms);transform:translate(18px)}.has-js .boat-dest-card[data-reveal-boat-dest].is-visible{opacity:1;transform:translate(0,0)}.boat-dest-card:before{content:"";background:linear-gradient(180deg, var(--color-sage), var(--color-accent));opacity:0;border-radius:2px 0 0 2px;width:2px;transition:opacity .22s;position:absolute;inset:0 auto 0 0}.boat-dest-card:hover,.boat-dest-card:focus-visible{background:#f8f7f1f5;border-color:#60745f42;transform:none;box-shadow:0 4px 14px #2730270f}.boat-dest-card.is-active{background:#f8f7f1fa;border-color:#60745f5c;transform:none;box-shadow:0 4px 16px #27302712}.boat-dest-card:hover:before,.boat-dest-card:focus-visible:before,.boat-dest-card.is-active:before{opacity:1}.boat-dest-card__name{font-family:var(--font-title);color:var(--color-ink);font-size:clamp(.9rem,1.3vw,1.05rem);font-weight:500;line-height:1.1;transition:color .22s}.boat-dest-card__time{letter-spacing:.11em;text-transform:uppercase;color:var(--color-muted);font-size:.58rem;font-weight:600;transition:color .22s}.boat-dest-card.is-active .boat-dest-card__name{color:var(--color-sage-deep)}.boat-dest-card.is-active .boat-dest-card__time{color:var(--color-accent)}.boat-location__panel{display:block}.boat-location__aside{flex-direction:column;gap:8px;display:flex}.boat-location__map-frame{border:1px solid #27302714;border-radius:12px;margin:0;overflow:hidden;box-shadow:0 2px 4px #2730270a,0 20px 56px #27302714}.boat-location__map{box-shadow:none;background:#f8f7f199;border:0;margin:0;position:relative;overflow:visible}.boat-location__map:after{content:none}.boat-location__map-img{aspect-ratio:1920/1500;object-fit:contain;filter:saturate(.9)contrast(.97);opacity:1;width:100%;height:auto;transition:opacity .2s;display:block}.boat-location__map-img:not([src]){background:linear-gradient(135deg, #d7d6cc80, #f8f7f1e6), var(--color-paper)}.boat-location__map-reset{z-index:2;width:34px;height:34px;color:var(--color-sage-deep);backdrop-filter:blur(10px);cursor:pointer;background:#f8f7f1db;border:1px solid #60745f42;border-radius:999px;place-items:center;padding:0;transition:background-color .2s,border-color .2s,color .2s,transform .2s;display:inline-grid;position:absolute;bottom:14px;right:14px;box-shadow:0 8px 18px #2730271a}.boat-location__map-reset:hover,.boat-location__map-reset:focus-visible{color:var(--color-ivory);background:#60745feb;border-color:#60745f75;transform:translateY(-1px)}.boat-location__map-reset svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8px;width:16px;height:16px}.boat-location__subtitle{letter-spacing:.16em;text-transform:uppercase;color:var(--color-accent);margin:18px 0 14px;font-size:.78rem;font-weight:600;line-height:1.6}.boat-location__description{max-width:64ch;color:var(--color-muted);margin:0}.boat-location__map-bar{background:#f8f7f1eb;border:1px solid #27302714;border-radius:8px;justify-content:space-between;align-items:center;gap:10px;padding:10px 16px;display:flex;box-shadow:0 2px 8px #2730270a}.boat-location__map-caption{text-overflow:ellipsis;white-space:nowrap;backdrop-filter:none;min-width:0;min-height:0;color:var(--color-muted);letter-spacing:.15em;text-transform:uppercase;background:0 0;border:0;flex:1;padding:0;font-size:.62rem;font-weight:600;overflow:hidden}.boat-location__map-link{min-height:0;color:var(--color-ivory);backdrop-filter:none;letter-spacing:.11em;text-transform:uppercase;background:#60745fe0;border:1px solid #60745f47;border-radius:4px;flex-shrink:0;align-items:center;gap:5px;padding:5px 11px;font-size:.62rem;font-weight:700;transition:background-color .2s,border-color .2s;display:inline-flex}.boat-location__map-link:hover,.boat-location__map-link:focus-visible{background:var(--color-sage-deep);border-color:#60745f99;transform:none}.boat-location__map-link svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8px;width:12px;height:12px}@media (width>=901px){.boat-location__inner{--boat-map-height:clamp(448px, 58svh, 460px);--boat-map-width:calc(var(--boat-map-height) * 1.28);grid-template-areas:"copy copy""panel aside";grid-template-columns:minmax(0, var(--boat-map-width)) minmax(320px, 1fr);justify-content:center;align-items:start;gap:clamp(20px,3vw,36px)}.boat-location__copy{grid-area:copy}.boat-location__panel{width:min(100%, var(--boat-map-width));height:var(--boat-map-height);flex-direction:column;grid-area:panel;display:flex}.boat-location__map-frame,.boat-location__map{aspect-ratio:1920/1500;height:100%;min-height:0}.boat-location__map-img{width:100%;height:100%;aspect-ratio:unset;object-fit:contain}.boat-location__aside{width:100%;height:var(--boat-map-height);grid-area:aside;grid-template-rows:minmax(0,1fr) minmax(58px,auto);grid-template-columns:1fr;gap:8px;display:grid}.boat-dest-grid{grid-area:1/1;grid-template-rows:repeat(6,minmax(58px,1fr));grid-template-columns:1fr;align-items:stretch;gap:8px;width:100%;height:100%;min-height:0}.boat-dest-card{justify-content:center;height:100%;min-height:0;overflow:visible}.boat-location__map-bar{grid-area:2/1;width:100%;height:auto;min-height:58px}}@media (width<=900px){.boat-location__inner{grid-template-columns:1fr}.boat-location__copy,.boat-location__panel,.boat-location__aside{grid-area:auto}.boat-dest-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.boat-location__aside .boat-dest-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=560px){.boat-location__map-bar{align-items:flex-start}.boat-location__map-caption{white-space:normal;text-overflow:clip;line-height:1.45;overflow:visible}.boat-location__aside .boat-dest-grid,.boat-dest-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.boat-location__map-img{height:clamp(260px,42svh,420px)}.boat-location__map .boat-location__map-img{height:auto}}@media (prefers-reduced-motion:reduce){.has-js .boat-dest-card[data-reveal-boat-dest]{opacity:1;transform:none}}.video-section{background:linear-gradient(180deg, #f0f0ebf5, #f8f7f1fa), var(--color-ivory);position:relative;overflow:hidden}.video-section:before{pointer-events:none;content:"";background:linear-gradient(90deg,#2730270a,#0000 32%),radial-gradient(circle at 82% 18%,#c0a46f1f,#0000 28%);position:absolute;inset:0}.video-section__grid{grid-template-columns:minmax(0,.72fr) minmax(360px,1fr);align-items:center;gap:clamp(34px,6vw,82px);display:grid;position:relative}.video-section__copy{gap:18px;display:grid}.video-section__copy h2{max-width:9ch}.video-section__copy p:not(.eyebrow){max-width:44ch;margin:0}.video-section__frame{background:linear-gradient(180deg, #ffffffb8, #f8f7f18a), var(--color-paper);border:1px solid #2730271a;border-radius:8px;position:relative;overflow:hidden;box-shadow:0 22px 46px #27302714}.video-section__frame:before{z-index:1;pointer-events:none;content:"";border:1px solid #c0a46f38;border-radius:6px;position:absolute;inset:12px}.video-section__media{aspect-ratio:16/9;object-fit:cover;background:linear-gradient(135deg, #60745f6b, #273027b8), var(--hero-image);width:100%;display:block}.video-section--vimeo .video-section__copy{gap:14px;margin-bottom:clamp(32px,5vw,52px);display:grid}.video-section--vimeo .video-section__copy h2{max-width:18ch}.video-section--vimeo .video-section__copy p:not(.eyebrow){max-width:52ch;margin:0}.video-section__icon{width:44px;height:20px;color:var(--color-sage);display:block}.video-section__icon svg{width:100%;height:100%}.video-section__vimeo-full{aspect-ratio:16/9;width:100%;position:relative;overflow:hidden}.video-section__vimeo-full iframe{border:0;width:100%;height:100%;display:block;position:absolute;inset:0}@media (width>=901px){.video-section__vimeo-full{border:1px solid #2730271a;border-radius:10px;width:min(100%,177.778svh - 426.667px);max-height:calc(100svh - 240px);margin:0 auto;box-shadow:0 0 0 1px #c0a46f1a,0 24px 52px #27302717}}@media (width<=900px){.video-section__grid{grid-template-columns:1fr}.video-section__copy h2{max-width:12ch}}
