/* Agent Experience (AX) hizmet sayfasi.
   Tum kurallar .ax-page altinda kapsanir, baska rotaya sizmaz. Renk tokenlari
   site temasina koprulenir; sayfa acik/koyu temayi diger sayfalar gibi izler.
   Butonlar global .btn / .btn-primary / .btn-ghost yardimcilarini,
   yerlesim .container'i yeniden kullanir. YENI RENK TOKENI TANIMLANMAZ.

   Bilerek kucuk tutuldu. Bes ilkel ogenin tamami sayfayi tasiyor:
     .ax-grid + .ax-cell  -> her kart izgarasi
     .ax-acc  + .ax-ai    -> her akordeon (katmanlar, hedefler, araclar, SSS)
     .ax-tbl              -> her veri tablosu (UX/AX kiyasi, metrikler)
     .ax-panel            -> her cerceveli not (durust kapsam, uyari)
     .ax-step             -> numarali surec bloklari
*/
.ax-page {
  --bg: var(--surface-canvas);
  --bg-elev: var(--surface-elev);
  --fg: var(--surface-text);
  --fg-dim: color-mix(in oklch, var(--surface-text) 80%, transparent);
  --fg-mute: var(--surface-mute);
  --border: var(--border-default);
  --accent: var(--primary);
  --accent-dim: color-mix(in oklch, var(--primary) 86%, black);
  --accent-soft: color-mix(in oklch, var(--primary) 12%, transparent);
  --ease: cubic-bezier(0.22, 1, 0.36, 1);
  background: var(--bg);
  color: var(--fg);
}
.ax-page a { color: var(--accent); }
.ax-page a:hover { color: var(--accent-dim); }

/* Editorial italik vurgu (Instrument Serif) yalnizca kavramsal kelimelerde. */
.ax-page h1 em, .ax-page h2 em, .ax-page h3 em, .ax-page h4 em, .ax-page .ax-em {
  font-family: "Instrument Serif", Georgia, serif;
  font-style: italic;
  font-weight: 400;
  color: var(--accent);
  letter-spacing: -0.01em;
}

/* ---------- ortak bolum kabugu ---------- */
.ax-sec { padding: clamp(56px, 8vw, 104px) 0; border-top: 1px solid var(--border); }
.ax-sec:first-of-type { border-top: 0; }
.ax-eyebrow {
  display: inline-flex; align-items: center; gap: 8px;
  font-family: "JetBrains Mono", ui-monospace, monospace;
  font-size: 11px; font-weight: 700; letter-spacing: 0.2em; text-transform: uppercase;
  color: var(--accent); margin: 0 0 18px;
}
.ax-eyebrow::before { content: ""; width: 6px; height: 6px; border-radius: 50%; background: var(--accent); }
.ax-h2 {
  font-size: clamp(28px, 4.2vw, 46px); line-height: 1.12; letter-spacing: -0.02em;
  font-weight: 560; margin: 0 0 20px; text-wrap: balance; max-width: 20ch;
}
.ax-h2--wide { max-width: 26ch; }
.ax-lead { font-size: clamp(17px, 1.5vw, 19px); line-height: 1.72; color: var(--fg-dim); max-width: 68ch; margin: 0 0 18px; }
.ax-p { font-size: 17px; line-height: 1.75; color: var(--fg-dim); max-width: 68ch; margin: 0 0 16px; }
.ax-p:last-child { margin-bottom: 0; }
.ax-p strong { color: var(--fg); font-weight: 600; }
.ax-note { font-size: 14.5px; line-height: 1.7; color: var(--fg-mute); max-width: 66ch; }

/* ---------- HERO ---------- */
.ax-hero { padding: clamp(72px, 11vw, 148px) 0 clamp(48px, 6vw, 76px); position: relative; overflow: hidden; }
.ax-hero::after {
  content: ""; position: absolute; inset: 0; pointer-events: none;
  background: radial-gradient(60% 80% at 82% 8%, var(--accent-soft), transparent 70%);
}
.ax-hero > * { position: relative; z-index: 1; }
.ax-hero h1 {
  font-size: clamp(42px, 8vw, 96px); line-height: 1.02; letter-spacing: -0.035em;
  font-weight: 600; margin: 0 0 24px; text-wrap: balance;
}
.ax-hero h1 .ax-em { display: block; font-size: 0.62em; line-height: 1.15; margin-top: 6px; }
.ax-hero-sub { font-size: clamp(17px, 1.7vw, 21px); line-height: 1.65; color: var(--fg-dim); max-width: 62ch; margin: 0 0 32px; }
.ax-hero-cta { display: flex; flex-wrap: wrap; gap: 12px; }

/* hero altindaki dort boyut seridi */
.ax-dims { display: grid; gap: 1px; background: var(--border); border: 1px solid var(--border); border-radius: 14px; overflow: hidden; margin-top: clamp(40px, 5vw, 64px); grid-template-columns: 1fr; }
.ax-dim { background: var(--bg-elev); padding: 22px 24px; }
.ax-dim b { display: block; font-size: 15px; font-weight: 600; color: var(--fg); margin-bottom: 6px; }
.ax-dim span { font-size: 13.5px; line-height: 1.6; color: var(--fg-mute); }
.ax-dim i {
  font-family: "JetBrains Mono", ui-monospace, monospace; font-style: normal;
  font-size: 10.5px; font-weight: 700; letter-spacing: 0.16em; color: var(--accent); display: block; margin-bottom: 10px;
}

/* ---------- kart izgarasi ---------- */
.ax-grid { display: grid; gap: 16px; grid-template-columns: 1fr; margin-top: 34px; }
.ax-grid--2 { grid-template-columns: 1fr; }
.ax-cell {
  background: var(--bg-elev); border: 1px solid var(--border); border-radius: 14px;
  padding: 26px 26px 28px; transition: border-color .22s var(--ease), transform .22s var(--ease);
}
.ax-cell:hover { border-color: color-mix(in oklch, var(--accent) 45%, var(--border)); transform: translateY(-2px); }
.ax-cell h3 { font-size: 18px; font-weight: 600; margin: 0 0 10px; color: var(--fg); letter-spacing: -0.01em; }
.ax-cell p { font-size: 14.5px; line-height: 1.68; color: var(--fg-mute); margin: 0; }
.ax-cell .ax-no {
  font-family: "JetBrains Mono", ui-monospace, monospace; font-size: 12px; font-weight: 700;
  letter-spacing: 0.14em; color: var(--accent); display: block; margin-bottom: 14px;
}

/* ---------- akordeon ---------- */
.ax-acc { margin-top: 34px; border-top: 1px solid var(--border); }
.ax-ai { border-bottom: 1px solid var(--border); }
.ax-ai .h {
  width: 100%; display: flex; align-items: center; gap: 18px; text-align: left;
  background: none; border: 0; cursor: pointer; padding: 24px 4px; color: var(--fg);
  font-size: clamp(16px, 1.6vw, 19px); font-weight: 560; letter-spacing: -0.01em;
  transition: color .2s var(--ease);
}
.ax-ai .h:hover { color: var(--accent); }
.ax-ai .h .n {
  font-family: "JetBrains Mono", ui-monospace, monospace; font-size: 12px; font-weight: 700;
  letter-spacing: 0.12em; color: var(--accent); flex: none; min-width: 26px;
}
.ax-ai .h .t { flex: 1; }
.ax-ai .h .i { flex: none; width: 18px; height: 18px; position: relative; }
.ax-ai .h .i::before, .ax-ai .h .i::after {
  content: ""; position: absolute; background: var(--accent); transition: transform .28s var(--ease), opacity .28s var(--ease);
}
.ax-ai .h .i::before { left: 0; top: 8px; width: 18px; height: 2px; }
.ax-ai .h .i::after { left: 8px; top: 0; width: 2px; height: 18px; }
.ax-ai.on .h .i::after { transform: scaleY(0); opacity: 0; }
.ax-ai .b { max-height: 0; overflow: hidden; transition: max-height .38s var(--ease); }
.ax-ai.on .b { max-height: 900px; }
.ax-ai .b > div { padding: 0 4px 28px 44px; }
.ax-ai .b p { font-size: 15.5px; line-height: 1.75; color: var(--fg-dim); margin: 0 0 12px; max-width: 74ch; }
.ax-ai .b p:last-child { margin-bottom: 0; }

/* ---------- tablo ---------- */
.ax-tblwrap { overflow-x: auto; margin-top: 34px; border: 1px solid var(--border); border-radius: 14px; background: var(--bg-elev); }
.ax-tbl { width: 100%; min-width: 560px; border-collapse: collapse; }
.ax-tbl th, .ax-tbl td { padding: 16px 20px; text-align: left; border-bottom: 1px solid var(--border); font-size: 14.5px; line-height: 1.6; vertical-align: top; }
.ax-tbl thead th {
  font-family: "JetBrains Mono", ui-monospace, monospace; font-size: 11px; font-weight: 700;
  letter-spacing: 0.14em; text-transform: uppercase; color: var(--fg-mute); white-space: nowrap;
}
.ax-tbl thead th:last-child { color: var(--accent); }
.ax-tbl tbody tr:last-child td { border-bottom: 0; }
.ax-tbl td:first-child { color: var(--fg); font-weight: 560; }
.ax-tbl td:last-child { color: var(--fg-dim); }

/* ---------- cerceveli not ---------- */
.ax-panel { margin-top: 34px; border: 1px solid var(--border); border-left: 3px solid var(--accent); border-radius: 0 14px 14px 0; padding: 28px 30px; background: var(--bg-elev); }
.ax-panel p { font-size: 16px; line-height: 1.75; color: var(--fg-dim); margin: 0 0 14px; max-width: 72ch; }
.ax-panel p:last-child { margin-bottom: 0; }

/* ---------- numarali surec ---------- */
.ax-step { border-top: 1px solid var(--border); padding: clamp(34px, 4.5vw, 54px) 0; display: grid; gap: 22px; grid-template-columns: 1fr; }
.ax-step:first-of-type { border-top: 0; padding-top: 0; }
.ax-step-no {
  font-family: "JetBrains Mono", ui-monospace, monospace; font-size: 12px; font-weight: 700;
  letter-spacing: 0.16em; color: var(--accent);
}
.ax-step h3 { font-size: clamp(21px, 2.4vw, 27px); font-weight: 560; letter-spacing: -0.015em; margin: 8px 0 8px; color: var(--fg); }
.ax-step .ax-kicker { font-size: 14px; color: var(--fg-mute); margin: 0; }

/* ---------- istatistik seridi ---------- */
.ax-stats { display: grid; gap: 1px; background: var(--border); border: 1px solid var(--border); border-radius: 14px; overflow: hidden; margin-top: 34px; grid-template-columns: 1fr; }
.ax-stat { background: var(--bg-elev); padding: 26px 24px; }
.ax-stat b { display: block; font-size: clamp(26px, 3.4vw, 38px); font-weight: 600; letter-spacing: -0.02em; color: var(--accent); margin-bottom: 8px; line-height: 1; }
.ax-stat span { display: block; font-size: 13.5px; line-height: 1.6; color: var(--fg-mute); }
.ax-stat cite { display: block; font-style: normal; font-family: "JetBrains Mono", ui-monospace, monospace; font-size: 10.5px; letter-spacing: 0.1em; color: var(--fg-mute); opacity: .75; margin-top: 10px; }

/* ---------- olgunluk seviyeleri (modal tetikleyici) ---------- */
.ax-levels { display: grid; gap: 14px; grid-template-columns: 1fr; margin-top: 34px; }
.ax-level {
  width: 100%; text-align: left; cursor: pointer; background: var(--bg-elev);
  border: 1px solid var(--border); border-radius: 14px; padding: 24px 26px;
  display: grid; gap: 6px; transition: border-color .22s var(--ease), transform .22s var(--ease);
  color: inherit; font: inherit;
}
.ax-level:hover { border-color: var(--accent); transform: translateY(-2px); }
.ax-level .lv {
  font-family: "JetBrains Mono", ui-monospace, monospace; font-size: 11px; font-weight: 700;
  letter-spacing: 0.16em; color: var(--accent);
}
.ax-level .lt { font-size: 19px; font-weight: 600; color: var(--fg); letter-spacing: -0.01em; }
.ax-level .ld { font-size: 14px; line-height: 1.6; color: var(--fg-mute); }
.ax-level .lm {
  font-family: "JetBrains Mono", ui-monospace, monospace; font-size: 10.5px; font-weight: 700;
  letter-spacing: 0.14em; color: var(--fg-mute); margin-top: 6px; display: inline-flex; align-items: center; gap: 6px;
}
.ax-level .lm::after { content: "\2192"; transition: transform .2s var(--ease); }
.ax-level:hover .lm { color: var(--accent); }
.ax-level:hover .lm::after { transform: translateX(4px); }
.ax-bar { display: flex; gap: 4px; margin-top: 12px; }
.ax-bar i { height: 4px; flex: 1; border-radius: 2px; background: var(--border); }
.ax-bar i.f { background: var(--accent); }

/* ---------- modal ---------- */
.ax-modal { position: fixed; inset: 0; z-index: 120; display: none; }
.ax-modal.on { display: block; }
.ax-modal__bd { position: absolute; inset: 0; background: rgba(0,0,0,.62); backdrop-filter: blur(3px); }
.ax-modal__dg {
  position: relative; margin: min(9vh, 88px) auto 0; width: min(680px, calc(100% - 32px));
  max-height: 78vh; overflow-y: auto; background: var(--bg-elev);
  border: 1px solid var(--border); border-radius: 18px; padding: 34px 34px 36px;
  box-shadow: 0 28px 70px rgba(0,0,0,.42);
}
.ax-modal__x {
  position: absolute; top: 16px; right: 16px; width: 36px; height: 36px; border-radius: 50%;
  border: 1px solid var(--border); background: var(--bg); color: var(--fg); cursor: pointer;
  font-size: 19px; line-height: 1; display: grid; place-items: center; transition: border-color .2s var(--ease);
}
.ax-modal__x:hover { border-color: var(--accent); color: var(--accent); }
.ax-modal__lv {
  font-family: "JetBrains Mono", ui-monospace, monospace; font-size: 11px; font-weight: 700;
  letter-spacing: 0.16em; color: var(--accent); margin: 0 0 10px;
}
.ax-modal__t { font-size: clamp(23px, 3vw, 30px); font-weight: 600; letter-spacing: -0.02em; margin: 0 0 16px; color: var(--fg); }
.ax-modal__dg p { font-size: 15.5px; line-height: 1.75; color: var(--fg-dim); margin: 0 0 14px; }
.ax-modal__dg ul { margin: 0 0 16px; padding-left: 20px; }
.ax-modal__dg li { font-size: 15px; line-height: 1.7; color: var(--fg-dim); margin-bottom: 9px; }
.ax-modal__dg li:last-child { margin-bottom: 0; }
.ax-modal__dg h4 {
  font-family: "JetBrains Mono", ui-monospace, monospace; font-size: 11px; font-weight: 700;
  letter-spacing: 0.14em; text-transform: uppercase; color: var(--accent); margin: 22px 0 10px;
}
body.ax-lock { overflow: hidden; }

/* ---------- kreatif gorsel ---------- */
.ax-fig { margin: 34px 0 0; border: 1px solid var(--border); border-radius: 16px; overflow: hidden; background: var(--bg-elev); }
.ax-fig img { display: block; width: 100%; height: auto; }
.ax-fig figcaption { padding: 14px 20px; font-size: 13px; line-height: 1.6; color: var(--fg-mute); border-top: 1px solid var(--border); }

/* ---------- kapanis ---------- */
.ax-cta { text-align: left; }
.ax-cta h2 { font-size: clamp(30px, 4.6vw, 52px); line-height: 1.1; letter-spacing: -0.025em; font-weight: 560; margin: 0 0 20px; max-width: 22ch; text-wrap: balance; }

/* ---------- duyarli ---------- */
@media (min-width: 700px) {
  .ax-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .ax-grid--2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .ax-dims { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .ax-stats { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .ax-levels { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .ax-step { grid-template-columns: minmax(0, 300px) minmax(0, 1fr); gap: 40px; }
  .ax-step h3 { margin-top: 0; }
}
@media (min-width: 1024px) {
  .ax-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .ax-grid--2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .ax-dims { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .ax-stats { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .ax-levels { grid-template-columns: repeat(4, minmax(0, 1fr)); }
}
@media (prefers-reduced-motion: reduce) {
  .ax-cell, .ax-level, .ax-ai .b, .ax-level .lm::after { transition: none; }
  .ax-cell:hover, .ax-level:hover { transform: none; }
}
