.tab {
    display:table;
    width:100%;
}

.tab .tr {
    display:table-row;
}

.tab .td, .tab .sx, .tab .dx {
    display:table-cell
}

.modulo input {
    width:100%;
    display:block;
    height:55px;
    padding:0 10px;
    margin:4px 0 13px 0;
    border-radius:2px;
    border:1px solid #c1c1c1;
    font-size:17px;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

.modulo input[type="submit"], .modulo input[type="button"] {
    background:#000;
    color:#fff;
    border:none;
    -webkit-appearance: none;
    border-radius: 0;
}

.modulo input[type="checkbox"], .modulo input[type="radio"] {
    width:auto;
    height:auto;
    display:inline-block;
    margin-right:4px;
    margin-bottom:0
}

.modulo textarea {
    width:100%;
    display:block;
    height:150px;
    padding:10px;
    margin:4px 0 13px 0;
    border-radius:2px;
    border:1px solid #c1c1c1;
    font-size:17px;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

.modulo select {
    width:100%;
    display:block;
    height:55px;
    padding:0 10px;
    margin:4px 0 13px 0;
    background:url(../img/bg-select.png) no-repeat center right;
    border-radius:2px;
    border:1px solid #c9c9c9;
    font-size:17px;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    
    appearance: none;
    -webkit-appearance:none;
    -moz-appearance: none;
}

.modulo input[type="radio"] {
    width:auto !important;
    height:auto !important
}

.modulo .privacy {
    font-size:12px;
    line-height:16px;
    margin:20px 0
}

.modulo small {
    font-size:13px;
    line-height:14px
}

.page-title {
    margin-bottom:30px;
    text-align:center;
    margin-top:-24px;
    position:relative;
    z-index:3
}

.page-title h1 {
    font-size:28px;
    line-height:30px;
    font-weight:700;
    background:#000;
    border-radius:10px;
    color:#0fb0e2;
    display:inline-block;
    padding:8px 20px;
    margin:0 0 10px 0;
    border:2px solid #fff
}

.page-title h2 {
    font-size:20px;
    line-height:22px;
    font-weight:700;
    color:#000;
    display:inline-block;
    margin:0;
    text-transform:uppercase
}

.lav-title {
    margin:20px 0
}

.lav-title h1 {
    font-size:28px;
    line-height:30px;
    font-weight:700;
    color:#000;
    display:block;
    margin:0 0 5px 0;
}

.lav-title h2 {
    font-size:18px;
    line-height:20px;
    font-weight:700;
    color:#0fb0e2;
    display:inline-block;
    margin:0;
    text-transform:uppercase
}

.lav-title {
    margin:20px 0;
}

.sct1-home {
    padding:40px 0;
}

.sct1-home .sx {
    width:120px;
    vertical-align:middle
}

.sct1-home .dx {
    padding-left:30px;
    vertical-align:middle
}

@media (max-width:630px) {
    .sct1-home {
        padding:20px 0 30px 0
    }
    
    .sct1-home .sx {
        display:none;
    }
    
    .sct1-home .dx {
        width:100%;
        display:block;
        text-align:center;
        padding-left:0
    }
}

.sct2-home {
    padding:80px 0;
    background:#000;
}

.sct2-home .sx {
    text-align:right;
    width:30%;
    padding-right:30px;
    vertical-align:middle;
}

.sct2-home .sx img {
    display:inline-block;
    width:160px
}

.sct2-home .dx {
    padding-left:30px;
    vertical-align:middle;
}

.sct2-home .dx img {
    width:340px
}

@media (max-width:480px) {
    .sct2-home {
        padding:30px 0;
    }

    .sct2-home .sx {
        display:block;
        width:100%;
        text-align:center;
        margin-bottom:20px
    }
    
    .sct2-home .dx {
        display:block;
        width:100%;
        text-align:center
    }
}

.sct3-home {
    padding:60px;
    background:#0fb0e2;
    text-align:center;
    color:#fff
}

.sct3-home.sct3-home-serv {
    background:#000;
}

.sct3-home img.dec-test {
    display:inline-block;
    width:60px
}

.sct3-home .box-test {
    text-align:center
}

.sct3-home .box-test .rank {
    margin:20px 0;
}

.sct3-home .box-test .rank img {
    display:inline-block;
    margin:0 3px;
    width:26px;
    float:none
}

.sct3-home .box-test p {
    font-size:14px;
    line-height:20px;
    font-style:italic
}

.sct3-home .box-test span {
    display:inline-block;
    margin-top:10px
}

.sct4-home {
    margin:-90px 0 0 0
}

.sct4-home .gallery a {
    display:block;
    padding-top:16%;
}

@media (max-width:480px) {
    .sct4-home .gallery .menodue {
        margin-left:-2%
    }
    
    .sct4-home .gallery a.span5 {
        width:48%;
        margin-left:2%;
        float:left;
        margin-bottom:10px;
        padding-top:40%;
    }
    
    .sct4-home .gallery a:nth-child(5) {
        display:none
    }
}

.el-post a {
    display:block;
    margin-bottom:24px;
    -webkit-transition:0.2s;
    -moz-transition:0.2s;
    -o-transition:0.2s;
    transition:0.2s;
}

.el-post a:hover {
    opacity:0.7
}

.el-post a .img {
    padding-top:100%;
    margin-bottom:10px
}

.el-post a .title {
    height:36px;
    overflow:hidden;
    margin-bottom:8px
}

.el-post a .title .tab {
    height:100%
}

.el-post a .title h3 {
    color:#000;
    font-weight:700;
    font-size:16px;
    line-height:18px;
    margin:0;
    text-transform:uppercase;
    display:table-cell
}

.el-post a .txt {
    font-size:14px;
    line-height:18px;
    height:54px;
    color:#707070;
    font-style:italic
}

.el-post a .bott {
    display:block;
    width:100%;
    text-align:center
}

.el-post.el-post2 a .title {
    height:56px;
    overflow:hidden;
    margin-bottom:8px
}

.el-post.el-post2 a .title h3 {
    color:#fff;
    font-size:19px;
    line-height:24px;
    text-align:center;
    padding:4px 10px;
    background:#0fb0e2;
    vertical-align:middle
}

@media (max-width:970px) {
    .el-post.el-post2 a .title {
        height:56px;
    }
    
    .el-post.el-post2 a .title h3 {
        font-size:14px;
        line-height:16px;
    }
}

.tab-scheda {
    margin:30px 0;
}

.tab-scheda .sx {
    vertical-align:top;
    width:250px;
}

.tab-scheda .sx img {
    border-radius:20px
}

.tab-scheda .dx {
    vertical-align:top;
    padding-left:34px;
}

@media (max-width:560px) {
    .tab-scheda .sx {
        width:150px;
    }
    
    .tab-scheda .dx {
        padding-left:15px
    }
}

@media (max-width:400px) {
    .tab-scheda .sx {
        width:100%;
        display:block;
        margin-bottom:20px
    }
    
    .tab-scheda .dx {
        padding-left:0;
        width:100%;
        display:block
    }
}

.box-mod {
    padding-top:35px;
    border-top:1px solid #bcbcbc;
}

.bott {
    display:inline-block;
    margin:25px 0 0 0;
    padding:8px 16px;
    border-radius:8px;
    background:#0fb0e2;
    color:#fff;
    font-weight:700
}

.bott.bott-info {
    padding:8px 16px 8px 28px;
    background-image:url(../img/info.svg);
    background-size:18px auto;
    background-position:left 6px center;
    background-repeat:no-repeat;
}

.back-page {
    display:inline-block;
    margin:-30px 0 0 0;
    padding:3px 10px;
    border-radius:8px;
    background:#0fb0e2;
    color:#fff;
    font-weight:700;
    border:2px solid #fff;
    position:relative;
    z-index:2
}

.back-page.back-page2 {;
    margin:20px 0 0 0;
}

.gallery {
    margin-top:40px;
}

.gallery a {
    display:block;
    border-radius:8px;
    margin-bottom:24px;
    padding-top:15%
}

@media (max-width:480px) {
    .gallery .menodue {
        margin-left:-2%
    }
    
    .gallery a.span5 {
        display:block;
        width:31.3%;
        margin-left:2%;
        float:left;
        margin-bottom:5px;
        padding-top:30%
    }
}

.pag-contatti .sx {
    vertical-align:top;
    padding-right:40px
}

.pag-contatti .dx {
    width:500px;
    vertical-align:top;
}

@media (max-width:950px) {
    .pag-contatti .dx {
        width:350px
    }
}

@media (max-width:800px) {
    .pag-contatti .sx, .pag-contatti .dx {
        width:100%;
        display:block;
        margin-bottom:30px;
        padding:0
    }
}

.serv-title {
    text-align:center;
    margin:-20px 0 0 0;
    background:#fff;
    border-radius:20px;
    position:relative;
    z-index:2;
    display:inline-block;
    padding:20px 30px
}

.serv-title.serv-title-lan {
    margin:0;
}

.serv-title h1 {
    font-size:34px;
    line-height:38px;
    color:#0fb0e2;
    margin:0 0 0 0
}

.serv-title h2 {
    margin:10px 0 0 0
}

.serv-img {
    padding-top:30%;
    margin:-60px 0 50px 0;
    border-radius:20px
}

@media (max-width:820px) {
    .serv-title {
        margin:0px 0 0 0;
        border-radius:20px;
        padding:10px 20px
    }
    
    .serv-title h1 {
        font-size:28px;
        line-height:32px;
    }
    
    .serv-img {
        padding-top:35%;
        margin:-20px 0 40px 0;
        border-radius:20px
    }
}

@media (max-width:540px) {
    .serv-title {
        margin:10px 0 0 0;
        border-radius:0;
        padding:0
    }
    
    .serv-title h1 {
        font-size:22px;
        line-height:24px;
    }
    
    .serv-title h2 {
        font-size:16px;
        line-height:20px;
        margin-top:4px
    }
    
    .serv-img {
        padding-top:35%;
        margin:10px 0 20px 0;
        border-radius:10px
    }

    .serv-title.serv-title-lan {
        border-radius:20px;
        padding:15px
    }
}

.serv-barra {
    background:#0fb0e2;
    padding:40px 0;
    color:#fff;
    margin:50px 0 0 0
}

.serv-barra .sx {
    padding-right:40px;
    text-align:right;
    vertical-align:middle;
    font-weight:400;
    font-size:16px;
    line-height:24px
}

.serv-barra .sx big {
    font-size:24px;
    line-height:32px;
    display:block;
    margin-bottom:10px;
}

.serv-barra .dx {
    vertical-align:middle;
    width:300px;
    text-align:center
}

.serv-barra .dx a.btt1 {
    display:block;
    padding:14px 24px;
    text-align:center;
    font-size:20px;
    line-height:20px;
    color:#0fb0e2;
    background:#fff;
    border-radius:10px;
    margin:2px 0
}

.serv-barra .dx a.btt1 img {
    display:inline-block;
    height:22px;
}

.serv-barra .dx a.btt1 big {
    font-size:30px;
    line-height:34px;
    font-weight:700
}

.serv-barra .dx a.btt2 {
    display:block;
    padding:14px 24px;
    text-align:center;
    font-size:20px;
    line-height:20px;
    color:#53b200;
    background:#fff;
    border-radius:10px;
    margin:2px 0
}

.serv-barra .dx a.btt2 img {
    display:inline-block;
    height:22px;
}

.serv-barra .dx a.btt2 big {
    font-size:30px;
    line-height:34px;
    font-weight:700
}

.serv-barra .dx a.btt3 {
    display:block;
    padding:10px 20px;
    text-align:center;
    font-size:15px;
    line-height:18px;
    color:#0fb0e2;
    background:#fff;
    border-radius:10px;
    margin:2px 0
}

.serv-barra .dx a.btt3 img {
    display:inline-block;
    height:15px;
    margin-bottom:-2px
}

@media (max-width:750px) {
    .serv-barra .sx {
        display:block;
        width:100%;
        text-align:center;
        padding:0 0 20px 0
    }
    
    .serv-barra .dx {
        display:block;
        width:100%;
        text-align:center;
        padding:0
    }
}

@media (max-width:480px) {
    .serv-barra .dx a.btt1, .serv-barra .dx a.btt2 {
        font-size:16px;
        line-height:16px;
    }
    
    .serv-barra .dx a.btt1 big {
        font-size:20px;
        line-height:20px;
    }
    
    .serv-barra .dx a.btt1 img, .serv-barra .dx a.btt2 img {
        height:18px;
    }
}

.serv-form {
    text-align:center;
    background:#d8d8d8;
    padding:40px 0;
}

.big-txt {
    font-size:28px;
    line-height:30px;
    text-align:center;
    margin:20px 0;
    color:#0fb0e2;
    border:1px solid #0fb0e2;
    padding:10px 15px;
    border-radius:14px
}

.big-txt b {
    color:#0fb0e2;
}

/* ---- POPUP ---- */

.container-popup {
    position:fixed;
    z-index:1000;
    top:0;
    left:0;
    right:0;
    bottom:0;
    width:100%;
    height:100%;
    background-image:url(../img/bg-popup.png);
    background-repeat:no-repeat;
    background-size:cover;
    background-position:center;
}

.container-popup .box {
    display:table-cell;
    vertical-align:middle;
    text-align:center;
    width:100%;
    height:100%
}

.container-popup .box .content-popup {
    display:inline-block;
    max-width:700px;
    background:#fff;
    position:relative;
    margin:10px;
    border:4px solid #fff;
    padding:30px 20px;
}

.container-popup .box .content-popup .chiudi-popup {
    position:absolute;
    width:150px;
    text-align:center;
    left:50%;
    margin-left:-75px;
    display:block;
    padding:10px;
    background:#2356A4;
    color:#fff;
    font-weight:bold;
    font-size:13px;
    line-height:13px;
    bottom:-20px
}

.container-popup .box .content-popup h3 {
    color:#01a703;
    font-size:25px;
    line-height:30px;
}

.container-popup .box a.btt1 {
    display:block;
    padding:10px 20px;
    text-align:center;
    font-size:18px;
    line-height:18px;
    color:#fff;
    background:#0fb0e2;
    border-radius:10px;
    margin:15px 0 2px 0;
}

.container-popup .box a.btt1 img {
    display:inline-block;
    height:22px;
}

.container-popup .box a.btt1 big {
    font-size:30px;
    line-height:34px;
    font-weight:700
}

.container-popup .box a.btt2 {
    display:block;
    padding:10px 20px;
    text-align:center;
    font-size:18px;
    line-height:18px;
    color:#fff;
    background:#53b200;
    border-radius:10px;
    margin:2px 0
}

.container-popup .box a.btt2 img {
    display:inline-block;
    height:22px;
}

.container-popup .box a.btt2 big {
    font-size:30px;
    line-height:34px;
    font-weight:700
}

.no-view {
    display:none !important;
    top:0;
    -webkit-transition: 0.4s;
    -moz-transition: 0.4s;
    -o-transition: 0.4s;
    transition: 0.4s;
}

.tab-scheda {
    margin-top:40px;
}

.tab-scheda .sx {
    vertical-align:top;
    width:350px;
}

.tab-scheda .dx {
    vertical-align:top;
    padding-left:30px
}

@media (max-width:890px) {
    .tab-scheda .sx {
        vertical-align:top;
        width:200px;
    }
}

@media (max-width:620px) {
    .tab-scheda .sx {
        width:100%;
        display:block;
    }
    
    .tab-scheda .dx {
        width:100%;
        display:block;
        margin-top:30px;
        padding:0;
    }
}








/* --------- 768px - Tablet --------- */

@media (max-width:768px) {
    
    
}



/* --------- 480px - Smartphone --------- */

@media (max-width:480px) {

    
}