/* turkeyroutes — region pages and destination guides (01.10.2026): "Is X worth visiting?", best time, also worth a look,
   official travel advice summary, region map and place list. Loaded on /regions/{slug}/ and on every city page. */
.guide { margin: 26px 0 6px; display: grid; gap: 18px; }
.guide-sec { border-top: 1px solid var(--line, #e8e1da); padding-top: 16px; }
.guide-sec p { margin: 0 0 10px; line-height: 1.6; max-width: 68ch; }
.guide-h { font: 800 1.2rem/1.2 var(--f-display); color: var(--night); margin: 0 0 10px; letter-spacing: -.01em; }
.guide-months { display: inline-block; margin-left: 8px; padding: 3px 9px; border-radius: 999px; background: #e3f1f1; color: var(--sea); font: 600 .74rem/1.3 var(--f-mono); letter-spacing: .02em; vertical-align: .15em; }
.guide-facts { display: grid; gap: 8px; margin: 12px 0 0; padding: 12px 14px; border-radius: 14px; background: #f7f3ee; }
.guide-facts div { display: grid; grid-template-columns: 7.5em 1fr; gap: 10px; }
.guide-facts dt { font: 600 .72rem/1.5 var(--f-mono); text-transform: uppercase; letter-spacing: .06em; color: var(--ink-2); }
.guide-facts dd { margin: 0; font-size: .95rem; line-height: 1.5; }
.guide-facts small { display: block; margin-top: 2px; }
.guide-also { list-style: none; margin: 0; padding: 0; display: grid; gap: 8px; }
.guide-also li { padding: 8px 12px; border: 1px solid var(--line, #e8e1da); border-radius: 12px; font-size: .93rem; line-height: 1.45; }
.guide-il { font: 600 .68rem/1 var(--f-mono); text-transform: uppercase; letter-spacing: .06em; color: var(--ink-2); padding: 3px 6px; border-radius: 6px; background: #f1ece6; }
.guide-region { margin: 18px 0 0; font-size: .92rem; color: var(--ink-2); }

/* official travel advice */
.safety { margin: 22px 0 0; padding: 16px 16px 8px; border: 1px solid #e9d7b8; border-radius: 18px; background: #fffaf1; }
.safety-lede { margin: 0 0 12px; font-size: .93rem; color: var(--ink-2); }
.safety-cols { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
.safety-src h3 { font: 700 .98rem/1.3 var(--f-display); margin: 0 0 6px; }
.safety-src ul { margin: 0 0 6px; padding-left: 1.1em; font-size: .92rem; line-height: 1.5; }
.safety-src li { margin: 0 0 5px; }
.safety-note { margin: 10px 0 6px; padding: 10px 12px; border-radius: 12px; background: #fff; border: 1px solid #efe2cb; font-size: .93rem; line-height: 1.5; }
.safety .fine { margin: 6px 0; }
.v2-city .safety-cols, .v2-city .guide-facts div { grid-template-columns: 1fr; }
.v2-city .guide-facts div { gap: 2px; }

/* region page */
.reg-intro { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr); gap: 28px; align-items: center; }
.reg-prose p { margin: 0 0 12px; line-height: 1.65; }
.reg-map { width: 100%; height: auto; display: block; }
.reg-map-all { fill: #efebe6; }
.reg-map-on { fill: #bfe0e1; }
.reg-map-edge { fill: none; stroke: var(--night); stroke-opacity: .35; stroke-width: 2; }
.reg-map-dot circle { fill: var(--sea); stroke: #fff; stroke-width: 4; }
.reg-map-dot text { font: 700 30px var(--f-display); fill: var(--night); paint-order: stroke; stroke: #fff; stroke-width: 7px; }
.reg-map-dot:hover circle, .reg-map-dot:focus-visible circle { fill: var(--night); }
.reg-guide .guide { margin-top: 4px; }
.reg-city { font-size: 1.05rem; margin: 18px 0 8px; }
.reg-city a { color: var(--night); }
.reg-places { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; }
.reg-places a { display: flex; align-items: center; gap: 10px; min-height: 64px; padding: 6px 8px; border: 1px solid var(--line); border-radius: 14px; text-decoration: none; color: var(--ink); background: #fff; }
.reg-places a:hover { border-color: var(--sea); }
.reg-places img, .reg-places .place-ico { width: 52px; height: 52px; border-radius: 10px; object-fit: cover; flex: 0 0 auto; }
.reg-places .place-ico { background: color-mix(in srgb, var(--c) 14%, #fff); position: relative; }
.reg-places .place-ico::after { content: ""; position: absolute; inset: 17px; border-radius: 50%; background: var(--c); box-shadow: 0 0 0 4px #fff; }
.reg-places strong { display: block; font-size: .93rem; line-height: 1.25; }
.reg-places small { display: block; font-size: .8rem; color: var(--ink-2); margin-top: 2px; }
.reg-places .warn-t { color: #a1261b; }
.tr .area-links { margin: 8px 0 12px; display: flex; flex-wrap: wrap; gap: 6px; }
.tr .area-links a { display: inline-flex; align-items: center; min-height: 40px; padding: 0 14px; border: 1px solid var(--line); border-radius: 999px; text-decoration: none; font-weight: 600; color: var(--ink); background: #fff; }
.tr .area-links a:hover { border-color: var(--sea); color: var(--sea); }
.reg-map-dot text { font-size: 24px; }
.section { margin-top: 26px; margin-bottom: 26px; }
.section > h2 { font-size: 1.45rem; font-weight: 800; margin: 0 0 12px; }
@media (max-width: 899px) {
  .reg-intro { grid-template-columns: 1fr; }
  .reg-map { max-width: 520px; }
  .reg-places { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .safety-cols { grid-template-columns: 1fr; }
}
@media (max-width: 599px) {
  .reg-places { grid-template-columns: 1fr; }
  .guide-facts div { grid-template-columns: 1fr; gap: 2px; }
}

.tr-lang { display: inline-block; margin-left: 2px; padding: 1px 6px; border-radius: 6px; background: #fff3d6; color: #7a5200; font: 600 .68rem/1.4 var(--f-mono); letter-spacing: .03em; }
