/* EcoSapa Premium Navigation v0.34.0
   Uses the theme's existing header shell and upgrades only the primary nav. */
.ecosapa-nav-top{position:relative}
.ecosapa-nav-top>a{display:flex!important;align-items:center;gap:7px;font-weight:700!important;letter-spacing:-.01em;white-space:nowrap}
.ecosapa-nav-top-label{display:inline-block}
.ecosapa-nav-chevron{width:7px;height:7px;border-right:1.7px solid currentColor;border-bottom:1.7px solid currentColor;transform:rotate(45deg) translateY(-2px);transition:transform .18s ease}
.ecosapa-nav-top:hover .ecosapa-nav-chevron,.ecosapa-nav-top:focus-within .ecosapa-nav-chevron{transform:rotate(225deg) translate(-2px,-1px)}
.ecosapa-nav-top.current-menu-item>a,.ecosapa-nav-top.current-menu-ancestor>a,.ecosapa-nav-top.is-current>a{color:#e91e2a!important}

@media (min-width:992px){
  .ecosapa-nav-mega{
    position:absolute!important;top:calc(100% + 14px)!important;left:50%!important;
    transform:translate(-50%,8px)!important;
    display:grid!important;opacity:0!important;visibility:hidden!important;pointer-events:none!important;
    background:#fff!important;border:1px solid #e7ecea!important;border-radius:18px!important;
    padding:18px!important;box-shadow:0 24px 65px rgba(14,34,44,.16)!important;
    z-index:99999!important;transition:opacity .16s ease,transform .16s ease,visibility .16s!important;
  }
  .ecosapa-nav-top:hover>.ecosapa-nav-mega,.ecosapa-nav-top:focus-within>.ecosapa-nav-mega{
    opacity:1!important;visibility:visible!important;pointer-events:auto!important;transform:translate(-50%,0)!important;
  }
  .ecosapa-nav-mega:before{content:"";position:absolute;top:-14px;left:0;right:0;height:18px}
  .ecosapa-nav-mega--destinations{width:min(900px,92vw)!important;grid-template-columns:1.2fr repeat(3,minmax(0,1fr))!important;gap:10px!important}
  .ecosapa-nav-mega--destinations.ecosapa-nav-mega--destinations-4{width:min(1080px,94vw)!important;grid-template-columns:minmax(180px,1.15fr) repeat(4,minmax(140px,1fr))!important}
  .ecosapa-nav-mega--destinations.ecosapa-nav-mega--destinations-5{width:min(1060px,94vw)!important;grid-template-columns:minmax(190px,1.15fr) repeat(3,minmax(160px,1fr))!important;grid-auto-rows:minmax(74px,auto)!important}
  .ecosapa-nav-mega--destinations.ecosapa-nav-mega--destinations-5 .ecosapa-nav-mega__intro{grid-row:1 / span 2!important}
  .ecosapa-nav-mega--destinations.ecosapa-nav-mega--destinations-6{width:min(1140px,95vw)!important;grid-template-columns:minmax(190px,1.15fr) repeat(3,minmax(160px,1fr))!important;grid-auto-rows:minmax(74px,auto)!important}
  .ecosapa-nav-mega--destinations.ecosapa-nav-mega--destinations-6 .ecosapa-nav-mega__intro{grid-row:1 / span 2!important}
  .ecosapa-nav-mega--experiences{width:min(720px,88vw)!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:8px 12px!important}
  .ecosapa-nav-mega li{margin:0!important;padding:0!important;list-style:none!important;border:0!important;background:transparent!important;float:none!important;width:auto!important}
  .ecosapa-nav-mega .ecosapa-nav-item>a{display:flex!important;flex-direction:column!important;align-items:flex-start!important;gap:3px!important;padding:12px 13px!important;border-radius:12px!important;color:#102e3a!important;text-decoration:none!important;background:transparent!important;line-height:1.25!important;min-height:64px!important;transition:background .15s ease,transform .15s ease!important}
  .ecosapa-nav-mega .ecosapa-nav-item>a:hover,.ecosapa-nav-mega .ecosapa-nav-item>a:focus{background:#f6f9f8!important;transform:translateY(-1px)!important;color:#0b2935!important}
  .ecosapa-nav-mega .ecosapa-nav-label{font-size:14.5px!important;font-weight:750!important;color:inherit!important}
  .ecosapa-nav-mega .ecosapa-nav-desc{font-size:11.5px!important;font-weight:500!important;line-height:1.35!important;color:#667a82!important;white-space:normal!important}
  .ecosapa-nav-mega__intro{grid-row:1 / span 2!important;padding:14px 16px 14px 4px!important;border-right:1px solid #edf1ef!important;align-self:stretch!important}
  .ecosapa-nav-mega__intro .ecosapa-nav-eyebrow{display:block!important;margin-bottom:8px!important;font-size:10px!important;font-weight:800!important;letter-spacing:.12em!important;color:#74868d!important}
  .ecosapa-nav-mega__intro strong{display:block!important;font-size:19px!important;line-height:1.15!important;letter-spacing:-.025em!important;color:#0b2b38!important;margin-bottom:7px!important}
  .ecosapa-nav-mega__intro small{display:block!important;max-width:190px!important;font-size:12px!important;line-height:1.45!important;color:#718087!important}
  .ecosapa-nav-mega--destinations .ecosapa-nav-featured>a{border:1px solid #edf1ef!important;background:#fbfcfc!important}
  .ecosapa-nav-mega--destinations .ecosapa-nav-featured .ecosapa-nav-label{font-size:16px!important}
  .ecosapa-nav-group-title{grid-column:span 3!important;padding:6px 12px 2px!important}
  .ecosapa-nav-group-title span{font-size:10px!important;font-weight:800!important;letter-spacing:.11em!important;color:#819096!important}
  .ecosapa-nav-group-title--style{margin-top:3px!important;border-top:1px solid #edf1ef!important;padding-top:12px!important}
}

/* Keep dropdowns clean in mobile/off-canvas menus; the theme owns open/close. */
@media (max-width:991px){
  .ecosapa-nav-top>a{justify-content:space-between!important}
  .ecosapa-nav-mega{position:static!important;transform:none!important;box-shadow:none!important;border:0!important;border-radius:0!important;padding:6px 0 8px 14px!important;background:transparent!important;width:auto!important}
  .ecosapa-nav-mega li{list-style:none!important}
  .ecosapa-nav-mega__intro,.ecosapa-nav-group-title{display:none!important}
  .ecosapa-nav-mega .ecosapa-nav-item>a{display:block!important;padding:8px 0!important}
  .ecosapa-nav-mega .ecosapa-nav-label{display:block!important;font-size:14px!important;font-weight:700!important}
  .ecosapa-nav-mega .ecosapa-nav-desc{display:block!important;font-size:11px!important;line-height:1.35!important;color:#718087!important;margin-top:2px!important}
}

@media (min-width:992px){.ecosapa-nav-mega--destinations:not(.ecosapa-nav-mega--destinations-5):not(.ecosapa-nav-mega--destinations-6) .ecosapa-nav-mega__intro{grid-row:auto!important}}

/* v0.35.6 — HARD-LOCKED Ha Giang promotion in the primary navigation.
   Intentional: visible top-level discovery + a matching HOT badge inside
   Destinations. No animation/blinking; the emphasis stays premium. */
.ecosapa-nav-hot-badge{
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
  min-width:29px!important;height:18px!important;padding:0 6px!important;margin-left:6px!important;
  border-radius:999px!important;background:#ed1c24!important;color:#fff!important;
  font-size:9px!important;font-weight:900!important;line-height:18px!important;
  letter-spacing:.07em!important;text-transform:uppercase!important;vertical-align:middle!important;
  box-shadow:0 3px 10px rgba(237,28,36,.20)!important;flex:0 0 auto!important;
}
.ecosapa-nav-hagiang-hot>a{
  display:flex!important;align-items:center!important;gap:4px!important;
  color:#b42318!important;font-weight:800!important;
}
.ecosapa-nav-hagiang-hot>a:hover,.ecosapa-nav-hagiang-hot>a:focus{
  color:#ed1c24!important;
}
.ecosapa-nav-hot-badge--top{margin-left:2px!important;transform:translateY(-5px)!important}
.ecosapa-nav-hot-destination>a{
  position:relative!important;border-color:#fecaca!important;background:linear-gradient(135deg,#fff 0%,#fff7f7 100%)!important;
}
.ecosapa-nav-hot-destination>a:hover,.ecosapa-nav-hot-destination>a:focus{
  border-color:#fca5a5!important;background:#fff4f4!important;
}
.ecosapa-nav-hot-destination .ecosapa-nav-label{color:#8f1d14!important}
.ecosapa-nav-hot-destination .ecosapa-nav-hot-badge{position:absolute!important;top:10px!important;right:10px!important;margin:0!important}
.ecosapa-nav-hot-destination .ecosapa-nav-desc{padding-right:34px!important}

@media (max-width:991px){
  .ecosapa-nav-hagiang-hot>a{justify-content:flex-start!important;gap:5px!important}
  .ecosapa-nav-hot-badge--top{transform:none!important;margin-left:4px!important}
  .ecosapa-nav-hot-destination .ecosapa-nav-hot-badge{position:static!important;margin-left:6px!important;display:inline-flex!important}
  .ecosapa-nav-hot-destination .ecosapa-nav-desc{padding-right:0!important}
}
