/* Prime Spa — arduvaz gri + altın */
/* "hidden" özniteliği her zaman gizler (display: flex/grid kuralları onu ezmesin) */
[hidden] { display: none !important; }
:root {
  --koyu: #10251f;
  --koyu-2: #163028;
  --koyu-3: #24453a;
  --altin: #cfa75e;
  --altin-acik: #e4c98c;
  --altin-koyu: #9a7a3a;
  --krem: #f4efe3;
  --krem-2: #eae2d1;
  --beyaz: #fbf8f1;
  --metin: #1f2a26;
  --soluk: #5d6a64;
  --cizgi: #dcd3bf;
  --hata: #a33a2b;
  --tamam: #2f6b4f;
  --wa: #25d366;
  --yaricap: 14px;
  --golge: 0 10px 30px -12px rgba(8, 20, 16, .25);
  --serif: "Cormorant Garamond", Georgia, serif;
  --sans: "Jost", system-ui, -apple-system, "Segoe UI", sans-serif;
}
:lang(ar) { --serif: "Noto Naskh Arabic", "Cormorant Garamond", serif; --sans: "Noto Naskh Arabic", "Jost", system-ui, sans-serif; }

*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; -webkit-text-size-adjust: 100%; }
body { margin: 0; font: 300 17px/1.7 var(--sans); color: var(--metin); background: var(--beyaz); overflow-x: hidden; }
:lang(ar) body, body:lang(ar) { font-weight: 400; font-size: 18px; }
img { max-width: 100%; height: auto; display: block; }
picture { display: contents; }
a { color: var(--altin-koyu); text-decoration-thickness: 1px; text-underline-offset: 3px; }
a:hover { color: var(--koyu); }
h1, h2, h3 { font-family: var(--serif); font-weight: 500; line-height: 1.15; color: var(--koyu); margin: 0 0 .5em; letter-spacing: .005em; }
h1 { font-size: clamp(2.3rem, 5.5vw, 4rem); }
h2 { font-size: clamp(1.8rem, 3.6vw, 2.6rem); }
h3 { font-size: 1.45rem; }
p { margin: 0 0 1em; }
:focus-visible { outline: 2px solid var(--altin); outline-offset: 3px; border-radius: 4px; }
.ikon { width: 1.15em; height: 1.15em; flex: none; vertical-align: -.2em; }
.gizli { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
.soluk { color: var(--soluk); }
.kucuk { font-size: .88rem; }
.orta { text-align: center; margin-top: 2rem; }
.atla { position: absolute; inset-inline-start: 1rem; top: -4rem; background: var(--koyu); color: #fff; padding: .6rem 1rem; z-index: 100; border-radius: 8px; }
.atla:focus { top: 1rem; }

.kap { width: min(1180px, 100% - 32px); margin-inline: auto; }
.dar { width: min(780px, 100% - 32px); margin-inline: auto; }
.dar-form { width: min(460px, 100% - 32px); margin-inline: auto; }
.bolum { padding: clamp(3.5rem, 8vw, 6rem) 0; }
.bolum-acik { background: var(--krem); }
.bolum-koyu { background: var(--koyu); color: #dfe3da; }
.bolum-koyu h2, .bolum-koyu b { color: var(--krem); }
.ust-yazi { font-size: .78rem; letter-spacing: .28em; text-transform: uppercase; color: var(--altin-koyu); font-weight: 500; margin-bottom: .8rem; }
:lang(ar) .ust-yazi { letter-spacing: 0; font-size: .95rem; }
.bolum-koyu .ust-yazi { color: var(--altin); }
.bolum-giris { max-width: 620px; color: var(--soluk); margin-bottom: 2.4rem; font-size: 1.05rem; }

/* Düğmeler */
.dugme { display: inline-flex; align-items: center; justify-content: center; gap: .5em; padding: .85em 1.6em; border-radius: 999px; background: var(--altin); color: var(--koyu); font: 500 .95rem/1.2 var(--sans); letter-spacing: .04em; text-decoration: none; border: 1px solid var(--altin); cursor: pointer; transition: background .2s, color .2s, transform .2s; }
.dugme:hover { background: var(--altin-acik); color: var(--koyu); transform: translateY(-1px); }
.dugme-cizgi { background: transparent; color: inherit; border-color: currentColor; }
.dugme-cizgi:hover { background: var(--koyu); color: var(--krem); border-color: var(--koyu); }
.kahraman .dugme-cizgi:hover, .bolum-koyu .dugme-cizgi:hover { background: var(--krem); color: var(--koyu); }
.dugme-kucuk { padding: .6em 1.15em; font-size: .88rem; }
.dugme-tam { width: 100%; }
.dugmeler { display: flex; flex-wrap: wrap; gap: .8rem; margin-top: 1.6rem; }

/* Duyuru ve üst */
.duyuru { background: var(--altin); color: var(--koyu); text-align: center; font-size: .92rem; padding: .5rem 1rem; font-weight: 400; }
.duyuru a { color: inherit; text-decoration: none; }
.ust { position: sticky; top: 0; z-index: 40; background: rgba(16, 37, 31, .96); backdrop-filter: blur(8px); color: var(--krem); }
.ust-ic { display: flex; align-items: center; gap: 1.5rem; min-height: 70px; }
.marka { display: flex; align-items: center; gap: .6rem; color: var(--altin); text-decoration: none; }
.marka:hover { color: var(--altin-acik); }
.marka .lotus { width: 42px; height: 28px; }
.marka span { display: flex; flex-direction: column; line-height: 1; }
.marka b { font: 600 1.15rem/1 var(--sans); letter-spacing: .22em; }
.marka small { font-size: .62rem; letter-spacing: .5em; color: var(--krem); opacity: .8; margin-top: .3rem; }
.menu { display: flex; gap: 1.3rem; margin-inline-start: auto; align-items: center; }
.menu a { color: var(--krem); text-decoration: none; font-size: .93rem; opacity: .85; white-space: nowrap; }
.menu a:hover, .menu a[aria-current] { opacity: 1; color: var(--altin); }
.menu .dil { border: 1px solid rgba(207, 167, 94, .5); padding: .2rem .7rem; border-radius: 999px; }
.menu-grup { position: relative; }
.menu-grup .ok { font-size: .7em; opacity: .7; }
.alt-menu { position: absolute; top: 100%; inset-inline-start: -1.2rem; padding-top: 1.1rem; display: none; z-index: 45; }
.alt-menu::before { content: ""; position: absolute; inset: 1.1rem 0 0; background: var(--koyu); border: 1px solid #24453a; border-radius: 12px; box-shadow: var(--golge); z-index: -1; }
.menu-grup:hover .alt-menu, .menu-grup:focus-within .alt-menu { display: grid; grid-template-columns: repeat(2, minmax(190px, auto)); gap: 1rem 2rem; padding: 2.1rem 1.8rem 1.4rem; }
.alt-grup { display: grid; gap: .15rem; align-content: start; }
.alt-grup b { color: var(--altin); font: 500 .75rem var(--sans); letter-spacing: .18em; text-transform: uppercase; margin-bottom: .3rem; }
.alt-grup a { padding: .3rem 0; display: flex; justify-content: space-between; gap: 1rem; }
.alt-grup small { color: #8fa197; font-size: .78rem; }
.hesap-link { display: inline-flex; gap: .35rem; align-items: center; }
.menu-ac { display: none; background: none; border: 0; width: 44px; height: 44px; margin-inline-start: auto; cursor: pointer; flex-direction: column; justify-content: center; gap: 5px; padding: 10px; }
.menu-ac span { display: block; height: 2px; background: var(--krem); border-radius: 2px; transition: transform .2s, opacity .2s; }
.menu-ac[aria-expanded="true"] span:nth-child(1) { transform: translateY(7px) rotate(45deg); }
.menu-ac[aria-expanded="true"] span:nth-child(2) { opacity: 0; }
.menu-ac[aria-expanded="true"] span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }

/* Canlı seans rozeti */
.seans-rozet { position: sticky; top: 70px; z-index: 39; text-align: center; font-size: .9rem; padding: .45rem 1rem; background: var(--koyu-2); color: var(--krem); border-bottom: 1px solid #24453a; }
.seans-rozet::before { content: ""; display: inline-block; width: 8px; height: 8px; border-radius: 50%; margin-inline-end: .5rem; vertical-align: .1em; background: #4cc38a; box-shadow: 0 0 0 3px rgba(76, 195, 138, .2); }
.seans-rozet.rz-k::before { background: #e48fb0; box-shadow: 0 0 0 3px rgba(228, 143, 176, .25); }
.seans-rozet.rz-e::before { background: #7aa7e0; box-shadow: 0 0 0 3px rgba(122, 167, 224, .25); }

/* 360° sanal tur */
.tur-kutu { width: 100%; height: min(70vh, 620px); border-radius: var(--yaricap); overflow: hidden; background: var(--koyu); }
.tur-sahneler { display: flex; flex-wrap: wrap; gap: .5rem; margin-top: 1rem; }
.tur-sahneler button { border: 1px solid var(--cizgi); background: var(--beyaz); border-radius: 999px; padding: .5rem 1rem; font: inherit; cursor: pointer; }
.tur-sahneler button[aria-pressed="true"] { background: var(--koyu); color: var(--altin); border-color: var(--koyu); }

/* Ekip ve belgeler */
.ekip { display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 260px), 1fr)); gap: 1.5rem; }
.ekip-kart { background: var(--beyaz); border: 1px solid var(--cizgi); border-radius: var(--yaricap); padding: 1.6rem; text-align: center; }
.ekip-foto { width: 110px; height: 110px; border-radius: 50%; object-fit: cover; margin: 0 auto 1rem; }
.ekip-harf { width: 110px; height: 110px; border-radius: 50%; margin: 0 auto 1rem; display: grid; place-items: center; background: var(--koyu); color: var(--altin); font: 500 2.6rem var(--serif); }
.ekip-kart h3 { margin-bottom: .2rem; }
.ekip-kart .tikler { text-align: start; margin-top: 1rem; font-size: .93rem; }
.belgeler { display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 240px), 1fr)); gap: 1.5rem; }
.belge { margin: 0; background: var(--beyaz); border: 1px solid var(--cizgi); border-radius: var(--yaricap); padding: 1rem; }
.belge a { display: block; aspect-ratio: 3 / 4; overflow: hidden; border-radius: 8px; background: var(--krem-2); }
.belge img { width: 100%; height: 100%; object-fit: cover; }
.belge figcaption { padding-top: .8rem; }
.belge figcaption b { display: block; color: var(--koyu); }
.guven-linkler { display: flex; flex-wrap: wrap; gap: .5rem 1.6rem; }

/* Kahraman */
.kahraman { position: relative; min-height: min(88vh, 760px); display: grid; align-items: center; color: var(--krem); background: var(--koyu); overflow: hidden; isolation: isolate; }
.kahraman-resim { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; z-index: -2; }
.kahraman::after { content: ""; position: absolute; inset: 0; z-index: -1; background: linear-gradient(90deg, rgba(10, 26, 21, .9) 0%, rgba(10, 26, 21, .55) 55%, rgba(10, 26, 21, .25) 100%); }
[dir="rtl"] .kahraman::after { background: linear-gradient(270deg, rgba(10, 26, 21, .9) 0%, rgba(10, 26, 21, .55) 55%, rgba(10, 26, 21, .25) 100%); }
.kahraman-ic { padding: 6rem 0; }
.kahraman h1 { color: var(--krem); max-width: 14ch; }
.kahraman .giris { max-width: 540px; font-size: 1.12rem; color: #e6e2d4; }
.kahraman .ust-yazi { color: var(--altin); }
.durum { font-size: .9rem; display: flex; align-items: center; gap: .5rem; margin-top: 1.4rem; }
.durum::before { content: ""; width: 9px; height: 9px; border-radius: 50%; background: var(--soluk); }
.durum.acik::before { background: #4cc38a; box-shadow: 0 0 0 4px rgba(76, 195, 138, .2); }
.durum:empty { display: none; }

/* Sayfa başı */
.sayfa-bas { padding: clamp(3rem, 7vw, 5rem) 0 2.5rem; background: var(--krem); position: relative; isolation: isolate; }
.sayfa-bas-resimli { color: var(--krem); background: var(--koyu); padding: clamp(5rem, 12vw, 8rem) 0 3.5rem; }
.sayfa-bas-resimli .bas-resim { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; z-index: -2; }
.sayfa-bas-resimli::after { content: ""; position: absolute; inset: 0; z-index: -1; background: linear-gradient(0deg, rgba(10, 26, 21, .92), rgba(10, 26, 21, .55)); }
.sayfa-bas-resimli h1, .sayfa-bas-resimli .giris { color: var(--krem); }
.sayfa-bas-resimli .iz a, .sayfa-bas-resimli .ust-yazi { color: var(--altin); }
.giris { font-size: 1.12rem; }
.iz { font-size: .88rem; margin-bottom: 1.2rem; color: var(--soluk); }
.iz a { text-decoration: none; }
.filtre { display: flex; flex-wrap: wrap; gap: .5rem; margin-top: 1rem; }
.filtre a { padding: .35rem .95rem; border: 1px solid var(--cizgi); border-radius: 999px; text-decoration: none; color: var(--metin); font-size: .9rem; background: var(--beyaz); }
.filtre a[aria-current] { background: var(--koyu); color: var(--krem); border-color: var(--koyu); }

/* Kartlar */
.kartlar { display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 300px), 1fr)); gap: 1.5rem; }
.kart { display: flex; flex-direction: column; background: var(--beyaz); border: 1px solid var(--cizgi); border-radius: var(--yaricap); overflow: hidden; text-decoration: none; color: inherit; transition: transform .25s, box-shadow .25s, border-color .25s; }
a.kart:hover { transform: translateY(-4px); box-shadow: var(--golge); border-color: var(--altin); color: inherit; }
.kart-resim { aspect-ratio: 16 / 10; overflow: hidden; background: var(--krem-2); }
.kart-resim img { width: 100%; height: 100%; object-fit: cover; transition: transform .6s; }
a.kart:hover .kart-resim img { transform: scale(1.05); }
.kart-govde { padding: 1.4rem 1.5rem 1.6rem; display: flex; flex-direction: column; flex: 1; }
.kart-govde p { color: var(--soluk); font-size: .98rem; flex: 1; }
.kart-ust { font-size: .85rem; color: var(--altin-koyu); display: flex; gap: .35rem; align-items: center; margin-bottom: .5rem; }
.kart-ok { color: var(--altin-koyu); font-weight: 500; font-size: .92rem; }
[dir="rtl"] .kart-ok span, [dir="rtl"] .duyuru a { unicode-bidi: plaintext; }

/* Paketler */
.paketler { display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 320px), 1fr)); gap: 1.5rem; align-items: start; }
.paket { position: relative; background: var(--beyaz); border: 1px solid var(--cizgi); border-radius: var(--yaricap); overflow: hidden; }
.paket-vurgu { border: 2px solid var(--altin); box-shadow: var(--golge); }
.paket-resim { aspect-ratio: 16 / 9; object-fit: cover; width: 100%; }
.paket-govde { padding: 1.5rem; }
.paket .tikler { margin: 1rem 0 1.4rem; }
.fiyat { font: 600 1.6rem/1.2 var(--serif); color: var(--koyu); margin: .2rem 0; }
.fiyat s { color: var(--soluk); font-size: 1.1rem; font-weight: 400; margin-inline-end: .4rem; }
.fiyat .soluk { font: 400 1rem var(--sans); }
.rozet { position: absolute; top: 1rem; inset-inline-start: 1rem; z-index: 1; background: var(--altin); color: var(--koyu); font-size: .78rem; font-weight: 500; padding: .3rem .8rem; border-radius: 999px; letter-spacing: .04em; }

/* Mekân */
.mekan { display: grid; grid-template-columns: 1fr 1.1fr; gap: clamp(2rem, 5vw, 4rem); align-items: center; }
.ozellikler { list-style: none; padding: 0; margin: 2rem 0 0; display: grid; gap: 1.3rem; counter-reset: oz; }
.ozellikler li { display: grid; grid-template-columns: 2.6rem 1fr; gap: .2rem 1rem; counter-increment: oz; }
.ozellikler li::before { content: counter(oz, upper-roman); grid-row: span 2; font: 500 1.3rem var(--serif); color: var(--altin); border: 1px solid rgba(207, 167, 94, .4); border-radius: 50%; width: 2.6rem; height: 2.6rem; display: grid; place-items: center; }
.ozellikler span { color: #b8c2b9; font-size: .97rem; }
.galeri-mozaik { display: grid; grid-template-columns: 1fr 1fr; gap: .8rem; }
.galeri-mozaik img { width: 100%; height: 100%; object-fit: cover; border-radius: 12px; aspect-ratio: 4 / 3; }
.galeri-mozaik img:first-child { grid-column: span 2; aspect-ratio: 16 / 8; }

/* Size özen */
.mahremiyet { background: linear-gradient(180deg, var(--beyaz), var(--krem)); }
.mahremiyet-izgara { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 230px), 1fr)); gap: 1.2rem; margin: 2rem 0 1.5rem; }
.mahremiyet-izgara > div { border-top: 1px solid var(--altin); padding-top: 1rem; }
.mahremiyet-izgara b { font: 500 1.3rem var(--serif); color: var(--koyu); display: block; margin-bottom: .3rem; }
.mahremiyet-izgara p { color: var(--soluk); margin: 0; font-size: .97rem; }
.randevu-liste { list-style: none; padding: 0; margin: 0; }
.randevu-liste li { display: flex; justify-content: space-between; align-items: center; gap: 1rem; padding: .8rem 0; border-bottom: 1px solid var(--cizgi); flex-wrap: wrap; }
.randevu-liste form { margin: 0; }
.rozet-kucuk { font-size: .75rem; background: #e2f0e8; color: var(--tamam); padding: .1rem .5rem; border-radius: 99px; }

/* Hediye */
.hediye-serit { align-items: center; }
.yuvarlak { border-radius: 50% 50% 18px 18px; aspect-ratio: 4 / 4.4; object-fit: cover; max-width: 420px; width: 100%; margin-inline: auto; }

/* Yorumlar */
.yorumlar { display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 300px), 1fr)); gap: 1.4rem; }
.yorumlar-dikey { grid-template-columns: 1fr; }
.yorum { margin: 0; background: var(--beyaz); border: 1px solid var(--cizgi); border-radius: var(--yaricap); padding: 1.5rem; }
.yorum blockquote { margin: .6rem 0 1rem; font: italic 500 1.2rem/1.5 var(--serif); color: var(--koyu); }
.yorum figcaption { font-size: .9rem; color: var(--soluk); }
.yorum-cevap { margin: 1rem 0 0; padding: .8rem 1rem; background: var(--krem); border-radius: 10px; font-size: .92rem; }
.yildizlar { color: var(--altin); letter-spacing: .1em; }
.yildizlar span { color: var(--cizgi); }

/* SSS */
.sss details { border-bottom: 1px solid var(--cizgi); }
.sss summary { cursor: pointer; padding: 1.2rem 0; font: 500 1.25rem var(--serif); color: var(--koyu); list-style: none; display: flex; justify-content: space-between; gap: 1rem; }
.sss summary::-webkit-details-marker { display: none; }
.sss summary::after { content: "+"; color: var(--altin); font-size: 1.5rem; line-height: 1; transition: transform .2s; }
.sss details[open] summary::after { transform: rotate(45deg); }
.sss details p { color: var(--soluk); padding-bottom: 1.2rem; margin: 0; }

/* İki sütun, iletişim, form */
.iki-sutun { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(2rem, 5vw, 4rem); align-items: start; }
.hizmet-icerik { grid-template-columns: 1.4fr 1fr; }
.hizmet-icerik aside { position: sticky; top: 90px; }
.iletisim-liste { list-style: none; padding: 0; margin: 0 0 1.8rem; display: grid; gap: .9rem; }
.iletisim-liste li { display: flex; gap: .8rem; align-items: flex-start; }
.iletisim-liste .ikon { color: var(--altin-koyu); margin-top: .35rem; }
.iletisim-liste a { color: var(--metin); text-decoration: none; }
.iletisim-liste a:hover { color: var(--altin-koyu); }
.saatler { width: 100%; border-collapse: collapse; margin-bottom: 1.5rem; font-size: .97rem; }
.saatler caption { text-align: start; font: 500 1.2rem var(--serif); color: var(--koyu); margin-bottom: .4rem; }
.saatler th, .saatler td { padding: .55rem 0; border-bottom: 1px solid var(--cizgi); text-align: start; font-weight: 400; }
.saatler td { text-align: end; }
.seans-duzeni .saatler td { text-align: center; }
.seans-duzeni h3 { font-size: 1.2rem; }

.form { background: var(--beyaz); border: 1px solid var(--cizgi); border-radius: var(--yaricap); padding: clamp(1.4rem, 3vw, 2.2rem); box-shadow: var(--golge); display: grid; gap: 1rem; }
.form h3 { margin: 0; }
.form > .soluk { margin: -.4rem 0 .2rem; font-size: .95rem; }
.form label { display: grid; gap: .35rem; font-size: .9rem; font-weight: 400; color: var(--koyu); }
.form input, .form select, .form textarea { font: 400 1rem var(--sans); width: 100%; padding: .75rem .9rem; border: 1px solid var(--cizgi); border-radius: 10px; background: #fff; color: var(--metin); min-height: 48px; }
.form textarea { resize: vertical; min-height: 80px; }
.form input:focus, .form select:focus, .form textarea:focus { outline: none; border-color: var(--altin); box-shadow: 0 0 0 3px rgba(207, 167, 94, .25); }
.form .satir { display: grid; grid-template-columns: 1fr 1fr; gap: .8rem; }
.secenek-grup { border: 0; padding: 0; margin: 0; display: flex; flex-wrap: wrap; gap: .5rem 1rem; }
.secenek-grup legend { font-size: .9rem; margin-bottom: .4rem; width: 100%; color: var(--koyu); }
.secenek-grup label { display: flex; align-items: center; gap: .45rem; font-size: .95rem; color: var(--metin); }
.secenek-grup input, .onay input { width: 20px; height: 20px; min-height: 0; accent-color: var(--altin-koyu); flex: none; }
.onay { display: flex !important; grid-template-columns: none; align-items: flex-start; gap: .6rem; font-size: .85rem !important; color: var(--soluk) !important; }
.tuzak { position: absolute; left: -9999px; }
.puan-sec { border: 0; padding: 0; margin: 0; display: flex; flex-direction: row-reverse; justify-content: flex-end; gap: .2rem; }
.puan-sec legend { width: 100%; font-size: .9rem; color: var(--koyu); margin-bottom: .2rem; float: left; }
.puan-sec input { position: absolute; opacity: 0; width: 1px; }
.puan-sec label { font-size: 2rem; color: var(--cizgi); cursor: pointer; display: block; line-height: 1; }
.puan-sec input:checked ~ label, .puan-sec label:hover, .puan-sec label:hover ~ label { color: var(--altin); }
.puan-sec input:focus-visible + label { outline: 2px solid var(--altin); }
.bildirim { padding: .8rem 1rem; border-radius: 10px; font-size: .95rem; margin: 0; }
.bildirim-hata { background: #f8e6e2; color: var(--hata); }
.bildirim-tamam { background: #e2f0e8; color: var(--tamam); }

/* Online randevu */
.saat-secim { display: grid; gap: .45rem; }
.saat-secim .etiket { font-size: .9rem; color: var(--koyu); }
.saatler-izgara { display: grid; grid-template-columns: repeat(auto-fill, minmax(76px, 1fr)); gap: .45rem; }
.saatler-izgara p { grid-column: 1 / -1; margin: 0; }
.saat-kutu { position: relative; display: block !important; }
.saat-kutu input { position: absolute; opacity: 0; }
.saat-kutu span { display: block; text-align: center; padding: .6rem .2rem; border: 1px solid var(--cizgi); border-radius: 10px; background: #fff; cursor: pointer; font-size: .95rem; transition: all .15s; }
.saat-kutu input:checked + span { background: var(--koyu); color: var(--altin); border-color: var(--koyu); }
.saat-kutu input:focus-visible + span { outline: 2px solid var(--altin); outline-offset: 2px; }
.saat-kutu span:hover { border-color: var(--altin); }
.tamam-kutu { text-align: center; }
.tamam-ikon { width: 72px; height: 72px; border-radius: 50%; background: var(--koyu); color: var(--altin); display: grid; place-items: center; font-size: 2.2rem; margin: 0 auto 1rem; }
.ozet { display: grid; grid-template-columns: auto 1fr; gap: .5rem 1.2rem; text-align: start; background: var(--beyaz); border: 1px solid var(--cizgi); border-radius: var(--yaricap); padding: 1.2rem 1.4rem; margin: 1.5rem 0; }
.ozet dt { color: var(--soluk); font-size: .9rem; }
.ozet dd { margin: 0; }
.tamam-kutu .dugmeler { justify-content: center; }

/* Sağlık formu */
.saglik-form .soru { border: 0; border-bottom: 1px solid var(--cizgi); padding: 0 0 .8rem; margin: 0; display: grid; gap: .4rem; }
.saglik-form .soru legend { font-size: .98rem; color: var(--koyu); padding: 0; margin-bottom: .3rem; }
.evet-hayir { display: flex; gap: 1.2rem; }
.evet-hayir label { display: flex !important; align-items: center; gap: .4rem; font-size: .95rem; }
.evet-hayir input { width: 22px; height: 22px; min-height: 0; accent-color: var(--altin-koyu); }
.imza-alan { display: grid; gap: .4rem; justify-items: start; }
.imza-alan canvas { width: 100%; max-width: 600px; aspect-ratio: 600 / 220; background: #fff; border: 1.5px dashed var(--altin-koyu); border-radius: 10px; touch-action: none; }

/* Hava, test, seviye */
.duyuru-hava { background: var(--koyu-3); color: var(--krem); }
.duyuru-hava a { color: var(--krem); }
.test { background: var(--beyaz); border: 1px solid var(--cizgi); border-radius: var(--yaricap); padding: clamp(1.4rem, 3vw, 2.2rem); box-shadow: var(--golge); }
.test-ilerleme { height: 6px; background: var(--krem-2); border-radius: 99px; overflow: hidden; margin-bottom: 1.4rem; }
.test-ilerleme span { display: block; height: 100%; background: var(--altin); transition: width .3s; }
.test h2 { font-size: 1.7rem; }
.test-secenek { display: block; width: 100%; text-align: start; padding: 1rem 1.2rem; margin: .6rem 0; border: 1px solid var(--cizgi); border-radius: 12px; background: #fff; font: inherit; cursor: pointer; transition: all .15s; }
.test-secenek:hover, .test-secenek:focus-visible { border-color: var(--altin); background: var(--krem); }
.test-sonuc .kart { margin: 1rem 0; }
.seviye { display: flex; align-items: center; gap: 1rem; }
.seviye-rozet { width: 64px; height: 64px; border-radius: 50%; display: grid; place-items: center; font: 600 .85rem var(--sans); letter-spacing: .05em; color: #fff; flex: none; }
.sv-Bronz { background: linear-gradient(135deg, #b07a4a, #7a4f2c); }
.sv-Gümüş { background: linear-gradient(135deg, #c9ccd1, #8a8f97); color: #10251f; }
.sv-Altın { background: linear-gradient(135deg, #e4c98c, #9a7a3a); color: #10251f; }
.ozel-gun-form { display: grid; grid-template-columns: 1.4fr 1fr .7fr .7fr auto; gap: .5rem; align-items: end; }
.ozel-gun-form input, .ozel-gun-form select { padding: .6rem; border: 1px solid var(--cizgi); border-radius: 8px; font: inherit; min-width: 0; }
@media (max-width: 520px) { .ozel-gun-form { grid-template-columns: 1fr 1fr; } }

/* Metin içeriği */
.metin { font-size: 1.05rem; }
.metin h2 { font-size: 1.8rem; margin-top: 2.2rem; }
.tikler { list-style: none; padding: 0; margin: 0 0 1.2rem; display: grid; gap: .5rem; }
.tikler li { padding-inline-start: 1.7rem; position: relative; }
.tikler li::before { content: ""; position: absolute; inset-inline-start: 0; top: .62em; width: .8rem; height: .45rem; border-inline-start: 2px solid var(--altin-koyu); border-bottom: 2px solid var(--altin-koyu); transform: rotate(-45deg); }
[dir="rtl"] .tikler li::before { transform: rotate(45deg); }
.adimlar { counter-reset: ad; list-style: none; padding: 0; display: grid; gap: .9rem; margin: 0 0 1.4rem; }
.adimlar li { counter-increment: ad; position: relative; padding-inline-start: 2.8rem; min-height: 2rem; }
.adimlar li::before { content: counter(ad); position: absolute; inset-inline-start: 0; top: 0; width: 2rem; height: 2rem; border-radius: 50%; background: var(--krem-2); color: var(--altin-koyu); font: 600 1rem/2rem var(--serif); text-align: center; }
.adimlar-buyuk li { font-size: 1.1rem; }
.uyari { background: var(--krem); border-inline-start: 3px solid var(--altin); padding: 1rem 1.2rem; border-radius: 8px; font-size: .97rem; margin: 1.5rem 0; }

/* Galeri */
.galeri-izgara { display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 260px), 1fr)); gap: 1rem; }
.galeri-oge { display: block; border-radius: 12px; overflow: hidden; aspect-ratio: 1; }
.galeri-oge img { width: 100%; height: 100%; object-fit: cover; transition: transform .5s; }
.galeri-oge:hover img { transform: scale(1.05); }
.buyuk-gorsel { position: fixed; inset: 0; z-index: 90; background: rgba(6, 15, 12, .92); display: grid; place-items: center; padding: 1rem; cursor: zoom-out; }
.buyuk-gorsel img { max-height: 92vh; border-radius: 8px; }

/* Harita */
.harita { aspect-ratio: 4 / 3; background: var(--krem) center/cover; border-radius: var(--yaricap); display: grid; place-items: center; overflow: hidden; border: 1px solid var(--cizgi); }
.harita iframe { width: 100%; height: 100%; border: 0; }

/* Hesabım */
.hesap { display: grid; grid-template-columns: 1fr 1fr; gap: 1.5rem; }
.hesap-kutu { background: var(--beyaz); border: 1px solid var(--cizgi); border-radius: var(--yaricap); padding: 1.6rem; }
.hesap-kutu h2 { font-size: 1.6rem; }
.hesap-genis, .hesap > .orta { grid-column: 1 / -1; }
.hesap-paket { padding: 1rem 0; border-bottom: 1px solid var(--cizgi); }
.hesap-paket.pasif { opacity: .55; }
.hp-ust { display: flex; justify-content: space-between; gap: 1rem; align-items: baseline; }
.hp-kalan { font: 600 1.3rem var(--serif); color: var(--altin-koyu); white-space: nowrap; }
.cubuk { height: 8px; background: var(--krem-2); border-radius: 99px; overflow: hidden; margin: .6rem 0; }
.cubuk span { display: block; height: 100%; background: linear-gradient(90deg, var(--altin-koyu), var(--altin)); border-radius: inherit; }
.damgalar { display: flex; flex-wrap: wrap; gap: .5rem; margin: 1rem 0; }
.damga { width: 52px; height: 52px; border-radius: 50%; border: 1.5px dashed var(--cizgi); display: grid; place-items: center; color: var(--cizgi); }
.damga .lotus { width: 32px; }
.damga.dolu { border: 1.5px solid var(--altin); background: var(--koyu); color: var(--altin); }
.kod { font-family: ui-monospace, monospace; background: var(--krem); padding: .1rem .5rem; border-radius: 6px; letter-spacing: .1em; }
.tablo { width: 100%; border-collapse: collapse; font-size: .95rem; }
.tablo th, .tablo td { text-align: start; padding: .65rem .5rem; border-bottom: 1px solid var(--cizgi); }
.tablo th { font-weight: 500; color: var(--soluk); font-size: .85rem; }

/* Alt */
.alt { background: var(--koyu); color: #b8c2b9; padding: 4rem 0 7rem; font-size: .95rem; }
.alt-ic { display: grid; grid-template-columns: 1.3fr 1.2fr 1fr 1fr; gap: 2rem; }
.alt h3 { color: var(--krem); font-size: 1.2rem; }
.alt a { color: #dfe3da; text-decoration: none; }
.alt a:hover { color: var(--altin); }
.alt .marka { margin-bottom: 1rem; }
.duz { list-style: none; padding: 0; margin: 0; display: grid; gap: .4rem; }
.sosyal { display: flex; gap: .8rem; }
.sosyal a { width: 40px; height: 40px; border-radius: 50%; border: 1px solid #355a4d; display: grid; place-items: center; }
.telif { margin-top: 3rem; padding-top: 1.5rem; border-top: 1px solid #24453a; font-size: .85rem; }

/* Yüzen sohbet düğmeleri */
.yuzen { position: fixed; inset-inline-end: 18px; bottom: 22px; z-index: 50; display: grid; gap: .7rem; }
.yuzen a { width: 56px; height: 56px; border-radius: 50%; display: grid; place-items: center; color: #fff; box-shadow: 0 8px 22px -6px rgba(0, 0, 0, .4); transition: transform .2s; }
.yuzen a:hover { transform: scale(1.08); color: #fff; }
.yuzen .ikon { width: 28px; height: 28px; }
.yuzen-wa { background: var(--wa); }
.yuzen-ig { background: radial-gradient(circle at 30% 107%, #fdf497 0%, #fd5949 45%, #d6249f 60%, #285aeb 90%); width: 48px !important; height: 48px !important; justify-self: center; }
.mobil-cubuk { display: none; }

.ilk-ziyaret { position: fixed; inset-inline-start: 18px; bottom: 22px; z-index: 60; max-width: 340px; background: var(--koyu); color: var(--krem); padding: 1.3rem 1.4rem; border-radius: var(--yaricap); box-shadow: var(--golge); border: 1px solid var(--altin); }
.ilk-ziyaret p { margin: 0 0 .9rem; padding-inline-end: 1.2rem; }
.kapat { position: absolute; top: .4rem; inset-inline-end: .6rem; background: none; border: 0; color: var(--krem); font-size: 1.5rem; cursor: pointer; }
.cerez { position: fixed; inset-inline: 16px; bottom: 16px; z-index: 70; max-width: 560px; margin-inline: auto; background: var(--beyaz); border: 1px solid var(--cizgi); box-shadow: var(--golge); border-radius: var(--yaricap); padding: 1.1rem 1.3rem; font-size: .92rem; display: flex; gap: 1rem; align-items: center; flex-wrap: wrap; }
.cerez p { margin: 0; flex: 1 1 260px; }
.cerez div { display: flex; gap: .5rem; }

/* Yapay zekâ asistanı */
.asistan-ac { position: fixed; inset-inline-start: 18px; bottom: 22px; z-index: 55; display: flex; align-items: center; gap: .45rem; padding: .7rem 1.1rem .7rem .8rem; border: 1px solid var(--altin); border-radius: 999px; background: var(--koyu); color: var(--altin); font: 500 .95rem var(--sans); cursor: pointer; box-shadow: 0 8px 22px -6px rgba(0, 0, 0, .45); }
.asistan-ac svg { width: 26px; height: 26px; }
.asistan-ac.acik { opacity: .0; pointer-events: none; }
.asistan { position: fixed; inset-inline-start: 18px; bottom: 22px; z-index: 80; width: min(380px, calc(100vw - 24px)); height: min(600px, calc(100vh - 110px)); background: var(--beyaz); border: 1px solid var(--cizgi); border-radius: 18px; box-shadow: 0 20px 50px -12px rgba(8, 20, 16, .45); display: flex; flex-direction: column; overflow: hidden; }
.asistan[hidden] { display: none; }
.asistan-ust { display: flex; align-items: center; gap: .7rem; padding: .8rem 1rem; background: var(--koyu); color: var(--krem); }
.asistan-ust b { display: block; font-weight: 500; }
.asistan-ust small { opacity: .7; font-size: .78rem; }
.asistan-avatar { width: 38px; height: 38px; border-radius: 50%; border: 1px solid var(--altin); display: grid; place-items: center; color: var(--altin); flex: none; }
.asistan-avatar .lotus { width: 24px; }
.asistan-ust button { background: none; border: 0; color: var(--krem); font-size: 1.3rem; cursor: pointer; padding: .2rem .4rem; opacity: .8; }
.asistan-yeni { margin-inline-start: auto; font-size: 1.1rem !important; }
.asistan-akis { flex: 1; overflow-y: auto; padding: 1rem; display: flex; flex-direction: column; gap: .55rem; background: var(--krem); }
.as-balon { max-width: 85%; padding: .6rem .85rem; border-radius: 14px; font-size: .95rem; line-height: 1.5; white-space: pre-wrap; word-wrap: break-word; }
.as-a { background: #fff; border: 1px solid var(--cizgi); align-self: flex-start; border-end-start-radius: 4px; }
.as-k { background: var(--koyu); color: var(--krem); align-self: flex-end; border-end-end-radius: 4px; }
.as-balon .dugme { margin-top: .5rem; white-space: nowrap; }
.as-yaziyor { display: inline-flex; gap: 4px; }
.as-yaziyor i { width: 7px; height: 7px; border-radius: 50%; background: var(--altin); animation: as-nokta 1s infinite ease-in-out; }
.as-yaziyor i:nth-child(2) { animation-delay: .15s; } .as-yaziyor i:nth-child(3) { animation-delay: .3s; }
@keyframes as-nokta { 0%, 80%, 100% { opacity: .25; transform: translateY(0); } 40% { opacity: 1; transform: translateY(-3px); } }
.asistan-onay { padding: .9rem 1rem; border-top: 1px solid var(--cizgi); display: grid; gap: .6rem; }
.asistan-onay[hidden] { display: none; }
.as-uyar span { color: var(--hata) !important; }
.asistan-oneriler { display: flex; flex-wrap: wrap; gap: .4rem; padding: .6rem 1rem 0; background: var(--beyaz); }
.asistan-oneriler[hidden] { display: none; }
.asistan-oneriler button { border: 1px solid var(--altin); background: #fff; color: var(--altin-koyu); border-radius: 999px; padding: .35rem .75rem; font: inherit; font-size: .85rem; cursor: pointer; }
.asistan-form { display: flex; gap: .5rem; padding: .7rem 1rem; border-top: 1px solid var(--cizgi); }
.asistan-form[hidden] { display: none; }
.asistan-form input { flex: 1; min-width: 0; padding: .7rem .9rem; border: 1px solid var(--cizgi); border-radius: 999px; font: inherit; }
.asistan-form input:focus { outline: none; border-color: var(--altin); }
.asistan-form button { width: 44px; border: 0; border-radius: 50%; background: var(--altin); color: var(--koyu); font-size: 1.1rem; cursor: pointer; }
.asistan-alt { margin: 0; padding: 0 1rem .6rem; font-size: .72rem; color: var(--soluk); text-align: center; background: var(--beyaz); }
[dir="rtl"] .asistan-form button { transform: scaleX(-1); }
@media (max-width: 820px) {
  .asistan-ac { bottom: 84px; padding: .6rem .9rem .6rem .7rem; }
  .asistan-ac span { display: none; }
  .asistan { bottom: 76px; inset-inline-start: 12px; height: min(560px, calc(100vh - 150px)); }
  .ilk-ziyaret { bottom: 150px; }
}
@media (min-width: 821px) { .ilk-ziyaret { bottom: 90px; } }

/* Mobil */
@media (max-width: 1000px) {
  .seans-rozet { top: 70px; }
  .menu-ac { display: flex; }
  .menu { position: fixed; inset: 70px 0 auto; background: var(--koyu); flex-direction: column; align-items: stretch; gap: 0; padding: .5rem 16px 1.2rem; max-height: calc(100vh - 70px); overflow-y: auto; transform: translateY(-120%); transition: transform .3s; box-shadow: var(--golge); }
  .menu.acik { transform: none; }
  .menu a { padding: .9rem 0; border-bottom: 1px solid #24453a; font-size: 1.05rem; }
  .menu .dil { align-self: flex-start; margin-top: .8rem; border-bottom: 1px solid rgba(207, 167, 94, .5); padding: .3rem .9rem; }
  .ust-randevu { display: none; }
  .menu-grup > a { display: flex; justify-content: space-between; }
  .alt-menu, .menu-grup:hover .alt-menu, .menu-grup:focus-within .alt-menu { position: static; display: grid; grid-template-columns: 1fr; gap: .8rem; padding: .6rem 0 .8rem 1rem; }
  .alt-menu::before { display: none; }
  .alt-grup a { border-bottom: 0; padding: .45rem 0; font-size: .98rem; }
  .alt-ic { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 820px) {
  .mekan, .iki-sutun, .hizmet-icerik, .hesap { grid-template-columns: 1fr; }
  .hizmet-icerik aside { position: static; }
  .yuzen { bottom: 84px; }
  .mobil-cubuk { display: grid; grid-template-columns: 1fr 1fr 1.3fr; position: fixed; inset: auto 0 0; z-index: 50; background: var(--koyu); border-top: 1px solid #24453a; padding-bottom: env(safe-area-inset-bottom); }
  .mobil-cubuk a { display: flex; align-items: center; justify-content: center; gap: .4rem; color: var(--krem); text-decoration: none; padding: .95rem .5rem; font-size: .92rem; }
  .mobil-cubuk .vurgu { background: var(--altin); color: var(--koyu); font-weight: 500; }
  .ilk-ziyaret { bottom: 150px; inset-inline: 12px; max-width: none; }
  .cerez { bottom: 72px; }
  .kahraman { min-height: 78vh; }
  .kahraman::after { background: linear-gradient(0deg, rgba(10, 26, 21, .92) 10%, rgba(10, 26, 21, .45) 100%); }
}
@media (max-width: 520px) {
  body { font-size: 16px; }
  .form .satir { grid-template-columns: 1fr; }
  .alt-ic { grid-template-columns: 1fr; }
  .marka b { font-size: 1rem; letter-spacing: .18em; }
  .tablo { font-size: .85rem; }
}
@media (prefers-reduced-motion: reduce) { *, *::before, *::after { transition: none !important; animation: none !important; scroll-behavior: auto !important; } }

/* ===== Defne & Altın: görsel iyileştirmeler ===== */
:root { --altin-isil: linear-gradient(135deg, #f0dba6 0%, #cfa75e 45%, #a8823f 100%); --defne-desen: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160' viewBox='0 0 160 160'%3E%3Cg fill='none' stroke='%23cfa75e' stroke-opacity='.07' stroke-width='1.2'%3E%3Cpath d='M20 140 C 60 110, 100 60, 140 20'/%3E%3Cpath d='M48 112 c-10-18-6-34 6-40 c4 16 2 30-6 40z'/%3E%3Cpath d='M48 112 c18-6 34-2 40 10 c-16 4-30 2-40-10z'/%3E%3Cpath d='M80 80 c-10-18-6-34 6-40 c4 16 2 30-6 40z'/%3E%3Cpath d='M80 80 c18-6 34-2 40 10 c-16 4-30 2-40-10z'/%3E%3Cpath d='M112 48 c-10-18-6-34 6-40 c4 16 2 30-6 40z'/%3E%3Cpath d='M112 48 c18-6 34-2 40 10 c-16 4-30 2-40-10z'/%3E%3C/g%3E%3C/svg%3E"); }
body { background: var(--beyaz); }
.bolum-koyu, .alt, .ust { background-image: var(--defne-desen); background-size: 160px 160px; }
.ust { background-color: rgba(16, 37, 31, .94); transition: min-height .3s, background-color .3s, box-shadow .3s; }
.ust.kaydi { background-color: rgba(10, 26, 21, .98); box-shadow: 0 6px 24px -12px rgba(0, 0, 0, .6); }
.ust.kaydi .ust-ic { min-height: 58px; }
.ust-ic { transition: min-height .3s; }

/* Altın başlıklar ve ışıltı */
.kahraman h1, .bolum-koyu h2, .sayfa-bas-resimli h1 { background: linear-gradient(180deg, #fff8e8 0%, #f4efe3 55%, #e4c98c 100%); -webkit-background-clip: text; background-clip: text; color: transparent; }
.kahraman h1 em { font-style: italic; background: var(--altin-isil); -webkit-background-clip: text; background-clip: text; color: transparent; }
.ust-yazi { display: inline-flex; align-items: center; gap: .7rem; }
.ust-yazi::before { content: ""; width: 34px; height: 1px; background: var(--altin-isil); }
.marka b { background: var(--altin-isil); -webkit-background-clip: text; background-clip: text; color: transparent; }

/* Düğmeler: altın gradyan ve parıltı */
.dugme { background: var(--altin-isil); border-color: transparent; position: relative; overflow: hidden; box-shadow: 0 8px 20px -10px rgba(207, 167, 94, .7); }
.dugme::after { content: ""; position: absolute; top: 0; left: -60%; width: 40%; height: 100%; background: linear-gradient(100deg, transparent, rgba(255, 255, 255, .45), transparent); transform: skewX(-20deg); transition: left .6s; }
.dugme:hover::after { left: 120%; }
.dugme:hover { background: var(--altin-isil); filter: brightness(1.05); }
.dugme-cizgi { background: transparent; box-shadow: none; border-color: currentColor; }
.dugme-cizgi:hover { filter: none; }

/* Kahraman: sinematik yakınlaşma ve alttan yükselen içerik */
.kahraman-resim { animation: kenburns 22s ease-out both; transform-origin: 60% 40%; }
@keyframes kenburns { from { transform: scale(1.12); } to { transform: scale(1); } }
.kahraman::after { background: radial-gradient(ellipse at 75% 30%, rgba(207, 167, 94, .10), transparent 55%), linear-gradient(90deg, rgba(10, 26, 21, .93) 0%, rgba(10, 26, 21, .6) 55%, rgba(10, 26, 21, .25) 100%); }
.kahraman-ic > * { animation: yuksel .9s cubic-bezier(.2, .7, .2, 1) both; }
.kahraman-ic > *:nth-child(2) { animation-delay: .12s; } .kahraman-ic > *:nth-child(3) { animation-delay: .24s; } .kahraman-ic > *:nth-child(4) { animation-delay: .36s; } .kahraman-ic > *:nth-child(5) { animation-delay: .48s; }
@keyframes yuksel { from { opacity: 0; transform: translateY(24px); } to { opacity: 1; transform: none; } }
.kahraman::before { content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 1px; background: linear-gradient(90deg, transparent, rgba(207, 167, 94, .7), transparent); z-index: 1; }

/* Kaydırınca beliren bölümler (yalnızca JS çalışırsa gizlenir) */
.js .belir { opacity: 0; transform: translateY(28px); transition: opacity .8s cubic-bezier(.2, .7, .2, 1), transform .8s cubic-bezier(.2, .7, .2, 1); }
.js .belir.gorundu { opacity: 1; transform: none; }

/* Kartlar: altın çerçeve ışıltısı */
.kart, .paket, .yorum, .ekip-kart, .hesap-kutu { transition: transform .35s, box-shadow .35s, border-color .35s; }
a.kart:hover, .paket:hover, .ekip-kart:hover { transform: translateY(-6px); border-color: rgba(207, 167, 94, .8); box-shadow: 0 22px 40px -22px rgba(16, 37, 31, .55), 0 0 0 1px rgba(207, 167, 94, .25); }
.kart-resim { position: relative; }
.kart-resim::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, transparent 55%, rgba(16, 37, 31, .35)); opacity: 0; transition: opacity .35s; }
a.kart:hover .kart-resim::after { opacity: 1; }
.paket-vurgu { border-image: none; border-color: transparent; background: linear-gradient(var(--beyaz), var(--beyaz)) padding-box, var(--altin-isil) border-box; border: 2px solid transparent; }

/* Bölüm başlıklarına lotus süsü */
.bolum h2 + .bolum-giris::before, .sss-baslik::before { content: none; }
.susleme { display: flex; align-items: center; justify-content: center; gap: 1rem; color: var(--altin); margin: 0 auto 1.2rem; }
.susleme::before, .susleme::after { content: ""; flex: 0 1 90px; height: 1px; background: linear-gradient(90deg, transparent, var(--altin)); }
.susleme::after { background: linear-gradient(90deg, var(--altin), transparent); }
.susleme .lotus { width: 36px; height: 22px; }

/* Koyu bölümler ve alt bilgi */
.bolum-koyu { position: relative; }
.bolum-koyu::before { content: ""; position: absolute; left: 0; right: 0; top: 0; height: 1px; background: linear-gradient(90deg, transparent, rgba(207, 167, 94, .6), transparent); }
.alt { border-top: 1px solid rgba(207, 167, 94, .35); }
.galeri-mozaik img { transition: transform .6s, filter .6s; filter: saturate(.92); }
.galeri-mozaik img:hover { transform: scale(1.02); filter: saturate(1.05); }
.ozellikler li::before { background: rgba(207, 167, 94, .06); }

/* Açık bölümler: krem kağıt dokusu */
.bolum-acik { background: radial-gradient(ellipse at top left, rgba(207, 167, 94, .08), transparent 50%), var(--krem); }
.sayfa-bas:not(.sayfa-bas-resimli) { background: radial-gradient(ellipse at 85% 0%, rgba(207, 167, 94, .14), transparent 55%), var(--krem); }

@media (prefers-reduced-motion: reduce) {
  .kahraman-resim, .kahraman-ic > * { animation: none !important; }
  .js .belir { opacity: 1; transform: none; }
}

/* Harita: altın çerçeve + konum kartı */
.harita-cerceve { margin: 1.5rem 0 0; position: relative; border-radius: 18px; padding: 6px; background: var(--altin-isil); box-shadow: 0 24px 50px -28px rgba(16, 37, 31, .7); }
.harita-alan, .harita-cerceve iframe { display: block; width: 100%; aspect-ratio: 4 / 3; min-height: 280px; border: 0; border-radius: 13px; background: var(--krem-2); overflow: hidden; }
.harita-alan { position: relative; z-index: 0; font: inherit; }
.harita-alan .leaflet-tile-pane { filter: saturate(.7) sepia(.12) contrast(1.03); }
.harita-alan .leaflet-control-attribution { font-size: 10px; }
.ps-isaret { position: relative; }
.ps-pin { position: absolute; left: -11px; top: -30px; width: 22px; height: 22px; border-radius: 50% 50% 50% 0; transform: rotate(-45deg); background: var(--altin-isil, #cfa75e); border: 2px solid #10251f; box-shadow: 0 3px 8px rgba(0,0,0,.35); }
.ps-pin::after { content: ""; position: absolute; inset: 5px; border-radius: 50%; background: #10251f; }
.ps-etiket { position: absolute; left: 50%; top: -64px; transform: translateX(-50%); white-space: nowrap; padding: .3rem .75rem; border-radius: 999px; background: #10251f; color: #e9cf96; border: 1px solid #cfa75e; font: 600 .82rem/1.2 inherit; letter-spacing: .04em; box-shadow: 0 6px 14px -6px rgba(0,0,0,.5); }
.ps-etiket::after { content: ""; position: absolute; left: 50%; bottom: -5px; margin-left: -5px; border: 5px solid transparent; border-bottom: 0; border-top-color: #cfa75e; }
.ps-lejant { display: flex; align-items: center; gap: .45rem; padding: .3rem .6rem; border-radius: 8px; background: rgba(16, 37, 31, .88); color: #f4efe3; font-size: .74rem; letter-spacing: .03em; }
.ps-lejant i { width: 18px; height: 0; border-top: 3px dashed #cfa75e; }
.harita-cerceve figcaption { display: flex; align-items: center; gap: .8rem; flex-wrap: wrap; margin: 6px 0 0; padding: .9rem 1rem; border-radius: 13px; background: var(--koyu); background-image: var(--defne-desen); color: var(--krem); font-size: .92rem; }
.harita-cerceve figcaption b { color: var(--altin-acik); font-weight: 500; }
.harita-cerceve figcaption span:nth-child(2) { flex: 1 1 180px; }
.harita-pin { width: 40px; height: 40px; border-radius: 50%; display: grid; place-items: center; background: rgba(207, 167, 94, .15); color: var(--altin); flex: none; }
