/*Reset proprietà iniziale*/
*{
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

header nav{
    background-color: #00265a;
    color: white;
    padding: 10px 0;
    text-align: center;
}

header nav button.navbar-toggler{
    border: 1px solid white;
}

header nav ul li{
    margin: 0 20px;
}

header nav img{
    height: 50px;
}

header li a.nav-link, header li a.nav-link.active{
    color: white!important;
    text-decoration: none;
}

header li a.nav-link:hover{
    color: #a6c6e5!important;
    text-decoration: underline;
}

/*Nascondo gli elementi invisibili 'pre-animazione' per evitare la barra orizzontale del browser*/
main{
    overflow: hidden;
}

#jumbotron{
    background-image: url('./images/background.jpg');
    background-size: cover;
    height: 90vh;
    padding: 50px 0;
    text-align: center;
    position: relative;
}

#jumbotron div.row{
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

#jumbotron a.ms_button{
    display: inline-block;
    color: white;
    padding: 20px 30px;
    margin-top: 30px;
    background-color: #00265a;
    font-weight: bold;
    text-decoration: none;
}

#jumbotron a.ms_button:hover{
    background-color: #0069d9;
    transition: all 0.3s;
}

section h2.ms_title{
    position: relative;
    top: 20px;
    font-style: italic;
    color: #0f2754;
}

#about.ms_groupList{
    background-color: #eff2f7;
}

#about .ms_groupContext{
    width: 100%;
    margin: auto;
    background-color: white;
    padding-bottom: 30px;
}

#about .ms_groupContext b{
    color: #0f2754;
}

#about h4.ms_title{
    padding: 10px;
    font-style: italic;
    color: #0f2754;
}

#about .ms_societyCard{
    display: flex;
    justify-content: center;
    align-items: center;
}

#about .card img {
    max-width: 100%;
    height: 140px;
    object-fit: contain;
}

#about .card img.ms_imageCenter{
    object-position: center;
}

/*Media queries per impostare un'altezza standard alle card quando viene mostrato il testo (md: >= 768px; lg: >= 992px;)*/
@media (min-width: 768px) {
    #about .card{
        height: 470px;
    }
}

@media (min-width: 992px) {
    #about .card{
        height: 400px;
    }
}

#pianoSostenibilita .card{
    max-width: 540px;
    height: 90%;
    justify-content: center;
}

#pianoSostenibilita .card img.img-fluid{
    height: 200px;
    object-fit: contain;
}

#pianoSostenibilita .ms_activity{
    background-color: #8bc8db;
    border: 1px solid #2596be;
    padding: 5px 20px;
    margin-bottom: 10px;
}

#pianoSostenibilita .ms_activity p{
    margin: 0;
}

#pianoSostenibilita .ms_activity p.ms_text-size{
    font-size: 15px;
}

/*Media query che modifica leggermente la posizione delle immagini da smartphone*/
@media (max-width: 768px) {
    #pianoSostenibilita .card img.img-fluid{
        position: relative;
        top: 25px;
    }
}

section#downloadReport{
    background-color: #eff2f7;
}

#downloadReport i.ms_mainIcon{
    font-size: 80px;
    color: #00265a;
    background-color: #e8ecfc;
    border-radius: 15px;
    padding: 10px 20px;
}

#downloadReport p.ms_text{
    height: 35px;
}


footer{
    background-color: #00265a;
    color: white;
    padding: 20px 0;
    text-align: center;
    width: 100%;
}

footer p{
    color: #CACBD5;
    margin: 5px;
    font-size: 13px;
}

footer a{
    font-size: 30px;
    padding: 5px;
    color: #CACBD5;
    text-decoration: none;
}

footer i:hover{
    color: white;
    transition: all 0.5s;
}



/*INIZIO SEZIONE ANIMAZIONI*/

/*Le classi partono inizialmente con la sola classe ms_animation, 
 che rende gli elementi selezionati invisibili e spostati sull'asse X o Y
*/
#jumbotron .ms_animation{
    transform: translateY(100px);
    filter: blur(10px);
    opacity: 0;
    transition: all 1s;
}

/*Quando l'elemento entra nella viewport, viene aggiunta da javascript la classe ms_animating,
 che resetta le proprietà al loro valore originale, con transizione di 1 secondo
*/
#jumbotron .ms_animation.ms_animating{
    transform: translateY(0px);
    filter: blur(0px);
    opacity: 1;
}

#about h2.ms_animation{
    transform: translateY(30px);
    filter: blur(10px);
    opacity: 0;
    transition: all 1s;
}

#about h2.ms_animation.ms_animating{
    transform: translateY(0px);
    filter: blur(0px);
    opacity: 1;
}

#about h4.ms_animation{
    transform: translateY(30px);
    filter: blur(10px);
    opacity: 0;
    transition: all 1s;
}

#about h4.ms_animation.ms_animating{
    transform: translateY(0px);
    filter: blur(0px);
    opacity: 1;
}

#about .ms_groupPresentation div.ms_animation:first-child{
    transform: translateX(-100%);
    filter: blur(10px);
    opacity: 0;
    transition: all 1s;
}

#about .ms_groupPresentation div.ms_animation.ms_animating:first-child{
    transform: translateX(0%);
    filter: blur(0px);
    opacity: 1;
}

#about .ms_groupPresentation div.ms_animation:nth-child(2){
    transform: translateX(100%);
    filter: blur(10px);
    opacity: 0;
    transition: all 1s;
}

#about .ms_groupPresentation div.ms_animation.ms_animating:nth-child(2){
    transform: translateX(0%);
    filter: blur(0px);
    opacity: 1;
}

#about div.ms_animation{
    transform: translateY(80px);
    filter: blur(10px);
    opacity: 0;
    transition: all 1s;
}

#about div.ms_animation.ms_animating{
    transform: translateY(0px);
    filter: blur(0px);
    opacity: 1;
}


#pianoSostenibilita h2.ms_animation{
    transform: translateY(30px);
    filter: blur(10px);
    opacity: 0;
    transition: all 1s;
}

#pianoSostenibilita h2.ms_animation.ms_animating{
    transform: translateY(0px);
    filter: blur(0px);
    opacity: 1;
}

/*Transizione da sinistra a destra per i div figli 'dispari' */
#pianoSostenibilita div.ms_animation:nth-child(odd){
    transform: translateX(-100%);
    filter: blur(10px);
    opacity: 0;
    transition: all 1s;
}
#pianoSostenibilita div.ms_animation.ms_animating:nth-child(odd){
    transform: translateX(0%);
    filter: blur(0px);
    opacity: 1;
}

/*Transizione da destra a sinistra per i div figli 'pari' */
#pianoSostenibilita div.ms_animation:nth-child(even){
    transform: translateX(100%);
    filter: blur(10px);
    opacity: 0;
    transition: all 1s;
}
#pianoSostenibilita div.ms_animation.ms_animating:nth-child(even){
    transform: translateX(0%);
    filter: blur(0px);
    opacity: 1;
}

#downloadReport div.ms_animation{
    transform: translateY(100px);
    filter: blur(10px);
    opacity: 0;
    transition: all 1s;
}
#downloadReport div.ms_animation.ms_animating{
    transform: translateY(0px);
    filter: blur(0px);
    opacity: 1;
}

/*FINE SEZIONE ANIMAZIONI*/