/*
Theme Name: Trabuc Marseille
Theme URI: https://www.trabuc13.com
Author: PUShAUNE
Author URI: https://www.pushaune.com
Description: The 2020 Trabuc's theme.
Version: 1.0
License: http://creativecommons.org/licenses/by-nc-nd/3.0/
*/

/* =Reset default browser CSS. Based on work by Eric Meyer: http://meyerweb.com/eric/tools/css/reset/index.html
-------------------------------------------------------------- */

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, em, font, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td {border: 0;font-family: inherit;font-size: 100%;font-style: inherit;font-weight: inherit;margin: 0;outline: 0;padding: 0;vertical-align: baseline;} :focus {outline:0;}body {background: #fff;line-height: 1;}ol, ul {list-style: none;}table {border-collapse: separate;border-spacing: 0;}caption, th, td {font-weight: normal;text-align: left;}blockquote:before, blockquote:after, q:before, q:after {content: "";}blockquote, q {quotes: "" "";}a img {border: 0;}article, aside, details, figcaption, figure,footer, header, hgroup, menu, nav, section {display: block;} a{text-decoration: none;}figure{margin: 0;}

button {
  appearance: none;
  background: transparent;
  /* Other styles */
}

/* = Here it goes!
----------------------------------------------- */
@font-face {
    font-family: 'multiple_slab';
    src: url('fonts/MultipleSlabPro-Light.woff') format('woff');
    font-weight: 300;
    font-style: normal;
}
@font-face {
    font-family: 'multiple_slab';
    src: url('fonts/MultipleSlabPro-LightIt.woff') format('woff');
    font-weight: 300;
    font-style: italic;
}
@font-face {
    font-family: 'multiple_slab';
    src: url('fonts/MultipleSlabPro-Regular.woff') format('woff');
    font-weight: 500;
    font-style: normal;
}
@font-face {
    font-family: 'multiple_slab';
    src: url('fonts/MultipleSlabPro-RegularIt.woff') format('woff');
    font-weight: 500;
    font-style: italic;
}
@font-face {
    font-family: 'multiple_slab';
    src: url('fonts/MultipleSlabPro-Bold.woff') format('woff');
    font-weight: 700;
    font-style: normal;
}
@font-face {
    font-family: 'multiple_slab';
    src: url('fonts/MultipleSlabPro-BoldIt.woff') format('woff');
    font-weight: 700;
    font-style: italic;
}
@font-face {
    font-family: 'bodoni_antiqua';
    src: url('fonts/BodoniAnt-Bol.woff') format('woff');
    font-weight: 700;
    font-style: normal;
}
@font-face {
    font-family: 'bodoni_antiqua';
    src: url('fonts/BodoniAnt-BolIta.woff') format('woff');
    font-weight: 700;
    font-style: italic;
}
@font-face {
    font-family: 'bodoni_antiqua';
    src: url('fonts/BodoniAnt-DemBol.woff') format('woff');
    font-weight: 600;
    font-style: normal;
}
@font-face {
    font-family: 'bodoni_antiqua';
    src: url('fonts/BodoniAnt-DemBolIta.woff') format('woff');
    font-weight: 600;
    font-style: italic;
}
@font-face {
    font-family: 'bodoni_antiqua';
    src: url('fonts/BodoniAnt-Reg.woff') format('woff');
    font-weight: 500;
    font-style: normal;
}
@font-face {
    font-family: 'bodoni_antiqua';
    src: url('fonts/BodoniAnt-RegIta.woff') format('woff');
    font-weight: 500;
    font-style: italic;
}

/*  Variables */
:root{
	--main_column: 1640px;
	--gutter: 30px;
	--main_color: #E0183F;
	--main_black: #000000;
}
html, body{
  height: 100%;
  width: 100%;
}
*,
*:after,
*:before{
	box-sizing: border-box;
	-webkit-transition: all 0.4s ease;
	-moz-transition: all 0.4s ease;
	-o-transition: all 0.4s ease;
	transition: all 0.4s ease;
}
::selection {
    background: var(--main_color);
    color:#fff;
}
::-moz-selection {
    background: var(--main_color);
    color:#fff;
}
img{
	max-width: 100%;
	height: auto;
	position: relative;
}
.img_border{
	display: block;
	border-image-repeat: round;
	border-image-outset: 0px;
	border-image-width: 10px;
	border-image-slice: 10 10 10 10;
	border-image-source: url('images/border_dotted_img.svg');
}
.img_border img{
	display: block;
	position: relative;
	z-index: -1;
}
.show_menu_mobile{
	display: none;
}
a{
    color: inherit;
}
svg{
    color: inherit;
    display: block;
}
em, i{
    font-style: italic;
}
b, strong{
    font-weight: bold;
}
hr.clear{
	height: 1px;
	display: block;
	margin: 0;
	padding: 0;
	clear: both;
	width: 100%;
	border: none;
	background: none;
}
/* Infobulles GMaps */
.gm-style-iw h2{
    font-weight: bold;
    margin-bottom: 15px;
}
.gm-style-iw > div{
    width: auto !important;
}
.gm-style-iw p{
    margin-bottom: 5px;
}
.gm-style img{
    max-width: inherit;
}

/* Vidéo responsive */
.video-container {
    position: relative;
    padding-bottom: 56.25%;
    padding-top: 30px; height: 0; overflow: hidden;
    clear: both;
    padding-bottom: 56.25%;
}
.video-container iframe,
.video-container object,
.video-container embed {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

/* = Grille
----------------------------------------------- */
.no-banner #content{
	padding-top: 200px;
}
.banner #content{
	padding-top: 0;
}
.center{
	width: var(--main_column);
	margin: auto;
	display: block;
}
.container{
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	align-items: stretch;
}
.container.invert{
	flex-direction: row-reverse;
}
.container.missing::after {
  content: "";
  flex: auto;
}
.container.missing > *:last-child {
	margin-left: var(--gutter);
}
.container > .all_width {
	margin-left: 0;
}
.container.align_bottom{
	align-items: flex-end;
}
.container.align_top{
	align-items: flex-start;
}
.container.align_center{
	align-items: center;
}
.all_width{ width: 100%; }
.demi{ width: calc(50% - calc(var(--gutter)/2) ); }
.tiers{ width: calc(calc(100%/3) - calc(var(--gutter)*2/3 )); }
.quart{ width: calc(25% - calc(var(--gutter)*3/4) ); }
.sixieme{ width: calc(calc(100%/6) - calc(var(--gutter)*3/4) ); }
.trois-quart{ width: calc(75% - calc(
	calc(var(--gutter)/2 - 
		calc(var(--gutter)/6))
	) ); }
.deux-tiers{ width: calc(calc(100%*calc(2/3)) - calc(
	calc(var(--gutter)/2 - calc(var(--gutter)/6))
	) ); }
.cinq_douzieme{ width: calc(calc(100%*calc(5/12)) - calc(
	calc(var(--gutter)/2 - calc(var(--gutter)/6))
	) ); }
.sept_douzieme{ width: calc(calc(100%*calc(7/12)) - calc(
	calc(var(--gutter)/2 - calc(var(--gutter)/6))
	) ); }


/* float */
.container.float{
	display: block;
}
.container.float .all_width,
.container.float .demi,
.container.float .tiers,
.container.float .quart,
.container.float .sixieme,
.container.float .trois-quart,
.container.float .deux-tiers,
.container.float .cinq_douzieme,
.container.float .sept_douzieme{
	float: left;
	margin-right: var(--gutter);
}
.container.float .demi:nth-child(2n),
.container.float .tiers:nth-child(3n),
.container.float .quart:nth-child(4n),
.container.float .quart + .trois-quart,
.container.float .trois-quart + .quart,
.container.float .tiers + .deux-tiers,
.container.float .deux-tiers + .tiers{
	margin-right: 0px !important;
}
.container.float .demi:nth-child(2n+1),
.container.float .tiers:nth-child(3n+1),
.container.float .quart:nth-child(4n+1){
	clear: both;
}
hr.clear{
	height: 1px;
	display: block;
	margin: 0;
	padding: 0;
	clear: both;
	width: 100%;
	border: none;
	background: none;
}
/* Padding and margin */
.padding_right{ padding-right: calc(var(--main_column)/12); }
.padding_left{ padding-left: calc(var(--main_column)/12); }
.margin_right{ margin-right: calc(var(--main_column)/12); }
.margin_left{ margin-left: calc(var(--main_column)/12); }


/* = Typo
----------------------------------------------- */
body{
    color: var(--main_black);
    font-family: multiple_slab, sans-serif;
    font-size: 16px;
    background-image: url(images/background_paper.jpg);
}
p{
    line-height: 1.6em;
    margin-bottom: 1.4em;
}
.title,
.text h2{
	font-weight: 700;
	font-size: 50px;
	line-height: 1em;
	font-style: italic;
	position: relative;
	padding-bottom: 75px;
    font-family: bodoni_antiqua, serif;
}
.title.align_left, .text.align_left h2{ text-align: left; }
.title.align_right, .text.align_right h2{ text-align: right; }
.title.align_center, .text.align_center h2{ text-align: center; }
.title:after,
.text h2:after{
	content: url(images/title.svg);
	display: block;
	width: 120px;
	height: 50px;
	position: absolute;
	bottom: 40px;
}
.title.align_right:after,
.text h2.align_right:after,
.text h2[style="text-align: right;"]:after{
	right: 0;
}
.title.align_center:after,
.text h2.align_center:after,
.text h2[style="text-align: center;"]:after{
	right: 50%;
	transform: translate(50%);
}
.title.align_left:after,
.text h2.align_left:after{
	left: 0;
}
.text h2{
}
.text h3{
  font-weight: bold;
  text-transform: uppercase;
  margin-bottom: 5px;
}
.text p ~  h2,
.text ul ~ h2,
.text ol ~ h2{
	margin-top: 45px;
}
.text li{
  line-height: 1.4em;
  font-size: 15px;
}
.text ul,
.text ol{
  margin-bottom: 1.2em;
}
.text p ~ ul,
.text p ~ ol{
	margin-top: -1.2em;
}
.text ul li:before{
  content: "■ ";
}
.text ol{
  counter-reset: repas;
}
.text ol li{
  counter-increment: repas;
}
.text ol li:before{
  content: counter(repas);
  font-weight: bold;
  margin-right: 8px;
}
.text p.wp-caption-text{
	margin-top: 5px;
	font-style: italic;
	line-height: 1.2em;
	font-size: 14px;
	color: #646464;
	margin-bottom: 60px;
	text-align: left;
}
.text p a{
	text-decoration: underline;
	color: #008098;
}
.text p a:hover{
	background: #008098;
	color: #fff;
	text-decoration: none;
}
.btn{
	display: inline-block;
	height: 44px;
	border-image-repeat: round;
	border-image-outset: 2px;
	border-image-width: 16px;
	border-image-slice: 16 16 16 16;
	border-image-source: url('images/border_btn.svg');
	text-transform: uppercase;
	color: var(--main_color);
	font-size: 16px;
    font-family: bodoni_antiqua, serif;
    padding: 16px;
}
.btn:hover{
    padding: 16px 20px;
}


/* = Header
----------------------------------------------- */
header#header{
	position: fixed;
	width: 100%;
    background-image: url(images/background_paper.jpg);
    z-index: 100;
}
.admin-bar header#header{
	top: 33px;
}
.social li{
	display: inline-block;
	width: 24px;
	height: 24px;
	margin-right: 8px;
}
.social li a,
.social li svg{
	display: block;
	width: 24px;
	height: 24px;
}
#contact_header p{
	margin-bottom: 0;
	margin-left: 35px;
	font-size: 14px;
	display: inline-block;
}
#contact_header p .icon{
	display: inline-block;
	vertical-align: middle;
	margin-top: -3px;
	margin-right: 3px;
	width: 20px;
	height: 20px;
}
.no-banner #contact_header p a:hover,
.no-banner .social li a:hover,
.no-banner #menu_mobile ul li a:hover,
.no-banner p.contact_meta a:hover,
.banner #contact_header p a:hover,
.banner .social li a:hover,
.banner #menu_mobile ul li a:hover,
.banner p.contact_meta a:hover{
	color: var(--main_color);
}
.no-banner #contact_header p a:hover svg,
.no-banner .social li a:hover svg,
.no-banner #menu_mobile ul li a:hover svg,
.no-banner p.contact_meta a:hover svg,
.banner #contact_header p a:hover svg,
.banner .social li a:hover svg,
.banner #menu_mobile ul li a:hover svg,
.banner p.contact_meta a:hover svg{
	fill: var(--main_color);
}
#menu_mobile{
	width: 100%;
	padding: 34px 0;
	border-top: 2px solid transparent;
	border-image-repeat: round;
	border-image-outset: 2px;
	border-image-width: 4px;
	border-image-slice: 4 4 4 4;
	border-image-source: url('images/border_dotted_solo_nav.svg');
}
#menu_mobile ul{
	text-align: center;
}
#menu_mobile ul li{
	display: inline-block;
	font-size: 17px;
	font-weight: 700;
	vertical-align: middle;
	margin: 0 8px;
	text-transform: uppercase;
}
#menu_mobile ul li.Logo{
	margin-bottom: -14px;
}
#menu_mobile ul li.Logo,
#menu_mobile ul li.Logo svg{
	width: 186px;
	height: 56px;
}
.banner #menu_mobile > ul > li.current-menu-item,
.banner #menu_mobile > ul > li.current-post-ancestor,
.banner #menu_mobile > ul > li.current-menu-parent,
.banner #menu_mobile > ul > li.current-category-ancestor,
.banner #menu_mobile > ul > li.current-menu-ancestor,
.banner #menu_mobile > ul > li.current-page-ancestor,
.no-banner #menu_mobile > ul > li.current-menu-item,
.no-banner #menu_mobile > ul > li.current-post-ancestor,
.no-banner #menu_mobile > ul > li.current-menu-parent,
.no-banner #menu_mobile > ul > li.current-category-ancestor,
.no-banner #menu_mobile > ul > li.current-menu-ancestor,
.no-banner #menu_mobile > ul > li.current-page-ancestor{
	color: var(--main_color);
}
#header .social{
	padding: 10px 0;
}
#menu_mobile > ul > li > ul.sub-menu{
	position: absolute;
	display: none;
	background-color: #fff;
	padding: 10px;
}
#menu_mobile > ul > li:hover > ul.sub-menu{
	display: block;
}
#menu_mobile > ul > li > ul.sub-menu li{
	display: block;
	text-align: left;
	margin-left: 0;
	color: var(--main_black);
	text-transform: none;
}
.banner header#header ul.sub-menu li a{
	color: var(--main_black);
}
.banner header#header ul.sub-menu li a:hover{
	color: var(--main_color);
}
/* banner style */
.banner header#header a,
.banner header#header p{
	color: #fff;
}
.banner header#header svg{
	fill: #fff;
}
.banner header#header{
    background-image: none;
}
.banner #menu_mobile{
	border-image-source: url('images/border_dotted_solo_nav_banner.svg');
}
/* banner style middle way */
.banner header#header.middle a,
.banner header#header.middle p{
	color: var(--main_black);
}
.banner header#header.middle svg{
	fill: var(--main_black);
}
.banner header#header.middle{
    background-image: url(images/background_paper.jpg);
}
.banner .middle #menu_mobile{
	border-image-source: url('images/border_dotted_solo_nav.svg');
}



/* = Footer
----------------------------------------------- */
#footer{
	margin-top: 40px;
	padding: 20px 0;
	border-image-repeat: round;
	border-image-outset: 2px;
	border-image-width: 4px;
	border-image-slice: 4 4 4 4;
	border-image-source: url('images/border_dotted_solo_footer.svg');
	text-align: center;
}
#footer p{
	margin-bottom: 0;
	font-size: 13px;
	font-weight: 300;
}
#footer p a{
	text-decoration: underline;
}
#footer p a:hover{
	color: var(--main_color);
	text-decoration: none;
}


/* = Contact
----------------------------------------------- */
.gravure{
	max-width: 100px;
	max-height: 125px;
	margin-bottom: 30px;
}
p.contact_meta{
	position: relative;
	padding-left: 30px;
}
p.contact_meta .icon{
	position: absolute;
	width: 20px;
	height: 20px;
	top: 3px;
	left: 0;
}
p.contact_meta.horaires span{
	font-weight: 600;
	float: right;
	margin-right: 50px;
}


/* = Page buidler
----------------------------------------------- */
#bandeau{
	height: 70vh;
	margin-bottom: 50px;
	position: relative;
}
.bandeau{
	position: relative;
	overflow: hidden;
}
.bandeau > img{
	display: block;
	object-fit: -webkit-cover;
	object-fit: cover;
	object-position: center center;
	width: 100%;
	height: 100%;
	position: absolute;
	z-index: -1;
	top: 0;
}
#bandeau .big_gravure{
	max-height: 275px;
	max-width: 200px;
	margin-right: 50px;
}
#bandeau h1{
	font-size: 100px;
	color: #fff;
	font-family: bodoni_antiqua, serif;
	font-style: italic;
	line-height: 1em;
	font-weight: 600;
}
#bandeau .container{
	justify-content: flex-start;
	position: absolute;
	right: 50%;
	bottom: 50px;
	transform: translate(50%);
	width: var(--main_column);
}
.bloc{
	margin-bottom: 50px;
}
.lanceur_title,
.text h2.lanceur_title{
	text-transform: uppercase;
	font-weight: 500;
	font-size: 23px;
	color: var(--main_color);
	margin-top: 30px;
	line-height: 1em;
	font-style: normal;
	padding-bottom: 0;
}
.lanceur_title:after,
.text h2.lanceur_title:after{
	content: '';
	display: block;
	margin: 10px 0;
	height: 1px;
	background-color: transparent;
	border-bottom: 1px dotted var(--main_black);
	width: 214px;
	position: relative;
	bottom: inherit;
}
.bloc.bandeau{
	padding-top: 200px;
	padding-bottom: 200px;
}
.bloc.bandeau.blanc,
.bloc.bandeau.blanc h2,
.bloc.bandeau.blanc .btn{
	color: #fff;
}
.bloc.bandeau.blanc h2:after{
	content: url(images/title_blanc.svg);
}
.bloc.bandeau.blanc .btn{
	border-image-source: url('images/border_btn_blanc.svg');
}
.page_builder .contact{
	padding-top: 150px;
}
.bloc.border{
	padding: 50px;
	border-style: solid;
}
.bloc.border.double{
	border-image-repeat: round;
	border-width: 50px 40px;
	border-image-source: url(images/border-02.png);
	border-image-slice: 175 175 175 175;
	border-image-width: 71px 71px 71px 71px;
}
.bloc.border.simple{
	border-image-repeat: round;
	border-width: 50px 40px;
	border-image-source: url(images/border-01.png);
	border-image-slice: 175 175 175 175;
	border-image-width: 71px 71px 71px 71px;
}
#prestations .prestation{
	position: relative;
	overflow: hidden;
	display: block;
}
#prestations .prestation > img{
	display: block;
}
#prestations .prestation::after{
	content: "";
	position: absolute;
	display: block;
	width: 100%;
	height: 50%;
	z-index: 2;
	bottom: 0;
	left: 0;
	background: rgb(0,0,0);
	background: linear-gradient(180deg, rgba(0,0,0,0) 0%, rgba(0,0,0,1) 100%); 
}
#prestations .prestation .texte{
	position: absolute;
	bottom: 30px;
	right: 50px;
	left: 50px;
	color: #fff;
	z-index: 5;
	text-align: center;
}
#prestations .prestation .texte .titre{
	font-family: bodoni_antiqua, serif;
	text-transform: uppercase;
	font-size: 23px;
	font-weight: 600;
}
#prestations .prestation .texte .titre:after{
	content: '';
	display: block;
	margin: 10px auto;
	height: 1px;
	background-color: transparent;
	border-bottom: 1px dotted rgba(255, 255, 255, 0.5);
	width: 50%;
}
#prestations .prestation .texte p{
	max-height: 1px;
	opacity: 0;
}
#prestations .prestation:hover .texte p{
	max-height: 300px;
	opacity: 1;
}


/* = Home Page
----------------------------------------------- */
.home #bandeau h1{
	font-size: 50px;
}
.home #actualites{
	padding-top: 50px;
	padding-bottom: 50px; 
}
.home .contact{
	padding-top: 50px;
}


/* = Actualités
----------------------------------------------- */
article.actualite{
	text-align: center;
	margin-bottom: 50px;
}
article.actualite .lanceur_title::after{
	margin-right: auto;
	margin-left: auto;
}


/* = Single actualité
----------------------------------------------- */
#share h3{
	text-transform: uppercase;
	font-size: 13px;
	font-weight: 700;
	margin: 0 0 20px 0;
}
#share .share_icons{
	display: flex;
	align-items: center;
	margin: 0;
}
#share .share_icons li a{
	display: block;
	width: 44px;
	height: 44px;
	border-radius: 50%;
	display: flex;
	align-items: center;
	transition: all 0.4s ease;
	background-color: var(--main_black);
	margin-right: 5px;
}
#share .share_icons li a svg{
	fill: #fff;
	width: 24px;
	height: 24px;
	margin: auto;
	transition: all 0.4s ease;
}
#share .share_icons li a:hover{
	background-color: var(--main_color);
}
.sticky{
	position: -webkit-sticky;
	position: sticky;
	top: 220px;
}
#content.single-post .img_border{
	margin-bottom: 20px;
}
#content.single-post h1{
	margin-top: 50px;
}
.text .gallery img{
	border: none !important;
	display: block;
}
.text .gallery .gallery-item{
	margin-top: 0 !important;
	margin-bottom: 0 !important;
	background-color: var(--main_color);
}
.text .gallery .gallery-item a:hover img{
	opacity: 0.5;
}
.text .gallery{
	margin-bottom: 50px !important;
}
	.btn,
	.img_border{
		border-width: 2px;
		border-style: solid;
	}
/* #Media Queries
================================================== */
 
@media only screen and (max-width: 1700px ) {
	:root{
		--main_column: calc(100% - 60px);
	}
	#prestations .prestation .texte{
		right: 30px;
		left: 30px;
	}
}
 
@media only screen and (max-width: 1400px ) {
	.contact_meta.demi.horaires{
		width: 100%;
	}
	#prestations .prestation .texte{
		right: 20px;
		left: 20px;
	}
	#prestations .prestation .texte p{
		font-size: 14px;
	}
}

@media only screen and (max-width: 1160px ) {
	:root{
		--gutter: 20px;
	}
	#menu_mobile ul li.Logo,
	#menu_mobile ul li.Logo svg{
		width: 110px;
		height: 34px;
	}
	#menu_mobile ul li{
		font-size: 15px;
	}
	.bloc.container > .demi > .demi,
	.contact.container > .demi > .demi{
		width: 100%;
	}
	.gravure{
		max-height: 65px;
	}
	.title, .text h2{
		font-size: 35px;
		padding-bottom: 45px;
	}
	.title::after, .text h2::after{
		bottom: 0;
	}
	#bandeau h1{
		font-size: 60px;
	}
	#bandeau .big_gravure {
	    max-height: 195px;
	    max-width: 180px;
	    margin-right: 30px;
	}
	.page_builder .contact {
	    padding-top: 80px;
	}
	#prestations .prestation .texte{
		right: 15px;
		left: 15px;
	}
}

@media only screen and (max-width: 959px) {
	#menu_mobile ul li.Logo, #menu_mobile ul li.Logo{
		display: none;
	}
}
 
/* All Mobile Sizes (devices and browser) */
@media only screen and (max-width: 767px) {	
	:root{
		--main_column: calc(100% - 30px);
	}

	/* Icon burger menu */
	.show_menu_mobile{
		align-items: center;
		position: fixed;
		left: 20px;
		bottom: 20px;
		height: 75px;
		width: 75px;
		border-radius: 50%;
		background: var(--main_color);
		z-index: 100;
		border: 2px solid #fff;
		display: flex;
	}
	.show_menu_mobile .icon{
		margin: auto;
		display: block;
		fill: #fff;
		width: 35px;
	}
	.show_menu_mobile .icon .lines{
		height: 4px;
		background: #fff;
		width: 100%;
		position: relative;
		display: block;
	}
	.show_menu_mobile .icon .lines:after,
	.show_menu_mobile .icon .lines:before{
		position: absolute;
		height: 4px;
		background: #fff;
		width: 100%;
		content: "";
		display: block;
		transform-origin: center center;
	}
	.show_menu_mobile .icon .lines:after{
		bottom: 0;
		margin-bottom: -10px;
	}
	.show_menu_mobile .icon .lines:before{
		top: 0;
		margin-top: -10px;
	}
	.show_menu_mobile .icon.close .lines{
		background: var(--main_color);
	}
	.show_menu_mobile .icon.close .lines:after{
		transform: rotate(-45deg);
		margin-bottom: 0px;
		margin-top: 30px;
	}
	.show_menu_mobile .icon.close .lines:before{
		transform: rotate(45deg);
		margin-top: 0px;
		margin-bottom: 30px;
	}

	/* Menu */
	header#header nav#menu_mobile{
		display: flex;
		align-items: center;
		width: 100%;
		float: none;
		position: fixed;
		left: 0;
	    top: 0;
	    bottom: 0;
	    right: 0;
	    background: #fff;
		padding: 0;
		font-size: 16px;
		margin-left: -100%;
		z-index: 100;
	}
	header#header nav#menu_mobile.show{
    	margin-left: -0;
	}
	header#header nav#menu_mobile ul{
		margin: auto;
	}
	header#header nav#menu_mobile ul li{
		display: block;
		text-align: center;
		padding: 0;
		margin: 20px 0;
		float: none;
	}
	header#header nav#menu_mobile ul li a{
		color: var(--main_black);
	}
	#menu_mobile ul li.Logo, #menu_mobile ul li.Logo{
		display: block;
		position: absolute;
		top: 30px;
		right: 50%;
		transform: translateX(50%);
	}
	#menu_mobile ul li.Logo, #menu_mobile ul li.Logo svg{
		fill: var(--main_black);
	}
	/* Header */
	header#header{
		position: relative;
		height: auto;
		display: block;
		z-index: 50;
		padding-top: 10px;
		padding-bottom: 10px;
	}
	header#header .social{
		display: none;
	}
	#contact_header p{
		margin-left: 0;
		margin-right: 15px;
	}
	.banner header#header a,
	.banner header#header p{
		color: var(--main_black);
	}
	.banner header#header a,
	.banner header#header p{
		color: var(--main_black);
	}
	.banner header#header p svg{
		fill: var(--main_black);
	}
	/* Grille */
	.demi,
	.tiers,
	.quart,
	.trois-quart,
	.deux-tiers{
		float: none;
		width: 100%;
		margin-right: 0px;
		margin-bottom: 30px;
	}
	/* Mise en page */
	#bandeau .container{
		display: block;
		bottom: 20px;
	}
	#bandeau .big_gravure {
	    max-height: 105px;
	    max-width: 180px;
	    margin-right: 0;
	    margin-bottom: 30px;
	}
	#bandeau h1{
		font-size: 40px;
	}
	#bandeau{
		height: 50vh;
	}
	#page_builder .bloc{
		margin-bottom: 0;
		margin-top: 50px;
		bottom: 20px;
	}
	#page_builder .bloc .tiers{
		margin-bottom: 50px;
	}
	#page_builder .bloc .tiers:last-child{
		margin-bottom: 0px;
	}
	.bloc.bandeau {
	    padding-top: 50px;
	    padding-bottom: 50px;
	}
	.page_builder #prestations{
		margin-top: 50px; 
	}
	#prestations .prestation .texte {
	    position: relative;
	    bottom: inherit;
	    right: inherit;
	    left: inherit;
	    color: var(--main_black);
	    margin-top: 30px;
	}
	#prestations .prestation .texte p {
	    max-height: inherit;
	    opacity: 1;
	}
	#prestations .prestation::after{
		display: none;
	}
	#prestations .prestation .texte .titre::after {
	    border-bottom: 1px dotted rgba(0, 0, 0, 0.5);
	}
	.bloc.border{
		padding: 40px;
	}
	.page_builder .contact{
		padding-top: 0;
	}
	.page_builder .contact .demi{
		margin-bottom: 0;
	}
	.home #bandeau h1{
		padding-left: 0;
		font-size: 25px;
	}
	.no-banner #content{
		padding-top: 0;
	}
	/* Safari */
	.safari .bloc.border.double{
		padding: 0;
	}
	.safari .btn,
	.img_border{
		border-width: 2px;
	}
	footer#footer{
		padding-bottom: 100px;
	}

	#menu_mobile > ul > li:hover > ul.sub-menu{
		display: none;
	}
}

/* Mobile Landscape Size to Tablet Portrait (devices and browsers) */
@media only screen and (min-width: 480px) and (max-width: 767px) {}
 
/* Mobile Portrait Size to Mobile Landscape Size (devices and browsers) */
@media only screen and (max-width: 479px) {}