/* ZÁKLADNÉ ÚPRAVY ROZLOŽENIA STRÁNKY */
body {
  background: #f7f7fa !important;
  margin: 0 !important;
  padding: 0 !important;
}
.layout-center {
  max-width: 1200px;
  margin-left: auto;
  margin-right: auto;
  width: 100%;
  box-sizing: border-box;
  padding-left: 28px;
  padding-right: 28px;
}
.main-content, .container {
  max-width: none !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  box-sizing: border-box;
}

/* FULLWIDTH vystredený hlavný nadpis cez stránku */
.fullwidth-heading {
  width: 100vw !important;
  margin-left: 50% !important;
  transform: translateX(-50%) !important;
  text-align: center !important;
  font-size: 2.7em !important;
  font-weight: bold !important;
  margin-top: 2.8rem !important;
  margin-bottom: 2.7rem !important;
  letter-spacing: 0.01em !important;
  background: transparent;
  border: none;
  padding: 0;
}
@media (max-width: 900px) {
  .fullwidth-heading {
    font-size: 1.65em !important;
    margin-top: 1.2rem !important;
    margin-bottom: 1.2rem !important;
  }
}

/* HLAVNÁ úprava žltého 'center-banner' boxu (STRÁNKA PRODUKTOV) */
.nested-copy-line-height .center-banner {
  background: #FFF8E1 !important;
  border-radius: 16px !important;
  box-shadow: 0 9px 48px 0 rgba(0,0,0,0.16) !important;
  border: 2.5px solid #19191a !important;
  padding: 36px 58px !important;
  margin: 56px auto 38px auto !important;
  max-width: 1200px !important;
  width: 100% !important;
  text-align: center !important;
  font-size: 1.45em !important;
  font-weight: bold !important;
  color: #333 !important;
  display: flex !important;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  position: relative;
  box-sizing: border-box;
}

.nested-copy-line-height .product-cards {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: wrap !important;
  justify-content: center !important;
  align-items: flex-start !important;
  gap: 48px !important;
  margin: 44px auto 80px auto !important;
  background: #fbf9fa !important;
  padding: 46px 1rem !important;
  border-radius: 18px !important;
  width: 100%;
  max-width: 1200px;
  box-sizing: border-box;
  scrollbar-color: #ccc #f7f7fa;
  position: relative !important;
  z-index: 10 !important;
}
.nested-copy-line-height .product-cards::-webkit-scrollbar {
  height: 11px;
  background: #f7f7fa;
}
.nested-copy-line-height .product-cards::-webkit-scrollbar-thumb {
  background: #d6d6e1;
  border-radius: 8px;
}
.nested-copy-line-height .product-cards a,
.nested-copy-line-height .product-cards a:visited {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  text-decoration: none !important;
  background: #fff !important;
  border-radius: 28px !important;
  box-shadow: 0 6px 40px rgba(60,60,95,0.11) !important;
  padding: 44px 38px 32px 38px !important;
  min-width: 320px !important;
  max-width: 370px !important;
  border: 2px solid #ededed !important;
  margin: 0 18px 0 0 !important;
  transition: box-shadow 0.18s, transform 0.14s !important;
  box-sizing: border-box;
  flex-shrink: 0 !important;
  cursor: pointer !important;
  user-select: none !important;
  position: relative !important;
  z-index: 20 !important;
  color: #fff !important;
}
.nested-copy-line-height .product-cards a:hover,
.nested-copy-line-height .product-cards a:active,
.nested-copy-line-height .product-cards a:focus {
  box-shadow: 0 22px 48px rgba(80,80,120,0.23) !important;
  transform: translateY(-11px) scale(1.04) !important;
  border-color: #b6b6b6 !important;
  background: #fffbe7 !important;
  outline: none !important;
  color: #fff !important;
}
.nested-copy-line-height .product-cards img {
  width: 270px !important;
  max-width: 100% !important;
  border-radius: 14px !important;
  margin-bottom: 32px !important;
  object-fit: cover !important;
  height: 185px !important;
  background: #eaeaea !important;
}
.nested-copy-line-height .product-cards .product-chip, 
.nested-copy-line-height .product-cards div {
  display: inline-block !important;
  background: #4f3ded !important;
  color: #fff !important;
  font-weight: bold !important;
  padding: 18px 44px !important;
  border-radius: 30px !important;
  font-size: 1.30em !important;
  margin-top: 18px !important;
  box-shadow: 0 3.5px 9px rgba(50,50,80,0.10) !important;
  letter-spacing: 0.03em !important;
  text-align: center !important;
}
.nested-copy-line-height, 
.nested-copy-line-height > *, 
.nested-copy-line-height h1, 
.nested-copy-line-height h2, 
.nested-copy-line-height h3,
.nested-copy-line-height ul,
.nested-copy-line-height ol,
.nested-copy-line-height p,
.nested-copy-line-height .gallery,
.nested-copy-line-height img {
  text-align: center !important;
  margin-left: auto !important;
  margin-right: auto !important;
}
.nested-copy-line-height ul,
.nested-copy-line-height ol {
  display: inline-block !important;
  text-align: left !important;
  margin-top: 18px !important;
  margin-bottom: 18px !important;
}
.nested-copy-line-height img {
  display: block !important;
  margin-left: auto !important;
  margin-right: auto !important;
}
.nested-copy-line-height .gallery,
.nested-copy-line-height .images {
  justify-content: center !important;
  display: flex !important;
  gap: 30px !important;
}

@media (max-width: 800px) {
  .layout-center {
    padding-left: 6px;
    padding-right: 6px;
    max-width: 99vw;
  }
  .nested-copy-line-height .center-banner {
    padding: 18px 4vw !important;
    font-size: 1.13em !important;
    max-width: 96vw !important;
  }
  .nested-copy-line-height .product-cards {
    flex-direction: column !important;
    align-items: center !important;
    gap: 28px !important;
    max-width: 98vw !important;
    padding: 19px 1rem !important;
    overflow-x: unset !important;
  }
  .nested-copy-line-height .product-cards a {
    min-width: 90vw !important;
    max-width: 98vw !important;
    padding: 26px 1vw 20px 1vw !important;
  }
  .nested-copy-line-height .product-cards img {
    width: 95vw !important;
    min-width: 110px !important;
    height: 100px !important;
  }
  .nested-copy-line-height .product-cards .product-chip, 
  .nested-copy-line-height .product-cards div {
    padding: 11px 10vw !important;
    font-size: 1.12em !important;
    margin-top: 11px !important;
  }
}

.product-cards a {
  background: #fff !important;
  border-radius: 21px !important;
  box-shadow: 0 5px 30px rgba(60,60,95,0.065) !important;
  margin: 0 10px 0 0 !important;
  transition: box-shadow 0.18s, transform 0.14s, background 0.2s !important;
}
.product-cards a:hover, .product-cards a:focus {
  background: #FFF8E1 !important;
  box-shadow: 0 18px 42px rgba(80,80,120,0.17) !important;
  transform: translateY(-7px) scale(1.03) !important;
  outline: none !important;
}

.btn-cta {
  background: #2516e9;
  color: #fff;
  padding: 0.12em 0.66em;
  border: none;
  border-radius: 8px;
  font-weight: 600;
  font-size: 1.078em;
  transition: background 0.16s, color 0.18s, box-shadow 0.18s, transform 0.18s;
  box-shadow: 0 0.5px 4px rgba(48,56,220,0.05);
  margin-left: 18px;
  cursor: pointer;
  text-decoration: none;
  display: inline-block;
  line-height: 1.35;
}
.btn-cta:hover,
.btn-cta:active,
.btn-cta:focus {
  background: #ffffff;
  color: #191919;
  box-shadow: 0 1px 6px rgba(0,255,188,0.08);
  transform: scale(1.04);
  text-decoration: none;
}

.top-bar-btn {
  background: #2516e9;
  color: #fff;
  padding: 0.12em 0.66em;
  border: none;
  border-radius: 8px;
  font-weight: 600;
  font-size: 1.078em;
  transition: background 0.16s, color 0.18s, box-shadow 0.18s, transform 0.18s;
  box-shadow: 0 0.5px 4px rgba(48,56,220,0.05);
  margin-left: 18px;
  cursor: pointer;
  text-decoration: none;
  display: inline-block;
  line-height: 1.35;
}
.top-bar-btn:hover,
.top-bar-btn:focus {
  background: #ffffff;
  color: #191919;
  box-shadow: 0 1px 6px rgba(0,255,188,0.08);
  transform: scale(1.04);
  text-decoration: none;
}

.stred-box {
  margin-left: auto;
  margin-right: auto;
  margin-top: 40px;
  width: 420px;
  max-width: 90vw;
  background: #fff;
  padding: 2rem 2.5rem;
  border-radius: 18px;
  box-shadow: 0 8px 40px #e0dcfa;
  text-align: center;
}

.container {
  max-width: 42rem;
  margin-left: 0px;
  margin-right: auto;
  padding: 2rem 1rem;
  box-sizing: border-box;
}

.osoby-flex {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 19px;
  margin-top: 24px;
}
.osoba-card {
  text-align: center;
  background: #fff;
  border-radius: 24px;
  box-shadow: 0 4px 22px #e0dcfa;
  padding: 1.3rem 1.1rem;
  min-width: 160px;
  max-width: 180px;
  margin-bottom: 1rem;
  flex: 1 1 170px;
}

@media (max-width: 900px) {
  .container { margin-left: 0; }
  .osoby-flex { flex-direction: column; align-items: center; gap: 12px; }
  .osoba-card { width: 98%; max-width: 99vw; margin-bottom: 15px; }
}

@media (max-width: 600px) {
  .osoby-flex { gap: 10px; }
  .osoba-card { 
    padding: 1rem 0.8rem; 
    min-width: 150px; 
    max-width: 100%; 
  }
}
@media only screen and (max-width: 600px) {
  .logo, .logo-svg {
    height: 28px !important;
    max-height: 34px !important;
    width: auto !important;
    margin: 0 6px !important;
    display: block !important;
    position: static !important;
    z-index: 10 !important;
    background: transparent !important;
    opacity: 1 !important;
  }
  .top-bar-link, .top-bar-btn {
    font-size: 0.98em !important;
    padding: 2px 5px !important;
    margin-left: 2px !important;
    margin-right: 2px !important;
    min-width: 0 !important;
    line-height: 1.1 !important;
    border-radius: 5px !important;
    white-space: nowrap !important;
    letter-spacing: 0;
    word-break: keep-all;
  }
  .top-bar-link {
    height: 22px !important;
  }
  .top-bar-btn {
    height: 39px !important;
  }
  .top-bar-inner {
    height: 54px !important; /* podľa tvojej požiadavky na zväčšenie bannera */
    display: flex;
    align-items: center;
    gap: 4px;
    padding: 0 7px !important;
    font-size: 0.98em;
  }
  .top-nav-link {
    gap: 4px;
  }
}
.menu-icon { display:none; font-size:2em; cursor:pointer; margin:0 18px 0 8px; background:none; }
.menu-check { display:none; }
.mobile-menu-list {
  display:none;
  position: absolute;
  top:56px; left:0;
  width:100%;
  background:#222c2f; z-index:99; flex-direction:column; box-shadow:0 2px 18px #19191933;
}
.mobile-menu-list a {
  padding:15px 30px;
  color:#fff; text-decoration:none; border-bottom:1px solid #30343a; font-size:1.14em;
}
.menu-check:checked ~ .mobile-menu-list { display:flex; }
.nav-list { display:flex; align-items:center; margin:0; padding:0; list-style:none; }
.nav-list li { margin-right:14px; }
@media (max-width: 800px) {
  .nav-list { display:none !important; }
  .top-bar-btn { display:none !important; }
  .menu-icon { display:inline-block !important; }
  .mobile-menu-list { display:none;}
  .menu-check:checked ~ .mobile-menu-list { display:flex; }
  .navbar-logo .logo { margin-left:6px; margin-right:10px; }
}
@media (min-width: 801px) {
  .mobile-menu-list { display:none !important; }
  .menu-icon { display:none !important; }
  .nav-list { display:flex !important; }
}
.navbar {
  background: #191919;
  min-height: 85px;
  height: 85px;
  width: 100%;
  display: flex;
  align-items: center;
  box-shadow: 0 2px 14px rgba(190, 181, 181, 0.09);
  padding: 0 36px;
  z-index: 1000;
}
.navbar-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  max-width: 1650px;
  margin: 0 auto;
}
/* Odkazy v navbare (okrem tlačidla) */
.nav-list a:not(.top-bar-btn),
.mobile-menu-list a:not(.top-bar-btn) {
  color: #fff !important;
  font-weight: bold !important;
  text-decoration: none !important;
  background: none !important;
  transition: color 0.18s;
}

.nav-list a:not(.top-bar-btn):hover,
.mobile-menu-list a:not(.top-bar-btn):hover {
  color: #93c2f5 !important;   /* svetlomodrá na hover, uprav podľa potreby */
  text-decoration: none !important;
}

/* Štýl pre 'Kontaktujte nás!' (tlačidlo ponechať pôvodné) */
.top-bar-btn {
  /* tvoje pôvodné nastavenie */
  background: #4219bf !important;
  color: #fff !important;
  font-weight: 600 !important;
  border-radius: 8px;
  text-decoration: none !important;
  padding: 0.12em 0.66em;
  font-size: 1.078em;
  box-shadow: 0 0.5px 4px rgba(48,56,220,0.05);
  margin-left: 18px;
  cursor: pointer;
  display: inline-block;
  line-height: 1.35;
}

.top-bar-btn:hover,
.top-bar-btn:focus {
  background: #ffffff !important;
  color: #4219bf !important;
  text-decoration: none !important;
}
.menu-icon {
  color: #ffffff6f !important;         /* biela ikonka */
  font-size: 2.2em !important;    /* väčšia, lepšie viditeľná */
  text-shadow: 0 2px 6px #000a, 0 0px 1px #222;  /* jemný tieň pod ikonku */
  background: none !important;    /* žiadne pozadie */
  border: none !important;
  padding: 0 5px !important;
}