/* =====================================================
   Galip Gülbaşoğulları Baklava — warm luxury
   ===================================================== */
:root{
  --bg:#0a0b08; --bg-2:#101109; --surface:#15170f; --surface-2:#1d2014;
  --line:rgba(147,207,91,.15); --line-2:rgba(147,207,91,.30);
  --cream:#f4f5ef; --muted:#b7bea8; --muted-2:#7e856f;
  --gold:#6fb13a; --gold-2:#93cf5b; --gold-deep:#4e8a26;
  --gold-grad:linear-gradient(135deg,#9bd862 0%,#6fb13a 48%,#4e8a26 100%);
  --pist:#6fb13a; --pist-2:#a6dd6e;
  --radius:18px; --maxw:1200px; --ease:cubic-bezier(.22,1,.36,1);
  --font-d:"Baloo 2",system-ui,sans-serif; --font-b:"Manrope",system-ui,sans-serif;
}
*{ box-sizing:border-box; margin:0; padding:0; }
html{ scroll-behavior:smooth; background:var(--bg); -webkit-text-size-adjust:100%; }
body{ background:var(--bg); color:var(--cream); font-family:var(--font-b); line-height:1.65; overflow-x:clip; -webkit-font-smoothing:antialiased; }
::selection{ background:var(--gold); color:#0a0b08; }
a{ color:inherit; text-decoration:none; }
img{ display:block; max-width:100%; }
button{ font-family:inherit; cursor:pointer; border:none; background:none; color:inherit; }
ul{ list-style:none; }
html{ scrollbar-color:var(--gold-deep) var(--bg); }
::-webkit-scrollbar{ width:11px; } ::-webkit-scrollbar-track{ background:var(--bg); }
::-webkit-scrollbar-thumb{ background:linear-gradient(var(--gold-deep),var(--gold)); border-radius:10px; border:3px solid var(--bg); }

.container{ width:100%; max-width:var(--maxw); margin-inline:auto; padding-inline:clamp(20px,5vw,40px); }
.section{ padding:clamp(4.5rem,10vh,8rem) 0; position:relative; }
.eyebrow{ display:inline-flex; align-items:center; gap:10px; font-size:.72rem; font-weight:700; letter-spacing:.22em; text-transform:uppercase; color:var(--gold-2); margin-bottom:14px; }
.eyebrow::before{ content:""; width:26px; height:1px; background:var(--gold); }
.section__title{ font-family:var(--font-d); font-weight:600; font-size:clamp(2rem,4.6vw,3.4rem); line-height:1.08; letter-spacing:-.01em; }
.section__title em{ font-style:italic; color:transparent; background:var(--gold-grad); -webkit-background-clip:text; background-clip:text; }
.section__head{ max-width:46rem; margin:0 auto clamp(2.4rem,5vh,3.6rem); text-align:center; }
.section__head .eyebrow{ justify-content:center; }
.section__lead{ color:var(--muted); margin-top:14px; font-size:1.05rem; }

/* grain */
.grain{ position:fixed; inset:0; z-index:1; pointer-events:none; opacity:.05; mix-blend-mode:overlay;
  background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 160 160' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='2'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E"); }

/* buttons */
.btn{ display:inline-flex; align-items:center; justify-content:center; gap:9px; font-weight:600; font-size:.92rem; padding:13px 24px; border-radius:100px; transition:.35s var(--ease); white-space:nowrap; }
.btn--lg{ padding:16px 30px; font-size:1rem; }
.btn--gold{ background:var(--gold-grad); color:#0a0b08; box-shadow:0 12px 30px -12px rgba(111,177,58,.6); }
.btn--gold:hover{ transform:translateY(-3px); box-shadow:0 18px 40px -12px rgba(111,177,58,.7); }
.btn--ghost{ border:1px solid var(--line-2); color:var(--cream); background:rgba(147,207,91,.04); }
.btn--ghost:hover{ border-color:var(--gold); color:var(--gold-2); transform:translateY(-3px); }
.btn--wa{ background:#1f8f4e; color:#fff; } .btn--wa:hover{ transform:translateY(-3px); filter:brightness(1.07); }

/* ===== Nav ===== */
.nav{ position:fixed; top:0; left:0; right:0; z-index:60; display:flex; align-items:center; justify-content:space-between; gap:18px;
  padding:16px clamp(20px,5vw,40px); transition:.4s var(--ease); }
.nav.is-scrolled{ background:rgba(23,17,11,.82); backdrop-filter:blur(16px) saturate(140%); padding-block:11px; border-bottom:1px solid var(--line); }
.nav__logo{ display:flex; align-items:center; gap:11px; }
.nav__logo-mark{ width:40px; height:40px; flex-shrink:0; display:grid; place-items:center; border-radius:11px; background:var(--gold-grad); color:#0a0b08; font-family:var(--font-d); font-weight:700; font-size:1.35rem; box-shadow:0 6px 16px -6px rgba(111,177,58,.6); }
.nav__logo-text{ font-family:var(--font-d); font-weight:600; font-size:1.05rem; line-height:1.05; display:flex; flex-direction:column; }
.nav__logo-text small{ font-family:var(--font-b); font-size:.6rem; letter-spacing:.34em; text-transform:uppercase; color:var(--gold-2); margin-top:3px; }
.nav__links{ display:flex; gap:30px; margin-left:auto; }
.nav__links a{ font-size:.92rem; font-weight:500; color:var(--muted); transition:.3s; position:relative; }
.nav__links a:hover{ color:var(--cream); }
.nav__links a::after{ content:""; position:absolute; left:0; bottom:-6px; width:0; height:1px; background:var(--gold); transition:width .3s var(--ease); }
.nav__links a:hover::after{ width:100%; }
.nav__actions{ display:flex; align-items:center; gap:12px; }
.nav__burger{ display:none; width:42px; height:42px; border-radius:11px; border:1px solid var(--line-2); position:relative; }
.nav__burger span{ position:absolute; left:11px; right:11px; height:2px; background:var(--cream); transition:.3s var(--ease); }
.nav__burger span:nth-child(1){ top:16px; } .nav__burger span:nth-child(2){ bottom:16px; }
body.menu-open .nav__burger span:nth-child(1){ top:20px; transform:rotate(45deg); }
body.menu-open .nav__burger span:nth-child(2){ bottom:20px; transform:rotate(-45deg); }

/* ===== Hero ===== */
.hero{ position:relative; isolation:isolate; min-height:100svh; display:flex; align-items:flex-end; padding-bottom:clamp(4rem,9vh,7rem); overflow:hidden; }
.hero__media{ position:absolute; inset:0; z-index:0; }
.hero__img{ width:100%; height:100%; object-fit:cover; filter:brightness(.86) saturate(1.08); transform:scale(1.06); animation:heroZoom 14s var(--ease) forwards; }
@keyframes heroZoom{ to{ transform:scale(1); } }
.hero__veil{ position:absolute; inset:0; background:
  linear-gradient(90deg, rgba(7,9,6,.97) 0%, rgba(7,9,6,.9) 42%, rgba(7,9,6,.55) 74%, rgba(7,9,6,.28) 100%),
  linear-gradient(0deg, rgba(7,9,6,.9) 0%, rgba(7,9,6,.28) 38%, transparent 64%),
  linear-gradient(180deg, rgba(7,9,6,.66) 0%, transparent 20%); }
.hero__inner{ position:relative; z-index:2; }
.hero__eyebrow{ font-size:.78rem; font-weight:700; letter-spacing:.3em; text-transform:uppercase; color:var(--gold-2); margin-bottom:18px; }
.hero__title{ font-family:var(--font-d); font-weight:600; line-height:.92; letter-spacing:-.02em; text-shadow:0 2px 36px rgba(7,9,6,.7); }
.hero__eyebrow, .hero__tag, .hero__meta{ text-shadow:0 1px 20px rgba(7,9,6,.8); }
.hero__galip{ display:inline-block; font-family:var(--font-d); font-weight:700; font-size:clamp(1rem,2.4vw,1.7rem); color:#0a0b08; background:var(--gold-grad); padding:.05em .58em .16em; border-radius:.42em; transform:rotate(-2.5deg); box-shadow:0 10px 26px -10px rgba(111,177,58,.6); }
.hero__title em{ display:block; margin-top:.16em; font-style:normal; font-weight:800; font-size:clamp(2.7rem,10.5vw,7rem); line-height:.88; letter-spacing:-.01em; color:transparent; background:var(--gold-grad); -webkit-background-clip:text; background-clip:text; }
.hero__title em b{ font-weight:800; color:var(--cream); -webkit-text-fill-color:var(--cream); }
.hero__title em{ filter:drop-shadow(0 3px 22px rgba(0,0,0,.85)); }
.hero__tag{ margin:24px 0 30px; font-size:clamp(1.05rem,1.7vw,1.35rem); color:var(--cream); max-width:30ch; }
.hero__tag b{ color:var(--pist-2); font-weight:700; }
.hero__cta{ display:flex; gap:14px; flex-wrap:wrap; }
.hero__meta{ margin-top:34px; display:flex; align-items:center; gap:14px; flex-wrap:wrap; font-size:.8rem; letter-spacing:.04em; color:var(--muted); }
.hero__meta i{ color:var(--gold); font-style:normal; }
.hero__scroll{ position:absolute; bottom:24px; left:50%; transform:translateX(-50%); display:flex; flex-direction:column; align-items:center; gap:8px; font-size:.62rem; letter-spacing:.24em; text-transform:uppercase; color:var(--muted-2); z-index:2; }
.hero__scroll i{ width:1px; height:40px; background:linear-gradient(var(--gold),transparent); position:relative; overflow:hidden; }
.hero__scroll i::after{ content:""; position:absolute; top:-50%; left:0; width:100%; height:50%; background:var(--gold-2); animation:scrolldot 1.8s ease-in-out infinite; }
@keyframes scrolldot{ to{ top:100%; } }

/* ===== Marquee ===== */
.marquee{ border-block:1px solid var(--line); padding:22px 0; overflow:hidden; background:var(--bg-2); }
.marquee__track{ display:flex; align-items:center; gap:30px; white-space:nowrap; width:max-content; animation:marq 34s linear infinite; }
.marquee__track span{ font-family:var(--font-d); font-style:italic; font-size:clamp(1.3rem,3vw,2rem); color:var(--muted); }
.marquee__track i{ color:var(--gold); font-size:.9rem; }
@keyframes marq{ to{ transform:translateX(-50%); } }

/* ===== Story ===== */
.story__grid{ display:grid; grid-template-columns:.95fr 1.05fr; gap:clamp(2rem,5vw,5rem); align-items:center; }
.story__media{ position:relative; border-radius:var(--radius); overflow:hidden; aspect-ratio:5/4; box-shadow:0 40px 80px -40px rgba(0,0,0,.8); border:1px solid var(--line); }
.story__media img{ width:100%; height:100%; object-fit:cover; }
.story__badge{ position:absolute; bottom:16px; left:16px; background:rgba(23,17,11,.7); backdrop-filter:blur(8px); border:1px solid var(--line-2); color:var(--cream); font-size:.8rem; padding:9px 16px; border-radius:100px; }
.story__badge b{ color:var(--gold-2); }
.story__text p{ color:var(--muted); margin-bottom:16px; font-size:1.04rem; }
.story__text p b{ color:var(--pist-2); }
.story__title, .story__text .section__title{ margin-bottom:18px; }
.story__points{ margin-top:24px; display:flex; flex-direction:column; gap:12px; }
.story__points li{ display:flex; align-items:center; gap:12px; font-size:.96rem; color:var(--cream); }
.story__points svg{ width:22px; height:22px; flex-shrink:0; fill:none; stroke:var(--gold-2); stroke-width:2.4; stroke-linecap:round; stroke-linejoin:round; padding:4px; background:rgba(111,177,58,.12); border-radius:50%; }

/* ===== Menu / dishes ===== */
.menu{ background:var(--bg-2); }
.menu__grid{ display:grid; grid-template-columns:repeat(4,1fr); gap:22px; }
.dish{ background:var(--surface); border:1px solid var(--line); border-radius:var(--radius); overflow:hidden; transition:.5s var(--ease); }
.dish:hover{ transform:translateY(-6px); border-color:var(--line-2); box-shadow:0 30px 60px -34px rgba(0,0,0,.8); }
.dish__img{ position:relative; aspect-ratio:4/3; overflow:hidden; }
.dish__img img{ width:100%; height:100%; object-fit:cover; transition:transform .7s var(--ease); }
.dish:hover .dish__img img{ transform:scale(1.07); }
.dish__tag{ position:absolute; top:12px; left:12px; font-size:.62rem; font-weight:700; letter-spacing:.08em; text-transform:uppercase; color:#0a0b08; background:var(--gold-grad); padding:6px 12px; border-radius:100px; }
.dish__tag--green{ background:linear-gradient(135deg,#aecd6f,#8aab4a); }
.dish__body{ padding:20px 20px 24px; }
.dish__body h3{ font-family:var(--font-d); font-weight:600; font-size:1.3rem; }
.dish__body p{ color:var(--muted); font-size:.92rem; margin-top:7px; }
.menu__more{ text-align:center; margin-top:30px; color:var(--muted); }
.menu__more b{ color:var(--gold-2); font-weight:600; }

/* ===== Reel / atölye ===== */
.reel{ position:relative; overflow:hidden; }
.reel__glow{ position:absolute; top:20%; left:-10%; width:600px; height:600px; border-radius:50%; filter:blur(140px); background:radial-gradient(circle,rgba(111,177,58,.18),transparent 70%); z-index:0; }
.reel__inner{ position:relative; z-index:1; display:grid; grid-template-columns:1fr .8fr; gap:clamp(2rem,5vw,5rem); align-items:center; }
.reel__text p{ color:var(--muted); margin:16px 0 24px; font-size:1.05rem; max-width:42ch; }
.reel__text .section__title{ margin-bottom:4px; }
.reel__stage{ perspective:1300px; display:grid; place-items:center; }
.reel__frame{ position:relative; width:min(78vw,330px); aspect-ratio:9/16; border-radius:26px; overflow:hidden;
  border:1px solid var(--line-2); transform:perspective(1300px); transform-style:preserve-3d; will-change:transform;
  box-shadow:0 50px 110px -40px rgba(0,0,0,.9), 0 0 0 1px rgba(111,177,58,.12), 0 0 90px -24px rgba(111,177,58,.32); }
.reel__video{ width:100%; height:100%; object-fit:cover; display:block; }
.reel__sheen{ position:absolute; inset:0; pointer-events:none; background:linear-gradient(125deg,rgba(255,255,255,.08),transparent 26%), radial-gradient(120% 80% at 50% 0%,transparent 64%,rgba(7,9,6,.5)); }

/* ===== Contact ===== */
.contact{ background:var(--bg-2); }
.contact__grid{ display:grid; grid-template-columns:1fr 1fr; gap:clamp(2rem,5vw,4rem); align-items:center; }
.contact__text p{ color:var(--muted); margin:16px 0 8px; }
.contact__text .section__title{ margin-bottom:4px; }
.contact__list{ margin:22px 0 26px; display:flex; flex-direction:column; gap:16px; }
.contact__list li{ display:flex; gap:14px; align-items:flex-start; }
.contact__ic{ font-size:1.2rem; flex-shrink:0; width:42px; height:42px; display:grid; place-items:center; background:var(--surface); border:1px solid var(--line); border-radius:12px; }
.contact__list b{ display:block; font-size:.74rem; letter-spacing:.14em; text-transform:uppercase; color:var(--gold-2); margin-bottom:3px; }
.contact__list a{ color:var(--cream); border-bottom:1px solid transparent; transition:.3s; }
.contact__list a:hover{ border-color:var(--gold); color:var(--gold-2); }
.contact__btns{ display:flex; gap:12px; flex-wrap:wrap; }
.contact__map{ border-radius:var(--radius); overflow:hidden; border:1px solid var(--line-2); box-shadow:0 40px 80px -44px rgba(0,0,0,.8); height:100%; min-height:340px; }
.contact__map iframe{ width:100%; height:100%; min-height:340px; border:0; display:block; filter:grayscale(.2) contrast(1.05); }

/* ===== Footer ===== */
.footer{ border-top:1px solid var(--line); padding:42px 0; background:var(--bg); }
.footer__inner{ display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:20px; }
.footer__brand{ display:flex; align-items:center; gap:12px; }
.footer__brand b{ font-family:var(--font-d); font-size:1.05rem; display:block; }
.footer__brand small{ color:var(--muted-2); font-size:.78rem; }
.footer__links{ display:flex; gap:22px; }
.footer__links a{ color:var(--muted); font-size:.9rem; transition:.3s; }
.footer__links a:hover{ color:var(--gold-2); }
.footer__credit{ width:100%; text-align:center; color:var(--muted-2); font-size:.8rem; border-top:1px solid var(--line); padding-top:20px; margin-top:6px; }
.footer__credit a{ color:var(--gold-2); }

/* ===== Call FAB (mobile) ===== */
.callfab{ position:fixed; right:18px; bottom:18px; z-index:55; width:56px; height:56px; border-radius:50%; display:none; place-items:center; background:var(--gold-grad); color:#0a0b08; box-shadow:0 12px 30px -8px rgba(111,177,58,.7); animation:fabPulse 2.4s ease-out infinite; }
@keyframes fabPulse{ 0%{ box-shadow:0 12px 30px -8px rgba(111,177,58,.7), 0 0 0 0 rgba(111,177,58,.5);} 70%{ box-shadow:0 12px 30px -8px rgba(111,177,58,.7), 0 0 0 16px rgba(111,177,58,0);} 100%{ box-shadow:0 12px 30px -8px rgba(111,177,58,.7), 0 0 0 0 rgba(111,177,58,0);} }

/* ===== Reveal ===== */
.reveal{ opacity:0; transform:translateY(28px); transition:opacity .9s var(--ease), transform .9s var(--ease); }
.reveal.is-in{ opacity:1; transform:none; }

/* ===== Responsive ===== */
@media (max-width:900px){
  .story__grid, .reel__inner, .contact__grid{ grid-template-columns:1fr; gap:2.4rem; }
  .reel__stage{ order:-1; }
  .menu__grid{ grid-template-columns:repeat(2,1fr); gap:16px; }
}
@media (max-width:760px){
  .nav__links{ position:fixed; inset:0; flex-direction:column; justify-content:center; align-items:center; gap:30px; background:rgba(7,9,6,.98); backdrop-filter:blur(20px); transform:translateX(100%); transition:transform .5s var(--ease); margin:0; }
  .nav__links a{ font-size:1.4rem; font-family:var(--font-d); color:var(--cream); }
  body.menu-open .nav__links{ transform:none; }
  .nav__burger{ display:block; z-index:61; }
  .nav__cta span{ display:none; } .nav__cta{ padding:11px; }
  .callfab{ display:grid; }
  .hero{ align-items:center; padding-top:90px; }
  .hero__meta{ font-size:.72rem; gap:10px; }
  .hero__veil{ background:linear-gradient(0deg, rgba(7,9,6,.95) 10%, rgba(7,9,6,.72) 54%, rgba(7,9,6,.62) 100%), linear-gradient(180deg, rgba(7,9,6,.7) 0%, transparent 22%); }
}
@media (max-width:440px){
  .menu__grid{ grid-template-columns:1fr; }
}
@media (prefers-reduced-motion:reduce){
  .reveal{ opacity:1; transform:none; transition:none; }
  .hero__img{ animation:none; transform:none; }
  .reel__frame{ transform:none !important; }
}
