:root{--deep:#06212a;--water:#0b3a47;--teal:#14606a;--moss:#2f5d3a;--dusk:#f2a65a;--ember:#e5793b;--sand:#f4ead8;--ink:#e9f1ee;--mute:#a9c3c0;--card:rgba(6,33,42,.72);--r:16px}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;font:17px/1.6 -apple-system,BlinkMacSystemFont,"SF Pro Text","Segoe UI",Roboto,Helvetica,Arial,sans-serif;color:var(--ink);background:var(--deep)}
img{max-width:100%;height:auto;display:block}
a{color:var(--dusk)}
h1,h2,h3{font-family:-apple-system,BlinkMacSystemFont,"SF Pro Display","Segoe UI",Roboto,sans-serif;line-height:1.1;margin:0 0 .5em;letter-spacing:-.01em}
h1{font-size:clamp(2.2rem,4.4vw,3.4rem)}h2{font-size:clamp(1.8rem,3.6vw,2.8rem)}h3{font-size:1.2rem}
.wrap{max-width:1180px;margin:0 auto;padding:0 22px}
section{padding:88px 0}
.eyebrow{text-transform:uppercase;letter-spacing:.14em;font-size:.8rem;font-weight:700;color:var(--dusk);margin:0 0 .6em}
.sub{max-width:720px;color:var(--mute);margin:0 0 2rem}
/* nav */
.nav{position:sticky;top:0;z-index:10;background:rgba(6,33,42,.88);backdrop-filter:blur(10px);border-bottom:1px solid rgba(255,255,255,.08)}
.nav-in{display:flex;align-items:center;gap:24px;height:64px}
.brand{display:flex;align-items:center;gap:10px;color:var(--ink);text-decoration:none;font-weight:800;font-size:1.1rem}
.brand img{border-radius:9px}
.nav nav{display:flex;gap:20px;margin-left:auto}
.nav nav a{color:var(--mute);text-decoration:none;font-size:.95rem}.nav nav a:hover{color:var(--ink)}
.nav-cta{background:var(--dusk);color:#2a1606;text-decoration:none;font-weight:700;padding:8px 16px;border-radius:999px;font-size:.92rem;transition:background .2s}
.nav-cta:hover{background:#ffbd75}
/* hero */
.hero{background:radial-gradient(1200px 600px at 80% 0%,rgba(242,166,90,.35),transparent 60%),linear-gradient(180deg,#1d3b4a 0%,#0b3a47 45%,var(--deep) 100%);padding:72px 0 96px}
.hero-grid{display:grid;grid-template-columns:1fr 1.15fr;gap:48px;align-items:center}
.lede{font-size:1.15rem;color:#d5e4e1;max-width:540px}
.cta-row{display:flex;gap:16px;align-items:center;flex-wrap:wrap;margin:28px 0 14px}
.ghost{color:var(--ink);text-decoration:none;border:1px solid rgba(255,255,255,.3);padding:12px 20px;border-radius:12px;transition:background .2s}
.ghost:hover{background:rgba(255,255,255,.08)}
.fine{font-size:.88rem;color:var(--mute);max-width:520px}
.hero-art img,.tp-art img{border-radius:var(--r);box-shadow:0 30px 60px rgba(0,0,0,.45);border:1px solid rgba(255,255,255,.1)}
.store-btn{display:inline-flex;align-items:center;gap:10px;background:#000;color:#fff;text-decoration:none;padding:10px 20px 10px 16px;border-radius:12px;border:1px solid rgba(255,255,255,.35);line-height:1.1;font-weight:600;font-size:1.2rem;transition:transform .2s,background .2s}
.store-btn small{display:block;font-size:.68rem;font-weight:400}
.store-btn:hover{background:#1a1a1a;transform:translateY(-1px)}
.store-btn.big{font-size:1.4rem;padding:14px 26px 14px 20px}
/* facts */
.facts{padding:0 22px;margin-top:-40px;position:relative}
.facts-grid{max-width:1136px;padding:0;display:grid;grid-template-columns:repeat(5,1fr);gap:1px;background:#1c4652;border-radius:var(--r);overflow:hidden;border:1px solid rgba(255,255,255,.1)}
.facts-grid div{background:#0d3440;padding:22px 16px;text-align:center}
.facts b{display:block;font-size:2rem;color:var(--dusk);line-height:1}.facts span{font-size:.9rem;color:var(--mute)}
/* two player */
.two-player{background:linear-gradient(180deg,var(--deep),#0e3b35 60%,var(--deep))}
.tp-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:56px;align-items:center}
.checks{list-style:none;padding:0;margin:20px 0 0}
.checks li{padding:8px 0 8px 34px;position:relative}
.checks li:before{content:"";position:absolute;left:0;top:12px;width:20px;height:20px;border-radius:50%;background:var(--dusk) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M5 10l3 3 7-7' stroke='%232a1606' stroke-width='2.4' fill='none'/%3E%3C/svg%3E") center/14px no-repeat}
/* lakes */
.lakes-sec{background:linear-gradient(rgba(6,33,42,.86),rgba(6,33,42,.94)),url(images/lakes/cypressknee.webp) center/cover fixed}
.lake-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.lake{background:var(--card);border:1px solid rgba(255,255,255,.1);border-radius:var(--r);overflow:hidden;transition:transform .25s,border-color .25s}
.lake:hover{transform:translateY(-4px);border-color:rgba(242,166,90,.5)}
.lake img{aspect-ratio:16/9;object-fit:cover;width:100%}
.lake-pic{position:relative;overflow:hidden}.lake-fish{position:absolute;left:50%;top:50%;width:55%;aspect-ratio:auto!important;object-fit:contain!important;transform:translate(-50%,140%);opacity:0;transition:transform .45s ease,opacity .3s;filter:drop-shadow(0 8px 14px rgba(0,0,0,.5));pointer-events:none}.lake:hover .lake-fish{transform:translate(-50%,-50%);opacity:1}
.lake-body{padding:16px 18px 20px}
.lake h3{display:flex;align-items:center;gap:10px;margin-bottom:2px}
.place{margin:0 0 8px;color:var(--dusk);font-size:.9rem}
.roster{margin:0;font-size:.9rem;color:var(--mute)}
.tag{font-size:.7rem;text-transform:uppercase;letter-spacing:.08em;padding:3px 8px;border-radius:999px;font-weight:700}
.tag.free{background:#3f8f5a;color:#fff}.tag.pro{background:var(--dusk);color:#2a1606}
/* lures marquee */
.lures-sec{background:linear-gradient(180deg,#123b2c,#0b2e2a);overflow:hidden}
.marquee{display:flex;width:max-content;margin-top:8px}
.track{display:flex;gap:22px;list-style:none;margin:0;padding:0 11px;animation:drift 60s linear infinite}
.marquee:hover .track{animation-play-state:paused}
.track li{width:170px;flex:none;background:rgba(244,234,216,.07);border:1px solid rgba(244,234,216,.14);border-radius:var(--r);padding:18px 14px 14px;text-align:center}
.track img{width:120px;height:120px;object-fit:contain;margin:0 auto 10px;filter:drop-shadow(0 8px 10px rgba(0,0,0,.4))}
.track span{font-weight:700;font-size:.95rem}
@keyframes drift{from{transform:translateX(-100%)}to{transform:translateX(0)}}
@media (prefers-reduced-motion:reduce){.track{animation:none}.marquee{width:auto;overflow-x:auto;padding:0 22px}.track[aria-hidden]{display:none}html{scroll-behavior:auto}.lake:hover,.store-btn:hover{transform:none}.lake-fish{transition:opacity .3s}}
/* leaderboard */
.board-sec{background:radial-gradient(900px 500px at 15% 100%,rgba(229,121,59,.28),transparent 60%),linear-gradient(180deg,#0b2e2a,#1a2340 70%,#2a2040)}
.board-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:48px;align-items:start}
.species{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:24px}
.species figure{margin:0;background:rgba(255,255,255,.05);border-radius:12px;padding:10px 8px 8px;text-align:center}
.species img{height:56px;width:100%;object-fit:contain}
.species figcaption{font-size:.74rem;color:var(--mute);margin-top:4px;line-height:1.2}
.board{background:linear-gradient(180deg,#123845,#0a2730);border:1px solid rgba(242,166,90,.35);border-radius:22px;padding:22px;box-shadow:0 30px 60px rgba(0,0,0,.4)}
.board-head{display:flex;gap:14px;align-items:center;margin-bottom:12px}
.board-head h3{margin:0;font-size:1.4rem}.board-head p{margin:0;color:var(--dusk);font-size:.8rem;text-transform:uppercase;letter-spacing:.1em;font-weight:700}
.board ol{list-style:none;margin:0;padding:0}
.board li{display:grid;grid-template-columns:84px 1fr auto;grid-template-areas:"img sp wt" "img who wt";column-gap:12px;align-items:center;padding:10px 6px;border-top:1px solid rgba(255,255,255,.08)}
.board li img{grid-area:img;height:40px;width:84px;object-fit:contain}
.board .sp{grid-area:sp;font-weight:700;line-height:1.2}.board .who{grid-area:who;color:var(--mute);font-size:.88rem}
.board .wt{grid-area:wt;font-weight:800;color:var(--dusk);font-variant-numeric:tabular-nums}
.note{font-size:.8rem;color:var(--mute);margin:12px 0 0;font-style:italic}
/* how */
.how-sec{background:linear-gradient(180deg,#2a2040,#14303f 40%,var(--deep))}
.steps{list-style:none;padding:0;margin:0 0 40px;display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.steps li{background:var(--card);border:1px solid rgba(255,255,255,.1);border-radius:var(--r);padding:24px}
.steps .n{display:inline-grid;place-items:center;width:40px;height:40px;border-radius:50%;background:var(--dusk);color:#2a1606;font-weight:800;margin-bottom:12px}
.steps p{margin:0;color:#c9dbd8;font-size:.96rem}
.faq{max-width:820px}
.faq details{border-top:1px solid rgba(255,255,255,.12);padding:16px 0}
.faq summary{cursor:pointer;font-weight:700;font-size:1.08rem}
.faq p{color:#c9dbd8;margin:.6em 0 0}
/* final */
.final{background:linear-gradient(rgba(6,33,42,.55),rgba(6,33,42,.9)),url(images/lakes/norrisdam.webp) center/cover;text-align:center}
.final-in{display:flex;flex-direction:column;align-items:center}
.final img{width:180px;margin-bottom:12px}.final p{color:#d5e4e1;margin:0 0 24px}
.foot{background:#041519;padding:32px 0;font-size:.9rem;color:var(--mute)}
.foot-in{display:flex;flex-wrap:wrap;gap:12px 24px;align-items:center;justify-content:space-between}
.foot p{margin:0}.foot nav{display:flex;gap:20px}.foot .tm{flex-basis:100%;font-size:.78rem}
/* responsive */
@media (max-width:980px){.hero-grid,.tp-grid,.board-grid{grid-template-columns:1fr}.lake-grid{grid-template-columns:repeat(2,1fr)}.steps{grid-template-columns:repeat(2,1fr)}.facts-grid{grid-template-columns:repeat(3,1fr)}.nav nav{display:none}.nav-cta{margin-left:auto}.lakes-sec{background-attachment:scroll}}
@media (max-width:600px){section{padding:64px 0}.hero{padding:40px 0 80px}.lake-grid,.steps{grid-template-columns:1fr}.facts-grid{grid-template-columns:repeat(2,1fr)}.facts-grid div:last-child{grid-column:span 2}.species{grid-template-columns:repeat(3,1fr)}.track li{width:140px}.track img{width:96px;height:96px}.board li{grid-template-columns:64px 1fr auto}.board li img{width:64px}}
/* v2 */
.nav-in{height:92px}
.brand img{border-radius:16px;width:72px;height:72px}
.kicker{text-transform:uppercase;letter-spacing:.08em;font-weight:800;color:var(--sand);opacity:.85;margin:0 0 .5em;font-size:.95rem}
.pro-row{display:grid;grid-template-columns:1fr 260px;gap:32px;align-items:center}
.pro-fig{margin:0;text-align:center}.pro-fig blockquote{margin:14px 0 4px;font-style:italic;font-size:.95rem;line-height:1.45}.pro-fig figcaption{font-size:.8rem;opacity:.7}.pro-img{display:block;margin:0 auto;width:180px;height:180px;border-radius:22px;object-fit:cover;border:1px solid rgba(244,234,216,.18);box-shadow:0 20px 40px rgba(0,0,0,.35)}
.board li img{height:48px;width:110px}
.board li{grid-template-columns:110px 1fr auto}
.steps .path{background:rgba(242,166,90,.1);border-left:3px solid var(--dusk);padding:8px 10px;border-radius:8px;font-size:.9rem}
@media (max-width:600px){.nav-in{height:76px}.brand img{width:56px;height:56px;border-radius:13px}.pro-row{grid-template-columns:1fr}.pro-img{width:150px;height:150px;margin:0 auto}.board li{grid-template-columns:76px 1fr auto}.board li img{width:76px}}
.board li img{object-position:left center}
.final-btns{justify-content:center;margin:20px 0 0}

/* v3: bare fish, proportional leaderboard sizes */
.species figure{background:none;border-radius:0;padding:0}
.board li img{height:auto;max-height:52px;object-fit:contain;object-position:left center;justify-self:start;background:none}
.store-btn span{font-weight:700}
.lang-switch{flex-basis:100%;display:flex;flex-wrap:wrap;gap:6px 16px;font-size:.82rem}
.lang-switch a{color:var(--mute);text-decoration:none}.lang-switch a:hover{color:#fff}
.lang-switch a[aria-current]{color:#fff;font-weight:700}
