body {
    font-family: 'Roboto', sans-serif;
    font-style: normal;
    font-weight: normal;
    font-size: 14px;
    color: #989898;

    background: #E3E3E3;
    margin-top: 0px;
    margin-left: 0px;
    margin-right: 0px;
}
.noto { font-family: 'Noto Serif', serif; }
.roboto { font-family: 'Roboto', sans-serif; }
.fsize12 { font-size: 12px; }
.fsize14 { font-size: 14px; }
.fsize16 { font-size: 16px; }
.fsize20 { font-size: 20px; }
.fsize22 { font-size: 22px; }
.fsize28 { font-size: 28px; }
a:visited, a:link, a:active { 
    color: #989898; /*allineato con il text std del body */
    text-decoration: none; 
    outline : none;
    border : 0px;
}
@media screen and (min-width: 0px) {
    /* passaggio da 2 a 3 colonne */
    body {
        /* font-size: 100%; */
    }
    .contenitore{ max-width: 100%; }
    .adjustMenu { padding-top: 15px; }
    .adjustSubMenu { padding-top: 15px; } 
    .adjustMenuLanguage { display: inline-block; padding-top: 8px; }
}
@media screen and (min-width: 522px) {
    /* passaggio da 3 a 4 colonne */
    body {
        /* font-size: 140%; */
    }

    .adjustMenu { padding-top: 152px; }
    .adjustSubMenu { padding-top: 15px; } 
    .adjustMenuLanguage { display: inline-block; padding-top: 0px; }
    .menuIcon { margin-top: -11px; }
    
    .projCardLeft { display: inline-block; width: 100%; height: auto; float: left; }
    .projCardRight { display: inline-block; width: 100%; height: auto; float: left; }
    
    .partnersDiv { display: inline-block; vertical-align: top; margin-top: 20px; /*border: 1px solid yellow;*/ }
    .partnersDiv2 { display: inline-block; vertical-align: top; margin-top: 20px; /*border: 1px solid yellow;*/ }
    .partnersDiv3 { display: inline-block; vertical-align: top; margin-top: 20px; /*border: 1px solid yellow;*/ }
}
@media screen and (min-width: 766px) {
    .contenitore{ max-width: 1295px; }
    .adjustSubMenu { padding-top: 152px; float: right; } 
    .adjustMenuLanguage { display: inline-block; padding-top: 0px; }
    
    .projCardLeft { display: inline-block; width: 70.0%; height: auto; float: left; }
    .projCardRight { display: inline-block; width: 30.0%; height: auto; float: right; }
    
    .partnersDiv { display: inline-block; vertical-align: top; margin-top: 20px; /*border: 1px solid yellow;*/ }
    .partnersDiv2 { display: inline-block; vertical-align: top; margin-top: 20px; /*border: 1px solid yellow;*/ }
    .partnersDiv3 { display: inline-block; vertical-align: top; margin-top: 20px; /*border: 1px solid yellow;*/ }
}
@media screen and (min-width: 1300px) {
    .contenitore{ max-width: 1295px; }
    .adjustSubMenu { padding-top: 152px; float: right; } 
    .adjustMenuLanguage { display: inline-block; padding-top: 0px; }
    
    .projCardLeft { display: inline-block; width: 70.0%; height: auto; float: left; }
    .projCardRight { display: inline-block; width: 30.0%; height: auto; float: right; }
    
    .partnersDiv { display: inline-block; vertical-align: top; margin-top: 20px; /*border: 1px solid yellow;*/ }
    .partnersDiv2 { display: inline-block; vertical-align: top; margin-top: -100px; /*border: 1px solid yellow;*/ }
    .partnersDiv3 { display: inline-block; vertical-align: top; margin-top: -125px; /*border: 1px solid yellow;*/ }
}

/* risoluzione schermo min:580px to max:623px */
@media screen and (max-height: 623px) {
}
/* risoluzione schermo min:623px to max:755px */
@media screen and (min-height: 624px) {
    /*.rect_315_735 { height: 390px !important; } */
    /* .rect_315_735 { height:695px !important; } */
}
/* risoluzione schermo min:755px to max */
@media screen and (min-height: 755px) {
}
/*max-width: 1640px;*/
.contenitore{ display:block; margin-left: auto; margin-right: auto; min-width: 360px; max-width: 1295px; vertical-align: top; }
.main { display: inline-block; width: 100%; height: auto; float: left; min-height: 71.6%; }
.mainMenu { min-width: 320px; min-height: 180px; /* border: 1px solid yellow; */ display: inline-block;  vertical-align: bottom;  }
.mainLeft { display: inline-block; width: 50%; max-height: 460px; float: left; overflow: hidden; margin-bottom: 0px; }
.mainRight { display: inline-block; width: 50%; max-height: 460px; float: left; overflow: hidden; margin-bottom: 0px; }
.mainPartners { display: inline-block; width: 100%; height: auto; float: left; }
.mainContacts { display: inline-block; width: 100%; height: auto; float: left; }
.mainFooter { display: inline-block; width: 100%; height: auto; float: left; }

.loading-info { text-align:center; }

.bkgWhite { background-color: white; display: table; max-width:100%; width:100%; height: auto; }
.logo { padding-top: 15px; padding-left: 15px; }
.menu { display: inline-block; width: auto; }
a.menuSel { /* background: #FFD455; */ color: #000000 !important; font-weight: bold; }
a.menulink:visited, a.menulink:link, a.menulink:active, .menulink { 
    color: #A1A1A1; 
    text-decoration: none; 
}
a.menulink:hover {
    font-weight: bold;
}
.menuBorder { border-right: 1px solid #A1A1A1; height: 16px; }
.menuIcon { display: inline-block; width: auto; }
.inlineBlock { display: inline-block; }
.floatLeft { float: left; }
.floatRight { float: right; }
.paddingTop-125 { margin-top: -125px; }
.paddingTop-100 { margin-top: -100px; }
.paddingTop5 { padding-top: 5px; }
.paddingTop10 { padding-top: 10px; }
.paddingTop20 { padding-top: 20px; }
.paddingTop30 { padding-top: 30px; }
.paddingTop40 { padding-top: 40px; }
.paddingTop50 { padding-top: 50px; }
.paddingTop85 { padding-top: 85px; }
.paddingLeft10 { padding-left: 10px; }
.paddingLeft15 { padding-left: 15px; }
.paddingLeft30 { padding-left: 30px; }
.paddingRight5 { padding-right: 5px; }
.paddingRight10 { padding-right: 10px; }
.paddingBottom5 { padding-bottom: 5px; }
.marginLeft5 { margin-left: 5px; }
.marginLeft15 { margin-left: 15px; }
.marginLeft20 { margin-left: 20px; }
.marginLeft30 { margin-left: 30px; }
.marginLeft65 { margin-left: 65px; }
.marginRight5 { margin-right: 5px; }
.marginRight10 { margin-right: 10px; }
.marginRight20 { margin-right: 20px; }
.marginBottom5 { margin-bottom: 5px; }
.marginBottom20 { margin-bottom: 20px; }
.marginBottom30 { margin-bottom: 30px; }
.marginTop10 { margin-top: 10px; }
.marginTop20 { margin-top: 20px; }
.marginTop50 { margin-top: 50px; }
.marginTop100 { margin-top: 100px; }

.maxHeight50 { max-height: 50px; }
.minHeight50 { min-height: 50px; }

a.linkdecoration:visited, a.linkdecoration:link, a.linkdecoration:active, .linkdecoration { 
    color: #000000; 
    text-decoration: none; 
}
a.linkdecoration:hover {
    font-weight: bold;
}

.textThick { font-weight: bold; }
.textNormal { font-weight: normal; }
.textJustify { text-align: justify; }
.textCenter { text-align: center; }
.textRight { text-align: right; }
.textUnderline, a.textUnderline { text-decoration: underline; }
.styleItalic { font-style: italic; }
.colorBlack, a.colorBlack { color: black; }
.colorWhite, a.colorWhite { color: white; }
.colorRed, a.colorRed { color: red !important; }
.button { padding-top: 5px; background: #FFFFFF; height:83px; border: 1px solid black;}
.buttonText { font-size: 20px; margin-top: 28px; margin-left: 15px; }
.cookieText { font-size: 16px; padding-top: 30px; padding-right: 15px; }

.loading-info { color:#FF0000; padding-bottom: 30px; }
.newsBody { display:table; margin-left: 8%; margin-right: auto; max-width: 80%; /* border: 1px solid yellow; */ }
.ImgNewsAspecRatio { display: block; max-width:100%; width: auto; height: auto; }
.ImgAboutAspecRatio { display: block; max-width:100%; max-height: 550px; width: auto; height: auto; }
.ImgProjectsAspecRatio { display: block; max-width:100%; max-height: 365px; width: auto; height: auto; }
.ImgProjectsAspecRatioGrid { display: block; min-width:100px; max-height: 365px; max-width:100%; }
.ImgPartnersAspecRatio { display: inline-block; width: auto; height: auto; }
.ImgProjCardAspecRatio { display: inline-block; max-width:100%; width: auto; height: auto; }
.menuNews { display: block; max-width:100%; width: auto; height: auto; background: #464646; }
.menuNewsText { display: inline-block; width:100%; background: #464646; min-height:30px; text-align:center; }
.buttonNews, a.buttonNews { cursor: pointer; }

.awardsDiv { display: inline-block; vertical-align: top; min-width: 15%; }
.awardsLoghiDiv { display: inline-block; text-align: center; min-width: 23.3%; /*border: 1px solid yellow;*/ }
.clientsDiv { display: inline-block; vertical-align: top; width: auto; width:95%; /* border: 1px solid yellow; */ }
.partnersDiv { display: inline-block; vertical-align: top; /* border: 1px solid yellow;*/ }

.aboutBlockIndex { display: block; width: 100%; max-width: 645px; /* border: 1px solid yellow; */ }
.aboutBlockAbout { display: block; width: 100%; width: auto; height: auto; /* border: 1px solid yellow; */ }
.aboutBlockImgIndex { display: block; max-width:100%; max-height: 365px; width: auto; height: auto; margin-bottom: 5px; }
.aboutBlockImgAbout { display: block; max-width:100%; width: auto; height: auto; }
.aboutBody { display:table; margin-left: auto; margin-right: auto; max-width: 80%; }

.projectsBlock { display: block; width: auto; height: auto; }
.projectsBlockIndex { margin-left: 5px; }
.projectsLeft { display: inline-block; width: 49.8%; height: auto; float: left; }
.projectsRight { display: inline-block; width: 49.8%; height: auto; float: right; }

div.caption:hover span.overlay {
    display:block;
}
.caption {
    position: relative;
    overflow: hidden;
}
.caption img {
    float: left;
    background: #fff;
    border: none;
}
.caption span { 
    width: 100%;
    height: 100%;
    color: #dedede;
    background: #222; /* browser che non supportano rgba */
    background: rgba(0,0,0,0.7);
    position: absolute;
    left: 0;
    top: -15px;
    bottom: 0;
    font-size: 16px;
    display:none;
}
.caption p { 
    display:block; 
    text-align: center; /* orizzontale */
    margin-left: 5%;
    margin-right: 5%;
}
.pProduct {
   margin-top: 24%;
   margin-bottom: 0;
   padding-bottom: 5px;
   /* border: 1px solid yellow; */
   border-bottom: 2px solid white;
}
.sProduct {
   margin-top: 5px;
   /* border: 1px solid yellow; */
}
.projCardBlock { display: block; width: auto; height: auto; }
.projCardBody { display: inline-block; margin-left: auto; margin-right: auto; max-width: 80%; /* border: 1px solid yellow; */ }

.partnersBlock { height: auto; background: #464646; min-height:87px; margin-top: 5px; }

.contactsBlockIndex { display:block; width: auto; height: auto; margin-top: 5px; margin-bottom: 5px; min-height: 365px;
                background-image: url("../img/contacts/contacts.jpg");
                background-repeat: repeat; /* border: 1px solid cyan; */
} 
.contactsBlockContacts { display:block; width: auto; height: auto; margin-top: 5px; margin-bottom: 5px; min-height: 550px;
                padding-top: 100px;
                background-image: url("../img/contacts/contacts.jpg");
                background-repeat: repeat; /* border: 1px solid cyan; */
} 
.contactsBallon { display:inline-block; vertical-align:middle; min-width: 275px;
                background-size: 275px 275px;
                background-image: url("../img/contacts/fumettoblack.png");
                background-repeat: no-repeat; /* border: 1px solid red; */
}
.buttonContacts, a.buttonContacts { cursor: pointer; }
.lineWhite { border-bottom: 2px solid #FFFFFF; min-height:15px;}
.footerBlock { display: block; background: #464646; min-height:87px; margin-bottom: 25px; }

.galleryCursor {
    cursor: url(../img/zoom.png),zoom-in;
    display: block;
}

.cookieBlock { display: block; width: auto; height: auto; }
div.label{
    float: left;
    width: 98%;
    display: inline-block;
    background: #FFFFFF;
    padding-left: 10px;
    padding-right: 10px;
    padding-bottom: 5px; 
    border-bottom: 0;
    margin-top: 10px; 
    box-shadow: 3px 3px 2px #D2D2D2;  
    border: 1px solid #D2D2D2;
}
p.label {
	margin-bottom: -10px; 
}
.inline {
	display: inline-block;
}
#bottom-banner{
    position:fixed;
    bottom:0px;
    width:100%;
    max-width: 1295px;
    font-size : 12px;
    padding-top: 10px;
    padding-bottom: 10px;
    color: #000000;
    background: #FFFFFF;
    border-top: 1px solid #333333;
    cursor: pointer;
    /* background: #C3512F; */
    z-index:999999;
}
#privacytxt{
    padding-left: 50px;
    padding-right: 50px;
}
#privacyBtn{
    display: block;
    margin: 5px auto;
    text-align: center;
}

.testBoxRed { display: inline-block; width: 50%; height: 100px; background: red; }
.testBoxCyan { display: inline-block; width: 50%; height: auto; background: cyan; }
.test { width: auto; height: auto; border: 2px solid red; min-height: 10px; }