/*!
Theme Name: Polyprod
Author: Gregory
Description: Description
Version: 1.0.0
Tested up to: 5.4
Requires PHP: 5.6
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: polyprod
Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready
*/

/*--------------------------------------------------------------
>>> TABLE OF CONTENTS:
----------------------------------------------------------------
# Generic
	- Normalize
	- Box sizing
# Base
	- Typography
	- Elements
	- Links
	- Forms
## Layouts
# Components
	- Navigation
	- Posts and pages
	- Comments
	- Widgets
	- Media
	- Captions
	- Galleries
# plugins
	- Jetpack infinite scroll
# Utilities
	- Accessibility
	- Alignments

--------------------------------------------------------------*/

/*--------------------------------------------------------------
# Generic
--------------------------------------------------------------*/

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

/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */

/* Document
	 ========================================================================== */

/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */
html {
	line-height: 1.15;
	-webkit-text-size-adjust: 100%;
}

/* Sections
	 ========================================================================== */

/**
 * Remove the margin in all browsers.
 */
body {
	margin: 0;
}

/**
 * Render the `main` element consistently in IE.
 */
main {
	display: block;
}

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */
h1 {
	font-size: 2em;
	margin: 0.67em 0;
}

/* Grouping content
	 ========================================================================== */

/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
	box-sizing: content-box;
	height: 0;
	overflow: visible;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
pre {
	font-family: monospace, monospace;
	font-size: 1em;
}

/* Text-level semantics
	 ========================================================================== */

/**
 * Remove the gray background on active links in IE 10.
 */
a {
	background-color: transparent;
}

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
	border-bottom: none;
	text-decoration: underline;
	text-decoration: underline dotted;
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
	font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
samp {
	font-family: monospace, monospace;
	font-size: 1em;
}

/**
 * Add the correct font size in all browsers.
 */
small {
	font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */
sub,
sup {
	font-size: 75%;
	line-height: 0;
	position: relative;
	vertical-align: baseline;
}

sub {
	bottom: -0.25em;
}

sup {
	top: -0.5em;
}

/* Embedded content
	 ========================================================================== */

/**
 * Remove the border on images inside links in IE 10.
 */
img {
	border-style: none;
}

/* Forms
	 ========================================================================== */

/**
 * 1. Change the font styles in all browsers.
 * 2. Remove the margin in Firefox and Safari.
 */
button,
input,
optgroup,
select,
textarea {
	font-family: inherit;
	font-size: 100%;
	line-height: 1.15;
	margin: 0;
}

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */
button,
input {
	overflow: visible;
}

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */
button,
select {
	text-transform: none;
}

/**
 * Correct the inability to style clickable types in iOS and Safari.
 */
button,
[type="button"],
[type="reset"],
[type="submit"] {
	-webkit-appearance: button;
}

/**
 * Remove the inner border and padding in Firefox.
 */
button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
	border-style: none;
	padding: 0;
}

/**
 * Restore the focus styles unset by the previous rule.
 */
button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
	outline: 1px dotted ButtonText;
}

/**
 * Correct the padding in Firefox.
 */
fieldset {
	padding: 0.35em 0.75em 0.625em;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *		`fieldset` elements in all browsers.
 */
legend {
	box-sizing: border-box;
	color: inherit;
	display: table;
	max-width: 100%;
	padding: 0;
	white-space: normal;
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
	vertical-align: baseline;
}

/**
 * Remove the default vertical scrollbar in IE 10+.
 */
textarea {
	overflow: auto;
}

/**
 * 1. Add the correct box sizing in IE 10.
 * 2. Remove the padding in IE 10.
 */
[type="checkbox"],
[type="radio"] {
	box-sizing: border-box;
	padding: 0;
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
	height: auto;
}

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */
[type="search"] {
	-webkit-appearance: textfield;
	outline-offset: -2px;
}

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */
[type="search"]::-webkit-search-decoration {
	-webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */
::-webkit-file-upload-button {
	-webkit-appearance: button;
	font: inherit;
}

/* Interactive
	 ========================================================================== */

/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */
details {
	display: block;
}

/*
 * Add the correct display in all browsers.
 */
summary {
	display: list-item;
}

/* Misc
	 ========================================================================== */

/**
 * Add the correct display in IE 10+.
 */
template {
	display: none;
}

/**
 * Add the correct display in IE 10.
 */
[hidden] {
	display: none;
}

/* Box sizing
--------------------------------------------- */

/* Inherit box-sizing to more easily change it's value on a component level.
@link http://css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice/ */
*,
*::before,
*::after {
	box-sizing: inherit;
}

html {
	box-sizing: border-box;
}

/*--------------------------------------------------------------
# Base
--------------------------------------------------------------*/

/* Typography
--------------------------------------------- */
body,
button,
input,
select,
optgroup,
textarea {
	color: #404040;
	font-family: 'Montserrat', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
	line-height: 1.25;
}

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

p {
	margin-bottom: 1.2em;
	margin-top:0;
	line-height:1.75;
}

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

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

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

big {
	font-size: 125%;
}

/* Elements
--------------------------------------------- */
body {
	background: #fff;
}

hr {
	background-color: #f4f5f6;
	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: 700;
}

dd {
	margin: 0 1.5em 1.5em;
}

/* Make sure embeds and iframes fit their containers. */
embed,
iframe,
object {
	max-width: 100%;
}

img {
	height: auto;
	max-width: 100%;
}

figure {
	margin: 1em 0;
}

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

/* Links
--------------------------------------------- */
a {
	color: #4169e1;
}

a:visited {
	color: #800080;
}

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

a:focus {
	outline: none;
}

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

/* 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, 0.8);
	line-height: 1;
	padding: 0.6em 1em 0.4em;
}

button:hover,
input[type="button"]:hover,
input[type="reset"]:hover,
input[type="submit"]:hover {
	border-color: #ccc #bbb #aaa;
}

button:active,
button:focus,
input[type="button"]:active,
input[type="button"]:focus,
input[type="reset"]:active,
input[type="reset"]:focus,
input[type="submit"]:active,
input[type="submit"]:focus {
	border-color: #aaa #bbb #bbb;
}

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 {
	color: #666;
	border: 1px solid #ccc;
	border-radius: 3px;
	padding: 3px;
}

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 {
	color: #111;
}

select {
	border: 1px solid #ccc;
}

textarea {
	width: 100%;
}

/*--------------------------------------------------------------
# Layouts
--------------------------------------------------------------*/

/*--------------------------------------------------------------
# Components
--------------------------------------------------------------*/

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

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

.main-navigation ul ul ul {
	left: -999em;
	top: 0;
}

.main-navigation ul ul li:hover > ul,
.main-navigation ul ul li.focus > ul {
	display: block;
	left: auto;
}

.main-navigation ul li:hover > ul,
.main-navigation ul li.focus > ul {
	left: auto;
}

.main-navigation li {
	position: relative;
}

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

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

.comment-navigation .nav-links,
.posts-navigation .nav-links,
.post-navigation .nav-links {
	display: flex;
}

.comment-navigation .nav-previous,
.posts-navigation .nav-previous,
.post-navigation .nav-previous {
	flex: 1 0 50%;
}

.comment-navigation .nav-next,
.posts-navigation .nav-next,
.post-navigation .nav-next {
	text-align: end;
	flex: 1 0 50%;
}

/* Posts and pages
--------------------------------------------- */
.sticky {
	display: block;
}

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

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

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

.bypostauthor {
	display: block;
}

/* Widgets
--------------------------------------------- */
.widget {
	margin: 0 0 1.5em;
}

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

/* 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 logo link wraps around logo image. */
.custom-logo-link {
	display: flex;
}

/* 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;
	display: grid;
	grid-gap: 1.5em;
}

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

.gallery-columns-2 {
	grid-template-columns: repeat(2, 1fr);
}

.gallery-columns-3 {
	grid-template-columns: repeat(3, 1fr);
}

.gallery-columns-4 {
	grid-template-columns: repeat(4, 1fr);
}

.gallery-columns-5 {
	grid-template-columns: repeat(5, 1fr);
}

.gallery-columns-6 {
	grid-template-columns: repeat(6, 1fr);
}

.gallery-columns-7 {
	grid-template-columns: repeat(7, 1fr);
}

.gallery-columns-8 {
	grid-template-columns: repeat(8, 1fr);
}

.gallery-columns-9 {
	grid-template-columns: repeat(9, 1fr);
}

.gallery-caption {
	display: block;
}

/*--------------------------------------------------------------
# Plugins
--------------------------------------------------------------*/

/* Jetpack infinite scroll
--------------------------------------------- */

/* Hide the Posts Navigation and the Footer when Infinite Scroll is in use. */
.infinite-scroll .posts-navigation,
.infinite-scroll.neverending .site-footer {
	display: none;
}

/* Re-display the Theme Footer when Infinite Scroll has reached its end. */
.infinity-end.neverending .site-footer {
	display: block;
}

/*--------------------------------------------------------------
# Utilities
--------------------------------------------------------------*/

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

/* Text meant only for screen readers. */
.screen-reader-text {
	border: 0;
	clip: rect(1px, 1px, 1px, 1px);
	clip-path: inset(50%);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute !important;
	width: 1px;
	word-wrap: normal !important;
}

.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;
	clip-path: none;
	color: #21759b;
	display: block;
	font-size: 0.875rem;
	font-weight: 700;
	height: auto;
	left: 5px;
	line-height: normal;
	padding: 15px 23px 14px;
	text-decoration: none;
	top: 5px;
	width: auto;
	z-index: 100000;
}

/* Do not show the outline on the skip link target. */
#primary[tabindex="-1"]:focus {
	outline: 0;
}

/* Alignments
--------------------------------------------- */
.alignleft {

	/*rtl:ignore*/
	float: left;

	/*rtl:ignore*/
	margin-right: 1.5em;
	margin-bottom: 1.5em;
}

.alignright {

	/*rtl:ignore*/
	float: right;

	/*rtl:ignore*/
	margin-left: 1.5em;
	margin-bottom: 1.5em;
}

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



/* FONTS */

@font-face {
	font-family: 'Montserrat';
	font-stretch: 100;
	font-weight: 400-700;
	src: url(css/fonts/Montserrat/Montserrat-VariableFont_wght.ttf);
}





/* GLOBAL */

html.stop-overflow,
html.stop-overflow-menu{
	position: fixed; 
    overflow-y: scroll;
    width: 100%;
}

body{
	margin:0;
	color:#000;
	font-size:13px;
}

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

.container{
	margin:0 auto;
}

.btn{
	text-align:center;
	padding:18px 25px;
	text-transform:uppercase;
	border:1px solid #000;
	text-decoration:none;
	transition:all .3s;
	display:flex;
	align-items:center;
	justify-content:center;
	font-size:14px;
}

.btn.white{
	color:#fff;
	border-color:#fff;
}

.btn.white .arrow path{
	fill:#fff;
}

.btn .arrow{
	transform: rotate(180deg) translateX(10px);
	width: 16px;
	height:auto;
	opacity:0;
	transition: all .2s;
}

.btn:hover .arrow{
	opacity:1;
	transform:rotate(180deg) translateX(15px);
}

.btn span{
	transition:all .2s;
	display:inline-block;
	transform:translateX(-7px)
}

.btn:hover span{
	transform:translateX(-2px);
}

a.link{
	text-transform:uppercase;
	display:inline-flex;
	align-items:center;
	text-decoration:none;
	letter-spacing: 0.9375px;
	align-self:flex-start;
}

a.link::before{
	content:'';
	display:block;
	width:50px;
	height:1px;
	background:#000;
	margin-right:20px;
	transition:all .3s;
}

a.link:hover::before{
	width:60px;
}

p,h1,h2,h3,h4,h5,h6{
	margin-top:0;
}

h1{
	font-size:25px;
}

h2{
	font-size:20px;
	font-weight:700;
}

h3{
	font-size:15px;
}

.line{
	width: 50px;
	height: 1px;
	background: #000;
	margin-bottom:15px;
}

.line.green{
	background: #2ea233;
}

.line.scroll-animation{
	animation-name: line-animation;
}

.table{
	width:100%;
	overflow-y:auto;
}

.acf-blocs .acf-bloc{
	margin-bottom:50px;
}

.acf-blocs .acf-bloc:last-of-type{
	margin-bottom:0;
}

.page-header{
	overflow:hidden;
}

.page-header > .container{
	position:relative;
}





/* ANIMATIONS */

.before-animation{
	opacity:0;
}

.animate{
	animation-fill-mode: forwards !important;
	animation-delay: .5s;
	animation-duration: .6s;
}

.fadeInUp.scroll-animation{
	animation-name: fadeInUp;
}

.fadeInLeft.scroll-animation{
	animation-name: fadeInLeft;
}

.fadeInRight.scroll-animation{
	animation-name: fadeInRight;
}

@keyframes line-animation {
	0% {
		width:0;
		opacity: 1;
	}
	100% {
		width:50px;
		opacity:1
	}
}

@keyframes fadeInUp {
	0% {
		transform:translateY(50px);
		opacity: 0;
	}
	100% {
		transform:translateY(0);
		opacity:1
	}
}

@keyframes fadeInLeft {
	0% {
		transform:translateX(-50px);
		opacity: 0;
	}
	100% {
		transform:translateX(0);
		opacity:1
	}
}

@keyframes fadeInRight {
	0% {
		transform:translateX(50px);
		opacity: 0;
	}
	100% {
		transform:translateX(0);
		opacity:1
	}
}

@keyframes slideInLeft {
	0% {
		transform:translateX(-100vw);
	}
	100% {
		transform:translateX(0);
	}
}

@keyframes slideInRight {
	0% {
		transform:translateX(100vw);
	}
	100% {
		transform:translateX(0);
	}
}


/* HEADER */

#masthead{
	position: fixed;
	width: 100%;
	top: 0;
	background: #fff;
	z-index: 10;
	border-bottom: 1px solid #f4f5f6;
}

#masthead:hover {
	transition: all .3s .3s;
}

#masthead .inner{
	display:flex;
	justify-content:space-between;
	align-items:center;
}

#masthead .site-branding{
	position: relative;
}

#masthead .custom-logo-link{
	transition: all .3s;
}

#masthead .site-branding #logo-polyprod{
	margin-left:-8px;
}

#masthead .site-branding #logo-polyprod path{
	fill:#2E91AB;
}

#masthead .site-branding #logo-poly{
  	animation: logo_poly 1.5s;
}

@keyframes logo_poly {
	0%, 40% {
		opacity:0;
		transform: translateX(-10px);
	}
	100% {
	  	opacity:1;
		transform: translateX(0px);
	}
}

#masthead .site-branding #logo-prod{
	animation: logo_prod 1.5s;
}

@keyframes logo_prod {
	0%, 40% {
		opacity:0;
		transform: translateX(10px);
	}
	100% {
		opacity:1;
		transform: translateX(0px);
	}
}

#masthead .site-branding .icon-effect {
	position: absolute;
	top: 0;
	background: white;
	transform: skew(-50deg);
	animation: logo_shine 15s infinite cubic-bezier(.79,.14,.15,.86), logo_opacity 15s infinite linear;
	animation-delay:1.2s;
	z-index:2;
}

#masthead .site-branding .icon-effect.second {
	animation-delay:1.35s;
}

@keyframes logo_shine {
	0% {
		left: -130px;
	}
	5%, 100% {
	  	left: 100%;
	}
}

@keyframes logo_opacity {
	0%, 5%, 100%  {
		opacity:0;
	}
	2.2%, 2.8%{
		opacity:.3;
	}
	2.5%{
		opacity:.5;
	}
}

#masthead .site-branding.shine .icon-effect {
	opacity: 1;
	left: 100%;
}

#masthead .main-navigation{
	display:flex;
	align-items:center;
}

#masthead #btn_applications{
	z-index:4;
	border-radius: 5px;
	border: 1px solid #d8d8d8;
	background: #ffffff;
	transition: all .3s;
}

#masthead .main-navigation li a {
	font-size: 18px;
	font-weight:500;
	color: #000;
	display: flex;
	align-items: center;
	gap:10px;
}

#masthead #menu_produit ul{
	list-style-type: none;
	display: flex;
	padding: 0;
	margin: 0;
	gap: 30px;
	overflow-y: auto;
}

#masthead #menu_produit ul li a{
	position:relative;
	display:block;
	padding:15px 0;
	text-decoration:none;
	white-space:nowrap;
	font-size:13px;
}

#masthead #menu_produit ul li a:hover{
	color:#2e91ab;
}

#masthead #menu_produit ul li a::after{
	content:'';
	position:absolute;
	height: 4px;
	border-radius: 2px;
	background: #2ea233;
	bottom:0;
	left:0;
	right:100%;
	transition:all .3s;
}

#masthead #menu_produit ul li a.active{
	font-weight:bold;
}

#masthead #menu_produit ul li a.active::after{
	right:0;
}


/* MENU APPLICATIONS */

#menu-applications{
	visibility:hidden;
	position:fixed;
	top:0;
	width:100vw;
	height:100dvh;
	z-index:99999;
	overflow:hidden;
}

#menu-applications.open{
	visibility:visible;
}

#menu-applications .overlay{
	width:100%;
	height:100%;
	background:rgba(0,0,0,0);
	-webkit-backdrop-filter: blur(0px);
	backdrop-filter: blur(0px);
	transition:all .5s;
}

#menu-applications.open .overlay{
	background:rgba(0,0,0,0.3);
	-webkit-backdrop-filter: blur(3px);
	backdrop-filter: blur(3px);
}

#menu-applications .panel{
	width:85vw;
	height:100%;
	background: #45494e;
	transition:all .5s;
	transform:translateX(100%);
	right:0;
	top:0;
	position:absolute;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
}

#menu-applications.open .panel{
	transform:none;
}

#menu-applications .panel .close-menu-applications{
	position: absolute;
	top: 0;
	right: 0;
	width: 78px;
	height: 78px;
	background: #6b6e72;
	display:flex;
	align-items:center;
	justify-content: center;
}

#menu-applications .panel .menu{
	padding: 50px 25px;
	overflow-y: auto;
	overflow-x:hidden;
	flex: 1;
	display: flex;
	flex-direction: column;
}

#menu-applications .panel .menu .inner{
	margin-top:auto;
	margin-bottom:auto;
}

#menu-applications .panel .menu .title{
	font-size: 21px;
  	font-weight: 700;
	color:rgba(255,255,255,0.2);
	margin-top:0;
}

#menu-applications .panel .menu ul{
	list-style-type:none;
	margin:0;
	padding:0;
}

#menu-applications .panel .menu ul.primary{
	position:relative;
	visibility:hidden;
}

#menu-applications .panel .menu ul.primary.show{
	position:relative;
	visibility:visible;
}

#menu-applications .panel .menu ul li{
	padding:10px 0;
}

#menu-applications .panel .menu ul li a,
#menu-applications .panel .menu ul li.back a{
	color:#fff;
	font-size: 14px;
	font-style: italic;
	font-weight: 300;
	text-decoration:none;
	display:flex;
	align-items:center;
	transition:color .2s;
}

#menu-applications .panel .menu ul li a:hover{
	color:rgba(255,255,255,.5);
}

#menu-applications .panel .menu ul li a .arrow{
	display:flex;
	justify-content:center;
	align-items:center;
	width: 16px;
	height: 16px;
	background: #6b6e72;
	margin-left:10px;
	border-radius:16px;
}

#menu-applications .panel .menu .submenu{
	position:absolute;
	transform:translateX(30px);
	opacity:0;
	top:-100vh;
	transition: opacity .3s, transform .3s;
	visibility:hidden;
}

#menu-applications .panel .menu .submenu.show{
	transform:none;
	opacity:1;
	top:0;
	visibility:visible;
}

#menu-applications .panel .menu .submenu li.back{
	padding:10px 0 25px;
}

#menu-applications .panel .menu ul li.back .arrow{
	margin-left:0;
	margin-right:15px;
	transform:rotate(180deg);
}

#menu-applications .panel .menu .submenu ul li a{
	font-style:normal;
}

#menu-applications .panel .menu .submenu .all{
	font-weight:700;
	font-style:normal;
}

#menu-applications .panel .contact{
	color: white;
	border-top: 1px solid #6B6E72;
	padding: 35px 25px;
	display:flex;
	flex-direction:column;
	gap:15px;
	margin: 0;
  	list-style-type: none;
}

#menu-applications .panel .contact li{
	display:flex;
	align-items:center;
	gap:10px;
	color:#fff !important;
	text-decoration: none important;
}

#menu-applications .panel .contact li,
#menu-applications .panel .contact li a{
	color:#fff !important;
	text-decoration: none !important;
}

#menu-applications .panel .contact li .icon{
	display:flex;
	justify-content:center;
	align-items:center;
	width: 23px;
	height: 23px;
	background: #6b6e72;
	border-radius:23px;
}


/* FOOTER */

footer.site-footer{
	background: #1c4a59;
	padding:25px 0 75px;
}

footer.site-footer > .inner{
	display:flex;
	flex-direction:column;
	gap:25px;
}

footer.site-footer #logos-footer {
	overflow:hidden;
	width:100%;
	position:relative;
}

footer.site-footer #logos-footer .track {
	display: flex;
	justify-content: space-between;
	animation: scroll-logos-footer-mobile 20s linear infinite;
	width: calc(120px * var(--nb-logos-footer));
}

@keyframes scroll-logos-footer-mobile {
	0% { transform: translateX(0); }
	100% { transform: translateX(calc(-120px * var(--nb-logos-footer) / 2))}
}

footer.site-footer #logos-footer .slide {
	width:120px;
}

footer.site-footer #logos-footer .slide img {
	max-height: 60px;
	opacity:.6;
}

footer.site-footer #illustrations-footer {
	display: flex;
	justify-content: space-between;
	flex-wrap:wrap;
}

footer.site-footer #illustrations-footer img {
	aspect-ratio: 1/1;
	object-fit:cover;
	width:48%;
}

footer.site-footer .columns{
	display: flex;
	justify-content: space-between;
}

footer.site-footer .columns,
footer.site-footer .columns p{
	color:#fff;
	font-size:13px;
	line-height:1.7;
}

footer.site-footer .columns .btn{
	font-size:14px;
}

footer.site-footer .columns p {
	margin-bottom:0;
}

footer.site-footer .columns p.title {
	position:relative;
	font-weight:700;
	font-size:16px;
	margin-bottom:5px;
}

footer.site-footer .col-logo .btn{
	margin-top:35px;
}

footer.site-footer .columns .contact p {
	margin-bottom:10px;
	display:flex;
	gap:10px;
	align-items:baseline;
}

footer.site-footer .columns .contact p svg {
	min-width:15px;
	max-width:15px;
	top: 2px;
  	position: relative;
}

footer.site-footer .columns .contact a {
	color:#fff;
	text-decoration:none;
}

footer.site-footer #logo-footer{
	width:170px;
}

footer.site-footer .columns .col-lists{
	display: flex;
  	justify-content: space-between;
	gap:30px;
}

footer.site-footer .columns .col-lists .col-coords{
	display: flex;
  	justify-content: space-between;
	flex-direction:column;
	gap:30px;
}

footer.site-footer .col-menu #footer-menu{
	margin:0;
	padding:0;
	list-style-type:none;
}

footer.site-footer .col-menu #footer-menu li{
	margin-bottom:10px;
}

footer.site-footer .col-menu #footer-menu a{
	color:#fff;
	text-decoration:none;
	transition:all .2s;
}

footer.site-footer .col-menu #footer-menu a:hover{
	opacity:.6;
}



/* FORMULAIRE RECHERCHE */

#search-overlay{
	display:none;
	position:fixed;
	top:0;
	bottom:0;
	left:0;
	right:0;
	background:rgb(46, 145, 171);
	z-index: 99999;
	text-align:center;
}

#search-overlay svg.bg-search{
	position: absolute;
	opacity: .05;
	width: 100%;
	left: 0;
	height: 100%;
	top: 0;
}

#search-overlay .close-search-overlay{
	position: absolute;
	right: 20px;
	top: 20px;
}

#search-overlay .inner{
	display:inline-block;
	margin-right:auto;
	margin-left:auto;
	text-align:left;
	position:relative;
	margin-top:calc(50vh - 75px);
	z-index:2;
}

#search-overlay .form-inner{
	animation-delay:.6s;
	margin-top:10px;
}

.form-inner{
	display: flex;
	align-items: center;
	position:relative;
}

.search-form svg.loupe{
	position: absolute;
  	left: 10px;
	width:17px;
}

#search-overlay form .search-label{
	display:block;
	color: #fff;
	font-weight: 700;
	font-size: 52px;
	animation-delay:.4s;
	margin-bottom:25px;
	border:0;
}

.search-field{
	padding: 12px 60px 12px 35px !important;
	border-radius:0 !important;
	width: 770px;
	max-width:90vw;
	height:60px;
	background:#fff;
}

.search-field::placeholder{
	opacity:1;
}

.search-field:focus{
	outline-width: 0;
	outline:none;
}

#search-overlay form .search-field{
	font-size: 22px;
	border: none !important;
}

#search-overlay form .search-label,
#search-overlay form .form-inner{
	opacity: 0;
	animation-name: searchFadeInUp;
	animation-duration: .3s;
	animation-fill-mode:both;
}

@keyframes searchFadeInUp {
    0% {
        transform: translate3d(0,25px,0);
		opacity:0
    }

    100% {
        transform: translate3d(0,0,0);
        opacity: 1
    }
}

.search-form .submit-label{
	display:flex;
}

.search-form .submit-label .search-submit{
	display:none;
}

.search-form .submit-label svg.submit-loupe{
	margin-left: -50px;
	width: 30px;
	height: 30px;
}



/* BREADCRUMBS */

#breadcrumbs,
#breadcrumbs a {
	color: #7f7f7f;
  	font-size: 12px;
	text-decoration:none;
}

#breadcrumbs a:hover {
	text-decoration:underline;
}


/* ENTETE PAGE */

.page-header img{
	width:100%;
	height:41vw;
	object-fit:cover;
	display:block;
	animation-name: slideInRight;
	animation-fill-mode: forwards !important;
	animation-duration: 1s;
	animation-timing-function:cubic-bezier(0.075, 0.82, 0.165, 1);
}

.page-header .inner::before{
	background: #F8F8F8;
}

.page-header .chapo .link{
	margin-top:35px;
}



/* BLOC CATALOGUE */

#bloc_catalogue{
	position:relative;
	padding:0 25px 120px;
}

#bloc_catalogue .background{
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
	object-fit:cover;
	z-index:-1;
}

#bloc_catalogue::before{
	content:'';
	display:block;
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
	background:#000;
	opacity:0.29;
}

#bloc_catalogue::after{
	content:'';
	display:block;
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
	object-fit:cover;
	z-index:1;
	background: linear-gradient(180deg, rgba(0,0,0,0) 0%, rgba(0,0,0,0.55) 100%);
  	background-blend-mode: normal;
}

#bloc_catalogue .content{
	position:relative;
	z-index:3;
	max-width:400px;
	color:#fff;
}

#bloc_catalogue .content .btn{
	margin-top:25px;
}

#bloc_catalogue .catalogue{
	position:relative;
	z-index:2;
}

#bloc_catalogue p{
	font-size:14px;
}


/* HOME PAGE */

body.home #home_slider{
	position:relative;
}

body.home #home_slider .yp{
	position:absolute;
	left: -10vw;
  	top: -6vh;
	width: 67%;
	height: auto;
	z-index:2;
}

body.home #home_slider .slide{
	width:100%;
	height:100vh;
	position:relative;
	display: flex !important;
	align-items: center;
	justify-content: center;
	text-align: center;
}

body.home #home_slider .slide img.background{
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
	object-fit:cover;
	object-position: center;
}

body.home #home_slider .slide::before{
	content:'';
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
	background:rgba(0,0,0,.34);
	z-index:1;
}

body.home #home_slider .slide::after{
	content:'';
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:200px;
	z-index:1;
	background: linear-gradient(180deg, rgba(0,0,0,0) 0%, rgba(0,0,0,0.45) 100%);
	background-blend-mode: normal;
  	transform: scaleY(-1);
}

body.home #home_slider .slide .content{
	color:#fff;
	position:relative;
	z-index:2;
	display:flex;
	flex-direction:column;
	align-items:center;
	gap:25px;
	max-width:700px;
	padding:0 15px;
}

body.home #home_slider .slide .content .vertical{
	height:30px;
	width:0px;
}

body.home #home_slider .slide .content .vertical::before {
	content:"";
	display:block;
	width:0px;
	height:0px;
	border-right:1px solid #fff;
}

body.home #home_slider .slick-active .content .vertical::before {
	animation: increase .7s; 
	animation-fill-mode: both;
	animation-delay:.8s;
}
  
@keyframes increase {
	100% {
		height: 100%;
	}
}

body.home #home_slider .slide .content h2{
	margin:0;
	animation-delay:1.5s;
}


body.home #home_slider .slide .content p{
	margin:0;
	animation-delay:1.7s;
	font-size:14px;
}

body.home #home_slider .slide .content a{
	margin-top:25px;
	animation-delay:2s;
}

body.home #home_slider .slick-active .content h2,
body.home #home_slider .slick-active .content p,
body.home #home_slider .slick-active .content a{
	opacity: 0;
	animation-name: searchFadeInUp;
	animation-duration: .4s;
	animation-fill-mode:both;
	animation-timing-function: ease-out;
}

body.home #home_slider .slick-dots{
	padding: 0;
	position: absolute;
	left: 50%;
  	transform: translateX(-50%);
	bottom: 50px;
	display: flex;
	list-style-type: none;
	gap:25px;
	justify-content:space-between;
}

body.home #home_slider .slick-dots li{
	flex:1;
	position:relative;
	opacity:0.4;
	transition:all .3s;
}

body.home #home_slider .slick-dots li.slick-active{
	opacity:1;
}

body.home #home_slider .slick-dots li button{
	background: none;
  	border: none;
  	padding-left: 0;
	padding-bottom:15px;
	color:#fff;
	font-size:16px;
	font-weight:600;
}

body.home #home_slider .slick-dots li::before{
	content:"";
	display:block;
	position:absolute;
	bottom:0;
	left:0;
	width:100%;
	height:2px;
	background:#fff;
	
}

body.home #home_slider .slick-dots li::after {
	content:"";
	display:block;
	position:absolute;
	bottom:0;
	left:0;
	width:0;
	height:2px;
	background: #2ea233;
}

body.home #home_slider .slick-dots li.slick-active::after {
	animation: increase_horizontal 4s linear; 
	animation-fill-mode: backwards;
}

body.home #home_slider.first-slide-ok .slick-dots li.slick-active::after {
	animation: increase_horizontal 6s linear;
}
  
@keyframes increase_horizontal {
	100% {
		width: 100%;
	}
}

body.home #home_recherche {
	background:#f8f8f8;
	text-align:center;
	padding:50px 0;
}

body.home #home_recherche .titre {
	color:#2E91AB;
	text-transform:uppercase;
}

body.home #home_recherche .search-form{
	width:770px;
	max-width:90vw;
	margin:35px auto;
}

body.home #home_recherche .search-label{
	display:none;
}

body.home #home_recherche .search-field{
	border:1px solid #000;
	background:transparent;
}

body.home #home_recherche .search-form .submit-label svg.arrow{
	width:auto;
	height:18px;
	margin-left: -30px;
  	transform: rotate(180deg);
}

body.home #home_applications {
	padding:50px 0;
	overflow-x: hidden;
}

body.home #home_applications .line{
	margin-bottom:25px;
}

body.home #home_applications .slick-slider .slick-list{
	margin:0 -20px 0 0 !important;
}

body.home #home_applications .applications .slider > .application{
	width:calc(50% - 10px);
	margin-bottom:20px;
	margin-right:20px;
}

body.home #home_applications .applications .slider .slick-slide > div{
	margin-bottom:20px;
	margin-right:20px;
}

body.home #home_applications .applications .slider > .application a,
body.home #home_applications .applications .slider .slick-slide > div a{
	border: 1px solid #eee;
	aspect-ratio: 1/1;
	display: flex !important;
	justify-content: center;
	align-items: center;
	position: relative;
	background: #fff;
	position:relative;
	transition:all .3s;
}

body.home #home_applications .applications .slider > .application a:hover,
body.home #home_applications .applications .slider .slick-slide > div a:hover {
    border:1px solid #000;
}

body.home #home_applications .applications .slider > .application a img,
body.home #home_applications .applications .slider .slick-slide > div a img {
    transition:all .2s;
	transform:scale(0.85);
	height: 33%;
}

body.home #home_applications .applications .slider > .application a:hover img,
body.home #home_applications .applications .slider .slick-slide > div a:hover img {
    transform:none;
}

body.home #home_applications .applications .slider > .application a h3,
body.home #home_applications .applications .slider .slick-slide > div a h3 {
    position: absolute;
    bottom: 15px;
    text-transform: uppercase;
    font-weight: 400;
    font-size: 13px;
	transition:all .3s;
	text-align:center;
	margin-bottom:0;
	padding:10px;
}

body.home #home_applications .applications .slick-arrows {
    display: flex;
	justify-content: center;
	gap: 25px;
	margin-top:25px;
}

body.home #home_applications .applications .slick-arrow.next {
    transform: rotate(180deg);
}

body.home #home_applications .applications .slick-arrow.slick-disabled {
    opacity:.4;
}

body.home #bloc_catalogue{
	margin-bottom:15px;
}

body.home #home_pourquoi_nous{
	position:relative;
	background:#45494e;
	padding:50px 0;
	color:#fff;
	overflow:hidden;
}

body.home #home_pourquoi_nous .yp{
	position: absolute;
	top: -5%;
	left: -7%;
	width: 57%;
	height: auto;
}

body.home #home_pourquoi_nous .image{
	animation-duration:.9s;
}

body.home #home_pourquoi_nous .menu{
	display:flex;
	justify-content:space-between;
	align-items:end;
	list-style-type:none;
	margin:0 0 25px;
	padding:0;
	font-weight:500;
}

body.home #home_pourquoi_nous .menu li{
	text-align:center;
}

body.home #home_pourquoi_nous .menu.items-2 li {
	max-width: 45%;
}

body.home #home_pourquoi_nous .menu.items-3 li {
	max-width: 31%;
}

body.home #home_pourquoi_nous .menu li a{
	opacity:0.26;
	transition:all .3s;
	color:#fff;
	text-decoration:none;
	font-size:14px;
}

body.home #home_pourquoi_nous .menu li.active a{
	opacity:1;
}

body.home #home_pourquoi_nous .menu li:not(.active) a:hover{
	opacity:.5;
}

body.home #home_pourquoi_nous .bar{
	height:1px;
	background:rgba(255,255,255,0.29);
	margin-bottom:35px;
	position:relative;
}

body.home #home_pourquoi_nous .bar .segment{
	width: 37px;
	height: 5px;
	border-radius: 4px;
	background: #2e91ab;
	top:-2.5px;
	position:absolute;
	left:0;
	transition: all .3s;
}

body.home #home_pourquoi_nous .contenus{
	position:relative;
}

body.home #home_pourquoi_nous .contenu{
	transform:translateY(25px);
	opacity:0;
	transition:all 0s;
	top:-100vh;
	position:absolute;
	left:0;
}

body.home #home_pourquoi_nous .contenu.active{
	top:0;
	opacity:1;
	transform:none;
	position:relative;
	transition:transform .3s, opacity .3s;
}

body.home #home_pourquoi_nous .contenu p{
	font-size:14px;
}

body.home #home_pourquoi_nous a.btn{
	margin-top:50px;
}

body.home #home_ressources{
	padding:50px 0;
	overflow:hidden;
}

body.home #home_ressources .ressources-header{
	display:flex;
	justify-content:space-between;
}

body.home #home_ressources .slick-arrows {
    display:flex;
	gap:25px;
}

body.home #home_ressources .slick-arrow.next {
    transform: rotate(180deg);
}

body.home #home_ressources .slick-arrow.slick-disabled {
    opacity:.4;
}

body.home #home_ressources .ressources{
	margin-top:25px;
	display:flex;
	justify-content:space-between;
}

body.home #home_ressources .ressources .slick-list{
	margin-right:-20px;
}

body.home #home_ressources .ressources .slick-slide > div{
	margin-bottom:25px;
	margin-right:20px;
}

body.home #home_ressources .all{
	text-align:center;
	margin-top:60px;
}

body.home #home_ressources .all a{
	margin:0 auto;
}




/* LISTE PRODUITS */

.produits .produit a{
	text-decoration:none;
	display:block;
	padding: 15px;
	border: 1px solid #D8D8D8;
	transition:all .3s;
	position:relative;
}

.produits .produit a:hover{
	border: 1px solid #2ea233;
}

.produits .produit .icone {
	position:absolute;
	top:8px;
	left:8px;
	border-radius: 10px;
  	background: #f4f5f6;
	width:34px;
	height:34px;
	overflow:hidden;
	padding:8px;
	z-index:1;
}

.produits .produit .icone img {
	max-width:18px;
}

.produits .produit .image{
	width:100%;
	aspect-ratio: 1 / 1;
	position: relative;
	margin-bottom:20px;
	overflow:hidden;
}

.produits .produit .image > img{
	width:100%;
	height:100%;
	object-fit:cover;
	object-position: center;
	transition:all .2s;
}

.produits .produit a:hover .image > img{
	transform:scale(1.08);
}

.produits .produit .texte .application{
	color: #2e91ab;
	font-size: 10px;
	font-weight: 400;
	text-transform: uppercase;
	letter-spacing: 0.8125px;
	margin-bottom:0;
}

.produits .produit .texte .titre{
	font-size: 15px;
	margin-bottom:0;
	transition:all .3s;
}

.produits .produit a:hover .texte .titre{
	color: #2ea233;
}



/* ARCHIVES PRODUITS */

.archive-produits .separateur{
	margin-top:25px;
}

.archive-produits .search-tri{
	margin-top:25px;
}

.archive-produits .tri{
	background: #f8f8f8;
	height: 42px;
	border-radius: 21px;
	padding: 0 25px;
	display: flex;
	align-items: center;
	justify-content:center;
	width:165px;
}

.archive-produits .tri select{
	background: #f8f8f8;
	border: 0;
	min-width:165px;
}

.archive-produits .tri .selectric{
	border: none;
}

.archive-produits .tri .selectric .label,
.archive-produits .tri .selectric-items li{
	font-size:13px;
	color:#000;
}

.archive-produits .search-form .search-field{
	max-width:100%;
	padding: 5px 35px 5px 20px !important;
	border-radius: 21px !important;
  	background: #f8f8f8;
	border:none;
	height:42px;
}

.archive-produits .search-form .search-field::placeholder {
	color: #000;
}

.archive-produits .search-form .submit-label svg.submit-loupe {
	margin-left: -30px;
	width: 15px;
	height: 15px;
  }

.grille-produits{
	display: grid;
	justify-content:space-between;
	grid-template-columns: repeat(auto-fill, calc(50% - 5px));
	clear:both;
	transition:all .3s;
}

.grille-produits .produit{
	margin-bottom:10px;
}

.archive-produits .produits-filtres{
	margin-top:25px;
	margin-bottom:100px;
}

.archive-produits #filtres-produits .filtres{
	display:none;
	margin-top:25px;
	border-radius: 21px;
  	background: #f8f8f8;
	padding:15px;
}

.archive-produits #filtres-produits .filtres .titre{
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.8125px;
	color: #45494e;
	font-size:13px;
}

.archive-produits #filtres-produits .filtres .filtre{
	margin-top:8px;
	border-radius: 5px;
  	background: #ffffff;
	padding:6px;
}

.archive-produits #filtres-produits .filtres .filtre input{
	margin-right:8px;
}

.archive-produits .produits-wrapper{
	margin-top:25px;
	position:relative;
}

.archive-produits .produits-wrapper .produits-overlay{
	position:absolute;
	width:100%;
	height:100%;
	text-align:center;
	z-index:9;
}

.archive-produits .produits-wrapper .produits-overlay svg.yp{
	margin:150px auto 0;
}

.archive-produits .produits-wrapper .produits-overlay svg{
	margin:0px auto;
}

.archive-produits .produits-filtres.loading .filtres label{
	opacity:.5;
}

.archive-produits .produits-filtres.loading .grille-produits{
	opacity:.2;
}

.archive-produits #bloc_catalogue{
	margin-bottom:100px;
}

.archive-produits #content{
	margin-bottom:100px;
}

.archive-produits .acf-blocs .columns-2{
	column-gap:100px;
}



/* PAGE PRODUIT */

body.single-produit h1{
	margin-bottom:40px;
}

body.single-produit .content-produit h2{
	font-size:20px;
}

body.single-produit .content-produit h3{
	color: #45494e;
	font-size: 13px;
	font-weight: 700;
	text-transform: uppercase;
	display:flex;
	align-items:center;
	letter-spacing: 0.8125px;
}

body.single-produit h3 .icon {
	display: flex;
	align-items: center;
}

body.single-produit h4{
	color: #45494e;
	font-size: 13px;
	font-weight: 600;
}

body.single-produit .content-produit .left .inner{
	background:#f8f8f8;
	padding:30px 15px;
}

body.single-produit .content-produit .left h3 .icon{
	width:25px;
}

body.single-produit .content-produit .left h3 .icon img{
	max-width:15px;
	height:auto;
}

body.single-produit .content-produit .left h3 .text{
	width:calc(100% - 25px);
}

body.single-produit .content-produit .left .application{
	text-transform:uppercase;
	color:#2E91AB;
	font-size:12px;
	margin-bottom:10px;
}

body.single-produit .content-produit .left .description{
	line-height:1.53;
	margin-bottom:25px;
}

body.single-produit .content-produit .left .autres_dimensions{
	color: #45494e;
	font-size: 13px;
	font-weight: 700;
	text-transform: uppercase;
	display:flex;
	align-items:self-start;
	gap:10px;
	margin-bottom:25px;
	letter-spacing: 0.8125px;
}

body.single-produit .content-produit .left .autres_dimensions svg{
	width:15px;
	height:auto;
	position:relative;
	top:2px;
}

body.single-produit .content-produit .left .autres_dimensions span{
	width: calc(100% - 25px);
}

body.single-produit .content-produit .left .caracteristiques{
	margin-bottom:25px;
	padding-top:15px;
}

body.single-produit .content-produit .left .caracteristiques .caracteristique{
	margin-bottom:15px;
}

body.single-produit .content-produit .left .caracteristiques .caracteristique:last-of-type{
	margin-bottom:0;
}

/*

body.single-produit .content-produit .left .caracteristique .table{
	background:#fff;
	border-radius:13px;
	display:flex;
	gap:20px;
	justify-content:space-between;
	padding:15px 25px;
}

body.single-produit .content-produit .left .caracteristique .table h4{
	margin-bottom:0;
}

body.single-produit .content-produit .left .caracteristique .table .ss-titre{
	font-size:12px;
	color: #45494e;
}

body.single-produit .content-produit .left .caracteristique .table .valeurs .valeur{
	border-radius: 10px;
  	background: #f4f5f6;
	margin-bottom:5px;
	padding:5px 15px;
	text-align:right;
}

body.single-produit .content-produit .left .caracteristique .table .valeurs .valeur:last-of-type{
	margin-bottom:0;
}


body.single-produit .content-produit .left .caracteristique > .texte{
	padding-left:25px;
}

body.single-produit .content-produit .left .caracteristique > .texte h4{
	margin-bottom:5px;
}

body.single-produit .content-produit .left .caracteristique > .texte .content{
	font-size:13px;
}

*/

body.single-produit .content-produit .left .catalogue{
	display:flex;
	align-items:center;
	justify-content:space-between;
	margin:50px 0;
	padding:0 25px;
}

body.single-produit .content-produit .left .catalogue a{
	display:flex;
	align-items:center;
	gap:10px;
	text-decoration:none;
	text-transform: uppercase;
	letter-spacing: 0.9375px;
	font-size:11px;
}

body.single-produit .content-produit .left .catalogue a:hover{
	text-decoration:underline;
}

body.single-produit .content-produit .left .catalogue a svg{
	transition:all .1s;
}

body.single-produit .content-produit .left .catalogue a:hover svg{
	transform:scale(1.1);
}

body.single-produit .content-produit .left .certificat{
	display:flex;
	align-items:center;
	gap:10px;
	color:#fff;
	font-weight:700;
	border-radius: 13px;
  	background: #2e91ab;
	font-size:10px;
	padding:7px 20px;
}

body.single-produit .content-produit .left .certificat .pictos{
	display:flex;
	align-items:center;
	gap:10px;
}

body.single-produit .content-produit .right h2{
	padding-bottom:25px;
	border-bottom: 1px solid #2e91ab;
	margin-bottom:30px;
}

body.single-produit h3 .icon{
	width:30px;
}

body.single-produit h3 .icon img{
	max-width:25px;
	height:auto;
}

body.single-produit h3 .text{
	width:calc(100% - 30px);
}

body.single-produit .content-produit .right #breadcrumbs{
	margin-top:10px;
}

body.single-produit .content-produit .right section{
	margin-bottom:75px;
}

body.single-produit .content-produit .right #galerie-avantages{
	margin-top:75px;
}

body.single-produit .content-produit .right #galerie-avantages #galerie{
	text-align:center;
	margin-bottom:25px;
}

body.single-produit .content-produit .right #galerie-avantages #avantages{
	display:flex;
	gap:15px;
	flex-wrap:wrap;
}

body.single-produit .content-produit .right #galerie-avantages .avantage{
	display:flex;
	align-items:center;
	gap:20px;
	text-transform:uppercase;
	font-size: 11px;
	letter-spacing: 0.8125px;
	border-radius: 13px;
	padding:15px 20px;
	border: 1px solid #d8d8d8;
	width:calc(50% - 8px);
	min-height:70px;
}

body.single-produit .content-produit .right #galerie-avantages .avantage img{
	width:30px;
	height:auto;
}

body.single-produit .content-produit .right #a_propos{
	margin-bottom:50px;
}

body.single-produit .content-produit .right #a_propos .content .bloc{
	margin-bottom:40px;
	line-height:1.53;
}

body.single-produit .content-produit .right #a_propos .content .bloc ul{
	padding-left:15px;
	margin:0;
}

body.single-produit .content-produit .right #a_propos .content .bloc ul li{
	margin-bottom:15px;
}

body.single-produit .content-produit .right table{
	border-spacing : 0;
	border-collapse : collapse;
	margin:0;
}

body.single-produit .content-produit .right table th,
body.single-produit .content-produit .right table td{
	padding:20px 10px;
	border-bottom:1px solid #dbdbdb;
	text-align:center;
}

body.single-produit .content-produit .right table th{
	font-weight:400;
	font-size:11px;
	text-transform:uppercase;
}

body.single-produit .content-produit .right table td{
	font-size:14px;
}

body.single-produit .content-produit .right .table-wrapper{
	position:relative;
}

body.single-produit .content-produit .right .table-wrapper .table{
	padding-bottom:70px;
	overflow-y:hidden;
	transition:all .5s;
}

body.single-produit .content-produit .right .table-wrapper.closed .table{
	max-height:500px !important;
}

body.single-produit .content-produit .right .table-wrapper .show-table{
	position:absolute;
	left:0;
	right:0;
	bottom:0;
	padding-top:200px;
	text-align:center;
}

body.single-produit .content-produit .right .table-wrapper.closed .show-table{
	background: linear-gradient(rgba(255,255,255,0) 0%, rgba(255,255,255,1) 90%);
}

body.single-produit .content-produit .right .table-wrapper .show-table a{
	margin:0 auto;
	text-align:center;
	padding:15px 30px;
	text-transform:uppercase;
	border:1px solid #2e91ab;
	color:#2e91ab;
	text-decoration:none;
	transition:all .3s;
	display:inline-flex;
	align-items:center;
	justify-content:center;
	gap:15px;
	font-size:14px;
	background:#fff;
}

body.single-produit .content-produit .right .table-wrapper .show-table a svg{
	transform:rotate(-90deg);
}

body.single-produit .content-produit .right .texte-apres-tableau{
	margin-top:50px;
}

body.single-produit .content-produit .right #options .option{
	text-align:center;
	border-radius: 13px;
  	background: #f8f8f8;
	padding:15px;
	margin-bottom:25px;
}

body.single-produit .content-produit .right #options .option img{
	margin-bottom:15px;
}

body.single-produit .content-produit .right #options .option .title{
	font-weight:700;
	text-transform:uppercase;
	font-size:13px;
	color:#45494E;
	margin-bottom:8px;
}

body.single-produit .content-produit .right #options .option .texte p{
	margin-bottom:0px;
}

body.single-produit #blocs_contenu{
	margin-bottom:75px;
}

body.single-produit #blocs_contenu .bloc{
	position:relative;
	padding:60px 25px;
	display:flex;
	align-items:center;
}

body.single-produit #blocs_contenu .bloc.bleu,
body.single-produit #blocs_contenu .bloc.gris,
body.single-produit #blocs_contenu .bloc.image{
	color:#fff;
}

body.single-produit #blocs_contenu .bloc.bleu{
	background: #2e91ab;
}

body.single-produit #blocs_contenu .bloc.gris{
	background: #45494e;
}

body.single-produit #blocs_contenu .bloc.image{
	background-position: center;
	background-size:cover;
}

body.single-produit #blocs_contenu .bloc.image::before{
	content:'';
	position:absolute;
	top:0;
	left:0;
	right:0;
	bottom:0;
	opacity: 0.5;
	background: #242424;
}

body.single-produit #blocs_contenu .bloc.image .inner{
	z-index:1;
}

body.single-produit #blocs_contenu .bloc.gris {
	overflow:hidden;
}

body.single-produit #blocs_contenu .bloc.gris .yp {
	position: absolute;
	top: -5%;
	left: -7%;
	width: 57%;
	height: auto;
}

body.single-produit #blocs_contenu .bloc .inner{
	text-align:center;
}

body.single-produit #blocs_contenu .bloc:not(.large) .inner{
	width:100%;
}

body.single-produit #blocs_contenu .bloc.gris .inner,
body.single-produit #blocs_contenu .bloc.blanc .inner{
	text-align:left;
}

body.single-produit #blocs_contenu .bloc .icone img{
	max-width:59px;
	margin-bottom:25px;
}

body.single-produit #blocs_contenu .bloc .button{
	margin-top:25px;
}

body.single-produit #blocs_contenu .cols .bloc.image.small{
	text-align: center;
	justify-content: center;
}

body.single-produit #upsell{
	margin-bottom:75px;
	overflow-x:hidden;
}

body.single-produit #upsell .upsell-header{
	display:flex;
	justify-content:space-between;
	align-items:center;
}

body.single-produit #upsell .upsell-header h2{
	margin-bottom:0;
}

body.single-produit #upsell .upsell-header .slick-arrows {
    display:flex;
	gap:25px;
}

body.single-produit #upsell .upsell-header .slick-arrow.next {
    transform: rotate(180deg);
}

body.single-produit #upsell .upsell-header .slick-arrow.slick-disabled {
    opacity:.4;
}

body.single-produit #upsell .produits{
	margin-top:50px;
	display:flex;
	justify-content:space-between;
}

body.single-produit #upsell .produits .slick-list{
	margin-right:-20px;
}

body.single-produit #upsell .produits .slick-slide > div{
	margin-bottom:25px;
	margin-right:20px;
}

body.single-produit #overlay-pdf{
	display:none;
	position: fixed;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	background: #fff;
	z-index: 99999;
	text-align: center;
}

body.single-produit #overlay-pdf .bg-overlay-pdf{
	position: absolute;
	opacity: .03;
	width: 100%;
	left: 0;
	height: 100%;
	top: 0;
}

body.single-produit #overlay-pdf .inner{
	display: inline-block;
	margin-right: auto;
	margin-left: auto;
	position: relative;
	margin-top: calc(50vh - 75px);
	z-index: 2;
	font-size: 18px;
	font-weight: 700;
}

body.single-produit #overlay-pdf .loading{
	margin: 0 auto;
}





/* ARCHIVES RESSOURCES */

.grille-ressources .ressource{
	margin-bottom:20px;
}

.ressources .ressource a{
	text-decoration:none;
	display:block;
	padding: 15px 0;
	border: 1px solid #D8D8D8;
	transition:all .3s;
}

.ressources .ressource a:hover{
	border: 1px solid #8c8c8c;
}

.ressources .ressource .texte{
	padding: 0 40px 0 20px;
}

.ressources .ressource .cat{
	font-size:10px;
	text-transform:uppercase;
	color:#7F7F7F;
}

.ressources .ressource .titre{
	font-size:15px;
}

.ressources .ressource .image{
	width:calc(100% - 40px);
	aspect-ratio: 1/.53;
	overflow:hidden;
	position:relative;
}

.ressources .ressource .image .overlay{
	content:'';
	position:absolute;
	z-index:2;
	top:0;
	left:0;
	width:100%;
	height:100%;
	opacity:0;
	transition:all .3s ease-in-out;
	background: linear-gradient(rgba(0,0,0,0) 0%, rgba(0,0,0,0.45) 100%);
	display:flex;
	justify-content: center;
	align-items:center;
	transform:translateY(25px);
}

.ressources .ressource a:hover .image .overlay{
	opacity:1;
	transform:translateY(0);
}

.ressources .ressource .image .overlay svg{
	width: 150px;
	height: auto;
	opacity: .2;
	transform: translateY(-15px);
	transition: all .3s ease-in-out;
}

.ressources .ressource a:hover .image .overlay svg{
	transform:translateY(0);
}

.ressources .ressource .image img{
	width:100%;
	height:100%;
	object-fit:cover;
	transition:all .3s ease-in-out;
}

.ressources .ressource a:hover .image img{
	transform:scale(1.05);
}

.ressources .ressource .link{
	display:flex;
	align-items:center;
	margin-top:15px;
	margin-left:20px;
	text-decoration:none;
	text-transform:uppercase;
	font-size:11px;
	font-weight:400;
}

.ressources .ressource .link::before{
	content:'';
	display:block;
	width:38px;
	height:1px;
	background:#000;
	margin-right:10px;
	transition:all .3s;
}

.ressources .ressource a:hover .link::before{
	width:58px;
}

.archive-ressources .wrapper-ressources{
	margin-top:50px;
	margin-bottom:100px;
}

.archive-ressources ul.categories{
	padding:0;
	margin:0 0 35px;
	list-style-type:none;
	display:flex;
	gap:25px;
	overflow-y: auto;
  	padding-bottom: 10px;
	margin-right: -15px;
	padding-right: 15px;
}

.archive-ressources ul.categories li,
.archive-ressources ul.categories li a{
	text-transform:uppercase;
	color:#7F7F7F;
	text-decoration:none;
	font-size:13px;
	white-space: nowrap;
}

.archive-ressources ul.categories li.active span{
	text-decoration:underline;
	white-space: nowrap;
}

.archive-ressources ul.categories li a:hover{
	color:#000;
}

.archive-ressources .pagination{
	display: flex;
  	justify-content: space-between;
	margin-top:75px;
}

.archive-ressources .pagination ul.numbers{
	list-style-type: none;
	display: flex;
	gap: 15px;
	margin:0;
	padding:0;
}

.archive-ressources .pagination a,
.archive-ressources .pagination span{
	text-transform:uppercase;
	font-size:15px;
	letter-spacing: 0.9375px;
	text-decoration:none;
}

.archive-ressources .pagination .current{
	position:relative;
}

.archive-ressources .pagination .current::after{
	content:'';
	position:absolute;
	bottom:-10px;
	left:0;
	right:0;
	height:1px;
	background:#000;
}

.archive-ressources .pagination a.prev,
.archive-ressources .pagination a.next{
	display:flex;
	gap:10px;
	align-items:center;
}

.archive-ressources .pagination a.next{
	justify-content: end;
}

.archive-ressources .pagination a.prev span,
.archive-ressources .pagination a.next span{
	transition:all .3s;
}

.archive-ressources .pagination a.prev:hover span{
	margin-left:5px;
}

.archive-ressources .pagination a.next:hover span{
	margin-right:5px;
}

.archive-ressources .pagination a.prev svg{
	transform:rotate(180deg);
}



/* PAGE RESSOURCE */

body.single-ressource #related-posts{
	margin-top:150px;
	margin-bottom:100px;
}



/* PAGE DE CONTENU */

#page .acf-blocs{
	margin-top:50px;
	margin-bottom:50px;
}


/* PAGE CONTACT */

.page-contact .page-header .telephone{
	display: inline-flex;
	border: 1px solid #000;
	padding: 26px;
	margin-top: 35px;
	justify-content: center;
	align-items: center;
	gap: 15px;
}

.page-contact .page-header .telephone svg{
	width:15px;
	height:15px;
}

.page-contact .blocs-contact{
	margin-top:50px;
	margin-bottom:50px;
}

.page-contact .blocs-contact .contact-left{
	margin-bottom:75px;
}

.page-contact .bloc-formulaire .texte{
	margin-bottom:25px;
}

.page-contact .blocs-contact .contact-right .bloc-geolocalisation{
	margin-bottom:50px;
}

.page-contact .blocs-contact .contact-right .titre-geolocalisation{
	display:flex;
	justify-content:space-between;
	gap:25px;
	align-items:center;
}

.page-contact .blocs-contact .contact-right .titre-geolocalisation .telephone{
	white-space:nowrap;
}

.page-contact .blocs-contact .contact-right .titre-geolocalisation .telephone svg{
	margin-right:5px;
	width:15px;
	height:15px;
}

.page-contact .horaires .item{
	display: flex;
	justify-content: space-between;
	gap: 5px;
	margin-bottom:10px;
}

.page-contact .horaires .item .jour{
	flex: 1;
	display: flex;
	align-items: baseline;
	gap: 5px;
}

.page-contact .horaires .item .jour::after{
	content: '';
	flex: 1;
	border-bottom: 1px solid #d8d8d8;
}

.page-contact .horaires .item.active .jour,
.page-contact .horaires .item.active .horaires{
	font-weight:bold;
}

.page-contact .horaires .item.active .jour::after{
	border-bottom: 1px solid #2ea233;
}

.page-contact .bloc-horaires .texte{
	margin-top:25px;
}


/* FORMULAIRES */

.forminator-field input,
.forminator-field textarea,
.forminator-multi-upload{
	background-color:#fff !important;
	border-color:#d8d8d8 !important;
	font-size:13px !important;
}

.forminator-field input,
.forminator-field textarea{
	padding:20px !important;
}

.forminator-field input::placeholder{
	font-style: italic;
}

.forminator-custom-form .no-label .forminator-label{
	display:none !important;
}

.forminator-multi-upload a{
	color:#000 !important;
}

.forminator-field .forminator-label{
	font-weight:400 !important;
	font-size:13px !important;
	color:#000 !important;
	margin-bottom:10px !important;
}

.forminator-checkbox__label p{
	font-size:13px !important;
}

.forminator-checkbox-box {
	border-color: #2e91ab !important;
	background-color: #fff !important;
	color: #17A8E3 !important;
	border-radius:50% !important;
}

.forminator-button-submit.link {
	background-color: #fff !important;
	color: #000 !important;
	text-transform:uppercase;
	display:inline-flex !important;
	align-items:center;
	letter-spacing: 0.9375px;
	align-self:flex-start;
	padding:0  !important;
}

.forminator-button-submit.link:hover{
	box-shadow:none !important;
}

.forminator-button-submit.link::before{
	content:'';
	display:block;
	width:50px;
	height:1px;
	background:#000;
	margin-right:20px;
	transition:all .3s;
}

.forminator-button-submit.link:hover::before{
	width:60px;
}

.page-contact .forminator-button-submit.link {
	margin-top:35px !important;
}



/* RECHERCHE */

body.search-results .page-header .texte p{
	font-size:16px;
}

body.search-results .page-header .texte p span{
	font-style:italic;
}

body.search-results .results{
	margin-top:50px;
	margin-bottom:50px;
}

body.search-results .results .articles{
	margin-top:50px;
}

body.search-results .results article{
	padding-bottom:50px;
	border-bottom:1px solid #eee;
	margin-bottom:50px;
}

body.search-results .results article .post-thumbnail{
	display:block;
	width:150px;
	height:150px;
	margin-top:25px;
}

body.search-results .results article .post-thumbnail img{
	width:100%;
	height:100%;
	object-fit:cover;
	object-position: center;
}

body.search-results .results article h2{
	font-size:18px;
}

body.search-results .results article h2 a{
	text-decoration:none;
}

body.search-results .results article h2 .type{
	display:inline-flex;
	align-items: center;
  	gap: 5px;
	font-size:15px;
	background:#a6a6a6;
	color:#fff;
	padding:5px 8px;
	border-radius:3px;
	margin-right:10px;
	font-weight:400;
}

body.search-results .results article.type-ressource h2 .type{
	background:#2EA233;
}

body.search-results .results article.type-produit h2 .type{
	background:#2E91AB;
}

body.search-results .results article h2 .titre{
	text-decoration:underline;
}

body.search-results .results article .link-container{
	display:none;
}

body.search-results nav.pagination{
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 30px;
	margin-top:55px;
}

body.search-results nav.pagination .nav-links{
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 20px;
}

body.search-results nav.pagination a{
	text-decoration:none;
}

body.search-results nav.pagination a:hover{
	color:#2E91AB;
}

body.search-results nav.pagination .current{
	color:#808080;
}

	


/* PAGE 404 */

.error-404{
	margin-top:50px;
	margin-bottom:50px;
}

.error-404 .icon-404{
	display:none;
}




/* RESPONSIVE */

@media screen and (min-width: 576px){
	footer.site-footer{
		padding:75px 0;
	}
	footer.site-footer > .inner{
		gap:50px;
	}
	footer.site-footer #logos-footer::before,
	footer.site-footer #logos-footer::after {
		background: linear-gradient(to right,  #1c4a59 0%,rgba(255,255,255,0) 100%);
		content: "";
		height: 100px;
		position: absolute;
		width: 200px;
		z-index: 2;
	}
	footer.site-footer #logos-footer::after {
		right: 0;
		top: 0;
		transform: rotateZ(180deg);
	}
	footer.site-footer #logos-footer::before {
		left: 0;
		top: 0;
	}
	body.single-produit .content-produit .right #galerie-avantages{
		display:flex;
		justify-content:space-between;
		align-items: center;
		gap:25px;
	}
	body.single-produit .content-produit .right #galerie-avantages #galerie{
		margin-bottom:0;
	}
	body.single-produit .content-produit .right #galerie-avantages #avantages{
		flex-direction:column;
	}
	body.single-produit .content-produit .right #galerie-avantages .avantage{
		width:216px;
	}
	body.single-produit .content-produit .right #options .option{
		display: flex;
		align-items: center;
		gap: 50px;
		text-align:left;
		padding:25px 20px 20px;
	}
	body.single-produit .content-produit .right #options .option img{
		max-width:30%;
		margin-bottom:0;
	}
	body.single-produit .content-produit .right #options .option.long img{
		max-width:15%;
	}
	body.single-produit .content-produit .right #options .option .title{
		margin-bottom:20px;
	}
	body.single-produit #blocs_contenu .bloc .icone img{
		max-width:89px;
	}
	.page-contact .page-header .telephone{
		min-width: 335px;
	}
}

@media screen and (min-width: 768px){
	.btn{
		max-width:400px;
	}
	.line{
		width: 90px;
		margin-bottom:25px;
	}
	.line.scroll-animation{
		animation-name: line-animation-desktop;
	}
	@keyframes line-animation-desktop {
		0% {
			width:0;
			opacity: 1;
		}
		100% {
			width:90px;
			opacity:1;
		}
	}
	.acf-blocs .acf-bloc{
		margin-bottom:100px;
	}
	#menu-applications .panel{
		width:530px;
	}
	#menu-applications .panel .menu{
		padding: 50px 25px 50px 100px;
	}
	#menu-applications .panel .menu ul li a .arrow{
		width: 20px;
		height: 20px;
		border-radius:20px;
	}
	#menu-applications .panel .contact{
		padding: 35px 25px 40px 100px;
	}
	footer.site-footer #logos-footer .track {
		animation: scroll-logos-footer 20s linear infinite;
		width: calc(200px * var(--nb-logos-footer));
	}
	@keyframes scroll-logos-footer {
		0% { transform: translateX(0); }
		100% { transform: translateX(calc(-200px * var(--nb-logos-footer) / 2))}
	}
	footer.site-footer #logos-footer .slide {
		width:200px;
	}
	
	footer.site-footer #logos-footer .slide img {
		max-height: 90px;
	}
	footer.site-footer #illustrations-footer img {
		width:24%;
	}
	footer.site-footer .columns,
	footer.site-footer .columns p{
		font-size:14px;
	}
	footer.site-footer .columns .btn{
		width:100%;
		margin-left: auto;
		margin-right: auto;
		font-size:15px;
	}
	footer.site-footer .columns .col-lists{
		gap:50px;
	}
	footer.site-footer #logo-footer{
		width:270px;
	}
	#bloc_catalogue{
		padding:100px 50px 75px;
	}
	#bloc_catalogue .catalogue{
		position:absolute;
		bottom:0px;
		right:20px;
		max-width:50%;
	}
	body.home #bloc_catalogue{
		margin-bottom:120px;
	}
	body.home #home_pourquoi_nous .inner{
		display:flex;
		gap:50px;
	}
	body.home #home_pourquoi_nous .inner > div{
		width:50%;
	}
	body.home #home_pourquoi_nous .content-inner{
		max-width:493px;
	}
	body.home #home_ressources .ressources{
		margin-top:25px;
	}
	body.home #home_ressources .ressources .slick-slide{
		width:calc((100vw - 10px) / 2) !important;
	}
	body.single-produit .content-produit .right #a_propos > .content{
		column-count:2;
		column-gap:40px;
	}
	body.single-produit #upsell .produits .slick-slide{
		width:calc((100vw - 10px) / 3) !important;
	}
	.archive-produits .search-tri{
		display:flex;
		justify-content:space-between;
		align-items:center;
	}
	.archive-produits .search-form .search-field{
		max-width:500px;
	}
	.archive-produits .titre-filtrer svg{
		display:none;
	}
	.archive-produits .produits-filtres.filtres-ok{
		display:flex;
		gap:10px;
	}
	.archive-produits .produits-filtres.filtres-ok #filtres-produits{
		width:calc(33% - 5px);
		margin-top:25px;
	}
	.archive-produits .produits-filtres.filtres-ok .produits-wrapper{
		width:calc(67% - 5px);
		grid-template-columns: repeat(auto-fill, calc(50% - 5px));
	}
	.archive-produits .produits-filtres #filtres-produits .inner{
		position: sticky;
  		top: 100px;
  		padding-bottom: 10px;
	}
	.archive-produits .produits-filtres #filtres-produits .titre-filtrer{
		font-weight:700;
		font-size:15px;
	}
	.archive-produits .produits-filtres #filtres-produits .filtres{
		display:block;
	}
	#page .acf-blocs{
		margin-top:100px;
		margin-bottom:100px;
	}
	.grille-ressources{
		display: grid;
		justify-content:space-between;
		grid-template-columns: repeat(auto-fill, calc(50% - 10px));
	}
	.archive-ressources .pagination > span{
		display:inline-block;
		width:200px;
	}
	.page-contact .blocs-contact{
		display:flex;
		gap:50px;
	}
	.page-contact .blocs-contact .contact-left{
		flex:1;
	}
	.page-contact .blocs-contact .contact-right{
		width:350px;
	}
	body.search-results .page-header .texte p{
		font-size:20px;
	}
	body.search-results .results{
		margin-top:100px;
		margin-bottom:100px;
	}
	body.search-results .results .articles{
		margin-top:75px;
	}
	body.search-results .results article{
		padding-bottom:75px;
		margin-bottom:75px;
	}
	body.search-results .results article.has-post-thumbnail{
		display:flex;
		gap:75px;
	}
	body.search-results .results article.has-post-thumbnail .text{
		width:calc(100% - 225px);
	}
	body.search-results .results article .link-container{
		margin-top:15px;
		display:block;
	}
	body.search-results .results article .link{
		font-size:13px;
	}
	body.search-results .results article .post-thumbnail {
		margin-top: 0;
	}
	.error-404{
		margin-top:100px;
		margin-bottom:100px;
		position:relative;
	}
	.error-404 .icon-404{
		position: absolute;
		right: 0;
		opacity: .05;
		font-weight: 900;
		font-size: 300px;
		margin: 0;
		top: 0;
		display:block;
	}
	
}

@media screen and (min-width: 1025px){
	body{
		font-size:15px;
	}
	.container{
		width: calc(100% - 56px);
		max-width: 1300px;
	}
	.container.mini{
		max-width: 975px;
	}
	.archive-produits .acf-blocs .container.mini{
		max-width: 1132px;
	}
	.btn{
		padding:24px 50px;
		font-size:15px;
	}
	h1{
		font-size:30px;
	}
	h2{
		font-size:30px;
	}
	h3{
		font-size:18px;
	}
	#page.site{
		padding-top:101px;
	}
	#page.site.menu-produit{
		padding-top:170px;
	}
	#masthead{
		padding-top:10px;
	}
	body.scrolled #masthead{
		padding-top:0;
	}
	#masthead .inner {
		gap: 25px;
	}
	#masthead .site-branding .custom-logo-link{
		width:235px;
	}
	body.scrolled #masthead .site-branding .custom-logo-link{
		width:195px;
	}
	#masthead .site-branding .icon-effect {
		left: -100px;
		width: 50px;
		height: 47px;
	}
	#masthead .site-branding .icon-effect.second {
		width: 20px;
	}
	body.scrolled #masthead .site-branding .icon-effect,
	body.scrolled #masthead .site-branding .icon-effect.second {
		height: 40px;
	}
	#masthead .main-navigation{
		gap:35px;
		flex: 1;
		justify-content: space-between;
	}
	#masthead #btn_applications{
		font-weight: 700;
		text-transform: uppercase;
		line-height: 1;
		color: #000;
		padding: 15px 32px;
		display: flex;
		gap: 20px;
		align-items: center;
	}	
	body.scrolled #masthead #btn_applications{
		padding: 10px 20px;
	}
	#masthead .main-navigation .menu-toggle{
		display:none;
	}
	#masthead #menu-with-search{
		display: flex;
		align-items: center;
		gap: 50px;
	}
	#masthead .main-navigation ul#primary-menu {
		display: flex;
		gap:35px;
		position:relative;
	}
	#masthead .main-navigation li a {
		font-size: 16px;
		font-weight:600;
	}
	#masthead .main-navigation .submenu-wrapper{
		display:flex;
		gap:35px;
		transform: translateY(25px);
		background:#fff;
		top:100%;
	}
	#masthead .main-navigation .submenu-wrapper .mega-menu-image{
		width:250px;
		height:330px;
		flex-shrink: 0;
    	flex-grow: 0;
	}
	#masthead .main-navigation .submenu-wrapper .mega-menu-image img{
		width:100%;
		height:100%;
		object-fit:cover;
	}
	#masthead .main-navigation .submenu-wrapper ul{
		background:#fff;
	}
	#masthead .main-navigation .submenu-wrapper > ul{
		padding:10px 0 10px;
		margin:0;
	}
	#masthead .main-navigation li.mega-menu{
		position:unset;
	}
	#masthead .main-navigation ul li.mega-menu:hover .submenu-wrapper {
		left: auto;
		right:0;
	}
	#masthead .main-navigation li.mega-menu .submenu-wrapper > ul{
		display:block;
		columns:2;
		padding:10px 0 20px;
	}
	#masthead .main-navigation li.mega-menu .submenu-wrapper > ul > li{
		margin-top:25px;
		min-height:50px;
		display:inline-block;
	}
	#masthead .main-navigation .submenu-wrapper ul li a{
		font-size:14px;
	}
	#masthead .main-navigation .submenu-wrapper > ul > li.menu-item-image > a{
		display:flex;
		align-items:center;
		gap:15px;
	}
	#masthead .main-navigation .submenu-wrapper > ul > li.menu-item-image a img.menu-image{
		width:40px;
		height:40px;
		object-fit:cover;
		transition:all .2s;
	}
	#masthead .main-navigation .submenu-wrapper > ul > li.menu-item-image a:hover img.menu-image{
		transform:scale(1.1);
	}
	#masthead .main-navigation .submenu-wrapper,
	#masthead .main-navigation li:not(.mega-menu) .submenu-wrapper ul ul {
		float: left;
		position: absolute;
		left: -999em;
		z-index: 99999;
		transition: transform .2s .2s, opacity .2s .2s;
		opacity: 0;
		box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04);
	}
	#masthead .main-navigation li:not(.mega-menu) .submenu-wrapper ul li a{
		padding:15px 35px;
		width:200px;
	}
	#masthead .main-navigation li:not(.mega-menu) .submenu-wrapper ul li a svg{
		transform:rotate(-90deg);
	}
	#masthead .main-navigation li:not(.mega-menu) .submenu-wrapper ul ul {
		top:0;
	}
	#masthead .main-navigation li.mega-menu .submenu-wrapper ul ul {
		display:block;
		margin-left:55px;
		padding:0;
	}
	#masthead .main-navigation li.mega-menu .submenu-wrapper ul ul li {
		margin:0;
		padding:0;
	}
	#masthead .main-navigation li.mega-menu .submenu-wrapper ul ul li a {
		font-size:14px;
		font-weight:400;
	}
	#masthead .main-navigation ul ul {
		flex-direction: column;
	}
	#masthead .main-navigation li:not(.mega-menu) .submenu-wrapper ul ul {
		transform: translateX(25px);
	}
	#masthead ul#primary-menu > li > a {
		margin-top:35px;
		padding-bottom:35px;
		transition:all .3s;
	}
	#masthead #menu_produit ul li a{
		padding:25px 0;
	}
	body.scrolled #masthead ul#primary-menu > li > a {
		margin-top:20px;
		padding-bottom:20px;
	}
	#masthead ul#primary-menu > li > a:hover {
		opacity:.7;
	}
	#masthead .main-navigation li.mega-menu ul a {
		width: 275px;
	}
	#masthead .main-navigation ul li:not(.mega-menu) ul li:hover > ul,
	#masthead .main-navigation ul li:not(.mega-menu) ul li.focus > ul {
		display: block;
		left: 100%;
		opacity:1;
		transform:none !important;
	}
	#masthead .main-navigation ul li:hover > .submenu-wrapper,
	#masthead .main-navigation ul li:focus > .submenu-wrapper {
		transform: none !important;
    	opacity: 1 !important;
	}
	#masthead .main-navigation ul li:not(.mega-menu):hover > .submenu-wrapper,
	#masthead .main-navigation ul li:not(.mega-menu).focus > .submenu-wrapper {
		left: -35px;
		right:auto;
	}
	#masthead .main-navigation ul li.mega-menu:hover > .submenu-wrapper,
	#masthead .main-navigation ul li.mega-menu.focus > .submenu-wrapper {
		left: auto;
		right:-55px;
	}
	#masthead .main-navigation #primary-menu > li:last-of-type {
		margin-left:15px;
	}
	#masthead .main-navigation .menu-search svg{
		display:block;
	}
	footer.site-footer > .inner{
		gap:75px;
	}
	footer.site-footer .columns .col-logo{
		width:22%;
	}
	footer.site-footer .columns.cols-4 .col-lists{
		width:46%;
	}
	footer.site-footer .columns.cols-3 .col-lists{
		width:60%;
	}
	footer.site-footer .columns.cols-4 .col-lists .col-coords{
		width:55%;
	}
	footer.site-footer .columns.cols-4 .col-lists .col-menu{
		width:45%;
	}
	footer.site-footer .columns .col-catalogue{
		width:22%;
	}
	footer.site-footer .columns p.title {
		font-size:20px;
	}
	footer.site-footer .col-lists .col-coords,
	footer.site-footer .col-lists .col-menu{
		padding-left:55px;
	}
	footer.site-footer .col-lists .col-coords .title::before,
	footer.site-footer .col-lists .col-menu .title::before{
		content:'';
		display:block;
		width:32px;
		height:1px;
		background:#fff;
		position:absolute;
		top:15px;
		left:-55px;
	}
	.page-header{
		position:relative;
	}
	.page-header img{
		position:absolute;
		width:48vw;
		height:22vw;
		top:100px;
		right:-28px;
		z-index:2;
	}
	.page-header .inner{
		min-height: calc(22vw + 200px);
		margin-right: 25%;
		padding-right: 25%;
		padding-top: 15px;
		position:relative;
		z-index:1;
		background:none;
	}
	.page-header .inner::before{
		content:'';
		position:absolute;
		background:#f8f8f8;
		right:0;
		left:-100vw;
		top:0;
		bottom:0;
		animation-name: slideInLeft;
		animation-fill-mode: forwards !important;
		animation-duration: 1s;
		animation-timing-function:cubic-bezier(0.075, 0.82, 0.165, 1);
		z-index:-1;
	}
	.page-header .made-in-france{
		position: absolute;
		top: 100px;
		border: 1px solid #000;
		transform: rotate(-90deg) translate(-100%, 0);
		transform-origin: top left;
		width: 22vw;
		padding: 18px 20px;
		left: 0;
		text-transform: uppercase;
		display: flex;
		justify-content: center;
		align-items: center;
	}
	.page-header .made-in-france::before{
		content:'';
		display:block;
		width:35px;
		height:1px;
		background:#000;
		margin-right:10px;
	}
	.page-header .inner .texte{
		margin-top: 100px;
  		margin-left: 95px;
	}
	.search-field{
		padding: 12px 60px 12px 20px !important;
		height:90px;
	}
	.search-form svg.loupe{
		left: 20px;
		width:auto;
	}
	.search-form svg.arrow{
		width:auto;
		margin-left:-40px;
	}
	#bloc_catalogue{
		padding:100px 100px 75px;
	}
	#bloc_catalogue p {
		font-size: 15px;
	  }
	body.home #page.site {
		padding-top: 0;
	}
	body.home:not(.scrolled) #masthead {
		border-bottom:none;
	}
	body.home:not(.scrolled) #masthead:not(:hover) {
		background:none;
	}
	body.home:not(.scrolled) #masthead .site-branding .icon-effect {
		background:none;
	}
	body.home:not(.scrolled) #masthead:not(:hover) .site-branding #logo-polyprod path {
		fill: #fff;
	}
	body.home:not(.scrolled) #masthead:hover .site-branding #logo-polyprod path,
	body.home:not(.scrolled) #masthead:hover .main-navigation #primary-menu > li > a,
	body.home:not(.scrolled) #masthead:hover #primary-menu > li > a > .arrow path,
	body.home:not(.scrolled) #masthead:hover .main-navigation .menu-search svg path {
		transition:all .3s .3s;
	}
	body.home:not(.scrolled) #masthead:not(:hover) #btn_applications {
		border:1px solid #fff;
	}
	body.home:not(.scrolled) #masthead:not(:hover) .main-navigation #primary-menu > li > a {
		color: #fff;
	}
	body.home:not(.scrolled) #masthead:not(:hover) #primary-menu > li > a > .arrow path {
		fill: #fff;
	}
	body.home:not(.scrolled) #masthead:not(:hover) .main-navigation .menu-search svg path {
		fill: #fff;
	}
	body.home #home_slider .slide .content {
		padding:0;
	}
	body.home #home_slider .slide .content .vertical{
		height:90px;
	}
	body.home #home_slider .yp{
		left: -4vw;
		top: -13vh;
		width: 37%;
	}
	body.home #home_slider h2{
		font-size:40px;
	}
	body.home #home_slider .slide .content p {
		font-size: 15px;
	}
	body.home #home_recherche {
		padding:120px 0;
	}
	body.home #home_recherche .search-field {
		padding: 12px 60px 12px 60px !important;
	}
	body.home #home_recherche .search-form .submit-label svg.arrow{
		height:22px;
		margin-left: -35px;
	}
	body.home #home_applications {
		padding:120px 0;
		overflow-x: hidden;
	}
	body.home #home_applications .intro{
		display:flex;
		position:relative;
	}
	body.home #home_applications .intro .made-in-france{
		position: absolute;
		top: 0;
		border: 1px solid #000;
		transform: rotate(-90deg) translate(-100%, 0);
		transform-origin: top left;
		width: 344px;
		padding: 28px 40px;
		left: 0;
		text-transform: uppercase;
		display: flex;
		justify-content: space-between;
		align-items: center;
	}
	body.home #home_applications .intro .made-in-france::before{
		content:'';
		display:block;
		width:75px;
		height:1px;
		background:#000;
		margin-right:20px;
	}
	body.home #home_applications .intro .content{
		width:33%;
		transform: translateX(120px);
		padding-top:35px;
	}
	body.home #home_applications .intro .image{
		transform: translateX(200px);
		width:66%;
	}
	body.home #home_applications .intro .image img{
		width:100%;
		object-fit:cover;
		aspect-ratio: 1 / .41;
		position:absolute;
	}
	body.home #home_applications .intro .image.scroll-animation{
		animation-name: home-applications-image;
		animation-duration: .6s;
	}
	@keyframes home-applications-image {
		0% {
		  	transform: translateX(250px);
		  	opacity: 0;
		}
		100% {
		  	transform: translateX(200px);
		  	opacity: 1;
		}
	}
	body.home #home_applications .applications{
		padding-left:120px;
		z-index:9;
	}
	body.home #home_applications .applications .slider > .application{
		width:15%;
		margin-bottom:0;
	}
	body.home #home_pourquoi_nous{
		padding:120px 0;
	}
	body.home #home_pourquoi_nous .yp{
		width: 33%;
	}
	body.home #home_pourquoi_nous .inner{
		gap:100px;
	}
	body.home #home_pourquoi_nous .menu li a {
		font-size: 15px;
	}
	body.home #home_pourquoi_nous .contenu p {
		font-size: 15px;
	  }
	body.home #home_ressources{
		padding:120px 0;
	}
	body.home #home_ressources .ressources .slick-slide{
		width:calc((100vw - 36px) / 3) !important;
	}
	body.single-produit h1{
		margin-bottom:50px;
	}
	body.single-produit h4{
		font-size: 15px;
	}
	body.single-produit .content-produit .left .application{
		font-size:15px;
		margin-bottom:15px;
	}
	body.single-produit .content-produit .left .catalogue a{
		font-size:15px;
	}
	body.single-produit .content-produit .left .certificat{
		font-size:13px;
	}
	body.single-produit .content-produit .right #galerie-avantages .avantage{
		font-size: 13px;
	}
	body.single-produit .content-produit .right #options .grid{
		display:flex;
		justify-content:space-between;
		flex-wrap:wrap;
	}
	body.single-produit .content-produit .right #options .option{
		width: calc(50% - 12.5px);
	}
	body.single-produit .content-produit .right #options .grid.nb-blocs-1 .option,
	body.single-produit .content-produit .right #options .grid.nb-blocs-3 .option:nth-child(3),
	body.single-produit .content-produit .right #options .grid.nb-blocs-5 .option:nth-child(3),
	body.single-produit .content-produit .right #options .grid.nb-blocs-6 .option:nth-child(3),
	body.single-produit .content-produit .right #options .grid.nb-blocs-6 .option:nth-child(6),
	body.single-produit .content-produit .right #options .grid.nb-blocs-7 .option:nth-child(3),
	body.single-produit .content-produit .right #options .grid.nb-blocs-7 .option:nth-child(6),
	body.single-produit .content-produit .right #options .grid.nb-blocs-7 .option:nth-child(7),
	body.single-produit .content-produit .right #options .grid.nb-blocs-8 .option:nth-child(3),
	body.single-produit .content-produit .right #options .grid.nb-blocs-8 .option:nth-child(6),
	body.single-produit .content-produit .right #options .grid.nb-blocs-9 .option:nth-child(3),
	body.single-produit .content-produit .right #options .grid.nb-blocs-9 .option:nth-child(6),
	body.single-produit .content-produit .right #options .grid.nb-blocs-9 .option:nth-child(9){
		width: 100%;
	}
	body.single-produit #blocs_contenu .cols{
		display:flex;
	}
	body.single-produit #blocs_contenu .cols .bloc.medium{
		width:64%;
	}
	body.single-produit #blocs_contenu .cols .bloc.small{
		width:36%;
		min-height:30vw;
		padding:75px;
	}
	body.single-produit #blocs_contenu .cols .bloc.image.small .button .btn{
		margin-left:auto;
		margin-right:auto;
	}
	body.single-produit #blocs_contenu .bloc{
		padding:60px 0;
	}
	body.single-produit #blocs_contenu .bloc .container{
		display:flex;
		flex-direction:column;
	}
	body.single-produit #blocs_contenu .bloc.large .container{
		flex-direction:row;
		justify-content:space-between;
		align-items:center;
		text-align:left;
	}
	body.single-produit #blocs_contenu .bloc .inner{
		text-align:left;
	}
	body.single-produit #blocs_contenu .bloc.image .inner{
		text-align:center;
	}
	body.single-produit #blocs_contenu .bloc.image .btn{
		margin-left:auto;
		margin-right:auto;
	}
	body.single-produit #blocs_contenu .bloc .icone-texte{
		display:flex;
		align-items:flex-start;
		gap:25px;
	}
	body.single-produit #blocs_contenu .bloc .icone-texte .icone{
		width:90px;
	}
	body.single-produit #blocs_contenu .bloc .icone-texte .icone img{
		margin-bottom:0;
	}
	body.single-produit #blocs_contenu .bloc.small.no-icon .icone-texte .icone{
		display:none;
	}
	body.single-produit #blocs_contenu .bloc .icone-texte .texte{
		width:calc(100% - 115px);
	}
	body.single-produit #blocs_contenu .bloc.small.no-icon .icone-texte .texte{
		width:100%;
	}
	body.single-produit #blocs_contenu .bloc.large .icone-texte .texte h2{
		margin:15px 0 5px;
	}
	body.single-produit #blocs_contenu .bloc.small .button,
	body.single-produit #blocs_contenu .bloc.medium .button{
		margin-top:50px;
	}
	body.single-produit #blocs_contenu .bloc.large .button{
		margin-top:0;
	}
	body.single-produit #blocs_contenu .cols .bloc:not(.no-icon).small .button,
	body.single-produit #blocs_contenu .cols .bloc.medium .button {
		padding-left: 115px;
	}
	body.single-produit #blocs_contenu .bloc.large .icone-texte{
		width:calc(100% - 400px);
	}
	body.single-produit #blocs_contenu .bloc.large .button{
		width:350px;
		padding-left:25px;
		text-align:right;
	}
	body.single-produit #blocs_contenu .bloc.large.image,
	body.single-produit #blocs_contenu .bloc.large.gris{
		min-height:30vw;
	}
	body.single-produit #blocs_contenu .bloc.medium.gris .yp {
		width:50%;
	}
	body.single-produit #blocs_contenu .bloc.large.gris .yp {
		width:33%;
	}
	body.single-produit #blocs_contenu .cols .bloc.medium {
		padding-left: 28px;
		padding-right: 28px;
	}
	body.single-produit #upsell .produits .slick-slide{
		width:calc((100vw - 36px) / 4) !important;
	}
	.produits .produit a{
		padding: 25px;
	}
	.produits .produit .texte .titre{
		font-size: 22px;
	}
	.produits .produit .texte .application{
		font-size: 13px;
	}
	.produits .produit .icone {
		top:15px;
		left:15px;
		width:58px;
		height:58px;
		padding:16px;
	}
	.produits .produit .icone img {
		max-width:26px;
	}
	.archive-produits .tri .selectric .label,
	.archive-produits .tri .selectric-items li{
		font-size:15px;
	}
	.archive-produits .produits-filtres #filtres-produits .inner{
		top: 75px;
	}
	.archive-produits .produits-filtres #filtres-produits .titre-filtrer{
		font-size:20px;
	}
	.grille-produits {
		grid-template-columns: repeat(auto-fill, calc(33% - 5px));
	}
	.grille-ressources{
		grid-template-columns: repeat(auto-fill, calc(33% - 10px));
	}
	.ressources .ressource .titre{
		font-size:18px;
	}
	.ressources .ressource .cat {
		font-size:13px;
	}
	.ressources .ressource .link{
		font-size:15px;
		margin-top:25px;
	}
	.ressources .ressource .link::before{
		width:48px;
		margin-right:20px;
	}
	.forminator-field input,
	.forminator-field textarea,
	.forminator-multi-upload,
	.forminator-field .forminator-label,
	.forminator-checkbox__label p{
		font-size:15px !important;
	}
}

@media screen and (min-width: 768px) and (max-width: 1199px){
	body.home #home_applications .applications .slider > .application  {
		width:16%;
	}
	body.home #home_applications .applications .slider > .application a svg,
	body.home #home_applications .applications .slider .slick-slide > div a svg {
		height:40px;
	}
	body.home #home_applications .applications .slider > .application a h3,
	body.home #home_applications .applications .slider .slick-slide > div a h3 {
		font-size:11px;
		bottom:0px;
		padding:5px;
	}
}

@media screen and (min-width: 1200px){
	#masthead #menu_produit ul{
		gap: 60px;
	}
	#masthead #menu_produit ul li a{
		font-size:16px;
	}
	#menu-applications .panel .menu .title {
		font-size: 29px;
	}
	#menu-applications .panel .menu ul li a,
	#menu-applications .panel .menu ul li.back a{
		font-size: 16px;
	}
	.page-header img{
		width:44vw;
		height:21vw;
	}
	.page-header .inner{
		min-height: calc(21vw + 200px);
	}
	.page-header .made-in-france{
		width: 21vw;
	}
	.page-header .made-in-france::before{
		width:50px;
		margin-right:20px;
	}
	.page-header .inner .texte{
		margin-left: 115px;
	}
	body.home #home_applications .applications .slider .application{
		font-size:20px;
	}
	body.home #home_applications .applications{
		margin-top:30px;
	}
	body.home #home_applications .applications .slick-arrows {
		display: flex;
		justify-content: start;
		gap: 25px;
	}
	body.single-produit .content-produit{
		display:flex;
	}
	body.single-produit .content-produit .left{
		width:35%;
	}
	body.single-produit .content-produit .left .inner{
		position:relative;
		padding:75px 40px 200px 0;
	}
	body.single-produit .content-produit .left .inner::before{
		content:'';
		position:absolute;
		top:0;
		bottom:0;
		right:0;
		left:-100vw;
		background: #f8f8f8;
		z-index:-1;
	}
	body.single-produit .content-produit .left h1{
		text-transform:uppercase;
	}
	body.single-produit .content-produit .left .catalogue{
		padding:0;
	}
	body.single-produit .content-produit .right{
		position:relative;
		width:65%;
		padding:15px 0 0 50px;
	}
	.grille-produits{
		grid-template-columns: repeat(auto-fill, calc(25% - 7px));
	}
	.archive-produits .produits-filtres #filtres-produits .inner{
		padding-bottom: 20px;
	}
	.archive-produits .produits-filtres.filtres-ok{
		display:flex;
		gap:20px;
	}
	.archive-produits .produits-filtres.filtres-ok #filtres-produits{
		width:calc(25% - 10px);
	}
	.archive-produits .produits-filtres.filtres-ok .produits-wrapper{
		width:calc(75% - 10px);
	}
	.archive-produits .produits-filtres.filtres-ok .grille-produits{
		grid-template-columns: repeat(auto-fill, calc(33% - 10px));
	}
	.grille-produits .produit{
		margin-bottom:20px;
	}
	.ressources .ressource a{
		padding: 30px 0;
	}
	.ressources .ressource .texte {
		padding: 0 40px;
	}
	.ressources .ressource .link {
		margin-left: 40px;
	}
	.page-contact .blocs-contact{
		gap:100px;
	}
	.page-contact .blocs-contact .contact-right{
		width:475px;
	}
}

@media screen and (min-width: 1356px){
	.page-header img{
		right: calc(0px - ((100vw - 1300px) / 2));
	}
	body.single-produit #blocs_contenu .cols .bloc.medium {
		padding-left: calc((100vw - 1300px) / 2);
	}
}

@media screen and (min-width: 1440px){
	.container{
		width:1380px;
		max-width:100%;
	}
	#masthead #menu-with-search,
	#masthead .main-navigation ul#primary-menu{
		gap:50px;
	}
	#masthead .main-navigation li.mega-menu{
		position:relative;
	}
	#masthead .main-navigation ul li:not(.mega-menu):hover > .submenu-wrapper,
	#masthead .main-navigation ul li:not(.mega-menu).focus > .submenu-wrapper {
		left: -35px;
		right:auto;
	}
	#masthead .main-navigation ul li.mega-menu:hover > .submenu-wrapper.image,
	#masthead .main-navigation ul li.mega-menu.focus > .submenu-wrapper.image {
		left: -285px;
		right:auto;
	}
	#menu-applications .panel{
		width:730px;
	}
	#menu-applications .panel .menu ul li a,
	#menu-applications .panel .menu ul li.back a{
		font-size: 19px;
	}
	#menu-applications .panel .menu .submenu ul li a{
		font-size: 17px;
	}
	#menu-applications .panel .menu ul li a .arrow{
		width: 23px;
		height: 23px;
		border-radius:23px;
		margin-left:15px;
	}
	footer.site-footer .columns .col-logo{
		width:24%;
	}
	footer.site-footer .columns.cols-4 .col-lists{
		width:40%;
	}
	footer.site-footer .columns .col-catalogue{
		width:26%;
	}
	.page-header img{
		right: calc(0px - ((100vw - 1380px) / 2));
	}
	.page-header .made-in-france{
		padding: 24px 40px;
	}
	.page-header .inner .texte{
		margin-left: 150px;
	}
	body.home #home_pourquoi_nous .menu li a {
		font-size: 18px;
	}
	body.home #home_ressources .ressources .slick-slide{
		width:466.66px !important;
	}
	body.single-produit .content-produit .left{
		width:30%;
	}
	body.single-produit .content-produit .right{
		width:70%;
		padding:15px 0 0 100px;
	}
	body.single-produit #blocs_contenu .cols .bloc.medium {
		padding-left: calc((100vw - 1380px) / 2);
		padding-right: 13%;
	}
	body.single-produit #upsell .produits .slick-slide{
		width:350px !important;
	}
}

@media screen and (min-width: 1650px){
	.page-header .made-in-france::before{
		width:75px;
		margin-right:20px;
	}
	.page-header .inner .texte {
		margin-top: 125px;
	}
}

@media screen and (min-width:1920px){
	.container{
		width:1456px;
	}
	#menu-applications .panel .menu ul li{
		padding:12px 0;
	}
	.page-header img{
		right: calc(0px - ((100vw - 1456px) / 2));
	}
	.page-header .inner .texte {
		margin-top: 150px;
	}
	footer.site-footer .columns.cols-4 .col-lists .col-coords,
	footer.site-footer .columns.cols-4 .col-lists .col-menu{
		width:50%;
	}
	body.home #home_ressources .ressources .slick-slide{
		width:492px !important;
	}
	body.single-produit #blocs_contenu .cols .bloc.medium {
		padding-left: calc((100vw - 1456px) / 2);
		padding-right: 10%;
	}
	body.single-produit #upsell .produits .slick-slide{
		width:369px !important;
	}
}

@media screen and (max-width:1919px){
	
}

@media screen and (max-width:1439px){
	#masthead .inner{
		width: calc(100% - 26px);
	}
	#menu-applications .panel .menu .title {
		margin-bottom:25px;
	}
}

@media screen and (max-width: 1199px){
	#masthead .site-branding .custom-logo-link {
		width: 195px;
	}
	#masthead #btn_applications {
		padding: 10px;
		gap: 10px;
		font-size: 14px;
	}
	#masthead .main-navigation ul#primary-menu {
		gap: 25px;
	}
	#masthead #menu-with-search {
		gap: 25px;
	}
	body.single-produit .content-produit .left .inner{
		margin:0 -28px;
	}
	body.single-produit .content-produit .right #breadcrumbs {
		display:none;
	}
}

@media screen and (max-width: 1024px){
	.container{
		width:100%;
		padding-left: 15px;
		padding-right: 15px;
	}
	.btn{
		margin-left:auto;
		margin-right:auto;
	}
	#page.site{
		padding-top:85px;
	}
	#page.site.menu-produit{
		padding-top:115px;
	}
	#masthead{
		padding:15px 0;
	}
	.menu-produit #masthead{
		padding:15px 0 0;
	}
	#masthead .inner {
		width: 100%;
	  }
	#masthead .menu-toggle,
	#masthead .site-branding{
		position:relative;
		z-index:12;
	}
	#masthead .site-branding .custom-logo-link{
		width:185px;
	}
	#masthead .site-branding .icon-effect {
		left: -90px;
		width: 40px;
		height: 40px;
	}
	#masthead .site-branding .icon-effect.second {
		width: 15px;
	}
	body.scrolled #masthead .site-branding .icon-effect,
	body.scrolled #masthead .site-branding .icon-effect.second {
		height: 40px;
	}
	#masthead .main-navigation{
		justify-content: space-between;
	}
	#masthead #btn_applications{
		width: 54px;
		height: 54px;
		padding: 0;
		display: flex;
		align-items: center;
		justify-content: center;
	}
	#masthead #btn_applications span{
		display:none;
	}
	#masthead .menu-toggle {
		padding:10px 15px;
		border-radius: 5px;
  		border: 1px solid #d8d8d8;
		background:#fff;
		width:54px;
		height:54px;
		display:flex;
		flex-direction:column;
		justify-content: center;
		z-index: 1000;
		position: relative;
		margin-left:10px;
	}
	#masthead .menu-toggle .bar {
		display: block;
		width:100%;
		background: #239AB9;
		height: 3px;
		margin-bottom: 4px;
		border-radius:2px;
		transition: all .3s;
	}
	#masthead .menu-toggle .bar:last-of-type {
		margin-bottom: 0;
	}
	#masthead .menu-toggle[aria-expanded="true"] .bar:nth-child(1) {
		transform: translateY(7px) rotate(135deg);
	}
	#masthead .menu-toggle[aria-expanded="true"] .bar:nth-child(3) {
		transform: translateY(-7px) rotate(-135deg);
	}
	#masthead .menu-toggle[aria-expanded="true"] .bar:nth-child(2) {
		transform: scale(0);
	}
	#masthead .main-navigation #primary-menu{
		transform: translateX(100vw);
		left: 0;
		right: 0;
		top:85px;
		height: calc(100dvh - 85px);
		position: fixed;
		transition: all .5s;
		overflow-y: auto;
		background:#fff;
		padding-top:25px;
		padding-bottom:50px;
		z-index:10;
	}
	#masthead .main-navigation.toggled #primary-menu{
		transform: none;
	}
	#masthead .main-navigation ul {
		width:100%;
	}
	#masthead .main-navigation li a {
		padding: 18px 15px;
  		border-bottom: 1px solid #eee;
	}
	#masthead .main-navigation ul ul li a {
		font-weight:400;
	}
	#masthead .main-navigation .submenu-wrapper .mega-menu-image{
		display:none;
	}
	#masthead .main-navigation .submenu-wrapper,
	#masthead .main-navigation ul > li > ul{
		display:none;
	}
	#masthead .main-navigation li a .menu-image{
		width:30px;
		height:30px;
		object-fit:cover;
	}
	#masthead .main-navigation li a .arrow {
		position:absolute;
		right:15px;
	}
	#masthead .main-navigation .submenu-wrapper ul ul {
		padding-left:45px;
	}
	#masthead .menu-search.desktop{
		display:none;
	}
	footer.site-footer .columns{
		flex-direction:column;
		gap:50px;
	}
	footer.site-footer .col-logo,
	footer.site-footer .col-catalogue{
		text-align:center;
	}
	footer.site-footer .columns .col-lists {
		justify-content: center;
	}
	#breadcrumbs{
		display:none;
	}
	.page-header{
		padding:0;
	}
	.page-header > .container{
		margin-left: -15px;
		margin-right: -15px;
		width: auto;
	}
	.page-header .no-img-header{
		display:none;
	}
	.page-header .made-in-france{
		display:none;
	}
	.page-header .inner{
		padding:40px 15px;
	}
	body.home #home_slider .slide{
		height:calc(100vh - 135px);
	}
	body.home #home_slider .slick-dots{
		padding-left: 25px;
  		padding-right: 25px;
	}
	body.home #home_applications .made-in-france,
	body.home #home_applications .image{
		display:none;
	}
	body.single-produit .content-produit .left .inner{
		margin:0 -15px;
	}
	body.single-produit #blocs_contenu .bloc .texte h2{
		font-size:25px;
	}
}

@media screen and (max-width: 767px){
	footer.site-footer #illustrations-footer img {
		margin-bottom:calc((100vw - 30px) * 0.04);
	}
	footer.site-footer .col-lists{
		flex-direction:column;
		text-align:center;
	}
	footer.site-footer .columns .contact p {
		justify-content: center;
	}
	#bloc_catalogue{
		display:flex;
		flex-direction:column-reverse;
		align-items:center;
		margin-left: 15px;
		margin-right: 15px;
		width: auto;
	}
	#bloc_catalogue .catalogue{
		transform:translateY(-25px);
	}
	body.home #home_pourquoi_nous .image{
		margin-bottom:50px;
	}
	body.home #bloc_catalogue{
		margin-top:50px;
	}
	body.home #home_ressources .ressources .slick-slide > div{
		width:80vw;
	}
	.archive-produits .separateur{
		float:right;
	}
	.archive-produits .tri{
		float:right;
		margin-top:25px;
		margin-left:15px;
	}
	.archive-produits .titre-filtrer{
		cursor:pointer;
		border-radius: 21px;
  		background: #f8f8f8;
		height:42px;
		display:flex;
		align-items:center;
		gap:10px;
		padding:0 20px;
	}
	.archive-ressources .pagination span.prev,
	.archive-ressources .pagination span.next{
		display:none;
	}
	body.search-results .results article h2 .titre {
		display: block;
		margin-top: 15px;
	}
}

@media screen and (max-width: 575px){
	.page-contact .page-header .telephone{
		width:100%;
	}
}

@media screen and (max-width: 500px){
    body.single-produit #blocs_contenu .bloc{
		min-height:95vw;
	}
}

@media screen and (max-width: 400px){
    body.home #home_applications .applications .slider > .application a svg,
	body.home #home_applications .applications .slider .slick-slide > div a svg {
		height:40px;
	}
	body.home #home_applications .applications .slider > .application a h3,
	body.home #home_applications .applications .slider .slick-slide > div a h3 {
		font-size:11px;
		bottom:0px;
		padding:5px;
	}
	body.single-produit .content-produit .right #galerie-avantages .avantage{
		width:100%;
	}
}


