:root {
  --pink-main: #ec407a;
  --pink-dark: #8a0040;
  --pink-soft: #fff7fb;
  --pink-light: #ffe1ee;
  --pink-border: #ffd3e5;
  --white-soft: #fffafc;
}

/* FONDO GENERAL */
html,
body {
  background: radial-gradient(circle at top left, #fff7fb 0%, #ffeaf3 38%, #fff7fb 75%) fixed !important;
  color: var(--pink-dark) !important;
  overflow-x: hidden !important;
}

#wrapper,
#content-wrapper,
#main,
.page-content,
.container,
.featured-products,
.products,
.block-category,
section,
.section {
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
}

/* CABECERA */
#header,
#header .header-nav,
#header .header-top {
  background: rgba(255, 250, 252, 0.97) !important;
  border: none !important;
  box-shadow: 0 5px 24px rgba(236, 64, 122, 0.12);
}

#header .logo {
  max-height: 120px !important;
}

#header a,
.header-nav a,
.top-menu a {
  color: var(--pink-dark) !important;
  font-weight: 700;
}

#header a:hover,
.top-menu a:hover {
  color: var(--pink-main) !important;
}

/* MENÚ */
#header .top-menu > li > a {
  position: relative;
  padding: 18px 22px !important;
  font-size: 17px;
  text-transform: uppercase;
  letter-spacing: 0.3px;
}

#header .top-menu > li > a:after {
  content: "";
  position: absolute;
  left: 18px;
  right: 18px;
  bottom: 8px;
  height: 3px;
  background: var(--pink-main);
  border-radius: 10px;
  transform: scaleX(0);
  transition: 0.3s ease;
}

#header .top-menu > li > a:hover:after {
  transform: scaleX(1);
}

/* BUSCADOR */
.search-widget form {
  border-radius: 40px !important;
  overflow: hidden;
  box-shadow: 0 10px 30px rgba(236, 64, 122, 0.18);
  background: #fff !important;
}

.search-widget form input[type="text"],
.search-widget input {
  height: 52px !important;
  border: none !important;
  background: #fff !important;
  border-radius: 40px !important;
  padding-left: 20px !important;
}

.search-widget form button[type="submit"] {
  color: var(--pink-main) !important;
}

/* HERO IMAGEN PRINCIPAL */
.vidabella-hero {
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 0 70px 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
}

.vidabella-hero img {
  width: 100% !important;
  height: 500px !important;
  display: block !important;
  object-fit: cover !important;
  object-position: center center !important;
  border: none !important;
}

/* BOTONES */
.btn,
.btn-primary,
.button,
input[type="submit"],
#header .header-nav .cart-preview.active {
  background: var(--pink-main) !important;
  border: none !important;
  color: #fff !important;
  border-radius: 30px !important;
  box-shadow: 0 6px 18px rgba(236, 64, 122, 0.25);
}

.btn:hover,
.btn-primary:hover,
.button:hover,
input[type="submit"]:hover {
  background: var(--pink-dark) !important;
}

/* TÍTULOS */
h1, h2, h3, h4, h5,
.products-section-title,
.featured-products h2 {
  color: var(--pink-main) !important;
  font-weight: 700 !important;
  text-align: center;
}

/* PRODUCTOS */
.product-miniature,
.products .product {
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  margin-bottom: 45px !important;
}

.product-miniature .thumbnail-container,
.thumbnail-container {
  background: #fff !important;
  border: none !important;
  border-radius: 25px !important;
  overflow: hidden !important;
  box-shadow: 0 12px 32px rgba(236, 64, 122, 0.18) !important;
  transition: 0.35s ease !important;
}

.product-miniature .thumbnail-container:hover,
.thumbnail-container:hover {
  transform: translateY(-10px);
  box-shadow: 0 20px 45px rgba(236, 64, 122, 0.25) !important;
}

.product-miniature .product-thumbnail,
.product-miniature .thumbnail-top {
  background: #fff !important;
  padding: 12px !important;
}

.product-miniature .product-thumbnail img,
.product-miniature img,
.product-image img,
.img-fluid {
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
}

.product-miniature .product-description {
  background: #fff !important;
  border: none !important;
  padding: 18px 10px !important;
}

.product-title a {
  color: var(--pink-dark) !important;
  font-weight: 700 !important;
}

.product-price,
.price {
  color: var(--pink-main) !important;
  font-weight: 800 !important;
  font-size: 18px !important;
}

/* ETIQUETAS */
.product-flags li.product-flag {
  background: var(--pink-main) !important;
  color: #fff !important;
  border-radius: 0 0 12px 0 !important;
  font-weight: 700 !important;
  border: none !important;
}

/* FAVORITOS */
.wishlist-button-add,
.product-miniature .wishlist-button-add {
  border-radius: 50% !important;
  box-shadow: 0 4px 14px rgba(236, 64, 122, 0.20) !important;
}

/* BLOQUES */
.block,
.facet,
.block-categories,
.block-contact {
  background: rgba(255, 255, 255, 0.72) !important;
  border: none !important;
  border-radius: 20px !important;
  box-shadow: 0 8px 24px rgba(236, 64, 122, 0.12);
  color: var(--pink-dark) !important;
}

/* NEWSLETTER */
.block_newsletter {
  background: linear-gradient(90deg, #fff7fb, #ffe1ee) !important;
  border-radius: 28px !important;
  border: none !important;
  box-shadow: 0 12px 34px rgba(236, 64, 122, 0.14);
  margin-top: 70px !important;
  margin-bottom: 70px !important;
}

.block_newsletter input[type="email"] {
  border-radius: 30px 0 0 30px !important;
  border: none !important;
}

/* FOOTER */
.footer-container {
  background: transparent !important;
  border-top: 1px solid var(--pink-border) !important;
  box-shadow: none !important;
  padding-top: 60px !important;
}

.footer-container,
.footer-container p,
.footer-container li,
.footer-container li a,
.footer-container .h3,
.footer-container .h4 {
  color: var(--pink-dark) !important;
}

.footer-container li a:hover {
  color: var(--pink-main) !important;
}

/* CARRITO */
.cart-preview,
#blockcart-modal,
.cart-products-count {
  background: var(--pink-main) !important;
  color: #fff !important;
}

/* QUITAR RECUADROS */
.card,
.product-container,
.product-cover,
.thumbnail-container,
.product-description {
  border: none !important;
}

/* OCULTAR ICONO MENÚ MÓVIL SI MOLESTA */
#menu-icon,
.material-icons.menu {
  display: none !important;
}

/* RESPONSIVE */
@media (max-width: 768px) {
  .vidabella-hero img {
    height: 320px !important;
  }

  #header .logo {
    max-height: 90px !important;
  }

  #header .top-menu > li > a {
    font-size: 15px;
    padding: 12px 14px !important;
  }
}