/* Shared navigation for every Kalele Kai page. */
:root{--global-header-height:96px}
html{scroll-padding-top:calc(var(--global-header-height) + 22px)}
.global-header{position:sticky;top:0;z-index:70;width:100%;background:#163c3a;color:#f5f3ec;border-bottom:1px solid #ffffff26;font-family:Outfit,Arial,sans-serif;box-sizing:border-box}
.global-header--home{margin-bottom:calc(-1 * var(--global-header-height))}
.global-header-inner{width:calc(100% - 80px);max-width:1320px;min-height:var(--global-header-height);margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:35px;box-sizing:border-box}
.global-logo{display:flex;align-items:center;flex:0 0 auto;text-decoration:none;min-height:48px}
/* Fit the visible wordmark, cropping only the source image's transparent margins. */
.global-logo img{display:block;width:250px;max-width:100%;height:auto;aspect-ratio:853/137;object-fit:cover;object-position:center;filter:brightness(0) invert(1)}
.global-desktop-nav{display:flex;align-items:center;justify-content:flex-end;gap:25px;margin-left:auto}
.global-desktop-nav a{display:inline-flex;align-items:center;justify-content:center;gap:16px;min-height:48px;color:inherit;font:400 14px/1.3 Outfit,Arial,sans-serif;text-decoration:none;white-space:nowrap;text-underline-offset:7px}
.global-desktop-nav a:hover,.global-desktop-nav a[aria-current]{text-decoration:underline;text-decoration-thickness:1px}
.global-desktop-nav .global-resident-link{min-height:45px;padding:11px 19px;border:1px solid #ffffff78;border-radius:100px;font-size:13px}
.global-desktop-nav .global-resident-link:hover{background:#ffffff12}
.global-menu-toggle{display:none;flex:0 0 48px;align-items:center;justify-content:center;flex-direction:column;gap:7px;width:48px;height:48px;min-height:48px;padding:10px;border:1px solid #ffffff66;border-radius:50%;background:transparent;color:inherit;cursor:pointer;touch-action:manipulation}
.global-menu-toggle span{display:block;width:21px;height:1.5px;background:currentColor;transition:transform .18s}
.global-menu-toggle[aria-expanded=true] span:first-child{transform:translateY(4.25px) rotate(45deg)}
.global-menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-4.25px) rotate(-45deg)}
.global-mobile-nav[hidden]{display:none!important}
.global-mobile-nav{position:fixed;inset:var(--global-nav-bottom,96px) 0 0;z-index:65;overflow-y:auto;overscroll-behavior:contain;background:#163c3a;color:#f5f3ec;padding:24px max(24px,calc((100vw - 1320px)/2)) 40px;font-family:Outfit,Arial,sans-serif;box-sizing:border-box}
.global-mobile-nav a{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:54px;padding:10px 0;color:inherit;border-bottom:1px solid #ffffff25;font:400 28px/1.3 Georgia,'Times New Roman',serif;letter-spacing:-.025em;text-decoration:none}
.global-mobile-nav a:hover,.global-mobile-nav a[aria-current]{color:#cbdabd}
.global-mobile-nav .global-mobile-secondary{font:400 17px/1.5 Outfit,Arial,sans-serif;letter-spacing:0;min-height:49px;color:#d7e2d0}
.global-mobile-nav .global-mobile-secondary:nth-child(6){margin-top:18px}
.global-mobile-nav a span{font:400 21px/1 Outfit,Arial,sans-serif}
.global-header a:focus-visible,.global-header button:focus-visible,.global-mobile-nav a:focus-visible{outline:3px solid #c0d3ac;outline-offset:4px}
body.global-nav-open{overflow:hidden}
@media(max-width:1150px){.global-header-inner{width:calc(100% - 64px);gap:25px}.global-logo img{width:215px}.global-desktop-nav{gap:18px}.global-desktop-nav a{font-size:13px}.global-desktop-nav .global-resident-link{padding-inline:15px;font-size:12px}}
@media(max-width:900px){:root{--global-header-height:80px}.global-header-inner{width:calc(100% - 44px);gap:18px;flex-wrap:wrap}.global-logo img{width:220px}.global-desktop-nav{width:100%;justify-content:flex-start;flex-wrap:wrap;gap:5px 20px;margin:0;padding-bottom:16px}.global-nav-ready .global-header-inner{flex-wrap:nowrap}.global-nav-ready .global-desktop-nav{display:none}.global-nav-ready .global-menu-toggle{display:flex}.global-mobile-nav{padding:20px 32px 35px}}
@media(max-width:600px){:root{--global-header-height:78px}.global-header-inner{width:calc(100% - 40px);gap:15px}.global-logo img{width:195px}.global-mobile-nav{padding:17px 24px 30px}.global-mobile-nav a{font-size:27px;min-height:55px}.global-mobile-nav .global-mobile-secondary{font-size:17px;min-height:48px}}
@media(prefers-reduced-motion:reduce){.global-menu-toggle span{transition:none}}
@media print{.global-header,.global-mobile-nav{display:none!important}}
