/* Modroběh: sdílené styly pro všechny stránky.
   Barvy a písma jsou odvozené z loga. Stránkově specifické styly
   si každá stránka nese ve vlastním bloku <style> za tímto souborem. */

:root{
  --hlubina:#002878;   /* modrá nápisu Modroběh */
  --reka:#1880C8;      /* modrá srdce */
  --melcina:#8CC6EE;
  --tisk:#DCEAF7;      /* světlá výplň */
  --start:#FF5A2B;     /* jediný teplý akcent, výzva k akci */
  --mlha:#F2F6FB;
  --inkoust:#002878;

  --pero:"Caveat",cursive;                      /* štětec z loga */
  --grotesk:"Archivo",system-ui,sans-serif;     /* prostrkané verzálky z okraje loga */
  --text:"Source Sans 3",system-ui,sans-serif;

  --gutter:clamp(1.25rem,5vw,4rem);
  --max:64rem;
}

*{box-sizing:border-box}
/* Bez plynulého posouvání: klik na položku menu má sekci ukázat rovnou,
   ne přes ni projíždět. Sekce dnes stejně mají vlastní stránky. */
html{scroll-behavior:auto}
body{
  margin:0;background:var(--mlha);color:var(--inkoust);overflow-x:hidden;
  font-family:var(--text);font-size:clamp(1rem,.55vw + .9rem,1.15rem);
  line-height:1.6;-webkit-font-smoothing:antialiased;
}
img{max-width:100%;display:block}
a{color:inherit}
.obal{max-width:var(--max);margin:0 auto;padding:0 var(--gutter)}

/* ---------- typografie ---------- */
.eyebrow{
  font-family:var(--grotesk);font-size:.78rem;font-weight:600;
  font-stretch:112%;letter-spacing:.26em;text-transform:uppercase;
  color:var(--reka);margin:0 0 1.1rem;
  display:flex;align-items:center;gap:.7rem;
}
.eyebrow .srdicko{width:.95em;height:.95em;flex:0 0 auto}
.sekce-nadpis{
  font-family:var(--grotesk);font-weight:800;font-stretch:112%;
  text-transform:uppercase;line-height:1.02;letter-spacing:-.005em;
  font-size:clamp(1.9rem,4.2vw,3.1rem);margin:0 0 .35rem;position:relative;
}
.tah{display:block;width:min(340px,72%);height:16px;margin:.15rem 0 1.4rem;overflow:visible}
.tah path{fill:none;stroke:var(--reka);stroke-linecap:round}
.tah .silny{stroke-width:5}
.tah .tenky{stroke-width:2;opacity:.55}
.psano{font-family:var(--pero);font-weight:600;line-height:1.05}
.perex{max-width:52ch;color:#2F4A78;margin:0 0 2.5rem}
.srdce{color:var(--reka);overflow:visible}

/* ---------- doplnit: chybějící údaj ---------- */
.doplnit{
  background:#FFF3D6;color:#8A5A00;
  border-bottom:2px dashed #E0A93B;
  padding:0 .16em;margin:0 -.05em;border-radius:2px;
  font-style:normal;overflow-wrap:anywhere;
  -webkit-box-decoration-break:clone;box-decoration-break:clone;
}
/* ---------- neoveren: tvrzení, které pořadatel nepotvrdil ---------- */
.neoveren{
  background:#FFF8E4;color:#7A5200;
  border-bottom:1px dotted #E0A93B;
  padding:0 .16em;margin:0 -.05em;border-radius:2px;
  -webkit-box-decoration-break:clone;box-decoration-break:clone;
}

/* ---------- tlačítka ---------- */
.tlacitko{
  display:inline-flex;align-items:center;gap:.6rem;
  background:var(--start);color:#fff;
  font-family:var(--grotesk);font-weight:700;font-stretch:108%;
  text-transform:uppercase;letter-spacing:.04em;font-size:.98rem;
  padding:1rem 2rem;border:0;border-radius:999px;
  text-decoration:none;cursor:pointer;
  transition:transform .18s ease,background .18s ease;
}
.tlacitko:hover{background:#E8451C;transform:translateY(-2px)}
.tlacitko .srdce{width:1.1em;height:1.1em;color:inherit}
.tlacitko.duchy{background:transparent;color:inherit;box-shadow:inset 0 0 0 2px currentColor}
.tlacitko.duchy:hover{background:rgba(255,255,255,.1)}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{
  outline:3px solid var(--start);outline-offset:3px;border-radius:4px;
}

/* ---------- rozevírací menu v rohu ---------- */
.menu{position:fixed;top:clamp(.75rem,1.8vw,1.35rem);right:clamp(.75rem,1.8vw,1.35rem);z-index:60}
.menu-tlacitko{
  display:inline-flex;align-items:center;gap:.6rem;
  background:#fff;color:var(--hlubina);border:0;border-radius:999px;
  padding:.72rem 1.15rem .72rem 1rem;cursor:pointer;
  font-family:var(--grotesk);font-weight:700;font-stretch:108%;
  text-transform:uppercase;letter-spacing:.14em;font-size:.72rem;
  box-shadow:0 10px 26px -12px rgba(0,40,120,.75);
  transition:transform .18s ease;
}
.menu-tlacitko:hover{transform:translateY(-2px)}
.carky{display:grid;gap:3.5px;width:17px}
.carky span{display:block;height:2.5px;border-radius:2px;background:currentColor;transition:transform .2s ease,opacity .2s ease}
.menu-tlacitko[aria-expanded="true"] .carky span:nth-child(1){transform:translateY(6px) rotate(45deg)}
.menu-tlacitko[aria-expanded="true"] .carky span:nth-child(2){opacity:0}
.menu-tlacitko[aria-expanded="true"] .carky span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}
.menu-panel{
  position:absolute;top:calc(100% + .6rem);right:0;min-width:16.5rem;
  max-height:calc(100vh - 5rem);overflow-y:auto;
  background:#fff;border-radius:18px;padding:.6rem;
  box-shadow:0 26px 60px -24px rgba(0,40,120,.8);
  border:1px solid rgba(0,40,120,.1);display:grid;gap:.1rem;
}
/* POZOR: display:grid výše přebíjí atribut hidden z UA stylu, tenhle řádek to vrací */
.menu-panel[hidden]{display:none}
.menu-panel a{
  display:block;padding:.62rem .85rem;border-radius:11px;text-decoration:none;
  font-family:var(--grotesk);font-weight:600;font-size:.88rem;color:var(--hlubina);
}
.menu-panel a:hover{background:var(--tisk)}
.menu-panel a[aria-current="page"]{background:var(--tisk);color:var(--hlubina)}
.menu-panel a[aria-current="page"]::before{content:"";display:inline-block;width:.4rem;height:.4rem;border-radius:50%;background:var(--reka);margin-right:.5rem;vertical-align:middle}
.menu-panel .menu-cta{
  margin-top:.4rem;background:var(--start);color:#fff;text-align:center;
  text-transform:uppercase;letter-spacing:.08em;font-size:.76rem;font-weight:700;
}
.menu-panel .menu-cta:hover{background:#E8451C}
@media (max-width:420px){.menu-popis{display:none}.menu-tlacitko{padding:.72rem .82rem}}

/* ---------- modrá hlava podstránky ---------- */
.hlava{background:var(--hlubina);color:#fff;padding:clamp(2.5rem,6vw,4rem) 0 clamp(2.5rem,6vw,3.5rem)}
.hlava a{color:var(--melcina)}
.zpet{
  display:inline-flex;align-items:center;gap:.5rem;text-decoration:none;
  font-family:var(--grotesk);font-size:.72rem;font-weight:600;
  letter-spacing:.2em;text-transform:uppercase;margin-bottom:2rem;
}
.zpet:hover{text-decoration:underline}
.hlava h1{
  font-family:var(--grotesk);font-weight:800;font-stretch:112%;
  text-transform:uppercase;line-height:1.05;letter-spacing:-.005em;
  font-size:clamp(1.8rem,4.4vw,2.9rem);margin:0;color:#fff;
}
.hlava .podnadpis{
  font-family:var(--pero);font-weight:600;font-size:clamp(1.3rem,2.6vw,1.9rem);
  color:var(--melcina);margin:.5rem 0 0;line-height:1.15;
}
.hlava .tah{margin-top:1rem}
.hlava .tah path{stroke:var(--melcina)}
.hlava .stitky{
  list-style:none;margin:2rem 0 0;padding:0;display:flex;flex-wrap:wrap;gap:.7rem 1.6rem;
  font-family:var(--grotesk);font-size:.78rem;letter-spacing:.1em;text-transform:uppercase;
  font-weight:600;color:var(--melcina);
}

/* ---------- tělo podstránky ---------- */
.podstranka main{padding:clamp(2.5rem,6vw,4rem) 0 1rem}
.podstranka main p{max-width:62ch}

/* ---------- výzva k přihlášce na konci podstránky ---------- */
.vyzva{
  background:#fff;border:1px solid rgba(0,40,120,.12);border-radius:22px;
  padding:1.8rem 1.9rem;margin:3rem 0 0;
  display:flex;flex-wrap:wrap;gap:1.2rem;align-items:center;justify-content:space-between;
}
.vyzva p{margin:0;font-size:1.02rem;max-width:36ch}
.vyzva .dodatek{display:block;font-size:.9rem;color:#5A7BA8;margin-top:.3rem}

/* ---------- ceník ve světlé variantě ---------- */
.cenik{width:100%;border-collapse:collapse;margin:1.2rem 0;font-size:.98rem;background:#fff;border-radius:14px;overflow:hidden}
.cenik caption{text-align:left;color:#5A7BA8;font-size:.9rem;padding:0 0 .7rem}
.cenik th,.cenik td{padding:.8rem 1rem;border-bottom:1px solid rgba(0,40,120,.12);text-align:left}
.cenik thead th{
  font-family:var(--grotesk);font-size:.68rem;font-weight:600;letter-spacing:.18em;
  text-transform:uppercase;color:var(--reka);background:var(--tisk);
}
.cenik td.castka{font-family:var(--grotesk);font-weight:700;white-space:nowrap}
.cenik tbody tr:last-child th,.cenik tbody tr:last-child td{border-bottom:0}

/* ---------- odrážkový seznam s oranžovou tečkou ---------- */
.seznam-teckovy,.registrace-info{list-style:none;margin:2rem 0 0;padding:0;display:grid;gap:.65rem;max-width:52rem;font-size:.98rem;color:#2F4A78}
.seznam-teckovy li,.registrace-info li{padding-left:1.4rem;position:relative}
.seznam-teckovy li::before,.registrace-info li::before{content:"";position:absolute;left:0;top:.62em;width:.5rem;height:.5rem;border-radius:50%;background:var(--start)}
.registrace-info a{color:var(--reka)}

/* ---------- patička ---------- */
footer{background:var(--hlubina);color:#B3CDEC;padding:3rem 0;margin-top:4rem;font-size:.95rem}
footer a{color:var(--melcina)}
footer .znacka{font-family:var(--pero);font-weight:700;color:#fff;font-size:2.1rem;line-height:1}
footer p{margin:.3rem 0}
.kontakty{display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-top:2rem}
.kontakty h2{
  font-family:var(--grotesk);font-size:.7rem;font-weight:600;letter-spacing:.18em;
  text-transform:uppercase;color:var(--melcina);margin:0 0 .6rem;border:0;padding:0;
}
