/* =========================================================
   EN BABA ORGANİZASYON - FULL CSS (DÜZELTİLMİŞ)
   ✅ Modal içi dropdown (Temalı / Yaşa göre) KESİLMEZ
   ✅ Scroll modal body yerine içerik wrapper’da
   ✅ Z-index / tıklanabilirlik fix
========================================================= */

/* no scrollbar helper */
.no-scrollbar::-webkit-scrollbar{display:none;}
.no-scrollbar{-ms-overflow-style:none; scrollbar-width:none;}

/* tab panels */
.tab-panel{display:none;}
.tab-panel.active{display:block;}

/* ===========================
   ENB BUTTON (base)
=========================== */
.enb-btn-box{
  position: relative;
  overflow: hidden;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:2px;

  background:#fff;
  border:1px solid #e5e7eb;
  border-radius:10px;
  padding:10px 4px;
  min-height:55px;

  box-shadow:
    0 1px 2px rgba(0,0,0,.06),
    0 6px 16px rgba(0,0,0,.08);

  transition:transform .18s ease, box-shadow .18s ease, background .18s ease, border-color .18s ease;
  cursor:pointer;
  will-change: transform;
}

.enb-btn-box:hover{
  transform:translateY(-2px);
  box-shadow:
    0 4px 10px rgba(0,0,0,.10),
    0 14px 28px rgba(0,0,0,.14);
}

.enb-btn-box.active{
  background:#eef2ff;
  border-color:#6366f1;
  box-shadow:
    0 0 0 2px rgba(99,102,241,.35),
    0 10px 26px rgba(99,102,241,.25);
}

.enb-btn-box span.icon{
  font-size:16px;
  margin-bottom:2px;
  transition:transform .2s ease, filter .2s ease;
}
.enb-btn-box span.label{
  font-size:10px;
  font-weight:600;
  color:#4b5563;
  text-align:center;
}
.enb-btn-box .desc{
  font-size:11px;
  color:#94a3b8;
  font-weight:500;
}
.enb-btn-box:hover span.icon{
  transform:scale(1.15);
  filter:brightness(1.1);
}

/* ===========================
   Ripple (use ::before)
=========================== */
.enb-btn-box::before{
  content:"";
  position:absolute;
  width:0; height:0;
  left: var(--ripple-x, 50%);
  top:  var(--ripple-y, 50%);
  background: rgba(0,0,0,.12);
  border-radius:50%;
  transform: translate(-50%, -50%) scale(0);
  opacity:0;
  transition: transform .45s ease, opacity .30s ease, width .45s ease, height .45s ease;
  pointer-events:none;
}
.enb-btn-box.ripple-animate::before{
  width:200px;
  height:200px;
  transform: translate(-50%, -50%) scale(1);
  opacity:0;
}

/* ===========================
   Optional hint
=========================== */
.enb-btn-box[data-hint]::after{
  content: attr(data-hint);
  font-size:10px;
  color:#64748b;
  margin-top:2px;
}

/* ===========================
   Primary (GENEL - SİYAH)
=========================== */
.enb-btn-primary{
  background:#0f0f0f !important;
  border-color:#0f0f0f !important;
  color:#fff !important;
}
.enb-btn-primary .label{ color:#fff !important; }

/* ===========================
   Pulse (ilk giriş)
=========================== */
@keyframes pulseBtn{
  0%{transform:scale(1)}
  50%{transform:scale(1.05)}
  100%{transform:scale(1)}
}
.enb-btn-box.pulse{
  animation:pulseBtn 1s ease 2;
}

/* ===========================
   CTA override (Rezervasyon)
=========================== */
button.enb-btn-box.enb-btn-primary.enb-cta-btn{
  background: linear-gradient(135deg,#4f46e5,#ec4899,#f59e0b) !important;
  color:#fff !important;
  border:0 !important;
  font-weight:800 !important;
  box-shadow:0 12px 30px rgba(79,70,229,.35) !important;
  transform: translateZ(0);
}
button.enb-btn-box.enb-btn-primary.enb-cta-btn[data-hint]::after{
  content:"";
}

@media (prefers-reduced-motion: no-preference){
  button.enb-btn-box.enb-btn-primary.enb-cta-btn{
    animation: enbCtaPulse 2.2s ease-in-out infinite;
  }
  @keyframes enbCtaPulse{
    0%{transform:scale(1)}
    50%{transform:scale(1.06)}
    100%{transform:scale(1)}
  }

  button.enb-btn-box.enb-btn-primary.enb-cta-btn::after{
    content:"";
    position:absolute;
    inset:0;
    background: linear-gradient(120deg,transparent,rgba(255,255,255,.35),transparent);
    transform:translateX(-120%);
    animation: enbCtaShine 3.2s ease-in-out infinite;
    pointer-events:none;
  }
  @keyframes enbCtaShine{
    0%{transform:translateX(-120%)}
    45%{transform:translateX(120%)}
    100%{transform:translateX(120%)}
  }
}
button.enb-btn-box.enb-btn-primary.enb-cta-btn:hover{
  transform: scale(1.08) !important;
  box-shadow: 0 16px 38px rgba(236,72,153,.45) !important;
}

/* ✅ HERO HIZLI MENÜ - element button değilse de yakala (INSTAGRAM YOK) */
[data-enb-menu-open="1"]{
  display:inline-flex !important;
  flex-direction:row !important;
  align-items:center !important;
  justify-content:center !important;

  min-height:40px !important;
  padding:6px 12px !important;
  gap:6px !important;
  border-radius:10px !important;

  /* ✅ Instagram/pembe yok → yeşil (WhatsApp hissi) */
  background: linear-gradient(135deg,#16a34a,#22c55e,#84cc16) !important;
  border:0 !important;
  color:#fff !important;
  text-decoration:none !important;

  font-size:14px !important;
  font-weight:800 !important;

  /* ✅ pembe glow yok → yeşil shadow */
  box-shadow:0 12px 30px rgba(34,197,94,.32) !important;

  transform: translateZ(0);
  will-change: transform, box-shadow;

  animation: enbHeroMenuWiggle 2.2s ease-in-out infinite !important;
}

/* WhatsApp tarzı: kısa titreşim burst + bekleme */
@keyframes enbHeroMenuWiggle{
  0%   { transform: translateZ(0) rotate(0deg) scale(1); }
  70%  { transform: translateZ(0) rotate(0deg) scale(1); }

  72%  { transform: translateZ(0) rotate(-2deg) scale(1.02); }
  74%  { transform: translateZ(0) rotate( 2deg) scale(1.02); }
  76%  { transform: translateZ(0) rotate(-2deg) scale(1.02); }
  78%  { transform: translateZ(0) rotate( 2deg) scale(1.02); }

  82%  { transform: translateZ(0) rotate(0deg) scale(1); }
  100% { transform: translateZ(0) rotate(0deg) scale(1); }
}

[data-enb-menu-open="1"]:hover{
  animation: none !important;
  transform: scale(1.06) !important;

  /* ✅ pembe yok → yeşil hover shadow */
  box-shadow: 0 16px 38px rgba(34,197,94,.45) !important;
}

[data-enb-menu-open="1"]:active{
  transform: scale(.98) !important;
}

@media (prefers-reduced-motion: reduce){
  [data-enb-menu-open="1"]{ animation: none !important; }
}


/* ===========================
   Responsive (GENEL grid butonlar)
=========================== */
@media (min-width: 640px){
  .enb-btn-box{ min-height:70px; padding:14px 6px; }
  .enb-btn-box span.icon{ font-size:18px; }
  .enb-btn-box span.label{ font-size:11px; }
}
@media (min-width: 1024px){
  .enb-btn-box{ min-height:80px; padding:16px 8px; }
  .enb-btn-box span.icon{ font-size:20px; }
  .enb-btn-box span.label{ font-size:12px; }
}

/* hızlı menü: responsive büyümeden etkilenmesin */
@media (min-width: 640px){
  button[data-enb-menu-open="1"]{ min-height:40px !important; padding:6px 12px !important; }
}
@media (min-width: 1024px){
  button[data-enb-menu-open="1"]{ min-height:40px !important; padding:6px 12px !important; }
}

/* ===========================
   Step dots
=========================== */
.step-dot{
  width:34px; height:34px;
  display:flex; align-items:center; justify-content:center;
  border-radius:9999px;
  border:2px solid #cbd5e1;
  background:#fff;
  color:#64748b;
  font-weight:800;
  flex:0 0 auto;
}
.step-dot.active{
  border-color:#4f46e5;
  color:#4f46e5;
  background:#eef2ff;
}
.step-dot.done{
  border-color:#16a34a;
  color:#16a34a;
  background:#ecfdf5;
}
.step-line{ height:2px; background:#e2e8f0; flex:1 1 auto; }

/* ===========================
   Dropdown scroll nicer
=========================== */
.dd-scroll {
  scrollbar-width: thin;
  scrollbar-color: #94a3b8 transparent;
}
.dd-scroll::-webkit-scrollbar { width: 10px; }
.dd-scroll::-webkit-scrollbar-track { background: transparent; }
.dd-scroll::-webkit-scrollbar-thumb {
  background: #cbd5e1;
  border-radius: 999px;
  border: 2px solid transparent;
  background-clip: content-box;
}
.dd-scroll::-webkit-scrollbar-thumb:hover { background: #94a3b8; }

/* ===========================
   Scroll lock
=========================== */
html.enb-lock,
html.enb-lock body {
  overflow: hidden;
}

/* =========================================================
   ✅ QUICK MENU MODAL (FIXED)
   🔥 Dropdown KESİLME SORUNU ÇÖZÜLDÜ
   - panel/body overflow visible
   - scroll, body yerine içerik wrapper’da
   - dropdown z-index yükseltildi
========================================================= */

/* Modal shell */
.enb-qm{
  position: fixed;
  inset: 0;
  z-index: 999999;
}

/* Backdrop */
.enb-qm__backdrop{
  position: absolute;
  inset: 0;
  background: rgba(0,0,0,.55);
  backdrop-filter: blur(6px);
}

/* Panel */
.enb-qm__panel{
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  width: min(980px, calc(100% - 24px));
  max-height: min(78vh, 720px);
  background: rgba(255,255,255,.98);
  border-radius: 18px;
  box-shadow: 0 20px 80px rgba(0,0,0,.35);

  /* ✅ FIX: dropdown kesilmesin */
  overflow: visible;

  display: flex;
  flex-direction: column;
}

/* Header */
.enb-qm__head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding: 14px 14px;
  border-bottom: 1px solid rgba(0,0,0,.06);
  background: rgba(255,255,255,.98);
  border-top-left-radius: 18px;
  border-top-right-radius: 18px;
}

.enb-qm__title{
  display:flex;
  align-items:center;
  gap: 10px;
}

.enb-qm__badge{
  width: 36px;
  height: 36px;
  border-radius: 12px;
  display:flex;
  align-items:center;
  justify-content:center;
  background: rgba(0,0,0,.06);
}

.enb-qm__h{ font-weight: 800; font-size: 16px; line-height: 1.1; }
.enb-qm__p{ font-size: 12px; opacity: .7; margin-top: 2px; }

.enb-qm__x{
  width: 40px;
  height: 40px;
  border-radius: 12px;
  border: 1px solid rgba(0,0,0,.08);
  background: rgba(255,255,255,.9);
  cursor:pointer;
}

/* Body */
.enb-qm__body{
  padding: 14px;

  /* ✅ FIX: dropdown kesilmesin */
  overflow: visible;

  /* Panel yüksekliği kontrol */
  flex: 1 1 auto;
}

/* ✅ Scroll'u body yerine grid wrapper’a veriyoruz
   Not: HTML'de enb-qm__body içinde direkt .grid var.
*/
.enb-qm__body > .grid{
  max-height: 62vh;
  overflow: auto;
  padding-right: 2px;
}

/* Dropdown inside modal */
.enb-qm-dd{
  position: absolute;
  left: 0;
  right: 0;
  top: calc(100% + 8px);

  /* ✅ FIX: üstte kalsın */
  z-index: 9999;
}

/* Dropdown container görünümü */
.enb-qm-dd > div{
  border-radius: 14px;
  overflow: hidden;
  box-shadow: 0 18px 50px rgba(0,0,0,.18);
}

/* Dropdown UL scroll daha konforlu */
.enb-qm-dd ul{
  max-height: 320px;
  overflow: auto;
  scrollbar-width: thin;
}

/* highlight target section */
.enb-qm-highlight{
  outline: 3px solid rgba(99,102,241,.25);
  border-radius: 14px;
  transition: outline-color .2s ease;
}

/* küçük ek: dropdown açıkken üstte kalsın */
.enb-qm [data-dd-menu]:not(.hidden){
  position: absolute;
}

/* mobile iyileştirme */
@media (max-width: 640px){
  .enb-qm__body > .grid{ max-height: 70vh; }
}

/* =========================================================
   SALES + VITRIN PATCH (Desktop inceltme + hiyerarşi)
   - Desktop’ta %10-15 sıkılaştırma
   - Satış kartları (Fiyat/Premium/Rezervasyon) az farkla önde
========================================================= */

/* Yazı sıkılığı (genel) */
.enb-btn-box span.label{
  letter-spacing: .1px;
}
.enb-btn-box .desc{
  line-height: 1.15;
}

/* Satış kartları için küçük vurgu */
.enb-btn-sale{
  border-color: rgba(99,102,241,.18);
  box-shadow:
    0 2px 6px rgba(0,0,0,.06),
    0 10px 22px rgba(79,70,229,.10);
}
.enb-btn-sale:hover{
  box-shadow:
    0 6px 14px rgba(0,0,0,.10),
    0 18px 34px rgba(79,70,229,.14);
}

/* ✅ Desktop inceltme (büyük his azalt, dokunulabilirlik kalsın) */
@media (min-width: 1024px){
  .enb-btn-box{
    min-height: 72px;          /* önce 80px */
    padding: 14px 8px;         /* önce 16px 8px */
    border-radius: 12px;       /* 10px yerine az daha premium */
  }
  .enb-btn-box span.icon{
    font-size: 19px;           /* önce 20px */
  }
  .enb-btn-box span.label{
    font-size: 11.5px;         /* önce 12px */
  }
  .enb-btn-box .desc{
    font-size: 10.5px;         /* 11px -> biraz sıkı */
  }

  /* Satış kartı desktop’ta 1 tık daha büyük kalsın (hiyerarşi) */
  .enb-btn-box.enb-btn-sale{
    min-height: 76px;
  }
}

/* ✅ 640+ aralığında da çok az sıkılık */
@media (min-width: 640px) and (max-width: 1023px){
  .enb-btn-box{ min-height: 66px; padding: 12px 6px; } /* önce 70/14 */
  .enb-btn-box span.icon{ font-size: 17.5px; }         /* önce 18 */
  .enb-btn-box span.label{ font-size: 10.5px; }        /* önce 11 */
}

/* HERO - CLS SAFE */
.enb-hero{
  /* yükseklik her ekranda sabit bir aralıkta kalsın */
  min-height: 360px;
}
@media (min-width: 640px){
  .enb-hero{ min-height: 420px; }
}
@media (min-width: 768px){
  .enb-hero{ height: clamp(330px, 44vh, 460px); }
}

/* background img: yerleşim sabit */
.enb-hero__img{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position: top;
  transform: translateZ(0);
}

/* overlay */
.enb-hero__overlay{
  position:absolute;
  inset:0;
  background: linear-gradient(to top, rgba(0,0,0,.70), rgba(0,0,0,.35), rgba(0,0,0,.10));
}

/* content layout */
.enb-hero__inner{
  position:relative;
  max-width: 72rem; /* ~max-w-6xl */
  margin: 0 auto;
  padding: 56px 20px 28px;
  text-align:center;
}

/* typographic stability */
.enb-hero__micro{
  font-size: 13px;
  opacity:.9;
  margin-bottom: 10px;
}
.enb-hero__title{
  font-weight: 800;
  letter-spacing: -0.02em;
  line-height: 1.08;
  font-size: clamp(28px, 4vw, 52px);
  margin: 0 0 10px;
}
.enb-hero__sub{
  max-width: 56ch;
  margin: 0 auto 12px;
  font-size: clamp(15px, 1.6vw, 20px);
  opacity: .95;
}

/* badge row */
.enb-hero__badges{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  justify-content:center;
  margin: 10px 0 12px;
}
.enb-hero__badge{
  display:inline-flex;
  align-items:center;
  padding: 6px 10px;
  border-radius: 999px;
  background: rgba(255,255,255,.10);
  border: 1px solid rgba(255,255,255,.18);
  font-size: 12px;
  backdrop-filter: blur(6px);
}

/* ticker + cta */
.enb-hero__ticker{ margin-top: 10px; }
.enb-hero__cta{
  margin-top: 14px;
  display:flex;
  gap:10px;
  justify-content:center;
  flex-wrap:wrap;
}
.enb-hero__hint{
  margin-top: 10px;
  font-size: 13px;
  opacity: .9;
}
.enb-hero__local{
  margin-top: 10px;
  font-size: 12px;
  opacity: .85;
}

/* mobilde CTA full */
@media (max-width: 640px){
  .enb-hero__cta a,
  .enb-hero__cta button{
    width: 100%;
    justify-content:center;
  }
}

/* =========================
   EBBV NAV ARROW JITTER FIX
   transform overwrite engeli
========================= */
.ebbv__nav,
.ebbv__nav:hover,
.ebbv__nav:active,
.ebbv__nav:focus,
.ebbv__nav:focus-visible{
  transform: translateY(-50%) !important;
}

/* basma efekti istiyorsan (zıplamadan) */
.ebbv__nav:active{
  transform: translateY(-50%) scale(.96) !important;
}

.ebbv__nav{
  -webkit-tap-highlight-color: transparent;
  user-select: none;
  touch-action: manipulation;
  outline: none;
}


