/* psikologeminazar.com
   Renkler fotoğraftaki odadan: orman yeşili (bitki), ceviz (ahşap çıtalar), krem.
   Koyu bantlar (giriş, sayfa başları, çağrı, alt bilgi) ve okumaya uygun açık zemin.
   İmza öğesi: odadaki ahşap çıtalara gönderme yapan ince dikey çizgiler (.citalar).
   Yazı: Newsreader (başlık ve uzun metin), Plus Jakarta Sans (arayüz). Üçüncü taraf istek yok. */

@font-face {
  font-family: "Newsreader";
  src: url(/assets/fonts/newsreader-latin-opsz-normal.woff2) format("woff2-variations");
  font-weight: 200 800; font-style: normal; font-display: swap;
  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: "Newsreader";
  src: url(/assets/fonts/newsreader-latin-ext-opsz-normal.woff2) format("woff2-variations");
  font-weight: 200 800; font-style: normal; font-display: swap;
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: "Newsreader";
  src: url(/assets/fonts/newsreader-latin-opsz-italic.woff2) format("woff2-variations");
  font-weight: 200 800; font-style: italic; font-display: swap;
  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: "Newsreader";
  src: url(/assets/fonts/newsreader-latin-ext-opsz-italic.woff2) format("woff2-variations");
  font-weight: 200 800; font-style: italic; font-display: swap;
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: "Plus Jakarta Sans";
  src: url(/assets/fonts/plus-jakarta-sans-latin-wght-normal.woff2) format("woff2-variations");
  font-weight: 200 800; font-style: normal; font-display: swap;
  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: "Plus Jakarta Sans";
  src: url(/assets/fonts/plus-jakarta-sans-latin-ext-wght-normal.woff2) format("woff2-variations");
  font-weight: 200 800; font-style: normal; font-display: swap;
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

:root {
  /* Koyu: orman */
  --orman-950: #0d1b16;
  --orman-900: #112219;
  --orman-800: #13261f;
  --orman-700: #1c3a2f;
  --orman-600: #2a5143;
  --krem: #ede6d6;
  --krem-soluk: #a9b8ae;
  --ceviz: #b98552;
  --ceviz-acik: #d3a676;
  --cita: rgba(185, 133, 82, 0.17);
  --cizgi-koyu: rgba(237, 230, 214, 0.12);

  /* Açık: okuma zemini */
  --zemin: #f1f2ed;
  --yuzey: #fbfbf8;
  --murekkep: #15231c;
  --metin: #34433b;
  --soluk: #66736c;
  --cizgi: #d9ddd5;
  --ceviz-koyu: #855531;
  --yesil-yazi: #24503f;

  --serif: "Newsreader", Georgia, "Times New Roman", serif;
  --sans: "Plus Jakarta Sans", system-ui, -apple-system, "Segoe UI", sans-serif;

  --genislik: 76rem;
  --dar: 42rem;
  --yaricap: 3px;
  --hap: 999px;
}

*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; }
@media (prefers-reduced-motion: no-preference) { html { scroll-behavior: smooth; } }

body {
  margin: 0;
  background: var(--zemin);
  color: var(--metin);
  font-family: var(--sans);
  font-size: 1.0625rem;
  line-height: 1.65;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}
img, video { max-width: 100%; height: auto; display: block; }
a { color: var(--yesil-yazi); text-underline-offset: 0.2em; text-decoration-thickness: 1px; }
a:hover { color: var(--ceviz-koyu); }
:focus-visible { outline: 2px solid var(--ceviz); outline-offset: 3px; }
p { margin: 0 0 1.1em; }
ul, ol { margin: 0 0 1.1em; }

h1, h2, h3 { font-family: var(--serif); color: var(--murekkep); margin: 0 0 0.5em; text-wrap: balance; }
h1 { font-weight: 300; font-size: clamp(2.6rem, 1.7rem + 3.6vw, 4.6rem); line-height: 1.02; letter-spacing: -0.022em; font-variation-settings: "opsz" 72; }
h2 { font-weight: 350; font-size: clamp(2rem, 1.5rem + 1.9vw, 3.1rem); line-height: 1.08; letter-spacing: -0.018em; font-variation-settings: "opsz" 60; }
h3 { font-weight: 450; font-size: 1.35rem; line-height: 1.25; letter-spacing: -0.005em; }

.ikon { width: 1.15em; height: 1.15em; flex: none; }
.gizli { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.kirilmaz { white-space: nowrap; }
.atla { position: absolute; left: 1rem; top: -4rem; background: var(--krem); color: var(--orman-900); padding: 0.6rem 1rem; z-index: 100; border-radius: var(--hap); }
.atla:focus { top: 1rem; }

.kap { width: min(100% - 2.5rem, var(--genislik)); margin-inline: auto; }
.kap-dar { width: min(100% - 2.5rem, var(--dar)); margin-inline: auto; }

/* Koyu bant: içindeki her şey açık renge döner */
.koyu { background: var(--orman-800); color: var(--krem-soluk); }
.koyu h1, .koyu h2, .koyu h3 { color: var(--krem); }
.koyu a:not(.dugme) { color: var(--krem); }
.koyu a:not(.dugme):hover { color: var(--ceviz-acik); }

/* İmza: ahşap çıtalar */
.citalar { position: relative; isolation: isolate; }
.citalar::before {
  content: ""; position: absolute; z-index: -1; pointer-events: none;
  background: repeating-linear-gradient(90deg, var(--cita) 0 1px, transparent 1px 22px);
}

/* Düğmeler */
.dugme {
  display: inline-flex; align-items: center; justify-content: center; gap: 0.6rem;
  padding: 0.95rem 1.55rem; border-radius: var(--hap); border: 1px solid transparent;
  font: 650 1rem/1.2 var(--sans); text-decoration: none; cursor: pointer;
  transition: background-color 0.2s, border-color 0.2s, color 0.2s;
}
.dugme-wa { background: var(--orman-800); color: var(--krem); }
.dugme-wa:hover { background: var(--orman-600); color: var(--krem); }
.koyu .dugme-wa { background: var(--ceviz); color: var(--orman-900); }
.koyu .dugme-wa:hover { background: var(--ceviz-acik); color: var(--orman-900); }
.dugme-ikincil { border-color: rgba(21, 35, 28, 0.28); color: var(--murekkep); background: transparent; }
.dugme-ikincil:hover { border-color: var(--murekkep); color: var(--murekkep); }
.koyu .dugme-ikincil { border-color: rgba(237, 230, 214, 0.3); color: var(--krem); }
.koyu .dugme-ikincil:hover { border-color: var(--krem); color: var(--krem); }
.dugme-kucuk { padding: 0.65rem 1.1rem; font-size: 0.92rem; }
.dugmeler { display: flex; flex-wrap: wrap; gap: 0.8rem; }
.metin-baglanti { display: inline-flex; align-items: center; gap: 0.45rem; font-weight: 600; text-decoration: none; }
.metin-baglanti .ikon { transition: transform 0.2s; }
.metin-baglanti:hover .ikon { transform: translateX(3px); }

/* Üst bölüm */
.ust { position: sticky; top: 0; z-index: 40; background: rgba(19, 38, 31, 0.97); border-bottom: 1px solid var(--cizgi-koyu); }
.ust-ic { display: flex; align-items: center; gap: 1rem; min-height: 5rem; }
.logo { display: flex; flex-direction: column; text-decoration: none; margin-right: auto; }
.logo-ad { font: 400 1.5rem/1 var(--serif); color: var(--krem); letter-spacing: -0.01em; }
.logo-unvan { font-size: 0.78rem; color: var(--krem-soluk); margin-top: 0.35rem; letter-spacing: 0.02em; }
.logo:hover .logo-ad { color: #fff; }
.ana-menu { display: none; }
.ana-menu a { color: var(--krem); opacity: 0.82; text-decoration: none; font-size: 0.95rem; padding: 0.4rem 0; border-bottom: 1px solid transparent; }
.ana-menu a:hover { opacity: 1; }
.ana-menu a[aria-current] { opacity: 1; border-bottom-color: var(--ceviz); }
.ust .dugme-wa { background: transparent; border-color: rgba(237, 230, 214, 0.3); color: var(--krem); }
.ust .dugme-wa:hover { border-color: var(--krem); background: transparent; color: var(--krem); }
.ust .dugme-wa span { display: none; }
.mobil-menu { position: relative; }
.mobil-menu summary { list-style: none; cursor: pointer; color: var(--krem); font-weight: 600; font-size: 0.92rem; padding: 0.65rem 1.1rem; border: 1px solid rgba(237, 230, 214, 0.3); border-radius: var(--hap); }
.mobil-menu summary::-webkit-details-marker { display: none; }
.mobil-menu nav { position: absolute; right: 0; top: calc(100% + 0.6rem); width: min(17rem, calc(100vw - 2.5rem)); display: flex; flex-direction: column; background: var(--orman-900); border: 1px solid var(--cizgi-koyu); border-radius: 6px; padding: 0.5rem; box-shadow: 0 18px 40px rgba(0, 0, 0, 0.35); }
.mobil-menu nav a { color: var(--krem); text-decoration: none; padding: 0.75rem 0.9rem; border-radius: 4px; }
.mobil-menu nav a:hover, .mobil-menu nav a[aria-current] { background: var(--orman-700); }
@media (min-width: 40rem) { .ust .dugme-wa span { display: inline; } }
@media (min-width: 66rem) {
  .ana-menu { display: flex; gap: 2.1rem; margin-right: 1.2rem; }
  .mobil-menu { display: none; }
}

/* Ana sayfa girişi */
.giris { overflow-x: clip; }
.giris-ic { display: grid; gap: 3rem; padding-block: clamp(3rem, 7vw, 5.5rem) clamp(3.5rem, 8vw, 6rem); align-items: center; }
.giris h1 { font-size: clamp(3.3rem, 1.6rem + 6vw, 6.8rem); line-height: 0.98; letter-spacing: -0.028em; max-width: 9ch; margin-bottom: 0.38em; }
.giris-alt { font-size: clamp(1.08rem, 1rem + 0.35vw, 1.22rem); line-height: 1.65; max-width: 31rem; margin-bottom: 2.3rem; }
.giris-bilgi { display: grid; grid-template-columns: repeat(3, auto); justify-content: start; gap: 1.5rem 2.6rem; margin: 3rem 0 0; padding-top: 1.4rem; border-top: 1px solid var(--cizgi-koyu); max-width: 31rem; font-size: 0.92rem; }
.giris-bilgi dt { color: var(--krem); font-weight: 600; }
.giris-bilgi dd { margin: 0.1rem 0 0; }
.portre { position: relative; margin: 0; width: 100%; max-width: 27rem; }
.portre.citalar::before { inset: -1.3rem -100vw -1.3rem -1.2rem; }
.portre img { width: 100%; aspect-ratio: 4 / 5; object-fit: cover; border-radius: var(--yaricap); }
.portre figcaption { margin-top: 1rem; font-size: 0.88rem; }
.portre figcaption strong { display: block; font: 400 1.15rem var(--serif); color: var(--krem); }
@media (min-width: 60rem) {
  .giris-ic { grid-template-columns: 1.15fr 0.85fr; gap: 5rem; }
  .giris .portre { justify-self: end; }
  .portre.citalar::before { inset: -2.2rem -100vw -2.2rem -3.2rem; }
}

/* Bölümler */
.bolum { padding-block: clamp(4.5rem, 9vw, 7.5rem); }
.bolum-acik { background: var(--yuzey); }
.bolum-bas { display: grid; gap: 1rem 4rem; margin-bottom: clamp(2.5rem, 5vw, 4rem); }
.bolum-bas h2 { margin: 0; max-width: 16ch; }
.bolum-bas p { margin: 0; max-width: 36rem; font-size: 1.08rem; }
@media (min-width: 60rem) { .bolum-bas { grid-template-columns: 1fr 1fr; align-items: end; } }
.bolum-son { margin-top: 3rem; display: flex; flex-wrap: wrap; gap: 1rem 2rem; align-items: center; }

/* Giriş metni */
.giris-imza { font-size: 1.05rem; color: var(--ceviz-acik); margin: 0 0 2.6rem; }

/* Yaklaşım bandı */
.yaklasim.citalar::before { inset: 0 0 0 62%; }
.yaklasim-ic { display: grid; gap: 2.5rem 6rem; align-items: center; }
.yaklasim h2 { max-width: 14ch; }
.yaklasim p { font-size: 1.1rem; max-width: 34rem; }
.yaklasim .ilkeler { margin: 0; }
.yaklasim .ilkeler strong { color: var(--krem); }
@media (min-width: 60rem) { .yaklasim-ic { grid-template-columns: 1.1fr 0.9fr; } }

/* Tanışma: video ve kısa metin */
.tanis { display: grid; gap: 3rem; align-items: center; }
.tanis-metin h2 { max-width: 14ch; }
.tanis-metin > p { font-size: 1.08rem; max-width: 36rem; }
.ilkeler { list-style: none; padding: 0; margin: 2rem 0 2.4rem; display: grid; gap: 1.4rem; max-width: 36rem; }
.ilkeler li { padding-left: 1.4rem; border-left: 1px solid var(--ceviz); }
.ilkeler strong { display: block; color: var(--murekkep); font-weight: 650; margin-bottom: 0.15rem; }
.video-kutu { max-width: 22rem; width: 100%; justify-self: center; margin: 0; }
.video-kutu video { width: 100%; aspect-ratio: 9 / 16; object-fit: cover; border-radius: var(--yaricap); background: var(--orman-900); }
.video-kutu figcaption { font-size: 0.88rem; color: var(--soluk); margin: 0.8rem 0 0; }
@media (min-width: 56rem) { .tanis { grid-template-columns: 0.8fr 1.2fr; gap: 6rem; } }

/* Süreç adımları (gerçek bir sıra olduğu için numaralı) */
.adimlar { list-style: none; margin: 0; padding: 0; display: grid; gap: 2.5rem; counter-reset: adim; }
.adimlar li { counter-increment: adim; padding-top: 1.4rem; border-top: 1px solid var(--cizgi); }
.koyu .adimlar li { border-top-color: var(--cizgi-koyu); }
.adimlar li::before { content: counter(adim); display: block; font: 300 2.8rem/1 var(--serif); color: var(--ceviz-koyu); margin-bottom: 1.1rem; }
.koyu .adimlar li::before { color: var(--ceviz); }
.adimlar h3 { font-size: 1.3rem; }
.adimlar p { margin: 0; font-size: 0.98rem; }
@media (min-width: 48rem) { .adimlar { grid-template-columns: repeat(2, 1fr); } }
@media (min-width: 70rem) { .adimlar { grid-template-columns: repeat(4, 1fr); gap: 2.5rem 3rem; } }

/* Çalışma alanları */
.alanlar { display: grid; gap: 1px; background: var(--cizgi); border: 1px solid var(--cizgi); }
.alan { background: var(--yuzey); padding: clamp(1.75rem, 3vw, 2.4rem); display: flex; flex-direction: column; }
.alan-sembol { display: inline-flex; width: 2.6rem; height: 2.6rem; color: var(--ceviz-koyu); margin-bottom: 1.3rem; }
.alan-sembol .ikon { width: 100%; height: 100%; stroke-width: 1.3; }
.alan h3 { font-size: 1.6rem; font-weight: 400; margin-bottom: 0.6rem; }
.alan h3 a { color: inherit; text-decoration: none; }
.alan h3 a:hover { color: var(--yesil-yazi); }
.alan p { font-size: 0.98rem; margin-bottom: 1.4rem; }
.alan ul { list-style: none; padding: 0; margin: 0 0 1.6rem; display: grid; gap: 0.45rem; font-size: 0.94rem; }
.alan ul a { color: var(--metin); text-decoration-color: var(--cizgi); }
.alan ul a:hover { color: var(--yesil-yazi); }
.alan .metin-baglanti { margin-top: auto; font-size: 0.95rem; }
@media (min-width: 48rem) { .alanlar { grid-template-columns: repeat(2, 1fr); } }
@media (min-width: 70rem) { .alanlar { grid-template-columns: repeat(3, 1fr); } }

/* Programlar: özet kartları */
.program-kartlari { list-style: none; margin: 0; padding: 0; display: grid; gap: 1.25rem; }
.program-karti { position: relative; display: flex; flex-direction: column; background: var(--yuzey); border: 1px solid var(--cizgi); border-radius: var(--yaricap); padding: 2rem 1.75rem 1.75rem; transition: border-color 0.2s; }
.program-karti:hover { border-color: var(--ceviz); }
.program-karti .program-sayi, .program-sayi { font: 300 4.6rem/0.9 var(--serif); color: var(--murekkep); letter-spacing: -0.03em; font-variation-settings: "opsz" 72; margin: 0; }
.program-sayi span { display: block; font: 600 0.9rem/1.4 var(--sans); letter-spacing: 0; color: var(--ceviz-koyu); margin-top: 0.7rem; }
.program-karti h3 { font-size: 1.25rem; margin: 1.6rem 0 0.5rem; padding-top: 1.2rem; border-top: 1px solid var(--cizgi); }
.program-karti p { font-size: 0.96rem; margin-bottom: 1.4rem; }
.program-karti .metin-baglanti { margin-top: auto; font-size: 0.95rem; }
.program-karti .metin-baglanti::after { content: ""; position: absolute; inset: 0; }
@media (min-width: 40rem) { .program-kartlari { grid-template-columns: repeat(2, 1fr); } }
@media (min-width: 70rem) { .program-kartlari { grid-template-columns: repeat(4, 1fr); } }

/* Programlar: ayrıntı */
.program { display: grid; gap: 1.5rem 4rem; padding-block: clamp(2.5rem, 5vw, 3.5rem); border-top: 1px solid var(--cizgi); scroll-margin-top: 6rem; }
.program:last-child { border-bottom: 1px solid var(--cizgi); }
.program-bas .program-sayi { font-size: 5.5rem; }
.program-karti .program-sayi { margin-bottom: 0; }
.program-bas h3 { font-size: 1.6rem; font-weight: 400; margin: 1.1rem 0 0; }
.program h4 { font: 650 0.95rem/1.4 var(--sans); color: var(--murekkep); margin: 0 0 0.5rem; }
.program-govde > p { max-width: 38rem; }
.icerik { list-style: none; padding: 0; margin: 0 0 2rem; display: grid; gap: 0.6rem; max-width: 38rem; }
.icerik li { position: relative; padding-left: 1.5rem; }
.icerik li::before { content: ""; position: absolute; left: 0; top: 0.8em; width: 0.7rem; height: 1px; background: var(--ceviz); }
.program-alt { display: flex; flex-wrap: wrap; align-items: center; gap: 0.75rem 1.5rem; }
.program-alt p { margin: 0; font-size: 0.9rem; color: var(--soluk); }
@media (min-width: 56rem) { .program { grid-template-columns: 17rem 1fr; } }

.ortak-bilgi { list-style: none; padding: 0; margin: 0; display: grid; gap: 1.5rem 3rem; }
.ortak-bilgi li { padding-top: 1rem; border-top: 1px solid var(--cizgi); font-size: 0.98rem; }
.ortak-bilgi strong { display: block; color: var(--murekkep); font-weight: 650; }
@media (min-width: 48rem) { .ortak-bilgi { grid-template-columns: repeat(3, 1fr); } }

/* Yazı listeleri */
.yazi-listesi { list-style: none; margin: 0; padding: 0; display: grid; }
.yazi-listesi li { padding-block: 1.8rem; border-top: 1px solid var(--cizgi); }
.yazi-listesi h3 { font-size: 1.4rem; font-weight: 400; margin-bottom: 0.5rem; }
.yazi-listesi h3 a { color: var(--murekkep); text-decoration: none; }
.yazi-listesi h3 a:hover { color: var(--yesil-yazi); text-decoration: underline; }
.yazi-listesi p { margin: 0; font-size: 0.96rem; color: var(--soluk); }
.yazi-listesi .kategori { font-size: 0.85rem; font-weight: 600; color: var(--ceviz-koyu); margin-bottom: 0.6rem; }
@media (min-width: 48rem) { .yazi-listesi.uclu, .yazi-listesi.ikili { grid-template-columns: repeat(2, 1fr); column-gap: 3rem; } }
@media (min-width: 70rem) { .yazi-listesi.uclu { grid-template-columns: repeat(3, 1fr); } }
.kategori-basligi { font-size: 1.7rem; font-weight: 400; margin: 3.5rem 0 0.5rem; }
.kategori-basligi:first-child { margin-top: 0; }

/* Sıkça sorulan sorular */
.sss { border-top: 1px solid var(--cizgi); }
.sss details { border-bottom: 1px solid var(--cizgi); }
.sss summary { list-style: none; cursor: pointer; display: flex; justify-content: space-between; gap: 1.5rem; padding: 1.35rem 0; font: 450 1.2rem/1.35 var(--serif); color: var(--murekkep); }
.sss summary::-webkit-details-marker { display: none; }
.sss summary::after {
  content: ""; flex: none; width: 0.85rem; height: 0.85rem; margin-top: 0.35rem;
  background: linear-gradient(var(--ceviz-koyu), var(--ceviz-koyu)) center / 100% 1.5px no-repeat, linear-gradient(var(--ceviz-koyu), var(--ceviz-koyu)) center / 1.5px 100% no-repeat;
  transition: transform 0.25s;
}
.sss details[open] summary::after { transform: rotate(45deg); }
.sss summary:hover { color: var(--yesil-yazi); }
.sss .yanit { padding: 0 2.5rem 1.4rem 0; max-width: 44rem; }
.sss .yanit p:last-child, .sss .yanit ul:last-child { margin-bottom: 0; }
.sss .yanit ul { padding-left: 1.2rem; display: grid; gap: 0.2rem 2rem; }
.sss .yanit li::marker { color: var(--ceviz-koyu); }
@media (min-width: 40rem) { .sss .yanit ul { grid-template-columns: 1fr 1fr; } }
.sss-duzen { display: grid; gap: 2.5rem 5rem; }
.sss-yan { align-self: start; }
.sss-yan p { max-width: 24rem; }
.sss-dizin { list-style: none; padding: 0; margin: 1.5rem 0 2rem; display: grid; gap: 0.5rem; font-size: 0.98rem; }
.sss-dizin a { text-decoration: none; color: var(--metin); }
.sss-dizin a:hover { color: var(--yesil-yazi); text-decoration: underline; }
@media (min-width: 60rem) {
  .sss-duzen { grid-template-columns: 0.7fr 1.3fr; }
  .sss-yan { position: sticky; top: 7rem; }
}
.sss-grup { scroll-margin-top: 6rem; }
.sss-grup + .sss-grup { margin-top: 3.5rem; }
.sss-grup h2 { font-size: 1.75rem; font-weight: 400; margin-bottom: 1rem; }

/* Çağrı bandı */
.cagri-ic { display: grid; gap: 2rem 4rem; align-items: end; }
.cagri h2 { font-size: clamp(2.4rem, 1.6rem + 3vw, 4.2rem); font-weight: 300; max-width: 13ch; margin: 0 0 1rem; }
.cagri p { max-width: 30rem; font-size: 1.08rem; margin: 0; }
.cagri.citalar::before { inset: 0 0 0 58%; }
@media (min-width: 60rem) { .cagri-ic { grid-template-columns: 1fr auto; } }

/* İç sayfa başı (koyu bant) */
.sayfa-bas { padding-block: clamp(3rem, 7vw, 5.5rem) clamp(3rem, 6vw, 4.5rem); overflow-x: clip; }
.sayfa-bas.citalar::before { inset: 0 0 0 70%; }
.sayfa-bas h1 { max-width: 18ch; margin-bottom: 0.45em; }
.sayfa-bas .giris-metni { font-size: clamp(1.08rem, 1rem + 0.35vw, 1.24rem); max-width: 40rem; margin: 0; }
.sayfa-bas .dugmeler { margin-top: 2rem; }
.iz { font-size: 0.88rem; margin-bottom: 1.6rem; color: var(--krem-soluk); }
.koyu .iz a { color: var(--krem-soluk); }
.koyu .iz a:hover { color: var(--krem); }
.yazi-meta { display: flex; flex-wrap: wrap; gap: 0.3rem 1.6rem; font-size: 0.9rem; margin-top: 2rem; padding-top: 1.3rem; border-top: 1px solid var(--cizgi-koyu); max-width: 40rem; }
.yazi-meta strong { color: var(--krem); font-weight: 600; }
.yazi-kategori { font-size: 0.9rem; font-weight: 600; color: var(--ceviz-acik); margin-bottom: 0.9rem; }

/* Uzun metin */
.icerik-alan { padding-block: clamp(3rem, 6vw, 4.5rem) clamp(3.5rem, 7vw, 5.5rem); }
.metin { font-family: var(--serif); font-size: clamp(1.15rem, 1.08rem + 0.3vw, 1.27rem); line-height: 1.75; color: var(--metin); }
.metin h2 { font-size: clamp(1.6rem, 1.35rem + 0.9vw, 2.05rem); font-weight: 400; margin-top: 2.1em; }
.metin h3 { font-size: 1.3rem; font-weight: 500; margin-top: 1.8em; }
.metin > :first-child { margin-top: 0; }
.metin strong { color: var(--murekkep); font-weight: 600; }
.metin ul, .metin ol { padding-left: 1.3rem; }
.metin li { margin-bottom: 0.5em; }
.metin li::marker { color: var(--ceviz-koyu); }
.metin blockquote { margin: 1.75em 0; padding: 0.2em 0 0.2em 1.4em; border-left: 1px solid var(--ceviz); font-style: italic; color: var(--murekkep); }
.metin blockquote p:last-child { margin-bottom: 0; }
.metin hr { border: 0; width: 3rem; height: 1px; background: var(--ceviz); margin: 2.75em 0; }

.kutu { border: 1px solid var(--cizgi); background: var(--yuzey); border-radius: var(--yaricap); padding: clamp(1.5rem, 3vw, 2.1rem); margin: 2.5rem 0; font-family: var(--sans); font-size: 1rem; line-height: 1.65; }
.kutu h2, .kutu h3 { font-size: 1.45rem; font-weight: 400; margin-top: 0; }
.kutu p:last-child { margin-bottom: 0; }
.kutu-uyari { border-left: 2px solid var(--ceviz); }
.yazar { display: grid; grid-template-columns: 4.5rem 1fr; gap: 1rem 1.25rem; align-items: start; }
.yazar img { width: 4.5rem; height: 4.5rem; border-radius: 50%; object-fit: cover; }
.yazar p { margin: 0 0 0.5rem; }
.yazar .ad { font: 450 1.2rem var(--serif); color: var(--murekkep); margin: 0; }
.bilgilendirme { font-size: 0.88rem; color: var(--soluk); }
.yazi-son { padding-bottom: clamp(3.5rem, 7vw, 5.5rem); }
.konu-blok { margin-top: 3.5rem; }
.konu-blok > h2 { font-size: clamp(1.6rem, 1.35rem + 0.9vw, 2.05rem); font-weight: 400; margin-bottom: 1.25rem; }
.konu-listesi { list-style: none; margin: 0; padding: 0; border-top: 1px solid var(--cizgi); }
.konu-listesi a { display: grid; gap: 0.2rem; padding: 1.1rem 0; border-bottom: 1px solid var(--cizgi); text-decoration: none; color: var(--metin); }
.konu-listesi strong { font: 450 1.25rem var(--serif); color: var(--murekkep); }
.konu-listesi span { font-size: 0.95rem; color: var(--soluk); }
.konu-listesi a:hover strong { color: var(--yesil-yazi); }

/* Hakkımda */
.hakkimda { display: grid; gap: 3rem; padding-block: clamp(3rem, 6vw, 4.5rem) clamp(3.5rem, 7vw, 5.5rem); }
.hakkimda .portre { max-width: 24rem; }
.hakkimda .portre figcaption { color: var(--soluk); }
.hakkimda .portre figcaption strong { color: var(--murekkep); }
.hakkimda .metin { max-width: var(--dar); }
@media (min-width: 60rem) {
  .hakkimda { grid-template-columns: 22rem 1fr; gap: 6rem; }
  .hakkimda .portre { position: sticky; top: 7rem; align-self: start; }
}

/* İletişim */
.iletisim-listesi { list-style: none; margin: 0 0 1rem; padding: 0; border-top: 1px solid var(--cizgi); }
.iletisim-listesi a { display: flex; align-items: center; gap: 1rem; padding: 1.3rem 0; border-bottom: 1px solid var(--cizgi); font: 400 1.4rem var(--serif); text-decoration: none; color: var(--murekkep); }
.iletisim-listesi a:hover { color: var(--yesil-yazi); }
.iletisim-listesi .ikon { color: var(--ceviz-koyu); width: 1.3rem; height: 1.3rem; }

/* Alt bölüm */
.alt { background: var(--orman-950); color: var(--krem-soluk); font-size: 0.94rem; padding-top: clamp(3.5rem, 7vw, 5rem); }
.alt a { color: var(--krem); text-decoration: none; }
.alt a:hover { color: var(--ceviz-acik); text-decoration: underline; }
.alt-ic { display: grid; gap: 2.5rem 1.5rem; padding-bottom: 3rem; grid-template-columns: 1fr 1fr; }
.alt-marka, .alt-iletisim, .alt-saatler { grid-column: 1 / -1; }
.alt h2 { font: 650 0.92rem/1.4 var(--sans); letter-spacing: 0; color: var(--krem); margin-bottom: 1rem; }
.alt ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 0.55rem; }
.alt-marka .logo-ad { display: block; font-size: 1.7rem; }
.alt-slogan { font: 300 1.5rem/1.2 var(--serif); color: var(--krem); margin: 1.3rem 0 0.6rem; }
.alt-marka p { max-width: 22rem; }
.alt-iletisim a { display: inline-flex; align-items: center; gap: 0.6rem; }
.alt-son { border-top: 1px solid var(--cizgi-koyu); padding-block: 1.5rem 2rem; font-size: 0.84rem; display: grid; gap: 0.4rem; }
.alt-son p { margin: 0; }
@media (min-width: 60rem) {
  .alt-ic { grid-template-columns: 1.4fr repeat(4, 1fr); gap: 2.5rem; }
  .alt-marka, .alt-iletisim, .alt-saatler { grid-column: auto; }
}

/* Instagram QR kodu: yalnızca fare kullanılan geniş ekranlarda (bilgisayar). Telefon ve tablette logo bağlantısı yeterli. */
.alt-qr { display: none; margin: 1.5rem 0 0; }
.alt-qr img { width: 8.25rem; height: 8.25rem; border-radius: 4px; }
.alt-qr figcaption { font-size: 0.8rem; margin-top: 0.6rem; max-width: 11rem; }
@media (min-width: 64rem) and (hover: hover) and (pointer: fine) { .alt-qr { display: block; } }

/* Telefonda sabit WhatsApp çubuğu */
.mobil-wa { display: none; }
@media (max-width: 47.99rem) {
  .mobil-wa {
    display: block; position: fixed; left: 0; right: 0; bottom: 0; z-index: 30;
    padding: 0.65rem 1rem calc(0.65rem + env(safe-area-inset-bottom));
    background: rgba(13, 27, 22, 0.97); border-top: 1px solid var(--cizgi-koyu);
  }
  .mobil-wa .dugme { width: 100%; }
  body { padding-bottom: 4.7rem; }
}

/* Çerez onayı: yalnızca reklam ölçümü açıkken. "Kabul et" ve "Reddet" eşit ağırlıkta. */
.cerez-onayi { position: fixed; z-index: 50; left: 1rem; right: 1rem; bottom: 1rem; max-width: 26rem; background: var(--yuzey); color: var(--metin); border: 1px solid var(--cizgi); border-radius: 6px; padding: 1.25rem 1.35rem; box-shadow: 0 18px 44px rgba(13, 27, 22, 0.22); font-size: 0.92rem; }
.cerez-onayi[hidden] { display: none; }
.cerez-onayi p { margin: 0 0 0.9rem; }
.cerez-baslik { font: 450 1.15rem var(--serif); color: var(--murekkep); }
.cerez-onayi .dugmeler { gap: 0.6rem; }
.cerez-onayi .dugme { flex: 1; }
.metin-dugme { background: none; border: 0; padding: 0; font: inherit; color: var(--krem); text-decoration: underline; cursor: pointer; }
@media (max-width: 47.99rem) { .cerez-onayi { bottom: 5.4rem; } }

/* 404 ve bakım */
.bulunamadi { padding-block: clamp(4rem, 10vw, 8rem); }
.bulunamadi .giris-metni { font-size: 1.15rem; max-width: 34rem; }
.bulunamadi-liste { list-style: none; padding: 0; margin: 2rem 0; display: grid; gap: 0.6rem; font-size: 1.1rem; }

/* Hafif hareket: yalnızca hareket azaltma tercihi olmayanlarda.
   Giriş bölümü sayfa açılırken yumuşakça belirir; semboller üzerine gelindiğinde canlanır;
   destekleyen tarayıcılarda bölümler kaydırdıkça yerine oturur (betik kullanılmaz). */
@media (prefers-reduced-motion: no-preference) {
  @keyframes belir { from { opacity: 0; transform: translateY(14px); } to { opacity: 1; transform: none; } }
  @keyframes citalar-belir { from { opacity: 0; } to { opacity: 1; } }
  @keyframes hat-ciz { from { stroke-dashoffset: 1; } to { stroke-dashoffset: 0; } }
  .giris-metin > * { animation: belir 0.9s cubic-bezier(.2, .7, .2, 1) both; }
  .giris-metin > :nth-child(2) { animation-delay: 0.12s; }
  .giris-metin > :nth-child(3) { animation-delay: 0.2s; }
  .giris-metin > :nth-child(4) { animation-delay: 0.28s; }
  .giris-metin > :nth-child(5) { animation-delay: 0.36s; }
  .giris .portre { animation: belir 1.1s 0.15s cubic-bezier(.2, .7, .2, 1) both; }
  .giris .portre::before { animation: citalar-belir 2s 0.4s ease-out both; }
  .alan .sembol-hat { stroke-dasharray: 1; stroke-dashoffset: 0; }
  .alan:hover .sembol-hat { animation: hat-ciz 0.9s ease-in-out; }
  @supports (animation-timeline: view()) {
    .adimlar li, .alan, .program-karti, .yazi-listesi li, .ilkeler li {
      animation: belir linear both; animation-timeline: view(); animation-range: entry 0% entry 40%;
    }
  }
}
