/* 
Theme Name: Hello Elementor Child
Theme URI: https://github.com/elementor/hello-theme-child/
Description: Hello Elementor Child is a child theme of Hello Elementor, created by Elementor team
Author: Elementor Team
Author URI: https://elementor.com/
Template: hello-elementor
Version: 2.0.0
Text Domain: hello-elementor-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/

/* Add your custom styles here */

b, strong {font-weight: 600 !important;}
.elementor-widget-text-editor ul {
	margin-block-end: .9rem;
    list-style: none;
	padding-left:0 !important
}

.elementor-widget-text-editor ul li::before {
    content: "●";
    color: var( --e-global-color-accent );
    font-size: 1.4em;
    margin-right: 0.5em;
}

.text-yellow{color:var( --e-global-color-accent )}
.text-green{color:var( --e-global-color-secondary )}

.feature-link {
    font-weight: 600;
    color: var(--e-global-color-secondary);
}

.feature-link::after {
    font-weight: 600;
    color: var(--e-global-color-secondary);
}

.icon-faqs {
	width:17px;
	margin-right:7px;
	margin-bottom:-2px
}

/*Valoraciones*/

.ti-widget.ti-goog .ti-review-item.source-Google>.ti-inner, .ti-widget.ti-goog .ti-load-more-reviews-container .ti-load-more-reviews-button {
    border: 1px solid var(--e-global-color-secondary) !important;
    border-radius: 10px !important;
}
.ti-widget.ti-goog .ti-controls .ti-next:before, .ti-widget.ti-goog .ti-controls .ti-prev:before {border-color: var(--e-global-color-secondary) !important;}



/*Listado talleres sin ubicación*/
ul.list-talleres-not-location li::before {
    content: none !important;
    margin: 0 !important;
}
ul.list-talleres-not-location li {
    background: #1C7C5415;
    margin: 7px;
    padding: 7px 21px;
    border: 1px solid var(--e-global-color-secondary);
    white-space: nowrap;
    border-radius: 15px;
    display: inline-block; 
	font-size: 12px;
}
ul.list-talleres-not-location li:hover  { background: #1C7C54;}
ul.list-talleres-not-location li a {color: var(--e-global-color-secondary);}
ul.list-talleres-not-location li:hover a {color: var(--e-global-color-f1268a8);}
@media (max-width: 767px) {
  ul.list-talleres-not-location li {
    margin: 4px;
    padding: 5px 18px;
  }
    .last-tip-ecotasa .elementor-icon-box-content{
        position: relative;
        top: -10px;
    }
}


/*Tabla precios*/
 .table-wrapper {
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    margin-bottom: 2rem;
  }

  .table-prices-services {
    width: 100%;
    min-width: 800px; /* fuerza el scroll en pantallas pequeñas */
    border-collapse: collapse;
  }

  .table-prices-services th,
  .table-prices-services td {
    border: 1px solid #ddd;
    padding: 10px;
    text-align: left;
    font-size: 16px;
    white-space: nowrap;
  }

  .table-prices-services th {
    background-color: #f4f4f4;
    font-weight: bold;
  }
  @media (max-width: 768px) {
	  .table-prices-services {min-width: 590px;}
    .table-prices-services th,
    .table-prices-services td {
      font-size: 12px;
    }

    .table-prices-services td:nth-child(1),
    .table-prices-services td:nth-child(3) {
      max-width: 130px;
      width: 130px;
      white-space: normal;
      word-break: break-word;
    }
	  .table-prices-services td:nth-child(2),
    .table-prices-services td:nth-child(4) {
      max-width: 30px;
      width: 30px;
      white-space: nowrap;
      text-align: right;
    }
  }

/*Migas de pan*/
.rank-math-breadcrumb a {
    text-decoration: underline;
    color: var( --e-global-color-secondary );
}
.rank-math-breadcrumb .last {
    font-weight: 500;
}


/*** Clase enlaces con flecha ***/
a.feature-link{
    animation: all 0.4s;
}
a.feature-link:hover{
    color: var( --e-global-color-secondary );
}
a.feature-link:after {
    content: "";
    display: inline-block;
    width: 20px;
    height: 20px;
    background: url('/wp-content/uploads/2025/07/arrow_down.svg');
    background-size: cover;
    background-repeat: no-repeat;
    transform: rotate(270deg);
    position: relative;
    top: 5px;
    left: 3px;
}
.no_data_messg {
    background: var( --e-global-color-accent );
    color: white;
    padding: 1rem;
    border-radius: 10px;
    max-width: 800px;
    margin: -30px auto;
}
ul.list-talleres-not-location {
    padding-left: 0;
}
span.price_neumat {
    font-size: 40px;
    font-weight: 500;
    color: var(--e-global-color-secondary);
}
h6.mt-4 {
    margin-top: 15px;
}
.btn_sol_cita_neumaticos, .btn_sol_cita_neumaticos a.elementor-button.elementor-button-link.elementor-size-sm{
    width: 100% !important;
}

/**** Tabla consumo, ruido.. neumáticos **/
.eu-tyre-label {
    display: grid;
    grid-template-columns: repeat(3,minmax(0,1fr));
    gap: 16px;
    align-items: stretch;
    font-family: inherit;
    max-width: 300px;
}
.eu-tyre-card{display:flex;gap:12px;align-items:end}
.eu-tyre-card .ico{flex:0 0 auto;width:28px;height:28px}
.eu-tyre-card .meta{flex:1 1 auto}
.eu-tyre-card .meta .k {
    font-size: 10px;
    letter-spacing: .02em;
    color: #6B7280;
    text-transform: uppercase;
}
.eu-tyre-card .meta .v{display:flex;align-items:center;gap:8px;margin-top:2px}
.eu-badge{min-width:28px;height:28px;border-radius:6px;display:grid;place-items:center;font-weight:700;color:#111;padding:0 6px}
.eu-dB{font-weight:700}
.eu-note{font-size:11px;color:#9CA3AF;margin-top:2px}
/* A-E backgrounds */
.grade-A{background:#28a745;color:#fff}
.grade-B{background:#8BC34A}
.grade-C{background:#FFEB3B}
.grade-D{background:#FFA000}
.grade-E{background:#F44336;color:#fff}
.grade-EMPTY{background:#E0E0E0;color:#333}

/**** TABLA COMPLETA ESPECIFICACIONES *^****/

.eu-specs-full{width:100%;border-collapse:separate;border-spacing:0;font-family:inherit;background:white;font-size:14px;}
.eu-specs-full th,.eu-specs-full td{padding:15px;vertical-align:top}
.eu-specs-full th {
    width: 310px;
    border-radius: 0;
    text-align: left;
    font-weight: 600;
    color: #333;
    border: 1px solid #e6eaef;
    border-radius:  10px 0 0 10px;
}
.eu-specs-full td{background:#fff;border:1px solid #e6eaef;border-left:none;border-radius:0 10px 10px 0;color:#333}
@media (max-width:680px){
    .eu-specs-full th{
        width:46%}
    .eu-specs-full td{
        font-size:1em
    }
    .beton_ver_modelo a.elementor-button.elementor-button-link.elementor-size-sm{
        width: 100%;
    }
}
table.eu-specs-full tbody>tr:nth-child(odd)>td, table.eu-specs-full tbody>tr:nth-child(odd)>th{
    background: white;
}




/**** BUSCADOR NEUMÁTICOS ****/
.tb-tyre-search{
    font-family: system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
    background: var(--e-global-color-76fb30b);
    border: 1px solid var(--e-global-color-76fb30b);
    border-radius: 10px;
    padding: 18px;
    box-shadow: 0 8px 20px rgba(0,0,0,.05);
    color: var(--e-global-color-text);
}
.tb-tyre-search__header {
    display: flex;
    align-items: center;
    gap: .6rem;
    justify-content: center;
    font-size: 1.05rem;
    font-weight: 700;
    color: var(--e-global-color-text);
    padding-bottom: .6rem;
    margin-bottom: 1rem;
}
.tb-icon{font-size:1.2rem}

/* Grid de 9 columnas: 2 + 1 + 1 + 1 + 1 + 1 + 2 = 9 */
.tb-grid{
    display:grid;
    grid-template-columns: repeat(9, minmax(0,1fr));
    gap:12px;
    align-items:end; /* todos en una fila */
}
.tb-span-2{grid-column: span 2}

.tb-field{display:flex; flex-direction:column; gap:6px}
.tb-field label{
    font-size:.8rem; font-weight:700; color:#374151; letter-spacing:.02em;
}

/* Select con flecha personalizada (triángulo invertido) */
.tb-select{
    appearance:none;
    padding:.65rem 2.4rem .65rem .9rem;
    border:1px solid var(--e-global-color-76fb30b);
    border-radius:8px;
    background:#fff;
    color:#111;
    line-height:1.2;
    transition: border-color .2s, box-shadow .2s;
    background-image:
        url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24'%3E%3Cpath fill='%23f97316' d='M7 10l5 5 5-5z'/%3E%3C/svg%3E");
    background-repeat:no-repeat;
    background-position: right .8rem center;
    background-size: 14px 14px;
}
.tb-select:focus{
    outline:none; border-color: var(--e-global-color-secondary);
    box-shadow: 0 0 0 3px rgba(22,163,74,.15);
}

/* Checkboxes centrados y simples */
.tb-flags{
    display:flex; flex-wrap:wrap; gap:10px 16px;
    justify-content:center;
    margin-top:14px;
}
.tb-check{
    display:inline-flex; align-items:center; gap:.5rem;
    font-size:.95rem; color:#1f2937;
    cursor:pointer; user-select:none;
}
.tb-check input{
    width:18px; height:18px;
    accent-color: var(--e-global-color-secondary);
}
.tb-check span{
    line-height:1;
}

.tb-actions{
    display:flex; justify-content:center; margin-top:16px;
}
.tb-btn{
    background: linear-gradient(90deg, var(--e-global-color-secondary), var(--e-global-color-accent));
    color:#fff; border:0; border-radius:10px;
    padding:.9rem 2.2rem; font-weight:800; letter-spacing:.04em;
    text-transform:uppercase;
    box-shadow: 0 6px 14px rgba(249,115,22,.25);
    cursor:pointer; transition: transform .08s ease, box-shadow .2s ease;
}
.tb-btn:hover{box-shadow: 0 10px 22px rgba(22,163,74,.25)}
.tb-btn:active{transform: translateY(1px)}

/* Responsive: colapsa en filas en pantallas pequeñas */
@media (max-width: 1100px){
    .tb-grid{grid-template-columns: repeat(3, minmax(0,1fr))}
    .tb-span-2{grid-column: span 3}
}
@media (max-width: 640px){
    .tb-grid{grid-template-columns: 1fr}
    .tb-span-2{grid-column: span 1}
    .tb-actions{justify-content:stretch}
    .tb-btn{width:100%}
}
h2.titl_buscad_neum {
    font-size: 20px;
    text-align: center;
}
span.socios-label {
    color: var(--e-global-color-secondary);
    font-size: 18px;
    margin-right: 5px;
}
.price-no-socios-wrapper{
    text-align: center;
}
span.no-socios-price {
    font-weight: bold;
    font-size: 16px;
    text-align: center;
}






/*HEADER*/
header .elementor-sticky--active {box-shadow:0px 13px 23px 0px rgba(0, 0, 0, 0.1)}
li.mega-menu-icono {
    background-repeat: no-repeat !important;
    background-size: 25px !important;
}
li.mega-menu-icono.freno {background-image: url('/wp-content/uploads/2025/06/disco-del-freno.svg') !important;}
li.mega-menu-icono.bateria {background-image: url('/wp-content/uploads/2025/06/bateria.svg') !important;}
li.mega-menu-icono.motor {background-image: url('/wp-content/uploads/2025/06/turbo.svg') !important;}
li.mega-menu-icono.suspension {background-image: url('/wp-content/uploads/2025/07/amortiguador-1.svg') !important;}
li.mega-menu-icono.general {background-image: url('/wp-content/uploads/2025/06/herramienta.svg') !important;}

@media (max-width: 768px){
	#mega-menu-wrap-menu-1 #mega-menu-menu-1 > li.mega-menu-megamenu > ul.mega-sub-menu, #mega-menu-wrap-menu-1 #mega-menu-menu-1 > li.mega-menu-flyout ul.mega-sub-menu, #mega-menu-wrap-menu-1 #mega-menu-menu-1 > li.mega-menu-flyout ul.mega-sub-menu li.mega-menu-item a.mega-menu-link {background:rgb(251,251,251) !important; box-shadow: none !important}
	#mega-menu-wrap-menu-1 #mega-menu-menu-1 li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-row .mega-menu-column > ul.mega-sub-menu > li.mega-menu-item
	{padding: 0 0 20px 25px !important}
	#mega-menu-wrap-menu-1 #mega-menu-menu-1 > li.mega-menu-flyout ul.mega-sub-menu {padding: 10px 0 !important}
	#mega-menu-wrap-menu-1 #mega-menu-menu-1 > li.mega-menu-item > a.mega-menu-link {font-size:15px !important;}
	#mega-menu-wrap-menu-1 #mega-menu-menu-1 > li.mega-menu-megamenu > ul.mega-sub-menu li.mega-menu-column > ul.mega-sub-menu > li.mega-menu-item > a.mega-menu-link {font-size:13px !important}
	#mega-menu-wrap-menu-1 #mega-menu-menu-1 > li.mega-menu-megamenu > ul.mega-sub-menu li.mega-menu-column > ul.mega-sub-menu > li.mega-menu-item li.mega-menu-item > a.mega-menu-link, #mega-menu-wrap-menu-1 #mega-menu-menu-1 > li.mega-menu-flyout ul.mega-sub-menu li.mega-menu-item a.mega-menu-link {font-size:12px !important}
	li.mega-menu-icono {background-size: 20px !important;}

	 #mega-menu-wrap-menu-1 #mega-menu-menu-1{
		height: 100dvh !important;           /* altura real del viewport en móviles */
		max-height: 100dvh !important;
		overflow: auto;           /* scroll interno si el móvil es pequeño */
		-webkit-overflow-scrolling: touch;
	}
}
.item-neumaticos-result img.marca-logo {
    max-width: 100px;
    height: auto;
}
.item-neumaticos-result .eu-tyre-card{
    gap: 6px;
}
.item-neumaticos-result .eu-tyre-card .meta .k {
    display: none;
}
.item-neumaticos-result .eu-tyre-card .ico {
    width: 20px;
    height: 20px;
    position: relative;
    top: -3px;
}
.item-neumaticos-result .eu-tyre-card:last-child .v {
    position: relative;
    top: -2px;
}
.item-neumaticos-result .eu-tyre-label{
    gap: 0px;
}
.item-neumaticos-result .ref_val_mt p{
    margin-bottom: 0;
}
.caract_neum .elementor-widget-container{
    max-width: 100%;
}
.item-neumaticos-result .eu-badge {
    min-width: 24px;
    height: 24px;
    border-radius: 4px;
}
.caract_especiales_neum {
    display: flex;
    justify-content: start;
    align-items: start;
    gap: 5px;
    margin-left: 30px;
}

/* --- Estilos para Shortcode EU Tyre Label --- */

/* Contenedor del icono (para posicionar el tooltip) */
.caract_especiales_neum .caract-item {
    position: relative; 
    display: inline-block;
    margin: 0 2px; /* Espaciado entre iconos */
}

/* Estilo común para todos los iconos (SVG e IMG) */
.caract-item .ico {
    width: 27px;
    height: 27px;
    vertical-align: middle;
}

/* CSS para el Sprite de Estaciones */
.caract-item .ico-sprite {
    display: inline-block;
    background-image: url('/wp-content/plugins/tyre-search-advanced/public/img/seasons.png');
    background-repeat: no-repeat;
    background-size: 96px 32px; 
}

/* Posiciones del sprite (Icono1, Icono2, Icono3) */
.caract-item .ico-all-season { background-position: 0 0; }
.caract-item .ico-verano { background-position: -32px 0; } /* Mover 32px a la izq */
.caract-item .ico-invierno { background-position: -64px 0; } /* Mover 64px a la izq */


/* --- CSS para el Tooltip Personalizado --- */
.caract_especiales_neum .caract-tooltip {
    display: none; /* Oculto por defecto */
    position: absolute;
    bottom: 120%; /* Posición encima del icono */
    left: 50%;
    transform: translateX(-50%);
    background-color: #2b2b2b; /* Color oscuro como en la captura */
    color: #ffffff;
    padding: 10px 15px;
    border-radius: 6px;
    font-size: 13px;
    line-height: 1.5;
    width: 240px; /* Ancho fijo */
    z-index: 10;
    text-align: left;
    box-shadow: 0 3px 8px rgba(0,0,0,0.3);
    pointer-events: none; /* Para que no interfiera con el hover */
}

/* Flecha del tooltip */
.caract_especiales_neum .caract-tooltip::after {
    content: '';
    position: absolute;
    top: 100%;
    left: 50%;
    margin-left: -6px;
    border-width: 6px;
    border-style: solid;
    border-color: #2b2b2b transparent transparent transparent;
}

.caract_especiales_neum .caract-tooltip strong {
    display: block;
    font-weight: 700; 
    margin-bottom: 5px;
    color: #fff;
}

.caract_especiales_neum .caract-tooltip span {
    color: #e0e0e0; /* Un gris claro para el texto */
}

/* Mostrar en hover */
.caract_especiales_neum .caract-item:hover .caract-tooltip {
    display: block; 
}

/**** ALGUNAS CLASES DE BOOTSTRAP *****/
.d-flex{display: flex;}
.justify-content-center{justify-content: center;}
.align-items-center{align-items: center;}


img.etiqueta-neumatico-europeo {
    max-width: 220px;
    margin-top: 45px;
}
@media (max-width:992px){
    img.marca-logo {
        max-width: 70%;
        margin: 0 auto;
    }
}
img.marca-logo {
    max-width: 120px;
    margin: 0 auto;
}

.tire-price-container-listado {
    text-align: left;
}
.tire-price-container-listado span.socios-label {
    color: var(--e-global-color-secondary);
    font-size: 14px;
    margin-right: 5px;
}
.tire-price-container-listado span.price_neumat {
    font-size: 23px;
    font-weight: 500;
    color: var(--e-global-color-secondary);
}
.tire-price-container-listado span.no-socios-label {
    font-size: 12px;
    font-weight: lighter;
}
.tire-price-container-listado span.no-socios-price {
    font-weight: bold;
    font-size: 15px;
    text-align: center;
}
.tire-price-container-listado .price-no-socios-wrapper{
    margin-top: 5px;
    margin-bottom: 15px ;
    color: #333;
}
/*Form GF*/
.gform_required_legend {display:none}
.gform-theme--api, .gform-theme--framework {
	--gf-field-pg-prog-bar-bg-color-blue: #1C7C54 !important;
	
}
#gform_wrapper_1[data-form-index="0"].gform-theme, [data-parent-form="1_0"], #gform_wrapper_3[data-form-index="0"].gform-theme, [data-parent-form="3_0"] {
    --gf-color-primary: #1C7C54 !important;
	--gf-color-in-ctrl-primary: #1C7C54 !important;
	--gf-color-in-ctrl-primary: #1C7C54 !important;
	--gf-color-primary-rgb: 28, 124, 84 !important;
}
.gform-theme--framework .gform-field-label--type-sub:where(:not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)) {
    --gf-local-color: var(--gf-ctrl-label-color-primary) !important;
    font-weight: 500;
}
#gform_1 legend {
    font-size: 20px;
    margin-bottom: 17px;
}
textarea, .gform-theme--framework select {
    font-family: "Poppins", Sans-serif;
    font-weight: 300;
    border-style: solid;
    border-width: 1px 1px 1px 1px;
    border-color: var(--e-global-color-secondary) !important;
    border-radius: 10px 10px 10px 10px !important;
}
.list-data {
  width: 95%;
  display: inline-block;
}
.list-price {
  float: right;
  color: #707070 !important;
}
.list-address {
    color: #707070;
    font-weight: 300;
}
.list-address a {text-decoration:underline}
ul.resul-form-cita-neu li ul {margin-left: 20px;margin-bottom:0}
ul.resul-form-cita-neu li ul li::before {color: var(--e-global-color-primary);}
.gform_next_button, .gform_previous_button {
    font-size: 14px !important;
    font-weight: 500  !important;
    border-radius: 8px  !important;
    padding: 15px 25px 15px 25px  !important;
}
.gform_next_button:hover {background-color: #26A671  !important;}
#gform_submit_button_1, #gform_submit_button_3 {
    background-color: var(--e-global-color-accent);
    font-size: 14px;
    font-weight: 500;
    color: var(--e-global-color-primary);
    border-radius: 8px 8px 8px 8px;
    padding: 15px 25px 15px 25px;
}
#gform_submit_button_1:hover, #gform_submit_button_3:hover {
	background-color: #FFD333;
	color:#fff;
}
#gform_submit_button_3 {
  width: 100% !important;
}
.gform-page-footer {float:right}
.gform-theme--foundation .gform_footer, .gform-theme--foundation .gform_page_footer{
    margin-top: 50px !important;
}
#select2-tsa_marca-container{
    cursor: pointer;
    margin-bottom: 0;
}

.gform-theme--foundation #gform_fields_3.gform_fields {row-gap: 25px !important;}