@font-face{font-family:'Kanit';font-style:normal;font-weight:500;font-display:swap;src:url(fonts/kanit-latin-500-normal.woff2) format('woff2')}@font-face{font-family:'Kanit';font-style:normal;font-weight:600;font-display:swap;src:url(fonts/kanit-latin-600-normal.woff2) format('woff2')}@font-face{font-family:'Kanit';font-style:italic;font-weight:700;font-display:swap;src:url(fonts/kanit-latin-700-italic.woff2) format('woff2')}@font-face{font-family:'Kanit';font-style:italic;font-weight:800;font-display:swap;src:url(fonts/kanit-latin-800-italic.woff2) format('woff2')}@font-face{font-family:'Kanit';font-style:italic;font-weight:900;font-display:swap;src:url(fonts/kanit-latin-900-italic.woff2) format('woff2')}@font-face{font-family:'Nunito Sans';font-style:normal;font-weight:200 1000;font-display:swap;src:url(fonts/nunito-sans-latin-opsz-normal.woff2) format('woff2')}

:root{--navy:#1B3A6E;--navy-deep:#132A52;--navy-2:#24497F;--royal:#3C6CB4;--royal-l:#A9C1E8;--gold:#E8B738;--gold-l:#F3CF6A;--gold-d:#7A5A10;
--sky:#EEF4FC;--sky-2:#DCE8F8;--white:#fff;--tx:#132A52;--mute:#44587A;--line:rgba(27,58,110,.14);--line-d:rgba(255,255,255,.16);
--hf:'Kanit','Arial Black',system-ui,sans-serif;--bf:'Nunito Sans',system-ui,sans-serif;--nav-h:74px;--r:14px;--wrap:1184px;--gut:28px}
@media(max-width:768px){:root{--nav-h:64px;--gut:16px}}
@media(min-width:1800px){:root{--wrap:1360px}html{font-size:17px}}
*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:calc(var(--nav-h) + 16px);overflow-x:clip;-webkit-text-size-adjust:100%}
body{font-family:var(--bf);color:var(--tx);background:#fff;line-height:1.62;-webkit-font-smoothing:antialiased}
img{max-width:100%;height:auto;display:block}
a{color:inherit}
h1,h2,h3,h4{font-family:var(--hf);font-weight:900;font-style:italic;text-transform:uppercase;line-height:.98;letter-spacing:-.005em;text-wrap:balance}
h3,h4{font-weight:800;line-height:1.08}
p{max-width:68ch}
.wrap{max-width:calc(var(--wrap) + var(--gut)*2);margin:0 auto;padding-inline:var(--gut)}
.skip-link{position:absolute;left:-9999px;top:0;z-index:9999;background:#111;color:#fff;padding:12px 18px;font-weight:700}
.skip-link:focus{left:0}
:focus-visible{outline:3px solid var(--royal);outline-offset:3px}
@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}
a,button{-webkit-tap-highlight-color:transparent}

/* buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:48px;padding:11px 22px;font-family:var(--hf);font-weight:800;font-style:italic;font-size:1rem;letter-spacing:.02em;line-height:1.1;text-transform:uppercase;border:2px solid var(--navy);border-radius:12px;background:var(--gold);color:var(--navy);cursor:pointer;text-decoration:none;box-shadow:0 4px 0 var(--navy);transition:transform .12s,box-shadow .12s,background-color .2s;touch-action:manipulation;white-space:nowrap}
.btn:hover{transform:translateY(-2px);box-shadow:0 6px 0 var(--navy);background:var(--gold-l)}
.btn:active{transform:translateY(3px);box-shadow:0 1px 0 var(--navy)}
.btn i{font-style:normal;font-size:.92em}
.btn-white{background:#fff}.btn-white:hover{background:var(--sky)}
.btn-line{background:transparent;color:#fff;border-color:#fff;box-shadow:0 4px 0 rgba(255,255,255,.45)}.btn-line:hover{background:rgba(255,255,255,.12);box-shadow:0 6px 0 rgba(255,255,255,.45)}
.btn-sm{min-height:44px;padding:8px 16px;font-size:.92rem}
.btn-icon{gap:0;width:48px;padding:0}
.tlink{font-weight:800;color:var(--royal);text-underline-offset:3px}
.tlink:hover{color:var(--navy)}

/* nav */
nav.top{position:fixed;top:0;left:0;right:0;z-index:100;height:var(--nav-h);background:#fff;border-bottom:1px solid var(--line);box-shadow:0 2px 14px rgba(27,58,110,.06);display:flex;align-items:center}
.nav-in{width:100%;max-width:calc(var(--wrap) + var(--gut)*2);margin:0 auto;padding:0 var(--gut);display:flex;align-items:center;justify-content:space-between;gap:20px}
.nav-brand{display:inline-flex;align-items:center;flex-shrink:0}
.nav-brand img{height:46px;width:auto}
.nav-links{display:flex;gap:24px;list-style:none;white-space:nowrap}
.nav-links a{font-family:var(--hf);font-weight:600;font-size:1rem;color:var(--tx);text-decoration:none;padding:6px 0;border-bottom:2px solid transparent}
.nav-links a:hover{color:var(--royal);border-bottom-color:var(--royal)}
.nav-right{display:flex;gap:14px;align-items:center;flex-shrink:0}
.nav-phone{display:inline-flex;align-items:center;gap:8px;font-family:var(--hf);font-weight:600;font-size:1.02rem;color:var(--navy);white-space:nowrap;text-decoration:none}
.nav-phone i{color:var(--royal)}
.nav-cta{min-height:44px;padding:9px 18px;font-size:.95rem}
.burger{display:none;width:44px;height:44px;background:#fff;border:2px solid var(--navy);border-radius:12px;cursor:pointer;flex-direction:column;align-items:center;justify-content:center;gap:5px}
.burger span{display:block;width:20px;height:2px;background:var(--navy);border-radius:1px}
@media(max-width:1100px){.nav-links{gap:16px}.nav-links a{font-size:.94rem}}
@media(max-width:1020px){.nav-links{display:none}.burger{display:inline-flex}}
@media(max-width:640px){
  .nav-brand img{height:38px}.nav-cta{display:none}.nav-right{gap:8px}
  .nav-phone{width:44px;height:44px;justify-content:center;background:var(--gold);border:2px solid var(--navy);border-radius:12px;box-shadow:0 3px 0 var(--navy)}
  .nav-phone span{display:none}.nav-phone i{color:var(--navy)}
}
/* drawer: lives inside a fixed, clipped layer so nothing sits off screen */
.drawer-layer{position:fixed;inset:0;z-index:1000;overflow:hidden;visibility:hidden;pointer-events:none;transition:visibility 0s .32s}
.drawer-layer.open{visibility:visible;pointer-events:auto;transition:none}
.drawer-ov{position:absolute;inset:0;background:rgba(27,58,110,.45);opacity:0;transition:opacity .3s}
.drawer-layer.open .drawer-ov{opacity:1}
.drawer{position:absolute;top:0;right:0;bottom:0;width:340px;max-width:88%;background:#fff;display:flex;flex-direction:column;transform:translateX(100%);transition:transform .32s cubic-bezier(.2,.8,.2,1);padding-top:env(safe-area-inset-top)}
.drawer-layer.open .drawer{transform:none}
body.drawer-open{overflow:hidden}
.drawer-head{display:flex;justify-content:space-between;align-items:center;padding:10px 14px 10px 20px;border-bottom:1px solid var(--line)}
.drawer-head img{height:40px;width:auto}
.drawer-x{width:44px;height:44px;background:#fff;border:2px solid var(--navy);border-radius:12px;font-size:1.15rem;color:var(--navy);cursor:pointer;display:inline-flex;align-items:center;justify-content:center}
.drawer-links{flex:1;display:flex;flex-direction:column;overflow-y:auto}
.drawer-links a{flex:1;display:flex;align-items:center;justify-content:space-between;min-height:54px;padding:0 22px;border-bottom:1px solid var(--line);font-family:var(--hf);font-weight:800;font-style:italic;text-transform:uppercase;font-size:1.18rem;color:var(--tx);text-decoration:none}
.drawer-links a small{font-family:var(--bf);font-style:normal;text-transform:none;font-weight:600;font-size:.82rem;color:var(--mute)}
.drawer-foot{display:grid;gap:12px;padding:16px 20px max(18px,env(safe-area-inset-bottom));background:var(--sky);border-top:2px solid var(--navy)}
.drawer-call{display:flex;flex-direction:column;align-items:center;gap:2px;padding:10px;background:#fff;border:2px solid var(--navy);border-radius:12px;text-decoration:none;color:var(--navy)}
.drawer-call span{font-size:.82rem;color:var(--mute);font-weight:600}
.drawer-call b{font-family:var(--hf);font-weight:800;font-style:italic;font-size:1.3rem}
.drawer-foot .btn{width:100%}

/* sections */
.sec{padding:88px 0}
.sec-sky{background:var(--sky)}
.sec-head{display:flex;flex-direction:column;align-items:flex-start;gap:12px;margin-bottom:28px}
.sec-head h2,.h2{font-size:clamp(2.1rem,4vw,3.4rem);color:var(--navy)}
.sec-head p{max-width:62ch;color:var(--mute)}
.sec-head a{font-weight:800;color:var(--royal)}
.rate{display:inline-flex;align-items:center;gap:8px;font-size:.95rem;text-decoration:none;white-space:nowrap}
.rate .stars{color:var(--gold);letter-spacing:1px;font-size:1.05rem}
.stars{background:linear-gradient(90deg,currentColor 92%,rgba(140,150,170,.45) 92%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.rate u{text-underline-offset:3px}
@media(max-width:1020px){.sec-head{gap:10px}}
@media(max-width:700px){.sec{padding:56px 0}.sec-head{margin-bottom:20px}.sec-head h2,.h2{font-size:clamp(1.9rem,8.6vw,2.4rem)}}

/* hero (home and sub pages): full-color photo, navy only behind the words */
.hero{position:relative;isolation:isolate;background:var(--navy);color:#fff;padding-top:var(--nav-h);overflow:hidden}
.hero-bg{position:absolute;inset:var(--nav-h) 0 0 0;z-index:-1}
.hero-bg img{width:100%;height:100%;object-fit:cover;object-position:var(--focus,62% 50%)}
.hero-bg::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(27,58,110,0) 70%,rgba(27,58,110,.8) 100%),linear-gradient(90deg,rgba(27,58,110,.95) 0%,rgba(27,58,110,.86) 32%,rgba(27,58,110,.45) 56%,rgba(27,58,110,.08) 78%)}
.hero-in{max-width:calc(var(--wrap) + var(--gut)*2);margin:0 auto;padding:76px var(--gut) 40px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,470px);gap:56px;align-items:center}
.hero-copy{max-width:640px}
.hero h1{font-size:clamp(2.6rem,5vw,4.5rem)}
.hero h1 span{display:block}
.hero h1 .h1b{color:var(--gold-l);font-size:.48em;line-height:1.05;margin-top:.3em}
.hero .lede{margin-top:18px;font-size:1.08rem;color:rgba(255,255,255,.9)}
.hero .lede b{color:#fff}
.hero .rate{margin-top:16px;color:#fff}.hero .rate .stars{color:var(--gold-l)}
.hero-ctas{display:flex;flex-wrap:wrap;align-items:center;gap:14px;margin-top:22px}
.hero-tel{display:inline-flex;align-items:center;justify-content:center;gap:8px;text-decoration:none;min-height:44px}.btn.hero-tel i{color:inherit}

.hero-vet{margin-top:18px;padding-left:14px;border-left:3px solid var(--gold);font-size:.93rem;color:rgba(255,255,255,.86);max-width:32em}
.hero-vet b{color:var(--gold-l)}
.hero-price{display:flex;align-items:baseline;gap:12px;margin-top:20px}
.hero-price b{font-family:var(--hf);font-style:italic;font-weight:900;font-size:2.2rem;line-height:1}
.hero-price span{color:rgba(255,255,255,.8);font-size:.95rem}
.creds{max-width:calc(var(--wrap) + var(--gut)*2);margin:0 auto;padding:0 var(--gut) 34px}
.creds ul{list-style:none;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid var(--line-d)}
.creds li{padding:16px 18px 0 0;font-size:.9rem;color:rgba(255,255,255,.82)}
.creds li+li{padding-left:18px;border-left:1px solid var(--line-d)}
.creds b{display:block;font-family:var(--hf);font-style:italic;font-weight:800;font-size:1.25rem;line-height:1.1;color:#fff;text-transform:uppercase}
.creds a{text-decoration:none;display:block}
.creds a:hover b{color:var(--gold-l)}
.hero-pic-cap{display:none}
@media(min-width:1700px){.hero-bg::after{background:linear-gradient(180deg,rgba(27,58,110,0) 70%,rgba(27,58,110,.8) 100%),linear-gradient(90deg,rgba(27,58,110,.96) 0%,rgba(27,58,110,.9) 30%,rgba(27,58,110,.5) 48%,rgba(27,58,110,.1) 66%)}.hero-in{padding-top:96px;padding-bottom:56px}}
@media(max-width:1020px){.hero-in{grid-template-columns:1fr;gap:36px}.hero .qq-wrap{max-width:560px}}
@media(max-width:700px){
  .hero{display:flex;flex-direction:column;padding-top:var(--nav-h)}
  .hero-bg{position:relative;inset:auto;height:280px;z-index:0;order:0}
  .hero-bg::after{background:linear-gradient(180deg,rgba(27,58,110,0) 0%,rgba(27,58,110,0) 52%,rgba(27,58,110,.75) 82%,var(--navy) 100%)}
  .hero-in{display:contents}
  .hero-copy{order:1;position:relative;padding:0 var(--gut) 24px;margin-top:-70px}
  .hero.plain .hero-copy{margin-top:0;padding-top:28px}
  .hero h1{font-size:clamp(2.25rem,10.4vw,2.8rem)}
  .hero .lede{font-size:.98rem;margin-top:12px}
  .hero-ctas{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:18px}
  .hero-ctas .btn{padding:10px 8px;font-size:.92rem}
  .hero-tel{grid-column:1/-1;justify-content:center}
  .hero-vet{font-size:.86rem;margin-top:12px}
  .creds{order:2;padding-bottom:18px;width:100%}
  .creds ul{grid-template-columns:repeat(2,minmax(0,1fr))}
  .creds li,.creds li+li{padding:12px 10px 10px 0;border-left:0}
  .creds li:nth-child(even){padding-left:14px;border-left:1px solid var(--line-d)}
  .creds li:nth-child(n+3){border-top:1px solid var(--line-d)}
  .creds b{font-size:1.05rem}.creds li{font-size:.82rem}
  .hero .qq-wrap{order:3;width:100%;max-width:none;padding:58px var(--gut) 34px}
}

/* trip request card */
.qq-wrap{width:100%}
.qq{position:relative;background:#fff;color:var(--tx);border:2px solid var(--navy);border-radius:20px;box-shadow:0 8px 0 var(--gold);padding:56px 24px 22px}
.qq-badge{position:absolute;left:50%;top:0;transform:translate(-50%,-55%);background:#fff;border:2px solid var(--navy);border-radius:16px;padding:8px 16px;box-shadow:0 4px 0 var(--gold);pointer-events:none}
.qq-badge img{height:44px;width:auto}
.qq-title{text-align:center;font-size:clamp(1.7rem,3vw,2.1rem);color:var(--navy)}
.qq-sub{text-align:center;color:var(--mute);font-size:.95rem;margin:6px auto 0}
.qq-hp{position:absolute;left:-9999px}
.qq-sel{display:none;align-items:center;gap:8px;padding:9px 12px;background:var(--sky);border-radius:10px;font-size:.92rem;margin-bottom:14px}
.qq-sel.on{display:flex}
.qq-sel .qq-v{color:var(--navy);font-weight:800}
.qq-sel button{margin-left:auto;background:none;border:0;color:var(--royal);font-weight:800;font-size:.88rem;cursor:pointer;padding:6px;text-decoration:underline;text-underline-offset:3px}
.qq-step{display:none}.qq-step.on{display:block;animation:qqIn .22s ease both}
@keyframes qqIn{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
.qq-q{display:block;text-align:center;font-weight:800;font-size:.95rem;color:var(--navy);margin-bottom:10px}
.qq-tiles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.qq-tile{position:relative;cursor:pointer;display:block}
.qq-tile input{position:absolute;opacity:0;inset:0;cursor:pointer}
.qq-tile>span{display:flex;flex-direction:column;height:100%;padding:10px 12px;border:2px solid var(--line);border-radius:12px;background:#fff;transition:border-color .15s,background-color .15s}
.qq-tile .qq-t{display:block;font-family:var(--hf);font-style:italic;font-weight:800;text-transform:uppercase;font-size:.98rem;line-height:1.1;color:var(--navy)}
.qq-tile em{font-style:normal;font-size:.82rem;color:var(--mute);margin-top:3px}
.qq-tile em strong{color:var(--navy)}
.qq-tile:hover>span{border-color:var(--navy)}
.qq-tile input:checked+span{border-color:var(--navy);background:var(--sky);box-shadow:0 3px 0 var(--gold)}
.qq-tile input:focus-visible+span{outline:3px solid var(--royal);outline-offset:2px}
.qq-chips{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-bottom:14px}
.qq-chips.three{grid-template-columns:repeat(3,minmax(0,1fr))}
.qq-chip{position:relative;cursor:pointer}
.qq-chip input{position:absolute;opacity:0;inset:0;cursor:pointer}
.qq-chip span{display:flex;align-items:center;justify-content:center;text-align:center;min-height:44px;padding:6px 4px;border:2px solid var(--line);border-radius:10px;font-weight:800;font-size:.9rem;color:var(--navy);line-height:1.15}
.qq-chip input:checked+span{border-color:var(--navy);background:var(--sky);box-shadow:0 3px 0 var(--gold)}
.qq-chip input:focus-visible+span{outline:3px solid var(--royal);outline-offset:2px}
.qq-lab{display:block;font-weight:800;font-size:.9rem;color:var(--navy);margin-bottom:6px}
.qq-opt{font-weight:600;color:var(--mute);font-size:.84rem}
.qq-field{margin-bottom:12px}
.qq input[type=text],.qq input[type=tel],.qq input[type=email],.qq input[type=date],.qq textarea,.cf input,.cf textarea{width:100%;font:inherit;font-size:1rem;color:var(--navy);background:#fff;border:2px solid var(--line);border-radius:10px;padding:11px 12px;min-height:48px}
.qq input:focus,.qq textarea:focus,.cf input:focus,.cf textarea:focus{outline:none;border-color:var(--navy);box-shadow:0 3px 0 var(--gold)}
.qq textarea,.cf textarea{min-height:84px;resize:vertical}
.qq-match{display:none;gap:12px;align-items:center;padding:10px;border:2px dashed var(--royal-l);border-radius:12px;margin-bottom:14px}
.qq-match.on{display:grid;grid-template-columns:84px minmax(0,1fr);align-items:start}
.qq-match .kick{display:block;font-size:.75rem;font-weight:800;color:var(--royal);letter-spacing:.04em;text-transform:uppercase}
.qq-acts{display:flex;flex-wrap:wrap;align-items:center;gap:8px 16px;margin-top:10px}.qq-acts .btn{margin:0}
.qq-match img{width:84px;height:84px;object-fit:cover;border-radius:10px}
.qq-match b{display:block;font-family:var(--hf);font-style:italic;font-weight:800;text-transform:uppercase;font-size:1.02rem;line-height:1.1}
.qq-match p{font-size:.84rem;color:var(--mute);margin-top:2px}
.qq-match .note{color:var(--royal);font-weight:700}
.qq-match a:not(.btn){font-weight:800;color:var(--royal);font-size:.9rem}
.qq-err{display:none;font-size:.9rem;font-weight:700;color:#A1261B;margin:4px 0 10px;text-align:center}
.qq-err.show{display:block}
.qq-direct{text-align:center;margin-top:20px;font-size:1rem;color:#fff}
.qq-direct a{color:#fff;font-weight:800;white-space:nowrap;text-underline-offset:3px}
.hero .qq-direct{text-shadow:0 1px 3px rgba(0,0,0,.85),0 0 14px rgba(0,0,0,.6)}
.sec .qq-direct,.qq-light .qq-direct{color:var(--mute)}.sec .qq-direct a,.qq-light .qq-direct a{color:var(--navy)}
@media(max-width:700px){
  .qq{padding:50px 14px 16px;border-radius:16px;box-shadow:0 6px 0 var(--gold)}
  .qq-badge img{height:36px}
  .qq-tiles{gap:7px}.qq-tile>span{padding:9px 10px}.qq-tile .qq-t{font-size:.9rem}.qq-tile em{font-size:.78rem}
  .qq-chips{grid-template-columns:repeat(2,minmax(0,1fr))}
}

/* trip tiles */
.tiles{display:grid;grid-auto-flow:dense;grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:300px;gap:16px}
.tile{position:relative;border-radius:var(--r);overflow:hidden;color:#fff;background:var(--navy);isolation:isolate;display:flex;flex-direction:column;justify-content:flex-end;padding:16px 18px}
.tile-big{grid-column:span 2;grid-row:span 2}
.tile-wide{grid-column:1/-1}
.tile img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .5s;z-index:-1}
.tile:hover img{transform:scale(1.03)}
.tile::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(27,58,110,0) 38%,rgba(27,58,110,.62) 70%,rgba(19,42,82,.92) 100%)}
.tile-txt{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"t t" "m m" "p b";align-items:end;column-gap:12px}
.tile-txt>.btn{margin-top:10px}
.tile-price small{display:block;font-family:var(--bf);font-style:normal;font-weight:700;font-size:.72rem;letter-spacing:.04em;text-transform:uppercase;opacity:.85;margin-bottom:2px}
.tile-txt h3{grid-area:t;min-width:0}.tile-txt p{grid-area:m;min-width:0}
.tile-txt>.btn{grid-area:b;position:relative;z-index:2}
.tile-price{grid-area:p;display:block;margin-top:6px;line-height:1}
.tile h3{font-size:1.45rem}
.tile-big h3{font-size:2.4rem}
.tile h3 a{text-decoration:none}
.tile h3 a::before{content:"";position:absolute;inset:0}
.tile p{font-size:.92rem;opacity:.92;margin-top:4px}
.tile-price{font-family:var(--hf);font-style:italic;font-weight:800;font-size:1.45rem}
.tile-big .tile-price{font-size:1.9rem}
@media(max-width:1020px){.tiles{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:260px}}
@media(max-width:700px){
  .tiles{grid-auto-rows:210px;gap:10px}
  .tile-big{grid-row:span 1;grid-column:1/-1}.tile-big h3{font-size:1.7rem}
  .tile{padding:12px}.tile-txt{column-gap:8px}.tile-txt>.btn{margin-top:8px}.tile h3{font-size:1.08rem}.tile p{display:none}.tile-big p{display:block}
  .tile-price{font-size:1.1rem;margin-top:6px;white-space:nowrap}
  .tile .btn-sm{min-height:40px;padding:6px 12px;font-size:.84rem;box-shadow:0 3px 0 var(--navy)}
}

/* boats */
.boats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.boat{text-decoration:none;color:var(--navy)}
.boat img{width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:var(--r)}
.boat b{display:block;margin-top:12px;font-family:var(--hf);font-style:italic;font-weight:800;text-transform:uppercase;font-size:1.3rem;line-height:1}
.boat span{display:block;margin-top:4px;font-size:.92rem;color:var(--mute)}
.boat:hover b{color:var(--royal)}
@media(max-width:1020px){.boats{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.boats{gap:10px}.boat b{font-size:1.05rem}.boat span{font-size:.82rem}}

/* story */
.story{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:56px;align-items:center}
.story-photos{display:grid;grid-template-columns:1.2fr 1fr;gap:12px}
.story-photos img{width:100%;height:100%;object-fit:cover;border-radius:var(--r)}
.story-photos .a{grid-row:span 2;aspect-ratio:3/4}
.story-photos .b,.story-photos .c{aspect-ratio:4/3}
.story p{margin-top:16px;font-size:1.05rem;color:var(--mute)}
.capts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 26px;margin-top:28px}
.capt{display:grid;grid-template-columns:96px minmax(0,1fr);grid-template-rows:auto auto 1fr;column-gap:14px;align-items:start}
.capt img{grid-row:1/4;width:96px;height:96px;object-fit:cover;object-position:50% 25%;border-radius:12px}
.capt b{display:block;margin-top:2px;font-size:.95rem;line-height:1.25;color:var(--navy)}
.capt span{display:block;margin-top:2px;font-size:.82rem;line-height:1.4;color:var(--mute)}
.capt em{display:block;margin-top:6px;font-style:normal;font-size:.8rem;line-height:1.35;color:var(--royal);font-weight:700}
@media(max-width:1020px){.story{grid-template-columns:1fr;gap:32px}}
@media(max-width:700px){.story-photos{grid-template-columns:1fr 1fr}.story-photos .a,.story-photos .b{aspect-ratio:1;grid-row:auto}.story-photos .c{display:none}
  .capts{grid-template-columns:1fr 1fr;gap:18px 12px}.capt{grid-template-columns:1fr;grid-template-rows:none;align-content:start}
  .capt img{grid-row:auto;width:100%;height:auto;aspect-ratio:4/3}.capt b{margin-top:8px;font-size:.88rem}.capt span{display:none}.capt em{font-size:.76rem;margin-top:3px}}

/* photo band (reviews) */
.band{position:relative;isolation:isolate;color:#fff;padding:84px 0;overflow:hidden}
.band>img.band-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}
.band::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(27,58,110,.9) 0%,rgba(27,58,110,.7) 45%,rgba(27,58,110,.35) 100%)}
.band h2,.band .sec-head h2{font-size:clamp(2rem,3.8vw,3.1rem);color:#fff}
.band .sec-head p{color:rgba(255,255,255,.88)}
.band .sec-head a{color:var(--gold-l)}

/* rails (whole cards, arrows step to exact card offsets) */
.rail{display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;position:relative;padding:4px 0 10px}
.rail::-webkit-scrollbar{display:none}
.rail.moving{scroll-snap-type:none}
.rail>*{flex:0 0 calc((100% - 32px)/3);scroll-snap-align:start}
.rail .spacer{flex:0 0 1px;scroll-snap-align:none}
.rail-ctrl[hidden]{display:none}
.rail-ctrl{display:flex;align-items:center;gap:12px;margin-top:16px}
.rail-btn{width:48px;height:48px;border:2px solid var(--navy);border-radius:12px;background:var(--gold);color:var(--navy);cursor:pointer;box-shadow:0 4px 0 var(--navy);display:inline-flex;align-items:center;justify-content:center}
.rail-btn:disabled{opacity:.35;cursor:default;box-shadow:0 1px 0 var(--navy)}
.rail-count{font-size:.9rem;font-variant-numeric:tabular-nums;min-width:52px;text-align:center}
.band .rail-count{color:rgba(255,255,255,.85)}
.rv{display:flex;flex-direction:column;background:#fff;color:var(--tx);border:2px solid var(--navy);border-radius:18px;box-shadow:0 6px 0 var(--gold);padding:22px 22px 18px}
.rv .q{font-family:var(--hf);font-style:italic;font-weight:900;font-size:3rem;line-height:.6;color:var(--royal);height:24px}
.rv p{margin-top:8px;font-size:1rem;flex:1}
.rv cite{display:block;margin-top:14px;font-style:normal;font-size:.88rem;color:var(--mute)}
.rv cite b{display:block;font-family:var(--hf);font-style:italic;font-weight:800;text-transform:uppercase;color:var(--navy);font-size:1.02rem}
.rv .st{color:var(--gold);letter-spacing:1px}
.rv-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:26px 0}
@media(max-width:1020px){.rv-grid{grid-template-columns:1fr 1fr}}
.rv-head{max-width:none;margin:0 0 8px;text-align:left}.rv-add h2{margin-bottom:14px}.rv-head p{font-size:1.08rem}
.rv-add{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:48px;align-items:center}.rv-add .btn{margin-top:18px}
.rv-pics{display:grid;grid-template-columns:1fr 1fr;gap:12px}.rv-pics figure{margin:0}.rv-pics img{width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:var(--r)}.rv-pics figcaption{margin-top:6px;font-size:.84rem;color:var(--mute)}
.page-body.story{grid-template-columns:minmax(0,900px);justify-content:center}
.story .prose>p,.story .prose>h2{max-width:none}
@media(min-width:1021px){.story .art-fig{float:right;width:44%;margin:6px 0 24px 44px}.story .prose::after{content:'';display:block;clear:both}}
@media(max-width:860px){.rv-add{grid-template-columns:minmax(0,1fr);gap:24px}}
.rail.rv-grid,.rail.pt-grid{display:grid;overflow:visible;scroll-snap-type:none;padding:4px 0 10px}
.rail.rv-grid>*,.rail.pt-grid>*{flex:none}
.rail.pt-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:26px 0 10px}
@media(max-width:760px){.rail.pt-grid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:12px}.rail.pt-grid>*{flex:0 0 86%;scroll-snap-align:start}}
@media(max-width:700px){.rail.rv-grid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:12px;margin-bottom:0}.rail.rv-grid>*{flex:0 0 84%;scroll-snap-align:start;align-self:start}}
@media(max-width:1020px){.rail>*{flex:0 0 calc((100% - 16px)/2)}}
@media(max-width:700px){.rail{gap:12px}.rail>*{flex:0 0 84%}.band{padding:56px 0}}

/* photo wall */
.wall{display:grid;grid-auto-flow:dense;grid-template-columns:repeat(4,minmax(0,1fr));grid-template-rows:260px 260px;gap:12px}
.wall figure{position:relative;border-radius:var(--r);overflow:hidden}
.wall img{width:100%;height:100%;object-fit:cover}
.wall figcaption{position:absolute;left:10px;bottom:10px;background:#fff;color:var(--navy);font-size:.82rem;font-weight:700;padding:6px 10px;border-radius:8px;max-width:calc(100% - 20px)}
.wall .w0{grid-row:span 2}.wall .w3{grid-column:span 2}.wall .w6{display:none}
@media(max-width:1020px){.wall{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(3,220px)}.wall .w3{grid-column:auto}.wall .w5{display:none}}
@media(max-width:700px){.wall{grid-template-rows:repeat(3,170px);gap:8px}.wall figcaption{font-size:.72rem;padding:4px 7px}}

/* chef */
.chef{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);grid-template-rows:420px;border-radius:24px;overflow:hidden;background:var(--sky)}
.chef img{width:100%;height:420px;object-fit:cover;object-position:50% 40%}
.chef-txt{padding:48px;display:flex;flex-direction:column;justify-content:center}
.chef-txt h2{font-size:clamp(2rem,3.4vw,2.8rem);color:var(--navy)}
.chef-txt p{margin-top:14px;color:var(--mute)}
@media(max-width:1020px){.chef{grid-template-columns:1fr;grid-template-rows:auto}.chef img{height:300px}}
@media(max-width:700px){.chef-txt{padding:24px 18px}.chef img{height:220px}}

/* faq + short form */
.ask{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:56px;align-items:start}
.acc{border-top:2px solid var(--navy)}
.acc details{border-bottom:1px solid var(--line)}
.acc summary{list-style:none;display:flex;justify-content:space-between;align-items:center;gap:16px;min-height:56px;padding:14px 0;font-weight:800;cursor:pointer;color:var(--navy)}
.acc summary::-webkit-details-marker{display:none}
.acc summary::after{content:"+";font-family:var(--hf);font-weight:800;font-size:1.4rem;color:var(--royal);transition:transform .2s}
.acc details[open] summary::after{transform:rotate(45deg)}
.acc details p,.acc details ul{padding:0 0 16px;color:var(--mute)}
.acc details ul{padding-left:20px}
.cf{background:var(--sky);border-radius:20px;padding:26px}
.cf h2{font-size:1.9rem;color:var(--navy)}
.cf>p{margin-top:6px;color:var(--mute);font-size:.95rem}
.cf .two{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.cf .qq-field{margin-top:12px;margin-bottom:0}
.cf .btn{width:100%;margin-top:14px}
@media(max-width:1020px){.ask{grid-template-columns:1fr;gap:32px}}
@media(max-width:700px){.cf{padding:20px 14px}.cf .two{grid-template-columns:1fr}}

/* footer: a real photo, navy only where the words sit */
.site-foot{position:relative;isolation:isolate;background:var(--navy-deep);color:rgba(255,255,255,.84);overflow:hidden}
.foot-pic{position:absolute;left:0;right:0;top:0;height:560px;z-index:-2}
.foot-pic img{width:100%;height:100%;object-fit:cover;object-position:50% 52%}
.foot-pic::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(19,42,82,0) 0%,rgba(19,42,82,0) 50%,rgba(19,42,82,.8) 82%,var(--navy-deep) 100%),linear-gradient(90deg,rgba(19,42,82,.7) 0%,rgba(19,42,82,.25) 45%,rgba(19,42,82,0) 70%)}
.foot-cta{max-width:calc(var(--wrap) + var(--gut)*2);margin:0 auto;padding:150px var(--gut) 56px}
.foot-cta h2{font-size:clamp(2.2rem,4.6vw,3.8rem);color:#fff;max-width:13ch}
.foot-cta p{margin-top:12px;font-size:1.05rem;color:rgba(255,255,255,.9)}
.foot-cta .hero-ctas{margin-top:22px}
.foot-pic-cap{position:absolute;right:16px;top:14px;font-size:.78rem;color:rgba(255,255,255,.85);background:rgba(19,42,82,.55);padding:4px 10px;border-radius:8px}
.foot-in{max-width:calc(var(--wrap) + var(--gut)*2);margin:0 auto;padding:0 var(--gut);display:grid;grid-template-columns:minmax(0,1.3fr) repeat(4,minmax(0,1fr));gap:36px;border-top:1px solid var(--line-d);padding-top:40px;padding-bottom:40px}
.foot-brand .foot-logo{display:inline-flex;background:#fff;border-radius:999px;padding:10px 22px;box-shadow:0 4px 0 var(--gold)}.foot-brand img{height:52px;width:auto}
.foot-brand address{font-style:normal;margin-top:16px;font-size:.93rem;line-height:1.75}
.foot-brand address a{color:#fff;font-weight:700;text-decoration:none}
.foot-brand address .big{font-family:var(--hf);font-style:italic;font-weight:800;font-size:1.5rem}
.foot-social{display:flex;gap:10px;margin-top:16px}
.foot-social a{display:inline-flex;width:44px;height:44px;align-items:center;justify-content:center;border-radius:12px;box-shadow:inset 0 0 0 1px rgba(255,255,255,.3);color:#fff;text-decoration:none}
.foot-social a:hover{box-shadow:inset 0 0 0 1px var(--gold-l);color:var(--gold-l)}
.foot-col h4{font-weight:800;font-size:1.02rem;color:#fff;margin-bottom:12px;display:flex;justify-content:space-between;align-items:center}
.foot-col h4 i{display:none}
.foot-col ul{list-style:none}
.foot-col li a{display:inline-block;padding:5px 0;font-size:.92rem;color:rgba(255,255,255,.78);text-decoration:none}
.foot-col li a:hover{color:var(--gold-l)}
.foot-mh{margin-top:14px;font-weight:800;font-size:.86rem;color:#fff}
.foot-months{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0 8px;margin-top:4px}
.foot-months a{padding:5px 0;font-size:.9rem;color:rgba(255,255,255,.78);text-decoration:none}
.foot-months a:hover{color:var(--gold-l)}
.foot-bottom{max-width:calc(var(--wrap) + var(--gut)*2);margin:0 auto;padding:20px var(--gut) max(24px,env(safe-area-inset-bottom));border-top:1px solid var(--line-d);display:flex;justify-content:space-between;align-items:center;gap:18px;flex-wrap:wrap;font-size:.85rem;color:rgba(255,255,255,.72)}
.foot-legal{display:flex;gap:18px;flex-wrap:wrap}
.foot-legal a{color:rgba(255,255,255,.85);text-decoration:none;display:inline-block;padding:8px 0}
.built-by{display:inline-flex;align-items:center;gap:8px;color:rgba(255,255,255,.72);text-decoration:none}
.built-by img{height:20px;width:auto}
@media(max-width:1020px){.foot-in{grid-template-columns:1fr 1fr}.foot-brand{grid-column:1/-1}}
@media(max-width:700px){
  .foot-pic{height:470px}.foot-pic img{object-position:68% 50%}.foot-cta{padding:210px var(--gut) 34px}
  .foot-cta .hero-ctas{display:grid;grid-template-columns:1fr 1fr}
  .foot-in{grid-template-columns:1fr;gap:0;padding-top:28px;padding-bottom:20px}
  .foot-brand{padding-bottom:20px}
  .foot-col{border-top:1px solid var(--line-d)}
  .foot-col h4{min-height:52px;margin:0;cursor:pointer}
  .foot-col h4 i{display:inline-block;color:var(--gold-l);font-size:.85rem;transition:transform .25s}
  .foot-col.open h4 i{transform:rotate(45deg)}
  .foot-col ul{display:grid;grid-template-columns:1fr 1fr;column-gap:16px;max-height:0;overflow:hidden;transition:max-height .35s ease}
  .foot-col.open ul{max-height:640px;padding-bottom:12px}
  .foot-col .foot-mh,.foot-col .foot-months{display:none}
  .foot-col.open .foot-mh{display:block;margin-top:0}
  .foot-col.open .foot-months{display:grid;padding-bottom:14px}
  .foot-col li a{display:flex;align-items:center;min-height:40px;line-height:1.3}
  .foot-bottom{flex-direction:column;align-items:flex-start;gap:6px}
}

/* sub pages */
.page-body{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:56px;align-items:start}
.prose{font-size:1.04rem;color:var(--tx)}
.prose>*+*{margin-top:16px}
.prose h2{font-size:clamp(1.6rem,2.8vw,2.2rem);color:var(--navy);margin-top:34px}
.prose h3{font-size:1.25rem;color:var(--navy);margin-top:24px}
.prose a{color:var(--royal);font-weight:700;text-underline-offset:3px}
.prose ul,.prose ol{padding-left:22px}
.prose li+li{margin-top:6px}
.prose table{width:100%;border-collapse:collapse;font-size:.95rem}
.prose th,.prose td{text-align:left;padding:10px 12px;border-bottom:1px solid var(--line);vertical-align:top}
.prose th{background:var(--sky);font-weight:800;color:var(--navy)}
.prose td:last-child{font-variant-numeric:tabular-nums;white-space:nowrap}
.page-aside{display:grid;gap:14px}
.page-aside figure img{width:100%;border-radius:var(--r)}
.page-aside figcaption{margin-top:8px;font-size:.86rem;color:var(--mute)}
.book-box{border:2px solid var(--navy);border-radius:18px;box-shadow:0 6px 0 var(--gold);padding:20px;background:#fff}
.book-box h3{font-size:1.3rem;color:var(--navy)}
.book-box .rows{margin-top:10px;border-top:1px solid var(--line)}
.book-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:12px;align-items:center;padding:10px 0;border-bottom:1px solid var(--line)}
.book-row b{display:block;font-weight:800;line-height:1.2}
.book-row span{font-size:.84rem;color:var(--mute)}
.book-row .px{font-family:var(--hf);font-style:italic;font-weight:900;font-size:1.3rem}
.book-box .more{display:block;margin-top:12px;font-size:.9rem}
.sub-faq{margin-top:56px}
.sub-faq h2{font-size:clamp(1.8rem,3vw,2.4rem);color:var(--navy);margin-bottom:14px}
.sub-block{margin-top:64px}
.sub-block>h2{font-size:clamp(1.8rem,3vw,2.4rem);color:var(--navy);margin-bottom:16px}
.pics{display:flex}
.pics figure{position:relative;border-radius:var(--r);overflow:hidden;margin:0}
.pics img{width:100%;height:300px;object-fit:cover}
.pics figcaption{position:absolute;left:10px;bottom:10px;background:#fff;color:var(--navy);font-size:.82rem;font-weight:700;padding:5px 9px;border-radius:8px;max-width:calc(100% - 20px)}
.chips-list{list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.chips-list a{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:52px;padding:10px 14px;border:2px solid var(--line);border-radius:12px;text-decoration:none;font-weight:800;color:var(--navy)}
.chips-list a:hover{border-color:var(--navy);background:var(--sky)}
.chips-list a i{color:var(--royal)}
.rel-tiles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;grid-auto-rows:220px}
@media(max-width:1020px){.page-body>.page-aside{order:-1}.page-body{grid-template-columns:minmax(0,1fr);gap:28px}.page-aside{grid-template-columns:1fr 1fr;align-items:start}.chips-list{grid-template-columns:1fr 1fr}}
@media(max-width:700px){.page-aside{grid-template-columns:1fr}.pics img{height:240px}.chips-list{gap:8px}.chips-list a{font-size:.9rem;padding:8px 10px}
  .rel-tiles{grid-template-columns:1fr 1fr;grid-auto-rows:170px;gap:10px}.rel-tiles .tile:first-child{grid-column:1/-1}.sub-block{margin-top:44px}.sub-faq{margin-top:40px}}
.brk{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:26px 0}
.brk figure{position:relative;border-radius:var(--r);overflow:hidden;margin:0}
.brk img{width:100%;height:260px;object-fit:cover}
.brk figcaption{position:absolute;left:10px;bottom:10px;background:#fff;color:var(--navy);font-size:.8rem;font-weight:700;padding:5px 9px;border-radius:8px;max-width:calc(100% - 20px)}
.mgrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.mcard{position:relative;display:block;border-radius:var(--r);overflow:hidden;color:#fff;text-decoration:none;aspect-ratio:4/3.4;isolation:isolate;background:var(--navy)}
.mcard img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-1;transition:transform .5s}
.mcard:hover img{transform:scale(1.04)}
.mcard::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(27,58,110,0) 30%,rgba(19,42,82,.9) 100%)}
.mcard .mt{position:absolute;left:14px;right:14px;bottom:12px;display:grid;gap:2px}
.mcard b{font-family:var(--hf);font-style:italic;font-weight:900;text-transform:uppercase;font-size:1.45rem;line-height:1}
.mcard .mt>span{font-size:.86rem;line-height:1.3}
.mcard em{font-style:normal;font-weight:800;font-size:.82rem;color:var(--gold-l);margin-top:4px}
@media(max-width:1020px){.mgrid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:700px){.brk{gap:8px;margin:20px 0}.brk img{height:160px}.brk figcaption{font-size:.7rem;padding:4px 6px}
  .mgrid{grid-template-columns:1fr 1fr;gap:8px}.mcard b{font-size:1.1rem}.mcard .mt>span{font-size:.76rem}.mcard .mt{left:10px;right:10px;bottom:9px}}
.months details summary span{font-weight:600;color:var(--mute);font-size:.9rem;margin-left:auto;padding-right:16px;text-align:right}
.hero.plain{background:var(--navy)}
.hero.plain .hero-in{grid-template-columns:minmax(0,820px);padding-bottom:56px}


/* sub-page sections */
.jump{position:sticky;top:var(--nav-h);z-index:30;background:rgba(255,255,255,.97);border-bottom:1px solid var(--line);box-shadow:0 6px 14px -12px rgba(19,42,82,.5)}
html:has(.jump){scroll-padding-top:calc(var(--nav-h) + 80px)}
.jump a.on{background:var(--navy);color:#fff}
.creds ul.c3{grid-template-columns:repeat(3,minmax(0,1fr))}
.jump ul{list-style:none;display:flex;gap:8px;overflow-x:auto;scrollbar-width:none;padding:12px 0}
.jump ul::-webkit-scrollbar{display:none}
.jump a{display:inline-flex;align-items:center;min-height:40px;padding:6px 16px;border:2px solid var(--navy);border-radius:999px;font-weight:800;font-size:.9rem;color:var(--navy);text-decoration:none;white-space:nowrap}
.jump a:hover{background:var(--sky)}
.book-box h3{font-size:1.5rem}
.book-box .bb-m{color:var(--mute);font-size:.92rem;margin-top:4px}
.bb-tel{display:block;text-align:center;margin-top:12px;font-weight:800;color:var(--navy);text-decoration:none}
.book-box .more{display:block;margin-top:10px;text-align:center}
.book-row{grid-template-columns:minmax(0,1fr) auto auto}
.page-aside figure img{aspect-ratio:4/3;object-fit:cover}
.track{list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;counter-reset:none}
.track li{background:#fff;border:2px solid var(--navy);border-radius:18px;padding:20px 20px 18px;box-shadow:0 6px 0 var(--gold)}
.track b{display:block;font-family:var(--hf);font-style:italic;font-weight:900;text-transform:uppercase;font-size:1.35rem;line-height:1.05;color:var(--navy)}
.track p{margin-top:8px;color:var(--mute);font-size:.96rem}
.rail.tiles-rail>.tile{height:280px}
.rail.tiles-rail{padding-bottom:4px}
.spc{display:flex;flex-direction:column;background:#fff;border:2px solid var(--navy);border-radius:18px;padding:18px;box-shadow:0 6px 0 var(--gold)}
.spc h3{font-size:1.3rem;color:var(--navy)}
.spc .lat{font-style:italic;color:var(--mute);font-size:.86rem;margin-top:2px}
.spc dl{margin:12px 0;display:grid;gap:10px;flex:1}
.spc dt{font-size:.78rem;font-weight:800;color:var(--royal)}
.spc dd{margin:0;font-size:.94rem}
.spc .st{font-weight:800;font-size:.86rem;color:var(--navy);padding-top:10px;border-top:1px solid var(--line)}
.spc .st.prot{color:#A1261B}
.law{margin-top:16px;font-size:.88rem;color:var(--mute)}
.law a{color:var(--royal);font-weight:700}
.faq-grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:48px;align-items:start}
.still{background:#fff;border:2px solid var(--navy);border-radius:20px;box-shadow:0 8px 0 var(--gold);padding:24px}
.still h3{font-size:1.6rem;color:var(--navy)}
.still p{color:var(--mute);margin:8px 0 14px}
.still .btn{width:100%}
.sec-sky .acc details{background:transparent}
.prose>p:first-child{font-size:1.1rem}
.prose>figure.lead-fig{margin:22px 0 0}
.prose>figure.lead-fig img{width:100%;aspect-ratio:16/10;object-fit:cover;border-radius:var(--r)}
.sub-block .prose>figure.lead-fig{margin:6px 0 18px}
.prose>figure.lead-fig figcaption{margin-top:8px;font-size:.86rem;color:var(--mute)}
.rail.pics>figure{flex:0 0 calc((100% - 32px)/3)}
@media(max-width:1020px){.track{grid-template-columns:1fr 1fr}.faq-grid{grid-template-columns:1fr;gap:28px}.rail.tiles-rail>.tile{height:240px}}
@media(max-width:700px){
  .jump ul{padding:8px 0}.jump a{min-height:38px;padding:4px 13px;font-size:.84rem}
  .jump{display:none}
  html:has(.jump){scroll-padding-top:calc(var(--nav-h) + 16px)}
  .creds ul.c3{grid-template-columns:repeat(3,minmax(0,1fr))}
  .creds ul.c3 li,.creds ul.c3 li+li{padding:12px 8px 10px 0;border-left:0;border-top:0}
  .creds ul.c3 li+li{padding-left:10px;border-left:1px solid var(--line-d)}
  .creds ul.c3.long{grid-template-columns:repeat(2,minmax(0,1fr))}
  .creds ul.c3.long li:nth-child(3){grid-column:1/-1;border-left:0;padding-left:0;border-top:1px solid var(--line-d)}
  .track{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;gap:12px;padding-bottom:10px}
  .track::-webkit-scrollbar{display:none}
  .track li{flex:0 0 80%;scroll-snap-align:start;padding:16px}
  .rail.tiles-rail>.tile{flex:0 0 70%;height:220px}
  .rail.pics>figure{flex:0 0 80%}
  .page-body{gap:22px}
  .page-aside{grid-template-columns:1fr}
  .prose>p:first-child{font-size:1.02rem}
  .prose{font-size:1rem}
  .still{padding:18px}
}

/* framed sub-page hero */
.hero-fx{padding:calc(var(--nav-h) + 48px) 0 60px;background:linear-gradient(180deg,var(--sky) 0%,#fff 100%)}
.fx-in{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:56px;align-items:center}
.hero-fx h1{font-size:clamp(2.3rem,4.2vw,3.8rem);color:var(--navy);line-height:1;text-wrap:balance}
.hero-fx h1 span{display:block}.hero-fx h1 .h1b{color:var(--royal);font-size:.5em;line-height:1.05;margin-top:.3em}
.fx-meta{display:flex;flex-wrap:wrap;gap:6px 20px;margin-top:14px;font-size:.93rem;color:var(--mute)}
.fx-meta span{white-space:nowrap}
@media(max-width:900px){.fx-meta span{white-space:normal}}.fx-meta b{color:var(--navy)}.fx-meta .stars{color:var(--gold)}
.fx-meta a{color:var(--navy);text-underline-offset:3px}
.hero-fx .lede{margin-top:16px;font-size:1.06rem;max-width:60ch}
.hero-fx .lede b{color:var(--navy)}
.hero-fx .hero-ctas{display:flex;flex-wrap:wrap;align-items:center;gap:12px 16px;margin-top:22px}
.hero-fx .btn-line{color:var(--navy);border-color:var(--navy);box-shadow:0 4px 0 var(--navy)}
.hero-fx .btn-line:hover{background:var(--sky);box-shadow:0 6px 0 var(--navy)}

.fx-incl{list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:8px 20px;margin-top:20px;font-size:.95rem}
.fx-incl li{position:relative;padding-left:24px}
.fx-rate{display:flex;align-items:center;gap:6px;margin-top:12px;font-size:.93rem;color:var(--mute)}
.fx-rate .stars{color:var(--gold);letter-spacing:1px}.fx-rate b{color:var(--navy)}.fx-rate a{color:var(--navy);text-underline-offset:3px}
.fx-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));margin-top:22px;border-top:1px solid var(--line);list-style:none}
.fx-stats li{padding:12px 14px 0 0}
.fx-stats li+li{padding-left:14px;border-left:1px solid var(--line)}
.fx-stats span{display:block;font-size:.8rem;color:var(--mute)}
.fx-stats b{display:block;font-family:var(--hf);font-style:italic;font-weight:800;text-transform:uppercase;font-size:1.02rem;line-height:1.15;color:var(--navy);margin-top:2px}
.fx-incl li::before{content:"";position:absolute;left:2px;top:.42em;width:12px;height:7px;border-left:3px solid var(--royal);border-bottom:3px solid var(--royal);transform:rotate(-45deg)}
.fx-pic{position:relative;margin:0}
.fx-pic img{display:block;width:100%;height:auto;aspect-ratio:var(--ar,1.5);object-fit:cover;border-radius:22px;border:2px solid var(--navy);box-shadow:0 10px 0 var(--gold)}
.fx-tag{position:absolute;left:-18px;bottom:30px;background:var(--navy);color:#fff;border-radius:14px;padding:10px 16px;font-size:.88rem;line-height:1.35;max-width:250px;box-shadow:0 6px 0 var(--gold)}
.fx-tag b{display:block;font-family:var(--hf);font-style:italic;font-weight:900;font-size:1.7rem;line-height:1.05}
.qband{background:var(--navy);color:#fff;padding:64px 0;position:relative;isolation:isolate;overflow:hidden}
.qband::before,.qband::after{content:"";position:absolute;inset:0;pointer-events:none}
.qband::before{z-index:-2;background:url(pw-marina-dawn.webp) center 45%/cover}
.qband::after{z-index:-1;background:linear-gradient(180deg,rgba(19,42,82,.92) 0%,rgba(19,42,82,.45) 30%,rgba(19,42,82,.45) 70%,rgba(19,42,82,.95) 100%)}
@media(max-width:700px){.qband::before{background-image:url(sm/pw-marina-dawn.webp)}}
.qband .wrap{display:flex;justify-content:center}
.qband .qq-wrap{max-width:520px}
.qb-quote{margin:0;max-width:30em}
.qb-quote .q{display:block;font-family:var(--hf);font-weight:900;font-size:5rem;line-height:.6;color:var(--gold)}
.qb-quote blockquote{margin:14px 0 0;font-family:var(--hf);font-style:italic;font-weight:800;font-size:clamp(1.35rem,2.3vw,1.9rem);line-height:1.2}
.qb-quote figcaption{margin-top:14px;color:rgba(255,255,255,.82)}.qb-quote figcaption b{color:var(--gold-l)}
.qb-quote .rate{margin-top:14px;color:#fff}.qb-quote .rate .stars{color:var(--gold-l)}
.qband .qq-direct a{color:#fff}
.faq-grid>div:only-child{grid-column:1/-1;max-width:820px}
@media(max-width:1020px){.fx-in{gap:36px}}
@media(max-width:900px){
  .hero-fx{padding:calc(var(--nav-h) + 16px) 0 40px}
  .fx-in{grid-template-columns:1fr;gap:30px}
  .fx-pic{order:-1}.fx-tag{left:10px;bottom:-28px;max-width:62%;padding:7px 12px;font-size:.78rem}.fx-tag b{font-size:1.35rem}
  .hero-fx h1{margin-top:12px}
  .fx-pic img{aspect-ratio:var(--ar,1.5);max-height:330px;box-shadow:0 7px 0 var(--gold)}
  .hero-fx .hero-ctas{display:grid;grid-template-columns:1fr 1fr;gap:10px}
  .hero-fx .hero-ctas .btn{padding:10px 8px;font-size:.92rem}
  .hero-fx .hero-ctas .btn:only-of-type{grid-column:1/-1}
  .hero-fx .hero-tel{grid-column:1/-1;justify-content:center}
  .fx-incl{font-size:.9rem;gap:6px 14px}
  .qband{padding:44px 0}
  .fx-stats{display:flex;justify-content:center}.fx-stats li{flex:1 1 0;text-align:center;min-width:0}
  .fx-stats li{padding:10px 8px 0 0}.fx-stats li+li{padding-left:10px}
  .fx-stats b{font-size:.82rem;line-height:1.2}
}

/* deep sea day rows */
.days{display:grid;gap:28px}
.day-row{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:40px;align-items:center;background:#fff;border:2px solid var(--navy);border-radius:22px;padding:22px;box-shadow:0 8px 0 var(--gold);scroll-margin-top:calc(var(--nav-h) + 16px)}
.day-row.flip .day-pic{order:2}
.day-pic{margin:0}
.day-pic img{width:100%;aspect-ratio:3/2;object-fit:cover;border-radius:14px}
.day-top{display:flex;align-items:baseline;justify-content:space-between;gap:12px;flex-wrap:wrap}
.day-txt h3{font-size:clamp(1.6rem,2.6vw,2.2rem);color:var(--navy)}
.day-top .day-price{margin-top:0}
.day-lead{margin-top:12px;font-weight:700;color:var(--navy)}
.day-pts{margin-top:12px}
.day-price{font-family:var(--hf);font-style:italic;font-weight:900;font-size:1.9rem;line-height:1;color:var(--royal);margin-top:6px}
.day-meta{color:var(--mute);font-size:.93rem;margin-top:6px}
.day-txt>p+p{margin-top:12px}
.day-txt .day-meta+p{margin-top:16px}
.day-best{font-size:.95rem}.day-best b{color:var(--navy)}
.day-ctas{display:flex;flex-wrap:wrap;align-items:center;gap:12px 20px;margin-top:20px}
.prose .muted{color:var(--mute);font-size:.95rem}
@media(max-width:900px){.day-row,.day-row.flip{grid-template-columns:1fr;gap:18px;padding:14px 14px 20px}.day-row.flip .day-pic{order:0}.day-ctas .btn{width:100%}}

/* calendar seasons */
.seasons-hero .fx-in{grid-template-columns:1fr}
.seasons-hero .fx-copy{max-width:none}
.fx-copy{min-width:0}
.seasons-hero .lede{max-width:70ch}
.sn-wrap{margin-top:30px}
.rail.sn-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;overflow:visible;padding:0 0 10px}
.sn-card{display:flex;flex-direction:column;background:#fff;border:2px solid var(--navy);border-radius:18px;overflow:hidden;box-shadow:0 6px 0 var(--gold)}
.sn-card img{width:100%;aspect-ratio:3/2;object-fit:cover}
.sn-body{padding:14px 16px 16px}
.sn-body :is(h2,h3){font-weight:800;line-height:1.08;font-size:1.45rem;color:var(--navy);display:flex;align-items:baseline;justify-content:space-between;gap:8px;flex-wrap:wrap}
.sn-body :is(h2,h3) span{font-family:var(--bf);font-style:normal;text-transform:none;font-weight:700;font-size:.82rem;color:var(--mute)}
.sn-body ul{list-style:none;margin-top:8px;display:grid;gap:2px}
.sn-body li{display:grid;grid-template-columns:5.5em minmax(0,1fr);gap:8px;padding:6px 0;border-top:1px solid var(--line);font-size:.9rem}
.sn-body li a{font-weight:800;color:var(--royal);text-underline-offset:3px}
.sn-body li span{color:var(--tx)}
@media(max-width:1020px){.rail.sn-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.rail.sn-grid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:12px}.rail.sn-grid>.sn-card{flex:0 0 82%;scroll-snap-align:start}}

/* home framed hero */
#reviews .rail>.rv{align-self:flex-start}
.home-rates a{display:block;text-decoration:none;color:inherit}.home-rates a:hover b{color:var(--royal)}
.home-fx .hero-vet{margin-top:14px;font-size:.92rem;color:var(--mute)}.home-fx .hero-vet b{color:var(--navy)}
@media(max-width:700px){.home-fx .fx-stats{flex-wrap:wrap}.home-fx .fx-stats li{flex:1 1 45%;border-left:0;padding:10px 6px 0}}
/* mid-page book strip */
#cta{padding:40px 0}
.cta-strip{display:flex;align-items:center;justify-content:space-between;gap:20px 32px;flex-wrap:wrap;background:var(--navy);color:#fff;border-radius:20px;padding:24px 28px;box-shadow:0 6px 0 var(--gold)}
.cta-strip h3{font-family:var(--hf);font-style:italic;font-weight:900;text-transform:uppercase;font-size:1.5rem;line-height:1;margin:0 0 6px;color:#fff}
.cta-strip p{margin:0;color:rgba(255,255,255,.85)}.cta-strip p b{color:var(--gold-l);font-family:var(--hf);font-style:italic;margin-right:6px}
.cta-btns{display:flex;gap:12px;flex-wrap:wrap}.cta-strip .btn-line{color:#fff;border-color:#fff;box-shadow:0 4px 0 rgba(255,255,255,.45)}
@media(max-width:700px){#cta{padding:28px 0}.cta-strip{padding:20px}.cta-btns{width:100%;display:grid;grid-template-columns:1fr}.cta-strip h3{font-size:1.3rem}}
/* good-to-know cards */
.exp-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:16px}
.exp-card{background:#fff;border:2px solid var(--navy);border-radius:16px;padding:20px 22px;box-shadow:0 5px 0 var(--gold)}
.exp-card h3{font-family:var(--hf);font-style:italic;font-weight:800;text-transform:uppercase;color:var(--navy);font-size:1.08rem;line-height:1.15;margin:0 0 8px}
.exp-card p{font-size:.95rem;line-height:1.55;margin:0}.exp-card .fx-incl{margin:0;grid-template-columns:1fr;gap:6px}.exp-card .fx-incl li{font-size:.93rem}
@media(max-width:700px){.exp-cards{gap:12px}.exp-card{padding:16px 18px}}
.page-body:not(:has(.page-aside *)){grid-template-columns:minmax(0,780px)}.page-aside:empty{display:none}
img[src*="pw-swordfish.jpg"]{object-position:50% 72%}
img[src*="bob-epstein"]{object-fit:contain!important;background:#0f2346}
@media(max-width:700px){.rtable tr:first-child{display:none}.rtable,.rtable tbody{display:block;width:100%}
  .rtable tr{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2px 14px;padding:12px 0;border-bottom:1px solid var(--line)}
  .rtable td{display:block;padding:0!important;border:0!important}.rtable td:nth-child(1){font-weight:800;color:var(--navy)}
  .rtable td:nth-child(2){grid-column:1;grid-row:2;font-size:.88rem;color:var(--mute)}
  .rtable td:nth-child(3){grid-column:2;grid-row:1/3;align-self:center;font-weight:900;color:var(--royal);white-space:nowrap}}
.day-ctas .btn-line{color:var(--navy);border-color:var(--navy);background:#fff}.prose .btn-line{color:var(--navy);border-color:var(--navy);background:#fff;box-shadow:0 4px 0 var(--gold);text-decoration:none}.day-top{flex-wrap:nowrap}.day-top h3{min-width:0}.day-row{align-items:start}
.pt-fam{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px 32px;align-items:center}
.pt-fam h2{grid-column:1/-1}.pt-fam p{max-width:none;margin:0}.pt-fam .pt-links{display:flex;flex-direction:column;gap:10px;align-items:flex-start}
@media(max-width:700px){.pt-fam{grid-template-columns:1fr}.pt-fam .pt-links{flex-direction:row;flex-wrap:wrap}}
.pt-logo img{object-fit:contain!important;object-position:left center}
@media(max-width:700px){.rail.gal{display:grid!important;grid-template-columns:1fr 1fr!important;grid-auto-rows:auto!important;gap:8px;overflow:visible}
  .rail.gal>figure,#recent .rail.gal>figure{grid-column:auto!important;height:180px!important;flex:none;width:auto}.rail.gal>figure.gx{display:none}
  .rail.gal>figure:last-child:nth-child(odd):not(.gx){grid-column:1/-1!important}
  .rail.gal>figure figcaption{font-size:.68rem;line-height:1.25;left:6px;right:6px;bottom:6px;padding:3px 6px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
  .rail.gal~.rail-ctrl{display:none!important}.gal-more{margin-top:12px;width:100%;color:var(--navy)!important;background:#fff!important;border-color:var(--navy)!important}}
@media(min-width:701px){.gal-more{display:none}}
/* fish tiles */
.fish-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:14px;margin-top:6px}
.fish-grid>.tile{grid-column:span 4;height:300px;scroll-margin-top:calc(var(--nav-h) + 20px)}
.fish-grid>.tile.w4{grid-column:span 3;height:270px}.fish-grid>.tile.w2{grid-column:span 6}
.fish-grid .tile img{object-position:50% 40%}
.fish-grid .tile p{display:block;max-width:40ch}
@media(max-width:700px){.fish-grid{grid-template-columns:1fr 1fr;gap:10px}.fish-grid>.tile,.fish-grid>.tile.w4,.fish-grid>.tile.w2{grid-column:auto;height:230px;padding:12px}
  .fish-grid.odd>.tile:last-child{grid-column:span 2}.fish-grid .tile h3{font-size:1.02rem}.fish-grid .tile p{display:block;font-size:.78rem;line-height:1.35}}
.fh-wait{opacity:.65;cursor:progress}
.rtable a{color:var(--navy);font-weight:800;text-decoration:none;display:inline-flex;align-items:baseline;gap:6px}.rtable a::after{content:"\2192";color:var(--gold);font-weight:900;transition:transform .15s}.rtable a:hover{color:var(--royal)}.rtable a:hover::after{transform:translateX(3px)}
.drive-list{list-style:none;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:18px 0 22px;padding:0!important}.prose .drive-list li+li{margin-top:0}.drive-list a{display:flex;flex-direction:column;height:100%;padding:12px 14px;border:2px solid var(--line);border-radius:12px;background:#fff;text-decoration:none;color:var(--tx);font-weight:400}.drive-list a:hover{border-color:var(--navy)}.drive-list .dl-t{font-family:var(--hf);font-style:italic;font-weight:800;text-transform:uppercase;color:var(--navy);line-height:1.1}.drive-list .dl-m{font-size:.88rem;color:var(--mute);margin-top:3px}
/* mega menu */
.nav-links{align-items:center}
.nav-links>li>a{display:inline-block}
.nav-dd{all:unset;cursor:pointer;display:inline-flex;align-items:center;gap:7px;font-family:var(--hf);font-weight:600;font-size:1rem;color:var(--tx);padding:6px 0;border-bottom:2px solid transparent}
.nav-dd i{font-size:.7rem;transition:transform .2s}
.nav-dd:hover,.nav-dd[aria-expanded="true"]{color:var(--royal);border-bottom-color:var(--royal)}
.nav-dd[aria-expanded="true"] i{transform:rotate(180deg)}
.nav-dd:focus-visible{outline:3px solid var(--royal);outline-offset:4px;border-radius:4px}
.mega{position:absolute;left:0;right:0;top:var(--nav-h);background:#fff;border-top:1px solid var(--line);box-shadow:0 18px 30px -12px rgba(19,42,82,.28);animation:megaIn .18s ease both}
.mega::after{content:"";position:absolute;left:0;right:0;bottom:-5px;height:5px;background:var(--gold)}
@keyframes megaIn{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}
.mega-in{max-width:calc(var(--wrap) + var(--gut)*2);margin:0 auto;padding:30px var(--gut) 34px;display:grid;gap:40px}
.mega-fishing{grid-template-columns:minmax(0,1.9fr) minmax(0,.8fr) minmax(0,1.2fr)}
.mega-cruises{grid-template-columns:minmax(0,1fr) minmax(0,2fr)}
.mega-plan{grid-template-columns:repeat(5,minmax(0,1fr));gap:30px}
.mm-h{font-family:var(--hf);font-style:italic;font-weight:800;text-transform:uppercase;font-size:.95rem;color:var(--royal);margin-bottom:12px}
.mega ul{list-style:none}
.mm-cards{display:grid;gap:8px}
.mm-cards.two{grid-template-columns:1fr 1fr}
.mm-card{display:flex;align-items:center;gap:12px;padding:6px;border-radius:12px;text-decoration:none;color:var(--tx)}
.mm-card:hover{background:var(--sky)}
.mm-card img{width:80px;height:56px;object-fit:cover;border-radius:9px;flex:none}
.mm-card .mm-t{display:block;font-family:var(--hf);font-style:italic;font-weight:800;text-transform:uppercase;font-size:.98rem;line-height:1.1;color:var(--navy)}
.mm-card small{display:block;color:var(--mute);font-size:.84rem;margin-top:2px}
.mm-list{display:grid;gap:2px}
.mm-list.two{grid-template-columns:1fr 1fr;column-gap:16px}
.mm-list a,.mm-months a{display:block;padding:6px 0;color:var(--tx);text-decoration:none;font-weight:700;font-size:.97rem}
.mm-list a:hover,.mm-months a:hover{color:var(--royal);text-decoration:underline;text-underline-offset:3px}
.mm-months{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2px 10px}
.mega-ov{position:fixed;inset:0;z-index:90;background:rgba(19,42,82,.35)}
@media(max-width:1020px){.mega,.mega-ov{display:none!important}}
.drawer-links .dg-top{flex:none}
.dg{border-bottom:1px solid var(--line)}
.dg-btn{all:unset;box-sizing:border-box;cursor:pointer;display:flex;align-items:center;justify-content:space-between;width:100%;min-height:58px;padding:0 22px;font-family:var(--hf);font-weight:800;font-style:italic;text-transform:uppercase;font-size:1.18rem;color:var(--tx)}
.dg-btn i{font-size:.85rem;color:var(--royal);transition:transform .2s}
.dg-btn[aria-expanded="true"] i{transform:rotate(45deg)}
.dg-btn:focus-visible{outline:3px solid var(--royal);outline-offset:-3px}
.dg-panel{max-height:0;overflow:hidden;transition:max-height .3s ease}
.dg-panel>*:last-child{margin-bottom:16px}
.dg-h{padding:8px 22px 4px;font-size:.78rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--royal)}
.drawer-links .dg-list a{display:flex;align-items:baseline;justify-content:space-between;gap:10px;flex:none;min-height:42px;max-height:none;padding:8px 22px 8px 30px;border:0;font-family:var(--bf);font-style:normal;text-transform:none;font-weight:700;font-size:1rem}
.drawer-links .dg-list a small{font-size:.8rem;text-align:right}
.dg-months{display:grid;grid-template-columns:repeat(4,1fr);gap:4px;padding:4px 22px 0 30px}
.drawer-links .dg-months a{flex:none;min-height:40px;max-height:none;padding:0;justify-content:flex-start;border:0;font-family:var(--bf);font-style:normal;text-transform:none;font-weight:700;font-size:.98rem}
@media (prefers-reduced-motion:reduce){.mega{animation:none}}

/* gallery */
.rail.gal{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));grid-auto-rows:260px;gap:12px;overflow:visible;padding:0}
.rail.gal>figure{position:relative;grid-column:span 2;margin:0;border-radius:14px;overflow:hidden;background:var(--sky)}
.rail.gal>figure:nth-last-child(2):nth-child(3n+1),.rail.gal>figure:last-child:nth-child(3n+2){grid-column:span 3}
.rail.gal>figure:last-child:nth-child(3n+1){grid-column:3/span 2}
.rail.gal>figure img{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 40%;transition:transform .3s}
.rail.gal>figure:hover img{transform:scale(1.02)}
.rail.gal>figure figcaption{position:absolute;left:10px;right:10px;bottom:10px;width:fit-content;max-width:calc(100% - 20px);background:rgba(19,42,82,.8);color:#fff;font-size:.8rem;line-height:1.3;padding:5px 9px;border-radius:8px}
.rail.gal~.rail-ctrl{display:none}
.gq{margin:40px 0 0;background:var(--navy);color:#fff;border-radius:20px;padding:34px 36px;box-shadow:0 8px 0 var(--gold)}
.gq blockquote{margin:0;font-family:var(--hf);font-style:italic;font-weight:800;font-size:clamp(1.3rem,2.2vw,1.8rem);line-height:1.2}
.gq figcaption{margin-top:12px;font-size:.92rem;color:rgba(255,255,255,.8)}
.gq figcaption b{color:var(--gold-l)}
.gfacts{list-style:none;display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px;margin-top:22px}
.gfacts li{background:#fff;border:2px solid var(--navy);border-radius:14px;padding:12px 14px;text-align:center}
.gfacts b{display:block;font-family:var(--hf);font-style:italic;font-weight:800;text-transform:uppercase;color:var(--navy)}
.gfacts span{font-size:.88rem;color:var(--mute)}
@media(max-width:1020px) and (min-width:701px){.rail.gal{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:240px}
  .rail.gal>figure,.rail.gal>figure:nth-last-child(2):nth-child(3n+1),.rail.gal>figure:last-child:nth-child(3n+2),.rail.gal>figure:last-child:nth-child(3n+1){grid-column:auto}
  .rail.gal>figure:last-child:nth-child(odd){grid-column:span 2}}
@media(max-width:700px){
  .rail.gal{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:10px;padding-bottom:4px}
  .rail.gal>figure{flex:0 0 82%;height:300px;scroll-snap-align:start}
  #recent .rail.gal>figure{flex:0 0 64%;height:340px}
  .rail.gal~.rail-ctrl{display:flex}
  .gq{padding:22px 20px;margin-top:28px}
  .gfacts{gap:8px}.gfacts li{padding:10px 12px}
}

/* lightbox */
.pwlb{position:fixed;inset:0;z-index:9999;display:none;align-items:center;justify-content:center;background:rgba(19,42,82,.92);padding:36px 20px}
.pwlb.on{display:flex}
.pwlb-fig{margin:0;display:flex;flex-direction:column;align-items:center;gap:14px;max-width:100%;max-height:100%}
.pwlb-img{transition:opacity .18s ease;display:block;max-width:100%;max-height:70vh;width:auto;height:auto;border-radius:12px}
.pwlb-cap{color:#fff;font-size:.92rem;text-align:center;max-width:64ch;min-height:1.4em}
.pwlb-bar{display:grid;grid-template-columns:48px minmax(64px,auto) 48px;align-items:center;justify-items:center;gap:16px;margin:0 auto}
.pwlb-x{position:absolute;top:max(16px,env(safe-area-inset-top));right:max(16px,env(safe-area-inset-right));width:48px;height:48px;border:2px solid #fff;border-radius:12px;background:rgba(19,42,82,.6);color:#fff;font-size:1.25rem;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;z-index:2}
.pwlb-x:hover{background:var(--navy)}
.pwlb-bar button{display:inline-flex;align-items:center;justify-content:center;width:48px;height:48px;border:2px solid var(--navy);border-radius:12px;background:var(--gold);color:var(--navy);font-weight:900;font-size:1.1rem;cursor:pointer;box-shadow:0 4px 0 #000}
.pwlb-count{color:rgba(255,255,255,.8);font-size:.88rem;font-variant-numeric:tabular-nums;min-width:52px;text-align:center}
body.pwlb-open{overflow:hidden}
img.pwlb-able{cursor:zoom-in}