@font-face{font-family:"Kreon";src:url(/assets/fonts/kreon-latin-wght-normal.woff2) format("woff2");font-weight:300 700;font-display:swap;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}
@font-face{font-family:"Kreon";src:url(/assets/fonts/kreon-latin-ext-wght-normal.woff2) format("woff2");font-weight:300 700;font-display:swap;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}
@font-face{font-family:"Fira Sans";src:url(/assets/fonts/fira-sans-latin-400-normal.woff2) format("woff2");font-weight:400;font-display:swap;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}
@font-face{font-family:"Fira Sans";src:url(/assets/fonts/fira-sans-latin-ext-400-normal.woff2) format("woff2");font-weight:400;font-display:swap;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}
@font-face{font-family:"Fira Sans";src:url(/assets/fonts/fira-sans-latin-600-normal.woff2) format("woff2");font-weight:600;font-display:swap;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}
@font-face{font-family:"Fira Sans";src:url(/assets/fonts/fira-sans-latin-ext-600-normal.woff2) format("woff2");font-weight:600;font-display:swap;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}
@font-face{font-family:"Fira Sans";src:url(/assets/fonts/fira-sans-latin-400-italic.woff2) format("woff2");font-weight:400;font-style:italic;font-display:swap;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}
@font-face{font-family:"Fira Sans";src:url(/assets/fonts/fira-sans-latin-ext-400-italic.woff2) format("woff2");font-weight:400;font-style:italic;font-display:swap;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}

:root{
  --papir:#f4efe4;--list:#fffdf8;--inkoust:#1f2a30;--sedy:#55626a;--reka:#2c5d7c;--hlubina:#173a4f;
  --piskovec:#a5532e;--luh:#5d7a3a;--mlha:#e3ecef;--kamen:#d8cfbd;--sirka:1180px;
  --pismo:"Fira Sans",system-ui,-apple-system,"Segoe UI",sans-serif;--nadpis:"Kreon",Georgia,serif;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--papir);color:var(--inkoust);font:400 1.0625rem/1.68 var(--pismo);font-feature-settings:"tnum" 0}
img,svg{max-width:100%;height:auto;display:block}
a{color:var(--reka);text-underline-offset:.18em;text-decoration-thickness:1px}
a:hover{color:var(--piskovec)}
h1,h2,h3{font-family:var(--nadpis);font-weight:600;line-height:1.18;color:var(--hlubina);letter-spacing:-.005em}
h1{font-size:clamp(2rem,4.4vw,3.05rem);margin:.2em 0 .35em}
h2{font-size:clamp(1.4rem,2.6vw,1.85rem);margin:1.9em 0 .5em}
h3{font-size:1.2rem;margin:1.4em 0 .4em}
p{margin:0 0 1.05em}
ul,ol{padding-left:1.25em}
li{margin:.25em 0}
.skryte{position:absolute;left:-9999px}
.skok{position:absolute;left:1rem;top:-3rem;background:var(--hlubina);color:#fff;padding:.5rem .9rem;border-radius:6px;z-index:9}
.skok:focus{top:.6rem}

/* Kopf */
.hlavicka{background:var(--hlubina);color:#e8f0f3}
.hlavicka-vnitrek{max-width:var(--sirka);margin:0 auto;padding:.85rem 1.25rem;display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}
.znacka{display:flex;align-items:center;gap:.7rem;color:#fff;text-decoration:none}
.znacka:hover{color:#fff}
.znak{width:40px;height:40px;flex:none}
.znacka-text{font-family:var(--nadpis);font-size:1.22rem;font-weight:600;line-height:1.05}
.znacka-text small{display:block;font-family:var(--pismo);font-size:.74rem;font-weight:400;color:#a9c3cf;letter-spacing:.02em}
.menu{display:flex;gap:.2rem 1.1rem;flex-wrap:wrap}
.menu a{color:#dbe7ec;text-decoration:none;font-size:.95rem;padding:.25rem 0;border-bottom:2px solid transparent}
.menu a:hover,.menu a[aria-current]{color:#fff;border-color:var(--piskovec)}
.pasmo{height:6px;background:linear-gradient(90deg,#6d8f4e 0 14.28%,#a5532e 0 28.56%,#2c5d7c 0 42.84%,#8a6a2c 0 57.12%,#3f7b7a 0 71.4%,#5b4f86 0 85.68%,#0f2a3a 0)}

/* Grundraster */
.obal{max-width:var(--sirka);margin:0 auto;padding:0 1.25rem}
.drobky{font-size:.88rem;color:var(--sedy);margin:1.4rem 0 0}
.drobky ol{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:.2rem .45rem}
.drobky li:not(:last-child)::after{content:"›";margin-left:.45rem;color:#9aa5ab}
.drobky a{color:var(--sedy)}
.udaje{display:flex;flex-wrap:wrap;gap:.3rem 1.1rem;font-size:.9rem;color:var(--sedy);margin:0 0 1.2rem}
.udaje span{white-space:nowrap}
.uvod{font-size:1.2rem;line-height:1.6;color:#2c3a41;max-width:44rem}

/* Startseite */
.titul{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:2.4rem;align-items:center;padding:2.6rem 0 1.4rem}
.titul h1{margin-top:0}
.titul-mapa{background:var(--list);border-radius:14px;padding:.6rem;box-shadow:0 1px 0 var(--kamen)}
.mapa{width:100%;border-radius:10px}
#karte+.mapa{max-width:860px}
.mapa-ort{font:600 13px var(--pismo);fill:var(--inkoust)}
.mapa-cislo{font:600 11px var(--pismo);fill:#fff;pointer-events:none}
.mapa-mer line,.mapa-mer path{stroke:var(--inkoust);stroke-width:2;fill:none}
.mapa-mer text{font:600 12px var(--pismo);fill:var(--inkoust)}
.mapa a circle{transition:r .15s}
.mapa a:hover circle{stroke:var(--inkoust)}
.legenda{display:flex;flex-wrap:wrap;gap:.35rem .9rem;font-size:.84rem;color:var(--sedy);margin:.55rem .3rem .1rem;padding:0;list-style:none}
.legenda i{display:inline-block;width:.75rem;height:.75rem;border-radius:50%;margin-right:.35rem;vertical-align:-.05rem}

.tok{list-style:none;margin:1.4rem 0 0;padding:0;position:relative}
.tok::before{content:"";position:absolute;left:1.35rem;top:.6rem;bottom:.6rem;width:4px;border-radius:2px;background:var(--reka);opacity:.35}
.tok-usek{position:relative;display:grid;grid-template-columns:2.8rem minmax(0,1fr);gap:1.1rem;padding:0 0 1.6rem}
.tok-cislo{width:2.75rem;height:2.75rem;border-radius:50%;display:grid;place-items:center;color:#fff;font:600 1.2rem var(--nadpis);position:relative;z-index:1;border:3px solid var(--papir)}
.tok-telo{background:var(--list);border-radius:12px;padding:1rem 1.2rem 1.05rem;border:1px solid #e7dfcf}
.tok-telo h3{margin:0 0 .15rem;font-size:1.32rem}
.tok-telo h3 a{color:var(--hlubina);text-decoration:none}
.tok-telo h3 a:hover{color:var(--piskovec)}
.tok-trasa{font-size:.88rem;color:var(--sedy);margin:0 0 .45rem}
.tok-telo p{margin:0 0 .5rem}
.tok-vyber{font-size:.92rem;margin:0}

.dva{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:2.6rem;margin:1rem 0 0}
.druhy{list-style:none;padding:0;margin:0;display:grid;gap:.6rem}
.druhy li{background:var(--list);border-left:4px solid var(--luh);border-radius:0 10px 10px 0;padding:.65rem .9rem;margin:0}
.druhy b{font-family:var(--nadpis);font-size:1.08rem;color:var(--hlubina);font-weight:600}
.druhy span{color:var(--sedy);font-size:.9rem}
.cisla{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.1rem 1.4rem;margin:0}
.cisla div{border-top:1px solid var(--kamen);padding:.6rem 0}
.cisla dt{font-size:.85rem;color:var(--sedy)}
.cisla dd{margin:0;font:600 1.45rem var(--nadpis);color:var(--hlubina)}
.vedeni{background:var(--hlubina);color:#e3edf1;border-radius:14px;padding:1.6rem 1.6rem 1.2rem;margin:2.6rem 0}
.vedeni h2{color:#fff;margin-top:0}
.vedeni a{color:#bcd9e6}
.vedeni a:hover{color:#fff}
.vedeni ul{list-style:none;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem 1.6rem;margin:0}
.vedeni li{margin:0}
.vedeni li a{font:600 1.12rem var(--nadpis)}
.vedeni li span{display:block;font-size:.92rem;color:#a9c3cf}
.partneri{border-top:1px solid var(--kamen);padding-top:1rem;margin-top:2rem;font-size:.95rem}

/* Abschnitt */
.usek-hlava{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:2.2rem;align-items:start;margin:1rem 0 1.4rem}
.usek-poradi{font-size:.92rem;color:var(--sedy);margin:0}
.obrazek{margin:0}
.obrazek img{border-radius:12px;width:auto;max-width:100%;max-height:640px;margin:0 auto}
.obrazek figcaption{font-size:.82rem;color:var(--sedy);margin-top:.45rem;line-height:1.45}
.obrazek figcaption a{color:var(--sedy)}
.kresba{border-radius:12px;width:100%}
.kresba-t{font:600 18px var(--pismo);fill:var(--inkoust)}
.kresba-km{font:600 52px var(--nadpis);fill:var(--hlubina)}
.zastavky{list-style:none;padding:0;margin:1rem 0 0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem 1.4rem;counter-reset:z}
.zastavky li{counter-increment:z;margin:0;display:grid;grid-template-columns:2rem minmax(0,1fr);gap:.6rem;padding:.6rem 0;border-top:1px solid var(--kamen)}
.zastavky li::before{content:counter(z);width:1.75rem;height:1.75rem;border-radius:50%;background:var(--usek,#2c5d7c);color:#fff;display:grid;place-items:center;font:600 .82rem var(--pismo);margin-top:.15rem}
.zastavky a{font-weight:600;text-decoration:none;color:var(--hlubina)}
.zastavky a:hover{color:var(--piskovec)}
.zastavky small{display:block;color:var(--sedy);font-size:.86rem;line-height:1.45}
.stitek{display:inline-block;font-size:.74rem;padding:.05rem .45rem;border-radius:4px;background:var(--mlha);color:var(--hlubina);margin-left:.3rem;vertical-align:.1rem;font-weight:400}

/* Artikel */
.clanek{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:3rem;align-items:start;margin:.6rem 0 0}
.clanek-text{max-width:44rem}
.clanek-text h2{font-size:1.55rem}
.clanek-text figure{margin:1.4rem 0 1.6rem}
.poznamka{background:var(--list);border:1px solid #e3d9c4;border-left:4px solid var(--piskovec);border-radius:0 10px 10px 0;padding:.85rem 1.05rem;margin:1.4rem 0}
.poznamka p:last-child{margin:0}
.bok{position:sticky;top:1rem;display:grid;gap:1.1rem}
.karta{background:var(--list);border:1px solid #e7dfcf;border-radius:12px;padding:1rem 1.1rem}
.karta h2{font-size:1.15rem;margin:0 0 .6rem}
.karta dl{margin:0;display:grid;gap:.45rem;font-size:.93rem}
.karta dt{color:var(--sedy);font-size:.8rem}
.karta dd{margin:0}
.karta .mapa{margin-top:.2rem}
.obsah-mini ol{margin:0;padding-left:1.1rem;font-size:.93rem}
.listovani{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin:2.4rem 0 0;padding:1.2rem 0 0;border-top:2px solid var(--kamen)}
.listovani a{display:block;text-decoration:none;background:var(--list);border-radius:10px;padding:.75rem .95rem;border:1px solid #e7dfcf}
.listovani a:hover{border-color:var(--reka)}
.listovani small{display:block;color:var(--sedy);font-size:.8rem}
.listovani b{font-family:var(--nadpis);font-weight:600;color:var(--hlubina)}
.listovani .dal{text-align:right}
.pribuzne{margin:2.6rem 0 3rem}
.pribuzne ul{list-style:none;padding:0;margin:.6rem 0 0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}
.pribuzne li{margin:0;background:var(--list);border-radius:12px;border:1px solid #e7dfcf;overflow:hidden}
.pribuzne li a{display:block;text-decoration:none;color:inherit;padding:0 0 .8rem}
.pribuzne li img,.pribuzne li svg{aspect-ratio:16/9;object-fit:cover;width:100%;border-radius:0}
.pribuzne b{display:block;font-family:var(--nadpis);font-weight:600;color:var(--hlubina);padding:.6rem .85rem 0;line-height:1.25}
.pribuzne span{display:block;font-size:.85rem;color:var(--sedy);padding:.15rem .85rem 0}

.prosty{max-width:46rem;margin:0 auto 3.5rem}
.prosty h2{font-size:1.45rem}
.chyba{text-align:center;padding:4rem 0 5rem}

/* Fuß */
.paticka{background:#e8e0cf;margin-top:3rem;font-size:.93rem;color:#3b4a51}
.paticka-vnitrek{max-width:var(--sirka);margin:0 auto;padding:2rem 1.25rem 1.4rem;display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:2rem}
.paticka h2{font-size:1.02rem;margin:0 0 .5rem}
.paticka ul{list-style:none;padding:0;margin:0}
.paticka li{margin:.15rem 0}
.paticka a{color:#2c4b5c}
.paticka-spodek{max-width:var(--sirka);margin:0 auto;padding:.9rem 1.25rem 1.5rem;border-top:1px solid #d3c8b1;font-size:.83rem;color:#5d6a70}

@media (max-width:980px){
  .titul,.usek-hlava,.dva{grid-template-columns:1fr}
  .clanek{grid-template-columns:1fr;gap:1.5rem}
  .bok{position:static}
  .paticka-vnitrek{grid-template-columns:1fr 1fr}
}
@media (max-width:640px){
  body{font-size:1rem}
  .uvod{font-size:1.08rem}
  .zastavky,.pribuzne ul,.vedeni ul{grid-template-columns:1fr}
  .listovani{grid-template-columns:1fr}
  .listovani .dal{text-align:left}
  .paticka-vnitrek{grid-template-columns:1fr}
  .menu{gap:.15rem .9rem}
  .tok-usek{grid-template-columns:2.2rem minmax(0,1fr);gap:.8rem}
  .tok::before{left:1.05rem}
  .tok-cislo{width:2.2rem;height:2.2rem;font-size:1rem}
}
