:root{--deep:#052f38;--teal:#0a6c72;--aqua:#22c4b8;--foam:#eef9f7;--sand:#f3ede0;--ink:#10282d;--white:#fff;--shadow:0 20px 60px rgba(1,28,35,.18)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--foam);color:var(--ink);font-family:Inter,system-ui,sans-serif;font-size:16px}img{display:block;max-width:100%}a{color:inherit}.site-header{height:74px;padding:0 clamp(20px,5vw,72px);display:flex;align-items:center;justify-content:space-between;background:rgba(5,47,56,.96);color:white;position:sticky;top:0;z-index:20;backdrop-filter:blur(14px)}.brand{display:flex;gap:10px;align-items:center;text-decoration:none;font-family:"Barlow Condensed",sans-serif;font-size:1.55rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.brand-mark{color:var(--aqua);font-size:1.85rem}.site-header nav{display:flex;align-items:center;gap:30px}.site-header nav a{text-decoration:none;font-size:.92rem;font-weight:600}.call-link{border:1px solid rgba(255,255,255,.5);padding:11px 16px;border-radius:99px}.hero{min-height:calc(100svh - 74px);position:relative;display:flex;align-items:flex-end;overflow:hidden;background:var(--deep)}.hero-photo{position:absolute;inset:0;background:url('assets/capt-jim-redfish.png') center 24%/cover no-repeat}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(1,24,29,.88) 0%,rgba(1,24,29,.6) 42%,rgba(1,24,29,.06) 72%),linear-gradient(0deg,rgba(1,24,29,.65),transparent 50%)}.hero-copy{position:relative;z-index:2;color:white;padding:clamp(48px,8vw,110px) clamp(22px,7vw,105px);max-width:840px}.eyebrow{text-transform:uppercase;letter-spacing:.18em;font-weight:700;font-size:.78rem;color:var(--aqua);margin:0 0 14px}.hero h1,.section-heading h2,.cta h2{font-family:"Barlow Condensed",sans-serif;text-transform:uppercase;line-height:.88;letter-spacing:-.025em}.hero h1{font-size:clamp(4rem,10vw,9.6rem);margin:0 0 24px}.intro{max-width:590px;font-size:clamp(1rem,2vw,1.25rem);line-height:1.6;color:rgba(255,255,255,.82)}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}.button{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;font-weight:700;padding:15px 22px;border-radius:4px;transition:.2s transform,.2s background}.button:hover{transform:translateY(-2px)}.button.primary{background:var(--aqua);color:var(--deep)}.button.ghost{border:1px solid rgba(255,255,255,.55);color:white}.hero-badge{position:absolute;right:clamp(20px,5vw,72px);bottom:38px;z-index:2;width:clamp(105px,13vw,185px);border-radius:50%;overflow:hidden;box-shadow:var(--shadow)}.boat-band{background:var(--sand);display:grid;grid-template-columns:minmax(0,2.5fr) minmax(260px,1fr);align-items:center}.boat-band img{width:100%;height:360px;object-fit:cover}.boat-band div{padding:42px}.boat-band span,.boat-band strong{display:block}.boat-band span{text-transform:uppercase;letter-spacing:.15em;font-size:.75rem;color:var(--teal);font-weight:700}.boat-band strong{font-family:"Barlow Condensed",sans-serif;text-transform:uppercase;font-size:clamp(2.4rem,4vw,4rem);line-height:.95;margin-top:10px;color:var(--deep)}.gallery-section{padding:clamp(68px,9vw,130px) clamp(16px,4vw,64px)}.section-heading{text-align:center;max-width:730px;margin:0 auto 54px}.section-heading h2{font-size:clamp(3rem,7vw,6.8rem);margin:0;color:var(--deep)}.section-heading>p:last-child{color:#526a6f}.gallery{max-width:1500px;margin:auto;display:grid;grid-template-columns:repeat(12,1fr);grid-auto-rows:180px;gap:14px}.tile{border:0;padding:0;background:#d7e5e3;cursor:zoom-in;overflow:hidden;position:relative;border-radius:5px;box-shadow:0 10px 30px rgba(5,47,56,.1)}.tile img{width:100%;height:100%;object-fit:cover;transition:transform .45s ease,filter .45s ease}.tile:hover img{transform:scale(1.025);filter:saturate(1.08)}.tile.portrait{grid-column:span 4;grid-row:span 3}.tile.landscape{grid-column:span 8;grid-row:span 3}.tile.square{grid-column:span 4;grid-row:span 3}.tile.featured{grid-row:span 4}.cta{margin-top:20px;padding:clamp(50px,7vw,100px) clamp(24px,7vw,100px);background:var(--teal);color:white;display:flex;align-items:center;justify-content:space-between;gap:30px}.cta .eyebrow{color:#a7fff7}.cta h2{font-size:clamp(3rem,7vw,7rem);margin:0}.button.light{background:white;color:var(--deep);white-space:nowrap}footer{background:var(--deep);color:white;display:grid;grid-template-columns:auto 1fr auto;gap:22px;align-items:center;padding:34px clamp(20px,6vw,90px)}footer img{width:76px;border-radius:50%}footer strong,footer span{display:block}footer span{font-size:.86rem;color:rgba(255,255,255,.6);margin-top:5px}.footer-contact{display:flex;flex-direction:column;align-items:flex-end;gap:7px}.footer-contact a{color:var(--aqua);font-weight:700;overflow-wrap:anywhere}.lightbox{width:100vw;height:100vh;max-width:none;max-height:none;margin:0;border:0;padding:28px;background:rgba(2,20,24,.96);color:white}.lightbox[open]{display:grid;grid-template-columns:60px 1fr 60px;place-items:center}.lightbox::backdrop{background:#021417}.lightbox figure{margin:0;display:grid;place-items:center;gap:12px;width:100%;height:100%;min-height:0}.lightbox figure img{max-height:calc(100vh - 95px);max-width:100%;object-fit:contain}.lightbox figcaption{font-size:.9rem;color:rgba(255,255,255,.75)}.close,.previous,.next{border:0;background:transparent;color:white;cursor:pointer}.close{position:absolute;right:24px;top:18px;font-size:2.3rem}.previous,.next{font-size:3.7rem}.lightbox button:focus-visible,.tile:focus-visible,.button:focus-visible,a:focus-visible{outline:3px solid var(--aqua);outline-offset:3px}
@media(max-width:900px){.hero-photo{background-position:58% center}.hero-shade{background:linear-gradient(0deg,rgba(1,24,29,.9) 0%,rgba(1,24,29,.5) 52%,rgba(1,24,29,.05) 80%)}.hero-badge{top:22px;bottom:auto}.boat-band{grid-template-columns:1fr}.boat-band img{height:280px}.boat-band div{text-align:center}.gallery{grid-template-columns:repeat(2,1fr);grid-auto-rows:180px}.tile.portrait,.tile.square{grid-column:span 1;grid-row:span 2}.tile.landscape{grid-column:span 2;grid-row:span 2}.tile.featured{grid-row:span 3}.cta{align-items:flex-start;flex-direction:column}footer{grid-template-columns:auto 1fr}.footer-contact{grid-column:2;align-items:flex-start}}
@media(max-width:560px){.site-header{height:66px}.site-header nav>a:first-child{display:none}.site-header nav{gap:10px}.call-link{padding:9px 12px}.hero{min-height:760px}.hero-copy{padding-bottom:50px}.hero h1{font-size:4.5rem}.hero-badge{width:95px}.gallery-section{padding-left:10px;padding-right:10px}.gallery{gap:7px;grid-auto-rows:145px}.section-heading{padding:0 14px}.lightbox{padding:16px}.lightbox[open]{grid-template-columns:36px 1fr 36px}.previous,.next{font-size:2.5rem}footer{padding:28px 20px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.tile img,.button{transition:none}}
.payment-section{padding:clamp(70px,9vw,130px) clamp(18px,5vw,76px);background:var(--deep);color:white}.payment-heading h2{font-family:"Barlow Condensed",sans-serif;text-transform:uppercase;line-height:.9;letter-spacing:-.025em;font-size:clamp(3rem,7vw,6.8rem);margin:0;color:white}.payment-heading>p:last-child{color:rgba(255,255,255,.68);line-height:1.6}.payment-grid{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.payment-card{background:white;color:var(--ink);border-radius:12px;padding:26px;display:grid;grid-template-columns:auto 1fr;gap:10px 16px;align-items:center;box-shadow:0 18px 50px rgba(0,0,0,.22)}.payment-icon{width:52px;height:52px;border-radius:13px;display:grid;place-items:center;color:white;font-size:1.8rem;font-weight:800}.paypal-card .payment-icon{background:#003087}.cashapp-card .payment-icon{background:#00a83e}.venmo-card .payment-icon{background:#008cff}.payment-copy h3{margin:0;font-size:1.35rem}.payment-copy p{margin:4px 0 0;color:#526a6f;font-size:.9rem;overflow-wrap:anywhere}.payment-card>img{grid-column:1/-1;width:min(100%,250px);aspect-ratio:1;object-fit:contain;margin:14px auto}.payment-button{grid-column:1/-1;text-align:center;text-decoration:none;background:var(--deep);color:white;padding:14px 18px;border-radius:5px;font-weight:700}.payment-note{max-width:860px;margin:28px auto 0;text-align:center;color:rgba(255,255,255,.6);font-size:.87rem;line-height:1.6}
@media(max-width:800px){.payment-grid{grid-template-columns:1fr;max-width:480px}.payment-card{grid-template-columns:auto 1fr auto}.payment-card>img{grid-column:3;grid-row:1/3;width:100px;margin:0}.payment-button{grid-column:1/-1}.site-header nav>a:nth-child(2){display:none}}
@media(max-width:480px){.payment-card{grid-template-columns:auto 1fr}.payment-card>img{grid-column:1/-1;grid-row:auto;width:210px;margin:12px auto}.payment-button{grid-column:1/-1}}
.gallery{grid-auto-flow:dense}
.guide-section{padding:clamp(64px,8vw,110px) clamp(22px,7vw,105px);background:white;display:grid;grid-template-columns:minmax(260px,.9fr) minmax(300px,1.1fr);gap:clamp(36px,7vw,110px);align-items:start}.guide-kicker h2{font-family:"Barlow Condensed",sans-serif;text-transform:uppercase;font-size:clamp(2.8rem,5.5vw,5.6rem);line-height:.92;letter-spacing:-.025em;color:var(--deep);margin:0}.guide-copy{font-size:1.05rem;line-height:1.75;color:#405b60}.guide-copy p{margin:0 0 18px}.text-link{display:inline-block;margin-top:8px;color:var(--teal);font-weight:800;text-underline-offset:5px}.text-link:hover{color:var(--deep)}
@media(max-width:800px){.guide-section{grid-template-columns:1fr;gap:28px}.guide-copy{font-size:1rem}}
.meeting-point{padding:14px 16px;border-left:4px solid var(--aqua);background:#edf8f6;color:var(--deep)}
.fishing-areas{padding:clamp(64px,8vw,110px) clamp(22px,7vw,105px);background:#edf5f3}.fishing-areas .section-heading{margin-bottom:38px}.area-grid{max-width:1180px;margin:0 auto;display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.area-grid article{background:white;padding:30px;border-radius:6px;box-shadow:0 12px 32px rgba(5,47,56,.08);border-top:4px solid var(--aqua)}.area-grid h3{font-family:"Barlow Condensed",sans-serif;text-transform:uppercase;font-size:2rem;color:var(--deep);margin:0 0 10px}.area-grid p{color:#526a6f;line-height:1.65;margin:0}@media(max-width:800px){.area-grid{grid-template-columns:1fr}}
.merch-section{padding:clamp(70px,9vw,130px) clamp(18px,5vw,76px);background:linear-gradient(180deg,#f7f1e6 0%,#eef9f7 100%)}.merch-heading{max-width:880px}.merch-heading>p:last-of-type{color:#526a6f;line-height:1.6}.merch-grid{max-width:1320px;margin:0 auto;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.merch-card{overflow:hidden;background:white;border-radius:10px;box-shadow:0 16px 42px rgba(5,47,56,.13);border:1px solid rgba(5,47,56,.08)}.merch-card>img{width:100%;aspect-ratio:3/2;object-fit:cover;background:#dfeeed}.merch-card-copy{display:flex;align-items:center;gap:14px;padding:20px 22px}.merch-card h3{margin:0;font-family:"Barlow Condensed",sans-serif;text-transform:uppercase;font-size:1.55rem;line-height:1}.merch-card p{margin:6px 0 0;color:#607579;font-size:.88rem}.swatch{width:28px;height:28px;flex:0 0 28px;border-radius:50%;border:2px solid white;box-shadow:0 0 0 1px rgba(5,47,56,.25)}.swatch.white{background:#fff}.swatch.blue{background:#8ed9ea}.merch-note{max-width:850px;margin:26px auto 0;text-align:center;color:#607579;font-size:.82rem;line-height:1.55}
@media(max-width:800px){.merch-grid{grid-template-columns:1fr}.nav-pay{display:none}.site-header nav>a:nth-child(2){display:inline}}
@media(max-width:560px){.nav-gallery{display:none}.site-header nav>a:first-child{display:inline}.merch-section{padding-left:12px;padding-right:12px}.merch-card-copy{padding:17px}.merch-card h3{font-size:1.35rem}}
