
/* v51m – pouze oprava rozbalovacího menu, žlutých tlačítek a hero karty.
   Nemění HTML, data, obsah, reference ani formulář. */

/* ==========================================================
   1) ROZBALOVACÍ MENU – aby neujíždělo přes stránku
   ========================================================== */

html body .nav-dropdown{
  position:relative!important;
}

html body .site-header .mega-menu{
  position:absolute!important;
  top:calc(100% + 14px)!important;
  left:50%!important;
  right:auto!important;
  transform:translateX(-50%) translateY(8px)!important;
  width:min(920px, calc(100vw - 42px))!important;
  max-width:920px!important;
  max-height:calc(100vh - 140px)!important;
  overflow:auto!important;
  z-index:5000!important;

  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:12px!important;
  padding:18px!important;

  background:#fffaf0!important;
  background-image:linear-gradient(180deg,#fffdf6 0%,#f5ecd6 100%)!important;
  border:1px solid rgba(58,54,38,.16)!important;
  border-radius:28px!important;
  box-shadow:0 32px 90px rgba(31,28,18,.24)!important;

  opacity:0!important;
  visibility:hidden!important;
  pointer-events:none!important;
}

html body .site-header .nav-dropdown:hover .mega-menu,
html body .site-header .nav-dropdown:focus-within .mega-menu{
  opacity:1!important;
  visibility:visible!important;
  pointer-events:auto!important;
  transform:translateX(-50%) translateY(0)!important;
}

html body .site-header .mega-menu a{
  display:block!important;
  min-width:0!important;
  width:auto!important;
  padding:14px 15px!important;
  margin:0!important;
  border-radius:18px!important;
  background:rgba(255,255,255,.62)!important;
  border:1px solid rgba(58,54,38,.10)!important;
  box-shadow:none!important;
  text-decoration:none!important;
  overflow:hidden!important;
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease, background .18s ease!important;
}

html body .site-header .mega-menu a:hover{
  transform:translateY(-2px)!important;
  background:#fff4d4!important;
  border-color:rgba(216,184,90,.55)!important;
  box-shadow:0 14px 32px rgba(43,38,24,.12)!important;
}

html body .site-header .mega-menu strong{
  display:block!important;
  margin:0 0 6px!important;
  color:#1f261f!important;
  font-size:15px!important;
  line-height:1.2!important;
  font-weight:950!important;
  white-space:normal!important;
}

html body .site-header .mega-menu span,
html body .site-header .mega-menu p{
  display:block!important;
  color:#60695f!important;
  font-size:13px!important;
  line-height:1.45!important;
  white-space:normal!important;
  overflow:visible!important;
}

/* Pokud má menu uvnitř nějaký "intro" nebo široký blok, zrušit tmavě zelený pruh */
html body .site-header .mega-menu .mega-intro,
html body .site-header .mega-menu .mega-feature,
html body .site-header .mega-menu > div,
html body .site-header .mega-menu > article{
  background:#fff4d4!important;
  color:#1f261f!important;
  border-radius:18px!important;
  border:1px solid rgba(216,184,90,.35)!important;
  padding:14px 16px!important;
}

html body .site-header .mega-menu .mega-intro *,
html body .site-header .mega-menu .mega-feature *,
html body .site-header .mega-menu > div *,
html body .site-header .mega-menu > article *{
  color:#1f261f!important;
}

/* Menší dropdowny */
html body .site-header .mega-menu--small{
  width:min(440px, calc(100vw - 42px))!important;
  grid-template-columns:1fr!important;
}

/* ==========================================================
   2) ŽLUTÁ TLAČÍTKA – méně obyčejná, jemně luxusnější
   ========================================================== */

html body .btn-primary,
html body .btn-soft,
html body .nav-cta,
html body .site-header .nav-cta,
html body .main-nav > .nav-cta,
html body button[type="submit"],
html body .inquiry-form button,
html body .contact-form button{
  position:relative!important;
  overflow:hidden!important;
  isolation:isolate!important;
  background:
    radial-gradient(circle at 22% 18%, rgba(255,255,255,.65), transparent 24%),
    linear-gradient(180deg,#ffeaa1 0%,#dbbd5d 52%,#c9a84b 100%)!important;
  color:#17140c!important;
  border:1px solid rgba(120,86,20,.22)!important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.62),
    inset 0 -8px 18px rgba(120,86,20,.12),
    0 15px 32px rgba(160,120,35,.28)!important;
  text-shadow:0 1px 0 rgba(255,255,255,.35)!important;
  font-weight:950!important;
  letter-spacing:.01em!important;
}

html body .btn-primary::after,
html body .btn-soft::after,
html body .nav-cta::after,
html body button[type="submit"]::after,
html body .inquiry-form button::after,
html body .contact-form button::after{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  background:linear-gradient(120deg, transparent 0%, rgba(255,255,255,.30) 38%, transparent 55%)!important;
  transform:translateX(-130%)!important;
  transition:transform .45s ease!important;
  z-index:-1!important;
}

html body .btn-primary:hover,
html body .btn-soft:hover,
html body .nav-cta:hover,
html body button[type="submit"]:hover,
html body .inquiry-form button:hover,
html body .contact-form button:hover{
  transform:translateY(-2px)!important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.72),
    inset 0 -8px 18px rgba(120,86,20,.10),
    0 21px 44px rgba(160,120,35,.38)!important;
  filter:saturate(1.04) contrast(1.02)!important;
}

html body .btn-primary:hover::after,
html body .btn-soft:hover::after,
html body .nav-cta:hover::after,
html body button[type="submit"]:hover::after,
html body .inquiry-form button:hover::after,
html body .contact-form button:hover::after{
  transform:translateX(130%)!important;
}

/* ==========================================================
   3) HERO – světlejší tapeta, karta vlevo, menší text čitelný
   ========================================================== */

html body .hero--bg::before,
html body .hero.hero--home::before{
  background-image:
    linear-gradient(90deg, rgba(246,238,220,.72) 0%, rgba(246,238,220,.40) 42%, rgba(246,238,220,.18) 100%),
    linear-gradient(180deg, rgba(17,22,17,.28), rgba(17,22,17,.28)),
    var(--hero-bg-image)!important;
  filter:saturate(.92) brightness(1.08)!important;
}

html body .hero-grid,
html body .hero-grid--single{
  justify-items:start!important;
}

html body .hero-copy,
html body .hero-card,
html body .hero__card,
html body .hero-content,
html body .hero-panel{
  margin-left:0!important;
  margin-right:auto!important;
  max-width:720px!important;
  width:min(720px, calc(100vw - 36px))!important;
  background:rgba(255,250,236,.72)!important;
  border:1px solid rgba(255,255,255,.70)!important;
  box-shadow:0 30px 90px rgba(38,34,24,.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-copy h1,
html body .hero-card h1,
html body .hero__card h1,
html body .hero-content h1,
html body .hero-panel h1{
  color:#263026!important;
  text-shadow:0 1px 0 rgba(255,255,255,.82), 0 8px 26px rgba(255,255,255,.42)!important;
}

html body .hero p,
html body .hero-copy p,
html body .hero-card p,
html body .hero__card p,
html body .hero-content p,
html body .hero-panel p,
html body .hero .lead,
html body .hero-copy .lead{
  color:#394339!important;
  opacity:1!important;
  visibility:visible!important;
  font-weight:750!important;
  text-shadow:0 1px 0 rgba(255,255,255,.70)!important;
}

html body .hero-trust span,
html body .hero .pill,
html body .hero .chip{
  color:#263026!important;
  background:rgba(255,255,255,.54)!important;
  border:1px solid rgba(65,72,60,.18)!important;
  text-shadow:none!important;
  box-shadow:0 8px 18px rgba(38,34,24,.08)!important;
}

/* Telefon v hero nebo headeru čitelně */
html body .hero a[href^="tel:"],
html body .hero .phone-link,
html body .header-phone{
  color:#263026!important;
  text-shadow:none!important;
}

/* Mobilně kartu zase centrovat */
@media(max-width:760px){
  html body .hero-grid,
  html body .hero-grid--single{
    justify-items:center!important;
  }
  html body .hero-copy,
  html body .hero-card,
  html body .hero__card,
  html body .hero-content,
  html body .hero-panel{
    margin-left:auto!important;
    margin-right:auto!important;
  }
}

/* Dropdown na mobilu nepřetékat */
@media(max-width:760px){
  html body .site-header .mega-menu{
    left:0!important;
    right:0!important;
    transform:none!important;
    width:100%!important;
    max-height:70vh!important;
    grid-template-columns:1fr!important;
  }
  html body .site-header .nav-dropdown:hover .mega-menu,
  html body .site-header .nav-dropdown:focus-within .mega-menu{
    transform:none!important;
  }
}
