/* ============================================================
   Carlott No.1 — "Kayıt Defteri"

   Yön: Site bir üretici defteridir. Her nesne bir kayıttır ve her
   kaydın, ürünün kendi üzerindeki gibi kazınmış bir pirinç plakası vardır.

   İMZA ÖĞESİ: kazınmış pirinç plaka (.plaka). Cesaret bütçesinin
   tamamı buraya harcandı; başka hiçbir yerde pirinç yüksek sesle
   kullanılmıyor. Plakayı kaldırın, sayfa kimliğini kaybeder.

   Renkler tahmin değil, MARKANIN KENDİ LOGOSUNDAN (mark.jpg) örneklendi:
     metal gövde #9C8165 · ışık alan #D0B696 · vurgu #FCEFD7
     (rampanın ortası değil ışık alan kısmı alındı: ince bir çizgi olarak
      altın okunan ton, büyük bir plakada kahverengiye düşüyor)
     deri zemin #050303 · yükseltilmiş deri #15110E
   Sayfanın dokusu da uydurma gürültü değil, logonun derisinden alındı.

   Sapma beyanı: koyu zemin + pirinç + yüksek kontrastlı serif, skill'in
   varsayılan olarak yasakladığı görünümdür. Burada markanın kendi
   malzeme dünyası olduğu için alındı (logo: deri üstünde altın) ve
   şartları karşılandı: tonlar malzemeden örneklendi, kendine ait bir
   imza öğesi icat edildi, hazır kalıp yerleşimden uzak duruldu.
   ============================================================ */

:root{
  color-scheme: dark;

  /* Tüm palet LOGODAN örneklendi (mark.jpg), ürün fotoğraflarından değil.
     Logonun altını daha mat ve kahverengiye çalıyor; markanın kendi tonu bu. */
  --zemin:      #0A0706;   /* logonun derisi ile yükseltilmişi arası */
  --zemin-dip:  #050303;   /* logonun deri zemini, birebir */
  --yuzey:      #15110E;   /* logonun yükseltilmiş derisi, birebir */
  --yuzey-2:    #1E1813;
  --cizik:      #2A2119;

  --kemik:      #E2D6C0;
  --kemik-ak:   #F6E8D1;   /* logonun vurgu ışığı, birebir */
  --kul:        #8E8474;
  --kul-2:      #625A4E;

  /* pirinç — SADECE plaka, birincil eylem ve odak */
  --pirinc:      #D0B696;  /* logonun IŞIK ALAN metali */
  --pirinc-ak:   #FCEFD7;  /* logonun vurgu parlaması */
  --pirinc-orta: #9C8165;  /* logonun metal gövdesi */
  --pirinc-dip:  #765F49;  /* logonun metal gölgesi */

  --disp: "Bodoni Moda", "Times New Roman", Georgia, serif;
  --gov:  "Archivo", system-ui, -apple-system, "Segoe UI", sans-serif;
  --mono: "IBM Plex Mono", ui-monospace, "SF Mono", Menlo, monospace;

  --en:      1320px;
  --bosluk:  clamp(1.25rem, 4vw, 3.5rem);
  --gecis:   .5s cubic-bezier(.22,.7,.28,1);
}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
@media (prefers-reduced-motion: reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;
    transition-duration:.01ms!important}
}

body{
  margin:0;background:var(--zemin);color:var(--kemik);
  font-family:var(--gov);font-weight:300;
  font-size:clamp(.95rem,.91rem + .18vw,1.04rem);line-height:1.68;
  -webkit-font-smoothing:antialiased;
  display:flex;flex-direction:column;min-height:100svh;overflow-x:hidden;
}
main{flex:1}

img{max-width:100%;height:auto;display:block}
/* WebP sarmalayıcısı yerleşime katılmasın: içindeki img doğrudan kabın çocuğu gibi davranır */
picture{display:contents}
a{color:inherit}
h1,h2,h3{margin:0;font-family:var(--disp);font-weight:400;line-height:1.08;text-wrap:balance}
h1{font-size:clamp(2.4rem,1.5rem + 4.2vw,5rem);letter-spacing:-.015em}
h2{font-size:clamp(1.75rem,1.2rem + 2.5vw,3.2rem);letter-spacing:-.01em}
h3{font-size:clamp(1.2rem,1rem + .8vw,1.6rem)}
em{font-style:italic;color:var(--kemik-ak)}
p{margin:0 0 1.1em}
p:last-child{margin-bottom:0}

.atla{position:absolute;top:0;left:0;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);
  white-space:nowrap;background:var(--pirinc);color:var(--zemin-dip);padding:.7rem 1.1rem;
  z-index:300;font-family:var(--mono);font-size:.75rem;text-decoration:none}
.atla:focus{width:auto;height:auto;clip-path:none;top:.5rem;left:.5rem}
:focus-visible{outline:1px solid var(--pirinc);outline-offset:3px}

/* ══════════════ ORTAM — sayfanın arkasındaki tek sabit katman ══════════════ */

/* Sayfanın arkasındaki tek sabit katman: düz zemin + çok yavaş gezinen
   sıcak parıltı. Deri dokusu burada değil, yalnızca üst barda. */
.ortam{position:fixed;inset:0;z-index:-2;pointer-events:none;background:var(--zemin)}
.ortam::before{
  content:"";position:absolute;inset:-25%;
  background:
    radial-gradient(ellipse 44% 38% at 22% 18%, rgba(208,182,150,.075), transparent 62%),
    radial-gradient(ellipse 52% 44% at 82% 74%, rgba(208,182,150,.05),  transparent 66%);
  animation:gezin 110s ease-in-out infinite;
}
@keyframes gezin{
  0%,100%{transform:translate3d(0,0,0) scale(1)}
  33%    {transform:translate3d(2.5%,-2%,0) scale(1.07)}
  66%    {transform:translate3d(-2%,2.5%,0) scale(1.03)}
}


/* ══════════════ İMZA — kazınmış pirinç plaka ══════════════ */

.plaka{
  position:relative;display:inline-flex;align-items:center;justify-content:center;
  padding:.52em 1.05em;border-radius:2px;isolation:isolate;
  background:linear-gradient(158deg,
    #E7D5B6 0%, var(--pirinc) 20%, var(--pirinc-orta) 47%,
    #B99A76 68%, var(--pirinc-dip) 100%);
  box-shadow:
    inset 0  1px 0 rgba(252,239,215,.75),
    inset 1px 0 0 rgba(252,239,215,.24),
    inset 0 -1px 0 rgba(0,0,0,.62),
    inset -1px 0 0 rgba(0,0,0,.4),
    0 10px 26px rgba(0,0,0,.5),
    0 2px 4px rgba(0,0,0,.4);
}
.plaka::before{
  content:"";position:absolute;inset:3px;border-radius:1px;pointer-events:none;
  background:
    radial-gradient(circle .09rem at .32rem .32rem, rgba(0,0,0,.5) 42%, rgba(252,239,215,.34) 64%, transparent 74%),
    radial-gradient(circle .09rem at calc(100% - .32rem) .32rem, rgba(0,0,0,.5) 42%, rgba(252,239,215,.34) 64%, transparent 74%),
    radial-gradient(circle .09rem at .32rem calc(100% - .32rem), rgba(0,0,0,.5) 42%, rgba(252,239,215,.34) 64%, transparent 74%),
    radial-gradient(circle .09rem at calc(100% - .32rem) calc(100% - .32rem), rgba(0,0,0,.5) 42%, rgba(252,239,215,.34) 64%, transparent 74%);
}
.plaka b{
  font-family:var(--mono);font-weight:500;font-size:.82em;letter-spacing:.16em;
  color:#3A2C1C;text-shadow:0 1px 0 rgba(252,239,215,.5);
  position:relative;z-index:1;white-space:nowrap;
}
.plaka.buyuk{padding:.6em 1.3em}
.plaka.buyuk b{font-size:1.05em;letter-spacing:.2em}


/* ══════════════ ALTIN IŞIK — yeniden kullanılabilir parça ══════════════
   Bir kabın içine <span class="isik"></span> koyup değişkenlerle
   ışığın yerini, yayılımını ve gücünü ayarlıyorsunuz:
     --x, --y   ışığın kaynağı (yüzde)
     --yay      elipsin boyu (örn. 55% 200%)
     --guc      şiddet (0 .. 1)
   Kap `position:relative` olmalı. Işık tıklanamaz ve ekran okuyucuya görünmez. */

/* overflow:hidden YOK: ışığı kutu kenarında kırpmak dikey bir kesik
   bırakıyordu. Işık artık kendi gradyanıyla dağılarak yok oluyor.
   Üst bar ve alt bilgi zaten kendileri kırptığı için orada sorun çıkmıyor. */
.isik{position:absolute;inset:0;pointer-events:none;z-index:0}
.isik::before{
  content:"";position:absolute;
  left:var(--x,20%);top:var(--y,50%);
  width:var(--en,var(--cap,720px));
  height:var(--boy,var(--cap,720px));
  translate:-50% -50%;
  /* Sönüm eğrisi logodan ölçüldü: küçük parlak çekirdek, sonra uzun bir
     yarı-aydınlık plato, sonra yavaş bir kuyruk. Düzgün sönen bir gradyan
     "ışık topu" gibi durur; gerçek ışık böyle yayılmıyor. */
  background:radial-gradient(ellipse 46% 74% at 50% 96%,
    rgba(255,226,172, calc(var(--guc,.34) * 1.00))   0%,
    rgba(252,214,150, calc(var(--guc,.34) *  .76))   8%,
    rgba(236,186,110, calc(var(--guc,.34) *  .50))  18%,
    rgba(226,172, 92, calc(var(--guc,.34) *  .47))  34%,
    rgba(206,146, 62, calc(var(--guc,.34) *  .37))  50%,
    rgba(178,120, 46, calc(var(--guc,.34) *  .22))  66%,
    rgba(140, 92, 32, calc(var(--guc,.34) *  .10))  80%,
    rgba(110, 70, 24, calc(var(--guc,.34) *  .04))  90%,
    transparent 100%);
  filter:blur(var(--yumusa,24px));
  mix-blend-mode:screen;
}

/* çok yavaş nefes alan hâli — sadece büyük yüzeylerde */
.isik.canli{animation:isikNefes 24s ease-in-out infinite}
@keyframes isikNefes{
  0%,100%{opacity:.75}
  50%    {opacity:1}
}
@media (prefers-reduced-motion: reduce){.isik.canli{animation:none;opacity:.9}}


/* Serpme: tek büyük ışık yerine birkaç küçük spot. Aynı screen karışımı,
   sadece birden fazla odak. Konumlar yüzde, yarıçaplar piksel. */
.isik.serpme{overflow:hidden}
.isik.serpme::before{content:none}
.isik.serpme{
  background:
    radial-gradient(ellipse var(--r1,60px) calc(var(--r1,60px) * .78) at var(--p1,50% 120%),
      rgba(255,226,172, calc(var(--guc,.3) * 1.00))          0%,
      rgba(252,214,150, calc(var(--guc,.3) * 0.76))     8%,
      rgba(236,186,110, calc(var(--guc,.3) * 0.50))    18%,
      rgba(226,172, 92, calc(var(--guc,.3) * 0.48))    34%,
      rgba(206,146, 62, calc(var(--guc,.3) * 0.40))    50%,
      rgba(170,112, 40, calc(var(--guc,.3) * 0.24))    72%,
      transparent 100%),
    radial-gradient(ellipse var(--r2,60px) calc(var(--r2,60px) * .78) at var(--p2,50% 120%),
      rgba(255,226,172, calc(var(--guc,.3) * 0.88))          0%,
      rgba(252,214,150, calc(var(--guc,.3) * 0.67))     8%,
      rgba(236,186,110, calc(var(--guc,.3) * 0.44))    18%,
      rgba(226,172, 92, calc(var(--guc,.3) * 0.42))    34%,
      rgba(206,146, 62, calc(var(--guc,.3) * 0.35))    50%,
      rgba(170,112, 40, calc(var(--guc,.3) * 0.21))    72%,
      transparent 100%),
    radial-gradient(ellipse var(--r3,60px) calc(var(--r3,60px) * .78) at var(--p3,50% 120%),
      rgba(255,226,172, calc(var(--guc,.3) * 0.80))          0%,
      rgba(252,214,150, calc(var(--guc,.3) * 0.61))     8%,
      rgba(236,186,110, calc(var(--guc,.3) * 0.40))    18%,
      rgba(226,172, 92, calc(var(--guc,.3) * 0.38))    34%,
      rgba(206,146, 62, calc(var(--guc,.3) * 0.32))    50%,
      rgba(170,112, 40, calc(var(--guc,.3) * 0.19))    72%,
      transparent 100%),
    radial-gradient(ellipse var(--r4,60px) calc(var(--r4,60px) * .78) at var(--p4,50% 120%),
      rgba(255,226,172, calc(var(--guc,.3) * 0.92))          0%,
      rgba(252,214,150, calc(var(--guc,.3) * 0.70))     8%,
      rgba(236,186,110, calc(var(--guc,.3) * 0.46))    18%,
      rgba(226,172, 92, calc(var(--guc,.3) * 0.44))    34%,
      rgba(206,146, 62, calc(var(--guc,.3) * 0.37))    50%,
      rgba(170,112, 40, calc(var(--guc,.3) * 0.22))    72%,
      transparent 100%),
    radial-gradient(ellipse var(--r5,60px) calc(var(--r5,60px) * .78) at var(--p5,50% 120%),
      rgba(255,226,172, calc(var(--guc,.3) * 0.84))          0%,
      rgba(252,214,150, calc(var(--guc,.3) * 0.64))     8%,
      rgba(236,186,110, calc(var(--guc,.3) * 0.42))    18%,
      rgba(226,172, 92, calc(var(--guc,.3) * 0.40))    34%,
      rgba(206,146, 62, calc(var(--guc,.3) * 0.34))    50%,
      rgba(170,112, 40, calc(var(--guc,.3) * 0.20))    72%,
      transparent 100%);
  filter:blur(var(--yumusa,16px));
  mix-blend-mode:screen;
}


/* ══════════════ GİRİŞ ANİMASYONU ══════════════
   Yazılar sırayla yerine oturuyor. Sıra `--g` ile veriliyor.
   `html.js` koşulu şart: JavaScript yoksa hiçbir şey gizlenmiyor.
   Kutuda blur KULLANILMIYOR — filter 3B'yi düzleştirip fare eğilmesini
   bozuyor, bu ölçerek bulundu. */
html.js .gelis{opacity:0}
html.js body.hazir .gelis{
  animation:gelis .9s cubic-bezier(.16,.84,.32,1) both;
  animation-delay:calc(var(--g,0) * 105ms + 140ms)}
html.js body.hazir .giris-nesne.gelis{
  animation-name:gelisNesne;animation-duration:1.25s}

@keyframes gelis{
  from{opacity:0;transform:translateY(22px);filter:blur(8px)}
  to  {opacity:1;transform:translateY(0);filter:blur(0)}
}
@keyframes gelisNesne{
  from{opacity:0;transform:translateY(34px) scale(.975)}
  to  {opacity:1;transform:translateY(0) scale(1)}
}
@media (prefers-reduced-motion: reduce){
  html.js .gelis{opacity:1}
  html.js body.hazir .gelis{animation:none}
}

/* ══════════════ ÜST BAR ══════════════ */

.ust{position:sticky;top:0;z-index:100;display:flex;align-items:center;
  justify-content:space-between;gap:1rem;padding:1rem var(--bosluk);
  isolation:isolate;overflow:hidden;
  background:var(--zemin-dip)}

/* Alt çizgi: ışığın düştüğü yerde altına dönüyor, uzaklaştıkça sönüyor. */
.ust::after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;
  background:linear-gradient(90deg,
    rgba(208,182,150,.34) 0%,
    rgba(208,182,150,.5) 9%,
    rgba(208,182,150,.14) 26%,
    var(--cizik) 46%,
    var(--cizik) 100%)}

/* gerçek deri — logonun zemininden alındı, dikişsiz döşeniyor */
/* ══════════════ DERİ — yeniden kullanılabilir parça ══════════════
   İşlenmiş bir döşeme değil, GÖRSELİN KENDİSİ: 1254×170'lik bir bant
   1:1 çözünürlükte alındı ve yatayda aynalanarak 2508px'e genişletildi.
   Böylece hiçbir ekranda büyütülüp bulanıklaşmıyor, dikiş de görünmüyor.
   Kap `position:relative` + `isolation:isolate` + `overflow:hidden` olmalı. */
.deri{position:absolute;inset:0;pointer-events:none;z-index:-1;
  background-image:url("/assets/deri-serit.jpg");
  background-size:auto var(--tane,60px);   /* tane inceliği */
  background-position:center;
  background-repeat:repeat;
  filter:brightness(var(--karanlik,.62))}

/* deriye soldan vuran ışık: markanın olduğu yeri aydınlatıyor */
.ust .isik{z-index:-1}

/* Marka artık yazıyla taklit edilmiyor, gerçek logotype kullanılıyor. */
.marka{display:inline-flex;align-items:center;text-decoration:none}
.marka img{height:38px;width:auto;display:block}
.alt-logo{height:44px;width:auto;opacity:.9}

/* eski yazı markası: logonun yüklenemediği durumda yedek */
.marka-ad{font-family:var(--disp);font-style:italic;font-size:1.5rem;color:var(--kemik-ak)}
.marka-no{font-family:var(--mono);font-size:.58rem;letter-spacing:.16em;color:var(--kul);
  translate:0 -.42em}

.menu{display:flex;gap:2.2rem}
.menu a{position:relative;text-decoration:none;font-family:var(--mono);font-size:.68rem;
  letter-spacing:.2em;text-transform:uppercase;color:var(--kul);padding:.4rem 0;
  transition:color var(--gecis)}


/* Üzerine gelince alttan vuran spot — deriye düşen ışık.
   Metnin altında duruyor, üstünü kapatmıyor. */
.menu a::before{content:"";position:absolute;pointer-events:none;
  left:50%;bottom:-2.3rem;width:260%;min-width:210px;height:6.2rem;
  translate:-50% 0;
  background:radial-gradient(ellipse 46% 74% at 50% 96%,
    rgba(255,226,172,.92)  0%,
    rgba(252,214,150,.70)  8%,
    rgba(236,186,110,.46) 18%,
    rgba(226,172, 92,.43) 34%,
    rgba(206,146, 62,.34) 50%,
    rgba(178,120, 46,.20) 66%,
    rgba(140, 92, 32,.09) 80%,
    rgba(110, 70, 24,.035) 90%,
    transparent 100%);
  /* alttan geldiği için yukarı doğru zayıflıyor */
  -webkit-mask-image:linear-gradient(to top,#000 0%,rgba(0,0,0,.88) 42%,rgba(0,0,0,.42) 72%,transparent 100%);
  mask-image:linear-gradient(to top,#000 0%,rgba(0,0,0,.88) 42%,rgba(0,0,0,.42) 72%,transparent 100%);
  filter:blur(11px);mix-blend-mode:screen;
  opacity:0;transition:opacity .3s ease}
.menu a:hover::before,.menu a:focus-visible::before{opacity:1}

.menu a:hover{color:var(--kemik)}
.menu a.acik{color:var(--kemik-ak)}

.menu-dugme{display:none;background:none;border:0;padding:.6rem 0;cursor:pointer;
  flex-direction:column;gap:6px;width:26px}
.menu-dugme i{display:block;height:1px;width:100%;background:var(--kemik);transition:var(--gecis)}
.menu-dugme i:last-child{width:60%;margin-left:auto}
.menu-dugme[aria-expanded="true"] i:first-child{rotate:45deg;translate:0 3.5px}
.menu-dugme[aria-expanded="true"] i:last-child{width:100%;rotate:-45deg;translate:0 -3.5px}

.mobil-menu{position:fixed;inset:0;z-index:99;background:var(--zemin);
  display:flex;flex-direction:column;justify-content:center;padding:var(--bosluk)}
.mobil-menu[hidden]{display:none}
.mobil-menu nav{display:flex;flex-direction:column}
.mobil-menu nav a{text-decoration:none;font-family:var(--disp);font-size:clamp(2rem,9vw,2.8rem);
  color:var(--kemik);padding:.55rem 0;border-bottom:1px solid var(--cizik);
  opacity:0;translate:0 16px;animation:gir .55s var(--gecis) forwards;
  animation-delay:calc(var(--s) * 75ms + 100ms);
  display:flex;align-items:baseline;justify-content:space-between}
.mobil-menu nav a::after{content:attr(data-no);font-family:var(--mono);font-size:.7rem;
  letter-spacing:.14em;color:var(--kul-2)}
.mobil-menu nav a.acik{color:var(--pirinc)}
.mobil-alt{position:absolute;left:var(--bosluk);
  bottom:calc(var(--bosluk) + env(safe-area-inset-bottom));
  font-family:var(--mono);font-size:.7rem;letter-spacing:.1em;color:var(--kul)}
.mobil-alt a{text-decoration:none}
@keyframes gir{to{opacity:1;translate:0 0}}

/* ══════════════ DÜĞMELER — pirinç yalnız birincil eylemde ══════════════ */

/* Birincil düğme kemik rengindedir, pirinç değil: pirinç imza plakasının
   rengidir ve onunla yarışmaması gerekir. Pirinç yalnızca üzerine
   gelindiğinde belirir — yani niyet gösterildiğinde. */
.dugme{display:inline-flex;align-items:center;gap:.75rem;cursor:pointer;text-decoration:none;
  font-family:var(--mono);font-size:.7rem;font-weight:500;letter-spacing:.18em;
  text-transform:uppercase;padding:1rem 1.8rem;border:0;
  background:var(--kemik);color:#15100C;
  transition:background var(--gecis),color var(--gecis)}
.dugme::after{content:"→";font-size:.9em;transition:translate var(--gecis)}
.dugme:hover{background:var(--pirinc)}
.dugme:hover::after{translate:4px 0}

/* İkincil: yalnız alt çizgi. Hiç kutu yok. */
.dugme.cizgi{background:none;color:var(--kul);padding:.5rem 0;
  box-shadow:inset 0 -1px 0 var(--cizik)}
.dugme.cizgi:hover{background:none;color:var(--kemik-ak);box-shadow:inset 0 -1px 0 var(--pirinc)}

.dugme.sade{background:transparent;color:var(--kul);box-shadow:inset 0 0 0 1px var(--cizik)}
.dugme.sade:hover{background:transparent;color:var(--kemik);box-shadow:inset 0 0 0 1px var(--kul-2)}
.dugme.kucuk{padding:.62rem 1.15rem;font-size:.64rem}
.dugmeler{display:flex;flex-wrap:wrap;gap:1.6rem;align-items:center}

.kicker{display:block;font-family:var(--mono);font-size:.64rem;font-weight:500;
  letter-spacing:.28em;text-transform:uppercase;color:var(--kul-2)}

/* ══════════════ 1 · GİRİŞ — asimetrik, nesne sağdan taşar ══════════════ */

/* Nesne kadrajın içinde kalır. Daha önce sağ kenardan taşırıyordum;
   ölçtüm, 1280px'de ürünün %10.8'i kesiliyordu ve bu kasıt değil kaza
   gibi okunuyor. Asimetri artık ızgara oranından geliyor: yazı sütunu
   dar, nesne sütunu geniş. */
.giris{position:relative;isolation:isolate;
  display:grid;grid-template-columns:minmax(0,.86fr) minmax(0,1.14fr);
  align-items:center;gap:clamp(1.5rem,4vw,3.5rem);
  padding:clamp(3rem,7vw,6rem) var(--bosluk) clamp(3.5rem,7vw,6rem);
  max-width:var(--en);margin-inline:auto}
.giris > .isik{z-index:-1}
.giris-yazi{max-width:38rem;position:relative;z-index:1}
.giris-yazi h1{margin:1.6rem 0 0}
.giris-yazi .lede{color:var(--kul);max-width:36ch;margin-top:1.8rem;font-size:1.06rem}
.giris-yazi .dugmeler{margin-top:2.6rem}
/* Fareye göre eğilme buradan: derinlik kabın üzerinde, eğilme sarmalayıcıda.
   Süzülme ve parlama animasyonları içerideki öğelerde kaldığı için
   iki hareket birbirine karışmıyor. */
.giris-nesne{position:relative;perspective:1500px}
.giris-nesne .kutu{position:relative;transform-style:preserve-3d;
  transform:rotateY(calc(var(--mx,0) * 6.5deg))
            rotateX(calc(var(--my,0) * -4.5deg))
            translateZ(0);
  will-change:transform}
/* parlama da fareyle birlikte kayıyor: ışık kaynağı sabit kalsın diye */
.giris-nesne .parlama{--kaydir:calc(var(--mx,0) * -4%)}
.giris-nesne .parlama::before{margin-left:var(--kaydir,0)}
@media (prefers-reduced-motion: reduce){
  .giris-nesne .kutu{transform:none}
}
/* nesnenin oturduğu yüzey: altında yatan yumuşak bir ışık lekesi */
.giris-nesne::after{content:"";position:absolute;left:8%;right:8%;bottom:6%;height:14%;
  pointer-events:none;border-radius:50%;
  background:radial-gradient(ellipse 50% 50% at 50% 50%,rgba(208,182,150,.1),transparent 70%)}
/* Görsel gerçek alfa kanallı bir kesim (saydam arka plan), o yüzden
   karışım numarasına gerek yok. Gölge kesimin kendi biçimini izlesin
   diye drop-shadow kullanılıyor: iki kat, biri yakın ve keskin, biri
   geniş ve yumuşak — nesne zeminin üstünde dursun. */
.giris-nesne img{width:100%;aspect-ratio:3/2;object-fit:contain;
  filter:drop-shadow(0 18px 22px rgba(0,0,0,.55))
         drop-shadow(0 46px 64px rgba(0,0,0,.45));
  animation:suzul 11s ease-in-out infinite,
            suzulGolge 11s ease-in-out infinite;
  will-change:transform}

/* ── Altın parlama ──
   Aynı PNG maske olarak kullanılıyor, yani ışık dikdörtgende değil
   tam kutunun şeklinde geziyor. Alfa kanalının asıl kazancı bu.
   Band translateX ile geçiyor: arka plan konumu hesabından daha
   öngörülebilir ve ölçmesi kolay. */
.giris-nesne .parlama{
  position:absolute;inset:0;pointer-events:none;overflow:hidden;
  -webkit-mask-image:var(--kutu-maske,url("/assets/hero-case.webp"));
          mask-image:var(--kutu-maske,url("/assets/hero-case.webp"));
  -webkit-mask-size:contain;        mask-size:contain;
  -webkit-mask-repeat:no-repeat;    mask-repeat:no-repeat;
  -webkit-mask-position:center;     mask-position:center;
  /* mix-blend-mode KULLANILMIYOR: maske kendi grubunu oluşturduğu için
     screen karışımının altında zemin kalmıyor ve katman kayboluyor.
     Ölçerek bulundu. Onun yerine bant doğrudan açık renkle boyanıyor. */
  animation:suzul 11s ease-in-out infinite}

.giris-nesne .parlama::before{
  content:"";position:absolute;top:-25%;bottom:-25%;left:0;width:26%;
  background:linear-gradient(90deg,
    transparent 0%,
    rgba(255,232,186,.10) 24%,
    rgba(255,240,208,.30) 42%,
    rgba(255,250,236,.44) 50%,
    rgba(255,240,208,.30) 58%,
    rgba(255,232,186,.10) 76%,
    transparent 100%);
  filter:blur(10px);
  transform:translateX(-180%) skewX(-14deg);
  animation:yalama 13s ease-in-out infinite}

@keyframes yalama{
  0%,6%    {transform:translateX(-180%) skewX(-14deg)}
  30%,100% {transform:translateX(560%)  skewX(-14deg)}
}

@keyframes suzul{
  0%,100%{transform:translate3d(0,0,0) rotate(-.3deg)}
  50%    {transform:translate3d(0,-12px,0) rotate(.26deg)}
}
/* nesne yükselince gölgesi büyüyüp yumuşuyor — gerçekte olan bu */
@keyframes suzulGolge{
  0%,100%{filter:drop-shadow(0 18px 22px rgba(0,0,0,.55))
                 drop-shadow(0 46px 64px rgba(0,0,0,.45))}
  50%    {filter:drop-shadow(0 27px 31px rgba(0,0,0,.46))
                 drop-shadow(0 64px 86px rgba(0,0,0,.38))}
}

@media (prefers-reduced-motion: reduce){
  .giris-nesne img,.giris-nesne .parlama{animation:none}
  .giris-nesne .parlama{display:none}
}
.giris-kunye{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:.6rem 2.6rem;align-items:center;
  margin-top:clamp(2rem,5vw,3.5rem);padding-top:1.4rem;
  border-top:1px solid var(--cizik)}
.giris-kunye span{font-family:var(--mono);font-size:.66rem;letter-spacing:.2em;
  text-transform:uppercase;color:var(--kul-2)}
.giris-kunye span b{color:var(--kemik);font-weight:400}

/* ══════════════ 2 · DEFTER — kart ızgarası değil, kayıt satırları ══════════════ */

.defter{max-width:var(--en);margin-inline:auto;padding:clamp(3.5rem,8vw,7rem) var(--bosluk)}
/* sayfa başlığının hemen ardından gelen defter, iki kez boşluk bırakmasın */
.sayfa-bas + .defter{padding-top:clamp(1.5rem,3vw,2.5rem)}
.defter-bas{display:flex;align-items:flex-end;justify-content:space-between;gap:2rem;
  flex-wrap:wrap;margin-bottom:.5rem}
.defter-bas h2{max-width:14ch}
.defter-sayac{font-family:var(--mono);font-size:.66rem;letter-spacing:.2em;
  text-transform:uppercase;color:var(--kul-2);text-align:right}

.kayit{display:grid;grid-template-columns:auto 1fr auto auto;align-items:center;
  gap:clamp(1rem,3vw,2.4rem);padding:clamp(1.4rem,2.6vw,2.1rem) 0;
  border-top:1px solid var(--cizik);text-decoration:none;position:relative;
  transition:padding-left var(--gecis)}
.kayit:last-of-type{border-bottom:1px solid var(--cizik)}
.kayit:hover{padding-left:.9rem}
.kayit::before{content:"";position:absolute;left:0;top:18%;bottom:18%;width:1px;
  background:var(--pirinc);scale:1 0;transform-origin:center;transition:scale var(--gecis)}
.kayit:hover::before{scale:1 1}
.kayit-ad{min-width:0}
.kayit-ad h3{color:var(--kemik-ak);transition:color var(--gecis)}
.kayit:hover .kayit-ad h3{color:#fff}
.kayit-edisyon{display:block;margin-top:.4rem;font-family:var(--mono);font-size:.62rem;
  letter-spacing:.2em;text-transform:uppercase;color:var(--kul-2)}
.kayit-ad p{margin:.5rem 0 0;color:var(--kul);font-size:.9rem;max-width:52ch;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.kayit-gorsel{width:clamp(96px,13vw,164px);aspect-ratio:4/3;overflow:hidden;
  background:var(--yuzey);filter:grayscale(.34) brightness(.88);transition:filter var(--gecis)}
.kayit-gorsel img{width:100%;height:100%;object-fit:cover}
.kayit:hover .kayit-gorsel{filter:none}
.kayit-bos{width:100%;height:100%;
  background:repeating-linear-gradient(45deg,var(--yuzey),var(--yuzey) 8px,var(--yuzey-2) 8px,var(--yuzey-2) 16px)}
.kayit-ok{font-family:var(--mono);font-size:.95rem;color:var(--kul-2);
  transition:color var(--gecis),translate var(--gecis)}
.kayit:hover .kayit-ok{color:var(--pirinc);translate:5px 0}

/* ══════════════ 3 · NESNE İNCELEMESİ — tam genişlik, köşeye demirli yazı ══════════════ */

.inceleme{position:relative;min-height:min(88svh,760px);display:grid;isolation:isolate;
  border-block:1px solid var(--cizik)}
.inceleme-gorsel{position:absolute;inset:0;z-index:-1;overflow:hidden}
.inceleme-gorsel img{width:100%;height:100%;object-fit:cover;opacity:.62}
.inceleme-gorsel::after{content:"";position:absolute;inset:0;
  background:linear-gradient(100deg,var(--zemin) 4%,rgba(12,9,8,.78) 34%,rgba(12,9,8,.16) 72%)}
.inceleme > .isik{z-index:0}
.inceleme-yazi{position:relative;z-index:1;align-self:end;max-width:min(46rem,92%);
  padding:var(--bosluk);padding-bottom:clamp(2.5rem,6vw,4.5rem)}
.inceleme-yazi h2{margin:1.3rem 0 0}
.inceleme-yazi p{color:var(--kemik);margin-top:1.3rem;max-width:44ch;
  text-shadow:0 1px 3px rgba(0,0,0,.7)}
.inceleme-yazi .dugmeler{margin-top:2rem}

/* ══════════════ 4 · BEYAN — yapışkan etiket sütunu + akan metin ══════════════ */

.beyan{max-width:var(--en);margin-inline:auto;padding:clamp(4rem,9vw,8rem) var(--bosluk);
  display:grid;grid-template-columns:14rem minmax(0,1fr);gap:clamp(2rem,6vw,5rem)}
.beyan-etiket{position:sticky;top:6.5rem;align-self:start}
.beyan-etiket h2{font-size:clamp(1.4rem,1.1rem + 1.2vw,2rem);margin-top:.9rem;max-width:9ch}
.beyan-metin{font-size:clamp(1.02rem,.97rem + .34vw,1.2rem);line-height:1.85;color:var(--kemik)}
.beyan-metin p+p{margin-top:1.5rem}
.beyan-metin > p:first-child::first-letter{
  float:left;font-family:var(--disp);font-size:4.1em;line-height:.78;
  padding:.06em .12em 0 0;color:var(--pirinc)}

/* ══════════════ 5 · KAPANIŞ — kaydırılmış çubuk ══════════════ */

.kapanis{max-width:var(--en);margin-inline:auto;padding:0 var(--bosluk) clamp(4rem,8vw,7rem)}
.kapanis-ic{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;
  gap:2rem clamp(2rem,5vw,4rem);background:var(--yuzey);padding:clamp(2rem,4.5vw,3.4rem);
  box-shadow:inset 0 1px 0 rgba(244,234,214,.05)}
.kapanis-ic h2{max-width:18ch}
.kapanis-ic p{color:var(--kul);margin-top:1rem;max-width:46ch}

/* ══════════════ İÇ SAYFA BAŞLIKLARI — sola dayalı ══════════════ */

.sayfa-bas{max-width:var(--en);margin-inline:auto;
  padding:clamp(3rem,7vw,5.5rem) var(--bosluk) clamp(1.5rem,3vw,2.5rem);
  display:grid;grid-template-columns:minmax(0,1fr) auto;gap:1.5rem 2rem;align-items:end}
.sayfa-bas h1{grid-column:1;margin-top:1.2rem}
.sayfa-bas p{grid-column:1;color:var(--kul);max-width:48ch;margin-top:1.2rem}
.sayfa-bas .plaka{align-self:end;justify-self:end}

/* ══════════════ ÜRÜN SAYFASI ══════════════ */

.urun-ic{max-width:var(--en);margin-inline:auto;padding:clamp(1.5rem,4vw,3rem) var(--bosluk);
  display:grid;grid-template-columns:1.15fr .85fr;gap:clamp(2rem,5vw,4.5rem);align-items:start}
.galeri{position:sticky;top:6rem}
.galeri-ana{aspect-ratio:4/3;background:var(--yuzey);overflow:hidden;
  box-shadow:inset 0 0 0 1px var(--cizik)}
.galeri-ana img{width:100%;height:100%;object-fit:cover}
.galeri-kucuk{display:grid;grid-template-columns:repeat(auto-fill,minmax(72px,1fr));
  gap:.55rem;margin-top:.55rem}
.kucuk{padding:0;border:0;background:var(--yuzey);cursor:pointer;aspect-ratio:1;overflow:hidden;
  box-shadow:inset 0 0 0 1px var(--cizik);transition:box-shadow var(--gecis)}
.kucuk img{width:100%;height:100%;object-fit:cover;opacity:.55;transition:opacity var(--gecis)}
.kucuk:hover img,.kucuk.acik img{opacity:1}
.kucuk.acik{box-shadow:inset 0 0 0 1px var(--pirinc)}

.urun-bilgi h1{font-size:clamp(2rem,1.4rem + 2.6vw,3.4rem);margin:1.2rem 0 0}
.urun-bilgi .ozet{color:var(--kul);font-size:1.05rem;margin-top:1.3rem}
.urun-bilgi .fiyat{font-family:var(--mono);font-size:.95rem;letter-spacing:.08em;
  color:var(--kemik-ak);margin:1.6rem 0 0}
.urun-bilgi .metin{color:var(--kul);margin-top:2rem;padding-top:2rem;
  border-top:1px solid var(--cizik)}

.ozellik{margin-top:2.4rem;padding-top:2rem;border-top:1px solid var(--cizik)}
.ozellik h2{font-family:var(--mono);font-size:.64rem;font-weight:500;letter-spacing:.28em;
  text-transform:uppercase;color:var(--kul-2);margin-bottom:1.4rem}
.ozellik dl{margin:0}
.ozellik div{display:grid;grid-template-columns:9.5rem minmax(0,1fr);gap:1.5rem;
  padding:.7rem 0;border-bottom:1px solid var(--cizik)}
.ozellik div:last-child{border-bottom:0}
.ozellik dt{font-family:var(--mono);font-size:.68rem;letter-spacing:.12em;
  text-transform:uppercase;color:var(--kul-2)}
.ozellik dd{margin:0;color:var(--kemik)}

/* ══════════════ FORMLAR ══════════════ */

.sor{margin-top:2.6rem;padding-top:2.2rem;border-top:1px solid var(--cizik)}
.sor h2,.iletisim-yan h2{font-family:var(--mono);font-size:.64rem;font-weight:500;
  letter-spacing:.28em;text-transform:uppercase;color:var(--kul-2);margin-bottom:1.4rem}

form label{display:block;margin-bottom:1.15rem;font-family:var(--mono);font-size:.63rem;
  letter-spacing:.18em;text-transform:uppercase;color:var(--kul-2)}
.istege,.ipucu{text-transform:none;letter-spacing:.02em;font-size:.92em;color:var(--kul-2)}
input[type=text],input[type=email],input[type=tel],input[type=password],input[type=number],
textarea,select{
  display:block;width:100%;margin-top:.55rem;background:transparent;border:0;
  border-bottom:1px solid var(--cizik);color:var(--kemik);
  font-family:var(--gov);font-size:1rem;font-weight:300;
  letter-spacing:normal;text-transform:none;padding:.7rem .1rem;border-radius:0;
  transition:border-color var(--gecis)}
textarea{resize:vertical;line-height:1.6}
select{appearance:none;padding-right:2rem;
  background-image:linear-gradient(45deg,transparent 50%,var(--kul) 50%),
                   linear-gradient(135deg,var(--kul) 50%,transparent 50%);
  background-position:calc(100% - 14px) 60%,calc(100% - 9px) 60%;
  background-size:5px 5px;background-repeat:no-repeat}
select option{background:var(--yuzey);color:var(--kemik)}
input:focus,textarea:focus,select:focus{outline:none;border-bottom-color:var(--pirinc)}
input::placeholder,textarea::placeholder{color:var(--kul-2)}
.alan-ikili{display:grid;grid-template-columns:1fr 1fr;gap:0 1.6rem}
.tuzak{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;opacity:0}
form .dugme{margin-top:1rem}

.hata,.basarili{font-family:var(--mono);font-size:.74rem;letter-spacing:.06em;
  padding:.9rem 1.1rem;margin-bottom:1.4rem}
.hata{color:#E8AFA4;background:#1E100D;box-shadow:inset 0 0 0 1px #4A241C}
.basarili{color:var(--pirinc-ak);background:var(--yuzey);box-shadow:inset 0 0 0 1px var(--pirinc-dip)}

.iletisim-ic{max-width:var(--en);margin-inline:auto;padding:0 var(--bosluk) clamp(4rem,8vw,7rem);
  display:grid;grid-template-columns:1.3fr .7fr;gap:clamp(2rem,6vw,5rem);align-items:start}
.iletisim-yan{position:sticky;top:6.5rem}
.iletisim-yan a,.iletisim-yan p{display:block;color:var(--kemik);text-decoration:none;
  margin:0 0 .8rem;font-size:.98rem}
.iletisim-yan a{border-bottom:1px solid transparent;width:fit-content}
.iletisim-yan a:hover{border-bottom-color:var(--pirinc)}

.bos{color:var(--kul-2);padding:3.5rem 0;font-family:var(--mono);font-size:.76rem;
  letter-spacing:.16em;text-transform:uppercase}

/* ══════════════ ALT BİLGİ ══════════════ */

.alt{position:relative;isolation:isolate;overflow:hidden;
  background:var(--zemin-dip);padding:clamp(3rem,6vw,4.5rem) var(--bosluk) 2rem;
  box-shadow:inset 0 1px 0 var(--cizik)}
.alt > .deri,.alt > .isik{z-index:-1}
.alt-ic,.alt-son{position:relative;z-index:1}
.alt-ic{max-width:var(--en);margin-inline:auto;display:grid;
  grid-template-columns:1.7fr 1fr 1fr;gap:2.5rem}
.alt-marka p{color:var(--kul-2);font-size:.88rem;margin-top:1rem;max-width:28ch}
.alt-sutun h4{margin:0 0 1.2rem;font-family:var(--mono);font-size:.62rem;font-weight:500;
  letter-spacing:.24em;text-transform:uppercase;color:var(--kul-2)}
.alt-sutun a,.alt-sutun span{display:block;text-decoration:none;color:var(--kul);
  font-size:.92rem;margin-bottom:.65rem;transition:color var(--gecis);width:fit-content}
.alt-sutun a:hover{color:var(--kemik-ak)}
.alt-son{max-width:var(--en);margin:3rem auto 0;padding-top:1.5rem;
  box-shadow:inset 0 1px 0 var(--cizik);display:flex;justify-content:space-between;
  gap:1rem;flex-wrap:wrap;color:var(--kul-2);font-family:var(--mono);
  font-size:.63rem;letter-spacing:.12em}
.alt-son a{text-decoration:none;color:var(--kul-2)}
.alt-son a:hover{color:var(--pirinc)}

/* ══════════════ GÖRÜNÜRE GİRENLER ══════════════ */

.bekle{opacity:0;translate:0 20px;transition:opacity .85s var(--gecis),translate .85s var(--gecis)}
.kayit.bekle{transition-delay:calc(var(--s,0) * 70ms)}
.geldi{opacity:1;translate:0 0}
@media (prefers-reduced-motion: reduce){.bekle{opacity:1;translate:0 0}}

/* ══════════════ UYUM ══════════════ */

@media (max-width:1000px){
  .giris{grid-template-columns:1fr;gap:2rem}
  .giris-nesne{order:-1;max-width:34rem}
  .beyan{grid-template-columns:1fr;gap:2rem}
  .beyan-etiket{position:static}
  .beyan-etiket h2{max-width:none}
  .urun-ic{grid-template-columns:1fr}
  .galeri{position:static}
  .iletisim-ic{grid-template-columns:1fr}
  .iletisim-yan{position:static;padding-top:2rem;box-shadow:inset 0 1px 0 var(--cizik)}
  .kapanis-ic{grid-template-columns:1fr}
  .alt-ic{grid-template-columns:1fr 1fr}
  .alt-marka{grid-column:1/-1}
}

@media (max-width:760px){
  .menu{display:none}
  .menu-dugme{display:flex}
  .alan-ikili{grid-template-columns:1fr}
  .alt-ic{grid-template-columns:1fr;gap:2rem}
  .alt-son{flex-direction:column;gap:.5rem}
  .ozellik div{grid-template-columns:1fr;gap:.15rem}
  .sayfa-bas{grid-template-columns:1fr}
  .sayfa-bas .plaka{justify-self:start;order:-1}

  .defter-bas{gap:.8rem}
  .defter-sayac{text-align:left}
  .defter-sayac br{display:none}
  .defter-sayac::before{content:""}
  .kayit{grid-template-columns:auto 1fr;gap:1rem 1.2rem;padding:1.4rem 0}
  .kayit-gorsel{grid-row:1;grid-column:1;width:74px}
  .kayit .plaka{grid-row:1;grid-column:2;justify-self:start}
  .kayit-ad{grid-row:2;grid-column:1/-1}
  .kayit-ok{display:none}
  .kayit:hover{padding-left:0}

  .inceleme{min-height:auto}
  .inceleme-gorsel img{opacity:.4}
  .inceleme-gorsel::after{background:linear-gradient(180deg,rgba(12,9,8,.5),var(--zemin) 82%)}
  .inceleme-yazi{padding-top:clamp(3rem,12vw,5rem)}
  .beyan-metin > p:first-child::first-letter{font-size:3.2em}
}

@media (max-width:420px){
  .marka-ad{font-size:1.3rem}
  .dugmeler{width:100%;gap:1.1rem}
  .dugme{width:100%;justify-content:space-between}
  .dugme.cizgi{width:auto}
}

/* ══════════════════════════════════════════════════════════
   ADIMLI PANELLER (yalnızca ana sayfa)
   Kaydırma serbest akmıyor: bir jest bir panel ilerletiyor.
   Sayfa gövdesi kilitli, raylar dikeyde kayıyor.
   ══════════════════════════════════════════════════════════ */

body.panelli{overflow:hidden;height:100svh}
body.panelli main{flex:none}
body.panelli > .ortam,
body.panelli > .alt{display:none}


.raylar{position:fixed;inset:0;
  transform:translate3d(0,calc(var(--panel,0) * -100svh),0);
  transition:transform 1.05s cubic-bezier(.76,0,.24,1);
  will-change:transform}

.panel{position:relative;height:100svh;overflow:hidden;isolation:isolate}
.panel-ic{position:relative;z-index:2;height:100%;
  max-width:var(--en);margin-inline:auto;
  padding:clamp(5rem,10vh,8rem) var(--bosluk) clamp(9rem,16vh,12rem);
  display:flex;align-items:center}

/* ── sahne ── */
.sahne-zemin{position:absolute;inset:0;z-index:0}
.sahne-zemin img{width:100%;height:100%;object-fit:cover;object-position:62% 55%}
/* solda yazının oturduğu tarafı karart: fotoğraf oraya kadar gelmesin */
.sahne-zemin::after{content:"";position:absolute;inset:0;
  background:
    linear-gradient(97deg,var(--zemin-dip) 6%,rgba(5,3,3,.86) 26%,rgba(5,3,3,.34) 50%,transparent 68%),
    linear-gradient(to bottom,rgba(5,3,3,.62) 0%,transparent 22%,transparent 62%,rgba(5,3,3,.78) 100%)}

/* Konum ölçülerek bulundu: kutunun tabanı PNG'nin %83'ünde, mermerin
   kullanılabilir yüzeyi bu x'te y %58 ile %91 arası. Taban %73'e denk
   gelsin diye kutunun merkezi %57'ye alındı. */
.sahne-nesne{position:absolute;z-index:1;
  left:61%;top:66%;width:min(48vw,790px);
  translate:-50% -50%;perspective:1500px;pointer-events:none}

/* Temas gölgesi: "masanın üstünde duruyor" hissini bu veriyor.
   Kutu yükselince küçülüp soluyor, gerçekte olan bu. */
.sahne-nesne::after{content:"";position:absolute;z-index:-1;
  left:49%;top:98%;width:72%;height:14%;
  translate:-50% -42%;rotate:2.2deg;border-radius:50%;
  background:radial-gradient(ellipse at 50% 42%,
    rgba(0,0,0,.96) 0%,rgba(0,0,0,.82) 26%,rgba(0,0,0,.48) 48%,
    rgba(0,0,0,.18) 66%,transparent 80%);
  filter:blur(9px);
  animation:temas 11s ease-in-out infinite}
@keyframes temas{
  0%,100%{opacity:1;   scale:1 1}
  50%    {opacity:.68; scale:1.09 .82}
}
.sahne-nesne .kutu{position:relative;transform-style:preserve-3d;
  /* saat yönünde hafif çapraz duruş — `rotate` bağımsız bir özellik
     olduğu için aşağıdaki fare eğilmesiyle çakışmıyor */
  rotate:2.2deg;
  transform:rotateY(calc(var(--mx,0) * 6.5deg))
            rotateX(calc(var(--my,0) * -4.5deg)) translateZ(0);
  will-change:transform}
.sahne-nesne img{width:100%;aspect-ratio:2.063;object-fit:contain;
  filter:drop-shadow(0 14px 18px rgba(0,0,0,.45))
         drop-shadow(0 38px 52px rgba(0,0,0,.34));
  animation:suzul 11s ease-in-out infinite,
            suzulGolge 11s ease-in-out infinite}
.sahne-nesne .parlama{position:absolute;inset:0;overflow:hidden;
  -webkit-mask-image:var(--kutu-maske,url("/assets/hero-case.webp"));mask-image:var(--kutu-maske,url("/assets/hero-case.webp"));
  -webkit-mask-size:contain;mask-size:contain;
  -webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;
  -webkit-mask-position:center;mask-position:center;
  animation:suzul 11s ease-in-out infinite}
.sahne-nesne .parlama::before{content:"";position:absolute;
  top:-25%;bottom:-25%;left:0;width:26%;
  background:linear-gradient(90deg,transparent 0%,
    rgba(255,232,186,.10) 24%,rgba(255,240,208,.30) 42%,rgba(255,250,236,.44) 50%,
    rgba(255,240,208,.30) 58%,rgba(255,232,186,.10) 76%,transparent 100%);
  filter:blur(10px);
  transform:translateX(-180%) skewX(-14deg);
  animation:yalama 13s ease-in-out infinite}


/* ── kutunun gelişi ──
   Masaya bırakılıyor gibi: biraz yukarıdan ve biraz büyük başlıyor,
   yerine inerken gerçek boyutuna oturuyor. Temas gölgesi de onunla
   birlikte iniyor çünkü animasyon kabın kendisinde.
   `translate` ve `scale` ayrı CSS özellikleri olarak kullanıldı; böylece
   içerideki fare eğilmesi ve süzülme `transform`'larıyla çakışmıyor. */
html.js body.panelli .sahne-nesne{
  animation:kutuGel 2.7s cubic-bezier(.19,.82,.24,1) both;
  animation-delay:.35s}
@keyframes kutuGel{
  from{opacity:0;translate:-50% -66%;scale:1.12}
  35% {opacity:1}
  to  {opacity:1;translate:-50% -50%;scale:1}
}
/* ilk parıltı kutu yere oturduğu anda geçsin */
html.js body.panelli .sahne-nesne .parlama::before{animation-delay:2.5s}

@media (prefers-reduced-motion: reduce){
  html.js body.panelli .sahne-nesne{animation:none;translate:-50% -50%;scale:1}
}

/* ── giriş yazısı ── */
.panel-giris .giris-yazi{max-width:34rem}
.panel-giris h1{font-size:clamp(2.4rem,1.3rem + 3.6vw,4.4rem);margin:1.5rem 0 0}
.panel-giris .lede{color:var(--kul);margin-top:1.8rem;max-width:40ch;line-height:1.75}
.kicker .im{display:inline-block;width:1.1em;height:1px;background:var(--kul-2);
  vertical-align:middle;margin-right:.7em;translate:0 -1px}

/* oklu bağlantı */
.okla{display:inline-flex;align-items:center;gap:1.2rem;margin-top:2.6rem;
  text-decoration:none;font-family:var(--mono);font-size:.72rem;font-weight:500;
  letter-spacing:.22em;text-transform:uppercase;color:var(--kemik);
  transition:color var(--gecis)}
.okla .ok{display:block;width:74px;height:1px;background:currentColor;position:relative;
  transition:width var(--gecis)}
.okla .ok::after{content:"";position:absolute;right:0;top:-3px;
  width:7px;height:7px;border-top:1px solid currentColor;border-right:1px solid currentColor;
  rotate:45deg}
.okla:hover{color:var(--pirinc-ak)}
.okla:hover .ok{width:104px}

/* ── panelin altındaki künye ── */
.panel-alt{position:absolute;z-index:2;left:0;right:0;bottom:0;
  padding:0 var(--bosluk) clamp(1.2rem,3vh,2rem);
  max-width:var(--en);margin-inline:auto}
.panel-alt .p-ust{display:flex;justify-content:flex-end;margin-bottom:-.2rem}
/* 02'de künye nesnelerin üstünden geçebilir: yazılar okunur kalsın */
.panel-el .panel-alt{text-shadow:0 0 3px rgba(5,3,3,.85),0 1px 14px rgba(5,3,3,.9)}
.panel-alt .p-cizgi{display:flex;align-items:center;gap:1.1rem;margin-bottom:1rem}
.panel-alt .p-cizgi::before,.panel-alt .p-cizgi::after{content:"";flex:1;height:1px;background:var(--cizik)}

/* aşağı ok: künyenin çizgisini ortadan böler. İnce gövdede bir ışık aşağı akar,
   ucu da aynı anda hafifçe iner. Yazı yok, erişilebilir adı aria-label'da */
.kaydir{position:relative;display:inline-flex;flex-direction:column;align-items:center;
  background:none;border:0;padding:.3rem .7rem .55rem;cursor:pointer;color:var(--kemik)}
.kaydir:focus-visible{outline:1px solid var(--pirinc);outline-offset:3px}
.kaydir i{position:relative;display:block;width:1px;height:30px;
  background:rgba(226,214,192,.28);overflow:hidden}
.kaydir i::after{content:"";position:absolute;left:0;right:0;top:-45%;height:45%;
  background:linear-gradient(to bottom,transparent,var(--pirinc-ak));
  animation:kaydirAk 2.4s cubic-bezier(.6,0,.4,1) infinite}
.kaydir::after{content:"";width:7px;height:7px;margin-top:-6px;
  border-right:1px solid currentColor;border-bottom:1px solid currentColor;rotate:45deg;
  animation:kaydirUc 2.4s cubic-bezier(.6,0,.4,1) infinite}
.kaydir:hover{color:var(--pirinc-ak)}
.kaydir.yukari{rotate:180deg}
@keyframes kaydirAk{0%{top:-45%}70%,100%{top:100%}}
@keyframes kaydirUc{0%,35%{translate:0 0;opacity:.7}65%{translate:0 4px;opacity:1}100%{translate:0 0;opacity:.7}}
@media (prefers-reduced-motion: reduce){.kaydir i::after,.kaydir::after{animation:none}.kaydir i::after{top:30%}}
.panel-alt .p-satir{display:flex;justify-content:space-between;gap:1.5rem;
  flex-wrap:wrap;font-family:var(--mono);font-size:.64rem;letter-spacing:.2em;
  text-transform:uppercase;color:var(--kul)}
.panel-alt .p-sol{display:flex;gap:1.6rem;flex-wrap:wrap}
.panel-alt .p-sol span+span{position:relative;padding-left:1.6rem}
.panel-alt .p-sol span+span::before{content:"";position:absolute;left:0;top:.1em;bottom:.1em;
  width:1px;background:var(--cizik)}
.panel-alt .p-satir.ince{margin-top:.9rem;color:var(--kul-2);font-size:.6rem}

/* ── video paneli ── */
.panel-video{background:var(--zemin-dip)}
.panel-film{position:absolute;inset:0;width:100%;height:100%;
  object-fit:cover;display:block;z-index:0}
/* kenarlarda yumuşak karartma: video kadrajın içinde dursun */
.film-perde{position:absolute;inset:0;z-index:1;pointer-events:none;
  background:
    radial-gradient(ellipse 96% 84% at 50% 48%,transparent 52%,rgba(5,3,3,.62) 100%),
    linear-gradient(to bottom,rgba(5,3,3,.55) 0%,transparent 16%,transparent 78%,rgba(5,3,3,.7) 100%)}

/* ══════════════ 02 · EL ══════════════
   Karanlık zemin üstünde tek bir detay: büyük, çapraz, kadrajdan taşar.
   Solda sabit yazı; sağda o detayın adı, altta malzeme notu ve ilerleme.
   Her detay birkaç saniyede bir yumuşakça yerini sıradakine bırakır. */
.panel-el{background:var(--zemin-dip)}
.el-zemin{position:absolute;inset:0;z-index:0}
.el-zemin img{width:100%;height:100%;object-fit:cover;object-position:78% 50%}
/* yazının durduğu sol taraf biraz daha karanlık */
.el-zemin::after{content:"";position:absolute;inset:0;
  background:linear-gradient(90deg,rgba(5,3,3,.55) 0%,rgba(5,3,3,.25) 32%,transparent 52%)}

.el-sahne{position:absolute;inset:0;z-index:1;pointer-events:none}
.el-kare{position:absolute;inset:0;opacity:0;
  transition:opacity 1.6s cubic-bezier(.4,0,.2,1)}
.el-kare.acik{opacity:1}

/* alfa nesne: görselin içindeki odak noktası (--ox/--oy) ekranda --x/--y'ye oturur,
   o noktanın etrafında döner; gelirken çok yavaşça yaklaşır */
.el-nesne{position:absolute;left:var(--x);top:var(--y);height:var(--boy);width:auto;max-width:none;
  translate:calc(var(--ox) * -1) calc(var(--oy) * -1);
  transform-origin:var(--ox) var(--oy);rotate:var(--aci);
  scale:1.045;transition:scale 8s cubic-bezier(.2,.6,.3,1);
  --maske-v:linear-gradient(to bottom,#000 90%,transparent 100%);
  -webkit-mask-image:var(--maske,var(--maske-v));
          mask-image:var(--maske,var(--maske-v));
  -webkit-mask-composite:source-in;mask-composite:intersect}
.el-kare.acik .el-nesne{scale:1}

/* tam kare fotoğraf (alfa yoksa, geçici): sağdaki başlık alanına taşmadan ortada durur,
   kenarları zemine erir */
.el-foto{position:absolute;left:37%;top:46%;width:min(54vw,calc(80svh * 1.5));height:auto;
  max-width:none;aspect-ratio:3/2;object-fit:cover;translate:0 -50%;
  scale:1.05;transition:scale 8s cubic-bezier(.2,.6,.3,1);
  -webkit-mask-image:linear-gradient(90deg,transparent,#000 22%,#000 90%,transparent),
                     linear-gradient(to bottom,transparent,#000 9%,#000 84%,transparent);
  -webkit-mask-composite:source-in;
          mask-image:linear-gradient(90deg,transparent,#000 22%,#000 90%,transparent),
                     linear-gradient(to bottom,transparent,#000 9%,#000 84%,transparent);
          mask-composite:intersect}
.el-kare.acik .el-foto{scale:1}

/* görsel gelene kadar duran çerçeve */
.el-yer{position:absolute;left:46%;right:26%;top:20%;bottom:24%;display:flex;flex-direction:column;
  align-items:center;justify-content:center;gap:.7rem;text-align:center;padding:1.5rem;
  border:1px dashed var(--pirinc-dip);background:rgba(21,17,14,.5)}
.el-yer span{font-family:var(--mono);font-size:.62rem;letter-spacing:.22em;
  text-transform:uppercase;color:var(--kul-2)}
.el-yer b{font-family:var(--disp);font-weight:400;font-size:clamp(1.1rem,.9rem + .7vw,1.5rem);
  color:var(--kemik);max-width:20ch}
.el-yer small{font-family:var(--mono);font-size:.62rem;color:var(--pirinc)}

.el-yazi{position:relative;z-index:2;max-width:31rem}
.el-yazi h2{font-size:clamp(2.4rem,1.3rem + 3.6vw,4.4rem);margin:1.5rem 0 0;line-height:1.06}
.el-yazi .lede{color:var(--kul);margin-top:1.8rem;max-width:38ch;line-height:1.75;text-wrap:pretty}

/* sıradaki detayın adı: her slaytta nesneye binmeyecek yerde (--bx/--by) */
.el-bilgiler{position:absolute;inset:0;z-index:2;pointer-events:none;
  text-shadow:0 0 3px rgba(5,3,3,.85),0 1px 16px rgba(5,3,3,.9)}
.el-bilgi{position:absolute;left:var(--bx);top:var(--by);
  width:min(24rem,calc(100% - var(--bx) - clamp(1rem,2.4vw,2.4rem) - 3.5rem));
  opacity:0;translate:0 10px;transition:opacity .8s ease,translate .8s ease}
.el-bilgi.acik{opacity:1;translate:0 0;transition-delay:.35s}
/* başlığın arkasında hafif, kenarları dağılan bir gölge: yazı derinin ya da
   pirincin parlak yerine denk gelse de okunur kalsın */
.el-bilgi::before{content:"";position:absolute;inset:-3rem -3.5rem;z-index:-1;pointer-events:none;
  background:radial-gradient(closest-side,rgba(5,3,3,.6),rgba(5,3,3,.32) 55%,transparent)}
.el-sira{font-family:var(--mono);font-size:.66rem;letter-spacing:.2em;color:var(--kemik)}
.el-bilgi h3{font-family:var(--disp);font-weight:400;color:var(--kemik-ak);
  font-size:clamp(1.2rem,.55rem + 1.25vw,2.2rem);line-height:1.2;margin:1.2rem 0 0;
  text-wrap:balance}
.el-bilgi i{display:block;width:3.6rem;height:1px;background:var(--pirinc);margin:1.4rem 0 1.2rem}
.el-bilgi p{font-family:var(--mono);font-size:.68rem;letter-spacing:.18em;text-transform:uppercase;
  color:var(--kemik);line-height:1.9}

/* ilerleme çizgileri: künye şeridinin çizgisinin üstünde, sağa yaslı */
.el-adim{display:flex;gap:.45rem}
.el-adim button{background:none;border:0;padding:.7rem 0;cursor:pointer;width:34px}
.el-adim button i{display:block;height:1px;background:var(--cizik);position:relative;overflow:hidden}
.el-adim button i::after{content:"";position:absolute;inset:0;background:var(--pirinc);
  transform:scaleX(0);transform-origin:left}
.el-adim button.gecti i::after{transform:scaleX(1)}
.el-adim button.acik i::after{animation:elDolum var(--el-sure,7s) linear forwards}
.el-adim button:hover i{background:var(--kul-2)}
@keyframes elDolum{from{transform:scaleX(0)}to{transform:scaleX(1)}}

/* panel ilk kez görününce yazılar gelir (sayfa açılışında değil) */
html.js .panel:not(.panel-giris) .p-gel{opacity:0;transform:translateY(22px);filter:blur(8px);
  transition:opacity .9s cubic-bezier(.16,.84,.32,1),transform .9s cubic-bezier(.16,.84,.32,1),
             filter .9s cubic-bezier(.16,.84,.32,1);
  transition-delay:calc(var(--g,0) * 110ms + 350ms)}
html.js .panel.gorundu .p-gel{opacity:1;transform:none;filter:none}

/* tablet ve telefon: yazı üstte, detay alt yarıda; adı sağ altta */
@media (max-width:1000px){
  .el-zemin img{object-position:84% 50%}
  .el-zemin::after{background:linear-gradient(to bottom,rgba(5,3,3,.7) 0%,rgba(5,3,3,.35) 45%,transparent 70%)}
  .el-nesne{left:var(--mx);top:var(--my);height:var(--mboy);
    -webkit-mask-image:var(--mmaske,var(--maske,var(--maske-v)));
            mask-image:var(--mmaske,var(--maske,var(--maske-v)))}
  .el-foto{left:-6%;top:auto;bottom:9%;width:112%;translate:none}
  .el-yer{left:var(--bosluk);right:var(--bosluk);top:56%;bottom:18%}
  .el-bilgi{left:auto;top:auto;right:var(--bosluk);bottom:var(--mb);width:min(15rem,50vw);
    text-align:right}
  .el-bilgi h3{font-size:1.15rem;margin-top:.6rem}
  .el-bilgi i,.el-bilgi p{display:none}
}
@media (max-width:600px){
  .el-nesne{left:var(--tx);top:var(--ty);height:var(--tboy)}
  .el-bilgi{width:min(11.5rem,48vw);bottom:var(--tb)}
  .el-bilgi h3{font-size:1.02rem}
}
/* kısa telefonlar: bağlantı yazısının altına sığsın */
@media (max-width:600px) and (max-height:720px){
  .el-nesne{left:var(--ktx,var(--tx));top:var(--kty,calc(var(--ty) + 6svh));
    height:var(--kboy,calc(var(--tboy) * .8))}
  .el-bilgi{bottom:var(--kb,var(--tb))}
}
@media (prefers-reduced-motion: reduce){
  .el-kare,.el-nesne,.el-foto,.el-bilgi{transition:none}
  .el-nesne,.el-foto{scale:1}
  .el-adim button.acik i::after{animation:none;transform:scaleX(1)}
  html.js .panel:not(.panel-giris) .p-gel{opacity:1;transform:none;filter:none;transition:none}
}

/* ══════════════ ZEMİNLİ PANELLER (03 Numara, 04 Sahibi, 05 Miras) ══════════════
   Tam ekran bir sahne görseli (mockup'lar bu görsellerin kendisi), solda yazı.
   Görsel sağa yaslı durur. Başlık tek satır kalsın diye, ekran dar/uzunsa zemin
   sağa kayar (--z-kay): nesnenin sol kenarı başlığın bittiği yere çekilir, sağ ucu
   kadrajdan taşar. Kayınca açılan sol kenar karanlığa erir.
   Panel başına: --z-x   başlık hizasında nesnenin sol kenarı (görsel genişliğine oranı)
                 --z-oran görselin en/boy oranı
                 --z-genis başlığın en uzun satırı, em cinsinden (tarayıcıda ölçüldü)
                 --z-olcek görsel sağ kenarından bu kadar büyütülür (mockup'taki kadraj)
                 --z-x2, --z-lede  isteğe bağlı ikinci hiza: alt metin/bağlantı hizasında
                           nesnenin sol kenarı ve metnin genişliği (05'te kutunun köşesi) */
.panel-zeminli{background:var(--zemin-dip);
  --z-bas:calc(max(0px, (100vw - var(--en)) / 2) + var(--bosluk));   /* yazının başladığı x */
  --z-fs:clamp(2.2rem, 1rem + 2.6vw, 3.6rem);                        /* başlık boyu */
  --z-kenar:calc(100vw - (100vw - min(var(--z-x) * 100vw, 100vw - (1 - var(--z-x)) * var(--z-oran) * 100svh)) * var(--z-olcek, 1));
  --z-kenar2:calc(100vw - (100vw - min(var(--z-x2, 1) * 100vw, 100vw - (1 - var(--z-x2, 1)) * var(--z-oran) * 100svh)) * var(--z-olcek, 1));
  --z-kay:max(0px,
    var(--z-bas) + var(--z-fs) * var(--z-genis) + 2.5rem - var(--z-kenar),
    var(--z-bas) + var(--z-lede, 0px) + 2.5rem - var(--z-kenar2))}
.panel-numara{--z-x:.477;--z-oran:1.92;--z-genis:9.9}
.panel-kayit{--z-x:.468;--z-oran:1.925;--z-genis:6.9;--z-olcek:1.1}
/* 05: başlık hizasında kapağın sol kenarı zeminde x ≈ %59; alt metin ve bağlantı
   hizasında kutunun ön-sol köşesi x ≈ %39,7 (metin en fazla ~17rem) */
.panel-miras{--z-x:.59;--z-oran:1.92;--z-genis:9;--z-x2:.397;--z-lede:17rem}

.z-zemin{position:absolute;inset:0;z-index:0;overflow:hidden}
/* sahne = zemin görselinin kendisi, ekranı kaplayacak boyda, sağa yaslı (cover gibi).
   Nesne (05'teki kutu) sahnenin içinde yüzdeyle durur, zeminle birlikte ölçeklenir */
.z-sahne{position:absolute;right:0;top:50%;
  width:max(100vw, 100svh * var(--z-oran));aspect-ratio:var(--z-oran);
  translate:var(--z-kay) -50%;transform-origin:100% 35%;
  scale:calc(var(--z-olcek, 1) * 1.04);transition:scale 9s cubic-bezier(.2,.6,.3,1)}
.panel-zeminli.gorundu .z-sahne{scale:var(--z-olcek, 1)}
.z-arka{position:absolute;inset:0;width:100%;height:100%;max-width:none;
  -webkit-mask-image:linear-gradient(90deg,transparent 0,#000 9%);
          mask-image:linear-gradient(90deg,transparent 0,#000 9%)}
/* nesne mermere otursun: ışık sol üstten, gölge sağ alta; bir de dar temas gölgesi */
.z-nesne{position:absolute;height:auto;max-width:none;
  filter:drop-shadow(2px 5px 4px rgba(0,0,0,.75)) drop-shadow(18px 26px 30px rgba(0,0,0,.6))}
/* solda yazı, üstte menü, altta künye okunur kalsın */
.z-zemin::after{content:"";position:absolute;inset:0;pointer-events:none;
  background:
    linear-gradient(90deg,rgba(5,3,3,.5) 0%,rgba(5,3,3,.28) 30%,transparent 50%),
    linear-gradient(to bottom,rgba(5,3,3,.4) 0%,transparent 13%,transparent 74%,rgba(5,3,3,var(--z-alt-koyu,.62)) 100%)}
/* defterin sayfaları açık renk: künye yazıları üstünde okunsun diye alt daha koyu */
.panel-kayit{--z-alt-koyu:.85}

.z-yazi{position:relative;z-index:2}
.z-yazi h2{font-size:var(--z-fs);margin:1.5rem 0 0;line-height:1.1;white-space:nowrap}
.z-yazi .lede{color:var(--kul);margin-top:1.1rem;max-width:36ch;line-height:1.75}
.z-yazi h2 + .lede{margin-top:1.8rem}
.z-yazi h2 + .z-metin > .lede:first-child{margin-top:1.8rem}
.kicker .kc{display:inline-block;width:3.4em;height:1px;background:currentColor;
  vertical-align:middle;margin-left:1em;opacity:.7}
.panel-zeminli .panel-alt{text-shadow:0 0 3px rgba(5,3,3,.85),0 1px 14px rgba(5,3,3,.9)}

/* tablet ve telefon: yazı üstte, nesne altta; görsel sağa yaslı (sağ kenarı ekranın
   kenarında, dikiş görünmez), üst ve alt kenarı karanlığa erir */
@media (max-width:1000px){
  .panel-zeminli{--zm-en:108vw;--zm-alt:11svh;--z-olcek:1}
  .z-yazi h2{white-space:normal}
  .z-sahne{top:auto;right:0;bottom:var(--zm-alt);width:var(--zm-en);
    translate:none;transform-origin:60% 70%}
  .z-arka{-webkit-mask-image:linear-gradient(to bottom,transparent 0,#000 24%,#000 86%,transparent 100%);
                  mask-image:linear-gradient(to bottom,transparent 0,#000 24%,#000 86%,transparent 100%)}
  .z-zemin::after{background:
    linear-gradient(to bottom,rgba(5,3,3,.35) 0%,transparent 40%,transparent 76%,rgba(5,3,3,.55) 100%)}
}
@media (max-width:600px){
  .panel-zeminli{--zm-en:150vw;--zm-alt:6svh}
}
/* 05: kutunun alt kenarı PNG'de kesik; dar ekranda sahne ekranın dibine oturur ki
   o kesik hiç görünmesin (masaüstünde zaten ekranın altında kalıyor) */
@media (max-width:1000px){ .panel-zeminli.panel-miras{--zm-alt:0px} }
@media (max-width:600px) and (max-height:720px){ .panel-zeminli.panel-miras{--zm-en:118vw} }
/* kısa telefonlar: yazı sıkışır ki nesneye yer kalsın */
@media (max-width:600px) and (max-height:720px){
  .panel-zeminli{--zm-en:132vw;--zm-alt:2svh}
  .z-yazi h2{font-size:1.9rem;margin-top:1.1rem}
  .z-yazi .lede{font-size:.92rem;line-height:1.6;margin-top:.6rem}
  .z-yazi h2 + .lede{margin-top:1.1rem}
  .z-yazi h2 + .z-metin > .lede:first-child{margin-top:1.1rem}
  .z-yazi .okla{margin-top:1.6rem}
}
@media (prefers-reduced-motion: reduce){
  .z-sahne{transition:none;scale:var(--z-olcek, 1)}
}

/* ── boş paneller ── */
.panel-bos .panel-ic{justify-content:center;text-align:center}
.bos-iskelet{display:flex;flex-direction:column;align-items:center;gap:1.6rem}
.bos-iskelet h2{color:var(--kemik-ak)}
.bos-iskelet p{color:var(--kul-2);font-family:var(--mono);font-size:.72rem;
  letter-spacing:.16em;text-transform:uppercase}

/* ── sağdaki indeks ── */
.indeks{position:fixed;z-index:60;right:clamp(1rem,2.4vw,2.4rem);top:50%;translate:0 -50%;
  display:flex;flex-direction:column;gap:1.1rem;align-items:flex-end}
.indeks button{background:none;border:0;cursor:pointer;padding:.2rem 0;
  display:flex;align-items:center;gap:.7rem;
  font-family:var(--mono);font-size:.62rem;letter-spacing:.18em;
  color:var(--kul-2);transition:color var(--gecis)}
.indeks button i{display:block;width:1px;height:0;background:var(--pirinc);
  transition:height var(--gecis)}
.indeks button:hover{color:var(--kul)}
.indeks button{text-shadow:0 0 3px rgba(5,3,3,.85),0 1px 12px rgba(5,3,3,.9)}
.indeks button[aria-current]{color:var(--kemik-ak)}
.indeks button[aria-current] i{height:30px}

@media (max-width:1000px){
  .sahne-nesne{left:50%;top:68%;width:min(84vw,580px)}
  .sahne-zemin::after{background:
    linear-gradient(to bottom,rgba(5,3,3,.86) 0%,rgba(5,3,3,.62) 34%,rgba(5,3,3,.4) 56%,rgba(5,3,3,.88) 100%)}
  .panel-ic{align-items:flex-start;padding-top:clamp(6rem,14vh,9rem)}
  .panel-giris .giris-yazi{max-width:30rem}
  .indeks{display:none}
}
@media (max-width:760px){
  body.sahneli .marka img{height:34px}
  body.sahneli.kaydi .marka img{height:30px}
  /* uzun bağlantı yazısı telefonda tek satırda kalsın, ok kopmasın */
  .okla{gap:.8rem;letter-spacing:.13em;font-size:.66rem;white-space:nowrap}
  .okla .ok{width:40px}
  .okla:hover .ok{width:52px}
  .panel-alt .p-satir.ince{display:none}
  .panel-alt .p-sag{display:none}
}
@media (prefers-reduced-motion: reduce){
  .raylar{transition:none}
  .sahne-nesne img,.sahne-nesne .parlama,.sahne-nesne .parlama::before{animation:none}
  .sahne-nesne .parlama{display:none}
}


/* ══════════════════════════════════════════════════════════
   BÜTÜN SİTE — ANA SAYFANIN DİLİ
   İç sayfalar da tam ekran bir sahneyle açılır: solda numaralı etiket,
   Bodoni başlık, gri giriş metni, uzun oklu bağlantı, altta künye şeridi.
   ══════════════════════════════════════════════════════════ */

/* ── üst bar: görselin üstünde şeffaf; kaydırınca deri zemin geri gelir ── */
body.sahneli .ust{position:fixed;left:0;right:0;top:0;background-color:transparent;
  transition:background-color .6s ease}
body.sahneli .ust .deri,
body.sahneli .ust .isik,
body.sahneli .ust::after{opacity:0;transition:opacity .6s ease}
body.sahneli.kaydi .ust{background-color:var(--zemin-dip)}
body.sahneli.kaydi .ust .deri,
body.sahneli.kaydi .ust .isik,
body.sahneli.kaydi .ust::after{opacity:1}
body.sahneli .marka img{height:44px;transition:height .5s ease}
body.sahneli.kaydi .marka img{height:38px}
/* menü ve dil, görselin parlak yerine denk gelse de okunsun */
body.sahneli .menu a,
body.sahneli .dil-sec{text-shadow:0 0 3px rgba(5,3,3,.8),0 1px 12px rgba(5,3,3,.85)}

.ust-sag{display:flex;align-items:center;gap:clamp(1.4rem,2.6vw,2.4rem)}

/* ── dil seçici ── */
.dil-sec{display:flex;align-items:center;gap:.7rem;font-family:var(--mono);
  font-size:.62rem;letter-spacing:.2em;position:relative}
.dil-sec i{width:1px;height:.95em;background:var(--kul-2)}
.dil-sec span{color:var(--kemik-ak)}
.dil-sec a{color:var(--kul-2);text-decoration:none;padding:.4rem 0;transition:color var(--gecis)}
.dil-sec a:hover{color:var(--pirinc-ak)}
/* menüden ince bir dikey çizgiyle ayrılır */
.menu + .dil-sec{padding-left:clamp(1.4rem,2.6vw,2.4rem)}
.menu + .dil-sec::before{content:"";position:absolute;left:0;top:50%;width:1px;height:1.1rem;
  translate:0 -50%;background:rgba(208,182,150,.22)}
.dil-sec.buyuk{font-size:.78rem;gap:1rem;margin-bottom:1.4rem}
@media (max-width:760px){
  .menu + .dil-sec{padding-left:0}
  .menu + .dil-sec::before{display:none}
  .ust-sag{gap:1.3rem}
}

/* ── iç sayfalarda sahne yüksekliği içeriğe göre uzayabilir ── */
body:not(.panelli) .panel{height:auto;min-height:100svh}
body:not(.panelli) .panel .panel-ic{height:auto;min-height:100svh}
.z-yazi h1{font-size:var(--z-fs);margin:1.5rem 0 0;line-height:1.1;white-space:nowrap}
@media (max-width:1000px){ .z-yazi h1{white-space:normal} }

/* numaralı etiket: "02 —— PARÇA HAKKINDA" — çizgiden sonraki yazı */
.kicker .kc + span{margin-left:1em}

/* ── aşağıda belirenler ── */
.belir.bekle{opacity:0;translate:0 24px;transition:opacity .9s var(--gecis),translate .9s var(--gecis)}
.belir.geldi{opacity:1;translate:0 0}
.u-sag.belir{transition-delay:.12s}

/* ══════════════ KOLEKSİYON · DEFTER ══════════════
   Kullanıcının mockup'ı: dikey kartlar yan yana, sağa doğru uzar; başlık
   ilk kartın üst boşluğuna biner, kartlar kaydırılınca kaybolur. Altta
   ilerleme çizgisi ve kart numaraları. Dikey tekerlek kartları yana kaydırır. */
.defter-sahne{position:relative;isolation:isolate;overflow:hidden;min-height:100svh;
  display:flex;flex-direction:column;
  --kol-kenar:clamp(1rem,2.6vw,3.2rem);
  --kart-en:clamp(250px,23vw,440px);
  --kart-ic:clamp(1.2rem,2.2vw,2.6rem);
  --kol-ara:clamp(.9rem,1.4vw,1.7rem);
  padding:clamp(5.4rem,12svh,7rem) 0 clamp(1rem,3svh,1.8rem)}
.defter-sahne > .isik{z-index:-1}

.kol-giris{position:absolute;z-index:6;pointer-events:none;
  left:calc(var(--kol-kenar) + var(--kart-ic));top:clamp(5.6rem,11svh,7rem);max-width:22rem;
  transition:opacity .5s ease,translate .5s ease}
.kol-giris.gizli{opacity:0;translate:-28px 0}
.kol-giris .kicker{display:flex;align-items:center;color:var(--kemik);opacity:.85}
.kol-giris .kicker .kc{margin:0 0 0 1em;width:5rem;opacity:.5}
.kol-giris h1{font-size:clamp(3rem,1.4rem + 6.4svh,5.6rem);line-height:.98;margin:.9rem 0 0;white-space:nowrap;
  color:var(--kemik-ak);text-shadow:0 2px 24px rgba(5,3,3,.7)}
.kol-giris .lede{margin-top:1.1rem;font-family:var(--disp);color:var(--kemik);
  font-size:clamp(1rem,.78rem + 1svh,1.3rem);line-height:1.38;text-shadow:0 1px 14px rgba(5,3,3,.9)}

.kol-ray{flex:1;display:flex;gap:var(--kol-ara);overflow-x:auto;overflow-y:hidden;
  padding:clamp(1.4rem,4.5svh,3rem) var(--kol-kenar) 1.4rem;
  scrollbar-width:none;overscroll-behavior-x:contain;outline:none}
.kol-ray::-webkit-scrollbar{display:none}
.kol-ray:focus-visible{box-shadow:inset 0 0 0 1px var(--pirinc-dip)}
@media (hover:none){ .kol-ray{scroll-snap-type:x mandatory;scroll-padding-inline:var(--kol-kenar)} }
/* fareyle sürüklerken: tutma imleci, yazı seçilmesin, kartların üstünlük efektleri dursun */
.kol-ray.suruklu{cursor:grabbing;user-select:none;-webkit-user-select:none}
.kol-ray.suruklu .kart{pointer-events:none}

.kart{position:relative;flex:none;width:var(--kart-en);min-height:26rem;
  scroll-snap-align:start;overflow:hidden;isolation:isolate;
  background:#0B0807;box-shadow:inset 0 0 0 1px rgba(208,182,150,.12);
  transition:box-shadow .5s ease}
.kart:hover,.kart:has(.kart-bag:focus-visible){box-shadow:inset 0 0 0 1px rgba(208,182,150,.42)}

.kart-gorsel{position:absolute;inset:0;z-index:-1}
.kart-gorsel img{width:100%;height:100%;object-fit:cover;
  transition:scale 1.4s cubic-bezier(.2,.6,.3,1)}
/* çok yatay görsel: kartı doldurmaz, ortada durur, kenarları erir */
.kart-gorsel.yatay img{position:absolute;left:-6%;width:112%;max-width:none;height:auto;
  top:46%;translate:0 -50%;object-fit:contain;
  -webkit-mask-image:radial-gradient(ellipse 50% 50% at 50% 50%,#000 58%,transparent 100%);
          mask-image:radial-gradient(ellipse 50% 50% at 50% 50%,#000 58%,transparent 100%)}
.kart:hover .kart-gorsel img{scale:1.045}
/* üstte etiket, altta yazı okunsun */
.kart-gorsel::after{content:"";position:absolute;inset:0;pointer-events:none;
  background:linear-gradient(to bottom,rgba(5,3,3,.94) 0%,rgba(5,3,3,.88) 25%,rgba(5,3,3,.3) 35%,transparent 42%,
    transparent 44%,rgba(5,3,3,.72) 55%,rgba(5,3,3,.94) 64%,rgba(5,3,3,.97) 100%)}
/* ilk kartın üstünde sayfa başlığı durur: üst taraf daha koyu */
.kart:first-child .kart-gorsel::after{background:linear-gradient(to bottom,rgba(5,3,3,.98) 0%,
    rgba(5,3,3,.97) calc(var(--ilk-karanlik,34%) - 4%),rgba(5,3,3,.35) calc(var(--ilk-karanlik,34%) + 8%),
    transparent calc(var(--ilk-karanlik,34%) + 14%),rgba(5,3,3,.72) 58%,rgba(5,3,3,.94) 66%,rgba(5,3,3,.97) 100%)}

.kart-ust{position:absolute;left:var(--kart-ic);right:var(--kart-ic);top:var(--kart-ust,17%);
  display:flex;align-items:center;gap:1rem;pointer-events:none}
.kart-no{font-family:var(--disp);font-size:clamp(1.15rem,.9rem + .5vw,1.5rem);color:var(--kemik);
  font-variant-numeric:lining-nums}
.kart-ust i{width:clamp(2rem,3.5vw,3.4rem);height:1px;background:rgba(226,214,192,.45)}
.kart-tema{margin-left:auto;font-family:var(--mono);font-size:.6rem;letter-spacing:.26em;
  text-transform:uppercase;color:var(--kemik);opacity:.85}

.kart-alt{position:absolute;left:var(--kart-ic);right:var(--kart-ic);bottom:clamp(1.2rem,3.6svh,2.3rem)}
.kart-ad{font-size:clamp(1.3rem,.85rem + .95vw,1.9rem);line-height:1.15;color:var(--kemik-ak);text-wrap:balance}
.kart-bag{color:inherit;text-decoration:none;outline:none}
.kart-bag::after{content:"";position:absolute;inset:0;z-index:5}
.kart-ozet{margin:.7rem 0 0;font-family:var(--disp);color:var(--kemik);opacity:.8;
  font-size:clamp(.9rem,.78rem + .3vw,1.05rem);line-height:1.45;
  display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.kart-edisyon{display:flex;align-items:flex-end;gap:1rem;margin-top:1.4rem}
.kart-edisyon > span:first-child{flex:1;min-height:1.6em;font-family:var(--mono);font-size:.6rem;
  letter-spacing:.18em;text-transform:uppercase;color:var(--kul);
  padding-bottom:.6rem;border-bottom:1px solid rgba(208,182,150,.35)}
.kart-edisyon b{font-weight:500;color:var(--pirinc);margin-right:.5em}
.kart-arti{flex:none;position:relative;width:2.4rem;height:2.4rem;border-radius:50%;
  border:1px solid rgba(226,214,192,.72);transition:background .4s ease,border-color .4s ease}
.kart-arti::before,.kart-arti::after{content:"";position:absolute;left:50%;top:50%;width:.8rem;height:1px;
  translate:-50% -50%;background:var(--kemik);transition:background .4s ease}
.kart-arti::after{rotate:90deg}
.kart:hover .kart-arti,.kart:has(.kart-bag:focus-visible) .kart-arti{background:var(--pirinc);border-color:var(--pirinc)}
.kart:hover .kart-arti::before,.kart:hover .kart-arti::after,
.kart:has(.kart-bag:focus-visible) .kart-arti::before,
.kart:has(.kart-bag:focus-visible) .kart-arti::after{background:var(--zemin-dip)}

/* son kart: gelecek parça */
.yakinda-isik{position:absolute;inset:0;
  background:radial-gradient(ellipse 60% 55% at 50% -4%,rgba(208,182,150,.26),transparent 70%),
             radial-gradient(ellipse 46% 22% at 50% 60%,rgba(208,182,150,.08),transparent 72%)}
.yakinda-alt{text-align:center}
.yakinda-alt .kart-ad{font-size:clamp(1.45rem,1rem + 1.05vw,2.1rem);line-height:1.22}
.yakinda-cizgi{display:block;width:2.4rem;height:1px;background:rgba(226,214,192,.5);margin:1.5rem auto 1.3rem}
.yakinda-not{font-family:var(--mono);font-size:.6rem;letter-spacing:.26em;text-transform:uppercase;
  color:var(--kemik);opacity:.85;line-height:2.1}
.yakinda .kart-edisyon > span:first-child{border:0}

/* alt: ilerleme ve kart numaraları */
.kol-alt{display:flex;align-items:center;gap:clamp(1.5rem,3vw,3rem);
  padding:0 calc(var(--kol-kenar) + var(--kart-ic)) 0}
.kol-ilerleme{flex:1;position:relative;height:1px;background:var(--cizik)}
.kol-ilerleme i{position:absolute;left:0;top:-.5px;height:2px;width:10%;background:var(--pirinc);
  transition:width .35s ease}
.kol-sayfa{display:flex;gap:clamp(1rem,2.4vw,2.6rem)}
.kol-sayfa button{background:none;border:0;padding:.5rem 0;cursor:pointer;font-family:var(--mono);
  font-size:.62rem;letter-spacing:.2em;color:var(--kul-2);transition:color var(--gecis)}
.kol-sayfa button:hover{color:var(--kemik)}
.kol-sayfa button.acik{color:var(--kemik-ak)}

@media (max-width:1000px){
  .defter-sahne{--kart-en:clamp(260px,42vw,380px)}
}
@media (max-width:760px){
  .defter-sahne{min-height:auto;padding-top:6rem;--kart-en:78vw}
  .kol-giris{position:static;padding:0 var(--bosluk);max-width:none;pointer-events:auto}
  .kol-giris.gizli{opacity:1;translate:none}
  .kol-ray{flex:none;height:min(72svh,36rem);padding-top:1.6rem}
  .kart:first-child .kart-gorsel::after{background:linear-gradient(to bottom,rgba(5,3,3,.94) 0%,
      rgba(5,3,3,.88) 25%,rgba(5,3,3,.3) 35%,transparent 42%,transparent 44%,rgba(5,3,3,.72) 55%,rgba(5,3,3,.94) 64%,rgba(5,3,3,.97) 100%)}
  .kol-alt{padding:.4rem var(--bosluk) 0}
  .kol-sayfa{gap:.9rem}
}

/* ══════════════ ÜRÜN ══════════════ */
.urun-sahne{background:var(--zemin-dip)}
.urun-sahne > .isik{z-index:0}
.u-gorsel{position:absolute;z-index:1;margin:0;top:0;bottom:0;right:0;width:min(60%,64rem);
  display:flex;align-items:center;justify-content:center;
  padding:clamp(5.5rem,12svh,7.5rem) clamp(2rem,5vw,5rem) clamp(9.5rem,18svh,12.5rem)}
.u-gorsel img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;
  -webkit-mask-image:radial-gradient(ellipse 50% 50% at 50% 50%,#000 62%,transparent 100%);
          mask-image:radial-gradient(ellipse 50% 50% at 50% 50%,#000 62%,transparent 100%);
  transition:opacity .45s ease}
.u-gorsel img.degisiyor{opacity:0}
.u-yazi{max-width:31rem}
.u-yazi h1{font-size:clamp(2.4rem,1.3rem + 3.6vw,4.4rem);margin:1.5rem 0 0;line-height:1.06;white-space:normal}
.u-yazi .lede{color:var(--kul);margin-top:1.6rem;max-width:36ch;line-height:1.75}

.u-kisa{display:flex;flex-wrap:wrap;gap:1.1rem 2.6rem;margin:1.9rem 0 0}
.u-kisa div{display:grid;gap:.35rem}
.u-kisa dt{font-family:var(--mono);font-size:.58rem;letter-spacing:.24em;text-transform:uppercase;color:var(--kul-2)}
.u-kisa dd{margin:0;font-family:var(--mono);font-size:.76rem;letter-spacing:.1em;color:var(--kemik-ak)}
.u-kisa dd a{text-decoration:none;border-bottom:1px solid transparent;transition:border-color var(--gecis)}
.u-kisa dd a:hover{border-bottom-color:var(--pirinc)}

.u-kucukler{display:flex;flex-wrap:wrap;gap:.55rem;margin-top:2.1rem}
.u-kucukler .kucuk{width:3.3rem;height:3.3rem;padding:0;border:0;cursor:pointer;background:var(--yuzey);
  overflow:hidden;box-shadow:inset 0 0 0 1px var(--cizik);transition:box-shadow var(--gecis)}
.u-kucukler .kucuk img{width:100%;height:100%;object-fit:cover;opacity:.5;transition:opacity var(--gecis)}
.u-kucukler .kucuk:hover img,.u-kucukler .kucuk.acik img{opacity:1}
.u-kucukler .kucuk.acik{box-shadow:inset 0 0 0 1px var(--pirinc)}

/* sahneden sonraki bölümler: solda başlık (yapışkan), sağda içerik */
.u-bolum{position:relative;padding:clamp(5rem,12svh,8.5rem) var(--bosluk);
  border-top:1px solid rgba(208,182,150,.08)}
.u-ic{max-width:var(--en);margin-inline:auto;display:grid;
  grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:clamp(2.5rem,6vw,6rem);align-items:start}
.u-sol{position:sticky;top:7rem}
.u-sol h2{font-size:clamp(2rem,1.2rem + 2.6vw,3.6rem);margin:1.4rem 0 0;line-height:1.08}
.u-sol .lede{color:var(--kul);margin-top:1.4rem;max-width:34ch}
.u-sag .lede{color:var(--kul);line-height:1.8;max-width:60ch}
.u-kunye{margin:2.6rem 0 0;border-top:1px solid var(--cizik)}
.u-kunye div{display:grid;grid-template-columns:minmax(8rem,11rem) minmax(0,1fr);gap:1.5rem;
  padding:1rem 0;border-bottom:1px solid var(--cizik)}
.u-kunye dt{font-family:var(--mono);font-size:.6rem;letter-spacing:.22em;text-transform:uppercase;
  color:var(--kul-2);padding-top:.25rem}
.u-kunye dd{margin:0;color:var(--kemik)}

.u-devam{padding-inline:0}
.u-devam-bas{max-width:var(--en);margin:0 auto;padding:0 var(--bosluk)}
.u-devam-bas h2{font-size:clamp(1.8rem,1.1rem + 2.2vw,3rem);margin-top:1.2rem}
.devam-ray{max-width:var(--en);margin:0 auto;height:min(78svh,40rem);
  --kol-kenar:var(--bosluk);--kart-ic:clamp(1.2rem,2vw,2.2rem);--kol-ara:clamp(.9rem,1.4vw,1.5rem)}
.devam-ray .kart{flex:1 0 min(300px,78vw);width:auto}
.devam-ray .kart:first-child .kart-gorsel::after{background:linear-gradient(to bottom,rgba(5,3,3,.94) 0%,
    rgba(5,3,3,.88) 25%,rgba(5,3,3,.3) 35%,transparent 42%,transparent 44%,rgba(5,3,3,.72) 55%,rgba(5,3,3,.94) 64%,rgba(5,3,3,.97) 100%)}

@media (max-width:1000px){
  .urun-sahne{display:flex;flex-direction:column;padding-bottom:10.5rem}
  .urun-sahne .panel-ic{min-height:0;padding-top:1.4rem;padding-bottom:1rem}
  .u-gorsel{position:relative;width:100%;height:min(52svh,30rem);padding:0 var(--bosluk)}
  .u-ic{grid-template-columns:1fr}
  .u-sol{position:static}
}
@media (max-width:760px){
  .urun-sahne{padding-bottom:9.5rem}
  .u-kunye div{grid-template-columns:1fr;gap:.25rem}
}

/* ══════════════ FORM ══════════════ */
.form-sahne{display:grid}
.form-ikili{display:grid;grid-template-columns:1fr 1fr;gap:0 2rem}
.form-sahne label{margin-bottom:1.6rem;color:var(--kul)}
.form-sahne input,.form-sahne textarea,.form-sahne select{font-size:1.04rem;color:var(--kemik-ak);padding:.8rem .1rem}
.okla-dugme{background:none;border:0;padding:0;cursor:pointer;justify-self:start;margin-top:.6rem}
.form-bilgi{font-family:var(--mono);font-size:.72rem;letter-spacing:.08em;line-height:1.7;
  padding:.2rem 0 .2rem 1.1rem;margin:0 0 1.8rem;border-left:1px solid;background:none;box-shadow:none}
.form-bilgi.hata{color:#E8AFA4;border-color:#8A4A3C}
.form-bilgi.basari{color:var(--pirinc-ak);border-color:var(--pirinc)}
@media (max-width:760px){ .form-ikili{grid-template-columns:1fr} }

/* ══════════════ İLETİŞİM · 404 ══════════════ */
.sayfa-iletisim{--z-genis:8.4}
.i-dogrudan{gap:1.1rem 2.2rem}
.i-dogrudan dd{font-size:.72rem;letter-spacing:.06em}
.sayfa-yok{--z-x:1;--z-oran:1.92;--z-genis:6}

/* ══════════════ ALT BİLGİ — künye şeridiyle açılır ══════════════ */
.alt-ust{max-width:var(--en);margin:0 auto clamp(2.2rem,5vw,3.4rem);
  display:flex;align-items:center;gap:1.1rem}
.alt-ust::before,.alt-ust::after{content:"";flex:1;height:1px;background:var(--cizik)}
.alt{padding-top:clamp(1.6rem,3vw,2.4rem)}
.alt-son small:nth-child(2){color:var(--kul-2)}
@media (max-width:760px){ .alt-son small:nth-child(2){display:none} }
