:root{--navy:#062d3a;--ocean:#087a86;--lime:#d7ee69;--paper:#f6f8f7;--muted:#46606a}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--navy);font:17px/1.65 Arial,sans-serif}a{color:inherit}header{padding:26px 6%;display:flex;align-items:center;justify-content:space-between;background:white}.brand{display:flex;gap:14px;align-items:center;text-decoration:none;font-weight:900;font-size:23px;letter-spacing:1px;line-height:1.15}.brand small{display:block;font-size:13px;letter-spacing:5px;margin-top:5px}.brand-mark{display:grid;place-content:center;background:var(--navy);color:white;width:53px;height:53px;font-size:20px;line-height:.9}.brand-mark span{color:var(--lime);font-size:14px;margin-top:4px}.language{font-size:15px;font-weight:bold;text-decoration:none;border-bottom:2px solid var(--ocean);padding:8px}nav{padding:14px 6%;display:flex;gap:28px;flex-wrap:wrap;border-top:1px solid #dde6e7;background:white}nav a{text-decoration:none;font-size:14px;font-weight:bold}nav a:hover{text-decoration:underline}.hero{background:var(--navy);color:white;display:grid;grid-template-columns:1.6fr 1fr;gap:50px;padding:70px 6%;min-height:480px}.eyebrow{font-size:13px;font-weight:bold;letter-spacing:2px;text-transform:uppercase}.hero .eyebrow{color:var(--lime)}h1{font-family:Georgia,serif;font-size:clamp(42px,5.7vw,82px);line-height:1.05;letter-spacing:-2px;margin:20px 0 26px}h2{font-family:Georgia,serif;font-size:34px;line-height:1.2;font-weight:normal}h3{font-size:24px;line-height:1.2;margin:24px 0 12px}.intro{max-width:640px;font-size:19px;line-height:1.65}.hero .intro{color:#d1e5e9}.button{display:inline-flex;gap:34px;align-items:center;text-decoration:none;background:var(--lime);color:var(--navy);font-weight:bold;padding:13px 22px;margin-top:14px}.hero-note{align-self:center;border:1px solid #78a4af;padding:36px;transform:rotate(3deg);max-width:330px;justify-self:center}.hero-note span{font-size:13px;letter-spacing:3px}.hero-note strong{display:block;font-size:60px;font-weight:900;line-height:1;margin:20px 0;letter-spacing:-2px}.explore,.content{padding:48px 6% 70px}.section-heading{max-width:730px;margin-bottom:30px}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.card{position:relative;display:block;padding:26px 30px 40px;background:white;border:1px solid #cbdadb;text-decoration:none;transition:transform .18s,border-color .18s}.card:hover{transform:translateY(-4px);border-color:var(--ocean)}.card p{color:var(--muted);margin:0 0 12px}.number{font-size:14px;font-weight:bold;color:var(--ocean)}.arrow{position:absolute;bottom:13px;right:23px;font-size:25px;color:var(--ocean)}footer{background:var(--navy);color:#d1e5e9;padding:40px 6%}footer small{display:block;max-width:700px;font-size:13px}.footer-brand{color:white;letter-spacing:2px;font-weight:bold;text-decoration:none}.page-head{padding:35px 6% 42px;background:var(--navy);color:white}.page-head h1{font-size:clamp(40px,5vw,64px)}.back{font-size:14px}.page-head .eyebrow{margin-top:32px;color:var(--lime)}.article{max-width:800px;margin:auto}.article section{margin-bottom:38px}.article p,.article li{color:var(--muted)}a:focus-visible{outline:3px solid #ee9418;outline-offset:5px}.skip{position:absolute;left:10px;top:-80px;background:white;padding:10px;z-index:10}.skip:focus{top:10px}@media(max-width:850px){.grid{grid-template-columns:repeat(2,1fr)}.hero{grid-template-columns:1fr}.hero-note{display:none}nav{gap:12px 22px}}@media(max-width:520px){.grid{grid-template-columns:1fr}.hero{padding:40px 6%}.explore,.content{padding-top:30px}h1{letter-spacing:-1px}header{padding:20px 6%}nav a{font-size:14px}.intro{font-size:17px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.card{transition:none}}

/* Caribbean editorial homepage. Existing inner-page styles remain shared. */
:root{--navy:#052c39;--ocean:#006d77;--lime:#e0f18a;--paper:#f5f9f9;--muted:#405c66}
header,nav,footer{padding-left:max(5%,calc((100% - 1360px)/2));padding-right:max(5%,calc((100% - 1360px)/2))}
nav{gap:10px 25px}nav a{padding:6px 0;min-height:36px;display:inline-flex;align-items:center}
.homepage h2{font-weight:700;letter-spacing:-1px;font-size:clamp(29px,3.2vw,44px)}
.home-hero{position:relative;isolation:isolate;min-height:620px;display:flex;align-items:center;background:var(--navy);color:white;overflow:hidden;padding:72px max(5%,calc((100% - 1360px)/2)) 90px}
.hero-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:60% center;z-index:-3}
.home-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(2,29,41,.96),rgba(2,29,41,.84) 32%,rgba(2,29,41,.3) 72%,rgba(2,29,41,.12));z-index:-2}
.hero-copy{max-width:710px}.hero-copy .eyebrow{color:var(--lime);margin-top:0}.hero-copy h1{font-family:Arial,sans-serif;font-weight:900;font-size:clamp(58px,7.8vw,112px);line-height:.91;letter-spacing:-5px;margin:27px 0}.title-dot{color:var(--lime)}
.hero-subtitle{font-weight:bold;font-size:clamp(20px,2vw,28px);line-height:1.3;margin:0 0 20px}.hero-description{max-width:560px;color:#e0eff1;font-size:18px;line-height:1.7}.hero-actions{display:flex;gap:28px;align-items:center;flex-wrap:wrap;margin-top:27px}.hero-actions .button{margin:0;border-radius:3px;font-size:16px;gap:20px}.text-action{font-size:15px;font-weight:bold;text-underline-offset:6px}.hero-caption{position:absolute;bottom:21px;right:5%;font-size:12px;letter-spacing:2px;color:white;background:#052c39bd;padding:5px 10px}
.habitat-ribbon{display:flex;justify-content:space-between;gap:18px;background:var(--ocean);color:white;padding:18px 5%;font-size:14px;font-weight:bold}.habitat-ribbon span{display:flex;align-items:center;gap:12px}.habitat-ribbon span:before{content:"+";color:var(--lime)}
.home-section{padding:72px max(5%,calc((100% - 1360px)/2))}.section-top{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:30px}.section-top h2{margin:8px 0 0}.section-top .eyebrow{color:var(--ocean);margin:0}.section-top>p{max-width:340px;margin:0;color:var(--muted)}
.water-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.water-card{display:flex;flex-direction:column;position:relative;text-decoration:none;padding:29px 25px 24px;min-height:270px;background:white;border:1px solid #d6e2e3;border-top:4px solid var(--ocean);transition:transform .18s,box-shadow .18s}.water-card h3{font-size:25px;margin:26px 0 12px}.water-card .eyebrow{color:var(--ocean);font-size:12px}.water-card p{font-size:16px;color:var(--muted);margin:0 0 24px}.card-link{font-size:14px;font-weight:bold;margin-top:auto;display:flex;justify-content:space-between;gap:15px}.water-freshwater{border-top-color:#366a47}.water-inshore{border-top-color:#178d90}.water-offshore{border-top-color:#235c8d}.water-card:hover,.species-link:hover{transform:translateY(-4px);box-shadow:0 10px 25px #052c3910}
.species-section{background:#e6f0ef;border-block:1px solid #d5e3e1}.section-intro{max-width:830px;color:var(--muted)}.species-groups{display:flex;flex-wrap:wrap;gap:9px;list-style:none;padding:0;margin:24px 0 32px}.species-groups li{padding:7px 14px;border:1px solid #b1c8c8;border-radius:24px;font-size:14px;background:#f8fbfb}.species-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.species-link{background:var(--navy);color:white;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:25px;text-decoration:none;transition:transform .18s}.species-link .eyebrow{font-size:11px;color:#bcd7dc;letter-spacing:1px}.species-link h3{margin:15px 0;font-family:Georgia,serif;font-size:27px}.draft-label{font-size:13px;display:inline-block;font-weight:bold;color:var(--ocean)}.species-link .draft-label{color:var(--lime);font-weight:normal}.species-link>span{font-size:26px;color:var(--lime)}
.knowledge-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:45px}.guide-card{display:flex;gap:22px;padding:27px 0;text-decoration:none;border-top:1px solid #c7d9dc;align-items:start}.guide-card .number{padding-top:3px}.guide-card h3{margin:0 0 9px;font-size:21px}.guide-card p{margin:0;color:var(--muted);font-size:16px}.guide-card>span:last-child{margin-left:auto;font-size:22px;color:var(--ocean)}.guide-card:hover h3{text-decoration:underline;text-underline-offset:4px}
.social-section{background:var(--navy);color:white;display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center;border-bottom:1px solid #32525d}.social-section h2{margin:10px 0 20px}.social-section .eyebrow{color:var(--lime)}.social-section p{color:#d1e5e9;max-width:510px}.social-status{border:1px solid #547580;padding:30px;display:flex;align-items:center;gap:24px}.social-status strong{font-size:24px}.social-status p{font-size:16px;margin:6px 0 0}.play-mark{color:var(--navy);background:var(--lime);padding:11px 20px;border-radius:12px;font-size:24px}.homepage footer{padding-top:32px}.homepage footer p{font-size:15px}
@media(min-width:1700px){.home-hero{min-height:680px}}
@media(max-width:1050px){.water-grid,.species-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.section-top{align-items:start}.home-hero:after{background:linear-gradient(90deg,#021d29ef,#021d29b0 60%,#021d2940)}.social-section{gap:28px}.social-status{padding:22px;gap:16px}}
@media(max-width:700px){header{padding-block:20px}.brand{font-size:20px}.language{font-size:14px}nav{gap:5px 18px;padding-block:9px}.home-hero{min-height:610px;padding-block:50px 72px}.hero-copy h1{letter-spacing:-3px;font-size:clamp(54px,13vw,80px)}.hero-description{font-size:17px}.home-hero:after{background:linear-gradient(90deg,#021d29ed,#021d29a8)}.hero-image{object-position:65% center}.hero-caption{font-size:10px;letter-spacing:1px;left:5%;right:auto}.habitat-ribbon{display:grid;grid-template-columns:1fr 1fr;gap:12px;font-size:12px}.home-section{padding-block:45px}.section-top{flex-direction:column;gap:16px}.section-top>p{max-width:none}.knowledge-grid,.social-section{grid-template-columns:1fr}.water-card{padding:22px 19px;min-height:250px}.water-card h3{font-size:23px}.species-link{padding:22px 18px}.species-link h3{font-size:23px}.social-status{max-width:550px}.hero-actions{gap:22px}.hero-actions .button{font-size:15px;padding:13px 17px}}
@media(max-width:420px){.water-grid,.species-grid{grid-template-columns:1fr}.water-card{min-height:220px}.hero-copy h1{font-size:54px}.hero-subtitle{font-size:21px}.brand-mark{width:43px;height:47px}.brand{gap:9px}.brand small{letter-spacing:3px}.guide-card{gap:15px}.social-status{align-items:start}.play-mark{padding:8px 13px}}
@media(prefers-reduced-motion:reduce){.water-card,.species-link{transition:none}.water-card:hover,.species-link:hover{transform:none}}

/* Species entrance: scoped additions, preserving all existing homepage styles. */
.catch-section{background:#e6f0ef;border-bottom:1px solid #d5e3e1}
.catch-section .section-top{margin-bottom:36px}
.catch-section #catch-title{font-family:Arial,sans-serif;font-weight:900;font-size:clamp(30px,4vw,54px);line-height:1.08;letter-spacing:-1.5px}
.catch-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.catch-card{min-width:0;display:flex;flex-direction:column;min-height:300px;padding:26px 28px 22px;text-decoration:none;background:var(--navy);color:white;border:1px solid var(--navy);border-radius:3px;transition:transform .18s,box-shadow .18s}
.catch-card:nth-child(3n+2){background:var(--ocean);border-color:var(--ocean)}
.catch-card:nth-child(3n){background:white;border-color:#c5d8d8;color:var(--navy)}
.catch-card-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:22px}
.catch-number{font-size:54px;line-height:1;font-weight:900;letter-spacing:-3px;color:var(--lime)}
.catch-card:nth-child(3n) .catch-number{color:var(--ocean)}
.catch-arrow{font-size:24px;line-height:1}
.catch-card h3{font-family:Georgia,serif;font-size:28px;line-height:1.18;margin:0 0 12px;overflow-wrap:break-word}
.catch-card p{font-size:16px;line-height:1.55;margin:0 0 24px;color:#e0eff1}
.catch-card:nth-child(3n) p{color:var(--muted)}
.catch-card-footer{display:flex;justify-content:space-between;gap:16px;align-items:center;margin-top:auto;padding-top:16px;border-top:1px solid #ffffff45;font-size:14px;font-weight:bold}
.catch-card:nth-child(3n) .catch-card-footer{border-color:#c5d8d8}
.catch-card:hover{transform:translateY(-4px);box-shadow:0 12px 24px #052c3920}
.catch-card:hover h3{text-decoration:underline;text-underline-offset:5px}
.catch-note{margin:24px 0 0;font-size:14px;color:var(--muted)}
.category-library{max-width:1360px;margin-inline:auto}
.library-category{scroll-margin-top:24px;border-bottom:1px solid #c5d8d8;padding-bottom:32px;margin-bottom:40px}
.library-category>.text-action{display:inline-block;margin-top:22px;padding-block:8px}
.library-category>p{color:var(--muted)}
@media(max-width:1000px){.catch-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.catch-grid{grid-template-columns:1fr;gap:16px}.catch-card{min-height:270px;padding:24px}.catch-card h3{font-size:27px}.catch-card-top{margin-bottom:18px}.catch-number{font-size:46px}}
@media(prefers-reduced-motion:reduce){.catch-card{transition:none}.catch-card:hover{transform:none}}

/* SOL-009.1 density pass: compact shared rhythm without reducing critical copy. */
body{font-size:16px;line-height:1.58}h1{font-size:clamp(38px,4.8vw,70px);margin:16px 0 20px}h2{font-size:30px;margin:18px 0 12px}h3{font-size:21px;margin:18px 0 9px}.intro{font-size:18px;line-height:1.58}.button{padding:11px 18px;margin-top:10px}.hero{gap:36px;padding:52px 6%;min-height:400px}.hero-note{padding:26px}.hero-note strong{font-size:48px;margin:14px 0}.explore,.content{padding:38px 6% 52px}.section-heading{margin-bottom:22px}.grid{gap:14px}.card{padding:20px 22px 31px}.card p{margin-bottom:9px}.arrow{bottom:10px;right:18px}.page-head{padding:28px 6% 32px}.page-head h1{font-size:clamp(36px,4.4vw,56px)}.page-head .eyebrow{margin-top:22px}.article section{margin-bottom:28px}footer{padding:30px 6%}
@media(max-width:520px){body{font-size:16px}.hero{padding:32px 6%;min-height:320px}.explore,.content{padding-top:24px;padding-bottom:38px}h1{font-size:clamp(34px,10vw,48px);line-height:1.08}.intro{font-size:16px}.card{padding:18px 18px 27px}.button{min-height:44px}.page-head{padding-block:24px}.page-head h1{font-size:clamp(34px,9.5vw,46px)}}

/* Homepage uses its own editorial hero; keep it strong without dominating the page. */
.home-hero{min-height:470px;padding-block:52px 60px}.hero-copy h1{font-size:clamp(46px,6vw,86px);letter-spacing:-3px;margin:20px 0}.hero-subtitle{font-size:clamp(18px,1.7vw,23px);margin-bottom:14px}.hero-description{font-size:16px;line-height:1.58}.home-section{padding-block:52px}.water-card{min-height:230px;padding:23px 21px 19px}.water-card h3{font-size:22px;margin:18px 0 8px}.water-card p{font-size:15px;margin-bottom:16px}.species-link{padding:20px}.species-link h3{font-size:23px;margin:11px 0}.guide-card{padding:20px 0;gap:18px}.guide-card h3{font-size:19px}.guide-card p{font-size:15px}.social-section{gap:34px}.social-status{padding:22px}
@media(max-width:700px){.home-hero{min-height:430px;padding-block:38px 46px}.hero-copy h1{font-size:clamp(40px,11vw,56px);letter-spacing:-2px;margin:16px 0}.hero-subtitle{font-size:18px}.hero-description{font-size:16px}.home-section{padding-block:36px}.water-card{min-height:190px;padding:18px}.water-card h3{font-size:21px;margin:13px 0 7px}.species-link{padding:17px}.species-link h3{font-size:21px}.guide-card{padding:16px 0}.social-status{padding:18px}}

/* BJF site-wide brand system — approved Caribbean Fishing with BigJoe identity. */
.brand{display:inline-flex;align-items:center;min-width:0;line-height:1;text-decoration:none}.brand-logo{display:block;width:clamp(220px,28vw,360px);max-width:62vw;height:auto}.header-links{margin:0 0 0 22px;display:inline-flex;align-items:center;gap:7px;font-size:13px;font-weight:700;white-space:nowrap}.header-links a{text-decoration:none}.header-links a:hover{text-decoration:underline;text-underline-offset:4px}.footer-brand{display:inline-block;max-width:min(380px,88vw);line-height:0}.footer-brand-logo{display:block;width:100%;height:auto}.brand-mark{display:none!important}
@media(max-width:920px){.header-links{display:none}.brand-logo{width:clamp(210px,42vw,320px);max-width:68vw}}
@media(max-width:520px){.brand-logo{width:clamp(190px,58vw,275px);max-width:68vw}.footer-brand{max-width:285px}}
