/*
Theme Name: Hausum Optimized
Theme URI: https://hausum.com
Description: Custom high-performance theme for Hausum, optimized for SEO, speed, and clean typography. Built with CSS variables and modern layout systems.
Version: 1.0.0
Author: nData Systems
Author URI: https://ndatasystems.com
Text Domain: hausum-theme
*/

@font-face{font-family:'Aptos';src:url('./fonts/aptos-regular.woff2') format('woff2'),url('./fonts/aptos-regular.ttf') format('truetype');font-weight:400;font-display:swap}
@font-face{font-family:'Aptos';src:url('./fonts/aptos-bold.woff2') format('woff2'),url('./fonts/aptos-bold.ttf') format('truetype');font-weight:700;font-display:swap}
@font-face{font-family:'Aptos Display';src:url('./fonts/aptos-display-regular.woff2') format('woff2'),url('./fonts/aptos-display-regular.ttf') format('truetype');font-weight:400;font-display:swap}
@font-face{font-family:'Aptos Display';src:url('./fonts/aptos-display-bold.woff2') format('woff2'),url('./fonts/aptos-display-bold.ttf') format('truetype');font-weight:700;font-display:swap}

/* --- 1. DESIGN SYSTEM VARIABLES --- */
:root {
	--font-primary: 'Inter', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
	--font-title: 'Outfit', var(--font-primary);

	/* Color Palette */
	--color-primary: #003e73;
	--color-primary-rgb: 0, 62, 115;
	--color-secondary: #62b3e6;
	--color-secondary-dark: #1e6e9b;
	--color-accent: #ffcc00;
	--color-accent-hover: #e6b800;
	--color-text: #2c3e50;
	--color-text-light: #607d8b;
	--color-bg-light: #f4f9fc;
	--color-bg-white: #ffffff;
	--color-border: #e2e8f0;

	/* Autoptimize CPT compatibility variables */
	--azul: #2B8BC4;
	--azul-dark: #003e73;
	--azul-light: #f4f9fc;
	--azul-mid: #62b3e6;
	--blanco: #ffffff;
	--borde: #e2e8f0;
	--negro: #111111;
	--gris: #607d8b;
	--bg: #f4f9fc;

	/* Layout & Spacing */
	--container-width: 1200px;
	--container-narrow: 800px;
	--wrap: 1200px;
	--spacing-xs: 0.5rem;
	--spacing-sm: 1rem;
	--spacing-md: 2rem;
	--spacing-lg: 4rem;
	--spacing-xl: 8rem;

	/* Styling details */
	--radius-sm: 4px;
	--radius-md: 12px;
	--radius-lg: 24px;
	--shadow-sm: 0 1px 3px rgba(0,0,0,0.1);
	--shadow-md: 0 4px 6px -1px rgba(0,0,0,0.1), 0 2px 4px -1px rgba(0,0,0,0.06);
	--shadow-lg: 0 20px 25px -5px rgba(0,0,0,0.1), 0 10px 10px -5px rgba(0,0,0,0.04);
	--transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

/* --- 2. GLOBAL RESET & BASE --- */
*, *::before, *::after {
	box-sizing: border-box;
	margin: 0;
	padding: 0;
}

html {
	font-size: 16px;
	scroll-behavior: smooth;
}

body {
	font-family: var(--font-primary);
	color: var(--color-text);
	background-color: var(--color-bg-white);
	line-height: 1.6;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

img {
	max-width: 100%;
	height: auto;
	display: block;
}

a {
	color: var(--color-secondary-dark);
	text-decoration: none;
	transition: var(--transition);
}

a:hover {
	color: var(--color-primary);
}

h1, h2, h3, h4, h5, h6 {
	font-family: var(--font-title);
	color: var(--color-primary);
	line-height: 1.25;
	margin-bottom: 1rem;
	font-weight: 700;
}

h1 { font-size: clamp(2rem, 5vw, 3.25rem); }
h2 { font-size: clamp(1.5rem, 4vw, 2.25rem); }
h3 { font-size: clamp(1.25rem, 3vw, 1.75rem); }

p {
	margin-bottom: 1.5rem;
}

/* --- 3. LAYOUT COMPONENTS --- */
.container {
	max-width: var(--container-width);
	margin-left: auto;
	margin-right: auto;
	padding-left: 1.5rem;
	padding-right: 1.5rem;
	width: 100%;
}

.container-narrow {
	max-width: var(--container-narrow);
	margin-left: auto;
	margin-right: auto;
	padding-left: 1.5rem;
	padding-right: 1.5rem;
	width: 100%;
}

.grid {
	display: grid;
	gap: var(--spacing-md);
}

@media(min-width: 768px) {
	.grid-2 { grid-template-columns: repeat(2, 1fr); }
	.grid-3 { grid-template-columns: repeat(3, 1fr); }
	.grid-4 { grid-template-columns: repeat(4, 1fr); }
}

/* --- 4. BUTTONS & UI ELEMENTS --- */
.btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 0.85rem 2rem;
	font-family: var(--font-title);
	font-size: 1.05rem;
	font-weight: 600;
	border-radius: var(--radius-md);
	border: none;
	cursor: pointer;
	transition: var(--transition);
	text-align: center;
}

.btn-primary {
	background-color: var(--color-accent);
	color: var(--color-primary);
}

.btn-primary:hover {
	background-color: var(--color-accent-hover);
	transform: translateY(-2px);
	box-shadow: var(--shadow-md);
}

.btn-secondary {
	background-color: var(--color-primary);
	color: var(--color-bg-white);
}

.btn-secondary:hover {
	background-color: rgba(var(--color-primary-rgb), 0.9);
	transform: translateY(-2px);
	box-shadow: var(--shadow-md);
}

.btn-white {
	background-color: var(--color-bg-white);
	color: var(--color-primary);
}

.btn-white:hover {
	background-color: var(--color-bg-light);
	transform: translateY(-2px);
	box-shadow: var(--shadow-md);
}

/* --- 5. COMPONENT-SPECIFIC STYLES (HAUSUM CUSTOM DESIGN) --- */

:root {
	--navy-deep: #0A1E3C;
	--border: rgba(255,255,255,0.08);
	--wrap: 1200px;
	--azure: #3BA0FF;
	--azure-bright: #2E9BFF;
	--muted: #7C90AE;
}

/* ===== promo bar ===== */
.promo {
	background: linear-gradient(180deg, #3BA0FF 0%, #2E8DEF 100%);
	color: #fff;
	text-align: center;
	font-weight: 700;
	font-size: 14px;
	padding: 11px 24px;
	margin: 0 !important;
}

/* ===== dynamic header & navigation ===== */
.nav {
	margin: 0 !important;
	position: sticky;
	top: 0;
	z-index: 150;
	background: rgba(10, 30, 60, 0.9);
	backdrop-filter: blur(10px);
	border-bottom: 1px solid var(--border);
	font-family: 'Aptos', sans-serif;
}
.nav-wrap {
	max-width: var(--wrap);
	margin: 0 auto;
	padding: 0 48px;
	height: 74px;
	display: flex;
	align-items: center;
	justify-content: space-between;
}
.logo {
	font-family: 'Aptos Display', 'Outfit', sans-serif;
	font-weight: 800;
	font-size: 24px;
	letter-spacing: .3em;
	color: #fff;
	padding-left: .3em;
	text-decoration: none;
}
.logo:hover {
	color: #fff;
}
.nav-links {
	display: flex;
}
.nav-links ul {
	display: flex;
	gap: 34px;
	list-style: none;
	margin: 0;
	padding: 0;
}
.nav-links ul li {
	margin: 0;
	padding: 0;
}
.nav-links ul li a {
	color: #CBDAF0;
	text-decoration: none;
	font-size: 15.5px;
	font-weight: 700;
	transition: color .15s;
}
.nav-links ul li a:hover {
	color: #fff;
}
.nav-right {
	display: flex;
	align-items: center;
	gap: 16px;
}
.lang-dropdown {
	position: relative;
	display: inline-block;
}
.lang-btn {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 8px 12px;
	border: 1px solid var(--border);
	border-radius: 11px;
	background: rgba(255,255,255,.04);
	color: #EAF3FF;
	font-family: 'Aptos', sans-serif;
	font-weight: 700;
	font-size: 13.5px;
	cursor: pointer;
	transition: border-color .15s, background .15s;
}
.lang-btn:hover,
.lang-dropdown:hover .lang-btn {
	border-color: var(--border-azure);
	background: rgba(46,155,255,.08);
}
.lang-menu {
	display: none;
	position: absolute;
	top: calc(100% + 6px);
	right: 0;
	z-index: 200;
	min-width: 170px;
	background: #0A1E3C;
	border: 1px solid var(--border-azure);
	border-radius: 14px;
	padding: 6px;
	box-shadow: 0 14px 34px rgba(0,0,0,.5);
}
.lang-dropdown:hover .lang-menu,
.lang-dropdown:focus-within .lang-menu {
	display: flex;
	flex-direction: column;
	gap: 2px;
}
.lang-menu-item {
	display: block;
	color: #CBDAF0;
	text-decoration: none;
	font-size: 13.5px;
	font-weight: 600;
	padding: 9px 12px;
	border-radius: 8px;
	transition: background .15s, color .15s;
	white-space: nowrap;
}
.lang-menu-item:hover,
.lang-menu-item.active {
	background: rgba(46,155,255,.14);
	color: #fff;
}
.lang-menu-item.active {
	font-weight: 700;
}
.nav-cta {
	display: inline-flex;
	align-items: center;
	gap: 9px;
	background: linear-gradient(135deg, #2E9BFF, #4AABFF);
	color: #fff;
	text-decoration: none;
	font-weight: 700;
	font-size: 15px;
	padding: 12px 22px;
	border-radius: 12px;
	box-shadow: 0 10px 24px rgba(46, 155, 255, 0.35);
	transition: transform .16s;
}
.nav-cta:hover {
	transform: translateY(-1px);
	color: #fff;
}
.burger {
	display: none;
	flex: none;
	align-items: center;
	justify-content: center;
	width: 38px;
	height: 38px;
	background: transparent;
	border: 0;
	cursor: pointer;
	padding: 0;
}
.mobile-menu {
	display: none;
	background: rgba(10, 30, 60, 0.97);
	backdrop-filter: blur(10px);
	border-bottom: 1px solid var(--border);
}
.mobile-menu ul {
	display: flex;
	flex-direction: column;
	list-style: none;
	margin: 0;
	padding: 0;
}
.mobile-menu ul li a {
	display: block;
	color: #EAF3FF;
	font-weight: 700;
	font-size: 15.5px;
	text-decoration: none;
	padding: 16px 22px;
	border-top: 1px solid rgba(255, 255, 255, .08);
}
.nav.menu-open .mobile-menu {
	display: flex;
}

@media(max-width: 1024px) {
	.nav-wrap {
		padding: 0 24px;
	}
	.nav-links {
		display: none;
	}
	.burger {
		display: flex;
	}
}
@media(max-width: 680px) {
	.nav-wrap {
		padding: 0 16px;
		gap: 8px;
	}
	.logo {
		font-size: 17px;
		letter-spacing: .16em;
		padding-left: 0;
	}
	.nav-cta {
		padding: 9px 14px;
		font-size: 12.5px;
		gap: 6px;
		white-space: nowrap;
	}
	.nav-cta svg {
		width: 13px;
		height: 13px;
	}
}

/* ===== page hero (inner pages) ===== */
.page-hero {
	background: var(--navy-deep);
	padding: 64px 0 48px;
	border-bottom: 1px solid var(--border);
}
.page-hero .wrap {
	max-width: var(--wrap);
	margin: 0 auto;
	padding: 0 48px;
}
.page-hero .eyebrow {
	font-weight: 700;
	font-size: 13.5px;
	letter-spacing: .2em;
	color: var(--azure-bright);
	text-transform: uppercase;
	margin-bottom: 16px;
}
.page-hero .headline {
	font-family: 'Aptos Display', 'Outfit', sans-serif;
	font-weight: 700;
	font-size: clamp(2rem, 4.5vw, 3.25rem);
	line-height: 1.1;
	letter-spacing: -.02em;
	color: #fff;
	margin-bottom: 18px;
}
.page-hero .lede {
	font-size: 18px;
	line-height: 1.6;
	color: var(--muted);
	max-width: 720px;
	margin-bottom: 0;
}
@media(max-width: 768px) {
	.page-hero {
		padding: 44px 0 32px;
	}
	.page-hero .wrap {
		padding: 0 24px;
	}
	.page-hero .headline {
		font-size: 28px;
	}
	.page-hero .lede {
		font-size: 15.5px;
	}
}

/* ===== dynamic footer ===== */
.footer {
	background: var(--navy-deep);
	border-top: 1px solid var(--border);
}
.footer .wrap {
	max-width: var(--wrap);
	margin: 0 auto;
	padding: 56px 24px 44px;
}
.foot-top {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	gap: 40px;
	flex-wrap: wrap;
	padding-bottom: 32px;
	border-bottom: 1px solid var(--border);
}
.foot-brand .logo {
	display: inline-block;
	margin-bottom: 14px;
}
.foot-brand p {
	color: var(--muted);
	font-size: 15px;
	max-width: 360px;
	line-height: 1.5;
}
.foot-links {
	display: flex;
	gap: 60px;
	flex-wrap: wrap;
}
.foot-col h4 {
	color: #fff;
	font-size: 14px;
	font-weight: 700;
	letter-spacing: .04em;
	margin-bottom: 14px;
	text-transform: uppercase;
}
.foot-col a {
	display: block;
	color: var(--muted);
	text-decoration: none;
	font-size: 14.5px;
	margin-bottom: 10px;
	transition: color .15s;
}
.foot-col a:hover {
	color: #fff;
}
.foot-bottom {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 20px;
	flex-wrap: wrap;
	padding-top: 26px;
	color: #7C90AE;
	font-size: 13.5px;
}
.foot-provinces {
	margin-top: 22px;
	padding-top: 22px;
	border-top: 1px solid var(--border);
	font-size: 13px;
	line-height: 2.2;
	color: #93A8C6;
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
}
.foot-provinces b {
	flex: 0 0 100%;
	width: 100%;
	display: block;
	color: #fff;
	font-family: 'Aptos Display', 'Outfit', sans-serif;
	font-weight: 700;
	font-size: 14.5px;
	letter-spacing: .02em;
	margin-bottom: 10px;
}
.foot-provinces a {
	color: #7C90AE;
	text-decoration: none;
}
.foot-provinces a:hover {
	color: #fff;
	text-decoration: underline;
}
.foot-provinces .sep {
	margin: 0 7px;
	color: #3E5578;
}
@media(max-width: 680px) {
	.foot-provinces {
		font-size: 12.5px;
		line-height: 2;
	}
	.foot-provinces .sep {
		margin: 0 5px;
	}
}

/* ===== mobile sticky cta bar ===== */
.mobile-cta-bar {
	display: none;
	position: fixed;
	bottom: 0;
	left: 0;
	right: 0;
	z-index: 200;
	background: #fff;
	border-top: 1px solid #E3ECF8;
	align-items: center;
	gap: 12px;
	padding: 10px 16px;
	box-shadow: 0 -6px 20px rgba(10,30,60,.12);
}
.mobile-cta-bar .call,
.mobile-cta-bar .wa {
	flex: none;
	width: 44px;
	height: 44px;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	text-decoration: none;
}
.mobile-cta-bar .call {
	background: var(--navy-deep);
}
.mobile-cta-bar .call svg {
	width: 20px;
	height: 20px;
	stroke: #fff;
	fill: none;
	stroke-width: 2.2;
}
.mobile-cta-bar .wa {
	background: #25D366;
}
.mobile-cta-bar .wa svg {
	width: 22px;
	height: 22px;
}
.mobile-cta-bar .book {
	flex: 1;
	background: var(--navy-deep);
	color: #fff;
	text-align: center;
	padding: 13px;
	border-radius: 12px;
	font-weight: 700;
	font-size: 15px;
	text-decoration: none;
}
@media(max-width: 680px) {
	.mobile-cta-bar {
		display: flex;
	}
	body {
		padding-bottom: 72px;
	}
}

/* ===== map interaction overlay fixes ===== */
.es-map .labels,
.es-map .rlbl {
	pointer-events: none !important;
}

/* ===== 9. HM LANDING PAGES STYLES ===== */
.hm-breadcrumb {
	padding: 10px 40px;
	background: var(--blanco);
	border-bottom: 1px solid var(--borde);
	display: flex;
	gap: 5px;
	align-items: center;
}
.hm-breadcrumb a {
	color: inherit;
	text-decoration: none;
}
.bc-sep {
	color: var(--borde);
}
.bc-cur {
	color: var(--negro);
}
.hm-hero {
	background: linear-gradient(135deg, var(--azul) 0%, #1a6fa8 50%, var(--azul-dark) 100%);
	padding: 80px 40px 72px;
	position: relative;
	overflow: hidden;
}
.hm-hero-inner {
	max-width: 780px;
	position: relative;
	z-index: 1;
}
.hm-geo-tag {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	background: rgba(255,255,255,.15);
	color: rgba(255,255,255,.9);
	font-size: 12px;
	font-weight: 500;
	padding: 5px 13px;
	border-radius: 3px;
	margin-bottom: 20px;
	letter-spacing: .05em;
	text-transform: uppercase;
	border: 1px solid rgba(255,255,255,.2);
}
.hm-h1 {
	font-size: 46px;
	font-weight: 600;
	line-height: 1.08;
	color: #fff;
	margin-bottom: 14px;
	letter-spacing: -.01em;
	max-width: 680px;
}
.hm-h1 span {
	font-weight: 300;
}
.hm-hero-sub {
	font-size: 18px;
	color: rgba(255,255,255,.88);
	line-height: 1.6;
	margin-bottom: 32px;
	max-width: 560px;
	font-weight: 300;
}
.hm-btns {
	display: flex;
	gap: 12px;
	margin-bottom: 40px;
	flex-wrap: wrap;
}
.hm-btn-main {
	background: var(--azul-dark);
	color: #fff;
	font-size: 14px;
	font-weight: 500;
	padding: 13px 26px;
	border-radius: 4px;
	text-decoration: none;
	letter-spacing: .04em;
	display: inline-flex;
	align-items: center;
	gap: 10px;
	transition: background .15s;
}
.hm-btn-main:hover {
	background: #142440;
}
.hm-btn-ghost {
	background: 0 0;
	color: #fff;
	font-size: 14px;
	padding: 13px 26px;
	border-radius: 4px;
	text-decoration: none;
	border: 2px solid rgba(255,255,255,.4);
	transition: all .15s;
}
.hm-btn-ghost:hover {
	border-color: #fff;
	background: rgba(255,255,255,.1);
}
.hm-trust {
	display: flex;
	gap: 32px;
	flex-wrap: wrap;
	padding-top: 28px;
	border-top: 1px solid rgba(255,255,255,.2);
}
.hm-trust-val {
	font-size: 20px;
	font-weight: 600;
	color: #fff;
	margin-bottom: 2px;
}
.hm-trust-lbl {
	font-size: 12px;
	color: rgba(255,255,255,.7);
	font-weight: 300;
}
.hm-geo-banner {
	background: var(--azul-dark);
	color: #fff;
	padding: 14px 40px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	flex-wrap: wrap;
}
.hm-geo-text {
	font-size: 13px;
	color: rgba(255,255,255,.9);
}
.hm-geo-text strong {
	color: #fff;
}
.hm-geo-pills {
	display: flex;
	gap: 8px;
	flex-wrap: wrap;
}
.hm-geo-pill {
	font-size: 11px;
	background: rgba(255,255,255,.12);
	color: rgba(255,255,255,.85);
	padding: 3px 10px;
	border-radius: 20px;
	border: 1px solid rgba(255,255,255,.2);
}
.hm-sec {
	padding: 64px 40px;
	background: var(--blanco);
}
.hm-sec.bg-gris {
	background: var(--bg);
}
.hm-sec.bg-azul {
	background: var(--azul-light);
}
.hm-sec-inner {
	max-width: 960px;
	margin: 0 auto;
}
.hm-eyebrow {
	font-size: 11px;
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: .1em;
	color: var(--azul);
	margin-bottom: 10px;
}
.hm-h2 {
	font-size: 32px;
	font-weight: 600;
	color: var(--negro);
	margin-bottom: 10px;
	line-height: 1.15;
	letter-spacing: -.01em;
}
.hm-h2 span {
	font-weight: 300;
}
.hm-sub {
	font-size: 16px;
	color: var(--gris);
	max-width: 560px;
	margin-bottom: 28px;
	line-height: 1.65;
	font-weight: 300;
}
.hm-sub.c {
	text-align: center;
	margin-left: auto;
	margin-right: auto;
}
.hm-divider {
	height: 1px;
	background: var(--borde);
}
.hm-stats {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 1px;
	background: var(--borde);
	border: 1px solid var(--borde);
	border-radius: 6px;
	overflow: hidden;
	margin-bottom: 48px;
}
.hm-stat {
	background: var(--blanco);
	padding: 24px 20px;
	text-align: center;
}
.hm-stat-n {
	font-size: 30px;
	font-weight: 600;
	color: var(--azul);
	margin-bottom: 4px;
	letter-spacing: -.01em;
}
.hm-stat-l {
	font-size: 13px;
	color: var(--gris);
	font-weight: 300;
}
.hm-check-grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 10px;
}
.hm-check-item {
	display: flex;
	align-items: flex-start;
	gap: 12px;
	font-size: 15px;
	background: var(--bg);
	border-radius: 4px;
	padding: 12px 15px;
	color: var(--negro);
	font-weight: 300;
}
.hm-ci {
	width: 20px;
	height: 20px;
	border-radius: 50%;
	background: var(--azul);
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	margin-top: 1px;
}
.hm-ci svg {
	width: 10px;
	height: 10px;
}
.hm-why-grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 16px;
	max-width: 800px;
}
.hm-why-card {
	background: var(--bg);
	border-radius: 6px;
	padding: 22px 24px;
}
.hm-why-tag {
	font-size: 12px;
	font-weight: 600;
	color: var(--azul);
	text-transform: uppercase;
	letter-spacing: .05em;
	margin-bottom: 8px;
}
.hm-why-title {
	font-size: 16px;
	font-weight: 600;
	color: var(--negro);
	margin-bottom: 10px;
}
.hm-why-list {
	list-style: none;
	padding: 0;
}
.hm-why-list li {
	font-size: 14px;
	color: var(--gris);
	padding: 5px 0;
	display: flex;
	gap: 8px;
	font-weight: 300;
	border-bottom: 1px solid var(--borde);
}
.hm-why-list li:last-child {
	border-bottom: none;
}
.hm-why-list li:before {
	content: '✓';
	color: var(--azul);
	font-weight: 600;
	flex-shrink: 0;
}
.hm-pasos {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 28px;
}
.hm-paso {
	text-align: center;
	padding: 8px;
}
.hm-paso-num {
	width: 44px;
	height: 44px;
	border-radius: 50%;
	background: var(--azul);
	color: #fff;
	font-size: 16px;
	font-weight: 600;
	display: flex;
	align-items: center;
	justify-content: center;
	margin: 0 auto 14px;
}
.hm-paso-title {
	font-size: 16px;
	font-weight: 600;
	color: var(--negro);
	margin-bottom: 8px;
}
.hm-paso-body {
	font-size: 14px;
	color: var(--gris);
	line-height: 1.6;
	font-weight: 300;
}
.hm-calc {
	background: var(--blanco);
	border: 1px solid var(--borde);
	border-radius: 6px;
	padding: 28px;
	max-width: 640px;
}
.hm-calc-row {
	display: flex;
	align-items: center;
	gap: 14px;
	margin-bottom: 18px;
	flex-wrap: wrap;
}
.hm-calc-lbl {
	font-size: 14px;
	color: var(--gris);
	min-width: 130px;
	font-weight: 400;
}
input[type=range] {
	flex: 1;
	min-width: 120px;
	height: 3px;
	accent-color: var(--azul);
	cursor: pointer;
}
.hm-calc select {
	padding: 9px 12px;
	border: 1px solid var(--borde);
	border-radius: 4px;
	font-size: 14px;
	background: var(--blanco);
	color: var(--negro);
	flex: 1;
	max-width: 220px;
	font-family: var(--font);
	font-weight: 300;
}
.hm-calc-val {
	font-size: 14px;
	font-weight: 600;
	min-width: 52px;
	text-align: right;
	color: var(--negro);
}
.hm-calc-result {
	background: var(--azul-dark);
	border-radius: 6px;
	padding: 16px 20px;
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-top: 4px;
}
.hm-cr-lbl {
	font-size: 11px;
	color: var(--azul-mid);
	font-weight: 500;
	text-transform: uppercase;
	letter-spacing: .05em;
	margin-bottom: 3px;
}
.hm-cr-price {
	font-size: 32px;
	font-weight: 600;
	color: #fff;
	letter-spacing: -.01em;
}
.hm-cr-note {
	font-size: 11px;
	color: rgba(255,255,255,.65);
	text-align: right;
	line-height: 1.7;
}
.hm-calc-btn {
	width: 100%;
	margin-top: 14px;
	background: var(--azul);
	color: #fff;
	font-size: 13px;
	font-weight: 500;
	padding: 13px;
	border-radius: 4px;
	border: none;
	cursor: pointer;
	letter-spacing: .04em;
	text-transform: uppercase;
	transition: background .15s;
}
.hm-calc-btn:hover {
	background: #2278aa;
}
.hm-coronas {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 16px;
	margin-bottom: 16px;
}
.hm-corona {
	background: var(--blanco);
	border: 1px solid var(--borde);
	border-radius: 6px;
	padding: 18px 20px;
}
.hm-corona-tag {
	font-size: 10px;
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: .08em;
	color: var(--azul);
	margin-bottom: 6px;
}
.hm-corona-title {
	font-size: 15px;
	font-weight: 600;
	color: var(--negro);
	margin-bottom: 8px;
}
.hm-corona-muni {
	font-size: 12px;
	color: var(--gris);
	line-height: 1.7;
	font-weight: 300;
}
.hm-dist-grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 8px;
}
.hm-dist-card {
	background: var(--blanco);
	border: 1px solid var(--borde);
	border-radius: 4px;
	padding: 14px 16px;
	text-decoration: none;
	transition: all .15s;
	display: block;
}
.hm-dist-card:hover {
	border-color: var(--azul);
	background: var(--azul-light);
}
.hm-dist-name {
	font-size: 14px;
	font-weight: 500;
	color: var(--negro);
	margin-bottom: 3px;
}
.hm-dist-kw {
	font-size: 11px;
	color: var(--gris);
	font-weight: 300;
}
.hm-dist-arr {
	float: right;
	color: var(--azul);
	font-size: 13px;
}
.hm-map {
	border-radius: 6px;
	overflow: hidden;
	border: 1px solid var(--borde);
}
.hm-casos {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 14px;
}
.hm-caso {
	background: var(--blanco);
	border: 1px solid var(--borde);
	border-radius: 6px;
	overflow: hidden;
}
.hm-caso-head {
	background: var(--azul-dark);
	padding: 9px 15px;
	font-size: 11px;
	font-weight: 600;
	color: rgba(255,255,255,.85);
	letter-spacing: .06em;
	text-transform: uppercase;
}
.hm-caso-body {
	padding: 15px 16px;
}
.hm-caso-p {
	font-size: 24px;
	font-weight: 600;
	color: var(--azul);
	letter-spacing: -.01em;
	margin-bottom: 4px;
}
.hm-caso-loc {
	font-size: 14px;
	font-weight: 500;
	color: var(--negro);
	margin-bottom: 4px;
}
.hm-caso-desc {
	font-size: 13px;
	color: var(--gris);
	line-height: 1.55;
	font-weight: 300;
}
.hm-reviews-placeholder {
	background: var(--azul-light);
	border: 2px dashed var(--azul-mid);
	border-radius: 6px;
	padding: 32px;
	text-align: center;
}
.hm-rp-title {
	font-size: 16px;
	font-weight: 600;
	color: var(--azul-dark);
	margin-bottom: 8px;
}
.hm-rp-sub {
	font-size: 14px;
	color: var(--gris);
	line-height: 1.6;
	font-weight: 300;
	margin-bottom: 12px;
}
.hm-rp-steps {
	display: flex;
	gap: 12px;
	justify-content: center;
	flex-wrap: wrap;
	margin-top: 16px;
}
.hm-rp-step {
	background: var(--blanco);
	border: 1px solid var(--borde);
	border-radius: 4px;
	padding: 10px 16px;
	font-size: 12px;
	color: var(--gris);
	font-weight: 400;
	text-align: left;
	max-width: 200px;
}
.hm-rp-step strong {
	display: block;
	font-weight: 600;
	color: var(--negro);
	margin-bottom: 3px;
}
.hm-faq {
	max-width: 800px;
}
.hm-faq details {
	border-bottom: 1px solid var(--borde);
}
.hm-faq details:first-of-type {
	border-top: 1px solid var(--borde);
}
.hm-faq summary {
	padding: 17px 0;
	font-size: 16px;
	font-weight: 500;
	color: var(--negro);
	cursor: pointer;
	list-style: none;
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	gap: 16px;
}
.hm-faq summary::-webkit-details-marker {
	display: none;
}
.hm-faq summary:after {
	content: '+';
	color: var(--azul);
	font-size: 20px;
	flex-shrink: 0;
	line-height: 1;
	font-weight: 300;
}
.hm-faq details[open] summary:after {
	content: '−';
}
.hm-faq-a {
	font-size: 15px;
	color: var(--gris);
	line-height: 1.7;
	padding: 0 0 16px;
	font-weight: 300;
}
.hm-faq-a strong {
	font-weight: 600;
	color: var(--negro);
}
.hm-cta {
	background: var(--azul-dark);
	padding: 72px 40px;
	text-align: center;
}
.hm-cta-inner {
	max-width: 600px;
	margin: 0 auto;
}
.hm-cta-h {
	font-size: 36px;
	font-weight: 600;
	color: #fff;
	margin-bottom: 10px;
	letter-spacing: -.01em;
}
.hm-cta-h span {
	font-weight: 300;
}
.hm-cta-sub {
	font-size: 17px;
	color: rgba(255,255,255,.75);
	margin-bottom: 28px;
	line-height: 1.6;
	font-weight: 300;
}
.hm-cta-form {
	display: flex;
	gap: 8px;
	justify-content: center;
	max-width: 520px;
	margin: 0 auto;
	flex-wrap: wrap;
}
.hm-cta-input {
	flex: 1;
	min-width: 200px;
	padding: 13px 16px;
	border-radius: 4px;
	border: none;
	font-size: 14px;
	font-weight: 300;
}
.hm-cta-btn {
	background: var(--azul);
	color: #fff;
	font-size: 12px;
	font-weight: 500;
	padding: 13px 22px;
	border-radius: 4px;
	border: none;
	cursor: pointer;
	white-space: nowrap;
	letter-spacing: .06em;
	text-transform: uppercase;
	transition: background .15s;
}
.hm-cta-btn:hover {
	background: #2278aa;
}
.hm-cta-tiny {
	font-size: 11px;
	color: rgba(255,255,255,.45);
	margin-top: 12px;
	font-weight: 300;
}
@media(max-width: 720px) {
	.hm-hero {
		padding: 48px 18px 44px;
	}
	.hm-h1 {
		font-size: 28px;
	}
	.hm-hero-sub {
		font-size: 15px;
	}
	.hm-btns {
		flex-direction: column;
	}
	.hm-btn-main, .hm-btn-ghost {
		text-align: center;
		justify-content: center;
	}
	.hm-sec {
		padding: 44px 18px;
	}
	.hm-stats {
		grid-template-columns: 1fr 1fr;
	}
	.hm-check-grid {
		grid-template-columns: 1fr;
	}
	.hm-why-grid {
		grid-template-columns: 1fr;
	}
	.hm-pasos {
		grid-template-columns: 1fr;
	}
	.hm-coronas {
		grid-template-columns: 1fr;
	}
	.hm-dist-grid {
		grid-template-columns: 1fr 1fr;
	}
	.hm-casos {
		grid-template-columns: 1fr;
	}
	.hm-cta {
		padding: 48px 18px;
	}
	.hm-cta-form {
		flex-direction: column;
	}
	.hm-cta-input {
		min-width: auto;
	}
	.hm-breadcrumb {
		padding: 10px 18px;
	}
	.hm-geo-banner {
		padding: 12px 18px;
	}
	.hm-trust {
		gap: 20px;
	}
	.hm-rp-steps {
		flex-direction: column;
		align-items: center;
	}
}
.hm-tabs {
	border-bottom: 2px solid var(--borde);
	margin-bottom: 0;
}
.hm-tab-btns {
	display: flex;
	gap: 0;
	flex-wrap: nowrap;
	overflow-x: auto;
	border-bottom: 2px solid var(--borde);
	margin-bottom: 0;
}
.hm-tab-btn {
	font-size: 14px;
	font-weight: 400;
	padding: 14px 22px;
	border: none;
	border-bottom: 3px solid transparent;
	background: 0 0;
	color: var(--gris);
	cursor: pointer;
	transition: all .15s;
	margin-bottom: -2px;
	white-space: nowrap;
	outline: none;
}
.hm-tab-btn:hover {
	color: var(--negro);
}
.hm-tab-btn.active {
	color: var(--azul);
	border-bottom: 3px solid var(--azul);
	font-weight: 500;
}
.hm-tab-panel {
	display: none;
	grid-template-columns: repeat(4, 1fr);
	gap: 8px;
	padding-top: 20px;
}
.hm-tab-panel.active {
	display: grid;
}
@media(max-width: 720px) {
	.hm-tab-btn {
		font-size: 13px;
		padding: 12px 14px;
	}
	.hm-tab-panel {
		grid-template-columns: 1fr 1fr;
	}
}
:root{
    --navy-deep:#0A1E3C;--navy:#0F2A52;--surface:#15315C;--surface-2:#11294C;
    --azure:#2E9BFF;--azure-bright:#5BB2FF;--muted:#A6BAD6;
    --border:rgba(255,255,255,.09);--border-azure:rgba(46,155,255,.35);
    --card-light:#E7F0FB;--yt:#FF3B3B;
    --wrap:1200px;
  }
  *{margin:0;padding:0;box-sizing:border-box}
  html{scroll-behavior:smooth}
  body{font-family:'Aptos',sans-serif;background:var(--navy-deep);color:#fff;-webkit-font-smoothing:antialiased}
  img{display:block;max-width:100%}
  a{color:inherit}
  .wrap{max-width:var(--wrap);margin:0 auto;padding:0 48px}

  /* shared type */
  .eyebrow{font-weight:700;font-size:13.5px;letter-spacing:.2em;color:var(--azure);text-transform:uppercase;margin-bottom:20px}
  .headline{font-family:'Aptos Display';font-weight:700;line-height:1.04;letter-spacing:-.022em;color:#fff;overflow-wrap:break-word}
  .headline .accent{color:var(--azure-bright)}
  .lede{font-size:18px;line-height:1.55;color:var(--muted)}
  .lede b{color:#fff;font-weight:700}

  /* shared cta */
  .cta{display:inline-flex;align-items:center;justify-content:center;gap:12px;padding:19px 34px;border-radius:16px;
    text-decoration:none;background:linear-gradient(135deg,#2E9BFF 0%,#4AABFF 100%);color:#fff;font-weight:700;
    font-size:16px;letter-spacing:.02em;text-transform:uppercase;box-shadow:0 14px 34px rgba(46,155,255,.40);
    transition:transform .18s ease,box-shadow .18s ease}
  .cta:hover{transform:translateY(-2px);box-shadow:0 20px 44px rgba(46,155,255,.5)}
  .cta svg{width:20px;height:20px;stroke:#fff;stroke-width:2.6;fill:none}

  /* shared checklist */
  .hsmchecklist{list-style:none!important;background:none!important;padding-left:0!important;display:flex;flex-direction:column;gap:16px}
  .hsmchecklist li{list-style:none!important;list-style-image:none!important;background:none!important;background-image:none!important;padding-left:0!important;margin-left:0!important}
  .hsmchecklist li::marker{content:none!important}
  .hsmchecklist li::before{content:none!important;display:none!important;background:none!important}
  .hsmchecklist li::after{content:none!important;display:none!important}
  .hsmchecklist li{display:flex;align-items:flex-start;gap:14px;font-size:17px;line-height:1.42;color:#EEF4FC}
  .hsmtick{flex:none;width:28px;height:28px;border-radius:50%;background:rgba(46,155,255,.16);
    border:1px solid var(--border-azure);display:flex;align-items:center;justify-content:center;margin-top:1px}
  .hsmtick svg{width:15px;height:15px;stroke:var(--azure-bright);fill:none;stroke-width:2.4}

  /* ===== promo + nav ===== */
  .promo{background:linear-gradient(180deg,#3BA0FF 0%,#2E8DEF 100%);color:#fff;text-align:center;
    font-weight:700;font-size:14px;padding:11px 24px;margin:0!important}
  .nav{margin:0!important}
  .nav{position:sticky;top:0;z-index:50;background:rgba(10,30,60,.9);backdrop-filter:blur(10px);
    border-bottom:1px solid var(--border)}
  .nav-wrap{max-width:var(--wrap);margin:0 auto;padding:0 48px;height:74px;display:flex;align-items:center;justify-content:space-between}
    .nav-right{display:flex;align-items:center;gap:16px}
  .lang{display:inline-flex;align-items:center;gap:8px;padding:9px 13px;border:1px solid var(--border);border-radius:11px;
    background:rgba(255,255,255,.03);color:#EAF3FF;font-family:'Aptos';font-weight:700;font-size:14.5px;cursor:pointer;transition:border-color .15s,background .15s}
  .lang:hover{border-color:var(--border-azure);background:rgba(46,155,255,.08)}
  .lang .globe{width:17px;height:17px;stroke:var(--azure-bright);fill:none;stroke-width:1.7;flex:none}
  .lang .chev{width:14px;height:14px;stroke:#9DB4D6;fill:none;stroke-width:2.2;flex:none}
  .logo{font-family:'Aptos Display';font-weight:700;font-size:24px;letter-spacing:.3em;color:#fff;padding-left:.3em;text-decoration:none}
  .nav-links{display:flex;gap:34px}
  .burger{display:none;flex:none;align-items:center;justify-content:center;width:38px;height:38px;background:transparent;border:0;cursor:pointer;padding:0}
  .mobile-menu{display:none;flex-direction:column;background:rgba(10,30,60,.97);backdrop-filter:blur(10px);border-bottom:1px solid var(--border)}
  .mobile-menu a{color:#EAF3FF;font-weight:700;font-size:15.5px;text-decoration:none;padding:16px 22px;border-top:1px solid rgba(255,255,255,.08)}
  .nav.menu-open .mobile-menu{display:flex}
  .nav-links a{color:#CBDAF0;text-decoration:none;font-size:15.5px;font-weight:700;transition:color .15s}
  .nav-links a:hover{color:#fff}
  .nav-cta{display:inline-flex;align-items:center;gap:9px;background:linear-gradient(135deg,#2E9BFF,#4AABFF);
    color:#fff;text-decoration:none;font-weight:700;font-size:15px;padding:12px 22px;border-radius:12px;
    box-shadow:0 10px 24px rgba(46,155,255,.35);transition:transform .16s}
  .nav-cta:hover{transform:translateY(-1px)}

  /* ===== hero ===== */
  .hero{position:relative;overflow:hidden;min-height:640px;display:flex;align-items:center}
  .hero-bg{position:absolute;inset:0;z-index:0;background-position:52% 34%;background-size:cover}
  .hero-overlay{position:absolute;inset:0;z-index:1;background:
    linear-gradient(100deg,rgba(6,24,52,.93) 0%,rgba(7,26,56,.82) 34%,rgba(7,26,56,.42) 62%,rgba(7,26,56,.18) 100%),
    linear-gradient(180deg,rgba(6,22,48,.30) 0%,rgba(6,22,48,.08) 40%,rgba(6,22,48,.55) 100%)}
  .hero .wrap{position:relative;z-index:2;width:100%;padding-top:70px;padding-bottom:70px}
  .hero-content{max-width:660px}
  .hero .eyebrow{color:#C8D8EE;letter-spacing:.16em}
  .hero .headline{font-size:60px;margin:14px 0 24px}
  .hero .lede{color:#D7E3F4;font-size:19px;max-width:600px;margin-bottom:30px;text-shadow:0 1px 10px rgba(5,16,38,.6)}
  .hero .hsmchecklist{gap:15px;margin-bottom:26px;max-width:600px}
  .hero .hsmchecklist li{color:#fff;text-shadow:0 1px 8px rgba(5,16,38,.7)}
  .hero-note{font-size:16px;color:#CCDBF0;margin-bottom:30px;text-shadow:0 1px 8px rgba(5,16,38,.7)}
  .hero-note b{color:#fff;font-weight:700}
  .hero-actions{display:flex;align-items:center;gap:30px;flex-wrap:wrap}
  .hero .rating{display:flex;flex-direction:column;gap:0px}
  .hero .stars{color:#7CC2FF;font-size:19px;letter-spacing:2px;text-shadow:0 1px 8px rgba(5,16,38,.75);line-height:1}
  .hero .r1{color:#fff;font-size:16px;font-weight:700}
  .hero .r2{color:#D2E1F5;font-size:14.5px}

  /* ===== trust band (b2b + stats + media) — inverted: white band, blue banner ===== */
  .trust{background:#fff;padding:40px 0 0}
  .trust .wrap{padding-top:0;padding-bottom:32px}
  .b2b{background:#fff;border:1px solid rgba(15,42,82,.12);border-radius:14px;padding:16px 22px;text-align:center;max-width:520px;margin:0 auto;display:flex;flex-direction:column;align-items:center;gap:4px;box-shadow:0 8px 20px rgba(15,42,82,.06)}
  .b2b p{color:#26405F;font-size:14px;line-height:1.35;margin:0}
  .b2b a{color:#1E6FD0;font-weight:700;font-size:14px;text-decoration:underline;text-underline-offset:3px}
  .stats{display:flex;justify-content:center;gap:0;text-align:center;flex-wrap:wrap;margin:0}
  .stat{flex:1;min-width:180px;padding:6px 34px}
  .stat+.stat{border-left:1px solid rgba(15,42,82,.14)}
  .stat .num{font-family:'Aptos Display';font-weight:700;color:var(--azure);font-size:44px;letter-spacing:-.02em;line-height:1}
  .stat .lab{color:#4C6486;font-size:14.5px;line-height:1.35;margin-top:12px}
  .media{text-align:center}
  .media .t{color:#6E82A0;font-size:15px;margin-bottom:22px}
  .media .row{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:18px 46px}
  .media .m{color:#516A90;font-weight:700;font-size:22px;white-space:nowrap;opacity:.9;text-decoration:none;transition:opacity .15s}
  .media a.m:hover{opacity:1}
  .media .vang{font-family:'Aptos Display'}

  /* ===== generic section ===== */
  .sec{position:relative;overflow:hidden}
  .sec .wrap{padding-top:104px;padding-bottom:104px;position:relative;z-index:3}
  .sec-a{background:radial-gradient(80% 55% at 12% 4%, rgba(46,155,255,.10) 0%, rgba(46,155,255,0) 55%),linear-gradient(180deg,var(--navy) 0%,var(--navy-deep) 100%)}
  .sec-b{background:radial-gradient(80% 55% at 88% 4%, rgba(46,155,255,.10) 0%, rgba(46,155,255,0) 55%),linear-gradient(180deg,var(--navy-deep) 0%,var(--navy) 100%)}
  /* light (inverted) section theme — white background, dark-legible content */
  .sec.light{background:#F4F8FD}
  .light .eyebrow{color:var(--azure)}
  .light .headline{color:var(--navy)}
  .light .headline .accent{color:var(--azure)}
  .light .lede{color:#4C6486}
  .light .lede b{color:var(--navy)}
  .light .hsmchecklist li{color:#26405F}
  .light .hsmtick{background:rgba(46,155,255,.12);border-color:rgba(46,155,255,.3)}
  .light .hsmtick svg{stroke:var(--azure)}
  .light .kicker{color:var(--navy)}
  .light .kicker .accent{color:var(--azure)}
  .light .figure{border-color:rgba(46,155,255,.28);box-shadow:0 24px 54px rgba(15,42,82,.16)}
  .light .figcap{color:#6E82A0}
  .light .badge-time{color:#4C6486}
  .light .badge-time svg{stroke:var(--azure)}
  .light .tstep h3{color:var(--navy)}
  .light .tstep p{color:#4C6486}
  .light .rev-badge{background:#fff;border-color:rgba(15,42,82,.10);box-shadow:0 8px 24px rgba(15,42,82,.06)}
  .light .rev-badge .score{color:var(--navy)}
  .light .rev-badge .src2{color:#6E82A0}
  .light .rev-badge .rev{color:#4C6486}
  .light .rev-badge .div{background:rgba(15,42,82,.12)}
  .light .rcard{background:#fff;border-color:rgba(15,42,82,.09);box-shadow:0 10px 30px rgba(15,42,82,.06)}
  .light .rcard .quote{color:#26405F}
  .light .rcard .who .n{color:var(--navy)}
  .light .rcard .who .src{color:#6E82A0}

  .sec-head{max-width:760px}
  .sec-head.center{margin:0 auto;text-align:center}
  .sec-head .headline{font-size:44px}
  .sec-head .lede{margin-top:20px}

  /* ===== services (web02) ===== */
  .services{position:relative;overflow:hidden;background:var(--navy-deep)}
  .svc-cta{margin-top:30px}
  .services .bg-photo{position:absolute;inset:0;z-index:0;background-position:center;background-size:cover;filter:grayscale(1) brightness(.95) contrast(1.05)}
  .services .tint{position:absolute;inset:0;z-index:1;mix-blend-mode:multiply;opacity:.92;background:linear-gradient(155deg,#0A1E3C 0%,#0F2A52 42%,#2E78C8 100%)}
  .services .overlay{position:absolute;inset:0;z-index:2;background:
    radial-gradient(120% 60% at 82% 2%, rgba(46,155,255,.16) 0%, rgba(46,155,255,0) 55%),
    linear-gradient(180deg,rgba(10,30,60,.55) 0%,rgba(13,42,82,.66) 50%,rgba(15,42,82,.82) 100%)}
  .services .headline{font-size:44px}
  .services .sub{font-size:18px;line-height:1.5;color:var(--muted);max-width:520px;margin-top:18px}
  .svc-layout{display:grid;grid-template-columns:1.05fr 1.35fr;gap:20px;margin-top:48px;align-items:stretch}
  .card{background:var(--surface);border:1px solid var(--border);border-radius:22px;text-decoration:none;display:block;
    transition:transform .18s ease,border-color .18s ease}
  .card:hover{transform:translateY(-4px);border-color:var(--border-azure)}
  .flagship{background:linear-gradient(180deg,rgba(46,155,255,.16) 0%,rgba(46,155,255,.04) 100%),var(--surface);
    border:1px solid var(--border-azure);box-shadow:0 18px 40px rgba(0,0,0,.35);
    padding:36px 34px;display:flex;flex-direction:column}
  .tag{display:inline-block;font-size:11.5px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--navy-deep);
    background:var(--azure);padding:6px 13px;border-radius:999px;margin-bottom:22px;align-self:flex-start}
  .ic{width:52px;height:52px;border-radius:14px;background:rgba(46,155,255,.14);border:1px solid var(--border-azure);
    display:flex;align-items:center;justify-content:center;margin-bottom:20px}
  .ic svg{width:26px;height:26px;stroke:var(--azure-bright);fill:none;stroke-width:1.7}
  .card h3{font-family:'Aptos Display';font-weight:700;color:#fff;letter-spacing:-.01em}
  .flagship h3{font-size:27px;margin-bottom:12px}
  .flagship p{color:var(--muted);line-height:1.5;font-size:17px;max-width:380px}
  .arrow{display:inline-flex;align-items:center;justify-content:center;margin-top:auto;padding-top:24px}
  .arrow span{width:46px;height:46px;border-radius:50%;background:var(--azure);display:flex;align-items:center;justify-content:center}
  .arrow svg{width:19px;height:19px;stroke:#fff;stroke-width:2.4;fill:none}
  .svc-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}
  .svc-grid .card{padding:28px 26px}
  .svc-grid .ic{width:46px;height:46px;margin-bottom:16px}
  .svc-grid .ic svg{width:23px;height:23px}
  .svc-grid h3{font-size:20px;margin-bottom:9px}
  .svc-grid p{color:var(--muted);font-size:15px;line-height:1.45}

  /* ===== inspection (web03) ===== */
  .insp-layout{display:grid;grid-template-columns:1.15fr 1fr;gap:56px;align-items:center}
  .figure{position:relative;border-radius:22px;overflow:hidden;border:1px solid var(--border-azure);box-shadow:0 24px 54px rgba(0,0,0,.5)}
  .figure img{width:100%;height:auto}
  .figcap{display:flex;align-items:center;gap:10px;color:var(--muted);font-size:14.5px;margin-top:16px}
  .figcap .dot{width:9px;height:9px;border-radius:50%;background:var(--azure-bright);flex:none}
  .insp-text .headline{font-size:42px;margin-bottom:22px}
  .insp-text .lede{margin-bottom:26px}
  .insp-text .hsmchecklist{margin-bottom:26px}
  .insp-text .hsmchecklist li{font-size:16px}
  .kicker{font-family:'Aptos Display';font-weight:700;font-size:22px;line-height:1.3;color:#fff;margin-bottom:28px}
  .kicker .accent{color:var(--azure-bright)}
  .badge-time{display:flex;align-items:center;gap:10px;margin-top:20px;color:#CFE0F4;font-size:15px;font-weight:700}
  .badge-time svg{width:19px;height:19px;stroke:var(--azure-bright);fill:none;stroke-width:2}

  /* ===== why (web04) ===== */
  .why .sub{font-size:18px;line-height:1.5;color:var(--muted);margin-top:18px}
  .why .sub b{color:#fff;font-weight:700}
  .why-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin:52px 0}
  .why-card{background:var(--surface);border:1px solid var(--border);border-radius:20px;padding:28px 24px;transition:transform .18s,border-color .18s}
  .why-card:hover{transform:translateY(-4px);border-color:var(--border-azure)}
  .why-card .ic{width:52px;height:52px;border-radius:14px;margin-bottom:20px}
  .why-card h3{font-family:'Aptos Display';font-weight:700;font-size:19px;color:#fff;margin-bottom:9px;letter-spacing:-.01em}
  .why-card p{font-size:15px;line-height:1.45;color:var(--muted)}
  .why-foot{text-align:center}
  .why-foot .kicker{font-size:24px;margin-bottom:26px}

  /* ===== checklist band (web04.5) ===== */
  .franja{position:relative;overflow:hidden;background:linear-gradient(120deg,#1E63C8 0%,#2E9BFF 55%,#3FA7FF 100%)}
  .franja::after{content:"";position:absolute;right:-60px;top:-80px;width:340px;height:340px;border-radius:50%;
    background:radial-gradient(circle,rgba(255,255,255,.16),rgba(255,255,255,0) 70%)}
  .franja .wrap{padding-top:56px;padding-bottom:58px;position:relative;z-index:2;
    display:grid;grid-template-columns:1.2fr 1fr;gap:48px;align-items:center}
  .franja-left{display:flex;align-items:center;gap:28px}
  .fl-label{display:inline-flex;align-items:center;gap:8px;color:#fff;font-weight:700;font-size:12.5px;letter-spacing:.13em;text-transform:uppercase;opacity:.95;margin-bottom:12px}
  .fl-label svg{width:15px;height:15px;stroke:#fff;fill:none;stroke-width:2}
  .franja h2{font-family:'Aptos Display';font-weight:700;font-size:30px;line-height:1.1;letter-spacing:-.02em;color:#fff}
  .thumb{flex:none;width:104px;height:135px;background:#fff;border-radius:11px;box-shadow:0 16px 34px rgba(6,22,48,.4);transform:rotate(4deg);padding:13px 11px}
  .thumb .tt{font-family:'Aptos Display';font-weight:700;font-size:9px;letter-spacing:.1em;color:#0F2A52;margin-bottom:9px}
  .thumb .ln{display:flex;align-items:center;gap:5px;margin-bottom:7px}
  .thumb .bx{width:9px;height:9px;border-radius:2px;border:1px solid #C7D6EA;flex:none}
  .thumb .bx.on{background:var(--azure);border-color:var(--azure)}
  .thumb .bar{height:5px;border-radius:2px;background:#E1E8F2;flex:1}
  .franja-right{}
  .form{display:flex;gap:11px}
  .field{flex:1;display:flex;align-items:center;gap:9px;background:#fff;border-radius:13px;padding:0 15px;height:58px}
  .field svg{width:19px;height:19px;stroke:#7A93B5;fill:none;stroke-width:2;flex:none}
  .field input{border:0;outline:0;font-family:'Aptos',sans-serif;font-size:16px;color:#0F2A52;width:100%;background:transparent}
  .field input::placeholder{color:#94A7C3}
  .fbtn{flex:none;display:flex;align-items:center;gap:8px;border:0;cursor:pointer;background:#0A1E3C;color:#fff;
    font-family:'Aptos',sans-serif;font-weight:700;font-size:16px;border-radius:13px;padding:0 24px;height:58px;transition:transform .16s}
  .fbtn:hover{transform:translateY(-1px)}
  .fbtn svg{width:18px;height:18px;stroke:#fff;fill:none;stroke-width:2.3}
  .fine{color:rgba(255,255,255,.9);font-size:13.5px;margin-top:14px}

  /* ===== seal (web05) ===== */
  .seal-layout{display:grid;grid-template-columns:1fr 1.1fr;gap:64px;align-items:center}
  .seal{display:block;width:300px;height:300px;margin:0 auto;filter:drop-shadow(0 22px 48px rgba(46,155,255,.3))}
  .seal-text .headline{font-size:42px;margin-bottom:22px}
  .seal-text .sub{font-size:18px;line-height:1.55;color:var(--muted);margin-bottom:30px}
  .seal-text .sub b{color:#fff;font-weight:700}
  .benefits{display:flex;flex-direction:column;gap:16px}
  .ben{display:flex;gap:16px;align-items:flex-start;background:var(--surface);border:1px solid var(--border);border-radius:18px;padding:22px}
  .ben .ic{flex:none;width:48px;height:48px;border-radius:13px;margin-bottom:0}
  .ben .ic svg{width:24px;height:24px}
  .ben .lab{font-weight:700;font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--azure-bright);margin-bottom:5px}
  .ben h3{font-family:'Aptos Display';font-weight:700;font-size:19px;color:#fff;margin-bottom:5px;letter-spacing:-.01em}
  .ben p{font-size:15px;line-height:1.45;color:var(--muted)}

  /* ===== process (web06) ===== */
  .timeline{display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin:56px 0 52px}
  .tstep{position:relative;padding:0 22px}
  .tstep:first-child{padding-left:0}
  .tstep:last-child{padding-right:0}
  .tnum{width:56px;height:56px;border-radius:50%;background:linear-gradient(135deg,#2E9BFF,#1E6FD0);
    display:flex;align-items:center;justify-content:center;font-family:'Aptos Display';font-weight:700;font-size:23px;color:#fff;
    box-shadow:0 8px 20px rgba(46,155,255,.35);position:relative;z-index:2;margin-bottom:24px}
  .tstep .tline{position:absolute;top:28px;left:56px;right:-0px;height:2px;
    background:linear-gradient(90deg,rgba(46,155,255,.55),rgba(46,155,255,.12));z-index:1}
  .tstep:last-child .tline{display:none}
  .tstep h3{font-family:'Aptos Display';font-weight:700;font-size:20px;color:#fff;letter-spacing:-.01em;margin-bottom:9px}
  .tstep p{font-size:15.5px;line-height:1.5;color:var(--muted)}
  .process-cta{text-align:center}

  /* ===== transparency / social (web06.5) ===== */
  .trans .sub{font-size:18px;line-height:1.5;color:var(--muted);margin-top:18px;max-width:720px}
  .video-layout{display:grid;grid-template-columns:repeat(2,1fr);gap:24px 26px;margin:48px 0 28px;align-items:start}
  .vthumb{position:relative;display:block;border-radius:16px;overflow:hidden;border:1px solid var(--border);
    background-size:cover;background-position:center;aspect-ratio:16/9}
  .play{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:66px;height:66px;border-radius:50%;
    background:rgba(8,18,38,.55);backdrop-filter:blur(2px);display:flex;align-items:center;justify-content:center;border:1.5px solid rgba(255,255,255,.5)}
  .play svg{width:24px;height:24px;fill:#fff;margin-left:3px}
  .dur{position:absolute;right:8px;bottom:8px;background:rgba(0,0,0,.9);color:#fff;font-size:12px;font-weight:700;padding:3px 8px;border-radius:6px}
  .vmeta{padding:14px 2px 0}
  .vt{color:#fff;font-weight:700;line-height:1.28;font-size:16.5px}
  .vv{color:var(--muted);font-size:14px;margin-top:5px}
  .ytbar{display:flex;align-items:center;gap:15px;background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:18px 20px;margin-bottom:22px}
  .ytlogo{width:50px;height:50px;border-radius:13px;background:var(--yt);display:flex;align-items:center;justify-content:center;flex:none}
  .ytlogo svg{width:26px;height:26px;fill:#fff}
  .ytinfo{flex:1;min-width:0}
  .ytinfo .n{font-weight:700;color:#fff;font-size:17px}
  .ytinfo .s{color:var(--muted);font-size:14px}
  .ytbtn{flex:none;background:var(--azure);color:#fff;font-weight:700;font-size:14.5px;text-decoration:none;padding:12px 20px;border-radius:12px;transition:transform .16s}
  .ytbtn:hover{transform:translateY(-1px)}
  .socials{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
  .soc{display:flex;flex-direction:column;align-items:center;gap:8px;background:var(--surface);border:1px solid var(--border);
    border-radius:16px;padding:26px 12px;text-decoration:none;transition:transform .18s,border-color .18s}
  .soc:hover{transform:translateY(-3px);border-color:var(--border-azure)}
  .soc .ic{width:auto;height:auto;background:none;border:0;margin:0}
  .soc .ic svg{width:30px;height:30px;stroke:#C7D6EA;fill:none;stroke-width:1.8}
  .soc .num{font-family:'Aptos Display';font-weight:700;color:#fff;font-size:22px;line-height:1}
  .soc .pl{color:var(--muted);font-size:13.5px}

  /* ===== reviews (web07) ===== */
  .rev-badge{display:inline-flex;align-items:center;gap:15px;background:var(--surface);border:1px solid var(--border);
    border-radius:16px;padding:15px 24px;margin:26px auto 44px}
  .rev-badge .stars{color:#FFC94D;font-size:19px;letter-spacing:1px}
  .rev-badge .scorebox{display:flex;flex-direction:column;align-items:center;line-height:1}
  .rev-badge .score{font-family:'Aptos Display';font-weight:700;color:#fff;font-size:22px}
  .rev-badge .src2{color:var(--muted);font-size:12px;font-weight:700;letter-spacing:.03em;margin-top:4px}
  .rev-badge .div{width:1px;height:34px;background:var(--border)}
  .rev-badge .rev{color:var(--muted);font-size:14.5px;text-align:left;line-height:1.25}
  .reviews{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;text-align:left}
  .rcard{background:var(--surface);border:1px solid var(--border);border-radius:20px;padding:28px}
  .rcard .stars{color:#FFC94D;font-size:16px;letter-spacing:1px;margin-bottom:16px}
  .rcard .quote{font-size:16.5px;line-height:1.55;color:#EEF4FC;margin-bottom:20px}
  .rcard .who{display:flex;align-items:center;gap:12px}
  .av{width:42px;height:42px;border-radius:50%;background:linear-gradient(135deg,#2E9BFF,#1E6FD0);display:flex;align-items:center;justify-content:center;
    font-family:'Aptos Display';font-weight:700;color:#fff;font-size:16px;flex:none}
  .who .n{font-weight:700;color:#fff;font-size:16px;line-height:1.2}
  .who .src{color:var(--muted);font-size:13px}

  /* ===== footer ===== */
  /* Oculta el bloque "Global Section" que el tema Salient inyecta automáticamente antes del footer real (Ciudades destacadas/Páginas de interés/RRSS/WhatsApp), para no duplicar con nuestro footer a medida */
  .nectar-global-section.before-footer{display:none!important}
  .footer{background:var(--navy-deep);border-top:1px solid var(--border)}
  .footer .wrap{padding-top:56px;padding-bottom:44px}
  .foot-top{display:flex;justify-content:space-between;align-items:flex-start;gap:40px;flex-wrap:wrap;padding-bottom:32px;border-bottom:1px solid var(--border)}
  .foot-brand .logo{display:inline-block;margin-bottom:14px}
  .foot-brand p{color:var(--muted);font-size:15px;max-width:360px;line-height:1.5}
  .foot-links{display:flex;gap:60px;flex-wrap:wrap}
  .foot-col h4{color:#fff;font-size:14px;font-weight:700;letter-spacing:.04em;margin-bottom:14px}
  .foot-col a{display:block;color:var(--muted);text-decoration:none;font-size:14.5px;margin-bottom:10px;transition:color .15s}
  .foot-col a:hover{color:#fff}
  .foot-bottom{display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap;padding-top:26px;color:#7C90AE;font-size:13.5px}


  /* ===== tech / app (new) ===== */
  .tech-layout{display:grid;grid-template-columns:1.15fr 1fr;gap:64px;align-items:center}
  .tech-text .headline{font-size:44px;margin-bottom:22px}
  .tech-text .lede{margin-bottom:26px}
  .tech-text .hsmchecklist{margin-bottom:28px}
  .tech-text .hsmchecklist li{font-size:16px}
  .tech-media{position:relative;display:flex;justify-content:center;padding:30px 0}
  .tech-glow{position:absolute;inset:0;background:radial-gradient(50% 50% at 50% 50%,rgba(46,155,255,.22) 0%,rgba(46,155,255,0) 70%);z-index:0}
  .phone{position:relative;z-index:2;width:302px;background:linear-gradient(180deg,#12294E,#0C2244);border:1px solid rgba(255,255,255,.14);
    border-radius:42px;padding:12px;box-shadow:0 34px 74px rgba(0,0,0,.55),0 0 0 1px rgba(46,155,255,.12)}
  .phone .notch{width:112px;height:22px;background:#0A1E3C;border-radius:0 0 14px 14px;margin:0 auto;position:absolute;top:12px;left:50%;transform:translateX(-50%);z-index:3}
  .screen{background:#F4F8FD;border-radius:32px;overflow:hidden}
  .app-head{background:linear-gradient(135deg,#0F2A52,#15315C);padding:30px 18px 14px;color:#fff}
  .app-head .brand{font-family:'Aptos Display';font-weight:700;font-size:13px;letter-spacing:.28em;color:#7CC2FF}
  .app-head .st{font-weight:700;font-size:15px;margin-top:6px}
  .app-head .addr{font-size:11.5px;color:#A6BAD6;margin-top:3px}
  .app-prog{padding:14px 18px 4px}
  .app-prog .pl{display:flex;justify-content:space-between;font-size:11px;font-weight:700;color:#4C6486;margin-bottom:7px}
  .app-prog .pl b{color:#0F2A52}
  .pbar{height:7px;border-radius:99px;background:#DCE7F4;overflow:hidden}
  .pbar span{display:block;height:100%;width:72%;border-radius:99px;background:linear-gradient(90deg,#2E9BFF,#5BB2FF)}
  .app-list{padding:12px 18px 6px;display:flex;flex-direction:column;gap:8px}
  .arow{display:flex;align-items:center;gap:10px;background:#fff;border:1px solid rgba(15,42,82,.09);border-radius:12px;padding:10px 12px}
  .arow .an{font-size:12.5px;font-weight:700;color:#26405F;flex:1}
  .amark{flex:none;width:20px;height:20px;border-radius:50%;display:flex;align-items:center;justify-content:center}
  .amark.ok{background:rgba(46,155,255,.14)}
  .amark.ok svg{width:11px;height:11px;stroke:#2E9BFF;stroke-width:3;fill:none}
  .amark.warn{background:#FFF1DC;color:#C97A1A;font-weight:700;font-size:12px}
  .app-pat{margin:8px 18px 14px;background:#fff;border:1px solid rgba(46,155,255,.35);border-radius:14px;padding:12px;display:flex;gap:11px;align-items:center;box-shadow:0 8px 20px rgba(15,42,82,.08)}
  .app-pat .th{flex:none;width:52px;height:52px;border-radius:10px;background:
    radial-gradient(circle at 32% 40%,#FF5A3C 0%,#FF9D2E 34%,#FFD84D 55%,#39B5FF 82%,#1E4FA0 100%)}
  .app-pat .pt{font-size:12.5px;font-weight:700;color:#0F2A52;line-height:1.25}
  .app-pat .pc{font-size:12px;color:#4C6486;margin-top:4px}
  .app-pat .pc b{color:#2E9BFF;font-weight:700}
  .app-btn{margin:0 18px 18px;background:linear-gradient(135deg,#2E9BFF,#4AABFF);color:#fff;text-align:center;
    font-weight:700;font-size:13.5px;border-radius:12px;padding:13px;letter-spacing:.02em}
  .chip{position:absolute;z-index:4;display:flex;align-items:center;gap:9px;background:rgba(13,37,72,.92);backdrop-filter:blur(6px);
    border:1px solid var(--border-azure);border-radius:14px;padding:11px 15px;box-shadow:0 14px 30px rgba(0,0,0,.4)}
  .chip svg{width:17px;height:17px;stroke:var(--azure-bright);fill:none;stroke-width:2;flex:none}
  .chip span{font-size:12.5px;font-weight:700;color:#EAF3FF;white-space:nowrap}
  .chip.c1{top:52px;left:-8px}
  .chip.c2{top:46%;right:-26px}
  .chip.c3{bottom:64px;left:-20px}

  /* ===== faq (new) ===== */
  .faq-list{max-width:820px;margin:48px auto 0;display:flex;flex-direction:column;gap:14px}
  .faq-item{background:var(--surface);border:1px solid var(--border);border-radius:16px;overflow:hidden;transition:border-color .18s}
  .faq-item[open]{border-color:var(--border-azure)}
  .faq-item summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:18px;
    padding:22px 26px;font-family:'Aptos Display';font-weight:700;font-size:18px;color:#fff;letter-spacing:-.01em}
  .faq-item summary::-webkit-details-marker{display:none}
  .faq-item summary .chev{flex:none;width:30px;height:30px;border-radius:50%;background:rgba(46,155,255,.14);
    border:1px solid var(--border-azure);display:flex;align-items:center;justify-content:center;transition:transform .2s}
  .faq-item summary .chev svg{width:14px;height:14px;stroke:var(--azure-bright);stroke-width:2.6;fill:none}
  .faq-item[open] summary .chev{transform:none}
  .faq-item .ans{padding:0 26px 24px;color:var(--muted);font-size:16px;line-height:1.55;max-width:700px}
  .faq-item .ans b{color:#fff;font-weight:700}

  /* ===== final cta (new) ===== */
  .final{position:relative;overflow:hidden;background:linear-gradient(120deg,#1E63C8 0%,#2E9BFF 55%,#3FA7FF 100%)}
  .final::before{content:"";position:absolute;left:-80px;bottom:-120px;width:380px;height:380px;border-radius:50%;
    background:radial-gradient(circle,rgba(255,255,255,.14),rgba(255,255,255,0) 70%)}
  .final .wrap{padding-top:88px;padding-bottom:92px;position:relative;z-index:2;text-align:center}
  .final h2{font-family:'Aptos Display';font-weight:700;font-size:42px;line-height:1.06;letter-spacing:-.02em;color:#fff;max-width:720px;margin:0 auto 18px}
  .final .fsub{color:#EAF3FF;font-size:18px;line-height:1.5;max-width:560px;margin:0 auto 34px}
  .final .cta.inv{background:#0A1E3C;box-shadow:0 16px 38px rgba(6,22,48,.45)}
  .final .cta.inv:hover{box-shadow:0 22px 48px rgba(6,22,48,.55)}
  .final .fguar{display:flex;align-items:center;justify-content:center;gap:9px;color:#fff;font-size:14.5px;font-weight:700;margin-top:26px;opacity:.95}
  .final .fguar svg{width:17px;height:17px;stroke:#fff;fill:none;stroke-width:2;flex:none}

  @media(max-width:1080px){
    .tech-layout{grid-template-columns:1fr;gap:44px}
    .chip.c2{right:6px}
    .chip.c1{left:6px}
    .chip.c3{left:6px}
  }
  @media(max-width:680px){
    .tech-text .headline{font-size:32px}
    .final h2{font-size:30px}
    .faq-item summary{font-size:16px;padding:18px 20px}
    .faq-item .ans{padding:0 20px 20px;font-size:15px}
    .chip{display:none}
  }

  /* ===== cobertura / mapa (nuevo) ===== */
  .cover .center-sub{max-width:620px;margin-left:auto;margin-right:auto}
  .cover-layout{display:grid;grid-template-columns:1.55fr 1fr;gap:32px;align-items:stretch;margin-top:52px}
  .map-card{background:rgba(255,255,255,.03);border:1px solid var(--border);border-radius:22px;padding:22px 24px;display:flex;align-items:center;justify-content:center}
  .es-map{width:100%;height:auto;display:block}
  .es-map .reg{fill:#C9DBF2;stroke:#0F2A52;stroke-width:1;stroke-linejoin:round;cursor:pointer;transition:fill .16s,filter .16s}
  .es-map .reg:hover{fill:#A9C8F0}
  .es-map .reg.active{fill:#2E9BFF;stroke:#EAF3FF;stroke-width:1.4;filter:drop-shadow(0 6px 14px rgba(46,155,255,.45))}
  .es-map .cborder{fill:none;stroke:rgba(201,219,242,.35);stroke-width:1;stroke-dasharray:4 4}
  .es-map .rlbl{fill:#153B6B;font-family:'Aptos';font-size:13px;font-weight:700;text-anchor:middle;pointer-events:none;paint-order:stroke;stroke:rgba(201,219,242,.55);stroke-width:2.6px}
  .es-map .reg.active + .labels{}

  .region-panel{background:rgba(255,255,255,.045);border:1px solid var(--border-azure);border-radius:22px;padding:30px;display:flex;flex-direction:column}
  .rp-head{display:flex;align-items:center;gap:16px}
  .rp-icon{flex:none;width:56px;height:56px;border-radius:14px;background:rgba(46,155,255,.14);border:1px solid var(--border-azure);display:flex;align-items:center;justify-content:center}
  .rp-icon svg{width:28px;height:28px;stroke:var(--azure-bright);fill:none;stroke-width:1.7;stroke-linejoin:round;stroke-linecap:round}
  .rp-name{font-family:'Aptos Display';font-weight:700;font-size:26px;color:#fff;letter-spacing:-.01em;line-height:1.1}
  .rp-count{color:var(--muted);font-size:15px;margin-top:3px}
  .rp-divider{height:1px;background:var(--border);margin:24px 0}
  .rp-provs{display:grid;grid-template-columns:1fr 1fr;gap:12px}
  .rp-provs a{display:flex;align-items:center;justify-content:center;text-align:center;min-height:52px;padding:10px 12px;
    background:#0E2748;border:1px solid var(--border);border-radius:12px;color:#EAF3FF;font-weight:700;font-size:15px;
    text-decoration:none;transition:border-color .16s,background .16s,transform .12s}
  .rp-provs a:hover{background:#12315C;border-color:var(--border-azure);transform:translateY(-1px)}
  .rp-cta{margin-top:auto;align-self:flex-start;margin-top:28px}

  @media(max-width:1080px){
    .cover-layout{grid-template-columns:1fr;gap:24px}
    .region-panel{max-width:560px}
  }
  @media(max-width:560px){
    .rp-provs{grid-template-columns:1fr}
    .es-map .rlbl{font-size:15px}
  }

  /* ===== responsive ===== */
  @media(max-width:1080px){
    .hero .headline{font-size:48px}
    .svc-layout{grid-template-columns:1fr}
    .insp-layout,.seal-layout{grid-template-columns:1fr;gap:40px}
    .why-grid{grid-template-columns:1fr 1fr}
    .video-layout{grid-template-columns:1fr}
    .timeline{grid-template-columns:repeat(3,1fr);gap:36px 0}
    .tstep .tline{display:none}
    .franja .wrap{grid-template-columns:1fr;gap:30px}
    .nav-links{display:none}
    .burger{display:flex}
  }
  @media(max-width:680px){
    .wrap{padding:0 22px}
    .nav-wrap{padding:0 16px;gap:8px}
    .logo{font-size:17px;letter-spacing:.16em;padding-left:0}
    .lang span,.lang .chev{display:none}
    .lang{padding:9px 10px;gap:0}
    .nav-cta{padding:10px 14px;font-size:12.5px;gap:6px;white-space:nowrap}
    .nav-cta svg{width:13px;height:13px}
    .hero .headline{font-size:38px;overflow-wrap:break-word}
    .sec-head .headline,.services .headline,.insp-text .headline,.seal-text .headline{font-size:32px}
    .why-grid,.reviews,.socials{grid-template-columns:1fr}
    .svc-grid{grid-template-columns:1fr}
    .timeline{grid-template-columns:1fr}
    .stat{min-width:120px;padding:6px 14px}
    .stat .num{font-size:32px}
    .franja-left{flex-direction:column;align-items:flex-start}
    .form{flex-direction:column}
    .fbtn{width:100%;justify-content:center}
    .hero-actions{justify-content:center;text-align:center}
    .hero-actions .cta{margin:0 auto}
    .insp-text{text-align:center}
    .insp-text .cta{margin:0 auto}
    .insp-text .hsmchecklist{text-align:left}
    .svc-cta{display:flex;justify-content:center;width:max-content;margin:30px auto 0}
  }


  /* ===== transparencia: vídeos embebidos reales (nuevo) ===== */
  .vframe{position:relative;border-radius:16px;overflow:hidden;border:1px solid var(--border);aspect-ratio:16/9;background:#000}
  .vframe iframe{width:100%;height:100%;border:0;display:block}

  @media(max-width:680px){
    .cover-layout{display:none}
  }


  /* ===== blog (nuevo) ===== */
  .blog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:48px}
  .blog-card{display:block;background:var(--surface);border:1px solid var(--border);border-radius:20px;padding:28px;text-decoration:none;transition:transform .18s,border-color .18s}
  .blog-card:hover{transform:translateY(-4px);border-color:var(--border-azure)}
  .blog-card .tag{display:inline-block;font-size:11.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--azure-bright);
    background:rgba(46,155,255,.14);border:1px solid var(--border-azure);padding:5px 12px;border-radius:999px;margin-bottom:16px}
  .blog-card h3{font-family:'Aptos Display';font-weight:700;font-size:19px;color:#fff;line-height:1.3;margin-bottom:10px;letter-spacing:-.01em}
  .blog-card p{font-size:14.5px;line-height:1.5;color:var(--muted);margin-bottom:18px}
  .blog-card .blog-meta{font-size:12.5px;color:var(--muted);opacity:.85}
  .blog-foot{text-align:center;margin-top:40px}
  .cta-ghost{display:inline-flex;align-items:center;gap:8px;color:var(--azure-bright);font-weight:700;font-size:15px;text-decoration:none}
  .cta-ghost:hover{color:#fff}
  @media(max-width:1080px){ .blog-grid{grid-template-columns:1fr 1fr} }
  @media(max-width:680px){ .blog-grid{grid-template-columns:1fr} }


  /* ===== footer: enlaces por provincia (SEO, siempre visible) ===== */
  .foot-provinces{margin-top:22px;padding-top:22px;border-top:1px solid var(--border);font-size:13px;line-height:2.2;color:#93A8C6;display:flex;flex-wrap:wrap;align-items:baseline}
  .foot-provinces b{flex:0 0 100%;width:100%;display:block;color:#fff;font-family:'Aptos Display';font-weight:700;font-size:14.5px;letter-spacing:.02em;margin-bottom:10px}
  .foot-provinces a{color:#7C90AE;text-decoration:none}
  .foot-provinces a:hover{color:#fff;text-decoration:underline}
  .foot-provinces .sep{margin:0 7px;color:#3E5578}
  @media(max-width:680px){
    .foot-provinces{font-size:12.5px;line-height:2}
    .foot-provinces .sep{margin:0 5px}
  }


  /* ===== sello: giro continuo (nuevo) ===== */
  .seal-ring{transform-box:fill-box;transform-origin:center;animation:sealspin 20s linear infinite}
  @keyframes sealspin{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}

  /* ===== proceso circular con sello central (nuevo) ===== */
  .process-circle{position:relative;width:min(760px,95vw);aspect-ratio:1;margin:110px auto 20px}
  .process-circle::before{content:"";position:absolute;inset:9%;border:2px dashed var(--border-azure);border-radius:50%}
  .process-seal{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:42%}
  .process-seal::before{content:"";position:absolute;inset:18%;border-radius:50%;
    background:radial-gradient(circle,rgba(46,155,255,.16) 0%,rgba(46,155,255,0) 72%)}
  .process-seal svg{position:relative;width:100%;height:auto;display:block;
    filter:drop-shadow(0 14px 30px rgba(46,155,255,.3))}
  .process-node{position:absolute;width:230px;text-align:center;transform:translate(-50%,-50%);transition:transform .2s}
  .process-node .tnum{width:52px;height:52px;border-radius:50%;background:linear-gradient(135deg,#2E9BFF,#1E6FD0);
    display:flex;align-items:center;justify-content:center;font-family:'Aptos Display';font-weight:700;font-size:21px;
    color:#fff;box-shadow:0 8px 20px rgba(46,155,255,.4);margin:0 auto 16px;transition:background .2s,transform .2s}
  .process-node h3{font-family:'Aptos Display';font-weight:700;font-size:18px;color:#0F2A52;margin-bottom:8px;letter-spacing:-.01em;transition:color .2s}
  .process-node p{font-size:14px;line-height:1.5;color:#4C6486}
  .process-node:hover{transform:translate(-50%,-50%) translateY(-4px)}
  .process-node:hover .tnum{background:linear-gradient(135deg,#1E6FD0,#123B7A);transform:scale(1.08)}
  .process-node:hover h3{color:var(--azure)}
  .pn-1{top:8%;left:50%}
  .pn-2{top:88%;left:84%}
  .pn-3{top:88%;left:16%}
  @media(max-width:900px){
    .process-circle{width:100%;aspect-ratio:auto;display:flex;flex-direction:column;align-items:center;gap:32px;margin:60px auto 4px}
    .process-circle::before{display:none}
    .process-seal{position:static;transform:none;width:150px;order:-1;margin-bottom:12px}
    .process-node{position:static;transform:none;width:100%;max-width:360px}
    .process-node:hover{transform:none}
  }

  /* ===== opiniones: carrusel infinito (nuevo) ===== */
  .rev-marquee{overflow:hidden;margin-top:44px;-webkit-mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);
    mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent)}
  .rev-track{display:flex;gap:22px;width:max-content;animation:revscroll 42s linear infinite}
  .rev-marquee:hover .rev-track{animation-play-state:paused}
  .rev-track .rcard{flex:none;width:340px}
  @keyframes revscroll{from{transform:translateX(0)}to{transform:translateX(-50%)}}

  /* ===== faq: indicador + (nuevo, sin flechas) ===== */
  .faq-item summary .chev{transform:none!important}
  .faq-item summary .chev svg{transition:transform .2s}
  .faq-item[open] summary .chev svg{transform:rotate(45deg)}
  .faq-item summary{list-style:none!important}
  .faq-item summary::marker{content:none!important}
  .faq-item summary::-webkit-details-marker{display:none!important}
  .faq-item summary::before{content:none!important;display:none!important}
  .faq-item summary::after{content:none!important;display:none!important}


  /* ===== checklist gratuita: banda de captación (nuevo) ===== */
  .checklist-band{background:linear-gradient(135deg,#3BA0FF 0%,#1E6FD0 100%);padding:72px 0;position:relative;overflow:hidden}
  .cb-wrap{max-width:var(--wrap);margin:0 auto;padding:0 48px;display:grid;grid-template-columns:1fr 340px;gap:56px;align-items:center;position:relative}
  .cb-eyebrow{display:inline-flex;align-items:center;gap:10px;color:#fff;font-weight:700;font-size:13px;letter-spacing:.08em;text-transform:uppercase;margin-bottom:20px}
  .cb-eyebrow svg{width:20px;height:20px;stroke:#fff;fill:none;stroke-width:2.2}
  .cb-title{font-family:'Aptos Display';font-weight:700;font-size:clamp(28px,3.4vw,40px);color:#fff;letter-spacing:-.01em;margin-bottom:30px;max-width:560px}
  .cb-form{display:flex;gap:14px;max-width:640px}
  .cb-input{flex:1;display:flex;align-items:center;gap:10px;background:#fff;border-radius:14px;padding:0 20px;height:64px}
  .cb-input svg{width:20px;height:20px;stroke:#7D93B8;fill:none;stroke-width:2;flex:none}
  .cb-input input{flex:1;border:0;outline:0;font-size:16px;color:#0F2A52;background:transparent;font-family:inherit}
  .cb-input input::placeholder{color:#A6BAD6}
  .cb-btn{flex:none;display:inline-flex;align-items:center;gap:10px;background:#0A1E3C;color:#fff;border:0;border-radius:14px;padding:0 30px;height:64px;font-weight:700;font-size:16px;cursor:pointer;transition:background .18s;font-family:inherit}
  .cb-btn svg{width:18px;height:18px;stroke:#fff;fill:none;stroke-width:2.4}
  .cb-btn:hover{background:#132C52}
  .cb-note{color:rgba(255,255,255,.88);font-size:14px;margin-top:18px}
  .cb-media{display:flex;justify-content:center}
  .cb-card{width:220px;background:#fff;border-radius:22px;padding:26px 22px;box-shadow:0 30px 60px rgba(10,30,60,.35);transform:rotate(4deg)}
  .cb-card-logo{font-family:'Aptos Display';font-weight:700;font-size:15px;color:#0F2A52;letter-spacing:.02em;margin-bottom:22px}
  .cb-row{display:flex;align-items:center;gap:12px;margin-bottom:15px}
  .cb-row .sq{width:20px;height:20px;border-radius:6px;border:2px solid #D8E4F5;flex:none}
  .cb-row .bar{flex:1;height:8px;border-radius:4px;background:#EDF2FA}
  .cb-row.done .sq{background:#2E9BFF;border-color:#2E9BFF}
  @media(max-width:900px){
    .cb-wrap{grid-template-columns:1fr;text-align:left}
    .cb-media{display:none}
    .cb-form{flex-direction:column;max-width:100%}
    .cb-btn{width:100%;justify-content:center}
  }


  .steps-row{display:flex;align-items:flex-start;justify-content:center;gap:0;max-width:1000px;margin:70px auto 40px;flex-wrap:wrap}
  .steps-row .step{width:230px;text-align:center;padding:0 12px}
  .steps-row .step .tnum{width:52px;height:52px;border-radius:50%;background:linear-gradient(135deg,#2E9BFF,#1E6FD0);display:flex;align-items:center;justify-content:center;font-family:'Aptos Display';font-weight:700;font-size:21px;color:#fff;margin:0 auto 20px;box-shadow:0 10px 24px rgba(46,155,255,.35)}
  .steps-row .step h3{font-family:'Aptos Display';font-weight:700;font-size:18px;color:var(--navy);margin-bottom:10px}
  .steps-row .step p{font-size:14.5px;color:#4C6486;line-height:1.55;margin:0}
  .steps-row .step-line{flex:1;height:2px;background:var(--border-azure);margin-top:26px;min-width:24px;max-width:80px}
  @media(max-width:820px){
    .steps-row{flex-direction:column;align-items:center}
    .steps-row .step-line{display:none}
    .steps-row .step{margin-bottom:6px}
  }

  .stats-band{background:var(--navy-deep);padding:40px 0}
  .stats-band .stat .num{color:#fff}
  .stats-band .stat .lab{color:rgba(255,255,255,.7)}
  .stats-inner{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:24px 40px}
  .stats-lead{color:rgba(255,255,255,.75);font-size:15px;max-width:240px;line-height:1.4;margin:0;flex:none}
  .stats-inner .stats{margin:0;flex:1;justify-content:flex-end}
  .media-band{background:#F4F8FD;padding:22px 0}
  .media .t{margin-bottom:14px}
  .trust .wrap{padding-bottom:20px}
  @media(max-width:820px){
    .stats-inner{justify-content:center;text-align:center}
    .stats-inner .stats{justify-content:center}
    .stats-lead{max-width:100%;text-align:center}
  }

  #header-outer, #header-space{display:none!important}
  .container-wrap{padding-top:0!important}
  #ajax-content-wrap, .ocm-effect-wrap, .ocm-effect-wrap-inner{padding-top:0!important;margin-top:0!important;background:transparent!important}
  body.page-id-73136{margin:0!important;padding:0!important}
  .promo{margin:0}
  .nav{margin:0}

  /* ===== inner pages (Equipo/Legal/Tarifas/Inspección/Home inspector) ===== */
  .page-hero{background:var(--navy-deep);padding:64px 0 56px;border-bottom:1px solid var(--border)}
  .page-hero .headline{font-size:46px;margin-bottom:16px}
  .page-hero .lede{color:var(--muted);max-width:640px;margin-bottom:28px}
  @media(max-width:680px){.page-hero .headline{font-size:32px}}

  .body-text{font-size:17px;line-height:1.65;max-width:720px}
  .body-text,.body-text p{color:var(--muted)!important}
  .body-text + .body-text{margin-top:16px}
  .light .body-text,.light .body-text p{color:#3A4F6E!important}

  .manifesto{text-align:center}
  .manifesto .headline{font-size:34px;margin-bottom:34px}
  .manifesto p{font-family:'Aptos Display';font-size:22px;line-height:1.7;color:#EAF3FF;max-width:640px;margin:0 auto}
  @media(max-width:680px){.manifesto p{font-size:17px;line-height:1.6}}

  .team-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:44px;max-width:640px;margin-left:auto;margin-right:auto}
  .team-card{background:var(--surface);border:1px solid var(--border);border-radius:22px;padding:32px 24px;text-align:center}
  .team-card img{width:120px;height:120px;border-radius:50%;object-fit:cover;margin:0 auto 18px;border:2px solid var(--border-azure)}
  .team-card h3{font-family:'Aptos Display';font-weight:700;color:#fff;font-size:19px;margin-bottom:4px}
  .team-card .role{color:var(--azure-bright);font-size:14px;font-weight:600}
  @media(max-width:680px){.team-grid{grid-template-columns:1fr;max-width:320px}}

  .hiring-band{text-align:center}
  .hiring-band .eyebrow{justify-content:center;display:flex}
  .hiring-band .mail{font-family:'Aptos Display';font-weight:700;font-size:32px;color:#fff;margin:14px 0 30px}
  @media(max-width:680px){.hiring-band .mail{font-size:22px}}

  .legal-doc{max-width:820px}
  .legal-doc h2{font-family:'Aptos Display';font-weight:700;color:var(--navy);font-size:24px;margin:34px 0 14px}
  .legal-doc h2:first-child{margin-top:0}
  .legal-doc p,.legal-doc li{color:#3A4F6E;font-size:15.5px;line-height:1.65}
  .legal-doc ul{margin:0 0 18px 20px}
  .legal-doc li{margin-bottom:8px}

  .price-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:44px}
  .price-card{background:var(--surface);border:1px solid var(--border);border-radius:22px;padding:34px 28px;display:flex;flex-direction:column}
  .price-card.pop{border-color:var(--border-azure);background:linear-gradient(180deg,rgba(46,155,255,.14) 0%,rgba(46,155,255,.03) 100%),var(--surface);box-shadow:0 18px 40px rgba(0,0,0,.35)}
  .price-card h3{font-family:'Aptos Display';font-weight:700;color:#fff;font-size:20px;margin-bottom:6px}
  .price-card .price{font-family:'Aptos Display';font-weight:700;color:var(--azure-bright);font-size:36px;margin:10px 0 18px}
  .price-card .price span{font-size:15px;color:var(--muted);font-weight:400}
  .price-card .hsmchecklist{margin-bottom:26px;flex:1}
  .price-card .hsmchecklist li{font-size:15px}
  @media(max-width:900px){.price-grid{grid-template-columns:1fr}}

  .step-grid{display:flex;justify-content:center;gap:40px;flex-wrap:wrap;margin-top:48px}
  .step-grid .step{width:230px;text-align:center;padding:0 12px}
  .step-grid .num{width:52px;height:52px;border-radius:50%;background:var(--azure);color:#fff;font-family:'Aptos Display';font-weight:700;font-size:20px;display:flex;align-items:center;justify-content:center;margin:0 auto 16px}
  .step-grid h3{font-family:'Aptos Display';font-weight:700;color:#fff;font-size:18px;margin-bottom:8px}
  .step-grid p{color:var(--muted);font-size:15px;line-height:1.5}

  .city-pill-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:32px}
  .city-pill-row a{background:var(--surface);border:1px solid var(--border);color:#EAF3FF;text-decoration:none;font-size:14px;padding:9px 16px;border-radius:999px;transition:border-color .15s}
  .city-pill-row a:hover{border-color:var(--border-azure)}

  /* ===== barra fija móvil: llamar / WhatsApp / programar ===== */
  .mobile-cta-bar{display:none;position:fixed;bottom:0;left:0;right:0;z-index:200;background:#fff;border-top:1px solid #E3ECF8;align-items:center;gap:12px;padding:10px 16px;box-shadow:0 -6px 20px rgba(10,30,60,.12)}
  .mobile-cta-bar .call,.mobile-cta-bar .wa{flex:none;width:44px;height:44px;border-radius:50%;display:flex;align-items:center;justify-content:center;text-decoration:none}
  .mobile-cta-bar .call{background:var(--navy-deep)}
  .mobile-cta-bar .call svg{width:20px;height:20px;stroke:#fff;fill:none;stroke-width:2.2}
  .mobile-cta-bar .wa{background:#25D366}
  .mobile-cta-bar .wa svg{width:22px;height:22px}
  .mobile-cta-bar .book{flex:1;background:var(--navy-deep);color:#fff;text-align:center;padding:13px;border-radius:12px;font-weight:700;font-size:15px;text-decoration:none}
  @media(max-width:680px){.mobile-cta-bar{display:flex}body{padding-bottom:72px}}

  /* ===== tarifas (grid de 8 tramos) ===== */
  .tarifa-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:48px}
  .tarifa-card{position:relative;background:var(--surface);border:1px solid var(--border);border-radius:20px;padding:28px 22px;text-align:center;transition:transform .18s ease,border-color .18s ease}
  .tarifa-card:hover{transform:translateY(-4px);border-color:var(--border-azure)}
  .tarifa-card.pop{border-color:var(--border-azure);background:linear-gradient(180deg,rgba(46,155,255,.16) 0%,rgba(46,155,255,.03) 100%),var(--surface);box-shadow:0 18px 40px rgba(0,0,0,.35)}
  .tarifa-card .ribbon{position:absolute;top:-12px;left:50%;transform:translateX(-50%);background:var(--azure);color:#fff;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:5px 14px;border-radius:999px;white-space:nowrap}
  .tarifa-card .m2{color:var(--muted);font-size:13.5px;font-weight:600;letter-spacing:.03em;text-transform:uppercase;margin-bottom:12px}
  .tarifa-card .price{font-family:'Aptos Display';font-weight:700;color:#fff;font-size:30px;margin-bottom:16px}
  .tarifa-card .price sup{font-size:15px;color:var(--azure-bright);font-weight:700;top:-.6em}
  .tarifa-card a.mini-cta{display:inline-flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:12px 16px;border-radius:12px;background:rgba(46,155,255,.14);border:1px solid var(--border-azure);color:#fff;text-decoration:none;font-size:14px;font-weight:700;transition:background .15s}
  .tarifa-card a.mini-cta:hover{background:var(--azure)}
  @media(max-width:900px){.tarifa-grid{grid-template-columns:repeat(2,1fr)}}
  @media(max-width:520px){.tarifa-grid{grid-template-columns:1fr}}

  .catastro-steps{counter-reset:cs;margin-top:32px;max-width:640px}
  .catastro-steps li{counter-increment:cs;list-style:none;display:flex;gap:16px;margin-bottom:18px;align-items:flex-start}
  .catastro-steps li::before{content:counter(cs);flex:none;width:34px;height:34px;border-radius:50%;background:var(--azure);color:#fff;font-family:'Aptos Display';font-weight:700;font-size:15px;display:flex;align-items:center;justify-content:center}
  .catastro-steps li span{color:var(--muted);font-size:16px;line-height:1.5;padding-top:5px}
  .catastro-steps{padding-left:0}

  .benefit-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:40px}
  .benefit-grid .card{padding:26px 24px}
  @media(max-width:820px){.benefit-grid{grid-template-columns:1fr}}

  /* ===== home-inspector: herramientas + certificación ===== */
  .tool-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:44px}
  .tool-card{background:var(--surface);border:1px solid var(--border);border-radius:18px;padding:24px 16px;text-align:center}
  .tool-card .ic{margin:0 auto 14px}
  .tool-card .label{color:#EAF3FF;font-size:14.5px;font-weight:600;line-height:1.3}
  @media(max-width:900px){.tool-grid{grid-template-columns:repeat(2,1fr)}}

  .cert-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-top:44px}
  .cert-card{background:var(--surface);border:1px solid var(--border);border-radius:20px;padding:28px 22px}
  .cert-card .badge{width:44px;height:44px;border-radius:50%;display:flex;align-items:center;justify-content:center;margin-bottom:16px;font-family:'Aptos Display';font-weight:700;color:#0A1E3C}
  .cert-card.platinum .badge{background:linear-gradient(135deg,#E8EEF5,#B9C6D6)}
  .cert-card.gold .badge{background:linear-gradient(135deg,#F5D77C,#C99A2E);color:#3A2C05}
  .cert-card.silver .badge{background:linear-gradient(135deg,#DCE3EC,#9AA9BC)}
  .cert-card.verified .badge{background:linear-gradient(135deg,#7FD3A6,#2E9BFF);color:#08240F}
  .cert-card h3{font-family:'Aptos Display';font-weight:700;color:#fff;font-size:17px;margin-bottom:8px}
  .cert-card p{color:var(--muted);font-size:14.5px;line-height:1.5}
  @media(max-width:900px){.cert-grid{grid-template-columns:1fr 1fr}}
  @media(max-width:560px){.cert-grid{grid-template-columns:1fr}}

  .tool-detail{max-width:820px}
  .tool-detail h3{font-family:'Aptos Display';font-weight:700;color:var(--navy);font-size:18px;margin:26px 0 8px}
  .tool-detail h3:first-child{margin-top:0}
  .tool-detail p{color:#3A4F6E;font-size:15.5px;line-height:1.6}

/* ==========================================================================
   GRAVITY FORMS CUSTOM THEME STYLING
   ========================================================================== */
.gform_wrapper {
	font-family: 'Aptos', sans-serif !important;
}
.gform_wrapper form {
	margin: 0 !important;
}
.gform_wrapper .gform_heading {
	margin-bottom: 20px !important;
}
.gform_wrapper .gfield_label {
	color: #EAF3FF !important;
	font-weight: 700 !important;
	font-size: 14px !important;
	margin-bottom: 8px !important;
}
.gform_wrapper input[type='text'],
.gform_wrapper input[type='email'],
.gform_wrapper input[type='tel'],
.gform_wrapper input[type='url'],
.gform_wrapper input[type='number'],
.gform_wrapper select,
.gform_wrapper textarea {
	width: 100% !important;
	background: rgba(255,255,255,0.06) !important;
	border: 1px solid rgba(255,255,255,0.15) !important;
	border-radius: 12px !important;
	padding: 14px 18px !important;
	color: #fff !important;
	font-size: 15px !important;
	font-family: 'Aptos', sans-serif !important;
	outline: none !important;
	transition: border-color 0.15s ease, background 0.15s ease !important;
	box-shadow: none !important;
}
.gform_wrapper input:focus,
.gform_wrapper select:focus,
.gform_wrapper textarea:focus {
	border-color: #2E9BFF !important;
	background: rgba(46,155,255,0.08) !important;
}
.gform_wrapper .gform_footer,
.gform_wrapper .gform_page_footer {
	margin-top: 24px !important;
	padding-top: 0 !important;
	text-align: center !important;
}
.gform_wrapper input[type='submit'],
.gform_wrapper button[type='submit'],
.gform_wrapper .gform_button,
.gform_wrapper .gform_page_footer input[type='submit'],
.gform_wrapper .gform_page_footer button[type='submit'] {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 100% !important;
	padding: 16px 28px !important;
	border-radius: 14px !important;
	border: 0 !important;
	background: linear-gradient(135deg, #2E9BFF 0%, #4AABFF 100%) !important;
	color: #fff !important;
	font-weight: 700 !important;
	font-size: 15.5px !important;
	font-family: 'Aptos', sans-serif !important;
	letter-spacing: 0.03em !important;
	text-transform: uppercase !important;
	box-shadow: 0 10px 28px rgba(46,155,255,0.4) !important;
	cursor: pointer !important;
	transition: transform 0.18s ease, box-shadow 0.18s ease !important;
	margin: 0 !important;
}
.gform_wrapper input[type='submit']:hover,
.gform_wrapper button[type='submit']:hover,
.gform_wrapper .gform_button:hover {
	transform: translateY(-2px) !important;
	box-shadow: 0 16px 36px rgba(46,155,255,0.5) !important;
}


/* ==========================================================================
   WPCADASTRE HAUSUM THEME INTEGRATION
   ========================================================================== */
.wp-cadastre-wrap {
	background: rgba(15, 42, 82, 0.6) !important;
	border: 1px solid rgba(46, 155, 255, 0.25) !important;
	border-radius: 18px !important;
	color: #fff !important;
}
.wp-cadastre-input-wrapper {
	background: rgba(10, 30, 60, 0.8) !important;
	border-color: rgba(46, 155, 255, 0.3) !important;
}
#wp-cadastre-search-input {
	color: #fff !important;
}
#wp-cadastre-search-input::placeholder {
	color: #9DB4D6 !important;
}
.wp-cadastre-drawer {
	background: #0A1E3C !important;
	border-color: rgba(46, 155, 255, 0.25) !important;
	color: #EAF3FF !important;
}
.wp-cadastre-detail-item {
	background: rgba(255,255,255,0.04) !important;
	border-color: rgba(255,255,255,0.1) !important;
}
.wp-cadastre-detail-item .value {
	color: #fff !important;
}
.wp-cadastre-detail-item .label {
	color: #9DB4D6 !important;
}
.wp-cadastre-building-header h3 {
	color: #fff !important;
}
.wp-cadastre-info-helper h3 {
	color: #fff !important;
}

.foot-legal-links a:hover {
	color: #ffffff !important;
	text-decoration: underline !important;
}
