﻿@charset "utf-8";
/* CSS Document */

body {
    font-family: 'Open Sans', sans-serif;
    font-weight: 300;
    text-align: center;
    color: #444444;
    margin: 0px;
    font-size: 11pt;
    background-color: #f7f7f7;
}

.container {
    width: 1400px;
    margin: auto;
    text-align: left;
}

.head {
    position: fixed;
    top: 0px;
    left: 0px;
    z-index: 99999;
    width: 100%;
}

    .head .bar {
        width: 100%;
        background-color: #3e608c;
        font-size: 10pt;
    }

        .head .bar .container {
            text-align: right;
            padding: 3px;
        }

            .head .bar .container a {
                display: inline-block;
                padding: 5px 35px;
                color: #ededed;
                background-color: rgba(255,255,255,0.2);
                border: 1px solid white;
            }

                .head .bar .container a:hover {
                    background-color: rgba(255,255,255,0.4);
                    color: #ffffff;
                }

    .head .nav {
        background: url("../immagini/head-nav-bkg.png") repeat-x bottom #ffffff;
    }

        .head .nav .container {
            position: relative;
        }

        .head .nav .logo {
            position: absolute;
            top: -6px;
            left: 0px;
        }

            .head .nav .logo img {
                width: 206px;
            }

        .head .nav .menu {
            float: right;
            list-style-type: none;
            margin: 0px;
            padding: 0px;
        }

            .head .nav .menu li {
                display: inline-block;
            }

                .head .nav .menu li a {
                    padding: 31px 57px;
                    text-transform: uppercase;
                    display: inline-block;
                    font-size: 10.5pt;
                    box-sizing: border-box;
                    border-bottom: solid 5px #d4d5d4;
                    border-left: solid 1px rgba(255,255,255,0);
                    border-right: solid 1px rgba(255,255,255,0);
                }

                    .head .nav .menu li a.sel, .head .nav .menu li a:hover {
                        border-bottom: solid 5px #3e608c;
                        border-left-color: #e4e4e4;
                        border-right-color: #e4e4e4;
                    }

                .head .nav .menu li.login {
                    float: right;
                    margin-top: 25px;
                    display: none;
                }

.bottoneRollante {
    border: 1px solid rgba(68, 68, 68, 0.6);
    border-radius: 31px;
    height: 31px;
    padding: 0;
    position: relative;
    width: 31px;
    box-sizing: content-box;
    overflow: hidden;
    cursor: pointer;
}

    .bottoneRollante:hover {
        background-color: #3e608c;
        border-color: #3e608c;
    }

    .bottoneRollante a {
        position: absolute;
        left: -2px;
        top: -3px;
    }

    .bottoneRollante:hover a img {
        margin-top: -37px;
    }

.bottoneRollanteSmall {
    border: 1px solid rgba(68, 68, 68, 0.6);
    border-radius: 30px;
    height: 26px;
    padding: 0;
    position: relative;
    width: 26px;
    box-sizing: content-box;
    overflow: hidden;
    cursor: pointer;
    top: 7px;
    left: -3px;
}

    .bottoneRollanteSmall:hover {
        background-color: #3e608c;
        border-color: #3e608c;
    }

    .bottoneRollanteSmall a {
        position: absolute;
        left: -58px;
        top: -12px;
    }

    .bottoneRollanteSmall:hover a img {
        margin-top: -27px;
    }

.head.rid .nav .menu li.login {
    margin-top: 7px;
}

.head .nav .menu li.login.vis {
    display: inline-block;
}

.head .nav .menu li.login a {
    border: 1px solid rgba(68, 68, 68, 0.6);
    border-radius: 30px;
    height: 26px;
    padding: 0;
    position: relative;
    width: 26px;
    box-sizing: content-box;
    overflow: hidden;
}

    .head .nav .menu li.login a:hover, .head .nav .menu li.login.sel a {
        background-color: #3e608c;
        border-color: #3e608c;
    }

    .head .nav .menu li.login a img {
        position: absolute;
        top: 0px;
        left: 0px;
    }

    .head .nav .menu li.login a:hover img, .head .nav .menu li.login.sel a img {
        top: -26px;
    }

.head .nav .menu li.menurid {
    float: right;
    padding: 4px 10px;
    margin: 6px 0px 0px 10px;
    border: solid 1px rgba(255,255,255,0);
    border-radius: 2px;
    display: none;
    cursor: pointer;
}

    .head .nav .menu li.menurid:hover, .head .nav .menu li.menurid.sel {
        background-color: #f7f7f7;
        border-color: #dedede;
    }

    .head .nav .menu li.menurid img {
        float: left;
    }

.head.rid .bar {
    font-size: 10pt;
}

.head .bar .container a {
    padding-top: 3px;
    padding-bottom: 3px;
}

.head.rid .nav .logo img {
    width: 130px;
}

.head.rid .nav .menu li a {
    padding-top: 12px;
    padding-bottom: 12px;
}

.head.rid .nav .menu li.login a {
    padding: 0px;
}

#menurid {
    position: fixed;
    top: 0px;
    right: 0px;
    z-index: 100000;
    width: 250px;
    background-color: #ffffff;
    border-radius: 0px 0px 2px 2px;
    box-shadow: 0px 2px 3px rgba(0,0,0,0.2);
    list-style-type: none;
    margin: 0px;
    padding: 15px 0px;
    font-size: 11pt;
}

    #menurid li a {
        padding: 4px 20px;
        display: block;
        border-top: solid 1px #ffffff;
        border-bottom: solid 3px #ffffff;
        color: #444444;
    }

        #menurid li a:hover {
            background-color: #f7f7f7;
            border-bottom-color: #3e608c;
            border-top-color: #e4e4e4;
            color: #3e608c;
        }

.main {
    margin-top: 112px;
}

    .main.rid {
        margin-top: 90px;
    }

.jscroll {
    text-align: left;
}

#pp {
    width: 100%;
    height: 0px;
    overflow: hidden;
    position: relative;
    background: url("../immagini/loader.gif") no-repeat center center transparent;
}

    #pp.load {
        background: none;
    }

    #pp .img {
        width: 100%;
        height: 100%;
        list-style-type: none;
        margin: 0px;
        padding: 0px;
        position: relative;
    }

        #pp .img li {
            position: absolute;
            top: 530px;
            left: 0px;
            z-index: 10;
            opacity: 0;
            filter: alpha(opacity=0);
            height: 100%;
        }

            #pp .img li img {
                height: 100%;
            }

            #pp .img li a {
                display: none;
            }



    #pp .data {
        position: absolute;
        top: 0px;
        left: 0px;
        width: 100%;
        height: 100%;
        text-align: center;
        z-index: 20;
        opacity: 0;
        filter: alpha(opacity=0);
    }

        #pp .data .container {
            position: relative;
            height: 100%;
        }

        #pp .data .slogan {
            background-color: rgba(62, 96, 140, 0.6);
            color: #ffffff;
            float: left;
            margin-top: 190px;
            padding: 40px 40px 30px 40px;
            text-shadow: 0px 2px 3px rgba(0, 0, 0, 0.3);
            text-transform: uppercase;
            display: inline-block;
            border-bottom: solid 10px rgba(255, 255, 255, 0);
            opacity: 0;
            filter: alpha(opacity=0);
            box-sizing: border-box;
            max-width: 60%;
        }

            #pp .data .slogan:hover {
                background-color: rgba(62, 96, 140, 0.8);
                border-bottom-color: rgba(255,255,255,0.6);
            }

            #pp .data .slogan h1 {
                font-size: 33pt;
                line-height: 33pt;
                margin: 0;
            }

            #pp .data .slogan h2 {
                font-size: 14pt;
                margin: 20px 0px 0px 0px;
                color: #dcebfe;
            }

        #pp .data .pager {
            list-style-type: none;
            margin: 0px;
            padding: 0px;
            position: absolute;
            left: 0px;
            bottom: 20px;
            z-index: 30;
        }

            #pp .data .pager li {
                display: inline-block;
                width: 7px;
                height: 7px;
                float: left;
                margin-right: 10px;
                border: solid 3px rgba(255,255,255,0);
                border-radius: 20px;
                cursor: pointer;
            }

                #pp .data .pager li.sel {
                    border-color: rgba(255,255,255,1);
                    box-shadow: 0px 0px 2px rgba(0,0,0,0.8);
                    cursor: default;
                }

                #pp .data .pager li span {
                    display: inline-block;
                    width: 100%;
                    height: 100%;
                    background-color: #ffffff;
                    border-radius: 20px;
                    box-shadow: 0px 0px 2px rgba(0,0,0,0.8);
                    float: left;
                }

                #pp .data .pager li.sel span {
                    background-color: #3e608c;
                    box-shadow: none;
                }

.login-box {
    float: right;
    background-color: #ffffff;
    box-shadow: 0px 2px 3px rgba(0,0,0,0.2);
    border-radius: 2px;
    margin-top: 90px;
    width: 300px;
    text-align: center;
}

    .login-box.menu {
        display: none;
        position: fixed;
        z-index: 100000;
        margin-top: 0px;
    }

.login-box-bkg, #menurid-bkg {
    position: fixed;
    top: 0px;
    left: 0px;
    z-index: 99999;
    width: 100%;
    height: 100%;
}

.login-box.menu.vis {
    display: block;
}

.login-box .title {
    padding: 15px 0px;
    background-color: #3e608c;
    color: #ffffff;
    display: block;
    border-radius: 2px 2px 0px 0px;
}

.login-box .cont {
    padding: 25px 30px;
    box-sizing: border-box;
}

    .login-box .cont .opt {
        list-style-type: none;
        margin: 0px 0px 15px 0px;
        padding: 0px;
    }

        .login-box .cont .opt li {
            display: inline-block;
            width: 37px;
            height: 37px;
            overflow: hidden;
            position: relative;
            cursor: pointer;
            border-radius: 40px;
            border: solid 1px rgba(68, 68, 68, 0.6);
            margin: 0px 4px;
        }

            .login-box .cont .opt li:hover, .login-box .cont .opt li.sel {
                background-color: #3e608c;
                border-color: #3e608c;
            }

            .login-box .cont .opt li.sel {
                cursor: default;
            }

            .login-box .cont .opt li img {
                position: absolute;
                top: 0px;
                left: 0px;
            }

            .login-box .cont .opt li:hover img, .login-box .cont .opt li.sel img {
                top: -37px;
            }

.login-box .code {
    display: none;
}

.login-box .box input, .box input {
    margin-bottom: 10px;
    width: 100%;
}

.login-box .box .btn {
    margin: 5px auto 10px auto;
}

.login-box .box .dic {
    display: inline-block;
}

.body {
    padding: 00px 0px 0px 0px;
}

    .body h1 {
        color: #3e608c;
        text-transform: uppercase;
        font-size: 22pt;
        margin: 0px 0px 50px 0px;
    }

.icon {
    list-style-type: none;
    margin: 0px;
    padding: 10px 0px 40px 0px;
    text-align: center;
}

    .icon li, .list .det-img .cont-img {
        display: inline-block;
        width: 180px;
        height: 180px;
        position: relative;
        margin: 0px 70px;
    }

        .icon li .img, .list .det-img .cont-img .img {
            width: 100%;
            height: 100%;
            border-radius: 250px;
            box-sizing: border-box;
            border: solid 9px #ffffff;
            box-shadow: 0px 2px 3px rgba(0,0,0,0.2);
            /*overflow: hidden;*/
            position: relative;
        }

            .icon li .img img {
                border-radius: 250px;
            }

            .icon li .img span {
                border-radius: 250px;
                display: block;
                width: 100%;
                position: absolute;
                top: 0px;
                left: 0px;
                background-color: rgba(62,96,140,0.6);
                color: #ffffff;
                text-align: center;
                opacity: 0;
                filter: alpha(opacity=0);
                text-transform: uppercase;
                font-size: 10pt;
                box-sizing: border-box;
                text-shadow: 0px 1px 2px rgba(0,0,0,0.3);
                cursor: default;
            }

        .icon li:hover .img span {
            opacity: 1;
            filter: alpha(opacity=100);
        }

        .icon li .ico {
            position: absolute;
            top: -15px;
            right: -15px;
            width: 70px;
            height: 70px;
            border-radius: 100px;
            background-color: #3e608c;
        }

.body .box {
    background-color: #ffffff;
    border: solid 1px #e3e3e3;
    margin-top: 30px;
}

    .body .box .cont {
        padding: 1px;
    }

        .body .box .cont .title {
            width: 100%;
        }

            .body .box .cont .title h2 {
                color: #3e608c;
                font-weight: 500;
                font-size: 13pt;
                padding: 15px 60px 15px 20px;
                display: inline-block;
                margin: 0px;
                border-bottom: solid 1px #e3e3e3;
            }

            .body .box .cont .title .tag {
                width: 54px;
                height: 54px;
                float: right;
                background-color: #3e608c;
                position: relative;
                overflow: hidden;
            }

                .body .box .cont .title .tag.blue {
                    background-color: #5f92d4;
                }

                .body .box .cont .title .tag div {
                    position: absolute;
                    top: 0px;
                    left: 0px;
                    width: 100%;
                    height: 100%;
                    background: url("/immagini/box-tag.png") no-repeat top left transparent;
                }

                .body .box .cont .title .tag img {
                    float: right;
                    margin: 5px 5px 0px 0px;
                }

        .body .box .cont .central {
            padding: 30px 20px;
        }

            .body .box .cont .central.not {
                padding-top: 5px;
            }

.body .left {
    width: 890px;
    float: left;
}

.body .right {
    width: 465px;
    float: right;
}

.news {
    list-style-type: none;
    margin: 0px;
    padding: 0px;
    font-size: 10pt;
}

    .news li a {
        display: block;
    }

    .news li {
        margin-bottom: 10px;
    }

        .news li a .data {
            color: #bbbbbb;
            display: block;
            margin-bottom: 6px;
        }

        .news li a .img {
            width: 165px;
            max-height: 90px;
            overflow: hidden;
            float: left;
            border-bottom: solid 4px rgba(62,96,140,0);
        }

        .news li a:hover .img {
            border-bottom-color: rgba(62,96,140,1);
        }

        .news li a .img img {
            width: 100%;
        }

        .news li a:hover .img img {
            width: 110%;
            margin-top: -5%;
            margin-left: -5%;
        }

        .news li a .text {
            float: right;
            width: 230px;
            color: #444444;
        }

            .news li a .text h3 {
                font-weight: 500;
                margin: 0px 0px 5px 0px;
                font-size: 10pt;
                color: #3e608c;
            }

.list {
    list-style-type: none;
    margin: 0px;
    padding: 0px;
}

    .list > li {
        margin-bottom: 50px;
    }

    .list .box {
        float: right;
        width: 80%;
        margin-top: 0px;
    }

        .list .box .central {
            margin-top: -30px;
        }

            .list .box .central h3, h3 {
                margin: 0px;
                text-transform: uppercase;
                font-weight: 700;
                font-size: 15pt;
                color: #3e608c;
            }

            .list .box .central h4, h4 {
                margin: 10px 0px 0px 0px;
                font-weight: 500;
                color: #3e608c;
            }

    .list .det-img {
        float: left;
        width: 230px;
        text-align: center;
    }

        .list .det-img .cont-img {
            margin: 0px auto;
        }

            .list .det-img .cont-img img {
                border-radius: 50%;
                width: 100%;
                transition: all 0.8s ease-out;
                -moz-transition: all 0.8s ease-out;
                -webkit-transition: all 0.8s ease-out;
                -o-transition: all 0.8s ease-out;
            }

    .list li:hover .det-img .cont-img .img img {
        /*width: 110%;
        margin: -5%;*/
        -moz-transform: scale(1.1);
        -ms-transform: scale(1.1);
        -o-transform: scale(1.1);
        -webkit-transform: scale(1.1);
        border-radius: 50%;
        transform: scale(1.1);
    }

    .list .det-img .det a {
        display: inline-block;
        margin-top: 20px;
        font-weight: 700;
        color: #ffffff;
        text-transform: uppercase;
        padding: 4px 25px;
        border-radius: 3px;
        background-color: #3e608c;
        font-size: 11pt;
    }

.box .det {
    margin-bottom: 9px;
}

    .box .det a {
        display: inline-block;
        margin: 10px;
        font-weight: 700;
        color: #ffffff;
        text-transform: uppercase;
        padding: 4px 25px;
        border-radius: 3px;
        background-color: #3e608c;
        font-size: 11pt;
    }

.list .det-img .det a:hover {
    background-color: #527098;
}

.list .box.info .central {
    padding-bottom: 0px;
}

    .list .box.info .central .points {
        list-style-type: none;
        margin: 0px;
        padding: 0px;
    }

        .list .box.info .central .points > li {
            margin-bottom: 30px;
        }

        .list .box.info .central .points h3 {
            font-size: 15pt;
        }

        .list .box.info .central .points p {
            margin: 10px 0px 0px 0px;
        }

        .list .box.info .central .points > li ul {
            list-style-image: url("/immagini/li.png");
            padding-left: 17px;
        }

.program h2 {
    color: #3e608c;
    font-size: 22pt;
    text-transform: uppercase;
    margin: 70px 0px 100px 0px;
    text-align: center;
}

.program .pt {
    list-style-type: none;
    margin: 0px;
    padding: 0px;
}

    .program .pt li {
        border: solid 1px #e3e3e3;
        background-color: #ffffff;
        width: 47%;
        margin-bottom: 70px;
    }

        .program .pt li .boxc {
            padding: 50px 30px 30px 30px;
            position: relative;
        }

        .program .pt li.l {
            float: left;
        }

        .program .pt li.r {
            float: right;
        }

        .program .pt li .boxc .num {
            height: 1px;
            width: 100%;
            text-align: center;
            position: absolute;
            top: -30px;
            left: 0px;
        }

            .program .pt li .boxc .num span {
                background-color: #3e608c;
                border-radius: 60px;
                color: #ffffff;
                display: inline-block;
                font-family: "Merriweather Sans",sans-serif;
                font-size: 25pt;
                font-weight: 700;
                height: 55px;
                line-height: 55px;
                width: 55px;
            }

        .program .pt li .boxc p {
            margin: 0px;
        }

        .program .pt li .boxc .data {
            height: 250px;
            overflow: auto;
        }

            .program .pt li .boxc .data h3 {
                color: #3e608c;
                font-size: 15pt;
                margin: 0px 0px 20px 0px;
                text-transform: uppercase;
            }

            .program .pt li .boxc .data .section {
                margin-bottom: 20px;
            }

                .program .pt li .boxc .data .section h4 {
                    font-size: 11pt;
                    margin: 0 0 3px;
                    padding-left: 25px;
                    text-transform: uppercase;
                    background-repeat: no-repeat;
                    background-position: left center;
                    background-color: transparent;
                }

                .program .pt li .boxc .data .section.t h4 {
                    background-image: url("../immagini/boxc-title-temi.png");
                }

                .program .pt li .boxc .data .section.i h4 {
                    background-image: url("../immagini/boxc-title-indice.png");
                }

            .program .pt li .boxc .data ul {
                margin: 10px 0px;
            }

                .program .pt li .boxc .data ul li {
                    border: none;
                    background: transparent;
                    margin-bottom: auto;
                }

.customers {
    list-style-type: none;
    margin: 0px;
    padding: 0px;
    text-align: center;
}

.body .customers li {
    display: inline-block;
    width: 30%;
    margin: 90px 20px 40px 20px;
}

.customers .box .title {
    position: relative;
}

    .customers .box .title .logo {
        position: absolute;
        top: -95px;
        left: 0px;
        width: 100%;
        z-index: 20;
    }

        .customers .box .title .logo div {
            width: 185px;
            height: 185px;
            border-radius: 200px;
            background-color: #ffffff;
            box-shadow: 0px 2px 3px rgba(0,0,0,0.2);
            margin: auto;
            border: solid 8px #ffffff;
            box-sizing: border-box;
            overflow: hidden;
        }

            .customers .box .title .logo div img {
                width: 100%;
            }

.customers .box:hover .title .logo div img {
    width: 110%;
    margin: -5%;
}

.customers .box .cont .central {
    margin-top: 60px;
}

    .customers .box .cont .central h2 {
        color: #3e608c;
        font-size: 20pt;
        margin: 0 0 30px;
        text-transform: uppercase;
        height: 70px;
        overflow: hidden;
    }


.footer {
    background-color: #d1d1d1;
}

    .footer .container {
        padding-top: 60px;
        padding-bottom: 60px;
        font-size: 10pt;
    }

    .footer a {
        color: #777777;
    }

    .footer .left, .footer .left ul {
        list-style-type: none;
        margin: 0px;
        padding: 0px;
        float: left;
    }

        .footer .left ul {
            float: none;
        }

        .footer .left > li {
            margin-right: 90px;
            display: inline-block;
            float: left;
        }

        .footer .left h6 {
            text-transform: uppercase;
            color: #3e608c;
            margin: 0px 0px 20px 0px;
            font-size: 9pt;
        }

    .footer .right {
        float: right;
    }




.clear {
    clear: both;
}

.btn {
    font-size: 10.5pt;
    text-transform: uppercase;
    background-color: #3e608c;
    color: #ffffff;
    border-radius: 50px;
    padding: 4px 45px;
    display: inline-block;
}

    .btn[disabled] {
        background-color: gray;
    }

    .btn:hover {
        background-color: #527098;
        color: #ffffff;
        cursor: pointer;
    }

        .btn:hover[disabled] {
            background-color: gray;
        }


.dic {
    font-size: 8pt;
}

    .dic:hover {
        color: navy;
        cursor: pointer;
    }

#msgbkg {
    position: fixed;
    top: 0px;
    left: 0px;
    width: 100%;
    height: 100%;
    z-index: 1000000;
    background-color: rgba(0,0,0,0.7);
}

#msgcont {
    position: fixed;
    top: 0px;
    left: 0px;
    max-width: 90%;
    min-width:400px;
    box-sizing: border-box;
    border-radius: 3px;
    box-shadow: 0px 2px 3px rgba(0,0,0,0.5);
    z-index: 1000001;
    padding: 55px 20px 20px 20px;
    background: url("../immagini/alert-logo.png") no-repeat center 10px #ffffff;
}

h1, h2, h3, h4, h5, h6, .bold {
    font-family: 'Merriweather Sans', sans-serif;
    font-weight: 800;
}

a {
    color: #3e608c;
    text-decoration: none;
}

    a:hover {
        color: #527098;
    }

    a img {
        border: 0px;
    }

b {
    font-weight: 300;
    color: #3e608c;
}

input[type=text], input[type=password], input[type=date], input[type=email], textarea, select {
    font-family: 'Open Sans', sans-serif;
    font-weight: 300;
    font-size: 11pt;
    color: #444444;
    border: solid 1px #d1d1d1;
    border-radius: 10px;
    padding: 4px 10px;
    box-sizing: border-box;
    outline: none;
}

    input[type=text]:focus, input[type=password]:focus, input[type=date]:focus, input[type=email]:focus, textarea:focus, select:focus {
        box-shadow: 0px 0px 5px #3e608c;
    }

a, .tran, .tran *, .btn, input[type=text], input[type=password], input[type=date], input[type=email], textarea, select {
    transition: all 0.3s ease-out;
    -moz-transition: all 0.3s ease-out;
    -webkit-transition: all 0.3s ease-out;
    -o-transition: all 0.3s ease-out;
}

.err, input.ng-invalid {
    border: solid 1px #ff5600;
    box-shadow: 0px 0px 5px #ff5600;
}

.container.minContainer {
    background-color: white;
    padding: 50px 0px 70px 0px;
}


.min-center {
    width: 60%;
    margin: auto;
}
