body, .content-wrapper {
  background-color: #f9f9f9;
  color: #545466;
}
.products>div {
  border-color: #f9f9f9;
}
.top-navigation-bar {
  background: #00B4D8;
  border: none;
    color: #fff;
    font-size: 12px;
    padding: 8px 0;
    letter-spacing: 0.2px;
}
:where(.ums_forms_redesign--off) .form-control, :where(.ums_forms_redesign--off) select {
  background-color: #f5f5f5;
}
.blog-wrapper {
  margin: auto;
}
.top-navigation-bar .dropdown button:focus-visible, .top-navigation-bar .dropdown button:hover, .top-navigation-bar a:focus-visible, .top-navigation-bar a:hover, :where(body.ums_a11y_login--on) .top-nav-button-login:hover, .top-navigation-bar-menu li:before {
  color: #fff;
  text-decoration: underline;
}
.top-navigation-contacts, .top-navigation-menu {
  background-color: #00B4D8;
}
.navigation-buttons a[data-target=cart], .navigation-buttons a[data-target=cart]:hover, .listSorting__control--current, .listSorting__control:focus-visible, .listSorting__control:hover {
  color: #1a1a2e;
}
.top-navigation-bar .dropdown button, .top-navigation-bar a, :where(body.ums_a11y_login--on) .top-nav-button-login, .top-navigation-menu-trigger:before {
  color: #fff;
}
.btn.loadMore__button, .pagination .pagination__list .pagination__link, a.btn.goToTop__button {
  border-radius: 20px;
}
:where(.ums_forms_redesign--off) .form-control, :where(.ums_forms_redesign--off) select {
  border: none;

}

.header-top input[type=search] {
  border-radius: 50px;
}
.btn.btn-default, a.btn.btn-default {
  border-radius: 50px;
}
@media (min-width: 768px) {
  .navigation-wrapper::before {
      content: '';
      position: absolute;
      left: 50%;
      right: 50%;
      margin-left: -50vw;
      margin-right: -50vw;
      width: 100vw;
      overflow: hidden;
      height: 50px;
      top: 98px;
      background-color: #80b918;
      z-index: 0;
  }
  .categories a {
    padding-top: 10px;
    padding-bottom: 10px;
  }
  #categories .expandable>.topic>a>span, #categories .expandable>a>span {
    top: 11px;
  }
}
.navigation-in>ul>li.exp>a, .navigation-in>ul>li>a:hover {
  color: #1a1a2e;
}
.navigation-in ul.menu-level-2 {
  border-color: #1a1a2e;
}
.navigation-in>ul>li {
  border-color: transparent !important;
}
@media (min-width: 768px) {
  .navigation-in {
      background-color: #80b918;
  }
}
#header .container {
  position: relative;
}
@media (min-width: 768px) {
  #navigation {
      height: 50px;
      left: 0;
      position: relative;
  }
  .navigation-in>ul>li>a {
    font-size: 16px;
    padding-top: 17px;
    padding-bottom: 17px;
  }
  .navigation-in {
    line-height: 16px;
  }
  .menu-helper {
    height: 50px;
  }
}
.type-index .banners-row {
  margin: 0;
  overflow: hidden;
}
.banners-row .col-sm-8 {
  width: 100%;
  flex: 0 0 100%;
}
.top-navigation-bar-menu li a, .top-navigation-bar-menu-helper li a {
  text-transform: none;
}
.carousel-inner>.item>a>img, .carousel-inner>.item>img {
  object-fit: cover;
}
.banners-row .col-sm-4 {
  width: 100%;
  flex: 0 0 100%;
}
.next-to-carousel-banners .banner-wrapper {
  width: 20%;
  flex: 0 0 20%;
  margin: 0;
  overflow: hidden;
  padding: 10px;
}
.next-to-carousel-banners .banner-wrapper:hover a {
  box-shadow: 0 2px 8px #c7c6c6;
}
.next-to-carousel-banners {
  display: flex;
  flex-direction: row;
  justify-content: center;
  flex-wrap: wrap;
}
.banners-row .banner-wrapper+.banner-wrapper {
  margin: 0;
  overflow: hidden;
}
.banners-row .banner-wrapper a {
  padding: 10px;
  background-color: #fff;
  width: 100%;
  border-radius: 20px;
  height: 100%;
  box-shadow: 0 2px 8px #eeeeee;
}
.next-to-carousel-banners .banner-wrapper a img {
  height: 140px;
  object-fit: cover;
  width: fit-content;
  display: block;
  margin: auto;
  margin-bottom: 20px;
}
.banners-row .col-sm-4 {
  padding: 20px 10px !important;
}
.next-to-carousel-banners .extended-banner-texts {
  position: initial;
}
.next-to-carousel-banners .extended-banner-title {
  position: initial;
  display: block;
  width: 100%;
  box-shadow: none;
  border: none;
  color: #1a1a2e;
  transition: all 0.3s;
  font-weight: 600;
  font-size: 20px;
  text-align: center;
}
.next-to-carousel-banners .extended-banner-text {
  box-shadow: none;
  position: initial;
  text-align: center;
  color: #1a1a2e;
  width: 100%;
  display: block;
  margin: auto;
}
.homepage-box {
  border: none;
}
.products-block .p {
  padding: 15px;
  border-radius: 20px;
  background-color: #fff;
  box-shadow: 0 2px 8px #eeeeee;
  transition: all 0.3s;
}
.products-block .p:hover {
  box-shadow: 0 2px 8px #c7c6c6;
}
.products-block.products .p .name {
  color: #1a1a2e;
  font-size: 18px;
  font-weight: 600;
}
.btn.add-to-cart-button:before, .btn.btn-cart:before, .btn.express-checkout-button:before, a.btn.add-to-cart-button:before, a.btn.btn-cart:before, a.btn.express-checkout-button:before {
  display: none;
}
.h4.homepage-group-title, h4.homepage-group-title, .category-title, .p-detail-inner-header h1 {
  color: #1a1a2e;
  font-weight: 600;
  font-size: 30px;
}
.products-block.products .p .price span, .products-block.products .p .price strong {
  font-size: 18px;
}
.products-block .p-bottom>div {
  align-items: center;
}
.btn.btn-cart, .btn.btn-conversion, a.btn.btn-cart, a.btn.btn-conversion, .btn.btn-primary, a.btn.btn-primary {
  border-radius: 20px;
  font-size: 16px;
}
@media (min-width: 1200px) {
  .blog-wrapper .news-item {
      flex-basis: 33.333%;
      width: 33.333%;
  }
}
.blog-wrapper .news-item a {
  padding: 15px;
  border-radius: 20px;
  background-color: #fff;
  box-shadow: 0 2px 8px #eeeeee;
  transition: all 0.3s;
  display: block;

}
.blog-wrapper .news-item a:hover {
  box-shadow: 0 2px 8px #c7c6c6;
}
.news-item .image img {
  border-radius: 15px;
  height: 250px;
  object-fit: cover;
}
.news-item .text .title {
  font-size: 18px;
  color: #1a1a2e;
  font-weight: 600;
}
#footer {
  background-color: #fff;
  border: none;
}
#footer>.container {
  background-color: #fff;
}
.custom-footer {
  border: none;
}
.footer-rows .site-name a img {
  max-height: none;
  object-fit: contain;
  border-radius: 50%;
  aspect-ratio: 1/1;
  background-color: #fff;
  padding: 5px;
}
:where(body.ums_page_element_headings--on) .pageElement__heading {
  color: #1a1a2e;
}
:where(.ums_forms_redesign--off) .compact-form .form-control {
  box-shadow: 5px 5px 5px 0px rgba(0,0,0,0.05);
}
#footer .contact-box a, #footer .news-item-widget a, #footer .password-helper a, #footer ul a, .footer-bottom, #signature a, :where(.ums_forms_redesign--off) .form-group.consents label {
  color: #1a1a2e;
  opacity: 0.8;
}
:where(.ums_forms_redesign--off) .compact-form .form-control {
  border-radius: 20px;
}
.footer-banner {
  padding-bottom: 40px;
}
.breadcrumbs {
  background-color: #f9f9f9;
  border: none;
}
.sidebar {
  background-color: #fff;
  border-radius: 20px;
}
.box-categories .pageElement__heading {
  color: #1a1a2e;
  font-weight: 600;
  font-size: 18px;
}
.subcategories li a {
  border: none;
  border-radius: 15px;
  box-shadow: 0 2px 8px #eeeeee;
}
.subcategories li {
  border-radius: 15px;
}
.subcategories li a:after {
  border-radius: 15px;
}
.products-top-wrapper {
  display: none;
}
.subcategories.with-image li a .text {
  color: #1a1a2e;
  font-weight: 600;
}
.product-top {
  border-radius: 20px;
  background-color: #fff;
}
.type-product .content-wrapper-in {
  gap: 20px;
}
.listSorting__control {
  border-radius: 20px;
}
.category-header, .shp-tabs, .shp-tabs-holder {
  background-color: #f9f9f9;
}
.shp-tabs-holder ul.shp-tabs li a {
  border-radius: 20px;
}
.basic-description h3 {
  color: #1a1a2e;
  font-weight: 600;
}
.quantity .decrease {
  border-style: solid solid none solid;
}
.quantity .increase {
  border-style: none solid none solid;
}
.p-detail .add-to-cart .quantity {
  margin-right: 10px;
}

.cw-kontakt-page *, .cw-kontakt-page *::before, .cw-kontakt-page *::after {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

/* === HERO === */
.cw-hero {
  position: relative;
  padding: 100px 40px 80px;
  text-align: center;
  background: var(--cw-ink);
  color: var(--cw-cream);
  overflow: hidden;
}
@media (min-width: 1200px) {
  .content-inner {
      max-width: 100%;
  }
}
.cw-hero::before {
  content: '';
  position: absolute;
  top: -60%;
  left: -20%;
  width: 140%;
  height: 220%;
  background: radial-gradient(ellipse at 30% 50%, rgba(200,85,61,0.15) 0%, transparent 60%),
              radial-gradient(ellipse at 70% 30%, rgba(232,115,78,0.1) 0%, transparent 50%);
  pointer-events: none;
}

.cw-hero-label {
  font-size: 0.75rem;
  letter-spacing: 4px;
  text-transform: uppercase;
  color: var(--cw-accent-light);
  margin-bottom: 20px;
  font-weight: 500;
  opacity: 0;
  animation: cwFadeUp 0.6s ease forwards 0.2s;
}

.cw-hero h1 {
  font-family: 'Playfair Display', serif;
  font-size: clamp(2.8rem, 6vw, 5rem);
  font-weight: 800;
  line-height: 1.1;
  margin-bottom: 20px;
  opacity: 0;
  animation: cwFadeUp 0.7s ease forwards 0.35s;
}

.cw-hero p {
  font-size: 1.05rem;
  color: rgba(248,246,241,0.6);
  max-width: 500px;
  margin: 0 auto;
  line-height: 1.7;
  opacity: 0;
  animation: cwFadeUp 0.7s ease forwards 0.5s;
}

/* === TEAM === */
.cw-team-section {
  max-width: 1100px;
  margin: 0 auto 0;
  padding: 0 24px 80px;
  position: relative;
  z-index: 2;
}

.cw-team-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 28px;
}

.cw-team-card {
  background: var(--cw-card-bg);
  border-radius: 20px;
  overflow: hidden;
  padding: 20px;
  box-shadow: var(--cw-shadow);
  transition: transform 0.4s cubic-bezier(0.23,1,0.32,1), box-shadow 0.4s ease;
  opacity: 0;
  animation: cwFadeUp 0.7s ease forwards;
}

.cw-team-card:nth-child(1) { animation-delay: 0.5s; }
.cw-team-card:nth-child(2) { animation-delay: 0.65s; }
.cw-team-card:nth-child(3) { animation-delay: 0.8s; }

.cw-team-card:hover {
  transform: translateY(-6px);
  box-shadow: var(--cw-shadow-hover);
}

.cw-team-photo {
  width: 100%;
  aspect-ratio: 1 / 1;
  object-fit: cover;
  display: block;
}

.cw-photo-placeholder {
  width: 100%;
  aspect-ratio: 1 / 1;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 4rem;
  border-radius: 50%;
  font-family: 'Playfair Display', serif;
  font-weight: 800;
  color: white;
  position: relative;
  overflow: hidden;
}

.cw-team-card:nth-child(1) .cw-photo-placeholder {
  background: linear-gradient(135deg, #2d3047 0%, #4a5070 100%);
}

.cw-team-card:nth-child(2) .cw-photo-placeholder {
  background: linear-gradient(135deg, #c8553d 0%, #e8734e 100%);
}

.cw-team-card:nth-child(3) .cw-photo-placeholder {
  background: linear-gradient(135deg, #5b7065 0%, #89a896 100%);
}

.cw-photo-placeholder::after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  height: 40%;
  background: linear-gradient(to top, rgba(0,0,0,0.15), transparent);
}

.cw-team-info {
  padding: 28px 28px 32px;
}

.cw-team-role {
  font-size: 12px;
  letter-spacing: 1.5px;
  text-align: center;
  text-transform: uppercase;
  color: var(--cw-accent);
  font-weight: 700;
  margin-bottom: 8px;
}

.cw-team-name {
  font-size: 18px;
  font-weight: 600;
  text-align: center;
  margin-bottom: 16px;
  line-height: 1.3;
}

.cw-team-contact-item {
  display: flex;
  align-items: center;
  gap: 10px;
  justify-content: center;
  margin-bottom: 10px;
  font-size: 16px;
  color: var(--cw-muted);
  transition: color 0.2s;
}

.cw-team-contact-item:hover {
  color: var(--cw-ink);
}

.cw-team-contact-item svg {
  width: 16px;
  height: 16px;
  flex-shrink: 0;
  opacity: 0.5;
}

.cw-team-contact-item a {
  color: inherit;
  text-decoration: none;
}

.cw-team-contact-item a:hover {
  border-color: var(--cw-accent);
  color: var(--cw-accent);
}

/* === COMPANY INFO === */
.cw-company-section {
  max-width: 1100px;
  margin: 0 auto;
  padding: 0 24px 80px;
}

.cw-company-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 28px;
  opacity: 0;
  animation: cwFadeUp 0.7s ease forwards 0.9s;
}

.cw-company-card {
  background: var(--cw-card-bg);
  border-radius: 20px;
  padding: 40px;
  box-shadow: var(--cw-shadow);
}

.cw-company-card h3 {
  font-size: 20px;
  font-weight: 600;
  margin-bottom: 24px;
  padding-bottom: 16px;
  border-bottom: 2px solid var(--cw-border);
}

.cw-info-row {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  padding: 10px 0;
  border-bottom: 1px solid var(--cw-border);
  font-size: 16px;
}

.cw-info-row:last-child { border-bottom: none; }

.cw-info-label {
  color: var(--cw-muted);
  font-weight: 500;
  flex-shrink: 0;
  margin-right: 16px;
}

.cw-info-value {
  text-align: right;
  font-weight: 500;
}

.cw-address-text {
  font-size: 16px;
  line-height: 1.8;
  color: var(--cw-muted);
}

.cw-address-text strong {
  color: var(--cw-ink);
  font-weight: 700;
  font-size: 18px;
}

.cw-or-note {
  font-size: 14px;
  color: var(--cw-muted);
  margin-top: 16px;
  line-height: 1.6;
  font-style: italic;
}

/* === MAP === */
.cw-map-section {
  max-width: 1100px;
  margin: 0 auto;
  padding: 0 24px 80px;
  opacity: 0;
  animation: cwFadeUp 0.7s ease forwards 1.1s;
}

.cw-map-wrapper {
  border-radius: 20px;
  overflow: hidden;
  box-shadow: var(--cw-shadow);
  position: relative;
}

.cw-map-wrapper iframe {
  width: 100%;
  height: 400px;
  border: none;
  display: block;
}

.cw-map-label {
  position: absolute;
  top: 20px;
  left: 20px;
  background: var(--cw-card-bg);
  padding: 12px 20px;
  border-radius: 12px;
  font-size: 16px;
  font-weight: 700;
  letter-spacing: 1px;
  text-transform: uppercase;
  color: var(--cw-accent);
  box-shadow: 0 4px 16px rgba(0,0,0,0.1);
  z-index: 3;
}

/* === FOOTER === */
.cw-footer {
  text-align: center;
  padding: 40px 24px;
  font-size: 16px;
  color: var(--cw-muted);
  border-top: 1px solid var(--cw-border);
  max-width: 1100px;
  margin: 0 auto;
}

/* === ANIMATIONS === */
@keyframes cwFadeUp {
  from { opacity: 0; transform: translateY(24px); }
  to { opacity: 1; transform: translateY(0); }
}

/* === RESPONSIVE === */
@media (max-width: 820px) {
  .cw-team-grid {
    grid-template-columns: 1fr;
    max-width: 420px;
    margin: 0 auto;
  }

  .cw-company-grid {
    grid-template-columns: 1fr;
  }

  .cw-hero { padding: 80px 24px 60px; }
}
:root {
  --cw-ink: #1a1a2e;
  --cw-cream: #f8f6f1;
  --cw-accent: #c8553d;
  --cw-accent-light: #e8734e;
  --cw-muted: #7a7a8c;
  --cw-card-bg: #ffffff;
  --cw-border: #e8e6e1;
  --cw-shadow: 0 8px 40px rgba(26,26,46,0.08);
  --cw-shadow-hover: 0 12px 48px rgba(26,26,46,0.14);
}
@media (min-width: 767px) and (max-width: 1200px) {
  .next-to-carousel-banners .banner-wrapper {
    width: 33.333%;
    flex: 0 0 33.333%;
  }
}
@media (min-width: 575px) and (max-width: 767px) {
  .next-to-carousel-banners .banner-wrapper {
    width: 50%;
    flex: 0 0 50%;
  }
}
@media (max-width: 575px) {
  .next-to-carousel-banners .banner-wrapper {
    width: 100%;
    flex: 0 0 100%;
  }
}
/* Levé bordery kategorií - správné pořadí */
.sidebar .categories:nth-child(4n+1) {
  border-left: solid 2px #00B4D8; /* zelená */
}

.sidebar .categories:nth-child(4n+2) {
  border-left: solid 2px #80b918; /* modrá */
}

.sidebar .categories:nth-child(4n+3) {
  border-left: solid 2px #ffc300; /* žlutá/oranžová */
}

.sidebar .categories:nth-child(4n+4) {
  border-left: solid 2px #e84e10; /* červená */
}

/* Aktivní topic - barva podle pozice kategorie */
.categories:nth-child(4n+1) .topic.active > a {
  background-color: #00B4D8; /* zelená */
  color: #fff;
}

.categories:nth-child(4n+2) .topic.active > a {
  background-color: #80b918; /* modrá */
  color: #fff;
}

.categories:nth-child(4n+3) .topic.active > a {
  background-color: #ffc300; /* žlutá */
  color: #fff;
}

.categories:nth-child(4n+4) .topic.active > a {
  background-color: #e84e10; /* červená */
  color: #fff;
}

/* Expandable span - barva podle pozice kategorie */
.categories:nth-child(4n+1) .expandable > .topic > a > span,
.categories:nth-child(4n+1) .expandable > a > span {
  color: #00B4D8 !important; /* zelená */
}

.categories:nth-child(4n+2) .expandable > .topic > a > span,
.categories:nth-child(4n+2) .expandable > a > span {
  color: #80b918 !important; /* modrá */
}

.categories:nth-child(4n+3) .expandable > .topic > a > span,
.categories:nth-child(4n+3) .expandable > a > span {
  color: #ffc300 !important; /* žlutá */
}

.categories:nth-child(4n+4) .expandable > .topic > a > span,
.categories:nth-child(4n+4) .expandable > a > span {
  color: #e84e10 !important; /* červená */
}

/* Hover na odkazech - barva podle pozice kategorie */
.categories:nth-child(4n+1) li a:hover {
  color: #00B4D8 !important; /* zelená */
}

.categories:nth-child(4n+2) li a:hover {
  color: #80b918 !important; /* modrá */
}

.categories:nth-child(4n+3) li a:hover {
  color: #ffc300 !important; /* žlutá */
}

.categories:nth-child(4n+4) li a:hover {
  color: #e84e10 !important; /* červená */
}

/* Expandable span s #categories - barva podle pozice kategorie */
.categories:nth-child(4n+1).expandable > .topic > a > span,
.categories:nth-child(4n+1).expandable > a > span {
  color: #00B4D8 !important; /* zelená */
}

.categories:nth-child(4n+2).expandable > .topic > a > span,
.categories:nth-child(4n+2).expandable > a > span {
  color: #80b918 !important; /* modrá */
}

.categories:nth-child(4n+3).expandable > .topic > a > span,
.categories:nth-child(4n+3).expandable > a > span {
  color: #ffc300 !important; /* žlutá */
}

.categories:nth-child(4n+4).expandable > .topic > a > span,
.categories:nth-child(4n+4).expandable > a > span {
  color: #e84e10 !important; /* červená */
}

.sidebar .categories {
  border-bottom: solid 1px #ddd;
}
@media (min-width: 1400px) {
  .top-navigation-bar .container>div:first-child, .top-navigation-bar .container>div:last-child {
      flex-basis: 20%;
  }
  .top-navigation-bar .container>div {
    display: block;
    flex: 1 1 60%;
    text-align: center;
}
}