/* =====================================================================
 *  SİTE HAREKETİ VE BÖLÜM GÖRÜNÜMÜ
 * ---------------------------------------------------------------------
 *  site-hareket.js'in sınıfları ve bölümlerin ortak görünüm işaretleri
 *  (SectionRenderer::decorate → data-anim, data-zemin, data-bosluk,
 *  data-genislik, data-hizalama, data-cihaz). site-sections.css'ten
 *  SONRA, temanın CSS'inden ÖNCE yüklenir: tema isterse ezer.
 *
 *  Gizleme yalnız <html class="cy-hareket"> varken olur; sınıfı betik
 *  koyar ("hareketi azalt"ta ve Animasyon: Yok'ta koymaz). Betik hiç
 *  çalışmazsa içerik baştan görünür.
 * ================================================================== */

:root {
    --cy-ease: cubic-bezier(.22, .61, .36, 1);
    --cy-ease-out: cubic-bezier(.16, 1, .3, 1);
    --cy-hareket-sure: .8s;
    --cy-hareket-mesafe: 28px;
}
html[data-cy-hareket="sade"] { --cy-hareket-sure: .6s; --cy-hareket-mesafe: 14px; }

html { scroll-behavior: smooth; }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }
/* Yapışkan menünün altında kalmasın: çapalar ve başlıklar biraz aşağıda durur. */
.cy-site [id] { scroll-margin-top: 88px; }
.cy-capa { display: block; height: 0; overflow: hidden; }
.cy-site ::selection { background: var(--cy-brand-600, #0b5cb5); color: #fff; }

/* ------------------------- 1. BELİRME -------------------------- */
.cy-hareket [data-reveal] {
    opacity: 0;
    transform: translate3d(0, var(--cy-hareket-mesafe), 0);
    transition: opacity var(--cy-hareket-sure) var(--cy-ease-out), transform var(--cy-hareket-sure) var(--cy-ease-out), filter var(--cy-hareket-sure) var(--cy-ease-out), clip-path 1.1s var(--cy-ease-out);
    transition-delay: var(--cy-gecikme, 0ms);
    will-change: opacity, transform;
}
.cy-hareket [data-reveal][data-anim="belir"] { transform: none; }
.cy-hareket [data-reveal][data-anim="yakinlas"] { transform: scale(.94); }
.cy-hareket [data-reveal][data-anim="soldan"] { transform: translate3d(calc(var(--cy-hareket-mesafe) * -2), 0, 0); }
.cy-hareket [data-reveal][data-anim="sagdan"] { transform: translate3d(calc(var(--cy-hareket-mesafe) * 2), 0, 0); }
.cy-hareket [data-reveal][data-anim="bulanik"] { transform: scale(1.02); filter: blur(10px); }
.cy-hareket [data-reveal].is-visible { opacity: 1; transform: none; filter: none; }
.cy-hareket [data-reveal].is-visible { will-change: auto; }
/* Hareketi azalt: yer değiştirme, yakınlaşma, bulanıklık ve perde yok; yalnız soldurarak belirme. */
.cy-hareket-az [data-reveal], .cy-hareket-az [data-reveal][data-anim] { transform: none !important; filter: none !important; clip-path: none !important; transition-property: opacity; }
.cy-hareket-az [data-reveal] img { transform: none !important; }
/* Emniyet: betiğin izlemeye almadığı öğe (ör. sonradan eklenen) 3 sn sonra kendiliğinden görünür. */
.cy-hareket [data-reveal]:not([data-cy-izle]):not(.is-visible) { animation: cy-emniyet .01s 3s forwards; }
@keyframes cy-emniyet { to { opacity: 1; transform: none; filter: none; clip-path: none; } }

/* Canlı düzeyde görseller perdeden açılır gibi gelir. */
html[data-cy-hareket="canli"].cy-hareket :is(figure, .iz-hero__gorsel, .nefes-hero__gorsel, .sade-hero__media, .cy-home-hero__visual)[data-reveal] { clip-path: inset(8% 8% 8% 8% round 12px); }
html[data-cy-hareket="canli"].cy-hareket :is(figure, .iz-hero__gorsel, .nefes-hero__gorsel, .sade-hero__media, .cy-home-hero__visual)[data-reveal].is-visible { clip-path: inset(0 0 0 0 round 0); }
html[data-cy-hareket="canli"].cy-hareket [data-reveal] img { transition: transform 1.4s var(--cy-ease-out); }
html[data-cy-hareket="canli"].cy-hareket [data-reveal]:not(.is-visible) img { transform: scale(1.08); }

/* Sayfanın ilk bölümü (karşılama) yüklenir yüklenmez gelir; başlık ayrıca süzülür. */
.cy-hareket :is(.iz-hero, .nefes-hero, .sade-hero, .sofra-hero, .cy-home-hero) h1 { animation: cy-baslik-gir 1s var(--cy-ease-out) both .1s; }
.cy-hareket-az :is(.iz-hero, .nefes-hero, .sade-hero, .sofra-hero, .cy-home-hero) h1 { animation-name: cy-belir; }
@keyframes cy-baslik-gir { from { opacity: 0; transform: translate3d(0, 24px, 0); letter-spacing: .01em; } to { opacity: 1; transform: none; } }
@keyframes cy-belir { from { opacity: 0; } to { opacity: 1; } }

/* ------------------- 2. MİKRO ETKİLEŞİMLER ---------------------- */
.cy-site .cy-btn { transition: transform .25s var(--cy-ease), box-shadow .25s var(--cy-ease), background-color .2s, color .2s, border-color .2s; }
html:not([data-cy-hareket="yok"]) .cy-site .cy-btn:hover { transform: translateY(-2px); }
html:not([data-cy-hareket="yok"]) .cy-site .cy-btn--primary:hover { box-shadow: 0 12px 24px -12px var(--cy-brand-600, #0b5cb5); }
.cy-site .cy-btn:active { transform: translateY(0) scale(.98); }

html:not([data-cy-hareket="yok"]) :is(.cy-bento__item, .cy-sec-team__card, .cy-sec-price, .cy-sec-review, .cy-feature, .cy-contact-card) { transition: transform .35s var(--cy-ease), box-shadow .35s var(--cy-ease), border-color .25s; }
html:not([data-cy-hareket="yok"]) :is(.cy-bento__item, .cy-sec-team__card, .cy-sec-price, .cy-sec-review, .cy-feature):hover { transform: translateY(-4px); box-shadow: 0 22px 40px -26px rgba(15, 23, 42, .45); }

/* Bağlantılı kart ve galeri görselleri üstüne gelince hafifçe yakınlaşır. */
:is(.cy-sec-gallery, .cy-mgal, .cy-sec-split__media, .cy-bento__img, .cy-mod-card) { overflow: hidden; }
html:not([data-cy-hareket="yok"]) :is(.cy-sec-gallery figure, .cy-mgal__bag, .cy-sec-split__media, .cy-bento__item, .cy-mod-card) img { transition: transform .9s var(--cy-ease-out), filter .4s; }
html:not([data-cy-hareket="yok"]) :is(.cy-sec-gallery figure:hover, .cy-mgal__bag:hover, .cy-sec-split__media:hover, .cy-bento__item:hover, .cy-mod-card:hover) img { transform: scale(1.05); }

/* --------------------------- 3. ÜST MENÜ ------------------------ */
.cy-site-nav { transition: box-shadow .3s var(--cy-ease), transform .35s var(--cy-ease), background-color .3s, padding .3s var(--cy-ease); }
.cy-site-nav.is-scrolled { box-shadow: 0 10px 30px -18px rgba(15, 23, 42, .35); }
.cy-site-nav.is-gizli { transform: translateY(-100%); }
html[data-cy-menu="normal"] .cy-site-nav { position: relative; }
html[data-cy-bulanik-menu="1"] .cy-site-nav.is-scrolled { background-color: color-mix(in srgb, var(--cy-surface, #fff) 82%, transparent) !important; -webkit-backdrop-filter: saturate(1.6) blur(14px); backdrop-filter: saturate(1.6) blur(14px); }

/* ------------------- 4. BÖLÜM ZEMİNLERİ (data-zemin) ------------- */
section[data-zemin] { position: relative; isolation: isolate; }
section[data-zemin="duz"] { background: var(--cy-bg, transparent) !important; }
section[data-zemin="acik"] { background: color-mix(in srgb, var(--cy-brand-600, #0b5cb5) 7%, var(--cy-surface, #fff)) !important; }
section[data-zemin="marka"] { background: var(--cy-brand-700, #0a4f9c) !important; }
section[data-zemin="vurgu"] { background: color-mix(in srgb, var(--cy-accent, #e5533d) 88%, #000) !important; }
section[data-zemin="gradyan"] { background: linear-gradient(135deg, var(--cy-brand-800, #083b75) 0%, var(--cy-brand-600, #0b5cb5) 55%, color-mix(in srgb, var(--cy-accent, var(--cy-brand-400)) 80%, var(--cy-brand-600, #0b5cb5)) 100%) !important; }
section[data-zemin="koyu"] { background: #0f1218 !important; }
section[data-zemin="gorsel"], section[data-zemin="video"] { background: #0b0d12 !important; }

.cy-zemin { position: absolute; inset: 0; z-index: -1; overflow: hidden; pointer-events: none; }
.cy-zemin__medya { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; transform: scale(1.02); }
.cy-zemin[data-cy-paralaks] .cy-zemin__medya { inset: -10% 0; height: 120%; will-change: transform; }
.cy-zemin__karart { position: absolute; inset: 0; background: linear-gradient(180deg, rgba(5, 7, 12, calc(var(--cy-karart, .45) * .8)) 0%, rgba(5, 7, 12, var(--cy-karart, .45)) 100%); }
html[data-cy-hareket="canli"]:not(.cy-hareket-yok) section[data-zemin="gorsel"]:not([data-cy-paralaks]) .cy-zemin__medya { animation: cy-kenburns 22s ease-in-out infinite alternate; }
@keyframes cy-kenburns { from { transform: scale(1.02); } to { transform: scale(1.12) translate3d(-1.5%, -1%, 0); } }

/* Koyu/renkli zeminde yazılar beyaza döner; kartlar yarı saydam cama döner. */
section[data-ters] {
    color: #fff;
    --cy-text: #fff; --cy-text-muted: rgba(255, 255, 255, .78); --cy-text-soft: rgba(255, 255, 255, .86);
    --cy-border: rgba(255, 255, 255, .18); --cy-surface: rgba(255, 255, 255, .08); --cy-surface-soft: rgba(255, 255, 255, .06);
    --cy-brand-text: #fff; --cy-brand-soft: rgba(255, 255, 255, .1); --cy-brand-50: rgba(255, 255, 255, .1); --cy-brand-100: rgba(255, 255, 255, .16);
    --iz-metin: #fff; --iz-soluk: rgba(255, 255, 255, .78); --iz-yuzey: rgba(255, 255, 255, .08); --iz-cizgi: rgba(255, 255, 255, .2); --iz-alt: transparent;
    --nefes-metin: #fff; --nefes-soluk: rgba(255, 255, 255, .78); --nefes-yuzey: rgba(255, 255, 255, .08); --nefes-cizgi: rgba(255, 255, 255, .2); --nefes-alt: transparent;
    --sade-metin: #fff; --sade-soluk: rgba(255, 255, 255, .78); --sade-yuzey: rgba(255, 255, 255, .08); --sade-cizgi: rgba(255, 255, 255, .2); --sade-alt: transparent;
    --sofra-metin: #fff; --sofra-soluk: rgba(255, 255, 255, .78); --sofra-yuzey: rgba(255, 255, 255, .08); --sofra-cizgi: rgba(255, 255, 255, .2); --sofra-alt: transparent;
}
section[data-ters] :is(h1, h2, h3, h4, p, li, dt, dd, summary, figcaption, .cy-eyebrow, .cy-muted) { color: inherit; }
section[data-ters] :is(.cy-muted, .cy-home-head p, p) { color: rgba(255, 255, 255, .84); }
section[data-ters] .cy-eyebrow { color: rgba(255, 255, 255, .9); }
section[data-ters] a:not(.btn) { color: #fff; text-decoration-color: rgba(255, 255, 255, .5); }
section[data-ters] :is(.cy-bento__item, .cy-sec-review, .cy-sec-price, .cy-sec-team__card, .cy-contact-card, .cy-faq details, .cy-feature) { background: rgba(255, 255, 255, .08) !important; border-color: rgba(255, 255, 255, .16) !important; color: #fff; -webkit-backdrop-filter: blur(8px); backdrop-filter: blur(8px); }
section[data-ters] .cy-btn--primary { background: #fff; border-color: #fff; color: #0f172a; }
section[data-ters] .cy-btn--primary:hover { background: rgba(255, 255, 255, .9); color: #0f172a; }
section[data-ters] :is(.cy-btn--soft, .cy-btn--ghost, .cy-btn--outline) { background: rgba(255, 255, 255, .12); border-color: rgba(255, 255, 255, .4); color: #fff; }
section[data-ters] .cy-home-cta { background: rgba(255, 255, 255, .1); box-shadow: none; }

/* ------------------- 5. BOŞLUK, GENİŞLİK, HİZA, CİHAZ ------------- */
section[data-bosluk="az"] { padding-block: clamp(1.5rem, 3.5vw, 2.5rem) !important; }
section[data-bosluk="cok"] { padding-block: clamp(4.5rem, 10vw, 8rem) !important; }
section[data-bosluk="yok"] { padding-block: 0 !important; }
section[data-bosluk] > .cy-home-container:not(.cy-sec-split) { padding-block: 0; }

@media (min-width: 992px) {
    section[data-genislik="dar"] .cy-home-container { max-width: 860px; }
    section[data-genislik="genis"] .cy-home-container { max-width: 1520px; }
}
section[data-genislik="tam"] .cy-home-container { max-width: none; padding-inline: clamp(.75rem, 2vw, 1.5rem); }

section[data-hizalama="sola"] .cy-home-head { text-align: left; margin-left: 0; }
section[data-hizalama="ortali"] :is(.cy-home-head, .cy-serbest, .cy-sec-split__text) { text-align: center; margin-inline: auto; }

@media (max-width: 767.98px) { section[data-cihaz="masaustu"] { display: none !important; } }
@media (min-width: 768px) { section[data-cihaz="mobil"] { display: none !important; } }

/* ------------------- 6. KARŞILAMA: KAPAK YERLEŞİMİ ---------------- */
section[data-duzen="kapak"] {
    position: relative; isolation: isolate; display: grid; align-items: center;
    min-height: min(92vh, 860px); padding-block: clamp(5rem, 12vw, 9rem) !important;
    background: #0b0d12 !important; color: #fff;
    --cy-text: #fff; --cy-text-muted: rgba(255, 255, 255, .82);
    --iz-metin: #fff; --iz-soluk: rgba(255, 255, 255, .85); --nefes-metin: #fff; --nefes-soluk: rgba(255, 255, 255, .85);
    --sade-metin: #fff; --sade-soluk: rgba(255, 255, 255, .85); --sofra-metin: #fff; --sofra-soluk: rgba(255, 255, 255, .85);
}
section[data-duzen="kapak"]::after { content: ""; position: absolute; inset: 0; z-index: -1; background: linear-gradient(100deg, rgba(5, 7, 12, .7) 0%, rgba(5, 7, 12, .4) 50%, rgba(5, 7, 12, .25) 100%), linear-gradient(0deg, rgba(5, 7, 12, .6), rgba(5, 7, 12, .15) 55%); }
/* Ortalı karşılamada (Sade) perde düzgün: yazı görselin ortasında da okunur. */
section[data-duzen="kapak"]:has(.sade-hero__inner)::after, section[data-duzen="kapak"]:has(.cy-home-hero--tek)::after { background: radial-gradient(ellipse at center, rgba(5, 7, 12, .72) 0%, rgba(5, 7, 12, .55) 55%, rgba(5, 7, 12, .4) 100%); }
section[data-duzen="kapak"] :is(h1, p) { text-shadow: 0 1px 24px rgba(0, 0, 0, .35); }
section[data-duzen="kapak"] :is(.cy-home-hero__inner, .nefes-hero__ic, .iz-hero__ic, .sade-hero__inner) { display: block; padding-block: 0; position: static; }
section[data-duzen="kapak"] :is(.cy-home-hero__text, .nefes-hero__metin, .iz-hero__metin, .sade-hero__inner > :not(figure)) { max-width: 44rem; }
section[data-duzen="kapak"] :is(.cy-home-hero__visual, .nefes-hero__gorsel, .iz-hero__gorsel, .sade-hero__media) { position: absolute; inset: 0; z-index: -2; margin: 0; max-width: none; width: auto; clip-path: none !important; opacity: 1 !important; transform: none !important; }
section[data-duzen="kapak"] :is(.cy-home-hero__visual, .nefes-hero__gorsel, .iz-hero__gorsel, .sade-hero__media) img { width: 100%; height: 100%; aspect-ratio: auto; object-fit: cover; border: 0; border-radius: 0; box-shadow: none; max-height: none; }
html[data-cy-hareket="canli"] section[data-duzen="kapak"] :is(.cy-home-hero__visual, .nefes-hero__gorsel, .iz-hero__gorsel, .sade-hero__media) img { animation: cy-kenburns 24s ease-in-out infinite alternate; }
section[data-duzen="kapak"] :is(h1, p, .iz-rozet, .nefes-rozet, .sade-kicker, .cy-home-badge) { color: #fff; }
/* Hap biçimli rozetler kapakta cam görünür: açık zeminleri beyaz yazıyı yutuyordu (Nefes). */
section[data-duzen="kapak"] :is(.iz-rozet, .nefes-rozet, .cy-home-badge) { background: rgba(255, 255, 255, .14); border-color: rgba(255, 255, 255, .38); -webkit-backdrop-filter: blur(6px); backdrop-filter: blur(6px); }
section[data-duzen="kapak"] :is(.iz-hero__lead, .nefes-hero__lead, .sade-hero__lead, .cy-home-hero__lead, .iz-hero__guven, .nefes-hero__guven, .sade-hero__trust, .cy-home-hero__trust) { color: rgba(255, 255, 255, .86); }
section[data-duzen="kapak"] :is(.cy-btn--soft, .cy-btn--ghost, .cy-btn--outline) { background: rgba(255, 255, 255, .14); border-color: rgba(255, 255, 255, .45); color: #fff; -webkit-backdrop-filter: blur(6px); backdrop-filter: blur(6px); }
section[data-duzen="kapak"] .cy-home-hero__visual :is(.cy-browser__bar, .cy-home-chips) { display: none; }
@media (prefers-reduced-motion: reduce) { section[data-duzen="kapak"] img, .cy-zemin__medya { animation: none !important; } }

/* --------------------------- 7. VİDEO --------------------------- */
.cy-video { position: relative; max-width: 1080px; margin-inline: auto; border-radius: var(--cy-radius-lg, 18px); overflow: hidden; background: #000; aspect-ratio: 16 / 9; box-shadow: 0 30px 70px -40px rgba(2, 6, 23, .7); }
.cy-video--4-3 { aspect-ratio: 4 / 3; max-width: 900px; }
.cy-video--1-1 { aspect-ratio: 1; max-width: 640px; }
.cy-video--21-9 { aspect-ratio: 21 / 9; max-width: none; }
.cy-video--9-16 { aspect-ratio: 9 / 16; max-width: 420px; }
.cy-video video, .cy-video img, .cy-video__cerceve { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; border: 0; display: block; }
.cy-video__kapak { position: absolute; inset: 0; width: 100%; padding: 0; border: 0; background: #111 linear-gradient(135deg, var(--cy-brand-800, #083b75), var(--cy-brand-600, #0b5cb5)); cursor: pointer; }
.cy-video__kapak img { transition: transform .8s var(--cy-ease-out), filter .4s; filter: brightness(.82); }
.cy-video__kapak:hover img, .cy-video__kapak:focus-visible img { transform: scale(1.04); filter: brightness(.7); }
.cy-video__oynat { position: absolute; left: 50%; top: 50%; display: grid; place-items: center; width: clamp(64px, 9vw, 92px); aspect-ratio: 1; border-radius: 50%; transform: translate(-50%, -50%); background: rgba(255, 255, 255, .95); color: #0f172a; box-shadow: 0 0 0 0 rgba(255, 255, 255, .55); animation: cy-nabiz 2.4s infinite; transition: transform .3s var(--cy-ease); }
.cy-video__oynat .cy-icon { width: 34%; height: 34%; margin-left: 6%; fill: currentColor; }
.cy-video__kapak:hover .cy-video__oynat { transform: translate(-50%, -50%) scale(1.08); }
.cy-video__servis { position: absolute; right: .9rem; bottom: .8rem; padding: .2rem .6rem; border-radius: 999px; background: rgba(0, 0, 0, .55); color: #fff; font-size: .75rem; }
@keyframes cy-nabiz { 0% { box-shadow: 0 0 0 0 rgba(255, 255, 255, .5); } 70% { box-shadow: 0 0 0 22px rgba(255, 255, 255, 0); } 100% { box-shadow: 0 0 0 0 rgba(255, 255, 255, 0); } }
@media (prefers-reduced-motion: reduce) { .cy-video__oynat { animation: none; } }

/* ------------------------ 8. KAYAN ŞERİTLER ---------------------- */
[data-cy-kayan].is-akiyor { overflow: hidden; -webkit-mask-image: linear-gradient(90deg, transparent, #000 6%, #000 94%, transparent); mask-image: linear-gradient(90deg, transparent, #000 6%, #000 94%, transparent); }
.cy-kayan__iz { display: flex; width: max-content; animation: cy-kay var(--cy-kayan-sure, 30s) linear infinite; }
.cy-kayan-yazi--geri .cy-kayan__iz { animation-direction: reverse; }
[data-cy-kayan]:hover .cy-kayan__iz { animation-play-state: paused; }
.cy-kayan__iz > ul { flex: none; }
@keyframes cy-kay { from { transform: translate3d(0, 0, 0); } to { transform: translate3d(calc(var(--cy-kayan-mesafe, 50%) * -1), 0, 0); } }
@media (prefers-reduced-motion: reduce) { .cy-kayan__iz { animation: none; } }

/* Logolar */
.cy-logolar__serit { display: flex; flex-wrap: wrap; justify-content: center; align-items: center; gap: clamp(1.5rem, 4vw, 3.5rem); margin: 0; padding: .5rem 0; list-style: none; }
.cy-logolar.is-akiyor .cy-logolar__serit { flex-wrap: nowrap; padding-inline: clamp(.75rem, 2vw, 1.75rem); }
.cy-logolar__oge img { display: block; height: clamp(28px, 4vw, 44px); width: auto; max-width: 160px; object-fit: contain; transition: filter .35s, opacity .35s, transform .35s var(--cy-ease); }
.cy-logolar--renksiz .cy-logolar__oge img { filter: grayscale(1); opacity: .62; }
.cy-logolar--renksiz .cy-logolar__oge :is(a:hover, a:focus-visible) img, .cy-logolar--renksiz .cy-logolar__oge img:hover { filter: none; opacity: 1; transform: scale(1.06); }
section[data-ters] .cy-logolar--renksiz .cy-logolar__oge img { filter: grayscale(1) brightness(0) invert(1); opacity: .75; }

/* Kayan yazı */
.cy-kayan-yazi { padding-block: clamp(1rem, 2.6vw, 1.75rem); border-block: 1px solid var(--cy-border); overflow: hidden; }
.cy-kayan-yazi__serit { display: flex; align-items: center; gap: 0; margin: 0; padding: 0; list-style: none; white-space: nowrap; }
.cy-kayan-yazi.is-durgun .cy-kayan-yazi__serit { flex-wrap: wrap; justify-content: center; white-space: normal; padding-inline: 1rem; }
.cy-kayan-yazi__serit li { display: inline-flex; align-items: center; font-family: var(--cy-font-baslik, inherit); font-size: clamp(1.5rem, 4.5vw, 3rem); font-weight: 650; letter-spacing: -.02em; line-height: 1.1; color: var(--cy-text); }
.cy-kayan-yazi__serit li::after { content: "✦"; margin-inline: clamp(1rem, 3vw, 2.25rem); font-size: .5em; color: var(--cy-accent, var(--cy-brand-600)); }
/* Çift sıradakiler ince italik ve soluk. Kontur (text-stroke) değişken yazı tiplerinde harfin iç
 * çizgilerini de çiziyordu (Fraunces, Source Serif): yazı bulanık ve çift çizgili görünüyordu. */
.cy-kayan-yazi__serit li:nth-child(even) { font-style: italic; font-weight: 400; color: color-mix(in srgb, var(--cy-text, #0f172a) 52%, transparent); }
section[data-ters] .cy-kayan-yazi__serit li:nth-child(even) { color: rgba(255, 255, 255, .62); }
/* Durgun (hareketi azalt / Animasyon: Kapalı): tek satırda ortalı, küçük. */
.cy-kayan-yazi.is-durgun .cy-kayan-yazi__serit li { font-size: clamp(1.05rem, 2.4vw, 1.5rem); }
.cy-kayan-yazi.is-durgun .cy-kayan-yazi__serit li:last-child::after { display: none; }
section[data-ters].cy-kayan-yazi { border-color: transparent; }

/* --------------------------- 9. SERBEST -------------------------- */
.cy-serbest { max-width: 760px; margin-inline: auto; }
.cy-serbest h2 { margin: .25rem 0 1rem; font-size: clamp(1.6rem, 3.6vw, 2.4rem); line-height: 1.15; }
.cy-serbest__dugme { margin: 1.5rem 0 0; }

/* ------------------------ 10. MEDYA GALERİSİ --------------------- */
.cy-mgal { list-style: none; margin: 0; padding: 0; display: grid; gap: clamp(.5rem, 1.2vw, .9rem); }
.cy-mgal--izgara { grid-template-columns: repeat(auto-fill, minmax(min(46%, 240px), 1fr)); }
.cy-mgal--izgara .cy-mgal__bag { aspect-ratio: 1; }
.cy-mgal--duvar { display: block; columns: 2 160px; column-gap: clamp(.5rem, 1.2vw, .9rem); }
@media (min-width: 992px) { .cy-mgal--duvar { columns: 3; } }
.cy-mgal--duvar .cy-mgal__oge { break-inside: avoid; margin-bottom: clamp(.5rem, 1.2vw, .9rem); }
.cy-mgal--serit { display: flex; overflow-x: auto; scroll-snap-type: x mandatory; padding-bottom: .5rem; scrollbar-width: thin; }
.cy-mgal--serit .cy-mgal__oge { flex: 0 0 min(78%, 420px); scroll-snap-align: start; }
.cy-mgal--serit .cy-mgal__bag { aspect-ratio: 4 / 3; }
.cy-mgal__bag { position: relative; display: block; overflow: hidden; border-radius: var(--cy-radius, 12px); background: var(--cy-surface-soft); }
.cy-mgal__bag img, .cy-mgal__bag video { display: block; width: 100%; height: 100%; object-fit: cover; }
.cy-mgal--duvar .cy-mgal__bag img { height: auto; }
.cy-mgal__bag::after { content: ""; position: absolute; inset: 0; background: linear-gradient(transparent 60%, rgba(0, 0, 0, .35)); opacity: 0; transition: opacity .35s; }
.cy-mgal__bag:hover::after, .cy-mgal__bag:focus-visible::after { opacity: 1; }
.cy-mgal__oynat { position: absolute; left: .7rem; bottom: .7rem; z-index: 1; display: grid; place-items: center; width: 34px; height: 34px; border-radius: 50%; background: rgba(255, 255, 255, .92); color: #111; }
.cy-sec-gallery__bag { display: block; overflow: hidden; border-radius: inherit; }

/* ------------------------- 11. IŞIK KUTUSU ----------------------- */
.cy-isik { position: fixed; inset: 0; z-index: 2000; display: grid; place-items: center; padding: clamp(2.5rem, 6vw, 4rem) clamp(.5rem, 5vw, 5rem); background: rgba(6, 8, 12, .94); opacity: 0; visibility: hidden; transition: opacity .3s var(--cy-ease), visibility 0s .3s; }
.cy-isik.is-acik { opacity: 1; visibility: visible; transition: opacity .3s var(--cy-ease); }
.cy-isik__sahne { display: grid; place-items: center; width: 100%; height: 100%; }
.cy-isik__medya { max-width: 100%; max-height: 100%; object-fit: contain; border-radius: 6px; box-shadow: 0 30px 80px -30px #000; animation: cy-isik-gir .45s var(--cy-ease-out); }
@keyframes cy-isik-gir { from { opacity: 0; transform: scale(.96); } to { opacity: 1; transform: none; } }
.cy-isik__yazi { position: absolute; left: 50%; bottom: .9rem; max-width: min(80vw, 720px); margin: 0; transform: translateX(-50%); color: rgba(255, 255, 255, .85); font-size: .9rem; text-align: center; }
.cy-isik__sayac { position: absolute; top: 1.1rem; left: 1.2rem; color: rgba(255, 255, 255, .7); font-size: .85rem; font-variant-numeric: tabular-nums; }
.cy-isik__dugme { position: absolute; display: grid; place-items: center; width: 48px; height: 48px; border: 0; border-radius: 50%; background: rgba(255, 255, 255, .1); color: #fff; font-size: 1.9rem; line-height: 1; cursor: pointer; transition: background .2s, transform .2s; }
.cy-isik__dugme:hover, .cy-isik__dugme:focus-visible { background: rgba(255, 255, 255, .22); }
.cy-isik__kapat { top: .7rem; right: .8rem; }
.cy-isik__onceki { left: clamp(.3rem, 2vw, 1.5rem); top: 50%; transform: translateY(-50%); }
.cy-isik__sonraki { right: clamp(.3rem, 2vw, 1.5rem); top: 50%; transform: translateY(-50%); }
body.cy-isik-acik { overflow: hidden; }
@media (prefers-reduced-motion: reduce) { .cy-isik__medya { animation-name: cy-belir; } }

/* -------------------------- 12. YUKARI ÇIK ----------------------- */
.cy-yukari { position: fixed; right: clamp(.9rem, 2.5vw, 1.5rem); bottom: calc(5.5rem + env(safe-area-inset-bottom)); z-index: 1020; display: grid; place-items: center; width: 44px; height: 44px; border: 1px solid var(--cy-border); border-radius: 50%; background: var(--cy-surface, #fff); color: var(--cy-text); box-shadow: 0 10px 24px -12px rgba(15, 23, 42, .45); opacity: 0; transform: translateY(12px); pointer-events: none; transition: opacity .3s, transform .3s var(--cy-ease); }
.cy-yukari.is-gorunur { opacity: 1; transform: none; pointer-events: auto; }
.cy-yukari:hover { background: var(--cy-brand-600, #0b5cb5); color: #fff; border-color: transparent; }

/* ---------------------------- 13. SLIDER -------------------------- */
.cy-slider-bolum--kutulu { padding: clamp(.6rem, 2vw, 1.5rem) clamp(.6rem, 2vw, 1.5rem) 0; }
.cy-slider-bolum--kutulu .cy-slider { max-width: 1480px; margin-inline: auto; border-radius: var(--cy-radius-lg, 22px); }
.cy-slider__serit:focus-visible { outline: 3px solid #fff; outline-offset: -3px; }
.cy-slider__ok:focus-visible, .cy-slider__nokta:focus-visible, .cy-slider__durdur:focus-visible { outline: 3px solid #fff; outline-offset: 2px; }
.cy-slider { position: relative; overflow: hidden; background: #0b0d12; color: #fff; isolation: isolate; }
.cy-slider__serit { display: flex; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; }
.cy-slider__serit::-webkit-scrollbar { display: none; }
.cy-slider__slayt { position: relative; flex: 0 0 100%; scroll-snap-align: start; min-height: var(--cy-slider-boy, clamp(420px, 70vh, 720px)); display: grid; overflow: hidden; }
.cy-slider--kisa { --cy-slider-boy: clamp(320px, 50vh, 480px); }
.cy-slider--orta { --cy-slider-boy: clamp(420px, 70vh, 720px); }
.cy-slider--uzun { --cy-slider-boy: clamp(520px, 86vh, 900px); }
.cy-slider--tam { --cy-slider-boy: calc(100svh - var(--cy-nav-boy, 72px)); }
.cy-slider__medya { position: absolute; inset: 0; z-index: -2; overflow: hidden; }
.cy-slider__medya img, .cy-slider__medya video { width: 100%; height: 100%; object-fit: cover; display: block; }
.cy-slider__medya picture { display: contents; }
.cy-slider__karart { position: absolute; inset: 0; z-index: -1; background: linear-gradient(var(--cy-slider-yon, 100deg), rgba(5, 7, 12, calc(var(--cy-karart, .45) + .2)) 0%, rgba(5, 7, 12, var(--cy-karart, .45)) 45%, rgba(5, 7, 12, calc(var(--cy-karart, .45) * .35)) 100%); }
.cy-slider__slayt--orta { --cy-slider-yon: 0deg; }
.cy-slider__slayt--orta .cy-slider__karart { background: rgba(5, 7, 12, var(--cy-karart, .45)); }
.cy-slider__slayt--sag { --cy-slider-yon: 260deg; }
.cy-slider__icerik { align-self: center; width: 100%; padding-block: clamp(3rem, 8vw, 5.5rem) clamp(4rem, 9vw, 6rem); }
.cy-slider__kutu { max-width: 42rem; }
.cy-slider__slayt--orta .cy-slider__kutu { margin-inline: auto; text-align: center; }
.cy-slider__slayt--sag .cy-slider__kutu { margin-left: auto; text-align: right; }
.cy-slider__slayt--alt .cy-slider__icerik { align-self: end; }
.cy-slider__ust { display: inline-block; margin: 0 0 1rem; padding: .3rem .8rem; border-radius: 999px; background: rgba(255, 255, 255, .14); border: 1px solid rgba(255, 255, 255, .25); font-size: .78rem; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; -webkit-backdrop-filter: blur(6px); backdrop-filter: blur(6px); }
.cy-slider__baslik { margin: 0 0 1rem; font-family: var(--cy-font-baslik, inherit); font-size: clamp(2rem, 5.6vw, 4.2rem); font-weight: 700; line-height: 1.05; letter-spacing: -.025em; color: #fff; text-wrap: balance; text-shadow: 0 2px 30px rgba(0, 0, 0, .25); }
.cy-slider__metin { margin: 0 0 1.75rem; max-width: 36rem; font-size: clamp(1rem, 1.9vw, 1.2rem); line-height: 1.6; color: rgba(255, 255, 255, .88); }
.cy-slider__slayt--orta .cy-slider__metin { margin-inline: auto; }
.cy-slider__slayt--sag .cy-slider__metin { margin-left: auto; }
.cy-slider__dugmeler { display: flex; flex-wrap: wrap; gap: .7rem; }
.cy-slider__slayt--orta .cy-slider__dugmeler { justify-content: center; }
.cy-slider__slayt--sag .cy-slider__dugmeler { justify-content: flex-end; }
.cy-slider .cy-btn--cam { background: rgba(255, 255, 255, .14); border: 1px solid rgba(255, 255, 255, .5); color: #fff; -webkit-backdrop-filter: blur(6px); backdrop-filter: blur(6px); }
.cy-slider .cy-btn--cam:hover { background: #fff; color: #0f172a; }
.cy-slider__slayt--koyu-yazi { color: #0f172a; }
.cy-slider__slayt--koyu-yazi :is(.cy-slider__baslik, .cy-slider__metin) { color: #0f172a; text-shadow: none; }
.cy-slider__slayt--koyu-yazi .cy-slider__karart { background: linear-gradient(100deg, rgba(255, 255, 255, calc(var(--cy-karart, .45) + .2)), rgba(255, 255, 255, calc(var(--cy-karart, .45) * .3))); }
.cy-slider__slayt--koyu-yazi .cy-slider__ust { background: rgba(15, 23, 42, .08); border-color: rgba(15, 23, 42, .15); color: #0f172a; }

/* JavaScript ile: soldurma ve yakınlaşma slaytları üst üste koyar. */
.cy-slider.is-js:is(.cy-slider--soldur, .cy-slider--yakinlas, .cy-slider--perde) .cy-slider__serit { display: grid; overflow: hidden; }
.cy-slider.is-js:is(.cy-slider--soldur, .cy-slider--yakinlas, .cy-slider--perde) .cy-slider__slayt { grid-area: 1 / 1; opacity: 0; visibility: hidden; transition: opacity 1s var(--cy-ease), visibility 0s 1s; }
.cy-slider.is-js:is(.cy-slider--soldur, .cy-slider--yakinlas, .cy-slider--perde) .cy-slider__slayt.is-aktif { opacity: 1; visibility: visible; transition: opacity 1s var(--cy-ease); z-index: 1; }
.cy-slider.is-js.cy-slider--yakinlas .cy-slider__slayt .cy-slider__medya { transform: scale(1.12); transition: transform 1.6s var(--cy-ease-out); }
.cy-slider.is-js.cy-slider--yakinlas .cy-slider__slayt.is-aktif .cy-slider__medya { transform: scale(1); }
.cy-slider.is-js.cy-slider--perde .cy-slider__slayt { opacity: 1; clip-path: inset(0 100% 0 0); transition: clip-path 1.1s var(--cy-ease-out), visibility 0s 1.1s; }
.cy-slider.is-js.cy-slider--perde .cy-slider__slayt.is-aktif { clip-path: inset(0 0 0 0); transition: clip-path 1.1s var(--cy-ease-out); z-index: 2; }
.cy-slider.is-js.cy-slider--perde .cy-slider__slayt.is-onceki { visibility: visible; z-index: 1; clip-path: inset(0 0 0 0); }

/* Ken Burns: aktif slaytın görseli yavaşça yakınlaşır. */
.cy-slider[data-kenburns="1"].is-js .cy-slider__slayt.is-aktif .cy-slider__medya img { animation: cy-kenburns var(--cy-kb-sure, 14s) ease-out both; }

/* Yazı girişi: aktif slaytın yazıları sırayla gelir. */
.cy-slider.is-js .cy-slider__kutu > * { opacity: 0; transform: translate3d(0, 26px, 0); transition: opacity .8s var(--cy-ease-out), transform .9s var(--cy-ease-out), filter .9s; }
.cy-slider.is-js .cy-slider__slayt[data-yazi="soldan"] .cy-slider__kutu > * { transform: translate3d(-40px, 0, 0); }
.cy-slider.is-js .cy-slider__slayt[data-yazi="yakinlas"] .cy-slider__kutu > * { transform: scale(.92); }
.cy-slider.is-js .cy-slider__slayt[data-yazi="bulanik"] .cy-slider__kutu > * { transform: none; filter: blur(12px); }
.cy-slider.is-js .cy-slider__slayt[data-yazi="yok"] .cy-slider__kutu > * { transition: none; }
.cy-slider.is-js .cy-slider__slayt.is-aktif .cy-slider__kutu > * { opacity: 1; transform: none; filter: none; }
.cy-slider.is-js .cy-slider__slayt.is-aktif .cy-slider__kutu > :nth-child(2) { transition-delay: .15s; }
.cy-slider.is-js .cy-slider__slayt.is-aktif .cy-slider__kutu > :nth-child(3) { transition-delay: .3s; }
.cy-slider.is-js .cy-slider__slayt.is-aktif .cy-slider__kutu > :nth-child(4) { transition-delay: .45s; }
.cy-slider.is-js .cy-slider__slayt.is-aktif .cy-slider__kutu > :first-child { transition-delay: .05s; }

/* Denetimler */
.cy-slider__ok { position: absolute; top: 50%; z-index: 3; display: grid; place-items: center; width: 52px; height: 52px; margin-top: -26px; border: 1px solid rgba(255, 255, 255, .35); border-radius: 50%; background: rgba(0, 0, 0, .25); color: #fff; font-size: 1.8rem; line-height: 1; -webkit-backdrop-filter: blur(6px); backdrop-filter: blur(6px); cursor: pointer; opacity: .85; transition: background .25s, opacity .25s, transform .25s var(--cy-ease); }
.cy-slider__ok:hover, .cy-slider__ok:focus-visible { background: #fff; color: #0f172a; opacity: 1; }
.cy-slider__ok--geri { left: clamp(.5rem, 2vw, 1.5rem); }
.cy-slider__ok--ileri { right: clamp(.5rem, 2vw, 1.5rem); }
.cy-slider__alt { position: absolute; left: 0; right: 0; bottom: clamp(1rem, 3vw, 1.75rem); z-index: 3; display: flex; justify-content: center; align-items: center; gap: .8rem; pointer-events: none; }
.cy-slider__alt > * { pointer-events: auto; }
.cy-slider__noktalar { display: flex; gap: .5rem; }
.cy-slider__nokta { width: 10px; height: 10px; padding: 0; border: 0; border-radius: 999px; background: rgba(255, 255, 255, .45); cursor: pointer; transition: width .4s var(--cy-ease), background .3s; }
.cy-slider__nokta[aria-current="true"] { width: 30px; background: #fff; }
.cy-slider__durdur { display: grid; place-items: center; width: 30px; height: 30px; padding: 0; border: 1px solid rgba(255, 255, 255, .4); border-radius: 50%; background: rgba(0, 0, 0, .25); color: #fff; cursor: pointer; }
.cy-slider__durdur .cy-icon { width: 12px; height: 12px; }
.cy-slider__durdur .cy-slider__oynat-ikon { display: none; }
.cy-slider.is-durdu .cy-slider__durdur .cy-slider__oynat-ikon { display: block; }
.cy-slider.is-durdu .cy-slider__durdur .cy-slider__dur-ikon { display: none; }
.cy-slider__cubuk { position: absolute; left: 0; right: 0; bottom: 0; z-index: 3; height: 3px; background: rgba(255, 255, 255, .18); }
.cy-slider__cubuk span { display: block; height: 100%; background: var(--cy-accent, #fff); transform: scaleX(0); transform-origin: left; }
.cy-slider__sayac { font-size: .8rem; font-variant-numeric: tabular-nums; color: rgba(255, 255, 255, .8); }
.cy-slider--oksuz .cy-slider__ok, .cy-slider--noktasiz .cy-slider__noktalar { display: none !important; }
@media (max-width: 767.98px) {
    .cy-slider__ok { display: none !important; }
    .cy-slider__icerik { padding-block: 3rem 4.5rem; }
    .cy-slider__slayt--sag .cy-slider__kutu { text-align: left; margin-left: 0; }
    .cy-slider__slayt--sag .cy-slider__dugmeler { justify-content: flex-start; }
    .cy-slider__karart { background: linear-gradient(0deg, rgba(5, 7, 12, calc(var(--cy-karart, .45) + .25)) 0%, rgba(5, 7, 12, var(--cy-karart, .45)) 60%, rgba(5, 7, 12, calc(var(--cy-karart, .45) * .6)) 100%); }
    .cy-slider__slayt--alt .cy-slider__icerik, .cy-slider__icerik { align-self: end; }
}
/* Hareketi azalt: yazılar ve slaytlar yalnız solarak gelir; Ken Burns ve yakınlaşma yok. */
@media (prefers-reduced-motion: reduce) {
    .cy-slider .cy-slider__kutu > * { transform: none !important; filter: none !important; }
    .cy-slider .cy-slider__medya, .cy-slider .cy-slider__medya img { transform: none !important; animation: none !important; }
}

/* ---------------------- 14. SAYFA ZEMİN DOKUSU --------------------- */
html[data-cy-doku="noktali"] body.cy-site { background-image: radial-gradient(color-mix(in srgb, var(--cy-text, #0f172a) 9%, transparent) 1px, transparent 1.2px); background-size: 22px 22px; background-attachment: fixed; }
html[data-cy-doku="izgara"] body.cy-site { background-image: linear-gradient(color-mix(in srgb, var(--cy-text, #0f172a) 5%, transparent) 1px, transparent 1px), linear-gradient(90deg, color-mix(in srgb, var(--cy-text, #0f172a) 5%, transparent) 1px, transparent 1px); background-size: 48px 48px; background-attachment: fixed; }

/* ------------------------ 15. TASARIM CİLASI ----------------------- */
/* Başlıklar dengeli kırılır (tek kelime alt satırda kalmasın), metin son satırda yetim bırakmaz. */
:is(.cy-home-head h2, .cy-sec-split__text h2, .cy-serbest h2, .cy-home-cta h2, .cy-slider__baslik) { text-wrap: balance; }
:is(.cy-home-head p, .cy-prose p, .cy-slider__metin) { text-wrap: pretty; }
/* Düğmedeki ok, üstüne gelince yönünü gösterir. */
.cy-site .cy-btn .cy-icon { transition: transform .25s var(--cy-ease); }
html:not([data-cy-hareket="yok"]) .cy-site .cy-btn:hover .cy-icon:last-child { transform: translateX(3px); }

/* Galeri: 5 ve daha çok görselde dergi düzeni (ilki büyük, satırlar boşluksuz kapanır).
 * Kalan görsel sayısına göre son satır: 1 → panorama, 2 → iki geniş, 3 → biri geniş. */
@media (min-width: 992px) {
    .cy-sec-gallery:has(> li:nth-child(5)) { grid-template-columns: repeat(4, minmax(0, 1fr)); }
    .cy-sec-gallery:has(> li:nth-child(5)) img { aspect-ratio: 4 / 3; height: 100%; }
    .cy-sec-gallery:has(> li:nth-child(5)) > li:first-child { grid-column: span 2; grid-row: span 2; }
    .cy-sec-gallery:has(> li:nth-child(5)) > li:first-child :is(figure, .cy-sec-gallery__bag) { height: 100%; }
    .cy-sec-gallery:has(> li:nth-child(5)) > li:nth-child(4n+2):last-child { grid-column: span 4; }
    .cy-sec-gallery:has(> li:nth-child(5)) > li:nth-child(4n+2):last-child img { aspect-ratio: 21 / 8; }
    .cy-sec-gallery:has(> li:nth-child(5)):has(> li:nth-child(4n+3):last-child) > li:nth-last-child(-n+2) { grid-column: span 2; }
    .cy-sec-gallery:has(> li:nth-child(5)):has(> li:nth-child(4n+3):last-child) > li:nth-last-child(-n+2) img { aspect-ratio: 8 / 3; }
    .cy-sec-gallery:has(> li:nth-child(5)):has(> li:nth-child(4n+4):last-child) > li:nth-last-child(3) { grid-column: span 2; }
    .cy-sec-gallery:has(> li:nth-child(5)):has(> li:nth-child(4n+4):last-child) > li:nth-last-child(3) img { aspect-ratio: 8 / 3; }
}
.cy-sec-gallery li > figure { height: 100%; }
/* Açıklama üstüne gelince yükselir (dokunmatikte hep görünür). */
@media (hover: hover) {
    html:not([data-cy-hareket="yok"]) .cy-sec-gallery figcaption { transform: translateY(35%); opacity: .0; transition: transform .45s var(--cy-ease-out), opacity .35s; }
    html:not([data-cy-hareket="yok"]) .cy-sec-gallery figure:hover figcaption, html:not([data-cy-hareket="yok"]) .cy-sec-gallery figure:focus-within figcaption { transform: none; opacity: 1; }
}

/* Slider'dan sonra gelen karşılama ikinci bir kahraman değil, tanıtım paragrafıdır. */
.cy-slider-bolum + section :is(.iz-hero__title, .nefes-hero__title, .sade-hero__title, .sofra-hero__title, .cy-home-hero__title) { font-size: clamp(1.9rem, 4.4vw, 3.2rem); }
.cy-slider-bolum + section :is(.iz-hero__ic, .nefes-hero__ic, .sade-hero__inner) { padding-block: clamp(2.5rem, 6vw, 4.5rem); }

/* Başlıklar dengeli kırılır: ortalı başlıkta son satıra tek kelime düşmez ("Merhaba, ben Kaan / Er").
 * Paragraflarda son satır tek kelime kalmaz. Desteklemeyen tarayıcıda olağan kırılma. */
.cy-site :is(h1, h2, h3, .cy-home-hero__title) { text-wrap: balance; }
.cy-site main p { text-wrap: pretty; }

/* Merkezi panelin canlı önizlemesi (Siteler → kart, ?cy_cerceve=1): ziyaretçiye özel üst üste binenler gizli. */
html[data-cy-cerceve] :is(.cy-demo-strip, .cy-demo-mini, .cy-whatsapp-fab, .cy-yukari, .cy-sahip-cubugu) { display: none !important; }
