/* Rotaname
   Renkli seyahat defteri: krem kâğıt zemin, emaye sokak levhaları, uçak postası şeridi.
   Her destinasyonun kendi rengi var: Tiflis lacivert-mavi, Batum deniz yeşili, Karadağ kırmızı-altın.
   Bölümler arasında küçük seyahat sahneleri (uçak, tren, bavul, teleferik, tekne, yol) oynar. */

:root {
  --paper: #FFFAF2;
  --surface: #FFFFFF;
  --wash: #FFF1DA;
  --sky-wash: #E7F2FF;
  --sea-wash: #DCF4F0;
  --rose-wash: #FFE9E4;
  --sun-wash: #FFF3CC;
  --ink: #14213D;
  --muted: #4D5A70;
  --rule: #E8DDCB;
  --enamel: #1F4FD8;
  --enamel-2: #4A74F0;
  --on-enamel: #FFFFFF;
  --screw: rgba(255, 255, 255, .6);
  --link: #1F4FD8;
  --tile: #0A7F7A;
  --tile-2: #14A39C;
  --sea: #0FA39E;
  --sea-text: #087A76;
  --sun: #FFC23D;
  --coral: #FF5D4A;
  --coral-text: #C4321F;
  --leaf: #2BAA62;
  --berry: #D63A62;
  --mne: #C8102E;
  --mne-2: #E8455A;
  --gold: #E8B33A;
  --accent: var(--enamel);
  --accent-2: var(--enamel-2);
  --accent-text: var(--enamel);
  --accent-wash: var(--sky-wash);
  --alert-bg: #FFE9E4;
  --alert-ink: #6E1B10;
  --art-line: rgba(255, 255, 255, .16);
  --focus: #FF9F1C;
  --shadow: 0 1px 0 rgba(20, 33, 61, .05), 0 14px 30px -22px rgba(20, 33, 61, .55);
  --airmail: repeating-linear-gradient(-45deg, var(--coral) 0 10px, #fff 10px 16px, var(--enamel) 16px 26px, #fff 26px 32px);

  --f-head: "Bricolage Grotesque", "Noto Sans Georgian", "Noto Sans", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
  --f-body: "Literata", "Noto Sans Georgian", "Noto Sans", Georgia, "Times New Roman", serif;
  --f-ka: "Noto Sans Georgian", "Noto Sans", system-ui, -apple-system, "Segoe UI", sans-serif;
  --measure: 66ch;
  --wrap: 1180px;
  color-scheme: light;
}

.dest--tiflis { --accent: var(--enamel); --accent-2: var(--enamel-2); --accent-text: var(--enamel); --accent-wash: var(--sky-wash); }
.dest--batum { --accent: var(--tile); --accent-2: var(--tile-2); --accent-text: var(--sea-text); --accent-wash: var(--sea-wash); }
.dest--yunan { --accent: #0D5EAF; --accent-2: #3C9BE0; --accent-text: #0D5EAF; --accent-wash: #DFF1FB; }
.dest--karadag { --accent: var(--mne); --accent-2: var(--mne-2); --accent-text: var(--mne); --accent-wash: var(--rose-wash); }

/* ---------- temel ---------- */
*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; text-size-adjust: 100%; scroll-padding-top: 5.5rem; background: var(--paper); }
:root { padding-top: env(safe-area-inset-top, 0px); padding-bottom: env(safe-area-inset-bottom, 0px); }
body {
  margin: 0;
  background: var(--paper);
  color: var(--ink);
  font-family: var(--f-body);
  font-size: 1.0625rem;
  line-height: 1.7;
  font-optical-sizing: auto;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}
body::before {
  content: "";
  position: fixed;
  inset: 0 0 auto;
  height: env(safe-area-inset-top, 0px);
  z-index: 40;
  background: var(--paper);
}
[hidden] { display: none !important; }
img { max-width: 100%; height: auto; display: block; }
p, ul, ol, dl, dd, figure { margin: 0; }
a { color: var(--link); text-decoration-thickness: .07em; text-underline-offset: .2em; }
a:hover { text-decoration-thickness: .13em; }
:focus-visible { outline: 3px solid var(--focus); outline-offset: 3px; border-radius: 4px; }
strong { font-weight: 650; }

h1, h2, h3, h4 {
  font-family: var(--f-head);
  color: var(--ink);
  margin: 0;
  line-height: 1.08;
  text-wrap: balance;
}
h1 { font-size: clamp(2rem, 1.3rem + 3vw, 3.25rem); font-weight: 780; font-stretch: 84%; letter-spacing: -.018em; }
h2 { font-size: clamp(1.5rem, 1.2rem + 1.25vw, 2.05rem); font-weight: 730; font-stretch: 88%; letter-spacing: -.01em; }
h3 { font-size: 1.3rem; font-weight: 690; font-stretch: 92%; line-height: 1.2; }
h4 { font-size: 1.12rem; font-weight: 680; line-height: 1.25; }
.ka { font-family: var(--f-ka); }

.wrap {
  max-width: var(--wrap);
  margin-inline: auto;
  padding-left: max(16px, env(safe-area-inset-left, 0px));
  padding-right: max(16px, env(safe-area-inset-right, 0px));
}
.narrow { max-width: 760px; }
.sr-only {
  position: absolute !important; width: 1px; height: 1px; margin: -1px; padding: 0;
  overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0;
}
.skip {
  position: absolute; left: -9999px; top: 0; z-index: 60;
  background: var(--ink); color: var(--paper); padding: .6rem 1rem; border-radius: .4rem;
  font-family: var(--f-head); font-weight: 600;
}
.skip:focus { left: max(16px, env(safe-area-inset-left, 0px)); top: calc(env(safe-area-inset-top, 0px) + 12px); }

/* ---------- emaye levha ---------- */
.plate {
  display: inline-flex;
  flex-direction: column;
  align-items: flex-start;
  gap: .1em;
  padding: .45em 1em .5em;
  background-color: var(--enamel);
  color: var(--on-enamel);
  border-radius: .5em;
  box-shadow: inset 0 0 0 .2em var(--enamel), inset 0 0 0 .31em var(--plate-rim, var(--on-enamel));
  line-height: 1.1;
  vertical-align: middle;
  max-width: 100%;
}
.plate__ka { font-family: var(--f-ka); font-weight: 650; font-size: 1.1em; letter-spacing: .01em; }
.plate__lat { font-family: var(--f-head); font-weight: 520; font-size: .74em; font-stretch: 92%; opacity: .94; }
.plate--xs { font-size: .74rem; padding: .38em .8em .42em; }
.plate--sm { font-size: .92rem; }
.plate--logo { font-size: .74rem; padding: .4em .95em .44em; }
.plate--logo .plate__ka { font-size: .92em; font-weight: 600; }
.plate--logo .plate__lat { font-size: 1.22em; font-weight: 760; font-stretch: 88%; opacity: 1; }
.plate--lg { font-size: clamp(.95rem, .75rem + 1vw, 1.35rem); padding: .62em 1.7em .7em; }
.plate--lg .plate__ka { font-size: 2.35em; font-weight: 700; }
.plate--lg .plate__lat { font-size: .95em; }
.plate--xl { font-size: clamp(.8rem, .55rem + 1.1vw, 1.3rem); padding: .7em 1.9em .78em; }
.plate--xl .plate__ka { font-size: 2.6em; font-weight: 700; }
.plate--xl .plate__lat { font-size: 1em; }
.plate--tile { --enamel: var(--tile); }
.plate--mne { --enamel: var(--mne); --plate-rim: var(--gold); }
.plate--gr { --enamel: #FFFFFF; --on-enamel: #0D5EAF; --plate-rim: #0D5EAF; --screw: rgba(13, 94, 175, .5); outline: 2px solid #0D5EAF; outline-offset: -1px; }
.plate--holes {
  background-image:
    radial-gradient(circle at .78em 50%, var(--screw) .11em, transparent .15em),
    radial-gradient(circle at calc(100% - .78em) 50%, var(--screw) .11em, transparent .15em);
}

/* Asılı levha: tek yükleme hareketi */
.hang { display: inline-block; position: relative; padding-top: 1.35rem; justify-self: start; }
.hang::before {
  content: "";
  position: absolute;
  top: 0; left: 50%;
  width: 46%; height: 1.45rem;
  transform: translateX(-50%);
  background:
    linear-gradient(to bottom right, transparent calc(50% - 1px), var(--muted) calc(50% - 1px), var(--muted) calc(50% + .5px), transparent calc(50% + .5px)) left / 50% 100% no-repeat,
    linear-gradient(to bottom left, transparent calc(50% - 1px), var(--muted) calc(50% - 1px), var(--muted) calc(50% + .5px), transparent calc(50% + .5px)) right / 50% 100% no-repeat;
}
.hang::after {
  content: "";
  position: absolute;
  top: -.2rem; left: 50%;
  width: .55rem; height: .55rem;
  transform: translateX(-50%);
  border-radius: 50%;
  background: var(--ink);
}
@media (prefers-reduced-motion: no-preference) {
  .swing { transform-origin: 50% 0; animation: swing 1.7s cubic-bezier(.33, .7, .3, 1) .2s both; }
  .city:nth-child(2) .swing { animation-delay: .38s; }
  .city:nth-child(3) .swing { animation-delay: .56s; }
  .city:nth-child(4) .swing { animation-delay: .74s; }
  @keyframes swing {
    0% { transform: rotate(-6deg); }
    28% { transform: rotate(3.6deg); }
    52% { transform: rotate(-1.8deg); }
    74% { transform: rotate(.8deg); }
    100% { transform: rotate(0); }
  }
  @view-transition { navigation: auto; }
}

/* ---------- üst bant ---------- */
.site-header {
  position: sticky;
  top: env(safe-area-inset-top, 0px);
  z-index: 30;
  background: var(--paper);
  border-bottom: 1px solid var(--rule);
}
.site-header::before { content: ""; display: block; height: 5px; background: var(--airmail); }
.header-inner { display: flex; align-items: center; gap: .9rem 1.25rem; min-height: 4rem; flex-wrap: wrap; padding-block: .5rem; }
.brand { display: inline-flex; text-decoration: none; }
.main-nav { display: flex; flex-wrap: wrap; gap: .2rem 1.15rem; margin-left: auto; font-family: var(--f-head); font-weight: 640; }
.main-nav a { color: var(--ink); text-decoration: none; padding: .3rem 0; border-bottom: 3px solid transparent; }
.main-nav a:hover, .main-nav a[aria-current] { border-bottom-color: var(--accent); }
.main-nav a[href*="karadag"]:hover, .main-nav a[href*="karadag"][aria-current] { border-bottom-color: var(--mne); }
.main-nav a[href*="yunan"]:hover, .main-nav a[href*="yunan"][aria-current] { border-bottom-color: #0D5EAF; }
.main-nav a[href$="#batum"]:hover, .main-nav a[href$="#batum"][aria-current] { border-bottom-color: var(--tile); }
.progress {
  position: absolute; left: 0; right: 0; bottom: -1px; height: 3px;
  background: var(--accent);
  transform-origin: left center;
  transform: scaleX(var(--p, 0));
}
@media (max-width: 560px) {
  .main-nav { order: 3; width: 100%; margin-left: 0; gap: .2rem 1.3rem; }
}
.preview-note { background: var(--sun-wash); border-bottom: 1px solid var(--rule); font-family: var(--f-head); font-size: .9rem; line-height: 1.45; color: var(--ink); }
.preview-note p { padding-block: .65rem; max-width: 80ch; }

/* ---------- makale başı ---------- */
.article-top {
  background: linear-gradient(180deg, var(--accent-wash) 0%, var(--accent-wash) 62%, var(--paper) 100%);
  padding-bottom: 3.6rem;
}
.crumbs { padding-top: 1.3rem; font-family: var(--f-head); font-size: .9rem; color: var(--muted); }
.crumbs ol { list-style: none; padding: 0; display: flex; flex-wrap: wrap; gap: .25rem .45rem; }
.crumbs li + li::before { content: "/"; margin-right: .45rem; color: var(--muted); opacity: .5; }
.crumbs a { color: var(--muted); }
.article-head { display: grid; grid-template-columns: minmax(0, 1fr); gap: 1.1rem; padding-top: 1.4rem; max-width: 56rem; }
.lead { font-size: clamp(1.1rem, 1rem + .4vw, 1.28rem); line-height: 1.58; max-width: var(--measure); }
.meta { display: flex; flex-wrap: wrap; gap: .3rem 1.5rem; font-family: var(--f-head); font-size: .92rem; color: var(--muted); }
.series { display: flex; flex-wrap: wrap; gap: .5rem; margin-top: .3rem; }
.series a {
  font-family: var(--f-head); font-weight: 640; font-size: .95rem; line-height: 1.2;
  text-decoration: none; color: var(--ink);
  padding: .55rem .95rem; border: 1.5px solid var(--rule); border-radius: 999px; background: var(--surface);
}
.series a:hover { border-color: var(--accent); }
.series a[aria-current="page"] { background: var(--accent); border-color: var(--accent); color: #fff; }
.hero { margin-top: -2.4rem; position: relative; }
.hero .ph__frame { border-radius: .9rem; box-shadow: var(--shadow); }
@media (max-width: 700px) { .hero .ph__frame { aspect-ratio: 4 / 3 !important; } }

/* ---------- makale gövdesi ---------- */
.article-grid { display: grid; gap: 2rem; padding-block: 2rem 4.5rem; }
.toc-rail { display: none; }
@media (min-width: 1100px) {
  .article-grid { grid-template-columns: 14.5rem minmax(0, 1fr); gap: 3.5rem; }
  .toc-rail { display: block; }
  .toc { position: sticky; top: calc(env(safe-area-inset-top, 0px) + 5.6rem); }
  .toc-mobile { display: none; }
}
.toc, .toc-mobile { font-family: var(--f-head); font-size: .93rem; }
.toc__title { font-weight: 700; color: var(--ink); }
.toc ol, .toc-mobile ol { list-style: none; padding: 0; display: grid; gap: .1rem; margin-top: .55rem; }
.toc ol { border-left: 2px solid var(--rule); }
.toc a { display: block; padding: .32rem 0 .32rem .9rem; margin-left: -2px; border-left: 3px solid transparent; color: var(--muted); text-decoration: none; line-height: 1.3; }
.toc a:hover { color: var(--ink); }
.toc a[aria-current="true"] { color: var(--ink); border-left-color: var(--accent); font-weight: 650; }
.toc-mobile { border: 1.5px solid var(--rule); border-radius: .8rem; background: var(--surface); padding: .8rem 1rem; }
.toc-mobile summary { cursor: pointer; font-weight: 700; }
.toc-mobile a { display: block; padding: .3rem 0; color: var(--link); text-decoration: none; line-height: 1.35; }

.article-body { min-width: 0; display: grid; grid-template-columns: minmax(0, 1fr); gap: 2.8rem; align-content: start; }
.block { display: grid; grid-template-columns: minmax(0, 1fr); gap: 1.1rem; min-width: 0; }
.block > *, .article-head > * { min-width: 0; }
.block > p, .block > ul, .faq__a, .note p { max-width: var(--measure); }
.block > ul { padding-left: 1.2rem; display: grid; gap: .55rem; }
.block > ul li::marker { color: var(--accent); }
.block > h3 { margin-top: .6rem; }
.block > h2 { position: relative; padding-top: .2rem; }
.block > h2::before {
  content: ""; display: block; width: 2.6rem; height: .32rem; border-radius: 99px; margin-bottom: .7rem;
  background: linear-gradient(90deg, var(--accent) 0 60%, var(--sun) 60% 100%);
}

.answer {
  display: grid; gap: .55rem;
  background: #FFF6D9;
  border: 1px solid #F3D27C;
  border-left: 6px solid var(--sun);
  border-radius: .8rem;
  padding: 1.25rem 1.4rem 1.35rem;
}
.answer__title { font-size: 1.02rem; font-stretch: 100%; font-weight: 760; color: var(--coral-text); letter-spacing: 0; }
.answer p { font-size: 1.12rem; line-height: 1.6; max-width: var(--measure); }

.note { display: grid; gap: .4rem; background: var(--alert-bg); color: var(--alert-ink); border-radius: .8rem; padding: 1rem 1.25rem; border-left: 6px solid var(--coral); }
.note strong { font-family: var(--f-head); font-weight: 720; }
.note a { color: var(--alert-ink); }

/* ---------- süzgeç ---------- */
.filters { display: flex; flex-wrap: wrap; align-items: center; gap: .5rem; }
.filters button {
  font: 640 .95rem/1.1 var(--f-head);
  padding: .58rem 1rem;
  border-radius: 999px;
  border: 1.5px solid var(--rule);
  background: var(--surface);
  color: var(--ink);
  cursor: pointer;
  transition: background-color .15s ease, color .15s ease, border-color .15s ease;
}
.filters button:hover { border-color: var(--accent); }
.filters button[aria-pressed="true"] { background: var(--accent); border-color: var(--accent); color: #fff; }
.filters output { font-family: var(--f-head); font-size: .9rem; color: var(--muted); margin-left: .3rem; }

/* ---------- mekân kartları ---------- */
.places { display: grid; }
.place { display: grid; gap: 1rem; padding-block: 2.1rem; border-top: 1.5px dashed var(--rule); }
.place:first-child { border-top: 0; padding-top: .6rem; }
.place__rank {
  font-family: var(--f-head); font-weight: 800; font-stretch: 75%;
  font-size: 3.1rem; line-height: .85;
  color: var(--accent); font-variant-numeric: tabular-nums;
}
.place__body { display: grid; gap: .8rem; min-width: 0; align-content: start; }
.place__body > .plate { justify-self: start; }
.place__title { font-size: clamp(1.35rem, 1.2rem + .6vw, 1.7rem); }
.place .ph { order: -1; }
@media (min-width: 860px) {
  .place { grid-template-columns: 4.4rem minmax(0, 1.15fr) minmax(0, 1fr); gap: 1.6rem; align-items: start; }
  .place .ph { order: 0; }
}
.facts {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 10.5rem), 1fr));
  gap: .7rem 1.2rem;
  padding: .9rem 1rem;
  background: var(--surface);
  border: 1px solid var(--rule);
  border-radius: .7rem;
}
.facts div { min-width: 0; }
.facts dt { font-family: var(--f-head); font-size: .84rem; font-weight: 640; color: var(--accent-text); }
.facts dd { font-size: .98rem; line-height: 1.42; }
.tip { font-size: .98rem; line-height: 1.6; }
.tip strong { font-family: var(--f-head); font-weight: 760; color: var(--coral-text); }
.maplink {
  justify-self: start;
  display: inline-flex; align-items: center; gap: .4rem;
  font: 660 .95rem/1 var(--f-head);
  color: var(--accent-text); text-decoration: none;
  padding: .58rem .9rem;
  border: 1.5px solid currentColor; border-radius: 999px;
  background: var(--surface);
}
.maplink:hover { background: var(--accent-wash); }

/* ---------- görsel ---------- */
.ph { display: grid; gap: .4rem; min-width: 0; }
.ph__frame {
  position: relative;
  aspect-ratio: var(--ratio, 4 / 3);
  width: 100%; max-width: 100%;
  overflow: hidden;
  border-radius: .7rem;
  background: var(--art-a, var(--enamel));
}
.ph__frame img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.ph__art {
  position: absolute; inset: 0;
  display: flex; flex-direction: column; justify-content: flex-end; gap: .2rem;
  padding: clamp(.9rem, 3vw, 1.4rem);
  color: #fff;
  background:
    radial-gradient(circle at 84% 22%, var(--art-sun, rgba(255, 194, 61, .9)) 0 9%, transparent 9.5%),
    repeating-linear-gradient(45deg, transparent 0 26px, var(--art-line) 26px 27px),
    repeating-linear-gradient(-45deg, transparent 0 26px, var(--art-line) 26px 27px),
    linear-gradient(155deg, var(--art-a, var(--enamel)), var(--art-b, var(--enamel-2)));
}
.ph__ka { font-family: var(--f-ka); font-weight: 700; font-size: clamp(1.45rem, 1rem + 2.2vw, 2.5rem); line-height: 1.05; overflow-wrap: anywhere; }
.ph__lat { font-family: var(--f-head); font-weight: 640; font-size: .95rem; opacity: .92; }
.ph--tiflis { --art-a: #1F4FD8; --art-b: #5B86FF; }
.ph--batum { --art-a: #0A7F7A; --art-b: #22C1B9; }
.ph--karadag { --art-a: #C8102E; --art-b: #FF6A4D; --art-sun: rgba(232, 179, 58, .95); }
.ph--yunan { --art-a: #0D5EAF; --art-b: #3FB8E8; --art-sun: rgba(255, 255, 255, .92); }
.ph--food { --art-a: #E04A3A; --art-b: #FFAA3B; --art-sun: rgba(255, 255, 255, .85); }
.ph figcaption { font-family: var(--f-head); font-size: .8rem; color: var(--muted); }
.ph figcaption a { color: inherit; }

/* ---------- yemekler ---------- */
.dishes { display: grid; gap: 1.2rem; grid-template-columns: repeat(auto-fill, minmax(min(100%, 19rem), 1fr)); }
.dish {
  display: grid; grid-template-rows: auto 1fr;
  background: var(--surface);
  border: 1px solid var(--rule);
  border-radius: .9rem;
  overflow: hidden;
  box-shadow: var(--shadow);
}
.dish .ph { gap: 0; }
.dish .ph__frame { border-radius: 0; }
.dish .ph figcaption { padding: .45rem 1.1rem 0; }
.dish__body { display: grid; gap: .55rem; padding: .95rem 1.1rem 1.15rem; align-content: start; }
.dish__title { font-size: 1.25rem; display: flex; flex-wrap: wrap; align-items: baseline; gap: .15rem .6rem; }
.dish__title .ka { font-size: .92rem; font-weight: 500; color: var(--muted); }
.dish__body p { font-size: .98rem; line-height: 1.62; }
.dish__meta { display: flex; flex-wrap: wrap; align-items: center; gap: .45rem .5rem; margin-top: .15rem; }
.dish__price { font-family: var(--f-head); font-weight: 700; font-size: .93rem; margin-right: .2rem; }
.badge { font-family: var(--f-head); font-size: .8rem; font-weight: 640; line-height: 1.2; padding: .3rem .65rem; border-radius: 999px; background: var(--wash); color: var(--ink); }
.badge--vejetaryen { background: #E1F5E8; color: #165A33; }
.badge--domuzsuz { background: var(--sky-wash); color: #173E9E; }

/* ---------- restoranlar ---------- */
.restos { list-style: none; padding: 0; display: grid; }
.resto { display: grid; gap: .55rem; padding-block: 1.35rem; border-top: 1.5px dashed var(--rule); }
.resto:first-child { border-top: 0; padding-top: .3rem; }
.resto__head { display: flex; flex-wrap: wrap; align-items: center; gap: .5rem .85rem; }
.resto__name { font-size: 1.22rem; }
.resto p { max-width: var(--measure); }
.resto__order strong { font-family: var(--f-head); font-weight: 720; }
.resto__meta { display: flex; flex-wrap: wrap; align-items: center; gap: .55rem 1.1rem; font-family: var(--f-head); font-size: .92rem; color: var(--muted); margin-top: .15rem; }
.resto__price { font-weight: 780; color: var(--accent-text); letter-spacing: .06em; }

/* ---------- tablo ---------- */
.table-wrap { overflow-x: auto; border: 1px solid var(--rule); border-radius: .8rem; background: var(--surface); }
table { width: 100%; min-width: 30rem; border-collapse: collapse; font-size: .98rem; line-height: 1.45; font-variant-numeric: tabular-nums; }
caption { caption-side: top; text-align: left; font-family: var(--f-head); font-weight: 720; padding: .9rem 1rem .5rem; color: var(--ink); }
th, td { text-align: left; vertical-align: top; padding: .7rem 1rem; border-top: 1px solid var(--rule); }
thead th { border-top: 0; font-family: var(--f-head); font-size: .85rem; font-weight: 660; color: var(--ink); background: var(--accent-wash); }
tbody th { font-family: var(--f-head); font-weight: 660; }
tbody tr:nth-child(even) td, tbody tr:nth-child(even) th { background: #FFFCF6; }

/* ---------- günlük rota ---------- */
.days { list-style: none; padding: 0; display: grid; gap: 1rem; }
.day { display: grid; gap: .75rem; background: var(--surface); border: 1px solid var(--rule); border-top: 5px solid var(--accent); border-radius: .8rem; padding: 1.1rem 1.25rem 1.2rem; }
.day__title { font-size: 1.2rem; display: flex; flex-wrap: wrap; align-items: center; gap: .35rem .6rem; }
.day__n { font-size: .82rem; font-weight: 760; color: #fff; background: var(--accent); padding: .3rem .6rem; border-radius: 999px; line-height: 1; }
.slots { display: grid; gap: .6rem; }
.slots div { display: grid; gap: .1rem; }
.slots dt { font-family: var(--f-head); font-size: .9rem; font-weight: 680; color: var(--accent-text); }
@media (min-width: 640px) { .slots div { grid-template-columns: 8.5rem minmax(0, 1fr); gap: 1rem; } }

/* ---------- yürüyüş rotası (metro hattı gibi) ---------- */
.route { list-style: none; padding: 0; counter-reset: stop; display: grid; }
.route li { counter-increment: stop; position: relative; display: grid; grid-template-columns: 2.3rem minmax(0, 1fr); column-gap: .9rem; padding-bottom: 1rem; }
.route li::before {
  content: counter(stop);
  grid-row: 1 / span 2;
  width: 2.3rem; height: 2.3rem;
  display: grid; place-items: center;
  border-radius: 50%;
  background: var(--accent); color: #fff;
  font: 760 .95rem/1 var(--f-head);
  box-shadow: 0 0 0 3px var(--paper);
  position: relative; z-index: 1;
}
.route li:not(:last-child)::after { content: ""; position: absolute; left: calc(1.15rem - 1.5px); top: 2.3rem; bottom: 0; width: 3px; background: var(--accent); opacity: .35; }
.route__stop { font-family: var(--f-head); font-weight: 680; line-height: 1.3; padding-top: .25rem; }
.route__leg { font-size: .93rem; color: var(--muted); line-height: 1.4; }

/* ---------- SSS ---------- */
.faq { border-top: 1.5px solid var(--rule); }
.faq__item { border-bottom: 1.5px solid var(--rule); }
.faq__item summary {
  cursor: pointer; list-style: none;
  display: flex; justify-content: space-between; align-items: baseline; gap: 1rem;
  padding: 1.05rem 0;
  font-family: var(--f-head); font-weight: 680; font-size: 1.08rem; line-height: 1.3;
}
.faq__item summary::-webkit-details-marker { display: none; }
.faq__item summary::after { content: "+"; flex: none; font-weight: 600; font-size: 1.45rem; line-height: 1; color: var(--accent); }
.faq__item[open] summary::after { content: "−"; }
.faq__a { display: grid; gap: .7rem; padding-bottom: 1.15rem; }

/* ---------- kartlar ---------- */
.cards { list-style: none; padding: 0; display: grid; gap: 1.6rem 1.25rem; grid-template-columns: repeat(auto-fill, minmax(min(100%, 16rem), 1fr)); }
.card a { display: grid; gap: .55rem; color: var(--ink); text-decoration: none; }
.card .ph__frame { box-shadow: var(--shadow); }
.card .ph__art, .card .ph__frame img { transition: transform .45s cubic-bezier(.2, .7, .2, 1); }
.card a:hover .ph__art, .card a:hover .ph__frame img { transform: scale(1.04); }
.card__title { font-family: var(--f-head); font-weight: 740; font-size: 1.15rem; line-height: 1.22; text-wrap: balance; }
.card__desc { font-size: .95rem; line-height: 1.45; color: var(--muted); }
.card a:hover .card__title { text-decoration: underline; text-decoration-thickness: .08em; text-underline-offset: .2em; }
.cards--text { gap: 0; grid-template-columns: repeat(auto-fill, minmax(min(100%, 16rem), 1fr)); border-top: 1.5px solid var(--rule); }
.cards--text .card a { padding: 1rem 1.25rem 1.1rem 0; border-bottom: 1.5px solid var(--rule); height: 100%; }
.cards--text .card--karadag .card__title::before,
.cards--text .card--tiflis .card__title::before,
.cards--text .card--batum .card__title::before {
  content: ""; display: inline-block; width: .6rem; height: .6rem; border-radius: 50%; margin-right: .45rem; vertical-align: .1em;
  background: var(--enamel);
}
.cards--text .card--batum .card__title::before { background: var(--tile); }
.cards--text .card--karadag .card__title::before { background: var(--mne); }
.cards--text .card--yunan .card__title::before { content: ""; display: inline-block; width: .6rem; height: .6rem; border-radius: 50%; margin-right: .45rem; vertical-align: .1em; background: #0D5EAF; }
.credits p, .credits li { font-size: .88rem; color: var(--muted); }
.credits ul { padding-left: 1.1rem; display: grid; gap: .2rem; }
.credits a { color: var(--muted); }

/* ---------- ana sayfa ---------- */
.home-hero {
  padding-block: clamp(2rem, 5vw, 4.2rem) 0;
  background: linear-gradient(180deg, #D7ECFF 0%, #EAF5FF 48%, var(--paper) 100%);
}
.home-hero__grid { display: grid; gap: 2.2rem; align-items: center; }
.home-hero__text { display: grid; gap: 1.15rem; }
.home-hero h1 { font-size: clamp(2.2rem, 1.35rem + 3.7vw, 4.1rem); max-width: 14ch; }
.home-hero__cta { display: flex; flex-wrap: wrap; gap: .7rem; }
.button {
  display: inline-flex; align-items: center;
  font: 700 1rem/1 var(--f-head);
  padding: .9rem 1.2rem;
  border-radius: 999px;
  background: var(--ink); color: #fff;
  text-decoration: none;
  box-shadow: 0 6px 0 -2px rgba(20, 33, 61, .18);
}
.button:hover { background: var(--enamel); }
.button--mne { background: var(--mne); }
.button--mne:hover { background: #A30D25; }
.button--gr { background: #0D5EAF; }
.button--gr:hover { background: #094A8C; }
.city-plates { display: flex; flex-wrap: wrap; gap: 1rem 2rem; align-items: flex-start; }
.city-plates .plate--xl { font-size: clamp(.72rem, .5rem + 1vw, 1.12rem); }
.city { display: grid; justify-items: start; gap: .55rem; max-width: 100%; color: var(--ink); text-decoration: none; }
.city__meta { font-family: var(--f-head); font-weight: 640; font-size: .95rem; color: var(--muted); }
.city:hover .city__meta { color: var(--ink); text-decoration: underline; text-underline-offset: .2em; }
@media (max-width: 639px) { .city:nth-child(even) { margin-left: auto; justify-items: end; } }
@media (min-width: 640px) { .city:nth-child(even) { margin-top: 2.2rem; } }
@media (min-width: 960px) {
  .home-hero__grid { grid-template-columns: minmax(0, 1.05fr) minmax(0, .95fr); }
  .city-plates { gap: 1.1rem 1.6rem; padding-left: 1rem; }
  .city-plates .plate--xl { font-size: .9rem; }
}
.scene--bare { margin-top: clamp(1rem, 3vw, 2rem); background: none !important; border-radius: 0 !important; }

.band { padding-block: clamp(2.4rem, 5vw, 3.8rem); }
.band h2 { margin-bottom: 1.3rem; }
.band__head { display: flex; flex-wrap: wrap; align-items: center; gap: .6rem .9rem; margin-bottom: 1.3rem; }
.band__head h2 { margin: 0; }
.band .scene { margin-bottom: 1.7rem; }
.band--sky { background: var(--sky-wash); }
.band--sea { background: var(--sea-wash); }
.band--rose { background: var(--rose-wash); }
.band--sun { background: var(--sun-wash); }
.band--aegean { background: #DFF1FB; }
.band .narrow { display: grid; gap: 1rem; }
.changes { list-style: none; padding: 0; display: grid; gap: 1.5rem 2rem; grid-template-columns: repeat(auto-fit, minmax(min(100%, 15rem), 1fr)); }
.changes li { display: grid; gap: .45rem; align-content: start; padding-top: 1rem; border-top: 4px solid var(--enamel); }
.changes li:nth-child(3n + 2) { border-top-color: var(--coral); }
.changes li:nth-child(3n) { border-top-color: var(--sea); }
.changes h3 { font-size: 1.15rem; }
.changes h3 a { color: var(--ink); text-decoration: none; }
.changes h3 a:hover { text-decoration: underline; }
.changes p { font-size: .98rem; line-height: 1.55; }

/* ---------- alt bant ---------- */
.site-footer { background: var(--sky-wash); padding-block: 0 2.8rem; font-size: .95rem; line-height: 1.6; }
.site-footer::before { content: ""; display: block; height: 8px; background: var(--airmail); margin-bottom: 2.6rem; }
.footer-grid { display: grid; gap: 1.8rem; }
@media (min-width: 640px) { .footer-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); } .footer-about { grid-column: 1 / -1; } }
@media (min-width: 1040px) { .footer-grid { grid-template-columns: 1.5fr repeat(4, minmax(0, 1fr)); } .footer-about { grid-column: auto; } }
@media (max-width: 639px) { .footer-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } .footer-about { grid-column: 1 / -1; } }
.footer-about { display: grid; gap: .8rem; justify-items: start; max-width: 44ch; }
.footer-hubs { display: flex; flex-wrap: wrap; gap: .3rem 1.1rem; }
.footer-title { font-size: 1rem; font-stretch: 100%; margin-bottom: .55rem; }
.footer-links { list-style: none; padding: 0; display: grid; gap: .3rem; }
.footer-links a { color: var(--ink); }
.footer-small { margin-top: 2rem; font-size: .85rem; color: var(--muted); }

/* ---------- seyahat sahneleri ---------- */
.scene {
  container-type: inline-size;
  position: relative;
  overflow: hidden;
  border-radius: 1rem;
  background: linear-gradient(180deg, #CBE6FF 0%, #E9F5FF 78%, #F6FBFF 100%);
}
.scene svg { display: block; width: 100%; height: 120px; height: clamp(92px, 15cqw, 176px); }
.scene--suitcase { background: linear-gradient(180deg, #FFF1D6 0%, #FFE7C2 100%); }
.scene .scene__label { font-family: var(--f-head); font-weight: 760; font-size: 15px; fill: var(--ink); paint-order: stroke; stroke: rgba(255, 255, 255, .85); stroke-width: 4px; stroke-linejoin: round; }
@container (max-width: 760px) { .scene .scene__label { font-size: 19px; } }
@container (max-width: 480px) { .scene .scene__label { font-size: 23px; } }
.scene .sticker { font-family: var(--f-head); font-weight: 800; font-size: 13px; fill: var(--ink); }
.scene .sticker--light { fill: #fff; }
.scene .sticker--sm { font-size: 10.5px; }
.scene .sticker--xs { font-size: 9.5px; letter-spacing: .04em; }

.scene .c-cloud { fill: #fff; }
.scene .c-coral { fill: var(--coral); }
.scene .c-enamel { fill: var(--enamel); }
.scene .c-sea { fill: var(--sea); }
.scene .c-mne { fill: var(--mne); }
.scene .c-leaf { fill: var(--leaf); }
.scene .c-sun { fill: var(--sun); }
.scene .c-ink { fill: var(--ink); }
.scene .c-white { fill: #fff; }
.scene .c-hub { fill: #C9D4E6; }
.scene .spoke { stroke: var(--ink); stroke-width: 2; }
.scene .c-shade { fill: rgba(20, 33, 61, .14); }
.scene .c-stripe { fill: rgba(255, 255, 255, .6); }
.scene .c-window { fill: #DDF0FF; }
.scene .c-wood { fill: #A97C55; }
.scene .c-hill-far { fill: #BFE8CA; }
.scene .c-hill-near { fill: #86D19C; }
.scene .c-ground { fill: #EBDDB9; }
.scene .c-rail { fill: #5C6780; }
.scene .c-stone { fill: #C9A97F; }
.scene .c-handle { fill: #8D99AE; }
.scene .tag-string { stroke: var(--ink); stroke-width: 1.5; fill: none; }
.scene .c-glass { fill: #D5ECFF; }
.scene .c-frame { fill: #F5E2BE; }
.scene .c-jet { fill: #9FB6D6; }
.scene .c-floor { fill: #F3E4C5; }
.scene .floor { stroke: #D9C29A; stroke-width: 3; fill: none; }
.scene .belt { stroke: #D9C29A; stroke-width: 4; stroke-dasharray: 40 30; fill: none; }
.scene .hanger { stroke: var(--ink); stroke-width: 2.5; fill: none; }
.scene .cable { stroke: var(--ink); stroke-width: 2; fill: none; }
.scene .c-mtn { fill: #A3C7EE; }
.scene .c-mtn2 { fill: #7DAAE0; }
.scene .c-water { fill: #3BB4D1; }
.scene .wave { stroke: #fff; stroke-width: 3; fill: none; opacity: .75; }
.scene .wave--2 { opacity: .45; }
.scene .mast { stroke: var(--ink); stroke-width: 3; }
.scene .gull { stroke: var(--ink); stroke-width: 2; fill: none; stroke-linecap: round; stroke-linejoin: round; }
.scene .c-trunk { fill: #8C5E3C; }
.scene .c-tree { fill: #3DAA66; }
.scene .c-tree2 { fill: #2E9256; }
.scene .c-asphalt { fill: #59637A; }
.scene .road-edge { stroke: #fff; stroke-width: 2; opacity: .55; }
.scene .road-line { stroke: #FFD465; stroke-width: 4; stroke-dasharray: 30 22; fill: none; }
.scene .route-dash { stroke: var(--enamel); stroke-width: 3; stroke-linecap: round; stroke-dasharray: .1 11; fill: none; }
.scene .trail { stroke: #fff; stroke-width: 3; stroke-linecap: round; stroke-dasharray: 8 7; opacity: .9; }
.scene .c-plane { fill: var(--coral); stroke: #fff; stroke-width: 1.2; }
.scene .pin { stroke: #fff; stroke-width: 3; }
.scene .puff { opacity: 0; }

@media (prefers-reduced-motion: no-preference) {
  .scene .mv { animation: scene-slide var(--t, 20s) linear infinite; }
  .scene .cloud { animation: scene-drift 16s ease-in-out infinite alternate; }
  .scene .cloud--b { animation-duration: 22s; animation-delay: -7s; }
  .scene .cloud--c { animation-duration: 28s; animation-delay: -13s; }
  .scene .spin { transform-box: fill-box; transform-origin: center; animation: scene-spin .7s linear infinite; }
  .scene .route-dash { animation: scene-march 1.2s linear infinite; }
  .scene .road-line { animation: scene-road .5s linear infinite; }
  .scene .rattle { animation: scene-rattle .32s ease-in-out infinite alternate; }
  .scene .puff { transform-box: fill-box; transform-origin: center; animation: scene-puff 1.8s ease-out infinite; }
  .scene .puff--2 { animation-delay: .6s; }
  .scene .puff--3 { animation-delay: 1.2s; }
  .scene .case-bob { animation: scene-bob .5s ease-in-out infinite alternate; }
  .scene .tag { transform-box: fill-box; transform-origin: 0 0; animation: scene-tag 1s ease-in-out infinite alternate; }
  .scene .jet { animation: scene-jet 14s linear infinite; }
  .scene .gondola-move { animation: scene-gondola 9s ease-in-out infinite alternate; }
  .scene .gondola-swing { transform-box: fill-box; transform-origin: 50% 0; animation: scene-swing 2.2s ease-in-out infinite alternate; }
  .scene .boat-drift { animation: scene-boat 7s ease-in-out infinite alternate; }
  .scene .boat-bob { transform-box: fill-box; transform-origin: 50% 100%; animation: scene-rock 2.6s ease-in-out infinite alternate; }
  .scene .flap { transform-box: fill-box; transform-origin: center; animation: scene-flap .5s ease-in-out infinite alternate; }
  .scene .flap--2 { animation-delay: -.25s; }
  .scene .gulls { animation: scene-drift 9s ease-in-out infinite alternate; }
  .scene .vehicle { animation: scene-bob .38s ease-in-out infinite alternate; }

  @keyframes scene-slide { to { transform: translateX(var(--d, -100px)); } }
  @keyframes scene-drift { to { transform: translateX(46px); } }
  @keyframes scene-spin { to { transform: rotate(360deg); } }
  @keyframes scene-march { to { stroke-dashoffset: -22.2; } }
  @keyframes scene-road { to { stroke-dashoffset: 52; } }
  @keyframes scene-rattle { to { transform: translateY(-1.2px); } }
  @keyframes scene-puff { 0% { opacity: .95; transform: translate(0, 0) scale(.6); } 100% { opacity: 0; transform: translate(-46px, -26px) scale(1.7); } }
  @keyframes scene-bob { to { transform: translateY(-2px); } }
  @keyframes scene-tag { from { transform: rotate(-7deg); } to { transform: rotate(9deg); } }
  @keyframes scene-jet { from { transform: translateX(0); } to { transform: translateX(-1560px); } }
  @keyframes scene-gondola { from { transform: translate(-180px, 28px); } to { transform: translate(180px, -28px); } }
  @keyframes scene-swing { from { transform: rotate(-4deg); } to { transform: rotate(4deg); } }
  @keyframes scene-boat { from { transform: translateX(-34px); } to { transform: translateX(34px); } }
  @keyframes scene-rock { from { transform: rotate(-4deg) translateY(0); } to { transform: rotate(3deg) translateY(2px); } }
  @keyframes scene-flap { to { transform: scaleY(.35); } }

  /* Sahne ekranda değilse dur (main.js .is-on sınıfını ekler) */
  .js .scene:not(.is-on) * { animation-play-state: paused !important; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; }
  .scene .puff { opacity: .9; }
}

/* ---------- rotalar: levha duvarı ve rota kartları (rota sayısı arttıkça ölçeklenir) ---------- */
.plate-wall { display: flex; flex-wrap: wrap; gap: 1rem 1.1rem; align-items: flex-start; align-content: flex-start; }
.plate-wall a { text-decoration: none; display: inline-flex; transition: transform .25s cubic-bezier(.2, .7, .2, 1); }
.plate-wall a:nth-child(odd) { transform: rotate(-1.6deg); }
.plate-wall a:nth-child(even) { transform: rotate(1.3deg); margin-top: .5rem; }
.plate-wall a:hover { transform: rotate(0) translateY(-2px); }
.plate-wall .plate { font-size: clamp(1.02rem, .8rem + .7vw, 1.3rem); box-shadow: inset 0 0 0 .2em var(--enamel), inset 0 0 0 .31em var(--plate-rim, var(--on-enamel)), 0 10px 18px -12px rgba(20, 33, 61, .7); }
.plate-wall .plate__lat { font-size: .8em; }
.plate-wall__more { font: 700 .95rem/1 var(--f-head); align-self: center; color: var(--ink) !important; text-decoration: underline !important; transform: none !important; }
.home-hero__cta { align-items: center; }
.home-hero__count { font: 640 .95rem/1.2 var(--f-head); color: var(--muted); }
.home-hero--slim { padding-bottom: 2rem; }
.home-hero--slim .home-hero__text { padding-top: 1.2rem; max-width: 46rem; }
.dest-group + .dest-group { margin-top: 2.6rem; }
.group-title { display: flex; flex-wrap: wrap; align-items: baseline; gap: .3rem .8rem; margin-bottom: 1.2rem; }
.group-count { font: 640 .9rem/1 var(--f-head); font-stretch: 100%; letter-spacing: 0; color: var(--muted); }
.dests { list-style: none; padding: 0; display: grid; gap: 1.3rem; grid-template-columns: repeat(auto-fill, minmax(min(100%, 15.5rem), 1fr)); }
.dest { display: grid; grid-template-rows: auto 1fr; background: var(--surface); border: 1px solid var(--rule); border-radius: .9rem; overflow: hidden; box-shadow: var(--shadow); min-width: 0; }
.dest .ph__frame { border-radius: 0; }
.dest .ph__art, .dest .ph__frame img { transition: transform .45s cubic-bezier(.2, .7, .2, 1); }
.dest:hover .ph__art, .dest:hover .ph__frame img { transform: scale(1.04); }
.dest__body { display: grid; gap: .3rem; align-content: start; padding: .9rem 1rem 1.1rem; }
.dest__country { font: 660 .8rem/1.2 var(--f-head); color: var(--muted); }
.dest__title { font-size: 1.3rem; font-weight: 740; }
.dest__title a { color: var(--ink); text-decoration: none; }
.dest__title a:hover { text-decoration: underline; text-underline-offset: .2em; }
.dest__links { list-style: none; padding: 0; display: flex; flex-wrap: wrap; gap: .4rem; margin-top: .45rem; }
.dest__links a { display: inline-block; font: 640 .84rem/1.15 var(--f-head); padding: .42rem .7rem; border-radius: 999px; background: var(--accent-wash); color: var(--accent-text); text-decoration: none; }
.dest__links a:hover { background: var(--accent); color: #fff; }
.dest--yunan .dest__links a:hover, .dest--tiflis .dest__links a:hover { color: #fff; }
.all-link { margin-top: 1.6rem; font: 700 1rem/1.3 var(--f-head); }
.dest-filter { display: flex; flex-wrap: wrap; align-items: center; gap: .5rem .8rem; margin-top: .4rem; }
.dest-filter label { font: 700 .95rem/1 var(--f-head); }
.dest-filter input { font: 500 1rem/1.2 var(--f-head); padding: .7rem 1rem; min-width: min(100%, 17rem); border: 1.5px solid var(--rule); border-radius: 999px; background: var(--surface); color: var(--ink); }
.dest-filter input::placeholder { color: var(--muted); }
.dest-filter output { font: 600 .9rem/1 var(--f-head); color: var(--muted); }
.dest-empty { font-family: var(--f-head); color: var(--muted); }
.footer-links--cols { grid-template-columns: repeat(auto-fill, minmax(8.5rem, 1fr)); column-gap: 1rem; }
@media (min-width: 640px) { .footer-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width: 1040px) { .footer-grid { grid-template-columns: 1.4fr 1.6fr 1fr; } }

/* =====================================================================
   SADE VE LÜKS KATMAN
   Fildişi kâğıt, tek mürekkep, pirinç vurgu. Dolgu yerine ince çizgi,
   yuvarlak hap yerine keskin kenar, renkli sahne yerine çizgi illüstrasyon.
   Bu katman yukarıdaki kuralların üstüne yazar.
   ===================================================================== */
:root {
  --paper: #FAF7F2; --surface: #FFFFFF; --wash: #F3EEE5;
  --sky-wash: #F3EEE5; --sea-wash: #F3EEE5; --rose-wash: #F3EEE5; --sun-wash: #F3EEE5;
  --ink: #1B1F27; --muted: #666A73; --rule: #E2DBCE;
  --enamel: #1E3A6E; --enamel-2: #2C4F8F; --link: #1E3A6E;
  --tile: #1F5F5B; --tile-2: #2E7A75; --sea: #1F5F5B; --sea-text: #1F5F5B;
  --sun: #B08D57; --coral: #8C1C2B; --coral-text: #8C1C2B; --leaf: #1F5F5B; --berry: #8C1C2B;
  --mne: #8C1C2B; --mne-2: #A8323F; --gold: #C9A66B;
  --brass: #B08D57; --brass-text: #7F6130;
  --alert-bg: #F7F0EC; --alert-ink: #5E1620; --focus: #B08D57; --shadow: none;
  --f-display: "Cormorant Garamond", "Noto Sans Georgian", "Noto Sans", Georgia, "Times New Roman", serif;
  --f-head: "Jost", "Noto Sans Georgian", "Noto Sans", system-ui, -apple-system, "Segoe UI", sans-serif;
}
.dest--tiflis { --accent: #1E3A6E; --accent-2: #2C4F8F; --accent-text: #1E3A6E; --accent-wash: #EEF1F6; }
.dest--batum { --accent: #1F5F5B; --accent-2: #2E7A75; --accent-text: #1F5F5B; --accent-wash: #EDF2F1; }
.dest--karadag { --accent: #8C1C2B; --accent-2: #A8323F; --accent-text: #8C1C2B; --accent-wash: #F6EEEE; }
.dest--yunan { --accent: #1F5C99; --accent-2: #3E7FBE; --accent-text: #1F5C99; --accent-wash: #EDF2F7; }

/* yazı */
h1, h2, h3, h4, .place__title, .dest__title, .card__title, .dish__title, .resto__name, .day__title,
.changes h3, .faq__item summary, caption, .footer-title, .route__stop {
  font-family: var(--f-display); font-stretch: normal; letter-spacing: 0; font-weight: 600;
}
h1 { font-size: clamp(2.5rem, 1.6rem + 3.6vw, 4.2rem); font-weight: 500; line-height: 1.03; }
.home-hero h1 { font-size: clamp(2.9rem, 1.7rem + 4.6vw, 5.2rem); max-width: 13ch; }
h2 { font-size: clamp(1.9rem, 1.5rem + 1.6vw, 2.7rem); font-weight: 500; line-height: 1.1; }
h3 { font-size: 1.6rem; } h4 { font-size: 1.4rem; }
.place__title { font-size: clamp(1.7rem, 1.4rem + 1vw, 2.15rem); line-height: 1.1; }
.dest__title { font-size: 1.7rem; font-weight: 600; } .card__title { font-size: 1.45rem; line-height: 1.15; }
.dish__title { font-size: 1.55rem; } .resto__name { font-size: 1.5rem; } .day__title { font-size: 1.5rem; }
.changes h3 { font-size: 1.45rem; line-height: 1.15; } .faq__item summary { font-size: 1.4rem; font-weight: 600; }
caption { font-size: 1.35rem; padding-left: 0; } .footer-title { font-size: 1.3rem; } .route__stop { font-size: 1.25rem; }
.lead { font-size: clamp(1.1rem, 1rem + .35vw, 1.24rem); color: #3A3F49; }
.crumbs, .meta { font-size: .82rem; letter-spacing: .02em; }

/* küçük etiketler: büyük harf, aralıklı */
.main-nav a, .series a, .filters button, .dest__links a, .maplink, .button, .badge, .answer__title, .facts dt,
thead th, .day__n, .slots dt, .toc__title, .dest__country, .group-count, .ph__lat, .home-hero__count, .dest-filter label {
  text-transform: uppercase; letter-spacing: .11em; font-weight: 500;
}
.main-nav { gap: .2rem 1.6rem; }
.main-nav a { font-size: .76rem; border-bottom-width: 1px; padding: .45rem 0; }
.main-nav a:hover, .main-nav a[aria-current] { border-bottom-color: var(--ink) !important; }

/* çerçeve: şerit yok, ince çizgi var */
.site-header::before, .site-footer::before { display: none; }
.site-header { border-bottom: 1px solid var(--rule); }
.progress { height: 2px; background: var(--ink); }
.home-hero, .article-top { background: none; }
.home-hero { padding-block: clamp(2.6rem, 6vw, 5.5rem) 0; }
.band, .band--sky, .band--sea, .band--rose, .band--sun, .band--aegean { background: none; }
.band { border-top: 1px solid var(--rule); padding-block: clamp(3rem, 6vw, 5rem); }
.preview-note { background: var(--wash); }
.site-footer { background: var(--ink); color: #D9D4CA; padding-block: 3.4rem 2.6rem; }
.site-footer a, .footer-links a { color: #F1EDE5; text-decoration-color: rgba(241, 237, 229, .35); }
.site-footer .footer-title { color: #fff; font-weight: 500; }
.footer-small { color: #9F9B93; }

/* düğmeler ve çipler: keskin kenar, ince çerçeve */
.button { border-radius: 0; background: var(--ink); box-shadow: none; padding: 1.05rem 1.6rem; font-size: .76rem; }
.button:hover { background: var(--enamel); }
.series a, .filters button, .dest__links a, .maplink, .badge {
  border-radius: 0; border: 1px solid var(--rule); background: none; font-size: .7rem; color: var(--ink);
}
.series a { padding: .7rem 1rem; } .filters button { padding: .7rem 1rem; } .maplink { padding: .7rem 1rem; border-color: var(--ink); }
.series a:hover, .filters button:hover { border-color: var(--ink); }
.series a[aria-current="page"], .filters button[aria-pressed="true"] { background: var(--ink); border-color: var(--ink); color: var(--paper); }
.maplink:hover, .dest__links a:hover { background: var(--ink); color: var(--paper); border-color: var(--ink); }
.dest__links a { padding: .5rem .7rem; font-size: .66rem; }
.badge, .badge--vejetaryen, .badge--domuzsuz { background: none; color: var(--muted); font-size: .64rem; padding: .32rem .55rem; }

/* levhalar */
.plate { border-radius: .2em; }
.plate--gr { --on-enamel: #1F5C99; --plate-rim: #1F5C99; outline: 1px solid #1F5C99; }
.hang::before { opacity: .7; }

/* görseller ve kartlar */
.ph__frame, .hero .ph__frame { border-radius: 2px; box-shadow: none; }
.ph__art {
  background:
    repeating-linear-gradient(45deg, transparent 0 34px, rgba(255, 255, 255, .06) 34px 35px),
    repeating-linear-gradient(-45deg, transparent 0 34px, rgba(255, 255, 255, .06) 34px 35px),
    linear-gradient(160deg, var(--art-a, var(--enamel)), var(--art-b, var(--enamel-2)));
}
.ph--tiflis { --art-a: #1B335F; --art-b: #2F5391; } .ph--batum { --art-a: #1A524F; --art-b: #2E7A75; }
.ph--karadag { --art-a: #6F1522; --art-b: #A8323F; } .ph--yunan { --art-a: #1B4F85; --art-b: #3E7FBE; }
.ph--food { --art-a: #4E3C28; --art-b: #8A6A38; }
.ph__lat { font-size: .68rem; } .ph figcaption { font-size: .74rem; }
.dest, .dish { background: none; border: 0; border-radius: 0; box-shadow: none; }
.dest__body { padding: .9rem 0 0; } .dest__country { font-size: .66rem; }
.dish { border-bottom: 1px solid var(--rule); } .dish__body { padding: 1rem 0 1.3rem; } .dish .ph figcaption { padding-left: 0; }
.dish__title .ka { font-family: var(--f-ka); font-size: .8rem; }
.card .ph__frame { box-shadow: none; }
.cards--text { border-top: 1px solid var(--ink); } .cards--text .card a { border-bottom: 1px solid var(--rule); }
.cards--text .card__title::before { display: none !important; }

/* makale parçaları */
.block > h2::before { width: 3rem; height: 1px; border-radius: 0; background: var(--brass); margin-bottom: 1rem; }
.answer { background: none; border: 0; border-top: 1px solid var(--ink); border-bottom: 1px solid var(--rule); border-radius: 0; padding: 1.5rem 0 1.6rem; gap: .8rem; }
.answer__title { font-family: var(--f-head); font-size: .7rem; color: var(--brass-text); }
.answer p { font-family: var(--f-display); font-size: clamp(1.35rem, 1.2rem + .6vw, 1.65rem); line-height: 1.35; font-weight: 500; }
.note { border-radius: 0; border-left: 1px solid var(--coral); padding: 1.1rem 1.3rem; }
.note strong { font-family: var(--f-body); }
.place { border-top: 1px solid var(--rule); padding-block: 2.6rem; }
.place__rank { font-family: var(--f-display); font-style: italic; font-weight: 500; font-stretch: normal; font-size: 3.8rem; color: var(--brass); }
.facts { background: none; border: 0; border-top: 1px solid var(--rule); border-bottom: 1px solid var(--rule); border-radius: 0; padding: 1rem 0; }
.facts dt, .slots dt { font-size: .64rem; color: var(--muted); margin-bottom: .15rem; }
.tip strong { font-family: var(--f-head); font-size: .7rem; text-transform: uppercase; letter-spacing: .11em; font-weight: 500; color: var(--brass-text); }
.resto { border-top: 1px solid var(--rule); } .resto__price { color: var(--brass-text); font-weight: 500; }
.table-wrap { border: 0; border-radius: 0; background: none; }
th, td { padding-left: 0; } thead th { background: none; font-size: .66rem; color: var(--muted); border-bottom: 1px solid var(--ink); }
tbody tr:nth-child(even) td, tbody tr:nth-child(even) th { background: none; }
tbody th { font-family: var(--f-body); font-weight: 600; }
.day { background: none; border: 0; border-top: 1px solid var(--ink); border-radius: 0; padding: 1.3rem 0 .4rem; }
.day__n { background: none; color: var(--brass-text); padding: 0; font-family: var(--f-head); font-size: .68rem; }
.route li::before { background: var(--paper); color: var(--ink); border: 1px solid var(--ink); font-family: var(--f-display); font-size: 1.15rem; font-weight: 600; box-shadow: none; }
.route li:not(:last-child)::after { width: 1px; left: 1.15rem; background: var(--ink); opacity: .3; }
.faq { border-top: 1px solid var(--ink); } .faq__item { border-bottom: 1px solid var(--rule); }
.faq__item summary::after { color: var(--brass); font-family: var(--f-head); font-weight: 300; }
.changes li:nth-child(n) { border-top: 1px solid var(--ink); padding-top: 1.2rem; }
.toc ol { border-left-width: 1px; } .toc a { border-left-width: 1px; margin-left: -1px; } .toc__title { font-size: .68rem; color: var(--muted); }
.toc-mobile { border-radius: 0; border: 1px solid var(--rule); background: none; }
.block > ul li::marker { color: var(--brass); }
.group-title { border-bottom: 1px solid var(--ink); padding-bottom: .7rem; margin-bottom: 1.6rem; } .group-count { font-size: .68rem; }
.home-hero__count { font-size: .7rem; } .all-link { font-family: var(--f-head); font-size: .76rem; text-transform: uppercase; letter-spacing: .11em; font-weight: 500; }
.dest-filter label { font-size: .68rem; }
.dest-filter input { border-radius: 0; border: 0; border-bottom: 1px solid var(--ink); background: none; padding-left: 0; font-family: var(--f-body); }
.plate-wall .plate { box-shadow: inset 0 0 0 .2em var(--enamel), inset 0 0 0 .31em var(--plate-rim, var(--on-enamel)); }

/* ---------- sahneler: ince çizgi illüstrasyon ---------- */
.scene, .scene--suitcase { background: none; border-radius: 0; }
.scene svg { height: clamp(96px, 14cqw, 168px); }
.scene :is(.c-coral, .c-enamel, .c-mne, .c-leaf, .c-white, .c-stone, .c-tree, .c-tree2, .c-cloud, .c-hill-far, .c-hill-near, .c-mtn, .c-mtn2) {
  fill: var(--paper); stroke: var(--ink); stroke-width: 1.2; stroke-linejoin: round; vector-effect: non-scaling-stroke;
}
.scene :is(.c-cloud, .c-hill-far, .c-mtn) { stroke: #B9B2A4; stroke-width: 1; }
.scene :is(.c-hill-near, .c-mtn2) { stroke: #8E897E; stroke-width: 1; }
.scene .c-sun { fill: var(--paper); stroke: var(--brass); stroke-width: 1.3; vector-effect: non-scaling-stroke; }
.scene .c-sea { fill: var(--ink); }
.scene .c-window { fill: none; stroke: var(--ink); stroke-width: .8; vector-effect: non-scaling-stroke; }
.scene :is(.c-shade, .c-stripe, .c-ground, .c-floor, .c-asphalt, .c-water, .c-glass) { fill: none; }
.scene .c-frame { fill: #D9D2C5; transform-box: fill-box; transform-origin: center; transform: scaleX(.14); }
rect.c-frame[height="8"] { transform: scaleY(.14); }
.scene .c-jet { fill: #B9B2A4; }
.scene .c-hub { fill: var(--paper); } .scene .spoke { stroke-width: 1; }
.scene .c-rail { fill: var(--ink); transform-box: fill-box; transform-origin: center; transform: scaleY(.3); }
.scene .c-wood { fill: #B9B2A4; } .scene .c-trunk { fill: var(--ink); opacity: .55; } .scene .c-handle { fill: #8E897E; }
.scene :is(.floor, .cable, .hanger, .mast, .tag-string) { stroke: var(--ink); stroke-width: 1.1; vector-effect: non-scaling-stroke; }
.scene .belt { stroke: #C9C2B4; stroke-width: 1.5; }
.scene .road-edge { stroke: var(--ink); stroke-width: 1; opacity: 1; vector-effect: non-scaling-stroke; }
.scene .road-line { stroke: #8E897E; stroke-width: 1.2; stroke-dasharray: 18 20; }
.scene .wave { stroke: var(--ink); stroke-width: 1; opacity: .55; vector-effect: non-scaling-stroke; } .scene .wave--2 { opacity: .28; }
.scene .gull { stroke-width: 1.1; vector-effect: non-scaling-stroke; }
.scene .route-dash { stroke: var(--ink); stroke-width: 1.4; stroke-dasharray: .1 9; opacity: .75; }
.scene .trail { stroke: var(--brass); stroke-width: 1.2; stroke-dasharray: none; opacity: .9; }
.scene .c-plane { fill: var(--ink); stroke: none; }
.scene .pin { fill: var(--paper); stroke: var(--ink); stroke-width: 1.3; }
.scene .puff { fill: none; stroke: #B9B2A4; stroke-width: 1; }
.scene .scene__label { font-family: var(--f-head); font-weight: 500; font-size: 11.5px; letter-spacing: .16em; text-transform: uppercase; stroke: var(--paper); stroke-width: 5px; }
@container (max-width: 760px) { .scene .scene__label { font-size: 15px; } }
@container (max-width: 480px) { .scene .scene__label { font-size: 18px; } }
.scene .sticker { font-family: var(--f-head); font-weight: 500; letter-spacing: .1em; font-size: 10.5px; fill: var(--ink); }
.scene .sticker--light { fill: var(--paper); } .scene .sticker--sm { font-size: 8.5px; } .scene .sticker--xs { font-size: 8px; }
@media (prefers-reduced-motion: no-preference) {
  .scene .mv { animation-duration: calc(var(--t, 20s) * 2.4); }
  .scene .spin { animation-duration: 1.8s; }
  .scene .cloud { animation-duration: 34s; }
  .scene .route-dash { animation-duration: 2.6s; }
  .scene .road-line { animation-duration: 1.3s; }
  .scene .rattle, .scene .vehicle { animation-duration: 1.4s; }
  .scene .case-bob { animation-duration: 1.6s; }
  .scene .tag { animation-duration: 2.4s; }
  .scene .jet { animation-duration: 30s; }
  .scene .gondola-move { animation-duration: 18s; }
  .scene .gondola-swing { animation-duration: 4s; }
  .scene .boat-drift { animation-duration: 14s; } .scene .boat-bob { animation-duration: 4.5s; }
  .scene .puff { animation-duration: 3.6s; } .scene .puff--2 { animation-delay: 1.2s; } .scene .puff--3 { animation-delay: 2.4s; }
  .scene .flap { animation-duration: 1.1s; }
  @keyframes scene-road { to { stroke-dashoffset: 38; } }
  @keyframes scene-march { to { stroke-dashoffset: -18.2; } }
}

/* yazarın notu */
.author-note { display: grid; gap: .7rem; padding: .4rem 0 .5rem 1.6rem; margin-top: .6rem; border-left: 1px solid var(--brass); max-width: var(--measure); }
.author-note__label { font: 500 .68rem/1 var(--f-head); text-transform: uppercase; letter-spacing: .14em; color: var(--brass-text); }
.author-note p:not(.author-note__label) { font-family: var(--f-display); font-style: italic; font-weight: 500; font-size: clamp(1.25rem, 1.15rem + .4vw, 1.45rem); line-height: 1.42; color: var(--ink); }
/* telefonda rota kartları iki sütun */
@media (max-width: 560px) {
  .dests { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.4rem .9rem; }
  .dest .ph__frame { aspect-ratio: 1 / 1 !important; }
  .dest .ph__art { padding: .7rem; } .dest .ph__ka { font-size: 1.2rem; }
  .dest__title { font-size: 1.35rem; } .dest__links { gap: .3rem; }
  .dest__links a { font-size: .56rem; padding: .42rem .45rem; letter-spacing: .07em; }
}

/* ============ TÜRKİYE ROTALARI ============
   Levhada ikinci alfabe yerine plaka kodu ve semt adı yazıyor.
   Renkler şehirlerin taşından ve sofrasından: Diyarbakır bazaltı, Mardin kalkeri, Urfa isotu. */
.dest--guneydogu { --accent: #6F5330; --accent-2: #9A7848; --accent-text: #6A4E2B; --accent-wash: #F5EFE4; }
.dest--diyarbakir { --accent: #33363D; --accent-2: #5A5E67; --accent-text: #33363D; --accent-wash: #EFEFED; }
.dest--mardin { --accent: #8A5A1F; --accent-2: #B58545; --accent-text: #7A4E18; --accent-wash: #F7F0E2; }
.dest--sanliurfa { --accent: #5E2129; --accent-2: #8A3A44; --accent-text: #5E2129; --accent-wash: #F5ECEC; }
.plate--toprak { --enamel: #6F5330; --plate-rim: #E9D9B8; }
.plate--bazalt { --enamel: #2E3138; --plate-rim: var(--brass, #B08D57); }
.plate--kirec { --enamel: #8A5A1F; --plate-rim: #F3E3BF; }
.plate--isot { --enamel: #5E2129; --plate-rim: var(--brass, #B08D57); }
.ph--guneydogu { --art-a: #5A4226; --art-b: #9A7848; }
.ph--diyarbakir { --art-a: #23262C; --art-b: #4C505A; }
.ph--mardin { --art-a: #6E4716; --art-b: #B58545; }
.ph--sanliurfa { --art-a: #47181E; --art-b: #8A3A44; }
/* Türkçe levha yazısı: tabela harfi gibi büyük ve aralıklı; plaka kodu rakamları geniş durur */
.plate__ka[lang="tr"] { font-family: var(--f-head); font-weight: 500; letter-spacing: .09em; text-transform: uppercase; }
.plate--bazalt .plate__ka[lang="tr"], .plate--kirec .plate__ka[lang="tr"], .plate--isot .plate__ka[lang="tr"] { font-variant-numeric: lining-nums tabular-nums; }
.ph__ka[lang="tr"] { font-family: var(--f-display, var(--f-head)); letter-spacing: .02em; }
.cards--text .card--guneydogu:hover .card__title, .cards--text .card--diyarbakir:hover .card__title { color: #33363D; }
.cards--text .card--mardin:hover .card__title { color: #7A4E18; }
.cards--text .card--sanliurfa:hover .card__title { color: #5E2129; }
/* Uzun Türkçe kelimeler büyük levhada telefona sığsın */
.plate--lg .plate__ka[lang="tr"], .plate--xl .plate__ka[lang="tr"] { font-size: clamp(1.45em, 1.1em + 2.6vw, 2.1em); letter-spacing: .06em; font-weight: 500; overflow-wrap: anywhere; }
.plate--lg { max-width: 100%; }

/* Gaziantep fıstığı, Van gölü, Kars kışı ve Serhat yaylası */
.dest--gaziantep { --accent: #55622B; --accent-2: #7D8B45; --accent-text: #4A5626; --accent-wash: #F1F3E6; }
.dest--van { --accent: #17607F; --accent-2: #3E8BAA; --accent-text: #15566F; --accent-wash: #E8F1F5; }
.dest--kars { --accent: #3F5368; --accent-2: #6A7F95; --accent-text: #384A5D; --accent-wash: #ECEFF3; }
.dest--dogu { --accent: #4C5A5E; --accent-2: #76868B; --accent-text: #42504F; --accent-wash: #ECF0F0; }
.plate--fistik { --enamel: #55622B; --plate-rim: #E7EBD2; }
.plate--gol { --enamel: #17607F; --plate-rim: var(--brass, #B08D57); }
.plate--kar { --enamel: #3F5368; --plate-rim: #E4EAF1; }
.plate--serhat { --enamel: #4C5A5E; --plate-rim: #E3EAEA; }
.ph--gaziantep { --art-a: #3E4A1E; --art-b: #7D8B45; }
.ph--van { --art-a: #0F4458; --art-b: #3E8BAA; }
.ph--kars { --art-a: #2C3B4B; --art-b: #6A7F95; }
.ph--dogu { --art-a: #38454A; --art-b: #76868B; }
.plate--fistik .plate__ka[lang="tr"], .plate--gol .plate__ka[lang="tr"], .plate--kar .plate__ka[lang="tr"] { font-variant-numeric: lining-nums tabular-nums; }
.cards--text .card--gaziantep:hover .card__title { color: #4A5626; }
.cards--text .card--van:hover .card__title { color: #15566F; }
.cards--text .card--kars:hover .card__title { color: #384A5D; }
.cards--text .card--dogu:hover .card__title { color: #42504F; }

/* Kapadokya tüfü, Antalya turkuvazı, Ölüdeniz lagünü ve Likya kıyısı */
.dest--kapadokya { --accent: #9C5B3C; --accent-2: #C08662; --accent-text: #8A4F33; --accent-wash: #F8EFE8; }
.dest--antalya { --accent: #0F6E8C; --accent-2: #3E9BB4; --accent-text: #0D6179; --accent-wash: #E7F2F6; }
.dest--fethiye { --accent: #16796B; --accent-2: #45A295; --accent-text: #136A5E; --accent-wash: #E8F4F1; }
.dest--akdeniz { --accent: #1C4E6B; --accent-2: #4A7E9B; --accent-text: #19445E; --accent-wash: #E9EFF4; }
.plate--tuf { --enamel: #9C5B3C; --plate-rim: #F2E0D2; }
.plate--turkuaz { --enamel: #0F6E8C; --plate-rim: var(--brass, #B08D57); }
.plate--lagun { --enamel: #16796B; --plate-rim: #DCEFEA; }
.plate--likya { --enamel: #1C4E6B; --plate-rim: #DDE7EE; }
.ph--kapadokya { --art-a: #74402A; --art-b: #C08662; }
.ph--antalya { --art-a: #094F66; --art-b: #3E9BB4; }
.ph--fethiye { --art-a: #0C5A4F; --art-b: #45A295; }
.ph--akdeniz { --art-a: #13374C; --art-b: #4A7E9B; }
.plate--tuf .plate__ka[lang="tr"], .plate--turkuaz .plate__ka[lang="tr"], .plate--lagun .plate__ka[lang="tr"] { font-variant-numeric: lining-nums tabular-nums; }
.cards--text .card--kapadokya:hover .card__title { color: #8A4F33; }
.cards--text .card--antalya:hover .card__title { color: #0D6179; }
.cards--text .card--fethiye:hover .card__title { color: #136A5E; }
.cards--text .card--akdeniz:hover .card__title { color: #19445E; }

/* ============ ÖREN YERLERİ LİSTESİ ============ */
.site-group + .site-group { margin-top: 2.6rem; }
.site-group__note { color: var(--ink-soft, #5d5a54); margin: .2rem 0 1.1rem; max-width: 60ch; }
.sites { list-style: none; margin: 0; padding: 0; display: grid; gap: .75rem;
         grid-template-columns: repeat(auto-fill, minmax(17rem, 1fr)); }
.site { background: var(--card, #fff); border: 1px solid var(--rule, #e4ded3); border-radius: .7rem;
        padding: .85rem .95rem 1rem; display: flex; flex-direction: column; gap: .35rem; }
.site__name { margin: 0; font-family: var(--f-head); font-size: 1.02rem; line-height: 1.25; font-weight: 600; }
.site__name a { text-decoration: none; color: inherit; background-image: linear-gradient(currentColor, currentColor);
                background-size: 0 1px; background-repeat: no-repeat; background-position: 0 100%; transition: background-size .2s; }
.site__name a:hover, .site__name a:focus-visible { background-size: 100% 1px; color: var(--accent-text, inherit); }
.site__flag { margin-left: .4rem; font-size: .58rem; letter-spacing: .08em; text-transform: uppercase;
              border: 1px solid currentColor; border-radius: .25rem; padding: .1rem .25rem; vertical-align: .18em;
              color: var(--accent-2, #8a7a5f); font-family: var(--f-ui, inherit); font-weight: 500; }
.site__meta { margin: 0; display: flex; flex-wrap: wrap; gap: .3rem .45rem; align-items: center;
              font-size: .7rem; letter-spacing: .04em; text-transform: uppercase; }
.site__region { color: var(--ink-soft, #5d5a54); font-weight: 600; }
.site__bilet { border-radius: .25rem; padding: .12rem .35rem; font-weight: 600; }
.site__bilet--muzekart { background: #E8F1F5; color: #0D6179; }
.site__bilet--ucretsiz { background: #EDF3E8; color: #45622B; }
.site__bilet--biletli { background: #F7EFE4; color: #7A5418; }
.site__bilet--degisken { background: #F2F0ED; color: #5d5a54; }
.site__note { margin: 0; font-size: .88rem; line-height: 1.45; color: var(--ink-soft, #5d5a54); }
.oren-sum { margin: .6rem 0 0; color: var(--ink-soft, #5d5a54); }
@media (prefers-color-scheme: dark) {
  .site__bilet--muzekart { background: rgba(62,155,180,.18); color: #8ecbdd; }
  .site__bilet--ucretsiz { background: rgba(125,139,69,.2); color: #b6c98e; }
  .site__bilet--biletli { background: rgba(181,133,69,.2); color: #d9b680; }
  .site__bilet--degisken { background: rgba(255,255,255,.08); color: #b9b3a8; }
}

/* Hazar, Bakü alevi ve Şeki ipeği */
.dest--azerbaycan { --accent: #1D5F6B; --accent-2: #4A8E99; --accent-text: #1A5460; --accent-wash: #E8F1F3; }
.dest--baku { --accent: #C2561E; --accent-2: #DE8650; --accent-text: #A8491A; --accent-wash: #FBEFE7; }
.dest--seki { --accent: #6A4A86; --accent-2: #9377AC; --accent-text: #5D4076; --accent-wash: #F1ECF6; }
.plate--hazar { --enamel: #1D5F6B; --plate-rim: #DCEAED; }
.plate--alev { --enamel: #C2561E; --plate-rim: var(--brass, #B08D57); }
.plate--ipek { --enamel: #6A4A86; --plate-rim: #E7DEEF; }
.ph--azerbaycan { --art-a: #154A54; --art-b: #4A8E99; }
.ph--baku { --art-a: #93400F; --art-b: #DE8650; }
.ph--seki { --art-a: #4C3461; --art-b: #9377AC; }
.cards--text .card--azerbaycan:hover .card__title { color: #1A5460; }
.cards--text .card--baku:hover .card__title { color: #A8491A; }
.cards--text .card--seki:hover .card__title { color: #5D4076; }

/* ============ MARKA LEVHASI ============ */
/* Logonun üst satırı artık yazı değil, dile bağlı olmayan bir rota işareti. */
/* Marka rengi sabit: sayfa aksanıyla değişmez, her bölümde aynı lacivert. */
.plate--brand { --enamel: #1F4FD8; --on-enamel: #FFFFFF; --plate-rim: #FFFFFF; --screw: rgba(255, 255, 255, .6); }
.plate__mark { display: block; width: 5.35em; height: 1.04em; color: currentColor; margin: .16em 0 .12em .08em; }
@media (max-width: 420px) { .plate--logo .plate__mark { width: 4.9em; height: .95em; } }

/* ============ GÖRSEL KÜNYELERİ ============ */
/* CC lisansları fotoğrafçı adının ve lisans adının görünmesini şart koşuyor. */
.ph figcaption { font-size: .78rem; line-height: 1.45; color: var(--muted); margin-top: .45rem; }
.ph figcaption a { color: inherit; text-decoration: underline; text-underline-offset: .15em; }
.ph figcaption a:hover { color: var(--accent-text); }
.credits ul { list-style: none; padding: 0; margin: 1rem 0 0; display: grid; gap: .6rem; }
.credits li { font-size: .84rem; line-height: 1.5; color: var(--muted); padding-left: .9rem; border-left: 2px solid var(--rule); }
.credits__what { color: var(--ink); font-weight: 500; }
