/**
* Zeeker
*/

@font-face {
	font-family: "Zeekr Headline";
	src:
		url("../fonts/ZeekrHeadline-Regular.woff2") format("woff2"),
		url("../fonts/ZeekrHeadline-Regular.woff") format("woff");
	font-weight: normal;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: "Zeekr Text";
	src:
		url("../fonts/ZeekrText-Medium.woff2") format("woff2"),
		url("../fonts/ZeekrText-Medium.woff") format("woff");
	font-weight: 500;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: "Zeekr Text";
	src:
		url("../fonts/ZeekrText-Regular.woff2") format("woff2"),
		url("../fonts/ZeekrText-Regular.woff") format("woff");
	font-weight: normal;
	font-style: normal;
	font-display: swap;
}
:root {
	--bs-body-font-family: "Zeekr Text";
	--bs-primary: #ffffff;
	/*--bs-primary: #fff4e2;*/
	--bs-primary-100: #ebebeb;
	--bs-secondary: #ff5841;
	--bs-secondary-100: #ff7a62;
	--bs-black-100: #121215;
	--bs-beige: #f1efeb;
	--bs-beige-100: #efece9;
	--bs-beige-200: #f5f5f5;
	--bs-white-100: #fcfcfb;
	--bs-gray: #939393;
	--bs-gray-100: #666;
	--font-headline: "Zeekr Headline";
}
.font-base {
	font-family: var(--bs-body-font-family);
}
.text-primary {
	color: var(--bs-primary) !important;
}
.text-secondary {
	color: var(--bs-secondary) !important;
}
.text-black-100 {
	color: var(--bs-black-100) !important;
}
.text-beige {
	color: var(--bs-beige) !important;
}
.text-beige-100 {
	color: var(--bs-beige-100) !important;
}
.text-beige-200 {
	color: var(--bs-beige-200) !important;
}
.text-white-100 {
	color: var(--bs-white-100) !important;
}
.text-gray {
	color: var(--bs-gray) !important;
}
.text-gray-100 {
	color: var(--bs-gray-100) !important;
}
.bg-primary {
	background-color: var(--bs-primary) !important;
}
.bg-secondary {
	background-color: var(--bs-secondary) !important;
}
.bg-black-100 {
	background-color: var(--bs-black-100) !important;
}
.bg-beige {
	background-color: var(--bs-beige) !important;
}
.bg-beige-100 {
	background-color: var(--bs-beige-100) !important;
}
.bg-beige-200 {
	background-color: var(--bs-beige-200) !important;
}
.bg-white-100 {
	background-color: var(--bs-white-100) !important;
}
.bg-gray {
	background-color: var(--bs-gray) !important;
}
.bg-gray-100 {
	background-color: var(--bs-gray-100) !important;
}
.border-gray {
	border-color: var(--bs-beige-100) !important;
}
.border-secondary {
	border-color: var(--bs-secondary) !important;
}
.offcanvas.offcanvas-top {
	height: 100vh;
	max-height: 100vh;
}
@media only screen and (min-width: 992px) {
	.offcanvas.offcanvas-top {
		height: auto;
		max-height: max-content;
	}
}
body {
	font-family: var(--bs-body-font-family);
	line-height: 1.3;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}
.h1,
.h2,
.h3,
.h4,
.h5,
.h6,
h1,
h2,
h3,
h4,
h5,
h6 {
	font-family: var(--font-headline);
	font-weight: 400;
}
.btn-primary,
.btn-secondary,
.btn-black,
.btn-white {
	min-width: 200px;
	padding: 0.8rem 2rem !important;
	font-family: var(--bs-body-font-family);
}
.btn-primary {
	color: var(--bs-primary) !important;
	border-color: var(--bs-secondary) !important;
	background-color: var(--bs-secondary) !important;
}
.btn-primary:hover {
	border-color: var(--bs-secondary-100) !important;
	background-color: var(--bs-secondary-100) !important;
}
.btn-secondary {
	color: var(--bs-black) !important;
	border-color: var(--bs-primary) !important;
	background-color: var(--bs-primary) !important;
}
.btn-secondary:hover {
	border-color: var(--bs-primary-100) !important;
	background-color: var(--bs-primary-100) !important;
}
.btn-black {
	color: var(--bs-primary) !important;
	background-color: var(--bs-black) !important;
}
.btn-black:hover {
	border-color: var(--bs-gray-100) !important;
	background-color: var(--bs-gray-100) !important;
}
.btn-white {
	color: var(--bs-black) !important;
	border-color: var(--bs-black) !important;
}
.btn-white:hover {
	color: var(--bs-primary) !important;
	background-color: var(--bs-black) !important;
}
/* Header */
header {
	transition: background-color 0.9s ease;
}
.zeeker-header--scrolled {
	background-color: #ebebeb;
}
.zeeker-header--scrolled .customHeader__menu a,
.zeeker-header--scrolled .customHeader__menu button {
	color: var(--bs-black) !important;
}
.zeeker-header--scrolled .customHeader__favicon-scrolled {
	opacity: 1 !important;
}
.zeeker-header--scrolled .customHeader__favicon {
	opacity: 0 !important;
}
.zeeker-header--scrolled .customHeader__logo-scrolled {
	opacity: 1 !important;
}
.zeeker-header--scrolled .customHeader__logo {
	opacity: 0 !important;
}
/* Slider */
#zeeker-slider-1 h1,
#zeeker-slider-1 h2 {
	font-size: calc(1.525rem + 3.3vw);
}

#zeeker-slider-1 h3,
#zeeker-slider-1 h4,
#zeeker-slider-1 h5,
#zeeker-slider-1 h6,
#zeeker-slider-2 h3,
#zeeker-slider-2 h4,
#zeeker-slider-2 h5,
#zeeker-slider-2 h6 {
	font-size: 1.5rem;
}
#zeeker-slider-2 h1,
#zeeker-slider-2 h2 {
	font-size: 2rem;
}
#zeeker-slider-1 p,
#zeeker-slider-2 p {
	font-size: 1.4rem;
}
.customSlider__detalles h1,
.customSlider__detalles h2,
.customSlider__detalles h3,
.customSlider__detalles h4,
.customSlider__detalles h5,
.customSlider__detalles h6 {
	font-size: 2rem !important;
}
.customSlider__detalles p {
	font-size: 1rem !important;
}
.carousel-indicators [data-bs-target] {
	height: 2px;
}
#zeeker-slider-2 .zeeker-slider-detalle h3 {
	font-size: 2rem;
}
#zeeker-slider-2 .zeeker-slider-detalle p {
	font-size: 0.875rem;
}
#zeeker-slider-2 .carousel-control-next,
#zeeker-slider-2 .carousel-control-prev {
	width: 60px;
	opacity: 1;
}
#zeeker-slider-2 button.active {
	color: var(--bs-black) !important;
	background-color: var(--bs-white) !important;
}
#zeeker-slider-2 button {
	color: var(--bs-gray) !important;
}

@media only screen and (min-width: 992px) {
	#zeeker-slider-1 h1,
	#zeeker-slider-1 h2 {
		font-size: 4rem;
	}
	#zeeker-slider-1 h3,
	#zeeker-slider-1 h4,
	#zeeker-slider-1 h5,
	#zeeker-slider-1 h6,
	#zeeker-slider-2 h3,
	#zeeker-slider-2 h4,
	#zeeker-slider-2 h5,
	#zeeker-slider-2 h6 {
		font-size: 2.5rem;
	}
	#zeeker-slider-2 h1,
	#zeeker-slider-2 h2 {
		font-size: 3rem;
	}
	#zeeker-slider-1 p,
	#zeeker-slider-2 p {
		font-size: 2rem;
	}
	#zeeker-slider-2 .zeeker-slider-detalle h3 {
		font-size: 3rem;
	}
	#zeeker-slider-2 .zeeker-slider-detalle p {
		font-size: 1rem;
	}
	#zeeker-slider-2 .carousel-control-next,
	#zeeker-slider-2 .carousel-control-prev {
		width: 100px;
	}
	.customSlider__detalles h1,
	.customSlider__detalles h2,
	.customSlider__detalles h3,
	.customSlider__detalles h4,
	.customSlider__detalles h5,
	.customSlider__detalles h6 {
		font-size: 3rem !important;
	}
}
/* Bloque Contenido */
.bloqueContenido h1,
.bloqueContenido h2 {
	font-size: 2rem;
}
.bloqueContenido h3,
.bloqueContenido h4,
.bloqueContenido h5,
.bloqueContenido h6 {
	font-size: 1.5rem;
}
.bloqueContenido p {
	font-size: 1.4rem;
}
@media only screen and (min-width: 992px) {
	.bloqueContenido h1,
	.bloqueContenido h2 {
		font-size: 3rem;
	}
	.bloqueContenido h3,
	.bloqueContenido h4,
	.bloqueContenido h5,
	.bloqueContenido h6 {
		font-size: 2.5rem;
	}
	.bloqueContenido p {
		font-size: 2rem;
	}
}
/* Footer */
.disclaimer p {
	margin: 0;
}
/* Bloque Visualizador */
.customVisualizador__detalles h1,
.customVisualizador__detalles h2,
.customVisualizador__detalles h3,
.customVisualizador__detalles h4,
.customVisualizador__detalles h5,
.customVisualizador__detalles h6 {
	font-size: 2rem;
}
.customVisualizador__detalles p {
	font-size: 0.875rem;
}
@media only screen and (min-width: 992px) {
	.customVisualizador__detalles h1,
	.customVisualizador__detalles h2,
	.customVisualizador__detalles h3,
	.customVisualizador__detalles h4,
	.customVisualizador__detalles h5,
	.customVisualizador__detalles h6 {
		font-size: 3rem;
	}
	.customVisualizador__detalles p {
		font-size: 1rem;
	}
}
/* Bloque Galeria */
.customGaleria .grid-container {
	display: grid;
	grid-template-columns: repeat(6, 1fr);
	grid-template-rows: repeat(5, 1fr);
	gap: 8px;
}
.customGaleria .item-1 {
	grid-column: 1 / span 3;
	grid-row: 1 / span 3;
	display: flex;
	align-items: center;
	justify-content: center;
}
.customGaleria .item-2 {
	grid-column: 4 / span 3;
	grid-row: 1 / span 2;
	display: flex;
	align-items: center;
	justify-content: center;
}
.customGaleria .item-3 {
	grid-column: 4 / span 3;
	grid-row: 3 / span 3;
	display: flex;
	align-items: center;
	justify-content: center;
}
.customGaleria .item-4 {
	grid-column: 1 / span 3;
	grid-row: 4 / span 2;
	display: flex;
	align-items: center;
	justify-content: center;
}

.grid-container-2 {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	grid-template-rows: repeat(2, 1fr);
	gap: 8px;
}

.grid-container-2 .item-1 {
	grid-column: 1 / span 2;
	grid-row: 1 / span 2;
	display: flex;
	align-items: center;
	justify-content: center;
}

.grid-container-2 .item-2 {
	grid-column: 3 / span 2;
	grid-row: 1 / span 1;
	display: flex;
	align-items: center;
	justify-content: center;
}

.grid-container-2 .item-3 {
	grid-column: 3 / span 2;
	grid-row: 2 / span 1;
	display: flex;
	align-items: center;
	justify-content: center;
}
/* Bloque Tarjetas */
.bloqueTarjetas .swiper-button-next:after,
.bloqueTarjetas .swiper-button-prev:after {
	display: none;
}
/* Bloque Banner */
/* Bloque Contenido */
.bloqueBanner h1,
.bloqueBanner h2 {
	font-size: calc(1.525rem + 3.3vw);
}
.bloqueBanner h3,
.bloqueBanner h4,
.bloqueBanner h5,
.bloqueBanner h6 {
	font-size: 1.5rem;
}
.bloqueBanner p {
	font-size: 1.4rem;
}
@media only screen and (min-width: 992px) {
	.bloqueBanner h1,
	.bloqueBanner h2 {
		font-size: 4rem;
	}
	.bloqueBanner h3,
	.bloqueBanner h4,
	.bloqueBanner h5,
	.bloqueBanner h6 {
		font-size: 2.5rem;
	}
	.bloqueBanner p {
		font-size: 2rem;
	}
}
/* CF7: selects tipo maqueta (etiqueta arriba + valor debajo, un solo borde) */
.zeekr-select-stack {
	border: 1px solid var(--bs-beige-100);
	border-radius: 0.5rem;
	padding: 0.5rem 0.75rem 0.35rem;
	background-color: #fff;
}
.zeekr-select-stack .form-label {
	font-size: 0.75rem;
	color: var(--bs-secondary);
	margin-bottom: 0.125rem;
}
.zeekr-select-stack .wpcf7-form-control-wrap {
	display: block;
	margin-bottom: 0;
}
.zeekr-select-stack select.form-select {
	border: 0;
	border-radius: 0;
	box-shadow: none;
	padding-left: 0;
	padding-right: 2rem;
	padding-top: 0.125rem;
	padding-bottom: 0.125rem;
	font-size: 1rem;
	line-height: 1.35;
	background-position: right 0 center;
}
.zeekr-select-stack select.form-select:focus {
	box-shadow: none;
}

/* Contacto formulario */
.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.unaccepted .wpcf7-response-output,
.wpcf7 form.payment-required .wpcf7-response-output {
	text-align: center;
	color: var(--bs-black) !important;
	border-color: var(--bs-black) !important;
}
.wpcf7-not-valid-tip {
	color: var(--bs-secondary) !important;
}
