/* =================================================================
   TASARIM MÜCEVHERAT — style.css
   Yaklaşım: mobile-first. Kırılımlar: 768px (tablet), 1024px (laptop),
   1440px (geniş ekran). Temel stiller 360px+ telefon içindir.

   Kimlik: mağazanın grafit duvarı, altın menderes bordürü ve logodaki
   ters üçgen. Grafit + porselen beyazı + şampanya altını; tabeladaki
   pembe harflerden gelen tek bir gül tonu.

   İÇİNDEKİLER
   01 Değişkenler        09 Hizmetler
   02 Temel / sıfırlama  10 Neden biz
   03 Yardımcılar        11 Koleksiyon galerisi
   04 Düğmeler, linkler  12 Yorumlar (karusel)
   05 Yükleyici          13 Ekip
   06 Başlık ve menü     14 SSS (akordeon)
   07 Hero, sayfa bandı  15 İletişim, form, harita
   08 Hakkımızda         16 Footer, yüzen düğmeler
                         17 Ürün sayfaları
                         18 Lightbox
                         19 Animasyonlar, hareket tercihi
   ================================================================= */


/* ---------- 01 DEĞİŞKENLER ---------- */
:root {
    /* renkler */
    --murekkep:   #141417;   /* metin, siyah logo */
    --grafit:     #2E3037;   /* koyu bölümler (mağaza duvarı) */
    --grafit-2:   #3C3F48;
    --grafit-3:   #4B4E58;
    --duman:      #6A6D77;   /* ikincil metin */
    --sis:        #E4E4E6;   /* çizgiler */
    --porselen:   #F5F5F3;   /* sayfa zemini */
    --beyaz:      #FFFFFF;
    --altin:      #B8965C;   /* menderes bordürü */
    --altin-koyu: #97774A;
    --altin-acik: #E4D5B5;
    --gul:        #D9A6A8;   /* tabeladaki pembe harfler */

    /* yazı tipleri */
    --f-baslik: "Bodoni Moda", "Didot", "Times New Roman", serif;
    --f-govde:  "Manrope", system-ui, -apple-system, "Segoe UI", sans-serif;

    /* yazı ölçeği (akışkan) */
    --t-kucuk:  0.8125rem;
    --t-govde:  1rem;
    --t-giris:  clamp(1.0625rem, 0.35vw + 1rem, 1.25rem);
    --t-h3:     clamp(1.2rem, 0.5vw + 1.05rem, 1.45rem);
    --t-h2:     clamp(2rem, 2.6vw + 1.2rem, 3.4rem);
    --t-h1:     clamp(2.55rem, 5.2vw + 1rem, 5.6rem);

    /* boşluk sistemi */
    --b-1: 0.25rem; --b-2: 0.5rem;  --b-3: 0.75rem; --b-4: 1rem;
    --b-5: 1.5rem;  --b-6: 2rem;    --b-7: 3rem;    --b-8: 4rem;
    --b-bolum: clamp(4.5rem, 8vw + 1rem, 9rem);
    --kenar: clamp(1.15rem, 4vw, 2.5rem);
    --kap-genislik: 1240px;

    /* köşe yuvarlaklığı: hiyerarşiye göre farklı */
    --r-1: 10px;  --r-2: 18px;  --r-3: 28px;  --r-tam: 999px;

    /* gölgeler: grafit tonlu, yumuşak */
    --golge-1: 0 1px 2px rgba(46, 48, 55, .06), 0 8px 24px -12px rgba(46, 48, 55, .18);
    --golge-2: 0 2px 6px rgba(46, 48, 55, .06), 0 28px 60px -24px rgba(46, 48, 55, .38);

    /* hareket */
    --yumusak: cubic-bezier(.22, .8, .24, 1);
    --sure: .5s;

    --ust-yukseklik: 84px;
}
@media (min-width: 1440px) {
    :root { --kap-genislik: 1320px; --t-govde: 1.0625rem; }
}


/* ---------- 02 TEMEL ---------- */
*, *::before, *::after { box-sizing: border-box; }
html { overflow-x: clip; -webkit-text-size-adjust: 100%; scroll-behavior: smooth; scroll-padding-top: 90px; }
body {
    margin: 0;
    font-family: var(--f-govde);
    font-size: var(--t-govde);
    line-height: 1.7;
    color: var(--murekkep);
    background: var(--porselen);
    -webkit-font-smoothing: antialiased;
    overflow-x: hidden;
}
img, svg { display: block; max-width: 100%; }
img { height: auto; }
a { color: inherit; text-decoration: none; }
button { font: inherit; color: inherit; cursor: pointer; }
h1, h2, h3, h4 { margin: 0; font-family: var(--f-baslik); font-weight: 500; line-height: 1.12; letter-spacing: -0.01em; }
p { margin: 0 0 var(--b-4); }
ul, ol { margin: 0; padding: 0; list-style: none; }
figure { margin: 0; }
:focus-visible { outline: 2px solid var(--altin); outline-offset: 3px; border-radius: 4px; }
::selection { background: var(--altin-acik); color: var(--murekkep); }

.ikon { width: 1.25em; height: 1.25em; flex: 0 0 auto; }


/* ---------- 03 YARDIMCILAR ---------- */
.kap { width: 100%; max-width: calc(var(--kap-genislik) + 2 * var(--kenar)); margin-inline: auto; padding-inline: var(--kenar); }
.bolum { position: relative; padding-block: var(--b-bolum); }
.bolum--sikisik { padding-block: calc(var(--b-bolum) * .55); }
.bolum--ust-sikisik { padding-top: calc(var(--b-bolum) * .5); }

.bolum-bas { max-width: 640px; margin-bottom: clamp(2.5rem, 5vw, 4rem); }
.bolum-bas p { color: var(--duman); font-size: var(--t-giris); margin: var(--b-4) 0 0; }
.bolum-bas--yatay { max-width: none; display: flex; flex-wrap: wrap; align-items: flex-end; justify-content: space-between; gap: var(--b-5); }
.bolum-bas--yatay > div { max-width: 620px; }
.bolum-baslik { font-size: var(--t-h2); }
.bolum-baslik--kucuk { font-size: clamp(1.6rem, 1.5vw + 1.1rem, 2.2rem); margin-bottom: var(--b-6); }

/* cam (glassmorphism) paneller */
.cam {
    background: rgba(255, 255, 255, .62);
    -webkit-backdrop-filter: blur(18px) saturate(1.3);
    backdrop-filter: blur(18px) saturate(1.3);
    border: 1px solid rgba(255, 255, 255, .7);
    box-shadow: var(--golge-1);
}
.cam-koyu {
    background: rgba(255, 255, 255, .055);
    -webkit-backdrop-filter: blur(14px);
    backdrop-filter: blur(14px);
    border: 1px solid rgba(255, 255, 255, .1);
}

.icerige-gec {
    position: fixed; left: var(--b-4); top: var(--b-3); z-index: 600;
    background: var(--murekkep); color: var(--beyaz); padding: var(--b-2) var(--b-4); border-radius: var(--r-1);
    transform: translateY(-200%); transition: transform .25s;
}
.icerige-gec:focus { transform: none; }
main:focus { outline: none; }

.bos-durum { text-align: center; color: var(--duman); padding: var(--b-7) 0; }
.bos-durum .dugme { margin-top: var(--b-4); }

/* bölüm geçişleri: faset kesimli SVG kenarlar */
.ayrac { position: absolute; left: 0; width: 100%; height: clamp(34px, 5vw, 80px); pointer-events: none; z-index: 1; }
.ayrac--alt { bottom: -1px; }
.ayrac--ust { top: -1px; }
.ayrac path { fill: var(--porselen); }

/* menderes (Grek) deseni — mağaza tavanındaki altın bordür */
.menderes {
    height: 22px;
    background-color: var(--grafit);
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='44' height='22' viewBox='0 0 44 22'%3E%3Cpath d='M0 19h8V5h20v12H14V9h8v4' fill='none' stroke='%23B8965C' stroke-width='2.2'/%3E%3Cpath d='M22 13h0M28 19h16' fill='none' stroke='%23B8965C' stroke-width='2.2'/%3E%3C/svg%3E");
    background-size: 44px 22px;
    background-repeat: repeat-x;
    background-position: center;
    opacity: .9;
}


/* ---------- 04 DÜĞMELER VE LİNKLER ---------- */
.dugme {
    --dugme-zemin: var(--murekkep); --dugme-yazi: var(--beyaz); --dugme-dolgu: var(--altin); --dugme-dolgu-yazi: var(--murekkep);
    position: relative; isolation: isolate; overflow: hidden;
    display: inline-flex; align-items: center; justify-content: center; gap: .6em;
    min-height: 50px; padding: .8em 1.6em;
    border: 1px solid transparent; border-radius: var(--r-tam);
    background: var(--dugme-zemin); color: var(--dugme-yazi);
    font-size: .95rem; font-weight: 600; letter-spacing: .01em; line-height: 1.2;
    transition: color .45s var(--yumusak), border-color .45s, transform .3s var(--yumusak);
}
/* dolma animasyonu: soldan sağa dolgu */
.dugme::before {
    content: ""; position: absolute; inset: 0; z-index: -1;
    background: var(--dugme-dolgu);
    transform: scaleX(0); transform-origin: right;
    transition: transform .55s var(--yumusak);
}
/* parlama: üzerinden geçen ışık */
.dugme::after {
    content: ""; position: absolute; top: 0; left: -60%; width: 40%; height: 100%; z-index: 1;
    background: linear-gradient(100deg, transparent, rgba(255, 255, 255, .45), transparent);
    transform: skewX(-20deg); pointer-events: none;
}
.dugme:hover::before, .dugme:focus-visible::before { transform: scaleX(1); transform-origin: left; }
.dugme:hover::after { animation: parlama .9s var(--yumusak); }
.dugme:hover, .dugme:focus-visible { color: var(--dugme-dolgu-yazi); }
.dugme:active { transform: scale(.98); }
.dugme .ikon { width: 1.1em; height: 1.1em; transition: transform .35s var(--yumusak); }
.dugme:hover .ikon { transform: translateX(3px); }
@keyframes parlama { to { left: 130%; } }

.dugme--altin { --dugme-zemin: var(--altin); --dugme-yazi: var(--murekkep); --dugme-dolgu: var(--beyaz); }
.dugme--koyu  { --dugme-zemin: var(--grafit); --dugme-yazi: var(--beyaz); --dugme-dolgu: var(--altin); }
.dugme--cizgi { --dugme-zemin: transparent; --dugme-yazi: var(--murekkep); --dugme-dolgu: var(--murekkep); --dugme-dolgu-yazi: var(--beyaz); border-color: var(--murekkep); }
.dugme--cam {
    --dugme-zemin: rgba(255, 255, 255, .08); --dugme-yazi: var(--beyaz); --dugme-dolgu: var(--beyaz);
    border-color: rgba(255, 255, 255, .35);
    -webkit-backdrop-filter: blur(10px); backdrop-filter: blur(10px);
}
.dugme--genis { width: 100%; }

/* alt çizgisi soldan akan linkler */
.cizgili {
    background: linear-gradient(currentColor, currentColor) no-repeat left bottom / 0% 1px;
    padding-bottom: 2px;
    transition: background-size .45s var(--yumusak), color .3s;
}
.cizgili:hover, .cizgili:focus-visible { background-size: 100% 1px; }


/* ---------- 05 YÜKLEYİCİ (preloader) ---------- */
.yukleyici {
    position: fixed; inset: 0; z-index: 500;
    display: grid; place-content: center; justify-items: center; gap: var(--b-5);
    background: var(--porselen);
    transition: opacity .6s var(--yumusak), visibility .6s;
    animation: yukleyiciOtomatik .01s 4s forwards;   /* JS çalışmazsa 4 sn sonra kendiliğinden kapanır */
}
.yukleyici img { width: 110px; height: auto; animation: logoNefes 1.6s var(--yumusak) infinite alternate; }
.yukleyici-cizgi { width: 120px; height: 2px; background: var(--sis); overflow: hidden; border-radius: 2px; }
.yukleyici-cizgi span { display: block; height: 100%; width: 40%; background: var(--altin); animation: cizgiAk 1.1s var(--yumusak) infinite; }
.yuklendi .yukleyici { opacity: 0; visibility: hidden; }
html:not(.js) .yukleyici { display: none; }
@keyframes logoNefes { from { transform: scale(.94); opacity: .75; } to { transform: scale(1); opacity: 1; } }
@keyframes cizgiAk { from { transform: translateX(-100%); } to { transform: translateX(250%); } }
@keyframes yukleyiciOtomatik { to { opacity: 0; visibility: hidden; } }


/* ---------- 06 BAŞLIK VE MENÜ ---------- */
.ust {
    position: fixed; inset: 0 0 auto; z-index: 100;
    height: var(--ust-yukseklik);
    color: var(--beyaz);
    transition: height .45s var(--yumusak), background-color .45s, color .45s, box-shadow .45s;
}
.ust::before {  /* cam zemin: kaydırınca görünür */
    content: ""; position: absolute; inset: 0; z-index: -1;
    background: rgba(245, 245, 243, .72);
    -webkit-backdrop-filter: blur(18px) saturate(1.4);
    backdrop-filter: blur(18px) saturate(1.4);
    border-bottom: 1px solid rgba(20, 20, 23, .06);
    opacity: 0; transition: opacity .45s var(--yumusak);
}
.ust--dolu, .ust--sabit { --ust-yukseklik: 66px; color: var(--murekkep); box-shadow: 0 10px 30px -22px rgba(46, 48, 55, .5); }
.ust--dolu::before, .ust--sabit::before { opacity: 1; }
.ust--sabit { --ust-yukseklik: 72px; }

.ust-ic { height: 100%; display: flex; align-items: center; justify-content: space-between; gap: var(--b-5); }

.marka { display: flex; align-items: center; gap: var(--b-3); position: relative; z-index: 2; }
.marka-logo { height: 46px; width: auto; transition: opacity .45s, height .45s var(--yumusak); }
.marka-logo--siyah { position: absolute; left: 0; opacity: 0; }
.ust--dolu .marka-logo--beyaz, .ust--sabit .marka-logo--beyaz, .menu-acik .marka-logo--beyaz { opacity: 0; }
.ust--dolu .marka-logo--siyah, .ust--sabit .marka-logo--siyah { opacity: 1; }
.ust--dolu .marka-logo, .ust--sabit .marka-logo { height: 38px; }
.marka-yazi {
    display: flex; flex-direction: column; line-height: 1;
    font-family: var(--f-baslik); font-size: 1.15rem; font-weight: 500;
}
.marka-yazi span { font-family: var(--f-govde); font-size: .62rem; letter-spacing: .32em; margin-top: 5px; opacity: .75; }

/* hamburger (mobil) */
.menu-dugme {
    position: relative; z-index: 2;
    width: 46px; height: 46px; border: 0; border-radius: 50%;
    background: transparent; display: grid; place-content: center; gap: 6px;
}
.menu-dugme span {
    display: block; width: 24px; height: 1.5px; background: currentColor; border-radius: 2px;
    transition: transform .45s var(--yumusak), opacity .3s;
}
.menu-acik .menu-dugme span:nth-child(1) { transform: translateY(7.5px) rotate(45deg); }
.menu-acik .menu-dugme span:nth-child(2) { opacity: 0; transform: scaleX(.2); }
.menu-acik .menu-dugme span:nth-child(3) { transform: translateY(-7.5px) rotate(-45deg); }

/* mobil menü paneli */
.menu {
    position: fixed; inset: 0; z-index: 1;
    display: flex; flex-direction: column; justify-content: center; gap: var(--b-7);
    padding: calc(var(--ust-yukseklik) + var(--b-5)) var(--kenar) var(--b-7);
    background: rgba(46, 48, 55, .96);
    -webkit-backdrop-filter: blur(20px); backdrop-filter: blur(20px);
    color: var(--beyaz);
    clip-path: circle(0 at calc(100% - 44px) 42px);
    visibility: hidden;
    transition: clip-path .7s var(--yumusak), visibility 0s linear .7s;
}
.menu-acik .menu { clip-path: circle(150% at calc(100% - 44px) 42px); visibility: visible; transition: clip-path .7s var(--yumusak); }
.menu-acik .ust { color: var(--beyaz); }
.menu-acik .ust::before { opacity: 0; }
.menu-acik .marka-logo--siyah { opacity: 0 !important; }
.menu-acik .marka-logo--beyaz { opacity: 1 !important; }
.menu ul { display: grid; gap: var(--b-3); }
.menu li { opacity: 0; transform: translateY(18px); transition: opacity .5s, transform .5s var(--yumusak); }
.menu-acik .menu li { opacity: 1; transform: none; transition-delay: calc(.18s + var(--i) * .06s); }
.menu ul a { font-family: var(--f-baslik); font-size: clamp(2rem, 8vw, 2.6rem); display: inline-block; }
.menu ul a.aktif { color: var(--altin-acik); }
.menu-cta { align-self: flex-start; }
html.menu-kilit, html.menu-kilit body { overflow: hidden; }

@media (min-width: 1024px) {
    .menu-dugme { display: none; }
    .menu {
        position: static; inset: auto; padding: 0; background: none; backdrop-filter: none; -webkit-backdrop-filter: none;
        clip-path: none; visibility: visible; color: inherit;
        flex-direction: row; align-items: center; gap: var(--b-6);
    }
    .menu ul { display: flex; gap: clamp(1.2rem, 2vw, 2.2rem); }
    .menu li { opacity: 1; transform: none; }
    .menu ul a {
        font-family: var(--f-govde); font-size: .9rem; font-weight: 500; letter-spacing: .02em;
        position: relative; padding: 6px 0;
    }
    .menu ul a::after {  /* aktif / hover alt çizgisi */
        content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 1px; background: currentColor;
        transform: scaleX(0); transform-origin: right; transition: transform .45s var(--yumusak);
    }
    .menu ul a:hover::after, .menu ul a.aktif::after { transform: scaleX(1); transform-origin: left; }
    .menu ul a.aktif { color: inherit; }
    .menu-cta { min-height: 44px; padding: .6em 1.3em; font-size: .88rem; }
    .ust:not(.ust--dolu):not(.ust--sabit) .menu-cta { --dugme-zemin: rgba(255,255,255,.1); --dugme-yazi: var(--beyaz); border-color: rgba(255,255,255,.4); }
}


/* ---------- 07 HERO VE SAYFA BANDI ---------- */
.hero {
    position: relative; isolation: isolate; overflow: hidden;
    min-height: 100vh; min-height: 100svh;
    display: flex; align-items: center;
    padding: calc(var(--ust-yukseklik) + var(--b-6)) 0 calc(var(--b-8) + 40px);
    color: var(--beyaz);
    background: var(--grafit);
}
/* akan gradient zemin */
.hero-zemin {
    position: absolute; inset: 0; z-index: -1; overflow: hidden;
    background: linear-gradient(125deg, #26282E, #34363E 35%, #2A2C33 60%, #3A3530 100%);
    background-size: 220% 220%;
    animation: gradientAk 18s ease-in-out infinite alternate;
}
@keyframes gradientAk { from { background-position: 0% 30%; } to { background-position: 100% 70%; } }

/* yumuşak ışık lekeleri */
.hero-isik { position: absolute; border-radius: 50%; filter: blur(70px); opacity: .55; will-change: transform; }
.hero-isik--1 { width: 55vmax; height: 55vmax; left: -18vmax; top: -22vmax; background: radial-gradient(circle, rgba(184,150,92,.55), transparent 65%); animation: isikGez1 22s ease-in-out infinite alternate; }
.hero-isik--2 { width: 45vmax; height: 45vmax; right: -16vmax; bottom: -20vmax; background: radial-gradient(circle, rgba(217,166,168,.35), transparent 65%); animation: isikGez2 26s ease-in-out infinite alternate; }
@keyframes isikGez1 { to { transform: translate(14vmax, 10vmax) scale(1.1); } }
@keyframes isikGez2 { to { transform: translate(-12vmax, -8vmax) scale(1.15); } }

/* yüzen üçgen ve faset şekilleri (logodaki üçgenden) */
.hero-sekil { position: absolute; fill: none; stroke: rgba(228, 213, 181, .35); stroke-width: 1.2; vector-effect: non-scaling-stroke; will-change: transform; }
.hero-sekil--1 { width: clamp(120px, 18vw, 260px); left: 6%; bottom: 14%; animation: yuz1 16s ease-in-out infinite alternate; }
.hero-sekil--2 { width: clamp(220px, 34vw, 520px); right: -6%; top: 10%; stroke: rgba(255,255,255,.12); animation: yuz2 22s ease-in-out infinite alternate; }
.hero-sekil--3 { width: clamp(46px, 5vw, 80px); left: 44%; top: 18%; stroke: rgba(228, 213, 181, .5); animation: yuz3 12s ease-in-out infinite alternate; }
.hero-sekil--4 { width: clamp(60px, 7vw, 110px); left: 60%; bottom: 20%; stroke: rgba(217,166,168,.4); animation: yuz1 19s ease-in-out -6s infinite alternate-reverse; }
@keyframes yuz1 { to { transform: translate(30px, -40px) rotate(14deg); } }
@keyframes yuz2 { to { transform: translate(-40px, 30px) rotate(-10deg); } }
@keyframes yuz3 { to { transform: translate(-24px, 26px) rotate(40deg); } }
.hero-parilti { position: absolute; inset: 0; width: 100%; height: 100%; }

.hero-duzen { display: grid; gap: var(--b-7); align-items: center; }
.hero-baslik { font-size: var(--t-h1); font-weight: 400; line-height: 1.04; letter-spacing: -0.02em; }
.hero-baslik .satir { display: block; overflow: hidden; padding-bottom: .06em; }
.hero-baslik .satir > span { display: inline-block; }
.hero-alt { max-width: 34rem; margin: var(--b-5) 0 var(--b-6); color: rgba(255,255,255,.76); font-size: var(--t-giris); }
.hero-dugmeler { display: flex; flex-wrap: wrap; gap: var(--b-3); }

.hero-gorsel { display: none; }
.hero-ucgen {
    position: relative; aspect-ratio: 1 / 1; width: min(100%, 460px); margin-left: auto;
    display: grid; place-items: center; padding: 12%;
    border-radius: var(--r-3);
    background: rgba(255, 255, 255, .05);
    border: 1px solid rgba(255, 255, 255, .14);
    -webkit-backdrop-filter: blur(12px); backdrop-filter: blur(12px);
    box-shadow: 0 40px 80px -40px rgba(0, 0, 0, .55), inset 0 1px 0 rgba(255,255,255,.15);
}
.hero-ucgen::before {  /* altın ince çerçeve, hafif kaydırılmış */
    content: ""; position: absolute; inset: -14px 14px 14px -14px; border: 1px solid rgba(184,150,92,.5); border-radius: var(--r-3); z-index: -1;
}
.hero-ucgen img { width: 100%; }

.hero-asagi {
    position: absolute; left: 50%; bottom: calc(clamp(34px, 5vw, 80px) + 14px); transform: translateX(-50%);
    width: 26px; height: 42px; border: 1.5px solid rgba(255,255,255,.5); border-radius: 14px; z-index: 2;
}
.hero-asagi span { position: absolute; left: 50%; top: 8px; width: 3px; height: 8px; margin-left: -1.5px; border-radius: 2px; background: var(--beyaz); animation: kaydirIpucu 1.8s var(--yumusak) infinite; }
@keyframes kaydirIpucu { 0% { opacity: 0; transform: translateY(0); } 30% { opacity: 1; } 100% { opacity: 0; transform: translateY(14px); } }

/* hero giriş animasyonu (yükleyici kapanınca) */
.js .hero-baslik .satir > span { transform: translateY(110%); }
.js .hero-alt, .js .hero-dugmeler, .js .hero-gorsel { opacity: 0; transform: translateY(20px); }
.yuklendi .hero-baslik .satir > span { transform: none; transition: transform 1.1s var(--yumusak); }
.yuklendi .hero-baslik .satir:nth-child(2) > span { transition-delay: .1s; }
.yuklendi .hero-baslik .satir:nth-child(3) > span { transition-delay: .2s; }
.yuklendi .hero-alt, .yuklendi .hero-dugmeler, .yuklendi .hero-gorsel { opacity: 1; transform: none; transition: opacity 1s .45s, transform 1s .45s var(--yumusak); }
.yuklendi .hero-dugmeler { transition-delay: .6s; }
.yuklendi .hero-gorsel { transition-delay: .3s; }

@media (min-width: 768px) {
    .hero-gorsel { display: block; }
    .hero-duzen { grid-template-columns: 1.25fr 1fr; }
}

/* iç sayfaların üst bandı */
.sayfa-bas {
    position: relative; isolation: isolate; overflow: hidden;
    padding: calc(var(--ust-yukseklik) + clamp(2.5rem, 7vw, 5rem)) 0 clamp(4.5rem, 9vw, 7.5rem);
    background: var(--grafit); color: var(--beyaz);
}
.hero-zemin--sade .hero-sekil--2 { top: -20%; right: -8%; }
.sayfa-baslik { font-size: clamp(2.4rem, 4vw + 1rem, 4.4rem); font-weight: 400; }
.sayfa-alt { color: rgba(255,255,255,.72); font-size: var(--t-giris); margin: var(--b-3) 0 0; max-width: 40rem; }

/* breadcrumb */
.iz { font-size: var(--t-kucuk); margin-bottom: var(--b-4); color: rgba(255,255,255,.65); }
.iz ol { display: flex; flex-wrap: wrap; gap: .3rem .6rem; }
.iz li { display: flex; align-items: center; gap: .6rem; }
.iz li + li::before { content: ""; width: 5px; height: 5px; border-top: 1px solid currentColor; border-right: 1px solid currentColor; transform: rotate(45deg); opacity: .6; }
.iz a:hover { color: var(--altin-acik); }
.iz--acik { color: var(--duman); }
.iz--acik a:hover { color: var(--murekkep); }
.iz [aria-current] { color: inherit; opacity: .95; }


/* ---------- 08 HAKKIMIZDA ---------- */
.hakkimizda { overflow: hidden; }
.hakkimizda-duzen { display: grid; gap: clamp(2.5rem, 6vw, 5.5rem); align-items: center; }
.hakkimizda-gorsel { position: relative; max-width: 520px; }
.cerceve-ucgen { position: relative; border-radius: var(--r-3); overflow: hidden; box-shadow: var(--golge-2); }
.cerceve-ucgen img { width: 100%; aspect-ratio: 4 / 4.2; object-fit: cover; transform: scale(1.08); }
.hakkimizda-gorsel::before {  /* arkadaki altın üçgen çizgi (logodaki üçgen) */
    content: ""; position: absolute; z-index: -1; width: 72%; aspect-ratio: 1.12;
    right: -14%; top: -9%;
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 112 100'%3E%3Cpath d='M2 2h108L56 97z' fill='none' stroke='%23B8965C' stroke-width='1.2'/%3E%3C/svg%3E") center / contain no-repeat;
    opacity: .7;
}
.cam-etiket {
    position: absolute; left: var(--b-4); bottom: var(--b-4);
    display: inline-flex; align-items: center; gap: .5rem;
    padding: .55rem 1rem; border-radius: var(--r-tam);
    background: rgba(255,255,255,.7); -webkit-backdrop-filter: blur(12px); backdrop-filter: blur(12px);
    font-size: var(--t-kucuk); font-weight: 600; box-shadow: var(--golge-1);
}
.hakkimizda-metin .bolum-baslik { margin-bottom: var(--b-5); max-width: 20ch; }
.giris { font-size: var(--t-giris); }
.hakkimizda-metin p:not(.giris) { color: var(--duman); }

.sayaclar { display: grid; grid-template-columns: repeat(2, 1fr); gap: var(--b-5) var(--b-4); margin-top: var(--b-7); padding-top: var(--b-6); border-top: 1px solid var(--sis); }
.sayac strong { display: block; font-family: var(--f-baslik); font-size: clamp(2.2rem, 3vw + 1rem, 3.3rem); font-weight: 500; line-height: 1; color: var(--murekkep); font-variant-numeric: lining-nums tabular-nums; }
.sayac > span { display: block; margin-top: var(--b-2); font-size: var(--t-kucuk); color: var(--duman); }

@media (min-width: 1024px) {
    .hakkimizda-duzen { grid-template-columns: 5fr 6fr; }
    .sayaclar { grid-template-columns: repeat(4, 1fr); }
}


/* ---------- 09 HİZMETLER ---------- */
.hizmetler { background: var(--beyaz); }
.hizmet-grid { display: grid; gap: var(--b-4); }
.hizmet-kart {
    --tx: 0deg; --ty: 0deg; --yuksel: 0px;
    position: relative; display: flex; flex-direction: column; gap: var(--b-3);
    padding: clamp(1.6rem, 3vw, 2.2rem);
    border-radius: var(--r-2); background: var(--porselen); border: 1px solid transparent;
    transform: perspective(900px) translateY(var(--yuksel)) rotateX(var(--tx)) rotateY(var(--ty));
    transition: transform .5s var(--yumusak), box-shadow .5s var(--yumusak), background-color .5s, border-color .5s;
    transform-style: preserve-3d;
}
.hizmet-kart:hover, .hizmet-kart:focus-visible { --yuksel: -8px; background: var(--beyaz); border-color: var(--altin-acik); box-shadow: var(--golge-2); }
.hizmet-ikon {
    width: 56px; height: 56px; display: grid; place-items: center; margin-bottom: var(--b-2);
    border-radius: 50%; background: var(--beyaz); color: var(--murekkep); border: 1px solid var(--sis);
    transition: background-color .5s, color .5s, border-color .5s, transform .5s var(--yumusak);
}
.hizmet-ikon .ikon { width: 26px; height: 26px; }
.hizmet-kart:hover .hizmet-ikon { background: var(--grafit); color: var(--altin-acik); border-color: var(--grafit); transform: translateZ(30px) rotate(-6deg); }
.hizmet-kart h3 { font-size: var(--t-h3); }
.hizmet-kart p { color: var(--duman); margin: 0; font-size: .95rem; }
.hizmet-ok { margin-top: auto; padding-top: var(--b-3); color: var(--altin-koyu); }
.hizmet-ok .ikon { transition: transform .4s var(--yumusak); }
.hizmet-kart:hover .hizmet-ok .ikon { transform: translateX(6px); }
@media (min-width: 768px)  { .hizmet-grid { grid-template-columns: repeat(2, 1fr); gap: var(--b-5); } }
@media (min-width: 1024px) { .hizmet-grid { grid-template-columns: repeat(3, 1fr); } }


/* ---------- 10 NEDEN BİZ ---------- */
.neden { background: var(--grafit); color: var(--beyaz); overflow: hidden; padding-block: calc(var(--b-bolum) + 40px); }
.neden .ayrac--ust path { fill: var(--beyaz); }       /* üstteki Hizmetler bölümünün rengi */
.neden-desen {  /* çok hafif menderes dokusu */
    position: absolute; inset: 0; opacity: .06; pointer-events: none;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='88' height='44' viewBox='0 0 44 22'%3E%3Cpath d='M0 19h8V5h20v12H14V9h8v4M28 19h16' fill='none' stroke='%23FFFFFF' stroke-width='1.4'/%3E%3C/svg%3E");
}
.neden-duzen { position: relative; z-index: 2; display: grid; gap: var(--b-7); }
.neden-bas p { color: rgba(255,255,255,.72); font-size: var(--t-giris); margin: var(--b-4) 0 var(--b-6); max-width: 32rem; }
.neden-liste { display: grid; gap: var(--b-4); }
.neden-kart {
    display: flex; gap: var(--b-4); align-items: flex-start;
    padding: var(--b-5); border-radius: var(--r-2);
    transition: background-color .5s, border-color .5s, transform .5s var(--yumusak);
}
.neden-kart:hover { background: rgba(255,255,255,.09); border-color: rgba(184,150,92,.5); transform: translateX(6px); }
.neden-ikon { flex: 0 0 auto; width: 50px; height: 50px; display: grid; place-items: center; border-radius: 14px; background: rgba(184,150,92,.15); color: var(--altin-acik); }
.neden-ikon .ikon { width: 24px; height: 24px; }
.neden-kart h3 { font-size: var(--t-h3); margin-bottom: var(--b-2); }
.neden-kart p { margin: 0; color: rgba(255,255,255,.68); font-size: .95rem; }
@media (min-width: 768px) { .neden-liste { grid-template-columns: repeat(2, 1fr); } }
@media (min-width: 1024px) {
    .neden-duzen { grid-template-columns: 5fr 7fr; align-items: start; }
    .neden-bas { position: sticky; top: 120px; }
}


/* ---------- 11 KOLEKSİYON GALERİSİ ---------- */
.filtre {
    display: flex; gap: var(--b-2); margin-bottom: var(--b-6);
    overflow-x: auto; scrollbar-width: none; padding-bottom: 4px;
    -webkit-mask-image: linear-gradient(90deg, #000 88%, transparent); mask-image: linear-gradient(90deg, #000 88%, transparent);
}
.filtre::-webkit-scrollbar { display: none; }
.filtre-btn {
    flex: 0 0 auto; padding: .6rem 1.15rem; border-radius: var(--r-tam);
    border: 1px solid var(--sis); background: var(--beyaz);
    font-size: .88rem; font-weight: 500; white-space: nowrap;
    transition: background-color .35s, color .35s, border-color .35s;
}
.filtre-btn:hover { border-color: var(--murekkep); }
.filtre-btn.aktif { background: var(--murekkep); color: var(--beyaz); border-color: var(--murekkep); }
@media (min-width: 768px) { .filtre { flex-wrap: wrap; overflow: visible; -webkit-mask-image: none; mask-image: none; } }

.galeri { display: grid; grid-template-columns: repeat(2, 1fr); gap: var(--b-3); }
.galeri-oge.gizli { display: none; }
/* telefonda "Tümü" görünümünde ilk 8 ürün (sayfa çok uzamasın) */
@media (max-width: 767px) { .galeri[data-filtre="hepsi"] .galeri-oge:nth-child(n+9) { display: none; } }
.galeri-oge.beliriyor { animation: galeriGel .5s var(--yumusak) both; }
@keyframes galeriGel { from { opacity: 0; transform: scale(.94); } to { opacity: 1; transform: none; } }
.galeri-btn {
    position: relative; display: block; width: 100%; padding: 0; border: 0;
    aspect-ratio: 1; border-radius: var(--r-2); overflow: hidden; background: var(--beyaz);
    cursor: zoom-in;
}
.galeri-btn img { width: 100%; height: 100%; object-fit: contain; padding: 8%; transition: transform .8s var(--yumusak); }
.galeri-btn:hover img, .galeri-btn:focus-visible img { transform: scale(1.1); }
.galeri-katman {
    position: absolute; inset: 0; display: flex; flex-direction: column; justify-content: flex-end; gap: 2px;
    padding: var(--b-4); text-align: left; color: var(--beyaz);
    background: linear-gradient(to top, rgba(20,20,23,.82), rgba(20,20,23,.25) 55%, transparent);
    opacity: 0; transition: opacity .5s var(--yumusak);
}
.galeri-katman > * { transform: translateY(12px); transition: transform .5s var(--yumusak); }
.galeri-btn:hover .galeri-katman, .galeri-btn:focus-visible .galeri-katman { opacity: 1; }
.galeri-btn:hover .galeri-katman > *, .galeri-btn:focus-visible .galeri-katman > * { transform: none; }
.galeri-kat { font-size: .72rem; letter-spacing: .08em; color: var(--altin-acik); }
.galeri-ad { font-family: var(--f-baslik); font-size: 1.05rem; line-height: 1.25; }
.galeri-kod { font-size: .8rem; font-weight: 700; letter-spacing: .03em; }
.galeri-zoom { position: absolute; top: var(--b-3); right: var(--b-3); width: 38px; height: 38px; display: grid; place-items: center; border-radius: 50%; background: rgba(255,255,255,.18); -webkit-backdrop-filter: blur(8px); backdrop-filter: blur(8px); }
/* dokunmatik cihazlarda katman her zaman yarı görünür */
@media (hover: none) {
    .galeri-katman { opacity: 1; background: linear-gradient(to top, rgba(20,20,23,.72), transparent 50%); }
    .galeri-katman > * { transform: none; }
    .galeri-kat, .galeri-zoom { display: none; }
    .galeri-ad { font-size: .9rem; }
}
@media (min-width: 768px)  { .galeri { grid-template-columns: repeat(3, 1fr); gap: var(--b-4); } }
@media (min-width: 1024px) { .galeri { grid-template-columns: repeat(4, 1fr); } }


/* ---------- 12 YORUMLAR (karusel) ---------- */
.yorumlar { background: var(--beyaz); }
.karusel { --gorunen: 1; }
.karusel-pencere { overflow: hidden; margin-inline: calc(var(--b-3) * -1); padding: var(--b-3); }
.karusel-ray { display: flex; transition: transform .8s var(--yumusak); will-change: transform; touch-action: pan-y; }
.karusel-slayt { flex: 0 0 calc(100% / var(--gorunen)); padding-inline: var(--b-3); }
.yorum {
    height: 100%; display: flex; flex-direction: column; gap: var(--b-5);
    padding: clamp(1.8rem, 4vw, 2.8rem); border-radius: var(--r-3);
    background: var(--porselen); border: 1px solid var(--sis);
}
.yorum-tirnak { color: var(--altin); }
.yorum-tirnak .ikon { width: 34px; height: 34px; }
.yorum blockquote { margin: 0; flex: 1; }
.yorum blockquote p { font-family: var(--f-baslik); font-size: clamp(1.2rem, 1vw + 1rem, 1.5rem); line-height: 1.45; margin: 0; }
.yorum figcaption { display: flex; align-items: center; gap: var(--b-3); }
.yorum-monogram { width: 46px; height: 46px; border-radius: 50%; display: grid; place-items: center; background: var(--grafit); color: var(--altin-acik); font-family: var(--f-baslik); font-size: 1rem; }
.yorum figcaption strong { display: block; font-size: .95rem; }
.yorum figcaption small { color: var(--duman); font-size: var(--t-kucuk); }
.karusel-kontrol { display: flex; align-items: center; justify-content: center; gap: var(--b-4); margin-top: var(--b-6); }
.karusel-ok { width: 48px; height: 48px; display: grid; place-items: center; border-radius: 50%; border: 1px solid var(--sis); background: var(--beyaz); transition: background-color .3s, color .3s, border-color .3s; }
.karusel-ok:hover { background: var(--murekkep); color: var(--beyaz); border-color: var(--murekkep); }
.karusel-noktalar { display: flex; gap: var(--b-2); }
.karusel-noktalar button { width: 28px; height: 28px; padding: 0; border: 0; background: none; display: grid; place-items: center; }
.karusel-noktalar button::before { content: ""; width: 8px; height: 8px; border-radius: var(--r-tam); background: var(--sis); transition: width .45s var(--yumusak), background-color .45s; }
.karusel-noktalar button[aria-current="true"]::before { width: 26px; background: var(--altin); }
@media (min-width: 768px) { .karusel { --gorunen: 2; } }


/* ---------- 13 EKİP ---------- */
.ekip-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: var(--b-6) var(--b-4); }
.ekip-kart h3 { font-size: 1.15rem; margin-top: var(--b-4); }
.ekip-kart p { color: var(--duman); font-size: var(--t-kucuk); margin: 2px 0 0; }
.ekip-foto {
    --tx: 0deg; --ty: 0deg;
    position: relative; aspect-ratio: 3 / 3.8; border-radius: var(--r-2); overflow: hidden;
    background: linear-gradient(160deg, var(--grafit-3), var(--grafit) 70%);
    transform: perspective(900px) rotateX(var(--tx)) rotateY(var(--ty));
    transition: transform .5s var(--yumusak), box-shadow .5s;
}
.ekip-foto:hover { box-shadow: var(--golge-2); }
.ekip-foto img { width: 100%; height: 100%; object-fit: cover; transition: transform .8s var(--yumusak); }
.ekip-foto:hover img { transform: scale(1.06); }
.ekip-monogram {
    position: absolute; inset: 0; display: grid; place-items: center;
    font-family: var(--f-baslik); font-size: clamp(2.6rem, 6vw, 4rem); color: var(--altin-acik); letter-spacing: .04em;
}
.ekip-monogram::after { content: ""; position: absolute; width: 58%; aspect-ratio: 1.12; clip-path: polygon(0 0, 100% 0, 50% 100%); border-top: 1px solid rgba(228,213,181,.4); background: linear-gradient(rgba(228,213,181,.12), transparent); }
.ekip-sosyal {
    position: absolute; left: var(--b-3); right: var(--b-3); bottom: var(--b-3);
    display: flex; justify-content: center; gap: var(--b-2);
    padding: var(--b-2); border-radius: var(--r-tam);
    background: rgba(255,255,255,.18); -webkit-backdrop-filter: blur(12px); backdrop-filter: blur(12px);
    transform: translateY(calc(100% + var(--b-4))); opacity: 0;
    transition: transform .5s var(--yumusak), opacity .5s;
}
.ekip-foto:hover .ekip-sosyal, .ekip-foto:focus-within .ekip-sosyal { transform: none; opacity: 1; }
.ekip-sosyal a { width: 38px; height: 38px; display: grid; place-items: center; border-radius: 50%; color: var(--beyaz); transition: background-color .3s, color .3s; }
.ekip-sosyal a:hover { background: var(--beyaz); color: var(--murekkep); }
@media (hover: none) { .ekip-sosyal { transform: none; opacity: 1; } }
@media (min-width: 1024px) { .ekip-grid { grid-template-columns: repeat(4, 1fr); gap: var(--b-5); } }


/* ---------- 14 SSS (akordeon) ---------- */
.sss { background: var(--beyaz); }
.sss-duzen { display: grid; gap: var(--b-6); }
.sss-bas p { color: var(--duman); font-size: var(--t-giris); margin: var(--b-4) 0 var(--b-4); }
.sss-link { font-weight: 600; }
.akordeon-oge { border-bottom: 1px solid var(--sis); }
.akordeon-oge:first-child { border-top: 1px solid var(--sis); }
.akordeon-oge h3 { font-family: var(--f-govde); font-size: 1rem; font-weight: 600; }
.akordeon-bas {
    width: 100%; display: flex; align-items: center; justify-content: space-between; gap: var(--b-4);
    padding: var(--b-5) 0; border: 0; background: none; text-align: left; line-height: 1.45;
    transition: color .3s;
}
.akordeon-bas:hover { color: var(--altin-koyu); }
.akordeon-isaret { position: relative; flex: 0 0 auto; width: 34px; height: 34px; border-radius: 50%; border: 1px solid var(--sis); transition: background-color .35s, border-color .35s, transform .45s var(--yumusak); }
.akordeon-isaret::before, .akordeon-isaret::after { content: ""; position: absolute; left: 50%; top: 50%; width: 12px; height: 1.5px; margin: -.75px 0 0 -6px; background: currentColor; transition: transform .45s var(--yumusak); }
.akordeon-isaret::after { transform: rotate(90deg); }
.akordeon-bas[aria-expanded="true"] .akordeon-isaret { background: var(--murekkep); color: var(--beyaz); border-color: var(--murekkep); transform: rotate(180deg); }
.akordeon-bas[aria-expanded="true"] .akordeon-isaret::after { transform: rotate(0); }
.akordeon-govde { display: grid; grid-template-rows: 0fr; transition: grid-template-rows .5s var(--yumusak); }
.akordeon-govde > div { overflow: hidden; }
.akordeon-govde p { color: var(--duman); padding: 0 var(--b-7) var(--b-5) 0; margin: 0; }
.akordeon-oge.acik .akordeon-govde { grid-template-rows: 1fr; }
html:not(.js) .akordeon-govde { grid-template-rows: 1fr; }
@media (min-width: 1024px) { .sss-duzen { grid-template-columns: 4fr 7fr; gap: var(--b-8); } .sss-bas { position: sticky; top: 120px; align-self: start; } }


/* ---------- 15 İLETİŞİM, FORM, HARİTA ---------- */
.iletisim { background: linear-gradient(180deg, var(--porselen), #ECECEA); overflow: hidden; }
.iletisim::before {  /* forma cam hissi veren arka plan lekeleri */
    content: ""; position: absolute; width: 520px; height: 520px; right: -140px; top: 10%;
    border-radius: 50%; background: radial-gradient(circle, rgba(184,150,92,.28), transparent 65%); filter: blur(30px); pointer-events: none;
}
.iletisim-duzen { position: relative; display: grid; gap: var(--b-6); }
.form { display: grid; gap: var(--b-4); padding: clamp(1.4rem, 4vw, 2.6rem); border-radius: var(--r-3); }
.form-satir { display: grid; gap: var(--b-4); }
@media (min-width: 768px) { .form-satir { grid-template-columns: 1fr 1fr; } }

/* animasyonlu (yüzen) etiketli alanlar */
.alan { position: relative; }
.alan input, .alan textarea, .alan select {
    width: 100%; font: inherit; color: var(--murekkep);
    padding: 1.55rem 1rem .6rem; min-height: 60px;
    background: rgba(255,255,255,.85); border: 1px solid var(--sis); border-radius: var(--r-1);
    transition: border-color .3s, box-shadow .3s, background-color .3s;
    -webkit-appearance: none; appearance: none;
}
.alan textarea { resize: vertical; min-height: 140px; }
.alan label {
    position: absolute; left: 1rem; top: 1.15rem; color: var(--duman); pointer-events: none;
    transform-origin: left top; transition: transform .35s var(--yumusak), color .3s;
}
.alan input:focus, .alan textarea:focus, .alan select:focus { outline: none; border-color: var(--murekkep); box-shadow: 0 0 0 4px rgba(184,150,92,.18); background: var(--beyaz); }
.alan input:focus + label, .alan input:not(:placeholder-shown) + label,
.alan textarea:focus + label, .alan textarea:not(:placeholder-shown) + label,
.alan select:focus + label, .alan select:valid + label { transform: translateY(-.62rem) scale(.78); color: var(--altin-koyu); }
.alan--secim::after { content: ""; position: absolute; right: 1.2rem; top: 50%; width: 8px; height: 8px; margin-top: -6px; border-right: 1.5px solid var(--duman); border-bottom: 1.5px solid var(--duman); transform: rotate(45deg); pointer-events: none; }
.alan.hatali input, .alan.hatali textarea, .alan.hatali select { border-color: #B55454; }
.tuzak { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
.onay { display: flex; gap: var(--b-3); align-items: flex-start; font-size: var(--t-kucuk); color: var(--duman); cursor: pointer; }
.onay input { width: 18px; height: 18px; margin-top: 2px; accent-color: var(--murekkep); flex: 0 0 auto; }
.form-sonuc { margin: 0; font-size: .92rem; min-height: 1.4em; }
.form-sonuc--ok { color: #2F6B4F; }
.form-sonuc--hata { color: #A04040; }
.form.gonderiliyor button[type="submit"] { opacity: .6; pointer-events: none; }

.iletisim-yan { display: grid; gap: var(--b-5); align-content: start; }
.bilgi-listesi { display: grid; gap: var(--b-5); }
.bilgi-listesi li { display: flex; gap: var(--b-4); align-items: flex-start; }
.bilgi-ikon { flex: 0 0 auto; width: 48px; height: 48px; border-radius: 50%; display: grid; place-items: center; background: var(--grafit); color: var(--altin-acik); }
.bilgi-listesi h3 { font-family: var(--f-govde); font-size: .8rem; font-weight: 600; letter-spacing: .06em; color: var(--duman); margin-bottom: 2px; }
.bilgi-listesi p { margin: 0; }
.harita { border-radius: var(--r-3); overflow: hidden; aspect-ratio: 4 / 3; box-shadow: var(--golge-1); background: var(--beyaz); }
.harita iframe { width: 100%; height: 100%; border: 0; filter: grayscale(.35) contrast(1.05); }
.harita-bos { height: 100%; display: grid; place-content: center; justify-items: center; gap: var(--b-3); padding: var(--b-5); text-align: center; color: var(--duman); background: repeating-linear-gradient(135deg, transparent 0 22px, rgba(46,48,55,.035) 22px 23px); }
.harita-bos img { opacity: .35; }
.harita-bos p { margin: 0; max-width: 22rem; font-size: .92rem; }
@media (min-width: 1024px) { .iletisim-duzen { grid-template-columns: 7fr 5fr; gap: var(--b-7); } }

.cta-bant { display: grid; gap: var(--b-5); padding: clamp(1.8rem, 5vw, 3.2rem); border-radius: var(--r-3); }
.cta-bant p { color: var(--duman); margin: var(--b-3) 0 0; }
.cta-dugmeler { display: flex; flex-wrap: wrap; gap: var(--b-3); }
@media (min-width: 1024px) { .cta-bant { grid-template-columns: 1fr auto; align-items: center; } }


/* ---------- 16 FOOTER VE YÜZEN DÜĞMELER ---------- */
.alt { background: var(--grafit); color: rgba(255,255,255,.78); }
.alt-ic { display: grid; gap: var(--b-7); padding-block: clamp(3.5rem, 7vw, 5.5rem) var(--b-7); }
.alt-marka img { width: 200px; margin-bottom: var(--b-5); }
.alt-marka p { max-width: 24rem; font-size: .95rem; }
.alt-baslik { font-family: var(--f-govde); font-size: .78rem; font-weight: 600; letter-spacing: .14em; color: var(--altin-acik); margin-bottom: var(--b-4); }
.alt-blok ul { display: grid; gap: var(--b-2); }
.alt-blok a:hover { color: var(--beyaz); }
.alt-iletisim li { display: flex; gap: var(--b-3); align-items: flex-start; }
.alt-iletisim .ikon { margin-top: 4px; color: var(--altin-acik); }
.alt-telif {
    display: flex; flex-wrap: wrap; gap: var(--b-3); justify-content: space-between;
    padding-block: var(--b-5) calc(var(--b-5) + env(safe-area-inset-bottom, 0px));
    border-top: 1px solid rgba(255,255,255,.1); font-size: var(--t-kucuk); color: rgba(255,255,255,.55);
}
.sosyal { display: flex; gap: var(--b-2); }
.sosyal a { width: 42px; height: 42px; display: grid; place-items: center; border-radius: 50%; border: 1px solid rgba(255,255,255,.2); transition: background-color .35s, color .35s, transform .35s var(--yumusak); }
.sosyal a:hover { background: var(--altin); color: var(--murekkep); transform: translateY(-3px); }
@media (min-width: 768px)  { .alt-ic { grid-template-columns: 1fr 1fr; } }
@media (min-width: 1024px) { .alt-ic { grid-template-columns: 1.6fr 1fr 1fr 1.3fr; } }

.yuzen {
    position: fixed; right: max(16px, env(safe-area-inset-right)); bottom: max(16px, env(safe-area-inset-bottom)); z-index: 90;
    display: flex; flex-direction: column-reverse; gap: var(--b-3); align-items: center;
}
.yuzen-btn { width: 54px; height: 54px; display: grid; place-items: center; border-radius: 50%; border: 0; box-shadow: 0 14px 30px -12px rgba(20,20,23,.55); transition: transform .4s var(--yumusak), opacity .4s, visibility .4s; }
.yuzen-btn .ikon { width: 26px; height: 26px; }
.yuzen-btn:hover { transform: translateY(-4px); }
.yuzen-wa { background: #25D366; color: var(--beyaz); }
.yuzen-yukari { width: 46px; height: 46px; background: var(--beyaz); color: var(--murekkep); opacity: 0; visibility: hidden; transform: translateY(12px); }
.yuzen-yukari .ikon { width: 20px; height: 20px; }
.yuzen-yukari.goster { opacity: 1; visibility: visible; transform: none; }


/* ---------- 17 ÜRÜN SAYFALARI ---------- */
.kategori-grid { display: grid; gap: var(--b-3); grid-template-columns: repeat(2, 1fr); }
.kategori-kart {
    --tx: 0deg; --ty: 0deg;
    position: relative; min-height: 190px; height: 100%;
    display: flex; flex-direction: column; justify-content: flex-end; gap: 4px;
    padding: var(--b-5); border-radius: var(--r-2);
    background: var(--beyaz); border: 1px solid var(--sis);
    transform: perspective(900px) rotateX(var(--tx)) rotateY(var(--ty));
    transition: transform .5s var(--yumusak), box-shadow .5s, background-color .5s, color .5s;
}
.kategori-kart:hover { background: var(--grafit); color: var(--beyaz); box-shadow: var(--golge-2); }
.kategori-ikon { position: absolute; top: var(--b-5); left: var(--b-5); width: 46px; height: 46px; display: grid; place-items: center; border-radius: 50%; background: var(--porselen); color: var(--murekkep); transition: background-color .5s, color .5s; }
.kategori-kart:hover .kategori-ikon { background: rgba(184,150,92,.2); color: var(--altin-acik); }
.kategori-ad { font-family: var(--f-baslik); font-size: clamp(1.2rem, 1vw + 1rem, 1.55rem); line-height: 1.15; }
.kategori-alt { font-size: var(--t-kucuk); color: var(--duman); transition: color .5s; }
.kategori-kart:hover .kategori-alt { color: rgba(255,255,255,.65); }
.kategori-ok { position: absolute; top: var(--b-5); right: var(--b-5); transition: transform .45s var(--yumusak), color .45s; }
.kategori-kart:hover .kategori-ok { transform: translateX(4px); color: var(--altin-acik); }
@media (min-width: 768px)  { .kategori-grid { grid-template-columns: repeat(3, 1fr); gap: var(--b-4); } .kategori-kart { min-height: 220px; } }
@media (min-width: 1024px) { .kategori-grid { grid-template-columns: repeat(4, 1fr); } }

.cipler { display: flex; flex-wrap: wrap; gap: var(--b-2); margin-bottom: var(--b-7); }
.cip { padding: .5rem 1rem; border-radius: var(--r-tam); border: 1px solid var(--sis); background: var(--beyaz); font-size: .88rem; transition: background-color .3s, color .3s, border-color .3s; }
.cip:hover { background: var(--murekkep); border-color: var(--murekkep); color: var(--beyaz); }

.grup { margin-bottom: var(--b-8); }
.grup-bas { display: flex; flex-wrap: wrap; align-items: baseline; justify-content: space-between; gap: var(--b-3); margin-bottom: var(--b-5); padding-bottom: var(--b-3); border-bottom: 1px solid var(--sis); }
.grup-bas h2 { font-size: clamp(1.5rem, 1.2vw + 1.1rem, 2rem); }
.grup-bas a { font-size: .9rem; font-weight: 600; }
.liste-ozet { color: var(--duman); font-size: var(--t-kucuk); margin-bottom: var(--b-5); }

.urun-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: var(--b-3); }
.urun-kart { display: flex; flex-direction: column; border-radius: var(--r-2); background: var(--beyaz); overflow: hidden; border: 1px solid transparent; transition: transform .5s var(--yumusak), box-shadow .5s, border-color .5s; }
.urun-kart:hover { transform: translateY(-6px); box-shadow: var(--golge-2); border-color: var(--altin-acik); }
.urun-gorsel { display: block; aspect-ratio: 1; padding: 10%; overflow: hidden; }
.urun-gorsel img { width: 100%; height: 100%; object-fit: contain; transition: transform .8s var(--yumusak); }
.urun-kart:hover .urun-gorsel img { transform: scale(1.07); }
.urun-bos { display: grid; place-items: center; height: 100%; color: var(--sis); }
.urun-bos .ikon { width: 40%; height: 40%; }
.urun-govde { display: flex; flex-direction: column; gap: 4px; padding: var(--b-3) var(--b-4) var(--b-4); border-top: 1px solid var(--porselen); }
.urun-ad { font-size: .9rem; line-height: 1.4; }
.urun-kod { font-size: .82rem; font-weight: 700; letter-spacing: .03em; }
@media (min-width: 768px)  { .urun-grid { grid-template-columns: repeat(3, 1fr); gap: var(--b-4); } }
@media (min-width: 1024px) { .urun-grid { grid-template-columns: repeat(4, 1fr); gap: var(--b-5); } }

.sayfalama { display: flex; flex-wrap: wrap; justify-content: center; gap: var(--b-2); margin-top: var(--b-7); }
.sayfalama a, .sayfalama span { min-width: 44px; height: 44px; padding: 0 .8rem; display: inline-grid; place-items: center; border-radius: var(--r-tam); border: 1px solid var(--sis); background: var(--beyaz); font-size: .9rem; transition: background-color .3s, color .3s, border-color .3s; }
.sayfalama a:hover { border-color: var(--murekkep); }
.sayfalama [aria-current] { background: var(--murekkep); color: var(--beyaz); border-color: var(--murekkep); }
.sayfalama .sayfa-bosluk { border: 0; background: none; min-width: 20px; padding: 0; }

/* ürün detayı */
.urun-detay-bolum { padding-top: calc(var(--ust-yukseklik) + var(--b-6)); }
.detay { display: grid; gap: var(--b-6); margin-top: var(--b-4); }
.detay-galeri { min-width: 0; }
.detay-ana {
    position: relative; display: grid; place-items: center; width: 100%; aspect-ratio: 1; padding: 8%;
    border: 0; border-radius: var(--r-3); background: var(--beyaz); overflow: hidden; cursor: zoom-in;
    box-shadow: var(--golge-1);
}
.detay-ana img { max-height: 100%; object-fit: contain; transition: transform .25s ease; }
.detay-ana.buyutec img { transform: scale(2.2); }
.detay-ana--bos { cursor: default; color: var(--sis); }
.detay-ana--bos .ikon { width: 30%; height: 30%; }
.detay-ipucu { position: absolute; right: var(--b-3); bottom: var(--b-3); display: inline-flex; align-items: center; gap: 6px; padding: .45rem .8rem; border-radius: var(--r-tam); background: rgba(20,20,23,.72); color: var(--beyaz); font-size: .78rem; transition: opacity .3s; }
.detay-ana.buyutec .detay-ipucu { opacity: 0; }
@media (hover: none) { .detay-ipucu span { display: none; } .detay-ipucu { padding: .5rem; } }
.detay-kucukler { display: flex; gap: var(--b-2); margin-top: var(--b-3); overflow-x: auto; padding: 2px; }
.detay-kucukler button { flex: 0 0 auto; width: 72px; height: 72px; padding: 6px; border-radius: var(--r-1); border: 1px solid var(--sis); background: var(--beyaz); transition: border-color .3s; }
.detay-kucukler button.secili { border-color: var(--murekkep); }
.detay-kucukler img { width: 100%; height: 100%; object-fit: contain; }
.detay-baslik { font-size: clamp(1.9rem, 2vw + 1.2rem, 2.8rem); }
.detay-kod { margin: var(--b-2) 0 var(--b-5); font-size: 1.05rem; letter-spacing: .04em; }
.detay-kod strong { font-weight: 700; }
.detay-cta { display: flex; flex-wrap: wrap; gap: var(--b-3); margin-top: var(--b-6); }
.benzer { margin-top: var(--b-bolum); }
@media (min-width: 1024px) { .detay { grid-template-columns: 1fr 1fr; gap: var(--b-8); align-items: start; } .detay-galeri { position: sticky; top: 100px; } }

/* tek format özellik tablosu */
.ozellik-tablo { width: 100%; border-collapse: separate; border-spacing: 0; font-size: .94rem; background: var(--beyaz); border-radius: var(--r-2); overflow: hidden; box-shadow: var(--golge-1); }
.ozellik-tablo th, .ozellik-tablo td { padding: .8rem 1.1rem; text-align: left; vertical-align: top; border-top: 1px solid var(--porselen); }
.ozellik-tablo tbody tr:not(.ot-grup) th { width: 44%; font-weight: 400; color: var(--duman); }
.ozellik-tablo .ot-grup th { background: var(--grafit); color: var(--beyaz); font-family: var(--f-baslik); font-size: 1.1rem; font-weight: 500; padding: .8rem 1.1rem; border-top: 0; }
.ozellik-tablo .ot-alt td { font-weight: 600; color: var(--altin-koyu); background: #FAF8F3; }
.ozellik-tablo .ot-not td { color: var(--duman); }
.ozellik-bos { color: var(--duman); padding: var(--b-5); border-radius: var(--r-2); background: var(--beyaz); }

/* mağaza fotoğrafları */
.magaza-galeri { columns: 1; column-gap: var(--b-4); }
.magaza-galeri li { break-inside: avoid; margin-bottom: var(--b-4); }
.magaza-foto { position: relative; display: block; width: 100%; padding: 0; border: 0; border-radius: var(--r-2); overflow: hidden; cursor: zoom-in; background: var(--grafit); }
.magaza-foto img { width: 100%; transition: transform .9s var(--yumusak), opacity .5s; }
.magaza-foto:hover img { transform: scale(1.05); opacity: .9; }
.magaza-zoom { position: absolute; right: var(--b-3); bottom: var(--b-3); width: 42px; height: 42px; display: grid; place-items: center; border-radius: 50%; background: rgba(255,255,255,.25); color: var(--beyaz); -webkit-backdrop-filter: blur(8px); backdrop-filter: blur(8px); opacity: 0; transform: scale(.8); transition: opacity .4s, transform .4s var(--yumusak); }
.magaza-foto:hover .magaza-zoom { opacity: 1; transform: none; }
@media (min-width: 768px)  { .magaza-galeri { columns: 2; } }
@media (min-width: 1024px) { .magaza-galeri { columns: 3; column-gap: var(--b-5); } .magaza-galeri li { margin-bottom: var(--b-5); } }


/* ---------- 18 LIGHTBOX ---------- */
html.lb-kilit, html.lb-kilit body { overflow: hidden; }
.lb { position: fixed; inset: 0; z-index: 400; display: none; background: rgba(20,20,23,.97); color: var(--beyaz); }
.lb.acik { display: block; animation: lbAc .3s var(--yumusak); }
@keyframes lbAc { from { opacity: 0; } }
.lb-sahne { position: absolute; inset: 0; display: flex; align-items: center; justify-content: center; overflow: hidden; touch-action: none; cursor: zoom-in; user-select: none; -webkit-user-select: none; }
.lb.lb-yakin .lb-sahne { cursor: grab; }
.lb.lb-yakin.lb-suruk .lb-sahne { cursor: grabbing; }
.lb-resim { max-width: min(92vw, 1300px); max-height: 78vh; object-fit: contain; background: var(--beyaz); border-radius: var(--r-1); box-shadow: 0 30px 80px -30px rgba(0,0,0,.7); }
.lb.lb-yukleniyor .lb-resim { opacity: .4; }
.lb-ust { position: absolute; inset: 0 0 auto; z-index: 2; display: flex; align-items: center; justify-content: space-between; padding: var(--b-3) var(--b-4); background: linear-gradient(rgba(20,20,23,.7), transparent); pointer-events: none; }
.lb-ust > * { pointer-events: auto; }
.lb-sayac { font-size: .85rem; opacity: .8; }
.lb-araclar { display: flex; gap: 6px; }
.lb-btn, .lb-ok { width: 44px; height: 44px; display: grid; place-items: center; border-radius: 50%; border: 0; background: rgba(255,255,255,.12); color: var(--beyaz); transition: background-color .3s; }
.lb-btn:hover, .lb-ok:hover { background: rgba(255,255,255,.26); }
.lb-ok { position: absolute; top: 50%; z-index: 2; margin-top: -26px; width: 52px; height: 52px; }
.lb-ok[hidden] { display: none; }
.lb-onceki { left: var(--b-4); }
.lb-sonraki { right: var(--b-4); }
.lb-alt { position: absolute; inset: auto 0 0; z-index: 2; display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: var(--b-2) var(--b-4); padding: var(--b-5) var(--b-4) calc(var(--b-5) + env(safe-area-inset-bottom, 0px)); background: linear-gradient(transparent, rgba(20,20,23,.8)); text-align: center; pointer-events: none; }
.lb-alt > * { pointer-events: auto; }
.lb-baslik { font-family: var(--f-baslik); font-size: 1.1rem; }
.lb-kod { font-weight: 700; font-size: .9rem; letter-spacing: .04em; color: var(--altin-acik); }
.lb-link { font-size: .9rem; font-weight: 600; }
.lb-alt:empty { display: none; }
@media (max-width: 767px) {
    .lb-resim { max-width: 100vw; max-height: 70vh; border-radius: 0; }
    .lb-ok { width: 42px; height: 42px; }
    .lb-onceki { left: 6px; } .lb-sonraki { right: 6px; }
    .lb-araclar [data-is="uzak"], .lb-araclar [data-is="yakin"] { display: none; }
}


/* ---------- 19 SCROLL ANİMASYONLARI VE HAREKET TERCİHİ ---------- */
/* JS varsa öğeler görünmez başlar; ekrana girince .gorunur eklenir */
.js [data-reveal] { opacity: 0; transition: opacity .9s var(--yumusak), transform .9s var(--yumusak); transition-delay: var(--gecikme, 0ms); }
.js [data-reveal="up"]   { transform: translateY(36px); }
.js [data-reveal="zoom"] { transform: scale(.92); }
.js [data-reveal="fade"] { transform: none; }
.js [data-reveal].gorunur { opacity: 1; transform: none; }
/* tilt/hover dönüşümü olan kartlar reveal bittikten sonra kendi transform'unu kullanır */
.js .hizmet-kart[data-reveal].gorunur { transform: perspective(900px) translateY(var(--yuksel)) rotateX(var(--tx)) rotateY(var(--ty)); }

@media (prefers-reduced-motion: reduce) {
    html { scroll-behavior: auto; }
    *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; transition-delay: 0ms !important; }
    .js [data-reveal] { opacity: 1; transform: none; }
    .js .hero-baslik .satir > span, .js .hero-alt, .js .hero-dugmeler, .js .hero-gorsel { transform: none; opacity: 1; }
    .hero-parilti { display: none; }
}
