body {
    margin: 0;
    color: #111;
    font-family: 'Source Sans Pro', sans-serif;
    background-image: url(../images/mc_background.jpeg);
    background-position: center center;
    background-repeat:  no-repeat;
    background-attachment: fixed;
    background-size:  cover;
    width:100%;
    height:100vh;  /* responsive height */
    /* transition: height 999999s; */

    transition: height 1000000s ease;
    -webkit-transition: height 1000000s ease;
    -moz-transition: height 1000000s ease;
    -o-transition: height 1000000s ease;
}

body p {
    font-size: 1.5em;
    text-align: justify;
    text-justify: inter-word;
}

/* .info-partecipazione p {
    font-size: 1.2em;
} */

body h1 {
    font-size: 2.4em;
}
.main > h1 {
    letter-spacing: 0.03em;
    margin: 2px;
    padding: 12px 0 12px 0;
}
body h2 {
    font-size: 1.9em;
}
body h3 {
    font-size: 1.5em;
}
h2.subtitle-custom {
    color: teal;
    font-size: 1.55em;
    margin-top: -25px;
}

.fieldWrapper label, .fieldWrapper p {
    font-size: 1.2em;
}

ol li {
    font-size: 1.25em;
}

.fieldWrapper.size {
    margin-left: 20px;
    float: left;
}
.errorlist{
    background-color: coral;
    margin: 0;
}
.fieldWrapper.fascia_oraria {
    clear: both;
}
#info-img{
    width:30px;
}

.logo {
    width: 80%;
}

.logo > a {
    width: 100%;
}

.logo > a > img {
    width: 370px;
}

.logo > a > h3 {
    font-size: 23px;
    line-height: 32px;
    /*margin-left: 20px;*/ /*Use it if header little logo is removed*/
    /*display: none;*/
}

.main {
    padding: 12px 25px 12px 25px;
    background-color: rgba(255, 255, 255, 0.92);
    margin: 0 auto;
    margin-top: -70px;
    position: relative; 
    width: 80%;
    transition: margin-top 600ms cubic-bezier(0.17, 0.04, 0.03, 0.94);
    border-radius: 4px;
    text-align: center;
}

.submain {
    padding: 12px 25px 12px 25px;
    background-color: rgba(255, 255, 255, 0.92);
    margin: 0 auto;
    margin-top: 25px;
    position: relative; 
    width: 80%;
    transition: margin-top 600ms cubic-bezier(0.17, 0.04, 0.03, 0.94);
    border-radius: 4px
}

.subscribe-btn {
    float:right;
}

#construction {
    display: none;
    background-color: red;
    color: burlywood;
    padding: 5px;
}

.col-sm-12 p {
    margin-top: 0px;
    margin-bottom: 12px;
}
#percorso {
    min-width: 350px;
}

#sponsors #raffeisen {
    height: 68px;
}

#sponsors #altri-sponsors {
    padding: 0px 30px;
}

#altri-sponsors {
    margin-top:20px;
    height: 55px;
}

#sponsors, #social, footer {
    padding: 12px;
    margin: 0 auto;
    margin-top: 25px;
    background-color: rgba(255, 255, 255, 0.92);
    width: 80%;
    border-radius: 4px;
    text-align: center;
}

#sponsors {
    padding-bottom: 30px;
}

#social {
    padding-bottom: 30px;
}
#social img {
    height: 50px;
    padding: 0 20px;
}

footer {
    margin-bottom: 25px;
}



.responsive_img {
    width: 80%;
    height: auto;
}
/* table, th, td {
  border: 1px solid;
} */
table td {
    width: 30%;
    overflow: hidden;
    display: inline-block;
    white-space: nowrap;
}


input[type=text], input[type=email], textarea {
    width: 100%;
    padding: 12px 20px;
    margin: 8px 0;
    display: inline-block;
    border: 1px solid #ccc;
    border-radius: 4px;
    box-sizing: border-box;
}

/* hide short button text */
.shrt-text { display: none; }

button[type=submit] {
    background-color: #4CAF50;
    color: white;
    font-size: 1.3em;
    padding: 9px 18px;
    margin: 8px 0;
    border: none;
    border-radius: 4px;
    cursor: pointer;
}

button[type=submit]:hover {
    background-color: #45a049;
}

hr {
    background-color: #ccc;
    border: 0;
    height: 1px;
    background-image: linear-gradient(to right, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.75), rgba(0, 0, 0, 0));

}




#legenda {
    min-width: 500px;
}


.page_elem {
    margin-bottom: 40px;
    text-align: justify;
    text-justify: inter-word;

}

/*
.page_elem > post-content {
    width: 5%;
}
*/

.page_elem > .post-thumb > img {
    padding: 5px;
    border: solid 1pX #ccc;
    max-width: 800px;
}

img#percorso {
    width: 95%;
}

.main > .page_elem > p {
    margin: 0;
    margin-bottom:12px;
}

ol {
    display: block;
    padding: 0 0 0 26px;
    list-style: none;
    overflow: hidden;
    counter-reset: numList;
    margin:0;
}
ol li {
    position: relative;
    margin-bottom:10px;
    padding-left:30px;
}
ol li:before {
    counter-increment: numList;
    content: counter(numList);

    float: left;
    position: absolute;
    left: -20px;

    
    font: bold 17px sans-serif;
    text-align: center;
    color: black;
    line-height: 28px;

    width: 30px; height: 30px;
    background: gold;

    -moz-border-radius: 999px;
    border-radius: 999px;

    border: 2px solid black;

}

/*
.main > .page_elem:nth-child(even) .post-content {
    width: 80%;
}

.main > .page_elem:nth-child(odd) .post-content {
    text-align: justify;
    width: 40%;
    float: right;
}
*/

/* IT Worked but not used anymore and messed with other new elements (.logo-maralonga-home)
.main > .page_elem:nth-child(even) img {
    margin-right: 30px;
    float: left;
    clear: left;
    clear: right;
}

.main > .page_elem:nth-child(odd) img {
    margin-left: 30px;
    float: right;
    clear: right;
    clear:left;
}
*/

.clear{
    clear:both;
}


/*trying to fix list bug - number float anomaly
ol {
    padding: 20px;
    list-style-type: decimal;

}*/

.logo-maralonga-home img {
    display: block;
    margin: 0 auto;
    width: 70%;
    max-width: 750px;
}


a.captcha-refresh-button {
    /* background-image: url(../images/reload-icon-16896.png); */
    /* display: block; */
    /* width: 10px;
    height: 10px; */

    display:inline-block;
    margin-left: 7px;
    padding: 0px 15px 0px 15px;
    border: none;
    background: url(../images/refresh-cw.svg) no-repeat bottom;
    width: 24px;
    height: 24px;
}
.captcha{
    float: left;
}



.inventory_icon{
    width:55px;
}


@media screen and (max-width: 767px) {
    body {
        /* The file size of this background image is 93% smaller
        to improve page load speed on mobile internet connections */
        background-image: url(../images/mc_background.jpeg) ;
        font-family: 'Source Sans Pro', sans-serif;
        line-height:1.2;
    }

    .overlay {
        height: 65px;
    }

    .logo > a > img {
        width: 250px;
        margin-right: 0;
        margin-top: 10px;
    }

    .logo > a > h3 {
        line-height: 22px;
        /*margin-left: 10px;*/ /*Use it if header image is removed*/
        /*display: none;*/
    }

/*     .overlay > label {
        right: 0px;
        width: 100px;
    } */

    .overlay > label > img {
        width: 50px;
        padding: 0px, 20px, 0px, 8px;
        margin-right: 0px;
    }

    .verticalNav {
        top: -152px;
    }

    .verticalNav > a {
        font-size: 130%;
    }

    #toggle:checked ~ .verticalNav {
        top: 65px;
    }

    .lang_switch {
        display: block;
        font-size: 120%;
        margin-right: 8px;
    }

    .main {
        margin-top: -120px;
        padding: 12px;
        width: 92%;
    }

    .submain {
        padding: 12px;
        width: 92%;
    }

    button[type=submit] {
        font-size: 1em;
    }

    /* show short button text and hide long text */
    .shrt-text { display: inline-block; }
    .full-text { display: none; }






    .submain, #sponsors, #social, footer {
        width: 92%;
        margin-top:20px;
    }

    #sponsors #raffeisen {
        height: 41px;
    }

    #sponsors #altri-sponsors {
        height: 57px;
        padding: 10px 30px;
    }





    .page_elem > .post-thumb > img {
        width: 95%;
        padding: 5px;
        border: solid 1pX #ccc;

        /*annullare il float su mobile*/
        float: left;
        clear:both;
    }





    .main > .page_elem img#percorso {
        width: 97%;
    }
    ol {
        padding-left: 2px;
        margin-left: 0;
    }







    ol {
        padding-top:20px;
        margin-left: 0 auto;
    }
    ol li {
/*         left:40px;
 */    
        padding-left:40px;
        
    }
    ol li:before {
        float: left;
        position: absolute;
        left: 0px;
    
        font: bold 13px sans-serif;
        text-align: center;
        color: black;
        line-height: 22px;
    
        width: 25px; height: 25px;
        background: gold;
    
        -moz-border-radius: 999px;
        border-radius: 999px;

        border: 2px solid black;
    }





    body p {
        font-size: 1.2em;
    }
    
    body h1 {
        font-size: 2.0em;
    }
    body h2 {
        font-size: 1.65em;
    }
    h2.subtitle-custom {
        padding-top: 10px;
        font-size: 1.35em;
    }
    body h3 {
        font-size: 1.3em;
    }
    


    .fieldWrapper label, .fieldWrapper p {
        font-size: 1.2em;
    }

    ol li {
        font-size: 1.0em;
    }

    #percorso {
        min-width: 100%;
    }

    .fascia_oraria {
        padding-top:20px;
    }

    #info-img {
        margin-top:30px;
        float: left;
        margin: 5px 5px 5px 0px;
    
    }




    #label-size-adulti {
        margin-right:17px;
    }

    #label-size-giovani {
        margin-right:6px;
    }

    #social img {
        height: 30px;
    }




    #social {
        margin-bottom: 25px;
    }




    p {
        font-size: 2px;
    }

    .inventory_icon {
        width:35px;
    }



}
