
/* Logo */
.logopagenav { position:absolute; left:0; top:10px; z-index:99; }
.logopagenav img{
  height:150px !important;
  filter:
    drop-shadow(0 0 2px rgba(0,0,0,.5))
    drop-shadow(0 0 6px rgba(0,0,0,.5))
    drop-shadow(0 0 10px rgba(0,0,0,.5));
  transition: transform .3s ease;
}
.logopagenav img:hover{ transform: scale(1.05); }

/* ================= MENÜ BUTONU (glass/hap) ================= */
.menu-toggle{
  position: fixed; right:16px; top:16px; z-index:10001;
  display:flex; align-items:center; gap:10px;
  padding:10px 14px; border-radius:9999px;
  background: rgba(20,28,46,.55);
  backdrop-filter: blur(8px); -webkit-backdrop-filter: blur(8px);
  border:1px solid rgba(255,255,255,.18);
  color:#fff; cursor:pointer;
  box-shadow: 0 6px 20px rgba(0,0,0,.25), inset 0 1px 0 rgba(255,255,255,.12);
  transition: transform .18s ease, background .25s ease, box-shadow .25s ease;
}
.menu-toggle:hover{ transform: translateY(-1px); background: rgba(20,28,46,.7); }
.menu-toggle:active{ transform: translateY(0); }
.menu-toggle:focus-visible{ outline:2px solid #f5c518; outline-offset:3px; }
.menu-toggle .label{ font-weight:600; letter-spacing:.2px; }

/* Hamburger → X animasyonu */
.hamburger{ position:relative; width:18px; height:14px; display:inline-block; }
.hamburger .bar,
.hamburger::before,
.hamburger::after{
  content:""; position:absolute; left:0; width:100%; height:2px;
  background:#fff; border-radius:2px;
  transition: transform .25s ease, opacity .2s ease;
}
.hamburger .bar{ top:6px; }
.hamburger::before{ top:0; }
.hamburger::after{ bottom:0; }
.menu-toggle.is-open .hamburger .bar{ transform: scaleX(0); opacity:0; }
.menu-toggle.is-open .hamburger::before{ transform: translateY(6px) rotate(45deg); }
.menu-toggle.is-open .hamburger::after{  transform: translateY(-6px) rotate(-45deg); }

/* ================= ARKA PLAN KARARTMA ================= */
.scrim{
  position:fixed; inset:0; z-index:10000;
  background: rgba(0,0,0,.35);
  opacity:0; pointer-events:none; transition: opacity .3s ease;
}
.scrim.show{ opacity:1; pointer-events:auto; }

/* ================= YAN MENÜ KAPSAYICI =================
   NOT: Eski `.sidenav { width:0; transition:width }` KULLANILMIYOR.
   Çakışma olmaması için ID ile yönetiliyor. */
#YanMenu{
  position: fixed; z-index:10002; top:0; right:0;
  height:100vh; width:320px;
  background: linear-gradient(180deg, #1b2a41, #2a3b58);
  box-shadow: -10px 0 30px rgba(0,0,0,.35);
  border-radius: 16px 0 0 16px;
  overflow:auto;
  /* width yerine translate ile aç/kapat – performanslı */
  transform: translateX(100%);
  transition: transform .35s ease;
  /* üst boşluk + içerik dolgusu */
  padding:72px 20px 20px;
}
#YanMenu.open{ transform: translateX(0); }

/* Kapatma butonu */
#YanMenu .closebtn{
  position:absolute; top:16px; right:16px;
  font-size:28px; color:#f1faee; line-height:1; text-decoration:none;
  transition: transform .25s ease, color .25s ease;
}
#YanMenu .closebtn:hover{ transform: rotate(90deg); color:#f5c518; }

/* ================= MENÜ İÇERİĞİ ================= */
#YanMenu .menu_tab{
  display:flex; flex-direction:column; gap:6px;
  width:auto; padding:0; /* eski 250px genişlik/20px paddingi kaldırıldı */
}
#YanMenu .menu_tab a{
  display:block; padding:10px 12px; border-radius:10px;
  color:#f5f5dc; text-decoration:none; font-size:16px;
  background: transparent; border:1px solid transparent;
  transition: background .25s ease, color .25s ease, border-color .25s ease;
  margin:0;
}
#YanMenu .menu_tab a:hover{
  background: rgba(245,197,24,.15);
  border-color: rgba(245,197,24,.35);
  color:#fff;
}

/* Alt menü ok/akordeon */
#YanMenu .arrow{ position:relative; cursor:pointer; }
#YanMenu .arrow::after{
  content:"▸"; position:absolute; right:12px;
  transition: transform .3s ease; color:#f5f5dc;
}
#YanMenu .arrow.active::after{ transform: rotate(90deg); color:#f5c518; }

#YanMenu .submenu{
  max-height:0; overflow:hidden; transition:max-height .35s ease; padding-left:10px;
}
#YanMenu .arrow.active + .submenu{ max-height:500px; }

/* ================= REZERVASYON BUTONU ================= */
.rezervasyon-btn{
  display:inline-block; background-color:#e63946; color:#fff;
  padding:10px 20px; font-size:18px; font-weight:bold; text-decoration:none;
  border:none; border-radius:10px; box-shadow:0 4px 8px rgba(0,0,0,.2);
  position:fixed; bottom:52px; right:20px; z-index:9998;
  transition: background-color .3s ease, transform .2s ease, right .35s ease;
}
.rezervasyon-btn:hover{ background-color:#d62828; transform:scale(1.05); cursor:pointer; }
/* Menü açıkken sağ çakışmayı önle */
.rezervasyon-shift{ right:130px !important; }
.btn-container{ text-align:center; display:none; }

/* ================= SOL ALT HIZLI ARAMA ================= */
.fixed-button-action a{ width:180px !important; }
.fixed-button-action a:hover{ text-decoration:unset !important; }
.fixed-button-action [type="checkbox"]{ display:none; }
.fixed-button-action{ position:fixed; bottom:20px; left:20px; z-index:99999; }
.toggle-label-action{
  position:relative; display:block; width:50px; height:50px;
  background:#4CAF50; color:#fff; text-align:center; line-height:50px;
  cursor:pointer; border-radius:50%;
  transition:background-color .3s ease; z-index:1; overflow:visible;
}
.toggle-label-action::before{
  content:""; position:absolute; top:50%; left:50%; width:60px; height:60px;
  background:rgba(76,175,80,.4); border-radius:50%;
  transform:translate(-50%,-50%); animation:pulseRing 1s infinite; z-index:-1;
}
@keyframes pulseRing{
  0%{ transform:translate(-50%,-50%) scale(.8); opacity:.6; }
  70%{ transform:translate(-50%,-50%) scale(1.6); opacity:0; }
  100%{ transform:translate(-50%,-50%) scale(1.6); opacity:0; }
}
.toggle-label-action:hover{ background:#45a049; }
.dropdown-action{
  display:none; position:absolute; bottom:60px; left:0; padding:10px;
  background:#f9f9f9; box-shadow:0 2px 5px rgba(0,0,0,.2);
  border-radius:5px; opacity:0; transform:translateY(10px);
  transition:all .3s ease;
}
#toggle-button-action:checked ~ .dropdown-action{ display:block; opacity:1; transform:translateY(0); }
.call-button-action{
  display:block; margin-bottom:10px; padding:6px 12px; background:#4CAF50; color:#fff; text-decoration:none; border-radius:5px;
}
.call-button-action:hover{ background:#45a049; }



/* ================= MOBİL & ERİŞİLEBİLİRLİK ================= */
@media (max-width:768px){
  .menu-toggle{ padding:9px 12px; gap:8px; right:12px; top:12px; }
  .menu-toggle .label{ font-size:15px; }
  #YanMenu{ width:290px; border-radius:0; }
}
@media (prefers-reduced-motion: reduce){
  .menu-toggle, .hamburger .bar, #YanMenu, .scrim{ transition:none !important; }
}


@media (max-width:599px){
.fixed-button-action {  bottom: 70px; }
.to-top-arrow.show  {  bottom: 50px; }
}

/* Sağ üst dil seçim çubuğu – layout'u itmesin diye sabit */
.lang-switch{
  position: fixed;
  right: 16px;
  /* Menü butonu top:16px ve ~44px yüksek; 16 + 44 + 8 ≈ 68 */
  top: 64px;
  z-index: 10000; /* menu-toggle 10001; altta kalır */
  display: flex;
  align-items: center;
}

.lang-form{ display: inline-flex; gap: 6px; align-items: center; margin: 0; }

.lang-btn{
  border: none;
  background: none;
  padding: 0;
  margin: 0;
  opacity: .8;
  cursor: pointer;
  transition: opacity .2s ease, transform .12s ease;
}
.lang-btn:hover{ opacity: 1; transform: translateY(-1px); }
.lang-btn.is-active{ opacity: 1; }

@media (max-width:768px){
  .lang-switch{ right: 12px; top: 56px; }
}


/* ===== MOBILE POLISH (≤480px) ===== */
@media (max-width: 480px){

  /* Logo biraz küçülsün, üstte nefes alanı kalsın */
  .logopagenav img{ height: 90px !important; }

  /* Menü butonu: sadece ikon, güvenli alanlara saygı */
  .menu-toggle{
    right: max(12px, env(safe-area-inset-right));
    top:  max(12px, env(safe-area-inset-top));
    padding: 10px;          /* yuvarlak ikon */
    gap: 0;
    border-radius: 9999px;
  }
  .menu-toggle .label{ display: none; }  /* “MENÜ” yazısı gizlenir */
  .hamburger{ width: 20px; height: 14px; }

  /* Dil bayrakları: butonun hemen altında, taşmadan */
  .lang-switch{
    right: max(12px, env(safe-area-inset-right));
    top:   calc(max(12px, env(safe-area-inset-top)) + 44px);
    gap: 6px;
  }

  /* Yan menü: ekranın çoğunu kaplasın ama taşmasın */
  #YanMenu{
    width: min(92vw, 300px);
    border-radius: 0;
    padding: 64px 16px 16px;
  }
  #YanMenu .closebtn{ top: 12px; right: 12px; font-size: 30px; }
  #YanMenu .menu_tab a{
    font-size: 15px;
    padding: 12px 10px;
    min-height: 44px;       /* parmak dostu */
  }
  #YanMenu .submenu{ padding-left: 8px; }

  /* Rezervasyon butonu daha kompakt */
  .rezervasyon-btn{
    right: 12px; bottom: 16px;
    font-size: 16px; padding: 9px 14px;
  }
  .rezervasyon-shift{ right: 110px !important; }
}

/* Çok dar ekranlar */
@media (max-width: 360px){
  #YanMenu{ width: 94vw; }
  .lang-switch{ top: calc(max(10px, env(safe-area-inset-top)) + 40px); }
}

/* Hareket azaltma tercihi */
@media (prefers-reduced-motion: reduce){
  .menu-toggle, .hamburger .bar, #YanMenu, .scrim{ transition: none !important; }
}
