/* tema: sistem + elle seçim */
/* Aris Doğa Güzellik Merkezi, ana demo site
   Palet salonun kendi kampanya afişlerinden ve logosundan: sıcak siyah zemin, şampanya altını tek vurgu.
   Tema: iPhone ayarını izler (aydınlık beyaz + altın, karanlık siyah + altın), üst bardaki düğmeyle değişir.
   Köşe sistemi: kartlar 22px, butonlar ve çipler tam hap, giriş alanları 14px. */

:root {
  --zemin: #fbfaf8;
  --yuzey: #ffffff;
  --yuzey-2: #f2eee8;
  --yuzey-3: #e8e2d9;
  --murekkep: #1d1b18;
  --metin: #3d3832;
  --soluk: #6f675d;
  --cizgi: rgb(29 27 24 / .1);
  --marka: #86663a;
  --marka-acik: #f4ece0;
  --vurgu: #86663a;
  --vurgu-koyu: #6f5430;
  --vurgu-metin: #ffffff;
  --altin-cizgi: rgb(134 102 58 / .28);
  --golge: 0 30px 70px -36px rgb(80 60 30 / .28);
  --r-kart: 22px;
  --r-alan: 14px;
  --kap: min(1320px, 100% - 2 * clamp(16px, 4vw, 56px));
  --f-baslik: "Jost", system-ui, sans-serif;
  --f-metin: "DM Sans", system-ui, sans-serif;
  --yay: cubic-bezier(.16, 1, .3, 1);
  --konfeti: #86663a, #d6b685, #f4ece0, #1d1b18, #ffffff;
  color-scheme: light dark;
  --zemin-rgb: 251 250 248;
  --yuzey-rgb: 255 255 255;
  --marka-rgb: 134 102 58;
  --marka-acik-rgb: 244 236 224;
  --alt-zemin: #f4f0ea;
  --kmp-1: #fbf6ee; --kmp-2: #f1e8da;
  --hz-1: #f6eee2; --hz-2: #ffffff;
  --yesil: #1f8a55; --yesil-2: #2f9e6a; --hata: #c0392b;
}
@media (prefers-color-scheme: dark) {
  :root:not([data-tema="acik"]) {
  --zemin: #121011;
  --yuzey: #1b1819;
  --yuzey-2: #252022;
  --yuzey-3: #2f2a2b;
  --murekkep: #f4eee7;
  --metin: #d9d0c7;
  --soluk: #a3988e;
  --cizgi: rgb(244 238 231 / .12);
  --marka: #d6b685;
  --marka-acik: #2b2520;
  --vurgu: #d6b685;
  --vurgu-koyu: #e8cfa4;
  --vurgu-metin: #17120d;
  --altin-cizgi: rgb(var(--marka-rgb) / .38);
  --golge: 0 30px 70px -30px rgb(0 0 0 / .75);
  --konfeti: #d6b685, #f4eee7, #e9c7c4, #a37b4f, #fff6e8;
  --zemin-rgb: 18 16 17;
  --yuzey-rgb: 27 24 25;
  --marka-rgb: 214 182 133;
  --marka-acik-rgb: 43 37 32;
  --alt-zemin: #0e0c0d;
  --kmp-1: #241e1c; --kmp-2: #141112;
  --hz-1: #2c251f; --hz-2: #1b1819;
  --yesil: #7fd7a6; --yesil-2: #64c48f; --hata: #f08f84;
}
}
:root[data-tema="koyu"] {
  --zemin: #121011;
  --yuzey: #1b1819;
  --yuzey-2: #252022;
  --yuzey-3: #2f2a2b;
  --murekkep: #f4eee7;
  --metin: #d9d0c7;
  --soluk: #a3988e;
  --cizgi: rgb(244 238 231 / .12);
  --marka: #d6b685;
  --marka-acik: #2b2520;
  --vurgu: #d6b685;
  --vurgu-koyu: #e8cfa4;
  --vurgu-metin: #17120d;
  --altin-cizgi: rgb(var(--marka-rgb) / .38);
  --golge: 0 30px 70px -30px rgb(0 0 0 / .75);
  --konfeti: #d6b685, #f4eee7, #e9c7c4, #a37b4f, #fff6e8;
  --zemin-rgb: 18 16 17;
  --yuzey-rgb: 27 24 25;
  --marka-rgb: 214 182 133;
  --marka-acik-rgb: 43 37 32;
  --alt-zemin: #0e0c0d;
  --kmp-1: #241e1c; --kmp-2: #141112;
  --hz-1: #2c251f; --hz-2: #1b1819;
  --yesil: #7fd7a6; --yesil-2: #64c48f; --hata: #f08f84;
}


*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; background: var(--zemin); }
html.lenis, html.lenis body { height: auto; }
.lenis.lenis-smooth { scroll-behavior: auto !important; }
body { margin: 0; background: var(--zemin); color: var(--metin); font: 400 17px/1.65 var(--f-metin); -webkit-font-smoothing: antialiased; overflow-x: hidden; }
img, video { display: block; max-width: 100%; height: auto; }
a { color: inherit; text-decoration: none; -webkit-tap-highlight-color: transparent; }
button { font: inherit; color: inherit; cursor: pointer; border: 0; background: none; -webkit-tap-highlight-color: transparent; }
h1, h2, h3, h4 { font-family: var(--f-baslik); color: var(--murekkep); margin: 0; line-height: 1.08; letter-spacing: -.02em; font-weight: 400; }
p { margin: 0; }
em { font-style: italic; }
::selection { background: var(--marka); color: var(--vurgu-metin); }
:focus-visible { outline: 2px solid var(--marka); outline-offset: 3px; border-radius: 8px; }
.kap { width: var(--kap); margin-inline: auto; }
.ph { font-size: 1.15em; line-height: 0; vertical-align: -.15em; }

/* tanecik: sabit, tıklanmaz katman (kayan kaba değil) */
body::before { content: ""; position: fixed; inset: 0; z-index: 90; pointer-events: none; opacity: .05; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E"); }

/* ---------- butonlar ---------- */
.btn {
  --bg: var(--vurgu); --fg: var(--vurgu-metin);
  display: inline-flex; align-items: center; justify-content: center; gap: .55rem; white-space: nowrap; min-height: 50px;
  padding: .9rem 1.5rem; border-radius: 999px; background: var(--bg); color: var(--fg);
  font: 600 .98rem/1 var(--f-metin); letter-spacing: .01em;
  transition: transform .45s var(--yay), background-color .3s, box-shadow .45s var(--yay);
  box-shadow: 0 14px 34px -16px rgb(var(--marka-rgb) / .55);
}
.btn:hover { --bg: var(--vurgu-koyu); }
.btn:active { transform: scale(.97); }
.btn--hayalet { --bg: transparent; --fg: var(--murekkep); box-shadow: inset 0 0 0 1px var(--altin-cizgi); }
.btn--hayalet:hover { --bg: rgb(var(--marka-rgb) / .1); }
.btn--kucuk { min-height: 42px; padding: .65rem 1.1rem; font-size: .9rem; }
.link-ok { display: inline-flex; align-items: center; gap: .4rem; font-weight: 600; color: var(--marka); min-height: 44px; }
.link-ok .ph { transition: transform .4s var(--yay); }
.link-ok:hover .ph { transform: translateX(4px); }

/* ---------- üst menü ---------- */
.ust { position: fixed; inset: 0 0 auto; z-index: 40; background: linear-gradient(var(--zemin) 70%, rgb(var(--zemin-rgb) / 0)); padding-block: 12px; padding-top: max(12px, env(safe-area-inset-top)); transition: padding .5s var(--yay), background-color .4s, box-shadow .4s; }
.ust.kucuk { padding-block: 6px; padding-top: max(6px, env(safe-area-inset-top)); background: var(--zemin); box-shadow: 0 1px 0 var(--cizgi); }
.ust::before { content: ""; position: absolute; left: 0; right: 0; bottom: 100%; height: 120px; background: var(--zemin); } /* iOS Safari: durum çubuğunun arkasında içerik görünmesin */
.ust__ic { display: flex; align-items: center; justify-content: space-between; gap: 24px; height: 58px; }
.logo { display: block; flex: none; }
.logo img { height: 40px; width: auto; }
.menu { display: flex; align-items: center; gap: 2px; }
.menu a { padding: .55rem .95rem; border-radius: 999px; font-weight: 500; font-size: .95rem; color: var(--metin); transition: background-color .3s, color .3s; }
.menu a:hover { color: var(--murekkep); background: var(--yuzey-2); }
.menu a[aria-current="page"] { color: var(--marka); }
.ust__sag { display: flex; align-items: center; gap: 8px; }
.ikon-btn { width: 46px; height: 46px; display: grid; place-items: center; border-radius: 999px; color: var(--murekkep); transition: background-color .3s; font-size: 1.3rem; }
.ikon-btn:hover { background: var(--yuzey-2); }
.menu-ac { display: none; box-shadow: inset 0 0 0 1px var(--cizgi); }

/* mobil tam ekran menü */
.mobil-menu {
  position: fixed; inset: 0; z-index: 45; background: var(--zemin); color: var(--murekkep);
  display: flex; flex-direction: column; padding: max(16px, env(safe-area-inset-top)) 22px max(24px, env(safe-area-inset-bottom));
  clip-path: inset(0 0 100% 0); visibility: hidden; transition: clip-path .7s var(--yay), visibility 0s .7s;
}
.mobil-menu.acik { clip-path: inset(0 0 0 0); visibility: visible; transition: clip-path .8s var(--yay), visibility 0s; }
.mobil-menu__ust { display: flex; align-items: center; justify-content: space-between; height: 58px; }
.mobil-menu__ust img { height: 38px; width: auto; }
.mobil-menu .kapat { width: 46px; height: 46px; display: grid; place-items: center; border-radius: 999px; font-size: 1.4rem; box-shadow: inset 0 0 0 1px var(--cizgi); }
.mobil-menu nav { margin-top: 4vh; display: grid; }
.mobil-menu nav a { display: flex; align-items: center; justify-content: space-between; padding: 14px 2px; border-bottom: 1px solid var(--cizgi); font: 300 clamp(1.9rem, 8.4vw, 2.6rem)/1.15 var(--f-baslik); letter-spacing: -.02em; opacity: 0; transform: translateY(18px); transition: opacity .5s, transform .6s var(--yay); }
.mobil-menu nav a .ph { font-size: 1.2rem; color: var(--marka); }
.mobil-menu.acik nav a { opacity: 1; transform: none; }
.mobil-menu.acik nav a:nth-child(2) { transition-delay: .05s; } .mobil-menu.acik nav a:nth-child(3) { transition-delay: .1s; }
.mobil-menu.acik nav a:nth-child(4) { transition-delay: .15s; } .mobil-menu.acik nav a:nth-child(5) { transition-delay: .2s; }
.mobil-menu__alt { margin-top: auto; display: grid; gap: 12px; font-size: .95rem; color: var(--soluk); }
.mobil-menu__alt .durum { margin-top: 0; justify-self: start; }
.mobil-menu__panel { display: inline-flex; align-items: center; gap: 8px; color: var(--marka); font-weight: 600; min-height: 40px; }
.mobil-menu__btn { display: grid; grid-template-columns: 1fr 1.6fr; gap: 10px; }
@media (max-width: 960px) {
  .menu, .ust__sag .ig-ust { display: none; }
  .menu-ac { display: grid; }
  .ust__randevu { min-height: 42px; }
}
@media (max-width: 400px) { .ust__randevu { display: none; } .logo img { height: 36px; } }

/* ---------- intro ---------- */
.intro { position: fixed; inset: 0; z-index: 60; background: var(--zemin); display: grid; place-items: center; pointer-events: none; }
.intro__ad { display: flex; overflow: hidden; padding: 10px; }
.intro__ad span { display: inline-block; transform: translateY(110%); }
.intro__ad img { width: min(64vw, 380px); height: auto; }
.intro.bitti { display: none; }
/* sayfa geçişi */
.gecis { position: fixed; inset: 0; z-index: 55; background: var(--yuzey); transform: scaleY(0); transform-origin: bottom; pointer-events: none; box-shadow: inset 0 -1px 0 var(--altin-cizgi); }

/* ---------- durum (şu an açık) ---------- */
.durum { display: inline-flex; align-items: center; gap: 8px; margin-top: 18px; padding: .45rem .95rem; border-radius: 999px; font-weight: 600; font-size: .88rem; background: var(--yuzey-2); color: var(--soluk); }
.durum.acik { background: rgb(76 191 128 / .12); color: var(--yesil); }
.durum.acik .ph { animation: nabiz 2.4s ease-in-out infinite; }
@keyframes nabiz { 50% { opacity: .45; } }

/* ---------- hero ---------- */
.hero { position: relative; min-height: 100dvh; display: grid; align-items: center; padding: 104px 0 56px; overflow: hidden; isolation: isolate; }
.hero::before { content: ""; position: absolute; z-index: -1; width: 70vw; height: 70vw; right: -18vw; top: -22vw; border-radius: 50%; background: radial-gradient(circle, rgb(var(--marka-rgb) / .16), transparent 62%); }
.hero__ic { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, .95fr); gap: clamp(28px, 5vw, 80px); align-items: center; }
.hero__durum { margin: 0 0 22px; }
.hero h1 { font-size: clamp(2.7rem, 6.4vw, 6.1rem); font-weight: 300; line-height: 1.02; letter-spacing: -.035em; }
.hero h1 .satir { display: block; overflow: hidden; padding: .16em 0 .2em; margin: -.16em 0 -.2em; }
.hero h1 .satir > span { display: inline-block; }
.hero h1 em { color: var(--marka); font-weight: 300; }
.hero__alt { margin-top: 22px; max-width: 36ch; font-size: clamp(1.05rem, 1.3vw, 1.18rem); color: var(--metin); }
.hero__cta { margin-top: 30px; display: flex; flex-wrap: wrap; gap: 12px; }
.yelpaze { position: relative; height: min(72vh, 660px); }
.yelpaze figure { position: absolute; margin: 0; width: 54%; aspect-ratio: 4/5; border-radius: var(--r-kart); overflow: hidden; box-shadow: var(--golge); background: var(--yuzey-2); outline: 1px solid var(--altin-cizgi); outline-offset: -1px; }
.yelpaze figure img { width: 100%; height: 100%; object-fit: cover; }
.yelpaze .k1 { left: 0; top: 18%; rotate: -8deg; }
.yelpaze .k2 { left: 23%; top: 2%; rotate: 1.5deg; z-index: 2; width: 58%; }
.yelpaze .k3 { right: 0; top: 24%; rotate: 9deg; }
.puan-rozet { position: absolute; z-index: 3; left: 6%; bottom: 2%; display: flex; align-items: center; gap: 12px; padding: 10px 18px 10px 10px; border-radius: 999px; background: rgb(var(--yuzey-rgb) / .86); backdrop-filter: blur(14px); -webkit-backdrop-filter: blur(14px); box-shadow: var(--golge), inset 0 0 0 1px var(--altin-cizgi); color: var(--murekkep); }
.puan-rozet__ikon { width: 44px; height: 44px; border-radius: 999px; display: grid; place-items: center; background: var(--marka); color: var(--vurgu-metin); font-size: 1.3rem; }
.puan-rozet strong { display: block; font-size: .95rem; font-weight: 600; }
.puan-rozet small { display: block; color: var(--soluk); font-size: .8rem; line-height: 1.3; }
@media (max-width: 860px) {
  .hero { padding-top: 92px; min-height: auto; }
  .hero__ic { grid-template-columns: minmax(0, 1fr); }
  .hero__durum { margin-bottom: 16px; }
  .hero__cta .btn { flex: 1 1 auto; }
  .yelpaze { height: 118vw; max-height: 520px; margin-top: 10px; }
  .yelpaze figure { width: 56%; }
  .yelpaze .k2 { width: 60%; left: 20%; }
}

/* ---------- bölüm genel ---------- */
.bolum { padding-block: clamp(72px, 10vw, 140px); }
@media (max-width: 760px) { .bolum { padding-block: 60px; } }
.bolum__baslik { font-size: clamp(2.2rem, 4.6vw, 4rem); font-weight: 300; max-width: 18ch; letter-spacing: -.03em; }
.bolum__metin { margin-top: 16px; max-width: 54ch; color: var(--soluk); font-size: 1.06rem; }

/* ---------- hızlı hizmet kartları (fotoğraflı, yatay kaydırmalı) ---------- */
.hizli { padding-top: 8px; }
.hizli__bas { display: flex; align-items: baseline; justify-content: space-between; gap: 16px; }
.hizli__bas h2 { font-size: clamp(1.55rem, 3vw, 2.4rem); font-weight: 300; }
.hizli__bas .link-ok { flex: none; }
.hizli__serit { margin-top: 18px; display: flex; gap: 12px; overflow-x: auto; scroll-snap-type: x mandatory; padding: 2px max(calc((100vw - 1320px) / 2), clamp(16px, 4vw, 56px)) 12px; scroll-padding-inline: clamp(16px, 4vw, 56px); scrollbar-width: none; -webkit-overflow-scrolling: touch; }
.hizli__serit::-webkit-scrollbar { display: none; }
.hizli__oge { flex: 0 0 auto; width: 150px; scroll-snap-align: start; display: grid; gap: 4px; transition: transform .45s var(--yay); }
.hizli__foto { display: block; aspect-ratio: 4/5; border-radius: 18px; overflow: hidden; background: var(--yuzey-2); box-shadow: inset 0 0 0 1px var(--cizgi); margin-bottom: 8px; }
.hizli__foto img { width: 100%; height: 100%; object-fit: cover; transition: transform .9s var(--yay); }
.hizli__oge b { font-weight: 600; font-size: .95rem; color: var(--murekkep); line-height: 1.25; }
.hizli__oge small { display: flex; gap: 8px; color: var(--soluk); font-size: .82rem; }
.hizli__oge small span:last-child { color: var(--marka); font-weight: 600; }
.hizli__oge:hover .hizli__foto img { transform: scale(1.06); }
.hizli__oge:active { transform: scale(.97); }
@media (min-width: 861px) { .hizli__oge { width: 200px; } }

/* ---------- katalog (imleç görselli liste) ---------- */
.katalog__liste { list-style: none; margin: 44px 0 0; padding: 0; border-top: 1px solid var(--cizgi); }
.katalog__liste a { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, 1.4fr) auto 40px; align-items: center; gap: 24px; padding: 26px 8px; border-bottom: 1px solid var(--cizgi); transition: background-color .35s, padding .5s var(--yay); }
.katalog__kucuk { display: none; }
.katalog__ad { font: 300 clamp(1.7rem, 3.2vw, 2.7rem)/1.1 var(--f-baslik); color: var(--murekkep); letter-spacing: -.02em; transition: color .3s, transform .5s var(--yay); }
.katalog__not { color: var(--soluk); font-size: .98rem; }
.katalog__fiyat { color: var(--murekkep); font-weight: 600; white-space: nowrap; }
.katalog__liste a > .ph { justify-self: end; font-size: 1.4rem; color: var(--marka); transition: transform .5s var(--yay); }
.katalog__liste a:hover { background: linear-gradient(90deg, rgb(var(--marka-rgb) / .07), transparent 70%); padding-left: 20px; }
.katalog__liste a:hover .katalog__ad { color: var(--marka); }
.katalog__liste a:hover > .ph { transform: rotate(45deg); }
.katalog__imlec { position: fixed; left: 0; top: 0; z-index: 30; margin: 0; width: 220px; aspect-ratio: 4/5; border-radius: 18px; overflow: hidden; pointer-events: none; opacity: 0; scale: .85; transition: opacity .35s, scale .5s var(--yay); box-shadow: var(--golge); }
.katalog__imlec img { width: 100%; height: 100%; object-fit: cover; }
.katalog__imlec.gorunur { opacity: 1; scale: 1; }
@media (max-width: 960px) {
  .katalog__liste a { grid-template-columns: 64px minmax(0, 1fr) auto; grid-template-areas: "g a o" "g n n"; gap: 2px 16px; padding: 16px 2px; }
  .katalog__kucuk { display: block; grid-area: g; width: 64px; height: 80px; object-fit: cover; border-radius: 14px; }
  .katalog__ad { grid-area: a; font-size: 1.45rem; }
  .katalog__not { grid-area: n; font-size: .88rem; line-height: 1.45; }
  .katalog__fiyat { display: none; }
  .katalog__liste a > .ph { grid-area: o; }
  .katalog__liste a:hover { padding-left: 2px; }
  .katalog__imlec { display: none; }
}

/* ---------- önce / sonra ---------- */
.karsilastir__ic { display: grid; grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr); gap: clamp(28px, 5vw, 72px); align-items: center; }
.karsilastir__secim { margin: 28px 0 18px; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
.karsilastir__secim button { position: relative; display: grid; gap: 8px; text-align: left; padding: 8px 8px 12px; border-radius: 18px; background: var(--yuzey); box-shadow: inset 0 0 0 1px var(--cizgi); transition: box-shadow .3s, background-color .3s; }
.karsilastir__secim img { width: 100%; aspect-ratio: 2/1; object-fit: cover; border-radius: 12px; }
.karsilastir__secim span { font-size: .9rem; font-weight: 600; color: var(--metin); padding-inline: 4px; }
.karsilastir__secim button[aria-selected="true"] { box-shadow: inset 0 0 0 1.5px var(--marka); background: var(--marka-acik); }
.karsilastir__secim button[aria-selected="true"] span { color: var(--marka); }
.ks { --konum: 50%; position: relative; aspect-ratio: 2/1; border-radius: var(--r-kart); overflow: hidden; background: var(--yuzey-2); touch-action: pan-y; user-select: none; -webkit-user-select: none; box-shadow: var(--golge), inset 0 0 0 1px var(--altin-cizgi); cursor: ew-resize; }
.ks img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; pointer-events: none; }
.ks__once { position: absolute; inset: 0; clip-path: inset(0 calc(100% - var(--konum)) 0 0); }
.ks::after { content: ""; position: absolute; top: 0; bottom: 0; left: var(--konum); width: 2px; translate: -1px 0; background: var(--marka); box-shadow: 0 0 18px rgb(0 0 0 / .5); }
.ks__tutamak { position: absolute; z-index: 2; top: 50%; left: var(--konum); translate: -50% -50%; width: 52px; height: 52px; border-radius: 999px; display: grid; place-items: center; background: var(--marka); color: var(--vurgu-metin); font-size: 1.2rem; box-shadow: 0 10px 30px rgb(0 0 0 / .45); pointer-events: none; }
.ks__etiket { position: absolute; z-index: 2; top: 14px; padding: .35rem .8rem; border-radius: 999px; background: rgb(var(--zemin-rgb) / .7); backdrop-filter: blur(8px); -webkit-backdrop-filter: blur(8px); font-size: .8rem; font-weight: 600; color: var(--murekkep); pointer-events: none; }
.ks__etiket--once { left: 14px; } .ks__etiket--sonra { right: 14px; }
.ks__aralik { position: absolute; inset: 0; width: 100%; height: 100%; opacity: 0; margin: 0; cursor: ew-resize; pointer-events: none; }
.ks__aralik:focus-visible + * { outline: none; }
.ks:has(.ks__aralik:focus-visible) { outline: 2px solid var(--marka); outline-offset: 4px; }
@media (max-width: 860px) {
  .karsilastir__ic { grid-template-columns: minmax(0, 1fr); }
  .ks { order: -1; aspect-ratio: 4/3; }
  .karsilastir__metin { display: contents; }
  .karsilastir__metin > h2 { order: -3; } .karsilastir__metin > p { order: -2; margin-bottom: 8px; }
  .karsilastir__secim { grid-template-columns: repeat(4, minmax(0, 1fr)); margin: 4px 0 0; gap: 8px; }
  .karsilastir__secim button { padding: 5px 5px 8px; border-radius: 14px; }
  .karsilastir__secim img { border-radius: 10px; aspect-ratio: 1/1; }
  .karsilastir__secim span { font-size: .72rem; line-height: 1.2; padding-inline: 2px; }
}

/* ---------- kampanyalar (3 içerik = 3 hücre) ---------- */
.kampanya__izgara { margin-top: 44px; display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(0, 1fr); grid-template-rows: auto auto; gap: 16px; }
.kmp { position: relative; border-radius: var(--r-kart); overflow: hidden; background: var(--yuzey); padding: clamp(24px, 3vw, 36px); isolation: isolate; }
.kmp h3 { font-size: clamp(1.45rem, 2.2vw, 2rem); font-weight: 400; }
.kmp p { margin-top: 10px; color: var(--soluk); max-width: 40ch; }
.kmp .link-ok { margin-top: 12px; }
.kmp__buyuk { display: block; font: 300 clamp(3.4rem, 7vw, 6rem)/.95 var(--f-baslik); color: var(--marka); letter-spacing: -.04em; margin-bottom: 14px; }
.kmp--lazer { grid-row: span 2; display: grid; grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); gap: 26px; align-items: center; background: linear-gradient(160deg, var(--kmp-1), var(--kmp-2)); box-shadow: inset 0 0 0 1px var(--altin-cizgi); }
.kmp--lazer > img { width: 100%; border-radius: 16px; box-shadow: var(--golge); rotate: -2.5deg; }
.kmp__paket { list-style: none; margin: 18px 0 22px; padding: 0; display: grid; gap: 8px; }
.kmp__paket li { display: flex; justify-content: space-between; align-items: baseline; gap: 12px; padding: 12px 14px; border-radius: 14px; background: var(--yuzey-2); }
.kmp__paket span { font-size: .95rem; color: var(--metin); }
.kmp__paket b { font: 500 1.15rem/1 var(--f-baslik); color: var(--murekkep); }
.kmp__paket li:last-child { background: var(--marka); }
.kmp__paket li:last-child span, .kmp__paket li:last-child b { color: var(--vurgu-metin); }
.kmp--uye { background: var(--marka-acik); box-shadow: inset 0 0 0 1px var(--altin-cizgi); }
.kmp--cilt { display: grid; grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr); padding: 0; }
.kmp--cilt > img { width: 100%; height: 100%; object-fit: cover; min-height: 260px; }
.kmp--cilt .kmp__ic { padding: clamp(22px, 3vw, 34px); }
.kmp--cilt .kmp__buyuk { font-size: clamp(2.2rem, 4vw, 3.4rem); }
@media (max-width: 960px) {
  .kampanya__izgara { grid-template-columns: minmax(0, 1fr); }
  .kmp--lazer { grid-row: auto; grid-template-columns: minmax(0, 1fr); }
  .kmp--lazer > img { max-width: 70%; justify-self: center; }
  .kmp--cilt { grid-template-columns: minmax(0, 1fr); }
  .kmp--cilt > img { aspect-ratio: 16/10; min-height: 0; height: auto; }
}

/* ---------- randevu deneyimi + telefon ---------- */
.deneyim__ic { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, .9fr); gap: clamp(32px, 6vw, 96px); align-items: center; }
.deneyim__adim { list-style: none; margin: 34px 0 32px; padding: 0; display: grid; gap: 4px; }
.deneyim__adim li { display: grid; grid-template-columns: 48px minmax(0, 1fr); gap: 16px; padding: 14px 0; }
.deneyim__adim .ph { width: 48px; height: 48px; border-radius: 999px; display: grid; place-items: center; background: var(--yuzey-2); color: var(--marka); font-size: 1.35rem; line-height: 1; box-shadow: inset 0 0 0 1px var(--cizgi); }
.deneyim__adim b { display: block; color: var(--murekkep); font-weight: 600; margin-bottom: 2px; }
.deneyim__adim span { color: var(--soluk); font-size: .98rem; }
.telefon { position: relative; justify-self: center; width: min(100%, 360px); border-radius: 44px; padding: 14px; background: #0b0a0a; box-shadow: var(--golge), inset 0 0 0 1px rgb(255 255 255 / .1), 0 0 0 6px #1d1a1a; }
.telefon__bas { display: flex; align-items: center; gap: 12px; padding: 14px 14px 12px; border-radius: 30px 30px 8px 8px; background: #1f2c27; }
.telefon__bas img { width: 40px; height: 40px; object-fit: contain; border-radius: 999px; background: #121011; padding: 4px; }
.telefon__bas b { display: block; color: #fff; font-size: .95rem; font-weight: 600; }
.telefon__bas small { color: rgb(255 255 255 / .6); font-size: .78rem; }
.telefon__akis { display: grid; gap: 10px; padding: 16px 10px 22px; border-radius: 8px 8px 30px 30px; background: #0f1714 radial-gradient(rgb(255 255 255 / .03) 1px, transparent 1px) 0 0 / 14px 14px; min-height: 380px; align-content: start; }

/* WhatsApp balonu (ana sayfa telefonu + randevu onay akışı ortak) */
.wa-balon { position: relative; justify-self: start; max-width: 92%; padding: 10px 12px 22px; border-radius: 4px 16px 16px 16px; background: #1e2a25; color: #e9efe9; font-size: .9rem; line-height: 1.45; box-shadow: 0 2px 0 rgb(0 0 0 / .25); }
.wa-balon a { display: flex; align-items: center; gap: 8px; margin-top: 8px; padding: 10px; border-radius: 10px; background: rgb(0 0 0 / .25); color: #9fe2bf; font-weight: 600; font-size: .86rem; }
.wa-balon small { position: absolute; right: 10px; bottom: 5px; font-size: .68rem; color: rgb(233 239 233 / .55); display: inline-flex; align-items: center; gap: 4px; }
.wa-balon small .ph-bold { color: #53bdeb; font-size: .9rem; }
.telefon .wa-balon { opacity: 0; transform: translateY(12px) scale(.98); transform-origin: top left; }
.telefon.gorunur .wa-balon { animation: balon .7s var(--yay) forwards; animation-delay: calc(var(--i) * .55s + .2s); }
@keyframes balon { to { opacity: 1; transform: none; } }
@media (max-width: 860px) { .deneyim__ic { grid-template-columns: minmax(0, 1fr); } .deneyim__ic .btn { width: 100%; } }

/* ---------- yatay kayan işler (pin) ---------- */
.isler { position: relative; overflow: hidden; background: var(--yuzey); border-block: 1px solid var(--cizgi); }
.isler__ic { display: flex; align-items: center; gap: clamp(18px, 2.6vw, 36px); height: 100dvh; padding-inline: max(calc((100vw - 1320px) / 2), 4vw); will-change: transform; }
.isler__giris { flex: 0 0 min(400px, 80vw); }
.isler__giris h2 { font-size: clamp(2.3rem, 4.6vw, 4rem); font-weight: 300; }
.isler__giris p { margin-top: 14px; color: var(--soluk); }
.isler__giris .link-ok { margin-top: 18px; }
.is-kart { position: relative; flex: 0 0 auto; height: min(62vh, 540px); aspect-ratio: 4/5; margin: 0; border-radius: var(--r-kart); overflow: hidden; background: var(--yuzey-2); }
.is-kart:nth-child(odd) { transform: translateY(4vh); }
.is-kart img { width: 100%; height: 100%; object-fit: cover; }
.is-kart figcaption { position: absolute; left: 12px; bottom: 12px; padding: .4rem .85rem; border-radius: 999px; background: rgb(var(--zemin-rgb) / .72); backdrop-filter: blur(8px); -webkit-backdrop-filter: blur(8px); font-size: .82rem; font-weight: 600; color: var(--murekkep); }
@media (max-width: 860px) {
  .isler__ic { height: auto; overflow-x: auto; scroll-snap-type: x mandatory; padding-block: 64px; scrollbar-width: none; -webkit-overflow-scrolling: touch; padding-inline: 16px; scroll-padding-inline: 16px; }
  .isler__ic::-webkit-scrollbar { display: none; }
  .isler__giris { flex-basis: 74vw; scroll-snap-align: start; }
  .is-kart { height: auto; width: 72vw; scroll-snap-align: start; }
  .is-kart:nth-child(odd) { transform: none; }
}

/* ---------- söz + kurucu ---------- */
.soz__ic { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.1fr); gap: 16px; align-items: stretch; }
.soz__alinti { margin: 0; border-radius: var(--r-kart); padding: clamp(28px, 4vw, 52px); background: var(--yuzey); display: flex; flex-direction: column; justify-content: space-between; gap: 28px; box-shadow: inset 0 0 0 1px var(--cizgi); }
.soz__alinti blockquote { margin: 0; font: 300 clamp(2rem, 4vw, 3.4rem)/1.12 var(--f-baslik); color: var(--murekkep); letter-spacing: -.025em; }
.soz__alinti figcaption { display: flex; align-items: center; gap: 12px; color: var(--soluk); font-size: .9rem; }
.soz__alinti figcaption b { color: var(--murekkep); }
.soz__kurucu { border-radius: var(--r-kart); overflow: hidden; background: var(--marka-acik); display: grid; grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr); box-shadow: inset 0 0 0 1px var(--altin-cizgi); }
.soz__kurucu > img { width: 100%; height: 100%; object-fit: cover; min-height: 320px; }
.soz__kurucu > div { padding: clamp(24px, 3.4vw, 44px); align-self: center; }
.soz__kurucu h3 { font-size: clamp(1.5rem, 2.4vw, 2.1rem); font-weight: 400; }
.soz__kurucu p { margin-top: 12px; color: var(--metin); }
.soz__kurucu .link-ok { margin-top: 12px; }
@media (max-width: 860px) { .soz__ic { grid-template-columns: minmax(0, 1fr); } .soz__kurucu { grid-template-columns: minmax(0, 1fr); } .soz__kurucu > img { aspect-ratio: 16/11; min-height: 0; height: auto; object-position: center 30%; } }

/* ---------- ziyaret ---------- */
.ziyaret { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 16px; }
.ziyaret__kart { border-radius: var(--r-kart); background: var(--yuzey); padding: clamp(24px, 4vw, 48px); box-shadow: inset 0 0 0 1px var(--cizgi); }
.ziyaret__kart h2 { font-size: clamp(1.9rem, 3.4vw, 2.9rem); font-weight: 300; }
.saatler { margin-top: 24px; display: grid; grid-template-columns: repeat(7, minmax(0, 1fr)); gap: 6px; }
.gun { padding: 12px 4px; border-radius: 14px; text-align: center; background: var(--zemin); font-size: .8rem; color: var(--soluk); line-height: 1.4; }
.gun b { display: block; color: var(--murekkep); font: 600 .92rem/1.2 var(--f-metin); margin-bottom: 4px; }
.gun.bugun { background: var(--marka); color: color-mix(in srgb, var(--vurgu-metin) 80%, transparent); }
.gun.bugun b { color: var(--vurgu-metin); }
.gun.kapali { opacity: .55; }
.adres { margin-top: 24px; display: grid; gap: 4px; }
.adres a { display: flex; gap: 12px; align-items: flex-start; padding: 8px 0; min-height: 44px; }
.adres .ph { color: var(--marka); margin-top: .25em; }
.harita { position: relative; border-radius: var(--r-kart); overflow: hidden; min-height: 420px; background: var(--yuzey-2); box-shadow: inset 0 0 0 1px var(--cizgi); display: flex; flex-direction: column; }
.harita__btn { display: flex; gap: 8px; flex-wrap: wrap; padding: 12px; background: var(--yuzey); }
.harita__btn .btn { flex: 1 1 auto; }
.harita iframe { width: 100%; flex: 1; min-height: 360px; border: 0; display: block; background: #e5e3df; }
@media (max-width: 860px) { .ziyaret { grid-template-columns: minmax(0, 1fr); } .saatler { grid-template-columns: repeat(4, minmax(0, 1fr)); } .harita { min-height: 0; } .harita iframe { min-height: 280px; } }

/* ---------- son çağrı ---------- */
.son-cagri { position: relative; border-radius: calc(var(--r-kart) + 6px); overflow: hidden; padding: clamp(44px, 8vw, 110px) clamp(24px, 6vw, 90px); background: var(--yuzey); isolation: isolate; box-shadow: inset 0 0 0 1px var(--altin-cizgi); }
.son-cagri > img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center 25%; z-index: -2; opacity: .5; }
.son-cagri::after { content: ""; position: absolute; inset: 0; z-index: -1; background: linear-gradient(100deg, var(--zemin) 30%, rgb(var(--zemin-rgb) / .55) 70%, rgb(var(--zemin-rgb) / .2)); }
.son-cagri h2 { font-size: clamp(2.2rem, 5vw, 4.4rem); font-weight: 300; max-width: 14ch; }
.son-cagri p { margin-top: 14px; max-width: 40ch; color: var(--metin); }
.son-cagri .hero__cta { margin-top: 28px; }
@media (max-width: 860px) { .son-cagri::after { background: linear-gradient(180deg, rgb(var(--zemin-rgb) / .6), var(--zemin) 78%); } .son-cagri { padding-top: 180px; } }

/* ---------- alt bilgi ---------- */
.alt { margin-top: clamp(72px, 10vw, 130px); padding: 60px 0 120px; background: var(--alt-zemin); border-top: 1px solid var(--cizgi); }
.alt__ic { display: grid; grid-template-columns: 1.4fr 1fr 1fr 1.1fr; gap: 32px; }
.alt__marka img { width: 170px; height: auto; }
.alt__marka p { margin-top: 16px; max-width: 34ch; }
.alt h4 { font: 600 .95rem/1.2 var(--f-metin); color: var(--murekkep); margin-bottom: 14px; letter-spacing: 0; }
.alt p, .alt li { color: var(--soluk); font-size: .95rem; }
.alt ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 8px; }
.alt a:hover { color: var(--marka); }
.alt__sosyal { margin-top: 18px; display: flex; gap: 8px; }
.alt__sosyal a { width: 46px; height: 46px; border-radius: 999px; display: grid; place-items: center; background: var(--yuzey-2); font-size: 1.2rem; color: var(--murekkep); transition: background-color .3s, color .3s; }
.alt__sosyal a:hover { background: var(--marka); color: var(--vurgu-metin); }
.alt__telif { margin-top: 44px; padding-top: 22px; border-top: 1px solid var(--cizgi); display: flex; justify-content: space-between; flex-wrap: wrap; gap: 10px; font-size: .85rem; color: var(--soluk); }
@media (max-width: 860px) { .alt__ic { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); } .alt__ic > :first-child, .alt__ic > :last-child { grid-column: 1 / -1; } }

/* ---------- sabit WhatsApp + mobil alt bar ---------- */
.wa { position: fixed; right: 22px; bottom: 22px; z-index: 35; width: 58px; height: 58px; border-radius: 999px; display: grid; place-items: center; background: #25a85a; color: #fff; font-size: 1.8rem; box-shadow: 0 16px 34px -12px rgb(37 168 90 / .7); transition: transform .45s var(--yay); }
.wa:hover { transform: scale(1.08) rotate(-6deg); }
.mobil-bar { display: none; }
@media (max-width: 760px) {
  .wa { display: none; }
  .mobil-bar { position: fixed; inset: auto 0 0; z-index: 36; display: grid; grid-template-columns: 52px 52px minmax(0, 1fr); gap: 8px; padding: 10px 14px calc(10px + env(safe-area-inset-bottom)); background: rgb(var(--zemin-rgb) / .86); backdrop-filter: blur(16px); -webkit-backdrop-filter: blur(16px); box-shadow: 0 -1px 0 var(--cizgi); }
  .mobil-bar a { display: grid; place-items: center; height: 52px; border-radius: 999px; font-weight: 600; }
  .mobil-bar .ara { background: var(--yuzey-2); color: var(--murekkep); font-size: 1.3rem; box-shadow: inset 0 0 0 1px var(--cizgi); }
  .mobil-bar .ara:nth-child(2) { color: var(--yesil); }
  .mobil-bar .btn { display: flex; }
  .mobil-bar { transition: translate .5s var(--yay); }
  html.hero-cta-gorunur .mobil-bar { translate: 0 120%; }
  .alt { padding-bottom: calc(110px + env(safe-area-inset-bottom)); }
}

/* ---------- iç sayfa başlığı ---------- */
.sayfa-bas { padding: 148px 0 36px; }
.sayfa-bas h1 { font-size: clamp(2.8rem, 7vw, 6rem); font-weight: 300; line-height: 1; letter-spacing: -.04em; }
.sayfa-bas h1 .satir { display: block; overflow: hidden; padding: .16em 0 .2em; margin: -.16em 0 -.2em; }
.sayfa-bas h1 .satir > span { display: inline-block; }
.sayfa-bas p { margin-top: 16px; max-width: 54ch; font-size: 1.1rem; color: var(--soluk); }
@media (max-width: 760px) { .sayfa-bas { padding: 112px 0 24px; } .sayfa-bas p { font-size: 1rem; } }

/* sekmeler (galeri) */
.sekmeler { display: flex; gap: 8px; margin-top: 28px; overflow-x: auto; scrollbar-width: none; padding-bottom: 4px; }
.sekmeler::-webkit-scrollbar { display: none; }
.sekme { flex: none; min-height: 44px; padding: .6rem 1.15rem; border-radius: 999px; background: var(--yuzey); font-weight: 600; font-size: .92rem; color: var(--metin); box-shadow: inset 0 0 0 1px var(--cizgi); transition: background-color .3s, color .3s; }
.sekme[aria-selected="true"] { background: var(--marka); color: var(--vurgu-metin); box-shadow: none; }

/* ---------- hizmetler: kategori çubuğu + kapaklı kart grupları ---------- */
.kat-cubuk { position: sticky; top: 70px; z-index: 20; padding: 10px 0 12px; background: var(--zemin); box-shadow: 0 1px 0 var(--cizgi); }
.kat-cubuk__ic { width: var(--kap); margin-inline: auto; display: flex; gap: 8px; overflow-x: auto; scrollbar-width: none; scroll-behavior: smooth; }
.kat-cubuk__ic::-webkit-scrollbar { display: none; }
.kat-cubuk a { flex: none; min-height: 40px; display: inline-flex; align-items: center; padding: 0 1rem; border-radius: 999px; background: var(--yuzey); box-shadow: inset 0 0 0 1px var(--cizgi); font-size: .88rem; font-weight: 600; color: var(--metin); transition: background-color .3s, color .3s; }
.kat-cubuk a:hover, .kat-cubuk a.aktif { background: var(--marka); color: var(--vurgu-metin); box-shadow: none; }
.fiyatlar { display: grid; gap: clamp(40px, 6vw, 80px); padding-top: 28px; }
.kat { display: grid; grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr); gap: clamp(20px, 4vw, 56px); align-items: start; scroll-margin-top: 140px; }
.kat__kapak { position: sticky; top: 140px; margin: 0; border-radius: var(--r-kart); overflow: hidden; aspect-ratio: 4/5; background: var(--yuzey-2); isolation: isolate; display: flex; align-items: flex-end; box-shadow: inset 0 0 0 1px var(--altin-cizgi); }
.kat__kapak img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; z-index: -2; }
.kat__kapak::after { content: ""; position: absolute; inset: 0; z-index: -1; background: linear-gradient(180deg, rgb(var(--zemin-rgb) / 0) 35%, rgb(var(--zemin-rgb) / .92)); }
.kat__kapak > div { padding: clamp(20px, 3vw, 32px); }
.kat__kapak h2 { font-size: clamp(2rem, 3.6vw, 3rem); font-weight: 300; }
.kat__kapak p { margin-top: 8px; color: var(--metin); font-size: .95rem; max-width: 44ch; }
.hz-izgara { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.hz { position: relative; display: grid; grid-template-rows: auto auto 1fr; gap: 4px; min-height: 148px; padding: 18px 18px 16px; border-radius: 20px; background: var(--yuzey); box-shadow: inset 0 0 0 1px var(--cizgi); transition: transform .45s var(--yay), box-shadow .3s, background-color .3s; }
.hz b { font-weight: 600; font-size: 1.02rem; color: var(--murekkep); line-height: 1.3; padding-right: 34px; }
.hz small { color: var(--soluk); font-size: .84rem; line-height: 1.4; }
.hz__alt { align-self: end; margin-top: 14px; display: flex; align-items: baseline; justify-content: space-between; gap: 8px; flex-wrap: wrap; }
.hz__sure { display: inline-flex; align-items: center; gap: 5px; font-size: .8rem; color: var(--soluk); }
.hz__fiyat { font: 400 1.35rem/1 var(--f-baslik); color: var(--marka); white-space: nowrap; }
.hz__ekle { position: absolute; top: 14px; right: 14px; width: 30px; height: 30px; border-radius: 999px; display: grid; place-items: center; background: var(--yuzey-2); color: var(--marka); font-size: .85rem; box-shadow: inset 0 0 0 1px var(--altin-cizgi); transition: background-color .3s, color .3s, transform .45s var(--yay); }
.hz:hover { box-shadow: inset 0 0 0 1px var(--altin-cizgi); background: var(--yuzey-2); }
.hz:hover .hz__ekle { background: var(--marka); color: var(--vurgu-metin); transform: rotate(90deg); }
.hz:active { transform: scale(.98); }
.hz--one { grid-column: 1 / -1; background: linear-gradient(135deg, var(--hz-1), var(--hz-2)); box-shadow: inset 0 0 0 1px var(--altin-cizgi); }
.hz--one .hz__fiyat { font-size: 1.7rem; }
.fiyat-not { display: flex; gap: 10px; align-items: flex-start; padding: 18px 20px; border-radius: 16px; background: var(--yuzey); color: var(--soluk); font-size: .92rem; }
.fiyat-not .ph { color: var(--marka); margin-top: .2em; }
@media (max-width: 860px) {
  .kat-cubuk { top: 60px; }
  .kat { grid-template-columns: minmax(0, 1fr); gap: 14px; scroll-margin-top: 124px; }
  .kat__kapak { position: relative; top: 0; aspect-ratio: 16/10; }
  .kat__kapak h2 { font-size: 1.9rem; }
  .kat__kapak p { font-size: .88rem; }
  .hz-izgara { gap: 10px; }
  .hz { min-height: 132px; padding: 14px 14px 12px; border-radius: 18px; }
  .hz b { font-size: .95rem; padding-right: 30px; }
  .hz small { font-size: .78rem; }
  .hz__fiyat { font-size: 1.15rem; }
  .hz__ekle { top: 12px; right: 12px; width: 26px; height: 26px; }
}

/* ---------- galeri + ışık kutusu ---------- */
.galeri { margin-top: 30px; columns: 4 220px; column-gap: 12px; }
.galeri figure { margin: 0 0 12px; break-inside: avoid; border-radius: 18px; overflow: hidden; cursor: zoom-in; background: var(--yuzey-2); }
.galeri figure img { width: 100%; transition: transform 1s var(--yay); }
.galeri figure:hover img { transform: scale(1.04); }
.galeri figure[hidden] { display: none; }
.galeri__ig { margin-top: 20px; }
@media (max-width: 560px) { .galeri { columns: 2; column-gap: 8px; } .galeri figure { margin-bottom: 8px; border-radius: 14px; } }
.isik-kutusu { position: fixed; inset: 0; z-index: 70; display: grid; place-items: center; background: rgb(10 9 9 / .95); opacity: 0; visibility: hidden; transition: opacity .4s, visibility 0s .4s; touch-action: pan-y; }
.isik-kutusu.acik { opacity: 1; visibility: visible; transition: opacity .4s; }
.isik-kutusu img { max-width: min(92vw, 1100px); max-height: 80vh; width: auto; border-radius: 14px; }
.isik-kutusu button { position: absolute; width: 52px; height: 52px; border-radius: 999px; background: rgb(255 255 255 / .12); color: #fff; font-size: 1.4rem; display: grid; place-items: center; }
.isik-kutusu .kapat { top: max(18px, env(safe-area-inset-top)); right: 18px; }
.isik-kutusu .onceki { left: 18px; top: 50%; translate: 0 -50%; }
.isik-kutusu .sonraki { right: 18px; top: 50%; translate: 0 -50%; }
.isik-kutusu .sayac { position: absolute; bottom: calc(22px + env(safe-area-inset-bottom)); left: 50%; translate: -50% 0; color: rgb(255 255 255 / .7); font-size: .9rem; }
@media (max-width: 760px) { .isik-kutusu .onceki, .isik-kutusu .sonraki { top: auto; bottom: calc(14px + env(safe-area-inset-bottom)); translate: none; } }

/* ---------- hakkımızda ---------- */
.hikaye { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); gap: clamp(32px, 6vw, 96px); align-items: center; }
.hikaye__gorsel { position: relative; }
.hikaye__gorsel .ana { border-radius: var(--r-kart); overflow: hidden; aspect-ratio: 4/5; }
.hikaye__gorsel .ana img { width: 100%; height: 115%; object-fit: cover; }
.hikaye__gorsel .ek { position: absolute; right: -12%; bottom: -8%; width: 46%; border-radius: var(--r-kart); overflow: hidden; border: 6px solid var(--zemin); aspect-ratio: 4/5; }
.hikaye__gorsel .ek img { width: 100%; height: 100%; object-fit: cover; }
.hikaye blockquote { margin: 0; font: 300 clamp(1.9rem, 3.6vw, 3.2rem)/1.14 var(--f-baslik); letter-spacing: -.025em; color: var(--murekkep); }
.hikaye blockquote em { color: var(--marka); }
.hikaye__imza { margin-top: 26px; display: flex; align-items: center; gap: 14px; color: var(--soluk); }
.hikaye__imza img { width: 72px; height: auto; }
.hikaye__imza b { color: var(--murekkep); }
@media (max-width: 860px) { .hikaye { grid-template-columns: minmax(0, 1fr); } .hikaye__gorsel { margin-right: 12%; } .hikaye__gorsel .ek { right: -14%; } }
.ilke__izgara { margin-top: 40px; display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: 16px; }
.ilke__oge { grid-column: span 4; border-radius: var(--r-kart); background: var(--yuzey); padding: 28px; box-shadow: inset 0 0 0 1px var(--cizgi); }
.ilke__oge > .ph { font-size: 2rem; color: var(--marka); }
.ilke__oge h3 { margin-top: 14px; font-size: 1.5rem; font-weight: 400; }
.ilke__oge p { margin-top: 8px; color: var(--soluk); }
.ilke__oge--genis { grid-column: span 8; display: grid; grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr); gap: 24px; align-items: center; padding: 0; overflow: hidden; }
.ilke__oge--genis img { height: 100%; width: 100%; object-fit: cover; min-height: 280px; }
.ilke__oge--genis > div { padding: 28px 28px 28px 0; }
.ilke__oge--genis h3 { margin-top: 0; }
.ilke__oge--resim { grid-column: span 8; display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(0, .8fr); gap: 24px; align-items: center; background: var(--marka-acik); box-shadow: inset 0 0 0 1px var(--altin-cizgi); }
.ilke__oge--resim img { border-radius: 14px; order: 2; max-height: 300px; width: auto; justify-self: end; }
.ilke__oge--resim h3 { margin-top: 0; }
@media (max-width: 860px) {
  .ilke__izgara { grid-template-columns: minmax(0, 1fr); }
  .ilke__oge, .ilke__oge--genis, .ilke__oge--resim { grid-column: auto; }
  .ilke__oge--genis, .ilke__oge--resim { grid-template-columns: minmax(0, 1fr); }
  .ilke__oge--genis img { aspect-ratio: 16/10; min-height: 0; }
  .ilke__oge--genis > div { padding: 0 24px 26px; }
  .ilke__oge--resim img { order: 0; justify-self: center; max-height: 260px; }
}

/* ---------- iletişim ---------- */
.iletisim { display: grid; gap: 16px; }
.iletisim__kartlar { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; }
.ik { display: flex; align-items: center; gap: 14px; padding: 18px; border-radius: 18px; background: var(--yuzey); box-shadow: inset 0 0 0 1px var(--cizgi); transition: transform .45s var(--yay), box-shadow .3s; min-width: 0; }
@media (hover: hover) { .ik:hover { transform: translateY(-3px); box-shadow: inset 0 0 0 1px var(--altin-cizgi); } }
.ik > .ph { flex: none; width: 46px; height: 46px; border-radius: 999px; display: grid; place-items: center; background: var(--marka-acik); color: var(--marka); font-size: 1.3rem; line-height: 1; }
.ik span { min-width: 0; }
.ik small { display: block; color: var(--soluk); font-size: .8rem; }
.ik b { display: block; color: var(--murekkep); font-weight: 600; font-size: .95rem; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.iletisim__form { margin-top: 0; max-width: none; border-radius: var(--r-kart); background: var(--yuzey); padding: clamp(24px, 4vw, 44px); box-shadow: inset 0 0 0 1px var(--cizgi); }
.iletisim__form h2 { font-size: clamp(1.7rem, 3vw, 2.4rem); font-weight: 300; }
.iletisim__form .btn { justify-self: start; }
@media (max-width: 960px) { .iletisim__kartlar { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 520px) { .iletisim__kartlar { grid-template-columns: minmax(0, 1fr); } .iletisim__form .btn { justify-self: stretch; } }

/* ---------- randevu ---------- */
.randevu { display: grid; grid-template-columns: minmax(0, 1fr) 340px; gap: 24px; align-items: start; margin-top: 8px; }
.randevu > * { min-width: 0; }
.adimlar { margin-bottom: 22px; }
.adimlar ol { display: flex; gap: 6px; margin: 0; padding: 0; }
.adimlar li { list-style: none; flex: 1; min-width: 0; }
.adim-cubuk { height: 4px; border-radius: 999px; background: var(--yuzey-2); overflow: hidden; }
.adim-cubuk i { display: block; height: 100%; width: 0; background: var(--marka); transition: width .6s var(--yay); }
.adimlar li.tamam .adim-cubuk i, .adimlar li.aktif .adim-cubuk i { width: 100%; }
.adimlar small { display: block; margin-top: 8px; font-size: .76rem; font-weight: 600; color: var(--soluk); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.adimlar li.aktif small { color: var(--marka); }
.panel { border-radius: var(--r-kart); background: var(--yuzey); padding: clamp(20px, 3.4vw, 40px); min-height: 460px; box-shadow: inset 0 0 0 1px var(--cizgi); }
.panel h2 { font-size: clamp(1.75rem, 3vw, 2.4rem); font-weight: 300; }
.panel .adim > p { margin-top: 8px; color: var(--soluk); }
.adim { display: none; }
.adim.aktif { display: block; animation: adim-gir .6s var(--yay); }
@keyframes adim-gir { from { opacity: 0; transform: translateY(14px); } }
.grup-baslik { margin-top: 26px; font: 600 .82rem/1 var(--f-metin); color: var(--marka); letter-spacing: .02em; }
.secenekler { margin-top: 12px; display: grid; grid-template-columns: repeat(auto-fill, minmax(210px, 1fr)); gap: 10px; }
.secenek { position: relative; text-align: left; min-height: 72px; padding: 14px 44px 14px 16px; border-radius: 16px; background: var(--zemin); box-shadow: inset 0 0 0 1px var(--cizgi); display: grid; gap: 4px; align-content: center; transition: box-shadow .3s, background-color .3s, transform .3s var(--yay); }
.secenek:hover { box-shadow: inset 0 0 0 1px var(--altin-cizgi); }
.secenek:active { transform: scale(.98); }
.secenek[aria-pressed="true"] { background: var(--marka-acik); box-shadow: inset 0 0 0 1.5px var(--marka); }
.secenek b { color: var(--murekkep); font-weight: 600; font-size: 1rem; line-height: 1.3; }
.secenek small { color: var(--soluk); font-size: .86rem; }
.secenek .tik { position: absolute; top: 50%; right: 14px; translate: 0 -50%; width: 24px; height: 24px; border-radius: 999px; display: grid; place-items: center; box-shadow: inset 0 0 0 1.5px var(--cizgi); color: transparent; font-size: .8rem; transition: background-color .3s, color .3s, transform .4s var(--yay), box-shadow .3s; }
.secenek[aria-pressed="true"] .tik { background: var(--marka); color: var(--vurgu-metin); box-shadow: none; transform: scale(1.08); }
.uzmanlar { margin-top: 22px; display: grid; grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); gap: 10px; }
.uzman { padding: 18px 12px; border-radius: 18px; background: var(--zemin); box-shadow: inset 0 0 0 1px var(--cizgi); display: grid; justify-items: center; gap: 8px; text-align: center; transition: box-shadow .3s, background-color .3s, transform .3s var(--yay); }
.uzman:active { transform: scale(.98); }
.uzman[aria-pressed="true"] { background: var(--marka-acik); box-shadow: inset 0 0 0 1.5px var(--marka); }
.uzman b { color: var(--murekkep); font-weight: 600; }
.uzman .mono { width: 58px; height: 58px; border-radius: 999px; display: grid; place-items: center; background: var(--yuzey-2); color: var(--marka); font: 400 1.4rem/1 var(--f-baslik); box-shadow: inset 0 0 0 1px var(--altin-cizgi); }
.uzman[aria-pressed="true"] .mono { background: var(--marka); color: var(--vurgu-metin); }
.uzman small { color: var(--soluk); font-size: .8rem; line-height: 1.35; }
.gunler { margin-top: 22px; display: flex; gap: 8px; overflow-x: auto; padding: 2px 2px 10px; scroll-snap-type: x proximity; scrollbar-width: none; }
.gunler::-webkit-scrollbar { display: none; }
.gun-sec { flex: 0 0 74px; scroll-snap-align: start; padding: 12px 4px; border-radius: 16px; background: var(--zemin); box-shadow: inset 0 0 0 1px var(--cizgi); display: grid; gap: 2px; justify-items: center; transition: background-color .3s, color .3s, transform .3s var(--yay); }
.gun-sec:active { transform: scale(.96); }
.gun-sec small { font-size: .74rem; color: var(--soluk); }
.gun-sec b { font: 400 1.55rem/1.1 var(--f-baslik); color: var(--murekkep); }
.gun-sec em { font-style: normal; font-size: .7rem; font-weight: 600; color: var(--yesil); margin-top: 2px; }
.gun-sec[aria-pressed="true"] { background: var(--marka); box-shadow: none; }
.gun-sec[aria-pressed="true"] small, .gun-sec[aria-pressed="true"] b, .gun-sec[aria-pressed="true"] em { color: var(--vurgu-metin); }
.gun-sec.dolu-gun, .gun-sec:disabled { opacity: .4; }
.gun-sec.dolu-gun em, .gun-sec:disabled em { color: var(--soluk); }
.gun-sec:disabled { cursor: not-allowed; }
.saat-izgara { margin-top: 10px; display: grid; grid-template-columns: repeat(auto-fill, minmax(78px, 1fr)); gap: 8px; }
.saat { min-height: 46px; border-radius: 999px; background: var(--zemin); box-shadow: inset 0 0 0 1px var(--cizgi); font-weight: 600; color: var(--murekkep); font-variant-numeric: tabular-nums; transition: background-color .3s, color .3s, transform .3s var(--yay); }
.saat:active { transform: scale(.96); }
.saat[aria-pressed="true"] { background: var(--marka); color: var(--vurgu-metin); box-shadow: none; }
.saat:disabled { color: var(--soluk); text-decoration: line-through; opacity: .45; cursor: not-allowed; }
.not { margin-top: 18px; color: var(--soluk); }
.form { margin-top: 22px; display: grid; gap: 16px; max-width: 540px; }
.alan { display: grid; gap: 8px; }
.alan label { font-weight: 600; font-size: .92rem; color: var(--murekkep); }
.alan input, .alan textarea { width: 100%; min-height: 52px; padding: 14px 16px; border-radius: var(--r-alan); border: 1px solid var(--cizgi); background: var(--zemin); color: var(--murekkep); font: 400 16px/1.4 var(--f-metin); transition: border-color .3s, box-shadow .3s; -webkit-appearance: none; appearance: none; }
.alan input::placeholder, .alan textarea::placeholder { color: var(--soluk); }
.alan input:focus, .alan textarea:focus { outline: none; border-color: var(--marka); box-shadow: 0 0 0 4px rgb(var(--marka-rgb) / .16); }
.alan .ipucu { font-size: .84rem; color: var(--soluk); }
.alan .hata { font-size: .84rem; color: var(--hata); display: none; }
.alan.gecersiz input { border-color: var(--hata); }
.alan.gecersiz .hata { display: block; }
.alan.gecerli input { border-color: var(--yesil-2); }
.panel__alt { margin-top: 28px; display: flex; justify-content: space-between; gap: 10px; flex-wrap: wrap; }
.panel__alt .btn[disabled] { opacity: .4; pointer-events: none; box-shadow: none; }
.ozet { position: sticky; top: 100px; border-radius: var(--r-kart); background: var(--marka-acik); color: var(--metin); padding: 26px; box-shadow: inset 0 0 0 1px var(--altin-cizgi); }
.ozet h3 { font-size: 1.35rem; font-weight: 400; }
.ozet dl { margin: 18px 0 0; display: grid; gap: 14px; }
.ozet dt { font-size: .74rem; font-weight: 600; letter-spacing: .08em; color: var(--soluk); }
.ozet dd { margin: 2px 0 0; color: var(--murekkep); font-weight: 500; }
.ozet .toplam { margin-top: 22px; padding-top: 18px; border-top: 1px solid var(--altin-cizgi); display: flex; justify-content: space-between; align-items: baseline; gap: 12px; }
.ozet .toplam b { font: 400 1.8rem/1 var(--f-baslik); color: var(--marka); white-space: nowrap; }
.anahtar { display: flex; align-items: center; gap: 14px; padding: 14px 16px; border-radius: var(--r-alan); background: var(--zemin); box-shadow: inset 0 0 0 1px var(--cizgi); cursor: pointer; position: relative; }
.anahtar input { position: absolute; opacity: 0; pointer-events: none; }
.anahtar__iz { flex: none; width: 50px; height: 30px; border-radius: 999px; background: var(--yuzey-3); position: relative; transition: background-color .35s; }
.anahtar__iz i { position: absolute; top: 3px; left: 3px; width: 24px; height: 24px; border-radius: 999px; background: #fff; box-shadow: 0 2px 6px rgb(0 0 0 / .3); transition: transform .45s var(--yay); }
.anahtar input:checked + .anahtar__iz { background: #34c46a; }
.anahtar input:checked + .anahtar__iz i { transform: translateX(20px); }
.anahtar input:focus-visible + .anahtar__iz { outline: 2px solid var(--marka); outline-offset: 3px; }
.anahtar b { display: block; color: var(--murekkep); font-size: .95rem; font-weight: 600; }
.anahtar small { color: var(--soluk); font-size: .84rem; }

/* onay ekranı */
.onay-ekran { text-align: center; padding-block: 24px 6px; }
.onay-ekran svg { width: 104px; height: 104px; margin: 0 auto; }
.onay-ekran circle { stroke: var(--marka); stroke-width: 3; fill: none; stroke-dasharray: 302; stroke-dashoffset: 302; }
.onay-ekran path { stroke: var(--marka); stroke-width: 5; fill: none; stroke-linecap: round; stroke-linejoin: round; stroke-dasharray: 80; stroke-dashoffset: 80; }
.onay-ekran.ciz circle { animation: ciz 1s var(--yay) forwards; }
.onay-ekran.ciz path { animation: ciz .7s .55s var(--yay) forwards; }
@keyframes ciz { to { stroke-dashoffset: 0; } }
.onay-ekran h2 { margin-top: 18px; }
.onay-ekran > p { margin: 10px auto 0; max-width: 44ch; color: var(--soluk); }
.onay-ekran .hero__cta { justify-content: center; }
.bilet { margin: 28px auto 0; max-width: 560px; display: grid; grid-template-columns: 150px minmax(0, 1fr); border-radius: var(--r-kart); overflow: hidden; text-align: left; box-shadow: var(--golge), inset 0 0 0 1px var(--altin-cizgi); background: var(--zemin); position: relative; }
.bilet::before, .bilet::after { content: ""; position: absolute; left: 150px; width: 26px; height: 26px; border-radius: 999px; background: var(--yuzey); translate: -50% 0; }
.bilet::before { top: -13px; } .bilet::after { bottom: -13px; }
.bilet__tarih { background: var(--marka); color: var(--vurgu-metin); display: grid; place-content: center; justify-items: center; padding: 22px 12px; text-align: center; border-right: 2px dashed color-mix(in srgb, var(--vurgu-metin) 30%, transparent); }
.bilet__tarih b { font: 300 4rem/.9 var(--f-baslik); letter-spacing: -.04em; }
.bilet__tarih span { margin-top: 6px; font-size: .85rem; text-transform: capitalize; }
.bilet__detay { padding: 20px 22px; display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 14px 18px; }
.bilet__detay small { display: block; font-size: .72rem; font-weight: 600; letter-spacing: .08em; color: var(--soluk); }
.bilet__detay b { color: var(--murekkep); font-size: .98rem; font-weight: 600; line-height: 1.35; overflow-wrap: anywhere; }
.bilet__detay > div:nth-child(2) { grid-column: 1 / -1; order: -1; }
.bilet__kod { font-family: var(--f-baslik); letter-spacing: .06em; color: var(--marka) !important; }
.takvim-btnler { margin: 18px auto 0; max-width: 560px; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; }
.takvim-btn { display: flex; align-items: center; gap: 12px; padding: 14px; border-radius: 16px; background: var(--zemin); text-align: left; color: var(--murekkep); font-weight: 600; font-size: .9rem; line-height: 1.25; box-shadow: inset 0 0 0 1px var(--cizgi); transition: transform .45s var(--yay), box-shadow .3s; min-height: 58px; }
@media (hover: hover) { .takvim-btn:hover { transform: translateY(-3px); box-shadow: inset 0 0 0 1px var(--altin-cizgi); } } /* dokunmatikte basılı kalmasın */
.takvim-btn i { font-size: 1.6rem; flex: none; }
.takvim-btn[data-takvim="apple"] i { color: var(--murekkep); }
.takvim-btn[data-takvim="google"] i { color: #7aa7f5; }
.takvim-btn[data-takvim="outlook"] i { color: #5e9de6; }
.takvim-btn small { display: block; font-weight: 500; font-size: .74rem; color: var(--soluk); }
.onay-ekran__alt { margin-top: 28px; justify-content: center; gap: 12px; }

/* WhatsApp otomasyon akışı (motor çizer) */
.wa-akis { margin: 34px auto 0; max-width: 560px; text-align: left; border-radius: var(--r-kart); padding: 18px; background: #0f1714 radial-gradient(rgb(255 255 255 / .03) 1px, transparent 1px) 0 0 / 14px 14px; box-shadow: inset 0 0 0 1px rgb(111 211 154 / .18); }
.wa-akis:empty { display: none; }
.wa-akis__bas { display: flex; align-items: center; gap: 12px; padding-bottom: 14px; border-bottom: 1px solid rgb(255 255 255 / .07); }
.wa-akis__ikon { flex: none; width: 42px; height: 42px; border-radius: 999px; display: grid; place-items: center; background: #25a85a; color: #fff; font-size: 1.35rem; line-height: 1; }
.wa-akis__bas b { display: block; color: #fff; font-weight: 600; font-size: .98rem; }
.wa-akis__bas small { display: block; color: rgb(233 239 233 / .6); font-size: .8rem; line-height: 1.35; margin-top: 2px; }
.wa-akis__liste { list-style: none; margin: 14px 0 0; padding: 0; display: grid; gap: 14px; }
.wa-akis__liste li { display: grid; gap: 6px; opacity: 0; transform: translateY(10px); animation: balon .6s var(--yay) forwards; animation-delay: calc(var(--i) * .35s + 1s); }
.wa-akis__zaman { font-size: .74rem; color: rgb(233 239 233 / .55); display: flex; gap: 8px; align-items: baseline; }
.wa-akis__zaman b { color: #9fe2bf; font-weight: 600; font-size: .78rem; }

.parcacik { position: fixed; z-index: 80; width: 9px; height: 9px; border-radius: 2px; pointer-events: none; }
.toast { position: fixed; z-index: 85; left: 50%; top: 92px; bottom: auto; translate: -50% -180%; padding: 14px 20px; border-radius: 999px; background: var(--murekkep); color: var(--zemin); font-weight: 600; font-size: .92rem; box-shadow: var(--golge); transition: translate .7s var(--yay), opacity .35s ease, visibility 0s linear .7s; white-space: nowrap; opacity: 0; visibility: hidden; pointer-events: none; }
.toast.goster { translate: -50% 0; opacity: 1; visibility: visible; transition: translate .7s var(--yay), opacity .25s ease; }
@media (max-width: 960px) {
  .randevu { grid-template-columns: minmax(0, 1fr); }
  aside.ozet { order: 2; position: sticky; top: auto; bottom: calc(10px + env(safe-area-inset-bottom)); z-index: 5; padding: 12px 20px; border-radius: 999px; box-shadow: var(--golge), inset 0 0 0 1px var(--altin-cizgi); background: rgb(var(--marka-acik-rgb) / .92); backdrop-filter: blur(14px); -webkit-backdrop-filter: blur(14px); }
  aside.ozet h3, aside.ozet dl { display: none; }
  aside.ozet .toplam { margin: 0; padding: 0; border: 0; }
  aside.ozet .toplam span { color: var(--metin); font-size: .92rem; }
  aside.ozet .toplam b { font-size: 1.35rem; }
}
@media (max-width: 760px) {
  html[data-sayfa="randevu"] .mobil-bar, html[data-sayfa="randevu"] .wa { display: none; }
  html[data-sayfa="randevu"] .alt { padding-bottom: 60px; }
  .toast { top: auto; bottom: calc(84px + env(safe-area-inset-bottom)); translate: -50% 220%; white-space: normal; width: auto; max-width: calc(100% - 32px); padding: 10px 16px; font-size: .84rem; text-align: center; border-radius: 999px; }
  .toast.goster { translate: -50% 0; }
  .panel { padding: 20px 16px 84px; border-radius: 20px; } /* yapışkan süre+tutar şeridi Devam butonunu örtmesin */
  .secenekler { grid-template-columns: minmax(0, 1fr); }
  .uzmanlar { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .panel__alt { position: relative; }
  .panel__alt .btn { flex: 1; }
  .panel__alt .btn--hayalet { flex: 0 0 auto; }
}
@media (max-width: 640px) {
  .bilet { grid-template-columns: minmax(0, 1fr); } .bilet::before, .bilet::after { display: none; }
  .bilet__tarih { border-right: 0; border-bottom: 2px dashed color-mix(in srgb, var(--vurgu-metin) 30%, transparent); grid-auto-flow: column; gap: 12px; align-items: baseline; padding: 16px; }
  .bilet__tarih b { font-size: 3rem; }
  .takvim-btnler { grid-template-columns: minmax(0, 1fr); }
  .onay-ekran__alt .btn { flex: 1 1 100%; }
  .wa-akis { padding: 14px; }
}
[data-randevu]:has(.adim--bitti.aktif) aside.ozet { display: none; }
.adim.cikis { opacity: 0; transform: translateY(-10px); transition: opacity .2s ease, transform .2s ease; }

/* ---------- giriş animasyonları (JS yoksa görünür) ---------- */
.js .belir { opacity: 0; transform: translateY(30px); }
.js .maske-gorsel { clip-path: inset(100% 0 0 0); }

/* işletme paneli bağlantısı ve yorumcu fotoğrafı */
.yorumcu { width: 44px; height: 44px; border-radius: 999px; object-fit: cover; flex: none; }
.panel-giris { display: inline-flex; align-items: center; gap: 6px; margin-left: 10px; color: var(--marka); text-decoration: underline; text-underline-offset: 3px; }
[data-fiyat] { white-space: nowrap; }

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; scroll-behavior: auto !important; }
  .js .belir { opacity: 1; transform: none; }
  .js .maske-gorsel { clip-path: none; }
  .telefon .wa-balon, .wa-akis__liste li { opacity: 1; transform: none; }
  .intro { display: none; }
}

/* iOS alt araç çubuğu ve durum çubuğunun arkası da örtülsün (açılış ekranı) */
.intro { top: -15vh !important; bottom: -15vh !important; height: auto !important; }
/* hizmet kartı ızgarası: tek kalan son kart tam genişlik; lazer kapağında afiş yazısı başlığa binmesin */
.hz--one { grid-column: auto; }
.hz-izgara > .hz:last-child:nth-child(odd) { grid-column: 1 / -1; }
#lazer .kat__kapak img { object-position: 8% 30%; }
#lazer .kat__kapak::after { background: linear-gradient(180deg, rgb(var(--zemin-rgb) / .1) 20%, rgb(var(--zemin-rgb) / .95) 85%); }
/* mobil menü: iOS Safari alt araç çubuğunun arkası da örtülsün; kısa ekranda (iPhone SE) düğmeler görünür kalsın */
.mobil-menu { overflow-y: auto; overscroll-behavior: contain; padding-bottom: max(20px, env(safe-area-inset-bottom)); }
.mobil-menu.acik { clip-path: inset(0 0 -25vh 0); }
.mobil-menu::after { content: ""; position: fixed; left: 0; right: 0; bottom: -25vh; height: 25vh; background: var(--zemin); pointer-events: none; }
.mobil-menu__alt { margin-top: 24px; }
@media (max-height: 720px) {
  .mobil-menu nav { margin-top: 6px; }
  .mobil-menu nav a { padding: 9px 2px; font-size: 1.75rem; }
  .mobil-menu__alt { gap: 10px; margin-top: 16px; }
}

/* iOS: yazı alanına dokununca otomatik yakınlaşma ve çift dokunma büyütmesi olmasın */
input, select, textarea { font-size: 16px !important; }
a, button, label, [role="button"] { touch-action: manipulation; }
html { -webkit-text-size-adjust: 100%; text-size-adjust: 100%; touch-action: manipulation; }

/* mobilde gürültü katmanı kapalı (iOS bellek/GPU yükü) */
@media (max-width: 860px) { body::before { display: none !important; } }

/* aydınlık tema ince ayarları */
@media (prefers-color-scheme: light) {
  :root:not([data-tema="koyu"]) .logo img, :root:not([data-tema="koyu"]) .mobil-menu__ust img, :root:not([data-tema="koyu"]) .alt__marka img, :root:not([data-tema="koyu"]) .intro__ad img, :root:not([data-tema="koyu"]) .hikaye__imza img { filter: brightness(.62) saturate(1.25); }
  :root:not([data-tema="koyu"]) .telefon__bas { background: #075e54; }
  :root:not([data-tema="koyu"]) .telefon__bas img { background: #fff; filter: none; }
  :root:not([data-tema="koyu"]) .telefon__akis, :root:not([data-tema="koyu"]) .wa-akis { background: #efeae2 radial-gradient(rgb(0 0 0 / .03) 1px, transparent 1px) 0 0 / 14px 14px; }
  :root:not([data-tema="koyu"]) .wa-akis { box-shadow: inset 0 0 0 1px rgb(0 0 0 / .06), var(--golge); }
  :root:not([data-tema="koyu"]) .wa-balon { background: #ffffff; color: #111b21; box-shadow: 0 1px .5px rgb(11 20 26 / .13); }
  :root:not([data-tema="koyu"]) .wa-balon a { background: #f0f2f5; color: #008069; }
  :root:not([data-tema="koyu"]) .wa-balon small { color: #667781; }
  :root:not([data-tema="koyu"]) .wa-akis__bas { border-bottom-color: rgb(0 0 0 / .08); }
  :root:not([data-tema="koyu"]) .wa-akis__bas b { color: #111b21; }
  :root:not([data-tema="koyu"]) .wa-akis__bas small, :root:not([data-tema="koyu"]) .wa-akis__zaman { color: #667781; }
  :root:not([data-tema="koyu"]) .wa-akis__zaman b { color: #008069; }
  :root:not([data-tema="koyu"]) .ust.kucuk { box-shadow: 0 1px 0 var(--cizgi), 0 10px 30px -24px rgb(80 60 30 / .35); }
  :root:not([data-tema="koyu"]) .harita iframe { filter: none; }
}
:root[data-tema="acik"] .logo img, :root[data-tema="acik"] .mobil-menu__ust img, :root[data-tema="acik"] .alt__marka img, :root[data-tema="acik"] .intro__ad img, :root[data-tema="acik"] .hikaye__imza img { filter: brightness(.62) saturate(1.25); }
:root[data-tema="acik"] .telefon__bas { background: #075e54; }
:root[data-tema="acik"] .telefon__bas img { background: #fff; filter: none; }
:root[data-tema="acik"] .telefon__akis, :root[data-tema="acik"] .wa-akis { background: #efeae2 radial-gradient(rgb(0 0 0 / .03) 1px, transparent 1px) 0 0 / 14px 14px; }
:root[data-tema="acik"] .wa-akis { box-shadow: inset 0 0 0 1px rgb(0 0 0 / .06), var(--golge); }
:root[data-tema="acik"] .wa-balon { background: #ffffff; color: #111b21; box-shadow: 0 1px .5px rgb(11 20 26 / .13); }
:root[data-tema="acik"] .wa-balon a { background: #f0f2f5; color: #008069; }
:root[data-tema="acik"] .wa-balon small { color: #667781; }
:root[data-tema="acik"] .wa-akis__bas { border-bottom-color: rgb(0 0 0 / .08); }
:root[data-tema="acik"] .wa-akis__bas b { color: #111b21; }
:root[data-tema="acik"] .wa-akis__bas small, :root[data-tema="acik"] .wa-akis__zaman { color: #667781; }
:root[data-tema="acik"] .wa-akis__zaman b { color: #008069; }
:root[data-tema="acik"] .ust.kucuk { box-shadow: 0 1px 0 var(--cizgi), 0 10px 30px -24px rgb(80 60 30 / .35); }
:root[data-tema="acik"] .harita iframe { filter: none; }
/* tema: sistem + elle seçim düğme */
.tema-btn .tema-btn__acik { display: none; }
@media (prefers-color-scheme: dark) { :root:not([data-tema="acik"]) .tema-btn .tema-btn__koyu { display: none; } :root:not([data-tema="acik"]) .tema-btn .tema-btn__acik { display: inline-block; } }
:root[data-tema="koyu"] .tema-btn .tema-btn__koyu { display: none; }
:root[data-tema="koyu"] .tema-btn .tema-btn__acik { display: inline-block; }
.ust__sag .tema-btn { box-shadow: inset 0 0 0 1px var(--cizgi); }

/* açılış videoları (aris1, aris2: 1080x1920, sessiz döngü) */
video.hv { display: block; width: 100%; height: 100%; object-fit: cover; background: var(--yuzey-2); }
video.hv::-webkit-media-controls, video.hv::-webkit-media-controls-start-playback-button, video.hv::-webkit-media-controls-overlay-play-button { display: none !important; -webkit-appearance: none; }

/* ================= açılış filmi + Instagram vitrini ================= */
.film { position: relative; overflow: hidden; background: var(--yuzey-2); }
.film__pano { position: absolute; inset: 0; opacity: 0; transition: opacity 1.1s var(--yay); }
.film__pano.aktif { opacity: 1; }
.film__v, .igv__v { display: block; width: 100%; height: 100%; object-fit: cover; background: var(--yuzey-2); }
.film__v::-webkit-media-controls, .film__v::-webkit-media-controls-start-playback-button, .igv__v::-webkit-media-controls-start-playback-button { display: none !important; -webkit-appearance: none; }
.film::after { content: ""; position: absolute; z-index: 1; inset: 0; pointer-events: none; background: linear-gradient(to bottom, rgb(0 0 0 / .18), transparent 16%, transparent 46%, color-mix(in srgb, var(--zemin) 70%, transparent) 74%, var(--zemin) 96%); }
.film__cubuk { position: absolute; z-index: 2; top: 12px; left: 16px; right: 16px; display: flex; gap: 5px; }
.film__cubuk span { flex: 1; height: 2.5px; border-radius: 2px; background: rgb(255 255 255 / .38); overflow: hidden; }
.film__cubuk i { display: block; height: 100%; background: #fff; transform: scaleX(0); transform-origin: left; }
@media (max-width: 860px) {
  .hero--film { padding-top: 0; padding-bottom: 8px; min-height: 0; display: block; }
  .hero--film .film { height: 68svh; min-height: 400px; max-height: 640px; margin-top: 76px; }
  .hero--film .hero__ic { position: relative; z-index: 1; margin-top: -118px; }
}
@media (min-width: 861px) {
  .hero--film { position: relative; display: grid; align-items: center; min-height: min(100svh, 940px); }
  .hero--film .film { position: absolute; top: 0; bottom: 0; right: 0; width: 64%; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; background: none; }
  .hero--film .film__pano { position: relative; inset: auto; opacity: 1; overflow: hidden; }
  .hero--film .film__pano--1 { order: 1; } .hero--film .film__pano--2 { order: 2; } .hero--film .film__pano--3 { order: 3; } .hero--film .film__pano--4 { display: none; }
  .hero--film .film::after { background: linear-gradient(90deg, var(--zemin) 0%, color-mix(in srgb, var(--zemin) 82%, transparent) 18%, transparent 46%), linear-gradient(to top, var(--zemin), transparent 14%), linear-gradient(to bottom, var(--zemin), transparent 12%); }
  .hero--film .film__cubuk { display: none; }
  .hero--film .hero__ic { position: relative; z-index: 1; display: block; }
  .hero--film .hero__metin { max-width: 600px; }
}
@media (prefers-reduced-motion: reduce) { .film__pano { transition: none; } }

.igv__profil { display: grid; grid-template-columns: auto minmax(0, 1fr); align-items: center; gap: 14px 16px; }
.igv__avatar { width: 68px; height: 68px; border-radius: 50%; padding: 3px; background: conic-gradient(from 210deg, var(--marka), color-mix(in srgb, var(--marka) 30%, var(--zemin)), var(--marka)); }
.igv__avatar img { width: 100%; height: 100%; border-radius: 50%; object-fit: cover; border: 3px solid var(--zemin); }
.igv__kim h2 { font-size: clamp(1.45rem, 3.2vw, 2.3rem); }
.igv__kim p { margin: 4px 0 0; color: var(--soluk); font-size: .95rem; }
.igv__sayi { grid-column: 1 / -1; display: flex; gap: 28px; margin: 0; }
.igv__sayi div { display: flex; flex-direction: column-reverse; }
.igv__sayi dd { margin: 0; font-size: 1.35rem; font-weight: 600; color: var(--murekkep); font-variant-numeric: tabular-nums; }
.igv__sayi dt { font-size: .85rem; color: var(--soluk); }
.igv__takip { grid-column: 1 / -1; justify-self: start; }
.igv__one { margin: 26px -16px 0; padding: 0 16px 4px; display: flex; gap: 16px; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; }
.igv__one::-webkit-scrollbar { display: none; }
.igv__hl { flex: none; width: 76px; display: grid; justify-items: center; gap: 7px; scroll-snap-align: start; text-align: center; }
.igv__halka { width: 72px; height: 72px; border-radius: 50%; padding: 2.5px; background: linear-gradient(135deg, var(--marka), color-mix(in srgb, var(--marka) 35%, var(--zemin))); transition: transform .4s var(--yay); }
.igv__halka img { width: 100%; height: 100%; border-radius: 50%; object-fit: cover; border: 2.5px solid var(--zemin); }
.igv__hl small { font-size: .76rem; line-height: 1.2; color: var(--metin); }
.igv__hl:active .igv__halka { transform: scale(.94); }
.igv__izgara { margin-top: 22px; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); grid-auto-flow: dense; gap: 3px; border-radius: 14px; overflow: hidden; }
.igv__kare { position: relative; display: block; aspect-ratio: 4 / 5; overflow: hidden; background: var(--yuzey-2); }
.igv__kare img { width: 100%; height: 100%; object-fit: cover; transition: transform .9s var(--yay), opacity .3s; }
.igv__kare--reel { grid-row: span 2; aspect-ratio: auto; }
.igv__reel { position: absolute; top: 10px; right: 10px; color: #fff; font-size: 1.25rem; filter: drop-shadow(0 1px 3px rgb(0 0 0 / .45)); }
@media (hover: hover) { .igv__kare:hover img { transform: scale(1.04); } .igv__hl:hover .igv__halka { transform: scale(1.05); } }
@media (min-width: 861px) {
  .igv__profil { grid-template-columns: auto minmax(0, 1fr) auto auto; gap: 24px; }
  .igv__avatar { width: 88px; height: 88px; }
  .igv__sayi { grid-column: auto; gap: 34px; }
  .igv__takip { grid-column: auto; }
  .igv__one { margin-inline: 0; padding-inline: 0; gap: 22px; }
  .igv__hl { width: 88px; } .igv__halka { width: 84px; height: 84px; }
  .igv__izgara { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 6px; border-radius: 18px; }
}
/* yapışkan süre+tutar şeridi adım düğmelerini örtmesin: düğmeye kaydırınca şeridin üstünde dursun, kontrol adımında şerit gizli (özet zaten ekranda) */
@media (max-width: 760px) {
  .panel__alt .btn, .panel .alan input, .panel .alan textarea { scroll-margin-bottom: calc(96px + env(safe-area-inset-bottom)); }
  [data-randevu]:has(.adim.aktif + .adim--bitti) aside.ozet { display: none; }
}
@media (max-width: 760px) { aside.ozet { transition: opacity .2s, transform .25s var(--yay); } [data-randevu].alt-gorunur aside.ozet { opacity: 0; transform: translateY(16px); pointer-events: none; } }
/* Instagram kareleri: dokunuşu görsel/video değil bağlantı alsın (iPhone'da oynayan video dokunuşu yutabiliyor) */
.igv__kare img, .igv__kare video, .igv__reel { pointer-events: none; }
