/*
Theme Name: Beaver Builder Child Theme
Theme URI: http://www.wpbeaverbuilder.com
Version: 1.0
Description: An example child theme that can be used as a starting point for custom development.
Author: The Beaver Builder Team
Author URI: http://www.fastlinemedia.com
template: bb-theme
*/

/* Add your custom styles here... */ 

/* Mobile header animated close button */
.pp-advanced-menu-mobile-toggle.hamburger .pp-hamburger-inner:before, 
.pp-advanced-menu-mobile-toggle.hamburger .pp-hamburger-inner:after{
        transition: all ease 0.8s !important;
}
.pp-advanced-menu-mobile-toggle.hamburger.pp-active .pp-hamburger-inner {
    transition: all ease 0.2s;
    background: transparent;
}
.pp-advanced-menu-mobile-toggle.hamburger:not(.pp-active) .pp-hamburger-inner {
    transition: all ease 1.5s;
}
.pp-advanced-menu-mobile-toggle.hamburger.pp-active .pp-hamburger-inner:before {
    transform: rotate(-45deg);
    top: 0;
}
.pp-advanced-menu-mobile-toggle.hamburger.pp-active .pp-hamburger-inner:after {
    transform: rotate(45deg);
    bottom: 0;
}

/** FIXES FOR BB **/
.fl-row-fixed-width {
    min-width: 1px;
}
body,
.fl-page {
	overflow-x:hidden;
}
body, p {
	color:#393e52;
}
h1 {
	font-size: 80px;
}
h2 {
	font-size: 32px;
	font-weight: bold;
}
header .menu li.menu-item {
	margin-left: 10px;
	margin-right: 10px;
}
header .menu li.menu-item a {
	color: #393e52;
	font-size: 18px;
}
header .menu li.menu-item a:hover {
	color: #c9a86d;
}
header .menu li.contact {
	border: 2px solid #c9a86d;
	border-radius: 500px;
}
header .menu li.contact a {
	padding: 3px 20px !important;
}

/* Animation containers */
.rotate {
	width: 60px;
	height: 60px;
	-webkit-animation: circle 3s infinite linear;
}
.rotate.slow {
	-webkit-animation: circle 4.5s infinite linear;	
}
.counterrotate {
	width: 55px;
	height: 55px;
	-webkit-animation: ccircle 3s infinite linear;
	position: relative;
}
.counterrotate.slow {
	-webkit-animation: ccircle 4.5s infinite linear;	
}
.counterrotate:before {
	content: '';
    display: block;align-content;
	position: absolute;
	background-repeat:no-repeat !important;
}

/* Home */
.home .header-block p {
	font-size: 20px;
}
.home-photo-1 .wrapper {
	position: relative;
}
.home-photo-1 .background {
	position: absolute;
}
.home-photo-1 .rotate {
	position: absolute;
    bottom: -90px;
    left: -50px;
}
.home-photo-1 .counterrotate:before {
    background: url(/wp-content/themes/bb-theme-child/assets/about_gold_leaves.svg);
    bottom: 0;
    left: 0;
    width: 343px;
    height: 375px;
    background-repeat: no-repeat;
}
.home-photo-1 .content {
	text-align:center;
	position:relative;	
    z-index: 10;
}
.italic-header {
	font-family: "Playfair Display";
	font-style: italic;
	font-weight: bold;
}
.small-header {
	font-size: 20px;
}
.center {
	text-align: center;
}
.underlined {
	text-decoration: underline;
}
.small-width {
	width: 815px;
	margin: auto;
}

/* Services grid */
body:not(.fl-builder-edit) .services {
	overflow:hidden;
}
.services .fl-node-60dd8d9879550 {
	position: relative;
}
.services.sub-page .condition-content,
.services.sub-page .condition-title,
.services .pp-posts-wrapper,
.services .fl-node-61122df146b68 {
	position: relative;
	z-index: 3;
}
.services .fl-html,
.services .fl-module-html,
.services .fl-module-content {
	height: 100%;
}
.service-wrapper {
	background: #ffffff;
    display: flex;
    flex-direction: column;
	height: 100%;
}
.services .pp-content-post {
	box-shadow: 0px 3px 20px 0px rgba(0,0,0,0.16);
	-webkit-box-shadow: 0px 3px 20px 0px rgba(0,0,0,0.16);
	-moz-box-shadow: 0px 3px 20px 0px rgba(0,0,0,0.16);
}
.service-wrapper .pp-content-grid-post-image {
	max-height: 149px;
}
.service-wrapper .pp-content-grid-post-text {
    flex-grow: 1;
    display: flex;
    flex-direction: column;
	text-align:center;
}
.service-wrapper .pp-content-grid-post-excerpt {
    flex-grow: 1;
	padding: 0 30px 20px;
}
.service-wrapper .pp-content-grid-post-more-link {
	border-top: 2px solid #C9A86D;
	text-transform:uppercase;
	background: linear-gradient(to bottom, #C9A86D 50%, transparent 50%) bottom;
    background-size: 100% 200%;
    -webkit-transition: background-position 0.5s;
    -moz-transition: background-position 0.5s;
    transition: all 0.5s;
}
.service-wrapper .pp-content-grid-post-more-link:hover {
    background-position: top;
}
.service-wrapper .pp-content-grid-post-more-link a {
	color: #393E52;
	font-weight: bold;
	padding: 18px;
    display: block;
}
.service-wrapper .pp-content-grid-post-more-link a:hover {
	text-decoration:none;
}
.services .wrapper {
	position: absolute;
    top: 100%;
    right: 20%;
	z-index: 1;
}
.services .rotate {
	-webkit-animation: ccircle 3s infinite linear;
}
.services .counterrotate {
	-webkit-animation: circle 3s infinite linear;
}
.services .counterrotate:before {
    background: url(/wp-content/themes/bb-theme-child/assets/services_white_flower.svg);
    bottom: 0;
    left: 0;
    width: 705px;
    height: 712px;
    background-repeat: no-repeat;
}
.services .sub-wrapper {
	top: 60%;
    left: -40px;
    z-index: 1;
}
.video-consultations .sub-wrapper .counterrotate,
.services .sub-wrapper .rotate {
	-webkit-animation: circle 3s infinite linear;
}
.video-consultations .sub-wrapper .rotate,
.services .sub-wrapper .counterrotate {
	-webkit-animation: ccircle 3s infinite linear;
}
.services .sub-wrapper .counterrotate:before {
    background: url(/wp-content/themes/bb-theme-child/assets/services_cream_leaves.svg);
	width: 160px;
    height: 178px;
}
.home-box-block {
	box-shadow: 10px 10px 20px 0 rgba(0,0,0,0.16);
	position: relative;
	z-index: 3;
	background: #fff;
}
.home-box-block .fl-rich-text span {
	color: #7ca1a5;
}

.button-wrapper {
	width:100%;
	text-align: center;
}
.button-wrapper a {
	border: 2px solid #C9A86D;
	color:#393e52;
	border-radius: 50px;
	padding: 12px 30px;
}
.button-wrapper a:hover {
	color:#C9A86D;
	text-decoration:none;
}

/* testimonials block */
.testimonials-block h2, 
.testimonials-block p {
	color: #ffffff;
}
.testimonials-stars {
	color: #F8F4E6;
}

.testimonials-block {
    background: url('/wp-content/themes/bb-theme-child/assets/testimonial.svg');
    background-repeat: no-repeat;
    background-size: cover;
}
.torn-paper {
    background: url('/wp-content/themes/bb-theme-child/assets/torn_paper.svg');
    background-repeat: no-repeat;
    background-size: cover;
}
.testimonials-block .torn-paper {
    position: relative;
}
.testimonials-block .torn-paper:before {
    content: '';
    display: block;
    background: url('/wp-content/themes/bb-theme-child/assets/quote.svg');
    position: absolute;
    height: 273px;
    width: 100px;
    top: 0;
    left: -49px;
}
.testimonials-block .fl-row-fixed-width:after {
    content: '';
    display: block;
    background: url(/wp-content/themes/bb-theme-child/assets/testimonial_flower.svg);
    position: absolute;
    height: 542px;
    width: 529px;
    bottom: -40px;
    z-index: 1;
    right: 220px;
}
.testimonials-block .torn-paper .owl-dots {
	display:none;
}
.testimonials-block .fl-row-fixed-width .fl-col-group {
	position: relative;
	z-index: 2;	
}

/* home page harley st - harley_st_blue_circle_flower.svg */
/* home page video consultations - online_video_pink_box.svg */
/* home page home visit - home_visit_cream_oval_flowers.svg */
.home-visit,
.video-consultations,
.harley-street {
	position:relative;
}
.harley-street .wrapper {
    position: absolute;
    z-index: 1;
    left: -150px;
    top: 220%;
}
.harley-street .counterrotate:before {
    background: url(/wp-content/themes/bb-theme-child/assets/harley_st_blue_circle_flower.svg);
	width: 468px;
    height: 415px;	
}
.video-consultations .wrapper {
	position: absolute;
	z-index: 1;
	right: 30%;
	top: 200%;
}
.video-consultations .counterrotate::before {
	background: url(/wp-content/themes/bb-theme-child/assets/online_video_pink_box.svg);
	width: 624px;
    height: 365px;	
}
.home-visit .wrapper {
	position: absolute;
	z-index: 1;
    left: -150px;
	top: -200px;
}
.home-visit .counterrotate::before {
	background: url(/wp-content/themes/bb-theme-child/assets/home_visit_cream_oval_flowers.svg);
	width: 1016px;
    height: 756px;	
}

/* Contact Form */
.wpcf7 input {
	border: none;
}
.wpcf7 select {
	width: 100%;
	border: none;
	padding: 10px;
}
.contact-block1,
.contact-block2 {
	position: relative;
	z-index:3;
}
.footer-animation {
	position: relative;
}
.footer-animation .wrapper {
	position: absolute;
    left: 20%;
    top: -300px;
    z-index: 1;
}
.footer-animation .counterrotate:before {
    background: url(/wp-content/themes/bb-theme-child/assets/contact_white_leaves.svg);
	width: 642px;
    height: 554px;
}

/* Footer */
footer {
	position: relative;
}
footer h2 {
	color: #393e52 !important;
	font-size: 24px;
}
.footer-wrapper {
	position: relative;
}
.footer-wrapper:before {
	content:'';
	display: block;
	width: 100%;
	height: 200px;
	background:url(/wp-content/themes/bb-theme-child/assets/footer_torn_paper.svg);
	background-size:cover;
	position: absolute;
	top:-210px;
}

footer .footer-wrapper {
    color: #393e52 !important;
    font-weight: bold;
}
footer .footer-wrapper .fl-row-content-wrap  {
    position: relative;
}
footer .footer-wrapper .fl-row-content-wrap:after {
    content: '';
    display: block;
    background: url('/wp-content/themes/bb-theme-child/assets/footer-circle.svg');
	height: 288px;
    width: 718px;
    position: absolute;
    right: 0;
    bottom: 0px;
}
footer .footer-wrapper .fl-row-content-wrap .fl-row-content {
	z-index: 2;
    position: relative;	
}

.wpcf7 input.wpcf7-text, 
.wpcf7 .wpcf7-select {
    padding: 15px 12px !important;
    font-size:16px;
}
.gold-button,
.wpcf7 input.wpcf7-submit,
.wpcf7 input.wpcf7-submit:focus,
.wpcf7 input.wpcf7-submit:active {
    border-radius: 500px;
    border: 2px solid #c9a86d;
    background: transparent;
    color: #393e52;
}
.wpcf7 input.wpcf7-submit,
.wpcf7 input.wpcf7-submit:focus,
.wpcf7 input.wpcf7-submit:active {
    transition: background ease 0.5s;
    float:right !important;
    width:110px !important;
}
.gold-button:hover,
.wpcf7 input.wpcf7-submit:hover {
    background: #c9a86d;
    border: 2px solid #c9a86d;
	text-decoration: none;
    color: #393e52;
}
.gold-button {
    padding: 6px 12px;
    font-weight: bold;
    width:130px;
}

.contact-info-wrapper,
.contact-info-wrapper a{
    color:#7CA1A5;
}
.social-icons {
    display:flex;
    justify-content: space-between;
}

.contact-info-wrapper .info {
    margin-bottom: 26px;
    display:flex;
    align-items: top;
}
.contact-info-wrapper .info .icon {
    flex: 0 0 80px;
}

/* about */
.services-tabs .logos img {
    width: 220px;
    padding: 26px;
}

/* services */
.sub-header.services {
    background: url(/wp-content/themes/bb-theme-child/assets/services_header.svg);
    background-repeat: no-repeat;
    background-size: 110%;
    background-position: -70px 0;
    height: 360px;
	display: flex;
    flex-direction: column;
    justify-content: center;
}
.sub-header.services h1 {
	font-weight:bold;
}

.services-tabs {
	background: url('/wp-content/themes/bb-theme-child/assets/intersection2.svg');
    background-repeat: no-repeat;
	background-size: cover;
	position:relative;
}
.publications {
	position:relative;
}
.publications .top-background .wrapper,
.services-tabs .top-background .wrapper {
	position: absolute;
    z-index: 1;
    right: 120px;
    top: -200px;
}
.publications .top-background .counterrotate:before,
.services-tabs .top-background .counterrotate:before {
    background: url('/wp-content/themes/bb-theme-child/assets/services_brown.svg');
	width: 228px;
    height: 367px;	
}
.publications .bottom-background-left .wrapper,
.services-tabs .bottom-background-left .wrapper {
	position: absolute;
    z-index: 1;
    left: 120px;
	bottom: 650px;
}
.publications .bottom-background-left .wrapper {
    bottom: 35%;
}
.publications .bottom-background-left .counterrotate:before, 
.services-tabs .bottom-background-left .counterrotate:before {
    background: url('/wp-content/themes/bb-theme-child/assets/services_yellow_circle.svg');
	width: 642px;
    height: 554px;	
}
.publications .bottom-background-right .wrapper,
.services-tabs .bottom-background-right .wrapper {
	position: absolute;
    z-index: 1;
    right: 710px;
    bottom: 790px;
}
.publications .bottom-background-right .wrapper {
    bottom: 80%;
}
.publications .bottom-background-right .counterrotate:before,
.services-tabs .bottom-background-right .counterrotate:before {
    background: url('/wp-content/themes/bb-theme-child/assets/services_cream_white_flower.svg');
    width: 558px;
    height: 619px;		
}
.publications .content-wrapper,
.services-tabs .content-wrapper {
	position:relative;
	z-index: 5;
}
.services-tabs .tab-wrapper {
	display:flex;
	flex-direction: row;
	justify-content: space-evenly;
}
.services-tabs .tab {
	background:#393E52;
	text-align: center;
}
.services-tabs .tab a {
	color: #c4b5a1;
    padding: 20px;
    width: 300px;
    display: block;
    font-size: 20px;
    font-family: "Playfair Display",serif;
    font-weight: bold;
}
.services-tabs .about-content .tab a {
	width:260px;
}
.services-tabs .tab.active {
	background:#ffffff;
}
.services-tabs .tab.active a {
	color: #393e52;
}
.services-tabs .tab a:hover,
.services-tabs .tab a:focus,
.services-tabs .tab a:active {
	text-decoration: none;
}
.services-tabs .content {
	display:none;
	padding: 40px;
	background: #ffffff;
	width: 100%;
	flex-direction: row;
	box-shadow: 10px 10px 20px 0 rgba(0,0,0,0.16);
	position: relative;
    z-index: 5;
	min-height:800px;
}
.services-tabs .tab-main-wrap:after {
	content: '';
    display: block;
    background: url('/wp-content/themes/bb-theme-child/assets/services_brown_leaves.svg');
	height: 167px;
    width: 372px;
    position: absolute;
	right: 410px;
    bottom: -70px;
	z-index:1;
}
.services-tabs .content.active {
	display:flex;
}
.services-tabs .content .col-1 {
    flex: 0 0 325px;	
}
.services-tabs .content .col-2 {
    padding-left: 55px;	
    padding-right: 55px;	
	font-weight: bold;
}
.services-tabs .content .title {
	font-size: 32px;
	font-family: "Playfair Display",serif;
	font-weight: bold;
	margin-bottom: 20px;
}
.services-tabs .content .first-p {
	margin-bottom: 40px;
}
.services-tabs .content ul {
	padding-left: 20px;
	width:80%;
	margin-top: 18px;
    margin-bottom: 18px;
}
.services-tabs .content ul li {
	margin-bottom: 12px;
}
.services-tabs .content .col-1 img {
	margin-bottom: 26px;
}
.services-tabs .content .col-1 p {
	font-weight: bold;
	margin-top: 24px;
    margin-bottom: 34px;
}
.services-tabs .content .services-button {
	padding: 15px 30px;
    box-shadow: 0 3px 6px 0 rgb(0 0 0 / 16%);
    border-radius: 500px;
    margin-bottom: 20px;
    width: auto;
    display: inline-block;
}
.services-tabs .gold-button,
.services-col .gold-button {
	float: none;
    display: block;
    text-align: center;
	font-size:18px;
	border-width: 3px;
	padding: 15px 20px;
}
.services-tabs .gold-button {
	margin-bottom: 18px;
	max-width: 240px;
	display:inline-block;
	width:auto;
}
.services-col .gold-button {
    margin: auto;
    width: 240px;
}

.services-col {
	box-shadow: 10px 10px 20px 0 rgba(0,0,0,0.16);
	background: #ffffff;
	margin-left:10px;
	margin-right: 10px;
	width: calc(33.33% - 20px);
}
.services-col .fl-heading {
    height: 90px;
}
.services-col .fl-rich-text {
    min-height: 140px;
}
footer .gold-button-wrap .gold-button {
	font-size: 15px;
}

/* Animaions */
@-webkit-keyframes circle {
    from {-webkit-transform: rotateZ(0deg)}
    to {-webkit-transform: rotateZ(360deg)}
}
@-webkit-keyframes ccircle {
    from {-webkit-transform: rotateZ(360deg)}
    to {-webkit-transform: rotateZ(0deg)}
}

/* Media Queries */
@media screen and (max-width:1620px){
	.sub-header.services {
		height: 270px;
	}
}
@media screen and (max-width: 1400px) {
	.sub-header h1.fl-heading {
		font-size: 60px;
	}
	.services-tabs .top-background .wrapper {
		top: -100px;
	}
}
@media screen and (max-width: 1200px){
	.sub-header.services {
		height: 220px;
	}
	.services-col h2 {
		font-size: 28px;
	}
}
@media screen and (max-width: 1050px){
	.contact-info-wrapper .info .icon {
		flex:0 0 65px;
	}
}
@media screen and (max-width: 991px){
	footer .footer-wrapper .fl-row-content-wrap:after {
		right: -30px;
	}
	.testimonials-block .torn-paper {
		margin-left:50px;
		margin-right: 50px;
	}
	.pp-content-grid-post:nth-child(3) {
		left: 50% !important;
		transform: translatex(-50%);
	}
	.about-1 {
		order:1;
		width:100%;
	}
	.about-2 {
		order:2;
		width: 100%;
	}
	h1.fl-heading {
		font-size:60px;
		text-align: center;
	}
	.home .header-block p {
		text-align: center;
	}
	
	/* services */
	.sub-header.services {
		background-repeat: no-repeat;
   	 	background-size: cover;
    	background-position: -70px 0;
    	height: 200px;
	}
	.services-col {
		margin-bottom:40px;
		width: 500px;
		margin-left: auto;
		margin-right: auto;
		float: none;
	}
	.services-tabs .tab a {
		width:200px;
		font-size: 18px;
	}
	.services-tabs .top-background .wrapper {
		left: 20%;
    	top: -20px;
	}
	.services-tabs .top-background .counterrotate:before {
		background-size: 80%;
	}
	.services-tabs .tab-wrapper {
		flex-direction: column;
	}
	.services-tabs .tab a {
		width: 100%;
		font-size:20px;
	}
	.services-tabs .content.active {
		padding: 20px;
    	flex-direction: column;
	}
	.services-tabs .content .col-1 {
		flex: 0 0 325px;
    	align-items: center;
    	display: flex;
    	flex-direction: column;
	}
	.services-tabs .content .col-2 {
		padding-left: 20px;
		padding-right: 10px;
		text-align: center;
	}
	.services-tabs .content ul {
    	text-align: left;
    	margin: 18px auto;		
	}
}
@media screen and (max-width: 767px){
	.contact-info-wrapper .info .icon {
		flex:0 0 80px;
	}
	header .fl-node-5dde805bf3acb-clone {
		position: absolute;
		z-index: 100;
		background: rgb(255, 255, 255);
		width: calc(100% + 20px);
		display: block;
	}
	#menu-main-menu {
		margin-top: 0;
		margin-bottom: 20px;
	}
	.services .pp-content-post {
		margin-bottom: 40px;
	}
	.small-width {
		width: auto;
		margin: auto;
	}
	.testimonials-block .torn-paper .pp-content-posts-inner {
    	margin-top: 60px;		
	}
	.testimonials-block .torn-paper .owl-dots {
		display:block;
	}
	.testimonials-block .torn-paper .pp-carousel-nav {
		display: none;
	}
	.testimonials-block .fl-row-fixed-width:after {
		background:none;
	}
	.contact-info-wrapper {
		width: 80%;
    	margin: auto;
	}
	.opening-hours,
	.gold-button-wrap .fl-html div {
		text-align:center;
	}
	.footer-wrapper:before {
		height: 130px;
		top: -50px;
		left: 0px;
	}
	.footer-animation .wrapper {
		left: 0;
		top: -340px;
	}
	.marketing-message {
		margin-bottom: 140px;
	}
	footer .footer-wrapper .fl-row-content-wrap:after {
		right: 0;
		bottom: -40px;
	}
	footer .social-icons {
		width: 200px;
    	margin: auto;
	}
	
	/* Services */
	.services-col {
		width: 400px;
	}
	.services-tabs .content .col-1 {
		flex: 0 0 auto;	
	}
	
	/* about */
	.services-tabs .logos img {
		width: 160px;
		padding: 26px;
	}
	
	/* Media */
	.publications .top-background .wrapper {
		top: 160px;
	}
	
	/* blog */
	.single-post h1.fl-heading {
		font-size:40px;
	}

@media screen and (max-width: 567px){

}