@import url('./travel-mobile-menu-base.css?v=20260820-8');

/* EnFavori Seyahat — mobil son katman */
@media (max-width:767.98px){
  /* Header */
  html body .site-header,
  html body.is-travel-home header.site-header,
  html body.is-hotels-index header.site-header,
  html body.is-hotel-detail header.site-header,
  html body.is-travel-page header.site-header{
    margin:0!important;
  }

  html body .site-header .header-row{
    padding-left:10px!important;
    padding-right:10px!important;
    gap:0!important;
  }

  html body .site-header .brand{
    flex:1 1 auto!important;
    min-width:0!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    gap:7px!important;
    margin:0!important;
    padding:0!important;
    overflow:visible!important;
  }

  html body .site-header .brand-logo{
    display:block!important;
    flex:0 1 auto!important;
    width:auto!important;
    height:auto!important;
    max-width:clamp(125px,34vw,155px)!important;
    max-height:30px!important;
    margin:0!important;
    padding:0!important;
    object-fit:contain!important;
    object-position:left center!important;
    filter:brightness(0) invert(1)!important;
  }

  html body .site-header .brand-divider{
    display:block!important;
    flex:0 0 1px!important;
    width:1px!important;
    height:23px!important;
    margin:0 2px!important;
    padding:0!important;
    background:rgba(255,255,255,.38)!important;
  }

  html body .site-header .brand-section{
    display:block!important;
    flex:0 0 auto!important;
    margin:0!important;
    padding:0!important;
    color:#fff!important;
    font-size:12.5px!important;
    line-height:1!important;
    font-weight:850!important;
    letter-spacing:.01em!important;
    white-space:nowrap!important;
  }

  html body .site-header .header-actions{
    flex:0 0 auto!important;
    margin:0!important;
    padding:0!important;
    gap:7px!important;
  }

  html body .site-header .account-link{
    position:relative!important;
    flex:0 0 38px!important;
    width:38px!important;
    min-width:38px!important;
    height:38px!important;
    min-height:38px!important;
    margin:0!important;
    padding:0!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    overflow:hidden!important;
    text-align:center!important;
    line-height:0!important;
  }

  html body .site-header .account-link::after{
    content:none!important;
    display:none!important;
  }

  html body .site-header .account-link::before{
    content:""!important;
    position:absolute!important;
    top:50%!important;
    left:50%!important;
    width:17px!important;
    height:17px!important;
    margin:0!important;
    transform:translate(-50%,-50%)!important;
  }

  html body .site-header .mobile-menu-button{
    position:relative!important;
    flex:0 0 38px!important;
    width:38px!important;
    min-width:38px!important;
    height:38px!important;
    min-height:38px!important;
    margin:0 0 0 7px!important;
    padding:0!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    line-height:0!important;
  }

  html body .site-header .mobile-menu-button::after{
    position:absolute!important;
    top:50%!important;
    left:50%!important;
    margin:0!important;
    transform:translate(-50%,-50%)!important;
  }

  /* Ana sayfa: hero içinde tekrar marka yok */
  html body.is-travel-home main,
  html body.is-travel-home main > .ef-home,
  html body.is-travel-home .ef-home,
  html body.is-travel-home .ef-hero{
    margin-top:0!important;
    padding-top:0!important;
  }

  html body.is-travel-home .ef-hero-brand,
  html body.is-travel-home .ef-hero-brand img,
  html body.is-travel-home .ef-hero-brand b{
    display:none!important;
    visibility:hidden!important;
    opacity:0!important;
    width:0!important;
    height:0!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    overflow:hidden!important;
    pointer-events:none!important;
  }

  html body.is-travel-home .ef-hero-inner{padding-top:0!important;}
  html body.is-travel-home .ef-hero-copy{margin-top:0!important;padding-top:120px!important;}

  /* Oteller: masaüstündeki gerçek arama akışı mobilde de aktif */
  html body.is-hotels-index .hotel-search-hero{
    display:block!important;
    margin:0!important;
    padding:16px 0 14px!important;
    background:#102844!important;
  }

  html body.is-hotels-index .hotel-search-hero > .shell{
    width:calc(100% - 24px)!important;
    max-width:none!important;
    margin:0 auto!important;
    padding:0!important;
  }

  html body.is-hotels-index .hotel-search-hero .page-hero-copy{
    display:block!important;
    max-width:none!important;
    margin:0 0 12px!important;
  }

  html body.is-hotels-index .hotel-search-hero .eyebrow{
    display:block!important;
    margin:0 0 5px!important;
    color:#18d2c3!important;
    font-size:9px!important;
    font-weight:900!important;
    letter-spacing:.08em!important;
  }

  html body.is-hotels-index .hotel-search-hero h1{
    margin:0!important;
    color:#fff!important;
    font-size:27px!important;
    line-height:1.05!important;
    letter-spacing:-.8px!important;
  }

  html body.is-hotels-index .hotel-search-hero .page-hero-copy p{
    margin:6px 0 0!important;
    color:rgba(255,255,255,.82)!important;
    font-size:11.5px!important;
    line-height:1.35!important;
  }

  html body.is-hotels-index .hotel-search-bar{
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:7px!important;
    width:100%!important;
    margin:0!important;
    padding:8px!important;
    border-radius:16px!important;
    background:#fff!important;
    box-shadow:none!important;
  }

  html body.is-hotels-index .hotel-search-bar .field{
    min-width:0!important;
    min-height:54px!important;
    margin:0!important;
    padding:8px 10px!important;
    border:1px solid #dfe6ed!important;
    border-radius:11px!important;
    background:#fff!important;
  }

  html body.is-hotels-index .hotel-search-bar .field > span{
    display:block!important;
    margin:0 0 3px!important;
    color:#8995a5!important;
    font-size:8px!important;
    line-height:1!important;
    font-weight:850!important;
    text-transform:uppercase!important;
    letter-spacing:.04em!important;
  }

  html body.is-hotels-index .hotel-search-bar .field input,
  html body.is-hotels-index .hotel-search-bar .field select{
    width:100%!important;
    min-width:0!important;
    height:25px!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    outline:0!important;
    background:transparent!important;
    color:#17263b!important;
    font-size:12px!important;
    font-weight:750!important;
  }

  html body.is-hotels-index .hotel-search-bar .hotel-destination-field{grid-column:1/-1!important;}

  html body.is-hotels-index .hotel-search-bar .search-button{
    grid-column:1/-1!important;
    width:100%!important;
    min-width:0!important;
    min-height:48px!important;
    margin:0!important;
    padding:0 14px!important;
    border:0!important;
    border-radius:11px!important;
    background:#ff7518!important;
    color:#fff!important;
    box-shadow:none!important;
    font-size:13px!important;
    font-weight:900!important;
  }

  /* Arama yapılmadan önce tekrarlanan açıklama kartı görünmesin */
  html body.is-hotels-index .hotel-results-shell:has(.hotel-start-state){
    display:none!important;
    margin:0!important;
    padding:0!important;
  }

  html body.is-hotels-index .hotel-results-shell:not(:has(.hotel-start-state)){
    padding-top:12px!important;
    padding-bottom:14px!important;
  }

  /* Footer kompakt */
  html body > .hm-footer-container{
    width:100%!important;
    min-height:0!important;
    height:auto!important;
    margin:0!important;
    padding-bottom:0!important;
    flex:none!important;
  }

  html body .hm-page-footer,
  html body .hm-footer-main,
  html body .hm-footer-bottom{
    min-height:0!important;
    height:auto!important;
  }

  html body .hm-footer-main{padding:10px 14px 0!important;}
  html body .hm-footer-brand-column{padding-bottom:4px!important;margin-bottom:0!important;}
  html body .hm-footer-logo{max-width:165px!important;max-height:30px!important;}
  html body .hm-footer-description{font-size:10.5px!important;line-height:1.25!important;}
  html body .hm-footer-socials,
  html body .hm-footer-share-area{margin-top:6px!important;}
  html body .hm-footer-social-link{width:34px!important;height:34px!important;min-height:34px!important;flex-basis:34px!important;}
  html body .hm-footer-share-button{height:34px!important;min-height:34px!important;}
  html body .hm-footer-menu-seyahat{margin-top:6px!important;}
  html body .hm-footer-accordion-button,
  html body .hm-footer-menu-column.is-active .hm-footer-accordion-button{height:44px!important;min-height:44px!important;}
  html body .hm-footer-app-icon{width:25px!important;height:25px!important;}
  html body .hm-footer-bottom{margin-top:0!important;}
  html body .hm-footer-copyright{min-height:40px!important;padding:8px 10px!important;font-size:11px!important;line-height:1.35!important;}

  /* /oteller ilk ekranı artık flex/100vh ile zorlanmıyor. */
  html body.is-hotels-index,
  html body.is-hotels-index:has(.hotel-start-state){
    min-height:0!important;
    height:auto!important;
    display:block!important;
    margin:0!important;
    padding-bottom:0!important;
    background:#f6f8fb!important;
  }

  html body.is-hotels-index > main,
  html body.is-hotels-index:has(.hotel-start-state) > main{
    min-height:0!important;
    height:auto!important;
    display:block!important;
    flex:none!important;
    margin:0!important;
    padding-bottom:0!important;
  }

  html body.is-hotels-index > .hm-footer-container,
  html body.is-hotels-index:has(.hotel-start-state) > .hm-footer-container{
    min-height:0!important;
    height:auto!important;
    margin:0!important;
    margin-top:0!important;
    margin-bottom:0!important;
    padding-bottom:0!important;
    flex:none!important;
  }
}

@media (max-width:360px){
  html body .site-header .brand{gap:5px!important;}
  html body .site-header .brand-logo{max-width:118px!important;max-height:27px!important;}
  html body .site-header .brand-divider{height:21px!important;margin-left:1px!important;margin-right:1px!important;}
  html body .site-header .brand-section{font-size:11.5px!important;}
  html body .site-header .account-link,
  html body .site-header .mobile-menu-button{flex-basis:36px!important;width:36px!important;min-width:36px!important;height:36px!important;min-height:36px!important;}
  html body.is-travel-home .ef-hero-copy{padding-top:112px!important;}
}

/* Sayfa doğal içerik yüksekliğinde biter */
html{
  min-height:0!important;
  height:auto!important;
  background:#f6f8fb!important;
}

html body{
  min-height:0!important;
  height:auto!important;
  display:block!important;
  background:#f6f8fb!important;
}

html body > main{
  width:100%!important;
  min-height:0!important;
  height:auto!important;
  display:block!important;
  flex:none!important;
  margin:0!important;
  padding-bottom:0!important;
}

html body > .hm-footer-container{
  min-height:0!important;
  height:auto!important;
  margin:0!important;
  flex:none!important;
}

/*
 * Mobil yatay sayfa taşma düzeltmesi
 * - Kapalı drawer artık viewport dışına translate edilmez.
 * - Ana sayfadaki 100vw tam-bleed pseudo eleman yatay scroll üretmez.
 * - Root yalnız dikey sayfa scroll'u üretir.
 */
@media (max-width:767.98px){
  html,
  html body{
    width:100%!important;
    max-width:100%!important;
    margin-left:0!important;
    margin-right:0!important;
    overflow-x:hidden!important;
    overscroll-behavior-x:none!important;
  }

  html body.is-travel-home .ef-search-wrap::before{
    left:0!important;
    right:0!important;
    width:100%!important;
    transform:none!important;
  }

  html body .site-header .desktop-nav{
    right:0!important;
    left:auto!important;
    transform:none!important;
    clip-path:inset(0 0 0 100%)!important;
    visibility:hidden!important;
    opacity:0!important;
    pointer-events:none!important;
    transition:clip-path .28s ease,opacity .18s ease!important;
  }

  html body .site-header .desktop-nav.is-open{
    transform:none!important;
    clip-path:inset(0)!important;
    visibility:visible!important;
    opacity:1!important;
    pointer-events:auto!important;
  }
}
