/* Spoločná šablóna ručne písaných podstránok (profil.html, program.html).
   Paletu a písmo preberá z návrhu 3, aby podstránky pôsobili ako jeho súčasť.
   Návrhy webu sa generujú z bundlov a tento súbor sa ich netýka. */

/* latin-ext */
@font-face {
  font-family: 'Sen'; font-style: normal; font-weight: 400 800; font-display: swap;
  src: url("fonts/f-628671f032.woff2") format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Sen'; font-style: normal; font-weight: 400 800; font-display: swap;
  src: url("fonts/f-190641b65b.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* Paleta a písmo sú prebrané z návrhu 3, aby profil pôsobil ako jeho
   podstránka, nie ako cudzia stránka. Na rozdiel od návrhu 3 sa tento
   súbor needituje v návrhovom nástroji — píše sa ručne. */
:root {
  --paper: #FFFFFF;
  --paper-alt: #F6F4F1;
  --ink: #0B0B0B;
  --body: #26241F;
  --body-soft: #4C4741;
  --muted: #6B6660;
  --line: #E4DFDA;
  --akcent: #C2521C;
  --akcent-tmavy: #A8420F;
  --akcent-svetly: #FBE3D6;
  --pad: clamp(22px, 6.25vw, 120px);
  --padY: clamp(64px, 6vw, 116px);
}
*, *::before, *::after { box-sizing: border-box; }

/* Odkaz na preskočenie navigácie — vidno ho až po zameraní tabulátorom. */
.preskoc {
  position: absolute; left: -9999px; top: 0; z-index: 200;
  background: var(--ink); color: #FFFFFF; padding: 14px 22px;
  border-bottom-right-radius: 12px; font-weight: 600; text-decoration: none;
}
.preskoc:focus { left: 0; }

/* Text len pre čítačky obrazovky a vyhľadávače. */
.len-pre-citacky {
  position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px;
  overflow: hidden; clip-path: inset(50%); white-space: nowrap; border: 0;
}
html { scroll-behavior: smooth; }
[id] { scroll-margin-top: 96px; }
body {
  margin: 0; background: var(--paper); color: var(--ink);
  font: 400 18px/1.65 'Sen', system-ui, sans-serif;
  -webkit-font-smoothing: antialiased;
}
h1, h2, h3, h4, p, ul, ol, li, figure, blockquote, dl, dd { margin: 0; padding: 0; }
ul, ol { list-style: none; }
a { color: inherit; }
img { display: block; max-width: 100%; }
/* Sen nemá kurzívu — zdôrazňujeme tučnosťou, nie falošným sklonom */
em { font-style: normal; font-weight: 600; }

.wrap { width: 100%; max-width: 1920px; margin: 0 auto; }
.sekcia { padding: var(--padY) var(--pad); }
.sekcia--alt { background: var(--paper-alt); }
.stitok {
  display: block; font-size: 15px; font-weight: 700; letter-spacing: .16em;
  text-transform: uppercase; color: var(--akcent);
}

/* ---- horná lišta ---- */
.lista {
  display: flex; align-items: center; justify-content: space-between;
  gap: 24px; flex-wrap: wrap;
  padding: 15px var(--pad); background: var(--ink); color: #FFFFFF;
}
.lista a { text-decoration: none; }
.lista .meno { font-size: clamp(16px, 1.15vw, 21px); font-weight: 700; letter-spacing: .01em; }
.lista nav { display: flex; align-items: center; gap: clamp(14px, 1.6vw, 32px); font-size: clamp(15px, 1.05vw, 19px); font-weight: 500; }
.lista nav a { color: #D8D3CD; transition: color .2s ease; }
.lista nav a:hover { color: #F0A97E; }
.lista .cta {
  background: var(--akcent); color: #FFFFFF; font-weight: 600;
  padding: 10px 20px; border-radius: 999px; transition: background-color .2s ease;
}
.lista .cta:hover { background: var(--akcent-tmavy); color: #FFFFFF; }

/* ---- hlavička stránky ---- */
.hlavicka { padding: clamp(52px, 5.4vw, 104px) var(--pad) clamp(40px, 4vw, 72px); }
.hlavicka h1 {
  margin-top: 26px; font-size: clamp(44px, 6.4vw, 118px); font-weight: 700;
  line-height: 1.02; letter-spacing: -.03em; max-width: 16ch;
}
.hlavicka .lede {
  margin-top: 30px; max-width: 62ch;
  font-size: clamp(19px, 1.45vw, 25px); line-height: 1.6; color: var(--body);
}
.hlavicka .spat {
  display: inline-block; margin-top: 30px; font-size: 17px; color: var(--muted);
  text-decoration: none; border-bottom: 1px solid var(--line);
  transition: color .2s ease, border-color .2s ease;
}
.hlavicka .spat:hover { color: var(--akcent); border-color: var(--akcent); }

/* ---- fakty v skratke (pruh pre novinárov) ---- */
.fakty { border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.fakty dl {
  display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 260px), 1fr));
  gap: clamp(24px, 2.6vw, 48px); margin-top: 34px;
}
.fakty dt {
  font-size: 13px; font-weight: 700; letter-spacing: .14em;
  text-transform: uppercase; color: var(--muted);
}
.fakty dd { margin-top: 8px; font-size: clamp(17.5px, 1.2vw, 20px); line-height: 1.5; color: var(--body); }

/* ---- kapitoly životného príbehu ---- */
.kapitoly { display: flex; flex-direction: column; }
.kapitola {
  display: grid; grid-template-columns: minmax(0, 0.62fr) minmax(0, 1.38fr);
  gap: clamp(26px, 4.2vw, 84px);
  padding: clamp(40px, 3.6vw, 64px) 0; border-top: 1px solid var(--line);
}
.kapitoly .kapitola:last-child { border-bottom: 1px solid var(--line); }
.kapitola .obdobie {
  display: flex; flex-direction: column; gap: 12px; align-self: start;
  position: sticky; top: 28px;
}
.kapitola .roky {
  font-size: 14px; font-weight: 700; letter-spacing: .14em;
  text-transform: uppercase; color: var(--akcent);
}
.kapitola h2 {
  font-size: clamp(24px, 2.1vw, 40px); font-weight: 700;
  line-height: 1.16; letter-spacing: -.018em; text-wrap: pretty;
}
.kapitola .telo { display: flex; flex-direction: column; gap: 22px; max-width: 66ch; }
.kapitola p { font-size: clamp(17.5px, 1.2vw, 20px); line-height: 1.74; color: var(--body-soft); }
.kapitola p strong { font-weight: 700; color: var(--ink); }

.citat {
  font-size: clamp(20px, 1.6vw, 30px); font-weight: 600; line-height: 1.38;
  letter-spacing: -.014em; color: var(--akcent); max-width: 34ch;
  border-left: 3px solid var(--akcent); padding-left: 24px;
}

/* odrážkový zoznam vnútri kapitoly — rovnaký tvar ako v programe na úvodke */
.body { display: flex; flex-direction: column; gap: 14px; }
/* Guľôčka je absolútne umiestnená, nie grid bunka — v gride by každý
   <strong> vnútri odrážky vytvoril vlastnú bunku a riadok by sa rozsypal. */
.body li {
  position: relative; padding-left: 23px;
  font-size: clamp(17.5px, 1.2vw, 20px); line-height: 1.6; color: var(--body-soft);
}
.body li::before {
  content: ""; position: absolute; left: 0; top: .56em;
  width: 9px; height: 9px; border-radius: 50%; background: var(--akcent);
}
.body li strong { color: var(--ink); font-weight: 700; }

/* ---- placeholder pre fotografiu, ktorú ešte nemáme ---- */
.img-slot {
  display: flex; align-items: center; justify-content: center; text-align: center;
  width: 100%; height: clamp(220px, 20vw, 340px); border-radius: clamp(20px, 1.8vw, 32px);
  background: repeating-linear-gradient(135deg, rgba(0,0,0,.045) 0 12px, rgba(0,0,0,.075) 12px 24px);
  outline: 1px dashed rgba(0,0,0,.22); outline-offset: -1px;
}
.img-slot span {
  font: 500 15px/1.4 'Sen', system-ui, sans-serif; letter-spacing: .04em;
  text-transform: uppercase; color: rgba(0,0,0,.42); padding: 12px 18px;
}

/* ---- rodina (profil) a mestské časti (program) — rovnaký tvar ---- */
.rodina, .casti { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 300px), 1fr)); gap: clamp(26px, 3vw, 56px); margin-top: 46px; }
.rodina h3, .casti h3 { font-size: clamp(19px, 1.4vw, 24px); font-weight: 700; letter-spacing: -.012em; }
.rodina .rola, .casti .rola { margin-top: 4px; font-size: 15px; font-weight: 600; letter-spacing: .1em; text-transform: uppercase; color: var(--akcent); }
.rodina p, .casti p { margin-top: 14px; font-size: clamp(17px, 1.15vw, 19px); line-height: 1.7; color: var(--body-soft); }

/* ---- pre médiá ---- */
.media { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: clamp(30px, 5vw, 96px); align-items: start; }
.media h2 { font-size: clamp(32px, 3.6vw, 66px); font-weight: 700; letter-spacing: -.022em; }
.media p { margin-top: 22px; font-size: clamp(17.5px, 1.25vw, 21px); line-height: 1.7; color: var(--body-soft); max-width: 52ch; }
.media .kontakt {
  display: flex; flex-direction: column; gap: 8px; margin-top: 26px;
  font-size: clamp(17.5px, 1.25vw, 21px); font-weight: 600; color: var(--akcent);
}
.media .kontakt a { text-decoration: none; }
/* odkaz na transparentný účet v texte na svetlom podklade — inak by splynul,
   `a { color: inherit }` mu inak nedá žiadnu farbu */
.media a[href*="transparentneucty"] {
  color: var(--akcent); font-weight: 600; text-decoration: none;
  border-bottom: 1px solid var(--line); transition: border-color .2s ease;
}
.media a[href*="transparentneucty"]:hover { border-color: var(--akcent); }

/* ---- pruh volieb (rovnaký ako na úvodke) ---- */
.volby {
  padding: clamp(44px, 3.8vw, 72px) var(--pad); background: var(--akcent); color: #FFFFFF;
  display: flex; align-items: center; justify-content: space-between;
  gap: clamp(26px, 4.2vw, 80px); flex-wrap: wrap;
}
.volby .kicker { font-size: 15px; font-weight: 700; letter-spacing: .18em; text-transform: uppercase; color: var(--akcent-svetly); }
.volby .datum { display: block; margin-top: 12px; font-size: clamp(26px, 2.9vw, 54px); font-weight: 700; letter-spacing: -.018em; }
.volby .doplnok { font-size: clamp(17.5px, 1.25vw, 21px); line-height: 1.62; color: var(--akcent-svetly); max-width: 44ch; }

/* ---- interná poznámka — nie je súčasť návrhu, len prototypu ---- */
.interne {
  margin: 0 var(--pad) clamp(56px, 5vw, 96px);
  border: 1px dashed rgba(0,0,0,.28); border-radius: 20px;
  padding: clamp(26px, 2.6vw, 40px);
  background: repeating-linear-gradient(135deg, rgba(0,0,0,.018) 0 14px, rgba(0,0,0,.04) 14px 28px);
}
.interne h2 { font-size: 15px; font-weight: 700; letter-spacing: .16em; text-transform: uppercase; color: var(--muted); }
.interne p { margin-top: 16px; font-size: 17px; line-height: 1.7; color: var(--body-soft); max-width: 78ch; }
.interne ul { margin-top: 18px; display: flex; flex-direction: column; gap: 12px; }
.interne li {
  position: relative; padding-left: 22px;
  font-size: 17px; line-height: 1.66; color: var(--body-soft);
}
.interne li::before {
  content: ""; position: absolute; left: 0; top: .6em;
  width: 8px; height: 8px; border-radius: 2px; background: var(--muted);
}
.interne strong { color: var(--ink); font-weight: 700; }

/* ---- pätička ---- */
/* Pätička je zámerne rovnaká ako na úvodnej stránke — tam je vysadená
   inline štýlmi, tu triedami, ale rozmery, farby aj poradie stĺpcov sedia.
   Keď sa mení jedna, treba prejsť aj druhú. */
footer {
  padding: clamp(52px, 4.4vw, 84px) var(--pad) clamp(44px, 3.8vw, 72px);
  background: var(--ink); color: #FFFFFF;
  display: flex; flex-direction: column; gap: 44px;
}
footer .stlpce {
  display: grid; grid-template-columns: 1fr auto auto;
  gap: clamp(32px, 6.2vw, 120px);
}
footer .znacka { display: flex; flex-direction: column; gap: 10px; }
footer .znacka .meno { font-size: clamp(19px, 1.5vw, 28px); font-weight: 700; letter-spacing: -.012em; }
footer .znacka .rola { font-size: clamp(17.5px, 1.2vw, 20px); color: #A8A29B; }
footer .znacka .kontakt { font-size: clamp(17.5px, 1.2vw, 20px); color: #F0A97E; padding-top: 8px; }
footer .odkazy { display: flex; flex-direction: column; gap: 12px; font-size: 19px; }

footer a { text-decoration: none; }
/* Odkazy v stĺpcoch sú biele a na akcent sa menia až pri prejdení myšou —
   rovnako ako na úvodke. Kontakt a odkaz v drobnom texte sú akcentové hneď. */
footer .odkazy a { color: #FFFFFF; }
footer .odkazy a:hover { color: #F0A97E; }
footer .znacka .kontakt a { color: #F0A97E; }
footer .znacka .kontakt a:hover { text-decoration: underline; }
/* Dva drobné riadky patria k sebe tesnejšie, než je 44px medzera pätičky. */
footer .drobnosti { display: flex; flex-direction: column; gap: 14px; }
footer .drobne { font-size: 17px; line-height: 1.72; color: #8A857F; max-width: 90ch; }
footer .drobne a { color: #F0A97E; border-bottom: 1px solid rgba(240,169,126,.4); }
/* Zákonné označenie podľa § 6 zákona č. 181/2014 Z. z. — musí byť čitateľné,
   preto rovnaká veľkosť ako zvyšok drobného textu, len bez akcentu. */
footer .drobne strong { color: #A8A29B; font-weight: 600; }

/* Stránka je kreslená pre desktop. Pod 900 px sa stĺpce zalomia pod seba,
   aby sa dala otvoriť aj na mobile — nie je to návrh mobilnej verzie. */
@media (max-width: 900px) {
  footer .stlpce { grid-template-columns: minmax(0, 1fr); gap: 34px; }
  .kapitola, .media { grid-template-columns: minmax(0, 1fr); gap: 24px; }
  .kapitola .obdobie { position: static; }
  /* v jednom stĺpci by 28ch spravilo z citátu úzky prúžok */
  .citat, .hlavicka h1 { max-width: none; }
}
/* ---- miesta na doplnenie (šablóna) ---- */
.slot {
  border: 1px dashed rgba(0,0,0,.28); border-radius: 14px;
  padding: 16px 20px; background: rgba(0,0,0,.022);
  font-size: clamp(16.5px, 1.1vw, 18px); line-height: 1.6; color: var(--muted);
}
.slot b {
  display: block; margin-bottom: 6px;
  font-size: 12.5px; font-weight: 700; letter-spacing: .14em;
  text-transform: uppercase; color: var(--akcent);
}
.slot--velky { padding: 26px 28px; }
.kapitola .telo .slot { max-width: none; }

/* ---- témy mimo piatich bodov ----
   Ľahší tvar než `.kapitola`: päť sľubov je chrbtica programu, témy sú vrstva
   nad ňou — preto tenšia linka, menší nadpis a užší ľavý stĺpec. */
.temy { display: flex; flex-direction: column; margin-top: 40px; }
/* Scopované cez `.temy` zámerne: `.tema` je aj bunka tabuľky v analýze
   sentimentu (`.tabulka td.tema`) a display:grid by ju rozbil. */
.temy .tema {
  display: grid; grid-template-columns: minmax(0, 0.5fr) minmax(0, 1.5fr);
  gap: clamp(20px, 3.4vw, 64px);
  padding: clamp(26px, 2.6vw, 40px) 0; border-top: 1px solid var(--line);
}
.temy .tema:last-child { border-bottom: 1px solid var(--line); }
.temy .tema h3 {
  align-self: start; position: sticky; top: 28px;
  font-size: clamp(21px, 1.7vw, 30px); font-weight: 700;
  line-height: 1.18; letter-spacing: -.016em; text-wrap: pretty;
}
.temy .tema .telo { display: flex; flex-direction: column; gap: 16px; max-width: 66ch; }
.temy .tema p { font-size: clamp(17px, 1.15vw, 19px); line-height: 1.72; color: var(--body-soft); }
.temy .tema p strong { font-weight: 700; color: var(--ink); }

/* ---- tmavý panel s výzvou (rovnaký ako na úvodke) ---- */
.panel {
  background: var(--ink); color: #FFFFFF; border-radius: clamp(28px, 2.3vw, 44px);
  padding: clamp(38px, 3.8vw, 70px) clamp(32px, 4vw, 74px);
  display: grid; grid-template-columns: minmax(0, 1fr) auto;
  gap: clamp(28px, 4vw, 72px); align-items: center;
}
.panel .stitok { color: #F0A97E; }
.panel h2 { font-size: clamp(28px, 2.7vw, 52px); font-weight: 700; line-height: 1.1; letter-spacing: -.022em; max-width: 20ch; margin-top: 16px; }
.panel p { margin-top: 16px; font-size: clamp(17.5px, 1.25vw, 21px); line-height: 1.66; color: #B8B2AB; max-width: 54ch; }
.panel a {
  background: var(--akcent); color: #FFFFFF; text-decoration: none;
  font-size: clamp(18px, 1.35vw, 22px); font-weight: 600;
  padding: 21px 40px; border-radius: 999px; white-space: nowrap;
  transition: background-color .22s ease, transform .22s ease, box-shadow .22s ease;
}
.panel a:hover { background: var(--akcent-tmavy); transform: translateY(-2px); box-shadow: 0 18px 34px -18px rgba(194,82,28,.9); }
@media (max-width: 900px) {
  .panel { grid-template-columns: minmax(0, 1fr); gap: 28px; }
  .panel h2 { max-width: none; }
}

/* ---- analýza sentimentu ----
   Analýza je dlhý súvislý text s tabuľkou a zoznamom zdrojov — veci, ktoré
   profil ani program nepotrebovali. Triedy nižšie sú pridané, nie prepísané —
   jedinou spoločnou je `.nadpis`, ktorý používa aj program.html. */

:root {
  /* Druhá farba je tu nutnosť: v tabuľke sentimentu musí byť na prvý pohľad
     vidieť rozdiel medzi „výrazne negatívny" a „výrazne pozitívny", a oranžová
     je v kampani akcent, nie hodnotenie. Zelená sa používa len v .tabulka. */
  --zelena: #2F6B45;
}

/* Analýza nie je kampaňová stránka — horná lišta preto namiesto tlačidla
   „Napíšte mi" nesie štítok, že ide o interný podklad. */
.lista .znacka {
  border: 1px solid #55504A; border-radius: 999px; padding: 8px 16px;
  font-size: 13px; font-weight: 700; letter-spacing: .14em;
  text-transform: uppercase; color: #D8D3CD;
}

/* Profil vystačil so štítkom nad obsahom, tu treba skutočné nadpisy sekcií —
   inak sa dvadsať strán textu nedá prelistovať očami. */
.nadpis {
  margin-top: 18px; font-size: clamp(30px, 3.2vw, 58px); font-weight: 700;
  line-height: 1.08; letter-spacing: -.022em; max-width: 22ch; text-wrap: pretty;
}
.text {
  margin-top: 26px; max-width: 72ch;
  font-size: clamp(17.5px, 1.2vw, 20px); line-height: 1.74; color: var(--body-soft);
}
.text + .text { margin-top: 20px; }
.text strong { font-weight: 700; color: var(--ink); }

/* Číslované zistenia — šesť bodov zhrnutia a sedem záverov pre kampaň.
   Číslo je absolútne umiestnené z rovnakého dôvodu ako guľôčka v .body:
   v gride by <strong> vnútri odrážky rozbil riadok. */
.cisla { margin-top: 34px; display: flex; flex-direction: column; gap: 20px; counter-reset: cislo; }
.cisla li {
  position: relative; counter-increment: cislo; padding-left: 54px; max-width: 74ch;
  font-size: clamp(17.5px, 1.2vw, 20px); line-height: 1.7; color: var(--body-soft);
}
.cisla li::before {
  content: counter(cislo); position: absolute; left: 0; top: -.04em;
  width: 34px; height: 34px; border-radius: 50%;
  background: var(--akcent-svetly); color: var(--akcent);
  font-size: 15px; font-weight: 700; line-height: 34px; text-align: center;
}
.cisla li strong { color: var(--ink); font-weight: 700; }

/* .body mimo kapitoly — v kapitole ho odsadzuje .telo, samostatne v sekcii
   si musí odstup aj mieru riadka určiť sám. */
.body--samostatny { margin-top: 34px; max-width: 74ch; }

/* Prehľad tém — 15 riadkov × 6 stĺpcov sa na užšej obrazovke nezalomí
   čitateľne, preto sa tabuľka posúva vodorovne vo vlastnom ráme. */
.tabulka { margin-top: 34px; overflow-x: auto; border: 1px solid var(--line); border-radius: 16px; }
.tabulka table { width: 100%; min-width: 820px; border-collapse: collapse; font-size: clamp(15.5px, 1vw, 17px); }
.tabulka th, .tabulka td { padding: 14px 18px; text-align: left; vertical-align: top; border-bottom: 1px solid var(--line); }
.tabulka thead th {
  background: var(--paper-alt); white-space: nowrap;
  font-size: 12.5px; font-weight: 700; letter-spacing: .14em;
  text-transform: uppercase; color: var(--muted);
}
.tabulka tbody tr:last-child td { border-bottom: 0; }
.tabulka td { color: var(--body-soft); line-height: 1.5; }
.tabulka td:first-child { color: var(--muted); font-variant-numeric: tabular-nums; }
.tabulka td.tema { color: var(--ink); font-weight: 700; }
.tabulka .zle { color: var(--akcent-tmavy); font-weight: 700; }
.tabulka .dobre { color: var(--zelena); font-weight: 700; }
.tabulka .mix { color: var(--body); font-weight: 700; }
.popisok { margin-top: 16px; max-width: 76ch; font-size: 15.5px; line-height: 1.62; color: var(--muted); }

/* Zdroje — dlhý zoznam odkazov, členený podľa tém. */
.zdroje { margin-top: 34px; display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 360px), 1fr)); gap: clamp(28px, 3vw, 52px); }
.zdroje h4 { font-size: 13px; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; color: var(--akcent); }
.zdroje ul { margin-top: 16px; display: flex; flex-direction: column; gap: 13px; }
.zdroje li { font-size: 16.5px; line-height: 1.55; color: var(--body-soft); }
.zdroje a { color: var(--body-soft); text-decoration: none; border-bottom: 1px solid var(--line); transition: color .2s ease, border-color .2s ease; }
.zdroje a:hover { color: var(--akcent); border-color: var(--akcent); }

/* Panel s číslom, ktoré treba pred verejným použitím overiť (⚠ v podklade). */
.overit {
  margin-top: 30px; max-width: 76ch; border-left: 3px solid var(--akcent);
  padding: 6px 0 6px 22px; font-size: 16.5px; line-height: 1.66; color: var(--body-soft);
}
.overit strong { color: var(--ink); font-weight: 700; }

/* ---- úvodné odseky sekcie ----
   Nadpis sekcie (`.nadpis`) je spoločný s analýzou sentimentu, je vyššie. */
.uvod {
  margin-top: 20px; max-width: 62ch;
  font-size: clamp(17.5px, 1.25vw, 21px); line-height: 1.72; color: var(--body-soft);
}
.uvod + .uvod { margin-top: 16px; }
.uvod strong { font-weight: 700; color: var(--ink); }

/* ---- obsah dlhej stránky ---- */
.obsah { display: flex; flex-wrap: wrap; gap: 10px 12px; margin-top: 30px; }
.obsah a {
  padding: 9px 18px; border: 1px solid var(--line); border-radius: 999px;
  font-size: 16px; font-weight: 600; color: var(--body); text-decoration: none;
  transition: background-color .2s ease, border-color .2s ease, color .2s ease;
}
.obsah a:hover { background: var(--akcent-svetly); border-color: var(--akcent); color: var(--akcent-tmavy); }

/* ---- „Prvý mesiac" — záväzok, ktorý sa dá overiť do 30 dní ----
   Jediný svetlooranžový blok na stránke: je to to najkontrolovateľnejšie,
   čo v programe stojí, a má sa dať nájsť pri rýchlom prelistovaní. */
.prvy-mesiac, .telo .prvy-mesiac {
  border-left: 3px solid var(--akcent); border-radius: 0 14px 14px 0;
  background: var(--akcent-svetly); padding: 20px 26px;
  font-size: clamp(17px, 1.15vw, 19px); line-height: 1.7; color: var(--body);
}
.prvy-mesiac b {
  display: block; margin-bottom: 6px;
  font-size: 12.5px; font-weight: 700; letter-spacing: .14em;
  text-transform: uppercase; color: var(--akcent-tmavy);
}

/* ---- „Čoho sa zdržím" — negatívny záväzok na konci každého bodu ----
   Druhý selektor prebíja `.kapitola p`, inak by odsek zdedil jeho veľkosť. */
.zdrzim, .telo .zdrzim {
  border-top: 1px solid var(--line); padding-top: 16px;
  font-size: clamp(17px, 1.15vw, 19px); line-height: 1.66; color: var(--muted);
}
.zdrzim em { color: var(--akcent); }

/* ---- mesto v číslach ----
   `.cisla` už patrí číslovanému zoznamu v analýze sentimentu, preto `.udaje`. */
.udaje {
  display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 250px), 1fr));
  gap: clamp(24px, 2.6vw, 44px); margin-top: 44px;
}
.udaj { border-top: 2px solid var(--ink); padding-top: 16px; }
.udaj .hodnota {
  font-size: clamp(30px, 3vw, 50px); font-weight: 700;
  line-height: 1.04; letter-spacing: -.024em;
}
.udaj .popis { margin-top: 12px; font-size: clamp(16.5px, 1.1vw, 18px); line-height: 1.6; color: var(--body-soft); }
.udaj .zdroj { margin-top: 10px; font-size: 13.5px; letter-spacing: .1em; text-transform: uppercase; color: var(--muted); }
/* číslo, ktoré zatiaľ nikto nezverejnil — v bode 05 nesie celú pointu */
.udaj--chyba { border-top-color: var(--akcent); }
.udaj--chyba .hodnota { color: var(--akcent); }

@media (max-width: 900px) {
  .temy .tema { grid-template-columns: minmax(0, 1fr); gap: 18px; }
  .temy .tema h3 { position: static; }
}
