/*
Theme Name: DM Clinic
Theme URI: https://www.dmclinic.com.tr/
Author: DM Clinic
Description: DM Clinic için sade, siyah-beyaz ve gold detaylı tek sayfalık klinik teması. Hekimler "Hekimler" menüsünden, iletişim bilgileri Görünüm › Özelleştir › DM Clinic Ayarları bölümünden yönetilir.
Version: 1.0.0
Requires at least: 6.0
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: dmclinic
*/

:root{
  --ink:#0a0a0a;
  --muted:#8a8a8a;
  --body:#3a3a3a;
  --line:#e9e9e9;
  --paper:#ffffff;
  --gold:#b8975a;
}
*{box-sizing:border-box;margin:0;padding:0}
html{-webkit-text-size-adjust:100%}
body{
  background:var(--paper);
  color:var(--ink);
  font-family:"Outfit",system-ui,-apple-system,"Segoe UI",sans-serif;
  font-weight:300;
  line-height:1.4;
  min-height:100vh;
  display:flex;
  flex-direction:column;
  -webkit-font-smoothing:antialiased;
}
a{color:inherit;text-decoration:none}
img{max-width:100%;height:auto}
.lc{text-transform:lowercase}
.screen-reader-text{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(1px,1px,1px,1px);white-space:nowrap}

.wrap{width:100%;max-width:1180px;margin:0 auto;padding:0 24px}

/* ---------- iki sütunlu ana düzen (ana sayfa ve sayfalar) ---------- */
main.wrap.split{
  flex:1;
  display:grid;
  grid-template-columns:1fr;
  gap:72px;
  padding-top:64px;
  padding-bottom:72px;
}
@media (min-width:960px){
  main.wrap.split{grid-template-columns:5fr 7fr;gap:64px;align-items:start;padding-top:12vh}
  .brand{position:sticky;top:12vh}
}
.admin-bar .brand{top:calc(12vh + 32px)}

.brand img{display:block;width:clamp(180px,30vw,300px);height:auto}
.page-split .brand img{width:clamp(140px,22vw,220px)}
.back{display:inline-block;font-size:14px;letter-spacing:.08em;color:var(--muted);transition:color .3s ease}
.back:hover{color:var(--gold)}
.brand .back{margin-top:28px}

/* ---------- başlık ---------- */
.heading{
  font-weight:300;
  font-size:clamp(34px,5vw,56px);
  letter-spacing:-.02em;
  line-height:1;
}
.heading .dot{color:var(--gold)}
.rule{width:36px;height:1px;background:var(--gold);margin:22px 0 28px}

/* ---------- hekim listesi ---------- */
.doctors{list-style:none}
.doctor{
  position:relative;
  display:flex;
  flex-direction:column;
  gap:4px;
  padding:14px 0;
  transition:padding .35s ease;
}
.doctor .name{
  font-size:clamp(22px,2.6vw,32px);
  font-weight:400;
  letter-spacing:-.01em;
  line-height:1.15;
}
.doctor .spec{
  font-size:14px;
  letter-spacing:.08em;
  color:var(--muted);
  transition:color .35s ease;
}
@media (min-width:640px){
  .doctor{flex-direction:row;align-items:baseline;justify-content:space-between;gap:24px}
  .doctor .spec{text-align:right;white-space:nowrap}
}
@media (hover:hover){
  .doctor:hover{padding-left:10px}
  .doctor:hover .spec{color:var(--gold)}
}
.doc-link{display:contents}
.doc-link::after{content:"";position:absolute;inset:0}
.doctor .arrow{display:inline-block;color:var(--gold);transition:transform .35s ease}
@media (hover:hover){.doctor:hover .arrow{transform:translateX(4px)}}

/* ---------- iletişim simgeleri ---------- */
.contact{display:flex;gap:12px;margin-top:56px}
.contact a{
  width:48px;height:48px;
  border:1px solid var(--line);
  border-radius:50%;
  display:grid;place-items:center;
  transition:border-color .3s ease,color .3s ease,transform .3s ease;
}
.contact svg{width:20px;height:20px;stroke:currentColor;fill:none;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.contact a:hover,.contact a:focus-visible{border-color:var(--gold);color:var(--gold);transform:translateY(-2px)}
.contact a:focus-visible{outline:none}

/* ---------- hekim profil sayfası ---------- */
header.wrap.top{
  display:flex;align-items:flex-end;justify-content:space-between;gap:24px;
  padding-top:40px;
}
header.top img{display:block;width:clamp(110px,14vw,150px);height:auto}
main.wrap.profile{
  flex:1;
  display:grid;
  grid-template-columns:1fr;
  gap:40px;
  padding-top:48px;
  padding-bottom:72px;
}
@media (min-width:860px){
  main.wrap.profile.has-photo{grid-template-columns:5fr 6fr;gap:72px;align-items:center;padding-top:8vh}
  main.wrap.profile{padding-top:8vh}
}
.portrait{margin:0;aspect-ratio:3/4;overflow:hidden;background:#f2f2f2;max-width:460px}
.portrait img{width:100%;height:100%;object-fit:cover;display:block;filter:grayscale(1)}
.info h1{font-weight:400;font-size:clamp(36px,5vw,60px);letter-spacing:-.02em;line-height:1.02}
.info .spec{margin-top:14px;font-size:15px;letter-spacing:.08em;color:var(--muted)}
.info .rule{margin:28px 0}
.info .bio{max-width:520px;color:var(--body);font-size:17px;line-height:1.75}
.info .bio p{margin-bottom:12px}
.info .contact{margin-top:44px}

/* ---------- metin sayfaları (KVKK vb.) ---------- */
.updated{font-size:13px;color:var(--muted);margin:-18px 0 36px}
.page-title{font-size:clamp(30px,4.4vw,48px);line-height:1.05}
.entry{max-width:680px;color:var(--body);font-size:16px;line-height:1.75}
.entry h2{font-size:18px;font-weight:500;color:var(--ink);margin:40px 0 10px;letter-spacing:-.005em}
.entry h2:first-child{margin-top:0}
.entry h3{font-size:16px;font-weight:500;color:var(--ink);margin:28px 0 8px}
.entry p{margin-bottom:12px}
.entry ul,.entry ol{margin:0 0 12px 1.1em}
.entry li{margin-bottom:6px}
.entry li::marker{color:var(--gold)}
.entry strong{font-weight:500;color:var(--ink)}
.entry a{border-bottom:1px solid var(--line);transition:border-color .3s ease}
.entry a:hover{border-color:var(--gold)}
.entry hr{border:0;border-top:1px solid var(--line);margin:48px 0 32px}

/* ---------- altbilgi ---------- */
.site-footer{border-top:1px solid var(--line);padding:22px 0 28px;font-size:13px;color:var(--muted)}
.site-footer .wrap{display:flex;flex-wrap:wrap;gap:6px 14px;align-items:center}
.site-footer .sep{color:var(--line)}
.site-footer a:hover{color:var(--ink)}
@media (max-width:639px){
  .site-footer .sep{display:none}
  .site-footer .wrap{flex-direction:column;align-items:flex-start}
}

/* ---------- açılış animasyonu ---------- */
.reveal{opacity:0;transform:translateY(14px);animation:dm-up .8s cubic-bezier(.2,.7,.2,1) forwards}
@keyframes dm-up{to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){
  .reveal{animation:none;opacity:1;transform:none}
  .doctor,.contact a{transition:none}
}

/* ---------- telefon yatay uyarısı ---------- */
.rotate{
  display:none;position:fixed;inset:0;z-index:100000;background:var(--paper);
  align-items:center;justify-content:center;text-align:center;padding:24px;font-size:18px;
}
@media (orientation:landscape) and (max-height:500px) and (pointer:coarse){.rotate{display:flex}}
