/*
 Theme Name:   Woodmart Child
 Description:  Woodmart Child Theme
 Author:       XTemos
 Author URI:   http://xtemos.com
 Template:     woodmart
 Version:      1.0.0
 Text Domain:  woodmart
*/

/* ==========================================================================
   Paleta de Alquiser S.A.
   Extraída del logotipo oficial: teal del isotipo, verde de la hoja y negro
   del wordmark, más el amarillo de seguridad de la flota. Los tonos claros
   son tintes del teal. Contraste verificado sobre blanco (WCAG 2.1 AA).
   ========================================================================== */
:root {
	--alq-teal: #26616F;          /* primario · 6,95:1 sobre blanco */
	--alq-teal-profundo: #14343D; /* fondos oscuros y titulares */
	--alq-teal-claro: #DCE8EA;    /* tinte de fondo */
	--alq-verde: #59974F;         /* decorativo · no usar en texto pequeño */
	--alq-verde-texto: #3F7238;   /* verde apto para texto · 5,71:1 */
	--alq-amarillo: #F2B705;      /* acento y llamadas a la acción */
	--alq-texto: #232323;
	--alq-texto-sec: #4A5560;
	--alq-fondo: #F4F6F7;
	--alq-borde: #DDE3E6;
	--wd-primary-color: var(--alq-teal);
}

/* ==========================================================================
   Alquiser — Tarjetas de proyecto (carrusel "MÁS PROYECTOS")
   Acotado a .wd-project--alq para no afectar otros listados.
   ========================================================================== */

/* Fuente Montserrat (la del sitio) en toda la tarjeta */
.wd-project--alq,
.wd-project--alq .portfolio-info,
.wd-project--alq .wd-entities-title,
.wd-project--alq .wd-entities-title a,
.wd-project--alq .proj-cats-list li,
.wd-project--alq .wd-project__subtitle,
.wd-project--alq .wd-project__link {
	font-family: 'Montserrat', 'Kumbh Sans', sans-serif !important;
}

/* Altura igual: estirar los slides del carrusel y que la tarjeta llene la altura */
.wd-projects .wd-carousel-item,
.wd-portfolio-element .wd-carousel-item {
	height: auto;
	display: flex;
}

.wd-project--alq {
	display: flex;
	width: 100%;
}

.wd-project--alq .entry-header {
	background-color: #fff;
	border: 1px solid #ececec;
	border-radius: 10px;
	overflow: hidden;
	box-shadow: 0 2px 6px rgba(16, 24, 40, .05);
	transition: box-shadow .3s ease, transform .3s ease;
	width: 100%;
	height: 100%;
	display: flex;
	flex-direction: column;
}

.wd-project--alq:hover .entry-header {
	box-shadow: 0 12px 28px rgba(16, 24, 40, .12);
	transform: translateY(-4px);
}

/* Imagen superior uniforme */
.wd-project--alq .entry-thumbnail {
	margin: 0;
	border-radius: 0;
	overflow: hidden;
}

.wd-project--alq .portfolio-thumbnail {
	display: block;
	overflow: hidden;
}

.wd-project--alq .portfolio-thumbnail img {
	display: block;
	width: 100%;
	height: 220px;
	object-fit: cover;
	opacity: 1 !important;
	visibility: visible !important;
	transition: transform .6s ease;
}

.wd-project--alq:hover .portfolio-thumbnail img {
	transform: scale(1.05);
}

/* Quitar overlay oscuro del tema y botones de hover */
.wd-project--alq .portfolio-thumbnail:after {
	display: none !important;
}

.wd-project--alq .wd-portfolio-btns {
	display: none !important;
}

/* Bloque de información, alineado a la izquierda */
.wd-project--alq .portfolio-info {
	background-color: #fff !important;
	text-align: left !important;
	padding: 16px 18px 18px !important;
	transform: none !important;
	opacity: 1 !important;
	position: static !important;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 6px;
	flex: 1 1 auto;
}

/* Categoría con ícono */
.wd-project--alq .wrap-meta {
	margin: 0;
}

.wd-project--alq .proj-cats-list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-wrap: wrap;
	gap: 6px 14px;
}

.wd-project--alq .proj-cats-list li {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	margin: 0;
	color: var(--wd-primary-color, rgb(32, 172, 179));
	font-size: 12px;
	font-weight: 600;
	letter-spacing: .08em;
	text-transform: uppercase;
	line-height: 1;
}

.wd-project--alq .proj-cats-list li:before {
	display: none !important;
}

.wd-project--alq .wd-project__cat-icon {
	display: inline-flex;
	color: var(--wd-primary-color, rgb(32, 172, 179));
}

.wd-project--alq .wd-project__cat-icon svg {
	width: 16px;
	height: 16px;
	display: block;
}

/* Título en negro */
.wd-project--alq .wrap-title {
	margin: 0;
}

.wd-project--alq .wd-entities-title {
	margin: 0;
	font-size: 17px;
	line-height: 1.3;
	font-weight: 700;
}

.wd-project--alq .wd-entities-title a {
	color: #1a1a1a !important;
	font-weight: 700;
	transition: color .2s ease;
	/* Límite de 2 líneas visibles con puntos suspensivos */
	display: -webkit-box;
	-webkit-line-clamp: 2;
	line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
	min-height: calc(2 * 1.3em);
}

.wd-project--alq:hover .wd-entities-title a {
	color: var(--wd-primary-color, rgb(32, 172, 179)) !important;
}

/* Subtítulo gris */
.wd-project--alq .wd-project__subtitle {
	margin: 0;
	color: #6b7280;
	font-size: 13.5px;
	line-height: 1.4;
	/* Tres líneas. La plantilla reservaba dos, pero a los 278 px que mide la
	   tarjeta en la rejilla de cuatro columnas ahí solo caben unas nueve
	   palabras, y las descripciones se cortaban a media frase. */
	display: -webkit-box;
	-webkit-line-clamp: 3;
	line-clamp: 3;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

/* Enlace "Ver proyecto" */
.wd-project--alq .wd-project__link {
	margin-top: auto;
	padding-top: 10px;
	display: inline-flex;
	align-items: center;
	gap: 8px;
	color: var(--wd-primary-color, rgb(32, 172, 179));
	font-size: 12px;
	font-weight: 700;
	letter-spacing: .08em;
	text-transform: uppercase;
}

.wd-project--alq .wd-project__link:hover {
	color: var(--wd-primary-color, rgb(32, 172, 179));
}

.wd-project--alq .wd-project__arrow {
	transition: transform .25s ease;
}

.wd-project--alq .wd-project__link:hover .wd-project__arrow {
	transform: translateX(4px);
}

/* ==========================================================================
   Alquiser — Barra de filtros de proyectos (pills con icono por categoría)
   ========================================================================== */
.alq-filter { margin-bottom: 30px; }

.alq-filter .wd-nav-portfolio.wd-nav {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 10px;
	border: 0 !important;
	padding: 0;
	margin: 0;
}

.alq-filter .wd-nav-portfolio > li {
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
}

.alq-filter .wd-nav-portfolio > li:before,
.alq-filter .wd-nav-portfolio > li:after,
.alq-filter .wd-nav-portfolio > li > a:before,
.alq-filter .wd-nav-portfolio > li > a:after {
	display: none !important;
}

.alq-filter .wd-nav-portfolio > li > a {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 10px 18px;
	border: 1px solid #e3e6ea;
	border-radius: 999px;
	background: #fff;
	color: #55606b !important;
	font-family: 'Montserrat', sans-serif;
	font-size: 12px;
	font-weight: 600;
	letter-spacing: .05em;
	text-transform: uppercase;
	line-height: 1;
	transition: background .2s ease, color .2s ease, border-color .2s ease, box-shadow .2s ease;
}

.alq-filter .wd-nav-portfolio > li > a .wd-filter-icon,
.alq-filter .wd-nav-portfolio > li > a .wd-filter-icon svg {
	display: inline-flex;
	width: 16px;
	height: 16px;
}

.alq-filter .wd-nav-portfolio > li > a:hover {
	border-color: var(--wd-primary-color, rgb(32, 172, 179));
	color: var(--wd-primary-color, rgb(32, 172, 179)) !important;
}

.alq-filter .wd-nav-portfolio > li.wd-active > a {
	background: var(--wd-primary-color, rgb(32, 172, 179));
	color: #fff !important;
	border-color: transparent;
	box-shadow: 0 6px 16px rgba(32, 172, 179, .28);
}

@media (max-width: 767px) {
	.alq-filter .wd-nav-portfolio.wd-nav {
		flex-wrap: nowrap;
		overflow-x: auto;
		justify-content: flex-start;
		-webkit-overflow-scrolling: touch;
		padding-bottom: 6px;
	}
	.alq-filter .wd-nav-portfolio > li > a { white-space: nowrap; }
}

/* ==========================================================================
   Alquiser — Forzar info siempre visible (independiente de hover/text-shown)
   Necesario en archivos/páginas donde el estilo del widget es "hover".
   ========================================================================== */
.wd-project--alq .portfolio-info,
.wd-project--alq .wrap-meta,
.wd-project--alq .proj-cats-list,
.wd-project--alq .proj-cats-list li,
.wd-project--alq .wrap-title,
.wd-project--alq .wd-entities-title,
.wd-project--alq .wd-entities-title a,
.wd-project--alq .wd-project__subtitle,
.wd-project--alq .wd-project__link {
	opacity: 1 !important;
	transform: none !important;
	visibility: visible !important;
}

/* En estilo hover/inverse la info va absoluta sobre la imagen: forzarla estática debajo */
.wd-project--alq.portfolio-hover .entry-header,
.wd-project--alq.portfolio-hover-inverse .entry-header {
	background-color: #fff;
}
.wd-project--alq.portfolio-hover .portfolio-info,
.wd-project--alq.portfolio-hover-inverse .portfolio-info {
	position: static !important;
	inset: auto !important;
}

/* ==========================================================================
   Alquiser — Tarjetas del grid con MISMA ALTURA (todo alineado)
   ========================================================================== */
.wd-project--alq .portfolio-info {
	min-height: 172px;               /* reserva de altura uniforme del contenido */
	justify-content: flex-start;
}
/* categoría en una sola línea para no descuadrar */
.wd-project--alq .proj-cats-list {
	flex-wrap: nowrap;
	overflow: hidden;
	max-width: 100%;
}
.wd-project--alq .proj-cats-list li { white-space: nowrap; }
/* El subtítulo reserva sus tres líneas aunque ocupe menos, para que el enlace
   "Ver proyecto" quede alineado en todas las tarjetas. */
.wd-project--alq .wd-project__subtitle { min-height: calc(3 * 1.4em); }

/* ==========================================================================
   Alquiser — Bento "Proyectos destacados": animación + hover
   ========================================================================== */
.elementor-element-d6716ce,
.elementor-element-5e8e0d0,
.elementor-element-17ce607 {
	transition: transform .45s cubic-bezier(.22,.61,.36,1), box-shadow .45s ease, filter .45s ease;
	will-change: transform;
	overflow: hidden;
}
.elementor-element-d6716ce:hover,
.elementor-element-5e8e0d0:hover,
.elementor-element-17ce607:hover {
	transform: translateY(-6px);
	box-shadow: 0 22px 48px rgba(0, 0, 0, .32);
	filter: saturate(1.06);
}
/* la flecha del botón "VER PROYECTO" se desplaza al hover de la tarjeta */
.elementor-element-d6716ce:hover .elementor-button span,
.elementor-element-5e8e0d0:hover .elementor-button span,
.elementor-element-17ce607:hover .elementor-button span {
	letter-spacing: .04em;
}

/* ===== Alquiser — Ícono por categoría en el bento destacado ===== */
.elementor-element-f4fb6c6 .elementor-button-text{display:inline-flex;align-items:center;gap:7px;}
.elementor-element-f4fb6c6 .elementor-button-text::before{content:'';width:16px;height:16px;flex:0 0 16px;background:url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20width%3D%2716%27%20height%3D%2716%27%20viewBox%3D%270%200%2024%2024%27%20fill%3D%27none%27%20stroke%3D%27%23ffffff%27%20stroke-width%3D%271.9%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Cpath%20d%3D%27M3%2021h18%27%2F%3E%3Cpath%20d%3D%27M6%2021V7l6-4%206%204v14%27%2F%3E%3Cpath%20d%3D%27M10%209h.01M14%209h.01M10%2013h.01M14%2013h.01M10%2017h.01M14%2017h.01%27%2F%3E%3C%2Fsvg%3E") center/contain no-repeat;}
.elementor-element-4af99f3 .elementor-button-text{display:inline-flex;align-items:center;gap:7px;}
.elementor-element-4af99f3 .elementor-button-text::before{content:'';width:16px;height:16px;flex:0 0 16px;background:url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20width%3D%2716%27%20height%3D%2716%27%20viewBox%3D%270%200%2024%2024%27%20fill%3D%27none%27%20stroke%3D%27%23ffffff%27%20stroke-width%3D%271.9%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Cpath%20d%3D%27M3%2021h18%27%2F%3E%3Cpath%20d%3D%27M5%2021V9M10%2021V9M14%2021V9M19%2021V9%27%2F%3E%3Cpath%20d%3D%27M4%209h16%27%2F%3E%3Cpath%20d%3D%27M12%203%204%207v2h16V7z%27%2F%3E%3C%2Fsvg%3E") center/contain no-repeat;}
.elementor-element-9d69d69 .elementor-button-text{display:inline-flex;align-items:center;gap:7px;}
.elementor-element-9d69d69 .elementor-button-text::before{content:'';width:16px;height:16px;flex:0 0 16px;background:url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20width%3D%2716%27%20height%3D%2716%27%20viewBox%3D%270%200%2024%2024%27%20fill%3D%27none%27%20stroke%3D%27%23ffffff%27%20stroke-width%3D%271.9%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Cpath%20d%3D%27M14%202H6a2%202%200%200%200-2%202v16a2%202%200%200%200%202%202h12a2%202%200%200%200%202-2V8z%27%2F%3E%3Cpath%20d%3D%27M14%202v6h6%27%2F%3E%3Cpath%20d%3D%27M8%2013h8M8%2017h8M8%209h2%27%2F%3E%3C%2Fsvg%3E") center/contain no-repeat;}

/* ==========================================================================
   ALQUISER — Blog hub "Visión Técnica" (Fase 4)
   ========================================================================== */
.alq-hub { font-family: 'Montserrat', 'Kumbh Sans', sans-serif; color: #1a1a1a; }
.alq-hub *, .alq-hub *::before, .alq-hub *::after { box-sizing: border-box; }

/* --- Barra de categorías --- */
.gh-catbar { text-align: center; margin: 0 0 40px; }
.gh-catbar__title {
	font-size: 15px; font-weight: 700; letter-spacing: .14em; text-transform: uppercase;
	color: #2a3340; margin: 0 0 20px;
}
.gh-catbar__list {
	list-style: none; margin: 0; padding: 0;
	display: flex; flex-wrap: wrap; justify-content: center; align-items: center; gap: 8px 4px;
}
.gh-catbar__list > li { margin: 0; }
.gh-catbar__list > li + li { border-left: 1px solid #e3e6ea; }
.gh-catbar__list a {
	display: inline-flex; align-items: center; gap: 8px; padding: 8px 18px;
	color: #4a5563; font-size: 13px; font-weight: 600; transition: color .2s ease;
}
.gh-catbar__list a:hover { color: var(--wd-primary-color, rgb(32,172,179)); }
.gh-catbar__icon { display: inline-flex; color: var(--wd-primary-color, rgb(32,172,179)); }
.gh-catbar__icon svg { width: 18px; height: 18px; display: block; }

/* --- Encabezado de sección --- */
.gh-section { margin: 0 0 48px; }
.gh-section__head { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin: 0 0 22px; }
.gh-section__title {
	position: relative; margin: 0; font-size: 22px; font-weight: 700; color: #1a2230;
	display: inline-flex; align-items: center; gap: 14px;
}
.gh-section__title::after { content: ''; width: 40px; height: 2px; background: var(--wd-primary-color, rgb(32,172,179)); }
.gh-section__all {
	font-size: 12px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase;
	color: var(--wd-primary-color, rgb(32,172,179)); white-space: nowrap;
}
.gh-section__all:hover { color: var(--wd-primary-color, rgb(32,172,179)); text-decoration: underline; }

/* --- Investigaciones: destacada + grid --- */
.gh-research { display: grid; grid-template-columns: 380px 1fr; gap: 24px; align-items: stretch; }
.gh-research__grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; }

/* --- Tarjeta regular --- */
.gh-card {
	display: flex; flex-direction: column; background: #fff; border: 1px solid #ececec;
	border-radius: 12px; overflow: hidden; height: 100%;
	box-shadow: 0 2px 6px rgba(16,24,40,.05); transition: box-shadow .3s ease, transform .3s ease;
}
.gh-card:hover { box-shadow: 0 14px 30px rgba(16,24,40,.12); transform: translateY(-4px); }
.gh-card__thumb { display: block; overflow: hidden; }
.gh-card__thumb img { display: block; width: 100%; height: 170px; object-fit: cover; transition: transform .6s ease; }
.gh-card:hover .gh-card__thumb img { transform: scale(1.05); }
.gh-card__body { display: flex; flex-direction: column; gap: 8px; padding: 16px 18px 18px; flex: 1 1 auto; }
.gh-card__label {
	font-size: 11px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase;
	color: var(--wd-primary-color, rgb(32,172,179));
}
.gh-card__title { margin: 0; font-size: 16px; line-height: 1.32; font-weight: 700; }
.gh-card__title a {
	color: #1a2230 !important; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical;
	overflow: hidden; transition: color .2s ease;
}
.gh-card:hover .gh-card__title a { color: var(--wd-primary-color, rgb(32,172,179)) !important; }
.gh-card__excerpt {
	margin: 0; font-size: 13px; line-height: 1.5; color: #6b7280;
	display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden;
}
.gh-card__meta { margin-top: auto; padding-top: 8px; display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.gh-card__more { font-size: 12px; font-weight: 700; color: var(--wd-primary-color, rgb(32,172,179)); white-space: nowrap; }
.gh-card__more:hover { color: var(--wd-primary-color, rgb(32,172,179)); }
.gh-card__date { font-size: 12px; color: #8a929c; }
.gh-card__time { font-size: 12px; color: #8a929c; white-space: nowrap; display: inline-flex; align-items: center; gap: 5px; }
.gh-card__time::before {
	content: ''; width: 13px; height: 13px; flex: 0 0 13px; background: no-repeat center/contain;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='13' height='13' viewBox='0 0 24 24' fill='none' stroke='%238a929c' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M12 7v5l3 2'/%3E%3C/svg%3E");
}

/* --- Tarjeta destacada (dark) --- */
.gh-featured {
	display: flex; flex-direction: column; height: 100%; background: #0f141b; color: #fff;
	border-radius: 14px; overflow: hidden; box-shadow: 0 10px 30px rgba(16,24,40,.18);
	transition: transform .35s ease, box-shadow .35s ease;
}
.gh-featured:hover { transform: translateY(-4px); box-shadow: 0 20px 44px rgba(16,24,40,.28); }
.gh-featured__thumb { position: relative; display: block; overflow: hidden; }
.gh-featured__thumb img { display: block; width: 100%; height: 220px; object-fit: cover; }
.gh-featured__badge {
	position: absolute; top: 16px; left: 16px; background: var(--wd-primary-color, rgb(32,172,179));
	color: #fff; font-size: 11px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase;
	padding: 6px 12px; border-radius: 6px;
}
.gh-featured__body { display: flex; flex-direction: column; gap: 12px; padding: 24px; flex: 1 1 auto; }
.gh-featured .gh-card__label { color: #6fd0d8; }
.gh-featured__title { margin: 0; font-size: 24px; line-height: 1.25; font-weight: 700; }
.gh-featured__title a { color: #fff !important; }
.gh-featured__title a:hover { color: #6fd0d8 !important; }
.gh-featured__excerpt { margin: 0; font-size: 14px; line-height: 1.55; color: #b9c2cc; }
.gh-featured .gh-card__meta { margin-top: auto; padding-top: 12px; }
.gh-featured .gh-card__more { color: #6fd0d8; font-size: 13px; }
.gh-featured .gh-card__time { color: #9aa4af; }
.gh-featured .gh-card__time::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='13' height='13' viewBox='0 0 24 24' fill='none' stroke='%239aa4af' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M12 7v5l3 2'/%3E%3C/svg%3E");
}

/* --- Grid de artículos técnicos --- */
.gh-grid { display: grid; gap: 22px; }
.gh-grid--articles { grid-template-columns: repeat(6, 1fr); }
.gh-grid--articles .gh-card__thumb img { height: 130px; }
.gh-grid--articles .gh-card__title { font-size: 14px; }

/* --- Responsive --- */
@media (max-width: 1200px) {
	.gh-grid--articles { grid-template-columns: repeat(3, 1fr); }
}
@media (max-width: 1024px) {
	.gh-research { grid-template-columns: 1fr; }
	.gh-research__grid { grid-template-columns: repeat(3, 1fr); }
}
@media (max-width: 767px) {
	.gh-research__grid, .gh-grid--articles { grid-template-columns: repeat(2, 1fr); }
	.gh-section__head { flex-direction: column; align-items: flex-start; gap: 8px; }
	.gh-catbar__list { flex-wrap: nowrap; overflow-x: auto; justify-content: flex-start; }
	.gh-catbar__list > li + li { border-left: 0; }
}
@media (max-width: 480px) {
	.gh-research__grid, .gh-grid--articles { grid-template-columns: 1fr; }
}

/* Hub: contención y ancho */
.alq-hub { max-width: 1200px; margin: 0 auto; padding: 10px 15px 30px; }

/* Fix: color de la barra de categorías (el tema forzaba enlaces en blanco) */
.alq-hub .gh-catbar__list a,
.alq-hub .gh-catbar__name { color: #4a5563 !important; }
.alq-hub .gh-catbar__list a:hover,
.alq-hub .gh-catbar__list a:hover .gh-catbar__name { color: var(--wd-primary-color, rgb(32,172,179)) !important; }
.alq-hub .gh-section__all { color: var(--wd-primary-color, rgb(32,172,179)) !important; }

/* --- Archivo de blog: tarjeta estilo Alquiser --- */
.wd-post.gh-archive-item {
	display: flex; flex-direction: column; background: #fff; border: 1px solid #ececec;
	border-radius: 12px; overflow: hidden; box-shadow: 0 2px 6px rgba(16,24,40,.05);
	transition: box-shadow .3s ease, transform .3s ease; padding: 0;
	font-family: 'Montserrat','Kumbh Sans',sans-serif;
}
.wd-post.gh-archive-item:hover { box-shadow: 0 14px 30px rgba(16,24,40,.12); transform: translateY(-4px); }
.wd-post.gh-archive-item .gh-card__title a { -webkit-line-clamp: 2; color: #1a2230 !important; }
.wd-post.gh-archive-item .gh-card__thumb img { height: 190px; }

/* Fix: color de "Leer más" (el tema forzaba enlaces en blanco) */
.gh-card .gh-card__more,
.gh-archive-item .gh-card__more { color: var(--wd-primary-color, rgb(32,172,179)) !important; }
.gh-featured .gh-card__more { color: #6fd0d8 !important; }
.gh-card__title a { color: #1a2230 !important; }
.gh-featured__title a { color: #fff !important; }

/* ==========================================================================
   Ajuste tarjetas blog (parecer más a la referencia): imagen más alta,
   más descripción (3 líneas) y altura natural sin estirarse (sin hueco).
   ========================================================================== */
.gh-card__thumb img { height: 200px; }
.gh-grid--articles .gh-card__thumb img { height: 160px; }
.gh-featured__thumb img { height: 250px; }
.gh-card__excerpt { -webkit-line-clamp: 3; line-clamp: 3; }
/* Que las tarjetas tomen su altura natural (no se estiran a la destacada) */
.gh-research, .gh-research__grid, .gh-grid--articles { align-items: start; }
.gh-research__grid .gh-card, .gh-grid--articles .gh-card { height: auto; }
/* El meta va justo después del texto, con una separación pequeña */
.gh-card .gh-card__meta { margin-top: 6px; }

/* ==========================================================================
   ALQUISER — Página de post individual (blog)
   ========================================================================== */
/* 1) Imagen destacada ANTES del título */
.single-post .wd-single-post-header { display: flex; flex-direction: column; }
.single-post .wd-single-post-header .wd-post-image { order: -1; margin: 0 0 26px; border-radius: 14px; overflow: hidden; }
.single-post .wd-single-post-header .wd-post-image img { display: block; width: 100%; border-radius: 14px; }

/* 2) Sidebar moderno */
.single-post .wd-sidebar { font-family: 'Montserrat','Kumbh Sans',sans-serif; }
.single-post .wd-sidebar .widget {
	background: #fff; border: 1px solid #eef0f2; border-radius: 14px;
	padding: 22px 22px 24px; margin-bottom: 22px; box-shadow: 0 2px 12px rgba(16,24,40,.05);
}
.single-post .wd-sidebar .widget .widget-title {
	margin: 0 0 16px; font-size: 13px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase;
	color: #1a2230; padding-bottom: 12px; border-bottom: 1px solid #eef0f2; position: relative;
}
.single-post .wd-sidebar .widget .widget-title::after {
	content: ''; position: absolute; left: 0; bottom: -1px; width: 38px; height: 2px;
	background: var(--wd-primary-color, rgb(32,172,179));
}
/* Fix enlaces blancos del tema */
.single-post .wd-sidebar a { color: #4a5563 !important; }
.single-post .wd-sidebar a:hover { color: var(--wd-primary-color, rgb(32,172,179)) !important; }

/* Buscador */
.single-post .wd-sidebar .searchform { position: relative; }
.single-post .wd-sidebar .searchform input.s,
.single-post .wd-sidebar .searchform input[type="text"] {
	width: 100%; border: 1px solid #e3e6ea; border-radius: 10px; padding: 12px 46px 12px 14px;
	font-size: 14px; background: #f8fafb; color: #1a2230;
}
.single-post .wd-sidebar .searchform button,
.single-post .wd-sidebar .searchform .searchsubmit,
.single-post .wd-sidebar .searchform [type="submit"] {
	position: absolute; right: 6px; top: 50%; transform: translateY(-50%);
	background: transparent; border: 0; color: var(--wd-primary-color, rgb(32,172,179));
}

/* Categorías (filtros) */
.single-post .wd-sidebar .widget_categories ul { list-style: none; margin: 0; padding: 0; }
.single-post .wd-sidebar .widget_categories li { margin: 0; padding: 0; }
.single-post .wd-sidebar .widget_categories li + li { border-top: 1px solid #f1f3f5; }
.single-post .wd-sidebar .widget_categories li a {
	display: block; padding: 10px 12px; border-radius: 8px; font-size: 14px; font-weight: 600;
	transition: background .2s ease, color .2s ease;
}
.single-post .wd-sidebar .widget_categories li a:hover {
	background: rgba(32,172,179,.09); color: var(--wd-primary-color, rgb(32,172,179)) !important;
}

/* Publicaciones recientes */
.single-post .wd-sidebar .woodmart-recent-posts-list { list-style: none; margin: 0; padding: 0; }
.single-post .wd-sidebar .woodmart-recent-posts-list li { display: flex; gap: 12px; padding: 13px 0; border-top: 1px solid #f1f3f5; }
.single-post .wd-sidebar .woodmart-recent-posts-list li:first-child { border-top: 0; padding-top: 0; }
.single-post .wd-sidebar .recent-posts-thumbnail { flex: 0 0 64px; display: block; }
.single-post .wd-sidebar .recent-posts-thumbnail img { width: 64px; height: 56px; object-fit: cover; border-radius: 8px; display: block; }
.single-post .wd-sidebar .recent-posts-info .wd-entities-title a {
	font-size: 13px; font-weight: 600; line-height: 1.35; color: #1a2230 !important;
	display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden;
}
.single-post .wd-sidebar .recent-posts-info .wd-post-date, .single-post .wd-sidebar .recent-posts-info time { font-size: 11px; color: #8a929c; }

/* Ocultar widget "Recent Posts" duplicado (en inglés) */
#woodmart-recent-posts-19 { display: none !important; }

/* 3) Artículos relacionados (tarjetas modernas) */
.gh-related { max-width: none; margin: 44px 0 10px; padding: 0; }
.gh-related__grid { grid-template-columns: repeat(3, 1fr); }
@media (max-width: 991px) { .gh-related__grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 575px) { .gh-related__grid { grid-template-columns: 1fr; } }

/* Imagen destacada del post: alto máximo equilibrado */
.single-post .wd-single-post-header .wd-post-image img { max-height: 460px; object-fit: cover; }

/* ==========================================================================
   FIX Investigaciones: las 3 tarjetas llenan la altura de la destacada y la
   IMAGEN crece para ocupar el espacio (sin hueco en blanco).
   ========================================================================== */
.gh-research { align-items: stretch !important; }
.gh-research__grid { align-items: stretch !important; }
.gh-research__grid .gh-card { height: 100%; }
.gh-research__grid .gh-card__thumb { flex: 1 1 auto; min-height: 190px; overflow: hidden; display: block; }
.gh-research__grid .gh-card__thumb img { width: 100%; height: 100%; min-height: 190px; object-fit: cover; }
.gh-research__grid .gh-card__body { flex: 0 0 auto; }

/* ==========================================================================
   Post individual: título a la izquierda + imagen cover grande + tiempo lectura
   ========================================================================== */
.single-post .wd-single-post-header .wd-post-cat,
.single-post .wd-single-post-header .wd-entities-title,
.single-post .wd-single-post-header .wd-post-meta { text-align: left !important; }
.single-post .wd-single-post-header .wd-post-meta { justify-content: flex-start !important; }

/* Imagen del post: cover grande */
.single-post .wd-single-post-header .wd-post-image { border-radius: 14px; overflow: hidden; }
.single-post .wd-single-post-header .wd-post-image img {
	width: 100%; height: 520px; max-height: none; object-fit: cover; border-radius: 14px;
}

/* Badge de tiempo de lectura */
.single-post .gh-single-readtime {
	display: inline-flex; align-items: center; gap: 8px; margin: 0 0 26px;
	padding: 9px 18px; border-radius: 999px; background: rgba(32,172,179,.10);
	color: var(--wd-primary-color, rgb(32,172,179)); font-family: 'Montserrat','Kumbh Sans',sans-serif;
	font-size: 13px; font-weight: 700; letter-spacing: .03em;
}
.single-post .gh-single-readtime__icon {
	width: 16px; height: 16px; flex: 0 0 16px; background: no-repeat center/contain;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%2320acb3' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M12 7v5l3 2'/%3E%3C/svg%3E");
}

/* ==========================================================================
   ALQUISER — Cabecera de archivo de blog (categoría) con buen diseño
   ========================================================================== */
.gh-archive-header { max-width: 1200px; margin: 6px auto 34px; padding: 0 15px; }
.gh-archive-head { text-align: center; margin: 0 0 26px; }
.gh-archive-eyebrow {
	display: inline-block; font-size: 12px; font-weight: 700; letter-spacing: .16em; text-transform: uppercase;
	color: var(--wd-primary-color, rgb(32,172,179)); margin-bottom: 10px;
}
.gh-archive-title { margin: 0 0 12px; font-size: 34px; font-weight: 700; color: #1a2230; line-height: 1.15; }
.gh-archive-desc { max-width: 640px; margin: 0 auto; color: #6b7280; font-size: 15px; line-height: 1.6; }

/* Estado activo en la barra de categorías (archivo) */
.alq-hub .gh-catbar__list li.is-active a,
.alq-hub .gh-catbar__list li.is-active .gh-catbar__name { color: var(--wd-primary-color, rgb(32,172,179)) !important; }
.alq-hub .gh-catbar__list li.is-active .gh-catbar__name { font-weight: 700; }
.alq-hub .gh-catbar__list li.is-active a { position: relative; }
.alq-hub .gh-catbar__list li.is-active a::after {
	content: ''; position: absolute; left: 18px; right: 18px; bottom: -6px; height: 2px;
	background: var(--wd-primary-color, rgb(32,172,179)); border-radius: 2px;
}

/* Grid del archivo de blog con buen espaciado */
.archive .wd-posts.wd-blog-holder, .blog .wd-posts.wd-blog-holder { gap: 26px; }

/* ==========================================================================
   FASE 7 — Ajustes finales blog
   ========================================================================== */
/* 1) Artículos Técnicos: las tarjetas se estiran para llenar el ancho */
.gh-grid--articles { grid-template-columns: repeat(auto-fit, minmax(230px, 1fr)); }
@media (max-width: 1200px) { .gh-grid--articles { grid-template-columns: repeat(auto-fit, minmax(210px, 1fr)); } }

/* 2) Post: HERO full-width (imagen destacada arriba, a todo el ancho del grid) */
.single-post .wd-content-layout > .gh-post-hero {
	grid-column: 1 / -1;
	margin: 0 0 34px;
	border-radius: 16px;
	overflow: hidden;
	line-height: 0;
}
.single-post .gh-post-hero__img {
	display: block;
	width: 100%;
	height: 460px;
	object-fit: cover;
	border-radius: 16px;
}
@media (max-width: 767px) {
	.single-post .gh-post-hero__img { height: 300px; }
}
/* Ocultar la imagen duplicada dentro de la cabecera (el hero la reemplaza) */
.single-post .wd-single-post-header .wd-post-image { display: none !important; }

/* 3) Cabecera del post alineada a la izquierda (categoría, título, autor) */
.single-post .wd-single-post-header { align-items: flex-start !important; }
.single-post .wd-single-post-header .wd-post-cat,
.single-post .wd-single-post-header .wd-entities-title,
.single-post .wd-single-post-header .wd-post-meta { text-align: left !important; }
.single-post .wd-single-post-header .wd-post-meta {
	justify-content: flex-start !important;
	width: 100%;
}

/* Artículos Técnicos: flex que estira las tarjetas para llenar la fila (sin huecos) */
.gh-grid--articles { display: flex; flex-wrap: wrap; gap: 22px; grid-template-columns: none; }
.gh-grid--articles > .gh-card { flex: 1 1 200px; max-width: 340px; height: auto; }
@media (max-width: 600px) { .gh-grid--articles > .gh-card { max-width: none; flex-basis: 100%; } }

/* ==========================================================================
   ALQUISER — Proyecto individual: hero + título + barra lateral
   ========================================================================== */
.gh-project-page { font-family: 'Montserrat','Kumbh Sans',sans-serif; }
.gh-project-page .gh-post-hero { margin: 0 0 34px; border-radius: 16px; overflow: hidden; line-height: 0; }
.gh-project-page .gh-post-hero__img { width: 100%; height: 460px; object-fit: cover; display: block; border-radius: 16px; }
@media (max-width: 767px) { .gh-project-page .gh-post-hero__img { height: 280px; } }

/* Grid de 2 columnas */
.gh-project-grid { display: grid; grid-template-columns: 1fr 330px; gap: 42px; align-items: start; }
@media (max-width: 991px) { .gh-project-grid { grid-template-columns: 1fr; gap: 30px; } }

.gh-project-cats { margin: 0 0 14px; }
.gh-project-title { font-size: 30px; line-height: 1.2; font-weight: 700; color: #1a2230; margin: 0 0 22px; text-align: left; }
.gh-project-main .wd-single-project { font-size: 15px; line-height: 1.75; color: #3a4250; }

/* Barra lateral (widgets estilo post) */
.gh-project-sidebar .gh-swidget {
	background: #fff; border: 1px solid #eef0f2; border-radius: 14px; padding: 22px;
	margin-bottom: 22px; box-shadow: 0 2px 12px rgba(16,24,40,.05);
}
.gh-project-sidebar .gh-swidget__title {
	margin: 0 0 16px; font-size: 13px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase;
	color: #1a2230; padding-bottom: 12px; border-bottom: 1px solid #eef0f2; position: relative;
}
.gh-project-sidebar .gh-swidget__title::after {
	content: ''; position: absolute; left: 0; bottom: -1px; width: 38px; height: 2px;
	background: var(--wd-primary-color, rgb(32,172,179));
}
/* Categorías */
.gh-swidget__cats { list-style: none; margin: 0; padding: 0; }
.gh-swidget__cats li + li { border-top: 1px solid #f1f3f5; }
.gh-swidget__cats a {
	display: flex; align-items: center; justify-content: space-between; gap: 10px;
	padding: 10px 12px; border-radius: 8px; font-size: 14px; font-weight: 600;
	color: #4a5563 !important; transition: background .2s ease, color .2s ease;
}
.gh-swidget__cats a:hover { background: rgba(32,172,179,.09); color: var(--wd-primary-color, rgb(32,172,179)) !important; }
.gh-swidget__cats em { font-style: normal; font-size: 12px; color: #9aa4af; background: #f3f5f7; border-radius: 20px; padding: 2px 9px; }
/* Otros proyectos */
.gh-swidget__posts { list-style: none; margin: 0; padding: 0; }
.gh-swidget__posts li { display: flex; gap: 12px; padding: 13px 0; border-top: 1px solid #f1f3f5; align-items: center; }
.gh-swidget__posts li:first-child { border-top: 0; padding-top: 0; }
.gh-swidget__thumb { flex: 0 0 64px; display: block; }
.gh-swidget__thumb img { width: 64px; height: 56px; object-fit: cover; border-radius: 8px; display: block; }
.gh-swidget__ptitle {
	font-size: 13px; font-weight: 600; line-height: 1.35; color: #1a2230 !important;
	display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden;
}
.gh-swidget__ptitle:hover { color: var(--wd-primary-color, rgb(32,172,179)) !important; }
/* CTA */
.gh-swidget--cta { background: #0f141b; color: #fff; border-color: transparent; }
.gh-swidget__cta-title { margin: 0 0 8px; font-size: 17px; font-weight: 700; color: #fff; }
.gh-swidget--cta p { margin: 0 0 16px; font-size: 13px; line-height: 1.5; color: #b9c2cc; }
.gh-swidget__cta-btn {
	display: inline-flex; align-items: center; justify-content: center; width: 100%;
	padding: 12px 18px; border-radius: 10px; background: var(--wd-primary-color, rgb(32,172,179));
	color: #fff !important; font-size: 13px; font-weight: 700; letter-spacing: .04em; text-transform: uppercase;
	transition: filter .2s ease;
}
.gh-swidget__cta-btn:hover { filter: brightness(1.08); color: #fff !important; }

/* ==========================================================================
   ALQUISER — Hero con TEXTO sobre la imagen (post y proyecto)
   ========================================================================== */
.gh-hero { position: relative; border-radius: 18px; overflow: hidden; margin: 0 0 36px; }
.single-post .wd-content-layout > .gh-hero { grid-column: 1 / -1; }
.gh-hero__img { display: block; width: 100%; height: 540px; object-fit: cover; }
.gh-hero__scrim { position: absolute; inset: 0; z-index: 1;
	background: linear-gradient(to top, rgba(0,0,0,.86) 0%, rgba(0,0,0,.5) 40%, rgba(0,0,0,.08) 74%); }
.gh-hero__overlay { position: absolute; left: 0; bottom: 0; z-index: 2; padding: 50px; max-width: 900px; }
.gh-hero__eyebrow {
	display: block; color: #fff; font-family: 'Montserrat','Kumbh Sans',sans-serif;
	font-size: 16px; font-weight: 600; margin-bottom: 8px; opacity: .95;
}
.gh-hero__title {
	color: #fff !important; font-family: 'Montserrat','Kumbh Sans',sans-serif;
	font-size: clamp(30px, 4.2vw, 52px); line-height: 1.07; font-weight: 700; margin: 0 0 16px;
}
.gh-hero__title a { color: #fff !important; }
.gh-hero__meta { color: rgba(255,255,255,.9); font-family: 'Montserrat','Kumbh Sans',sans-serif; font-size: 14px; }
.gh-hero__meta strong { color: #fff; font-weight: 700; }
.gh-hero__nav { position: absolute; right: 40px; bottom: 40px; z-index: 3; display: flex; gap: 12px; }
.gh-hero__arrow {
	width: 48px; height: 48px; border-radius: 50%; display: inline-flex; align-items: center; justify-content: center;
	background: rgba(255,255,255,.18); color: #fff !important; border: 1px solid rgba(255,255,255,.35);
	-webkit-backdrop-filter: blur(4px); backdrop-filter: blur(4px); transition: background .2s ease;
}
.gh-hero__arrow:hover { background: rgba(255,255,255,.4); color: #fff !important; }
@media (max-width: 767px) {
	.gh-hero__img { height: 420px; }
	.gh-hero__overlay { padding: 26px; max-width: 100%; }
	.gh-hero__nav { right: 18px; bottom: 18px; }
	.gh-hero__arrow { width: 42px; height: 42px; }
}

/* Post: el título/categoría/meta ahora van en el hero → ocultar la cabecera vieja */
.single-post .wd-single-post-header { display: none !important; }

/* ==========================================================================
   Hero: título más pequeño + migas reubicadas (ocultar barra gris superior)
   ========================================================================== */
.gh-hero__title { font-size: clamp(23px, 2.7vw, 38px); }

/* Ocultar la barra gris de título/migas de pan arriba (post y proyecto) */
.single-post .wd-page-title,
.single-portfolio .wd-page-title { display: none !important; }

/* Migas de pan reubicadas debajo del hero */
.gh-breadcrumbs-wrap { margin: -8px 0 24px; }
.single-post .wd-content-layout > .gh-breadcrumbs-wrap { grid-column: 1 / -1; }
.gh-breadcrumbs-wrap .wd-breadcrumbs { font-size: 13px; color: #9aa4af; padding: 0; }
.gh-breadcrumbs-wrap .wd-breadcrumbs a { color: #6b7280 !important; }
.gh-breadcrumbs-wrap .wd-breadcrumbs a:hover { color: var(--wd-primary-color, rgb(32,172,179)) !important; }

/* ==========================================================================
   Hero v2: migas + tiempo de lectura DENTRO del hero + animación ken-burns
   ========================================================================== */
.gh-hero { height: 540px; }
.gh-hero__media { position: absolute; inset: 0; overflow: hidden; z-index: 0; }
.gh-hero__media .gh-hero__img {
	width: 100%; height: 100%; object-fit: cover; display: block;
	animation: ghKenBurns 22s ease-in-out infinite alternate; will-change: transform;
}
@keyframes ghKenBurns { from { transform: scale(1.02); } to { transform: scale(1.12); } }
@media (prefers-reduced-motion: reduce) { .gh-hero__media .gh-hero__img { animation: none; } }
@media (max-width: 767px) { .gh-hero { height: 430px; } }

/* Entrada suave del texto del hero */
.gh-hero__overlay { animation: ghHeroUp .8s .12s ease both; }
@keyframes ghHeroUp { from { opacity: 0; transform: translateY(16px); } to { opacity: 1; transform: none; } }

/* Migas de pan DENTRO del hero (arriba) */
.gh-hero__crumbs { position: absolute; top: 24px; left: 50px; right: 90px; z-index: 3; }
.gh-hero__crumbs .wd-breadcrumbs { padding: 0; font-size: 13px; margin: 0; }
.gh-hero__crumbs .wd-breadcrumbs,
.gh-hero__crumbs .wd-breadcrumbs * { color: rgba(255,255,255,.92) !important; }
.gh-hero__crumbs .wd-breadcrumbs a:hover { color: #fff !important; text-decoration: underline; }
@media (max-width: 767px) { .gh-hero__crumbs { left: 26px; right: 26px; top: 18px; } }

/* Tiempo de lectura en el meta del hero */
.gh-hero__rt { display: inline-flex; align-items: center; gap: 5px; }
.gh-hero__rt::before {
	content: ''; width: 14px; height: 14px; flex: 0 0 14px; background: no-repeat center/contain;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M12 7v5l3 2'/%3E%3C/svg%3E");
}

/* Migas dentro del overlay del hero (flujo normal, sobre el título) */
.gh-hero__overlay .gh-hero__crumbs { position: static; top: auto; left: auto; right: auto; margin: 0 0 14px; }
@media (max-width: 767px) { .gh-hero__overlay .gh-hero__crumbs { left: auto; right: auto; top: auto; } }

/* Fix ken-burns: animar el CONTENEDOR (no el <img>) para evitar el bug de pintado */
.gh-hero__media {
	animation: ghKenBurns 24s ease-in-out infinite alternate;
	will-change: transform; transform-origin: center;
}
.gh-hero__media .gh-hero__img {
	animation: none !important; will-change: auto; transform: none;
	width: 100%; height: 100%; object-fit: cover; display: block;
}
@media (prefers-reduced-motion: reduce) { .gh-hero__media { animation: none; } }

/* Hero media como background-image (ken-burns confiable, sin bug de <img>) */
.gh-hero__media {
	position: absolute; inset: 0; z-index: 0;
	background-size: cover; background-position: center; background-repeat: no-repeat;
	transform-origin: center;
	animation: ghKenBurns 24s ease-in-out infinite alternate;
}
.gh-hero__media .gh-hero__img { display: none; }
@media (prefers-reduced-motion: reduce) { .gh-hero__media { animation: none; } }

/* ===== Ajustes hero v3: título más pequeño + separación + nueva animación (paneo) ===== */
.gh-hero__title { font-size: clamp(21px, 2.2vw, 32px); }

/* Separación entre el encabezado del sitio y el hero */
.gh-hero { margin-top: 38px; }
@media (max-width: 767px) { .gh-hero { margin-top: 22px; } }

/* Animación: paneo diagonal cinematográfico (reemplaza el zoom ken-burns) */
.gh-hero__media { animation: ghHeroPan 30s ease-in-out infinite alternate; }
@keyframes ghHeroPan {
	from { transform: scale(1.14) translate(-1.8%, -1.1%); }
	to   { transform: scale(1.14) translate(1.8%, 1.2%); }
}
@media (prefers-reduced-motion: reduce) { .gh-hero__media { animation: none; } }

/* ===== FIX: header es overlay absoluto → dar espacio arriba para despegar el hero ===== */
.single-post .wd-content-layout,
.single-portfolio .wd-content-layout { padding-top: 150px; }
.gh-hero { margin-top: 0; }
@media (max-width: 1024px) {
	.single-post .wd-content-layout,
	.single-portfolio .wd-content-layout { padding-top: 115px; }
}
@media (max-width: 767px) {
	.single-post .wd-content-layout,
	.single-portfolio .wd-content-layout { padding-top: 135px; }
}

/* Reducir altura del hero (mejor en portátiles) */
.gh-hero { height: 430px; }
@media (max-width: 1024px) { .gh-hero { height: 380px; } }
@media (max-width: 767px) { .gh-hero { height: 300px; } }

/* ==========================================================================
   ALQUISER — Sección de servicios moderna (paneles expandibles al hover)
   ========================================================================== */
.alq-svc { max-width: 1240px; margin: 0 auto; padding: 20px 15px 10px; font-family: 'Montserrat','Kumbh Sans',sans-serif; }
.alq-svc__head { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin: 0 0 26px; }
.alq-svc__title { margin: 0; font-size: 30px; font-weight: 800; color: #1a2230; line-height: 1.1; }
.alq-svc__all {
	display: inline-flex; align-items: center; gap: 8px; background: var(--wd-primary-color, rgb(32,172,179));
	color: #fff !important; padding: 11px 20px; border-radius: 10px; font-size: 13px; font-weight: 700;
	letter-spacing: .05em; text-transform: uppercase; white-space: nowrap; transition: filter .2s ease;
}
.alq-svc__all:hover { filter: brightness(1.08); color: #fff !important; }

.alq-svc__row { display: flex; gap: 16px; height: 460px; }
.gsvc-panel {
	position: relative; flex: 1 1 0%; min-width: 0; border-radius: 20px; overflow: hidden;
	background-size: cover; background-position: center; text-decoration: none;
	display: flex; align-items: flex-end;
	transition: flex-grow .6s cubic-bezier(.22,.61,.36,1), box-shadow .4s ease;
	box-shadow: 0 6px 20px rgba(6,12,20,.12);
}
.alq-svc__row:hover .gsvc-panel { flex-grow: .62; }
.gsvc-panel:hover { flex-grow: 2.6; box-shadow: 0 18px 44px rgba(6,12,20,.3); }
.gsvc-panel__scrim {
	position: absolute; inset: 0; z-index: 1; transition: background .45s ease;
	background: linear-gradient(to top, rgba(6,12,20,.9) 0%, rgba(6,12,20,.42) 48%, rgba(6,12,20,.08) 82%);
}
.gsvc-panel:hover .gsvc-panel__scrim {
	background: linear-gradient(to top, rgba(6,12,20,.93) 0%, rgba(6,12,20,.55) 58%, rgba(6,12,20,.16) 100%);
}
.gsvc-panel__accent { display: none; }
.gsvc-panel__body { position: relative; z-index: 2; padding: 30px; color: #fff; width: 100%; }
.gsvc-panel__title {
	display: block; position: relative; font-size: 20px; font-weight: 700; line-height: 1.22; color: #fff;
	padding-bottom: 12px;
}
.gsvc-panel__title::after {
	content: ''; position: absolute; left: 0; bottom: 0; width: 38px; height: 3px; border-radius: 3px;
	background: var(--wd-primary-color, rgb(32,172,179)); transition: width .4s ease;
}
.gsvc-panel:hover .gsvc-panel__title::after { width: 64px; }
.gsvc-panel__text {
	display: block; color: rgba(255,255,255,.86); font-size: 14px; line-height: 1.5; margin: 0;
	max-height: 0; opacity: 0; overflow: hidden;
	transition: max-height .55s ease, opacity .4s ease, margin .4s ease;
}
.gsvc-panel:hover .gsvc-panel__text { max-height: 170px; opacity: 1; margin: 14px 0 16px; }
.gsvc-panel__more {
	display: inline-flex; align-items: center; gap: 8px; color: #fff; font-size: 12px; font-weight: 700;
	letter-spacing: .06em; text-transform: uppercase; max-height: 0; opacity: 0; overflow: hidden;
	transition: max-height .55s ease, opacity .4s ease;
}
.gsvc-panel:hover .gsvc-panel__more { max-height: 40px; opacity: 1; }

@media (max-width: 900px) {
	.alq-svc__head { flex-direction: column; align-items: flex-start; gap: 12px; }
	.alq-svc__row { flex-direction: column; height: auto; }
	.gsvc-panel { height: 220px; flex: none; }
	.alq-svc__row:hover .gsvc-panel { flex-grow: 0; }
	.gsvc-panel__text { max-height: 170px; opacity: 1; margin: 14px 0 12px; }
	.gsvc-panel__more { max-height: 40px; opacity: 1; }
}

/* Fix expansión: el panel con hover debe ganar en especificidad */
.alq-svc__row:hover .gsvc-panel:hover { flex-grow: 2.8; box-shadow: 0 18px 44px rgba(6,12,20,.3); }

/* ==========================================================================
   ALQUISER — Servicios v2 (grid, imagen B/N→color + panel que sube al hover)
   ========================================================================== */
.alq-svc2 { max-width: 1240px; margin: 0 auto; padding: 20px 15px 10px; font-family: 'Montserrat','Kumbh Sans',sans-serif; }
.alq-svc2__head { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin: 0 0 26px; }
.alq-svc2__title { margin: 0; font-size: 30px; font-weight: 800; color: #1a2230; line-height: 1.1; }
.alq-svc2__all {
	display: inline-flex; align-items: center; gap: 8px; background: var(--wd-primary-color, rgb(32,172,179));
	color: #fff !important; padding: 11px 20px; border-radius: 10px; font-size: 13px; font-weight: 700;
	letter-spacing: .05em; text-transform: uppercase; white-space: nowrap; transition: filter .2s ease;
}
.alq-svc2__all:hover { filter: brightness(1.08); color: #fff !important; }

.alq-svc2__grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 22px; }
@media (max-width: 1024px) { .alq-svc2__grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 560px) { .alq-svc2__grid { grid-template-columns: 1fr; } }

.gsvc2-card {
	position: relative; display: block; height: 430px; border-radius: 20px; overflow: hidden; text-decoration: none;
	box-shadow: 0 6px 20px rgba(6,12,20,.12); transition: transform .4s ease, box-shadow .4s ease;
}
.gsvc2-card:hover { transform: translateY(-6px); box-shadow: 0 20px 44px rgba(6,12,20,.26); }
.gsvc2-card__img {
	position: absolute; inset: 0; z-index: 0; background-size: cover; background-position: center;
	filter: grayscale(85%) contrast(1.02); transition: filter .6s ease, transform .7s ease;
}
.gsvc2-card:hover .gsvc2-card__img { filter: grayscale(0); transform: scale(1.08); }
.gsvc2-card__panel {
	position: absolute; left: 0; right: 0; bottom: 0; z-index: 1; height: 42%;
	background: linear-gradient(to top, rgba(6,14,22,.92) 0%, rgba(6,14,22,.55) 60%, transparent 100%);
	transition: height .55s cubic-bezier(.22,.61,.36,1), background .5s ease;
}
.gsvc2-card:hover .gsvc2-card__panel {
	height: 100%;
	background: linear-gradient(to top, rgba(6,14,22,.95) 0%, rgba(9,32,38,.78) 55%, rgba(9,32,38,.35) 100%);
}
.gsvc2-card__icon {
	position: absolute; top: 20px; right: 20px; z-index: 3; width: 46px; height: 46px; border-radius: 50%;
	display: flex; align-items: center; justify-content: center; color: #fff;
	background: rgba(255,255,255,.16); border: 1px solid rgba(255,255,255,.4);
	-webkit-backdrop-filter: blur(4px); backdrop-filter: blur(4px);
	transition: background .45s ease, border-color .45s ease, transform .45s ease;
}
.gsvc2-card:hover .gsvc2-card__icon { background: var(--wd-primary-color, rgb(32,172,179)); border-color: transparent; transform: scale(1.08); }
.gsvc2-card__body { position: absolute; left: 0; right: 0; bottom: 0; z-index: 2; padding: 26px; color: #fff; }
.gsvc2-card__eyebrow { display: block; font-size: 11px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; color: #7fe0e6; margin-bottom: 8px; }
.gsvc2-card__title { display: block; font-size: 19px; font-weight: 700; line-height: 1.24; color: #fff; }
.gsvc2-card__desc {
	display: block; color: rgba(255,255,255,.88); font-size: 13.5px; line-height: 1.5; margin: 0;
	max-height: 0; opacity: 0; overflow: hidden;
	transition: max-height .55s ease, opacity .4s ease, margin .4s ease;
}
.gsvc2-card:hover .gsvc2-card__desc { max-height: 160px; opacity: 1; margin: 12px 0 14px; }
.gsvc2-card__more {
	display: inline-flex; align-items: center; gap: 8px; color: #fff; font-size: 12px; font-weight: 700;
	letter-spacing: .06em; text-transform: uppercase; max-height: 0; opacity: 0; overflow: hidden;
	transition: max-height .55s ease, opacity .4s ease;
}
.gsvc2-card:hover .gsvc2-card__more { max-height: 36px; opacity: 1; }
@media (max-width: 560px) {
	.gsvc2-card__img { filter: grayscale(0); }
	.gsvc2-card__panel { height: 72%; }
	.gsvc2-card__desc, .gsvc2-card__more { max-height: 170px; opacity: 1; margin: 12px 0 0; }
}

/* ==========================================================================
   ALQUISER — Proyectos destacados (3 versiones modernas) — base compartida
   ========================================================================== */
.gdst { max-width: 1240px; margin: 0 auto; padding: 20px 15px 10px; font-family: 'Montserrat','Kumbh Sans',sans-serif; }
.gdst__head { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin: 0 0 24px; }
.gdst__title { margin: 0; font-size: 30px; font-weight: 800; color: #1a2230; line-height: 1.1; }
.gdst__all { display: inline-flex; align-items: center; gap: 8px; color: var(--wd-primary-color, rgb(32,172,179)); font-size: 13px; font-weight: 700; letter-spacing: .05em; text-transform: uppercase; white-space: nowrap; }
.gdst__all:hover { color: var(--wd-primary-color, rgb(32,172,179)); text-decoration: underline; }
.gdst-chip { position: absolute; top: 0; left: 0; z-index: 3; display: inline-flex; align-items: center; gap: 7px; margin: 18px; padding: 7px 14px; border-radius: 30px; background: rgba(255,255,255,.16); border: 1px solid rgba(255,255,255,.35); color: #fff; font-size: 12px; font-weight: 600; -webkit-backdrop-filter: blur(6px); backdrop-filter: blur(6px); }
.gdst-chip__i { display: inline-flex; } .gdst-chip__i svg { width: 15px; height: 15px; display: block; }
.gdst-card__more, .gdst2-card .gdst-card__more, .gdst3__feat .gdst-card__more { display: inline-flex; align-items: center; gap: 8px; color: #fff; font-size: 12px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; }

/* ---- V1: BENTO ---- */
.gdst1__grid { display: grid; grid-template-columns: repeat(3, 1fr); grid-template-rows: repeat(2, 235px); gap: 18px; }
.gdst1__grid .gdst-card:nth-child(1) { grid-column: 1 / 2; grid-row: 1 / 3; }
.gdst1__grid .gdst-card:nth-child(2) { grid-column: 2 / 4; grid-row: 1 / 2; }
.gdst1__grid .gdst-card:nth-child(3) { grid-column: 2 / 3; grid-row: 2 / 3; }
.gdst1__grid .gdst-card:nth-child(4) { grid-column: 3 / 4; grid-row: 2 / 3; }
.gdst-card { position: relative; display: flex; align-items: flex-end; border-radius: 18px; overflow: hidden; background-size: cover; background-position: center; text-decoration: none; box-shadow: 0 6px 20px rgba(6,12,20,.14); transition: transform .5s ease, box-shadow .4s ease; }
.gdst-card:hover { transform: translateY(-4px); box-shadow: 0 18px 40px rgba(6,12,20,.28); }
.gdst-card__scrim { position: absolute; inset: 0; z-index: 1; background: linear-gradient(to top, rgba(6,12,20,.9) 0%, rgba(6,12,20,.35) 52%, rgba(6,12,20,.05) 84%); transition: background .4s ease; }
.gdst-card:hover .gdst-card__scrim { background: linear-gradient(to top, rgba(6,12,20,.93) 0%, rgba(6,12,20,.5) 60%, rgba(6,12,20,.12) 100%); }
.gdst-card__body { position: relative; z-index: 2; padding: 24px; color: #fff; width: 100%; }
.gdst-card__title { display: -webkit-box; font-size: 18px; font-weight: 700; line-height: 1.25; color: #fff; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.gdst1__grid .gdst-card:nth-child(1) .gdst-card__title { font-size: 23px; }
.gdst-card .gdst-card__more { max-height: 0; opacity: 0; overflow: hidden; margin-top: 0; transition: max-height .45s ease, opacity .35s ease, margin .35s ease; }
.gdst-card:hover .gdst-card__more { max-height: 34px; opacity: 1; margin-top: 12px; }
@media (max-width: 900px) {
	.gdst1__grid { grid-template-columns: 1fr 1fr; grid-template-rows: auto; }
	.gdst1__grid .gdst-card { grid-column: auto !important; grid-row: auto !important; height: 220px; }
}
@media (max-width: 560px) { .gdst1__grid { grid-template-columns: 1fr; } }

/* ---- V2: POSTERS ---- */
.gdst2__grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; }
@media (max-width: 900px) { .gdst2__grid { grid-template-columns: 1fr 1fr; } }
@media (max-width: 560px) { .gdst2__grid { grid-template-columns: 1fr; } }
.gdst2-card { position: relative; display: block; height: 440px; border-radius: 20px; overflow: hidden; text-decoration: none; box-shadow: 0 6px 20px rgba(6,12,20,.14); transition: transform .4s ease, box-shadow .4s ease; }
.gdst2-card:hover { transform: translateY(-6px); box-shadow: 0 20px 44px rgba(6,12,20,.28); }
.gdst2-card__img { position: absolute; inset: 0; z-index: 0; background-size: cover; background-position: center; transition: transform .7s ease; }
.gdst2-card:hover .gdst2-card__img { transform: scale(1.08); }
.gdst2-card__panel { position: absolute; left: 0; right: 0; bottom: 0; z-index: 1; height: 44%; background: linear-gradient(to top, rgba(6,14,22,.92), rgba(6,14,22,.5) 60%, transparent); transition: height .55s cubic-bezier(.22,.61,.36,1), background .5s ease; }
.gdst2-card:hover .gdst2-card__panel { height: 100%; background: linear-gradient(to top, rgba(6,14,22,.95), rgba(9,32,38,.76) 55%, rgba(9,32,38,.3)); }
.gdst2-card__body { position: absolute; left: 0; right: 0; bottom: 0; z-index: 2; padding: 26px; color: #fff; }
.gdst2-card__title { display: -webkit-box; font-size: 20px; font-weight: 700; line-height: 1.24; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.gdst2-card__desc { display: block; color: rgba(255,255,255,.87); font-size: 13.5px; line-height: 1.5; margin: 0; max-height: 0; opacity: 0; overflow: hidden; transition: max-height .55s ease, opacity .4s ease, margin .4s ease; }
.gdst2-card:hover .gdst2-card__desc { max-height: 150px; opacity: 1; margin: 10px 0 14px; }
.gdst2-card .gdst-card__more { max-height: 0; opacity: 0; overflow: hidden; transition: max-height .55s ease, opacity .4s ease; }
.gdst2-card:hover .gdst-card__more { max-height: 34px; opacity: 1; }
@media (max-width: 560px) { .gdst2-card__panel { height: 70%; } .gdst2-card__desc, .gdst2-card .gdst-card__more { max-height: 150px; opacity: 1; margin-top: 10px; } }

/* ---- V3: EDITORIAL (destacada + lista) ---- */
.gdst3__wrap { display: grid; grid-template-columns: 1.35fr 1fr; gap: 24px; }
@media (max-width: 900px) { .gdst3__wrap { grid-template-columns: 1fr; } }
.gdst3__feat { position: relative; display: flex; align-items: flex-end; min-height: 480px; border-radius: 20px; overflow: hidden; background-size: cover; background-position: center; text-decoration: none; box-shadow: 0 8px 26px rgba(6,12,20,.2); transition: box-shadow .4s ease; }
.gdst3__feat:hover { box-shadow: 0 20px 46px rgba(6,12,20,.32); }
.gdst3__feat-scrim { position: absolute; inset: 0; z-index: 1; background: linear-gradient(to top, rgba(6,12,20,.92), rgba(6,12,20,.4) 55%, rgba(6,12,20,.08)); }
.gdst3__feat-body { position: relative; z-index: 2; padding: 34px; color: #fff; }
.gdst3__feat-title { display: block; font-size: 28px; font-weight: 700; line-height: 1.15; }
.gdst3__feat-desc { display: block; color: rgba(255,255,255,.88); font-size: 15px; line-height: 1.55; margin: 12px 0 16px; }
.gdst3__list { display: flex; flex-direction: column; gap: 14px; }
.gdst3__row { display: flex; align-items: center; gap: 16px; padding: 14px; border-radius: 16px; background: #fff; border: 1px solid #eef0f2; box-shadow: 0 2px 10px rgba(16,24,40,.05); text-decoration: none; transition: transform .3s ease, box-shadow .3s ease, border-color .3s ease; flex: 1 1 0; }
.gdst3__row:hover { transform: translateX(4px); box-shadow: 0 12px 26px rgba(16,24,40,.12); border-color: var(--wd-primary-color, rgb(32,172,179)); }
.gdst3__row-thumb { flex: 0 0 86px; height: 66px; border-radius: 12px; background-size: cover; background-position: center; }
.gdst3__row-info { flex: 1 1 auto; min-width: 0; }
.gdst3__row-cat { display: block; font-size: 11px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: var(--wd-primary-color, rgb(32,172,179)); margin-bottom: 3px; }
.gdst3__row-title { display: -webkit-box; font-size: 14px; font-weight: 600; color: #1a2230; line-height: 1.3; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.gdst3__row-arrow { flex: 0 0 auto; color: #c2c9d1; font-size: 18px; transition: color .3s ease, transform .3s ease; }
.gdst3__row:hover .gdst3__row-arrow { color: var(--wd-primary-color, rgb(32,172,179)); transform: translateX(3px); }

/* =========================================================================
 * ALQUISER — NATIVO ELEMENTOR: Servicios (acordeón expandible)
 * Sección editable con widgets nativos; la animación viaja con la clase
 * .elementor-element-gsvcnat (id interno de la sección) — no requiere clase manual.
 * ====================================================================== */
/* fila = flex (cubre DOM optimizado .elementor-container y legacy .elementor-row) */
.elementor-element-gsvcnat > .elementor-container,
.elementor-element-gsvcnat > .elementor-container > .elementor-row {
	display: flex !important;
	flex-wrap: nowrap !important;
	gap: 16px;
	height: 460px;
	align-items: stretch;
}
.elementor-element-gsvcnat .elementor-column {
	width: auto !important;
	flex: 1 1 0 !important;
	min-width: 0;
	transition: flex-grow .55s cubic-bezier(.2,.7,.2,1);
}
.elementor-element-gsvcnat:hover .elementor-column { flex-grow: .6; }
.elementor-element-gsvcnat .elementor-column:hover { flex-grow: 2.6; }
/* panel = wrapper poblado con la imagen de fondo */
.elementor-element-gsvcnat .elementor-widget-wrap.elementor-element-populated {
	position: relative;
	height: 100%;
	border-radius: 18px;
	overflow: hidden;
	padding: 30px !important;
	display: flex !important;
	flex-direction: column;
	justify-content: flex-end;
	align-content: flex-start;
	background-size: cover !important;
	background-position: center !important;
	box-shadow: 0 10px 26px rgba(6,12,20,.16);
	transition: box-shadow .5s;
}
.elementor-element-gsvcnat .elementor-column:hover .elementor-widget-wrap.elementor-element-populated {
	box-shadow: 0 18px 44px rgba(6,12,20,.3);
}
.elementor-element-gsvcnat .elementor-widget-wrap.elementor-element-populated::before {
	content: ""; position: absolute; inset: 0; z-index: 0; pointer-events: none;
	background: linear-gradient(180deg, rgba(8,15,25,.12) 0%, rgba(8,15,25,.52) 55%, rgba(6,12,20,.86) 100%);
	transition: background .5s;
}
.elementor-element-gsvcnat .elementor-column:hover .elementor-widget-wrap.elementor-element-populated::before {
	background: linear-gradient(180deg, rgba(8,15,25,.28) 0%, rgba(8,15,25,.68) 50%, rgba(4,9,16,.92) 100%);
}
/* los widgets van sobre el scrim, alineados a la izquierda-abajo */
.elementor-element-gsvcnat .elementor-widget {
	position: relative; z-index: 2; width: 100%; margin: 0;
}
.elementor-element-gsvcnat .elementor-widget-heading .elementor-heading-title {
	color: #fff !important; font-size: 21px; font-weight: 800; line-height: 1.2; margin: 0;
	position: relative; padding-bottom: 12px;
}
.elementor-element-gsvcnat .elementor-widget-heading .elementor-heading-title::after {
	content: ""; position: absolute; left: 0; bottom: 0; width: 28px; height: 3px;
	background: var(--wd-primary-color, rgb(32,172,179)); border-radius: 3px; transition: width .5s;
}
.elementor-element-gsvcnat .elementor-column:hover .elementor-widget-heading .elementor-heading-title::after { width: 64px; }
/* texto: oculto hasta hover */
.elementor-element-gsvcnat .elementor-widget-text-editor {
	max-height: 0; opacity: 0; overflow: hidden;
	transition: max-height .5s ease, opacity .45s ease, margin .5s ease;
}
.elementor-element-gsvcnat .elementor-column:hover .elementor-widget-text-editor {
	max-height: 200px; opacity: 1; margin-top: 12px;
}
.elementor-element-gsvcnat .elementor-widget-text-editor,
.elementor-element-gsvcnat .elementor-widget-text-editor * {
	color: rgba(255,255,255,.9) !important; font-size: 14px; line-height: 1.6;
}
/* botón: oculto hasta hover */
.elementor-element-gsvcnat .elementor-widget-button {
	max-height: 0; opacity: 0; overflow: hidden;
	transition: max-height .5s ease, opacity .45s ease, margin .5s ease;
}
.elementor-element-gsvcnat .elementor-column:hover .elementor-widget-button {
	max-height: 60px; opacity: 1; margin-top: 14px;
}
.elementor-element-gsvcnat .elementor-widget-button .elementor-button {
	background: rgba(255,255,255,.16); border: 1px solid rgba(255,255,255,.5);
	color: #fff !important; border-radius: 999px; padding: 9px 18px; font-weight: 700;
	font-size: 12px; letter-spacing: .04em; text-transform: uppercase;
}
.elementor-element-gsvcnat .elementor-widget-button .elementor-button:hover {
	background: var(--wd-primary-color, rgb(32,172,179)); border-color: transparent;
}
@media (max-width: 1024px) {
	.elementor-element-gsvcnat > .elementor-container,
	.elementor-element-gsvcnat > .elementor-container > .elementor-row {
		flex-direction: column !important; height: auto;
	}
	.elementor-element-gsvcnat .elementor-column { flex: none !important; width: 100% !important; }
	.elementor-element-gsvcnat:hover .elementor-column,
	.elementor-element-gsvcnat .elementor-column:hover { flex-grow: 0; }
	.elementor-element-gsvcnat .elementor-widget-wrap.elementor-element-populated { height: 240px; }
	.elementor-element-gsvcnat .elementor-widget-text-editor { max-height: 200px; opacity: 1; margin-top: 12px; }
	.elementor-element-gsvcnat .elementor-widget-button { max-height: 60px; opacity: 1; margin-top: 12px; }
}

/* =========================================================================
 * ALQUISER — NATIVO ELEMENTOR: Proyectos destacados (3 versiones editables)
 * .elementor-element-gdstn1 (bento) | gdstn2 (posters) | gdstn3 (editorial)
 * ====================================================================== */
/* ---- comunes a las tarjetas nativas de destacados ---- */
.elementor-element-gdstn1 .elementor-widget-wrap.elementor-element-populated,
.elementor-element-gdstn2 .elementor-widget-wrap.elementor-element-populated,
.elementor-element-gdstn3 .elementor-widget-wrap.elementor-element-populated {
	position: relative; height: 100%; border-radius: 18px; overflow: hidden;
	padding: 26px !important; display: flex !important; flex-direction: column;
	justify-content: flex-end; align-content: flex-start;
	background-size: cover !important; background-position: center !important;
	box-shadow: 0 10px 26px rgba(6,12,20,.16); transition: box-shadow .5s, transform .5s;
}
.elementor-element-gdstn1 .elementor-widget-wrap.elementor-element-populated::before,
.elementor-element-gdstn2 .elementor-widget-wrap.elementor-element-populated::before,
.elementor-element-gdstn3 .elementor-widget-wrap.elementor-element-populated::before {
	content: ""; position: absolute; inset: 0; z-index: 0; pointer-events: none;
	background: linear-gradient(180deg, rgba(8,15,25,.05) 0%, rgba(8,15,25,.5) 55%, rgba(6,12,20,.88) 100%);
	transition: background .5s;
}
.elementor-element-gdstn1 .elementor-widget, .elementor-element-gdstn2 .elementor-widget, .elementor-element-gdstn3 .elementor-widget {
	position: relative; z-index: 2; width: 100%; margin: 0;
}
/* eyebrow de categoría (heading pequeño) — primer heading de cada tarjeta */
.elementor-element-gdstn1 .gdstn-cat .elementor-heading-title,
.elementor-element-gdstn2 .gdstn-cat .elementor-heading-title,
.elementor-element-gdstn3 .gdstn-cat .elementor-heading-title {
	color: #fff !important; font-size: 11px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase;
	display: inline-block; background: rgba(255,255,255,.16); backdrop-filter: blur(4px);
	padding: 5px 11px; border-radius: 999px; margin: 0 0 10px;
}
/* título de tarjeta */
.elementor-element-gdstn1 .gdstn-title .elementor-heading-title,
.elementor-element-gdstn2 .gdstn-title .elementor-heading-title,
.elementor-element-gdstn3 .gdstn-title .elementor-heading-title {
	color: #fff !important; font-size: 19px; font-weight: 800; line-height: 1.22; margin: 0;
}
/* botón "Ver proyecto" */
.elementor-element-gdstn1 .elementor-widget-button .elementor-button,
.elementor-element-gdstn2 .elementor-widget-button .elementor-button,
.elementor-element-gdstn3 .elementor-widget-button .elementor-button {
	background: rgba(255,255,255,.16); border: 1px solid rgba(255,255,255,.5); color: #fff !important;
	border-radius: 999px; padding: 8px 16px; font-weight: 700; font-size: 11px; letter-spacing: .04em; text-transform: uppercase;
}
.elementor-element-gdstn1 .elementor-widget-button .elementor-button:hover,
.elementor-element-gdstn2 .elementor-widget-button .elementor-button:hover,
.elementor-element-gdstn3 .elementor-widget-button .elementor-button:hover {
	background: var(--wd-primary-color, rgb(32,172,179)); border-color: transparent;
}

/* ---- V1 BENTO ---- */
.elementor-element-gdstn1 > .elementor-container,
.elementor-element-gdstn1 > .elementor-container > .elementor-row {
	display: grid !important; grid-template-columns: repeat(3, 1fr); grid-auto-rows: 232px; gap: 16px; max-width: 1240px;
}
.elementor-element-gdstn1 .elementor-column { width: auto !important; margin: 0 !important; }
.elementor-element-gdstn1 .elementor-column:nth-child(1) { grid-column: 1; grid-row: 1 / span 2; }
.elementor-element-gdstn1 .elementor-column:nth-child(2) { grid-column: 2 / span 2; grid-row: 1; }
.elementor-element-gdstn1 .elementor-column:nth-child(3) { grid-column: 2; grid-row: 2; }
.elementor-element-gdstn1 .elementor-column:nth-child(4) { grid-column: 3; grid-row: 2; }
.elementor-element-gdstn1 .elementor-column:hover .elementor-element-populated { transform: translateY(-4px); box-shadow: 0 20px 46px rgba(6,12,20,.32); }
.elementor-element-gdstn1 .elementor-column:hover .elementor-element-populated::before { background: linear-gradient(180deg, rgba(8,15,25,.2) 0%, rgba(8,15,25,.62) 55%, rgba(4,9,16,.92) 100%); }
@media (max-width: 1024px) {
	.elementor-element-gdstn1 > .elementor-container,
	.elementor-element-gdstn1 > .elementor-container > .elementor-row { grid-template-columns: 1fr 1fr; grid-auto-rows: 200px; }
	.elementor-element-gdstn1 .elementor-column:nth-child(n) { grid-column: auto !important; grid-row: auto !important; }
}
@media (max-width: 600px) {
	.elementor-element-gdstn1 > .elementor-container,
	.elementor-element-gdstn1 > .elementor-container > .elementor-row { grid-template-columns: 1fr; }
}

/* ---- V2 POSTERS (panel + reveal al hover) ---- */
.elementor-element-gdstn2 > .elementor-container,
.elementor-element-gdstn2 > .elementor-container > .elementor-row {
	display: grid !important; grid-template-columns: repeat(3, 1fr); gap: 20px; max-width: 1240px;
}
.elementor-element-gdstn2 .elementor-column { width: auto !important; margin: 0 !important; }
.elementor-element-gdstn2 .elementor-widget-wrap.elementor-element-populated { height: 440px; }
.elementor-element-gdstn2 .elementor-column:hover .elementor-element-populated { box-shadow: 0 20px 46px rgba(6,12,20,.32); }
.elementor-element-gdstn2 .elementor-column:hover .elementor-element-populated::before { background: linear-gradient(180deg, rgba(8,15,25,.2) 0%, rgba(8,15,25,.66) 50%, rgba(4,9,16,.94) 100%); }
.elementor-element-gdstn2 .gdstn-desc { max-height: 0; opacity: 0; overflow: hidden; transition: max-height .5s ease, opacity .45s ease, margin .5s ease; }
.elementor-element-gdstn2 .elementor-column:hover .gdstn-desc { max-height: 160px; opacity: 1; margin-top: 10px; }
.elementor-element-gdstn2 .gdstn-desc .elementor-heading-title,
.elementor-element-gdstn2 .gdstn-desc * { color: rgba(255,255,255,.9) !important; font-size: 13.5px; font-weight: 500; line-height: 1.55; }
.elementor-element-gdstn2 .elementor-widget-button { max-height: 0; opacity: 0; overflow: hidden; transition: max-height .5s ease, opacity .45s ease, margin .5s ease; }
.elementor-element-gdstn2 .elementor-column:hover .elementor-widget-button { max-height: 60px; opacity: 1; margin-top: 14px; }
@media (max-width: 1024px) {
	.elementor-element-gdstn2 > .elementor-container,
	.elementor-element-gdstn2 > .elementor-container > .elementor-row { grid-template-columns: 1fr; }
	.elementor-element-gdstn2 .gdstn-desc { max-height: 160px; opacity: 1; margin-top: 10px; }
	.elementor-element-gdstn2 .elementor-widget-button { max-height: 60px; opacity: 1; margin-top: 12px; }
}

/* ---- V3 EDITORIAL (destacada + lista) ---- */
.elementor-element-gdstn3 > .elementor-container,
.elementor-element-gdstn3 > .elementor-container > .elementor-row {
	display: grid !important; grid-template-columns: 1.35fr 1fr; grid-auto-rows: 1fr; gap: 16px; max-width: 1240px; min-height: 470px;
}
.elementor-element-gdstn3 .elementor-column { width: auto !important; margin: 0 !important; }
.elementor-element-gdstn3 .elementor-column:first-child { grid-column: 1; grid-row: 1 / -1; }
.elementor-element-gdstn3 .elementor-column:not(:first-child) { grid-column: 2; }
.elementor-element-gdstn3 .elementor-column:first-child .gdstn-title .elementor-heading-title { font-size: 26px; }
.elementor-element-gdstn3 .elementor-column:first-child .gdstn-desc .elementor-heading-title { color: rgba(255,255,255,.9) !important; font-size: 14px; font-weight: 500; line-height: 1.6; margin-top: 10px; display: block; }
/* filas de la lista: tarjeta compacta con imagen de fondo lateral */
.elementor-element-gdstn3 .elementor-column:not(:first-child) .elementor-widget-wrap.elementor-element-populated {
	height: 100%; min-height: 108px; padding: 18px 20px !important; justify-content: center;
	border: 1px solid #eef1f4; box-shadow: 0 6px 16px rgba(6,12,20,.06);
}
.elementor-element-gdstn3 .elementor-column:not(:first-child) .elementor-widget-wrap.elementor-element-populated::before {
	background: linear-gradient(90deg, rgba(8,15,25,.72) 0%, rgba(8,15,25,.35) 55%, rgba(8,15,25,.12) 100%);
}
.elementor-element-gdstn3 .elementor-column:not(:first-child) .gdstn-cat .elementor-heading-title { font-size: 10px; margin-bottom: 6px; }
.elementor-element-gdstn3 .elementor-column:not(:first-child) .gdstn-title .elementor-heading-title { font-size: 15px; }
.elementor-element-gdstn3 .elementor-column:not(:first-child):hover .elementor-element-populated { transform: translateX(4px); box-shadow: 0 12px 26px rgba(6,12,20,.16); }
@media (max-width: 1024px) {
	.elementor-element-gdstn3 > .elementor-container,
	.elementor-element-gdstn3 > .elementor-container > .elementor-row { grid-template-columns: 1fr; }
	.elementor-element-gdstn3 .elementor-column:first-child, .elementor-element-gdstn3 .elementor-column:not(:first-child) { grid-column: 1; grid-row: auto; }
	.elementor-element-gdstn3 .elementor-column:first-child .elementor-widget-wrap.elementor-element-populated { min-height: 320px; }
}

/* =========================================================================
 * ALQUISER — Carrusel bucle continuo de "Artículos Técnicos" (hub Visión Técnica)
 * ====================================================================== */
/* El avance ya no es una animación de `transform` sino desplazamiento real del
 * carril. Así el visitante puede arrastrarlo, deslizarlo con el dedo, usar la
 * rueda o las flechas del teclado, y los botones solo tienen que llamar a
 * scrollBy(). El temporizador que lo mueve solo está en functions.php.
 * El degradado de los bordes va en el carril, no en el contenedor, para que los
 * botones no se desvanezcan con él. */
.gh-marquee { position: relative; padding: 8px 0; margin: 0 -4px; }
.gh-marquee__track { display: flex; overflow-x: auto; overscroll-behavior-x: contain;
	scrollbar-width: none; -ms-overflow-style: none; cursor: grab;
	-webkit-mask-image: linear-gradient(90deg, transparent 0, #000 4%, #000 96%, transparent 100%);
	mask-image: linear-gradient(90deg, transparent 0, #000 4%, #000 96%, transparent 100%); }
.gh-marquee__track::-webkit-scrollbar { width: 0; height: 0; display: none; }
.gh-marquee__track.is-arrastrando { cursor: grabbing; }
.gh-marquee__set { display: flex; gap: 22px; padding-right: 22px; flex: 0 0 auto; }
.gh-marquee .gh-card { flex: 0 0 300px; width: 300px; margin: 0; }

/* Flechas. Blanco sobre azul de marca: 12,4:1 en reposo y 12,4:1 al pasar el
 * ratón, muy por encima del 4,5:1 que exige AA. */
.gh-marquee__nav { position: absolute; top: 50%; transform: translateY(-50%); z-index: 3;
	width: 44px; height: 44px; min-width: 0; min-height: 0; padding: 0; border-radius: 50%;
	border: 1px solid rgba(0, 45, 82, .14); background: #fff; color: #002D52;
	box-shadow: 0 4px 14px rgba(0, 45, 82, .16); cursor: pointer;
	display: flex; align-items: center; justify-content: center;
	transition: background-color .18s ease, color .18s ease, box-shadow .18s ease; }
.gh-marquee__nav svg { width: 18px; height: 18px; display: block; }
.gh-marquee__nav:hover { background: #002D52; color: #fff; box-shadow: 0 6px 18px rgba(0, 45, 82, .28); }
.gh-marquee__nav:focus-visible { outline: 3px solid #FFAA01; outline-offset: 2px; }
.gh-marquee__nav--prev { left: 6px; }
.gh-marquee__nav--next { right: 6px; }
@media (max-width: 768px) {
	.gh-marquee__set { gap: 16px; padding-right: 16px; }
	.gh-marquee .gh-card { flex-basis: 280px; width: 280px; }
}
@media (max-width: 600px) {
	.gh-marquee .gh-card { flex-basis: 82vw; width: 82vw; }
	.gh-marquee__nav { width: 38px; height: 38px; }
	.gh-marquee__nav svg { width: 16px; height: 16px; }
}
/* Sin avance automatico no hace falta la copia del juego de tarjetas, y dejarla
 * visible mostraria cada articulo dos veces. Al ocultarla, el temporizador y el
 * recolocador quedan tambien desactivados desde JS: ver functions.php. */
@media (prefers-reduced-motion: reduce) {
	.gh-marquee__set:last-child { display: none; }
}

/* =========================================================================
 * ALQUISER — Hero moderno para archivos de blog (categoría/tag) + sin migas
 * ====================================================================== */
/* Ocultar la barra de migas/título del tema en archivos de blog */
body.category .wd-page-title,
body.tag .wd-page-title,
body.blog .wd-page-title { display: none !important; }

.gh-archive-header { padding-top: 26px; }
.gh-arch-hero {
	position: relative; overflow: hidden; isolation: isolate;
	/* ancho completo (full-bleed) rompiendo el contenedor */
	width: 100vw; max-width: 100vw;
	margin-left: calc(50% - 50vw); margin-right: calc(50% - 50vw); margin-bottom: 6px;
	border-radius: 0;
	padding: clamp(34px, 5.2vw, 60px) 20px;
	text-align: center; color: #fff;
	background-color: #0c2029; background-size: cover; background-position: center;
}
/* Scrim/degradado sobre la imagen (o el color) para que el texto se lea */
.gh-arch-hero::before {
	content: ""; position: absolute; inset: 0; z-index: 1; pointer-events: none;
	background:
		radial-gradient(120% 150% at 8% -10%, rgba(32,172,179,.34) 0%, rgba(32,172,179,0) 46%),
		radial-gradient(130% 170% at 108% 120%, rgba(32,172,179,.22) 0%, rgba(12,32,41,0) 52%),
		linear-gradient(135deg, rgba(12,32,41,.60) 0%, rgba(10,26,34,.70) 55%, rgba(8,20,28,.82) 100%);
}
.gh-arch-hero.has-image::before {
	background:
		radial-gradient(120% 150% at 8% -10%, rgba(32,172,179,.26) 0%, rgba(32,172,179,0) 46%),
		linear-gradient(135deg, rgba(10,26,34,.80) 0%, rgba(12,32,41,.62) 52%, rgba(8,20,28,.88) 100%);
}
/* Rejilla sutil */
.gh-arch-hero__grid {
	position: absolute; inset: 0; z-index: 2; pointer-events: none; opacity: .5;
	background-image:
		linear-gradient(rgba(255,255,255,.055) 1px, transparent 1px),
		linear-gradient(90deg, rgba(255,255,255,.055) 1px, transparent 1px);
	background-size: 46px 46px;
	-webkit-mask-image: radial-gradient(80% 78% at 50% 26%, #000 38%, transparent 100%);
	mask-image: radial-gradient(80% 78% at 50% 26%, #000 38%, transparent 100%);
}
/* Resplandor */
.gh-arch-hero__glow {
	position: absolute; z-index: 2; pointer-events: none; width: 420px; height: 420px;
	top: -160px; right: -120px; border-radius: 50%;
	background: radial-gradient(circle, rgba(127,224,228,.32) 0%, rgba(127,224,228,0) 70%);
	filter: blur(6px);
}
.gh-arch-hero__inner { position: relative; z-index: 3; max-width: 720px; margin: 0 auto; }
.gh-arch-hero__eyebrow {
	display: inline-flex; align-items: center; gap: 8px; margin-bottom: 18px;
	padding: 7px 15px 7px 11px; border-radius: 999px;
	background: rgba(255,255,255,.10); border: 1px solid rgba(255,255,255,.20);
	color: #bdeef0; font-size: 12px; font-weight: 700; letter-spacing: .14em; text-transform: uppercase;
}
.gh-arch-hero__i { display: inline-flex; width: 16px; height: 16px; color: #7fe0e4; }
.gh-arch-hero__i svg { width: 16px; height: 16px; stroke: #7fe0e4; }
.gh-arch-hero__title {
	margin: 0; color: #fff; font-weight: 800; line-height: 1.04; letter-spacing: -.015em;
	font-size: clamp(32px, 5vw, 52px);
}
.gh-arch-hero__desc {
	margin: 15px auto 0; max-width: 600px; color: rgba(255,255,255,.82);
	font-size: 16px; line-height: 1.6;
}
.gh-arch-hero__count {
	display: inline-flex; align-items: center; gap: 8px; margin-top: 22px;
	padding: 6px 15px; border-radius: 999px;
	background: rgba(32,172,179,.20); border: 1px solid rgba(127,224,228,.38);
	color: #d3f2f3; font-size: 12.5px; font-weight: 700; letter-spacing: .03em;
}
.gh-arch-hero__dot { width: 7px; height: 7px; border-radius: 50%; background: #7fe0e4; box-shadow: 0 0 0 4px rgba(127,224,228,.18); }
/* La barra de categorías queda como filtro debajo del hero */
.gh-archive-header .gh-catbar { margin-top: 22px; }
@media (max-width: 768px) {
	.gh-arch-hero { padding: 30px 18px 34px; }
	.gh-arch-hero__desc { font-size: 15px; margin-top: 12px; }
	.gh-arch-hero__count { margin-top: 16px; }
}

/* Fix: el tema fuerza color gris en el h1 del archivo — forzar blanco */
.gh-arch-hero__title,
.gh-archive-header .gh-arch-hero__title {
	color: #fff !important;
	-webkit-text-fill-color: #fff !important;
}
.gh-archive-header { padding-top: 42px; }

/* =========================================================================
 * ALQUISER — Rediseño hero archivo: izquierda + sin píldoras (Fase 18)
 * ====================================================================== */
.gh-arch-hero { text-align: left; }
.gh-arch-hero__inner { max-width: 1222px; margin: 0 auto; text-align: left; padding: 0 20px; }
/* Eyebrow: de píldora a etiqueta limpia con línea de acento */
.gh-arch-hero__eyebrow {
	background: none !important; border: none !important; padding: 0 !important;
	margin-bottom: 15px; gap: 10px; color: #7fe0e4; font-size: 12.5px; letter-spacing: .2em;
}
.gh-arch-hero__eyebrow::after {
	content: ""; width: 34px; height: 2px; background: rgba(127,224,228,.55); border-radius: 2px;
}
.gh-arch-hero__title { margin: 0; }
.gh-arch-hero__desc { margin: 15px 0 0; max-width: 560px; }
/* Contador: de píldora a texto plano con punto */
.gh-arch-hero__count {
	background: none !important; border: none !important; padding: 0 !important;
	margin-top: 18px; color: rgba(255,255,255,.74); font-weight: 600; letter-spacing: .02em; font-size: 13px;
}
/* Barra de categorías alineada a la izquierda con el hero */
.gh-archive-header .gh-catbar { text-align: left; }
.gh-archive-header .gh-catbar__list { justify-content: flex-start; }

/* =========================================================================
 * ALQUISER — Hero de PROYECTOS (archivo project-cat). Diseño distinto al blog.
 * ====================================================================== */
/* Ocultar migas/título del tema en archivos de proyectos */
body.tax-project-cat .wd-page-title { display: none !important; }

.gh-proj-archive { padding-top: 42px; }
.gh-proj-hero {
	position: relative; overflow: hidden; isolation: isolate;
	width: 100vw; max-width: 100vw;
	margin-left: calc(50% - 50vw); margin-right: calc(50% - 50vw); margin-bottom: 8px;
	padding: clamp(38px, 5.4vw, 66px) 20px;
	color: #fff; background-color: #0c2029; background-size: cover; background-position: center;
}
/* Scrim más cinematográfico: oscurece más hacia la izquierda para el texto */
.gh-proj-hero::before {
	content: ""; position: absolute; inset: 0; z-index: 1; pointer-events: none;
	background:
		linear-gradient(90deg, rgba(8,20,28,.90) 0%, rgba(9,24,32,.72) 42%, rgba(10,26,34,.42) 100%),
		linear-gradient(180deg, rgba(10,26,34,.25) 0%, rgba(8,20,28,.65) 100%);
}
.gh-proj-hero__grid {
	position: absolute; inset: 0; z-index: 2; pointer-events: none; opacity: .5;
	background-image:
		linear-gradient(rgba(255,255,255,.05) 1px, transparent 1px),
		linear-gradient(90deg, rgba(255,255,255,.05) 1px, transparent 1px);
	background-size: 46px 46px;
	-webkit-mask-image: linear-gradient(90deg, #000 0, transparent 70%);
	mask-image: linear-gradient(90deg, #000 0, transparent 70%);
}
.gh-proj-hero__inner {
	position: relative; z-index: 3; max-width: 1222px; margin: 0 auto; padding: 0 20px;
	display: flex; align-items: center; gap: 22px;
}
/* Badge redondeado con el ícono de la categoría (elemento distintivo vs blog) */
.gh-proj-hero__badge {
	flex: 0 0 auto; width: 66px; height: 66px; border-radius: 18px;
	display: inline-flex; align-items: center; justify-content: center;
	background: rgba(32,172,179,.20); border: 1px solid rgba(127,224,228,.42);
	box-shadow: 0 10px 26px rgba(6,16,22,.35); backdrop-filter: blur(4px);
}
.gh-proj-hero__badge svg { width: 30px; height: 30px; stroke: #d3f2f3; color: #d3f2f3; }
.gh-proj-hero__text { min-width: 0; }
.gh-proj-hero__eyebrow {
	display: inline-block; margin: 0 0 8px; color: #7fe0e4;
	font-size: 12px; font-weight: 700; letter-spacing: .22em; text-transform: uppercase;
}
/* Título con barra de acento a la IZQUIERDA (distinto a la línea del blog) */
.gh-proj-hero__title {
	margin: 0; color: #fff !important; -webkit-text-fill-color: #fff !important;
	font-weight: 800; line-height: 1.03; letter-spacing: -.015em;
	font-size: clamp(30px, 5vw, 50px);
	padding-left: 18px; border-left: 4px solid var(--wd-primary-color, rgb(32,172,179));
}
.gh-proj-hero__desc {
	margin: 14px 0 0; max-width: 620px; color: rgba(255,255,255,.84); font-size: 16px; line-height: 1.6;
}
/* Conteo como chip (distinto al texto plano del blog) */
.gh-proj-hero__count {
	display: inline-flex; align-items: center; margin-top: 18px; padding: 6px 16px; border-radius: 8px;
	background: rgba(255,255,255,.10); border: 1px solid rgba(255,255,255,.22);
	color: #eafafb; font-size: 12.5px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase;
}
/* Filtro en PÍLDORAS (distinto a las pestañas del blog) */
.gh-proj-filter { margin: 18px 0 4px; }
.gh-proj-filter__list {
	list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 9px;
}
.gh-proj-filter__list a {
	display: inline-flex; align-items: center; gap: 7px; padding: 9px 16px; border-radius: 999px;
	background: #fff; border: 1px solid #e3e7ec; color: #45515e !important;
	font-size: 13px; font-weight: 600; transition: all .2s ease;
}
.gh-proj-filter__list a:hover { border-color: var(--wd-primary-color, rgb(32,172,179)); color: var(--wd-primary-color, rgb(32,172,179)) !important; }
.gh-proj-filter__list li.is-active a {
	background: var(--wd-primary-color, rgb(32,172,179)); border-color: transparent; color: #fff !important;
	box-shadow: 0 8px 20px rgba(32,172,179,.32);
}
.gh-proj-filter__icon { display: inline-flex; }
.gh-proj-filter__icon svg { width: 16px; height: 16px; display: block; }
.gh-proj-filter__list li.is-active .gh-proj-filter__icon svg { stroke: #fff; color: #fff; }
@media (max-width: 768px) {
	.gh-proj-hero { padding: 30px 18px 34px; }
	.gh-proj-hero__inner { gap: 16px; padding: 0 4px; }
	.gh-proj-hero__badge { width: 52px; height: 52px; border-radius: 14px; }
	.gh-proj-hero__badge svg { width: 24px; height: 24px; }
	.gh-proj-hero__desc { font-size: 14.5px; }
	.gh-proj-filter__list { flex-wrap: nowrap; overflow-x: auto; padding-bottom: 4px; }
	.gh-proj-filter__list a { flex: 0 0 auto; }
}


/* Alquiser — ajustes de QA responsive */
.wd-footer .elementor-icon-list-text,
.wd-footer .elementor-icon-list-item > a {
	overflow-wrap: anywhere;
	word-break: break-word;
}
.wd-footer .elementor-icon-list-item {
	align-items: flex-start;
}


/* Alquiser — los iconos de redes se muestran aunque el perfil aún no tenga URL.
   Cuando se configuren las URLs reales en WoodMart -> Theme Settings -> Social,
   los enlaces dejarán de apuntar a "#" y funcionarán sin tocar este archivo. */

/* Alquiser — logotipo del pie legible */
.wd-footer .elementor-widget-image img[src*="Alquiser-LOGO"] {
	width: 210px;
	max-width: 100%;
	height: auto;
}

/* ==========================================================================
   Alquiser — BLOG Y PROYECTOS: tipografía (Open Sans / Montserrat) + separación hero
   Blog: página /blog/ (21325), entradas, categorías.
   Proyectos: página /proyectos/ (21627), proyectos individuales, project-cat.
   ========================================================================== */

/* ---- 1) Tipografía: cuerpo Open Sans, títulos Montserrat ---- */
.elementor-page-21325 .wd-page-content,
.elementor-page-21325 .wd-page-content *,
.elementor-page-21627 .wd-page-content,
.elementor-page-21627 .wd-page-content *,
.single-post .wd-page-content,
.single-post .wd-page-content *,
.single-portfolio .wd-page-content,
.single-portfolio .wd-page-content *,
.archive.category .wd-page-content,
.archive.category .wd-page-content *,
.post-type-archive-portfolio .wd-page-content,
.post-type-archive-portfolio .wd-page-content *,
.tax-project-cat .wd-page-content,
.tax-project-cat .wd-page-content * {
	font-family: 'Open Sans', 'Kumbh Sans', sans-serif !important;
}

/* Excepciones: los iconos de fuente conservan su familia (si no, se rompen) */
.elementor-page-21325 .wd-page-content [class~="fa"],
.elementor-page-21325 .wd-page-content [class~="fas"],
.elementor-page-21325 .wd-page-content [class~="far"],
.elementor-page-21325 .wd-page-content [class~="fab"],
.elementor-page-21325 .wd-page-content [class~="fal"],
.elementor-page-21325 .wd-page-content [class~="fad"],
.elementor-page-21627 .wd-page-content [class~="fa"],
.elementor-page-21627 .wd-page-content [class~="fas"],
.elementor-page-21627 .wd-page-content [class~="far"],
.elementor-page-21627 .wd-page-content [class~="fab"],
.elementor-page-21627 .wd-page-content [class~="fal"],
.elementor-page-21627 .wd-page-content [class~="fad"],
.single-post .wd-page-content [class~="fa"],
.single-post .wd-page-content [class~="fas"],
.single-post .wd-page-content [class~="far"],
.single-post .wd-page-content [class~="fab"],
.single-post .wd-page-content [class~="fal"],
.single-post .wd-page-content [class~="fad"],
.single-portfolio .wd-page-content [class~="fa"],
.single-portfolio .wd-page-content [class~="fas"],
.single-portfolio .wd-page-content [class~="far"],
.single-portfolio .wd-page-content [class~="fab"],
.single-portfolio .wd-page-content [class~="fal"],
.single-portfolio .wd-page-content [class~="fad"],
.archive.category .wd-page-content [class~="fa"],
.archive.category .wd-page-content [class~="fas"],
.archive.category .wd-page-content [class~="far"],
.archive.category .wd-page-content [class~="fab"],
.archive.category .wd-page-content [class~="fal"],
.archive.category .wd-page-content [class~="fad"],
.post-type-archive-portfolio .wd-page-content [class~="fa"],
.post-type-archive-portfolio .wd-page-content [class~="fas"],
.post-type-archive-portfolio .wd-page-content [class~="far"],
.post-type-archive-portfolio .wd-page-content [class~="fab"],
.post-type-archive-portfolio .wd-page-content [class~="fal"],
.post-type-archive-portfolio .wd-page-content [class~="fad"],
.tax-project-cat .wd-page-content [class~="fa"],
.tax-project-cat .wd-page-content [class~="fas"],
.tax-project-cat .wd-page-content [class~="far"],
.tax-project-cat .wd-page-content [class~="fab"],
.tax-project-cat .wd-page-content [class~="fal"],
.tax-project-cat .wd-page-content [class~="fad"] {
	font-family: "Font Awesome 5 Free", "Font Awesome 5 Brands", "Font Awesome 5 Pro", FontAwesome !important;
}

.elementor-page-21325 .wd-page-content [class*="wd-icon"],
.elementor-page-21627 .wd-page-content [class*="wd-icon"],
.single-post .wd-page-content [class*="wd-icon"],
.single-portfolio .wd-page-content [class*="wd-icon"],
.archive.category .wd-page-content [class*="wd-icon"],
.post-type-archive-portfolio .wd-page-content [class*="wd-icon"],
.tax-project-cat .wd-page-content [class*="wd-icon"] {
	font-family: "woodmart-font" !important;
}

/* Títulos en Montserrat */
.elementor-page-21325 .wd-page-content :is(h1,h2,h3,h4,h5,h6),
.elementor-page-21325 .wd-page-content :is(h1,h2,h3,h4,h5,h6) *,
.elementor-page-21627 .wd-page-content :is(h1,h2,h3,h4,h5,h6),
.elementor-page-21627 .wd-page-content :is(h1,h2,h3,h4,h5,h6) *,
.single-post .wd-page-content :is(h1,h2,h3,h4,h5,h6),
.single-post .wd-page-content :is(h1,h2,h3,h4,h5,h6) *,
.single-portfolio .wd-page-content :is(h1,h2,h3,h4,h5,h6),
.single-portfolio .wd-page-content :is(h1,h2,h3,h4,h5,h6) *,
.archive.category .wd-page-content :is(h1,h2,h3,h4,h5,h6),
.archive.category .wd-page-content :is(h1,h2,h3,h4,h5,h6) *,
.post-type-archive-portfolio .wd-page-content :is(h1,h2,h3,h4,h5,h6),
.post-type-archive-portfolio .wd-page-content :is(h1,h2,h3,h4,h5,h6) *,
.tax-project-cat .wd-page-content :is(h1,h2,h3,h4,h5,h6),
.tax-project-cat .wd-page-content :is(h1,h2,h3,h4,h5,h6) *,
.elementor-page-21325 .wd-page-content .elementor-heading-title,
.elementor-page-21627 .wd-page-content .elementor-heading-title,
.elementor-page-21325 .wd-page-content [class*="__title"],
.elementor-page-21627 .wd-page-content [class*="__title"],
.single-post .wd-page-content [class*="__title"],
.single-portfolio .wd-page-content [class*="__title"],
.archive.category .wd-page-content [class*="__title"],
.post-type-archive-portfolio .wd-page-content [class*="__title"],
.tax-project-cat .wd-page-content [class*="__title"],
.single-portfolio .wd-page-content .gh-project-title,
.single-post .wd-page-content .entry-title,
.tax-project-cat .wd-page-content .entry-title,
.post-type-archive-portfolio .wd-page-content .entry-title {
	font-family: 'Montserrat', 'Kumbh Sans', sans-serif !important;
}

/* ---- 2) Despegar el hero del encabezado (header overlay de ~112px) ----
   Solo afecta a entradas y proyectos individuales y a los archivos de blog y
   de proyectos. Las páginas /blog/ y /proyectos/ NO se tocan: su separación ya
   viene definida en Elementor y está bien.
   Nota: !important porque las hojas css/parts/*.min.css del tema padre se
   cargan después del child y si no ganan ellas. */
.single-post .wd-content-layout,
.single-portfolio .wd-content-layout,
.archive.category .wd-content-layout,
.post-type-archive-portfolio .wd-content-layout,
.tax-project-cat .wd-content-layout { padding-top: 136px !important; }
@media (max-width: 767px) {
	.single-post .wd-content-layout,
	.single-portfolio .wd-content-layout,
	.archive.category .wd-content-layout,
	.post-type-archive-portfolio .wd-content-layout,
	.tax-project-cat .wd-content-layout { padding-top: 116px !important; }
}

/* Compensar la barra de administración de WordPress (solo usuarios conectados) */
.admin-bar.single-post .wd-content-layout,
.admin-bar.single-portfolio .wd-content-layout,
.admin-bar.archive.category .wd-content-layout,
.admin-bar.post-type-archive-portfolio .wd-content-layout,
.admin-bar.tax-project-cat .wd-content-layout { padding-top: 168px !important; }
@media (max-width: 782px) {
	.admin-bar.single-post .wd-content-layout,
	.admin-bar.single-portfolio .wd-content-layout,
	.admin-bar.archive.category .wd-content-layout,
	.admin-bar.post-type-archive-portfolio .wd-content-layout,
	.admin-bar.tax-project-cat .wd-content-layout { padding-top: 162px !important; }
}

/* ==========================================================================
   Alquiser — BLOG Y PROYECTOS: color de marca en títulos y texto
   Títulos #002642 · Texto #133848
   Los encabezados venían en naranja (#FFAA01, ajuste de tipografía de WoodMart).
   No se tocan los textos sobre fondo oscuro (hero, tarjeta destacada, paneles).
   ========================================================================== */

/* ---- Títulos ---- */
.elementor-page-21325 .wd-page-content .gh-catbar__title,
.elementor-page-21325 .wd-page-content .gh-section__title,
.elementor-page-21325 .wd-page-content .gh-swidget__title,
.elementor-page-21325 .wd-page-content .gh-swidget__cta-title,
.elementor-page-21325 .wd-page-content .gh-swidget__ptitle,
.elementor-page-21325 .wd-page-content .gh-card__title,
.elementor-page-21325 .wd-page-content .gh-card__title a,
.elementor-page-21325 .wd-page-content .gh-project-title,
.elementor-page-21325 .wd-page-content .alq-svc__title,
.elementor-page-21325 .wd-page-content .entry-title,
.elementor-page-21325 .wd-page-content .wd-post-title,
.elementor-page-21325 .wd-page-content .comment-reply-title,
.elementor-page-21325 .wd-page-content .wp-block-heading,
.elementor-page-21627 .wd-page-content .gh-catbar__title,
.elementor-page-21627 .wd-page-content .gh-section__title,
.elementor-page-21627 .wd-page-content .gh-swidget__title,
.elementor-page-21627 .wd-page-content .gh-swidget__cta-title,
.elementor-page-21627 .wd-page-content .gh-swidget__ptitle,
.elementor-page-21627 .wd-page-content .gh-card__title,
.elementor-page-21627 .wd-page-content .gh-card__title a,
.elementor-page-21627 .wd-page-content .gh-project-title,
.elementor-page-21627 .wd-page-content .alq-svc__title,
.elementor-page-21627 .wd-page-content .entry-title,
.elementor-page-21627 .wd-page-content .wd-post-title,
.elementor-page-21627 .wd-page-content .comment-reply-title,
.elementor-page-21627 .wd-page-content .wp-block-heading,
.single-post .wd-page-content .gh-catbar__title,
.single-post .wd-page-content .gh-section__title,
.single-post .wd-page-content .gh-swidget__title,
.single-post .wd-page-content .gh-swidget__cta-title,
.single-post .wd-page-content .gh-swidget__ptitle,
.single-post .wd-page-content .gh-card__title,
.single-post .wd-page-content .gh-card__title a,
.single-post .wd-page-content .gh-project-title,
.single-post .wd-page-content .alq-svc__title,
.single-post .wd-page-content .entry-title,
.single-post .wd-page-content .wd-post-title,
.single-post .wd-page-content .comment-reply-title,
.single-post .wd-page-content .wp-block-heading,
.single-portfolio .wd-page-content .gh-catbar__title,
.single-portfolio .wd-page-content .gh-section__title,
.single-portfolio .wd-page-content .gh-swidget__title,
.single-portfolio .wd-page-content .gh-swidget__cta-title,
.single-portfolio .wd-page-content .gh-swidget__ptitle,
.single-portfolio .wd-page-content .gh-card__title,
.single-portfolio .wd-page-content .gh-card__title a,
.single-portfolio .wd-page-content .gh-project-title,
.single-portfolio .wd-page-content .alq-svc__title,
.single-portfolio .wd-page-content .entry-title,
.single-portfolio .wd-page-content .wd-post-title,
.single-portfolio .wd-page-content .comment-reply-title,
.single-portfolio .wd-page-content .wp-block-heading,
.archive.category .wd-page-content .gh-catbar__title,
.archive.category .wd-page-content .gh-section__title,
.archive.category .wd-page-content .gh-swidget__title,
.archive.category .wd-page-content .gh-swidget__cta-title,
.archive.category .wd-page-content .gh-swidget__ptitle,
.archive.category .wd-page-content .gh-card__title,
.archive.category .wd-page-content .gh-card__title a,
.archive.category .wd-page-content .gh-project-title,
.archive.category .wd-page-content .alq-svc__title,
.archive.category .wd-page-content .entry-title,
.archive.category .wd-page-content .wd-post-title,
.archive.category .wd-page-content .comment-reply-title,
.archive.category .wd-page-content .wp-block-heading,
.post-type-archive-portfolio .wd-page-content .gh-catbar__title,
.post-type-archive-portfolio .wd-page-content .gh-section__title,
.post-type-archive-portfolio .wd-page-content .gh-swidget__title,
.post-type-archive-portfolio .wd-page-content .gh-swidget__cta-title,
.post-type-archive-portfolio .wd-page-content .gh-swidget__ptitle,
.post-type-archive-portfolio .wd-page-content .gh-card__title,
.post-type-archive-portfolio .wd-page-content .gh-card__title a,
.post-type-archive-portfolio .wd-page-content .gh-project-title,
.post-type-archive-portfolio .wd-page-content .alq-svc__title,
.post-type-archive-portfolio .wd-page-content .entry-title,
.post-type-archive-portfolio .wd-page-content .wd-post-title,
.post-type-archive-portfolio .wd-page-content .comment-reply-title,
.post-type-archive-portfolio .wd-page-content .wp-block-heading,
.tax-project-cat .wd-page-content .gh-catbar__title,
.tax-project-cat .wd-page-content .gh-section__title,
.tax-project-cat .wd-page-content .gh-swidget__title,
.tax-project-cat .wd-page-content .gh-swidget__cta-title,
.tax-project-cat .wd-page-content .gh-swidget__ptitle,
.tax-project-cat .wd-page-content .gh-card__title,
.tax-project-cat .wd-page-content .gh-card__title a,
.tax-project-cat .wd-page-content .gh-project-title,
.tax-project-cat .wd-page-content .alq-svc__title,
.tax-project-cat .wd-page-content .entry-title,
.tax-project-cat .wd-page-content .wd-post-title,
.tax-project-cat .wd-page-content .comment-reply-title,
.tax-project-cat .wd-page-content .wp-block-heading {
	color: #002642 !important;
}

/* Encabezados del cuerpo del artículo (entrada y proyecto individual) */
.single-post .entry-content h2,
.single-post .wd-single-project h2,
.single-post .entry-content h3,
.single-post .wd-single-project h3,
.single-post .entry-content h4,
.single-post .wd-single-project h4,
.single-post .entry-content h5,
.single-post .wd-single-project h5,
.single-post .entry-content h6,
.single-post .wd-single-project h6,
.single-portfolio .entry-content h2,
.single-portfolio .wd-single-project h2,
.single-portfolio .entry-content h3,
.single-portfolio .wd-single-project h3,
.single-portfolio .entry-content h4,
.single-portfolio .wd-single-project h4,
.single-portfolio .entry-content h5,
.single-portfolio .wd-single-project h5,
.single-portfolio .entry-content h6,
.single-portfolio .wd-single-project h6 {
	color: #002642 !important;
}

/* ---- Texto ---- */
.elementor-page-21325 .wd-page-content .gh-card__excerpt,
.elementor-page-21325 .wd-page-content .gh-catbar__name,
.elementor-page-21627 .wd-page-content .gh-card__excerpt,
.elementor-page-21627 .wd-page-content .gh-catbar__name,
.single-post .wd-page-content .gh-card__excerpt,
.single-post .wd-page-content .gh-catbar__name,
.single-portfolio .wd-page-content .gh-card__excerpt,
.single-portfolio .wd-page-content .gh-catbar__name,
.archive.category .wd-page-content .gh-card__excerpt,
.archive.category .wd-page-content .gh-catbar__name,
.post-type-archive-portfolio .wd-page-content .gh-card__excerpt,
.post-type-archive-portfolio .wd-page-content .gh-catbar__name,
.tax-project-cat .wd-page-content .gh-card__excerpt,
.tax-project-cat .wd-page-content .gh-catbar__name {
	color: #133848 !important;
}

.single-post .entry-content p,
.single-post .entry-content li,
.single-post .entry-content blockquote,
.single-post .entry-content .wd-single-project,
.single-portfolio .entry-content p,
.single-portfolio .entry-content li,
.single-portfolio .entry-content blockquote,
.single-portfolio .entry-content .wd-single-project {
	color: #133848 !important;
}


/* Títulos de los widgets de la barra lateral */
.elementor-page-21325 .wd-page-content .widget-title,
.elementor-page-21627 .wd-page-content .widget-title,
.single-post .wd-page-content .widget-title,
.single-portfolio .wd-page-content .widget-title,
.archive.category .wd-page-content .widget-title,
.post-type-archive-portfolio .wd-page-content .widget-title,
.tax-project-cat .wd-page-content .widget-title {
	color: #002642 !important;
}

/* El contenido del artículo se renderiza dentro de .wd-entry-content */
.single-post .wd-entry-content p,
.single-post .wd-entry-content li,
.single-post .wd-entry-content blockquote,
.single-post .wd-single-project p,
.single-post .wd-single-project li,
.single-portfolio .wd-entry-content p,
.single-portfolio .wd-entry-content li,
.single-portfolio .wd-entry-content blockquote,
.single-portfolio .wd-single-project p,
.single-portfolio .wd-single-project li {
	color: #133848 !important;
}


/* Título de los carruseles del tema ("Más proyectos", "Artículos relacionados") */
.elementor-page-21325 .wd-page-content .wd-el-title,
.elementor-page-21325 .wd-page-content .wd-el-title span,
.elementor-page-21627 .wd-page-content .wd-el-title,
.elementor-page-21627 .wd-page-content .wd-el-title span,
.single-post .wd-page-content .wd-el-title,
.single-post .wd-page-content .wd-el-title span,
.single-portfolio .wd-page-content .wd-el-title,
.single-portfolio .wd-page-content .wd-el-title span,
.archive.category .wd-page-content .wd-el-title,
.archive.category .wd-page-content .wd-el-title span,
.post-type-archive-portfolio .wd-page-content .wd-el-title,
.post-type-archive-portfolio .wd-page-content .wd-el-title span,
.tax-project-cat .wd-page-content .wd-el-title,
.tax-project-cat .wd-page-content .wd-el-title span {
	color: #002642 !important;
}

/* ---- Salvaguarda: lo que va sobre fondo oscuro sigue en claro ---- */
.gh-hero .gh-hero__title,
.gh-hero .gh-hero__title a,
.gh-hero__overlay,
.gh-hero__overlay *,
.gh-arch-hero__title,
.gh-arch-hero__title a,
.gh-proj-archive .gh-arch-hero__title,
.gh-featured .gh-featured__title,
.gh-featured .gh-featured__title a,
.gsvc-panel .gsvc-panel__title {
	color: #fff !important;
}
.gh-featured .gh-featured__excerpt { color: rgb(185, 194, 204) !important; }

/* ==========================================================================
   Alquiser — BLOG Y PROYECTOS: fuera las mayúsculas de títulos y etiquetas
   Venían de los ajustes de tipografía de WoodMart (h2 -> uppercase,
   h4 -> capitalize). Los botones de acción sí conservan su mayúscula.
   ========================================================================== */
.elementor-page-21325 .wd-page-content .gh-card__title,
.elementor-page-21325 .wd-page-content .gh-card__title a,
.elementor-page-21325 .wd-page-content .gh-catbar__title,
.elementor-page-21325 .wd-page-content .gh-section__title,
.elementor-page-21325 .wd-page-content .gh-featured__title,
.elementor-page-21325 .wd-page-content .gh-featured__title a,
.elementor-page-21325 .wd-page-content .gh-featured__badge,
.elementor-page-21325 .wd-page-content .gh-card__label,
.elementor-page-21325 .wd-page-content .gh-swidget__title,
.elementor-page-21325 .wd-page-content .gh-swidget__cta-title,
.elementor-page-21325 .wd-page-content .gh-swidget__ptitle,
.elementor-page-21325 .wd-page-content .gh-project-title,
.elementor-page-21325 .wd-page-content .alq-svc__title,
.elementor-page-21325 .wd-page-content .elementor-heading-title,
.elementor-page-21325 .wd-page-content .wd-project__cat-name,
.elementor-page-21325 .wd-page-content .wd-project__link-text,
.elementor-page-21325 .wd-page-content .wd-el-title,
.elementor-page-21325 .wd-page-content .wd-el-title span,
.elementor-page-21325 .wd-page-content .widget-title,
.elementor-page-21325 .wd-page-content .wp-block-heading,
.elementor-page-21325 .wd-page-content .entry-title,
.elementor-page-21325 .wd-page-content .wd-post-title,
.elementor-page-21325 .wd-page-content .comment-reply-title,
.elementor-page-21325 .wd-page-content h1,
.elementor-page-21325 .wd-page-content h2,
.elementor-page-21325 .wd-page-content h3,
.elementor-page-21325 .wd-page-content h4,
.elementor-page-21325 .wd-page-content h5,
.elementor-page-21325 .wd-page-content h6,
.elementor-page-21627 .wd-page-content .gh-card__title,
.elementor-page-21627 .wd-page-content .gh-card__title a,
.elementor-page-21627 .wd-page-content .gh-catbar__title,
.elementor-page-21627 .wd-page-content .gh-section__title,
.elementor-page-21627 .wd-page-content .gh-featured__title,
.elementor-page-21627 .wd-page-content .gh-featured__title a,
.elementor-page-21627 .wd-page-content .gh-featured__badge,
.elementor-page-21627 .wd-page-content .gh-card__label,
.elementor-page-21627 .wd-page-content .gh-swidget__title,
.elementor-page-21627 .wd-page-content .gh-swidget__cta-title,
.elementor-page-21627 .wd-page-content .gh-swidget__ptitle,
.elementor-page-21627 .wd-page-content .gh-project-title,
.elementor-page-21627 .wd-page-content .alq-svc__title,
.elementor-page-21627 .wd-page-content .elementor-heading-title,
.elementor-page-21627 .wd-page-content .wd-project__cat-name,
.elementor-page-21627 .wd-page-content .wd-project__link-text,
.elementor-page-21627 .wd-page-content .wd-el-title,
.elementor-page-21627 .wd-page-content .wd-el-title span,
.elementor-page-21627 .wd-page-content .widget-title,
.elementor-page-21627 .wd-page-content .wp-block-heading,
.elementor-page-21627 .wd-page-content .entry-title,
.elementor-page-21627 .wd-page-content .wd-post-title,
.elementor-page-21627 .wd-page-content .comment-reply-title,
.elementor-page-21627 .wd-page-content h1,
.elementor-page-21627 .wd-page-content h2,
.elementor-page-21627 .wd-page-content h3,
.elementor-page-21627 .wd-page-content h4,
.elementor-page-21627 .wd-page-content h5,
.elementor-page-21627 .wd-page-content h6,
.single-post .wd-page-content .gh-card__title,
.single-post .wd-page-content .gh-card__title a,
.single-post .wd-page-content .gh-catbar__title,
.single-post .wd-page-content .gh-section__title,
.single-post .wd-page-content .gh-featured__title,
.single-post .wd-page-content .gh-featured__title a,
.single-post .wd-page-content .gh-featured__badge,
.single-post .wd-page-content .gh-card__label,
.single-post .wd-page-content .gh-swidget__title,
.single-post .wd-page-content .gh-swidget__cta-title,
.single-post .wd-page-content .gh-swidget__ptitle,
.single-post .wd-page-content .gh-project-title,
.single-post .wd-page-content .alq-svc__title,
.single-post .wd-page-content .elementor-heading-title,
.single-post .wd-page-content .wd-project__cat-name,
.single-post .wd-page-content .wd-project__link-text,
.single-post .wd-page-content .wd-el-title,
.single-post .wd-page-content .wd-el-title span,
.single-post .wd-page-content .widget-title,
.single-post .wd-page-content .wp-block-heading,
.single-post .wd-page-content .entry-title,
.single-post .wd-page-content .wd-post-title,
.single-post .wd-page-content .comment-reply-title,
.single-post .wd-page-content h1,
.single-post .wd-page-content h2,
.single-post .wd-page-content h3,
.single-post .wd-page-content h4,
.single-post .wd-page-content h5,
.single-post .wd-page-content h6,
.single-portfolio .wd-page-content .gh-card__title,
.single-portfolio .wd-page-content .gh-card__title a,
.single-portfolio .wd-page-content .gh-catbar__title,
.single-portfolio .wd-page-content .gh-section__title,
.single-portfolio .wd-page-content .gh-featured__title,
.single-portfolio .wd-page-content .gh-featured__title a,
.single-portfolio .wd-page-content .gh-featured__badge,
.single-portfolio .wd-page-content .gh-card__label,
.single-portfolio .wd-page-content .gh-swidget__title,
.single-portfolio .wd-page-content .gh-swidget__cta-title,
.single-portfolio .wd-page-content .gh-swidget__ptitle,
.single-portfolio .wd-page-content .gh-project-title,
.single-portfolio .wd-page-content .alq-svc__title,
.single-portfolio .wd-page-content .elementor-heading-title,
.single-portfolio .wd-page-content .wd-project__cat-name,
.single-portfolio .wd-page-content .wd-project__link-text,
.single-portfolio .wd-page-content .wd-el-title,
.single-portfolio .wd-page-content .wd-el-title span,
.single-portfolio .wd-page-content .widget-title,
.single-portfolio .wd-page-content .wp-block-heading,
.single-portfolio .wd-page-content .entry-title,
.single-portfolio .wd-page-content .wd-post-title,
.single-portfolio .wd-page-content .comment-reply-title,
.single-portfolio .wd-page-content h1,
.single-portfolio .wd-page-content h2,
.single-portfolio .wd-page-content h3,
.single-portfolio .wd-page-content h4,
.single-portfolio .wd-page-content h5,
.single-portfolio .wd-page-content h6,
.archive.category .wd-page-content .gh-card__title,
.archive.category .wd-page-content .gh-card__title a,
.archive.category .wd-page-content .gh-catbar__title,
.archive.category .wd-page-content .gh-section__title,
.archive.category .wd-page-content .gh-featured__title,
.archive.category .wd-page-content .gh-featured__title a,
.archive.category .wd-page-content .gh-featured__badge,
.archive.category .wd-page-content .gh-card__label,
.archive.category .wd-page-content .gh-swidget__title,
.archive.category .wd-page-content .gh-swidget__cta-title,
.archive.category .wd-page-content .gh-swidget__ptitle,
.archive.category .wd-page-content .gh-project-title,
.archive.category .wd-page-content .alq-svc__title,
.archive.category .wd-page-content .elementor-heading-title,
.archive.category .wd-page-content .wd-project__cat-name,
.archive.category .wd-page-content .wd-project__link-text,
.archive.category .wd-page-content .wd-el-title,
.archive.category .wd-page-content .wd-el-title span,
.archive.category .wd-page-content .widget-title,
.archive.category .wd-page-content .wp-block-heading,
.archive.category .wd-page-content .entry-title,
.archive.category .wd-page-content .wd-post-title,
.archive.category .wd-page-content .comment-reply-title,
.archive.category .wd-page-content h1,
.archive.category .wd-page-content h2,
.archive.category .wd-page-content h3,
.archive.category .wd-page-content h4,
.archive.category .wd-page-content h5,
.archive.category .wd-page-content h6,
.post-type-archive-portfolio .wd-page-content .gh-card__title,
.post-type-archive-portfolio .wd-page-content .gh-card__title a,
.post-type-archive-portfolio .wd-page-content .gh-catbar__title,
.post-type-archive-portfolio .wd-page-content .gh-section__title,
.post-type-archive-portfolio .wd-page-content .gh-featured__title,
.post-type-archive-portfolio .wd-page-content .gh-featured__title a,
.post-type-archive-portfolio .wd-page-content .gh-featured__badge,
.post-type-archive-portfolio .wd-page-content .gh-card__label,
.post-type-archive-portfolio .wd-page-content .gh-swidget__title,
.post-type-archive-portfolio .wd-page-content .gh-swidget__cta-title,
.post-type-archive-portfolio .wd-page-content .gh-swidget__ptitle,
.post-type-archive-portfolio .wd-page-content .gh-project-title,
.post-type-archive-portfolio .wd-page-content .alq-svc__title,
.post-type-archive-portfolio .wd-page-content .elementor-heading-title,
.post-type-archive-portfolio .wd-page-content .wd-project__cat-name,
.post-type-archive-portfolio .wd-page-content .wd-project__link-text,
.post-type-archive-portfolio .wd-page-content .wd-el-title,
.post-type-archive-portfolio .wd-page-content .wd-el-title span,
.post-type-archive-portfolio .wd-page-content .widget-title,
.post-type-archive-portfolio .wd-page-content .wp-block-heading,
.post-type-archive-portfolio .wd-page-content .entry-title,
.post-type-archive-portfolio .wd-page-content .wd-post-title,
.post-type-archive-portfolio .wd-page-content .comment-reply-title,
.post-type-archive-portfolio .wd-page-content h1,
.post-type-archive-portfolio .wd-page-content h2,
.post-type-archive-portfolio .wd-page-content h3,
.post-type-archive-portfolio .wd-page-content h4,
.post-type-archive-portfolio .wd-page-content h5,
.post-type-archive-portfolio .wd-page-content h6,
.tax-project-cat .wd-page-content .gh-card__title,
.tax-project-cat .wd-page-content .gh-card__title a,
.tax-project-cat .wd-page-content .gh-catbar__title,
.tax-project-cat .wd-page-content .gh-section__title,
.tax-project-cat .wd-page-content .gh-featured__title,
.tax-project-cat .wd-page-content .gh-featured__title a,
.tax-project-cat .wd-page-content .gh-featured__badge,
.tax-project-cat .wd-page-content .gh-card__label,
.tax-project-cat .wd-page-content .gh-swidget__title,
.tax-project-cat .wd-page-content .gh-swidget__cta-title,
.tax-project-cat .wd-page-content .gh-swidget__ptitle,
.tax-project-cat .wd-page-content .gh-project-title,
.tax-project-cat .wd-page-content .alq-svc__title,
.tax-project-cat .wd-page-content .elementor-heading-title,
.tax-project-cat .wd-page-content .wd-project__cat-name,
.tax-project-cat .wd-page-content .wd-project__link-text,
.tax-project-cat .wd-page-content .wd-el-title,
.tax-project-cat .wd-page-content .wd-el-title span,
.tax-project-cat .wd-page-content .widget-title,
.tax-project-cat .wd-page-content .wp-block-heading,
.tax-project-cat .wd-page-content .entry-title,
.tax-project-cat .wd-page-content .wd-post-title,
.tax-project-cat .wd-page-content .comment-reply-title,
.tax-project-cat .wd-page-content h1,
.tax-project-cat .wd-page-content h2,
.tax-project-cat .wd-page-content h3,
.tax-project-cat .wd-page-content h4,
.tax-project-cat .wd-page-content h5,
.tax-project-cat .wd-page-content h6 {
	text-transform: none !important;
}

/* El espaciado entre letras estaba pensado para texto en mayúscula */
.elementor-page-21325 .wd-page-content .gh-catbar__title,
.elementor-page-21325 .wd-page-content .gh-card__label,
.elementor-page-21325 .wd-page-content .gh-featured__badge,
.elementor-page-21627 .wd-page-content .gh-catbar__title,
.elementor-page-21627 .wd-page-content .gh-card__label,
.elementor-page-21627 .wd-page-content .gh-featured__badge,
.single-post .wd-page-content .gh-catbar__title,
.single-post .wd-page-content .gh-card__label,
.single-post .wd-page-content .gh-featured__badge,
.single-portfolio .wd-page-content .gh-catbar__title,
.single-portfolio .wd-page-content .gh-card__label,
.single-portfolio .wd-page-content .gh-featured__badge,
.archive.category .wd-page-content .gh-catbar__title,
.archive.category .wd-page-content .gh-card__label,
.archive.category .wd-page-content .gh-featured__badge,
.post-type-archive-portfolio .wd-page-content .gh-catbar__title,
.post-type-archive-portfolio .wd-page-content .gh-card__label,
.post-type-archive-portfolio .wd-page-content .gh-featured__badge,
.tax-project-cat .wd-page-content .gh-catbar__title,
.tax-project-cat .wd-page-content .gh-card__label,
.tax-project-cat .wd-page-content .gh-featured__badge {
	letter-spacing: .02em !important;
}

/* Excepción: los botones de acción mantienen la mayúscula */
.elementor-page-21325 .wd-page-content .elementor-button-text,
.elementor-page-21325 .wd-page-content .elementor-button,
.elementor-page-21325 .wd-page-content .btn,
.elementor-page-21325 .wd-page-content .alq-svc__all,
.elementor-page-21325 .wd-page-content .gh-swidget__cta-btn,
.elementor-page-21325 .wd-page-content .gsvc-panel__more,
.elementor-page-21627 .wd-page-content .elementor-button-text,
.elementor-page-21627 .wd-page-content .elementor-button,
.elementor-page-21627 .wd-page-content .btn,
.elementor-page-21627 .wd-page-content .alq-svc__all,
.elementor-page-21627 .wd-page-content .gh-swidget__cta-btn,
.elementor-page-21627 .wd-page-content .gsvc-panel__more,
.single-post .wd-page-content .elementor-button-text,
.single-post .wd-page-content .elementor-button,
.single-post .wd-page-content .btn,
.single-post .wd-page-content .alq-svc__all,
.single-post .wd-page-content .gh-swidget__cta-btn,
.single-post .wd-page-content .gsvc-panel__more,
.single-portfolio .wd-page-content .elementor-button-text,
.single-portfolio .wd-page-content .elementor-button,
.single-portfolio .wd-page-content .btn,
.single-portfolio .wd-page-content .alq-svc__all,
.single-portfolio .wd-page-content .gh-swidget__cta-btn,
.single-portfolio .wd-page-content .gsvc-panel__more,
.archive.category .wd-page-content .elementor-button-text,
.archive.category .wd-page-content .elementor-button,
.archive.category .wd-page-content .btn,
.archive.category .wd-page-content .alq-svc__all,
.archive.category .wd-page-content .gh-swidget__cta-btn,
.archive.category .wd-page-content .gsvc-panel__more,
.post-type-archive-portfolio .wd-page-content .elementor-button-text,
.post-type-archive-portfolio .wd-page-content .elementor-button,
.post-type-archive-portfolio .wd-page-content .btn,
.post-type-archive-portfolio .wd-page-content .alq-svc__all,
.post-type-archive-portfolio .wd-page-content .gh-swidget__cta-btn,
.post-type-archive-portfolio .wd-page-content .gsvc-panel__more,
.tax-project-cat .wd-page-content .elementor-button-text,
.tax-project-cat .wd-page-content .elementor-button,
.tax-project-cat .wd-page-content .btn,
.tax-project-cat .wd-page-content .alq-svc__all,
.tax-project-cat .wd-page-content .gh-swidget__cta-btn,
.tax-project-cat .wd-page-content .gsvc-panel__more {
	text-transform: uppercase !important;
	letter-spacing: .05em !important;
}


/* Filtros de categoría de proyectos: tampoco en mayúscula */
.elementor-page-21325 .wd-page-content .nav-link-text,
.elementor-page-21325 .wd-page-content .wd-nav-portfolio a,
.elementor-page-21325 .wd-page-content .portfolio-filter a,
.elementor-page-21325 .wd-page-content .wd-project__arrow,
.elementor-page-21627 .wd-page-content .nav-link-text,
.elementor-page-21627 .wd-page-content .wd-nav-portfolio a,
.elementor-page-21627 .wd-page-content .portfolio-filter a,
.elementor-page-21627 .wd-page-content .wd-project__arrow,
.single-post .wd-page-content .nav-link-text,
.single-post .wd-page-content .wd-nav-portfolio a,
.single-post .wd-page-content .portfolio-filter a,
.single-post .wd-page-content .wd-project__arrow,
.single-portfolio .wd-page-content .nav-link-text,
.single-portfolio .wd-page-content .wd-nav-portfolio a,
.single-portfolio .wd-page-content .portfolio-filter a,
.single-portfolio .wd-page-content .wd-project__arrow,
.archive.category .wd-page-content .nav-link-text,
.archive.category .wd-page-content .wd-nav-portfolio a,
.archive.category .wd-page-content .portfolio-filter a,
.archive.category .wd-page-content .wd-project__arrow,
.post-type-archive-portfolio .wd-page-content .nav-link-text,
.post-type-archive-portfolio .wd-page-content .wd-nav-portfolio a,
.post-type-archive-portfolio .wd-page-content .portfolio-filter a,
.post-type-archive-portfolio .wd-page-content .wd-project__arrow,
.tax-project-cat .wd-page-content .nav-link-text,
.tax-project-cat .wd-page-content .wd-nav-portfolio a,
.tax-project-cat .wd-page-content .portfolio-filter a,
.tax-project-cat .wd-page-content .wd-project__arrow {
	text-transform: none !important;
	letter-spacing: .02em !important;
}


/* Etiqueta de categoría sobre la entrada */
.elementor-page-21325 .wd-page-content .wd-post-cat a,
.elementor-page-21325 .wd-page-content .wd-post-cat,
.elementor-page-21627 .wd-page-content .wd-post-cat a,
.elementor-page-21627 .wd-page-content .wd-post-cat,
.single-post .wd-page-content .wd-post-cat a,
.single-post .wd-page-content .wd-post-cat,
.single-portfolio .wd-page-content .wd-post-cat a,
.single-portfolio .wd-page-content .wd-post-cat,
.archive.category .wd-page-content .wd-post-cat a,
.archive.category .wd-page-content .wd-post-cat,
.post-type-archive-portfolio .wd-page-content .wd-post-cat a,
.post-type-archive-portfolio .wd-page-content .wd-post-cat,
.tax-project-cat .wd-page-content .wd-post-cat a,
.tax-project-cat .wd-page-content .wd-post-cat {
	text-transform: none !important;
	letter-spacing: .02em !important;
}


/* Antetítulos del hero de archivos y entradas */
.wd-page-content .gh-arch-hero__eyebrow,
.wd-page-content .gh-hero__eyebrow,
.wd-page-content .gh-proj-archive__eyebrow,
.wd-page-content .gh-arch-hero__count {
	text-transform: none !important;
	letter-spacing: .04em !important;
}

/* ==========================================================================
   Alquiser — Tarjeta destacada del blog en azul de marca (antes #0f141b)
   ========================================================================== */
.gh-featured { background: #203E45 !important; }
.gh-featured .gh-card__label { color: #a3cdd4 !important; }
.gh-featured .gh-card__more { color: #a3cdd4 !important; }
.gh-featured__title a:hover { color: #a3cdd4 !important; }

/* ==========================================================================
   Alquiser — ARCHIVOS de blog (/category/) y de proyectos (/project-cat/)
   El hero arranca justo donde termina el encabezado: sin franja intermedia.
   El encabezado es overlay absoluto, así que el padding superior de
   .wd-content-layout se iguala a su altura exacta (112px, 104px por debajo
   de 1024px) y el contenedor .alq-hub no añade espacio propio.
   ========================================================================== */
.archive.category .alq-hub,
.post-type-archive-portfolio .alq-hub,
.tax-project-cat .alq-hub {
	padding-top: 0 !important;
	margin-top: 0 !important;
}

.archive.category .wd-content-layout,
.post-type-archive-portfolio .wd-content-layout,
.tax-project-cat .wd-content-layout { padding-top: 112px !important; }
@media (max-width: 1024px) {
	.archive.category .wd-content-layout,
	.post-type-archive-portfolio .wd-content-layout,
	.tax-project-cat .wd-content-layout { padding-top: 104px !important; }
}

/* Compensar la barra de administración de WordPress */
.admin-bar.archive.category .wd-content-layout,
.admin-bar.post-type-archive-portfolio .wd-content-layout,
.admin-bar.tax-project-cat .wd-content-layout { padding-top: 144px !important; }
@media (max-width: 1024px) {
	.admin-bar.archive.category .wd-content-layout,
	.admin-bar.post-type-archive-portfolio .wd-content-layout,
	.admin-bar.tax-project-cat .wd-content-layout { padding-top: 136px !important; }
}
@media (max-width: 782px) {
	.admin-bar.archive.category .wd-content-layout,
	.admin-bar.post-type-archive-portfolio .wd-content-layout,
	.admin-bar.tax-project-cat .wd-content-layout { padding-top: 150px !important; }
}

/* Las imágenes destacadas son banners 3:1 con la foto en el lado derecho.
   En las miniaturas de tarjeta (3:2) el recorte centrado dejaba a la vista el
   panel vacío, así que se desplaza el encuadre hacia la foto. */
.elementor-page-21325 .gh-card__thumb img,
.elementor-page-21325 .gh-featured__thumb img,
.single-post .gh-card__thumb img,
.single-portfolio .gh-card__thumb img,
.archive.category .gh-card__thumb img,
.post-type-archive-portfolio .gh-card__thumb img,
.tax-project-cat .gh-card__thumb img {
	object-position: 78% 50%;
}

/* Antetítulo y contador del hero de categorías de proyectos */
.wd-page-content .gh-proj-hero__eyebrow,
.wd-page-content .gh-proj-hero__count {
	text-transform: none !important;
	letter-spacing: .04em !important;
}

/* ==========================================================================
   Alquiser — HERO de los archivos (categorías de blog y de proyectos)
   Conservaba la paleta turquesa antigua (#0C2029 de base, acentos #7FE0E4 y
   #20ACB3), que chocaba con el azul de marca y hacía que la franja superior
   se leyera como un borde suelto. Se pasa todo a #002642 / #8FC2E6.
   ========================================================================== */
.gh-arch-hero,
.gh-proj-hero {
	background-color: #002642 !important;
}

/* Velo sobre la foto de la categoría: mismo azul, en vez del negro verdoso */
.gh-arch-hero::before {
	background-image:
		radial-gradient(120% 150% at 8% -10%, rgba(4, 81, 137, .30) 0%, rgba(4, 81, 137, 0) 46%),
		linear-gradient(135deg, rgba(0, 38, 66, .92) 0%, rgba(0, 38, 66, .72) 55%, rgba(0, 38, 66, .45) 100%) !important;
}
.gh-proj-hero::before {
	background-image:
		linear-gradient(90deg, rgba(0, 38, 66, .90) 0%, rgba(0, 38, 66, .72) 42%, rgba(0, 38, 66, .42) 100%),
		radial-gradient(120% 150% at 8% -10%, rgba(4, 81, 137, .30) 0%, rgba(4, 81, 137, 0) 46%) !important;
}

/* Resplandor decorativo */
.gh-arch-hero__glow {
	background-image: radial-gradient(circle, rgba(143, 194, 230, .28) 0%, rgba(143, 194, 230, 0) 68%) !important;
}

/* Acentos: antetítulo, iconos y viñetas */
.gh-arch-hero__eyebrow,
.gh-arch-hero__eyebrow svg,
.gh-arch-hero__i,
.gh-proj-hero__eyebrow,
.gh-proj-hero__badge svg {
	color: #8fc2e6 !important;
}
.gh-arch-hero__eyebrow::after { background: rgba(143, 194, 230, .55) !important; }
.gh-arch-hero__dot { background: #8fc2e6 !important; }

/* Distintivo y contador del hero de proyectos */
.gh-proj-hero__badge { background: rgba(4, 81, 137, .35) !important; }
.gh-proj-hero__count { color: #dbe9f5 !important; }

/* ==========================================================================
   Alquiser — MAPA DE COBERTURA REGIONAL (home)
   Panel a sangre completa: mapa de América a la izquierda y las siete
   direcciones con bandera a la derecha. La trama de puntos procede de
   Natural Earth 110m (dominio público) y va dibujada como un único trazo de
   segmentos degenerados con extremos redondeados.
   Las animaciones arrancan al entrar en pantalla (.is-visible) y solo se
   preparan si hay JavaScript (.alq-js).
   ========================================================================== */
.alq-mapa {
	/* rompe el contenedor de Elementor para ocupar todo el ancho */
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
	max-width: 100vw;
	/* Las secciones vecinas dejan 50px de relleno arriba (y 40px abajo en
	   móvil). Como el panel va a sangre, ese aire se veía como una franja
	   blanca suelta: se absorbe para que el bloque quede pegado. */
	margin-top: -50px;
	margin-bottom: 0;
}

.alq-mapa__panel {
	position: relative;
	background: radial-gradient(90% 70% at 20% 0%, #2e5a63 0%, rgba(46, 90, 99, 0) 60%), #203E45;
	padding: 44px 5vw 40px;
	overflow: hidden;
}

.alq-mapa__grid {
	display: grid;
	grid-template-columns: minmax(0, 1.05fr) minmax(0, 1fr);
	gap: 30px 6%;
	align-items: center;
	max-width: 1500px;
	margin: 0 auto;
}

/* ---- Lienzo ---- */
.alq-mapa__lienzo { position: relative; display: flex; justify-content: center; }
.alq-mapa__svg {
	display: block;
	width: 100%;
	max-width: 500px;
	height: auto;
	overflow: visible;
}

/* Resplandor bajo la silueta: la despega del fondo del panel. */
.alq-mapa__luz { fill: #3d8a93; opacity: .34; }

/* Silueta continua del país. Va debajo de los departamentos y tapa las
   costuras de fracción de píxel que deja simplificar cada uno por separado. */
.alq-mapa__pais { stroke: rgba(163, 205, 212, .55); stroke-width: 1.6; }

.alq-mapa__depto {
	fill: rgba(163, 205, 212, .05);
	stroke: rgba(163, 205, 212, .30);
	stroke-width: 1.1;
	stroke-linejoin: round;
	pointer-events: none;   /* decorativos: no interceptan el ratón */
}

/* ---- Departamentos con cobertura ---- */
.alq-mapa__zona { cursor: pointer; outline: none; }
.alq-mapa__relleno {
	stroke: #ffd071;
	stroke-width: 1.4;
	stroke-linejoin: round;
	opacity: .82;
	transition: opacity .25s ease, filter .25s ease;
}
.alq-mapa.alq-js .alq-mapa__relleno { opacity: 0; }
.alq-mapa.is-visible .alq-mapa__relleno {
	animation: alqEntraZona .7s cubic-bezier(.22, .61, .36, 1) forwards;
	animation-delay: calc(.1s + var(--alq-i) * .07s);
}
@keyframes alqEntraZona { from { opacity: 0; } to { opacity: .82; } }

.alq-mapa__zona:hover .alq-mapa__relleno,
.alq-mapa__zona.is-activa .alq-mapa__relleno {
	opacity: 1;
	filter: drop-shadow(0 0 9px rgba(255, 181, 25, .65));
}
.alq-mapa__zona:focus-visible .alq-mapa__relleno {
	opacity: 1;
	stroke: #fff;
	stroke-width: 3;
}

/* ---- Arcos desde la sede del Meta ---- */
.alq-mapa__arco {
	fill: none;
	stroke: #a3cdd4;
	stroke-width: 2;
	stroke-linecap: round;
	opacity: .38;
	pointer-events: none;
}
.alq-mapa.alq-js .alq-mapa__arco {
	stroke-dasharray: var(--alq-largo);
	stroke-dashoffset: var(--alq-largo);
}
.alq-mapa.is-visible .alq-mapa__arco {
	animation: alqTrazo 1.9s cubic-bezier(.22, .61, .36, 1) forwards;
	animation-delay: calc(.3s + var(--alq-i) * .18s);
}
@keyframes alqTrazo { to { stroke-dashoffset: 0; } }

/* ---- Pines ---- */
.alq-mapa__pin { pointer-events: none; }
.alq-mapa.alq-js .alq-mapa__pin { opacity: 0; }
.alq-mapa.is-visible .alq-mapa__pin {
	animation: alqEntraPin .6s cubic-bezier(.22, .61, .36, 1) forwards;
	animation-delay: calc(.35s + var(--alq-i) * .11s);
}
@keyframes alqEntraPin { from { opacity: 0; } to { opacity: 1; } }

.alq-mapa__halo {
	fill: #fff;
	opacity: 0;
	transform-box: fill-box;
	transform-origin: center;
}
.alq-mapa.is-visible .alq-mapa__pin.is-sede .alq-mapa__halo {
	fill: #ffb519;
	animation: alqLatido 3.2s ease-out infinite;
	animation-delay: calc(1.2s + var(--alq-i) * .38s);
}
@keyframes alqLatido {
	0%   { transform: scale(.3); opacity: .5; }
	70%  { transform: scale(1.2); opacity: 0; }
	100% { transform: scale(1.2); opacity: 0; }
}

.alq-mapa__aro   { fill: #1e4f58; stroke: #fff; stroke-width: 2.4; transition: stroke .25s ease, fill .25s ease; }
.alq-mapa__punto { fill: #fff; transition: fill .25s ease; }
.alq-mapa__pin.is-sede .alq-mapa__aro   { fill: #7c4a00; stroke: #ffd071; stroke-width: 3; }
.alq-mapa__pin.is-sede .alq-mapa__punto { fill: #ffd071; }
.alq-mapa__pin.is-activa .alq-mapa__aro   { stroke: #fff; }
.alq-mapa__pin.is-activa .alq-mapa__punto { fill: #fff; }

/* ---- Recuadro de San Andrés ---- */
.alq-mapa__insular-caja  { fill: rgba(163, 205, 212, .06); stroke: rgba(163, 205, 212, .28); stroke-width: 1.4; }
.alq-mapa__insular-isla  { fill: rgba(163, 205, 212, .40); stroke: rgba(163, 205, 212, .65); stroke-width: 1.2; }
.alq-mapa__insular-rotulo {
	font-family: 'Montserrat', 'Kumbh Sans', sans-serif;
	font-size: 21px;
	font-weight: 600;
	fill: #a3cdd4;
}

/* ---- Tarjeta flotante ---- */
.alq-mapa__globo {
	position: absolute;
	z-index: 4;
	transform: translateX(-50%);
	max-width: 240px;
	padding: 9px 14px;
	border-radius: 12px;
	background: #fff;
	box-shadow: 0 10px 28px rgba(0, 18, 34, .38);
	pointer-events: none;
	display: flex;
	flex-direction: column;
	gap: 2px;
}
.alq-mapa__globo[hidden] { display: none; }
/* Pico, que cambia de lado cuando la tarjeta se voltea hacia abajo. */
.alq-mapa__globo::after {
	content: '';
	position: absolute;
	left: 50%;
	margin-left: -7px;
	border: 7px solid transparent;
	border-top-color: #fff;
	bottom: -13px;
}
.alq-mapa__globo.is-abajo::after {
	bottom: auto;
	top: -13px;
	border-top-color: transparent;
	border-bottom-color: #fff;
}
.alq-mapa__globo-zona {
	font-family: 'Montserrat', 'Kumbh Sans', sans-serif;
	font-size: 14.5px;
	font-weight: 700;
	color: #203E45;
	line-height: 1.2;
}
.alq-mapa__globo-linea { font-size: 12.5px; line-height: 1.35; color: #4a6478; }
.alq-mapa__globo-linea:empty { display: none; }

/* ---- Cabecera del widget, dentro del panel ---- */
.alq-mapa__cabecera {
	max-width: 780px;
	margin: 0 auto 28px;
	text-align: center;
}
.alq-mapa__antetitulo {
	margin: 0 0 6px;
	font-family: 'Montserrat', 'Kumbh Sans', sans-serif;
	font-size: 13.5px;
	font-weight: 600;
	letter-spacing: .6px !important;
	text-transform: none !important;
	color: #a3cdd4 !important;
}
/* !important en todo el bloque: la tipografía de encabezados de WoodMart
   pinta los h2 en ámbar, en mayúsculas y a 25px, y gana por especificidad. */
.alq-mapa__titulo {
	margin: 0 0 10px !important;
	font-family: 'Montserrat', 'Kumbh Sans', sans-serif !important;
	font-size: 34px !important;
	line-height: 1.15 !important;
	font-weight: 700 !important;
	letter-spacing: normal !important;
	text-transform: none !important;
	color: #fff !important;
}
.alq-mapa__intro {
	margin: 0 !important;
	font-size: 15px !important;
	line-height: 1.6 !important;
	text-transform: none !important;
	color: #b9cbdc !important;
}

/* ---- Columna de datos ---- */
.alq-mapa__insignia {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin: 0 0 18px !important;
	padding: 0;
	list-style: none;
}
.alq-mapa__insignia span {
	padding: 6px 14px;
	border-radius: 30px;
	background: rgba(163, 205, 212, .12);
	border: 1px solid rgba(163, 205, 212, .22);
	font-size: 13px;
	color: #cfe1f0;
}
.alq-mapa__insignia strong { color: #ffc95c; font-weight: 700; }

.alq-mapa__sedes { list-style: none; margin: 0 0 22px; padding: 0; display: grid; gap: 10px; }
.alq-mapa__sede {
	display: flex;
	gap: 13px;
	padding: 13px 16px;
	border-radius: 14px;
	background: rgba(163, 205, 212, .07);
	border: 1px solid rgba(163, 205, 212, .16);
	cursor: pointer;
	transition: background-color .25s ease, border-color .25s ease, transform .25s ease;
}
.alq-mapa__sede:hover,
.alq-mapa__sede.is-activa {
	background: rgba(255, 181, 25, .12);
	border-color: rgba(255, 181, 25, .45);
	transform: translateX(3px);
}
.alq-mapa__sede-marca {
	flex: 0 0 auto;
	width: 11px;
	height: 11px;
	margin-top: 5px;
	border-radius: 50%;
	background: #ffb519;
	box-shadow: 0 0 0 4px rgba(255, 181, 25, .20);
}
.alq-mapa__sede-texto { display: block; min-width: 0; }
.alq-mapa__sede-zona {
	display: block;
	font-family: 'Montserrat', 'Kumbh Sans', sans-serif;
	font-size: 15.5px;
	font-weight: 700;
	color: #fff;
	margin-bottom: 2px;
}
.alq-mapa__sede-linea { display: block; font-size: 13.5px; line-height: 1.45; color: #b9cbdc; }
.alq-mapa__sede-linea.is-dir { color: #dce8f2; }

.alq-mapa__epigrafe {
	margin: 0 0 10px !important;
	font-family: 'Montserrat', 'Kumbh Sans', sans-serif;
	font-size: 12.5px;
	font-weight: 600;
	letter-spacing: .6px !important;
	text-transform: uppercase !important;
	color: #a3cdd4 !important;
}
.alq-mapa__etiquetas {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}
.alq-mapa__etiqueta {
	padding: 7px 13px;
	border-radius: 10px;
	background: rgba(163, 205, 212, .08);
	border: 1px solid rgba(163, 205, 212, .18);
	cursor: pointer;
	line-height: 1.25;
	transition: background-color .25s ease, border-color .25s ease;
}
.alq-mapa__etiqueta:hover,
.alq-mapa__etiqueta.is-activa {
	background: rgba(255, 181, 25, .14);
	border-color: rgba(255, 181, 25, .45);
}
.alq-mapa__etiqueta-zona {
	display: block;
	font-family: 'Montserrat', 'Kumbh Sans', sans-serif;
	font-size: 13.5px;
	font-weight: 600;
	color: #fff;
}
.alq-mapa__etiqueta-ciudad { display: block; font-size: 12px; color: #9fb6c9; }

/* ---- Tableta y móvil ---- */
@media (max-width: 1024px) {
	.alq-mapa__grid { grid-template-columns: minmax(0, 1fr); gap: 28px; }
	.alq-mapa__panel { padding: 36px 6vw 32px; }
	.alq-mapa__svg { max-width: 430px; }
	.alq-mapa__datos { max-width: 620px; margin: 0 auto; width: 100%; }
}

@media (max-width: 767px) {
	.alq-mapa { margin-bottom: -40px; }
	.alq-mapa__panel { padding: 30px 5vw 26px; }
	.alq-mapa__svg { max-width: 330px; }
	.alq-mapa__cabecera { margin-bottom: 20px; }
	.alq-mapa__titulo { font-size: 25px !important; }
	.alq-mapa__intro { font-size: 13.5px !important; line-height: 1.5 !important; }
	.alq-mapa__antetitulo { font-size: 12.5px !important; letter-spacing: .4px !important; }
	.alq-mapa__insular-rotulo { font-size: 27px; }
	.alq-mapa__globo { max-width: 190px; padding: 8px 12px; }
	.alq-mapa__globo-zona { font-size: 13.5px; }
	.alq-mapa__sede { padding: 11px 13px; }
	.alq-mapa__sede-zona { font-size: 15px; }
	.alq-mapa__sede-linea { font-size: 13px; }
}

/* ---- Movimiento reducido: estado final, sin animación ---- */
@media (prefers-reduced-motion: reduce) {
	.alq-mapa.is-visible .alq-mapa__arco,
	.alq-mapa.is-visible .alq-mapa__pin,
	.alq-mapa.is-visible .alq-mapa__relleno,
	.alq-mapa.is-visible .alq-mapa__pin.is-sede .alq-mapa__halo { animation: none !important; }
	.alq-mapa.alq-js .alq-mapa__arco   { stroke-dashoffset: 0; }
	.alq-mapa.alq-js .alq-mapa__pin    { opacity: 1; }
	.alq-mapa.alq-js .alq-mapa__relleno { opacity: .82; }
	.alq-mapa.alq-js .alq-mapa__pin.is-sede .alq-mapa__halo { opacity: .22; }
	.alq-mapa__sede:hover, .alq-mapa__sede.is-activa { transform: none; }
}



/* --------------------------------------------------------------------------
   Altura de las tarjetas de «Lo más reciente» en el hub del blog.

   En esa fila la tarjeta destacada y las tres pequeñas comparten altura, y la
   destacada la fijaba en 630 px. Como la imagen de las tres pequeñas estaba
   declarada al 100 % de la tarjeta, se estiraba hasta 408 px y las tarjetas
   quedaban desproporcionadas frente a las de «Todos los artículos», que miden
   337 px con imagen de 200.

   Se igualan las tres zonas: imagen de 200 px en toda la página, como ya hacía
   la rejilla inferior, y el resumen limitado a tres líneas para que el alto no
   dependa de lo larga que sea la entradilla de cada artículo.
   -------------------------------------------------------------------------- */

.gh-research__grid .gh-card__thumb img,
.gh-featured .gh-featured__thumb img {
	height: 200px;
	min-height: 0;
	object-fit: cover;
}

.gh-featured .gh-featured__thumb,
.gh-research__grid .gh-card__thumb {
	height: 200px;
	flex: 0 0 auto;
}

/* El resumen deja de estirar la tarjeta: tres líneas y elipsis. */
.gh-featured .gh-featured__excerpt,
.gh-research__grid .gh-card__excerpt {
	display: -webkit-box;
	-webkit-line-clamp: 3;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

/* El cuerpo ya no necesita rellenar el hueco que dejaba la imagen estirada. */
.gh-featured .gh-featured__body {
	flex: 1 1 auto;
	justify-content: flex-start;
}

/* En móvil la fila se apila y la imagen puede respirar un poco más. */
@media (max-width: 767px) {
	.gh-research__grid .gh-card__thumb img,
	.gh-featured .gh-featured__thumb img,
	.gh-featured .gh-featured__thumb,
	.gh-research__grid .gh-card__thumb {
		height: 180px;
	}
}

/* ==========================================================================
   Alquiser — Bloque de llamada a la acción dentro de los artículos
   La clase `.alq-cta` existía en el HTML de los 34 artículos desde que se
   redactaron, pero nunca llegó a tener CSS: quedaba como un párrafo suelto y
   sus dos enlaces salían blancos sobre blanco, invisibles.
   ========================================================================== */
.alq-cta {
	margin: 34px 0;
	padding: 26px 28px;
	border-radius: 14px;
	background: #203E45;
	color: #dfeaee;
}
.alq-cta h2,
.alq-cta h3 {
	/* El kit pinta los encabezados en #203E45, que sobre esta caja sería
	   invisible: aquí mandan el blanco y un tamaño acorde al cuerpo. */
	margin: 0 0 10px !important;
	font-size: 21px !important;
	line-height: 1.3 !important;
	color: #ffffff !important;
}
.alq-cta p,
.alq-cta li {
	/* !important: la tipografía del cuerpo del artículo fija #133848 con
	   !important y sobre esta caja oscura quedaría ilegible. */
	margin: 0;
	font-size: 15.5px !important;
	line-height: 1.65 !important;
	color: #dfeaee !important;
}
.alq-cta a {
	color: #a3cdd4 !important;
	text-decoration: underline;
	text-underline-offset: 3px;
	transition: color .2s ease;
}
.alq-cta a:hover,
.alq-cta a:focus-visible { color: #ffffff !important; }

/* ==========================================================================
   Alquiser — Enlaces dentro del texto de artículos y proyectos
   Al retirar el color de enlace global caían al gris #9C9C9C del kit, que sobre
   blanco da 2,8:1. Aquí van en el verde de marca, 4,52:1, y subrayados para que
   se distingan del texto por algo más que el color.
   ========================================================================== */
.single-post .entry-content a:not(.btn):not(.elementor-button):not([class*="wd-"]),
.single-portfolio .wd-single-project a:not(.btn):not(.elementor-button):not([class*="wd-"]),
.single-post .wd-single-post a:not(.btn):not(.elementor-button):not([class*="wd-"]) {
	color: #4E8341;
	text-decoration: underline;
	text-underline-offset: 3px;
}
.single-post .entry-content a:hover,
.single-portfolio .wd-single-project a:hover,
.single-post .wd-single-post a:hover { color: #203E45; }

/* La caja de llamada manda sobre la regla anterior: va sobre fondo oscuro. */
.alq-cta a,
.alq-cta a:hover { text-decoration: underline; }

@media (max-width: 767px) {
	.alq-cta { padding: 20px 18px; margin: 26px 0; }
	.alq-cta h2, .alq-cta h3 { font-size: 19px !important; }
	.alq-cta p { font-size: 15px; }
}

/* ==========================================================================
   Alquiser — Precisión sobre la tipografía del cuerpo
   `.single-post .wd-entry-content p` fija #133848 con !important y gana a
   `.alq-cta p` por especificidad, así que el texto de la caja salía oscuro
   sobre oscuro. Aquí se sube la especificidad lo justo para ganarle.
   El contenedor real del artículo es `.wd-entry-content`, no `.entry-content`.
   ========================================================================== */
.single-post .wd-entry-content .alq-cta p,
.single-post .wd-entry-content .alq-cta li,
.single-portfolio .wd-entry-content .alq-cta p,
.single-portfolio .wd-entry-content .alq-cta li,
.single-post .wd-single-project .alq-cta p,
.single-portfolio .wd-single-project .alq-cta p {
	color: #dfeaee !important;
}
.single-post .wd-entry-content .alq-cta h2,
.single-portfolio .wd-entry-content .alq-cta h2 {
	color: #ffffff !important;
}

/* Enlaces dentro del texto del artículo, con el contenedor correcto. */
.single-post .wd-entry-content a:not([class]),
.single-portfolio .wd-entry-content a:not([class]),
.single-post .wd-single-project a:not([class]),
.single-portfolio .wd-single-project a:not([class]) {
	color: #4E8341;
	text-decoration: underline;
	text-underline-offset: 3px;
}
.single-post .wd-entry-content a:not([class]):hover,
.single-portfolio .wd-entry-content a:not([class]):hover { color: #203E45; }

/* Dentro de la caja oscura mandan sus propios colores. */
.single-post .wd-entry-content .alq-cta a:not([class]),
.single-portfolio .wd-entry-content .alq-cta a:not([class]) { color: #a3cdd4; }
.single-post .wd-entry-content .alq-cta a:not([class]):hover,
.single-portfolio .wd-entry-content .alq-cta a:not([class]):hover { color: #ffffff; }


/* ==========================================================================
   Alquiser — Texto del botón de la cabecera
   El kit fija `.elementor-kit-21510 a { color:#9C9C9C }` y gana a `.btn` por
   especificidad. No se notaba mientras la regla global del personalizador
   pintaba todos los enlaces de blanco; al retirarla, «Solicitar cotización»
   quedó en gris sobre verde. El constructor de cabecera declara el color de
   cada botón en --btn-color: aquí se le devuelve.
   ========================================================================== */
.whb-header a.btn,
.whb-header a.btn:visited { color: var(--btn-color, #fff) !important; }
.whb-header a.btn:hover,
.whb-header a.btn:focus-visible { color: var(--btn-color-hover, var(--btn-color, #fff)) !important; }

/* ==========================================================================
   Alquiser — Caja de autor al final de los artículos
   Plantilla propia en author-bio.php. Foto a la izquierda, texto a la derecha.
   Los selectores llevan dos clases porque la hoja del tema padre para esta
   caja se imprime después, dentro del propio bloque, y gana los empates.
   ========================================================================== */
.wd-author-bio.alq-autor {
	display: grid;
	grid-template-columns: 96px minmax(0, 1fr);
	gap: 22px;
	align-items: start;
	margin: 36px 0 12px;
	padding: 26px 28px;
	text-align: left;
	background: #f3f7f7;
	border: 1px solid #dde8e9;
	border-left: 4px solid #4e8341;
	border-radius: 14px;
}
.wd-author-bio.alq-autor .alq-autor__foto img {
	display: block;
	width: 96px;
	height: 96px;
	margin: 0;
	padding: 10px;
	box-sizing: border-box;
	object-fit: contain;
	background: #fff;
	border: 1px solid #dde8e9;
	border-radius: 50%;
}
.wd-author-bio.alq-autor .alq-autor__rol {
	margin: 0 0 4px !important;
	font-family: 'Montserrat', 'Kumbh Sans', sans-serif;
	font-size: 12px !important;
	font-weight: 600;
	letter-spacing: .6px;
	text-transform: uppercase;
	color: #203e45 !important;
}
.wd-author-bio.alq-autor .alq-autor__nombre {
	margin: 0 0 10px !important;
	font-family: 'Montserrat', 'Kumbh Sans', sans-serif !important;
	font-size: 20px !important;
	line-height: 1.3 !important;
	text-transform: none !important;
	color: #203e45 !important;
}
.wd-author-bio.alq-autor .wd-author-area-info {
	margin: 0 0 14px !important;
	font-size: 15px !important;
	line-height: 1.65 !important;
	color: #133848 !important;
}
.wd-author-bio.alq-autor .alq-autor__enlace {
	display: inline-block;
	font-weight: 600;
	font-size: 14px;
	color: #203e45 !important;
	text-decoration: underline;
	text-decoration-color: #4e8341;
	text-underline-offset: 4px;
}
.wd-author-bio.alq-autor .alq-autor__enlace:hover { color: #4e8341 !important; }

@media (max-width: 767px) {
	.wd-author-bio.alq-autor { grid-template-columns: 72px minmax(0, 1fr); gap: 16px; padding: 20px 18px; }
	.wd-author-bio.alq-autor .alq-autor__foto img { width: 72px; height: 72px; padding: 8px; }
	.wd-author-bio.alq-autor .alq-autor__nombre { font-size: 18px !important; }
}

/* ==========================================================================
   Alquiser — Barra lateral del blog: servicios relacionados y llamada
   Prefijo `.wd-sidebar` para ganar a `.elementor-kit-21510 a`, que tiñe todos
   los enlaces del gris del kit.
   ========================================================================== */
.wd-sidebar .alq-servicios { list-style: none; margin: 0; padding: 0; }
.wd-sidebar .alq-servicios li { margin: 0; border-bottom: 1px solid #e3ecec; }
.wd-sidebar .alq-servicios li:last-child { border-bottom: 0; }
.wd-sidebar .alq-servicios a {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 10px;
	padding: 11px 0;
	font-size: 14px;
	font-weight: 600;
	line-height: 1.35;
	color: #203e45 !important;
	text-decoration: none;
	transition: color .2s ease;
}
.wd-sidebar .alq-servicios a::after { content: '\2192'; flex: 0 0 auto; color: #4e8341; transition: transform .2s ease; }
.wd-sidebar .alq-servicios a:hover { color: #4e8341 !important; }
.wd-sidebar .alq-servicios a:hover::after { transform: translateX(3px); }
.wd-sidebar .alq-servicios__todos {
	display: inline-block;
	margin-top: 12px;
	font-size: 13px;
	font-weight: 600;
	color: #203e45 !important;
	text-decoration: underline;
	text-decoration-color: #4e8341;
	text-underline-offset: 3px;
}

.wd-sidebar .alq-cta-lateral {
	padding: 22px 20px;
	border-radius: 14px;
	background: #203e45;
}
.wd-sidebar .alq-cta-lateral__titulo {
	margin: 0 0 8px;
	font-family: 'Montserrat', 'Kumbh Sans', sans-serif;
	font-size: 18px;
	font-weight: 700;
	line-height: 1.3;
	color: #fff !important;
}
.wd-sidebar .alq-cta-lateral__texto {
	margin: 0 0 16px;
	font-size: 14px;
	line-height: 1.55;
	color: #dfeaee !important;
}
.wd-sidebar .alq-cta-lateral__btn {
	display: block;
	padding: 12px 14px;
	border-radius: 6px;
	text-align: center;
	font-size: 14px;
	font-weight: 700;
	text-decoration: none;
	color: #fff !important;
	background: #4e8341;
	transition: background-color .2s ease, color .2s ease;
}
/* El hover general de los botones es #203E45, que aquí se fundiría con el
   fondo de la caja: sobre fondo oscuro el botón se invierte a blanco. */
.wd-sidebar .alq-cta-lateral__btn:hover,
.wd-sidebar .alq-cta-lateral__btn:focus-visible { background: #fff; color: #203e45 !important; }
.wd-sidebar .alq-cta-lateral__wa {
	display: block;
	margin-top: 12px;
	text-align: center;
	font-size: 13px;
	color: #a3cdd4 !important;
	text-decoration: underline;
	text-underline-offset: 3px;
}
.wd-sidebar .alq-cta-lateral__wa:hover { color: #fff !important; }


/* ==========================================================================
   Alquiser — Precisión para la caja de autor y la llamada lateral
   · La hoja del tema padre para la caja de autor (`.wd-builder-off
     .wd-author-bio`) se imprime dentro del propio bloque, después de esta, y
     ganaba los empates: fondo, relleno, radio y alineación.
   · `.single-post .wd-sidebar a { color:#4a5563 !important }`, heredada de la
     plantilla, teñía de gris el botón y el enlace de WhatsApp de la caja
     lateral. Con `a.` en el selector se empata en especificidad y, al ir
     después en el fichero, gana esta.
   ========================================================================== */
.wd-author-bio.wd-design-1.alq-autor {
	--content-align: flex-start;
	margin: 36px 0 12px;
	padding: 26px 28px;
	text-align: left;
	background: #f3f7f7;
	border: 1px solid #dde8e9;
	border-left: 4px solid #4e8341;
	border-radius: 14px;
}

.wd-sidebar a.alq-cta-lateral__btn,
.wd-sidebar a.alq-cta-lateral__btn:visited { color: #fff !important; background: #4e8341; }
.wd-sidebar a.alq-cta-lateral__btn:hover,
.wd-sidebar a.alq-cta-lateral__btn:focus-visible { color: #203e45 !important; background: #fff; }
.wd-sidebar a.alq-cta-lateral__wa,
.wd-sidebar a.alq-cta-lateral__wa:visited { color: #a3cdd4 !important; }
.wd-sidebar a.alq-cta-lateral__wa:hover,
.wd-sidebar a.alq-cta-lateral__wa:focus-visible { color: #fff !important; }

/* En móvil la foto va arriba y el texto usa todo el ancho: con la foto al lado
   el texto quedaba en una columna de 217 px y la caja medía 612 px de alto. */
@media (max-width: 600px) {
	.wd-author-bio.wd-design-1.alq-autor { grid-template-columns: minmax(0, 1fr); gap: 14px; padding: 20px 18px; }
	.wd-author-bio.wd-design-1.alq-autor .alq-autor__foto img { width: 64px; height: 64px; padding: 7px; }
}


/* ==========================================================================
   Alquiser — Barra «Comparte este artículo»
   Botones con icono y nombre de la red. En reposo, texto #203E45 sobre blanco
   (11,4:1) e icono en el color de cada marca; al pasar el ratón, fondo
   #203E45 y blanco, como el resto de botones del sitio.
   Los selectores anulan el tamaño fijo de 40 × 40 px que Woodmart da a
   `.wd-social-icons > a`, pensado para iconos sin texto.
   ========================================================================== */
.alq-compartir {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 12px 18px;
	margin: 30px 0;
	padding: 20px 0;
	border-top: 1px solid #e3ecec;
	border-bottom: 1px solid #e3ecec;
}
.alq-compartir .alq-compartir__titulo {
	margin: 0 !important;
	font-family: 'Montserrat', 'Kumbh Sans', sans-serif;
	font-size: 15px;
	font-weight: 700;
	color: #203e45 !important;
}
.wd-social-icons.alq-compartir__lista { gap: 10px; justify-content: flex-start; }
.wd-social-icons.alq-compartir__lista > a.alq-compartir__btn {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	width: auto;
	height: auto;
	padding: 8px 15px 8px 12px;
	font-size: 14px;
	font-weight: 600;
	line-height: 1.2;
	text-decoration: none;
	color: #203e45 !important;
	background: #fff;
	border: 1px solid #dde8e9;
	border-radius: 30px;
	transition: background-color .2s ease, border-color .2s ease, color .2s ease;
}
.wd-social-icons.alq-compartir__lista > a.alq-compartir__btn .wd-icon {
	font-size: 16px;
	line-height: 1;
	color: var(--wd-social-brand-color);
	transition: color .2s ease;
}
.wd-social-icons.alq-compartir__lista > a.alq-compartir__btn:hover,
.wd-social-icons.alq-compartir__lista > a.alq-compartir__btn:focus-visible {
	color: #fff !important;
	background: #203e45;
	border-color: #203e45;
}
.wd-social-icons.alq-compartir__lista > a.alq-compartir__btn:hover .wd-icon,
.wd-social-icons.alq-compartir__lista > a.alq-compartir__btn:focus-visible .wd-icon { color: #fff; }
.wd-social-icons.alq-compartir__lista > a.alq-compartir__btn:focus-visible { outline: 3px solid #4e8341; outline-offset: 2px; }

@media (max-width: 600px) {
	.alq-compartir { gap: 10px; }
	.alq-compartir .alq-compartir__titulo { flex: 1 1 100%; }
	.wd-social-icons.alq-compartir__lista > a.alq-compartir__btn { padding: 8px 12px 8px 10px; font-size: 13px; }
}

/* ==========================================================================
   Alquiser — La llamada a la acción de la barra lateral se queda a la vista
   Va la última de la barra, después de los servicios relacionados, y en
   escritorio se fija al bajar: la columna lateral mide lo mismo que el
   artículo, así que acompaña toda la lectura. En móvil la barra es un panel
   desplegable y ahí no se fija.
   ========================================================================== */
@media (min-width: 1025px) {
	.single-post .wd-sidebar > .widget-area { height: 100%; }
	.single-post .wd-sidebar .widget_alq_cta {
		position: sticky;
		top: var(--alq-cta-top, 136px); /* cabecera fija de 112 px + 24 px de aire */
	}
}

/* ==========================================================================
   Alquiser — Etiqueta de categoría en las tarjetas de proyecto
   Iba a 12 px en MAYÚSCULAS con 0,96 px de espaciado y seminegrita: al lado de
   un título de 13 px pesaba casi tanto como el título y en el carrusel se
   cortaba («MANTENIMIENTO»). Además salía en mayúsculas en la rejilla y no en
   el carrusel. Ahora es una etiqueta discreta y coherente en ambos sitios.
   `body` delante para ganar a las reglas por página del bloque de tipografía.
   ========================================================================== */
body .wd-project--alq .proj-cats-list li,
body .wd-project--alq .proj-cats-list .wd-project__cat-name {
	font-size: 11px !important;
	font-weight: 600 !important;
	letter-spacing: .2px !important;
	text-transform: none !important;
	line-height: 1.3 !important;
}
body .wd-project--alq .proj-cats-list li { gap: 6px; }
body .wd-project--alq .wd-project__cat-icon svg { width: 13px; height: 13px; }

/* ==========================================================================
   Alquiser — Hero pegado a la cabecera, con y sin sesión iniciada
   La cabecera va superpuesta, así que el hueco superior de .wd-content-layout
   debe ser exactamente su altura: 112 px en escritorio y 104 px por debajo de
   1025 px (medidos). Había reglas acumuladas que no coincidían:
   · entradas y proyectos individuales iban a 136 px → 24 px de franja (12 en móvil);
   · con la barra de administración, a 144 y 168 px: sumaban 32 px «por la
     barra», pero la barra desplaza por igual la cabecera y el contenido, así
     que ese añadido era justo el hueco que se veía (32 px en archivos y 56 en
     entradas para quien estuviera conectado).
   Mismos selectores que las reglas antiguas: al ir después, ganan.
   ========================================================================== */
.single-post .wd-content-layout,
.single-portfolio .wd-content-layout,
.archive.category .wd-content-layout,
.post-type-archive-portfolio .wd-content-layout,
.tax-project-cat .wd-content-layout,
.admin-bar.single-post .wd-content-layout,
.admin-bar.single-portfolio .wd-content-layout,
.admin-bar.archive.category .wd-content-layout,
.admin-bar.post-type-archive-portfolio .wd-content-layout,
.admin-bar.tax-project-cat .wd-content-layout { padding-top: 112px !important; }

@media (max-width: 1024px) {
	.single-post .wd-content-layout,
	.single-portfolio .wd-content-layout,
	.archive.category .wd-content-layout,
	.post-type-archive-portfolio .wd-content-layout,
	.tax-project-cat .wd-content-layout,
	.admin-bar.single-post .wd-content-layout,
	.admin-bar.single-portfolio .wd-content-layout,
	.admin-bar.archive.category .wd-content-layout,
	.admin-bar.post-type-archive-portfolio .wd-content-layout,
	.admin-bar.tax-project-cat .wd-content-layout { padding-top: 104px !important; }
}

/* ==========================================================================
   Alquiser — PIE DE PÁGINA: títulos en tipo oración ("Servicios y equipos").
   Los títulos del pie heredan la tipografía global Secundaria, que trae
   text-transform: capitalize y convertía la «y» en «Y». Se anula solo aquí
   para no tocar el resto de títulos que usan esa tipografía.
   ========================================================================== */
.elementor-9433 .elementor-element.elementor-element-06f8c4a .elementor-heading-title,
.elementor-9433 .elementor-element.elementor-element-6e4bafc .elementor-heading-title,
.elementor-9433 .elementor-element.elementor-element-5a27c5d .elementor-heading-title {
	text-transform: none !important;
}

/* ==========================================================================
   Alquiser — SERVICIOS: «Nuestras líneas de servicio» en escritorio.
   Cinco tarjetas en una fila, a la misma altura y con cada bloque (foto,
   icono, título, texto, viñetas, botón) alineado entre tarjetas. En tablet
   y celular se conserva la disposición de Elementor.
   ========================================================================== */
@media (min-width: 1025px) {
	.elementor-20792 .elementor-element.elementor-element-9ed65cf {
		display: grid !important;
		grid-template-columns: repeat(5, minmax(0, 1fr));
		gap: 18px;
		align-items: stretch;
	}
	.elementor-20792 .elementor-element-9ed65cf > .e-con {
		width: auto !important;
		max-width: none !important;
		margin: 0 !important;
		padding: 0 0 22px !important;
		gap: 14px !important;
		display: flex !important;
		flex-direction: column !important;
		overflow: hidden;
	}
	/* Foto: mismo alto y mismo encuadre en las cinco. */
	.elementor-20792 .elementor-element-9ed65cf > .e-con > .elementor-widget-image:first-child img {
		display: block;
		width: 100%;
		height: 170px;
		object-fit: cover;
		object-position: center;
		border-radius: 20px 20px 0 0;
	}
	/* Título: reserva dos líneas para que el texto arranque a la misma altura. */
	.elementor-20792 .elementor-element-9ed65cf > .e-con > .elementor-widget-heading .elementor-heading-title {
		line-height: 1.25;
		min-height: 2.5em;
	}
	/* Descripción: reserva tres líneas. */
	.elementor-20792 .elementor-element-9ed65cf > .e-con > .elementor-widget-text-editor {
		min-height: calc(3 * 1.5em);
	}
	.elementor-20792 .elementor-element-9ed65cf > .e-con > .elementor-widget-text-editor,
	.elementor-20792 .elementor-element-9ed65cf > .e-con > .elementor-widget-text-editor p {
		font-size: 14px;
		line-height: 1.5;
		margin-bottom: 0;
	}
	/* Viñetas: mismo tamaño, interlineado y sangría; el punto va arriba. */
	.elementor-20792 .elementor-element-9ed65cf > .e-con > .elementor-widget-wd_list {
		flex-grow: 1;
		padding-top: 12px;
		border-top: 1px solid #e6edf2;
	}
	.elementor-20792 .elementor-element-9ed65cf .wd-list li {
		align-items: flex-start !important;
		font-size: 13.5px !important;
		line-height: 1.45 !important;
		margin-bottom: 8px !important;
	}
	.elementor-20792 .elementor-element-9ed65cf .wd-list li .wd-icon {
		margin-top: 0.45em;
		flex: 0 0 auto;
	}
	/* Botón siempre al fondo de la tarjeta. */
	.elementor-20792 .elementor-element-9ed65cf > .e-con > .elementor-widget-button {
		margin-top: auto;
	}
}

/* ==========================================================================
   Alquiser — INICIO: tarjetas de «Servicios integrales para tanques».
   Tarjetas verticales del mismo tamaño, con la foto a la vista y un degradado
   solo en la parte baja, donde van título, texto y botón. Sustituye el efecto
   que ensanchaba la columna al 80 % al pasar el ratón (encimaba las tarjetas)
   y los márgenes desiguales entre columnas.
   ========================================================================== */
.elementor-6014 .elementor-element-da59cd7 > .elementor-container {
	display: grid !important;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 18px;
	margin: 0 !important;
}
.elementor-6014 .elementor-element-da59cd7 > .elementor-container > .elementor-column,
.elementor-6014 .elementor-element-da59cd7 > .elementor-container > .elementor-column:hover {
	width: auto !important;
	max-width: none !important;
	min-height: 0 !important;
	margin: 0 !important;
	transition: none !important;
}
.elementor-6014 .elementor-element-da59cd7 .elementor-column > .elementor-widget-wrap {
	position: relative;
	margin: 0 !important;
	min-height: 460px;
	padding: 0 22px 24px !important;
	align-content: flex-end !important;
	align-items: flex-end !important;
	border-radius: 18px !important;
	overflow: hidden;
	background-size: cover !important;
	box-shadow: 0 10px 30px rgba(20, 52, 61, 0.12);
	transition: transform 0.35s ease, box-shadow 0.35s ease;
}
.elementor-6014 .elementor-element-da59cd7 .elementor-column > .elementor-widget-wrap:hover {
	transform: translateY(-4px);
	box-shadow: 0 18px 40px rgba(20, 52, 61, 0.22);
}
/* Degradado solo abajo: la foto queda limpia en la mitad superior. */
.elementor-6014 .elementor-element-da59cd7 .elementor-column > .elementor-widget-wrap > .elementor-background-overlay {
	background: linear-gradient(to top, rgba(20, 52, 61, 0.96) 0%, rgba(20, 52, 61, 0.82) 30%, rgba(20, 52, 61, 0.25) 58%, rgba(20, 52, 61, 0) 72%) !important;
	opacity: 1 !important;
	border-radius: 18px !important;
}
.elementor-6014 .elementor-element-da59cd7 .elementor-widget-wrap > .elementor-element {
	width: 100%;
	margin-bottom: 10px !important;
}
.elementor-6014 .elementor-element-da59cd7 .elementor-widget-heading .elementor-heading-title {
	font-size: 23px !important;
	line-height: 1.2 !important;
}
.elementor-6014 .elementor-element-da59cd7 .elementor-widget-text-editor,
.elementor-6014 .elementor-element-da59cd7 .elementor-widget-text-editor p {
	font-size: 14px !important;
	line-height: 1.5 !important;
	margin-bottom: 0 !important;
}
.elementor-6014 .elementor-element-da59cd7 .elementor-widget-button {
	margin: 8px 0 0 !important;
}
.elementor-6014 .elementor-element-da59cd7 .elementor-widget-button .elementor-button {
	padding: 10px 20px !important;
	font-size: 13px !important;
}
/* Encuadre por foto. */
.elementor-6014 .elementor-element-094245c > .elementor-widget-wrap { background-position: 40% center !important; }
.elementor-6014 .elementor-element-a515db3 > .elementor-widget-wrap { background-position: 45% center !important; }
.elementor-6014 .elementor-element-d19c0c5 > .elementor-widget-wrap { background-position: 65% center !important; }
.elementor-6014 .elementor-element-76dd031 > .elementor-widget-wrap { background-position: 55% center !important; }

@media (max-width: 1024px) {
	.elementor-6014 .elementor-element-da59cd7 > .elementor-container {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
	.elementor-6014 .elementor-element-da59cd7 .elementor-column > .elementor-widget-wrap {
		min-height: 420px;
	}
}
@media (max-width: 767px) {
	.elementor-6014 .elementor-element-da59cd7 > .elementor-container {
		grid-template-columns: minmax(0, 1fr);
		gap: 16px;
	}
	.elementor-6014 .elementor-element-da59cd7 .elementor-column > .elementor-widget-wrap {
		min-height: 380px;
		padding: 0 20px 22px !important;
	}
	.elementor-6014 .elementor-element-da59cd7 .elementor-widget-heading .elementor-heading-title {
		font-size: 22px !important;
	}
}
