/* ============================================================
   Server Kürsü — İletişim (Contact) page
   ============================================================ */
.ct { padding: clamp(20px, 3vw, 36px) 0 0; }

.ct-split { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: clamp(28px, 4vw, 64px);
  align-items: start; padding: clamp(6px, 1.5vw, 16px) 0 clamp(40px, 5vw, 70px); }
@media (max-width: 860px){ .ct-split { grid-template-columns: 1fr; gap: 34px; } }

.ct-intro .kicker { margin-bottom: 12px; }
.ct-intro h1 { font-size: clamp(32px, 4.2vw, 52px); font-weight: 800; letter-spacing: -.03em; line-height: 1.03; }
.ct-lead { font-size: clamp(16px, 1.3vw, 18px); color: var(--ink-2); line-height: 1.6; margin: 18px 0 0; max-width: 46ch; text-wrap: pretty; }
.ct-channels-block { margin-top: clamp(26px, 3vw, 40px); padding-top: clamp(22px, 2.5vw, 30px); border-top: 1px solid var(--line); }

/* ---- channels ---- */
.ct-side-h, .ct-form-h { font-size: 18px; font-weight: 700; letter-spacing: -.01em; margin-bottom: 18px; }
.ct-channels { list-style: none; margin: 0 0 28px; padding: 0; display: flex; flex-direction: column; gap: 4px; }
.ct-channels li { display: flex; gap: 14px; align-items: flex-start; padding: 14px 0; border-top: 1px solid var(--line); }
.ct-channels li:first-child { border-top: 0; }
.ct-ch-ic { flex: none; width: 42px; height: 42px; border-radius: 12px; display: grid; place-items: center;
  background: var(--accent-wash); color: var(--accent-ink); }
.ct-ch-body { display: flex; flex-direction: column; gap: 3px; min-width: 0; }
.ct-ch-label { font-size: 12px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; color: var(--ink-4); }
.ct-ch-val { font-size: 15.5px; font-weight: 600; color: var(--ink); word-break: break-word; }
a.ct-ch-val:hover { color: var(--accent-ink); }

.ct-social-block { display: flex; flex-direction: column; gap: 11px; }
.ct-social { display: flex; gap: 10px; }
.ct-social a { width: 40px; height: 40px; border-radius: 999px; border: 1px solid var(--line-strong); display: grid; place-items: center;
  color: var(--ink-2); transition: .15s; }
.ct-social a:hover { background: var(--accent); color: var(--on-accent); border-color: var(--accent); box-shadow: 0 0 0 4px var(--accent-wash); }

/* ---- form ---- */
.ct-formcard { border: 1px solid var(--line); border-radius: var(--r-xl); background: var(--paper); box-shadow: var(--shadow-sm);
  padding: clamp(22px, 3vw, 36px); }
.ct-form { display: flex; flex-direction: column; gap: 15px; }
.ct-row2 { display: grid; grid-template-columns: 1fr 1fr; gap: 15px; }
@media (max-width: 480px){ .ct-row2 { grid-template-columns: 1fr; } }
.ct-form textarea { padding: 12px 14px; border: 1px solid var(--line-strong); border-radius: 10px; background: var(--paper);
  font-family: inherit; font-size: 15px; color: var(--ink); outline: none; transition: .15s; resize: vertical; min-height: 120px; line-height: 1.5; }
.ct-form textarea:focus { border-color: var(--accent); box-shadow: 0 0 0 3px var(--accent-wash); }
.ct-send { height: 50px; justify-content: center; font-size: 15px; margin-top: 4px; align-self: flex-start; padding: 0 26px; }
@media (max-width: 480px){ .ct-send { align-self: stretch; } }

/* ---- success state ---- */
.ct-ok { display: flex; flex-direction: column; align-items: flex-start; gap: 14px; padding: clamp(8px, 2vw, 22px) 0; }
.ct-ok-ic { width: 60px; height: 60px; border-radius: 999px; display: grid; place-items: center;
  background: var(--accent-wash); color: var(--accent-ink); }
.ct-ok h3 { font-size: 24px; font-weight: 800; letter-spacing: -.02em; }
.ct-ok p { font-size: 16px; color: var(--ink-2); line-height: 1.6; max-width: 42ch; margin: 0; }
.ct-ok .btn { margin-top: 6px; }
