/*
Theme Name: CMAC-THYSSEN
Theme URI: http://underscores.me/
Author: l'Agence secrète
Author URI: http://agencesecrete.com/
Description: Description
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: cmac_thyssen
Tags:

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned with others.

cmac_thyssen is based on Underscores http://underscores.me/, (C) 2012-2016 Automattic, Inc.
Underscores is distributed under the terms of the GNU GPL v2 or later.

Normalizing styles have been helped along thanks to the fine work of
Nicolas Gallagher and Jonathan Neal http://necolas.github.io/normalize.css/
*/

/*--------------------------------------------------------------
>>> TABLE OF CONTENTS:
----------------------------------------------------------------
# General
# Layout & builder
# Normalize
# Typography
# Elements
# Forms
# Navigation
	## Links
	## Menus
# Accessibility
# Alignments
# Clearings
# Widgets
# Content
	## Posts and pages
	## Comments
# Infinite scroll
# Media
	## Captions
	## Galleries
--------------------------------------------------------------*/

/*--------------------------------------------------------------
# Temporaire
--------------------------------------------------------------*/
.tg-texte p {
    font-size: 22px;
    font-weight: 300;
}
.menu-intranet {
    /*margin-top: 30px;*/
    display: block;
}

/*--------------------------------------------------------------
# Font-face - Monserrat 
--------------------------------------------------------------*/
@font-face {
    font-family: 'Montserrat';
    src: url('fonts/Montserrat-ExtraBold.ttf') format('truetype');
    font-weight: bold;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Montserrat';
    src: url('fonts/Montserrat-Bold.ttf') format('truetype');
    font-weight: bold;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Montserrat';
    src: url('fonts/Montserrat-Thin.ttf') format('truetype');
    font-weight: 100;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Montserrat';
    src: url('fonts/Montserrat-ExtraLight.ttf') format('truetype');
    font-weight: 200;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Montserrat';
    src: url('fonts/Montserrat-Regular.ttf') format('truetype');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Montserrat';
    src: url('fonts/Montserrat-Light.ttf') format('truetype');
    font-weight: 300;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Montserrat';
    src: url('fonts/Montserrat-Medium.ttf') format('truetype');
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Montserrat';
    src: url('fonts/Montserrat-SemiBold.ttf') format('truetype');
    font-weight: 600;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'Montserrat';
    src: url('fonts/Montserrat-Black.ttf') format('truetype');
    font-weight: 900;
    font-style: normal;
    font-display: swap;
}

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

::-moz-selection {
    background: #aed156;
    color: #fff!important;
}

::selection {
    background: #aed156;
    color: #fff!important;
}
html {
    scroll-behavior: smooth;
}

body {
    font-family: 'Roboto Mono', monospace;
    background-repeat: repeat!important;
    background-position: center top;
    overflow-x:hidden; 
}

[data-sr-id] { 
    visibility: hidden;
}

a {
    text-decoration: none!important;
}

h1, h2.entry-title {
    font-family: 'Roboto Mono', monospace;
    font-size: 6.25em;
    line-height: 1.1;
    letter-spacing: 6px;
    text-transform: uppercase;
    color: #000;
    font-weight: 400;
    padding: 10px 0;
    margin: 0;
    -webkit-transition: 0.3s;
    -moz-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
}

h2 {
    font-family: 'Montserrat', sans-serif;
    font-size: 6em;
    line-height: 1.1;
    font-weight: 800;
    margin-bottom: 15px;
    margin-top: 5px;
    letter-spacing: 2px;
    text-transform: uppercase;
    color: #000;
}

h3 {
    font-family: 'Montserrat', sans-serif;
    font-weight: 800;
    font-size: 2.6em;
    line-height: 1.3;
    letter-spacing: 4px;
    margin-top: 10px;
    margin-bottom: 0.8em;
    display: inline-block;
    
    color: #94C21F;
    -webkit-text-fill-color: transparent; /* Will override color (regardless of order) */
    -webkit-text-stroke-width: 2px;
    -webkit-text-stroke-color: #94C21F;
}

h4 {
    font-family: 'Roboto Mono', monospace;
    font-weight: 400;
    color: #000;
    text-transform: uppercase;
    font-size: 2.8em;
    letter-spacing: 4px;
    line-height: 1.2;
    margin-top: 10px;
    margin-bottom: 0.8em;
}

h5 {
    font-family: 'Montserrat', sans-serif;
    color: #94C21F;
    font-size: 1.6em;
    line-height: 1.2em;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: 1px;
    margin: 0;
    padding: 5px 0;
    margin-top: 10px;
}

h6 {
    font-family: 'Montserrat', sans-serif;
    color: #4FB030;
    font-size: 1.6em;
    line-height: 1.2em;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0px;
    margin-top: 0;
    margin-bottom: 0.4em;
}

/*.entry-content a:not([class]) {
    padding: 2px;

    background-color: #94C21F;
    background-image: -webkit-gradient(linear, left center, right center, from(#94C21F), to(#4FB030));
    background-image: -webkit-linear-gradient(left, #94C21F, #4FB030);
    background-image: -moz-linear-gradient(left, #94C21F, #4FB030);
    background-image: -o-linear-gradient(left, #94C21F, #4FB030);
    background-image: linear-gradient(to right, #94C21F , #4FB030);  
    
    background-clip: border-box;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    -webkit-box-decoration-break: clone;
    box-decoration-break: clone;
}

.entry-content a:not([class]):hover {
    -webkit-text-fill-color: #fff;
    -webkit-background-clip: border-box;
}*/

ul:not([class]) {
    list-style: none;
    padding-left: 0.7em;
    margin-left: 0.7em;
}

ul:not([class]) li {
    position: relative;
    padding: 0.4em 0;
    font-size: 18px;
}

ul:not([class]) li::before {
	content: "";
	display: block;
	position: absolute;
	left: 0;
	top: calc(1.4em - 5px);
	width: 5px;
	height: 5px;
	margin-left: -1.4em;
	background-color: #94C21F;
	border-radius: 100%;
}

blockquote {
    font-style: italic;
    color: #999;
    border-left: solid 5px #343d98;
    padding-left: 20px;
}

.textwidget {
    padding: 0px 20px;
}

.fa {
    color: #fff!important;
    font-size: 1.4em!important;
    border: 0!important;
    -webkit-transition: 0.3s;
    -moz-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
}

.break {
    width: 100%;
    display: table;
}

.social-media-button-container {
    -webkit-transition: 0.3s;
    -moz-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
}

.social-media-button-container:hover {
    -webkit-transition: 0.5s;
    -moz-transition: 0.5s;
    -o-transition: 0.5s;
    transition: 0.5s;
}

.absolute {
    position: absolute
}

.relative {
    position: relative;
}

.menu-menu-principale-container .current-menu-item a {
    /*color: #aaa!important;*/
}

.widget_sow-editor h3.widget-title {
    border-bottom: 0!important;
    font-weight: 300!important;
    font-size: 14px!important;
    margin-bottom: 10px!important;
    color: #000;
    line-height: 1.3em!important;
}

.contour {
    border: solid 10px #c7c8ca!important;
    padding: 40px!important;
}

.vertical-text {
    transform: rotate(-180deg);
    writing-mode: vertical-lr; /* Vertical - Left to Right */
}

/*--------------------------------------------------------------
# Masonry - Produit et equipement singulier
--------------------------------------------------------------*/
.masonry { 
    column-count: 2;
    column-gap: 1em;
    padding-bottom: 100px;
}

.masonry .item {
    display: inline-block;
    margin: 0 0 1em;
    padding: 0 40px;
    width: 100%;
}
.masonry:last-child {
    padding-bottom: 200px!important;
}


/*--------------------------------------------------------------
# Themes
--------------------------------------------------------------*/

.dark-theme {
    background-color: #05080D;
    color:#fff;
}
.dark-theme.alt {
    background-color: transparent;
}

.gradient-desert {
    background: rgb(248,220,173);
    background: -moz-linear-gradient(90deg, rgba(248,220,173,1) 0%, rgba(213,187,154,1) 100%);
    background: -webkit-linear-gradient(90deg, rgba(248,220,173,1) 0%, rgba(213,187,154,1) 100%);
    background: linear-gradient(90deg, rgba(248,220,173,1) 0%, rgba(213,187,154,1) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#f8dcad",endColorstr="#d5bb9a",GradientType=1);
}

.gradient-top-bottom {
    background-color: #175944;
    background-image: -webkit-gradient(linear, top center, bottom center, from(#175944), to(#040509));
    background-image: -webkit-linear-gradient(top, #175944, #040509);
    background-image: -moz-linear-gradient(top, #175944, #040509);
    background-image: -o-linear-gradient(top, #175944, #040509);
    background-image: linear-gradient(to bottom, #175944 , #040509);   
}

.dark-theme h1,
.dark-theme h2,
.dark-theme h4,
.dark-theme h5,
.dark-theme h6,
.dark-theme p,
.dark-theme ul,
.dark-theme span,
.dark-theme a,
.dark-theme a:visited,
.dark-theme input[type="checkbox"]:checked + label,
.dark-theme input[type="radio"]:checked + label,
.gradient-top-bottom h1,
.gradient-top-bottom h2,
.gradient-top-bottom h4,
.gradient-top-bottom h5,
.gradient-top-bottom h6,
.gradient-top-bottom p,
.gradient-top-bottom ul,
.gradient-top-bottom span,
.gradient-top-bottom a,
.gradient-top-bottom a:visited,
.gradient-top-bottom input[type="checkbox"]:checked + label,
.gradient-top-bottom input[type="radio"]:checked + label {
    color: #fff;
}

.dark-theme a:hover,
.dark-theme a:focus,
.dark-theme a:active,
.gradient-top-bottom a:hover,
.gradient-top-bottom a:focus,
.gradient-top-bottom a:active {
    color: #fff;
}

.dark-theme input[type="text"],
.dark-theme input[type="email"],
.dark-theme input[type="url"],
.dark-theme input[type="password"],
.dark-theme input[type="search"],
.dark-theme input[type="number"],
.dark-theme input[type="tel"],
.dark-theme input[type="range"],
.dark-theme input[type="date"],
.dark-theme input[type="month"],
.dark-theme input[type="week"],
.dark-theme input[type="time"],
.dark-theme input[type="datetime"],
.dark-theme input[type="datetime-local"],
.dark-theme input[type="color"],
.dark-theme textarea,
.dark-theme select,
.gradient-top-bottom input[type="text"],
.gradient-top-bottom input[type="email"],
.gradient-top-bottom input[type="url"],
.gradient-top-bottom input[type="password"],
.gradient-top-bottom input[type="search"],
.gradient-top-bottom input[type="number"],
.gradient-top-bottom input[type="tel"],
.gradient-top-bottom input[type="range"],
.gradient-top-bottom input[type="date"],
.gradient-top-bottom input[type="month"],
.gradient-top-bottom input[type="week"],
.gradient-top-bottom input[type="time"],
.gradient-top-bottom input[type="datetime"],
.gradient-top-bottom input[type="datetime-local"],
.gradient-top-bottom input[type="color"],
.gradient-top-bottom textarea,
.gradient-top-bottom select {
    color: #fff!important;
    border-bottom-color: #fff;
}

.dark-theme input[type="checkbox"] + label::before,
.dark-theme input[type="radio"] + label::before,
.gradient-top-bottom input[type="checkbox"] + label::before,
.gradient-top-bottom input[type="radio"] + label::before {
    border-color: #fff;
}

.light-theme.light-theme-alt {
    background-color: #f5f5f5;
    margin-top:-1px;
}

.light-theme {
    background-color: #fff;
    color: #000;
}

.light-theme h1 {
    color: #000;
}

.light-theme h2 {
    color: #000;
}

.light-theme h4 {
    color: #000;
}

.light-theme h5 {
    color: #94C21F;
}

.light-theme h6 {
    color: #4FB030;
}

.light-theme p,
.light-theme ul,
.light-theme span,
.light-theme a,
.light-theme a:visited,
.light-theme input[type="checkbox"]:checked + label,
.light-theme input[type="radio"]:checked + label {
    color: #000;
}

.light-theme input[type="text"],
.light-theme input[type="email"],
.light-theme input[type="url"],
.light-theme input[type="password"],
.light-theme input[type="search"],
.light-theme input[type="number"],
.light-theme input[type="tel"],
.light-theme input[type="range"],
.light-theme input[type="date"],
.light-theme input[type="month"],
.light-theme input[type="week"],
.light-theme input[type="time"],
.light-theme input[type="datetime"],
.light-theme input[type="datetime-local"],
.light-theme input[type="color"],
.light-theme textarea,
.light-theme select {
    color: #000!important;
    border-bottom: 2px solid #05080D;
}

.light-theme input[type="checkbox"] + label::before,
.light-theme input[type="radio"] + label::before {
	border-color: #000;
}

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

a.btn,
input[type="reset"],
input[type="submit"],
.gform_wrapper input[type="submit"] {
    position: relative;
	padding: 0;
	margin-top: 20px;
	margin-bottom: 10px;
	margin-right: 10px;
	display: inline-block;
	font-family: 'Roboto Condensed', sans-serif;
	font-weight: 700;
	padding: 15px 30px;
	font-size: 0.7em!important;
	border-style: solid;
	border-width: 1px;
	border-color: transparent;
	border-radius: 0;
	text-decoration: none;
	text-align: center!important;
	text-transform: uppercase;
	letter-spacing: 8px;
    text-indent: 8px;
	cursor: pointer;
	-webkit-appearance: none;
    
	-webkit-transition: 0.3s;
	-moz-transition: 0.3s;
	-o-transition: 0.3s;
	transition: 0.3s;
}

a.btn-fleche,
a.btn-fleche:visited {
    background-color: transparent;
    color: #000;
    padding-left: 60px;
    padding-right: 130px;
}

.dark-theme a.btn-fleche,
.dark-theme a.btn-fleche:visited,
.gradient-top-bottom a.btn-fleche,
.gradient-top-bottom a.btn-fleche:visited {
    color: #fff;
}

.light-theme a.btn-fleche,
.light-theme a.btn-fleche:visited {
    color: #000;
}

a.btn-fleche::before {
	content: "";
	display: block;
	position: absolute;
	top: 50%;
	left: 0;
	width: 50px;
	height: 3px;
	background-color: #94C21F;
    
    border-left: 16px solid #000;
    padding: 1px 0;
    background-clip: content-box;
    
    -webkit-transition: 0.3s;
	-moz-transition: 0.3s;
	-o-transition: 0.3s;
	transition: 0.3s;
}
.fleche::before {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    left: 0;
    width: 50px;
    height: 3px;
    background-color: #94C21F;
    
    border-left: 16px solid #000;
    padding: 1px 0;
    background-clip: content-box;
    
    -webkit-transition: 0.3s;
    -moz-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
}

.dark-theme a.btn-fleche::before,
.gradient-top-bottom a.btn-fleche::before {
    background-color: #fff;
    border-color: #94C21F;
}

.light-theme a.btn-fleche::before {
    background-color: #000;
    border-color: #94C21F;
}

a.btn-fleche::after {
    content: "";
	display: block;
	position: absolute;
	top: calc(50% - 10px);
	right: 0;
	width: 120px;
	height: 20px;
	background-image: url("/../wp-content/themes/cmac-thyssen/images/icone-fleche-cmac-thyssen.svg");
	background-size: auto;
	background-repeat: no-repeat;
    background-position: center right;
    
    -webkit-transition: 0.3s;
	-moz-transition: 0.3s;
	-o-transition: 0.3s;
	transition: 0.3s;
}

a.btn-fleche-alt::before {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    left: 0;
    width: 50px;
    height: 3px;
    background-color: #94C21F;
    
    border-left: 16px solid #000;
    padding: 1px 0;
    background-clip: content-box;
    
    -webkit-transition: 0.3s;
    -moz-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
}

.dark-theme a.btn-fleche::after,
.gradient-top-bottom a.btn-fleche::after {
    background-image: url("/../wp-content/themes/cmac-thyssen/images/icone-fleche-alt-cmac-thyssen.svg");
}

.light-theme a.btn-fleche::after {
    content: "";
    display: block;
    position: absolute;
    top: calc(50% - 10px);
    right: 0;
    width: 120px;
    height: 20px;
    background-image: url(/../wp-content/themes/cmac-thyssen/images/icone-fleche-noir-cmac-thyssen.svg)!important;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center right;
    -webkit-transition: 0.3s;
    -moz-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
}

a.btn-fleche:hover,
a.btn-fleche:focus,
a.btn-fleche:active {
    padding-left: 130px;
    padding-right: 60px;
}

a.btn-fleche:hover::before,
a.btn-fleche:focus::before,
a.btn-fleche:active::before {
    width: 120px;
}

a.btn-fleche:hover::after,
a.btn-fleche:focus::after,
a.btn-fleche:active::after {
    width: 50px;
}

a.btn-blanc,
a.btn-blanc:visited,
.dark-theme .gform_wrapper input[type="submit"],
.dark-theme .gform_wrapper input[type="submit"]:visited,
.gradient-top-bottom .gform_wrapper input[type="submit"],
.gradient-top-bottom .gform_wrapper input[type="submit"]:visited {
    background-color: #fff;
    color: #000;
    border-color: #fff;
}

a.btn-blanc:hover,
a.btn-blanc:focus,
a.btn-blanc:active,
.dark-theme .gform_wrapper input[type="submit"]:hover,
.dark-theme .gform_wrapper input[type="submit"]:focus,
.dark-theme .gform_wrapper input[type="submit"]:active,
.gradient-top-bottom .gform_wrapper input[type="submit"]:hover,
.gradient-top-bottom .gform_wrapper input[type="submit"]:focus,
.gradient-top-bottom .gform_wrapper input[type="submit"]:active {
    background-color: transparent;
    color: #fff;
}

a.btn-noir,
a.btn-noir:visited,
.gform_wrapper input[type="submit"],
.gform_wrapper input[type="submit"]:visited,
.light-theme .gform_wrapper input[type="submit"],
.light-theme .gform_wrapper input[type="submit"]:visited {
    background-color: #000;
    color: #fff;
    border-color: #000;
}

a.btn-noir:hover,
a.btn-noir:focus,
a.btn-noir:active,
.gform_wrapper input[type="submit"]:hover,
.gform_wrapper input[type="submit"]:focus,
.gform_wrapper input[type="submit"]:active,
.light-theme .gform_wrapper input[type="submit"]:hover,
.light-theme .gform_wrapper input[type="submit"]:focus,
.light-theme .gform_wrapper input[type="submit"]:active {
    background-color: transparent;
    color: #000;
}

a.btn-block {
    display: block;
    margin-right: 0;
    width: 100%;
}

/*--------------------------------------------------------------
# Diagonal border
--------------------------------------------------------------*/

.diagonal-border {
	position: relative;
	background-clip: content-box;
    z-index: 0;
}

.diagonal-border::before {
    content: "";
    display: block;
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    background: inherit;
    z-index: -1;
}

.diagonal-border.db-top-up,
.diagonal-border.db-top-down {
    padding-top: 200px;
}

.diagonal-border.db-bottom-up,
.diagonal-border.db-bottom-down {
    padding-bottom: 200px;
}

.diagonal-border.db-top-up::before {
    -webkit-clip-path: polygon(100% 0px, 0px 200px, 0% 100%, 100% 100%);
    clip-path: polygon(100% 0px, 0px 200px, 0% 100%, 100% 100%);
}

.diagonal-border.db-top-down::before {
    -webkit-clip-path: polygon(100% 200px, 0 0, 0% 100%, 100% 100%);
    clip-path: polygon(100% 200px, 0 0, 0% 100%, 100% 100%);
}

.diagonal-border.db-bottom-up::before {
    -webkit-clip-path: polygon(0 0, 100% 0, 100% calc(100% - 200px), 0% 100%);
    clip-path: polygon(0 0, 100% 0, 100% calc(100% - 200px), 0% 100%);
}

.diagonal-border.db-bottom-down::before {
    -webkit-clip-path: polygon(0 0, 100% 0, 100% 100%, 0% calc(100% - 200px));
    clip-path: polygon(0 0, 100% 0, 100% 100%, 0% calc(100% - 200px));
}

.diagonal-border.db-top-up.db-bottom-up::before {
    -webkit-clip-path: polygon(0 200px, 100% 0, 100% calc(100% - 200px), 0 100%);
    clip-path: polygon(0 200px, 100% 0, 100% calc(100% - 200px), 0 100%);
}

.diagonal-border.db-top-up.db-bottom-down::before {
    -webkit-clip-path: polygon(0 200px, 100% 0, 100% 100%, 0 calc(100% - 200px));
    clip-path: polygon(0 200px, 100% 0, 100% 100%, 0 calc(100% - 200px));
}

.diagonal-border.db-top-down.db-bottom-up::before {
    -webkit-clip-path: polygon(0 0, 100% 200px, 100% calc(100% - 200px), 0 100%);
    clip-path: polygon(0 0, 100% 200px, 100% calc(100% - 200px), 0 100%);
}

.diagonal-border.db-top-down.db-bottom-down::before {  
    -webkit-clip-path: polygon(0 0, 100% 200px, 100% 100%, 0 calc(100% - 200px));
    clip-path: polygon(0 0, 100% 200px, 100% 100%, 0 calc(100% - 200px));
}

.diagonal-border.db-bottom-up + .diagonal-border.db-top-up,
.diagonal-border.db-bottom-down + .diagonal-border.db-top-down {
    margin-top: -205px!important;
}
/*--------------------------------------------------------------
## Overlap
--------------------------------------------------------------*/

.overlap {
    display: block;
    position: relative;
    z-index: 1;
}

.overlap.no-origin > *:only-child {
    position: absolute;
}

.overlap.to-bottom-small {
    top: 100px;
}
.overlap.to-bottom-small.no-gap {
    margin-top: -100px;
}

.overlap.to-bottom-medium {
    top: 200px;
}
.overlap.to-bottom-medium.no-gap {
    margin-top: -200px;
}

.overlap.to-bottom-large {
    top: 300px;
}
.overlap.to-bottom-large.no-gap {
    margin-top: -300px;
}

/* --- */

.overlap.to-top-small {
    bottom: 100px;
}
.overlap.to-top-small.no-gap {
    margin-bottom: -100px;
}

.overlap.to-top-medium {
    bottom: 200px;
}
.overlap.to-top-medium.no-gap {
    margin-bottom: -200px;
}

.overlap.to-top-large {
    bottom: 300px;
}
.overlap.to-top-large.no-gap {
    margin-bottom: -300px;
}

/* --- */

.overlap.to-left-small {
    right: 100px;
}
.overlap.to-left-small.no-gap {
    margin-right: -100px;
}

.overlap.to-left-medium {
    right: 200px;
}
.overlap.to-left-medium.no-gap {
    margin-right: -200px;
}

.overlap.to-left-large {
    right: 300px;
}
.overlap.to-left-large.no-gap {
    margin-right: -300px;
}

/* --- */

.overlap.to-right-small {
    left: 100px;
}
.overlap.to-right-small.no-gap {
    margin-left: -100px;
}

.overlap.to-right-medium {
    left: 200px;
}
.overlap.to-right-medium.no-gap {
    margin-left: -200px;
}

.overlap.to-right-large {
    left: 300px;
}
.overlap.to-right-large.no-gap {
    margin-left: -300px;
}

/* XXX */
.ligne {
    height: 1px;
    width: 100%;
    background-color: #fff;
}


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

.full {
    margin: auto !important;
    margin-right: auto!important;
    margin-left: auto!important;
}

.boxed {
    max-width: 1250px;
    margin: auto !important;
    margin-right: auto!important;
    margin-left: auto!important;
}

.content-area {
    /*margin-top: 40px;
    padding: 30px 30px 0 30px;*/
    padding-top: 30px;
}

.primaire {
    float: left;
    width: 75%;
    display: table;
}

.secondaire {
    float: left;
    width: 25%;
    padding: 0 20px;
}

.gauche {
    text-align: left;
}

.droite {
    text-align: right;
}

.centre,
.center {
    text-align: center;
}

.break {
    display: table;
    width: 100%;
}

.layout-flex {
    display: flex!important;
    flex-direction: row;
    flex-wrap: wrap;
    box-sizing: border-box;
}

.layout-flex > * {
    padding-right: 20px;
}

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

.layout-flex.flex-direction-column {
    flex-direction: column;
}

.layout-flex.flex-wrap-nowrap {
    flex-wrap: nowrap;
}

.layout-flex.align-items-center {
    align-items: center;
}

.layout-flex.align-items-stretch {
    /*height: 100%;*/
    align-items: stretch;
}

.layout-flex.align-items-stretch .boxed {
    height: 100%;
}

.layout-flex.justify-content-flex-start {
    justify-content: flex-start;
}

.layout-flex.justify-content-center {
    justify-content: center;
}

.layout-flex.justify-content-flex-end {
    justify-content: flex-end;
}

.layout-flex.flex-direction-row-reverse {
    flex-direction: row-reverse;
}

.layout-flex.justify-content-space-around {
    justify-content: space-around;
}

.layout-flex.justify-content-space-between {
    justify-content: space-between;
}

.layout-flex.justify-content-evenly {
    justify-content: space-evenly;
}

.align-self-flex-start {
    align-self: flex-start;
}

.align-self-center {
    align-self: center;
}

.align-self-flex-end {
    align-self: flex-end;
}

.layout-max {
    -webkit-flex: 1 1 auto; /* Safari 6.1+ */
    -ms-flex: 1 1 auto; /* IE 10 */ 
    
    flex-grow: 1;
    flex-shrink: 1;
    flex-basis: auto;
}

.layout-min {
    -webkit-flex: 0 0 auto; /* Safari 6.1+ */
    -ms-flex: 0 0 auto; /* IE 10 */ 
    
    flex-grow: 0;
    flex-shrink: 0;
    flex-basis: auto;
}

.layout-fit {
    flex:1;
}

.layout-fit-1 {
    flex:1;
}
.layout-fit-2 {
    flex:2;
}

.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%;
}

div.boxed.half-left {
    margin-left: calc(((100vw - 1250px) / 2) - 10px)!important;
}

div.boxed.half-right {
    margin-right: calc(((100vw - 1250px) / 2) - 10px)!important;
}

.separateur {
    height: 40px;
    margin-bottom: 20px;
    background-image: url("");
    background-repeat: no-repeat;
    background-position: center center;
    border-bottom: dotted 1px #cda96a;
    width: 100%;
    display: table;
    clear: all;
}

.so-panel {
    margin-bottom: 0!important;
    /*padding: 0 15px!important;*/
}

.panel-grid {
    margin-top:-1px;
    margin-right: 0px!important;
    margin-left: 0px!important;
    padding-left: 0px!important;
    padding-right: 0px!important;
}

.panel-grid-cell {
    padding-left: 0px!important;
    padding-right: 0px!important;
}

.textwidget {
    padding: 0px 0px;
}

.entry-content {
    margin: 0em 0 2em 0!important;
}

.position-relative {
    position: relative;
}

.menu-item a {
    cursor: pointer;
}


/*--------------------------------------------------------------
# Entête & menu
--------------------------------------------------------------*/

#masthead {
    position: relative;
    z-index: 10000;
}

#masthead .reseaux_sociaux_wrap {
    float: none;
    position: fixed;
    left: 20px;
    bottom: 20px;
    z-index: -1;
}

#masthead .reseaux_sociaux_wrap .os_single {
    display: block;
}

#masthead .reseaux_sociaux_wrap .os_single a {
    margin: 10px 0;
}

#masthead.menu-open .nav_wrap.fixed {
    background-color: rgba(3,61,44,0);
}

.nav_wrap.slideDown {
    animation: slideDown 0.3s;
    -o-animation: slideDown 0.3s;
    -moz-animation: slideDown 0.3s;
    -webkit-animation: slideDown 0.3s;
}

.nav_wrap.fixed {
    background-color: rgba(3,61,44,0.9);
    -webkit-transition: 0.3s;
    -moz-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
}

@keyframes slideDown {
	0% {
		transform: translateY(-100px);
	}
	100% {
		transform: translateY(0);
	}
}

.nav_wrap.fixed {
    position: fixed;
    top: 0;
}

.nav_wrap {
    pointer-events: none;
    position: absolute;
    width: 100%;
    padding: 20px;
}

nav {
    /*background-color: #000;*/
    text-align: left;
}

.menu-plus {
    background-color: transparent;
    border-radius: 50%;
    width: 10px;
    height: 10px;
    align-items: center;
    justify-content: center;
    padding: 10px;
    color: #94C21F;
    position: absolute;
    top: 15px;
    right: 0;
    font-size: 1em;
    border: solid 1px #94C21F;
    display: none;
    cursor: pointer;
}


.logo_wrap {
    pointer-events: auto;
}

#site-menu {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(3,61,44,0.9);
}

#site-menu .menu-wrapper {
    height: 100%;
    position: relative;
    padding: 100px 10%;
    
    display: flex;
    justify-content: center;
    flex-direction: column;
}

.menu-button {
    height: 60px;
    padding: 10px;
    outline: 0;
	display: flex;
    justify-content: center;
    align-items: center;
	background-color: transparent;
	border: none;
	-webkit-appearance: none;
    pointer-events: auto;
}

.menu-button-container {
    display: inline-block;
}

.menu-button:hover #bar-2 {
    width: 30px;
}

.menu-button:hover #bar-3 {
    width: 20px;
}
.menu-button.toggled .bar {
    width: 40px!important;
}

.menu-button .menu-button-container .bar {
    width: 40px;
    height: 2px;
    background-color: #fff;
    margin-bottom: 10px;
    
    -webkit-transition: 0.2s;
    -moz-transition: 0.2s;
    -o-transition: 0.2s;
    transition: 0.2s;
}

.menu-button:not(.toggled).alt .menu-button-container .bar {
    background-color: #000;
}

.menu-button .menu-button-container .bar:last-child {
    margin-bottom: 0;
}

.menu-button.toggled .menu-button-container #bar-1 {
	transform: rotate(45deg);
	margin-bottom: -2px;
}

.menu-button.toggled .menu-button-container #bar-2 {
	transform: rotate(-45deg);
	margin-bottom: 0;
}

.menu-button.toggled .menu-button-container #bar-3 {
    display: none;
}

.main-navigation ul li a {
	font-family: 'Montserrat', sans-serif;
	font-weight: 800;
    font-size: 3em;
	letter-spacing: 4px;
    line-height: 1.2;
	padding: 15px;
    
    color: #94C21F;
	-webkit-text-fill-color: transparent;
	-webkit-text-stroke-width: 2px;
	-webkit-text-stroke-color: #94C21F;
	
	-webkit-transition: 0.3s;
	-moz-transition: 0.3s;
	-o-transition: 0.3s;
	transition: 0.3s;
}

.main-navigation ul li a:hover {
    -webkit-text-fill-color: #94C21F;
}

.main-navigation ul li.gris a {
    color: #b3b3b3!important
}

.main-navigation ul.sub-menu > li > a {
    position: relative;
    font-family: 'Roboto Mono', monospace;
    font-size: 1.2em;
    font-weight: 400;
    text-transform: uppercase;
    letter-spacing: 6px;
    padding: 10px;
    display: inline-block;
    
    color: #fff;
    -webkit-text-fill-color: #fff;
    -webkit-text-stroke-width: 0;
    -webkit-text-stroke-color: transparent;
    
    -webkit-transition: 0.3s;
    -moz-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
}

.main-navigation ul.sub-menu > li > a::after {
	content: "";
	display: block;
	position: absolute;
	top: calc(50% - 10px);
	left: calc(100% + 30px);
	width: 87px;
	height: 13px;
	background-image: url("/wp-content/themes/cmac-thyssen/images/icone-fleche-cmac-thyssen.svg");
	background-size: cover;
    background-position: center right;
	background-repeat: no-repeat;
	opacity: 0;
    
	-webkit-transition: 0.5s;
	-moz-transition: 0.5s;
	-o-transition: 0.5s;
	transition: 0.5s;
}

.main-navigation ul.sub-menu > li > a:hover {
    padding-left: 30px;
}

.main-navigation ul.sub-menu > li > a:hover::after {
    opacity: 1;
}

.menu-top-container ul {
    margin: 0;
    padding: 0;
}

.menu-top-container ul li {
    list-style-type: none;
    float: left;
    padding: 10px;
    border-right: solid 1px #fff;
}

.menu-top-container ul li a {
    font-family: 'Nunito', sans-serif;
    font-weight: 500;
    letter-spacing: 0px;
    color: #fff;
    padding: 10px 15px;
    text-transform: uppercase;
    font-size: 14px;
}

.menu-portail-wrap {
    height: 100vh;
    min-height: 900px;
    position: absolute;
    right:34px;
    top: 0;
    bottom: 0;
    display:flex;
    pointer-events: none;
    z-index: 9;
}

.menu-right {
    display: flex;
    align-content: center;
    justify-content: center;
    flex-direction: column;
}

.menu-portail-wrap a.btn-portail {
    border: solid 1px #94c429;
    padding: 20px 10px;
    margin-top: 10px;
    text-transform: uppercase;
    font-family: 'Montserrat', sans-serif;
    font-size: 0.6em;
    line-height: 1;
    font-weight: 300;
    letter-spacing: 4px;
    color: #94c429;
    pointer-events: all;
    -webkit-transition: -webkit-transform 0.7s;
    -moz-transition: -moz-transform 0.7s;
    -o-transition: -o-transform 0.7s;
    transition:0.7s;
}
.menu-portail-wrap a.btn-portail:hover {
    border: solid 1px #94c429;
    color: #fff;
    background-color: #94c429;
    -webkit-transition: -webkit-transform 0.3s;
    -moz-transition: -moz-transform 0.3s;
    -o-transition: -o-transform 0.3s;
    transition:0.3s;
}


.site-branding {
    height: 430px;
    background-repeat: no-repeat;
    background-position: right bottom;
}

#logo {
    /*display: none;*/
    width: 60%;
    min-width: 150px;
    margin: 0;
    padding: 10px 0px;
    box-sizing: border-box;
    -webkit-transition: -webkit-transform 0.3s;
    -moz-transition: -moz-transform 0.3s;
    -o-transition: -o-transform 0.3s;
    transition: transform 0.3s;
}

#logo:hover {
    -webkit-transform: scale(1.1);
    /*Chrome, Opera 15+, Safari 3.1+ */
    -ms-transform: scale(1.1);
    /* IE 9 */
    transform: scale(1.1);
    /* Firefox 16+, IE 10+, Opera */
    -webkit-transition: 0.3s;
    -moz-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
}

.logo_text_wrap {
    -webkit-transition: 0.3s;
    -moz-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
}

.logo_text_wrap:hover h1 {
    color: #bbb;
    -webkit-transition: 0.2s;
    -moz-transition: 0.2s;
    -o-transition: 0.2s;
    transition: 0.2s;
}

.menu {
    list-style: none;
    margin: 0;
    padding-left: 0!important;
}

.menu a {
    color: #000;
}

.sidebar .menu ul li {
    width: 100%;
    text-align: center;
}

h1.entry-title, h1.page-title, h2.entry-title {
    padding: 40px 20px;
}

#menu-arrow {
    display: flex;
    position: fixed;
    justify-content: center;
    align-items: center;
    
    width: 42px;
    height: 42px;
    
    bottom: 10px;
    right: 10px;
    
    visibility: hidden!important;
    
    background-color: rgba(255, 255, 255, 0.8);
    border-radius: 100%;
    
    z-index: 1000;
}

#menu-arrow:hover {
    cursor: pointer;
}

#menu-arrow .svg-inline--fa {
    font-size: 1.6em;
}


/*--------------------------------------------------------------
# Tableau - Prix et reconnaissances
--------------------------------------------------------------*/
.so-widget-tableau-reconnaissance {
    width: 100%;
    max-width: 1500px;
    margin: auto;
    padding: 0 30px;
}
.so-widget-tableau-reconnaissance .layout-flex {
    border-top:solid 1px #fff;
    border-right:solid 1px #fff;
    border-left:solid 1px #fff;
}
.so-widget-tableau-reconnaissance .layout-flex .layout-33 {
    border-right:solid 1px #fff;
    border-bottom:solid 1px #fff;
    padding: 20px;
    font-size: 1.1em;
}
.so-widget-tableau-reconnaissance .layout-flex .layout-33:last-child {
    border-right:solid 0px #fff;
}
.so-widget-tableau-reconnaissance .tableau-annee {
    font-family: 'Nobel', sans-serif;
    font-size: 2.2em;
    font-weight: 800;
    letter-spacing: 4px;
    line-height: 0;
    text-transform: uppercase;
    background-color: #fff;
    color: #195140;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 50px;
}
.so-widget-tableau-reconnaissance .space {
    height: 20px;
}
#tableau-prix .annee-2012:nth-child(2) {
    background-color: red;
}


/*--------------------------------------------------------------
# Nav et Reseaux sociaux
--------------------------------------------------------------*/

.reseaux_sociaux_wrap {
    float: right;
    line-height: 0;
}

.os_single {
    display: inline-block;
    line-height: 1;

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

.os_single:hover {
    -webkit-transform: scale(1.1);
    /*Chrome, Opera 15+, Safari 3.1+ */
    -ms-transform: scale(1.1);
    /* IE 9 */
    transform: scale(1.1);
    /* Firefox 16+, IE 10+, Opera */
}

.os_single a {
	display: block;
	width: 40px;
	height: 40px;
	line-height: 40px;
    text-align: center;
    border: 1px solid #94C21F;
	border-radius: 100%;
	color: #4FB030;
    margin: 10px 5px; 
    -webkit-transition: 0.7s;
    -moz-transition: 0.7s;
    -o-transition: 0.7s;
    transition: 0.7s;
}

.os_single a:hover {
    -ms-transform: scale(1.2);
    -webkit-transform: scale(1.2);
    transform: scale(1.2);
    -webkit-transition: 0.3s;
    -moz-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
}


.os_single a::before {
    content: none;
}

.os_single a:hover,
.os_single a:focus,
.os_single a:visited {
    color: #4FB030;
}

.os_single svg {
    font-size: 24px;
    height: 40px;
}

/*--------------------------------------------------------------
# Frontpage - Introduction - Accueil
--------------------------------------------------------------*/
.language {
    margin-top:5px;
    margin-right:10px;
}
.language .wpml-ls-current-language {
    display:none!important;
}
.language .wpml-ls-display {
    display:none!important;
}
.language ul li::before{
    display:none!important;
}
.language ul li a {
    color: #4FB030;
    line-height: 1em;
    padding:5px;
    border:solid 1px #4FB030;
    pointer-events: auto;
    transition:0.3s;
}
.language ul li a:hover {
    color: #fff;
    background-color:#4FB030;
    transition:0.3s;
}


/*--------------------------------------------------------------
# Frontpage - Introduction - Accueil
--------------------------------------------------------------*/
.home .content-area {
    padding-top: 0px;
}
#view-intro {
    position: relative;
    width: 100%;
    height: 120vh;
    min-height: 1050px;
    display: flex;
    flex-direction:column;
    justify-content: center;
    align-items: center;
    overflow: hidden;
}
#view-intro::before {
    background-image: url(/wp-content/themes/cmac-thyssen/images/foret-verte-cmac-thyssen-3.jpg);
    background-repeat: no-repeat;
    background-position: center bottom;
    background-size: cover;
}
#view-intro .intro-titre-wrap {
    /*max-width: 1000px;*/
}
#view-intro .intro-titre {
    font-family: 'Roboto Mono', monospace;
    font-size: 5.4em;
    font-weight: 400;
    line-height: 1;
    letter-spacing: 6px;
    text-align: center;
    text-transform: uppercase;
    color: #fff;
    padding: 10px 0;
    margin: 60px 0;
    max-width: 1090px;
}
#view-intro .intro-enonce-front {
    margin-left: 0;
    text-align: left;
    margin-top: 60px;
    max-width: 230px;
    color: #fff;
}
#view-intro .layout-50{
    padding-right: 0;
}
#view-plan-1 {
    position: absolute;
    top: -40px;
    right: -25px;
    overflow: hidden;
    width: 70%;
    max-width: 1300px;
    pointer-events: none;
}
#view-plan-2 {
    position: absolute;
    top: 100px;
    left: : -100px;
    overflow: hidden;
    width: 1000px;
    pointer-events: none;
    display: none;
}
#view-hemisphere {
    height: 20vh;
    min-height: 900px;
}
#view-hemisphere::before {
    background-image: url(/wp-content/themes/cmac-thyssen/images/hemisphere-cmac-thyssen-2.png);
    background-repeat: no-repeat;
    background-position: center top;
    background-size: cover;
    margin-top: -10px;
}
.intro-boussole {
    position: absolute;
    width: 300px;
    top: -370px;
    left: -145px;
}
.intro-boussole img {
    transform-origin: center 64.6%;
}
.intro-boussole-description {
    max-width: 600px;
    font-size: 22px;
}
.boussole-ligne-verte {
    -ms-transform-origin: 50% 50%;
    -webkit-transform-origin: 50% 50%;
    transform-origin: 50% 50%;
    bottom: 152px;
    position: absolute;
    line-height: 0;
    -webkit-animation: boussole 5s linear infinite;
    -moz-animation: boussole 5s linear infinite;
    -ms-animation: boussole 5s linear infinite;
    -o-animation: boussole 5s linear infinite;
    animation: boussole 5s linear infinite;
}

@-webkit-keyframes boussole  {
  from {
    -webkit-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  to {
    -webkit-transform: rotate(360deg);
    -o-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}
@keyframes boussole {
  from {
    -ms-transform: rotate(0deg);
    -moz-transform: rotate(0deg);
    -webkit-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  to {
    -ms-transform: rotate(360deg);
    -moz-transform: rotate(360deg);
    -webkit-transform: rotate(360deg);
    -o-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}
.home .tg-texte {
    width: 80%;
    max-width: 600px;
}
#section-innovateur {
    margin-top: -100px;
    margin-bottom: 100px;
}
#section-responsablilite {
    margin-top:-200px;
}
#section-engage {
    padding-bottom: 15em;
    background-repeat: no-repeat;
}
#section-innovateur {
    margin-top:-235px;
}
#section-video {
    margin-top:-200px;
}
#section-forage-long {
    padding-top: 100px;
}

/*--------------------------------------------------------------
# CPT - Projets
--------------------------------------------------------------*/
.projet-wrap {
    background-color: #fff
}

.projet-wrap p {
    font-size: 20px;
}

.projet-wrap .projet-titre h2 {
    font-size: 4em!important;
    color: #066731!important;
    padding:60px 140px 0 0;
    margin-bottom: 0;
}

.projet-wrap {
    background-color: #fff;
    padding-bottom: 40px;
}

.projets_nav a.projet-lien-filtre {
    color: #fff;
    cursor: pointer;
    display: block;
    padding: 5px 0;
    font-size: 1.1em;
    -webkit-transition: 0.7s;
    -moz-transition: 0.7s;
    -o-transition: 0.7s;
    transition: 0.7s;
}



.projets_nav a.projet-lien-filtre:hover {
    color: #4FB030;
    -webkit-transition: 0.3s;
    -moz-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
}

.slick_nav a.slick-slide-lien.current {
    color: #4FB030;
    cursor: auto;
}

.projet-info {
    /*border-left: solid 1px #ccc;*/
    padding-left: 40px;
}

.projet-info .layout-flex {
    margin-bottom: 20px;
    flex-wrap: nowrap!important;
}

.projet-info-unique {
    display: flex;
    align-items: center;
    color:#91c11d;
    font-family: 'Montserrat', sans-serif;
    font-size: 1.2em;
    line-height: 1.1;
    font-weight: 800;
    margin-bottom: 60px;
    margin-top: 5px;
    letter-spacing: 0px;
    text-transform: uppercase;
}

.projet-info-icone {
    width: 75px;
    margin-right: 0px;
}

.projet-info-icone > img:only-child {
    height: auto;
    object-fit: contain;
    width: 70px;
    max-height: 45px;
}

.projet-resultat {
    margin-top: 40px;
}

.projet-wrap .slick-projet-photo {
    /*cursor: all-scroll;*/
}
.projet-single-photo {
    display: flex;
    justify-content: center;
    margin: 40px 0;
}
.projet-photo .layout-flex {
    flex-wrap: nowrap;
    justify-content: center;
}
.projet-photo img {
    max-height: 600px;
}
.projet-photo .item:nth-child(2) {
    margin-bottom:-40px;
}
.projet-wrap .next-cmac {
    position: absolute;
    display: block;
    top: 74px;
}
.projet-wrap .next-cmac svg {
    width: 60px;
    height: 60px;
    border: solid 1px #94C21F;
    padding: 15px;
}
.projet-wrap .prev-cmac {
    position: absolute;
    display: block;
    width: 80px;
    right: 45px;
    left: auto;
    top: 74px;
}
.projet-wrap .prev-cmac svg {
    width: 60px;
    height: 60px;
    border: solid 1px #94C21F;
    padding: 15px;
}



/*.slick-projet-photo .slick-track {
    height: 500px;
}

.slick-projet-photo .projet-image {
    background-repeat: no-repeat;
    background-size: contain;
}

.item {
    position:relative;
    padding: 0!important;
    width: auto!important;
}
*/

.variable-width .slick-slide {
    height: 500px;
}
.variable-width .slick-slide img {
    margin: auto!important;
}
.slider {
    position:relative;
    margin: 40px 0;
}

.slick-slide img {
    margin: 0!important;
    height: 100%;
    object-fit: cover;
}

.slick-prev, .slick-next {
    position: absolute;
    display: block;
    height: 245px;
    width: 20px;
    line-height: 0;
    font-size: 0px;
    cursor: pointer;
    background: none repeat scroll 0% 0% transparent;
    color: transparent;
    padding: 0px;
    border: medium none;
    outline: medium none;
    border-radius:none;
}

figure {
    padding-bottom: 70px;
}

figure h4 {
    font-size: 1.8em;
}


/*--------------------------------------------------------------
# CPT - Page template
--------------------------------------------------------------*/
#intro-page {
    padding-bottom: 2em;
}
.ligne {
    width: 100%;
    background-color:#fff;
    height: 1px;
}
.ligne-50 {
    width: 50%;
    background-color:#fff;
    height: 1px;
    float: right;
}
.entry-header {
    margin-top: 20vh;
    margin-bottom: 15vh;
    min-height: 220px;
}
.enonce_wrap {
    padding-top: 12em;
}
.intro-enonce {
    margin-left: -150px;
    margin-top: 3em;
    position:relative;
    font-size: 22px;
}
.intro-enonce-front {
    margin-left: -150px;
    margin-top: 3em;
    position:relative;
    font-size: 22px;
}
.page .intro-enonce {
    margin-left: 0px!important;
    margin-top: 3em;
    position:relative;
}
.page .intro-enonce h3 {
    font-size:1.6em;
    margin-top: 3.4em;
}
.intro-photo-h {
    position: absolute;
    margin-left: -150px;
    margin-top: 40px;
}
.intro-enonce-titre {
    opacity: 0.2;
    position: absolute;
    margin-left: -100px;
    margin-top: -80px;
}
.intro-enonce-titre h2 {
    font-size: 8em;
    color: #4FB030;;
}
.intro-enonce-description {
    position: relative;
    padding-top: 60px;
}
.intro-enonce-description h3:before {
    content: " ";
    height: 1px;
    background-color: #94C21F;
    left: -103%;
    top: 35px;
    width: 100%;
    position: absolute;
}
.page #content {
    background-size: contain;
    background-position: center top;
    background-repeat: no-repeat;
}

/*--------------------------------------------------------------
# CPT - Équipement template
--------------------------------------------------------------*/
body.post-type-archive-equipement .site-content {
    background-position: center right;
    background-size: 1550px;
} 
.equipement-wrap {
    background-color: #3c3c3c;
    width:100%;
    height: 30em;
    padding: 40px 0 40px 40px;
    margin-bottom: 100px;
}
.equipement-code {
    font-size: 4em;
}
.equipement-code h3 {
    line-height: 1;
    padding-bottom: 0;
    margin-bottom: 0px;
    font-size: 2em;
}
.equipement-titre {
    color: #fff;
    margin-top: -60px;
    margin-left: 70px;
}
.equipement-lien {
    margin-left: 70px;
}
.equipement-lien a {
    letter-spacing: 6px;
}
.equipement-info {
    /*padding: 50px;*/
}
.equipement-image {
    /*margin:40px -200px 40px 40px;
    position: absolute;
    max-width: 600px;*/
}
.equipement-wrap .equipement-image img {
    height: 420px;
    object-fit: cover;
    width: 100%;
}
.single-equipement h1 {
    font-size: 5em;
    position: relative;
    z-index: 9;
    max-width: 80%;
}
.single-equipement .entry-header {
    margin-bottom: -10vh;
}



/*--------------------------------------------------------------
# CPT - Produits template
--------------------------------------------------------------*/
body.post-type-archive-produit .site-content {
    background-position: center right;
    background-size: 1550px;
} 
.produit-wrap {
    background-color: #3c3c3c;
    width:100%;
    height: 30em;
    padding: 40px 0 40px 40px;
    margin-bottom: 100px;
}
.produit-code {
    font-size: 4em;
}
.produit-code h3{
    line-height: 1;
    padding-bottom: 0;
    margin-bottom: 0px;
    font-size: 2em;
}
.produit-titre {
    color: #fff;
    margin-top: -60px;
    margin-left: 70px;
}
.produit-lien {
    margin-left: 70px;
}
.produit-info {
    /*padding: 50px;*/
}
.produit-image {
    /*margin:40px -200px 40px 40px;
    position: absolute;
    max-width: 600px;*/
}
.single-produit h1 {
    font-size: 5em;
    position: relative;
    z-index: 9;
    max-width: 80%;
}
.single-produit .entry-header {
    margin-bottom: -10vh;
}
.produit-single-document {
    transition:0.3s;
    position: relative;
    z-index: 9;
    margin-bottom: 40px;
}
.produit-single-document svg {
    font-size: 3em;
    color: #91cb3c;
    display: inline-block;
    transition:0.3s;
    margin-right: 10px;
}
.produit-single-document .mention-document {
    color: #91cb3c;
    transition:0.3s;
    position: relative;
    z-index: 9;
}   
.produit-single-document:hover svg {
    transition:0.3s;
    transform:rotate(-90deg);
}
.produit-single-document:hover .mention-document {
    transition:0.3s;
    transform:translateX(10px);
}
.produit-single-document .layout-flex {
    align-items: center;
}

/*--------------------------------------------------------------
# CPT - Produits single - Template
--------------------------------------------------------------*/
.produit-single-titre {
    text-align: left;
    margin-top: -7em;
}
.produit-single-image {
    overflow: hidden;
    margin-top: -115px;
    /*margin-right: -130px;*/
}
.postid-1900 .produit-single-image {
    margin-top: -22em;
}
.produit-single-image img {
    -webkit-transform: scaleX(-1);
    transform: scaleX(-1);
}
.single-produit .content-area {
    background-repeat: no-repeat;
}
.single-produit .produit-code {
    margin-left: -60px;
    font-size: 5em;
}
.single-produit .caracteristique_wrap {
    justify-content: space-between;
    display: flex;
    margin: 10px 0;
}
.single-produit .caracteristique_colonne {
    -webkit-column-count: 2;
       -moz-column-count: 2;
            column-count: 2;
}
.produit-rendu {
    position: absolute;
    right: -150px;
    margin-top: -150px;
}
.produit-rendu-wrap {
    /*position: relative;*/
    height: 300px;
}
.produit-single-image {
    max-width: 850px;
}
.etiquette_caracteristique {
    margin-right: 10px;
    max-width: 100%;
}
.ligne-caracteristique {
    display: flex;
    align-items: center;
    width: 100%;
    margin-right: 10px;
}
.ligne-caracteristique .separateur {
    height: 1px;
    background-color: #000;
    margin: 0;
}
.valeur_caracteristique {
    text-align: right;
    margin-left: 10px;
}
.single-produit .video-wrap {
    padding: 100px 20px 60px 20px;
}
.product-info h4 {
    max-width: 400px;
    line-height: 1em;
    margin-top:0px;
    display: inline;
}
.single-produit .slick-arrow svg {
    width: 60px;
    height: 60px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: solid 1px #ccc;
    border-radius: 50%;
    padding: 20px;
    background-color: #fff;
}

/*--------------------------------------------------------------
# CPT - Équipements template
--------------------------------------------------------------*/
body.post-type-archive-equipement .site-content {
    background-position: center right;
    background-size: 1550px;
} 
.equipement-wrap {
    background-color: #3c3c3c;
    width:100%;
    height: 30em;
    padding: 40px 0 40px 40px;
    margin-bottom: 100px;
}
.equipement-code {
    font-size: 4em;
}
.equipement-code h3 {
    position:relative;
    line-height: 1;
    padding-bottom: 0;
    margin-bottom: 0px;
    font-size: 1.4em;
}
.equipement-titre {
    color: #fff;
    margin-top: -60px;
    margin-left: 70px;
}
.equipement-lien {
    margin-left: 70px;
}
.equipement-info {
    /*padding: 50px;*/
}
.equipement-image {
    /*margin:40px -200px 40px 40px;
    position: absolute;
    max-width: 600px;*/
}
.single-equipement h1 {
    font-size: 5em;
    position: relative;
    z-index: 9;
    max-width: 80%;
}
.single-equipement .entry-header {
    margin-bottom: -10vh;
}
.equipement-single-document {
    transition:0.3s;
    position: relative;
    z-index: 9;
    margin-bottom: 40px;
}
.equipement-single-document svg {
    font-size: 3em;
    color: #91cb3c;
    display: inline-block;
    transition:0.3s;
    margin-right: 10px;
}
.equipement-single-document .mention-document {
    color: #91cb3c;
    transition:0.3s;
    position: relative;
    z-index: 9;
}   
.equipement-single-document:hover svg {
    transition:0.3s;
    transform:rotate(-90deg);
}
.equipement-single-document:hover .mention-document {
    transition:0.3s;
    transform:translateX(10px);
}
.equipement-single-document .layout-flex {
    align-items: center;
}

/*--------------------------------------------------------------
# CPT - equipements single - Template
--------------------------------------------------------------*/
.equipement-single-titre {
    text-align: left;
    margin-top: -7em;
}
.equipement-single-image {
    overflow: hidden;
    margin-top: -115px;
    /*margin-right: -130px;*/
}
.postid-1900 .equipement-single-image {
    margin-top: -22em;
}
.equipement-single-description {
    position:relative;
}
.single-equipement .content-area {
    background-repeat: no-repeat;
}
.single-equipement .equipement-code {
    margin-left: -60px;
    font-size: 5em;
    z-index: 9;
}
.single-equipement .caracteristique_wrap {
    justify-content: space-between;
    display: flex;
    margin: 10px 0;
}
.single-equipement .caracteristique_colonne {
    -webkit-column-count: 2;
       -moz-column-count: 2;
            column-count: 2;
}
.equipement-rendu {
    position: absolute;
    right: -150px;
    margin-top: -150px;
}
.equipement-rendu-wrap {
    /*position: relative;*/
    height: 100px;
}
.equipement-single-image {
    max-width: 850px;
}
.equipement-single-image-left img {
    width: 100%;
}
.etiquette_caracteristique {
    margin-right: 10px;
    max-width: 100%;
}
.ligne-caracteristique {
    display: flex;
    align-items: center;
    width: 100%;
    margin-right: 10px;
}
.ligne-caracteristique .separateur {
    height: 1px;
    background-color: #000;
    margin: 0;
}
.valeur_caracteristique {
    text-align: right;
    margin-left: 10px;
}
.single-equipement .video-wrap {
    padding: 100px 20px 60px 20px;
}
.product-info h4 {
    max-width: 400px;
    line-height: 1em;
    margin-top:0px;
    display: inline;
}
.single-equipement .slick-arrow svg {
    width: 60px;
    height: 60px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: solid 1px #ccc;
    border-radius: 50%;
    padding: 20px;
    background-color: #fff;
}
.contact-equipement {
    padding-bottom:60px;
}
.single-equipement .gform_validation_errors {
    display:none;
}
.single-equipement .gform_wrapper.gravity-theme .gfield_description {
    padding: 0;
    border: 0;
    margin: 2px 0;
}

/*--------------------------------------------------------------
# CPT - Carrières ou Emplois
--------------------------------------------------------------*/
.emploi-wrap {
    padding:60px 0;
}
.emploi-wrap svg {
    font-size: 3em;
}
.emploi-wrap .bloc_contour_wrap {
    position: relative;
    max-width: 500px;
    margin-bottom: 40px;
}
.emploi-wrap .bloc_contour_wrap:hover .emploi-lien {
    opacity: 1;
    transform:translateX(60px);
    -webkit-transition: 0.3s;
    -moz-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
}
.emploi-lieu {
    font-family: 'Roboto Mono', monospace;
    font-weight: 400;
    color: #4cb127;
    text-transform: uppercase;
    font-size: 0.8em;
    letter-spacing: 4px;
    line-height: 1.2;
    margin-top: 10px;
    margin-bottom: 0.8em;
}
.emploi-lien {
    position: absolute;
    bottom: 20px;
    right:-20px;
    opacity: 0;
    -webkit-transition: 0.7s;
    -moz-transition: 0.7s;
    -o-transition: 0.7s;
    transition: 0.7s;
}
.emploi-lien img {
    width: 170px;
}
.so-widget-liste-emplois .bloc_contour_wrap h4 {
    font-size: 2em;
}

/*--------------------------------------------------------------
# Emploi singulier - Template 
--------------------------------------------------------------*/
.emploi-infos {
    /*padding-top: 100px;*/
}
.emploi-titre h2 {
    font-size: 4em;
    margin-bottom: 40px;
}
.emploi-infos h4 {
    font-size: 2em;
    margin-top: 0;
    margin-bottom: 20px;
}
.emploi-info-type h6 {
    color: #8fc51c;
    font-size: 1.6em;
    letter-spacing: 0;
    margin-bottom: 0px;
}
.emploi-icone {
    display: flex;
    width: 90px;
    min-width: 100px;
    align-items: center;
    justify-content: center;
}
.emploi-icone img {
    width: 70px;
    max-height: 55px;
}
.emploi-info-rep {
    color: #fff;
    text-transform: uppercase;
}
.emploi-caracteristiques {
    margin-bottom: 40px;
    flex-wrap: nowrap;
}
.emploi-postuler {
    padding-bottom: 60px;
}

/*--------------------------------------------------------------
# Partenaires
--------------------------------------------------------------*/
.partenaire-carrousel-element {
    padding: 50px;
}
.partenaire-carrousel-element a:hover, .partenaire-carrousel-element img:hover{
    background-color: transparent!important;
    padding:0;
}
.next-cmac  {
    position: absolute;
    display: flex;
    align-items: center;
    right: -10px;
    cursor: pointer;
    height: 100%;
    z-index: 999;
}
.prev-cmac  {
    position: absolute;
    display: flex;
    align-items: center;
    left: -20px;
    cursor: pointer;
    height:100%;
    z-index: 999;
}
.arrow-wrapper {
    position: relative;
}
.arrow-wrapper svg {
    color: #94C21F;
    font-size: 2em;
    -webkit-transition: 0.7s;
    -moz-transition: 0.7s;
    -o-transition: 0.7s;
    transition: 0.7s;
}
.arrow-wrapper svg:hover {
    color: #fff;
    -webkit-transition: 0.3s;
    -moz-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
}
.light-theme .arrow-wrapper svg:hover,
.single-equipement .arrow-wrapper svg:hover {
    color: #000;
    -webkit-transition: 0.3s;
    -moz-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
}
.arrow-wrapper .prev-cmac.slick-disabled,
.arrow-wrapper .next-cmac.slick-disabled {
    cursor: auto;
}
.arrow-wrapper .prev-cmac.slick-disabled svg,
.arrow-wrapper .next-cmac.slick-disabled svg {
    color: #787878;
}
.arrow-wrapper.sticky-arrow .prev-cmac,
.arrow-wrapper.sticky-arrow .next-cmac {
    display: block;
    position: -webkit-sticky;
    position: sticky;
    top: 50vh;
    height: 0;
    
}
.arrow-wrapper.sticky-arrow .prev-cmac {
    float: left;
    padding-right: 10px;
    transform: translateX(-100%);
}
.arrow-wrapper.sticky-arrow .next-cmac {
    float: right;
    padding-left: 10px;
    transform: translateX(100%);
}
.arrow-wrapper.sticky-arrow .slick-slider {
    clear: both;
}


/*--------------------------------------------------------------
# Slick carousel
--------------------------------------------------------------*/
.slick-slide {
    outline: 0;
}
.slick-slide img {
    margin: auto;
}
.slick-next:before,
.slick-prev:before {
    color: #91c21b!important;
}
.slick-next.slick-disabled:before,
.slick-prev.slick-disabled:before {
    color: #787878!important;
}
.slick-fichestechniques {
    border:solid 1px #ccc;
}
.slick-fichestechniques .slick-next {
    right: 50px;
}
.slick-fichestechniques .slick-prev {
    left: 50px;
}
.slick-dots li button {
    border: solid 1px #91c21b!important;
    border-radius: 50%;
}
.slick-dots {
    bottom: -50px
}
.single-produit .prev-cmac {
    left: -30px!important;
}
.single-produit .next-cmac {
    right: -30px!important;
}

.single-equipement .prev-cmac {
    left: -30px!important;
}
.single-equipement .next-cmac {
    right: -30px!important;
}

/*--------------------------------------------------------------
# Circle & rotation
--------------------------------------------------------------*/
#circulaire {
    font-family: 'Roboto mono', sans-serif;
    text-transform: uppercase;
    letter-spacing: 2px;
    position: absolute;
    top: -90px;
    z-index: 1;
    padding:0 10px!important;
}
#circulaire span {
    color: #91cb3c;
    font-weight: 900;
    display: block;
}
#circulaire span:last-child {
    opacity: 0;
}

@-webkit-keyframes rotating /* Safari and Chrome */ {
  from {
    -webkit-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  to {
    -webkit-transform: rotate(-360deg);
    -o-transform: rotate(-360deg);
    transform: rotate(-360deg);
  }
}
@keyframes rotating {
  from {
    -ms-transform: rotate(0deg);
    -moz-transform: rotate(0deg);
    -webkit-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  to {
    -ms-transform: rotate(360deg);
    -moz-transform: rotate(360deg);
    -webkit-transform: rotate(360deg);
    -o-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}
.rotating {
  -webkit-animation: rotating 20s linear infinite;
  -moz-animation: rotating 20s linear infinite;
  -ms-animation: rotating 20s linear infinite;
  -o-animation: rotating 20s linear infinite;
  animation: rotating 20s linear infinite;
}


/*--------------------------------------------------------------
# Mega menu
--------------------------------------------------------------*/

.mega-menu-wrap .mega-menu {
    display: none;
    width: 100%;
    max-height: 600px;
    overflow-y: hidden;
    position: absolute;
    background-color: #fff;
    z-index: 1000;
}

/*--------------------------------------------------------------
# Widget - Google Map
--------------------------------------------------------------*/
.gm-style-iw-d, .gm-style-iw-d p {
    color: #000;
}

/*--------------------------------------------------------------
# Widget - Enjeux
--------------------------------------------------------------*/
.enjeux_wrap {
    margin: 220px 0 60px 0;
}
.enjeux_wrap h2 {
    margin-bottom: 60px;
}
.enjeu_wrap {
    margin-bottom: 40px;
}
.enjeu_icone {
    display: flex;
    align-items: flex-start;
    justify-content: center;
}
.enjeu_icone_contour {
    width: 150px;
    height: 150px;
    border-radius: 50%;
    border:solid 1px #94C21F;
    padding:30px;
    display: flex;
    align-items: center;
    justify-content: center;
}
.enjeu_icone_contour img {
    width: 100%;
}
.enjeu_description h3 {
    margin-bottom: 0;
}
.enjeu_lien a.btn {
    margin-top: 0;
}
a.btn {
    margin-top: 0;
}

/*--------------------------------------------------------------
# Widget - Valeurs
--------------------------------------------------------------*/
.valeurs_wrap {
    margin: 20px 0 60px 0;
}
.valeurs_wrap h2 {
    margin-bottom: 60px;
}
.valeur_wrap {
    margin-bottom: 40px;
}
.valeur_icone {
    display: flex;
    align-items: flex-start;
    justify-content: center;
}
.valeur_icone_contour {
    width: 150px;
    height: 150px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
}
.valeur_icone_contour img {
    width: 100%;
}
.valeur_description h3 {
    margin-bottom: 0;
    font-size: 1.8em;
}
.valeur_lien a.btn {
    margin-top: 0;
}
a.btn {
    margin-top: 0;
}

/*--------------------------------------------------------------
# Widget - Bloc lettre 
--------------------------------------------------------------*/
.home .bloc_lettre_wrap {
    margin-bottom: -316px;
    z-index: 1;
    position: absolute;
}
.bloc_lettre_wrap .layout-flex {
    align-items: center;
}
.bloc_lettre_lettre {
    color: #94C21F;
    display: inline-block;
    font-family: 'Montserrat', sans-serif;
    font-weight: 900;   
    font-size: 38em;
    text-transform: uppercase;
    -webkit-text-fill-color: transparent;
    -webkit-text-stroke-width: 2px;
    -webkit-text-stroke-color: #94C21F;
    position: relative;
}
.bloc_lettre_mot {
    color: #fff;
    display: inline-block;
    font-family: 'Roboto Mono', monospace;
    letter-spacing: 12px;
    font-size: 2.5em;
    line-height: 1.2;
    text-transform: uppercase;
    margin-left: 335px;
    position: absolute;
}

/*--------------------------------------------------------------
# Widget - Bloc chiffre
--------------------------------------------------------------*/
.bloc_chiffre_wrap {
    margin-bottom: 40px;
}
.bloc_chiffre_numero {
    font-family: 'Montserrat', sans-serif;
    font-weight: 800;
    font-size: 6.6em;
    margin: auto;
    text-align: center;
    display: block;
    color: #94C21F;
    -webkit-text-fill-color: transparent;
    -webkit-text-stroke-width: 1px;
    -webkit-text-stroke-color: #94C21F;
}
.bloc_chiffre_description {
    border: solid 1px #aed156;
    padding: 40px!important;
    text-transform: uppercase;
    color: #fff;
    min-width: 300px;
    display: flex;
    align-items: center;
}
#bloc-chiffres-wrap {
    padding-top: 20em;
}


/*--------------------------------------------------------------
# Widget - Vidéo
--------------------------------------------------------------*/
.video-wrap {
    /*display:flex;*/
    align-items: center;
    justify-content: center;
    flex-direction: column;
    max-width: 1000px;
    margin: auto;
    position: relative;
}
.video-container {
    position: relative;
    padding-bottom: 56.25%;
    padding-top: 30px; height: 0; overflow: hidden;
    margin-bottom: 40px;
}
 
.video-container iframe,
.video-container object,
.video-container embed {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
.video-wrap-titre {
    position: absolute;
    z-index: 2;
    left: -215px;
    top: 180px;
    max-width: 370px;
}
.video-wrap-link {
    float:right;
    margin: 60px 0;
}
.video-wrap-link .video-description {
    max-width: 150px;
}

/*--------------------------------------------------------------
# Widget - Ligne du temps - Timeline
--------------------------------------------------------------*/
.lignetemps_date {
    position: relative;
    height: 100px;
}
.lignetemps_date h3 {
    position: absolute;
    left: 0;
    font-size: 7em;
}
.lignetemps_description {
    padding: 50px;
    border:solid 1px #aed156;
}
.lignetemps_titre h4 {
    padding-top: 87px;
    font-size: 2.2em;
}
.lignetemps_wrap {
    position: relative;
    height: 195px;
    overflow-y: none;
}
.lignetemps_wrapper {
    overflow-x: auto;
    overflow-y: hidden;
}
.date-titre {
    font-size: 0.9em;
    width: 100%;
    max-width: 100px;
}
.lignetemps_wrapper .lignetemps_wrap:nth-child(even) .date-annee {
    padding-top: 90px;
}
.date-annee h5 a {
    margin: 0;
    padding: 0;
    line-height: 1;
    color:#4FB030!important;
    cursor: pointer;
    -webkit-transition: 0.7s;
    -moz-transition: 0.7s;
    -o-transition: 0.7s;
    transition: 0.7s;
}
.current .date-annee h5 a {
    /*text-shadow: 0px 0px 10px #4e8a78;*/
    color: #fff!important;
    transform:translateX(5px);
    -webkit-transition: 0.3s;
    -moz-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
}
.lignetemps_wrapper > .layout-flex {
    flex-wrap: nowrap;
    justify-content: center;
    height: 425px;
    margin-bottom: 80px;
}  
.lignetemps_wrapper .lignetemps_wrap:nth-child(odd) {
    /*align-self: flex-start;*/
    height: 253px;
    border-bottom:solid 1px #fff;
}
.lignetemps_wrapper .lignetemps_wrap:nth-child(even) {
    /*align-self: flex-end;*/
    height: 250px;
    margin-top: 252px;
    border-top:solid 1px #fff;
}
.lignetemps_wrapper {
    position: relative;
    margin: 80px 0;
    padding: 80px 100px;
}
.lignetemps_cercle_wrap {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    padding: 5px;
    border:solid 1px #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    position: absolute;
    left: -35px;
    top: -20px;
}
.lignetemps_wrap a.current .lignetemps_cercle {
    background-color: #4FB030;
    -webkit-transition: 0.3s;
    -moz-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
}
.lignetemps_wrap:nth-child(even) .lignetemps_cercle_wrap {
    top: initial;
    bottom: -20px;
}
.lignetemps_singulier_wrap img {
    height: auto!important;
}
.lignetemps_cercle {
    width: 20px;
    height: 20px;
    border-radius: 50%;
    background-color: #fff;
    -webkit-transition: 2s;
    -moz-transition: 2s;
    -o-transition: 2s;
    transition: 2s;
}
.lignetemps_cercle:hover {
    -ms-transform: scale(1.4);
    -webkit-transform: scale(1.4);
    transform: scale(1.4);
    -webkit-transition: 0.3s;
    -moz-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
}
#ligne-centre-wrap {
    display: flex;
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    justify-content: center;
    align-items: center;
}
#ligne-centre {
    width: 100%;
    height: 1px;
    background-color: #fff;
}
.lignetemps_wrap::before {
    content: '';
    height: 100%;
    width: 1px;
    background-color: #fff;
    position: absolute;
    left: -15px;
}

.lignetemps_singulier_wrapper .next-cmac {
    position: absolute;
    display: block;
    top: 0px;
}
.lignetemps_singulier_wrapper .next-cmac svg {
    width: 60px;
    height: 60px;
    border: solid 1px #94C21F;
    padding: 15px;
}
.lignetemps_singulier_wrapper .prev-cmac {
    position: absolute; 
    display: block;
    width: 80px;
    top: 0px;
    right: 40px;
    left: auto;
}
.lignetemps_singulier_wrapper .prev-cmac svg {
    width: 60px;
    height: 60px;
    border: solid 1px #94C21F;
    padding: 15px;
}

/*--------------------------------------------------------------
# Widget - Bloc contour
--------------------------------------------------------------*/
.bloc_contour_wrap .bloc_icone_description {
    border:solid 1px #aed156;
    padding:50px;
    text-transform: uppercase;
    color:#fff;
    width: fit-content;
    /*min-width: 300px;*/
    max-width: 420px;
}
.bloc_contour_wrap .bloc_icone_description p {
    margin-bottom: 1em;
    font-family: Roboto Mono, sans-serif;
    font-size: 1em;
}
.bloc_contour_wrap .bloc_icone_lien {
    position:relative;
}
.bloc_contour_wrap .bloc_icone_lien a {
    /*position:absolute;
    right: -100px;
    top: 0;*/
}
.bloc_icone_lien.lien-droite a {
    position: absolute;
    left: -10px;
    min-width: 390px;
    bottom: 0;
    z-index: 9;
}
.bloc_contour_lien {
    display: block;
    align-items: flex-end;
    max-width: 100%;
}


/*--------------------------------------------------------------
# Widget - Bloc contour alt - alternatif
--------------------------------------------------------------*/
.bloc_contour_alt .bloc_icone_description {
    margin-left: 100px;
}
.bloc_contour_alt {
    margin-bottom: 60px;
    /*min-height: 18em;*/
}
.bloc_contour_alt .bloc_icone_description p {
    margin: 0 0 20px;
}
.bloc_contour_alt .bloc_icone_description p:last-child {
    margin: 0;
}
.bloc_contour_alt .bloc_icone_desc_sommaire {
    padding-bottom: 20px;
}

/*--------------------------------------------------------------
# Widget - Tuiles de dyade
--------------------------------------------------------------*/
.tuile {
    text-align: center;
}

.tuile-gabarit {
    position: relative;
    margin: 80px 0;
}

.tuile-infos {
    position: absolute;
    height: 100%;
    width: 100%;
    flex-direction: column;
    justify-content: space-between;
    align-items: center;
    display: flex;
    top: 0;
    right: 0;
    bottom:0;
    left:0;
}

.tuile-info {
    position: absolute;
    flex-direction: column;
    align-items: flex-start;
    display: flex;
    justify-content:center;
    height: 100%;
    width: 100%;
    background-color:rgba(8,102,51,0.65);
    padding: 40px;
    text-align: left;
    top: 0;
    right: 0;
    bottom:0;
    left:0;
    opacity: 0;
    -webkit-transition: 0.7s;
    -moz-transition: 0.7s;
    -o-transition: 0.7s;
    transition: 0.7s;
}

.tuile-info:hover h4 {
    -webkit-transform: translateY(-40px);
    -ms-transform: translateY(-40px);
    transform: translateY(-40px);
    -webkit-transition: 1s;
    -moz-transition: 1s;
    -o-transition: 1s;
    transition: 1s;
}

.tuile-description {
    font-weight: 300;
    font-size: 18px;
    -webkit-transition: 0.3s;
    -moz-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
}

.tuile-info:hover .tuile-description {
    -webkit-transform: translateY(-30px);
    -ms-transform: translateY(-30px);
    transform: translateY(-30px);
    -webkit-transition: 1.5s;
    -moz-transition: 1.5s;
    -o-transition: 1.5s;
    transition: 1.5s;
}

.tuile-info h4 {
    font-size: 1.8em;
    letter-spacing: 8px;
    -webkit-transition: 0.3s;
    -moz-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
}

.tuile-gabarit .tuile-info:hover {
    opacity: 1;
    transition:0.3s;
    -webkit-transition: 0.3s;
    -moz-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
}

.tuile .lettre {
    font-size: 13em;
    font-weight: 900;
    font-family: 'Montserrat', sans-serif;
    color: #4FB030;
    pointer-events: none;
    opacity: 0.8;
    z-index: 9;
}

.tuile .lettre-haut {
    margin-top: -0.76em;
}

.tuile .lettre-bas {
    margin-bottom: -0.76em;
}


/*--------------------------------------------------------------
# Widget - Texte générique
--------------------------------------------------------------*/
.texte-generique-wrap .tg-titre  {
    min-height: 60px;
}

.texte-generique-wrap .tg-titre h2  {
    position: absolute;
    left: 0;
}

.texte-generique-wrap .spacer  {
    height: 130px;
}

.tg-sous-titre {
    position:relative;
}

.tg-sous-titre h3 {
    font-weight: 800;
    font-size: 2.5em;
    line-height: 1.2;
    letter-spacing: 2px;
    -webkit-text-stroke-width: 1px;
    /*padding-top: 130px;*/
}

.tg-sous-titre h3::before {
    content: " ";
    height: 1px;
    background-color: #94C21F;
    left: -105%;
    top: 25px;
    width: 100%;
    position: absolute;
}


/*--------------------------------------------------------------
# Widget - Texte générique alternatif horizontal
--------------------------------------------------------------*/
.texte-generique-alt .tg-sous-titre h3 {
    padding-top: 0px;
}

.texte-generique-alt .spacer {
    width: 100%;
    height: 130px;
}

/*--------------------------------------------------------------
# Sidebar
--------------------------------------------------------------*/

.sidebar {
    margin-top: 20px;
}

h3.widget-title span {
    -webkit-transition: 0.3s;
    -moz-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
}

h3.widget-title {
    -webkit-transition: 0.3s;
    -moz-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
}

/*--------------------------------------------------------------
# Gravity Form
--------------------------------------------------------------*/

.gform_wrapper input {
    max-width: 100%!important;
}

.gform_wrapper .ginput_container_select {
    position: relative;
}

.gform_wrapper .ginput_container_select::before {
	content: "";
	position: absolute;
	right: 24px;
	top: 0;
	height: calc(100% - 2px);
	width: 1px;
	background-color: #787878;
	pointer-events: none;
}

.gform_wrapper .ginput_container_select::after {
	content: "🢗";
	display: block;
	position: absolute;
	right: 5px;
	top: calc(50% - 11px);
	color: #787878;
	font-size: 24px;
	pointer-events: none;
	font-weight: 300;
	font-family: "Roboto Mono", monospace;
}

.gform_wrapper .ginput_container_select select {
    -webkit-appearance: none;
    -moz-appearance: none;
    text-indent: 1px;
    text-overflow: '';
    padding-right: 26px!important;
}

.gform_wrapper {
    margin: 14px 0!important;
}

.gform_wrapper .gform_footer {
    padding-top: 0!important;
    position: relative;
    text-align: right;
    margin-top: 30px !important;
}

.gform_wrapper .gform_ajax_spinner {
    width: auto;
    position: absolute;
    right: -10px;
    top: 50%;
    transform: translateY(-100%);
}

.gform_wrapper li.hidden_label input {
    margin-top: 0!important;
}

.gform_wrapper ul li.gfield {
    margin-top: 20px!important;
}

.gform_wrapper ul li.gfield:first-child {
    margin-top: 0px!important;
}

.gform_wrapper .field_description_below .gfield_description {
    padding-top: 6px!important;
}

.gform_wrapper li.gfield.gfield_error.gfield_contains_required div.gfield_description:not(.validation_message) {
    display: none;
}

.gform_wrapper div.validation_error:before {
    display: none;
    content: "\f057";
    font-family: "Font Awesome 5 Regular";
}

.gform_wrapper div.validation_error .svg-inline--fa {
    position: absolute;
    top: calc(50% - 0.5em);
    left: 30px;
    font-size: 2.5em;
}

.gform_wrapper div.validation_error {
    display: none;
    color: #4f4f4f!important;
    border: 0!important;
    padding: 20px 20px 20px 84px!important;
    width: calc(100% - 16px)!important;
    text-align: left!important;
    position: relative;
    font-weight: normal!important;
    background-color: #f8d0c8;
    position: relative;
}

.gform_wrapper ul li.gfield {
    margin-top: 0px!important;
}

.gform_wrapper li.gfield_error input:not([type=radio]):not([type=checkbox]):not([type=submit]):not([type=button]):not([type=image]):not([type=file]), .gform_wrapper li.gfield_error textarea {
    border: 1px solid #B40404!important;
    border-bottom-width: 2px !important;
}

.gform_wrapper .gform_fields li.gfield.gfield_error {
    background-color: transparent!important;
    margin-bottom: 0!important;
    border: 0!important;
    padding-top: 0!important;
    padding-left: 0!important;
    padding-bottom: 0!important;
}

.gform_wrapper li.gfield.gfield_error.gfield_contains_required div.gfield_description {
    padding-right: 0!important;
    padding-top: 6px!important;
}

.gform_wrapper .top_label .gfield_label,
.gform_wrapper legend.gfield_label {
    margin-top: 30px!important;
}

.gform_wrapper .top_label li:not(.hidden_label) .gfield_label + div.ginput_container {
    margin-top: 12px!important;
}

.gform_wrapper .gfield_description {
    font-size: 12px!important;
}

.gform_wrapper .validation_message {
    color: #B40404!important;
}

.gform_wrapper .top_label div.ginput_container {
    margin-top: 30px!important;
}

.gform_wrapper ul.gfield_checkbox,
.gform_wrapper ul.gfield_radio {
    margin: 0!important;
}

.gform_wrapper input[type="submit"] {
	width: calc(100% - 16px) !important;
	margin-right: 0 !important;
	display: block !important;
}

::placeholder{
    color: #787878;
    opacity: 1;
    font-size: 1em;
    letter-spacing: 1px;
    font-weight: 400;
}

#gform_confirmation_message_3 a {
    color: #94C21F;
    border: solid 1px #94C21F;
    padding: 10px 15px;
    border-radius: 25px;
    transition:0.3s;
}

#gform_confirmation_message_3 a:hover {
    background-color: #94C21F;
    color:#fff;
    transition:0.3s;
}

/*--------------------------------------------------------------
# Widget - Element button
--------------------------------------------------------------*/

.widget_element-bouton {
    display: inline-block;
}

/*--------------------------------------------------------------
# Archive
--------------------------------------------------------------*/

.archive h2.page-title {
    padding: 5px 15px;
    display: table;
    font-size: 1.2em;
}

/*--------------------------------------------------------------
# Membre
--------------------------------------------------------------*/

.membre_img {
    height: 250px;
    background-size: cover;
    background-repeat: no-repeat;
    margin-bottom: -15px!important;
}

/*--------------------------------------------------------------
# Nouvelles - Fil
--------------------------------------------------------------*/

.nouvelle_thumb {
    width: 100%;
    height: 180px;
    display: table;
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
    -webkit-transition: 0.3s;
    -moz-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
}

.nouvelle_wrap p {
    color: #000;
}

.nouvelle_image {
    height: 22vw;
    min-height: 350px;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    -webkit-transition: 0.3s;
    -moz-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
}

.nouvelle_date {
    font-family: 'Roboto', sans-serif;
    text-transform: uppercase;
    font-size: 0.7em;
    color: #c1e1ee;
    padding-top: 10px;
}

.nouvelle_wrap_action .nouvelle_image {
    box-shadow: 3px 3px #343d98;
    -webkit-transition: 0.3s;
    -moz-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
}

.nouvelle_wrap_action .nouvelle_thumb {
    color: #d75570;
    background-color: #d5c5d8;
    -webkit-transform: translate(3px. -3px);
    /*Chrome, Opera 15+, Safari 3.1+ */
    -ms-transform: translate(3px, -3px);
    /* IE 9 */
    transform: translate(3px, -3px);
    /* Firefox 16+, IE 10+, Opera */
    -webkit-transition: 0.3s;
    -moz-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
}

.nouvelle_note {
    font-style: italic;
    font-size: 0.6em;
    font-family: 'Roboto', sans-serif;
}

.blog h2.entry-title a {
    color: #343d98!important;
    font-size: 0.9em;
}

.etiquette_wrap a {
    color: #000!important;
    background-color: transparent;
    padding: 5px 10px;
    margin: 10px 10px 10px 0;
    border: solid 1px #000;
    font-size: 0.9em;
    font-family: 'Roboto', sans-serif!important;
    text-transform: uppercase;
    display: table;
    float: left;
    -webkit-transition: 0.3s;
    -moz-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
}

.etiquette_wrap a:hover {
    color: #ccc!important;
    background-color: transparent;
    border: solid 1px #ccc;
    -webkit-transition: 0.3s;
    -moz-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
}

.single-post .entry-content p:first-child {
    font-family: 'Roboto', arial, sans-serif;
    font-size: 1.4em;
    line-height: 1.3em;
    font-weight: 400;
}

.single-post blockquote {
    background-color: #c3e0f0;
    color: #fff!important;
    padding: 20px 30px;
    max-width: 350px;
    float: right;
    border-radius: 3px;
    border: 0!important;
    font-weight: 900;
    font-size: 1em;
    margin-bottom: 20px;
}

/*--------------------------------------------------------------
# Facebook - Share
----------------------------------------------------------------*/

.share {
    display: table;
    background-repeat: repeat;
    width: 100%;
    margin: 40px 0;
}

.share svg {
    color: #0072a6;
    font-size: 2.5em;
    -ms-transform: scale(1);
    /* IE 9 */
    -webkit-transform: scale(1);
    /* Chrome, Safari, Opera */
    transform: scale(1);
    -webkit-transition: 0.5s;
    -moz-transition: 0.5s;
    -o-transition: 0.5s;
    transition: 0.5s;
}

.share svg:hover {
    color: #3765a3;
    -ms-transform: scale(1.3);
    /* IE 9 */
    -webkit-transform: scale(1.3);
    /* Chrome, Safari, Opera */
    transform: scale(1.3);
    -webkit-transition: 0.2s;
    -moz-transition: 0.2s;
    -o-transition: 0.2s;
    transition: 0.2s;
}

/*--------------------------------------------------------------
# Footer & copyright
--------------------------------------------------------------*/

.site-footer {
    background-color: #fff;
}

.footer_wrap {
    margin-top: 50px;
}

.footer_wrap,
.footer_wrap p,
.footer_wrap a {
    font-size: 15px;
}

.footer_wrap li {
    padding: 0.3em 0;
}

.footer_wrap li a {
    text-transform: uppercase;
    letter-spacing: 1px;
    font-weight: 700;
}

.footer_wrap .reseaux_sociaux_wrap {
    float: none;
    display: inline-block;
    margin-top: 20px;
}

#footer-siege-social {
    padding-top: 40px;
    padding-bottom: 40px;
    /*background-color: #f5f5f5;*/
    font-family: 'Roboto', sans-serif;
    font-size: 14px;
    letter-spacing: 2px;
}

#footer-siege-social p {
    font-family: 'Roboto', sans-serif;
    margin: 0;
    font-size: 14px;
}

.footer-row {
    height: 100%;
}

.footer-item {
    position: relative;
    width: 100%;
    margin-bottom: 20px;
    border-right: 0px solid #f5f5f5;
}

.footer-row .footer-item:last-child {
    margin-bottom: 0;
}

.footer-item-container {
    padding: 0 2vw 20px 0;
}

.footer_wrap .layout-flex > *:last-child > .footer-row .footer-item {
    border-right: none;
}

footer .menu li a {
    display: block;
    -webkit-transition: 1s;
    -moz-transition: 1s;
    -o-transition: 1s;
    transition: 1s;
}

footer .menu li a:hover {
    color: #4FB030;
    -webkit-transform: translateX(5px);
    -ms-transform: translateX(5px);
    transform: translateX(5px);
    -webkit-transition: 0.3s;
    -moz-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
}

.copyright_wrap {
    padding: 30px 0;
    font-size: 11px;
    font-family: 'Roboto', sans-serif;
    color: #787878;
    letter-spacing: 1px;
}

.copyright_wrap a,
.copyright_wrap a:visited {
    color: #787878;
}

.copyright_wrap_container {
    padding: 0 2vw;
}

.os_credit {
    float: right;
}

.os_credit a {
    -webkit-transition: 0.3s;
    -moz-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
}

.os_credit a:hover {
    color:#000;
    -webkit-transition: 0.3s;
    -moz-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
}


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

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

body {
    margin: 0;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
main,
menu,
nav,
section,
summary {
    display: block;
}

audio,
canvas,
progress,
video {
    display: inline-block;
    vertical-align: baseline;
}

audio:not([controls]) {
    display: none;
    height: 0;
}

[hidden],
template {
    display: none;
}

a {
    background-color: transparent;
}

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

abbr[title] {
    border-bottom: 1px dotted;
}

b,
strong {
    font-weight: bold;
}

dfn {
    font-style: italic;
}

mark {
    background: #ff0;
    color: #000;
}

small {
    font-size: 80%;
}

sub,
sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline;
}

sup {
    top: -0.5em;
}

sub {
    bottom: -0.25em;
}

img {
    border: 0;
}

svg:not(:root) {
    overflow: hidden;
}

figure {
    margin: 1em 40px;
}

hr {
    box-sizing: content-box;
    height: 0;
}

pre {
    overflow: auto;
}

code,
kbd,
pre,
samp {
    font-family: monospace, monospace;
    font-size: 1em;
}

button,
input,
optgroup,
select,
textarea {
    color: inherit;
    font: inherit;
    margin: 0;
}

button {
    overflow: visible;
}

button,
select {
    text-transform: none;
}

button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
    -webkit-appearance: button;
    cursor: pointer;
}

button[disabled],
html input[disabled] {
    cursor: default;
}

button::-moz-focus-inner,
input::-moz-focus-inner {
    border: 0;
    padding: 0;
}

input {
    line-height: normal;
}

input[type="checkbox"],
input[type="radio"] {
    box-sizing: border-box;
    padding: 0;
}

input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
    height: auto;
}

input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
    -webkit-appearance: none;
}

fieldset {
    border: 1px solid #c0c0c0;
    margin: 0 2px;
    padding: 0.35em 0.625em 0.75em;
}

legend {
    border: 0;
    padding: 0;
}

textarea {
    overflow: auto;
}

optgroup {
    font-weight: bold;
}

table {
    border-collapse: collapse;
    border-spacing: 0;
}

td,
th {
    padding: 0;
}

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

body,
button,
input,
select,
textarea {
    color: #000;
    font-family: 'Nobel', monospace;
    font-size: 1rem;
    font-weight: 300;
    line-height: 1.5;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    clear: both;
}

p {
    font-family: 'Nobel', monospace;
    font-size: 20px;
    font-weight: 300;
    margin-bottom: 1.5em;
}

dfn,
cite,
em,
i {
    font-style: italic;
}

blockquote {
    margin: 0 1.5em;
}

address {
    margin: 0 0 1.5em;
}

pre {
    background: #eee;
    font-family: "Courier 10 Pitch", Courier, monospace;
    font-size: 15px;
    font-size: 0.9375rem;
    line-height: 1.6;
    margin-bottom: 1.6em;
    max-width: 100%;
    overflow: auto;
    padding: 1.6em;
}

code,
kbd,
tt,
var {
    font-family: Monaco, Consolas, "Andale Mono", "DejaVu Sans Mono", monospace;
    font-size: 15px;
    font-size: 0.9375rem;
}

abbr,
acronym {
    border-bottom: 1px dotted #666;
    cursor: help;
}

mark,
ins {
    background: #fff9c0;
    text-decoration: none;
}

big {
    font-size: 125%;
}

/*--------------------------------------------------------------
# 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: #fff;
    /* Fallback for when there is no custom background color defined. */
}

blockquote:before,
blockquote:after,
q:before,
q:after {
    content: "";
}

blockquote,
q {
    quotes: "" "";
}

hr {
    background-color: #ccc;
    border: 0;
    height: 1px;
    margin-bottom: 1.5em;
}

ul,
ol {
    margin: 0 0 1.5em 3em;
}

ul {
    list-style: disc;
}

ol {
    list-style: decimal;
}

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

dt {
    font-weight: bold;
}

dd {
    margin: 0 1.5em 1.5em;
}

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

figure {
    margin: 1em 0;
    /* Extra wide images within figure tags don't overflow the content area. */
}

table {
    margin: 0 0 1.5em;
    width: 100%;
}

/*--------------------------------------------------------------
# Forms
--------------------------------------------------------------*/

button,
input[type="button"],
input[type="reset"],
input[type="submit"] {
    /*border: 1px solid;
	border-color: #ccc #ccc #bbb;
	border-radius: 3px;
	background: #e6e6e6;
	color: rgba(0, 0, 0, .8);
	font-size: 12px;
	font-size: 0.75rem;
	line-height: 1;
	padding: .6em 1em .4em;*/
    color: #000;
    font-size: 2em;
    line-height: 1.5em;
}

button:hover,
input[type="button"]:hover,
input[type="reset"]:hover,
input[type="submit"]:hover {
}

button:focus,
input[type="button"]:focus,
input[type="reset"]:focus,
input[type="submit"]:focus,
button:active,
input[type="button"]:active,
input[type="reset"]:active,
input[type="submit"]:active {
}

input[type="text"],
input[type="email"],
input[type="url"],
input[type="password"],
input[type="search"],
input[type="number"],
input[type="tel"],
input[type="range"],
input[type="date"],
input[type="month"],
input[type="week"],
input[type="time"],
input[type="datetime"],
input[type="datetime-local"],
input[type="color"],
textarea,
select {
    font-family: 'Roboto Mono', monospace!important;
    color: #000!important;
    font-weight: 400;
    letter-spacing: 1px!important;
    border: 1px solid #787878;
    border-bottom: 2px solid #05080D;
    border-radius: 0;
    padding: 16px!important;
    background-color: transparent;
    outline-color: #94C21F;
    -webkit-transition: border 0.2s;
    -moz-transition: border 0.2s;
    -o-transition: border 0.2s;
    transition: border 0.2s;
}

input[type="text"]:hover,
input[type="email"]:hover,
input[type="url"]:hover,
input[type="password"]:hover,
input[type="search"]:hover,
input[type="number"]:hover,
input[type="tel"]:hover,
input[type="range"]:hover,
input[type="date"]:hover,
input[type="month"]:hover,
input[type="week"]:hover,
input[type="time"]:hover,
input[type="datetime"]:hover,
input[type="datetime-local"]:hover,
input[type="color"]:hover,
textarea:hover,
select:hover {
    border-bottom-color: #787878;
}

input[type="text"]:focus,
input[type="email"]:focus,
input[type="url"]:focus,
input[type="password"]:focus,
input[type="search"]:focus,
input[type="number"]:focus,
input[type="tel"]:focus,
input[type="range"]:focus,
input[type="date"]:focus,
input[type="month"]:focus,
input[type="week"]:focus,
input[type="time"]:focus,
input[type="datetime"]:focus,
input[type="datetime-local"]:focus,
input[type="color"]:focus,
textarea:focus,
select:focus {
    border-bottom-color: #033D2C;
}

textarea {
    width: 100%;
}

input[type="checkbox"],
input[type="radio"] {
    display: none!important;
}

input[type="checkbox"] + label,
input[type="radio"] + label {
	position: relative;
    color: #787878;
    font-weight: 400;
    font-size: 1em!important;
	padding-left: 22px !important;
	margin: 0 !important;
	vertical-align: text-bottom !important;
	line-height: 1.2 !important;
    letter-spacing: 1px!important;
}

input[type="checkbox"]:checked + label,
input[type="radio"]:checked + label {
    font-weight: normal!important;
    color: #000;
}

input[type="checkbox"] + label::before,
input[type="radio"] + label::before {
	content: "";
	position: absolute;
	left: 0;
	top: 50%;
	width: 15px;
	height: 15px;
	border-radius: 100%;
	border: 1px solid #000;
	display: block;
	transform: translateY(-50%);
    
    -webkit-transition: 0.2s;
    -moz-transition: 0.2s;
    -o-transition: 0.2s;
    transition: 0.2s;
}

input[type="checkbox"] + label::after,
input[type="radio"] + label::after {
	content: "";
	position: absolute;
	top: 50%;
	left: 3px;
	transform: translateY(-50%);
	width: 9px;
	height: 9px;
	border-radius: 100%;
    border: 2px solid transparent;
    background-color: transparent;
    
    -webkit-transition: 0.2s;
    -moz-transition: 0.2s;
    -o-transition: 0.2s;
    transition: 0.2s;
}

input[type="checkbox"]:not(:checked) + label:hover::after,
input[type="radio"]:not(:checked) + label:hover::after {
    border-color: #787878;
}

input[type="checkbox"]:checked + label::after,
input[type="radio"]:checked + label::after {
    border-color: #033D2C;
    background-color: #033D2C;
}

input[type="checkbox"] + label::before,
input[type="checkbox"] + label::after {
	border-radius: 0;
}


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

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

a {
    color: #000;
}

a:visited {
    color: #000;
}

a:hover,
a:focus,
a:active {
    color: #000;
}

a:focus {
    outline: thin dotted;
}

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

/*--------------------------------------------------------------
## Menus
--------------------------------------------------------------*/

.main-navigation {
    clear: both;
    display: block;
    /*width: 100%;*/
}

.main-navigation ul {
    list-style: none;
    margin: 0;
    padding-left: 0;
}

.main-navigation ul.menu {
    max-width: 600px;
}

.main-navigation ul.menu > li.active > a  {
    -webkit-text-fill-color: #94C21F;
    padding-bottom: 20%;
}

.main-navigation ul.menu > li.active > .sub-menu {
    opacity: 1;
    visibility: visible;
}

.main-navigation li {
    position: relative;
}

.main-navigation li.current-menu-item,
.main-navigation li.current_page_parent {

}

.main-navigation li.current-menu-item > a,
.main-navigation li.current_page_parent > a {
    -webkit-text-fill-color: #94C21F;
}

.main-navigation a {
    display: block;
    text-decoration: none;
}

.main-navigation ul ul {
    position: absolute;
    left: 100%;
    top: 0;
    opacity: 0;
    visibility: hidden;
    padding: 14px;
    padding-bottom: 30px;
    
    width: intrinsic;           /* Safari/WebKit utilisent un nom non-standard */
    width: max-content;         /* IE */
    width: -moz-max-content;    /* Firefox/Gecko */
    width: -webkit-max-content; /* Chrome */
    
    max-width: 40vw;
    
    -webkit-transition: 0.3s;
	-moz-transition: 0.3s;
	-o-transition: 0.3s;
	transition: 0.3s;
}

.main-navigation ul ul ul {
    left: 100%;
    top: 0;
    opacity: 0;
}

.main-navigation ul ul li {}

.main-navigation li:hover > a,
.main-navigation li.focus > a {}

.main-navigation ul ul :hover > a,
.main-navigation ul ul .focus > a {}

.main-navigation ul ul a:hover,
.main-navigation ul ul a.focus {}

.main-navigation ul li:hover > ul,
.main-navigation ul li.focus > ul {
    opacity: 1;
}

.main-navigation ul ul li:hover > ul,
.main-navigation ul ul li.focus > ul {
    opacity: 1;
}

.main-navigation .current_page_item > a,
.main-navigation .current-menu-item > a,
.main-navigation .current_page_ancestor > a,
.main-navigation .current-menu-ancestor > a {}

/* Small menu. */

.main-navigation.toggled ul {
    display: inline-block;
}

.site-main .comment-navigation,
.site-main .posts-navigation,
.site-main .post-navigation {
    margin: 0 0 1.5em;
    overflow: hidden;
}

.comment-navigation .nav-previous,
.posts-navigation .nav-previous,
.post-navigation .nav-previous {
    float: left;
    width: 50%;
}

.comment-navigation .nav-next,
.posts-navigation .nav-next,
.post-navigation .nav-next {
    float: right;
    text-align: right;
    width: 50%;
}

footer #menu-cmac-thyssen {
    column-count:2;
}

/*--------------------------------------------------------------
# Accessibility
--------------------------------------------------------------*/

/* Text meant only for screen readers. */

.screen-reader-text {
    clip: rect(1px, 1px, 1px, 1px);
    position: absolute !important;
    height: 1px;
    width: 1px;
    overflow: hidden;
    word-wrap: normal !important;
    /* Many screen reader and browser combinations announce broken words as they would appear visually. */
}

.screen-reader-text:focus {
    background-color: #f1f1f1;
    border-radius: 3px;
    box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
    clip: auto !important;
    color: #21759b;
    display: block;
    font-size: 14px;
    font-size: 0.875rem;
    font-weight: bold;
    height: auto;
    left: 5px;
    line-height: normal;
    padding: 15px 23px 14px;
    text-decoration: none;
    top: 5px;
    width: auto;
    z-index: 100000;
    /* Above WP toolbar. */
}

/* Do not show the outline on the skip link target. */

#content[tabindex="-1"]:focus {
    outline: 0;
}

/*--------------------------------------------------------------
# Alignments
--------------------------------------------------------------*/

.alignleft {
    display: inline;
    float: left;
    margin-right: 1.5em;
}

.alignright {
    display: inline;
    float: right;
    margin-left: 1.5em;
}

.aligncenter {
    clear: both;
    display: block;
    margin-left: auto;
    margin-right: auto;
}

/*--------------------------------------------------------------
# Clearings
--------------------------------------------------------------*/

.clear:before,
.clear:after,
.entry-content:before,
.entry-content:after,
.comment-content:before,
.comment-content:after,
.site-header:before,
.site-header:after,
.site-content:before,
.site-content:after,
.site-footer:before,
.site-footer:after {
    content: "";
    display: table;
    table-layout: fixed;
}

.clear:after,
.entry-content:after,
.comment-content:after,
.site-header:after,
.site-content:after,
.site-footer:after {
    clear: both;
}

/*--------------------------------------------------------------
# Widgets
--------------------------------------------------------------*/

/* Make sure select elements fit in widgets. */

.widget select {
    max-width: 100%;
}

/*--------------------------------------------------------------
# Content
--------------------------------------------------------------*/

/*--------------------------------------------------------------
## Posts and pages
--------------------------------------------------------------*/

.sticky {
    display: block;
}

.hentry {
    /*margin: 0 0 1.5em;*/
}

.byline,
.updated:not(.published) {
    display: none;
}

.single .byline,
.group-blog .byline {
    display: inline;
}

.page-content,
.entry-content,
.entry-summary {
    margin: 1.5em 0 0;
}

.entry-content {
    margin: 0!important;
}

.page-links {
    clear: both;
    margin: 0 0 1.5em;
}

/*--------------------------------------------------------------
## Comments
--------------------------------------------------------------*/

.comment-content a {
    word-wrap: break-word;
}

.bypostauthor {
    display: block;
}

/*--------------------------------------------------------------
# Infinite scroll
--------------------------------------------------------------*/

/* Globally hidden elements when Infinite Scroll is supported and in use. */

.infinite-scroll .posts-navigation,
/* Older / Newer Posts Navigation (always hidden) */

.infinite-scroll.neverending .site-footer {
    /* Theme Footer (when set to scrolling) */
    display: none;
}

/* When Infinite Scroll has reached its end we need to re-display elements that were hidden (via .neverending) before. */

.infinity-end.neverending .site-footer {
    display: block;
}

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

.page-content .wp-smiley,
.entry-content .wp-smiley,
.comment-content .wp-smiley {
    border: none;
    margin-bottom: 0;
    margin-top: 0;
    padding: 0;
}

/* Make sure embeds and iframes fit their containers. */

embed,
iframe,
object {
    max-width: 100%;
}

/*--------------------------------------------------------------
## Captions
--------------------------------------------------------------*/

.wp-caption {
    margin-bottom: 1.5em;
    max-width: 100%;
}

.wp-caption img[class*="wp-image-"] {
    display: block;
    margin-left: auto;
    margin-right: auto;
}

.wp-caption .wp-caption-text {
    margin: 0.8075em 0;
}

.wp-caption-text {
    text-align: center;
}

/*--------------------------------------------------------------
## Galleries
--------------------------------------------------------------*/

.gallery {
    margin-bottom: 1.5em;
}

.gallery-item {
    display: inline-block;
    text-align: center;
    vertical-align: top;
    width: 100%;
}

.gallery-columns-2 .gallery-item {
    max-width: 50%;
}

.gallery-columns-3 .gallery-item {
    max-width: 33.33%;
}

.gallery-columns-4 .gallery-item {
    max-width: 25%;
}

.gallery-columns-5 .gallery-item {
    max-width: 20%;
}

.gallery-columns-6 .gallery-item {
    max-width: 16.66%;
}

.gallery-columns-7 .gallery-item {
    max-width: 14.28%;
}

.gallery-columns-8 .gallery-item {
    max-width: 12.5%;
}

.gallery-columns-9 .gallery-item {
    max-width: 11.11%;
}

.gallery-caption {
    display: block;
}

#loader {
    z-index: 999999;
    display: block;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: url("/../wp-content/themes/cmac-thyssen/images/loader.svg") 50% 50% no-repeat #1e5e49;
}

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

@media (min-width: 2560px) {
    .boxed {
		max-width: 1850px;
    }
	
	div.boxed.half-left {
		margin-left: calc(((100vw - 1850px) / 2) - 10px)!important;
	}

	div.boxed.half-right {
		margin-right: calc(((100vw - 1850px) / 2) - 10px)!important;
	}
}

@media (max-width: 1555px) {
    .bloc_lettre_mot {
        margin-left: 0px;
    }
    .bloc_icone_lien.lien-droite a {
        position: relative;
    }
    .overlap.to-top-large {
        bottom: 200px;
    }
}

@media (max-width: 1400px) {
    #masthead .reseaux_sociaux_wrap {
        display: none;
    }
    .texte-generique-wrap .tg-titre h2 {
        position: relative;
    }
    .produit-rendu-wrap {
        display: none;
    }
    .equipement-rendu-wrap {
        display: none;
    }

}

@media (max-width: 1350px) {
    h1 {
        font-size: 4em;
    }

    h2 {
        font-size: 5em;
    }

    h3 {
        font-size: 1.8em;
    }

    h4 {
        font-size: 2em;
    }
    
    .boxed {
        padding-left: 30px!important;
        padding-right: 30px!important;
    }
    
    .boxed .boxed {
        padding-left: 0!important;
        padding-right: 0!important;
    }
    
    div.boxed.half-left {
		margin-left: 0!important;
		
        padding-left: 30px!important;
        padding-right: 0!important;
    }

    div.boxed.half-right {
		margin-right: 0!important;
		
        padding-left: 0!important;
        padding-right: 30px!important;
    }

    .overlap {
        position: static;
    }

    .overlap.no-origin > *:only-child {
        position: static;
    }
    
    .overlap.to-bottom-small {
        top: 0;
    }
    .overlap.to-bottom-small.no-gap {
        margin-top: 0;
    }

    .overlap.to-bottom-medium {
        top: 0;
    }
    .overlap.to-bottom-medium.no-gap {
        margin-top: 0;
    }

    .overlap.to-bottom-large {
        top: 0;
    }
    .overlap.to-bottom-large.no-gap {
        margin-top: 0;
    }

    /* --- */

    .overlap.to-top-small {
        bottom: 0;
    }
    .overlap.to-top-small.no-gap {
        margin-bottom: 0;
    }

    .overlap.to-top-medium {
        bottom: 0;
    }
    .overlap.to-top-medium.no-gap {
        margin-bottom: 0;
    }

    .overlap.to-top-large {
        bottom: 0;
    }

    .overlap.to-top-large.no-gap {
        margin-bottom: 0;
    }

    /* --- */

    .overlap.to-left-small {
        right: 0;
    }
    .overlap.to-left-small.no-gap {
        margin-right: 0;
    }

    .overlap.to-left-medium {
        right: 0;
    }
    .overlap.to-left-medium.no-gap {
        margin-right: 0;
    }

    .overlap.to-left-large {
        right: 0;
    }
    .overlap.to-left-large.no-gap {
        margin-right: 0;
    }

    /* --- */

    .overlap.to-right-small {
        left: 0;
    }
    .overlap.to-right-small.no-origin {
        margin-left: 0;
    }

    .overlap.to-right-medium {
        left: 0;
    }
    .overlap.to-right-medium.no-gap {
        margin-left: 0;
    }

    .overlap.to-right-large {
        left: 0;
    }
    .overlap.to-right-large.no-gap {
        margin-left: 0;
    }
    .texte-generique-wrap .tg-titre {
        position: relative;
    }
    .spacer {
        height:0!important;
    }
    .intro-enonce-titre {
        opacity: 0.2;
        position: relative;
        margin-left: 0px;
        margin-top: 0px;
    }
    .intro-enonce-titre h2 {
        font-size: 6em;
    }
    .intro-photo-h {
        position: relative;
    }
    .produit-image {
        margin:0;
        position: relative;
        display: flex;
        align-items: center;
        justify-content: center;
        height: 100%;
    }
    .single-produit .produit-code {
        margin-left: 0px;
    }
    .produit-code h3 {
        font-size: 1em;
    }
    .equipement-image {
        margin:0;
        position: relative;
        display: flex;
        align-items: center;
        justify-content: center;
        height: 100%;
    }
    .single-equipement .equipement-code {
        margin-left: 0px;
    }
    .equipement-code h3 {
        font-size: 1em;
    }
    .lignetemps_wrapper > .layout-flex {
        flex-wrap: nowrap;
        justify-content: flex-start;
        height: 425px;
        margin-bottom: 80px;
        margin-left: 60px;
    }
    .date-titre {
        width: 150px;
        max-width: auto;
    }
    .rotating {
      animation-direction: reverse;
    }
    .produit-single-titre {
        margin-top: -90px;
    }
    .equipement-single-titre {
        margin-top: -90px;
    }
    .video-wrap-titre {
        left: 0;
    }
}

@media (max-width: 1200px) {
    #view-intro .intro-titre {
        font-size: 4.4em;
        max-width: 800px;
    }
    .tuile .lettre {
        font-size: 11em;
    }
    .video-wrap-titre {
        position: absolute;
        left: 20px;
        top: -0px;
        max-width: 275px;
    }
    .main-navigation ul li a {
        font-size: 2.75em;
    }
    .main-navigation ul.menu {
        max-width: 480px;
    }
    .main-navigation ul.sub-menu > li > a {
        font-size: 1em;
    }
    #section-innovateur {
        margin-bottom: 200px;
    }
    .intro-enonce-description {
        padding-top: 0px;
    }
    .page .intro-enonce {
        margin-top: 1em;
    }
    .page .intro-enonce h3 {
        margin-top: 0em;
    }
    .single-produit h1 {
        max-width: 100%;
    }
    .single-equipement h1 {
        max-width: 100%;
    }
}

@media (max-width: 1060px) {
    h6 {
        font-size: 1.6em;
    }
    .tuile-description {
        display: none;
    }
    .bloc_lettre_lettre {
        font-size: 30em;
    }
    .footer_wrap li a {
        text-transform: uppercase;
        letter-spacing: 1px;
        font-weight: 700;
        font-size: 0.9em;
        padding: 5px 0;
    }
}

@media (max-width: 960px) {
    h1 {
        font-size: 2.8em;
    }

    h2 {
        font-size: 1.8em;
    }

    h3 {
        /*font-size: 1.2em;*/
        font-size: 1.4em;
    }
    .main-navigation ul.menu {
        max-width: 360px;
    }
    .main-navigation ul li a {
        padding: 10px 10px;
        font-size: 1.8em;
        -webkit-text-stroke-width: 1px;
    }
    #site-menu .menu-wrapper {
        padding: 100px 20px;
    }
    .sidebar .layout-25 {
        width: 100%;
    }
    .nav_wrap .layout-25 {
        width: 40%;
    }
    .nav_wrap .layout-15 {
        width: 0;
    }
    .nav_wrap .reseaux_sociaux_wrap {
        display: none;
    }
    .menu-portail-wrap {
        display: none;
    }
    #view-intro .intro-titre {
        font-size: 2em;
        padding: 0 40px;
        max-width: initial;
    }
    #view-plan-1 {
        width: 100%;
    }
    #view-intro {
        height: 100vh;
        min-height: 900px;
    }
    #view-intro .intro-enonce {
        text-align: center;
        max-width: 100%;
        padding: 0 20px;
    }
    #view-intro .intro-enonce-front {
        text-align: center;
        max-width: 100%;
        padding: 0 20px;
        line-height: 1.3em;
    }
    .tuile-info {
        opacity: 1;
        padding: 20px;
    }
    .tuile .lettre {
        font-size: 8em;
    }
    .tuile-info h4 {
        font-size: 1.8em;
    }
    h2 {
        font-size: 2.8em;
    }
    .bloc_lettre_mot {
        letter-spacing: 5px;
        font-size: 2.2em;
    }
    #intro-page .layout-60, #intro-page .layout-40 {
        width: 100%;
    }
    .intro-enonce {
        padding: 0;
    }
    .intro-cta {
        padding: 0 20px;
    }
    .intro-photo-h {
        position: relative;
        margin-left: 0;
    }
    .intro-photo-v img, .intro-photo-h img {
        width: 100%;
    }
    #intro-page .layout-flex > * {
        padding-right: 0px;
    }
    .enonce_wrap {
        padding-top: 0px;
        /*margin-top: -80px!important;*/
    }
    .intro-enonce-titre h2 {
        font-size: 3em;
    }
    .intro-enonce-titre {
        /*opacity: 1;*/
    }
    .enonce_wrap {
        padding-top: 0px;
        margin-top: -40px;
    }
    .projet-info-unique {
        font-size: 1em;
    }
    .intro-enonce {
        margin-left: 0px;
    }
    .valeur_wrap {
        margin-bottom: 40px;
        flex-direction: column;
    }
    .valeur_titre {
        text-align: center;
    }
    .produit-image {
        display: none;
    }
    .produit-equipement {
        display: none;
    }
    .masonry { 
      column-count: 1;
      column-gap: 0em;
    }
    .masonry .item {
        padding: 0;
    }
    .single-produit h1 {
        font-size: 1.6em;
        margin-bottom: 40px;
    }
    .single-equipement h1 {
        font-size: 1.6em;
        margin-bottom: 40px;
    }
    .produit-wrap {
        height: auto;
    }
    .equipement-wrap {
        height: auto;
    }
    .produit-titre {
        margin-left: 30px;
    }
    .equipement-titre {
        margin-left: 30px;
    }
    .produit-lien {
        margin-left: 0;
    }
    .equipement-lien {
        margin-left: 0;
    }
    #intro-espace {
        display: none;
    }
    #intro-lien, .intro-cta {
        text-align: center;
    }
    #circulaire {
        letter-spacing: 1px;
    }
    .emploi-lien {
        display: none;
    }
    .intro-enonce-description {
        padding-top: 0px;
    }
    .intro-enonce {
        margin-left: 0px;
        margin-top: 1em;
    }
    .lignetemps_titre h4 {
        padding-top: 87px;
        font-size: 1.6em;
    }

}

@media (max-width: 780px) {  
    h1 {
        font-size: 3.2em;
    }

    h2 {
        font-size: 3em;
    }

    h3 {
        font-size: 2em;
    }
    h4 {
        font-size: 2em;
    }
    .mobile-boxed {
        padding-left: 30px!important;
        padding-right: 30px!important;
    }  
    div.boxed.half-left,
    div.boxed.half-right {
        padding-left: 30px!important;
        padding-right: 30px!important;
    }
    footer div.boxed.half-left, div.boxed.half-right {
        padding-left: 0px!important;
        padding-right: 0px!important;
    }
    #pl-32 #panel-32-1-0-0 {
        margin: 0px 30px!important;
    }
    .tg-sous-titre h3 {
        font-size: 1.9em;
    }
    .bloc_icone_lien.lien-droite a {
        position: relative;
        left: -10px;
        min-width: 390px;
        bottom: 0;
        max-width: 100%;
        margin-top: 20px;
    }
    #section-engage {
        background-position: right bottom!important;
        background-size: 900px!important;
    }
    .projet-wrap .item {
        width: 50%;
        padding-right: 10px;
    }
    .projet-wrap .slick-projet-photo .item:only-child {
        width: 100%!important;
        padding-right: 0px!important;
    }
    .projet-info-wrap {
        width: 100%;
    }
    .projet-info-icone > img:only-child {
        width: 45px;
        max-height: 45px;
    }
    .lignetemps_titre h4 {
        padding-top: 0px;
    }
}

@media (max-width: 760px) {
    body {
        padding-top: 0!important;
        overflow-x: hidden;
    }
    .nav_wrap.fixed {
        /*position: static;*/
        position: fixed;
    }
    .main-navigation ul.menu > li.active > a {
        padding-bottom: 0;
    }
    .main-navigation ul ul {
        opacity: 1;
        visibility: visible;
        max-width: none;
    }
    #menu-arrow {
        visibility: visible!important;
    }
    #logo {
        width:100%;
    }
    button {
        text-align: center;
        border-color: transparent!important;
        background: transparent!important;
        background-color: transparent!important;
    }
    .nav_wrap {
        /*position: relative;
        padding: 0;*/
    }
    .nav_wrap .nav-links {
        order: 2;
    }
    .nav_wrap .nav-menu {
        order: 3;
    }
    .main-navigation .menu-button {
        display: block;
        position: absolute;
        top: 10px;
        right: 10px;
    }
    .main-navigation {
        position: relative!important;
        height: auto!important;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        height: auto!important;
        float: none;
        top: 0;
        left: 0;
        z-index: 10000;
        width: 100%;
        height: 100%;
    }
    .main-navigation ul {
        width: 100%;
    }
    .main-navigation ul li:hover > ul, .main-navigation ul li.focus > ul {
        /*display: block;*/
        display:none;
    }
    .sub-open .sub-menu {
        display: block!important;
        opacity: 1;
        visibility: visible;
    }
    .main-navigation ul.menu > li.active > a  {
        -webkit-text-fill-color: #94C21F;
        padding-bottom: 10px;
    }
    .main-navigation ul ul {
        box-shadow: none;
        position: static;
        width: 100%;
    }
    .main-navigation ul li {
        width: 100%;
        text-align: center;
        padding-right: 0;
    }
    .main-navigation ul.menu {
        max-width: none;
    }
    .menu-plus {
        display: flex;
    }
    .menu-item-has-children .sub-menu {
        display: none;
    }
    .menu-item-has-children .sub-menu-active {
        display: block!important;
    }
    .nav_wrap .layout-max {
        width: 100%;
    }
    .nav_wrap .layout-20 {
        width: 30%;
    }
    .layout-flex > * {
        padding-right: 0;
    }
    .layout-5 {
        width: 100%;
    }
    .layout-10 {
        width: 100%;
    }
    .layout-15 {
        width: 100%;
    }
    .layout-20 {
        width: 100%;
    }
    .layout-25 {
        width: 100%;
    }
    .layout-30 {
        width: 100%;
    }
    .layout-33 {
        width: 100%;
    }
    .layout-35 {
        width: 100%;
    }
    .layout-40 {
        width: 100%;
    }
    .layout-45 {
        width: 100%;
    }
    .layout-50 {
        width: 100%;
    }
    .layout-55 {
        width: 100%;
    }
    .layout-60 {
        width: 100%;
    }
    .layout-65 {
        width: 100%;
    }
    .layout-66 {
        width: 100%;
    }
    .layout-70 {
        width: 100%;
    }
    .layout-75 {
        width: 100%;
    }
    .layout-80 {
        width: 100%;
    }
    .layout-85 {
        width: 100%;
    }
    .layout-90 {
        width: 100%;
    }
    .layout-95 {
        width: 100%;
    }
    h1.entry-title {
        text-align: center;
    }
    .footer_logo_wrap {
        margin: 0 auto;
    }
    .os_credit {
        float: none;
    }
    .so-widget-tuiles-dyade .layout-flex.flex-wrap-nowrap {
        flex-wrap:wrap;
        flex-direction:column-reverse;
    }
    .tuile .lettre-haut {
        margin-bottom: -0.76em;
        position:absolute;
        bottom: 0
    }
    .tuile .lettre-bas {
        margin-top: -0.76em;
        position:absolute;
        top: 0
    }
    footer {
        text-align: center;
    }
    footer .so-widget-sow-image-default-1c389ca87c1a .sow-image-container {
        max-width: 200px;
        margin: auto;
    }
    .bloc_contour_wrap .bloc_icone_description {
        width: 100%;
        max-width: none;
    }
    .bloc_lettre_lettre {
        font-size: 21em!important;
        position: relative;
        z-index: 9;
    }
    .bloc_lettre_mot {
        font-size: 1.8em!important;
        line-height: 1!important;
    }
    .footer-item {
        border-right: 0px!important;
    }
    .footer_wrap .mobile-boxed {
        padding-left: 0px!important;
        padding-right: 0px!important;
    }
    #footer-siege-social {
        margin:30px 0;
    }
    .so-widget-tableau-reconnaissance .tableau-annee {
        padding: 40px 0!important;
        background: #fff;
        color: #195140;
    }
    .home .tg-texte {
        width: 100%;
        max-width: 600px;
    }
    .projets_wrapper .layout-25 {
        width: 50%;
    }
    .projet-lien {
        padding: 10px 0;
    }
    .projet-wrap .projet-titre h2 {
        font-size: 3em!important;
    }
    .projet-info {
        border-left: solid 0px #ccc;
        padding-left: 0px;
    }
    .emploi-titre h2 {
        font-size: 2.4em;
    }
    .emploi-wrap .layout-50 {
        display: flex;
        justify-content: center;
    }
    a.btn-fleche::after {
        content: "";
        display: block;
        position: absolute;
        top: calc(50% - 10px);
        right: 0;
        width: 70px;
        height: 20px;
        background-image: url(/../wp-content/themes/cmac-thyssen/images/icone-fleche-cmac-thyssen.svg);
        background-size: auto;
        background-repeat: no-repeat;
        background-position: center right;
        -webkit-transition: 0.3s;
        -moz-transition: 0.3s;
        -o-transition: 0.3s;
        transition: 0.3s;
    }
    .entry-header {
        margin-top: 20vh;
        margin-bottom: 10vh;
        min-height: 220px;
    }
    div.boxed.half-left, div.boxed.half-right {
        padding-left: 30px!important;
        padding-right: 30px!important;
    }
    div.boxed.half-left.panel-cell-style-for-w5e1f3f63024c8-1-0, div.boxed.half-right.panel-cell-style-for-w5e1f3f63024c8-1-0 {
        padding-left: 0px!important;
        padding-right: 0px!important;
    }
    .main-navigation ul.sub-menu > li > a:hover {
        padding-left: 0px;
    }
    .main-navigation ul.sub-menu > li > a:hover::after {
        opacity: 0;
    }
    .single-produit h1.entry-title {
        text-align: left;
        padding-left: 0px;
        padding-top: 90px;
    }
    .single-equipement h1.entry-title {
        text-align: left;
        padding-left: 0px;
        padding-top: 90px;
    }
    .single-produit #primary {
        background-repeat: no-repeat;
    }
    .single-equipement #primary {
        background-repeat: no-repeat;
    }
    .single-produit .entry-header {
        margin-bottom: 0vh;
    }
    .single-equipement .entry-header {
        margin-bottom: 0vh;
    }
    #bloc-chiffres-wrap {
        padding-top: 0em;
    }
    .lignetemps_date h3 {
        font-size: 5em;
    }
    .page .intro-enonce h3 {
        font-size: 1em;
        line-height: 1.4em;
    }
    .single-produit .produit-code {
        font-size: 3em;
    }
    .single-equipement .equipement-code {
        font-size: 3em;
    }
    .single-produit h1 {
        font-size: 1.2em;
    }
    .single-equipement h1 {
        font-size: 1.2em;
    }
    .product-info h4 {
        font-size: 1.3em;
    }
    .projet-wrap .projet-titre h2 {
        padding: 160px 140px 0 0;
    }
    .projet-wrap .prev-cmac {
        left: 0;
    }
    #page {
        overflow-x: hidden;
    }
}


@media (max-height: 700px) {
    .main-navigation ul li a {
        font-size: 2.5em;
        -webkit-text-stroke-width: 1px;
    }
}

@media (max-height: 700px), (max-width: : 760) {
    .main-navigation ul li a {
        font-size: 1.7em;
    }
}


@media (max-width: 660px) {
    .sub_04 {
        display: none;
    }
    .single-post blockquote {
        width: 100%;
        max-width: none;
        margin: 20px 0 20px 20px;
    }
    h3 {
        font-size: 1.5em;
    }
    .bloc_contour_wrap .bloc_icone_description {
        padding: 20px;
    }
    .emploi-wrap .bloc_contour_wrap {
        width: inherit;
    }
    .so-widget-liste-emplois .bloc_contour_wrap h4 {
        font-size: 1.4em;
    }
}

@media (max-width: 640px) {
    .gform_wrapper div.validation_error {
        width: 100%!important;
    }
    .footer-item {
        border-right: 0px solid #f5f5f5;
    }
    .bloc_contour_alt .bloc_icone_description {
        margin-left: 10px;
    }
}

@media (max-width: 540px) {
    footer #menu-cmac-thyssen {
        column-count: 1;
    }
    footer .boxed.half-right .layout-flex {
        flex-wrap: wrap!important;
    }
    #nav_menu-4 h6 {
        margin-top: 30px;
    }
    .bloc_icone_lien.lien-droite a {
        min-width: auto;
    }
    a.btn-fleche, a.btn-fleche:visited {
        padding-right: 100px;
        width: 100%;
    }
    .intro-boussole {
        top: -300px;
        left: -130px;
    }
}

@media (max-width: 500px) {
    h1 {
        font-size: 2em;
    }
    h2 {
        font-size: 1.9em;
        /*padding: 0 20px;*/
    }
    h3 {
        font-size: 1.6em;
    }
    h4 {
        font-size: 1.6em;
    }
    .tuile-info h4 {
        font-size: 1.2em;
        line-height: 1.5em;
    }
    .projet-wrap .projet-titre h2 {
        font-size: 2em!important;
    }
    .single-produit .video-wrap {
        padding: 40px 20px 0px 20px;
    }
    .single-equipement .video-wrap {
        padding: 40px 20px 0px 20px;
    }
    .video-wrap-titre {
        position: relative;
        left: 0px;
        top: 0;
        max-width: 100%;
    }
    .single-produit .diagonal-border.db-top-up::before {
        -webkit-clip-path: polygon(100% 0px, -1200px 200px, 0% 100%, 100% 100%);
        clip-path: polygon(100% 0px, -1200px 200px, 0% 100%, 100% 100%);
    }
    .single-equipement .diagonal-border.db-top-up::before {
        -webkit-clip-path: polygon(100% 0px, -1200px 200px, 0% 100%, 100% 100%);
        clip-path: polygon(100% 0px, -1200px 200px, 0% 100%, 100% 100%);
    }
    .single-produit .diagonal-border.db-top-down::before {
    -webkit-clip-path: polygon(100% 100px, 0 0, 0% 100%, 100% 100%);
    clip-path: polygon(100% 100px, 0 0, 0% 100%, 100% 100%);
    }
    .single-equipement .diagonal-border.db-top-down::before {
    -webkit-clip-path: polygon(100% 100px, 0 0, 0% 100%, 100% 100%);
    clip-path: polygon(100% 100px, 0 0, 0% 100%, 100% 100%);
    }
    .single-produit .diagonal-border.db-top-up, .single-produit .diagonal-border.db-top-down {
        padding-top: 100px;
    }
    .single-equipement .diagonal-border.db-top-up, .single-equipement .diagonal-border.db-top-down {
        padding-top: 100px;
    }
    #section-video {
        margin-top: -100px;
    }
    .entry-header {
        min-height: auto;
    }
    .produit-titre {
        margin-top: -40px;
        margin-left: 10px;
        font-size: 0.9em;
    }
    .equipement-titre {
        margin-top: -40px;
        margin-left: 10px;
        font-size: 0.9em;
    }
    .produit-code {
        font-size: 3em;
    }
    .equipement-code {
        font-size: 3em;
    }
    .produit-wrap {
        padding: 20px;
        margin-bottom: 20px;
    }
    .equipement-wrap {
        padding: 20px;
        margin-bottom: 20px;
    }
}


@media (max-width: 321px) {
    h4 {
        font-size: 1.2em;
    }
}