/* ==========================================================================
   Presupuestos para pintores — rediseño moderno
   Capa de estilos sobre Hostinger AI theme + Elementor (página de inicio).
   ========================================================================== */

:root {
	--pr-bg: #faf7f2;
	--pr-surface: #ffffff;
	--pr-surface-alt: #f3eee6;
	--pr-ink: #14181f;
	--pr-muted: #5b6470;
	--pr-line: #e8e2d8;
	--pr-accent: #ff5b2e;
	--pr-accent-dark: #e2461b;
	--pr-accent-soft: #ffe6dc;
	--pr-deep: #0f2f3a;
	--pr-radius: 20px;
	--pr-shadow: 0 1px 2px rgba(20, 24, 31, .04), 0 8px 24px -8px rgba(20, 24, 31, .10);
	--pr-shadow-hover: 0 2px 4px rgba(20, 24, 31, .05), 0 20px 40px -12px rgba(20, 24, 31, .18);
	--pr-font: "Plus Jakarta Sans", system-ui, -apple-system, "Segoe UI", sans-serif;
}

/* ---------- Paleta global de Elementor ---------- */
body.elementor-kit-5 {
	--e-global-color-b5aeb33: var(--pr-bg);
	--e-global-color-a7b8c9d: var(--pr-bg);
	--e-global-color-58be983: #ffffff;
	--e-global-color-c58817e: #0b1418;
	--e-global-color-b1c2d3e: var(--pr-ink);
	--e-global-color-09cc561: var(--pr-ink);
	--e-global-color-5420d44: var(--pr-deep);
	--e-global-color-a495fd4: var(--pr-line);
	--e-global-color-e3ded6a: var(--pr-surface-alt);
	--e-global-color-c4cbb8a: var(--pr-accent);
	--e-global-color-dff8941: var(--pr-accent);
	--e-global-color-8a9e7e1: var(--pr-accent);
	--e-global-typography-primary-font-family: "Plus Jakarta Sans";
	--e-global-typography-secondary-font-family: "Plus Jakarta Sans";
	--e-global-typography-text-font-family: "Plus Jakarta Sans";
	--wp--preset--color--color-1: var(--pr-bg);
	--wp--preset--color--page-background: var(--pr-bg);
	--wp--preset--color--light: #ffffff;
	--wp--preset--color--color-3: var(--pr-accent);
	background: var(--pr-bg);
	color: var(--pr-ink);
	-webkit-font-smoothing: antialiased;
}

/* ---------- Tipografía ---------- */
body.elementor-kit-5,
body.elementor-kit-5 h1, body.elementor-kit-5 h2, body.elementor-kit-5 h3,
body.elementor-kit-5 h4, body.elementor-kit-5 h5, body.elementor-kit-5 h6,
body.elementor-kit-5 p, body.elementor-kit-5 a, body.elementor-kit-5 li,
body.elementor-kit-5 input, body.elementor-kit-5 button,
body.elementor-kit-5 .elementor-heading-title,
body.elementor-kit-5 .elementor-widget-text-editor,
body.elementor-kit-5 .elementor-button {
	font-family: var(--pr-font) !important;
}

.elementor-10 h1.elementor-heading-title {
	font-size: clamp(2.5rem, 6vw, 4.5rem) !important;
	font-weight: 800 !important;
	line-height: 1.04 !important;
	letter-spacing: -0.035em;
}

.elementor-10 h2.elementor-heading-title {
	font-size: clamp(2rem, 4vw, 3rem) !important;
	font-weight: 800 !important;
	line-height: 1.1 !important;
	letter-spacing: -0.03em;
}

.elementor-10 h3.elementor-heading-title,
.elementor-10 h4.elementor-heading-title {
	font-weight: 700 !important;
	letter-spacing: -0.015em;
}

.elementor-10 .elementor-widget-text-editor {
	font-size: 1.0625rem;
	line-height: 1.65;
}

/* Etiquetas ("BENEFICIOS", "CALCULADORA"…) como pastillas */
.elementor-10 [data-id="hai00011"] .elementor-heading-title,
.elementor-10 [data-id="hai00032"] .elementor-heading-title,
.elementor-10 [data-id="hai00042"] .elementor-heading-title,
.elementor-10 [data-id="hai00068"] .elementor-heading-title {
	display: inline-block;
	padding: 6px 14px;
	border-radius: 999px;
	background: var(--pr-accent-soft);
	color: var(--pr-accent-dark) !important;
	font-size: 12px !important;
	font-weight: 700 !important;
	letter-spacing: .12em !important;
	text-transform: uppercase;
}

/* Textos secundarios en gris */
.elementor-10 [data-id="hai00013"],
.elementor-10 [data-id="hai00034"],
.elementor-10 .hostinger-ai-card .elementor-widget-text-editor,
.elementor-10 [data-id="hai00048"], .elementor-10 [data-id="hai00052"],
.elementor-10 [data-id="hai00056"], .elementor-10 [data-id="hai00060"] {
	color: var(--pr-muted) !important;
}

/* ---------- Encabezado (estaba oculto) ---------- */
body .wp-site-blocks > header.site-header {
	display: block !important;
	position: sticky;
	top: 0;
	z-index: 500;
}

body .wp-site-blocks > header.site-header .hostinger-ai-menu {
	background: rgba(250, 247, 242, .82) !important;
	-webkit-backdrop-filter: saturate(180%) blur(14px);
	backdrop-filter: saturate(180%) blur(14px);
	border-bottom: 1px solid rgba(20, 24, 31, .06);
	box-shadow: none;
}

body .wp-site-blocks > header.site-header .hostinger-ai-menu-wrapper {
	padding-top: 14px !important;
	padding-bottom: 14px !important;
	align-items: center;
}

.hostinger-ai-menu .wp-block-site-logo img {
	height: 38px !important;
	width: auto !important;
	max-height: none !important;
	max-width: 220px !important;
}

.hostinger-ai-menu .wp-block-navigation {
	justify-content: flex-end;
	font-weight: 600;
	font-size: 15px;
}

.hostinger-ai-menu .wp-block-navigation a {
	color: var(--pr-ink) !important;
	text-decoration: none;
	transition: color .2s;
}

.hostinger-ai-menu .wp-block-navigation a:hover {
	color: var(--pr-accent) !important;
}

/* ---------- Hero ---------- */
.elementor-10 .elementor-element-hai00010 {
	--overlay-opacity: 1 !important;
	min-height: min(88vh, 820px) !important;
}

.elementor-10 .elementor-element-hai00010::before {
	background: linear-gradient(115deg, rgba(11, 20, 24, .92) 0%, rgba(11, 20, 24, .78) 45%, rgba(15, 47, 58, .55) 100%) !important;
	opacity: 1 !important;
}

.elementor-10 [data-id="hai00001"] .elementor-heading-title {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 8px 16px;
	border: 1px solid rgba(255, 255, 255, .22);
	border-radius: 999px;
	background: rgba(255, 255, 255, .08);
	-webkit-backdrop-filter: blur(6px);
	backdrop-filter: blur(6px);
	font-size: 12px !important;
	font-weight: 700 !important;
	letter-spacing: .14em !important;
}

.elementor-10 [data-id="hai00001"] .elementor-heading-title::before {
	content: "";
	width: 8px;
	height: 8px;
	border-radius: 50%;
	background: var(--pr-accent);
	box-shadow: 0 0 0 4px rgba(255, 91, 46, .25);
}

.elementor-10 [data-id="hai00002"] {
	max-width: 900px;
}

.elementor-10 [data-id="hai00002"] strong {
	font-weight: 800;
	color: var(--pr-accent);
	background: linear-gradient(transparent 82%, rgba(255, 91, 46, .3) 82%);
}

.elementor-10 [data-id="hai00003"] {
	max-width: 620px;
	font-size: 1.1875rem !important;
	color: rgba(255, 255, 255, .78) !important;
}

/* ---------- Botones ---------- */
.elementor-10 .elementor-button {
	padding: 16px 28px !important;
	border-radius: 999px !important;
	font-size: 16px !important;
	font-weight: 700 !important;
	letter-spacing: -0.005em;
	transition: transform .2s ease, box-shadow .2s ease, background-color .2s ease, color .2s ease;
}

.elementor-10 .elementor-button:hover {
	transform: translateY(-2px);
}

/* Botones principales: naranja */
.elementor-10 [data-id="hai00005"] .elementor-button,
.elementor-10 [data-id="hai00063"] .elementor-button,
.elementor-10 [data-id="hai00079"] .elementor-button {
	background: var(--pr-accent) !important;
	border-color: var(--pr-accent) !important;
	color: #fff !important;
	box-shadow: 0 10px 24px -8px rgba(255, 91, 46, .6);
}

.elementor-10 [data-id="hai00005"] .elementor-button:hover,
.elementor-10 [data-id="hai00063"] .elementor-button:hover,
.elementor-10 [data-id="hai00079"] .elementor-button:hover {
	background: var(--pr-accent-dark) !important;
	box-shadow: 0 14px 30px -8px rgba(255, 91, 46, .7);
}

.elementor-10 [data-id="hai00005"] .elementor-button-text::after,
.elementor-10 [data-id="hai00063"] .elementor-button-text::after,
.elementor-10 [data-id="hai00079"] .elementor-button-text::after {
	content: " →";
}

/* Botón secundario del hero: vidrio */
.elementor-10 [data-id="hai00006"] .elementor-button {
	background: rgba(255, 255, 255, .08) !important;
	border: 1px solid rgba(255, 255, 255, .35) !important;
	color: #fff !important;
}

.elementor-10 [data-id="hai00006"] .elementor-button:hover {
	background: rgba(255, 255, 255, .18) !important;
}

/* ---------- Secciones ---------- */
.elementor-10 .elementor-element-hai00031,
.elementor-10 .elementor-element-hai00041,
.elementor-10 .elementor-element-hai00067 {
	--padding-top: clamp(4rem, 9vw, 7rem) !important;
	--padding-bottom: clamp(4rem, 9vw, 7rem) !important;
}

.elementor-10 .elementor-element-hai00041 {
	background: var(--pr-surface-alt) !important;
}

/* ---------- Tarjetas de beneficios ---------- */
.elementor-10 .hostinger-ai-card {
	background: var(--pr-surface) !important;
	border: 1px solid var(--pr-line) !important;
	border-radius: var(--pr-radius) !important;
	box-shadow: var(--pr-shadow) !important;
	padding: 32px !important;
	gap: 18px !important;
	justify-content: flex-start !important;
	transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}

.elementor-10 .hostinger-ai-card:hover {
	transform: translateY(-4px);
	box-shadow: var(--pr-shadow-hover) !important;
	border-color: rgba(255, 91, 46, .35) !important;
}

/* Igualar títulos de las tres tarjetas */
.elementor-10 .hostinger-ai-card .elementor-heading-title {
	font-size: 1.375rem !important;
	font-weight: 700 !important;
	line-height: 1.25 !important;
	color: var(--pr-ink) !important;
}

/* Íconos en círculo naranja */
.elementor-10 .hostinger-ai-card .elementor-widget-icon .elementor-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 56px;
	height: 56px;
	border-radius: 16px;
	background: var(--pr-accent-soft);
	font-size: 24px !important;
}

.elementor-10 .hostinger-ai-card .elementor-widget-icon svg {
	width: 24px !important;
	height: 24px !important;
	fill: var(--pr-accent-dark) !important;
}

.elementor-10 .hostinger-ai-card .elementor-widget-icon {
	margin-bottom: 0 !important;
}

/* La primera tarjeta no tiene ícono: agregamos uno (regla) */
.elementor-10 [data-id="hai00016"]::before {
	content: "";
	display: block;
	margin-bottom: 18px;
	width: 56px;
	height: 56px;
	border-radius: 16px;
	background:
		url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23e2461b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21.3 15.3a2.4 2.4 0 0 1 0 3.4l-2.6 2.6a2.4 2.4 0 0 1-3.4 0L2.7 8.7a2.41 2.41 0 0 1 0-3.4l2.6-2.6a2.41 2.41 0 0 1 3.4 0Z'/%3E%3Cpath d='m14.5 12.5 2-2'/%3E%3Cpath d='m11.5 9.5 2-2'/%3E%3Cpath d='m8.5 6.5 2-2'/%3E%3Cpath d='m17.5 15.5 2-2'/%3E%3C/svg%3E") center / 24px no-repeat,
		var(--pr-accent-soft);
}

/* ---------- Calculadora ---------- */
.elementor-10 .elementor-element-hai00038 {
	background: var(--pr-deep) !important;
	border-radius: 24px !important;
	padding: 36px !important;
	box-shadow: 0 30px 60px -20px rgba(15, 47, 58, .45);
	gap: 20px !important;
	align-items: flex-start !important;
}

.elementor-10 .elementor-element-hai00038 .elementor-widget-text-editor {
	color: rgba(255, 255, 255, .88) !important;
	font-size: 1.25rem;
	font-weight: 600;
	line-height: 1.45;
}

.elementor-10 .elementor-element-hai00036 .elementor-icon {
	background: var(--pr-accent) !important;
	border-color: var(--pr-accent) !important;
	border-radius: 14px !important;
}

.elementor-10 .elementor-element-hai00036 .elementor-icon svg {
	fill: #fff !important;
}

/* ---------- Pasos 01–04 ---------- */
.elementor-10 .elementor-element-hai00062 {
	counter-reset: none;
	gap: 20px !important;
}

.elementor-10 .elementor-element-hai00049,
.elementor-10 .elementor-element-hai00053,
.elementor-10 .elementor-element-hai00057,
.elementor-10 .elementor-element-hai00061 {
	position: relative;
	background: var(--pr-surface) !important;
	border: 1px solid var(--pr-line);
	border-radius: var(--pr-radius);
	padding: 28px !important;
	box-shadow: var(--pr-shadow);
	transition: transform .25s ease, box-shadow .25s ease;
	flex: 1 1 0 !important;
	min-width: 200px;
}

.elementor-10 .elementor-element-hai00049:hover,
.elementor-10 .elementor-element-hai00053:hover,
.elementor-10 .elementor-element-hai00057:hover,
.elementor-10 .elementor-element-hai00061:hover {
	transform: translateY(-4px);
	box-shadow: var(--pr-shadow-hover);
}

.elementor-10 [data-id="hai00046"] .elementor-heading-title,
.elementor-10 [data-id="hai00050"] .elementor-heading-title,
.elementor-10 [data-id="hai00054"] .elementor-heading-title,
.elementor-10 [data-id="hai00058"] .elementor-heading-title {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 52px;
	height: 52px;
	border-radius: 14px;
	background: var(--pr-accent);
	color: #fff !important;
	font-size: 1.125rem !important;
	font-weight: 800 !important;
	box-shadow: 0 8px 18px -6px rgba(255, 91, 46, .55);
}

.elementor-10 [data-id="hai00047"] .elementor-heading-title,
.elementor-10 [data-id="hai00051"] .elementor-heading-title,
.elementor-10 [data-id="hai00055"] .elementor-heading-title,
.elementor-10 [data-id="hai00059"] .elementor-heading-title {
	font-size: 1.25rem !important;
	font-weight: 700 !important;
}

/* ---------- "Base técnica": notas internas, ocultas al público ---------- */
.elementor-10 .elementor-element-hai00076 {
	display: none !important;
}

/* ---------- CTA final ---------- */
.elementor-10 .elementor-element-hai00083 {
	background:
		radial-gradient(ellipse at 85% 0%, rgba(255, 91, 46, .35) 0%, transparent 55%),
		radial-gradient(ellipse at 0% 100%, rgba(255, 255, 255, .06) 0%, transparent 50%),
		var(--pr-deep) !important;
	--padding-top: clamp(4.5rem, 9vw, 7rem) !important;
	--padding-bottom: clamp(4.5rem, 9vw, 7rem) !important;
}

.elementor-10 [data-id="hai00078"] {
	color: rgba(255, 255, 255, .75) !important;
}

/* ---------- Pie de página ---------- */
footer.site-footer > .wp-block-group {
	background: #0b1418 !important;
}

footer.site-footer h3 {
	font-size: 1.25rem !important;
	font-weight: 700 !important;
	letter-spacing: -0.01em;
}

footer.site-footer a {
	text-decoration: none !important;
	opacity: .8;
	transition: opacity .2s, color .2s;
}

footer.site-footer a:hover {
	opacity: 1;
	color: var(--pr-accent) !important;
}

footer.site-footer .wp-block-social-links .wp-social-link {
	transition: transform .2s;
}

footer.site-footer .wp-block-social-links .wp-social-link:hover {
	transform: translateY(-2px);
}

footer.site-footer .hostinger-reach-block-form-field input[type="email"] {
	background: rgba(255, 255, 255, .06) !important;
	border: 1px solid rgba(255, 255, 255, .18) !important;
	border-radius: 12px !important;
	color: #fff !important;
	padding: 12px 14px !important;
}

footer.site-footer .hostinger-reach-block-form-field input[type="email"]:focus {
	outline: none;
	border-color: var(--pr-accent) !important;
	box-shadow: 0 0 0 3px rgba(255, 91, 46, .25);
}

footer.site-footer .hostinger-reach-block-submit {
	background: var(--pr-accent) !important;
	border: 0 !important;
	border-radius: 999px !important;
	font-weight: 700 !important;
	color: #fff !important;
	transition: background-color .2s;
}

footer.site-footer .hostinger-reach-block-submit:hover {
	background: var(--pr-accent-dark) !important;
}

footer.site-footer .wp-block-group.alignwide:last-child {
	border-top: 1px solid rgba(255, 255, 255, .08);
	padding-top: 24px !important;
	opacity: .65;
}

/* ---------- Accesibilidad / móvil ---------- */
.elementor-10 a:focus-visible,
.elementor-10 .elementor-button:focus-visible {
	outline: 3px solid var(--pr-accent);
	outline-offset: 3px;
}

@media (max-width: 767px) {
	.elementor-10 .hostinger-ai-card,
	.elementor-10 .elementor-element-hai00038 {
		padding: 24px !important;
	}

	.elementor-10 .elementor-button {
		padding: 14px 22px !important;
	}
}

@media (prefers-reduced-motion: reduce) {
	.elementor-10 *,
	footer.site-footer * {
		transition: none !important;
	}
}
