html{
    scroll-behavior: smooth;
}
/*typography*/
h1,h2,h3,h4,h5,h6{
    line-height: var(--lh-normal);
    margin: 0;
    padding: 0;
    font-weight: 400;
}

p{
    font-family: var(--font-main);
    line-height: var(--lh-normal);
    margin: 0;
    padding: 0;
}

h1{
    font-family: var(--font-titles);
    font-size: var(--fs-h1);
}

h2{
    font-family: var(--font-titles);
    font-size: var(--fs-h2);
}

h3{
    font-family: var(--font-titles);
    font-size: var(--fs-h3);
}

h4{
    font-family: var(--font-titles);
    font-size: var(--fs-h4);
}

h5{
    font-family: var(--font-titles);
    font-size: var(--fs-h5);
}

h6{
    font-family: var(--font-main);
    font-size: var(--fs-h6);
}

/*typography*/

/* Titles */
.titles_1 {
    color: var(--secondary);  
}

.titles_2 {
    color: var(--primary);  
}
/* Titles */

/* Bootstrap-mini */
.d-flex { display: flex; }
.d-lg-none { display: none; }
.flex-column { flex-direction: column; }
.align-items-center { align-items: center; }
.justify-content-center { justify-content: center; }
.justify-content-between { justify-content: space-between; }
.gap-2 { gap: 0.5rem; }
.gap-4 { gap: 1.5rem; }
.px-3 { padding-inline: 1rem; }
.mt-3 { margin-top: 1rem; }
.w-100 { width: 100%; }
.py-3 { padding-block: 1rem; }

.d-lg-none { display: none; } /* oculto por defecto (desktop) */

@media (max-width: 991px) {
    .d-lg-none { display: block; } /* visible en mobile */
}
/* Mini Bootstrap */

@media (max-width: 990px) {
    html {
        font-size: 15px;
    }
}

@media (max-width: 768px) {
    html {
        font-size: 14px;
    }
}

@media (max-width: 480px) {
    html {
        font-size: 13px;
    }
}