html {
  overflow: visible!important;
}

/* header */

body.home header#masthead {
  width: 100%;
  position: absolute;
  top: 0;
  transition: background-color 0.3s;
}

body.home header#masthead .ast-primary-header {
  background-color: transparent!important;
}

header#masthead .ast-builder-menu .main-navigation > ul {
  align-self: center;
  gap: 30px;
  font-style: italic;
}

header#masthead.sticky-active {
  position: sticky!important;
  top: 0;
  background-color: #ffffffd9;
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.082);
  transition: background-color 0.3s;
}

header#masthead.sticky-active .site-branding.ast-site-identity img {
  width: 100px;
}
header#masthead .site-header-section > * {
  padding: 0;
  margin: 0;
  line-height: 1;
}

header#masthead .site-primary-header-wrap {
  display: flex;
  justify-content: center;
}

header#masthead .ast-builder-grid-row.ast-grid-center-col-layout {
  display: flex;
}

header#masthead .ast-builder-grid-row>.site-header-section {
  flex-wrap: wrap;
}

header#masthead .site-header-primary-section-left.site-header-section {
  flex-grow: 2;
  flex-shrink: 2;
}

header#masthead .site-header-primary-section-center .site-header-section {
  flex-grow: 1;
  flex-shrink: 1;
}

header#masthead .site-header-primary-section-right.site-header-section{
  flex-grow: 2;
  flex-shrink: 2;
  gap: 10px;
}

header#masthead .ast-builder-html-element p {
  padding: 0;
  margin: 0;
  font-size: 0;
}

header#masthead .site-header-primary-section-right > .site-header-section {
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
}


header#masthead .menu-item-object-language_switcher .trp-flag-image {
  width: 25px;
  justify-content: space-between;
}

/* Header mobile */
#ast-mobile-header > div.ast-main-header-wrap.main-header-bar-wrap > div > div {
  width: 100%;
  justify-content: space-between;
}

#ast-mobile-header .main-navigation > ul {
  gap: 0;
}


.ast-mobile-popup-drawer.active .menu-toggle-close:focus {
  border: none!important;
}

.ast-builder-menu-mobile .main-navigation .menu-item button.ast-menu-toggle {
  background-color: transparent;
  box-shadow: none;
  text-align: center;
}

header.ast-mobile-header-inline .ast-mobile-header button.main-header-menu-toggle {
  border: none;
  padding: 0;
}
 
#ast-mobile-header .custom-logo-link img {
  max-width: 130px;
  width: 100%;
}

@media (max-width: 1090px) {
  .ast-mobile-header-wrap .ast-primary-header-bar, .ast-primary-header-bar .site-primary-header-wrap {
    min-height: auto;
  }
}

/* Title */
.runfyt-page-title {
  font-family: "Montserrat", Sans-serif;
  font-size: 40px;
  font-weight: 800;
  text-transform: uppercase;
  font-style: italic;
  text-decoration: none;
  line-height: 1.1em;
  color: var(--e-global-color-accent);
}

/* Breadcrumb */
.runfyt_breadcrumbs nav.woocommerce-breadcrumb {
  margin:  0;
}
.runfyt_breadcrumbs nav.woocommerce-breadcrumb a {
  color: #B21971;
}

/* Products */
span.onsale {
  background-color: #a20076!important;
}

a.button.add_to_cart_button, button.single_add_to_cart_button {
  font-size: 0;
  padding: 0;
  background-color: transparent;
  color: transparent;
  border: none;
}
:is(a.button.add_to_cart_button, button.single_add_to_cart_button, .woocommerce button.button):is(:focus, :focus-visible, :focus-within) {
  border: none;
}

a.button.add_to_cart_button svg path, button.single_add_to_cart_button svg path {
  fill: #B21971;
}

.lista-categorias-home .menu-categorias-container ul {
  margin: 0;
  padding: 0;
  list-style: none;
  text-transform: uppercase;
}
.lista-categorias-home .menu-categorias-container > ul {
  list-style-type: '-'
}
.lista-categorias-home .menu-categorias-container ul li > a {
  font-size: 14px;
  font-style: italic;
  color: #898989;
  text-decoration: none;
}
.lista-categorias-home .menu-categorias-container ul li > a:hover {
  font-weight: 400;
  color: #B21971;
}

.lista-categorias-home .menu-categorias-container ul li > ul.sub-menu {
  padding: 0 0 0 20px;
}


.contenedor-desenfoque {
  backdrop-filter: blur(30px);
  -webkit-backdrop-filter: blur(30px);
}

/* Form */
.runfyt_form-suscripcion .wpcf7 > form {
  font-family: "Montserrat";
  font-weight: 300;
}
.runfyt_form-suscripcion .wpcf7 > form > p {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 5px;
  margin: 0;
}
.runfyt_form-suscripcion .wpcf7 > form > p br {
  display: none;
}
.runfyt_form-suscripcion .wpcf7 > form.wpcf7-form input[type="text"],
.runfyt_form-suscripcion .wpcf7 > form.wpcf7-form input[type="email"] {
  width: 100%;
  padding: 10px;
  margin: 0;
  border: 1px solid rgba(255, 255, 255, 0.5); 
  border-radius: 5px;
  background: rgba(255, 255, 255, 0.2);
  color: white;
  font-family: "Montserrat";
  font-weight: 300;
}

.runfyt_form-suscripcion .wpcf7 > form.wpcf7-form input[type="text"]::placeholder,
.runfyt_form-suscripcion .wpcf7 > form.wpcf7-form input[type="email"]::placeholder {
  color: white; 
}

.runfyt_form-suscripcion .wpcf7 > form.wpcf7-form label.acceptance {
  width: 100%;
  display: flex;
  font-size: 11px;
  font-weight: 200;
  color: white;
  justify-content: flex-start;
  flex-direction: row;
}

.runfyt_form-suscripcion .wpcf7 > form.wpcf7-form label.acceptance span {
  width: fit-content;
  margin: 0;
}
.runfyt_form-suscripcion .wpcf7 > form.wpcf7-form input[type="submit"] {
  font-weight: 800;
  font-style: italic;
  background-color: #A1216A;
  color: #FE8C2D;
  padding: 2px 40px;
  margin-top: 15px;
  border: none;
  border-radius: 5px;
  cursor: pointer;
  transition: background-color 0.3s ease;
}

.runfyt_form-suscripcion .wpcf7 > form.wpcf7-form input[type="submit"]:hover {
  background-color: #B21971;
}

.runfyt_form-suscripcion .wpcf7 :is(form.invalid .wpcf7-response-output, form.unaccepted .wpcf7-response-output, form.payment-required .wpcf7-response-output) {
  color: #ffffff;
}


/* Footer */

footer div.footer_menu nav > ul.menu li:first-child {
  list-style-type: '-';
}

footer div.footer_menu nav > ul.menu li:first-child a {
  font-weight: 600;
}

footer div.footer_menu nav > ul.menu li:not(:first-child) {
  list-style: none;
}

footer div.footer_menu nav ul {
  display: flex;
  flex-direction: column;
  gap: 10px;
  padding: 0;
  margin: 0;
  text-transform: uppercase;
}

@media (max-width: 425px) {
  footer div.footer_menu nav ul {
    align-items: center;
  }
}

footer div.footer_menu nav ul li {
  font-size: 14px;
  line-height: 1.1em;
}

footer div.footer_menu nav ul :is(li, li a) {
  color: #ffffff;
  font-weight: 300;
}

footer div.footer_menu nav ul :is(li:hover, li:hover a) {
  color: #B21971;
}

/* wishlist */
.wishlist-title-container {
  display: none;
}

/* Mini cart */

.ast-site-header-cart .woocommerce.widget_shopping_cart, div.astra-cart-drawer {
  background-color: #F2F5F7;
}
.ast-site-header-cart .widget_shopping_cart, .woocommerce .ast-site-header-cart .widget_shopping_cart {
  width: 450px!important;
}
li.woocommerce-mini-cart-item.mini_cart_item {
  padding: 10px!important;
}

li.woocommerce-mini-cart-item.mini_cart_item a:not(.remove.remove_from_cart_button) {
  display: flex;
  flex-direction: row;
  align-items: center;
  position: relative;
  width: calc(100% - 35px);
  height: auto;
  margin: 0;
}

li.woocommerce-mini-cart-item.mini_cart_item a:not(.remove.remove_from_cart_button) span {
  display: contents;
}

.woocommerce-mini-cart-item.mini_cart_item img.attachment-woocommerce_thumbnail {
  position: relative;
  transform: translateY(0);
  top: 0;
  max-width: 40px;
  width: 40px;
  height: auto;
  margin: 0 10px -20px 0!important;
  flex: 1;
}
.woocommerce-mini-cart-item.mini_cart_item span.quantity {
  display: inline-block!important;
  padding: 0 0 0 50px;
}
.astra-cart-drawer-content .woocommerce-mini-cart-item .variation, li.woocommerce-mini-cart-item.mini_cart_item dl.variation {
  display: none!important;
}


/* Products page - Shop page  */


/* Sidebar - Filters */
div.ast-container #primary {
  padding-left: 20px;
}

div.ast-container #secondary {
  position: relative;
  border-right: 0;
  padding-inline: 18px;
}
div.ast-container #secondary::before {
  content: "";
  display: block;
  position: absolute;
  opacity: 0.2;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-image: url("/wp-content/uploads/2024/08/background_sidebar.png");
  background-position: top center;
  background-repeat: no-repeat;
  background-size: cover;
  z-index: -1;
}

div.ast-container #secondary figure.runfyt-filters-logo {
  margin: -22px 0 0 0;
}

div.ast-container #secondary h3 {
  color: #B21971;
  font-size: 20px;
  font-weight: 900;
  font-style: italic;
  line-height: 0.9em;
  margin: 0 0 30px 0;
}

div.ast-container #secondary .wcapf-filter-options .wcapf-filter-option .wcapf-filter-item label {
  text-transform: uppercase;
}

@media (max-width: 970px) {
  body.woocommerce-shop header.woocommerce-products-header {
    display: none!important;
  }

  .ast-left-sidebar #content > .ast-container {
    flex-direction: column;
  }

  body.woocommerce-shop div.ast-container #primary {
    padding-left: 0;
  }

  body:is(.woocommerce-shop, .woocommerce-page.tax-product_cat) div.ast-container {
    padding: 50px 15px 0!important;
  }
  div.ast-container #primary {
    padding: 0px;
  }
}
  
/* Productos - item product */
:is(.woocommerce-js, .woocommerce-page) ul.products li.product .astra-shop-summary-wrap {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-content: center;
  align-items: stretch;
  padding: 0 10px;
}

ul.products li.product .ast-loop-product__link {
  text-decoration: none;
}
ul.products li.product .woocommerce-loop-product__title {
  font-size: 13px!important;
  font-weight: 500;
  font-style: italic;
  line-height: 1.1em;
  letter-spacing: 0px;
  color: var(--e-global-color-secondary);
}

ul.products li.product .price {
  font-weight: 600;
  font-style: italic;
  line-height: 0px;
  color: var(--e-global-color-astglobalcolor3)!important;
  text-align: left;
  margin: 0;
}

ul.products li.product .astra-shop-summary-wrap a.button:hover {
  background-color: transparent;
  opacity: 0.8;
}

/* home */
body.home ul.products {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: stretch;
}

body.home ul.products li.product {
  margin-bottom: 0;
  width: calc(100% / 4 - 8px);
}

@media ( max-width: 970px) {
  body.home ul.products li.product {
    width: calc(100% / 3 - 8px);
  }
}

@media ( max-width: 425px) {
  body.home ul.products li.product {
    width: calc(100% / 2 - 8px);
  }
}

ul.products li.product .yith-wcwl-add-to-wishlist i {
  font-size: 18px;
  margin: 0;
}

ul.products li.product .yith-wcwl-add-button {
  line-height: 1;
}


/* Product Page */
.product_title.entry-title {
  display: block;
  font-size: 35px;
  margin: 0 0 0 0!important;
}

@media(max-width: 425px) {
  .product_title.entry-title {
    font-size: 30px;
  }
}

@media(max-width: 970px) {
  body.product-template-default #content {
    padding-inline: 10px;
  }

  body.woocommerce-account :is(.entry-content ul, .entry-content ol) {
    padding-left: 0!important;
  }

  body.woocommerce-account nav.woocommerce-MyAccount-navigation {
    margin: 0 0 30px 0;
  }
}

body.product-template-default .woocommerce-variation-add-to-cart.variations_button {
  display: flex;
  gap: 15px;
}

body.product-template-default .woocommerce-variation-add-to-cart.variations_button .quantity.buttons_added {
  align-items: stretch;
  margin: 0;
}

body.product-template-default .single_add_to_cart_button.button {
  line-height: 1.1;
  margin: 0!important;
  font-size: 14px;
  font-weight: 800;
  font-style: italic;
  background-color: #A1216A!important;
  color: #FE8C2D!important;
}

body.product-template-default .woocommerce-variation-add-to-cart.variations_button .single_add_to_cart_button.button:hover {
  background-color: #B21971!important;
  color: #FE8C2D!important;
}

body.product-template-default .ast-sticky-add-to-cart .single_link_to_cart_button.button {
  font-weight: 800;
  font-style: italic;
  background-color: #A1216A!important;
  color: #FE8C2D!important;
}

body.product-template-default .ast-sticky-add-to-cart .single_link_to_cart_button.button:hover {
  background-color: #B21971!important;
  color: #FE8C2D!important;
}

body.product-template-default .ast-woocommerce-container .product_meta {
  padding: 0 3px 5px!important;
  margin: 0 0 10px 0!important;
  border-top: 0!important;
  border-bottom: 1px solid #898989;
  font-size: 13px!important;
}

body.product-template-default .ast-woocommerce-container .product_meta .posted_in a {
  text-transform: lowercase;
}

body.product-template-default .ast-woocommerce-container form.variations_form.cart {
  margin: 0 0 20px 0;
}

body.product-template-default .ast-woocommerce-container form.variations_form.cart > div:first-child {
  display: flex;
  flex-direction: column;
}

body.product-template-default table.variations {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}

body.product-template-default .ast-woocommerce-container .summary p.price {
  font-size: 18px;
  color: #898989;
}

body.product-template-default .ast-woocommerce-container .woocommerce-variation-price .price span.amount,
body.product-template-default.single-product .ast-woocommerce-container .summary .price span.amount {
  font-size: 32px;
  color: #434343;
  font-weight: 800;
  font-style: italic;
}

body.product-template-default.single-product .ast-woocommerce-container .summary form.cart {
  display: flex;
  align-items: stretch;
  margin: 0 0 20px 0!important;
}

body.product-template-default.single-product .ast-woocommerce-container .summary form.cart .quantity.buttons_added{
  margin: 0!important;
}

body.product-template-default .ast-sticky-add-to-cart-content form.cart .added_to_cart.wc-forward {
  display: none!important;
}


/* Scroll Top */
#ast-scroll-top {
  bottom: 80px!important;
}


/* buttons */
.woocommerce-Button.button {
  font-weight: 800;
  font-style: italic;
  background-color: #A1216A!important;
  color: #FE8C2D!important;
}

.woocommerce-Button.button:hover {
  background-color: #B21971!important;
  color: #FE8C2D!important;
}

/* Checkout page */

body.woocommerce-checkout .ast-container #primary {
  padding-inline: 0!important;
}

body.woocommerce-checkout .woocommerce-checkout-review-order {
  padding: 0 10px!important;
}

body.woocommerce-checkout .woocommerce-checkout-review-order .cart_item .product-name {
  display: contents;
}

/* Responsive */
@media (max-width: 970px) {
  html body { 
    --wp--custom--ast-container-width: 95%;
    --wp--custom--ast-content-width-size: 95%;
  }
  .entry-content[data-ast-blocks-layout] > * {
    margin: 0;
  }

  .ast-container, .ast-container-fluid {
    margin-inline: 0!important;
    padding-inline: 0!important;
  }

  body.woocommerce-checkout #content {
    display: flex;
    flex-direction: column;
    align-items: center;
  }

  body.woocommerce-checkout table.woocommerce-checkout-review-order-table thead {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
  }

  body.woocommerce-checkout table.woocommerce-checkout-review-order-table tr {
    display: flex;
    flex-direction: column;
  }

  body.woocommerce-checkout table.woocommerce-checkout-review-order-table tr.cart_item td.product-name {
    display: contents!important;
  }

  body.woocommerce-checkout table.woocommerce-checkout-review-order-table tr.cart_item td.product-total {
    border-color: #aeaeae!important;
  }
}

@media (min-width: 425px) {
  body.woocommerce-checkout .ast-container {
    max-width: 95%!important;
  }
}

body.woocommerce-page .entry-content {
  display: flex!important;
  justify-content: center!important;
}

table.wishlist_table a.add_to_cart_button.button.add_to_cart:hover {
  background-color: transparent!important;
}

ul.shop_table.cart.wishlist_table.wishlist_view.responsive.mobile {
  padding-inline: 0!important;
}

ul.shop_table.cart.wishlist_table.wishlist_view.responsive.mobile li {
  margin: 0 0 30px 0!important;
}

ul.shop_table.cart.wishlist_table.wishlist_view.responsive.mobile .product-add-to-cart > * {
  font-size: 14px!important;
}

ul.shop_table.cart.wishlist_table.wishlist_view.responsive.mobile li div.item-wrapper {
  display: flex;
  flex-direction: column;
  width: 100%;
}

ul.shop_table.cart.wishlist_table.wishlist_view.responsive.mobile li div.item-details {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  width: 100%;
  margin: 5px 0 0 0;
}

ul.shop_table.cart.wishlist_table.wishlist_view.responsive.mobile li div.item-details h3 {
  font-size: 16px;
  list-style: 1;
}

ul.shop_table.cart.wishlist_table.wishlist_view.responsive.mobile li table {
  margin: 0;
}

ul.shop_table.cart.wishlist_table.wishlist_view.responsive.mobile li table tr > td {
  font-size: 12px;
  line-height: 1;
}

ul.shop_table.cart.wishlist_table.wishlist_view.responsive.mobile li div.additional-info-wrapper {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
}

ul.shop_table.cart.wishlist_table.wishlist_view.responsive.mobile li div.additional-info-wrapper :is(.product-add-to-cart, a) {
  padding: 0!important;
  margin: 0!important;
}

ul.shop_table.cart.wishlist_table.wishlist_view.responsive.mobile li div.additional-info-wrapper .product-remove {
  font-size: 22px;
}

ul.shop_table.cart.wishlist_table.wishlist_view.responsive.mobile li div.additional-info-wrapper .additional-info {
  margin: 0 0 5px 0;
}