/* =============================================================================
   footer.css · pie de página y llamada final
   ============================================================================= */

/* ---------------------------------------------------- Llamada final en hielo */

/* Fondo hielo con un halo de agua detrás del titular. El halo queda del lado
   del texto grande a propósito: los datos pequeños de la derecha siguen sobre
   hielo, donde el acero pasa AA. */
.cta-final {
    position: relative;
    overflow: hidden;
    background:
        radial-gradient(ellipse 60% 90% at 8% 20%, rgba(167, 224, 219, 0.75) 0%, transparent 70%),
        var(--hielo);
    color: var(--fg);
    padding: 120px 0;
}

.cta-final .shell {
    display: grid;
    grid-template-columns: minmax(0, 1.25fr) minmax(0, 1fr);
    align-items: center;
    gap: 60px;
}

/* Sobre el halo de agua el acero pequeño baja a 3,98:1 y no pasa AA (y en
   móvil, con las columnas apiladas, el halo alcanza también a los datos).
   Regla del cierre: todo texto pequeño va en índigo y el botón de contorno
   lleva fondo blanco. El acero queda solo en la palabra acentuada, que es
   texto grande (3:1). */
.cta-final .tag {
    color: var(--fg);
}

.cta-final .btn-outline {
    background: var(--bg);
}

.cta-final .btn-outline:hover {
    background: var(--accent);
}

.cta-final h2 {
    font-size: clamp(2.1rem, 4.6vw, 3.3rem);
    color: var(--fg);
}

.cta-final h2 em {
    color: var(--accent);
}

.cta-final p {
    margin-top: 22px;
    max-width: 50ch;
    color: var(--fg-2);
}

.cta-datos > li {
    display: flex;
    flex-direction: column;
    gap: 4px;
    padding: 18px 0;
    border-top: 1px solid var(--line);
}

.cta-datos > li:first-child {
    border-top: 0;
    padding-top: 0;
}

.cta-datos .meta-label {
    min-width: 0;
    color: var(--fg);
}

.cta-datos a,
.cta-datos span {
    color: var(--fg);
    font-size: 1.02rem;
    font-weight: 600;
    overflow-wrap: anywhere;
}

.cta-datos a:hover {
    color: var(--accent);
}

/* ------------------------------------------------------------------- Pie */

/* El pie va en índigo: ancla la página y reúne el juego de colores de la
   banda profunda. */
.site-footer {
    background: var(--deep);
    color: var(--deep-fg);
    padding: 84px 0 34px;
}

.site-footer .brand-name {
    color: var(--deep-fg);
}

.site-footer .brand-role {
    color: var(--deep-accent);
}

.footer-grid {
    display: grid;
    /* La columna de contacto va mas ancha que las de enlaces: el correo
       del dominio es largo y no debe partirse a mitad de palabra. */
    grid-template-columns:
        minmax(0, 1.35fr) minmax(0, 1fr) minmax(0, 1fr) minmax(0, 1.25fr);
    gap: 48px;
    padding-bottom: 56px;
    border-bottom: 1px solid var(--line-deep);
}

.footer-brand .brand {
    margin-bottom: 22px;
}

.footer-brand p {
    max-width: 40ch;
    color: var(--deep-fg-2);
    font-size: 0.92rem;
}

.footer-nombramiento {
    margin-top: 22px;
    padding-left: 16px;
    border-left: 1px solid var(--cielo);
    color: var(--deep-fg-2);
    font-size: 0.8rem;
    line-height: 1.6;
}

.footer-col h3 {
    margin-bottom: 20px;
    color: var(--deep-accent);
    font-family: var(--font-body);
    font-size: 0.68rem;
    font-weight: 600;
    letter-spacing: 0.28em;
    text-transform: uppercase;
}

.footer-col li {
    margin-bottom: 12px;
}

.footer-col a,
.footer-col span {
    color: var(--deep-fg-2);
    font-size: 0.92rem;
    transition: color 0.25s ease;
    overflow-wrap: anywhere;
}

.footer-col a[href^="mailto:"] {
    font-size: 0.86rem;
}

.footer-col a:hover {
    color: var(--deep-accent);
}

.footer-bottom {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    flex-wrap: wrap;
    padding-top: 30px;
    color: var(--deep-fg-2);
    font-size: 0.8rem;
}

.footer-bottom a:hover {
    color: var(--deep-accent);
}
