/**
 * ADCR Modern Layer v3.5.1 — contadores + diseño site-wide en páginas WPB.
 */
:root {
	--adcr-primary: #fe6400;
	--adcr-primary-dark: #c24100;
	--adcr-cta: #c24100;
	--adcr-cta-hover: #a03600;
	--adcr-topbar: #e76f02;
	--adcr-accent: #54c8ef;
	--adcr-navy: #2a3158;
	--adcr-text: #384559;
	--adcr-muted: #465568;
	--adcr-surface: #ffffff;
	--adcr-bg: #f4f7fb;
	--adcr-radius: 16px;
	--adcr-radius-sm: 10px;
	--adcr-radius-pill: 999px;
	--adcr-shadow: 0 4px 24px rgba(58, 65, 111, 0.08);
	--adcr-shadow-hover: 0 16px 48px rgba(254, 100, 0, 0.18);
	--adcr-transition: 0.25s cubic-bezier(0.4, 0, 0.2, 1);
	--adcr-transition-slow: 0.55s cubic-bezier(0.22, 1, 0.36, 1);
	--adcr-container: min(1140px, 92vw);
}

@media (prefers-reduced-motion: no-preference) {
	html {
		scroll-behavior: smooth;
	}
}

/* Ocultar marco decorativo obsoleto */
#frame {
	display: none !important;
}

/* Header moderno con glass effect */
.site-header {
	transition: box-shadow var(--adcr-transition), backdrop-filter var(--adcr-transition);
}

.site-header-sticky.is-sticky,
.header-shadow {
	box-shadow: var(--adcr-shadow);
}

.site-header-sticky.is-sticky .site-header-inner {
	backdrop-filter: blur(12px);
	background: rgba(255, 255, 255, 0.92);
}

.site-topbar {
	background: linear-gradient(90deg, var(--adcr-topbar), var(--adcr-primary)) !important;
}

/* Botones nativos en lugar de enlaces falsos (agentes + Lighthouse) */
button.off-canvas-toggle,
button.search-toggle,
.go-to-top button {
	appearance: none;
	border: 0;
	background: transparent;
	padding: 0;
	margin: 0;
	cursor: pointer;
	font: inherit;
	color: inherit;
	line-height: inherit;
}

button.off-canvas-toggle:focus-visible,
button.search-toggle:focus-visible {
	outline: 2px solid var(--adcr-accent);
	outline-offset: 2px;
}

.go-to-top button {
	position: relative;
	text-transform: uppercase;
	font-size: 10px;
	letter-spacing: 2px;
	font-weight: 500;
	display: inline-block;
	color: inherit;
	z-index: 4;
	cursor: pointer;
}

.go-to-top a,
.go-to-top button {
	position: relative;
	text-transform: uppercase;
	font-size: 10px;
	letter-spacing: 2px;
	font-weight: 500;
	display: inline-block;
	color: inherit;
	z-index: 4;
}

.go-to-top a:before,
.go-to-top button:before {
	content: "\ea05";
	font-family: "Nucleo";
	width: 50px;
	height: 50px;
	line-height: 50px;
	text-align: center;
	display: inline-block;
	border-radius: 50%;
	font-size: 16px;
	color: #fff;
	background-color: var(--adcr-primary, #fe6400);
	transition: var(--adcr-transition);
	transform: rotate(-180deg);
}

.go-to-top a span,
.go-to-top button span {
	display: block;
	margin-top: 8px;
	color: var(--adcr-navy);
	font-weight: 600;
}

.go-to-top a:hover:before,
.go-to-top button:hover:before {
	background-color: var(--adcr-navy, #3a416f);
}

/* Nav del header — SIEMPRE navy legible (sin texto blanco nunca) */
#site-header .navigator .menu-primary > li > a,
#site-header-sticky .navigator .menu-primary > li > a,
#site-header.header-transparent .navigator .menu-primary > li > a,
#site-header-sticky.header-transparent .navigator .menu-primary > li > a,
body.home #site-header .navigator .menu-primary > li > a,
body.home #site-header-sticky .navigator .menu-primary > li > a {
	color: var(--adcr-navy) !important;
	text-decoration: none !important;
	background: transparent !important;
	white-space: nowrap !important;
}

#site-header .navigator .menu-primary > li > a:hover,
#site-header-sticky .navigator .menu-primary > li > a:hover {
	color: var(--adcr-primary-dark) !important;
	background: var(--adcr-bg) !important;
}

#site-header .navigator .menu-primary > li.current-menu-item > a,
#site-header .navigator .menu-primary > li.current-menu-parent > a,
#site-header-sticky .navigator .menu-primary > li.current-menu-item > a,
#site-header-sticky .navigator .menu-primary > li.current-menu-parent > a {
	color: var(--adcr-primary-dark) !important;
	background: rgba(254, 100, 0, 0.12) !important;
}

#site-header .navigator .menu-primary > li.menu-item-has-children > a::after,
#site-header-sticky .navigator .menu-primary > li.menu-item-has-children > a::after {
	color: var(--adcr-navy) !important;
}

#site-header .navigator .menu-primary,
#site-header-sticky .navigator .menu-primary {
	flex-wrap: nowrap !important;
}

#site-header.site-header-classic,
#site-header.site-header-classic.header-transparent {
	background: rgba(255, 255, 255, 0.98) !important;
	backdrop-filter: blur(10px);
	-webkit-backdrop-filter: blur(10px);
	box-shadow: 0 1px 0 rgba(58, 65, 111, 0.08);
}

#site-header-sticky.active .navigator .menu-primary > li > a {
	color: var(--adcr-navy) !important;
	text-shadow: none;
}

.widget > .widget-title {
	color: #465568 !important;
}

.site-topbar,
.site-topbar a {
	color: #ffffff !important;
}

.site-topbar a:hover,
.site-topbar .menu-top li:hover a {
	color: #ffffff !important;
}

.widget > .widget-title,
.widgettitle,
.footer-widgets .widget-title {
	color: var(--adcr-navy) !important;
	opacity: 1 !important;
}

#site-content a:hover {
	color: var(--adcr-primary-dark) !important;
}

/* Navegación */
.navigator .menu > li > a {
	position: relative;
	transition: color var(--adcr-transition);
}

.navigator .menu > li > a::after {
	transition: width var(--adcr-transition), background-color var(--adcr-transition);
}

#site-content .navigator .menu > li:hover > a,
#site-content .navigator .menu > li.current-menu-item > a {
	color: var(--adcr-primary) !important;
}

/* Botones */
.button,
input[type="submit"],
button[type="submit"],
.wpcf7-submit,
.vc_general.vc_btn3 {
	border-radius: var(--adcr-radius-sm) !important;
	font-weight: 600;
	letter-spacing: 0.02em;
	transition: transform var(--adcr-transition), box-shadow var(--adcr-transition), background-color var(--adcr-transition) !important;
}

.button:hover,
input[type="submit"]:hover,
button[type="submit"]:hover,
.wpcf7-submit:hover {
	transform: translateY(-2px);
	box-shadow: var(--adcr-shadow-hover);
}

/* Secciones WPBakery / contenido */
#site .wpb_row {
	transition: box-shadow var(--adcr-transition), opacity var(--adcr-transition-slow);
}

/* Home — ancho completo y centrado */
body.home #main-content,
body.home .main-content-inner,
body.home .main-content-inner > .content,
body.home .wpb-content-wrapper {
	width: 100% !important;
	max-width: 100% !important;
	margin-inline: auto;
}

body.home .wpb-content-wrapper > .wpb_row {
	width: 100% !important;
	max-width: 100% !important;
	left: 0 !important;
	right: 0 !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
}

body.home .wpb-content-wrapper > .wpb_row > .row-inner {
	width: 100% !important;
	max-width: var(--adcr-container) !important;
	margin-inline: auto !important;
	padding-inline: clamp(1rem, 4vw, 2rem) !important;
	box-sizing: border-box;
}

body.home #site .wpb_row + .wpb_row {
	margin-top: 0 !important;
}

#site .iconbox,
#site .member.style2,
.blog-grid .post-inner,
.projects-grid .project-inner {
	border-radius: var(--adcr-radius);
	box-shadow: var(--adcr-shadow);
	transition: transform var(--adcr-transition), box-shadow var(--adcr-transition);
	overflow: hidden;
}

#site .iconbox:hover,
.blog-grid .post-inner:hover,
.projects-grid .project-inner:hover {
	transform: translateY(-4px);
	box-shadow: var(--adcr-shadow-hover);
}

#site .iconbox .box-icon {
	border-radius: 50%;
}

/* Tipografía más aireada */
h1, h2, h3, h4, h5, h6 {
	letter-spacing: -0.02em;
}

.main-content-inner > .content > .wpb-content-wrapper {
	--section-gap: clamp(2rem, 5vw, 4rem);
}

#site .wpb_row + .wpb_row {
	margin-top: var(--section-gap, 3rem);
}

/* Animación de entrada — ver sección MOTION al final (scroll reveal) */

/* Footer */
.site-footer {
	background: linear-gradient(180deg, #f8fafc 0%, #fff 100%);
}

.footer-widgets .widget-title {
	color: var(--adcr-navy) !important;
	font-size: 13px !important;
	letter-spacing: 0.08em !important;
}

/* Formularios */
input,
textarea,
select,
.wpcf7-form-control {
	border-radius: var(--adcr-radius-sm) !important;
	transition: border-color var(--adcr-transition), box-shadow var(--adcr-transition);
}

input:focus,
textarea:focus,
select:focus {
	border-color: var(--adcr-accent) !important;
	box-shadow: 0 0 0 3px rgba(84, 200, 239, 0.2) !important;
}

/* Performance: contenido offscreen */
.footer-widgets,
.content-bottom-widgets {
	content-visibility: auto;
	contain-intrinsic-size: auto 500px;
}

/* Accesibilidad: foco visible */
a:focus-visible,
button:focus-visible,
input:focus-visible {
	outline: 2px solid var(--adcr-accent);
	outline-offset: 2px;
}

/* Mobile */
@media (max-width: 767px) {
	h1 { font-size: clamp(1.75rem, 6vw, 2.5rem) !important; }
	h2 { font-size: clamp(1.5rem, 5vw, 2rem) !important; }

	.site-header .header-brand {
		margin-top: 12px !important;
		margin-bottom: 12px !important;
	}

	.content-header {
		padding-top: 0 !important;
	}
}

/* Header en flujo del documento — evita hueco blanco bajo nav */
body:not(.home) #site-header.site-header-classic,
body:not(.home) #site-header.site-header-classic.header-transparent {
	position: relative !important;
	top: auto !important;
	left: auto !important;
	right: auto !important;
	z-index: 50 !important;
}

body:not(.home) .site-content .content-header {
	padding-top: 0 !important;
	margin-top: 0 !important;
}

body.home #site-header.site-header-classic.header-transparent {
	position: relative !important;
	top: auto !important;
	left: auto !important;
	right: auto !important;
}

body.home #site-content,
body.home #site-header.header-transparent ~ #site-content {
	padding-top: 0 !important;
}

/* ============================================================
   HOMEPAGE — Rediseño visual v2
   ============================================================ */

body.home #site-content {
	background: var(--adcr-bg);
	padding-top: 0;
}

body.home #site-header.header-transparent ~ #site-content {
	padding-top: 0;
}

body.home .main-content-inner > .content > .wpb-content-wrapper {
	overflow: visible;
}

/* —— Hero —— */
body.home .adcr-hero,
body.home .wpb-content-wrapper > .gradient3:first-child {
	padding-top: clamp(1.5rem, 3vw, 2.5rem) !important;
	padding-bottom: clamp(2.5rem, 6vw, 4rem) !important;
	background: radial-gradient(ellipse 80% 60% at 50% -10%, rgba(84, 200, 239, 0.22), transparent 60%),
		radial-gradient(ellipse 60% 50% at 100% 20%, rgba(254, 100, 0, 0.12), transparent 55%),
		linear-gradient(180deg, #ffffff 0%, var(--adcr-bg) 100%) !important;
}

body.home .adcr-hero::before,
body.home .gradient3::before {
	opacity: 0 !important;
}

body.home .adcr-eyebrow {
	display: inline-block !important;
	background: rgba(254, 100, 0, 0.1) !important;
	color: var(--adcr-primary-dark) !important;
	border-radius: var(--adcr-radius-pill) !important;
	padding: 0.35rem 1rem !important;
	font-size: 0.8125rem !important;
	font-weight: 600 !important;
	letter-spacing: 0.06em !important;
	text-transform: uppercase !important;
	margin-bottom: 1rem !important;
}

body.home .adcr-hero__title {
	display: block !important;
	background: transparent !important;
	box-shadow: none !important;
	padding: 0 !important;
	margin-bottom: 1rem !important;
	font-size: clamp(2rem, 5.5vw, 3.25rem) !important;
	font-weight: 700 !important;
	line-height: 1.15 !important;
	color: var(--adcr-navy) !important;
	letter-spacing: -0.03em !important;
}

body.home .adcr-hero__subtitle {
	font-size: clamp(1.125rem, 2.5vw, 1.375rem) !important;
	font-weight: 500 !important;
	line-height: 1.55 !important;
	color: var(--adcr-text) !important;
	max-width: 42rem;
	margin-inline: auto !important;
	margin-bottom: 0.75rem !important;
	text-transform: none !important;
	letter-spacing: -0.01em !important;
}

body.home .adcr-hero__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 0.875rem;
	justify-content: center;
	align-items: center;
	margin-top: 1.75rem;
}

body.home .adcr-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 3.25rem;
	padding: 0 1.75rem;
	border-radius: var(--adcr-radius-pill);
	font-size: 0.8125rem;
	font-weight: 600;
	letter-spacing: 0.04em;
	text-decoration: none !important;
	transition: transform var(--adcr-transition), box-shadow var(--adcr-transition), background var(--adcr-transition);
}

body.home .adcr-btn--outline {
	border: 2px solid var(--adcr-navy);
	color: var(--adcr-navy) !important;
	background: transparent;
}

body.home .adcr-btn--outline:hover {
	background: var(--adcr-navy);
	color: #fff !important;
	transform: translateY(-2px);
}

body.home .adcr-btn--primary {
	background: linear-gradient(135deg, var(--adcr-cta) 0%, var(--adcr-cta-hover) 100%);
	color: #fff !important;
	border: 0;
	box-shadow: 0 8px 24px rgba(254, 100, 0, 0.35);
}

body.home .adcr-btn--primary:hover {
	transform: translateY(-2px);
	box-shadow: var(--adcr-shadow-hover);
	color: #fff !important;
}

body.home .adcr-faq {
	margin-top: clamp(2rem, 5vw, 3.5rem);
	padding-top: clamp(2rem, 4vw, 3rem);
	border-top: 1px solid rgba(58, 65, 111, 0.08);
}

body.home .adcr-faq-list ul {
	list-style: none;
	padding: 0;
	margin: 0 0 1.25rem;
	display: grid;
	gap: 0.625rem;
	max-width: 40rem;
	margin-inline: auto;
}

body.home .adcr-faq-list li {
	background: var(--adcr-surface);
	border: 1px solid rgba(58, 65, 111, 0.08);
	border-radius: var(--adcr-radius-sm);
	padding: 0.875rem 1.125rem;
	color: var(--adcr-navy);
	box-shadow: var(--adcr-shadow);
	transition: transform var(--adcr-transition), border-color var(--adcr-transition);
}

body.home .adcr-faq-list li:hover {
	transform: translateY(-2px);
	border-color: rgba(254, 100, 0, 0.25);
}

body.home .adcr-faq-list__closing {
	text-align: center;
	font-weight: 600;
	color: var(--adcr-primary-dark) !important;
	margin: 0;
}

/* —— Servicios —— */
body.home .adcr-services {
	background: var(--adcr-surface);
	border-radius: var(--adcr-radius);
	width: 100% !important;
	max-width: var(--adcr-container) !important;
	margin-inline: auto !important;
	box-shadow: var(--adcr-shadow);
	padding-block: clamp(2.5rem, 5vw, 3.75rem) !important;
}

body.home .adcr-services .iconbox {
	height: 100%;
}

body.home .adcr-services .box-readmore a {
	color: var(--adcr-primary-dark) !important;
}

/* —— CTA final —— */
body.home .adcr-cta-band {
	background: linear-gradient(135deg, var(--adcr-navy) 0%, #2d3560 50%, var(--adcr-primary-dark) 100%);
	border-radius: var(--adcr-radius);
	width: 100% !important;
	max-width: var(--adcr-container) !important;
	margin: 2rem auto 0 !important;
	padding: clamp(2.5rem, 5vw, 3.5rem) 1.5rem !important;
}

body.home .adcr-cta-band h2,
body.home .adcr-cta-band h2.vc_custom_heading,
body.home .adcr-cta-band p,
body.home .adcr-cta-band p.vc_custom_heading,
body.home .adcr-cta-band .vc_custom_heading,
body.home .adcr-cta-band .adcr-cta-band__title,
body.home .adcr-cta-band .adcr-cta-band__subtitle {
	color: #fff !important;
}

body.home .adcr-cta-band .adcr-btn--outline {
	border-color: #fff;
	color: #fff !important;
}

body.home .adcr-cta-band .adcr-btn--outline:hover {
	background: #fff;
	color: var(--adcr-navy) !important;
}

/* —— Accordion / clientes —— */
body.home .adcr-reasons .vc_tta-panel-heading {
	border-radius: var(--adcr-radius-sm) !important;
}

body.home .adcr-reasons .vc_tta-panel-body {
	border-radius: 0 0 var(--adcr-radius-sm) var(--adcr-radius-sm) !important;
}

body.home .adcr-clients h2 {
	font-size: clamp(1.125rem, 2vw, 1.375rem) !important;
	color: var(--adcr-navy) !important;
	margin: 0;
}

body.home a.moreBox.adcr-btn {
	position: static !important;
	width: auto !important;
	height: auto !important;
	min-height: 3.25rem !important;
	text-indent: 0 !important;
	right: auto !important;
	top: auto !important;
	bottom: auto !important;
	background: transparent !important;
	backdrop-filter: none !important;
	-webkit-backdrop-filter: none !important;
	display: inline-flex !important;
	margin: 1.5rem auto 0 !important;
	text-align: center;
}

body.home a.moreBox.adcr-btn::before,
body.home a.moreBox.adcr-btn::after {
	display: none !important;
}

body.home .adcr-blog .vc_text_separator h4 {
	font-size: clamp(1.125rem, 2.5vw, 1.375rem) !important;
	font-weight: 700 !important;
	color: var(--adcr-navy) !important;
	text-transform: none !important;
	letter-spacing: -0.02em !important;
}

/* Grid compacto — 4 artículos marketing (sin style1) */
body.home .adcr-blog .blog-shortcode:not(.style1) .blog-grid .content-inner {
	display: grid !important;
	grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
	gap: 1rem !important;
	margin: 0 !important;
}

body.home .adcr-blog .blog-shortcode:not(.style1) .blog-grid .post {
	width: 100% !important;
	max-width: none !important;
	flex: none !important;
	padding: 0 !important;
	margin: 0 !important;
}

body.home .adcr-blog .blog-shortcode:not(.style1) .post-inner {
	padding: 0.75rem !important;
}

body.home .adcr-blog .blog-shortcode:not(.style1) .post-inner img {
	aspect-ratio: 4 / 3;
	margin-bottom: 0.75rem !important;
}

body.home .adcr-blog .blog-shortcode:not(.style1) .post-inner .post-title {
	font-size: 0.9375rem !important;
	font-weight: 600 !important;
	display: -webkit-box;
	-webkit-line-clamp: 3;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

@media (max-width: 991px) {
	body.home .adcr-blog .blog-shortcode:not(.style1) .blog-grid .content-inner {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}
}

@media (max-width: 544px) {
	body.home .adcr-blog .blog-shortcode:not(.style1) .blog-grid .content-inner {
		grid-template-columns: 1fr !important;
	}
}

body.home .gradient3::before {
	opacity: 0 !important;
}

body.home .gradient3 .vc_empty_space:first-child {
	height: 0 !important;
	min-height: 0 !important;
	display: none;
}

/* Logos xlarge — grid uniforme con tarjetas (Open Source, infra, clientes) */
body.home .iconlist.iconlist-icon-xlarge {
	display: grid !important;
	grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
	gap: 0.75rem !important;
	margin: 0 !important;
	padding: 0 !important;
	list-style: none;
}

body.home .iconlist.iconlist-icon-xlarge li {
	width: auto !important;
	max-width: none !important;
	flex: none !important;
	display: flex !important;
	flex-direction: column !important;
	align-items: center !important;
	justify-content: center !important;
	margin: 0 !important;
	padding: 1rem 0.75rem !important;
	min-height: 84px;
	background: #fff !important;
	border: 1px solid rgba(58, 65, 111, 0.08) !important;
	border-radius: var(--adcr-radius-sm) !important;
	box-shadow: 0 1px 3px rgba(58, 65, 111, 0.05) !important;
	transition: transform var(--adcr-transition), box-shadow var(--adcr-transition);
}

body.home .iconlist.iconlist-icon-xlarge li:hover {
	transform: translateY(-2px);
	box-shadow: var(--adcr-shadow) !important;
}

body.home .iconlist.iconlist-icon-xlarge .iconlist-item-icon {
	height: 52px !important;
	width: 100% !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	margin: 0 !important;
}

body.home .iconlist.iconlist-icon-xlarge .iconlist-item-icon img {
	max-height: 44px !important;
	max-width: 100% !important;
	width: auto !important;
	height: auto !important;
	object-fit: contain !important;
	object-position: center center !important;
	opacity: 1 !important;
	filter: none !important;
}

body.home .iconlist.iconlist-icon-xlarge:hover .iconlist-item-icon img,
body.home .iconlist.iconlist-icon-xlarge li:hover .iconlist-item-icon img {
	filter: none !important;
	opacity: 1 !important;
}

body.home .adcr-diferenciador .vc_row_inner.content_placement_middle,
body.home .adcr-diferenciador .vc_row_inner[class*="content_placement"] {
	align-items: center !important;
}

body.home .adcr-diferenciador .wpb_text_column h2 {
	font-size: 1.125rem !important;
	font-weight: 700 !important;
	color: var(--adcr-navy) !important;
	margin: 0 0 0.75rem !important;
	line-height: 1.35 !important;
}

body.home .adcr-diferenciador .wpb_text_column p {
	color: var(--adcr-text) !important;
	line-height: 1.6 !important;
	margin: 0 !important;
}

/* Infraestructura cloud — 4 logos normalizados */
body.home .adcr-cloud .vc_row_inner {
	align-items: center !important;
}

body.home .adcr-cloud .wpb_text_column h2 {
	font-size: 1.125rem !important;
	font-weight: 700 !important;
	color: var(--adcr-navy) !important;
	margin: 0 0 0.5rem !important;
	line-height: 1.35 !important;
}

body.home .adcr-cloud .wpb_text_column p {
	color: var(--adcr-text) !important;
	font-size: 0.9375rem !important;
	line-height: 1.55 !important;
	margin: 0 !important;
}

body.home .adcr-cloud .iconlist.iconlist-icon-xlarge {
	display: grid !important;
	grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
	gap: 1rem !important;
	width: 100% !important;
}

body.home .adcr-cloud .iconlist.iconlist-icon-xlarge li {
	min-height: 100px !important;
	padding: 1.25rem 1rem !important;
}

body.home .adcr-cloud .iconlist.iconlist-icon-xlarge .iconlist-item-icon {
	height: 56px !important;
	width: 100% !important;
	max-width: 150px !important;
	margin-inline: auto !important;
}

body.home .adcr-cloud .iconlist.iconlist-icon-xlarge .iconlist-item-icon img {
	display: block !important;
	width: 100% !important;
	height: 56px !important;
	max-width: 150px !important;
	max-height: 56px !important;
	min-height: 56px !important;
	object-fit: contain !important;
	object-position: center center !important;
	margin: 0 auto !important;
}

@media (max-width: 991px) {
	body.home .adcr-cloud .iconlist.iconlist-icon-xlarge {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}
}

@media (max-width: 544px) {
	body.home .adcr-cloud .iconlist.iconlist-icon-xlarge {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}
}

@media (max-width: 991px) {
	body.home .iconlist.iconlist-icon-xlarge {
		grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
	}
}

@media (max-width: 544px) {
	body.home .iconlist.iconlist-icon-xlarge {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}
}

body.home .gradient3 .aligncenter .wpb_wrapper {
	max-width: var(--adcr-container);
	margin-inline: auto;
}

body.home .gradient3 h1.vc_custom_heading {
	display: block !important;
	background: transparent !important;
	box-shadow: none !important;
	padding: 0 !important;
	margin-bottom: 1rem !important;
	font-size: clamp(2rem, 5.5vw, 3.25rem) !important;
	font-weight: 700 !important;
	line-height: 1.15 !important;
	color: var(--adcr-navy) !important;
	letter-spacing: -0.03em !important;
}

body.home .gradient3 h1.vc_custom_heading::after {
	display: none !important;
}

body.home .gradient3 h2.vc_custom_heading:not(.style1) {
	font-size: clamp(1.125rem, 2.5vw, 1.375rem) !important;
	font-weight: 500 !important;
	line-height: 1.55 !important;
	color: var(--adcr-text) !important;
	max-width: 42rem;
	margin-inline: auto !important;
	margin-bottom: 0.5rem !important;
	text-transform: none !important;
	letter-spacing: -0.01em !important;
}

body.home .gradient3 p.vc_custom_heading {
	color: var(--adcr-text) !important;
	max-width: 36rem;
	margin-inline: auto !important;
}

/* Badges / eyebrow — reemplaza cajas naranja/verde inline */
body.home .vc_custom_heading.style1,
body.home .vc_custom_1724390411311,
body.home .vc_custom_1722229956258,
body.home .vc_custom_1722230327406 {
	background: rgba(254, 100, 0, 0.1) !important;
	color: var(--adcr-primary-dark) !important;
	box-shadow: none !important;
	border-radius: var(--adcr-radius-pill) !important;
	padding: 0.4rem 1.1rem !important;
	font-size: 0.8125rem !important;
	font-weight: 600 !important;
	letter-spacing: 0.06em !important;
	text-transform: uppercase !important;
	margin-bottom: 1.25rem !important;
}

body.home .vc_custom_heading.style1::after {
	display: none !important;
}

/* Preguntas frecuentes — tarjetas */
body.home .gradient3 .vc_row_inner + .vc_row_inner .wpb_wrapper > p {
	background: var(--adcr-surface);
	border: 1px solid rgba(58, 65, 111, 0.08);
	border-radius: var(--adcr-radius-sm);
	padding: 0.875rem 1.125rem;
	margin: 0 0 0.625rem !important;
	font-size: 1rem !important;
	line-height: 1.5 !important;
	color: var(--adcr-navy) !important;
	box-shadow: var(--adcr-shadow);
	transition: transform var(--adcr-transition), box-shadow var(--adcr-transition), border-color var(--adcr-transition);
}

body.home .gradient3 .vc_row_inner + .vc_row_inner .wpb_wrapper > p:hover {
	transform: translateY(-2px);
	border-color: rgba(254, 100, 0, 0.25);
	box-shadow: var(--adcr-shadow-hover);
}

body.home .gradient3 .vc_row_inner + .vc_row_inner .wpb_wrapper > p:last-of-type {
	background: transparent;
	border: 0;
	box-shadow: none;
	font-weight: 600;
	color: var(--adcr-primary-dark) !important;
	padding: 0.5rem 0;
}

body.home .gradient3 .vc_row_inner + .vc_row_inner .wpb_wrapper > p:last-of-type:hover {
	transform: none;
}

/* —— Sección diferenciador (shadow row) —— */
body.home .wpb_row.shadow {
	padding-top: clamp(3rem, 6vw, 5rem) !important;
	padding-bottom: clamp(3rem, 6vw, 5rem) !important;
	background: var(--adcr-surface) !important;
	border-radius: var(--adcr-radius);
	width: 100% !important;
	max-width: var(--adcr-container) !important;
	margin-inline: auto !important;
}

body.home .wpb_row.shadow::before,
body.home .wpb_row.shadow::after,
body.home .wpb_row.shadow > .row-inner::before {
	display: none !important;
}

body.home .wpb_row.shadow .adcr-wpb-subtitle,
body.home .wpb_row.shadow h3.vc_custom_heading.style1 {
	font-size: 0.8125rem !important;
}

body.home .wpb_row.shadow:not(.adcr-cta-band) h2.vc_custom_heading {
	font-size: clamp(1.5rem, 3.5vw, 2.25rem) !important;
	color: var(--adcr-navy) !important;
}

body.home .wpb_row.shadow .vc_separator {
	margin: 2rem auto !important;
	max-width: 4rem;
}

body.home .wpb_row.shadow .wpb_text_column h2 {
	font-size: clamp(1.25rem, 2.5vw, 1.75rem) !important;
	color: var(--adcr-navy) !important;
	margin-bottom: 0.75rem;
}

body.home .wpb_row.shadow .wpb_text_column p {
	color: var(--adcr-text);
	line-height: 1.65;
}

/* Grid logos Open Source / Cloud — solo listas que NO son xlarge */
body.home .iconlist:not(.iconlist-icon-xlarge) {
	display: grid !important;
	grid-template-columns: repeat(auto-fill, minmax(96px, 1fr));
	gap: 0.875rem;
	list-style: none;
	padding: 0;
	margin: 0;
}

body.home .iconlist:not(.iconlist-icon-xlarge) li {
	background: var(--adcr-surface);
	border: 1px solid rgba(58, 65, 111, 0.07);
	border-radius: var(--adcr-radius-sm);
	padding: 0.875rem;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: transform var(--adcr-transition), box-shadow var(--adcr-transition);
}

body.home .iconlist:not(.iconlist-icon-xlarge) li:hover {
	transform: translateY(-3px);
	box-shadow: var(--adcr-shadow);
}

body.home .iconlist:not(.iconlist-icon-xlarge) .iconlist-item-icon img {
	max-height: 40px;
	width: auto;
	object-fit: contain;
}

/* CTA WhatsApp */
body.home a.more-link {
	background: linear-gradient(135deg, var(--adcr-primary) 0%, var(--adcr-primary-dark) 100%) !important;
	color: #fff !important;
	border-radius: var(--adcr-radius-pill) !important;
	padding: 0 2rem 0 3.25rem !important;
	min-width: auto !important;
	height: 3.25rem !important;
	line-height: 3.25rem !important;
	font-size: 0.75rem !important;
	font-weight: 600 !important;
	letter-spacing: 0.08em !important;
	box-shadow: 0 8px 24px rgba(254, 100, 0, 0.35);
	margin-top: 1.5rem;
}

body.home a.more-link::before,
body.home a.more-link::after {
	background: #fff !important;
	left: 1.25rem !important;
}

body.home a.more-link span::before {
	display: none !important;
}

body.home a.more-link:hover {
	padding-left: 3rem !important;
	transform: translateY(-2px);
	box-shadow: var(--adcr-shadow-hover);
	color: #fff !important;
}

/* —— Sección equipo (fondo imagen) —— */
body.home .vc_custom_1666081335775,
body.home .adcr-equipo {
	position: relative;
	isolation: isolate;
	border-radius: var(--adcr-radius);
	width: 100% !important;
	max-width: var(--adcr-container) !important;
	margin-inline: auto !important;
	overflow: hidden;
}

body.home .vc_custom_1666081335775::before,
body.home .adcr-equipo::before {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 1;
	/* Overlay sólido — contraste real, sin trucos de text-shadow */
	background: linear-gradient(
		180deg,
		rgba(26, 32, 58, 0.91) 0%,
		rgba(26, 32, 58, 0.88) 45%,
		rgba(26, 32, 58, 0.93) 100%
	);
}

body.home .vc_custom_1666081335775 > .row-inner,
body.home .adcr-equipo > .row-inner {
	position: relative;
	z-index: 2;
	padding-inline: clamp(1rem, 3vw, 2rem);
}

/* Títulos de sección — blanco sobre overlay oscuro, sin sombras */
body.home .vc_custom_1666081335775 > .row-inner > .wpb_column > .vc_column-inner > .wpb_wrapper > .vc_custom_heading,
body.home .adcr-equipo > .row-inner > .wpb_column > .vc_column-inner > .wpb_wrapper > .vc_custom_heading,
body.home .vc_custom_1666081335775 > .row-inner .aligncenter > .vc_column-inner > .wpb_wrapper > .vc_custom_heading,
body.home .adcr-equipo .wpb_wrapper > .vc_custom_heading {
	color: #fff !important;
	text-shadow: none !important;
	text-transform: none !important;
	letter-spacing: -0.02em !important;
	font-weight: 700 !important;
}

body.home .adcr-equipo .wpb_wrapper > h2.vc_custom_heading {
	font-size: clamp(1.25rem, 3vw, 1.75rem) !important;
	line-height: 1.35 !important;
	max-width: 48rem;
	margin-inline: auto !important;
}

/* Caja naranja por línea — texto blanco (equipo / mentor) */
body.home .adcr-equipo .adcr-orange-highlight,
body.home .vc_custom_1666081335775 .adcr-orange-highlight {
	display: inline !important;
	background: var(--adcr-cta) !important;
	color: #fff !important;
	padding: 0.22em 0.55em !important;
	box-decoration-break: clone !important;
	-webkit-box-decoration-break: clone !important;
	line-height: 1.75 !important;
	font-weight: 700 !important;
	box-shadow: none !important;
	border-radius: 3px !important;
	max-width: none !important;
	text-shadow: none !important;
}

body.home .adcr-equipo .aligncenter > .vc_column-inner > .wpb_wrapper,
body.home .vc_custom_1666081335775 .aligncenter > .vc_column-inner > .wpb_wrapper {
	text-align: center;
}

body.home .adcr-equipo .wpb_wrapper > p.vc_custom_heading,
body.home .vc_custom_1666081335775 .wpb_wrapper > p.vc_custom_heading {
	color: rgba(255, 255, 255, 0.9) !important;
	text-shadow: none !important;
	font-weight: 400 !important;
	line-height: 1.55 !important;
	max-width: 42rem;
	margin-inline: auto !important;
}

body.home .vc_custom_1666081335775 .vc_custom_heading.style1,
body.home .adcr-equipo .vc_custom_heading.style1 {
	background: transparent !important;
	backdrop-filter: none !important;
	-webkit-backdrop-filter: none !important;
	box-shadow: none !important;
	color: #fff !important;
}

body.home .vc_custom_1666081335775 .iconbox,
body.home .adcr-equipo .iconbox {
	background: #fff !important;
	border: 1px solid rgba(58, 65, 111, 0.08) !important;
	border-radius: var(--adcr-radius) !important;
	box-shadow: var(--adcr-shadow) !important;
}

body.home .adcr-equipo .iconbox.style1 {
	padding: 1.25rem 1.25rem 1rem !important;
	text-align: center !important;
}

body.home .adcr-equipo .iconbox.style1 .box-icon {
	position: static !important;
	transform: none !important;
	width: 64px !important;
	height: 64px !important;
	margin: 0 auto 0.875rem !important;
	border-radius: 50% !important;
	background: var(--adcr-bg) !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	box-shadow: none !important;
}

body.home .adcr-equipo .iconbox.style1 .box-icon img {
	max-width: 40px !important;
	max-height: 40px !important;
	width: auto !important;
	height: auto !important;
}

body.home .vc_custom_1666081335775 .iconbox .box-title,
body.home .vc_custom_1666081335775 .iconbox .box-content,
body.home .vc_custom_1666081335775 .iconbox .box-content p,
body.home .adcr-equipo .iconbox .box-title,
body.home .adcr-equipo .iconbox .box-content,
body.home .adcr-equipo .iconbox .box-content p {
	color: var(--adcr-navy) !important;
}

body.home .vc_custom_1666081335775 .iconbox::after {
	background: transparent !important;
}

body.home .vc_custom_1666081335775 .iconbox .box-readmore {
	background: linear-gradient(180deg, #f8fafc 0%, #eef2f7 100%);
	border-top: 1px solid rgba(58, 65, 111, 0.06);
}

body.home .vc_custom_1666081335775 .iconbox .box-readmore a {
	color: var(--adcr-primary-dark) !important;
	font-weight: 600;
}

body.home a.link {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	padding: 0.5rem 1.25rem;
	background: var(--adcr-cta);
	color: #fff !important;
	border-radius: var(--adcr-radius-pill);
	font-weight: 600;
	font-size: 0.875rem;
	text-decoration: none !important;
	transition: transform var(--adcr-transition), box-shadow var(--adcr-transition);
}

body.home a.link:hover {
	transform: translateY(-2px);
	box-shadow: 0 8px 20px rgba(254, 100, 0, 0.35);
	color: #fff !important;
}

/* —— Sección cloud / blog —— */
body.home section.custom-bg {
	background: linear-gradient(180deg, var(--adcr-bg) 0%, #fff 100%) !important;
	padding-block: clamp(2.5rem, 5vw, 4rem) !important;
}

body.home .gradient2 {
	background: transparent !important;
}

body.home .gradient2::before {
	display: none !important;
}

body.home .vc_wp_categories .widgettitle {
	font-size: clamp(1.25rem, 3vw, 1.75rem) !important;
	color: var(--adcr-navy) !important;
	text-align: center;
	margin-bottom: 1.5rem;
}

body.home .vc_wp_categories form {
	max-width: 28rem;
	margin-inline: auto;
}

body.home .vc_wp_categories select {
	width: 100%;
	padding: 0.75rem 1rem;
	border: 1px solid rgba(58, 65, 111, 0.15);
	border-radius: var(--adcr-radius-sm);
	background: var(--adcr-surface);
	color: var(--adcr-navy);
	font-size: 1rem;
}

body.home .blog-shortcode .post-inner {
	background: var(--adcr-surface);
	border: 1px solid rgba(58, 65, 111, 0.06);
}

/* Blog: columnas iguales (el tema agranda el 1er post) — grid en .adcr-blog */
body.home .blog-shortcode.post-thumbnail-cover.style1 .blog-grid .post,
body.home .blog-shortcode.post-thumbnail-cover.style1 .blog-grid .post:first-child {
	width: 100% !important;
	max-width: none !important;
	flex: none !important;
}

body.home .blog-shortcode.post-thumbnail-cover.style1 .blog-grid .post:first-child .post-inner .post-title {
	font-size: 1.125rem !important;
	width: 100% !important;
}

body.home .blog-shortcode.post-thumbnail-cover.style1 .blog-grid .post:first-child .post-inner .post-content {
	display: block !important;
}

body.home .blog-shortcode .post-inner .post-title {
	font-size: 1rem !important;
	line-height: 1.4 !important;
}

body.home .blog-shortcode .post-inner .post-content {
	font-size: 0.9375rem !important;
	line-height: 1.55 !important;
	color: var(--adcr-text) !important;
}

@media (max-width: 991px) {
	body.home .blog-shortcode.post-thumbnail-cover.style1 .blog-grid .post,
	body.home .blog-shortcode.post-thumbnail-cover.style1 .blog-grid .post:first-child {
		width: 100% !important;
		max-width: none !important;
		flex: none !important;
	}
}

@media (max-width: 544px) {
	body.home .blog-shortcode.post-thumbnail-cover.style1 .blog-grid .post,
	body.home .blog-shortcode.post-thumbnail-cover.style1 .blog-grid .post:first-child {
		width: 100% !important;
		max-width: none !important;
		flex: none !important;
	}
}

body.home .blog-shortcode .post-title a {
	color: var(--adcr-navy) !important;
}

body.home .blog-shortcode .post-title a:hover {
	color: var(--adcr-primary) !important;
}

/* Blog v2.5 — tarjetas uniformes, botón siempre visible, sin subrayados */
body.home .adcr-blog {
	background: linear-gradient(180deg, var(--adcr-bg) 0%, #fff 55%) !important;
	padding-block: clamp(2.5rem, 5vw, 4rem) !important;
}

body.home .adcr-blog .vc_wp_categories .widgettitle {
	font-size: clamp(1.125rem, 2.5vw, 1.5rem) !important;
	font-weight: 700 !important;
	text-transform: none !important;
	letter-spacing: -0.02em !important;
	line-height: 1.35 !important;
}

body.home .adcr-blog .vc_wp_categories select {
	min-height: 48px;
	font-size: 1rem;
	border: 2px solid rgba(58, 65, 111, 0.12);
	box-shadow: var(--adcr-shadow);
}

body.home .adcr-blog .blog-shortcode .blog-grid {
	gap: 1.25rem;
}

/* Home blog: 3 artículos en la misma fila */
body.home .adcr-blog .blog-shortcode.style1 .blog-grid .content-inner,
body.home .adcr-blog .blog-shortcode.post-thumbnail-cover.style1 .blog-grid .content-inner {
	display: grid !important;
	grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
	gap: clamp(1rem, 2vw, 1.25rem) !important;
	margin: 0 !important;
}

body.home .adcr-blog .blog-shortcode.style1 .blog-grid .post,
body.home .adcr-blog .blog-shortcode.post-thumbnail-cover.style1 .blog-grid .post,
body.home .adcr-blog .blog-shortcode.post-thumbnail-cover.style1 .blog-grid .post:first-child {
	width: 100% !important;
	max-width: none !important;
	flex: none !important;
	float: none !important;
	padding: 0 !important;
	margin: 0 !important;
}

body.home .adcr-blog .blog-shortcode .post {
	margin-bottom: 0 !important;
	padding: 0 !important;
}

body.home .adcr-blog .blog-shortcode .post-inner {
	display: flex !important;
	flex-direction: column !important;
	height: 100% !important;
	padding: 1rem !important;
	border-radius: var(--adcr-radius) !important;
	box-shadow: var(--adcr-shadow) !important;
	text-decoration: none !important;
	transition: transform var(--adcr-transition), box-shadow var(--adcr-transition);
}

body.home .adcr-blog .blog-shortcode .post-inner:hover {
	transform: translateY(-4px);
	box-shadow: var(--adcr-shadow-hover);
}

body.home .adcr-blog .blog-shortcode .post-inner img {
	margin-bottom: 1rem !important;
	border-radius: var(--adcr-radius-sm) !important;
	box-shadow: none !important;
	width: 100%;
	height: auto;
	aspect-ratio: 16 / 10;
	object-fit: cover;
}

body.home .adcr-blog .blog-shortcode .post-inner .post-date {
	color: var(--adcr-cta) !important;
	font-size: 0.75rem !important;
	font-weight: 600 !important;
	letter-spacing: 0.04em !important;
	margin-bottom: 0.35rem !important;
}

body.home .adcr-blog .blog-shortcode .post-inner .post-title {
	color: var(--adcr-navy) !important;
	font-size: 1.0625rem !important;
	font-weight: 700 !important;
	line-height: 1.35 !important;
	margin: 0 0 0.5rem !important;
	text-decoration: none !important;
}

body.home .adcr-blog .blog-shortcode .post-inner .post-content {
	display: block !important;
	color: var(--adcr-text) !important;
	font-size: 0.9375rem !important;
	line-height: 1.55 !important;
	margin: 0 0 1rem !important;
	flex: 1;
}

body.home .adcr-blog .blog-shortcode .post-inner .read-more {
	display: inline-flex !important;
	align-items: center !important;
	position: relative !important;
	bottom: auto !important;
	margin-top: auto !important;
	padding: 0.65rem 1.25rem !important;
	height: auto !important;
	line-height: 1.3 !important;
	border-radius: var(--adcr-radius-pill) !important;
	background: var(--adcr-cta) !important;
	color: #fff !important;
	font-size: 0.75rem !important;
	font-weight: 600 !important;
	letter-spacing: 0.04em !important;
	width: fit-content;
}

body.home .blog-shortcode .post-inner .read-more,
body.home .blog-shortcode .post-inner .read-more span {
	background: var(--adcr-cta) !important;
	color: #fff !important;
}

body.home .adcr-blog .blog-shortcode .post-inner .read-more::before,
body.home .adcr-blog .blog-shortcode .post-inner .read-more::after {
	display: none !important;
}

body.home .adcr-blog .blog-shortcode .post-inner .read-more span {
	color: #fff !important;
	white-space: normal !important;
}

body.home .adcr-blog .blog-shortcode .post-inner .read-more span::before {
	display: none !important;
}

body.home .adcr-blog .blog-shortcode .post-inner:not(:hover) .read-more span {
	color: #fff !important;
}

body.home .adcr-blog .blog-shortcode.post-thumbnail-cover.style1 .blog-grid .post:first-child .post-inner .post-title,
body.home .adcr-blog .blog-shortcode.post-thumbnail-cover.style1 .blog-grid .post:first-child .post-inner .post-content {
	font-size: inherit !important;
	width: 100% !important;
	display: block !important;
}

@media (max-width: 991px) {
	body.home .adcr-blog .blog-shortcode.style1 .blog-grid .content-inner,
	body.home .adcr-blog .blog-shortcode.post-thumbnail-cover.style1 .blog-grid .content-inner {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}
}

@media (max-width: 544px) {
	body.home .adcr-blog .blog-shortcode.style1 .blog-grid .content-inner,
	body.home .adcr-blog .blog-shortcode.post-thumbnail-cover.style1 .blog-grid .content-inner {
		grid-template-columns: 1fr !important;
	}
}

/* Iconbox cards — polish global */
#site .iconbox {
	border-radius: var(--adcr-radius);
	border: 1px solid rgba(58, 65, 111, 0.06);
	box-shadow: var(--adcr-shadow);
}

#site .iconbox .box-icon {
	background: linear-gradient(135deg, rgba(254, 100, 0, 0.08), rgba(84, 200, 239, 0.12));
	box-shadow: none;
	border: 1px solid rgba(254, 100, 0, 0.12);
}

#site .iconbox .box-title {
	color: var(--adcr-navy);
	font-weight: 600;
}

#site .iconbox .box-content p {
	color: var(--adcr-text);
	line-height: 1.65;
}

/* Espaciado vertical entre filas principales */
body.home .wpb-content-wrapper > .vc_row,
body.home .wpb-content-wrapper > section {
	margin-bottom: clamp(1.5rem, 4vw, 2.5rem);
}

body.home .vc_empty_space[style*="height: 200px"],
body.home .vc_empty_space[style*="height: 60px"] {
	height: clamp(1.5rem, 4vw, 2.5rem) !important;
}

@media (max-width: 767px) {
	body.home #site-content,
	body.home #site-header.header-transparent ~ #site-content {
		padding-top: 0;
	}

	body.home .wpb_row.shadow,
	body.home .vc_custom_1666081335775,
	body.home .adcr-equipo {
		margin-inline: 0.75rem;
		border-radius: var(--adcr-radius-sm);
	}

	body.home .gradient3 h1.vc_custom_heading,
		body.home .adcr-hero__title {
		font-size: 1.75rem !important;
	}
}

/* ============================================================
   GLOBAL — Header, sticky, menú lateral, logos
   ============================================================ */

/* —— Central telefónica —— */
.site-header-classic .header-info-text {
	display: inline-flex !important;
	align-items: center !important;
	flex-wrap: wrap !important;
	gap: 0.35rem 0.5rem !important;
	margin: 0 0 0 0.75rem !important;
	flex-grow: 0 !important;
	font-size: 0.8125rem !important;
	font-weight: 500 !important;
	color: var(--adcr-muted) !important;
	white-space: nowrap;
}

.site-header-classic .header-info-text a[href^="tel:"] {
	display: inline-flex !important;
	align-items: center !important;
	gap: 0.4rem !important;
	padding: 0.5rem 1rem !important;
	background: var(--adcr-navy) !important;
	color: #fff !important;
	border-radius: var(--adcr-radius-pill) !important;
	font-weight: 600 !important;
	font-size: 0.8125rem !important;
	text-decoration: none !important;
	letter-spacing: 0.02em !important;
	line-height: 1.2 !important;
	transition: background var(--adcr-transition), transform var(--adcr-transition);
}

.site-header-classic .header-info-text a[href^="tel:"]::before {
	font-family: FontAwesome;
	content: "\f095";
	font-size: 0.875rem;
	font-weight: normal;
}

.site-header-classic .header-info-text a[href^="tel:"]:hover {
	background: var(--adcr-primary-dark) !important;
	color: #fff !important;
	transform: translateY(-1px);
}

/* —— Nav: sin subrayados del tema, estilo limpio —— */
#site-header .navigator .menu-primary > li > a::before,
#site-header-sticky .navigator .menu-primary > li > a::before,
#site-header .navigator .nav-info a::before,
#site-header-sticky .navigator .nav-info a::before {
	display: none !important;
	content: none !important;
}

#site-header .navigator .menu-primary > li.style1 > .sub-menu > li > a,
#site-header-sticky .navigator .menu-primary > li.style1 > .sub-menu > li > a {
	text-decoration: none !important;
	color: var(--adcr-navy) !important;
	font-size: 0.8125rem !important;
	font-weight: 600 !important;
	padding: 0.65rem 0.5rem !important;
	border-radius: var(--adcr-radius-sm) !important;
	transition: color var(--adcr-transition), background var(--adcr-transition);
}

#site-header .navigator .menu-primary > li.style1 > .sub-menu > li > a:hover,
#site-header-sticky .navigator .menu-primary > li.style1 > .sub-menu > li > a:hover {
	color: var(--adcr-primary-dark) !important;
	background: var(--adcr-bg) !important;
}

#site-header .navigator .menu-primary > li.style1 > .sub-menu > li > a img,
#site-header-sticky .navigator .menu-primary > li.style1 > .sub-menu > li > a img {
	height: 44px !important;
	margin-bottom: 0.5rem !important;
}

/* Dropdown Servicios — ancho según contenido (textos largos no se cortan) */
@media (min-width: 1024px) {
	#site-header-sticky .navigator .menu-primary > li.style1 > .sub-menu {
		min-width: 360px !important;
		width: max-content !important;
		max-width: min(420px, 92vw) !important;
		overflow: visible !important;
	}

	#site-header-sticky .navigator .menu-primary > li.style1 > .sub-menu > li > a {
		display: flex !important;
		flex-direction: row !important;
		align-items: center !important;
		white-space: nowrap !important;
		padding: 0.5rem 1.25rem !important;
	}

	#site-header-sticky .navigator .menu-primary > li.style1 > .sub-menu > li > a img {
		width: 36px !important;
		height: auto !important;
		margin-right: 0.75rem !important;
		margin-bottom: 0 !important;
		flex-shrink: 0 !important;
	}
}

.site-header-classic .navigator .nav-info {
	margin-left: 0.75rem !important;
	padding-left: 0.75rem !important;
	border-left: 1px solid rgba(58, 65, 111, 0.12) !important;
}

/* Anula CSS customizer roto (a11y mal aplicado: .site a, .social-icons) */
#site-header.site-header-classic .navigator .menu-primary > li > a,
#site-header-sticky .navigator .menu-primary > li > a {
	color: var(--adcr-navy) !important;
	text-decoration: none !important;
	background: transparent !important;
}

#site-header.site-header-classic .navigator .nav-info a,
#site-header-sticky .navigator .nav-info a {
	text-decoration: none !important;
	background: var(--adcr-cta) !important;
	color: #fff !important;
}

#site-header.site-header-classic .navigator .social-icons a,
#site-header-sticky .navigator .social-icons a {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 36px !important;
	height: 36px !important;
	padding: 0 !important;
	margin: 0 !important;
	line-height: 1 !important;
	border-radius: 8px !important;
	background: var(--adcr-navy) !important;
	color: #fff !important;
}

#site-header.site-header-classic .navigator .social-icons a i,
#site-header-sticky .navigator .social-icons a i {
	color: #fff !important;
	font-size: 16px !important;
}

#site-header.site-header-classic .navigator .social-icons a:hover,
#site-header-sticky .navigator .social-icons a:hover {
	background: var(--adcr-primary) !important;
	transform: scale(1.05);
}

/* Fila única: logo | nav | CTA | redes | menú */
.site-header-classic.header-brand-left .header-content {
	display: flex !important;
	flex-direction: row !important;
	flex-wrap: wrap !important;
	align-items: center !important;
	gap: 0.75rem 1rem !important;
}

.site-header-classic.header-brand-left .header-brand {
	flex: 0 1 auto !important;
	gap: 0.75rem !important;
}

.site-header-classic.header-brand-left .navigator {
	display: flex !important;
	flex: 1 1 auto !important;
	align-items: center !important;
	justify-content: flex-end !important;
	flex-wrap: nowrap !important;
	gap: 0.5rem 1rem !important;
	margin-left: auto !important;
}

.site-header-classic.header-brand-left .navigator .menu-primary {
	flex: 0 1 auto !important;
	justify-content: flex-end !important;
	gap: 0.25rem !important;
}

.site-header-classic.header-brand-left .navigator .nav-info {
	flex-shrink: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
}

.site-header-classic.header-brand-left .navigator .social-icons {
	display: flex !important;
	flex-shrink: 0 !important;
	align-items: center !important;
	gap: 0.35rem !important;
	margin-left: 0.5rem !important;
}

/* Botón menú: hamburguesa limpia (sin texto "Menu" superpuesto) */
.site-header-classic .header-brand .off-canvas-toggle[data-target="off-canvas-right"],
.site-header-sticky .off-canvas-toggle[data-target="off-canvas-right"] {
	width: 44px !important;
	height: 44px !important;
	min-width: 44px !important;
	border-radius: 10px !important;
	background: var(--adcr-primary) !important;
	color: #fff !important;
	margin-left: 0.5rem !important;
	flex-shrink: 0 !important;
}

.site-header-classic .header-brand .off-canvas-toggle[data-target="off-canvas-right"]:before,
.site-header-sticky .off-canvas-toggle[data-target="off-canvas-right"]:before {
	display: none !important;
}

.site-header-classic .header-brand .off-canvas-toggle[data-target="off-canvas-right"] span:after,
.site-header-classic .header-brand .off-canvas-toggle[data-target="off-canvas-right"] span:before,
.site-header-sticky .off-canvas-toggle[data-target="off-canvas-right"] span:after,
.site-header-sticky .off-canvas-toggle[data-target="off-canvas-right"] span:before {
	background: #fff !important;
	width: 20px !important;
	height: 2px !important;
	margin-right: -10px !important;
	right: 50% !important;
}

@media (max-width: 1023px) {
	.site-header-classic.header-brand-left .header-content {
		flex-wrap: nowrap !important;
	}

	.site-header-classic.header-brand-left .navigator {
		display: none !important;
	}

	.site-header-classic.header-brand-left .header-brand {
		width: 100% !important;
	}
}

/* Sticky header — mismo layout que classic (logo solo cuando está activo) */
#site-header-sticky:not(.active) .header-brand {
	display: none !important;
}

#site-header-sticky.active.header-brand-left .header-brand {
	display: flex !important;
	position: relative !important;
	left: auto !important;
	top: auto !important;
	transform: none !important;
	align-items: center !important;
	flex-shrink: 0 !important;
}

#site-header-sticky.header-brand-left .header-brand img {
	max-height: 44px !important;
	width: auto !important;
}

#site-header-sticky.header-brand-left .header-content {
	display: flex !important;
	flex-direction: row !important;
	align-items: center !important;
	justify-content: flex-end !important;
	flex: 1 !important;
	gap: 0.5rem 1rem !important;
	width: auto !important;
}

#site-header-sticky .navigator {
	display: flex !important;
	align-items: center !important;
	flex-wrap: nowrap !important;
	gap: 0.35rem 0.75rem !important;
}

#site-header-sticky .navigator .menu-primary {
	display: flex !important;
	flex-wrap: nowrap !important;
	gap: 0.15rem !important;
}

#site-header-sticky .navigator .menu-primary > li > a {
	padding: 0.45rem 0.75rem !important;
	border-radius: var(--adcr-radius-pill) !important;
	font-weight: 600 !important;
	font-size: 0.875rem !important;
	text-decoration: none !important;
	white-space: nowrap;
}

#site-header-sticky .navigator .nav-info {
	margin: 0 !important;
	padding: 0 !important;
}

#site-header-sticky .navigator .social-icons {
	display: flex !important;
	gap: 0.3rem !important;
	margin-left: 0.25rem !important;
}

/* Ocultar botón MENU cuando el nav completo está visible */
@media (min-width: 1024px) {
	.site-header-classic .header-brand .off-canvas-toggle[data-target="off-canvas-right"],
	#site-header-sticky .off-canvas-toggle[data-target="off-canvas-right"] {
		display: none !important;
	}

	.site-header-classic .header-brand .logo,
	#site-header-sticky .header-brand .logo {
		max-height: 48px !important;
		width: auto !important;
	}

	.site-header-classic .navigator .menu-primary > li > a,
	#site-header-sticky .navigator .menu-primary > li > a {
		font-size: 0.875rem !important;
	}
}

/* Sticky: visible al hacer scroll (no solo al subir) */
#site-header-sticky.active {
	transform: translateY(0) !important;
	display: flex !important;
	align-items: center !important;
	background: rgba(255, 255, 255, 0.98) !important;
	backdrop-filter: blur(14px);
	-webkit-backdrop-filter: blur(14px);
	box-shadow: 0 4px 20px rgba(58, 65, 111, 0.12);
	padding-block: 0.35rem;
}

#site-header-sticky.active .site-header-inner.wrap {
	flex: 1;
	width: auto;
	max-width: var(--adcr-container, 1140px);
	margin-inline: auto;
	padding-inline: 4%;
}

#site-header-sticky.active .navigator .menu-primary > li > a {
	color: var(--adcr-navy) !important;
}

#site-header-sticky.active .navigator .menu-primary > li > a:hover,
#site-header-sticky.active .navigator .menu-primary > li.current-menu-item > a {
	color: var(--adcr-primary-dark) !important;
}

/* Nav principal — enlaces limpios (desktop) */
@media (min-width: 1024px) {
	.site-header-classic.header-brand-left .header-content {
		flex-wrap: nowrap !important;
		gap: 0.75rem 1.25rem !important;
	}

	.site-header-classic.header-brand-left .header-brand {
		flex: 0 0 auto !important;
		max-width: none !important;
	}

	.site-header-classic .navigator .menu-primary > li > a,
	#site-header-sticky .navigator .menu-primary > li > a {
		padding: 0.45rem 0.75rem !important;
		border-radius: 8px !important;
		font-weight: 500 !important;
		font-size: 0.875rem !important;
		text-decoration: none !important;
		color: var(--adcr-navy) !important;
		background: transparent !important;
		letter-spacing: 0;
		transition: background var(--adcr-transition), color var(--adcr-transition);
	}

	.site-header-classic .navigator .menu-primary > li > a:hover,
	#site-header-sticky .navigator .menu-primary > li > a:hover {
		background: var(--adcr-bg) !important;
		color: var(--adcr-primary-dark) !important;
	}

	.site-header-classic .navigator .menu-primary > li.current-menu-item > a,
	.site-header-classic .navigator .menu-primary > li.current-menu-parent > a,
	#site-header-sticky .navigator .menu-primary > li.current-menu-item > a,
	#site-header-sticky .navigator .menu-primary > li.current-menu-parent > a {
		background: rgba(254, 100, 0, 0.1) !important;
		color: var(--adcr-primary-dark) !important;
		font-weight: 600 !important;
	}

	/* CTA Conversemos en nav */
	.site-header-classic .navigator .nav-info a,
	#site-header-sticky .navigator .nav-info a {
		display: inline-flex !important;
		align-items: center;
		padding: 0.55rem 1.25rem !important;
		border-radius: var(--adcr-radius-pill) !important;
		background: var(--adcr-cta) !important;
		color: #fff !important;
		font-weight: 600 !important;
		text-decoration: none !important;
		text-transform: uppercase;
		font-size: 0.75rem !important;
		letter-spacing: 0.06em;
	}

	.site-header-classic .navigator .nav-info a:hover,
	#site-header-sticky .navigator .nav-info a:hover {
		background: var(--adcr-cta-hover) !important;
		color: #fff !important;
	}

	/* Buscador duplicado: solo en menú lateral en desktop */
	#site-header.site-header-classic .header-brand .extras {
		display: none !important;
	}
}

/* Menú lateral derecho (sliding) */
.sliding-menu {
	width: min(380px, 92vw) !important;
	padding: 1.25rem 1.5rem 2rem !important;
	box-shadow: -12px 0 40px rgba(58, 65, 111, 0.18);
}

.sliding-menu .offTop {
	margin-bottom: 1.5rem !important;
}

.sliding-menu .offTop .header-brand img,
.sliding-menu .offTop a img {
	max-height: 48px;
	width: auto;
}

.sliding-menu .off-canvas-toggle[data-target="off-canvas-right"] {
	background: var(--adcr-primary) !important;
	color: #fff !important;
}

.sliding-menu .menu-sliding {
	margin: 0 !important;
	padding: 0 !important;
}

.sliding-menu .menu-sliding > li {
	list-style: none;
	border-bottom: 1px solid rgba(58, 65, 111, 0.1);
}

.sliding-menu .menu-sliding > li > a {
	display: block !important;
	padding: 1rem 0 !important;
	color: var(--adcr-navy) !important;
	text-decoration: none !important;
	font-size: 1.0625rem !important;
	font-weight: 600 !important;
	line-height: 1.35 !important;
}

.sliding-menu .menu-sliding > li > a:hover,
.sliding-menu .menu-sliding > li.current-menu-item > a {
	color: var(--adcr-primary-dark) !important;
}

.sliding-menu .widget_search .search-field {
	border: 1px solid rgba(58, 65, 111, 0.15) !important;
	border-radius: var(--adcr-radius-sm) !important;
	padding: 0.75rem 1rem !important;
	width: 100%;
}

.sliding-menu .social-icons {
	margin-top: 1.5rem;
	display: flex;
	gap: 0.5rem;
	flex-wrap: wrap;
}

.sliding-menu .social-icons a {
	background: var(--adcr-primary) !important;
	color: #fff !important;
	border: 0 !important;
}

/* Panel lateral izquierdo (topbar ☰) — diseño 2026, no widget dump 1992 */
#off-canvas-left {
	width: min(360px, 92vw) !important;
	background: var(--adcr-surface) !important;
	box-shadow: 4px 0 32px rgba(58, 65, 111, 0.15) !important;
	z-index: 10001 !important;
}

#off-canvas-left .off-canvas-wrap {
	padding: 1.5rem 1.25rem 2.5rem !important;
	background: var(--adcr-surface) !important;
}

#off-canvas-left .widget {
	margin: 0 0 1.5rem !important;
	padding: 0 0 1.25rem !important;
	border-bottom: 1px solid rgba(58, 65, 111, 0.1) !important;
}

#off-canvas-left .widget:last-child {
	margin-bottom: 0 !important;
	padding-bottom: 0 !important;
	border-bottom: 0 !important;
}

#off-canvas-left .widget-title {
	font-size: 0.6875rem !important;
	font-weight: 700 !important;
	letter-spacing: 0.1em !important;
	text-transform: uppercase !important;
	color: var(--adcr-muted) !important;
	margin: 0 0 0.875rem !important;
	padding: 0 !important;
}

#off-canvas-left .widget ul {
	list-style: none !important;
	margin: 0 !important;
	padding: 0 !important;
}

#off-canvas-left .widget li {
	margin: 0 !important;
	padding: 0 !important;
}

#off-canvas-left .widget a {
	color: var(--adcr-navy) !important;
	text-decoration: none !important;
	font-size: 0.9375rem !important;
	font-weight: 500 !important;
	line-height: 1.4 !important;
	transition: color var(--adcr-transition), background var(--adcr-transition);
}

#off-canvas-left .widget a:hover,
#off-canvas-left .widget a:focus-visible {
	color: var(--adcr-primary-dark) !important;
}

/* Entradas recientes — lista limpia */
#off-canvas-left .widget_recent_entries li {
	border-bottom: 1px solid rgba(58, 65, 111, 0.06);
}

#off-canvas-left .widget_recent_entries li:last-child {
	border-bottom: 0;
}

#off-canvas-left .widget_recent_entries li a {
	display: block !important;
	padding: 0.65rem 0 !important;
}

#off-canvas-left .widget_recent_entries .post-date {
	display: block !important;
	font-size: 0.75rem !important;
	color: var(--adcr-muted) !important;
	margin-top: 0.15rem !important;
}

/* Categorías — pills en lugar de lista azul infinita */
#off-canvas-left .widget_categories ul {
	display: flex !important;
	flex-wrap: wrap !important;
	gap: 0.4rem !important;
}

#off-canvas-left .widget_categories li {
	border: 0 !important;
}

#off-canvas-left .widget_categories li a {
	display: inline-flex !important;
	align-items: center !important;
	padding: 0.4rem 0.8rem !important;
	background: var(--adcr-bg) !important;
	border-radius: var(--adcr-radius-pill) !important;
	font-size: 0.8125rem !important;
	font-weight: 600 !important;
	color: var(--adcr-navy) !important;
}

#off-canvas-left .widget_categories li a:hover {
	background: rgba(254, 100, 0, 0.12) !important;
	color: var(--adcr-primary-dark) !important;
}

#off-canvas-left .widget_archive li a,
#off-canvas-left .widget_pages li a,
#off-canvas-left .widget_nav_menu li a {
	display: block !important;
	padding: 0.55rem 0 !important;
	border-bottom: 1px solid rgba(58, 65, 111, 0.06);
}

#off-canvas-left .widget_search .search-field {
	border: 1px solid rgba(58, 65, 111, 0.15) !important;
	border-radius: var(--adcr-radius-sm) !important;
	padding: 0.75rem 1rem !important;
	width: 100% !important;
}

#off-canvas-left .widget_search .search-submit {
	margin-top: 0.5rem;
	border-radius: var(--adcr-radius-pill) !important;
	background: var(--adcr-primary) !important;
	color: #fff !important;
	border: 0 !important;
	padding: 0.5rem 1.25rem !important;
	font-weight: 600 !important;
	cursor: pointer;
}

/* Overlay oscuro al abrir */
.off-canvas-left-active::before {
	content: "";
	position: fixed;
	inset: 0;
	background: rgba(58, 65, 111, 0.45);
	z-index: 10000;
	pointer-events: auto;
}

/* Logos clientes — hereda grid xlarge global */
body.home .adcr-clients .iconlist.iconlist-icon-xlarge {
	grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
}

body.home .adcr-clients .wpb_text_column h2 {
	font-size: 1.125rem !important;
	color: var(--adcr-navy) !important;
	margin: 0 0 0.5rem !important;
}

/* Iconbox equipo — texto oscuro en tarjetas blancas */
body.home .adcr-equipo .iconbox .box-title {
	color: var(--adcr-navy) !important;
	text-shadow: none !important;
}

body.home .adcr-equipo .iconbox .box-content,
body.home .adcr-equipo .iconbox .box-content p {
	color: var(--adcr-text) !important;
	text-shadow: none !important;
}

/* ============================================================
   HOMEPAGE AUDIT v3.2 — contraste + acomodo
   ============================================================ */

body.home .adcr-hero .aligncenter,
body.home .adcr-hero .aligncenter .wpb_wrapper,
body.home .adcr-hero__inner .wpb_wrapper,
body.home .adcr-faq .wpb_wrapper {
	text-align: center;
}

body.home .adcr-hero__title,
body.home .adcr-hero h1.vc_custom_heading {
	text-align: center !important;
}

body.home .adcr-eyebrow,
body.home .vc_custom_heading.style1 {
	color: #c24100 !important;
}

body.home .adcr-equipo .vc_custom_heading.style1,
body.home .vc_custom_1666081335775 .vc_custom_heading.style1 {
	color: #fff !important;
}

body.home .adcr-services .aligncenter .wpb_wrapper,
body.home .wpb_row.shadow .aligncenter .wpb_wrapper,
body.home .adcr-cta-band .wpb_wrapper {
	text-align: center;
}

body.home .wpb_row.shadow > .row-inner {
	padding-block: clamp(0.5rem, 2vw, 1rem);
}

body.home .adcr-cta-band .adcr-hero__actions,
body.home .adcr-cta-band .adcr-btn {
	margin-inline: auto;
}

body.home .adcr-services .iconbox .box-content p,
body.home .wpb_row.shadow .wpb_text_column p {
	color: var(--adcr-text) !important;
}

body.home .adcr-faq-list li {
	color: var(--adcr-navy) !important;
	font-weight: 500;
}

body.home .adcr-cloud .wpb_text_column p,
body.home .adcr-clients .wpb_text_column p {
	color: var(--adcr-text) !important;
}

body.home section.custom-bg > .vc_row {
	max-width: var(--adcr-container);
	margin-inline: auto;
	width: 100%;
}

body.home .adcr-blog .blog-shortcode .post-inner .post-content {
	color: var(--adcr-text) !important;
}

/* Sin fade-out en filas del home — evita parpadeos y contenido “perdido” */
@media (prefers-reduced-motion: no-preference) {
	html.adcr-motion.adcr-motion-ready body.home .wpb-content-wrapper > .wpb_row.adcr-reveal:not(.adcr-in-view),
	html.adcr-motion.adcr-motion-ready body.home .wpb-content-wrapper > section.adcr-reveal:not(.adcr-in-view) {
		opacity: 1 !important;
	}
}

/* ============================================================
   SITE-WIDE — páginas internas, blog, archivos, singles
   ============================================================ */

body:not(.home) #site-content {
	background: var(--adcr-bg);
	padding-top: 0 !important;
}

body:not(.home) .content-body {
	padding-top: 0 !important;
}

body:not(.home) .content-body-inner.wrap {
	max-width: var(--adcr-container);
	padding-inline: clamp(1rem, 3vw, 2rem);
}

body:not(.home) .main-content-inner {
	padding-block: clamp(1.5rem, 4vw, 2.5rem);
}

/* Titlebar — pegado al header, sin reserva de altura fantasma */
.site-content .content-header {
	background: linear-gradient(180deg, #fff 0%, var(--adcr-bg) 100%) !important;
	background-image: none !important;
	padding: 0 !important;
	margin: 0 !important;
	border-bottom: 1px solid rgba(58, 65, 111, 0.08) !important;
}

.site-content .content-header .content-header-inner {
	height: auto !important;
	min-height: 0 !important;
	padding: clamp(1.25rem, 3vw, 2rem) clamp(1rem, 3vw, 2rem) clamp(1.5rem, 3vw, 2rem) !important;
	max-width: var(--adcr-container);
	margin-inline: auto;
	width: 100%;
	box-sizing: border-box;
}

.site-content .content-header .page-title-wrap {
	justify-content: flex-start !important;
	max-width: 48rem;
}

.site-content .content-header.content-header-left .page-title-wrap,
.site-content .content-header.content-header-center .page-title-wrap {
	width: 100% !important;
	max-width: 48rem !important;
	text-align: left !important;
	align-items: flex-start !important;
}

.site-content .page-title .page-title-inner {
	color: var(--adcr-navy) !important;
	font-weight: 700 !important;
	text-transform: none !important;
	letter-spacing: -0.02em !important;
	font-size: clamp(1.5rem, 3.5vw, 2.125rem) !important;
	line-height: 1.2 !important;
	margin: 0 0 0.75rem !important;
}

/* Migas de pan — multilínea, legibles */
.site-content .breadcrumbs {
	font-size: 0.75rem !important;
	margin-bottom: 1rem !important;
	line-height: 1.5 !important;
}

.site-content .breadcrumbs .breadcrumbs-inner {
	display: flex !important;
	flex-wrap: wrap !important;
	align-items: center !important;
	gap: 0.15rem 0.35rem !important;
	max-width: 100%;
}

.site-content .breadcrumbs .breadcrumbs-inner > span {
	display: inline-flex !important;
	align-items: center !important;
	margin: 0 !important;
	float: none !important;
	max-width: 100%;
}

.site-content .breadcrumbs .breadcrumbs-inner > span::after {
	display: none !important;
}

.site-content .breadcrumbs .breadcrumbs-inner > span:not(:last-child)::after {
	content: "/" !important;
	display: inline !important;
	position: static !important;
	width: auto !important;
	height: auto !important;
	border: 0 !important;
	margin: 0 0.25rem !important;
	color: rgba(58, 65, 111, 0.35) !important;
	background: none !important;
	transform: none !important;
}

.site-content .breadcrumbs a,
.site-content .breadcrumbs .breadcrumbs-inner > span {
	color: var(--adcr-muted) !important;
	text-decoration: none !important;
	font-weight: 500 !important;
}

.site-content .breadcrumbs a:hover {
	color: var(--adcr-primary-dark) !important;
}

.site-content .breadcrumbs .breadcrumbs-inner > span:last-child,
.site-content .breadcrumbs .breadcrumbs-inner > span:last-child a {
	color: var(--adcr-navy) !important;
	font-weight: 600 !important;
}

/* Categorías en titlebar / single */
.site-content .content-header .post-categories {
	margin-bottom: 0.75rem !important;
}

.site-content .content-header .post-categories a {
	float: none !important;
	display: inline-flex !important;
	margin: 0 0.35rem 0.35rem 0 !important;
}

.site-content .content-header::before,
.site-content .content-header.content-header-shadow::before,
.content-header-shadow::before {
	display: none !important;
	background: none !important;
	content: none !important;
}

.site-content .content-header canvas,
.site-content .down-arrow {
	display: none !important;
}

.site-content .content-header .page-title-wrap .mask {
	display: none !important;
}

.site-content .page-title .subtitle {
	color: var(--adcr-text) !important;
	font-weight: 400 !important;
	text-transform: none !important;
}

/* Enlaces del contenido — paleta ADCR, no azul del tema */
#site-content .main-content .content a:not(.button):not(.vc_btn3):not(.blog-readmore):not(.post-inner):not(.wp-block-button__link) {
	color: var(--adcr-navy);
	text-decoration: none;
	transition: color var(--adcr-transition);
}

#site-content .main-content .content a:not(.button):not(.vc_btn3):not(.blog-readmore):not(.post-inner):not(.wp-block-button__link):hover {
	color: var(--adcr-primary-dark);
}

/* Blog grid — mismas tarjetas que homepage */
.blog-grid .content-inner[data-grid-normal] {
	display: grid !important;
	grid-template-columns: 1fr;
	gap: clamp(1.25rem, 3vw, 2rem);
	margin: 0 !important;
}

.blog-grid .content-inner[data-grid-normal] .post {
	float: none !important;
	width: 100% !important;
	max-width: 100% !important;
	padding: 0 !important;
	margin: 0 !important;
	position: static !important;
}

@media (min-width: 640px) {
	.blog-grid [data-grid-normal][data-columns="2"] .post,
	.blog-grid [data-grid-normal][data-columns="3"] .post,
	.blog-grid [data-grid-normal][data-columns="4"] .post {
		flex: none !important;
	}

	.blog-grid .content-inner[data-grid-normal][data-columns="2"] {
		grid-template-columns: repeat(2, 1fr);
	}

	.blog-grid .content-inner[data-grid-normal][data-columns="3"] {
		grid-template-columns: repeat(3, 1fr);
	}
}

@media (min-width: 1024px) {
	.blog-grid .content-inner[data-grid-normal][data-columns="4"] {
		grid-template-columns: repeat(4, 1fr);
	}
}

/* Blog / novedades — sin hueco fantasma del masonry/isotope */
body.blog .content-body-inner.wrap,
body.blog-grid .content-body-inner.wrap,
body.blog-masonry .content-body-inner.wrap {
	padding-bottom: clamp(2rem, 4vw, 3rem) !important;
}

body.blog .content-inner[data-grid],
body.blog-masonry .content-inner[data-grid] {
	display: grid !important;
	grid-template-columns: 1fr;
	gap: clamp(1.25rem, 3vw, 2rem);
	margin: 0 !important;
	min-height: 0 !important;
	height: auto !important;
}

body.blog .content-inner[data-grid] .post,
body.blog-masonry .content-inner[data-grid] .post {
	position: static !important;
	float: none !important;
	width: 100% !important;
	padding: 0 !important;
	margin: 0 !important;
	transform: none !important;
	opacity: 1 !important;
}

@media (min-width: 640px) {
	body.blog .content-inner[data-grid][data-columns="2"],
	body.blog-masonry .content-inner[data-grid][data-columns="2"] {
		grid-template-columns: repeat(2, 1fr);
	}
}

body.blog .main-content .content,
body.blog-grid .main-content .content,
body.blog-masonry .main-content .content {
	max-width: var(--adcr-container);
	margin-inline: auto;
}

body.blog .content-header .content-header-inner,
body.blog-grid .content-header .content-header-inner {
	padding-bottom: clamp(1rem, 2vw, 1.25rem) !important;
}

html.adcr-motion.adcr-motion-ready body.blog .content-inner .post.adcr-reveal:not(.adcr-in-view),
html.adcr-motion.adcr-motion-ready body.blog-grid .content-inner .post.adcr-reveal:not(.adcr-in-view),
html.adcr-motion.adcr-motion-ready body.blog-masonry .content-inner .post.adcr-reveal:not(.adcr-in-view) {
	opacity: 1 !important;
	transform: none !important;
}

.blog-grid .post-inner {
	display: flex !important;
	flex-direction: column !important;
	width: 100% !important;
	height: 100% !important;
	padding: 1.25rem !important;
	margin: 0 !important;
	background: #fff !important;
	border: 1px solid rgba(58, 65, 111, 0.06) !important;
	border-top: none !important;
	border-radius: var(--adcr-radius) !important;
	box-shadow: var(--adcr-shadow) !important;
	transition: transform var(--adcr-transition), box-shadow var(--adcr-transition);
}

.blog-grid .post-inner:hover {
	transform: translateY(-4px);
	box-shadow: var(--adcr-shadow-hover);
}

.blog-grid .post-image {
	margin-bottom: 1rem !important;
	overflow: hidden;
	border-radius: var(--adcr-radius-sm);
}

.blog-grid .post-image img {
	border-radius: var(--adcr-radius-sm) !important;
	width: 100%;
	height: auto;
	aspect-ratio: 16 / 10;
	object-fit: cover;
}

.blog-grid .post-meta {
	padding: 0 0 0.75rem !important;
	font-size: 0.8125rem !important;
}

.blog-grid .post-meta .post-date {
	color: var(--adcr-cta) !important;
	font-weight: 600 !important;
	opacity: 1 !important;
}

.blog-grid .post-title {
	margin: 0 0 0.65rem !important;
	font-size: 1.0625rem !important;
	line-height: 1.35 !important;
}

.blog-grid .post-title a {
	color: var(--adcr-navy) !important;
	background-image: none !important;
	text-decoration: none !important;
	font-weight: 700 !important;
}

.blog-grid .post-title a:hover {
	color: var(--adcr-primary-dark) !important;
}

.blog-grid .post-content {
	color: var(--adcr-text) !important;
	font-size: 0.9375rem !important;
	line-height: 1.55 !important;
	margin-bottom: 1rem !important;
	flex: 1;
}

.blog-grid .post-author {
	margin-bottom: 1rem !important;
	font-size: 0.8125rem !important;
	color: var(--adcr-muted) !important;
	text-transform: none !important;
}

.blog-grid .post-author a {
	color: var(--adcr-navy) !important;
	text-decoration: none !important;
}

.blog-grid .post-author a:hover {
	color: var(--adcr-primary-dark) !important;
}

/* Categorías — pills modernas */
.post-categories a {
	float: none !important;
	display: inline-flex !important;
	align-items: center !important;
	gap: 0.25rem !important;
	font-size: 0.6875rem !important;
	font-weight: 600 !important;
	letter-spacing: 0.04em !important;
	text-transform: uppercase !important;
	color: #fff !important;
	background: var(--adcr-cta) !important;
	padding: 0.35rem 0.75rem !important;
	margin: 0 0.35rem 0.35rem 0 !important;
	border-radius: var(--adcr-radius-pill) !important;
	box-shadow: none !important;
}

.post-categories a::before {
	display: none !important;
}

.post-categories a:hover {
	background: var(--adcr-primary-dark) !important;
	color: #fff !important;
}

/* Botón leer más */
.blog-grid .blog-readmore {
	display: inline-flex !important;
	align-items: center !important;
	position: relative !important;
	margin-top: auto !important;
	padding: 0.65rem 1.25rem !important;
	height: auto !important;
	line-height: 1.3 !important;
	background: var(--adcr-cta) !important;
	color: #fff !important;
	border-radius: var(--adcr-radius-pill) !important;
	font-weight: 600 !important;
	font-size: 0.8125rem !important;
	text-decoration: none !important;
	transition: background var(--adcr-transition), transform var(--adcr-transition);
}

.blog-grid .blog-readmore::before,
.blog-grid .blog-readmore::after,
.blog-grid .blog-readmore span::before {
	display: none !important;
}

.blog-grid .blog-readmore span {
	color: #fff !important;
	padding: 0 !important;
}

.blog-grid .blog-readmore:hover {
	background: var(--adcr-cta-hover) !important;
	transform: translateY(-1px);
	padding-left: 1.25rem !important;
}

/* Paginación */
.navigation.pager-numeric {
	margin-top: 2rem !important;
	text-align: center;
}

.navigation.pager-numeric .page-numbers {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	min-width: 40px !important;
	height: 40px !important;
	padding: 0 0.75rem !important;
	margin: 0.15rem !important;
	border-radius: var(--adcr-radius-sm) !important;
	background: #fff !important;
	color: var(--adcr-navy) !important;
	border: 1px solid rgba(58, 65, 111, 0.12) !important;
	text-decoration: none !important;
	font-weight: 600 !important;
	font-size: 0.875rem !important;
	transition: background var(--adcr-transition), color var(--adcr-transition);
}

.navigation.pager-numeric .page-numbers.current,
.navigation.pager-numeric .page-numbers:hover {
	background: var(--adcr-primary) !important;
	color: #fff !important;
	border-color: var(--adcr-primary) !important;
}

/* Single post / attachment — hero editorial */
.single-post .content-body-inner,
.single-attachment .content-body-inner {
	border-top: none !important;
	padding-top: 0 !important;
}

.single-post .content-header .post-author-meta,
.single-attachment .content-header .post-author-meta {
	display: flex !important;
	align-items: center !important;
	flex-wrap: wrap !important;
	gap: 0.75rem 1rem !important;
	margin-top: 0.5rem !important;
	padding-top: 0.75rem !important;
	border-top: 1px solid rgba(58, 65, 111, 0.08) !important;
}

.single-post .post-author-meta .post-avatar,
.single-attachment .post-author-meta .post-avatar {
	margin: 0 !important;
	flex-shrink: 0;
}

.single-post .post-author-meta .post-avatar img,
.single-attachment .post-author-meta .post-avatar img {
	width: 44px !important;
	height: 44px !important;
	border-radius: 50% !important;
	border: 2px solid rgba(58, 65, 111, 0.08) !important;
}

.single-post .post-author-meta .post-author-content,
.single-attachment .post-author-meta .post-author-content {
	flex: 1;
	min-width: 0;
}

.single-post .post-author-meta .post-name,
.single-attachment .post-author-meta .post-name {
	margin: 0 0 0.15rem !important;
	color: var(--adcr-navy) !important;
	font-size: 0.875rem !important;
	font-weight: 600 !important;
	display: flex !important;
	flex-wrap: wrap !important;
	align-items: center !important;
	gap: 0.5rem !important;
}

.single-post .post-author-meta .post-name .author-more-posts,
.single-attachment .post-author-meta .post-name .author-more-posts {
	display: inline-flex !important;
	align-items: center !important;
	padding: 0.3rem 0.75rem !important;
	font-size: 0.6875rem !important;
	font-weight: 600 !important;
	text-transform: uppercase !important;
	letter-spacing: 0.04em !important;
	color: var(--adcr-primary-dark) !important;
	background: rgba(254, 100, 0, 0.1) !important;
	border: 1px solid rgba(254, 100, 0, 0.25) !important;
	border-radius: var(--adcr-radius-pill) !important;
	text-decoration: none !important;
}

.single-post .post-author-meta .post-name .author-more-posts:hover,
.single-attachment .post-author-meta .post-name .author-more-posts:hover {
	background: var(--adcr-primary) !important;
	color: #fff !important;
	border-color: var(--adcr-primary) !important;
}

.single-post .post-author-meta .post-date,
.single-attachment .post-author-meta .post-date,
.single-post .post-author-meta .post-read,
.single-attachment .post-author-meta .post-read {
	color: var(--adcr-muted) !important;
	font-size: 0.8125rem !important;
	opacity: 1 !important;
}

.single-post .post-author-meta .post-read::before,
.single-attachment .post-author-meta .post-read::before {
	background: var(--adcr-primary) !important;
	width: 4px !important;
	height: 4px !important;
}

.single-post .content-header .post-thumbnail,
.single-attachment .content-header .post-thumbnail {
	margin-top: 1.5rem !important;
	width: 100% !important;
	max-width: 100% !important;
	perspective: none !important;
}

.single-post .content-header .post-thumbnail .imgFeatured,
.single-attachment .content-header .post-thumbnail .imgFeatured {
	border-radius: var(--adcr-radius) !important;
	overflow: hidden !important;
	box-shadow: var(--adcr-shadow) !important;
}

.single-post .content-header .post-thumbnail img,
.single-attachment .content-header .post-thumbnail img {
	width: 100% !important;
	height: auto !important;
	max-height: min(52vh, 520px) !important;
	object-fit: cover !important;
	border-radius: var(--adcr-radius) !important;
	box-shadow: none !important;
}

.single-post .main-content .content,
.single-attachment .main-content .content {
	max-width: 42rem;
	margin-inline: auto;
}

.single-post .post-content,
.single-attachment .post-content {
	color: var(--adcr-text);
	line-height: 1.75;
	font-size: 1.0625rem;
}

.single-post .post-content > p:first-child,
.single-attachment .post-content > p:first-child {
	font-size: 1.125rem;
	line-height: 1.65;
	color: var(--adcr-navy);
}

.single-post .post-content h2,
.single-post .post-content h3,
.single-attachment .post-content h2,
.single-attachment .post-content h3 {
	color: var(--adcr-navy);
	margin-top: 2rem;
}

.single-post .post-tags a,
.single-attachment .post-tags a {
	display: inline-flex !important;
	padding: 0.35rem 0.75rem !important;
	margin: 0 0.35rem 0.35rem 0 !important;
	background: var(--adcr-bg) !important;
	color: var(--adcr-navy) !important;
	border-radius: var(--adcr-radius-pill) !important;
	font-size: 0.8125rem !important;
	text-decoration: none !important;
}

.single-post .post-tags a:hover,
.single-attachment .post-tags a:hover {
	background: var(--adcr-primary) !important;
	color: #fff !important;
}

/* Páginas estáticas */
.page .main-content .content {
	max-width: var(--adcr-container);
}

.page .content-header .page-title-inner {
	max-width: 40rem;
}

/* Fullwidth WPB: sin H1 duplicado del theme cuando el contenido trae H1 propio */
.page-template-template-fullwidth-php:has(.wpb_wrapper h1.vc_custom_heading) .content-header,
.page-template-template-fullwidth-php:has(.wpb_wrapper h1.adcr-wpb-heading) .content-header,
.page-template-template-fullwidth-php:has(.wpb_wrapper .vc_do_custom_heading h1) .content-header {
	display: none !important;
}

/* Footer */
.site-footer {
	border-top: 1px solid rgba(58, 65, 111, 0.08) !important;
}

.footer-copyright {
	color: var(--adcr-muted) !important;
	font-size: 0.875rem !important;
}

.footer-copyright a {
	color: var(--adcr-navy) !important;
	text-decoration: none !important;
}

.footer-copyright a:hover {
	color: var(--adcr-primary-dark) !important;
}

.footer-widgets .widget-title {
	text-transform: none !important;
	letter-spacing: -0.01em !important;
}

/* Comentarios */
.comments-area {
	max-width: 42rem;
	margin-inline: auto;
}

.comments-area .comment-list .comment-body {
	background: #fff;
	border: 1px solid rgba(58, 65, 111, 0.08);
	border-radius: var(--adcr-radius-sm);
	padding: 1rem 1.25rem;
	margin-bottom: 1rem;
}

/* Sidebar */
.main-sidebar .widget {
	background: #fff;
	border: 1px solid rgba(58, 65, 111, 0.06);
	border-radius: var(--adcr-radius);
	padding: 1.25rem;
	box-shadow: var(--adcr-shadow);
	margin-bottom: 1.25rem;
}

.main-sidebar .widget a {
	color: var(--adcr-navy) !important;
	text-decoration: none !important;
}

.main-sidebar .widget a:hover {
	color: var(--adcr-primary-dark) !important;
}

.main-sidebar .widget .widget-title {
	color: var(--adcr-navy) !important;
	font-size: 0.9375rem !important;
	font-weight: 700 !important;
	text-transform: none !important;
	letter-spacing: -0.01em !important;
	border-bottom: 2px solid rgba(254, 100, 0, 0.25);
	padding-bottom: 0.5rem;
	margin-bottom: 1rem;
}

/* Búsqueda en header */
.menu-extras > li.search-box .search-form-wrap .search-field,
.menu-extras > li.search-box .widget_search .search-field {
	border: 2px solid rgba(58, 65, 111, 0.12) !important;
	border-radius: var(--adcr-radius-pill) !important;
	padding: 0.5rem 1rem !important;
	min-height: 40px !important;
	font-size: 0.875rem !important;
	background: #fff !important;
	color: var(--adcr-navy) !important;
}

.menu-extras > li.search-box .widget_search .search-submit {
	background: var(--adcr-navy) !important;
	color: #fff !important;
	border-radius: var(--adcr-radius-pill) !important;
	border: 0 !important;
	font-weight: 600 !important;
}

/* Páginas internas WPBakery */
body:not(.home) #site .wpb_row {
	margin-bottom: clamp(1.5rem, 4vw, 2.5rem);
}

body:not(.home) #site .vc_custom_heading {
	color: var(--adcr-navy);
}

body:not(.home) #site .wpb_text_column,
body:not(.home) #site .wpb_text_column p {
	color: var(--adcr-text);
	line-height: 1.65;
}

/* —— Páginas internas: layout, contraste, contenido clásico —— */
body:not(.home) .main-content-inner > .content {
	width: 100%;
}

body:not(.home) .wpb-content-wrapper {
	width: 100%;
}

body:not(.home) .wpb-content-wrapper > .wpb_row,
body:not(.home) .wpb-content-wrapper > .vc_section {
	width: 100% !important;
	max-width: 100% !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
}

body:not(.home) .wpb-content-wrapper > .wpb_row > .row-inner,
body:not(.home) .wpb-content-wrapper > .vc_section > .vc_row > .row-inner {
	width: 100% !important;
	max-width: var(--adcr-container) !important;
	margin-inline: auto !important;
	padding-inline: clamp(1rem, 4vw, 2rem) !important;
	box-sizing: border-box;
}

body:not(.home) #site .wpb_row + .wpb_row {
	margin-top: 0;
}

body:not(.home) .vc_do_custom_heading[style*="color: #3a416f"],
body:not(.home) .vc_custom_heading[style*="color: #3a416f"] {
	color: var(--adcr-navy) !important;
}

body:not(.home) .vc_do_custom_heading[style*="color: #6b7c93"],
body:not(.home) .vc_do_custom_heading[style*="color: #61708b"],
body:not(.home) .vc_custom_heading[style*="color: #6b7c93"],
body:not(.home) .vc_custom_heading[style*="color: #61708b"] {
	color: var(--adcr-text) !important;
}

body:not(.home) .content .entry-content,
body:not(.home) .content .adcr-legacy-content {
	color: var(--adcr-text);
	line-height: 1.65;
	font-size: 1rem;
}

body:not(.home) .content .entry-content > :first-child,
body:not(.home) .content .adcr-legacy-content > :first-child {
	margin-top: 0;
}

body:not(.home) .content .entry-content h2,
body:not(.home) .content .entry-content h3,
body:not(.home) .content .adcr-legacy-content h2,
body:not(.home) .content .adcr-legacy-content h3 {
	color: var(--adcr-navy);
	font-weight: 700;
	line-height: 1.35;
	margin: 1.75rem 0 0.75rem;
}

body:not(.home) .content .entry-content h3,
body:not(.home) .content .adcr-legacy-content h3 {
	font-size: 1.25rem;
}

body:not(.home) .content .entry-content ol,
body:not(.home) .content .entry-content ul,
body:not(.home) .content .adcr-legacy-content ol,
body:not(.home) .content .adcr-legacy-content ul {
	padding-left: 1.25rem;
	margin: 0 0 1.25rem;
}

body:not(.home) .content .entry-content li,
body:not(.home) .content .adcr-legacy-content li {
	margin-bottom: 0.5rem;
}

body:not(.home) .content .alignleft,
body:not(.home) .content .alignright {
	margin-bottom: 1rem;
	border-radius: var(--adcr-radius-sm);
}

body:not(.home) .content .adcr-legacy-figure {
	margin: 1.5rem auto;
	text-align: center;
}

body:not(.home) .content .adcr-legacy-figure img {
	max-width: 100%;
	height: auto;
	border-radius: var(--adcr-radius-sm);
	box-shadow: var(--adcr-shadow);
}

body:not(.home) .content .vc_custom_heading.style1,
body:not(.home) .content .adcr-wpb-label {
	background: rgba(254, 100, 0, 0.1) !important;
	color: #c24100 !important;
	border-radius: var(--adcr-radius-pill);
	display: inline-block;
	padding: 0.35rem 1rem;
	font-size: 0.8125rem;
	font-weight: 600;
	letter-spacing: 0.06em;
	text-transform: uppercase;
}

body:not(.home) .content .wpb_row.shadow {
	background: var(--adcr-surface) !important;
	border-radius: var(--adcr-radius);
	box-shadow: var(--adcr-shadow);
	padding-block: clamp(2rem, 4vw, 3rem) !important;
}

body:not(.home) .adcr-services-hub .aligncenter .wpb_wrapper {
	text-align: center;
}

body:not(.home) .adcr-services-tabs .vc_tta-panel-body,
body:not(.home) .adcr-services-tabs .vc_tta-panel-body .wpb_wrapper {
	padding: clamp(1.25rem, 3vw, 2rem) !important;
}

body:not(.home) .adcr-services-tabs .vc_tta-tab > a {
	color: var(--adcr-navy) !important;
	font-weight: 600 !important;
}

body:not(.home) .adcr-services-tabs .vc_tta-tab.vc_active > a {
	color: var(--adcr-primary-dark) !important;
}

body:not(.home) .adcr-services-tabs .vc_tta-panel-body .adcr-legacy-figure img {
	max-width: min(320px, 100%);
	margin-inline: auto;
}

body:not(.home) .adcr-services-hub + .adcr-services {
	margin-top: clamp(1.5rem, 4vw, 2.5rem);
}

/* ============================================================
   SITE-WIDE — botones, secciones WPB y tipografía (todas las páginas)
   El home tenía ~200 reglas body.home; las páginas internas las necesitan igual.
   ============================================================ */

#site .adcr-btn,
#site a.moreBox.adcr-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 3.25rem;
	padding: 0 1.75rem;
	border-radius: var(--adcr-radius-pill);
	font-size: 0.8125rem;
	font-weight: 600;
	letter-spacing: 0.04em;
	text-decoration: none !important;
	transition: transform var(--adcr-transition), box-shadow var(--adcr-transition), background var(--adcr-transition);
}

#site .adcr-btn--outline {
	border: 2px solid var(--adcr-navy);
	color: var(--adcr-navy) !important;
	background: transparent;
}

#site .adcr-btn--outline:hover {
	background: var(--adcr-navy);
	color: #fff !important;
	transform: translateY(-2px);
}

#site .adcr-btn--primary {
	background: linear-gradient(135deg, var(--adcr-primary) 0%, var(--adcr-primary-dark) 100%);
	color: #fff !important;
	border: 0;
	box-shadow: 0 8px 24px rgba(254, 100, 0, 0.35);
}

#site .adcr-btn--primary:hover {
	transform: translateY(-2px);
	box-shadow: var(--adcr-shadow-hover);
	color: #fff !important;
}

#site .adcr-hero__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 0.875rem;
	justify-content: center;
	align-items: center;
	margin-top: 1.75rem;
}

#site a.more-link {
	background: linear-gradient(135deg, var(--adcr-primary) 0%, var(--adcr-primary-dark) 100%) !important;
	color: #fff !important;
	border-radius: var(--adcr-radius-pill) !important;
	padding: 0 2rem 0 3.25rem !important;
	min-width: auto !important;
	height: 3.25rem !important;
	line-height: 3.25rem !important;
	font-size: 0.75rem !important;
	font-weight: 600 !important;
	letter-spacing: 0.08em !important;
	box-shadow: 0 8px 24px rgba(254, 100, 0, 0.35);
	text-decoration: none !important;
	display: inline-flex !important;
	align-items: center !important;
}

#site a.more-link::before,
#site a.more-link::after {
	background: #fff !important;
	left: 1.25rem !important;
}

#site a.more-link span::before {
	display: none !important;
}

#site a.more-link:hover {
	padding-left: 3rem !important;
	transform: translateY(-2px);
	box-shadow: var(--adcr-shadow-hover);
	color: #fff !important;
}

#site a.link {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	padding: 0.5rem 1.25rem;
	background: var(--adcr-cta);
	color: #fff !important;
	border-radius: var(--adcr-radius-pill);
	font-weight: 600;
	font-size: 0.875rem;
	text-decoration: none !important;
	transition: transform var(--adcr-transition), box-shadow var(--adcr-transition);
}

#site a.link:hover {
	transform: translateY(-2px);
	box-shadow: 0 8px 20px rgba(254, 100, 0, 0.35);
	color: #fff !important;
}

#site a.moreBox.adcr-btn::before,
#site a.moreBox.adcr-btn::after {
	display: none !important;
}

#site .vc_general.vc_btn3.vc_btn3-style-custom {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	min-height: 3.25rem !important;
	padding: 0 1.75rem !important;
	border-radius: var(--adcr-radius-pill) !important;
	font-size: 0.8125rem !important;
	font-weight: 600 !important;
	letter-spacing: 0.04em !important;
	text-decoration: none !important;
	border: 0 !important;
	transition: transform var(--adcr-transition), box-shadow var(--adcr-transition) !important;
}

#site .vc_general.vc_btn3.vc_btn3-style-custom:hover {
	transform: translateY(-2px);
	box-shadow: var(--adcr-shadow-hover) !important;
}

#site .wpb_row.gradient3,
#site .gradient3.wpb_row {
	padding-top: clamp(2rem, 4vw, 3.5rem) !important;
	padding-bottom: clamp(2.5rem, 5vw, 4rem) !important;
	background: radial-gradient(ellipse 80% 60% at 50% -10%, rgba(84, 200, 239, 0.22), transparent 60%),
		radial-gradient(ellipse 60% 50% at 100% 20%, rgba(254, 100, 0, 0.12), transparent 55%),
		linear-gradient(180deg, #ffffff 0%, var(--adcr-bg) 100%) !important;
}

#site .gradient3::before {
	opacity: 0 !important;
}

#site .vc_custom_heading.style1,
#site .adcr-wpb-label,
#site .adcr-eyebrow {
	background: rgba(254, 100, 0, 0.1) !important;
	color: #c24100 !important;
	box-shadow: none !important;
	border-radius: var(--adcr-radius-pill) !important;
	padding: 0.4rem 1.1rem !important;
	font-size: 0.8125rem !important;
	font-weight: 600 !important;
	letter-spacing: 0.06em !important;
	text-transform: uppercase !important;
}

#site .vc_custom_heading.style1::after {
	display: none !important;
}

#site .vc_custom_heading[style*="background-color: #52d475"],
#site .vc_custom_heading[style*="background-color:#52d475"],
#site p[style*="background-color: #52d475"] {
	background: rgba(254, 100, 0, 0.1) !important;
	color: #c24100 !important;
}

#site .wpb_row.shadow {
	padding-top: clamp(2.5rem, 5vw, 4rem) !important;
	padding-bottom: clamp(2.5rem, 5vw, 4rem) !important;
	background: var(--adcr-surface) !important;
	border-radius: var(--adcr-radius);
	box-shadow: var(--adcr-shadow);
	max-width: var(--adcr-container);
	margin-inline: auto;
	width: 100% !important;
}

#site .wpb_row.shadow::before,
#site .wpb_row.shadow::after,
#site .wpb_row.shadow > .row-inner::before {
	display: none !important;
}

#site .adcr-cta-band {
	background: linear-gradient(135deg, var(--adcr-navy) 0%, #2d3560 50%, var(--adcr-primary-dark) 100%);
	border-radius: var(--adcr-radius);
	max-width: var(--adcr-container);
	margin-inline: auto;
	width: 100% !important;
	padding: clamp(2.5rem, 5vw, 3.5rem) clamp(1rem, 4vw, 2rem) !important;
}

#site .adcr-cta-band h2,
#site .adcr-cta-band h2.vc_custom_heading,
#site .adcr-cta-band p,
#site .adcr-cta-band p.vc_custom_heading,
#site .adcr-cta-band .vc_custom_heading,
#site .adcr-cta-band .adcr-cta-band__title,
#site .adcr-cta-band .adcr-cta-band__subtitle {
	color: #fff !important;
}

#site .adcr-cta-band .adcr-btn--outline {
	border-color: #fff;
	color: #fff !important;
}

#site .adcr-cta-band .adcr-btn--outline:hover {
	background: #fff;
	color: var(--adcr-navy) !important;
}

#site .adcr-services {
	background: var(--adcr-surface);
	border-radius: var(--adcr-radius);
	max-width: var(--adcr-container);
	margin-inline: auto !important;
	box-shadow: var(--adcr-shadow);
	padding-block: clamp(2.5rem, 5vw, 3.75rem) !important;
	width: 100% !important;
}

#site .adcr-services .box-readmore a,
#site .iconbox .box-readmore a {
	color: var(--adcr-primary-dark) !important;
	font-weight: 600;
}

#site .vc_do_custom_heading[style*="font-size: 48px"],
#site .vc_custom_heading[style*="font-size: 48px"],
#site div.vc_do_custom_heading[style*="font-size: 48px"] {
	font-size: clamp(1.75rem, 4vw, 3rem) !important;
	color: var(--adcr-navy) !important;
	font-weight: 700 !important;
	line-height: 1.15 !important;
	letter-spacing: -0.03em !important;
}

#site p.vc_custom_heading[style*="font-size: 22px"]:not(.adcr-cta-band__subtitle),
#site .vc_do_custom_heading[style*="font-size: 22px"]:not(.adcr-cta-band__subtitle),
#site p.vc_do_custom_heading[style*="line-height: 30px"]:not(.adcr-cta-band__subtitle) {
	font-size: clamp(1rem, 2vw, 1.375rem) !important;
	line-height: 1.55 !important;
	color: var(--adcr-text) !important;
}

#site p.vc_custom_heading[style*="line-height: 40px"]:not(.adcr-cta-band__subtitle) {
	font-size: clamp(0.9375rem, 1.8vw, 1.125rem) !important;
	line-height: 1.6 !important;
	color: var(--adcr-text) !important;
}

/* Bandas oscuras — copy siempre blanco (pisa reglas globales de WPBakery arriba) */
#site .adcr-cta-band :is(h1, h2, h3, h4, p, div).vc_custom_heading,
#site .adcr-cta-band :is(h1, h2, h3, h4, p, div).vc_do_custom_heading,
#site .adcr-cta-band .adcr-cta-band__title,
#site .adcr-cta-band .adcr-cta-band__subtitle,
#site .adcr-equipo :is(h1, h2, h3, h4, p, div).vc_custom_heading,
#site .adcr-equipo :is(h1, h2, h3, h4, p, div).vc_do_custom_heading,
#site .vc_custom_1666081335775 :is(h1, h2, h3, h4, p, div).vc_custom_heading,
#site .vc_custom_1666081335775 :is(h1, h2, h3, h4, p, div).vc_do_custom_heading {
	color: #fff !important;
	-webkit-text-fill-color: #fff !important;
	opacity: 1 !important;
}

body.home .adcr-cta-band :is(h1, h2, h3, h4, p, div).vc_custom_heading,
body.home .adcr-cta-band :is(h1, h2, h3, h4, p, div).vc_do_custom_heading,
body.home .adcr-cta-band .adcr-cta-band__title,
body.home .adcr-cta-band .adcr-cta-band__subtitle {
	color: #fff !important;
	-webkit-text-fill-color: #fff !important;
	opacity: 1 !important;
}

/* Mentor / equipo — copy naranja (pisa blanco de banda oscura) */
body.home .adcr-equipo .adcr-home-orange.vc_custom_heading,
body.home .adcr-equipo .adcr-home-orange.vc_do_custom_heading,
body.home .vc_custom_1666081335775 .adcr-home-orange.vc_custom_heading,
body.home .vc_custom_1666081335775 .adcr-home-orange.vc_do_custom_heading,
#site .adcr-equipo .adcr-home-orange.vc_custom_heading,
#site .adcr-equipo .adcr-home-orange.vc_do_custom_heading,
#site .vc_custom_1666081335775 .adcr-home-orange.vc_custom_heading,
#site .vc_custom_1666081335775 .adcr-home-orange.vc_do_custom_heading {
	color: var(--adcr-primary, #fe6400) !important;
	-webkit-text-fill-color: var(--adcr-primary, #fe6400) !important;
	opacity: 1 !important;
}

#site .wpb-content-wrapper > .vc_section {
	width: 100% !important;
	max-width: 100% !important;
	margin-bottom: clamp(1.5rem, 4vw, 2.5rem);
}

#site .wpb-content-wrapper > .vc_section > .vc_row > .row-inner,
#site .wpb-content-wrapper > .wpb_row > .row-inner,
#site .wpb-content-wrapper > .vc_section .wpb_row > .row-inner {
	width: 100% !important;
	max-width: var(--adcr-container) !important;
	margin-inline: auto !important;
	padding-inline: clamp(1rem, 4vw, 2rem) !important;
	box-sizing: border-box;
}

#site .iconlist.iconlist-icon-xlarge {
	display: grid !important;
	grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
	gap: 0.75rem !important;
	margin: 0 !important;
	padding: 0 !important;
	list-style: none;
}

#site .iconlist.iconlist-icon-xlarge li {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	padding: 1rem 0.75rem !important;
	min-height: 84px;
	background: #fff !important;
	border: 1px solid rgba(58, 65, 111, 0.08) !important;
	border-radius: var(--adcr-radius-sm) !important;
	box-shadow: 0 1px 3px rgba(58, 65, 111, 0.05) !important;
}

#site .iconlist.iconlist-icon-xlarge .iconlist-item-icon img {
	max-height: 44px !important;
	width: auto !important;
	object-fit: contain !important;
}

#site .vc_tta-style-modern .vc_tta-tab > a {
	color: var(--adcr-navy) !important;
	font-weight: 600 !important;
}

#site .vc_tta-style-modern .vc_tta-tab.vc_active > a {
	color: var(--adcr-primary-dark) !important;
}

#site .vc_tta-style-modern .vc_tta-panel-body {
	color: var(--adcr-text);
	line-height: 1.65;
}

#site .aligncenter .wpb_wrapper {
	text-align: center;
}

@media (max-width: 991px) {
	#site .iconlist.iconlist-icon-xlarge {
		grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
	}
}

@media (max-width: 544px) {
	#site .iconlist.iconlist-icon-xlarge {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}
}

/* Contadores estadísticas (WPBakery / line-shortcodes) */
#site .counter .counter-content {
	font-size: clamp(2rem, 5vw, 3rem);
	font-weight: 700;
	color: var(--adcr-navy);
	line-height: 1.1;
}

#site .counter .counter-title {
	color: var(--adcr-muted);
	font-size: 0.9375rem;
	font-weight: 500;
	margin-top: 0.35rem;
}

#site .counter.style1 {
	background: var(--adcr-surface);
	border: 1px solid rgba(58, 65, 111, 0.08);
	border-radius: var(--adcr-radius);
	box-shadow: var(--adcr-shadow);
	padding: clamp(1.25rem, 3vw, 2rem);
}

#site .counter .counter-content .counter-prefix,
#site .counter .counter-content .counter-suffix {
	color: var(--adcr-primary-dark);
	font-weight: 700;
}

/* FAQ acordeón WPBakery (vc_toggle) — vertical, no layout flex roto del tema */
#site .vc_toggle.vc_toggle_default {
	display: block !important;
	border: 1px solid rgba(58, 65, 111, 0.1) !important;
	border-bottom: 1px solid rgba(58, 65, 111, 0.1) !important;
	border-radius: var(--adcr-radius-sm) !important;
	margin: 0 0 0.625rem !important;
	padding: 0 !important;
	background: #fff;
	overflow: hidden;
	transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

#site .vc_toggle.vc_toggle_default:last-of-type {
	margin-bottom: 0 !important;
	border-bottom: 1px solid rgba(58, 65, 111, 0.1) !important;
}

#site .vc_toggle.vc_toggle_default.vc_toggle_active {
	border-color: rgba(254, 100, 0, 0.35) !important;
	box-shadow: 0 2px 12px rgba(42, 49, 88, 0.06);
}

#site .vc_toggle.vc_toggle_default .vc_toggle_title {
	display: block !important;
	flex-grow: unset !important;
	position: relative !important;
	padding: 1.125rem 3rem 1.125rem 1.25rem !important;
	cursor: pointer;
	user-select: none;
}

#site .vc_toggle.vc_toggle_default .vc_toggle_title h3,
#site .vc_toggle.vc_toggle_default .vc_toggle_title h4 {
	display: block !important;
	font-size: clamp(1rem, 2vw, 1.125rem) !important;
	font-weight: 600 !important;
	text-transform: none !important;
	color: var(--adcr-navy) !important;
	margin: 0 !important;
	line-height: 1.45 !important;
	letter-spacing: -0.01em;
}

#site .vc_toggle.vc_toggle_default .vc_toggle_title:hover h3,
#site .vc_toggle.vc_toggle_default .vc_toggle_title:hover h4,
#site .vc_toggle.vc_toggle_default.vc_toggle_active .vc_toggle_title h3,
#site .vc_toggle.vc_toggle_default.vc_toggle_active .vc_toggle_title h4 {
	color: var(--adcr-primary-dark) !important;
}

#site .vc_toggle.vc_toggle_default .vc_toggle_content {
	display: none !important;
	width: 100% !important;
	max-width: 100% !important;
	margin: 0 !important;
	padding: 0 1.25rem 1.125rem !important;
	border-top: 1px solid rgba(58, 65, 111, 0.06);
}

#site .vc_toggle.vc_toggle_default.vc_toggle_active > .vc_toggle_content {
	display: block !important;
}

#site .vc_toggle.vc_toggle_default .vc_toggle_content p {
	color: var(--adcr-text);
	font-size: 0.9375rem;
	line-height: 1.65;
	margin: 0.75rem 0 0;
}

#site .vc_toggle.vc_toggle_default .vc_toggle_icon {
	display: block !important;
	position: absolute !important;
	right: 1.25rem !important;
	left: auto !important;
	top: 50% !important;
	transform: translateY(-50%) !important;
	width: 1rem;
	height: 1rem;
}

#site .vc_toggle.vc_toggle_default .vc_toggle_icon::before,
#site .vc_toggle.vc_toggle_default .vc_toggle_icon::after {
	border: none !important;
	background: var(--adcr-muted) !important;
	transition: background 0.2s ease;
}

#site .vc_toggle.vc_toggle_default .vc_toggle_icon::before {
	width: 2px !important;
	height: 14px !important;
	left: 50% !important;
	top: 50% !important;
	transform: translate(-50%, -50%) !important;
}

#site .vc_toggle.vc_toggle_default .vc_toggle_icon::after {
	width: 14px !important;
	height: 2px !important;
	left: 50% !important;
	top: 50% !important;
	transform: translate(-50%, -50%) !important;
}

#site .vc_toggle.vc_toggle_default.vc_toggle_active .vc_toggle_icon {
	transform: translateY(-50%) !important;
}

#site .vc_toggle.vc_toggle_default.vc_toggle_active .vc_toggle_icon::before {
	visibility: hidden !important;
	opacity: 0;
}

#site .vc_toggle.vc_toggle_default.vc_toggle_active .vc_toggle_icon::after,
#site .vc_toggle.vc_toggle_default .vc_toggle_title:hover .vc_toggle_icon::before,
#site .vc_toggle.vc_toggle_default .vc_toggle_title:hover .vc_toggle_icon::after {
	background: var(--adcr-primary-dark) !important;
}

#site #faq .wpb_wrapper,
#site .wpb_row.shadow:has(.vc_toggle) .wpb_wrapper {
	padding-inline: clamp(1rem, 4vw, 2rem);
	max-width: 820px;
	margin-inline: auto;
}

@media (min-width: 769px) {
	#site .vc_toggle.vc_toggle_default {
		display: block !important;
	}

	#site .vc_toggle.vc_toggle_default .vc_toggle_content {
		width: 100% !important;
		padding: 0 1.25rem 1.25rem !important;
	}
}

@media (max-width: 767px) {
	body:not(.home) .content .alignleft,
	body:not(.home) .content .alignright {
		float: none !important;
		display: block;
		margin-inline: auto;
	}
}

@media (max-width: 767px) {
	.site-content .content-header {
		padding-top: 0 !important;
	}

	.site-content .content-header .content-header-inner {
		padding-inline: 1rem !important;
	}

	.site-content .breadcrumbs .breadcrumbs-inner > span {
		font-size: 0.6875rem !important;
	}

	.blog-grid .content-inner[data-grid-normal] .post {
		flex: 0 0 100% !important;
		max-width: 100% !important;
	}
}

/* ============================================================
   MOTION SYSTEM v3.1 — dinámico, accesible, sitio completo
   ============================================================ */

/* Contraste reforzado en meta y migas */
.site-content .breadcrumbs a {
	color: #525f72 !important;
}

.single-post .post-author-meta .post-date,
.single-post .post-author-meta .post-read,
.blog-grid .post-excerpt,
.blog-grid .post-meta .post-author {
	color: #525f72 !important;
}

/* Nav — subrayado animado */
#site-header .navigator .menu-primary > li > a,
#site-header-sticky .navigator .menu-primary > li > a {
	position: relative;
}

#site-header .navigator .menu-primary > li > a::before,
#site-header-sticky .navigator .menu-primary > li > a::before {
	content: "";
	position: absolute;
	left: 50%;
	bottom: 0.35rem;
	width: 0;
	height: 2px;
	background: var(--adcr-primary);
	border-radius: 2px;
	transition: width var(--adcr-transition), left var(--adcr-transition);
	pointer-events: none;
}

#site-header .navigator .menu-primary > li:hover > a::before,
#site-header .navigator .menu-primary > li.current-menu-item > a::before,
#site-header-sticky .navigator .menu-primary > li:hover > a::before,
#site-header-sticky .navigator .menu-primary > li.current-menu-item > a::before {
	left: 0;
	width: 100%;
}

/* Header sombra al scroll */
#site-header.adcr-header-scrolled {
	box-shadow: 0 4px 20px rgba(58, 65, 111, 0.1);
}

/* Botón volver arriba — entrada suave */
.go-to-top {
	opacity: 0;
	transform: translateY(16px);
	transition: opacity 0.35s ease, transform 0.35s ease;
	pointer-events: none;
}

.go-to-top.active {
	opacity: 1;
	transform: translateY(0);
	pointer-events: auto;
}

.go-to-top button:hover::before,
.go-to-top a:hover::before {
	transform: rotate(-180deg) translateY(-3px);
	box-shadow: var(--adcr-shadow-hover);
}

/* Imágenes — zoom suave en tarjetas */
.blog-grid .post-image img,
.projects-grid .project-image img,
#site .iconbox .box-image img {
	transition: transform var(--adcr-transition-slow);
}

.blog-grid .post-inner:hover .post-image img,
.projects-grid .project-inner:hover .project-image img,
#site .iconbox:hover .box-image img {
	transform: scale(1.04);
}

/* Categorías — pulso sutil al hover */
.site-content .content-header .post-categories a,
.blog-grid .post-categories a {
	transition: transform var(--adcr-transition), background var(--adcr-transition), color var(--adcr-transition), box-shadow var(--adcr-transition);
}

.site-content .content-header .post-categories a:hover,
.blog-grid .post-categories a:hover {
	transform: translateY(-1px);
	box-shadow: 0 4px 12px rgba(254, 100, 0, 0.2);
}

/* Más entradas / Leer más — deslizamiento */
.single-post .post-author-meta .post-name .author-more-posts,
.blog-readmore,
.blog-grid .post-readmore span {
	transition: transform var(--adcr-transition), background var(--adcr-transition), color var(--adcr-transition), box-shadow var(--adcr-transition);
}

.single-post .post-author-meta .post-name .author-more-posts:hover,
.blog-readmore:hover {
	transform: translateY(-2px);
	box-shadow: 0 6px 16px rgba(254, 100, 0, 0.22);
}

/* Navegación lateral entre entradas */
.navigation.post-navigation .nav-links li a {
	transition: opacity var(--adcr-transition), color var(--adcr-transition);
}

.navigation.post-navigation .nav-links li a:hover {
	opacity: 1;
	color: var(--adcr-primary-dark) !important;
}

/* Redes sociales footer */
.site-footer .social-icons a,
.footer-copyright .social-icons a {
	transition: transform var(--adcr-transition), background var(--adcr-transition), color var(--adcr-transition);
}

.site-footer .social-icons a:hover,
.footer-copyright .social-icons a:hover {
	transform: translateY(-3px) scale(1.06);
}

/* Formularios — feedback visual */
input:focus-visible,
textarea:focus-visible,
select:focus-visible,
.wpcf7-form-control:focus-visible {
	transform: translateY(-1px);
}

/* Hero home — entrada inicial (solo transform, sin pantalla en blanco) */
@media (prefers-reduced-motion: no-preference) {
	body.home .adcr-hero,
	body.home .wpb-content-wrapper > .gradient3:first-child,
	body.home .wpb-content-wrapper > .wpb_row:first-child {
		animation: adcr-hero-in 0.7s ease both;
	}
}

@keyframes adcr-hero-in {
	from {
		opacity: 0.001;
	}
	to {
		opacity: 1;
	}
}

/* Scroll reveal — solo opacidad en filas (sin translateX que rompe layout) */
@media (prefers-reduced-motion: no-preference) {
	html.adcr-motion .adcr-reveal {
		opacity: 1;
		transform: none;
	}

	html.adcr-motion.adcr-motion-ready .adcr-reveal:not(.adcr-in-view) {
		opacity: 0;
		transform: none;
		transition: opacity var(--adcr-transition-slow) cubic-bezier(0.22, 1, 0.36, 1);
		transition-delay: var(--adcr-delay, 0ms);
	}

	html.adcr-motion.adcr-motion-ready .adcr-reveal.adcr-in-view {
		opacity: 1;
		transform: none;
	}

	/* Elementos internos: slide vertical suave */
	html.adcr-motion.adcr-motion-ready .blog-grid .post.adcr-reveal:not(.adcr-in-view),
	html.adcr-motion.adcr-motion-ready .footer-widgets .widget.adcr-reveal:not(.adcr-in-view),
	html.adcr-motion.adcr-motion-ready .single-post .main-content-inner .content > .adcr-reveal:not(.adcr-in-view) {
		transform: translateY(20px);
		transition:
			opacity var(--adcr-transition-slow) cubic-bezier(0.22, 1, 0.36, 1),
			transform var(--adcr-transition-slow) cubic-bezier(0.22, 1, 0.36, 1);
	}

	html.adcr-motion.adcr-motion-ready .blog-grid .post.adcr-reveal.adcr-in-view,
	html.adcr-motion.adcr-motion-ready .footer-widgets .widget.adcr-reveal.adcr-in-view,
	html.adcr-motion.adcr-motion-ready .single-post .main-content-inner .content > .adcr-reveal.adcr-in-view {
		transform: translateY(0);
	}
}

@media (prefers-reduced-motion: reduce) {
	*,
	*::before,
	*::after {
		animation-duration: 0.01ms !important;
		animation-iteration-count: 1 !important;
		transition-duration: 0.01ms !important;
		scroll-behavior: auto !important;
	}

	html.adcr-motion .adcr-reveal {
		opacity: 1;
		transform: none;
	}
}

