/*
 * Adanacar v4 — branch pages (pages/sube.php: /cukurova-havalimani, /adana, /mersin).
 * Departure-board language: the branch code as a gold-outlined board figure in the hero, contact
 * chips, key numbers in a ruled strip, routes in two columns (from / to), child points as quiet
 * chips. Service rows: css/hizmetler.css; route rows and folds: css/noktalar.css; map: css/yazi.css.
 * Tokens only (temel.css), light + dark. Motion: transform / opacity only.
 */
@layer custom {
  .ac-sb { --ac-leaf: 1.75rem; --ac-card-radius: var(--ac-radius-lg) var(--ac-radius-lg) var(--ac-leaf) var(--ac-radius-lg); }

  /* ------------------------------------------------------------------ hero board */
  .ac-sb-hero { display: grid; gap: var(--ac-space-4); margin-block-start: var(--ac-space-5); }
  @media (width >= 768px) { .ac-sb-hero { grid-template-columns: auto minmax(0, 1fr); align-items: center; gap: var(--ac-space-7); } }
  .ac-sb-hero__kod {
    font-size: clamp(3.5rem, 2.25rem + 5vw, 6.5rem); font-weight: 800; line-height: 0.85; letter-spacing: 0.02em;
    color: transparent; -webkit-text-stroke: 1.25px #C9A96A;
  }
  @supports not (-webkit-text-stroke: 1px black) { .ac-sb-hero__kod { color: #D8BE8A; } }
  .ac-sb-hero__iletisim { display: flex; flex-wrap: wrap; gap: var(--ac-space-2); list-style: none; margin: 0; padding: 0; }
  .ac-sb-hero__iletisim :is(a, span) {
    display: inline-flex; align-items: center; gap: var(--ac-space-2); min-block-size: 2.75rem; padding: var(--ac-space-2) var(--ac-space-4);
    border: 1px solid rgb(201 169 106 / 0.45); border-radius: var(--ac-radius-lg) var(--ac-radius-lg) var(--ac-radius-lg) var(--ac-radius-sm);
    color: var(--ac-ink); font-size: var(--ac-step--1); font-weight: 650; text-decoration: none; overflow-wrap: anywhere;
  }
  .ac-sb-hero__iletisim a { transition: border-color var(--ac-dur-2) var(--ac-ease), transform var(--ac-dur-2) var(--ac-ease); }
  .ac-sb-hero__iletisim a:hover { border-color: #C9A96A; transform: translateY(-2px); color: var(--ac-ink); }
  .ac-sb-hero__iletisim i { color: #D8BE8A; }

  /* ------------------------------------------------------------------ introduction + booking */
  .ac-sb-giris { padding-block: var(--ac-section) var(--ac-section-tight); }
  .ac-sb-giris h2 { margin: var(--ac-space-2) 0 var(--ac-space-4); font-size: var(--ac-step-4); letter-spacing: -0.02em; line-height: var(--ac-leading-tight); }
  .ac-sb-giris .ac-eyebrow { margin: 0; }
  .ac-sb-sayac { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); margin: var(--ac-space-6) 0 0; border-block: 1px solid var(--ac-line); }
  .ac-sb-sayac > div { padding: var(--ac-space-4) var(--ac-space-3); }
  .ac-sb-sayac > div + div { border-inline-start: 1px solid var(--ac-line); }
  .ac-sb-sayac dt { color: var(--ac-muted); font-size: var(--ac-step--2); font-weight: 700; letter-spacing: var(--ac-tracking-caps); text-transform: uppercase; }
  .ac-sb-sayac dd { margin: var(--ac-space-1) 0 0; font-size: var(--ac-step-3); font-weight: 800; letter-spacing: -0.02em; color: var(--ac-ink); }
  .ac-sb-eylem { display: flex; flex-wrap: wrap; align-items: center; gap: var(--ac-space-3); margin-block-start: var(--ac-space-6); }
  #rezervasyon { scroll-margin-block-start: calc(var(--ac-header-h, 4.5rem) + var(--ac-space-4)); }

  /* ------------------------------------------------------------------ sections */
  .ac-sb-bolum { padding-block: var(--ac-section); }
  .ac-sb-bolum--alt { background: var(--ac-surface-2); border-start-start-radius: 50% 2.75rem; border-start-end-radius: 50% 2.75rem; }
  .ac-sb-hizmetler { max-inline-size: 60rem; }
  .ac-sb-bos { margin: 0; padding: var(--ac-space-6); background: var(--ac-surface-2); border-radius: var(--ac-card-radius); color: var(--ac-ink-2); }

  /* routes: from / to columns */
  .ac-sb-rotalar { display: grid; gap: var(--ac-space-7); }
  @media (width >= 992px) { .ac-sb-rotalar:has(> :nth-child(2)) { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--ac-space-8); } }
  .ac-sb-rotalar__sutun h3 {
    display: flex; align-items: center; gap: var(--ac-space-2); margin: 0 0 var(--ac-space-2); padding-block-end: var(--ac-space-3);
    border-block-end: 1.5px solid var(--ac-ink); font-size: var(--ac-step-1); font-weight: 800;
  }
  .ac-sb-rotalar__sutun h3 i { color: var(--ac-gold-text); }
  .ac-sb-rotalar .ac-acilir { margin-block-start: var(--ac-space-2); }

  /* child points */
  .ac-sb-alt-bas { display: flex; align-items: center; gap: var(--ac-space-2); margin: var(--ac-space-6) 0 var(--ac-space-3); font-size: var(--ac-step-1); font-weight: 800; }
  .ac-sb-alt-bas:first-of-type { margin-block-start: 0; }
  .ac-sb-alt-bas i { color: var(--ac-gold-text); }
  .ac-sb-noktalar { display: grid; gap: var(--ac-space-2); grid-template-columns: repeat(auto-fill, minmax(13rem, 1fr)); list-style: none; margin: 0; padding: 0; }
  .ac-sb-noktalar a {
    display: flex; align-items: baseline; justify-content: space-between; gap: var(--ac-space-3); min-block-size: 2.75rem; padding: var(--ac-space-2) var(--ac-space-3);
    border-inline-start: 1px solid var(--ac-gold); background: var(--ac-surface-3); border-radius: 0 var(--ac-radius) var(--ac-radius) 0;
    color: var(--ac-ink); font-weight: 700; font-size: var(--ac-step--1); text-decoration: none; transition: transform var(--ac-dur-2) var(--ac-ease);
  }
  .ac-sb-noktalar small { color: var(--ac-muted); font-weight: 600; white-space: nowrap; font-variant-numeric: tabular-nums; }
  .ac-sb-noktalar a:hover { color: var(--ac-red); transform: translateX(3px); }

  /* other branches under the map */
  .ac-sb-diger { display: flex; flex-wrap: wrap; align-items: center; gap: var(--ac-space-3) var(--ac-space-5); margin-block-start: var(--ac-space-6); }
  .ac-sb-diger p { margin: 0; color: var(--ac-muted); font-size: var(--ac-step--2); font-weight: 700; letter-spacing: var(--ac-tracking-caps); text-transform: uppercase; }
  .ac-sb-diger ul { display: flex; flex-wrap: wrap; gap: var(--ac-space-3); list-style: none; margin: 0; padding: 0; }
  .ac-sb-diger a {
    display: inline-flex; align-items: center; gap: var(--ac-space-3); min-block-size: 2.75rem; padding: var(--ac-space-1) var(--ac-space-4) var(--ac-space-1) var(--ac-space-1);
    border: 1px solid var(--ac-line-strong); border-radius: var(--ac-card-radius); color: var(--ac-ink); font-weight: 700; text-decoration: none;
    transition: border-color var(--ac-dur-2) var(--ac-ease), transform var(--ac-dur-2) var(--ac-ease);
  }
  .ac-sb-diger b { display: grid; place-items: center; inline-size: 3rem; block-size: 2.25rem; border-radius: var(--ac-radius); background: rgb(201 169 106 / 0.14); color: var(--ac-gold-text); font-size: var(--ac-step--2); letter-spacing: 0.08em; }
  .ac-sb-diger a:hover { border-color: var(--ac-gold); transform: translateY(-2px); color: var(--ac-red); }
  .ac-sb a:focus-visible { outline: 2px solid var(--ac-focus); outline-offset: 3px; }

  @media (prefers-reduced-motion: reduce) {
    .ac-sb *, .ac-sb-hero * { transition-duration: 0.01ms !important; }
    .ac-sb-noktalar a:hover, .ac-sb-diger a:hover, .ac-sb-hero__iletisim a:hover { transform: none; }
  }
  @media (forced-colors: active) {
    .ac-sb-hero__kod { color: CanvasText; -webkit-text-stroke: 0; }
    .ac-sb-noktalar a, .ac-sb-diger a { border: 1px solid CanvasText; }
  }
  @media print {
    .ac-sb-eylem, #rezervasyon, .ac-ymap, .ac-sb-diger { display: none !important; }
    .ac-acilir > :not(summary) { display: block !important; }
  }
}
