.col-1, .col-2, .col-3, .col-4, .col-5, .col-6, .col-7, .col-8, .col-9, .col-10, .col-11, .col-12, .col, .col-auto, .col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12, .col-sm, .col-sm-auto, .col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12, .col-md, .col-md-auto, .col-lg-1, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-10, .col-lg-11, .col-lg-12, .col-lg, .col-lg-auto, .col-xl-1, .col-xl-2, .col-xl-3, .col-xl-4, .col-xl-5, .col-xl-6, .col-xl-7, .col-xl-8, .col-xl-9, .col-xl-10, .col-xl-11, .col-xl-12, .col-xl, .col-xl-auto {
    position: relative;
    width: 100%;
    padding-right: 0!important;
    padding-left: 0!important;
}

body, html{
    overflow-x: hidden!important;
}

body{
    overflow: hidden;
}


/* font */

p{
    color: #2B465A;
    font-size: 20px
}

a, p, h1, h2, h3, h4, h5{
    font-family: 'Roboto', sans-serif;
}

/* */
.logo-application{
    width: 50px;
    height: 50px;
    margin: 10% auto;
}
/* header */


.nav-link{
    padding: 0.5rem 1.3rem!important;
}

.nav-link-selected{
    height: max-content;
    margin: auto;
    padding: 0.5rem 1.3rem!important;
    font-size: 24px;
    color: #2B465A !important;
    font-weight: bold;
}

.nav-link-selected:hover{
    text-decoration: none;
}




/* footer */

footer{
    background: #2470A2;
    box-shadow: inset 0px 4px 14px rgba(0, 0, 0, 0.15);
}

.footer-logo{
    padding-left: 2vw;
    width: 60%;
}

.footer-contact{
    margin-top: -18px;
    padding-left: 5vw;
    margin-bottom: 10px;
}

.footer-contact a, .footer-contact p{
    font-size: 20px;
}


.footer-legale{
    height: max-content;
    position: absolute;
    right: 5vw;
    top: 40%;
    margin: auto 0;
}

.footer-legale p, .footer-legale a{
    text-align: right;
    color: white!important;
    margin-bottom: 0!important;
    font-family: 'Roboto' , sans-serif;
    font-style: normal;
    font-weight: bold;
    font-size: 26px;
    line-height: 30px;
    
}

.footerfleche{
    width: 46%;
    float: right;
    margin-right: 22%;
}

/* ----- social icon */

.social-button-container{
    width: 50px;
    height: 50px;
    position: relative;
}


/*telephone*/

.slider-social-tel{
    content:"";
    position: absolute;
    top: 0;
    left: 54px;
    width: 0px;
    height: 50px;
    border-radius: 3px;
    transition: all 0.5s 0.3s ease;
}

.slider-social-tel p {
    font-family: arial;
    text-transform: uppercase;
    font-size: 16px;
    font-weight: 900;
    color: #02558B!important;
    text-align: center;
    line-height: 50px;
    opacity: 0;
    transition: all 0.6s ease;
}

.social-button-container:hover .slider-social-tel {
    width: 180px;
    transition: all 0.5s ease;
    
}

.social-button-container:hover .slider-social-tel p {
    opacity: 1;
    transition: all 1s 0.2s ease;
}

/* mail */
.slider-social-mail{
    content:"";
    position: absolute;
    top: 0;
    left: 54px;
    width: 0px;
    height: 50px;
    border-radius: 3px;
    transition: all 0.5s 0.3s ease;
}

.slider-social-mail p {
    font-family: arial;
    font-size: 16px;
    font-weight: 900;
    color: #02558B!important;
    text-align: center;
    line-height: 50px;
    opacity: 0;
    transition: all 0.6s ease;
}

.social-button-container:hover .slider-social-mail {
    width: 300px;
    transition: all 0.5s ease;
    
}

.social-button-container:hover .slider-social-mail p {
    opacity: 1;
    transition: all 1s 0.2s ease;
}

/* tel-contact */

.slider-social-tel-contact{
    content:"";
    position: absolute;
    top: 0;
    right: 54px;
    width: 0px;
    height: 50px;
    border-radius: 3px;
    transition: all 0.5s 0.3s ease;
}

.slider-social-tel-contact p {
    font-family: arial;
    text-transform: uppercase;
    font-size: 16px;
    font-weight: 900;
    color: #02558B!important;
    text-align: center;
    line-height: 50px;
    opacity: 0;
    transition: all 0.6s ease;
}

.social-button-container:hover .slider-social-tel-contact {
    width: 180px;
    transition: all 0.5s ease;
    
}

.social-button-container:hover .slider-social-tel-contact p {
    opacity: 1;
    transition: all 1s 0.2s ease;
}


/* responsive */


@media (max-width: 992px){
    .footer-legale{
        position: initial;
    }

    
    .foooter-logo{
        width: 57%;
    }

    .footer-legale p, .footer-legale a{
        text-align: left;
        
    }

    .footer-contact{
        padding-left: 9vw;
    }
    
    .footer-legale{
        padding-left: 9vw!important;
    }

    .footer-fleche-container{
        display: none;
    }
    
}


@media (max-width: 500px){


    .footer-contact{
        padding-left: 8vw;
    }
    

    .footer-logo {
        padding-left: 0vw;
    }

    .footer-legale{
        padding-left: 8vw!important;
    }
    
}

/* New Footer Styles - 3 Columns */
.footer-custom {
    background-color: #004268;
    color: white;
    padding: 40px 0;
}

.footer-custom .footer-column {
    display: flex;
    flex-direction: column;
    justify-content: center; /* Alinha verticalmente ao centro */
    margin-bottom: 20px; /* Espaçamento para mobile */
}

.footer-custom a,
.footer-custom p {
    color: white;
    text-decoration: none;
}

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

.footer-custom .footer-logo {
    width: 200px;
    margin-bottom: 15px;
    padding-left: 0; /* Reset padding */
}

.footer-custom p {
    font-size: 0.9rem;
    margin-bottom: 10px;
}

.footer-certs h6 {
    font-size: 1rem;
    font-weight: bold;
    text-transform: uppercase;
    margin-bottom: 10px;
}

.footer-legal p {
    margin-bottom: 5px;
}

/* Alinhamento específico para desktop */
@media (min-width: 992px) {
    .footer-column:nth-child(1) {
        text-align: left;
    }
    .footer-column:nth-child(2) {
        text-align: center;
    }
    .footer-column:nth-child(3) {
        text-align: right;
    }
    .footer-custom .footer-logo {
        margin-right: auto; /* Alinha o logo à esquerda */
        margin-left: 0;
    }
}

/* Alinhamento para mobile */
@media (max-width: 991.98px) {
    .footer-column {
        text-align: center;
    }
    .footer-custom .footer-logo {
        margin-left: auto;
        margin-right: auto;
    }
}