/* ============================================================
   ADANE — jediný stylopis webu.
   Bez frameworku, bez buildu, bez cizích požadavků.
   ============================================================ */

/* ---------- písma ---------- */
@font-face{
  font-family:'Fredoka One';
  src:url('../fonts/fredoka-one.woff2') format('woff2');
  font-weight:400;font-style:normal;font-display:swap;
}
@font-face{
  font-family:'Source Serif 4';
  src:url('../fonts/source-serif-4-latin.woff2') format('woff2');
  font-weight:400 600;font-style:normal;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:'Source Serif 4';
  src:url('../fonts/source-serif-4-latin-ext.woff2') format('woff2');
  font-weight:400 600;font-style:normal;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;
}

/* ---------- tokeny ---------- */
:root{
  --red:#bf1e2e; --wine:#871928; --ink:#121421; --ink-soft:#3b3b44;
  --muted:#6b6b73; --line:#e3e3e6; --paper:#fff; --paper-warm:#faf9f7;
  --serif:'Source Serif 4',Georgia,'Times New Roman',serif;
  --logo:'Fredoka One','Trebuchet MS',sans-serif;
  --s1:4px; --s2:8px; --s3:12px; --s4:16px; --s5:24px; --s6:32px; --s7:48px; --s8:64px;
  --measure:37em;
}

/* ---------- základ ---------- */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--paper);color:var(--ink-soft);font:400 17px/1.65 var(--serif)}
img{max-width:100%;height:auto}
hr{border:0;border-top:1px solid var(--line);margin:0}
a:focus-visible,summary:focus-visible{outline:2px solid var(--wine);outline-offset:3px}

/* ---------- wordmark ---------- */
.wordmark{font-family:var(--logo);color:var(--ink);text-decoration:none;white-space:nowrap;line-height:1;display:inline-block}
.wordmark i{font-style:normal}
.wordmark .a1{color:var(--red)}
.wordmark .a2{color:var(--wine);font-size:1.2em}
.wordmark .a3{color:var(--ink)}

/* ---------- hlavička a navigace ---------- */
/* sticky pruh přes celou šířku; obsah zarovnaný na stejnou míru jako text,
   takže wordmark stojí přesně nad nadpisem — bez pomocného elementu */
.masthead{position:sticky;top:0;z-index:10;display:flex;align-items:center;justify-content:space-between;
          gap:var(--s4);background:var(--paper);border-bottom:1px solid var(--line);
          padding:var(--s3) max(var(--s5),calc((100% - var(--measure))/2 + var(--s5)))}
.masthead .wordmark{font-size:1.45rem}
.nav summary{list-style:none;cursor:pointer;display:flex;flex-direction:column;gap:4px;padding:var(--s2)}
.nav summary::-webkit-details-marker{display:none}
.nav summary i{display:block;width:22px;height:1.5px;background:var(--ink)}
.nav ul{list-style:none;margin:0;padding:0 var(--s5) var(--s3);font-size:.85rem;
        position:absolute;left:0;right:0;top:100%;z-index:5;
        background:var(--paper);border-bottom:1px solid var(--line)}
.nav a{display:block;padding:var(--s3) 0;border-top:1px solid var(--line);color:var(--muted);text-decoration:none}
.nav a[aria-current="page"]{color:var(--wine)}

@media (min-width:700px){
  .nav summary{display:none}
  .nav ul{position:static;display:flex;gap:var(--s5);padding:0;background:none;border-bottom:0}
  .nav a{border-top:0;padding:0}
  .nav a:hover{color:var(--ink)}
  .nav a[aria-current="page"]{border-bottom:1px solid var(--wine);padding-bottom:2px}
  .nav:not([open])>ul{display:flex}
}
/* novější Chrome skrývá obsah <details> přes ::details-content — samostatné
   pravidlo, aby ho starší prohlížeče mohly ignorovat, aniž zahodí blok výše */
@media (min-width:700px){
  .nav::details-content{content-visibility:visible;block-size:auto}
}

/* ---------- vnitřní stránka ---------- */
.content{max-width:var(--measure);margin:0 auto;padding:var(--s6) var(--s5) var(--s8)}
.content h1{font:400 clamp(1.7rem,5vw,2.4rem)/1.14 var(--serif);color:var(--ink);
            letter-spacing:-.01em;margin:0 0 var(--s5)}
.lead{font-size:1.125rem;line-height:1.6;color:#2b2b33;margin:0 0 var(--s6)}
.block{margin-bottom:var(--s5)}
.label{font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;
       color:var(--wine);margin-bottom:var(--s1)}
.block p{margin:var(--s1) 0 0}
.block ul{margin:var(--s2) 0 0;padding-left:1.1em}
.block li{margin-bottom:var(--s1)}
.content a{color:var(--wine);text-decoration:underline;
           text-decoration-color:rgba(135,25,40,.35);text-underline-offset:2px}
.content a:hover{text-decoration-color:var(--wine)}
.ext{width:.62em;height:.62em;margin-left:.3em;vertical-align:baseline;fill:currentColor}

/* ---------- titulní strana (index, err) ---------- */
.home{max-width:34em;margin:0 auto;padding:var(--s8) var(--s5) var(--s6)}
.home .wordmark{font-size:clamp(2.6rem,11vw,3.6rem)}
.home-claim{margin:var(--s5) 0 var(--s7)}
.home-nav{list-style:none;margin:0;padding:0}
.home-nav li{border-top:1px solid var(--line)}
.home-nav li:last-child{border-bottom:1px solid var(--line)}
.home-nav a{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;
            gap:var(--s2);padding:var(--s3) 0;text-decoration:none;color:var(--ink)}
.home-nav .t{font-size:1.15rem}
.home-nav .d{font-size:.78rem;color:var(--muted)}
.home-nav a:hover .t{color:var(--wine)}
.colophon{font-size:.72rem;color:var(--muted);margin-top:var(--s6)}

/* ---------- kontakty ---------- */
.person{margin-top:var(--s4)}
.person .name{font-size:1.08rem;color:var(--ink)}
.person .lines{font-size:.88rem;line-height:1.8;margin:var(--s1) 0 0}
.person .note{font-size:.78rem;color:var(--muted);margin:2px 0 0}

/* ---------- osvědčení ---------- */
.certs{display:flex;flex-wrap:wrap;gap:var(--s3);margin-top:var(--s3)}
.certs a{display:block;border:1px solid var(--line);background:var(--paper-warm);padding:var(--s2);text-decoration:none}
.certs img{display:block;width:120px}

/* ---------- rozbalovací právní texty ---------- */
.disclosure{border-top:1px solid var(--line);padding:var(--s4) 0}
.disclosure summary{cursor:pointer;list-style:none;display:flex;align-items:center;gap:var(--s2);
                    font-size:.72rem;letter-spacing:.12em;
                    text-transform:uppercase;color:var(--wine)}
.disclosure summary::-webkit-details-marker{display:none}
.disclosure summary svg{flex:0 0 auto;width:.6em;height:.6em;fill:currentColor;transition:transform .15s}
.disclosure[open] summary svg{transform:rotate(90deg)}
.disclosure p{font-size:.95rem}
.disclosure ul{padding-left:1.1em}
