/* =========================================================
   REPARAR IPHONE — CSS GENERAL
========================================================= */


/* =========================================================
   GENERAL
========================================================= */

body,html{scroll-behavior: smooth;}

.footer-bottom p{
    display:none;
}

.gt_white_content a{
    color:black !important;
}

.gt_white_content img{
    padding-right:10px !important;
}


/* =========================================================
   BOTONES
========================================================= */

.site-header .button,
.wp-block-button__link,
.wc-block-components-button{
    background-color:#0085e3 !important;
    border:2px solid white !important;
    color:white !important;
    transition:all .3s ease-in-out !important;
    padding:10px 30px !important;
    border-radius:50px !important;
}

.button:hover,
.wp-block-button__link:hover,
.wc-block-components-button:hover{
    background-color:#0085e3 !important;
}


/* =========================================================
   IMÁGENES
========================================================= */

main figure img{
    border-radius:7px !important;
}

img,
.wc-block-components-product-image img{
    border-radius:20px !important;
}

.site-footer img,
.site-header img{
    border-radius:0 !important;
}


/* =========================================================
   WAPF — OPCIONES / RADIOS
========================================================= */

.wapf-field-group{
    margin-top:20px !important;
    text-align:center;
}

.wapf-field-radio .wapf-field-label{
    margin-bottom:15px;
}

.wapf-radios{
    display:flex;
    gap:12px;
    flex-wrap:wrap;
}

.wapf-radios input[type="radio"]{
    display:none;
}

.wapf-radios .wapf-input-label{
    display:flex;
    align-items:center;
    justify-content:center;
    min-height:60px;
    padding:5px 20px;
    border:2px solid #e5e5e5;
    font-size:11px !important;
    line-height:1.5em !important;
    border-radius:12px;
    cursor:pointer;
    transition:.25s ease;
    background:#fff;
    font-weight:600;
    width:100%;
}

.wapf-radios .wapf-checkable{
    flex:1;
    min-width:220px;
}

.wapf-radios .wapf-input-label:hover{
    border-color:#0085e3;
}

.wapf-radios .wapf-checkable.wapf-checked .wapf-input-label{
    background:#0085e3;
    color:#fff;
    border-color:#0085e3;
}

.wapf-radios .wapf-pricing-hint{
    margin-left:6px;
    opacity:.85;
}

.wapf-radios .wapf-input-label::before{
    content:'';
    margin-right:10px;
    font-size:18px;
}

.wapf-radios .wapf-checkable.wapf-checked .wapf-input-label::before{
    content:'✓';
}


/* =========================================================
   TARS — CATEGORIES SLIDER
========================================================= */

.tars-categories-slider h3{
    margin:15px 0 10px;
    text-align:center;
}

.tars-categories-slider p{
    text-align:center;
}

.tars-categories-slider a{
    text-decoration:none;
    color:inherit;
}

.tars-categories-slider .swiper-slide{
    width:260px !important;
}

.tars-categories-slider .swiper-button-prev,
.tars-categories-slider .swiper-button-next{
    display:none !important;
}


/* =========================================================
   WOOCOMMERCE GENERAL
========================================================= */

.woocommerce div.product form.cart .variations td,
.woocommerce div.product form.cart .variations th{
    margin-top:20px !important;
}

.single-product .woocommerce-product-details__short-description{
    display:none;
}

.woocommerce-mini-cart__buttons a{
    font-size:10px !important;
}

.nv-card-content-wrapper{
    text-align:center !important;
}

.nv-woo-filters,
.nv-bc-count-wrap{
    display:none !important;
}

.products .product{
    text-align:center;
}

.products label{
    display:none;
}

.product-category img{
    width:auto !important;
    margin:auto !important;
    margin-bottom:20px !important;
}

.wc-tabs-wrapper{
    background-color:#F4F5F7;
    padding:5%;
    border-radius:20px;
}

.connected-products-wrapper{
    margin-top:30px;
}

.iphone-boxes ul{
    display:none !important;
}

.product_meta{
    display:none;
}

.reset_variations{
    display:none !important;
}

.related h2{
    font-size:0;
}


/* =========================================================
   MENÚ / GTRANSLATE
========================================================= */

.menu-item.menu-item-gtranslate{
    margin-left:200px;
}

.menu-item.menu-item-gtranslate span{
    font-size:12px !important;
}

.menu-item.menu-item-gtranslate img{
    margin-right:10px;
}


/* =========================================================
   VÍDEO
========================================================= */

.videoComercial iframe{
    min-height:50vh !important;
    border-radius:17px;
}


/* =========================================================
   SELECTOR MODELO IPHONE
========================================================= */

.cfvsw-swatches-container[swatches-attr="attribute_pa_modelo-iphone-reparar"]{
    display:grid !important;
    grid-template-columns:repeat(3, 1fr) !important;
    gap:7px !important;
    width:100% !important;
}

.cfvsw-swatches-container[swatches-attr="attribute_pa_modelo-iphone-reparar"]
.cfvsw-label-option{
    padding:0 6px !important;
    margin:0 !important;

    display:flex !important;
    align-items:center !important;
    justify-content:flex-start !important;

    width:100% !important;
    box-sizing:border-box !important;

    border-radius:7px !important;
    border:1px solid #ddd !important;
    background:#fff !important;
}

.cfvsw-swatches-container[swatches-attr="attribute_pa_modelo-iphone-reparar"]
.cfvsw-label-option::before{
    content:"";
    width:14px;
    height:20px;
    margin-right:8px;

    background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230d6efd' stroke-width='2'%3E%3Crect x='7' y='2' width='10' height='20' rx='2'/%3E%3Ccircle cx='12' cy='18' r='1'/%3E%3C/svg%3E") center/contain no-repeat;

    display:block;
    flex-shrink:0;
}

.cfvsw-swatches-container[swatches-attr="attribute_pa_modelo-iphone-reparar"]
.cfvsw-selected-swatch::before{
    background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='2'%3E%3Crect x='7' y='2' width='10' height='20' rx='2'/%3E%3Ccircle cx='12' cy='18' r='1'/%3E%3C/svg%3E") center/contain no-repeat;
}

.cfvsw-swatches-container[swatches-attr="attribute_pa_modelo-iphone-reparar"]
.cfvsw-swatch-inner{
    display:block !important;
    width:100% !important;
    text-align:left !important;
    font-size:.9em !important;
    font-weight:500 !important;
    line-height:1 !important;
    padding:10px !important;
    margin:0 !important;
}

.cfvsw-swatches-container[swatches-attr="attribute_pa_modelo-iphone-reparar"]
.cfvsw-selected-swatch{
    background:#0d6efd !important;
    border-color:#0d6efd !important;
}

.cfvsw-swatches-container[swatches-attr="attribute_pa_modelo-iphone-reparar"]
.cfvsw-selected-swatch .cfvsw-swatch-inner{
    color:#fff !important;
}


/* =========================================================
   REPARAR IPHONE — CARD SERVICIO
========================================================= */

body.rip-reparaciones .summary > .price{
    display:none !important;
    font-size:14px !important;
    color:#999 !important;
    font-weight:400 !important;
    margin-bottom:15px !important;
}

body.rip-reparaciones .summary .single_variation_wrap{
    background:#fff;
    border:1px solid #e8e8e8;
    border-radius:12px;
    padding:25px;
    margin-top:20px;
    box-shadow:0 4px 15px rgba(0,0,0,.05);
    overflow:hidden;
}

/* Badge */
body.rip-reparaciones .summary .single_variation_wrap::before{
    content:"✓ Servicio disponible 24H - Coste de reparación exacto";
    background:#16a34a;
    color:#fff;
    text-align:center !important;
    font-size:12px;
    font-weight:600;
    padding:6px 12px;
    border-radius:50px;
    margin:auto !important;
    display:block !important;
}

/* Precio */
body.rip-reparaciones .summary .woocommerce-variation-price{
    margin:15px 0;
}

body.rip-reparaciones .summary .woocommerce-variation-price .price{
    display:block;
    font-size:42px;
    font-weight:700;
    color:#111;
    line-height:1;
}

body.rip-reparaciones .summary .woocommerce-Price-currencySymbol{
    font-size:.65em;
}

/* Beneficios */
body.rip-reparaciones .summary .single_variation_wrap::after{
    content:"Reparación profesional con Garantía y servicio de recogida-entrega";
    display:block;
    margin-top:15px;
    padding-top:15px;
    border-top:1px solid #eee;
    text-align:center;
    color:#666;
    font-size:13px;
}

/* Botón */
body.rip-reparaciones .summary .single_add_to_cart_button{
    width:100%;
    margin-top:20px;
    border-radius:50px !important;
    text-align:center !important;
    font-size:0 !important;
}

body.rip-reparaciones .summary .single_add_to_cart_button::before{
    content:"Reservar reparación";
    font-size:16px;
    font-weight:600;
}

body.rip-reparaciones .summary .price{
    width:100%;
    margin-top:20px;
    border-radius:50px !important;
    text-align:center !important;
}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width:767px){

    /* -----------------------------------------------------
       TIPOGRAFÍA
    ----------------------------------------------------- */

    .site-footer li,
    .footer-bottom li{
        font-size:11px !important;
        padding:0 !important;
        margin:0 !important;
    }

    body h1,
    body #content h1,
    body #content h1.wp-block-heading,
    body #content .has-x-large-font-size,
    body .woocommerce div.product .product_title{
        font-size:23px !important;
        line-height:1.05 !important;
        letter-spacing:-.5px !important;
        margin-top:0 !important;
        margin-bottom:12px !important;
    }

    body h2,
    body #content h2,
    body #content h2.wp-block-heading,
    body #content .has-large-font-size{
        font-size:19px !important;
        line-height:1.1 !important;
        letter-spacing:-.3px !important;
        margin-top:0 !important;
        margin-bottom:10px !important;
    }

    body h3,
    body #content h3,
    body #content h3.wp-block-heading{
        font-size:13px !important;
        line-height:1.15 !important;
        margin-top:0 !important;
        margin-bottom:8px !important;
    }

    body h4,
    body #content h4,
    body #content h4.wp-block-heading{
        font-size:15px !important;
        line-height:1.2 !important;
        margin-bottom:7px !important;
    }

    body #content .has-medium-font-size{
        font-size:15px !important;
        line-height:1.25 !important;
    }

    body #content p,
    body #content li,
    body #content span{
        font-size:13px !important;
        line-height:1.4 !important;
    }


    /* -----------------------------------------------------
       PRODUCTOS / CARDS
    ----------------------------------------------------- */

    body #content .wp-block-post-title,
    body #content .wp-block-post-title.has-medium-font-size,
    body .products .product h2,
    body .products .woocommerce-loop-product__title{
        font-size:14px !important;
        line-height:1.15 !important;
        margin-bottom:6px !important;
    }


    /* -----------------------------------------------------
       BOTONES
    ----------------------------------------------------- */

    body #content .button,
    body #content button,
    body #content .wp-block-button__link,
    body .wc-block-components-button{
        font-size:13px !important;
        line-height:1.2 !important;
    }


    /* -----------------------------------------------------
       TARS SLIDER
    ----------------------------------------------------- */

    .tars-categories-slider h3{
        font-size:16px !important;
        line-height:1.15 !important;
        margin:10px 0 6px !important;
    }

    .tars-categories-slider p{
        font-size:12px !important;
        line-height:1.35 !important;
    }


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

    .woocommerce label,
    .woocommerce table.variations,
    .woocommerce .variations label{
        font-size:13px !important;
        line-height:1.3 !important;
    }


    /* -----------------------------------------------------
       OTTER / THEMEISLE ICON LIST
       Sin tocar el layout normal de Otter
    ----------------------------------------------------- */

    .wp-block-themeisle-blocks-icon-list{
        gap:3px !important;
        margin:0 !important;
        padding:0 !important;
    }

    .wp-block-themeisle-blocks-icon-list-item{
        display:flex !important;
        align-items:flex-start !important;
        gap:7px !important;
        margin:0 !important;
        padding:2px 0 !important;
        min-height:0 !important;
    }

    .wp-block-themeisle-blocks-icon-list-item-icon{
        font-size:11px !important;
        width:13px !important;
        min-width:13px !important;
        margin:4px !important;
    }

    .wp-block-themeisle-blocks-icon-list-item-content{
        font-size:13px !important;
        line-height:1.2 !important;
        margin:0 !important;
        padding:0 !important;
    }

/* Icon List horizontal → 2 columnas en mobile */
.wp-block-themeisle-blocks-icon-list.is-style-horizontal{
    display:grid !important;
    grid-template-columns:repeat(2, minmax(0,1fr)) !important;
    gap:5px 12px !important;
    width:100% !important; margin-top:20px!important;
}


    /* -----------------------------------------------------
       ADVANCED COLUMNS — OTTER / THEMEISLE
    ----------------------------------------------------- */

    .wp-block-themeisle-blocks-advanced-column .wp-block-column{
        padding-left:20px !important;
        padding-right:20px !important;
        box-sizing:border-box !important;
    }

    .wp-block-themeisle-blocks-advanced-column
    .wp-block-column
    figure.wp-block-image img{
        border-radius:0 !important;
        width:100% !important;
    }


    /* -----------------------------------------------------
       SELECTOR MODELOS IPHONE — 2 COLUMNAS
    ----------------------------------------------------- */

    .cfvsw-swatches-container[swatches-attr="attribute_pa_modelo-iphone-reparar"]{
        display:grid !important;
        grid-template-columns:repeat(2, minmax(0,1fr)) !important;
        gap:7px !important;
        width:100% !important;
    }

    .cfvsw-swatches-container[swatches-attr="attribute_pa_modelo-iphone-reparar"]
    .cfvsw-label-option{
        width:100% !important;
        min-width:0 !important;
    }

/* -----------------------------------------------------
   OTTER ADVANCED COLUMNS — 2 COLS → 1 COL MOBILE
----------------------------------------------------- */

.wp-block-themeisle-blocks-advanced-columns.has-2-columns
> .innerblocks-wrap{
    display:flex !important;
    flex-direction:column !important;
}

.wp-block-themeisle-blocks-advanced-columns.has-2-columns
> .innerblocks-wrap
> .wp-block-themeisle-blocks-advanced-column{
    width:100% !important;
    max-width:100% !important;
    flex-basis:100% !important;
}
	
    /* -----------------------------------------------------
       IMÁGENES MOBILE
    ----------------------------------------------------- */

    img,
    .wc-block-components-product-image img{
        border-radius:20px !important;
    }

	/* -----------------------------------------------------
   FOOTER — TODO CENTRADO
----------------------------------------------------- */

.site-footer,
.footer-bottom,
.site-footer .widget,
.site-footer .widget_nav_menu,
.site-footer ul,
.footer-bottom ul{
    text-align:center !important;
}

.site-footer ul,
.footer-bottom ul{
    padding-left:0 !important;
    margin-left:0 !important;
}

.site-footer li,
.footer-bottom li{
    text-align:center !important;
    justify-content:center !important;
    width:100% !important;
}

.site-footer a,
.footer-bottom a{
    text-align:center !important;
}
	
	
}




/* REPARACIONES — MOBILE COMO MOCKUP */
@media (max-width: 767px) {

    .reparaciones-grid {
        padding: 10px !important;
    }

    .reparaciones-grid .wc-block-product-template {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 10px !important;
    }

    /* CARD */
    .reparaciones-grid .wc-block-product {
        width: 100% !important;
        margin: 0 !important;
        padding: 0 0 10px !important;

        background: #f8f8f8 !important;
        border: 1px solid #e1e1e1 !important;
        border-radius: 7px !important;
        overflow: hidden !important;

        box-shadow: none !important;
    }

    /* IMAGEN */
    .reparaciones-grid .wc-block-components-product-image {
        width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    .reparaciones-grid .wc-block-components-product-image > a {
        display: block !important;
        width: 100% !important;
        height: 145px !important;
        overflow: hidden !important;
    }

    .reparaciones-grid .wc-block-components-product-image img {
        width: 100% !important;
        height: 100% !important;
        object-fit: cover !important;
        object-position: center !important;
        display: block !important;

        margin: 0 !important;
        padding: 0 !important;
        border-radius: 0 !important;
    }

    /* TÍTULO */
    .reparaciones-grid .wp-block-post-title {
        margin: 0 !important;
        padding: 10px 8px 2px !important;

        font-size: 14px !important;
        font-weight: 600 !important;
        line-height: 1.18 !important;
        text-align: center !important;
    }

    .reparaciones-grid .wp-block-post-title a {
        color: #111 !important;
        text-decoration: none !important;
    }
}

/* ROLLOVER / ESTADO ACTIVO */
.reparaciones-grid .wc-block-product {
    transition: all .25s ease;
}

.reparaciones-grid .wc-block-product img {
    transition: all .25s ease;
}

.reparaciones-grid .wc-block-product:hover {
    background: #eaf3ff !important;
    border-color: #087cff !important;
    transform: translateY(-2px);
}

.reparaciones-grid .wc-block-product:hover .wp-block-post-title a {
    color: #087cff !important;
}

.reparaciones-grid .wc-block-product:hover img {
    transform: scale(1.05);
}

@media (max-width: 767px) {

    /* CONTENEDOR */
    .reparaciones-grid {
        width: 100% !important;
        max-width: none !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
        overflow: hidden;
    }

    /* GRID WOO */
    .reparaciones-grid .wc-block-product-template {
        width: 100% !important;
        max-width: none !important;

        margin: 0 !important;
        padding: 0 !important;

        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 10px !important;
    }

    /* ITEMS */
    .reparaciones-grid .wc-block-product {
        width: auto !important;
        min-width: 0 !important;
        max-width: none !important;

        margin: 0 !important;
        box-sizing: border-box !important;
    }
}

/* STICKY HEADER — siempre ancho real del viewport */
#header-grid,
#header-grid.sticky-element-active,
#header-grid.sticky-element-original{
    width:100% !important;
    max-width:none !important;
    left:0 !important;
    right:0 !important;
    box-sizing:border-box !important;
}

#header-grid .header--row,
#header-grid .header--row-inner{
    width:100% !important;
}

/* Productos conectados: imagen + nombre */
.connected-products {
    display: flex;
    flex-wrap: wrap;
    gap: 15px;
}

.connected-products a {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    width: 120px;
    text-decoration: none;
}

/* Mostrar el atributo title debajo de la imagen */
.connected-products a::after {
    content: attr(title);
    display: block;
    margin-top: 8px;
    font-size: 13px;
    font-weight: 600;
    line-height: 1.3;
    color: #333;
}

.connected-products a img {
    width: 100px;
    height: auto;
    object-fit: contain;
}

.connected-products{margin-bottom:20px;}
/* Eliminar línea debajo de Añadir al carrito */
.single-product .summary form.cart {
    border-bottom: none !important;
    box-shadow: none !important;
}

/* Reparar iPhone — Fondo gris UI */
main#content.neve-main {
    background: #fafafa80;
}

.woocommerce-tabs{display:none;}

.cmplz-logo *{border-radius:0!important;}

/* ========================================
   REPARAR IPHONE — REACONDICIONADOS
   ======================================== */

/* 1. Etiqueta después del título */
/* Catálogo de Modelos en Venta */
body.tax-product_cat[class*="term-iphone-"]
h2.woocommerce-loop-product__title::after {
    content: "100% Reacondicionado";
    display: block;
    width: fit-content;
    margin-top: 7px;
    padding: 4px 9px;
    background: #e8f4ed;
    color: #278253;
    border-radius: 5px;
    font-size: 11px;
    font-weight: 600;
    line-height: 1.4;
    letter-spacing: .2px;
}

/* 2. Variaciones: siluetas iPhone */
.cfvsw-shop-container[swatches-attr="attribute_pa_color"]
.cfvsw-swatches-option {
    width: 19px !important;
    height: 32px !important;
    min-width: 19px !important;
    min-height: 32px !important;
    border-radius: 4px !important;
    padding: 2px !important;
    overflow: hidden;
    border: 1px solid #9da3aa !important;
    box-sizing: border-box;
    position: relative;
}

/* Color original de cada variación */
.cfvsw-shop-container[swatches-attr="attribute_pa_color"]
.cfvsw-swatch-inner {
    width: 100% !important;
    height: 100% !important;
    border-radius: 2px !important;
}

/* Detalle superior del teléfono */
.cfvsw-shop-container[swatches-attr="attribute_pa_color"]
.cfvsw-swatches-option::after {
    content: "";
    position: absolute;
    top: 4px;
    left: 50%;
    transform: translateX(-50%);
    width: 7px;
    height: 2px;
    background: rgba(50, 50, 50, .55);
    border-radius: 3px;
    pointer-events: none;
}

/* Separación y alineación */
.cfvsw-shop-container[swatches-attr="attribute_pa_color"] {
    display: flex;
    align-items: center;
    gap: 7px;
}

/* Reacondicionado en productos relacionados */
.single-product
.related.products
li.product[class*="product_cat-iphone-"]
.woocommerce-loop-product__title::after {
    content: "100% Reacondicionado";
    display: block;
    margin-top: 7px;
    padding: 4px 9px;
    background: #e8f4ed;
    color: #278253;
    border-radius: 5px;
    font-size: 11px;
    font-weight: 600;
    line-height: 1.4; text-align:center!important; letter-spacing:0!important; width:auto!important;
}
.rip-buy-box img{border-radius:0!important;}
/* Estado normal: transición */
body form.rip-buy-box-active button.single_add_to_cart_button {
    transition: background-color .3s ease-in-out,
                border-color .3s ease-in-out,
                color .3s ease-in-out !important;
}

/* Hover */
body .rip-buy-box form.cart button.single_add_to_cart_button:not(:disabled):not(.disabled):hover,
body form.rip-buy-box-active button.single_add_to_cart_button:not(:disabled):not(.disabled):hover {
    background: limegreen !important;
    border-color: limegreen !important;
    color: #fff !important;
}

/* REPARAR IPHONE — NAVEGACIÓN SLIDERS */
/* Cómo funciona + Ventajas */

.ri-cf__controls .ri-cf__arrow,
.ri-va__controls .ri-va__arrow {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 0 !important;
    color: #171717 !important;
    background: #fff !important;
    box-shadow: none !important;
    transition: all .2s ease;
}

/* Chevrons estilo iOS */
.ri-cf__arrow::before,
.ri-va__arrow::before {
    content: "";
    display: block;
    width: 20px;
    height: 20px;
    flex-shrink: 0;
    background: currentColor;

    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M15 18L9 12L15 6' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / contain no-repeat;

    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M15 18L9 12L15 6' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / contain no-repeat;
}

/* Chevron derecho */
.ri-cf__arrow[data-next]::before,
.ri-va__arrow[data-next]::before {
    transform: rotate(180deg);
}

/* Hover elegante */
.ri-cf__controls .ri-cf__arrow:hover,
.ri-va__controls .ri-va__arrow:hover {
    background: #f2f5f8 !important;
    border-color: #dce5ed !important;
    color: #0785eb !important;
}

/* Accesibilidad teclado */
.ri-cf__arrow:focus-visible,
.ri-va__arrow:focus-visible {
    background: #f2f5f8 !important;
    color: #0785eb !important;
    outline: 2px solid #0785eb;
    outline-offset: 2px;
}

/* Pulsación */
.ri-cf__arrow:active,
.ri-va__arrow:active {
    background: #e8eef5 !important;
}

/* RI — Flechas sin movimiento en hover */

.ri-cf__arrow,
.ri-va__arrow {
    transition: background-color .2s ease,
                color .2s ease,
                border-color .2s ease !important;
}

/* Chevron izquierdo */
.ri-cf__arrow[data-prev]::before,
.ri-va__arrow[data-prev]::before {
    transform: none !important;
}

/* Chevron derecho */
.ri-cf__arrow[data-next]::before,
.ri-va__arrow[data-next]::before {
    transform: rotate(180deg) !important;
}

/* Sin desplazamientos ni escalados */
.ri-cf__arrow:hover,
.ri-va__arrow:hover,
.ri-cf__arrow:active,
.ri-va__arrow:active {
    transform: none !important;
}

/* Iconos completamente estáticos */
.ri-cf__arrow::before,
.ri-va__arrow::before {
    transition: none !important;
}

/* ==========================================
   REPARAR IPHONE — CONTACTO
   Tarjeta de información + formulario
   ========================================== */

/* 1. TARJETAS */

.Contact-Card-Box,
.Contact-Form-Box {
    background: #fff !important;
    border: 1px solid #e8e8e8 !important;
    border-radius: 7px !important;
    padding: 25px !important;
    box-shadow: 0 4px 18px rgba(0,0,0,.045) !important;
    box-sizing: border-box;
}

/* 2. CONTACT CARD — ESTRUCTURA OTTER */

.Contact-Card-Box > .innerblocks-wrap,
.Contact-Card-Box .wp-block-themeisle-blocks-advanced-column {
    margin: 0 !important;
    padding: 0 !important;
}

/* Eliminar espaciadores */
.Contact-Card-Box .wp-block-spacer {
    display: none !important;
}

/* Filas */
.Contact-Card-Box .wp-block-columns {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: flex-start !important;
    gap: 15px !important;
    margin: 0 0 18px !important;
    padding: 0 !important;
}

.Contact-Card-Box .wp-block-columns:last-child {
    margin-bottom: 0 !important;
}

/* Columna icono */
.Contact-Card-Box .wp-block-columns > .wp-block-column:first-child {
    flex: 0 0 28px !important;
    width: 28px !important;
    min-width: 28px !important;
    margin: 0 !important;
    padding: 2px 0 0 !important;
}

/* Reset iconos Otter */
.Contact-Card-Box .wp-block-themeisle-blocks-font-awesome-icons,
.Contact-Card-Box .wp-block-themeisle-blocks-font-awesome-icons-container {
    display: flex !important;
    align-items: flex-start !important;
    justify-content: center !important;
    width: 100%;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    line-height: 1 !important;
    transform: none !important;
}

/* Iconos negros */
.Contact-Card-Box .wp-block-themeisle-blocks-font-awesome-icons i {
    display: block !important;
    position: static !important;
    font-size: 19px !important;
    line-height: 1.2 !important;
    color: #171717 !important;
    margin: 0 !important;
    padding: 0 !important;
    transform: none !important;
}

/* Columna texto */
.Contact-Card-Box .wp-block-columns > .wp-block-column:last-child {
    flex: 1 1 0 !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* Textos */
.Contact-Card-Box p {
    margin: 0 !important;
    padding: 0 !important;
    line-height: 1.5 !important;
    color: #171717;
}

/* Enlaces */
.Contact-Card-Box a {
    color: #171717 !important;
    text-decoration: none !important;
    transition: color .2s ease;
}

.Contact-Card-Box a:hover {
    color: #0785eb !important;
}

/* 3. FORMULARIO DE CONTACTO — solo ajustes particulares */
.Contact-Form-Box label {
    color: #171717;
    font-weight: 500;
}
.Contact-Form-Box .otter-form-textarea-input {
    min-height: 90px !important;
    height: 90px !important;
    resize: vertical;
}
@media (max-width: 767px) {
    .Contact-Card-Box,
    .Contact-Form-Box { padding: 20px !important; }
    .Contact-Card-Box .wp-block-columns {
        flex-wrap: nowrap !important;
        gap: 12px !important;
        margin-bottom: 16px !important;
    }
    .Contact-Card-Box .wp-block-themeisle-blocks-font-awesome-icons i {
        font-size: 18px !important;
    }
}

/* 4. BOTÓN CONTACTO — flecha y microinteracción */
.Contact-Form-Box button[type="submit"] {
    position: relative;
    background: #0785eb !important;
    color: #fff !important;
    border: 0 !important;
    border-radius: 7px !important;
    padding: 13px 46px 13px 24px !important;
    box-shadow: none !important;
    font-weight: 600;
    cursor: pointer;
    transition: background-color .25s ease !important;
}
.Contact-Form-Box button[type="submit"]:hover {
    background: #066fc4 !important;
}
.Contact-Form-Box button[type="submit"]::after {
    content: "";
    position: absolute;
    right: 18px;
    top: 50%;
    width: 18px;
    height: 18px;
    background: currentColor;
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M4 12h16m-7-7 7 7-7 7' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / contain no-repeat;
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M4 12h16m-7-7 7 7-7 7' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / contain no-repeat;
    transform: translateY(-50%);
    transition: transform .25s ease;
    pointer-events: none;
}
.Contact-Form-Box button[type="submit"]:hover::after {
    transform: translate(3px, -50%);
}
@media (prefers-reduced-motion: reduce) {
    .Contact-Form-Box button[type="submit"],
    .Contact-Form-Box button[type="submit"]::after { transition: none !important; }
}

/* =========================================================
   GLOBAL FORM SYSTEM — Otter, WooCommerce, WordPress
   Solo campos editables; no botones, checks, radios ni WAPF.
========================================================= */
:root {
    --ri-field-bg: #fff;
    --ri-field-active: #f0f8ff;
    --ri-field-text: #171717;
    --ri-field-blue: #0785eb;
    --ri-field-border: #dedede;
    --ri-field-hover: #a8c9e5;
}

body :is(
    input[type="text"], input[type="email"], input[type="tel"],
    input[type="number"], input[type="password"], input[type="search"],
    input[type="url"], input[type="date"], textarea, select
):not(.wapf-input):not(.select2-search__field) {
    background-color: var(--ri-field-bg) !important;
    color: var(--ri-field-text) !important;
    border: 1px solid var(--ri-field-border) !important;
    border-radius: 7px !important;
    box-shadow: none !important;
    transition: background-color .25s ease, border-color .25s ease,
                color .25s ease, box-shadow .25s ease !important;
}

body :is(
    input[type="text"], input[type="email"], input[type="tel"],
    input[type="number"], input[type="password"], input[type="search"],
    input[type="url"], input[type="date"], textarea, select
):not(.wapf-input):not(.select2-search__field):hover:not(:focus) {
    border-color: var(--ri-field-hover) !important;
}

body :is(
    input[type="text"], input[type="email"], input[type="tel"],
    input[type="number"], input[type="password"], input[type="search"],
    input[type="url"], input[type="date"], textarea, select
):not(.wapf-input):not(.select2-search__field):focus {
    background-color: var(--ri-field-active) !important;
    color: var(--ri-field-blue) !important;
    -webkit-text-fill-color: var(--ri-field-blue) !important;
    border-color: var(--ri-field-blue) !important;
    outline: none !important;
    box-shadow: 0 0 0 2px rgba(7,133,235,.12) !important;
}

body :is(input, textarea):focus::placeholder {
    color: #7ba9cc !important;
    -webkit-text-fill-color: #7ba9cc !important;
}

/* WooCommerce Blocks: el foco puede vivir en el wrapper */
body .wc-block-components-text-input:focus-within input,
body .wc-block-components-combobox:focus-within input {
    background-color: var(--ri-field-active) !important;
    color: var(--ri-field-blue) !important;
    -webkit-text-fill-color: var(--ri-field-blue) !important;
    border-color: var(--ri-field-blue) !important;
}

/* Select2 (checkout clásico) */
body .select2-container .select2-selection--single {
    background: var(--ri-field-bg) !important;
    border: 1px solid var(--ri-field-border) !important;
    border-radius: 7px !important;
    box-shadow: none !important;
}
body .select2-container--open .select2-selection--single,
body .select2-container--focus .select2-selection--single {
    background: var(--ri-field-active) !important;
    border-color: var(--ri-field-blue) !important;
}

@media (prefers-reduced-motion: reduce) {
    body :is(input, textarea, select) { transition: none !important; }
}
