/*
Theme Name: Agence ÉZÉ+
Description: Theme custom pour Agence ÉZÉ+
Author: Bourrasque
Author URI: http://bourrasque.ca/
Version: 0.1.0
*/

/* *********** RESET CSS ***********************/
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, img, ins, kbd, q, s, samp, small, strike, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,  figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: top;
	box-sizing: border-box;
	outline: none;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
	display: block;
}
body {
	line-height: 1;
}
ul {
	list-style: none;
}
blockquote, q {
	quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
	content: '';
	content: none;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}

/* ************* default wordpress ************** */
.alignleft {
	display: inline;
	float: left;
	margin-right: 1.5em;
}

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

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

/*img.alignleft,
img.alignright {
	float: none;
	margin: 0;
}*/

img,
video {
	height: auto; /* Make sure images are scaled correctly. */
	max-width: 100%; /* Adhere to container width. */
}

embed,
iframe,
object {
	margin-bottom: 1.5em;
	max-width: 100%;
}

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

p:not(:last-child), ul:not(:last-child) {
	margin-bottom: 1em;
}

a {
	text-decoration: none;
}

/* *************** Agence ÉZÉ+ ******************** */
:root {
	--main-black: #1a1a1d;
  --main-light-green: #cadfdf;
  --main-dark-green: #607171;
  --main-middle-green: #527b7b;
  --main-grey-green: #798e8e;
  --main-light-grey: #e2e8e8;
}


body {
	font-size: 18px;
	line-height: 1.4em;
	font-family: "Nunito", sans-serif;
  font-optical-sizing: auto;
  font-weight: 600;
  color: var(--main-black);
}

strong {font-weight: 800;}

h1 {
	font-size: 1.8em;
	margin-bottom: 30px;
	line-height: 1.1em;
	text-transform: uppercase;
	position: relative;
	font-weight: bold;
	color: #004877;
}

h2 {
	font-size: 1.6em;
	margin-bottom: 20px;
	line-height: 1.3em;
	text-transform: uppercase;
	position: relative;
	font-weight: bold;
}

h3 {
	font-size: 1.45em;
	margin-bottom: 15px;
	line-height: 1.1em;
}


h4 {
	font-size: 1.45em;
	margin-bottom: 12px;
	line-height: 1.1em;
	font-weight: bold;
	text-transform: uppercase;
}

p + h4, ul + h4, ol + h4 {
	margin-top: 35px;
}

p>a:hover, .wpb_text_column li>a:hover {
	text-decoration: underline;
}

a {	color: var(--main-dark-green);}
i {	vertical-align: middle;}

.container {	max-width: 86%;	margin: 0 auto;}

.dark h1, .dark h2, .dark h3, .dark h4, .dark p, .dark div.wpcf7-validation-errors, .dark div.wpcf7-acceptance-missing, .dark a, .dark li {
	color: #fff;
}

input {
	-webkit-appearance:     none;
    -moz-appearance:        none;
    -ms-appearance:         none;
    -o-appearance:          none;
    appearance:             none;
}

/* *********** HEADER *************** */
#header {	text-align: center;	position: relative;	display: flex;	flex-direction: row;	z-index: 2;}

.header-logo {	width: 120px;	padding: 8px;}

.header-desktop {text-align: center;	flex: 1 1 auto;	display: flex;	flex-direction: column;}

.menu-principal {height: 100%; display: flex;	flex-direction: row;	justify-content: center;}
.menu-principal ul {	display: flex;	flex-direction: row;	justify-content: center;	height: 100%;}
.menu-principal, .menu-principal ul li {	position: relative;}

.menu-principal>ul>li {	font-size: 0.65em; font-weight: 800;}
.menu-principal ul li a {	display: block;	-webkit-transition: all 0.2s ease-in-out; /* Safari */  	transition: all 0.2s ease-in-out; color: var(--main-black);}
.menu-principal>div {	width: 100%;}
.menu-principal ul.menu>li>a { position: relative;	height: 100%;	padding: 0 1.1em;}

.menu-principal ul.menu>li.current-menu-item>a, .menu-principal ul.menu>li.current-menu-parent>a { color: var(--main-dark-green); }
.menu-principal ul.menu>li:hover>a{	color: var(--main-dark-green);}


/* submenu */
.menu-principal ul.menu .sub-menu {visibility: hidden; opacity: 0; position: absolute; top: 100%; padding: 15px; left: 0; /*width: 100%;*/ background-color: var(--main-light-green); height: auto; flex-direction: column;}
.menu-principal ul.menu>li:hover>a + .sub-menu {visibility: visible; opacity: 1;}
.menu-principal ul.menu .sub-menu a { display: block; margin: 8px; line-height: 1.1em;}
.menu-principal ul.menu .sub-menu li:not(:last-child) { border-bottom: 1px solid #000;}
.menu-principal ul.menu .sub-menu a:hover {text-decoration: underline;}

/* header social */
.header-phone a {color: #29abe2;}
.header-phone a:hover {text-decoration: underline;}

.header-social {position: absolute; top: 100%; left: 0;}
.header-social a:hover i {color: #29abe2;}
.header-social i {color: #fff;	margin: 0 2px 0 7px;	transition: all 0.2s}

/* menu mobile */
.menu-mobile { 
	display: none;
	position: relative; 
	background-color: #fff;
	border-bottom: 3px solid #000;
	width: 100%;
	/*display: flex;*/
	-webkit-flex-direction: row;
	flex-direction: row;
	justify-content: center;
    align-items: center;
}
.menu-mobile-block {
	display: none;
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	background: rgba(69,69,69,1);
	z-index: 9;
}

.menu-mobile-block ul ul {
	background-color: rgba(0,0,0,0.95); 
}

.menu-mobile a.link-menu-icon{
	color: #000;
	font-size: 2.5em;
	padding: 15px;
	display: block;
}

.menu-mobile>*:not(.menu-mobile-block) {
	flex: 1 1 auto;
	width: 50%;
	text-align: right;
}

.menu-mobile .header-logo {
	max-width: 80px;
	-webkit-box-shadow: none;
	box-shadow: none;
	/*background-color: unset;*/
}

.btn-mobile-menu.open a i, .menu-mobile a.link-menu-icon i{
	color: #000;
}

.menu-mobile-block li a {
	color: #fff;
	display: block;
	font-weight: bold;
	font-size: 1.3em;
	line-height: 1em;
	padding: 15px 0;
}

.menu-mobile-block li:not(:last-child) a {
	border-bottom: 1px solid #ededed;
}

#menu-menu-mobile>li>a{
	padding: 18px;
	font-size: 2.5em;
}

#menu-menu-mobile ul>li>a{
	padding: 10px;
	font-size: 1.9em;
}

#menu-menu-mobile ul {
	position: relative;
}

#menu-menu-mobile ul:before {
	content: "";
	display: block;
	position: absolute;
	top: -15px;
	left: 50%;
	transform: translateX(-50%);
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 0 15px 15px 15px;
	border-color: transparent transparent #4a4545 transparent;
}

.menu-mobile-block-btn {
	display: flex;
	flex-direction: row;
	padding: 8px;
	border-bottom: 3px solid #fff;
}

.header-logo-menu-mobile {
	flex: 0 1 auto;
	max-width: 140px;
}

.menu-mobile-block-btn  .header-mobile-link {
	flex: 1 1 auto;
	display: flex;
	align-self: center;
	justify-content: flex-end;
	padding-right: 30px;
}

.menu-mobile .link-external {
	padding-left: 0;
	margin-left: 0;
}

.mobile-social {
	text-align: center;
	border-top: 3px solid #fff;
	margin-top: 15px;
	padding-top: 15px;
	padding-bottom: 15px;
}

.mobile-social a:not(:last-child) {
	margin-right: 10px;
}

.mobile-social i {
	color: #fff;
	font-size: 2em;
}

/* *************** home ******************* */

/* form */
.wpcf7 form {
	padding: 35px 25px 25px 25px;
	border-radius: 0;
	-webkit-box-shadow: 0px 2px 15px 1px rgba(0,0,0,0.4);
	-moz-box-shadow: 0px 2px 15px 1px rgba(0,0,0,0.4);
	box-shadow: 0px 2px 15px 1px rgba(0,0,0,0.4);
}

.wpcf7-form {
	width: 100%;
	margin: 0 auto;
}

.form-row {
	display: flex;
	flex-direction: row;
	justify-content: space-between;
}

.form-row:not(:last-child) {
	margin-bottom: 12px;
}

.form-col {
	flex: 1 1 50%;
}

.form-col + .form-col {
	margin-left: 15px;
}

.wpcf7-form .wpcf7-form-control-wrap {
	width: 100%;
}

.form-col>div {
	background-color: #ffffff;
	border-radius: 10px;
	position: relative;
}

.wpcf7-form input[type=text], .wpcf7-form input[type=tel], .wpcf7-form input[type=url], .wpcf7-form input[type=email], .wpcf7-form textarea {
	padding: 18px 15px 15px 36px;
	border: none;
	width: 100%;
	font-size: 0.85em;
	line-height: 1.1em;
	box-sizing: border-box;
	-webkit-appearance: none;
  	-moz-appearance: none;
  	border-radius: 10px;
  	outline: none;
}

::placeholder { /* Chrome, Firefox, Opera, Safari 10.1+ */
  font-style: italic;
  color: #253846;
  opacity: 1; /* Firefox */
}
:-ms-input-placeholder { /* Internet Explorer 10-11 */
  font-style: italic;
  color: #253846;
}
::-ms-input-placeholder { /* Microsoft Edge */
  font-style: italic;
  color: #253846;
}

/* custom checkbox styling for contact form 7 checkbox */
span.wpcf7-list-item {
	display: inline-block;
	margin: 0;
}

.wpcf7 .wpcf7-list-item {
	display: block;
	margin-bottom: 10px;
}

.wpcf7-checkbox label {
	position: relative;
	cursor: pointer;
	display: inline-block;
}

.wpcf7-checkbox input[type=checkbox] {
	/*position: relative;*/
	position: absolute;
	visibility: hidden;
	width: 30px;
	height: 30px;
	top: 0;
	left: 0;
}

.wpcf7-checkbox input[type=checkbox] + span {
	/* border: 3px solid red; */
}

.wpcf7-checkbox input[type=checkbox] + span:before {
	display: block;
	position: absolute;
	content: '';
	border-radius: 0;
	height: 30px;
	width: 30px;
	top: 0px;
	left: 0px;
	border: 1px solid #000;
	background-color: #fff;
}

.wpcf7-checkbox input[type=checkbox] + span:after {
	display: block;
	position: absolute;
	content: "\2713";
	height: 30px;
	width: 30px;
	top: 1px;
	left: 1px;
	visibility: hidden;
	font-size: 18px;
	text-align: center;
	line-height: 30px;
	background-color: #fff;
	color: #000;
}

.wpcf7-checkbox input[type=checkbox]:checked + span:before {
	background: transparent;
}

.wpcf7-checkbox input[type=checkbox]:checked + span:after {
	visibility: visible;
}

.wpcf7-list-item-label {
	margin-left: 40px;
	display: inline-block;
}

/* radio */
.wpcf7 .wpcf7-list-item {
  display: block;
}

.wpcf7-form .wpcf7-radio {
  
}

.wpcf7-form .wpcf7-radio label {
  position: relative;
  cursor: pointer;
}

.wpcf7-form .wpcf7-radio input[type=radio] {
	position: absolute;
  	visibility: hidden;
}

.wpcf7-form .wpcf7-radio input[type=radio] + span {
/*   border: 3px solid red;  */
}

.wpcf7-form .wpcf7-radio input[type=radio] + span:before {
  display: block;
  position: absolute;
  content: '';
  border-radius: 100%;
  height: 18px;
  width: 18px;
  top: 0px;
  left:0;
  border: 2px solid #000;
  background-color: #fff;
}

.wpcf7-form .wpcf7-radio input[type=radio] + span:after {
    display: block;
    position: absolute;
    content: '';
    border-radius: 100%;
    height: 10px;
    width: 10px;
    top: 6px;
    left: 6px;
    visibility: hidden;

}

.wpcf7-form .wpcf7-radio input[type=radio]:checked + span:before {
    background: transparent;
    background-color: #fff;
}

.wpcf7-form .wpcf7-radio input[type=radio]:checked + span:after {
   background: #000;
   visibility: visible;
}

input[type=submit] {
	padding: 18px 40px;
	margin: 0 auto;
	text-align: center;
	text-transform: uppercase;
	font-weight: 400;
	color: #fff;
	font-size: 1em;
	background-color: #004877;
	border: none;
	box-sizing: border-box;
	cursor: pointer;
	-webkit-appearance: none;
  	-moz-appearance: none;
	transition: all 0.25s;
}

input[type=submit]:hover {
	transform: scale(1.1);
}

.col-submit {
	text-align: center;
	margin-top: 10px;
}

div.wpcf7-response-output {
	font-weight: bold;
	color: #000;
}

.dark div.wpcf7-response-output {
	color: #fff;
}

span.wpcf7-not-valid-tip {
	text-align: center;
	border-top: 1px solid #ccc;
	font-size: 0.8em;
}

/* form devenir membre */
#formulaire-inscription-membre .wpcf7-form {
	background-color: rgba(146,36,40, 0.2);
	background-image: unset;
	border: 3px solid #29abe2;
	/*color: #fff;*/
}

.form-col>div {
	border: 2px solid #29abe2;
}

.form-row-text {
	font-size: 0.85em;
	line-height: 1.2em;
	margin-top: 30px;
	margin-bottom: 30px;
}

.form-row-text ul {
	list-style-type: disc;
	padding-left: 40px;
}


/* **************** slider ************* */
/* slider nav */
.simple-partner-slider-nav {position: absolute; height: 100%; width: 100%; top: 0; right: 0; bottom: 0; left: 0;}
.simple-partner-slider-nav .prev, .simple-partner-slider-nav .next {width: 0; height: 0; border-top: 60px solid transparent; border-bottom: 60px solid transparent; top: 200px; /*transform: translateY(-50%);*/ position: absolute; cursor: pointer; transition: all 0.35s;}
.simple-partner-slider-nav .prev[aria-disabled="true"], .simple-partner-slider-nav .next[aria-disabled="true"] {opacity: 0.5; cursor: not-allowed;}
.simple-partner-slider-nav .prev {border-right: 60px solid var(--main-light-blue); left: -10%!important;}
.simple-partner-slider-nav .next {border-left: 60px solid var(--main-light-blue); right: -10%!important;}
.simple-partner-slider.tns-horizontal.tns-subpixel>.tns-item {vertical-align: middle;}

/* ************** footer *************** */
#footer {background: #FFF; background: linear-gradient(90deg,rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, 1) 25%, var(--main-light-green) 0%, var(--main-light-green) 100%);}
.footer-content {}
.footer-signup-newsletter {margin-top: auto}

.copyright {font-size: 0.65em;}