/* =========================================================
   Klinik16 — site stili
   Palet: beyaz ağırlıklı, yeşil yalnızca vurgu.
   İmza öğe: "kemer" — üstü tam yuvarlak görsel çerçevesi (diş kemeri / kapı kemeri).
   ========================================================= */
:root {
    --murekkep: #1c2925;
    --soluk: #5b6b66;
    --cam: #2f7d5b;          /* ana yeşil — buton, link, ikon */
    --cam-acik: #3f9a72;
    --cam-koyu: #1d4d3a;     /* çam — altbilgi, üst bant */
    --nane: #eaf4ef;         /* nane tonu — bölüm zemini */
    --sis: #f5f7f6;
    --cizgi: #dbe5e0;
    --beyaz: #ffffff;
    --hata: #b3261e;

    --yazi: "Nunito Sans", "Segoe UI", system-ui, -apple-system, sans-serif;
    --baslik: "Sora", "Segoe UI", system-ui, sans-serif;

    --r-kucuk: 8px;
    --r: 14px;
    --r-buyuk: 22px;
    --kemer: 999px 999px 22px 22px;
    --kap: 1200px;
}

*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; -webkit-text-size-adjust: 100%; }
body {
    margin: 0;
    font-family: var(--yazi);
    font-size: 17px;
    line-height: 1.7;
    color: var(--murekkep);
    background: var(--beyaz);
    -webkit-font-smoothing: antialiased;
}
img { max-width: 100%; height: auto; display: block; }
a { color: var(--cam); text-decoration-thickness: 1px; text-underline-offset: 3px; }
a:hover { color: var(--cam-koyu); }
h1, h2, h3, h4 { font-family: var(--baslik); font-weight: 600; line-height: 1.25; margin: 0 0 .6em; color: var(--murekkep); letter-spacing: -.01em; }
h1 { font-size: clamp(2rem, 4.2vw, 3.05rem); font-weight: 700; letter-spacing: -.02em; }
h2 { font-size: clamp(1.45rem, 2.6vw, 1.95rem); }
h3 { font-size: 1.15rem; }
p { margin: 0 0 1em; }
:focus-visible { outline: 3px solid var(--cam-acik); outline-offset: 2px; border-radius: 4px; }

.kap { max-width: var(--kap); margin: 0 auto; padding: 0 20px; }
.atla { position: absolute; left: -999px; top: 8px; background: var(--beyaz); padding: 8px 14px; z-index: 100; }
.atla:focus { left: 8px; }
.gizli { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }

.ikon { width: 26px; height: 26px; flex: none; }

/* ---------- Düğmeler ---------- */
.dugme {
    display: inline-flex; align-items: center; justify-content: center; gap: .5em;
    font: 600 .98rem/1 var(--yazi);
    padding: .95em 1.5em; border-radius: 999px;
    border: 1.5px solid transparent; cursor: pointer; text-decoration: none;
    transition: background .2s, color .2s, border-color .2s;
}
.dugme-ana { background: var(--cam); color: var(--beyaz); }
.dugme-ana:hover { background: var(--cam-koyu); color: var(--beyaz); }
.dugme-cizgi { border-color: var(--cam); color: var(--cam); background: transparent; }
.dugme-cizgi:hover { background: var(--nane); color: var(--cam-koyu); }
.dugme-blok { width: 100%; }

/* ---------- Üst bant ---------- */
.ust-bant { background: var(--cam-koyu); color: rgba(255,255,255,.86); font-size: .88rem; }
.ust-bant-ic { display: flex; align-items: center; gap: 22px; min-height: 40px; flex-wrap: wrap; }
.ust-bant a { color: var(--beyaz); text-decoration: none; }
.ust-sube { color: rgba(255,255,255,.62); margin-right: 4px; }
.ust-bosluk { flex: 1; }
.sosyal { display: inline-flex; gap: 6px; }
.sosyal a { display: inline-grid; place-items: center; width: 32px; height: 32px; border-radius: 50%; color: inherit; }
.sosyal a:hover { background: rgba(255,255,255,.12); }
.sosyal svg { width: 18px; height: 18px; }

/* ---------- Başlık / menü ---------- */
.baslik { position: sticky; top: 0; z-index: 50; background: rgba(255,255,255,.97); border-bottom: 1px solid transparent; transition: border-color .2s; }
.baslik.golgeli { border-bottom-color: var(--cizgi); }
.baslik-ic { display: flex; align-items: center; gap: 24px; min-height: 84px; }
.logo img { height: 56px; width: auto; }
.ana-menu { display: flex; align-items: center; gap: 18px; margin-left: auto; }
.ana-menu > ul { display: flex; list-style: none; margin: 0; padding: 0; gap: 2px; }
.ana-menu > ul > li { position: relative; }
.ana-menu > ul > li > a, .acilir-dugme {
    display: block; padding: 10px 14px; border-radius: 999px;
    font: 600 .97rem/1.2 var(--yazi); color: var(--murekkep); text-decoration: none;
    background: none; border: 0; cursor: pointer;
}
.ana-menu > ul > li > a:hover, .acilir-dugme:hover, .ana-menu a.aktif { background: var(--nane); color: var(--cam-koyu); }
.acilir-dugme::after { content: ""; display: inline-block; width: 7px; height: 7px; margin-left: 8px; border-right: 1.6px solid currentColor; border-bottom: 1.6px solid currentColor; transform: translateY(-3px) rotate(45deg); }
.acilir-panel {
    position: absolute; top: calc(100% + 8px); left: 0; min-width: 260px;
    background: var(--beyaz); border: 1px solid var(--cizgi); border-radius: var(--r);
    padding: 10px; opacity: 0; visibility: hidden; transform: translateY(6px);
    transition: opacity .18s, transform .18s, visibility .18s;
    box-shadow: 0 18px 40px -22px rgba(29,77,58,.35);
}
.acilir-panel.genis { width: 620px; left: -160px; }
.acilir.acik .acilir-panel, .acilir:hover .acilir-panel, .acilir:focus-within .acilir-panel { opacity: 1; visibility: visible; transform: none; }
.acilir-panel ul { list-style: none; margin: 0; padding: 0; }
.acilir-panel a { display: flex; align-items: center; gap: 10px; padding: 9px 12px; border-radius: var(--r-kucuk); color: var(--murekkep); text-decoration: none; font-size: .95rem; line-height: 1.3; }
.acilir-panel a:hover { background: var(--nane); color: var(--cam-koyu); }
.menu-hizmetler { display: grid; grid-template-columns: 1fr 1fr; gap: 2px; }
.menu-hizmetler .ikon { width: 22px; height: 22px; color: var(--cam); }
.menu-dugme { display: none; }

/* ---------- Sayfa başlığı ---------- */
.sayfa-bas { background: var(--nane); padding: 42px 0 46px; }
.sayfa-bas h1 { margin: 6px 0 0; max-width: 22ch; }
.sayfa-bas p.ozet { margin: 14px 0 0; color: var(--soluk); max-width: 62ch; font-size: 1.05rem; }
.kirinti { font-size: .9rem; color: var(--soluk); }
.kirinti a { color: var(--soluk); text-decoration: none; }
.kirinti a:hover { color: var(--cam); }
.kirinti span[aria-hidden] { margin: 0 8px; opacity: .5; }

.bolum { padding: 88px 0; }
.bolum-nane { background: var(--nane); }
.bolum-sis { background: var(--sis); }
.bolum-bas { display: flex; align-items: end; justify-content: space-between; gap: 24px; margin-bottom: 38px; flex-wrap: wrap; }
.bolum-bas h2 { margin: 0; }
.bolum-bas p { margin: 8px 0 0; color: var(--soluk); max-width: 56ch; }

/* ---------- Kahraman (anasayfa) ---------- */
.kahraman { padding: 56px 0 40px; position: relative; overflow: hidden; }
.kahraman::before { /* yumuşak nane zemin — sağ tarafta kemer arkası */
    content: ""; position: absolute; right: -6%; top: 0; width: 52%; height: 88%;
    background: var(--nane); border-radius: 0 0 0 220px; z-index: -1;
}
.kahraman-ic { display: grid; grid-template-columns: 1.02fr .98fr; gap: 56px; align-items: center; }
.kahraman h1 { max-width: 15ch; }
.kahraman-alt { font-size: 1.12rem; color: var(--soluk); max-width: 46ch; margin: 18px 0 30px; }
.kahraman-dugmeler { display: flex; gap: 12px; flex-wrap: wrap; }
.kahraman-subeler { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 12px; margin-top: 38px; max-width: 520px; }
.kahraman-sube { border-left: 3px solid var(--cam); padding: 2px 0 2px 14px; }
.kahraman-sube strong { display: block; font-family: var(--baslik); font-weight: 600; font-size: .98rem; }
.kahraman-sube a { color: var(--murekkep); text-decoration: none; font-size: .98rem; }
.kahraman-sube a:hover { color: var(--cam); }

.kemer { border-radius: var(--kemer); overflow: hidden; background: var(--nane); }
.slayt { position: relative; aspect-ratio: 4 / 4.6; max-height: 600px; }
.slayt figure { margin: 0; position: absolute; inset: 0; opacity: 0; transition: opacity 1.1s ease; }
.slayt figure.aktif { opacity: 1; }
.slayt img { width: 100%; height: 100%; object-fit: cover; }
.slayt figcaption {
    position: absolute; left: 16px; right: 16px; bottom: 16px;
    background: rgba(255,255,255,.94); border-radius: var(--r); padding: 14px 18px; font-size: .95rem; line-height: 1.45;
}
.slayt figcaption strong { display: block; font-family: var(--baslik); font-weight: 600; font-size: 1.02rem; margin-bottom: 2px; }
.slayt figcaption a { text-decoration: none; color: inherit; }
.slayt-noktalar { display: flex; gap: 8px; justify-content: center; margin-top: 16px; }
.slayt-noktalar button { width: 9px; height: 9px; padding: 0; border-radius: 50%; border: 0; background: var(--cizgi); cursor: pointer; transition: width .25s, background .25s; }
.slayt-noktalar button.aktif { width: 26px; border-radius: 6px; background: var(--cam); }

/* Hızlı erişim şeridi */
.hizli { border-top: 1px solid var(--cizgi); border-bottom: 1px solid var(--cizgi); }
.hizli ul { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(4, 1fr); }
.hizli li + li { border-left: 1px solid var(--cizgi); }
.hizli a { display: flex; align-items: center; gap: 14px; padding: 24px 22px; text-decoration: none; color: var(--murekkep); font-family: var(--baslik); font-weight: 600; font-size: 1rem; line-height: 1.3; }
.hizli a:hover { background: var(--nane); color: var(--cam-koyu); }
.hizli .ikon { color: var(--cam); }
.hizli small { display: block; font-family: var(--yazi); font-weight: 400; color: var(--soluk); font-size: .88rem; }

/* ---------- Tedavi ızgarası ---------- */
.tedavi-izgara { display: grid; grid-template-columns: repeat(auto-fill, minmax(255px, 1fr)); gap: 16px; }
.tedavi {
    display: flex; flex-direction: column; gap: 10px;
    padding: 26px 24px; border: 1px solid var(--cizgi); border-radius: var(--r);
    background: var(--beyaz); color: var(--murekkep); text-decoration: none;
    transition: border-color .2s, background .2s;
}
.tedavi:hover { border-color: var(--cam); color: var(--murekkep); }
.tedavi .ikon-kutu { width: 50px; height: 50px; border-radius: 50%; background: var(--nane); color: var(--cam); display: grid; place-items: center; margin-bottom: 6px; }
.tedavi h3 { margin: 0; }
.tedavi p { margin: 0; color: var(--soluk); font-size: .95rem; line-height: 1.6; }
.tedavi .devam { margin-top: auto; padding-top: 8px; color: var(--cam); font-weight: 600; font-size: .92rem; }

/* ---------- Öne çıkanlar ---------- */
.one-kartlar { display: grid; grid-template-columns: repeat(3, 1fr); gap: 26px; }
.one-kart { display: flex; flex-direction: column; }
.one-kart .gorsel { border-radius: var(--r-buyuk); overflow: hidden; aspect-ratio: 4 / 3; background: var(--nane); margin-bottom: 18px; }
.one-kart .gorsel img { width: 100%; height: 100%; object-fit: cover; }
.one-kart p { color: var(--soluk); font-size: .97rem; }
.one-kart a.baglanti { font-weight: 600; text-decoration: none; margin-top: auto; }

.one-genis { display: grid; grid-template-columns: 1fr 1fr; gap: 56px; align-items: center; margin-top: 80px; }
.one-genis:nth-of-type(even) .gorsel { order: 2; }
.one-genis .gorsel { border-radius: var(--r-buyuk); overflow: hidden; aspect-ratio: 5 / 4; background: var(--nane); }
.one-genis .gorsel img { width: 100%; height: 100%; object-fit: cover; }
.one-genis p { color: var(--soluk); font-size: 1.05rem; }

/* ---------- Hekimler ---------- */
.hekim-izgara { display: grid; grid-template-columns: repeat(auto-fill, minmax(210px, 1fr)); gap: 30px 22px; }
.hekim-serit { display: grid; grid-auto-flow: column; grid-auto-columns: minmax(200px, 230px); gap: 22px; overflow-x: auto; scroll-snap-type: x mandatory; padding-bottom: 12px; scrollbar-width: thin; }
.hekim-serit > * { scroll-snap-align: start; }
.hekim { text-decoration: none; color: var(--murekkep); display: block; }
.hekim .kemer { aspect-ratio: 3 / 3.9; margin-bottom: 14px; position: relative; }
.hekim .kemer img { width: 100%; height: 100%; object-fit: cover; object-position: top center; transition: transform .5s; }
.hekim:hover .kemer img { transform: scale(1.03); }
.hekim .bas-harf { position: absolute; inset: 0; display: grid; place-items: center; font: 600 2.6rem var(--baslik); color: var(--cam); }
.hekim strong { display: block; font-family: var(--baslik); font-weight: 600; font-size: 1.05rem; line-height: 1.3; }
.hekim span { display: block; color: var(--soluk); font-size: .93rem; }
.hekim:hover strong { color: var(--cam); }

/* ---------- Galeri ---------- */
.galeri { display: grid; grid-template-columns: 1.4fr 1fr 1fr; gap: 16px; }
.galeri a { display: block; border-radius: var(--r); overflow: hidden; aspect-ratio: 4 / 3.2; background: var(--nane); }
.galeri a:first-child { grid-row: span 2; aspect-ratio: auto; }
.galeri img { width: 100%; height: 100%; object-fit: cover; transition: transform .5s; }
.galeri a:hover img { transform: scale(1.03); }

.isik-kutusu { position: fixed; inset: 0; background: rgba(15,30,24,.9); display: none; place-items: center; z-index: 200; padding: 24px; }
.isik-kutusu.acik { display: grid; }
.isik-kutusu img { max-height: 86vh; border-radius: var(--r); }
.isik-kutusu button { position: absolute; top: 18px; right: 18px; width: 46px; height: 46px; border-radius: 50%; border: 0; background: var(--beyaz); font-size: 26px; line-height: 1; cursor: pointer; }

/* ---------- Rehber (SEO içerik) ---------- */
.rehber { display: grid; grid-template-columns: 300px 1fr; gap: 56px; align-items: start; }
.rehber-yan { position: sticky; top: 110px; }
.rehber-yan p { color: var(--soluk); }
.rehber-metin { position: relative; max-height: 560px; overflow: hidden; }
.rehber-metin.acik { max-height: none; }
.rehber-metin:not(.acik)::after { content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 160px; background: linear-gradient(rgba(255,255,255,0), var(--beyaz)); }
.rehber-dugme { margin-top: 18px; }
.etiketler { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 30px; }
.etiketler span { font-size: .85rem; padding: 5px 12px; border-radius: 999px; background: var(--sis); color: var(--soluk); }

/* ---------- Yazı (içerik) tipografisi ---------- */
.yazi { max-width: 74ch; }
.yazi h2 { margin-top: 1.7em; font-size: 1.5rem; }
.yazi h3 { margin-top: 1.4em; }
.yazi > :first-child { margin-top: 0; }
.yazi ul, .yazi ol { padding-left: 1.3em; margin: 0 0 1.2em; }
.yazi li { margin-bottom: .35em; }
.yazi ul li::marker { color: var(--cam); }
.yazi ol li::marker { color: var(--cam); font-weight: 700; }
.yazi img { border-radius: var(--r); margin: 1.6em 0; }
.yazi .cols-2 { columns: 2; column-gap: 36px; }
.yazi .liste-link { list-style: none; padding: 0; }
.yazi .liste-link li { padding: 8px 0; border-bottom: 1px solid var(--cizgi); break-inside: avoid; }
.yazi .liste-link span { color: var(--soluk); font-size: .92rem; }
.yazi blockquote { margin: 1.4em 0; padding: 4px 0 4px 20px; border-left: 3px solid var(--cam); color: var(--soluk); }
.video-embed { position: relative; aspect-ratio: 16 / 9; border-radius: var(--r); overflow: hidden; margin: 1.6em 0; background: var(--sis); }
.video-embed iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }
.content-gallery { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; margin: 1.6em 0; }
.content-gallery img { margin: 0; aspect-ratio: 1; object-fit: cover; width: 100%; }

.icerik-duzen { display: grid; grid-template-columns: minmax(0, 1fr) 330px; gap: 64px; align-items: start; }
.kapak { border-radius: var(--r-buyuk); overflow: hidden; margin-bottom: 36px; aspect-ratio: 16 / 8; background: var(--nane); }
.kapak img { width: 100%; height: 100%; object-fit: cover; }

.yan { position: sticky; top: 110px; display: grid; gap: 20px; }
.yan-kutu { border: 1px solid var(--cizgi); border-radius: var(--r); padding: 22px; }
.yan-kutu h2 { font-size: 1.05rem; margin-bottom: 12px; }
.yan-liste { list-style: none; margin: 0; padding: 0; }
.yan-liste a { display: flex; align-items: center; gap: 10px; padding: 8px 10px; margin: 0 -10px; border-radius: var(--r-kucuk); text-decoration: none; color: var(--murekkep); font-size: .95rem; line-height: 1.35; }
.yan-liste a:hover, .yan-liste a.aktif { background: var(--nane); color: var(--cam-koyu); }
.yan-liste .ikon { width: 20px; height: 20px; color: var(--cam); }
.yan-randevu { background: var(--cam-koyu); color: rgba(255,255,255,.88); border-color: var(--cam-koyu); }
.yan-randevu h2 { color: var(--beyaz); }
.yan-randevu a.tel { display: block; color: var(--beyaz); text-decoration: none; font-family: var(--baslik); font-weight: 600; font-size: 1.1rem; }
.yan-randevu small { display: block; color: rgba(255,255,255,.6); font-size: .82rem; margin-top: 10px; }
.yan-randevu .dugme { margin-top: 18px; background: var(--beyaz); color: var(--cam-koyu); }
.yan-randevu .dugme:hover { background: var(--nane); }

/* ---------- Hekim detay ---------- */
.hekim-detay { display: grid; grid-template-columns: 340px 1fr; gap: 56px; align-items: start; }
.hekim-detay .kemer { aspect-ratio: 3 / 3.9; position: relative; }
.hekim-detay .kemer img { width: 100%; height: 100%; object-fit: cover; object-position: top center; }
.hekim-detay .unvan { color: var(--cam); font-weight: 600; margin: -4px 0 4px; }
.hekim-detay .sube { color: var(--soluk); }

/* ---------- SSS ---------- */
.sss { max-width: 820px; }
.sss details { border-bottom: 1px solid var(--cizgi); }
.sss summary { list-style: none; cursor: pointer; padding: 22px 44px 22px 0; position: relative; font-family: var(--baslik); font-weight: 600; font-size: 1.07rem; line-height: 1.4; }
.sss summary::-webkit-details-marker { display: none; }
.sss summary::after { content: ""; position: absolute; right: 8px; top: 50%; width: 12px; height: 12px; border-right: 2px solid var(--cam); border-bottom: 2px solid var(--cam); transform: translateY(-70%) rotate(45deg); transition: transform .2s; }
.sss details[open] summary::after { transform: translateY(-30%) rotate(-135deg); }
.sss details[open] summary { color: var(--cam-koyu); }
.sss .cevap { padding: 0 0 22px; color: var(--soluk); max-width: 70ch; }

/* ---------- Formlar ---------- */
.form { display: grid; grid-template-columns: 1fr 1fr; gap: 16px 18px; }
.form .tam { grid-column: 1 / -1; }
.alan label { display: block; font-weight: 600; font-size: .92rem; margin-bottom: 6px; }
.alan label em { font-style: normal; color: var(--soluk); font-weight: 400; }
.alan input[type=text], .alan input[type=tel], .alan input[type=email], .alan input[type=date], .alan select, .alan textarea {
    width: 100%; font: inherit; font-size: 1rem; color: var(--murekkep);
    padding: 13px 15px; border: 1.5px solid var(--cizgi); border-radius: var(--r-kucuk); background: var(--beyaz);
    transition: border-color .15s;
}
.alan textarea { min-height: 120px; resize: vertical; }
.alan input:focus, .alan select:focus, .alan textarea:focus { outline: none; border-color: var(--cam); }
.onay { display: flex; gap: 10px; align-items: flex-start; font-size: .9rem; color: var(--soluk); line-height: 1.5; }
.onay input { margin-top: 4px; accent-color: var(--cam); width: 18px; height: 18px; flex: none; }
.bal-kupu { position: absolute; left: -5000px; }
.form-mesaj { padding: 14px 18px; border-radius: var(--r-kucuk); margin-bottom: 18px; font-size: .95rem; }
.form-mesaj.hata { background: #fbeceb; color: var(--hata); }
.form-mesaj.basari { background: var(--nane); color: var(--cam-koyu); }
.form-tesekkur { padding: 34px; border-radius: var(--r); background: var(--nane); }
.form-tesekkur h3 { color: var(--cam-koyu); }

.randevu-duzen { display: grid; grid-template-columns: 1.15fr .85fr; gap: 56px; align-items: start; }
.form-kutu { background: var(--beyaz); border: 1px solid var(--cizgi); border-radius: var(--r-buyuk); padding: 34px; }

/* ---------- Şubeler ---------- */
.subeler { display: grid; gap: 18px; }
.sube-kart { border: 1px solid var(--cizgi); border-radius: var(--r); overflow: hidden; background: var(--beyaz); }
.sube-kart .bilgi { padding: 22px 24px; }
.sube-kart h3 { margin-bottom: 6px; }
.sube-kart p { margin: 0 0 8px; color: var(--soluk); font-size: .96rem; }
.sube-kart .tel a { display: inline-block; margin-right: 16px; font-weight: 600; text-decoration: none; }
.sube-kart iframe { display: block; width: 100%; height: 230px; border: 0; }
.subeler-iki { grid-template-columns: 1fr 1fr; }
.subeler-iki iframe { height: 320px; }

/* ---------- Anlaşmalı kurumlar ---------- */
.kurum-izgara { display: grid; grid-template-columns: repeat(auto-fill, minmax(190px, 1fr)); gap: 16px; }
.kurum { border: 1px solid var(--cizgi); border-radius: var(--r); padding: 22px; text-align: center; display: grid; gap: 12px; align-content: center; min-height: 150px; }
.kurum img { max-height: 64px; width: auto; margin: 0 auto; object-fit: contain; }
.kurum strong { font-size: .95rem; line-height: 1.35; }
.bos-durum { padding: 40px; border-radius: var(--r); background: var(--sis); max-width: 720px; }
.bos-durum h2 { font-size: 1.25rem; }

/* ---------- Site haritası ---------- */
.harita-sutun { columns: 3 240px; column-gap: 40px; }
.harita-sutun section { break-inside: avoid; margin-bottom: 30px; }
.harita-sutun ul { list-style: none; padding: 0; margin: 0; }
.harita-sutun li { padding: 5px 0; }

/* ---------- Altbilgi ---------- */
.altbilgi { background: var(--cam-koyu); color: rgba(255,255,255,.78); margin-top: 0; font-size: .95rem; }
.altbilgi a { color: var(--beyaz); text-decoration: none; }
.altbilgi a:hover { text-decoration: underline; }
.altbilgi-ust { display: grid; grid-template-columns: 1.1fr 1.3fr .9fr; gap: 56px; padding-top: 72px; padding-bottom: 56px; }
.altbilgi-logo { height: 50px; width: auto; background: var(--beyaz); padding: 8px 12px; border-radius: 10px; margin-bottom: 18px; }
.altbilgi-baslik { color: var(--beyaz); font-size: 1rem; margin-bottom: 18px; }
.altbilgi-sube { margin-bottom: 18px; }
.altbilgi-sube h3 { color: var(--beyaz); font-size: .95rem; margin-bottom: 4px; }
.altbilgi-sube p { margin: 0 0 4px; }
.altbilgi-tel a { margin-right: 14px; }
.altbilgi-linkler ul { list-style: none; margin: 0; padding: 0; }
.altbilgi-linkler li { padding: 3px 0; }
.altbilgi .sosyal { margin-top: 8px; }
.altbilgi-alt { border-top: 1px solid rgba(255,255,255,.12); padding-top: 20px; padding-bottom: 24px; font-size: .85rem; color: rgba(255,255,255,.55); }

.mobil-eylem { display: none; }

/* ---------- 404 ---------- */
.bulunamadi { text-align: left; padding: 90px 0; }
.bulunamadi .kod { font: 700 5rem/1 var(--baslik); color: var(--nane); -webkit-text-stroke: 1.5px var(--cam); }

/* =================== Duyarlı =================== */
@media (max-width: 1080px) {
    .acilir-panel.genis { width: 540px; left: -120px; }
    .icerik-duzen { grid-template-columns: 1fr; }
    .yan { position: static; grid-template-columns: 1fr 1fr; }
    .rehber { grid-template-columns: 1fr; gap: 20px; }
    .rehber-yan { position: static; }
    .altbilgi-ust { grid-template-columns: 1fr 1fr; }
    .altbilgi-marka { grid-column: 1 / -1; }
}

@media (max-width: 960px) {
    .menu-dugme {
        display: inline-flex; flex-direction: column; justify-content: center; gap: 5px;
        margin-left: auto; width: 46px; height: 46px; padding: 0 11px; border: 1px solid var(--cizgi); border-radius: 12px; background: var(--beyaz); cursor: pointer;
    }
    .menu-dugme span { display: block; height: 2px; background: var(--murekkep); border-radius: 2px; transition: transform .2s, opacity .2s; }
    .menu-dugme em { position: absolute; left: -9999px; }
    .menu-dugme[aria-expanded=true] span:nth-child(1) { transform: translateY(7px) rotate(45deg); }
    .menu-dugme[aria-expanded=true] span:nth-child(2) { opacity: 0; }
    .menu-dugme[aria-expanded=true] span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }

    .ana-menu {
        position: fixed; left: 0; right: 0; top: var(--baslik-alt, 84px); bottom: 0;
        background: var(--beyaz); flex-direction: column; align-items: stretch; gap: 0;
        padding: 12px 20px 100px; overflow-y: auto; display: none; margin: 0;
    }
    .ana-menu.acik { display: flex; }
    .ana-menu > ul { flex-direction: column; gap: 0; }
    .ana-menu > ul > li { border-bottom: 1px solid var(--cizgi); }
    .ana-menu > ul > li > a, .acilir-dugme { padding: 16px 4px; border-radius: 0; width: 100%; text-align: left; font-size: 1.05rem; }
    .ana-menu > ul > li > a:hover, .acilir-dugme:hover { background: none; }
    .acilir-dugme { display: flex; justify-content: space-between; align-items: center; }
    .acilir-panel, .acilir-panel.genis { position: static; width: auto; opacity: 1; visibility: visible; transform: none; box-shadow: none; border: 0; padding: 0 0 12px; display: none; }
    .acilir:hover .acilir-panel { display: none; }
    .acilir.acik .acilir-panel { display: block; }
    .menu-hizmetler { grid-template-columns: 1fr; }
    .menu-randevu { margin-top: 20px; }

    .kahraman-ic { grid-template-columns: 1fr; gap: 36px; }
    .kahraman::before { width: 100%; right: 0; top: 46%; height: 54%; border-radius: 120px 120px 0 0; }
    .kahraman h1 { max-width: none; }
    .slayt { aspect-ratio: 4 / 4.2; }
    .hizli ul { grid-template-columns: 1fr 1fr; }
    .hizli li:nth-child(3) { border-left: 0; }
    .hizli li:nth-child(n+3) { border-top: 1px solid var(--cizgi); }
    .one-kartlar { grid-template-columns: 1fr 1fr; }
    .one-genis { grid-template-columns: 1fr; gap: 26px; margin-top: 56px; }
    .one-genis:nth-of-type(even) .gorsel { order: 0; }
    .randevu-duzen { grid-template-columns: 1fr; }
    .hekim-detay { grid-template-columns: 1fr; }
    .hekim-detay .kemer { max-width: 320px; }
    .subeler-iki { grid-template-columns: 1fr; }
}

@media (max-width: 760px) {
    body { font-size: 16px; padding-bottom: 64px; }
    .ust-bant { display: none; }
    .baslik-ic { min-height: 70px; }
    .logo img { height: 46px; }
    .bolum { padding: 60px 0; }
    .kahraman { padding-top: 32px; }
    .kahraman-subeler { grid-template-columns: 1fr 1fr; gap: 10px; }
    .one-kartlar { grid-template-columns: 1fr; }
    .galeri { grid-template-columns: 1fr 1fr; }
    .galeri a:first-child { grid-column: 1 / -1; grid-row: auto; aspect-ratio: 16 / 10; }
    .form { grid-template-columns: 1fr; }
    .form-kutu { padding: 22px; }
    .yan { grid-template-columns: 1fr; }
    .yazi .cols-2 { columns: 1; }
    .content-gallery { grid-template-columns: 1fr 1fr; }
    .altbilgi-ust { grid-template-columns: 1fr; gap: 34px; padding-top: 52px; }

    .mobil-eylem {
        display: grid; grid-auto-flow: column; grid-auto-columns: 1fr;
        position: fixed; left: 0; right: 0; bottom: 0; z-index: 60;
        background: var(--beyaz); border-top: 1px solid var(--cizgi);
    }
    .mobil-eylem a { display: flex; align-items: center; justify-content: center; gap: 6px; padding: 14px 6px calc(14px + env(safe-area-inset-bottom)); font-weight: 600; font-size: .92rem; text-decoration: none; color: var(--cam-koyu); }
    .mobil-eylem a + a { border-left: 1px solid var(--cizgi); }
    .mobil-eylem svg { width: 17px; height: 17px; fill: var(--cam); }
    .mobil-eylem .mobil-randevu { background: var(--cam); color: var(--beyaz); }
}

@media (prefers-reduced-motion: reduce) {
    *, *::before, *::after { transition: none !important; animation: none !important; scroll-behavior: auto !important; }
}

/* Anasayfa: vitrinde olmayan tedaviler */
.diger-tedaviler { margin: 28px 0 0; color: var(--soluk); font-size: .97rem; max-width: 90ch; }
.diger-tedaviler a { font-weight: 600; }

/* Editörden gelen video (Quill) */
.yazi iframe.ql-video { width: 100%; aspect-ratio: 16 / 9; height: auto; border: 0; border-radius: var(--r); margin: 1.6em 0; }
.yazi .ql-align-center { text-align: center; }
.yazi .ql-align-right { text-align: right; }
