/* ===== main.css (tidy, behavior 1:1) ===== */

/* === ZÁKLAD === */
html,body{
  background:#000;
  color:#f5f5f5;
  font-family:system-ui,sans-serif;
  font-size:1.1rem;
  line-height:1.7;
  margin:0;
  padding:0;
  height:100%;
}
img{ loading:lazy; }

main{
  max-width:800px;
  margin:0 auto;
  padding:4rem 1rem 6rem;
  text-align:center;
}

/* === TAPETA (homepage) – přes celou stránku, pod footerem === */
body.home{
  position:relative;
  background:#000;      /* fallback */
  z-index:0;
  min-height:100%;
}

/* Fotka – fixní, parallax; ohnisko a měřítko dle současného stavu */
body.home::before{
  content:"";
  position:fixed;
  inset:0;
  z-index:-2;
  background-image:url("../img/hory-usvit-1280.webp");
  background-repeat:no-repeat;
  background-size:cover;          /* vyplní nahoře/dole i po stranách */
  background-position:center 22%; /* „menší“ vzhled na PC */
  background-attachment:fixed;    /* parallax */
  -webkit-mask-image:none !important;  /* žádná maska/fade – bez černé čáry */
  mask-image:none !important;
}

/* Ztmavení – jednotná vrstva (PC silnější) */
body.home::after{
  content:"";
  position:fixed;
  inset:0;
  z-index:-1;
  pointer-events:none;
  background:rgba(0,0,0,.55);   /* base (mobil/tablet) */
}
@media (min-width:1024px){
  body.home::after{ background:rgba(0,0,0,.68); } /* PC přitmavení */
}

/* Zdroj fotky a ohnisko pro různá zařízení */
@media (max-width:900px){
  body.home::before{
    background-image:url("../img/hory-usvit-800.webp");
    background-attachment:scroll;      /* hladší scroll na mobilu/tabletu */
    background-position:center 14%;
  }
}
@media (min-width:1401px){
  body.home::before{
    background-image:url("../img/hory-usvit-1920.webp");
    background-position:center 18%;
  }
}

/* Tapeta i pod footerem */
.home .main-footer{ background:transparent !important; }
.home .footer-line{ display:none !important; }

/* Starý overlay vypnout (kdyby někde zůstal) */
.overlay{ display:none!important; pointer-events:none!important; }

/* === OBSAH / NADPISY === */
.uvodni h1{ font-size:2.5rem; color:#ff7e00; text-transform:uppercase; font-weight:300; }
.uvodni p{ margin:1rem 0; }

#blog-rozcesnik{ max-width:800px; margin:0 auto; padding:4rem 1rem 6rem; text-align:justify; }
#blog-rozcesnik h1{
  text-align:center; font-size:3rem; font-weight:300; text-transform:uppercase;
  line-height:1.4; margin-bottom:2rem; color:#fff;
}
#blog-rozcesnik h1 span{ color:#ff7e00; display:block; font-size:1.6rem; margin-top:1rem; }
#blog-rozcesnik h2{
  text-align:center; font-size:2rem; font-weight:300; text-transform:uppercase;
  line-height:1.4; margin-bottom:2rem; color:#fff;
}
#blog-rozcesnik h2 span{ color:#ff7e00; display:block; margin-top:.5rem; }

.oranzova{ color:#ff7e00; font-weight:bold; text-align:center; }
.oranz{ color:#ff7e00; }

.dalsi{ text-align:center; margin-top:2.5rem; }
.dalsi a{ color:#ff7e00; text-decoration:none; font-weight:bold; }
.dalsi a:hover{ text-decoration:underline; }

.pozn{ text-align:center; margin-top:3rem; font-size:.95rem; color:#aaa; }
.pozn a{ color:#ffaa00; }

.podpis{ display:block; max-width:200px; margin:2rem auto 0; pointer-events:none; }
.podpis img{ display:block; max-width:200px; height:auto; margin:2rem auto 0; pointer-events:none; }

.seo-hidden{
  width:1px; height:1px; overflow:hidden; clip:rect(1px,1px,1px,1px); position:absolute;
}

.uvod-wrapper{ max-width:800px; margin:0 auto; padding:4rem 1rem 6rem; }
.uvod-wrapper h1{
  text-align:center; font-size:3rem; color:#fff; font-weight:300; text-transform:uppercase; line-height:1.4; margin:0;
}
.uvod-text{ text-align:center; font-size:1.1rem; color:#aaa; max-width:700px; margin:2rem auto; }
.claim{ font-weight:300; color:#ddd; font-size:1.4rem; line-height:1.2; margin-top:3.5rem; text-align:center; }

/* === DEKORACE === */
.pulse-line{
  width:100%; height:1px; margin:3rem auto;
  background:linear-gradient(to right, rgba(255,126,0,0) 0%, rgba(255,126,0,1) 50%, rgba(255,126,0,0) 100%);
  animation:pulseGradient 3s ease-in-out infinite; border:none;
}
.pulse-line.small{ width:50%; }
@keyframes pulseGradient{ 0%{opacity:.2;filter:blur(0)} 50%{opacity:.9;filter:blur(1px)} 100%{opacity:.2;filter:blur(0)} }

.vyrok{ text-align:center; color:#ff7e00; font-size:1.2rem; font-weight:300; margin-bottom:2rem; text-shadow:0 0 5px rgba(255,126,0,.2); }
.body-text p{ color:#ddd; font-size:1.2rem; margin-bottom:1rem; }

.cta{ text-align:center; margin-top:2rem; }
.cta-button{ background:#ff7e00; color:#000; padding:.75rem 2rem; font-weight:bold; border:none; text-decoration:none; border-radius:4px; }

/* === MANIFEST === */
.manifest h2{ text-align:center; font-size:2.2rem; color:#fff; font-weight:300; text-transform:uppercase; line-height:1.4; margin-bottom:2rem; }
.manifest h2 span{ color:#ff7e00; }
.manifest-text{ font-size:1.4rem; text-align:center; color:#ddd; max-width:800px; margin:0 auto; }
.manifest-text p{ margin-bottom:2rem; }
.manifest-note{ font-style:italic; font-size:1.3rem; color:#888; text-align:center; margin-top:1.5rem; }

.zaver{ margin-top:2rem; font-size:1rem; color:#aaa; text-align:center; }
.odkazy{ margin-top:4rem; font-size:1rem; color:#aaa; text-align:center; }
.odkazy a{ color:#ff7e00; text-decoration:none; }

.footer-note{ margin-top:2rem; font-size:.95rem; text-align:center; color:#aaa; }
.footer-note a{ color:#ff7e00; text-decoration:none; }

.vyrazna-sekce{
  background-color:#111; border-radius:10px; padding:2rem 1.5rem; margin:4rem auto;
  max-width:800px; box-shadow:0 0 8px rgba(255,126,0,.05);
}
.oranzova-tecka{ color:#ff7e00; display:inline-block; margin-right:.5rem; font-size:1rem; }

/* === KODEX === */
.kodex-chlapa{
  background:#000; color:#f0f0f0; padding:4rem 1rem 6rem; max-width:800px; margin:0 auto;
  font-family:system-ui,sans-serif; font-size:1.25rem; line-height:1.8; text-align:justify;
}
.kodex-title{ text-align:center; font-size:2.6rem; font-weight:300; text-transform:uppercase; letter-spacing:1px; margin-bottom:2rem; color:#ff7e00; }
.kodex-subtitle{ display:block; color:#fff; }
.kodex-lead{ text-align:center; font-style:italic; margin-bottom:2.5rem; }
.kodex-divider{
  width:100%; max-width:800px; height:3px; margin:0 auto 3.5rem;
  background:linear-gradient(to right,transparent,#ff7e00,transparent); animation:pulse-line 2s infinite ease-in-out;
}
@keyframes pulse-line{ 0%,100%{opacity:.3} 50%{opacity:1} }
.kodex-item{ margin-bottom:4rem; }
.kodex-item__heading{ text-align:center; color:#ff7e00; font-size:1.6rem; font-weight:300; text-transform:uppercase; letter-spacing:.5px; margin-bottom:1rem; }
.kodex-item__text{ text-align:center; margin:0 auto 1.5rem; }
.kodex-item__icon{ text-align:center; }
.kodex-item__icon img{ width:180px; opacity:.85; border-radius:8px; }
.kodex-note{ text-align:center; font-style:italic; margin-top:3rem; }
.kodex-signature{ text-align:center; margin-top:2rem; }

/* === FAQ === */
.faq-wrapper{ background:#000; color:#fff; padding:4rem 1rem; max-width:800px; margin:0 auto; font-family:inherit; font-size:1.1rem; line-height:1.7; text-align:center; }
.faq-title{ color:#ff7e06; font-weight:300; font-size:2.2rem; text-transform:uppercase; letter-spacing:1px; margin-bottom:2rem; }
.faq-intro{ color:#ccc; margin-bottom:3rem; }
.faq-list details{ background:none; border:none; margin-bottom:1.8rem; }
.faq-list summary{ cursor:pointer; color:#8ab4f8; font-size:1.2rem; font-weight:500; padding:.5rem 0; list-style:none; }
.faq-list summary::marker{ display:none; }
.faq-list summary::before{ content:'▶'; color:#8ab4f8; font-size:1rem; margin-right:.5rem; transition:transform .3s ease; display:inline-block; }
.faq-list details[open] summary::before{ transform:rotate(90deg); }
.faq-list details p{ padding:.5rem 0 0 1.5rem; margin:0; color:#fff; text-align:left; }
.faq-footer-links{ text-align:center; margin-top:2rem; font-size:1.1rem; }
.faq-footer-links a{ color:#8ab4f8; text-decoration:none; }
.faq-footer-img{ text-align:center; margin-top:2rem; }
.faq-footer-img img{ max-width:200px; height:auto; opacity:.7; pointer-events:none; }

/* === TOP šipka === */
#back-to-top:hover{ background-color:#ff7e00!important; color:#000!important; }
@media (max-width:799px){ #back-to-top{ display:none!important; } }

/* === MENU – hover barvy podle sekcí === */
body.tema-stoicismus .hlavni-menu a[href*="stoicismus"]:hover{ color:#B8860B; }
body.tema-redpill    .hlavni-menu a[href*="redpill"]:hover{   color:#ff3333; }
body.tema-fitness    .hlavni-menu a[href*="cviceni"]:hover{   color:#66cc66; }
body.tema-memento-mori .hlavni-menu a[href*="memento-mori"]:hover{ color:#888; }

body.tema-stoicismus .hlavni-menu a[href*="stoicismus"],
body.tema-redpill    .hlavni-menu a[href*="redpill"],
body.tema-fitness    .hlavni-menu a[href*="cviceni"],
body.tema-memento-mori .hlavni-menu a[href*="memento-mori"]{ font-weight:bold; }

/* === MOBIL – typografie a grid (zachováno) === */
@media (max-width:600px){
  body{ font-size:1rem; line-height:1.6; padding:0 1rem; }
  h1,h2,h3{ font-size:1.8rem; line-height:1.3; text-align:center; margin:2rem 0 1rem; }
  p{ font-size:1rem; margin-bottom:1.2rem; text-align:justify; }
  img{ max-width:100%; height:auto; display:block; margin:1rem auto; }
  button,.cta,.newsletter-form input[type="submit"],.button{ font-size:1rem; padding:1rem 1.5rem; min-width:80%; margin:1rem auto; display:block; }
  #hamburger{ width:44px; height:44px; padding:10px; z-index:1000; }
  .dropdown-menu{ font-size:1rem; }
  .categories{ display:flex!important; flex-direction:column!important; align-items:center!important; text-align:center!important; }
  .categories .cat{ width:90%!important; max-width:300px!important; margin:0 auto 1.5rem!important; text-align:center!important; }
}

/* ✍️ Psací font */
.carpe-diem{ font-family:'Great Vibes',cursive!important; font-size:2.4rem; color:#ffaa00; text-align:center; margin-top:.5rem; }

/* === Proměnné akcentu === */
:root{ --accent:#ff7e00; }
body.redpill{     --accent:#ff2b2b; }
body.vlastnicesta{--accent:#ff7e00; }
body.stoicismus{  --accent:#B8860B; }
body.fitness{     --accent:#66cc66; }

/* === Reading progress + ETA === */
#read-progress{ position:fixed; top:0; left:0; height:3px; width:0; background:var(--accent); z-index:9999; }
#read-eta{ position:fixed; top:6px; right:10px; font-size:.85rem; color:#9e9e9e; z-index:9999; padding:2px 8px; border-radius:6px; background:transparent; }
#read-eta .eta-num{ color:var(--accent); font-weight:800; }

/* === HEADER === */
#hamburger{ display:none; }
@media (max-width:768px){ #hamburger{ display:flex; } }

.hlavni-menu a,
.hlavni-menu a:visited,
.hlavni-menu a:hover,
.hlavni-menu a:focus,
.hlavni-menu a:focus-visible,
.hlavni-menu a:active{
  text-decoration:none!important; outline:none!important; box-shadow:none!important; border:none!important;
}
.site-header{ display:flex; justify-content:center; align-items:center; }
.hlavni-menu{ background-color:#000; padding:.4rem 0; font-family:system-ui,sans-serif; display:flex; }
.hlavni-menu ul{ list-style:none; display:flex; flex-wrap:wrap; gap:1rem; margin:0; padding:0; }
.hlavni-menu a{ text-decoration:none; color:#fff; font-size:.65rem; transition:color .3s ease; padding:.2rem .4rem; text-transform:uppercase; letter-spacing:.05rem; }
.hlavni-menu li.dropdown>a::after{ content:'▾'; margin-left:.2rem; font-size:.6rem; vertical-align:middle; }
.hlavni-menu li.dropdown{ position:relative; }
.hlavni-menu li .dropdown-menu{
  display:none; position:absolute; top:100%; left:50%; transform:translateX(-50%);
  background:#222; padding:0; margin:0; list-style:none; min-width:160px; z-index:999; text-align:center;
}
.hlavni-menu li .dropdown-menu li a{ display:block; padding:.6rem 1rem; color:#f5f5f5; font-size:.65rem; line-height:1.6; }
.hlavni-menu li.dropdown:hover .dropdown-menu{ display:block; }
.hlavni-menu a:not(.stoicismus-link):not(.redpill-link):not(.fitness-link):hover{ color:#ff7e00; }
.hlavni-menu a.stoicismus-link:hover{ color:#B8860B; }
.hlavni-menu a.redpill-link:hover{   color:#ff3333; }
.hlavni-menu a.fitness-link:hover{   color:#66cc66; }
body.tema-stoicismus .hlavni-menu a.stoicismus-link,
body.tema-redpill    .hlavni-menu a.redpill-link,
body.tema-fitness    .hlavni-menu a.fitness-link{ font-weight:bold; }

/* === BACK TO TOP === */
@media (max-width:768px){
  #hamburger{ display:flex; flex-direction:column; background:none; border:none; cursor:pointer; padding:.5rem; }
  #hamburger span{ width:25px; height:1.5px; background:#ff7E06; margin:4px 0; }
  .hlavni-menu ul{ display:none; flex-direction:column; width:auto; margin:0; padding:0; }
  .hlavni-menu.open>ul{ display:flex; }
  .hlavni-menu li.dropdown{ position:relative; }
  .hlavni-menu li .dropdown-menu{
    position:center; top:100%; left:0; transform:none; display:none; width:100%;
    background:#111; list-style:none; margin:0; padding:0; z-index:998;
  }
  .hlavni-menu li.open .dropdown-menu{ display:block; }
}
@media (max-width:768px){
  #back-to-top{
    position:fixed; bottom:16px; right:16px; width:34px; height:34px;
    background-color:#000; border:1.5px solid #ff7e00; border-radius:50%;
    color:#ff7e00; font-size:1.1rem; display:none; align-items:center; justify-content:center;
    z-index:999; cursor:pointer; transition:all .3s ease;
  }
  #back-to-top::before{ content:"↑"; display:block; line-height:1; }
  #back-to-top:hover{ background-color:#111; transform:scale(1.1); }
}
@media (min-width:769px){ #back-to-top{ display:none!important; } }
@media (min-width:769px){
  #back-to-top{
    position:fixed; bottom:30px; right:30px; width:40px; height:40px; background:#000;
    border:2px solid #ff7e00; border-radius:50%; display:none; align-items:center; justify-content:center;
    color:#ff7e00; font-size:1.2rem; cursor:pointer; z-index:1000; box-shadow:0 0 10px rgba(255,126,0,.4); transition:all .3s ease;
  }
  #back-to-top:hover{ background:#111; box-shadow:0 0 15px rgba(255,126,0,.8); }
  body.tema-stoicismus #back-to-top{ border-color:#B8860B; color:#B8860B; box-shadow:0 0 10px rgba(184,134,11,.4); }
  body.tema-stoicismus #back-to-top:hover{ box-shadow:0 0 15px rgba(184,134,11,.8); }
  body.tema-redpill #back-to-top{ border-color:#ff3333; color:#ff3333; box-shadow:0 0 10px rgba(255,51,51,.4); }
  body.tema-redpill #back-to-top:hover{ box-shadow:0 0 15px rgba(255,51,51,.8); }
  body.tema-fitness #back-to-top{ border-color:#66cc66; color:#66cc66; box-shadow:0 0 10px rgba(102,204,102,.4); }
  body.tema-fitness #back-to-top:hover{ box-shadow:0 0 15px rgba(102,204,102,.8); }
}

/* === FOOTER === */
.main-footer{ background-color:#000; padding:2rem 1rem; text-align:center; font-family:'Roboto',sans-serif; color:#f5f5f5; position:relative; z-index:2; }
.footer-wrapper{ max-width:680px; margin:0 auto; }
.footer-line{
  height:2px; width:100%; margin:0 auto 1.5rem auto;
  background:linear-gradient(to right,transparent,#ff7e00,transparent);
  animation:footerPulse 2.5s infinite ease-in-out; opacity:.7;
}
@keyframes footerPulse{ 0%,100%{opacity:.4} 50%{opacity:1} }
.footer-title{ margin-bottom:1.5rem; line-height:1.5; }
.footer-muted{ color:rgba(255,255,255,.8)!important; font-size:.85rem; font-weight:normal; text-transform:none; letter-spacing:.2px; }
.footer-brand{ font-family:'Roboto Condensed',sans-serif; font-weight:250; font-size:1.5rem; color:#ff7e00; font-style:normal; }
.footer-links{ display:flex; justify-content:center; gap:2rem; flex-wrap:wrap; margin-bottom:1.5rem; }
.footer-links a{ color:#fff; text-decoration:none; font-size:.95rem; display:flex; align-items:center; gap:.5rem; transition:color .3s ease; }
.footer-links a:hover{ color:#ff7e00; }
.footer-copy{ font-size:.85rem; color:#555; margin-top:.5rem; text-align:center; }
.footer-origin{ font-size:.85rem; color:#555; margin-top:1.2rem; font-style:italic; text-align:center; opacity:.9; }
.footer-slogan{ color:#888; font-style:italic; }
.footer-logo{ display:block; margin:1.5rem auto 0; text-align:center; opacity:.7; transition:opacity .3s ease; max-width:70px; animation:logoPulse 3s infinite ease-in-out; }
@keyframes logoPulse{ 0%,100%{opacity:.6;transform:scale(1)} 50%{opacity:1;transform:scale(1.03)} }
.footer-logo:hover{ opacity:1; }
.footer-logo img{ width:100%; height:auto; display:block; }
@media (max-width:480px){
  .footer-links{ flex-direction:column; gap:1rem; align-items:center; text-align:center; }
  .footer-line{ width:80%; }
}

/* Barvy footeru dle témat */
body.tema-stoicismus .footer-line{ background:linear-gradient(to right,transparent,#B8860B,transparent); }
body.tema-stoicismus .footer-brand,
body.tema-stoicismus .footer-links a:hover{ color:#B8860B; }
body.tema-stoicismus .footer-logo{ animation:stoicismusPulse 3s infinite ease-in-out; }
@keyframes stoicismusPulse{ 0%,100%{opacity:.6;transform:scale(1);filter:drop-shadow(0 0 2px #B8860B)} 50%{opacity:1;transform:scale(1.03);filter:drop-shadow(0 0 6px #B8860B)} }

body.tema-redpill .footer-line{ background:linear-gradient(to right,transparent,#cc0000,transparent); }
body.tema-redpill .footer-brand,
body.tema-redpill .footer-links a:hover{ color:#cc0000; }
body.tema-redpill .footer-logo{ animation:redpillPulse 3s infinite ease-in-out; }
@keyframes redpillPulse{ 0%,100%{opacity:.6;transform:scale(1);filter:drop-shadow(0 0 2px #cc0000)} 50%{opacity:1;transform:scale(1.03);filter:drop-shadow(0 0 6px #cc0000)} }

body.tema-fitness .footer-line{ background:linear-gradient(to right,transparent,#00cc44,transparent); }
body.tema-fitness .footer-brand,
body.tema-fitness .footer-links a:hover{ color:#00cc44; }
body.tema-fitness .footer-logo{ animation:fitnessPulse 3s infinite ease-in-out; }
@keyframes fitnessPulse{ 0%,100%{opacity:.6;transform:scale(1);filter:drop-shadow(0 0 2px #00cc44)} 50%{opacity:1;transform:scale(1.03);filter:drop-shadow(0 0 6px #00cc44)} }

/* === Newsletter box (homepage průhledný ponechán výše) === */
.newsletter-box{
  background:#111; color:#f5f5f5; text-align:center; padding:2.5rem 1.5rem; margin:3rem auto;
  border:1px solid #333; border-radius:8px; max-width:420px; font-family:'Roboto Condensed',system-ui,sans-serif;
  box-shadow:0 0 12px rgba(255,126,0,.08); animation:boxPulse 4s infinite ease-in-out; position:relative; z-index:3;
}
@keyframes boxPulse{ 0%,100%{ box-shadow:0 0 12px rgba(255,126,0,.1) } 50%{ box-shadow:0 0 18px rgba(255,126,0,.25) } }
.newsletter-box h2{ color:#ff7e00; font-size:2rem; font-weight:300; text-transform:uppercase; letter-spacing:1px; margin-bottom:.8rem; }
.newsletter-box p{ margin-bottom:2rem; font-size:1rem; line-height:1.6; color:#ccc; }
.newsletter-box p span{ display:block; margin-top:.3rem; color:#888; font-size:.95rem; }
.newsletter-form{ display:flex; flex-direction:column; gap:1rem; max-width:340px; margin:auto; }
.newsletter-form input[type="email"]{
  padding:.9rem; font-size:1rem; border-radius:4px; border:1px solid #555; background:#000; color:#f5f5f5;
  transition:border .3s ease, box-shadow .3s ease;
}
.newsletter-form input[type="email"]:focus{ border:1px solid #ff7e00; box-shadow:0 0 6px rgba(255,126,0,.4); outline:none; }
.newsletter-box .newsletter-form button{
  padding:1rem 1.5rem; background:#ff7e00; color:#000; font-weight:bold; font-size:1.2rem; text-transform:uppercase;
  border:none; border-radius:6px; cursor:pointer; transition:background .3s ease, transform .2s ease;
}
.newsletter-box .newsletter-form button:hover{ background:#ffa733; transform:scale(1.05); }
.newsletter-form input[type="text"]{ position:absolute; opacity:0; width:0; height:0; z-index:-1; pointer-events:none; clip:rect(0 0 0 0); clip-path:inset(50%); }
@media (max-width:600px){
  .newsletter-box{ padding:2rem 1rem; max-width:90%; }
  .newsletter-box h2{ font-size:1.6rem; }
}

/* Z-index jistoty + homepage úpravy (průhledný box + bez linky) */
.main-footer{ position:relative; z-index:2; }
.home .newsletter-box{ background:transparent!important; border:none!important; box-shadow:none!important; }

/* === MOBILNÍ QUALITY OF LIFE === */
@media (max-width:600px){
  html,body{ min-height:100dvh; }
  #newsletter{ scroll-margin-top:16px; }
}

/* === FIX: mobilní zarovnání boxů a nápisů (≤600px) === */
@media (max-width:600px){
  .categories{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:1rem !important;
    padding:1.5rem 1rem 3rem !important;
    justify-items:center !important;
    align-items:start !important;
  }
  .categories .cat{
    width:min(92%,340px) !important;
    max-width:340px !important;
    margin:0 !important;
    text-align:center !important;
    display:flex;
    flex-direction:column;
    gap:.5rem;
  }
  .categories .cat h2{ margin:.25rem 0 .35rem !important; }
  .categories .cat p{
    margin:0 0 .25rem !important;
    text-align:center !important;
  }
  .categories .cat *{ max-width:100% !important; }
}

/* === FIX: hero nadpis + podtitul i na mobilu === */
.hero{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:flex-start;
  text-align:center;
  width:100%;
}
.hero h1{
  display:block;
  margin:0 0 .4rem 0;
  line-height:1.1;
}
.hero .subtitle{
  display:block;
  margin:0;
  padding:0;
  text-align:center;
}
@media (max-width:600px){
  .hero{ padding-top:4.5rem; }
  .hero h1{ font-size:2.2rem; letter-spacing:.12rem; }
  .hero .subtitle{ font-size:1.05rem; }
}

/* === FOOTER: zarovnání textů na mobil/tablet === */
@media (max-width:900px){
  .main-footer,
  .main-footer .footer-wrapper,
  .main-footer .footer-links,
  .main-footer .footer-copy,
  .main-footer .footer-origin{
    text-align:center !important;
    justify-content:center !important;
    align-items:center !important;
  }
  .main-footer .footer-links{
    flex-direction:column;
    gap:.8rem;
  }
  /* Text pod STOPA TÝDNE na střed */
  .newsletter-box,
  .newsletter-box p,
  .newsletter-box h2{
    text-align:center !important;
    margin-left:auto !important;
    margin-right:auto !important;
  }
}

/* ========== Anti-save – CSS ========== */
/* obvyklé blokace: výběr, long-press menu na iOS, drag */
img.no-save,
.protect-media {
  -webkit-user-select: none;
  user-select: none;
  -webkit-touch-callout: none;
  -webkit-user-drag: none;
}

/* Volitelné: když máš obrázek, který NENÍ odkaz a nekliká se na něj,
   můžeš mu ručně přidat i pointer-events:none; ale defaultně to nedávám,
   aby to nerozbilo klikací obrázky. */
/* img.no-save:not([data-clickable="true"]) { pointer-events: none; } */

/* Pokud chceš tvrdší ochranu u některých bloků (nechytat long-press ani contextmenu),
   obal je kontejnerem s class .protect-media – JS níže to ošetří. */
.protect-media {
  position: relative;
}


/* ===== konec ===== */


