/*//////////////////////////////////////////////////////*/
/*///UTILIDADES/////////////////////////////////////////*/
/*//////////////////////////////////////////////////////*/

:root {
	--alerta: #f7cf47;
	--alerta-c: #faf7be;
	--alerta-o: #935801;
	--error: #d10000;
	--error-c: #ffe8e8;
	--error-o: #a70909;
	--exito: #20c502;
	--exito-c: #daffdd;
	--exito-o: #1b600f;
	--completo: #1976e0;
	--completo-c: #ecf5ff;
	--completo-o: #222f3e;
	
	--left-sidebar-width: 300px;
	--right-sidebar-width: 400px;
	--mobile-aside-max-width: 400px;
	
	--general-gap: 100px;
	--reduced-gap: 50px;
	--big-col-gap: 60px;
	--col-gap: 30px;
	
	--aspect-ratio-banner-1: 1080 / 165;
	--aspect-ratio-banner-2: 525 / 165;
	--aspect-ratio-banner-3: 327 / 165;
	
	--br-circle: 100%;
	--br-pill: 999em;
	--br-round: 20px;
	--br-notice: 10px;
	
	--overlay-opacity: 0.7;
	
	--notice-padding: 1.5em 2em 1.5em 4em;
	
	--ff-icons: "Font Awesome 6 Free";
	--ff-icons-brands: "Font Awesome 6 Brands";
}

@media (width < 1024px) {
    
    :root {
	    --general-gap: 80px;
    }
    
}

@media (width < 768px) {
    
    :root {
	    --general-gap: 50px;
	    --wpex-container-max-width: 86% !important;
    }
    
}

/* Fondos */

.bg-multiply {
    background-blend-mode: multiply;
}

/*//////////////////////////////////////////////////////*/
/*///FORMATEO///////////////////////////////////////////*/
/*//////////////////////////////////////////////////////*/

/* General */

html, body {
	overflow-x: hidden !important;
	scroll-behavior: smooth;
    scroll-padding-top: 6rem;
}

html:not(.et-fb-preview--wireframe) #page-container {
	overflow-x: hidden !important;
	position: relative !important;
}

::-webkit-scrollbar {
    width: 1rem;
}

div ::-webkit-scrollbar {
    width: 1rem;
}
 
::-webkit-scrollbar-track {
    background: var(--wpex-surface-2, var(--wpex-gray-100));
}
 
::-webkit-scrollbar-thumb {
    background: var(--wpex-border-main);
}

h1, h2, h3, h4, h5, h6 {
	padding: 0;
}

.wpb_text_column h2,
.wpb_text_column h3,
.wpb_text_column h4 {
    margin-bottom: var(--wpex-el-margin-bottom);
}

input, textarea, select {
    width: 100%;
}

input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button {
   opacity: 1;
}

small {
	font-size: 0.8em;
}

.post-edit,
.ocultar {
	display: none !important;
}

.invertir.vc_row {
	display: flex;
	flex-wrap: wrap;
}

.wpex-pagination {
	margin: 0 0 var(--general-gap);
}

.wpex-pagination .page-numbers:is(a,span) {
	display: grid;
	align-items: center;
}

a.vcex-icon-box {
    transition: background ease 0.3s;
}

a:hover {
    text-decoration: none !important;
}

.wp-element-button {
    transition: 0.15s all ease;
}

.wp-element-button:hover {
    color: var(--wpex-hover-btn-color, var(--wpex-on-accent-alt));
}

#content-wrap #primary,
#content-wrap #sidebar {
	padding-bottom: 0;
}

main #primary:has(#proximamente) {
	padding: 0 !important;
}

@media (width >= 992px) {
	
	.display-mobile {
		display: none !important;
	}
	
}

@media (width < 992px) {
	
	.display-desktop {
		display: none !important;
	}
	
	.invertir.vc_row .wpb_column:first-child {
		order: 2 !important;
	}
	
	.invertir.vc_row .wpb_column:last-child {
		order: 1 !important;
	}
	
}

/* Espaciado */

div.vc_row {
    row-gap: var(--general-gap);
    margin-bottom: var(--wpex-vc-elements-bottom-margin, var(--general-gap));
}

div.vc_row.less-row-gap {
    row-gap: var(--reduced-gap);
}

div.vc_row.no-row-gap {
    row-gap: 0;
}

div.vc_row.no-bottom-margins,
div.vc_column-inner,
div.vc_row:has(.wpex-pagination) {
    margin-bottom: 0;
}

div:has(> .nr-col) {
    row-gap: var(--wpex-row-gap);
}

div.nr-col {
    margin: 0;
}

@media (width < 992px) {
	
	div.vc_row.acercar {
		row-gap: 30px;
	}
	
}

/* Buscador */

.searchandfilter ul {
    margin: 0;
}

.searchandfilter input {
    border-radius: 0 !important;
}

/* Mapa */

.acf-map {
    width: 100%;
    height: 400px;
}

.acf-map img {
    max-width: inherit !important;
}

/* reCAPTCHA */

.grecaptcha-badge {
	display: none !important;
}

/* Revolution Slider */

.rs-layer [data-type="text"] {
	white-space: normal !important;
}

/* Add to any */

.addtoany_shortcode {
	text-align: right;
	margin: 0 -5px 0 0;
}

.addtoany_shortcode a {
	height: 30px;
}

.a2a_svg {
	border-radius: var(--br-circle, 0) !important;
}

.a2a_svg svg {
	padding: 4px !important;
}

.addtoany_list a span.a2a_svg {
    transition: transform ease 0.3s;
}

.addtoany_list a:hover span.a2a_svg {
    opacity: 1;
    transform: scale(1.1);
}

.a2a_overlay {
    background: var(--wpex-text-2) !important;
    backdrop-filter: none !important;
    opacity: var(--overlay-opacity);
}

.a2a_full {
    box-shadow: none !important;
}

/* Próximamente */

#coming-soon-footer-banner {
    display: none;
}

/* Slider */

.slider {
    background: var(--wpex-surface-2, var(--wpex-gray-100));
    position: relative;
}

.boxed .slider {
    border-radius: var(--br-round, 0);
    overflow: hidden;
}

.slider a {
    display: block;
}

.slider img {
    object-fit: cover;
    object-position: center;
    width: 100%;
    height: 100%;
}

.slider .owl-dots {
    position: absolute;
    left: 0;
    bottom: 20px;
    width: 100%;
}

.slider .wpex-carousel.arrwstyle-slim.arrwpos-abs .owl-prev {
    left: 0 !important;
}

.slider .wpex-carousel.arrwstyle-slim.arrwpos-abs .owl-next {
    right: 0 !important;
}

.slider-desktop,
.slider-desktop img {
    aspect-ratio: 1920 / 600;
}

.boxed .slider-desktop,
.boxed .slider-desktop img {
    aspect-ratio: 1400 / 450;
}

.slider-laptop,
.slider-laptop img {
    aspect-ratio: 1280 / 600;
}

.boxed .slider-laptop,
.boxed .slider-laptop img {
    aspect-ratio: 1000 / 450;
}

.slider-mobile,
.slider-mobile img {
    aspect-ratio: 5 / 4;
}

@media (width <= 1000px) {
    
    .vcex-shortcode:has(.slider-laptop,.slider-mobile) .slider-desktop {
        display: none;
    }
    
}

@media (width > 1000px) {
    
    .slider-laptop {
        display: none;
    }
    
}

@media (width >= 768px) {
    
    .slider-mobile {
        display: none;
    }
    
}

@media (width < 768px) {
    
    .vcex-shortcode:has(.slider-mobile) .slider-laptop {
        display: none;
    }
    
    .slider .owl-dots {
        bottom: 10px;
        zoom: 0.7;
    }
    
}


/* Carrusel */

.wpex-carousel.arrwpos-abs .owl-nav__btn {
	--size: 40px;
	background: var(--wpex-surface-2);
	border-radius: var(--br-circle, 0);
	color: var(--wpex-text-2);
	line-height: var(--size);
	width: var(--size);
	height: var(--size);
	transition: all ease 0.3s;
}

.wpex-carousel.arrwpos-abs .owl-nav__btn.disabled {
	opacity: 0;
}

.wpex-carousel.arrwpos-abs .owl-nav__btn:hover {
	background: var(--wpex-accent-alt);
	color: var(--wpex-on-accent-alt);
}

.wpex-carousel.arrwpos-abs .owl-nav__btn::before {
	display: none;
}

.wpex-carousel.arrwpos-abs .owl-prev {
	left: 0;
	margin-left: calc(-1 * var(--size) / 2);
}

.wpex-carousel.arrwpos-abs .owl-next {
	right: 0;
	margin-right: calc(-1 * var(--size) / 2);
}

.wpex-carousel.arrwpos-abs .owl-nav__btn .ticon,
.wpex-carousel.arrwpos-abs .owl-nav__btn .wpex-icon {
	font-size: var(--wpex-text-md);
}

.wpex-carousel .owl-dot {
	--size: 16px;
	background: var(--wpex-white);
	width: var(--size);
	height: var(--size);
	margin-inline: 5px;
	position: relative;
}

.wpex-carousel .owl-dot.active {
	background: var(--wpex-white);
}

.wpex-carousel .owl-dot.active span {
	background: var(--wpex-accent);
	border-radius: var(--br-circle, 0);
	width: calc(var(--size) / 2) calc(var(--size) / 2);
	position: absolute;
	inset: calc(var(--size) / 4);
}

@media (width >= 1024px) {
	
	.wpex-carousel.arrwpos-abs .owl-nav__btn {
		opacity: 0;
		zoom:0.8;
	}

	.wpex-carousel.arrwpos-abs:hover .owl-nav__btn:not(.disabled) {
		opacity: 1;
		zoom: 1;
	}
	
}

@media (width < 768px) {
    
    .wpex-carousel.arrwpos-abs .owl-nav__btn {
        --size: 30px;
    }
    
    .wpex-carousel.arrwpos-abs .owl-nav__btn .ticon,
    .wpex-carousel.arrwpos-abs .owl-nav__btn .wpex-icon {
        font-size: var(--wpex-text-sm);
    }
    
}

/* Carrusel transformado en grilla */

.grilla.owl-carousel .owl-stage-outer {
	overflow: visible !important;
}

.grilla.owl-carousel .owl-stage {
	display: grid !important;
	grid-template-columns: repeat(5,1fr) !important;
	gap: 30px !important;
	width: 100% !important;
}

.grilla.owl-carousel .owl-stage:after {
	display: none;
}

.grilla.owl-carousel .owl-item {
	margin: 0 !important;
	width: auto !important;
}

@media (width <= 1280px) {
	
	.grilla.owl-carousel .owl-stage {
		grid-template-columns: repeat(4,1fr) !important;
	}
	
}

@media (width < 992px) {
	
	.grilla.owl-carousel .owl-stage {
		grid-template-columns: repeat(3,1fr) !important;
	}
	
}

@media (width < 768px) {
	
	.grilla.owl-carousel .owl-stage {
		grid-template-columns: repeat(2,1fr) !important;
	}
	
}

/* Imágenes */

figure.vcex-image img {
    width: 100%;
}

/* Error 404 */

.error404 .entry img {
    width: 100%;
}

/* Redes sociales */

.redes-sociales {
    --size: 20px;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px;
    list-style: none;
    margin: 0;
}

.con-fondo .redes-sociales {
    --size: 40px;
}

.redes-sociales .perfil {
    padding: 0;
}

.redes-sociales .link {
    font-size: calc(var(--size) / 2);
    color: currentColor;
    line-height: 1em;
    display: flex;
    align-items: center;
    justify-content: center;
    width: var(--size);
    height: var(--size);
    transition: background-color ease 0.3s, color ease 0.3s;
}

.redes-sociales .link:hover {
    color: var(--wpex-accent);
    text-decoration: none;
}

.con-fondo .redes-sociales .link {
    background: var(--wpex-accent);
	border-radius: var(--br-circle, 0);
	color: var(--wpex-on-accent);
	height: 40px;
	width: 40px;
	position: relative;
	overflow: hidden;
  	z-index: 1;
}

.con-fondo .redes-sociales .link:hover {
    background: var(--wpex-accent-alt);
	color: var(--wpex-on-accent-alt);
}

/* Menú */

.vcex-navbar--list :last-child > a {
    margin: 0;
}

/* Medios de pago */

.magno-medios-pago {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px;
    list-style: none;
    padding: 0;
    margin: 0;
}

.centrar .magno-medios-pago {
    justify-content: center;
}

.sin-color .magno-medios-pago {
    filter: grayscale(100%);
}

.magno-medios-pago img {
    display: block;
    width: 60px;
    height: auto;
}

footer .magno-medios-pago img {
    width: 40px;
}

/*//////////////////////////////////////////////////////*/
/*///HEADER/////////////////////////////////////////////*/
/*//////////////////////////////////////////////////////*/

/* Aviso */

#h-topbar-aviso {
    font-size: var(--wpex-text-sm);
    line-height: 1.1em;
    text-transform: uppercase;
    text-align: center;
}

#h-topbar-aviso:not(:has(a)),
#h-topbar-aviso a {
    color: currentColor;
    text-decoration: none;
    display: block;
    padding: 10px 7%;
}

/* Topbar */

#h-topbar {
    background: var(--wpex-surface-2, var(--wpex-gray-100));
}

#h-topbar .topbar-contacto {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 20px;
}

#h-topbar a {
    color: currentColor;
}

#h-topbar a:hover {
    color: var(--wpex-accent);
    text-decoration: none;
}

#h-topbar .ticon {
    margin-right: 5px;
}

/* Principal */

#h-main {
    --logo-width: 300px;
    --shop-width: 300px;
    transition: padding ease 0.3s;
    row-gap: 20px;
    z-index: 2;
}

.makeSticky::before {
    content: "";
    background-color: var(--wpex-white);
    box-shadow: 0px 0 10px 0 rgba(0,0,0,0.1) !important;
    display: block;
    width: 200%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    transform: translateX(-25%);
    opacity: 0;
    transition: opacity ease 0.3s;
}

.makeSticky.sticky {
    width: 100%;
    padding-inline: max(calc((100vw - var(--wpex-container-max-width)) / 2), 7%);
    position: fixed;
    inset: 0 0 auto 0;
    z-index: 999;
}

.makeSticky.sticky::before {
    opacity: 1;
}

#h-main .wpb_column:first-child {
    width: var(--logo-width);
}

#h-main .wpb_column:nth-child(2) {
    flex: 1;
}

#h-main .wpb_column:nth-child(3) {
    width: var(--shop-width);
}
    
#h-main .logo {
    width: 100%;
    max-width: 150px;
}

#h-main .wpb_wrapper:has(.h-icono) {
    display: flex;
    justify-content: end;
    gap: 30px;
}

#h-main .h-icono {
    position: relative;
}

#h-main .h-icono > a {
    border-radius: var(--br-xxs);
    color: var(--wpex-text-2);
    display: flex;
    justify-content: flex-end;
    align-items: center;
    gap: 20px;
    height: 100%;
}

#h-main .h-icono > a:hover {
    color: var(--wpex-accent);
    text-decoration: none;
}

#h-main .h-icono svg {
    font-size: var(--wpex-text-4xl);
}

#h-main .h-icono .account-link svg {
    font-size: 2em;
}

#h-main .h-icono .label {
    font-size: var(--wpex-text-md);
    line-height: 1em;
    margin-top: -5px;
}

#h-main .h-icono .label > * {
    display: block;
}

#h-main .h-icono .text {
    font-size: 0.7em;
    text-transform: uppercase;
    margin-bottom: 2px;
}

#h-main .h-icono .icono {
    position: relative;
}

#h-main .h-icono .icono .circulo {
    --size: 18px;
    background: var(--wpex-accent-alt);
	border-radius: var(--br-circle, 0);
	color: var(--wpex-on-accent-alt);
	font-size: 0.7em;
	width: var(--size);
	line-height: var(--size);
	text-align: center;
	position: absolute;
	right: -10px;
	top: -5px;
}

#h-main .h-icono .icono .circulo svg {
	font-size: 1em;
}

#h-main .h-icono .icono .quantity {
    font-weight: bold;
}

body:not(.logged-in) #h-main .h-icono .icono .login,
#h-main .h-icono .icono .circulo.q-0 {
    display: none;
}

@media (width < 1200px) {
    
    #h-main {
        --logo-width: auto;
        --shop-width: auto;
    }

}

@media (width < 1024px) {
    
    .home #h-main {
        padding-bottom: 0 !important;
    }
    
    #h-main .wpb_column:nth-child(2) {
        flex: auto;
        order: 3;
        width: 100%;
    }

    #h-main .wpb_column:nth-child(3) {
        flex: 1;
        z-index: 2;
    }
    
    #h-main .wpb_wrapper:has(.h-icono) {
        gap: 20px;
    }
    
    #h-main .cart-info .icono {
        margin-right: 5px;
    }
    
    #h-main .wpb_wrapper:has(#h-search) {
        display: flex;
        gap: 30px;
    }
    
    #h-search {
        flex: 1;
    }
    
}

@media (width < 768px) {

    #h-main .h-icono .label {
        display: none;
    }
    
}

@media (width < 500px) {
    
    #h-main .logo {
        max-width: 120px;
    }
    
}

/* Cuenta submenú */
/*
body:not(.super-admin) #h-main .account-link .label,
body:not(.super-admin) #h-main .account-menu {
    display: none !important;
}*/

#h-main .account-menu {
    background: var(--wpex-white);
    display: block;
    width: calc(100dvw - 50px);
    max-width: var(--mobile-aside-max-width);
    padding: 30px;
    position: fixed;
    right: -100%;
    top: 0;
    pointer-events: auto;
    visibility: hidden;
    opacity: 0;
    transition: all ease 0.3s;
    scrollbar-width: none;
    scrollbar-color: transparent transparent;
    z-index: 999;
}

#h-main .account-menu.activo {
    right: 0;
    opacity: 1;
    visibility: visible;
}

#h-main .account-menu ul {
    display: grid;
    gap: 15px;
    list-style: none;
    margin: 0;
}

#h-main .account-menu a {
    line-height: 1em !important;
    display: block;
}

@media (width >= 1024px) {
    
    #h-main .account-menu {
        --arrow: 15px;
        background: var(--wpex-surface-2, var(--wpex-gray-100));
        border-radius: var(--br-round, 0);
        padding: 20px;
        max-width: 200px;
        position: absolute;
        top: calc(100% + var(--arrow));
        left: 50%;
        transform: translateX(-50%);
    }
    
    #h-main .account-menu::before {
        content: "";
        background: var(--wpex-surface-2, var(--wpex-gray-100));
        clip-path: polygon(50% 20%, calc(50% - var(--arrow)) 100%, calc(50% + var(--arrow)) 100%);
        width: 100%;
        height: var(--arrow);
        position: absolute;
        top: calc(-1 * var(--arrow));
        left: 50%;
        transform: translateX(-50%);
    }
    
    #h-main .account-menu .titulo {
        display: none;
    }
    
    #h-main .account-menu {
        text-align: center;
    }
    
}

@media (width < 1024px) {
    
    #h-main .account-menu {
        height: 100vh;
        overflow-y: scroll;
    }

    #h-main .vcex-shortcode:has(.account-menu)::before {
        content: "";
        background: var(--wpex-text-2);
        position: fixed;
        top: 0;
        right: 0;
        width: 100vw;
        height: 100vh;
        pointer-events: auto;
        visibility: hidden;
        opacity: 0;
        transition: all ease 0.3s;
    }

    #h-main .vcex-shortcode:has(.account-menu.activo)::before {
        opacity: var(--overlay-opacity);
        visibility: visible;
    }

    #h-main .vcex-shortcode:has(.account-menu)::after {
        content: "+";
        color: #fff;
        font-size: 40px;
        line-height: 20px;
        height: auto;
        transform: rotate(45deg);
        position: fixed;
        left: 12px;
        top: 14px;
        pointer-events: auto;
        visibility: hidden;
        opacity: 0;
        transition: all ease 0.3s;
    }

    #h-main .vcex-shortcode:has(.account-menu.activo)::after {
        opacity: 1;
        visibility: visible;
    }
    
    #h-main .vcex-shortcode:has(.account-menu.activo):hover::before,
    #h-main .vcex-shortcode:has(.account-menu.activo):hover::after {
        cursor: pointer;
    }
    
    #h-main .account-menu li:not(:first-child) {
        border-top: 1px solid var(--wpex-border-main);
        padding-top: 15px;
    }

    #h-main .account-menu a:hover {
        color: currentColor;
    }
    
    #h-main .account-menu .titulo a {
        font-size: var(--wpex-text-xl);
        font-weight: var(--wpex-bold);
    }
    
}

/* Menús */

#h-menu {
    background: var(--wpex-surface-2, var(--wpex-gray-100));
}

#h-menu .wpb_column:first-child {
    width: auto;
}

#h-menu .wpb_column:last-child {
    flex: 1;
}

#h-menu .mega-menu a {
    /*font-size: var(--wpex-text-md) !important;*/
	text-transform: uppercase !important;
    transition: all ease 0.3s !important;
}

#h-categories .mega-menu > li > a {
	background: var(--wpex-btn-bg) !important;
	border-radius: var(--wpex-btn-border-radius) !important;
    border-width: var(--wpex-btn-border-width) !important;
    border-style: var(--wpex-btn-border-style) !important;
    border-color: var(--wpex-btn-border-color, currentColor) !important;
	color: var(--wpex-btn-color) !important;
	line-height: var(--wpex-btn-line-height) !important;
	padding: 0.5em 1em !important;
	text-align: center;
	height: auto !important;
}

#h-categories .mega-sub-menu {
    --gap: 10px;
    border-radius: 0 0 var(--br-round, 0) var(--br-round, 0) !important;
    padding-block: var(--gap) !important;
    overflow: hidden;
}

#h-categories .mega-sub-menu:has(.mega-toggle-on) {
    border-bottom-right-radius: 0 !important;
}

#h-categories .mega-sub-menu .mega-sub-menu {
    border-bottom-left-radius: 0 !important;
}

#h-categories .mega-sub-menu li:has(.mega-sub-menu) {
    position: static !important;
}

#h-categories .mega-sub-menu li:has(.mega-sub-menu) > a::before,
#h-categories .mega-sub-menu .mega-sub-menu::before {
    content: "";
    background: var(--wpex-white) !important;
    display: block !important;
    margin: 0 !important;
    opacity: 0 !important;
    position: absolute !important;
    inset: 0 !important;
    transition: all ease 0.15s;
}

#h-categories .mega-sub-menu .mega-sub-menu::before {
    margin-top: var(--gap) !important;
}

#h-categories .mega-sub-menu li:has(.mega-sub-menu):hover > a::before,
#h-categories .mega-sub-menu .mega-sub-menu::before {
    opacity: 0.05 !important;
}

#h-categories .mega-sub-menu .mega-sub-menu .mega-sub-menu::before {
    opacity: 0.1 !important;
}

#h-categories .mega-sub-menu .mega-sub-menu .mega-sub-menu .mega-sub-menu::before {
    opacity: 0.15 !important;
}

#h-categories .mega-sub-menu .mega-sub-menu {
    min-height: 100% !important;
}

#h-categories .mega-menu > li > .mega-sub-menu {
    margin-left: -20px !important;
}

#h-categories .mega-menu > li.mega-toggle-on > a {
	background: var(--wpex-hover-btn-bg) !important;
	color: var(--wpex-hover-btn-color) !important;
}

#h-categories .mega-menu > li > a::before {
    content: "\f1de" !important;
    font-family: var(--ff-icons) !important;
    font-weight: var(--wpex-bold);
    display: inline-block;
    margin-right: 0.8em !important;
}

#h-categories .mega-menu > li > a .mega-indicator {
    display: none !important;
}

#h-principal .mega-menu {
    text-align: right !important;
}

#h-principal .mega-menu li:last-child a {
    padding-right: 0 !important;
}

body:not(.ofertas-disponibles) ul li.ofertas {
    display: none !important;
}

/* Buscador */

#h-search ul {
	border-radius: var(--wpex-input-border-radius, 0);
	border: var(--wpex-input-border-width) var(--wpex-input-border-style) var(--wpex-input-border-color);
	display: flex;
	flex-wrap: wrap;
	margin: 0;
	overflow: hidden;
}

#h-search li {
	padding: 0;
}

#h-search li.sf-field-search {
	flex: 1;
}

#h-search li.sf-field-taxonomy-product_cat {
	width: 200px;
}

#h-search li.sf-field-submit {
	width: 50px;
	position: relative;
}

#h-search li * {
	display: block;
	width: 100%;
	position: relative;
}

#h-search input,
#h-search select {
	appearance: none;
	border: none !important;
	border-radius: 0 !important;
	line-height: var(--wpex-input-line-height) !important;
	padding: var(--wpex-input-padding);
}

#h-search select:hover {
	cursor: pointer;
}

#h-search select option {
	padding: 0 10px !important;
}

#h-search label:has(select)::after {
	content: "\f107";
	font-family: var(--ff-icons);
    font-weight: var(--wpex-bold);
	position: absolute;
	right: 20px;
	top: 50%;
	transform: translateY(-50%);
	pointer-events: none;
}

#h-search li.sf-field-submit::before {
	content: "\f002";
	color: var(--wpex-btn-color);
	font-family: var(--ff-icons);
	font-size: 1.2em;
    font-weight: var(--wpex-bold);
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%,-50%);
	pointer-events: none;
	z-index: 2;
	transition: all ease 0.3s;
}

#h-search input[type="submit"] {
	background: var(--wpex-btn-bg);
	color: transparent;
	font-size: 0;
	height: 100%;
}

#h-search li.sf-field-submit:hover input[type="submit"]:hover {
	background: var(--wpex-hover-btn-bg);
}

#h-search li.sf-field-submit:hover::before {
	color: var(--wpex-hover-btn-color);
}

@media (width < 768px) {
	
	#h-search li.sf-field-taxonomy-product_cat {
		display: none !important;
	}
	
}

/* Mobile */

#h-menu-mobile .mega-toggle-block {
    margin: 0 !important;
}

#h-menu-mobile .mega-menu {
	position: fixed !important;
	display: block !important;
    height: 100vh !important;
    width: calc(100dvw - 50px) !important;
	max-width: var(--mobile-aside-max-width) !important;
    right: -100% !important;
    top: 0 !important;
    left: auto !important;
	overflow-y: scroll !important;
	pointer-events: auto !important;
	visibility: hidden !important;
	opacity: 0 !important;
	transition: all ease 0.3s !important;
	scrollbar-width: none;
  	scrollbar-color: transparent transparent;
}

#h-menu-mobile .mega-menu::-webkit-scrollbar {
  	width: 0;
  	height: 0;
}

#h-menu-mobile .mega-menu::-webkit-scrollbar-thumb {
  	background: transparent;
}

#h-menu-mobile .mega-menu-open + .mega-menu {
    right: 0 !important;
	opacity: 1 !important;
	visibility: visible !important;
}

#h-menu-mobile .mega-menu-toggle::before {
	content: "";
	background: var(--wpex-text-2);
	position: fixed;
	top: 0;
	right: 0;
	width: 100vw;
	height: 100vh;
	pointer-events: auto;
	visibility: hidden;
	opacity: 0;
	transition: all ease 0.3s;
}

#h-menu-mobile .mega-menu-toggle::after {
	content: "+";
	color: #fff;
	font-size: 40px;
	line-height: 20px;
	transform: rotate(45deg);
	position: fixed;
	left: 12px;
	top: 14px;
	pointer-events: auto;
	visibility: hidden;
	opacity: 0;
	transition: all ease 0.3s;
}

#h-menu-mobile .mega-menu-toggle.mega-menu-open::before {
	opacity: var(--overlay-opacity);
	visibility: visible;
}

#h-menu-mobile .mega-menu-toggle.mega-menu-open::after {
	opacity: 1;
	visibility: visible;
}

#h-menu-mobile .mega-menu li a {
	border-bottom: 1px solid var(--wpex-border-main) !important;
	height: auto !important;
	padding: 15px 0 !important;
}

#h-menu-mobile .mega-menu li:first-child a {
	padding-top: 0 !important;
}

#h-menu-mobile .mega-menu li.titulo:not(:first-child) {
    margin-top: 10px !important;
}

#h-menu-mobile .mega-menu li.titulo a {
    font-size: var(--wpex-text-xl) !important;
    font-weight: var(--wpex-bold) !important;
}

#h-menu-mobile .mega-menu li:has(+ .titulo) a,
#h-menu-mobile .mega-menu > li:last-child > a,
#h-menu-mobile .mega-menu li .mega-sub-menu li {
    border: none !important;
}

#h-menu-mobile .mega-menu li .mega-sub-menu {
    background: var(--wpex-surface-2, var(--wpex-gray-100)) !important;
}

#h-menu-mobile .mega-menu li .mega-sub-menu li a {
    background: transparent !important;
    line-height: 1em !important;
	padding: 15px !important;
}

#h-menu-mobile .mega-menu li .mega-sub-menu li:not(:last-child) a {
	border-bottom: 1px solid var(--wpex-border-main) !important;
}

#h-menu-mobile .mega-menu-wrap .mega-menu-toggle .mega-toggle-block-0 .mega-toggle-animated-slider:hover .mega-toggle-animated-inner,
#h-menu-mobile .mega-menu-wrap .mega-menu-toggle .mega-toggle-block-0 .mega-toggle-animated-slider:hover .mega-toggle-animated-inner::before,
#h-menu-mobile .mega-menu-wrap .mega-menu-toggle .mega-toggle-block-0 .mega-toggle-animated-slider:hover .mega-toggle-animated-inner::after {
    background: var(--wpex-accent) !important;
}

#h-filter {
    aspect-ratio: 1 / 1;
	display: none;
	align-items: center;
	justify-content: center;
	width: auto;
	height: 100%;
	padding: 0;
}

@media (width < 1024px) {

    .woocommerce-page.archive #h-filter {
    	display: grid;
    }

}

/* Títulos de página */

header.page-header {
    margin-bottom: var(--general-gap);
}

@media (width < 1024px) {
    
    header.page-header.wpex-supports-mods {
        background: var(--wpex-surface-3);
        border: none;
    }
    
    header.page-header.wpex-supports-mods .page-header-title {
        color: var(--wpex-text-3);
    }
    
}

/* Migas de pan */

header .site-breadcrumbs > span > span > span {
	padding: 0 3px;
}

header .site-breadcrumbs > span > span > span:first-child {
	padding-left: 0;
}

header .site-breadcrumbs > span > span > span:last-child {
	padding-right: 0;
}

header .site-breadcrumbs a {
	text-decoration: none;
}

header .site-breadcrumbs i {
	font-size: 0.8em;
}

@media (width < 1024px) {
    
    header .site-breadcrumbs,
    header .site-breadcrumbs a,
    header .site-breadcrumbs a:hover {
        color: var(--wpex-text-3);
    }
    
}

/*//////////////////////////////////////////////////////*/
/*///BANNERS////////////////////////////////////////////*/
/*//////////////////////////////////////////////////////*/

.magno-banner {
    display: grid;
    gap: var(--col-gap);
    margin-bottom: var(--general-gap);
}

.magno-banner a {
    display: block;
}

.magno-banner img {
    border-radius: var(--br-round, 0);
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    transition: transform ease 0.3s;
}

.magno-banner img:hover {
    transform: scale(1.01);
}

.magno-banner.x1 img {
    aspect-ratio: var(--aspect-ratio-banner-1);
}

.magno-banner.x2 img,
.magno-banner.x1 img.visible-phone {
    aspect-ratio: var(--aspect-ratio-banner-2);
}

.magno-banner.x3 img {
    aspect-ratio: var(--aspect-ratio-banner-3);
}

@media (width >= 768px) {
    
    .magno-banner {
        grid-auto-flow: column;
        grid-auto-columns: 1fr;
    }
    
}

/*//////////////////////////////////////////////////////*/
/*///SUCURSALES/////////////////////////////////////////*/
/*//////////////////////////////////////////////////////*/

#magno-sucursales {
    display: grid;
    gap: var(--reduced-gap);
}

#magno-sucursales .detalles {
    --gap: 30px;
    --size: 130px;
    display: grid;
    align-content: start;
    gap: var(--gap);
}

#magno-sucursales .sucursal {
    background: var(--wpex-surface-2, var(--wpex-gray-100));
    border-radius: var(--br-round, 0);
    display: grid;
    grid-template-columns: var(--size) 1fr;
    gap: var(--gap);
    padding: var(--gap);
}

#magno-sucursales img {
    aspect-ratio: 1 / 1;
    border-radius: calc(var(--br-round, 0) / 2);
    display: block;
    width: var(--size);
    object-fit: cover;
    object-position: center;
}

#magno-sucursales * {
    margin: 0;
}

#magno-sucursales h3 {
    font-weight: var(--wpex-bold);
}

#magno-sucursales .direccion {
    font-weight: var(--wpex-bold);
    color: var(--wpex-accent);
    margin-bottom: 10px;
}

#magno-sucursales .acf-map {
    aspect-ratio: 1 / 1;
    border-radius: var(--br-round, 0);
    width: 100%;
    height: 100%;
    max-height: 400px;
}

@media (width >= 1024px) {
    
    #magno-sucursales:not(.pocos) {
        grid-auto-flow: column;
        grid-auto-columns: 1fr;
    }
    
    #magno-sucursales:not(.pocos) .detalles {
        aspect-ratio: 1 / 1;
        overflow-x: hidden;
        overflow-y: auto;
        width: 100%;
        height: 100%;
    }
    
    #magno-sucursales.pocos .detalles {
        grid-auto-flow: column;
        grid-auto-columns: 1fr;
    }
    
}

@media (width < 640px) {
    
    #magno-sucursales .sucursal {
        grid-template-columns: 1fr;
    }
    
}

/*//////////////////////////////////////////////////////*/
/*///FOOTER/////////////////////////////////////////////*/
/*//////////////////////////////////////////////////////*/

#footer-builder :not(.perfil) > a {
	color: currentColor;
}

#footer-builder :not(.perfil) > a:hover {
	color: var(--wpex-hover-link-color);
	text-decoration: none;
}

#f-bottom {
    background: var(--wpex-surface-2, var(--wpex-gray-100));
}

#f-bottom .wpb_text_column,
#f-bottom figure {
    text-align: center;
}

#f-bottom figure.vcex-image img {
    width: 70px;
}

#f-widgets {
    padding-block: var(--general-gap);
}

#f-widgets p {
    margin-bottom: 1em;
}

#f-widgets p:last-child {
    margin: 0;
}

@media (width >= 1280px) {
    
    #f-widgets .wpb_column {
        width: 22%;
    }
    
    #f-widgets .wpb_column:first-child {
        width: 34%;
    }
    
}

@media (width < 768px) {
	
	#f-bottom .wpb_column:first-child .vc_column-inner {
        margin-bottom: calc(var(--wpex-vc-column-inner-margin-bottom) / 2);
    }
	
}

/* Newsletter */

#f-newsletter {
    background: var(--wpex-surface-2, var(--wpex-gray-100));
    padding-block: var(--general-gap);
}

#f-newsletter form {
	display: flex;
	width: 100%;
}

#f-newsletter form input[type="email"] {
	border: none !important;
	border-right: none !important;
	border-radius: 0;
	text-align: left;
	padding: 10px 20px;
	flex: 1;
}

#f-newsletter .g-recaptcha:not(button) {
	background: #f9f9f9;
	border: none;
}

#f-newsletter .g-recaptcha:not(button):hover {
	cursor: pointer;
}

#f-newsletter .g-recaptcha:not(button) > div {
	overflow: hidden;
	height: 100% !important;
	width: 155px !important;
	position: relative;
}

#f-newsletter iframe {
	position: absolute;
	top: 54%;
	left: -6px;
	transform: translateY(-50%);
}

#magno-newsletter {
    position: relative;
}

#subscription-response > div,
#loading-icon {
    background: rgba(255,255,255,0.8);
    color: var(--wpex-text-2);
    padding: 10px 20px;
    position: absolute;
    inset: 0;
    pointer-events: none;
    z-index: 1;
}

#subscription-response .error-message {
	background: var(--error-c);
	color: var(--error-o);
}

#subscription-response .success-message {
	background: var(--exito-c);
	color: var(--exito-o);
}

#loading-icon .wpex-icon {
    animation: girar 1s linear infinite;
    display: inline-block;
    margin-right: 10px;
}

@media (width > 640px) {	
	
	#f-newsletter form input[type="submit"] {
		border-radius: 0;
	}
	
	#f-newsletter .g-recaptcha:not(button) {
		border-right: none;
	}
	
}

@media (width <= 640px) {
	
	#f-newsletter form {
		flex-wrap: wrap;
	}
	
	#f-newsletter form input[type="email"] {
		width: calc(100% - 156px);
	}
	
	#f-newsletter form input[type="submit"] {
		width: 100%;
		margin: 10px 0 0;
	}
	
	#f-newsletter .g-recaptcha:not(button),
	#f-newsletter .g-recaptcha:not(button) > div {
		border-radius: 0;
	}
	
}

/* Pago */

#f-payment {
    background: var(--wpex-surface-3, var(--wpex-accent));
    color: var(--wpex-text-3, var(--wpex-on-accent));
    padding-block: var(--reduced-gap);
}

#f-payment .vcex-image-grid,
#f-bottom .vcex-image-grid {
    display: flex;
    align-items: center;
    justify-content: end;
    gap: 10px;
    height: auto !important;
}

#f-payment .vcex-image-grid::after,
#f-bottom .vcex-image-grid::after {
    display: none;
}

#f-payment .vcex-image-grid-entry,
#f-bottom .vcex-image-grid-entry {
    float: none;
    width: auto;
    position: relative !important;
    left: 0 !important;
    top: 0 !important;
}

#f-payment .vcex-image-grid img,
#f-bottom .vcex-image-grid img {
    aspect-ratio: 5/3;
    border-radius: var(--br-xxs);
    height: 30px;
    width: auto;
}

@media (width < 768px) {
    
    #f-payment {
        text-align: center;
    }
    
    #f-payment .vcex-image-grid,
    #f-bottom .vcex-image-grid {
        justify-content: center;
    }
    
}

/* Bottom */
    
#f-bottom:has(.vcex-image-grid,.magno-medios-pago) {
    column-gap: 60px;
    row-gap: 20px;
}

#f-bottom .vcex-image-grid {
    filter: grayscale(100%);
    justify-content: center;
}

#f-bottom .vcex-image-grid img {
    height: 24px;
}

@media (width >= 992px) {
    
    #f-bottom:has(.vcex-image-grid,.magno-medios-pago) .wpb_column {
        width: auto !important;
    }
    
    #f-bottom .wpb_column:has(.vcex-image-grid,.magno-medios-pago) {
        flex: 1;
    }
	
	#f-bottom figure {
        text-align: right;
    }
    
	#f-bottom .wpb_text_column {
        text-align: left;
    }
    
}

/* WhatsApp */

#f-whatsapp {
	--size: 60px;
	--gap: 50px;
	--fs: 30px;
	background: #25D366;
	border-radius: var(--br-circle, 0);
	color: #fff;
	display: block;
	text-align: center;
	width: var(--size);
	height: var(--size);
	position: fixed;
	right: var(--gap);
	transition: all ease 0.3s;
	animation: pulse-wapp 2s infinite;
	z-index: 999;
}

body:has(#proximamente) #f-whatsapp {
    display: none;
}

#f-whatsapp .ticon::before,
#f-whatsapp .wpex-icon {
	font-size: 30px;
	line-height: var(--size);	
	display: inline-block;
}

#f-whatsapp:hover {
	background: #128C7E;
}

@media (width < 768px) {
	
	#f-whatsapp {
		--size: 50px;
		--gap: 20px;
		--fs: 20px;
		/*bottom: var(--gap) !important;*/
	}
	
}

/*//////////////////////////////////////////////////////*/
/*///WOOCOMMERCE////////////////////////////////////////*/
/*//////////////////////////////////////////////////////*/

.woocommerce .col2-set:after,
.woocommerce .woocommerce-MyAccount-navigation ul:after,
.woocommerce .woocommerce-checkout:after,
.woocommerce .wc-tabs:after,
.woocommerce .woocommerce-mini-cart__buttons:after,
.woocommerce .cart-collaterals:after,
.woocommerce .cart_totals:after {
    display: none;
}

/* Pop up agregar al carrito */

div.xoo-cp-opac {
    background: var(--wpex-text-2);
    opacity: var(--overlay-opacity) !important;
}

.xoo-cp-modal .xoo-cp-container {
	border: none;
	border-radius: var(--br-round, 0);
	box-shadow: none;
	padding: 30px;
	overflow: hidden;
}

.xoo-cp-icon-cross:before {
	content: "×" !important;
	font-size: 1.5em;
	font-weight: var(--wpex-bold);
}

.xoo-cp-atcn .xoo-cp-icon-check {
	background: var(--exito);
	border-radius: var(--br-circle, 0);
	color: var(--wpex-white);
	font-size: 11px;
	width: 20px;
	line-height: 20px;
	text-align: center;
}

.xoo-cp-icon-check::before {
	content: "\f00c" !important;
	font-family: var(--ff-icons);
    font-weight: var(--wpex-bold);
}

.xoo-cp-added, .xoo-cp-adding {
    margin-left: 10px !important;
    font-size: 0.9em !important;
}

.xoo-cp-modal .xoo-cp-container > .xoo-cp-close {
	display: none;
}

.xoo-cp-modal .xoo-cp-atcn {
	color: var(--wpex-white);
	border: none !important;
	border-radius: 0;
	line-height: 1.4em;
	padding: 25px 60px;
	margin: -30px 0 0 -30px !important;
	width: calc(100% + 60px);
	position: relative;
}

.xoo-cp-modal .xoo-cp-atcn span {
	position: absolute;
	left: 30px;
	top: 50%;
    transform: translateY(-50%);
}

.xoo-cp-modal .xoo-cp-atcn.xoo-cp-success {
	background: var(--exito-c);
	color: var(--exito-o);
}

.xoo-cp-modal .xoo-cp-atcn.xoo-cp-error {
	background: var(--error-c);
	color: var(--error-o);
	width: 100%;
	position: absolute;
	top: 0;
	left: 0;
}

.xoo-cp-modal .xoo-cp-container .xoo-cp-pdetails {
	margin: 30px 0;
	overflow: visible;
}

.xoo-cp-modal a:hover {
	text-decoration: none !important;
}

.xoo-cp-modal table.xoo-cp-pdetails tbody {
    display: block;
}

.xoo-cp-modal table.xoo-cp-pdetails tr {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 20px;
}

.xoo-cp-modal table.xoo-cp-pdetails td {
	font-size: 14px;
	font-weight: 400;
	line-height: 1.4em;
	padding: 0;
}

.xoo-cp-modal table.xoo-cp-pdetails td.xoo-cp-remove {
	text-align: left;
	width: 30px;
}

.xoo-cp-modal table.xoo-cp-pdetails td.xoo-cp-remove span {
	color: #999;
	font-size: 14px;
}

.xoo-cp-modal table.xoo-cp-pdetails td.xoo-cp-remove span:hover {
	color: var(--error);
}

.xoo-cp-modal table.xoo-cp-pdetails td.xoo-cp-pimg {
	width: 80px;
}

.xoo-cp-modal table.xoo-cp-pdetails td.xoo-cp-pimg img {
	width: 100%;
}

.xoo-cp-modal table.xoo-cp-pdetails td.xoo-cp-ptitle {
	flex-grow: 1;
}

.xoo-cp-modal table.xoo-cp-pdetails td.xoo-cp-ptitle a {
    color: currentColor;
	font-size: inherit;
	font-weight: inherit;
}

.xoo-cp-modal table.xoo-cp-pdetails td.xoo-cp-ptitle a:hover {
	color: var(--wpex-accent);
}

.xoo-cp-modal table.xoo-cp-pdetails .variation {
	margin-bottom: 0;
}

.xoo-cp-modal table.xoo-cp-pdetails td.xoo-cp-pprice {
	/*color: var(--wpex-accent);*/
	font-weight: var(--wpex-bold);
}

.xoo-cp-modal table.xoo-cp-pdetails td.xoo-cp-pqty {
	min-width: initial;
	text-align: right;
	width: 85px;
}

.xoo-cp-modal table.xoo-cp-pdetails .xoo-cp-qtybox {
    border-radius: var(--input-border-radius);
}

.xoo-cp-modal table.xoo-cp-pdetails .xoo-cp-qtybox,
.xoo-cp-modal table.xoo-cp-pdetails .xcp-chng {
	border-color: var(--wpex-border-main);
	font-weight: 400;
}

.xoo-cp-modal table.xoo-cp-pdetails .xcp-chng:hover {
	background: var(--wpex-surface-2, var(--wpex-gray-100));
}

.xoo-cp-modal .xoo-cp-ptotal {
	display: none;
}

.xoo-cp-modal .xoo-cp-btns {
	display: flex;
	justify-content: center;
	flex-wrap: nowrap;
	gap: 20px;
	margin-top: 30px;
}

.xoo-cp-modal .xoo-cp-btns a.xcp-btn {
	background: var(--wpex-gray-500);
	color: var(--wpex-white);
	border-radius: var(--wpex-btn-border-radius);
    border-width: var(--wpex-btn-border-width);
    border-style: var(--wpex-btn-border-style);
    border-color: var(--wpex-btn-border-color, currentColor);
	line-height: var(--wpex-btn-line-height);
	flex-grow: 1;
	padding: var(--wpex-btn-padding);
	margin: 0;
	width: auto;
	transition: all ease 0.3s;
}

.xoo-cp-modal .xoo-cp-btns a.xcp-btn:hover {
	background: var(--wpex-hover-btn-bg, var(--wpex-accent-alt)) !important;
	color: var(--wpex-hover-btn-color, var(--wpex-on-accent-alt)) !important;
}

.xoo-cp-modal .xoo-cp-btns a.xcp-btn.xoo-cp-btn-ch {
	background: var(--wpex-btn-bg, var(--wpex-accent));
	color: var(--wpex-btn-color, var(--wpex-on-accent));
	order: 2;
}

.xoo-cp-modal .xoo-cp-btns .xoo-cp-btn-vc {
    display: none;
}

@media (width <= 640px) {
	
	.xoo-cp-modal .xoo-cp-btns {
		flex-wrap: wrap;
	}
	
	.xoo-cp-modal .xoo-cp-btns a.xcp-btn {
		width: 100%;
	}
	
}

/* Tablas */ 

.woocommerce-table {
	margin: 0;
}

.woocommerce table.shop_table {
	border: none;
}

.woocommerce .cart_totals table.shop_table,
.woocommerce .woocommerce-checkout-review-order table.shop_table {
	margin: 0 !important;
}

.woocommerce .cart_totals table.shop_table h3,
.woocommerce .woocommerce-checkout-review-order table.shop_table h3 {
	margin: 0 0 30px !important;
}

.woocommerce table.shop_table tr {
	padding: 0 !important;
	position: relative;
}

.woocommerce .cart_totals table.shop_table tr,
.woocommerce table.shop_table tfoot tr {
	display: table-row !important;
}

.woocommerce table thead {
	background: transparent !important;
}

.woocommerce table.shop_table th {
	background: transparent !important;
	border: none;
	font-size: var(--wpex-text-sm);
	font-weight: var(--wpex-bold) !important;
	text-transform: uppercase;
	padding: 0 0 10px !important;
	vertical-align: middle !important;
}

.woocommerce table.shop_table.order_details tfoot tr:not(:last-child) th {
	border-bottom: 1px solid var(--wpex-border-main);
}

.woocommerce .cart_totals table.shop_table th,
.woocommerce table.shop_table tfoot th {
	display: table-cell !important;
	padding: 10px 0 !important;	
}

.woocommerce .cart_totals table.shop_table .order-total th,
.woocommerce table.shop_table .order-total th {
	font-weight: var(--wpex-bold) !important;
}

.woocommerce table.shop_table tbody th,
.woocommerce table.shop_table td {
	border-top: 1px solid var(--wpex-border-main) !important;
	border-right: none;
	border-left: none;
	border-bottom: none;
	line-height: 1.4em;
	padding: 10px 0 !important;
	text-align: left !important;
	vertical-align: middle !important;
}

.woocommerce table.shop_table td::before {
	display: none !important;
}

body:not(.woocommerce-order-pay) .woocommerce table.shop_table .product-price,
body:not(.woocommerce-order-pay) .woocommerce table.shop_table .product-quantity,
body:not(.woocommerce-order-pay) .woocommerce table.shop_table .product-subtotal {
	width: 90px;
}

.woocommerce .cart_totals table.shop_table td,
.woocommerce table.shop_table tfoot td {
	display: table-cell !important;
	text-align: right !important;
}

.woocommerce .cart_totals table.shop_table tr > *,
.woocommerce table.shop_table.woocommerce-checkout-review-order-table tr > * {
	border: none !important;
	padding-top: 0 !important;
}

.woocommerce .cart_totals table.shop_table .cart-subtotal > *,
.woocommerce table.shop_table.woocommerce-checkout-review-order-table .cart-subtotal > *,
.woocommerce .cart_totals table.shop_table .order-total > *,
.woocommerce table.shop_table.woocommerce-checkout-review-order-table .order-total > * {
	border-top: 1px solid var(--wpex-border-main) !important;
	padding-top: 20px !important;
}

.woocommerce .cart_totals table.shop_table tbody tr:nth-last-child(2) > *,
body:not(.woocommerce-account,.woocommerce-order-received,.woocommerce-order-pay) .woocommerce table.shop_table tfoot tr:nth-last-child(2) > * {
	padding-bottom: 20px !important;
}

.woocommerce table.shop_table.woocommerce-checkout-review-order-table tbody tr:last-child > * {
	padding-bottom: 25px !important;
}

.woocommerce table.shop_table .order-total > * {
	font-size: 20px;
	line-height: 1.3em;
	font-weight: var(--wpex-bold);
}

.woocommerce table.shop_table tfoot .order-total > * {
	padding-bottom: 0 !important;
}

.woocommerce table.shop_table .cart-discount a {
	color: var(--negro-t);
	font-size: 12px;
	font-weight: 400;
	line-height: 1em;
	display: block;
}

.woocommerce .cart_totals table.shop_table tbody tr.cart-discount:nth-last-child(2) a {
	bottom: 22px;
}

.woocommerce table.shop_table .cart-discount a:hover {
	color: var(--wpex-text-2);
}

.woocommerce table.shop_table .includes_tax {
	color: var(--negro-t) !important;
    font-size: 12px;
    line-height: 1em;
	display: block;
}

.woocommerce-order-received .shop_table.order_details a {
	color: var(--wpex-accent) !important;
}

.woocommerce table.shop_table td:has(.shipped_via) .amount {
    margin-right: -5px;
}

.woocommerce table.shop_table .shipped_via {
    line-height: 1em;
    display: block;
}

@media (width < 768px) {
	
	.woocommerce table.shop_table_responsive tr td,
	.woocommerce-page table.shop_table_responsive tr td {
		text-align: left !important;
	}
	
	.woocommerce table.shop_table_responsive tr:nth-child(2n) td,
	.woocommerce-page table.shop_table_responsive tr:nth-child(2n) td {
		background: transparent !important;
	}
	
}

/* Botones */

.woocommerce a.button,
.woocommerce button.button,
.woocommerce button.button.alt,
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button,
.et_button_no_icon.woocommerce a.button,
.et_button_no_icon.woocommerce button.button,
.et_button_no_icon.woocommerce-page button.button.alt,
.et_button_no_icon.woocommerce-page button.button,
.et_button_no_icon.woocommerce button.button.alt,
.et_button_no_icon.woocommerce-cart .wc-proceed-to-checkout a.checkout-button {
	background: var(--wpex-btn-bg) !important;
	border-radius: var(--wpex-btn-border-radius) !important;
    border-width: var(--wpex-btn-border-width) !important;
    border-style: var(--wpex-btn-border-style) !important;
    border-color: var(--wpex-btn-border-color, currentColor) !important;
	color: var(--wpex-btn-color) !important;
	font-size: var(--wpex-btn-font-size) !important;
	line-height: var(--wpex-btn-line-height) !important;
	text-transform: var(--wpex-btn-text-transform) !important;
	padding: var(--wpex-btn-padding) !important;
	text-align: center;
}

.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce button.button.alt:hover,
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:hover,
.et_button_no_icon.woocommerce a.button:hover,
.et_button_no_icon.woocommerce button.button:hover,
.et_button_no_icon.woocommerce-page button.button.alt:hover,
.et_button_no_icon.woocommerce-page button.button:hover,
.et_button_no_icon.woocommerce button.button.alt:hover,
.et_button_no_icon.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:hover {
	background: var(--wpex-hover-btn-bg) !important;
	border-color: var(--wpex-hover-btn-border-color, var(--wpex-btn-border-color, currentColor)) !important;
	color: var(--wpex-hover-btn-color) !important;
	padding: var(--wpex-btn-padding) !important;
}

.woocommerce button.button:disabled[disabled] {
	line-height: var(--wpex-btn-line-height) !important;
}

.woocommerce a.button::after,
.woocommerce button.button::after,
.woocommerce button.button.alt::after,
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button::after {
	display: none !important;
}

.single_add_to_cart_button::before,
.product-actions a::before,
.product-actions .button::before,
.boton-agregar::before {
	content: "";
	font-family: var(--ff-icons);
	font-size: 0.8em;
	font-weight: var(--wpex-bold);
	display: inline-block;
	margin-right: 10px;
	position: relative;
	top: -1px;
}

.single_add_to_cart_button::before,
.product-actions .button.add_to_cart_button::before,
.boton-agregar::before {
	content: "\f07a";
}

.products .outofstock .product-actions .button {
	background: var(--wpex-gray-500) !important;
	color: var(--wpex-white) !important;
}

.products .outofstock .product-actions .button:hover {
	background: var(--wpex-hover-btn-bg) !important;
	color: var(--wpex-hover-btn-color) !important;
}

.product-actions a:not(.add_to_cart_button)::before,
.product-actions .button:not(.add_to_cart_button)::before,
.product-actions .button.product_type_variable::before {
	content: "\f06e";
}

/*//////////////////////////////////////////////////////*/
/*///WOOCOMMERCE - NOTIFICACIONES///////////////////////*/
/*//////////////////////////////////////////////////////*/

.woocommerce-notices-wrapper,
.woocommerce-NoticeGroup-checkout {
	width: 100%;
}

.woocommerce-checkout .woocommerce-NoticeGroup-checkout {
    padding: 0;
}

.woocommerce-message, .woocommerce-error, .woocommerce-info, .vcex-no-posts-found, .woocommerce-notice,
.woocommerce-checkout .woocommerce-shipping-fields table.shop_table .woocommerce-shipping-totals td:not(:has(ul)) {
	background: var(--wpex-surface-2, var(--wpex-gray-100)) !important;
	border: none !important;
	border-radius: var(--wpex-input-border-radius, 0) !important;
	font-size: 1em !important;
	line-height: 1.7em !important;
	text-align: left !important;
    display: block;
    justify-content: space-between;
    align-items: center;
    gap: 20px;
	padding: var(--notice-padding) !important;
	margin: 0 0 var(--reduced-gap) !important;
	width: 100%;
	position: relative;
}

.woocommerce-error {
    flex-wrap: wrap;
    gap: 5px;
}

div:not(.woocommerce-notices-wrapper) > .woocommerce-message:last-child,
div:not(.woocommerce-notices-wrapper,.woocommerce-NoticeGroup) > .woocommerce-error:last-child,
div:not(.woocommerce-notices-wrapper,.woocommerce-form-login-toggle,[class*="fields"],.wc-empty-cart-message) > .woocommerce-info:last-child,
div:not(.woocommerce-notices-wrapper) > .vcex-no-posts-found:last-child,
div:not(.woocommerce-notices-wrapper) > .woocommerce-notice:last-child {
	margin: 0 !important;
}

.woocommerce-error::before, .woocommerce-info::before, .woocommerce-message::before, .woocommerce-notice::before {
    --size: 20px;
    border-radius: var(--br-circle, 0);
    color: var(--wpex-white);
    font-family: var(--ff-icons);
    font-size: 0.8em;
    font-weight: var(--wpex-bold);
    line-height: var(--size);
    text-align: center;
    display: block !important;
    width: var(--size);
    height: var(--size);
    position: absolute;
	left: 20px !important;
	top: 50% !important;
	transform: translateY(-50%);
}

div.woocommerce-error a.button, div.woocommerce-info a.button, div.woocommerce-message a.button,
div.woocommerce-error a.button:hover, div.woocommerce-info a.button:hover, div.woocommerce-message a.button:hover {
    background: transparent !important;
    color: currentColor !important;
    font-weight: 400 !important;
    letter-spacing: 0 !important;
    text-transform: none !important;
    text-decoration: underline !important;
    padding: 0 !important;
    margin: 0 !important;
}

.vcex-no-posts-found,
.woocommerce-no-products-found .woocommerce-info {
	margin: 0 !important;
}

.woocommerce-message,
.woocommerce-notice--success {
	background: var(--exito-c) !important;
	color: var(--exito-o) !important;
}

.woocommerce-message::before,
.woocommerce-notice--success::before {
	content: "\f00c";
	background: var(--exito) !important;
	/*color: var(--exito-c) !important;*/
}

.woocommerce-notice--success::before {
	content: "\f00c";
	font-family: var(--ff-icons);
    font-size: 11px;
    font-weight: var(--wpex-bold);
    
    position: absolute;
    top: 15px;
    left: 15px;
    width: 20px;
    height: 20px;
    line-height: 20px;
    text-align: center;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    border-radius: var(--br-circle, 0);
    color: var(--wpex-white);
}

.woocommerce-error {
	background: var(--error-c) !important;
	color: var(--error-o) !important;
}

.woocommerce-error::before {
	content: "\f00d";
	background: var(--error) !important;
	/*color: var(--error-c) !important;*/
}

.woocommerce-info, .vcex-no-posts-found,
.woocommerce-checkout .woocommerce-shipping-fields table.shop_table .woocommerce-shipping-totals td:not(:has(ul)) {
	background: var(--alerta-c) !important;
	color: var(--alerta-o) !important;
}

.woocommerce-info::before,
.vcex-no-posts-found::before,
.woocommerce-checkout .woocommerce-shipping-fields table.shop_table .woocommerce-shipping-totals td:not(:has(ul))::before {
	content: "\f129";
	background: var(--alerta) !important;
	/*color: var(--alerta-c) !important;*/
}

.vcex-no-posts-found::before,
.woocommerce-checkout .woocommerce-shipping-fields table.shop_table .woocommerce-shipping-totals td:not(:has(ul))::before {
	content: "\f129";
	font-family: var(--ff-icons);
    font-size: 11px;
    font-weight: var(--wpex-bold);
    display: block !important;
    position: absolute;
    left: 20px !important;
    top: 50% !important;
    transform: translateY(-50%);
    width: 20px;
    height: 20px;
    line-height: 20px;
    text-align: center;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    border-radius: var(--br-circle, 0);
    color: var(--wpex-white);
}

.wc-empty-cart-message {
	width: 100%;
}

.woocommerce-info.cart-empty {
    font-weight: 400;
}

.woocommerce-info.cart-empty::before {
	display: block !important;
}

.woocommerce-error li {
    width: 100%;
}

/* Enlaces */

.woocommerce-message a {
	color: var(--exito-o) !important;
}

.woocommerce-error a {
	color: var(--error-o) !important;
}

.woocommerce-info a {
	color: var(--alerta-o) !important;
}

.woocommerce-message a, .woocommerce-error a, .woocommerce-info a {
	text-decoration: underline;
}

/* tips */

.magno-tip {
    display: flex;
    gap: 10px;
    align-items: center;
}
/*
.magno-tip {
    font-weight: var(--wpex-bold);
}
*/
.magno-tip.alerta {
    color: var(--alerta-o);
}

.magno-tip::before {
    --size: 20px;
    border: 1px solid var(--wpex-border-main);
    border-radius: var(--br-circle, 0);
    color: var(--wpex-white);
    font-family: var(--ff-icons);
    font-size: 0.6em;
    font-weight: var(--wpex-bold);
    line-height: var(--size);
    text-align: center;
    width: var(--size);
    height: var(--size);
}

.magno-tip.alerta::before {
    content: "\f129";
    background: var(--alerta-c);
    border-color: var(--alerta-o);
    color: var(--alerta-o);
}

/*//////////////////////////////////////////////////////*/
/*///WOOCOMMERCE - ARCHIVOS/////////////////////////////*/
/*//////////////////////////////////////////////////////*/

.woocommerce.archive article {
    margin-bottom: var(--general-gap);
}

.woocommerce .woocommerce-ordering .wpex-select-wrap {
    border-radius: 0;
}

.entry-content:has(.woocommerce-no-products-found) .attachment {
	display: none;
}

.products .entry.product {
    --gap: 20px;
	border: 1px solid var(--wpex-border-main);
	border-radius: var(--br-round, 0);
	transition: all ease 0.3s;
}

.products .wpex-post-cards-entry,
.products .wpex-card,
.products .entry.product,
.products .product-inner {
	height: 100%;
}

.products .entry.product a {
	display: block;
}

.products .entry.product .wpex-loop-product-images {
    aspect-ratio: 1 / 1;
    border-radius: var(--br-round, 0) var(--br-round, 0) 0 0;
    overflow: hidden;
}

.products .entry.product a:has(> img),
.wpex-post-cards-entry.type-product a:has(> img) {
    height: 100%;
}

.products .entry.product img,
.wpex-post-cards-entry.type-product img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: contain;
	object-position: center;
	transition: transform ease 0.3s;
}

.products .entry.product:hover img,
.wpex-post-cards-entry.type-product:hover img {
    transform: scale(1.05);
}

.products .entry.product .product-details {
    border-top: 1px solid var(--wpex-border-main);
    display: grid;
    align-items: center;
	padding: var(--gap);
}

.products .entry.product .product-category {
    color: var(--wpex-accent);
    font-size: 12px;
    line-height: 1.2em;
    text-align: left;
    margin-bottom: 5px;
}

.sku {
    text-transform: uppercase;
}

.products .entry.product a:has(.woocommerce-loop-product__title) {
	grid-column: 1/-1;
}

.products .entry.product .woocommerce-loop-product__title,
.wpex-post-cards .type-product .woocommerce-loop-product__title {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
	margin-bottom: 0 !important;
}

.products .entry.product .sku {
	color: var(--wpex-text-4);
    display: -webkit-box;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
}

.products .entry.product .product-link {
    line-height: 1em;
    text-align: right;
}

.products .entry.product .price {
    font-size: var(--wpex-text-lg);
	margin: 15px 0 0 !important;
}

.products .entry.product .price .amount {
    font-weight: var(--wpex-bold) !important;
}

.products .entry.product .price del .amount {
    font-weight: 400 !important;
}

.woocommerce :not(td,.product-quantity) > del {
	font-size: 0.7em;
	font-weight: 400;
	font-style: normal !important;
	display: block;
}

.products .entry.product .product-actions {
	padding: 0 var(--gap) var(--gap);
}

.products .entry.product .product-actions a,
.products .entry.product .product-actions .button {
    line-height: 1em !important;
	padding: 10px !important;
	margin: 0 !important;
}

.products .entry.product .product-actions .added_to_cart {
	display: none;
}

.woocommerce .woocommerce-pagination {
    margin-top: var(--reduced-gap);
}

@media (width < 1024px) {
	
	.woocommerce-page.archive #sidebar {
		display: block;
		padding: 0 !important;
		height: 100vh;
		width: calc(100vw - 50px) !important;
		max-width: var(--mobile-aside-max-width);
		position: fixed;
		right: -100%;
		top: 0;
		left: auto;
		pointer-events: auto;
		visibility: hidden;
		opacity: 0;
		transition: all ease 0.3s;
		z-index: 999999999;
	}
	
	.woocommerce-page.archive #sidebar-inner {
		background: #fff;
		display: block;
		padding: 30px;
		height: 100vh;
		overflow-y: scroll;
		overflow-x: hidden;
		position: relative;
		z-index: 2;
	}
	
	.woocommerce-page.archive #sidebar-inner::-webkit-scrollbar {
		width: 0;
	}

	.woocommerce-page.archive #sidebar.activo {
		right: 0;
		opacity: 1;
		visibility: visible;
	}

	.woocommerce-page.archive #sidebar::before {
		content: "";
		background: var(--wpex-text-2);
		position: fixed;
		top: 0;
		right: 0;
		width: 100vw;
		height: 100vh;
		pointer-events: auto;
		visibility: hidden;
		opacity: 0;
		transition: all ease 0.3s;
	}

	.woocommerce-page.archive #sidebar::after {
		content: "+";
		color: #fff;
		font-size: 40px;
	    line-height: 20px;
		transform: rotate(45deg);
		position: fixed;
		left: 12px;
		top: 14px;
		pointer-events: auto;
		visibility: hidden;
		opacity: 0;
		transition: all ease 0.3s;
	}

	.woocommerce-page.archive #sidebar.activo::before {
		opacity: var(--overlay-opacity);
		visibility: visible;
	}

	.woocommerce-page.archive #sidebar.activo::after {
		opacity: 1;
		visibility: visible;
	}
	
	.woocommerce-page.archive #sidebar .sidebar-box {
		background: transparent;
		border-radius: 0;
		padding: 0;
	}
	
}

@media (width < 768px) {
	
	.woocommerce-shop .products:has(.entry.product) {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
	
	.products.wpex-gap-50 {
    	gap: 30px !important;
	}
	
	.products.gap-50 {
	    --wpex-row-gap: 30px !important;
	}
	
}

@media (width <= 640px) {
	
	.woocommerce-result-count {
		display: none !important;
	}
	
	.woocommerce-ordering {
		width: 100%;
	}
	
	.products.wpex-gap-30 {
	    gap: 20px;
	}
	
	.products .entry.product {
        --gap: 15px;
	}
	
	.products .entry.product .price {
	    margin-top: 10px !important;
	}
	
	.products .entry.product .product-actions {
		padding: 0;
		margin: auto -1px -1px -1px;
		width: calc(100% + 2px);
	}
	
	.products .entry.product .product-actions a {
		border-radius: 0 0 var(--br-round, 0) var(--br-round, 0) !important;
	}
	
}

/* Medallas */

.woocommerce .onsale,
.woocommerce .outofstock-badge {
    --gap: 20px;
	border-radius: var(--wpex-input-border-radius);
	font-weight: var(--wpex-bold);
	left: var(--gap) !important;
	top: var(--gap) !important;
}

.woocommerce .outofstock-badge {
	background: var(--error-c) !important;
	/*border: 1px solid var(--error);*/
	color: var(--error-o) !important;
}

@media (width <= 640px) {
	
	.woocommerce .onsale,
	.woocommerce .outofstock-badge {
        --gap: 15px;
		font-size: 10px !important;
	}
	
}

/* Categorias */

#cat-carousel .vcex-terms-grid-entry-image {
    aspect-ratio: 1 / 1;
    border-radius: var(--br-round, 0);
    overflow: hidden;
}

#cat-carousel img {
    transition: transform ease 0.3s;
}

#cat-carousel .owl-item:hover img {
    transform: scale(1.05);
}

#cat-carousel .owl-item:hover .vcex-terms-grid-entry-title {
    color: var(--wpex-accent);
}

/*//////////////////////////////////////////////////////*/
/*///WOOCOMMERCE - PRODUCTO/////////////////////////////*/
/*//////////////////////////////////////////////////////*/

/* Imagen */

#p-imagen .vcex-wc-template-part--single-product__sale-flash {
	position: absolute;
	left: 60px;
	top: 30px;
	z-index: 2;
}

#p-imagen .woocommerce-product-gallery {
    margin: 0;
}

#p-imagen .flex-viewport,
#p-imagen .woocommerce-product-gallery:not(:has(.flex-viewport)),
#p-imagen .woocommerce-product-gallery .flex-control-thumbs li {
    border: 1px solid var(--wpex-border-main);
	border-radius: var(--br-round, 0);
	overflow: hidden;
}

#p-imagen img {
    aspect-ratio: 1 / 1;
    object-fit: contain;
    object-position: center center;
    width: 100%;
    height: 100%;
}

@media (width >= 1200px) {
    
    #p-imagen:has(.flex-viewport) .vcex-wc-template-part--single-product__sale-flash {
	    left: calc(60px + 15%);
    }
    
    #p-imagen .woocommerce-product-gallery:has(.flex-viewport) {
        padding-left: calc(15% + var(--wpex-woo-product-gallery-thumbs-gap, 8px));
    }
    
    #p-imagen .flex-control-nav {
        position: absolute;
        inset: 0 auto auto 0;
        display: block;
        padding: 0;
        width: 15%;
        height: 100%;
        overflow-y: auto;
    }
    
    #p-imagen .flex-control-nav::-webkit-scrollbar {
        display: none;
    }
    
    #p-imagen .flex-control-nav li:not(:last-child) {
        margin-bottom: var(--wpex-woo-product-gallery-thumbs-gap, 8px);
    }
    
}

@media (width < 768px) {

    #p-imagen .woocommerce-product-gallery .flex-control-thumbs li {
    	border-radius: var(--br-notice, 0);
    }
    
}

/* Información */

#p-content {
    --col-gap: 20px;
}

#p-content .vcex-wc-template-part--single-product__title {
	margin-bottom: var(--col-gap);
}

#p-content .sku {
    margin: calc(-1 * var(--col-gap) + 5px) 0 var(--col-gap);
}

#p-content .vcex-wc-template-part--single-product__price {
	margin-bottom: var(--col-gap);
}

#p-content .price {
	font-size: var(--wpex-text-2xl);
}

#p-content .price > span {
    display: flex;
    align-items: center;
    gap: 0.5em;
}

#p-content .price del {
    order: 2;
}

#p-content .price ins {
    order: 1;
}

#p-content .price ins .amount {
	font-weight: var(--wpex-bold);
}

#p-content .woocommerce-product-details__short-description p:last-child {
    margin-bottom: var(--col-gap);
}

#p-content form.cart {
	margin: 0;
}

#p-content .wpex-woocommerce-product-qty-btn-wrapper {
    margin-top: 10px;
}

#p-content .vcex-wc-template-part--single-product__add-to-cart {
	margin-bottom: var(--reduced-gap);
}

#p-content .vcex-wc-template-part--single-product__add-to-cart .stock {
	background: var(--exito-c);
	border-radius: var(--wpex-input-border-radius);
	color: var(--exito-o);
	font-size: var(--wpex-text-sm);
	font-weight: var(--wpex-bold);
	line-height: 1em;
	display: inline-block;
	padding: .615em .769em;
	margin-top: 5px;
	text-transform: uppercase;
}

#p-content .vcex-wc-template-part--single-product__add-to-cart .stock:not(.out-of-stock) {
    display: none;
}

#p-content .vcex-wc-template-part--single-product__add-to-cart:has(form) .stock {
	margin-bottom: var(--col-gap);
}

#p-content .vcex-wc-template-part--single-product__add-to-cart .stock.out-of-stock {
	background: var(--error-c);
	color: var(--error);
}

#p-content > .wpb_column:last-child > .vc_column-inner > .wpb_wrapper > :last-child {
	margin-bottom: var(--general-gap);
}

@media (width <= 640px) {
	
	.wpex-woocommerce-product-qty-btn-wrapper {
		width: 100%;
	}
	
	.vcex-wc-template-part--single-product__add-to-cart button {
		flex: 1;
	}
	
}

/* Compartir */

#p-compartir {
    border-top: 1px solid var(--wpex-border-main);
    border-bottom: 1px solid var(--wpex-border-main);
    padding-block: 16px;
	margin-inline: 0;
}

#p-compartir .wpb_column:first-child {
    width: auto;
}

#p-compartir .wpb_column:last-child {
    width: auto;
    flex: 1;
}

#p-compartir .vc_column-inner {
	padding: 0;
}

#p-compartir .wpex-icon {
	color: var(--wpex-accent);
	font-size: 1.15em;
	display: inline-block;
	width: 20px;
	margin-right: 14px;
}

/* Información general */

#p-info-general .vc_tta.vc_general .vc_tta-panel {
	--gap: 25px;
	border-bottom: 1px solid var(--wpex-border-main);
}

#p-info-general .vc_tta.vc_general .vc_tta-panel-heading {
	border: none;
	border-radius: 0;
}

#p-info-general .vc_tta.vc_general .vc_tta-panel-title > a {
	text-transform: uppercase;
	padding: var(--gap) 0;
}

#p-info-general .vc_tta.vc_general .vc_active .vc_tta-panel-title > a {
	color: var(--wpex-accent);
}

#p-info-general .vc_tta.vc_general .vc_tta-icon {
	color: var(--wpex-accent);
	display: inline-block;
	width: 20px;
}

#p-info-general .vc_tta.vc_tta-accordion .vc_tta-controls-icon-position-right .vc_tta-controls-icon {
	right: 0;
}

#p-info-general .vc_tta.vc_tta-accordion .vc_tta-controls-icon-position-left .vc_tta-controls-icon {
	left: 0;
}

#p-info-general .vc_tta-container .vc_tta.vc_general .vc_tta-panel-body {
	border: none;
	padding: 0 0 var(--gap) 0;
}

#p-info-general .vc_tta-container .vc_tta.vc_general .vc_tta-panel-body a {
	text-decoration: underline;
}

/* Descripción y tabla */

#p-descripcion:not(:has(.vcex-wc-template-part > p)),
#p-tabla:not(:has(.vcex-wc-template-part > table)) {
    display: none;
}

#p-descripcion h2,
#p-tabla h2 {
    margin-bottom: 30px;
}

:is(#p-descripcion, #p-tabla) .vcex-wc-template-part {
    position: relative;
}

:is(#p-descripcion, #p-tabla) .vcex-wc-template-part.oculto {
    max-height: 400px;
    overflow: hidden;
}

:is(#p-descripcion, #p-tabla) .vcex-wc-template-part::after {
    content: "";
    background: linear-gradient(to top, rgba(255,255,255,1) 10%, rgba(255,255,255,0));
    position: absolute;
    inset: 85% 0 0 0;
    opacity: 0;
}

:is(#p-descripcion, #p-tabla) .vcex-wc-template-part.oculto::after {
    opacity: 1;
}

:is(#p-descripcion, #p-tabla) .vcex-wc-template-part p:last-child {
	margin: 0;
}

:is(#p-descripcion, #p-tabla) .ver-mas.no {
    display: none;
}

:is(#p-descripcion, #p-tabla) .ver-mas p {
    color: var(--wpex-accent);
    display: inline-block;
}

:is(#p-descripcion, #p-tabla) .ver-mas p:hover {
    color: var(--wpex-text-2);
    cursor: pointer;
}

#p-tabla table {
    margin-bottom: var(--wpex-el-margin-bottom);
}

#p-tabla tr:first-child > *,
#p-tabla tr:last-child > * {
    border-radius: var(--wpex-input-border-radius);
}

#p-tabla tr:first-child > * {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
}

#p-tabla tr:last-child > * {
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
}

/* Relacionados y sugerencias */

.single-product .up-sells,
.single-product .related.products {
	margin-bottom: var(--general-gap) !important;
}

.single-product .up-sells > h2,
.single-product .related.products > h2 {
	font-size: var(--wpex-text-2xl);
	margin-bottom: 30px;
}

/*//////////////////////////////////////////////////////*/
/*///WOOCOMMERCE - CARRITO//////////////////////////////*/
/*//////////////////////////////////////////////////////*/

.woocommerce-cart #main-content h1 {
	display: none;
}

.woocommerce-cart .woocommerce-cart-form,
.woocommerce-cart .cart-collaterals {
	margin-bottom: var(--general-gap);
}

.woocommerce-cart .cart-collaterals {
    flex-direction: column;
}

.woocommerce-cart .cart-collaterals .cart_totals {
	float: none;
	width: 100%;
}

@media (width > 1280px) {
	
	.woocommerce-cart .woocommerce:has(.woocommerce-cart-form) {
		display: grid;
		align-items: start;
		grid-template-columns: 1fr calc(var(--right-sidebar-width) - var(--big-col-gap));
		column-gap: calc(var(--big-col-gap) * 2); 
	}
    
    .woocommerce-cart .vcex-shortcode > .woocommerce > :not(.cart-collaterals) {
		grid-column: 1;
	}
	
	.woocommerce-cart .cart-collaterals {
		grid-column: 2;
		grid-row: 1 / 5;
		height: calc(100% - var(--general-gap));
	}
    
}

@media (width <= 1280px) {
	
	.woocommerce-cart .woocommerce-cart-form {
		width: 100%;
		padding: 0;
		margin: 0 0 var(--general-gap);
	}

	.woocommerce-cart .cart-collaterals {
		width: 100%;
		padding: 0;
	}
	
	.woocommerce-cart .cart-collaterals .cart_totals {
        border-radius: var(--br-round, 0);
		width: 100% !important;
		position: relative !important;
		top: 0 !important;
	}
	
}

/* Detalle */

.woocommerce-cart table.cart {
	margin: 0 !important;
}

.woocommerce-cart table.cart .product-remove {
	width: 40px;
}

.woocommerce-cart table.cart .product-thumbnail {
	width: 80px;
}

.woocommerce-cart table.cart a {
	display: block;
}

.woocommerce-cart table.cart a:hover {
	color: var(--wpex-accent);
}

.woocommerce-cart table.cart a.plus,
.woocommerce-cart table.cart a.minus {
	text-align: center;
}

.woocommerce-cart table.cart a.plus:hover,
.woocommerce-cart table.cart a.minus:hover {
	background: var(--wpex-surface-2, var(--wpex-gray-100));
	color: currentColor;
}

.woocommerce-cart table.cart img {
	display: block;
	width: 80px;
	padding: 0;
	max-width: initial;
}

.woocommerce-cart table.cart .quantity {
	width: auto;
}

.woocommerce-cart table.cart .qty {
	background: transparent;
	border: 1px solid var(--wpex-border-main);
	border-left: none;
    border-right: none;
	color: var(--wpex-text-2);
	line-height: 1em;
	text-align: left;
	padding: 12px 10px;
}

.woocommerce .quantity input[type=number] {
	border-color: var(--wpex-border-main) !important;
	width: 30px !important;
}

.woocommerce .wpex-woocommerce-product-qty-btn-wrapper .quantity input[type=number] {
    --size: 52px;
	min-height: var(--size) !important;
	width: var(--size) !important;
}

.woocommerce .quantity a {
	border: 1px solid var(--wpex-border-main) !important;
	border-radius: var(--wpex-input-border-radius);
	display: flex !important;
	width: 21px !important;
}

.woocommerce .quantity a.minus {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
}

.woocommerce .quantity a.plus {
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
}

.woocommerce .quantity a:hover {
	background: var(--wpex-surface-2, var(--wpex-gray-100));
}

.woocommerce-cart table.cart th.product-subtotal {
	text-align: right !important;
}

.woocommerce-cart table.cart td.product-subtotal {
	font-weight: var(--wpex-bold) !important;
	text-align: right !important;
}

.woocommerce .cart-collaterals .order-total .woocommerce-Price-amount {
	color: var(--wpex-text-2);
}

.woocommerce-cart table.cart td.actions {
	text-align: left;
	padding: 20px 0 0 !important;
}

.woocommerce table.shop_table_responsive tr td::before, .woocommerce-page table.shop_table_responsive tr td::before {
	text-transform: uppercase;
}

.woocommerce-cart table.cart .actions .coupon {
    flex-wrap: wrap;
}

.woocommerce-cart table.cart .actions .coupon .input-text {
    flex: 1;
    padding: var(--wpex-input-padding);
}

@media (width < 992px) {

    .woocommerce-cart table.cart .actions .coupon {
        width: 100%;
        margin-bottom: 20px;
    }
    
    .woocommerce-cart table.cart .actions .coupon .input-text {
        width: 100%;
    }
	
	.woocommerce-cart table.cart td.actions [name="update_cart"] {
		width: 100% !important;
	}
	
}

@media (width < 768px) {
	
	.woocommerce-cart table.cart thead,
	.woocommerce-page table.shop_table .cart_item td.product-price {
		display: block !important;
	}
	
	.woocommerce-cart table.cart thead tr {
		display: flex;
		flex-wrap: wrap;
		padding: 0 0 10px !important;
	}
	
	.woocommerce-cart table.cart thead th {
		display: block;
		width: 50%;
	}
	
	.woocommerce-cart table.cart thead th.product-price,
	.woocommerce-cart table.cart thead th.product-quantity {
		display: none;
	}
	
	.woocommerce-cart table.cart thead th.product-subtotal {
		padding: 0 !important;
	}
	
	.woocommerce-cart table.cart tr.cart_item {
		border-top: 1px solid var(--wpex-border-main);
		display: flex;
		flex-wrap: wrap;
		align-items: center;
		padding: 0 0 0 40px !important;
		position: relative;
	}
	
	.woocommerce-cart table.cart tr.cart_item td {
		border: none !important;
	}

	.woocommerce-cart table.cart .product-remove {
		position: absolute;
		left: 0;
		top: 50%;
		transform: translateY(-50%);
	}
	
	.woocommerce-cart table.cart .product-thumbnail {
	    display: none;
	}
	
	.woocommerce-cart table.cart .product-name {
		width: calc(100% - 80px) !important;
		padding-bottom: 0 !important;
		padding-right: 10px;
	}
	
	.woocommerce-cart table.cart .product-quantity {
		width: calc(100% - 80px) !important;
		min-width: initial;
		padding: 8px 0 13px !important;
	}
	
	.woocommerce-cart .cart_item .wpex-quantity-btns {
		display: flex !important;
	}
	
	body:not(.single-product) .woocommerce .quantity input[type=number] {
		min-height: 25px !important;
	}
	
	.woocommerce-cart table.cart .qty {
		padding: 0 0 0 10px;
	}
	
	.woocommerce-cart table.cart .product-price {
		padding-bottom: 0 !important;
	}
	
	.woocommerce-cart table.cart .product-price,
	.woocommerce-cart table.cart .product-subtotal {
		text-align: right !important;
		width: 80px !important;
	}
	
}

/* Total */

.woocommerce-cart .cart-collaterals .cart_totals {
	background: var(--wpex-surface-2, var(--wpex-gray-100));
	padding: 30px 30px 35px;
}

.woocommerce-cart .cart-collaterals div > h2 {
	font-size: var(--wpex-text-2xl);
}

.woocommerce-cart .cart-collaterals .cart_totals {
    margin: 0;
}

.woocommerce-cart .cart-collaterals .cart_totals h2 {
	padding-bottom: 25px;
	margin-bottom: 0;
}

.woocommerce-cart .cart-collaterals .wc-proceed-to-checkout {
	padding: 0;
}

.woocommerce-cart .wc-proceed-to-checkout a.checkout-button {
	margin: 15px 0 0;
	width: 100%;
}

@media (width > 1280px) {
    
    .woocommerce-cart .cart-collaterals .cart_totals {
	    padding: 0;
    }
    
}

/* Ventas cruzadas */

.woocommerce-cart .cross-sells > h2 {
	font-size: var(--wpex-text-2xl);
	margin-bottom: 30px !important;
}

.woocommerce-cart div.cross-sells {
    float: none;
    width: 100%;
    margin: var(--general-gap) 0 0 !important;
}

@media (width > 1280px) {
    
    .cart-collaterals .cross-sells {
        display: none;
    }
    
}

@media (width <= 1280px) {
    
    form .cross-sells {
        display: none;
    }
    
}

/* Vacío */

.woocommerce-cart .return-to-shop {
	width: 100%;
	text-align: center;
	margin-bottom: var(--general-gap);
}

/*//////////////////////////////////////////////////////*/
/*///WOOCOMMERCE - CHECKOUT/////////////////////////////*/
/*//////////////////////////////////////////////////////*/

.woocommerce-checkout #main-content h1 {
	display: none;
}

.woocommerce-checkout .woocommerce:has(> form.checkout) {
	display: flex;
	flex-wrap: wrap;
	padding: 0;
}

.woocommerce-checkout form.checkout #customer_details {
    width: 100%;
}

.woocommerce-checkout .woocommerce:has(> form.checkout) form.checkout,
.woocommerce-checkout .woocommerce:has(> form.checkout) .review-wrapper {
	padding-top: 0;
	margin: 0 0 var(--general-gap);
}

.woocommerce-checkout form h3 {
	margin-bottom: 20px;
}

.woocommerce-checkout:not(.woocommerce-order-pay) #order_review .edit-cart {
	position: absolute;
	right: 30px;
	top: 30px;
}

.woocommerce-checkout:not(.woocommerce-order-pay) #order_review .edit-cart .wpex-icon {
	font-size: 0.8em;
	display: inline-block;
	margin-right: 5px;
}

.woocommerce-checkout:not(.woocommerce-order-pay) #order_review .edit-cart:hover {
	color: var(--wpex-accent);
}

.woocommerce-checkout:not(.woocommerce-order-pay) h3::before {
	border: 2px solid var(--wpex-accent);
	border-radius: var(--br-circle, 0);
	color: var(--wpex-accent);
	font-size: 0.6em;
	line-height: 16px;
	text-align: center;
	display: inline-block;
	width: 22px;
	height: 22px;
	margin: 0 10px 0 0;
	position: relative;
	top: -4px;
}

.woocommerce-checkout .woocommerce-billing-fields h3::before {
	content: "1";
}

.woocommerce-checkout .woocommerce-shipping-fields h3::before {
	content: "2";
}

.woocommerce-checkout .woocommerce-checkout-payment > h3::before {
	content: "3";
}

.woocommerce-checkout.woocommerce-order-pay #order_review tfoot th {
    border-top: 1px solid var(--wpex-border-main);
    border-bottom: 1px solid var(--wpex-border-main);
}

.woocommerce-checkout.woocommerce-order-pay #order_review tfoot tr:last-child th {
    border-bottom: none;
}

@media (width > 1280px) {
	
	.woocommerce-checkout .woocommerce:has(> form.checkout) {
		display: grid;
		align-items: start;
		grid-template-columns: 1fr calc(var(--right-sidebar-width) - var(--big-col-gap));
		column-gap: calc(var(--big-col-gap) * 2);
	}
	
	.woocommerce-checkout .woocommerce:has(> form.checkout) > :not(.review-wrapper) {		
		grid-column: 1;
	}
	
	.woocommerce-checkout .woocommerce:has(> form.checkout) .review-wrapper {
		grid-column: 2;
		grid-row: 1 / 5;
		height: calc(100% - var(--general-gap));
	}
    
    .woocommerce-checkout:not(.woocommerce-order-pay) #order_review {
        padding: 0  !important;
    }
    
    .woocommerce-checkout:not(.woocommerce-order-pay) #order_review .edit-cart {
        top: 0;
        right: 0;
    }
    
}

@media (width <= 1280px) {

	.woocommerce-checkout .woocommerce:has(> form.checkout) form.checkout {
		width: 100%;
		padding-right: 0;
		order: 2;
	}

	.woocommerce-checkout .woocommerce:has(> form.checkout) .review-wrapper {
		width: 100%;
		padding-left: 0;
		order: 1;
		margin-bottom: 40px;
	}
    
    .woocommerce-checkout:not(.woocommerce-order-pay) #order_review {
        border-radius: var(--br-round, 0);
    }
	
}

/* Cupón - Login - Registro */

.woocommerce-form-login-toggle {
    width: 100%;
}

.woocommerce-form-login-toggle .woocommerce-info {
    font-weight: 400 !important;
}

.woocommerce form.checkout_coupon, .woocommerce form.login, .woocommerce form.register {
	border: none !important;
	border-radius: 0 !important;
	padding: 0 !important;
}

.woocommerce form.login {
    width: 100%;
    margin-bottom: 45px;
}

.woocommerce #customer_login h2 {
	margin-bottom: 30px;
}

.woocommerce .woocommerce-form-login__submit {
	float: none;
}

.woocommerce .woocommerce-form-login__rememberme {
	display: block !important;
	margin-bottom: 15px !important;
	padding-left: 30px;
}

.woocommerce .woocommerce-form-login__rememberme:hover{
    cursor: pointer;
}

.woocommerce .woocommerce-form-login__rememberme span {
	display: block;
}

.woocommerce form.checkout_coupon p {
	margin-bottom: 15px;
}

.woocommerce form.checkout_coupon input {
    border-radius: var(--wpex-input-border-radius);
    line-height: var(--wpex-input-line-height);
	padding: var(--wpex-input-padding);
    margin: 0 10px 0 0;
}

.woocommerce #customer_login.col2-set {
    row-gap: 0;
}

.woocommerce #customer_login.col2-set form {
    width: 100%;
    margin: 0 0 var(--general-gap);
}

.woocommerce-privacy-policy-link {
    text-decoration: underline !important;
}

@media (width > 1280px) {
    
    .woocommerce-form-login-toggle {
        width: calc(var(--content-right-sidebar-width) - 60px);
    }
    
    .woocommerce form.login {
        width: calc(var(--content-right-sidebar-width) - 60px);
    }
    
}

@media (width > 800px) {
    
    .woocommerce-page #main:has(#customer_login)::before {
        content: "";
        background: var(--wpex-surface-2, var(--wpex-gray-100));
        position: absolute;
        inset: 0 0 0 auto;
        width: 50%;
        z-index: -1;
    }

    .woocommerce #customer_login.col2-set {
        gap: 120px;
    }
    
}

@media (width <= 800px) {
    
    .woocommerce #customer_login .u-column1 {
        margin: 0;
    }
    
}

@media (width <= 640px) {
	
	.woocommerce form.checkout_coupon input {
		width: 100%;
		margin: 0 0 10px;
	}
	
	.woocommerce form.checkout_coupon button {
		width: 100% !important;
	}
	
}

/* Titulos */

.woocommerce-checkout h3 {
	font-size: var(--wpex-text-2xl) !important;
}

/* Formularios */

.woocommerce form .form-row {
	padding: 0 !important;
	margin: 0 0 20px !important;
	position: relative;
}

.woocommerce form > .form-row:last-child {
    margin-bottom: 0 !important;
}

.woocommerce-checkout .woocommerce-billing-fields__field-wrapper::after,
.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper::after {
	content: "";
	clear: both;
	display: block;
}

.woocommerce form .form-row:not(:has(textarea)) label:not(.checkbox,[class*="remember"]) {
    background: var(--wpex-white);
    border-radius: var(--br-pill, 0);
    line-height: 1em;
    padding: 3px 5px;
    font-size: 10px;
    font-weight: var(--wpex-bold);
    text-transform: uppercase;
    pointer-events: none;
    position: absolute;
    top: 0;
    left: 12px;
    transform: translateY(-50%);
    z-index: 2;
}

.woocommerce form .form-row a {
	text-decoration: underline;
}

.woocommerce form .form-row a:hover {
    color: var(--wpex-accent);
	text-decoration: underline !important;
}

.woocommerce form .form-row-first,
.woocommerce form .form-row-last,
.woocommerce-page form .form-row-first,
.woocommerce-page form .form-row-last {
	width: calc(50% - 10px);
}

.woocommerce form .form-row .select2-container {
	height: 51px;
	width: 100% !important;
}

.select2-container--default .select2-selection--single,
.woocommerce form .form-row span > strong {
	background: var(--wpex-input-bg);
	border: var(--wpex-input-border-width) var(--wpex-input-border-style) var(--wpex-input-border-color) !important;
	border-radius: var(--wpex-input-border-radius) !important;
	color: var(--wpex-input-color);
	line-height: var(--wpex-input-line-height) !important;
	display: block;
	height: auto !important;
	width: 100%;
	padding: var(--wpex-input-padding) !important;
}

.woocommerce form .form-row.woocommerce-invalid input.input-text,
.woocommerce form .form-row.woocommerce-invalid textarea,
.woocommerce form .form-row.woocommerce-invalid select,
.woocommerce form .form-row.woocommerce-invalid .select2-container--default .select2-selection--single {
    border-color: var(--error) !important;
}

.woocommerce form .form-row span > strong {
    background: var(--wpex-surface-2, var(--wpex-gray-100));
    font-weight: 400;
    padding: var(--wpex-input-padding) !important;
}

.woocommerce form .form-row textarea {
	min-height: 100px;
}

.woocommerce form .form-row select:hover {
	cursor: pointer;
}

.select2-container--default .select2-selection--single {
    padding: 18px 15px !important;
}

.select2-container--default .select2-selection--single .select2-selection__rendered {
	color: var(--wpex-text-2) !important;
	line-height: 1em !important;
	padding: 0 !important;
	overflow: visible !important;
}

.select2-container--default .select2-selection--single .select2-selection__arrow {
	height: 48px !important;
	right: 10px !important;
}

.select2-container--default .select2-selection--single .select2-selection__arrow::after {
	content: "\f107";
    font-family: var(--ff-icons);
    font-size: 0.8em;
    font-weight: var(--wpex-bold);
    position: absolute;
    right: 50%;
    top: 50%;
    transform: translate(50%,-50%);
}

.select2-container--default.select2-container--open .select2-selection--single .select2-selection__arrow::after {
	content: "\f106";	
}

.select2-container--default .select2-selection--single .select2-selection__arrow b {
	display: none;
}

#billing_country_field,
#shipping_country_field {
	display: none !important;
}

@media (width < 768px) {
	
	.woocommerce form .form-row-first, .woocommerce form .form-row-last, .woocommerce-page form .form-row-first, .woocommerce-page form .form-row-last {
		width: 100%;
	}
	
}

/* Facturación */

.woocommerce-checkout .woocommerce-billing-fields__field-wrapper {
	margin: 0 0 20px;
}

@media (width < 992px) {
	
	.woocommerce-checkout .woocommerce-billing-fields__field-wrapper {
		margin: 0 0 40px;
	}
	
}

/* Envío */

.woocommerce-checkout .woocommerce-shipping-fields .woocommerce-info {
	margin-bottom: 25px !important;
	transition: all ease 0.3s;
	overflow: hidden;
}

.woocommerce-checkout .woocommerce-shipping-fields .woocommerce-info.ocultar {
	display: none;
	height: 0;
	padding: 0 30px !important;
	margin: 0 !important;
}

.woocommerce-checkout #ship-to-different-address,
.woocommerce-checkout #billing_enable_rut_field,
.woocommerce-address-fields #billing_enable_rut_field,
.woocommerce-checkout .woocommerce-account-fields .form-row.create-account {
	padding-left: 30px !important;
	margin: 0 0 25px;
	position: relative;
}

.woocommerce-checkout .woocommerce-account-fields .form-row.create-account {
	margin-top: -25px !important;
}

.woocommerce-checkout label .optional,
.woocommerce-checkout .rut-input.ocultar,
.woocommerce-address-fields label .optional,
.woocommerce-address-fields .rut-input.ocultar,
.woocommerce-account-fields .create-account input {
    display: none !important;
}

.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper {
	margin: 0 0 10px;
}

.woocommerce-checkout .woocommerce-shipping-fields .shop_table {
	display: block;
	margin: 0 0 30px;
}

.woocommerce-checkout .woocommerce-shipping-fields table.shop_table tbody,
.woocommerce-checkout .woocommerce-shipping-fields table.shop_table tr,
.woocommerce-checkout .woocommerce-shipping-fields table.shop_table td {
	border: none;
	display: block;
	padding: 0 !important;
	width: 100%;
}

.woocommerce-checkout .woocommerce-shipping-fields th {
	display: none !important;
}

.woocommerce-checkout .woocommerce-shipping-fields table.shop_table td {
    border: none !important;
}

.woocommerce-checkout .woocommerce-shipping-fields li {
	background: var(--wpex-white);
	line-height: 1em !important;
	margin: 0 0 -1px !important;
	position: relative;
}

.woocommerce-checkout .woocommerce-shipping-fields li label {
	border: var(--wpex-input-border-width) var(--wpex-input-border-style) var(--wpex-input-border-color);
	font-weight: 400;
	display: block !important;
	padding: 17.5px 15px 17.5px 45px;
	margin: 0;
	position: relative;
}

.woocommerce-checkout .woocommerce-shipping-fields li:first-child label,
.woocommerce-checkout .woocommerce-shipping-fields li:last-child label {
	border-radius: var(--wpex-input-border-radius);
}

.woocommerce-checkout .woocommerce-shipping-fields li:first-child label {
    border-bottom-right-radius: 0;
    border-bottom-left-radius: 0;
}

.woocommerce-checkout .woocommerce-shipping-fields li:last-child label {
    border-top-left-radius: 0;
    border-top-right-radius: 0;
}

.woocommerce-checkout #ship-to-different-address label:hover,
.woocommerce-checkout #billing_enable_rut_field label:hover,
.woocommerce-address-fields #billing_enable_rut_field label:hover,
.woocommerce-checkout .woocommerce-shipping-fields li label:hover,
.woocommerce-account-fields .create-account label:hover {
	cursor: pointer;
}

.woocommerce-checkout #ship-to-different-address span::before,
.woocommerce-checkout #billing_enable_rut_field label:before,
.woocommerce-address-fields #billing_enable_rut_field label:before,
.woocommerce-checkout .woocommerce-shipping-fields li label::before,
.woocommerce-checkout #terms + span::before,
.woocommerce .woocommerce-form-login__rememberme span::before,
.woocommerce-account-fields .create-account span::before {
	content: "\f00c";
	border: 1px solid #aaa;
	border-radius: var(--br-circle, 0);
	color: transparent;
	font-family: var(--ff-icons);
	font-size: 0.6em;
    font-weight: var(--wpex-bold);
	line-height: 19px;
	text-align: center;
	display: inline-block;
	width: 20px;
	height: 20px;
	margin: 0 10px 0 0;
	position: absolute;
	left: 15px;
	top: 14px;
}

.woocommerce-checkout #ship-to-different-address span::before,
.woocommerce-checkout #billing_enable_rut_field label:before,
.woocommerce-address-fields #billing_enable_rut_field label:before,
.woocommerce .woocommerce-form-login__rememberme span::before,
.woocommerce-account-fields .create-account span::before {
	top: 2px;
	left: 0;
}

.woocommerce-checkout #terms + span::before {
	top: -2px;
	left: 0;
}

.woocommerce-checkout .woocommerce-shipping-fields li input {
	margin: 0 !important;
}

.woocommerce-checkout #ship-to-different-address input:checked + span::before,
.woocommerce-checkout #billing_enable_rut_field label:has(input:checked)::before,
.woocommerce-address-fields #billing_enable_rut_field label:has(input:checked)::before,
.woocommerce-checkout .woocommerce-shipping-fields li input:checked + label::before,
.woocommerce-checkout .woocommerce-shipping-fields li input[type="hidden"] + label::before,
.woocommerce-checkout #terms:checked + span::before,
.woocommerce .woocommerce-form-login__rememberme input:checked + span::before,
.woocommerce-account-fields .create-account input:checked + span::before {
	background: var(--exito-c);
	border-color: var(--exito-o);
	color: var(--exito-o);
}

.woocommerce-checkout #ship-to-different-address input,
.woocommerce-checkout #billing_enable_rut_field input,
.woocommerce-address-fields #billing_enable_rut_field input,
.woocommerce-checkout .woocommerce-shipping-fields li input,
.woocommerce-checkout #terms,
.woocommerce .woocommerce-form-login__rememberme input,
.woocommerce-account-fields .create-account input {
	width: 100%;
	height: 100%;
	margin: 0;
	position: absolute;
	top: 0;
	left: 0;
	visibility: hidden;
}

.woocommerce-checkout #terms + span {
    letter-spacing: 0;
	display: block;
	padding-left: 30px;
}

.woocommerce-checkout #terms + span::after {
	content: "*";
	color: red;
	padding-left: 5px;
}

.woocommerce-checkout #terms + span + .required {
	display: none !important;
}

.woocommerce form .form-row .required {
    color: red;
}

.woocommerce form .form-row.woocommerce-invalid span::before {
	border-color: var(--error-o) !important;
}

.woocommerce form .form-row.woocommerce-invalid label,
.woocommerce form .form-row.woocommerce-invalid a {
	color: var(--error-o);
}

#coderockz_woo_delivery_delivery_selection_field,
#coderockz_woo_delivery_delivery_date_section,
#coderockz_woo_delivery_delivery_time_section,
#coderockz_woo_delivery_tips_section,
#coderockz_woo_delivery_pickup_date_section,
#coderockz_woo_delivery_pickup_time_section,
#coderockz_woo_delivery_delivery_pickup_section,
#coderockz_woo_delivery_additional_field_section {
	overflow: visible;
}

#coderockz_woo_delivery_delivery_selection_field {
	display: none !important;
}

#coderockz_woo_delivery_delivery_date_section::before {
	content: "Seleccioná la fecha y hora de envío:";
	display: block;
	margin: 10px 0 20px;
}

.woocommerce-checkout #order_comments_field {
	margin: 0 0 40px !important;
}

.woocommerce-checkout .method-label {
    font-size: 10px;
    font-weight: var(--wpex-bold);
    line-height: 1em;
    text-transform: uppercase;
    margin: 0 0 -9px 15px;
    position: relative;
    z-index: 2;
}

.woocommerce-checkout .method-label span {
    background: var(--wpex-white);
    display: inline-block;
    padding: 3px 5px;
}

/* Pago */

.woocommerce-checkout #payment.woocommerce-checkout-payment {
	background: transparent;
	border-radius: 0;
}

.woocommerce-checkout #payment .wc_payment_methods {
	border: none !important;
	list-style: none;
	padding: 0 !important;
	margin: 0 0 40px !important;
}

.woocommerce-checkout-payment .wc_payment_method p {
	line-height: 1.4em;
}

.woocommerce-checkout #payment li {
	background: var(--wpex-white);
	line-height: 1em !important;
	margin: 0 0 -1px !important;
	position: relative;
}

.woocommerce-checkout #payment li label {
	border: var(--wpex-input-border-width) var(--wpex-input-border-style) var(--wpex-input-border-color);
    border-radius: var(--wpex-input-border-radius);
	font-weight: 400;
	display: block !important;
	padding: 17.5px 15px 17.5px 45px;
	margin: 0;
	position: relative;
}

.woocommerce-checkout #payment li:not(:first-child,:last-child) label {
	border-radius: 0;
}

.woocommerce-checkout #payment li:first-child label,
.woocommerce-checkout #payment li:has(:checked) label {
	border-bottom-left-radius: 0;
	border-bottom-right-radius: 0;
}

.woocommerce-checkout #payment li:last-child label {
	border-top-left-radius: 0;
	border-top-right-radius: 0;
}

.woocommerce-checkout #payment li label:hover {
	cursor: pointer;
}

.woocommerce-checkout #payment li label::before {
	content: "\f00c";
	border: 1px solid #aaa;
	border-radius: var(--br-circle, 0);
	color: var(--wpex-white);
	font-family: var(--ff-icons);
	font-size: 0.6em;
	font-weight: var(--wpex-bold);
	line-height: 19px;
	text-align: center;
	display: inline-block;
	width: 20px;
	height: 20px;
	position: absolute;
	left: 15px;
	top: 14px;
}

.woocommerce-checkout #payment li label::after {
    position: absolute;
    top: 50%;
    right: 17.5px;
    transform: translateY(-50%);
}

.woocommerce-checkout #payment li input:checked + label::before,
.woocommerce-checkout #payment li input[type="hidden"] + label::before{
	background: var(--exito-c);
	border-color: var(--exito-o);
	color: var(--exito-o);
}

.woocommerce-checkout #payment li input {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	visibility: hidden;
}

.woocommerce-checkout #payment div.payment_box {
	background: var(--wpex-surface-2, var(--wpex-gray-100));
	border-radius: 0;
	color: var(--wpex-text-2);
	font-size: 1em;
	margin: 0;
	padding: 20px 30px;
}

.woocommerce-checkout #payment li:last-child div.payment_box {
    border-radius: var(--wpex-input-border-radius);
    border-top-left-radius: 0;
    border-top-right-radius: 0;
}

.woocommerce-checkout #payment div.payment_box p:last-child {
    margin: 0 !important;
}

.woocommerce-checkout #payment div.payment_box::before {
	display: none;
}

.woocommerce-checkout #payment .woocommerce-terms-and-conditions-wrapper {
	margin: 30px 0;
}

.woocommerce-checkout #payment .woocommerce-terms-and-conditions-wrapper > p {
	line-height: 1em;
}

.woocommerce-checkout .woocommerce-privacy-policy-text {
	background: var(--alerta-c);
	color: var(--alerta-o);
	font-size: 14px;
	line-height: 1.7em;
	padding: 20px 30px;
	margin: 0 0 30px;
	display: none;
}

.woocommerce-checkout .woocommerce-privacy-policy-text p:last-child {
	margin: 0;
}

.woocommerce-checkout .woocommerce-privacy-policy-text a {
	color: var(--alerta-o) !important;
	text-decoration: underline;
}

.woocommerce-checkout form .woocommerce-terms-and-conditions-wrapper .form-row label {
    line-height: 1em;
    position: relative;
    background: var(--wpex-white);
    padding: 0;
    font-size: 14px;
    text-transform: none;
    top: 0;
    left: 0;
    transform: translateY(0);
    z-index: 2;
}

.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper label:hover {
	cursor: pointer;
}

.woocommerce-checkout .woocommerce-terms-and-conditions {
	background: var(--wpex-surface-2, var(--wpex-gray-100));
	border: none;
	box-shadow: none;
	padding: 30px;
	margin: 0 0 30px;
}

.woocommerce-checkout #payment #place_order {
	float: none;
}

.woocommerce-checkout #payment .place-order {
	margin: 0 !important;
}

@media (width < 992px) {
	
	.woocommerce-checkout #payment #place_order {
		width: 100%;
	}
	
}

/* Resumen del pedido */

.woocommerce-checkout:not(.woocommerce-order-pay) #order_review {
	background: var(--wpex-surface-2, var(--wpex-gray-100));
	padding: 30px 30px 20px;
	width: 100%;
}

.woocommerce-checkout:not(.woocommerce-order-pay) #order_review.fixed {
	position: fixed;
	top: 100px;
}

.fix-bottom-VP #order_review,
.fix-top-VP #order_review {
	position:fixed;
}

.fix-bottom-VP #order_review {
	bottom: 0;
}

.fix-top-VP #order_review {
	top: 100px;
}

.flex-bottom {
	align-items: flex-end;
}

.woocommerce-checkout:not(.woocommerce-order-pay) #order_review h3 {
	border-bottom: 1px solid var(--wpex-border-main);
	padding: 0 0 25px;
	margin: 0;
}

.woocommerce-checkout:not(.woocommerce-order-pay) #order_review table {
	background: var(--wpex-surface-2, var(--wpex-gray-100));
	display: block;
	padding: 30px 0 0;
}

.woocommerce-checkout:not(.woocommerce-order-pay) #order_review table > * {
	display: table;
	width: 100%;
}

.woocommerce-checkout:not(.woocommerce-order-pay) #order_review thead {
	display: none;
}

.woocommerce-checkout:not(.woocommerce-order-pay) #order_review .cart_item > * {
	border: none !important;
	line-height: 1.2em;
}

.woocommerce-checkout:not(.woocommerce-order-pay) #order_review .cart_item .product-name {
    display: flex;
    align-items: center;
    gap: 20px;
    padding-right: 10px !important;
}

.woocommerce-checkout #order_review .product-total {
	font-weight: var(--wpex-bold);
	text-align: right !important;
}

.woocommerce-checkout.woocommerce-order-pay #order_review .product-subtotal {
    text-align: right !important;
}

.woocommerce-checkout:not(.woocommerce-order-pay) #order_review img {
	background: var(--wpex-white);
	border: 1px solid var(--wpex-border-main);
	border-radius: var(--wpex-input-border-radius);
}

.woocommerce-checkout:not(.woocommerce-order-pay) #order_review .product-quantity {
	background: var(--wpex-white);
	border: 1px solid #aaa;
	border-radius: var(--br-circle, 0);
	font-size: 10px;
    line-height: 17px;
    text-align: center;
    width: 18px;
	position: absolute;
	top: 0;
	left: 50px;
	transform: translate(-50%,-25%);
}

.woocommerce-checkout:not(.woocommerce-order-pay) #order_review .cupon td {
    border-top: 1px solid var(--wpex-border-main) !important;
    padding-top: 25px !important;
}

.woocommerce-checkout:not(.woocommerce-order-pay) #order_review .cupon form {
    display: flex;
    flex-wrap: wrap;
    max-width: initial;
}

.woocommerce-checkout:not(.woocommerce-order-pay) #order_review .cupon p {
    display: block;
    width: 100%;
}

.woocommerce-checkout:not(.woocommerce-order-pay) #order_review .cupon input {
    flex: 1;
}

.woocommerce-checkout:not(.woocommerce-order-pay) #order_review .cupon button {
    width: 100px;
    line-height: 1.4em !important;
}

.woocommerce-order-pay #payment {
    margin-bottom: var(--general-gap);
}

@media (width <= 1280px) {
	
	.woocommerce-checkout:not(.woocommerce-order-pay) #order_review {
		position: relative !important;
		top: 0 !important;
		width: 100% !important;
	}
	
}

/*//////////////////////////////////////////////////////*/
/*///WOOCOMMERCE - CONFIRMACION/////////////////////////*/
/*//////////////////////////////////////////////////////*/

.woocommerce ul.order_details {
	display: grid;
	grid-template-columns: repeat(4,1fr);
	line-height: 1.2em;
	list-style: none;
	gap: 30px;
	margin: 0 0 var(--reduced-gap) !important;
}

.woocommerce ul.order_details.bacs_details:not(:last-of-type) {
    margin-bottom: 30px !important;
}

.woocommerce ul.order_details li {
	background: var(--wpex-surface-2, var(--wpex-gray-100));
	border-radius: var(--wpex-input-border-radius);
	padding: 20px 20px 20px 70px;
	position: relative;
}

.woocommerce ul.order_details li::before {
	content: "";
	color: var(--wpex-accent);
	font-family: var(--ff-icons);
	font-size: 30px;
    font-weight: var(--wpex-bold);
	line-height: 35px;
	width: 35px;
	text-align: center;
	position: absolute;
	left: 20px;
	top: 22px;
}

.woocommerce ul.order_details li.order::before {
	content: "\23";
	font-weight: var(--wpex-bold);
}

.woocommerce ul.order_details li.date::before {
	content: "\f073";
}

.woocommerce ul.order_details li.total::before {
	content: "\f097";
}

.woocommerce ul.order_details li.method::before {
	content: "\f0d6";
}

.woocommerce ul.order_details li.email {
	display: none;
}

.woocommerce ul.order_details li.bank_name::before {
	content: "\f0f7";
}

.woocommerce ul.order_details li.account_number::before {
	content: "\f24d";
}

.woocommerce ul.order_details strong {
	display: block;
	margin-top: 5px;
}

.woocommerce ul.order_details + p {
    background: var(--alerta-c);
    border-radius: var(--wpex-input-border-radius, 0);
    color: var(--alerta-o);
    font-size: 1em !important;
    line-height: 1.7em !important;
    text-align: left !important;
    display: block;
    justify-content: space-between;
    align-items: center;
    gap: 20px;
    padding: var(--notice-padding);
    margin-bottom: var(--reduced-gap);
    width: 100%;
    position: relative;
}

.woocommerce ul.order_details + p::before {
    content: "\f129";
    background: var(--alerta);
    font-family: var(--ff-icons);
    font-size: 11px;
    font-weight: var(--wpex-bold);
    position: absolute;
    display: block;
    left: 20px;
    top: 50%;
    transform: translateY(-50%);
    width: 20px;
    height: 20px;
    line-height: 20px;
    text-align: center;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    border-radius: var(--br-circle, 0);
    color: var(--wpex-white);
}

.woocommerce-checkout .wc-bacs-bank-details-account-name {
    font-size: var(--wpex-text-base) !important;
    text-transform: uppercase;
}

.woocommerce-order-received .woocommerce-order-details {
	margin-bottom: var(--reduced-gap) !important;
}

.woocommerce-order-received .woocommerce-customer-details {
	margin-bottom: var(--general-gap) !important;
}

@media (width >= 1024px) {

    .woocommerce ul.order_details.bacs_details {
    	grid-template-columns: repeat(2,1fr);
    }
    
}

@media (width < 1024px) {
	
	.woocommerce ul.order_details {
		grid-template-columns: repeat(2,1fr);
	}
	
}

@media (width < 768px) {
	
	.woocommerce ul.order_details {
		grid-template-columns: 1fr;
		gap: 20px;
	}
	
}

/*//////////////////////////////////////////////////////*/
/*///WOOCOMMERCE - MI CUENTA////////////////////////////*/
/*//////////////////////////////////////////////////////*/

.woocommerce-account .woocommerce-MyAccount-navigation {
	background: var(--wpex-surface-2, var(--wpex-gray-100));
	border-radius: var(--br-round, 0);
	padding: 30px;
	width: 100% !important;
	margin-bottom: var(--general-gap);
}

.woocommerce-account .woocommerce-MyAccount-content {
	margin-bottom: var(--general-gap);
}

.woocommerce-account .woocommerce-MyAccount-content h2,
.woocommerce-account .woocommerce-MyAccount-content h3 {
	color: var(--wpex-text-2);
	font-size: var(--wpex-text-2xl);
	font-weight: var(--wpex-bold);
	margin-bottom: 30px;
}

.woocommerce-account .woocommerce-MyAccount-navigation ul {
	border: none;
	list-style: none;
	padding: 0;
	margin: 0;
}

.woocommerce-account .woocommerce-MyAccount-navigation li {
	border-bottom: 1px solid rgba(0,0,0,0.15);
}

.woocommerce-account .woocommerce-MyAccount-navigation ul li:last-child {
	border: none;
	padding-bottom: 0;
}

.woocommerce-account .woocommerce-MyAccount-navigation a {
	background: transparent !important;
	color: var(--wpex-text-2) !important;
	display: block;
	padding: 10px 0 10px 30px;
	position: relative;
}

.woocommerce-account .woocommerce-MyAccount-navigation .is-active a {
	color: var(--wpex-accent) !important;
}

.woocommerce-account .woocommerce-MyAccount-navigation a:hover {
	color: var(--wpex-accent) !important;
}

.woocommerce-account .woocommerce-MyAccount-navigation ul li:first-child a {
	padding-top: 0;
}

.woocommerce-account .woocommerce-MyAccount-navigation ul li:last-child a {
	padding-bottom: 0;
}

.woocommerce-account .woocommerce-MyAccount-navigation a::after {
	font-family: var(--ff-icons);
    font-weight: var(--wpex-bold);
	position: absolute;
	left: 0;
}

.woocommerce-account .woocommerce-MyAccount-navigation-link--orders a::after {
	content: "\f07a";
}

.woocommerce-account .woocommerce-MyAccount-navigation-link--edit-address a::after {
	content: "\f279";
}

.woocommerce-account .woocommerce-MyAccount-navigation-link--edit-account a::after {
	content: "\f05a";
}

.woocommerce-account .woocommerce-MyAccount-navigation-link--customer-logout a::after {
	content: "\f08b";
}

@media (width > 1280px) {
    
    .woocommerce-account .woocommerce-MyAccount {
		display: grid;
		align-items: start;
		grid-template-columns: calc(var(--left-sidebar-width) - var(--big-col-gap)) 1fr !important;
		column-gap: calc(var(--big-col-gap) * 2) !important; 
    }
    
    .woocommerce-account .woocommerce-MyAccount-navigation {
    	padding: 0;
    }
    
    .woocommerce-account .woocommerce-MyAccount-navigation a {
        padding: 20px 0 20px 30px;
    }
    
}

@media (width <= 1280px) {
    
    .woocommerce-account .woocommerce-MyAccount {
		grid-template-columns: 1fr !important;
		gap: 0 !important;
    }
	
	.woocommerce-account .woocommerce-MyAccount-navigation {
		width: 100% !important;
	}
	
	.woocommerce-account .woocommerce-MyAccount-content {
		width: 100% !important;
		padding: 0;
	}
	
}

@media (768px <= width <= 1280px) {
	
	.woocommerce-account .woocommerce-MyAccount-navigation ul {
		display: grid;
		grid-template-columns: repeat(4,1fr);
	}
	
	.woocommerce-account .woocommerce-MyAccount-navigation ul li:not(:last-child) {
		border-bottom: none;
		border-right: 1px solid rgba(0,0,0,0.15);
		padding: 0 20px 0 0 !important;
		margin: 0 20px 0 0;
	}
	
	.woocommerce-account .woocommerce-MyAccount-navigation ul li a {
		padding-top: 0;
		padding-bottom: 0;
	}
	
}

/* Pedidos */
	
.woocommerce table.my_account_orders {
	margin: 0 !important;
}

.woocommerce-account .woocommerce-MyAccount-orders tr > *[class*="actions"] {
	text-align: right !important;
	width: 120px;
}

.woocommerce-account .woocommerce-MyAccount-orders td[class*="actions"] {
    display: grid;
    gap: 5px;
}

.woocommerce-account .woocommerce-MyAccount-orders td[class*="actions"] a {
    font-size: 12px !important;
	padding: 5px 0 !important;
	margin: 0 !important;
	width: 100%;
}

.woocommerce-account .woocommerce-order-details {
	position: relative;
}

.woocommerce-account .woocommerce-order-details__title {
	padding-right: 170px;
}

.woocommerce table.shop_table.order_details .product-total:last-child {
	text-align: right !important;
}

.woocommerce table.shop_table.order_details .product-name {
	border-bottom: 1px solid var(--wpex-border-main);
}

.woocommerce-account .order-again {	
	margin: 0;
	position: absolute;
	right: 0;
	top: 0;
}

.woocommerce-account .order-again a.button {
	padding: 8px 20px !important;
}

.woocommerce-account .order-again a.button::before {
	content: "\f021";
    font-family: var(--ff-icons);
    font-size: 0.8em;
    font-weight: var(--wpex-bold);
    display: inline-block;
    margin-right: 10px;
    position: relative;
    top: -1px;
}

@media (width >= 768px) {	

	.woocommerce table.my_account_orders tr td:not(:last-child) {
		padding-right: 15px !important;
	}
	
}

@media (width < 768px) {
	
	.woocommerce-account table.shop_table_responsive thead,
	.woocommerce-account table.shop_table_responsive tbody th {
		display: block !important;
	}
	
	.woocommerce-account table.shop_table_responsive thead tr *:not(:first-child,:nth-last-child(2)) {
		display: none !important;
	}
	
	.woocommerce-account table.shop_table_responsive thead tr *:nth-last-child(2) {
		text-align: right !important;
	}
	
	.woocommerce-account table.shop_table_responsive tr {
		border-bottom: 1px solid var(--wpex-border-main);
		display: grid !important;
		grid-template-columns: 1fr auto;
		align-items: center;
		align-content: center;
		gap: 10px;
		margin: 0 !important;
	}
	
	.woocommerce-account table.shop_table_responsive tbody tr {
		padding-block: 10px !important;
	}
	
	.woocommerce-account table.shop_table_responsive tbody tr th,
	.woocommerce-account table.shop_table_responsive tbody tr td {
		border: none !important;
		text-align: left !important;
		padding: 0 !important;
	    grid-column: 1;
	}
	
	.woocommerce-account table.shop_table_responsive .woocommerce-orders-table__cell-order-actions {
	    grid-column: 2;
	    grid-row: 1 / 5;
	}
	
}

@media (width <= 640px) {
	
	.woocommerce-account .order-again a {
		width: 100% !important;
	}
	
}

/* Direcciones */

.woocommerce-columns--addresses::after {
	display: none !important;
}

.woocommerce-columns--addresses .woocommerce-column,
.woocommerce-customer-details:not(:has(.woocommerce-columns--addresses)),
.col2-set.addresses .woocommerce-Address {
	border: 1px solid var(--wpex-border-main);
	border-radius: var(--br-round, 0);
	text-align: left;
	padding: 30px !important;
	margin: 0;
}

.col2-set.addresses > div {
    border-radius: var(--br-round, 0);
	width: 100% !important;
}

.woocommerce-Address-title .edit {
    color: var(--wpex-accent);
	display: block !important;
	margin: -20px 0 20px !important;
}

.woocommerce-Address-title .edit::before {
	content: "\f040";
	font-family: var(--ff-icons);
	font-size: 0.9em;
    font-weight: var(--wpex-bold);
    display: inline-block;
    margin-right: 5px;
}

.woocommerce-Address-title .edit:hover {
    text-decoration: underline !important;
}

address {
	font-size: 14px !important;
	margin: 0 !important;
}

address p {
	margin: 0 !important;
}

@media (width >= 768px) {	
	
	.col2-set.addresses {
		display: grid;
		grid-template-columns: 1fr 1fr;
		gap: 30px;
	}

	.woocommerce-customer-details:not(:has(.woocommerce-columns--addresses)) {
		max-width: calc(50% - 15px);
	}
	
}

@media (width < 768px) {
	
	.u-column1 {
		margin-bottom: 30px;
	}
	
}

/* Estado del pedido */

.woocommerce-account .woocommerce-MyAccount-content .status-box {
	background: var(--wpex-surface-2, var(--wpex-gray-100));
	border-radius: var(--wpex-input-border-radius);
	padding: 1.5em 2em !important;
	margin: 0 0 40px;
}

.woocommerce-account .woocommerce-orders-table__cell-order-status span {
    background: var(--wpex-surface-2, var(--wpex-gray-100));
    border-radius: var(--wpex-input-border-radius);
    font-size: 12px;
    text-transform: uppercase;
	padding: 5px 8px;
}

.woocommerce-account .woocommerce-MyAccount-content .status-box.completado,
.woocommerce-account .woocommerce-orders-table__cell-order-status.completado span {
	background: var(--completo-c);
	color: var(--completo-o);
}

.woocommerce-account .woocommerce-MyAccount-content .status-box.cancelado,
.woocommerce-account .woocommerce-orders-table__cell-order-status.cancelado span {
	background: var(--error-c);
	color: var(--error-o);
}

.woocommerce-account .woocommerce-MyAccount-content .status-box.procesando,
.woocommerce-account .woocommerce-orders-table__cell-order-status.procesando span {
	background: var(--exito-c);
	color: var(--exito-o);
}

.woocommerce-account .woocommerce-MyAccount-content .status-box.enespera,
.woocommerce-account .woocommerce-orders-table__cell-order-status.enespera span,
.woocommerce-account .woocommerce-MyAccount-content .status-box.pendientedepago,
.woocommerce-account .woocommerce-orders-table__cell-order-status.pendientedepago span {
	background: var(--alerta-c);
	color: var(--alerta-o);
}

.woocommerce-account .woocommerce-MyAccount-content .status-box mark {
	background: transparent;
	color: inherit;
	font-weight: var(--wpex-bold);
}

.woocommerce-account .woocommerce-order-details .woocommerce-table--order-details {
    margin-bottom: 30px;
}

/* Mis datos */

.woocommerce-account #account_display_name + span {
	display: none;
}

.woocommerce-account .woocommerce-EditAccountForm p:last-child {
	margin: 0;
}

.woocommerce-account .woocommerce-EditAccountForm legend {
	color: var(--wpex-text-2);
	width: 100%;
	margin: 10px 0 20px;
}

/* Contraseña perdida */

.woocommerce-ResetPassword {
	margin-bottom: var(--general-gap);
}

.woocommerce-ResetPassword-title {
	margin-bottom: 30px;
}

form.woocommerce-ResetPassword:not(.lost_reset_password) .form-row-first {
	float: none !important;
	margin: 40px auto 30px !important;
}

.woocommerce-ResetPassword p:last-of-type {
	margin: 0 !important;
}

@media (width >= 768px) {
	
	.woocommerce-ResetPassword {
		text-align: center;
		margin-inline: auto;
		max-width: 800px;
	}

    .woocommerce-ResetPassword-title {
        text-align: center;
    }
	
}

/*//////////////////////////////////////////////////////*/
/*///WOO DELIVERY///////////////////////////////////////*/
/*//////////////////////////////////////////////////////*/

.flatpickr-day.selected, .flatpickr-day.startRange, .flatpickr-day.endRange, .flatpickr-day.selected.inRange, .flatpickr-day.startRange.inRange, .flatpickr-day.endRange.inRange, .flatpickr-day.selected:focus, .flatpickr-day.startRange:focus, .flatpickr-day.endRange:focus, .flatpickr-day.selected:hover, .flatpickr-day.startRange:hover, .flatpickr-day.endRange:hover, .flatpickr-day.selected.prevMonthDay, .flatpickr-day.startRange.prevMonthDay, .flatpickr-day.endRange.prevMonthDay, .flatpickr-day.selected.nextMonthDay, .flatpickr-day.startRange.nextMonthDay, .flatpickr-day.endRange.nextMonthDay {
	background: var(--wpex-accent);
	border-color: var(--wpex-accent);
	color: var(--wpex-on-accent);
}

/*//////////////////////////////////////////////////////*/
/*///SIDEBAR////////////////////////////////////////////*/
/*//////////////////////////////////////////////////////*/

#main {
    position: relative;
}

#primary,
#sidebar {
    width: 100% !important;
}

#content-wrap::after {
    display: none;
}

#sidebar {
    margin-bottom: var(--general-gap);
}

#sidebar-inner {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: var(--col-gap);
	margin: 0;
}

#sidebar-inner .sidebar-box {
	margin-bottom: 0;
}

#sidebar .sidebar-box > p {
	display: none !important;
}

#sidebar .wp-block-heading {
	font-size: var(--wpex-text-2xl);
	margin: 0 0 25px;
}

#sidebar .wp-block-latest-posts__list li {
	padding-left: 95px;
	min-height: 75px;
	position: relative;
	margin-bottom: 20px;
}

#sidebar ul li:last-child {
	margin-bottom: 0;
}

#sidebar .wp-block-latest-posts__featured-image {
	width: 75px;
	height: 75px;
	position: absolute;
	top: 0;
	left: 0;
}

#sidebar .wp-block-latest-posts__featured-image img {
	border-radius: var(--br-xs);
	width: 100%;
	height: auto;
}

#sidebar .wp-block-latest-posts__post-title {
	color: var(--negro);
	line-height: 1.4em !important;
	display: block;
}

#sidebar time {	
	color: var(--azul);
	line-height: 1em;
    margin-top: 5px;
}

#sidebar time::before {
	content: "\f017";
	font-family: var(--ff-icons);
    font-weight: var(--wpex-bold);
	padding-right: 5px;
}

@media (width > 1280px) {
    
    #content-wrap:has(#sidebar) {
        display: grid;
        grid-template-columns: 1fr var(--right-sidebar-width);
        gap: var(--big-col-gap);
    }
	
	.content-left-sidebar #content-wrap:has(#sidebar) {
        grid-template-columns: var(--left-sidebar-width) 1fr;
	}
	
	.content-left-sidebar #primary {
	    order: 2;
	}
	
	.content-left-sidebar #sidebar {
		padding-right: var(--big-col-gap);
	    order: 1;
	}
	
	.content-right-sidebar #sidebar {
		padding-left: var(--big-col-gap);
	}
    
    #main:has(.cart-collaterals,.review-wrapper)::before,
    .content-right-sidebar #main::before {
        content: "";
        background: var(--wpex-surface-2, var(--wpex-gray-100));
        position: absolute;
        inset: 0 0 0 auto;
        width: calc(max((100% - var(--wpex-container-width)) / 2, 5%) + var(--right-sidebar-width));
        z-index: -1;
    }
    
    #main:has(.woocommerce-MyAccount-navigation)::before,
    .content-left-sidebar #main::before {
        content: "";
        background: var(--wpex-surface-2, var(--wpex-gray-100));
        position: absolute;
        inset: 0 auto 0 0;
        width: calc(max((100% - var(--wpex-container-width)) / 2, 5%) + var(--left-sidebar-width));
        z-index: -1;
    }
    
    #sidebar-inner {
        row-gap: var(--reduced-gap);
    }

}

@media (width <= 1280px) {

    #sidebar .sidebar-box:not(.widget_media_image) {
    	background: var(--wpex-surface-2, var(--wpex-gray-100));
    	border-radius: var(--br-round, 0);
    	padding: 30px;
    }
    
}

@media (768px <= width <= 1280px) {
	
	#sidebar .wp-block-latest-posts__list {
		display: grid;
		grid-template-columns: repeat(2,1fr);
		grid-column-gap: 20px;
	}
	
}

/* Filtro productos */

#sidebar .searchandfilter h4 {
    font-size: var(--wpex-text-xl);
	padding: 0;
	margin: 0 0 20px;
}

#sidebar .searchandfilter > ul > li,
#sidebar .searchandfilter ul li:last-child {
	padding: 0;
}

#sidebar .searchandfilter > ul > li:not(:last-child) {
	margin: 0 0 30px;
}

#sidebar .searchandfilter li {
	position: relative;
}

#sidebar .sf-field-taxonomy-product_cat li.sf-option-active,
#sidebar .sf-field-taxonomy-product_cat li.sf-option-active li,
#sidebar .sf-field-taxonomy-product_cat li:has(.sf-option-active),
#sidebar .sf-field-taxonomy-product_cat li:has(.sf-option-active) li {
	display: block;
}

#sidebar .searchandfilter li ul li {
	padding: 0 0 5px;
}

#sidebar .searchandfilter .children {
	margin: 0;
}

#sidebar .searchandfilter label {
    width: 100%;
    position: relative;
}

#sidebar .searchandfilter label:has(> select)::after {
    content: "\f107";
    font-family: var(--ff-icons);
    font-size: 0.8em;
    font-weight: var(--wpex-bold);
    pointer-events: none;
    position: absolute;
    right: 2em;
    top: 50%;
    transform: translateY(-50%);
}

#sidebar .sf-input-radio {
	width: 100%;
    height: 100%;
    margin: 0;
    position: absolute;
    top: 0;
    left: 0;
    visibility: hidden;
}

#sidebar li:has(.children) > label {
	margin: 0 0 5px;
}

#sidebar .sf-input-radio + label {
	display: block;
	padding-left: 30px;
    margin: 0;
    position: relative;
}

#sidebar .sf-input-radio + label:hover {
	cursor: pointer;
}

#sidebar .sf-input-radio + label::before {
	content: "\f00c";
	background: var(--wpex-white);
    border: 1px solid #aaa;
    border-radius: var(--br-circle, 0);
    color: transparent;
    font-family: var(--ff-icons);
    font-size: 0.6em;
    font-weight: var(--wpex-bold);
    line-height: 19px;
    text-align: center;
    display: inline-block;
    width: 20px;
    height: 20px;
    margin: 0 10px 0 0;
    position: absolute;
    left: 0;
    top: 2px;
}

#sidebar .sf-input-radio:checked + label::before {
	background: var(--wpex-accent-alt);
	border-color: var(--wpex-accent-alt);
	color: var(--wpex-on-accent-alt);
}

#sidebar .sf-count {
	font-size: 0.8em;
	opacity: 0.6;
}

#sidebar .sf-input-select:hover,
#sidebar .meta-slider:hover,
#sidebar .noUi-handle:hover {
    cursor: pointer;
}

#sidebar .sf-input-select {
	appearance: none;
	background: var(--wpex-input-bg);
	border: var(--wpex-input-border-width) var(--wpex-input-border-style) var(--wpex-input-border-color);
	border-radius: var(--wpex-input-border-radius);
	color: var(--wpex-input-color);
	line-height: var(--wpex-input-line-height);
	display: block;
	height: auto !important;
	width: 100%;
	padding: var(--wpex-input-padding);
	padding-right: 4em;
}

#sidebar .meta-slider {
    max-width: initial;
}

#sidebar .searchandfilter .noUi-connect {
    background: var(--wpex-accent-alt);
}

#sidebar .noUi-handle {
    box-shadow: none;
}

@media (width > 1280px) {
    
    #sidebar .searchandfilter {
        padding-right: 60px;
    }
    
}

/* Lo más vendido */

@media (width < 1024px) {

    .stickySidebar .wpb_wrapper {
        position: relative !important;
        width: 100% !important;
        top: 0 !important;
    }

}

/*//////////////////////////////////////////////////////*/
/*///CF7////////////////////////////////////////////////*/
/*//////////////////////////////////////////////////////*/

.wpcf7-form {
	display: grid;
	grid-template-columns: repeat(6,1fr);
	gap: 30px;
	row-gap: 20px;
}

.wpcf7-form .campo {
	position: relative;
}

.wpcf7-form .campo.x1,
.full .wpcf7-form .campo.x2 {
	grid-column: 1/-1;
}

.wpcf7-form .campo.x6 {
	grid-column: auto;
}

.wpcf7-form .campo label {
    display: block;
    font-weight: var(--wpex-bold);
    margin: 0 0 5px;
}

.wpcf7-form .campo input,
.wpcf7-form .campo textarea,
.wpcf7-form .campo select {
    display: block;
    width: 100%;
	margin: 0 !important;
}

.wpcf7-form .enviar {
	grid-column: 1 / -1;
	justify-self: left;
	width: 100%;
	margin-top: 15px;
}

.wpcf7-form .enviar input {
	background: var(--wpex-btn-bg, var(--wpex-accent));
    border-width: var(--wpex-btn-border-width);
    border-style: var(--wpex-btn-border-style);
    border-color: var(--wpex-btn-border-color, currentColor);
	border-radius: var(--wpex-btn-border-radius);
	color: var(--wpex-btn-color, var(--wpex-on-accent));
	font-size: var(--wpex-btn-font-size);
	line-height: var(--wpex-btn-line-height);
	text-transform: var(--wpex-btn-text-transform);
	display: inline-block;
	padding: var(--wpex-btn-padding);
	outline-color: transparent;
	width: auto;
}

.wpcf7-form .enviar input:hover {
	background: var(--wpex-hover-btn-bg, var(--wpex-accent-alt));
	border-color: var(--wpex-hover-btn-border-color, var(--wpex-btn-border-color, currentColor));
	color: var(--wpex-hover-btn-color, var(--wpex-on-accent-alt));
	cursor: pointer;
}

.wpcf7 .wpcf7-spinner {
	position: absolute;
	top: 50%;
	right: 5px;
	transform: translateY(-50%);
	margin: 0;
}

@media (width >= 768px) {
    
    .wpcf7-form .campo.x2 {
    	grid-column: span 3;
    }
    
    .wpcf7-form .campo.x3 {
    	grid-column: span 2;
    }	

	.wpcf7-form .full-height textarea {
		height: calc(100% - 20px);
	}

    .wpcf7-form .enviar.centrar {
    	text-align: center;
    }
	
}

@media (width < 768px) {
	
	.wpcf7-form {
		grid-template-columns: 100%;
	}
	
}

/* Mensajes */

.wpcf7 .wpcf7-not-valid-tip {
	color: var(--error);
	font-size: var(--wpex-text-xs);
	position: absolute;
	left: 15px;
	bottom: 0;
	display: none;
}

form:not(.et-fb-form) input.wpcf7-not-valid,
form:not(.et-fb-form) textarea.wpcf7-not-valid,
form:not(.et-fb-form) select.wpcf7-not-valid {
	border-bottom-color: var(--error) !important;
}

.wpcf7 form div.wpcf7-response-output {
	background: var(--wpex-surface-2);
	border: none;
	border-radius: var(--wpex-input-border-radius);
	font-size: var(--wpex-input-font-size);
    line-height: var(--wpex-btn-line-height);
	margin: 15px 0 0;
	padding: var(--notice-padding);
	text-align: left;
	grid-column: 1 / -1;
	position: relative;
}

.wpcf7 form div.wpcf7-response-output::before {
    background: var(--wpex-gray-500);
    border-radius: var(--wpex-rounded-full);
    color: var(--wpex-white);
    font-family: var(--ff-icons);
    font-size: 11px;
    font-weight: var(--wpex-bold);
    line-height: 20px;
    text-align: center;
    width: 20px;
    height: 20px;
    position: absolute;
    left: 20px;
    top: 50%;
    transform: translateY(-50%);
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.wpcf7 form.invalid div.wpcf7-response-output,
.wpcf7-form.unaccepted div.wpcf7-response-output {
	background: var(--alerta-c);
	color: var(--alerta-o);
}

.wpcf7 form.invalid div.wpcf7-response-output::before,
.wpcf7-form.unaccepted div.wpcf7-response-output::before {
    content: "\f129";
    background: var(--alerta);
}

.wpcf7 form.failed div.wpcf7-response-output {
	background: var(--error-c);
	color: var(--error-o);
}

.wpcf7 form.failed div.wpcf7-response-output::before {
    content: "\f12a";
    background: var(--error);
}

.wpcf7 form.sent div.wpcf7-response-output {
	background: var(--exito-c);
	color: var(--exito-o);
}

.wpcf7 form.sent div.wpcf7-response-output::before {
    content: "\f00c";
    background: var(--exito);
}

/*//////////////////////////////////////////////////////*/
/*///ANIMACIONES////////////////////////////////////////*/
/*//////////////////////////////////////////////////////*/

@keyframes scroll {
	
    0% {
        opacity: 1;
    }
      
    100% {
        opacity: 0;
        transform: translateY(25px);
    }
	
}

@keyframes pendulo {
	
    0% {
        transform: translateY(0);
    }
      
    50% {
        transform: translateY(10px);
    }
      
    100% {
        transform: translateY(0);
    }
	
}

@keyframes girar {
	
    0% {
        transform: rotate(0deg);
    }
      
    100% {
        transform: rotate(360deg);
    }
	
}

@keyframes pulse-wapp {
	
	0% {
		transform: scale(0.90);
		box-shadow: 0 0 0 0 rgba(37, 211, 102, 0.7);
	}

	70% {
		transform: scale(1);
		box-shadow: 0 0 0 10px rgba(37, 211, 102, 0);
	}

	100% {
		transform: scale(0.90);
		box-shadow: 0 0 0 0 rgba(37, 211, 102, 0);
	}
	
}