/* Version 23: premium navigation and dropdown system */
.overlay-header{--nav-gold:#e5c47f;--nav-forest:#0d4225;--nav-ink:#183427}
.header-top{background:rgba(3,31,16,.18);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
.header-top a{transition:color .2s ease,opacity .2s ease}.header-top a:hover{color:#f4dca8}.language-switcher{border-color:rgba(255,255,255,.34);background:rgba(2,32,16,.42);box-shadow:inset 0 1px 0 rgba(255,255,255,.1)}
.nav-shell{position:relative;border-bottom:1px solid rgba(255,255,255,.13);transition:height .3s ease,background .3s ease,border-color .3s ease,box-shadow .3s ease}
.overlay-header:not(.scrolled) .nav-shell{background:linear-gradient(180deg,rgba(3,34,17,.2),rgba(3,34,17,.04));backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px)}
.overlay-header.scrolled .nav-shell{border-color:#e7ece8;background:rgba(255,255,255,.97);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}
.overlay-header .logo{display:grid;place-items:center;padding:5px 11px;border:1px solid rgba(255,255,255,.18);border-radius:14px;background:rgba(255,255,255,.94);box-shadow:0 12px 35px rgba(1,25,12,.14);transition:transform .25s ease,box-shadow .25s ease,background .25s ease}
.overlay-header .logo:hover{transform:translateY(-1px);box-shadow:0 16px 42px rgba(1,25,12,.2)}
.overlay-header.scrolled .logo{border-color:#e5ebe7;background:#fff;box-shadow:0 8px 24px rgba(8,48,26,.09)}
.overlay-header .quote{position:relative;overflow:hidden;border:1px solid rgba(255,255,255,.62);border-radius:999px;background:linear-gradient(135deg,#f4dda9,#d8b36a);color:#113d24;box-shadow:0 10px 28px rgba(3,34,17,.2);letter-spacing:.01em;transition:transform .25s ease,box-shadow .25s ease,background .25s ease}
.overlay-header .quote:hover{transform:translateY(-2px);box-shadow:0 15px 34px rgba(3,34,17,.28);background:linear-gradient(135deg,#f8e7bd,#dfbb73)}
.overlay-header.scrolled .quote{border-color:#104928;background:linear-gradient(135deg,#104928,#17633a);color:#fff;box-shadow:0 10px 25px rgba(16,73,40,.21)}
.overlay-header.scrolled .quote:hover{background:linear-gradient(135deg,#17633a,#104928);box-shadow:0 14px 30px rgba(16,73,40,.3)}

@media(min-width:1101px){
  .nav-shell{padding-left:clamp(24px,3.5vw,62px);padding-right:clamp(24px,3.5vw,62px);gap:clamp(14px,1.7vw,27px)}
  .main-navigation{align-self:stretch;height:100%;gap:2px!important}
  .main-navigation .navitem{display:flex;align-items:stretch;height:100%}
  .main-navigation .nav-link-row{display:flex!important;align-items:center;height:100%}
  .main-navigation .navitem>.nav-link-row>a,.overlay-header.scrolled .main-navigation .navitem>.nav-link-row>a{display:flex;align-items:center;height:auto;padding:11px 9px!important;border:1px solid transparent;border-radius:999px;color:#fff;text-shadow:0 1px 16px rgba(0,0,0,.48);font-size:clamp(10.5px,.79vw,12.5px)!important;font-weight:750;letter-spacing:.045em;line-height:1.1;text-transform:uppercase;white-space:nowrap;transition:color .23s ease,background .23s ease,border-color .23s ease,transform .23s ease}
  .main-navigation .navitem:hover>.nav-link-row>a,.main-navigation .navitem:focus-within>.nav-link-row>a{border-color:rgba(255,255,255,.18);background:rgba(255,255,255,.12);color:#f6dda5;transform:translateY(-1px)}
  .overlay-header.scrolled .main-navigation .navitem>.nav-link-row>a{color:var(--nav-ink);text-shadow:none}
  .overlay-header.scrolled .main-navigation .navitem:hover>.nav-link-row>a,.overlay-header.scrolled .main-navigation .navitem:focus-within>.nav-link-row>a{border-color:#dbe7de;background:#edf4ef;color:#104928}
  .main-navigation .navitem.active>.nav-link-row>a:after,.overlay-header.scrolled .main-navigation .navitem.active>.nav-link-row>a:after{left:15px;right:15px;bottom:5px;width:auto;height:2px;border-radius:999px;background:var(--nav-gold);box-shadow:none;transform:none;transition:left .23s ease,right .23s ease}
  .overlay-header.scrolled .main-navigation .navitem.active>.nav-link-row>a:after{background:#1b7042}
  .main-navigation .navitem.active:hover>.nav-link-row>a:after{left:20px;right:20px}
  .parent-indicator{width:18px;height:18px;margin-left:6px;border-color:rgba(255,255,255,.42);background:rgba(255,255,255,.06);font-size:10px;transition:transform .25s ease,border-color .25s ease,background .25s ease}
  .overlay-header.scrolled .parent-indicator{border-color:#b6c6bb;background:#fff}
  .nav-dropdown:hover .parent-indicator,.nav-dropdown:focus-within .parent-indicator{transform:rotate(180deg);border-color:currentColor}

  .main-navigation .navitem>.drop,.main-navigation .navitem:hover>.drop{display:grid!important;visibility:hidden;pointer-events:none;opacity:0;overflow-y:auto;overscroll-behavior:contain;border:1px solid #dfe8e1!important;border-top:3px solid var(--nav-gold)!important;border-radius:15px!important;background:linear-gradient(180deg,#fff 0%,#fbfcfa 100%);box-shadow:0 28px 75px rgba(3,40,20,.22),0 8px 20px rgba(3,40,20,.08)!important;transition:opacity .2s ease,transform .26s cubic-bezier(.2,.8,.2,1),visibility .2s ease}
  .main-navigation .navitem:hover>.drop,.main-navigation .navitem:focus-within>.drop{visibility:visible;pointer-events:auto;opacity:1}
  .main-navigation .navitem.menu-open>.drop{visibility:visible;pointer-events:auto;opacity:1}
  .main-navigation .navitem:not(.mega)>.drop{top:calc(100% - 7px)!important;left:50%!important;right:auto!important;width:296px!important;max-height:min(68vh,610px);padding:10px!important;transform:translate(-50%,10px)!important}
  .main-navigation .navitem:not(.mega):hover>.drop,.main-navigation .navitem:not(.mega):focus-within>.drop{transform:translate(-50%,0)!important}
  .main-navigation .navitem:not(.mega).menu-open>.drop{transform:translate(-50%,0)!important}
  .main-navigation .navitem.mega>.drop{position:fixed!important;top:133px!important;left:50%!important;right:auto!important;width:min(920px,calc(100vw - 64px))!important;max-height:min(65vh,610px);padding:18px!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:5px 10px!important;transform:translate(-50%,0)!important}
  .overlay-header.scrolled .main-navigation .navitem.mega>.drop{top:82px!important}
  .main-navigation .navitem.mega:hover>.drop,.main-navigation .navitem.mega:focus-within>.drop{transform:translate(-50%,0)!important}
  .main-navigation .navitem.mega.menu-open>.drop{transform:translate(-50%,0)!important}
  .main-navigation .navitem.mega>.drop::before{content:"";position:absolute;left:0;right:0;top:-24px;height:24px;background:transparent}
  .main-navigation .navitem.menu-open>.nav-link-row>a{border-color:rgba(255,255,255,.18);background:rgba(255,255,255,.12);color:#f6dda5;transform:translateY(-1px)}
  .overlay-header.scrolled .main-navigation .navitem.menu-open>.nav-link-row>a{border-color:#dbe7de;background:#edf4ef;color:#104928}
  .nav-dropdown.menu-open .parent-indicator{transform:rotate(180deg);border-color:currentColor}
  .main-navigation .drop a{display:flex!important;align-items:center;min-height:46px;gap:11px;padding:10px 11px!important;border:1px solid transparent!important;border-radius:10px;color:#324a3a;font-size:12.5px;font-weight:650;line-height:1.35;transition:color .2s ease,background .2s ease,border-color .2s ease,transform .2s ease}
  .main-navigation .drop a:hover,.main-navigation .drop a:focus-visible,.main-navigation .drop a.active-child{border-color:#dce9df!important;background:#edf5ef;color:#0f542e;transform:translateX(2px);outline:0}
  .main-navigation .drop a>i{width:23px;height:23px;flex:0 0 23px;border:1px solid #d4e2d7;background:#f2f7f3;color:#38714f;font-size:9px;box-shadow:inset 0 1px 0 rgba(255,255,255,.85)}
  .main-navigation .drop a:hover>i,.main-navigation .drop a:focus-visible>i,.main-navigation .drop a.active-child>i{border-color:#b68b3c;background:linear-gradient(135deg,#e8ca89,#d0a14b);color:#173c25}
  .main-navigation .nav-destinations>.drop a>i:after{content:""}
  .main-navigation .nav-activities>.drop a>i{border-radius:7px}
}

@media(min-width:1101px) and (max-width:1280px){
  .nav-shell{padding-left:22px;padding-right:22px;gap:13px}
  .overlay-header .logo{width:137px;padding-left:8px;padding-right:8px}
  .main-navigation .navitem>.nav-link-row>a,.overlay-header.scrolled .main-navigation .navitem>.nav-link-row>a{padding-left:7px!important;padding-right:7px!important;font-size:10.5px!important;letter-spacing:.025em}
  .parent-indicator{width:16px;height:16px;margin-left:4px}
  .overlay-header .quote{padding:13px 15px;font-size:11px}
}

@media(max-width:1100px){
  .nav-shell{padding-left:4vw;padding-right:4vw;background:linear-gradient(180deg,rgba(3,35,18,.16),rgba(3,35,18,.03))}
  .overlay-header .logo{padding:4px 9px;border-radius:12px}
  .menub{border:1px solid rgba(255,255,255,.38);border-radius:50%;background:rgba(2,32,16,.18);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
  .overlay-header.scrolled .menub{border-color:#d5e2d8;background:#f1f6f2}
  .main-navigation{width:min(91vw,420px)!important;padding:0 22px 30px!important;background:linear-gradient(180deg,#fff 0%,#fbfcfa 62%,#f4f7f3 100%)!important;box-shadow:30px 0 90px rgba(2,28,14,.34)!important}
  .nav-drawer-head{position:sticky;top:0;z-index:2;min-height:96px;margin:0 -22px;padding:0 22px;border-bottom:1px solid #dde7df;background:rgba(255,255,255,.96);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
  .nav-drawer-head img{width:142px}.nav-drawer-head button{border:1px solid #dce7df;background:#f1f6f2;box-shadow:0 7px 18px rgba(16,73,40,.09);cursor:pointer;transition:transform .2s ease,background .2s ease}.nav-drawer-head button:hover{transform:rotate(6deg);background:#e6f0e9}
  .mobile-menu-label{padding:23px 3px 10px;color:#788a7e;font-size:9px;letter-spacing:.19em}
  .navitem{margin:2px 0}.nav-link-row{min-height:53px;padding:0 4px;border-bottom:1px solid #e4ebe6;border-radius:10px;transition:background .2s ease}
  .navitem:hover>.nav-link-row,.navitem.active>.nav-link-row{background:#eff5f0}
  .main-navigation .navitem>.nav-link-row>a,.overlay-header.scrolled .main-navigation .navitem>.nav-link-row>a{padding:15px 10px!important;color:#173d27!important;font-size:15px!important;font-weight:750;letter-spacing:.005em}
  .main-navigation .navitem.active>.nav-link-row>a{color:#0e5a30!important}
  .main-navigation .navitem.active>.nav-link-row>a:after,.overlay-header.scrolled .main-navigation .navitem.active>.nav-link-row>a:after{left:10px;bottom:7px;width:30px;height:2px;border-radius:2px;background:#c99b47;box-shadow:none;transform:none}
  .submenu-toggle{width:38px;height:38px;margin-right:3px;border:1px solid #d6e3d9;border-radius:50%;background:#fff;box-shadow:0 4px 12px rgba(16,73,40,.07)}
  .submenu-toggle span{font-size:19px;line-height:1;color:#145631}
  .main-navigation .drop,.main-navigation .navitem:hover>.drop{margin:5px 4px 0!important;padding:0 8px!important;border:1px solid transparent!important;border-radius:12px!important;background:#f2f6f2!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.8)!important;transform:none!important;visibility:hidden;pointer-events:none}
  .main-navigation .navitem.expanded>.drop{max-height:1000px;padding:8px!important;border-color:#dce8df!important;opacity:1;visibility:visible;pointer-events:auto}
  .main-navigation .drop a{display:flex;align-items:center;gap:10px;min-height:43px;padding:9px 10px!important;border:0!important;border-bottom:1px solid #e0e9e2!important;border-radius:7px;color:#4d6254!important;font-size:12.5px!important;line-height:1.35;transition:background .2s ease,color .2s ease,transform .2s ease}
  .main-navigation .drop a:last-child{border-bottom:0!important}.main-navigation .drop a:hover{background:#e6f0e8;color:#104928!important;transform:translateX(2px)}
  .main-navigation .drop a>i{width:21px;height:21px;flex-basis:21px;border:1px solid #cfdfd2;background:#fff;color:#2e714b;font-size:8px}
  .mobile-plan-link{margin:24px 0 18px;padding:16px 18px;border:1px solid #0e4225;border-radius:999px;background:linear-gradient(135deg,#104928,#17643a);box-shadow:0 12px 26px rgba(16,73,40,.2);letter-spacing:.01em}
  .mobile-plan-link span{width:28px;height:28px;display:grid;place-items:center;border-radius:50%;background:rgba(255,255,255,.14)}
  .mobile-nav-contact{gap:10px;padding:17px 4px 0}.mobile-nav-contact a{color:#5d6f62;font-size:11.5px}
}

@media(max-width:700px){
  .main-navigation{width:min(93vw,400px)!important;padding-left:18px!important;padding-right:18px!important}
  .nav-drawer-head{margin-left:-18px;margin-right:-18px;padding-left:18px;padding-right:18px;min-height:88px}
  .nav-drawer-head img{width:132px}.nav-link-row{min-height:51px}
}

@media(prefers-reduced-motion:reduce){.main-navigation .drop,.main-navigation .drop a,.main-navigation .nav-link-row>a,.overlay-header .quote,.overlay-header .logo{transition:none!important}}

/* Version 27: original-quality, unfiltered homepage hero video */
.home-hero{height:max(700px,min(100svh,56.25vw));min-height:700px;isolation:isolate;background:#082b19}
.home-hero-media{position:absolute;inset:0;z-index:0;overflow:hidden;background:#061d12}
.home-hero-media::before{content:"";position:absolute;inset:-35px;z-index:0;background-image:var(--home-hero-poster);background-position:center;background-size:cover;filter:blur(24px) saturate(.88);opacity:0;transform:scale(1.08);transition:opacity .45s ease}
.home-hero-media video{position:relative;z-index:1;display:block;width:100%;height:100%;max-width:none;object-fit:cover!important;object-position:center center!important;filter:none!important;transform:none!important;transition:opacity .45s ease}
.home-hero.video-portrait .home-hero-media::before{opacity:.78}
.home-hero.video-portrait .home-hero-media video{object-fit:contain!important;box-shadow:0 0 80px rgba(0,0,0,.28)}
.home-hero .herowash{display:none!important;background:none!important}
.home-hero .heroinside{z-index:2;top:auto;bottom:clamp(88px,11vh,145px);transform:none;max-width:720px}
.home-hero .heroinside>p{color:#f1d59a;text-shadow:0 2px 10px rgba(0,0,0,.92),0 0 24px rgba(0,0,0,.7)}
.home-hero .heroinside h1{font-size:clamp(52px,6vw,88px);line-height:.98;margin:16px 0 20px;text-wrap:balance;text-shadow:0 3px 14px rgba(0,0,0,.9),0 0 34px rgba(0,0,0,.62)}
.home-hero .herotext{max-width:590px;font-size:17px;line-height:1.65;color:#fff;text-shadow:0 2px 10px rgba(0,0,0,.95),0 0 25px rgba(0,0,0,.72)}
.home-hero .heroactions{margin-top:27px}
.home-hero .videobrand{z-index:3;right:3vw;bottom:22px;border:1px solid rgba(255,255,255,.55);border-radius:999px;box-shadow:0 10px 32px rgba(2,24,12,.2);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
.hero-video-control{position:absolute;z-index:3;left:3vw;bottom:22px;display:flex;align-items:center;gap:9px;min-height:40px;padding:7px 14px 7px 8px;border:1px solid rgba(255,255,255,.52);border-radius:999px;background:rgba(4,39,20,.48);color:#fff;cursor:pointer;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);transition:background .2s ease,transform .2s ease}
.hero-video-control:hover,.hero-video-control:focus-visible{background:rgba(16,73,40,.86);transform:translateY(-2px);outline:2px solid rgba(255,255,255,.8);outline-offset:2px}
.hero-video-control span{display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:rgba(255,255,255,.16);font-size:10px}.hero-video-control b{font:750 10px 'Work Sans',sans-serif;letter-spacing:.06em;text-transform:uppercase}
.home-hero.video-error .hero-video-control{display:none}
@media(max-width:900px){.home-hero{height:100svh;min-height:720px}.home-hero.video-landscape .home-hero-media video{object-position:62% center!important}.home-hero .heroinside{left:6vw;right:6vw;bottom:105px;max-width:620px}.home-hero .videobrand{right:4vw;bottom:18px}.hero-video-control{left:4vw;bottom:18px}}
@media(max-width:700px){.home-hero{min-height:690px}.home-hero .heroinside{bottom:90px}.home-hero .heroinside h1{font-size:clamp(43px,13vw,58px);margin:12px 0 15px}.home-hero .herotext{font-size:15px;line-height:1.55}.home-hero .heroactions{margin-top:20px;gap:9px}.home-hero .heroactions a{padding:13px 18px}.hero-video-control{padding-right:8px}.hero-video-control b{display:none}.home-hero .videobrand{bottom:18px}}
@media(prefers-reduced-motion:reduce){.home-hero-media video,.home-hero-media::before,.hero-video-control{transition:none!important}.hero-video-control{display:none}}
