/**
 * Style of error pages (404, page under construction...)
 */

 .div_error {
    padding: 100px 0 145px;
    padding: 125px 0;
    min-height: 95vh;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -ms-flex-pack: distribute;
        justify-content: space-around;
}
.div_around_error_content {
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}
.div_error_content {
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    margin: 1rem;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-flow: row wrap;
            flex-flow: row wrap;
    min-height: 80vh;
}
.logo {
    max-width: 300px;
    max-height: 300px;
    width: 50%;
}
.logo img {
    -o-object-fit: contain;
       object-fit: contain;
    -o-object-position: top;
       object-position: top;
}
.div_error_text {
    padding: 2rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 1rem;
    width: 50%;
}
.p_error {
    font-size: 2rem;
}
.a_error_back {
    text-align: left;
}
.a_error_back:hover span {
    opacity: .5;
}
.span_error_back {
    text-decoration: underline;
    text-underline-offset: 4px;
}
/* RESPONSIVE */
@media screen and (max-width: 900px) {
    .div_error {
        padding: 3rem 0 3rem;
    }
}
@media screen and (max-width: 750px) {
    .logo {
        padding: 2rem;
    }
    .logo,
    .div_error_text {
        width: 100%;
    }
    .div_error_text {
        text-align: center;
        padding-bottom: 0;
        padding: 0;
    }
    .p_error {
        font-size: 1.8rem;
    }
    .a_error_back {
        text-align: center;
    }
}
@media screen and (max-width: 480px) {
    .div_error {
        padding: 3rem 0 1rem;
    }
    .div_error {
        min-height: 90vh;
    }
    .logo {
        padding: 1.5rem;
    }
    .p_error {
        font-size: 1.5rem;
    }
}
@media screen and (max-width: 380px) {
    .p_error {
        font-size: 1.2rem;
    }
    .p_not_exist,
    .p_error_back {
        font-size: 1rem;
    }
}
@media screen and (max-width: 280px) {
    .p_error {
        font-size: 1rem;
    }
    .p_not_exist,
    .p_error_back {
        font-size: .8rem;
    }
}