/* ============================================================
   Elite Escape Village — ee-enhance.css
   Site geneli tasarım & motion katmanı (v1)
   - Skip link (erişilebilirlik)
   - Lazy görsel fade-in
   - Kor tanecikleri (CTA bantları)
   - Galeri filtre stagger animasyonu
   - Blog okuma ilerleme çubuğu
   - WhatsApp FAB karşılama balonu
   - Oda galerisi lightbox
   ============================================================ */

/* ---- Skip link ---- */
.ee-skip{
  position:absolute; left:12px; top:-48px; z-index:500;
  background:var(--forest-700,#1F4D3A); color:#fff; font-weight:700; font-size:.85rem;
  padding:10px 18px; border-radius:0 0 10px 10px; text-decoration:none;
  transition:top .2s ease;
}
.ee-skip:focus{ top:0; outline:3px solid var(--ember-500,#B6863C); outline-offset:2px; }

/* ---- Lazy görsel fade-in (JS sınıfı ekler; JS yoksa görseller normal görünür) ---- */
img.ee-lz{ opacity:0; transition:opacity .45s ease; }
img.ee-lz.ee-ld{ opacity:1; }

/* ---- Kor tanecikleri (paylaşılan) ---- */
.ee-sparks{ position:absolute; inset:0; overflow:hidden; pointer-events:none; }
.ee-spark{
  position:absolute; bottom:-10px; width:3px; height:3px; border-radius:50%;
  background:var(--ember-500,#B6863C); opacity:0;
  box-shadow:0 0 6px 1px rgba(182,134,60,.6);
  animation:eeSparkRise linear infinite;
}
@keyframes eeSparkRise{
  0%{ transform:translateY(0) translateX(0); opacity:0; }
  12%{ opacity:.9; }
  100%{ transform:translateY(-220px) translateX(var(--sx,18px)); opacity:0; }
}

/* ---- Galeri filtre stagger ---- */
.grid figure.ee-in{ animation:eeItemIn .45s cubic-bezier(.2,.7,.2,1) both; animation-delay:var(--ee-d,0ms); }
@keyframes eeItemIn{ from{ opacity:0; transform:translateY(14px) scale(.98); } to{ opacity:1; transform:none; } }

/* ---- Blog okuma ilerleme çubuğu ---- */
.ee-progress{
  position:fixed; top:0; left:0; height:3px; width:0%; z-index:300;
  background:linear-gradient(90deg, var(--forest-700,#1F4D3A), var(--ember-500,#B6863C));
  transition:width .1s linear;
}

/* ---- WhatsApp FAB karşılama balonu ---- */
.ee-wa-tip{
  position:fixed; right:84px; bottom:26px; z-index:159;
  background:#fff; color:var(--ink-900,#20231F); font-size:.82rem; font-weight:600;
  padding:10px 14px; border-radius:14px 14px 4px 14px;
  box-shadow:0 8px 26px rgba(16,42,32,.22); border:1px solid var(--line,#DCD6C2);
  opacity:0; transform:translateX(8px); pointer-events:none;
  transition:opacity .35s ease, transform .35s ease, bottom .3s ease;
  max-width:220px;
}
.ee-wa-tip.show{ opacity:1; transform:none; }

/* ---- Oda galerisi lightbox ---- */
.ee-lb{
  position:fixed; inset:0; z-index:400; background:rgba(16,42,32,.94);
  display:none; align-items:center; justify-content:center; padding:24px;
}
.ee-lb.open{ display:flex; animation:eeLbIn .25s ease; }
@keyframes eeLbIn{ from{ opacity:0; } to{ opacity:1; } }
.ee-lb img{ max-width:min(1200px,94vw); max-height:88vh; border-radius:12px; box-shadow:0 30px 80px rgba(0,0,0,.5); }
.ee-lb button{
  position:absolute; background:rgba(255,255,255,.12); border:1px solid rgba(255,255,255,.25);
  color:#fff; border-radius:50%; width:46px; height:46px; cursor:pointer;
  display:flex; align-items:center; justify-content:center; transition:background .2s ease;
}
.ee-lb button:hover{ background:rgba(255,255,255,.25); }
.ee-lb button svg{ width:22px; height:22px; }
.ee-lb .ee-lb-x{ top:18px; right:18px; }
.ee-lb .ee-lb-p{ left:14px; top:50%; transform:translateY(-50%); }
.ee-lb .ee-lb-n{ right:14px; top:50%; transform:translateY(-50%); }
.ee-lb .ee-lb-c{
  position:absolute; bottom:18px; left:50%; transform:translateX(-50%);
  color:rgba(255,255,255,.85); font-size:.82rem; font-weight:700; letter-spacing:.08em;
}
.gal-main{ cursor:zoom-in; }
@media (max-width:560px){
  .ee-lb .ee-lb-p{ left:6px; } .ee-lb .ee-lb-n{ right:6px; }
  .ee-wa-tip{ right:80px; }
}

/* ---- Hareket azaltma ---- */
@media (prefers-reduced-motion:reduce){
  .ee-spark{ animation:none; display:none; }
  .grid figure.ee-in{ animation:none; }
  img.ee-lz{ opacity:1; transition:none; }
  .ee-lb.open{ animation:none; }
  .ee-wa-tip{ transition:none; }
}
