:root {
  font-size: 112.5%; 
}

#g-mainbar {
    padding: 0 0 3rem 0;
}

span.g-menu-item-title {
    line-height: 90px;
    text-transform: uppercase;
}

.row > * {
    padding-left: 0 !important;
    padding-right: 0 !important;
}

#g-page-surround .container, 
#g-page-surround .container-fluid, 
#g-page-surround .platform-content.container {
    max-width: 100% !important;
    width: 100% !important;
    padding-right: 0 !important;
    padding-left: 0 !important;
}

.sppb-addon-wrapper {
    padding-left: 20px !important;
    padding-right: 20px !important;
    box-sizing: border-box;
}

/* Yhteiset tyylit otsikoille */
h1, h2, h3, h4 {
    font-weight: 700;          
    line-height: 1.2;          
    margin-bottom: 0.8rem;   

}

/* Otsikoiden omat tyylit (tietokonenäyttö) */
h1, .sppb-addon-title h1 {
    font-size: 2.5rem;         
    margin-top: 0;             
}

h2, .sppb-addon-title h2 {
    font-size: 2rem;           
    margin-top: 3.5rem;          
}

h3, .sppb-addon-title h3 {
    font-size: 1.4rem;       
    margin-top: 2rem;         
}

p {
    line-height: 1.6;          
    margin-bottom: 1.5rem;     
}

#g-footer a {
    text-decoration: underline !important;
    text-underline-offset: 5px;
}

/* --- Mobiilityylit (max-width: 768px) --- */
@media (max-width: 768px) {
    h1, .sppb-addon-title h1 {
        font-size: 2rem;       
    }

    h2, .sppb-addon-title h2 {
        font-size: 1.6rem;    
        margin-top: 2.5rem;  
    }

    h3, .sppb-addon-title h3 {
        font-size: 1.2rem;     
        margin-top: 1.5rem;
    }
}

.varjo {
    text-shadow: 0px 4px 15px rgba(0, 0, 0, 0.3);
}