/* Full site navigation */
.nav-wrapper,.nav-wrapper *{box-sizing:border-box;}
.nav-wrapper *{margin:0;padding:0;}

    .nav-wrapper{
  --gold:#d89b2b;
  --gold-soft:#f5f1e8;
  --dark:#111827;
  --text:#111827;
  --muted:#667085;
  --line:#ececec;
  --panel:#f7f7f5;
  --shadow:0 18px 40px rgba(0,0,0,0.08);
}
.nav-wrapper a{text-decoration:none;color:inherit;}

    .nav-wrapper{
      width:100%;
      position:fixed !important;
      top:0;
      left:0;
      right:0;
      z-index:999999999 !important;
      overflow:visible !important;
      transform:translateZ(0);
    }

    .main-nav{
      width:100%;
      background:rgba(255,255,255,.97);
      border-bottom:1px solid rgba(17,24,39,.08);
      padding:0 18px;
      position:relative;
      z-index:999999999 !important;
      overflow:visible !important;
      backdrop-filter:blur(14px);
      transition:background .3s ease,box-shadow .3s ease,border-color .3s ease;
    }

    .main-nav:hover,
    .main-nav:has(.nav-item.open){
      background:rgba(255,255,255,.98) !important;
      box-shadow:0 10px 28px rgba(17,24,39,.08);
    }

    .main-nav-inner{
      max-width:1180px;
      margin:0 auto;
      display:flex;
      align-items:center;
      justify-content:space-between;
      min-height:65px;
      gap:18px;
      position:relative;
      overflow:visible !important;
      transition:min-height .25s ease;
    }

    .logo img{width:110px;height:auto;display:block;transition:width .25s ease;}

    .nav-wrapper.scrolled .main-nav{
      background:rgba(255,255,255,.97) !important;
      border-bottom:1px solid rgba(17,24,39,.08);
      box-shadow:0 10px 28px rgba(17,24,39,.1);
      backdrop-filter:blur(14px);
    }

    .nav-wrapper.scrolled .main-nav-inner{
      min-height:54px;
    }

    .nav-wrapper.scrolled .logo img{
      width:86px;
    }

    .nav-menu{
      display:flex;
      align-items:center;
      gap:18px;
      list-style:none;
      justify-content:center;
      width:100%;
    }

    .nav-item{position:static;}

    .nav-link{
      display:flex;
      align-items:center;
      gap:6px;
      padding:14px 12px;
      font-size:13px;
      font-weight:800;
      text-transform:uppercase;
      letter-spacing:.7px;
      color:#111827;
      transition:color .25s ease,background .25s ease;
      cursor:pointer;
      white-space:nowrap;
      line-height:1;
      user-select:none;
      border-radius:10px;
    }

    .nav-item.open .nav-link{color:var(--gold);background:#f3f3f3;}
    .nav-link:hover{color:var(--gold);}
    .arrow{font-size:10px;transition:transform .3s ease;}
    .nav-item.open .arrow{transform:rotate(180deg);}

    .mega-menu{
      position:absolute !important;
      top:100%;
      left:50%;
      transform:translateX(-50%) translateY(20px);
      width:min(1120px,calc(100vw - 20px));
      background:#ffffff;
      border:1px solid #ececec;
      border-radius:0 0 24px 24px;
      box-shadow:var(--shadow);
      padding:22px 22px 24px;
      opacity:0;
      visibility:hidden;
      pointer-events:none;
      transition:opacity .15s ease,transform .15s ease,visibility .15s ease;
      z-index:999999999 !important;
      overflow:visible !important;
    }

    .nav-item:hover .mega-menu,
    .nav-item.open .mega-menu{
      opacity:1;
      visibility:visible;
      pointer-events:auto;
      transform:translateX(-50%) translateY(0);
    }

    .mega-menu::before{
      content:"";
      position:absolute;
      top:-18px;
      left:0;
      width:100%;
      height:18px;
    }

    .mega-inner{display:grid;grid-template-columns:1fr 1fr 340px;gap:28px;align-items:start;}
    .mega-col{min-width:0;}
    .mega-col.with-divider{padding-right:24px;border-right:1px solid var(--line);}
    .mega-title{font-size:12px;font-weight:800;letter-spacing:1px;text-transform:uppercase;color:#64748b;margin-bottom:18px;}
    .mega-list{display:flex;flex-direction:column;gap:8px;}
    .mega-item{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;padding:12px 14px;border-radius:14px;transition:background .22s ease;cursor:pointer;}
    .mega-item:hover,.mega-item.active{background:var(--gold-soft);}
    .mega-item-name{font-size:16px;font-weight:500;line-height:1.2;color:#111827;margin-bottom:6px;}
    .mega-item-sub{font-size:13px;line-height:1.35;color:var(--muted);}
    .mega-item-arrow{font-size:20px;color:#71717a;line-height:1;padding-top:2px;flex-shrink:0;}

    .preview-card{position:relative;height:366px;border-radius:18px;overflow:hidden;background:#ddd;align-self:stretch;}
    .preview-image{width:100%;height:100%;object-fit:cover;display:block;transition:opacity .35s ease,transform .35s ease;}
    .preview-overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.72),rgba(0,0,0,.18) 46%,rgba(0,0,0,.03));}
    .preview-content{position:absolute;left:0;right:0;bottom:0;z-index:2;padding:22px;color:#fff;}
    .preview-content h3{font-size:18px;line-height:1.2;margin-bottom:8px;font-weight:800;color:#fff;}
    .preview-content p{font-size:13px;line-height:1.45;color:rgba(255,255,255,.92);margin-bottom:16px;}
    .preview-link{display:inline-flex;align-items:center;gap:8px;color:#f4b43a;font-size:14px;font-weight:800;}
    .preview-link .arr{font-size:18px;line-height:1;}

    .language-switcher{position:relative;display:flex;align-items:center;gap:0;flex-shrink:0;}
    .language-switcher label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;}
    .language-button{width:42px;height:42px;border:1px solid #e5e7eb;border-radius:50%;background:#fff;padding:4px;cursor:pointer;outline:none;box-shadow:0 8px 22px rgba(0,0,0,.06);}
    .language-button:focus{border-color:var(--gold);box-shadow:0 0 0 3px rgba(216,155,43,.18);}
    .language-button img,.language-option img{width:100%;height:100%;border-radius:50%;object-fit:cover;display:block;}
    .language-options{position:absolute;top:calc(100% + 10px);right:0;display:grid;grid-template-columns:repeat(6,36px);gap:8px;padding:10px;border:1px solid #ececec;border-radius:18px;background:#fff;box-shadow:var(--shadow);opacity:0;visibility:hidden;pointer-events:none;transform:translateY(8px);transition:opacity .16s ease,transform .16s ease,visibility .16s ease;z-index:999999999;}
    .language-switcher.open .language-options{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0);}
    .language-option{width:36px;height:36px;border:1px solid #e5e7eb;border-radius:50%;background:#fff;padding:3px;cursor:pointer;}
    .language-option:hover,.language-option.active{border-color:var(--gold);box-shadow:0 0 0 3px rgba(216,155,43,.14);}

    .menu-toggle{display:none;flex-direction:column;gap:4px;cursor:pointer;flex-shrink:0;position:absolute;right:0;}
    .menu-toggle span{width:20px;height:3px;background:#111827;border-radius:20px;}

    .mobile-menu{display:none;background:#fff;border-top:1px solid #eee;padding:12px 16px 18px;}
    .mobile-language{display:none;padding:4px 0 12px;border-bottom:1px solid #f1f5f9;margin-bottom:4px;}
    .mobile-language .language-switcher{display:block;}
    .mobile-language .language-button{width:46px;height:46px;}
    .mobile-language .language-options{position:static;display:flex;visibility:visible;opacity:1;pointer-events:auto;transform:none;box-shadow:none;border:none;border-radius:0;padding:0;margin-top:10px;background:transparent;}
    .mobile-item{border-bottom:1px solid #f1f5f9;}
    .mobile-header{width:100%;display:flex;justify-content:space-between;align-items:center;padding:14px 0;font-size:13px;font-weight:700;background:none;border:none;color:#111827;cursor:pointer;text-transform:uppercase;}
    .mobile-submenu{display:none;padding:0 0 12px 0;}
    .mobile-submenu a{display:block;padding:7px 0;color:#475569;font-size:13px;}

    .hero-section{display:none;}

    @media(max-width:1024px){
      .nav-menu{display:none;}
      .language-switcher{display:none;}
      .mobile-language{display:block;}
      .menu-toggle{display:flex;}
      .mobile-menu.active{display:block;}
      .main-nav{padding:0 14px;}
      .main-nav-inner{min-height:50px;}
      .mega-menu{display:none;}
      .logo img{width:90px;}
      .nav-wrapper.scrolled .main-nav-inner{min-height:46px;}
      .nav-wrapper.scrolled .logo img{width:78px;}
    }

/* Footer */
.site-footer{
  position:relative;
  background:
    linear-gradient(rgba(14,18,14,.94),rgba(14,18,14,.96)),
    url('https://static.wixstatic.com/media/26acfb_bed523b5575146e7afca4d66a669a2e6~mv2.jpg') center/cover no-repeat;
  color:#ffffff;
  overflow:hidden;
  margin-top:80px;
}

.site-footer,
.site-footer *{
  box-sizing:border-box;
}

.site-footer a{
  text-decoration:none;
  overflow-wrap:anywhere;
}

.footer-overlay{
  position:absolute;
  inset:0;
  background:
    radial-gradient(circle at top right, rgba(138,90,54,.18), transparent 35%);
  pointer-events:none;
}

.footer-container{
  position:relative;
  z-index:2;
  width:min(1180px, 100%);
  margin:auto;
  padding:clamp(48px, 8vw, 80px) clamp(18px, 4vw, 40px) clamp(36px, 6vw, 60px);
  display:grid;
  grid-template-columns:minmax(260px, 1.35fr) repeat(3, minmax(170px, 1fr));
  gap:clamp(28px, 4vw, 48px);
}

.footer-logo-wrap{
  display:flex;
  align-items:center;
  gap:14px;
  margin-bottom:24px;
  min-width:0;
}

.footer-logo-link{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  flex:0 0 auto;
}

.footer-logo-img{
  width:clamp(74px, 10vw, 116px);
  max-height:76px;
  display:block;
  object-fit:contain;
}

.footer-logo-title{
  font-size:clamp(19px, 2vw, 22px);
  font-weight:900;
  line-height:1.15;
}

.footer-logo-sub{
  color:rgba(255,255,255,.7);
  font-size:14px;
  line-height:1.45;
  margin-top:4px;
}

.footer-about{
  color:rgba(255,255,255,.74);
  line-height:1.8;
  margin-bottom:24px;
  max-width:420px;
}

.footer-socials{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
}

.footer-socials a{
  min-height:40px;
  padding:0 16px;
  border-radius:999px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.1);
  color:#fff;
  font-size:14px;
  transition:.2s ease;
}

.footer-socials a:hover{
  background:#8a5a36;
  border-color:#8a5a36;
}

.footer-title{
  margin:0 0 22px;
  font-size:18px;
  font-weight:900;
  color:#fff7ee;
}

.footer-links{
  display:grid;
  gap:14px;
}

.footer-links a{
  color:rgba(255,255,255,.72);
  transition:.18s ease;
}

.footer-links a:hover{
  color:#ffffff;
  transform:translateX(3px);
}

.footer-contact{
  display:grid;
  gap:14px;
  margin-bottom:24px;
}

.footer-contact-item{
  color:rgba(255,255,255,.75);
  line-height:1.6;
}

.footer-whatsapp{
  min-height:48px;
  padding:0 20px;
  border-radius:8px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  background:#8a5a36;
  color:#fff7ee;
  font-weight:800;
  transition:.2s ease;
}

.footer-whatsapp:hover{
  transform:translateY(-2px);
}

.footer-bottom{
  position:relative;
  z-index:2;
  border-top:1px solid rgba(255,255,255,.08);
}

.footer-bottom-container{
  width:min(1180px, 100%);
  margin:auto;
  min-height:76px;
  padding:0 clamp(18px, 4vw, 40px);
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:20px;
  color:rgba(255,255,255,.62);
  font-size:14px;
}

.footer-bottom-links{
  display:flex;
  gap:20px;
  flex-wrap:wrap;
}

.footer-bottom-links a{
  color:rgba(255,255,255,.62);
}

.footer-bottom-links a:hover{
  color:#ffffff;
}

@media(max-width:980px){

  .footer-container{
    grid-template-columns:1fr 1fr;
  }

  .footer-brand{
    grid-column:1 / -1;
  }

}

@media(max-width:680px){

  .footer-container{
    grid-template-columns:1fr;
    gap:34px;
    padding:52px 18px 38px;
  }

  .footer-logo-wrap{
    align-items:flex-start;
  }

  .footer-logo-img{
    width:78px;
    max-height:64px;
  }

  .footer-title{
    margin-bottom:16px;
  }

  .footer-links{
    gap:12px;
  }

  .footer-bottom-container{
    width:100%;
    flex-direction:column;
    justify-content:center;
    text-align:center;
    padding:20px 18px;
  }

  .footer-bottom-links{
    justify-content:center;
    gap:14px 18px;
  }

}

@media(max-width:420px){

  .footer-logo-wrap{
    flex-direction:column;
    gap:12px;
  }

  .footer-logo-img{
    width:92px;
  }

  .footer-socials a,
  .footer-whatsapp{
    width:100%;
  }

}

@media(max-width:1200px){.instagram-grid{grid-template-columns:repeat(4,1fr);}}
@media(max-width:1080px){.hotels-heading h2{font-size:46px}.hotel-card{grid-template-columns:1fr}.hotel-image{height:260px}}
@media(max-width:900px){.instagram-grid{grid-template-columns:repeat(3,1fr);}.hotels-heading,.hotels-grid,.gallery-heading{grid-template-columns:1fr;}.hotels-grid{gap:22px;}.hotels-heading h2{font-size:40px;}.gallery-heading{display:grid;}.gallery-heading h3{font-size:32px;}.gallery-item{flex-basis:calc((100% - 14px) / 2);height:260px;}}
@media(max-width:600px){.instagram-section{padding:40px 10px;}.instagram-grid{display:flex;overflow-x:auto;gap:8px;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;padding-bottom:8px;}.instagram-grid::-webkit-scrollbar{display:none;}.instagram-card{min-width:120px;max-width:120px;height:120px;flex-shrink:0;scroll-snap-align:start;border-radius:12px;}.instagram-title{font-size:22px;}.instagram-line{margin:0 auto 25px;}.instagram-icon{width:20px;height:20px;right:6px;bottom:6px;border-radius:6px;}.instagram-icon img{width:10px;height:10px;}.instagram-button{margin-top:20px;padding:8px 16px;font-size:12px;}.review-card{width:190px;min-height:200px;max-height:240px;padding:14px;}.review-track{gap:10px;}.review-scroll-horizontal .avatar{width:38px;height:38px;font-size:14px;}.review-scroll-horizontal .name{font-size:13px;}.review-scroll-horizontal .country{font-size:11px;}.review-scroll-horizontal .review-text{font-size:13px;line-height:1.5;}}
@media(max-width:620px){.hotels-section{padding:58px 14px;}.hotels-heading{gap:16px;margin-bottom:28px;}.hotels-heading h2{font-size:34px;line-height:1.08;}.hotels-heading p,.gallery-heading p{font-size:14px;line-height:1.65;}.hotels-grid{margin-bottom:46px;}.hotel-content{padding:22px;}.hotel-content h3{font-size:24px;}.gallery-item{flex:0 0 100%;height:220px;}}
@media(max-width:420px){.hotels-section{padding:48px 12px;}.hotels-heading h2{font-size:30px;}.hotels-eyebrow,.hotel-location{font-size:11px;}.hotel-image{height:220px;}.hotel-content{padding:20px;}.hotel-content h3{font-size:23px;}.hotel-link{width:100%;}.gallery-item{height:200px;}}

/* Shared shell overrides for pages generated from older templates */
html,
body {
  margin: 0 !important;
  padding: 0 !important;
  min-height: 0 !important;
  height: auto !important;
  overflow-x: hidden !important;
}

.nav-wrapper {
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

@media (min-width: 1025px) {
  .nav-wrapper.shell-hover-ready .nav-item:hover:not(.shell-open) .mega-menu,
  .nav-wrapper.shell-hover-ready .nav-item.open:not(.shell-open) .mega-menu {
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
    transform: translateX(-50%) translateY(18px) !important;
  }

  .nav-wrapper.shell-hover-ready .nav-item.shell-open .mega-menu {
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
    transform: translateX(-50%) translateY(0) !important;
    transition-delay: 0s !important;
  }

  .nav-wrapper.shell-hover-ready .nav-item.shell-open .nav-link {
    color: var(--gold);
    background: #f3f3f3;
  }

  .nav-wrapper.shell-hover-ready .nav-item.shell-open .arrow {
    transform: rotate(180deg);
  }

  .nav-wrapper .mega-menu {
    transition: opacity .11s ease, transform .11s ease, visibility .11s ease !important;
  }

  .nav-wrapper .mega-menu::before {
    top: -34px;
    height: 34px;
  }
}

.nav-wrapper .mobile-submenu.is-open {
  display: block !important;
}

.nav-wrapper .mobile-header[aria-expanded="true"] + .mobile-submenu {
  display: block !important;
}

.nav-wrapper .mobile-menu.active,
.nav-wrapper.mobile-open .mobile-menu {
  display: block !important;
}

#google_translate_element,
.goog-te-gadget,
.goog-te-combo,
.goog-logo-link,
.goog-te-banner-frame,
iframe.goog-te-banner-frame {
  display: none !important;
  visibility: hidden !important;
}

body {
  top: 0 !important;
}

.site-footer {
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  margin-top: 40px !important;
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
}

.footer-bottom,
.footer-bottom-container {
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
}

@media (max-width: 1024px) {
  .nav-wrapper .mobile-menu {
    max-height: calc(100vh - 50px);
    overflow-y: auto;
  }
}
