:root{
  --lake:#073b4c;--lake-2:#0b5368;--water:#55c2d8;--cypress:#24552f;--leaf:#75c043;
  --sun:#f6a623;--cream:#f7f5ec;--paper:#ffffff;--ink:#15343d;--muted:#56717a;
  --line:rgba(7,59,76,.18);--shadow:0 18px 50px rgba(7,44,55,.14);--radius:22px;
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font:16px/1.6 Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif}a{color:inherit}img{max-width:100%;display:block}.wrap{width:min(1180px,calc(100% - 36px));margin:auto}.skip{position:absolute;left:-9999px}.skip:focus{left:18px;top:12px;background:#fff;padding:10px 14px;z-index:1000}.site-header{position:sticky;top:0;z-index:40;background:rgba(7,59,76,.96);backdrop-filter:blur(14px);border-bottom:1px solid rgba(255,255,255,.12)}.nav-row{min-height:82px;display:flex;align-items:center;gap:24px}.brand{display:flex;align-items:center;gap:12px;color:#fff;text-decoration:none;font-weight:900;letter-spacing:.02em}.brand-mark{width:48px;height:48px;border-radius:15px;background:linear-gradient(145deg,var(--leaf),var(--water));display:grid;place-items:center;color:var(--lake);font-weight:950;box-shadow:inset 0 0 0 2px rgba(255,255,255,.32)}.brand small{display:block;color:#bdebf2;font-size:.72rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.nav-links{margin-left:auto;display:flex;align-items:center;gap:7px}.nav-links a{color:#eaf8f9;text-decoration:none;padding:10px 12px;border-radius:10px;font-weight:750;font-size:.92rem}.nav-links a:hover,.nav-links a[aria-current="page"]{background:rgba(255,255,255,.13);color:#fff}.menu-button{display:none;margin-left:auto;border:1px solid rgba(255,255,255,.35);background:transparent;color:#fff;border-radius:10px;padding:9px 12px;font-weight:800}.hero{min-height:610px;display:grid;align-items:end;background:linear-gradient(90deg,rgba(3,27,35,.88) 0%,rgba(3,27,35,.68) 37%,rgba(3,27,35,.06) 72%),url('images/central-florida-lake-hero.png') center/cover;color:#fff}.hero-content{padding:84px 0 70px;max-width:680px}.eyebrow{display:inline-flex;align-items:center;gap:8px;text-transform:uppercase;letter-spacing:.14em;font-size:.78rem;font-weight:900;color:#bcebf3}.eyebrow:before{content:"";width:34px;height:3px;background:var(--sun);border-radius:5px}.hero h1,.page-hero h1{font-size:clamp(2.8rem,7vw,5.8rem);line-height:.95;margin:.22em 0;font-weight:950;letter-spacing:-.055em}.hero p{font-size:clamp(1.08rem,2vw,1.35rem);max-width:610px;color:#e5f4f5}.actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:26px}.button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:11px 18px;border-radius:12px;background:var(--sun);color:#152d33;text-decoration:none;font-weight:900;border:2px solid var(--sun)}.button.secondary{background:transparent;color:#fff;border-color:rgba(255,255,255,.72)}.section{padding:76px 0}.section.alt{background:#e8f2ef}.section-head{display:flex;justify-content:space-between;align-items:end;gap:28px;margin-bottom:30px}.section-head h2{font-size:clamp(2rem,4vw,3.25rem);line-height:1.05;margin:0;letter-spacing:-.035em}.section-head p{max-width:570px;margin:0;color:var(--muted)}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:25px;box-shadow:0 8px 28px rgba(7,59,76,.06)}.card:hover{transform:translateY(-3px);box-shadow:var(--shadow);transition:.22s}.card h3{margin:.35rem 0 .45rem;font-size:1.25rem}.card p{color:var(--muted);margin:.35rem 0}.icon{width:48px;height:48px;border-radius:14px;background:#dff2ed;color:var(--cypress);display:grid;place-items:center;font-size:1.45rem}.tag{display:inline-block;padding:5px 9px;border-radius:999px;background:#e2f3f6;color:var(--lake-2);font-size:.75rem;font-weight:850;margin:3px}.spotlight{display:grid;grid-template-columns:1.1fr .9fr;gap:24px}.spotlight .panel{background:var(--lake);color:#fff;border-radius:28px;padding:36px;overflow:hidden}.spotlight .panel:nth-child(2){background:var(--sun);color:#17323a}.stat-row{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:25px}.stat{padding:16px;border:1px solid rgba(255,255,255,.18);border-radius:16px;background:rgba(255,255,255,.08)}.stat strong{display:block;font-size:1.45rem}.page-hero{background:linear-gradient(135deg,var(--lake),#0b6378);color:#fff;padding:72px 0 66px}.page-hero h1{font-size:clamp(2.7rem,6vw,5rem);max-width:900px}.page-hero p{max-width:760px;color:#d8f2f5;font-size:1.15rem}.filter-bar{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:24px}.filter{border:1px solid var(--line);border-radius:999px;background:#fff;padding:9px 14px;font-weight:800;color:var(--lake);cursor:pointer}.filter.active{background:var(--lake);color:#fff}.location-grid,.species-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:22px}.location-card,.species-card{background:#fff;border-radius:20px;border:1px solid var(--line);padding:25px}.location-card h2,.species-card h2{margin-top:0}.details{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin:18px 0}.details div{background:#edf6f4;border-radius:12px;padding:11px}.details strong{display:block;font-size:.78rem;text-transform:uppercase;letter-spacing:.07em;color:var(--cypress)}.notice{padding:18px 20px;border-left:5px solid var(--sun);background:#fff5d9;border-radius:0 14px 14px 0}.planner{display:grid;grid-template-columns:1fr .85fr;gap:24px}.checklist{list-style:none;padding:0;margin:0}.checklist li{display:flex;gap:12px;padding:12px 0;border-bottom:1px solid var(--line)}.checklist input{width:20px;height:20px;accent-color:var(--cypress)}label{font-weight:700}.field{display:grid;gap:6px;margin-bottom:14px}.field input,.field select,.field textarea{width:100%;padding:12px 13px;border:1px solid #b8cacc;border-radius:10px;background:#fff;font:inherit}.field textarea{min-height:105px}.result{margin-top:16px;padding:18px;border-radius:16px;background:#e4f3ef}.site-footer{background:#042d39;color:#cfe7ea;padding:48px 0 30px}.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:30px}.site-footer h3{color:#fff}.site-footer a{color:#cfe7ea}.fine{margin-top:30px;padding-top:20px;border-top:1px solid rgba(255,255,255,.15);font-size:.82rem}.hidden{display:none!important}
@media(max-width:900px){.menu-button{display:block}.nav-links{display:none;position:absolute;left:18px;right:18px;top:72px;background:var(--lake);padding:12px;border-radius:16px;box-shadow:var(--shadow);flex-direction:column;align-items:stretch}.nav-links.open{display:flex}.nav-links a{text-align:center}.grid{grid-template-columns:1fr 1fr}.spotlight,.planner{grid-template-columns:1fr}.hero{min-height:560px;background-position:62% center}.hero-content{padding:70px 0 48px}.footer-grid{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.grid,.location-grid,.species-grid,.footer-grid,.details{grid-template-columns:1fr}.section{padding:54px 0}.section-head{display:block}.section-head p{margin-top:12px}.hero h1{font-size:3.25rem}.stat-row{grid-template-columns:1fr}.brand span{font-size:.92rem}}
.map-shell{display:grid;grid-template-columns:320px minmax(0,1fr);gap:20px;align-items:start}.map-panel{background:#fff;border:1px solid var(--line);border-radius:20px;padding:20px;box-shadow:0 8px 28px rgba(7,59,76,.06)}.map-panel h2{margin-top:0}.map-actions{display:flex;gap:8px;margin:12px 0}.map-actions button{flex:1;border:1px solid var(--line);background:#edf6f4;color:var(--lake);border-radius:9px;padding:9px;font-weight:850;cursor:pointer}.map-actions button:hover{background:#d9eee8}.map-filter{display:flex;align-items:center;gap:10px;padding:8px 0;font-weight:750}.map-filter input{width:19px;height:19px;accent-color:var(--cypress)}.map-count{font-size:.86rem;color:var(--muted)}#access-map{height:660px;border-radius:20px;border:1px solid var(--line);box-shadow:var(--shadow);background:#cfe7ea}.map-key{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin:14px 0}.key-item{display:flex;align-items:center;gap:7px;font-size:.84rem}.key-dot{width:12px;height:12px;border-radius:50%;box-shadow:0 0 0 2px #fff,0 0 0 3px rgba(0,0,0,.16)}.access-list{margin-top:14px;max-height:260px;overflow:auto;border-top:1px solid var(--line)}.access-item{width:100%;border:0;border-bottom:1px solid var(--line);background:#fff;text-align:left;padding:11px 3px;cursor:pointer;color:var(--ink)}.access-item:hover{color:var(--lake-2);background:#f5faf8}.access-item strong{display:block}.access-item span{font-size:.8rem;color:var(--muted)}.leaflet-popup-content h3{margin:.15rem 0 .35rem;color:var(--lake)}.leaflet-popup-content p{margin:.35rem 0}.popup-links{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.popup-links a{font-weight:850;color:var(--lake-2)}.map-warning{margin-top:20px}
@media(max-width:900px){.map-shell{grid-template-columns:1fr}.access-list{max-height:180px}#access-map{height:580px}}
@media(max-width:620px){.map-key{grid-template-columns:1fr}#access-map{height:500px}.map-panel{padding:16px}}
.map-shell{width:100%;min-width:0}.map-shell>*{min-width:0}#access-map{width:100%;max-width:100%;overflow:hidden}.leaflet-container img,.leaflet-container svg{max-width:none!important;max-height:none!important}.leaflet-container{isolation:isolate}body{overflow-x:hidden}
.reg-intro{display:grid;grid-template-columns:1.15fr .85fr;gap:22px;margin-bottom:30px}.reg-source{background:var(--lake);color:#fff;border-radius:22px;padding:26px}.reg-source p{color:#d8f2f5}.reg-source a{color:#fff;font-weight:900}.reg-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.reg-card{overflow:hidden;background:#fff;border:1px solid var(--line);border-radius:22px;box-shadow:0 8px 28px rgba(7,59,76,.08)}.species-photo{height:220px;background-image:url('images/freshwater-regulations-species-grid.png');background-size:300% 200%;background-repeat:no-repeat;background-color:#d8ece8}.species-photo.bass{background-position:0 0}.species-photo.crappie{background-position:50% 0}.species-photo.bluegill{background-position:100% 0}.species-photo.redear{background-position:0 100%}.species-photo.catfish{background-position:50% 100%}.species-photo.sunshine{background-position:100% 100%}.reg-body{padding:22px}.reg-body h2{font-size:1.35rem;margin:0 0 4px}.scientific{font-style:italic;color:var(--muted);font-size:.88rem}.limit-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:16px 0}.limit-grid div{background:#edf6f4;border-radius:11px;padding:10px}.limit-grid strong{display:block;color:var(--cypress);font-size:.73rem;text-transform:uppercase;letter-spacing:.06em}.reg-note{font-size:.88rem;color:var(--muted)}
@media(max-width:900px){.reg-grid{grid-template-columns:1fr 1fr}.reg-intro{grid-template-columns:1fr}}
@media(max-width:620px){.reg-grid{grid-template-columns:1fr}.species-photo{height:240px}}
.species-photo.black-bass-photo{background-image:url('images/florida-black-bass-grid.png');background-size:200% 200%}.species-photo.other-bass-photo{background-image:url('images/florida-other-bass-grid.png');background-size:200% 200%}.species-photo.suwannee,.species-photo.striped{background-position:0 0}.species-photo.shoal,.species-photo.white{background-position:100% 0}.species-photo.spotted,.species-photo.peacock{background-position:0 100%}.species-photo.choctaw,.species-photo.shadow{background-position:100% 100%}
@media print{.site-header,.site-footer,.actions,.menu-button{display:none}.page-hero{background:#fff;color:#000;padding:20px 0}.card{box-shadow:none}.section{padding:24px 0}}

.technique-card{overflow:hidden}.technique-photo{height:220px;margin:-25px -25px 20px;background-image:url('images/freshwater-baits-grid.png');background-size:300% 200%;background-repeat:no-repeat;background-color:#d8ece8}.technique-photo.texas-rig{background-position:0 0}.technique-photo.topwater-frog{background-position:50% 0}.technique-photo.spinnerbait{background-position:100% 0}.technique-photo.shiner{background-position:0 100%}.technique-photo.crappie-jig{background-position:50% 100%}.technique-photo.worm-cricket{background-position:100% 100%}
@media(max-width:620px){.technique-photo{height:250px}}

@media(max-width:1180px) and (min-width:901px){.menu-button{display:block}.nav-links{display:none;position:absolute;left:18px;right:18px;top:72px;background:var(--lake);padding:12px;border-radius:16px;box-shadow:var(--shadow);flex-direction:column;align-items:stretch}.nav-links.open{display:flex}.nav-links a{text-align:center}}
