/* JDH · jozefherak.sk — uhlík, mosadz, karmín */
@font-face{font-family:"Cormorant Garamond";font-style:normal;font-weight:500;font-display:swap;src:url(fonts/cormorant-garamond-latin-500-normal.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}
@font-face{font-family:"Cormorant Garamond";font-style:normal;font-weight:500;font-display:swap;src:url(fonts/cormorant-garamond-latin-ext-500-normal.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}
@font-face{font-family:"Cormorant Garamond";font-style:normal;font-weight:600;font-display:swap;src:url(fonts/cormorant-garamond-latin-600-normal.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}
@font-face{font-family:"Cormorant Garamond";font-style:normal;font-weight:600;font-display:swap;src:url(fonts/cormorant-garamond-latin-ext-600-normal.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}
@font-face{font-family:"Cormorant Garamond";font-style:italic;font-weight:500;font-display:swap;src:url(fonts/cormorant-garamond-latin-500-italic.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}
@font-face{font-family:"Cormorant Garamond";font-style:italic;font-weight:500;font-display:swap;src:url(fonts/cormorant-garamond-latin-ext-500-italic.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}
@font-face{font-family:"Jost";font-style:normal;font-weight:300;font-display:swap;src:url(fonts/jost-latin-300-normal.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}
@font-face{font-family:"Jost";font-style:normal;font-weight:300;font-display:swap;src:url(fonts/jost-latin-ext-300-normal.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}
@font-face{font-family:"Jost";font-style:normal;font-weight:400;font-display:swap;src:url(fonts/jost-latin-400-normal.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}
@font-face{font-family:"Jost";font-style:normal;font-weight:400;font-display:swap;src:url(fonts/jost-latin-ext-400-normal.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}
@font-face{font-family:"Jost";font-style:normal;font-weight:500;font-display:swap;src:url(fonts/jost-latin-500-normal.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}
@font-face{font-family:"Jost";font-style:normal;font-weight:500;font-display:swap;src:url(fonts/jost-latin-ext-500-normal.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}

:root{
  --uhlik:#1D1D1F; --grafit:#2B2B2E; --linka:#3A3A3D;
  --mosadz:#B39260; --mosadz-svetla:#E6D3B0; --mosadz-tmava:#8A6A2F;
  --karmin:#8F2B2E; --papier:#F3EFE7; --papier-2:#F8F5EF; --linka-svetla:#D6CFC2;
  --text-svetly:#D8D2C6; --text-tlmeny:#A8A39A; --text-tmavy:#4A4744;
  --serif:"Cormorant Garamond",Georgia,"Times New Roman",serif;
  --sans:"Jost","Helvetica Neue",Arial,sans-serif;
  --sirka:1200px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
body{margin:0;background:var(--uhlik);color:var(--papier);font-family:var(--sans);font-weight:300;font-size:17px;line-height:1.65;-webkit-font-smoothing:antialiased}
img,video{max-width:100%;display:block}
a{color:var(--mosadz)}
a:hover{color:var(--mosadz-svetla)}
:focus-visible{outline:2px solid var(--mosadz);outline-offset:3px}
.obal{max-width:var(--sirka);margin:0 auto;padding-inline:24px}
.skip{position:absolute;left:-9999px}
.skip:focus{left:16px;top:16px;background:var(--mosadz);color:var(--uhlik);padding:10px 16px;z-index:10}

/* hlavička */
.hlavicka{position:sticky;top:0;z-index:5;background:rgba(29,29,31,.94);backdrop-filter:blur(8px);border-bottom:1px solid var(--linka)}
.hlavicka .obal{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-block:16px}
.logo{font-family:var(--serif);font-size:30px;letter-spacing:.14em;color:var(--mosadz);text-decoration:none;line-height:1}
.logo small{display:block;font-family:var(--sans);font-size:10px;letter-spacing:.24em;text-transform:uppercase;color:var(--text-tlmeny);margin-top:4px}
.menu{display:flex;align-items:center;gap:26px}
.menu a{color:var(--text-svetly);text-decoration:none;font-size:13px;letter-spacing:.12em;text-transform:uppercase}
.menu a:hover,.menu a[aria-current=page]{color:var(--mosadz-svetla)}
.menu .tlacidlo-obrys{color:var(--mosadz-svetla)}
.menu-mobil{display:none}
@media (max-width:900px){
  .menu{display:none}
  .menu-mobil{display:block;position:relative}
  .menu-mobil summary{list-style:none;cursor:pointer;color:var(--mosadz-svetla);font-size:13px;letter-spacing:.14em;text-transform:uppercase;padding:10px 0}
  .menu-mobil summary::-webkit-details-marker{display:none}
  .menu-mobil nav{position:absolute;right:0;top:calc(100% + 8px);background:var(--grafit);border:1px solid var(--linka);padding:18px 22px;display:flex;flex-direction:column;gap:14px;min-width:240px}
  .menu-mobil nav a{color:var(--papier);text-decoration:none;font-size:15px}
}

/* typografia */
.nadtitul{font-size:12px;letter-spacing:.24em;text-transform:uppercase;color:var(--mosadz);font-weight:400;margin:0}
h1,h2,h3{font-family:var(--serif);font-weight:500;line-height:1.05;margin:0;text-wrap:balance}
h1{font-size:clamp(46px,7vw,80px)}
h2{font-size:clamp(36px,5vw,54px)}
h3{font-size:28px}
p{margin:0}
.uvod{font-size:19px;color:var(--text-svetly);max-width:58ch}
.citat{font-family:var(--serif);font-style:italic;font-size:clamp(26px,3.4vw,38px);line-height:1.3}

/* tlačidlá */
.tlacidlo{display:inline-block;background:var(--mosadz);color:var(--uhlik);padding:16px 26px;font-size:14px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;text-decoration:none;border:0}
.tlacidlo:hover{background:var(--mosadz-svetla);color:var(--uhlik)}
.tlacidlo-obrys{display:inline-block;border:1px solid var(--mosadz);color:var(--mosadz-svetla);padding:12px 20px;font-size:13px;letter-spacing:.1em;text-transform:uppercase;text-decoration:none}
.odkaz{font-size:14px;letter-spacing:.08em;text-transform:uppercase;color:var(--mosadz-svetla)}
.akcie{display:flex;flex-wrap:wrap;gap:18px;align-items:center}

/* sekcie */
.sekcia{padding-block:104px}
.sekcia-mala{padding-block:72px}
.svetla{background:var(--papier);color:var(--uhlik)}
.svetla .nadtitul{color:var(--mosadz-tmava)}
.svetla .uvod,.svetla .tlmene{color:var(--text-tmavy)}
.grafit{background:var(--grafit)}
.hlavicka-sekcie{display:flex;flex-direction:column;gap:14px;max-width:680px;margin-bottom:48px}
.dve{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,340px),1fr));gap:56px;align-items:center}
.dve>*{min-width:0}

/* úvod stránky */
.hero{padding-block:48px 104px}
.hero-text{display:flex;flex-direction:column;gap:26px}
.hero-media{position:relative;aspect-ratio:4/5;overflow:hidden;background:var(--grafit) url(img/tai-chi-poster.jpg) center/cover no-repeat}
.hero-media video,.hero-media img{width:100%;height:100%;object-fit:cover}
.miesto{font-size:14px;color:var(--text-tlmeny)}

/* filozofia */
.filozofia{text-align:center;display:flex;flex-direction:column;align-items:center;gap:22px;max-width:860px;margin:0 auto}
.linka-karmin{width:64px;height:1px;background:var(--karmin)}
.podpis{font-size:13px;letter-spacing:.2em;text-transform:uppercase;color:var(--mosadz-tmava)}

/* karty služieb */
.karty{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,210px),1fr));gap:18px}
.karta{display:flex;flex-direction:column;background:var(--grafit);color:var(--papier);text-decoration:none;transition:transform .25s}
.karta:hover{transform:translateY(-4px);color:var(--papier)}
@media (prefers-reduced-motion:reduce){.karta{transition:none}.karta:hover{transform:none}}
.karta-foto{aspect-ratio:3/4;overflow:hidden}
.karta-foto img{width:100%;height:100%;object-fit:cover}
.karta-foto.prazdna{background:var(--linka);display:flex;align-items:center;justify-content:center;font-family:var(--serif);font-size:72px;color:var(--mosadz)}
.karta-text{padding:20px 20px 24px;display:flex;flex-direction:column;gap:8px}
.karta-text h3{font-size:26px}
.karta-text p{font-size:15px;line-height:1.55;color:var(--text-svetly)}

/* tri body */
.tri{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:40px}
.bod{display:flex;flex-direction:column;gap:12px}
.bod .linka{width:40px;height:1px;background:var(--mosadz)}
.bod h3{font-size:28px}
.bod p{font-size:16px;color:var(--text-svetly)}
.svetla .bod p{color:var(--text-tmavy)}

/* o mne */
.foto-vysoka{aspect-ratio:4/5;overflow:hidden}
.foto-vysoka img{width:100%;height:100%;object-fit:cover;object-position:50% 15%}
.cisla{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,170px),1fr));gap:22px;border-top:1px solid var(--linka);padding-top:26px}
.cislo{font-family:var(--serif);font-size:42px;color:var(--mosadz);line-height:1}
.cisla p{font-size:14px;color:var(--text-svetly);margin-top:6px}
.text-blok{display:flex;flex-direction:column;gap:22px}
.text-blok p{color:var(--text-svetly)}
.svetla .text-blok p{color:var(--text-tmavy)}

/* ceny */
.ceny{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,250px),1fr));gap:18px}
.cena{border:1px solid var(--linka-svetla);background:var(--papier-2);padding:28px;display:flex;flex-direction:column;gap:10px;color:var(--uhlik)}
.cena .stitok{font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--mosadz-tmava)}
.cena h3{font-size:28px;font-weight:600}
.cena p{font-size:15px;line-height:1.55;color:var(--text-tmavy);flex-grow:1}
.cena .suma{font-size:26px;font-weight:500;font-variant-numeric:tabular-nums}
.cena .suma small{font-size:14px;font-weight:300;color:var(--text-tmavy)}
.cena.hlavna{background:var(--uhlik);border-color:var(--uhlik);color:var(--papier)}
.cena.hlavna h3{color:var(--mosadz-svetla)}
.cena.hlavna p,.cena.hlavna .suma small{color:var(--text-svetly)}
.cena.hlavna .stitok{color:var(--mosadz)}
.poznamka{font-size:14px;color:var(--text-tmavy);margin-top:22px}

/* zoznam výhod */
.vyhody{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:14px}
.vyhody li{padding-left:28px;position:relative;color:var(--text-svetly)}
.vyhody li::before{content:"";position:absolute;left:0;top:.8em;width:14px;height:1px;background:var(--mosadz)}
.svetla .vyhody li{color:var(--text-tmavy)}

/* kroky */
.kroky{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:28px;counter-reset:k}
.kroky li{counter-increment:k;display:flex;flex-direction:column;gap:8px;border-top:1px solid var(--linka);padding-top:18px}
.kroky li::before{content:counter(k,decimal-leading-zero);font-family:var(--serif);font-size:30px;color:var(--mosadz)}
.kroky strong{font-family:var(--serif);font-weight:600;font-size:22px}
.kroky span{font-size:15px;color:var(--text-svetly)}

/* otázky */
.otazky{display:flex;flex-direction:column;border-top:1px solid var(--linka-svetla)}
.otazky details{border-bottom:1px solid var(--linka-svetla);padding-block:20px}
.otazky summary{cursor:pointer;font-family:var(--serif);font-size:24px;font-weight:600;list-style:none;display:flex;justify-content:space-between;gap:20px}
.otazky summary::-webkit-details-marker{display:none}
.otazky summary::after{content:"+";color:var(--mosadz-tmava);font-family:var(--sans);font-weight:300}
.otazky details[open] summary::after{content:"–"}
.otazky details p{margin-top:12px;color:var(--text-tmavy);max-width:70ch}
.tmave-otazky .otazky{border-color:var(--linka)}
.tmave-otazky .otazky details{border-color:var(--linka)}
.tmave-otazky .otazky details p{color:var(--text-svetly)}
.tmave-otazky .otazky summary::after{color:var(--mosadz)}

/* galéria */
.galeria{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:14px}
.galeria img{width:100%;aspect-ratio:4/5;object-fit:cover}

/* kontakt */
.kontakt-riadky{display:flex;flex-direction:column;gap:10px;font-size:20px}
.kontakt-riadky a{color:var(--papier);text-decoration:none;border-bottom:1px solid var(--linka);padding-bottom:10px;display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}
.kontakt-riadky a span{font-size:13px;letter-spacing:.14em;text-transform:uppercase;color:var(--mosadz)}
.kontakt-riadky a:hover{color:var(--mosadz-svetla)}

/* výzva na konci */
.vyzva{text-align:center;display:flex;flex-direction:column;align-items:center;gap:22px}

/* pätička */
.paticka{border-top:1px solid var(--linka);padding-block:40px 48px;font-size:13px;color:var(--text-tlmeny)}
.paticka .obal{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:28px}
.paticka a{color:var(--text-svetly);text-decoration:none}
.paticka a:hover{color:var(--mosadz-svetla)}
.paticka ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}
.paticka .logo{font-size:26px}
.pravne{grid-column:1/-1;border-top:1px solid var(--linka);padding-top:20px;font-size:12px}

/* témy na mieru */
.temy{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:28px}
.tema{border-top:1px solid var(--mosadz);padding-top:20px;display:flex;flex-direction:column;gap:14px}
.tema h3{font-size:28px}
.tema dl{margin:0;display:flex;flex-direction:column;gap:10px}
.tema dt{font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--mosadz)}
.tema dd{margin:0;font-size:15px;line-height:1.6;color:var(--text-svetly)}
.svetla .tema{border-top-color:var(--mosadz-tmava)}
.svetla .tema dt{color:var(--mosadz-tmava)}
.svetla .tema dd{color:var(--text-tmavy)}
/* časová os lekcie */
.casova-os{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}
.casova-os li{display:grid;grid-template-columns:88px 1fr;column-gap:20px;row-gap:4px;padding-block:18px;border-top:1px solid var(--linka)}
.casova-os .cas{grid-row:span 2;font-family:var(--serif);font-size:26px;color:var(--mosadz);line-height:1.1}
.casova-os strong{font-family:var(--serif);font-weight:600;font-size:22px}
.casova-os span:last-child{font-size:15px;color:var(--text-svetly)}
