@import url("https://fonts.googleapis.com/css2?family=Montserrat:wght@400;600;700&display=swap");

/**
 * reset
 * ------------------------------------------------------------------------------------
**/
* {
    padding: 0;
    margin: 0;
    border: 0;
    box-sizing: border-box;
    font-family: "Montserrat", sans-serif;
    scroll-behavior: smooth;
}

/**
 * variáveis
 * ------------------------------------------------------------------------------------
**/
:root {
    /* cores */
    --darkblue: #222A43;
    --bluepen: #48789A;
    --blue: #33809F;
    --blueice: #53C2BE;
    --lightblue: #CBE4ED;
    --grey: #ADB5BD;
    --lightgrey: #FAFAFA;
    --white: #FFFFFF;

    /* transações */
    --tran-02: all 0.2s ease;
    --tran-03: all 0.3s ease;
    --tran-04: all 0.4s ease;
    --tran-05: all 0.5s ease;
    --tran-06: all 0.6s ease;
    --tran-07: all 0.7s ease;

    /* sombra */
    --shadow: 0 0 20px 1px rgb(0 0 0 / 10%);
}

/**
 * loading                                      
 * ------------------------------------------------------------------------------------
**/


/**
 * padrões                                      
 * ------------------------------------------------------------------------------------
**/
h1 {
    margin-bottom: 10px;
    padding-bottom: 10px;
    position: relative;
}

h1:after {
    content: "";
    position: absolute;
    display: block;
    width: 100px;
    height: 3px;
    background: var(--blue);
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto;
}

/**
 * sessão: header
 * ------------------------------------------------------------------------------------
**/
.header {
    background: #ffffffbb;
    box-shadow: var(--shadow);
}

.text-logo {
    color: var(--bluepen);
}

.nav-link {
    position: relative;
    margin-left: 40px;
    font-size: 20px;
}

.navbar-nav .nav-link.active {
    font-weight: bold;
    color: var(--blue);
    border-bottom: 3px solid var(--blue);
}

.nav-link::after {
    content: "";
    position: absolute;
    bottom: -1px;
    height: 3px;
    width: 100%;
    left: 0;
    background: var(--blue);
    transition: var(--tran-03);
    transition-timing-function: ease-in-out;
    transform: scaleX(0);
}

.nav-link:hover::after {
    transform: scaleX(1);
}

/**
 * backgrounds
 * ------------------------------------------------------------------------------------
**/

.white-shadow {
    /* ---: body */
    background: #ffffff70;
    box-shadow: var(--shadow);
}

.white {
    /* ---: sessão 1 main page */
    background: #ffffff70;
}

.blue {
    /* ---: sessão 2 main page  */
    background: #cbe4ed98;
}

.darkblue {
    /* ---: footer */
    background-color: var(--darkblue);
}

/**
 * sessão: footer
 * ------------------------------------------------------------------------------------
**/
.footer .icon {
    height: 10px;
}

.footer {
    background: var(--darkblue);
    color: var(--white);
    list-style: none;
    box-shadow: var(--shadow);
}

.footer h3 {
    color: var(--blueice);
}

.sub-title {
    font-size: 21px;
}

hr {
    color: var(--blueice);
    border: 2px solid var(--blueice);
}

.fa-brands,
.fa-solid {
    color: var(--blueice);
}

a {
    color: var(--white);
}