.alternativa-landing {
    --cambio-ink: #263b4f;
    --cambio-blue: #397fae;
    --cambio-cyan: #74cbd5;
    --cambio-warm: #e6ac79;
}

.alternativa-landing #main {
    background: linear-gradient(180deg, #f2f7ff, #f8fbff 48%, #edf6fc);
}

.alternativa-landing h1,
.alternativa-landing h2,
.alternativa-landing h3 {
    color: var(--cambio-ink);
}

.alternativa-landing .ambient-section {
    overflow: hidden;
}

.alternativa-landing .ambient-section > .shell {
    position: relative;
    z-index: 1;
}

.alternativa-landing .ambient-ball {
    z-index: 0;
    opacity: 0.65;
}

.cambio-hero {
    padding-block: clamp(64px, 6vw, 88px);
    background: radial-gradient(ellipse 37% 64% at 10% 20%, rgba(128, 198, 230, .25), transparent 100%), radial-gradient(ellipse 36% 62% at 85% 78%, rgba(101, 204, 217, .20), transparent 100%);
}

.cambio-hero .ambient-ball-large { top: 4%; left: 2%; }
.cambio-hero .ambient-ball-small { right: 3%; bottom: 7%; }

.cambio-hero-grid {
    display: grid;
    grid-template-columns: minmax(0, .96fr) minmax(0, 1.04fr);
    align-items: center;
    gap: clamp(35px, 5vw, 78px);
}

.cambio-hero h1 {
    max-width: 720px;
    margin: 0 0 22px;
    font-size: clamp(3rem, 4.5vw, 4.65rem);
    line-height: 1.06;
    letter-spacing: -.045em;
}

.cambio-hero h1 em {
    color: var(--cambio-blue);
    font-style: normal;
}

.cambio-lead {
    max-width: 630px;
    margin: 0 0 28px;
    color: #526678;
    font-size: clamp(1.1rem, 1.45vw, 1.26rem);
    line-height: 1.55;
}

.cambio-actions { display: flex; flex-wrap: wrap; gap: 12px; }

.cambio-subnote {
    max-width: 65ch;
    margin: 19px 0 0;
    color: #6b7d8c;
    font-size: .82rem;
    line-height: 1.5;
}

.cambio-screen { position: relative; min-width: 0; margin: 0; padding: 17px 0 0 17px; }

.cambio-screen::before {
    position: absolute;
    z-index: -1;
    inset: 0 -18px 29px 0;
    border: 1px solid rgba(83, 164, 207, .24);
    border-radius: 27px;
    background: linear-gradient(135deg, rgba(162, 217, 240, .75), rgba(104, 205, 218, .38) 70%, rgba(245, 192, 131, .33));
    content: "";
}

.cambio-screen-window {
    overflow: hidden;
    border: 1px solid #cbdce8;
    border-radius: 18px;
    background: #fff;
    box-shadow: 0 25px 65px rgba(42, 82, 113, .19);
}

.cambio-screen-top { display: flex; height: 31px; align-items: center; gap: 6px; padding-inline: 13px; background: #17384e; }
.cambio-screen-top i { width: 7px; height: 7px; border-radius: 50%; background: #abc5d2; }
.cambio-screen-top i:nth-child(2) { background: #79cfda; }
.cambio-screen-top i:nth-child(3) { background: #efb46f; }
.cambio-screen-top span { margin-left: auto; color: #d9e9f0; font-size: .7rem; font-weight: 700; letter-spacing: .05em; }
.cambio-screen-window img { display: block; width: 100%; height: auto; }
.cambio-screen figcaption { padding: 12px 3px 0; color: #637789; font-size: .79rem; text-align: right; }

.cambio-reasons {
    padding-block: clamp(58px, 6vw, 86px);
    background: linear-gradient(180deg, rgba(255,255,255,.03), rgba(255,255,255,.67) 24%, rgba(255,255,255,.67) 76%, rgba(255,255,255,.03));
}
.cambio-reasons .ambient-ball-large { top: 4%; right: 3%; }
.cambio-intro { max-width: 800px; margin-bottom: 28px; }
.cambio-intro h2,
.cambio-check h2,
.cambio-contact h2 { margin: 0 0 14px; font-size: clamp(2.25rem, 3.6vw, 3.55rem); line-height: 1.12; letter-spacing: -.035em; }
.cambio-intro > p:last-child,
.cambio-check-copy > p:last-child,
.cambio-contact-copy > p:not(.eyebrow) { max-width: 68ch; margin: 0; color: #566a7d; font-size: 1.1rem; line-height: 1.6; }

.cambio-reason-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
.cambio-reason { min-height: 230px; padding: clamp(23px, 2.4vw, 32px); border: 1px solid #d4e4ef; border-radius: 21px; background: rgba(255,255,255,.93); box-shadow: 0 12px 30px rgba(61,103,137,.06); }
.cambio-reason::before { display: block; width: 35px; height: 4px; margin-bottom: 22px; border-radius: 9px; background: var(--cambio-blue); content: ""; }
.cambio-reason--cyan::before { background: var(--cambio-cyan); }
.cambio-reason--warm::before { background: var(--cambio-warm); }
.cambio-reason > span { display: block; margin-bottom: 14px; color: #4e83a3; font-size: .73rem; font-weight: 800; letter-spacing: .11em; text-transform: uppercase; }
.cambio-reason h3 { margin: 0 0 10px; font-size: 1.29rem; }
.cambio-reason p { margin: 0; color: #576a79; line-height: 1.55; }
.cambio-detail-link { display: inline-flex; gap: 8px; align-items: center; margin-top: 25px; color: var(--cambio-blue); font-weight: 800; text-decoration: underline; text-underline-offset: 5px; }

.cambio-check {
    padding-block: clamp(61px, 6vw, 88px);
    background: linear-gradient(180deg, rgba(211,235,249,.06), rgba(211,235,249,.62) 27%, rgba(211,235,249,.62) 73%, rgba(211,235,249,.06));
}
.cambio-check .ambient-ball-small { bottom: 4%; left: 3%; }
.cambio-check-grid { display: grid; grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); align-items: center; gap: clamp(30px, 6vw, 90px); }
.cambio-check-list { overflow: hidden; border: 1px solid #d0e2ee; border-radius: 22px; background: rgba(255,255,255,.9); }
.cambio-check-list > div { display: grid; grid-template-columns: 46px 1fr; gap: 14px; padding: 22px 25px; }
.cambio-check-list > div + div { border-top: 1px solid #dceaf3; }
.cambio-check-list b { display: grid; width: 42px; height: 42px; place-items: center; border-radius: 12px; background: #e4f3fb; color: #377ea8; font-size: .84rem; }
.cambio-check-list p { margin: 0; }
.cambio-check-list strong { display: block; margin-bottom: 5px; color: var(--cambio-ink); font-family: "Nexa", "Source Sans 3", sans-serif; }
.cambio-check-list span { display: block; color: #5a6e7d; line-height: 1.5; }

.cambio-contact {
    padding-block: clamp(63px, 6vw, 88px);
    background: linear-gradient(180deg, rgba(255,255,255,.03), rgba(255,255,255,.55) 26%, rgba(255,255,255,.55) 74%, rgba(255,255,255,.03));
    scroll-margin-top: 18px;
}
.cambio-contact .ambient-ball-large { top: 8%; right: 3%; }
.cambio-contact-grid { display: grid; grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr); align-items: start; gap: clamp(32px, 6vw, 88px); }
.cambio-contact-copy .cambio-detail-link { margin-top: 25px; }
.cambio-form-card { padding: clamp(25px, 3vw, 40px); border: 1px solid #d0e1ec; border-radius: 23px; background: #fff; box-shadow: 0 14px 34px rgba(58,94,122,.07); }
.cambio-form-card h3 { margin: 0 0 18px; font-size: clamp(1.55rem, 2vw, 2rem); }
.cambio-form { padding: 0; border: 0; border-radius: 0; background: transparent; box-shadow: none; }
.cambio-form label { margin-bottom: 13px; }
.cambio-form textarea { min-height: 110px; }
.cambio-form .form-row { gap: 13px; }
.cambio-form .privacy-check { margin-block: 18px 17px; }
.cambio-form small { color: #758594; font-size: .78rem; font-weight: 400; }
.cambio-preview-note { padding: 12px 15px; margin-bottom: 16px; border: 1px solid #c8dfed; border-radius: 12px; background: #edf7fc; color: #45677f; font-size: .87rem; }

@media (max-width: 900px) {
    .cambio-hero-grid,
    .cambio-check-grid,
    .cambio-contact-grid { grid-template-columns: 1fr; }
    .cambio-hero h1 { max-width: 780px; }
    .cambio-screen { max-width: 800px; margin-inline: auto; }
}

@media (max-width: 700px) {
    .cambio-reason-grid { grid-template-columns: 1fr; gap: 12px; }
    .cambio-reason { min-height: 0; }
    .cambio-hero { padding-block: 48px 62px; }
    .cambio-hero h1 { font-size: clamp(2.6rem, 9vw, 3.7rem); }
    .cambio-reasons,
    .cambio-check,
    .cambio-contact { padding-block: 56px; }
}

@media (max-width: 520px) {
    .alternativa-landing .landing-header-inner { gap: 8px; }
    .alternativa-landing .landing-brand img { width: 128px; }
    .alternativa-landing .landing-header .button { padding: 6px 10px; font-size: .72rem; white-space: nowrap; }
    .cambio-hero h1 { font-size: clamp(2.45rem, 10vw, 3rem); }
    .cambio-lead { font-size: 1.06rem; }
    .cambio-actions { align-items: stretch; flex-direction: column; }
    .cambio-actions .button,
    .cambio-form .button { width: 100%; }
    .cambio-screen { padding-left: 8px; }
    .cambio-screen::before { right: -8px; }
    .cambio-check-list > div { padding: 18px 16px; }
    .cambio-form .form-row { grid-template-columns: 1fr; gap: 0; }
}
