
/* ==========================================================
   v51i – konkrétní opravy podle screenshotu:
   logo větší bez zvětšení menu pruhu, menu/CTA zarovnané,
   čitelný hero text, viditelný telefon, pryč odporná zelená,
   čitelná patička, hover stavy a základní SEO-friendly čistota.
   ========================================================== */

:root{
  --zp-bg:#f7f1df;
  --zp-bg-soft:#fbf7ea;
  --zp-card:#fffdf5;
  --zp-ink:#172018;
  --zp-text:#26342b;
  --zp-muted:#657065;
  --zp-sage:#dfe8d3;
  --zp-sage-2:#eef4e7;
  --zp-sage-3:#cbd9bf;
  --zp-gold:#d8b95f;
  --zp-gold-2:#f0dc91;
  --zp-line:rgba(42,55,45,.14);
  --zp-shadow:0 18px 45px rgba(33,42,34,.10);
}

/* Celkově méně jedovatá zelená */
html body{
  background:var(--zp-bg)!important;
  color:var(--zp-text)!important;
}
html body main{
  background:linear-gradient(180deg,#f7f1df 0%,#fbf7ea 45%,#f3eddb 100%)!important;
}
html body h1,
html body h2,
html body h3,
html body h4{
  color:var(--zp-ink)!important;
}
html body p,
html body li{
  color:var(--zp-muted)!important;
}

/* HEADER – pruh se nezvětšuje, logo může přesahovat opticky */
html body .topbar{
  background:#171914!important;
  color:#fff!important;
  min-height:32px!important;
}
html body .topbar *,
html body .topbar a{color:#fff!important;}

html body .site-header,
html body .site-header--overlay,
html body .site-header.is-scrolled,
html body.is-home .site-header,
html body.is-inner .site-header{
  background:rgba(255,253,246,.97)!important;
  background-image:linear-gradient(180deg,#fffdf7,#f2ead6)!important;
  color:var(--zp-ink)!important;
  border-bottom:1px solid rgba(42,55,45,.12)!important;
  box-shadow:0 14px 34px rgba(32,38,30,.10)!important;
  backdrop-filter:blur(10px)!important;
  -webkit-backdrop-filter:blur(10px)!important;
}

/* NEMĚNIT výšku pruhu – jen zvětšit logo vizuálně */
html body .nav-wrap{
  min-height:78px!important;
  height:78px!important;
  align-items:center!important;
  overflow:visible!important;
  gap:24px!important;
}
html body .brand{
  display:flex!important;
  align-items:center!important;
  min-width:250px!important;
  height:78px!important;
  overflow:visible!important;
  flex-shrink:0!important;
}
html body .brand img{
  display:block!important;
  width:auto!important;
  height:104px!important;
  max-height:104px!important;
  max-width:360px!important;
  object-fit:contain!important;
  margin-top:-12px!important;
  margin-bottom:-14px!important;
  filter:drop-shadow(0 8px 14px rgba(0,0,0,.10))!important;
}

/* Menu – žádné rozbité odskočení */
html body .main-nav{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:4px!important;
  min-height:78px!important;
}
html body .site-header .main-nav > a,
html body .site-header .nav-dropdown > a{
  height:42px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:0 13px!important;
  border-radius:999px!important;
  color:var(--zp-ink)!important;
  font-weight:850!important;
  font-size:14px!important;
  line-height:1!important;
  text-decoration:none!important;
  opacity:1!important;
  text-shadow:none!important;
  transition:background .18s ease,color .18s ease,transform .18s ease,box-shadow .18s ease!important;
}
html body .site-header .main-nav > a:hover,
html body .site-header .nav-dropdown > a:hover,
html body .site-header .main-nav .is-active{
  background:var(--zp-sage)!important;
  color:#17301f!important;
  transform:translateY(-1px)!important;
  box-shadow:0 8px 18px rgba(40,55,38,.08)!important;
}

/* CTA tlačítko v menu – spravit velikost a čitelnost */
html body .site-header .nav-cta,
html body .site-header .main-nav > .nav-cta{
  height:46px!important;
  min-height:46px!important;
  padding:0 21px!important;
  border-radius:999px!important;
  background:linear-gradient(180deg,var(--zp-gold-2),var(--zp-gold))!important;
  color:#17150d!important;
  font-weight:950!important;
  box-shadow:0 12px 26px rgba(180,135,45,.28)!important;
  border:1px solid rgba(120,86,20,.16)!important;
}
html body .site-header .nav-cta:hover,
html body .site-header .main-nav > .nav-cta:hover{
  transform:translateY(-2px)!important;
  box-shadow:0 16px 32px rgba(180,135,45,.36)!important;
  filter:saturate(1.05)!important;
}

/* Dropdown čitelnost */
html body .site-header .mega-menu{
  background:#fffdf6!important;
  background-image:linear-gradient(180deg,#fffdf6,#f4eedc)!important;
  border:1px solid var(--zp-line)!important;
  box-shadow:0 28px 80px rgba(0,0,0,.18)!important;
}
html body .site-header .mega-menu,
html body .site-header .mega-menu *,
html body .site-header .mega-menu a,
html body .site-header .mega-menu strong,
html body .site-header .mega-menu span{
  color:var(--zp-ink)!important;
  opacity:1!important;
  text-shadow:none!important;
}
html body .site-header .mega-menu a:hover{
  background:#f7f0dc!important;
  border-color:rgba(216,185,95,.55)!important;
}

/* HERO – průhledná karta je teď čitelná */
html body .hero-card,
html body .hero .glass,
html body .hero__card,
html body .hero-content,
html body .hero-panel{
  background:rgba(255,253,246,.84)!important;
  border:1px solid rgba(255,255,255,.70)!important;
  box-shadow:0 28px 90px rgba(0,0,0,.24)!important;
  backdrop-filter:blur(16px) saturate(1.08)!important;
  -webkit-backdrop-filter:blur(16px) saturate(1.08)!important;
}
html body .hero h1,
html body .hero-card h1,
html body .hero__card h1,
html body .hero-content h1,
html body .hero-panel h1{
  color:#fffdf4!important;
  text-shadow:0 4px 18px rgba(0,0,0,.70),0 1px 2px rgba(0,0,0,.90)!important;
  letter-spacing:-.055em!important;
}
html body .hero p,
html body .hero-card p,
html body .hero__card p,
html body .hero-content p,
html body .hero-panel p{
  color:#fff8e7!important;
  text-shadow:0 2px 10px rgba(0,0,0,.62)!important;
  font-weight:650!important;
}

/* Hero tlačítka + telefon nesmí zmizet */
html body .hero a,
html body .hero button,
html body .floating-phone,
html body .phone-float,
html body .call-float,
html body a[href^="tel:"]{
  transition:transform .18s ease,box-shadow .18s ease,background .18s ease,color .18s ease!important;
}
html body .hero .btn,
html body .hero .btn-primary,
html body .hero .btn-soft,
html body .hero a[href^="tel:"],
html body .hero .phone-link{
  color:#16150f!important;
  background:linear-gradient(180deg,var(--zp-gold-2),var(--zp-gold))!important;
  border:1px solid rgba(120,86,20,.18)!important;
  box-shadow:0 12px 28px rgba(0,0,0,.22)!important;
  text-shadow:none!important;
  opacity:1!important;
}
html body .hero .btn:hover,
html body .hero .btn-primary:hover,
html body .hero .btn-soft:hover,
html body .hero a[href^="tel:"]:hover{
  transform:translateY(-2px)!important;
  box-shadow:0 18px 36px rgba(0,0,0,.28)!important;
}
html body .floating-phone,
html body .phone-float,
html body .call-float{
  background:linear-gradient(180deg,var(--zp-gold-2),var(--zp-gold))!important;
  color:#16150f!important;
  border:1px solid rgba(120,86,20,.18)!important;
  box-shadow:0 14px 32px rgba(32,30,20,.22)!important;
}
html body .floating-phone *,
html body .phone-float *,
html body .call-float *{
  color:#16150f!important;
  fill:#16150f!important;
}

/* Pryč malinké žluté nadpisy v hero/sekcích */
html body .eyebrow,
html body .section-kicker,
html body .kicker,
html body .overline{
  display:none!important;
}

/* Karty, služby, odkazy – profesionálnější hover */
html body .card,
html body .service-card,
html body .ref-card,
html body .article-list article,
html body .content-card,
html body .side-card,
html body .process-card,
html body .audience-card{
  background:var(--zp-card)!important;
  border:1px solid var(--zp-line)!important;
  box-shadow:var(--zp-shadow)!important;
  transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease,background .2s ease!important;
}
html body a.card:hover,
html body .service-card:hover,
html body .ref-card:hover,
html body .article-list article:hover,
html body .audience-card:hover,
html body .process-card:hover{
  transform:translateY(-4px)!important;
  box-shadow:0 26px 60px rgba(33,42,34,.16)!important;
  border-color:rgba(216,185,95,.55)!important;
}
html body a:not(.brand):not(.nav-cta):not(.btn):not(.btn-primary):not(.btn-soft):hover{
  color:#8a6a18!important;
}

/* Tagy a pilulky – bez jedovaté zelené */
html body .tag,
html body .pill,
html body .chip,
html body .service-card span,
html body .scope-chips span,
html body .meta-pill,
html body .city-pill,
html body .region-pill{
  background:#fff6dc!important;
  border-color:rgba(216,185,95,.45)!important;
  color:#2f3025!important;
}

/* Města / působnost – odstranit odpornou zelenou */
html body .region-section,
html body .service-area,
html body .locations-section,
html body .coverage-section,
html body .area-section,
html body section[class*="region"],
html body section[class*="pusob"],
html body section[class*="location"],
html body section[class*="area"]{
  background:linear-gradient(135deg,#fff7e4 0%,#eef4e7 100%)!important;
  color:var(--zp-ink)!important;
}
html body .region-section *,
html body .service-area *,
html body .locations-section *,
html body .coverage-section *,
html body .area-section *,
html body section[class*="region"] *,
html body section[class*="pusob"] *,
html body section[class*="location"] *,
html body section[class*="area"] *{
  color:var(--zp-ink)!important;
}
html body .region-section p,
html body .service-area p,
html body .locations-section p,
html body .coverage-section p,
html body .area-section p,
html body section[class*="region"] p,
html body section[class*="pusob"] p,
html body section[class*="location"] p,
html body section[class*="area"] p{
  color:#516050!important;
}
html body .region-section .city,
html body .service-area .city,
html body .locations-section .city,
html body .coverage-section .city,
html body .area-section .city,
html body section[class*="region"] a,
html body section[class*="pusob"] a,
html body section[class*="location"] a,
html body section[class*="area"] a{
  background:#fffdf5!important;
  color:#243127!important;
  border:1px solid rgba(216,185,95,.38)!important;
  box-shadow:0 10px 22px rgba(33,42,34,.08)!important;
}

/* Footer – čitelný */
html body .site-footer,
html body footer{
  background:#1b251d!important;
  background-image:linear-gradient(180deg,#233225,#151d17)!important;
  color:#fff8e8!important;
}
html body .site-footer *,
html body footer *{
  color:#fff8e8!important;
  opacity:1!important;
}
html body .site-footer p,
html body footer p,
html body .site-footer li,
html body footer li{
  color:rgba(255,248,232,.82)!important;
}
html body .site-footer a,
html body footer a{
  color:#fff8e8!important;
  text-decoration:none!important;
}
html body .site-footer a:hover,
html body footer a:hover{
  color:#f0dc91!important;
}
html body .site-footer .footer-logo,
html body footer .footer-logo,
html body .site-footer img[src*="logo"],
html body footer img[src*="logo"]{
  background:rgba(255,253,246,.96)!important;
  border-radius:16px!important;
  padding:8px!important;
  max-width:170px!important;
  height:auto!important;
}

/* Formulář – skrytý honeypot web */
html body input[name="web"],
html body label:has(input[name="web"]),
html body .honeypot,
html body .hp-field{
  position:absolute!important;
  left:-9999px!important;
  top:auto!important;
  width:1px!important;
  height:1px!important;
  overflow:hidden!important;
  opacity:0!important;
  pointer-events:none!important;
}

/* Mobil */
@media(max-width:1100px){
  html body .nav-wrap{height:auto!important;min-height:76px!important;}
  html body .brand{min-width:220px!important;height:76px!important;}
  html body .brand img{height:88px!important;max-height:88px!important;max-width:300px!important;margin-top:-8px!important;margin-bottom:-10px!important;}
  html body .site-header .main-nav > a,
  html body .site-header .nav-dropdown > a{font-size:13px!important;padding:0 9px!important;}
}
@media(max-width:900px){
  html body .brand{min-width:0!important;}
  html body .brand img{height:72px!important;max-height:72px!important;max-width:250px!important;}
  html body .main-nav{
    background:#fffdf6!important;
    color:var(--zp-ink)!important;
  }
  html body .main-nav *,
  html body .main-nav a{
    color:var(--zp-ink)!important;
  }
}
@media(max-width:640px){
  html body .brand img{height:58px!important;max-height:58px!important;max-width:220px!important;margin:0!important;}
  html body .nav-wrap{height:68px!important;min-height:68px!important;}
  html body .brand{height:68px!important;}
}
