﻿html, body {
    width: 100%;
    height: 100%;
    margin: 0;
    border: 0;
    padding: 0;
    background: inherit;
}

.gradient {
    position: fixed;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background: linear-gradient(15deg, rgba(0,129,191,1) 0%, rgba(0,93,153,1) 100%);
    z-index: 0;
}

.container {
    width: 100%;
    min-height: 100vh;
    margin: 0;
    border: 0;
    padding: 0;
    display: flex;
    text-align: center;
    justify-content: center;
}

.formcontainer {
    position: relative;
    width: 100%;
    max-width: 440px;
    min-height: 440px;
    background: #fff;
    background: linear-gradient(-15deg, rgba(235,235,235,1) 0%, rgba(255,255,255,1) 100%);
    color: #494949;
    margin: auto;
    padding: 25px 15px 25px 15px;
    border-radius: 15px;
    text-align: center;
    filter: drop-shadow(0 0 20px rgba(0, 0, 0, 0.5));
}

.formfooter {
    position: absolute;
    width: 100%;
    text-align: center;
    font-size: 11px;
    bottom: -25px;
    left: 0;
    color: #fff;
}


sup {
    vertical-align: super;
    font-size: smaller;
}

hr {
    width: auto;
    height: 36px;
    display: block;
    padding: 0;
    border: 0;
    margin: 0 0 0 0;
    background: url('/img/separator.png') no-repeat center top;
    background-size:contain;
}


.hero__scroll {
    position: relative;
    display: block;
    width: 100%;
    margin: 0 auto 0 auto;
    text-align: center;
    cursor: pointer;
    font-size: 13px;
    font-weight: 400;
    color: rgba(255,255,255,1);
    filter: drop-shadow(0 0 6px rgba(0, 0, 0, 0.8));
}

    .hero__scroll .chevron {
        display: block;
        -webkit-animation: pulse 2s infinite;
        animation: pulse 2s infinite;
        color: #ffffff;
    }

@-webkit-keyframes pulse {
    0% {
        -webkit-transform: translate(0, 0);
        transform: translate(0, 0);
    }

    50% {
        -webkit-transform: translate(0, 10px);
        transform: translate(0, 10px);
    }

    100% {
        -webkit-transform: translate(0, 0);
        transform: translate(0, 0);
    }
}

@keyframes pulse {
    0% {
        -webkit-transform: translate(0, 0);
        transform: translate(0, 0);
    }

    50% {
        -webkit-transform: translate(0, 10px);
        transform: translate(0, 10px);
    }

    100% {
        -webkit-transform: translate(0, 0);
        transform: translate(0, 0);
    }
}

.chevron::before {
    border-style: solid;
    border-width: 0.33em 0.33em 0 0;
    content: '';
    display: inline-block;
    height: 30px;
    position: relative;
    -webkit-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    transform: rotate(-45deg);
    vertical-align: top;
    width: 30px;
}

.chevron.right:before {
    left: 0;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
}

.chevron.bottom:before {
    top: 0;
    -webkit-transform: rotate(135deg);
    -ms-transform: rotate(135deg);
    transform: rotate(135deg);
}

.chevron.left:before {
    left: 0.25em;
    -webkit-transform: rotate(-135deg);
    -ms-transform: rotate(-135deg);
    transform: rotate(-135deg);
}

.chevron {
}


.wa-jump {
    position: fixed;
    width: 72px;
    height: 96px;
    bottom: 0;
    right: 32px;
    z-index: 999999;
}

    .wa-jump img {
        border: 0;
    }


    .wa-jump .pulse {
        -webkit-animation: pulse 2s infinite;
        animation: pulse 2s infinite;
    }

@-webkit-keyframes pulse {
    0% {
        -webkit-transform: translate(0, 0);
        transform: translate(0, 0);
        width: 64px;
        height: 64px;
        filter: drop-shadow(0 0 3px rgba(0, 0, 0,0.5));
    }

    50% {
        -webkit-transform: translate(0, -10px);
        transform: translate(0, -10px);
        width: 72px;
        height: 72px;
        filter: drop-shadow(0 10px 6px rgba(0, 0, 0,0.66));
    }

    100% {
        -webkit-transform: translate(0, 0);
        transform: translate(0, 0);
        width: 64px;
        height: 64px;
        filter: drop-shadow(0 0 3px rgba(0, 0, 0,0.5));
    }
}

@keyframes pulse {
    0% {
        -webkit-transform: translate(0, 0);
        transform: translate(0, 0);
        width: 64px;
        height: 64px;
        filter: drop-shadow(0 0 3px rgba(0, 0, 0,0.5));
    }

    50% {
        -webkit-transform: translate(0, -10px);
        transform: translate(0, -10px);
        width: 72px;
        height: 72px;
        filter: drop-shadow(0 10px 6px rgba(0, 0, 0,0.66));
    }

    100% {
        -webkit-transform: translate(0, 0);
        transform: translate(0, 0);
        width: 64px;
        height: 64px;
        filter: drop-shadow(0 0 3px rgba(0, 0, 0,0.5));
    }
}



.FaqBox {
    display: block;
    position: relative;
    width: 100%;
    max-width: 900px;
    margin: 25px auto 50px auto;
}

    .FaqBox ul {
        width: 100%;
        margin: 0;
        padding: 0;
        list-style: none;
    }

    .FaqBox li {
        width: 100%;
        display: block;
        position: relative;
        margin: 15px 0;
        padding: 15px;
        background: #fff;
        text-align: left;
        border-radius: 5px;
        filter: drop-shadow(2px 2px 6px rgba(0, 0, 0, 0.33));
    }

        .FaqBox li .linkOpen, .FaqBox li .linkClose {
            width: 32px;
            height: 32px;
            display: block;
            float: right;
            margin: -5px -5px 0 10px;
        }

            .FaqBox li .linkOpen img, .FaqBox li .linkClose img {
                width: 32px;
                height: 32px;
                border: 0;
            }


        .FaqBox li .domanda {
            display: block;
            margin: 0 40px 0 0;
            font-size: 24px;
            font-weight: 600;
            color: rgba(0,93,153,1);
            font-family: "Lato", sans-serif;
            font-style:italic;
        }

        .FaqBox li .risposta {
            display: block;
            margin: 10px 40px 10px 10px;
            font-size: 17px;
            font-weight: 400;
            line-height: 1.5;
            color: #999;
        }

            .FaqBox li .risposta img {
                width: 40px;
                height: 40px;
                border: 0;
                float: right;
                margin: 0 0 10px 10px;
            }



.Sx, .sx {text-align: left;}
.Dx, .dx {text-align: right;}
.Cn, .cn {text-align: center;}
.clear, .cb {clear: both;}
.clearL, .cl {clear: left;}
.clearR, .cr {clear: right;}
.nw {white-space: nowrap}



.IconSdx {
    width: 24px;
    height: 24px;
    border: 0;
    margin: 0 0 0 4px;
    float: right;
}

.IconSsx {
    width: 24px;
    height: 24px;
    border: 0;
    margin: 0 4px 0 0;
    float: left;
}

.IconS, .IcoS {
    width: 24px;
    height: 24px;
    border: 0;
    display: inline-block;
    overflow: hidden;
}
.IconM, .IcoM {
    width: 30px;
    height: 30px;
    overflow: hidden;
    margin: 1px;
    display: inline-block;
}

.IconM img, .IcoM img {
    width: 30px;
    height: 30px;
}

.IconL, .IcoL {
    width: 40px;
    height: 40px;
    margin: 4px;
    overflow: hidden;
    display: inline-block;
}

.IconXs {
    width: 16px;
    height: 16px;
    border: 0;
    display: block;
    overflow: hidden;
    float: left;
    margin: 0 0 -4px 0;
}


.Console {
    display: block;
    background: #333;
    color: chartreuse;
    padding: 10px;
    border-radius: 10px;
    font-family: Consolas, sans-serif;
}
.spacer {
    display: block;
    min-height:32px;
    min-width:32px;
}


.row {
    min-height: 24px;
    display: block;
}

    .row:before, .row:after {
        display: table;
        content: " ";
    }

    .row:after {
        clear: both;
    }

    .row:before, .row:after {
        display: table;
        content: " ";
    }

    .row:after {
        clear: both;
    }

.col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11 {
    float: left;
}

.col-md-1 {
    width: 8.333333333333332%;
}

.col-md-2 {
    width: 16.666666666666664%;
}

.col-md-3 {
    width: 25%;
}

.col-md-4 {
    width: 33.33333333333333%;
}

.col-md-5 {
    width: 41.66666666666667%;
}

.col-md-6 {
    width: 50%;
}

.col-md-7 {
    width: 58.333333333333336%;
}

.col-md-8 {
    width: 66.66666666666666%;
}

.col-md-9 {
    width: 75%;
}

.col-md-10 {
    width: 83.33333333333334%;
}

.col-md-11 {
    width: 91.66666666666666%;
}

.col-md-12 {
    width: 100%;
}

.col-content2 {
    display: block;
    background: #eee;
    border-radius: 8px;
    padding: 6px;
    margin: 6px;
    min-height: 48px;
}

.col-content {
    display: block;
    background: #fff;
    border-radius: 8px;
    padding: 6px;
    margin: 6px;
}

.col-inner {
    display: block;
    padding: 0 6px;
}

.col-inner-bt {
    display: block;
    padding: 20px 6px 0 6px;
    text-align:center;
}

.CellaRed {
    display: block;
    position: relative;
    width: calc(100% - 12px);
    padding: 5px;
    color: rgba(0, 0, 0, 0.75);
    background: rgba(255, 255, 255, 0.66);
    margin: 0;
    font-family: "Lato", sans-serif;
    font-size: 14px;
    min-height: 20px;
    border-radius: 5px;
    -webkit-transition: all 0.25s;
    -moz-transition: all 0.25s;
    transition: all 0.25s;
    border: 1px solid rgba(207, 20, 43, 1);
}


.col-p {
    padding: 3px;
    display: block;
}

.col-p p {
    padding:0 0 3px 3px;
    margin:0;
    font-size:12px;
}

.Cella100 {
    display: block;
    position: relative;
    width: calc(100% - 7px);
    padding: 5px 0 5px 5px;
    color: #999;
    background: rgba(255, 255, 255, 0.66);
    margin: 0;
    border: 1px solid #bbb;
    font-size: 14px;
    line-height:20px;
    min-height: 20px;
    border-radius: 4px;
    -webkit-transition: all 0.25s;
    -moz-transition: all 0.25s;
    transition: all 0.25s;
}

    .Cella100:hover {
        border: 1px solid #f7a523;
    }

.Cella100s {
    display: block;
    position: relative;
    width: 100%;
    min-height: 20px;
    line-height: 16px;
    padding: 2px 0;
    color: rgba(0, 0, 0, 0.75);
    background: rgba(255, 255, 255, 0.66);
    margin: 2px auto;
    border: 0;
    text-align: left;
    font-size: 11px;
}

    .Cella100s:hover {
        box-shadow: 0 0 8px rgba(0,0,0,0.33);
    }

.Cella100l {
    display: block;
    position: relative;
    width: calc(100% - 12px);
    padding: 10px 0 10px 10px;
    color: #247a93;
    background: #fff;
    margin: 8px 0 8px 0;
    border: 1px solid #ccc;
    font-size: 18px;
    line-height: 30px;
    min-height: 52px;
    font-family:"Lato", sans-serif;
    border-radius: 8px;
    -webkit-transition: all 0.25s;
    -moz-transition: all 0.25s;
    transition: all 0.25s;
}

    .Cella100l:hover {
        border: 1px solid #f7a523;
    }


.DropDownL {
    display: block;
    position: relative;
    width: calc(100% - 12px);
    padding: 0;
    color: #247a93;
    background: #fff;
    margin: 8px 0 8px 0;
    border: 1px solid #ccc;
    min-height: 52px;
    overflow: hidden;
    font-family: "Lato", sans-serif;
    border-radius: 8px;
    border-bottom-right-radius: 0;
    -webkit-transition: all 0.25s;
    -moz-transition: all 0.25s;
    transition: all 0.25s;
}

    .DropDownL:hover {
        border: 1px solid #f7a523;
    }

    .DropDownL select {
        width: calc(100% + 30px);
        color: #247a93;
        font-family: "Lato", sans-serif;
        font-size: 18px;
        height: 54px;
        line-height: 52px;
        border: 0;
        margin: -1px -1px -1px -1px;
        padding: 0 5px;
        z-index: 10;
        background: url('/img/down.png') no-repeat;
        background-position: calc(100% - 31px) 38px;
    }


    .Cella100lDropDown:hover {
        box-shadow: 0 0 8px rgba(0,0,0,0.33);
    }

.DropDown {
    display: block;
    position: relative;
    width: calc(100% - 2px);
    padding: 0;
    background: rgba(255, 255, 255, 0.66);
    margin: 0;
    border: 1px solid #bbb;
    height: 30px;
    border-radius: 4px;
    -webkit-transition: all 0.25s;
    -moz-transition: all 0.25s;
    transition: all 0.25s;
    overflow: hidden;
}

    .DropDown:hover {
        border: 1px solid #f7a523;
    }

    .DropDown select {
        width: calc(100% + 30px);
        height: 32px;
        line-height: 32px;
        font-weight: 600;
        font-size: 14px;
        min-height: 20px;
        border: 0;
        margin: -1px -1px -1px -1px;
        color: #999;
        padding: 0 5px;
        z-index: 10;
        background: url('/img/down.png') no-repeat;
        background-position: calc(100% - 30px) center;
    }

.Radio {

}

    .Radio input {
        display: inline-block;
        height: 24px;
        width: 24px;
    }

    .Radio label {
        display:inline-block;
        height:32px;
        line-height:32px;
        padding:0 5px 0 5px;
        font-family: "Lato", sans-serif;
        font-weight:600;
        font-size:16px;
    }

.Cella100B {
    line-height: 40px;
    font-size: 16px;
    font-family: "Lato", sans-serif;
    min-height: 40px;
    border: 0;
    border-bottom: 2px solid rgb(101,94,82);
    margin: 4px 0;
    color: #000;
    width: 100%;
    -webkit-transition: all 0.5s;
    -moz-transition: all 0.5s;
    transition: all 0.5s;
}

    .Cella100B:active, .Cella100B:focus {
        border-bottom: 2px solid rgb(101,94,82);
    }


.MaxW50 {
    max-width: 50px;
}

.MaxW100 {
    max-width: 100px;
}

.MaxW150 {
    max-width: 150px;
}

.MaxW200 {
    max-width: 200px;
}


.Pagine {
    color: #fff;
    margin: 0;
    padding: 0;
}

    .Pagine span {
        font-size: 15px;
        line-height: 20px;
        font-weight: bold;
        text-align: center;
        min-width: 25px;
        height: 20px;
        display: block;
        color: #fff;
        background: #00b53f;
        border-radius: 4px;
        text-decoration: none;
        margin: 0;
        padding: 0;
    }

    .Pagine a, .Pagine a:link {
        font-size: 15px;
        line-height: 20px;
        font-weight: bold;
        text-align: center;
        min-width: 25px;
        height: 20px;
        display: block;
        background: #655e52;
        border-radius: 4px;
        color: #fff;
        text-decoration: none;
        margin: 0;
        padding: 0;
    }

        .Pagine a:hover {
            font-size: 15px;
            line-height: 20px;
            font-weight: 600;
            text-align: center;
            min-width: 25px;
            height: 20px;
            display: block;
            background: #ccc;
            color: #655e52;
            border-radius: 4px;
            text-decoration: none;
            margin: 0;
            padding: 0;
        }

.no-print {
    display: block;
}

.PulsanteS {
    display: inline-block;
    position: relative;
    min-width: 90px;
    height: 28px;
    margin: 2px;
    font-family: "Lato", sans-serif;
}

    .PulsanteS a {
        display: inline-block;
        min-width: 60px;
        padding: 8px;
        text-align: center;
        font-size: 11px;
        text-transform: uppercase;
        line-height: 12px;
        font-weight: 600;
        color: #fff;
        background: repeat-x;
        background-image: url('/img/Bk-Pulsante.png');
        background-size: auto 56px;
        background-position: top left;
        text-decoration: none;
        border-radius: 4px;
        -webkit-transition: all 0.25s;
        -moz-transition: all 0.25s;
        transition: all 0.25s;
    }

        .PulsanteS a:hover {
            text-decoration: none;
            background-position: bottom left;
            color: #fff;
        }

.Pulsante, .forward, .backward {
    display: flex;
    align-content:center;
    align-items:center;
    justify-content:center;
    text-align:center;
    position: relative;
    min-width: 120px;
    font-family: "Lato", sans-serif;
    letter-spacing: 1px;
}

    .Pulsante a, .forward a, .Pulsante a:visited, .forward a:visited {
        display: block;
        margin: 5px;
        min-width: 90px;
        font-size: 13px;
        line-height: 16px;
        padding: 12px;
        font-weight: 600;
        text-align: center;
        filter: drop-shadow(0 0 0 rgba(0, 0, 0, 0));
        border-radius: 6px;
        color: #ffffff;
        text-decoration: none;
        text-transform: uppercase;
        letter-spacing: 2px;
        background: #247a93;
        -webkit-transition: all 0.25s;
        -moz-transition: all 0.25s;
        transition: all 0.25s;
    }

        .Pulsante a:hover, .forward a:hover {
            margin: 3px 5px 7px 5px;
            background: #5badc7;
            filter: drop-shadow(0 2px 5px rgba(0, 0, 0, 0.8));
            color: #fff;
            text-decoration: none;
        }

    .backward a {
        display: block;
        min-width: 90px;
        font-size: 13px;
        line-height: 16px;
        padding: 12px;
        font-weight: 600;
        text-decoration: none;
        text-align: center;
        color: #fff;
        background: rgb(1,132,144) repeat-x;
        background-image: url('/img/bk-Pulsante-off.png');
        background-size: auto 80px;
        background-position: top left;
        box-shadow: 0 0 20px rgba(1,132,144,0.3);
        -webkit-transition: all 0.25s;
        -moz-transition: all 0.25s;
        transition: all 0.25s;
    }

        .backward a:hover {
            background-position: bottom left;
            color:#fff;
        }


input[type=file], input[type=file] + input {
    display: block;
    border: 0;
    font-size: 13px;
    color: #666;
    height: 32px;
    padding: 0;
    max-width: 100%;
    overflow: hidden;
    font-family: "Lato", sans-serif;
    border-radius: 4px;
    -webkit-transition: all 0.25s;
    -moz-transition: all 0.25s;
    transition: all 0.25s;
}


::-webkit-file-upload-button {
    font-family: "Lato", sans-serif;
    display: block;
    min-width: 90px;
    height: 30px;
    border: none;
    margin: 2px 0;
    line-height: 28px;
    font-size: 14px;
    font-weight: 600;
    color: #fff;
    background: rgb(255,255,255) repeat-x;
    background-image: url('/img/bk-Pulsante.png');
    background-size: auto 60px;
    background-position: top left;
    text-decoration: none;
    border-radius: 4px;
    -webkit-transition: all 0.25s;
    -moz-transition: all 0.25s;
    transition: all 0.25s;
    ;
}

    ::-webkit-file-upload-button:hover {
        text-decoration: none;
        background-position: bottom left;
        color: #fff;
    }

::-ms-browse:hover {
    background-position: bottom left;
    background: #000;
    color: #fc0;
}

::-ms-browse {
    font-family: "Lato", sans-serif;
    display: block;
    min-width: 90px;
    height: 32px;
    border: none;
    font-size: 14px;
    font-weight: 600;
    text-align: center;
    padding: 0 8px 0 8px;
    color: #fff;
    text-decoration: none;
    line-height: 32px;
    background: #000;
    border-radius: 4px;
    -webkit-transition: all 0.25s;
    -moz-transition: all 0.25s;
    transition: all 0.25s;
}

input[type=file]::-ms-value {
    border: none;
}


.CheckBox input {
    width: 24px;
    height: 24px;
    border: 1px solid #eee;
    color: #409fff;
    background: #66cc33;
}

.highlight {
    text-decoration: none;
    color: #000;
    background: #0f0;
    font-weight: bold;
}

.velina {
    width: 100%;
    height: 100%;
    position: fixed;
    display: block;
    top: 0;
    left: 0;
    background-color: rgba(0,0,0, 0.5);
    z-index: 1000;
    text-align: center;
}


.MsgBox {
    position: relative;
    width:80%;
    max-width: 600px;
    margin:50px auto;
    z-index: 1001;
    background: #fff;
    box-shadow: rgba(0,0,0, 0.5) 5px 5px 30px;
    border-radius:0;

}

.MsgBoxContent {
    padding: 10px 5px 5px 10px;
    min-height: 40px;
    font-size: 15px;
    line-height: 20px;
    color: #333;
    text-align: left;
    display: block;
    font-family: "Lato", sans-serif;
    border-radius: 0;
}

    .MsgBoxContent ul {
        margin: 5px 0 5px 30px;
    }

.MsgBoxTitle {
    padding: 10px;
    font-size: 20px;
    line-height: 20px;
    text-align: center;
    border-radius: 0;
}

.MsgBox .info {
    background: #1c8e17;
    color: #fff;
}

.MsgBox .allert {
    background: #ffdb00;
    color: #000;
}

.MsgBox .error {
    background: #e34f4f;
    color: #fff;
}

.MsgBox .close {
    position: absolute;
    width: 46px;
    height: 46px;
    top: -23px;
    right: -23px;
    border: 0;
}


@media (max-width: 760px) {


    .Pulsante, .forward, .backward {
        min-width: 90px;
        height: 32px;
    }

        .Pulsante a, .forward a {

            height: 32px;
            font-size: 13px;
            padding: 0 8px 0 8px;
            line-height: 32px;
            background-size: auto 64px;
        }



}


@media (max-width: 500px) {
    .formcontainer {
        position: fixed;
        width: 100vw;
        height: 100vh;
        max-width: 100vw;
        min-height: 100vh;
        background: #fff;
        margin: auto;
        padding: 25px 15px 25px 15px;
        border-radius: 0;
        text-align: center;
        filter: none;
    }

    .formfooter {
        position: relative;
        width: 100%;
        text-align: center;
        font-size: 11px;
        bottom: unset;
        left: unset;
        color: #999;
    }
}






@media print {
    .no-print {
        display: none;
    }

    body {
        background: #fff;
        width: 840px;
        height: 1188px;
        position: relative;
    }

}






   