/* LakeLocale navigation: desktop grouped dropdowns and a compact mobile menu. */
.site-header{position:relative;z-index:1100}
.site-header .header-inner{gap:22px}
.ll-header-nav{display:flex;align-items:center;gap:7px;margin-left:auto}
.ll-nav-group{position:relative}
.ll-nav-group>summary{display:flex;align-items:center;gap:9px;list-style:none;cursor:pointer;border-radius:10px;padding:11px 13px;color:#34475b;font-size:.82rem;font-weight:800;white-space:nowrap;user-select:none}
.ll-nav-group>summary::-webkit-details-marker,.ll-nav-mobile>summary::-webkit-details-marker{display:none}
.ll-nav-group>summary::marker,.ll-nav-mobile>summary::marker{content:""}
.ll-nav-group>summary:hover,.ll-nav-group[open]>summary{background:#f1f3fb;color:#414bc3}
.ll-nav-chevron{display:block;width:7px;height:7px;transform:rotate(45deg) translateY(-2px);border-right:1.8px solid currentColor;border-bottom:1.8px solid currentColor;transition:transform .15s ease}
.ll-nav-group[open] .ll-nav-chevron{transform:rotate(225deg) translate(-2px,-1px)}
.ll-nav-dropdown{position:absolute;top:calc(100% + 12px);left:50%;transform:translateX(-50%);width:310px;max-width:calc(100vw - 30px);padding:13px;border:1px solid #e2e8f2;border-radius:17px;background:#fff;box-shadow:0 20px 50px #21365324}
.ll-nav-dropdown:before{content:"";position:absolute;top:-9px;left:calc(50% - 9px);width:16px;height:16px;background:#fff;border-left:1px solid #e2e8f2;border-top:1px solid #e2e8f2;transform:rotate(45deg)}
.ll-nav-dropdown-kicker{display:block;padding:6px 10px 12px;color:#737dc7;font-size:.65rem;font-weight:850;letter-spacing:.12em}
.ll-nav-dropdown>a{display:flex;align-items:center;gap:12px;padding:11px 10px;border-radius:11px;color:#263a50;text-decoration:none}
.ll-nav-dropdown>a:hover,.ll-nav-dropdown>a:focus-visible{background:#f4f6fc}
.ll-nav-link-icon{display:grid;flex:none;place-items:center;width:38px;height:38px;border-radius:11px;background:#edf1ff;color:#525cc4}
.ll-nav-dropdown strong,.ll-nav-dropdown small{display:block}
.ll-nav-dropdown strong{font-size:.82rem;line-height:1.3}
.ll-nav-dropdown small{margin-top:4px;color:#8290a0;font-size:.69rem;line-height:1.3}
.ll-nav-simple{display:inline-flex;align-items:center;padding:11px 13px;font-size:.82rem;font-weight:800;color:#34475b;border-radius:10px}
.ll-nav-simple:hover{background:#f1f3fb;color:#414bc3}
.site-header .header-cta{flex:none;margin-left:10px}
.ll-nav-mobile{display:none;position:relative;margin-left:auto}
.ll-nav-mobile>summary{display:flex;align-items:center;justify-content:center;gap:8px;list-style:none;cursor:pointer;padding:11px 14px;border:1px solid #dce4f1;border-radius:11px;color:#3947b5;background:#f7f8ff;font-size:.81rem;font-weight:800}
.ll-nav-mobile[open]>summary{background:#e9edff}
.ll-nav-mobile-panel{position:absolute;right:0;top:calc(100% + 12px);width:min(340px,calc(100vw - 30px));max-height:min(70vh,620px);overflow-y:auto;overscroll-behavior:contain;padding:15px;border:1px solid #e2e7f1;border-radius:17px;background:#fff;box-shadow:0 20px 50px #21365328}
.ll-nav-mobile-panel>span{display:block;margin:13px 9px 6px;color:#6873c6;font-size:.64rem;font-weight:850;letter-spacing:.12em}
.ll-nav-mobile-panel>span:first-child{margin-top:4px}
.ll-nav-mobile-panel>a{display:block;padding:10px 12px;border-radius:9px;color:#2e4154;font-size:.81rem;font-weight:750}
.ll-nav-mobile-panel>a:hover,.ll-nav-mobile-panel>a:focus-visible{background:#f0f3fc;color:#3e49b8}
.ll-nav-group>summary:focus-visible,.ll-nav-simple:focus-visible,.ll-nav-mobile>summary:focus-visible{outline:3px solid #909ce9;outline-offset:2px}
@media(max-width:940px){
 .site-header .header-inner{gap:12px;flex-wrap:nowrap}
 .ll-header-nav{display:none}
 .ll-nav-mobile{display:block}
 .site-header .header-cta{margin-left:auto}
}
@media(max-width:680px){
 .site-header{height:76px}
 .site-header .header-inner{height:76px;min-height:76px;padding-block:0;flex-wrap:nowrap}
 .site-header .header-cta{display:none}
 .ll-nav-mobile{order:0;width:auto}
 .ll-nav-mobile-panel{max-height:calc(100dvh - 110px)}
}
@media(prefers-reduced-motion:reduce){.ll-nav-chevron{transition:none}}

/* Compact sticky header: keeps the primary navigation visible while scrolling. */
.site-header{position:sticky;top:0;z-index:1100;height:64px;background:#fff;border-bottom:1px solid #e8ecf3;box-shadow:0 3px 12px rgba(26,40,73,.035)}
.site-header .header-inner{height:64px;min-height:64px;padding-block:0}
.site-header .brand-mark{width:34px;height:34px}
.site-header .brand-mark img{width:100%;height:100%}
.site-header .header-cta{padding:10px 15px}
.ll-nav-group>summary,.ll-nav-simple{padding-block:9px}
@media(max-width:680px){
 .site-header{height:60px}
 .site-header .header-inner{height:60px;min-height:60px;padding-block:0}
 .ll-nav-mobile>summary{padding:8px 12px}
 .ll-nav-mobile-panel{max-height:calc(100dvh - 76px)}
}

/* Overlay the directory's high-z-index filter bar with open header menus. */
.site-header{z-index:10000}
.ll-nav-dropdown,.ll-nav-mobile-panel{z-index:10001}
/* Desktop lake explorer: compact secondary filter bar, retaining 40px controls. */
@media(min-width:851px){
 :root{--ll-filter-height:58px}
 .directory-explorer .directory-top-filters{padding-block:6px;gap:12px}
 .directory-explorer .directory-top-search{height:40px}
 .directory-explorer .directory-filter-group{gap:9px}
 .directory-explorer .directory-filter-group .ll-select-field{height:40px;min-height:40px}
 .directory-explorer .directory-filter-group .ll-select-input{min-height:38px}
 .directory-explorer .directory-filter-group .directory-sort-select{height:40px}
 .directory-explorer .directory-filter-group .ll-button{min-height:40px;padding:8px 14px}
}
