:root{
  --green-900:#0f3d27;
  --green-700:#1d6b45;
  --green-600:#258454;
  --green-500:#2f9e63;
  --green-50:#eaf3ed;
  --ink:#14181a;
  --slate:#5c6b6f;
  --line:#e2e6e4;
  --bg:#f6f7f6;
  --white:#fff;
  --radius:16px;
  --radius-lg:22px;
  --maxw:1120px;
  /* vrstvené stíny působí měkčeji než jeden tvrdý */
  --stin-1:0 1px 2px rgba(15,61,39,.06), 0 4px 12px rgba(15,61,39,.05);
  --stin-2:0 2px 4px rgba(15,61,39,.06), 0 12px 32px rgba(15,61,39,.10);
  --stin-3:0 4px 8px rgba(15,61,39,.07), 0 24px 56px rgba(15,61,39,.13);
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;scroll-padding-top:80px}
body{
  font-family:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif;
  color:var(--ink);background:var(--white);line-height:1.6;-webkit-font-smoothing:antialiased;
}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 24px}
.eyebrow{
  display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:600;
  letter-spacing:.08em;text-transform:uppercase;color:var(--green-600);margin-bottom:18px;
}
.eyebrow::before{content:"";width:26px;height:2px;background:var(--green-500)}
h1,h2,h3{line-height:1.15;letter-spacing:-.02em;font-weight:800}
h2{font-size:clamp(28px,4vw,40px);margin-bottom:14px}
h3{font-size:19px;font-weight:700;letter-spacing:-.01em}
.lead{color:var(--slate);font-size:17px;max-width:56ch}
section{padding:88px 0}
.alt{background:var(--bg)}

/* ---------- HEADER ---------- */
header{
  position:sticky;top:0;z-index:50;background:rgba(255,255,255,.9);
  backdrop-filter:saturate(180%) blur(12px);border-bottom:1px solid var(--line);
}
.bar{display:flex;align-items:center;justify-content:space-between;height:70px}
.logo{display:flex;align-items:center;gap:11px}
.logo .bolt{
  width:34px;height:34px;border-radius:9px;background:var(--green-700);
  display:grid;place-items:center;color:#fff;flex-shrink:0;
}
.logo b{display:block;font-weight:800;font-size:18px;letter-spacing:-.02em;line-height:1.2}
.logo small{
  display:block;font-size:11px;font-weight:600;letter-spacing:.1em;
  text-transform:uppercase;color:var(--green-700);
}
.bar-right{display:flex;align-items:center;gap:14px}
.tel-link{
  display:inline-flex;align-items:center;gap:8px;font-weight:600;font-size:15px;
  padding:9px 16px;border:1px solid var(--line);border-radius:999px;transition:.2s;
}
.tel-link:hover{border-color:var(--green-500);color:var(--green-700)}
.burger{
  width:44px;height:44px;border:1px solid var(--line);border-radius:12px;background:#fff;
  display:grid;place-items:center;gap:5px;cursor:pointer;transition:.2s;padding:12px;
}
.burger:hover{border-color:var(--green-500)}
.burger i{display:block;width:100%;height:2px;background:var(--ink);border-radius:2px;transition:.25s}
body.nav-open .burger i:nth-child(1){transform:translateY(7px) rotate(45deg)}
body.nav-open .burger i:nth-child(2){opacity:0}
body.nav-open .burger i:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

/* ---------- OVERLAY NAV ---------- */
/* Překryv se přizpůsobuje výšce okna – s osmi položkami je právě výška
   ta veličina, které je nedostatek. Když ani to nestačí, obsah roluje. */
.nav{
  position:fixed;inset:0;z-index:40;background:var(--green-900);
  display:flex;flex-direction:column;align-items:center;justify-content:center;
  gap:28px;opacity:0;visibility:hidden;transition:.3s;
  overflow-y:auto;padding:86px 24px 28px;
}
body.nav-open .nav{opacity:1;visibility:visible}
.nav ul{list-style:none;text-align:center}
.nav li{margin:clamp(2px,.7vh,7px) 0;opacity:0;transform:translateY(14px);transition:.4s}
body.nav-open .nav li{opacity:1;transform:none}
body.nav-open .nav li:nth-child(1){transition-delay:.06s}
body.nav-open .nav li:nth-child(2){transition-delay:.11s}
body.nav-open .nav li:nth-child(3){transition-delay:.16s}
body.nav-open .nav li:nth-child(4){transition-delay:.21s}
body.nav-open .nav li:nth-child(5){transition-delay:.26s}
body.nav-open .nav li:nth-child(6){transition-delay:.31s}
body.nav-open .nav li:nth-child(7){transition-delay:.36s}
.nav a{
  color:#fff;font-size:clamp(17px,3.4vh,28px);font-weight:800;letter-spacing:-.03em;
  display:inline-block;padding:5px 10px;transition:.2s;
}
.nav a:hover{color:var(--green-500)}
/* Patička je běžná součást toku, ne absolutně umístěná – jinak by se
   při odrolování překryvu posunula přes položky menu. */
.nav .nav-foot{
  text-align:center;color:rgba(255,255,255,.6);font-size:13.5px;flex:none;
}
.nav .nav-foot a{font-size:14px;font-weight:500;color:#fff}

/* ---------- HERO ---------- */
.hero{
  background:linear-gradient(160deg,var(--green-900) 0%,#17543a 55%,var(--green-700) 100%);
  color:#fff;padding:96px 0 104px;position:relative;overflow:hidden;
}
.hero::after{
  content:"";position:absolute;right:-140px;top:-100px;width:560px;height:560px;
  background:radial-gradient(circle,rgba(47,158,99,.35),transparent 65%);
}
.hero-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:56px;align-items:center;position:relative;z-index:1}
.badge{
  display:inline-flex;align-items:center;gap:8px;background:rgba(255,255,255,.12);
  border:1px solid rgba(255,255,255,.2);color:#fff;padding:7px 14px;border-radius:999px;
  font-size:13.5px;font-weight:600;margin-bottom:22px;
}
.hero h1{font-size:clamp(34px,5.2vw,54px);margin-bottom:20px}
.hero p{font-size:18px;color:rgba(255,255,255,.82);max-width:48ch;margin-bottom:32px}
.cta-row{display:flex;gap:12px;flex-wrap:wrap}
.btn{
  display:inline-flex;align-items:center;gap:9px;padding:14px 24px;border-radius:999px;
  font-weight:600;font-size:16px;transition:.2s;border:1px solid transparent;
}
.btn-primary{background:#fff;color:var(--green-900)}
.btn-primary:hover{transform:translateY(-2px);box-shadow:0 10px 28px rgba(0,0,0,.26)}
.btn-ghost{border-color:rgba(255,255,255,.35);color:#fff}
.btn-ghost:hover{background:rgba(255,255,255,.12)}
.hero-card{
  background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.16);
  border-radius:20px;padding:8px;
}
.portrait{
  aspect-ratio:4/5;border-radius:14px;overflow:hidden;background:rgba(255,255,255,.06);
}
.portrait img{width:100%;height:100%;object-fit:cover;object-position:50% 22%}
.hero-facts{display:flex;gap:0;margin-top:44px;border-top:1px solid rgba(255,255,255,.18);padding-top:26px;position:relative;z-index:1}
.hero-facts div{flex:1}
.hero-facts strong{display:block;font-size:26px;font-weight:800}
.hero-facts span{font-size:14px;color:rgba(255,255,255,.7)}

/* ---------- SERVICES ---------- */
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:44px}
.card{
  background:var(--white);border:1px solid rgba(226,230,228,.8);border-radius:var(--radius-lg);
  padding:28px 26px;box-shadow:var(--stin-1);
  transition:transform .25s cubic-bezier(.4,0,.2,1),box-shadow .25s,border-color .25s;
}
.card:hover{
  border-color:rgba(47,158,99,.45);transform:translateY(-4px);box-shadow:var(--stin-2);
}
.card .ico{
  width:42px;height:42px;border-radius:11px;background:var(--green-50);color:var(--green-700);
  display:grid;place-items:center;margin-bottom:16px;
}
.card p{color:var(--slate);font-size:15px;margin-top:7px}
.price{
  display:inline-block;margin-top:14px;font-size:14px;font-weight:600;color:var(--green-700);
  background:var(--green-50);padding:5px 12px;border-radius:999px;
}
.note{margin-top:26px;font-size:14.5px;color:var(--slate);display:flex;gap:10px;align-items:flex-start}

/* ---------- ABOUT ---------- */
.about-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:56px;align-items:center}
.about-photo{
  aspect-ratio:1/1;border-radius:var(--radius);overflow:hidden;background:var(--bg);
}
.about-photo img{width:100%;height:100%;object-fit:cover}
.about p{color:var(--slate);margin-bottom:16px}
.about p strong{color:var(--ink)}
.chips{margin-top:28px;display:grid;grid-template-columns:1fr 1fr;gap:26px}
.chips h4{font-size:13px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--green-700);margin-bottom:12px}
.chips ul{list-style:none;display:flex;flex-wrap:wrap;gap:7px}
.chips li{
  font-size:13.5px;font-weight:500;color:var(--ink);background:var(--bg);
  border:1px solid var(--line);padding:5px 12px;border-radius:999px;
}
.politics{
  margin-top:26px;border-left:3px solid var(--green-500);background:var(--green-50);
  padding:18px 22px;border-radius:0 var(--radius) var(--radius) 0;
}
.politics h4{font-size:15px;font-weight:700;margin-bottom:5px}
.politics p{font-size:14.5px;color:var(--slate);margin:0}

/* ---------- TIMELINE ---------- */
.timeline{margin-top:44px;position:relative;padding-left:26px}
.timeline::before{content:"";position:absolute;left:5px;top:8px;bottom:8px;width:2px;background:var(--line)}
.job{position:relative;padding-bottom:30px}
.job:last-child{padding-bottom:0}
.job::before{
  content:"";position:absolute;left:-26px;top:7px;width:12px;height:12px;border-radius:50%;
  background:#fff;border:3px solid var(--green-500);
}
.job .when{font-size:13.5px;font-weight:600;color:var(--green-700);letter-spacing:.02em}
.job h3{margin:3px 0 4px}
.job .role{font-size:15px;font-weight:600;color:var(--slate)}
.job p{font-size:15px;color:var(--slate);margin-top:5px}
.edu{margin-top:40px;display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.edu .card p{margin-top:4px}

/* ---------- GALLERY ---------- */
.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:44px}
.shot{
  aspect-ratio:4/3;border-radius:var(--radius-lg);background:var(--bg);border:0;padding:0;
  overflow:hidden;cursor:zoom-in;display:block;position:relative;box-shadow:var(--stin-1);
  transition:transform .3s cubic-bezier(.4,0,.2,1),box-shadow .3s;
}
.shot:hover{transform:translateY(-3px);box-shadow:var(--stin-3)}
.shot img{width:100%;height:100%;object-fit:cover;transition:.35s}
.shot:hover img{transform:scale(1.05)}
.shot::after{
  content:"";position:absolute;inset:0;box-shadow:inset 0 0 0 1px rgba(0,0,0,.06);
  border-radius:var(--radius-lg);transition:.2s;
}
.shot:hover::after{box-shadow:inset 0 0 0 2px var(--green-500)}
.gallery-rest{margin-top:16px}
[hidden]{display:none!important}
.gal-more{text-align:center;margin-top:32px}
.btn-outline{
  border-color:var(--line);color:var(--ink);background:#fff;cursor:pointer;
  font-family:inherit;font-size:16px;
}
.btn-outline:hover{border-color:var(--green-500);color:var(--green-700)}
.btn-outline .count{
  font-size:13px;font-weight:600;color:var(--green-700);background:var(--green-50);
  padding:3px 10px;border-radius:999px;
}

/* ---------- LIGHTBOX ---------- */
.lb{
  position:fixed;inset:0;z-index:60;background:rgba(8,20,14,.94);
  display:none;align-items:center;justify-content:center;padding:32px;
}
.lb.open{display:flex}
.lb img{max-width:100%;max-height:88vh;border-radius:10px;object-fit:contain}
.lb-close,.lb-prev,.lb-next{
  position:absolute;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.2);
  color:#fff;width:48px;height:48px;border-radius:50%;cursor:pointer;font-size:22px;
  display:grid;place-items:center;transition:.2s;
}
.lb-close:hover,.lb-prev:hover,.lb-next:hover{background:rgba(255,255,255,.22)}
.lb-close{top:24px;right:24px}
.lb-prev{left:24px;top:50%;transform:translateY(-50%)}
.lb-next{right:24px;top:50%;transform:translateY(-50%)}
.lb-count{position:absolute;bottom:24px;left:0;right:0;text-align:center;color:rgba(255,255,255,.65);font-size:14px}

/* ---------- PROCESS ---------- */
.steps{display:grid;grid-template-columns:repeat(5,1fr);gap:14px;margin-top:44px}
.step{
  background:#fff;border:1px solid rgba(226,230,228,.8);border-radius:var(--radius-lg);
  padding:24px 22px;box-shadow:var(--stin-1);transition:transform .25s,box-shadow .25s;
}
.step:hover{transform:translateY(-3px);box-shadow:var(--stin-2)}
.step .num{
  width:32px;height:32px;border-radius:50%;background:var(--green-700);color:#fff;
  display:grid;place-items:center;font-weight:700;font-size:14px;margin-bottom:14px;
}
.step h3{font-size:16px}
.step p{font-size:14px;color:var(--slate);margin-top:5px}

/* ---------- CONTACT ---------- */
.contact{background:var(--green-900);color:#fff;padding:88px 0}
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center}
.contact h2{color:#fff}
.contact .lead{color:rgba(255,255,255,.75)}
.contact-list{list-style:none;margin-top:30px}
.contact-list li{display:flex;align-items:center;gap:14px;padding:14px 0;border-bottom:1px solid rgba(255,255,255,.12)}
.contact-list .ico{
  width:42px;height:42px;border-radius:11px;background:rgba(255,255,255,.1);
  display:grid;place-items:center;flex-shrink:0;
}
.contact-list small{display:block;font-size:13px;color:rgba(255,255,255,.6)}
.contact-list b{font-size:17px;font-weight:600}
.contact-box{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.14);border-radius:20px;padding:34px}
.contact-box h3{margin-bottom:8px}
.contact-box p{color:rgba(255,255,255,.7);font-size:15px;margin-bottom:22px}

/* ---------- FOOTER ---------- */
footer{background:#0b2b1c;color:rgba(255,255,255,.6);padding:30px 0;font-size:14px}
.foot{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;align-items:center}
footer a{color:#fff;font-weight:500}
footer a:hover{color:var(--green-500)}

/* ---------- RESPONSIVE ---------- */
@media(max-width:900px){
  section{padding:64px 0}
  .hero{padding:72px 0 80px}
  .hero-grid,.about-grid,.contact-grid,.chips{grid-template-columns:1fr;gap:36px}
  .hero-card{max-width:320px}
  .cards,.gallery{grid-template-columns:repeat(2,1fr)}
  .steps{grid-template-columns:repeat(2,1fr)}
  .edu{grid-template-columns:1fr}
  .tel-link span{display:none}
}
@media(max-width:600px){
  .cards,.gallery,.steps{grid-template-columns:1fr}
  .hero-facts{flex-wrap:wrap;gap:20px}
  .hero-facts div{flex:0 0 45%}
}

/* ---------- SAMOSTATNÁ STRÁNKA GALERIE ---------- */
.page-head{background:var(--green-900);color:#fff;padding:56px 0 48px}
.page-head .eyebrow{color:var(--green-500)}
.page-head h1{font-size:clamp(30px,4.4vw,44px);margin-bottom:12px}
.page-head p{color:rgba(255,255,255,.75);font-size:17px;max-width:60ch}
.back-row{margin-bottom:22px}
.back-link{
  display:inline-flex;align-items:center;gap:8px;font-size:14.5px;font-weight:600;
  color:rgba(255,255,255,.8);transition:.2s;
}
.back-link:hover{color:#fff}
.back-link svg{transition:.2s}
.back-link:hover svg{transform:translateX(-3px)}
.gallery-page{padding:56px 0 88px}
.gallery-page .gallery{grid-template-columns:repeat(4,1fr);margin-top:0}
.gal-foot{
  margin-top:56px;padding-top:36px;border-top:1px solid var(--line);
  display:flex;flex-wrap:wrap;gap:18px;align-items:center;justify-content:space-between;
}
.gal-foot p{color:var(--slate);font-size:15px;max-width:46ch}
@media(max-width:900px){
  .gallery-page .gallery{grid-template-columns:repeat(2,1fr)}
  .gallery-page{padding:40px 0 64px}
}
@media(max-width:600px){
  .gallery-page .gallery{grid-template-columns:1fr}
}

/* ---------- PŮSOBNOST (lokální SEO) ---------- */
/* Krátká sekce – na plnou šířku by text plaval v prázdnu, proto na střed. */
#pusobnost .wrap{max-width:720px;text-align:center}
#pusobnost .lead{margin:0 auto}
#pusobnost .eyebrow,#pusobnost .cta-row{justify-content:center}
#pusobnost .cta-row{display:flex}
.lb-cap{
  position:absolute;bottom:56px;left:50%;transform:translateX(-50%);
  max-width:min(760px,86vw);text-align:center;color:#fff;font-size:15px;line-height:1.5;
  background:rgba(0,0,0,.45);padding:9px 18px;border-radius:10px;
}
@media(max-width:600px){ .lb-cap{font-size:14px;bottom:52px} }

/* ---------- KNIHA ---------- */
.kniha{
  background:linear-gradient(155deg,var(--green-900) 0%,#164a31 60%,var(--green-700) 100%);
  color:#fff;position:relative;overflow:hidden;
}
.kniha::after{
  content:"";position:absolute;left:-160px;bottom:-180px;width:520px;height:520px;
  background:radial-gradient(circle,rgba(47,158,99,.32),transparent 65%);pointer-events:none;
}
.kniha-grid{
  display:grid;grid-template-columns:auto 1fr;gap:64px;align-items:center;
  position:relative;z-index:1;
}
.kniha-obal{
  width:280px;flex-shrink:0;border-radius:6px;overflow:hidden;
  box-shadow:0 24px 60px rgba(0,0,0,.45),0 2px 0 rgba(255,255,255,.12);
  transform:rotate(-2.5deg);transition:.35s;
}
.kniha-obal:hover{transform:rotate(0) translateY(-6px)}
.kniha-obal img{width:100%;height:auto;display:block}
.kniha h2{color:#fff}
.kniha .eyebrow{color:var(--green-500)}
.kniha p{color:rgba(255,255,255,.8);margin-bottom:16px;max-width:54ch}
.kniha-autori{
  font-size:15px;font-weight:600;color:#fff;margin-bottom:20px;
  padding-bottom:20px;border-bottom:1px solid rgba(255,255,255,.16);
}
.kniha-autori span{color:rgba(255,255,255,.6);font-weight:500}
@media(max-width:900px){
  .kniha-grid{grid-template-columns:1fr;gap:36px;justify-items:start}
  .kniha-obal{width:210px}
}

/* ---------- POSTUPNÉ ODKRÝVÁNÍ PŘI SCROLLU ---------- */
/* Třídu js-reveal přidá JavaScript. Bez něj zůstane všechno normálně
   viditelné — animace nesmí být podmínkou pro přečtení webu. */
@media (prefers-reduced-motion: no-preference){
  .js-reveal .reveal{
    opacity:0;transform:translateY(20px);
    transition:opacity .55s ease-out,transform .55s ease-out;
  }
  .js-reveal .reveal.videt{opacity:1;transform:none}
}

/* Při tisku nesmí zůstat nic schované – tiskne se bez JavaScriptu
   a bez scrollování, takže by neodkryté bloky vyšly prázdné. */
@media print{
  .js-reveal .reveal{opacity:1!important;transform:none!important}
  header,.nav,.burger{display:none}
}
.kniha-stav{
  margin-bottom:18px!important;font-size:13.5px;
  background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.22);
}

/* ---------- MODERNIZACE: FOKUS, HLAVIČKA, DETAILY ---------- */

/* Viditelný fokus pro ovládání klávesnicí. Chybějící fokus je jedna
   z nejčastějších přístupnostních chyb — a myš to nijak neruší. */
:focus-visible{
  outline:3px solid var(--green-500);outline-offset:3px;border-radius:6px;
}
.contact :focus-visible,.hero :focus-visible,.kniha :focus-visible{outline-color:#fff}

/* Hlavička dostane stín až po odscrollování, ne hned na začátku */
header{transition:box-shadow .3s,background .3s}
body.scrolled header{box-shadow:0 1px 0 rgba(15,61,39,.06),0 8px 28px rgba(15,61,39,.07)}

/* Vzdušnější sekce a čitelnější řádkování nadpisů */
section{padding:104px 0}
.lead{font-size:17.5px;line-height:1.65}

/* Cenovka: jemný přechod místo ploché barvy */
.price{
  background:linear-gradient(135deg,var(--green-50),#dcece2);
  border:1px solid rgba(47,158,99,.18);
}

/* Karta kontaktu a hero karta – zaoblení sjednoceno */
.contact-box,.hero-card{border-radius:var(--radius-lg)}

/* Fotka u sekce O mě */
.about-photo{border-radius:var(--radius-lg);box-shadow:var(--stin-2)}

@media(max-width:900px){
  section{padding:72px 0}
}

/* Název hnutí verzálkami. Řešeno stylem, ne přepsáním textu – čtečky
   pak jméno přečtou normálně a při kopírování se zachová běžný zápis. */
.hnuti{
  text-transform:uppercase;letter-spacing:.045em;font-size:.93em;
  color:var(--ink);
}

/* LinkedIn – ikona má sedět na účaří s textem tlačítka */
.btn-li svg{flex:none}

/* Odkaz na LinkedIn pod časovou osou */
.zivotopis{margin-top:30px;font-size:15px;color:var(--slate)}
.zivotopis a{
  display:inline-flex;align-items:center;gap:7px;font-weight:600;color:var(--green-700);
  border-bottom:1px solid transparent;transition:border-color .2s;
}
.zivotopis a:hover{border-bottom-color:var(--green-500)}
.zivotopis svg{flex:none}


/* ---------- ODKAZY NA SÍTĚ ---------- */
.socialy{display:flex;gap:10px;margin-top:22px}
.socialy a{
  width:42px;height:42px;border-radius:12px;display:grid;place-items:center;
  background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.22);color:#fff;
  transition:background .2s,border-color .2s,transform .2s;
}
.socialy a:hover{background:rgba(255,255,255,.2);border-color:rgba(255,255,255,.45);transform:translateY(-2px)}
.socialy svg{width:19px;height:19px}

/* ---------- RECENZE ---------- */
.recenze{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:44px}
.recenze-karta{
  margin:0;background:#fff;border:1px solid rgba(226,230,228,.8);border-radius:var(--radius-lg);
  padding:26px 24px;box-shadow:var(--stin-1);display:flex;flex-direction:column;
}
.hvezdy{color:#e8a33d;font-size:16px;letter-spacing:.12em;margin-bottom:14px}
.recenze-karta blockquote{margin:0;font-size:15.5px;line-height:1.62;color:var(--ink);flex:1}
.recenze-karta blockquote::before{content:"„"}
.recenze-karta blockquote::after{content:"“"}
.recenze-karta figcaption{
  margin-top:18px;padding-top:16px;border-top:1px solid var(--line);
  font-size:14px;font-weight:600;color:var(--slate);
}
.recenze-vic{margin-top:28px;font-size:15px}
.recenze-vic a{
  font-weight:600;color:var(--green-700);border-bottom:1px solid transparent;transition:border-color .2s;
}
.recenze-vic a:hover{border-bottom-color:var(--green-500)}
@media(max-width:900px){ .recenze{grid-template-columns:1fr} }


/* ---------- MENU ---------- */
/* Jediné menu na všech šířkách: hamburger a celoobrazovkový překryv.
   Překryv leží MIMO hlavičku — backdrop-filter hlavičky by mu rozbil
   position:fixed a smrsknul ho do výšky lišty. */
