:root {
    --color-enfasis-sae: #ea0d2c;
    --color-enfasis-coi: #0bb5dc;
    --color-enfasis-noi: #f47a04;
    --color-enfasis-banco: #8CD50B;
    --color-enfasis-prod: #4f3f83;
    --color-enfasis-caja: #e9b418;
    --color-enfasis-facture: #B3132E;
    --color-enfasis-amazon: #FE9D42;
    --color-enfasis-asp-sol: #005dab;
    --color-secondary-asp-sol: #86ba0d;
}

*,
*::before,
*::after {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    margin: 0;
    padding: 0;
    border: 0;
    font-size: 100%;
    font: inherit;
    vertical-align: baseline;
    /* 	border: 1px dotted purple; */
}

footer {
    margin: 0;
    padding: 2em;
    background-color: #333;
    color: white;
    font-family: "Roboto", sans-serif;
    font-size: 1em;
    font-weight: 100;
    text-align: justify;
}

footer h2,
footer h3,
footer h4,
footer h5 {
    margin: 0;
    padding: 0;
}

footer a,
footer a:hover {
    color: white;
    text-decoration: none;
}

footer i {
    display: inline-block;
    width: 25px;
    height: 25px;
    border: 1px solid #fff;
    border-radius: 100%;
    font-weight: 500;
    line-height: 25px !important;
    text-align: center;
    text-decoration: none;
    background-color: transparent;
    color: #fff;
}

#sae footer i {
    border-color: var(--color-enfasis-sae);
}

#coi footer i {
    border-color: var(--color-enfasis-coi);
}

#noi footer i {
    border-color: var(--color-enfasis-noi);
}

#banco footer i {
    border-color: var(--color-enfasis-banco);
}

#prod footer i {
    border-color: var(--color-enfasis-prod);
}

#caja footer i {
    border-color: var(--color-enfasis-caja);
}

#facture footer i {
    border-color: var(--color-enfasis-facture);
}

#amazon footer i {
    border-color: var(--color-enfasis-amazon);
}

#asp-sol footer i {
    border-color: var(--color-enfasis-asp-sol);
}

footer ul {
    list-style: none;
    display: flex;
}

footer ul li {
    margin: 0.5em 0;
}

footer li span:hover i {
    background-color: #fff;
    transition: all 400ms;
}

#sae footer li span:hover i {
    background-color: var(--color-enfasis-sae);
}

#coi footer li span:hover i {
    background-color: var(--color-enfasis-coi);
}

#noi footer li span:hover i {
    background-color: var(--color-enfasis-noi);
}

#banco footer li span:hover i {
    background-color: var(--color-enfasis-banco);
}

#prod footer li span:hover i {
    background-color: var(--color-enfasis-prod);
}

#caja footer li span:hover i {
    background-color: var(--color-enfasis-caja);
}

#facture footer li span:hover i {
    background-color: var(--color-enfasis-facture);
}

#amazon footer li span:hover i {
    background-color: var(--color-enfasis-amazon);
}

#asp-sol footer li span:hover i {
    background-color: var(--color-secondary-asp-sol);
}

footer li span:hover a {
    text-decoration: none;
}

footer .titulo {
    display: flex;
    align-items: baseline;
    border-bottom: 1px solid #fff;
    width: 100%;
    height: 4em;
    margin-bottom: 1em;
}

#sae footer .titulo {
    border-bottom-color: var(--color-enfasis-sae);
}

#coi footer .titulo {
    border-bottom-color: var(--color-enfasis-coi);
}

#noi footer .titulo {
    border-bottom-color: var(--color-enfasis-noi);
}

#banco footer .titulo {
    border-bottom-color: var(--color-enfasis-banco);
}

#prod footer .titulo {
    border-bottom-color: var(--color-enfasis-prod);
}

#caja footer .titulo {
    border-bottom-color: var(--color-enfasis-caja);
}

#facture footer .titulo {
    border-bottom-color: var(--color-enfasis-facture);
}

#amazon footer .titulo {
    border-bottom-color: var(--color-enfasis-amazon);
}

#asp-sol footer .titulo {
    border-bottom-color: var(--color-enfasis-asp-sol);
}

footer .container {
    width: 100%;
}


/*=======================================*/

footer .datos__generales {
    margin-bottom: 2em;
}

footer .datos__generales span.bold {
    font-weight: bold;
}

footer .datos__generales img {
    width: 128px;
}

footer .datos__generales ul {
    flex-direction: row;
    justify-content: space-evenly;
}


/*=========*/

footer .datos__contacto .titulo {
    align-items: center;
}

footer .datos__contacto h4 {
    font-size: 2em;
}

footer .datos__contacto h5 {
    margin-bottom: 0.4em;
    font-size: 1.2em;
}

footer .datos__contacto ul {
    flex-direction: column;
}


/* ========= */

footer .datos__social-media ul {
    justify-content: center;
    align-items: center;
}

footer .datos__social-media ul::before,
footer .datos__social-media ul::after {
    content: "";
    display: block;
    position: absolute;
    width: 25%;
    height: 1px;
    background-color: #fff;
}

#sae footer .datos__social-media ul::before,
#sae footer .datos__social-media ul::after {
    background-color: var(--color-enfasis-sae);
}

#coi footer .datos__social-media ul::before,
#coi footer .datos__social-media ul::after {
    background-color: var(--color-enfasis-coi);
}

#noi footer .datos__social-media ul::before,
#noi footer .datos__social-media ul::after {
    background-color: var(--color-enfasis-noi);
}

#banco footer .datos__social-media ul::before,
#banco footer .datos__social-media ul::after {
    background-color: var(--color-enfasis-banco);
}

#prod footer .datos__social-media ul::before,
#prod footer .datos__social-media ul::after {
    background-color: var(--color-enfasis-prod);
}

#caja footer .datos__social-media ul::before,
#caja footer .datos__social-media ul::after {
    background-color: var(--color-enfasis-caja);
}

#facture footer .datos__social-media ul::before,
#facture footer .datos__social-media ul::after {
    background-color: var(--color-enfasis-facture);
}

#amazon footer .datos__social-media ul::before,
#amazon footer .datos__social-media ul::after {
    background-color: var(--color-enfasis-amazon);
}

#asp-sol footer .datos__social-media ul::before,
#asp-sol footer .datos__social-media ul::after {
    background-color: var(--color-enfasis-asp-sol);
}

footer .datos__social-media ul::before {
    left: 5%;
}

footer .datos__social-media ul::after {
    right: 5%;
}

footer .datos__social-media ul li {
    margin-left: 0.5em;
    margin-right: 0.5em;
}

footer .datos__social-media ul li i {
    position: relative;
    width: 40px;
    height: 40px;
    font-size: 1.5em;
    line-height: 40px !important;
    border: 1px solid #868686 !important;
}

footer .datos__social-media ul li i:hover {
    border-color: #015dab;
    background-color: #015dab;
    transition: all 400ms;
}


/* ========= */

footer .copyright,
footer .copyright a {
    font-size: 1em;
    text-align: center;
    color: #868686;
}

footer .copyright a {
    font-size: 1em;
    text-align: center;
    color: #39b449;
}

footer .copyright a:hover {
    text-decoration: underline;
}


/* ========= */

@media (max-width: 576px) {
    footer .datos__generales .contacto ul,
    footer .datos__generales .btn-social-media ul {
        flex-direction: column;
    }
}

@media (min-width: 360px) {
    footer .datos__social-media ul::before,
    footer .datos__social-media ul::after {
        width: 30%;
    }
}

@media (min-width: 600px) {
    footer .datos__social-media ul::before,
    footer .datos__social-media ul::after {
        width: 35%;
    }
}

@media (min-width: 767px) {
    footer .datos__social-media ul::before,
    footer .datos__social-media ul::after {
        width: 40%;
    }
    footer .datos__social-media ul::before {
        left: 0;
    }
    footer .datos__social-media ul::after {
        right: 0;
    }
}