.member-sidebar { position:relative; z-index:60; min-height:100svh; padding:1.25rem .9rem 1rem; display:flex; flex-direction:column; gap:1.2rem; border-right:1px solid var(--line); background:linear-gradient(180deg,var(--navy-900),var(--navy-950)); }
.member-brand { min-height:3rem; display:flex; align-items:center; gap:.75rem; padding:0 .55rem; font-weight:750; letter-spacing:.02em; white-space:nowrap; }
.member-brand-mark { width:2.25rem; height:2.25rem; display:grid; place-items:center; flex:none; border:1px solid rgba(202,168,91,.55); border-radius:50%; color:var(--gold); font-family:Georgia,serif; font-size:.78rem; }
.sidebar-toggle { position:absolute; top:1.65rem; right:-.85rem; width:1.7rem; height:1.7rem; border:1px solid var(--line); border-radius:50%; background:var(--navy-800); color:var(--cream); }
.member-sidebar nav { display:grid; gap:.18rem; }
.member-primary-nav { min-height:0; overflow-y:auto; scrollbar-width:thin; }
.member-nav-secondary { margin-top:auto; padding-top:1rem; border-top:1px solid var(--line); }
.member-nav-item { width:100%; min-height:2.65rem; display:flex; align-items:center; gap:.8rem; padding:.55rem .7rem; border:1px solid transparent; border-radius:.55rem; background:transparent; color:rgba(245,238,223,.78); text-align:left; white-space:nowrap; }
.member-nav-item:hover { background:rgba(255,255,255,.055); color:var(--cream); }
.member-nav-item.is-selected:not(.member-start-here):not(.member-coming-toggle) { border-color:transparent; background:rgba(255,255,255,.075); color:#fff; font-weight:700; }
.member-nav-item.is-selected:not(.member-start-here):not(.member-coming-toggle)::after { content:"›"; margin-left:auto; color:var(--gold); font-size:1.35rem; font-weight:500; line-height:1; }
.member-sidebar .member-start-here { margin-bottom:.3rem; border-color:rgba(202,168,91,.72); background:linear-gradient(135deg,rgba(202,168,91,.28),rgba(202,168,91,.12)); color:#fff; font-weight:800; box-shadow:inset 0 0 0 1px rgba(245,238,223,.08),0 5px 14px rgba(0,0,0,.12); }
.member-sidebar .member-start-here .member-nav-icon { color:var(--gold); font-size:1.1rem; }
.member-sidebar .member-start-here:hover { border-color:var(--gold); background:linear-gradient(135deg,rgba(202,168,91,.4),rgba(202,168,91,.18)); color:#fff; }
.member-sidebar .member-start-here:focus-visible { outline:3px solid #f5cc70; outline-offset:2px; }
.member-nav-icon { width:1.5rem; flex:none; text-align:center; font-size:1rem; }
.member-nav-group { display:grid; gap:.15rem; }.member-nav-caret { margin-left:auto; color:var(--gold); }.member-nav-parent.is-open { background:rgba(202,168,91,.08); color:var(--cream); }.member-discover-menu,.member-species-menu { display:grid; gap:.12rem; margin-left:1.5rem; padding-left:.65rem; border-left:1px solid rgba(202,168,91,.28); }.member-species-menu { margin-left:.55rem; }.member-subnav-item,.member-species-link { width:100%; min-height:2rem; display:flex; align-items:center; justify-content:space-between; gap:.5rem; padding:.35rem .5rem; border:1px solid transparent; border-radius:.4rem; background:transparent; color:rgba(245,238,223,.7); font-size:.72rem; text-align:left; }.member-subnav-item:hover:not(:disabled),.member-species-link:hover:not(:disabled) { background:rgba(255,255,255,.055); color:var(--cream); }.member-subnav-item.is-open { background:rgba(202,168,91,.07); color:var(--gold); }.member-species-link.is-selected { border-color:rgba(202,168,91,.35); border-left:3px solid var(--gold); background:rgba(202,168,91,.12); color:#fff; font-weight:750; }.member-subnav-item:disabled,.member-species-link:disabled { cursor:default; opacity:.48; }.member-subnav-item small,.member-species-link small { color:rgba(202,168,91,.8); font-size:.57rem; text-transform:uppercase; letter-spacing:.05em; }
.member-discover-menu[hidden],.member-species-menu[hidden] { display:none; }
.member-species-groups { gap:.3rem; margin-left:.35rem; padding-left:.5rem; }
.member-species-group { display:grid; gap:.08rem; }
.member-species-group + .member-species-group { margin-top:.18rem; }
.member-species-category { width:100%; min-height:2.35rem; display:flex; align-items:center; justify-content:space-between; gap:.5rem; padding:.38rem .48rem; border:1px solid transparent; border-radius:.4rem; background:transparent; color:rgba(245,238,223,.78); font-size:.66rem; font-weight:800; letter-spacing:.055em; text-align:left; text-transform:uppercase; }
.member-species-category:hover,.member-species-category.is-open { background:rgba(202,168,91,.075); color:var(--cream); }
.member-species-category.is-open { border-color:rgba(202,168,91,.24); color:var(--gold); }
.member-species-group.has-selected-species > .member-species-category { color:#f4d58c; }
.member-species-category-panel { display:grid; gap:.04rem; padding:.12rem 0 .2rem .45rem; }
.member-species-category-panel[hidden] { display:none; }
.member-species-category-panel .member-species-link { min-height:2.1rem; padding:.28rem .48rem; font-size:.69rem; }
.member-species-empty { margin:.2rem .45rem .35rem; color:rgba(245,238,223,.48); font-size:.64rem; line-height:1.4; }
.member-subnav-item,.member-species-link { min-height:2.75rem; }
.member-account-summary { display:grid; padding:.75rem; border-top:1px solid var(--line); font-size:.78rem; color:rgba(245,238,223,.68); }
.member-account-summary strong { color:var(--cream); font-size:.88rem; }
.sidebar-collapsed { --sidebar:4.75rem; }
.sidebar-collapsed .member-brand-name,.sidebar-collapsed .member-nav-label,.sidebar-collapsed .member-account-summary { display:none; }
.sidebar-collapsed .member-discover-menu { display:none; }
.sidebar-collapsed .member-brand,.sidebar-collapsed .member-nav-item { justify-content:center; padding-inline:.4rem; }
.sidebar-collapsed .member-nav-item.is-selected:not(.member-start-here):not(.member-coming-toggle)::after { display:none; }

.member-subnav-composite{display:grid;grid-template-columns:minmax(0,1fr) 2.5rem}.member-subnav-composite .member-subnav-item{min-width:0}.member-subnav-caret{border:0;background:transparent;color:inherit;cursor:pointer}.member-water-type-menu{display:grid;padding:.2rem 0 .35rem 1rem}.member-water-type-link{min-height:2.35rem;padding:.45rem .7rem;border:0;border-left:1px solid rgba(184,145,61,.38);background:transparent;color:inherit;text-align:left;cursor:pointer}.member-water-type-link:hover,.member-water-type-link.is-selected{background:rgba(196,154,61,.12);color:#a97821}.member-water-type-link:focus-visible,.member-subnav-caret:focus-visible{outline:2px solid #c49a3d;outline-offset:-2px}
/* Lower sidebar utility links and the featured Coming Next row. */
.member-sidebar .member-nav-secondary {
  /* Suppress the existing text separator without changing the navigation markup. */
  font-size:0;
}
.member-sidebar .member-nav-secondary > .member-nav-item,
.member-sidebar .member-nav-secondary > a {
  font-size:1rem;
  line-height:1.4;
  text-decoration:none;
}
.member-sidebar .member-nav-secondary > a:not(.member-nav-item) {
  font-family:inherit;
  font-size:1rem;
  font-weight:400;
  line-height:1.4;
  display:flex;
  align-items:center;
  width:100%;
  min-height:2.65rem;
  padding:.55rem .7rem .55rem 3rem;
  border:1px solid transparent;
  border-radius:.55rem;
  background:transparent;
  color:rgba(245,238,223,.78);
  text-align:left;
}
.member-sidebar .member-nav-secondary > a:hover,
.member-sidebar .member-nav-secondary > a:focus-visible {
  background:rgba(255,255,255,.055);
  color:var(--cream);
}
.member-sidebar :is([data-nav="Coming Next"], .member-coming-toggle) {
  font-size:1rem;
  line-height:1.4;
  border-color:var(--gold);
  background:rgba(202,168,91,.15);
  color:var(--cream);
  animation:sidebar-coming-next-glow 6s ease-in-out infinite;
}
.member-sidebar :is([data-nav="Coming Next"], .member-coming-toggle) .member-nav-icon {
  color:var(--gold);
}
.member-sidebar :is([data-nav="Coming Next"], .member-coming-toggle):hover,
.member-sidebar :is([data-nav="Coming Next"], .member-coming-toggle):focus-visible {
  background:rgba(202,168,91,.23);
  border-color:var(--gold);
  animation-play-state:paused;
}
@keyframes sidebar-coming-next-glow {
  0%,100% { box-shadow:inset 0 0 0 1px rgba(202,168,91,.08),inset 0 0 10px rgba(202,168,91,.03); }
  50% { box-shadow:inset 0 0 0 1px rgba(202,168,91,.25),inset 0 0 18px rgba(202,168,91,.13); }
}
.sidebar-collapsed .member-nav-secondary > a:not(.member-nav-item) {
  justify-content:center;
  padding-inline:0;
  overflow-wrap:anywhere;
  text-align:center;
}
@media(max-width:1100px) {
  .member-nav-item.is-selected:not(.member-start-here):not(.member-coming-toggle)::after { display:none; }
  .member-sidebar .member-nav-secondary > a:not(.member-nav-item) {
    justify-content:center;
    padding-inline:0;
    overflow-wrap:anywhere;
    text-align:center;
  }
}
@media(prefers-reduced-motion:reduce) {
  .member-sidebar :is([data-nav="Coming Next"], .member-coming-toggle) { animation:none; }
}
/* Shared accordion: native disclosure works without JavaScript. */
.member-coming-toggle { cursor:pointer; list-style:none; }
.member-coming-toggle::-webkit-details-marker { display:none; }
.member-coming-nav[open] > summary .member-nav-caret { transform:rotate(90deg); }
.member-coming-menu { display:grid; margin:.25rem 0 .25rem 1.5rem; padding-left:.65rem; border-left:1px solid rgba(202,168,91,.28); }
.member-coming-menu a { display:block; padding:.55rem .5rem; color:var(--cream); font-size:.85rem; line-height:1.4; text-decoration:none; }
.member-coming-menu a:hover { background:rgba(255,255,255,.055); }
.member-coming-menu a[aria-current="page"] { color:var(--gold); background:rgba(202,168,91,.12); font-weight:700; }
.member-sidebar :is(a,button,summary):focus-visible { outline:3px solid #f5cc70; outline-offset:-3px; }
/* Keep the expanded menu reachable even in the existing compact icon rail. */
.sidebar-collapsed .member-coming-menu { margin-left:0; padding-left:0; border:0; }
.sidebar-collapsed .member-coming-menu a { padding:.55rem .1rem; font-size:.7rem; overflow-wrap:anywhere; }
@media(max-width:1100px) {
  .member-coming-menu { margin-left:0; padding-left:0; border:0; }
  .member-coming-menu a { padding:.55rem .1rem; font-size:.7rem; overflow-wrap:anywhere; }
}

:root { color-scheme: dark; font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; --navy-950:#07151b; --navy-900:#0b2029; --navy-800:#12313d; --cream:#f5eedf; --ink:#15272b; --muted:#688087; --panel:#f8f4eb; --gold:#caa85b; --line:rgba(255,255,255,.14); --sidebar:17.5rem; }
* { box-sizing:border-box; }
html,body,#member-root { width:100%; height:100%; }
body { margin:0; min-width:20rem; overflow:hidden; background:var(--navy-950); }
button,input { font:inherit; }
button { cursor:pointer; }
button:focus-visible,input:focus-visible,a:focus-visible { outline:3px solid #f5cc70; outline-offset:3px; }
.sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
.member-skip-link { position:fixed; z-index:100; top:.75rem; left:.75rem; transform:translateY(-180%); padding:.75rem 1rem; border-radius:.5rem; background:var(--cream); color:var(--ink); }
.member-skip-link:focus { transform:none; }
.member-shell { position:relative; z-index:0; isolation:isolate; width:100%; height:100svh; min-height:100svh; max-height:100svh; display:grid; grid-template-columns:var(--sidebar) minmax(0,1fr); overflow:hidden; color:var(--cream); transition:grid-template-columns .2s ease; }
.member-stage { position:relative; z-index:0; isolation:isolate; min-width:0; min-height:0; height:100%; overflow:hidden; display:grid; grid-template-rows:4.4rem minmax(0,1fr); }
.member-topbar { position:relative; z-index:50; min-width:0; display:grid; grid-template-columns:minmax(16rem,1fr) auto minmax(13rem,auto) auto auto; align-items:center; gap:1rem; padding:.7rem 1.25rem; border-bottom:1px solid var(--line); background:rgba(7,21,27,.96); }
.member-site-header { grid-template-columns:auto minmax(12rem,1fr) auto; margin:.5rem .75rem 0; padding:.5rem .75rem; border:1px solid var(--line); border-radius:1rem; background:linear-gradient(135deg,rgba(11,32,41,.98),rgba(7,21,27,.98)); box-shadow:0 8px 24px rgba(0,0,0,.16); }
.member-site-brand { min-height:2.65rem; display:flex; align-items:center; gap:.65rem; color:var(--cream); font-weight:800; text-decoration:none; white-space:nowrap; }
.member-topbar-navigation { display:flex; align-items:center; gap:.85rem; white-space:nowrap; }.member-topbar-navigation > a { color:rgba(245,238,223,.78); font-weight:700; text-decoration:none; }.member-topbar-navigation > a:hover { color:var(--cream); }
.member-account-navigation { display:flex; align-items:center; gap:.85rem; }.member-account-navigation a,.member-account-navigation button { min-height:2.4rem; display:inline-flex; align-items:center; color:rgba(245,238,223,.78); border:0; background:transparent; font:700 .88rem/1 Inter,ui-sans-serif,system-ui,sans-serif; text-decoration:none; white-space:nowrap; }.member-account-navigation a:hover,.member-account-navigation a:focus-visible,.member-account-navigation button:hover,.member-account-navigation button:focus-visible { color:var(--cream); }.member-account-navigation .account-join-link { padding:.55rem .8rem; border:1px solid var(--gold); border-radius:999px; background:var(--gold); color:var(--navy-950); font-weight:800; }.member-account-navigation .account-signout { cursor:pointer; }
.member-search { min-width:0; max-width:38rem; display:flex; align-items:center; gap:.5rem; padding:0 .8rem; border:1px solid rgba(255,255,255,.16); border-radius:.6rem; background:rgba(255,255,255,.06); }
.member-search input { width:100%; height:2.65rem; border:0; outline:0; background:transparent; color:#fff; }
.member-search input::placeholder { color:rgba(245,238,223,.55); }
.weather-summary { display:grid; font-size:.77rem; color:rgba(245,238,223,.66); }
.weather-summary strong { color:#fff; font-size:1rem; }
.alert-status { min-height:2.5rem; display:flex; align-items:center; gap:.55rem; padding:.45rem .7rem; border:1px solid rgba(151,202,173,.25); border-radius:.55rem; color:#cce7d4; font-size:.82rem; }
.utility-icon,.account-trigger { min-height:2.65rem; border:1px solid transparent; background:transparent; color:var(--cream); }
.utility-icon { width:2.65rem; border-color:var(--line); border-radius:50%; }
.account-trigger { display:flex; align-items:center; gap:.55rem; padding:.2rem; }
.account-avatar { width:2.4rem; height:2.4rem; display:grid; place-items:center; border-radius:50%; background:var(--gold); color:var(--navy-950); font-weight:800; }
.map-workspace { position:relative; z-index:0; isolation:isolate; min-width:0; min-height:0; width:100%; height:100%; overflow:hidden; contain:layout paint; container:member-map / inline-size; }
.interactive-map-workspace { position:absolute; z-index:0; inset:0; width:100%; height:100%; overflow:hidden; isolation:isolate; background:#78909a; }
.map-canvas.leaflet-container { position:absolute; z-index:0; inset:0; width:100%; height:100%; max-width:100%; max-height:100%; overflow:hidden; }
.map-loading,.map-failure { position:absolute; z-index:9; inset:50% auto auto 50%; min-width:13rem; padding:1rem 1.2rem; border:1px solid rgba(255,255,255,.28); border-radius:.75rem; background:rgba(7,21,27,.94); color:var(--cream); text-align:center; transform:translate(-50%,-50%); box-shadow:0 12px 30px rgba(7,21,27,.24); }
.map-failure { width:min(24rem,calc(100% - 2rem)); }.map-failure p { color:rgba(245,238,223,.72); }.map-failure .panel-actions { justify-content:center; }.map-failure button { color:var(--cream); border-color:rgba(255,255,255,.28); }
.map-loading[hidden],.map-failure[hidden],.return-to-water[hidden] { display:none; }
.leaflet-top.leaflet-left { top:8.5rem; left:1.25rem; }.leaflet-control-attribution { color:#22383d; }.leaflet-popup-content-wrapper { color:var(--ink); border-radius:.6rem; }.leaflet-popup-content p { margin:.35rem 0 0; max-width:15rem; color:#53686d; }
.leaflet-control-attribution { max-width:min(80vw,42rem); background:rgba(255,255,255,.86) !important; font-size:.62rem; line-height:1.3; }
@media (max-width:700px) { .leaflet-control-attribution { max-width:88vw; font-size:.56rem; } }
.sf-map-style-control { display:flex; overflow:hidden; margin:0 0 8px 10px !important; border:1px solid rgba(196,151,64,.72) !important; border-radius:.55rem !important; background:rgba(7,29,35,.86); box-shadow:0 5px 16px rgba(7,21,27,.2) !important; backdrop-filter:blur(8px); }
.sf-map-style-control .sf-map-style-button { min-width:4.75rem; min-height:2.5rem; padding:.5rem .7rem; border:0; border-right:1px solid rgba(196,151,64,.34); border-radius:0; background:transparent; color:#f7f0df; font:700 .7rem/1.1 Arial,sans-serif; letter-spacing:.04em; cursor:pointer; transition:background-color .16s ease,color .16s ease; }
.sf-map-style-control .sf-map-style-button:last-child { border-right:0; }
.sf-map-style-control .sf-map-style-button:hover { background:rgba(196,151,64,.18); }
.sf-map-style-control .sf-map-style-button.is-active { background:#c49a45; color:#102d33; font-weight:800; }
.sf-map-style-control .sf-map-style-button:focus-visible { position:relative; z-index:1; outline:3px solid #fff; outline-offset:-3px; }
.sf-map-style-control .sf-map-style-button:active { background:#af8434; transform:translateY(1px); }
.interactive-map-workspace .sf-map-style-control { margin-bottom:5.4rem !important; }
@media (prefers-reduced-motion:reduce) { .sf-map-style-control .sf-map-style-button { transition:none; } }
@media (max-width:700px) { .sf-map-style-control { margin-left:6px !important; margin-bottom:6px !important; }.interactive-map-workspace .sf-map-style-control { margin-bottom:4.6rem !important; }.sf-map-style-control .sf-map-style-button { min-width:4.4rem; min-height:2.75rem; padding:.5rem .6rem; } }
.prototype-marker-shell,.prototype-water-marker { display:grid; place-items:center; border:2px solid #fff; color:#fff; box-shadow:0 4px 10px rgba(0,0,0,.28); font-weight:800; }
.prototype-marker-shell span,.prototype-water-marker span { display:grid; place-items:center; width:100%; height:100%; }
.prototype-marker-saved { border-radius:50% 50% 50% 0; background:#315f58; }.prototype-marker-catches { border-radius:.35rem; background:#946b35; }.prototype-marker-community { border-radius:50%; background:#6d5688; }.prototype-marker-clubs { clip-path:polygon(50% 0,95% 25%,95% 75%,50% 100%,5% 75%,5% 25%); background:#36547f; }.prototype-marker-access { border-radius:.15rem; background:#5e7045; }.prototype-marker-official { border-radius:50%; background:#913d39; }.prototype-water-marker { border-radius:50%; border-color:var(--navy-950); background:var(--gold); color:var(--navy-950); font-size:1rem; }.prototype-water-marker.is-selected { border:4px double #fff; box-shadow:0 0 0 4px var(--navy-950),0 6px 15px rgba(0,0,0,.35); }
.map-water-label { position:absolute; z-index:20; top:2rem; left:2rem; max-width:28rem; padding:1rem 1.15rem; border:1px solid rgba(255,255,255,.35); border-radius:.7rem; background:rgba(7,21,27,.74); backdrop-filter:blur(8px); }
.map-water-label span,.card-kicker { color:var(--gold); font-size:.72rem; font-weight:800; letter-spacing:.12em; text-transform:uppercase; }
.map-water-label h1 { margin:.18rem 0; font-family:Georgia,serif; font-size:clamp(1.8rem,3vw,3rem); }
.map-water-label p { margin:0; color:rgba(245,238,223,.7); font-size:.78rem; }
.return-to-water { position:absolute; z-index:20; left:2rem; top:7.5rem; min-height:2.6rem; display:flex; align-items:center; gap:.45rem; padding:.55rem .75rem; border:1px solid rgba(255,255,255,.35); border-radius:.6rem; background:rgba(7,21,27,.9); color:var(--cream); box-shadow:0 6px 18px rgba(7,21,27,.2); }
.marker-saved { border-radius:50% 50% 50% 0; background:#315f58; }.marker-catches { border-radius:.35rem; background:#946b35; transform:translate(-50%,-50%) rotate(45deg); }.marker-catches span { transform:rotate(-45deg); }.marker-community { border-radius:50%; background:#6d5688; }.marker-clubs { clip-path:polygon(50% 0,95% 25%,95% 75%,50% 100%,5% 75%,5% 25%); background:#36547f; }.marker-access { border-radius:.15rem; background:#5e7045; }.marker-official { border-radius:50%; background:#913d39; font-weight:900; }
.layer-control { position:absolute; z-index:20; left:50%; bottom:1.5rem; width:max-content; max-width:calc(100% - 4rem); height:3.65rem; display:flex; align-items:stretch; border:1px solid rgba(255,255,255,.27); border-radius:.8rem; background:rgba(7,21,27,.9); backdrop-filter:blur(10px); transform:translateX(-50%); box-shadow:0 8px 24px rgba(7,21,27,.2); }
.layer-collapse { min-width:5.2rem; display:flex; align-items:center; justify-content:center; gap:.35rem; padding:.45rem .65rem; border:0; border-right:1px solid var(--line); border-radius:.8rem 0 0 .8rem; background:rgba(255,255,255,.045); color:var(--cream); }
.layer-drag-handle { display:none; width:1.75rem; flex:none; place-items:center; border-right:1px solid rgba(255,255,255,.12); color:rgba(245,238,223,.62); cursor:grab; touch-action:none; user-select:none; }
.layer-drag-handle:active { cursor:grabbing; }
.layer-collapse strong { font-size:.72rem; }.active-count { display:none; padding:.12rem .35rem; border:1px solid rgba(202,168,91,.5); border-radius:999px; color:var(--gold); font-size:.62rem; white-space:nowrap; }.collapse-glyph { color:var(--gold); }
.layer-strip { display:flex; flex:none; align-items:stretch; overflow:visible; }
.layer-control label { position:relative; min-width:max-content; height:3.65rem; display:flex; align-items:center; gap:.42rem; padding:.45rem .68rem; border-right:1px solid rgba(255,255,255,.1); color:rgba(245,238,223,.76); cursor:pointer; white-space:nowrap; }
.layer-control label:hover { background:rgba(255,255,255,.06); color:var(--cream); }
.layer-control label:has(input:checked) { box-shadow:inset 0 -3px var(--gold); background:rgba(202,168,91,.09); color:var(--cream); }
.layer-control label:has(input:not(:checked)) { opacity:.58; text-decoration:line-through; text-decoration-thickness:1px; }
.layer-control input { position:absolute; width:1px; height:1px; overflow:hidden; opacity:0; }
.layer-control label:has(input:focus-visible) { outline:3px solid #f5cc70; outline-offset:-4px; }
.layer-label { font-size:.67rem; font-weight:720; line-height:1; white-space:nowrap; }.layer-symbol { width:1.35rem; height:1.35rem; flex:none; display:grid; place-items:center; border:1px solid currentColor; font-size:.66rem; }
.layer-control.is-collapsed { left:50%; right:auto; width:auto; height:3rem; transform:translateX(-50%); }
.layer-control.is-collapsed .layer-strip { display:none; }.layer-control.is-collapsed .layer-drag-handle { display:grid; }.layer-control.is-collapsed .layer-collapse { min-width:8.4rem; height:3rem; border-right:0; border-radius:0 .7rem .7rem 0; }.layer-control.is-collapsed .active-count { display:inline-flex; }
.layer-control.is-force-expanded { width:max-content; height:3.65rem; }.layer-control.is-force-expanded .layer-drag-handle { display:none; }.layer-control.is-force-expanded .layer-strip { display:flex; }.layer-control.is-force-expanded .layer-collapse { min-width:5.2rem; height:3.65rem; border-right:1px solid var(--line); border-radius:.8rem 0 0 .8rem; }.layer-control.is-force-expanded .active-count { display:none; }
.map-workspace:has(.context-panel:not([hidden])) .layer-control:not(.is-collapsed) { left:calc((100% - clamp(23.75rem,31vw,27.5rem))/2); right:auto; transform:translateX(-50%); }
.map-workspace:has(.context-panel:not([hidden])) .leaflet-bottom.leaflet-right { right:clamp(23.75rem,31vw,27.5rem); }
@container member-map (max-width:70rem) { .layer-control { left:50%; right:auto; width:auto; height:3rem; transform:translateX(-50%); }.layer-control .layer-strip { display:none; }.layer-control .layer-collapse { min-width:8.4rem; height:3rem; border-right:0; border-radius:.7rem; }.layer-control .active-count { display:inline-flex; } }
@container member-map (min-width:70.001rem) and (max-width:90rem) { .map-workspace:has(.context-panel:not([hidden])) .layer-control:not(.is-collapsed) { width:auto; height:3rem; }.map-workspace:has(.context-panel:not([hidden])) .layer-control:not(.is-collapsed) .layer-strip { display:none; }.map-workspace:has(.context-panel:not([hidden])) .layer-control:not(.is-collapsed) .layer-collapse { min-width:8.4rem; height:3rem; border-right:0; border-radius:.7rem; }.map-workspace:has(.context-panel:not([hidden])) .layer-control:not(.is-collapsed) .active-count { display:inline-flex; } }
.map-workspace:has(.context-panel:not([hidden])) .layer-control.is-force-expanded { width:max-content; height:3.65rem; }.map-workspace:has(.context-panel:not([hidden])) .layer-control.is-force-expanded .layer-strip { display:flex; }.map-workspace:has(.context-panel:not([hidden])) .layer-control.is-force-expanded .layer-collapse { min-width:5.2rem; height:3.65rem; border-right:1px solid var(--line); border-radius:.8rem 0 0 .8rem; }.map-workspace:has(.context-panel:not([hidden])) .layer-control.is-force-expanded .active-count { display:none; }
.home-water-card { position:absolute; z-index:20; top:2rem; right:2rem; width:min(22rem,calc(100% - 4rem)); padding:1.15rem; border:1px solid rgba(255,255,255,.38); border-radius:.85rem; background:rgba(248,244,235,.96); color:var(--ink); box-shadow:0 12px 30px rgba(7,21,27,.18); }
.home-water-card h2 { margin:.2rem 0; font-family:Georgia,serif; font-size:1.75rem; }.home-water-card p { color:#53686d; line-height:1.55; }.outlook-status { display:block; color:#3c624e; }
.panel-actions { display:flex; flex-wrap:wrap; gap:.55rem; margin-top:1rem; }.panel-actions.stacked { display:grid; }.panel-actions button,.manage-waters,.filter-row button { min-height:2.55rem; padding:.55rem .8rem; border:1px solid rgba(21,39,43,.22); border-radius:.5rem; background:transparent; color:var(--ink); font-weight:700; }.panel-actions .primary-action { background:var(--navy-800); color:#fff; }
.context-panel { position:absolute; z-index:30; top:0; right:0; width:clamp(23.75rem,31vw,27.5rem); height:100%; overflow:auto; padding:1.35rem; border-left:1px solid rgba(21,39,43,.18); background:var(--panel); color:var(--ink); box-shadow:-12px 0 32px rgba(7,21,27,.16); }.context-panel[data-panel="placeholder"] { display:flex; flex-direction:column; }.context-panel[data-panel="placeholder"][hidden] { display:none; }.plan-selected-water { margin-top:1rem; padding:1rem; border-left:4px solid var(--gold); border-radius:.55rem; background:#f8f4eb; }.plan-selected-water h3 { margin:.25rem 0; }.plan-selected-water p { margin:.2rem 0 0; }.plan-back { min-height:2.7rem; margin-top:auto; padding:.6rem .85rem; border:1px solid rgba(21,39,43,.22); border-radius:.5rem; background:transparent; color:var(--ink); font-weight:750; }.plan-back:hover,.plan-back:focus-visible { border-color:var(--gold); }.plan-back:focus-visible { outline:3px solid var(--gold); outline-offset:2px; }
.context-panel[hidden],.home-water-card[hidden],.map-marker[hidden],[data-water-type][hidden] { display:none; }.panel-heading { display:flex; justify-content:space-between; align-items:flex-start; gap:1rem; padding-bottom:1rem; border-bottom:1px solid rgba(21,39,43,.14); }.panel-heading h2 { margin:.15rem 0 0; font-family:Georgia,serif; font-size:2rem; }.panel-close { width:2.4rem; height:2.4rem; flex:none; border:1px solid rgba(21,39,43,.2); border-radius:50%; background:transparent; color:var(--ink); font-size:1.4rem; }.panel-tabs { display:flex; gap:.2rem; margin:1rem 0; border-bottom:1px solid rgba(21,39,43,.14); }.panel-tabs button { padding:.7rem .55rem; border:0; border-bottom:3px solid transparent; background:transparent; color:var(--muted); }.panel-tabs button[aria-current="page"] { border-color:var(--gold); color:var(--ink); font-weight:750; }.context-panel h3 { margin-top:1.5rem; font-family:Georgia,serif; font-size:1.35rem; }.context-panel p,.reason-list { color:#53686d; line-height:1.55; }.history-list { display:grid; gap:.1rem; }.history-list div { display:flex; justify-content:space-between; gap:1rem; padding:.65rem 0; border-bottom:1px solid rgba(21,39,43,.1); }.history-list dt { font-weight:700; }.history-list dd { margin:0; color:var(--muted); }.mock-note { padding:.65rem; border-left:3px solid var(--gold); background:#eee5d1; font-size:.78rem; }.panel-search input { width:100%; min-height:2.75rem; margin:1rem 0 .7rem; padding:.65rem .75rem; border:1px solid rgba(21,39,43,.22); border-radius:.5rem; background:#fff; color:var(--ink); }.filter-row { display:flex; gap:.4rem; margin-bottom:.8rem; }.filter-row button[aria-pressed="true"] { background:var(--navy-800); color:#fff; }.saved-water-list { display:grid; gap:.4rem; }.saved-water-list > button { display:flex; justify-content:space-between; align-items:center; gap:1rem; padding:.75rem; border:1px solid rgba(21,39,43,.14); border-radius:.55rem; background:#fff; color:var(--ink); text-align:left; }.saved-water-list > button.is-active { border-left:4px solid var(--gold); }.saved-water-list strong,.saved-water-list small { display:block; }.saved-water-list small,.water-note { color:var(--muted); font-size:.72rem; }.manage-waters { width:100%; margin-top:1rem; }
.discover-page { position:absolute; z-index:10; inset:0; overflow:auto; background:#eee8da; color:var(--ink); }
.discover-page[hidden],.interactive-map-workspace[hidden],[data-species-panel][hidden],.species-water-card[hidden] { display:none; }
.species-hero { position:relative; width:100%; height:17rem; max-height:17rem; min-height:0; overflow:hidden; background:var(--navy-900); }
.species-hero img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:center; }
.species-hero img { inset:0 0 0 30%; width:70%; object-position:center 52%; -webkit-mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.28) 8%,#000 20%,#000 100%); mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.28) 8%,#000 20%,#000 100%); }
.species-hero::after { content:""; position:absolute; inset:0; background:linear-gradient(90deg,rgba(3,22,29,.96) 0%,rgba(3,22,29,.82) 34%,rgba(3,22,29,.28) 64%,rgba(3,22,29,.08) 100%); }
.species-hero-overlay { position:relative; z-index:1; width:42%; height:100%; min-height:0; display:flex; flex-direction:column; justify-content:center; padding:1rem clamp(1.25rem,3vw,3rem); color:var(--cream); }
.species-context { display:flex; flex-wrap:wrap; gap:.45rem; margin-bottom:auto; color:rgba(245,238,223,.72); font-size:.75rem; }.species-context span::after { content:"/"; margin-left:.45rem; color:var(--gold); }.species-context strong { color:var(--cream); }
.species-hero h1,.species-hero h2 { width:7ch; margin:.25rem 0; font:700 clamp(2.5rem,4.2vw,3.8rem)/.88 Georgia,serif; }.species-hero p { max-width:34rem; margin:.45rem 0 0; color:rgba(245,238,223,.92); font-size:clamp(.9rem,1.05vw,1.02rem); font-weight:500; line-height:1.42; }
.species-hero-neutral { background:radial-gradient(circle at 78% 58%,rgba(76,111,118,.34),transparent 24%),linear-gradient(135deg,#0b2832 0%,#07151b 72%); }
.catalogue-artwork-hook { display:contents; }
.catalogue-opening-vignette.sf-decorative-vignette {
  left:-8%;
  right:-8%;
  width:116%;
  max-width:none;
  height:auto;
  opacity:var(--sf-vignette-opacity,.58);
  object-fit:contain;
  object-position:var(--sf-vignette-focal-point,center bottom);
  filter:none;
  -webkit-mask-image:var(--sf-vignette-mask,linear-gradient(180deg,transparent 0%,rgba(0,0,0,.08) 16%,rgba(0,0,0,.58) 38%,#000 58%)),radial-gradient(ellipse 96% 96% at 50% 62%,#000 0%,#000 58%,rgba(0,0,0,.8) 72%,rgba(0,0,0,.3) 87%,transparent 100%)!important;
  -webkit-mask-composite:source-in;
  mask-image:var(--sf-vignette-mask,linear-gradient(180deg,transparent 0%,rgba(0,0,0,.08) 16%,rgba(0,0,0,.58) 38%,#000 58%)),radial-gradient(ellipse 96% 96% at 50% 62%,#000 0%,#000 58%,rgba(0,0,0,.8) 72%,rgba(0,0,0,.3) 87%,transparent 100%)!important;
  mask-composite:intersect;
}
[data-species-id="brown-trout"] .species-overview-pencil-scene {
  filter:none;
  -webkit-mask-image:linear-gradient(180deg,transparent 0%,rgba(0,0,0,.06) 18%,rgba(0,0,0,.44) 38%,#000 62%),radial-gradient(ellipse 97% 96% at 50% 64%,#000 0%,#000 62%,rgba(0,0,0,.76) 76%,transparent 100%);
  -webkit-mask-composite:source-in;
  mask-image:linear-gradient(180deg,transparent 0%,rgba(0,0,0,.06) 18%,rgba(0,0,0,.44) 38%,#000 62%),radial-gradient(ellipse 97% 96% at 50% 64%,#000 0%,#000 62%,rgba(0,0,0,.76) 76%,transparent 100%);
  mask-composite:intersect;
}
[data-species-id="ferox-trout"] .catalogue-opening-vignette.sf-decorative-vignette {
  opacity:.62;
  filter:none;
  -webkit-mask-image:linear-gradient(135deg,transparent 0%,rgba(0,0,0,.06) 22%,rgba(0,0,0,.52) 42%,#000 62%),radial-gradient(ellipse 97% 96% at 52% 65%,#000 0%,#000 62%,rgba(0,0,0,.76) 78%,transparent 100%)!important;
  -webkit-mask-composite:source-in;
  mask-image:linear-gradient(135deg,transparent 0%,rgba(0,0,0,.06) 22%,rgba(0,0,0,.52) 42%,#000 62%),radial-gradient(ellipse 97% 96% at 52% 65%,#000 0%,#000 62%,rgba(0,0,0,.76) 78%,transparent 100%)!important;
  mask-composite:intersect;
}
.catalogue-species-map.is-empty { display:grid; place-items:center; background:linear-gradient(145deg,#173a43,#0d2831); }
.catalogue-map-empty { max-width:18rem; padding:1rem; color:rgba(245,238,223,.78); font-family:Georgia,"Times New Roman",serif; text-align:center; }
.species-pills { position:sticky; z-index:12; top:0; display:flex; gap:.35rem; overflow:auto; padding:.7rem clamp(1rem,4vw,4rem); border-bottom:1px solid rgba(21,39,43,.16); background:rgba(248,244,235,.97); }
.species-more-content { position:fixed; z-index:45; left:50%; bottom:calc(1.25rem + env(safe-area-inset-bottom,0px)); width:2.55rem; height:2.55rem; display:grid; place-items:center; padding:0; border:1px solid rgba(202,168,91,.78); border-radius:50%; background:rgba(7,21,27,.82); color:var(--gold); box-shadow:0 6px 18px rgba(3,22,29,.18); opacity:0; visibility:hidden; pointer-events:none; transform:translate(-50%,.4rem); transition:opacity .22s ease,transform .22s ease,visibility 0s linear .22s; }.species-more-content.is-visible { opacity:1; visibility:visible; pointer-events:auto; transform:translate(-50%,0); transition-delay:0s; }.species-more-content svg { width:1rem; height:1rem; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }.species-more-content:hover { background:rgba(7,21,27,.92); border-color:var(--gold); }.species-more-content:focus-visible { outline:3px solid var(--gold); outline-offset:3px; }
.species-pills button { min-height:2.65rem; padding:.55rem .9rem; border:1px solid transparent; border-radius:999px; background:transparent; color:#52676d; white-space:nowrap; }
.species-pills button { min-height:2.75rem; }
.species-pills button[aria-selected="true"] { border-color:rgba(202,168,91,.75); box-shadow:inset 0 -3px var(--gold); background:#fff; color:var(--ink); font-weight:800; }
.species-pills button:disabled { cursor:not-allowed; color:#7b8587; opacity:.58; }
.discover-page[data-species-id="pike"] [data-species-panel="tactics"] .species-briefing-actions button { min-height:2.75rem; }
.species-content { max-width:100rem; margin:auto; padding:clamp(1.25rem,3vw,3rem); }.species-content h2,.species-content h3 { font-family:Georgia,serif; }.species-content button { min-height:2.55rem; padding:.55rem .8rem; border:1px solid rgba(21,39,43,.22); border-radius:.5rem; background:#fff; color:var(--ink); font-weight:750; }.species-content button.primary-action { background:var(--navy-800); color:#fff; }
.species-intro,.species-section-heading { display:flex; align-items:flex-end; justify-content:space-between; gap:2rem; margin-bottom:1.4rem; }.species-intro > div:first-child { max-width:52rem; }.species-intro h2,.species-section-heading h2 { margin:.25rem 0; font-size:clamp(1.8rem,3vw,2.7rem); }.species-intro p,.species-section-heading p { margin:.35rem 0; color:#53686d; line-height:1.6; }.species-main-actions,.species-card-actions { display:flex; flex-wrap:wrap; gap:.45rem; }
.species-map-grid { display:grid; grid-template-columns:minmax(0,1.55fr) minmax(20rem,.75fr); gap:1.2rem; align-items:start; margin-bottom:1.4rem; }.species-map-grid > aside { padding:1.15rem; border:1px solid rgba(21,39,43,.13); border-radius:.85rem; background:#f8f4eb; }.species-map-grid > aside > h2 { margin:.2rem 0 1rem; }.species-map { position:relative; min-height:32rem; overflow:hidden; border:1px solid rgba(21,39,43,.18); border-radius:.85rem; background:#78909a; }.species-map-secondary { min-height:36rem; }
.species-gateway-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:1rem; margin-bottom:1.2rem; }.species-content button.species-gateway-card { min-height:13rem; display:grid; grid-template-rows:auto auto 1fr auto; align-items:start; gap:.65rem; padding:1.2rem; border-color:rgba(21,39,43,.14); border-top:3px solid var(--gold); border-radius:.8rem; background:#f8f4eb; text-align:left; transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease; }.species-content button.species-gateway-card:hover,.species-content button.species-gateway-card:focus-visible { transform:translateY(-3px); border-color:var(--gold); box-shadow:0 10px 24px rgba(7,21,27,.11); }.species-content button.species-gateway-card:active { transform:translateY(-1px); box-shadow:0 4px 12px rgba(7,21,27,.12); }.species-gateway-icon { width:2rem; height:2rem; display:grid; place-items:center; border:1px solid rgba(202,168,91,.55); border-radius:50%; color:var(--gold); font-size:.9rem; }.species-gateway-title { color:var(--ink); font-family:Georgia,serif; font-size:1.28rem; }.species-gateway-card small { color:#53686d; font-size:.8rem; font-weight:500; line-height:1.45; }.species-gateway-cue { display:flex; align-items:center; gap:.35rem; color:#52676d; font-size:.7rem; font-weight:800; letter-spacing:.04em; text-transform:uppercase; }.species-notice-strip { display:flex; align-items:center; gap:1.3rem; margin-bottom:1.5rem; padding:.8rem 1rem; border-block:1px solid rgba(21,39,43,.12); }.species-notice-strip h2 { flex:none; margin:0; font-size:1rem; }.species-notice-strip > div { display:flex; flex-wrap:wrap; gap:.55rem 1.3rem; }.species-notice-strip > div span { display:flex; align-items:center; gap:.5rem; color:#53686d; font-size:.78rem; }.species-notice-strip > div span::before { content:""; width:.38rem; height:.38rem; border-radius:50%; background:var(--gold); }.species-map-preview { padding:1.2rem; border:1px solid rgba(21,39,43,.13); border-radius:.9rem; background:#f8f4eb; }.species-map-preview > div:first-child { max-width:52rem; margin-bottom:1rem; }.species-map-preview h2 { margin:.2rem 0; }.species-map-preview p { margin:.35rem 0 0; color:#53686d; line-height:1.55; }.species-overview-map { width:100%; min-height:24rem; margin-bottom:1rem; }.species-overview-closing { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1px; margin-top:1.2rem; overflow:hidden; border-left:4px solid var(--gold); border-radius:.55rem; background:rgba(21,39,43,.12); }.species-overview-closing > div { padding:1rem 1.2rem; background:#f8f4eb; }.species-overview-closing p { margin:.25rem 0 0; color:#53686d; font-family:Georgia,serif; font-size:1.02rem; }
.species-gateway-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:1rem; margin-bottom:1.2rem; }.species-content button.species-gateway-card { min-height:13rem; display:grid; grid-template-rows:auto auto 1fr auto; align-items:start; gap:.65rem; padding:1.2rem; border-color:rgba(21,39,43,.14); border-top:3px solid var(--gold); border-radius:.8rem; background:#f8f4eb; text-align:left; transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease; }.species-content button.species-gateway-card:hover,.species-content button.species-gateway-card:focus-visible { transform:translateY(-3px); border-color:var(--gold); box-shadow:0 10px 24px rgba(7,21,27,.11); }.species-content button.species-gateway-card:active { transform:translateY(-1px); box-shadow:0 4px 12px rgba(7,21,27,.12); }.species-gateway-icon { width:2rem; height:2rem; display:grid; place-items:center; border:1px solid rgba(202,168,91,.55); border-radius:50%; color:var(--gold); font-size:.9rem; }.species-gateway-title { color:var(--ink); font-family:Georgia,serif; font-size:1.28rem; }.species-gateway-card small { color:#53686d; font-size:.8rem; font-weight:500; line-height:1.45; }.species-gateway-cue { display:flex; align-items:center; gap:.35rem; color:#52676d; font-size:.7rem; font-weight:800; letter-spacing:.04em; text-transform:uppercase; }.species-notice-strip { display:flex; align-items:center; gap:1.3rem; margin-bottom:1.5rem; padding:.8rem 1rem; border-block:1px solid rgba(21,39,43,.12); }.species-notice-strip h2 { flex:none; margin:0; font-size:1rem; }.species-notice-strip > div { display:flex; flex-wrap:wrap; gap:.55rem 1.3rem; }.species-notice-strip > div span { display:flex; align-items:center; gap:.5rem; color:#53686d; font-size:.78rem; }.species-notice-strip > div span::before { content:""; width:.38rem; height:.38rem; border-radius:50%; background:var(--gold); }.species-map-feature { display:grid; grid-template-columns:minmax(0,1.25fr) minmax(19rem,.75fr); overflow:hidden; border:1px solid rgba(21,39,43,.14); border-radius:.9rem; background:#f8f4eb; }.species-map-feature .species-overview-map { width:100%; min-height:20rem; border:0; border-radius:0; }.species-map-feature-panel { display:flex; flex-direction:column; justify-content:center; padding:clamp(1.2rem,2.5vw,2rem); background:var(--navy-800); color:var(--cream); }.species-map-feature-panel h2 { margin:.25rem 0 .65rem; font-size:clamp(1.55rem,2.4vw,2.2rem); }.species-map-feature-panel p { margin:0 0 1rem; color:rgba(245,238,223,.78); line-height:1.55; }.species-map-feature-actions { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.5rem; }.species-map-feature-panel > small { margin-top:1.1rem; padding-top:1rem; border-top:1px solid rgba(245,238,223,.18); color:rgba(245,238,223,.65); font-size:.72rem; line-height:1.5; }.species-overview-closing { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1px; margin-top:1.2rem; overflow:hidden; border-left:4px solid var(--gold); border-radius:.55rem; background:rgba(21,39,43,.12); }.species-overview-closing > div { padding:1rem 1.2rem; background:#f8f4eb; }.species-overview-closing p { margin:.25rem 0 0; color:#53686d; font-family:Georgia,serif; font-size:1.02rem; }
.species-overview-introduction { display:grid; grid-template-columns:minmax(18rem,.75fr) minmax(34rem,1.25fr); gap:clamp(1.5rem,3vw,3rem); align-items:stretch; margin-bottom:1.4rem; }.species-overview-copy { padding:.35rem 0 .35rem clamp(1rem,2vw,1.5rem); border-left:3px solid var(--gold); }.species-overview-copy h2 { margin:.25rem 0 .9rem; font-size:clamp(1.8rem,3vw,2.7rem); }.species-overview-copy p { margin:0 0 1rem; color:#53686d; font-size:.96rem; line-height:1.7; }.species-overview-copy p:last-child { margin-bottom:0; }.species-overview-introduction .species-gateway-grid { grid-template-columns:repeat(2,minmax(0,1fr)); margin-bottom:0; }.species-overview-introduction .species-gateway-card { min-height:12.5rem; }
.species-overview-introduction { grid-template-columns:minmax(20rem,.9fr) minmax(31rem,1.1fr); align-items:start; }.species-overview-introduction .species-gateway-grid { align-self:start; grid-auto-rows:1fr; }.species-content .species-overview-introduction button.species-gateway-card { min-height:11rem; height:100%; grid-template-rows:auto auto 1fr auto; gap:.45rem; padding:.95rem 1rem; overflow:hidden; }.species-overview-introduction .species-gateway-card::before { content:none; }.species-overview-introduction .species-gateway-icon { width:1.7rem; height:1.7rem; margin:0; font-size:.76rem; }.species-overview-introduction .species-gateway-title { margin:0; font-size:1.24rem; line-height:1.12; }.species-overview-introduction .species-gateway-card small { margin:0; color:#4e6268; font-size:.78rem; line-height:1.5; }.species-overview-introduction .species-gateway-cue { align-self:end; margin:0; padding-top:.2rem; }
.species-content button.species-gateway-card { position:relative; overflow:hidden; }.species-gateway-card::after { content:""; position:absolute; z-index:0; inset:0; border-radius:inherit; background-repeat:no-repeat; background-size:cover; pointer-events:none; }.species-gateway-card > * { position:relative; z-index:1; }.species-gateway-card[data-species-pill-link="waters"]::after { background-image:url("/assets/images/species/overview/waters-sketch.png"); background-position:right bottom; }.species-gateway-card[data-species-pill-link="tactics"]::after { background-image:url("/assets/images/species/overview/tactics-sketch.png"); background-position:right center; }.species-gateway-card[data-species-pill-link="season"]::after { background-image:url("/assets/images/species/overview/season-sketch.png"); background-position:right bottom; }.species-gateway-card[data-species-pill-link="reports"]::after { background-image:url("/assets/images/species/overview/reports-conditions-sketch.png"); background-position:right bottom; }
.species-overview-introduction { position:relative; overflow:hidden; padding-bottom:calc(clamp(15rem,24vw,18rem) + 3rem); }.species-overview-copy,.species-overview-introduction > .species-gateway-grid { position:relative; z-index:2; }.species-overview-pencil-scene { position:absolute; z-index:0; left:0; right:0; bottom:3rem; width:100%; height:auto; display:block; object-fit:contain; object-position:center bottom; border:0; border-radius:0; background:transparent; box-shadow:none; pointer-events:none; user-select:none; }.species-overview-notice { position:absolute; z-index:2; right:0; bottom:0; left:0; margin:0; padding:.75rem 0 .65rem; border-top:1px solid rgba(21,39,43,.14); color:#53686d; font-family:Georgia,serif; font-size:clamp(.94rem,1.25vw,1.05rem); font-style:italic; font-weight:400; line-height:1.4; text-align:center; white-space:nowrap; }.species-overview-notice strong { color:var(--ink); font-weight:400; }.species-overview-notice-separator { color:var(--gold); font-style:normal; }
.species-overview-vignette-layer { display:contents; }
.species-map-feature { grid-template-columns:minmax(0,.95fr) minmax(23rem,1.05fr); align-items:stretch; min-height:22rem; max-height:36rem; overflow:hidden; border:0; border-radius:0; background:transparent; box-shadow:none; }.species-map-feature .species-overview-map { height:100%; min-height:22rem; max-height:36rem; overflow:hidden; border-radius:.75rem; }
.species-map-feature-wrap { margin-bottom:1.2rem; }.species-map-feature-panel { align-self:stretch; min-height:0; max-height:36rem; padding:clamp(.75rem,1.5vw,1.25rem) 0 clamp(.75rem,1.5vw,1.25rem) clamp(1.25rem,2.5vw,2.25rem); overflow:hidden; border:0; background:transparent; color:var(--ink); }.species-map-feature-panel h2 { flex:0 0 auto; color:var(--ink); font-size:clamp(1.4rem,2vw,1.85rem); }.species-map-feature-panel p { flex:0 0 auto; color:#53686d; }.species-overview-water-index { min-height:0; display:grid; align-content:start; margin-top:.1rem; overflow-y:auto; scrollbar-width:thin; scrollbar-color:rgba(202,168,91,.65) transparent; }.species-content .species-overview-water-index button { grid-template-columns:auto 1fr; gap:.28rem .6rem; min-height:0; padding:.65rem 0; border:0; border-bottom:1px solid rgba(21,39,43,.1); border-radius:0; background:transparent; color:var(--ink); text-align:left; transition:color .16s ease; }.species-overview-water-index button::before { content:"≈"; grid-row:1/3; align-self:center; color:var(--gold); font-size:.9rem; }.species-content .species-overview-water-index button:last-child { border-bottom:0; }.species-content .species-overview-water-index button:hover,.species-content .species-overview-water-index button:focus-visible { border-color:rgba(202,168,91,.4); background:transparent; color:#826719; }.species-content .species-overview-water-index button:focus-visible { outline:2px solid var(--gold); outline-offset:2px; }.species-content .species-overview-water-index button.is-selected { border-left:0; background:transparent; color:#826719; }.species-overview-water-index button:hover strong,.species-overview-water-index button:focus-visible strong,.species-overview-water-index button.is-selected strong { text-decoration:underline; text-decoration-color:var(--gold); text-underline-offset:.22rem; }.species-overview-water-index strong { font-family:Georgia,serif; font-size:.98rem; line-height:1.25; }.species-overview-water-index small { color:#64767a; font-size:.68rem; line-height:1.45; }.species-map-feature-wrap > .species-map-feature-actions { display:flex; flex-wrap:wrap; justify-content:center; gap:.5rem; padding-top:.75rem; }.species-map-feature-wrap > .species-map-feature-actions button { min-height:2.35rem; padding:.45rem .85rem; border-radius:999px; font-size:.74rem; }
.species-content .species-overview-water-index button { display:flex; align-items:center; gap:.625rem; }.species-overview-water-index button::before { flex:0 0 auto; }.species-overview-water-index strong { flex:0 1 auto; }.species-overview-water-index small { flex:0 1 auto; margin-left:0; }
.species-content .species-overview-explore-all { align-self:flex-start; min-height:2.2rem; margin-top:.75rem; padding:.4rem .7rem; border-color:rgba(202,168,91,.65); background:transparent; color:#52676d; font-size:.75rem; }
.species-overview-water-index { overflow:visible; scrollbar-width:auto; }
.species-overview-closing h3 { margin:.45rem 0 .35rem; color:var(--ink); font-family:Georgia,serif; font-size:clamp(1.2rem,1.7vw,1.55rem); font-weight:700; line-height:1.2; }.species-overview-closing p { margin:0; line-height:1.55; }.species-overview-closing em { color:#826719; font-family:Georgia,serif; font-style:italic; font-weight:600; }
.species-water-marker { display:grid; place-items:center; border:2px solid var(--navy-950); border-radius:50%; background:var(--gold); color:var(--navy-950); box-shadow:0 4px 10px rgba(0,0,0,.3); font-weight:900; }.species-water-marker.is-selected { border:4px double #fff; box-shadow:0 0 0 4px var(--navy-950),0 6px 15px rgba(0,0,0,.35); }
.species-water-list { display:grid; gap:.65rem; }.species-water-card { padding:.9rem; border:1px solid rgba(21,39,43,.13); border-radius:.65rem; background:#fff; }.species-water-card.is-selected { border-left:5px solid var(--gold); }.species-water-card h3 { margin:.15rem 0 .45rem; font-size:1.25rem; }.species-statuses { display:flex; flex-wrap:wrap; gap:.3rem; margin:.45rem 0 .75rem; }.species-statuses span { padding:.2rem .42rem; border:1px solid rgba(21,39,43,.15); border-radius:999px; color:#53686d; font-size:.66rem; }
.species-waters-map { display:grid; gap:1.2rem; }.species-waters-heading { max-width:52rem; margin-top:.3rem; }.species-waters-heading h2 { margin:.2rem 0; }.species-waters-heading p,.species-water-reason { color:#53686d; line-height:1.55; }.species-waters-heading p { margin:.35rem 0 0; }.species-water-reason { min-height:2.4rem; margin:.35rem 0; font-size:.82rem; }.species-waters-grid .species-water-list { grid-template-columns:repeat(3,minmax(0,1fr)); gap:1rem; }.species-waters-grid .species-water-card { min-height:13rem; display:flex; flex-direction:column; justify-content:space-between; padding:1.15rem; border-top:3px solid var(--gold); border-radius:.8rem; background:#f8f4eb; }.species-waters-grid .species-card-actions { margin-top:1rem; }
.species-map-guidance { margin:-.5rem 0 1rem; color:#53686d; font-size:.9rem; }.species-selected-water { display:flex; align-items:center; justify-content:space-between; gap:1.5rem; padding:1.15rem 1.3rem; border:1px solid rgba(21,39,43,.14); border-left:5px solid var(--gold); border-radius:.75rem; background:#f8f4eb; }.species-selected-water h2 { margin:.2rem 0; }.species-selected-water p { margin:.25rem 0; color:#53686d; }.species-water-filter-chips { display:flex; flex-wrap:wrap; gap:.5rem; }.species-water-filter-chips button[aria-pressed="true"] { border-color:var(--gold); box-shadow:inset 0 -3px var(--gold); background:var(--navy-800); color:#fff; }.species-waters-grid .species-water-card { cursor:pointer; transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease; }.species-waters-grid .species-water-card:hover { transform:translateY(-3px); box-shadow:0 10px 24px rgba(7,21,27,.11); }.species-waters-grid .species-water-card:focus-visible { outline:3px solid var(--gold); outline-offset:3px; }.species-waters-grid .species-water-card.is-selected { border-color:var(--gold); border-left:6px solid var(--gold); box-shadow:0 0 0 2px rgba(202,168,91,.24); }.species-content button:hover { border-color:var(--gold); background:#f3ead6; }.species-content button:focus-visible { outline:3px solid var(--gold); outline-offset:2px; }.species-content button.primary-action:hover { background:var(--navy-950); }.species-access-note { margin:0; padding:.85rem 1rem; border-left:3px solid var(--gold); background:#f8f4eb; color:#53686d; font-size:.82rem; line-height:1.55; }
.species-panel-card { padding:1.2rem; border:1px solid rgba(21,39,43,.13); border-radius:.8rem; background:#f8f4eb; }.species-panel-card h2 { margin:.2rem 0 1rem; }.species-panel-card h3 { margin:.15rem 0 .45rem; }.species-panel-card p { color:#53686d; line-height:1.55; }
.species-reports-page { display:grid; gap:clamp(.9rem,1.8vw,1.3rem); }
.species-reports-introduction { max-width:52rem; padding:.05rem 0; }
.species-reports-introduction h2,.species-reports-page section h2,.species-reports-page aside h2 { margin:.2rem 0 .5rem; }
.species-reports-introduction h2 { font-size:clamp(1.8rem,3vw,2.55rem); }
.species-reports-introduction p,.species-reports-guidance p { max-width:48rem; margin:0; color:#53686d; font-family:Georgia,"Times New Roman",serif; font-size:clamp(.98rem,1.3vw,1.08rem); line-height:1.62; }
.species-reports-page > [data-species-reports-content] { display:grid; gap:clamp(.75rem,1.4vw,1rem); }
.species-reports-latest,.species-reports-recent,.species-reports-archive { padding:clamp(1.1rem,2.4vw,1.75rem); border:1px solid rgba(21,39,43,.14); border-radius:.8rem; background:#f8f4eb; }
.species-reports-latest { border-left:4px solid var(--gold); background:linear-gradient(135deg,#fbf7ee 0%,#f6efdf 100%); box-shadow:0 10px 28px rgba(20,42,46,.055); }
.species-reports-latest > h2 { font-size:clamp(1.45rem,2.2vw,2rem); }
.species-report-empty { display:grid; grid-template-columns:minmax(0,1.08fr) minmax(20rem,.92fr); align-items:stretch; gap:clamp(1rem,2.2vw,1.75rem); margin-top:.65rem; padding:clamp(.9rem,1.6vw,1.2rem) 0 .1rem; border-top:1px solid rgba(21,39,43,.11); }
.species-report-empty-copy { max-width:47rem; }
.species-report-empty-copy > strong { display:block; color:#27464b; font-family:Georgia,"Times New Roman",serif; font-size:clamp(1.08rem,1.6vw,1.28rem); line-height:1.35; }
.species-report-empty-copy > p { margin:.45rem 0 0; color:#596e73; line-height:1.55; }
.species-report-empty-copy > .species-report-angler-read { margin-top:.8rem; color:#3f5b60; font-family:Georgia,"Times New Roman",serif; font-size:1rem; }
.species-report-empty-support { position:relative; display:flex; align-items:flex-end; justify-content:flex-end; min-height:9.25rem; padding-bottom:.15rem; overflow:hidden; }
.species-report-vignette { position:absolute; inset:-21% -9% -8% -16%; width:125%; height:124%; object-fit:contain; object-position:right bottom; opacity:.4; pointer-events:none; -webkit-mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.58) 20%,#000 48%); mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.58) 20%,#000 48%); }
.species-report-empty-actions { position:relative; z-index:1; display:flex; align-items:center; justify-content:flex-end; width:auto; max-width:100%; gap:.55rem; }
.species-content .species-report-action { min-height:2.5rem; padding:.55rem .82rem; font-size:.74rem; white-space:nowrap; }
.species-content .species-report-action-primary { border-color:var(--navy-800); background:var(--navy-800); color:#fff; }
.species-content .species-report-action-primary:hover { border-color:var(--navy-950); background:var(--navy-950); }
.species-content .species-report-action-secondary { border-color:rgba(115,89,24,.58); background:rgba(251,247,238,.9); color:#5f4b1d; }
.species-content .species-report-action-tertiary { border-color:transparent; background:transparent; color:#52676d; text-decoration:underline; text-decoration-color:rgba(202,168,91,.75); text-underline-offset:.18rem; }
.species-report-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.8rem; margin-top:.8rem; }
.species-report-archive-list { display:grid; gap:.65rem; margin-top:.8rem; }
.species-report-card { padding:.9rem; border:1px solid rgba(21,39,43,.12); border-radius:.6rem; background:rgba(255,252,245,.72); }
.species-report-card > header { display:flex; align-items:flex-start; justify-content:space-between; gap:.8rem; }
.species-report-card h3 { margin:.18rem 0 0; color:#17353a; font-family:Georgia,"Times New Roman",serif; font-size:1.1rem; }
.species-report-freshness { flex:none; color:#775b1e; font-size:.65rem; font-weight:800; letter-spacing:.04em; text-transform:uppercase; }
.species-report-meta { display:flex; flex-wrap:wrap; gap:.35rem .8rem; margin-top:.55rem; color:#68787b; font-size:.7rem; }
.species-report-meta strong { color:#5f6c4b; }
.species-report-card > p { margin:.55rem 0 0; color:#53686d; line-height:1.5; }
.species-report-card > ul { display:flex; flex-wrap:wrap; gap:.35rem .75rem; margin:.6rem 0 0; padding:0; color:#60757b; font-size:.72rem; list-style:none; }
.species-report-card > small { display:block; margin-top:.6rem; color:#737a78; line-height:1.45; }
.species-report-card > a { display:inline-block; margin-top:.7rem; color:#735918; font-weight:750; text-underline-offset:.16rem; }
.species-report-latest-card { margin-top:.75rem; }
.species-report-latest-card > .species-report-card { margin-top:.4rem; }
.species-reports-archive { background:rgba(248,244,235,.72); }
.species-reports-archive .species-report-card { padding:.75rem .9rem; background:rgba(255,252,245,.5); }
.species-reports-library { padding:clamp(.9rem,1.7vw,1.15rem) clamp(1rem,2vw,1.3rem) clamp(.8rem,1.4vw,1rem); border:1px solid rgba(21,39,43,.12); border-radius:.75rem; background:rgba(248,244,235,.7); }
.species-reports-library > strong { display:block; color:#405b60; font-family:Georgia,"Times New Roman",serif; font-size:1.05rem; }
.species-reports-library > p { max-width:52rem; margin:.35rem 0 0; color:#60757b; line-height:1.5; }
.species-reports-guidance { max-width:48rem; margin-top:-.3rem; padding:.4rem 0 .05rem .9rem; border-left:2px solid rgba(202,168,91,.72); }
.species-reports-guidance h2 { margin:0 0 .25rem; color:#8a6a1e; font-family:inherit; font-size:.68rem; font-weight:800; letter-spacing:.11em; text-transform:uppercase; }
.species-reports-guidance p { font-family:Georgia,"Times New Roman",serif; font-size:.9rem; line-height:1.5; }
@media (max-width:950px) and (min-width:701px) {
  .species-report-empty { grid-template-columns:minmax(0,1fr) minmax(17rem,.8fr); }
  .species-report-vignette { inset:-15% -8% -5% -10%; width:116%; height:114%; opacity:.3; }
  .species-report-empty-actions { flex-wrap:wrap; row-gap:.4rem; }
}
.species-conditions-page { display:grid; gap:.75rem; }
.species-conditions-introduction { max-width:52rem; padding:0 0 .05rem; }
.species-conditions-introduction h2 { margin:.2rem 0 .45rem; font-size:clamp(1.8rem,3vw,2.55rem); }
.species-conditions-introduction p { max-width:48rem; margin:0; color:#53686d; font-family:Georgia,"Times New Roman",serif; font-size:clamp(.98rem,1.3vw,1.08rem); line-height:1.62; }
.species-conditions-page > [data-species-conditions-content] { display:block; }
.species-conditions-briefing { position:relative; display:grid; grid-template-columns:minmax(0,1.18fr) minmax(17rem,.82fr); gap:1rem clamp(1.15rem,2.2vw,1.75rem); overflow:hidden; padding:clamp(1.15rem,2.25vw,1.6rem); border:1px solid rgba(21,39,43,.14); border-left:4px solid var(--gold); border-radius:.85rem; background:linear-gradient(135deg,#fbf7ee 0%,#f6efdf 100%); isolation:isolate; }
.species-conditions-briefing > *:not(.species-conditions-vignette) { position:relative; z-index:2; }
.species-conditions-vignette { position:absolute; z-index:0; top:0; right:-5%; width:min(49rem,56%); height:100%; object-fit:cover; object-position:78% center; opacity:.19; pointer-events:none; -webkit-mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.16) 22%,#000 52%,#000 100%); mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.16) 22%,#000 52%,#000 100%); }
.pike-conditions-vignette { right:-2%; width:min(47rem,54%); object-fit:contain; object-position:right bottom; opacity:.38; filter:contrast(1.14); user-select:none; -webkit-mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.2) 18%,#000 48%,#000 100%); mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.2) 18%,#000 48%,#000 100%); }
.species-conditions-selected { max-width:48rem; }
.species-conditions-selected h2,.species-conditions-watch h2,.species-conditions-notices h2 { margin:.2rem 0 .45rem; }
.species-conditions-selected > strong { display:block; color:#27464b; font-family:Georgia,"Times New Roman",serif; font-size:clamp(.98rem,1.25vw,1.12rem); font-weight:650; line-height:1.38; }
.species-conditions-selected > p { max-width:42rem; margin:.45rem 0 0; color:#596e73; line-height:1.55; }
.species-conditions-values { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.65rem 1rem; margin:1rem 0 0; }
.species-conditions-values div { padding:.65rem 0; border-top:1px solid rgba(21,39,43,.1); }
.species-conditions-values dt { color:#8a6a1e; font-size:.65rem; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }
.species-conditions-values dd { margin:.2rem 0 0; color:#334e53; font-weight:700; }
.species-conditions-source { font-size:.7rem; }
.species-conditions-watch { grid-column:1; max-width:44rem; padding-top:.1rem; }
.species-conditions-watch ul { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.52rem clamp(.75rem,1.5vw,1rem); margin:.62rem 0 0; padding:0; list-style:none; }
.species-conditions-watch li { display:grid; grid-template-columns:auto 1fr; gap:.55rem; color:#53686d; line-height:1.45; }
.species-conditions-watch li::before { content:""; width:.35rem; height:.35rem; margin-top:.48rem; border-radius:50%; background:var(--gold); }
.species-conditions-notices { align-self:start; max-width:25rem; margin:.25rem 0 0 -.25rem; padding:.5rem .8rem .55rem 1.1rem; border-left:2px solid rgba(202,168,91,.72); background:linear-gradient(90deg,rgba(248,244,235,.94) 0%,rgba(248,244,235,.8) 68%,rgba(248,244,235,0) 100%); }
.species-conditions-notices p { margin:.35rem 0 0; color:#53686d; line-height:1.5; }
.species-conditions-actions { grid-column:1/-1; display:flex; flex-wrap:wrap; align-items:center; gap:.42rem; max-width:48rem; padding:.72rem 1.4rem .05rem 0; border-top:1px solid rgba(21,39,43,.1); background:linear-gradient(90deg,rgba(248,244,235,.58),rgba(248,244,235,.3) 78%,transparent); }
.species-content .species-conditions-actions button { min-height:2.65rem; padding-inline:.85rem; white-space:nowrap; }
.species-content .species-conditions-actions .tertiary-action { border-color:transparent; background:transparent; color:#52676d; text-decoration:underline; text-decoration-color:rgba(202,168,91,.75); text-underline-offset:.18rem; }
@media (max-width:1180px) {
  .species-conditions-watch ul { grid-template-columns:1fr; }
  .species-conditions-actions { max-width:42rem; }
}
@media (max-width:900px) {
  .species-conditions-briefing { grid-template-columns:1fr; }
  .species-conditions-watch,.species-conditions-actions { grid-column:auto; }
  .species-conditions-notices { max-width:30rem; margin-top:0; }
  .species-conditions-vignette { top:auto; bottom:0; width:68%; height:58%; opacity:.14; }
  .pike-conditions-vignette { right:-8%; width:72%; height:62%; opacity:.28; }
}
@media (max-width:700px) {
  .species-conditions-values { grid-template-columns:1fr; }
  .species-conditions-watch ul { grid-template-columns:1fr; }
  .species-conditions-vignette { right:-28%; width:100%; height:42%; opacity:.1; }
  .pike-conditions-vignette { right:-24%; width:92%; height:38%; opacity:.2; }
  .species-conditions-actions { align-items:stretch; flex-direction:column; max-width:none; padding:.7rem 0 0; background:linear-gradient(180deg,rgba(248,244,235,.64),transparent); }
  .species-content .species-conditions-actions button { width:100%; min-height:2.75rem; }
}

/* Reusable water profile */
.water-profile-page { min-height:100%; overflow-y:auto; padding:clamp(1rem,2.5vw,2.2rem); background:#f1ecdf; color:var(--ink); }
.water-profile-page[hidden] { display:none; }
.water-profile-return { margin:0 auto 1rem; max-width:88rem; }
.water-profile-return button,.water-profile-back { border:0; background:transparent; color:#425a5f; font-weight:750; }
.water-profile-hero,.water-profile-practical,.water-profile-notices,.water-profile-access,.water-profile-guidance-grid article,.water-profile-sources,.water-profile-planning,.water-profile-unavailable { max-width:88rem; margin-inline:auto; border:1px solid rgba(21,39,43,.14); border-radius:.9rem; background:#f8f4eb; }
.water-profile-hero { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:2rem; align-items:end; padding:clamp(1.5rem,3vw,3rem); border-left:5px solid var(--gold); }
.water-profile-hero h1 { max-width:16ch; margin:.25rem 0 .65rem; font-family:Georgia,serif; font-size:clamp(2.7rem,6vw,5.5rem); line-height:.95; }
.water-profile-hero p { max-width:48rem; margin:0; color:#425a5f; font-family:Georgia,serif; font-size:clamp(1rem,1.4vw,1.2rem); line-height:1.6; }
.water-profile-tags,.water-profile-hero-actions,.water-profile-planning,.water-access-actions { display:flex; flex-wrap:wrap; gap:.55rem; align-items:center; }
.water-profile-tags { margin-top:1.1rem; }.water-profile-tags span { padding:.35rem .65rem; border:1px solid rgba(166,127,39,.35); border-radius:999px; color:#53686d; font-size:.75rem; }
.water-profile-hero-actions { justify-content:flex-end; max-width:25rem; }.water-profile-hero-actions a,.water-profile-hero-actions button,.water-profile-planning button,.water-access-actions a,.water-access-actions button { min-height:2.7rem; padding:.65rem .9rem; border:1px solid rgba(21,39,43,.48); border-radius:.55rem; background:transparent; color:var(--ink); font:inherit; font-size:.78rem; font-weight:750; text-decoration:none; }
.water-profile-hero-actions .primary-action,.water-profile-planning .primary-action { border-color:var(--navy-800); background:var(--navy-800); color:#fff; }
.water-profile-practical { display:grid; grid-template-columns:minmax(0,1.3fr) minmax(18rem,.7fr); gap:2rem; margin-top:1rem; padding:clamp(1.2rem,2.4vw,2rem); }
.water-profile-practical h2,.water-profile-section-heading h2,.water-profile-guidance-grid h2,.water-profile-sources h2 { margin:.2rem 0 .55rem; font-family:Georgia,serif; font-size:clamp(1.45rem,2vw,2rem); }.water-profile-practical p,.water-profile-section-heading p,.water-profile-guidance-grid p,.water-profile-sources p { color:#425a5f; line-height:1.6; }
.water-profile-practical dl { margin:0; }.water-profile-practical dl div { padding:.55rem 0; border-bottom:1px solid rgba(21,39,43,.1); }.water-profile-practical dt,.water-access-card dt { color:#a67f27; font-size:.68rem; font-weight:800; letter-spacing:.04em; text-transform:uppercase; }.water-profile-practical dd,.water-access-card dd { margin:.2rem 0 0; color:#425a5f; line-height:1.45; }
.water-profile-notices { margin-top:1rem; padding:clamp(1.15rem,2.2vw,1.7rem); border-left:5px solid var(--gold); background:#f4ead0; }.water-profile-notices article { max-width:58rem; }.water-profile-notices h2 { margin:.2rem 0 .45rem; font-family:Georgia,serif; font-size:clamp(1.35rem,2vw,1.85rem); }.water-profile-notices p { margin:.25rem 0 .6rem; color:#344e54; line-height:1.55; }.water-profile-notices small { color:#5f6d6f; }.water-profile-notices ul { margin:.55rem 0 0; padding-left:1.15rem; }.water-profile-notices a { color:#315d66; }
.water-profile-access { margin-top:1rem; padding:clamp(1.2rem,2.4vw,2rem); }.water-profile-section-heading { max-width:52rem; }.water-profile-access-layout { display:grid; grid-template-columns:minmax(0,1fr) minmax(22rem,1fr); gap:1rem; align-items:stretch; margin-top:1.2rem; }.water-access-map { min-height:34rem; overflow:hidden; border:1px solid rgba(21,39,43,.16); border-radius:.75rem; background:#dce4dd; }.water-access-directory { display:grid; }.water-access-card { display:flex; flex-direction:column; padding:1.25rem; border:1px solid rgba(21,39,43,.14); border-left:4px solid var(--gold); border-radius:.75rem; background:#fcf9f1; }.water-access-card h3 { margin:.2rem 0; font-family:Georgia,serif; font-size:1.65rem; }.water-access-card header strong { color:#425a5f; font-size:.8rem; }.water-access-card dl { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.55rem 1rem; margin:1rem 0; }.water-access-card dl div { padding-top:.5rem; border-top:1px solid rgba(21,39,43,.09); }.water-access-card dd { font-size:.76rem; }.water-access-card > p { color:#53686d; font-size:.8rem; line-height:1.5; }.water-access-actions { margin-top:auto; padding-top:.8rem; }.water-access-card > small { display:block; margin-top:.7rem; color:#66777a; }.water-access-card details { margin-top:.65rem; font-size:.75rem; }.water-access-card details a,.water-profile-sources a { color:#315d66; }
.water-access-marker { border:0; background:transparent; }.water-access-marker span { display:grid; width:34px; height:34px; place-items:center; border:2px solid #f8f4eb; border-radius:50%; background:#315d66; box-shadow:0 3px 10px rgba(3,22,29,.25); color:#fff; font-weight:900; }.water-access-marker.is-selected span { background:#b58a2b; box-shadow:0 0 0 4px rgba(181,138,43,.24); }
.water-profile-guidance-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1rem; max-width:88rem; margin:1rem auto; }.water-profile-guidance-grid article { width:auto; margin:0; padding:1.25rem; }.water-profile-guidance-grid article p { margin:.45rem 0 0; font-size:.88rem; }.water-profile-species-context.is-selected { border-color:rgba(166,127,39,.55); box-shadow:inset 4px 0 0 var(--gold); background:#fbf4e2; }.water-profile-species-context details { margin-top:.7rem; font-size:.75rem; }.water-profile-species-context a { color:#315d66; }.water-profile-sources { padding:1.25rem; }.water-profile-sources ul { padding-left:1.2rem; }.water-profile-planning { justify-content:center; margin-top:1rem; padding:1rem; }.water-profile-unavailable { padding:2rem; }
.water-access-card:focus-visible,.water-profile-page button:focus-visible,.water-profile-page a:focus-visible { outline:3px solid var(--gold); outline-offset:3px; }
@media (max-width:950px) { .water-profile-hero,.water-profile-practical { grid-template-columns:1fr; }.water-profile-hero-actions { justify-content:flex-start; max-width:none; }.water-profile-access-layout { grid-template-columns:1fr; }.water-access-map { min-height:27rem; }.water-profile-guidance-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width:600px) { .water-profile-page { padding:.75rem; }.water-profile-hero h1 { font-size:clamp(2.5rem,15vw,4rem); }.water-profile-hero-actions,.water-profile-planning,.water-access-actions { display:grid; grid-template-columns:1fr; }.water-profile-hero-actions > *, .water-profile-planning > *, .water-access-actions > * { width:100%; text-align:center; }.water-access-map { min-height:23rem; }.water-access-card dl,.water-profile-guidance-grid { grid-template-columns:1fr; }.water-profile-guidance-grid article { min-width:0; } }
.water-profile-access-layout { align-items:start; }
.water-access-map { height:34rem; }
@media (max-width:950px) { .water-access-map { height:27rem; } }
@media (max-width:600px) { .water-access-map { height:23rem; } }
.tactic-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:1rem; }.tactic-grid small { display:block; min-height:2rem; margin:.7rem 0; color:#60757b; }.species-filters { display:flex; flex-wrap:wrap; align-items:center; gap:.7rem; margin-bottom:1rem; padding:.8rem; border-radius:.7rem; background:#f8f4eb; }.species-filters label { display:flex; align-items:center; gap:.4rem; color:#53686d; font-size:.82rem; }.species-filters select { min-height:2.4rem; border:1px solid rgba(21,39,43,.2); border-radius:.45rem; background:#fff; color:var(--ink); }
@media (max-width:1100px) { :root { --sidebar:4.75rem; }.member-brand-name,.member-nav-label,.member-account-summary,.member-discover-menu { display:none; }.member-brand,.member-nav-item { justify-content:center; padding-inline:.4rem; }.member-nav-caret { display:none; }.sidebar-toggle { display:none; }.member-topbar { grid-template-columns:minmax(12rem,1fr) auto auto auto; }.member-site-header { grid-template-columns:auto minmax(9rem,1fr) auto; }.weather-summary { display:none; }.context-panel { width:min(26rem,48vw); }.map-workspace:has(.context-panel:not([hidden])) .leaflet-bottom.leaflet-right { right:min(26rem,48vw); } }
@media (max-width:1050px) { .species-hero { height:16rem; max-height:16rem; }.species-hero img { inset:0 0 0 32%; width:68%; object-position:center 52%; }.species-hero-overlay { width:48%; padding-block:.85rem; }.species-map-grid,.species-overview-introduction { grid-template-columns:1fr; }.species-overview-introduction { overflow:visible; padding-bottom:0; }.species-overview-pencil-scene { position:relative; grid-column:1; left:auto; right:auto; bottom:auto; width:100%; margin-top:-1.5rem; }.species-overview-notice { position:relative; grid-column:1; right:auto; bottom:auto; left:auto; white-space:normal; }.species-map-grid > aside { max-height:none; }.species-waters-grid .species-water-list,.species-gateway-grid,.tactic-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }.species-map { min-height:27rem; } }
@media (max-width:900px) { .species-map-feature { grid-template-columns:1fr; max-height:none; overflow:visible; }.species-map-feature .species-overview-map { height:22rem; min-height:22rem; max-height:none; }.species-map-feature-panel { min-height:0; max-height:none; padding:1.15rem 0 0; overflow:visible; }.species-overview-water-index { overflow:visible; } }
@media (max-width:760px) { body { overflow:auto; }.member-shell { min-height:100svh; grid-template-columns:4.25rem minmax(0,1fr); }.member-stage { min-height:100svh; grid-template-rows:auto minmax(42rem,1fr); }.member-topbar { grid-template-columns:1fr auto auto; padding:.65rem; }.member-site-header { grid-template-columns:1fr; margin:.4rem; }.member-site-header .member-search { max-width:none; width:100%; }.member-topbar-navigation { flex-wrap:wrap; }.alert-status { grid-column:1/-1; }.account-name,.weather-summary { display:none; }.map-water-label { top:8rem; left:1rem; }.leaflet-top.leaflet-left { top:14rem; left:.5rem; }.return-to-water { top:14rem; left:3.5rem; }.return-to-water span { display:none; }.home-water-card { top:14.5rem; right:1rem; width:min(20rem,calc(100% - 6rem)); }.layer-control { left:50%; right:auto; bottom:1rem; width:auto; height:3rem; transform:translateX(-50%); }.layer-control .layer-strip { display:none; }.layer-control .layer-collapse { min-width:8.4rem; height:3rem; border-right:0; border-radius:.7rem; }.layer-control .active-count { display:inline-flex; }.context-panel { width:min(24rem,calc(100% - 1rem)); } }
@media (max-width:700px) { .species-hero { height:15.5rem; max-height:15.5rem; }.species-hero img { inset:0; width:100%; object-fit:cover; object-position:68% 52%; }.species-hero::after { background:linear-gradient(90deg,rgba(3,22,29,.97) 0%,rgba(3,22,29,.88) 48%,rgba(3,22,29,.32) 78%,rgba(3,22,29,.12) 100%); }.species-hero-overlay { width:78%; padding-block:.75rem; }.species-hero h1,.species-hero h2 { font-size:clamp(2rem,8vw,2.8rem); }.species-hero p { font-size:.82rem; line-height:1.35; }.species-content { padding:1rem; }.species-intro,.species-section-heading { display:block; }.species-main-actions { margin-top:1rem; }.species-waters-grid .species-water-list,.species-gateway-grid,.species-overview-introduction .species-gateway-grid,.tactic-grid,.species-overview-closing { grid-template-columns:1fr; }.species-gateway-card::after { background-size:cover; background-position:right center; }.species-notice-strip { align-items:flex-start; flex-direction:column; }.species-map { min-height:22rem; }.species-pills { padding-inline:.7rem; } }
@media (max-width:700px) { .species-content .species-overview-water-index button { flex-wrap:wrap; }.species-overview-water-index strong { flex:1 1 calc(100% - 1.6rem); }.species-overview-water-index small { flex:0 0 calc(100% - 1.6rem); margin-left:1.6rem; } }
@media (prefers-reduced-motion:reduce) { *,*::before,*::after { scroll-behavior:auto!important; transition-duration:.01ms!important; animation-duration:.01ms!important; }.species-more-content { transform:translate(-50%,0); } }

/* Shared decorative vignette system, including the established overview opening slot. */
.sf-decorative-vignette {
  position: absolute;
  z-index: 0;
  display: block;
  width: var(--sf-vignette-width, 52%);
  height: var(--sf-vignette-height, 100%);
  object-fit: contain;
  object-position: var(--sf-vignette-focal-point, right center);
  opacity: var(--sf-vignette-opacity, .36);
  filter: grayscale(1) contrast(var(--sf-vignette-contrast, 1.14)) brightness(var(--sf-vignette-brightness, 1));
  transform:translate(var(--sf-vignette-translate-x,0),var(--sf-vignette-translate-y,0)) scale(var(--sf-vignette-scale,1));
  pointer-events: none;
  user-select: none;
}
.sf-decorative-vignette--card-right {
  -webkit-mask-image: linear-gradient(90deg,transparent 0%,rgba(0,0,0,.16) 18%,rgba(0,0,0,.78) 43%,#000 68%),radial-gradient(ellipse 94% 88% at 68% 58%,#000 0%,#000 48%,rgba(0,0,0,.72) 67%,rgba(0,0,0,.2) 84%,transparent 100%)!important;
  -webkit-mask-composite: source-in;
  mask-image: linear-gradient(90deg,transparent 0%,rgba(0,0,0,.16) 18%,rgba(0,0,0,.78) 43%,#000 68%),radial-gradient(ellipse 94% 88% at 68% 58%,#000 0%,#000 48%,rgba(0,0,0,.72) 67%,rgba(0,0,0,.2) 84%,transparent 100%)!important;
  mask-composite: intersect;
}
.sf-decorative-vignette--panel-right {
  -webkit-mask-image: linear-gradient(90deg,transparent 0%,rgba(0,0,0,.08) 18%,rgba(0,0,0,.58) 41%,#000 67%),radial-gradient(ellipse 92% 94% at 68% 52%,#000 0%,#000 47%,rgba(0,0,0,.7) 66%,rgba(0,0,0,.18) 84%,transparent 100%)!important;
  -webkit-mask-composite: source-in;
  mask-image: linear-gradient(90deg,transparent 0%,rgba(0,0,0,.08) 18%,rgba(0,0,0,.58) 41%,#000 67%),radial-gradient(ellipse 92% 94% at 68% 52%,#000 0%,#000 47%,rgba(0,0,0,.7) 66%,rgba(0,0,0,.18) 84%,transparent 100%)!important;
  mask-composite: intersect;
}
.sf-decorative-vignette--panel-lower {
  -webkit-mask-image: linear-gradient(180deg,transparent 0%,rgba(0,0,0,.18) 18%,rgba(0,0,0,.78) 44%,#000 68%),radial-gradient(ellipse 94% 90% at 64% 70%,#000 0%,#000 48%,rgba(0,0,0,.68) 68%,transparent 100%)!important;
  -webkit-mask-composite: source-in;
  mask-image: linear-gradient(180deg,transparent 0%,rgba(0,0,0,.18) 18%,rgba(0,0,0,.78) 44%,#000 68%),radial-gradient(ellipse 94% 90% at 64% 70%,#000 0%,#000 48%,rgba(0,0,0,.68) 68%,transparent 100%)!important;
  mask-composite: intersect;
}
.sf-decorative-vignette--card-full {
  -webkit-mask-image: radial-gradient(ellipse 92% 88% at 66% 62%,#000 0%,#000 48%,rgba(0,0,0,.72) 67%,rgba(0,0,0,.16) 86%,transparent 100%)!important;
  mask-image: radial-gradient(ellipse 92% 88% at 66% 62%,#000 0%,#000 48%,rgba(0,0,0,.72) 67%,rgba(0,0,0,.16) 86%,transparent 100%)!important;
}
.species-reports-hero,.species-conditions-briefing,.species-selected-water-feature,
.species-tactics-briefing-refined .species-briefing-areas>section,.species-tactic-card,
.species-current-season-briefing,.species-season-guide { position:relative; overflow:hidden; isolation:isolate; }
.species-tactic-vignette.sf-decorative-vignette { inset:0; width:100%; height:100%; object-fit:cover; opacity:.56; transition:opacity 160ms ease; }
.species-tactic-card[data-tactic-card="wet-fly"] .species-tactic-vignette { object-position:72% 58%; opacity:.5; }
.species-tactic-card[data-tactic-card="dry-fly"] .species-tactic-vignette { object-position:76% 62%; }
.species-tactic-card[data-tactic-card="nymph"] .species-tactic-vignette { object-position:70% 68%; }
.species-tactic-card[data-tactic-card="spinning"] .species-tactic-vignette { object-position:82% 62%; }
.tactic-grid .species-tactic-card:hover .species-tactic-vignette { opacity:.58; }
.tactic-grid .species-tactic-card[data-tactic-card="wet-fly"]:hover .species-tactic-vignette { opacity:.55; }
#pike-species-tactics .species-tactic-vignette.sf-decorative-vignette { opacity:.43; object-position:73% 66%; filter:grayscale(1) contrast(1.17); }
#pike-species-tactics .species-tactic-card[data-tactic-card="lure-fishing"] .species-tactic-vignette { opacity:.46; object-position:73% 66%; }
#pike-species-tactics .species-tactic-card[data-tactic-card="deadbaiting"] .species-tactic-vignette { opacity:.4; object-position:72% 68%; }
#pike-species-tactics .species-tactic-card[data-tactic-card="float-fishing"] .species-tactic-vignette { opacity:.43; object-position:72% 65%; }
#pike-species-tactics .species-tactic-card[data-tactic-card="mobile-searching"] .species-tactic-vignette { opacity:.44; object-position:76% 62%; }
#pike-species-tactics .species-tactic-card:hover .species-tactic-vignette { opacity:.49; }

/* CSS-rendered Season vignettes use the same multi-directional edge dissolution. */
.species-season-status.has-season-status-vignette::before,
.species-current-season-briefing::before,.species-season-timeline-stage-copy::before,.species-season-guide::before {
  -webkit-mask-image: linear-gradient(90deg,transparent 0%,rgba(0,0,0,.18) 20%,#000 58%),radial-gradient(ellipse 94% 90% at 66% 62%,#000 0%,#000 48%,rgba(0,0,0,.68) 68%,transparent 100%)!important;
  -webkit-mask-composite: source-in;
  mask-image: linear-gradient(90deg,transparent 0%,rgba(0,0,0,.18) 20%,#000 58%),radial-gradient(ellipse 94% 90% at 66% 62%,#000 0%,#000 48%,rgba(0,0,0,.68) 68%,transparent 100%)!important;
  mask-composite: intersect;
}
@media (max-width:700px) {
  .catalogue-opening-vignette.sf-decorative-vignette {
    left:-5%;
    right:-5%;
    width:110%;
    opacity:var(--sf-vignette-mobile-opacity,var(--sf-vignette-opacity,.48));
    transform:translate(var(--sf-vignette-mobile-translate-x,var(--sf-vignette-translate-x,0)),var(--sf-vignette-mobile-translate-y,var(--sf-vignette-translate-y,0))) scale(var(--sf-vignette-mobile-scale,var(--sf-vignette-scale,1)));
    -webkit-mask-image:var(--sf-vignette-mobile-mask,var(--sf-vignette-mask,linear-gradient(180deg,transparent 0%,rgba(0,0,0,.12) 18%,rgba(0,0,0,.68) 42%,#000 60%))),radial-gradient(ellipse 96% 96% at 50% 62%,#000 0%,#000 58%,rgba(0,0,0,.72) 76%,transparent 100%)!important;
    -webkit-mask-composite:source-in;
    mask-image:var(--sf-vignette-mobile-mask,var(--sf-vignette-mask,linear-gradient(180deg,transparent 0%,rgba(0,0,0,.12) 18%,rgba(0,0,0,.68) 42%,#000 60%))),radial-gradient(ellipse 96% 96% at 50% 62%,#000 0%,#000 58%,rgba(0,0,0,.72) 76%,transparent 100%)!important;
    mask-composite:intersect;
  }
  .sf-decorative-vignette--card-right,.sf-decorative-vignette--panel-right {
    -webkit-mask-image:linear-gradient(180deg,transparent 0%,rgba(0,0,0,.18) 20%,#000 54%),radial-gradient(ellipse 92% 88% at 68% 68%,#000 0%,#000 46%,rgba(0,0,0,.62) 68%,transparent 100%)!important;
    -webkit-mask-composite:source-in;
    mask-image:linear-gradient(180deg,transparent 0%,rgba(0,0,0,.18) 20%,#000 54%),radial-gradient(ellipse 92% 88% at 68% 68%,#000 0%,#000 46%,rgba(0,0,0,.62) 68%,transparent 100%)!important;
    mask-composite:intersect;
  }
  .species-tactic-vignette.sf-decorative-vignette { opacity:.4; }
  .species-tactic-card[data-tactic-card="wet-fly"] .species-tactic-vignette { opacity:.37; }
  #pike-species-tactics .species-tactic-vignette.sf-decorative-vignette,
  #pike-species-tactics .species-tactic-card:hover .species-tactic-vignette { opacity:.33; }
}
.species-waters-introduction { display:block; max-width:52rem; margin-bottom:.55rem; }.species-waters-introduction h2 { margin:.2rem 0 .35rem; }.species-waters-introduction p { max-width:48rem; margin:0; line-height:1.5; }.species-map-guidance { max-width:48rem; margin:0 0 .8rem; line-height:1.45; }.species-map-secondary { width:100%; height:clamp(27.5rem,32vw,31.25rem); min-height:27.5rem; max-height:31.25rem; }
@media (max-width:700px) { .species-map-secondary { height:clamp(22.5rem,58vh,26.875rem); min-height:22.5rem; max-height:26.875rem; } }
.species-selected-water { display:grid; grid-template-columns:minmax(18rem,1.25fr) minmax(15rem,.9fr) auto; align-items:center; gap:clamp(1rem,2vw,2rem); }.species-selected-water-introduction h2 { margin:.15rem 0 .25rem; }.species-selected-water-introduction > strong { display:block; color:#334e53; font-family:Georgia,serif; font-size:1rem; line-height:1.3; }.species-selected-water-introduction p { margin:.35rem 0 0; font-size:.8rem; line-height:1.5; }.species-selected-water-details dl { display:grid; gap:.35rem; margin:0; }.species-selected-water-details dl div { display:grid; grid-template-columns:4.25rem 1fr; gap:.5rem; }.species-selected-water-details dt { color:#738185; font-size:.65rem; font-weight:800; letter-spacing:.06em; text-transform:uppercase; }.species-selected-water-details dd { margin:0; color:#334e53; font-size:.76rem; font-weight:700; }.species-selected-water-availability { display:flex; flex-wrap:wrap; gap:.3rem; margin-top:.55rem; }.species-selected-water-availability:empty { display:none; }.species-selected-water-availability span { padding:.18rem .4rem; border:1px solid rgba(21,39,43,.14); border-radius:999px; color:#53686d; font-size:.63rem; }.species-selected-water-actions { display:grid; min-width:10.5rem; }.species-selected-water-actions button { width:100%; }.species-content .species-selected-water-actions .tertiary-action { min-height:2.1rem; border-color:transparent; background:transparent; color:#52676d; font-size:.72rem; }
@media (max-width:950px) { .species-selected-water { grid-template-columns:minmax(16rem,1fr) minmax(14rem,1fr); }.species-selected-water-actions { grid-column:1/-1; grid-template-columns:repeat(3,minmax(0,1fr)); } }
@media (max-width:700px) { .species-selected-water { grid-template-columns:1fr; align-items:start; }.species-selected-water-actions { grid-column:auto; grid-template-columns:1fr; width:100%; }.species-selected-water-details dl div { grid-template-columns:4.25rem minmax(0,1fr); } }
.species-selected-water { grid-template-columns:minmax(0,1fr) auto; grid-template-areas:"introduction actions" "details actions"; align-items:center; gap:.45rem clamp(1.25rem,2.5vw,2.5rem); padding:1rem 1.2rem; }.species-selected-water-introduction { grid-area:introduction; }.species-selected-water-introduction p { max-width:54rem; }.species-selected-water-details { grid-area:details; display:flex; flex-wrap:wrap; align-items:center; gap:.45rem .8rem; }.species-selected-water-details dl { display:flex; flex-wrap:wrap; align-items:center; gap:.35rem .85rem; }.species-selected-water-details dl div { display:flex; grid-template-columns:none; align-items:baseline; gap:.28rem; }.species-selected-water-details dt { color:#a67f27; font-size:.67rem; font-weight:700; letter-spacing:.01em; text-transform:none; }.species-selected-water-details dt::after { content:":"; }.species-selected-water-details dd { color:#425a5f; font-size:.74rem; font-weight:650; }.species-selected-water-availability { align-items:center; margin:0; padding-left:.8rem; border-left:1px solid rgba(202,168,91,.42); }.species-selected-water-availability:empty { display:none; }.species-selected-water-actions { grid-area:actions; display:flex; flex-wrap:nowrap; align-items:center; justify-content:flex-end; gap:.45rem; min-width:0; }.species-selected-water-actions button { width:auto; white-space:nowrap; }.species-content .species-selected-water-actions .tertiary-action { padding-inline:.5rem; }
@media (max-width:1050px) { .species-selected-water { grid-template-columns:1fr; grid-template-areas:"introduction" "details" "actions"; }.species-selected-water-actions { grid-column:auto; justify-content:flex-start; flex-wrap:wrap; width:100%; }.species-selected-water-details { margin-top:.15rem; } }
@media (max-width:700px) { .species-selected-water { align-items:start; gap:.75rem; padding:1rem; }.species-selected-water-details { align-items:flex-start; flex-direction:column; gap:.55rem; }.species-selected-water-details dl { align-items:flex-start; flex-direction:column; gap:.35rem; }.species-selected-water-availability { padding:0; border-left:0; }.species-selected-water-actions { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.45rem; }.species-selected-water-actions .primary-action { grid-column:1/-1; }.species-selected-water-actions button { width:100%; white-space:normal; } }
.species-selected-water { display:grid; grid-template-columns:minmax(18rem,38%) minmax(0,62%); grid-template-areas:none; align-items:stretch; gap:0; padding:0; overflow:hidden; border-left-width:4px; background:#f8f4eb; }.species-selected-water-feature { position:relative; isolation:isolate; display:flex; flex-direction:column; justify-content:center; min-height:13.5rem; padding:clamp(1.25rem,2.4vw,2rem); overflow:hidden; border-right:1px solid rgba(202,168,91,.32); background:linear-gradient(135deg,rgba(239,229,205,.92),rgba(248,244,235,.68)),radial-gradient(ellipse at 92% 12%,transparent 0 29%,rgba(166,127,39,.17) 29.5% 30%,transparent 30.5% 38%,rgba(21,39,43,.08) 38.5% 39%,transparent 39.5% 52%,rgba(166,127,39,.12) 52.5% 53%,transparent 53.5%); }.species-selected-water-feature::after { content:"≈"; position:absolute; z-index:-1; right:-.2rem; bottom:-2.2rem; color:rgba(166,127,39,.1); font-family:Georgia,serif; font-size:10rem; line-height:1; transform:rotate(-7deg); }.species-selected-water-feature h2 { margin:.25rem 0 .4rem; font-size:clamp(2rem,3.3vw,3.15rem); line-height:1; }.species-selected-water-feature > strong { display:block; max-width:24rem; color:#334e53; font-family:Georgia,serif; font-size:clamp(1rem,1.45vw,1.3rem); font-weight:600; line-height:1.3; }.species-selected-water-content { display:flex; flex-direction:column; min-width:0; padding:clamp(1.2rem,2.2vw,1.8rem); background:rgba(255,253,248,.52); }.species-selected-water-summary { max-width:50rem; margin:0; color:#425a5f; font-family:Georgia,serif; font-size:clamp(.95rem,1.25vw,1.08rem); line-height:1.55; }.species-selected-water-glance { margin-top:.9rem; }.species-selected-water-glance > .card-kicker { display:block; margin-bottom:.4rem; }.species-selected-water-details { display:flex; flex-wrap:wrap; align-items:center; gap:.5rem .9rem; }.species-selected-water-details dl { display:flex; flex-wrap:wrap; gap:.4rem 1rem; margin:0; }.species-selected-water-details dl div { display:flex; align-items:baseline; gap:.3rem; }.species-selected-water-availability { margin:0; padding-left:.9rem; border-left:1px solid rgba(202,168,91,.42); }.species-selected-water-actions { display:flex; flex-wrap:wrap; align-items:center; justify-content:flex-start; gap:.5rem; width:100%; margin-top:auto; padding-top:1rem; border-top:1px solid rgba(21,39,43,.12); }.species-selected-water-actions button { width:auto; white-space:nowrap; }.species-content .species-selected-water-actions .tertiary-action { margin-left:.15rem; }
@media (max-width:950px) { .species-selected-water { grid-template-columns:minmax(15rem,36%) minmax(0,64%); }.species-selected-water-feature { min-height:12.5rem; padding:1.25rem; }.species-selected-water-content { padding:1.2rem; }.species-selected-water-actions { grid-column:auto; } }
@media (max-width:700px) { .species-selected-water { grid-template-columns:1fr; }.species-selected-water-feature { min-height:10.5rem; border-right:0; border-bottom:1px solid rgba(202,168,91,.32); }.species-selected-water-feature h2 { font-size:clamp(2rem,10vw,2.65rem); }.species-selected-water-content { padding:1rem; }.species-selected-water-details { align-items:flex-start; flex-direction:column; }.species-selected-water-details dl { align-items:flex-start; flex-direction:column; }.species-selected-water-availability { padding-left:0; border-left:0; }.species-selected-water-actions { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); }.species-selected-water-actions .primary-action { grid-column:1/-1; }.species-selected-water-actions button { width:100%; white-space:normal; } }
.species-content .species-selected-water .species-selected-water-actions > button { min-height:2.7rem; padding:.58rem .9rem; border:1px solid rgba(21,39,43,.52); border-radius:.55rem; background:transparent; color:var(--ink); font-family:inherit; font-size:.76rem; font-weight:700; line-height:1.2; transition:background-color .16s ease,border-color .16s ease,color .16s ease,box-shadow .16s ease,transform .1s ease; }
.species-content .species-selected-water .species-selected-water-actions > button.primary-action,.species-content .species-selected-water .species-selected-water-actions > button.tertiary-action { min-height:2.7rem; margin-left:0; padding:.58rem .9rem; border-color:rgba(21,39,43,.52); background:transparent; color:var(--ink); font-size:.76rem; font-weight:700; }
.species-content .species-selected-water .species-selected-water-actions > button:hover { border-color:var(--gold); background:#f3ead6; color:var(--ink); }
.species-content .species-selected-water .species-selected-water-actions > button:focus-visible { outline:3px solid var(--gold); outline-offset:2px; border-color:var(--navy-800); box-shadow:0 0 0 1px rgba(21,39,43,.18); }
.species-content .species-selected-water .species-selected-water-actions > button:active { transform:translateY(1px); border-color:#a67f27; background:#eadfca; box-shadow:inset 0 1px 2px rgba(21,39,43,.12); }
.species-content .species-selected-water .species-selected-water-actions > button.is-active,.species-content .species-selected-water .species-selected-water-actions > button[aria-pressed="true"] { border-color:var(--navy-800); background:var(--navy-800); color:#fff; font-weight:800; box-shadow:inset 0 -3px var(--gold); }
.species-content .species-selected-water .species-selected-water-actions > button:disabled { cursor:not-allowed; border-color:rgba(21,39,43,.18); background:rgba(255,255,255,.32); color:#7b8587; box-shadow:none; opacity:.65; transform:none; }
.species-selected-water-details [data-selected-water-best-known] dd { font-weight:750; }
.species-selected-water-details [data-selected-water-best-known] dd span { color:#a67f27; font-weight:700; }
.species-selected-water { position:relative; isolation:isolate; background:#f8f4eb; }
.species-selected-water-feature { z-index:1; justify-content:flex-start; overflow:visible; padding-top:clamp(1.15rem,1.6vw,1.45rem); border-right:0; background:transparent; }
.species-selected-water-feature::before { content:""; position:absolute; z-index:1; inset:0; pointer-events:none; background:linear-gradient(90deg,rgba(248,244,235,.95) 0%,rgba(248,244,235,.7) 31%,rgba(248,244,235,.12) 58%,transparent 76%); }
.species-selected-water-feature > :not(.species-selected-water-sketch) { position:relative; z-index:2; }
.species-selected-water-feature:has(.species-selected-water-sketch:not([hidden]))::after { opacity:0; }
.species-selected-water-sketch { position:absolute; z-index:0; inset:0 auto 0 0; display:block; width:128%; height:100%; object-fit:cover; object-position:52% 78%; opacity:.48; filter:contrast(1.55); mix-blend-mode:multiply; transform:translate(-8%,12%) scale(1.05); transform-origin:58% 68%; -webkit-mask-image:linear-gradient(90deg,#000 0%,#000 55%,rgba(0,0,0,.78) 66%,rgba(0,0,0,.34) 82%,transparent 100%); mask-image:linear-gradient(90deg,#000 0%,#000 55%,rgba(0,0,0,.78) 66%,rgba(0,0,0,.34) 82%,transparent 100%); pointer-events:none; }
.species-selected-water-content { position:relative; z-index:2; background:transparent; }
@media (max-width:700px) { .species-selected-water-feature { overflow:hidden; padding-top:1.1rem; border-bottom-color:rgba(202,168,91,.18); }.species-selected-water-sketch { width:100%; object-position:52% 74%; opacity:.34; transform:translate(-5%,9%) scale(1.04); -webkit-mask-image:linear-gradient(180deg,#000 0%,#000 58%,rgba(0,0,0,.72) 76%,transparent 100%); mask-image:linear-gradient(180deg,#000 0%,#000 58%,rgba(0,0,0,.72) 76%,transparent 100%); }.species-selected-water-feature::before { background:linear-gradient(90deg,rgba(248,244,235,.93) 0%,rgba(248,244,235,.64) 42%,rgba(248,244,235,.12) 72%,transparent 88%); }.species-selected-water-content { background:transparent; } }
.visually-hidden { position:absolute!important; width:1px!important; height:1px!important; margin:-1px!important; padding:0!important; overflow:hidden!important; clip:rect(0 0 0 0)!important; white-space:nowrap!important; border:0!important; }
.species-waters-heading { max-width:52rem; margin-top:.2rem; }.species-waters-heading h2 { margin:.25rem 0 .35rem; }.species-waters-heading p { margin:0; }
.species-explorer-toolbar { display:grid; gap:.55rem; margin:1rem 0 1.2rem; padding:.82rem; border:1px solid rgba(21,39,43,.14); border-radius:.85rem; background:rgba(248,244,235,.88); box-shadow:0 8px 22px rgba(7,21,27,.05); }
.species-explorer-toolbar-primary { display:grid; grid-template-columns:minmax(16rem,1fr) auto auto auto auto; align-items:end; gap:.65rem; }
.species-explorer-toolbar-secondary { position:relative; display:flex; align-items:center; gap:.65rem; padding-top:.55rem; border-top:1px solid rgba(21,39,43,.1); }
.species-explorer-search { position:relative; display:block; }.species-explorer-search input { width:100%; min-height:2.65rem; padding:.58rem 2.6rem .58rem .8rem; border:1px solid rgba(21,39,43,.3); border-radius:.55rem; background:#fffdf8; color:var(--ink); font:inherit; font-size:.82rem; }.species-explorer-search input:focus-visible,.species-explorer-select select:focus-visible { outline:3px solid var(--gold); outline-offset:2px; border-color:var(--navy-800); }.species-explorer-search button { position:absolute; top:50%; right:.35rem; width:2rem; min-height:2rem; padding:0; transform:translateY(-50%); border-color:transparent; border-radius:50%; background:transparent; font-size:1rem; }
.species-water-autocomplete { position:absolute; z-index:30; top:calc(100% + .35rem); left:0; width:100%; max-height:18rem; overflow-y:auto; border:1px solid rgba(21,39,43,.18); border-radius:.65rem; background:#fffdf8; box-shadow:0 14px 32px rgba(7,21,27,.16); }.species-water-autocomplete[hidden] { display:none; }.species-explorer-search .species-water-autocomplete button { position:static; width:100%; min-height:0; display:grid; gap:.12rem; padding:.65rem .8rem; transform:none; border:0; border-bottom:1px solid rgba(21,39,43,.1); border-radius:0; background:transparent; color:var(--ink); text-align:left; }.species-explorer-search .species-water-autocomplete button:last-child { border-bottom:0; }.species-explorer-search .species-water-autocomplete button:hover,.species-explorer-search .species-water-autocomplete button[aria-selected="true"] { background:#f3ead6; }.species-water-autocomplete strong { font-family:Georgia,serif; font-size:.9rem; }.species-water-autocomplete small { color:#64767a; font-size:.68rem; }.species-view-on-map { min-height:2.65rem; white-space:nowrap; }.species-view-on-map:disabled { cursor:not-allowed; opacity:.45; }
.species-explorer-toolbar output { min-width:7.5rem; padding:.65rem .3rem; color:#425a5f; font-size:.78rem; font-weight:800; white-space:nowrap; }
.species-explorer-select { display:grid; gap:.25rem; color:#53686d; font-size:.68rem; font-weight:750; }.species-explorer-select select { min-height:2.65rem; padding:.5rem 2rem .5rem .65rem; border:1px solid rgba(21,39,43,.26); border-radius:.55rem; background:#fffdf8; color:var(--ink); font:inherit; font-size:.76rem; }
.species-explorer-advanced { position:absolute; z-index:20; top:calc(100% + .45rem); right:0; width:min(34rem,100%); display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:.65rem; padding:.85rem; border:1px solid rgba(21,39,43,.18); border-radius:.7rem; background:#fffdf8; box-shadow:0 14px 32px rgba(7,21,27,.14); }.species-explorer-advanced[hidden] { display:none; }
.species-water-filter-chips { display:flex; flex-wrap:wrap; gap:.4rem; margin-right:auto; }.species-water-filter-chips button { min-height:2.65rem; border-radius:999px; background:#fffdf8; font-size:.73rem; }.species-water-filter-chips button[aria-pressed="true"] { border-color:var(--gold); box-shadow:inset 0 -3px var(--gold); background:var(--navy-800); color:#fff; font-weight:800; }.species-water-filter-chips button[aria-pressed="true"]::before { content:"\2713"; margin-right:.35rem; }.species-water-filter-chips button:disabled { cursor:not-allowed; opacity:.48; }
.species-water-filter-chips [data-species-more-filters][aria-expanded="true"] { border-color:var(--gold); font-weight:800; }.species-active-filters { display:flex; flex-wrap:wrap; gap:.4rem; }.species-active-filters:empty { display:none; }.species-active-filters button { min-height:2rem; padding:.32rem .65rem; border-color:rgba(202,168,91,.62); border-radius:999px; background:#fffdf8; color:#52676d; font-size:.7rem; }.species-active-filters button:hover { border-color:var(--gold); color:var(--ink); }
.species-clear-filters { min-height:2.65rem; border-color:transparent!important; background:transparent!important; color:#52676d!important; font-size:.73rem; text-decoration:underline; text-underline-offset:.2rem; }
.species-explorer-empty { margin:-.2rem 0 1rem; padding:1rem; border-left:3px solid var(--gold); background:#f8f4eb; }.species-explorer-empty p { margin:0 0 .65rem; color:#53686d; }.species-explorer-empty button { background:transparent; }
.species-results-heading { display:flex; align-items:baseline; justify-content:space-between; gap:1rem; margin-top:.25rem; }.species-results-heading h2 { margin:.2rem 0 .8rem; font-size:clamp(1.45rem,2vw,1.9rem); }.species-results-heading output { color:#53686d; font-size:.78rem; font-weight:800; white-space:nowrap; }.species-selected-outside-filters { margin:-.55rem 0 .9rem; padding:.5rem .75rem; border-left:3px solid var(--gold); background:#f8f4eb; color:#53686d; font-size:.74rem; }.species-water-marker.is-filtered-out { filter:saturate(.35); }
.species-results-heading > div { min-width:0; }.species-results-heading > div h2 { margin-bottom:.25rem; }.species-results-heading > div p { max-width:48rem; margin:0 0 .8rem; color:#53686d; font-size:.76rem; line-height:1.45; }
.species-waters-grid .species-water-list { grid-auto-rows:1fr; }.species-waters-grid .species-water-card { height:15rem; min-height:0; display:flex; justify-content:flex-start; gap:.5rem; padding:.9rem 1rem; }.species-water-card header { min-width:0; }.species-water-card h3 { margin:.12rem 0 .2rem; font-size:1.22rem; line-height:1.15; }.species-water-classification { display:block; color:#334e53; font-family:Georgia,serif; font-size:.78rem; line-height:1.3; }.species-water-summary { display:-webkit-box; margin:0; overflow:hidden; color:#53686d; font-size:.74rem; line-height:1.45; -webkit-box-orient:vertical; -webkit-line-clamp:2; }.species-water-facts { display:flex; flex-wrap:wrap; gap:.15rem .4rem; color:#53686d; font-size:.66rem; line-height:1.3; }.species-water-facts span + span::before { content:"\00b7"; margin-right:.4rem; color:var(--gold); }.species-water-availability { display:flex; flex-wrap:wrap; gap:.25rem; }.species-water-availability span { padding:.16rem .36rem; border:1px solid rgba(21,39,43,.14); border-radius:999px; color:#60757b; font-size:.61rem; line-height:1.25; }.species-waters-grid .species-card-actions { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.4rem; margin-top:auto; padding-top:.55rem; border-top:1px solid rgba(21,39,43,.1); }.species-waters-grid .species-card-actions button { min-height:2.25rem; padding:.4rem .55rem; font-size:.69rem; }.species-waters-grid .species-card-actions .primary-action { border-color:rgba(202,168,91,.78); background:#f3ead6; color:var(--ink); }.species-waters-grid .species-water-card.is-selected { border-left-width:4px; box-shadow:0 0 0 2px rgba(202,168,91,.2); }.species-waters-grid .species-water-card.is-selected::after { content:"Selected"; position:absolute; top:.65rem; right:.7rem; color:#826719; font-size:.58rem; font-weight:800; letter-spacing:.06em; text-transform:uppercase; }.species-waters-grid .species-water-card { position:relative; }.species-results-pagination { display:flex; grid-column:1/-1; justify-content:center; flex-wrap:wrap; gap:.3rem; margin:.2rem 0 .5rem; }.species-results-pagination[hidden] { display:none; }.species-results-pagination button { min-width:2.15rem; min-height:2.15rem; padding:.3rem .55rem; border-radius:.45rem; background:transparent; color:#52676d; font-size:.7rem; }.species-results-pagination button[aria-current="page"] { border-color:var(--gold); background:var(--navy-800); color:#fff; font-weight:800; }.species-results-pagination button:disabled { cursor:not-allowed; opacity:.4; }
.species-tactics-briefing-refined { padding:1rem 1.15rem; }.species-tactics-briefing-refined > header { display:block; padding-bottom:.5rem; }.species-tactics-briefing-refined > header h2 { margin:.12rem 0 .18rem; }.species-tactics-briefing-refined .species-briefing-freshness { margin:0; }.species-briefing-starting-point { margin:.65rem 0; padding:.6rem .75rem; border-left:3px solid var(--gold); background:rgba(239,229,205,.55); }.species-briefing-starting-point p { margin:.22rem 0 0; color:#334e53; font-family:Georgia,serif; font-size:.94rem; font-weight:600; line-height:1.45; }.species-tactics-briefing-refined > .species-briefing-summary { margin:.6rem 0 .7rem; font-size:.88rem; line-height:1.45; }.species-tactics-briefing-refined .species-briefing-areas > section { padding:.55rem .75rem; }.species-tactics-briefing-refined .species-briefing-areas > section:nth-child(odd) { padding-left:0; }.species-tactics-briefing-refined .species-briefing-areas > section:nth-child(even) { padding-right:0; }.species-tactics-briefing-refined .species-briefing-areas p { margin:.2rem 0; font-size:.72rem; line-height:1.4; }.species-tactics-briefing-refined .species-briefing-areas small { font-size:.61rem; }.species-briefing-recommendations { padding:.65rem 0 .35rem; }.species-tactics-briefing-refined .species-briefing-approaches { display:block; margin-top:.25rem; }.species-tactics-briefing-refined .species-briefing-approaches button { width:100%; max-width:none; display:grid; grid-template-columns:minmax(5rem,.55fr) minmax(14rem,2.2fr) auto auto; align-items:center; gap:.5rem; padding:.42rem .2rem; border:0; border-bottom:1px solid rgba(21,39,43,.1); border-radius:0; background:transparent; }.species-tactics-briefing-refined .species-briefing-approaches button:last-child { border-bottom:0; }.species-tactics-briefing-refined .species-briefing-approaches button span { font-size:.67rem; }.species-tactics-briefing-refined .species-briefing-approaches button small { white-space:nowrap; }.species-tactics-briefing-refined .species-briefing-approaches button em { color:#52676d; font-size:.65rem; font-style:normal; font-weight:800; white-space:nowrap; }.species-briefing-rules { display:grid; grid-template-columns:auto minmax(0,1fr) auto; align-items:baseline; gap:.35rem .7rem; padding:.55rem 0; border-top:1px solid rgba(21,39,43,.1); }.species-briefing-rules p { margin:0; color:#53686d; font-size:.7rem; line-height:1.4; }.species-briefing-rules small { color:#826719; font-size:.61rem; font-weight:700; }.species-tactics-briefing-refined > footer { padding-top:.55rem; }.species-tactics-briefing-refined .species-briefing-actions button { background:transparent; }.species-tactic-consideration[hidden] { display:none!important; }
.species-tactics-briefing-refined .species-briefing-areas > section:last-child { grid-column:auto; padding:.55rem 0 .55rem .75rem; border-bottom:0; }
.species-tactics-briefing-refined { display:grid; grid-template-columns:minmax(0,1.2fr) minmax(18rem,.8fr); column-gap:.8rem; }.species-tactics-briefing-refined > header,.species-tactics-briefing-refined > .species-briefing-areas,.species-tactics-briefing-refined > .species-briefing-recommendations,.species-tactics-briefing-refined > .species-briefing-rules,.species-tactics-briefing-refined > footer { grid-column:1/-1; }.species-tactics-briefing-refined > .species-briefing-starting-point { grid-column:1; margin:.65rem 0; }.species-tactics-briefing-refined > .species-briefing-summary { grid-column:2; align-self:center; margin:.65rem 0; padding-left:.8rem; border-left:1px solid rgba(21,39,43,.1); }
.species-tactics-briefing-refined > .species-briefing-summary { font-size:.78rem; line-height:1.35; }.species-tactics-briefing-refined .species-briefing-areas > section,.species-tactics-briefing-refined .species-briefing-areas > section:last-child { padding-block:.35rem; }.species-tactics-briefing-refined .species-briefing-areas p { font-size:.68rem; line-height:1.32; }.species-tactics-briefing-refined > .species-briefing-recommendations { padding:.45rem 0 .2rem; }.species-tactics-briefing-refined .species-briefing-approaches button { padding:.28rem .2rem; }.species-tactics-briefing-refined > footer { padding-top:.35rem; }.species-tactics-briefing-refined .species-briefing-actions button { min-height:2.2rem; padding:.4rem .65rem; }
body .species-waters-grid .species-water-card { height:13.75rem; }
.species-waters-grid .species-water-card[hidden] { display:none!important; }
.species-tactics-briefing { margin:0 0 1.2rem; padding:clamp(1.15rem,2.2vw,1.7rem); border:1px solid rgba(21,39,43,.14); border-left:4px solid var(--gold); border-radius:.8rem; background:#f8f4eb; color:var(--ink); }.species-tactics-briefing > header { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:end; gap:.2rem 1rem; padding-bottom:.75rem; border-bottom:1px solid rgba(21,39,43,.12); }.species-tactics-briefing > header .card-kicker { grid-column:1/-1; }.species-tactics-briefing h2 { margin:.2rem 0 0; font-size:clamp(1.55rem,2.4vw,2.15rem); }.species-briefing-freshness { margin:0; color:#60757b; font-size:.72rem; font-weight:700; }.species-briefing-summary { max-width:68rem; margin:.9rem 0 1rem; color:#425a5f; font-family:Georgia,serif; font-size:clamp(.96rem,1.25vw,1.08rem); line-height:1.6; }.species-briefing-areas { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); border-block:1px solid rgba(21,39,43,.1); }.species-briefing-areas > section { min-width:0; padding:.85rem 1rem; border-bottom:1px solid rgba(21,39,43,.1); }.species-briefing-areas > section:nth-child(odd) { padding-left:0; border-right:1px solid rgba(21,39,43,.1); }.species-briefing-areas > section:nth-child(even) { padding-right:0; }.species-briefing-areas > section:last-child { grid-column:1/-1; padding-inline:0; border-right:0; border-bottom:0; }.species-briefing-areas p { margin:.3rem 0; color:#53686d; font-size:.77rem; line-height:1.5; }.species-briefing-areas small { color:#826719; font-size:.65rem; font-weight:700; }.species-briefing-approaches { display:flex; flex-wrap:wrap; gap:.4rem; margin-top:.55rem; }.species-briefing-approaches:empty { display:none; }.species-briefing-approaches button { max-width:26rem; display:grid; gap:.12rem; padding:.5rem .65rem; border-color:rgba(202,168,91,.55); background:#fffdf8; color:var(--ink); text-align:left; }.species-briefing-approaches button span { color:#53686d; font-size:.68rem; line-height:1.4; }.species-briefing-approaches button small { color:#826719; font-size:.61rem; }.species-tactics-briefing > footer { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:.75rem 1rem; padding-top:.9rem; }.species-briefing-sources,.species-briefing-actions { display:flex; align-items:center; flex-wrap:wrap; gap:.4rem .7rem; }.species-briefing-sources { color:#60757b; font-size:.66rem; }.species-briefing-sources strong { color:#826719; }.species-briefing-actions button { min-height:2.35rem; padding:.45rem .75rem; background:transparent; font-size:.71rem; }.species-tactic-consideration { display:inline-block; margin-bottom:.35rem; color:#826719; font-size:.62rem; font-weight:800; letter-spacing:.05em; text-transform:uppercase; }.tactic-grid .species-panel-card.is-worth-considering { border-color:rgba(202,168,91,.7); box-shadow:inset 0 3px var(--gold); }
@media (max-width:700px) { .species-tactics-briefing > header { grid-template-columns:1fr; align-items:start; }.species-briefing-areas { grid-template-columns:1fr; }.species-briefing-areas > section,.species-briefing-areas > section:nth-child(odd),.species-briefing-areas > section:nth-child(even),.species-briefing-areas > section:last-child { grid-column:auto; padding:.8rem 0; border-right:0; border-bottom:1px solid rgba(21,39,43,.1); }.species-briefing-areas > section:last-child { border-bottom:0; }.species-tactics-briefing > footer,.species-briefing-actions { align-items:stretch; flex-direction:column; }.species-briefing-actions button { width:100%; }.species-briefing-approaches button { width:100%; max-width:none; } }
@media (max-width:1050px) { body .species-explorer-toolbar-primary { grid-template-columns:minmax(15rem,1fr) auto auto auto; } }
@media (max-width:700px) { body .species-explorer-toolbar-primary { grid-template-columns:1fr auto; }.species-view-on-map { grid-column:1/-1; justify-self:start; }.species-water-autocomplete { max-width:calc(100vw - 6.5rem); }.species-results-heading { align-items:flex-start; flex-direction:column; gap:0; } }
@media (max-width:700px) { .species-tactics-briefing-refined .species-briefing-approaches button { grid-template-columns:1fr; gap:.15rem; padding:.55rem 0; }.species-briefing-rules { grid-template-columns:1fr; gap:.2rem; }.species-tactics-briefing-refined .species-briefing-sources { line-height:1.5; } }
@media (max-width:700px) { .species-tactics-briefing-refined { display:block; }.species-tactics-briefing-refined > .species-briefing-summary { margin:.55rem 0 .7rem; padding-left:0; border-left:0; } }

/* Shared species tactics content framework. */
.species-tactics-water-contexts {
  grid-column:1/-1;
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(12rem,1fr));
  gap:.65rem 1rem;
  padding:.8rem 0;
  border-top:1px solid rgba(21,39,43,.1);
}
.species-tactics-water-contexts section { min-width:0; }
.species-tactics-water-contexts p { margin:.2rem 0 0; color:#53686d; font-size:.76rem; line-height:1.5; }
.species-tactics-reading-grid {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:0;
  margin-top:1rem;
  border-block:1px solid rgba(21,39,43,.12);
}
.species-tactics-reading-grid>section { padding:1rem; }
.species-tactics-reading-grid>section:nth-child(odd) { padding-left:0; border-right:1px solid rgba(21,39,43,.1); }
.species-tactics-reading-grid>section:nth-child(-n+2) { border-bottom:1px solid rgba(21,39,43,.1); }
.species-tactics-reading-grid p,.species-tactics-reading-grid ul { margin:.35rem 0 0; color:#53686d; font-size:.78rem; line-height:1.55; }
.species-tactics-reading-grid ul,.species-tactics-awareness-card ul { padding-left:1.1rem; }
.species-tactics-awareness-card { cursor:default; }
[data-tactics-mode="conservation"]>.tactic-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
@media (max-width:700px) {
  .species-tactics-water-contexts,.species-tactics-reading-grid,[data-tactics-mode="conservation"]>.tactic-grid { grid-template-columns:1fr; }
  .species-tactics-reading-grid>section,.species-tactics-reading-grid>section:nth-child(odd) { padding:.8rem 0; border-right:0; border-bottom:1px solid rgba(21,39,43,.1); }
  .species-tactics-reading-grid>section:last-child { border-bottom:0; }
}

/* Shared routed species + season field guide. */
[data-shared-season-page]>.species-section-heading { margin-bottom:1rem; }
[data-shared-season-page] .species-season-timeline { margin-bottom:1.2rem; }
[data-shared-season-page] .species-season-timeline ol { grid-template-columns:repeat(4,minmax(0,1fr)); }
[data-shared-season-page] .species-season-timeline-stage-copy { width:100%; text-align:left; }
[data-shared-season-page] .species-season-timeline-stage-copy[aria-pressed="true"] { background:rgba(239,229,205,.72); border-color:rgba(202,168,91,.58); }
.species-season-field-guide { overflow:hidden; border:1px solid rgba(21,39,43,.14); border-radius:.85rem; background:#fbf8f0; }
.species-season-field-guide>header { padding:clamp(1.25rem,3vw,2.25rem); border-bottom:1px solid rgba(21,39,43,.1); background:linear-gradient(135deg,rgba(239,229,205,.7),rgba(251,248,240,.25)); }
.species-season-field-guide>header h2 { margin:.35rem 0 .65rem; font-size:clamp(1.8rem,3vw,2.7rem); }
.species-season-field-guide>header p { max-width:60rem; margin:0; color:#425a5f; font-family:Georgia,serif; font-size:clamp(1rem,1.35vw,1.14rem); line-height:1.68; }
.species-season-status-text { display:inline-block; margin-left:.55rem; color:#6f5a20; font-size:.68rem; font-weight:800; letter-spacing:.04em; text-transform:uppercase; }
.species-season-guide-body { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); padding:clamp(1rem,2.5vw,1.8rem); gap:0 2rem; }
.species-season-guide-body>section { padding:1rem 0; border-bottom:1px solid rgba(21,39,43,.1); }
.species-season-guide-body>section:nth-last-child(-n+2) { border-bottom:0; }
.species-season-guide-body h3 { margin:0 0 .45rem; font-size:1.08rem; }
.species-season-guide-body h4 { margin:.35rem 0 .2rem; font-size:.86rem; }
.species-season-guide-body p,.species-season-guide-body ul { margin:.25rem 0 0; color:#4d6469; font-size:.86rem; line-height:1.62; }
.species-season-guide-body ul { padding-left:1.1rem; }
.species-season-guide-body article+article { margin-top:.65rem; }
.species-season-water-notes { display:grid; gap:.55rem; }
.species-season-water-notes article { padding-left:.7rem; border-left:2px solid rgba(202,168,91,.55); }
.species-season-field-guide>footer { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center; gap:1rem 2rem; padding:1.1rem clamp(1rem,2.5vw,1.8rem); border-top:1px solid rgba(21,39,43,.11); background:#f6f0e3; }
.species-season-field-guide>footer p { max-width:52rem; margin:.25rem 0; color:#425a5f; line-height:1.55; }
.species-season-field-guide>footer small { color:#6f5a20; font-weight:700; }
.species-season-guide-actions { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:.55rem; }
.species-season-guide-actions button { min-height:2.65rem; }
[data-season-legal-state="closed-or-restricted"] .species-season-status-text,[data-season-legal-state="conservation-only"] .species-season-status-text { color:#7b5532; }
@media (max-width:900px) {
  .species-season-guide-body { grid-template-columns:1fr; }
  .species-season-guide-body>section,.species-season-guide-body>section:nth-last-child(-n+2) { border-bottom:1px solid rgba(21,39,43,.1); }
  .species-season-guide-body>section:last-child { border-bottom:0; }
  .species-season-field-guide>footer { grid-template-columns:1fr; }
  .species-season-guide-actions { justify-content:flex-start; }
}

/* Shared species Reports & Conditions regional gateway. */
.species-reports-gateway { overflow:clip; }
.species-reports-gateway .species-reports-introduction { max-width:58rem; margin-bottom:1.25rem; }
.species-report-region-grid,.species-report-water-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:.9rem; }
.species-report-region-card,.species-report-water-card { min-width:0; padding:1rem; border:1px solid rgba(21,39,43,.14); border-radius:.75rem; background:#fbf8f0; text-align:left; }
.species-report-region-card { cursor:pointer; transition:background .18s ease,border-color .18s ease,transform .18s ease; }
.species-report-region-card:hover { border-color:rgba(202,168,91,.72); background:#f7efde; transform:translateY(-1px); }
.species-report-region-card:focus-visible,.species-report-water-card button:focus-visible,.species-report-detail button:focus-visible,.species-report-region>header button:focus-visible { outline:3px solid rgba(16,77,83,.45); outline-offset:3px; }
.species-report-region-card h3,.species-report-water-card h3 { margin:.3rem 0 .45rem; }
.species-report-region-card p,.species-report-water-card p { margin:.25rem 0 .75rem; color:#4d6469; line-height:1.55; }
.species-report-region-card strong { color:#715b22; font-size:.74rem; text-transform:uppercase; letter-spacing:.04em; }
.species-report-region>header { max-width:60rem; margin-bottom:1rem; }
.species-report-region>header>button,.species-report-detail>header>button { margin-bottom:.8rem; border:0; background:transparent; color:#31565b; padding:0; }
.species-report-water-card { display:flex; flex-direction:column; align-items:flex-start; }
.species-report-water-card header { display:flex; width:100%; justify-content:space-between; gap:.75rem; }
.species-report-water-card header strong { flex:none; color:#755d27; font-size:.7rem; }
.species-report-water-card small { margin-top:auto; color:#68777a; }
.species-report-water-card>button { margin-top:.75rem; }
.species-report-detail { border:1px solid rgba(21,39,43,.14); border-radius:.85rem; background:#fbf8f0; }
.species-report-detail>header { padding:clamp(1rem,2.5vw,1.8rem); border-bottom:1px solid rgba(21,39,43,.1); }
.species-report-detail>header h2 { margin:.25rem 0; }
.species-report-detail-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 1.5rem; padding:clamp(1rem,2.5vw,1.8rem); }
.species-report-detail-grid>section { padding:.85rem 0; border-bottom:1px solid rgba(21,39,43,.1); }
.species-report-detail-grid h3 { margin:.25rem 0 .5rem; }
.species-report-detail-grid p,.species-report-detail-grid li { color:#4d6469; line-height:1.58; }
.species-report-detail-grid dl { display:flex; flex-wrap:wrap; gap:.65rem 1.25rem; }
.species-report-detail-grid dt { color:#806a32; font-size:.68rem; font-weight:800; text-transform:uppercase; }
.species-report-detail-grid dd { margin:.15rem 0 0; }
.species-report-detail>footer,.species-report-region-actions { display:flex; flex-wrap:wrap; gap:.55rem; padding:1rem clamp(1rem,2.5vw,1.8rem); border-top:1px solid rgba(21,39,43,.1); background:#f6f0e3; }
@media (max-width:900px) { .species-report-region-grid,.species-report-water-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width:650px) { .species-report-region-grid,.species-report-water-grid,.species-report-detail-grid { grid-template-columns:1fr; } .species-report-detail>footer button,.species-report-region-actions button { width:100%; } }
@media (prefers-reduced-motion:reduce) { .species-report-region-card { transition:none; } }
@media (max-width:700px) {
  [data-shared-season-page] .species-season-timeline ol { grid-template-columns:1fr; }
  .species-season-field-guide>header,.species-season-guide-body,.species-season-field-guide>footer { padding:1rem; }
  .species-season-guide-actions,.species-season-guide-actions button { width:100%; }
}

/* Shared species Waters composition: balanced map and selected-water feature. */
.shared-species-waters-page .species-explorer-toolbar-secondary[hidden] { display:none; }
.shared-water-type-filters { flex-wrap:wrap; }
.shared-water-type-filters button { min-height:2.35rem; padding:.42rem .72rem; border-radius:999px; background:#fffdf8; font-size:.71rem; }
.shared-water-type-filters button[aria-pressed="true"] { border-color:var(--gold); background:var(--navy-800); color:#fff; font-weight:800; }
.shared-water-type-filters button:focus-visible { outline:3px solid var(--gold); outline-offset:2px; }
.shared-species-water-card .species-card-actions[data-shared-card-actions="3"] { grid-template-columns:repeat(3,minmax(0,1fr)); }
.shared-species-waters-empty {
  min-height:clamp(15rem,24vw,19rem);
  display:grid;
  grid-template-columns:minmax(0,1.35fr) minmax(15rem,.65fr);
  align-items:end;
  gap:clamp(1.25rem,3vw,3rem);
  margin:.25rem 0 1.5rem;
  padding:clamp(1.5rem,3.2vw,2.8rem);
  border:1px solid rgba(21,39,43,.14);
  border-left:4px solid var(--gold);
  border-radius:1rem;
  background:linear-gradient(120deg,#fffdf8 0%,#f8f2e5 100%);
}
.shared-species-waters-empty h2 { max-width:40rem; margin:.35rem 0 .7rem; font-size:clamp(1.65rem,2.6vw,2.35rem); }
.shared-species-waters-empty p { max-width:46rem; margin:0; color:#53686d; font-family:Georgia,serif; font-size:clamp(.94rem,1.2vw,1.05rem); line-height:1.6; }
.shared-species-waters-empty .shared-species-waters-empty-note { padding-top:.85rem; border-top:1px solid rgba(202,168,91,.45); font-family:inherit; font-size:.78rem; line-height:1.5; }
@media (min-width:1051px) {
  .species-waters-map {
    grid-template-columns:minmax(0,1fr) minmax(0,1fr);
    align-items:stretch;
    column-gap:clamp(1rem,1.8vw,1.4rem);
  }
  .species-waters-map > .species-map-secondary,
  .species-waters-map > .species-selected-water {
    width:100%;
    height:31rem;
    min-height:31rem;
    max-height:31rem;
  }
  .species-waters-map > .species-map-secondary { grid-column:1; }
  .species-waters-map > .species-selected-water {
    grid-column:2;
    display:flex;
    flex-direction:column;
    align-items:stretch;
    justify-content:space-between;
    overflow:hidden;
  }
  .species-waters-map > .species-selected-water:has(.species-selected-water-feature) {
    display:grid;
    grid-template-columns:1fr;
    grid-template-rows:minmax(10.5rem,42%) minmax(0,58%);
  }
  .species-waters-map > .species-selected-water .species-selected-water-feature {
    min-height:0;
    padding:clamp(1.15rem,1.8vw,1.55rem);
    overflow:hidden;
  }
  .species-waters-map > .species-selected-water .species-selected-water-feature h2 {
    font-size:clamp(1.9rem,2.5vw,2.65rem);
  }
  .species-waters-map > .species-selected-water .species-selected-water-content {
    min-height:0;
    padding:clamp(1rem,1.5vw,1.3rem);
  }
  .species-waters-map > .species-selected-water .species-selected-water-summary {
    font-size:clamp(.9rem,1vw,1rem);
    line-height:1.48;
  }
  .species-waters-map > .species-selected-water .species-selected-water-actions {
    padding-top:.75rem;
  }
  .species-waters-map > :not(.species-map-secondary):not(.species-selected-water) {
    grid-column:1/-1;
  }
}

@media (max-width:1050px) {
  .species-waters-map { grid-template-columns:1fr; }
  .species-waters-map > .species-map-secondary {
    height:clamp(25rem,52vw,29rem);
    min-height:25rem;
    max-height:29rem;
  }
  .species-waters-map > .species-selected-water {
    width:100%;
    height:auto;
    min-height:0;
    max-height:none;
  }
}

@media (max-width:700px) {
  .shared-species-water-card .species-card-actions[data-shared-card-mobile-stack="true"] { grid-template-columns:1fr; }
  .shared-species-waters-empty { min-height:0; grid-template-columns:1fr; align-items:start; gap:1.25rem; padding:1.35rem; }
  .species-waters-map > .species-map-secondary {
    height:clamp(22.5rem,58vh,25rem);
    min-height:22.5rem;
    max-height:25rem;
  }
  .species-waters-map > .species-selected-water .species-selected-water-actions,
  .species-waters-map > .species-selected-water > .species-card-actions {
    width:100%;
  }
}

/* Current tactics briefing: calm editorial composition. */
.species-tactics-briefing-refined {
  display: block;
  scroll-margin-top: 5.5rem;
  padding: clamp(1.25rem, 2.4vw, 1.8rem);
}

.species-tactics-briefing-refined > header {
  display: block;
  padding-bottom: 0.9rem;
}

.species-tactics-briefing-refined > header h2 {
  margin: 0.25rem 0 0.35rem;
}

.species-tactics-briefing-refined .species-briefing-freshness {
  margin: 0;
  color: #60757b;
  font-size: 0.72rem;
  font-weight: 700;
}

.species-tactics-briefing-refined > .species-briefing-starting-point {
  margin: 1rem 0 0.75rem;
  padding: 0.9rem 1rem;
  border-left: 3px solid var(--gold);
  background: rgba(239, 229, 205, 0.52);
}

.species-tactics-briefing-refined .species-briefing-starting-point p {
  max-width: 68rem;
  margin: 0.3rem 0 0;
  font-size: clamp(0.96rem, 1.2vw, 1.05rem);
  line-height: 1.55;
}

.species-tactics-briefing-refined > .species-briefing-summary {
  max-width: 66rem;
  margin: 0 0 1.1rem;
  padding: 0;
  border-left: 0;
  font-size: clamp(0.92rem, 1.1vw, 1rem);
  line-height: 1.6;
}

.species-tactics-briefing-refined .species-briefing-areas {
  gap: 0;
  border-block: 1px solid rgba(21, 39, 43, 0.1);
}

.species-tactics-briefing-refined .species-briefing-areas > section,
.species-tactics-briefing-refined .species-briefing-areas > section:last-child {
  grid-column: auto;
  padding: 1rem 1.15rem;
  border-right: 0;
  border-bottom: 1px solid rgba(21, 39, 43, 0.08);
}

.species-tactics-briefing-refined .species-briefing-areas > section:nth-child(odd) {
  padding-left: 0;
  padding-right: 1.15rem;
}

.species-tactics-briefing-refined .species-briefing-areas > section:nth-child(even) {
  padding-left: 1.15rem;
  padding-right: 0;
}

.species-tactics-briefing-refined .species-briefing-areas > section:nth-last-child(-n + 2) {
  border-bottom: 0;
}

.species-tactics-briefing-refined .species-briefing-areas p {
  margin: 0.35rem 0 0.3rem;
  font-size: 0.78rem;
  line-height: 1.55;
}

.species-tactics-briefing-refined .species-briefing-areas small {
  display: block;
  margin-top: 0.2rem;
  font-size: 0.65rem;
}

.species-tactics-briefing-refined > .species-briefing-recommendations {
  padding: 0.75rem 0 0.55rem;
}

.species-tactics-briefing-refined .species-briefing-approaches {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.45rem;
  margin-top: 0.35rem;
}

.species-tactics-briefing-refined .species-briefing-approaches button {
  width: 100%;
  max-width: none;
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 0.16rem 0.5rem;
  align-items: start;
  padding: 0.5rem 0.6rem;
  border: 1px solid rgba(202, 168, 91, 0.28);
  border-radius: 0.4rem;
  background: rgba(255, 253, 248, 0.42);
}

.species-linked-panel {
  cursor: pointer;
  box-shadow: none;
  transition: background-color 160ms ease, border-color 160ms ease, box-shadow 160ms ease, transform 160ms ease;
}

.species-tactics-briefing-refined .species-briefing-approaches button.species-linked-panel:last-child {
  border: 1px solid rgba(202, 168, 91, 0.28);
}

.species-linked-panel:hover {
  border-color: rgba(190, 145, 42, 0.78);
  background: #f8efd9;
  box-shadow: 0 0.3rem 0.8rem rgba(21, 39, 43, 0.08);
  transform: translateY(-1px);
}

.species-linked-panel:focus-visible {
  outline: 3px solid rgba(190, 145, 42, 0.52);
  outline-offset: 3px;
  border-color: #8a681c;
}

.species-linked-panel:active {
  border-color: #8a681c;
  background: #f1e3c2;
  box-shadow: none;
  transform: translateY(0);
}

@media (prefers-reduced-motion: reduce) {
  .species-linked-panel {
    transition: none;
  }

  .species-linked-panel:hover,
  .species-linked-panel:active {
    transform: none;
  }
}

/* Pike tactics artwork is tuned independently so the Brown Trout template remains unchanged. */
#pike-species-tactics .pike-tactics-briefing-artwork {
  top: 0.2rem;
  right: -0.2rem;
  bottom: 0.15rem;
  width: 48%;
  height: calc(100% - 0.35rem);
  opacity: 0.4;
  object-fit: contain;
  object-position: right 68%;
  filter: grayscale(1) contrast(1.17);
  mix-blend-mode: multiply;
  -webkit-mask-image: linear-gradient(90deg, transparent 0%, rgba(0, 0, 0, 0.48) 20%, #000 48%);
  mask-image: linear-gradient(90deg, transparent 0%, rgba(0, 0, 0, 0.48) 20%, #000 48%);
  user-select: none;
}

#pike-species-tactics .pike-tactics-briefing-artwork[data-pike-briefing-artwork="reports"] {
  width: 47%;
  opacity: 0.42;
  object-position: right 70%;
  filter: grayscale(1) contrast(1.17);
}

#pike-species-tactics .pike-tactics-briefing-artwork[data-pike-briefing-artwork="conditions"] {
  width: 49%;
  opacity: 0.44;
  object-position: right 64%;
  filter: grayscale(1) contrast(1.19);
}

#pike-species-tactics .pike-tactics-briefing-artwork[data-pike-briefing-artwork="seasonal"] {
  width: 48%;
  opacity: 0.41;
  object-position: right 72%;
  filter: grayscale(1) contrast(1.17);
}

#pike-species-tactics .pike-tactics-briefing-artwork[data-pike-briefing-artwork="beginning"] {
  width: 49%;
  opacity: 0.43;
  object-position: right 62%;
  filter: grayscale(1) contrast(1.19);
}

#pike-species-tactics .pike-briefing-cell {
  min-height: 13.5rem;
}

#pike-species-tactics .pike-briefing-cell > p,
#pike-species-tactics .pike-briefing-cell > small,
#pike-species-tactics .pike-briefing-cell > .species-briefing-section-heading {
  max-width: 58%;
}

#pike-species-tactics .pike-briefing-cell h3 {
  margin: 0.3rem 0 0;
  color: #223f45;
  font-family: Georgia, serif;
  font-size: clamp(1.05rem, 1.35vw, 1.28rem);
  line-height: 1.22;
}

#pike-species-tactics .species-tactic-card::after {
  background:
    linear-gradient(145deg, rgba(248, 244, 235, 0.99) 0%, rgba(248, 244, 235, 0.95) 31%, rgba(248, 244, 235, 0.66) 56%, rgba(248, 244, 235, 0.2) 100%),
    linear-gradient(0deg, rgba(248, 244, 235, 0.76) 0%, rgba(248, 244, 235, 0.15) 34%, transparent 64%);
}

#pike-species-tactics .species-tactic-vignette img {
  opacity: 0.43;
  object-fit: cover;
  object-position: 73% 66%;
  filter: grayscale(1) contrast(1.17);
  mix-blend-mode: multiply;
  -webkit-mask-image: linear-gradient(90deg, transparent 0%, rgba(0, 0, 0, 0.68) 22%, #000 46%);
  mask-image: linear-gradient(90deg, transparent 0%, rgba(0, 0, 0, 0.68) 22%, #000 46%);
  user-select: none;
}

#pike-species-tactics .species-tactic-card[data-tactic-card="lure-fishing"] .species-tactic-vignette img {
  opacity: 0.46;
  object-position: 73% 66%;
  filter: grayscale(1) contrast(1.2);
}

#pike-species-tactics .species-tactic-card[data-tactic-card="deadbaiting"] .species-tactic-vignette img {
  opacity: 0.4;
  object-position: 72% 68%;
  filter: grayscale(1) contrast(1.12);
}

#pike-species-tactics .species-tactic-card[data-tactic-card="float-fishing"] .species-tactic-vignette img {
  opacity: 0.43;
  object-position: 72% 65%;
  filter: grayscale(1) contrast(1.18);
}

#pike-species-tactics .species-tactic-card[data-tactic-card="mobile-searching"] .species-tactic-vignette img {
  opacity: 0.44;
  object-position: 76% 62%;
  filter: grayscale(1) contrast(1.16);
}

#pike-species-tactics .species-tactic-card:hover .species-tactic-vignette img {
  opacity: 0.49;
}

@media (max-width: 1050px) {
  #pike-species-tactics .pike-tactics-briefing-artwork {
    width: 44%;
    opacity: 0.37;
  }

  #pike-species-tactics .pike-briefing-cell {
    min-height: 14.5rem;
  }

  #pike-species-tactics .pike-briefing-cell > p,
  #pike-species-tactics .pike-briefing-cell > small,
  #pike-species-tactics .pike-briefing-cell > .species-briefing-section-heading {
    max-width: 62%;
  }

  #pike-species-tactics .species-tactic-vignette img {
    opacity: 0.39;
  }
}

@media (max-width: 700px) {
  #pike-species-tactics .pike-tactics-briefing-artwork {
    width: min(58%, 17rem);
    height: 6.5rem;
    opacity: 0.34;
    object-fit: contain;
    object-position: right center;
  }

  #pike-species-tactics .pike-tactics-briefing-artwork[data-pike-briefing-artwork] {
    opacity: 0.34;
  }

  #pike-species-tactics .pike-briefing-cell {
    min-height: 0;
  }

  #pike-species-tactics .pike-briefing-cell > p,
  #pike-species-tactics .pike-briefing-cell > small,
  #pike-species-tactics .pike-briefing-cell > .species-briefing-section-heading {
    max-width: 100%;
  }

  #pike-species-tactics .species-tactic-vignette img,
  #pike-species-tactics .species-tactic-card:hover .species-tactic-vignette img {
    opacity: 0.33;
  }

  #pike-species-tactics .species-tactic-card[data-tactic-card] .species-tactic-vignette img {
    opacity: 0.33;
  }
}

.species-tactics-briefing-refined .species-briefing-approaches button strong,
.species-tactics-briefing-refined .species-briefing-approaches button span {
  grid-column: 1 / -1;
}

.species-tactics-briefing-refined .species-briefing-approaches button strong {
  font-size: 0.82rem;
  line-height: 1.2;
}

.species-tactics-briefing-refined .species-briefing-approaches button span {
  font-size: 0.67rem;
  line-height: 1.4;
}

.species-tactics-briefing-refined .species-briefing-approaches button small,
.species-tactics-briefing-refined .species-briefing-approaches button em {
  align-self: end;
  white-space: normal;
}

.species-tactics-briefing-refined .species-briefing-approaches button em {
  color: #334e53;
  font-size: 0.62rem;
  font-style: normal;
  font-weight: 800;
}

.species-tactics-briefing-refined .species-briefing-approaches button small {
  font-size: 0.6rem;
}

.species-tactics-briefing-refined .species-briefing-approaches button.species-linked-panel:hover {
  box-shadow: 0 0.15rem 0.4rem rgba(21, 39, 43, 0.06);
}

.species-tactics-briefing-refined > .species-briefing-rules {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: baseline;
  gap: 0.35rem 0.8rem;
  padding: 0.8rem 0;
  border-block: 1px solid rgba(21, 39, 43, 0.1);
}

.species-tactics-briefing-refined .species-briefing-rules p {
  margin: 0;
  font-size: 0.74rem;
  line-height: 1.5;
}

.species-tactics-briefing-refined > footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem 1rem;
  padding-top: 0.9rem;
}

.species-tactics-briefing-refined .species-briefing-actions {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 0.5rem;
}

.species-tactics-briefing-refined .species-briefing-actions button {
  width: auto;
  min-height: 2.35rem;
  padding: 0.45rem 0.75rem;
  background: transparent;
}

@media (max-width: 900px) {
  .species-tactics-briefing-refined .species-briefing-approaches {
    grid-template-columns: 1fr;
  }

  .species-tactics-briefing-refined > footer {
    align-items: flex-start;
    flex-direction: column;
  }
}

@media (max-width: 700px) {
  .species-tactics-briefing-refined {
    scroll-margin-top: 4.75rem;
  }

  .species-tactics-briefing-refined .species-briefing-areas {
    grid-template-columns: 1fr;
  }

  .species-tactics-briefing-refined .species-briefing-areas > section,
  .species-tactics-briefing-refined .species-briefing-areas > section:nth-child(odd),
  .species-tactics-briefing-refined .species-briefing-areas > section:nth-child(even),
  .species-tactics-briefing-refined .species-briefing-areas > section:last-child {
    padding: 0.85rem 0;
    border-bottom: 1px solid rgba(21, 39, 43, 0.08);
  }

  .species-tactics-briefing-refined .species-briefing-areas > section:last-child {
    border-bottom: 0;
  }

  .species-tactics-briefing-refined > .species-briefing-rules {
    grid-template-columns: 1fr;
    gap: 0.25rem;
  }

  .species-tactics-briefing-refined .species-briefing-actions {
    width: 100%;
    align-items: stretch;
    flex-direction: column;
  }

  .species-tactics-briefing-refined .species-briefing-actions button {
    width: 100%;
  }
}

.species-tactics-briefing-refined > .species-briefing-starting-point {
  padding: 0.85rem 1rem;
  background: rgba(235, 221, 188, 0.62);
}

.species-tactics-briefing-refined .species-briefing-starting-point p {
  margin-top: 0.25rem;
}

.species-tactics-briefing-refined .species-briefing-starting-point small {
  display: block;
  margin-top: 0.4rem;
  color: #6c7270;
  font-size: 0.64rem;
  font-weight: 700;
}

.species-briefing-section-heading {
  display: block;
  min-width: 0;
  margin-bottom: 0.15rem;
}

.species-briefing-artwork {
  position: absolute;
  top: 0.4rem;
  right: 0.25rem;
  bottom: 0.4rem;
  width: 33%;
  height: calc(100% - 0.8rem);
  object-fit: contain;
  object-position: right center;
  opacity: 0.42;
  filter: grayscale(1) contrast(1.18);
  mix-blend-mode: multiply;
  -webkit-mask-image: linear-gradient(90deg, transparent 0%, rgba(0, 0, 0, 0.72) 22%, #000 46%);
  mask-image: linear-gradient(90deg, transparent 0%, rgba(0, 0, 0, 0.72) 22%, #000 46%);
  pointer-events: none;
}

.species-tactics-briefing-refined .species-briefing-areas > section,
.species-tactics-briefing-refined .species-briefing-areas > section:last-child {
  position: relative;
  padding-block: 0.78rem;
}

.species-tactics-briefing-refined .species-briefing-areas > section > p,
.species-tactics-briefing-refined .species-briefing-areas > section > small,
.species-tactics-briefing-refined .species-briefing-areas > section > .species-briefing-section-heading {
  position: relative;
  z-index: 1;
  max-width: 64%;
}

.species-tactics-briefing-refined .species-briefing-areas > section > p {
  margin: 0 0 0.12rem;
  color: #334e53;
  font-family: Georgia, serif;
  font-size: clamp(1rem, 1.15vw, 1.08rem);
  font-weight: 400;
  line-height: 1.5;
}

.species-tactics-briefing-refined .species-briefing-areas > section > small {
  margin-top: 0.08rem;
  color: #826719;
  font-size: 0.68rem;
  font-weight: 600;
  line-height: 1.35;
}

.species-tactics-briefing-refined .species-briefing-approaches .species-briefing-start-label {
  grid-column: 1 / -1;
  color: #8a681c;
  font-size: 0.6rem;
  font-weight: 900;
  letter-spacing: 0.1em;
  line-height: 1;
  text-transform: uppercase;
}

.tactic-grid {
  grid-auto-rows: 1fr;
}

.tactic-grid .species-tactic-card {
  position: relative;
  isolation: isolate;
  width: 100%;
  min-height: 25rem;
  height: 100%;
  display: flex;
  align-items: stretch;
  flex-direction: column;
  overflow: hidden;
  padding: 1.15rem;
  border: 1px solid rgba(202, 168, 91, 0.42);
  border-radius: 0.8rem;
  background: #f8f4eb;
  color: var(--ink);
  text-align: left;
}

.tactic-grid .species-tactic-card::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  border-radius: inherit;
  background:
    linear-gradient(145deg, rgba(248, 244, 235, 0.98) 0%, rgba(248, 244, 235, 0.93) 30%, rgba(248, 244, 235, 0.64) 57%, rgba(248, 244, 235, 0.22) 100%),
    linear-gradient(0deg, rgba(248, 244, 235, 0.78) 0%, rgba(248, 244, 235, 0.16) 34%, transparent 64%);
  pointer-events: none;
  transition: background 160ms ease;
}

.tactic-grid .species-tactic-card > :not(.species-tactic-vignette) {
  position: relative;
  z-index: 2;
}

.tactic-grid .species-tactic-card.is-start-here-card {
  border-color: rgba(190, 145, 42, 0.72);
}

.tactic-grid .species-tactic-card h3 {
  margin: 0.18rem 0 0.45rem;
  font-size: 1.35rem;
  line-height: 1.15;
}

.tactic-grid .species-tactic-card p {
  margin: 0;
  color: #53686d;
  font-size: 0.82rem;
  line-height: 1.55;
}

.tactic-grid .species-tactic-card small {
  min-height: 0;
  margin: 0.65rem 0 0;
  color: #60757b;
  font-size: 0.69rem;
  line-height: 1.4;
}

.species-tactic-vignette {
  position: absolute;
  inset: 0;
  z-index: 0;
  overflow: hidden;
  pointer-events: none;
}

.species-tactic-vignette img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  opacity: 0.56;
  pointer-events: none;
  transition: opacity 160ms ease;
}

.species-tactic-card[data-tactic-card="wet-fly"] .species-tactic-vignette img {
  object-position: 72% 58%;
  opacity: 0.5;
}

.species-tactic-card[data-tactic-card="dry-fly"] .species-tactic-vignette img {
  object-position: 76% 62%;
}

.species-tactic-card[data-tactic-card="nymph"] .species-tactic-vignette img {
  object-position: 70% 68%;
}

.species-tactic-card[data-tactic-card="spinning"] .species-tactic-vignette img {
  object-position: 82% 62%;
}

.tactic-grid .species-tactic-card:hover::after {
  background:
    linear-gradient(145deg, rgba(248, 239, 217, 0.98) 0%, rgba(248, 239, 217, 0.91) 30%, rgba(248, 239, 217, 0.6) 57%, rgba(248, 239, 217, 0.2) 100%),
    linear-gradient(0deg, rgba(248, 239, 217, 0.76) 0%, rgba(248, 239, 217, 0.14) 34%, transparent 64%);
}

.tactic-grid .species-tactic-card:hover .species-tactic-vignette img {
  opacity: 0.58;
}

.tactic-grid .species-tactic-card[data-tactic-card="wet-fly"]:hover .species-tactic-vignette img {
  opacity: 0.55;
}

.species-tactic-card-cta {
  align-self: flex-start;
  margin-top: auto;
  padding: 0.48rem 0.7rem;
  border: 1px solid rgba(202, 168, 91, 0.62);
  border-radius: 0.45rem;
  background: rgba(255, 253, 248, 0.76);
  color: #334e53;
  font-size: 0.7rem;
  font-weight: 800;
  line-height: 1.2;
}

@media (max-width: 1050px) {
  .tactic-grid .species-tactic-card {
    min-height: 22rem;
  }

  .species-tactic-vignette img {
    opacity: 0.5;
  }

  .species-tactic-card[data-tactic-card="wet-fly"] .species-tactic-vignette img {
    opacity: 0.46;
  }
}

@media (max-width: 700px) {
  .tactic-grid .species-tactic-card {
    min-height: 21rem;
  }

  .species-tactic-vignette img {
    opacity: 0.4;
  }

  .species-tactic-card[data-tactic-card="wet-fly"] .species-tactic-vignette img {
    opacity: 0.37;
  }

  .tactic-grid .species-tactic-card::after {
    background:
      linear-gradient(145deg, rgba(248, 244, 235, 0.99) 0%, rgba(248, 244, 235, 0.96) 42%, rgba(248, 244, 235, 0.76) 70%, rgba(248, 244, 235, 0.42) 100%),
      linear-gradient(0deg, rgba(248, 244, 235, 0.88) 0%, rgba(248, 244, 235, 0.3) 38%, transparent 68%);
  }
}

@media (prefers-reduced-motion: reduce) {
  .tactic-grid .species-tactic-card::after,
  .species-tactic-vignette img {
    transition: none;
  }
}

.species-tactics-briefing-refined > footer {
  margin-inline: calc(clamp(1.25rem, 2.4vw, 1.8rem) * -1);
  margin-bottom: calc(clamp(1.25rem, 2.4vw, 1.8rem) * -1);
  padding: 0.8rem clamp(1.25rem, 2.4vw, 1.8rem);
  border-top: 1px solid rgba(21, 39, 43, 0.1);
  border-radius: 0 0 0.75rem 0.75rem;
  background: rgba(239, 229, 205, 0.28);
}

@media (max-width: 900px) {
  .species-briefing-artwork {
    right: 0.15rem;
    width: 32%;
    opacity: 0.36;
  }

  .species-tactics-briefing-refined .species-briefing-areas > section > p {
    font-size: clamp(0.95rem, 1.8vw, 1.02rem);
  }
}

@media (max-width: 700px) {
  .species-briefing-artwork {
    position: relative;
    top: auto;
    right: auto;
    bottom: auto;
    display: block;
    width: min(68%, 15rem);
    height: 4.75rem;
    margin: 0.3rem 0 0 auto;
    object-position: right center;
    opacity: 0.32;
    -webkit-mask-image: linear-gradient(90deg, transparent 0%, rgba(0, 0, 0, 0.8) 20%, #000 42%);
    mask-image: linear-gradient(90deg, transparent 0%, rgba(0, 0, 0, 0.8) 20%, #000 42%);
  }

  .species-tactics-briefing-refined .species-briefing-areas > section > p,
  .species-tactics-briefing-refined .species-briefing-areas > section > small,
  .species-tactics-briefing-refined .species-briefing-areas > section > .species-briefing-section-heading {
    max-width: 100%;
  }

  .species-tactics-briefing-refined .species-briefing-areas > section {
    padding-block: 0.72rem;
  }

  .species-tactics-briefing-refined .species-briefing-areas > section > p {
    font-size: clamp(0.94rem, 4.1vw, 1rem);
    line-height: 1.48;
  }

  .species-tactics-briefing-refined .species-briefing-areas > section > .species-briefing-section-heading {
    padding-right: 0;
  }
}

/* Reusable species Season-page foundation. */
.species-season-status,
.species-season-timeline,
.species-current-season-briefing,
.species-season-periods,
.species-season-planning { margin-bottom:1rem; padding:clamp(1rem,2vw,1.35rem); border:1px solid rgba(21,39,43,.14); border-radius:.75rem; background:#f8f4eb; }
.species-season-status { position:relative; overflow:hidden; isolation:isolate; border-left:4px solid var(--gold); }
.species-season-status.has-season-status-vignette::before {
  content:"";
  position:absolute;
  z-index:0;
  top:0;
  right:0;
  bottom:0;
  width:48%;
  background:var(--species-season-status) right center / auto 118% no-repeat;
  opacity:.28;
  pointer-events:none;
  -webkit-mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.2) 18%,#000 48%,#000 100%);
  mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.2) 18%,#000 48%,#000 100%);
}
.species-season-status.has-season-status-vignette > * { position:relative; z-index:1; }
.species-season-status.has-season-status-vignette .species-season-status-copy { max-width:68%; }
.species-season-status h2,.species-season-timeline h2,.species-current-season-briefing h2,.species-season-periods h2,.species-season-planning h2 { margin:.2rem 0 .45rem; }
.species-season-status > strong { display:block; margin-bottom:.35rem; color:#334e53; font-size:.85rem; }
.species-season-status.is-closed > strong { color:#7b3e32; }
.species-season-status-copy { max-width:62rem; }
.species-season-status-copy p,.species-current-season-briefing > p,.species-season-planning > p { margin:0; color:#53686d; line-height:1.55; }
.species-season-status-copy p + p { margin-top:.65rem; }
.species-season-bulletin { max-width:52rem; margin-top:.8rem; padding:.7rem 0 0 .8rem; border-left:2px solid var(--gold); }
.species-season-bulletin > strong { display:block; margin:.18rem 0 .25rem; color:#334e53; }
.species-season-bulletin p { margin:0; color:#53686d; line-height:1.5; }
.species-season-bulletin small { display:block; margin-top:.3rem; color:#7a6a45; font-size:.68rem; }
.species-current-season-briefing { position:relative; overflow:hidden; isolation:isolate; }
.species-current-season-briefing::before { content:""; position:absolute; z-index:0; top:.35rem; right:-1%; width:38%; height:48%; background-repeat:no-repeat; background-position:right center; background-size:contain; opacity:0; pointer-events:none; -webkit-mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.25) 26%,#000 66%); mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.25) 26%,#000 66%); }
.species-current-season-briefing[data-current-season="summer"]::before { background-image:var(--species-season-summer); opacity:.2; }
.species-current-season-briefing > * { position:relative; z-index:1; }
.species-current-season-briefing > p { max-width:68%; }
.species-current-season-briefing > div { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:clamp(.65rem,1.3vw,1rem); margin:.9rem 0 0; padding:.72rem .78rem .76rem; border-radius:.55rem; background:rgba(239,229,205,.22); }
.species-current-season-briefing > div section { min-width:0; padding-top:.52rem; border-top:1px solid rgba(157,116,24,.24); }
.species-season-timeline { box-shadow:inset 0 -18px 24px -30px rgba(45,57,55,.34); }
.species-season-timeline ol { position:relative; display:flex; align-items:stretch; margin:1.15rem 0 0; padding:0; border-radius:.65rem; background:linear-gradient(90deg,rgba(111,145,157,.035) 0%,rgba(177,158,107,.04) 25%,rgba(211,164,57,.07) 50%,rgba(157,132,91,.035) 75%,rgba(105,112,109,.03) 100%); list-style:none; }
.species-season-timeline ol::before { content:""; position:absolute; z-index:0; top:.47rem; right:10%; left:10%; height:1px; background:rgba(105,101,82,.38); pointer-events:none; }
.species-season-timeline-stage { position:relative; z-index:1; display:flex; flex:1 1 20%; min-width:0; padding:1.65rem clamp(.45rem,1.25vw,.85rem) .35rem; text-align:left; }
.species-season-timeline-marker { position:absolute; top:.05rem; left:50%; width:.85rem; height:.85rem; border:1.5px solid rgba(128,104,51,.52); border-radius:50%; background:#f8f4eb; transform:translateX(-50%); }
.species-season-timeline-stage-copy { position:relative; display:flex; flex-direction:column; width:100%; min-height:8.2rem; overflow:hidden; padding:.42rem .55rem .52rem; border:0; border-radius:.4rem; appearance:none; background:transparent; color:inherit; font:inherit; text-align:left; isolation:isolate; }
button.species-season-timeline-stage-copy { cursor:pointer; }
button.species-season-timeline-stage-copy:hover { background:rgba(239,229,205,.35); }
button.species-season-timeline-stage-copy:focus-visible { outline:2px solid #9d7418; outline-offset:2px; }
.species-season-timeline-stage.is-selected .species-season-timeline-stage-copy { box-shadow:inset 0 0 0 1px rgba(157,116,24,.34); }
.species-season-timeline-stage-copy::before { content:""; position:absolute; z-index:-1; right:-10%; bottom:-8%; width:92%; height:76%; background-image:var(--season-timeline-vignette); background-repeat:no-repeat; background-position:right bottom; background-size:contain; opacity:.24; filter:contrast(1.08); pointer-events:none; -webkit-mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.36) 28%,#000 68%); mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.36) 28%,#000 68%); }
.species-season-timeline-stage[data-season-timeline-period="early-season"] { --season-timeline-vignette:var(--species-season-winter); }
.species-season-timeline-stage[data-season-timeline-period="early-season"] .species-season-timeline-stage-copy::before { right:-3%; bottom:-12%; opacity:.24; }
.species-season-timeline-stage[data-season-timeline-period="late-spring"] { --season-timeline-vignette:var(--species-season-spring); }
.species-season-timeline-stage[data-season-timeline-period="late-spring"] .species-season-timeline-stage-copy::before { right:-12%; opacity:.26; }
.species-season-timeline-stage[data-season-timeline-period="summer"] { --season-timeline-vignette:var(--species-season-summer); }
.species-season-timeline-stage[data-season-timeline-period="summer"] .species-season-timeline-stage-copy::before { right:-8%; bottom:-5%; width:96%; height:80%; opacity:.29; filter:contrast(1.1); }
.species-season-timeline-stage[data-season-timeline-period="autumn"] { --season-timeline-vignette:var(--species-season-autumn); }
.species-season-timeline-stage[data-season-timeline-period="autumn"] .species-season-timeline-stage-copy::before { right:-8%; opacity:.26; }
.species-season-timeline-stage[data-season-timeline-period="closed-period"] { --season-timeline-vignette:var(--species-season-winter); }
.species-season-timeline-stage[data-season-timeline-period="closed-period"] .species-season-timeline-stage-copy::before { right:-4%; bottom:-10%; opacity:.17; filter:grayscale(1) contrast(1.06); }
.species-season-timeline-stage.is-current .species-season-timeline-stage-copy { background:rgba(239,229,205,.58); }
.species-season-timeline-stage.is-current .species-season-timeline-marker { top:-.02rem; width:1rem; height:1rem; border:2px solid #9d7418; background:var(--gold); box-shadow:0 0 0 2px rgba(201,154,44,.08); }
.species-season-timeline-current { display:block; min-height:.78rem; margin:0 0 .18rem; color:#8a681c; font-size:.54rem; font-weight:800; line-height:1.2; letter-spacing:.06em; text-transform:uppercase; }
.species-season-timeline-stage:not(.is-current) .species-season-timeline-current { visibility:hidden; }
.species-season-timeline-stage strong { display:block; color:#334e53; font-size:.8rem; }
.species-season-timeline-stage.is-current strong { font-weight:800; }
.species-season-timeline-stage p { margin:.28rem 0 0; color:#60757b; font-size:.68rem; line-height:1.45; }
.species-season-timeline-stage[data-season-timeline-period="closed-period"] { opacity:.76; }
.species-season-timeline-stage[data-season-timeline-period="closed-period"] .species-season-timeline-marker { border-color:rgba(91,101,98,.34); }
.species-current-season-briefing h3 { margin:0; color:#7f611d; font-size:.68rem; font-weight:800; line-height:1.25; letter-spacing:.045em; text-transform:uppercase; }
.species-current-season-briefing section p { margin:.28rem 0 0; color:#566c71; font-size:.74rem; line-height:1.48; }
.species-current-season-briefing > div section:last-child p { color:#69777a; font-size:.7rem; }
.species-season-periods > header { margin-bottom:.8rem; }
.species-season-guide { position:relative; overflow:hidden; min-height:16rem; padding:1rem clamp(1rem,2vw,1.35rem) 1.1rem; border-top:1px solid rgba(157,116,24,.35); border-radius:.55rem; background:rgba(255,252,245,.48); isolation:isolate; }
.species-season-guide::before { content:""; position:absolute; z-index:0; right:-2%; bottom:-7%; width:42%; height:92%; background:var(--season-guide-vignette) right bottom / contain no-repeat; opacity:.23; pointer-events:none; -webkit-mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.32) 27%,#000 68%); mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.32) 27%,#000 68%); }
.species-season-guide[data-season-guide-selected="early-season"] { --season-guide-vignette:var(--species-season-winter); }
.species-season-guide[data-season-guide-selected="late-spring"] { --season-guide-vignette:var(--species-season-spring); }
.species-season-guide[data-season-guide-selected="summer"] { --season-guide-vignette:var(--species-season-summer); }
.species-season-guide[data-season-guide-selected="autumn"] { --season-guide-vignette:var(--species-season-autumn); }
.species-season-guide[data-season-guide-selected="summer"]::before { opacity:.28; }
.species-season-guide > * { position:relative; z-index:1; }
.species-season-guide-current { display:inline-block; margin-left:.45rem; color:#8a681c; font-size:.56rem; font-weight:800; letter-spacing:.06em; text-transform:uppercase; }
.species-season-guide h3 { margin:.28rem 0 .35rem; color:#17353a; font-family:Georgia,"Times New Roman",serif; font-size:clamp(1.45rem,2.2vw,2rem); }
.species-season-guide-lead { max-width:64%; margin:0; color:#53686d; font-family:Georgia,"Times New Roman",serif; font-size:.92rem; line-height:1.5; }
.species-season-guide dl { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:.7rem 1rem; max-width:72%; margin:1rem 0 0; }
.species-season-guide dl div { padding-top:.55rem; border-top:1px solid rgba(21,39,43,.12); }
.species-season-guide dt { color:#8a681c; font-size:.62rem; font-weight:800; letter-spacing:.05em; text-transform:uppercase; }
.species-season-guide dd { margin:.25rem 0 0; color:#334e53; font-size:.77rem; line-height:1.45; }
.species-season-guide-note { max-width:72%; margin:.85rem 0 0; color:#667477; font-size:.72rem; line-height:1.45; }
.species-season-planning ul { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.4rem 1rem; margin:.75rem 0; padding-left:1.2rem; color:#53686d; font-size:.78rem; }
.species-season-planning > div { display:flex; flex-wrap:wrap; gap:.55rem; }
.species-season-planning button:disabled { cursor:not-allowed; opacity:.55; }
@media (max-width:900px) { .species-season-status dl,.species-current-season-briefing > div,.species-season-guide dl { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (min-width:701px) and (max-width:900px) {
  .species-season-timeline ol { flex-direction:column; gap:0; padding:.15rem 0 0; background:none; }
  .species-season-timeline ol::before { top:.65rem; right:auto; bottom:1.35rem; left:.45rem; width:1px; height:auto; }
  .species-season-timeline-stage { min-height:0; padding:.05rem .2rem .85rem 2rem; }
  .species-season-timeline-marker { top:.15rem; left:.45rem; transform:translateX(-50%); }
  .species-season-timeline-stage-copy { min-height:0; padding:.3rem .55rem .5rem; }
  .species-season-timeline-stage-copy::before { right:0; bottom:-12%; width:42%; height:115%; opacity:.14; }
  .species-season-timeline-stage[data-season-timeline-period="summer"] .species-season-timeline-stage-copy::before { opacity:.18; }
  .species-season-timeline-stage.is-current { padding-top:.15rem; }
  .species-season-timeline-stage.is-current .species-season-timeline-marker { top:.2rem; }
  .species-season-timeline-current { min-height:.7rem; margin-bottom:.12rem; }
}
@media (max-width:700px) {
  .species-season-status.has-season-status-vignette::before {
    top:38%;
    width:78%;
    background-position:right bottom;
    background-size:auto 88%;
    opacity:.16;
    -webkit-mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.16) 28%,#000 62%);
    mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.16) 28%,#000 62%);
  }
  .species-season-status.has-season-status-vignette .species-season-status-copy { max-width:100%; }
  .species-season-status,.species-season-timeline,.species-current-season-briefing,.species-season-periods,.species-season-planning { padding:.9rem; }
  .species-current-season-briefing::before { top:.55rem; right:-8%; width:54%; height:5.4rem; opacity:0; }
  .species-current-season-briefing[data-current-season="summer"]::before { opacity:.1; }
  .species-current-season-briefing > p { max-width:100%; }
  .species-current-season-briefing > div { grid-template-columns:1fr; gap:.62rem; padding:.68rem .72rem; }
  .species-season-timeline ol { flex-direction:column; gap:0; padding:.15rem 0 0; }
  .species-season-timeline ol { background:none; }
  .species-season-timeline ol::before { top:.65rem; right:auto; bottom:1.35rem; left:.45rem; width:1px; height:auto; }
  .species-season-timeline-stage { min-height:0; padding:.05rem .2rem .85rem 2rem; }
  .species-season-timeline-marker { top:.15rem; left:.45rem; transform:translateX(-50%); }
  .species-season-timeline-stage-copy { min-height:0; padding:.3rem .55rem .5rem; }
  .species-season-timeline-stage-copy::before { right:0; bottom:-12%; width:58%; height:115%; opacity:.16; -webkit-mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.3) 32%,#000 72%); mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.3) 32%,#000 72%); }
  .species-season-timeline-stage[data-season-timeline-period="early-season"] .species-season-timeline-stage-copy::before { opacity:.16; }
  .species-season-timeline-stage[data-season-timeline-period="late-spring"] .species-season-timeline-stage-copy::before { opacity:.18; }
  .species-season-timeline-stage[data-season-timeline-period="summer"] .species-season-timeline-stage-copy::before { width:62%; height:118%; opacity:.2; }
  .species-season-timeline-stage[data-season-timeline-period="autumn"] .species-season-timeline-stage-copy::before { opacity:.18; }
  .species-season-timeline-stage[data-season-timeline-period="closed-period"] .species-season-timeline-stage-copy::before { opacity:.12; }
  .species-season-timeline-stage.is-current { padding-top:.15rem; }
  .species-season-timeline-stage.is-current .species-season-timeline-marker { top:.2rem; }
  .species-season-timeline-current { min-height:.7rem; margin-bottom:.12rem; }
  .species-season-guide { min-height:0; padding:.85rem; }
  .species-season-guide::before { right:-8%; bottom:-3%; width:58%; height:48%; opacity:.13; }
  .species-season-guide[data-season-guide-selected="summer"]::before { opacity:.17; }
  .species-season-guide-lead,.species-season-guide dl,.species-season-guide-note { max-width:100%; }
  .species-season-guide dl { grid-template-columns:1fr; gap:.55rem; }
  .species-season-planning > div { align-items:stretch; flex-direction:column; }
  .species-season-planning button { width:100%; }
}

/* Pike Season reuses the Brown Trout season structure with species-specific artwork. */
#pike-species-season .pike-season-current-vignette {
  position:absolute;
  z-index:0;
  top:.3rem;
  right:-1%;
  width:39%;
  height:49%;
  object-fit:contain;
  object-position:right center;
  opacity:.37;
  filter:grayscale(1) contrast(1.16);
  mix-blend-mode:multiply;
  pointer-events:none;
  user-select:none;
  -webkit-mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.42) 28%,#000 66%);
  mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.42) 28%,#000 66%);
}

#pike-species-season .pike-current-season-briefing > p { max-width:68%; }
#pike-species-season button { min-height:44px; }

#pike-species-season .species-season-timeline-stage-copy::before {
  opacity:.29;
  filter:grayscale(1) contrast(1.12);
  mix-blend-mode:multiply;
}

#pike-species-season .species-season-timeline-stage[data-season-timeline-period="early-year"] .species-season-timeline-stage-copy::before { right:-3%; bottom:-10%; opacity:.29; filter:grayscale(1) contrast(1.12); }
#pike-species-season .species-season-timeline-stage[data-season-timeline-period="spring"] .species-season-timeline-stage-copy::before { right:-11%; bottom:-7%; opacity:.31; filter:grayscale(1) contrast(1.14); }
#pike-species-season .species-season-timeline-stage[data-season-timeline-period="summer"] .species-season-timeline-stage-copy::before { right:-7%; bottom:-5%; width:96%; height:80%; opacity:.34; filter:grayscale(1) contrast(1.14); }
#pike-species-season .species-season-timeline-stage[data-season-timeline-period="autumn"] .species-season-timeline-stage-copy::before { right:-7%; bottom:-7%; opacity:.31; filter:grayscale(1) contrast(1.13); }
#pike-species-season .species-season-timeline-stage[data-season-timeline-period="winter"] .species-season-timeline-stage-copy::before { right:-3%; bottom:-10%; opacity:.26; filter:grayscale(1) contrast(1.09); }

#pike-species-season .pike-season-guide { --season-guide-vignette:none; }

#pike-species-season .pike-season-guide::before { display:none; }

#pike-species-season .pike-season-guide-vignette {
  position:absolute;
  z-index:0;
  right:-2%;
  bottom:-7%;
  width:43%;
  height:92%;
  object-fit:contain;
  object-position:right bottom;
  opacity:.36;
  filter:grayscale(1) contrast(1.16);
  mix-blend-mode:multiply;
  pointer-events:none;
  user-select:none;
  -webkit-mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.4) 28%,#000 68%);
  mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.4) 28%,#000 68%);
}

#pike-species-season .pike-season-guide > :not(.pike-season-guide-vignette) { position:relative; z-index:1; }

@media (max-width:900px) {
  #pike-species-season .pike-season-current-vignette { width:42%; opacity:.32; }
  #pike-species-season .pike-season-guide-vignette { width:46%; opacity:.31; }
}

@media (max-width:700px) {
  #pike-species-season .pike-season-current-vignette { top:.55rem; right:-8%; width:54%; height:5.4rem; opacity:.22; }
  #pike-species-season .pike-current-season-briefing > p { max-width:100%; }
  #pike-species-season .species-season-timeline-stage-copy::before { right:0; bottom:-12%; width:58%; height:115%; opacity:.18; }
  #pike-species-season .species-season-timeline-stage[data-season-timeline-period="early-year"] .species-season-timeline-stage-copy::before,
  #pike-species-season .species-season-timeline-stage[data-season-timeline-period="spring"] .species-season-timeline-stage-copy::before,
  #pike-species-season .species-season-timeline-stage[data-season-timeline-period="autumn"] .species-season-timeline-stage-copy::before { opacity:.19; }
  #pike-species-season .species-season-timeline-stage[data-season-timeline-period="summer"] .species-season-timeline-stage-copy::before { width:62%; height:118%; opacity:.22; }
  #pike-species-season .species-season-timeline-stage[data-season-timeline-period="winter"] .species-season-timeline-stage-copy::before { opacity:.16; }
  #pike-species-season .pike-season-guide-vignette { right:-8%; bottom:-3%; width:58%; height:48%; opacity:.2; }
}

/* Shared Reports pattern for species pages. */
.species-reports-pattern > [data-species-reports-content] { gap:clamp(.85rem,1.5vw,1.1rem); }
.species-reports-hero { position:relative; min-height:20rem; padding:clamp(1.25rem,2.5vw,1.9rem); overflow:hidden; border:1px solid rgba(21,39,43,.14); border-left:4px solid var(--gold); border-radius:.8rem; background:linear-gradient(135deg,#fbf7ee 0%,#f5eddd 100%); box-shadow:0 10px 28px rgba(20,42,46,.055); }
.species-reports-hero::after { position:absolute; inset:0; z-index:1; background:linear-gradient(90deg,rgba(251,247,238,.98) 0%,rgba(251,247,238,.92) 45%,rgba(251,247,238,.38) 67%,rgba(251,247,238,.08) 100%); content:""; pointer-events:none; }
.species-reports-hero-copy { position:relative; z-index:2; width:min(62%,43rem); }
.species-reports-hero-copy h2 { margin:.2rem 0 .7rem; font-size:clamp(1.55rem,2.25vw,2.05rem); }
.species-reports-hero-copy > strong { display:block; color:#27464b; font-family:Georgia,"Times New Roman",serif; font-size:clamp(1.12rem,1.7vw,1.34rem); line-height:1.35; }
.species-reports-hero-copy > p { max-width:40rem; margin:.55rem 0 0; color:#53686d; font-family:Georgia,"Times New Roman",serif; font-size:clamp(.98rem,1.2vw,1.07rem); line-height:1.58; }
.species-reports-hero-vignette { position:absolute; z-index:0; right:0; bottom:-1%; width:62%; height:102%; object-fit:cover; object-position:right center; opacity:.48; filter:grayscale(1) contrast(1.14); mix-blend-mode:multiply; pointer-events:none; user-select:none; -webkit-mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.08) 20%,rgba(0,0,0,.52) 42%,#000 65%),radial-gradient(ellipse 88% 92% at 66% 53%,#000 0%,#000 46%,rgba(0,0,0,.76) 62%,rgba(0,0,0,.2) 82%,transparent 100%); -webkit-mask-composite:source-in; mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.08) 20%,rgba(0,0,0,.52) 42%,#000 65%),radial-gradient(ellipse 88% 92% at 66% 53%,#000 0%,#000 46%,rgba(0,0,0,.76) 62%,rgba(0,0,0,.2) 82%,transparent 100%); mask-composite:intersect; }
[data-reports-pattern="pike"] .species-reports-hero-vignette { width:64%; height:104%; object-position:right 56%; opacity:.46; }
.species-reports-hero-actions { position:relative; z-index:3; display:flex; align-items:center; justify-content:center; flex-wrap:wrap; gap:.65rem; margin:clamp(1.6rem,3vw,2.25rem) auto 0; }
.species-reports-pattern .species-report-action { min-height:44px; padding:.62rem .95rem; font-size:.76rem; white-space:nowrap; }
.species-reports-insights { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:clamp(.7rem,1.35vw,1rem); }
.species-reports-insights article { min-height:10.25rem; padding:clamp(1rem,1.8vw,1.3rem); border:1px solid rgba(21,39,43,.12); border-radius:.72rem; background:rgba(248,244,235,.74); }
.species-reports-insights h3 { margin:.3rem 0 .45rem; color:#17353a; font-family:Georgia,"Times New Roman",serif; font-size:clamp(1.05rem,1.4vw,1.2rem); line-height:1.3; }
.species-reports-insights p { margin:0; color:#596e73; line-height:1.55; }
.species-reports-pattern .species-reports-guidance { max-width:58rem; margin-top:0; }

@media (max-width:950px) {
  .species-reports-hero { min-height:21rem; }
  .species-reports-hero-copy { width:67%; }
  .species-reports-hero-vignette,[data-reports-pattern="pike"] .species-reports-hero-vignette { right:-3%; bottom:0; width:58%; height:96%; opacity:.37; }
  .species-reports-insights { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .species-reports-insights article:last-child { grid-column:1/-1; min-height:auto; }
}

@media (max-width:700px) {
  .species-reports-hero { min-height:0; padding:1rem; }
  .species-reports-hero::after { background:linear-gradient(180deg,rgba(251,247,238,.99) 0%,rgba(251,247,238,.94) 53%,rgba(251,247,238,.32) 78%,rgba(251,247,238,.08) 100%); }
  .species-reports-hero-copy { width:100%; }
  .species-reports-hero-vignette,[data-reports-pattern="pike"] .species-reports-hero-vignette { position:absolute; right:-8%; bottom:4.1rem; display:block; width:105%; height:12rem; margin:0; object-position:center 68%; opacity:.27; -webkit-mask-image:linear-gradient(180deg,transparent 0%,rgba(0,0,0,.1) 18%,rgba(0,0,0,.68) 47%,#000 68%),radial-gradient(ellipse 88% 90% at 58% 62%,#000 0%,#000 42%,rgba(0,0,0,.62) 67%,transparent 100%); -webkit-mask-composite:source-in; mask-image:linear-gradient(180deg,transparent 0%,rgba(0,0,0,.1) 18%,rgba(0,0,0,.68) 47%,#000 68%),radial-gradient(ellipse 88% 90% at 58% 62%,#000 0%,#000 42%,rgba(0,0,0,.62) 67%,transparent 100%); mask-composite:intersect; }
  .species-reports-hero-actions { align-items:stretch; flex-direction:column; width:100%; margin-top:.8rem; }
  .species-reports-pattern .species-report-action { width:100%; min-height:44px; }
  .species-reports-insights { grid-template-columns:1fr; }
  .species-reports-insights article,.species-reports-insights article:last-child { grid-column:auto; min-height:0; }
}

@media (max-width:1050px) { .species-explorer-toolbar-primary { grid-template-columns:minmax(15rem,1fr) auto auto; }.species-explorer-toolbar-primary .species-clear-filters { grid-column:1/-1; justify-self:start; min-height:auto; padding:.25rem 0; } }
@media (max-width:700px) { .species-explorer-toolbar { padding:.85rem; }.species-explorer-toolbar-primary { grid-template-columns:1fr auto; align-items:center; }.species-explorer-search { grid-column:1/-1; }.species-explorer-toolbar output { min-width:0; padding:.25rem 0; }.species-explorer-toolbar-primary .species-explorer-select { justify-self:end; }.species-explorer-toolbar-primary .species-clear-filters { grid-column:1/-1; }.species-explorer-toolbar-secondary { flex-wrap:wrap; align-items:stretch; }.species-explorer-toolbar-secondary .species-water-filter-chips { width:100%; margin:0; }.species-water-filter-chips button { flex:none; }.species-explorer-advanced { position:static; width:100%; grid-template-columns:1fr; margin-top:.2rem; box-shadow:none; }.species-explorer-select select { width:100%; }.species-active-filters { width:100%; } }
@media (max-width:700px) {
  .species-report-grid { grid-template-columns:1fr; }
  .species-report-card > header { align-items:flex-start; flex-direction:column; gap:.35rem; }
  .species-report-empty { grid-template-columns:1fr; align-items:stretch; gap:1rem; }
  .species-report-empty-support { min-height:0; padding-top:5.25rem; }
  .species-report-vignette { inset:-12% -10% auto 8%; width:104%; height:8.5rem; opacity:.21; }
  .species-report-empty-actions { align-items:stretch; flex-direction:column; }
  .species-content .species-report-empty button { width:100%; min-height:2.75rem; }
  .species-reports-latest,.species-reports-recent,.species-reports-archive { padding:1rem; }
  .species-reports-guidance { padding-left:.8rem; }
}

/* Pike reuses the approved Brown Trout Overview structure; only artwork differs. */
[data-species-id="pike"] .pike-species-gateway-card[disabled] { opacity:1; cursor:not-allowed; }
[data-species-id="pike"] .species-overview-introduction .pike-species-gateway-card.has-pike-card-vignette::before {
  content:"";
  position:absolute;
  z-index:0;
  inset:0;
  background-image:var(--pike-card-vignette);
  background-repeat:no-repeat;
  background-position:var(--pike-card-art-position,right bottom);
  background-size:var(--pike-card-art-size,48% auto);
  opacity:var(--pike-card-art-opacity,.28);
  pointer-events:none;
  user-select:none;
  -webkit-mask-image:var(--pike-card-art-mask,linear-gradient(90deg,transparent 0%,rgba(0,0,0,.2) 34%,#000 58%));
  mask-image:var(--pike-card-art-mask,linear-gradient(90deg,transparent 0%,rgba(0,0,0,.2) 34%,#000 58%));
}
[data-species-id="pike"] .pike-species-gateway-card.has-pike-card-vignette::after {
  background-image:linear-gradient(90deg,rgba(248,244,235,.96) 0%,rgba(248,244,235,.82) 48%,rgba(248,244,235,.18) 76%,rgba(248,244,235,.04) 100%);
  background-position:center;
  background-size:auto;
  opacity:1;
}
[data-species-id="pike"] .pike-species-gateway-card[data-pike-gateway-card="waters"] { --pike-card-art-position:97% 94%; --pike-card-art-size:46% auto; --pike-card-art-opacity:.32; --pike-card-art-mask:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.26) 31%,#000 55%); }
[data-species-id="pike"] .pike-species-gateway-card[data-pike-gateway-card="tactics"] { --pike-card-art-position:98% 88%; --pike-card-art-size:51% auto; --pike-card-art-opacity:.33; --pike-card-art-mask:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.22) 33%,#000 57%); }
[data-species-id="pike"] .pike-species-gateway-card[data-pike-gateway-card="season"] { --pike-card-art-position:98% 95%; --pike-card-art-size:48% auto; --pike-card-art-opacity:.33; --pike-card-art-mask:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.25) 31%,#000 55%); }
[data-species-id="pike"] .pike-species-gateway-card[data-pike-gateway-card="reports"] { --pike-card-art-position:98% 93%; --pike-card-art-size:49% auto; --pike-card-art-opacity:.31; --pike-card-art-mask:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.22) 33%,#000 57%); }
[data-species-id="pike"] .pike-overview-pencil-scene {
  width:100%;
  max-width:none;
  height:auto;
  aspect-ratio:1916 / 821;
  object-fit:cover;
  object-position:center 62%;
  opacity:.6;
  filter:contrast(1.04);
  -webkit-mask-image:linear-gradient(180deg,transparent 0%,rgba(0,0,0,.3) 7%,rgba(0,0,0,.76) 18%,#000 32%,#000 100%);
  mask-image:linear-gradient(180deg,transparent 0%,rgba(0,0,0,.3) 7%,rgba(0,0,0,.76) 18%,#000 32%,#000 100%);
}
[data-species-id="pike"] .pike-explore-all-waters {
  align-self:flex-start;
  min-height:2.75rem;
  margin-top:.8rem;
  padding:.45rem .75rem;
  border-color:rgba(21,39,43,.22);
  background:transparent;
  color:#53686d;
  font-size:.72rem;
}
[data-species-id="pike"] .pike-explore-all-waters:disabled,
[data-species-id="pike"] .species-map-feature-actions button:disabled { opacity:.56; cursor:not-allowed; }
[data-species-id="pike"] .pike-waters-preview .species-map-feature-actions button { min-height:2.75rem; }
@media (max-width:1050px) {
  [data-species-id="pike"] .pike-overview-pencil-scene { opacity:.54; }
  [data-species-id="pike"] .pike-species-gateway-card.has-pike-card-vignette { --pike-card-art-size:45% auto; }
}
@media (max-width:700px) {
  [data-species-id="pike"] .pike-overview-pencil-scene { opacity:.46; }
  [data-species-id="pike"] .pike-species-gateway-card.has-pike-card-vignette { --pike-card-art-size:52% auto; --pike-card-art-opacity:.24; --pike-card-art-position:102% 94%; }
  [data-species-id="pike"] .pike-species-gateway-card[data-pike-gateway-card="waters"],
  [data-species-id="pike"] .pike-species-gateway-card[data-pike-gateway-card="season"] { --pike-card-art-opacity:.25; }
  [data-species-id="pike"] #pike-species-waters button:not(.leaflet-control-zoom-in):not(.leaflet-control-zoom-out) { min-height:44px; }
}

/* Perch uses the locked species Overview structure with Perch-only artwork. */
[data-species-id="perch"] .species-hero img {
  inset:0 0 0 30%;
  width:70%;
  object-fit:cover;
  object-position:58% 54%;
}
[data-species-id="perch"] .species-overview-introduction .perch-species-gateway-card.has-perch-card-vignette::before {
  content:"";
  position:absolute;
  z-index:0;
  inset:0;
  background-image:var(--perch-card-vignette);
  background-repeat:no-repeat;
  background-position:var(--perch-card-art-position,right bottom);
  background-size:var(--perch-card-art-size,50% auto);
  opacity:var(--perch-card-art-opacity,.38);
  filter:contrast(1.15);
  pointer-events:none;
  user-select:none;
  -webkit-mask-image:var(--perch-card-art-mask,linear-gradient(90deg,transparent 0%,rgba(0,0,0,.2) 32%,#000 58%));
  mask-image:var(--perch-card-art-mask,linear-gradient(90deg,transparent 0%,rgba(0,0,0,.2) 32%,#000 58%));
}
[data-species-id="perch"] .perch-species-gateway-card.has-perch-card-vignette::after {
  background-image:linear-gradient(90deg,rgba(248,244,235,.94) 0%,rgba(248,244,235,.72) 42%,rgba(248,244,235,.12) 72%,rgba(248,244,235,.02) 100%);
  background-position:center;
  background-size:auto;
  opacity:1;
}
[data-species-id="perch"] .perch-species-gateway-card[data-perch-gateway-card="waters"] { --perch-card-art-position:98% 94%; --perch-card-art-size:54% auto; --perch-card-art-opacity:.4; }
[data-species-id="perch"] .perch-species-gateway-card[data-perch-gateway-card="tactics"] { --perch-card-art-position:99% 88%; --perch-card-art-size:58% auto; --perch-card-art-opacity:.39; }
[data-species-id="perch"] .perch-species-gateway-card[data-perch-gateway-card="season"] { --perch-card-art-position:98% 96%; --perch-card-art-size:55% auto; --perch-card-art-opacity:.4; }
[data-species-id="perch"] .perch-species-gateway-card[data-perch-gateway-card="reports"] { --perch-card-art-position:99% 92%; --perch-card-art-size:57% auto; --perch-card-art-opacity:.38; }
[data-species-id="perch"] .perch-overview-pencil-scene {
  bottom:3rem;
  width:100%;
  max-width:none;
  height:auto;
  aspect-ratio:auto;
  object-fit:contain;
  object-position:center bottom;
  opacity:.62;
  filter:none;
  -webkit-mask-image:linear-gradient(180deg,transparent 0%,rgba(0,0,0,.08) 18%,rgba(0,0,0,.58) 40%,#000 60%),radial-gradient(ellipse 97% 96% at 50% 64%,#000 0%,#000 62%,rgba(0,0,0,.76) 78%,transparent 100%);
  -webkit-mask-composite:source-in;
  mask-image:linear-gradient(180deg,transparent 0%,rgba(0,0,0,.08) 18%,rgba(0,0,0,.58) 40%,#000 60%),radial-gradient(ellipse 97% 96% at 50% 64%,#000 0%,#000 62%,rgba(0,0,0,.76) 78%,transparent 100%);
  mask-composite:intersect;
}
[data-species-id="perch"] .perch-overview-notice {
  position:absolute;
  top:calc(100% + .8rem);
  right:0;
  bottom:auto;
  left:0;
  width:100%;
  margin:0;
  padding:0;
  border:0;
  color:#334e53;
  font-family:Georgia,serif;
  font-size:clamp(.98rem,1.22vw,1.08rem);
  font-style:italic;
  line-height:1.5;
  text-align:center;
  white-space:normal;
}
[data-species-id="perch"] .perch-overview-notice strong {
  color:#18383f;
  font-style:italic;
  font-weight:600;
}
[data-species-id="perch"] .perch-explore-all-waters {
  align-self:flex-start;
  min-height:2.75rem;
  margin-top:.8rem;
  padding:.45rem .75rem;
  border-color:rgba(21,39,43,.22);
  background:transparent;
  color:inherit;
  font-size:.72rem;
}
@media (max-width:1050px) {
  [data-species-id="perch"] .perch-overview-pencil-scene { bottom:auto; margin-top:0; opacity:.56; }
  [data-species-id="perch"] .perch-species-gateway-card.has-perch-card-vignette { --perch-card-art-size:52% auto; }
}
@media (max-width:700px) {
  [data-species-id="perch"] .species-hero img { inset:0; width:100%; object-position:58% 54%; }
  [data-species-id="perch"] .perch-overview-pencil-scene { margin-top:0; opacity:.48; }
  [data-species-id="perch"] .perch-template-overview > .species-gateway-grid { padding-bottom:7.5rem; }
  [data-species-id="perch"] .perch-overview-notice { top:auto; right:0; bottom:0; left:0; margin:0; padding:.2rem 0 .1rem; }
  [data-species-id="perch"] .perch-species-gateway-card.has-perch-card-vignette { --perch-card-art-size:58% auto; --perch-card-art-opacity:.31; --perch-card-art-position:102% 94%; }
  [data-species-id="perch"] .perch-species-gateway-card[data-perch-gateway-card="waters"],
  [data-species-id="perch"] .perch-species-gateway-card[data-perch-gateway-card="season"] { --perch-card-art-opacity:.32; }
}

/* Locked catalogue opening-vignette placement: content defines the layout; artwork follows it. */
.species-overview-introduction {
  overflow:visible;
  padding-bottom:0;
  row-gap:0;
}
.species-overview-introduction > .species-overview-copy {
  grid-column:1;
  grid-row:1;
}
.species-overview-introduction > .species-gateway-grid {
  grid-column:2;
  grid-row:1;
}
.species-overview-introduction > .species-overview-vignette-layer {
  position:relative;
  z-index:0;
  grid-column:1 / -1;
  grid-row:2;
  left:auto;
  right:auto;
  bottom:auto;
  display:block;
  width:auto;
  max-width:none;
  height:auto;
  margin-top:calc(-1 * var(--species-opening-overlap,10%));
  overflow:visible;
  align-self:start;
  justify-self:stretch;
  transform:none;
  pointer-events:none;
}
@media (min-width:1051px) {
  .species-overview-introduction > .species-overview-vignette-layer {
    width:calc(100% + clamp(1.5rem,3vw,3rem));
  }
}
.species-overview-introduction > .species-overview-vignette-layer > .species-overview-pencil-scene {
  position:relative;
  inset:auto;
  display:block;
  width:100%;
  max-width:100%;
  height:auto;
  max-height:none;
  margin:0;
  aspect-ratio:auto;
  object-fit:contain;
  object-position:var(--sf-vignette-focal-point,center bottom);
  opacity:1;
  transform:none;
  transform-origin:center bottom;
  filter:none;
  -webkit-mask-image:var(--species-opening-mask,linear-gradient(180deg,transparent 0%,rgba(0,0,0,.04) 8%,rgba(0,0,0,.12) 14%,rgba(0,0,0,.28) 20%,rgba(0,0,0,.55) 27%,#000 36%,#000 100%))!important;
  mask-image:var(--species-opening-mask,linear-gradient(180deg,transparent 0%,rgba(0,0,0,.04) 8%,rgba(0,0,0,.12) 14%,rgba(0,0,0,.28) 20%,rgba(0,0,0,.55) 27%,#000 36%,#000 100%))!important;
  -webkit-mask-composite:initial;
  mask-composite:initial;
}
[data-species-id="european-eel"],
[data-species-id="gillaroo"],
[data-species-id="sea-trout"],
[data-species-id="sonaghan"] { --species-opening-overlap:7%; }
[data-species-id="salmon"],
[data-species-id="ferox-trout"] { --species-opening-overlap:14%; }
[data-species-id="salmon"],
[data-species-id="ferox-trout"],
[data-species-id="hybrids"] {
  --species-opening-mask:linear-gradient(180deg,transparent 0%,rgba(0,0,0,.03) 12%,rgba(0,0,0,.14) 22%,rgba(0,0,0,.35) 32%,rgba(0,0,0,.65) 40%,#000 48%,#000 100%);
}
[data-species-id="hybrids"] { --species-opening-overlap:22%; }
.species-overview-introduction > .species-overview-notice {
  position:relative;
  z-index:2;
  grid-column:1 / -1;
  grid-row:3;
  right:auto;
  bottom:auto;
  left:auto;
  margin:0;
}
[data-species-id="pike"] .pike-overview-pencil-scene {
  aspect-ratio:auto;
  object-fit:contain;
  object-position:var(--sf-vignette-focal-point,center bottom);
}
[data-species-id="perch"] .perch-overview-notice {
  top:auto;
  right:auto;
  bottom:auto;
  left:auto;
  width:auto;
  padding:.75rem 0 .65rem;
  border-top:1px solid rgba(21,39,43,.14);
}

@media (max-width:1050px) {
  .species-overview-introduction > .species-overview-copy,
  .species-overview-introduction > .species-gateway-grid { grid-column:1; }
  .species-overview-introduction > .species-overview-copy { grid-row:1; }
  .species-overview-introduction > .species-gateway-grid { grid-row:2; }
  .species-overview-introduction > .species-overview-vignette-layer {
    grid-row:3;
    width:100%;
  }
  .species-overview-introduction > .species-overview-notice { grid-row:4; }
  .species-overview-introduction > .species-overview-vignette-layer > .species-overview-pencil-scene {
    margin:0;
    opacity:1;
    transform:none;
  }
}
@media (max-width:700px) {
  [data-species-id="perch"] .perch-template-overview > .species-gateway-grid { padding-bottom:0; }
}
/* Shared selected-water expanded map. */
.view-larger-map-action { white-space:nowrap; }
.plan-selected-water > .view-larger-map-action { width:100%; margin-top:.65rem; }
.expanded-water-map-dialog { width:min(92vw,96rem); max-width:none; height:min(88dvh,58rem); max-height:none; margin:auto; padding:0; overflow:hidden; border:1px solid rgba(202,168,91,.65); border-radius:1rem; background:#f8f4eb; color:var(--ink); box-shadow:0 28px 80px rgba(3,22,29,.34); }
.expanded-water-map-dialog::backdrop { background:rgba(3,22,29,.62); }
.expanded-water-map-frame { display:grid; grid-template-rows:auto minmax(0,1fr); height:100%; min-height:0; }
.expanded-water-map-frame > header { position:relative; z-index:2; display:flex; align-items:center; justify-content:space-between; gap:1rem; min-height:5.15rem; padding:.85rem 1rem .8rem 1.25rem; border-bottom:1px solid rgba(21,39,43,.12); background:#f8f4eb; }
.expanded-water-map-frame h2 { margin:.1rem 0 0; font-size:clamp(1.45rem,2.4vw,2.2rem); line-height:1.05; }
.expanded-water-map-frame header p { margin:.24rem 0 0; color:#607277; font-size:.72rem; }
.expanded-water-map-frame [data-expanded-water-map-close] { flex:0 0 auto; width:2.75rem; height:2.75rem; padding:0; border:1px solid rgba(21,39,43,.42); border-radius:999px; background:transparent; color:var(--ink); font-size:1.45rem; line-height:1; }
.expanded-water-map-frame [data-expanded-water-map-close]:hover { border-color:var(--gold); background:#f0e5ce; }
.expanded-water-map-frame [data-expanded-water-map-close]:focus-visible { outline:3px solid var(--gold); outline-offset:2px; }
.expanded-water-map-canvas { width:100%; height:100%; min-height:0; background:#d9ded7; }
.expanded-water-map-dialog .leaflet-control-zoom { margin-top:1rem; margin-left:1rem; }
.expanded-water-map-dialog .sf-map-style-control { margin-left:1rem; margin-bottom:1rem; }
.expanded-water-map-dialog .leaflet-control-attribution { max-width:70%; font-size:.58rem; }
.expanded-water-map-dialog .expanded-water-marker-host { border:0; background:transparent; }
.expanded-water-map-dialog .expanded-water-marker-host > .species-water-marker { width:30px; height:30px; box-sizing:border-box; }
html.has-expanded-water-map { overflow:hidden; }
@media (max-width:700px) {
  .expanded-water-map-dialog { width:calc(100vw - 1rem); height:calc(100dvh - 1rem - env(safe-area-inset-top) - env(safe-area-inset-bottom)); border-radius:.8rem; }
  .expanded-water-map-frame > header { min-height:4.65rem; padding:.7rem .7rem .65rem .9rem; }
  .expanded-water-map-frame header p { font-size:.65rem; }
  .expanded-water-map-frame [data-expanded-water-map-close] { width:2.65rem; height:2.65rem; }
  .expanded-water-map-dialog .leaflet-control-attribution { max-width:82%; }
  .species-selected-water-actions .view-larger-map-action { grid-column:1/-1; }
}
@media (prefers-reduced-motion:reduce) {
  .expanded-water-map-dialog,.expanded-water-map-dialog::backdrop { scroll-behavior:auto; }
}

/* Category-shared Overview gateway artwork. Card structure and actions remain unchanged. */
.species-gateway-card[data-species-pill-link="waters"]::after {
  --shared-card-art:url("/assets/stay-fish-production/shared/Game/OverviewCards/game-waters-card-art.png");
}
.species-gateway-card[data-species-pill-link="tactics"]::after {
  --shared-card-art:url("/assets/stay-fish-production/shared/Game/OverviewCards/game-tactics-card-art.png");
}
.species-gateway-card[data-species-pill-link="season"]::after {
  --shared-card-art:url("/assets/stay-fish-production/shared/Game/OverviewCards/game-season-card-art.png");
}
.species-gateway-card[data-species-pill-link="reports"]::after {
  --shared-card-art:url("/assets/stay-fish-production/shared/Game/OverviewCards/game-reports-conditions-card-art.png");
}
.species-gateway-card[data-species-pill-link]::after {
  background-image:linear-gradient(90deg,#f8f4eb 0%,rgba(248,244,235,.99) 50%,rgba(248,244,235,.8) 56%,rgba(248,244,235,.25) 64%,rgba(248,244,235,.04) 72%,transparent 100%),var(--shared-card-art);
  background-position:center,right center;
  background-size:auto,cover;
}
.shared-overview-card-art.sf-decorative-vignette {
  inset:0;
  width:100%;
  height:100%;
  max-width:none;
  object-fit:cover;
  object-position:right center;
  opacity:.84;
  filter:none;
  -webkit-mask-image:linear-gradient(90deg,transparent 0%,transparent 44%,rgba(0,0,0,.3) 52%,rgba(0,0,0,.78) 62%,#000 70%),linear-gradient(180deg,rgba(0,0,0,.1) 0%,#000 35%,#000 100%)!important;
  -webkit-mask-composite:source-in;
  mask-image:linear-gradient(90deg,transparent 0%,transparent 44%,rgba(0,0,0,.3) 52%,rgba(0,0,0,.78) 62%,#000 70%),linear-gradient(180deg,rgba(0,0,0,.1) 0%,#000 35%,#000 100%)!important;
  mask-composite:intersect;
}
[data-species-id="pike"] .species-overview-introduction .pike-species-gateway-card.has-pike-card-vignette::before,
[data-species-id="perch"] .species-overview-introduction .perch-species-gateway-card.has-perch-card-vignette::before {
  background-position:right center;
  background-size:cover;
  opacity:.84;
  filter:none;
  -webkit-mask-image:linear-gradient(90deg,transparent 0%,transparent 44%,rgba(0,0,0,.3) 52%,rgba(0,0,0,.78) 62%,#000 70%);
  mask-image:linear-gradient(90deg,transparent 0%,transparent 44%,rgba(0,0,0,.3) 52%,rgba(0,0,0,.78) 62%,#000 70%);
}
[data-species-id="pike"] .pike-species-gateway-card.has-pike-card-vignette::after,
[data-species-id="perch"] .perch-species-gateway-card.has-perch-card-vignette::after {
  background-image:linear-gradient(90deg,#f8f4eb 0%,rgba(248,244,235,.99) 50%,rgba(248,244,235,.8) 56%,rgba(248,244,235,.25) 64%,rgba(248,244,235,.04) 72%,transparent 100%);
}
.species-gateway-card[data-species-pill-link] small,
.species-gateway-card:has(.shared-overview-card-art) small,
[data-species-id="pike"] .pike-species-gateway-card small,
[data-species-id="perch"] .perch-species-gateway-card small {
  max-inline-size:min(94%,15rem);
}
/* Shared, source-driven Conditions system */
.species-conditions-page { width:min(1180px,calc(100% - 32px)); margin:0 auto; padding:clamp(28px,4vw,56px) 0 72px; color:var(--ink,#123b3d); }
.species-conditions-page[hidden] { display:none; }
.conditions-region-panel > header[hidden],.conditions-region-panel > .conditions-weather-stage[hidden],.conditions-region-panel > .conditions-water-grid[hidden] { display:none; }
.conditions-standalone-page { height:100%; overflow:auto; background:var(--cream,#f5efe1); }
.conditions-introduction { max-width:760px; margin-bottom:24px; }
.conditions-introduction h1 { margin:.25rem 0 .7rem; font-family:var(--serif,Georgia,serif); font-size:clamp(2rem,4vw,3.8rem); line-height:1.03; }
.conditions-introduction p,.conditions-national-briefing p { font-size:1rem; line-height:1.65; }
.conditions-weather-stage { overflow:hidden; border:1px solid rgba(180,137,49,.34); border-radius:18px; background:linear-gradient(145deg,rgba(255,253,247,.96),rgba(239,232,216,.9)); }
.conditions-weather-stage > header,.conditions-weather-stage > footer { display:flex; align-items:center; justify-content:space-between; gap:14px; padding:16px 20px; }
.conditions-weather-stage h2 { margin:.2rem 0 0; font-family:var(--serif,Georgia,serif); }
.conditions-stage-time { font-size:.78rem; color:rgba(18,59,61,.7); }
.conditions-layer-controls { display:flex; flex-wrap:wrap; gap:8px; padding:0 20px 14px; }
.conditions-layer-controls button { min-height:36px; padding:7px 13px; border:1px solid rgba(180,137,49,.36); border-radius:999px; background:#fbf7ed; color:inherit; }
.conditions-layer-controls button:disabled { opacity:.58; cursor:not-allowed; }
.conditions-map-viewport { position:relative; display:grid; place-items:center; min-height:clamp(260px,34vw,430px); isolation:isolate; background:radial-gradient(circle at 42% 48%,rgba(205,216,205,.34),transparent 27%),linear-gradient(155deg,#e8e5d8,#dce5df); }
.conditions-map-grid { position:absolute; inset:0; z-index:-1; opacity:.28; background-image:linear-gradient(rgba(18,59,61,.12) 1px,transparent 1px),linear-gradient(90deg,rgba(18,59,61,.12) 1px,transparent 1px); background-size:52px 52px; }
.conditions-map-viewport p { display:grid; gap:8px; width:min(540px,calc(100% - 40px)); margin:0; padding:24px; border-radius:14px; background:rgba(250,247,237,.9); text-align:center; line-height:1.5; }
.conditions-weather-stage > footer { justify-content:flex-start; flex-wrap:wrap; border-top:1px solid rgba(18,59,61,.1); font-size:.78rem; }
.conditions-weather-stage > footer button { min-height:38px; }
.conditions-weather-stage > footer span { margin-left:auto; color:rgba(18,59,61,.68); }
.conditions-national-briefing { margin:20px 0; padding:20px 22px; border-left:3px solid var(--gold,#bd9138); background:rgba(255,252,244,.58); }
.conditions-national-briefing h2 { margin:.3rem 0; font-family:var(--serif,Georgia,serif); }
.conditions-region-grid,.conditions-water-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; margin-top:20px; }
.conditions-region-card,.conditions-water-grid > button { min-width:0; padding:19px; border:1px solid rgba(180,137,49,.34); border-radius:14px; background:#fbf7ed; color:inherit; text-align:left; }
.conditions-region-card:hover,.conditions-water-grid > button:hover { border-color:rgba(180,137,49,.72); background:#fff9e9; }
.conditions-region-card h3,.conditions-water-grid h3 { margin:.4rem 0; font-family:var(--serif,Georgia,serif); font-size:1.25rem; }
.conditions-region-card p,.conditions-water-grid p { min-height:3em; line-height:1.45; }
.conditions-region-card strong,.conditions-water-grid strong { font-size:.78rem; text-transform:uppercase; letter-spacing:.06em; }
.conditions-region-panel > header,.conditions-water-detail > header { max-width:780px; margin-bottom:22px; }
.conditions-region-panel > header h2,.conditions-water-detail > header h2 { margin:.55rem 0; font-family:var(--serif,Georgia,serif); font-size:clamp(2rem,4vw,3.25rem); }
.conditions-region-panel > header > button,.conditions-water-detail > header > button { margin-bottom:16px; }
.conditions-water-detail > .conditions-weather-stage { margin:20px 0; }
.conditions-evidence-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; margin:18px 0; }
.conditions-evidence-grid > section,.conditions-priority-panel,.conditions-forecast-timeline { padding:20px; border:1px solid rgba(18,59,61,.14); border-radius:14px; background:rgba(255,252,244,.76); }
.conditions-evidence-grid h3,.conditions-priority-panel h3,.conditions-forecast-timeline h3 { margin:.4rem 0; font-family:var(--serif,Georgia,serif); }
.conditions-evidence-grid p,.conditions-priority-panel p { line-height:1.55; }
.conditions-priority-list { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px; margin:16px 0; }
.conditions-priority-list > span { display:grid; gap:4px; padding:11px; border-top:1px solid rgba(180,137,49,.38); }
.conditions-priority-list small { color:rgba(18,59,61,.62); }
.conditions-forecast-timeline { margin-top:18px; }
.conditions-timeline-empty { display:flex; flex-wrap:wrap; gap:8px 18px; align-items:baseline; padding:16px 0 2px; color:rgba(18,59,61,.72); }
.conditions-forecast-periods { display:flex; gap:10px; overflow-x:auto; padding:12px 0 4px; scroll-snap-type:x proximity; }
.conditions-forecast-periods article { flex:0 0 180px; display:grid; gap:6px; padding:14px; border-radius:12px; background:#f7f0df; scroll-snap-align:start; }
.conditions-actions { display:flex; flex-wrap:wrap; gap:10px; margin-top:20px; }
@media (max-width:900px) { .conditions-region-grid,.conditions-water-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } .conditions-evidence-grid { grid-template-columns:1fr; } .conditions-priority-list { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width:560px) { .species-conditions-page { width:min(100% - 20px,1180px); padding-top:22px; } .conditions-weather-stage > header { align-items:flex-start; flex-direction:column; } .conditions-weather-stage > footer span { width:100%; margin-left:0; } .conditions-map-viewport { min-height:250px; } .conditions-region-grid,.conditions-water-grid,.conditions-priority-list { grid-template-columns:1fr; } .conditions-region-card p,.conditions-water-grid p { min-height:0; } }
@media (prefers-reduced-motion:reduce) { .conditions-weather-stage * { scroll-behavior:auto !important; animation:none !important; transition:none !important; } }
@media (max-width:1100px) {
  .member-nav-group { position:relative; }
  .member-discover-menu:not([hidden]) { position:absolute; z-index:90; top:0; left:calc(100% + .55rem); width:16rem; max-height:min(78vh,42rem); display:grid; overflow-y:auto; padding:.65rem; border:1px solid rgba(202,168,91,.3); border-radius:.65rem; background:var(--navy-900); box-shadow:0 18px 38px rgba(0,0,0,.34); }
  .member-discover-menu .member-species-menu:not([hidden]) { display:grid; }
  .member-species-category,.member-subnav-item { min-height:2.75rem; }
  .member-species-category-panel .member-species-link { min-height:2.65rem; }
}
/* Discover by water */
.discover-editorial-page{position:absolute;inset:0;overflow:auto;background:#f4efe3;color:#12343b;padding:clamp(1.25rem,3vw,3rem)}
.discover-editorial-inner{width:min(1120px,100%);margin:0 auto}.discover-editorial-hero{max-width:860px;padding:clamp(1rem,3vw,2rem) 0 2rem}.discover-editorial-hero h1{font:700 clamp(2.5rem,5.5vw,5.3rem)/.98 Georgia,"Times New Roman",serif;margin:.45rem 0 1rem;letter-spacing:-.025em}.discover-editorial-lead{max-width:780px;font:400 clamp(1.08rem,1.7vw,1.3rem)/1.65 Georgia,"Times New Roman",serif;margin:0}.discover-editorial-instruction{margin:1.25rem 0 0;color:#8a6723;font-size:.88rem;font-weight:800;letter-spacing:.02em}
.discover-editorial-vignette{position:relative;min-height:clamp(180px,27vw,320px);margin:.25rem 0 clamp(2.5rem,6vw,5rem);overflow:hidden;border-top:1px solid rgba(177,141,66,.42);border-bottom:1px solid rgba(177,141,66,.3);background:linear-gradient(180deg,rgba(244,239,227,1),rgba(235,226,207,.55) 45%,rgba(221,210,187,.42));isolation:isolate}.discover-editorial-vignette::before,.discover-editorial-vignette::after{content:"";position:absolute;pointer-events:none}.discover-editorial-vignette::before{inset:22% 4% 12%;opacity:.45;background:repeating-linear-gradient(168deg,transparent 0 22px,rgba(38,72,75,.1) 23px,transparent 24px 45px);mask-image:linear-gradient(90deg,transparent,#000 18%,#000 82%,transparent)}.discover-editorial-vignette::after{left:8%;right:8%;bottom:22%;height:1px;background:rgba(32,70,74,.2);box-shadow:0 13px rgba(32,70,74,.11),0 27px rgba(32,70,74,.07)}.discover-editorial-vignette.is-species::before{background:radial-gradient(ellipse at 28% 58%,rgba(37,73,76,.15),transparent 20%),radial-gradient(ellipse at 70% 48%,rgba(157,119,46,.13),transparent 18%),repeating-linear-gradient(172deg,transparent 0 27px,rgba(40,73,75,.07) 28px,transparent 30px 58px)}.discover-editorial-vignette>span{position:absolute;inset:0;background:linear-gradient(90deg,#f4efe3 0,transparent 18%,transparent 82%,#f4efe3 100%)}
.discover-editorial-story{display:grid;gap:0;margin-bottom:clamp(3rem,7vw,6rem)}.discover-editorial-story section{display:grid;grid-template-columns:4rem minmax(0,760px);gap:1.25rem;padding:clamp(1.5rem,3vw,2.6rem) 0;border-top:1px solid #d2c5a9}.discover-editorial-story section:nth-child(even){justify-content:end}.discover-editorial-number{padding-top:.35rem;color:#a47a27;font-size:.72rem;font-weight:900;letter-spacing:.14em}.discover-editorial-story h2{font:700 clamp(1.65rem,3vw,2.65rem)/1.08 Georgia,"Times New Roman",serif;margin:0 0 .7rem}.discover-editorial-story p{font-size:1.02rem;line-height:1.72;margin:0;color:#37565a}
.water-discovery-page{position:absolute;inset:0;overflow:auto;background:#f4efe3;color:#12343b;padding:clamp(1.25rem,3vw,3rem)}
.water-discovery-view{width:min(1120px,100%);margin:0 auto}
.water-discovery-heading{max-width:720px;margin-bottom:1.5rem}.water-discovery-heading h1{font-family:Georgia,"Times New Roman",serif;font-size:clamp(2.15rem,4vw,4rem);line-height:1.02;margin:.35rem 0 .75rem}.water-discovery-heading p{font-size:1.05rem;line-height:1.65;margin:0}
.water-discovery-hero{max-width:850px;padding:clamp(1rem,3vw,2rem) 0 2rem}.water-discovery-hero p{max-width:760px;font-family:Georgia,"Times New Roman",serif;font-size:clamp(1.08rem,1.7vw,1.3rem)}
.water-discovery-features{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin-bottom:clamp(3rem,7vw,5.5rem)}
.water-discovery-feature{min-height:270px;display:flex;flex-direction:column;justify-content:space-between;gap:1.5rem;padding:clamp(1.25rem,2.5vw,2rem);border:1px solid #d2c3a2;border-top:3px solid #c49a3d;border-radius:14px;background:linear-gradient(145deg,#fbf8ef,#f1e9d8)}.water-discovery-feature h2,.water-discovery-section-heading h2{font:700 clamp(1.7rem,3vw,2.5rem)/1.08 Georgia,"Times New Roman",serif;margin:.35rem 0 .65rem}.water-discovery-feature p{max-width:540px;line-height:1.6;margin:0}.water-discovery-feature button{align-self:flex-start;padding:.65rem 0;border:0;background:transparent;color:#174b52;font-weight:900;cursor:pointer}.water-discovery-feature button:hover{text-decoration:underline;text-underline-offset:4px}
.water-discovery-regions{padding-top:2rem;border-top:1px solid #d1c3a5}.water-discovery-section-heading{max-width:680px;margin-bottom:1.4rem}.water-discovery-section-heading p{line-height:1.55}
.water-discovery-region-grid,.water-discovery-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}
.water-discovery-region{min-height:145px;text-align:left;display:flex;flex-direction:column;justify-content:flex-end;gap:.55rem;padding:1.2rem;border:1px solid #d4c6a8;border-top:3px solid #c99f44;border-radius:14px;background:#fbf8f0;color:inherit;cursor:pointer}.water-discovery-region strong{font:700 1.55rem/1.1 Georgia,"Times New Roman",serif}.water-discovery-region small{color:#5a6c6d}
.water-discovery-region:hover,.water-discovery-region:focus-visible,.water-discovery-card:hover{background:#fffaf0;border-color:#b98d30}.water-discovery-region:focus-visible,.water-discovery-primary:focus-visible,.water-discovery-actions button:focus-visible,.water-discovery-filters button:focus-visible,.water-discovery-species button:focus-visible{outline:3px solid #0f5961;outline-offset:3px}
.water-discovery-meta{display:block;color:#9a752c;font-size:.72rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.water-discovery-back{margin:0 0 1.2rem;padding:.6rem 0;border:0;background:transparent;color:#19525a;font-weight:800;cursor:pointer}
.water-discovery-toolbar{display:grid;grid-template-columns:minmax(220px,1fr) auto;gap:1rem;align-items:end;padding:1rem 0 1.2rem;border-top:1px solid #d9cfb8}.water-discovery-toolbar label{display:grid;gap:.35rem;font-size:.78rem;font-weight:800}.water-discovery-toolbar input{width:100%;padding:.75rem .85rem;border:1px solid #b9ad94;border-radius:8px;background:#fffdf7;font:inherit}.water-discovery-toolbar>p{grid-column:1/-1;margin:0;color:#5b6968}
.water-discovery-filters{display:flex;flex-wrap:wrap;gap:.45rem}.water-discovery-filters button{padding:.62rem .8rem;border:1px solid #c8b995;border-radius:999px;background:#f9f4e8;color:#183c42;cursor:pointer}.water-discovery-filters button[aria-pressed="true"]{background:#173f45;color:#fff;border-color:#173f45}
.water-discovery-region-tabs{display:flex;flex-wrap:wrap;gap:.45rem}.water-discovery-region-tabs button{padding:.62rem .8rem;border:1px solid #c8b995;border-radius:999px;background:#f9f4e8;color:#183c42;cursor:pointer}.water-discovery-region-tabs button[aria-pressed="true"]{background:#173f45;color:#fff;border-color:#173f45}
.water-discovery-card{display:flex;flex-direction:column;min-height:285px;padding:1.15rem;border:1px solid #d6c9ac;border-radius:14px;background:#fbf8f0}.water-discovery-card-heading{display:flex;justify-content:space-between;gap:1rem}.water-discovery-card h3{font:700 1.45rem/1.15 Georgia,"Times New Roman",serif;margin:.25rem 0 .8rem}.water-discovery-status{align-self:flex-start;white-space:nowrap;font-size:.72rem;font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:#6c5727}.water-discovery-status.is-featured{color:#805f13}
.water-discovery-species{display:flex;flex-wrap:wrap;gap:.4rem}.water-discovery-species>span,.water-discovery-species>button{padding:.32rem .52rem;border:1px solid #d7ccb5;border-radius:999px;background:#f6f0e4;color:#274b50;font:600 .78rem/1.2 inherit}.water-discovery-species>button{cursor:pointer}.water-discovery-species .is-muted{color:#687574}.water-discovery-conservation{flex-basis:100%;display:flex;flex-direction:column;gap:.15rem;margin:.35rem 0 0;padding:.55rem .65rem;border-left:2px solid #b7903b;background:#f2ead8;font-size:.78rem}.water-discovery-conservation strong{color:#755817}.water-discovery-availability{margin:auto 0 .75rem;padding-top:1rem;color:#647171;font-size:.85rem}.water-discovery-primary,.water-discovery-actions button{padding:.72rem .9rem;border:1px solid #a98d52;border-radius:8px;background:#fffaf0;color:#173f45;font-weight:800;cursor:pointer}
.water-discovery-detail{max-width:900px}.water-discovery-detail-card{padding:clamp(1.2rem,3vw,2rem);border:1px solid #d0c09d;border-radius:16px;background:#fbf8f0}.water-discovery-detail-card h2{font:700 1.6rem Georgia,"Times New Roman",serif}.water-discovery-access{max-width:700px;line-height:1.6;color:#516263}.water-discovery-actions{display:flex;flex-wrap:wrap;gap:.65rem;margin-top:1.25rem}.water-discovery-actions .primary-action{background:#173f45;color:#fff}.water-discovery-empty{padding:2rem;text-align:center}

@media(max-width:700px){.discover-editorial-page,.water-discovery-page{padding:1rem}.discover-editorial-story section{grid-template-columns:2.25rem minmax(0,1fr);gap:.7rem}.discover-editorial-vignette{min-height:170px;margin-bottom:2.4rem}.water-discovery-region-grid,.water-discovery-grid,.water-discovery-features{grid-template-columns:1fr}.water-discovery-feature{min-height:230px}.water-discovery-toolbar{grid-template-columns:1fr}.water-discovery-toolbar input{min-height:44px}.water-discovery-region-tabs{flex-wrap:nowrap;overflow-x:auto;padding-bottom:.35rem}.water-discovery-region-tabs button{flex:0 0 auto;min-height:44px}.water-discovery-card{min-height:0}.water-discovery-actions{flex-direction:column}.water-discovery-actions button{width:100%}.water-discovery-card-heading{align-items:flex-start}}

/* Discover by method */
.method-discovery-page{position:absolute;inset:0;overflow:auto;background:#f4efe3;color:#12343b;padding:clamp(1.25rem,3vw,3rem)}
.method-discovery-view{width:min(1120px,100%);margin:0 auto}
.discover-editorial-vignette.is-method::before{background:radial-gradient(ellipse at 24% 55%,rgba(36,72,74,.13),transparent 18%),linear-gradient(165deg,transparent 47%,rgba(153,114,40,.14) 48%,transparent 49%),linear-gradient(12deg,transparent 62%,rgba(36,72,74,.1) 63%,transparent 64%)}
.method-discovery-season{display:inline-block;margin:0 0 1.5rem;padding:.45rem .7rem;border-left:2px solid #b58a35;background:#eee5d3;color:#536467;font-size:.82rem}
.method-discovery-species{padding:1.2rem 0;border-top:1px solid #d4c7aa}
.method-discovery-species h2,.method-discovery-water-heading{font:700 clamp(1.45rem,2.5vw,2.15rem)/1.12 Georgia,"Times New Roman",serif;margin:0 0 .8rem}
.method-discovery-toolbar{display:grid;grid-template-columns:1fr 1fr;gap:1rem;padding:1.2rem 0 1.5rem;border-top:1px solid #d4c7aa}
.method-discovery-toolbar>div>span{display:block;margin-bottom:.5rem;color:#886521;font-size:.72rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.method-discovery-toolbar>p{grid-column:1/-1;margin:0}
.method-filter-row{display:flex;flex-wrap:wrap;gap:.42rem}.method-filter-row button{padding:.58rem .72rem;border:1px solid #c8b995;border-radius:999px;background:#f9f4e8;color:#183c42;cursor:pointer}.method-filter-row button[aria-pressed="true"]{background:#173f45;color:#fff;border-color:#173f45}
.method-discovery-water-heading{margin:1.4rem 0 1rem}.method-discovery-explainer{line-height:1.5;color:#586968}.method-discovery-card-actions{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:auto;padding-top:1rem}.method-discovery-card-actions button{padding:.58rem .68rem;border:1px solid #b9a374;border-radius:7px;background:#fffaf0;color:#173f45;font-weight:800;cursor:pointer}
@media(max-width:700px){.method-discovery-page{padding:1rem}.method-discovery-toolbar{grid-template-columns:1fr}.method-filter-row{flex-wrap:nowrap;overflow-x:auto;padding-bottom:.35rem}.method-filter-row button{flex:0 0 auto;min-height:44px}}
/* Soft-launch landing: scoped to Home so Discover keeps its existing layout. */
.launch-home { display:none; }
.is-launch-home .launch-home { display:block; height:100%; overflow-y:auto; overflow-x:hidden; background:var(--navy-900); }
.is-launch-home .member-stage { grid-template-rows:minmax(0,1fr); }
.is-launch-home .member-topbar,.is-launch-home .interactive-map-workspace,.is-launch-home .member-account-summary,.is-launch-home .member-nav-secondary { display:none; }
.is-launch-home .member-primary-nav > .member-nav-item:not([data-nav="Home"]) { display:none; }
.launch-banner { display:flex; align-items:center; gap:.5rem; padding:.65rem .8rem; background:#193943; border-bottom:1px solid rgba(202,168,91,.3); font-size:.85rem; line-height:1.6; }
.launch-banner-window { overflow:hidden; flex:1; min-width:0; }
.launch-banner-track { display:flex; width:max-content; animation:launch-scroll 38s linear infinite; }
.launch-banner-track span { flex:none; padding-right:4rem; white-space:nowrap; }
.launch-banner button { flex:none; min-height:44px; color:var(--cream); background:transparent; border:1px solid var(--line); border-radius:.3rem; padding:.35rem .65rem; }
.launch-banner.is-paused .launch-banner-track,.launch-banner:hover .launch-banner-track,.launch-banner:focus-within .launch-banner-track { animation-play-state:paused; }
@keyframes launch-scroll { to { transform:translateX(-50%); } }
.launch-content { width:min(100%,1120px); margin:auto; padding:clamp(1.25rem,4vw,4rem); }
.launch-content section + section { margin-top:3rem; padding-top:2.5rem; border-top:1px solid var(--line); }
.launch-hero { max-width:48rem; }
.launch-home h1 { margin:.8rem 0 1rem; font:normal clamp(2.7rem,6vw,5rem)/1.1 Georgia,serif; }
.launch-home h2 { font:normal clamp(1.6rem,3vw,2.1rem)/1.2 Georgia,serif; margin:0 0 1rem; }
.launch-home h3 { margin:0 0 .75rem; font:normal 1.4rem Georgia,serif; }
.launch-home p { line-height:1.7; color:#c4d0cd; max-width:65ch; }
.launch-home .launch-lead { font-size:clamp(1.15rem,2vw,1.5rem); color:var(--cream); line-height:1.5; }
.launch-actions { display:flex; flex-wrap:wrap; gap:.75rem; margin-top:1.4rem; }
.launch-actions a,.launch-next button { display:inline-flex; align-items:center; justify-content:center; min-height:48px; padding:.8rem 1.1rem; border:1px solid var(--gold); border-radius:.4rem; color:var(--cream); text-decoration:none; line-height:1.4; }
.launch-actions a:first-child { background:var(--gold); color:var(--navy-950); font-weight:650; }
.launch-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1rem; }
.launch-grid a { padding:1.4rem; color:var(--cream); text-decoration:none; border:1px solid var(--line); border-radius:.6rem; background:rgba(255,255,255,.025); }
.launch-grid a:hover { border-color:var(--gold); }
.launch-grid span { color:#e2c780; }
.launch-home .launch-note { font-size:.9rem; }
.launch-next button { cursor:default; background:transparent; border-color:var(--line); color:#bdc9c6; }
@media(max-width:950px) { .launch-grid { grid-template-columns:1fr; } }
@media(max-width:600px) { .launch-content { padding:1.3rem; }.launch-actions { flex-direction:column; }.launch-actions a { width:100%; }.launch-banner { font-size:.8rem; }.launch-content section + section { margin-top:2rem; padding-top:2rem; } }
@media(prefers-reduced-motion:reduce) { .launch-banner-track { animation:none; width:auto; display:block; }.launch-banner-track span { display:block; white-space:normal; padding:0; }.launch-banner-track span + span,.launch-banner button { display:none; } }
.is-launch-home .member-primary-nav { overflow-x:hidden; }
.member-discover-menu [hidden] { display:none !important; }
.sidebar-collapsed .member-discover-menu:not([hidden]) { display:grid; position:fixed; z-index:90; top:6rem; left:calc(var(--sidebar) + .5rem); margin-left:0; width:min(16rem,calc(100vw - var(--sidebar) - 1rem)); max-height:calc(100svh - 7rem); overflow-y:auto; padding:.65rem; border:1px solid rgba(202,168,91,.3); border-radius:.65rem; background:var(--navy-900); box-shadow:0 18px 38px rgba(0,0,0,.34); }
@media (max-width:1100px) {
  /* Escape the sidebar scroll clip while keeping the menu inside the viewport. */
  .member-discover-menu:not([hidden]) { position:fixed; top:6rem; left:calc(var(--sidebar) + .5rem); margin-left:0; width:min(16rem,calc(100vw - var(--sidebar) - 1rem)); max-height:calc(100svh - 7rem); }
}

/* CSP-safe equivalents of the approved finite vignette presentation values. */
[data-vignette-focal-point="true"] { --sf-vignette-focal-point:true; }
[data-vignette-opacity=".58"] { --sf-vignette-opacity:.58; }
[data-vignette-contrast="1.15"] { --sf-vignette-contrast:1.15; }
[data-vignette-brightness=".99"] { --sf-vignette-brightness:.99; }
[data-vignette-focal-point="center 62%"] { --sf-vignette-focal-point:center 62%; }
[data-vignette-scale="1"] { --sf-vignette-scale:1; }
[data-vignette-translate-y="8%"] { --sf-vignette-translate-y:8%; }
[data-vignette-mobile-opacity=".46"] { --sf-vignette-mobile-opacity:.46; }
[data-vignette-mobile-scale="1"] { --sf-vignette-mobile-scale:1; }
[data-vignette-mobile-translate-y="5%"] { --sf-vignette-mobile-translate-y:5%; }
[data-vignette-focal-point="72% 68%"] { --sf-vignette-focal-point:72% 68%; }
[data-vignette-opacity=".5"] { --sf-vignette-opacity:.5; }
[data-vignette-contrast="1.1"] { --sf-vignette-contrast:1.1; }
[data-vignette-focal-point="center 68%"] { --sf-vignette-focal-point:center 68%; }
[data-vignette-scale=".82"] { --sf-vignette-scale:.82; }
[data-vignette-translate-y="12%"] { --sf-vignette-translate-y:12%; }
[data-vignette-mobile-opacity=".4"] { --sf-vignette-mobile-opacity:.4; }
[data-vignette-mobile-scale=".86"] { --sf-vignette-mobile-scale:.86; }
[data-vignette-mobile-translate-y="8%"] { --sf-vignette-mobile-translate-y:8%; }
[data-vignette-opacity=".54"] { --sf-vignette-opacity:.54; }
[data-vignette-contrast="1.16"] { --sf-vignette-contrast:1.16; }
[data-vignette-focal-point="center 70%"] { --sf-vignette-focal-point:center 70%; }
[data-vignette-scale=".96"] { --sf-vignette-scale:.96; }
[data-vignette-mobile-opacity=".42"] { --sf-vignette-mobile-opacity:.42; }
[data-vignette-mobile-scale=".94"] { --sf-vignette-mobile-scale:.94; }
[data-vignette-scale=".95"] { --sf-vignette-scale:.95; }
[data-vignette-mobile-scale=".92"] { --sf-vignette-mobile-scale:.92; }
[data-vignette-focal-point="74% 70%"] { --sf-vignette-focal-point:74% 70%; }
[data-vignette-contrast="1.14"] { --sf-vignette-contrast:1.14; }
[data-vignette-scale=".98"] { --sf-vignette-scale:.98; }
[data-vignette-contrast="1.12"] { --sf-vignette-contrast:1.12; }
[data-vignette-translate-y="10%"] { --sf-vignette-translate-y:10%; }
[data-vignette-mobile-scale=".96"] { --sf-vignette-mobile-scale:.96; }
[data-vignette-mobile-translate-y="7%"] { --sf-vignette-mobile-translate-y:7%; }
[data-vignette-mobile-opacity=".39"] { --sf-vignette-mobile-opacity:.39; }
[data-pike-gateway-card="waters"] { --pike-card-vignette:url('/assets/stay-fish-production/shared/Pike-Perch/OverviewCards/predatory-coarse-waters-card-art.png'); }
[data-pike-gateway-card="tactics"] { --pike-card-vignette:url('/assets/stay-fish-production/shared/Pike-Perch/OverviewCards/predatory-coarse-tactics-card-art.png'); }
[data-pike-gateway-card="season"] { --pike-card-vignette:url('/assets/stay-fish-production/shared/Pike-Perch/OverviewCards/predatory-coarse-season-card-art.png'); }
[data-pike-gateway-card="reports"] { --pike-card-vignette:url('/assets/stay-fish-production/shared/Pike-Perch/OverviewCards/predatory-coarse-reports-conditions-card-art.png'); }
[data-perch-gateway-card="waters"] { --perch-card-vignette:url('/assets/stay-fish-production/shared/Pike-Perch/OverviewCards/predatory-coarse-waters-card-art.png'); }
[data-perch-gateway-card="tactics"] { --perch-card-vignette:url('/assets/stay-fish-production/shared/Pike-Perch/OverviewCards/predatory-coarse-tactics-card-art.png'); }
[data-perch-gateway-card="season"] { --perch-card-vignette:url('/assets/stay-fish-production/shared/Pike-Perch/OverviewCards/predatory-coarse-season-card-art.png'); }
[data-perch-gateway-card="reports"] { --perch-card-vignette:url('/assets/stay-fish-production/shared/Pike-Perch/OverviewCards/predatory-coarse-reports-conditions-card-art.png'); }
.esri-truncated-attribution { vertical-align:-3px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; display:inline-block; transition:0s white-space; transition-delay:1s; }
.esri-truncated-attribution:hover { white-space:normal; }

/* Public app: retain navigation, keep personal/sample panels out of public view. */
.public-access .member-account-summary,.public-access .account-trigger,.public-access .utility-icon,.public-access .weather-summary,.public-access .alert-status,.public-access .home-water-card { display:none; }
.public-access .member-site-header { grid-template-columns:auto minmax(0,1fr) auto; }
.public-access .member-search { min-width:0; }
.public-access .member-search input { width:100%; min-width:0; }
.public-access .member-nav-secondary { max-height:35svh; overflow-y:auto; }
@media (max-width:760px) { .public-access .member-site-header { grid-template-columns:1fr; } }
.public-access .member-nav-secondary a { color:var(--cream); }
.premium-mark { margin-left:auto; color:var(--gold); font-size:.8rem; }
.membership-gate { position:absolute; inset:0; z-index:80; padding:clamp(1rem,4vw,3rem); overflow:auto; background:var(--navy-900); color:var(--cream); }
.membership-gate h1 { max-width:24ch; font-size:clamp(1.6rem,4vw,2.6rem); }
.membership-gate p { max-width:55ch; line-height:1.6; }
.membership-gate button { min-height:44px; padding:.7rem 1rem; }
@media(max-width:1100px) { .premium-mark { position:absolute; right:2px; top:2px; font-size:.6rem; }.member-nav-item { position:relative; } }
@media(max-width:760px) { .public-access .context-panel { width:100%; max-width:100%; }.public-access .layer-control.is-force-expanded { width:min(20rem,100%); max-width:100%; height:auto; flex-wrap:wrap; }.public-access .layer-control.is-force-expanded .layer-strip { display:flex; flex-wrap:wrap; width:100%; }.public-access .layer-control label { min-width:0; width:100%; white-space:normal; } }

.public-access .member-primary-nav,.public-access .member-nav-secondary { overflow-x:hidden; }
.public-access .member-stage { min-width:0; height:100svh; min-height:0; grid-template-rows:auto minmax(0,1fr); }
.public-access .member-sidebar { min-height:0; max-height:100svh; }



/* The upgrade message occupies its own row above every workspace. */
.member-shell.public-access { grid-template-rows:auto minmax(0,1fr); }
.public-access > .launch-banner { grid-column:1/-1; min-width:0; padding:.15rem .7rem; z-index:90; }
.public-access > .member-sidebar { grid-row:2; min-height:0; max-height:100%; }
.public-access > .member-stage { grid-row:2; height:100%; min-height:0; }
.public-access .member-nav-secondary { flex-shrink:1; }
.map-water-label a { color:var(--gold); font-size:.75rem; }
.coming-next-page { position:absolute; inset:0; overflow-y:auto; padding:clamp(1rem,4vw,3.5rem); background:var(--navy-900); color:var(--cream); }
.coming-next-page > header { max-width:48rem; margin-bottom:2rem; }
.coming-next-page h1 { font-family:Georgia,serif; font-size:clamp(1.8rem,4vw,3rem); line-height:1.15; }
.coming-next-page p { line-height:1.7; max-width:65ch; color:#c7d3d1; }
.coming-next-sections { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1.5rem 2.5rem; }
.coming-next-sections section { border-top:1px solid var(--line); padding-top:1.25rem; min-width:0; }
.coming-next-page h2 { font-family:Georgia,serif; font-size:1.4rem; }
.coming-next-page footer { margin-top:2rem; border-top:1px solid var(--line); padding-top:1rem; }
.coming-next-page footer a,.coming-next-page footer button { display:inline-flex; min-height:44px; align-items:center; padding:.7rem 1rem; color:var(--cream); background:transparent; border:1px solid var(--gold); margin:.4rem .5rem .4rem 0; }
@media(max-width:700px) { .coming-next-sections { grid-template-columns:minmax(0,1fr); }.map-water-label { max-width:calc(100% - 2rem); }.map-water-label p { white-space:normal; } }

/* Main map: an always-visible, single-selection side legend. */
.map-layer-legend { position:absolute; z-index:20; left:1rem; top:auto; bottom:2.5rem; max-height:calc(100% - 9rem); overflow-y:auto; overflow-x:hidden; width:11rem; padding:.65rem; border:1px solid var(--line); border-radius:.6rem; background:rgba(7,21,27,.94); color:var(--cream); }
.map-layer-legend h2,.map-layer-legend h3 { margin:.15rem 0 .35rem; font:600 .66rem/1.3 system-ui; text-transform:uppercase; letter-spacing:.08em; color:var(--gold); }
.map-layer-legend h3 { margin-top:.65rem; border-top:1px solid var(--line); padding-top:.65rem; }
.map-layer-legend button { display:flex; align-items:center; gap:.4rem; width:100%; min-height:36px; padding:.25rem; border:1px solid transparent; border-radius:.3rem; background:transparent; color:inherit; font-size:.75rem; text-align:left; }
.map-layer-legend button[aria-pressed="true"] { border-color:var(--gold); background:rgba(202,168,91,.14); font-weight:700; }
.map-layer-legend button small { margin-left:auto; font-size:.65rem; }
.map-layer-legend p { margin:.5rem 0 0; font-size:.65rem; line-height:1.35; }
.map-layer-indicator { flex:none; }
.river-species-filter { min-width:0; margin-top:.4rem; font:400 .65rem/1.35 system-ui; overflow-wrap:anywhere; }
.river-species-filter label { display:block; margin-bottom:.25rem; }
.river-filter-tip { margin-bottom:.5rem; padding:.4rem; border:1px solid var(--gold); border-radius:.3rem; background:#10262f; }
.river-filter-tip strong { font-size:.7rem; }
.river-navigator { width:min(22rem,100%); max-width:100%; box-sizing:border-box; overflow-y:auto; overflow-x:hidden; overflow-wrap:anywhere; }
.river-navigator input { width:100%; min-width:0; box-sizing:border-box; }
.river-navigator ul { list-style:none; padding:0; }
.river-navigator li { padding:.5rem 0; border-bottom:1px solid var(--line); }
.river-navigator li button { display:block; max-width:100%; min-height:44px; text-align:left; white-space:normal; }
.river-navigator small { display:block; }
.river-filter-tip button { text-decoration:underline; }
.river-species-filter select { box-sizing:border-box; width:100%; min-width:0; min-height:36px; font:inherit; color:var(--cream); background:#10262f; border:1px solid var(--line); border-radius:.3rem; }
.river-species-filter summary { cursor:pointer; margin-top:.35rem; }
.river-species-filter details { position:relative; }
.river-species-filter details[open] p { position:absolute; bottom:100%; left:0; width:100%; box-sizing:border-box; padding:.5rem; border:1px solid var(--line); border-radius:.3rem; background:#10262f; z-index:1; }
.river-species-filter select:focus-visible,.river-species-filter summary:focus-visible { outline:2px solid var(--gold); outline-offset:2px; }
.public-access .map-water-label { left:1rem; top:1rem; }
@media(max-width:700px) {
 .map-layer-legend { width:8.3rem; left:.5rem; top:auto; bottom:2.5rem; padding:.35rem; }

 .map-layer-legend button { min-height:44px; font-size:.65rem; gap:.2rem; }
 .map-layer-legend h3 { margin-top:.2rem; padding-top:.3rem; }
 .map-layer-legend p { font-size:.6rem; }
 .public-access .map-water-label { padding:.6rem; top:.5rem; left:.5rem; }
 .public-access .map-water-label h1 { font-size:1.05rem; margin:.15rem 0; }
 .public-access .map-water-label p { display:none; }
}

.public-access .return-to-water { left:auto; right:.5rem; top:5rem; }
