/*
 Theme Name:   Twenty Eleven Child
 Theme URI:    http://example.com/twenty-eleven-child/
 Description:  Twenty Eleven Child Theme
 Author:       John Doe
 Author URI:   http://visuallizard.com
 Template:     twentyeleven
 Version:      1.0.1
 License:      GNU General Public License v2 or later
 License URI:  http://www.gnu.org/licenses/gpl-2.0.html
 Tags:         light, dark, two-columns, right-sidebar, responsive-layout, accessibility-ready
 Text Domain:  twenty-eleven-child
*/

body {
	padding: 0;
	background: #fff;
	font: 400 16px/1.5 "Open Sans","Helvetica Neue",Helvetica,Arial,sans-serif;
}

#page,
#main,
.container {
	max-width: 1024px;
	margin: 0 auto;
}
#main {
	padding: 1em 0 0;
}
.one-column #page {
	max-width: none;
	margin: 0 auto;
}
#branding {
	border: none;
	padding: 10px 0;
	z-index: 1;
	
	box-shadow: 999px 0px 0px 0px #fff, -999px 0px 0px 0px #fff;
}
#primary.container {
	float: none;
	width: auto;
}
#main #content {
	margin: 0;
}

.singular .entry-header,
.singular .entry-content,
.singular footer.entry-meta,
.singular #comments-title {
	width: auto;
}
.singular #primary.container {
	margin: 0 auto;
}
.singular.page .hentry {
    padding: 1em;
}
.singular #content,
.left-sidebar.singular #content {
	margin: 0;
}
#content {
	margin-left: 0;
}
#secondary {
	margin-right: 0;
}

a {
	color: #2d5c88;
	text-decoration: underline;
}
a:hover {
	text-decoration: none;
}

.button {
	background: #9a090c;
	color: #fff;
	border-radius: 2px;
	border: 1px solid #9a090c;
	text-transform: uppercase;
	text-decoration: none;
	padding: .25rem .75rem;
	transition: background .2s;
}
.button:hover {
	background: #000;
}

.alignleft {
	float: left;
	margin: 5px 20px 20px 0;
}
.alignright {
	float: right;
	margin: 5px 0px 20px 20px;
}
img[class*="align"],
img[class*="wp-image-"],
#content .gallery .gallery-icon img {
	border: none;
	padding: 0;
	max-width: 100%;
}

h1, h2, h3, h4, h5, h6 {
	clear: none;
	color: #2d5c88;
}
h1 { font-size: 2.1em; }
h2 { font-size: 1.9em; }
h3 { font-size: 1.7em; }
h4 { font-size: 1.5em; margin-top: 1em; margin-bottom: 1em; }
h5 { font-size: 1.3em; }
h6 { font-size: 1.1em; }

.entry-title,
.singular .entry-title {
	color: #2d5c88;
	padding-top: 15px;
	
	line-height: 1.3;
}
.entry-title a {
	color: inherit;
}
.entry-title a:hover,
.entry-title a:focus,
.entry-title a:active {
	color: inherit;
	text-decoration: underline;
}
.entry-content h1,
.entry-content h2,
.comment-content h1,
.comment-content h2 {
	
}
.entry-content h3,
.comment-content h3 {
/* 	letter-spacing: 0.1em; */
	line-height: normal; /* reset for accordion toggle correct position */
	text-transform: none;
	font-size: 1.7em;
}

/* =Tables
-------------------------------------------------------------- */
th,
td,
table {
	border: 1px solid #dddddd;
}
table {
	border-collapse: collapse;
	width: 100%;
}
th, td {
	padding: .8em;
}


/* Top Bar */
.top-bar {
	position: relative;
	background: #000;
	color: #fff;
	padding: 15px 0;
	z-index: 3;
}
	.top-bar .container {
		position: relative;
	}
	.top-bar a {
		color: #fff;
	}
	.top-bar .widget-title {
		color: #fff;
	}
	
.province-logo {
	max-width: 130px;
	position: absolute;
	right: 0;
	top: 0;
}
	.province-logo > a {
		display: block;
	}
	.province-logo img {
		display: block;
		width: 100%;
		transition: opacity .3s;
	}
	.province-logo:hover img {
		opacity: .85;
	}

/* language selector */
.widget_icl_lang_sel_widget {
	margin: 0;
}
	.widget_icl_lang_sel_widget .widget-title {
		display: inline-block;
		vertical-align: middle;
		margin-right: .5em;
		color: #fff;
		font-weight: bold;
		font-size: 12px;
	}
	#lang_sel_click {
		display: inline-block;
		vertical-align: middle;
		width: auto;
		background-color: transparent;
	}
	#lang_sel_click ul ul {
		width: auto;
	}
	#lang_sel_click li {
		width: 120px;
	}
	#lang_sel_click a {
		line-height: 16px;
		box-shadow: 0px 1px 1px rgba(0, 0, 0, 0.1) inset;
	}
	#lang_sel_click ul ul a {
		color: #000;
		background: #fff;
	}
	#lang_sel_click a.lang_sel_sel {
		
	}
	#lang_sel_click a:hover,
	#lang_sel_click ul ul a:hover,
	#lang_sel_click :hover > a,
	#lang_sel_click ul ul :hover > a {
		background: #eee url("../img/nav-arrow-down.png") no-repeat scroll right center;
	}






.site-logo {
	margin: 10px 0 10px 0;
	float: none;
	max-width: 28%;
}
#site-title {
	margin: 0;
	padding: 0;
}
#site-description {
	color: #000;
	margin: 0;
	text-indent: 0em;
	font-size: 13px;
	letter-spacing: .025em;
	position: absolute;
	clip: rect(1px 1px 1px 1px);
	width: 1px;
	height: 1px;
	overflow: hidden;
}
	#site-title a {
		display: block;
		text-indent: -300%;
		overflow: hidden;
		background: url(images/logo_main.en.png) 0 0 no-repeat transparent;
		background-size: 100% auto;
		padding-top: 40%;
		width: 100%;
		height: 0;
		line-height: 1;
		transition: all .2s;
	}
	html[lang*="fr-"] #site-title a { 
		background-image: url(images/logo_main.fr.png);
		background-position: 0 50%;
	}
	#site-title a:hover {
		opacity: .75;
	}

#branding #searchform {
	top: 60px;
	right: 0;
}
	#branding #s {
		width: 120px;
		float: none;
	}
	input#s {
		padding: 2px 10px 2px 28px;
		background-position: 5px 5px;
		border-color: #cdcdcd;
	}
	#branding #searchsubmit {
		display: inline-block;
		background: #9a090c;
		color: #fff;
		border-radius: 2px;
		border: 1px solid #9a090c;
		text-transform: uppercase;
		-webkit-appearance: none;
	}


/* =Menu
-------------------------------------------------------------- */

#access {
	background: #9a090c;
	box-shadow: 999px 0px 0px 0px #9a090c, -999px 0px 0px 0px #9a090c;
	display: block;
	margin: 0 auto 0;
	position: relative;
	z-index: 2;
}
#access div {
	margin: 0;
}
#access ul {
	font-family: sans-serif;
	font-size: 13px;
	list-style: none;
	margin: 0 -1em 0 -1em;
	padding-left: 0;
}
#access li {
	float: left;
	position: relative;
}
#access a {
	font-weight: 600;
	font-size: 12px;
	line-height: 1.3;
	color: #fff;
	display: block;
	padding: 1.25em 1em 1em;
	text-decoration: none;
	letter-spacing: 0.025em;
}
#access ul ul {
	-moz-box-shadow: 0 3px 3px rgba(0,0,0,0.2);
	-webkit-box-shadow: 0 3px 3px rgba(0,0,0,0.2);
	box-shadow: 0 3px 3px rgba(0,0,0,0.2);
	display: none;
	float: left;
	margin: 0;
	position: absolute;
	top: 100%;
	left: 0;
	width: 188px;
	z-index: 99999;
}
#access ul ul ul {
	left: 100%;
	top: 0;
}
#access ul ul a {
	background: #f9f9f9;
	border-bottom: 1px dotted #ddd;
	color: #333;
	font-size: 12px;
	font-weight: 600;
	height: auto;
	line-height: 1.4em;
	padding: 10px 10px;
	width: 168px;
}
#access li:hover > a,
#access ul ul :hover > a,
#access a:focus {
	background: #efefef;
}
#access li:hover > a,
#access a:focus {

}
#access ul li:hover > ul {
	display: block;
}
#access .current-menu-item > a,
#access .current-menu-ancestor > a,
#access .current_page_item > a,
#access .current_page_ancestor > a {
	
}
.menu > li:hover > a:first-child {
	background: none;
}

.menu > li > a {
/* 	text-transform: uppercase; */
}

.sub-menu .menu-item-has-children:after {
	content: '▶';
	position: absolute;
	right: .5em;
	top: 50%;
	margin-top: -.25em;
	font-size: 8px;
	line-height: 1;
	opacity: .2;
}


/* Meta Slider */
.metaslider {
	clear: both;
	width: 100%;
	margin: 0 auto;
	position: relative;
	overflow: hidden;
}
.vl .metaslider .caption-wrap {
	bottom: auto;
	top: 47%;
	width: 90%;
	transform: translateY(-50%);
	opacity: 1;
	background: transparent;
	padding-left: 5%;
}
.vl .metaslider .caption {
	text-transform: uppercase;
	font-weight: bold;
	font-size: 24px;
	padding-left: 0;
	text-shadow: 0 0 10px rgba(0, 0, 0, .75);
}
.vl .metaslider .caption p {
	line-height: 1.25em;
}
.vl .metaslider img {
	height: auto;
	padding: 0;
	margin: 0;
	-moz-user-select: none;
}
.vl .metaslider .ms-image a:after {
	content: 'Continue';
	display: block;
	position: absolute;
	left: 5%;
	bottom: 5%;
	color: #fff;
	background: #9a090c;
	padding: .25em 1em .4em;
	border-radius: 2px;
	cursor: pointer;
	opacity: .85;
}
.vl .metaslider .ms-image:hover a:after {
	opacity: 1;
}
.vl .metaslider .ms-image:hover .caption {
	text-shadow: 0 0 20px #000;
}
/*
.vl .metaslider .ms-image:hover a:before {
	content: '';
	display: block;
	position: absolute;
	left: 0; top: 0;
	width: 100%;
	height: 100%;
	background: rgba(0,0,0,.5);
}
*/


/* Breadcrumb */
.breadcrumb-list {
	font-size: 12px;
}


/* Accordion styles */
.accordion-title {
	position: relative;
	cursor: pointer;
}
.accordion-title:before {
	content: ' ';
	position: absolute;
	left: -1.25em;
	top: .25em;
	
	width: 1em;
	height: 1em;
/* 	background: no-repeat center center	url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='100' height='100' viewbox='0 0 100 100'><polygon fill='currentcolor' points='25,85.6 60.6,50 25,14.4 25,0 75,50 75,50 25,100'/></svg>") transparent; */
	background: center center no-repeat transparent url(images/arrow-right.png);
	background-size: 100% auto;
	color: inherit;
	
	-webkit-transition: transform .2s;
	transition: transform .2s;
}
.accordion-title.open:before {
	-webkit-transform: rotate(90deg);
	transform: rotate(90deg);
}
.accordion-title:hover,
.accordion-title.open {
	color: #2d5c88;
}

/* Footer */
#colophon {
	margin-top: 1em;
	padding: 2em 0;
	border-top: 2px solid #e8eae9;
}

.site-footer .menu-contact-container {
	
}
	.site-footer .menu {
		list-style: none;
		margin: 0;
		padding: 0;
		text-align: center;
	}
	.site-footer .menu-item {
		display: inline-block;
	}
	.site-footer .menu-item a {
		display: block;
		padding: .25em 1em;
		color: inherit;
		text-decoration: underline;
	}
	.site-footer .menu-item a:hover {
		color: #2d5c88;
	}

/* "scroll to top" button */
.scroll-top {
	position: fixed;
	right: 1em;
	bottom: 1em;
	width: 2em;
	text-align: center;
	text-indent: -99em;
	text-decoration: none;
	overflow: hidden;
	will-change: 
}
	.scroll-top:after {
		content: '↑';
		padding: .25em .5em .5em;
		display: block;
		text-indent: 0;
		line-height: 1;
		vertical-align: middle;
		border: 1px solid #777;
	}
	.scroll-top:hover:after {
		background: #9a090c;
		color: #fff;
	}
	
	
/* Form New Styles begin */



section {
	display: block;
	padding: 2rem 0;
}
.section-header {
	padding-left: 1rem;
	border-left: .5rem solid #2d5c88;
	margin: 3rem 0 1rem;
}
	.section-header h3 {
		margin: 0;
		letter-spacing: normal;
	}

.no-margin-bottom {
	margin-bottom: 0;
}


/* Form Module */
.fm-form {
	max-width: 800px;
	box-sizing: border-box;
}
.fm-form *,
.fm-form *:before,
.fm-form *:after {
	box-sizing: border-box;
}

.fm-row {
	width: 100%;
	display: flex;
}

.fm-form p,
.fm-form ul,
.fm-form ol {
	margin-top: 0;
	font-size: 14px;
/* 	color: #777; */
}
.fm-form a {
	color: #2d5c88;
	text-decoration: underline;
}
.fm-form a:hover {
	text-decoration: none;
}

.fm-form small { 
	color: #666;
}
.fm-form .important {
	font-weight: bold;
	margin: 2rem 0;
	padding: .5rem 1rem;
	border: 1px solid rgba(153, 10, 13, 0.6);
}
	.fm-form fieldset {
		margin-bottom: 2em;
	}
	.fm-form fieldset > :last-child {
		margin-bottom: 0;
	}
	.fm-form label,
	.fm-form legend {
		display: block;
		margin-bottom: .15rem;
		font-size: .8125rem;
		font-weight: 600;
	}
	.fm-form .required > label:after {
		content: "\00a0*";
	}
	.fm-form label {
		line-height: 1.3;
	}
	.fm-form legend {
		font-size: 100%;
		padding-bottom: .15rem;
		border-bottom: 1px solid #ccc;
		margin-bottom: .15rem;
		margin-bottom: 1rem;
		margin-top: 2rem;
		color: inherit;
	}

	.fm-form input,
	.fm-form select,
	.fm-form textarea {
		display: inline-block;
		vertical-align: middle;
		margin: 0;
		padding: .75em .75em;
		
		border: 1px solid #c9c9c9;
		border-radius: 2px;
		
		max-width: 100%;
		min-width: 80px; /* ensure the input fields (such as with class .w5) are not too small when on narrow breakpoints  */
		
		font: 300 14px/1.25 "HelveticaNeue", "Helvetica Neue", Helvetica, Arial, sans-serif;
		letter-spacing: 0.07em;

		color: inherit;
		background-color: #fafafa;
		background-color: rgba(135, 206, 235,0.15);
		box-shadow: none;
	}
	.fm-form select {
		/* padding: initial; */

		/* for custom selects: */
		padding: .75em .75em;
		padding-right: 2em;
		border: 1px solid #ccc;
		min-width: 3em;

		-webkit-appearance: none;
		   -moz-appearance: none;
		        appearance: none;
		
		background-repeat: no-repeat;
		background-size: auto 35%;
		background-image: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'%3E%3Cpolygon fill='%23cccccc' points='0,10 50,90 100,10'/%3E%3C/svg%3E");
		background-position: 95% center;
		background-position: right .75em top 55%;
		
		cursor: pointer;
	}
	.fm-form input::placeholder,
	.fm-form select::placeholder,
	.fm-form textarea::placeholder {
		color: #a5a5a5;
		opacity: 1;
	}
	.fm-form input:focus,
	.fm-form select:focus,
	.fm-form textarea:focus {
		border-color: skyblue;
		outline-color: skyblue;
		outline-width: 1px;
	}
	.fm-form select:-moz-focusring {
			color:transparent;
			text-shadow: 0 0 0 #000;
			border-color: skyblue;
		}
	
	.fm-form [class^='input-'] {
		margin-bottom: .75rem;
/* 		width: calc(50% - 1rem); */
		flex-grow: 1;
	}
	[class^='input-'] + [class^='input-'] {
		margin-left: 1rem;
	}
	
	.fm-form [type="checkbox"],
	.fm-form [type="radio"] {
		width: auto;
		height: auto;
		min-width: 0;
		padding: 0;
		margin: 7px 5px 0 0;

		line-height: initial;
		border: none;
		display: inline-block;
		vertical-align: text-top;
	}
	.fm-form [type="radio"] {
		margin-top: 10px;
	}
	.fm-form .input-checkbox label,
	.fm-form .input-radio    label {
		margin-right: 2em;
		display: inline-block;
		vertical-align: text-top;
		max-width: 90%; /*  to avoid dropping into new lines on narrow breakpoints. */
		font-weight: normal;
	}
	
	/* Multiple sets */
	.fm-checkbox > label:first-child,
	.fm-radio > label:first-child {
		display: block;
		font-weight: bolder;
	}
	
	.fm-form .input-check-option,
	.fm-form .input-radio-option {
		display: block;
		margin-bottom: 0;
		
		/* Spread options into three columns */
		display: inline-block;
		vertical-align: text-top;
		width: 33%;
		min-width: 200px;
	}
	.fm-form .input-check-option input,
	.fm-form .input-radio-option input {
		float: left;
	}
	.fm-form .input-check-option label,
	.fm-form .input-radio-option label {
		display: block;
		margin: 0 1.5em;
		font-weight: normal;
	}
	
	/* 	Input Error Messages */
	.error-message {
		font-size: 13px;
		line-height: 1.3;
		color: #9e2432;
		border-radius: 4px;
		padding: .25em .5em;
		background-color: rgba(197, 61, 53, 0.1);
		margin-bottom: 0;
	}
	.input-checkbox .error-message {
		margin-top: .25em;
	}
	
	
	
	.fm-form [type="url"],
	.fm-form [type="tel"],
	.fm-form [type="text"],
	.fm-form [type="date"],
	.fm-form [type="email"],
	.fm-form [type="number"],
	.fm-form [type="password"],
	.fm-form select,
	.fm-form textarea {
		width: 100%;
	}
	

	/* Blocking	widths */
	.w5  { width: 5%; }
	.w10 { width: 10%; }
	.w15 { width: 15%; }
	.w20 { width: 20%; }
	.w25 { width: 25%; }
	.w30 { width: 30%; }
	.w35 { width: 35%; }
	.w40 { width: 40%; }
	.w45 { width: 45%; }
	.w50 { width: 50%; }
	.w55 { width: 55%; }
	.w60 { width: 60%; }
	.w65 { width: 65%; }
	.w70 { width: 70%; }
	.w75 { width: 75%; }
	.w80 { width: 80%; }
	.w85 { width: 85%; }
	.w90 { width: 90%; }
	.w95 { width: 95%; }
	.w100 { width: 100%; }


/* Radios stacked vertically */
	.fm-radios {
		padding: 1rem 0;
	}
	.fm-radios .fm-radio {
		width: auto;
		flex-grow: 0;
		margin-bottom: .2em;
		margin-left: 0;
	}
	.fm-radios .fm-radio label {
		margin-right: 0;
		line-height: 1.3;
	}
	.fm-radios .fm-radio input {
		margin-top: 2px;
	}

/* Radios on one line. Usually Yes / No questions */
	.fm-radios-flex {
		display: flex;
	}
	.fm-radios-flex .fm-radio {
		margin-left: 2rem;
	}
	.fm-radios-flex .fm-radio + .fm-radio {
		margin-left: 1rem;
	}
	.fm-radios-flex.required:after {
		content: none;
	}
	.fm-radios-flex > label {
		margin-right: auto;
		max-width: 75%;
	}


.fm-form .submit {
	padding: .75rem 1rem;
	font-weight: bold;
	background-color: darkred;
	border-color: transparent;
	color: #fff;
	font-weight: 120%;
	cursor: pointer;
}
.fm-form .submit:hover {
	background-color: #000;
}

/* Specific form elements */
.fm-form .equal-parts > * label  {
	max-width: 100px;
}

.fm-form .representant-info,
.fm-form .comprehension-info {
	position: relative;
	background-color: rgba(100, 100, 100, 0.05);
	padding: 1rem 1rem 0;
	border: 1px solid #eee;
}
.fm-form .tabular-fields > .fm-row + .fm-row label {
	border: 0;
	clip: rect(0 0 0 0);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute;
	width: 1px;
}

/* Form New Styles end */


@media only screen and (max-width: 1024px) {
	/* for responsive breakpoint setting */
	body:before { content: 'large'; visibility: hidden; position: absolute; }
	
	
	.js         .main-nav .menu { max-height: 100vh; display: block; top: 0; left: -100%; position: absolute; width: 100%; height: auto; min-height: 100vh; padding: 30px 0 10px; margin: 0; overflow: hidden; text-align: left; -webkit-transition: -webkit-transform .2s ease-in; transition: transform .2s ease-in, opacity .4s ease-in; opacity: 0; background: #9a090c;/*  z-index: 1000; */ }
	.js .nav-on .main-nav .menu { max-height: none;  display: block; top: 0; -webkit-transform: translateX(100%); transform: translateX(100%); /* for scrolling nav, but not content: */ opacity: 1; }
	
	.js .nav-toggle { position: relative; z-index: 2; margin: 0 auto; display: block; background: none; color: #fff; border: 1px solid #fff; border-radius: 2px; padding: .25em 1.5em; text-transform: uppercase; font-size: 16px; }
	
	.container,
	#content { margin: 0; padding: 10px; }
	#branding { padding: 10px; }
	.top-bar { padding: 0; }
	.province-logo { top: 10px; right: 1em; }
	
	#branding #searchform { right: 1em; }
	#branding #searchsubmit { line-height: 1.8}
	
	#access { float: none; margin: 0; padding: 10px 0; }
	#access ul { margin: 0; }
	#access li { display: block; float: none; }
	#access a { font-weight: 600; border-bottom: 1px solid rgba(255,255,255,.15); }
	
	#access .menu { margin-top: 1.5em; }
	#access .menu > li > a { text-transform: uppercase; }
	
	.sub-menu .menu-item-has-children:after { content: ''; display: none; }
	
	#access ul ul { position: relative; float: none; top: auto; left: auto; width: auto; z-index: auto; display: block; margin: 0; box-shadow: none; background: rgba(0,0,0,.3); }
	#access ul ul a { width: auto; background: none; color: #fff; padding-left: 2em; font-size: 13px; font-weight: 400; border-bottom: 1px solid rgba(255,255,255,.15); }
	
	#access ul ul ul { position: relative; float: none; top: auto; left: auto; width: auto; z-index: auto; display: block; margin: 0; box-shadow: none; }
	#access ul ul ul a { padding-left: 4em; text-transform: none; }
	
	#access ul ul ul ul a { padding-left: 6em; text-transform: none; }
	
	#access li:hover > a,
	#access ul ul :hover > a,
	#access a:focus,
	#access .current_page_item > a { background: none; color: #fff; font-weight: normal; text-decoration: underline; }
	
	#access ul :hover > a { background: inherit; color: #fff; text-decoration: inherit; }
	
	
	/* 	Display Open only current section */
	#access .menu > li:not(.current_page_ancestor) > .sub-menu { display: none; }
	#access .menu > li.current_page_item > .sub-menu { display: block; }
	
	#colophon { padding: .5em 0; }
	.site-footer .menu-item a { font-size: 11px; padding: .25em; }
	
	.vl .metaslider .caption-wrap { padding-left: 10%; width: 80%; }
	.vl .metaslider .caption { font-size: 16px; }
	.vl .metaslider .ms-image a::after { font-size: 75%; left: 10%; }
	
}


@media only screen and (max-width: 800px) {
	/* for responsive breakpoint setting */
	body:before { content: 'medium'; visibility: hidden; position: absolute; }
	
	.widget_icl_lang_sel_widget .widget-title { display: none;}
	
	#branding #searchform { top: 1.4em !important; right: 5px; }
	#branding #s { width: 100px; }
	
	.alignleft, .alignright { display: block; float: none; margin-left: 0px; margin-right: 0px; }
	
	.vl .metaslider .caption { font-size: 13px; }
	
	.fm-row { display: block; }
	[class^="input-"] + [class^="input-"] { margin-left: 0; }
	.fm-form .equal-parts > * label { max-width: none; }
	.fm-form .tabular-fields > .fm-row + .fm-row label { clip: auto; height: auto; width: auto; margin: auto; position: relative; }
	.tabular-fields > .fm-row { margin-bottom: 2rem; }
	
	.w10, .w20, .w30, .w40, .w50, .w60, .w70, .w80, .w90 { width: 100%; }
}