@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300;0,400;0,600;1,300;1,400;1,600&family=Jost:wght@300;400;500;600&display=swap');

/* ============================================================
   MAVİ RESTAURANT — style.css  (Konsept A)
   ============================================================ */

/* ── Variables ─────────────────────────────────────────────── */
:root {
  --navy:       #080f1a;
  --deep:       #0d1f2d;
  --ocean:      #1e5f74;
  --teal:       #2e8b8b;
  --foam:       #a8d8d8;
  --sand:       #f5ede0;
  --warm:       #fdfaf6;
  --gold:       #c9a84c;
  --gold-l:     #e4c97a;
  --text-dark:  #1a1a1a;
  --text-mid:   #4a5568;
  --text-light: #8a9ab0;
  --serif:      'Cormorant Garamond', Georgia, serif;
  --sans:       'Jost', sans-serif;
  --ease:       cubic-bezier(.25,.46,.45,.94);
  --radius:     4px;
  --shadow-soft: 0 8px 40px rgba(13,31,45,.12);
  --shadow-deep: 0 20px 60px rgba(13,31,45,.22);
}

/* ── Reset ─────────────────────────────────────────────────── */
*,*::before,*::after { box-sizing:border-box; margin:0; padding:0; }
html { scroll-behavior:smooth; font-size:16px; }
body { font-family:var(--sans); background:var(--warm); color:var(--text-dark); overflow-x:hidden; }
img  { max-width:100%; display:block; }
a    { text-decoration:none; transition:color .3s; }
::-webkit-scrollbar { width:5px; }
::-webkit-scrollbar-track { background:var(--sand); }
::-webkit-scrollbar-thumb { background:var(--teal); border-radius:3px; }
::selection { background:var(--foam); color:var(--navy); }

/* ============================================================
   NAVBAR — Konsept A
   ============================================================ */
#mainNav {
  position:fixed; top:0; left:0; right:0; z-index:1000;
  padding:1.5rem 0;
  transition:padding .5s var(--ease), background .5s var(--ease), backdrop-filter .5s var(--ease), box-shadow .5s var(--ease);
}
#mainNav.scrolled {
  padding:.75rem 0;
  background:rgba(8,15,26,.88);
  backdrop-filter:blur(22px);
  -webkit-backdrop-filter:blur(22px);
  box-shadow:0 4px 32px rgba(0,0,0,.25);
  border-bottom:1px solid rgba(255,255,255,.06);
}

.nav-inner {
  display:flex; align-items:center; justify-content:space-between;
  padding:0 3rem;
  max-width:1400px; margin:0 auto;
}

/* Brand */
.brand {
  display:flex; align-items:center; gap:1.1rem;
  text-decoration:none;
  flex-shrink:0;
}
.brand-name {
  font-family:var(--serif);
  font-size:1.85rem; font-weight:300;
  color:#fff; letter-spacing:.04em; line-height:1;
}
.brand-name em { color:var(--gold); font-style:normal; }
.brand-sep { width:1px; height:34px; background:rgba(255,255,255,.18); }
.brand-sub {
  font-size:.58rem; font-weight:500;
  letter-spacing:.3em; text-transform:uppercase;
  color:rgba(255,255,255,.38); line-height:1.6;
}

/* Nav links wrapper — DESKTOP (row, yatay) */
.nav-links {
  display:flex !important;
  flex-direction:row !important;
  align-items:center;
    flex-wrap:nowrap;
  gap:.15rem;
  flex-shrink:1;

}
/* Nav close butonu sadece mobilde görünür */
.nav-close { display:none !important; }
/* Nav scroll body sadece mobilde aktif */
.nav-scroll-body { display:contents; }
.nav-dot {
  width:3px; height:3px; border-radius:50%;
  background:rgba(255,255,255,.2); margin:0 .5rem;
  flex-shrink:0;
}

/* Plain nav link */
.nl {
  font-size:.7rem; font-weight:500;
  letter-spacing:.18em; text-transform:uppercase;
  color:rgba(255,255,255,.6);
  padding:.45rem .9rem;
  position:relative;
  transition:color .3s;
  text-decoration:none;
  background:none; border:none; cursor:pointer;
  white-space:nowrap;
}
.nl::after {
  content:''; position:absolute;
  bottom:-3px; left:.9rem; right:.9rem;
  height:1px; background:var(--gold);
  transform:scaleX(0); transform-origin:right;
  transition:transform .35s var(--ease);
}
.nl:hover { color:#fff; }
.nl:hover::after { transform:scaleX(1); transform-origin:left; }

/* Dropdown chevron */
.dd-arrow {
  font-size:.55rem;
  transition:transform .35s var(--ease);
  vertical-align:middle;
  margin-left:2px;
}
.nav-dropdown.open > .nd-toggle .dd-arrow {
    transform:rotate(180deg);
}

/* Nav CTA */
.nav-cta {
  font-size:.68rem; font-weight:600;
  letter-spacing:.2em; text-transform:uppercase;
  color:var(--gold);
  border:1px solid rgba(201,168,76,.4);
  border-radius:var(--radius);
  padding:.52rem 1.4rem;
  margin-left:1rem;
  position:relative; overflow:hidden;
  transition:color .3s;
  white-space:nowrap;
}
.nav-cta::before {
  content:''; position:absolute; inset:0;
  background:var(--gold);
  transform:translateX(-101%);
  transition:transform .4s var(--ease);
}
.nav-cta span { position:relative; z-index:1; }
.nav-cta:hover { color:var(--navy); }
.nav-cta:hover::before { transform:translateX(0); }

/* ── DROPDOWN PANEL ─────────────────────────────────────────── */
.nav-dropdown {
    position:relative;
    display:inline-flex;
    align-items:center;
    flex:0 0 auto;
    width:auto;
}

.nav-dropdown > .dd-panel {
    position:absolute;
    top:calc(100% + 18px);
    left:50%;
    transform:translateX(-50%) translateY(10px);
    background:rgba(10,18,30,.97);
    border:1px solid rgba(255,255,255,.1);
    border-radius:var(--radius);
    padding:1rem 0;
    min-width:260px;
    opacity:0;
    pointer-events:none;
    transition:opacity .3s var(--ease), transform .3s var(--ease);
    backdrop-filter:blur(20px);
    -webkit-backdrop-filter:blur(20px);
    box-shadow:0 24px 60px rgba(0,0,0,.5);
    z-index:200;
}

.nav-dropdown > .dd-panel::before {
    content:'';
    position:absolute;
    top:-7px;
    left:50%;
    width:12px;
    height:12px;
    background:rgba(10,18,30,.97);
    border:1px solid rgba(255,255,255,.1);
    border-bottom:none;
    border-right:none;
    transform:translateX(-50%) rotate(45deg);
}

.nav-dropdown.open > .dd-panel {
    opacity:1;
    pointer-events:auto;
    transform:translateX(-50%) translateY(0);
}

/* Wide mega panel for Menü */
.dd-wide {
  min-width:680px;
  left:50%;
  padding:1.5rem;
}
.dd-wide::before { left:calc(50% - 40px); } /* align with button */

.dd-cols {
  display:grid;
  grid-template-columns:1fr 1fr 1fr 160px;
  gap:0 1.5rem;
}

.dd-col { padding:0; }
.dd-col + .dd-col { border-left:1px solid rgba(255,255,255,.06); padding-left:1.2rem; }

.dd-heading {
  font-size:.62rem; font-weight:600;
  letter-spacing:.25em; text-transform:uppercase;
  color:var(--gold);
  padding:.4rem 0 .8rem;
  margin:0 0 .4rem;
  border-bottom:1px solid rgba(255,255,255,.07);
}

/* Standard dropdown item */
.dd-item {
  display:flex; align-items:flex-start; gap:.75rem;
  padding:.6rem 1rem;
  color:rgba(255,255,255,.7);
  transition:background .2s, color .2s;
  border-radius:var(--radius);
  text-decoration:none;
  cursor:pointer;
}
.dd-wide .dd-item { padding:.55rem .5rem; }
.dd-item:hover { background:rgba(255,255,255,.06); color:#fff; }

.dd-item-icon {
  font-size:1.1rem; color:var(--teal);
  margin-top:1px; flex-shrink:0;
}

.dd-item-name {
  display:block;
  font-size:.84rem; font-weight:400;
  color:rgba(255,255,255,.85);
  line-height:1.3;
  margin-bottom:2px;
  transition:color .2s;
}
.dd-item:hover .dd-item-name { color:#fff; }

.dd-item-sub {
  display:block;
  font-size:.72rem; color:rgba(255,255,255,.35);
  line-height:1.3;
}

.dd-more {
  font-size:.68rem; font-weight:600;
  letter-spacing:.12em; text-transform:uppercase;
  color:var(--teal) !important;
  margin-top:.4rem;
  padding:.45rem .5rem;
}
.dd-more:hover { color:var(--foam) !important; }

/* Featured column */
.dd-featured {
  border-left:1px solid rgba(255,255,255,.06) !important;
  padding-left:1rem !important;
}
.dd-feat-tag {
  font-size:.6rem; font-weight:600;
  letter-spacing:.25em; text-transform:uppercase;
  color:var(--gold); margin-bottom:.7rem;
}
.dd-feat-img-wrap { border-radius:3px; overflow:hidden; margin-bottom:.8rem; }
.dd-feat-img { width:100%; height:100px; object-fit:cover; transition:transform .4s; }
.dd-feat-img-wrap:hover .dd-feat-img { transform:scale(1.05); }
.dd-feat-name {
  font-family:var(--serif);
  font-size:1rem; font-weight:400; color:#fff;
  margin-bottom:.3rem;
}
.dd-feat-desc { font-size:.75rem; color:rgba(255,255,255,.4); line-height:1.5; margin-bottom:.6rem; }
.dd-feat-price {
  font-family:var(--serif);
  font-size:1.2rem; color:var(--gold-l);
}

/* Divider & social row inside dropdown */
.dd-divider { height:1px; background:rgba(255,255,255,.08); margin:.6rem 1rem; }
.dd-social-row { display:flex; gap:.6rem; padding:.4rem 1rem; }
.dd-social {
  width:32px; height:32px;
  border-radius:var(--radius);
  border:1px solid rgba(255,255,255,.14);
  display:flex; align-items:center; justify-content:center;
  color:rgba(255,255,255,.5); font-size:.9rem;
  transition:all .25s;
}
.dd-social:hover { background:var(--teal); border-color:var(--teal); color:#fff; }

/* Nav close button — only shown inside mobile sidebar */
.nav-close { display:none; }

/* Language selector */
.nav-lang {
  position:relative;
  margin-left:.6rem;
}
.nav-lang-btn {
  display:flex; align-items:center; gap:.4rem;
  font-size:.68rem; font-weight:500;
  letter-spacing:.14em; text-transform:uppercase;
  color:rgba(255,255,255,.5);
  background:none; border:none; cursor:pointer;
  padding:.45rem .6rem;
  transition:color .3s;
  white-space:nowrap;
}
.nav-lang-btn:hover { color:rgba(255,255,255,.85); }
.nav-lang-btn i { font-size:.7rem; transition:transform .3s var(--ease); }
.nav-lang.open .nav-lang-btn i { transform:rotate(180deg); }

.nav-lang-panel {
  position:absolute;
  top:calc(100% + 12px); right:0;
  background:rgba(10,18,30,.97);
  border:1px solid rgba(255,255,255,.1);
  border-radius:var(--radius);
  padding:.5rem 0;
  min-width:160px;
  opacity:0; pointer-events:none;
  transform:translateY(8px);
  transition:opacity .3s var(--ease), transform .3s var(--ease);
  backdrop-filter:blur(20px);
  -webkit-backdrop-filter:blur(20px);
  box-shadow:0 16px 40px rgba(0,0,0,.4);
  z-index:200;
}
.nav-lang.open .nav-lang-panel {
  opacity:1; pointer-events:auto; transform:translateY(0);
}
.nav-lang-item {
  display:flex; align-items:center; gap:.8rem;
  padding:.65rem 1.1rem;
  font-size:.78rem; color:rgba(255,255,255,.65);
  text-decoration:none;
  transition:background .2s, color .2s;
  white-space:nowrap;
}
.nav-lang-item:hover { background:rgba(255,255,255,.06); color:#fff; }
.nav-lang-item.active { color:var(--gold); }
.nav-lang-item .lf { font-size:1.05rem; line-height:1; }
.nav-lang-item .ln { letter-spacing:.06em; }

/* Mobile nav backdrop overlay */
.nav-overlay {
  display:none;
  position:fixed; inset:0; z-index:899;
  background:rgba(0,0,0,.55);
  backdrop-filter:blur(2px);
  -webkit-backdrop-filter:blur(2px);
  opacity:0; transition:opacity .35s;
}
.nav-overlay.visible { opacity:1; }

/* ── MOBILE TOGGLER ─────────────────────────────────────────── */
.nav-toggler {
  display:none;
  flex-direction:column; gap:5px;
  background:none; border:none; cursor:pointer;
  padding:.4rem; margin-left:auto;
}
.nav-toggler span {
  display:block; width:24px; height:1.5px;
  background:rgba(255,255,255,.8);
  transition:transform .35s var(--ease), opacity .25s;
}
.nav-toggler.open span:nth-child(1) { transform:translateY(6.5px) rotate(45deg); }
.nav-toggler.open span:nth-child(2) { opacity:0; }
.nav-toggler.open span:nth-child(3) { transform:translateY(-6.5px) rotate(-45deg); }

/* ============================================================
   HERO — Konsept A
   ============================================================ */
#hero {
  position:relative; min-height:100vh;
  display:flex; align-items:center;
  overflow:hidden; background:var(--navy);
}
.hero-bg {
  position:absolute; inset:0;
  background:url('/images/genel/home-bg.jpg') center/cover no-repeat;
  animation:hzoom 18s ease-in-out infinite alternate;
}
@keyframes hzoom {
  0%   { transform:scale(1.04) translateX(0); }
  100% { transform:scale(1.1)  translateX(-2%); }
}
.hero-ov1 { position:absolute; inset:0; background:linear-gradient(105deg,rgba(8,15,26,.95) 0%,rgba(8,15,26,.7) 45%,rgba(8,15,26,.15) 100%); }
.hero-ov2 { position:absolute; inset:0; background:linear-gradient(to top,rgba(8,15,26,.85) 0%,transparent 50%); }
.hero-ov3 { position:absolute; inset:0; background:radial-gradient(ellipse at 80% 50%,transparent 30%,rgba(8,15,26,.5) 100%); }

/* Right decorative rings */
.hero-deco { position:absolute; right:0; top:0; bottom:0; width:38%; z-index:1; pointer-events:none; }
.hero-deco-line {
  position:absolute; top:50%; right:8%; transform:translateY(-50%);
  width:1px; height:60%;
  background:linear-gradient(to bottom,transparent,rgba(255,255,255,.1) 30%,rgba(255,255,255,.1) 70%,transparent);
}
.hero-deco-circle {
  position:absolute; top:50%; right:12%; transform:translate(50%,-50%);
  width:320px; height:320px; border-radius:50%;
  border:1px solid rgba(255,255,255,.05);
  animation:spin 30s linear infinite;
}
.hero-deco-circle2 {
  position:absolute; top:50%; right:12%; transform:translate(50%,-50%);
  width:480px; height:480px; border-radius:50%;
  border:1px solid rgba(201,168,76,.06);
  animation:spin 45s linear infinite reverse;
}
@keyframes spin { to { transform:translate(50%,-50%) rotate(360deg); } }

/* ── Şefin Önerisi — sağ alt premium kart ────────────────── */
.hero-suggestion {
  position:absolute;
  right:2.5rem; bottom:96px;
  z-index:4;
  opacity:0; animation:fu 1.2s 1s forwards;
}
.hs-card {
  background:rgba(8,15,26,.82);
  backdrop-filter:blur(18px);
  -webkit-backdrop-filter:blur(18px);
  border:1px solid rgba(255,255,255,.1);
  border-bottom:2px solid var(--gold);
  border-radius:var(--radius);
  padding:1.1rem 1.4rem;
  width:280px;
  position:relative;
  overflow:hidden;
}
.hs-card::before {
  content:'';
  position:absolute; top:0; left:0; right:0; height:1px;
  background:linear-gradient(90deg, var(--gold), transparent 70%);
}
.hs-card-eyebrow {
  display:flex; align-items:center; gap:.5rem;
  font-size:.58rem; font-weight:600;
  letter-spacing:.28em; text-transform:uppercase;
  color:var(--gold); margin-bottom:.7rem;
}
.hs-card-eyebrow::before {
  content:''; width:14px; height:1px; background:var(--gold); flex-shrink:0;
}
.hs-card-dish {
  display:flex; align-items:center; gap:.85rem; margin-bottom:.75rem;
}
.hs-card-img {
  width:54px; height:54px; border-radius:var(--radius);
  object-fit:cover; flex-shrink:0;
  border:1px solid rgba(255,255,255,.1);
}
.hs-card-name {
  font-family:var(--serif);
  font-size:1.1rem; font-weight:400; color:#fff; line-height:1.2; margin-bottom:.25rem;
}
.hs-card-sub { font-size:.72rem; color:rgba(255,255,255,.4); line-height:1.5; }
.hs-card-footer {
  display:flex; align-items:center; justify-content:space-between;
  padding-top:.65rem; border-top:1px solid rgba(255,255,255,.07);
}
.hs-card-price {
  font-family:var(--serif); font-size:1.2rem; color:var(--gold-l); font-weight:300;
}
.hs-card-badge {
  font-size:.58rem; font-weight:600; letter-spacing:.12em; text-transform:uppercase;
  color:var(--navy); background:var(--gold); padding:.22rem .65rem; border-radius:2px;
}

/* Hero text layout */
.hero-wrap { position:relative; z-index:2; width:100%; padding-top:10vh; }
.hero-content { padding:0 3rem; max-width:760px; }

.h-eyebrow {
  display:flex; align-items:center; gap:14px;
  font-size:.68rem; font-weight:500; letter-spacing:.4em; text-transform:uppercase; color:var(--gold);
  margin-bottom:1.6rem;
  opacity:0; animation:fu .9s .3s forwards;
}
.h-eyebrow-line { width:34px; height:1px; background:var(--gold); }
.h-eyebrow-dot  { width:4px; height:4px; border-radius:50%; background:var(--gold); opacity:.5; }

.h-title {
  font-family:var(--serif);
  font-size:clamp(3.4rem,6.5vw,6rem);
  font-weight:300; line-height:1.08; color:#fff;
  margin-bottom:1.6rem;
  opacity:0; animation:fu 1s .5s forwards;
}
.h-title strong { display:block; font-weight:300; position:relative; }
.h-title strong::after {
  content:''; position:absolute; bottom:-6px; left:0;
  width:80px; height:2px;
  background:linear-gradient(90deg,var(--gold),transparent);
}
.h-title em { font-style:italic; color:var(--foam); display:block; }

.h-divider {
  width:54px; height:1px;
  background:linear-gradient(90deg,rgba(255,255,255,.4),transparent);
  margin-bottom:1.5rem;
  opacity:0; animation:fu .9s .65s forwards;
}

.h-sub {
  font-size:1.05rem; font-weight:300;
  color:rgba(255,255,255,.65); line-height:1.85; max-width:480px;
  margin-bottom:2.4rem;
  opacity:0; animation:fu 1s .75s forwards;
}

.h-actions {
  display:flex; align-items:center; gap:1.2rem; flex-wrap:wrap;
  opacity:0; animation:fu 1s .9s forwards;
}

/* CTA buttons */
.btn-primary-a {
  font-size:.72rem; font-weight:600; letter-spacing:.22em; text-transform:uppercase;
  background:var(--gold); color:var(--navy);
  border:none; border-radius:var(--radius); padding:.9rem 2.4rem;
  cursor:pointer; position:relative; overflow:hidden;
  text-decoration:none; display:inline-flex; align-items:center; gap:.5rem;
  transition:color .3s;
}
.btn-primary-a::before {
  content:''; position:absolute; inset:0;
  background:var(--gold-l); transform:translateX(-101%);
  transition:transform .4s var(--ease);
}
.btn-primary-a span { position:relative; z-index:1; }
.btn-primary-a:hover::before { transform:translateX(0); }

.btn-ghost-a {
  font-size:.72rem; font-weight:400; letter-spacing:.22em; text-transform:uppercase;
  color:rgba(255,255,255,.78);
  border:1px solid rgba(255,255,255,.28); border-radius:var(--radius); padding:.9rem 2.4rem;
  cursor:pointer; text-decoration:none;
  display:inline-flex; align-items:center; gap:.5rem;
  transition:border-color .3s, color .3s, background .3s;
}
.btn-ghost-a:hover { border-color:rgba(255,255,255,.65); color:#fff; background:rgba(255,255,255,.06); }

.play-btn {
  width:50px; height:50px; border-radius:50%;
  border:1px solid rgba(255,255,255,.25); background:rgba(255,255,255,.06);
  color:#fff; font-size:1.1rem;
  display:flex; align-items:center; justify-content:center;
  cursor:pointer; transition:all .3s; text-decoration:none;
}
.play-btn:hover { background:rgba(255,255,255,.14); border-color:rgba(255,255,255,.5); color:#fff; }

/* Stats row */
.h-stats {
  position:relative; z-index:2;
  display:flex; align-items:center;
  padding:0 3rem; margin-top:5vh;
  opacity:0; animation:fu 1s 1.1s forwards;
}
.h-stat { padding:1.4rem 2.2rem; border-left:1px solid rgba(255,255,255,.1); }
.h-stat:first-child { border-left:none; padding-left:0; }
.h-stat-n { font-family:var(--serif); font-size:2.5rem; font-weight:300; color:#fff; line-height:1; }
.h-stat-n em { font-style:normal; color:var(--gold-l); font-size:1.6rem; }
.h-stat-l { font-size:.62rem; font-weight:500; letter-spacing:.26em; text-transform:uppercase; color:rgba(168,216,216,.7); margin-top:.4rem; }

/* Scroll indicator */
.scroll-ind {
  position:absolute; bottom:2.5rem; left:3rem; z-index:2;
  display:flex; flex-direction:column; align-items:center; gap:8px;
  opacity:0; animation:fu 1s 1.4s forwards;
}
.scroll-track { width:1px; height:54px; background:rgba(255,255,255,.12); position:relative; overflow:hidden; }
.scroll-thumb { position:absolute; top:-20px; width:100%; height:20px; background:var(--gold); animation:scrollDown 2s ease-in-out infinite; }
@keyframes scrollDown { 0%{top:-20px} 100%{top:100%} }
.scroll-lbl { font-size:.56rem; letter-spacing:.28em; text-transform:uppercase; color:rgba(255,255,255,.3); writing-mode:vertical-rl; }

/* Hero wave */
.hero-wave { position:absolute; bottom:-2px; left:0; right:0; z-index:3; line-height:0; }

@keyframes fu { from{opacity:0;transform:translateY(24px)} to{opacity:1;transform:translateY(0)} }

/* ============================================================
   SECTION COMMONS
   ============================================================ */
section { position:relative; }
#about, #experience, #gallery, #testimonials { padding:7rem 0; background:var(--warm); }
#menu { padding:7rem 0; background:var(--navy); overflow:hidden; }
#experience { background:var(--sand); }

.section-eyebrow {
  font-family:var(--sans); font-size:.7rem; font-weight:600;
  letter-spacing:.36em; text-transform:uppercase; color:var(--teal);
  display:flex; align-items:center; gap:10px;
}
.section-eyebrow::before { content:''; width:26px; height:1px; background:var(--teal); flex-shrink:0; }
.section-title { font-family:var(--serif); font-size:clamp(2.2rem,4vw,3.3rem); font-weight:300; line-height:1.2; color:var(--navy); }
.section-title em { font-style:italic; color:var(--teal); }
.section-subtitle { font-size:.95rem; font-weight:300; color:var(--text-mid); line-height:1.8; max-width:540px; }
.divider-wave { height:2px; width:56px; background:linear-gradient(90deg,var(--teal),transparent); margin:1.2rem 0 1.8rem; }

.reveal { opacity:0; transform:translateY(32px); transition:opacity .8s ease, transform .8s ease; }
.reveal.visible { opacity:1; transform:translateY(0); }
.reveal-delay-1 { transition-delay:.12s; }
.reveal-delay-2 { transition-delay:.24s; }
.reveal-delay-3 { transition-delay:.36s; }

.btn-gold {
  font-family:var(--sans); font-size:.74rem; font-weight:600;
  letter-spacing:.2em; text-transform:uppercase;
  color:var(--navy); background:var(--gold);
  border:2px solid var(--gold); padding:.82rem 2.1rem;
  border-radius:var(--radius); transition:all .35s var(--ease);
  display:inline-block;
}
.btn-gold:hover { background:transparent; color:var(--gold); }

/* ============================================================
   ABOUT
   ============================================================ */
.about-img-wrapper { position:relative; }
.about-img-main { width:100%; height:510px; object-fit:cover; border-radius:var(--radius); box-shadow:var(--shadow-deep); }
.about-img-accent { position:absolute; width:210px; height:165px; object-fit:cover; border-radius:var(--radius); bottom:-30px; right:-26px; border:6px solid var(--warm); box-shadow:var(--shadow-soft); }
.about-badge { position:absolute; top:2.5rem; left:-1.4rem; width:108px; height:108px; background:var(--gold); border-radius:50%; display:flex; flex-direction:column; align-items:center; justify-content:center; box-shadow:0 8px 28px rgba(201,168,76,.4); }
.about-badge strong { font-family:var(--serif); font-size:1.9rem; font-weight:300; color:var(--navy); line-height:1; }
.about-badge span { font-size:.56rem; font-weight:600; letter-spacing:.14em; text-transform:uppercase; color:var(--navy); text-align:center; line-height:1.3; }
.about-feature { display:flex; align-items:flex-start; gap:1rem; padding:1.1rem 0; border-bottom:1px solid rgba(0,0,0,.06); }
.about-feature:last-child { border-bottom:none; }
.about-feature-icon { width:42px; height:42px; border-radius:50%; background:rgba(46,139,139,.1); display:flex; align-items:center; justify-content:center; flex-shrink:0; color:var(--teal); font-size:1rem; }
.about-feature h6 { font-size:.8rem; font-weight:600; letter-spacing:.08em; text-transform:uppercase; color:var(--navy); margin-bottom:.22rem; }
.about-feature p { font-size:.88rem; color:var(--text-mid); line-height:1.65; margin:0; }

/* ============================================================
   MENU
   ============================================================ */
#menu .section-title { color:#fff; }
.menu-tabs { border:none; gap:.5rem; flex-wrap:wrap; justify-content:center; }
.menu-tabs .nav-link {
  font-family:var(--sans); font-size:.73rem; font-weight:500; letter-spacing:.2em; text-transform:uppercase;
  color:rgba(255,255,255,.5); border:1px solid rgba(255,255,255,.18); border-radius:var(--radius);
  padding:.52rem 1.4rem; transition:all .3s; background:transparent;
}
.menu-tabs .nav-link:hover { color:rgba(255,255,255,.88); border-color:rgba(255,255,255,.38); }
.menu-tabs .nav-link.active { background:var(--gold); border-color:var(--gold); color:var(--navy); }

.menu-card-wrap { transition:opacity .35s, transform .35s; }
.menu-card { background:rgba(255,255,255,.04); border:1px solid rgba(255,255,255,.09); border-radius:var(--radius); overflow:hidden; transition:transform .4s var(--ease), box-shadow .4s, border-color .4s; }
.menu-card:hover { transform:translateY(-6px); box-shadow:0 20px 50px rgba(0,0,0,.4); border-color:rgba(201,168,76,.3); }
.menu-card-img { width:100%; height:220px; object-fit:cover; transition:transform .6s ease; }
.menu-card:hover .menu-card-img { transform:scale(1.06); }
.menu-card-body { padding:1.3rem 1.4rem; }
.menu-card-tag { font-size:.62rem; font-weight:600; letter-spacing:.28em; text-transform:uppercase; color:var(--gold); }
.menu-card-title { font-family:var(--serif); font-size:1.28rem; font-weight:400; color:#fff; margin:.3rem 0 .5rem; }
.menu-card-desc { font-size:.84rem; color:rgba(255,255,255,.48); line-height:1.65; margin:0; }
.menu-card-footer { display:flex; align-items:center; justify-content:space-between; padding:.9rem 1.4rem; border-top:1px solid rgba(255,255,255,.07); }
.menu-price { font-family:var(--serif); font-size:1.3rem; font-weight:300; color:var(--gold-l); }
.menu-price small { font-size:.74rem; color:rgba(255,255,255,.32); font-family:var(--sans); margin-left:3px; }
.btn-menu-sm { font-size:.66rem; font-weight:600; letter-spacing:.17em; text-transform:uppercase; color:var(--foam); border:1px solid rgba(168,216,216,.28); background:transparent; padding:.37rem .85rem; border-radius:var(--radius); transition:all .3s; cursor:pointer; }
.btn-menu-sm:hover { background:rgba(168,216,216,.1); border-color:var(--foam); color:#fff; }

/* ============================================================
   EXPERIENCE
   ============================================================ */
.exp-card { text-align:center; padding:2.4rem 1.8rem; border-radius:var(--radius); background:var(--warm); border:1px solid rgba(0,0,0,.06); box-shadow:var(--shadow-soft); transition:transform .4s var(--ease), box-shadow .4s; }
.exp-card:hover { transform:translateY(-8px); box-shadow:var(--shadow-deep); }
.exp-icon { width:70px; height:70px; margin:0 auto 1.4rem; background:linear-gradient(135deg,var(--ocean),var(--teal)); border-radius:50%; display:flex; align-items:center; justify-content:center; font-size:1.5rem; color:#fff; box-shadow:0 8px 22px rgba(46,139,139,.3); }
.exp-card h4 { font-family:var(--serif); font-size:1.35rem; font-weight:400; color:var(--navy); margin-bottom:.7rem; }
.exp-card p { font-size:.87rem; color:var(--text-mid); line-height:1.75; margin:0; }

/* ============================================================
   GALLERY
   ============================================================ */
.gallery-grid { display:grid; grid-template-columns:repeat(12,1fr); grid-template-rows:auto; gap:12px; }
.gallery-item { overflow:hidden; border-radius:var(--radius); position:relative; }
.gallery-item img { width:100%; height:100%; object-fit:cover; transition:transform .7s ease; }
.gallery-item:hover img { transform:scale(1.08); }
.gallery-item-overlay { position:absolute; inset:0; background:rgba(13,31,45,0); transition:background .3s; display:flex; align-items:center; justify-content:center; cursor:pointer; }
.gallery-item:hover .gallery-item-overlay { background:rgba(13,31,45,.45); }
.gallery-zoom { opacity:0; color:#fff; font-size:1.5rem; transition:opacity .3s; }
.gallery-item:hover .gallery-zoom { opacity:1; }
.g-span-7 { grid-column:span 7; height:320px; }
.g-span-5 { grid-column:span 5; height:320px; }
.g-span-4 { grid-column:span 4; height:250px; }

/* ============================================================
   RESERVATION CTA
   ============================================================ */
#reservation-cta { background:linear-gradient(135deg,var(--deep) 0%,var(--ocean) 100%); padding:5.5rem 0; overflow:hidden; }
#reservation-cta::before { content:''; position:absolute; top:-110px; right:-110px; width:400px; height:400px; border:1px solid rgba(255,255,255,.07); border-radius:50%; }
#reservation-cta::after  { content:''; position:absolute; bottom:-70px; left:-70px; width:260px; height:260px; border:1px solid rgba(255,255,255,.05); border-radius:50%; }
.cta-title { font-family:var(--serif); font-size:clamp(2rem,4vw,3.1rem); font-weight:300; color:#fff; line-height:1.2; }
.cta-title em { font-style:italic; color:var(--gold-l); }
.cta-sub { font-size:.9rem; color:rgba(255,255,255,.6); line-height:1.75; margin:1rem 0 2rem; }
.reservation-form-inline { background:rgba(255,255,255,.07); border:1px solid rgba(255,255,255,.14); border-radius:var(--radius); padding:2rem; backdrop-filter:blur(8px); }
.reservation-form-inline .form-label { font-size:.68rem; font-weight:600; letter-spacing:.2em; text-transform:uppercase; color:var(--foam); margin-bottom:.4rem; }
.reservation-form-inline .form-control,
.reservation-form-inline .form-select { background:rgba(255,255,255,.09); border:1px solid rgba(255,255,255,.18); color:#fff; border-radius:var(--radius); font-family:var(--sans); font-size:.9rem; padding:.62rem .9rem; transition:border-color .3s, background .3s; }
.reservation-form-inline .form-control::placeholder { color:rgba(255,255,255,.3); }
.reservation-form-inline .form-control:focus,
.reservation-form-inline .form-select:focus { background:rgba(255,255,255,.14); border-color:var(--gold); box-shadow:0 0 0 3px rgba(201,168,76,.18); color:#fff; outline:none; }
.reservation-form-inline .form-select option { background:var(--deep); color:#fff; }

/* ============================================================
   TESTIMONIALS
   ============================================================ */
.testimonial-card { background:var(--sand); border-radius:var(--radius); padding:2.1rem 1.9rem; border-left:3px solid var(--teal); transition:transform .4s var(--ease), box-shadow .4s; }
.testimonial-card:hover { transform:translateY(-5px); box-shadow:var(--shadow-soft); }
.testimonial-quote { font-size:2.8rem; color:var(--teal); font-family:var(--serif); line-height:1; margin-bottom:.3rem; opacity:.45; }
.testimonial-text { font-family:var(--serif); font-size:1.02rem; font-style:italic; color:var(--navy); line-height:1.8; margin-bottom:1.4rem; }
.testimonial-stars { color:var(--gold); font-size:.85rem; letter-spacing:2px; margin-bottom:.75rem; }
.testimonial-author { display:flex; align-items:center; gap:.8rem; }
.testimonial-avatar { width:42px; height:42px; border-radius:50%; object-fit:cover; border:2px solid var(--teal); }
.testimonial-name { font-size:.8rem; font-weight:600; letter-spacing:.07em; text-transform:uppercase; color:var(--navy); margin:0; }
.testimonial-origin { font-size:.73rem; color:var(--text-light); margin:0; }

/* ============================================================
   FOOTER
   ============================================================ */
footer { background:var(--navy); color:rgba(255,255,255,.6); padding:5rem 0 0; }
.footer-brand { font-family:var(--serif); font-size:1.95rem; font-weight:300; color:#fff; }
.footer-brand span { color:var(--gold); }
.footer-tagline { font-size:.7rem; font-weight:500; letter-spacing:.28em; text-transform:uppercase; color:var(--foam); margin:.2rem 0 1.4rem; }
.footer-desc { font-size:.87rem; line-height:1.8; color:rgba(255,255,255,.45); max-width:290px; }
.footer-heading { font-size:.68rem; font-weight:600; letter-spacing:.28em; text-transform:uppercase; color:var(--gold); margin-bottom:1.4rem; }
.footer-links { list-style:none; padding:0; }
.footer-links li { margin-bottom:.65rem; }
.footer-links a { font-size:.87rem; color:rgba(255,255,255,.48); transition:color .3s, padding-left .3s; display:inline-block; }
.footer-links a:hover { color:var(--foam); padding-left:6px; }
.footer-contact-item { display:flex; align-items:flex-start; gap:.8rem; margin-bottom:.95rem; }
.footer-contact-item i { color:var(--teal); margin-top:3px; flex-shrink:0; }
.footer-contact-item span { font-size:.87rem; color:rgba(255,255,255,.5); line-height:1.6; }
.social-links { display:flex; gap:.55rem; margin-top:1.4rem; }
.social-link { width:36px; height:36px; border:1px solid rgba(255,255,255,.14); border-radius:var(--radius); display:flex; align-items:center; justify-content:center; color:rgba(255,255,255,.5); font-size:.88rem; transition:all .3s; }
.social-link:hover { background:var(--teal); border-color:var(--teal); color:#fff; }
.footer-bottom {
    border-top:1px solid rgba(255,255,255,.08);
    padding:1.4rem 0;
    margin-top:4rem;
}

.ftr-bottom-grid {
    display:grid;
    grid-template-columns:1fr auto 1fr;
    align-items:center;
    gap:20px;
}

.ftr-copy {
    margin:0;
    font-size:.73rem;
    color:rgba(255,255,255,.28);
}

/* Fikir Bulutu kartı */
.built-by-card {
    position:relative;
    display:flex;
    align-items:center;
    justify-self:center;
    gap:12px;
    overflow:hidden;
    padding:9px 16px;
    background:rgba(255,255,255,.04);
    border:1px solid rgba(255,255,255,.09);
    border-radius:10px;
    text-decoration:none;
    transition:
        background .25s ease,
        border-color .25s ease,
        transform .25s ease;
}

.built-by-card::before {
    content:'';
    position:absolute;
    inset:0;
    background:linear-gradient(
        135deg,
        rgba(201,168,76,.18) 0%,
        transparent 65%
    );
    opacity:0;
    transition:opacity .3s ease;
}

.built-by-card:hover {
    background:rgba(201,168,76,.08);
    border-color:rgba(201,168,76,.45);
    transform:translateY(-2px);
}

.built-by-card:hover::before {
    opacity:1;
}

.bbc-glow {
    position:absolute;
    top:-16px;
    right:-16px;
    width:65px;
    height:65px;
    border-radius:50%;
    background:radial-gradient(
        circle,
        rgba(201,168,76,.35) 0%,
        transparent 70%
    );
    opacity:0;
    transition:opacity .3s ease;
    z-index:0;
}

.built-by-card:hover .bbc-glow {
    opacity:1;
}

.bbc-logo {
    position:relative;
    z-index:1;
    display:flex;
    align-items:center;
    justify-content:center;
}

.bbc-logo img {
    display:block;
    width:auto;
    height:28px;
    max-width:130px;
    object-fit:contain;
}

.bbc-sep {
    position:relative;
    z-index:1;
    width:1px;
    height:26px;
    flex-shrink:0;
    background:rgba(255,255,255,.12);
}

.bbc-info {
    position:relative;
    z-index:1;
    line-height:1.25;
}

.bbc-made {
    margin-bottom:2px;
    font-size:.57rem;
    font-weight:600;
    letter-spacing:.12em;
    text-transform:uppercase;
    color:rgba(255,255,255,.35);
}

.bbc-name {
    font-size:.77rem;
    font-weight:600;
    color:rgba(255,255,255,.7);
    transition:color .2s ease;
}

.built-by-card:hover .bbc-name {
    color:#fff;
}

/* Sağ bağlantılar */
.ftr-policy-links {
    display:flex;
    justify-content:flex-end;
    align-items:center;
    gap:16px;
}

.ftr-policy-links a {
    font-size:.73rem;
    color:rgba(255,255,255,.28);
    text-decoration:none;
    transition:color .2s ease;
}

.ftr-policy-links a:hover {
    color:var(--gold);
}

/* Mobil */
@media (max-width:767px) {
    .ftr-bottom-grid {
        grid-template-columns:1fr;
        justify-items:center;
        text-align:center;
        gap:16px;
    }

    .built-by-card {
        justify-self:center;
    }

    .ftr-policy-links {
        justify-content:center;
        flex-wrap:wrap;
    }
}
/* ============================================================
   BACK TO TOP
   ============================================================ */
#backToTop {
  position:fixed; bottom:2rem; right:2rem;
  width:44px; height:44px;
  background:var(--gold); color:var(--navy);
  border:none; border-radius:var(--radius);
  display:flex; align-items:center; justify-content:center;
  font-size:.95rem; cursor:pointer;
  opacity:0; transform:translateY(10px);
  transition:all .4s var(--ease); z-index:999;
  box-shadow:0 6px 20px rgba(201,168,76,.4);
}
#backToTop.visible { opacity:1; transform:translateY(0); }
#backToTop:hover { background:var(--gold-l); transform:translateY(-3px); }

/* ============================================================
   RESPONSIVE
   ============================================================ */
@media (max-width:1199px) {
  .dd-wide { min-width:560px; }
  .dd-cols { grid-template-columns:1fr 1fr 120px; }
  .dd-col:nth-child(3) { display:none; }
}

@media (max-width:991px) {
  .nav-toggler { display:flex; }

  /* Sidebar — mobilde tam ekran yüksekliği, sağdan kayar */
  .nav-links {
    display:flex !important;
    flex-direction:column !important;
    align-items:stretch !important;
    position:fixed !important;
    top:0 !important; right:0 !important;
    width:min(340px,88vw) !important;
    height:100% !important;
    height:100dvh !important;
    background:rgba(6,12,22,.97) !important;
    backdrop-filter:blur(24px) !important;
    -webkit-backdrop-filter:blur(24px) !important;
    padding:0 !important;
    gap:0 !important;
    overflow:hidden !important;
    transform:translateX(100%) !important;
    transition:transform .42s var(--ease), visibility .42s !important;
    visibility:hidden !important;
    z-index:900 !important;
    border-left:1px solid rgba(255,255,255,.08) !important;
    flex-shrink:unset !important;
  }
  .nav-links.open {
    transform:translateX(0) !important;
    visibility:visible !important;
  }

  /* Nav close — sadece mobilde göster */
  .nav-close {
    display:flex !important;
    align-items:center !important;
    justify-content:space-between !important;
    flex-shrink:0 !important;
    width:100% !important;
    height:64px !important;
    min-height:64px !important;
    background:rgba(6,12,22,.97) !important;
    border:none !important;
    border-bottom:1px solid rgba(255,255,255,.1) !important;
    color:rgba(255,255,255,.55) !important;
    font-size:1.25rem !important;
    cursor:pointer !important;
    padding:0 1.5rem !important;
    transition:color .2s !important;
  }
  .nav-close:hover { color:#fff !important; }

  /* Scroll body — mobilde flex column */
  .nav-scroll-body {
    display:flex !important;
    flex-direction:column !important;
    flex:1 1 0 !important;
    overflow-y:auto !important;
    overflow-x:hidden !important;
    -webkit-overflow-scrolling:touch !important;
    padding-bottom:2rem !important;
  }

  .nav-dot { display:none; }

  .nl {
    padding:1rem 1.8rem;
    font-size:.78rem;
    border-bottom:1px solid rgba(255,255,255,.05);
    width:100%;
    display:block;
  }
  .nl::after { display:none; }

    .nav-dropdown {
        display:block;
        width:100%;
    }

    .nav-dropdown > .nd-toggle {
        width:100%;
        text-align:left;
        display:flex;
        justify-content:space-between;
        align-items:center;
        padding:1rem 1.8rem;
        border-bottom:1px solid rgba(255,255,255,.05);
        font-size:.78rem;
    }

    .nav-dropdown > .dd-panel {
        position:static !important;
        transform:none !important;
        opacity:1 !important;
        pointer-events:auto !important;
        background:rgba(255,255,255,.03);
        border:none;
        box-shadow:none;
        backdrop-filter:none;
        -webkit-backdrop-filter:none;
        padding:0;
        border-radius:0;
        max-height:0;
        overflow:hidden;
        transition:max-height .35s var(--ease);
        display:block !important;
        min-width:unset;
    }

    .nav-dropdown > .dd-panel::before {
        display:none;
    }

    .nav-dropdown.open > .dd-panel {
        max-height:600px;
    }

    .nav-dropdown.open > .nd-toggle .dd-arrow {
        transform:rotate(180deg);
    }

  .dd-wide { padding:0; }
  .dd-cols { grid-template-columns:1fr; gap:0; }
  .dd-col {
    border-left:none !important;
    padding-left:0 !important;
  }
  .dd-featured { display:none; }
  .dd-heading {
    font-size:.6rem;
    padding:.75rem 1.8rem .4rem 2.4rem;
    margin:0;
    border-bottom:none;
  }
  .dd-item {
    padding:.75rem 1.8rem .75rem 2.4rem;
    border-bottom:1px solid rgba(255,255,255,.04);
  }
  .dd-item:last-child { border-bottom:none; }

  .nav-cta {
    margin:1.2rem 1.8rem;
    text-align:center;
    display:block;
    border-radius:var(--radius);
  }

  /* Dil seçici mobilde sidebar içinde düz link gibi görünsün */
  .nav-lang { margin-left:0; width:100%; }
  .nav-lang-btn {
    width:100%; padding:1rem 1.8rem;
    border-bottom:1px solid rgba(255,255,255,.05);
    font-size:.78rem;
    justify-content:space-between;
  }
  .nav-lang-panel {
    position:static !important;
    transform:none !important;
    opacity:1 !important;
    pointer-events:auto !important;
    background:rgba(255,255,255,.03);
    border:none; box-shadow:none;
    backdrop-filter:none;
    padding:0; border-radius:0;
    min-width:unset;
    max-height:0; overflow:hidden;
    transition:max-height .35s var(--ease);
    display:block !important;
  }
  .nav-lang.open .nav-lang-panel { max-height:300px; }
  .nav-lang-item { padding:.75rem 1.8rem .75rem 2.4rem; border-bottom:1px solid rgba(255,255,255,.04); }
  .nav-lang-item:last-child { border-bottom:none; }

  /* Hero adjustments */
  .hero-suggestion, .hero-deco { display:none; }
  .hero-content, .h-stats { padding:0 1.5rem; }
  .h-title { font-size:clamp(2.6rem,8vw,3.8rem); }
  .h-stats { flex-wrap:wrap; gap:.5rem; }
  .h-stat { border-left:none; padding-left:0; }
  .scroll-ind { display:none; }

  /* Nav inner */
  .nav-inner { padding:0 1.5rem; }

  /* About */
  .about-badge { left:.5rem; }
  .about-img-accent { display:none; }
}

@media (max-width:767px) {
  #about, #experience, #gallery, #testimonials { padding:5rem 0; }
  #menu { padding:5rem 0; }
  .g-span-7, .g-span-5, .g-span-4 { grid-column:span 12; height:220px; }
  .reservation-form-inline { padding:1.5rem 1.2rem; }
  .cta-title { font-size:clamp(1.9rem,7vw,2.6rem); }
}


/* Google Translate üst bildirim çubuğunu gizle */
.goog-te-banner-frame,
.goog-te-banner-frame.skiptranslate,
iframe.goog-te-banner-frame,
.VIpgJd-ZVi9od-ORHb-OEVmcd {
  display: none !important;
  visibility: hidden !important;
  height: 0 !important;
}

/* Google'ın sayfayı aşağı kaydırmasını engelle */
html,
body {
  top: 0 !important;
  margin-top: 0 !important;
}

/* Google Translate seçim bileşenini gizle */
#google_translate_element2,
.goog-te-gadget {
  display: none !important;
}

/* Çevrilen yazılardaki arka plan efektini kaldır */
.goog-text-highlight {
  background: transparent !important;
  box-shadow: none !important;
}
