.elementor-51830 .elementor-element.elementor-element-d96a78f{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}:root{--page-title-display:none;}/* Start custom CSS for container, class: .elementor-element-d96a78f *//* ==========================================================
APRENDER ONLINE UTN
LANDING DE RUTAS · CSS GLOBAL DEFINITIVO
========================================================== */

@import url("https://fonts.googleapis.com/css2?family=Funnel+Display:wght@400;500;600;700;800&display=swap");

/* ==========================================================
VARIABLES GENERALES
========================================================== */

:root {
--ao-dark: #0c0819;
--ao-dark-soft: #170b29;
--ao-purple: #590193;
--ao-purple-light: #9358d7;
--ao-blue: #352a9c;
--ao-orange: #ed6725;
--ao-soft: #d9c7c6;
--ao-light: #f5f1f3;
--ao-white: #ffffff;

--ao-container: 1500px;
--ao-padding-desktop: clamp(20px, 5vw, 82px);
--ao-section-space: clamp(90px, 10vw, 165px);

--ao-border-dark: rgba(12, 8, 25, 0.12);
--ao-border-light: rgba(255, 255, 255, 0.12);

--ao-shadow-light:
0 30px 90px rgba(12, 8, 25, 0.07),
inset 0 1px 0 rgba(255, 255, 255, 0.95);

--ao-shadow-dark:
0 30px 90px rgba(0, 0, 0, 0.2),
inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

/* ==========================================================
RESET AISLADO
========================================================== */

.ao-rutas-hero,
.ao-recap,
.ao-.elementor-51830 .elementor-element.elementor-element-d96a78f,
.ao-comparador,
.ao-autoridad,
.ao-clear-carousel,
.ao-final-cta,
.ao-rutas-hero *,
.ao-recap *,
.ao-.elementor-51830 .elementor-element.elementor-element-d96a78f *,
.ao-comparador *,
.ao-autoridad *,
.ao-clear-carousel *,
.ao-final-cta *,
.ao-rutas-hero *::before,
.ao-rutas-hero *::after,
.ao-recap *::before,
.ao-recap *::after,
.ao-.elementor-51830 .elementor-element.elementor-element-d96a78f *::before,
.ao-.elementor-51830 .elementor-element.elementor-element-d96a78f *::after,
.ao-comparador *::before,
.ao-comparador *::after,
.ao-autoridad *::before,
.ao-autoridad *::after,
.ao-clear-carousel *::before,
.ao-clear-carousel *::after,
.ao-final-cta *::before,
.ao-final-cta *::after {
box-sizing: border-box;
}

.ao-rutas-hero,
.ao-recap,
.ao-.elementor-51830 .elementor-element.elementor-element-d96a78f,
.ao-comparador,
.ao-autoridad,
.ao-clear-carousel,
.ao-final-cta,
.ao-rutas-hero h1,
.ao-rutas-hero h2,
.ao-rutas-hero h3,
.ao-rutas-hero h4,
.ao-rutas-hero p,
.ao-rutas-hero span,
.ao-rutas-hero a,
.ao-rutas-hero button,
.ao-recap h1,
.ao-recap h2,
.ao-recap h3,
.ao-recap h4,
.ao-recap p,
.ao-recap span,
.ao-recap a,
.ao-recap button,
.ao-.elementor-51830 .elementor-element.elementor-element-d96a78f h1,
.ao-.elementor-51830 .elementor-element.elementor-element-d96a78f h2,
.ao-.elementor-51830 .elementor-element.elementor-element-d96a78f h3,
.ao-.elementor-51830 .elementor-element.elementor-element-d96a78f h4,
.ao-.elementor-51830 .elementor-element.elementor-element-d96a78f p,
.ao-.elementor-51830 .elementor-element.elementor-element-d96a78f span,
.ao-.elementor-51830 .elementor-element.elementor-element-d96a78f a,
.ao-.elementor-51830 .elementor-element.elementor-element-d96a78f button,
.ao-comparador h1,
.ao-comparador h2,
.ao-comparador h3,
.ao-comparador h4,
.ao-comparador p,
.ao-comparador span,
.ao-comparador a,
.ao-comparador button,
.ao-autoridad h1,
.ao-autoridad h2,
.ao-autoridad h3,
.ao-autoridad h4,
.ao-autoridad p,
.ao-autoridad span,
.ao-autoridad a,
.ao-autoridad button,
.ao-clear-carousel h1,
.ao-clear-carousel h2,
.ao-clear-carousel h3,
.ao-clear-carousel h4,
.ao-clear-carousel p,
.ao-clear-carousel span,
.ao-clear-carousel li,
.ao-clear-carousel a,
.ao-clear-carousel button,
.ao-final-cta h1,
.ao-final-cta h2,
.ao-final-cta h3,
.ao-final-cta h4,
.ao-final-cta p,
.ao-final-cta span,
.ao-final-cta a,
.ao-final-cta button {
font-family:
"Funnel Display",
Arial,
Helvetica,
sans-serif !important;

font-synthesis: none !important;
}

.ao-rutas-hero h1,
.ao-rutas-hero h2,
.ao-rutas-hero h3,
.ao-rutas-hero h4,
.ao-recap h1,
.ao-recap h2,
.ao-recap h3,
.ao-recap h4,
.ao-.elementor-51830 .elementor-element.elementor-element-d96a78f h1,
.ao-.elementor-51830 .elementor-element.elementor-element-d96a78f h2,
.ao-.elementor-51830 .elementor-element.elementor-element-d96a78f h3,
.ao-.elementor-51830 .elementor-element.elementor-element-d96a78f h4,
.ao-comparador h1,
.ao-comparador h2,
.ao-comparador h3,
.ao-comparador h4,
.ao-autoridad h1,
.ao-autoridad h2,
.ao-autoridad h3,
.ao-autoridad h4,
.ao-clear-carousel h1,
.ao-clear-carousel h2,
.ao-clear-carousel h3,
.ao-clear-carousel h4,
.ao-final-cta h1,
.ao-final-cta h2,
.ao-final-cta h3,
.ao-final-cta h4 {
text-transform: none !important;
}

.ao-rutas-hero a,
.ao-recap a,
.ao-.elementor-51830 .elementor-element.elementor-element-d96a78f a,
.ao-comparador a,
.ao-autoridad a,
.ao-clear-carousel a,
.ao-final-cta a {
text-decoration: none !important;
}

/* ==========================================================
BLOQUE 1 · HERO
========================================================== */

.ao-rutas-hero {
position: relative;
width: 100%;
min-height: 100svh;
overflow: hidden;
isolation: isolate;
display: flex;

color: var(--ao-white);

background:
radial-gradient(
circle at 82% 12%,
rgba(147, 88, 215, 0.2) 0,
rgba(147, 88, 215, 0.05) 28%,
transparent 54%
),
radial-gradient(
circle at 12% 92%,
rgba(53, 42, 156, 0.18) 0,
transparent 42%
),
linear-gradient(
145deg,
#0c0819 0%,
#11091e 48%,
#0c0819 100%
);
}

.ao-rutas-hero__container {
position: relative;
z-index: 3;

width: min(100%, 1640px);
min-height: 100svh;

margin: 0 auto;

padding:
clamp(25px, 3vw, 44px)
var(--ao-padding-desktop)
clamp(28px, 3vw, 46px);

display: flex;
flex-direction: column;
}

.ao-rutas-hero__grid {
position: absolute;
z-index: 0;
inset: 0;

pointer-events: none;
opacity: 0.28;

background-image:
linear-gradient(
rgba(255, 255, 255, 0.035) 1px,
transparent 1px
),
linear-gradient(
90deg,
rgba(255, 255, 255, 0.035) 1px,
transparent 1px
);

background-size: 70px 70px;

-webkit-mask-image:
linear-gradient(
to bottom,
rgba(0, 0, 0, 0.95),
rgba(0, 0, 0, 0.35) 75%,
transparent 100%
);

mask-image:
linear-gradient(
to bottom,
rgba(0, 0, 0, 0.95),
rgba(0, 0, 0, 0.35) 75%,
transparent 100%
);
}

.ao-rutas-hero__glow {
position: absolute;
z-index: 1;

border-radius: 50%;
pointer-events: none;
filter: blur(8px);
}

.ao-rutas-hero__glow--purple {
width: clamp(300px, 35vw, 620px);
height: clamp(300px, 35vw, 620px);

top: -32%;
right: -5%;

background: rgba(147, 88, 215, 0.15);
box-shadow: 0 0 180px rgba(147, 88, 215, 0.2);
}

.ao-rutas-hero__glow--orange {
width: 240px;
height: 240px;

right: 22%;
bottom: -170px;

background: rgba(237, 103, 37, 0.09);
box-shadow: 0 0 140px rgba(237, 103, 37, 0.12);
}

.ao-rutas-hero__top {
width: 100%;

display: grid;
grid-template-columns: auto 1fr auto;
align-items: center;
gap: 22px;

padding-bottom: 25px;

border-bottom: 1px solid rgba(255, 255, 255, 0.11);
}

.ao-rutas-hero__eyebrow {
display: inline-flex;
align-items: center;
gap: 10px;

color: rgba(255, 255, 255, 0.92);

font-size: 12px !important;
font-weight: 700 !important;
line-height: 1.2;
letter-spacing: 0.11em;
text-transform: uppercase;
}

.ao-rutas-hero__eyebrow-dot {
width: 8px;
height: 8px;
flex: 0 0 8px;

border-radius: 50%;

background: var(--ao-orange);
box-shadow: 0 0 15px rgba(237, 103, 37, 0.9);
}

.ao-rutas-hero__top-line {
width: 100%;
height: 1px;

background:
linear-gradient(
90deg,
rgba(255, 255, 255, 0.16),
transparent
);
}

.ao-rutas-hero__top-label {
color: rgba(255, 255, 255, 0.45);

font-size: 11px !important;
font-weight: 600 !important;
line-height: 1.2;
letter-spacing: 0.11em;
text-transform: uppercase;
}

.ao-rutas-hero__content {
flex: 1;

display: flex;
flex-direction: column;
justify-content: center;

padding:
clamp(65px, 10vh, 125px)
0
clamp(50px, 7vh, 85px);
}

.ao-rutas-hero__title {
width: 100%;
max-width: 1500px;

margin: 0 !important;
padding: 0 !important;

display: flex;
flex-direction: column;

color: #ffffff !important;

font-size: clamp(62px, 8.5vw, 145px) !important;
font-weight: 600 !important;
line-height: 0.87 !important;
letter-spacing: -0.07em !important;
}

.ao-rutas-hero__title-main {
display: block;
color: #ffffff;
}

.ao-rutas-hero__title-accent {
display: block;

margin-top: 0.13em;
padding-bottom: 0.07em;

color: transparent;

background:
linear-gradient(
100deg,
#ffffff 0%,
#d9c7c6 28%,
#9358d7 68%,
#ed6725 112%
);

-webkit-background-clip: text;
background-clip: text;
}

.ao-rutas-hero__footer {
display: grid;

grid-template-columns:
minmax(0, 720px)
auto;

justify-content: space-between;
align-items: end;

gap: clamp(40px, 7vw, 120px);

margin-top: clamp(45px, 6vw, 90px);
}

.ao-rutas-hero__copy {
position: relative;

max-width: 720px;

padding-left: 25px;
}

.ao-rutas-hero__copy::before {
content: "";

position: absolute;
top: 3px;
bottom: 4px;
left: 0;

width: 2px;

border-radius: 10px;

background:
linear-gradient(
to bottom,
var(--ao-orange),
var(--ao-purple-light)
);
}

.ao-rutas-hero__copy p {
margin: 0 !important;
padding: 0 !important;

color: rgba(255, 255, 255, 0.68) !important;

font-size: clamp(17px, 1.35vw, 22px) !important;
font-weight: 400 !important;
line-height: 1.5 !important;
letter-spacing: 0 !important;
}

.ao-rutas-hero__copy p + p {
margin-top: 13px !important;
}

.ao-rutas-hero__action {
display: flex;
justify-content: flex-end;
}

.ao-rutas-hero__button {
min-height: 64px;

padding:
7px
8px
7px
28px;

border: 1px solid rgba(255, 255, 255, 0.15);
border-radius: 999px;

display: inline-flex;
align-items: center;
justify-content: space-between;

gap: 24px;

color: #ffffff !important;

background:
linear-gradient(
135deg,
#590193 0%,
#7422b3 100%
);

box-shadow:
0 22px 60px rgba(89, 1, 147, 0.35),
inset 0 1px 0 rgba(255, 255, 255, 0.17);

font-size: 16px !important;
font-weight: 650 !important;
line-height: 1 !important;
white-space: nowrap;

transition:
transform 0.25s ease,
box-shadow 0.25s ease,
background 0.25s ease;
}

.ao-rutas-hero__button:hover {
color: #ffffff !important;

transform: translateY(-4px);

background:
linear-gradient(
135deg,
#6a0ba7 0%,
#8535c4 100%
);

box-shadow:
0 27px 70px rgba(89, 1, 147, 0.43),
inset 0 1px 0 rgba(255, 255, 255, 0.2);
}

.ao-rutas-hero__button-icon {
width: 48px;
height: 48px;
flex: 0 0 48px;

border-radius: 50%;

display: grid;
place-items: center;

color: var(--ao-dark);

background: #ffffff;
}

.ao-rutas-hero__button-icon svg {
width: 20px;
height: 20px;

fill: none;
stroke: currentColor;

stroke-width: 1.8;
stroke-linecap: round;
stroke-linejoin: round;

transition: transform 0.25s ease;
}

.ao-rutas-hero__button:hover
.ao-rutas-hero__button-icon svg {
transform: translateX(3px);
}

.ao-rutas-hero__scroll {
align-self: flex-start;

display: inline-flex;
align-items: center;
gap: 10px;

color: rgba(255, 255, 255, 0.43) !important;

font-size: 10px !important;
font-weight: 650 !important;
line-height: 1;
letter-spacing: 0.12em;
text-transform: uppercase;

transition: color 0.25s ease;
}

.ao-rutas-hero__scroll svg {
width: 17px;
height: 17px;

fill: none;
stroke: currentColor;

stroke-width: 1.7;
stroke-linecap: round;
stroke-linejoin: round;

transition: transform 0.25s ease;
}

.ao-rutas-hero__scroll:hover {
color: #ffffff !important;
}

.ao-rutas-hero__scroll:hover svg {
transform: translateY(4px);
}

/* ==========================================================
BLOQUE 2 · RECAP
========================================================== */

.ao-recap {
position: relative;
width: 100%;
overflow: hidden;
isolation: isolate;

padding:
var(--ao-section-space)
var(--ao-padding-desktop);

color: var(--ao-dark);

background:
radial-gradient(
circle at 90% 12%,
rgba(147, 88, 215, 0.12),
transparent 32%
),
radial-gradient(
circle at 5% 90%,
rgba(237, 103, 37, 0.07),
transparent 28%
),
linear-gradient(
180deg,
#f9f7f8 0%,
#f4f0f2 100%
);
}

.ao-recap__container {
position: relative;
z-index: 3;

width: min(100%, var(--ao-container));

margin: 0 auto;
}

.ao-recap__grid {
position: absolute;
z-index: 0;
inset: 0;

opacity: 0.28;
pointer-events: none;

background-image:
linear-gradient(
rgba(12, 8, 25, 0.035) 1px,
transparent 1px
),
linear-gradient(
90deg,
rgba(12, 8, 25, 0.035) 1px,
transparent 1px
);

background-size: 70px 70px;

-webkit-mask-image:
linear-gradient(
to bottom,
black,
transparent 86%
);

mask-image:
linear-gradient(
to bottom,
black,
transparent 86%
);
}

.ao-recap__decor {
position: absolute;
z-index: 0;

border-radius: 50%;
pointer-events: none;
}

.ao-recap__decor--purple {
width: 420px;
height: 420px;

top: 15%;
right: -270px;

background: rgba(147, 88, 215, 0.08);
box-shadow: 0 0 150px rgba(147, 88, 215, 0.1);
}

.ao-recap__decor--orange {
width: 280px;
height: 280px;

left: -190px;
bottom: 12%;

background: rgba(237, 103, 37, 0.06);
box-shadow: 0 0 130px rgba(237, 103, 37, 0.08);
}

.ao-recap__header {
display: grid;

grid-template-columns:
minmax(0, 1.2fr)
minmax(320px, 0.6fr);

align-items: end;

gap: clamp(45px, 8vw, 130px);
}

.ao-recap__eyebrow {
display: flex;
align-items: center;
gap: 13px;

margin-bottom: 25px;

color: var(--ao-purple) !important;

font-size: 11px !important;
font-weight: 750 !important;
line-height: 1.2 !important;
letter-spacing: 0.13em !important;
text-transform: uppercase;
}

.ao-recap__eyebrow-line {
width: 42px;
height: 2px;
flex: 0 0 42px;

background: var(--ao-orange);
}

.ao-recap__title {
margin: 0 !important;
padding: 0 !important;

color: var(--ao-dark) !important;

font-size: clamp(58px, 7.5vw, 118px) !important;
font-weight: 600 !important;
line-height: 0.88 !important;
letter-spacing: -0.068em !important;
}

.ao-recap__title span {
display: block;

margin-top: 0.12em;

color: var(--ao-purple) !important;
}

.ao-recap__intro {
max-width: 540px;

padding-bottom: 8px;
}

.ao-recap__intro p {
margin: 0 !important;

color: rgba(12, 8, 25, 0.68) !important;

font-size: clamp(18px, 1.45vw, 23px) !important;
font-weight: 400 !important;
line-height: 1.55 !important;
letter-spacing: 0 !important;
}

.ao-recap__areas {
margin-top: clamp(70px, 8vw, 125px);

display: grid;
grid-template-columns: repeat(3, minmax(0, 1fr));

overflow: hidden;

border: 1px solid rgba(12, 8, 25, 0.12);
border-radius: 28px;

background: rgba(255, 255, 255, 0.68);

box-shadow: var(--ao-shadow-light);

backdrop-filter: blur(18px);
-webkit-backdrop-filter: blur(18px);
}

.ao-recap__area {
position: relative;

min-height: 190px;

padding: 27px 28px;

display: flex;
flex-direction: column;
justify-content: space-between;

border-right: 1px solid rgba(12, 8, 25, 0.1);
border-bottom: 1px solid rgba(12, 8, 25, 0.1);

transition:
transform 0.28s ease,
background-color 0.28s ease;
}

.ao-recap__area:nth-child(3n) {
border-right: none;
}

.ao-recap__area:nth-child(n + 4) {
border-bottom: none;
}

.ao-recap__area::after {
content: "";

position: absolute;
right: 27px;
bottom: 0;
left: 27px;

height: 3px;

opacity: 0;
transform: scaleX(0);
transform-origin: left;

border-radius: 20px 20px 0 0;

background:
linear-gradient(
90deg,
var(--ao-purple),
var(--ao-purple-light),
var(--ao-orange)
);

transition:
opacity 0.28s ease,
transform 0.28s ease;
}

.ao-recap__area:hover {
z-index: 2;

transform: translateY(-5px);

background: #ffffff;
}

.ao-recap__area:hover::after {
opacity: 1;
transform: scaleX(1);
}

.ao-recap__number {
color: var(--ao-purple-light) !important;

font-size: 10px !important;
font-weight: 750 !important;
line-height: 1 !important;
letter-spacing: 0.14em !important;
}

.ao-recap__area h3 {
margin: 0 !important;
padding: 0 !important;

color: var(--ao-dark) !important;

font-size: clamp(28px, 2.4vw, 42px) !important;
font-weight: 600 !important;
line-height: 1 !important;
letter-spacing: -0.045em !important;
}

.ao-recap__question {
position: relative;

overflow: hidden;

margin-top: clamp(48px, 6vw, 90px);

padding:
clamp(38px, 5vw, 72px)
clamp(28px, 5vw, 72px);

border-radius: 31px;

color: #ffffff;

background:
radial-gradient(
circle at 87% 10%,
rgba(147, 88, 215, 0.3),
transparent 34%
),
linear-gradient(
135deg,
#0c0819 0%,
#160b29 55%,
#24103d 100%
);

box-shadow: 0 35px 100px rgba(12, 8, 25, 0.16);
}

.ao-recap__question::before {
content: "";

position: absolute;
inset: 0;

opacity: 0.18;
pointer-events: none;

background-image:
linear-gradient(
rgba(255, 255, 255, 0.05) 1px,
transparent 1px
),
linear-gradient(
90deg,
rgba(255, 255, 255, 0.05) 1px,
transparent 1px
);

background-size: 54px 54px;

-webkit-mask-image:
linear-gradient(
90deg,
black,
transparent 90%
);

mask-image:
linear-gradient(
90deg,
black,
transparent 90%
);
}

.ao-recap__question-top,
.ao-recap__question-title {
position: relative;
z-index: 2;
}

.ao-recap__question-top {
display: flex;
align-items: center;
justify-content: space-between;

gap: 35px;
}

.ao-recap__question-label {
flex: 0 0 auto;

color: var(--ao-orange) !important;

font-size: 11px !important;
font-weight: 750 !important;
line-height: 1 !important;
letter-spacing: 0.13em !important;
text-transform: uppercase;
}

.ao-recap__question-intro {
max-width: 560px;

margin: 0 !important;

color: rgba(255, 255, 255, 0.65) !important;

font-size: clamp(16px, 1.2vw, 19px) !important;
font-weight: 400 !important;
line-height: 1.5 !important;
text-align: right;
}

.ao-recap__question-title {
max-width: 1100px;

margin:
clamp(55px, 7vw, 100px)
0
0 !important;

padding: 0 !important;

color: #ffffff !important;

font-size: clamp(52px, 6.7vw, 104px) !important;
font-weight: 600 !important;
line-height: 0.9 !important;
letter-spacing: -0.064em !important;
}

.ao-recap__question-title span {
display: block;

margin-top: 0.12em;

color: var(--ao-purple-light) !important;
}

.ao-recap__needs {
margin-top: clamp(42px, 5vw, 72px);

display: grid;

grid-template-columns:
minmax(0, 1fr)
minmax(300px, 0.45fr);

gap: 1px;

overflow: hidden;

border: 1px solid rgba(12, 8, 25, 0.11);
border-radius: 26px;

background: rgba(12, 8, 25, 0.1);
}

.ao-recap__needs-copy,
.ao-recap__needs-conclusion {
background: rgba(255, 255, 255, 0.77);

backdrop-filter: blur(15px);
-webkit-backdrop-filter: blur(15px);
}

.ao-recap__needs-copy {
padding: clamp(30px, 4vw, 55px);
}

.ao-recap__needs-copy p {
position: relative;

margin: 0 !important;
padding-left: 27px !important;

color: rgba(12, 8, 25, 0.7) !important;

font-size: clamp(18px, 1.45vw, 23px) !important;
font-weight: 450 !important;
line-height: 1.48 !important;
}

.ao-recap__needs-copy p::before {
content: "";

position: absolute;
top: 0.58em;
left: 0;

width: 8px;
height: 8px;

border-radius: 50%;

background: var(--ao-purple-light);
}

.ao-recap__needs-copy p + p {
margin-top: 21px !important;
}

.ao-recap__needs-conclusion {
padding: clamp(30px, 4vw, 55px);

display: flex;
align-items: flex-end;

background:
linear-gradient(
145deg,
rgba(89, 1, 147, 0.08),
rgba(255, 255, 255, 0.88)
);
}

.ao-recap__needs-conclusion p {
max-width: 380px;

margin: 0 !important;

color: var(--ao-purple) !important;

font-size: clamp(27px, 2.8vw, 43px) !important;
font-weight: 600 !important;
line-height: 1.05 !important;
letter-spacing: -0.045em !important;
}

.ao-recap__closing {
margin-top: clamp(48px, 6vw, 90px);

padding-top: clamp(42px, 5vw, 70px);

display: grid;

grid-template-columns:
minmax(0, 1fr)
auto;

align-items: end;

gap: 45px;

border-top: 1px solid rgba(12, 8, 25, 0.13);
}

.ao-recap__closing-copy p {
margin: 0 0 13px !important;

color: rgba(12, 8, 25, 0.62) !important;

font-size: clamp(17px, 1.3vw, 21px) !important;
font-weight: 400 !important;
line-height: 1.5 !important;
}

.ao-recap__closing-copy h3 {
margin: 0 !important;
padding: 0 !important;

color: var(--ao-dark) !important;

font-size: clamp(46px, 5.8vw, 90px) !important;
font-weight: 600 !important;
line-height: 0.94 !important;
letter-spacing: -0.06em !important;
}

.ao-recap__button {
min-height: 64px;

padding:
7px
8px
7px
27px;

border: 1px solid rgba(89, 1, 147, 0.15);
border-radius: 999px;

display: inline-flex;
align-items: center;
justify-content: space-between;

gap: 23px;

color: #ffffff !important;

background:
linear-gradient(
135deg,
#590193 0%,
#7422b3 100%
);

box-shadow:
0 20px 55px rgba(89, 1, 147, 0.24),
inset 0 1px 0 rgba(255, 255, 255, 0.17);

font-size: 16px !important;
font-weight: 650 !important;
line-height: 1 !important;
white-space: nowrap;

transition:
transform 0.25s ease,
box-shadow 0.25s ease;
}

.ao-recap__button:hover {
color: #ffffff !important;

transform: translateY(-4px);

box-shadow:
0 26px 65px rgba(89, 1, 147, 0.34),
inset 0 1px 0 rgba(255, 255, 255, 0.2);
}

.ao-recap__button-icon {
width: 48px;
height: 48px;
flex: 0 0 48px;

border-radius: 50%;

display: grid;
place-items: center;

color: var(--ao-dark);

background: #ffffff;
}

.ao-recap__button-icon svg {
width: 20px;
height: 20px;

fill: none;
stroke: currentColor;

stroke-width: 1.8;
stroke-linecap: round;
stroke-linejoin: round;

transition: transform 0.25s ease;
}

.ao-recap__button:hover
.ao-recap__button-icon svg {
transform: translateX(3px);
}

/* ==========================================================
BLOQUE 3 · SELECTOR
========================================================== */

.ao-.elementor-51830 .elementor-element.elementor-element-d96a78f {
position: relative;
width: 100%;
overflow: hidden;
isolation: isolate;

padding:
var(--ao-section-space)
var(--ao-padding-desktop);

color: var(--ao-white);

background:
radial-gradient(
circle at 90% 8%,
rgba(147, 88, 215, 0.2),
transparent 30%
),
radial-gradient(
circle at 7% 86%,
rgba(53, 42, 156, 0.17),
transparent 31%
),
linear-gradient(
145deg,
#0c0819 0%,
#120922 48%,
#0c0819 100%
);
}

.ao-.elementor-51830 .elementor-element.elementor-element-d96a78f__container {
position: relative;
z-index: 3;

width: min(100%, var(--ao-container));

margin: 0 auto;
}

.ao-.elementor-51830 .elementor-element.elementor-element-d96a78f__grid {
position: absolute;
z-index: 0;
inset: 0;

opacity: 0.26;
pointer-events: none;

background-image:
linear-gradient(
rgba(255, 255, 255, 0.035) 1px,
transparent 1px
),
linear-gradient(
90deg,
rgba(255, 255, 255, 0.035) 1px,
transparent 1px
);

background-size: 70px 70px;

-webkit-mask-image:
linear-gradient(
to bottom,
black,
rgba(0, 0, 0, 0.55) 72%,
transparent
);

mask-image:
linear-gradient(
to bottom,
black,
rgba(0, 0, 0, 0.55) 72%,
transparent
);
}

.ao-.elementor-51830 .elementor-element.elementor-element-d96a78f__glow {
position: absolute;
z-index: 0;

border-radius: 50%;
pointer-events: none;
filter: blur(10px);
}

.ao-.elementor-51830 .elementor-element.elementor-element-d96a78f__glow--one {
width: 520px;
height: 520px;

top: -290px;
right: -150px;

background: rgba(147, 88, 215, 0.14);
box-shadow: 0 0 180px rgba(147, 88, 215, 0.18);
}

.ao-.elementor-51830 .elementor-element.elementor-element-d96a78f__glow--two {
width: 360px;
height: 360px;

bottom: 10%;
left: -250px;

background: rgba(53, 42, 156, 0.12);
box-shadow: 0 0 150px rgba(53, 42, 156, 0.16);
}

.ao-.elementor-51830 .elementor-element.elementor-element-d96a78f__header {
display: grid;

grid-template-columns:
minmax(0, 1.25fr)
minmax(320px, 0.55fr);

align-items: end;

gap: clamp(45px, 8vw, 130px);
}

.ao-.elementor-51830 .elementor-element.elementor-element-d96a78f__eyebrow {
display: flex;
align-items: center;
gap: 11px;

margin-bottom: 26px;

color: rgba(255, 255, 255, 0.75) !important;

font-size: 11px !important;
font-weight: 700 !important;
line-height: 1.2 !important;
letter-spacing: 0.13em !important;
text-transform: uppercase;
}

.ao-.elementor-51830 .elementor-element.elementor-element-d96a78f__eyebrow-dot {
width: 8px;
height: 8px;
flex: 0 0 8px;

border-radius: 50%;

background: var(--ao-orange);
box-shadow: 0 0 16px rgba(237, 103, 37, 0.9);
}

.ao-.elementor-51830 .elementor-element.elementor-element-d96a78f__title {
max-width: 1000px;

margin: 0 !important;
padding: 0 !important;

color: #ffffff !important;

font-size: clamp(58px, 7.6vw, 118px) !important;
font-weight: 600 !important;
line-height: 0.88 !important;
letter-spacing: -0.068em !important;
}

.ao-.elementor-51830 .elementor-element.elementor-element-d96a78f__title span {
display: block;

margin-top: 0.11em;

color: transparent !important;

background:
linear-gradient(
100deg,
#ffffff 0%,
#d9c7c6 20%,
#9358d7 67%,
#ed6725 112%
);

-webkit-background-clip: text;
background-clip: text;
}

.ao-.elementor-51830 .elementor-element.elementor-element-d96a78f__header-copy {
max-width: 530px;

padding-bottom: 9px;
}

.ao-.elementor-51830 .elementor-element.elementor-element-d96a78f__header-copy p {
margin: 0 !important;
padding: 0 !important;

color: rgba(255, 255, 255, 0.65) !important;

font-size: clamp(18px, 1.45vw, 23px) !important;
font-weight: 400 !important;
line-height: 1.55 !important;
letter-spacing: 0 !important;
}

.ao-.elementor-51830 .elementor-element.elementor-element-d96a78f__routes {
margin-top: clamp(75px, 9vw, 135px);

display: grid;
grid-template-columns: repeat(2, minmax(0, 1fr));

gap: 22px;
}

.ao-route {
position: relative;

min-height: 610px;

overflow: hidden;

padding: clamp(27px, 3vw, 43px);

display: flex;
flex-direction: column;

border: 1px solid rgba(255, 255, 255, 0.12);
border-radius: 30px;

background:
radial-gradient(
circle at 100% 0%,
rgba(147, 88, 215, 0.11),
transparent 34%
),
rgba(255, 255, 255, 0.045);

box-shadow:
0 25px 70px rgba(0, 0, 0, 0.17),
inset 0 1px 0 rgba(255, 255, 255, 0.07);

backdrop-filter: blur(18px);
-webkit-backdrop-filter: blur(18px);

transition:
transform 0.3s ease,
border-color 0.3s ease,
background-color 0.3s ease,
box-shadow 0.3s ease;
}

.ao-route::before {
content: "";

position: absolute;
top: 0;
right: 35px;
left: 35px;

height: 2px;

opacity: 0;
transform: scaleX(0);
transform-origin: left;

border-radius: 0 0 10px 10px;

background:
linear-gradient(
90deg,
var(--ao-purple),
var(--ao-purple-light),
var(--ao-orange)
);

transition:
opacity 0.3s ease,
transform 0.3s ease;
}

.ao-route:hover {
transform: translateY(-7px);

border-color: rgba(147, 88, 215, 0.42);

background-color: rgba(255, 255, 255, 0.065);

box-shadow:
0 35px 90px rgba(0, 0, 0, 0.24),
0 0 55px rgba(89, 1, 147, 0.1),
inset 0 1px 0 rgba(255, 255, 255, 0.1);
}

.ao-route:hover::before {
opacity: 1;
transform: scaleX(1);
}

.ao-route--featured {
border-color: rgba(147, 88, 215, 0.3);

background:
radial-gradient(
circle at 95% 0%,
rgba(237, 103, 37, 0.14),
transparent 30%
),
radial-gradient(
circle at 0% 100%,
rgba(147, 88, 215, 0.15),
transparent 35%
),
linear-gradient(
145deg,
rgba(89, 1, 147, 0.24),
rgba(255, 255, 255, 0.05)
);
}

.ao-route__top {
min-height: 52px;

display: flex;
align-items: flex-start;
justify-content: space-between;

gap: 20px;
}

.ao-route__number {
color: var(--ao-purple-light) !important;

font-size: 11px !important;
font-weight: 750 !important;
line-height: 1 !important;
letter-spacing: 0.14em !important;
text-transform: uppercase;
}

.ao-route__badge {
padding: 8px 12px;

border: 1px solid rgba(237, 103, 37, 0.28);
border-radius: 999px;

color: #ff9d6c !important;

background: rgba(237, 103, 37, 0.09);

font-size: 10px !important;
font-weight: 700 !important;
line-height: 1 !important;
letter-spacing: 0.1em !important;
text-transform: uppercase;
}

.ao-route__icon {
width: 46px;
height: 46px;
flex: 0 0 46px;

border: 1px solid rgba(255, 255, 255, 0.13);
border-radius: 14px;

display: grid;
place-items: center;

color: var(--ao-purple-light);

background: rgba(255, 255, 255, 0.045);
}

.ao-route__icon svg {
width: 22px;
height: 22px;

fill: none;
stroke: currentColor;

stroke-width: 1.6;
stroke-linecap: round;
stroke-linejoin: round;
}

.ao-route__content {
flex: 1;

display: flex;
flex-direction: column;
}

.ao-route__need {
max-width: 600px;

margin:
clamp(25px, 3vw, 42px)
0
0 !important;

padding: 0 !important;

color: #ffffff !important;

font-size: clamp(33px, 3.2vw, 52px) !important;
font-weight: 600 !important;
line-height: 0.98 !important;
letter-spacing: -0.05em !important;
}

.ao-route__recommendation {
margin-top: clamp(35px, 4vw, 58px);

padding-top: 26px;

border-top: 1px solid rgba(255, 255, 255, 0.11);
}

.ao-route__label {
display: block;

margin-bottom: 12px;

color: rgba(255, 255, 255, 0.44) !important;

font-size: 10px !important;
font-weight: 700 !important;
line-height: 1.2 !important;
letter-spacing: 0.12em !important;
text-transform: uppercase;
}

.ao-route__program {
max-width: 620px;

margin: 0 !important;
padding: 0 !important;

color: var(--ao-purple-light) !important;

font-size: clamp(24px, 2.2vw, 34px) !important;
font-weight: 600 !important;
line-height: 1.08 !important;
letter-spacing: -0.035em !important;
}

.ao-route--featured .ao-route__program {
color: #ffffff !important;
}

.ao-route__description {
max-width: 680px;

margin: 23px 0 0 !important;
padding: 0 !important;

color: rgba(255, 255, 255, 0.61) !important;

font-size: clamp(16px, 1.2vw, 19px) !important;
font-weight: 400 !important;
line-height: 1.55 !important;
letter-spacing: 0 !important;
}

.ao-route__footer {
margin-top: 34px;

padding-top: 27px;

border-top: 1px solid rgba(255, 255, 255, 0.1);
}

.ao-route__button {
width: 100%;
min-height: 61px;

padding:
7px
8px
7px
23px;

border: 1px solid rgba(255, 255, 255, 0.14);
border-radius: 999px;

display: flex;
align-items: center;
justify-content: space-between;

gap: 20px;

color: #ffffff !important;

background: rgba(255, 255, 255, 0.055);

font-size: 15px !important;
font-weight: 650 !important;
line-height: 1 !important;

transition:
color 0.25s ease,
background-color 0.25s ease,
border-color 0.25s ease,
transform 0.25s ease;
}

.ao-route__button:hover {
color: #ffffff !important;

border-color: rgba(147, 88, 215, 0.55);

background: var(--ao-purple);

transform: translateY(-2px);
}

.ao-route--featured .ao-route__button {
background:
linear-gradient(
135deg,
#590193 0%,
#7422b3 100%
);

box-shadow: 0 18px 45px rgba(89, 1, 147, 0.25);
}

.ao-route__button-icon {
width: 46px;
height: 46px;
flex: 0 0 46px;

border-radius: 50%;

display: grid;
place-items: center;

color: var(--ao-dark);

background: #ffffff;
}

.ao-route__button-icon svg {
width: 19px;
height: 19px;

fill: none;
stroke: currentColor;

stroke-width: 1.8;
stroke-linecap: round;
stroke-linejoin: round;

transition: transform 0.25s ease;
}

.ao-route__button:hover
.ao-route__button-icon svg {
transform: translateX(3px);
}

/* ==========================================================
BLOQUE 4 · COMPARADOR
========================================================== */

.ao-comparador {
position: relative;
width: 100%;
overflow: hidden;
isolation: isolate;

padding:
var(--ao-section-space)
var(--ao-padding-desktop);

color: var(--ao-dark);

background:
radial-gradient(
circle at 93% 10%,
rgba(147, 88, 215, 0.12),
transparent 32%
),
radial-gradient(
circle at 7% 90%,
rgba(237, 103, 37, 0.07),
transparent 28%
),
linear-gradient(
180deg,
#faf8f9 0%,
#f5f1f3 100%
);
}

.ao-comparador__container {
position: relative;
z-index: 3;

width: min(100%, var(--ao-container));

margin: 0 auto;
}

.ao-comparador__grid {
position: absolute;
z-index: 0;
inset: 0;

opacity: 0.25;
pointer-events: none;

background-image:
linear-gradient(
rgba(12, 8, 25, 0.035) 1px,
transparent 1px
),
linear-gradient(
90deg,
rgba(12, 8, 25, 0.035) 1px,
transparent 1px
);

background-size: 70px 70px;

-webkit-mask-image:
linear-gradient(
to bottom,
black,
transparent 92%
);

mask-image:
linear-gradient(
to bottom,
black,
transparent 92%
);
}

.ao-comparador__glow {
position: absolute;
z-index: 0;

border-radius: 50%;
pointer-events: none;
}

.ao-comparador__glow--purple {
width: 430px;
height: 430px;

top: 7%;
right: -290px;

background: rgba(147, 88, 215, 0.08);
box-shadow: 0 0 160px rgba(147, 88, 215, 0.1);
}

.ao-comparador__glow--orange {
width: 280px;
height: 280px;

bottom: 4%;
left: -190px;

background: rgba(237, 103, 37, 0.06);
box-shadow: 0 0 130px rgba(237, 103, 37, 0.08);
}

.ao-comparador__header {
display: grid;

grid-template-columns:
minmax(0, 1.2fr)
minmax(320px, 0.58fr);

align-items: end;

gap: clamp(45px, 8vw, 130px);
}

.ao-comparador__eyebrow {
display: flex;
align-items: center;
gap: 13px;

margin-bottom: 25px;

color: var(--ao-purple) !important;

font-size: 11px !important;
font-weight: 750 !important;
line-height: 1.2 !important;
letter-spacing: 0.13em !important;
text-transform: uppercase;
}

.ao-comparador__eyebrow-line {
width: 42px;
height: 2px;
flex: 0 0 42px;

background: var(--ao-orange);
}

.ao-comparador__title {
margin: 0 !important;
padding: 0 !important;

color: var(--ao-dark) !important;

font-size: clamp(58px, 7.6vw, 118px) !important;
font-weight: 600 !important;
line-height: 0.88 !important;
letter-spacing: -0.068em !important;
}

.ao-comparador__title span {
display: block;

margin-top: 0.12em;

color: var(--ao-purple) !important;
}

.ao-comparador__intro {
max-width: 540px;

padding-bottom: 8px;
}

.ao-comparador__intro p {
margin: 0 !important;
padding: 0 !important;

color: rgba(12, 8, 25, 0.67) !important;

font-size: clamp(18px, 1.45vw, 23px) !important;
font-weight: 400 !important;
line-height: 1.55 !important;
letter-spacing: 0 !important;
}

.ao-comparador__table {
margin-top: clamp(70px, 8vw, 125px);

overflow: hidden;

border: 1px solid rgba(12, 8, 25, 0.12);
border-radius: 31px;

background: rgba(255, 255, 255, 0.72);

box-shadow:
0 35px 100px rgba(12, 8, 25, 0.08),
inset 0 1px 0 rgba(255, 255, 255, 0.95);

backdrop-filter: blur(18px);
-webkit-backdrop-filter: blur(18px);
}

.ao-comparador__table-head,
.ao-comparador__row {
display: grid;

grid-template-columns:
minmax(300px, 0.8fr)
minmax(440px, 1.2fr);
}

.ao-comparador__table-head {
min-height: 78px;

color: #ffffff;

background:
radial-gradient(
circle at 90% 0%,
rgba(147, 88, 215, 0.26),
transparent 38%
),
linear-gradient(
135deg,
#0c0819 0%,
#190b2c 100%
);
}

.ao-comparador__head-cell {
padding:
25px
clamp(24px, 3vw, 44px);

display: flex;
align-items: center;

color: rgba(255, 255, 255, 0.77) !important;

font-size: 11px !important;
font-weight: 750 !important;
line-height: 1.2 !important;
letter-spacing: 0.13em !important;
text-transform: uppercase;
}

.ao-comparador__head-cell:first-child {
border-right: 1px solid rgba(255, 255, 255, 0.12);
}

.ao-comparador__row {
position: relative;

border-bottom: 1px solid rgba(12, 8, 25, 0.1);

transition:
background-color 0.28s ease,
transform 0.28s ease;
}

.ao-comparador__row:last-child {
border-bottom: none;
}

.ao-comparador__row::before {
content: "";

position: absolute;
top: 0;
bottom: 0;
left: 0;

width: 4px;

opacity: 0;
transform: scaleY(0);
transform-origin: center;

background:
linear-gradient(
to bottom,
var(--ao-orange),
var(--ao-purple-light)
);

transition:
opacity 0.28s ease,
transform 0.28s ease;
}

.ao-comparador__row:hover {
z-index: 2;

background: #ffffff;
}

.ao-comparador__row:hover::before {
opacity: 1;
transform: scaleY(1);
}

.ao-comparador__cell {
min-height: 140px;

padding: clamp(27px, 3vw, 43px);

display: flex;
align-items: center;
}

.ao-comparador__cell--need {
gap: 18px;

border-right: 1px solid rgba(12, 8, 25, 0.1);
}

.ao-comparador__marker {
width: 9px;
height: 9px;
flex: 0 0 9px;

border-radius: 50%;

background: var(--ao-purple-light);

box-shadow:
0 0 0 7px rgba(147, 88, 215, 0.09);

transition:
background-color 0.28s ease,
box-shadow 0.28s ease;
}

.ao-comparador__row:hover
.ao-comparador__marker {
background: var(--ao-orange);

box-shadow:
0 0 0 8px rgba(237, 103, 37, 0.1);
}

.ao-comparador__cell--need p {
margin: 0 !important;
padding: 0 !important;

color: rgba(12, 8, 25, 0.66) !important;

font-size: clamp(17px, 1.3vw, 21px) !important;
font-weight: 500 !important;
line-height: 1.4 !important;
letter-spacing: 0 !important;
}

.ao-comparador__cell--route {
justify-content: space-between;

gap: 30px;

background:
linear-gradient(
90deg,
rgba(147, 88, 215, 0.035),
transparent 75%
);
}

.ao-comparador__cell--route h3 {
max-width: 760px;

margin: 0 !important;
padding: 0 !important;

color: var(--ao-dark) !important;

font-size: clamp(25px, 2.25vw, 36px) !important;
font-weight: 600 !important;
line-height: 1.08 !important;
letter-spacing: -0.04em !important;

transition: color 0.28s ease;
}

.ao-comparador__row:hover
.ao-comparador__cell--route h3 {
color: var(--ao-purple) !important;
}

.ao-comparador__arrow {
width: 49px;
height: 49px;
flex: 0 0 49px;

border: 1px solid rgba(89, 1, 147, 0.13);
border-radius: 50%;

display: grid;
place-items: center;

color: var(--ao-purple);

background: rgba(89, 1, 147, 0.055);

transition:
color 0.28s ease,
background-color 0.28s ease,
border-color 0.28s ease,
transform 0.28s ease;
}

.ao-comparador__arrow svg {
width: 20px;
height: 20px;

fill: none;
stroke: currentColor;

stroke-width: 1.8;
stroke-linecap: round;
stroke-linejoin: round;
}

.ao-comparador__row:hover
.ao-comparador__arrow {
color: #ffffff;

border-color: var(--ao-purple);

background: var(--ao-purple);

transform: translateX(4px);
}

/* ==========================================================
BLOQUE 5 · AUTORIDAD
========================================================== */

.ao-autoridad {
position: relative;
width: 100%;
overflow: hidden;
isolation: isolate;

padding:
var(--ao-section-space)
var(--ao-padding-desktop);

color: var(--ao-white);

background:
radial-gradient(
circle at 88% 12%,
rgba(147, 88, 215, 0.22),
transparent 31%
),
radial-gradient(
circle at 7% 92%,
rgba(53, 42, 156, 0.18),
transparent 34%
),
linear-gradient(
145deg,
#0c0819 0%,
#130922 50%,
#0c0819 100%
);
}

.ao-autoridad__container {
position: relative;
z-index: 3;

width: min(100%, var(--ao-container));

margin: 0 auto;
}

.ao-autoridad__grid {
position: absolute;
z-index: 0;
inset: 0;

opacity: 0.25;
pointer-events: none;

background-image:
linear-gradient(
rgba(255, 255, 255, 0.035) 1px,
transparent 1px
),
linear-gradient(
90deg,
rgba(255, 255, 255, 0.035) 1px,
transparent 1px
);

background-size: 70px 70px;

-webkit-mask-image:
linear-gradient(
to bottom,
black,
rgba(0, 0, 0, 0.45) 70%,
transparent
);

mask-image:
linear-gradient(
to bottom,
black,
rgba(0, 0, 0, 0.45) 70%,
transparent
);
}

.ao-autoridad__glow {
position: absolute;
z-index: 0;

border-radius: 50%;
pointer-events: none;
filter: blur(10px);
}

.ao-autoridad__glow--purple {
width: 520px;
height: 520px;

top: -310px;
right: -140px;

background: rgba(147, 88, 215, 0.14);
box-shadow: 0 0 180px rgba(147, 88, 215, 0.2);
}

.ao-autoridad__glow--orange {
width: 280px;
height: 280px;

left: -180px;
bottom: -120px;

background: rgba(237, 103, 37, 0.07);
box-shadow: 0 0 140px rgba(237, 103, 37, 0.1);
}

.ao-autoridad__institutional {
display: grid;

grid-template-columns:
minmax(0, 1.15fr)
minmax(340px, 0.65fr);

align-items: start;

gap: clamp(55px, 9vw, 145px);
}

.ao-autoridad__title {
max-width: 980px;

margin: 0 !important;
padding: 0 !important;

color: #ffffff !important;

font-size: clamp(57px, 7.4vw, 116px) !important;
font-weight: 600 !important;
line-height: 0.89 !important;
letter-spacing: -0.067em !important;
}

.ao-autoridad__title span {
display: block;

margin-top: 0.13em;
padding-bottom: 0.05em;

color: transparent !important;

background:
linear-gradient(
100deg,
#ffffff 0%,
#d9c7c6 25%,
#9358d7 67%,
#ed6725 112%
);

-webkit-background-clip: text;
background-clip: text;
}

.ao-autoridad__copy {
max-width: 590px;
}

.ao-autoridad__copy > p {
margin: 0 !important;
padding: 0 !important;

color: rgba(255, 255, 255, 0.68) !important;

font-size: clamp(18px, 1.4vw, 22px) !important;
font-weight: 400 !important;
line-height: 1.55 !important;
letter-spacing: 0 !important;
}

.ao-autoridad__statement {
position: relative;

margin-top: clamp(40px, 5vw, 70px);

padding:
clamp(27px, 3vw, 40px)
clamp(25px, 3vw, 38px);

overflow: hidden;

border: 1px solid rgba(255, 255, 255, 0.12);
border-radius: 24px;

background:
radial-gradient(
circle at 100% 0%,
rgba(147, 88, 215, 0.17),
transparent 42%
),
rgba(255, 255, 255, 0.05);

box-shadow:
0 24px 65px rgba(0, 0, 0, 0.18),
inset 0 1px 0 rgba(255, 255, 255, 0.07);

backdrop-filter: blur(17px);
-webkit-backdrop-filter: blur(17px);
}

.ao-autoridad__statement::before {
content: "";

position: absolute;
top: 0;
bottom: 0;
left: 0;

width: 3px;

background:
linear-gradient(
to bottom,
var(--ao-orange),
var(--ao-purple-light)
);
}

.ao-autoridad__statement p {
margin: 0 !important;
padding: 0 !important;

color: rgba(255, 255, 255, 0.62) !important;

font-size: clamp(17px, 1.3vw, 20px) !important;
font-weight: 400 !important;
line-height: 1.5 !important;
letter-spacing: 0 !important;
}

.ao-autoridad__statement p:first-child {
color: #ffffff !important;
font-weight: 600 !important;
}

.ao-autoridad__statement p + p {
margin-top: 15px !important;
}

.ao-autoridad__advisor {
position: relative;

margin-top: clamp(80px, 9vw, 140px);

padding: clamp(32px, 4vw, 58px);

overflow: hidden;

display: grid;

grid-template-columns:
auto
minmax(0, 1fr)
auto;

align-items: center;

gap: clamp(28px, 4vw, 58px);

border: 1px solid rgba(255, 255, 255, 0.13);
border-radius: 30px;

background:
radial-gradient(
circle at 92% 10%,
rgba(237, 103, 37, 0.12),
transparent 30%
),
radial-gradient(
circle at 5% 100%,
rgba(147, 88, 215, 0.2),
transparent 36%
),
linear-gradient(
135deg,
rgba(89, 1, 147, 0.28),
rgba(255, 255, 255, 0.055)
);

box-shadow:
0 35px 100px rgba(0, 0, 0, 0.24),
inset 0 1px 0 rgba(255, 255, 255, 0.09);

backdrop-filter: blur(20px);
-webkit-backdrop-filter: blur(20px);
}

.ao-autoridad__advisor::after {
content: "";

position: absolute;
right: 50px;
bottom: 0;
left: 50px;

height: 2px;

background:
linear-gradient(
90deg,
transparent,
var(--ao-purple-light),
var(--ao-orange),
transparent
);
}

.ao-autoridad__advisor-decoration,
.ao-autoridad__advisor-content,
.ao-autoridad__advisor-action {
position: relative;
z-index: 2;
}

.ao-autoridad__advisor-circle {
width: clamp(72px, 7vw, 102px);
height: clamp(72px, 7vw, 102px);

border: 1px solid rgba(255, 255, 255, 0.17);
border-radius: 50%;

display: grid;
place-items: center;

color: #ffffff;

background:
linear-gradient(
145deg,
rgba(147, 88, 215, 0.55),
rgba(89, 1, 147, 0.35)
);

box-shadow:
0 20px 55px rgba(89, 1, 147, 0.28),
inset 0 1px 0 rgba(255, 255, 255, 0.16);
}

.ao-autoridad__advisor-circle svg {
width: clamp(29px, 3vw, 39px);
height: clamp(29px, 3vw, 39px);

fill: none;
stroke: currentColor;

stroke-width: 1.5;
stroke-linecap: round;
stroke-linejoin: round;
}

.ao-autoridad__advisor-content {
max-width: 750px;
}

.ao-autoridad__advisor-title {
margin: 0 !important;
padding: 0 !important;

color: #ffffff !important;

font-size: clamp(27px, 2.8vw, 43px) !important;
font-weight: 600 !important;
line-height: 1.05 !important;
letter-spacing: -0.045em !important;
}

.ao-autoridad__advisor-text {
max-width: 680px;

margin: 20px 0 0 !important;
padding: 0 !important;

color: rgba(255, 255, 255, 0.63) !important;

font-size: clamp(16px, 1.2vw, 19px) !important;
font-weight: 400 !important;
line-height: 1.55 !important;
letter-spacing: 0 !important;
}

.ao-autoridad__button {
min-height: 64px;

padding:
7px
8px
7px
27px;

border: 1px solid rgba(255, 255, 255, 0.16);
border-radius: 999px;

display: inline-flex;
align-items: center;
justify-content: space-between;

gap: 24px;

color: #ffffff !important;

background:
linear-gradient(
135deg,
#590193 0%,
#7422b3 100%
);

box-shadow:
0 22px 60px rgba(89, 1, 147, 0.38),
inset 0 1px 0 rgba(255, 255, 255, 0.17);

font-size: 16px !important;
font-weight: 650 !important;
line-height: 1 !important;
white-space: nowrap;

transition:
transform 0.25s ease,
background 0.25s ease,
box-shadow 0.25s ease;
}

.ao-autoridad__button:hover {
color: #ffffff !important;

transform: translateY(-4px);

background:
linear-gradient(
135deg,
#6a0ba7 0%,
#8535c4 100%
);

box-shadow:
0 28px 72px rgba(89, 1, 147, 0.46),
inset 0 1px 0 rgba(255, 255, 255, 0.2);
}

.ao-autoridad__button-icon {
width: 48px;
height: 48px;
flex: 0 0 48px;

border-radius: 50%;

display: grid;
place-items: center;

color: var(--ao-dark);

background: #ffffff;
}

.ao-autoridad__button-icon svg {
width: 20px;
height: 20px;

fill: none;
stroke: currentColor;

stroke-width: 1.8;
stroke-linecap: round;
stroke-linejoin: round;

transition: transform 0.25s ease;
}

.ao-autoridad__button:hover
.ao-autoridad__button-icon svg {
transform: translateX(3px);
}

/* ==========================================================
BLOQUE 6 · CARRUSEL CLEAR
========================================================== */

.ao-clear-carousel {
position: relative;
width: 100%;
overflow: hidden;
isolation: isolate;

padding:
var(--ao-section-space)
var(--ao-padding-desktop);

color: var(--ao-dark);

background:
radial-gradient(
circle at 93% 7%,
rgba(147, 88, 215, 0.12),
transparent 29%
),
radial-gradient(
circle at 4% 96%,
rgba(237, 103, 37, 0.07),
transparent 27%
),
linear-gradient(
180deg,
#ffffff 0%,
#f7f4f6 100%
);
}

.ao-clear-carousel__container {
position: relative;
z-index: 3;

width: min(100%, var(--ao-container));

margin: 0 auto;
}

.ao-clear-carousel__grid {
position: absolute;
z-index: 0;
inset: 0;

opacity: 0.25;
pointer-events: none;

background-image:
linear-gradient(
rgba(12, 8, 25, 0.035) 1px,
transparent 1px
),
linear-gradient(
90deg,
rgba(12, 8, 25, 0.035) 1px,
transparent 1px
);

background-size: 70px 70px;

-webkit-mask-image:
linear-gradient(
to bottom,
black,
transparent 92%
);

mask-image:
linear-gradient(
to bottom,
black,
transparent 92%
);
}

.ao-clear-carousel__glow {
position: absolute;
z-index: 0;

border-radius: 50%;
pointer-events: none;
}

.ao-clear-carousel__glow--purple {
width: 430px;
height: 430px;

top: 8%;
right: -280px;

background: rgba(147, 88, 215, 0.08);
box-shadow: 0 0 160px rgba(147, 88, 215, 0.1);
}

.ao-clear-carousel__glow--orange {
width: 300px;
height: 300px;

left: -210px;
bottom: 6%;

background: rgba(237, 103, 37, 0.06);
box-shadow: 0 0 140px rgba(237, 103, 37, 0.08);
}

.ao-clear-carousel__header {
display: flex;
align-items: flex-end;
justify-content: space-between;

gap: 40px;
}

.ao-clear-carousel__eyebrow {
display: flex;
align-items: center;
gap: 13px;

margin-bottom: 24px;

color: var(--ao-purple) !important;

font-size: 11px !important;
font-weight: 750 !important;
line-height: 1.2 !important;
letter-spacing: 0.13em !important;
text-transform: uppercase;
}

.ao-clear-carousel__eyebrow > span {
width: 42px;
height: 2px;

background: var(--ao-orange);
}

.ao-clear-carousel__title {
max-width: 900px;

margin: 0 !important;
padding: 0 !important;

color: var(--ao-dark) !important;

font-size: clamp(57px, 7vw, 108px) !important;
font-weight: 600 !important;
line-height: 0.9 !important;
letter-spacing: -0.066em !important;
}

.ao-clear-carousel__title strong {
display: block;

margin-top: 0.12em;

color: var(--ao-purple) !important;

font-weight: 600 !important;
}

.ao-clear-carousel__navigation {
display: flex;
align-items: center;

gap: 10px;
}

.ao-clear-carousel__arrow {
width: 58px;
height: 58px;

padding: 0;

border: 1px solid rgba(12, 8, 25, 0.14);
border-radius: 50%;

display: grid;
place-items: center;

color: var(--ao-dark);

background: rgba(255, 255, 255, 0.85);

box-shadow:
0 14px 38px rgba(12, 8, 25, 0.07),
inset 0 1px 0 rgba(255, 255, 255, 0.95);

cursor: pointer;

transition:
color 0.25s ease,
background-color 0.25s ease,
border-color 0.25s ease,
transform 0.25s ease,
opacity 0.25s ease;
}

.ao-clear-carousel__arrow svg {
width: 21px;
height: 21px;

fill: none;
stroke: currentColor;

stroke-width: 1.8;
stroke-linecap: round;
stroke-linejoin: round;
}

.ao-clear-carousel__arrow:hover {
color: #ffffff;

border-color: var(--ao-purple);

background: var(--ao-purple);

transform: translateY(-3px);
}

.ao-clear-carousel__arrow:disabled {
opacity: 0.3;

cursor: not-allowed;

transform: none;
}

.ao-clear-carousel__viewport {
width: 100%;

margin-top: clamp(65px, 8vw, 110px);

overflow: hidden;
}

.ao-clear-carousel__track {
display: flex;
align-items: stretch;

gap: 24px;

overflow-x: auto;

overscroll-behavior-inline: contain;

scroll-behavior: smooth;
scroll-snap-type: x mandatory;

scrollbar-width: none;

padding:
8px
2px
35px;
}

.ao-clear-carousel__track::-webkit-scrollbar {
display: none;
}

.ao-clear-card {
position: relative;

flex:
0
0
calc((100% - 24px) / 2);

min-width: 0;
min-height: 800px;

scroll-snap-align: start;

padding: clamp(27px, 3vw, 42px);

display: flex;
flex-direction: column;

overflow: hidden;

border: 1px solid rgba(12, 8, 25, 0.12);
border-radius: 30px;

color: var(--ao-dark);

background:
radial-gradient(
circle at 100% 0%,
rgba(147, 88, 215, 0.07),
transparent 34%
),
rgba(255, 255, 255, 0.94);

box-shadow:
0 28px 80px rgba(12, 8, 25, 0.075),
inset 0 1px 0 rgba(255, 255, 255, 0.95);

transition:
transform 0.3s ease,
border-color 0.3s ease,
box-shadow 0.3s ease;
}

.ao-clear-card::before {
content: "";

position: absolute;
top: 0;
right: 34px;
left: 34px;

height: 3px;

opacity: 0.45;

border-radius: 0 0 10px 10px;

background:
linear-gradient(
90deg,
var(--ao-purple),
var(--ao-purple-light),
var(--ao-orange)
);
}

.ao-clear-card:hover {
transform: translateY(-7px);

border-color: rgba(89, 1, 147, 0.25);

box-shadow:
0 38px 100px rgba(12, 8, 25, 0.12),
inset 0 1px 0 rgba(255, 255, 255, 0.98);
}

.ao-clear-card--featured {
border-color: rgba(89, 1, 147, 0.2);

background:
radial-gradient(
circle at 100% 0%,
rgba(237, 103, 37, 0.1),
transparent 29%
),
radial-gradient(
circle at 0% 100%,
rgba(147, 88, 215, 0.1),
transparent 38%
),
#ffffff;
}

.ao-clear-card__top {
display: flex;
align-items: center;
justify-content: space-between;

gap: 20px;
}

.ao-clear-card__eyebrow {
color: var(--ao-purple) !important;

font-size: 10px !important;
font-weight: 750 !important;
line-height: 1.2 !important;
letter-spacing: 0.12em !important;
text-transform: uppercase;
}

.ao-clear-card__number {
color: rgba(12, 8, 25, 0.25) !important;

font-size: 12px !important;
font-weight: 700 !important;
line-height: 1 !important;
letter-spacing: 0.12em !important;
}

.ao-clear-card__title {
min-height: 120px;

margin:
clamp(30px, 4vw, 52px)
0
0 !important;

padding: 0 !important;

color: var(--ao-dark) !important;

font-size: clamp(33px, 3.1vw, 49px) !important;
font-weight: 600 !important;
line-height: 0.98 !important;
letter-spacing: -0.052em !important;
}

.ao-clear-card__description {
margin-top: 34px;

padding-top: 28px;

border-top: 1px solid rgba(12, 8, 25, 0.1);
}

.ao-clear-card__description p {
margin: 0 !important;
padding: 0 !important;

color: rgba(12, 8, 25, 0.64) !important;

font-size: clamp(16px, 1.15vw, 18px) !important;
font-weight: 400 !important;
line-height: 1.55 !important;
letter-spacing: 0 !important;
}

.ao-clear-card__description p + p {
margin-top: 15px !important;
}

.ao-clear-card__description p:nth-child(2) {
color: var(--ao-dark) !important;

font-weight: 650 !important;
}

.ao-clear-card__list {
flex: 1;

margin-top: 31px;
}

.ao-clear-card__list h4 {
margin: 0 0 17px !important;
padding: 0 !important;

color: var(--ao-dark) !important;

font-size: 16px !important;
font-weight: 700 !important;
line-height: 1.3 !important;
letter-spacing: 0 !important;
}

.ao-clear-card__list ul {
margin: 0 !important;
padding: 0 !important;

display: grid;

gap: 11px;

list-style: none;
}

.ao-clear-card__list li {
position: relative;

margin: 0 !important;
padding: 0 0 0 25px !important;

color: rgba(12, 8, 25, 0.67) !important;

font-size: 15px !important;
font-weight: 450 !important;
line-height: 1.42 !important;
}

.ao-clear-card__list li::before {
content: "";

position: absolute;
top: 0.55em;
left: 0;

width: 8px;
height: 8px;

border-radius: 50%;

background: var(--ao-purple-light);

box-shadow:
0 0 0 5px rgba(147, 88, 215, 0.08);
}

.ao-clear-card__button {
width: 100%;
min-height: 62px;

margin-top: 34px;

padding:
7px
8px
7px
23px;

border: 1px solid rgba(89, 1, 147, 0.14);
border-radius: 999px;

display: flex;
align-items: center;
justify-content: space-between;

gap: 18px;

color: var(--ao-purple) !important;

background: rgba(89, 1, 147, 0.045);

font-size: 15px !important;
font-weight: 650 !important;
line-height: 1.15 !important;

transition:
color 0.25s ease,
background 0.25s ease,
border-color 0.25s ease,
transform 0.25s ease;
}

.ao-clear-card__button:hover {
color: #ffffff !important;

border-color: var(--ao-purple);

background: var(--ao-purple);

transform: translateY(-3px);
}

.ao-clear-card__button-icon {
width: 46px;
height: 46px;
flex: 0 0 46px;

border-radius: 50%;

display: grid;
place-items: center;

color: #ffffff;

background: var(--ao-purple);

transition:
color 0.25s ease,
background-color 0.25s ease;
}

.ao-clear-card__button:hover
.ao-clear-card__button-icon {
color: var(--ao-purple);

background: #ffffff;
}

.ao-clear-card__button-icon svg {
width: 19px;
height: 19px;

fill: none;
stroke: currentColor;

stroke-width: 1.8;
stroke-linecap: round;
stroke-linejoin: round;

transition: transform 0.25s ease;
}

.ao-clear-card__button:hover
.ao-clear-card__button-icon svg {
transform: translateX(3px);
}

.ao-clear-carousel__controls {
margin-top: 7px;

display: flex;
align-items: center;
justify-content: space-between;

gap: 25px;
}

.ao-clear-carousel__dots {
display: flex;
align-items: center;
flex-wrap: wrap;

gap: 8px;
}

.ao-clear-carousel__dot {
width: 9px;
height: 9px;

padding: 0;

border: 0;
border-radius: 999px;

background: rgba(12, 8, 25, 0.17);

cursor: pointer;

transition:
width 0.25s ease,
background-color 0.25s ease;
}

.ao-clear-carousel__dot.is-active {
width: 31px;

background: var(--ao-purple);
}

.ao-clear-carousel__drag {
color: rgba(12, 8, 25, 0.38) !important;

font-size: 9px !important;
font-weight: 700 !important;
line-height: 1.2 !important;
letter-spacing: 0.12em !important;
text-transform: uppercase;
}

.ao-clear-carousel__final-cta {
margin-top: clamp(65px, 8vw, 115px);

padding-top: clamp(42px, 5vw, 68px);

display: flex;
align-items: center;
justify-content: center;

border-top: 1px solid rgba(12, 8, 25, 0.12);
}

.ao-clear-carousel__doubt-button {
min-width: 220px;
min-height: 64px;

padding: 0 30px;

border: 1px solid rgba(89, 1, 147, 0.17);
border-radius: 999px;

display: inline-flex;
align-items: center;
justify-content: center;

gap: 13px;

color: #ffffff !important;

background:
linear-gradient(
135deg,
#590193 0%,
#7620b7 100%
);

box-shadow:
0 21px 58px rgba(89, 1, 147, 0.25),
inset 0 1px 0 rgba(255, 255, 255, 0.17);

font-size: 16px !important;
font-weight: 650 !important;
line-height: 1 !important;

transition:
transform 0.25s ease,
box-shadow 0.25s ease;
}

.ao-clear-carousel__doubt-button svg {
width: 21px;
height: 21px;

fill: none;
stroke: currentColor;

stroke-width: 1.6;
stroke-linecap: round;
stroke-linejoin: round;
}

.ao-clear-carousel__doubt-button:hover {
color: #ffffff !important;

transform: translateY(-4px);

box-shadow:
0 28px 70px rgba(89, 1, 147, 0.35),
inset 0 1px 0 rgba(255, 255, 255, 0.2);
}

/* ==========================================================
BLOQUE 7 · CTA FINAL
========================================================== */

.ao-final-cta {
position: relative;
width: 100%;
min-height: 90svh;
overflow: hidden;
isolation: isolate;

display: flex;

color: var(--ao-white);

background:
radial-gradient(
circle at 85% 5%,
rgba(147, 88, 215, 0.24),
transparent 34%
),
radial-gradient(
circle at 10% 95%,
rgba(53, 42, 156, 0.22),
transparent 36%
),
radial-gradient(
circle at 70% 100%,
rgba(237, 103, 37, 0.1),
transparent 28%
),
linear-gradient(
145deg,
#0c0819 0%,
#130922 50%,
#0c0819 100%
);
}

.ao-final-cta__container {
position: relative;
z-index: 3;

width: min(100%, 1600px);
min-height: 90svh;

margin: 0 auto;

padding:
clamp(28px, 3vw, 44px)
var(--ao-padding-desktop)
clamp(30px, 4vw, 55px);

display: flex;
flex-direction: column;
}

.ao-final-cta__grid {
position: absolute;
z-index: 0;
inset: 0;

opacity: 0.27;
pointer-events: none;

background-image:
linear-gradient(
rgba(255, 255, 255, 0.035) 1px,
transparent 1px
),
linear-gradient(
90deg,
rgba(255, 255, 255, 0.035) 1px,
transparent 1px
);

background-size: 70px 70px;

-webkit-mask-image:
linear-gradient(
to bottom,
black,
rgba(0, 0, 0, 0.55) 76%,
transparent
);

mask-image:
linear-gradient(
to bottom,
black,
rgba(0, 0, 0, 0.55) 76%,
transparent
);
}

.ao-final-cta__glow {
position: absolute;
z-index: 0;

border-radius: 50%;
pointer-events: none;
filter: blur(12px);
}

.ao-final-cta__glow--purple {
width: clamp(380px, 42vw, 690px);
height: clamp(380px, 42vw, 690px);

top: -43%;
right: -10%;

background: rgba(147, 88, 215, 0.14);
box-shadow: 0 0 200px rgba(147, 88, 215, 0.2);
}

.ao-final-cta__glow--orange {
width: 300px;
height: 300px;

right: 24%;
bottom: -220px;

background: rgba(237, 103, 37, 0.08);
box-shadow: 0 0 150px rgba(237, 103, 37, 0.1);
}

.ao-final-cta__top {
width: 100%;

padding-bottom: 25px;

display: flex;
align-items: center;
justify-content: space-between;

gap: 25px;

border-bottom: 1px solid rgba(255, 255, 255, 0.11);
}

.ao-final-cta__eyebrow {
display: inline-flex;
align-items: center;
gap: 11px;

color: rgba(255, 255, 255, 0.83) !important;

font-size: 11px !important;
font-weight: 700 !important;
line-height: 1.2 !important;
letter-spacing: 0.13em !important;
text-transform: uppercase;
}

.ao-final-cta__eyebrow-dot {
width: 8px;
height: 8px;
flex: 0 0 8px;

border-radius: 50%;

background: var(--ao-orange);
box-shadow: 0 0 16px rgba(237, 103, 37, 0.9);
}

.ao-final-cta__brand {
color: rgba(255, 255, 255, 0.42) !important;

font-size: 10px !important;
font-weight: 650 !important;
line-height: 1.2 !important;
letter-spacing: 0.12em !important;
text-transform: uppercase;
}

.ao-final-cta__content {
flex: 1;

padding:
clamp(70px, 10vh, 130px)
0
clamp(60px, 8vh, 105px);

display: flex;
flex-direction: column;
justify-content: center;
}

.ao-final-cta__title {
width: 100%;
max-width: 1480px;

margin: 0 !important;
padding: 0 !important;

display: flex;
flex-direction: column;

color: #ffffff !important;

font-size: clamp(58px, 7.8vw, 130px) !important;
font-weight: 600 !important;
line-height: 0.88 !important;
letter-spacing: -0.068em !important;
}

.ao-final-cta__title-main {
display: block;
max-width: 1360px;

color: #ffffff !important;
}

.ao-final-cta__title-accent {
display: block;

margin-top: 0.13em;
padding-bottom: 0.06em;

color: transparent !important;

background:
linear-gradient(
100deg,
#ffffff 0%,
#d9c7c6 26%,
#9358d7 66%,
#ed6725 112%
);

-webkit-background-clip: text;
background-clip: text;
}

.ao-final-cta__bottom {
margin-top: clamp(50px, 7vw, 95px);

display: grid;

grid-template-columns:
minmax(0, 680px)
auto;

align-items: end;
justify-content: space-between;

gap: clamp(45px, 7vw, 120px);
}

.ao-final-cta__copy {
position: relative;

max-width: 680px;

padding-left: 25px;
}

.ao-final-cta__copy::before {
content: "";

position: absolute;
top: 3px;
bottom: 4px;
left: 0;

width: 2px;

border-radius: 999px;

background:
linear-gradient(
to bottom,
var(--ao-orange),
var(--ao-purple-light)
);
}

.ao-final-cta__copy p {
margin: 0 !important;
padding: 0 !important;

color: rgba(255, 255, 255, 0.67) !important;

font-size: clamp(17px, 1.35vw, 22px) !important;
font-weight: 400 !important;
line-height: 1.5 !important;
letter-spacing: 0 !important;
}

.ao-final-cta__copy p + p {
margin-top: 13px !important;
}

.ao-final-cta__actions {
display: flex;
align-items: center;
justify-content: flex-end;
flex-wrap: wrap;

gap: 12px;
}

.ao-final-cta__button {
min-height: 64px;

border-radius: 999px;

display: inline-flex;
align-items: center;
justify-content: center;

font-size: 15px !important;
font-weight: 650 !important;
line-height: 1 !important;

transition:
transform 0.25s ease,
border-color 0.25s ease,
background 0.25s ease,
box-shadow 0.25s ease;
}

.ao-final-cta__button:hover {
transform: translateY(-4px);
}

.ao-final-cta__button--primary {
min-width: 270px;

padding:
7px
8px
7px
27px;

justify-content: space-between;

gap: 24px;

color: #ffffff !important;

border: 1px solid rgba(255, 255, 255, 0.16);

background:
linear-gradient(
135deg,
#590193 0%,
#7422b3 100%
);

box-shadow:
0 22px 60px rgba(89, 1, 147, 0.38),
inset 0 1px 0 rgba(255, 255, 255, 0.17);
}

.ao-final-cta__button--primary:hover {
color: #ffffff !important;

background:
linear-gradient(
135deg,
#6a0ba7 0%,
#8535c4 100%
);

box-shadow:
0 28px 72px rgba(89, 1, 147, 0.46),
inset 0 1px 0 rgba(255, 255, 255, 0.2);
}

.ao-final-cta__button-icon {
width: 48px;
height: 48px;
flex: 0 0 48px;

border-radius: 50%;

display: grid;
place-items: center;

color: var(--ao-dark);

background: #ffffff;
}

.ao-final-cta__button-icon svg {
width: 20px;
height: 20px;

fill: none;
stroke: currentColor;

stroke-width: 1.8;
stroke-linecap: round;
stroke-linejoin: round;

transition: transform 0.25s ease;
}

.ao-final-cta__button--primary:hover
.ao-final-cta__button-icon svg {
transform: translateX(3px);
}

.ao-final-cta__button--secondary {
min-width: 220px;

padding: 0 25px;

gap: 12px;

color: rgba(255, 255, 255, 0.86) !important;

border: 1px solid rgba(255, 255, 255, 0.17);

background: rgba(255, 255, 255, 0.045);

backdrop-filter: blur(15px);
-webkit-backdrop-filter: blur(15px);
}

.ao-final-cta__button--secondary:hover {
color: #ffffff !important;

border-color: rgba(255, 255, 255, 0.36);

background: rgba(255, 255, 255, 0.085);
}

.ao-final-cta__secondary-icon {
width: 20px;
height: 20px;

fill: none;
stroke: currentColor;

stroke-width: 1.6;
stroke-linecap: round;
stroke-linejoin: round;
}

.ao-final-cta__footer {
padding-top: 24px;

display: flex;
align-items: center;

gap: 14px;

border-top: 1px solid rgba(255, 255, 255, 0.1);
}

.ao-final-cta__footer span {
color: rgba(255, 255, 255, 0.4) !important;

font-size: 9px !important;
font-weight: 650 !important;
line-height: 1.2 !important;
letter-spacing: 0.12em !important;
text-transform: uppercase;
}

.ao-final-cta__footer-line {
width: 30px;
height: 1px;

background: rgba(255, 255, 255, 0.2);
}

/* ==========================================================
TABLET
========================================================== */

@media (max-width: 1100px) {

.ao-rutas-hero__title {
font-size: clamp(58px, 9.5vw, 105px) !important;
}

.ao-rutas-hero__footer,
.ao-recap__header,
.ao-recap__needs,
.ao-recap__closing,
.ao-.elementor-51830 .elementor-element.elementor-element-d96a78f__header,
.ao-comparador__header,
.ao-autoridad__institutional,
.ao-final-cta__bottom {
grid-template-columns: 1fr;
align-items: start;
}

.ao-rutas-hero__action,
.ao-final-cta__actions {
justify-content: flex-start;
}

.ao-recap__intro,
.ao-.elementor-51830 .elementor-element.elementor-element-d96a78f__header-copy,
.ao-comparador__intro,
.ao-autoridad__copy {
max-width: 760px;
}

.ao-recap__areas {
grid-template-columns: repeat(2, minmax(0, 1fr));
}

.ao-recap__area:nth-child(3n) {
border-right: 1px solid rgba(12, 8, 25, 0.1);
}

.ao-recap__area:nth-child(2n) {
border-right: none;
}

.ao-recap__area:nth-child(n + 4) {
border-bottom: 1px solid rgba(12, 8, 25, 0.1);
}

.ao-recap__area:nth-child(n + 5) {
border-bottom: none;
}

.ao-recap__needs-conclusion {
min-height: 220px;
}

.ao-recap__button {
justify-self: start;
}

.ao-route {
min-height: 640px;
}

.ao-comparador__table-head,
.ao-comparador__row {
grid-template-columns:
minmax(240px, 0.72fr)
minmax(0, 1.28fr);
}

.ao-autoridad__advisor {
grid-template-columns:
auto
1fr;
}

.ao-autoridad__advisor-action {
grid-column: 2;
}

.ao-clear-card {
flex-basis: 72%;
}

.ao-clear-card__title {
min-height: auto;
}
}

/* ==========================================================
MOBILE
========================================================== */

@media (max-width: 767px) {

:root {
--ao-padding-desktop: 18px;
--ao-section-space: 82px;
}

.ao-rutas-hero {
min-height: auto;
}

.ao-rutas-hero__container {
min-height: auto;

padding:
  22px
  18px
  27px;

}

.ao-rutas-hero__top {
grid-template-columns:
1fr
auto;

gap: 15px;

padding-bottom: 18px;

}

.ao-rutas-hero__top-line {
display: none;
}

.ao-rutas-hero__eyebrow {
font-size: 10px !important;
letter-spacing: 0.08em;
}

.ao-rutas-hero__top-label {
font-size: 9px !important;
letter-spacing: 0.08em;
}

.ao-rutas-hero__content {
padding:
65px
0
53px;
}

.ao-rutas-hero__title {
font-size: clamp(49px, 15vw, 72px) !important;
line-height: 0.91 !important;
letter-spacing: -0.057em !important;
}

.ao-rutas-hero__title-accent {
margin-top: 0.19em;
}

.ao-rutas-hero__footer {
gap: 32px;

margin-top: 43px;

}

.ao-rutas-hero__copy {
padding-left: 18px;
}

.ao-rutas-hero__copy p {
font-size: 16px !important;
line-height: 1.5 !important;
}

.ao-rutas-hero__action,
.ao-rutas-hero__button {
width: 100%;
}

.ao-rutas-hero__button {
min-height: 62px;

padding-left: 22px;

font-size: 15px !important;

}

.ao-rutas-hero__button-icon {
width: 46px;
height: 46px;
flex-basis: 46px;
}

.ao-rutas-hero__scroll {
margin-top: 5px;
}

.ao-rutas-hero__grid,
.ao-recap__grid,
.ao-.elementor-51830 .elementor-element.elementor-element-d96a78f__grid,
.ao-comparador__grid,
.ao-autoridad__grid,
.ao-clear-carousel__grid,
.ao-final-cta__grid {
background-size: 42px 42px;
}

.ao-recap__header,
.ao-.elementor-51830 .elementor-element.elementor-element-d96a78f__header,
.ao-comparador__header {
gap: 31px;
}

.ao-recap__eyebrow,
.ao-.elementor-51830 .elementor-element.elementor-element-d96a78f__eyebrow,
.ao-comparador__eyebrow,
.ao-clear-carousel__eyebrow {
margin-bottom: 20px;

font-size: 10px !important;

}

.ao-recap__eyebrow-line,
.ao-comparador__eyebrow-line,
.ao-clear-carousel__eyebrow > span {
width: 31px;
flex-basis: 31px;
}

.ao-recap__title,
.ao-.elementor-51830 .elementor-element.elementor-element-d96a78f__title,
.ao-comparador__title {
font-size: clamp(48px, 14vw, 67px) !important;
line-height: 0.91 !important;
}

.ao-recap__intro p,
.ao-.elementor-51830 .elementor-element.elementor-element-d96a78f__header-copy p,
.ao-comparador__intro p {
font-size: 17px !important;
line-height: 1.5 !important;
}

.ao-recap__areas {
margin-top: 57px;

grid-template-columns: 1fr;

border-radius: 21px;

}

.ao-recap__area,
.ao-recap__area:nth-child(2n),
.ao-recap__area:nth-child(3n),
.ao-recap__area:nth-child(n + 4),
.ao-recap__area:nth-child(n + 5) {
min-height: 135px;

padding: 21px;

border-right: none;
border-bottom: 1px solid rgba(12, 8, 25, 0.1);

}

.ao-recap__area:last-child {
border-bottom: none;
}

.ao-recap__area:hover {
transform: none;
}

.ao-recap__area h3 {
font-size: 29px !important;
}

.ao-recap__question {
margin-top: 38px;

padding:
  30px
  22px;

border-radius: 23px;

}

.ao-recap__question-top {
align-items: flex-start;
flex-direction: column;

gap: 18px;

}

.ao-recap__question-intro {
font-size: 16px !important;
line-height: 1.5 !important;
text-align: left;
}

.ao-recap__question-title {
margin-top: 57px !important;

font-size: clamp(43px, 12.5vw, 59px) !important;
line-height: 0.94 !important;

}

.ao-recap__needs {
margin-top: 33px;

border-radius: 21px;

}

.ao-recap__needs-copy,
.ao-recap__needs-conclusion {
padding:
27px
22px;
}

.ao-recap__needs-copy p {
padding-left: 23px !important;

font-size: 17px !important;

}

.ao-recap__needs-conclusion {
min-height: 190px;
}

.ao-recap__needs-conclusion p {
font-size: 31px !important;
}

.ao-recap__closing {
margin-top: 52px;

padding-top: 38px;

gap: 31px;

}

.ao-recap__closing-copy p {
font-size: 16px !important;
}

.ao-recap__closing-copy h3 {
font-size: clamp(42px, 12vw, 58px) !important;
line-height: 0.95 !important;
}

.ao-recap__button {
width: 100%;
min-height: 62px;

padding-left: 21px;

font-size: 15px !important;

}

.ao-recap__button-icon {
width: 46px;
height: 46px;
flex-basis: 46px;
}

.ao-.elementor-51830 .elementor-element.elementor-element-d96a78f__routes {
margin-top: 58px;

grid-template-columns: 1fr;

gap: 17px;

}

.ao-route {
min-height: auto;

padding:
  24px
  21px;

border-radius: 23px;

}

.ao-route:hover {
transform: none;
}

.ao-route__top {
min-height: 45px;
}

.ao-route__icon {
width: 42px;
height: 42px;
flex-basis: 42px;

border-radius: 12px;

}

.ao-route__icon svg {
width: 20px;
height: 20px;
}

.ao-route__need {
margin-top: 25px !important;

font-size: clamp(32px, 9.5vw, 43px) !important;
line-height: 1 !important;

}

.ao-route__recommendation {
margin-top: 36px;

padding-top: 22px;

}

.ao-route__program {
font-size: 25px !important;
line-height: 1.08 !important;
}

.ao-route__description {
margin-top: 20px !important;

font-size: 16px !important;
line-height: 1.52 !important;

}

.ao-route__footer {
margin-top: 29px;

padding-top: 23px;

}

.ao-route__button {
min-height: 60px;

padding-left: 20px;

font-size: 15px !important;

}

.ao-route__button-icon {
width: 45px;
height: 45px;
flex-basis: 45px;
}

.ao-comparador__table {
margin-top: 58px;

border-radius: 22px;

}

.ao-comparador__table-head {
min-height: 67px;

grid-template-columns:
  0.9fr
  1.1fr;

}

.ao-comparador__head-cell {
padding:
19px
16px;

font-size: 9px !important;
letter-spacing: 0.1em !important;

}

.ao-comparador__row {
grid-template-columns: 1fr;
}

.ao-comparador__cell {
min-height: auto;

padding:
  23px
  20px;

}

.ao-comparador__cell--need {
min-height: 92px;

border-right: none;
border-bottom: 1px solid rgba(12, 8, 25, 0.08);

}

.ao-comparador__cell--need p {
font-size: 16px !important;
line-height: 1.4 !important;
}

.ao-comparador__cell--route {
min-height: 120px;

gap: 18px;

}

.ao-comparador__cell--route h3 {
font-size: clamp(23px, 7vw, 30px) !important;
line-height: 1.08 !important;
}

.ao-comparador__arrow {
width: 44px;
height: 44px;
flex-basis: 44px;
}

.ao-comparador__row:hover {
transform: none;
}

.ao-autoridad__institutional {
gap: 37px;
}

.ao-autoridad__title {
font-size: clamp(47px, 13.5vw, 65px) !important;
line-height: 0.92 !important;
}

.ao-autoridad__copy > p {
font-size: 17px !important;
line-height: 1.5 !important;
}

.ao-autoridad__statement {
margin-top: 34px;

padding:
  26px
  22px;

border-radius: 21px;

}

.ao-autoridad__statement p {
font-size: 16px !important;
line-height: 1.5 !important;
}

.ao-autoridad__advisor {
margin-top: 61px;

padding:
  27px
  22px;

grid-template-columns: 1fr;

gap: 26px;

border-radius: 23px;

}

.ao-autoridad__advisor-action {
grid-column: auto;
}

.ao-autoridad__advisor-circle {
width: 70px;
height: 70px;
}

.ao-autoridad__advisor-circle svg {
width: 29px;
height: 29px;
}

.ao-autoridad__advisor-title {
font-size: clamp(29px, 8.8vw, 40px) !important;
line-height: 1.04 !important;
}

.ao-autoridad__advisor-text {
margin-top: 17px !important;

font-size: 16px !important;
line-height: 1.5 !important;

}

.ao-autoridad__button {
width: 100%;
min-height: 62px;

padding-left: 21px;

font-size: 15px !important;

}

.ao-autoridad__button-icon {
width: 46px;
height: 46px;
flex-basis: 46px;
}

.ao-clear-carousel__header {
align-items: flex-start;
flex-direction: column;

gap: 31px;

}

.ao-clear-carousel__title {
font-size: clamp(47px, 13.5vw, 65px) !important;
line-height: 0.92 !important;
}

.ao-clear-carousel__arrow {
width: 52px;
height: 52px;
}

.ao-clear-carousel__viewport {
margin-top: 52px;

overflow: visible;

}

.ao-clear-carousel__track {
gap: 15px;

margin-right: -18px;

padding-right: 18px;

}

.ao-clear-card {
flex-basis: calc(100% - 18px);

min-height: auto;

padding:
  25px
  21px;

border-radius: 23px;

}

.ao-clear-card:hover {
transform: none;
}

.ao-clear-card__title {
min-height: auto;

margin-top: 32px !important;

font-size: clamp(32px, 9.6vw, 43px) !important;
line-height: 1 !important;

}

.ao-clear-card__description {
margin-top: 29px;

padding-top: 24px;

}

.ao-clear-card__description p {
font-size: 16px !important;
line-height: 1.52 !important;
}

.ao-clear-card__list {
margin-top: 27px;
}

.ao-clear-card__list li {
font-size: 15px !important;
}

.ao-clear-card__button {
min-height: 60px;

margin-top: 30px;

padding-left: 19px;

font-size: 14px !important;

}

.ao-clear-card__button-icon {
width: 45px;
height: 45px;
flex-basis: 45px;
}

.ao-clear-carousel__controls {
align-items: flex-start;
flex-direction: column;
}

.ao-clear-carousel__drag {
display: none;
}

.ao-clear-carousel__final-cta {
margin-top: 62px;

padding-top: 42px;

}

.ao-clear-carousel__doubt-button {
width: 100%;
}

.ao-final-cta {
min-height: auto;
}

.ao-final-cta__container {
min-height: auto;

padding:
  22px
  18px
  28px;

}

.ao-final-cta__top {
padding-bottom: 18px;
}

.ao-final-cta__eyebrow {
font-size: 9px !important;
letter-spacing: 0.09em !important;
}

.ao-final-cta__brand {
font-size: 8px !important;
letter-spacing: 0.08em !important;
}

.ao-final-cta__content {
padding:
68px
0
58px;
}

.ao-final-cta__title {
font-size: clamp(47px, 13.7vw, 66px) !important;
line-height: 0.92 !important;
letter-spacing: -0.057em !important;
}

.ao-final-cta__title-accent {
margin-top: 0.18em;
}

.ao-final-cta__bottom {
margin-top: 43px;

gap: 33px;

}

.ao-final-cta__copy {
padding-left: 18px;
}

.ao-final-cta__copy p {
font-size: 16px !important;
line-height: 1.5 !important;
}

.ao-final-cta__actions {
width: 100%;

display: grid;
grid-template-columns: 1fr;

}

.ao-final-cta__button {
width: 100%;
min-height: 62px;
}

.ao-final-cta__button--primary {
min-width: 0;

padding-left: 21px;

}

.ao-final-cta__button--secondary {
min-width: 0;
}

.ao-final-cta__button-icon {
width: 46px;
height: 46px;
flex-basis: 46px;
}

.ao-final-cta__footer {
flex-wrap: wrap;
}
}

/* ==========================================================
MOBILE PEQUEÑO
========================================================== */

@media (max-width: 390px) {

.ao-rutas-hero__title {
font-size: 46px !important;
}

.ao-rutas-hero__button,
.ao-recap__button,
.ao-autoridad__button,
.ao-final-cta__button--primary {
gap: 12px;

padding-left: 17px;

font-size: 14px !important;

}

.ao-recap__title,
.ao-.elementor-51830 .elementor-element.elementor-element-d96a78f__title,
.ao-comparador__title {
font-size: 45px !important;
}

.ao-recap__question-title {
font-size: 41px !important;
}

.ao-route__need {
font-size: 31px !important;
}

.ao-route__button {
font-size: 14px !important;
}

.ao-comparador__head-cell {
padding:
17px
13px;

font-size: 8px !important;

}

.ao-comparador__cell {
padding-right: 17px;
padding-left: 17px;
}

.ao-comparador__cell--route h3 {
font-size: 22px !important;
}

.ao-autoridad__title,
.ao-clear-carousel__title,
.ao-final-cta__title {
font-size: 44px !important;
}

.ao-autoridad__advisor-title {
font-size: 28px !important;
}

.ao-clear-card__title {
font-size: 30px !important;
}

.ao-clear-card__button {
gap: 10px;

padding-left: 16px;

font-size: 13px !important;

}

.ao-final-cta__button--secondary {
font-size: 14px !important;
}
}

/* ==========================================================
ACCESIBILIDAD
========================================================== */

@media (prefers-reduced-motion: reduce) {

.ao-rutas-hero__button,
.ao-rutas-hero__button-icon svg,
.ao-rutas-hero__scroll,
.ao-rutas-hero__scroll svg,
.ao-recap__area,
.ao-recap__area::after,
.ao-recap__button,
.ao-recap__button-icon svg,
.ao-route,
.ao-route::before,
.ao-route__button,
.ao-route__button-icon svg,
.ao-comparador__row,
.ao-comparador__row::before,
.ao-comparador__marker,
.ao-comparador__cell--route h3,
.ao-comparador__arrow,
.ao-autoridad__button,
.ao-autoridad__button-icon svg,
.ao-clear-carousel__arrow,
.ao-clear-card,
.ao-clear-card__button,
.ao-clear-card__button-icon,
.ao-clear-card__button-icon svg,
.ao-clear-carousel__dot,
.ao-clear-carousel__doubt-button,
.ao-final-cta__button,
.ao-final-cta__button-icon svg {
transition: none !important;
}

.ao-clear-carousel__track {
scroll-behavior: auto;
}
}
.


}/* End custom CSS */