/*---- Font Open Sans Local ---*/
@font-face {
	font-family: 'Open Sans Local';
	font-style: normal;
	font-weight: 300;
	src: url('https://www.menagea3-services.fr/font/OpenSans-Light.woff') format('woff');
}
@font-face {
	font-family: 'Open Sans Local';
	font-style: normal;
	font-weight: 400;
	src: url('https://www.menagea3-services.fr/font/OpenSans-Regular.woff') format('woff');
}
@font-face {
	font-family: 'Open Sans Local';
	font-style: normal;
	font-weight: 500;
	src: url('https://www.menagea3-services.fr/font/OpenSans-Medium.woff') format('woff');
}
@font-face {
	font-family: 'Open Sans Local';
	font-style: normal;
	font-weight: 600;
	src: url('https://www.menagea3-services.fr/font/OpenSans-SemiBold.woff') format('woff');
}
@font-face {
	font-family: 'Open Sans Local';
	font-style: normal;
	font-weight: 700;
	src: url('https://www.menagea3-services.fr/font/OpenSans-Bold.woff') format('woff');
}
@font-face {
	font-family: 'Open Sans Local';
	font-style: normal;
	font-weight: 800;
	src: url('https://www.menagea3-services.fr/font/OpenSans-ExtraBold.woff') format('woff');
}



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

	ACCESSIBILITY UTILS

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

/**
 * @see https://gist.github.com/ffoodd/000b59f431e3e64e4ce1a24d5bb36034
 */
.sr-only {
	border: 0 !important;
	clip: rect(1px, 1px, 1px, 1px) !important;
	-webkit-clip-path: inset(50%) !important;
		clip-path: inset(50%) !important;
	height: 1px !important;
	margin: -1px !important;
	overflow: hidden !important;
	padding: 0 !important;
	position: absolute !important;
	width: 1px !important;
	white-space: nowrap !important;
}
.sr-only-focusable:focus,
.sr-only-focusable:active {
	clip: auto !important;
	-webkit-clip-path: none !important;
		clip-path: none !important;
	height: auto !important;
	margin: auto !important;
	overflow: visible !important;
	width: auto !important;
	white-space: normal !important;
}





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

	HTML BASE ELEMENTS

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

body, html {
	color: #021624;
	font-size: 16px;
	line-height: 1.4;
	font-weight: 400;
	font-family: 'Open Sans Local', sans-serif;

	overflow-wrap: break-word;
	word-wrap: break-word;

	/* Add smooth scrolling for menu anchor */
	scroll-behavior: smooth;
}


[tabindex]:focus {
	outline: 1px dashed rgba(18, 32, 71, 0.5);
	outline-offset: 2px;
}


/*	INLINE
-------------------------------------------------- */

/* -------------------------
	LINKS
------------------------- */

a {
	color: inherit;
}
a:focus {
	outline: 2px dotted #122047;
	outline-offset: 2px;
}

a.\-arrow::after {
	content: '';
	width: 15px;
	height: 10px;
	display: inline-block;
	vertical-align: middle;
	margin-left: .4em;
	margin-top: -2px;
	background-image: url(../img/sprites.svg?1.3.0);
	background-repeat: no-repeat;
	background-position: -2px -2px;
}

/* -------------------------
	OTHERS
------------------------- */

small {
	font-size: 0.78571em;
}

strong {
	font-weight: 700;
}

em,
cite {
	font-style: italic;
}

abbr[title],
acronym[title] {
	text-decoration: none;
	border-bottom: 1px dotted #d11f3a;
	cursor: help;
}

/* -------------------------
	IMAGES
------------------------- */

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

/* -------------------------
	INLINE BLOCK
------------------------- */

.dib {
	display: inline-block;
}


/*	BLOCKS
-------------------------------------------------- */

/* -------------------------
	TITLES
------------------------- */

h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6 {
	margin: 2.5em 0 0.5em;
	line-height: 1.1;
	font-weight: 700;
}
h1,
.h1 {
	font-size: 50px;
}

@media (max-width: 780px) {
		h1,
	.h1 {
		font-size: 40px;
	}
}

@media (max-width: 400px) {
		h1,
	.h1 {
		font-size: 30px;
	}
}

h2,
.h2 {
	font-size: 22px;
}
h3,
.h3 {
	font-size: 16px;
}
h4, h5, h6,
.h4, .h5, .h6 {
	font-size: 14px;
}

h1:first-child, .h1:first-child,
h2:first-child, .h2:first-child,
h3:first-child, .h3:first-child,
h4:first-child, .h4:first-child,
h5:first-child, .h5:first-child,
h6:first-child, .h6:first-child {
	margin-top: 0;
}
h1:last-child, .h1:last-child,
h2:last-child, .h2:last-child,
h3:last-child, .h3:last-child,
h4:last-child, .h4:last-child,
h5:last-child, .h5:last-child,
h6:last-child, .h6:last-child {
	margin-bottom: 0;
}


/* -------------------------
	HORIZONTAL RULES
------------------------- */

hr {
	margin: 20px 0;
	border: none;
	border-bottom: 1px solid #ddd;
}

hr:first-child { margin-top: 0; }
hr:last-child { margin-bottom: 0; }


/* -------------------------
	PARAGRAPHS
------------------------- */

p {
	margin: 1em 0;
}

p:first-child { margin-top: 0; }
p:last-child { margin-bottom: 0; }


/* -------------------------
	LISTS
------------------------- */

ul,
ol,
dl {
	margin: 1em 0 1em 0;
	padding: 0 0 0 2em;
}

ul:first-child,
ol:first-child,
dl:first-child { margin-top: 0; }
ul:last-child,
ol:last-child,
dl:last-child { margin-bottom: 0; }

/* li + li {
	margin-top: 0.2em;
} */

/* nested */

ul ul,
ul ul:last-child,
ul ol,
ul ol:last-child,
ol ol,
ol ol:last-child,
ol ul,
ol ul:last-child {
	margin-top: 0;
	margin-bottom: .5em;
}

/* definition lists */

dl {
	margin-left: 0em;
}
dt {
	font-weight: 700;
}
dd {
	margin: 0 0 0 0.8em;
}
dd + dt {
	margin-top: 0.2em;
}


/* -------------------------
	LISTS : CHECKLIST
------------------------- */

ul.\-checklist,
ul.\-checklist ul {
	list-style: none;
}
ul.\-checklist > li::before,
ul.\-checklist ul > li::before {
	content: '';
	width: 13px;
	height: 10px;
	display: block;
	float: left;
	margin-top: 0.42857em;
	margin-left: -1.42857em;

	background-image: url(../img/sprites.svg?1.3.0);
	background-repeat: no-repeat;
	background-position: -19px -2px;
}


/* -------------------------
	BLOCKQUOTES
------------------------- */

blockquote {
	margin: 1em 0;
	padding: 0 0 0 32px;
	position: relative;
	box-sizing: border-box;
}

blockquote:first-child { margin-top: 0; }
blockquote:last-child { margin-bottom: 0; }

blockquote::before {
	content: '“';
	height: 1px;
	display: block;
	margin: 0 0 19px -32px;

	font-size: 26px;
	line-height: 1;
	font-weight: 700;
}
blockquote::after {
	content: '';
	margin: 0.35em 0;

	position: absolute;
	top: 20px;
	left: 6px;
	bottom: 0;

	border-left: 1px solid #fdc03d;
}


/* -------------------------
	PREFORMATED
------------------------- */

pre {
	display: block;
	margin: 1em 0;
	padding: 1em 1.5em;
	
	overflow: auto;
	position: relative;
	
	color: #96e18c;
	font-size: 12px;
	font-family: monospace;
	tab-size: 4;
	
	background-color: #41433d;
	box-shadow: inset 0 0 4em rgba(29,30,27,1.4);
	border-radius: 0.3em;
}

pre:first-child { margin-top: 0; }
pre:last-child { margin-bottom: 0; }

/* code */

code {
	display: inline-block;
	padding: 0 0.4em;
	background-color: rgba(128,128,128,0.2);
	border-radius: 4px;
}


/*	TABLES
-------------------------------------------------- */

table {
	width: 100%;
	max-width: 100%;
	margin: 2em 0;
	box-sizing: border-box;
	overflow: scroll;

	border-collapse: collapse;
	border-spacing: 0;

	background-color: transparent;
	border: 1px solid #ececed;

	caption-side: bottom;
}

table:first-child { margin-top: 0; }
table:last-child { margin-bottom: 0; }

td,
th {
	padding: 0.4em 0.7em;
	vertical-align: top;
	text-align: left;
	border: 1px solid #ececed;
}
th {
	font-weight: 700;
	background: #ececed;
	background: rgba(0, 0, 0, 0.07);
}

table caption {
	font-size: 13px;
	line-height: 1.2;
	font-style: italic;
	color: #999;
	margin: 1em 0.5em;
}





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

	FORMS ELEMENTS

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

/*	INPUTS
-------------------------------------------------- */

input[type="text"],
input[type="email"],
input[type="password"],
input[type="search"],
input[type="tel"],
input[type="url"],
input[type="number"],
textarea,
select {
	max-width: 100%;
	display: inline-block;
	vertical-align: middle;
	box-sizing: border-box;

	padding: 1em;

	font-size: inherit;
	line-height: 1.57142;
	line-height: calc(20 / 14);

	border-radius: 0;
	border: 1px solid #aaa;
	background-color: #fff;

	outline: none;
	outline-offset: 0;
}

input[type="radio"],
input[type="checkbox"] {
	display: inline-block;
	vertical-align: middle;
}

input[type="radio"]:focus,
input[type="checkbox"]:focus {
	outline: 2px dotted #122047;
	outline-offset: 2px;
}


/* -------------------------
	FOCUS
------------------------- */

input[type="text"]:focus,
input[type="email"]:focus,
input[type="password"]:focus,
input[type="search"]:focus,
input[type="tel"]:focus,
input[type="url"]:focus,
input[type="number"]:focus,
textarea:focus,
select:focus {
	border-color: #122047;
	outline: 2px solid #122047;
	outline-offset: -1px;
	box-shadow: 0 2px 8px 2px rgb(104, 133, 212, 0.4);
	transition: box-shadow 200ms ease-out;
}

/* MASQUE LE PLACEHOLDER  */
input:focus::-webkit-input-placeholder { color: transparent; }
input:focus:-moz-placeholder { color: transparent; } /* FF 4-18 */
input:focus::-moz-placeholder { color: transparent; } /* FF 19+ */
input:focus:-ms-input-placeholder { color: transparent; } /* IE 10+ */


/* -------------------------
	DISABLED
------------------------- */

input[type="text"][disabled],
input[type="email"][disabled],
input[type="password"][disabled],
input[type="search"][disabled],
input[type="tel"][disabled],
input[type="url"][disabled],
input[type="number"][disabled],
textarea[disabled],
select[disabled] {
	color: #aaa;
	outline: none;
	background-color: #f8f8f8;
}


/* -------------------------
	READ ONLY
------------------------- */

input[type="text"][readonly],
input[type="email"][readonly],
input[type="password"][readonly],
input[type="search"][readonly],
input[type="tel"][readonly],
input[type="url"][readonly],
input[type="number"][readonly],
textarea[readonly],
select[readonly] {
	outline: none;
	border-color: #f8f8f8;
	background-color: #f8f8f8;
	box-shadow: none;
}

input[type="text"][readonly]:focus,
input[type="email"][readonly]:focus,
input[type="password"][readonly]:focus,
input[type="search"][readonly]:focus,
input[type="tel"][readonly]:focus,
input[type="url"][readonly]:focus,
input[type="number"][readonly]:focus,
textarea[readonly]:focus,
select[readonly]:focus {
	border: 1px dashed #d4d4d4;
}


/*	BUTTONS
-------------------------------------------------- */

input[type="submit"],
input[type="button"],
input[type="reset"],
button,
.button {
	max-width: 100%;
	display: inline-block;
	vertical-align: middle;
	box-sizing: border-box;

	padding: 1em 1.2em;
	
	font-size: inherit;
	line-height: 1.57142;
	line-height: calc(20 / 14);
	font-weight: 700;

	text-align: center;
	text-decoration: none;

	border: 1px solid #FB5D5A;
	border-radius: 0;
	background-color: #FB5D5A;

	outline: none;

	cursor: pointer;
}

/* SMALL */

input[type="submit"].\-small,
input[type="button"].\-small,
input[type="reset"].\-small,
button.\-small,
.button.\-small {
	padding: 0.6em 1em;
}

/* LIGHT */

input[type="submit"].\-light,
input[type="button"].\-light,
input[type="reset"].\-light,
button.\-light,
.button.\-light {
	border-color: #fdc03d;
	background-color: #fff;
}
input[type="submit"].\-light:active,
input[type="button"].\-light:active,
input[type="reset"].\-light:active,
button.\-light:active,
.button.\-light:active {
	background-color: #eee;
}

/* ICON */

/* button::after,
.button::after {
	content: '';
	width: 17px;
	height: 12px;
	display: inline-block;
	vertical-align: middle;
	margin-left: 10px;
	margin-top: -2px;

	background-image: url(../img/arrow-right.png);
	background-repeat: no-repeat;
	background-position: -1px -1px;
} */

/* NO-ICON */

button.\-no-icon::after,
.button.\-no-icon::after {
	content: none;
	display: none;
}


/* -------------------------
	HOVER
------------------------- */

input[type="submit"]:hover,
input[type="button"]:hover,
input[type="reset"]:hover,
button:hover,
.button:hover {
	outline: 2px solid #122047;
	outline-offset: -1px;
}


/* -------------------------
	FOCUS
------------------------- */

input[type="submit"]:focus,
input[type="button"]:focus,
input[type="reset"]:focus,
button:focus,
.button:focus {
	outline: 2px solid #122047;
	outline-offset: -1px;
}


/* -------------------------
	ACTIVE
------------------------- */

input[type="submit"]:active,
input[type="button"]:active,
input[type="reset"]:active,
button:active,
.button:active {
	outline: 2px solid #122047;
	outline-offset: -2px;
	background-color: #FEDEDE;
}


/* -------------------------
	DISABLED
------------------------- */

input[type="submit"][disabled],
input[type="button"][disabled],
input[type="reset"][disabled],
button[disabled],
.button.\-disabled {
	color: inherit;
	outline: none;
	opacity: 0.4;
	cursor: default;
	pointer-events: none;
}


/* -------------------------
	FULL WIDTH
------------------------- */

input[type="submit"].\-fullwidth,
input[type="button"].\-fullwidth,
input[type="reset"].\-fullwidth,
button.\-fullwidth,
.button.\-fullwidth {
	display: block;
	width: 100%;
}


/*	RADIOS
-------------------------------------------------- */

.c-radio {
	display: inline-block;
	padding: 0.2em 0;
	cursor: pointer;
}

.c-radio input {
	position: absolute;
	opacity: 0;
	cursor: pointer;
	height: 0;
	width: 0;
}

.c-radio .check {
	width: 16px;
	height: 16px;
	margin: -3px 2px 0 0;
	display: inline-block;
	box-sizing: border-box;
	vertical-align: middle;
	position: relative;

	background-color: #fff;
	border: 1px solid #122047;
	border-radius: 50%;
}
.c-radio:hover input ~ .check {
	background-color: #ddd;
}
.c-radio input:checked ~ .check:after {
	content: '';
	display: block;
	position: absolute;
	margin: 3px;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background-color: #122041;
	border-radius: 50%;
}






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

	WORDPRESS CLASSES

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

/*	ALIGNS
-------------------------------------------------- */

.alignleft {
	float: left;
	margin-right: 17px;
	margin-bottom: 17px;
}
.alignright {
	float: right;
	margin-left: 17px;
	margin-bottom: 17px;
}
.aligncenter {
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 17px;
}

@media only screen and (max-width:450px) {
	.alignleft,
	.alignright,
	.aligncenter {
		float: none;
		margin-left: 0;
		margin-right: 0;
	}
}


/*	CAPTIONS
-------------------------------------------------- */

.wp-caption {
	width: auto !important;
	max-width: 100%;
} 
.wp-caption img,
dl.wp-caption dt.wp-caption-dt img {
	margin-bottom: .5em;
	margin-left: auto;
	margin-right: auto;
} 
.wp-caption .wp-caption-text,
.wp-caption .wp-caption-dd {
	padding: 0;
	color: #777;
	font-size: 12px;
	text-align: center;
}




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

	CUSTOM CONTENT COMPONENTS

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

/*	DISCLOSURE
-------------------------------------------------- */

.c-disclosure {
	margin: 2em 0;

	z-index: 0;
	position: relative;
}

.c-disclosure:first-child { margin-top: 0; }
.c-disclosure:last-child { margin-bottom: 0; }

.c-disclosure + .c-disclosure {
	margin-top: -2em;
	border-top: 1px solid transparent;
	transition: margin-top 300ms ease-in-out;
}

.c-disclosure.\-opened + .c-disclosure {
	margin-top: -1em;
}

/* -------------------------
	HEADER
------------------------- */

.c-disclosure__header {
	position: relative;

	font-weight: 700;
	line-height: 1.42857;
}
.c-disclosure__header h1,
.c-disclosure__header h2,
.c-disclosure__header h3,
.c-disclosure__header h4,
.c-disclosure__header h5,
.c-disclosure__header h6,
.c-disclosure__header button {
	margin: 0;
	padding: 0;
	font-size: inherit;
	font-weight: inherit;
	line-height: inherit;
}

.c-disclosure__header button {
	width: 100%;
	padding: 17px 54px 17px 21px;
	position: relative;

	text-align: left;

	color: inherit !important;
	background-color: #f3f4f6 !important;
	border-color: #f3f4f6 !important;

	transition: background-color 300ms ease-in-out;
}
.c-disclosure__header button:hover {
	text-decoration: underline !important;
	outline: none !important;
}
.c-disclosure__header button:focus {
	outline: 2px dotted #122047 !important;
	outline-offset: -2px !important;
}

.c-disclosure.\-closed .c-disclosure__header button {
	background-color: #e7e8ec !important;
}

.c-disclosure .c-disclosure__header button::after {
	content: none;
	display: none;
}

.c-disclosure.\-opened .c-disclosure__header button::after,
.c-disclosure.\-closed .c-disclosure__header button::after {
	content: '';
	display: block;
	width: 12px;
	height: 17px;

	margin-top: -9px;
	position: absolute;
	top: 50%;
	right: 21px;

	background-image: url(../img/sprites.svg?1.3.0);
	background-repeat: no-repeat;
	background-position: 12px 17px;
}
.c-disclosure.\-opened .c-disclosure__header button::after {
	background-position: -13px -13px;
}
.c-disclosure.\-closed .c-disclosure__header button::after {
	background-position: -1px -13px;
}

/* -------------------------
	CONTENT
------------------------- */

.c-disclosure__content {
	padding: 17px 21px;
	background-color: #f3f4f6;
	border: 1px solid #f3f4f6;
	position: relative;
}
.c-disclosure__content::before {
	content: '';
	display: block;
	position: absolute;
	top: -1px;
	left: 22px;
	right: 22px;
	border-bottom: 1px solid #122047;
	transition: border-bottom-color 150ms ease-in-out;
}
.c-disclosure.\-closed .c-disclosure__content::before {
	border-bottom-color: #f3f4f6;
}