/* GENERAL
******************************************************************************************/

body {
    font-family: 'Dosis', sans-serif;
    color: rgba(255, 255, 255, .8);
}

h1, h2, h3, h4, h5, h6 {
    font-family: 'Dosis', sans-serif;
    font-weight: 800;
    color: white;
    line-height: 1em;
}

/* STRUCTURE
******************************************************************************************/


body.no-scroll {
    width: 100vw;
    height: 100vh;
    overflow: hidden;
}

#header {
    position: fixed;
    width: 25vw;
    height: 20vh;
    top: 0;
    left: 0;
    z-index: 100
}

#nav {
    position: fixed;
    width: 25vw;
    height: 100vh;
    padding-top: 5vh;
    left: 0;
    top: 0;
    padding-top: 25vh;
    box-shadow: 0px 1px 69px rgba(0, 0, 0, 0.63)
}

#content {
    position: absolute;

    overflow-y: hidden;
    left: 28vw;
    top: 0px;
    width: 60vw;
    padding: 2em 0;

}

#footer {
    position: fixed;
    width: 25vw;
    bottom: 1vh;
}

/* MOBILE */
@media screen
and (min-device-width: 320px)
and (max-width: 568px) {

    #header {
        position: inherit;
        width: 100vw;
        height: 130px;
        box-shadow: 1px 0px 69px rgba(0, 0, 0, 0.63);
        z-index: 200;
    }

    #content {
        position: inherit;
        width: 90vw;
        margin: 0 5vw;
        padding: 0;
        left: 0;
        overflow: visible;

    }

    .columns {
        padding: 0
    }


    #footer {
        position: inherit;
        background: rgba(0, 0, 0, .7);
        width: 100vw;
        height: auto;
        padding: 20px;

    }

}


/* TYPO
******************************************************************************************/
#content, #content p {
    font-size: 24px;
    line-height: 1.2em;
}

h3 {
    font-size: 42px;
    font-weight: 800;
    margin: .5em 0 .5em;
}

h6 {
    padding: .5em auto 0;
    margin: .5em 0 .5em;
    line-height: 2em;
}

#content a {
    color: white;
}

/* MOBILE */
@media screen
and (min-device-width: 320px)
and (max-width: 568px) {

    #content, #content p {
        font-size: 18px;
        line-height: 1.2em;
    }

}

/* EN-TETE
******************************************************************************************/
#header h1, #header h2 {
    display: none;
}

#header {
    background: url(../img/logo.png) no-repeat, -webkit-linear-gradient(-75deg, rgba(255, 255, 255, .35) 0%, rgba(255, 255, 255, 0) 53%);
    background-size: contain;
    background-position: center center;
}

#header a {
    display: block;
    height: 100%;
}

/* MOBILE */
@media screen
and (min-device-width: 320px)
and (max-width: 568px) {
    #header a {
        width: 50vw;
        margin: 0 25vw;
    }
}

/* NAVIGATION
******************************************************************************************/
#btn-menu {
    display: none;
}

#nav ul {
    list-style: none;
}

#nav ul li {
    padding: .1em 1em 0;
    margin: 0;
}


#nav li a {
    display: block;
    color: rgba(255, 255, 255, .5);
    font-size: 2.7vw;
    font-weight: 800;
    border-bottom: 1px solid rgba(255, 255, 255, .2);
    transition: .5s color ease;
}

#nav li a:hover {
    color: rgba(255, 255, 255, .8);
}

#nav li.active a {
    color: white;
    text-shadow: 0px 1px 4px black
}

#nav ul li:last-child a {
    border: 0;
}

/* MOBILE */
@media screen
and (min-device-width: 320px)
and (max-width: 568px) {

    #btn-menu {
        display: block;
        color: white;
        z-index: 250;
        position: absolute;
        top: 5px;
        font-size: 20px;
        right: 5px;
        font-weight: 900;
    }

    #btn-menu i {
        font-size: 80%;
    }


    #nav {
        position: absolute;
        left: 0;
        width: 100vw;
        height: 100vh;
        opacity: 1;
        z-index: -100;
        background: rgba(0, 0, 0, .9);
        transition: .5s all ease-in;
        top: -150vh;
        box-shadow: 0px 6px 14px black;
        padding: 7vh 0;
    }


    #nav ul {
        margin: 0;
        padding: 20vh 0 0 0;
        top: 0;
    }

    #nav li {
        height: 15vh;
        margin: 0;
        padding: 0;
    }

    #nav li a {
        padding: 0;
        font-size: 36px;
        text-align: center;
        border: 0;
        width: 90vw;
        margin: 0 0 0 0vw;
        display: block;

    }

    #nav.show {
        display: block;
        z-index: 100;
        opacity: 1;
        top: 0px;
        position: absolute;

    }


}


/* ACCUEIL
******************************************************************************************/
#accueil {
    background: #8138E4;
    background-image: -webkit-radial-gradient(center, ellipse cover, #8138E4 0%, rgba(180, 129, 251, 1) 100%);;
    /* 	background-image: -webkit-linear-gradient(-90deg,#8138E4 0%, #4e0ba9 400px, #4e0ba9 401px, #9e5ff8 100%); */
}

#accueil #header {
    background: #F95D54;
}

#accueil h1, #accueil h2, #accueil h3, #accueil h4, #accueil h5, #accueil h6 {
    color: #F95D54;
}

#accueil #nav {
    background: #F95D54
}


#accueil #content {
    top: 0px;
}


#animation {
    background: url(../img/logo.png) no-repeat;
    background-size: 20vw;
    background-position: center center;
}

.intro {
    padding: 2em 2em .5em;
    text-align: center;
    text-shadow: 0px 1px 15px rgba(0, 0, 0, .4);
}

#content .intro p {
    font-size: 24px;
    line-height: 1em;
    font-weight: 800;
}

#message {
    width: 50%;
    margin: 0 auto 50px;
    background: #F95D54;
    color: white;
    padding: 1em;
    border-radius: 8px;
    transform: rotate(-3deg);
    box-shadow: 0px 1px 5px black
}

#message p {
    font-size: 125%;
    margin: 0;
    line-height: 1.1em;
    font-weight: 500;
    text-align: center;
}

.item.agenda {
    margin: 1em 0;
    padding: 0;
}

.item.agenda p {
    margin: 0;
}

.item.agenda em {
    font-style: normal;
    font-size: 90%;
}

/* MOBILE */
@media screen
and (min-device-width: 320px)
and (max-width: 568px) {

    #accueil #header {
        background: url(../img/logo.png) no-repeat #F95D54;
        background-size: contain;
        background-position: center center;
        z-index: 190;
    }

    #accueil #animation {
        background: none;
    }

    .intro {

        padding: 0 0 1em;
        margin: -1em 0 0;
    }

    #content .intro p {
        font-size: 18px;
    }

    #message {
        font-size: 16px;
        width: 90%
    }

}

/* INFOS PRATIQUES
******************************************************************************************/
#infos {
    background: #B92722;
    background-image: -webkit-radial-gradient(center, ellipse cover, #B92722 0%, rgba(186, 39, 34, 0.1) 100%);;

}

#infos h1, #infos h2, #infos h3, #infos h4, #infos h5, #infos h6 {
    color: #F9BB1C;
}

#infos #nav {
    background: #F9BB1C
}

.info.item {
    margin: 1em 0 2em 0;
}

/* MOBILE */
@media screen
and (min-device-width: 320px)
and (max-width: 568px) {

    #infos h3 {
        text-align: center;
        margin: 0 0 .5em 0;
    }

    #infos #header {
        background-color: #F9BB1C;
        z-index: 190;
    }

    .item.info img {
        width: 40vw;
        margin: 0 20vw;
    }

}


/* GALERIES
******************************************************************************************/
#galeries {
    background: #840ece
}

#galeries h1, #galeries h2, #galeries h3, #galeries h4, #galeries h5, #galeries h6 {
    color: #f18303;
}

#galeries #nav {
    background: #f18303
}

#galeries .row.albums a.gallery {
    text-align: center;
    margin: 10px 10px 60px 0;;
    width: 200px;
    height: 200px;
    display: block;
    float: left;
    color: rgba(0, 0, 0, .8);
    font-size: 80%;
    line-height: 1.1em;
}

#galeries .row.albums h3 {
    width: 100%;
    float: left;
    margin: 36px 0 24px;

}

#galeries .row.albums li a {
    color: rgba(0, 0, 0, .8)
}

.thumb {
    border-radius: 0;
    width: 200px;
    height: 200px;
    float: left;
    margin: 10px 10px 0px 0px;
    border-radius: 4px;
    transition: .4s all ease;
    overflow: hidden;
}

.thumb:hover {
    box-shadow: 0px 1px 6px black;
}

#galeries li {
    list-style: none;
}

.thumb img {
    opacity: 0;
}

#galeries h3 a {
    float: left;
    width: auto;
    margin-right: 10px;
    display: inline;
    color: #f18303
}

.btn-back i {
    font-size: 70%;
}


/* MOBILE */
@media screen
and (min-device-width: 320px)
and (max-width: 568px) {

    #galeries #header {
        background-color: #f18303;
        z-index: 190;
    }

    #galeries .row.albums a.gallery {
        width: 80vw;
        height: 200px;
        margin: 80px 5vw;
        float: none;
    }

    #galeries .gallery {
        width: 80vw;
        height: 200px;
        float: none;
        display: block;
    }

    #galeries .gallery .thumb {
        width: 80vw;
        height: 200px;
        float: left;
        overflow: hidden;
        display: block;

    }

    #galeries .thumb {
        width: 80vw;
        height: 200px;
        margin: 0 auto;
        float: none;

        display: block;
    }


}


/* CONTACT
******************************************************************************************/
#contact {
    background: #0B67C9
}

#contact #nav {
    background: #72C33E;
}

#contact h1, #contact h2, #contact h3, #contact h4, #contact h5, #contact h6 {
    color: #72C33E;
}


/* MOBILE */
@media screen
and (min-device-width: 320px)
and (max-width: 568px) {

    #contact #header {
        background-color: #72C33E;
        z-index: 190;
    }

}


/* DOCUMENTS
******************************************************************************************/
#documents {
    background: rgba(156, 143, 143, 0.56)
}

#documents #nav {
    background: rgba(27, 18, 0, 0.7);
}

#documents h1, #documents h2, #documents h3, #documents h4, #documents h5, #documents h6 {
    color: rgba(27, 18, 0, 1);
}

.form {
    background: rgba(0, 0, 0, .6);
    border-radius: 10px;
    padding: 20px;
    margin: 5vh 0;
}

.form .input-bar {
    display: flex;
    justify-content: space-between;
    align-content: center;
}

.form input {
    flex: 1 1 70%;
    margin: 0 10px 0 0;
}

#documents button.btn {
    padding: .6em 2em;
    border-radius: 100px;
    background: black;
}

#documents .error {
    color: red;
    font-weight: 700;
    margin: .5em 0;
}

.download {
    padding: 2em;
    border-top: 1px dotted grey;
}

#documents .download a {
    color: black;
}

@media screen and (min-device-width: 320px) and (max-width: 768px) {
    .form .input-bar {
        flex-direction: column;
    }

    .form input {
        margin: 10px 0;
    }

}

/* PIED DE PAGE
******************************************************************************************/
#footer {
    padding: 1em;
    font-size: 2vw;

}

#footer p {
    font-size: 1.1vw;
    font-weight: 700;
    color: rgba(0, 0, 0, .4);
    padding: 0;
    line-height: 1.2em;
    margin: 0 0 .4em 0;
}

#footer a {
    color: rgba(0, 0, 0, .4);
}

/* MOBILE */
@media screen
and (min-device-width: 320px)
and (max-width: 568px) {

    #footer {
        margin-top: 40px;
        padding: 3em 2em;
    }

    #footer p {
        color: white;
        font-size: 16px;
        margin: 0 0 4px 0
    }

    #footer a {
        color: white;
    }

}