.cta-ancho {
    position: relative;
    overflow: hidden;
    background-color: rgb(var(--palette-1));
    color:  rgb(var(--palette-3));
    padding-block: var(--space-v-xl);

}

/* ---------- Cuadrícula decorativa (derecha, fundiéndose) ---------- */

.cta-ancho__cuadricula {
    position: absolute;
    inset-block: 0;
    inset-inline-end: 0;
    width: 60%;
    color: rgba(255, 255, 255, 0.22);
    pointer-events: none;

    /* Fundido: opaco a la derecha, transparente hacia la izquierda */
    -webkit-mask-image: linear-gradient(
        to left,
        rgba(0, 0, 0, 1)10%,
        rgba(0, 0, 0, 0.7) 60%,
        rgba(0, 0, 0, 0) 100%
    );
            mask-image: linear-gradient(
        to left,
        rgba(0, 0, 0, 1) 0%,
        rgba(0, 0, 0, 0.7) 60%,
        rgba(0, 0, 0, 0) 100%
    );
}

.cta-ancho__cuadricula svg {
    display: block;
    width: 100%;
    height: 100%;
}

/* ---------- Interior ---------- */

.cta-ancho__interior { 
    position: relative;
    z-index: 1;
    display: flex;
    flex-direction: column;
    gap: 2rem;
    align-items: flex-start;
}

@media (min-width: 900px) {
    .cta-ancho__interior {
        flex-direction: row;
        align-items: center;
        justify-content: space-between;
        gap: 3rem;
    }
}

/* ---------- Contenido textual ---------- */

.cta-ancho__contenido {
    max-width: 36rem;
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

.cta-ancho__eyebrow {
    color: rgba(255, 255, 255, 0.7);
    margin: 0;
}

.cta-ancho__titulo {
    font-size: var(--fs-1);
    margin: 0;
    color: #fff;
}

.cta-ancho__subtitulo {
    font-size: var(--fs-lead);
    color: var(--text-light);
    margin: 0;
    max-width: 30rem;
}

/* ---------- Botón ---------- */

.cta-ancho__acciones {
    flex-shrink: 0;
}

.cta-ancho__boton {
    display: inline-flex;
    align-items: center;
    gap: 0.6rem;
    padding: 0.9rem 1.5rem;
    background-color: #fff;
    color: rgb(var(--palette-1));
    border: 1px solid #fff;
    border-radius: 999px;
    font-weight: 600;
    font-size: var(--font-size-mini);
    text-decoration: none;
    transition: background-color 0.2s ease, color 0.2s ease, transform 0.2s ease;
}

.cta-ancho__boton:hover,
.cta-ancho__boton:focus-visible {
    background-color: transparent;
    color: #fff;
}

.cta-ancho__boton:active {
    transform: translateY(1px);
}

.cta-ancho__boton svg {
    transition: transform 0.2s ease;
}

.cta-ancho__boton:hover svg,
.cta-ancho__boton:focus-visible svg {
    transform: translateX(3px);
}