/*
Theme Name: Impreza Child
Template: Impreza
Version: 1.0
Author:	UpSolution
Theme URI: http://impreza.us-themes.com/
Author URI: http://us-themes.com/
*/

/*Add your own styles here:*/

.cmplz-cookiebanner .cmplz-buttons {
    flex-direction: row-reverse;
}

.grecaptcha-badge {
    visibility: hidden;
}

/* GENERAL */

/* CABECERA */

/* MARQUESINA */
.marquesina-wrapper {
    position: relative;
    overflow: hidden;
    width: 100%;
    text-align: center;
}

.marquesina-track span {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    opacity: 0;
    transition: opacity 0.6s ease;
    white-space: nowrap;
}

.marquesina-track span.activo {
    position: relative;
    opacity: 1;
}


#cabecera .slide-cabecera .owl-stage-outer::after {
  content: "";
  position: absolute;
  inset: 0;
  background: url("/wp-content/uploads/2026/03/overlay.webp") center/cover no-repeat;
  z-index: 2;
}

#cabecera .owl-dots {
    text-align: center;
    line-height: 0;
    padding-top: 1rem;
    position: absolute;
    right: 5%;
    bottom: 20%;
}

#cabecera .owl-prev:after,
#cabecera .owl-next:after {
  content: none !important;
}

#cabecera .owl-prev,
#cabecera .owl-next {
  width: 39px;
  height: 39px;
  background: url('/wp-content/uploads/2026/03/slide-arrow.webp') center/contain no-repeat;
  border: none;
}

#cabecera .owl-prev {
  transform: scaleX(-1);
}

#cabecera .dotstyle_circle .owl-dot.active span {
    background: #fff !important;
    box-shadow: none;
    opacity: 1;
}

.dotstyle_circle .owl-dot span {
    display: block;
    border-radius: 50%;
    background: none;
    width: 14px;
    height: 14px;
    padding: 0p 2x;
    opacity: 1;
	border:1px solid #fff;
}

/* HOME */
.bloque-categoria-principal {
	transition: filter 0.5s ease;
}

.bloque-categoria-principal .titulo-categoria-principal,
.bloque-categoria-principal .icono-flecha-categoria-principal-home,
.bloque-categoria-principal .titulo-categoria-principal-secundario {
	transition: opacity 0.5s ease;
}

.bloque-categoria-principal .video-categoria-principal video {
	transition: transform 0.3s ease;
}


/* Estado inicial */
.bloque-categoria-principal 
.titulo-categoria-principal-secundario {
	opacity: 0;
}

/* Hover */
.bloque-categoria-principal:hover 
.titulo-categoria-principal,
.bloque-categoria-principal:hover 
.icono-flecha-categoria-principal-home {
	opacity: 0;
}

.bloque-categoria-principal:hover 
.titulo-categoria-principal-secundario {
	opacity: 1;
}

.bloque-categoria-principal:hover 
.video-categoria-principal video {
	transform: scale(1.02);
}

.bloque-categoria-principal:hover {
	filter: drop-shadow(0 10px 10px rgba(0,0,0,0.08));
}


/* videos home play & pause */
.icon-play,
.icon-pause {
  transition: opacity 0.3s ease;
  cursor: pointer;
transform:translateX(-50%);
}

.icon-play {
  opacity: 1;
  pointer-events: auto;
}

.icon-pause {
  opacity: 0;
  pointer-events: none;
}

/* MENÚ MVL */
.w-nav-icon>div:before { top: -0.17em; }

.w-nav-icon>div:after{
  top: .17em;
  box-shadow: 0 .17em 0 currentColor;
}

.w-nav-control.active .w-nav-icon>div:after{
  box-shadow: none;
}

/* Valores por defecto de impreza */
@media (max-width:1024px){

  .w-nav-icon>div:before { top: -0.3333em; }

  .w-nav-icon>div:after{
    top: .3333em;
    box-shadow: none;
  }
}


/* FICHA PRODUCTO */
.woocommerce-tabs {
    display: none !important;
}

/* invertir orden añadir carrito con cantidad */
.woocommerce-variation-add-to-cart,
.cart {
    display: flex;
    flex-wrap: wrap;
}

.woocommerce-variation-add-to-cart .single_add_to_cart_button,
.cart .single_add_to_cart_button {
    order: -1;
}

.informacion-ficha-producto .w-post-elm.add_to_cart,
.informacion-ficha-producto .w-vwrapper.confeccion-a-medida,
.informacion-ficha-producto .w-vwrapper.guia-tallas {
  order: unset;
}

/* ocultar swatch de confección a medida (se selecciona via checkbox) */
.cfvsw-swatches-option[data-slug="confeccion-a-medida"] { display: none !important; }

/* titulos de las variaciones */
.variations .label label {
    font-size: var(--h3-font-size) !important;
    font-weight: var(--h3-font-weight) !important;
}

.single-product .woocommerce-product-attributes-item--attribute_pa_tejido,
.single-product .woocommerce-product-attributes-item--attribute_pa_talla,
.single-product .woocommerce-product-attributes-item--attribute_pa_linea .w-post-elm-before
{display:none;}

.woocommerce-product-attributes-item__value {font-weight:normal !important;}

/* reubicar thumbs galeria */
.woocommerce-product-gallery ol {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
	padding:0.25rem;
    list-style: none;
    margin: 0;
    position: absolute;
    top: 0;
    z-index: 2;
}

.woocommerce-product-gallery ol li {
    width: 50px;
    aspect-ratio: 1 / 1; 
    overflow: hidden;
	border-radius:0.5rem;
}

.woocommerce-product-gallery ol li img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.woocommerce-product-gallery ol>li img.flex-active {
 border: 1px solid var(--color-content-primary);
	border-radius:0.5rem;
}

/* CUADRÍCULA PRODUCTO */
/*.cuadricula-producto-tejido .woocommerce-product-attributes-item--attribute_pa_talla,
.cuadricula-producto-tejido .woocommerce-product-attributes-item--attribute_pa_linea
{
	display:none;
}

.cuadricula-producto-categoria-precio .woocommerce-product-attributes-item--attribute_pa_tejido, 
.cuadricula-producto-categoria-precio .woocommerce-product-attributes-item--attribute_pa_talla,
.cuadricula-producto-categoria-precio .woocommerce-product-attributes-item--attribute_pa_linea .w-post-elm-before
{
	display:none;
}*/


/* Tejidos */
.grid-swatches-wrapper {
  position: relative;
	width:100%;
}
.grid-swatches {
  display: flex;
  gap: 4px;
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  scrollbar-width: none;
}
.grid-swatches::-webkit-scrollbar {
  display: none;
}
.grid-swatch {
  height: 50px;
  border: 1px solid transparent;
  border-radius: 0;
  background-size: cover;
  background-position: center;
  cursor: pointer;
  padding: 0;
  scroll-snap-align: start;
  transition: border-color 0.2s, border-radius 0.2s;
}
.grid-swatch.active,
.grid-swatch:hover {
  border-color: var(--color-alt-content-text);
  border-radius: 0.8rem;
}
.grid-swatches-arrow {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 1.25rem;
  height: 1.25rem;
  border-radius: 50%;
  border: none;
  background: rgba(0, 0, 0, 0.6);
  color: #fff;
  font-size: 1rem;
  line-height: 1;
  cursor: pointer;
  padding: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 2;
}
.grid-swatches-prev {
  left: -8px;
}
.grid-swatches-next {
  right: -8px;
}
.grid-swatches-arrow:hover {
  background: rgba(0, 0, 0, 0.8);
}


/* FICHA PRODUCTO */

/* Tejidos y tallas */
.cfvsw-swatches-option  {
    width: 50px !important;
    height: 50px !important;
    min-width: 50px !important;
    min-height: 50px !important;
}

.guia-tallas ul {margin-left:1rem;}

/* Popup guia de tallas */
.guia-tallas-table {
  width: 100%;
  border-collapse: collapse;
  text-align: center;
}

.guia-tallas-table th,
.guia-tallas-table td {
  padding: 8px;
  border: 1px solid #ddd;
  font-size: 1rempx;
text-align:center;
}

.guia-tallas-extra {
  margin-top: 12px;
  font-size: 0.8rem;
}

/* Ocultar precio */
.woocommerce-variation-price {display:none;}

/* TIENDA */

/* quitar check confección a medida en los filtros */
body.term-seleccion-vintage .w-filter-item-value[data-value="confeccion-a-medida"] {
  display: none;
}

/* FORMULARIO NEWSLETTER */
.formulario-newsletter form.wpcf7-form {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.formulario-newsletter .wpcf7-form-control-wrap {
  flex: 1;
margin:0px;
}


.formulario-newsletter input[type="email"] {
  width: 100%;
  height: 50px;
  margin: 0;
  padding: 0;
  border: 0;
  background: #fff;
  box-shadow: none;
  appearance: none;
  -webkit-appearance: none;
}

.formulario-newsletter input.wpcf7-submit {
  width: 50px !important;
  min-width: 50px !important;
  height: 50px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 1px solid #000 !important;
  border-radius: 0 !important;
  background-color: #fff !important;
  background-image: url('/wp-content/uploads/2026/03/icon-arrow.svg') !important;
  background-repeat: no-repeat !important;
  background-position: center center !important;
  background-size: 24px !important;
  box-shadow: none !important;
  cursor: pointer;
  color: transparent !important;
  font-size: 0 !important;
  line-height: 0 !important;
  text-indent: -9999px;
  overflow: hidden;
  appearance: none;
  -webkit-appearance: none;
}

.formulario-newsletter .screen-reader-text {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.formulario-newsletter .wpcf7-spinner {
	display:none;
}

.wpcf7 input::placeholder,
.wpcf7 textarea::placeholder {
  color: #000;
  opacity: 1; /* importante para que no se vea gris en algunos navegadores */
}

.aceptacion-newsletter {
  display: block;
  margin-top: 10px;
}

.aceptacion-newsletter .wpcf7-list-item {
  display: inline;
  margin: 0;
}

.aceptacion-newsletter .wpcf7-list-item-label {
  display: inline;
}

.aceptacion-newsletter input[type="checkbox"] {
  margin-right: 6px;
}

/* Formulario Contacto */

.form-contacto input[type="text"],
.form-contacto input[type="email"],
.form-contacto input[type="tel"],
.form-contacto textarea {
	font-size:1rem !important;
}

.form-contacto input::placeholder,
.form-contacto textarea::placeholder {
  font-size:0.9rem !important;
}

.form-fila-3 {
  display: grid;
  grid-template-columns: 2.5fr 1.5fr 1fr  !important;
}

@media (max-width: 768px) {
  .form-fila-3 {
    grid-template-columns: 1fr  !important;
  }
}

/* CARRITO */
body.woocommerce-cart .g-cols {
    max-width: 85%;
    margin: auto !important; 
}

/* FINALIZAR COMPRA */

/* CHECKOUT CLÁSICO — estilo minimalista */
.woocommerce-checkout .col2-set,
.woocommerce-checkout #order_review {
    font-family: inherit;
}

/* Inputs: solo borde inferior, sin fondo */
.woocommerce-checkout input[type="text"],
.woocommerce-checkout input[type="email"],
.woocommerce-checkout input[type="tel"],
.woocommerce-checkout input[type="number"],
.woocommerce-checkout input[type="password"],
.woocommerce-checkout textarea,
.woocommerce-checkout select,
.woocommerce-checkout .select2-container--default .select2-selection--single {
    border: none !important;
    border-bottom: 1px solid #ccc !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    padding: 10px 0 !important;
    font-size: 0.95rem !important;
    color: #333 !important;
    transition: border-color 0.2s;
}

.woocommerce-checkout input:focus,
.woocommerce-checkout textarea:focus,
.woocommerce-checkout select:focus {
    border-bottom-color: #000 !important;
    outline: none !important;
}

.woocommerce-checkout .select2-container--default .select2-selection--single {
    height: auto !important;
    padding: 10px 0 !important;
}

.woocommerce-checkout .select2-container--default .select2-selection--single .select2-selection__rendered {
    padding-left: 0 !important;
    color: #333 !important;
    line-height: 1.4 !important;
}

.woocommerce-checkout .select2-container--default .select2-selection--single .select2-selection__arrow {
    top: 50% !important;
    transform: translateY(-50%);
    right: 0 !important;
}

/* Labels más finos */
.woocommerce-checkout .form-row label {
    font-size: 0.85rem !important;
    font-weight: 400 !important;
    color: #666 !important;
    margin-bottom: 2px !important;
}

.woocommerce-checkout .form-row label .required {
    color: #666 !important;
}

/* Headings de sección */
.woocommerce-checkout h3,
.woocommerce-checkout #order_review_heading {
    font-size: 1.2rem !important;
    font-weight: 500 !important;
    letter-spacing: 0.02em;
    padding-bottom: 0.5rem;
    margin-bottom: 1.5rem;
    border-bottom: 1px solid #e0e0e0;
}

/* Espaciado entre campos */
.woocommerce-checkout .form-row {
    margin-bottom: 1rem !important;
}

/* Tabla del pedido más limpia */
.woocommerce-checkout table.shop_table {
    border: none !important;
    border-collapse: collapse;
}

.woocommerce-checkout table.shop_table th,
.woocommerce-checkout table.shop_table td {
    border: none !important;
    border-bottom: 1px solid #f0f0f0 !important;
    padding: 12px 0 !important;
    font-size: 0.9rem !important;
    font-weight: 400 !important;
}

.woocommerce-checkout table.shop_table tfoot th {
    font-weight: 500 !important;
}

.woocommerce-checkout table.shop_table .order-total th,
.woocommerce-checkout table.shop_table .order-total td {
    border-bottom: none !important;
    font-weight: 600 !important;
    font-size: 1rem !important;
}

/* Botón de realizar pedido */
.woocommerce-checkout #place_order {
    background: #333 !important;
    color: #fff !important;
    border: none !important;
    border-radius: 4px !important;
    padding: 14px 30px !important;
    font-size: 0.95rem !important;
    font-weight: 500 !important;
    letter-spacing: 0.03em;
    text-transform: none !important;
    width: 100%;
    transition: background 0.2s;
}

.woocommerce-checkout #place_order:hover {
    background: #000 !important;
}

/* Cupón bar más discreto */
.woocommerce-checkout .woocommerce-form-coupon-toggle .woocommerce-info {
    background: #f8f8f8 !important;
    border: none !important;
    border-left: none !important;
    color: #666 !important;
    font-size: 0.85rem !important;
    padding: 12px 16px !important;
}

.woocommerce-checkout .woocommerce-form-coupon-toggle .woocommerce-info::before {
    display: none !important;
}

/* Checkboxes legales */
.et-legal-check {
    margin-top: 1rem !important;
}

.et-legal-check label {
    font-size: 0.85rem !important;
    font-weight: 400 !important;
    color: #555 !important;
    line-height: 1.5 !important;
}

.et-legal-check a {
    color: #333 !important;
    text-decoration: underline !important;
}

/* Textarea notas más discreto */
.woocommerce-checkout textarea {
    min-height: 80px !important;
    resize: vertical;
}

/* Quitar bordes extras de Impreza */
.woocommerce-checkout .col2-set .col-1,
.woocommerce-checkout .col2-set .col-2 {
    padding: 0;
}


/* FOOTER */
p.texto-newsletter {color: var(--color-alt-content-secondary);}


/* Accesibilidad */

.wpcf7 form label {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  clip-path: inset(50%);
  white-space: nowrap;
  border: 0;
}