.fg{--navy:#0A1628;--blue:#0e4c6a;--teal:#0a3a3a;--water:#4B9DC0;--sky:#6BBFE0;--green:#1B3A2D;--sage:#52796F;--moss:#84A98C;--amber:#D4820A;--gold:#F0A500;--cream:#FAF6EE;--parch:#F2E8D5;--tan:#C9A96E;--brown:#3D2008;--ink:#1C1208;--muted:#5A4020;font-family:'Lora',Georgia,serif;color:var(--ink);background:var(--cream);box-sizing:border-box;}
.fg *{box-sizing:border-box;margin:0;padding:0;}
.fg a{color:var(--blue);text-decoration:none;}
.fg a:hover{text-decoration:underline;}

/* HERO */
.fg-hero{background:var(--navy);background-image:radial-gradient(ellipse at 30% 60%,rgba(14,76,106,.8) 0%,transparent 55%),radial-gradient(ellipse at 80% 20%,rgba(75,157,192,.2) 0%,transparent 50%),radial-gradient(ellipse at 50% 110%,rgba(10,22,40,.9) 0%,transparent 55%);padding:80px 24px 72px;text-align:center;position:relative;overflow:hidden;}
.fg-hero::before{content:'';position:absolute;inset:0;background-image:repeating-linear-gradient(0deg,transparent,transparent 40px,rgba(75,157,192,.04) 40px,rgba(75,157,192,.04) 41px),repeating-linear-gradient(90deg,transparent,transparent 40px,rgba(75,157,192,.03) 40px,rgba(75,157,192,.03) 41px);pointer-events:none;}
.fg-hero::after{content:'';position:absolute;bottom:0;left:0;right:0;height:3px;background:linear-gradient(90deg,transparent,var(--water) 30%,var(--sky) 50%,var(--water) 70%,transparent);}
.fg-hero-inner{position:relative;z-index:1;max-width:780px;margin:0 auto;}
.fg-eyebrow{font-family:'Space Mono',monospace;font-size:.63rem;letter-spacing:.22em;text-transform:uppercase;color:var(--moss);border:1px solid rgba(132,169,140,.3);padding:5px 16px;border-radius:20px;display:inline-block;margin-bottom:20px;}
.fg-hero h1{font-family:'Playfair Display',serif;font-size:clamp(2.4rem,6vw,4.2rem);font-weight:900;line-height:1.06;color:#fff;margin-bottom:8px;}
.fg-hero h1 em{font-style:italic;color:var(--sky);display:block;font-size:.65em;}
.fg-hero-sub{font-size:1.05rem;line-height:1.7;color:rgba(250,246,238,.75);max-width:580px;margin:18px auto 0;}

/* STAT STRIP */
.fg-strip{display:grid;grid-template-columns:repeat(5,1fr);background:var(--teal);}
@media(max-width:640px){.fg-strip{grid-template-columns:repeat(3,1fr);}}
@media(max-width:400px){.fg-strip{grid-template-columns:repeat(2,1fr);}}
.fg-stat{padding:16px 10px;text-align:center;border-right:1px solid rgba(75,157,192,.2);}
.fg-stat:last-child{border-right:none;}
.fg-stat-n{font-family:'Playfair Display',serif;font-size:1.4rem;font-weight:900;color:var(--sky);line-height:1;display:block;}
.fg-stat-l{font-family:'Space Mono',monospace;font-size:.52rem;letter-spacing:.1em;text-transform:uppercase;color:rgba(107,191,224,.6);margin-top:4px;display:block;}

/* NAV */
.fg-nav{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;padding:24px;background:var(--cream);border-bottom:2px solid var(--parch);}
.fg-nav a{font-family:'Space Mono',monospace;font-size:.65rem;letter-spacing:.08em;text-transform:uppercase;padding:7px 14px;border-radius:4px;border:1.5px solid var(--tan);color:var(--brown);transition:all .15s;}
.fg-nav a:hover{background:var(--navy);color:#fff;border-color:var(--navy);text-decoration:none;}

/* LAYOUT */
.fg-section{padding:60px 24px;max-width:960px;margin:0 auto;}
.fg-bg{padding:60px 24px;}
.fg-bg--dark{background:var(--navy);background-image:radial-gradient(ellipse at top right,rgba(14,76,106,.4) 0%,transparent 55%);}
.fg-bg--teal{background:var(--teal);}
.fg-bg--parch{background:var(--parch);border-top:3px solid var(--tan);border-bottom:3px solid var(--tan);}
.fg-bg--blue{background:var(--blue);}
.fg-inner{max-width:960px;margin:0 auto;}
.fg-label{font-family:'Space Mono',monospace;font-size:.63rem;letter-spacing:.2em;text-transform:uppercase;color:var(--water);display:block;margin-bottom:10px;}
.fg-label--green{color:var(--moss);}
.fg-label--amber{color:var(--amber);}
.fg-h2{font-family:'Playfair Display',serif;font-size:clamp(1.7rem,3.5vw,2.5rem);font-weight:900;color:var(--brown);line-height:1.1;margin-bottom:14px;}
.fg-h2 em{font-style:italic;color:var(--amber);}
.fg-h2--light{color:#fff;}
.fg-h2--sky{color:var(--sky);}
.fg-lead{font-size:1rem;line-height:1.75;color:var(--muted);}
.fg-lead--light{color:rgba(250,246,238,.78);}

/* WORLD RECORD BOX */
.fg-record{background:linear-gradient(135deg,var(--navy),#0e2a4a);border-radius:14px;padding:36px 32px;margin:28px 0;text-align:center;position:relative;overflow:hidden;border:1px solid rgba(107,191,224,.2);}
.fg-record::before{content:'🎣';position:absolute;font-size:14rem;opacity:.05;top:50%;left:50%;transform:translate(-50%,-50%);pointer-events:none;}
.fg-record-label{font-family:'Space Mono',monospace;font-size:.65rem;letter-spacing:.25em;text-transform:uppercase;color:var(--sky);display:block;margin-bottom:12px;}
.fg-record-fish{font-family:'Playfair Display',serif;font-size:clamp(2rem,5vw,3.5rem);font-weight:900;color:#fff;line-height:1;margin-bottom:8px;}
.fg-record-fish span{color:var(--gold);}
.fg-record-detail{font-size:.92rem;color:rgba(250,246,238,.7);line-height:1.65;max-width:560px;margin:0 auto;}
.fg-record-chips{display:flex;gap:8px;justify-content:center;flex-wrap:wrap;margin-top:16px;}
.fg-record-chip{font-family:'Space Mono',monospace;font-size:.6rem;background:rgba(107,191,224,.1);border:1px solid rgba(107,191,224,.3);color:var(--sky);padding:4px 12px;border-radius:20px;}

/* SPECIES GRID */
.fg-species-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px;margin-top:28px;}
.fg-species-card{background:#fff;border:1.5px solid #E0EDF5;border-radius:10px;overflow:hidden;}
.fg-species-top{height:70px;display:flex;align-items:center;justify-content:center;gap:12px;padding:0 18px;}
.fg-species-top--sm{background:linear-gradient(135deg,#0a2540,#0e4c6a);}
.fg-species-top--lm{background:linear-gradient(135deg,#1a3a1a,#2D6A4F);}
.fg-species-top--walleye{background:linear-gradient(135deg,#2a2a0a,#5a5a1a);}
.fg-species-top--crappie{background:linear-gradient(135deg,#1a1a2e,#3a3a5a);}
.fg-species-top--cat{background:linear-gradient(135deg,#2a1a0a,#5a3a1a);}
.fg-species-top--musky{background:linear-gradient(135deg,#0a2a2a,#1a5a5a);}
.fg-species-top--trout{background:linear-gradient(135deg,#1a0a2a,#3a1a5a);}
.fg-species-top--bluegill{background:linear-gradient(135deg,#0a1a2a,#1a4a6a);}
.fg-species-icon{font-size:1.8rem;}
.fg-species-name{font-family:'Playfair Display',serif;font-size:1rem;font-weight:700;color:#fff;}
.fg-species-body{padding:14px 16px;}
.fg-species-body p{font-size:.82rem;line-height:1.6;color:var(--muted);margin-bottom:10px;}
.fg-reg-row{display:flex;justify-content:space-between;align-items:baseline;padding:4px 0;border-bottom:1px dashed #E0EDF5;font-size:.78rem;}
.fg-reg-row:last-child{border-bottom:none;}
.fg-reg-label{color:var(--sage);}
.fg-reg-val{color:var(--brown);font-weight:600;text-align:right;max-width:60%;}

/* LAKE CARDS */
.fg-lake-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:20px;margin-top:28px;}
.fg-lake-card{background:#fff;border-radius:12px;overflow:hidden;border:1.5px solid #E0EDF5;transition:transform .2s,box-shadow .2s;}
.fg-lake-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px rgba(0,0,0,.1);}
.fg-lake-top{height:140px;display:flex;align-items:center;justify-content:center;font-size:4rem;position:relative;}
.fg-lake-top--dh{background:linear-gradient(135deg,#020c1b,#0a2540,#0e4c6a);}
.fg-lake-top--bsf{background:linear-gradient(135deg,#1B3A2D,#2D6A4F);}
.fg-lake-top--holpps{background:linear-gradient(135deg,#0a3a3a,#0e6060);}
.fg-lake-top--wolf{background:linear-gradient(135deg,#1a2a1a,#2a4a2a);}
.fg-lake-badge{position:absolute;top:10px;right:10px;background:var(--gold);color:var(--brown);font-family:'Space Mono',monospace;font-size:.55rem;letter-spacing:.08em;text-transform:uppercase;padding:3px 8px;border-radius:2px;font-weight:700;}
.fg-lake-body{padding:18px 20px;}
.fg-lake-tag{font-family:'Space Mono',monospace;font-size:.58rem;letter-spacing:.1em;text-transform:uppercase;color:var(--sage);display:block;margin-bottom:6px;}
.fg-lake-title{font-family:'Playfair Display',serif;font-size:1.1rem;font-weight:700;color:var(--brown);margin-bottom:8px;}
.fg-lake-desc{font-size:.84rem;line-height:1.6;color:var(--muted);margin-bottom:12px;}
.fg-lake-chips{display:flex;flex-wrap:wrap;gap:5px;margin-bottom:12px;}
.fg-chip{font-family:'Space Mono',monospace;font-size:.56rem;background:var(--parch);border:1px solid var(--tan);color:var(--sage);padding:3px 8px;border-radius:20px;}
.fg-lake-link{display:inline-flex;align-items:center;gap:5px;font-family:'Space Mono',monospace;font-size:.62rem;letter-spacing:.06em;text-transform:uppercase;color:var(--blue);font-weight:700;}

/* SEASONAL TABLE */
.fg-seasonal{margin-top:28px;}
.fg-season-row{display:grid;grid-template-columns:120px 1fr;gap:0;border-bottom:1px solid rgba(107,191,224,.15);}
.fg-season-row:last-child{border-bottom:none;}
.fg-season-label{padding:16px 18px;font-family:'Space Mono',monospace;font-size:.65rem;letter-spacing:.1em;text-transform:uppercase;color:var(--sky);font-weight:700;border-right:1px solid rgba(107,191,224,.15);}
.fg-season-content{padding:16px 18px;font-size:.87rem;line-height:1.6;color:rgba(250,246,238,.78);}

/* LICENSE TABLE */
.fg-lic-table{width:100%;border-collapse:collapse;margin-top:20px;}
.fg-lic-table th{font-family:'Space Mono',monospace;font-size:.6rem;letter-spacing:.1em;text-transform:uppercase;padding:10px 14px;text-align:left;background:var(--navy);color:var(--sky);border-bottom:2px solid rgba(107,191,224,.3);}
.fg-lic-table td{padding:10px 14px;font-size:.85rem;color:var(--cream);border-bottom:1px solid rgba(107,191,224,.1);}
.fg-lic-table tr:last-child td{border-bottom:none;}
.fg-lic-table tr:nth-child(even) td{background:rgba(255,255,255,.03);}
.fg-lic-highlight{color:var(--gold);font-weight:600;}

/* WARNING BOX */
.fg-warning{background:rgba(212,130,10,.1);border:1px solid rgba(212,130,10,.3);border-left:4px solid var(--amber);border-radius:0 8px 8px 0;padding:16px 20px;margin-top:20px;display:flex;gap:12px;align-items:flex-start;}
.fg-warning-icon{font-size:1.2rem;flex-shrink:0;}
.fg-warning p{font-size:.87rem;line-height:1.65;color:rgba(250,246,238,.85);}
.fg-warning strong{color:var(--gold);}
.fg-warning a{color:var(--gold);}

/* CTA */
.fg-cta{background:linear-gradient(135deg,var(--green),#0d2318);padding:56px 24px;text-align:center;position:relative;overflow:hidden;}
.fg-cta::before{content:'🎣';position:absolute;font-size:16rem;opacity:.04;top:-20px;right:-30px;line-height:1;pointer-events:none;}
.fg-cta h2{font-family:'Playfair Display',serif;font-size:clamp(1.7rem,4vw,2.6rem);font-weight:900;color:var(--gold);margin-bottom:14px;position:relative;}
.fg-cta p{font-size:1rem;color:rgba(250,246,238,.85);max-width:520px;margin:0 auto 26px;line-height:1.65;position:relative;}
.fg-cta-btns{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;position:relative;}
.fg-btn{display:inline-block;padding:13px 26px;border-radius:6px;font-family:'Space Mono',monospace;font-size:.75rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;text-decoration:none;transition:transform .15s,box-shadow .15s;}
.fg-btn:hover{transform:translateY(-2px);box-shadow:0 5px 18px rgba(0,0,0,.3);text-decoration:none;}
.fg-btn-gold{background:var(--gold);color:var(--brown);}
.fg-btn-out{background:transparent;border:2px solid rgba(107,191,224,.5);color:var(--sky);}

/* TWO COL */
.fg-two-col{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:start;}
@media(max-width:640px){.fg-two-col{grid-template-columns:1fr;gap:24px;}}