/* Holiday Villam Shared Header V15 — ortak ve cakismayan ust menu */
.navbar.hv-shared-header{
  position:sticky!important;
  top:0!important;
  z-index:9999!important;
  width:100%!important;
  min-height:84px!important;
  margin:0!important;
  padding:12px clamp(18px,3.5vw,58px)!important;
  display:grid!important;
  grid-template-columns:minmax(135px,180px) minmax(0,1fr) 150px 190px!important;
  grid-template-areas:"logo nav search actions"!important;
  align-items:center!important;
  gap:12px!important;
  background:#fff!important;
  box-sizing:border-box!important;
  box-shadow:0 4px 18px rgba(15,23,42,.06)!important;
}

.navbar.hv-shared-header>.logo{
  grid-area:logo!important;
  min-width:0!important;
  margin:0!important;
  white-space:nowrap!important;
  font-size:clamp(25px,2vw,31px)!important;
  line-height:1!important;
  font-weight:800!important;
}

.navbar.hv-shared-header>.hv-header-search{
  grid-area:search!important;
  position:relative!important;
  width:100%!important;
  min-width:0!important;
  max-width:150px!important;
  justify-self:stretch!important;
  margin:0!important;
  padding:0!important;
  transform:none!important;
}

.hv-header-search input{
  width:100%!important;
  height:40px!important;
  padding:0 38px 0 13px!important;
  border:1px solid #d8e0e7!important;
  border-radius:11px!important;
  background:#f8fafc!important;
  color:#10283a!important;
  font:inherit!important;
  box-sizing:border-box!important;
  outline:none!important;
}
.hv-header-search-icon{position:absolute!important;right:12px!important;top:50%!important;transform:translateY(-50%)!important;pointer-events:none!important}
.hv-header-search-results{position:absolute!important;top:46px!important;right:0!important;left:auto!important;width:290px!important;max-width:min(290px,calc(100vw - 28px))!important;max-height:320px!important;overflow-x:hidden!important;overflow-y:auto!important;padding:6px!important;border:1px solid #d8e0e7!important;border-radius:12px!important;background:#fff!important;box-shadow:0 16px 36px rgba(0,0,0,.15)!important;z-index:10000!important}
.hv-header-search-results[hidden]{display:none!important}
.hv-header-search-result{display:block;padding:10px 12px;border-radius:8px;color:#10283a;text-decoration:none;font-weight:700}
.hv-header-search-result:hover{background:#f4f7f9;color:#d6aa52}
.hv-header-search-empty{padding:10px 12px;color:#667684;font-size:14px}

.navbar.hv-shared-header>nav{
  grid-area:nav!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:clamp(13px,1.35vw,22px)!important;
  min-width:0!important;
  margin:0!important;
  padding:0!important;
  position:static!important;
  transform:none!important;
  overflow:visible!important;
  white-space:nowrap!important;
}
.navbar.hv-shared-header>nav>a,
.navbar.hv-shared-header>nav>.nav-mega,
.navbar.hv-shared-header>nav>.nav-mega>a{flex:0 0 auto!important;white-space:nowrap!important;margin:0!important}
.navbar.hv-shared-header>nav>a:hover,
.navbar.hv-shared-header>nav>.nav-mega>a:hover,
.navbar.hv-shared-header>nav>a.hv-active-page{color:#d6aa52!important}

.navbar.hv-shared-header>.hv-header-actions{
  grid-area:actions!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:8px!important;
  width:190px!important;
  min-width:190px!important;
  margin:0!important;
  padding:0!important;
  position:static!important;
  transform:none!important;
  visibility:visible!important;
  opacity:1!important;
  white-space:nowrap!important;
}
.hv-language{position:relative!important;display:block!important;flex:0 0 auto!important}
.hv-language-button,
.navbar.hv-shared-header>.hv-header-actions>.currency-selector{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  height:40px!important;
  min-height:40px!important;
  margin:0!important;
  border:1px solid #d8e0e7!important;
  border-radius:10px!important;
  background:#fff!important;
  color:#101820!important;
  font:inherit!important;
  font-weight:700!important;
  box-sizing:border-box!important;
  visibility:visible!important;
  opacity:1!important;
}
.hv-language-button{width:82px!important;min-width:82px!important;padding:0 9px!important;gap:6px!important;cursor:pointer!important}
.navbar.hv-shared-header>.hv-header-actions>.currency-selector{width:100px!important;min-width:100px!important;padding:0 8px!important;appearance:auto!important}
.hv-language-flag,.hv-language-option svg{width:20px;height:14px;border-radius:2px;box-shadow:0 0 0 1px rgba(0,0,0,.12);flex:0 0 auto}
.hv-language-chevron{width:7px;height:7px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg) translateY(-2px);margin-left:1px}
.hv-language-menu{position:absolute!important;top:46px!important;right:0!important;min-width:145px!important;padding:6px!important;border:1px solid #d8e0e7!important;border-radius:11px!important;background:#fff!important;box-shadow:0 14px 34px rgba(0,0,0,.14)!important;z-index:10000!important}
.hv-language-menu[hidden]{display:none!important}
.hv-language-option{width:100%;border:0;background:transparent;padding:9px 10px;border-radius:8px;display:flex;align-items:center;gap:9px;color:#10283a;font:inherit;cursor:pointer}
.hv-language-option:hover,.hv-language-option.active{background:#f4f7f9;color:#b5892d}

/* Normal desktop and compact laptop: always one line. */
@media(min-width:801px) and (max-width:1180px){
  .navbar.hv-shared-header{
    padding-left:18px!important;
    padding-right:18px!important;
    grid-template-columns:145px minmax(0,1fr) 125px 174px!important;
    gap:8px!important;
  }
  .navbar.hv-shared-header>.logo{font-size:24px!important}
  .navbar.hv-shared-header>.hv-header-search{width:100%!important;min-width:0!important;max-width:125px!important}
  .navbar.hv-shared-header>nav{gap:11px!important;font-size:14px!important}
  .navbar.hv-shared-header>.hv-header-actions{width:174px!important;min-width:174px!important;gap:6px!important}
  .hv-language-button{width:74px!important;min-width:74px!important}
  .navbar.hv-shared-header>.hv-header-actions>.currency-selector{width:94px!important;min-width:94px!important}
}

/* Mobile/tablet menu begins only when the desktop row truly cannot fit. */
@media(max-width:800px){
  .navbar.hv-shared-header{
    grid-template-columns:minmax(0,1fr) auto auto!important;
    grid-template-areas:"logo actions actions" "search socials toggle" "nav nav nav"!important;
    min-height:auto!important;
    padding:11px 14px!important;
    gap:9px!important;
  }
  .navbar.hv-shared-header>.logo{font-size:22px!important}
  .navbar.hv-shared-header>.hv-header-search{width:100%!important;min-width:0!important}
  .navbar.hv-shared-header>.hv-header-search{max-width:none!important}
  .navbar.hv-shared-header>.hv-header-actions{width:auto!important;min-width:0!important;gap:6px!important}
  .hv-language-button{width:68px!important;min-width:68px!important}
  .navbar.hv-shared-header>.hv-header-actions>.currency-selector{width:84px!important;min-width:84px!important}
  .navbar.hv-shared-header>nav{display:none!important;flex-direction:column!important;align-items:stretch!important;justify-content:flex-start!important;gap:5px!important;width:100%!important;padding:8px 0!important}
  .navbar.hv-shared-header.hv-mobile-menu-open>nav{display:flex!important}
  .navbar.hv-shared-header>nav>a,
  .navbar.hv-shared-header>nav>.nav-mega,
  .navbar.hv-shared-header>nav>.nav-mega>a{width:100%!important;box-sizing:border-box!important}
  .hv-mobile-socials{grid-area:socials!important;display:flex!important;align-items:center!important;justify-content:center!important;gap:0!important;width:68px!important;height:40px!important;margin:0!important;padding:3px!important;border:1px solid #dbe3e8!important;border-radius:10px!important;background:#fff!important;box-sizing:border-box!important}
  .hv-mobile-social{display:flex!important;align-items:center!important;justify-content:center!important;width:30px!important;height:32px!important;min-width:30px!important;margin:0!important;padding:0!important;border:0!important;border-radius:7px!important;background:transparent!important;text-decoration:none!important;box-shadow:none!important}
  .hv-mobile-social+.hv-mobile-social{border-left:1px solid #e7ebef!important;border-radius:0 7px 7px 0!important}
  .hv-mobile-social[hidden]{display:none!important}
  .hv-mobile-social svg{width:19px!important;height:19px!important;fill:none!important;stroke:currentColor!important;stroke-width:1.8!important}
  .hv-mobile-social svg .dot{fill:currentColor!important;stroke:none!important}
  .hv-mobile-social.hv-instagram{color:#c13584!important}
  .hv-mobile-social.hv-facebook{color:#1877f2!important}
  .hv-mobile-social.hv-facebook svg{fill:currentColor!important;stroke:none!important}
  .hv-mobile-social:active{background:#f2f5f7!important}
  .hv-mobile-share-button{display:flex!important;align-items:center!important;gap:9px!important;width:100%!important;padding:12px 14px!important;border:0!important;border-radius:9px!important;background:#f3f6f8!important;color:#173f53!important;font:inherit!important;font-weight:700!important;text-align:left!important;cursor:pointer!important}
  .hv-mobile-menu-toggle,
  .hv-mobile-menu-btn{
    grid-area:toggle!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:40px!important;
    height:40px!important;
    min-width:40px!important;
    margin:0!important;
  }
}

@media(min-width:801px){
  .hv-mobile-menu-toggle,.hv-mobile-socials,.hv-mobile-share-button{display:none!important}
}
/* Villa arama sonuçları */
.hv-header-search-results{
    box-sizing:border-box;
    padding:0 !important;
    overflow-x:hidden!important;
    overflow-y:auto!important;
}

.hv-header-search-result{
    display:flex;
    align-items:center;
    min-height:42px;
    padding:10px 14px !important;
    margin:0 !important;
    box-sizing:border-box;
    width:100%!important;
    max-width:100%!important;
    white-space:normal!important;
    overflow-wrap:anywhere!important;
}

/* V16: Logo, merkez menu ve sag araclar birbirinden bagimsizdir. */
@media(min-width:1301px){
  .navbar.hv-shared-header{
    grid-template-columns:minmax(160px,1fr) 150px 190px!important;
    grid-template-areas:"logo search actions"!important;
    column-gap:12px!important;
  }
  .navbar.hv-shared-header>nav{
    position:absolute!important;
    left:50%!important;
    top:50%!important;
    transform:translate(-50%,-50%)!important;
    width:max-content!important;
    max-width:calc(100% - 700px)!important;
    justify-content:center!important;
  }
}

/* Daha dar bilgisayarlarda cakisma yerine duzenli ikinci satir acilir. */
@media(min-width:801px) and (max-width:1300px){
  .navbar.hv-shared-header{
    grid-template-columns:minmax(140px,1fr) 150px 190px!important;
    grid-template-areas:"logo search actions" "nav nav nav"!important;
    min-height:126px!important;
    row-gap:9px!important;
  }
  .navbar.hv-shared-header>nav{
    position:static!important;
    transform:none!important;
    width:100%!important;
    justify-content:center!important;
    gap:clamp(12px,2vw,24px)!important;
    font-size:15px!important;
  }
  .navbar.hv-shared-header>.hv-header-search{
    max-width:150px!important;
  }
  .navbar.hv-shared-header>.hv-header-actions{
    width:190px!important;
    min-width:190px!important;
  }
}

/* Logo degisse de kendisine ayrilan alandan disari tasmaz. */
.navbar.hv-shared-header>.logo{
  display:flex!important;
  align-items:center!important;
  max-width:190px!important;
  min-width:0!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
.navbar.hv-shared-header>.logo img,
.navbar.hv-shared-header>.logo .hv-brand-image{
  display:block!important;
  width:auto!important;
  height:auto!important;
  max-width:100%!important;
  max-height:52px!important;
  object-fit:contain!important;
  object-position:left center!important;
}

@media(max-width:800px){
  .navbar.hv-shared-header>.logo{max-width:100%!important}
}

/* V17: Villa arama listesi, sonuc yazisinin uzunluguna gore boyutlanir. */
.navbar.hv-shared-header>.hv-header-search>.hv-header-search-results{
  width:max-content!important;
  min-width:100%!important;
  max-width:min(320px,calc(100vw - 28px))!important;
  right:0!important;
  left:auto!important;
}
.navbar.hv-shared-header .hv-header-search-result,
.navbar.hv-shared-header .hv-header-search-empty{
  width:auto!important;
  min-width:100%!important;
  max-width:320px!important;
  white-space:nowrap!important;
}
@media(max-width:420px){
  .navbar.hv-shared-header .hv-header-search-result,
  .navbar.hv-shared-header .hv-header-search-empty{
    white-space:normal!important;
    overflow-wrap:anywhere!important;
  }
}
