/* ==========================================================================
   DİŞ KLİNİĞİ — ağız ve diş sağlığı polikliniği teması (17 Eki 2026)
   --------------------------------------------------------------------------
   GÖRSEL DÜNYA: sakin ve güven veren bir bekleme salonu. Yuvarlak hatlı
   Urbanist (OFL, gömülü; harici istek yok) — 18 Eki: kullanıcı referansı Salute'ye çevrildi,
   okyanus mavisi eylem rengi, nane koyusu ikon vurgusu, bol yuvarlak köşe.

   MEVZUAT: Sağlık hizmetlerinde tanıtım kurallarına uygun dil — önce/sonra
   fotoğrafı, hasta yorumu, fiyat/indirim, "garanti", "ağrısız" ya da "en iyi"
   gibi vaatler YOK. Mesul müdür ve hekimlerin uzmanlık bilgisi görünür.
   Randevu formunda KVKK onayından AYRI sağlık verisi açık rızası (özel
   nitelikli kişisel veri).

   AYIRT EDİCİ: uzmanlığa göre hekim filtresi, implant süreç zaman çizelgesi.

   YASAKLI DESENLER (Tuna Creative tema denetimi): kenarlıklı + yuvarlak kart
   ızgarası, harf rozetleri, degrade hero, dekoratif ızgara zemini, tek yanda
   kalın renkli kenarlık, altı eşit ağırlıklı kart. Tek tema: AÇIK.
   ========================================================================== */
@font-face { font-family: 'Urbanist'; font-weight: 400; font-display: swap; src: url('../fonts/urbanist-latin-400-normal.woff2') format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: 'Urbanist'; font-weight: 400; font-display: swap; src: url('../fonts/urbanist-latin-ext-400-normal.woff2') format('woff2'); unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+1E00-1E9F, U+20A0-20AB, U+20AD-20C0, U+2C60-2C7F, U+A720-A7FF; }
@font-face { font-family: 'Urbanist'; font-weight: 700; font-display: swap; src: url('../fonts/urbanist-latin-700-normal.woff2') format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: 'Urbanist'; font-weight: 700; font-display: swap; src: url('../fonts/urbanist-latin-ext-700-normal.woff2') format('woff2'); unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+1E00-1E9F, U+20A0-20AB, U+20AD-20C0, U+2C60-2C7F, U+A720-A7FF; }

:root {
    --t-ink: #132573;           /* beyazda 15:1 */
    --t-ink-soft: #4b5677;      /* beyazda 6.4:1 */
    --t-paper: #ffffff;
    --t-mint: #f5f5f5;          /* çok açık nane — bölüm zemini */
    --t-mint-2: #e6f1f7;
    --t-rule: #dfe8ec;
    --t-rule-strong: #bccad3;
    --t-blue: #132573;          /* okyanus mavisi — beyaz yazıyla 6.9:1 */
    --t-blue-dark: #0c1852;
    --t-blue-tint: #e6f1f7;
    --t-teal: #132573;          /* nane koyu — ikon ve küçük vurgu, beyazda 5.4:1 */
    --t-on-blue: #eef4fb;
    --t-on-blue-soft: #bcd0e6;

    --t-font: Helvetica, Arial, system-ui, sans-serif;
    --t-baslik: 'Urbanist', Helvetica, Arial, sans-serif;
    --t-mercan: #ff8d8d;
    --t-container: 1200px;
    --t-gutter: clamp(1.25rem, 4vw, 2.5rem);
    --t-section: clamp(4rem, 3rem + 4vw, 7rem);
    --t-radius: 0px;
    --t-ease: cubic-bezier(.2, .8, .2, 1);
    --t-fast: 160ms;
    --t-mid: 320ms;
}

*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; scroll-behavior: smooth; }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }
body { margin: 0; background: var(--t-paper); color: var(--t-ink); font: 400 1.0625rem/1.7 var(--t-font); -webkit-font-smoothing: antialiased; }
img { max-width: 100%; height: auto; display: block; }
a { color: inherit; }
h1, h2, h3 { margin: 0; font-family: var(--t-baslik); font-weight: 700; letter-spacing: -0.01em; color: var(--t-ink); }
h1 { font-size: clamp(2.4rem, 1.6rem + 3.4vw, 4rem); line-height: 1.1; }
h2 { font-size: clamp(1.9rem, 1.4rem + 2vw, 2.8rem); line-height: 1.15; }
h3 { font-size: 1.25rem; line-height: 1.3; font-weight: 700; }
p { margin: 0 0 1em; }
:focus-visible { outline: 3px solid var(--t-blue); outline-offset: 3px; border-radius: 0; }

.t-container { width: 100%; max-width: var(--t-container); margin-inline: auto; padding-inline: var(--t-gutter); }
.t-section { padding-block: var(--t-section); }
.t-section--mint { background: var(--t-mint); }
.t-skip { position: absolute; left: -999px; top: 0; z-index: 100; background: var(--t-blue); color: #fff; padding: .75rem 1rem; }
.t-skip:focus { left: 1rem; top: 1rem; }
.t-vh { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.t-pill { display: inline-flex; align-items: center; gap: .5rem; padding: .4rem .9rem; border-radius: 0; background: var(--t-mint); color: var(--t-teal); font-weight: 700; font-size: .88rem; margin-bottom: 1.1rem; }
.t-pill svg { width: 18px; height: 18px; flex: 0 0 auto; }
.t-section--mint .t-pill { background: #fff; }
.t-lead { font-size: clamp(1.1rem, 1rem + .35vw, 1.25rem); color: var(--t-ink-soft); max-width: 36rem; }
.t-head { max-width: 42rem; margin-bottom: clamp(2rem, 4vw, 3rem); }
.t-head h2 { margin-bottom: .8rem; }
.t-head p { margin: 0; color: var(--t-ink-soft); }
.t-head--center { margin-inline: auto; text-align: center; }
.t-headrow { display: flex; justify-content: space-between; align-items: end; gap: 1.25rem 2rem; flex-wrap: wrap; margin-bottom: clamp(2rem, 4vw, 3rem); }

.t-btn { display: inline-flex; align-items: center; justify-content: center; gap: .55rem; min-height: 52px; padding: .8rem 1.6rem; border-radius: 0; background: var(--t-blue); color: #fff; border: 2px solid var(--t-blue); font: 700 1rem/1.1 var(--t-font); text-decoration: none; cursor: pointer; transition: background var(--t-fast) var(--t-ease), color var(--t-fast), border-color var(--t-fast); }
.t-btn:hover { background: var(--t-blue-dark); border-color: var(--t-blue-dark); }
.t-btn--line { background: #fff; color: var(--t-ink); border-color: var(--t-rule-strong); }
.t-btn--line:hover { border-color: var(--t-blue); color: var(--t-blue); background: #fff; }
.t-btn--light { background: #fff; color: var(--t-blue-dark); border-color: #fff; }
.t-btn--light:hover { background: var(--t-blue-tint); border-color: var(--t-blue-tint); }
.t-arrow { transition: transform var(--t-fast) var(--t-ease); }
a:hover .t-arrow { transform: translateX(4px); }
.t-link { color: var(--t-blue); font-weight: 700; text-decoration: none; }
.t-link:hover { text-decoration: underline; text-underline-offset: 4px; }

/* ---- Üst şerit + başlık ------------------------------------------- */
.t-topbar { background: var(--t-mint); font-size: .9rem; color: var(--t-ink-soft); }
.t-topbar .t-container { display: flex; justify-content: space-between; gap: 1rem; padding-block: .5rem; }
.t-topbar a { color: var(--t-ink); font-weight: 700; text-decoration: none; }
.t-header { position: sticky; top: 0; z-index: 50; background: rgba(255, 255, 255, .96); backdrop-filter: blur(8px); border-bottom: 1px solid var(--t-rule); }
.t-header__inner { display: flex; align-items: center; gap: 1.75rem; min-height: 76px; }
.t-logo { margin-right: auto; display: flex; align-items: center; gap: .6rem; text-decoration: none; }
.t-logo__mark { display: grid; place-items: center; width: 42px; height: 42px; border-radius: 0; background: var(--t-blue); color: #fff; }
.t-logo__mark svg { width: 24px; height: 24px; }
.t-logo b { display: block; font: 800 1.3rem/1.05 var(--t-font); }
.t-logo small { display: block; font-size: .76rem; color: var(--t-ink-soft); }
.t-nav__list { display: flex; gap: 1.6rem; list-style: none; margin: 0; padding: 0; }
.t-nav a { text-decoration: none; font-weight: 600; color: var(--t-ink-soft); padding-block: .5rem; }
.t-nav a:hover, .t-nav a[aria-current="page"] { color: var(--t-ink); }
.t-nav a[aria-current="page"] { color: var(--t-blue); }
.t-header .t-btn { min-height: 46px; padding: .6rem 1.3rem; }
.t-burger { display: none; width: 48px; height: 48px; border: 0; border-radius: 0; background: var(--t-mint); cursor: pointer; padding: 0; }
.t-burger span { display: block; width: 20px; height: 2px; margin: 4px auto; background: var(--t-ink); border-radius: 0; transition: transform var(--t-fast) var(--t-ease), opacity var(--t-fast); }
.t-burger[aria-expanded="true"] span:nth-child(1) { transform: translateY(6px) rotate(45deg); }
.t-burger[aria-expanded="true"] span:nth-child(2) { opacity: 0; }
.t-burger[aria-expanded="true"] span:nth-child(3) { transform: translateY(-6px) rotate(-45deg); }

/* ---- Hero ---------------------------------------------------------- */
.t-hero { padding-block: clamp(2.5rem, 2rem + 3vw, 4.5rem) clamp(3.5rem, 5vw, 5.5rem); }
.t-hero__grid { display: grid; grid-template-columns: 1.05fr .95fr; gap: clamp(2rem, 5vw, 4.5rem); align-items: center; }
.t-hero h1 { margin-bottom: 1.25rem; }
.t-hero h1 span { color: var(--t-blue); }
.t-hero .t-lead { margin-bottom: 2rem; }
.t-actions { display: flex; flex-wrap: wrap; gap: .75rem; }
.t-hero__media { position: relative; }
.t-hero__media::before { content: ''; position: absolute; inset: 6% -5% -5% 8%; border-radius: 0; background: var(--t-mint); }
.t-hero__media .t-photo { position: relative; aspect-ratio: 4 / 5; border-radius: 0; }
.t-float { position: absolute; left: -1.5rem; bottom: 2rem; display: flex; gap: .85rem; align-items: center; padding: 1rem 1.2rem; border-radius: 0; background: #fff; box-shadow: 0 24px 50px -24px rgba(21, 37, 58, .35); max-width: 280px; }
.t-float__icon { flex: 0 0 auto; display: grid; place-items: center; width: 44px; height: 44px; border-radius: 0; background: var(--t-mint); color: var(--t-teal); }
.t-float__icon svg { width: 24px; height: 24px; }
.t-float b { display: block; font-size: 1rem; }
.t-float span { font-size: .88rem; color: var(--t-ink-soft); }
.t-facts { display: flex; flex-wrap: wrap; gap: 1rem 2.25rem; list-style: none; margin: 2.25rem 0 0; padding: 0; }
.t-facts b { display: block; font-size: 1.5rem; font-weight: 800; }
.t-facts span { font-size: .9rem; color: var(--t-ink-soft); }

.t-photo { overflow: hidden; border-radius: 0; background: #d5e3e8; }
.t-photo img { width: 100%; height: 100%; object-fit: cover; }

/* ---- Tedaviler (hiyerarşili) --------------------------------------- */
.t-treat { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1.1rem; list-style: none; margin: 0; padding: 0; }
.t-treat__item a { display: grid; gap: .55rem; align-content: start; height: 100%; padding: 1.6rem; border-radius: 0; background: #fff; text-decoration: none; transition: transform var(--t-fast) var(--t-ease), box-shadow var(--t-fast); }
.t-treat__item a:hover { transform: translateY(-3px); box-shadow: 0 20px 40px -26px rgba(21, 37, 58, .35); }
@media (prefers-reduced-motion: reduce) { .t-treat__item a:hover { transform: none; } }
.t-treat__icon { display: grid; place-items: center; width: 52px; height: 52px; border-radius: 0; background: var(--t-mint); color: var(--t-teal); margin-bottom: .35rem; }
.t-treat__icon svg { width: 28px; height: 28px; }
.t-treat__item p { margin: 0; color: var(--t-ink-soft); font-size: .97rem; }
.t-treat__more { margin-top: .4rem; color: var(--t-blue); font-weight: 700; font-size: .95rem; }
/* Beyaz bölümde kartlar nane zemine geçer; beyaz üstüne beyaz kart kaybolur */
.t-section:not(.t-section--mint) .t-treat__item:not(.t-treat__item--lead) a { background: var(--t-mint); }
.t-treat__item--lead { grid-column: span 2; }
.t-treat__item--lead a { grid-template-columns: 1fr 1fr; gap: 1rem 2rem; background: var(--t-blue); color: var(--t-on-blue); }
.t-treat__item--lead h3 { color: #fff; font-size: 1.7rem; }
.t-treat__item.t-treat__item--lead p { color: var(--t-on-blue-soft); }
.t-treat__item--lead .t-treat__icon { background: rgba(255, 255, 255, .12); color: #cfe6ff; }
.t-treat__item--lead .t-treat__more { color: #fff; }
.t-treat__item--lead ul { list-style: none; margin: 0; padding: 0; display: grid; gap: .5rem; align-content: center; }
.t-treat__item--lead li { display: flex; gap: .6rem; color: var(--t-on-blue); }
.t-treat__item--lead li::before { content: '✓'; color: #9fdccf; font-weight: 800; }

/* ---- Güven / klinik ------------------------------------------------ */
.t-why { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(2rem, 5vw, 4.5rem); align-items: center; }
.t-why .t-photo { aspect-ratio: 4 / 3; }
.t-checks { list-style: none; margin: 1.5rem 0 2rem; padding: 0; display: grid; gap: 1rem; }
.t-checks li { display: grid; grid-template-columns: auto 1fr; gap: .9rem; }
.t-checks i { display: grid; place-items: center; width: 40px; height: 40px; border-radius: 0; background: var(--t-mint); color: var(--t-teal); font-style: normal; }
.t-checks i svg { width: 22px; height: 22px; }
.t-checks b { display: block; }
.t-checks--grid { grid-template-columns: repeat(4, 1fr); gap: 1.75rem 2rem; margin: 0; }
.t-checks span { color: var(--t-ink-soft); font-size: .96rem; }

/* ---- Hekimler ------------------------------------------------------ */
.t-filter { display: flex; flex-wrap: wrap; gap: .5rem; margin-bottom: 2rem; }
.t-filter button { min-height: 44px; padding: .5rem 1.1rem; border-radius: 0; border: 2px solid var(--t-rule); background: #fff; font: 700 .95rem/1 var(--t-font); color: var(--t-ink-soft); cursor: pointer; }
.t-filter button:hover { border-color: var(--t-blue); color: var(--t-ink); }
.t-filter button[aria-pressed="true"] { background: var(--t-blue); border-color: var(--t-blue); color: #fff; }
.t-team { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1.25rem; list-style: none; margin: 0; padding: 0; }
.t-doc[hidden] { display: none; }
.t-doc .t-photo { aspect-ratio: 4 / 5; margin-bottom: 1rem; border-radius: 0; }
.t-doc h3 { font-size: 1.15rem; margin-bottom: .15rem; }
.t-doc p { margin: 0; font-size: .93rem; color: var(--t-ink-soft); }
.t-doc small { display: inline-block; margin-top: .5rem; padding: .25rem .6rem; border-radius: 0; background: var(--t-mint); color: var(--t-teal); font-weight: 700; font-size: .8rem; }

/* ---- Süreç zaman çizelgesi ----------------------------------------- */
.t-timeline { list-style: none; margin: 0; padding: 0; position: relative; display: grid; gap: 1rem; }
.t-timeline::before { content: ''; position: absolute; left: 23px; top: 10px; bottom: 10px; width: 2px; background: var(--t-mint-2); }
.t-tl { position: relative; display: grid; grid-template-columns: 48px 1fr; gap: 1.1rem; align-items: start; }
.t-tl__dot { position: relative; z-index: 1; display: grid; place-items: center; width: 48px; height: 48px; border-radius: 0; background: var(--t-blue); color: #fff; font-weight: 800; }
.t-tl__body { padding: 1rem 1.25rem; border-radius: 0; background: var(--t-mint); }
.t-tl__body h3 { font-size: 1.1rem; margin-bottom: .2rem; }
.t-tl__body p { margin: 0; color: var(--t-ink-soft); font-size: .96rem; }
.t-tl__time { display: inline-block; margin-bottom: .35rem; font-size: .8rem; font-weight: 800; color: var(--t-teal); text-transform: uppercase; letter-spacing: .06em; }

/* ---- Alt sayfa başı ------------------------------------------------ */
.t-pagehead { padding-block: clamp(3rem, 2rem + 3.5vw, 5rem) clamp(2.25rem, 3.5vw, 3.25rem); background: var(--t-mint); border-radius: 0; }
.t-pagehead h1 { font-size: clamp(2.2rem, 1.6rem + 2.4vw, 3.4rem); margin-bottom: 1rem; max-width: 22ch; }
.t-pagehead .t-lead { margin: 0; }
.t-crumbs { display: flex; flex-wrap: wrap; gap: .5rem; list-style: none; margin: 0 0 1.25rem; padding: 0; font-size: .9rem; color: var(--t-ink-soft); }
.t-crumbs li + li::before { content: '›'; margin-right: .5rem; }
.t-crumbs a { text-decoration: none; }
.t-crumbs a:hover { color: var(--t-blue); }

/* ---- Uzun metin + yan kutu ----------------------------------------- */
.t-split { display: grid; grid-template-columns: 1fr 20rem; gap: clamp(2.5rem, 5vw, 4.5rem); align-items: start; }
.t-prose { max-width: 44rem; font-size: 1.07rem; line-height: 1.8; }
.t-prose h2 { font-size: 1.7rem; margin: 2.5rem 0 1rem; }
.t-prose ul { padding-left: 1.2rem; }
.t-prose li { margin-bottom: .5rem; }
.t-prose li::marker { color: var(--t-teal); }
.t-aside { position: sticky; top: 104px; display: grid; gap: 1.25rem; }
.t-aside__box { border-radius: 0; background: var(--t-blue); color: var(--t-on-blue); padding: 1.6rem; }
.t-aside__box h3 { color: #fff; margin-bottom: .5rem; }
.t-aside__box p { color: var(--t-on-blue-soft); font-size: .95rem; }
.t-aside__list { list-style: none; margin: 0; padding: 0; display: grid; gap: .4rem; }
.t-aside__list a { display: flex; justify-content: space-between; padding: .7rem 1rem; border-radius: 0; background: var(--t-mint); text-decoration: none; font-weight: 600; font-size: .95rem; }
.t-aside__list a:hover, .t-aside__list a[aria-current="page"] { background: var(--t-mint-2); color: var(--t-blue-dark); }
.t-note { margin-top: 2rem; padding: 1.1rem 1.3rem; border-radius: 0; background: var(--t-blue-tint); font-size: .9rem; color: var(--t-ink-soft); }

/* ---- SSS ----------------------------------------------------------- */
.t-faq { display: grid; gap: .6rem; max-width: 50rem; }
.t-faq__item { border-radius: 0; background: #fff; border: 1px solid var(--t-rule); }
.t-section--mint .t-faq__item { border-color: transparent; }
.t-faq__btn { width: 100%; display: flex; justify-content: space-between; align-items: center; gap: 1rem; padding: 1.1rem 1.3rem; background: none; border: 0; cursor: pointer; text-align: left; font: 700 1.05rem/1.4 var(--t-font); color: var(--t-ink); }
.t-faq__icon { flex: 0 0 auto; width: 30px; height: 30px; border-radius: 0; background: var(--t-mint); position: relative; }
.t-faq__icon::before, .t-faq__icon::after { content: ''; position: absolute; left: 9px; top: 14px; width: 12px; height: 2px; background: var(--t-teal); transition: transform var(--t-mid) var(--t-ease); }
.t-faq__icon::after { transform: rotate(90deg); }
.t-faq__btn[aria-expanded="true"] .t-faq__icon::after { transform: rotate(0deg); }
.t-faq__panel { display: grid; grid-template-rows: 1fr; transition: grid-template-rows var(--t-mid) var(--t-ease); }
.t-faq__panel[data-collapsed] { grid-template-rows: 0fr; }
.t-faq__panel > div { overflow: hidden; }
.t-faq__panel p { margin: 0; padding: 0 1.3rem 1.2rem; color: var(--t-ink-soft); }
@media (prefers-reduced-motion: reduce) { .t-faq__panel, .t-faq__icon::before, .t-faq__icon::after { transition: none; } }

/* ---- Randevu formu ------------------------------------------------- */
.t-booking { display: grid; grid-template-columns: .85fr 1.15fr; gap: clamp(2rem, 5vw, 4.5rem); align-items: start; }
.t-form { background: var(--t-mint); border-radius: 0; padding: clamp(1.5rem, 3vw, 2.25rem); }
.t-form__grid { display: grid; grid-template-columns: 1fr 1fr; gap: 1rem 1.25rem; }
.t-field { display: grid; gap: .35rem; border: 0; margin: 0; padding: 0; min-width: 0; }
.t-field--full { grid-column: 1 / -1; }
.t-field > label, .t-field legend { font-weight: 700; font-size: .93rem; padding: 0; }
.t-field small { font-weight: 400; color: var(--t-ink-soft); }
.t-field input, .t-field select, .t-field textarea { width: 100%; min-height: 52px; padding: .75rem 1rem; border: 2px solid transparent; border-radius: 0; background: #fff; color: var(--t-ink); font: 400 1rem/1.4 var(--t-font); transition: border-color var(--t-fast); }
.t-field textarea { min-height: 110px; resize: vertical; }
.t-field input:focus, .t-field select:focus, .t-field textarea:focus { outline: none; border-color: var(--t-blue); }
.t-field [aria-invalid="true"] { border-color: #b3261e; }
.t-chips { display: flex; flex-wrap: wrap; gap: .45rem; }
.t-chip { position: relative; }
.t-chip input { position: absolute; opacity: 0; inset: 0; width: 100%; height: 100%; margin: 0; cursor: pointer; min-height: 0; }
.t-chip span { display: inline-flex; align-items: center; min-height: 44px; padding: .5rem 1rem; border-radius: 0; background: #fff; border: 2px solid transparent; font-weight: 600; font-size: .95rem; }
.t-chip input:checked + span { background: var(--t-blue); color: #fff; }
.t-chip input:focus-visible + span { border-color: var(--t-blue); }
.t-error { color: #a12a20; font-size: .87rem; margin: 0; }
.t-error:empty { display: none; }
.t-consent { display: flex; gap: .7rem; align-items: flex-start; font-size: .9rem; color: var(--t-ink-soft); font-weight: 400 !important; }
.t-consent input { width: 22px; height: 22px; min-height: 0; margin-top: .1rem; accent-color: var(--t-blue); flex: 0 0 auto; }
.t-form__foot { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 1rem; margin-top: 1.5rem; }
.t-form__foot small { color: var(--t-ink-soft); max-width: 22rem; }
.t-result { display: none; margin-top: 1.25rem; padding: 1rem 1.15rem; border-radius: 0; }
.t-result[data-shown] { display: block; }
.t-result[data-durum="ok"] { background: #fff; color: var(--t-teal); }
.t-result[data-durum="hata"] { background: #fbe4e1; color: #8b2a20; }
.t-info { display: grid; gap: 1.25rem; }
.t-info__item { display: grid; grid-template-columns: auto 1fr; gap: .9rem; }
.t-info__item i { display: grid; place-items: center; width: 44px; height: 44px; border-radius: 0; background: var(--t-mint); color: var(--t-teal); font-style: normal; }
.t-info__item i svg { width: 22px; height: 22px; }
.t-info__item b { display: block; }
.t-info__item p, .t-info__item a { margin: 0; color: var(--t-ink-soft); text-decoration: none; }
.t-info__item a:hover { color: var(--t-blue); }
.t-hours { width: 100%; border-collapse: collapse; font-size: .95rem; }
.t-hours th, .t-hours td { text-align: left; padding: .5rem 0; border-bottom: 1px solid var(--t-rule); font-weight: 400; }
.t-hours td { text-align: right; color: var(--t-ink-soft); }
.t-hours tr[data-today] th, .t-hours tr[data-today] td { color: var(--t-blue); font-weight: 700; }

/* ---- Acil bandı + kapanış ------------------------------------------ */
.t-cta { background: var(--t-blue); color: var(--t-on-blue); border-radius: 0; padding: clamp(2.25rem, 5vw, 4rem); display: grid; grid-template-columns: 1fr auto; gap: 1.5rem 2rem; align-items: center; }
.t-cta h2 { color: #fff; margin-bottom: .6rem; }
.t-cta p { margin: 0; color: var(--t-on-blue-soft); }

/* ---- Alt bilgi ----------------------------------------------------- */
.t-footer { background: #0f1c2d; color: #a9b7c9; font-size: .93rem; }
.t-footer__grid { display: grid; grid-template-columns: 1.3fr 1fr 1fr 1fr; gap: 2.25rem; padding-block: clamp(3rem, 5vw, 4.5rem) 2.25rem; }
.t-footer .t-logo b { color: #fff; }
.t-footer .t-logo small { color: #a9b7c9; }
.t-footer h4 { margin: 0 0 .9rem; color: #fff; font-size: 1rem; }
.t-footer ul { list-style: none; margin: 0; padding: 0; display: grid; gap: .45rem; }
.t-footer a { color: #e1e9f3; text-decoration: none; }
.t-footer a:hover { color: #fff; text-decoration: underline; }
.t-footer p { margin: 0 0 .45rem; }
.t-footer__legal { border-top: 1px solid rgba(255, 255, 255, .1); padding-block: 1.25rem 2rem; display: grid; gap: .5rem; font-size: .84rem; color: #8e9db2; }
.t-footer__legal p { margin: 0; max-width: 64rem; }

.t-top { position: fixed; right: 1.25rem; bottom: 1.25rem; z-index: 40; width: 50px; height: 50px; border: 0; border-radius: 0; background: var(--t-blue); color: #fff; font-size: 1.15rem; cursor: pointer; opacity: 0; transform: translateY(10px); pointer-events: none; transition: opacity var(--t-mid) var(--t-ease), transform var(--t-mid) var(--t-ease); }
.t-top[data-shown] { opacity: 1; transform: none; pointer-events: auto; }

.t-reveal { opacity: 0; transform: translateY(14px); transition: opacity 600ms var(--t-ease), transform 600ms var(--t-ease); transition-delay: calc(var(--t-i, 0) * 70ms); }
.t-reveal[data-visible] { opacity: 1; transform: none; }
@media (prefers-reduced-motion: reduce) { .t-reveal { opacity: 1; transform: none; transition: none; } }

/* ---- Tablet -------------------------------------------------------- */
@media (max-width: 1024px) {
    .t-team { grid-template-columns: repeat(2, 1fr); }
    .t-footer__grid { grid-template-columns: 1fr 1fr; }
    .t-checks--grid { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 960px) {
    .t-burger { display: block; }
    .t-header .t-btn { display: none; }
    .t-nav { position: absolute; left: 0; right: 0; top: 100%; background: #fff; border-bottom: 1px solid var(--t-rule); display: none; }
    .t-nav[data-open="true"] { display: block; }
    .t-nav__list { flex-direction: column; gap: 0; padding: .5rem var(--t-gutter) 1.25rem; }
    .t-nav a { display: block; padding: .9rem 0; border-bottom: 1px solid var(--t-rule); font-size: 1.05rem; }
    .t-nav__cta { padding-top: 1rem; }
    .t-hero__grid, .t-why, .t-split, .t-booking { grid-template-columns: 1fr; }
    .t-hero__media { max-width: 460px; }
    .t-aside { position: static; }
    .t-treat { grid-template-columns: 1fr 1fr; }
    .t-treat__item--lead { grid-column: 1 / -1; }
    .t-cta { grid-template-columns: 1fr; }
}
@media (min-width: 961px) { .t-nav__cta { display: none; } }

/* ---- Telefon ------------------------------------------------------- */
@media (max-width: 640px) {
    .t-topbar span:last-child { display: none; }
    .t-header__inner { min-height: 68px; }
    .t-logo small { display: none; }
    .t-float { left: .5rem; bottom: .75rem; max-width: calc(100% - 1rem); }
    .t-actions .t-btn { flex: 1 1 100%; }
    .t-treat { grid-template-columns: 1fr; }
    .t-treat__item--lead a { grid-template-columns: 1fr; }
    .t-team { grid-template-columns: 1fr 1fr; gap: 1rem; }
    .t-team--onizleme > :nth-child(3) { display: none; } /* 2 sütunda yetim kalmasın; tamamı hekimler sayfasında */
    .t-form__grid { grid-template-columns: 1fr; }
    .t-checks--grid { grid-template-columns: 1fr; }
    .t-footer__grid { grid-template-columns: 1fr; gap: 2rem; }
    .t-pagehead { border-radius: 0; }
}

/* ==========================================================================
   SALUTE DÜZENİ (18 Eki 2026) — lacivert başlık + iç sayfa başlıkları,
   anasayfa bölümleri (s-*), beyaz altbilgi. Köşeler düz, mercan tek vurgu.
   ========================================================================== */
.t-header { background: var(--t-blue); border-bottom: 1px solid rgba(255, 255, 255, .12); backdrop-filter: none; }
.t-header__inner { min-height: 68px; }
.t-logo { color: #fff; }
.t-logo__mark { width: auto; height: auto; background: none; color: var(--t-mercan); }
.t-logo b { font: 700 1.35rem/1 var(--t-baslik); color: #fff; }
.t-logo small { display: none; }
.t-nav a { font: 700 .9rem var(--t-baslik); color: #fff; letter-spacing: .3px; }
.t-nav a:hover, .t-nav a[aria-current="page"] { color: var(--t-mercan); }
.t-header .t-btn { background: var(--t-blue-tint); border-color: var(--t-blue-tint); color: var(--t-blue); min-height: 42px; }
.t-header .t-btn:hover { background: #fff; border-color: #fff; }
.t-burger { background: rgba(255, 255, 255, .1); }
.t-burger span { background: #fff; }
.t-btn { font-family: var(--t-baslik); letter-spacing: .5px; }
.t-pagehead { background: var(--t-blue); color: #fff; }
.t-pagehead h1, .t-pagehead .t-lead, .t-pagehead a, .t-pagehead p { color: #fff; }
.t-pagehead .t-pill { background: rgba(255, 255, 255, .1); color: #fff; }

/* Sol kenarda dikey bölüm etiketi */
.s-yan { position: absolute; left: 18px; top: 50%; display: flex; flex-direction: column; align-items: center; gap: 14px; font: 700 .8rem var(--t-baslik); letter-spacing: .5px; writing-mode: vertical-rl; transform: rotate(180deg); }
.s-yan::after { content: ''; width: 1px; height: 60px; background: currentColor; opacity: .5; }

/* Hero */
.s-hero { position: relative; overflow: hidden; padding: 200px 0 260px; background: var(--t-blue); color: #fff; text-align: center; border-bottom: 1px solid rgba(255, 255, 255, .15); }
.s-hero h1 { max-width: 780px; margin: 0 auto 32px; font-size: clamp(2.6rem, 1.6rem + 4vw, 5rem); line-height: 1.1; color: #fff; }
.s-hero .t-actions { justify-content: center; }
.s-btn { display: inline-flex; align-items: center; gap: 8px; padding: 10px 22px; border: 1px solid var(--t-blue-tint); background: var(--t-blue-tint); color: var(--t-blue); font: 700 1rem var(--t-baslik); letter-spacing: .5px; text-decoration: none; transition: background .2s, color .2s; }
.s-btn:hover { background: #fff; }
.s-btn--cizgi { background: transparent; color: #fff; }
.s-btn--cizgi:hover { background: rgba(255, 255, 255, .1); }
.s-btn svg { width: 16px; height: 16px; }
.s-egik { position: absolute; width: 190px; box-shadow: 0 20px 40px rgba(0, 0, 0, .25); }
.s-egik img { width: 100%; aspect-ratio: 4 / 5; object-fit: cover; }
.s-egik--1 { right: 9%; top: 70px; transform: rotate(16deg); }
.s-egik--2 { left: 12%; bottom: 50px; transform: rotate(14deg); }
.s-cizim { position: absolute; width: 46px; animation: s-salla 5s ease-in-out infinite alternate; }
@keyframes s-salla { to { transform: translateY(-8px) rotate(6deg); } }
@media (prefers-reduced-motion: reduce) { .s-cizim { animation: none; } }

/* Ekip */
.s-ekip { position: relative; padding: 90px 0 110px; background: var(--t-blue); color: #fff; }
.s-ekip__izgara { display: grid; grid-template-columns: 340px 1fr; gap: 90px; align-items: end; }
.s-ekip h2 { margin: 0 0 40px 40%; font-size: clamp(2.2rem, 1.4rem + 3vw, 4rem); color: #fff; line-height: 1.2; }
.s-ekip p { font-size: 1rem; line-height: 1.6; }
.s-ekip img { width: 100%; background: #2f5bff; }
.s-baglanti { display: inline-block; margin-top: 18px; font: 700 .78rem var(--t-baslik); letter-spacing: .5px; text-transform: uppercase; color: inherit; text-decoration: none; }
.s-baglanti:hover { color: var(--t-mercan); }

/* Vurgulu başlık: bazı kelimeler soluk */
.s-vurgu { font-size: clamp(2.2rem, 1.4rem + 3vw, 4rem); line-height: 1.2; color: var(--t-blue); }
.s-vurgu em { font-style: normal; color: #7f8aab; }

/* İhtiyaçlar */
.s-ihtiyac { position: relative; padding: 140px 0 100px; }
.s-ihtiyac__ust { display: grid; grid-template-columns: 1fr 280px; gap: 40px; align-items: center; margin-bottom: 70px; }
.s-ihtiyac .s-egik { position: relative; width: 100%; transform: rotate(14deg); }
.s-dortlu { display: grid; grid-template-columns: repeat(4, 1fr); gap: 30px; list-style: none; margin: 0; padding: 0; }
.s-dortlu a { display: block; color: var(--t-blue); text-decoration: none; }
.s-dortlu small { display: block; margin-bottom: 8px; font: 700 .85rem var(--t-baslik); }
.s-dortlu b { font: 400 1.5rem/1.4 Helvetica, Arial, sans-serif; transition: color .2s; }
.s-dortlu a:hover b { color: var(--t-mercan); }

/* Galeri karuseli */
.s-galeri { position: relative; padding: 130px 0 120px; background: var(--t-mint); }
.s-galeri .s-vurgu { max-width: 760px; margin-bottom: 60px; }
.s-galeri__ray { position: relative; padding: 0 40px; }
.s-galeri__liste { display: grid; grid-auto-flow: column; grid-auto-columns: calc((100% - 96px) / 4); gap: 32px; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; }
.s-galeri__liste::-webkit-scrollbar { display: none; }
.s-galeri__liste img { width: 100%; aspect-ratio: 690 / 870; object-fit: cover; scroll-snap-align: start; }
.s-ok { position: absolute; top: 50%; width: 32px; height: 32px; margin-top: -16px; border: 0; background: none; color: var(--t-blue); font-size: 1.6rem; cursor: pointer; }
.s-ok--geri { left: 0; } .s-ok--ileri { right: 0; }

/* Güvence (anlaşmalı kurumlar) */
.s-guvence { position: relative; display: grid; grid-template-columns: 1fr 1fr; min-height: 560px; }
.s-guvence__sol { display: flex; flex-direction: column; justify-content: flex-end; padding: 80px 8% 90px 12%; }
.s-guvence__sol h2 { font-size: clamp(2.2rem, 1.4rem + 2vw, 3rem); margin-bottom: 20px; }
.s-guvence__sol p { color: var(--t-ink-soft); }
.s-kurumlar { display: flex; flex-wrap: wrap; gap: 14px 30px; margin-top: 10px; font: 700 1rem var(--t-baslik); color: #5d6787; }
.s-guvence__sag { display: grid; align-content: center; gap: 46px; padding: 80px 10% 80px 70px; background: var(--t-blue); color: #fff; margin-top: -80px; }
.s-madde { display: grid; grid-template-columns: 34px 1fr; gap: 20px; }
.s-madde img { width: 34px; }
.s-madde b { display: block; margin-bottom: 8px; font: 700 1.1rem var(--t-baslik); }
.s-madde p { margin: 0; font-size: .95rem; line-height: 1.6; }
.s-madde .s-baglanti { margin-top: 10px; }

/* Hekim önerileri (yorum kaydırıcısı düzeni) */
.s-oneri { position: relative; padding: 120px 0; }
.s-oneri__izgara { display: grid; grid-template-columns: 1fr 300px; gap: 80px; align-items: center; }
.s-oneri h2 { font-size: clamp(2.2rem, 1.4rem + 2vw, 3rem); margin-bottom: 40px; }
.s-alinti { min-height: 190px; margin: 0; font: 400 1.6rem/1.6 Helvetica, Arial, sans-serif; color: var(--t-blue); }
.s-alinti cite { display: block; margin-top: 20px; font: 700 .85rem var(--t-baslik); font-style: normal; }
.s-noktalar { display: flex; gap: 8px; margin-top: 24px; }
.s-noktalar button { width: 10px; height: 10px; padding: 0; border: 0; border-radius: 50%; background: #c9d3e8; cursor: pointer; }
.s-noktalar button[aria-current="true"] { background: var(--t-blue); }
.s-oneri .s-egik { position: relative; width: 100%; transform: rotate(10deg); }

/* Klinik */
.s-klinik { position: relative; padding: 120px 0 0; background: linear-gradient(var(--t-blue) 70%, #fff 70%); color: #fff; }
.s-klinik__ust { display: grid; grid-template-columns: 1fr 1fr; gap: 60px; align-items: start; margin-bottom: 60px; }
.s-klinik h2 { font-size: clamp(2.2rem, 1.4rem + 3vw, 4rem); color: #fff; line-height: 1.15; }
.s-klinik p { margin-bottom: 20px; }
.s-klinik img { width: 100%; aspect-ratio: 1260 / 640; object-fit: cover; }

/* Altbilgi (beyaz) */
.t-footer { background: #fff; color: var(--t-blue); padding-top: 110px; }
.s-footer__baslik { max-width: 520px; margin-bottom: 70px; font: 700 clamp(1.6rem, 1.2rem + 1vw, 2rem)/1.4 var(--t-baslik); color: var(--t-blue); }
.s-footer__izgara { display: grid; grid-template-columns: 1fr 1fr 1fr auto; gap: 30px; align-items: start; font-size: .95rem; line-height: 1.6; }
.s-footer__izgara p { margin: 0; }
.s-footer__izgara a { color: var(--t-blue); text-decoration: none; }
.s-sosyal { display: flex; gap: 14px; }
.s-sosyal a { display: grid; place-items: center; width: 50px; height: 50px; border: 1px solid #c9d3e8; border-radius: 50%; transition: background .2s, color .2s; }
.s-sosyal a:hover { background: var(--t-blue); color: #fff; }
.s-sosyal svg { width: 16px; height: 16px; }
.s-footer__alt { display: grid; grid-template-columns: 2fr repeat(4, 1fr); margin-top: 70px; border-block: 1px solid var(--t-blue); font-size: .8rem; }
.s-footer__alt > * { padding: 16px 14px; border-left: 1px solid var(--t-blue); text-align: right; color: var(--t-blue); text-decoration: none; }
.s-footer__alt > :first-child { border: 0; padding-left: 0; text-align: left; }
.s-footer__yasal { padding: 18px 0 30px; font-size: .8rem; line-height: 1.6; color: var(--t-ink-soft); }
.s-footer__yasal p { margin: 0 0 4px; }

@media (max-width: 1000px) {
    .s-ekip__izgara, .s-ihtiyac__ust, .s-guvence, .s-oneri__izgara, .s-klinik__ust { grid-template-columns: 1fr; }
    .s-ekip h2 { margin-left: 0; }
    .s-guvence__sag { margin-top: 0; padding: 60px 8%; }
    .s-guvence__sol { padding: 60px 8%; }
    .s-dortlu, .s-footer__izgara { grid-template-columns: 1fr 1fr; }
    .s-galeri__liste { grid-auto-columns: calc((100% - 32px) / 2); }
    .s-ihtiyac .s-egik, .s-oneri .s-egik { width: 220px; margin: 20px auto 0; }
    .s-yan { display: none; }
}
@media (max-width: 640px) {
    .s-hero { padding: 70px 0 300px; }
    .s-egik { width: 140px; }
    .s-egik--1 { right: 8%; top: auto; bottom: 120px; }
    .s-egik--2 { left: 8%; bottom: 40px; }
    .s-dortlu, .s-footer__izgara { grid-template-columns: 1fr; }
    .s-galeri__liste { grid-auto-columns: 78%; }
    .s-alinti { font-size: 1.25rem; }
    .s-footer__alt { grid-template-columns: 1fr 1fr; }
    .s-footer__alt > :first-child { grid-column: 1 / -1; }
    .s-footer__alt > * { text-align: left; border-left: 0; padding-left: 0; }
}

/* Kontrast: lacivert başlık bandında konum satırı, beyaz altbilgide alt çubuk bağlantıları */
.t-pagehead .t-crumbs, .t-pagehead .t-crumbs li { color: #fff; }
.t-footer .s-footer__alt a { color: var(--t-blue); }
