:root{--blue:#087cbd;--navy:#092d46;--ink:#163446;--muted:#617786;--line:#dfe8ec;--soft:#f4f8fa}*{box-sizing:border-box}body{margin:0;color:var(--ink);font-family:'Cabin','Avenir Next',Arial,sans-serif;font-size:16px;line-height:1.65}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button,a,input,select,summary{touch-action:manipulation}a:hover{color:var(--blue)}button{cursor:pointer}img{display:block;width:100%;object-fit:cover}h1,h2,h3,h4,p{margin:0}h1{font-size:clamp(40px,5.2vw,70px);line-height:1.1;letter-spacing:-2px}h2{font-size:clamp(28px,3vw,40px);line-height:1.2;letter-spacing:-1px}h3{font-size:23px;line-height:1.3}p{margin-top:14px}header{display:flex;align-items:center;justify-content:space-between;padding:19px 5%;min-height:104px;background:#fff;border-bottom:1px solid var(--line);position:relative;z-index:10}.brand{display:flex;align-items:center;gap:12px;line-height:1.2;font-size:22px;letter-spacing:2px;font-weight:700;flex-shrink:0}.brand img{width:65px;height:65px;border-radius:50%}.brand span span{display:block;font-size:12px;letter-spacing:2.3px;margin-top:5px}header nav{display:flex;align-items:center;gap:26px;font-size:14px;font-weight:600}.phone{white-space:nowrap}.over-hero{position:absolute;left:0;right:0;background:linear-gradient(#082a40b3,transparent);border:0;color:white}.over-hero a:hover{color:#bde8ff}.button{border:0;background:var(--blue);color:white;display:inline-flex;align-items:center;justify-content:center;gap:24px;font-weight:600;padding:15px 25px;border-radius:8px;line-height:1.4}.button:hover{color:white;background:#086ba1}.small{padding:12px 19px}.full{width:100%}.menu-toggle{display:none;background:none;border:0;color:inherit;font-size:26px}.eyebrow{font-size:11px;letter-spacing:2px;font-weight:700;color:var(--blue);margin:0 0 14px}.hero{height:640px;min-height:570px;position:relative;color:white;display:flex;align-items:center;justify-content:center;text-align:center}.hero>img{height:100%;position:absolute;inset:0;object-position:50% 60%}.hero:after,.island-hero:after{content:'';position:absolute;inset:0;background:linear-gradient(#002f4a30,#00253b69)}.hero-copy{z-index:1;position:relative;padding-top:45px}.hero .eyebrow{color:#d0f0ff}.hero-copy p:last-child{font-size:20px;line-height:1.6}.hero-note{position:absolute;right:25px;bottom:20px;z-index:2;font-size:10px;color:#ffffffc7}.search-wrap{position:relative;z-index:3;margin:-42px auto 0;max-width:1120px;padding:0 20px}.search-bar{display:grid;grid-template-columns:1.3fr 1fr .8fr auto;align-items:center;padding:18px 20px;background:#fff;border-radius:16px;box-shadow:0 10px 45px #193d511a;border:1px solid var(--line)}.search-bar label{padding:0 24px;border-right:1px solid var(--line)}label span{font-size:10px;letter-spacing:1.4px;font-weight:700;display:block;color:var(--muted);margin-bottom:6px}select,input{background:#fff;color:var(--ink);border:1px solid var(--line);border-radius:6px;padding:9px;width:100%;min-width:0}.search-bar select,.search-bar input{border:0;padding:0;font-size:15px;outline-offset:5px}.search-bar .button{margin-left:20px}.section{padding:76px max(5%,calc((100vw - 1200px)/2));}.section-heading{margin-bottom:35px}.section-heading>p:last-child{color:var(--muted)}.centered{text-align:center}.row{display:flex;align-items:end;justify-content:space-between;gap:20px}.soft{background:var(--soft)}.island-grid{display:grid;grid-template-columns:1.25fr 1fr;gap:22px}.island-tile{height:300px;position:relative;overflow:hidden;border-radius:15px;color:white}.island-tile:after{content:'';position:absolute;inset:0;background:linear-gradient(transparent,#002944a1)}.island-tile img{height:100%;transition:transform .5s}.island-tile:hover img{transform:scale(1.035)}.island-tile:hover{color:white}.island-tile div{position:absolute;bottom:29px;left:33px;z-index:1}.island-tile p{font-size:10px;letter-spacing:2px;margin:0}.island-tile h3{font-size:36px;margin:5px 0}.island-tile span{font-size:13px}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.boat-card{border-radius:14px;background:white;overflow:hidden;box-shadow:0 7px 24px #1c42500c;border:1px solid var(--line)}.card-image{position:relative;display:block;height:235px;overflow:hidden}.card-image img{height:100%;transition:transform .4s}.card-image:hover img{transform:scale(1.04)}.photo-label{position:absolute;bottom:12px;left:13px;background:#092d469e;color:white;font-size:10px;padding:3px 9px;border-radius:4px}.card-body{padding:23px}.location{font-size:12px;color:var(--muted);margin:0 0 9px}.card-body>p:not(.location){font-size:14px;color:var(--muted);margin-top:8px}.card-facts{display:flex;gap:15px;font-size:12px;margin:20px 0;color:var(--muted)}.card-bottom{border-top:1px solid var(--line);padding-top:16px;display:flex;gap:12px;align-items:center;justify-content:space-between;font-size:12px}.card-bottom>span{max-width:55%;color:var(--muted)}.card-bottom a,.text-link{color:var(--blue);font-weight:600;font-size:14px}.subtle{color:var(--muted);font-size:12px;margin-top:24px}.guide-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.guide-cards>a{border:1px solid var(--line);border-radius:12px;padding:32px;background:white;position:relative}.guide-number{display:block;color:#b9d6e6;font-size:38px;font-weight:700;margin-bottom:22px}.guide-cards p:not(.eyebrow){font-size:14px;color:var(--muted)}.guide-cards .text-link{display:block;margin-top:25px}.help-band{background:#e9f5fb;display:flex;align-items:center;justify-content:space-between;padding:55px max(5%,calc((100vw - 1200px)/2));gap:35px}.help-band h2{font-size:30px}.help-band p:last-child{font-size:14px;color:var(--muted)}.help-band .button{flex-shrink:0}footer{background:#102c3c;color:#e6f0f5;padding:55px max(5%,calc((100vw - 1200px)/2)) 25px}.footer-grid{display:grid;grid-template-columns:1.7fr 1fr 1fr;gap:50px}.footer-grid>div:not(:first-child)>a{display:block;margin:9px 0;font-size:14px;color:#aec3d0}.footer-grid h4{font-size:14px}.footer-grid p,.footer-grid>div:first-child>a:last-child{font-size:13px;color:#aec3d0}.footer-bottom{border-top:1px solid #ffffff1f;margin-top:40px;padding-top:23px;display:flex;justify-content:space-between;gap:20px;color:#8eabbc;font-size:11px}.page-heading{padding:65px 5% 45px;text-align:center;background:var(--soft)}.page-heading h1{font-size:clamp(36px,4vw,54px);letter-spacing:-1.5px}.page-heading>p:last-child{max-width:640px;margin:20px auto 0;color:var(--muted)}.catalog-section>.search-bar{box-shadow:none}.catalog-info{display:flex;justify-content:space-between;align-items:center;margin:28px 0}.catalog-info p{font-size:12px;color:var(--muted);margin:0}.empty{text-align:center;padding:70px 20px;background:var(--soft);border-radius:12px}.empty[hidden]{display:none}.empty p{margin-bottom:24px}.empty button{display:block;margin:20px auto 0;background:none;border:0}.island-hero{height:365px;position:relative;color:white;display:flex;align-items:center;justify-content:center;text-align:center}.island-hero>img{position:absolute;inset:0;height:100%}.island-hero>div{position:relative;z-index:1}.island-hero .eyebrow{color:#c6eaff}.island-hero h1{font-size:50px}.detail-main{max-width:1200px;margin:auto;padding:35px 20px 80px}.breadcrumbs{font-size:12px;color:var(--muted);margin-bottom:24px}.detail-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px}.detail-title h1{font-size:46px}.detail-title p:last-child{font-size:14px;color:var(--muted)}.share{background:#fff;border:1px solid var(--line);padding:11px 18px;border-radius:7px;color:var(--blue);font-size:13px}.gallery{display:grid;grid-template-columns:1.8fr 1fr;grid-template-rows:200px 200px;gap:12px;border-radius:15px;overflow:hidden}.gallery img{height:100%}.gallery-main{grid-row:span 2}.gallery-caption{background:#e8f4fa;padding:25px 30px}.gallery-caption>span{font-size:10px;font-weight:700;letter-spacing:1.5px;color:var(--blue)}.gallery-caption p{font-size:25px;font-weight:600;line-height:1.25;margin:10px 0}.gallery-caption small{font-size:10px;color:var(--muted)}.detail-layout{display:grid;grid-template-columns:1fr 340px;gap:45px;margin-top:35px}.detail-layout article>h2{font-size:29px;margin-top:40px}.detail-layout article>p{color:var(--muted);font-size:15px}.fact-strip{display:grid;grid-template-columns:repeat(4,1fr);border-bottom:1px solid var(--line);padding-bottom:27px;gap:15px}.fact-strip span{display:block;font-size:10px;letter-spacing:1px;color:var(--muted)}.fact-strip strong{font-size:14px;font-weight:600}.booking-panel{height:max-content;position:sticky;top:20px;border:1px solid var(--line);border-radius:12px;padding:27px;box-shadow:0 6px 25px #153a4e0a}.booking-panel h3{font-size:25px}.booking-panel>p:not(.eyebrow){font-size:13px;color:var(--muted);margin-bottom:23px}.booking-panel label{font-size:12px;font-weight:600;display:block;margin:15px 0}.booking-panel input,.booking-panel select{display:block;margin-top:6px}.booking-panel small{display:block;color:var(--muted);font-size:10px;margin:15px 0}.booking-help{border-top:1px solid var(--line);padding-top:20px;margin-top:22px;font-size:12px;text-align:center}.booking-help span{display:block;color:var(--muted)}.booking-help a{color:var(--blue);font-weight:600}.info-box{padding:25px;background:var(--soft);border-radius:10px;margin-top:25px}.info-box p:last-child{font-size:14px;color:var(--muted)}.inclusions{display:grid;grid-template-columns:1fr 1fr;padding-left:20px;gap:12px;font-size:14px}.faqs{margin-top:20px}.faqs details{border-bottom:1px solid var(--line);padding:17px 0}.faqs summary{font-size:15px;font-weight:600;cursor:pointer}.faqs p{font-size:14px;color:var(--muted)}.article{max-width:800px;margin:0 auto;padding:45px 25px 80px}.article section{margin-bottom:35px}.article h2{font-size:28px}.article p{color:var(--muted)}.article a:not(.button){color:var(--blue);text-decoration:underline}.article>.button{margin-top:20px}:focus-visible{outline:3px solid #5dc5fc;outline-offset:4px}@media(min-width:1450px){header{padding-left:calc((100vw - 1300px)/2);padding-right:calc((100vw - 1300px)/2)}}@media(max-width:1100px){header nav{gap:17px}.phone{display:none}.brand{font-size:19px}.brand img{width:55px;height:55px}.search-bar label{padding:0 15px}.card-body{padding:19px}.detail-layout{gap:25px;grid-template-columns:1fr 300px}.section{padding:60px 5%}.help-band{flex-direction:column;align-items:start}}@media(max-width:800px){header{min-height:85px;padding:15px 5%}.menu-toggle{display:block}header nav{display:none;position:absolute;top:100%;left:0;right:0;background:white;color:var(--ink);padding:25px;box-shadow:0 15px 20px #193d5120}header nav.open{display:flex;flex-direction:column;align-items:start}.hero{height:590px;min-height:0}.hero-copy{padding:70px 20px 60px}.hero-copy p:last-child{font-size:17px}.hero>img{object-position:58% center}h1{font-size:48px}.search-wrap{margin:-60px 0 0}.search-bar{grid-template-columns:1fr 1fr;padding:20px;gap:20px;border-radius:12px}.search-bar label{padding:0;border:0}.search-bar label:first-child{grid-column:span 2}.search-bar .button{grid-column:span 2;margin:0}.island-grid{gap:15px}.island-tile{height:240px}.island-tile div{left:20px;bottom:20px}.island-tile h3{font-size:30px}.cards{grid-template-columns:repeat(2,1fr)}.guide-cards{grid-template-columns:1fr}.guide-cards>a{padding:25px}.guide-number{font-size:28px;margin-bottom:13px}.row{align-items:start;flex-direction:column}.catalog-info{align-items:start;gap:15px;flex-direction:column}.detail-layout{grid-template-columns:1fr}.booking-panel{position:static;grid-row:1}.gallery{grid-template-rows:160px 160px}.gallery-caption{padding:15px}.gallery-caption p{font-size:20px}.detail-title h1{font-size:36px}.detail-title{gap:15px}.fact-strip{gap:10px}.footer-grid{grid-template-columns:1fr 1fr;gap:30px}.footer-grid>div:first-child{grid-column:span 2}.footer-bottom{flex-wrap:wrap}.island-hero h1{font-size:39px;padding:0 20px}}@media(max-width:500px){h1{font-size:43px}h2{font-size:30px}.hero-copy br:last-child{display:none}.section{padding:50px 20px}.cards{grid-template-columns:1fr}.island-grid{grid-template-columns:1fr}.island-tile{height:250px}.card-image{height:240px}.gallery{grid-template-columns:1fr;grid-template-rows:280px}.gallery-main{grid-row:auto}.gallery>img:not(.gallery-main){display:none}.gallery-caption{padding:18px}.gallery-caption p{font-size:22px;display:inline;margin-right:10px}.gallery-caption br{display:none}.gallery-caption>span{display:none}.detail-title{align-items:start}.share{font-size:11px;padding:9px;flex-shrink:0}.fact-strip{grid-template-columns:1fr 1fr;gap:20px}.help-band{padding:40px 20px}.help-band .button{font-size:14px}.brand{font-size:18px}.brand span span{font-size:10px}.footer-grid{gap:25px}.catalog-section>.search-bar{margin-top:0}.island-hero{height:290px}.page-heading{padding:45px 20px}.inclusions{grid-template-columns:1fr}.detail-title .eyebrow{font-size:9px}}
.map-explorer{margin:20px 0 45px}.map-explorer .section-heading{margin-bottom:22px}.map-explorer h2{font-size:32px}.map-explorer .section-heading>p:last-child{font-size:16px}.map-islands{display:flex;flex-wrap:wrap;gap:9px;margin-bottom:18px}.map-islands button{border:1px solid #c9dce7;border-radius:25px;background:white;color:var(--ink);padding:8px 18px;font-size:14px}.map-islands button[aria-pressed=true]{background:var(--navy);border-color:var(--navy);color:white}.map-layout{display:grid;grid-template-columns:1.7fr 1fr;border:1px solid var(--line);border-radius:14px;overflow:hidden;background:white}#charter-map{height:445px;background:#e9f3f7;z-index:0}#map-results{padding:26px;height:445px;overflow-y:auto}#map-results>h3{font-size:23px;margin-bottom:18px}.map-result{display:block;border:1px solid var(--line);border-radius:9px;padding:16px;margin:12px 0}.map-result span,.map-result small{display:block;color:var(--muted);font-size:13px;margin-top:6px}.map-result small{color:var(--blue)}.map-island-link{display:inline-block;margin-top:15px}.island-marker span{display:block;background:var(--blue);color:#fff;text-align:center;border:3px solid white;border-radius:25px;padding:4px 12px;font-size:14px;font-weight:600;box-shadow:0 3px 12px #092d4638;white-space:nowrap}.map-loading,.map-unavailable{padding:45px;position:relative;z-index:0}.map-unavailable p{font-size:14px}.map-unavailable a{color:var(--blue);display:block;margin-top:18px}.leaflet-container{font-family:'Cabin','Avenir Next',Arial,sans-serif}.source-note{font-size:12px!important;line-height:1.6;color:var(--muted);margin-top:17px}.source-note a{color:var(--blue);text-decoration:underline}.boat-page-nav{display:flex;gap:24px;border-bottom:1px solid var(--line);padding:22px 0 17px;overflow-x:auto;white-space:nowrap}.boat-page-nav a{font-size:14px;font-weight:600;color:var(--blue)}.customer-info,.video-section,.departure-section{margin-top:45px;scroll-margin-top:25px}.customer-info h2,.video-section h2,.departure-section h2{font-size:29px}.customer-info dl{margin:25px 0}.customer-info dl>div{display:grid;grid-template-columns:165px 1fr;gap:20px;padding:18px 0;border-bottom:1px solid var(--line)}.customer-info dt{font-size:14px;font-weight:600}.customer-info dd{font-size:14px;color:var(--muted);margin:0}.packing{background:var(--soft);padding:23px;border-radius:10px;margin-top:24px}.packing h3{font-size:20px}.packing p,.video-section>p,.departure-section>p{font-size:15px;color:var(--muted)}.video-empty{display:flex;align-items:center;gap:24px;background:var(--soft);border:1px solid var(--line);border-radius:12px;padding:28px;margin-top:22px}.video-empty h3{font-size:20px}.video-empty p{font-size:14px;color:var(--muted);margin:8px 0 14px}.video-symbol{width:60px;height:60px;border-radius:50%;background:#dceef8;color:var(--blue);display:flex;align-items:center;justify-content:center;font-size:34px;flex-shrink:0}.video-topics{display:flex;flex-wrap:wrap;gap:8px;margin-top:15px}.video-topics span{font-size:12px;color:var(--muted);border:1px solid var(--line);border-radius:5px;padding:5px 10px}.video-list{display:grid;gap:12px;margin-top:22px}.video-choice{display:flex;align-items:center;text-align:left;border:1px solid var(--line);border-radius:10px;background:var(--soft);padding:20px;gap:18px;color:var(--ink)}.video-choice small{display:block;font-size:12px;color:var(--muted);margin-top:5px}.play-icon{color:var(--blue);font-size:25px}.departure-section h3{font-size:20px;margin-top:20px}.harbor-map{border:1px solid var(--line);border-radius:10px;width:100%;height:280px;margin:22px 0 15px}.departure-section .button{font-size:14px}#video-dialog{width:min(900px,94vw);padding:20px;border:0;border-radius:14px;background:white}#video-dialog::backdrop{background:#092433c9}.video-dialog-header{display:flex;justify-content:space-between;gap:20px;margin-bottom:18px}.video-dialog-header h2{font-size:23px}.video-dialog-header button{background:var(--soft);border:0;border-radius:50%;height:38px;width:38px;font-size:25px;color:var(--ink)}#video-player iframe,#video-player video{width:100%;aspect-ratio:16/9;border:0;background:#091b27;display:block}.booking-panel{scroll-margin-top:20px}@media(max-width:800px){header nav{gap:15px}.map-layout{grid-template-columns:1fr}#charter-map{height:340px}#map-results{height:auto;max-height:380px}.customer-info dl>div{grid-template-columns:140px 1fr}.map-explorer h2{font-size:28px}}@media(max-width:500px){#charter-map{height:300px}#map-results{padding:22px}.map-islands button{padding:8px 13px}.customer-info dl>div{grid-template-columns:1fr;gap:8px}.video-empty{padding:22px;align-items:start;gap:16px}.video-symbol{width:42px;height:42px;font-size:25px}.boat-page-nav{gap:21px}.map-unavailable{padding:25px}}
.ui-icon{width:23px;height:23px;flex-shrink:0;display:inline-block;vertical-align:middle;color:var(--blue)}.icon-heading{display:flex;align-items:center;gap:12px}.icon-heading>.ui-icon{width:28px;height:28px}.location,.card-facts>span,.boat-page-nav a,.inclusions li{display:flex;align-items:center;gap:8px}.location .ui-icon{width:15px;height:15px}.card-facts .ui-icon{width:17px;height:17px}.boat-page-nav .ui-icon{width:19px;height:19px}.fact-strip>div>.ui-icon{width:26px;height:26px;display:block;margin-bottom:12px}.fact-strip{padding-top:6px}.customer-info dl>div{grid-template-columns:210px 1fr;gap:20px;padding:21px 0}.customer-info dt{display:flex;align-items:center;gap:12px;font-size:14px;line-height:1.4}.detail-icon{display:flex;align-items:center;justify-content:center;background:#e9f4fa;width:37px;height:37px;border-radius:10px;flex-shrink:0}.detail-icon .ui-icon{width:21px;height:21px}.customer-info dd{font-size:15px}.inclusions{list-style:none;padding-left:0}.inclusions .ui-icon{width:18px;height:18px}.map-disclosure{margin-top:26px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);text-align:left;scroll-margin-top:20px}.map-disclosure>summary{display:flex;align-items:center;justify-content:space-between;padding:18px 2px;cursor:pointer;color:var(--blue);font-size:15px;font-weight:600;list-style:none}.map-disclosure>summary::-webkit-details-marker{display:none}.map-disclosure>summary>span{display:flex;align-items:center;gap:11px}.map-disclosure .disclosure-chevron{width:18px;height:18px;transition:transform .2s}.map-disclosure[open] .disclosure-chevron{transform:rotate(180deg)}.map-disclosure .map-explorer{margin:0;padding:8px 0 20px}.catalog-section>.map-disclosure{margin:23px 0 12px}.island-marker i{display:block;width:20px;height:20px;background:var(--blue);border:3px solid white;border-radius:50%;box-shadow:0 2px 8px #092d4640}.island-marker span{position:absolute;bottom:27px;left:10px;transform:translateX(-50%);font-size:12px;border:0;background:white;color:var(--navy);padding:3px 9px;border-radius:5px;line-height:1.6;box-shadow:0 2px 9px #092d4626}.video-symbol .ui-icon{width:30px;height:30px}.map-layout{grid-template-columns:1.8fr 1fr}#charter-map,#map-results{height:370px}.map-islands button{padding:7px 15px}.map-result{padding:12px;margin:10px 0}.map-result span{font-size:12px}.map-result small{font-size:12px}.map-result strong{font-size:15px}.map-explorer #map-results>h3{font-size:21px}@media(max-width:800px){.map-layout{grid-template-columns:1fr}#charter-map{height:320px}#map-results{height:auto;max-height:320px}.customer-info dl>div{grid-template-columns:185px 1fr}.boat-page-nav{gap:20px}.boat-page-nav a{font-size:14px}}@media(max-width:500px){.customer-info dl>div{grid-template-columns:1fr;gap:12px}.customer-info dd{padding-left:49px;font-size:14px}.customer-info dt{font-size:15px}.fact-strip{grid-template-columns:repeat(2,1fr);gap:24px}.fact-strip>div{background:var(--soft);border-radius:10px;padding:16px}.fact-strip strong{font-size:14px}.fact-strip span{font-size:11px}.map-disclosure>summary{font-size:14px}.boat-page-nav{gap:18px}.boat-page-nav .ui-icon{width:17px;height:17px}.video-symbol .ui-icon{width:25px;height:25px}.map-islands button{font-size:13px;padding:7px 13px}}
.footer-connect{display:flex;justify-content:space-between;align-items:center;gap:30px;margin-top:36px;padding-top:28px;border-top:1px solid #ffffff1f}.footer-connect h4{font-size:14px;margin-bottom:15px}.social-links{display:flex;gap:13px;flex-wrap:wrap}.social-links>a,.social-links>button{border:1px solid #ffffff27;background:#ffffff07;border-radius:9px;display:flex;align-items:center;gap:8px;padding:10px 13px;color:#e6f0f5;font-size:13px;line-height:1.4}.social-links>a:hover{background:#ffffff17;color:#fff}.social-pending{cursor:default;opacity:.7}.social-icon{width:21px;height:21px;flex-shrink:0}.social-note{font-size:12px;color:#aec3d0;margin-top:12px}.footer-share{display:flex;align-items:center;gap:18px}.share-site-button{display:flex;align-items:center;gap:10px;padding:13px 18px;border:1px solid #61859a;border-radius:8px;background:transparent;color:#e6f0f5;font-size:14px}.share-site-button:hover{background:#ffffff12}.copy-site-button{color:#aec3d0;font-size:13px;background:none;border:0;text-decoration:underline;text-underline-offset:4px;padding:10px}.share-status{font-size:12px;color:#b9dcec;margin-top:12px;min-height:0}.share-status:empty{display:none}#share-dialog{width:min(520px,92vw);border:0;border-radius:15px;padding:27px;color:var(--ink)}#share-dialog::backdrop{background:#092433b3}#share-dialog>p{font-size:15px;color:var(--muted)}#share-dialog label{font-size:13px;display:block;margin:22px 0}#share-dialog input{display:block;margin-top:7px;font-size:14px}#share-dialog .text-link{display:inline-block;margin-left:18px}#share-dialog .share-access-note{font-size:12px;margin-top:23px}.footer-bottom{margin-top:27px}@media(max-width:800px){.footer-connect{flex-direction:column;align-items:start;gap:22px}.footer-share{flex-wrap:wrap}.social-links{gap:10px}.social-links>a,.social-links>button{font-size:13px}}@media(max-width:500px){.social-links{display:grid;grid-template-columns:1fr 1fr;width:100%}.social-links>a,.social-links>button{justify-content:center}.footer-connect>div:first-child{width:100%}.footer-share{gap:14px}#share-dialog{padding:22px}#share-dialog .text-link{margin:17px 0 0;display:block}}
.booking-panel{padding:23px}.live-calendar{margin:20px -8px 18px;min-height:290px}#fareharbor-calendar{width:100%;overflow:hidden}#fareharbor-calendar iframe{width:100%;max-width:100%;border:0}.calendar-loading{font-size:13px;color:var(--muted);padding:15px 8px;margin:0}.calendar-caption{font-size:12px!important;line-height:1.6;color:var(--muted);margin:13px 0 0!important}.booking-confidence{margin-top:23px;border-top:1px solid var(--line);padding-top:20px;display:grid;gap:18px}.booking-confidence>div{display:flex;align-items:start;gap:11px}.booking-confidence .ui-icon{width:20px;height:20px;margin-top:2px}.booking-confidence span{font-size:13px;font-weight:600;line-height:1.5}.booking-confidence small{font-size:12px;font-weight:400;margin:3px 0 0;line-height:1.5}.request-calendar{border:1px solid var(--line);border-radius:10px;padding:13px;margin:20px 0 14px}.calendar-month{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:16px}.calendar-month strong{font-size:15px}.calendar-month button{border:0;background:var(--soft);border-radius:6px;width:32px;height:32px;color:var(--ink);font-size:24px;line-height:1}.calendar-month button:disabled{opacity:.3;cursor:default}.calendar-week,.calendar-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:3px}.calendar-week{font-size:10px;text-align:center;color:var(--muted);margin-bottom:8px}.calendar-days button{aspect-ratio:1;border:0;border-radius:50%;background:#eef5f8;color:var(--ink);font-size:13px;min-width:0;padding:0}.calendar-days button:hover{background:#d7eaf6}.calendar-days button[aria-pressed=true]{background:var(--blue);color:white}.calendar-days button:disabled{background:transparent;color:#adbac2;cursor:default}.calendar-legend{font-size:10px;line-height:1.6;color:var(--muted);margin:13px 0 0;display:flex;gap:7px;align-items:start}.calendar-legend span{height:9px;width:9px;border-radius:50%;background:#d9e8ef;flex-shrink:0;margin-top:3px}.selected-trip-date{font-size:13px!important;color:var(--blue)!important;margin:10px 0!important}.booking-panel .button{font-size:14px}@media(max-width:800px){.live-calendar{max-width:420px;margin:20px auto}.booking-confidence{grid-template-columns:repeat(3,1fr);gap:18px}.booking-confidence>div{flex-direction:column;gap:9px}.request-calendar{max-width:390px;margin:20px auto}.calendar-days button{font-size:14px}.calendar-week{font-size:12px}}@media(max-width:500px){.booking-confidence{grid-template-columns:1fr;gap:16px}.booking-confidence>div{flex-direction:row}.booking-panel{padding:22px}.calendar-days button{font-size:14px}.calendar-legend{font-size:11px}.live-calendar{margin-left:-5px;margin-right:-5px}}
/* HFC editorial treatment: warm paper, ocean ink, and restrained nautical detail. */
:root{color-scheme:light;--blue:#086488;--navy:#153c4c;--ink:#173d4c;--muted:#65777b;--line:#e1e4df;--soft:#f4f3ec;--paper:#fcfbf7}html,body{background:var(--paper);color:var(--ink)}body{font-family:'Cabin','Avenir Next',Arial,sans-serif}main{background-color:var(--paper)}h1,h2,h3{font-family:'Cabin','Avenir Next',Arial,sans-serif;font-weight:500;letter-spacing:-.7px}h1{line-height:1.12}h2{line-height:1.2}.eyebrow{font-size:12px;letter-spacing:1.7px;font-weight:600;color:#927047}.hero-copy h1{font-size:clamp(44px,5.2vw,72px);font-weight:400;letter-spacing:-1px;max-width:950px}.hero-copy .eyebrow{color:#f2e7d1;text-transform:uppercase;margin-bottom:23px}.hero-copy p:last-child{font-size:19px;line-height:1.6;margin-top:23px}.hero:after{background:linear-gradient(#122f4540,#163a4c50)}.hero-copy{padding-top:70px}.section-heading.centered{text-align:left}.section-heading.centered>p:last-child{max-width:540px}.section#islands{background-color:var(--paper);background-image:radial-gradient(#1944560a .6px,transparent .7px);background-size:5px 5px}.section.soft{background-color:var(--soft);background-image:radial-gradient(#153b4808 .5px,transparent .7px);background-size:4px 4px}.section-heading{margin-bottom:32px}.section-heading h2{font-size:clamp(33px,3.3vw,44px)}.island-tile{border-radius:7px}.island-tile h3{font-size:42px;font-weight:400;letter-spacing:-.5px}.island-tile p{font-size:11px;letter-spacing:1.6px}.island-tile span{font-size:13px;display:none}.island-tile:after{background:linear-gradient(transparent 25%,#113541a8)}.island-grid{gap:19px}.boat-card{border-radius:8px;box-shadow:none;border-color:#d9dfdc}.boat-card h3{font-size:26px}.card-bottom{font-size:12px}.card-bottom a{font-size:13px}.guide-cards>a{border-radius:7px;background:#fffef9;padding:32px;border-top:3px solid #b59866}.guide-cards h3{font-size:28px}.guide-number{font-family:'Cabin','Avenir Next',Arial,sans-serif;color:#a8b7b5;font-size:30px;font-weight:400}.guide-cards .eyebrow{font-size:11px}.guide-cards p:not(.eyebrow){font-size:15px}.button{background:#086488;border-radius:6px;font-size:15px;font-weight:600;gap:10px}.button:hover{background:#074f6b}.search-bar{border-radius:9px;border-color:#e1e4de;box-shadow:0 9px 30px #16384418;padding:21px 19px;background:#fffefa}.search-bar label>span{font-size:12px;letter-spacing:0;text-transform:none;font-weight:500;color:#7c8076;margin-bottom:8px}.search-bar select,.search-bar input{font-family:'Cabin','Avenir Next',Arial,sans-serif;font-size:16px;font-weight:500;background:#fffefa;min-height:26px}.search-bar .button{font-size:15px;padding:16px 24px}.search-date-control{position:relative;min-height:27px}.search-date-control .date-prompt{position:absolute;left:0;top:0;pointer-events:none;color:var(--ink);font-size:16px;line-height:27px;font-weight:500;margin:0;letter-spacing:0}.search-date-control:not(.has-date) input{color:transparent}.search-date-control.has-date .date-prompt{display:none}.search-date-control input{position:relative;z-index:1;width:100%;background:transparent;min-width:130px}.search-date-control input::-webkit-calendar-picker-indicator{opacity:.65}.search-date-control:not(.has-date) input::-webkit-datetime-edit{color:transparent}.search-date-control.has-date input::-webkit-datetime-edit{color:var(--ink)}header{background:#fffefa}.over-hero{background:linear-gradient(#142c418c,transparent)}.brand{font-family:'Cabin','Avenir Next',Arial,sans-serif}header nav{font-weight:500}.help-band{background:#e8eeea;border-top:1px solid #d6e0da}.help-band h2{font-size:35px}.help-band .eyebrow{color:#846b43}footer{background:#153b49}.footer-grid h4,.footer-connect h4{font-family:'Cabin','Avenir Next',Arial,sans-serif}.detail-main{background:var(--paper)}.detail-title h1{font-size:51px}.gallery{border-radius:8px}.gallery-caption{background:#edf0e7}.gallery-caption p{font-family:'Cabin','Avenir Next',Arial,sans-serif;font-size:29px;line-height:1.2;font-weight:400}.gallery-caption>span{color:#927047}.booking-panel{background:#fffefa;border-radius:9px;box-shadow:0 5px 25px #193b4809;border-color:#dce1da}.booking-panel h3{font-family:'Cabin','Avenir Next',Arial,sans-serif;font-size:29px;line-height:1.2}.booking-panel .eyebrow{font-size:11px}.booking-confidence small{font-family:'Cabin','Avenir Next',Arial,sans-serif}.customer-info h2,.video-section h2,.departure-section h2,.detail-layout article>h2{font-size:32px}.detail-icon{background:#e8efec;border-radius:50%}.packing,.info-box{background:#f0f0e7;border-radius:7px}.video-empty{border-radius:7px;background:#f2f3ec}.video-empty h3{font-size:24px}.fact-strip>div>.ui-icon{color:#537c87}.map-disclosure{border-color:#dbe0d7}.map-islands button{border-radius:6px}.boat-page-nav{gap:26px}.boat-page-nav a{font-size:14px;font-weight:500}.article h2{font-size:32px}.page-heading{background:#f0f1e9}.page-heading h1{font-size:clamp(38px,4vw,57px)}.source-note{font-size:12px}.gallery-caption small{font-size:11px}@media(max-width:800px){.hero-copy{padding:75px 24px 65px}.hero-copy h1{font-size:48px;letter-spacing:-.8px}.search-bar{padding:21px;gap:22px}.section-heading h2{font-size:35px}.search-bar .button{padding:15px}.hero-copy p:last-child{font-size:17px}.detail-title h1{font-size:42px}.gallery-caption p{font-size:24px}.section{padding-top:58px;padding-bottom:58px}}@media(max-width:500px){.hero{height:575px}.hero-copy h1{font-size:43px;line-height:1.1}.hero-copy h1 br{display:none}.hero-copy{max-width:390px;padding-top:52px}.hero-copy .eyebrow{font-size:10px;letter-spacing:1.6px}.hero-copy p:last-child{font-size:16px}.search-wrap{margin-top:-47px}.search-bar{gap:17px;padding:19px 20px}.search-bar label:first-child{border-bottom:1px solid var(--line);padding-bottom:15px}.search-bar label>span{font-size:12px}.search-bar select,.search-bar input,.date-prompt{font-size:15px!important}.search-bar .button{margin-top:2px;font-size:15px}.section{padding:49px 22px}.section-heading h2{font-size:34px}.section-heading .eyebrow{font-size:11px;letter-spacing:1.5px}.island-tile{height:250px}.island-tile div{bottom:24px;left:24px}.island-tile h3{font-size:40px}.detail-title h1{font-size:36px}.gallery-caption p{font-size:25px}.fact-strip>div{background:#eff1e9;border-radius:7px}.customer-info h2,.video-section h2,.departure-section h2,.detail-layout article>h2{font-size:29px}.guide-cards>a{padding:27px}.help-band h2{font-size:32px}.brand{font-size:17px}.hero-note{font-size:10px}.boat-page-nav{gap:20px}.boat-page-nav a{font-size:13px}}

/* Rounded typography and recognizable social colors. */
h1,h2,h3{font-weight:800;letter-spacing:-.035em}
.gallery-caption p,.booking-panel h3{font-weight:700;letter-spacing:-.025em}
.brand{font-weight:800}.guide-number{font-weight:700}
.social-pending{opacity:1}
.social-links>a,.social-links>button{gap:10px;padding:11px 14px;background:#ffffff08;border-color:#ffffff25;color:#f1f7fa}
.social-mark{width:34px;height:34px;border-radius:10px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;color:#fff;box-shadow:0 2px 7px #0002}
.social-mark-youtube{background:#ff0033}
.social-mark-instagram{background:linear-gradient(135deg,#7638fa 0%,#d6249f 42%,#f77737 78%,#ffd76c 100%)}
.social-mark-facebook{background:#1877f2}
.social-mark-tiktok{background:#080b0d}
.social-mark-tiktok svg{filter:drop-shadow(-1px 0 0 #25f4ee) drop-shadow(1px 1px 0 #fe2c55)}
.social-mark svg{width:21px;height:21px}
.footer-connect h4{line-height:1.4;max-width:100%}
@media(max-width:500px){.social-links>a,.social-links>button{justify-content:flex-start;padding:11px 12px}.footer-grid a{overflow-wrap:anywhere}.footer-grid h4{line-height:1.4}}

/* Compact, playful type with a moderate heading weight. */
body{font-family:'Cabin','Avenir Next',Arial,sans-serif;font-weight:500;letter-spacing:-.015em}
h1,h2,h3,.booking-panel h3,.gallery-caption p,.guide-number{font-family:'Cabin','Avenir Next',Arial,sans-serif;font-weight:500;letter-spacing:-.035em}
.brand{font-family:'Cabin','Avenir Next',Arial,sans-serif;font-weight:500;letter-spacing:.04em}.brand span span{letter-spacing:.12em;font-weight:500}
h4,.footer-connect h4,.footer-grid h4{font-family:'Cabin','Avenir Next',Arial,sans-serif;font-weight:700;letter-spacing:-.02em}
button,input,select,.search-bar select,.search-bar input{font-family:'Cabin','Avenir Next',Arial,sans-serif;letter-spacing:-.015em}
.eyebrow{letter-spacing:.08em}.booking-panel h3{font-weight:500}.guide-number{font-weight:500}
.guest-reviews{margin-top:42px;scroll-margin-top:24px;border-top:1px solid var(--line);padding-top:30px}
.reviews-heading{display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap}.reviews-heading h2{font-size:32px}
.review-stars{position:relative;display:inline-block;font-family:'Cabin','Avenir Next',Arial,sans-serif;font-size:18px;line-height:1.2;letter-spacing:2px;color:#ccd4d5;white-space:nowrap;flex-shrink:0}.review-stars-fill{position:absolute;top:0;left:0;overflow:hidden;color:#b57812}
.review-summary{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin:18px 0;font-size:14px;color:var(--muted)}.review-summary>strong{font-size:23px;color:var(--ink)}.review-summary strong span{font-size:14px;font-weight:500}
.review-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:21px}.review-grid:has(>figure:only-child){grid-template-columns:1fr}
.guest-review{margin:0;padding:23px;border-radius:10px;border:1px solid var(--line);background:#fffefa}.review-meta{display:flex;justify-content:space-between;gap:12px;align-items:center;flex-wrap:wrap}.review-meta>span:last-child{font-size:13px;color:var(--muted)}
.guest-review blockquote{margin:18px 0 22px;font-size:18px;line-height:1.5;color:var(--ink);font-weight:600}.guest-review figcaption{display:flex;flex-direction:column;gap:3px;font-size:14px}.guest-review figcaption span{color:var(--muted);font-size:13px}
.review-provenance{font-size:13px;color:var(--muted);line-height:1.5}.review-provenance a{text-decoration:underline;text-underline-offset:3px}
.review-badge{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin-top:14px;font-size:13px;line-height:1.4}.review-badge .review-stars{font-size:15px;letter-spacing:1px}.review-badge>span:last-child{color:var(--muted);font-size:12px}.review-badge strong{font-weight:700}
@media(max-width:500px){.review-grid{grid-template-columns:1fr}.reviews-heading h2{font-size:29px}.guest-review{padding:20px}.brand{letter-spacing:.025em}.brand span span{letter-spacing:.1em}}

/* Grounded charter typography with firmer, less rounded letterforms. */
body{font-weight:400;letter-spacing:0}
h1,h2,h3,.booking-panel h3,.gallery-caption p{font-weight:600;letter-spacing:-.025em}
.brand{font-weight:700;letter-spacing:.035em}.brand span span{font-weight:600;letter-spacing:.1em}
button,input,select,.search-bar select,.search-bar input{letter-spacing:0}
.button{font-weight:600}.guide-number{font-weight:600}.eyebrow{letter-spacing:.08em}

.gallery-photo{border:0;background:#153b49;padding:0;position:relative;overflow:hidden;width:100%;height:100%;min-height:0;cursor:zoom-in}.gallery-photo img{width:100%;height:100%;object-fit:cover}.gallery-photo>span{position:absolute;bottom:14px;right:14px;background:#153b49d9;color:white;padding:5px 11px;border-radius:5px;font-size:13px}.gallery-photo:hover img{filter:brightness(.95)}
.media-dialog{width:min(960px,calc(100vw - 32px));max-height:calc(100dvh - 40px);border:0;border-radius:12px;padding:18px;background:#fffefa;color:var(--ink);overflow:auto}.media-dialog::backdrop{background:#092630d9}.media-dialog-header{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-bottom:15px}.media-dialog-header h2{font-size:21px;line-height:1.25}.media-dialog-header button{width:44px;height:44px;border:1px solid var(--line);border-radius:50%;font-size:30px;line-height:1;background:white;color:var(--ink);flex-shrink:0}.photo-dialog>img{width:100%;height:auto;max-height:calc(100dvh - 150px);object-fit:contain}.review-note-dialog{max-width:580px;padding:24px}.review-note-dialog .review-provenance{font-size:16px;line-height:1.6}.review-note-button{background:none;border:0;padding:0;margin-top:17px;color:var(--muted);font-size:13px;text-decoration:underline;text-underline-offset:4px}.card-bottom{justify-content:flex-end}.card-bottom>span:empty{display:none}
@media(max-width:500px){.gallery-photo:nth-child(2){display:none}.gallery-photo.gallery-main{grid-row:auto;height:280px}.media-dialog-header h2{font-size:18px}}

/* Planning tips stay on the page, with clear icons and useful details. */
#planning,.planning-tip{scroll-margin-top:24px}.planning-tips{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px}.planning-tip{padding:26px;background:#fffefa;border:1px solid var(--line);border-radius:9px}.planning-icon{display:inline-flex;align-items:center;justify-content:center;width:48px;height:48px;margin-bottom:18px;background:#e8efec;color:#086488;border-radius:12px}.planning-icon .ui-icon{width:27px;height:27px}.planning-tip h3{font-size:25px;line-height:1.2}.planning-tip p{font-size:16px;color:var(--muted);line-height:1.6;margin-top:13px}.planning-tip ul{margin:18px 0 0;padding:17px 0 0 18px;border-top:1px solid var(--line);color:var(--muted);font-size:14px;line-height:1.6}.planning-tip li+li{margin-top:9px}.planning-tip li::marker{color:#086488}
@media(max-width:800px){.planning-tips{grid-template-columns:1fr;gap:18px}.planning-tip{padding:24px}.planning-icon{margin-bottom:14px}.planning-tip h3{font-size:26px}}

/* Owner-supplied fish illustrations: a little local color, clear of controls. */
.fish-art{object-fit:contain;flex-shrink:0;pointer-events:none;user-select:none}
.fish-heading-copy,.help-copy{display:flex;align-items:center;gap:24px;min-width:0}
.heading-fish{width:108px;height:92px;transform:rotate(-8deg)}
.fish-heading .text-link{flex-shrink:0}
.help-fish{width:100px;height:120px;transform:rotate(6deg)}
.help-copy>div{min-width:0}
.fish-caption{position:relative;padding-right:120px;min-height:140px}
.caption-fish{position:absolute;width:82px;height:95px;right:20px;top:50%;transform:translateY(-50%) rotate(-8deg)}
@media(max-width:800px){.fish-heading{align-items:flex-start;flex-direction:column}.fish-heading-copy,.help-copy{gap:18px}.heading-fish{width:84px;height:76px}.help-fish{width:90px;height:106px}}
@media(max-width:500px){.fish-heading-copy{gap:14px}.heading-fish{width:72px;height:72px}.fish-heading h2{font-size:29px}.help-copy{gap:16px;align-items:flex-start}.help-fish{width:74px;height:90px;margin-top:22px}.help-copy h2{font-size:29px}.fish-caption{padding-right:106px;min-height:130px}.caption-fish{width:72px;height:88px;right:18px}.fish-caption p{display:block;margin:0 0 10px;font-size:24px}.fish-caption small{display:block}}
/* Fish artwork is a compact visual collection, not a catch promise. */
.fish-showcase{background:#eef2eb;border-block:1px solid #dce4da}
.fish-showcase .section-heading{margin-bottom:24px}
.fish-showcase .section-heading>p:last-child{font-size:17px;margin-top:12px}
.fish-lineup{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:24px}
.fish-species{margin:0;min-width:0;text-align:center}
.fish-stage{height:155px;display:flex;align-items:center;justify-content:center;padding:6px}
.fish-stage img{width:100%;height:100%;object-fit:contain}
.fish-species h4{font-size:23px;margin-top:15px;font-weight:600;letter-spacing:-.025em;line-height:1.2}
.fish-species figcaption p{font-size:14px;color:var(--muted);margin-top:4px}
.fish-trip-note{max-width:730px;margin:30px auto 0;text-align:center;font-size:14px;color:var(--muted)}
.fish-source{display:block;width:fit-content;margin:13px auto 0;font-size:12px;color:var(--muted);text-decoration:underline;text-underline-offset:3px}
@media(max-width:800px){.fish-lineup{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px 18px}.fish-stage{height:145px}}
@media(max-width:500px){.fish-lineup{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 14px}.fish-stage{height:120px}.fish-species h4{font-size:22px;margin-top:8px}.fish-species-blue-marlin{grid-column:1/-1;max-width:220px;width:100%;justify-self:center}.fish-species-blue-marlin .fish-stage{height:125px}.fish-showcase .section-heading>p:last-child{font-size:16px}.fish-trip-note{font-size:13px}}
.fish-group-title{text-align:center;font-size:23px;margin-bottom:18px;color:var(--ink)}
.bottomfish-group{margin-top:40px;padding-top:30px;border-top:1px solid #d2ddd0}
.fish-group-intro{text-align:center;color:var(--muted);font-size:15px;margin:0 0 16px}
.bottomfish-lineup{grid-template-columns:repeat(5,minmax(0,1fr));max-width:1200px;margin:0 auto}
.bottomfish-trip-note{max-width:650px;text-align:center;font-size:14px;color:var(--muted);margin:24px auto 0}
.fish-sources{display:flex;justify-content:center;gap:8px 24px;flex-wrap:wrap;margin-top:12px}
.fish-sources .fish-source{margin:0}
@media(max-width:800px){.bottomfish-lineup{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:500px){.bottomfish-lineup{grid-template-columns:repeat(2,minmax(0,1fr))}.bottomfish-lineup>.fish-species:last-child{grid-column:1/-1;max-width:220px;width:100%;justify-self:center}.bottomfish-group{margin-top:30px;padding-top:26px}.bottomfish-trip-note{font-size:13px}}
.fish-coastal-disclosure{margin-top:30px;border:1px solid #ccd9ce;border-radius:9px;background:#fffefa;overflow:hidden}
.fish-coastal-disclosure>summary{padding:20px 24px;cursor:pointer;color:var(--ink);font-size:21px;font-weight:600;line-height:1.3}
.fish-coastal-disclosure>summary small{display:block;font-size:13px;font-weight:400;color:var(--muted);margin:6px 0 0 20px}
.fish-coastal-disclosure>summary:focus-visible{outline:3px solid var(--blue);outline-offset:-4px}
.coastal-lineup{grid-template-columns:repeat(4,minmax(0,1fr));padding:10px 24px 26px}
@media(max-width:800px){.coastal-lineup{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:500px){.coastal-lineup{padding:4px 16px 24px}.fish-coastal-disclosure>summary{font-size:20px;padding:18px}.coastal-lineup .fish-species h4{font-size:21px}}
.boat-inclusions{margin:30px 0}.inclusion-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px!important;list-style:none;padding:0;margin:20px 0}
.inclusion-grid li{display:flex;align-items:flex-start;gap:13px;padding:15px;background:#edf2eb;border:1px solid #dce4da;border-radius:8px;min-width:0}
.inclusion-mark{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:38px;height:38px;border-radius:10px;background:#dceae4;color:#17677a}.inclusion-mark .ui-icon{width:25px;height:25px;margin:0}
.inclusion-grid li>span:last-child{font-size:16px;font-weight:600}.inclusion-grid small{display:block;margin-top:4px;color:var(--muted);font-size:13px;font-weight:400;line-height:1.4}.inclusion-note{font-size:14px;color:var(--muted)}
.boat-inclusions .source-note,.boat-fishing .source-note{display:inline-block;font-size:12px;color:var(--muted);text-decoration:underline;text-underline-offset:3px;margin-top:10px}
.boat-fishing{margin:36px 0;padding:26px;border:1px solid #dce4da;border-radius:10px;background:#fffefa;scroll-margin-top:24px}.boat-fishing h2{font-size:30px}
.fish-basis{font-size:14px;color:var(--muted)}.boat-fish-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px 18px;margin-top:22px}.boat-fish-grid figure{margin:0;min-width:0;text-align:center}.boat-fish-grid figure>div{height:110px}.boat-fish-grid img{width:100%;height:100%;object-fit:contain}.boat-fish-grid h3{font-size:20px;margin-top:10px}.boat-fish-grid figcaption p{font-size:12px;color:var(--muted);margin-top:3px}.fish-other{font-size:14px;color:var(--muted)}
.catch-policy{margin-top:24px;padding-top:22px;border-top:1px solid #dce4da;display:flex;gap:15px}.catch-policy-icon{flex-shrink:0;width:42px;height:42px;padding:9px;background:#e7efe8;border-radius:10px;color:#17677a}.catch-policy-icon .ui-icon{width:24px;height:24px}.catch-policy h3{font-size:23px}.catch-policy p{font-size:15px;color:var(--muted);margin-top:10px}.catch-policy .catch-policy-title{font-weight:600;color:var(--ink)}
@media(max-width:500px){.inclusion-grid{gap:10px!important}.inclusion-grid li{padding:12px;flex-direction:column;gap:9px}.inclusion-grid li>span:last-child{font-size:15px}.boat-fishing{padding:20px}.boat-fish-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 14px}.boat-fish-grid figure>div{height:95px}.boat-fishing h2{font-size:27px}.catch-policy{gap:12px}.catch-policy h3{font-size:22px}}
.vessel-overview{margin:28px 0;scroll-margin-top:24px}.vessel-overview h2{font-size:32px}.vessel-overview>p:not(.eyebrow){font-size:16px;color:var(--muted)}.vessel-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:22px 0 26px}.vessel-facts>div{padding:17px;background:#edf2eb;border:1px solid #dce4da;border-radius:8px;min-width:0}.vessel-facts dt{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--muted)}.vessel-facts dt .ui-icon{width:19px;height:19px}.vessel-facts dd{margin:8px 0 0;font-size:19px;font-weight:600;line-height:1.3}.vessel-overview h3{font-size:24px}.vessel-amenities{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 20px;list-style:none;padding:0;margin:18px 0 24px}.vessel-amenities li{display:flex;align-items:center;gap:11px;font-size:15px}.vessel-amenities .ui-icon{color:#17677a;flex-shrink:0;width:23px;height:23px}.vessel-fishing-setup{padding:20px;border-left:3px solid #82a9a0;background:#f3f4eb}.vessel-fishing-setup p{font-size:15px;color:var(--muted)}.vessel-more{margin-top:20px;border-block:1px solid var(--line);padding:14px 0}.vessel-more summary{cursor:pointer;font-size:15px;font-weight:600}.vessel-more p{font-size:14px;color:var(--muted)}.vessel-overview>.source-note{display:inline-block;margin-top:14px;font-size:12px;color:var(--muted);text-decoration:underline;text-underline-offset:3px}
@media(max-width:500px){.vessel-overview h2{font-size:29px}.vessel-facts>div{padding:14px}.vessel-facts dd{font-size:17px}.vessel-amenities{gap:14px}.vessel-amenities li{align-items:flex-start;font-size:14px}.vessel-fishing-setup{padding:17px}}
.island-art-note{margin:14px 0 0;text-align:right;font-size:11px;color:var(--muted)}.island-art-note a{text-decoration:underline;text-underline-offset:3px}

/* Seasonal fishing guide */
.season-teaser{display:grid;grid-template-columns:1.1fr 1fr;gap:52px;background:#e8eeea;align-items:center;border-block:1px solid #d6e0da}.season-teaser h2{max-width:510px}.season-teaser p{max-width:560px}.season-teaser form{display:grid;grid-template-columns:1fr 1fr;gap:15px}.season-teaser label,.season-month{font-size:14px;font-weight:600}.season-teaser select,.season-month select{display:block;margin-top:8px;padding:12px;background:#fffefa}.season-teaser .button,.season-teaser small{grid-column:1/-1}.season-teaser small{font-size:12px;color:var(--muted)}.season-guide{background:#fffefa;border:1px solid #dce1da;border-radius:12px;padding:30px;margin:36px 0 42px;scroll-margin-top:25px}.season-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:24px}.season-heading h2{font-size:32px}.season-heading p{max-width:690px;color:var(--muted)}.season-month{min-width:165px}.season-month .ui-icon{width:18px;height:18px;margin-right:6px;vertical-align:middle;color:var(--blue)}.season-tabs{display:flex;gap:10px;flex-wrap:wrap;margin:24px 0 18px}.season-tabs button{display:inline-flex;align-items:center;gap:8px;border:1px solid #cfddd8;background:#f3f4ed;border-radius:24px;padding:9px 15px;font-size:14px;color:var(--ink)}.season-tabs [aria-pressed=true]{background:#153b49;color:white;border-color:#153b49}.season-context{font-size:14px;font-weight:600;margin:20px 0 16px;color:var(--ink)}.season-fish-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px}.season-fish-card{display:flex;flex-direction:column;align-items:flex-start;text-align:left;background:#f5f6ef;border:1px solid #e0e5da;border-radius:10px;padding:16px;color:var(--ink);min-width:0;transition:border-color .15s,transform .15s}.season-fish-card:hover{border-color:#2c849c;transform:translateY(-2px)}.season-art{width:100%;height:120px;display:flex;align-items:center;justify-content:center;margin-bottom:10px}.season-art img{height:100%;width:100%;object-fit:contain}.season-fish-card strong{font-size:22px;margin:10px 0 2px;line-height:1.3}.season-common{font-size:13px;color:var(--muted)}.season-status{font-size:11px;line-height:1.4;padding:5px 8px;border-radius:5px;background:#e7ebe4;color:#415d61;min-height:25px}.season-status.season-strong{background:#d7ebe2;color:#1d614e}.season-card-link{font-size:12px;color:#206581;display:flex;gap:7px;align-items:center;margin-top:18px}.season-card-link .ui-icon{width:16px;height:16px}.season-pattern{font-size:14px;color:var(--muted)}.season-disclaimer{font-size:12px;color:var(--muted);border-top:1px solid var(--line);padding-top:18px;margin-top:24px}.season-sources{margin-top:14px;font-size:12px;color:var(--muted)}.season-sources summary{cursor:pointer;color:#206581;font-weight:600}.season-sources a,.season-dialog .source-note a{text-decoration:underline;text-underline-offset:3px}.season-sources p{margin-top:10px}.season-bottom-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin:20px 0}.season-bottom-grid figure{margin:0;background:#f5f6ef;border-radius:8px;padding:12px;text-align:center}.season-bottom-grid img{height:90px;object-fit:contain}.season-bottom-grid strong,.season-bottom-grid span{display:block}.season-bottom-grid strong{font-size:16px}.season-bottom-grid span{font-size:11px;color:var(--muted);line-height:1.4;margin-top:4px}.season-bottom-grid+p{font-size:14px;margin-bottom:18px}.season-guide [hidden]{display:none!important}.season-guide-boat{padding:24px;margin:32px 0}.season-guide-boat .season-heading{display:block}.season-guide-boat .season-month{display:block;max-width:220px;margin-top:20px}.season-guide-boat .season-fish-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.season-boat-link{margin:25px 0}.season-dialog{max-width:600px;width:calc(100% - 32px);max-height:90vh;overflow:auto;border:1px solid var(--line);border-radius:14px;padding:24px;background:#fffefa;color:var(--ink)}.season-dialog::backdrop{background:#082a40b3}.season-detail-art{height:180px;object-fit:contain;margin:15px 0}.season-dialog .button{margin-top:22px;width:100%}.season-dialog p{font-size:14px}.season-match-note{color:var(--muted);font-size:12px!important}.season-dialog .source-note{display:block;margin-top:20px}#charter-results{scroll-margin-top:30px}#clear-season-fish{font-size:13px;white-space:nowrap}
@media(max-width:900px){.season-teaser{gap:30px}.season-fish-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.season-bottom-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:600px){.season-teaser{grid-template-columns:1fr;gap:25px}.season-guide{padding:20px;margin-top:28px}.season-heading{display:block}.season-heading h2{font-size:28px}.season-heading p{font-size:14px}.season-month{display:block;margin-top:20px;max-width:260px}.season-tabs button{font-size:12px;padding:8px 11px}.season-fish-grid,.season-guide-boat .season-fish-grid{gap:10px}.season-fish-card{padding:12px}.season-art{height:95px}.season-fish-card strong{font-size:20px}.season-status{font-size:10px}.season-card-link{font-size:11px}.season-bottom-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.season-dialog{padding:20px}.season-guide-boat{padding:17px}.season-context{font-size:13px}}
@media(prefers-reduced-motion:reduce){.season-fish-card{transition:none}.season-fish-card:hover{transform:none}}

/* Official horizontal brand assets: light header, photo header, dark footer. */
.brand.brand-horizontal{display:block;width:280px;max-width:calc(100% - 60px);letter-spacing:normal;line-height:1}.brand.brand-horizontal img{width:100%;height:auto;border-radius:0;object-fit:contain}footer .brand.brand-horizontal{width:300px;max-width:100%;margin-bottom:15px}.over-hero .brand-horizontal{filter:drop-shadow(0 1px 5px #082a4070)}
@media(max-width:1100px){header .brand.brand-horizontal{width:245px}header nav{gap:17px}}
@media(max-width:800px){header .brand.brand-horizontal{width:260px}footer .brand.brand-horizontal{width:290px}}
@media(max-width:500px){header .brand.brand-horizontal{width:245px}footer .brand.brand-horizontal{width:280px}}

.about-main{background:var(--paper,#fffefa)}.about-intro{display:grid;grid-template-columns:1fr 1.1fr;gap:55px;align-items:center}.about-intro h1{font-size:clamp(40px,4.6vw,62px);letter-spacing:-1px}.about-lead{font-size:23px;line-height:1.4;margin-top:25px}.about-intro .text-link{display:inline-flex;align-items:center;gap:8px;margin-top:25px}.about-story-photo,.about-partner-photo{margin:0}.about-story-photo .gallery-photo{width:100%;border-radius:10px;overflow:hidden}.about-story-photo img{height:auto;aspect-ratio:4/3;object-position:68% 50%}.about-story-photo figcaption{font-size:13px;color:var(--muted);margin-top:12px}.about-purpose{display:grid;grid-template-columns:1fr 1fr;column-gap:60px;background:#e8eeea}.about-purpose>.eyebrow{grid-column:1/-1}.about-purpose>div p:first-child{margin-top:0}.about-team-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px}.about-person{border:1px solid #dce1da;border-radius:10px;overflow:hidden;background:#fffefa}.about-person-photo{display:block;width:100%;padding:0;border:0}.about-person-photo img{width:100%;height:auto;aspect-ratio:3/4;object-fit:cover}.about-person>div{padding:28px}.about-person h3,.about-team-notes h3{font-size:30px}.about-person p,.about-team-notes p{font-size:16px}.about-team-notes{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin-top:30px}.about-team-notes article{padding:28px;background:#edf0e7;border-radius:10px}.about-team-icon{display:inline-flex;padding:12px;background:#dbe8e1;border-radius:50%;margin-bottom:20px;color:#206581}.about-team-icon .ui-icon{width:28px;height:28px}.about-partners{display:grid;grid-template-columns:.8fr 1fr;gap:60px;align-items:center;border-top:1px solid var(--line)}.about-partner-photo .gallery-photo{width:100%;border-radius:10px;overflow:hidden}.about-partner-photo img{height:auto;aspect-ratio:3/4}.about-partners .button{margin-top:28px}.about-company{font-size:12px;color:var(--muted);margin-top:24px}#our-team{scroll-margin-top:25px}
@media(max-width:800px){.about-intro,.about-purpose,.about-partners{grid-template-columns:1fr;gap:28px}.about-purpose>.eyebrow{margin-bottom:0}.about-purpose h2{margin-top:0}.about-story-photo img{aspect-ratio:16/9}.about-team-grid,.about-team-notes{gap:20px}.about-person>div,.about-team-notes article{padding:22px}.about-partner-photo{max-width:440px}.about-lead{font-size:21px}}
@media(max-width:560px){.about-team-grid,.about-team-notes{grid-template-columns:1fr}.about-intro h1{font-size:43px}.about-story-photo img{aspect-ratio:4/3}.about-person-photo img{aspect-ratio:3/4}.about-team .section-heading h2,.about-purpose h2,.about-partners h2{font-size:32px}}

.about-team-notes article.about-jessie-card{padding:0;overflow:hidden;border:1px solid #dce1da;background:#fffefa}.about-jessie-card>div{padding:28px}.about-jessie-photo{display:block;width:100%;height:auto;min-height:0;padding:0;border:0}.about-jessie-photo img{display:block;width:100%;height:auto;object-fit:contain}.about-team-notes:has(.about-jessie-card)>article:not(.about-jessie-card){display:flex;flex-direction:column;align-items:flex-start;justify-content:center}@media(max-width:800px){.about-jessie-card>div{padding:22px}}

.about-team-notes article.about-kelly-card{display:block;padding:0;overflow:hidden;border:1px solid #dce1da;background:#fffefa}.about-kelly-card>div{padding:28px}.about-kelly-photo{display:block;width:100%;height:auto;min-height:0;padding:0;border:0}.about-kelly-photo img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;object-position:40% 20%}.kelly-boat-memories{margin-top:22px;border-top:1px solid var(--line);padding-top:17px}.kelly-boat-memories summary{color:#206581;cursor:pointer;font-size:14px;font-weight:600}.kelly-boat-memories>p{font-size:13px;color:var(--muted)}.kelly-memory-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:15px}.kelly-memory-grid .gallery-photo{width:100%;height:auto;min-height:0;border-radius:7px;overflow:hidden}.kelly-memory-grid img{width:100%;height:auto;aspect-ratio:1;object-fit:cover}.about-team-notes:has(.about-kelly-card){align-items:start}@media(max-width:800px){.about-kelly-card>div{padding:22px}}

/* Consistent photo frames, with full originals available in the lightbox. */
.about-person{display:grid;grid-template-columns:180px 1fr;align-items:start;padding:24px;gap:24px}.about-person>div{padding:0}.about-person-photo{border-radius:8px;overflow:hidden}.about-person-photo img{aspect-ratio:3/4;height:auto}.about-team-grid{grid-template-columns:1fr}.about-partner-photo img{aspect-ratio:4/3;object-position:40% 25%}.catch-memory-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px}.catch-memory-grid figure{margin:0}.catch-memory-grid .gallery-photo{width:100%;padding:0;border-radius:12px;overflow:hidden}.catch-memory-grid img{aspect-ratio:4/3;height:auto;object-position:center}.catch-memory-grid figcaption{font-size:14px;color:var(--muted);margin-top:12px}.boat-photo-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.boat-photo-placeholder{margin:0}.boat-photo-frame{aspect-ratio:4/3;border:1px solid #d8e2df;border-radius:12px;background:linear-gradient(145deg,#edf3ef,#e2eceb);display:flex;align-items:center;justify-content:center;flex-direction:column;gap:14px;color:#647c7d}.boat-photo-frame .ui-icon{width:36px;height:36px}.boat-photo-frame span{font-size:13px}.boat-photo-placeholder figcaption{margin-top:10px;font-size:15px}.boat-photo-section{scroll-margin-top:24px;margin:35px 0}.boat-photo-section .section-heading{margin-bottom:24px}@media(max-width:650px){.about-person{grid-template-columns:100px 1fr;padding:18px;gap:18px}.about-person h3{font-size:26px}.about-person p{font-size:15px}.boat-photo-grid{grid-template-columns:1fr 1fr;gap:14px}.catch-memory-grid{grid-template-columns:1fr}.catch-memory-grid img{aspect-ratio:4/3}}

/* Handheld booking and live island conditions. */
.mobile-book-bar{display:none}#booking-panel{scroll-margin-top:24px}.conditions-section{background:#eaf1ef}.conditions-heading{display:flex;justify-content:space-between;align-items:end;gap:24px}.conditions-heading h2{margin-bottom:10px}.conditions-heading label{min-width:240px}.conditions-heading select{width:100%;min-height:48px;margin-top:8px;padding:10px;border:1px solid #b5c8c6;border-radius:8px;background:white;font:inherit;color:var(--ink)}.conditions-meta{font-size:13px;color:var(--muted)}.conditions-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:10px;margin:22px 0}.conditions-day{background:#fffefa;border:1px solid #cfddda;border-radius:10px;padding:15px 12px;min-width:0}.conditions-day h3{font:700 17px Cabin,sans-serif;margin:0 0 12px}.conditions-day p{font-size:13px;line-height:1.5;margin:8px 0;overflow-wrap:anywhere}.conditions-day .condition-temp{font-size:20px;font-weight:700}.conditions-day .condition-tides{border-top:1px solid #e0e5df;padding-top:10px}.condition-tides strong{display:block}.conditions-alerts{padding:16px 20px;background:#fffefa;border-radius:9px;border:1px solid #cfddda}.conditions-alerts h3{font:700 18px Cabin,sans-serif;margin:0 0 10px}.conditions-alerts p,.conditions-alerts summary{font-size:14px}.conditions-alerts details{margin:10px 0}.conditions-links{display:flex;flex-wrap:wrap;gap:18px;font-size:13px;margin-top:18px}.conditions-note{font-size:13px;max-width:800px}.conditions-refresh{background:white;border:1px solid #b5c8c6;border-radius:7px;padding:9px 14px;font:inherit;cursor:pointer;min-height:44px}.conditions-refresh:disabled{opacity:.6}.conditions-alerts pre{white-space:pre-wrap;font:inherit;font-size:13px}.conditions-section a{text-decoration:underline}.mobile-book-bar a{white-space:nowrap}
@media(max-width:1100px){.conditions-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:800px){body:has(.mobile-book-bar){padding-bottom:calc(88px + env(safe-area-inset-bottom,0px))}.mobile-book-bar{position:fixed;left:0;right:0;bottom:0;z-index:80;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 18px calc(12px + env(safe-area-inset-bottom,0px));background:#fffefa;border-top:1px solid #cfddda;box-shadow:0 -4px 18px #082a4014}.mobile-book-bar>span{font-size:14px;font-weight:700;line-height:1.3;min-width:0}.mobile-book-bar small{display:block;font-size:11px;font-weight:400;margin-top:4px}.mobile-book-bar .button{min-height:48px;padding:12px 20px;display:inline-flex;align-items:center;justify-content:center;gap:8px;font-size:15px}.conditions-heading{display:block}.conditions-heading label{display:block;max-width:340px;margin:20px 0}.conditions-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:360px){.mobile-book-bar{padding-left:12px;padding-right:12px}.mobile-book-bar .button{padding:12px 14px}.mobile-book-bar>span{font-size:12px}}

.test-profile-notice{margin:10px 5% 24px;background:#f4eddb;border:1px solid #dcccaa;border-radius:9px;padding:16px 22px}.test-profile-notice strong{font-size:15px;color:#76582c}.test-profile-notice p{margin-top:5px;font-size:13px}.test-trip-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin:23px 0 14px}.test-trip-grid article{padding:22px;border:1px solid #dce1da;background:#fffefa;border-radius:9px}.test-trip-icon{color:#206581}.test-trip-grid h3{font-size:23px;margin-top:10px}.test-trip-grid p{font-size:14px;color:var(--muted)}.test-trip-grid strong{display:block;font-size:28px;margin-top:18px}.test-trip-grid small{display:block;font-size:11px;font-weight:400;color:var(--muted)}.test-trip-grid .text-link{display:inline-flex;align-items:center;gap:7px;margin-top:19px;font-size:14px}.test-crew-story{padding:22px;background:#edf0e7;border-radius:8px;margin:24px 0}.test-booking label{display:block;font-size:14px;margin:20px 0 8px}.test-booking select,.test-booking input{margin-top:7px}.test-reference-price{font-weight:600;color:#206581;font-size:15px}.test-booking>.button{margin-top:22px}.test-booking>.source-note{display:block;margin-top:16px}#trip-options{scroll-margin-top:24px}@media(max-width:500px){.test-trip-grid{grid-template-columns:1fr}.test-profile-notice{margin-inline:22px;padding:15px}.test-trip-grid article{padding:19px}}

/* Charter image-first layout */
.charter-hero{margin:0 0 28px;position:relative;overflow:hidden;border-radius:12px}.charter-hero img{height:420px;width:100%;object-fit:cover}.charter-hero figcaption{position:absolute;bottom:12px;left:16px;color:white;background:#153b49b8;border-radius:4px;padding:4px 10px;font-size:11px}.detail-title{margin-bottom:18px}.charter-people{margin:38px 0;padding:26px;background:#edf1ec;border-radius:10px}.charter-people-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px;margin-top:20px}.charter-people-grid img{aspect-ratio:4/3;border-radius:8px;margin-bottom:14px}.charter-gallery-photo{margin:0}.charter-gallery-photo img{aspect-ratio:4/3;height:auto;border-radius:10px;object-fit:cover}.charter-gallery-photo figcaption{font-size:14px;color:var(--muted);margin-top:8px}.boat-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
@media(max-width:800px){.detail-main>.charter-hero{margin-left:-20px;margin-right:-20px;margin-top:-35px;border-radius:0}.charter-hero img{height:auto;aspect-ratio:4/3}.detail-title{display:block;margin-bottom:14px}.detail-title h1{font-size:clamp(30px,7.5vw,42px);line-height:1.13;letter-spacing:-.6px}.detail-title .share{margin-top:16px;padding:9px 14px;font-size:13px}.detail-main>.breadcrumbs{font-size:12px;line-height:1.6;margin-bottom:24px;overflow-wrap:anywhere}.charter-people{padding:20px}.boat-photo-grid{gap:12px}.charter-gallery-photo figcaption{font-size:12px}}
/* Compact conditions update and hero video controls */
.conditions-compact{margin:18px auto;padding:14px 18px;border:1px solid var(--line);border-radius:12px;max-width:1240px;font-size:13px}.conditions-compact .conditions-heading{gap:12px;align-items:center;flex-wrap:wrap}.conditions-compact h2{font-size:17px;margin:0}.conditions-compact .conditions-heading label{min-width:0;font-size:0}.conditions-compact select{min-height:36px;margin:0;font-size:13px}.conditions-compact .conditions-grid{display:block;margin:8px 0}.conditions-compact .conditions-day{display:flex;align-items:center;flex-wrap:wrap;gap:8px 18px;padding:0;border:0;background:none}.conditions-compact .conditions-day h3{font-size:13px;margin:0}.conditions-compact .conditions-day h3 br,.conditions-compact .conditions-day h3 small{display:none}.conditions-compact .conditions-day p{margin:0;font-size:13px}.conditions-compact .condition-tides{display:flex;gap:18px;border:0;padding:0;margin:0}.conditions-compact .condition-tides strong{margin-right:6px}.conditions-compact .conditions-alerts{padding:8px 0;background:none;margin:0}.conditions-compact .conditions-alerts h3{font-size:13px;margin:0}.conditions-compact .conditions-alerts p,.conditions-compact .conditions-meta,.conditions-compact .conditions-note{font-size:11px;margin:4px 0}.conditions-compact .conditions-links{gap:10px;font-size:11px}.conditions-compact .conditions-refresh{font-size:11px;padding:3px 8px;margin:3px 0}.booking-column{min-width:0}.booking-column .booking-panel{position:static}.booking-column .conditions-compact{margin-top:12px}.booking-column .conditions-heading select{max-width:100%}.hero-video-actions{padding:10px 0;display:flex;gap:10px}.hero-video-button,.video-pending{display:inline-flex;align-items:center;gap:7px;font-size:13px}.hero-video-button{background:white;border:1px solid var(--line);border-radius:24px;padding:9px 14px;cursor:pointer}.hero-video-actions svg{width:19px;height:19px}.video-pending{color:var(--muted)}.home-memories{margin:45px 0}.home-memories h2{font-size:30px}.home-memories .catch-memory-grid img{width:100%;height:240px;object-fit:cover}#know-before-you-go{margin:38px 0}@media(max-width:800px){.conditions-compact{margin:14px;padding:12px}.booking-column .conditions-compact{margin:12px 0}.hero-video-actions{padding:10px 18px}.home-memories .catch-memory-grid img{height:180px}}

.charter-photo-carousel{margin:12px 0 8px}.charter-photo-strip{display:flex;gap:10px;overflow-x:auto;scroll-snap-type:x proximity;padding:4px 0 8px;-webkit-overflow-scrolling:touch}.charter-photo-strip .gallery-photo{flex:0 0 160px;width:160px;height:110px;scroll-snap-align:start;border-radius:8px;overflow:hidden;padding:0;border:0;background:#e8efed}.charter-photo-strip img{display:block;width:100%;height:100%;object-fit:cover}.photo-strip-note{display:block;color:var(--muted);font-size:12px}.share-site-button{width:44px;height:44px;min-width:44px;padding:10px;display:inline-flex;justify-content:center;align-items:center}.detail-main>.breadcrumbs{margin:8px 0 18px}.charter-photo-strip:focus-visible,.charter-photo-strip .gallery-photo:focus-visible{outline:2px solid var(--blue);outline-offset:2px}@media(max-width:600px){.charter-photo-strip .gallery-photo{flex-basis:124px;width:124px;height:86px}}

/* Charter identity and sharing stay within the hero on every screen. */
.charter-hero::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,transparent 30%,rgba(5,25,34,.86) 100%)}
.charter-hero-bottom{position:absolute;z-index:1;bottom:0;left:0;right:0;display:flex;align-items:flex-end;justify-content:space-between;gap:24px;padding:28px;color:#fff}
.charter-hero-heading{min-width:0;max-width:75%}.charter-hero-heading .eyebrow{color:#fff;margin:0 0 8px}.charter-hero-heading h1{color:#fff;font-size:clamp(28px,4vw,46px);line-height:1.1;margin:0 0 10px;overflow-wrap:anywhere}.charter-hero-location{display:flex;align-items:center;gap:7px;margin:0;color:#fff;font-size:15px}.charter-hero-location svg{flex-shrink:0}
.charter-hero-bottom .share{flex-shrink:0;margin:0;background:rgba(255,255,255,.96);color:#153b49;border:1px solid #fff;min-height:44px;padding:10px 16px}.charter-hero figcaption{z-index:1;bottom:auto;top:12px}
@media(max-width:800px){.charter-hero-bottom{padding:18px 16px;gap:12px}.charter-hero-heading{max-width:none;flex:1}.charter-hero-heading h1{font-size:clamp(23px,6vw,36px);margin-bottom:8px;letter-spacing:-.4px}.charter-hero-heading .eyebrow{font-size:10px;margin-bottom:6px}.charter-hero-location{font-size:12px;line-height:1.4}.charter-hero-bottom .share{font-size:12px;padding:10px;min-height:44px}.charter-hero img{min-height:300px;object-fit:cover}}

/* Keep desktop booking visible alongside the charter details. */
@media(min-width:801px){
  .detail-layout>.booking-column{position:sticky;top:20px;align-self:start;max-height:calc(100vh - 40px);max-height:calc(100dvh - 40px);overflow-y:auto;overscroll-behavior-y:contain;scrollbar-width:thin;border-radius:9px}
  .booking-column .booking-panel{position:static}
}

/* Available charter videos open from an icon over the hero photo. */
.charter-hero .hero-video-actions{position:absolute;top:16px;right:16px;z-index:2;padding:0;display:flex;gap:8px}
.charter-hero .hero-video-button{width:48px;height:48px;min-width:48px;padding:12px;justify-content:center;background:rgba(255,255,255,.96);color:#153b49;border:1px solid #fff;box-shadow:0 2px 12px #092d4633}
.charter-hero .hero-video-button svg{width:24px;height:24px}
.charter-hero .hero-video-button:hover{background:#e8f4fa}
.charter-hero .hero-video-button:focus-visible{outline:3px solid #087cbd;outline-offset:3px}
@media(max-width:800px){.charter-hero .hero-video-actions{top:12px;right:12px}}

/* Capitalize each word in site headlines. */
h1,h2,h3,h4,h5,h6{ text-transform:capitalize; }

/* Center the available-video control over the charter hero. */
.charter-hero .hero-video-actions{top:50%;left:50%;right:auto;transform:translate(-50%,-50%)}

/* Language choice remains available above the mobile menu. */
.language-control{display:flex;align-items:center;gap:5px;flex-shrink:0;border:1px solid var(--line);border-radius:8px;padding:5px 7px;color:var(--ink);background:var(--paper);margin-left:auto;margin-right:18px}.language-control svg{width:19px;height:19px;flex-shrink:0}.language-control select{max-width:103px;min-height:32px;border:0;background:transparent;color:inherit;font-size:14px;cursor:pointer}.language-control:focus-within{outline:2px solid var(--blue);outline-offset:3px}.language-control select:focus{outline:0}header nav{margin-left:12px}html:not([lang="en"]) body{font-family:'Cabin','Noto Sans',system-ui,sans-serif}html:not([lang="en"]) h1,html:not([lang="en"]) h2,html:not([lang="en"]) h3{letter-spacing:0;line-height:1.35}html:not([lang="en"]) .eyebrow{letter-spacing:.4px}html.language-loading #app{visibility:hidden}.booking-language-note,.review-translation-note{font-size:12px;line-height:1.6;color:var(--muted);margin-top:16px}.charter-photo-strip .gallery-photo:nth-child(2){display:block}@media(max-width:1200px){header{gap:8px}.menu-toggle{display:block}header nav{display:none;position:absolute;top:100%;left:0;right:0;background:white;color:var(--ink);padding:25px;margin:0;box-shadow:0 15px 20px #193d5120}header nav.open{display:flex;flex-direction:column;align-items:start}.language-control{margin-left:auto;margin-right:0}}@media(max-width:500px){header .brand.brand-horizontal{width:calc(100vw - 168px);max-width:245px;min-width:0}.language-control{padding:3px 4px;gap:3px}.language-control select{font-size:12px;max-width:81px;min-height:36px}.language-control svg{width:16px;height:16px}.menu-toggle{padding:4px;min-width:32px;flex-shrink:0}}

.help-boat-graphic{display:block;width:160px;height:auto;flex:0 0 160px;object-fit:contain}.help-copy{align-items:center}@media(max-width:1100px) and (min-width:801px){.help-boat-graphic{width:126px;flex-basis:126px}.help-band{gap:24px}.help-band .button{max-width:300px}}@media(max-width:800px){.help-boat-graphic{width:130px;flex-basis:130px}}@media(max-width:500px){.help-boat-graphic{width:86px;flex-basis:86px}.help-copy{gap:16px;align-items:center}}

.coastal-group{padding-top:36px}.help-copy>div{order:1}.help-copy>.help-boat-graphic{order:2}@media(max-width:500px){.coastal-group{padding-top:28px}}
/* Give the local-help illustration more presence without squeezing the text. */
.help-band{flex-wrap:wrap}.help-copy{flex:1 1 600px}.help-copy>.help-boat-graphic{width:220px;flex-basis:220px}.help-band>.button{max-width:100%}@media(max-width:1100px){.help-copy>.help-boat-graphic{width:200px;flex-basis:200px}}@media(max-width:800px){.help-copy{flex:0 1 auto;width:100%}.help-copy>.help-boat-graphic{width:170px;flex-basis:170px}}@media(max-width:500px){.help-copy>.help-boat-graphic{width:120px;flex-basis:120px}.help-copy{gap:14px}}

/* Homepage marlin artwork with a dedicated handheld crop. */
.hero-marlin>picture{position:absolute;inset:0;width:100%;height:100%}.hero-marlin>picture img{width:100%;height:100%;object-fit:cover;object-position:50% 0%}.hero-marlin::after{background:linear-gradient(90deg,rgba(5,25,34,.08) 30%,rgba(5,25,34,.7) 100%)}.hero-marlin .hero-copy{position:absolute;right:5%;top:50%;transform:translateY(-50%);max-width:520px;padding:65px 0 0;text-align:left;text-shadow:0 2px 12px #092d4666}.hero-marlin .hero-copy h1{font-size:clamp(40px,4.2vw,60px);max-width:520px}.hero-marlin .hero-note{bottom:55px;font-size:10px}
@media(max-width:1000px) and (min-width:801px){.hero-marlin .hero-copy{max-width:420px;right:4%}.hero-marlin .hero-copy h1{font-size:43px}}
@media(max-width:800px){.hero-marlin>picture img{object-position:50% 50%}.hero-marlin::after{background:linear-gradient(180deg,rgba(5,25,34,.12) 25%,rgba(5,25,34,.25) 43%,rgba(5,25,34,.86) 100%)}.hero-marlin .hero-copy{top:auto;bottom:0;left:0;right:0;transform:none;max-width:none;padding:0 24px 75px}.hero-marlin .hero-copy h1{font-size:38px;max-width:480px;line-height:1.1}.hero-marlin .hero-copy .eyebrow{font-size:10px;margin-bottom:10px}.hero-marlin .hero-copy p:last-child{font-size:16px;line-height:1.4;margin-top:12px}.hero-marlin .hero-note{right:24px;bottom:52px}}
@media(max-width:500px){.hero-marlin .hero-copy h1{font-size:34px;max-width:360px}.hero-marlin .hero-copy p:last-child{font-size:15px}.hero-marlin .hero-copy{padding-bottom:76px}}

/* Homepage heading breathing room */
.home-memories>h2{margin-bottom:28px;line-height:1.25}
.hero-marlin .hero-copy h1{letter-spacing:0;word-spacing:.06em;line-height:1.2}

.mobile-book-bar .button{text-align:center;justify-content:center}

/* Even, readable hero headline spacing on handheld screens. */
@media(max-width:800px){.hero-marlin .hero-copy h1{letter-spacing:.015em;word-spacing:.16em;line-height:1.3}}

/* Quiet island-chain backdrop for the seasonal fishing guide. */
.season-teaser{position:relative;isolation:isolate;overflow:hidden}
.season-teaser::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:url('/assets/hawaiian-island-chain-background.svg') center/110% auto no-repeat;opacity:.1}
@media(max-width:800px){.season-teaser::before{background-size:120% auto;background-position:center;opacity:.085}}

.boat-intro{margin:24px 0 28px;padding:18px 22px;border-left:3px solid var(--blue);background:var(--soft);border-radius:0 10px 10px 0}.boat-intro p{margin:0;max-width:920px;font-size:1.08rem;line-height:1.7;color:var(--ink)}@media(max-width:600px){.boat-intro{padding:15px 18px}.boat-intro p{font-size:1rem}}

.template-label{display:inline-block;padding:4px 10px;border-radius:20px;background:#fff0c8;color:#644b13;font:600 12px system-ui;margin:0 0 10px}.template-notice{padding:18px 24px;background:#fff4d9;border-radius:12px;margin:20px 0;color:#173e40}.template-notice p{margin:4px 0}

/* Boat-card island labels: compact, translucent, with north-up coastline silhouettes. */
.boat-card .island-badge{display:inline-flex;align-items:center;gap:6px;max-width:calc(100% - 20px);top:10px;right:10px;bottom:auto;left:auto;padding:5px 8px;border:1px solid #ffffff60;border-radius:6px;background:rgb(7 85 117 / 68%);color:#fff;font-size:12px;font-weight:700;line-height:1.25;backdrop-filter:blur(2px);text-shadow:0 1px 2px #0009;box-shadow:none}
.boat-card .island-badge svg{width:20px;height:20px;flex:none;fill:currentColor;filter:drop-shadow(0 1px 1px #0005)}
.boat-card .island-badge--oahu{background:rgb(7 85 117 / 68%)}
.boat-card .island-badge--maui{background:rgb(146 62 34 / 68%)}
.boat-card .island-badge--hawaii-island{background:rgb(101 59 115 / 68%)}
.boat-card .island-badge--kauai{background:rgb(36 96 61 / 68%)}

/* Guest-facing polish: island wayfinding, lighter actions, and open mobile typography. */
.island-tile h3{display:flex;align-items:center;gap:13px;line-height:1.2}
.island-tile .island-silhouette{width:44px;height:44px;fill:currentColor;flex:none;filter:drop-shadow(0 1px 3px #0005)}
.boat-card .card-bottom>a{display:inline-flex;align-items:center;justify-content:center;padding:10px 17px;min-height:42px;border:1px solid #0a6a875c;border-radius:7px;background:transparent;font-weight:600;transition:background .15s,border-color .15s}
.boat-card .card-bottom>a:hover,.boat-card .card-bottom>a:focus-visible{background:#0a6a870b;border-color:#0a6a87}
#planning .section-heading>.eyebrow{margin-bottom:20px;font-size:14px;line-height:1.6;letter-spacing:.07em}
#planning .section-heading h2{line-height:1.3;letter-spacing:0;max-width:760px;margin-inline:auto}
.help-copy .eyebrow{font-size:13px;line-height:1.65;letter-spacing:.07em;margin-bottom:18px}
.help-copy h2{letter-spacing:0;line-height:1.3;margin-bottom:20px}
.help-copy p:last-child{line-height:1.75;letter-spacing:.01em}
.customer-info>.eyebrow,#seasonal-guide .season-heading .eyebrow{font-size:16px;line-height:1.6;letter-spacing:.055em;margin-bottom:15px;font-weight:700}
.trip-fact-chips{display:flex;flex-wrap:wrap;gap:12px 16px;padding:0;list-style:none;margin:24px 0}
.trip-fact-chips li{display:flex;align-items:center;gap:10px;padding:10px 13px;border:1px solid #d7e2de;border-radius:8px;font-size:15px;line-height:1.45;background:#fff9;color:var(--ink)}
.trip-fact-chips .ui-icon{width:22px;height:22px;flex:none;color:#087187}
.trip-comfort{margin-top:15px}.boat-fishing .icon-heading .ui-icon{width:30px;height:30px;flex:none}
@media(max-width:700px){.island-tile .island-silhouette{width:36px;height:36px}.island-tile h3{gap:10px}#planning .section-heading h2,.help-copy h2{line-height:1.35;letter-spacing:0}.help-copy h2{font-size:30px}.customer-info>.eyebrow,#seasonal-guide .season-heading .eyebrow{font-size:16px}.trip-fact-chips{gap:10px}.trip-fact-chips li{font-size:14px;padding:9px 11px}}

/* Public island titles, departure details and customer review carousels. */
.island-tile h3>span{display:inline;font-size:clamp(24px,3.1vw,38px);line-height:1.15;font-weight:600;letter-spacing:0}.island-tile h3{margin:0;gap:12px}.island-tile .island-silhouette{width:38px;height:38px}.island-tile>div{max-width:100%}.departure-harbor{display:flex;align-items:center;gap:10px}.departure-harbor .ui-icon{width:22px;height:22px;flex:none;color:var(--blue)}.departure-section>p{margin-top:12px}.charter-photo-links{display:flex;flex-wrap:wrap;gap:14px 24px;padding:24px 0;border-top:1px solid var(--line);margin-top:32px}.reviews-controls{display:flex;gap:10px;align-items:center}.reviews-controls button{background:transparent;color:var(--ink);border:1px solid #b9ccca;border-radius:50%;width:44px;height:44px;font-size:22px}.reviews-controls button:disabled{opacity:.35;cursor:default}.reviews-heading{display:flex;align-items:center;justify-content:space-between;gap:20px}.review-grid.review-carousel{display:flex;gap:18px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;padding:3px 2px 15px;overscroll-behavior-inline:contain}.review-carousel .guest-review{flex:0 0 calc(80% - 18px);margin:0;scroll-snap-align:start}.review-carousel .guest-review:only-child{flex-basis:100%}.review-source{font-size:12px;text-decoration:underline}.review-provenance{font-size:12px;color:var(--muted);margin-top:14px}.review-slide-count{font-size:12px;min-width:42px;text-align:center}.reviews-controls button:focus-visible,.review-carousel:focus-visible{outline:3px solid #0683b6;outline-offset:3px}@media(max-width:700px){.island-tile h3>span{font-size:clamp(23px,5vw,32px)}.island-tile .island-silhouette{width:32px;height:32px}.island-tile h3{gap:9px}.review-carousel .guest-review{flex-basis:92%}.reviews-heading h2{font-size:28px}.mobile-book-bar .button{font-size:14px;padding:12px 16px}.charter-photo-links{flex-direction:column}}@media(prefers-reduced-motion:reduce){.review-grid.review-carousel{scroll-behavior:auto}}
