/* Kişisel sayfa içerikleri (eski cemevrenminaz kalıbı) — Dent360 iskeletinin
   renk/font değişkenlerine bağlandı. Yalnız .cem kabı içinde geçerli. */
.cem {
  --kagit: #f6f8f8;
  --kagit-koyu: var(--primary-50, #e8efee);
  --murekkep: var(--text, #1f2937);
  --murekkep-ikincil: var(--muted, #6b7280);
  --kokboya: var(--primary, #117C82);
  --kokboya-koyu: var(--primary-dark, #0C5A5E);
  --gomlek: var(--primary-50, #e8efee);
  --sahne: #10191b;
  --sahne-yazi: #e8eeee;
  --cizgi: var(--border, #e5e7eb);
  --serif: var(--font-serif, Georgia, serif);
  --sans: var(--font-sans, system-ui, sans-serif);
  --olcu-0: .875rem; --olcu-1: 1rem; --olcu-2: 1.0625rem; --olcu-3: 1.375rem; --olcu-4: 1.875rem;
  --olcu-5: clamp(2rem, 4vw, 2.875rem); --olcu-6: clamp(2.75rem, 7vw, 5.5rem);
  --genislik: var(--max-w, 1200px);
  --kenar: clamp(1rem, 3vw, 1.5rem);
  --bolum: clamp(3rem, 7vw, 5.5rem);
  font-size: var(--olcu-2); line-height: 1.6; color: var(--murekkep);
}
.cem img, .cem video { display: block; max-width: 100%; height: auto; }
.cem h1, .cem h2, .cem h3 { font-family: var(--serif); font-weight: 700; line-height: 1.15; margin: 0; letter-spacing: -.015em; color: inherit; }
.cem p { margin: 0 0 1em; }
.cem .gorunmez { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0; }
.kap { width: 100%; max-width: var(--genislik); margin-inline: auto; padding-inline: var(--kenar); }
/* Düğmeler */
.dugme {
  display: inline-flex; align-items: center; gap: .6rem;
  font: 500 var(--olcu-1)/1 var(--sans);
  padding: 1rem 1.5rem;
  border-radius: 999px;
  border: 1.5px solid transparent;
  text-decoration: none;
  cursor: pointer;
  transition: background-color .2s, color .2s, border-color .2s;
}
.dugme svg { width: 1.2em; height: 1.2em; flex: none; }
.dugme-ana { background: var(--kokboya); color: #fff; }
.dugme-ana:hover { background: var(--kokboya-koyu); }
.dugme-cizgi { border-color: var(--murekkep); color: var(--murekkep); }
.dugme-cizgi:hover { background: var(--murekkep); color: var(--kagit); }
/* Bölüm başlıkları */
.bolum { padding-block: var(--bolum); }
.bolum-bas { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 6fr); gap: 2rem 4rem; align-items: end; margin-bottom: 3rem; }
.bolum-bas h2 { font-size: var(--olcu-5); }
.bolum-bas p { margin: 0; color: var(--murekkep-ikincil); max-width: 52ch; }
@media (max-width: 760px) { .bolum-bas { grid-template-columns: 1fr; } }
/* Sahne (koyu) */
.sahne { position: relative; background: var(--sahne); color: var(--sahne-yazi); overflow: hidden; }
.sahne-video { position: absolute; inset: 0; }
.sahne-video video, .sahne-video img { width: 100%; height: 100%; object-fit: cover; }
.sahne-video::after {
  content: ""; position: absolute; inset: 0;
  background: linear-gradient(90deg, rgba(27,28,32,.96) 0%, rgba(27,28,32,.85) 45%, rgba(27,28,32,.35) 100%);
}
.sahne .kap { position: relative; z-index: 1; padding-block: clamp(5rem, 12vw, 9rem); }
.sahne blockquote { margin: 0; max-width: 36rem; }
.sahne blockquote p { font-family: var(--serif); font-size: clamp(1.6rem, 3.4vw, 2.6rem); line-height: 1.25; font-weight: 400; }
.sahne figcaption { font-size: var(--olcu-1); color: rgba(233,228,218,.7); margin-bottom: 2.5rem; }
.sahne .dugme-cizgi { border-color: var(--sahne-yazi); color: var(--sahne-yazi); }
.sahne .dugme-cizgi:hover { background: var(--sahne-yazi); color: var(--sahne); }
.sahne-dugmeler { display: flex; flex-wrap: wrap; gap: .75rem; }
@media (max-width: 760px) {
  .sahne-video::after { background: rgba(27,28,32,.82); }
}

/* Kitap */
.kitap { background: var(--kagit-koyu); }
.kitap .kap { display: grid; grid-template-columns: minmax(0, 4fr) minmax(0, 6fr); gap: 3rem clamp(2rem, 6vw, 6rem); align-items: center; }
.kitap-kapak img {
  width: 100%; max-width: 380px; margin-inline: auto;
  box-shadow: 0 1px 0 rgba(0,0,0,.08), 18px 24px 40px -18px rgba(46,48,54,.45);
  transform: rotate(-2deg);
}
.kitap h2 { font-size: var(--olcu-5); margin-bottom: 1.25rem; }
.kitap .konular { font-family: var(--serif); font-style: italic; font-size: var(--olcu-3); line-height: 1.35; margin-bottom: 1.5rem; }
.kitap .fiyat { display: flex; align-items: baseline; gap: 1rem; flex-wrap: wrap; margin-bottom: 2rem; }
.kitap .fiyat strong { font-family: var(--serif); font-size: var(--olcu-4); font-weight: 500; }
.kitap .fiyat span { color: var(--murekkep-ikincil); font-size: var(--olcu-1); }
@media (max-width: 760px) {
  .kitap .kap { grid-template-columns: 1fr; }
  .kitap-kapak img { max-width: 240px; }
}

/* Videolar */
.sekmeler { display: flex; gap: .5rem; flex-wrap: wrap; margin-bottom: 2rem; }
.sekme {
  font: 500 var(--olcu-1)/1 var(--sans);
  padding: .75rem 1.1rem; border-radius: 999px;
  border: 1px solid var(--cizgi); background: transparent; color: var(--murekkep);
  cursor: pointer;
}
.sekme:hover { border-color: var(--murekkep); }
.sekme[aria-selected="true"] { background: var(--murekkep); border-color: var(--murekkep); color: var(--kagit); }
.sekme small { opacity: .65; margin-left: .35rem; font-size: .8em; }
.video-izgara { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 2.25rem 1.5rem; }
@media (max-width: 900px) { .video-izgara { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 560px) {
  .video-izgara { grid-template-columns: 1fr; }
  .sekmeler { flex-wrap: nowrap; overflow-x: auto; margin-inline: calc(var(--kenar) * -1); padding-inline: var(--kenar); scrollbar-width: none; }
  .sekme { white-space: nowrap; }
}
.video-kart button {
  position: relative; display: block; width: 100%; padding: 0; border: 0; cursor: pointer;
  aspect-ratio: 16 / 9; background: var(--sahne); overflow: hidden; border-radius: 6px;
}
.video-kart img { width: 100%; height: 100%; object-fit: cover; transition: transform .4s; }
.video-kart button:hover img { transform: scale(1.03); }
.video-kart .oynat {
  position: absolute; right: .75rem; bottom: .75rem; width: 44px; height: 44px; border-radius: 50%;
  background: var(--kokboya); display: grid; place-items: center;
}
.video-kart .oynat svg { width: 20px; height: 20px; fill: #fff; margin-left: 3px; }
.video-kart iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }
.video-kart h3 { font-family: var(--sans); font-weight: 500; font-size: var(--olcu-1); line-height: 1.45; margin-top: .9rem; letter-spacing: 0; }
.videolar-alt { margin-top: 3rem; }
/* Hakkımda */
.hakkimda .kap { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 6fr); gap: 3rem clamp(2rem, 6vw, 6rem); align-items: center; }
.hakkimda-foto img { width: 100%; aspect-ratio: 4 / 5; object-fit: cover; object-position: 50% 40%; border-radius: 6px; }
.hakkimda h2 { font-size: var(--olcu-5); margin-bottom: 1.5rem; }
.hakkimda-metin p { max-width: 54ch; }
.zaman { list-style: none; padding: 0; margin: 2rem 0; display: grid; gap: .9rem; }
.zaman li { display: grid; grid-template-columns: 4.5rem 1fr; gap: 1rem; font-size: var(--olcu-1); }
.zaman b { font-family: var(--serif); font-weight: 600; font-size: var(--olcu-2); color: var(--kokboya); }
@media (max-width: 760px) { .hakkimda .kap { grid-template-columns: 1fr; } }

/* İletişim */
.iletisim { background: var(--gomlek); }
.iletisim .kap { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 6fr); gap: 3rem clamp(2rem, 6vw, 6rem); }
.iletisim h2 { font-size: var(--olcu-5); margin-bottom: 1.25rem; }
.iletisim-yol { list-style: none; padding: 0; margin: 2rem 0 0; display: grid; gap: 1rem; }
.iletisim-yol a { font-family: var(--serif); font-size: var(--olcu-3); text-decoration: none; }
.iletisim-yol a:hover { color: var(--kokboya); }
.iletisim-yol span { display: block; font-size: var(--olcu-0); color: var(--murekkep-ikincil); }
.form { display: grid; gap: 1.1rem; }
.form .iki { display: grid; grid-template-columns: 1fr 1fr; gap: 1.1rem; }
.alan label { display: block; font-size: var(--olcu-0); font-weight: 500; margin-bottom: .4rem; }
.alan input, .alan select, .alan textarea {
  width: 100%; font: inherit; font-size: var(--olcu-1); color: var(--murekkep);
  background: #fff; border: 1px solid rgba(46,48,54,.28); border-radius: 6px;
  padding: .85rem .9rem;
}
.alan textarea { min-height: 7.5rem; resize: vertical; }
.alan input:focus, .alan select:focus, .alan textarea:focus { outline: 2px solid var(--kokboya); outline-offset: 0; border-color: transparent; }
.form .hata { color: var(--kokboya); font-size: var(--olcu-0); margin: 0; min-height: 1.2em; }
.form .dugme { justify-self: start; }
@media (max-width: 760px) {
  .iletisim .kap { grid-template-columns: 1fr; }
  .form .iki { grid-template-columns: 1fr; }
}
/* ===== Hizmet sayfaları ===== */
.dar { max-width: 820px; }
.sayfa-h1 { font-size: var(--olcu-5); margin-bottom: 1.25rem; }

.hgiris { padding-block: clamp(2.5rem, 6vw, 5rem) clamp(3rem, 7vw, 6rem); }
.hgiris .kap { display: grid; grid-template-columns: minmax(0, 6fr) minmax(0, 5fr); gap: 3rem clamp(2rem, 5vw, 5rem); align-items: start; }
.hgiris-metin { padding-top: 1rem; }
.kirinti { font-size: var(--olcu-0); color: var(--murekkep-ikincil); margin-bottom: 1.25rem; }
.kirinti a { text-decoration: none; }
.kirinti a:hover { text-decoration: underline; }
.hgiris h1 { font-size: clamp(2.4rem, 5.2vw, 4.25rem); font-weight: 400; letter-spacing: -.025em; line-height: 1.02; margin-bottom: 1.5rem; font-variation-settings: "opsz" 60; }
.hgiris .ozet { font-size: var(--olcu-2); max-width: 40ch; margin-bottom: 2rem; }
.hgiris .kanit { font-size: var(--olcu-1); color: var(--murekkep-ikincil); max-width: 44ch; padding-top: 1.25rem; border-top: 1px solid var(--cizgi); margin: 0; }
.hgiris-gorsel { margin-top: 2.5rem; }
.hgiris-gorsel img { border-radius: 6px; width: 100%; aspect-ratio: 16 / 10; object-fit: cover; }
@media (max-width: 900px) { .hgiris .kap { grid-template-columns: 1fr; } }

.kart-form {
  background: #fff;
  border-radius: 10px;
  padding: clamp(1.25rem, 3vw, 2rem);
  box-shadow: 0 1px 0 rgba(46,48,54,.06), 0 24px 48px -32px rgba(46,48,54,.45);
  gap: 1rem;
  grid-template-columns: 1fr 1fr;
}
.kart-form > * { grid-column: 1 / -1; }
.kart-form > .alan:not(.genis) { grid-column: auto; }
.kart-form .alan input, .kart-form .alan select, .kart-form .alan textarea { background: var(--kagit); border-color: transparent; }
.kart-form .alan textarea { min-height: 5.5rem; }
.form-baslik { font-size: var(--olcu-3); margin-bottom: .25rem; }
.form-not { font-size: var(--olcu-0); color: var(--murekkep-ikincil); margin: 0; }
.kart-form .dugme { justify-self: stretch; justify-content: center; }
.form-bolum { font-family: var(--serif); font-size: var(--olcu-2); font-weight: 600; margin: .75rem 0 0; padding-top: 1rem; border-top: 1px solid var(--cizgi); }
@media (max-width: 560px) { .kart-form { grid-template-columns: 1fr; } .kart-form > .alan:not(.genis) { grid-column: 1 / -1; } }

.odeme { background: var(--kagit); border-radius: 8px; padding: 1rem 1.1rem; font-size: var(--olcu-0); line-height: 1.55; }
.odeme dl { display: grid; grid-template-columns: auto 1fr; gap: .25rem 1rem; margin: 0; }
.odeme dt { color: var(--murekkep-ikincil); }
.odeme dd { margin: 0; font-weight: 500; word-break: break-word; }
.kopyala { font: inherit; font-size: var(--olcu-0); background: none; border: 0; color: var(--kokboya); text-decoration: underline; cursor: pointer; padding: 0; margin-left: .5rem; }
.toplam { display: flex; justify-content: space-between; align-items: baseline; padding: .9rem 1.1rem; border-radius: 8px; background: var(--murekkep); color: var(--kagit); }
.toplam strong { font-family: var(--serif); font-size: var(--olcu-3); font-weight: 500; }
.alan input[type="file"] { padding: .7rem; font-size: var(--olcu-0); }

/* Kapsam: başlık + açıklama, iki sütun */
.kapsam { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 4rem; }
.kapsam > div { border-top: 1px solid var(--cizgi); padding: 1.5rem 0 1.75rem; }
.kapsam h3 { font-size: var(--olcu-3); margin-bottom: .6rem; }
.kapsam p { margin: 0; color: var(--murekkep-ikincil); }
@media (max-width: 760px) { .kapsam { grid-template-columns: 1fr; } }

/* Süreç: gerçekten sıralı adımlar */
.surec { list-style: none; counter-reset: adim; padding: 0; margin: 0; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 2rem; }
.surec li { counter-increment: adim; border-top: 1.5px solid var(--murekkep); padding-top: 1.25rem; }
.surec li::before { content: counter(adim); display: block; font-family: var(--serif); font-size: var(--olcu-4); color: var(--kokboya); line-height: 1; margin-bottom: .75rem; }
.surec h3 { font-size: var(--olcu-2); font-family: var(--sans); font-weight: 500; letter-spacing: 0; margin-bottom: .4rem; }
.surec p { margin: 0; font-size: var(--olcu-1); color: var(--murekkep-ikincil); }
@media (max-width: 900px) { .surec { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 520px) { .surec { grid-template-columns: 1fr; } }

/* Öne çıkan bilgi bandı */
.bilgi { background: var(--murekkep); color: var(--kagit); }
.bilgi .kap { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 2rem; padding-block: 2.5rem; }
.bilgi b { display: block; font-family: var(--serif); font-weight: 500; font-size: var(--olcu-4); line-height: 1.1; }
.bilgi span { font-size: var(--olcu-1); color: rgba(239,232,220,.75); }
@media (max-width: 760px) { .bilgi .kap { grid-template-columns: 1fr 1fr; } }

/* Düz metin bölümü */
.yazi .kap { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); gap: 2rem 4rem; }
.yazi h2 { font-size: var(--olcu-5); }
.yazi-metin p { max-width: 62ch; }
.yazi-metin ul { padding-left: 1.2rem; margin: 0 0 1em; }
.yazi-metin li { margin-bottom: .4rem; }
@media (max-width: 760px) { .yazi .kap { grid-template-columns: 1fr; } }
.alt-zemin { background: var(--kagit-koyu); }

/* SSS */
.sss h2 { font-size: var(--olcu-5); margin-bottom: 2rem; }
.sss details { border-top: 1px solid var(--cizgi); }
.sss details:last-of-type { border-bottom: 1px solid var(--cizgi); }
.sss summary {
  list-style: none; cursor: pointer; padding: 1.25rem 2.5rem 1.25rem 0; position: relative;
  font-family: var(--serif); font-size: var(--olcu-3); line-height: 1.3;
}
.sss summary::-webkit-details-marker { display: none; }
.sss summary::after { content: "+"; position: absolute; right: .25rem; top: 1.1rem; font-family: var(--sans); font-size: 1.6rem; line-height: 1; color: var(--kokboya); transition: transform .2s; }
.sss details[open] summary::after { transform: rotate(45deg); }
.sss details p { margin: 0 0 1.5rem; color: var(--murekkep-ikincil); max-width: 68ch; }

/* Çağrı bandı */
.cagri { background: var(--kokboya); color: #fff; }
.cagri .kap { padding-block: clamp(3.5rem, 7vw, 5.5rem); }
.cagri h2 { font-size: var(--olcu-5); margin-bottom: 1rem; max-width: 20ch; }
.cagri p { max-width: 52ch; margin-bottom: 2rem; color: rgba(255,255,255,.85); }
.cagri .dugme-ana { background: #fff; color: var(--kokboya); }
.cagri .dugme-ana:hover { background: var(--kagit); }
.cagri .dugme-cizgi { border-color: #fff; color: #fff; }
.cagri .dugme-cizgi:hover { background: #fff; color: var(--kokboya); }

/* Dikey seminer videoları */
.dikey-videolar { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem; }
.dikey-videolar video { width: 100%; aspect-ratio: 9 / 16; object-fit: cover; border-radius: 8px; background: var(--sahne); }
@media (max-width: 560px) {
  .dikey-videolar { grid-template-columns: repeat(3, 70%); overflow-x: auto; scroll-snap-type: x mandatory; margin-inline: calc(var(--kenar) * -1); padding-inline: var(--kenar); }
  .dikey-videolar video { scroll-snap-align: start; }
}

/* Kitap sayfası: içindekiler */
.icindekiler { list-style: none; padding: 0; margin: 0; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 4rem; counter-reset: kisim; }
.icindekiler li { counter-increment: kisim; display: flex; gap: 1rem; border-top: 1px solid var(--cizgi); padding: 1rem 0; font-family: var(--serif); font-size: var(--olcu-3); }
.icindekiler li::before { content: counter(kisim, upper-roman); color: var(--kokboya); min-width: 2.5rem; }
.icindekiler li span { margin-right: auto; }
.icindekiler small { font-family: var(--sans); font-size: var(--olcu-0); color: var(--murekkep-ikincil); align-self: center; }
@media (max-width: 760px) { .icindekiler { grid-template-columns: 1fr; } }

[hidden] { display: none !important; }

/* Fotoğraf + metin */
.foto-metin { display: grid; grid-template-columns: minmax(0, 4fr) minmax(0, 6fr); gap: 3rem clamp(2rem, 6vw, 6rem); align-items: center; }
.foto-metin > img { width: 100%; aspect-ratio: 4 / 5; object-fit: cover; border-radius: 6px; }
.foto-metin h2 { font-size: var(--olcu-5); margin-bottom: 1.25rem; }
@media (max-width: 760px) { .foto-metin { grid-template-columns: 1fr; } }
.hgiris-kitap .hgiris-gorsel img { aspect-ratio: auto; object-fit: contain; max-width: 340px; border-radius: 0; }
@media (max-width: 900px) { .hgiris-kitap .hgiris-gorsel img { max-width: 220px; } }

/* Referanslar */
.referanslar { background: var(--sahne); color: var(--sahne-yazi); }
.referanslar .bolum-bas p { color: rgba(233,228,218,.72); }
.ref-izgara { list-style: none; padding: 0; margin: 0; display: grid; grid-template-columns: repeat(auto-fill, minmax(128px, 1fr)); gap: .75rem; }
.ref-izgara img { width: 100%; height: auto; aspect-ratio: 1; border-radius: 6px; }
.ref-devam { margin-top: 2rem; }
.ref-devam summary { list-style: none; }
.ref-devam summary::-webkit-details-marker { display: none; }
.ref-devam[open] summary { display: none; }
.referanslar .dugme-cizgi { border-color: var(--sahne-yazi); color: var(--sahne-yazi); }
.referanslar .dugme-cizgi:hover { background: var(--sahne-yazi); color: var(--sahne); }
.ref-tumu { margin-top: 2rem; }
@media (max-width: 560px) { .ref-izgara { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: .5rem; } }

/* ===== Video bölümleri (her kategori ayrı bölüm) ===== */
.vbolum + .vbolum { margin-top: clamp(2.75rem, 5vw, 4rem); }
.vbolum-bas { display: flex; justify-content: space-between; align-items: flex-end; gap: 1rem 2rem; margin-bottom: 1.25rem; }
.vbolum-bas h2, .vbolum-bas h3 { font-size: var(--olcu-4); margin-bottom: .4rem; }
.vbolum-izgara .vbolum-bas h2 { font-size: var(--olcu-5); }
.vbolum-bas p { margin: 0; color: var(--murekkep-ikincil); max-width: 60ch; }
.vsayi { white-space: nowrap; color: var(--kokboya); font-weight: 500; margin-left: .35rem; }
.vbolum-araclar { display: flex; align-items: center; gap: .5rem; flex: none; }
.vbolum-araclar .ok {
  width: 44px; height: 44px; border-radius: 50%; border: 1px solid var(--cizgi); background: transparent;
  display: grid; place-items: center; cursor: pointer; color: var(--murekkep);
}
.vbolum-araclar .ok svg { width: 18px; height: 18px; fill: none; stroke: currentColor; stroke-width: 2; }
.vbolum-araclar .ok:hover:not(:disabled) { border-color: var(--murekkep); }
.vbolum-araclar .ok:disabled { opacity: .35; cursor: default; }
.vbolum-araclar .tumu { margin-left: .5rem; font-size: var(--olcu-1); text-underline-offset: 4px; }
.kaydirilamaz .ok { display: none; }

.video-satir {
  display: grid; grid-auto-flow: column; grid-auto-columns: calc((100% - 3rem) / 4); gap: 1rem;
  overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; padding-bottom: .25rem;
}
.video-satir::-webkit-scrollbar { display: none; }
.video-satir .video-kart { scroll-snap-align: start; }
@media (max-width: 1100px) { .video-satir { grid-auto-columns: calc((100% - 2rem) / 3); } }
@media (max-width: 760px) {
  .video-satir { grid-auto-columns: 72%; margin-inline: calc(var(--kenar) * -1); padding-inline: var(--kenar); scroll-padding-inline: var(--kenar); }
  .vbolum-araclar .ok { display: none; }
  .vbolum-bas { align-items: flex-start; flex-direction: column; }
}

.video-baslik { font-weight: 500; font-size: var(--olcu-1); line-height: 1.45; margin: .8rem 0 0; }
.video-oynatici { position: relative; aspect-ratio: 16 / 9; border-radius: 6px; overflow: hidden; background: var(--sahne); }
.video-oynatici iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }
.videolar-alan .videolar-alt { margin-top: 3rem; }

/* Videolar sayfası */
.vsayfa-giris .kap { display: block; }
.vsayfa-giris .ozet { max-width: 52ch; }
.konu-listesi { display: flex; flex-wrap: wrap; gap: .5rem; margin: 0 0 2rem; }
.konu-listesi a {
  text-decoration: none; padding: .7rem 1.1rem; border-radius: 999px; border: 1px solid var(--cizgi); font-size: var(--olcu-1);
}
.konu-listesi a:hover { border-color: var(--murekkep); }
.konu-listesi span { color: var(--kokboya); margin-left: .3rem; }
.vsayfa { padding-top: 0; }
.vsayfa .vbolum { scroll-margin-top: 90px; }
.vsayfa .vbolum + .vbolum { padding-top: clamp(2.5rem, 5vw, 4rem); border-top: 1px solid var(--cizgi); }

/* Seminer videoları (kendi sunucumuzda) */
.sv-yatay { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; margin-bottom: clamp(2.75rem, 5vw, 4rem); }
.sv-yatay .sv-buyuk { grid-column: 1 / -1; }
.sv-kart { position: relative; margin: 0; }
.sv-kart video { display: block; width: 100%; border-radius: 8px; background: var(--sahne); }
.sv-yatay video { aspect-ratio: 16 / 9; }
.sv-dikey { grid-auto-columns: calc((100% - 4rem) / 5); }
.sv-dikey video { aspect-ratio: 9 / 16; object-fit: cover; }
.sv-kart figcaption {
  position: absolute; top: .6rem; right: .6rem; pointer-events: none;
  background: rgba(27,28,32,.75); color: #fff; font-size: var(--olcu-0); padding: .15rem .5rem; border-radius: 4px;
}
@media (max-width: 1100px) { .sv-dikey { grid-auto-columns: calc((100% - 3rem) / 4); } }
@media (max-width: 760px) {
  .sv-yatay { grid-template-columns: 1fr; }
  .sv-dikey { grid-auto-columns: 58%; }
}
/* Dent360 ile uyum */
.cem .dugme { border-radius: var(--radius-full, 999px); font-weight: 600; }
.cem .kart-form, .cem .video-kart button, .cem .video-oynatici, .cem .sv-kart video { border-radius: var(--radius-lg, 14px); }
.cem .hgiris { background: linear-gradient(180deg, var(--primary-50, #e8efee), transparent); }
.cem .alan input, .cem .alan select, .cem .alan textarea { border-radius: var(--radius, 10px); }

/* Hizmet kartları: 3 sütun, dikey kartlar (6 hizmet = 2 satır) */
@media (min-width: 768px) {
  .home-tx-photo-grid { grid-template-columns: repeat(3, 1fr) !important; gap: 1.1rem; max-width: 1160px; margin-inline: auto; }
  .home-tx-photo-card { aspect-ratio: 3 / 4; }
}
.home-tx-photo-card { align-items: center; justify-content: center; }

/* Seminer videoları — Dent360 "Kliniğimiz" kalıbı */
.sv2 .section-eyebrow { margin: 0; }
.sv2-yatay { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; max-width: 960px; margin: 0 auto 1.6rem; }
.sv2-dikey { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 1rem; max-width: 960px; margin: 0 auto; }
.sv2-kart { position: relative; display: block; width: 100%; border: 0; padding: 0; cursor: pointer; border-radius: 16px; overflow: hidden; background: #04343b; box-shadow: 0 12px 30px -14px rgba(0,0,0,.55); transition: transform .25s, box-shadow .25s; }
.sv2-kart:hover { transform: translateY(-4px); box-shadow: 0 22px 44px -16px rgba(0,0,0,.65); }
.sv2-genis { aspect-ratio: 16 / 9; }
.sv2-dik { aspect-ratio: 9 / 16; }
.sv2-kart img { width: 100%; height: 100%; object-fit: cover; display: block; }
.sv2-kart .gv-play { position: absolute; inset: 0; margin: auto; width: 54px; height: 54px; display: flex; align-items: center; justify-content: center; background: rgba(255,255,255,.92); color: var(--primary, #117C82); border-radius: 50%; box-shadow: 0 6px 18px rgba(0,0,0,.3); }
.sv2-sure { position: absolute; top: .55rem; right: .55rem; background: rgba(0,0,0,.6); color: #fff; font-size: .75rem; padding: .1rem .45rem; border-radius: 4px; }
.sv2-gizli { display: none; }
.sv2-devam { text-align: center; margin-top: 1.6rem; }
#sv2Modal .video-modal-body video { width: 100%; max-height: 85vh; display: block; background: #000; }
@media (max-width: 900px) { .sv2-dikey { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (max-width: 560px) { .sv2-yatay { grid-template-columns: 1fr; } .sv2-dikey { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .7rem; } }

/* YouTube video bölümleri — Peganom düzeni: koyu zemin, ortalı başlık, 4 sütun kapak, altta kanal düğmesi */
.cem .vb { background: #0b1820; color: #e8eef0; padding-block: clamp(3.5rem, 7vw, 5.5rem); scroll-margin-top: 90px; }
.cem .vb + .vb { border-top: 1px solid rgba(255,255,255,.06); }
.cem .vb .kap { max-width: 1140px; }
.cem .vb-bas { text-align: center; margin-bottom: 2.4rem; }
.cem .vb-etiket { display: block; font-size: .72rem; font-weight: 700; letter-spacing: .22em; text-transform: uppercase; color: var(--accent, #5DAAC7); margin-bottom: .6rem; }
.cem .vb-bas h2, .cem .vb-bas h3 { font-size: clamp(1.9rem, 3.6vw, 2.75rem); color: #fff; margin-bottom: .6rem; }
.cem .vb-bas p { color: rgba(232,238,240,.65); margin: 0 auto; max-width: 56ch; font-size: 1rem; }
.cem .vb-izgara { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1rem; }
.cem .vb .video-kart button { aspect-ratio: 16 / 9; border-radius: 10px; border: 2px solid rgba(255,255,255,.12); background: #000; transition: border-color .2s, transform .2s; }
.cem .vb .video-kart button:hover { border-color: var(--accent, #5DAAC7); transform: translateY(-3px); }
.cem .vb .video-kart img { width: 100%; height: 100%; object-fit: cover; }
.cem .vb .video-kart .oynat { width: 34px; height: 34px; right: .6rem; bottom: .6rem; background: rgba(255,255,255,.18); border: 1px solid rgba(255,255,255,.5); backdrop-filter: blur(4px); }
.cem .vb .video-kart .oynat svg { width: 14px; height: 14px; margin-left: 2px; }
.cem .vb .video-oynatici { border-radius: 10px; }
.cem .vb-alt { display: flex; flex-wrap: wrap; justify-content: center; gap: .75rem; margin-top: 2.4rem; }
.cem .vb-dugme { display: inline-flex; align-items: center; gap: .6rem; padding: .95rem 1.6rem; border-radius: 10px; background: var(--primary, #117C82); color: #fff; font-weight: 600; font-size: .95rem; text-decoration: none; box-shadow: 0 10px 24px -12px rgba(0,0,0,.6); transition: background .2s, transform .2s; }
.cem .vb-dugme:hover { background: var(--primary-dark, #0C5A5E); transform: translateY(-2px); }
.cem .vb-dugme svg { width: 14px; height: 14px; fill: currentColor; }
.cem .vb-dugme-cizgi { background: transparent; border: 1px solid rgba(255,255,255,.35); box-shadow: none; }
.cem .vb-dugme-cizgi:hover { background: rgba(255,255,255,.08); }
@media (max-width: 900px) { .cem .vb-izgara { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 480px) { .cem .vb-izgara { gap: .6rem; } .cem .vb-dugme { font-size: .85rem; padding: .85rem 1.1rem; } }

/* Peganom görünümü (kullanıcı isteği, 30 Eki): lacivert zemin, altın etiket ve düğme, Playfair başlık */
.cem .vb { background: #07111f; font-family: "DM Sans", var(--font-sans, sans-serif); }
.cem .vb + .vb { border-top: 1px solid rgba(255,255,255,.05); }
.cem .vb-etiket { color: #c8973a; font-weight: 600; letter-spacing: .25em; font-size: .7rem; }
.cem .vb-bas h2, .cem .vb-bas h3 { font-family: "Playfair Display", Georgia, serif; font-weight: 700; letter-spacing: 0; color: #fff; }
.cem .vb-bas p { color: rgba(220,228,238,.62); font-size: .95rem; }
.cem .vb .video-kart button { border: 2px solid #2a2f38; border-radius: 8px; }
.cem .vb .video-kart button:hover { border-color: #c8973a; }
.cem .vb .video-kart .oynat { background: rgba(60,64,72,.75); border: 1px solid rgba(255,255,255,.35); }
.cem .vb-dugme { background: #c8973a; color: #111; border-radius: 8px; box-shadow: 0 10px 28px -10px rgba(200,151,58,.55); }
.cem .vb-dugme:hover { background: #d8a94a; color: #111; }
.cem .vb-dugme-cizgi { background: transparent; color: #fff; border: 1px solid rgba(200,151,58,.6); box-shadow: none; }
.cem .vb-dugme-cizgi:hover { background: rgba(200,151,58,.12); color: #fff; }

/* Hizmet grupları (11 Kas): ana sayfada iki başlıklı grup, menüde iki sütun */
.home-tx-grup { text-align: center; font-size: clamp(1.25rem, 2.4vw, 1.6rem); margin: 2.4rem 0 1.2rem; color: var(--text, #1f2937); }
.home-treatments .section-head + .home-tx-grup { margin-top: .4rem; }
@media (min-width: 768px) {
  .home-tx-photo-grid { display: flex !important; flex-wrap: wrap; justify-content: center; }
  .home-tx-photo-grid > .home-tx-photo-card { flex: 0 0 calc((100% - 2.2rem) / 3); }
}
.home-tx-photo-lbl { line-height: 1.3; }
@media (min-width: 1024px) {
  .mega-panel.mega-hizmet { display: grid; grid-template-columns: repeat(2, minmax(270px, 1fr)); gap: .4rem 1rem; min-width: 620px; padding: .9rem; }
}
.mega-hizmet-baslik { display: block; font-size: .7rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; color: var(--primary, #B4342A); padding: .4rem .7rem .3rem; }
.mega-hizmet-grup + .mega-hizmet-grup { border-top: 1px solid var(--border, #e5e7eb); }
@media (min-width: 1024px) { .mega-hizmet-grup + .mega-hizmet-grup { border-top: 0; border-left: 1px solid var(--border, #e5e7eb); padding-left: .6rem; } }

/* Hizmet grupları — kompakt kartlar (11 Kas, 3 grup) */
.home-treatments .hz-grup { max-width: 1160px; margin: 0 auto 2.6rem; }
.hz-grup-bas { text-align: center; margin-bottom: 1.2rem; }
.hz-grup-bas h3 { font-size: clamp(1.3rem, 2.4vw, 1.7rem); margin: 0 0 .35rem; }
.hz-grup-bas h3 a { color: inherit; text-decoration: none; }
.hz-grup-bas h3 a:hover { color: var(--primary); }
.hz-grup-bas p { margin: 0; color: var(--muted, #6b7280); }
.hz-kartlar, .cem .grup-kartlar { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: .8rem; }
.hz-kart { position: relative; display: flex; flex-direction: column; gap: .35rem; height: 100%; padding: 1.1rem 1.2rem 1.15rem; border: 1px solid var(--border, #e5e7eb); border-radius: var(--radius-lg, 14px); background: #fff; color: inherit; text-decoration: none; transition: border-color .2s, transform .2s, box-shadow .2s; }
.hz-kart:hover { border-color: var(--primary); transform: translateY(-2px); box-shadow: 0 14px 30px -18px rgba(var(--primary-rgb), .45); }
.hz-kart strong { font-size: 1rem; line-height: 1.3; padding-right: 1.4rem; }
.hz-kart strong::after { content: "→"; position: absolute; right: 1.1rem; top: 1.1rem; color: var(--primary); }
.hz-kart > span:not(.hz-rozet) { font-size: .88rem; color: var(--muted, #6b7280); line-height: 1.45; }
.hz-ana { border-color: rgba(var(--primary-rgb), .45); background: var(--primary-50, #fbeeed); }
.hz-rozet { align-self: flex-start; font-size: .66rem; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; color: #fff; background: var(--primary); padding: .2rem .55rem; border-radius: 999px; }
@media (max-width: 900px) { .hz-kartlar, .cem .grup-kartlar { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 560px) { .hz-kartlar, .cem .grup-kartlar { grid-template-columns: 1fr; } }

/* Grup sayfası kartları */
.cem .grup-kartlar a { position: relative; display: flex; flex-direction: column; gap: .4rem; height: 100%; padding: 1.3rem 1.3rem 1.2rem; background: #fff; border: 1px solid var(--cizgi); border-radius: var(--radius-lg, 14px); text-decoration: none; transition: border-color .2s, transform .2s; }
.cem .grup-kartlar a:hover { border-color: var(--kokboya); transform: translateY(-2px); }
.cem .grup-kartlar h3 { font-size: 1.15rem; }
.cem .grup-kartlar p { margin: 0; color: var(--murekkep-ikincil); font-size: .95rem; }
.cem .grup-kartlar .git { margin-top: auto; padding-top: .5rem; color: var(--kokboya); font-size: .9rem; font-weight: 600; }
.cem .grup-rozet { align-self: flex-start; font-size: .66rem; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; color: #fff; background: var(--kokboya); padding: .2rem .55rem; border-radius: 999px; }
.cem .kapsam > div[id] { scroll-margin-top: 110px; }

/* Menü: üç grup sütunu */
@media (min-width: 1024px) {
  .mega-panel.mega-hizmet { grid-template-columns: repeat(3, minmax(230px, 1fr)) !important; min-width: 820px; }
}
a.mega-hizmet-baslik { text-decoration: none; }
a.mega-hizmet-baslik:hover { text-decoration: underline; }

/* Fotoğraflı hizmet kartlarına geri dönüş (11 Kas): rozet, kısa açıklama, diğer sektör bağlantıları */
.home-tx-photo-card .hz-foto-rozet { position: absolute; top: .8rem; left: .8rem; z-index: 3; font-size: .66rem; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; color: #fff; background: var(--primary); padding: .25rem .6rem; border-radius: 999px; }
.hz-foto-kisa { font-size: .85rem; line-height: 1.4; color: rgba(255,255,255,.85); max-width: 26ch; }
.hz-diger { display: flex; flex-wrap: wrap; justify-content: center; align-items: center; gap: .45rem; margin-top: 1.1rem; }
.hz-diger span { font-size: .85rem; color: var(--muted, #6b7280); margin-right: .2rem; }
.hz-diger a { font-size: .85rem; padding: .4rem .8rem; border: 1px solid var(--border, #e5e7eb); border-radius: 999px; color: inherit; text-decoration: none; background: #fff; transition: border-color .2s, color .2s; }
.hz-diger a:hover { border-color: var(--primary); color: var(--primary); }
.home-treatments .hz-grup { margin-bottom: 3.2rem; }

/* Üst menü (11 Kas): uzun alt menüler masaüstünde iki sütun */
@media (min-width: 1024px) {
  .mega-panel-mini.mega-uzun { min-width: 640px; }
  .mega-panel-mini.mega-uzun ul { display: grid !important; grid-template-columns: 1fr 1fr; gap: .1rem .6rem; }
}
.mega-ara-baslik { grid-column: 1 / -1; font-size: .68rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; color: var(--primary); padding: .7rem .7rem .2rem; border-top: 1px solid var(--border, #e5e7eb); margin-top: .3rem; list-style: none; }
/* Uzun menüde sağdaki WhatsApp düğmesi taşmasın: dar masaüstünde yalnız ikon */
@media (min-width: 1024px) and (max-width: 1499px) {
  .btn-contact-cta .btn-cta-text { display: none; }
  .btn-contact-cta { padding: .45rem; }
}
@media (min-width: 1024px) and (max-width: 1399px) {
  #mainNav > .has-mega > a > svg { display: none; }
  #mainNav > .has-mega > a { padding-left: .7rem; padding-right: .7rem; font-size: .86rem; }
  #mainNav { gap: .25rem; }
}
@media (min-width: 1024px) and (max-width: 1179px) {
  #mainNav > .has-mega > a { padding-left: .5rem; padding-right: .5rem; font-size: .8rem; }
  .header .logo img { width: 104px; height: auto; }
}
/* Mobil menüde alt menüler tam genişlik (style.css'teki 280px sınırı masaüstü içindi) */
@media (max-width: 1023px) {
  .main-nav.is-open .mega-panel-mini { max-width: none !important; min-width: 0 !important; width: 100% !important; }
  .main-nav.is-open .mega-panel-mini.mega-uzun ul { display: block !important; }
}

/* Alt menü düzeltmesi (11 Kas): style.css'teki 280px sınırı uzun menüleri sıkıştırıyordu */
@media (min-width: 1024px) {
  .mega-panel-mini.mega-uzun { max-width: none !important; width: 560px; min-width: 560px !important; padding: .7rem; }
  .mega-panel-mini.mega-uzun ul { gap: .1rem .4rem; }
  .mega-panel-mini.mega-uzun ul li { list-style: none; }
  .mega-panel-mini.mega-uzun ul li a { white-space: nowrap; font-size: .9rem; padding: .5rem .7rem; }
}
