html{scroll-behavior:smooth}
body.fl-fish-on-page{background:#06131c;color:#c6d2da}
.flfo-page{--navy:#06131c;--panel:#081d29;--panel2:#0a2230;--line:#183443;--muted:#86a0b0;--accent:var(--flfo-accent,#99C0DF);--cream:var(--flfo-cream,#eee7d5);font-family:Barlow,Arial,sans-serif;background:var(--navy);color:#c4d2db;overflow:hidden}
.flfo-page *{box-sizing:border-box}
.flfo-shell{width:min(1480px,calc(100% - 64px));margin:0 auto}
.flfo-kicker{display:block;color:var(--accent);font:700 12px/1.2 "Barlow Condensed",sans-serif;letter-spacing:.2em;text-transform:uppercase}
.flfo-hero{position:relative;padding:110px 0 76px;border-bottom:1px solid var(--line);background:radial-gradient(circle at 76% 26%,rgba(153,192,223,.07),transparent 24%),linear-gradient(180deg,#071824 0%,#06131c 100%)}
.flfo-hero:after{content:"FISH ON";position:absolute;right:-.02em;bottom:-.15em;color:rgba(153,192,223,.025);font:800 italic clamp(140px,18vw,350px)/.75 "Barlow Condensed";letter-spacing:-.06em;pointer-events:none}
.flfo-hero-grid{display:grid;grid-template-columns:minmax(0,.92fr) minmax(560px,1.08fr);gap:72px;align-items:center;position:relative;z-index:2}
.flfo-hero-copy h1,.flfo-context h2,.flfo-stream-head h2{margin:14px 0 18px;color:var(--cream);font-family:"Barlow Condensed",sans-serif;font-style:italic;font-weight:700;letter-spacing:.015em;text-transform:uppercase}
.flfo-hero-copy h1{font-size:clamp(72px,8vw,138px);line-height:.84}
.flfo-hero-copy>p{max-width:690px;margin:0;color:#aebfca;font-size:20px;line-height:1.75}
.flfo-hero-meta{display:grid;grid-template-columns:repeat(3,1fr);max-width:660px;margin:36px 0 30px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.flfo-hero-meta div{padding:18px 18px 16px 0}
.flfo-hero-meta div+div{padding-left:18px;border-left:1px solid var(--line)}
.flfo-hero-meta b{display:block;color:var(--cream);font:700 30px/1 "Barlow Condensed";letter-spacing:.03em}
.flfo-hero-meta span{display:block;margin-top:7px;color:#678496;font:700 10px/1.2 "Barlow Condensed";letter-spacing:.14em}

/* Theme-safe in-page hero control. Powder blue stays an accent. */
.flfo-page button.flfo-jump{appearance:none!important;-webkit-appearance:none!important;display:inline-flex!important;align-items:center!important;gap:16px!important;width:auto!important;min-width:0!important;margin:0!important;padding:14px 0!important;border:0!important;border-bottom:1px solid #315064!important;border-radius:0!important;background:transparent!important;background-image:none!important;box-shadow:none!important;color:#b8d4e5!important;text-decoration:none!important;font:700 13px/1 "Barlow Condensed",sans-serif!important;letter-spacing:.14em!important;text-transform:uppercase!important;cursor:pointer!important;transition:color .18s ease,border-color .18s ease!important}
.flfo-page button.flfo-jump::before,.flfo-page button.flfo-jump::after{content:none!important;display:none!important}
.flfo-page button.flfo-jump:hover,.flfo-page button.flfo-jump:focus-visible{background:transparent!important;color:var(--cream)!important;border-bottom-color:var(--accent)!important;outline:none!important;transform:none!important}
.flfo-page button.flfo-jump>span{position:relative;display:block;width:12px;height:17px;flex:0 0 12px}
.flfo-page button.flfo-jump>span:before{content:"";position:absolute;left:5px;top:0;width:1px;height:12px;background:#7fa8c2}
.flfo-page button.flfo-jump>span:after{content:"";position:absolute;left:2px;bottom:1px;width:6px;height:6px;border-right:1px solid #7fa8c2;border-bottom:1px solid #7fa8c2;transform:rotate(45deg)}
.flfo-page button.flfo-jump:hover>span:before,.flfo-page button.flfo-jump:hover>span:after,.flfo-page button.flfo-jump:focus-visible>span:before,.flfo-page button.flfo-jump:focus-visible>span:after{border-color:var(--accent);background-color:var(--accent)}

.flfo-hero-visual{position:relative;min-height:640px}
.flfo-feature{position:absolute;margin:0;background:#081a25;border:1px solid #1e3a4a;box-shadow:0 24px 80px rgba(0,0,0,.34)}
.flfo-feature img{display:block;width:100%;height:100%;object-fit:cover}
.flfo-feature figcaption{position:absolute;left:0;right:0;bottom:0;padding:55px 24px 20px;background:linear-gradient(transparent,rgba(3,13,20,.95))}
.flfo-feature figcaption small{display:block;color:var(--accent);font:700 10px/1 "Barlow Condensed";letter-spacing:.16em}
.flfo-feature figcaption strong{display:block;margin-top:6px;color:var(--cream);font:700 20px/1.05 "Barlow Condensed";text-transform:uppercase}
.flfo-feature-main{z-index:2;left:4%;top:0;width:63%;height:590px;transform:rotate(-1.2deg)}
.flfo-feature-side{z-index:3;right:0;bottom:15px;width:39%;height:390px;transform:rotate(2.4deg)}
.flfo-feature:before{content:"";position:absolute;z-index:4;left:-1px;top:-1px;width:74px;height:4px;background:var(--accent)}
.flfo-context{padding:68px 0;border-bottom:1px solid var(--line);background:#071720}
.flfo-context-grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:100px;align-items:end}
.flfo-context h2{font-size:clamp(40px,4vw,66px);line-height:.95;max-width:720px}
.flfo-context p{margin:0 0 7px;font-size:17px;line-height:1.8;color:#9eb2be}
.flfo-stream-section{padding:90px 0 80px;scroll-margin-top:132px}
.flfo-stream-head{display:grid;grid-template-columns:1fr 430px;gap:50px;align-items:end;margin-bottom:30px}
.flfo-stream-head h2{font-size:clamp(42px,5vw,76px);line-height:.92;max-width:920px}
.flfo-stream-head p{margin:0 0 14px;color:#8da6b5;font-size:16px;line-height:1.7}
.flfo-filter-wrap{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 28px;padding:13px 0 18px;border-top:1px solid #142e3b;border-bottom:1px solid #142e3b}

/* Public filters: hard reset against global button/theme slabs. */
.flfo-page button.flfo-filter{appearance:none!important;-webkit-appearance:none!important;position:relative!important;min-height:40px!important;margin:0!important;padding:10px 14px!important;border:1px solid #1f3d4e!important;border-radius:0!important;background:#071925!important;background-color:#071925!important;background-image:none!important;box-shadow:none!important;color:#8ea7b6!important;cursor:pointer!important;font:700 12px/1 "Barlow Condensed",sans-serif!important;letter-spacing:.09em!important;text-transform:uppercase!important;transition:border-color .16s ease,color .16s ease,background-color .16s ease!important;transform:none!important}
.flfo-page button.flfo-filter::before,.flfo-page button.flfo-filter::after{content:none!important;display:none!important}
.flfo-page button.flfo-filter:hover,.flfo-page button.flfo-filter:focus-visible{background:#091e2a!important;background-color:#091e2a!important;border-color:#45667a!important;color:var(--cream)!important;box-shadow:inset 0 -2px 0 rgba(153,192,223,.34)!important;outline:none!important;transform:none!important}
.flfo-page button.flfo-filter.is-active{background:#0a1e2a!important;background-color:#0a1e2a!important;border-color:#355669!important;color:var(--cream)!important;box-shadow:inset 3px 0 0 var(--accent)!important}

.flfo-stream{column-count:4;column-gap:12px}
.flfo-catch{display:block;break-inside:avoid;margin:0 0 12px;opacity:1;transform:translateY(0);transition:opacity .2s ease,transform .2s ease}
.flfo-catch[hidden]{display:none!important}

/* Catch cards: dark editorial surfaces only. Never full powder-blue. */
.flfo-page button.flfo-catch-open{appearance:none!important;-webkit-appearance:none!important;display:block!important;width:100%!important;min-width:0!important;margin:0!important;padding:0!important;border:1px solid #183847!important;border-radius:0!important;background:#071a25!important;background-color:#071a25!important;background-image:none!important;box-shadow:none!important;color:inherit!important;text-align:left!important;cursor:pointer!important;overflow:hidden!important;position:relative!important;transition:border-color .2s ease,background-color .2s ease!important;transform:none!important}
.flfo-page button.flfo-catch-open::before,.flfo-page button.flfo-catch-open::after{content:none!important;display:none!important}
.flfo-page button.flfo-catch-open:hover,.flfo-page button.flfo-catch-open:focus-visible{background:#081d29!important;background-color:#081d29!important;border-color:#45687d!important;box-shadow:inset 0 2px 0 rgba(153,192,223,.18)!important;outline:none!important;transform:none!important}
.flfo-img-wrap{display:block;overflow:hidden;background:#071822}
.flfo-img-wrap img{display:block;width:100%;height:auto;transform:scale(1);transition:transform .35s ease,filter .35s ease}
.flfo-catch-open:hover img{transform:scale(1.012);filter:brightness(.88)}
.flfo-card-copy{display:block;padding:17px 18px 18px;border-top:1px solid #173542;background:#071a25!important;color:#c4d2db!important}
.flfo-catch-open:hover .flfo-card-copy,.flfo-catch-open:focus-visible .flfo-card-copy{background:#081d29!important}
.flfo-card-copy small{display:block;color:#6e8c9e!important;font:700 9px/1.2 "Barlow Condensed",sans-serif;letter-spacing:.12em}
.flfo-card-copy strong{display:block;margin:8px 0 13px;color:var(--cream)!important;font:700 19px/1.03 "Barlow Condensed",sans-serif;text-transform:uppercase}
.flfo-card-copy i{display:block;color:#87a9be!important;font:700 10px/1 "Barlow Condensed",sans-serif;font-style:normal;letter-spacing:.12em}
.flfo-catch-open:hover .flfo-card-copy i,.flfo-catch-open:focus-visible .flfo-card-copy i{color:var(--accent)!important}
.flfo-endcap{display:flex;justify-content:space-between;align-items:center;margin-top:34px;padding:20px 0;border-top:1px solid var(--line);color:#7190a1;font:700 11px/1 "Barlow Condensed";letter-spacing:.14em}
.flfo-endcap a{color:#aec9d9;text-decoration:none}.flfo-endcap a:hover{color:var(--cream)}

/* Viewer */
.flfo-viewer{position:fixed;inset:0;z-index:999999;display:none;align-items:center;justify-content:center;padding:24px}
.flfo-viewer.is-open{display:flex}
.flfo-viewer-backdrop{position:absolute;inset:0;background:rgba(2,9,14,.92);backdrop-filter:blur(7px)}
.flfo-viewer-panel{position:relative;z-index:2;width:min(1420px,96vw);height:min(900px,92vh);min-width:0;min-height:0;overflow:hidden;background:#06151f;border:1px solid #244252;box-shadow:0 32px 110px rgba(0,0,0,.62);display:block}
.flfo-viewer-panel figure{width:100%;height:100%;min-width:0;min-height:0;margin:0;display:grid;grid-template-columns:minmax(0,72%) minmax(290px,28%);overflow:hidden;background:#071a25}
.flfo-viewer.is-portrait .flfo-viewer-panel figure{grid-template-columns:minmax(0,61%) minmax(330px,39%)}
.flfo-viewer.is-square .flfo-viewer-panel figure{grid-template-columns:minmax(0,66%) minmax(320px,34%)}
.flfo-viewer.is-landscape .flfo-viewer-panel figure{grid-template-columns:minmax(0,76%) minmax(280px,24%)}
.flfo-viewer-panel figure>img{display:block!important;width:100%!important;height:100%!important;min-width:0!important;min-height:0!important;max-width:100%!important;max-height:100%!important;object-fit:cover!important;object-position:center center!important;background:transparent!important;overflow:hidden!important}
.flfo-viewer-panel figcaption{min-width:0;min-height:0;padding:96px 34px 32px;background:#071a25;border-left:1px solid #173743;overflow:auto}
.flfo-viewer-panel figcaption small{color:var(--accent);font:700 10px/1.4 "Barlow Condensed";letter-spacing:.13em}
.flfo-viewer-panel h3{margin:10px 0 12px;color:var(--cream);font:700 italic 28px/.98 "Barlow Condensed";text-transform:uppercase}
.flfo-viewer-panel p{margin:0;color:#93a9b6;line-height:1.6}

/* Theme-safe square close control with real hover feedback. */
.flfo-page button.flfo-viewer-close{appearance:none!important;-webkit-appearance:none!important;position:absolute!important;z-index:7!important;right:18px!important;top:18px!important;width:46px!important;height:46px!important;min-width:46px!important;min-height:46px!important;margin:0!important;padding:0!important;border:1px solid #294757!important;border-radius:0!important;background:#071620!important;background-color:#071620!important;background-image:none!important;box-shadow:0 8px 22px rgba(0,0,0,.26)!important;cursor:pointer!important;transition:background-color .18s ease,border-color .18s ease,transform .18s ease!important}
.flfo-page button.flfo-viewer-close span{display:none!important}
.flfo-page button.flfo-viewer-close:before,.flfo-page button.flfo-viewer-close:after{content:""!important;display:block!important;position:absolute!important;left:13px!important;right:13px!important;top:21px!important;height:2px!important;background:#9bb1bd!important;transition:background-color .18s ease!important}
.flfo-page button.flfo-viewer-close:before{transform:rotate(45deg)!important}.flfo-page button.flfo-viewer-close:after{transform:rotate(-45deg)!important}
.flfo-page button.flfo-viewer-close:hover,.flfo-page button.flfo-viewer-close:focus-visible{background:#0b2431!important;background-color:#0b2431!important;border-color:var(--accent)!important;outline:none!important;transform:none!important}
.flfo-page button.flfo-viewer-close:hover:before,.flfo-page button.flfo-viewer-close:hover:after,.flfo-page button.flfo-viewer-close:focus-visible:before,.flfo-page button.flfo-viewer-close:focus-visible:after{background:var(--accent)!important}

/* CSS-drawn nav chevrons: no broken font glyphs. */
.flfo-page button.flfo-viewer-nav{appearance:none!important;-webkit-appearance:none!important;position:absolute!important;z-index:6!important;top:50%!important;width:46px!important;height:64px!important;min-width:46px!important;margin:0!important;padding:0!important;border:1px solid #294757!important;border-radius:0!important;background:rgba(5,20,29,.88)!important;background-image:none!important;box-shadow:none!important;color:transparent!important;cursor:pointer!important;transform:translateY(-50%)!important;transition:background-color .18s ease,border-color .18s ease!important}
.flfo-page button.flfo-viewer-nav.is-prev{left:14px!important}.flfo-page button.flfo-viewer-nav.is-next{right:calc(28% + 14px)!important}
.flfo-viewer.is-portrait button.flfo-viewer-nav.is-next{right:calc(39% + 14px)!important}.flfo-viewer.is-square button.flfo-viewer-nav.is-next{right:calc(34% + 14px)!important}.flfo-viewer.is-landscape button.flfo-viewer-nav.is-next{right:calc(24% + 14px)!important}
.flfo-page button.flfo-viewer-nav span{display:none!important}
.flfo-page button.flfo-viewer-nav:before{content:""!important;display:block!important;position:absolute!important;top:50%!important;width:11px!important;height:11px!important;border-top:2px solid #93adbc!important;border-right:2px solid #93adbc!important;transition:border-color .18s ease!important}
.flfo-page button.flfo-viewer-nav.is-prev:before{left:19px!important;transform:translateY(-50%) rotate(-135deg)!important}.flfo-page button.flfo-viewer-nav.is-next:before{right:19px!important;transform:translateY(-50%) rotate(45deg)!important}
.flfo-page button.flfo-viewer-nav:after{content:none!important;display:none!important}
.flfo-page button.flfo-viewer-nav:hover,.flfo-page button.flfo-viewer-nav:focus-visible{background:#0a2432!important;border-color:#537487!important;outline:none!important}
.flfo-page button.flfo-viewer-nav:hover:before,.flfo-page button.flfo-viewer-nav:focus-visible:before{border-color:var(--accent)!important}
body.flfo-modal-open{overflow:hidden}

@media (max-width:1180px){
 .flfo-hero-grid{grid-template-columns:1fr 1fr;gap:40px}.flfo-hero-visual{min-height:560px}.flfo-feature-main{height:520px;width:70%}.flfo-feature-side{width:44%;height:330px}
 .flfo-stream{column-count:3}
 .flfo-viewer-panel figure,.flfo-viewer.is-landscape .flfo-viewer-panel figure{grid-template-columns:minmax(0,70%) minmax(280px,30%)}
 .flfo-viewer.is-square .flfo-viewer-panel figure{grid-template-columns:minmax(0,64%) minmax(300px,36%)}
 .flfo-viewer.is-portrait .flfo-viewer-panel figure{grid-template-columns:minmax(0,58%) minmax(320px,42%)}
 .flfo-page button.flfo-viewer-nav.is-next{right:calc(30% + 12px)!important}.flfo-viewer.is-square button.flfo-viewer-nav.is-next{right:calc(36% + 12px)!important}.flfo-viewer.is-portrait button.flfo-viewer-nav.is-next{right:calc(42% + 12px)!important}
}
@media (max-width:860px){
 .flfo-shell{width:min(100% - 32px,1480px)}
 .flfo-hero{padding:72px 0 52px}.flfo-hero-grid,.flfo-context-grid,.flfo-stream-head{grid-template-columns:1fr;gap:28px}
 .flfo-hero-copy h1{font-size:84px}.flfo-hero-copy>p{font-size:17px}.flfo-hero-meta{max-width:none}
 .flfo-hero-visual{min-height:500px}.flfo-feature-main{left:0;width:72%;height:470px}.flfo-feature-side{width:45%;height:310px}
 .flfo-context{padding:48px 0}.flfo-stream-section{padding:60px 0;scroll-margin-top:110px}
 .flfo-stream{column-count:2}
 .flfo-viewer{padding:10px}.flfo-viewer-panel{width:100%;height:94vh;max-height:94dvh}
 .flfo-viewer-panel figure,.flfo-viewer.is-landscape .flfo-viewer-panel figure,.flfo-viewer.is-square .flfo-viewer-panel figure,.flfo-viewer.is-portrait .flfo-viewer-panel figure{grid-template-columns:1fr;grid-template-rows:minmax(0,1fr) auto}
 .flfo-viewer-panel figure>img{object-fit:cover!important}
 .flfo-viewer-panel figcaption{border-left:0;border-top:1px solid #173743;padding:18px 58px 22px;max-height:29vh}
 .flfo-page button.flfo-viewer-nav.is-prev{left:10px!important}.flfo-page button.flfo-viewer-nav.is-next,.flfo-viewer.is-portrait button.flfo-viewer-nav.is-next,.flfo-viewer.is-square button.flfo-viewer-nav.is-next,.flfo-viewer.is-landscape button.flfo-viewer-nav.is-next{right:10px!important}
}
@media (max-width:560px){
 .flfo-shell{width:calc(100% - 24px)}
 .flfo-hero{padding:56px 0 36px}.flfo-hero-copy h1{font-size:68px}
 .flfo-hero-meta{grid-template-columns:1fr 1fr}.flfo-hero-meta div:nth-child(3){grid-column:1/-1;border-left:0;border-top:1px solid var(--line);padding-left:0}
 .flfo-hero-visual{min-height:430px}.flfo-feature-main{width:78%;height:400px}.flfo-feature-side{width:48%;height:255px;bottom:0}
 .flfo-context h2,.flfo-stream-head h2{font-size:46px}
 .flfo-filter-wrap{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;padding-bottom:14px}.flfo-filter-wrap::-webkit-scrollbar{display:none}.flfo-page button.flfo-filter{flex:0 0 auto!important}
 .flfo-stream{column-count:1}.flfo-card-copy strong{font-size:22px}
 .flfo-endcap{align-items:flex-start;gap:18px;flex-direction:column}
 .flfo-viewer{padding:6px}.flfo-viewer-panel{height:96vh;max-height:96dvh}.flfo-viewer-panel figcaption{padding:16px 18px 18px;max-height:31vh}.flfo-viewer-panel h3{font-size:24px}.flfo-page button.flfo-viewer-close{right:8px!important;top:8px!important;width:42px!important;height:42px!important;min-width:42px!important;min-height:42px!important}.flfo-page button.flfo-viewer-close:before,.flfo-page button.flfo-viewer-close:after{left:12px!important;right:12px!important;top:19px!important}
 .flfo-page button.flfo-viewer-nav{width:42px!important;height:58px!important;min-width:42px!important}.flfo-page button.flfo-viewer-nav.is-prev:before{left:17px!important}.flfo-page button.flfo-viewer-nav.is-next:before{right:17px!important}
}


/* v1.0.2 — viewer controls must NEVER move under the pointer.
   Some site/global button layers use modern translate/scale properties in addition
   to transform. That created a hover-out/hover-in loop where the nav button jumped
   away from the cursor and appeared to bounce. Keep all geometry locked and limit
   hover feedback to colour/border only. */
html body .flfo-page .flfo-viewer button.flfo-viewer-nav,
html body .flfo-page .flfo-viewer button.flfo-viewer-close{
  position:absolute!important;
  margin:0!important;
  translate:none!important;
  scale:none!important;
  rotate:none!important;
  animation:none!important;
  filter:none!important;
  vertical-align:middle!important;
  line-height:0!important;
  text-indent:0!important;
  will-change:auto!important;
}
html body .flfo-page .flfo-viewer button.flfo-viewer-nav,
html body .flfo-page .flfo-viewer button.flfo-viewer-nav:hover,
html body .flfo-page .flfo-viewer button.flfo-viewer-nav:focus,
html body .flfo-page .flfo-viewer button.flfo-viewer-nav:focus-visible,
html body .flfo-page .flfo-viewer button.flfo-viewer-nav:active{
  top:50%!important;
  transform:translateY(-50%)!important;
  translate:none!important;
  scale:none!important;
  rotate:none!important;
}
html body .flfo-page .flfo-viewer button.flfo-viewer-close,
html body .flfo-page .flfo-viewer button.flfo-viewer-close:hover,
html body .flfo-page .flfo-viewer button.flfo-viewer-close:focus,
html body .flfo-page .flfo-viewer button.flfo-viewer-close:focus-visible,
html body .flfo-page .flfo-viewer button.flfo-viewer-close:active{
  transform:none!important;
  translate:none!important;
  scale:none!important;
  rotate:none!important;
}
html body .flfo-page .flfo-viewer button.flfo-viewer-nav:hover,
html body .flfo-page .flfo-viewer button.flfo-viewer-nav:focus-visible{
  background:#0a2432!important;
  border-color:var(--accent)!important;
  box-shadow:inset 0 0 0 1px rgba(153,192,223,.08)!important;
}
html body .flfo-page .flfo-viewer button.flfo-viewer-nav:active{
  background:#0c2938!important;
  border-color:var(--accent)!important;
  box-shadow:inset 0 0 0 1px rgba(153,192,223,.12)!important;
}
html body .flfo-page .flfo-viewer button.flfo-viewer-close:hover,
html body .flfo-page .flfo-viewer button.flfo-viewer-close:focus-visible{
  background:#0b2431!important;
  border-color:var(--accent)!important;
  box-shadow:0 8px 22px rgba(0,0,0,.26),inset 0 0 0 1px rgba(153,192,223,.08)!important;
}
html body .flfo-page .flfo-viewer button.flfo-viewer-close:active{
  background:#0d2a38!important;
  border-color:var(--accent)!important;
}
