/* kartalavukat.net.tr — "Levha": adliye yön panosu teması.
   Köşe yarıçapı anlam taşır: 0 = fotoğraf/kâğıt, 6px = kontrol, 10px = pano/panel. */

:root {
  --plate: #0F4644;
  --plate-deep: #0A3533;
  --on-plate: #FFFFFF;
  --on-plate-2: #BFD8D3;
  --plate-rule: rgba(255,255,255,.22);
  --manila: #E8D49C;
  --manila-slip: #F3E8C8;
  --manila-edge: #CDB878;
  --paper: #FFFFFF;
  --stone: #EEF2F0;
  --tint: #E6F0EE;
  --ink: #16292A;
  --ink-2: #4A5E5E;
  --link: #0F6B63;
  --link-hover: #0A524C;
  --rule: #D2DDDA;
  --field: #788C8A;
  --error: #A8322A;
  --focus: #0F6B63;
  --focus-on-dark: #E8D49C;

  --font-sign: "Barlow", "Helvetica Neue", Arial, sans-serif;
  --font-doc: "Source Serif 4", Georgia, "Times New Roman", serif;

  --fs-plate: clamp(2.125rem, 1.4rem + 2.6vw, 3.5rem);
  --fs-h1: clamp(2rem, 1.5rem + 1.9vw, 3rem);
  --fs-h2: clamp(1.75rem, 1.45rem + 1.1vw, 2.25rem);
  --fs-h3: clamp(1.25rem, 1.1rem + .55vw, 1.5rem);
  --fs-h4: clamp(1.1875rem, 1.12rem + .3vw, 1.3125rem);
  --fs-prose-h2: clamp(1.5rem, 1.3rem + .8vw, 1.75rem);
  --fs-lead: clamp(1.125rem, 1rem + .55vw, 1.3125rem);
  --fs-prose: clamp(1.0625rem, 1.02rem + .2vw, 1.125rem);
  --fs-serif-sm: 1.0625rem;
  --fs-ui: 1.0625rem;
  --fs-court: 1rem;
  --fs-meta: .9375rem;
  --fs-small: .875rem;
  --fs-phone: clamp(1.75rem, 1.4rem + 1.3vw, 2.25rem);
  --lh-tight: 1.07;
  --lh-head: 1.17;
  --lh-ui: 1.4;
  --lh-serif: 1.65;
  --lh-prose: 1.72;

  --section-y: 112px;
  --container: 1200px;
  --gutter: 24px;
  --side: 32px;
  --header-h: 88px;

  --r-control: 6px;
  --r-panel: 10px;

  --shadow-plate: 0 1px 2px rgba(10,53,51,.22), 0 18px 44px -18px rgba(10,53,51,.45);
  --shadow-plate-start: 0 1px 2px rgba(10,53,51,.10), 0 4px 12px -8px rgba(10,53,51,.18);

  --ease: cubic-bezier(.2,.6,.2,1);
  --dur-fast: 120ms;
  --dur: 180ms;
  interpolate-size: allow-keywords;
}
@media (max-width: 959px) { :root { --side: 24px; --section-y: 80px; --header-h: 60px; } }
@media (max-width: 719px) { :root { --side: 16px; --section-y: 64px; --lh-prose: 1.65; --fs-court: .9375rem; } }

/* ---------- Temel ---------- */
*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; }
@media (prefers-reduced-motion: no-preference) { html { scroll-behavior: smooth; } }
body {
  margin: 0;
  background: var(--paper);
  color: var(--ink);
  font: 400 var(--fs-serif-sm)/var(--lh-serif) var(--font-doc);
  font-variant-numeric: lining-nums;
  -webkit-font-smoothing: antialiased;
}
img { display: block; max-width: 100%; height: auto; }
h1, h2, h3, h4 { font-family: var(--font-sign); font-weight: 600; color: var(--ink); margin: 0; }
p { margin: 0; }
ul, ol { margin: 0; padding: 0; }
a { color: inherit; }
main:focus { outline: none; }
[hidden] { display: none !important; }

:focus-visible { outline: 3px solid var(--focus); outline-offset: 2px; }
:focus:not(:focus-visible) { outline: none; }

.wrap {
  width: 100%;
  max-width: calc(var(--container) + 2 * var(--side));
  margin-inline: auto;
  padding-inline: var(--side);
}

.skip {
  position: absolute;
  left: 16px;
  top: -200px;
  z-index: 100;
  background: var(--plate);
  color: #fff;
  padding: 12px 16px;
  border-radius: var(--r-control);
  font: 600 var(--fs-ui)/1 var(--font-sign);
  text-decoration: none;
}
.skip:focus { top: 16px; }

/* ---------- Bağlantılar ---------- */
.text-link, .prose a {
  color: var(--link);
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 3px;
  transition: color var(--dur-fast) linear, text-decoration-thickness var(--dur-fast) linear;
}
.text-link:hover, .prose a:hover { color: var(--link-hover); text-decoration-thickness: 2px; }

/* ---------- Düğmeler ---------- */
.btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  min-height: 52px;
  padding: 0 22px;
  border-radius: var(--r-control);
  border: 1.5px solid transparent;
  font: 600 var(--fs-ui)/1 var(--font-sign);
  letter-spacing: .01em;
  text-decoration: none;
  cursor: pointer;
  transition: background-color var(--dur-fast) linear, border-color var(--dur-fast) linear, color var(--dur-fast) linear;
}
.btn-primary { background: var(--plate); color: #fff; }
.btn-primary:hover, .btn-primary:active { background: var(--plate-deep); }
.btn-secondary { background: transparent; border-color: var(--plate); color: var(--plate); }
.btn-secondary:hover { background: var(--tint); }
.btn-light { background: #fff; color: var(--plate); }
.btn-light:hover { background: #F1F5F4; }
.btn-sm { min-height: 44px; padding: 0 16px; font-size: 1rem; }
.btn-block { display: flex; width: 100%; }
.btn[disabled] { opacity: .6; cursor: progress; }
.btn-num { font-weight: 500; font-variant-numeric: tabular-nums lining-nums; }

/* ---------- Üst bilgi ---------- */
.site-header {
  background: var(--paper);
  border-bottom: 1px solid var(--rule);
  position: relative;
  z-index: 20;
}
.header-inner { display: flex; align-items: center; gap: 40px; min-height: var(--header-h); }
.logo-plate {
  display: inline-flex;
  align-items: center;
  min-height: 40px;
  padding: 10px 14px;
  background: var(--plate);
  color: #fff;
  border-radius: var(--r-control);
  font: 600 1.25rem/1 var(--font-sign);
  text-decoration: none;
  white-space: nowrap;
  transition: background-color var(--dur-fast) linear;
}
.logo-plate:hover { background: var(--plate-deep); }
.logo-plate--lg { min-height: 44px; }
.main-nav ul { list-style: none; display: flex; gap: 32px; }
.main-nav a {
  display: flex;
  align-items: center;
  min-height: 48px;
  font: 500 var(--fs-ui)/1 var(--font-sign);
  color: var(--ink);
  text-decoration: none;
}
.main-nav a:hover { text-decoration: underline; text-decoration-color: var(--ink-2); text-decoration-thickness: 2px; text-underline-offset: 8px; }
.main-nav a[aria-current="page"] { text-decoration: underline; text-decoration-color: var(--link); text-decoration-thickness: 2px; text-underline-offset: 8px; }
.header-contact { margin-left: auto; display: flex; align-items: center; gap: 20px; }
.header-hours { font: 500 var(--fs-meta)/1.45 var(--font-sign); color: var(--ink-2); font-variant-numeric: tabular-nums; white-space: nowrap; }
.menu-toggle { display: none; }

@media (min-width: 960px) and (max-width: 1199px) { .header-hours { display: none; } }
@media (max-width: 959px) {
  html { scroll-padding-top: calc(var(--header-h) + 16px); }
  body.menu-open { overflow: hidden; }
  .site-header { position: sticky; top: 0; }
  .header-inner { gap: 12px; }
  .logo-plate { min-height: 36px; padding: 8px 12px; font-size: 1.0625rem; }
  .main-nav, .header-hours { display: none; }
  .header-contact { gap: 8px; }
  .header-call { min-height: 44px; padding: 0 16px; font-size: 1rem; }
  .header-call .btn-num { display: none; }
  .menu-toggle { display: inline-flex; }
}

/* ---------- Pano (imza öğesi) ---------- */
.plate {
  position: relative;
  z-index: 2;
  background: var(--plate);
  color: var(--on-plate);
  border-radius: var(--r-panel);
  padding: 40px 40px 0;
  overflow: hidden;
}
.plate--hero { box-shadow: var(--shadow-plate); }
.plate h1 {
  font: 600 var(--fs-plate)/var(--lh-tight) var(--font-sign);
  letter-spacing: -.012em;
  margin: 0 0 28px;
  max-width: 13em;
  text-wrap: balance;
  color: #fff;
}
.plate-nav ul, .board-list { list-style: none; margin: 0 -40px; padding: 0; border-top: 1px solid var(--plate-rule); }
.plate-nav li + li, .board-list li + li { border-top: 1px solid var(--plate-rule); }
.plate-nav a, .board-list a {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  justify-content: space-between;
  gap: 4px 24px;
  min-height: 72px;
  padding: 20px 40px;
  color: #fff;
  text-decoration: none;
  transition: background-color var(--dur-fast) linear;
}
.plate-ad { font: 600 var(--fs-h3)/1.25 var(--font-sign); }
.plate-yer {
  font: 500 var(--fs-court)/1.35 var(--font-sign);
  color: var(--on-plate-2);
  text-align: right;
  margin-left: auto;
}
.plate-nav a::before, .board-list a::before {
  content: "";
  position: absolute;
  inset: 0 auto 0 0;
  width: 4px;
  background: var(--manila);
  opacity: 0;
  transition: opacity var(--dur-fast) linear;
}
.plate-nav a:hover, .plate-nav a[aria-current="page"],
.board-list a:hover, .board-list a[aria-current="page"] { background: var(--plate-deep); }
.plate-nav a:hover::before, .plate-nav a[aria-current="page"]::before,
.board-list a:hover::before, .board-list a[aria-current="page"]::before { opacity: 1; }
.plate-nav a:hover .plate-ad {
  text-decoration: underline;
  text-decoration-thickness: 2px;
  text-underline-offset: 6px;
  text-decoration-color: var(--manila);
}
.plate :focus-visible, .menu-panel :focus-visible { outline-color: var(--focus-on-dark); }
.plate-nav a:focus-visible, .board-list a:focus-visible { outline: 3px solid var(--focus-on-dark); outline-offset: -3px; }

.plate--compact { max-width: 690px; padding: 28px 32px 0; }
.plate--compact .plate-nav ul { margin: 0 -32px; }
.plate--compact .plate-nav a { min-height: 64px; padding: 16px 32px; }
.plate--compact .plate-ad { font-size: 1.25rem; }
.plate--404 h1 { font-size: var(--fs-h1); line-height: 1.12; }
.plate.plate--list { padding-top: 0; }
.plate--list .plate-nav ul { border-top: 0; }

@media (max-width: 719px) {
  .plate { padding: 24px 24px 0; }
  .plate h1 { margin-bottom: 20px; }
  .plate-nav ul, .plate--compact .plate-nav ul { margin: 0 -24px; }
  .plate-nav a, .plate--compact .plate-nav a {
    padding: 14px 24px;
    min-height: 64px;
    flex-direction: column;
    align-items: flex-start;
    gap: 2px;
  }
  .plate-yer { text-align: left; margin-left: 0; }
  .plate--compact { padding: 24px 24px 0; }
}

/* ---------- Hero ---------- */
.hero {
  display: grid;
  grid-template-columns: [full-start] minmax(var(--side), 1fr) [content-start] repeat(12, [col] minmax(0, 78px)) [content-end] minmax(var(--side), 1fr) [full-end];
  column-gap: var(--gutter);
  grid-template-rows: auto auto auto 1fr;
  min-height: clamp(640px, 80vh, 760px);
}
.hero-photo {
  grid-column: col 6 / full-end;
  grid-row: 1 / -1;
  position: relative;
  overflow: hidden;
  background: #DCE7E6;
}
.hero-photo img { width: 100%; height: 100%; object-fit: cover; object-position: 60% 55%; }
.hero-photo::after { content: ""; position: absolute; inset: 0; background: #fff; opacity: 0; pointer-events: none; }
.plate--hero { grid-column: content-start / col 8; grid-row: 1; margin-top: 56px; align-self: start; }
.hero-lead {
  grid-column: content-start / col 6;
  grid-row: 2;
  margin-top: 32px;
  font: 400 var(--fs-lead)/1.58 var(--font-doc);
  color: var(--ink);
  max-width: 46ch;
}
.hero-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 24px; }
.hero > .hero-actions { grid-column: content-start / col 8; grid-row: 3; align-self: start; }
.hero-hours {
  grid-column: content-start / col 8;
  grid-row: 4;
  margin: 12px 0 72px;
  font: 500 var(--fs-meta)/1.45 var(--font-sign);
  color: var(--ink-2);
  font-variant-numeric: tabular-nums;
}

@media (min-width: 960px) and (max-width: 1199px) {
  .plate--hero { grid-column: content-start / col 9; }
  .hero-photo { grid-column: col 7 / full-end; }
}
@media (max-width: 959px) {
  .hero {
    grid-template-columns: [full-start] var(--side) [content-start] minmax(0, 1fr) [content-end] var(--side) [full-end];
    column-gap: 0;
    grid-template-rows: auto;
    min-height: 0;
  }
  .hero-photo { grid-column: full-start / full-end; grid-row: 1; aspect-ratio: auto; height: min(56.25vw, 44vh); min-height: 200px; }
  .plate--hero { grid-column: content-start / content-end; grid-row: 2; margin-top: -72px; }
  .hero-lead { grid-column: content-start / content-end; grid-row: 3; }
  .hero > .hero-actions { grid-column: content-start / content-end; grid-row: 4; }
  .hero-hours { grid-column: content-start / content-end; grid-row: 5; margin-bottom: 64px; }
}
@media (max-width: 719px) {
  .hero-photo { height: 112px; min-height: 0; }
  .hero-photo img { object-position: 70% 55%; }
  .plate--hero { margin-top: -32px; }
  .hero-lead { margin-top: 24px; }
  .hero > .hero-actions { flex-direction: column; }
  .hero > .hero-actions .btn { width: 100%; }
}

/* Tek orkestrasyonlu an: oturumda bir kez, yalnız ana sayfa. Başlık ve pano hiç gizlenmez. */
@media (prefers-reduced-motion: no-preference) {
  html.intro .hero-photo img { animation: kv-settle 1400ms var(--ease) both; }
  html.intro .hero-photo::after { animation: kv-haze 1400ms ease-out both; }
  html.intro .plate--hero { animation: kv-plate 900ms var(--ease) 200ms both; }
}
@keyframes kv-settle { from { transform: scale(1.04); } to { transform: none; } }
@keyframes kv-haze { from { opacity: .28; } to { opacity: 0; } }
@keyframes kv-plate { from { box-shadow: var(--shadow-plate-start); } to { box-shadow: var(--shadow-plate); } }

/* ---------- Bölümler ---------- */
.section { padding-block: var(--section-y); }
.section--stone { background: var(--stone); }
.section-head { max-width: 60ch; margin-bottom: 48px; }
.section-head h2, .section-title { font-size: var(--fs-h2); line-height: var(--lh-head); letter-spacing: -.005em; margin: 0 0 16px; }
.section-title { margin-bottom: 32px; }
.section-head p { margin: 0 0 16px; }

/* Çalışma alanları panosu (beyaz rehber) */
.pano {
  list-style: none;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1px;
  background: var(--rule);
  border: 1px solid var(--rule);
  border-radius: var(--r-panel);
  overflow: hidden;
}
.pano-cell { position: relative; background: var(--paper); padding: 40px; transition: background-color var(--dur-fast) linear; }
.pano-cell:hover { background: var(--tint); }
.pano-cell h3 { font-size: var(--fs-h3); line-height: 1.25; margin: 0 0 12px; }
.pano-cell h3 a { color: var(--ink); text-decoration: none; }
.pano-cell:hover h3 a, .pano-cell h3 a:focus-visible {
  text-decoration: underline;
  text-decoration-color: var(--link);
  text-decoration-thickness: 2px;
  text-underline-offset: 5px;
}
.stretched::after { content: ""; position: absolute; inset: 0; border-radius: inherit; }
.stretched:focus-visible { outline: none; }
.stretched:focus-visible::after { outline: 3px solid var(--focus); outline-offset: -3px; }
.pano-ozet { max-width: 52ch; }
.pano-yazi { position: relative; z-index: 1; margin-top: 16px; font: 500 var(--fs-meta)/1.45 var(--font-sign); color: var(--ink-2); }
@media (max-width: 719px) {
  .pano { grid-template-columns: 1fr; }
  .pano-cell { padding: 24px; }
}

/* 12 sütunlu düzenler */
.contact-layout, .faq-layout, .reading, .footer-grid, .alan-satir, .yazi {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  column-gap: var(--gutter);
}

/* Arayın ya da yazın */
#mesaj { scroll-margin-top: 80px; }
.contact-intro, .contact-info { grid-column: 1 / span 5; }
.form-sheet { grid-column: 7 / span 6; background: var(--stone); border-radius: var(--r-panel); padding: 40px; align-self: start; scroll-margin-top: 80px; }
.contact-intro h2 { font-size: var(--fs-h2); line-height: var(--lh-head); margin-bottom: 16px; }
.phone-display {
  display: inline-block;
  margin: 24px 0 8px;
  font: 600 var(--fs-phone)/1.1 var(--font-sign);
  color: var(--ink);
  font-variant-numeric: tabular-nums lining-nums;
  text-decoration: none;
}
.phone-display:hover { text-decoration: underline; text-decoration-thickness: 2px; text-underline-offset: 6px; }
.phone-display--sm { font-size: 1.5rem; margin: 16px 0 16px; }
.meta { font: 500 1rem/1.45 var(--font-sign); color: var(--ink-2); margin: 0 0 4px; }
.contact-call { margin-top: 20px; }
.note { margin-top: 40px; padding-top: 24px; border-top: 1px solid var(--rule); }
.note h3 { font-size: var(--fs-h4); line-height: 1.33; margin-bottom: 8px; }
.note p { max-width: 46ch; }
@media (max-width: 959px) {
  .contact-intro, .contact-info, .form-sheet { grid-column: 1 / -1; }
  .form-sheet { margin-top: 48px; padding: 24px; }
}

/* SSS */
.faq-head { grid-column: 1 / span 4; }
.faq-head h2 { font-size: var(--fs-h2); line-height: var(--lh-head); margin-bottom: 16px; }
.faq-call { margin-top: 16px; font: 500 1rem/1.45 var(--font-sign); color: var(--ink-2); }
.faq-call a { color: var(--ink); font-variant-numeric: tabular-nums; }
.faq { grid-column: 5 / span 8; }
.faq-item { border-top: 1px solid var(--rule); }
.faq-item:last-child { border-bottom: 1px solid var(--rule); }
.faq-item summary {
  list-style: none;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 24px;
  min-height: 64px;
  padding: 20px 0;
  cursor: pointer;
}
.faq-item summary::-webkit-details-marker { display: none; }
.faq-q { font: 600 var(--fs-h4)/1.33 var(--font-sign); color: var(--ink); }
.faq-toggle {
  position: relative;
  flex-shrink: 0;
  width: 32px;
  height: 32px;
  border: 1.5px solid var(--plate);
  border-radius: var(--r-control);
}
.faq-toggle::before, .faq-toggle::after {
  content: "";
  position: absolute;
  left: 50%;
  top: 50%;
  width: 14px;
  height: 2px;
  margin: -1px 0 0 -7px;
  background: var(--plate);
}
.faq-toggle::after { transform: rotate(90deg); transition: transform 150ms ease-out; }
.faq-item[open] .faq-toggle::after { transform: rotate(90deg) scaleX(0); }
.faq-a { padding: 0 0 24px; max-width: 62ch; }
.faq-a p + p { margin-top: 12px; }
.faq-item::details-content { block-size: 0; overflow: hidden; }
.faq-item[open]::details-content { block-size: auto; }
@media (prefers-reduced-motion: no-preference) {
  .faq-item::details-content { transition: block-size 200ms var(--ease), content-visibility 200ms allow-discrete; }
}
@media (max-width: 959px) {
  .faq-head, .faq { grid-column: 1 / -1; }
  .faq { margin-top: 32px; }
}

/* Yazı dizini */
.yazi-listesi { list-style: none; }
.yazi { border-top: 1px solid var(--rule); padding: 32px 0; }
.yazi:last-child { border-bottom: 1px solid var(--rule); }
.yazi-meta {
  grid-column: 1 / span 3;
  display: flex;
  flex-direction: column;
  gap: 4px;
  font: 500 var(--fs-meta)/1.45 var(--font-sign);
  color: var(--ink-2);
  font-variant-numeric: tabular-nums;
}
.yazi-alan { color: var(--ink-2); text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 3px; }
.yazi-alan:hover { color: var(--link-hover); }
.yazi-govde { grid-column: 4 / span 7; }
.yazi-govde h2, .yazi-govde h3 { font-size: var(--fs-h3); line-height: 1.25; }
.yazi-govde h2 a, .yazi-govde h3 a { color: var(--ink); text-decoration: none; }
.yazi-govde h2 a:hover, .yazi-govde h2 a:focus-visible, .yazi-govde h3 a:hover, .yazi-govde h3 a:focus-visible { text-decoration: underline; text-decoration-color: var(--link); text-decoration-thickness: 2px; text-underline-offset: 5px; }
.yazi-govde p { margin-top: 8px; max-width: 62ch; }
@media (max-width: 719px) {
  .yazi-meta { grid-column: 1 / -1; flex-direction: row; flex-wrap: wrap; gap: 0 8px; margin-bottom: 8px; }
  .yazi-govde { grid-column: 1 / -1; }
}

/* ---------- İç sayfalar ---------- */
.page-head { background: var(--stone); padding: 56px 0 64px; }
.page-head h1 { font-size: var(--fs-h1); line-height: 1.12; letter-spacing: -.01em; margin: 16px 0; max-width: 20em; text-wrap: balance; }
.page-head .lead { font: 400 var(--fs-lead)/1.58 var(--font-doc); max-width: 60ch; }
.page-head .hero-actions { margin-top: 28px; }
.page-date { display: block; margin-top: 16px; font: 500 var(--fs-meta)/1.45 var(--font-sign); color: var(--ink-2); font-variant-numeric: tabular-nums; }
.page-date + h1 { margin-top: 8px; }
@media (max-width: 719px) { .page-head { padding: 40px 0 48px; } }

.breadcrumb ol { list-style: none; display: flex; flex-wrap: wrap; font: 500 var(--fs-meta)/1.45 var(--font-sign); color: var(--ink-2); }
.breadcrumb li + li::before { content: "/"; content: "/" / ""; margin: 0 8px; color: var(--ink-2); }
.breadcrumb a { color: var(--ink-2); text-decoration: underline; text-underline-offset: 3px; }
.breadcrumb a:hover { color: var(--ink); }

.yer {
  margin-top: 16px;
  padding-left: 14px;
  border-left: 2px solid var(--link);
  font: 500 1rem/1.45 var(--font-sign);
  color: var(--ink);
  max-width: 62ch;
}

.photo-band { position: relative; margin-top: -32px; }
.photo-band img { width: 100%; aspect-ratio: 21 / 9; object-fit: cover; }
@media (max-width: 719px) { .photo-band img { aspect-ratio: 16 / 9; } }

/* Hizmet satırları */
.alan-satirlari { list-style: none; }
.alan-satir { border-top: 1px solid var(--rule); padding: 48px 0; }
.alan-satir:last-child { border-bottom: 1px solid var(--rule); }
.alan-satir h2 { grid-column: 1 / span 4; font-size: var(--fs-h3); line-height: 1.25; }
.alan-satir h2 a { color: var(--ink); text-decoration: none; }
.alan-satir h2 a:hover, .alan-satir h2 a:focus-visible { text-decoration: underline; text-decoration-color: var(--link); text-decoration-thickness: 2px; text-underline-offset: 5px; }
.alan-govde { grid-column: 5 / span 7; }
.alan-govde .ozet { max-width: 62ch; }
.alan-govde .text-link { display: inline-block; margin-top: 16px; font: 500 1rem/1.45 var(--font-sign); }
.alan-emin { margin-top: 48px; display: flex; flex-wrap: wrap; align-items: center; gap: 16px 24px; }
@media (max-width: 719px) {
  .alan-satir { padding: 32px 0; }
  .alan-satir h2, .alan-govde { grid-column: 1 / -1; }
  .alan-govde { margin-top: 12px; }
}

/* Okuma düzeni */
.reading { padding-block: var(--section-y); align-items: start; }
.kenar { grid-column: 1 / span 3; grid-row: 1; }
.reading-main { grid-column: 4 / span 7; grid-row: 1; min-width: 0; }
@media (min-width: 960px) and (min-height: 860px) { .kenar { position: sticky; top: 32px; } }
.toc-h { font: 500 var(--fs-meta)/1.45 var(--font-sign); color: var(--ink-2); margin-bottom: 8px; }
.toc ol { list-style: none; }
.toc a {
  display: block;
  padding: 6px 0 6px 14px;
  border-left: 2px solid var(--rule);
  font: 500 var(--fs-meta)/1.4 var(--font-sign);
  color: var(--ink-2);
  text-decoration: none;
  transition: border-color 150ms linear, color 150ms linear;
}
.toc a:hover { color: var(--ink); }
.toc a.is-current { border-left: 4px solid var(--link); padding-left: 12px; color: var(--ink); font-weight: 600; }
.kenar-alan { margin-top: 32px; }
.kenar-alan .text-link { font: 500 1rem/1.45 var(--font-sign); }
.call-card { margin-top: 32px; border: 1px solid var(--rule); border-radius: var(--r-panel); padding: 24px; }
.kenar > .call-card:first-child { margin-top: 0; }
.call-card h3 { font-size: var(--fs-h4); line-height: 1.33; }
.call-card p { margin-top: 8px; font: 400 var(--fs-meta)/1.5 var(--font-sign); color: var(--ink-2); }
.call-card .btn + .btn { margin-top: 8px; }
.toc-mobile { display: none; }
.disclaimer {
  margin-top: 48px;
  padding-top: 16px;
  border-top: 1px solid var(--rule);
  font: 400 var(--fs-small)/1.55 var(--font-sign);
  color: var(--ink-2);
  max-width: 66ch;
}
.disclaimer-box { margin-top: 48px; background: var(--stone); padding: 24px; max-width: 66ch; }
.related { margin-top: 64px; }
.related h2 { font-size: var(--fs-h3); line-height: 1.25; margin-bottom: 16px; }
.related .yazi { grid-template-columns: repeat(7, minmax(0, 1fr)); }
.related .yazi-meta { grid-column: 1 / span 2; }
.related .yazi-govde { grid-column: 3 / span 5; }

@media (min-width: 960px) and (max-width: 1199px) {
  .kenar { grid-column: 1 / span 4; }
  .reading-main { grid-column: 5 / span 8; }
}
@media (max-width: 959px) {
  .reading { padding-top: 48px; }
  .kenar { grid-column: 1 / -1; grid-row: auto; position: static; margin-top: 48px; }
  .kenar .toc { display: none; }
  .reading-main { grid-column: 1 / -1; grid-row: auto; }
  .toc-mobile { display: block; margin-top: 32px; background: var(--stone); border-radius: var(--r-control); padding: 16px; }
  .toc-mobile summary { cursor: pointer; font: 600 1rem/1.4 var(--font-sign); min-height: 28px; }
  .toc-mobile ol { list-style: none; margin-top: 12px; }
  .toc-mobile a { display: block; padding: 8px 0; font: 500 var(--fs-meta)/1.4 var(--font-sign); color: var(--link); }
}
@media (max-width: 719px) {
  .related .yazi-meta, .related .yazi-govde { grid-column: 1 / -1; }
}

/* ---------- Okuma metni (serbest gövde HTML) ---------- */
.prose {
  max-width: 66ch;
  color: var(--ink);
  font: 400 var(--fs-prose)/var(--lh-prose) var(--font-doc);
  overflow-wrap: anywhere;
  text-wrap: pretty;
}
.prose > * { margin: 0; }
.prose > * + * { margin-top: 1.1em; }
.prose > :first-child { margin-top: 0; }
.prose h2 { font: 600 var(--fs-prose-h2)/1.2 var(--font-sign); margin-top: 56px; scroll-margin-top: 88px; }
.prose h3 { font: 600 var(--fs-h4)/1.33 var(--font-sign); margin-top: 40px; }
.prose h4, .prose h5, .prose h6 { font: 600 1.125rem/1.4 var(--font-sign); margin-top: 32px; }
.prose h2 + * { margin-top: 16px; }
.prose h3 + * { margin-top: 12px; }
.prose h4 + *, .prose h5 + *, .prose h6 + * { margin-top: 8px; }
.prose strong { font-weight: 600; }
.prose ul { list-style: none; padding-left: 1.5em; }
.prose ul > li { position: relative; }
.prose ul > li::before {
  content: "";
  position: absolute;
  left: -1.1em;
  top: .72em;
  width: 6px;
  height: 6px;
  background: var(--plate);
}
.prose ol { padding-left: 1.6em; list-style: decimal; }
.prose > ol > li::marker { font-family: var(--font-sign); font-weight: 600; color: var(--plate); font-variant-numeric: tabular-nums; }
.prose li + li { margin-top: .45em; }
.prose li > ul, .prose li > ol { margin-top: .45em; }
.prose blockquote { border-left: 3px solid var(--plate); padding-left: 1.25em; margin-left: 0; font-style: normal; }
.prose hr { border: 0; border-top: 1px solid var(--rule); margin: 48px 0; }
.prose img { max-width: 100%; height: auto; }
.prose iframe { max-width: 100%; aspect-ratio: 16 / 9; height: auto; }
.table-scroll { overflow-x: auto; margin-top: 1.5em; }
.prose table { border-collapse: collapse; min-width: 100%; font: 400 var(--fs-meta)/1.45 var(--font-sign); }
.prose th { font-weight: 600; background: var(--stone); text-align: left; }
.prose th, .prose td { padding: 10px 12px; border-bottom: 1px solid var(--rule); }
.prose figcaption { font: 400 var(--fs-small)/1.5 var(--font-sign); color: var(--ink-2); margin-top: 8px; }

/* ---------- Form ---------- */
.kv-form .field { margin-top: 20px; }
.kv-form .field[data-field="name"] { margin-top: 0; }
.kv-form label { display: block; margin-bottom: 6px; font: 500 1rem/1.4 var(--font-sign); color: var(--ink); }
.kv-form input[type="text"], .kv-form input[type="email"], .kv-form input[type="tel"], .kv-form textarea {
  width: 100%;
  min-height: 52px;
  padding: 12px 14px;
  background: #fff;
  color: var(--ink);
  border: 1px solid var(--field);
  border-radius: var(--r-control);
  font: 400 var(--fs-ui)/1.4 var(--font-sign);
}
.kv-form textarea { min-height: 160px; resize: vertical; }
.kv-form input:focus-visible, .kv-form textarea:focus-visible { border-color: var(--plate); outline: 3px solid var(--focus); outline-offset: 2px; }
.kv-form input[aria-invalid="true"], .kv-form textarea[aria-invalid="true"] { border: 2px solid var(--error); }
.field-hint { margin-top: 6px; font: 400 var(--fs-small)/1.55 var(--font-sign); color: var(--ink-2); }
.field-error { margin-top: 6px; font: 500 var(--fs-small)/1.55 var(--font-sign); color: var(--error); }
.field-pair { margin-top: 20px; }
.field-pair .field { margin-top: 0; }
.field-pair .field + .field { margin-top: 20px; }
@media (min-width: 720px) {
  .field-pair { display: grid; grid-template-columns: 1fr 1fr; column-gap: 16px; }
  .field-pair .field + .field { margin-top: 0; }
  .field-pair .field-hint, .field-pair > .field-error { grid-column: 1 / -1; }
}
.form-ozet {
  margin-bottom: 20px;
  padding: 12px 16px;
  border-left: 3px solid var(--error);
  background: #fff;
  font: 500 var(--fs-meta)/1.5 var(--font-sign);
  color: var(--error);
}
.form-note { margin-top: 20px; font: 400 var(--fs-small)/1.55 var(--font-sign); color: var(--ink-2); }
.kv-form button[type="submit"] { margin-top: 24px; }
.hp { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }

.receipt:focus { outline: none; }
.receipt-slip { background: var(--manila-slip); border: 1px solid var(--manila-edge); padding: 24px; }
.receipt-h { font: 600 1.75rem/1.1 var(--font-sign); color: var(--ink); }
.receipt-time { margin-top: 6px; font: 500 1rem/1.4 var(--font-sign); color: var(--ink-2); font-variant-numeric: tabular-nums; }
.receipt-text { margin-top: 20px; max-width: 52ch; }
@media (prefers-reduced-motion: no-preference) {
  .receipt.is-new { animation: kv-fade 200ms ease-out both; }
}
@keyframes kv-fade { from { opacity: 0; } to { opacity: 1; } }

/* İletişim sayfası */
.info-group + .info-group { margin-top: 32px; }
.info-label { font: 500 var(--fs-meta)/1.45 var(--font-sign); color: var(--ink-2); }
.info-group .phone-display { margin: 4px 0 16px; display: block; }
.info-value { margin-top: 4px; font: 500 var(--fs-ui)/1.45 var(--font-sign); font-variant-numeric: tabular-nums; }
.info-ulasim { margin-top: 48px !important; }
.info-ulasim h2 { font-size: var(--fs-h4); line-height: 1.33; margin-bottom: 8px; }
.info-ulasim p { color: var(--ink-2); max-width: 46ch; }
.form-sheet > h2 { font-size: var(--fs-h3); line-height: 1.25; margin: 0 0 24px; }

/* Blog sayfalama, boş durum, 404 */
.pager { margin-top: 48px; display: flex; flex-wrap: wrap; align-items: center; gap: 16px; font: 500 var(--fs-meta)/1.45 var(--font-sign); color: var(--ink-2); }
.empty { max-width: 52ch; }
.notfound { padding-block: 112px; }
.notfound-text { margin-top: 32px; max-width: 46ch; font-size: 1.125rem; }
@media (max-width: 719px) { .notfound { padding-block: 64px; } }

/* ---------- Mobil menü ---------- */
.menu-panel {
  position: fixed;
  top: var(--header-h);
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 19;
  overflow: auto;
  overscroll-behavior: contain;
  background: var(--plate);
  color: #fff;
  padding: 24px 16px calc(24px + env(safe-area-inset-bottom));
  opacity: 0;
  transform: translateY(-8px);
  transition: opacity var(--dur) var(--ease), transform var(--dur) var(--ease);
}
.menu-panel.is-open { opacity: 1; transform: none; }
.menu-panel .board-list { margin: 0 -16px; }
.menu-panel .board-list a { min-height: 60px; padding: 16px; }
.menu-panel .board-list .plate-ad { font-size: 1.375rem; }
.menu-panel .board-list--areas a { flex-direction: column; align-items: flex-start; gap: 2px; }
.menu-panel .board-list--areas .plate-ad { font-size: 1.1875rem; }
.menu-panel .board-list--areas .plate-yer { text-align: left; margin-left: 0; }
.menu-label { margin: 24px 0 8px; font: 500 var(--fs-meta)/1.45 var(--font-sign); color: var(--on-plate-2); }
.menu-foot { margin-top: 32px; }
.menu-foot p { margin-top: 12px; font: 500 var(--fs-meta)/1.45 var(--font-sign); color: var(--on-plate-2); }
@media (min-width: 960px) { .menu-panel { display: none !important; } }

/* ---------- Alt bilgi ---------- */
.site-footer { background: var(--stone); border-top: 2px solid var(--plate); padding: 72px 0 32px; }
.footer-a { grid-column: 1 / span 5; }
.footer-b { grid-column: 7 / span 3; }
.footer-c { grid-column: 10 / span 3; }
.footer-about { margin: 16px 0; max-width: 34ch; }
.footer-lines { list-style: none; font: 500 1rem/1.6 var(--font-sign); font-variant-numeric: tabular-nums; }
.footer-lines a { color: var(--ink); text-decoration: none; }
.footer-lines a:hover { text-decoration: underline; }
.footer-h { font: 600 var(--fs-ui)/1.3 var(--font-sign); margin-bottom: 12px; }
.footer-links { list-style: none; }
.footer-links a {
  display: flex;
  align-items: center;
  min-height: 36px;
  font: 500 1rem/1.3 var(--font-sign);
  color: var(--ink);
  text-decoration: none;
}
.footer-links a:hover { text-decoration: underline; text-underline-offset: 4px; }
.footer-bottom {
  margin-top: 48px;
  padding-top: 24px;
  border-top: 1px solid var(--rule);
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 8px 24px;
  font: 400 var(--fs-small)/1.55 var(--font-sign);
  color: var(--ink-2);
}
.site-footer .footer-bottom { border-top: 0; position: relative; }
.site-footer .footer-bottom::before { content: ""; position: absolute; top: 0; left: var(--side); right: var(--side); border-top: 1px solid var(--rule); }
@media (min-width: 720px) and (max-width: 959px) {
  .footer-a { grid-column: 1 / -1; }
  .footer-b { grid-column: 1 / span 6; margin-top: 40px; }
  .footer-c { grid-column: 7 / span 6; margin-top: 40px; }
}
@media (max-width: 719px) {
  .footer-a, .footer-b, .footer-c { grid-column: 1 / -1; }
  .footer-b, .footer-c { margin-top: 40px; }
  .footer-bottom { flex-direction: column; }
}

/* ---------- Hareket tercihi ---------- */
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: .01ms !important;
    scroll-behavior: auto !important;
  }
}

/* ---------- Baskı ---------- */
@media print {
  .main-nav, .header-contact, .menu-panel, .kenar, .photo-band, .form-sheet, .skip, .btn, .hero-photo, .toc-mobile, #mesaj, .footer-b, .footer-c { display: none !important; }
  .site-header { border: 0; }
  .logo-plate { background: none; color: #000; padding: 0; border-bottom: 2px solid #000; border-radius: 0; }
  body { font: 11pt/1.5 var(--font-doc); color: #000; background: #fff; }
  .page-head, .site-footer, .section--stone { background: none; }
  .prose a[href^="/"]::after { content: " (kartalavukat.net.tr" attr(href) ")"; }
  h1, h2, h3 { page-break-after: avoid; }
  .reading-main { grid-column: 1 / -1; }
}
