:root {
	--color-primary: #000000;
	--color-secondary: #ffffff;
	--color-alt: #0078d6;
	--text-color: #000;
	--gray: #565656;
	--darkgray: #393939;
	--lightgray: #E8E8E8;
	--px: 1rem;
	--py: 3rem;
	--main-font: "MB Corpo S Text", Arial, sans-serif;
	--heading-font: "MB Corpo A Title", Arial, sans-serif;
	--main-bg: #ffffff;
	--header-height: 60px;
	--header-type-2-height: 60px;
	--grid-limit: 1340px;
	--box-shadow: 0 0 10px 2px #ccc;
}

.title, .heading-font {
	font-weight: 400;
}

button, .button, [type="submit"], a.button, .has-buttons a {
	border-radius: 3px;
	color: #ffffff;
	font-weight: 600;
	background-color: var(--color-primary);
	text-align: center;
	justify-content: center;
	padding: 1.2rem 2rem;
	-webkit-font-smoothing: antialiased;
	font-size: 1rem;
	letter-spacing: .5px;
}

a.equipment-block__button,
.equipment-block__button,
.hero-landing__button--outline {
	background-color: transparent;
	color: inherit;
}

body.post-template-template-libre button,
body.post-template-template-libre .button,
body.post-template-template-libre [type="submit"],
body.post-template-template-libre a.button,
body.post-template-template-libre .has-buttons a {
	background-color: var(--color-alt);
	color: #fff;
	padding-block: 1rem;
}


.button.bg-primary {
	background-color: var(--color-primary) !important;
	color: #ffffff !important;
}
@media (min-width: 992px){
	html{
		font-size: .95rem;
	}
	:root {
		--px: 3rem;
		--py: 4rem;
		--header-height: 75px;
		--header-type-2-height: 138px;
	}
}



h1,.h1, .h-lg-1 {
}
h2,.h2 {
}

h3,.h3 {
}

h4,.h4 {
}

h5,.h5 {
}

h6,.h6 {
}

@media (min-width: 992px){
	
	h1,.h1, .h-lg-1 {
	}
	h2,.h2 {
	font-size: 2.8rem;
	}
	
	h3,.h3 {
	font-size: 2.2rem;
	}
	
	h4,.h4 {
	font-size: 2rem;
	}
	
	h5,.h5 {
	font-size: 1.4rem;
	}
	
	h6,.h6 {
	}
	
}
/****************************************************/
/* HERO SECTION  */
/****************************************************/

.hero-section .content > *{
	color: #ffffff;
}
/*
.hero-section .content:after{
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	box-shadow: 0 0 60px 50px #000;
}*/

.hero-section.animated-hero .thumb{
	border-radius: 0;
}
.hero-section .content:after{
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	width: 0;
	height: 0;
	border-left: 0px solid transparent;
	border-right: 26rem solid transparent;
	border-bottom: 14rem solid var(--darkgray);
}
@media (min-width: 992px){
	
	.hero-section .content:after{
		border-left: 0px solid transparent;
		border-right: 60rem solid transparent;
		border-bottom: 12rem solid #000000;
	}
}


/****************************************************/
/* BLOCKS */
/****************************************************/

.presentation .title {
}

@media (min-width: 768px) {
	
	.presentation .title {
		font-size: 3.3rem;
	}
}

.image-text-block{
	box-shadow: 0 0 8px 1px #ccc;
}

.image-text-block .content{
	padding: 1rem 2rem 1rem;
}
.image-text-block .button{
	width: 100%;
}
.img-wrap img{
	border-radius: 0;
}

.image-banners.type1 video.thumb{
	/* Era 350px fijo y el vídeo de la home se veía estrecho. Se sube por tramos:
	   los banners con texto de la home ya usan 550px, así que queda en su línea. */
	max-height: 380px;
}
@media (min-width: 768px) {
	.image-banners.type1 video.thumb{
		max-height: 460px;
	}
}
@media (min-width: 1200px) {
	.image-banners.type1 video.thumb{
		max-height: 560px;
	}
}


/****************************************************/
/* HOME */
/****************************************************/


#home-filters{
	box-shadow: 0 0 13px -1px #ddd;
	margin-block: 2rem;
	padding-bottom: 1rem;
}

#home-filters .title{
	padding-top: 2rem;
	color: var(--color-primary);
}

.trigger-advanced-fields span{
	color: var(--color-primary);
}

#home-filters .search-filter-field--width-100 .search-filter-field__input,
#home-filters .search-filter-field--width-100 .search-filter-label,
#home-filters .search-filter-field--width-100 .search-filter-description {
	background-color: #F1F1F1;
	border: none;
	border-radius: 4px;
}

#home-filters .search-filter-label{
	text-transform: none;
	font-weight: 500;
}
#home-filters .search-filter-component-range-slider{
	color: var(--color-primary);
}

#home-filters .search-filter-field--width-100 .search-filter-field__input,
#home-filters .search-filter-field--width-100 .search-filter-label,
#home-filters .search-filter-field--width-100 .search-filter-description{
	border-radius: 4px;
}

#home-filters  .search-filter-component-combobox__actions-input::placeholder{
}

#home-filters  .search-filter-component-combobox__selection span,
.search-filter-component-combobox .search-filter-component-combobox__listbox-toggle svg{
	color: #000;
	fill: #000;
}
body .search-filter-component-range-slider__range-input-progress{
	--range-color: var(--color-alt);
}

body .search-filter-component-combobox__selection span{
}
body .search-filter-component-combobox .search-filter-component-combobox__actions .search-filter-component-combobox__actions-input{
}
body .search-filter-component-combobox .search-filter-component-combobox__actions .search-filter-component-combobox__actions-input,
body .search-filter-component-combobox .search-filter-component-combobox__actions .search-filter-component-combobox__actions-input::placeholder{
	color: var(--color-primary);
}

body .search-filter-style--control-submit .search-filter-input-button.search-filter-field__input,
body .search-filter-style--control-submit .search-filter-input-button.search-filter-field__input:hover{
	font-size: 0;
	aspect-ratio: 1;
	border-radius: 50%;
	background: var(--color-primary) url(img/svg/icon_lens.svg) no-repeat center center;
	border: none;
	width: 3rem;
	background-size: 50%;
}

body .search-filter-style--control-submit .search-filter-input-button.search-filter-field__input:hover{
	opacity: .8;
}

body .search-filter-style--control-reset .search-filter-input-button.search-filter-field__input{
	-webkit-appearance: none;
	text-decoration: underline;
	padding: 0 1rem;
	border: none;
	font-size: .9rem;
}

body .search-filter-component-combobox-base__listbox-option{
	font-size: 1rem;}
body .search-filter-component-combobox-base__listbox-option--selected{
	background-color: var(--color-primary);
}

.vehicle-title, .vehicles-grid li:not(:has(.button)) .vehicle-title{
	opacity: 1;
	transform: none;
	visibility: visible;
}


@media (min-width: 992px){
		
	#home-filters{
		padding-inline: 3rem;
		position: relative;
		margin-top: -4rem;
		background-color: #FFFFFC;
		color: var(--color-primary);
	}

	
	#custom-submit{
		position: absolute;
		right: 4.8rem;
		bottom: 1.8rem;
	}
	
	.features-list .content .title, body .features-list.type4 .content .title, .features-list.type4 .content .title {
		font-size: 2.4rem;
		min-height: 2lh;
		text-transform: none;
		line-height: 1;
		margin: 0 0 1rem;
	}
}

.features-list.type4 .content .title *{
	color: var(--color-alt)
}


/****************************************************/
/* ARCHIVE VEHICLE */
/****************************************************/

.item-vehicle {
}
.item-vehicle .title  {
	font-family: var(--main-font);
	font-weight: bold;
	font-size: 1.1rem;
}
.item-vehicle .title  .desc {
	text-transform: none;
	font-family: var(--main-font);
	color: var(--gray);
	font-size: 0.8rem;
}
.item-vehicle .button-contado{
	background-color: var(--color-primary) !important;
	color: #ffffff !important;
	padding-inline: 0.4rem;
}
.item-vehicle .button-financiacion{
	background-color: var(--color-alt) !important;
	color: #ffffff !important;
	padding-inline: 0.4rem;
}

.item-vehicle .tag{
	color: #ffffff !important;
	background-color: var(--color-alt);
}

@media (min-width: 992px){
}



/****************************************************/
/* BLOG */
/****************************************************/

.item-post .content .title{
	font-size: 1.3rem;
}
.item-post .content .excerpt{
	font-size: 1rem;
}




/****************************************************/
/* GRAVITY FORMS */
/****************************************************/

#main .form-content input[type="submit"]{
	border-color: var(--color-alt);
}


@media (min-width: 992px){
}



/****************************************************/
/* HEADER & FOOTER */
/****************************************************/

#head.type-2 .bg-darkgray {
	background-color: var(--color-primary) !important;
}


#head.type-2 .actions *{
	font-weight: bold;
}
#head.type-2 .actions .action-favoritos svg * {
		stroke: var(--color-alt);
	}

#head.type-2 .actions .action-favoritos {
	color: var(--color-alt);
}

ul.main-menu > li.current-menu-item > a,
ul.main-menu > li.current-menu-ancestor > a{
	color: var(--color-alt);
}

#footer {
	margin-top: 0rem;
}
#footer .logo{
	width: 19rem;
	display: block;
	margin-inline: auto;
}
#footer .logo img{
	width: 100%;
}

#footer .concesionario{}
#footer .concesionario .h5{
	font-size: 1.7rem;
}

@media (min-width: 992px){
	#head.type-2 .logo {
		width: 15rem;
	}
}


/****************************************************/
/* SINGLE VEHICLE */
/****************************************************/


#info-bar{
	border-radius: 0;
}
#info-bar .title {
}
#info-bar .button {border-color: var(--color-alt) !important;}
#info-bar .h5 {
}

.single-vehicle .content .title{}
.single-vehicle .content .title .h5{
	color: var(--color-alt)
}
.single-vehicle .content .title .vehicle-info{}

@media (min-width: 992px) {
	.single-vehicle .content .title{
		font-size: 2.9rem;
		line-height: 1;
	}
	.single-vehicle .content .title .h5{
	}
	.single-vehicle .content .title .vehicle-info{}
}



/* HERO LANDING */


.hero-landing {
}

.hero-landing__image {
}

@media (min-width: 992px) {
	.hero-landing--completa {
	}
}

.hero-landing .form-content .gfield input[type="text"],
.hero-landing .form-content .gfield input[type="email"],
.hero-landing .form-content .gfield select,
.hero-landing .form-content textarea,
.hero-landing .form-content .gfield textarea.large {
}

@media (min-width: 992px) {
	.hero-landing .form-content {
	}
}

.hero-landing .form-content.form-dark {
}
.hero-landing .form-content.form-dark .gfield_label {
}
.hero-landing .form-content.form-dark .gfield input[type="text"],
.hero-landing .form-content.form-dark .gfield input[type="email"],
.hero-landing .form-content.form-dark .gfield select,
.hero-landing .form-content.form-dark textarea,
.hero-landing .form-content.form-dark .gfield textarea.large {
}
.hero-landing .form-content.form-dark ::placeholder {
}
.hero-landing .form-content.form-dark .gfield_consent_label {
}
.hero-landing .form-content.form-dark .gfield_consent_label:before {
}
.hero-landing .form-content.form-dark .gfield_description {
}
.hero-landing .form-content.form-dark .legal-link a {
}
.hero-landing .form-content.form-dark label a {
}
.hero-landing .form-content.form-dark [aria-invalid=true] + label a {
}


.hero-landing__content {
}
@media (min-width: 992px){
		
	.hero-landing__content {
	}
}

.hero-landing__title {font-size: clamp(2.5rem, 6vw, 4.4rem);}

.hero-landing__intro {
}

.section-eyebrow {
	font-size: clamp(0.8rem, 6vw, 1.1rem);
}
@media (min-width: 992px){
		
	.hero-landing__intro {
	max-width: 100%;
	}
	.value-prop__text{
	}
}

.hero-landing__intro p:last-child {font-size: 1.5rem;font-weight: bold;}

.hero-landing__buttons {
}

.value-props{
}
.value-prop__text p{
}

.hero-landing .hero-landing__button--outline {
}

.hero-landing .hero-landing__button--outline:hover {
}


.hero-landing__discount {
}

.hero-landing__discount-label {font-size: 1.2rem;letter-spacing: 3px;line-height: 1.7;}

.hero-landing__discount-amount {
}

.hero-landing__discount-amount sup {
}
.hero-landing__discount--small .hero-landing__discount-label {
}

.hero-landing__discount--small .hero-landing__discount-amount {
}

.hero-landing__discount--xl .hero-landing__discount-amount {
}

@supports (background-clip: text) and (color: color-mix(in srgb, red, blue)) {
	.hero-landing__discount--xl .hero-landing__discount-amount {
	}
}

.hero-landing__discount--xl .hero-landing__discount-amount sup {
}


.hero-landing__datebox {
}

.hero-landing__datebox-icon {
}

.hero-landing__datebox-icon .icon {
}

.hero-landing__datebox-label {font-size: 0.7rem;}

.hero-landing__datebox-date {font-size: 1.2rem;}

.hero-landing .hero-landing__title--light-wide,
.hero-landing .hero-landing__eyebrow--light-wide {
}

.hero-landing .hero-landing__title--wide,
.hero-landing .hero-landing__eyebrow--wide {
}

.hero-landing .hero-landing__title--bold-wide,
.hero-landing .hero-landing__eyebrow--bold-wide {font-size: 3.2rem;}

.hero-landing .hero-landing__title--bold-tight,
.hero-landing .hero-landing__eyebrow--bold-tight {
}

.hero-landing__mobile-bar {
}

.hero-landing__mobile-bar.is-visible {
}

.hero-landing__mobile-bar-btn {
}
.hero-landing__mobile-bar .hero-landing__button--outline {
}

.hero-landing__mobile-bar .hero-landing__button--outline:hover,
.hero-landing__mobile-bar .hero-landing__button--outline:focus {
}

.hero-landing__logo {
}

@media (min-width: 992px) {
	.hero-landing__mobile-bar {}

	.hero-landing__logo {
	}
}


.hero-landing__logo svg,
.hero-landing__logo-img {
}

.hero-landing__header {
}

.hero-landing__header .hero-landing__logo {
}

.hero-landing__logo--header-center,
.hero-landing__logo--header-right {
}

.hero-landing__logo--header-center {
}

.hero-landing__logo--header-right {
}

.hero-landing__logo--over-form {
}
@media (max-width: 991.98px) {
	}
	.hero-landing__text-col .hero-landing__content {
	}
	.hero-landing__text-col--gradient::after {
	}
	.hero-landing__text-col--gradient .hero-landing__content {
	}
}


/* >>> landings-modulares (generado, no editar a mano) */
/****************************************************/
/* LANDINGS MODULARES (plantilla Ã‚Â«Libre (bloques)Ã‚Â») */
/****************************************************/

/* Bloque agnostico de marca: se pega tal cual al final del brand.css de cualquier
   sitio. Todo sale de --color-primary / --color-alt / --lightgray, que cada marca
   define en su :root y en la pagina de opciones, asi que no hay colores fijos.

   Dos esquemas conviven y se eligen por landing en Ã‚Â«Opciones de landingÃ‚Â»
   (landing_bg_color / landing_text_color, que functions.php vuelca al <body>):

	 Ã‚Â· CLARO  Ã¢â€ â€™ sin color de fondo. Fondo blanco, texto var(--text-color).
	 Ã‚Â· OSCURO Ã¢â€ â€™ landing_bg_color: primary + landing_text_color: white.
				El <body> queda .bg-primary.text-white.

   Regla de contraste: --color-alt suele ser un tono claro de marca. Se usa como
   FONDO con texto en --color-primary, o como texto/icono sobre el primario
   oscuro. Nunca como color de texto sobre fondo claro. */

:root {
	/* Superficie translucida y halo del esquema oscuro. */
	--landing-panel: color-mix(in srgb, var(--color-primary) 70%, transparent);
	--landing-glow: color-mix(in srgb, var(--color-alt) 22%, transparent);
}


/* ---------------- Comun a los dos esquemas ---------------- */

/* Envio del formulario de Gravity Forms dentro de la landing. */
.post-template-template-libre .form-content input[type="submit"],
.page-template-template-libre .form-content input[type="submit"] {
	width: 100%;
	background-color: var(--color-alt);
	color: var(--color-primary);
	border: none;
	padding-block: 1.2rem;
	text-transform: uppercase;
	letter-spacing: 0.03em;
	font-weight: 700;
}

.post-template-template-libre .features-list.type4 .content .title {
	letter-spacing: 0.04em;
}

.post-template-template-libre .vehicle-card {
	border-radius: 0.9rem;
	overflow: hidden;
}


/* ---------------- Esquema CLARO ---------------- */

/* Panel de contacto. Ojo: contact-block.php coloca .wrap.grid-limit FUERA del
   wrapper del bloque, asi que este panel nunca sangra a todo el ancho: se
   estiliza como tarjeta y el bg-* del bloque apenas se ve. */
.post-template-template-libre .contact-block__grid {
	border-radius: 0.9rem;
	padding-block: 2.5rem;
}


/* ---------------- Esquema OSCURO (body.bg-primary) ---------------- */

/* Los features-block se guardan con text_color: primary, que sobre el fondo
   primario seria invisible: aqui pasan a blanco. */
body.bg-primary.post-template-template-libre .text-primary,
body.bg-primary.post-template-template-libre .text-primary a {
	color: #ffffff !important;
}

/* El icono de la barra type4 es una mascara CSS que hereda currentColor; sobre
   el fondo oscuro pasa al color de acento, que ahi si tiene contraste. */
body.bg-primary.post-template-template-libre .features-list.type4 .icon {
	background-color: var(--color-alt);
}

/* Superficies translucidas con halo: propuestas con borde, tarjetas de vehiculo
   (listado y manuales) y panel de contacto. */
body.bg-primary.post-template-template-libre .features-list.type4.features-list--bordered,
body.bg-primary.post-template-template-libre .item-vehicle .content,
body.bg-primary.post-template-template-libre .vehicle-card,
body.bg-primary.post-template-template-libre .contact-block__grid {
	background-color: var(--landing-panel) !important;
	border: none;
	border-radius: 0.9rem;
	box-shadow: 0 0 1.7rem 0.3rem var(--landing-glow);
}
body.bg-primary.post-template-template-libre .features-list.type4.features-list--bordered {
	padding-block: 2.4rem 1.6rem;
	margin-block: 0;
}
body.bg-primary.post-template-template-libre .features-list.type4.features-list--bordered > * {
	border: none;
}
@media (max-width: 991px) {
	body.bg-primary.post-template-template-libre .features-list.type4.features-list--bordered > * {
		padding-block: 0;
	}
}

/* Formulario en variante oscura sobre el fondo primario: se separa con el gris
   mas oscuro de la paleta para que no se funda con el body. */
body.bg-primary.post-template-template-libre #main .form-content.form-dark {
	background: var(--darkgray);
	color: #ffffff;
}

body.bg-primary.post-template-template-libre .contact-block__eyebrow {
	color: var(--color-alt);
}

/* Tarjetas de vehiculo del listado: precios y CTA legibles sobre el fondo oscuro. */
body.bg-primary.post-template-template-libre .price-pair__new {
	color: #ffffff !important;
}
body.bg-primary.post-template-template-libre .item-vehicle .button-contado {
	border-color: var(--color-alt) !important;
	color: #ffffff !important;
	padding-block: 0.8rem;
}
body.bg-primary.post-template-template-libre .item-vehicle .extras img {
	filter: invert(1);
}

/* Tarjetas de vehiculo manuales. */
body.bg-primary.post-template-template-libre .vehicle-card__price-amount {
	color: var(--color-alt);
}
body.bg-primary.post-template-template-libre .vehicle-card__highlight {
	border-color: var(--color-alt);
	color: var(--color-alt);
}
/* <<< landings-modulares */

body .form-content .gform_button, body .form-content .gform-button {
	border: none !important;
	background-color: var(--color-alt) !important;
}
/****************************************************/
/* AJUSTES PEDIDOS POR EL CLIENTE (16-sep-2026)     */
/****************************************************/

/* El vídeo de la home se quedaba estrecho: `.image-banners .thumb` le da
   min-height: 220px (style.css), que es la altura de un banner pequeño. Los
   banners con texto de la home ya usan 550px, así que se sube a una altura
   parecida y escalonada. Solo afecta a vídeos: los banners de imagen de la
   home siguen igual. */
body.home .image-banners .banner video.thumb {
	min-height: 320px;
	object-fit: cover;
}
@media (min-width: 768px) {
	body.home .image-banners .banner video.thumb {
		min-height: 440px;
	}
}
@media (min-width: 1600px) {
	body.home .image-banners .banner video.thumb {
		min-height: 540px;
	}
}

/* El banner del Plan MOVES III se quitó del contenido de la home, no por CSS:
   las dos imágenes (MOVES y Plan de Recuperación) colgaban del mismo enlace a
   idae.es, así que ocultar el <a> se habría llevado también la que se queda. */

/* Historia (/quienes-somos/): las cuatro fotos de las sedes vienen con tamaños
   distintos (500x500, 412x412, 851x532) y se veían desiguales. Se les fija una
   proporción común y se recortan con cover para que no se deformen.
   Acotado a .type2, que es la variante de esa página: en contacto el bloque es
   .type1 y se queda como está. */
.concesionarios.type2 .concesionario > .thumb {
	aspect-ratio: 4 / 3;
	object-fit: cover;
	object-position: center;
	width: 100%;
	height: auto;
}
