/* ============================================================
   Nuevas secciones (Proceso y FAQ) — alineadas a la propuesta
   de rediseño (mockup Julio 2026).
   Hoja separada para no tocar el pipeline de Prepros/SCSS.
   Cuando tu desarrollador tenga oportunidad, estos estilos se
   pueden migrar a scss/layout/_estructura.scss como partial.
   Paleta usada: coincide con scss/settings/_settings.scss
   ============================================================ */

/* ============================================================
   Recursos - detalle: primera oracion del texto en negrilla/
      tamano mayor + layout texto-izquierda / imagen-derecha
         (instruccion Elia, punto pendiente rediseno layout recursos).
            ============================================================ */
            .recu-detalle__copy .recu-detalle__lead {
                    display: block;
                        font-weight: 700 !important;
                            font-size: 1.2em !important;
                                line-height: 1.4;
                                    margin-bottom: 12px;
                                        color: #0A2240;
                                        }
                                        @media only screen and (min-width: 992px) {
                                                .detail--std .detail__content .detail__content--margin {
                                                            display: flex;
                                                                    flex-direction: row-reverse;
                                                                            align-items: flex-start;
                                                                                    gap: 40px;
                                                                                        }
                                                                                            .detail--std .detail__content .detail__content--margin .recu-detalle__media-wrap {
                                                                                                        flex: 0 0 44%;
                                                                                                                max-width: 44%;
                                                                                                                        margin: 0;
                                                                                                                            }
                                                                                                                                .detail--std .detail__content .detail__content--margin .recu-detalle__texto {
                                                                                                                                            flex: 1 1 auto;
                                                                                                                                                    min-width: 0;
                                                                                                                                                        }
                                                                                                                                                        }
                                                                                                                                                        
                                                                                                                                                        .proceso {
	background-color: #F4F4F4;
	padding: 40px 0;
}
.proceso .wide-central {
	max-width: 1140px;
	margin: 0 auto;
	padding: 0 20px;
}
.proceso h2 {
	color: #0A2240;
	text-align: center;
	font-family: 'Montserrat', sans-serif;
	margin-bottom: 30px;
}
.proceso__pasos {
	display: flex;
	flex-direction: column;
	gap: 24px;
	list-style: none;
	margin: 0;
	padding: 0;
}
@media only screen and (min-width: 768px) {
	.proceso__pasos {
		flex-direction: row;
	}
}
.proceso__paso {
	flex: 1;
	background: #FFFFFF;
	border: 1px solid #D9D8D6;
	border-radius: 8px;
	padding: 30px 24px;
	text-align: left;
}
.proceso__paso .paso-numero {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 36px;
	height: 36px;
	border-radius: 50%;
	background: #EC7700;
	color: #FFFFFF;
	font-family: 'Montserrat', sans-serif;
	font-weight: 700;
	margin: 0 auto 16px;
}
.proceso__paso h3 {
	color: #0A2240;
	font-family: 'Montserrat', sans-serif;
	margin-bottom: 8px;
	font-size: 1.1rem;
}
.proceso__paso p {
	color: #4F5146;
	font-size: 0.95rem;
	line-height: 1.5;
	margin: 0;
}

/* ------------------ FAQ ------------------ */
.faq {
	padding: 40px 0;
}
.faq .wide-central {
	max-width: 900px;
	margin: 0 auto;
	padding: 0 20px;
}
.faq h2 {
	color: #0A2240;
	text-align: center;
	font-family: 'Montserrat', sans-serif;
	margin-bottom: 24px;
}
.faq__item {
	border-bottom: 1px solid #D9D8D6;
}
.faq__item summary {
	cursor: pointer;
	padding: 16px 4px;
	font-family: 'Montserrat', sans-serif;
	font-weight: 600;
	color: #0A2240;
	list-style: none;
	position: relative;
	padding-right: 30px;
}
.faq__item summary::-webkit-details-marker {
	display: none;
}
.faq__item summary::after {
	content: "+";
	position: absolute;
	right: 4px;
	top: 16px;
	color: #EC7700;
	font-size: 1.3rem;
	font-weight: 700;
}
.faq__item[open] summary::after {
	content: "\2212";
}
.faq__item p {
	padding: 0 4px 16px;
	color: #4F5146;
	line-height: 1.6;
	margin: 0;
}

/* ------------------ Nav CTA ------------------ */
.nav-cta {
	display: none;
}
.boton__primario.nav-cta {
	background-color: #EC7700;
	color: #fff;
}
.boton__primario.nav-cta:hover {
	background-color: #0A2240;
	color: #fff;
}
@media only screen and (min-width: 1024px) {
	.nav-cta {
		display: inline-block;
		align-self: center;
		margin-left: auto;
		padding: 10px 20px;
		white-space: nowrap;
	}
	#dl-menu.dl-menuwrapper {
		margin-right: 28px;
	}
}

/* ------------------ Nav: resaltado activo en naranja, línea completa ------------------ */
.nav .re-ul-principal li a.active p,
.nav .re-ul-principal li a.active div p {
	text-decoration-line: underline !important;
	text-decoration-style: solid !important;
	text-decoration-color: #EC7700 !important;
	text-decoration-thickness: 2px !important;
	text-underline-offset: 6px !important;
	text-decoration-skip-ink: none !important;
}

/* ------------------ Nav: hover también en naranja, línea completa (mismo bug que .active) ------------------ */
.nav .re-ul-principal li div p:hover,
.nav .re-ul-principal li a p:hover {
	text-decoration-line: underline !important;
	text-decoration-style: solid !important;
	text-decoration-color: #EC7700 !important;
	text-decoration-thickness: 2px !important;
	text-underline-offset: 6px !important;
	text-decoration-skip-ink: none !important;
}

/* ------------------ Iconos sociales barra superior ------------------ */
.header-social {
	display: none;
	list-style: none;
	margin: 4px 0 0;
	padding: 0;
}
@media only screen and (min-width: 768px) {
	.header-social {
		display: inline-flex;
		align-items: center;
		gap: 12px;
		margin: 0 0 0 20px;
		vertical-align: middle;
	}
	.header-social__label {
		color: #fff;
		font-size: 0.8rem;
		font-weight: 600;
		text-transform: uppercase;
		letter-spacing: 0.05em;
		margin-right: 2px;
	}
	.header-social li a {
		color: #fff;
		font-size: 0.95rem;
	}
	.header-social li a:hover {
		color: #C7D7E5;
	}
}

/* ------------------ Hero con panel (mockup) ------------------ */
.hero-navy-wrap {
	background: #0A2240;
}
.hero-navy-wrap .index__hero {
	padding: 60px 0;
}
.hero-navy-wrap .index__hero__text h1,
.hero-navy-wrap .index__hero__text h1 * {
	color: #fff !important;
}
.hero-navy-wrap .index__hero__text h1 span {
	color: #7BA0C4 !important;
}
.hero-navy-wrap .hero__text p {
	color: #C5D4E2 !important;
}
.hero--mockup {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 30px;
}
.hero--mockup .index__hero__text {
	flex: 1 1 100%;
}
.hero__eyebrow {
	color: #EC7700;
	font-family: 'Montserrat', sans-serif;
	font-weight: 700;
	letter-spacing: 0.05em;
	text-transform: uppercase;
	font-size: 0.8rem;
	margin-bottom: 8px;
}
.hero__botones {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	justify-content: center;
}
.hero__botones .boton__primario.primero {
	background-color: #EC7700;
}
.hero__botones .boton__primario.primero:hover {
	background-color: #fff;
	color: #0A2240;
}
.hero__botones .boton__secundario {
	background-color: transparent;
	border: 1px solid #fff;
	color: #fff;
}
.hero__botones .boton__secundario:hover {
	background-color: #fff;
	color: #0A2240;
}
.hero__panel {
	flex: 1 1 100%;
	background: rgba(255,255,255,0.06);
	border: 1px solid rgba(255,255,255,0.15);
	color: #fff;
	border-radius: 12px;
	padding: 30px;
	max-width: 420px;
	margin: 0 auto;
}
.hero__panel-logo {
	width: 46px;
	max-width: 60%;
	margin-bottom: 20px;
}

/* ------------------ Marca de agua del hero (Inicio) ------------------ */
.hero-navy-wrap {
	position: relative;
	overflow: hidden;
}
.hero-navy-wrap .hero__watermark {
	position: absolute;
	right: -60px;
	bottom: -40px;
	width: 380px;
	max-width: 45%;
	height: auto;
	opacity: 0.07;
	pointer-events: none;
	z-index: 0;
	user-select: none;
}
.hero-navy-wrap .index__hero {
	position: relative;
	z-index: 1;
}

/* ------------------ Logo horizontal en nav ------------------ */
.nav-content__logo img {
	height: 34px;
	width: auto;
}
.hero__panel h2 {
	color: #fff;
	font-family: 'Montserrat', sans-serif;
	font-size: 1.2rem;
	margin-bottom: 8px;
}
.hero__panel p {
	color: #C5D4E2;
	font-size: 0.9rem;
	margin-bottom: 16px;
}
.hero__panel-lista {
	list-style: none;
	margin: 0;
	padding: 0;
}
.hero__panel-lista li {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	margin-bottom: 12px;
	font-size: 0.9rem;
	color: #FFFFFF;
}
.hero__panel-lista i {
	color: #EC7700;
	margin-top: 3px;
}
@media only screen and (min-width: 1024px) {
	.hero--mockup .index__hero__text {
		flex: 1 1 55%;
	}
	.hero__panel {
		flex: 1 1 35%;
		margin: 0;
	}
	.hero__botones {
		justify-content: flex-start;
	}
}

/* ------------------ Barra de cifras ------------------ */
.cifras {
	background: #C7D7E5;
	padding: 44px 0;
	border-top: 1px solid rgba(10,34,64,0.08);
}
.cifras-margen {
	max-width: 1140px;
	margin: 0 auto;
	padding: 0 20px;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-around;
	gap: 30px;
	text-align: center;
}
.cifra {
	flex: 1 1 auto;
	min-width: 120px;
	padding: 0 20px;
	position: relative;
}
.cifra + .cifra::before {
	content: "";
	position: absolute;
	left: -15px;
	top: 10%;
	height: 80%;
	width: 1px;
	background: rgba(10,34,64,0.15);
}
@media only screen and (max-width: 640px) {
	.cifra + .cifra::before {
		display: none;
	}
}
.cifra-num {
	color: #EC7700;
	font-family: 'Montserrat', sans-serif;
	font-weight: 800;
	font-size: 2.6rem;
	line-height: 1;
	margin: 0;
}
.cifra-num span {
	color: #EC7700;
}
.cifra-label {
	color: #0A2240;
	font-size: 0.9rem;
	font-weight: 600;
	letter-spacing: 0.02em;
	margin: 8px 0 0;
}

/* ------------------ Contacto: tarjetas de info ------------------ */
.contact-info-card {
	background: #F8F8F8;
	border: 1px solid #D9D8D6;
	border-radius: 8px;
	padding: 16px 20px;
	margin-bottom: 12px;
}
.contact-info-card strong {
	display: block;
	color: #0A2240;
	font-family: 'Montserrat', sans-serif;
	font-size: 0.85rem;
	margin-bottom: 4px;
}
.contact-info-card strong i {
	color: #EC7700;
	margin-right: 6px;
}
.contact-info-card__body a {
	display: inline !important;
}
.contact-info-list {
	list-style: none;
}
#ServicioInteres {
	width: 100%;
	padding: 10px;
	border: 1px solid #D9D8D6;
	border-radius: 4px;
	font-family: 'Montserrat', sans-serif;
	color: #1F201C;
	background: #fff;
}

/* ------------------ Nosotros: cita destacada ------------------ */
.aboutUs__quote {
	border-left: 4px solid #EC7700;
	padding: 16px 24px;
	margin: 24px 0;
	font-size: 1.1rem;
	color: #0A2240;
	font-style: italic;
	background: #F4F4F4;
}
.aboutUs__quote strong {
	font-style: normal;
	color: #EC7700;
}
.aboutUs-intro {
	max-width: 900px;
	padding: 50px 20px 10px;
	margin: 0 auto;
	text-align: center;
}
.aboutUs__quote--center {
	border-left: none;
	background: none;
	padding: 0;
	margin: 0;
	font-size: 1.3rem;
	line-height: 1.6;
}

/* ------------------ Nosotros: misión + checklist ------------------ */
.aboutUs-mision {
	max-width: 900px;
	padding: 40px 20px 10px;
	margin: 0 auto;
	text-align: center;
}
.aboutUs-mision p {
	color: #4F5146;
	line-height: 1.6;
	margin: 0 0 16px;
}
.aboutUs__checklist {
	list-style: none;
	margin: 20px 0 0;
	padding: 0;
	display: inline-grid;
	gap: 10px;
	text-align: left;
}
.aboutUs__checklist li {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	color: #1F201C;
}
.aboutUs__checklist i {
	color: #EC7700;
	margin-top: 4px;
}

/* ------------------ Nosotros: tarjetas de áreas de práctica ------------------ */
.aboutUs-grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 24px;
	padding: 40px 20px;
	max-width: 1140px;
	margin: 0 auto;
}
@media only screen and (min-width: 768px) {
	.aboutUs-grid {
		grid-template-columns: repeat(2, 1fr);
	}
}
.aboutUs-card {
	border: 1px solid #D9D8D6;
	border-radius: 10px;
	padding: 30px;
	background: #fff;
}
.aboutUs-card__icon {
	width: 48px;
	height: 48px;
	border-radius: 8px;
	background: #EAF0F7;
	color: #0A2240;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 1.3rem;
	margin-bottom: 4px;
}
.aboutUs-card h3 {
	color: #0A2240;
	font-family: 'Montserrat', sans-serif;
	font-size: 1.15rem;
	margin: 0 0 10px;
}
.aboutUs-card p {
	color: #4F5146;
	line-height: 1.6;
	margin: 0 0 16px;
}
.aboutUs-card ul {
	list-style: none;
	margin: 0;
	padding: 0;
}
.aboutUs-card ul li {
	position: relative;
	padding-left: 18px;
	margin-bottom: 10px;
	color: #1F201C;
	font-size: 0.92rem;
	line-height: 1.5;
}
.aboutUs-card ul li::before {
	content: "";
	position: absolute;
	left: 0;
	top: 8px;
	width: 6px;
	height: 6px;
	border-radius: 50%;
	background: #EC7700;
}

/* ------------------ Nosotros: diferenciador ------------------ */
.aboutUs-diff {
	display: flex;
	flex-direction: column;
	gap: 30px;
	padding: 10px 20px 60px;
	max-width: 1140px;
	margin: 0 auto;
}
.aboutUs-diff__img {
	flex: 1 1 100%;
}
.aboutUs-diff__img img {
	width: 100%;
	border-radius: 10px;
	display: block;
}
.aboutUs-diff__text {
	flex: 1 1 100%;
}
.aboutUs-diff__eyebrow {
	color: #EC7700;
	font-family: 'Montserrat', sans-serif;
	font-weight: 700;
	letter-spacing: 0.05em;
	text-transform: uppercase;
	font-size: 0.8rem;
	margin: 0 0 8px;
}
.aboutUs-diff__text h2 {
	color: #0A2240;
	margin: 0 0 12px;
}
.aboutUs-diff__text > p {
	color: #4F5146;
	line-height: 1.6;
}
.aboutUs-diff__text .aboutUs__checklist {
	display: block;
	margin: 16px 0 24px;
}
@media only screen and (min-width: 1024px) {
	.aboutUs-diff {
		flex-direction: row;
		align-items: center;
	}
	.aboutUs-diff__img {
		flex: 1 1 45%;
	}
	.aboutUs-diff__text {
		flex: 1 1 55%;
	}
}

/* ------------------ Servicios: tarjetas de paquetes (Marcas) ------------------
   Estilos independientes de .index__content porque las reglas .paquetes de
   scss/layout/_estructura.scss están anidadas SOLO bajo .index__content y no
   alcanzan a servicios.php. Misma apariencia visual que en Inicio. */
.paquetes.wide-cien {
	background-color: #F4F4F4;
	padding: 40px 0;
}
.paquetes .paquetes-margen {
	text-align: center;
}
.paquetes .paquetes-margen > h2 {
	color: #0A2240;
	font-family: 'Montserrat', sans-serif;
}
.servicios-categoria {
	text-align: center;
}
.servicios-otros-titulo {
	color: #0A2240;
	font-family: 'Montserrat', sans-serif;
	margin: 0 0 20px;
}
.paquetes .paquetes-tarjetas {
	display: flex;
	flex-direction: column;
	gap: 0;
	margin-top: 30px;
}
.paquetes .paquetes-tarjeta {
	width: 100%;
	max-width: 460px;
	border: 1px solid #D9D8D6;
	border-radius: 8px;
	margin: 0 auto 24px;
	padding: 30px 24px;
	background-color: #fff;
	text-align: center;
}
.paquetes .paquetes-tarjeta img {
	width: 48px;
	display: block;
	margin: 0 auto;
}
.paquetes .paquete-nombre {
	color: #0A2240;
	font-family: 'Montserrat', sans-serif;
	font-size: 1.2rem;
	font-weight: 600;
	margin: 12px 0;
}
.paquetes .paquete-descrip {
	margin-bottom: 12px;
	color: #4F5146;
}
.paquetes .paquete-descrip p {
	margin: 0;
}
.paquetes .paquete-precio {
	color: #EC7700;
	margin-bottom: 16px;
}
.paquetes .paquete-precio strong {
	font-size: 1.2rem;
	font-weight: 600;
	color: #0A2240;
}
@media only screen and (min-width: 1024px) {
	.paquetes .paquetes-tarjetas {
		flex-direction: row;
		justify-content: space-between;
		gap: 24px;
	}
	.paquetes .paquetes-tarjeta {
		margin: 0;
		width: 30%;
	}
}

/* ------------------ Hero navy de páginas internas (Servicios/Nosotros/Contacto) ------------------ */
.page-hero {
	background-color: #0A2240;
	padding: 50px 0 44px;
	position: relative;
	overflow: hidden;
}
.page-hero .hero__watermark {
	position: absolute;
	right: -40px;
	bottom: -30px;
	width: 260px;
	max-width: 40%;
	height: auto;
	opacity: 0.07;
	pointer-events: none;
	z-index: 0;
	user-select: none;
}
.page-hero .wide-central {
	position: relative;
	z-index: 1;
}
.page-hero .wide-central {
	max-width: 1140px;
	margin: 0 auto;
	padding: 0 20px;
}
.page-hero .bread-crumbs {
	margin-bottom: 16px;
}
.page-hero .bread-crumbs a {
	color: #C5D4E2;
}
.page-hero .bread-crumbs a:hover {
	color: #fff;
}
.page-hero .bread-crumbs i {
	color: #C5D4E2;
}
.page-hero .bread-crumbs mark {
	background: none;
	color: #EC7700;
}
.page-hero__eyebrow {
	color: #EC7700;
	font-family: 'Montserrat', sans-serif;
	font-weight: 700;
	letter-spacing: 0.05em;
	text-transform: uppercase;
	font-size: 0.8rem;
	margin-bottom: 8px;
}
.page-hero h1 {
	color: #fff;
	margin: 0 0 12px;
}
.page-hero p {
	color: #C5D4E2;
	max-width: 640px;
	margin: 0;
}

/* ------------------ Servicios: pills de categoría ------------------ */
.svc-pills {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	justify-content: center;
	padding: 30px 20px 0;
}
.svc-pill {
	display: inline-block;
	border: 1px solid #D9D8D6;
	background: #fff;
	color: #0A2240;
	border-radius: 999px;
	padding: 8px 18px;
	font-family: 'Montserrat', sans-serif;
	font-size: 0.85rem;
	font-weight: 600;
	cursor: pointer;
}
.svc-pill.is-activa {
	background: #0A2240;
	border-color: #0A2240;
	color: #fff;
}

/* ------------------ Servicios: catálogo unificado de tarjetas ------------------ */
.svc-grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 24px;
	padding: 30px 20px 50px;
	max-width: 1140px;
	margin: 0 auto;
}
@media only screen and (min-width: 768px) {
	.svc-grid {
		grid-template-columns: repeat(2, 1fr);
	}
}
@media only screen and (min-width: 1024px) {
	.svc-grid {
		grid-template-columns: repeat(3, 1fr);
	}
}
.svc-card {
	border: 1px solid #D9D8D6;
	border-radius: 10px;
	padding: 24px;
	background: #fff;
	display: flex;
	flex-direction: column;
}
.svc-card__icon {
	width: 42px;
	height: 42px;
	border-radius: 8px;
	background: #EAF0F7;
	color: #0A2240;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 1.1rem;
	margin: 0 auto 4px auto;
}
.svc-card__cat {
	color: #EC7700;
	font-family: 'Montserrat', sans-serif;
	font-weight: 700;
	letter-spacing: 0.05em;
	text-transform: uppercase;
	font-size: 0.7rem;
	margin: 0 0 6px;
}
.svc-card__titulo {
	color: #0A2240;
	font-family: 'Montserrat', sans-serif;
	font-size: 1.05rem;
	font-weight: 600;
	margin: 0 0 8px;
	text-align: left;
	text-transform: none;
}
.svc-card__desc {
	color: #4F5146;
	font-size: 0.9rem;
	line-height: 1.5;
	margin: 0 0 16px;
}
.svc-card__footer {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 10px;
	border-top: 1px solid #F0EFED;
	padding-top: 14px;
	margin-top: auto;
}
.svc-card__precio {
	color: #0A2240;
	font-weight: 700;
	font-size: 0.9rem;
}
.svc-card__precio small {
	display: block;
	color: #8A8D85;
	font-weight: 400;
	font-size: 0.7rem;
}
.svc-card__link {
	color: #EC7700;
	font-weight: 600;
	font-size: 0.85rem;
	white-space: nowrap;
}
.svc-card__footer form {
	margin: 0;
}
.svc-card__footer button {
	background: none;
	border: none;
	color: #EC7700;
	font-weight: 600;
	font-size: 0.85rem;
	cursor: pointer;
	font-family: 'Montserrat', sans-serif;
	padding: 0;
}

/* ------------------ Paquetes / svc-card: paso, checklist, hover interactivo (rediseño IMPI) ------------------ */
.paquete-paso,
.svc-card .paquete-paso {
	display: inline-block;
	background: #0A2240;
	color: #fff;
	font-size: 0.7rem;
	font-weight: 700;
	letter-spacing: 0.05em;
	text-transform: uppercase;
	padding: 4px 10px;
	border-radius: 999px;
	margin-bottom: 12px;
}
.paquete-incluye {
	list-style: none;
	margin: 12px 0 16px;
	padding: 0;
	text-align: left;
}
.paquete-incluye li {
	position: relative;
	padding-left: 20px;
	margin-bottom: 6px;
	font-size: 0.85rem;
	color: #4F5146;
	line-height: 1.35;
}
.paquete-incluye li::before {
	content: "\2713";
	position: absolute;
	left: 0;
	color: #EC7700;
	font-weight: 700;
}
.paquetes-tarjeta {
	transition: transform 0.2s ease, box-shadow 0.2s ease;
}
.paquetes-tarjeta:hover {
	transform: translateY(-4px);
	box-shadow: 0 12px 24px rgba(10,34,64,0.10);
}
.svc-card {
	transition: transform 0.2s ease, box-shadow 0.2s ease;
}
.svc-card:hover {
	transform: translateY(-4px);
	box-shadow: 0 12px 24px rgba(10,34,64,0.10);
}

/* ------------------ Contacto: rediseño (tarjeta de formulario, labels flotantes, iconos con badge) ------------------ */
.contact-form-card {
	background: #fff;
	border: 1px solid #D9D8D6;
	border-radius: 12px;
	padding: 28px 28px 12px;
	margin-bottom: 24px;
	box-shadow: 0 8px 24px rgba(10,34,64,0.06);
}
.contact-form-card__titulo {
	color: #0A2240;
	font-family: 'Montserrat', sans-serif;
	margin: 0 0 6px;
	font-size: 1.4rem;
	text-align: left;
}
.contact-form-card__subtitulo {
	color: #4F5146;
	font-size: 0.85rem;
	margin: 0 0 20px;
	text-align: left;
}
.contact-form-card__subtitulo i {
	color: #EC7700;
	margin-right: 6px;
}
.formulario--flotante .form-field {
	position: relative;
	margin-bottom: 18px;
}
.formulario--flotante .form-field input,
.formulario--flotante .form-field textarea {
	width: 100%;
	box-sizing: border-box;
	padding: 14px 14px 8px;
	border: 1px solid #D9D8D6;
	border-radius: 6px;
	font-family: 'Montserrat', sans-serif;
	color: #1F201C;
	background: #fff;
}
.formulario--flotante .form-field textarea {
	min-height: 110px;
	resize: vertical;
}
.formulario--flotante .form-field label {
	position: absolute;
	left: 14px;
	top: 14px;
	color: #8A8D85;
	font-size: 0.95rem;
	font-family: 'Montserrat', sans-serif;
	background: #fff;
	padding: 0 4px;
	pointer-events: none;
	transition: all 0.15s ease;
}
.formulario--flotante .form-field input:focus,
.formulario--flotante .form-field textarea:focus {
	outline: none;
	border-color: #EC7700;
}
.formulario--flotante .form-field input:focus + label,
.formulario--flotante .form-field input:not(:placeholder-shown) + label,
.formulario--flotante .form-field textarea:focus + label,
.formulario--flotante .form-field textarea:not(:placeholder-shown) + label {
	top: -9px;
	left: 10px;
	font-size: 0.72rem;
	color: #EC7700;
}
.contact-info-card {
	display: flex;
	align-items: flex-start;
	gap: 14px;
}
.contact-info-card__icon {
	flex: 0 0 auto;
	width: 40px;
	height: 40px;
	border-radius: 50%;
	background: rgba(236,119,0,0.12);
	color: #EC7700;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 1rem;
}
.contact-info-card__icon--whatsapp {
	background: rgba(37,211,102,0.14);
	color: #25D366;
}
.contact-info-card__body strong {
	display: block;
	color: #0A2240;
	font-family: 'Montserrat', sans-serif;
	font-size: 0.85rem;
	margin-bottom: 4px;
}

/* ------------------ Inicio: Por qué Molsam ------------------ */
.porque-molsam {
	background: #F8F8F8;
	padding: 48px 0;
}
.porque-molsam h2 {
	color: #0A2240;
	text-align: center;
	margin-bottom: 32px;
}
.porque-molsam__grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 24px;
}
@media only screen and (max-width: 900px) {
	.porque-molsam__grid {
		grid-template-columns: repeat(2, 1fr);
	}
}
@media only screen and (max-width: 560px) {
	.porque-molsam__grid {
		grid-template-columns: 1fr;
	}
}
.porque-molsam__item {
	background: #fff;
	border: 1px solid #D9D8D6;
	border-radius: 10px;
	padding: 24px 20px;
	text-align: center;
}
.porque-molsam__item i {
	color: #EC7700;
	font-size: 1.6rem;
	margin-bottom: 12px;
}
.porque-molsam__item h3 {
	color: #0A2240;
	font-size: 1rem;
	margin: 8px 0;
}
.porque-molsam__item p {
	color: #4F5146;
	font-size: 0.85rem;
	margin: 0;
}

/* ------------------ Nosotros: espacio de fundadora ------------------ */
.founder {
	display: flex;
	gap: 40px;
	align-items: center;
	padding: 40px 0;
	flex-wrap: wrap;
}
.founder__foto {
	flex: 0 0 260px;
	width: 260px;
	height: 260px;
	border-radius: 50%;
	overflow: hidden;
	background: #F4F4F4;
	border: 3px solid #EC7700;
}
.founder__foto img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}
.founder__foto--vacia {
	display: flex;
	align-items: center;
	justify-content: center;
}
.founder__texto {
	flex: 1 1 380px;
	min-width: 280px;
}
.founder__texto p {
	color: #4F5146;
	margin: 0 0 14px;
}
.founder__contacto {
	list-style: none;
	padding: 0;
	margin: 0 0 20px;
	display: flex;
	gap: 20px;
	flex-wrap: wrap;
}
.founder__contacto li {
	font-size: 0.9rem;
}
.founder__contacto i {
	color: #EC7700;
	margin-right: 6px;
}
.founder__contacto a {
	color: #0A2240;
	font-weight: 600;
}
.aboutUs-mvv {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 24px;
	padding: 20px 0 40px;
}
@media only screen and (max-width: 768px) {
	.aboutUs-mvv {
		grid-template-columns: 1fr;
	}
	.founder {
		flex-direction: column;
		text-align: center;
	}
	.founder__contacto {
		justify-content: center;
	}
}
.aboutUs-mvv__item {
	background: #F8F8F8;
	border-radius: 10px;
	padding: 24px;
	border-top: 3px solid #EC7700;
}
.aboutUs-mvv__item h3 {
	color: #0A2240;
	margin: 0 0 10px;
}
.aboutUs-mvv__item p {
	color: #4F5146;
	font-size: 0.9rem;
	margin: 0;
}

/* ------------------ Contacto: checkbox aviso de privacidad ------------------ */
.aviso-privacidad {
	display: flex;
	align-items: flex-start;
	gap: 8px;
	font-size: 0.8rem;
	color: #4F5146;
	cursor: pointer;
}
.aviso-privacidad input[type="checkbox"] {
	margin-top: 3px;
	flex: 0 0 auto;
}
.aviso-privacidad a {
	color: #EC7700;
	font-weight: 600;
}

/* ------------------ Eslogan oficial / sello de confianza ------------------ */
.hero__eslogan {
	color: #EC7700;
	font-weight: 600;
	font-size: 1rem;
	margin: 8px 0 0;
	font-style: italic;
}
.footer__sello {
	color: #EC7700;
	font-size: 0.8rem;
	font-weight: 600;
	margin: 12px 0 4px;
}
.footer__sello i {
	margin-right: 6px;
}
.footer__eslogan {
	color: rgba(255,255,255,0.7);
	font-size: 0.8rem;
	font-style: italic;
	margin: 0;
}

/* ------------------ Breadcrumb: pestaña activa en naranja, en mayúsculas ------------------ */
.bread-crumbs mark {
	text-transform: uppercase;
	letter-spacing: 0.3px;
}
/* ------------------ Paquetes: forzar alineación izquierda en listas de descripción (bug de centrado heredado) ------------------ */
.paquete-descrip ul,
.paquete-descrip li,
.paquete-descrip p {
	text-align: left;
}
.paquete-descrip ul {
	padding-left: 20px;
	margin: 8px 0;
}

/* ------------------ Fix: casilla de aviso de privacidad no debe heredar position absolute de las etiquetas flotantes ------------------ */
.formulario--flotante .form-field--checkbox .aviso-privacidad {
	position: static;
}

/* ------------------ Fix: fuente consistente en botones de paquetes (Inicio) ------------------ */
.boton__secundario {
	font-family: 'Montserrat', sans-serif;
}

/* ------------------ Fix: fuente consistente en botón de envío del formulario de contacto ------------------ */
input.boton__primario {
	font-family: 'Montserrat', sans-serif;
}

/* ------------------ Testimonios: tarjetas de recomendaciones ------------------ */
.testimonios {
	max-width: 1140px;
	margin: 0 auto;
	padding: 50px 20px 60px;
}
.testimonios__eyebrow {
	color: #EC7700;
	font-family: 'Montserrat', sans-serif;
	font-weight: 700;
	letter-spacing: 0.05em;
	text-transform: uppercase;
	font-size: 0.8rem;
	margin: 0 0 8px;
	text-align: center;
}
.testimonios h2 {
	color: #0A2240;
	text-align: center;
	margin: 0 0 36px;
}
.testimonios__grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
	gap: 24px;
}
.testimonio-card {
	background: #fff;
	border: 1px solid #D9D8D6;
	border-radius: 10px;
	border-top: 3px solid #EC7700;
	padding: 28px;
	display: flex;
	flex-direction: column;
}
.testimonio-card__icon {
	color: #EC7700;
	font-size: 1.4rem;
	margin-bottom: 12px;
	opacity: 0.6;
}
.testimonio-card__texto {
	color: #4F5146;
	font-style: italic;
	line-height: 1.6;
	margin: 0 0 18px;
	flex: 1;
}
.testimonio-card__nombre {
	color: #0A2240;
	font-family: 'Montserrat', sans-serif;
	font-weight: 700;
	margin: 0;
	font-size: 0.95rem;
}
.testimonio-card__cargo {
	color: #8A8D85;
	font-size: 0.82rem;
	margin: 2px 0 0;
}
.testimonios__cta {
	text-align: center;
	margin-top: 30px;
}

/* ------------------ CTA LinkedIn ------------------ */
.linkedin-cta {
	max-width: 1140px;
	margin: 0 auto 60px;
	padding: 0 20px;
}
.linkedin-cta__box {
	background: #0A2240;
	border-radius: 10px;
	padding: 32px;
	display: flex;
	align-items: center;
	gap: 24px;
	flex-wrap: wrap;
}
.linkedin-cta__icon {
	color: #EC7700;
	font-size: 2.2rem;
	flex: 0 0 auto;
}
.linkedin-cta__text {
	flex: 1 1 260px;
}
.linkedin-cta__text h3 {
	color: #fff;
	font-family: 'Montserrat', sans-serif;
	margin: 0 0 6px;
	font-size: 1.15rem;
}
.linkedin-cta__text p {
	color: rgba(255,255,255,0.8);
	margin: 0;
	line-height: 1.5;
}
.linkedin-cta__box .boton__primario {
	background-color: #EC7700;
	color: #fff;
	flex: 0 0 auto;
	margin: 0;
}
.linkedin-cta__box .boton__primario:hover {
	background-color: #fff;
	color: #0A2240;
}

/* ------------------ Ver mas testimonios: enlace en naranja ------------------ */
.testimonios__cta .enlace {
	color: #EC7700;
}
.testimonios__cta .enlace:hover {
	color: #0A2240;
}

/* ------------------ Detalle de servicio: texto uniforme (estructura pregunta / contexto / que incluye / precio / vigencia / ideal para) ------------------ */
.txt-editor p {
	margin: 0 0 18px;
	line-height: 1.6;
	color: #1F201C;
}
.txt-editor p:first-child {
	font-family: 'Montserrat', sans-serif;
	font-weight: 700;
	font-size: 1.2rem;
	color: #0A2240;
	line-height: 1.4;
}
.txt-editor p strong {
	font-family: 'Montserrat', sans-serif;
	color: #EC7700;
}
.txt-editor ul {
	margin: 4px 0 22px;
	padding-left: 22px;
}
.txt-editor ul li {
	margin-bottom: 10px;
	line-height: 1.5;
	padding-left: 4px;
}
.txt-editor ul li::marker {
	color: #EC7700;
	font-size: 1.1em;
}

/* ------------------ Detalle de servicio: links Anterior/Siguiente en naranja ------------------ */
a.ant, a.sig {
	color: #EC7700 !important;
}
a.ant:hover, a.sig:hover {
	color: #0A2240 !important;
}

/* ------------------ Fix: iconos Servicio anterior/siguiente siempre visibles (no solo hover) ------------------ */
.ant-sig div figure {
	display: block !important;
}

/* ------------------ Espacio entre pregunta inicial y banner navy en servicios detallados ------------------ */
.detail__content--margin {
	padding-top: 40px;
}

/* ------------------ Recolorear iconos grandes de servicio al azul de paleta (#6B8AA9) ------------------ */
.imagen-grande img.img-centrada,
.imagen-grande img.zoomImg {
	filter: brightness(0) saturate(100%) invert(48%) sepia(73%) saturate(134%) hue-rotate(168deg) brightness(93%) contrast(128%);
}

/* ------------------ Inicio: iconos 3 pasos como FontAwesome (reemplaza PNG borroso) ------------------ */
.paquete-icono {
	display: block;
	width: 100%;
	text-align: center;
	font-size: 42px;
	color: #6B8AA9;
	line-height: 48px;
}

/* ------------------ Contacto: botón enviar en naranja (rediseño mockup) ------------------ */
.formulario--flotante #Enviar {
	background-color: #EC7700 !important;
}
.formulario--flotante #Enviar:hover {
	background-color: #DC7003 !important;
}

/* ------------------ Fix: checkbox de aviso de privacidad estirado por estilos de input flotante ------------------ */
.formulario--flotante .form-field--checkbox input[type="checkbox"] {
	width: 16px;
	height: 16px;
	min-width: 16px;
	padding: 0;
	border: 1px solid #D9D8D6;
	border-radius: 3px;
	background: #fff;
	flex-shrink: 0;
	margin: 3px 0 0;
	box-sizing: border-box;
}
.formulario--flotante .form-field--checkbox .aviso-privacidad {
	display: flex;
	align-items: flex-start;
	gap: 8px;
}

/* ------------------ Fix: espacio duplicado antes de "Protege tu marca con el paquete ideal" ------------------ */
.paquetes.wide-cien {
	padding-top: 0;
	padding-bottom: 0;
}

/* ------------------ Fix: padding duplicado (sección + wrapper margen) en secciones de Inicio ------------------ */
.cifras.wide-cien {
	padding-top: 0;
	padding-bottom: 0;
}
.porque-molsam.wide-cien {
	padding-top: 0;
	padding-bottom: 0;
}
.proceso.wide-cien {
	padding-top: 0;
	padding-bottom: 0;
}

/* ------------------ Fix: color inconsistente en h2 "Servicios Destacados" ------------------ */
.index__servicios h2 {
	color: #0A2240;
}

/* ------------------ Fix: color inconsistente en "OTROS SERVICIOS" (servicios relacionados) ------------------ */
.aleatorios h3 {
	color: #0A2240;
}

/* ------------------ Boton primario (Me interesa / Selecciona el paquete): naranja en toda la pagina ------------------ */
.boton__primario.primero {
	background-color: #EC7700 !important;
}
.boton__primario.primero:hover {
	background-color: #DC7003 !important;
}

/* ------------------ Fix: checkbox y enlace de aviso de privacidad no clickeables ------------------ */
.formulario--flotante .form-field--checkbox label.aviso-privacidad {
	pointer-events: auto;
	position: static;
	background: transparent;
}
.formulario--flotante .form-field--checkbox label.aviso-privacidad a {
	pointer-events: auto;
	color: #EC7700;
	text-decoration: underline;
}

/* ------------------ Miniatura de icono real del servicio en catalogo (coherente con el detalle) ------------------ */
.svc-card__icon-img {
	width: 26px;
	height: 26px;
	object-fit: contain;
	filter: brightness(0) saturate(100%) invert(48%) sepia(73%) saturate(134%) hue-rotate(168deg) brightness(93%) contrast(128%);
}

/* ------------------ Modernizar formulario de Datos de compra ------------------ */
.compra-form {
	background: #ffffff;
	border: 1px solid #D9D8D6;
	border-radius: 8px;
	padding: 32px;
	margin: 24px 0 40px;
}
.compra-form-tit h2 {
	text-align: left;
	color: #0A2240;
	font-family: 'Montserrat', sans-serif;
	font-size: 1.4rem;
	margin-bottom: 12px;
}
.compra-form-tit p {
	background: #EAF0F7;
	border-radius: 6px;
	padding: 14px 18px;
	color: #0A2240;
	font-family: 'Montserrat', sans-serif;
	margin-bottom: 8px;
	line-height: 1.6;
}
.compra-form form.formulario fieldset {
	border: none;
	padding: 0;
	margin: 0 0 20px;
}
.compra-form form.formulario .float-left,
.compra-form form.formulario .float-right {
	width: 48%;
	margin-bottom: 16px;
}
@media (max-width: 700px) {
	.compra-form form.formulario .float-left,
	.compra-form form.formulario .float-right {
		width: 100%;
		float: none;
	}
}
.compra-form form.formulario input[type="text"],
.compra-form form.formulario input[type="email"],
.compra-form form.formulario input[type="tel"],
.compra-form form.formulario select,
.compra-form form.formulario textarea {
	width: 100%;
	padding: 12px 14px;
	border: 1px solid #D9D8D6;
	border-radius: 6px;
	font-family: 'Montserrat', sans-serif;
	font-size: 0.95rem;
	color: #1F201C;
	background: #ffffff;
	box-sizing: border-box;
}
.compra-form form.formulario input[type="text"]:focus,
.compra-form form.formulario input[type="email"]:focus,
.compra-form form.formulario input[type="tel"]:focus,
.compra-form form.formulario select:focus,
.compra-form form.formulario textarea:focus {
	outline: none;
	border-color: #EC7700;
}
.compra-form form.formulario textarea {
	min-height: 110px;
	resize: vertical;
}
.compra-form fieldset.metodos h4 {
	color: #0A2240;
	font-family: 'Montserrat', sans-serif;
	text-align: left;
	text-transform: none;
	font-size: 1.05rem;
	font-weight: 700;
	margin-bottom: 16px;
}
.compra-form .checkbox-radio {
	display: flex;
	align-items: center;
	gap: 12px;
	border: 1px solid #D9D8D6;
	border-radius: 8px;
	padding: 14px 18px;
	margin-bottom: 12px;
	cursor: pointer;
	transition: 0.15s;
}
.compra-form .checkbox-radio:has(input:checked) {
	border-color: #EC7700;
	background: #FFF6EE;
}
.compra-form .checkbox-radio input[type="radio"] {
	width: 18px;
	height: 18px;
	min-width: 18px;
	accent-color: #EC7700;
	margin: 0;
}
.compra-form .checkbox-radio label {
	margin: 0;
	font-family: 'Montserrat', sans-serif;
	color: #1F201C;
	cursor: pointer;
}

/* ------------------ Fix: cifras-margen mas angosto en Nosotros (fuera de <main>) que en Inicio ------------------ */
.cifras.wide-cien .cifras-margen {
	padding: 60px 0;
}

/* === Contact info card fix === */
.contact-info-card strong {
	line-height: 1.3 !important;
	margin-bottom: 2px !important;
}
.contact-info-card__body a {
	line-height: 1.4 !important;
}
.paquete-descrip ul li::marker {
	color: #EC7700;
}
.paquete-descrip strong {
	color: #EC7700;
}

/* === Icon centering + Nosotros diferenciador === */
.svc-card__icon {
	margin-left: auto;
	margin-right: auto;
}
.aboutUs-card__icon {
	margin-left: auto;
	margin-right: auto;
}
.aboutUs-card {
	text-align: center;
}
.aboutUs-diff__eyebrow {
	color: #EC7700 !important;
}
.nosotros-parrafo-justificado {
	text-align: justify;
}

/* === Uniformar color precio + IVA (Inicio) === */
.paquete-precio,
.paquete-precio * {
	color: #6B8AA9 !important;
}

/* === Espacio antes de BENEFICIOS (paquete-descrip) === */
.paquete-descrip strong {
	display: inline-block;
	margin-top: 16px;
}

/* === Fix: espacio en blanco entre form y datos de contacto === */
section.dir-form {
	display: flex !important;
	flex-wrap: wrap;
	gap: 40px;
	align-items: flex-start;
}
section.dir-form .contact-form-card {
	flex: 1 1 480px;
	width: auto !important;
}
section.dir-form form {
	float: none !important;
	width: 100% !important;
	margin-bottom: 0 !important;
}
section.dir-form address {
	float: none !important;
	width: 400px !important;
	max-width: 400px !important;
	flex: 0 0 400px;
	margin-bottom: 0 !important;
}


/* === Contact info labels: darker + bold === */
.contact-info-card strong {
	color: #071730 !important;
	font-weight: 700 !important;
}


/* === Transferencia bancaria (datosCompra) === */
.transferencia-datos {
	background: #F5F8FB;
	border: 1px solid #DDE6EE;
	border-radius: 10px;
	padding: 20px 24px;
	margin-top: 16px;
}
.transferencia-datos p {
	margin: 0 0 10px 0;
	color: #0A2240;
	font-family: 'Montserrat', sans-serif;
	font-size: 0.95rem;
}
.transferencia-datos p:last-child {
	margin-bottom: 0;
}
.transferencia-datos strong {
	color: #0A2240;
}

.hero-text-center { text-align: center; }

.metodo-pago-logos { margin-left: 10px; display: inline-flex; align-items: center; gap: 6px; vertical-align: middle; }
.tarjeta-logo { width: 30px; height: 20px; flex-shrink: 0; overflow: visible; }
.metodo-pago-logos i { font-size: 1.3rem; color: #12325A; }

.ant-sig-nombre { display: none; position: absolute; z-index: 100; top: 46px; width: 140px; color: #EC7700; text-align: center; font-weight: 600; font-size: 0.85rem; line-height: 1.25; }
@media only screen and (min-width: 768px) {
  .ant-sig div.ant .ant-sig-nombre { right: -105px; }
  .ant-sig div.sig .ant-sig-nombre { left: -105px; }
  .ant-sig div:active .ant-sig-nombre, .ant-sig div:focus .ant-sig-nombre, .ant-sig div:hover .ant-sig-nombre { display: block; }
}
.aleatorios hr { margin-left: auto; margin-right: auto; }

.hero-social-proof { text-align: center; color: #EC7700 !important; font-size: 0.9rem; margin-top: 14px; letter-spacing: 0.02em; font-weight: 600; }
.hero-social-proof strong { color: #EC7700; font-weight: 700; }

.compra-segura { display: flex; align-items: center; gap: 8px; background: #E6F1FB; color: #0C447C; font-size: 12.5px; font-weight: 600; padding: 10px 14px; border-radius: 6px; margin: 10px 0; }
.compra-segura i { color: #185FA5; font-size: 14px; }

.cookie-banner { position: fixed; left: 0; right: 0; bottom: 0; z-index: 9998; background: #0A2240; color: #FFFFFF; padding: 16px 24px; display: flex; align-items: center; justify-content: space-between; gap: 20px; flex-wrap: wrap; font-family: Montserrat, sans-serif; }
.cookie-banner p { margin: 0; font-size: 12.5px; line-height: 1.5; max-width: 640px; color: #E4E9F0; }
.cookie-banner p a { color: #EC7700; text-decoration: underline; }
.cookie-banner__botones { display: flex; gap: 10px; flex-shrink: 0; }
.cookie-banner__btn { border-radius: 5px; font-size: 12px; font-weight: 600; padding: 9px 16px; cursor: pointer; border: none; font-family: Montserrat, sans-serif; }
.cookie-banner__btn--primario { background: #EC7700; color: #FFFFFF; }
.cookie-banner__btn--secundario { background: transparent; color: #FFFFFF; border: 1px solid rgba(255,255,255,0.4); }
@media (max-width: 640px) { .cookie-banner { flex-direction: column; align-items: stretch; } .cookie-banner__botones { justify-content: stretch; } .cookie-banner__btn { flex: 1; } }

.compra-form-tit { background: #F3F6FA; border: 1px solid #D9D8D6; border-radius: 8px; padding: 18px 20px; margin-bottom: 24px; }
.compra-form-tit h2 { color: #0A2240; font-size: 1.15rem; margin: 0 0 8px; }
.compra-form-tit p { margin: 0; color: #5F5E5A; font-size: 0.92rem; line-height: 1.6; }
.compra-form-tit p strong { color: #0A2240; }
.metodos h4 { color: #0A2240; font-size: 1.05rem; margin: 0 0 14px; }
.metodos .checkbox-radio { width: 100% !important; border: 1px solid #D9D8D6; border-radius: 8px; padding: 14px 16px; margin-bottom: 10px; transition: border-color 0.15s ease, background 0.15s ease, box-shadow 0.15s ease; align-items: center; }
.metodos .checkbox-radio label { cursor: pointer; font-weight: 600; color: #1F201C; width: 100%; margin-left: 12px !important; }
.metodos .checkbox-radio:hover { border-color: #EC7700; }
.metodos .checkbox-radio:has(input:checked) { border-color: #EC7700; background: #FFF8F2; box-shadow: 0 0 0 1px #EC7700; }
.metodos .checkbox-radio input[type=radio] { width: 18px; height: 18px; accent-color: #EC7700; cursor: pointer; flex-shrink: 0; }
@media only screen and (max-width: 767px) { .metodos .checkbox-radio { width: 100% !important; } }

.idioma-toggle { display: inline-flex; align-items: center; gap: 8px; margin-left: 22px; }
.idioma-toggle__icono { width: 24px; height: 24px; border-radius: 50%; background: #EC7700; color: #FFFFFF; display: flex; align-items: center; justify-content: center; font-size: 11px; flex-shrink: 0; }
.idioma-toggle__btn { background: none; border: none; color: #FFFFFF; font-size: 11.5px; font-weight: 600; font-family: Montserrat, sans-serif; cursor: pointer; padding: 4px 2px; opacity: 0.65; letter-spacing: 0.02em; }
.idioma-toggle__btn:hover { opacity: 1; }
.idioma-toggle__btn--activo { color: #EC7700; opacity: 1; }
iframe.skiptranslate { display: none !important; }
body { top: 0px !important; position: static !important; }
.goog-te-gadget { display: none !important; }
#google_translate_element { display: none !important; }
.goog-tooltip, .goog-tooltip:hover { display: none !important; }
.goog-text-highlight { background: none !important; box-shadow: none !important; }
.goog-te-spinner-pos { display: none !important; }

/* Fix: Google Translate wraps text in <font> tags; site's CSS reset forces font{color:#1f201c}, making translated text render dark/illegible on colored backgrounds. Neutralize it. */
font { color: inherit !important; background: none !important; font-family: inherit !important; font-weight: inherit !important; font-style: inherit !important; }

/* Ubicacion visible en barra superior (despacho con sede en Mexico) */
.header-contact__location { display: none; color: #fff; font-weight: 500; margin-left: 18px; white-space: nowrap; }
.header-contact__location i { margin-right: 5px; color: #EC7700; }
@media only screen and (min-width: 768px) {
  .header-contact__location { display: inline-flex; align-items: center; }
}

/* Titulo CTA de cierre: azul navy en vez de negro por defecto */
.ic-text h4 { color: #0A2240 !important; }


/* ===== Recursos (estilo Instagram) ===== */
.recursos-grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
	gap: 28px;
	margin-top: 30px;
}
.recu-card {
	background: #fff;
	border-radius: 14px;
	overflow: hidden;
	box-shadow: 0 4px 18px rgba(10,34,64,0.08);
	display: flex;
	flex-direction: column;
	transition: transform .2s ease, box-shadow .2s ease;
}
.recu-card:hover {
	transform: translateY(-4px);
	box-shadow: 0 10px 28px rgba(10,34,64,0.14);
}
.recu-card__media {
	position: relative;
	width: 100%;
	aspect-ratio: 1 / 1;
	background: #0A2240;
	overflow: hidden;
}
.recu-card__media img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: none;
	position: absolute;
	top: 0; left: 0;
}
.recu-card__media img.is-active { display: block; }
.recu-card__dots {
	position: absolute;
	bottom: 10px;
	left: 0; right: 0;
	display: flex;
	justify-content: center;
	gap: 6px;
	z-index: 2;
}
.recu-card__dots button {
	width: 7px; height: 7px;
	border-radius: 50%;
	background: rgba(255,255,255,0.55);
	border: none;
	padding: 0;
	cursor: pointer;
}
.recu-card__dots button.is-active { background: #EC7700; width: 9px; height: 9px; }
.recu-card__nav {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	background: rgba(10,34,64,0.55);
	color: #fff;
	border: none;
	width: 30px; height: 30px;
	border-radius: 50%;
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
	opacity: 0;
	transition: opacity .2s;
	z-index: 2;
}
.recu-card:hover .recu-card__nav { opacity: 1; }
.recu-card__nav--prev { left: 8px; }
.recu-card__nav--next { right: 8px; }
.recu-card__body {
	padding: 18px 20px 22px;
	display: flex;
	flex-direction: column;
	gap: 10px;
	flex: 1;
}
.recu-card__tag {
	align-self: flex-start;
	background: rgba(236,119,0,0.12);
	color: #EC7700;
	font-weight: 700;
	font-size: .72rem;
	text-transform: uppercase;
	letter-spacing: .04em;
	padding: 4px 10px;
	border-radius: 20px;
}
.recu-card__titulo {
	color: #0A2240;
	font-weight: 700;
	font-size: 1.05rem;
	margin: 0;
}
.recu-card__copy {
	color: #4a5568;
	font-size: .92rem;
	line-height: 1.5;
	margin: 0;
	display: -webkit-box;
	-webkit-line-clamp: 4;
	-webkit-box-orient: vertical;
	overflow: hidden;
}
.recu-card__footer {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-top: auto;
	padding-top: 8px;
	border-top: 1px solid #eef1f5;
}
.recu-card__fecha { color: #8a94a3; font-size: .8rem; }
.recu-card__link {
	color: #0A2240;
	font-weight: 600;
	font-size: .85rem;
	text-decoration: none;
	display: inline-flex;
	align-items: center;
	gap: 5px;
}
.recu-card__link i { color: #EC7700; }
.recu-card__link:hover { color: #EC7700; }
.recu-empty {
	text-align: center;
	padding: 60px 20px;
	color: #4a5568;
}


/* ==== Recurso detalle (pagina individual SEO) ==== */
.recu-card__link {
	display: flex;
	flex-direction: column;
	color: inherit;
	text-decoration: none;
	height: 100%;
}
.recu-card__link:hover .recu-card__titulo { color: #EC7700; }
.recu-detalle__media-wrap { flex: 0 0 420px; width: 420px; max-width: 100%; margin-bottom: 0; }
.recu-detalle__media {
	width: 100%;
	max-width: 420px;
	margin: 0 auto;
	box-shadow: 0 10px 34px rgba(10,34,64,0.16);
}
.recu-detalle__texto { flex: 1; min-width: 0; }
@media (max-width: 860px) {
	.recu-detalle__media-wrap { flex-basis: 100%; width: 100%; margin-bottom: 24px; }
}
.recu-detalle__media .recu-card__media { aspect-ratio: 4 / 5; }
.recu-detalle__media .recu-card__nav { opacity: 1; width: 38px; height: 38px; }
.recu-detalle__meta {
	display: flex;
	align-items: center;
	gap: 14px;
	margin-bottom: 8px;
}
.recu-detalle__fecha {
	color: #6b7a8f;
	font-size: .88rem;
}
.recu-detalle__copy {
	white-space: normal;
	line-height: 1.7;
	color: #29334a;
}
.recu-detalle__ctas {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 18px;
	margin-top: 28px;
}
.recu-detalle__insta-link {
	color: #0A2240;
	font-weight: 600;
	text-decoration: none;
	display: inline-flex;
	align-items: center;
	gap: 8px;
}
.recu-detalle__insta-link:hover { color: #EC7700; }
.recu-detalle__insta-link i { color: #E1306C; font-size: 1.1rem; }
.recu-detalle__relacionados {
	margin-top: 56px;
	padding-top: 40px;
	border-top: 1px solid #e6e9ef;
}
.recu-detalle__relacionados h2 {
	color: #0A2240;
	margin-bottom: 22px;
}

/* Fix Elia: Mas recursos - 4 tarjetas parejas + espacio antes de la siguiente seccion */
.recu-detalle__relacionados { padding-bottom: 70px !important; }
.recu-detalle__relacionados .recursos-grid { grid-template-columns: repeat(4, 1fr); }
@media only screen and (max-width: 991px) {
      .recu-detalle__relacionados .recursos-grid { grid-template-columns: repeat(2, 1fr); }
}
@media only screen and (max-width: 560px) {
      .recu-detalle__relacionados .recursos-grid { grid-template-columns: 1fr; }
}
}
}

.recu-card__media-link { display: block; }
.recu-card__titulo-link { color: inherit; text-decoration: none; }
.recu-card__titulo-link:hover { color: #EC7700; }


/* CTA de agendamiento por WhatsApp (Contacto) */
.hero-wa-cta { margin: 22px 0 8px; text-align: center; }
.hero-wa-boton { display: inline-flex; align-items: center; gap: 10px; background: #25D366 !important; border-color: #25D366 !important; color: #fff !important; font-weight: 700; }
.hero-wa-boton:hover { background: #1DA851 !important; border-color: #1DA851 !important; }
.hero-wa-boton i { font-size: 1.2em; }
.hero-wa-nota { text-align: center; color: #d7dce6; font-size: .92rem; margin: 0 0 6px; }


/* ===== ACCESIBILIDAD-CONTRASTE =====
   Texto blanco sobre el naranja de marca daba 2.91:1 (minimo WCAG AA: 4.5:1).
   Se conserva el naranja #EC7700 y se cambia el texto a azul marino: 5.48:1. */
.boton__primario:not(.hero-wa-boton),
.boton__secundario,
.cookie-banner__btn--primario { color: #0A2240 !important; }
.boton__primario:not(.hero-wa-boton):hover,
.boton__secundario:hover,
.cookie-banner__btn--primario:hover { color: #0A2240 !important; }

/* Excepcion: en el hero los botones son de contorno sobre fondo navy.
   Ahi el texto debe seguir siendo blanco (navy sobre navy queda invisible). */
.hero__botones .boton__secundario,
.hero__botones .boton__secundario:visited { color: #FFFFFF !important; }
.hero__botones .boton__secundario:hover { color: #0A2240 !important; }


/* Campos de formulario a 16px: evita el zoom automatico de Safari en iPhone */
input[type="text"], input[type="email"], input[type="tel"], input[type="number"],
input[type="password"], input[type="search"], select, textarea { font-size: 16px !important; }


/* Etiqueta SIGUENOS del footer: mayusculas y pegada a los iconos */
.footer__social-label { text-transform: uppercase; letter-spacing: 1px; font-size: 13px; font-weight: 700; margin: 0 0 8px !important; line-height: 1.2; }
.footer__social { margin-top: 0 !important; }

/* ===== Captacion de correos: guia de los 7 errores (paginas de recurso) ===== */
.guia-lead { margin: 50px 0 10px; }
.guia-lead__caja { background: #0A2240; border-radius: 10px; padding: 38px 40px 34px; border-top: 5px solid #EC7700; }
.guia-lead__etiqueta { color: #EC7700; font-size: 12px; font-weight: 700; letter-spacing: 1.5px; text-transform: uppercase; margin: 0 0 10px; }
.guia-lead__titulo { color: #FFFFFF; font-size: 26px; line-height: 1.25; margin: 0 0 12px; }
.guia-lead__texto { color: #D6DEE9; font-size: 16px; line-height: 1.6; margin: 0 0 22px; max-width: 640px; }
.guia-lead__aviso { border-radius: 6px; padding: 10px 14px; font-size: 15px; margin: 0 0 18px; }
.guia-lead__aviso--ok { background: #1E7A4B; color: #FFFFFF; }
.guia-lead__aviso--error { background: #FFE3C7; color: #7A3B00; }
.guia-lead__trampa { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
.guia-lead__campos { display: flex; flex-wrap: wrap; gap: 12px; }
.guia-lead__campos input { flex: 1 1 200px; min-width: 0; font-size: 16px; padding: 13px 15px; border: 1px solid #C7D0DC; border-radius: 6px; background: #FFFFFF; color: #0A2240; }
.guia-lead__campos input::placeholder { color: #8894A5; }
.guia-lead__campos input:focus { outline: 2px solid #EC7700; outline-offset: 1px; }
.guia-lead__boton { flex: 0 0 auto; background: #EC7700; color: #0A2240; border: 0; border-radius: 6px; padding: 13px 26px; font-size: 16px; font-weight: 700; cursor: pointer; min-height: 48px; }
.guia-lead__boton:hover { background: #FF8A14; color: #0A2240; }
.guia-lead__aviso-legal { display: flex; align-items: flex-start; gap: 10px; margin: 16px 0 0; color: #C3CEDD; font-size: 14px; line-height: 1.5; cursor: pointer; }
.guia-lead__aviso-legal input { margin: 3px 0 0; width: 17px; height: 17px; flex: 0 0 auto; accent-color: #EC7700; }
.guia-lead__aviso-legal a { color: #FFFFFF; text-decoration: underline; }
@media only screen and (max-width: 640px) {
  .guia-lead__caja { padding: 28px 22px 26px; }
  .guia-lead__titulo { font-size: 22px; }
  .guia-lead__campos { flex-direction: column; }
  .guia-lead__boton { width: 100%; }
}


/* Ajustes del bloque de guia: alineacion y legibilidad del texto legal */
.guia-lead__caja { text-align: left; }
.guia-lead__titulo, .guia-lead__texto, .guia-lead__etiqueta { text-align: left; }
.guia-lead__aviso-legal, .guia-lead__aviso-legal span { color: #C3CEDD !important; text-align: left; }
.guia-lead__aviso-legal a { color: #FFFFFF !important; }


/* nota de precio (auditoria ago-2026) */
.paquete-nota{font-size:.78rem;line-height:1.35;color:#5A6B82;margin:.35rem 0 .6rem;text-align:center;}


/* Area tactil minima en movil (auditoria ago-2026) */
@media (max-width: 900px){
  nav a, .footer a, footer a, .nav-cta, .boton__primario, .boton__secundario, .svc-card__footer a, .paquetes-tarjeta a{
    min-height:44px; display:inline-flex; align-items:center;
  }
  footer li a, .footer li a{ padding-top:6px; padding-bottom:6px; }
}


/* enlace externo secundario (auditoria ago-2026): que no compita con el CTA propio */
.recu-card__link--externo{font-size:.78rem;opacity:.65;font-weight:400;}
.recu-card__link--externo:hover{opacity:1;}


/* Destacar 'Sin costo' del paso 1 (auditoria ago-2026) */
.paquete-precio strong[content="0"], .svc-card__precio span[content="0"]{ color:#22A45D; font-weight:700; }


/* El CTA del paso 1 debe verse igual que los de los otros pasos (auditoria ago-2026) */
.svc-card__footer a{ background:none; border:0; padding:0; color:#EC7700; font-size:.85rem; font-weight:600; display:inline-flex; align-items:center; gap:.4rem; min-height:0; }
.svc-card__footer a:hover{ text-decoration:underline; }
.svc-card .paquete-nota{ text-align:left; margin:.4rem 0 0; }


/* Documentos legales en HTML (auditoria ago-2026) */
.legal-doc h2{font-size:1.15rem;color:#0A2240;margin:2rem 0 .6rem;}
.legal-doc h3{font-size:1rem;color:#0A2240;margin:1.2rem 0 .4rem;}
.legal-doc p,.legal-doc li{font-size:.95rem;line-height:1.7;color:#333;}
.legal-doc ul,.legal-doc ol{margin:.4rem 0 .8rem 1.2rem;}
.legal-doc li{margin-bottom:.35rem;}
.legal-doc a{color:#EC7700;}
.legal-doc__fecha,.legal-doc__intro{color:#5A6B82;font-size:.88rem;}
.legal-doc__descarga{margin-top:2.2rem;padding-top:1rem;border-top:1px solid #E2E8F0;}

/* ajuste fino documentos legales */
.legal-doc{text-align:left;}
.legal-doc h2, .legal-doc h3, .legal-doc p, .legal-doc li{text-align:left;}
.legal-doc h2{text-align:left !important;font-weight:700;}
.legal-doc ul{list-style:disc;}
.legal-doc ol{list-style:decimal;}
.legal-doc ul,.legal-doc ol{padding-left:1.1rem;}
.legal-doc p{margin:0 0 .9rem;}


/* Bloque de guia en el sitio en ingles (auditoria ago-2026): mismo aspecto que el espanol */
.guia-lead--en{padding:10px 20px 34px;}
.guia-lead--en .guia-lead__caja{max-width:900px;margin:0 auto;}
.guia-lead--en .guia-lead__aviso{display:flex;align-items:flex-start;gap:.6rem;margin-top:1.1rem;}
.guia-lead--en .guia-lead__aviso span,
.guia-lead--en .guia-lead__aviso{color:#C9D6E6;font-size:.9rem;line-height:1.5;}
.guia-lead--en .guia-lead__aviso a{color:#fff;text-decoration:underline;}
.guia-lead--en .guia-lead__aviso input{margin-top:.25rem;flex:0 0 auto;}
.guia-lead--en .guia-lead__campos{display:flex;flex-wrap:wrap;gap:.8rem;}
.guia-lead--en .guia-lead__campos input{flex:1 1 220px;min-width:0;}
.guia-lead--en .guia-lead__boton{flex:0 0 auto;}
@media (max-width:700px){ .guia-lead--en .guia-lead__campos input,
 .guia-lead--en .guia-lead__boton{flex:1 1 100%;} }

/* fix logo footer proporcion */
footer .footer-content .footer-content__cols figure img,
footer .footer-content .footer-content__cols img{width:100%;max-width:200px;height:auto;object-fit:contain;}
/* navegacion anterior/siguiente en fichas EN */
.svc-nav{display:flex;gap:16px;flex-wrap:wrap;padding:10px 20px 46px;}
.svc-nav__item{flex:1 1 260px;display:flex;flex-direction:column;gap:.35rem;padding:16px 18px;border:1px solid #E2E8F0;border-radius:10px;text-decoration:none;background:#fff;transition:border-color .2s,box-shadow .2s;}
.svc-nav__item:hover{border-color:#E07B24;box-shadow:0 4px 14px rgba(16,32,64,.08);}
.svc-nav__label{font-size:.8rem;text-transform:uppercase;letter-spacing:.06em;color:#E07B24;font-weight:700;}
.svc-nav__title{color:#14263F;font-weight:600;line-height:1.35;}
.svc-nav__item--next{text-align:right;align-items:flex-end;}
@media (max-width:700px){.svc-nav__item,.svc-nav__item--next{text-align:left;align-items:flex-start;}}
/* detalle de recurso en ingles */
.recu-detalle-en{max-width:820px;margin:0 auto;padding:34px 20px 10px;}
.recu-detalle-en__media{margin:0 0 18px;}
.recu-detalle-en__media img{width:100%;max-width:560px;height:auto;display:block;margin:0 auto;border-radius:10px;}
.recu-detalle-en__meta{color:#5B6B80;font-size:.9rem;margin:0 0 22px;text-align:center;}
.recu-detalle-en__cuerpo{color:#22364F;line-height:1.7;}
.recu-detalle-en__cuerpo h2{font-size:1.35rem;text-align:left;margin:26px 0 10px;color:#14263F;}
.recu-detalle-en__cuerpo p{margin:0 0 14px;}
.recu-detalle-en__cuerpo strong{color:#14263F;}
.recu-detalle-en__fuente{margin:18px 0 0;font-size:.92rem;}
.recu-detalle-en__fuente a{color:#E07B24;font-weight:600;text-decoration:none;}
.recu-detalle-en__fuente a:hover{text-decoration:underline;}
/* Solicitud de busqueda de viabilidad sin costo (ago-2026) */
.busq-lead{padding:34px 20px 46px;}
.busq-lead__caja{max-width:900px;margin:0 auto;background:#14263F;border-radius:12px;border-top:5px solid #E07B24;padding:34px 34px 30px;}
.busq-lead__etiqueta{color:#E07B24;font-size:.82rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;margin:0 0 .5rem;}
.busq-lead__titulo{color:#fff;font-size:1.6rem;line-height:1.25;margin:0 0 .7rem;text-align:left;}
.busq-lead__texto{color:#C9D6E6;line-height:1.6;margin:0 0 1.4rem;}
.busq-lead__trampa{position:absolute;left:-9999px;height:0;overflow:hidden;}
.busq-lead__campos{display:flex;flex-wrap:wrap;gap:14px;}
.busq-lead__campo{flex:1 1 240px;display:flex;flex-direction:column;gap:.3rem;min-width:0;}
.busq-lead__campo--ancho{flex:1 1 100%;}
.busq-lead__campo label{color:#C9D6E6;font-size:.86rem;font-weight:600;}
.busq-lead__campo input{width:100%;padding:12px 14px;border:1px solid #33465F;border-radius:8px;background:#fff;color:#14263F;font-size:1rem;min-height:46px;}
.busq-lead__campo input:focus{outline:2px solid #E07B24;outline-offset:1px;}
.busq-lead__campo--boton{flex:1 1 100%;justify-content:flex-end;}
.busq-lead__boton{width:100%;min-height:50px;font-weight:700;cursor:pointer;border:0;}
.busq-lead__aviso{display:flex;align-items:flex-start;gap:.6rem;margin-top:1.1rem;color:#C9D6E6;font-size:.9rem;line-height:1.5;}
.busq-lead__aviso input{margin-top:.25rem;flex:0 0 auto;width:18px;height:18px;}
.busq-lead__aviso a{color:#fff;text-decoration:underline;}
.busq-lead__pie{color:#9FB3CC;font-size:.88rem;margin:1rem 0 0;}
.busq-lead__pie a{color:#E07B24;font-weight:600;text-decoration:none;}
.busq-lead__pie a:hover{text-decoration:underline;}
@media (min-width:760px){ .busq-lead__campo--boton{flex:0 0 auto;margin-left:auto;} .busq-lead__boton{width:auto;padding-left:34px;padding-right:34px;} }
@media (max-width:700px){ .busq-lead__caja{padding:26px 20px 24px;} .busq-lead__titulo{font-size:1.35rem;} }
/* contraste busq-lead */
.busq-lead__aviso, .busq-lead__aviso span, .busq-lead__aviso *{color:#C9D6E6 !important;}
.busq-lead__aviso a{color:#fff !important;text-decoration:underline;}
.busq-lead .busq-lead__boton{background:#E07B24 !important;color:#14263F !important;border:0 !important;border-radius:8px;letter-spacing:.02em;}
.busq-lead .busq-lead__boton:hover{background:#c96a1a !important;color:#fff !important;}
/* centrado de titulos y subtitulos (ago-2026) */
.page-hero .hero-text-center,
.page-hero .page-hero__eyebrow,
.page-hero h1,
.page-hero h2,
.page-hero p:not(.bread-crumbs){margin-left:auto;margin-right:auto;text-align:center;}
.page-hero .bread-crumbs{margin-left:0;margin-right:0;text-align:left;}
.hero-text-center{margin-left:auto;margin-right:auto;}
/* Landing declaracion de uso (ago-2026) */
.declara{max-width:860px;margin:0 auto;padding:34px 20px 10px;color:#22364F;line-height:1.7;}
.declara h2{font-size:1.4rem;color:#14263F;margin:30px 0 12px;text-align:left;}
.declara p{margin:0 0 14px;}
.declara__lista{margin:0 0 18px;padding-left:20px;}
.declara__lista li{margin:0 0 9px;}
.declara__lista li::marker{color:#E07B24;}
.declara__precio{background:#14263F;border-radius:12px;border-top:5px solid #E07B24;padding:28px;margin:30px 0;text-align:center;}
.declara__precio-etiqueta{color:#E07B24;font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;margin:0 0 .4rem;}
.declara__precio-monto{color:#fff;font-size:2.1rem;font-weight:700;margin:0 0 .5rem;}
.declara__precio-nota{color:#C9D6E6;font-size:.92rem;margin:0 0 18px;}
.declara__form{margin:0 0 14px;}
.declara__form button{min-height:52px;padding:0 34px;font-weight:700;border:0;cursor:pointer;border-radius:8px;}
.declara__precio-alt{color:#9FB3CC;font-size:.9rem;margin:0;}
.declara__precio-alt a{color:#E07B24;font-weight:600;text-decoration:none;}
.declara__precio-alt a:hover{text-decoration:underline;}
.declara .faq__item{border-bottom:1px solid #E2E8F0;padding:12px 0;}
.declara .faq__item summary{cursor:pointer;font-weight:600;color:#14263F;}
.declara .faq__item p{margin:10px 0 0;}
/* Bloque de compra en landings (ago-2026) */
.landing-compra{max-width:820px;margin:0 auto 10px;background:#14263F;border-radius:12px;border-top:5px solid #E07B24;padding:30px 28px;text-align:center;}
.landing-compra__etiqueta{color:#E07B24;font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;margin:0 0 .4rem;}
.landing-compra__titulo{color:#fff;font-size:1.45rem;margin:0 0 .7rem;text-align:center;}
.landing-compra__precio{color:#fff;font-size:2.1rem;font-weight:700;margin:0 0 .5rem;}
.landing-compra__nota{color:#C9D6E6;font-size:.95rem;line-height:1.6;margin:0 0 20px;}
.landing-compra__nota strong{color:#fff;}
.landing-compra__form{margin:0 0 14px;}
.landing-compra__form button{min-height:54px;padding:0 38px;font-weight:700;border:0;cursor:pointer;border-radius:8px;background:#E07B24;color:#14263F;font-size:1.02rem;}
.landing-compra__form button:hover{background:#c96a1a;color:#fff;}
.landing-compra__alt{color:#9FB3CC;font-size:.92rem;margin:0;}
.landing-compra__alt a{color:#E07B24;font-weight:600;text-decoration:none;}
.landing-compra__alt a:hover{text-decoration:underline;}
@media(max-width:700px){.landing-compra{padding:24px 18px;}.landing-compra__precio{font-size:1.7rem;}.landing-compra__form button{width:100%;}}

/* ================= FIX DESBORDE HORIZONTAL MOVIL (ago-2026) ================= */
.contact-info-list,
.contact-info-card,
.contact-info-card__body { box-sizing: border-box; max-width: 100%; }
.contact-info-card__body { min-width: 0; overflow-wrap: anywhere; word-break: break-word; }
.page-hero { overflow: hidden; }
body { overflow-x: clip; }
@media (max-width: 480px){
  .contact-info-card { padding: 14px 14px; }
  .contact-info-list { padding-left: 0; margin-left: 0; }
}

/* ============ FIX ANCHO FIJO CONTACTO EN MOVIL (ago-2026) ============ */
@media (max-width: 900px){
  section.dir-form { gap: 24px; }
  section.dir-form address {
    width: 100% !important;
    max-width: 100% !important;
    flex: 1 1 100% !important;
  }
  section.dir-form .contact-form-card {
    flex: 1 1 100% !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
  }
  section.dir-form form { min-width: 0 !important; }
}

/* ============ FIX BOTON ANCHO MOVIL (ago-2026) ============ */
@media (max-width: 900px){
  .boton__primario, .boton__secundario, input[type="submit"], button[type="submit"] {
    max-width: 100% !important;
    margin-right: 0 !important;
    box-sizing: border-box;
  }
  form .send { width: 100%; }
}

/* ================= CIERRE COMERCIAL DE FICHA (ago-2026) ================= */
.svc-cierre{margin:48px auto 8px;}
.svc-cierre__caja{background:#0A2240;color:#fff;border-radius:12px;padding:38px 34px;box-sizing:border-box;max-width:100%;}
.svc-cierre__etiqueta{font-family:'Montserrat',sans-serif;font-size:.72rem;letter-spacing:.14em;color:#EC7700;margin:0 0 8px;font-weight:700;}
.svc-cierre__titulo{color:#fff;font-size:1.7rem;line-height:1.25;margin:0 0 10px;}
.svc-cierre__precio{font-size:1.45rem;font-weight:700;color:#EC7700;margin:0 0 10px;}
.svc-cierre__texto{color:#D9DEE6;font-size:.98rem;line-height:1.6;margin:0 0 22px;max-width:640px;}
.svc-cierre__campos{display:grid;grid-template-columns:1fr 1fr;gap:16px 18px;margin-bottom:16px;}
.svc-cierre__campo--ancho{grid-column:1 / -1;}
.svc-cierre__campo label{display:block;font-size:.82rem;color:#C6CEDA;margin-bottom:6px;}
.svc-cierre__campo input,.svc-cierre__campo textarea{width:100%;box-sizing:border-box;border:1px solid #33507A;background:#0E2C50;color:#fff;border-radius:6px;padding:11px 12px;font-size:.95rem;font-family:inherit;}
.svc-cierre__campo input:focus,.svc-cierre__campo textarea:focus{outline:none;border-color:#EC7700;}
.svc-cierre__aviso{display:flex;align-items:flex-start;gap:9px;font-size:.85rem;color:#C6CEDA;margin-bottom:18px;cursor:pointer;}
.svc-cierre__aviso input{margin-top:3px;flex:0 0 auto;width:16px;height:16px;}
.svc-cierre__aviso a{color:#EC7700;text-decoration:underline;}
.svc-cierre__boton{min-width:230px;}
.svc-cierre__pie{font-size:.85rem;color:#B4BECC;margin:16px 0 0;}
.svc-cierre__pie a{color:#EC7700;text-decoration:underline;}
.svc-cierre__trampa{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden;}
.svc-cierre__compra{margin:0;}
@media (max-width: 700px){
  .svc-cierre__caja{padding:26px 20px;}
  .svc-cierre__campos{grid-template-columns:1fr;}
  .svc-cierre__titulo{font-size:1.35rem;}
  .svc-cierre__boton{width:100%;min-width:0;}
}

/* ============ DICTAMEN DE REGISTRABILIDAD (ago-2026) ============ */
.dictamen{margin:44px auto;}
.dictamen__caja{display:flex;flex-wrap:wrap;gap:34px;background:#F8F9FB;border:1px solid #E2E5EA;border-left:5px solid #EC7700;border-radius:10px;padding:34px 32px;box-sizing:border-box;}
.dictamen__texto{flex:1 1 420px;min-width:0;}
.dictamen__etiqueta{font-family:'Montserrat',sans-serif;font-size:.7rem;letter-spacing:.14em;color:#EC7700;font-weight:700;margin:0 0 8px;}
.dictamen__titulo{color:#0A2240;font-size:1.55rem;margin:0 0 12px;line-height:1.25;}
.dictamen__intro{color:#4A5568;font-size:.97rem;line-height:1.65;margin:0 0 16px;}
.dictamen__lista{list-style:none;padding:0;margin:0;}
.dictamen__lista li{position:relative;padding-left:26px;margin-bottom:9px;color:#2D3748;font-size:.94rem;line-height:1.5;}
.dictamen__lista li::before{content:"";position:absolute;left:0;top:.5em;width:9px;height:9px;border-radius:50%;background:#EC7700;}
.dictamen__oferta{flex:0 1 260px;min-width:0;background:#fff;border:1px solid #E2E5EA;border-radius:8px;padding:24px 20px;text-align:center;align-self:flex-start;box-sizing:border-box;}
.dictamen__precio{font-size:2rem;font-weight:700;color:#0A2240;margin:0 0 2px;line-height:1;}
.dictamen__precio-nota{font-size:.82rem;color:#6B7280;margin:0 0 18px;}
.dictamen__form{margin:0 0 12px;}
.dictamen__boton{width:100%;}
.dictamen__pie{font-size:.78rem;color:#6B7280;margin:0;line-height:1.45;}
@media (max-width: 760px){
  .dictamen__caja{padding:24px 20px;gap:24px;}
  .dictamen__oferta{flex:1 1 100%;}
  .dictamen__titulo{font-size:1.3rem;}
}

/* ============ PRUEBA SOCIAL EN EL PUNTO DE DECISION (ago-2026) ============ */
.prueba-social{background:#F8F9FB;border:1px solid #E2E5EA;border-radius:10px;padding:22px 22px 18px;margin:24px 0;box-sizing:border-box;max-width:100%;}
.prueba-social__cifras{list-style:none;display:flex;flex-wrap:wrap;gap:14px 26px;padding:0;margin:0 0 16px;}
.prueba-social__cifras li{display:flex;flex-direction:column;min-width:0;}
.prueba-social__cifras strong{font-size:1.45rem;color:#EC7700;line-height:1.1;font-weight:700;}
.prueba-social__cifras span{font-size:.78rem;color:#5A6472;margin-top:2px;}
.prueba-social__cita{margin:0 0 14px;padding:0 0 0 14px;border-left:3px solid #EC7700;}
.prueba-social__cita p{margin:0 0 6px;font-size:.92rem;line-height:1.55;color:#2D3748;font-style:italic;}
.prueba-social__cita cite{font-size:.78rem;color:#5A6472;font-style:normal;}
.prueba-social__sello{margin:0;font-size:.8rem;color:#0A2240;display:flex;align-items:center;gap:8px;}
.prueba-social__sello i{color:#2E7D32;}
@media (max-width: 700px){
  .prueba-social{padding:18px 16px;}
  .prueba-social__cifras{gap:12px 18px;}
  .prueba-social__cifras strong{font-size:1.25rem;}
}

/* ============ SERVICIO RELACIONADO EN ARTICULO (ago-2026) ============ */
.serv-rel{background:#0A2240;color:#fff;border-radius:10px;padding:24px 26px;margin:32px 0;box-sizing:border-box;max-width:100%;}
.serv-rel__etiqueta{font-family:'Montserrat',sans-serif;font-size:.68rem;letter-spacing:.14em;color:#EC7700;font-weight:700;margin:0 0 8px;}
.serv-rel__texto{margin:0 0 14px;color:#D9DEE6;font-size:.95rem;line-height:1.55;}
.serv-rel__enlace{display:inline-flex;align-items:center;gap:10px;background:#EC7700;color:#fff;padding:12px 22px;border-radius:6px;font-weight:700;font-size:.95rem;text-decoration:none;}
.serv-rel__enlace:hover{background:#d06a00;color:#fff;}
@media (max-width: 700px){
  .serv-rel{padding:20px 18px;}
  .serv-rel__enlace{width:100%;justify-content:center;box-sizing:border-box;}
}