/*--------------------------------------------------------------
>>> TABLE OF CONTENTS:
----------------------------------------------------------------
# General
# Layout & builder
# Reseaux sociaux
# Footer & copyright
# Normalize
# Typography
# Elements
# Navigation
	## Links
--------------------------------------------------------------*/

/*--------------------------------------------------------------
# General
--------------------------------------------------------------*/

::-moz-selection {
    background: #D17400;
    color: #efeee9;
}

::selection {
    background: #D17400;
    color: #efeee9;
}

h2 {
    color: #CB6015;
    font-size: 3rem;
    font-weight: 700;
    text-transform: uppercase;
    line-height: 1.2;
    margin-top: 1rem;
    margin-bottom: 2rem;
}

a {
    text-decoration: none;
}

.site-loader {
    position: fixed;
    z-index: 999999;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: url("../images/loader.svg") 50% 50% no-repeat #E0C0A1;
}

.site {
    position: relative;
    overflow: hidden;

    display: flex;
    flex-direction: column;
    min-height: 100vh;

    text-align: center;
}

.site-header {
    padding: 2rem 0;
}

.site-content {
    padding: 1rem 0;

    flex: 1;
}

.site-footer {
    padding: 2rem 0;
}

.section > *:first-child {
    margin-top: 0;
}

#logo {
    font-size: 1rem;
    width: 300px;
    margin: 0 auto;
}

#logo img {
    vertical-align: top;
}

/*--------------------------------------------------------------
# Social-networks
--------------------------------------------------------------*/

.reseaux-sociaux-wrap {
    display: inline-flex;
    flex-wrap: wrap;
    vertical-align: top;

    -webkit-transform: translate3d(0,0,0);
    -moz-transform: translate3d(0,0,0);
    -o-transform: translate3d(0,0,0);
    transform: translate3d(0,0,0);
}

.reseau-social {
    margin: 0 0.75rem;
}

.reseau-social a {
	display: flex;
    justify-content: center;
    align-items: center;
    width: 1.8rem;
    height: 1.8rem;
    font-size: 1.6rem;
}

/*--------------------------------------------------------------
# Buttons
--------------------------------------------------------------*/

a.btn {
    display: inline-block;
    padding: 1rem 2rem;
    
    font-size: 1.2rem;
    text-transform: uppercase;
    text-align: center;
    line-height: 1;
	
	border-width: 2px;
	border-style: solid;
    border-color: transparent;

    -webkit-border-radius: 0;
    border-radius: 0;
	
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
    
    -webkit-transition: 0.3s;
    -moz-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
}

a.btn:hover {
    cursor: pointer;
}

a.btn-couleur,
a.btn-couleur:visited {
    background-color: #D17400;
    border-color: #D17400;
    color: #fff;
}

a.btn-couleur:hover {
    background-color: #fff;
    color: #D17400;
}

/*--------------------------------------------------------------
# Layout & Builder
--------------------------------------------------------------*/

.boxed {
    width: 100%;
    max-width: 780px;
    padding-left: 30px;
    padding-right: 30px;
    margin-right: auto;
    margin-left: auto;
}

.layout-flex {    
    display: flex;
    flex-wrap: wrap;

    margin-left: -1rem;
    margin-right: -1rem;
}

.layout-flex > * {
    padding-left: 1rem;
    padding-right: 1rem;
}

.layout-flex.layout-gapless {
    margin-left: 0;
    margin-right: 0;
}

.layout-flex.layout-gapless > * {
    padding-left: 0;
    padding-right: 0;
}

.layout-max {
    flex: 1;
}

.layout-min {
    min-width: 0;

    flex: none;
}

.layout-100 {
    width: 100%;
}

.layout-95 {
    width: 95%;
}

.layout-90 {
    width: 90%;
}

.layout-85 {
    width: 85%;
}

.layout-80 {
    width: 80%;
}

.layout-75 {
    width: 75%;
}

.layout-70 {
    width: 70%;
}

.layout-66 {
    width: 66.66%;
}

.layout-65 {
    width: 65%;
}

.layout-60 {
    width: 60%;
}

.layout-55 {
    width: 55%;
}

.layout-50 {
    width: 50%;
}

.layout-45 {
    width: 45%;
}

.layout-40 {
    width: 40%;
}

.layout-35 {
    width: 35%;
}

.layout-33 {
    width: 33.33%;
}

.layout-30 {
    width: 30%;
}

.layout-25 {
    width: 25%;
}

.layout-20 {
    width: 20%;
}

.layout-15 {
    width: 15%;
}

.layout-10 {
    width: 10%;
}

.layout-5 {
    width: 5%;
}

/*--------------------------------------------------------------
# Normalize
--------------------------------------------------------------*/

html {
    font-family: sans-serif;
    -webkit-text-size-adjust: 100%;
    -ms-text-size-adjust: 100%;
}

body {
    margin: 0;
    padding: 0;
}

footer,
header,
main,
menu,
nav,
section {
    display: block;
}

address {
    font-style: normal;
}

a {
    background-color: transparent;
}

a:active,
a:hover {
    outline: 0;
}

img {
    border: 0;
}

/*--------------------------------------------------------------
# Typography
--------------------------------------------------------------*/

body {
    font-family: 'Averia Serif Libre', cursive;
    font-size: 1.125rem;
    color: #6D4F47;
}

p {
    margin-bottom: 1.4rem;
}

b,
strong {
    font-weight: bold;
}

em,
i {
    font-style: italic;
}

/*--------------------------------------------------------------
# Elements
--------------------------------------------------------------*/

html {
    box-sizing: border-box;
}

*,
*:before,
*:after {
    /* Inherit box-sizing to make it easier to change the property for components that leverage other behavior; see http://css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice/ */
    box-sizing: inherit;
}

body {
    background-image: url('../images/texture.png');
    background-repeat: repeat;

    background-color: #E0C0A1;
    /* Fallback for when there is no custom background color defined. */
}

ul,
ol {
    margin: 0 0 1.4rem 3em;
}

ul {
    list-style: disc;
}

ol {
    list-style: decimal;
}

li > ul,
li > ol {
    margin-bottom: 0;
    margin-left: 1.5em;
}

img {
   	height: auto; /* Make sure images are scaled correctly. */
	max-width: 100%; /* Adhere to container width. */
}

/*--------------------------------------------------------------
# Navigation
--------------------------------------------------------------*/

/*--------------------------------------------------------------
## Links
--------------------------------------------------------------*/

a,
a:visited {
    color: #D17400;

    -webkit-transition: color 0.3s;
    -moz-transition: color 0.3s;
    -o-transition: color 0.3s;
    transition: color 0.3s;
}

a:hover {
    color: #6D4F47;
}

a:focus {
    outline: none;
}

/*--------------------------------------------------------------
# Media Query
--------------------------------------------------------------*/


@media (max-width: 768px) {
    body {
        font-size: 1rem;
    }

    h2 {
        font-size: 2rem;
    }

    .layout-100,
    .layout-95,
    .layout-90,
    .layout-85,
    .layout-80,
    .layout-75,
    .layout-70,
    .layout-66,
    .layout-65,
    .layout-60,
    .layout-55,
    .layout-50,
    .layout-45,
    .layout-40,
    .layout-35,
    .layout-33,
    .layout-30,
    .layout-25,
    .layout-20,
    .layout-15,
    .layout-10,
    .layout-5 {
        width: 100%;
    }

    #logo {
        width: 200px;
    }

    .site-loader {
        background-size: 33vmin;
    }

    .logo-wrap {
        max-width: 200px;
    }

    .site-header {
        padding: 1rem 0;
    }

    .site-content {
        display: flex;
        flex-direction: column;
        justify-content: center;
    }

    .content-area {
        margin: 0;
    }

    .site-footer {
        padding: 1rem 0;
    }
}

@media (max-width: 480px) {
    h2 {
        font-size: 1.6rem;
    }
}

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

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

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