/*
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... */

:root {

	/* Old Colours (Pre rebrand) */

		--tpgreen: #209B5B;
		--tpyellow: #E2C556;
		--tpurple: #2D2237;
		--tpgrey: #505456;
	
	/* Main Colours */

		--color-green-darker: #015771; /* Dark Teal*/
		--color-green-dark: #008B97; /* Light Teal */
		--color-green: #008B64; /* Green 001 */
		--color-green-light: #60B28F; /* Green 03 */
		--color-green-lighter: #7FC066; /* Green 02 */

	/* Main Colours - RGBA */

		--color-green-alpha: 0, 139, 100;

	/* Monochromes */

		--color-black: #121212;
		--color-grey-darkest: #212121;
		--color-grey-darker: #333333;
		--color-grey-dark: #7F7F7F;
		--color-grey: #BFBFBF;
		--color-grey-light: #D8D8D8;
		--color-grey-lighter: #F2F2F2;
		--color-grey-lightest: #F8F8F8;
		--color-white: #ffffff;

	/* Monochromes - RGBA */

		--color-black-alpha: 18, 18, 18;
		--color-white-alpha: 255, 255, 255;
	
}

/* General */

	/* General - Icons */

		.tp-phone-icon::before {
			content: "\e0b0";
			font-family: 'Material Icons';
			margin-right: 5px;
		}

		.tp-email-icon::before {
			content: "\e158";
			font-family: 'Material Icons';
			margin-right: 5px;
		}

		.tp-address-icon::before {
			content: "\e55e";
			font-family: 'Material Icons';
			margin-right: 5px;
		}

		.fa-phone::before {
			content: "\e0b0";
			font-family: "Material Icons";
			font-size: 17px;
		}

		.tp-linkedin img {
			max-width: 17px;
		}

	/* General - Client Carousel */

		.client-carousel .pp-carousel-image-container {
			background-size: contain !important;
		}

	/* General - Accordion */

		.fl-accordion-item {
			border-radius: 30px !important;
			border-color: var(--color-green-lighter) !important;
		}

		.fl-accordion-item .fl-accordion-button-label {
			color: var(--color-green-darker) !important;
		}

		.fl-accordion-item .fa-plus::before,
		.fl-accordion-item .fa-minus::before {
			color: var(--color-green-darker);
		}

		.tp-accordion .fa-plus::before {
			content: "\e145";
			font-family: "Material Icons";
		}

		.tp-accordion .fa-minus::before {
			content: "\e15b";
			font-family: "Material Icons";
		}

		.tp-accordion .fl-accordion-button-icon-left, 
		.tp-accordion .fl-accordion-button-icon-right {
			opacity: 1;
		}

	/* General - Links */

		.fl-rich-text p a {
			font-weight: 600;
			text-decoration: underline;
		}

		.tp-accordion p a {
			color: var(--color-green) !important;
			font-weight: 600;
			text-decoration: underline;
		}

	/* General - Tags */

		.tp-tag h4 span {
			background-color: var(--color-green);
			padding: 5px 6px;
			font-size: 14px;
		}

	/* General - Posts Featured Image */

		.featured-image-post img {
			width: 100%;
			height: 100%;
			object-fit: cover;
		}

		.featured-image-post .fl-bg-embed-code::before {
			content: "";
			position: absolute;
			width: 100%;
			height: 100%;
			background: #000000;
			opacity: 0.32;
		}

	/* General - Buttons */

		.fl-button,
		.pp-more-link-button {
			border-radius: 99px !important;
			padding: 15px 20px !important;
			transition: 600ms !important;
		}

		.fl-button-icon {
			display: inline-flex;
		}

/* Header */

	/* Header - Contact & Information */

		.fl-page-bar-text {
			font-size: 14px;
		}

		.fl-page-bar-text-1 span {
			padding-right: 5px;
			font-weight: 600;
		}

		.fl-page-bar-text-1 span::after {
			content: "|";
			color: var(--color-green-lighter);
			padding-left: 5px;
		}

		.fl-page-bar-text-1 span:last-child::after {
			content: none;
		}

		.fl-page-bar-text-2 span {
			margin: 0px 10px;
		}

		.fl-page-bar-text-2 .header-contact::before {
			color: var(--color-green-lighter);
			font-size: 11px;
		}

		.fl-page-bar-text-2 a {
			font-weight: 600;
		}

		.contact-email {
			white-space: nowrap;
		}

	/* Header - Main Menu */

		#header-main-menu .pp-advanced-menu .pp-menu-toggle {
			right: 0px !important;
		}

		/* #header-main-menu .pp-advanced-menu-horizontal.pp-toggle-arrows .pp-menu-toggle,
		#header-main-menu .pp-advanced-menu-horizontal.pp-toggle-none .pp-menu-toggle {
		margin: -5px -15px 0 0 !important;
		} */

		#menu-main-menu-1 .services-menu-subs {
			display: none;
		}

	/* Header - Services Menu */

		#header-services-menu span::after {
			content: "|" !important;
			color: var(--color-green);
			margin: 0 10px 0 10px;
			font-weight: 500;
		}

		#header-services-menu #menu-item-663 span::after {
			content: "" !important;
			margin: 0;
		}


		#header-services-menu .current-menu-item a {
			color: var(--color-green);
			font-weight: 700;
		}

	/* Header - Burger Menu */

		#menu-main-menu-2 .services-menu-nosubs {
			display: none;
		}

		.fl-node-i7ylmf064o8g .pp-advanced-menu.off-canvas .menu {
			padding-top: 30px !important;
			padding-right: 15px !important;
			padding-bottom: 50px;
			padding-left: 15px !important;
		}

		.fl-node-i7ylmf064o8g .pp-advanced-menu.off-canvas .menu li a,
		.fl-node-i7ylmf064o8g .pp-advanced-menu.off-canvas .menu li .pp-has-submenu-container a {
			text-align: left;
		}

		.fl-node-i7ylmf064o8g .pp-advanced-menu.off-canvas .sub-menu > li > a,
		.fl-node-i7ylmf064o8g .pp-advanced-menu.off-canvas .sub-menu > li > .pp-has-submenu-container > a {
			padding-left: 20px !important;
		}

		.fl-node-i7ylmf064o8g .pp-advanced-menu.off-canvas .sub-menu > li > a::before,
		.fl-node-i7ylmf064o8g .pp-advanced-menu.off-canvas .sub-menu > li > .pp-has-submenu-container > a::before {
			content: "-" !important;
			color: var(--color-green) !important;
			margin-right: 6px !important;
		}

	/* Header - Sticky Menu */

		.fl-page-header-fixed .services-menu-nosubs {
			display: none !important;
		}

		.fl-page-nav ul.sub-menu {
			/*left: 0;*/
			border-top: 5px solid var(--color-green-lighter);
			border-radius: 10px;
		}

		.fl-page-nav ul.sub-menu li a {
			font-size: 16px;
			font-weight: 600;
			text-transform: capitalize;
		}

/* Sidebar */

	/* Sidebar - Services Menu */

		.tp-sidebar-menu .fl-menu li {
			width: 100%;
			margin: 5px 0;
		}

		.tp-sidebar-menu .fl-menu li a {
			font-size: 18px;
			font-weight: 600;
			text-decoration: none;
			color: var(--color-green-darker);
			background-color: #ffffff;
			border: 2px solid var(--color-green-darker) !important;
			border-radius: 99px;
			transition: 200ms;
			padding: 18px 20px;
		}

		.tp-sidebar-menu .fl-menu li a:hover {
			color: #ffffff;
			background-color: var(--color-green);
			border: 2px solid var(--color-green) !important;
		}

		.page-id-63 .tp-sidebar-menu #menu-item-135 a, 
		.page-id-64 .tp-sidebar-menu #menu-item-134 a, 
		.page-id-65 .tp-sidebar-menu #menu-item-133 a, 
		.page-id-66 .tp-sidebar-menu #menu-item-132 a, 
		.page-id-67 .tp-sidebar-menu #menu-item-131 a {
			color: #ffffff;
			background-color: var(--color-green);
			border: 2px solid var(--color-green) !important;
		}

/* Homepage */

	/* Homepage - Services Row */

		.homepage-service-tile .fl-callout-photo img {
			border-radius: 10px;
			height: 500px;
			max-height: 250px;
			object-fit: cover;
		}

		.homepage-service-tile .fl-photo-content a::before {
			content: "";
			position: absolute;
			width: 100%;
			height: 100%;
			background: rgb(18,18,18);
			background: linear-gradient(0deg, rgba(18,18,18,0.8) 0%, rgba(18,18,18,0) 65%);
			z-index: 1;
			border-radius: 10px;
		}

		.homepage-service-tile .fl-callout-content {
			position: relative;
		}

		.homepage-service-tile .fl-callout-title {
			position: absolute;
			bottom: 0px;
			left: 0px;
			padding: 20px;
			z-index: 2;
		}

	/* Homepage - About */
	
		/* KAMS */

			.tp-homepage-about {
				background: #f6f5f6;
			}

			.tp-homepage-about .fl-col-group-equal-height div:first-of-type {
				justify-content: flex-end;
			}

			.tp-homepage-about .fl-col-group-equal-height > div:first-child > div {
				max-width: 650px;
			}

			.fl-node-tc67n8azdkuq > .fl-col-content, 
			.fl-node-efn8jshb7qu1 > .fl-col-content {
				background: #f6f5f6;
			}

			/* Safari 10.1+ (alternate method) */

				@media not all and (min-resolution:.001dpcm)
				{ @supports (-webkit-appearance:none) {

					.tp-homepage-about .fl-col-group-equal-height div:first-of-type {
						justify-content: flex-end;
					}

				}}

		/* END KAMS */

	/* Homepage - Icons Row */

		.homepage-icon-row .pp-authorbox-image img {
			object-fit: contain;
			filter: brightness(1000%);
		}

	/* Homepage - Case Studies */

		.case-studies-home .pp-post-tile-post {
			border-radius: 10px;
		}

		.tp-cases .pp-post-filters li {
			border-radius: 99px !important;
		}

		.case-studies-home .pp-post-tile-post .pp-post-tile-category span,
		.tp-cases .pp-content-category-list a,
		.pp-content-category-list a {
			font-weight: 600;
			text-shadow: none !important;
			border-radius: 99px !important;
			background: var(--color-green) !important;
			padding: 6px 9px !important;
		}


/* TESTIMONIALS */

	/* Homepage */

		@media (min-width: 768px) {

			.home.testimonials {
				width: calc(100% + 80px) !important;
				margin-left: 140px;
				margin-bottom: 60px;
				z-index: 1;
			}

		}

	/* General */

		.testimonials {
			border-radius: 10px;
			background-color: #fff;
			margin: 20px 20px;
			box-shadow: 0px 0px 10px rgba(0,0,0,0.25);
		}

		.wrapper.testimonial {
			display: flex;
			flex-direction: row;
		}

	/* Image */

		.wrapper.testimonial .image-wrapper {
			width: 60px;
			height: 60px;
			margin-right: 30px;
			overflow: hidden;
		}

		.wrapper.testimonial .image-wrapper img {
			width: inherit;
			height: inherit;
			object-fit: contain;
			margin-right: 30px;
			filter: brightness(0) saturate(100%) invert(65%) sepia(48%) saturate(396%) hue-rotate(59deg) brightness(97%) contrast(87%);
		}

	/* Content */

		.wrapper.testimonial .content-wrapper {
			width: 100%;
		}

		.wrapper.testimonial .content-wrapper p {
			font-style: italic;
			margin-bottom: 15px;
		}

		.wrapper.testimonial .content-wrapper .name {
			font-size: 20px;
			font-weight: 800;
			color: var(--color-green);
			margin-bottom: 3px;
		}
		
		.wrapper.testimonial .content-wrapper .position {
			font-size: 16px;
			font-weight: 800;
			color: var(--color-grey-dark);
		}

		.pp-content-post-carousel .owl-theme .owl-dots .owl-dot span {
			background: var(--color-grey-light) !important;
		}

		.pp-content-post-carousel .owl-theme .owl-dots .owl-dot.active span {
			background: var(--color-green) !important;
		}

/* TESTIMONIALS */

		@media (max-width: 768px) {

			/* Homepage */
			
				.home.testimonials {
					width: calc(100% - 40px) !important;
				}

			/* General */
			
				.wrapper.testimonial {
					flex-direction: column !important;
					align-items: center;
				}
			
			/* Image */

				.wrapper.testimonial .image-wrapper {
					margin-right: 0px;
					margin-bottom: 30px;
				}
			
			/* Content */

				.wrapper.testimonial .content-wrapper {
					text-align: center;
				}
			
				.wrapper.testimonial .content-wrapper p {
					font-size: 16px;
		}
			
				.wrapper.testimonial .content-wrapper .name {
					font-size: 18px;
		}

				.wrapper.testimonial .content-wrapper .position {
					font-size: 14px;
				}
			
		}


/* Inner Pages */

	/* Inner Pages - Services */

		.tp-services .pp-post-link {
			position: relative;
		}

		.tp-services .pp-post-link::before {
			content: "";
			position: absolute;
			width: 100%;
			height: 100%;
			background: rgb(18,18,18);
			background: linear-gradient(0deg, rgba(18,18,18,0.8) 0%, rgba(18,18,18,0) 80%);
			z-index: 1;
			border-radius: 10px;
		}

		.tp-services .fl-photo img {
			max-height: 250px;
		}

		.tp-services .pp-content-post .pp-content-body {
			position: absolute;
			bottom: 0px;
			left: 0px;
			padding: 0px 20px 20px 20px;
			z-index: 1;
		}

		.tp-service-case {
			background: #f6f5f6;
		}

		.tp-service-case .fl-col-group-equal-height div:first-of-type {
			justify-content: end;
		}

		.tp-service-case .fl-col-group-equal-height > div:first-child > div {
			max-width: 650px;
		}

		.fl-builder-content .tp-service-case .fl-button-group .fl-button-group-buttons {
			float: left !important;
		}

		.services-cases .pp-content-post .pp-content-body {
			display: flex !important;
			flex-direction: column-reverse !important;
		}

		.services-cases .pp-content-grid-post .pp-content-category-list,
		.services-cases .pp-content-carousel-post .pp-content-category-list  {
			margin-top: 0px;
			padding-top: 0px;
			border-top: none;
			margin-bottom: 8px;
		}

		.services-cases .pp-content-post .pp-post-meta a {
			border-radius: 99px;
			background-color: var(--color-green);
			padding: 6px 9px;
			pointer-events: none;
		}

		.services-cases .pp-content-post .pp-post-meta a:hover {
			text-decoration: none;
		}

	/* Inner Pages - Case Studies */

		.tp-cases .pp-content-post .pp-content-body {
			display: flex !important;
			flex-direction: column-reverse !important;
		}

		.tp-cases .pp-content-grid-post .pp-content-category-list,
		.tp-cases .pp-content-carousel-post .pp-content-category-list {
			border-top: none;
			padding-top: 0;
			margin-bottom: 6px;
		}

		.tp-cases .pp-content-post .pp-post-meta a {
			background-color: var(--color-green);
			padding: 4px 6px;
			pointer-events: none;
		}

		.tp-cases .pp-content-post-meta {
			padding-bottom: 0;
		}

	/* Inner Pages - Team Page */

		.single .category-team-member .fl-row-bg-color .fl-row-content-wrap {
			background: var(--color-green);
		}

		.single .category-team-member h2.fl-heading .fl-heading-text {
			color: var(--color-green-darker) !important;
		}

		.single .category-team-member h3.fl-heading .fl-heading-text {
			color: var(--color-green-lighter) !important;
		}

		.tp-team .fl-photo img {
			height: 260px !important;
			object-fit: cover !important;
			border-radius: 10px;
		}

		.hiddem {
			display: none;
		}

		.team-page-thumb img {
			border-radius: 10px;
		}

		.pp-image-carousel .pp-carousel-image-container figure.use-as-background .swiper-slide-image {
			object-fit: contain !important;
		}

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

			.team-page-btn a {
				width: 100%;
				text-align: center;
			}

		}

	/* Inner Pages - News */

		.tp-news .pp-content-post-data {
			display: flex;
			flex-direction: column-reverse;
		}

		.tp-news .pp-content-post-meta {
			padding-bottom: 0;
		}

/* Footer */

	.tp-footer {
		border-top: 8px solid var(--color-green-lighter);
		font-size: 16px;
	}

	.tp-footer a {
		color: var(--color-white) !important;
	}

	.fl-page-footer {
		border-top: 1px solid var(--color-white) !important;
	}

	/* Footer - Contact Details*/

		.footer-details .tp-phone-icon::before, 
		.footer-details .tp-email-icon::before, 
		.footer-details .tp-address-icon::before {
			color: var(--color-white);
			text-indent: 20px;
			margin-left: -24px;
		}

		.footer-details ul {
			padding-left: 0;
			color: #ffffff;
			list-style: none;
		}

		.footer-details li {
			padding: 5px 0px;
		}

		.footer-details a {
			font-weight: bold;
			text-decoration: underline;
		}

		.footer-details a,
		.footer-details b {
			color: var(--color-white);
		}

	/* Footer - Menus*/

		.footer-menu .menu-item-text {
			text-indent: 20px;
			margin-left: -24px;
		}

		.footer-menu .menu-item-text::before {
			content: "\e5cc";
			font-family: 'Material Icons';
			margin-right: 5px;
			color: var(--color-white);
		}

	/* Footer - Copyright & Extra */

		.fl-page-footer-text {
			font-size: 16px;
		}

		.fl-page-footer-text-2 {
			color: var(--color-white);
		}

		.fl-page-footer-text-2 a {
			padding: 0px 6px;
			font-weight: 600;
		}

/* Contact Forms */

	/* Contact Forms - Banner */

		.video-banner-form {
			border-top: 10px solid var(--color-green-lighter);
			border-radius: 10px;
		}

		.video-banner-form .fl-col-content {
			border-radius: 0px 0px 10px 10px;
		}

		.fa-icon {
			position: absolute;
			color: var(--color-green-lighter);
			z-index: 150;
			font-size: 16px;
			padding-left: 14px;
			padding-top: 14px;
		}

		.wpcf7-form input[type="text"],
		.wpcf7-form input[type="number"],
		.wpcf7-form input[type="email"],
		.wpcf7-form input[type="tel"] {
			font-size: 16px;
			text-indent: 27px;
			border: 1px solid var(--color-green-darker);
			border-radius: 99px;
			background-color: #ffffff;
			color: #333333;
			padding: 10px;
		}

		.newsletter-footer-form .wpcf7-form input {
			border-radius: 99px !important;
		}

		.wpcf7 .wpcf7-textarea {
			font-size: 16px;
			text-indent: 27px;
			border: 1px solid var(--color-green-darker);
			border-radius: 24px;
			background-color: #ffffff;
			color: #333333;
			padding: 10px;
			max-width: 100%;
			min-width: 100%;
			min-height: 45px;
			/* 	padding-left: 36px; */
		}

		.wpcf7 input[type="submit"],
		.wpcf7 input[type="submit"]:hover {
			font-size: 20px !important;
			border-radius: 99px;
			padding: 15px 25px 15px 25px;
			width: 100%;
			margin-top: 5px;
			transition: 600ms;
		}

		.wpcf7 input:active[type="submit"] {
			background: var(--color-green);
		}

		.contact .wpcf7-list-item {
			font-size: 15px;
			margin-left: 0;
		}

	/* Contact Forms - Footer Newsletter */

		.newsletter-footer-form .fa-icon {
			color: var(--color-green-lighter);
		}

		.newsletter-footer-form .wpcf7-form input[type="text"],
		.newsletter-footer-form .wpcf7-form input[type="email"]{
			border-radius: 10px;
		}

		.newsletter-footer-form .wpcf7 input[type="submit"] {
			background-color: var(--color-green);
			background-image: linear-gradient(to right, var(--color-green) , var(--color-green-lighter));
		}

		.newsletter-footer-form .wpcf7 input:active[type="submit"] {
			background-color: var(--color-green);
			background-image: linear-gradient(to right, var(--color-green-lighter), var(--color-green));
		}

		.newsletter-footer-form .wpcf7-list-item {
			margin: 5px 0 0 0;
			font-size: 14px;
			color: #ffffff;
		}

		.newsletter-footer-form .wpcf7-list-item a {
			text-decoration: underline;
		}


@media only screen and (max-width: 768px) {
	
	/* Header */

		/* Header - Contact & Information */
	
			.fl-page-bar-text-1 {
				display: none;
			}

			.fl-page-bar-text-2 span {
				display: inline-block;
				margin: 4px 8px;
			}

	/* Homepage */

		/* Homepage - Services Row */

			.homepage-service-tile .fl-callout-photo img {
				height: 150px;
			}

			.tp-intro-services .fl-col-small:not(.fl-col-small-full-width) {
				max-width: 100% !important;
			}

			.tp-intro-services .fl-callout-photo-above-title .fl-photo {
				margin-bottom: 0px !important;
			}
	
		/* Homepage - About */

			.tp-homepage-about .fl-col-small:not(.fl-col-small-full-width) {
				max-width: 100% !important;
			}

			.tp-homepage-about .fl-col-group-equal-height div:first-of-type {
				justify-content: center;
			}
	
}

@media (min-width: 992px ) {
	
	/* Sticky Menu */
	
		.fl-page-nav-right .fl-page-nav-wrap .navbar-nav li>a {
			font-weight: 800;
			color: var(--color-black);
		}
	
		.fl-page-nav-right .fl-page-nav-wrap .navbar-nav li>a:hover,
		.fl-page-nav-right .fl-page-nav-wrap .navbar-nav li>a:focus {
			color: var(--color-green) !important;
		}
	
}