/*
Theme Name: Flatsome Child
Description: This is a child theme for Flatsome Theme
Author: UX Themes
Template: flatsome
Version: 3.0
*/

/*************** ADD CUSTOM CSS HERE.   ***************/

/* global */

:root {
		--pp-bg-color: #131121;
		--pp-color-cyan: #00bbec;
		--pp-color-blue: #3150aa;
		--pp-color-purple: #9d6ba8;
		--pp-color-turquoise: #31b9b1;
}

.pp_paddingless-bottom {
		padding-bottom: 0px!important;		
}

.pp_rowBackdrop {
		background-color: white;
		border-radius: 20px;
		padding-top: 30px;
		padding-bottom: 10px;
}

.pp_textWhite p,
.pp_textWhite h5,
.pp_textWhite ul {
		color: white!important;
}

.pp_longBullet p:before {
		content: '';
		display: inline-block;
		width: 50px;
		height: 12px;
		background: var(--fs-color-primary);
		border-radius: 10px;
		margin-right: 10px;
}



/* header */

/* hide logo while showing logo animation */
/*
.home .transparent .logo {
		display: none;
}
*/

/* header animation */
.pp_blendMode video {
		mix-blend-mode: screen;
}

div.section-content:has(div.pp_blendMode) {
	z-index: unset;
}
/* end of header animation */

.shade-top {
		background: linear-gradient(180deg,var(--pp-bg-color) 0,transparent 100%);
		opacity: 1.0;
}

#header:not(.transparent) #masthead {
		box-shadow: 0px 0px 50px var(--pp-bg-color);
}

section.pp_header {
		padding-top: 0px!important;
		padding-bottom: 0px!important;
}

video.pp_video {
		margin-bottom: -6px;
		margin-left: 50%;
		transform: translateX(-50%);
}

section.pp_header div.section-content.relative {
		position: initial!important;
}



/* blurb */

.marginless > p {
		margin-bottom: 0px;
}

.pp_blurb p {
 	   color: white;
}

.pp_blurb,
.pp_blurb div {
		padding-bottom: 0px;
}

.pp_blurb a {
		color: var(--fs-color-primary);
/*
    	text-decoration: underline;
		text-decoration-thickness: 1px;
    	text-underline-offset: 7px;
		text-decoration-color: white;
*/
}

.pp_blurb a:hover {
    	color: var(--fs-color-primary);
    	text-decoration: underline;
	    text-underline-offset: 7px;
		text-decoration-color: var(--fs-color-primary);
		text-decoration-thickness: 2px;
}

.pp_blurb .row-divided>.col+.col:not(.large-12) {
		border-left: 1px solid #ffffff44;
}



/* footer 2 */

.footer-2 h3 {
		color: var(--fs-color-primary)!important;
}



/* pp_titleBubble */

.pp_titleBubble {
		text-align: left!important;
		margin-top: 10px;
		margin-bottom: 10px;
		margin-left: -70px;
}

.pp_titleBubble h2,
.pp_titleBubble h1 {
		font-size: 2.7rem;
		color: white!important;
		text-transform: uppercase;
		display:inline; 
		border-radius: 50px;
		background-color: var(--fs-color-primary);
		padding: 6px 70px 9px 70px;
}



/* pp_iconBox */

.pp_iconBox .icon-box-img {
		margin-bottom: 0px;
}

.pp_iconBox h5 {
		font-size: 2.2rem;
		line-height: 2.4rem;
		color: black;
		text-transform: initial;
		letter-spacing: initial;
		margin-bottom: 0.8em;
}

.pp_iconBox p,
.pp_services p {
		font-size: 1.2rem;
		line-height: 1.5rem;
		color: black;
}

.pp_iconBox p:before
 {
		content: '';
		display: inline-block;
		width: 50px;
		height: 12px;
		background: var(--fs-color-primary);
		border-radius: 10px;
		margin-right: 10px;
}



/* pp_story */

.pp_story .pp_lead p
 {
		font-size: 1.45rem;
		line-height: 1.6rem;
		padding-right: 15px;
		padding-left: 15px;
		color: black;
		border-left: 2px solid var(--fs-color-primary);
}

.pp_story div.pp_alignLeadToIconBox {
		margin-top: 135px;
}



/* pp_titleColorBubble */

.pp_titleColorBubble h3 {
		color: white!important;
		font-size: 1.5rem;
		line-height: 1;
		text-transform: uppercase!important;
		display:table-cell; 
		border-radius: 50px;
		background-color: var(--fs-color-primary);
		padding: 5px 30px 6px 30px;
}

.pp_titleColorBubble h3:hover {
		background-color: var(--fs-color-primary)!important;
}

.pp_titleColorBubble p {
		font-size: 1.2rem;
		line-height: 1.5rem;
		color: black;
		margin-top: 1rem;
}

.pp_color_cyan h3,
.pp_color_cyan h2,
.pp_color_cyan h1 {
		background-color: var(--pp-color-cyan)!important;
}

.pp_color_blue h3,
.pp_color_blue h2,
.pp_color_blue h1  {
		background-color: var(--pp-color-blue)!important;
}

.pp_color_purple h3,
.pp_color_purple h2,
.pp_color_purple h1 {
		background-color: var(--pp-color-purple)!important;
}

.pp_color_turquoise h3,
.pp_color_turquoise h2,
.pp_color_turquoise h1 {
		background-color: var(--pp-color-turquoise)!important;
}



/* pp_statement */

.pp_statement p {
		font-family: "Barlow Condensed";
		font-size: 2.2rem;
		line-height: 2.2rem;
}

.pp_statement strong {
		color: var(--fs-color-primary);
}



/* pp_opening */

.pp_opening p {
		font-size: 1.45rem;
		line-height: 1.6rem;
		margin: 0;
}

.pp_opening strong {
		color: var(--fs-color-primary);
}



/* pp_boxes */

.pp_boxes p {
		aspect-ratio: 1;
		margin: 0;
		padding: 20px;
		font-family: "Barlow Condensed";
		font-size: 2rem;
		line-height: 2rem;
}

.pp_boxes_color1 p {
		background-color: color-mix(in srgb, var(--fs-color-primary) 100%, black 40%);
}

.pp_boxes_color2 p {
		background-color: color-mix(in srgb, var(--fs-color-primary) 100%, black 80%);
}

.pp_boxes_color3 p {
		background-color: color-mix(in srgb, var(--fs-color-primary) 100%, black 10%);
}



/* pp_iconBox_download */

.pp_iconBox_download .icon-box-img {
		margin-left: -10px;
		margin-bottom: 0px;
}

.pp_iconBox_download h5 {
		font-size: 2.2rem;
		line-height: 2.4rem;
		color: white!important;
		text-transform: initial;
		letter-spacing: initial;
		margin-bottom: 0.4em;
}

.pp_iconBox_download p {
		font-size: 1.2rem;
		line-height: 1.6rem;
		color: white;
		margin-bottom: 25px!important;
}

.pp_iconBox_download .pp_download_button {
		margin-bottom: 0;
}



/* contact */

.footer-2 .row-dashed .col:after,
.footer-2 .row-solid .col:after {
		border-bottom: 0px dashed #ddd;
}



/* portfolio element */

.portfolio-box .box-image {
		border-radius: 20px!important;
}



/* portfolio archive: grid fix */

/*
.portfolio-archive h6 {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
*/

.portfolio-archive .box-text-inner {
		min-height: 60px;
}

.portfolio-archive .box-text,
.portfolio-single-page .box-text {
		font-size: 1.15em;
}



/* portfolio single page */

.portfolio-single-page .featured_item_cats {
		margin-bottom: 0px;
}

.portfolio-single-page h1.entry-title {
		text-transform: none;
		letter-spacing: initial;
		font-size: 2.2rem;
		line-height: 2.3rem;
		margin-bottom: 50px;
}

.pp_singleRef_left h4 {
		text-transform: uppercase;
		color: var(--fs-color-primary);
		margin-bottom: 5px;
}

.pp_singleRef_left p {
		font-size: 1.2rem;
		line-height: 1.4rem;
		margin-bottom: 10px;
}

.pp_techData {
		margin-bottom: 30px;
}

.pp_serviceDesc_content {
		padding-left: 18px;
}

.pp_serviceDesc_content p:before {
		content: '';
		display: inline-block;
		width: 8px;
		height: 8px;
		background: var(--fs-color-primary);
		margin-right: 10px;
		margin-left: -18px;
		margin-bottom: 2px;
}

.pp_singleRef_right_card {
		background: url(https://localhost/proplan/wp-content/uploads/2025/10/back_blur_1.jpg) rgba(255, 255, 255, 0.85);
		background-size: cover;
 		background-blend-mode: overlay;
		border-radius: 20px;
		padding: 20px;
}

.pp_singleRef_right h4 {
		color: var(--fs-color-primary);
		text-transform: uppercase;
		margin-bottom: 0px;
}

.pp_singleRef_right p {
		font-weight: 600;
		font-size: 1rem;
		line-height: 1rem;
		margin-bottom: 10px;
		color: black;
}

.portfolio-single-page .next-prev-nav a {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

#portfolio-content img {
		border-radius: 5%;
}



/* pp_ourLeadership */

.pp_ourLeadership .person-title {
		display: inline-block;
		line-height: 1rem;
		padding-top: 5px;
}



/* pp_ourTeam */

.pp_squareBullets {
		padding-left: 18px;
		padding-right: 40px;
}

.pp_ourTeam .pp_squareBullets p {
		margin-top: 10px;
		margin-bottom: 0;
		font-size: 1.2rem;
		line-height: 1.4rem;
}

.pp_ourTeam .pp_squareBullets p:first-of-type {
		margin-top: 16px;
}

.pp_ourTeam .pp_squareBullets p:before {
		content: '';
		display: inline-block;
		width: 8px;
		height: 8px;
		margin-right: 10px;
		margin-left: -18px;
		margin-bottom: 2px;
}

.pp_ourTeam .pp_color_cyan p:before {
				background: var(--pp-color-cyan);
}

.pp_ourTeam .pp_color_blue p:before {
				background: var(--pp-color-blue);
}

.pp_ourTeam .pp_color_purple p:before {
				background: var(--pp-color-purple);
}

.pp_ourTeam .pp_color_turquoise p:before {
				background: var(--pp-color-turquoise);
}



/* pp_contactUs */

.pp_contactUs p {
		font-size: 2.7rem;
		line-height: 2.7rem;
}



/* pp_ourOffices */

.pp_ourOffices h4 {
		color: var(--fs-color-primary);
		text-transform: uppercase;
		margin-bottom: 5px;
		font-size: 1.4rem;
}

.pp_ourOffices p {
		font-weight: 600;
		font-size: 1rem;
		line-height: 1rem;
		margin-bottom: 10px;
}

.pp_ourOffices .row-solid .col-inner {
		padding: 0 15px 0 15px;
}



/* pp_companyInfo */

.pp_companyInfo h4 {
		color: var(--fs-color-primary);
		text-transform: uppercase;
		margin-bottom: 0px;
		font-size: 1.2rem;
}

.pp_companyInfo h4:not(:first-child) {
		margin-top: 20px;
}

.pp_companyInfo p {
		font-weight: 600;
		font-size: 1rem;
		line-height: 1rem;
		margin-bottom: 10px;
}

.pp_companyInfo .row-solid .col-inner {
		padding: 0 15px 0 15px;
}



/* pp_privacyPolicy */

.pp_privacyPolicy h4 {
		color: var(--fs-color-primary);
		text-transform: uppercase;
		margin-bottom: 0px;
		font-size: 1.2rem;
		line-height: 1.2rem;
}

.pp_privacyPolicy p {
		font-weight: 400;
		font-size: 1.2rem;
		line-height: 1.4rem;
		margin-bottom: 10px;
}

.pp_privacyPolicy ul {
		margin-bottom: 0;
		line-height: 1.2rem;
}

.pp_privacyPolicy li {
		line-height: 1.2rem;
		font-size: 1.2rem;
}



/* pp_titleBubbleSmall */

.pp_titleBubbleSmall {
		text-align: left!important;
		margin-top: 10px;
		margin-bottom: 10px;
}

.pp_titleBubbleSmall h2 {
		font-size: 2rem;
		color: white!important;
		text-transform: uppercase;
		display:inline; 
		border-radius: 50px;
		background-color: var(--fs-color-primary);
		padding: 6px 70px 9px 70px;
}



/* pp_services */

.pp_services div.pp_lead.text {
		border-left: 2px solid var(--fs-color-primary);
}

.pp_services .pp_lead p {
		font-size: 1.45rem;
		line-height: 1.6rem;
		padding-right: 15px;
		padding-left: 15px;
		color: black;
}

.pp_services ul {
		color: black;
		font-weight: 600;
		list-style-type: none;
}

.pp_services p:has(+ul) {
		margin-bottom: 10px!important;
}

.pp_services ul ul {
		margin: 10px 0 0 0;
		font-weight: 400;
}

.pp_services li {
	line-height: 1.2rem;
}

.pp_services li:before {
		content: '';
		display: inline-block;
		width: 8px;
		height: 8px;
		background: var(--fs-color-primary);
		margin-right: 10px;
		margin-left: -18px;
		margin-bottom: 2px;
}

.pp_services .pp_iconBox h5 {
		font-size: 2rem;
		line-height: 2rem;
		color: black;
		text-transform: initial;
		letter-spacing: initial;
		margin-bottom: 0.8em;
}

.pp_services .pp_iconBox_2lines .pp_iconBox h5 {
		min-height: 64px;
}

.pp_services .pp_headline h4 {
		color: var(--fs-color-primary);
		font-size: 1.4rem;
		line-height: 1.4rem;
		text-transform: uppercase;
		letter-spacing: initial;
		margin-bottom: 0.1em;
}



/* pp_claims */

div.pp_claims.pp_alignLeadToIconBox {
		margin-top: 125px;
}



/* pp_commissioning */

div.pp_commissioning.pp_alignLeadToIconBox {
		margin-top: 157px;
}









@media only screen and (max-width: 48em) {
/*************** ADD MOBILE ONLY CSS HERE  ***************/


}