/* ECOTEC Online · Admisiones (ver app/admisiones.php). html a 62.5 %: 1rem = 10px. Sin sombras ni degradados.
   Paleta Online: marino #182640, turquesa #00bbc4 (texto #007d84) en claro, cyan #1ddddd en oscuro. */

:root {
	--ad-marino: #182640;
	--ad-noche: #0f1a2e;
	--ad-turquesa: #00bbc4;
	--ad-turq-txt: #007d84;
	--ad-turq-suave: #e3f7f8;
	--ad-cyan: #1ddddd;
	--ad-texto: #3d4b5c;
	--ad-borde: #dfe6ed;
	--ad-fondo: #f2f6f9;
}

/* ---------------------------------------------------------------- botones */
.nvad-botones { display: flex; flex-wrap: wrap; gap: 1.2rem; }
.nvad-btn { display: inline-flex; align-items: center; justify-content: center; gap: .9rem; min-height: 5rem; padding: 1.3rem 2.8rem; border: 1px solid var(--ad-turquesa); border-radius: 999px; background: var(--ad-turquesa); color: var(--ad-marino); font-size: 1.5rem; font-weight: 700; line-height: 1.2; text-decoration: none; white-space: nowrap; transition: background-color .2s, color .2s, border-color .2s; }
.nvad-btn svg { width: 2rem; height: 2rem; flex: none; }
.nvad-btn:hover, .nvad-btn:focus-visible { background: var(--ad-marino); border-color: var(--ad-marino); color: #fff; }
.nvad-btn:focus-visible { outline: 2px solid var(--ad-turquesa); outline-offset: 3px; }
.nvad-btn--cyan { background: var(--ad-cyan); border-color: var(--ad-cyan); }
.nvad-btn--cyan:hover, .nvad-btn--cyan:focus-visible { background: #fff; border-color: #fff; color: var(--ad-marino); }
.nvad-btn--contorno { background: transparent; border-color: rgba(255, 255, 255, .5); color: #fff; }
.nvad-btn--contorno:hover, .nvad-btn--contorno:focus-visible { background: #fff; border-color: #fff; color: var(--ad-marino); }
.nvad-btn--marino { background: var(--ad-marino); border-color: var(--ad-marino); color: #fff; }
.nvad-btn--marino:hover, .nvad-btn--marino:focus-visible { background: #fff; color: var(--ad-marino); }

/* ---------------------------------------------------------------- héroe */
#brxe-vnvrjr { display: flex; flex-direction: column; align-items: flex-start; }
.nvad-chip { display: inline-flex; align-items: center; gap: .8rem; margin: 0 0 2.2rem; padding: .7rem 1.6rem .7rem 1.2rem; border: 1px solid rgba(29, 221, 221, .45); border-radius: 999px; color: #fff; font-size: 1.35rem; line-height: 1.3; }
.nvad-chip svg { width: 1.8rem; height: 1.8rem; color: var(--ad-cyan); flex: none; }
.nvad-chip strong { color: var(--ad-cyan); font-weight: 700; }
a.nvad-chip { text-decoration: none; transition: border-color .15s, background .15s; }
a.nvad-chip:hover, a.nvad-chip:focus-visible { border-color: var(--ad-cyan); background: rgba(29, 221, 221, .08); }
.nvad-chip__ir { color: var(--ad-cyan); font-weight: 700; margin-left: .2rem; }
#brxe-vofknt { margin: 0; font-size: clamp(3.4rem, 2.2rem + 2.6vw, 5.6rem) !important; line-height: 1.06 !important; letter-spacing: -.02em; }
#brxe-vofknt span { display: block; color: var(--ad-cyan); }
.nvad-lead { max-width: 52rem; margin: 2rem 0 0; color: rgba(255, 255, 255, .86); font-size: 1.8rem; line-height: 1.6; }
#brxe-vnvrjr .nvad-botones { margin-top: 3rem; }
.nvad-datos { display: flex; flex-wrap: wrap; gap: 1rem 2.8rem; margin: 3.6rem 0 0; padding: 2.4rem 0 0; border-top: 1px solid rgba(255, 255, 255, .16); list-style: none; }
.nvad-datos li { display: flex; align-items: center; gap: 1rem; color: #fff; font-size: 1.45rem; font-weight: 500; }
.nvad-datos svg { width: 2.2rem; height: 2.2rem; color: var(--ad-cyan); flex: none; }
#brxe-kxcbri { justify-content: center; }
#brxe-qyorwe, #brxe-qyorwe p { color: #4a5d70 !important; }
#brxe-chopfh { scroll-margin-top: 14rem; }

/* ---------------------------------------------------------------- secciones nuevas */
.nvad-sec { font-family: inherit; }
.nvad-in { width: 90%; max-width: 1350px; margin: 0 auto; padding: clamp(5.6rem, 3.6rem + 4vw, 9.6rem) 0; }
.nvad-cab { max-width: 72rem; margin-bottom: clamp(3.2rem, 2.4rem + 1.6vw, 5.6rem); }
.nvad-cab--centro { margin-left: auto; margin-right: auto; text-align: center; }
.nvad-ante { margin: 0 0 1.2rem; color: var(--ad-turq-txt); font-size: 1.3rem; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; }
.nvad-tit { margin: 0; color: var(--ad-marino); font-size: clamp(3rem, 2.2rem + 1.8vw, 4.4rem); font-weight: 700; line-height: 1.1; letter-spacing: -.02em; }
.nvad-sub { margin: 1.6rem 0 0; color: var(--ad-texto); font-size: 1.7rem; line-height: 1.6; }

/* Pasos */
.nvad-sec--pasos { background: #fff; }
.nvad-pasos { position: relative; display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 1.6rem; margin: 0; padding: 0; list-style: none; counter-reset: none; }
.nvad-pasos::before { content: ""; position: absolute; top: 6.4rem; left: 10%; right: 10%; height: 1px; background: var(--ad-borde); }
.nvad-paso { position: relative; display: flex; flex-direction: column; align-items: center; padding: 3.2rem 2rem 2.8rem; border: 1px solid var(--ad-borde); border-radius: 2rem; background: #fff; text-align: center; transition: border-color .2s; }
.nvad-paso:hover { border-color: var(--ad-turquesa); }
.nvad-paso__n { margin-bottom: 1.6rem; color: var(--ad-turq-txt); font-size: 1.3rem; font-weight: 700; letter-spacing: .14em; }
.nvad-paso__ico { display: grid; place-items: center; width: 6.4rem; height: 6.4rem; margin-bottom: 2rem; border-radius: 999px; background: var(--ad-turq-suave); color: var(--ad-turq-txt); }
.nvad-paso__ico svg { width: 2.8rem; height: 2.8rem; }
.nvad-paso__t { margin: 0 0 .8rem; color: var(--ad-marino); font-size: 1.8rem; font-weight: 700; line-height: 1.25; }
.nvad-paso__d { margin: 0; color: var(--ad-texto); font-size: 1.4rem; line-height: 1.55; }
.nvad-paso:last-child { border-color: var(--ad-marino); background: var(--ad-marino); }
.nvad-paso:last-child .nvad-paso__n { color: var(--ad-cyan); }
.nvad-paso:last-child .nvad-paso__ico { background: var(--ad-cyan); color: var(--ad-marino); }
.nvad-paso:last-child .nvad-paso__t { color: #fff; }
.nvad-paso:last-child .nvad-paso__d { color: rgba(255, 255, 255, .8); }
.nvad-pie { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 1.6rem 3.2rem; margin-top: 4rem; }
.nvad-pie p { margin: 0; color: var(--ad-texto); font-size: 1.4rem; }

/* Requisitos: panel marino + lista de verificación (como Validación/Homologación) */
.nvad-sec--req { background: var(--ad-fondo); }
.nvad-docs { display: grid; grid-template-columns: minmax(0, 4fr) minmax(0, 8fr); overflow: hidden; border: 1px solid var(--ad-borde); border-radius: 2.4rem; background: #fff; }
.nvad-docs__panel { display: flex; flex-direction: column; justify-content: center; align-items: flex-start; gap: 1.4rem; padding: clamp(3.2rem, 2rem + 2.4vw, 5.6rem); background: var(--ad-marino); color: #fff; }
.nvad-docs__ante { margin: 0; color: var(--ad-cyan); font-size: 1.3rem; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; }
.nvad-docs__titulo { margin: 0; color: #fff; font-size: clamp(2.8rem, 2.2rem + 1.2vw, 3.6rem); font-weight: 700; line-height: 1.12; letter-spacing: -.015em; }
.nvad-docs__ayuda { margin: 0 0 .8rem; color: rgba(255, 255, 255, .8); font-size: 1.5rem; line-height: 1.6; }
.nvad-docs__der { display: flex; flex-direction: column; justify-content: center; padding: clamp(2.8rem, 1.8rem + 2vw, 4.8rem) clamp(2.4rem, 1.2rem + 2.4vw, 5.6rem); }
.nvad-docs__sub { display: flex; align-items: center; gap: 1.2rem; margin: 0 0 .8rem; color: var(--ad-turq-txt); font-size: 1.25rem; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; }
.nvad-docs__sub::after { content: ""; flex: 1; height: 1px; background: var(--ad-borde); }
.nvad-docs__lista { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 4rem; margin: 0; padding: 0; list-style: none; }
.nvad-docs__lista li { display: flex; align-items: flex-start; gap: 1.6rem; padding: 2.4rem 0; border-bottom: 1px solid var(--ad-borde); }
.nvad-docs__lista li:nth-last-child(-n+2) { border-bottom: 0; }
.nvad-docs__ico { display: grid; place-items: center; flex: none; width: 4.8rem; height: 4.8rem; border-radius: 999px; background: var(--ad-turq-suave); color: var(--ad-turq-txt); }
.nvad-docs__ico svg { width: 2.2rem; height: 2.2rem; }
.nvad-docs__lista h3 { display: flex; flex-wrap: wrap; align-items: center; gap: .6rem 1rem; margin: .4rem 0 .6rem; color: var(--ad-marino); font-size: 1.65rem; font-weight: 700; line-height: 1.3; }
.nvad-docs__lista p { margin: 0; color: var(--ad-texto); font-size: 1.4rem; line-height: 1.55; }
.nvad-docs__nivel { padding: .3rem 1rem; border-radius: 999px; background: var(--ad-marino); color: #fff; font-size: 1.1rem; font-weight: 700; letter-spacing: .04em; text-transform: uppercase; }

/* ---------------------------------------------------------------- asesores */
#brxe-cusnid { background: #fff !important; }
#brxe-mwswgx { align-items: end !important; margin-bottom: 4rem; }
#brxe-gljtti { display: flex !important; flex-direction: column; }
#brxe-elrume { order: -1; margin: 0 0 1.2rem; color: var(--ad-turq-txt) !important; font-size: 1.3rem !important; font-weight: 700 !important; letter-spacing: .14em; text-transform: uppercase; }
#brxe-zuzjjp { margin: 0; color: var(--ad-marino) !important; font-size: clamp(3rem, 2.2rem + 1.8vw, 4.4rem) !important; font-weight: 700 !important; line-height: 1.1 !important; letter-spacing: -.02em; }
#brxe-hyxbpo { display: flex !important; flex-direction: column; align-items: flex-start; }
#brxe-hyxbpo p { margin: 0; color: var(--ad-texto) !important; font-size: 1.6rem !important; line-height: 1.6 !important; }
#brxe-hyxbpo .nvad-btn { margin-top: 2rem; }
.nvad-desliza { display: none; }

#brxe-zutyns { grid-template-columns: repeat(5, minmax(0, 1fr)) !important; gap: 2rem !important; }
#brxe-zutyns > .tarjeta-asesores { display: flex !important; flex-direction: column !important; align-items: stretch !important; overflow: hidden; padding: 0 !important; border: 1px solid var(--ad-borde) !important; border-radius: 2rem !important; background: #fff !important; box-shadow: none !important; transition: border-color .2s; }
#brxe-zutyns > .tarjeta-asesores:hover { border-color: var(--ad-turquesa) !important; }
#brxe-zutyns > .tarjeta-asesores > img { display: block; width: 100% !important; max-width: none !important; height: auto !important; aspect-ratio: 1 / 1; object-fit: cover; object-position: center 20%; border-radius: 0 !important; background: var(--ad-fondo); }
#brxe-zutyns .tarjeta-asesores > div { display: flex !important; flex-direction: column !important; flex: 1; gap: 1.6rem !important; width: 100% !important; padding: 2rem 2rem 2.2rem !important; }
#brxe-zutyns .contacto-asesores-heading { margin: 0 !important; color: var(--ad-marino) !important; font-size: 1.6rem !important; font-weight: 700 !important; line-height: 1.3 !important; }
#brxe-zutyns .cargo-asesor, #brxe-zutyns .cargo-asesor p { margin: .4rem 0 0 !important; color: var(--ad-turq-txt) !important; font-size: 1.25rem !important; font-weight: 500 !important; line-height: 1.4 !important; }
#brxe-zutyns .tarjeta-asesores > div > div:last-child { display: flex !important; flex-direction: row !important; gap: .8rem !important; margin-top: auto; }
#brxe-zutyns .bricks-link-wrapper { display: grid !important; place-items: center; width: 4rem; height: 4rem; border: 1px solid var(--ad-borde); border-radius: 999px; color: var(--ad-marino); transition: background-color .2s, border-color .2s, color .2s; }
#brxe-zutyns .bricks-link-wrapper:hover, #brxe-zutyns .bricks-link-wrapper:focus-visible { background: var(--ad-marino); border-color: var(--ad-marino); color: #fff; }
#brxe-zutyns .bricks-link-wrapper i { color: inherit !important; font-size: 1.6rem !important; line-height: 1 !important; }

/* ---------------------------------------------------------------- franja final */
.nvad-sec--final { background: var(--ad-marino); }
.nvad-final { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 2.4rem 4rem; padding-top: clamp(4.8rem, 3.2rem + 3vw, 7.2rem); padding-bottom: clamp(4.8rem, 3.2rem + 3vw, 7.2rem); }
.nvad-final__t { margin: 0; color: #fff; font-size: clamp(2.6rem, 2rem + 1.4vw, 3.6rem); font-weight: 700; line-height: 1.15; letter-spacing: -.015em; }
.nvad-final__d { margin: 1rem 0 0; color: rgba(255, 255, 255, .8); font-size: 1.6rem; }

/* ---------------------------------------------------------------- responsive */
@media (max-width: 1199px) {
	#brxe-zutyns { grid-template-columns: repeat(4, minmax(0, 1fr)) !important; }
}
@media (max-width: 991px) {
	.nvad-pasos { grid-template-columns: 1fr; gap: 1.2rem; }
	.nvad-pasos::before { top: 4rem; bottom: 4rem; left: 4.4rem; right: auto; width: 1px; height: auto; }
	.nvad-paso { display: grid; grid-template-columns: 4.8rem minmax(0, 1fr); grid-template-rows: auto auto; column-gap: 1.8rem; align-items: start; padding: 2rem 2.2rem; text-align: left; }
	.nvad-paso__ico { grid-row: 1 / 3; width: 4.8rem; height: 4.8rem; margin: 0; }
	.nvad-paso__ico svg { width: 2.2rem; height: 2.2rem; }
	.nvad-paso__n { position: absolute; top: 2rem; right: 2.2rem; margin: 0; }
	.nvad-paso__t { margin: .2rem 0 .4rem; font-size: 1.7rem; padding-right: 3rem; }
	.nvad-docs { grid-template-columns: 1fr; }
	.nvad-docs__lista { grid-template-columns: 1fr; }
	.nvad-docs__lista li:nth-last-child(-n+2) { border-bottom: 1px solid var(--ad-borde); }
	.nvad-docs__lista li:last-child { border-bottom: 0; }
	#brxe-zutyns { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; }
}
@media (max-width: 767px) {
	.nvad-chip { font-size: 1.25rem; }
	.nvad-lead { font-size: 1.6rem; }
	#brxe-vnvrjr .nvad-botones, .nvad-final .nvad-botones { flex-direction: column; width: 100%; }
	#brxe-vnvrjr .nvad-btn, .nvad-final .nvad-btn { width: 100%; }
	.nvad-datos { flex-direction: column; gap: 1.2rem; margin-top: 2.8rem; }
	.nvad-pie { flex-direction: column; text-align: center; }
	.nvad-docs__panel { padding: 3.2rem 2.4rem; }
	.nvad-docs__der { padding: 2rem 2.4rem; }
	/* Carrusel de asesores: en vez de 15 tarjetas una bajo otra */
	#brxe-mwswgx { margin-bottom: 2.4rem; }
	#brxe-zutyns { display: flex !important; flex-direction: row !important; flex-wrap: nowrap !important; gap: 1.2rem !important; margin-right: -5vw; padding: 0 5vw .8rem 0; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; }
	#brxe-zutyns::-webkit-scrollbar { display: none; }
	#brxe-zutyns > .tarjeta-asesores { flex: 0 0 68% !important; scroll-snap-align: start; }
	.nvad-desliza { display: block; margin: 1.6rem 0 0; color: var(--ad-turq-txt); font-size: 1.3rem; font-weight: 600; }
}

/* Ajustes: el texto de Bricks (#brxe-hyxbpo) pinta sus enlaces y párrafos */
#brxe-hyxbpo .nvad-btn--marino { color: #fff !important; font-size: 1.5rem !important; font-weight: 700 !important; text-decoration: none !important; }
#brxe-hyxbpo .nvad-btn--marino:hover, #brxe-hyxbpo .nvad-btn--marino:focus-visible { color: var(--ad-marino) !important; }
#brxe-hyxbpo .nvad-desliza { margin: 1.6rem 0 0 !important; color: var(--ad-turq-txt) !important; font-size: 1.3rem !important; font-weight: 600 !important; }
@media (max-width: 767px) {
	#brxe-zutyns > .tarjeta-asesores { flex-basis: 62% !important; }
	#brxe-zutyns .tarjeta-asesores > div { padding: 1.6rem 1.6rem 1.8rem !important; gap: 1.2rem !important; }
}
.nvad-ante--form { margin-bottom: -1rem; } /* el bloque de Bricks separa sus hijos 20 px */
.nvad-ante--form + #brxe-emasut { margin-top: 0 !important; }
