/* Estilos globales */
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    font-family: var(--font-family);
}

html { 
    scroll-behavior: smooth;
}

body {
    margin-top: 160px;
    background-color: var(--color-bg-principal);
    scroll-margin-top: 160px;
}

section {
    width: var(--medida-ancho);
    margin: auto;
    margin-top: 80px;
    scroll-margin-top: 70px;
}

h1, h2, h3, p, span, a, li {
    text-decoration: none;
    list-style: none;
    color: var(--color-texto-principal);
}

p {
    line-height: 1.6;
    max-width: 90%;
}

h1 {
    color: var(--color-texto-encabezados);
    font-family: var(--font-departure);
}

h2 {
    margin-bottom: 20px;
    border-bottom: var(--borde-principal-1);
}

/* Layout contenidos */
#contenidos {
    width: var(--medida-ancho);
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
}


/* 🟩🟩 ↓ RESPONSIVE ↓ 🟩🟩 */

/* Tablets */
@media (max-width: 992px) {
    body {
        margin-top: 130px;
    }

    section {
        margin-top: 60px;
    }

    #contenidos {
        grid-template-columns: 1fr;
        gap: 30px;
    }

    p {
        max-width: 100%;
    }
}

/* Móviles grandes */
@media (max-width: 768px) {
    body {
        margin-top: 120px;
    }

    section {
        margin-top: 50px;
    }

    h2 {
        margin-bottom: 16px;
    }
}

/* Móviles pequeños */
@media (max-width: 480px) {
    body {
        margin-top: 100px;
    }

    section {
        margin-top: 40px;
    }

    #contenidos {
        gap: 25px;
    }

    p {
        line-height: 1.5;
    }
}
