/* Native disclosures remain usable without JavaScript. */
.main-nav{position:relative}
.desktop-nav{align-items:center;gap:24px;margin-left:16px}
.nav-group{position:static}
.nav-group>summary{display:flex;align-items:center;gap:8px;list-style:none;cursor:pointer;font-size:14px;font-weight:700;color:var(--ink);min-height:44px;white-space:nowrap}
.nav-group>summary::-webkit-details-marker{display:none}
.nav-chevron{width:7px;height:7px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg);margin-top:-4px}
.nav-group[open]>summary{color:#00795e}
.nav-group[open]>summary .nav-chevron{transform:rotate(225deg);margin-top:4px}
.nav-panel{position:absolute;top:calc(100% - 2px);left:0;right:0;padding:26px;background:#f6f9f8;border:1px solid rgb(255 255 255 / .9);border-radius:0 0 22px 22px;box-shadow:inset 0 1px 0 #fff,inset 1px 0 0 #ffffffb3,inset -1px -1px 0 #ffffff80,inset 0 -3px 7px #1f515314,0 6px 12px #0023320f,0 24px 60px -16px #002c3e45;z-index:50;max-height:calc(100dvh - 135px);overflow:auto;overscroll-behavior:contain}
/* Transparency is paint only. Children always retain full opacity. */
@supports ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){
 .nav-panel,.mobile-nav>div{
  background:radial-gradient(ellipse at 0 0,rgb(255 255 255 / .55),transparent 55%),linear-gradient(125deg,rgb(255 255 255 / .35),rgb(255 255 255 / .06) 42%,rgb(225 249 244 / .14) 75%,rgb(255 255 255 / .3)),rgb(255 255 255 / .72);
  -webkit-backdrop-filter:blur(16px) saturate(145%) brightness(1.04);
  backdrop-filter:blur(16px) saturate(145%) brightness(1.04);
 }
}
.nav-panel a{display:flex;align-items:center;justify-content:space-between;gap:10px;white-space:normal;font-weight:550;font-size:14px;line-height:1.4;padding:12px;border-radius:8px;color:var(--ink);text-decoration:none!important;transition:background .18s,color .18s,box-shadow .18s}
.nav-panel a:hover,.nav-panel a:focus-visible{background:#edf8f3;color:#00775c}
.nav-panel a:focus-visible,.nav-group>summary:focus-visible,.mobile-nav>summary:focus-visible{outline:2px solid #00876a;outline-offset:3px}
.nav-arrow{width:19px;height:19px;flex-shrink:0;color:#008066;transition:transform .18s}
.nav-panel a:hover .nav-arrow{transform:translateX(3px)}
.nav-panel-heading{display:flex;justify-content:space-between;align-items:baseline;gap:16px;margin:0 0 20px}
.nav-panel-heading>strong{font-size:23px;font-weight:650;letter-spacing:-.5px;color:var(--ink)}
.nav-panel-heading>span{font-size:12px;color:#304c54}
.nav-featured-destinations{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.nav-panel .nav-destination-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:0 8px;padding:0 0 12px;border:1px solid #dce8e4;border-radius:13px;background:#fff;overflow:hidden;box-shadow:0 3px 8px #002c3e05}
.nav-destination-photo{grid-column:1/-1;display:block;overflow:hidden;aspect-ratio:2.05;background:#dcebe7}
.nav-destination-photo img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .35s}
.nav-destination-card:hover img{transform:scale(1.04)}
.nav-card-copy{display:block;min-width:0}
.nav-destination-card .nav-card-copy{padding:12px 0 0 13px}
.nav-card-copy strong{display:block;font-size:15px;font-weight:700;line-height:1.3}
.nav-card-copy small{display:block;margin-top:5px;font-size:12px;line-height:1.45;color:#526a70;font-weight:400}
.nav-destination-card>.nav-arrow{margin:12px 12px 0 0;width:17px}
.nav-panel .nav-destination-card:hover,.nav-panel .nav-service-card:hover{background:#fff;box-shadow:0 8px 20px #003f3312;border-color:#85cbb5}
.nav-more-destinations{margin-top:22px;padding-top:17px;border-top:1px solid #dbe7e2}
.nav-panel-title{font-size:11px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:#304c54;padding:0;margin:0 0 8px}
.nav-destination-links{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:2px 12px}
.nav-destination-links a{padding:9px 0;font-size:13px;min-height:40px;border-radius:5px}
.nav-destination-links .nav-arrow{width:14px;margin-right:6px;opacity:.65}
.nav-service-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.nav-panel .nav-service-card{position:relative;display:grid;grid-template-columns:46% 1fr auto;gap:14px;padding:20px 18px 20px 6px;background:linear-gradient(135deg,#e9f4ef,#ffffff 70%);border:1px solid #d9e8e0;border-radius:14px}
.nav-service-photo{display:block;min-width:0;height:122px}
.nav-service-photo img{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 9px 6px #12372d1f)}
.nav-service-card .nav-card-copy strong{font-size:19px;letter-spacing:-.35px}
.nav-service-card .nav-card-copy small{max-width:180px}
.nav-service-extras{display:grid;grid-template-columns:1fr 1fr 1.3fr;gap:16px;padding-top:16px;margin-top:18px;border-top:1px solid #dbe7e2}
.nav-service-extras a{font-size:13px;padding:10px 6px}
.desktop-nav [data-nav-group="help"]{position:relative}
.nav-panel--help{left:50%;right:auto;top:calc(100% + 18px);transform:translateX(-50%);width:330px;padding:14px;border-radius:0 0 16px 16px}
.nav-panel--help a{padding:14px}
.mobile-nav>summary{cursor:pointer}
@media(min-width:833px) and (max-width:1150px){.main-nav{gap:20px}.main-nav .brand{width:190px}.desktop-nav{gap:16px;margin-left:0}.desktop-nav>a,.nav-group>summary{font-size:12px}.locale-control{font-size:11px}.nav-panel{padding:20px}.nav-featured-destinations{gap:10px}.nav-card-copy strong{font-size:13px}.nav-card-copy small{font-size:11px}.nav-destination-card .nav-card-copy{padding-left:10px}.nav-destination-links{grid-template-columns:repeat(4,minmax(0,1fr))}.nav-service-card .nav-card-copy strong{font-size:16px}.nav-service-grid{gap:12px}.nav-panel .nav-service-card{gap:8px;padding-right:12px}.nav-service-photo{height:108px}}
@media(max-width:832px){
 .main-nav{position:static}
 .mobile-nav>div{max-height:calc(100vh - 80px);max-height:calc(100dvh - 80px);overflow:auto;overscroll-behavior:contain;padding:12px 20px 28px;border-top:1px solid #ffffffd9;border-radius:0 0 20px 20px;gap:2px}
 .mobile-nav .nav-group{border-bottom:1px solid #e2ebe7}
 .mobile-nav .nav-group>summary{padding:14px 2px;justify-content:space-between;min-height:52px;font-size:16px}
 .mobile-nav .nav-panel{position:static;width:auto;max-height:none;overflow:visible;padding:2px 0 20px;border:0;border-radius:0;box-shadow:none;background:none;backdrop-filter:none;-webkit-backdrop-filter:none;transform:none}
 .mobile-nav .nav-panel-heading{display:none}
 .mobile-nav .nav-featured-destinations{grid-template-columns:1fr 1fr;gap:10px}
 .mobile-nav .nav-destination-card{display:block;position:relative;padding:0 0 12px;min-height:0;gap:0;border-radius:11px}
 .mobile-nav .nav-destination-photo{aspect-ratio:1.7}
 .mobile-nav .nav-card-copy{padding:10px 11px 0}
 .mobile-nav .nav-card-copy strong{font-size:13px}
 .mobile-nav .nav-card-copy small{font-size:11px;margin-top:4px}
 .mobile-nav .nav-destination-card>.nav-arrow{display:none}
 .mobile-nav .nav-more-destinations{margin-top:18px;padding-top:14px}
 .mobile-nav .nav-destination-links{grid-template-columns:1fr 1fr;gap:0 14px}
 .mobile-nav .nav-destination-links a{font-size:13px;padding:10px 0;min-height:44px;border-bottom:1px solid #e4ede8;border-radius:0}
 .mobile-nav .nav-service-grid{grid-template-columns:1fr;gap:10px}
 .mobile-nav .nav-service-card{grid-template-columns:40% 1fr auto;padding:8px;gap:8px;min-height:110px}
 .mobile-nav .nav-service-card .nav-card-copy{padding:0}
 .mobile-nav .nav-service-card .nav-card-copy strong{font-size:16px}
 .mobile-nav .nav-service-photo{height:100px}
 .mobile-nav .nav-service-extras{grid-template-columns:1fr;gap:0;margin-top:12px;padding-top:8px}
 .mobile-nav .nav-service-extras a,.mobile-nav .nav-panel--help a{font-size:14px;padding:13px 2px;min-height:46px}
 .mobile-nav>div>a{font-size:16px;font-weight:700;min-height:52px;padding:14px 2px}
 .mobile-nav[open]>summary{background:#edf8f3;border-radius:8px;color:#00775c}
}
@media(prefers-reduced-motion:reduce){.nav-panel a,.nav-chevron,.nav-arrow,.nav-destination-photo img{transition:none}.nav-destination-card:hover img{transform:none}}
@media(prefers-reduced-transparency:reduce),(prefers-contrast:more){
 .nav-panel,.mobile-nav>div{background:#f6f9f8;backdrop-filter:none;-webkit-backdrop-filter:none;border-color:#78918d}
 .mobile-nav .nav-panel{background:transparent;border:0}
}
@media(forced-colors:active){
 .nav-panel,.mobile-nav>div{background:Canvas;color:CanvasText;border-color:CanvasText;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none}
 .nav-panel a,.nav-panel-heading>strong,.nav-panel-heading>span,.nav-card-copy small,.nav-panel-title{color:CanvasText}
 .mobile-nav .nav-panel{background:transparent;border:0}
}
