/* Vzhled půjčovny (rental.vybavsenaparty.cz) podle hlavního webu */
:root {
  --vs-modra: #353bd1;
  --vs-tmava: #102971;
  --vs-balonky: #619cbf;
  --vs-plesy: #d6b153;
  --vs-maskoti: #b9473f;
  --vs-hrady: #97c15c;
  --vs-vata: #c84ca3;
  --vs-video: #6c6cd4;
}

/* ---------- základ: písmo, barva textu, pastelové pozadí ---------- */
html body {
  font-family: "Nunito", sans-serif;
  color: var(--vs-tmava);
  background:
    radial-gradient(60vw 50vh at 8% 6%,  rgba(130, 200, 210, .30), transparent 70%),
    radial-gradient(55vw 45vh at 92% 2%, rgba(240, 190, 225, .35), transparent 70%),
    radial-gradient(60vw 50vh at 60% 40%, rgba(250, 225, 170, .28), transparent 70%),
    #fff;
  background-attachment: fixed;
}
html body .overall-wrapper,
html body #content-wrapper,
html body .content-wrapper,
html body .container-wrapper { background: transparent; }

h1, h2, h3, h4, .category-title, .sidebar__heading, .pageElement__heading { color: var(--vs-tmava); font-weight: 800; }
a { color: var(--vs-modra); }
a:hover { color: var(--vs-tmava); }

/* ---------- hlavička a menu ---------- */
html body #header, html body .header-top, html body .navigation-wrapper { background: transparent !important; box-shadow: none !important; border: 0 !important; }
#navigation .navigation-in > ul > li > a,
#navigation .navigation-in > ul > li > a b { color: var(--vs-tmava); font-weight: 700; }
#navigation .navigation-in > ul > li > a:hover,
#navigation .navigation-in > ul > li > a.active { color: var(--vs-modra); }
#navigation .navigation-in > ul > li > a.active {
  background-image: linear-gradient(var(--vs-modra), var(--vs-modra));
  background-repeat: no-repeat; background-position: left bottom; background-size: 100% 4px;
}
#navigation .menu-level-2 {
  background: #fff !important; border: 0 !important; border-radius: 24px;
  box-shadow: 0 16px 44px rgba(16, 41, 113, .18);
}
#navigation .menu-level-2 a { color: var(--vs-tmava); }
#navigation .menu-level-2 a:hover { color: var(--vs-modra); }
#navigation .menu-level-2 img { border-radius: 14px; }

/* vyhledávání a košík */
.search-form input[type="search"], .search input[type="search"], .search-input {
  border-radius: 999px !important; border: 2px solid rgba(16, 41, 113, .15) !important;
}
.search-form .btn, .search .btn { border-radius: 999px !important; }

/* drobečková navigace */
.breadcrumbs, .breadcrumbs a, .breadcrumbs span { color: var(--vs-tmava); }

/* ---------- dlaždice podkategorií v barvách hlavního webu ---------- */
.subcategories.with-image { gap: 0; }
.subcategories.with-image li { padding: 8px; }
.subcategories.with-image li a {
  display: flex; flex-direction: column; align-items: center; justify-content: flex-start;
  height: 100%; padding: 1.1rem 1rem 1.2rem; border-radius: 28px; text-align: center;
  color: #fff !important; text-decoration: none;
  background: var(--vs-balonky);
  transition: transform .2s ease, box-shadow .2s ease;
}
.subcategories.with-image li:nth-child(6n+1) a { background: var(--vs-balonky); }
.subcategories.with-image li:nth-child(6n+2) a { background: var(--vs-plesy); }
.subcategories.with-image li:nth-child(6n+3) a { background: var(--vs-maskoti); }
.subcategories.with-image li:nth-child(6n+4) a { background: var(--vs-hrady); }
.subcategories.with-image li:nth-child(6n+5) a { background: var(--vs-vata); }
.subcategories.with-image li:nth-child(6n+6) a { background: var(--vs-video); }
.subcategories.with-image li a:hover { transform: translateY(-4px); box-shadow: 0 14px 30px rgba(16, 41, 113, .22); }
.subcategories.with-image li a .image { border-radius: 18px; overflow: hidden; background: rgba(255, 255, 255, .25); }
.subcategories.with-image li a .image img { border-radius: 18px; }
.subcategories.with-image li a .text { color: #fff !important; font-weight: 800; font-size: 1.05rem; margin-top: .75rem; }

/* ---------- boční panel ---------- */
.sidebar .box, .sidebar-inner .box {
  background: rgba(255, 255, 255, .85) !important; border: 0 !important;
  border-radius: 24px; box-shadow: 0 8px 28px rgba(16, 41, 113, .08);
}
.sidebar a { color: var(--vs-tmava); }
.sidebar a:hover, .sidebar li.active > a, .sidebar a.active { color: var(--vs-modra); font-weight: 700; }

/* ---------- produkty ---------- */
.products .product, .products-block .product {
  background: #fff; border: 0 !important; border-radius: 24px; overflow: hidden;
  box-shadow: 0 8px 28px rgba(16, 41, 113, .08);
  transition: transform .2s ease, box-shadow .2s ease;
}
.products .product:hover { transform: translateY(-3px); box-shadow: 0 14px 34px rgba(16, 41, 113, .16); }
.products .product img { border-radius: 16px; }
.products .product .name, .products .product .name span { color: var(--vs-tmava); font-weight: 700; }
.products .product .price, .products .product .price strong { color: var(--vs-modra); font-weight: 800; }

/* ---------- tlačítka ---------- */
html body .btn, html body button.btn, html body a.btn,
html body .btn-primary, html body .btn-cart, html body .btn-conversion {
  border-radius: 999px !important; font-weight: 700; border: 0;
}
html body .btn-cart, html body .btn-conversion, html body .btn-primary,
html body a.btn-primary, html body .btn.btn-primary {
  background: var(--vs-modra) !important; color: #fff !important;
}
html body .btn-cart:hover, html body .btn-conversion:hover, html body .btn-primary:hover {
  background: var(--vs-tmava) !important; color: #fff !important;
}

/* ---------- formuláře a filtry ---------- */
input[type="text"], input[type="email"], input[type="tel"], input[type="number"], select, textarea {
  border-radius: 14px;
}

/* ---------- patička ---------- */
html body #footer, html body .footer { background: rgba(255, 255, 255, .85) !important; color: var(--vs-tmava); border-radius: 32px 32px 0 0; }
.footer a { color: var(--vs-modra); }
.footer .pageElement__heading span, .footer h3 { color: var(--vs-tmava); }

/* ---------- blok „Co si u nás můžete půjčit?" (popis kategorie Párty půjčovna) ---------- */
.vp-party {
  --vp-accent: #353bd1;
  --vp-ink: #102971;
  --vp-light: #eef0ff;
}
.vp-party .vp-card {
  padding: 14px 14px 22px;
  border: 0;
  border-radius: 28px;
  background: #fff;
  box-shadow: 0 8px 28px rgba(16, 41, 113, .10);
  transition: transform .2s ease, box-shadow .2s ease;
}
.vp-party .vp-card:hover {
  background: #fff;
  transform: translateY(-4px);
  box-shadow: 0 14px 34px rgba(16, 41, 113, .20);
}
.vp-party .vp-card strong,
.vp-party .vp-card span:not(.vp-link) { padding: 0 8px; }
.vp-party .vp-card .vp-link { padding-left: 8px; color: #353bd1; }
.vp-party .vp-foto {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 4 / 5;
  object-fit: cover;
  border-radius: 20px;
  background: #eef0ff;
  margin-bottom: 6px;
}
.vp-party .vp-button { border-radius: 999px; }
.vp-party .vp-note { border-radius: 28px; background: rgba(255, 255, 255, .85); }
