/*
Theme Name: Elif Gezgor
Theme URI: https://elifgezgor.com
Description: Psikolog Elif Gezgor icin hazirlanmis, donusum odakli alt tema. Twenty Twenty-Five tabanli.
Author: KS Ajans
Version: 1.0.0
Template: twentytwentyfive
Requires at least: 6.7
Tested up to: 6.8
Requires PHP: 7.4
Text Domain: elif-gezgor
*/

/* ---------- Temel ---------- */
:root{
  --eg-ring: 0 1px 2px rgba(42,39,36,.04), 0 8px 24px -12px rgba(42,39,36,.10);
  --eg-ring-hover: 0 1px 2px rgba(42,39,36,.05), 0 16px 32px -14px rgba(42,39,36,.16);
  --eg-radius: 10px;
}
html{ -webkit-text-size-adjust:100%; scroll-behavior:smooth; }

/* WP, .wp-site-blocks çocuklarına blok aralığı kadar üst boşluk veriyor.
   Bu, yapışkan başlık ile hero arasında boşluk bırakıyordu. */
.wp-site-blocks > main{ margin-block-start:0; }
.wp-site-blocks > header{ margin-block-start:0; }
body{ -webkit-font-smoothing:antialiased; -moz-osx-font-smoothing:grayscale; }
img{ max-width:100%; height:auto; }
::selection{ background:var(--wp--preset--color--accent); color:var(--wp--preset--color--contrast); }
:focus-visible{ outline:2px solid var(--wp--preset--color--accent-deep); outline-offset:2px; border-radius:3px; }

/* ---------- Ust alan ---------- */
.eg-header{
  position:sticky; top:0; z-index:60;
  background:#FCFAF8;
  border-bottom:1px solid var(--wp--preset--color--line);
}
.eg-nav a{
  text-decoration:none; color:var(--wp--preset--color--contrast);
  font-size:.9rem; letter-spacing:.005em; padding:.35rem 0;
}
.eg-nav a:hover{ color:var(--wp--preset--color--accent-deep); }
.eg-nav .current-menu-item > a{ color:var(--wp--preset--color--accent-deep); }
.eg-nav .wp-block-navigation__submenu-container{
  border:1px solid var(--wp--preset--color--line); border-radius:8px;
  box-shadow:var(--eg-ring); padding:.35rem; background:#fff; min-width:235px;
}
.eg-nav .wp-block-navigation__submenu-container a{ padding:.5rem .7rem; border-radius:5px; font-size:.875rem; }
.eg-nav .wp-block-navigation__submenu-container a:hover{ background:var(--wp--preset--color--base-blush); }

/* ---------- Butonlar ---------- */
.wp-block-button__link{ transition:background-color .18s ease, transform .18s ease, box-shadow .18s ease; }
.wp-block-button__link:hover{ transform:translateY(-1px); }
.eg-btn-ghost .wp-block-button__link{
  background:transparent !important; color:var(--wp--preset--color--contrast) !important;
  border:1px solid var(--wp--preset--color--line); box-shadow:none;
}
.eg-btn-ghost .wp-block-button__link:hover{
  background:#fff !important; border-color:var(--wp--preset--color--accent-mid);
  color:var(--wp--preset--color--accent-deep) !important;
}
.eg-btn-wa .wp-block-button__link{ background:#1FA855 !important; }
.eg-btn-wa .wp-block-button__link:hover{ background:#177F40 !important; }

/* ---------- Etiket ---------- */
.eg-eyebrow{
  font-size:.72rem !important; letter-spacing:.14em; text-transform:uppercase;
  color:var(--wp--preset--color--accent-deep); font-weight:600; margin-bottom:.5rem !important;
}
/* WP'nin ".is-layout-constrained > :where(...)" kuralı margin:auto veriyor ve paragrafı ortalıyordu.
   Aynı özgüllükte olduğu için etiket seçicisiyle ağırlığı artırıyoruz. */
/* Sadece tipografi. Genişliği kapsayıcı belirler (dar sayfalarda 680px). */
.eg-lede{ font-size:1.0625rem; color:var(--wp--preset--color--contrast-soft); line-height:1.8; }

/* Geniş (1120px) bölümlerde metni okunur genişlikte tutup başlıkla sola hizala.
   WP'nin constrained düzeni margin:auto verdiği için burada ezmek gerekiyor.
   Bu sınıf YALNIZCA 1120px'lik bölümlerde kullanılır; dar akışta öğeyi sola fırlatır. */
p.eg-lede-narrow{ max-width:62ch; margin-left:0 !important; margin-right:auto !important; }

/* SSS genişliğini kapsayıcı belirler: alt sayfalarda 680px, ana sayfada 1120px.
   Sabit max-width + margin ezmesi, ortalanmış akışta hizayı bozuyordu. */

/* ---------- Kahraman bolum ---------- */
.eg-hero{ position:relative; overflow:hidden; background:linear-gradient(168deg,#FAEEE9 0%,#FCFAF8 62%); }
.eg-hero::after{
  content:""; position:absolute; right:-140px; top:-160px; width:420px; height:420px;
  background:radial-gradient(circle,rgba(234,192,180,.42) 0%,rgba(234,192,180,0) 68%);
  pointer-events:none;
}
.eg-hero h1{ font-size:2rem; line-height:1.2; letter-spacing:-.012em; }
.eg-hero-photo img{
  border-radius:var(--eg-radius); box-shadow:var(--eg-ring);
  aspect-ratio:4/5; object-fit:cover; object-position:center 15%; width:100%;
}
.eg-hero-photo{ position:relative; }
.eg-hero-photo figure{ position:relative; margin:0; }
.eg-hero-photo figure::before{
  content:""; position:absolute; inset:14px -14px -14px 14px;
  border:1px solid var(--wp--preset--color--accent-mid); border-radius:var(--eg-radius);
  pointer-events:none;
}

/* ---------- Kartlar ---------- */
.eg-card{
  background:#fff; border:1px solid var(--wp--preset--color--line);
  border-radius:var(--eg-radius); padding:1.6rem 1.5rem;
  box-shadow:var(--eg-ring); transition:box-shadow .2s ease, transform .2s ease, border-color .2s ease;
  height:100%; display:flex; flex-direction:column;
}
.eg-card:hover{ box-shadow:var(--eg-ring-hover); transform:translateY(-2px); border-color:var(--wp--preset--color--accent); }
.eg-card h3{ margin-top:0; margin-bottom:.5rem; }
.eg-card p{ color:var(--wp--preset--color--contrast-soft); font-size:.9375rem; line-height:1.72; margin-bottom:1rem; }
.eg-card p:last-of-type{ margin-bottom:0; }
.eg-card .eg-more{ margin-top:auto; padding-top:1rem; }
.eg-more{
  font-size:.85rem; font-weight:500; text-decoration:none;
  color:var(--wp--preset--color--accent-deep); display:inline-flex; gap:.35rem; align-items:center;
  transition:gap .18s ease;
}
.eg-more:hover{ gap:.6rem; }
.eg-card-icon{
  width:38px; height:38px; border-radius:9px; display:flex; align-items:center; justify-content:center;
  background:var(--wp--preset--color--base-blush); margin-bottom:1rem;
}
.eg-card-icon svg{ width:19px; height:19px; stroke:var(--wp--preset--color--accent-deep); fill:none; stroke-width:1.5; }

/* ---------- Rozet / liste ---------- */
.eg-chips{ display:flex; flex-wrap:wrap; gap:.5rem; padding:0; margin:0; list-style:none; }
.eg-chips li{
  font-size:.82rem; padding:.4rem .8rem; border-radius:100px;
  background:#fff; border:1px solid var(--wp--preset--color--line); color:var(--wp--preset--color--contrast-soft);
}
.eg-ticks{ list-style:none; padding:0; margin:0; display:grid; gap:.7rem; }
.eg-ticks li{ position:relative; padding-left:1.65rem; font-size:.9375rem; line-height:1.7; color:var(--wp--preset--color--contrast-soft); }
.eg-ticks li::before{
  content:""; position:absolute; left:0; top:.52em; width:9px; height:9px; border-radius:50%;
  background:var(--wp--preset--color--accent); box-shadow:0 0 0 3px rgba(234,192,180,.28);
}

/* ---------- SSS ---------- */
.eg-faq details{
  border:1px solid var(--wp--preset--color--line); border-radius:var(--eg-radius);
  background:#fff; margin-bottom:.6rem; overflow:hidden;
}
.eg-faq details[open]{ border-color:var(--wp--preset--color--accent); }
.eg-faq summary{
  cursor:pointer; list-style:none; padding:1rem 1.2rem; font-weight:500; font-size:.95rem;
  display:flex; justify-content:space-between; gap:1rem; align-items:flex-start;
}
.eg-faq summary::-webkit-details-marker{ display:none; }
.eg-faq summary::after{
  content:"+"; font-size:1.15rem; line-height:1; color:var(--wp--preset--color--accent-deep);
  flex:0 0 auto;
}
.eg-faq details[open] summary::after{ content:"\2212"; }
.eg-faq .eg-faq-body{ padding:0 1.2rem 1.15rem; font-size:.9375rem; color:var(--wp--preset--color--contrast-soft); line-height:1.75; }
.eg-faq .eg-faq-body p:last-child{ margin-bottom:0; }

/* ---------- Bilgi seridi ---------- */
.eg-strip{ background:var(--wp--preset--color--base-warm); border-block:1px solid var(--wp--preset--color--line); }
.eg-stat-n{ font-family:var(--wp--preset--font-family--heading); font-size:1.5rem; color:var(--wp--preset--color--accent-deep); display:block; line-height:1.2; }
.eg-stat-l{ font-size:.82rem; color:var(--wp--preset--color--contrast-soft); }

/* ---------- CTA blogu ---------- */
.eg-cta{ background:var(--wp--preset--color--contrast); border-radius:var(--eg-radius); padding:2.4rem 2rem; text-align:center; }
.eg-cta h2{ color:#F7F0EB; margin-bottom:.6rem; }
.eg-cta p{ color:#CFC5BE; font-size:.95rem; margin-bottom:1.4rem; }

/* ---------- Alt alan ---------- */
.eg-footer{ background:var(--wp--preset--color--contrast); color:#CFC5BE; font-size:.9rem; }
.eg-footer a{ color:#E7DCD5; text-decoration:none; }
.eg-footer a:hover{ color:var(--wp--preset--color--accent); text-decoration:underline; }
.eg-footer h4{ color:#FCFAF8; font-size:.8rem; letter-spacing:.1em; text-transform:uppercase; margin-bottom:.9rem; }
.eg-footer-note{ font-size:.8rem; color:#9A908A; border-top:1px solid rgba(255,255,255,.09); padding-top:1.2rem; }

/* ---------- Mobil sabit cagri cubugu ---------- */
.eg-callbar{
  position:fixed; left:0; right:0; bottom:0; z-index:80; display:none;
  background:#FCFAF8;
  border-top:1px solid var(--wp--preset--color--line);
  padding:.55rem .7rem calc(.55rem + env(safe-area-inset-bottom));
  gap:.5rem;
}
.eg-callbar a{
  flex:1; text-align:center; padding:.75rem .5rem; border-radius:8px;
  font-size:.9rem; font-weight:500; text-decoration:none; color:#fff;
  display:flex; align-items:center; justify-content:center; gap:.4rem;
}
.eg-cb-tel{ background:var(--wp--preset--color--accent-deep); }
.eg-cb-wa{ background:#1FA855; }
.eg-callbar svg{ width:16px; height:16px; fill:currentColor; }

/* ---------- Form ---------- */
.eg-form input[type=text], .eg-form input[type=tel], .eg-form input[type=email], .eg-form textarea, .eg-form select{
  width:100%; padding:.75rem .9rem; font:inherit; font-size:.9375rem;
  border:1px solid var(--wp--preset--color--line); border-radius:7px; background:#fff;
  color:var(--wp--preset--color--contrast); transition:border-color .15s ease, box-shadow .15s ease;
}
.eg-form textarea{ min-height:110px; resize:vertical; }
.eg-form input:focus, .eg-form textarea:focus, .eg-form select:focus{
  outline:none; border-color:var(--wp--preset--color--accent-mid); box-shadow:0 0 0 3px rgba(234,192,180,.3);
}
.eg-form label{ display:block; font-size:.85rem; font-weight:500; margin-bottom:.35rem; }
.eg-field{ margin-bottom:1rem; }
.eg-consent{ font-size:.8rem; color:var(--wp--preset--color--contrast-soft); line-height:1.6; display:flex; gap:.55rem; align-items:flex-start; }
.eg-consent input{ margin-top:.2rem; flex:0 0 auto; accent-color:var(--wp--preset--color--accent-deep); }
.eg-form button{
  background:var(--wp--preset--color--accent-deep); color:#fff; border:0; border-radius:6px;
  padding:.85rem 1.7rem; font:inherit; font-size:.9375rem; font-weight:500; cursor:pointer;
  transition:background-color .18s ease;
}
.eg-form button:hover{ background:#84422C; }
.eg-form button[disabled]{ opacity:.6; cursor:default; }
.eg-form-msg{ margin-top:1rem; padding:.85rem 1rem; border-radius:7px; font-size:.9rem; display:none; }
.eg-form-msg.ok{ display:block; background:#EAF6EE; color:#1B6B3A; border:1px solid #BFE3CC; }
.eg-form-msg.err{ display:block; background:#FBEBE8; color:#8C2F1D; border:1px solid #F0C8C0; }

/* ---------- Icerik tipografisi ---------- */
.eg-prose h2{ margin-top:2.4rem; }
.eg-prose h3{ margin-top:1.8rem; }
.eg-prose p{ margin-bottom:1.1rem; }
.eg-prose ul{ padding-left:1.15rem; }
.eg-prose li{ margin-bottom:.5rem; }
.eg-note{
  border-left:3px solid var(--wp--preset--color--accent); background:var(--wp--preset--color--base-blush);
  padding:1rem 1.2rem; border-radius:0 8px 8px 0; font-size:.9rem; color:var(--wp--preset--color--contrast-soft);
}

/* ---------- Duyarli ---------- */
@media (min-width:782px){
  .eg-hero h1{ font-size:2.25rem; }
}
@media (max-width:781px){
  body{ padding-bottom:68px; }
  .eg-callbar{ display:flex; }

  /* Sabit çağrı çubuğu zaten var; başlıktaki buton taşıyordu.
     WP'nin "body .is-layout-flex" kuralı daha özgül olduğu için burada da özgüllük gerekiyor. */
  .eg-header .eg-header-cta{ display:none !important; }

  /* CTA'ları katlamanın üstüne çekmek için dikey alanı sıkılaştır */
  .eg-hero{ padding-top:2rem !important; padding-bottom:2.25rem !important; }
  .eg-hero h1{ font-size:1.6rem; line-height:1.24; }
  .eg-lede{ font-size:1rem; line-height:1.65; }
  .eg-hero .wp-block-buttons{ gap:.6rem; }
  .eg-hero .wp-block-button{ flex:1 1 auto; }
  .eg-hero .wp-block-button__link{ display:block; text-align:center; }

  .eg-chips{ gap:.4rem; margin-top:1.1rem !important; }
  .eg-chips li{ font-size:.75rem; padding:.32rem .65rem; }

  /* Dikey fotoğrafı yatay kadraja kırparken yüz merkeze gelsin (kaynakta yüz ~%30 hizasında) */
  .eg-hero-photo{ margin-top:1.75rem; }
  .eg-hero-photo img{ aspect-ratio:4/3; object-position:center 25%; }
  .eg-hero-photo figure::before{ display:none; }

  .eg-cta{ padding:1.9rem 1.3rem; }
  .eg-card{ padding:1.35rem 1.25rem; }
  .eg-strip .wp-block-column{ margin-bottom:.5rem; }
  .eg-stat-n{ font-size:1.25rem; }
}
@media (prefers-reduced-motion:reduce){
  *{ animation-duration:.01ms !important; transition-duration:.01ms !important; scroll-behavior:auto !important; }
}
