/* LakeLocale's independent, Fleet-inspired exploration design. */
/* Foundation and site chrome shared with all public pages. */
:root{--ll-ink:#23262f;--ll-muted:#828b9a;--ll-blue:#5157C9;--ll-soft:#f5f6f8}
html{scroll-behavior:smooth}body{background:#fff;color:var(--ll-ink)}
.container{width:min(1170px,calc(100% - 48px))}
.site-header{height:88px;background:#fff;border-bottom:1px solid #f0f2f5}
.site-header .brand,.site-footer .brand{font:800 1.35rem Manrope,'DM Sans',sans-serif;color:#23262f;letter-spacing:-.055em}
.brand-accent{color:#5157C9}
.site-header .brand-mark,.site-footer .brand-mark{border-radius:11px;width:39px;height:39px;background:transparent;color:#5157C9;overflow:hidden;flex:none}
.site-header .brand-mark img,.site-footer .brand-mark img{display:block;width:100%;height:100%;object-fit:contain}
.brand-mark svg{width:25px;height:25px}
.site-header .top-nav{gap:34px}
.site-header .top-nav a{color:#707987;font-weight:700;font-size:.83rem}
.site-header .top-nav a:hover{color:#5157C9}
.site-header .header-cta{background:#5157C9;border-radius:10px;padding:13px 18px;font-size:.81rem;box-shadow:0 6px 15px #5157C91a}
.site-header .header-cta:hover{background:#3F46AD}
.site-footer{background:#f8f9fc;color:#23262f;padding:65px 0 27px;border-top:1px solid #eef1f6}
.site-footer .footer-brand-block p{max-width:360px;margin:18px 0 0;color:#87909d;line-height:1.7;font-size:.85rem}
.site-footer .footer-inner{align-items:start}
.site-footer .footer-links{font-weight:700;color:#545f6f;gap:24px}
.site-footer .footer-links a:hover{color:#5157C9}
.site-footer .ll-footer-legal{justify-content:flex-start;margin-top:46px;color:#7d899a;font-size:.78rem}
.site-footer .footer-bottom{color:#9aa2ae;border-color:#e7ebf1;margin-top:17px;text-align:center}
.explore-home{overflow:hidden;background:#fff;color:#23262f}
.explore-home h1,.explore-home h2,.explore-home h3{color:#23262f;font-family:Manrope,'DM Sans',sans-serif;letter-spacing:-.055em}
.explore-home p{color:#8a93a2;line-height:1.65}
.explore-home a{transition:color .15s ease}
.explore-kicker{display:inline-block;font-size:.69rem;letter-spacing:.14em;font-weight:800;color:#5157C9}
.explore-heading h2{font-size:clamp(2rem,3.4vw,2.68rem);line-height:1.2;margin:0 0 7px}
.explore-heading p{font-size:.94rem;margin:0}
.explore-heading.centered{text-align:center}
.explore-heading-row{display:flex;justify-content:space-between;gap:25px;align-items:end}
.explore-heading-row h2{margin-top:10px}
.explore-button{display:inline-flex;justify-content:center;align-items:center;gap:23px;border-radius:12px;padding:15px 21px;font-size:.85rem;font-weight:800;white-space:nowrap}
.explore-button-blue{background:#5157C9;color:#fff}
.explore-button-blue:hover{background:#3F46AD;color:#fff}
.explore-button-outline{border:1px solid #e2e6ec;color:#2b3441;background:#fff}
.explore-button-outline:hover{color:#5157C9;border-color:#b6cafa}

/* Hero and docked multi-column search */
.explore-hero{padding-top:27px;position:relative;margin-bottom:223px}
.explore-hero-cover{height:505px;border-radius:24px;position:relative;background:#83a5aa none center 53%/cover no-repeat;overflow:hidden}
.explore-hero-cover:before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#162b39b5 0%,#152f4080 42%,#1033460c 95%),linear-gradient(0deg,#0f1d2624,transparent 45%)}
.explore-hero-content{position:absolute;left:82px;top:99px;z-index:1}
.explore-hero-eyebrow{font-weight:800;font-size:.75rem;letter-spacing:.14em;color:#e7f2ff}
.explore-hero-content h1{font-size:clamp(3.6rem,6vw,5.5rem);color:white;line-height:1.06;margin:15px 0 19px;font-weight:800;text-wrap:balance}
.explore-hero-content>p{color:#e9f3f5;font-size:1.05rem;max-width:465px;margin-bottom:25px}
.explore-hero-action{display:inline-flex;align-items:center;gap:13px;color:#fff;background:#5157C9;padding:13px 17px;border-radius:9px;font-weight:800;font-size:.8rem}
.explore-hero-action:hover{background:#3F46AD;color:#fff}
.explore-photo-credit{position:absolute;right:18px;bottom:20px;background:#192c3db8;color:#fff;border-radius:99px;font-size:.65rem;font-weight:600;padding:7px 11px;z-index:1}
.explore-search-dock{position:absolute;bottom:-135px;left:50%;transform:translateX(-50%);width:min(1050px,calc(100% - 74px));background:#fff;border-radius:22px;box-shadow:0 16px 55px #26364920;z-index:2;border:1px solid #f1f3f6;padding:18px 23px 17px}
.explore-search-tabs{display:flex;align-items:center;gap:24px;border-bottom:1px solid #eef0f3;padding:0 7px 13px}
.explore-search-tabs a{font-size:.83rem;font-weight:800;color:#8f98a5;display:inline-flex;align-items:center;gap:7px;position:relative}
.explore-search-tabs a span{font-size:1.1rem}
.explore-search-tabs a:hover,.explore-search-tabs a.active{color:#5157C9}
.explore-search-tabs a.active:after{content:'';position:absolute;bottom:-14px;height:2px;left:0;right:0;background:#5157C9}
.explore-search-form{display:flex;align-items:center;padding-top:15px;min-height:75px;gap:12px}
.explore-search-primary{display:flex;align-items:center;gap:14px;flex:1.5;min-width:0;cursor:text}
.explore-search-copy{display:grid;min-width:0;width:100%}
.explore-search-copy strong,.explore-search-location strong,.explore-search-count strong{font-size:.84rem;color:#2c323d;font-weight:800;margin-bottom:4px;display:block}
.explore-search-copy input{width:100%;border:0;outline:0;padding:4px 0;background:transparent;color:#2b3545;font-size:.82rem}
.explore-search-copy input::placeholder{color:#98a1af}
.explore-search-magnifier,.explore-search-pin,.explore-search-count>span:first-child{width:43px;height:43px;border-radius:13px;background:#eff4ff;color:#5157C9;display:grid;place-items:center;flex:none}
.explore-search-magnifier svg{width:22px;height:22px}
.explore-search-location,.explore-search-count{display:flex;align-items:center;gap:11px;border-left:1px solid #e9edf3;padding-left:18px}
.explore-search-location{flex:1.03}.explore-search-count{flex:.81}
.explore-search-location small,.explore-search-count small{display:block;font-size:.74rem;color:#929daa;white-space:nowrap}
.explore-search-pin,.explore-search-count>span:first-child{font-size:1.4rem;background:#f3f6f9;color:#6b879c}
.explore-search-count>span:first-child{font-size:1.6rem}
.explore-search-submit{flex:none;width:103px;min-height:55px;background:#5157C9;color:white;border:0;border-radius:12px;display:flex;align-items:center;justify-content:center;gap:8px;font-weight:800;font-size:.83rem}
.explore-search-submit:hover{background:#3F46AD}.explore-search-submit svg{width:19px;height:19px}

/* Scenic destination strip */
.explore-adventure{padding-bottom:115px}
.explore-adventure-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;max-width:920px;margin:37px auto 0}
.explore-adventure-image{height:267px;border-radius:17px;background:#cadad3 center/cover no-repeat;position:relative;transition:transform .25s ease,box-shadow .25s ease}
.explore-adventure-card:hover .explore-adventure-image{transform:translateY(-5px);box-shadow:0 15px 24px #223a5d21}
.adventure-image-one{background-image:none}
.adventure-image-two{background-image:none}
.adventure-image-three{background-image:none}
.explore-img-disclaimer{position:absolute;bottom:13px;left:13px;background:#192b37ab;color:white;padding:6px 9px;font-size:.67rem;border-radius:99px}
.explore-adventure-card h3{font-size:1.04rem;margin:17px 0 3px;font-weight:800}
.explore-adventure-card p{font-size:.78rem;margin:0}

/* Editorial split with layered vector and photo */
.explore-story{display:grid;grid-template-columns:.91fr 1.09fr;gap:80px;align-items:center;padding-top:36px;padding-bottom:130px}
.explore-story-copy h2{font-size:clamp(2.65rem,4.3vw,4.15rem);line-height:1.15;margin:17px 0 24px}
.explore-story-copy h2 em{font-style:normal;color:#5157C9}
.explore-story-copy>p{max-width:450px;font-size:.96rem;margin-bottom:30px}
.explore-story-benefits{display:grid;gap:19px;margin-bottom:31px}
.explore-story-benefits>div{display:flex;align-items:center;gap:15px}
.benefit-pill{display:grid;place-items:center;width:42px;height:42px;border-radius:12px;flex:none;font-weight:800;font-size:.78rem}
.benefit-pill.blue{color:#5157C9;background:#eaf0ff}
.benefit-pill.purple{color:#8263e8;background:#f1e9ff}
.benefit-pill.green{color:#2dab80;background:#e8f9ee}
.explore-story-benefits h3{font-size:.94rem;margin:0 0 3px}
.explore-story-benefits p{font-size:.78rem;margin:0}
.explore-story-scene{height:560px;position:relative;isolation:isolate}
.explore-story-orbit{position:absolute;inset:53px 11% 40px 11%;border-radius:50%;background:linear-gradient(145deg,#f1f6ff,#f4faf5);transform:rotate(13deg)}
.explore-story-photograph{position:absolute;right:5%;top:7px;width:58%;height:75%;background:#a6c4cb none center/cover no-repeat;border-radius:65px 28px 100px 30px;transform:rotate(6deg);box-shadow:0 20px 38px #364b6251}
.explore-story-svg{position:absolute;left:-6%;bottom:-4%;width:75%;height:auto;filter:drop-shadow(0 15px 20px #7398c42b);animation:lake-drift 8s ease-in-out infinite}
.explore-float-note{position:absolute;display:flex;align-items:center;gap:10px;background:#fff;border-radius:14px;padding:12px 15px;border:1px solid #edf0f6;box-shadow:0 16px 30px #233a552a}
.explore-float-note strong,.explore-float-note small{display:block}
.explore-float-note strong{font-size:.77rem}.explore-float-note small{font-size:.68rem;color:#96a0ad;margin-top:5px}
.explore-float-icon{width:37px;height:37px;border-radius:10px;display:grid;place-items:center;background:#e7efff;color:#5157C9;font-size:1.5rem}
.explore-float-icon.secondary{background:#e9faf5;color:#2ba68c}
.explore-float-note.scene-top{right:-3%;top:25%}
.explore-float-note.scene-bottom{left:17%;bottom:3%}
.explore-trust-check{display:inline-grid;place-items:center;width:24px;height:24px;background:#e7fbf0;border-radius:50%;color:#26b980;font-size:.79rem}
@keyframes lake-drift{0%,100%{transform:translateY(0) rotate(-4deg)}50%{transform:translateY(-12px) rotate(-2deg)}}

/* Three visual steps */
.explore-how{padding:40px 0 133px}
.explore-how-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:95px;position:relative;max-width:900px;margin:45px auto 0;text-align:center}
.explore-how-connector{position:absolute;left:8%;top:23px;width:84%;height:90px;z-index:0;pointer-events:none}
.explore-how-step{position:relative;z-index:1}
.explore-how-icon{width:92px;height:92px;margin:0 auto 24px;border-radius:50%;display:grid;place-items:center}
.explore-how-icon svg{width:69px;height:69px;animation:lake-bob 8s ease-in-out infinite}
.explore-how-icon.blue{background:#eaf1ff}.explore-how-icon.purple{background:#f1eaff}.explore-how-icon.teal{background:#e6f8f4}
.explore-how-step h3{font-size:1.06rem;margin:0 0 8px}.explore-how-step p{font-size:.79rem;max-width:235px;margin:0 auto}
@keyframes lake-bob{0%,100%{transform:translateY(0)}50%{transform:translateY(-5px)}}

/* Actual GNIS directory data in lively cards */
.explore-featured{padding:48px 43px 44px;background:#f6f7f9;border-radius:26px;margin-bottom:150px}
.explore-featured .explore-heading{margin-bottom:27px}
.explore-filter-row{display:flex;align-items:center;gap:11px;flex-wrap:wrap;border-bottom:1px solid #e8ebf0;padding-bottom:20px;margin-bottom:26px}
.explore-filter-row a{padding:9px 13px;font-size:.78rem;color:#778291;font-weight:800;border-radius:9px}
.explore-filter-row a:hover{color:#5157C9;background:#edf1fa}
.explore-filter-row a.selected{background:#23262f;color:#fff}
.explore-filter-row a.selected span{color:#adbbd0;font-size:.68rem;margin-left:5px}
.explore-lake-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:17px}
.explore-lake-card{background:white;border:1px solid #ebeef3;border-radius:17px;overflow:hidden;box-shadow:0 6px 19px #1d2d4008;min-width:0;transition:transform .2s,box-shadow .2s}
.explore-lake-card:hover{transform:translateY(-4px);box-shadow:0 15px 26px #1d2d401c}
.explore-lake-image{height:154px;position:relative;background:#9ab9c5 center/cover no-repeat}
.lake-visual-1{background-image:none}
.lake-visual-2{background-image:none}
.lake-visual-3{background-image:none}
.lake-visual-4{background-image:none}
.explore-lake-image:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#142a3a7d,transparent 52%);pointer-events:none}
.explore-image-badge{position:absolute;top:11px;left:11px;background:#fff;color:#29394e;font-size:.63rem;font-weight:800;border-radius:7px;padding:6px 8px;z-index:1;letter-spacing:.07em}
.explore-photo-placeholder{position:absolute;bottom:9px;left:10px;right:10px;color:#fff;font-size:.66rem;font-weight:600;z-index:1;text-shadow:0 2px 3px #0004}
.explore-lake-content{padding:15px 15px 11px}
.explore-lake-content h3{font-size:.96rem;line-height:1.35;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin:0 0 7px}
.explore-lake-content>p{font-size:.75rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin:0 0 14px}
.explore-lake-footer{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #f0f2f5;padding-top:10px;font-size:.71rem;color:#7e8a98}
.explore-lake-footer>span:last-child{font-size:1.1rem;color:#5157C9}
.explore-status-dot{display:inline-block;width:7px;height:7px;background:#35b982;border-radius:50%;margin-right:5px}
.explore-view-more{display:flex;width:max-content;max-width:100%;align-items:center;justify-content:center;gap:12px;background:#fff;border:1px solid #e3e9ef;color:#5157C9;font-weight:800;border-radius:11px;padding:12px 17px;margin:32px auto 0;font-size:.81rem}
.explore-view-more:hover{border-color:#5157C9}
.explore-no-records{text-align:center;padding:45px 15px}.explore-no-records a{font-weight:800;color:#5157C9}

/* Map discovery feature */
.explore-map-feature{display:grid;grid-template-columns:1.05fr .95fr;gap:94px;align-items:center;padding-bottom:158px}
.explore-map-art{height:460px;background:#e8eff3;position:relative;border-radius:28px;overflow:visible}
.explore-map-terrain{display:block;width:100%;height:100%;border-radius:28px;overflow:hidden}
.explore-map-float{position:absolute;right:-29px;bottom:31px;display:flex;align-items:center;gap:12px;padding:15px;border-radius:15px;background:white;box-shadow:0 20px 37px #1c354c33}
.explore-map-float-icon{background:#eaf0ff;border-radius:11px;width:41px;height:41px;display:grid;place-items:center;color:#5157C9;font-size:1.7rem}
.explore-map-float strong,.explore-map-float small{display:block}.explore-map-float strong{font-size:.8rem}.explore-map-float small{font-size:.72rem;color:#8492a3;margin-top:4px}
.explore-map-pill{position:absolute;left:20px;top:20px;background:#ffffffee;border-radius:9px;padding:9px 13px;color:#333e49;font-size:.72rem;font-weight:800}
.explore-map-content h2{font-size:clamp(2.6rem,4.5vw,3.9rem);line-height:1.16;margin:15px 0 23px}
.explore-map-content>p{font-size:.95rem;margin-bottom:28px}
.explore-map-facts{display:grid;gap:20px;margin-bottom:27px}
.explore-map-facts>div{display:flex;align-items:center;gap:14px}
.explore-map-fact-icon{display:grid;place-items:center;background:#e9f0ff;color:#5157C9;width:45px;height:45px;border-radius:13px;font-size:1.6rem}
.explore-map-fact-icon.alt{background:#e4f9f0;color:#2eb58f}
.explore-map-facts strong,.explore-map-facts small{display:block}.explore-map-facts strong{font-size:.9rem}.explore-map-facts small{color:#919aa7;font-size:.79rem;margin-top:5px}

/* Nearby-like county tiles */
.explore-counties-wrap{background:#f5f6f8;padding:88px 0 96px;margin-bottom:120px}
.explore-county-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;margin-top:34px}
.explore-county-tile{display:grid;grid-template-columns:63px 1fr;grid-template-rows:1fr 1fr;align-items:center;column-gap:12px;background:white;border:1px solid #e9edf1;border-radius:15px;padding:17px 16px;min-height:115px;position:relative;transition:transform .2s,box-shadow .2s}
.explore-county-tile:hover{transform:translateY(-3px);box-shadow:0 15px 28px #1b304010}
.explore-county-icon{grid-row:1 / 3;display:grid;place-items:center;width:60px;height:60px}
.explore-county-icon svg{width:57px;height:57px}
.explore-county-tile strong{font-size:.95rem;padding-right:21px;align-self:end}
.explore-county-tile small{color:#8d97a3;font-size:.75rem;align-self:start;padding-top:6px}
.explore-county-arrow{position:absolute;top:20px;right:16px;color:#5157C9}
.explore-view-more.compact{margin-top:28px;background:transparent}

/* Image-led editorial banner */
.explore-banner{margin-bottom:112px}
.explore-banner-image{height:440px;border-radius:24px;background:#76a9ba none center 58%/cover no-repeat;position:relative;overflow:hidden}
.explore-banner-image:before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#192f3bd1,rgba(13,42,54,.65) 55%,rgba(0,0,0,.08))}
.explore-banner-copy{position:absolute;top:77px;left:65px;z-index:1}
.explore-banner-copy .explore-kicker{color:#c3e9ff}
.explore-banner-copy h2{font-size:clamp(2.6rem,4vw,3.95rem);line-height:1.16;color:#fff;margin:15px 0}
.explore-banner-copy p{font-size:.94rem;color:#e5eff6;margin-bottom:23px}
.explore-button-white{background:#fff;color:#333c4b}
.explore-button-white:hover{color:#5157C9}

/* Directory browse categories */
.explore-browse{padding-bottom:123px}
.explore-browse-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-top:35px}
.explore-browse-card{display:flex;flex-direction:column;min-height:190px;border:1px solid #e9edf2;border-radius:16px;padding:22px 21px;position:relative;transition:transform .2s,box-shadow .2s}
.explore-browse-card:hover{transform:translateY(-4px);box-shadow:0 13px 23px #1d354718}
.explore-browse-icon{display:grid;place-items:center;width:49px;height:49px;border-radius:14px;background:#e9f0ff;color:#5157C9;font-size:2rem;margin-bottom:19px}
.explore-browse-icon.aqua{color:#3aa7a4;background:#e6f7f5}
.explore-browse-icon.purple{color:#9a72d9;background:#f1ecff}
.explore-browse-icon.green{color:#26ac83;background:#e3f8ee}
.explore-browse-card strong{font-size:.94rem}.explore-browse-card small{color:#919ba6;font-size:.77rem;margin-top:6px}
.explore-browse-card>span:last-child{position:absolute;right:21px;bottom:23px;color:#5157C9;font-size:1.15rem}

@media(max-width:1100px){
  .explore-search-dock{width:calc(100% - 48px)}
  .explore-search-count{display:none}
  .explore-story{gap:35px}
  .explore-lake-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .explore-map-feature{gap:45px}
}
@media(max-width:850px){
  .site-header .top-nav{gap:16px}
  .explore-hero-content{left:50px}
  .explore-story{grid-template-columns:1fr}
  .explore-story-scene{width:min(550px,100%);justify-self:center}
  .explore-how-grid{gap:30px}
  .explore-featured{padding:34px 25px}
  .explore-lake-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .explore-map-feature{grid-template-columns:1fr;gap:50px}
  .explore-map-art{height:420px}
  .explore-county-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .explore-browse-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:650px){
  .container{width:calc(100% - 32px)}
  .site-header{height:auto}.site-header .header-inner{flex-wrap:wrap;gap:13px;min-height:72px;padding-block:14px}
  .site-header .top-nav{width:100%;order:3;display:flex;justify-content:space-between;gap:8px}
  .site-header .top-nav a{font-size:.72rem}
  .site-header .header-cta{margin-left:auto;font-size:.72rem;padding:10px}
  .site-footer .footer-links{margin-top:25px}
  .explore-hero{padding-top:15px;margin-bottom:239px}
  .explore-hero-cover{height:440px;border-radius:19px}
  .explore-hero-content{top:74px;left:23px;right:22px}
  .explore-hero-eyebrow{font-size:.61rem}
  .explore-hero-content h1{font-size:clamp(2.7rem,11vw,4.15rem);line-height:1.12}
  .explore-hero-content>p{font-size:.9rem}
  .explore-search-dock{width:calc(100% - 22px);bottom:-206px;padding:16px;border-radius:16px}
  .explore-search-tabs{gap:17px;padding:0 0 12px}
  .explore-search-tabs a{font-size:.77rem}
  .explore-search-form{flex-wrap:wrap;padding-top:16px;gap:15px}
  .explore-search-primary{flex-basis:100%;padding-bottom:13px;border-bottom:1px solid #edf0f4}
  .explore-search-location{border-left:0;padding-left:0;flex:1;min-width:0}
  .explore-search-submit{min-height:49px;width:89px}
  .explore-photo-credit{font-size:.56rem}
  .explore-adventure{padding-bottom:72px}
  .explore-heading h2{font-size:2rem}
  .explore-adventure-grid{grid-template-columns:repeat(3,minmax(195px,1fr));overflow-x:auto;scroll-snap-type:x mandatory;padding:0 3px 15px;margin-top:25px;gap:14px}
  .explore-adventure-card{scroll-snap-align:start}
  .explore-adventure-image{height:205px}
  .explore-adventure-card h3{font-size:.9rem}
  .explore-story{padding-top:15px;padding-bottom:78px;gap:5px}
  .explore-story-copy h2{font-size:2.65rem}
  .explore-story-scene{height:430px}
  .explore-story-photograph{height:69%;right:4%}
  .explore-float-note.scene-top{right:0;top:22%}
  .explore-float-note.scene-bottom{left:7%;bottom:0}
  .explore-how{padding:30px 0 85px}
  .explore-how-grid{grid-template-columns:1fr;gap:35px;margin-top:30px}
  .explore-how-connector{display:none}
  .explore-how-icon{margin-bottom:12px;width:79px;height:79px}
  .explore-how-step p{max-width:270px}
  .explore-featured{margin-bottom:85px;border-radius:20px;padding:29px 16px}
  .explore-heading-row{display:block}
  .explore-heading-row .explore-button{margin-top:17px}
  .explore-featured .explore-heading p{font-size:.85rem}
  .explore-lake-grid{gap:10px}
  .explore-lake-image{height:121px}
  .explore-lake-content{padding:12px 10px 10px}
  .explore-lake-content h3{font-size:.82rem}
  .explore-lake-content>p{font-size:.68rem}
  .explore-photo-placeholder{font-size:.52rem}
  .explore-filter-row{gap:5px}
  .explore-filter-row a{padding:8px;font-size:.72rem}
  .explore-map-feature{padding-bottom:105px;gap:45px}
  .explore-map-art{height:320px}
  .explore-map-float{right:-6px;bottom:17px;padding:10px}
  .explore-map-content h2{font-size:2.55rem}
  .explore-counties-wrap{padding:65px 0;margin-bottom:80px}
  .explore-county-grid{gap:10px;margin-top:25px}
  .explore-county-tile{grid-template-columns:45px 1fr;min-height:90px;column-gap:8px;padding:10px}
  .explore-county-icon,.explore-county-icon svg{width:43px;height:43px}
  .explore-county-tile strong{font-size:.78rem}
  .explore-county-tile small{font-size:.67rem}
  .explore-county-arrow{font-size:.7rem;top:11px;right:8px}
  .explore-banner{margin-bottom:80px}
  .explore-banner-image{height:370px}
  .explore-banner-copy{left:24px;right:15px;top:62px}
  .explore-banner-copy h2{font-size:2.6rem}
  .explore-browse{padding-bottom:80px}
  .explore-browse-grid{gap:11px}
  .explore-browse-card{padding:15px 13px;min-height:160px}
  .explore-browse-card strong{font-size:.8rem}
  .explore-browse-card small{font-size:.7rem}
  .explore-browse-icon{width:44px;height:44px}
}
@media(prefers-reduced-motion:reduce){
  .explore-home *, .explore-home *:before,.explore-home *:after{animation-duration:.001ms!important;transition-duration:.001ms!important}
}


/* Real NAIP images replace aerial photo backgrounds. */
.explore-lake-image.ll-aerial-card-image{background:#d7e6dc}
.explore-lake-image.ll-aerial-card-image img{display:block;width:100%;height:100%;object-fit:cover}


/* Featured lakes use the same below-image metadata as directory cards. */
.explore-lake-card .explore-lake-image.ll-aerial-card-image::after{display:none!important}
.explore-lake-card .ll-aerial-meta{display:flex;align-items:center;flex-wrap:wrap;gap:7px;margin-bottom:9px;min-height:20px}
.explore-lake-card .ll-aerial-meta .explore-image-badge{position:static;inset:auto;z-index:auto;padding:4px 7px;border-radius:6px;background:#e8f4ed;color:#28644b;flex:none}
.explore-lake-card .ll-aerial-meta .explore-photo-placeholder{position:static;inset:auto;z-index:auto;background:none;color:#667f71;text-shadow:none;font-size:.67rem;padding:0;line-height:1.4;font-weight:700}
.explore-lake-card .ll-aerial-card-image img[data-ll-aerial-src]{opacity:0}


/* Indexable Michigan county directory and lake index. */
.ll-county-page{padding:45px 0 100px}
.ll-county-heading{display:flex;align-items:center;justify-content:space-between;gap:24px}
.ll-county-heading-main{min-width:0}
.ll-county-heading>.ll-detail-icon-action{flex:none}
@media(max-width:560px){.ll-county-heading{gap:12px}.ll-county-heading>.ll-detail-icon-action{width:38px;height:38px}}

.ll-county-page h1{font:800 clamp(2.1rem,4vw,3.4rem) Manrope,sans-serif;letter-spacing:-.055em;margin:14px 0;color:#263340}
.ll-county-page >p{color:#758392;max-width:760px;line-height:1.7;font-size:.94rem;margin-bottom:28px}
.ll-county-crumb{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 26px;font-size:.79rem;color:#8998a2}
.ll-county-crumb a{color:#4554b9}
/* Fast, accessible county lookup without a server round trip. */
/* County lookup follows the Michigan explorer's compact filter bar. */
.ll-county-search{
 display:flex;align-items:center;justify-content:space-between;gap:16px;
 margin:0 0 24px;padding:12px 0 18px;border-bottom:1px solid #e4eaf2;
}
.ll-county-search-field{
 display:flex;align-items:center;gap:10px;
 width:clamp(210px,28vw,410px);max-width:100%;height:45px;
 background:#f4f6f9;border:1px solid #e6ebf1;border-radius:12px;
 padding:0 13px;transition:border-color .16s,box-shadow .16s;
}
.ll-county-search-field:focus-within{border-color:#8998d7;box-shadow:0 0 0 3px #5157c914}
.ll-county-search-field>svg{flex:none;width:19px;height:19px;color:#67809b}
.ll-county-search-field input{
 width:100%;min-width:0;height:100%;border:0;outline:0;
 background:transparent;color:#26364a;font:400 .83rem 'DM Sans',sans-serif;
}
.ll-county-search-field input::placeholder{color:#7d8b9e}
.ll-county-search-count{margin:0;color:#778891;font-size:.77rem;font-weight:700;white-space:nowrap}

.ll-county-search-form{display:flex;align-items:center;gap:10px;min-width:0;flex:1}
.ll-county-search-form .ll-county-search-field{flex:0 1 410px;min-width:160px}
.ll-county-search-submit{
 display:inline-flex;align-items:center;justify-content:center;flex:none;
 min-height:45px;padding:0 18px;border:0;border-radius:11px;
 background:#5157c9;color:#fff;font:.8rem 'DM Sans',sans-serif;font-weight:800;
 cursor:pointer;white-space:nowrap;
}
.ll-county-search-submit:hover{background:#4146af}
.ll-county-search-submit:focus-visible,.ll-county-search-clear:focus-visible{outline:3px solid #8b93e3;outline-offset:3px}
.ll-county-search-clear{padding:9px;color:#617590;font-size:.8rem;white-space:nowrap}
.ll-county-search-clear:hover{color:#5157c9}

@media(max-width:560px){
 .ll-county-search{gap:10px;flex-wrap:wrap;padding-top:4px}
 .ll-county-search-field{width:100%}
 .ll-county-search-form{width:100%;flex-wrap:wrap}
 .ll-county-search-form .ll-county-search-field{flex:1 1 100%}
 .ll-county-search-count{font-size:.73rem}
}
.ll-county-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.ll-county-card[hidden],.ll-county-search-empty[hidden]{display:none}
.ll-county-card{border:1px solid #e5eced;background:#fff;border-radius:15px;padding:21px;display:grid;gap:11px;transition:box-shadow .16s,transform .16s}
.ll-county-card:hover{box-shadow:0 12px 25px #273e5520;transform:translateY(-2px)}
.ll-county-card strong{font-size:1.08rem;color:#2a3744}
.ll-county-card span{display:flex;align-items:center;justify-content:space-between;gap:8px;color:#718e84;font-size:.78rem}
.ll-county-lakes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;margin:22px 0 35px}
.ll-county-lake{display:block;background:#fff;border:1px solid #e5e9eb;border-radius:15px;overflow:hidden}
.ll-county-lake:hover{box-shadow:0 10px 24px #1e3b4e14}
.ll-county-lake-image{height:155px;background:#d9e7df;position:relative}
.ll-county-lake-image img{width:100%;height:100%;object-fit:cover;display:block}
.ll-county-lake>div:last-child{padding:15px;display:grid;gap:6px}
.ll-county-lake strong{color:#263d40;font-size:.95rem}
.ll-county-lake span{color:#81938f;font-size:.72rem}
.ll-county-pages{display:flex;align-items:center;justify-content:center;gap:18px;margin:35px 0;color:#6d7987;font-size:.83rem}
.ll-county-pages a{padding:10px 15px;border-radius:9px;background:#5157c9;color:#fff;font-weight:800}
.ll-county-count{font-weight:700;color:#4e5a69}
@media(max-width:900px){.ll-county-grid,.ll-county-lakes{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.ll-county-grid,.ll-county-lakes{grid-template-columns:1fr}.ll-county-page{padding-top:28px}}

/* Center county navigation beneath both populated and empty result states. */
.ll-county-page > .ll-county-browse-more{max-width:none;text-align:center;margin:24px 0 0}
.ll-county-browse-more a{display:inline-flex;align-items:center;justify-content:center;color:#5157c9;font-size:.83rem;font-weight:700}
.ll-county-browse-more a:hover{text-decoration:underline}

/* Keep the directory CTA visually separated from the illustration on stacked layouts. */
.explore-story-copy .explore-button{margin-bottom:24px}
@media(max-width:850px){.explore-story-copy .explore-button{margin-bottom:36px}}


/* Slow aerial tracking shot: animate only the photograph, never the text or controls. */
    .explore-home .explore-hero-drone {
        position: relative;
        isolation: isolate;
        overflow: hidden;
        background-image: none !important;
    }
    .explore-home .explore-hero-drone::before {
        content: "";
        position: absolute;
        inset: -4%;
        z-index: -2;
        pointer-events: none;
        background: url('/images/banner-principal-home.webp') center center / cover no-repeat;
        transform-origin: 55% 55%;
        animation: lake-drone-flight 38s ease-in-out infinite alternate;
        will-change: transform;
    }
    .explore-home .explore-hero-drone::after {
        content: "";
        position: absolute;
        inset: 0;
        z-index: -1;
        pointer-events: none;
        background: linear-gradient(90deg, rgba(9, 28, 39, .72), rgba(9, 28, 39, .34) 55%, rgba(9, 28, 39, .08));
    }
    @keyframes lake-drone-flight {
        from { transform: scale(1.04) translate3d(1.5%, 1%, 0); }
        to { transform: scale(1.20) translate3d(-2.5%, -2%, 0); }
    }
    @media (prefers-reduced-motion: reduce) {
        .explore-home .explore-hero-drone::before { animation: none; transform: none; will-change: auto; }
    }
