/*  ============================================================================
    IMPORTS
    ========================================================================== */
@import url(reset.css);
@import url(simplegrid.css);
/*@import url('https://fonts.googleapis.com/css?family=Titillium+Web:400,400i,700,700i');*/
@import url('https://fonts.googleapis.com/css?family=Roboto:300,300i,900,900i&display=swap');

/*  ============================================================================
	GENERAL BASE BY Keven Ouellet
	========================================================================== */

.ui-datepicker-title select 		{ padding: 3px !important; font-size:16px !important; }

html								{ font-family: 'Roboto', Georgia, serif; font-size: 16px; line-height: 24px; font-weight: 400; height: 100%; color:#444; }
body								{ font-family: 'Roboto', Georgia, serif; font-size: 16px; line-height: 24px; font-weight: 400; height: 100%; color:#444; }

.cke_editable  						{ padding: 20px; min-height: 400px; }
.cke_editable body 					{ background: none; }
.cke_editable table.no-border		{ border: 1px dotted #D3D3D3; }
.cke_editable table.no-border tr td	{ border: 1px dotted #D3D3D3; }
.cke_editable table.no-border tr th	{ border: 1px dotted #D3D3D3; }
.cke_editable .ckeditor ul,
.cke_editable .ckeditor ol 			{ padding-left: 30px; margin-bottom: 30px; }

/*  ============================================================================
    Positions
    ========================================================================== */

.clear                              { display: block; clear: both; overflow: hidden; height:0; margin:0; padding: 0; }
.align-left                         { float:left; margin-right: 20px; }
.align-right                        { float:right; margin-left: 20px; }
.align-center                       { text-align: center; }
.full                               { width:100%; }

.fixed 								{ position: fixed; }
.left 								{ text-align: left; }
.right 								{ text-align: right; }
.center 							{ text-align: center; margin-left: auto; margin-right: auto; }

.inline 							{ display: inline; }
.inline-block 						{ display: inline-block; }
.block 								{ display: block; }

/*  ============================================================================
	TYPOGRAPHY
	========================================================================== */

h1									{ font-size: 36px; line-height: 40px; margin-bottom: 10px; }
h2									{ font-size: 36px; line-height: 40px; margin-bottom: 10px; margin-top: 20px; }
h3									{ font-size: 28px; line-height: 32px; margin-bottom: 10px; margin-top: 20px; }
h4									{ font-size: 22px; line-height: 26px; margin-bottom: 10px; margin-top: 20px; }
h5									{ font-size: 18px; line-height: 22px; margin-bottom: 10px; margin-top: 20px; }

.ckeditor ul						{ list-style: disc; padding: 0; padding-left: 30px; }
.ckeditor ol						{ list-style: decimal; padding: 0; padding-left: 30px; }
.page-wrapper img 					{ width: auto !important; height: auto !important; }

::-moz-selection					{ background: #000000; color: #fff; text-shadow: none; }
::selection							{ background: #000000; color: #fff; text-shadow: none; }

i, em								{ font-style: italic; }
strong, b							{ font-weight: bold; }
	
p									{ font-size: 16px; line-height: 24px; margin-bottom: 30px; color:#3a3a3a; }
p.spacer							{ padding: 20px; }
p.spacer-large						{ padding: 40px;  }
p.section-title						{ text-transform: uppercase; border-bottom: 1px solid #141414; font-weight: bold; }
p.sub-section-title					{ text-transform: uppercase; border-bottom: 1px solid #eee; font-weight: 700; }

small								{ font-size: 14px; }

img									{ max-width:100%; height: auto; vertical-align: middle; }
img.triquart 						{ max-width:75%; margin: 0 20px 20px 0; }
img.demi 							{ max-width:50%; margin: 0 20px 20px 0; }
img.tier 							{ max-width:33%; margin: 0 20px 20px 0; }
img.quart 							{ max-width:25%; margin: 0 20px 20px 0; }

sub, sup 							{ font-size: 12px; } 
sub 								{ vertical-align: sub; } 
sup 								{ vertical-align: super; }

blockquote,
cite								{ border-left: 3px solid #e7e9ec; padding: 0 0 0 16px; margin: 30px 0 30px 30px; }


/*  ============================================================================
	LISTS
	========================================================================== */

ol,
ul									{ list-style: disc; padding: 0; margin-bottom: 30px; }
ul.square							{ list-style: square; }
ul ul,
ol ol 								{ margin-bottom:0; }
ol									{ list-style: decimal;  }

ul.inline 							{ list-style: none; }
ul.inline li 						{ background-color: #333333; color:#FFF; display: inline-block; padding: 5px 10px; }

/*  ============================================================================
	LINKS & BUTTONS
	========================================================================== */

a									{ color:#333333; text-decoration: underline; }
a:hover								{ color:#000000; -webkit-transition: all 0.25s ease; -moz-transition: all 0.25s ease; -o-transition: all 0.25s ease; transition: all 0.25s ease; }

a.read-more						 	{ padding: 5px 12px; margin: 10px 0; background-color: #333333; color:#FFF; text-decoration: none; display: inline-block; }
a.read-more:hover					{ background-color: #000000; text-decoration: none; }

a.more							 	{ padding: 13px 18px; margin: 10px 0; background-color: #141414; color:#FFF; text-decoration: none; display: inline-block; }
a.more:hover						{ background-color: #000000; text-decoration: none; }

a.button 							{ background-color:#e61873; color:#FFF; padding: 15px 20px; text-decoration: none; -webkit-appearance: none; -webkit-border-radius: 35px; -moz-border-radius: 35px; border-radius: 35px; }
a.button:hover 						{ background-color: #000; }

/*  ============================================================================
	TABLES
	========================================================================== */

table								{ width: 100%; margin-bottom: 30px; }
table tr td							{ display: table-cell; padding: 10px; vertical-align: top; border-bottom: 1px solid #D3D3D3; }
table tr th						 	{ display: table-cell; padding: 10px; vertical-align: top; border-bottom: 1px solid #D3D3D3; font-weight: bold; text-align: left; color:#5B5B5B; }

table.no-border,
table.no-border tr td,
table.no-border tr td 				{ border:none; }

table.border						{ width: 100%; margin-bottom: 12px; border: 1px solid #D3D3D3; }
table.border tr td					{ display: table-cell; padding: 5px 10px; vertical-align: top; border: 1px solid #D3D3D3; }
table.border tr th				 	{ display: table-cell; padding: 5px 10px; vertical-align: top; font-weight: bold; text-align: left; border: 1px solid #D3D3D3; }

/*  ============================================================================
	FORMS
	========================================================================== */
  
input[type=text],
input[type=password]
input[type=search],
input[type=url],
input[type=tel],
input[type=date],
input[type=email],
input[type=time],
input[type=number],
input[type=range],
input[type=color],
textarea							{ font-family: 'Roboto', Georgia, serif; font-size: 16px; width: 100%; padding: 13px 15px; margin-bottom: 15px; 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[type=radio] 					{ width: auto !important;  }
input[type=checkbox] 				{  }

input[type=submit] 					{ padding: 13px 28px; color:#FFF; transition: 0.5s; background-color: #5bb85d; border: none; border-bottom: 4px solid #4F8E4F; cursor: pointer; font-size: 18px; line-height: 18px; -webkit-appearance: none; -webkit-border-radius: 3px; -moz-border-radius: 36px; border-radius: 3px; }
input[type=submit]:hover 			{ background-color: #35B737; }

input:focus,
textarea:focus 						{ border: 1px solid #35B737; }

textarea							{ min-height: 150px; resize: vertical; }
select								{ font-size: 16px; width: 100%; padding: 13px 15px; margin-bottom: 15px; 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: 0; }
option								{ width: 100%; }

span.help 							{ display: inline-block; position: relative; }
span.help .fa 						{ padding: 3px; font-size:18px; cursor: pointer;  }
span.help:hover .fa					{ color:#1C1C1C; }
span.help:hover span.help-text 		{ opacity: 1; visibility: visible; text-align: center; -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;  }
span.help-text 						{ opacity: 0; visibility: hidden; position: absolute; top:100%; left:0; background-color: #333333; padding: 8px 10px 5px 10px; font-size:14px; color:#FFF; -webkit-border-radius: 3px; -moz-border-radius: 3px; border-radius: 3px; }

/* JS ADD ICON TO SPECIFIC INPUT (script.js) */
.has_icon 							{ position: relative; }
.has_icon .input-icon 				{ position: absolute; top:13px; left:15px; }
.has_icon input 					{ padding-left: 44px; }

.checkbox-box 						{ display: block; padding: 3px; }

/*  ============================================================================
    BREADCRUMBS
    ========================================================================== */

.ariane                             { font-size: 15px; margin-bottom: 10px; }
.ariane a                           { font-size: 15px; display: inline-block; text-decoration: none; }
.ariane a:after                     { font-family: "Font Awesome 5 Free"; content:"\f105"; padding: 0 8px; font-weight: 900; }

/*  ============================================================================
    LINKS
    ========================================================================== */

.links                              { margin: 5px 0; }
.links a                            { display: inline-block; padding: 2px 13px; border:1px solid #efefef; }
.links .current_page                { display: inline-block; padding: 2px 13px; border:1px solid #efefef; background-color: #f5f5f5; }

/*  ============================================================================
    MESSAGES & ERRORS
    ========================================================================== */

.message                            { clear: both; display: block; padding: 12px 12px 12px 48px; position: relative; margin-bottom: 20px; color: #ffffff; background-color: #AFAFAF; -webkit-border-radius: 3px; -moz-border-radius: 3px; border-radius: 3px; }
.message p 							{ margin: 1px 0 0 0; font-size:16px; line-height: 20px; }

.error 								{ background-color:#ec3d3c; border: 1px solid #BA0D0D; }
.error:before 						{ font-family: "Font Awesome 5 Free"; content:"\f06a"; padding: 0 10px 0 0; position: absolute; top:13px; left:16px; font-weight: bold; }
.error p 							{ color:#FFF; }

.alert-error 						{ background-color:#ec3d3c; border: 1px solid #BA0D0D; clear: both; display: block; padding: 12px 12px 12px 48px; position: relative; margin-bottom: 20px; color: #ffffff; -webkit-border-radius: 3px; -moz-border-radius: 3px; border-radius: 3px; }
.alert-error:before 				{ font-family: "Font Awesome 5 Free"; content:"\f06a"; padding: 0 10px 0 0; position: absolute; top:13px; left:16px; font-weight: bold; }
.alert-error .close 				{ display: none; }

.success 							{ background-color:#a1d36e; border: 1px solid #65992F; }
.success:before 					{ font-family: "Font Awesome 5 Free"; content:"\f00c"; padding: 0 10px 0 0; position: absolute; top:13px; left:16px; font-weight: bold; }
.success p 							{ color:#FFF; }

.alert-success 						{ background-color:#a1d36e; border: 1px solid #65992F; clear: both; display: block; padding: 12px 12px 12px 48px; position: relative; margin-bottom: 20px; color: #ffffff; -webkit-border-radius: 3px; -moz-border-radius: 3px; border-radius: 3px; }
.alert-success:before 				{ font-family: "Font Awesome 5 Free"; content:"\f00c"; padding: 0 10px 0 0; position: absolute; top:13px; left:16px; font-weight: bold; }
.alert-success .close 				{ display: none; }

.notif 								{ background-color:#D3D3D3; color:#333333; border: 1px solid #878787; }
.notif:before 						{ font-family: "Font Awesome 5 Free"; content:"\f0f3"; padding: 0 10px 0 0; position: absolute; top:13px; left:16px;  color:#3F3F3F; font-weight: bold; }
.notif p 							{ color:#3F3F3F; }
.notif .close-message 				{ color:#3F3F3F; }

.warning 							{ background-color:#efaa33; color:#ffffff; border: 1px solid #B27513; }
.warning:before 					{ font-family: "Font Awesome 5 Free"; content:"\f06a"; padding: 0 10px 0 0; position: absolute; top:13px; left:16px;  color:#FFFFFF; font-weight: bold; }
.warning p 							{ color:#ffffff; }

input.missing,
textarea.missing,
select.missing 						{ border: 2px solid #FF3B38; background-color: #FFCECE; }
.missing 							{ color: #FF3B38; }

.close-message 						{ color:#FFF; position: absolute; top:4px; right:9px; font-weight: bold; padding:10px 17px; cursor: pointer; }

.js-error 							{ position: fixed; bottom:0; left:0; padding: 30px; background-color: #F25C00; color:#FFF; width: 100%; text-align: center; z-index: 1000; }

/*  ============================================================================
    NAVIGATION
    ========================================================================== */

#button-burger  					{ display: none; background-color: #141414; color:#FFF; cursor: pointer; position: fixed; top:0px; right:0px; border:none; z-index: 8; width: 52px; height: 52px; text-align: center; }
#button-burger .fas 				{ color:#fff; font-size:26px; line-height: 26px; }

nav.main-nav 						{ background-color: #F2F2F2; }
nav.main-nav ul.level-1 			{ margin-bottom: 0px; }
nav.main-nav ul.level-1 li			{ display: inline-block; padding: 0 2px; position: relative; }
nav.main-nav ul.level-1 li a		{ display: block; text-decoration: none; padding: 8px 12px; text-decoration: none; }
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: #B2B2B2; color:#303030; }

nav.main-nav ul.level-2 			{ width: 220px; z-index:10; background-color: #B2B2B2; display: none; position: absolute; margin-bottom: 0px; }
nav.main-nav ul.level-2 li			{ display: block; padding: 0; }
nav.main-nav ul.level-2 li a		{ display: block; padding: 8px 12px; }
nav.main-nav ul.level-2 li a:hover,
nav.main-nav ul.level-2 li a.open 	{ background-color: #C9C9C9; color:#303030; }

nav.main-nav ul.level-3 			{ width: 220px; z-index:10; background-color: #C9C9C9; display: none; 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	{ background-color: #E0E0E0; color:#303030; }

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.plus:after		 { font-family: "Font Awesome 5 Free"; content:"\f067"; padding-left: 10px; font-weight: 900; float: right; }


/*  ============================================================================
	GENERAL 
	========================================================================== */

.loading-bar 						{ display: none; }

.share 								{ padding-top:50px; }
.share-buttons a					{ width:15%; text-align: center; display: inline-block; padding: 5px 10px; color:#FFF; margin-bottom: 5px; }
.share-buttons .facebook 			{ background-color: #3B5998;  }
.share-buttons .twitter 			{ background-color: #55ACEE;  }
.share-buttons .google-plus 		{ background-color: #DD4B39;  }
.share-buttons .tumblr 				{ background-color: #2C4762;  }
.share-buttons .pinterest 			{ background-color: #CB2027;  }
.share-buttons .linked-in 			{ background-color: #0077b5;  }

.share-buttons .facebook:hover 		{ background-color: #32508C;  }
.share-buttons .twitter:hover 		{ background-color: #409CDD;  }
.share-buttons .google-plus:hover	{ background-color: #D13C2B;  }
.share-buttons .tumblr:hover 		{ background-color: #233E59;  }
.share-buttons .pinterest:hover 	{ background-color: #C1171C;  }
.share-buttons .linked-in:hover 	{ background-color: #00679B;  }

.news-preview 						{ cursor: pointer; background-color: #FFF; overflow: hidden; -webkit-border-radius: 5px; -moz-border-radius: 5px; border-radius: 5px; box-shadow: 0 0.5px 0 0 #ffffff inset, 0 1px 2px 0 #B3B3B3; }
.news-preview:hover					{ box-shadow: 0 0.5px 0 0 #ffffff inset, 0 1px 2px 0 #6B6B6B; }
.news-preview-image 				{ height: 380px; background-size: cover; background-position: center center; }
.news-preview-content 				{ padding: 30px; }
.news-preview .news-preview-title 	{ margin-bottom: 15px;	}
.news-preview .news-preview-title a { text-decoration: none; color:#333333; font-size:22px; line-height: 28px;  }
.news-preview-date 					{ font-size:14px; line-height: 14px; margin-bottom: 10px; background-color: #333333; color:#fff; padding: 5px 10px; display: inline-block; -webkit-border-radius: 5px; -moz-border-radius: 5px; border-radius: 5px; }


.box 								{ padding: 20px; border: 1px solid #CECECE; background-color:#FFF;  }
.communique-preview 				{ display: block; font-weight: bold; ba border: 1px solid #E8E8E8; padding: 10px 15px; text-decoration: none; }
.communique-preview:hover 			{ background-color: #E8E8E8; color:#000; }
.communique-preview span 			{ font-size:14px; font-weight: 300; }

.header-img 						{ margin-bottom: 20px; }

/*  ============================================================================
    DIVERS
    ========================================================================== */

#back-top 							{ position: fixed; bottom: 20px; left:20px; }
#back-top a 						{ font-size:26px; width: 34px; height: 34px; display: block; text-align: center; color:#777777; }
#back-top a:hover					{ color:#A3A3A3; }

#loading 							{ z-index: 1000000; display: none; text-align: center; position: fixed; top:0; left:0; right:0; bottom:0; background:rgba(255,255,255,0.85); }
#loading img 						{ max-height: 100%; max-width: 100%; width: auto; height: auto; position: absolute; top: 0; bottom: 0; left: 0; right: 0; margin: auto; }

/*  ============================================================================
    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 					{   }
.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; }

/*  ============================================================================
    Media queries
    ========================================================================== */

/* XXLARGE SCREEN */
@media only screen and (max-width : 1680px) {
	
}

/* XLARGE SCREEN */
@media only screen and (max-width : 1440px) {
	
}

/* LARGE SCREEN */
@media only screen and (max-width : 1280px) {
	
}

/* MEDIUM SCREEN */
@media only screen and (max-width : 1024px) {
	
}

/* INTER SCALE */
@media only screen and (max-width : 960px) {
	
}

/* SMALL SCREEN */
@media only screen and (max-width : 768px) {
	#button-burger  					{ display: block; }
	nav.main-nav 						{ display: none; position: fixed; top:0; left:0; width: 80%; height: 100%; }
	nav.main-nav a						{ font-size:22px; }
	nav.main-nav ul.level-1 li			{ display: block; padding: 0; }
	nav.main-nav ul.level-1 li a		{ padding: 10px 15px; }
	nav.main-nav ul.level-2 li a		{ padding: 10px 15px; padding-left: 20px; }
	nav.main-nav ul.level-3 li a		{ padding: 10px 15px; padding-left: 30px; }
	nav.main-nav ul.level-2 			{ width: 100%; position: relative; }
	nav.main-nav ul.level-3 			{ width: 100%; position: relative; left:0; }
	nav.main-nav li a.arrow-down:after 	{ float: right; }
	
	.news-preview-image 				{ height: 280px; }
	.news-preview-content 				{ padding: 20px; }
}

/* INTER SCALE */
@media only screen and (max-width : 640px) {
	img.triquart,
	img.demi,
	img.tier,
	img.quart 							{ max-width:100%; margin: 20px 0; }
	
	.news-preview-image 				{ height: 180px; }
	.news-preview-content 				{ padding: 10px; }
}

/* XSMALL SCREEN */
@media only screen and (max-width : 479px) {
	
}



/* SHORTCUTS & HELPERS

-webkit-border-radius: 6px; -moz-border-radius: 6px; border-radius: 6px;

*/