/*!
Theme Name: bimbeau
Theme URI: https://www.oceanebimbeau.fr/
Author: Vladimir Lorentz
Author URI: https://www.oceanebimbeau.fr/
Description: Océane Bimbeau
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: bimbeau
Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready
*/

/*--------------------------------------------------------------
# Alignments
--------------------------------------------------------------*/
.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;
}
/*--------------------------------------------------------------
# SLideout
--------------------------------------------------------------*/
body {
  width: 100%;
  height: 100%;
}
.slideout-menu {
  position: fixed;
  top: 0;
  bottom: 0;
  width: 256px;
  min-height: 100vh;
  overflow-y: scroll;
  -webkit-overflow-scrolling: touch;
  z-index: 0;
  display: none;
	background-color: #0000ab;
}
.slideout-menu-left {
  left: 0;
}
.slideout-menu-right {
  right: 0;
}
.slideout-panel {
  position: relative;
  z-index: 1;
  will-change: transform;
  background-color: #f7f7f2;
  min-height: 100vh;
}
.slideout-open,
.slideout-open body,
.slideout-open .slideout-panel {
  overflow: hidden;
}
.slideout-open .slideout-menu {
  display: block;
}
.toggle-button{
	display: none;
	position: absolute;
	top: 1rem;
	left: 1rem;
	background-color: rgba(0,0,0,0);
	border: 2px solid #0000ab;
	color: #0000ab;
	border-radius: .25rem;
	padding: .25rem .75rem;
}
.toggle-button:hover,
.toggle-button:focus,
.toggle-button:active{
	outline: none;
}
#mobile-menu{
	margin-top: 2rem;
	padding: 1rem 0;
}
#mobile-menu > li {
	margin: 1rem 1rem 1rem 2.5rem;
	font-size: 1.5rem;
	list-style: none;
	position: relative;
}
#mobile-menu li a {
	color: #fff;
	position: relative;
}
#mobile-menu .current-menu-item:not(.menu-item-type-custom) > a::after,
#mobile-menu .current-page-ancestor:not(.menu-item-type-custom) > a::after {
	content: ">";
  left: -1.5rem;
  top: -1px;
  position: absolute;
  color: #fff;
  font-weight: 700;
}
#mobile-menu .sub-menu {
	display: none;
}

/*--------------------------------------------------------------
# Bimbeau's
--------------------------------------------------------------*/
body{
	background-color: #f7f7f2;
	color: #404040;
}
img,video,audio{
	height: auto;
	max-width: 100%;
}
a,a:hover,a:active,a:focus{
	color: #0000ab;
	text-decoration: none;
}
.home h1{
	text-align: center;
  font-size: 1.5rem;
  margin: 1rem 0 .5rem 0;
  padding: 0;
  color: #0404ab;
	font-weight: 400;
	position: relative;
}
.home h1:after{
	content: "";
	position: absolute;
	width: 100px;
	height: 2px;
	bottom: -.75rem;
	left: 0;
	right: 0;
	margin-left: auto;
	margin-right: auto;
	background-color: #bcbc96;
}
#primary-menu{
	margin-top: 2rem;
	text-align: center;
}
#primary-menu li {
	display: inline-block;
	list-style: none;
	margin: .5rem 1.25rem;
	font-size: 1.1rem;
	font-weight: 500;
	padding: .2rem 0;
}
#primary-menu li a {
	position: relative;
}
#primary-menu li a::after {
	content: "";
	position: absolute;
	height: 2px;
	width: 0%;
	bottom: -.3rem;
	left: 0;
	right: 0;
	margin-left: -10%;
	margin-right: -10%;
	background-color: #0000ab;
	border-radius: 1px;
	transition: all .2s ease-in-out;
}
/* #primary-menu li a:hover::after,
#primary-menu .current-menu-item:not(.menu-item-type-custom) a::after,
#primary-menu .is-active a::after,
#primary-menu .current-page-ancestor:not(.menu-item-type-custom) a::after,
#primary-menu .current-post-ancestor:not(.menu-item-type-custom) a::after,
#primary-menu .current-menu-parent:not(.menu-item-type-custom) a::after
{
	width: 120%;
} */
#primary-menu li:hover > a::after,
#primary-menu .current-menu-item:not(.menu-item-type-custom) > a::after,
#primary-menu .current-menu-ancestor:not(.menu-item-type-custom) > a::after
{
	width: 120%;
}


#primary-menu .menu-item-has-children{
	position: relative;
}
#primary-menu .sub-menu{
	display: none;
	position: absolute;
  z-index: 1;
  background-color: #fff;
  top: 32px;
  left: -20px;
	padding: 0;
  box-shadow: 0 0 6px 1px rgba(0, 0, 0, 0.2);
  border: 2px solid #0202aa;
}
#primary-menu .sub-menu li{
	display: block;
  list-style: none;
  margin: .5rem 0;
  font-size: 1rem;
  font-weight: 500;
  width: 200px;
  text-align: left;
	padding: .15rem 1rem;
}
#primary-menu .menu-item-has-children:hover > .sub-menu{
	display: block;
}
#primary-menu .sub-menu a::after
{
	width: 0%;
	margin-left: 0;
	margin-right: 0;
	background-color: #bcbc96;
}
#primary-menu .sub-menu li:hover > a::after,
#primary-menu .sub-menu .current-menu-item:not(.menu-item-type-custom) > a::after,
#primary-menu .sub-menu .current-menu-ancestor:not(.menu-item-type-custom) > a::after
{
	width: 100%;
}


#primary-menu .sub-menu > .menu-item-has-children > .sub-menu {
	display: none;
	position: absolute;
  z-index: 1;
  background-color: #fff;
  top: -.6rem;
  left: 100%;
	padding: 0;
  box-shadow: 0 0 6px 1px rgba(0, 0, 0, 0.2);
  border: 2px solid #0202aa;
}
#primary-menu .sub-menu > .menu-item-has-children > .sub-menu li{
	display: block;
  list-style: none;
  margin: .5rem 0;
  font-size: 1rem;
  font-weight: 500;
  width: 200px;
  text-align: left;
	padding: .15rem 1rem;
}
#primary-menu .sub-menu > .menu-item-has-children:hover > .sub-menu{
	display: block;
}
#primary-menu .sub-menu > .menu-item-has-children > .sub-menu a::after
{
	width: 0%;
	margin-left: 0;
	margin-right: 0;
	background-color: #bcbc96;
}
#primary-menu .sub-menu > .menu-item-has-children > .sub-menu li:hover > a::after,
#primary-menu .sub-menu > .menu-item-has-children > .sub-menu .current-menu-item:not(.menu-item-type-custom) > a::after,
#primary-menu .sub-menu > .menu-item-has-children > .sub-menu .current-menu-ancestor:not(.menu-item-type-custom) > a::after
{
	width: 100%;
}


.home-expertise-container{
	padding: 0 2rem;
}
.home-expertise-container img{
	max-width: 9rem;
}
.home-expertise-container h2{
	font-size: 1.45rem;
}

.portrait-container{
	padding: 0 0 3rem;
}
.portrait-bg{
	background-size: 80%;
	background-repeat: no-repeat;
	padding: 3rem 3rem;
}
.portrait-img{
	border: 2px solid #0000ab;
	box-shadow: 0 0 6px 1px rgba(0, 0, 0, 0.2);
}

.citation-container{
	background-position: center;
	background-size: cover;
	background-repeat: no-repeat;
	padding: 5rem 0;
}
.citation-bg{
	background-size: 80%;
	background-repeat: no-repeat;
	padding: 5rem;
}
.citation-content{
	background-color: #fff;
	border: 2px solid #0000ab;
	padding: 1.5rem;
	color: #0000ab;
	position: relative;
	box-shadow: 0 0 6px 1px rgba(0, 0, 0, 0.2);
}

.columns-container{
	padding-top: 5rem;
	padding-bottom: 3rem;
}
.column-title{
	color: #0000ab;
	font-size: 1.5rem;
	margin-bottom: 1rem;
}
.separator{
	width: 50%;
	height: 2px;
	background-color: #0000ab;
	margin: 3rem auto 1rem;
}
.publications-link{
	font-size: 1.1rem;
	font-weight: 500;
}

.fees-container{
	background-position: center;
	background-size: cover;
	background-repeat: no-repeat;
	padding: 5rem 0;
}
.fees-content{
	background-color: #fff;
	padding: 1.5rem;
	box-shadow: 0 0 6px 1px rgba(0, 0, 0, 0.2);
}
.fees-title{
	color: #0000ab;
  font-size: 2rem;
  margin-bottom: 1.75rem;
  position: relative;
}
.fees-title:after{
	position: absolute;
  left: 0;
  bottom: -.7rem;
  content: "";
  background-color: #bcbc96;
  height: 2px;
  width: 110px;
}
.introduction-container{
	background-position: center;
	background-size: cover;
	background-repeat: no-repeat;
	margin-top: 2rem;
	padding: 7.5rem 0;
}
.introduction-content{
	background-color: #fff;
	padding: 1.5rem;
	box-shadow: 0 0 6px 1px rgba(0, 0, 0, 0.2);
	margin-top: 10rem;
  margin-bottom: -15rem;
	font-size: .95rem;
	color: #4d4d4d;
}
.introduction-content h1{
	color: #0000ab;
	font-size: 1.75rem;
	margin-bottom: 1rem;
}
.introduction-content h2{
	color: #0000ab;
	font-size: 1.75rem;
	margin-bottom: 1rem;
}
.spe-title{
	color: #bcbc96!important;
  font-size: 1.5rem!important;
  font-weight: 300!important;
	margin-bottom: .5rem!important;
}

.steps-container{
	margin-top: 10rem;
}
.expertise-circle{
	width: 10rem;
  height: 10rem;
  border: 2px solid #0000ab;
  border-radius: 100%;
  vertical-align: middle;
	color: #0000ab;
	margin: 0 auto;
	padding: 1rem;
	position: relative;
}
.expertise-circle::after {
  content: ">";
  color: #0000ab;
  font-size: 4rem;
  font-weight: 100;
  position: absolute;
  right: -5rem;
  top: 1.5rem;
}
@media screen and (min-width:992px) and (max-width:1200px){
	.expertise-circle::after {
	  right: -4rem;
	}
}
.last-circle::after {
	content: ""!important;
}
.expertise-content{
	background-color: #fff;
	padding: 1.5rem;
	box-shadow: 0 0 6px 1px rgba(0, 0, 0, 0.2);
}

#contact{
	padding: 5rem 0;
	background-color: #ebebde;
}
.wpcf7 label{
	color: #5e5e3b!important;
}
.wpcf7 p{
	margin-bottom: .5rem;
}
.wpcf7-form-control{
	border: 0!important;
}
.wpcf7 textarea{
	height: 7rem;
	margin-bottom: 1rem;
}
.wpcf7-form-control:focus {
	outline: 0!important;
	box-shadow: 0 0 0 0.2rem rgba(0, 0, 171, 0.25)!important;
}
.wpcf7-submit {
  background-color: #0000ab!important;
  color: #fff!important;
  padding: .5rem 1rem!important;
  border-radius: .25rem!important;
}
.wpcf7-submit:focus,
.wpcf7-submit:active {
	outline: 0!important;
	box-shadow: 0 0 0 0.2rem rgba(0, 0, 171, 0.25)!important;
}
.wpcf7-not-valid-tip{
	color: #0000ab!important;
  font-size: .95em!important;
	margin-top: 2px!important;
}
div.wpcf7-validation-errors,
div.wpcf7-acceptance-missing{
	border: 2px solid #ebeb7d!important;
	color: #5e5e3b!important;
}
address{
	background-color: #fff;
  padding: 2rem;
  color: #0202aa;
	font-weight: 300;
	margin: 2rem 0;
	width: 90%;
	max-width: 400px;
}
#close-contact{
	float: right;
  background-color: #0000ab;
  border: 0;
  padding: 8px 15px;
  border-radius: 56%;
  color: #fff;
  margin-right: -15px;
  margin-top: -15px;
}
#floating-address-container {
	position: fixed;
  top: calc(50vh - 140px);
  left: calc(50vw - 200px);
  box-shadow: 0 0 0 100vh rgb(0 0 0 / 60%);
  z-index: 10;
	width: 90%;
	max-width: 400px;
	transform: translate(300vw);
	transition: all .5s ease-in-out;
}
#floating-address-container address {
	margin: 0;
	box-shadow: 0;
	width: 100%;
	max-width: 400px;
}
@media screen and (max-width: 450px) {
	#floating-address-container {
	  left: 5%;
	}
}
.show-contact-card{
	transform: translate(0)!important;
}
.oce-name{
	text-transform: uppercase;
	font-size: 1.2rem;
	font-weight: 400;
}
.oce-website,
.oce-website:hover,
.oce-website:active,
.oce-website:focus{
	font-weight: 400;
	color: #0000ab;
}

#footer{
	background-color: #bcbc96;
	font-size: .9rem;
	color: #fff;
}
#footer a{
	color: #fff;
}

#mobile-phone{
	display: none;
	position: fixed;
	bottom: 10px;
	right: 10px;
	z-index: 10;
	background-color: #0000ab;
	color: #fff;
	height: 45px;
	width: 45px;
	border-radius: 100%;
	text-align: center;
	line-height: 40px;
	box-shadow: 0 0 6px 1px rgba(0, 0, 0, 0.2);
	transition: all .2s ease-in-out;
}

.hide-mobile-phone{
	transform: translateY(10rem);
}
.thumbnail-container{
	text-align: center;
}
.thumbnail-container-right{
  transform: translateX(30px);
}
.thumbnail-container-left{
  transform: translateX(-30px);
}
.excerpt-container-right{
	transform: translateX(-30px);
}
.excerpt-container-left{
	transform: translateX(30px);
}
.excerpt-container{
	background-color: #fff;
  padding: 1.5rem;
	border: 2px solid #0000ab;
	box-shadow: 0 0 6px 1px rgba(0, 0, 0, 0.2);
}
.single-thumbnail-container{
	width: 100%;
	min-height: 30rem;
	height: 50vh;
	max-height: 500px;
	background-position: center;
	background-size: cover;
	background-repeat: no-repeat;
}
.single-container{
	background-color: #fff;
  padding: 1.5rem;
  border: 2px solid #0000ab;
  margin: -100px auto 2rem;
  box-shadow: 0 0 6px 1px rgba(0, 0, 0, 0.2);
  max-width: 990px;
}

.linkedin-btn,
.linkedin-btn:hover,
.linkedin-btn:active,
.linkedin-btn:focus{
	background-color: #0074b0;
  color: #fff;
  border-radius: .25rem;
  padding: .4rem .75rem;
  font-size: .9rem;
}

.page-thumbnail-container{
	width: 100%;
	min-height: 30rem;
	height: 50vh;
	max-height: 500px;
	background-position: center;
	background-size: cover;
	background-repeat: no-repeat;
}
.page-container{
	background-color: #fff;
  padding: 1.5rem;
  border: 2px solid #0000ab;
  margin: -100px auto 2rem;
  box-shadow: 0 0 6px 1px rgba(0, 0, 0, 0.2);
  max-width: 990px;
}

.subexpertise-container{
	background-position: center;
	background-size: cover;
	background-repeat: no-repeat;
	margin-top: 2rem;
	padding: 7.5rem 0;
}
.subexpertise-content{
	background-color: #fff;
	padding: 1.5rem;
	box-shadow: 0 0 6px 1px rgba(0, 0, 0, 0.2);
	margin-top: 10rem;
  margin-bottom: -15rem;
	font-size: .95rem;
	color: #4d4d4d;
}
.subexpertise-content h1{
	color: #0000ab;
	font-size: 1.75rem;
	margin-bottom: 1rem;
}
.subexpertise-content h2{
	color: #0000ab;
	font-size: 1.75rem;
	margin-bottom: 1rem;
}
.spe-title{
	color: #bcbc96!important;
  font-size: 1.5rem!important;
  font-weight: 300!important;
	margin-bottom: .5rem!important;
}
.subexpertise-main{
	padding-bottom: 15rem;
}
.subpage-list-content {
  background-color: #fff;
  padding: 1.5rem;
  box-shadow: 0 0 6px 1px rgba(0, 0, 0, 0.2);
	margin: 1rem 0 3rem;
}
.subpage-list-excerpt{
	text-align: justify;
}
.subpage-list-title{
	color: #0000ab;
	margin-bottom: 2rem;
	position: relative;
	text-align: center;
}
.subpage-list-title:after{
	position: absolute;
  left: 0;
	right: 0;
	margin-left: auto;
	margin-right: auto;
  bottom: -1rem;
  content: "";
  background-color: #bcbc96;
  height: 2px;
  width: 110px;
}
.publication-container{
	background-color: #fff;
	padding: 1.5rem;
	box-shadow: 0 0 6px 1px rgba(0, 0, 0, 0.2);
}
.publication-img{
	background-position: center;
	background-size: cover;
	background-repeat: no-repeat;
	background-color: #ebebde;
	width: 100%;
	height: 200px;
}
.publication-title{
	color: #0000ab;
	margin-bottom: 2rem;
	position: relative;
	text-align: center;
}
.publication-title:after{
	position: absolute;
  left: 0;
	right: 0;
	margin-left: auto;
	margin-right: auto;
  bottom: -1rem;
  content: "";
  background-color: #bcbc96;
  height: 2px;
  width: 110px;
}
.publication-desc{
	color: #404040;
}

.quote-content{
	background-color: #fff;
	padding: 1.5rem;
	box-shadow: 0 0 6px 1px rgba(0, 0, 0, 0.2);
	position: relative;
	font-size: 1.2rem;
}
.quote-content::before{
	position: absolute;
	content: "";
	top: 0;
	left: 0;
	height: 100%;
	width: 4px;
	background-color: #ddd;
}
.oce-content{
	background-color: #fff;
	padding: 1.5rem;
	box-shadow: 0 0 6px 1px rgba(0, 0, 0, 0.2);
}


.fader{
	position: relative;
}
.fader img{
	width: 100%;
}
#img-alt{
	position: absolute;
	top: 0;
	left: 0;
	z-index: 2;
	width: 100%;
}

@media screen and (max-width:992px){
	.citation-bg{
		padding: 1.5rem;
	}
	.toggle-button{
		display: block;
	}
	.expertise-circle::after {
	  content: "";
	}
	.thumbnail-container-right{
		transform: translateX(0);
	}
	.thumbnail-container-left{
		transform: translateX(0);
	}
	.excerpt-container-right{
		transform: translateX(0);
	}
	.excerpt-container-left{
		transform: translateX(0);
	}
}
