:root{--navy:#031d31;--navy-deep:#021625;--green:#7bd455;--green-dark:#43a33c;--blue:#0d5988;--ink:#09213a;--muted:#53697d;--line:#dbe5ec;--soft:#f5f8fa;--white:#fff}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,system-ui,-apple-system,"Segoe UI",Arial,sans-serif;color:var(--ink);background:#fff}a{text-decoration:none}.page-shell{max-width:1650px;margin:0 auto;padding:0 72px}
.site-header{height:88px;background:var(--navy);border-bottom:1px solid rgba(255,255,255,.08);position:relative;z-index:50}.site-header .navbar{height:88px;padding:0 46px}.navbar-brand{padding:0;margin:0 40px 0 0;display:flex;align-items:center}.navbar-brand img{width:475px;max-width:34vw;height:auto;display:block}.navbar-nav{align-items:center;gap:2px}.navbar-nav .nav-link{color:#fff!important;font-weight:760;font-size:15px;white-space:nowrap;padding:32px 13px 28px!important;position:relative}.navbar-nav .nav-link:hover,.navbar-nav .nav-link.active{color:var(--green)!important}.header-actions{margin-left:auto;display:flex;align-items:center;gap:10px}.btn-login{border:1px solid rgba(255,255,255,.92);border-radius:8px;color:#fff;font-weight:800;font-size:14px;padding:11px 18px}.btn-login:hover{background:#fff;color:var(--navy)}.btn-list{background:var(--green);border-radius:8px;color:#082039;font-weight:850;font-size:14px;padding:12px 18px}.btn-list:hover{background:#91e36d;color:#082039}
.hero{position:relative;min-height:calc(100vh - 88px);color:#fff;background:url('../images/hero-bass-fishing.webp') center/cover no-repeat;overflow:hidden;display:flex;align-items:center}.hero::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(2,20,34,.88) 0%,rgba(2,20,34,.78) 33%,rgba(2,20,34,.48) 55%,rgba(2,20,34,.08) 77%,rgba(2,20,34,0) 100%)}.hero::after{content:"";position:absolute;left:0;right:0;bottom:0;height:132px;background:linear-gradient(180deg,rgba(2,20,34,0),rgba(2,20,34,.73))}.hero-inner{position:relative;z-index:2;width:100%;max-width:1650px;margin:0 auto;padding:55px 72px 34px}.hero-kicker{font-size:13px;line-height:1;letter-spacing:.30em;text-transform:uppercase;font-weight:820;margin-bottom:18px;color:#fff}.hero h1{font-size:clamp(58px,5.25vw,88px);line-height:.96;letter-spacing:-.047em;font-weight:920;margin:0 0 18px;max-width:980px;text-shadow:0 3px 18px rgba(0,0,0,.18)}.hero h1 .green{color:var(--green)}.hero-copy{font-size:clamp(18px,1.45vw,23px);line-height:1.42;font-weight:460;max-width:800px;margin:0 0 34px;color:#fff;text-shadow:0 2px 10px rgba(0,0,0,.35)}
.guide-search{width:min(1190px,calc(100vw - 144px));min-height:80px;background:#fff;border-radius:10px;overflow:hidden;display:grid;grid-template-columns:1fr 1fr 1.05fr 235px;box-shadow:0 15px 40px rgba(0,17,30,.28);color:var(--ink)}.search-field{display:flex;align-items:center;gap:15px;padding:13px 20px;border-right:1px solid var(--line);margin:0;min-width:0}.field-icon{width:38px;height:38px;flex:0 0 38px;display:grid;place-items:center;color:#08233d}.field-icon svg{width:28px;height:28px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.field-copy{display:block;min-width:0;width:100%}.search-label{display:block;font-size:13px;font-weight:850;color:#0b2238;margin-bottom:2px;white-space:nowrap}.search-control{display:block;width:100%;border:0;outline:0;background:transparent;color:#58708a;font-size:15px;padding:0;min-height:24px}.search-action{background:#fff;padding:10px;display:flex;align-items:center}.search-action button{border:0;border-radius:7px;background:linear-gradient(135deg,#3f9e3b,#55b84a);color:#fff;width:100%;height:58px;font-size:15px;font-weight:850}.hero-benefits{width:min(1070px,calc(100vw - 144px));display:grid;grid-template-columns:repeat(4,1fr);gap:26px;margin-top:34px}.benefit{display:flex;align-items:center;gap:13px;color:#fff;font-size:14px;line-height:1.35;font-weight:720}.benefit svg{width:43px;height:43px;flex:0 0 43px;fill:none;stroke:var(--green);stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.section{padding:70px 0}.section-soft{background:var(--soft)}.section-kicker{font-size:12px;letter-spacing:.24em;text-transform:uppercase;color:var(--blue);font-weight:850;margin-bottom:7px}.section-title{font-size:clamp(35px,3vw,51px);line-height:1.03;letter-spacing:-.035em;font-weight:920;margin:0;color:#081f3c}.section-sub{font-size:17px;color:#42586c;margin:10px 0 0}.outline-btn{display:inline-block;border:1px solid #9eb9ce;color:#071f3b;border-radius:8px;padding:12px 18px;font-weight:850;font-size:14px;background:#fff}.outline-btn:hover{border-color:var(--blue);color:var(--blue)}
.destinations{padding:58px 0 78px;background:#fff}.destination-card{display:block;position:relative;height:220px;border-radius:9px;overflow:hidden;background-size:cover;background-position:center;box-shadow:0 7px 22px rgba(7,31,61,.10);background-color:#dce7ed}.destination-card:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 26%,rgba(2,18,30,.9) 100%)}.destination-card .label{position:absolute;z-index:2;left:20px;bottom:17px;color:#fff}.destination-card strong{display:block;font-size:19px;line-height:1.1}.destination-card span{font-size:15px;color:#edf4f8}
.page-hero{background:linear-gradient(115deg,#031d31,#0c527a);color:#fff;padding:72px 0}.page-hero h1{font-weight:900;letter-spacing:-.035em}.page-hero p{font-size:1.1rem;max-width:800px;color:#deebf2}.breadcrumb-dark a{color:#a8d8ee}.breadcrumb-dark{color:#fff;font-size:.9rem}
.card-clean{background:#fff;border:1px solid #e0e8ee;border-radius:14px;box-shadow:0 8px 25px rgba(7,31,61,.06);overflow:hidden}.guide-card{height:100%}.guide-card .photo{height:220px;background:#dce7ed center/cover no-repeat}.guide-card .body{padding:22px}.verified{display:inline-flex;gap:6px;align-items:center;background:#edf8e9;color:#2e8532;padding:5px 9px;border-radius:50px;font-weight:800;font-size:.75rem}.guide-card h3{font-size:1.2rem;font-weight:850;margin:12px 0 4px}.meta{color:#607488;font-size:.9rem}.tag{display:inline-block;background:#eef5f8;color:#25445a;border-radius:50px;padding:5px 9px;font-size:.78rem;margin:3px 4px 3px 0}.rating{color:#e39a16;font-weight:800}.price{font-size:1.05rem;font-weight:850;color:#1d6d2a}
.profile-hero{background:#f3f8fb;padding:48px 0;border-bottom:1px solid #e0e8ee}.profile-photo{width:100%;aspect-ratio:4/3;border-radius:14px;object-fit:cover;background:#dbe6ec}.profile-title{font-weight:900;letter-spacing:-.035em}.info-card{border:1px solid #e0e8ee;border-radius:14px;padding:24px;background:#fff}.sticky-card{position:sticky;top:20px}.quick-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.quick-fact{padding:12px;background:#f5f8fa;border-radius:9px}.quick-fact strong{display:block;font-size:.8rem;color:#5b7083}.quick-fact span{font-weight:750}
.lake-hero{position:relative;min-height:390px;background:#153850 center/cover no-repeat;color:#fff;display:flex;align-items:end}.lake-hero:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(3,29,49,.08),rgba(3,29,49,.88))}.lake-hero .content{position:relative;z-index:2;padding:48px 0}.lake-hero h1{font-weight:900;letter-spacing:-.035em}.lake-stats{display:flex;gap:12px;flex-wrap:wrap}.lake-stat{background:rgba(255,255,255,.12);backdrop-filter:blur(6px);padding:8px 12px;border-radius:8px;font-weight:700}
.filter-bar{background:#fff;border:1px solid #dfe8ee;border-radius:12px;padding:18px;box-shadow:0 8px 20px rgba(7,31,61,.04)}.filter-bar .form-control,.filter-bar .form-select{min-height:48px}
.report-card{height:100%;padding:22px}.report-card h3{font-size:1.08rem;font-weight:850;margin:8px 0}.report-card .date{font-size:.76rem;text-transform:uppercase;letter-spacing:.05em;color:#728596;font-weight:800}.report-card p{color:#607284;font-size:.92rem;margin:0}.report-image{height:190px;object-fit:cover;width:100%;background:#dbe5ec}.conditions{display:flex;gap:8px;flex-wrap:wrap}.condition{background:#eef5f8;border-radius:7px;padding:6px 9px;font-size:.8rem;color:#345065}
.auth-wrap{min-height:calc(100vh - 88px);background:#f4f8fa;padding:70px 0}.auth-card{max-width:620px;margin:0 auto;background:#fff;border:1px solid #dde7ed;border-radius:16px;padding:32px;box-shadow:0 12px 35px rgba(5,40,66,.08)}.auth-card h1{font-size:2rem;font-weight:900}.form-label{font-weight:700}.form-control,.form-select,.form-control:focus,.form-select:focus{border-color:#cfdce5;box-shadow:none}.btn-green{background:var(--green-dark);border-color:var(--green-dark);color:#fff;font-weight:800}.btn-green:hover{background:#358c32;border-color:#358c32;color:#fff}
.dashboard-shell{background:#f4f8fa;min-height:calc(100vh - 88px);padding:38px 0}.dash-nav{background:#fff;border:1px solid #dde7ed;border-radius:12px;overflow:hidden}.dash-nav a{display:block;padding:13px 16px;color:#264155;border-bottom:1px solid #edf2f5;font-weight:700}.dash-nav a:hover,.dash-nav a.active{background:#edf8e9;color:#2e8532}.dash-panel{background:#fff;border:1px solid #dde7ed;border-radius:12px;padding:26px}.stat-box{background:#fff;border:1px solid #dde7ed;border-radius:12px;padding:20px}.stat-box .num{font-size:1.8rem;font-weight:900}.table>:not(caption)>*>*{vertical-align:middle}
.admin-bar{background:#011521;color:#fff;padding:11px 0}.admin-bar a{color:#d6e3eb;margin-right:16px}.badge-status{font-size:.72rem;padding:5px 8px;border-radius:50px}.badge-published{background:#e7f7e3;color:#2c7c31}.badge-pending{background:#fff5da;color:#8c6500}.badge-draft{background:#edf1f4;color:#53697d}.badge-rejected{background:#fbe7e7;color:#9d2e2e}
.site-footer{background:#021625;color:#bdcad4}.site-footer a{color:#bdcad4}.site-footer a:hover{color:var(--green)}.site-footer strong{color:#fff}.footer-logo{max-width:100%;height:auto}
.empty-state{padding:42px;text-align:center;background:#f6f9fb;border:1px dashed #cddce5;border-radius:12px}.empty-state h3{font-weight:850}.small-note{font-size:.84rem;color:#64788a}
@media(max-width:1380px){.site-header .navbar{padding:0 28px}.navbar-brand{margin-right:24px}.navbar-brand img{width:390px}.navbar-nav .nav-link{font-size:14px;padding-left:9px!important;padding-right:9px!important}.hero-inner,.page-shell{padding-left:46px;padding-right:46px}.guide-search,.hero-benefits{width:calc(100vw - 92px)}}
@media(max-width:1120px){.site-header{height:auto}.site-header .navbar{height:auto;min-height:80px}.navbar-toggler{border-color:rgba(255,255,255,.45)}.navbar-toggler-icon{filter:invert(1)}.navbar-collapse{padding:10px 0 22px}.navbar-nav{align-items:flex-start}.navbar-nav .nav-link{padding:10px 0!important}.header-actions{margin:12px 0 0}.hero{min-height:720px;background-position:64% center}.guide-search{grid-template-columns:1fr 1fr}.search-field:nth-child(2){border-right:0}.search-action{grid-column:1/-1}.hero-benefits{grid-template-columns:1fr 1fr}}
@media(max-width:767px){.site-header .navbar{padding:0 18px}.navbar-brand img{width:280px;max-width:72vw}.hero{min-height:auto;background-position:69% center}.hero::before{background:rgba(2,20,34,.72)}.hero-inner{padding:46px 20px 36px}.hero-kicker{font-size:10px;letter-spacing:.20em}.hero h1{font-size:48px}.hero-copy{font-size:16px}.guide-search{width:100%;display:block}.search-field{border-right:0;border-bottom:1px solid var(--line)}.hero-benefits{width:100%;grid-template-columns:1fr 1fr;gap:16px}.page-shell{padding-left:20px;padding-right:20px}.destination-card{height:205px}.quick-facts{grid-template-columns:1fr}.lake-hero{min-height:330px}}
@media(max-width:480px){.hero h1{font-size:40px}.hero-benefits{grid-template-columns:1fr}.section-title{font-size:2rem}}

/* Business logos retain their proportions and never crop. */
.guide-logo-preview,.guide-profile-logo{display:block;width:auto;max-width:100%;height:100px;object-fit:contain;object-position:left center;background:#fff;border-radius:8px;padding:10px;margin-bottom:12px}
.guide-card-logo{display:block;width:auto;max-width:100%;height:64px;object-fit:contain;object-position:left center;background:#fff;border-radius:6px;padding:6px;margin-bottom:12px}
