/*



#010101 - Noir
#F08117 - Orange foncé
#F59D41 - Orange clair
#0479A0 - Bleu foncé
#74C3DE - Bleu clair


*/
/* FONTS---------------*/
@font-face {
    font-family: 'yeseva';
    src: url('font/YesevaOne-Regular.woff') format('woff');
}

@font-face {
    font-family: 'roboto';
    src: url('font/Roboto-Regular.woff') format('woff');
}

@font-face {
    font-family: 'roboto-l';
    src: url('font/Roboto-Light.woff') format('woff');
}

@font-face {
    font-family: 'roboto-b';
    src: url('font/Roboto-Bold.woff') format('woff');
}

@font-face {
    font-family: 'champ-b';
    src: url('font/Champagne-Bold.woff') format('woff');
}




/* GENERAL---------------*/
* {
    margin: 0;
    box-sizing: border-box;
    outline: none;
}

.outline:focus {
    outline: 2px dotted #421;
}

button::-moz-focus-inner {
    border: 0;
}

body {
    font: 1.15em roboto, sans-serif;
    color: #404B4F;
}

#page {
    min-height: calc(100vh - 150px);
}

img {
    border: 0;
    display: block;
    max-width: 100%;
    height: auto;
}

article p {
    margin-bottom: 15px;
}

table {
    border-collapse: collapse;
    font-size: 1em;
}

th,
td {
    padding: 10px 10px;
    text-align: left;
    vertical-align: top;
}

th:first-child,
td:first-child {
    padding-left: 0;
}

th:last-child,
td:last-child {
    padding-right: 0;
}


ul {
    list-style: none;
    padding-left: 0;
}

p {
    line-height: 1.4em;
}

h1,
h2,
h3 {
    text-align: left;
    line-height: 0.4em;
    font: 2em yeseva, sans-serif;
}


h1,
h2 {
    margin: 30px 30px;
    position: relative;
    /*    text-transform: uppercase;*/

}

h1 {
    font: 3.5em yeseva, sans-serif;
    color: #fff;

}

#projets h1 {
    color: #74C3DE;
    text-transform: unset;
    align-self: start;
    margin-left: 150px;
    margin-bottom: 5%;
}

h2::before,
h1::before {
    content: '';
    display: block;
    height: 80px;
    width: 80px;
    position: absolute;
    left: -100px;
    top: -20px;
}

::selection {
    background: #FFD800;
    color: #404B4F;
}

h4 {
    font: 1.5em roboto-b, sans-serif;
    color: #F59D41;
    margin-bottom: 20px;
}

strong {
    margin-bottom: 30px;
    color: #0479A0;
}

a {
    text-decoration: none;
    color: #74C3DE;
}

a:hover {
    color: #0479A0;
}

/*
.centre {
    width: 1400px;
    margin: 0 auto;
    position: relative;
}
*/

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




/* INPUTS---------------*/

input[type=submit],
button,
.button,
.bouton {
    font: 1.2em/.8em open-b, sans-serif;
    border: solid 3px #404B4F;
    padding: 0.5em 1em;
    cursor: pointer;
    margin: 0;
    width: max-content;
}

input[type=submit]:hover,
button:hover,
.button:hover,
.bouton:hover {
    background: #404B4F;
    color: #fff;
}

input[type=text],
input[type=password],
input[type=email],
input[type=tel],
input[type=number],
textarea,
select {
    font: 1em clr, sans-serif;
    color: #333;
    padding: 6px 15px;
    /*    border: solid 2px #FFD800;*/
    border: 0;
    background: #EBEDEE;
    /*    margin-bottom: -10px;*/
    display: block;
    width: 100% !important;
}


#post-208 input[type=text],
#post-208 input[type=password],
#post-208 input[type=email],
#post-208 input[type=tel],
#post-208 input[type=number],
#post-208 textarea,
#post-208 select,
#post-589 input[type=text],
#post-589 input[type=password],
#post-589 input[type=email],
#post-589 input[type=tel],
#post-589 input[type=number],
#post-589 textarea,
#post-589 select {
    color: #404B4F;
    /*    border: solid 2px #404B4F;*/
}

select,
label {
    cursor: pointer;
}

label {
    font-size: .9em;
    text-align: left;
    margin-bottom: 4px;
}

text {
    width: 100% !important;
}

textarea {
    width: 100% !important;
    height: 120px !important;
}

input[type=checkbox] {
    width: auto !important;
}

input.petit,
.petit input {
    width: 250px !important;
}

fieldset {
    margin-bottom: 20px;
}

.radio {
    padding: 8px 0;
    display: block;
    padding-left: 25px;
    font-size: 1em;
    position: relative;
    width: 100%;
    cursor: pointer;
}

.radio input[type=radio] {
    opacity: 0;
    position: absolute;
}

.radio span {
    position: absolute;
    top: 10px;
    left: 0;
    display: inline-block;
    height: 20px;
    width: 20px;
    border-radius: 50%;
    background: #ffe9d6;
}

.radio span::after {
    content: '';
    display: block;
    position: absolute;
    top: 4px;
    left: 4px;
    height: 12px;
    width: 12px;
    border-radius: 50%;
    background: #421;
    background: #fff;
    opacity: 0;
    transition: opacity .2s;
}

.radio input:checked ~ span::after {
    opacity: 1;
}

.radio input:checked ~ span {
    background: #FFD800;
}

.check {
    margin-bottom: 20px;
    padding-left: 30px;
    font-size: 1em;
    line-height: 1.5em;
    position: relative;
    width: 100%;
    cursor: pointer;
}

.check input[type=checkbox] {
    opacity: 0;
    position: absolute;
}

.check span {
    position: absolute;
    top: 2px;
    left: 0;
    display: inline-block;
    height: 22px;
    width: 22px;
    background: #FFD800;
}

.check span::after {
    content: '';
    display: block;
    position: absolute;
    top: 4px;
    left: 4px;
    height: 5px;
    width: 11px;
    border: solid #fff;
    border-width: 0 0 4px 4px;
    transform: rotate(-45deg);
    opacity: 0;
    transition: opacity .2s;
}

.check input:checked ~ span {
    background: #FFD800;
}

.check input:checked ~ span::after {
    opacity: 1;
}

.ouinon {
    margin-bottom: 20px;
    padding-left: 70px;
    font-size: 1em;
    line-height: 1.5em;
    position: relative;
    width: 100%;
    cursor: pointer;
}

.ouinon input[type=checkbox] {
    opacity: 0;
    position: absolute;
}

.ouinon span {
    position: absolute;
    top: -3px;
    left: 0;
    display: inline-block;
    height: 28px;
    width: 66px;
    background: #FFD800;
    border-radius: 15px;
    transition: background .3s;
}

.ouinon span::before {
    content: 'NON';
    font-size: .8em;
    display: block;
    position: absolute;
    left: 27px;
}

.ouinon span::after {
    content: '';
    display: block;
    position: absolute;
    top: 3px;
    left: 3px;
    height: 22px;
    width: 22px;
    border-radius: 50%;
    background: #ddd;
    transition: transform .3s;
}

.ouinon input:checked ~ span {
    background: #AF9711;
}

.ouinon input:checked ~ span::before {
    content: 'OUI';
    left: 7px;
}

.ouinon input:checked ~ span::after {
    transform: translateX(38px);
}

/* HAUT----------------------*/
#header {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-end;
    justify-content: space-between;
    position: fixed;
    height: 175px;
    z-index: 1200;
    width: 100%;
    top: 0;
}

/*
.home #header {
    height: 175px;
    align-items: flex-end;
}
*/

#logo {
    padding: 5px 0 0 25px;
    height: 80%;
    position: relative;
    z-index: 150;
    align-self: flex-start;
}

@keyframes logo {
    0% {
        opacity: 0;
        top: -150px;
    }

    100% {
        opacity: 1;
        top: 0;
    }
}

.home #logo {
    padding: 25px 0 0 25px;
    animation: 5s logo;
    animation-delay: 8s;
    animation-fill-mode: forwards;
    opacity: 0;
}


.custom-logo {
    height: 100%;
    width: auto;
}

.fixe {

    height: 65px !important;
}

.portfolio-element .text p:first-of-type {
    color: #F08117;
    font: 1.5em roboto-b, sans-serif;

}

/* MENU----------------------*/

#menu {
    display: flex;
    flex-flow: row-reverse wrap;
    align-items: flex-end;
}

#menu-haut {
    width: 180px;
    height: 62.5px;
    display: flex;
    align-items: center;
    justify-content: center;
}

#social-haut {
    display: flex;
    justify-content: start;
    width: 50%;
}

#social-haut a {
    margin: 0 1em 0 0
}

#langue a {
    font: 1em open-r, sans-serif;
    max-width: 21px;
    overflow: hidden;
    padding: 0;
    color: #FFD800;
}

#langue li:last-child a {
    max-width: 23px;
}

nav #langue li {
    position: relative;
}


div#langue {
    width: 60px;
}

nav #langue li a::before {
    display: none;
}

.current-lang a {
    color: #FFD800 !important;
}

.fixe #menu {
    flex-flow: row-reverse;
}

.fixe nav li a,
.fixe .menu li.current-menu-item a {
    font-size: 1em !important;
}

.fixe #menu-haut {
    width: 180px;
}

.fixe #logo {
    padding: 5px 0 0 25px;
    height: 85%;
}

.fixe .menu-item-has-children a::after {
    height: 12px;
}

nav li a,
.single-portfolio nav li a {
    font: 2em roboto-b, sans-serif;
    display: block;
    padding: 2em 1em;
    color: #F59D41 !important;
    text-transform: uppercase;
    height: 100%;
    width: 100%;
    position: relative;
}

nav li a:hover {

    color: #fff !important;

}


.sub-menu li a::before,
.menu-item-22 a::before {
    display: none;
}

nav ul {
    display: none;
    flex-flow: column;
    justify-content: center;
    align-items: flex-end;
    position: relative;
    width: calc(50vw - 8px);
    height: 100vh;
    background: rgba(116, 195, 222, .9);
    padding: 0 150px 50% 0;
    animation: 1s linear menu-anim;
    animation-fill-mode: forwards;
}

@keyframes menu-anim {
    0% {
        right: calc(-50vw - 180px);
    }

    100% {
        right: -180px;
    }
}

ul.sub-menu {
    position: absolute;
    left: 0;
    display: none;
    flex-flow: row wrap;
    justify-content: space-around;
    width: 100%;
    height: auto;
    background: #1B2129;
    z-index: 500;
    padding-top: 2em;
    align-items: flex-start;
}

li.current-menu-item a {
    color: #F08117 !important;
}

.menu-image-hover-wrapper {
    width: 214px;
}

.sub-menu li {
    max-width: 16%;
    height: 100%;
    display: flex;
    align-items: flex-start;
    justify-content: space-around;
    color: #fff;
}

.sub-menu li a {
    color: #fff !important;
    font: 0.9em clrb, sans-serif;
    margin-bottom: 2em;
}

.menu-image.menu-image-title-above {
    padding-top: 0px !important;
    padding-bottom: 0 !important;
    margin-bottom: -10px !important;
}

.menu-item-31 .sub-menu {
    justify-content: flex-end;
    height: 100px;
}

.menu-item-has-children a {
    position: relative;
    cursor: pointer;
}

/*
.menu-item-has-children a::after {
    content: url(img/fleche-menu-bas.png);
    display: block;
    position: absolute;
    top: 60%;
    left: calc(50% - 10px);
    height: 12px;
    overflow: hidden;
}
*/

.menu-item-has-children:hover a::after {
    background-position: -16px 0;
}

.sub-menu a::after {
    display: none;
}

#burger {
    z-index: 500;
    cursor: pointer;
    border: 0;
    padding: 0 !important;
    background: none !important;
    position: absolute;
    top: 60px;
    right: 100px;
}

.fixe #burger {
    right: 180px;
}

.barre {
    display: block;
    background: #0479A0;
    height: 7px;
    width: 60px;
    margin: 0 0 15px 0;
    transition: -webkit-transform .3s, width .3s;
    transition: transform .3s, width .3s;
}

.barre:nth-of-type(2) {

    background: #F08117;
}

.barre:first-of-type {
    border-radius: 5px 5px 0 0;
}

.barre:last-of-type {
    border-radius: 0 0 5px 5px;
}

.croix span:first-child {
    -webkit-transform: rotate(45deg) scaleX(1.13);
    transform: rotate(45deg) scaleX(1.13);
    -webkit-transform-origin: 4px 5px;
    transform-origin: 4px 5px;
}

.croix span:nth-child(2) {
    -webkit-transform: scaleX(0);
    transform: scaleX(0);
}

.croix span:last-child {
    -webkit-transform: rotate(-45deg) scaleX(1.13);
    transform: rotate(-45deg) scaleX(1.13);
    -webkit-transform-origin: 4px 0;
    transform-origin: 4px 0;
}

#primary-menu ul li a {
    padding: 12px;
}

#primary-menu ul img {
    height: 100%;
}

#primary-menu #menu-item-16 img {
    height: 274px;
}

#menu-item-31 {
    width: 100%;
}

.menu-item-31 .sub-menu {
    flex-flow: column;
}

.sub-menu li a {
    margin-bottom: 0;
}

/* PROMO ---------------*/


/* ACCUEIL-------------------*/

#hero {
    /* background: url(img/fond-hero.png), no-repeat;
    background-color: #74C3DE;*/
    height: 100vh;
    position: relative;
    display: flex;
    /* flex-flow: column; */
    overflow: hidden;
    align-items: center;
    justify-content: center;
    background: linear-gradient(-45deg, #F59D41, #74C3DE);
    background-size: 125% 125%;
    animation: gradient 15s ease infinite;
}

@keyframes gradient {
    0% {
        background-position: 0% 50%;
    }

    50% {
        background-position: 100% 50%;
    }

    100% {
        background-position: 0% 50%;
    }
}


#hero-logo {
    display: flex;
    position: relative;
    height: 100%;
    animation: 2s linear 2s hero-logo;
    animation-fill-mode: forwards;
    width: 50%;
    max-height: 300px;
    opacity: 0;
}

@keyframes hero-logo {
    0% {
        opacity: 0;
    }

    100% {
        opacity: 1;
    }
}

#hero-logo > div {
    position: absolute;
}

#hero-annonce h1:first-of-type {
    color: #0479A0;
}

#hero-annonce h1:last-of-type {
    color: #F59D41;
}

#hero-annonce a {
    color: #74C3DE;
    background-color: #fff;
    margin: 30px;
    padding: 15px;
    text-transform: uppercase;
}

#hero-annonce a:hover {
    color: #0479A0;

}


#souris {
    position: absolute;
    bottom: 20px;
    left: calc(50% - 23px);
    display: flex;
    flex-flow: column;
    align-items: center;

}

#souris img:first-of-type {
    position: relative;
    animation: 1.4s linear infinite souris-1;
}

@keyframes souris-1 {
    0% {
        top: 0;
    }

    50% {
        top: -10px;
    }

    100% {
        top: 0;
    }
}

#souris img:last-of-type {
    position: relative;
    animation: 1.4s linear infinite souris-2;
}

@keyframes souris-2 {
    0% {
        top: 0;
    }

    50% {
        top: 10px;
    }

    100% {
        top: 0;
    }
}

#presentation {
    min-height: 100vh;
    position: relative;
    overflow: hidden;
}

#presentation h2 {
    text-transform: unset;
}

#presentation > div {
    position: relative;
    z-index: 100;
}

#qui {
    width: 60%;
    margin: 3em;
}

#qui p {
    padding-left: 50px;
    position: relative;
}

#qui h2 {
    margin: 30px 0;
}

#qui p::before {
    content: '';
    display: block;
    height: 100%;
    width: 1px;
    background: #1A1A1A;
    position: absolute;
    left: 0;
    top: 0;
    z-index: 200;
}


#points {
    position: absolute;
    top: -55px;
    right: 0;
    bottom: 0;
    left: -10px;
    width: 102%;
    height: 110%;
}


/*
canvas {
    touch-action: none;
}
*/

#presentation-slider {
    display: flex;
    flex-flow: row wrap;
}

/*
#presentation-slider-gauche {
    width: 33%;
    display: flex;
    flex-flow: column;
    padding-left: 2em;
}

#presentation-slider-gauche h2 {
    cursor: pointer;
}
*/

#presentation-slider-droite {
    width: 100%;
    display: flex;
    flex-flow: row wrap;
    overflow: hidden;
    padding-left: 120px;
    align-items: center;
    justify-content: space-around;
}

#presentation-slider-droite > div {
    min-width: 33%;
    /*    transition: order 3s ease;*/
    position: relative;
    margin-right: 90px;
    margin-bottom: 30px;
}

#presentation-slider-droite > div h3 {
    font: 1.8em yeseva, serif;
    max-width: 450px;
}


#presentation-slider-droite > div > p {
    color: #F08117 !important;
    font: 1.1em roboto-l, sans-serif;
    width: 400px;
    margin-bottom: 30px;
}

#presentation-slider-droite > div li {
    color: #0479A0 !important;
    font: 1em roboto, sans-serif;
    width: 400px;
    margin-bottom: 10px;
}


#presentation-slider-droite > div::before {
    content: '';
    display: block;
    position: absolute;
    width: 108px;
    height: 104px;
    left: -120px;
    top: 0;
    z-index: 200;
}



/*
#presentation-slider-droite > div:nth-last-of-type(2) {
    opacity: 30%;
}
*/
/*

#competences {
    opacity: 30%;
}
*/

#passions::before {

    background: url(img/passion.png);
}

#competences::before {

    background: url(img/competence.png);
}

#aptitudes::before {

    background: url(img/aptitude.png);
}

.ordre-1 {
    order: 1;
}

.ordre-2 {
    order: 2;
}

.ordre-3 {
    order: 3;
}

.opacite-100 {
    opacity: 100% !important;
}

.opacite-60 {
    opacity: 60% !important;
}

.opacite-30 {
    opacity: 30% !important;
}



#prestations {
    min-height: 100vh;
    background: #74C3DE;
    display: flex;
    flex-flow: column;
    justify-content: center;
    align-items: center;
    padding-bottom: 120px;

}

#prestations-titres {
    max-width: 1000px;
    width: 100%;
    display: flex;
    flex-flow: row;
    justify-content: space-between;
    position: relative;
    margin-bottom: -100px;
}

#titre-graphisme,
#titre-webdesign,
#titre-video {
    width: 275px;
    height: 350px;
    z-index: 100;
    position: relative;
    transition: 0.5s;
    cursor: pointer;
    display: flex;
    justify-content: center;
    align-items: end;
}

#prestations h3 {
    color: #fff;
    text-shadow: 3px 3px 6px #777;
    text-align: center;
    margin: 10px;
}

#titre-graphisme {
    background: url(img/fond-graphisme.jpg);
}

#titre-graphisme:hover {
    background: url(img/fond-graphisme-2.jpg);
    align-items: start;
}

#titre-webdesign {
    background: url(img/fond-webdesign.jpg);
}

#titre-webdesign:hover {
    background: url(img/fond-webdesign-2.jpg);
    align-items: start;
}

#titre-video {
    background: url(img/fond-video.jpg);
}

#titre-video:hover {
    background: url(img/fond-video-2.jpg);
    align-items: start;
}



#prestations-contenu {
    max-width: 1200px;
    height: auto;
    min-height: 450px !important;
    background-color: #fff;
    padding: 150px 90px 60px 125px;
}

#graphisme,
#webdesign,
#video {
    display: none;
}

#prestations-texte,
#graphisme,
#webdesign,
#video {
    position: relative;
}

#prestations-texte h2,
#graphisme h2,
#webdesign h2,
#video h2 {
    position: absolute;
    transform: rotate(-90deg);
    left: -220px;
    top: 80px;
    min-width: 250px;
    text-align: end;
}

h4:nth-of-type(2) {
    margin-top: 30px;
}

.display {
    display: flex !important;
    flex-flow: column !important;
}

.display-none {
    display: none !important;
}



#projets {
    min-height: 100vh;
    background: #010101;
    display: flex;
    flex-flow: column;
    justify-content: center;
    align-items: center;
    padding-bottom: 120px;

}

#projets-slider {
    display: flex;
    flex-flow: row nowrap;
    width: 1000px;
    height: 620px;
    overflow: hidden;
    position: relative;
}

.projets-slide {
    width: 100%;
    height: 100%;
    position: relative;
    margin-right: 175px;
    transition: transform 2s ease;
}

.slide1 {
    transform: translateX(0) !important;
}

.slide2 {
    transform: translateX(calc(-100% - 175px)) !important;
}

.slide3 {
    transform: translateX(calc(-200% - 350px)) !important;
}

.slide4 {
    transform: translateX(calc(-300% - 525px)) !important;
}

.projets-slide h2 {
    position: absolute;
    z-index: 100;
    /*    max-width: 600px;*/
    font: 6em yeseva, serif;
    margin: 0;
    color: #fff;
    text-shadow: 2px 2px 30px #010101;
    top: -18px;
}

.projets-slide a {
    display: flex;
    flex-flow: row wrap;
}

.projets-slide p {
    min-width: 200px;
}

.projets-slide img:first-of-type {
    justify-self: flex-end;
    /* float: right; */
    position: relative;
    left: 175px;
    top: 35px;
    max-width: 825px;
}

.projets-slide img:last-of-type {
    position: absolute;
    left: -35px;
    bottom: 0px;
    transform: scale(0.8);
}

#text {
    display: flex;
    justify-content: space-between;
    /*    width: calc(100% - 300px);*/
    align-self: end;
    justify-self: flex-end;
    position: relative;
    bottom: -72px;
    left: 300px;
    padding: 0 0 0 120px;
}

#text > p:first-of-type {
    color: #0479A0;
    font: 1.2em roboto-b, sans-serif;

}

#text > p:last-of-type {
    color: #F08117;
}

#projets-select ul {
    display: flex;
    width: 1000px;
    justify-content: space-between;
    height: 70px;
    align-items: center;
    padding: 0 10px;
}

#projets-select {
    width: 1000px;
    position: relative;
}

#projets-select li {
    cursor: pointer;
    display: block;
    width: 50px;
    height: 50px;
    background: #0479A0;
    transform: rotate(45deg);
}

#selecteur {
    width: 77px;
    display: flex;
    justify-content: center;
    transform: translateX(0);
    transition: transform 1s ease;
}

.select-1 {
    transform: translateX(0) !important;
}

.select-2 {
    transform: translateX(308px) !important;
}

.select-3 {
    transform: translateX(615px) !important;
}


.select-4 {
    transform: translateX(922px) !important;
}


#contact-accueil {

    height: 100vh;
    position: relative;

}

#contact-bg {
    background: url(img/background-contact.jpg);
    filter: blur(10px);
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    height: 100%
}

#contact-contenu {
    background: url(img/background-contact.jpg);
    position: relative;
    display: flex;
    flex-flow: row wrap;
    justify-content: center;
    align-items: center;
    height: 100%;
    width: 100%;
    background-size: cover;
    background-repeat: no-repeat;
}



#contact-contenu h1 {
    width: 100%;
    text-align: center;
}

div#contact-texte-gauche,
#contact-texte-droite {
    height: 500px;
    display: flex;
    flex-flow: column;
    justify-content: space-around;
}

#contact-texte-gauche {
    align-items: flex-end;
    padding-right: 100px;
    position: relative;
}

#contact-texte-gauche::after {
    content: '';
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    height: 100%;
    width: 2px;
    border-radius: 50%;
    background: #fff;
}

#contact-texte-droite {
    align-items: flex-start;
    padding-left: 100px;
    justify-content: center;
}

#contact-texte {
    width: 100%;
    display: flex;
    width: 1000px;
    justify-content: space-around
}

#contact-texte-1 {
    width: 50%;
    height: 75%;
    display: flex;
    flex-flow: column;
    justify-content: space-around;
    align-items: end;
}

#contact-texte-2 {
    width: 100%;
    display: flex;
    justify-content: space-between;
    padding-right: 60px;
    margin-top: 50px;
}

#contact-texte-3 {
    height: 50%;
    display: flex;
    flex-flow: column;
    justify-content: space-around;
}


.wp-block-button__link {
    color: #fff;
    height: 100px;
    width: 300px;
    background-color: rgba(0, 0, 0, 0);
    border-radius: unset;
    box-shadow: none;
    cursor: pointer;
    display: inline-block;
    font-size: 1.125em;
    padding: calc(0.667em em + 2px) calc(1.333em + 2px);
    text-align: center;
    text-decoration: none;
    word-break: break-word;
    box-sizing: border-box;
    border: 6px solid #74C3DE;
}

#contact-texte-1 .wp-block-buttons:last-of-type .wp-block-button__link {
    border: 6px solid #F59D41;
}

.wp-block-button__link:hover {
    background-color: #74C3DE;
}

#contact-texte-1 .wp-block-buttons:last-of-type .wp-block-button__link:hover {
    background-color: #F59D41;
}

#contact-accueil a {
    color: #fff;
    font: 1.5em roboto, sans-serif;
}

/* PORTFOLIO--------------------*/

.page-id-38 #normale {

    background: #010101;
    display: flex;
    flex-flow: column;
    /*    justify-content: center;*/
    align-items: center;
}


#realisations {

    width: 1200px;
    margin-top: 150px;
    display: flex;
    flex-flow: row wrap;
    justify-content: space-between;
}

.portfolio-element {
    height: 350px;
    width: 350px;
    overflow: hidden;
    position: relative;
    margin-bottom: 50px;
}

.portfolio-element .text {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    background: #0479A0;
    transform: translateX(100%);
    transition: 1s ease;
    pointer-events: none;
    padding-left: 10px;
    display: flex;
    flex-flow: column;

}

.portfolio-element h2 {
    color: #fff;
    font: 2em roboto-r, sans-serif;
    height: 20%;
}

.portfolio-element span {
    height: 50%;
    position: relative;
    padding-left: 60px;
    display: flex;
    flex-flow: column;
    justify-content: space-between;
}

.portfolio-element span::before {
    content: '';
    display: block;
    height: 100%;
    width: 1px;
    background: #fff;
    position: absolute;
    left: 30px;
    top: 0;
    z-index: 200;


}

.portfolio-element .text p {
    /*
    display: flex;
    flex-flow: column;
*/
}

.portfolio-element .text p:first-of-type {
    color: #F08117;
    font: 1.5em roboto-b, sans-serif;

}

.portfolio-element .text p:last-of-type {

    max-width: 100px;
}

.description-portfolio .text {
    transform: translateX(0%) !important;
    transition: 1s ease;
}


/* Projet Portfolio--------------*/

.single-portfolio {
    background: #010101;
}

.single-portfolio h1 {
    color: #fff;
    font: 3.5em yeseva, serif;
    max-width: 500px;
    margin: 0 0 30px 0px;
    height: 25%;
}

.single-portfolio a {
    font: 1em roboto-l, sans-serif;
}

#presentation-projet {
    width: 100%;
    height: 573px;
    display: flex;
    flex-flow: row wrap;
    margin: 100px 0 50px 0;
    ;

}

#presentation-gauche,
#presentation-droite {
    width: 50%;
}

#presentation-gauche {}

#presentation-droite {
    padding-left: 100px;
    height: 100%;

}

#presentation-contenu {
    padding-left: 50px;
    height: calc(75% - 30px);
    display: flex;
    flex-flow: column;
    justify-content: space-between;
    position: relative;
}

#presentation-contenu::before {
    content: '';
    display: block;
    height: 100%;
    width: 1px;
    background: #fff;
    position: absolute;
    left: 0;
    top: 0;
    z-index: 200;
}

#presentation-contenu > p:first-child {
    color: #0479A0;
    font: 2em roboto-b, sans-serif;
}

#categories-projet > p {
    color: #F59D41;
    font: 1.2em roboto-l, sans-serif;
}

#presentation-contenu > p:nth-of-type(2) {
    width: 500px;
    height: 150px;
    color: #fff;
    font: 1em roboto, sans-serif;
}


#contenu-projet {
    display: flex;
    flex-flow: column;
    align-items: center;
    width: 100%;
}

#contenu-projet > div {
    width: 1200px;
    background: #fff;
    display: flex;
    flex-flow: column;
    align-items: center;
    margin-bottom: 50px;
    padding-bottom: 50px;
}

#contenu-projet h2 {
    align-self: baseline;
}

#contenu-2 > p {
    margin-top: 30px;
}


/*Erreur 404 */

.error404 #normale {
    background: #010101;
    display: flex;
    justify-content: center;
}


.error404 .centre {
    max-width: 1000px;
    display: flex;
    margin: 200px 0;
    /* justify-content: center; */
    /* text-align: center; */
    align-items: center;
}

.error404 #normale h1 {
    /* margin-top: 75px; */
    color: #FFF !important;
    font: 6em roboto-b, sans-serif;
    /* text-align: left; */
    margin: 0;
}

.error404 #normale p {
    font: 2em roboto-r, sans-serif;
}

.error404 #normale p:first-of-type {
    color: #F08117;
    text-transform: uppercase;
}


.error404 #normale p:last-of-type {
    color: #74C3DE;
}


/* mentions légales */

#bloc-mentions {

    background: #F08117;
    display: flex;
    flex-flow: column;
    justify-content: center;
    align-items: flex-start;
    padding: 3em;
    width: auto;
    min-width: 450px;
    max-width: 600px;
    color: #fff;
}

#bloc-mentions h3 {
    margin-top: 2em;
}

.page-id-123 #normale {
    background: #010101;
    display: flex;
    justify-content: center;
    min-height: 100vh;
    align-items: center;
}

#mentions {
    width: 100%;
    text-align: center;
    color: #fff;
    font: 1em roboto-r, sans-serif;
}

#mentions a {
    color: #fff;
    font: 1em roboto-r, sans-serif;
    opacity: .6;
}
