/*  ============================================================================
    TABLE OF CONTENT
    ========================================================================== */

/*
 * 01 - IMPORT 
 * 02 - OVERALL BASICS
 * 03 - TYPO & LIST
 * 04 - MESSAGES & ALERTS
 * 05 - LINKS & BUTTONS
 * 06 - FORMS
 * 07 - IMAGES
 * 08 - TABLE
 * 09 - NAVIGATION
 * 10 - HELPERS
 * 11 - MODULES
 * 12 - OTHERS PRE-BUILD LAYOUT
 * 13 - CUSTOMS
 * 14 - MEDIAS QUERIES
 * 15 - ANIMATIONS
 */

/*  ============================================================================
    01 - IMPORTS
    ========================================================================== */
@import url(reset.css);
@import url(simplegrid.css);
@import url(https://fonts.googleapis.com/css?family=Noto+Serif);

/*  ============================================================================
    02 - OVERALL BASICS
    ========================================================================== */
html								{ font-family: 'Noto Serif', Helvetica, sans-serif; font-size: 62.5%; scroll-behavior: smooth; height: 100%; }
body								{ font-family: 'Noto Serif', Helvetica, sans-serif; font-size: 1.6rem; line-height:1.6; letter-spacing:.01em; height: 100%; color:#444; background-color: #F2F2F2; }
body.cke_editable  					{ background: none; padding: 15px; }
body.iframe 						{ background-image: none; }

.ui-datepicker-title select 		{ padding: 3px !important; font-size:16px !important; }

.ckeditor iframe 					{ width: 100%;  }
.fancybox__content 					{ max-width: 900px !important; max-height: 90%!important; width: 80%!important; margin: 0!important; }

/* SELECTION */
::-moz-selection					{ background: #232323; color: #fff; text-shadow: none; }
::selection							{ background: #232323; color: #fff; text-shadow: none; }

:root {
	/* COLORS */
	--main-color: #5E5E5E; 
	--main-color-hover: #494949;

	--second-color: #333333;
	--second-color-hover: #212121;
	
	/* CUSTOM COLORS */
	--second-color-dark-white: #E5E5E5;
	--second-color-light-gray: #B7B7B7;
	
	--accent-color: #056f5e; /* input accent color */
}

/* SCROLL BAR */
::-webkit-scrollbar 				{ width: 14px; }
::-webkit-scrollbar-track 			{ background: var(--second-color-dark-white); }
::-webkit-scrollbar-thumb 			{ background: var(--main-color); }
::-webkit-scrollbar-thumb:hover 	{ background: var(--main-color-hover); }


/*  ============================================================================
	03 - TYPO & LIST
	========================================================================== */
/* HEADERS */
h1,h2,h3,h4,h5 						{ margin-bottom: 1rem; font-weight: 300; margin-top:0; letter-spacing:-0.1rem; }
h1									{ font-size: 3.6rem; line-height: 1.2; }
h2									{ font-size: 2.4rem; line-height: 1.25; }
h3									{ font-size: 2.8rem; line-height: 1.3; }
h4									{ font-size: 2.2rem; line-height: 1.35; letter-spacing:-0.08rem; }
h5									{ font-size: 1.8rem; line-height: 1.5; letter-spacing:-0.05rem; }

h2.line								{ font-size:50px; }
h2.line span 						{ display: inline-block; position: relative; }
h2.line span:before,
h2.line span:after 					{ content: ""; position: absolute; height: 5px;border-top: 1px solid #3a3a3a;top: 36px; width: 75%; }
h2.line span:before 				{ right: 100%; margin-right: 15px; }
h2.line span:after 					{ left: 100%; margin-left: 15px; }

article h3 							{ color: #056f5e; font-size: 24px; }

.iframe h1 							{ color:var(--main-color); text-shadow:none; padding: 0; line-height: 1; margin-bottom:30px; }
.iframe h2 							{ color:var(--main-color); text-shadow:none; padding: 0; }
.iframe h3 							{ color:var(--main-color); text-shadow:none; padding: 0; }
.iframe h4 							{ color:var(--main-color); text-shadow:none; padding: 0; }
.iframe h5 							{ color:var(--main-color); text-shadow:none; padding: 0; }

/* PARAGRAPHS */
p									{ font-size: 1.6rem; line-height: 1.6; font-weight: 300; margin-bottom: 2.5rem; color:var(--second-color); }
p.date 								{ font-size: 13px; }
p.date::before 						{ font-family: "FontAwesome"; content: "\f073"; padding-right: 8px; }
p.spacer							{ padding: 20px; }
p.spacer-large						{ padding: 40px; }
small								{ font-size: 1.2rem; }
p.item-description-text				{ font-size: 1.4rem; line-height: 1.5; margin-bottom: 1rem; }

span.price							{ color: #056f5e; font-weight: bold;  }
.price-has-rebate .price-regular	{ text-decoration: line-through; font-weight: normal; margin-right:10px; }

/* CHARACTES STYLES */
i, em								{ font-style: italic; }
strong, b							{ font-weight: bold; }

sub, sup 							{ font-size: 1rem; } 
sub 								{ vertical-align: sub; } 
sup 								{ vertical-align: super; }
	
blockquote 							{ font-size: 2.25rem; line-height:1.6; width:70%; margin:3rem auto; font-style:italic; color: var(--second-color); padding: 2rem 3rem 2rem 8rem; border-left:8px solid var(--main-color);  position: relative; background:var(--second-color-dark-white); }
blockquote::before 					{ font-family:Arial; content: "\201C"; color:var(--second-color); font-size:4em; position: absolute; left: 10px; top:-10px; }
blockquote::after 					{ content: ''; }
blockquote span 					{ display:block; color:var(--second-color); font-style: normal; font-weight: bold; margin-top:1em; }

/* LIST */
dl, ol, ul 							{ list-style:none; padding:0; margin:0; font-weight: 300; }

ul 									{ list-style: circle inside; margin-bottom: 2.5rem; }
ul ul,
ul ol 								{ margin: 1.5rem 0 1.5rem 3.0rem }
ul li 								{ margin-bottom: 1rem; }

ol 									{ list-style: decimal inside; margin-bottom: 2.5rem; }
ol ol,
ol ul 								{ margin: 1.5rem 0 1.5rem 3.0rem }
ol li 								{ margin-bottom: 1rem; }

/* TAG */
.tag 								{ background-color:var(--second-color); color:#FFF; text-decoration: none; margin: 0 0 10px 0; display:inline-block; padding:1.1rem 1rem; font-size:1.2rem; line-height: 0; -webkit-border-radius: 3px; -moz-border-radius: 3px; border-radius: 3px; }
.tag:hover							{ background-color:var(--accent-color); color:#FFF; text-decoration: none; }

/*  ============================================================================
	04 - MESSAGES & ALERTS
	========================================================================== */
.message                            { clear: both; display: block; padding: 15px; position: relative; margin-bottom: 10px; color: #31708f; background-color: #d9edf7; border: 1px solid #70B2D1; -webkit-border-radius: 3px; -moz-border-radius: 3px; border-radius: 3px; }
.message p 							{ color:#31708f; margin: 0; }
.message:before 					{ font-family: "Font Awesome 5 Free"; content:"\f06a"; padding: 0 6px 0 5px; font-weight: 900; }

.message.error 						{ color:#BA0D0D; background-color:#F7B4B4; border: 1px solid #FC7474; }
.message.error p 					{ color:#BA0D0D; }
.message.error:before 				{ font-family: "Font Awesome 5 Free"; content:"\f057"; padding: 0 6px 0 5px; font-weight: 900; }
.message.success 					{ color:#3c763d; background-color:#ACEFAD; border: 1px solid #53AA55; }
.message.success p 					{ color:#3c763d; }
.message.success:before 			{ font-family: "Font Awesome 5 Free"; content:"\f058"; padding: 0 6px 0 5px; font-weight: 900; }
.message.warning 					{ color:#665b40; background-color:#fff7c2; border: 1px solid #CEB984; }
.message.warning p 					{ color:#665b40; }
.message.warning:before 			{ font-family: "Font Awesome 5 Free"; content:"\f071"; padding: 0 6px 0 5px; font-weight: 900; }

/* function display_alert() */
.alert 								{  }
.alert-content						{  }
.alert-content h2 					{  }
.alert-content h2:before 			{ font-family: "Font Awesome 5 Free"; content:"\f071"; padding: 0 6px 0 5px; font-weight: 900; }

/*  ============================================================================
	05 - LINKS & BUTTONS
	========================================================================== */
a									{ color:var(--main-color); text-decoration: underline; }
a:hover								{ color:var(--main-color-hover); -webkit-transition: all 0.25s ease; -moz-transition: all 0.25s ease; -o-transition: all 0.25s ease; transition: all 0.25s ease; }
a:focus:not(a)						{ background-color:#FF3F00; color:#FFF !important; padding:0.25rem; text-decoration: none; border:none; outline: none; } 

a.button 							{ background-color: #056f5e; color:#FFF; margin-bottom: 1rem; font-size:1.7rem; line-height: 4rem; font-weight: 400; display:inline-block; padding: 0 2rem; text-align: center; text-decoration:none; white-space:nowrap; -webkit-border-radius: 0.4rem; -moz-border-radius: 0.4rem; border-radius: 0.4rem; transition: 0.20s ease-in; }
a.button:hover 						{ background-color: var(--main-color); color:#FFF;}
a.button:focus 						{ background-color: var(--main-color); border-color: currentColor }
a.button i.start 					{ margin-right: 1rem; }
a.button i.end 						{ margin-left: 1rem; }
a.green-button						{ background-color:  #056f5e; color:white; }									

a.button.button-shadow 				{ box-shadow: rgba(0, 0, 0, 0.4) 0px 1px 6px, rgba(0, 0, 0, 0.5) 0px 3px 6px; }

a.fancy-link 						{ color: #FF3F00; text-decoration: none; position: relative; }
a.fancy-link::after 				{ content: ""; position: absolute; left: 0; bottom: 0; width: 100%; height: 2px; background: currentColor; -webkit-transform: scaleX(0); transform: scaleX(0); -webkit-transform-origin: right; transform-origin: right; transition: -webkit-transform 250ms ease-in; transition: transform 250ms ease-in; transition: transform 250ms ease-in, -webkit-transform 250ms ease-in; }
a.fancy-link:hover::after 			{ -webkit-transform: scaleX(1); transform: scaleX(1); -webkit-transform-origin: left; transform-origin: left; }

a.read-more						 	{ color:#056f5e; text-decoration: none; display: inline-block; }
a.read-more:hover					{ text-decoration: none; color:#3a3a3a }
a.read-more:after					{ font-family: "FontAwesome"; content:"\f105"; padding-left: 15px; }

/*  ============================================================================
	06 - FORMS
	========================================================================== */

/* LABELS */
label 								{ cursor: pointer; font-weight: 400; font-size: 1.5rem; }

.checkbox 										{ display: block; margin-bottom:1rem; }
.checkbox label 								{ display: block; padding:1rem 1.25rem; cursor: pointer; border:1px solid var(--second-color-light-gray); -webkit-border-radius: 3px; -moz-border-radius: 3px; border-radius: 3px; }
.checkbox label:hover 							{ background-color: var(--second-color); color:#FFF; border:1px solid var(--second-color-hover); }
.checkbox input[type=checkbox] 					{ float: left; margin:1.5rem 1rem 0 1.25rem; }
.checkbox input[type=checkbox]:checked + label 	{ background-color: var(--main-color); color:#FFF; }

.question input[type=checkbox] 					{ width: auto; float:left; margin: 14px 5px 0px 10px; cursor: pointer; }
.question input[type=checkbox] + label			{ cursor: pointer; padding: 8px 12px; }
.question input[type=checkbox] + label:hover 		{ background-color: #DDDDDD; }
.question input[type=checkbox]:checked + label 	{ background-color: #ADADAD; } 

/* SELECT BOX */
select								{ color:#6D6D6D; width: 100%; background-color:#FFF; font-weight: 400; font-size: 1.5rem; padding:1rem 1.25rem; margin-bottom: 1rem; border:1px solid #CCCCCC; -webkit-transition: all 0.30s ease-in-out; -moz-transition: all 0.30s ease-in-out; -ms-transition: all 0.30s ease-in-out; -o-transition: all 0.30s ease-in-out; outline: none; -webkit-border-radius: 6px; -moz-border-radius: 6px; border-radius: 6px; }
select:hover 						{ background-color: #FCF6D1; }
select:focus 						{ border:1px solid #58D300 !important; }
option								{ width: 100%; }

/* RADIO */
.radio 										{ display: block; margin-bottom:1rem; }
.radio label 								{ display: block; padding:1rem 1.25rem; cursor: pointer; border:1px solid var(--second-color-light-gray); -webkit-border-radius: 3px; -moz-border-radius: 3px; border-radius: 3px; }
.radio label:hover 							{ background-color: var(--second-color); color:#FFF; border:1px solid var(--second-color-hover); }
.radio input[type=radio] 					{ float: left; margin:1.5rem 1rem 0 1.25rem; }
.radio input[type=radio]:checked + label 	{ background-color: var(--main-color); color:#FFF; }

input[type=radio] 					{ width: auto;  }

/* INPUT */
input 								{ accent-color: var(--accent-color); background-color:#FFF; }
input:hover 						{ background-color: #FFFADD; }
input:focus 						{ border:1px solid #58D300 !important; }

input[type=submit],
input.next 							{ margin-top: 30px; padding: 10px 15px; color:#FFF; background-color: #056f5e; cursor: pointer; border: none; font-size: 14px;}
input.next 							{ float: right; }
input[type=submit]:hover,
input.next:hover 					{ background-color: #085B4D; }
input.previous 						{ margin-top: 30px; padding: 10px 15px; color:#FFF; background-color: #848484; cursor: pointer; border: none; font-size: 14px; }
input.previous:hover 				{ background-color: #636363; }

input.missing,
textarea.missing,
select.missing 						{ border: 1px solid #FF0000 !important; }
.missing 							{ color: #FF0000; }

input[type="submit"]:disabled 		{ background: #B7B7B7; }
input.missing + span 				{ background: #FF3B38; padding: 1px 8px; font-size: 12px; display: inline-block; color:#FFF; position: absolute; right:30px; bottom:0; z-index: 100; }

input[type=text],
input[type=password],
input[type=search],
input[type=url],
input[type=tel],
input[type=file],
input[type=date],
input[type=email],
input[type=time],
input[type=number],
input[type=range],
input[type=color],
textarea							{ font-family: 'Roboto', 'Helvetica Neue', 'Helvetica', 'Arial', sans-serif; color:#3F3F3F; font-weight: 400; font-size: 1.6rem; width: 100%; padding:1.25rem 1.5rem; margin-bottom: 1rem; border:1px solid #CCCCCC; -webkit-transition: all 0.30s ease-in-out; -moz-transition: all 0.30s ease-in-out; -ms-transition: all 0.30s ease-in-out; -o-transition: all 0.30s ease-in-out; outline: none; -webkit-appearance: none; -webkit-border-radius: 5px; -moz-border-radius: 5px; border-radius: 5px; }

input.monument-unite 				{ width: 65px; text-align: center; }

/* TEXTAREA */
textarea							{ min-height: 150px; resize: vertical; background-color:#FFF; }
textarea:focus 						{ border:1px solid #58D300 !important; }

/* BUTTONS */
input[type=submit] 					{ font-size:1.6rem; padding:1rem 1.25rem; color:#FFF; transition: 0.5s; background-color: #5bb85d; cursor:pointer; border: none; border-bottom: 4px solid #4F8E4F; -webkit-appearance: none; -webkit-border-radius: 3px; -moz-border-radius: 36px; border-radius: 3px; }
input[type=submit]:hover 			{ background-color: #35B737; }

/*  ============================================================================
	07 - IMAGES
	========================================================================== */
img									{ opacity: 0.9;  max-width:100%; height: auto; vertical-align: middle; }
img:hover 							{ opacity: 1; }
img:focus 							{ border:#58D300 !important; }
img.border 							{ border:10px solid #FFF; box-shadow: rgba(9, 30, 66, 0.25) 0px 4px 8px -2px, rgba(9, 30, 66, 0.08) 0px 0px 0px 1px; }
	
/*  ============================================================================
	08 - TABLE
	========================================================================== */
table.form-table 					{ width: 100%; margin-bottom: 30px; }
table.form-table tr td				{ padding: 0 2rem 1rem 0; border:none; }
table.form-table tr td input,
table.form-table tr td select,
table.form-table tr td textarea 	{ margin-bottom: 0; }
table.form-table tr 				{ background:none !important; }

table								{ width: 100%; margin-bottom: 30px; }
table thead tr th 					{ background-color:#D8D8D8; }
table tr td							{ display: table-cell; padding: 1.4rem; vertical-align: middle;  }
table tr:hover 						{ background-color:#FFF0E0; color: black; }
table tr th						 	{ display: table-cell; padding: 1.4rem; vertical-align: middle; border-bottom: 1px solid #D3D3D3; font-weight: bold; text-align: left; color:#5B5B5B; }
	
table.no-border,
table.no-border tr,
table.no-border tr td,
table.no-border tr td,
table.no-border thead tr th 		{ border:none; background: none; }
	
table.border						{ width: 100%; margin-bottom: 12px; border: 1px solid #D3D3D3; }
table.border tr td					{ display: table-cell; vertical-align: middle; border: 1px solid #D3D3D3; }
table.border tr th				 	{ display: table-cell; vertical-align: middle; border: 1px solid #D3D3D3; }

/*  ============================================================================
	09 - NAVIGATION
	========================================================================== */


.ariane                             { font-size: 15px; margin-bottom: 30px; padding-bottom: 20px; border-bottom: 1px solid #C9C9C9; }
.ariane a                           { font-size: 15px; display: inline-block; text-decoration: none; }
.ariane a:after                     { font-family: "FontAwesome"; content:"\f105"; padding: 0 8px; }
	
button#button-burger 				{ display: none; z-index:11; position: fixed; top:40px; right:10px; width: 40px; height: 40px; cursor: pointer; background-color: #ffffff; color:#2B2B2B; border:0; margin: 15px; font-size: 24px; }

/* function display_menu (main menu) */	
nav.main-nav 						{ padding: 20px 0px; margin-bottom: 30px; border-top: 1px solid #CECECE; border-bottom: 1px solid #CECECE; }
nav.main-nav ul.level-1 			{  }
nav.main-nav ul.level-1 li			{ display: block; position: relative; margin:0; }
nav.main-nav ul.level-1 li a		{ font-size: 1.6rem; display: block; text-decoration: none; padding:8px;  }
nav.main-nav ul.level-1 li a:hover,
nav.main-nav ul.level-1 li a.open,
nav.main-nav ul.level-1 li a.current{ background-color: #EAEAEA; color:#222222; }

nav.main-nav ul.level-2 			{ width: 250px; top:100%; left:0; z-index:10; display: none; position: absolute; margin: 0; position: absolute; top:0; left:100%; background-color: #EAEAEA; width: 280px; border:1px solid #CECECE; }
nav.main-nav ul.level-2 li			{ display: block; padding: 0; margin:0; }
nav.main-nav ul.level-2 li a		{ display: block; padding: 5px; margin:0; }
nav.main-nav ul.level-2 li a:hover,
nav.main-nav ul.level-2 li a.open 	{ background-color: #C6C6C6; }

nav.main-nav ul.level-3 			{ width: 220px; z-index:10; display: none; margin:0; position: absolute; left:100%; top:0; margin-bottom: 0px; }
nav.main-nav ul.level-3 li			{ display: block; }
nav.main-nav ul.level-3 li a		{  }
nav.main-nav ul.level-3 li a:hover	{  }

nav.main-nav li a.arrow-down:after 	{ font-family: "Font Awesome 5 Free"; content:"\f107"; padding-left: 5px; font-weight: 900; }
nav.main-nav li a.arrow-right:after { font-family: "Font Awesome 5 Free"; content:"\f105"; padding-left: 5px; font-weight: 900; margin-left:4px; }
nav.main-nav li a.plus:after	  	{ font-family: "Font Awesome 5 Free"; content:"\f067"; padding-left: 10px; font-weight: 900; float: right; }

.menu 								{ position: absolute; top:0; left:10%; background-image: url(../images/bg_menu.png); background-repeat: no-repeat; background-position: center bottom; z-index: 10; width: 233px; padding: 30px 20px 120px 20px; text-align: center; } 

.footer-nav ul	 					{ margin-bottom: 0px; }
.footer-nav ul li					{ list-style-type: disc; margin-bottom: 0px; }

/*  ============================================================================
	10 - HELPERS
	========================================================================== */
.clear                              { display: block; clear: both; overflow: hidden; height:0; margin:0; padding: 0; }
.loading-bar 						{ display: none; }

/* BOX */
.box 								{ background-color: #FFF; padding: 3rem; margin-bottom: 30px; border: 1px solid #EAEAEA; border-radius: 4px 4px 4px 4px; -moz-border-radius: 4px 4px 4px 4px; -webkit-border-radius: 4px 4px 4px 4px; }
.box.box-shadow 					{ background-color: #FFF; padding: 3rem; margin-bottom: 30px; box-shadow: 1px 2px 2px rgba(0, 0, 0, 0.25); border-radius: 4px 4px 4px 4px; -moz-border-radius: 4px 4px 4px 4px; -webkit-border-radius: 4px 4px 4px 4px; }
.box *:last-child					{ margin-bottom: 0; }

/* LOADING BOX */
#loading-box 						{ z-index:1000000; background-color: #000; opacity: 0.85; position: fixed; top:0; left:0; width:100%; height:100%;} 
.spinner 							{ -webkit-animation: rotate 2s linear infinite; animation: rotate 2s linear infinite; z-index: 2; position: absolute; top: 50%; left: 50%; margin: -25px 0 0 -25px; width: 50px; height: 50px; }
.spinner .path 						{ stroke: #93bfec; stroke-linecap: round; -webkit-animation: dash 1.5s ease-in-out infinite; animation: dash 1.5s ease-in-out infinite; }

/*  ============================================================================
	11 - MODULES
	========================================================================== */
	
	.module.faq 						{ margin: 30px 0; }
	.faq .question-content 				{ margin-bottom: 5px; }
	.faq .faq-response 					{ border: 1px solid #E5E5E5; display: none; padding: 15px;}
	.faq .faq-question 					{ font-size: 17px; line-height: 24px; font-weight: 300; color:#212121;  }
	.faq .faq-question p 				{ font-size: 17px; line-height: 24px; font-weight: 300; margin-bottom: 30px; color:#3a3a3a; }
	.faq .faq-question p.faq-title 		{ background-color: #E5E5E5; border: 1px solid #E5E5E5; color:#545454; cursor: pointer; margin: 0; padding: 10px 15px; }
	.faq .faq-question p.faq-title:hover{ background-color: #545454; color:#FFF; }
	.faq .faq-question .fas 			{ float: right; padding: 5px 4px 0 0; }
	.faq .faq-response p:last-of-type 	{ margin-bottom: 0; }
	
/*  ============================================================================
	12 - OTHERS PRE-BUILD LAYOUT
	========================================================================== */

/* function display_logo() */
.logo 								{  }
.logo img.logo-image				{ max-width:250px; }
.logo a.logo-link					{  }

.mobile-logo 						{ display: none; width: 110px; padding: 10px 10px 0px 10px; background-color: #FFF; }

/* function display_link_translate() */
a.language 							{  }

/* function display_socials_icon() */
.main-social-list 					{  }
.main-social-list li 				{ list-style: none; display: inline-block; margin:0; }
.main-social-list li a 				{ display: block; color: #b5b5b5; font-size:3rem; padding:0 5px; }
.main-social-list li a:hover 		{ color: var(--main-color-hover); }

/* function display_share_buttons() */
.share 								{ margin-top: 30px; }
.share-buttons a					{ width: 100px; text-align: center; display: inline-block; padding: 1rem 2rem; color:#FFF; }
.share-buttons .facebook 			{ background-color: #3B5998; }
.share-buttons .twitter 			{ background-color: #55ACEE; }
.share-buttons .pinterest 			{ background-color: #CB2027; }
.share-buttons .linked-in 			{ background-color: #0072b1; }
.share-buttons .facebook:hover 		{ background-color: #32508C; }
.share-buttons .twitter:hover 		{ background-color: #409CDD; }
.share-buttons .pinterest:hover 	{ background-color: #C1171C; }
.share-buttons .linked-in:hover 	{ background-color: #03679E;  }

/*  ============================================================================
	13 - CUSTOMS
	========================================================================== */

.fullscreen-bg 						{ position: fixed; width: 100%!important; top: 0; right: 0; bottom: 0; left: 0; overflow: hidden; z-index: -100; }
.fullscreen-bg__video 				{ position: absolute; top: 0; left: 0; width: 100%; height: 100%; }

.call-to-action 					{ position: absolute; top:0; right:16%; width: 269px; height:auto; padding: 0px 16px 30px 16px; background-image: url(../images/bg_cta.png); background-size: ; background-position: center bottom; background-repeat: no-repeat; z-index: 8; text-align: center; }
.call-to-action-link 				{ display: block; text-decoration: none; padding: 10px; background-color: #222222; color:#FFF; }
.call-to-action-link:hover 			{ background-color: var(--accent-color); color:#FFF; }
.call-to-action-tel 				{ display: block; text-decoration: none; font-size:19px; line-height: 20px; border-top: 1px solid #C1C1C1; padding: 15px 10px; color:#056f5e; }
.call-to-action-tel:hover 			{ color:#034F42; }
.call-to-action-tel .fa 			{ padding-right: 5px; }
.call-to-action-tel-2 				{ display: block; text-decoration: none; font-size:17px; line-height: 20px; padding: 10px; color:#056f5e; }

.headline 							{ border-left:5px solid #fff; position: absolute; top:350px; right:16%; width: auto; z-index: 8; text-align: right; padding: 0px 20px 10px 50px; text-shadow: 0px 4px 3px rgba(0,0,0,0.4),0px 8px 13px rgba(0,0,0,0.1), 0px 18px 23px rgba(0,0,0,0.1); text-shadow: 0px 4px 3px rgba(0,0,0,0.4), 0px 8px 13px rgba(0,0,0,0.1), 0px 18px 23px rgba(0,0,0,0.1); }
.headline h1 						{ color:#FFF; font-weight: bold; font-size:54px; line-height: 64px; }

.general 							{ margin-top: 900px; background-color: #FFF;  }
.general-page						{ background-color: #FFF; padding-left: 20%;  }
.general-title						{ padding-left: 20%; }
.general-page-container 			{ padding-left:380px; }

.cards 								{ position: relative; width: 80%; margin: 0 auto; max-width: 1280px; }
.cards .card 						{ width: 31%; margin: -50px 1% 0 1%; float: left; text-align: center; }
.cards .card h2	 					{ color:#056f5e; font-weight: bold; }
.cards .card p.title 				{ margin-bottom: 30px; }
.cards .card a 						{ display: inline-block; padding: 10px 15px; text-decoration: none; background-color: #056f5e; color:#FFF; }
.cards .card a:hover 				{ text-decoration: none; background-color: #222222; color:#FFF; }
.card .content						{ background-color: #FFF; padding: 25px 25px 35px 25px; -webkit-box-shadow: 0px 0px 10px 0px rgba(50, 50, 50, 0.87); -moz-box-shadow: 0px 0px 10px 0px rgba(50, 50, 50, 0.87); box-shadow: 0px 0px 10px 0px rgba(50, 50, 50, 0.87); }

.item 								{ border:1px solid #D6D6D6; margin-bottom:20px; }
.item-content 						{ padding:30px; }
.item-content-title 				{ font-size:20px; font-weight:500; margin-bottom:5px;  }
.item-content-title a 				{ text-decoration: none; }
.item-content-title a:hover			{ text-decoration: underline; }

.item-frame							{ position: relative; text-align: center; float: left; width: 21%; height: 300px; margin: 10px; padding: 10px; border: 10px solid #FFF; -webkit-box-shadow: 0px 0px 10px 0px rgba(50, 50, 50, 0.60); -moz-box-shadow: 0px 0px 10px 0px rgba(50, 50, 50, 0.0.60); box-shadow: 0px 0px 10px 0px rgba(50, 50, 50, 0.0.60); }
.item-image-old						{ margin: 0; position: absolute; top: 30%; left: 50%; transform: translate(-50%, -50%); width: 50%; height: 50%;  }
.item-image		 					{ width:100%; height:180px; background-size: cover; background-position: center center; background-repeat: no-repeat; margin-bottom: 10px;}

.item-photo 						{ height: 180px; overflow: hidden; text-align: center; margin-bottom:12px; }
.item-photo img 					{ max-height: 100%;  }

.item-description					{ border:1px solid #D8D8D8; padding:15px; margin: 20px 0; }
.item-description p:last-child 		{ margin:0; }
.item-featured 						{ z-index:100; position: absolute; top:0; left:-20px; padding:3px 6px; font-size:13px; color:#FFF; background-color: #056f5e; display:inline-block;}

.call-us-information 				{ background-color: #4C4C4C; color:#FFF; padding:10px; }

.all-categ							{ background-color: #EFEFEF; padding: 12px; border: 1px solid #C4C4C4; margin-bottom: 30px; }
.all-categ li						{ list-style: none; }

.featured-item 						{ display: inline-block; border:1px solid #D6D6D6; margin: 0px 10px 20px 10px; width: 232px; }
.featured-item-image 				{ width:230px; }
.featured-item-content 				{ padding: 10px; }
.featured-item-content-title 		{ font-size:20px; font-weight:500; margin-bottom:5px;  }
.featured-item-content-title a 		{ text-decoration: none; }
.featured-item-content-title a:hover{ text-decoration: underline; }

.sidebar-category-list 				{ margin:0; padding:0; }
.sidebar-category-list li 			{ list-style:none; padding:5px 0; margin-bottom:5px; border-bottom:1px solid #D6D6D6; }
.sidebar-category-list li a 		{ text-decoration: none; }
.sidebar-category-list li a:hover 	{ text-decoration: underline; }
.sidebar p.title 					{ font-weight:500; }

a.download-pdf 						{ text-decoration: none; }

.life 								{ width: 100%; height: 475px; background-image: url(../images/life_continue.jpg); background-position: top center; background-repeat: no-repeat; }

footer 								{ background-color: #056f5e; color:#FFF; }
footer p 							{ color:#FFF; }
footer p.title 						{ font-size: 24px; border-bottom: 1px solid #3D9687; }
footer p.note 						{ font-size: 14px; font-style: italic; }
footer p.created-by 				{ font-size: 14px; font-style: italic; }
footer a 							{ color:#FFF; font-weight: normal; text-decoration: none; }
footer a:hover 						{ text-decoration: underline; color:#FFF; }
footer tr td 						{ padding: 0; }

.banner-page 						{position: fixed;  top: 0;right: 0;bottom: 0;left: 0;overflow: hidden;z-index: -100;background-image: url(../images/banner-page.jpg);background-size: cover;}

.blog-list							{ width: 100%; clear:left; padding: 10px 0 40px 0px; border-bottom: 1px solid #C9C9C9; margin-bottom: 30px; }
.blog-list .blog-image-large 		{ margin: 0 40px 15px 0; float: left; }
.blog-image 						{ width: 33%; float: left;}
.blog-content 						{ padding-left:35%; }

.grid-spacer 						{ padding-left: 260px; }
.grid-spacer-top					{ padding-top: 180px; }

p.page-title 						{ font-size: 38px; line-height: 1.5em; margin-bottom: 10px; color:#FFF; font-weight: bold; text-shadow: 0px 4px 3px rgba(0,0,0,0.4),0px 8px 13px rgba(0,0,0,0.1), 0px 18px 23px rgba(0,0,0,0.1); text-shadow: 0px 4px 3px rgba(0,0,0,0.4), 0px 8px 13px rgba(0,0,0,0.1), 0px 18px 23px rgba(0,0,0,0.1);}

#progressbar 							{ margin-bottom: 30px; overflow: hidden; padding: 0; counter-reset: step; }
#progressbar li 						{ list-style-type: none; text-transform: uppercase; font-size: 12px; color:#4C4C4C; background-color: #DDDDDD; text-align: center; padding: 10px 10px 2px 10px; width: 16.66%; float: left; position: relative; border-right:1px solid #FFF; border-bottom:1px solid #FFF; }
#progressbar li:before 					{ content: counter(step); counter-increment: step; display: block;font-size: 20px; }
#progressbar li:after 					{ content: ''; width: 100%; height: 2px; background: white; position: absolute; left: -50%; top: 9px; z-index: -1; /*put it behind the numbers*/ }
#progressbar li:first-child:after 		{ /*connector not needed before the first step*/ content: none; }
#progressbar li.active					{ background: #056f5e; color: white; }
#progressbar li.active:hover 			{ cursor: pointer; background: #076656; }

#soumission-form 								{ }
#soumission-form fieldset 						{ border:1px solid #C4C4C4; padding: 30px; }
#soumission-form fieldset:not(:first-of-type) 	{ display: none; }
#soumission-form p.title 				{ display: block; font-size: 14px; }

.question 								{ width: 100%; padding-right: 20px; float:left; position: relative; }
.question.half 							{ width: 50%; padding-right: 20px; float:left; }
.question.quarter 						{ width: 75%; }
.question span.star 					{ color:#E00000; font-weight: bold; }
.question label 						{ display: block; margin-top: 5px; }
.question .postal-code 					{ text-transform: uppercase; width:150px; display: inline-block; }

.frame 									{ border:10px solid #FFF; -webkit-box-shadow: 0px 0px 10px 0px rgba(50, 50, 50, 0.60); -moz-box-shadow: 0px 0px 10px 0px rgba(50, 50, 50, 0.0.60); box-shadow: 0px 0px 10px 0px rgba(50, 50, 50, 0.0.60); }


.last-blog 								{ text-align: center; padding: 50px 0; }
article.last-blog-preview				{ padding: 25px; }

.intro 									{ width: 75%; margin: auto; text-align: center; padding: 50px 0; }

.social *,
.social *:after,
.social *:before						{ -webkit-box-sizing:content-box; -moz-box-sizing: content-box; box-sizing: content-box; }
.social									{ margin-bottom: 30px; clear:left; padding: 20px; border: 1px solid #BFBFBF; margin-top: 30px; }
.social p.title 						{ font-weight: bold; }

.graveyard-note 						{ display: none; background-color: #FF831E; color:#fff; padding: 10px 20px; }
.graveyard-note-2 						{ display: none; background-color: #FF831E; color:#fff; padding: 10px 20px; }
input.monument-unite 					{ width: 65px; text-align: center; }
#monument_unite 							{ width: auto; padding:1.25rem; }
#base_unite 								{ width: auto; padding:1.25rem; }
.cke 									{ margin-bottom: 15px !important; }
.paintOptionDesc-hide 					{ display: none; }
.fondationOptionDesc-hide 				{ display: none; }
.cleaningOptionDesc-hide 				{ display: none; }
.bloc 									{ margin-bottom: 50px; }
.note-image 							{ border:1px solid #FF831E; color:#FF831E; padding: 10px 20px; }
.dontforget 							{ border:1px solid #FF831E; background-color:#FF831E; color:#FFF; padding: 10px 20px; }
#dropBox{
    border: 3px dashed #0087F7;
    border-radius: 5px;
    background: #C6E5FF;
    cursor: pointer;
	text-align: center;
	min-height: 150px;
    padding: 54px 54px 34px 54px;
}
#dropBox:before 					{ font-family: "FontAwesome"; content:"\f0ee"; margin: auto; font-size:80px; }
#dropBox:hover 						{ background: #B2DCFF; }
#dropBox p{
   
    margin: 2em 0;
    font-size: 16px;
    font-weight: bold;
}
#fileInput{
    display: none;
}

#dropBox p.msg-error  			{ color:#F00; }
#dropBox p.msg-success 			{ color:#3D9300; }

.categ-list-item a { width: 31%; padding: 50px 20px 20px 20px; height: 255px; line-height: 22px; text-decoration: none; float: left; border: 1px solid #9B9B9B; text-align: center; margin: 1%; }
.categ-list-item img { display: block; margin: auto; margin-bottom: auto; margin-bottom: 10px; }

#preview_thumb 					{ margin: 30px 0; }
.imgPrev 						{ width:30%; float: left; margin: 0 10px 10px 0; }

p.thx 							{ font-size:30px; background-color:#3D9300; color:#FFF; padding: 14px 18px; }

#back-to-top.show { opacity: 1; }
#back-to-top { position: fixed;	bottom: 20px; right: 20px; z-index: 1000; width: 42px; height: 42px; text-align: center; line-height: 40px; background: #DBDBDB; color: #444; cursor: pointer; border: 0; border-radius: 2px; text-decoration: none; transition: opacity 0.2s ease-out; opacity: 0; }

/* Pour placer Klaro au-dessus du bouton Back to top */
.klaro, 
.cc-window, 
.cc-banner, 
#cookieconsent,
#klaro,
.cm-as-context-notice,
div[id^="cookie-notice"],
div[id^="cookieChoiceInfo"],
div[class*="cookie"],
div[id*="cookie"] { z-index: 10000 !important; }
.cn-body { z-index: 10000 !important; }
.cookie-notice-container { z-index: 10000 !important; }

.request-price { background-color: #E8E8E8; padding:15px; margin:15px 0; }
.request-price input 			{ margin:0 !important; }
.request-price table 			{ margin-bottom:10px; }
.request-price .form-table tr td{ padding:2px; }

.orders input#quantity 			{ width:110px; }
.orders .prices .total 			{ font-size:24px; font-weight: bold; }

input#shipping_same  			{ float:left; margin:6px; cursor: pointer; }

.orders input[type="submit"] 					{ width:100%; }
.payment-custom-card-box input#card_number 		{ font-size:20px; }
.payment-custom-card-box input#card_cvv 		{ font-size:20px; }
.payment-custom-card-box input#postal_code      { font-size:20px; text-transform: uppercase; }
.orders input::placeholder 						{ color:#BFBFBF; }
.ccv-help                     					{ position:absolute; right:36px; top:46%; }

.billing_postal_code 				{ text-transform: uppercase; }
.shipping_postal_code 				{ text-transform: uppercase; }

.partner-group 						{  }
.partners p.group-title 			{ border-bottom:1px solid #AAAAAA; padding: 4px; font-size:20px; font-weight:bold; }
.partners .partners-list li 		{ display: inline-block; list-style: none; padding: 15px; margin:0;  }
.partners .partners-list li a 		{ display: block; }
.partners .partners-list li img 	{ height: 170px; width: auto; }

.partners-list 								{  }

/*  ============================================================================
	14 - MEDIAS QUERIES
	========================================================================== */

/* XXLARGE SCREEN */
@media only screen and (max-width : 1680px) {
	.menu 								{ left:9%; }
	.call-to-action 					{ right:9%; }
	.headline 							{ right:9%; }
	.general 							{ margin-top: 760px; }
	.cards 								{ width: 85%; }
	ul 									{ margin-bottom: 0; }
	nav.main-nav ul.level-1 li a 		{ padding: 4px; }

}
/* XLARGE SCREEN */
@media only screen and (max-width : 1440px) {
	.menu 								{ left:7%; }
	.call-to-action 					{ right:8%; }
	.headline 							{ right:8%; }
	.general 							{ margin-top: 710px; }
	.cards 								{ width: 88%; }
	.grid-spacer 						{ padding-left: 280px; }
	
	.item								{ width: 25%; }
	.item-photo 						{ height: 160px; }
	.item-image img						{  }
	
}

/* LARGE SCREEN */
@media only screen and (max-width : 1280px) {
	nav.main-nav ul.level-1 li a		{ font-size: 16px; line-height: 20px; }
	
	.menu 								{ left:4%; }
	.call-to-action 					{ right:7%; }
	.headline 							{ right:7%; }
	.general 							{ margin-top: 680px; }
	.card .content						{ padding: 20px; }
	.life 								{ height: 325px; background-position: center center; }

	h2.line span:before,
	h2.line span:after					{ width: 60%; }

	.general-page,						
	.general-title						{ padding-left: 25%; }
	.item-frame							{ width: 40%; } 
	.categ-list-item a 					{ padding: 40px 20px 20px 20px; }
	.item-image img						{  }
}

/* MEDIUM SCREEN */
@media only screen and (max-width : 1024px) {
	.menu 								{ left:2%; padding: 30px 15px 120px 15px; }
	.call-to-action 					{ right:4%; }
	.headline 							{ right:4%; }
	.headline h1 						{ font-size:38px; line-height: 48px; }
	.intro h2 							{ font-size: 40px; }
	.general-page,						
	.general-title						{ padding-left: 27%; }
	.categ-list-item a 					{ width: 48%; }
	.item-image img						{  }
	.item-image							{  }
}

/* INTER SCALE */
@media only screen and (max-width : 960px) {

	h2.line span:before,
	h2.line span:after					{ width: 50%; }
	.general-page,						
	.general-title						{ padding-left: 31%; }
	
}

/* SMALL SCREEN */
@media only screen and (max-width : 768px) {
	.menu 								{ display: none; position: fixed; top:0; left:0; width: 100%; z-index:10; padding: 5px; background-image: none; background-color: #FFF; height:100%; overflow: scroll;}
	nav.main-nav 						{ top:50px; }
	nav.main-nav ul.level-1 li a		{ font-size: 20px; line-height:28px; }
	blockquote 							{ width:90%; margin:1rem auto; padding: 2rem 2rem 2rem 6rem; }
	blockquote::before 					{ font-size:7rem; }
	nav.main-nav ul.level-2 			{ z-index: 200; display: none; margin: 0; position: relative; top: 0; left: 0; background-color: #EAEAEA; width: 100%; border: 1px solid #CECECE; }
	nav.main-nav li a.arrow-right::after{ display: none; }
	
	button#button-burger 				{ display: block; }
	
	.call-to-action 					{ left:0; width: 100%; background-color: #FFF; background-image: none; height: 200px; }
	.call-to-action-tel 				{ border: none; }
	
	.headline 							{ top:250px; text-align: center; border: none; width: 100%; }
	.general 							{ margin-top: 580px; }
	.cards 								{ width: 98%; }
	.card.first 						{ width: 48%; }
	.card.second 						{ width: 48%; display: none; }
	.card.third 						{ width: 48%; }
	article.last-blog-preview			{ padding: 5px; }
	.intro 								{ width: 100%; }
	.intro h2							{ font-size: 30px; }
	.life 								{ height: 225px; background-position: center center; background-size: cover; }

	.mobile-logo 						{ position: absolute; display: block; left: 50%; top: 136px; margin-left: -55px; z-index: 9; }
	
	h2.line span:before,
	h2.line span:after					{ display: none; }
	.general-page,						
	.general-title						{ padding-left: 1%; }
	.item-frame							{ width: 44%; } 
	
}

/* INTER SCALE */
@media only screen and (max-width : 640px) {
	
}

/* XSMALL SCREEN */
@media only screen and (max-width : 479px) {
	.cards 								{ width: 100%; }
	.card.first 						{ width: 100%; margin: 0 0 30px 0; }
	.card.second 						{ width: 100%; margin: 0 0 30px 0;display: block; }
	.card.third 						{ width: 100%; margin: 0 0 30px 0; }
	.life 								{ height: 190px;  }
	.categ-list-item a 					{ width: 98%; height: 210px; }
	.item-frame							{ width: 98%; } 
	.item-image img						{  }
}
	
/*  ============================================================================
	SPECIAL ADJUST FOR THE VIDEO
	========================================================================== */
@media (min-aspect-ratio: 16/9) {
	.fullscreen-bg__video 					{ height: 300%; top: -100%; }
}

@media (max-aspect-ratio: 16/9) {
	.fullscreen-bg__video 					{ width: 300%; left: -100%; }
}

@media (max-width: 767px) {
	.fullscreen-bg 							{ background: url('../images/screenshot.jpg') center center / cover no-repeat; }
	.fullscreen-bg__video 					{ display: none; }
}
/*  ============================================================================
	15 - ANIMATIONS
	========================================================================== */
@-webkit-keyframes rotate {
	100% {
		transform: rotate(360deg);
	}
}

@keyframes rotate {
	100% {
		transform: rotate(360deg);
	}
}
@-webkit-keyframes dash {
	0% {
		stroke-dasharray: 1, 150;
		stroke-dashoffset: 0;
	}
	50% {
		stroke-dasharray: 90, 150;
		stroke-dashoffset: -35;
	}
	100% {
		stroke-dasharray: 90, 150;
		stroke-dashoffset: -124;
	}
}
@keyframes dash {
	0% {
		stroke-dasharray: 1, 150;
		stroke-dashoffset: 0;
	}
	50% {
		stroke-dasharray: 90, 150;
		stroke-dashoffset: -35;
	}
	100% {
		stroke-dasharray: 90, 150;
		stroke-dashoffset: -124;
	}
}