/*
Theme Name: Total Child Theme
Theme URI: https://your-site.com
Description: Your site description. Go to Appearance > Editor to modify this file.
Author: Your Name
Author URI: https://your-site.com
Template: Total
Version: 1.0
*/


/* ==========================================================================
   Fonts
   ========================================================================== */

@font-face {
	font-family: 'Metric';
	src: url('fonts/metric-regular.woff2') format('woff2');
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: 'Metric Semibold';
	src: url('fonts/metric-semibold.woff2') format('woff2');
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: 'Metric Bold';
	src: url('fonts/metric-bold.woff2') format('woff2');
	font-style: normal;
	font-display: swap;
}


/* ==========================================================================
   Base
   ========================================================================== */

body {
	font-family: 'Metric' !important;
	color: #111 !important;
}

#main img:not(.logo-img):not(.vcex-icon-box-image) {
	border-radius: 15px !important;
}

#main figure.energyLogo img,
#main figure.energyLogo .vcex-image-img,
#main .energyLogo img.vcex-image-img {
	border-radius: 0 !important;
}

#main .flatBottom img {
	border-radius: 15px 15px 0 0 !important;
}

:root {
	--wpex-vc-column-inner-margin-bottom: 100px;
	!important;
}

.vcex-icon-box-symbol img {
	border-radius: 0 !important;
}

#main .flatBottom .vc_single_image-wrapper {
	margin-bottom: 0 !important;
}


/* ==========================================================================
   Typography
   ========================================================================== */

h1,
h1.vcex-heading {
	font-family: 'Metric Bold' !important;
	font-size: 52px;
	line-height: 1.06em !important;
	margin-bottom: 30px !important;
	color: #0F329B !important;
}

h2,
h2.vcex-heading {
	font-family: 'Metric Bold' !important;
	font-size: 40px;
	line-height: 1.06em !important;
	margin-bottom: 30px !important;
	color: #0F329B !important;
}

h3,
h3.vcex-heading {
	font-family: 'Metric Bold' !important;
	font-size: 33px;
	line-height: 1.12em !important;
	margin-bottom: 30px !important;
	color: #0F329B !important;
}

h4,
h4.vcex-heading {
	font-family: 'Metric Bold' !important;
	font-size: 27px;
	line-height: 1.13em !important;
	margin-bottom: 30px !important;
	color: #0F329B !important;
}

h5,
h5.vcex-heading {
	font-family: 'Metric Bold' !important;
	font-size: 23px;
	line-height: 1.15em !important;
	margin-bottom: 30px !important;
	color: #0F329B !important;
}

.removeTitlePad h4,
.removeTitlePad h4.vcex-heading {
	margin-bottom: 5px !important;
}

p {
	font-size: 1.125em !important;
}

blockquote {
	background: url(/wp-content/uploads/2026/04/quotemark.svg) left 4px no-repeat;
	padding-left: 220px !important;
	font-size: 32px !important;
	color: #333 !important;
	line-height: 38px !important;
	min-height: 200px !important;
}

blockquote .quoteName {
	color: #0F329B !important;
	font-size: 21px !important;
}

blockquote::before {
	display: none !important;
}

#main ul {
	list-style: none !important;
	padding-left: 0 !important;
	margin-left: 0 !important;
}

#main ul li {
	padding-left: 20px !important;
	position: relative !important;
	margin-bottom: 15px !important;
	font-size: 1.125em !important;
}

#main ul li::before {
	content: "•" !important;
	color: #006D95 !important;
	position: absolute !important;
	left: 0 !important;
	top: 0 !important;
	line-height: inherit !important;
}

h4.subHead {
	margin-top: -20px !important;
}

h1.white .vcex-heading-inner,
h2.white .vcex-heading-inner,
h3.white .vcex-heading-inner,
h4.white .vcex-heading-inner,
h5.white .vcex-heading-inner,
.white,
.white p {
	color: #fff !important;
}

h1.blue .vcex-heading-inner,
h2.blue .vcex-heading-inner,
h3.blue .vcex-heading-inner,
h4.blue .vcex-heading-inner,
h5.blue .vcex-heading-inner,
.blue,
.blue p {
	color: #fff !important;
}


/* ==========================================================================
   Layouts
   ========================================================================== */

.padTop {
	padding-top: 100px !important;
}

.padTopBig {
	padding-top: 150px !important;
}

.padBottomSmall {
	padding-bottom: 40px !important;
}

.blockPad {
	padding: 40px 25px 0 25px !important;
	border-bottom-left-radius: 15px;
	border-bottom-right-radius: 15px;
}


/* ==========================================================================
   Navigation
   ========================================================================== */

#site-navigation {
	font-family: 'Metric Semibold' !important;
}

#site-navigation .main-navigation-ul a .link-inner {
	font-size: 18px !important;
	color: #0F329B !important;
}

#site-navigation .main-navigation-ul a .link-inner:hover {
	color: #006d95 !important;
}

#site-header-sticky-wrapper.not-sticky #site-header.overlay-header .main-navigation-ul > li > a .link-inner {
	color: #fff !important;
}

#site-header-sticky-wrapper.not-sticky #site-header.overlay-header .main-navigation-ul > li > a .link-inner:hover {
	opacity: 0.6 !important;
}

.sub-menu {
	border-radius: 15px !important;
	padding: 10px !important;
}

.main-navigation-ul .sub-menu .menu-item a {
	border-block-end: none !important;
}

.main-navigation-ul .sub-menu .menu-item a:hover {
	background: none !important;
}

#site-navigation-wrap {
	--wpex-dropmenu-bg: #f0f0f0;
	--wpex-dropmenu-caret-bg: #f0f0f0;
}

.menuContact .link-inner {
	background-color: #006d95 !important;
	border-radius: 5px !important;
	padding-left: 20px !important;
	padding-right: 20px !important;
	height: 45px !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	color: #fff !important;
}

.menuContact .link-inner:hover {
	background-color: #0F329B !important;
}

#site-header-sticky-wrapper.not-sticky #site-header.overlay-header .main-navigation-ul > li.menuContact > a .link-inner:hover {
	opacity: 1 !important;
}

#site-navigation .main-navigation-ul li.menuContact a .link-inner,
#site-navigation .main-navigation-ul li.menuContact a:hover .link-inner {
	color: #fff !important;
}

a.menuContact .link-inner:hover {
	color: #fff !important;
}

#sidr-main {
	background-color: #0F329B;
	color: #fff;
	--wpex-link-color: #fff;
	--wpex-text-2: #fff;
	--wpex-hover-link-color: #fff;
}

.wpex-mobile-menu .wpex-open-submenu {
	width: 100% !important;
}


/* ==========================================================================
   Buttons
   ========================================================================== */

.theme-button {
	background: none !important;
	color: #0F329B !important;
	font-size: 18px !important;
	font-weight: 800 !important;
	padding: 0 !important;
	margin-bottom: 40px !important;
	margin-top: 20px !important;
	font-family: 'Metric Semibold' !important;
	/* Make text + arrow sit in one row */
	display: inline-flex !important;
	align-items: center;
}

.theme-button::after {
	content: "" !important;
	margin-left: 12px !important;
	/* Arrow as a small inline icon */
	width: 26px;
	height: 26px;
	background-image: url("/wp-content/uploads/2026/04/link-arrow.svg");
	background-repeat: no-repeat;
	background-size: contain;
	background-position: center;
	transition: transform 0.3s ease-out;
}

.theme-button:hover::after {
	transform: translateX(-4px);
}

.theme-button:hover {
	color: #006D95 !important;
	cursor: pointer !important;
}

.theme-button.largeButton {
	font-size: 24px !important;
}

.theme-button.buttonPad {
	margin-right: 25px !important;
}

.theme-button.white {
	background: none !important;
	color: #fff !important;
	font-size: 18px !important;
	font-weight: 800 !important;
	padding: 0 !important;
	margin-bottom: 40px !important;
}

.theme-button.white::after {
	background-image: url("/wp-content/uploads/2026/04/arrow-link-light.svg") !important;
}

.theme-button.white:hover {
	color: #40b9e5 !important;
}

.backBut.theme-button::before {
	display: inline-block;
	content: url("/wp-content/uploads/2026/04/back-arrow.svg") !important;
	margin-right: 12px !important;
	position: relative !important;
	top: 4px !important;
	transition: transform 0.3s ease-out;
}

.backBut.theme-button::after {
	display: none !important;
}

.backBut.theme-button:hover {
	transform: translateX(-4px);
}

.widebut {
	width: 100% !important;
}

.theme-button.solid {
	background-color: #0F329B !important;
	color: #fff !important;
	font-size: 18px !important;
	padding: 11px 10px 11px 25px !important;
	margin-bottom: 40px !important;
	border-radius: 5px !important;
	text-align: center !important;
	min-width: 225px !important;
}

.theme-button.solid::after {
	background-image: url("/wp-content/uploads/2026/04/link-arrow-white.svg") !important;
	margin-left: auto !important;
}

.salesServiceButtons .theme-button.solid {
	margin-bottom: 0 !important;
}

.theme-button.solid:hover {
	background-color: #006D95 !important;
	cursor: pointer !important;
}

.theme-button.download {
	background-color: #0F329B !important;
	color: #fff !important;
	padding: 10px 0 8px 25px !important;
	margin-bottom: 15px !important;
	border-radius: 5px !important;
	text-align: left !important;
}

.theme-button.download::after {
	content: url("https://petem85.sg-host.com/wp-content/uploads/2026/04/download.svg") !important;
	margin-left: 12px !important;
	padding-top: 0 !important;
	position: relative !important;
	top: 1px !important;
	float: right !important;
	right: 20px !important;
	transition: transform 0.3s ease-out;
}

.theme-button.download::after {
	background-image: none !important;
	width: auto !important;
	height: auto !important;
	margin-left: auto !important;
	margin-right: 0 !important;
}

.theme-button.download:hover {
	background-color: #006D95 !important;
}


/* ==========================================================================
   Page Headers
   ========================================================================== */

.default-page-header {
	background-color: #0F329B !important;
	padding-top: 40px !important;
}

.page-header-content {
	width: 70% !important;
}

h1.page-header-title {
	color: #fff !important;
	text-align: left !important;
}

.page-subheading {
	font-size: 24px !important;
	line-height: 26px !important;
	text-align: left !important;
}

.page-header {
	margin-bottom: 80px !important;
}

.page-header h1 {
	font-size: 62px !important;
}

h1.shortPageTitle {
	padding-top: 50px !important;
	padding-bottom: 50px !important;
}


/* ==========================================================================
   Image Callout Block
   ========================================================================== */

.callout {
	border-radius: 10px !important;
	padding: 80px 25px 40px !important;
	margin-bottom: 80px !important;
	margin-top: 50px !important;
}

.largeSectorCallout span {
	font-size: 70px !important;
	line-height: 70px !important;
	font-family: 'Metric Bold' !important;
	color: #0F329B !important;
}

.callout h2.vcex-heading {
	margin-bottom: 0 !important;
	padding-top: 0 !important;
	margin-top: 0 !important;
}

.callout .theme-button {
	margin-top: 0 !important;
}


/* ==========================================================================
   Icon Tiles
   ========================================================================== */

.iconTile {
	background: #DFEAF8 !important;
	border-radius: 15px;
}

.iconTile .vc_column-inner {
	margin-bottom: 0 !important;
}

.iconTileHolder > .wpb_column {
	margin-bottom: 40px !important;
}

.iconTile h2 {
	font-size: 70px !important;
	margin-top: 30px !important;
	margin-bottom: 30px !important;
	text-align: center !important;
}

.iconTile h3 {
	margin-top: 20px !important;
	margin-bottom: 15px !important;
	text-align: center !important;
	font-size: 28px !important;
}

.iconTile p {
	font-size: 21px !important;
	text-align: center !important;
}

.iconTile img {
	margin-top: -50px !important;
	width: 100px !important;
	height: 100px !important;
}

.iconTileHolder {
	margin-top: 50px !important;
}

.whiteIconTile {
	background: #fff !important;
	border-radius: 15px;
	padding-left: 10% !important;
	padding-right: 10% !important;
	padding-bottom: 30px !important;
}

.whiteIconTile h3 {
	font-size: 70px !important;
	margin-bottom: 30px !important;
	text-align: center !important;
}

.whiteIconTile img {
	margin-top: -50px !important;
	margin-bottom: 30px !important;
}

.relatedLinks {
	margin-top: 40px !important;
}

.relatedLinks h5 {
	margin-bottom: 15px !important;
}


/* ==========================================================================
   Theme Icon Boxes
   ========================================================================== */

.vcex-icon-box-text h3 {
	font-size: 33px !important;
	margin-top: 40px !important;
}


/* ==========================================================================
   Home
   ========================================================================== */

.mapTitle span {
	font-family: "Manrope", sans-serif !important;
	font-style: normal;
	font-variant: normal;
	font-weight: 700 !important;
	font-size: 64px !important;
	line-height: 65px !important;
	color: #fff !important;
	margin-bottom: 20px !important;
}

.mapRow {
	min-height: 450px !important;
}

.mapRow .theme-button {
	margin-bottom: 0 !important;
}

.homeHero {
	padding: 180px 0 40px 0;
	margin-bottom: 100px !important;
}

.homeHero h1 {
	font-size: 75px !important;
	line-height: 70px !important;
	color: #fff !important;
}

.homeHero p {
	font-family: 'Metric Semibold' !important;
	font-size: 21px !important;
}

.calloutStrip {
	padding-top: 150px !important;
	padding-bottom: 60px !important;
	margin-bottom: 80px !important;
}

.homeCoreServices h4 {
	font-family: 'Metric Semibold' !important;
}

.imageLinksLast {
	margin-bottom: 80px !important;
}

.imageLinks .theme-button {
	margin-top: 0 !important;
}

.vc_single_image-wrapper {
	margin-bottom: 10px !important;
}

.logoSlider {
	padding-top: 80px !important;
	padding-bottom: 40px !important;
}


/* ==========================================================================
   Footer
   ========================================================================== */

.footerRow {
	background-color: #3F3F3F !important;
	padding-top: 30px !important;
}

.footerRow p,
.footerRow a {
	color: #fff !important;
}

.footerRow a {
	font-weight: 800 !important;
}

.footerLogo {
	margin-bottom: 20px !important;
}

.footerLogo img {
	height: 52px !important;
	width: auto !important;
	margin-bottom: 20px !important;
}

.footerSocial {
	float: right !important;
}

.footerSocial img {
	margin-left: 10px !important;
	height: 42px !important;
	width: 42px !important;
}

.footerRightCol {
	text-align: right !important;
	padding-top: 12px !important;
}

.policyTitle {
	padding-top: 10px !important;
	padding-right: 15px !important;
}

.salesTeam {
	background-color: #0F329B !important;
	padding-top: 60px !important;
	min-height: 500px !important;
}

.footerFormHolder {
	padding-right: 10px !important;
}

.footerRowLast {
	padding-bottom: 0 !important;
	border-top: 30px solid #EFF5FB !important;
}

.footerFormHolder h3.formTitle {
	margin-bottom: 10px !important; /* adjust as needed */
}


/* ==========================================================================
   Staff Pages
   ========================================================================== */

.single-staff .wpb_text_column :last-child {
	padding-bottom: 0 !important;
}

.staff-header {
	padding-top: 100px !important;
	margin-bottom: 40px !important;
}

.staffName h1 {
	font-size: 21px !important;
}

.teamTitle {
	margin-bottom: 30px !important;
}

.teamHolder {
	padding-top: 80px !important;
}

.staff-entry-title a {
	color: #0F329B !important;
	font-size: 26px !important;
}

h4.staff-entry-title {
	margin-bottom: 7px !important;
}

.staff-entry-readmore-wrap {
	margin-top: -10px !important;
}

.page-numbers {
	text-align: center !important;
}

a.staff-entry-media img:hover {
	cursor: pointer !important;
}

.staff-entry-details {
	margin-left: 10px !important;
}

.jobTitle {
	font-size: 24px !important;
}

.staffDetail h2 {
	margin-bottom: 5px !important;
}

.staffDetail h3 {
	color: #111 !important;
	margin-top: 0 !important;
	font-family: 'Metric' !important;
	font-size: 24px !important;
}

.staff-entry-position {
	font-size: 1.125em !important;
}


/* ==========================================================================
   Our Values
   ========================================================================== */

.valueTitle {
	margin-bottom: 20px !important;
}

.valueTitle h3 {
	padding-top: 0 !important;
}

.valueTitle img {
	width: 120px !important;
}


/* ==========================================================================
   Tabs
   ========================================================================== */

body .vc_tta.vc_general.vc_tta-style-total .vc_tta-tab > a {
	background-color: #0F329B !important;
	border-radius: 15px !important;
	color: #fff !important;
	font-family: 'Metric Bold' !important;
	font-size: 21px !important;
}

body .vc_tta.vc_general.vc_tta-style-total .vc_tta-tab.vc_active > a {
	background-color: #eee !important;
	color: #0F329B !important;
}

body .vc_tta.vc_general.vc_tta-style-total .vc_tta-tab > a,
body .vc_tta.vc_general.vc_tta-style-total .vc_tta-tab.vc_active > a {
	border: 1px solid transparent !important;
	box-shadow: none !important;
}

.wpb-js-composer .vc_tta.vc_general.vc_tta-style-total h4.vc_tta-panel-title {
	background-color: #0F329B !important;
	border-radius: 5px !important;
	color: #fff !important;
	font-family: 'Metric Bold' !important;
	font-size: 21px !important;
	margin-bottom: 10px !important;
}


/* ==========================================================================
   Misc Callouts
   ========================================================================== */

.foundationCallout span {
	font-size: 32px !important;
	color: #0F329B !important;
}

.whyIntro span {
	font-family: 'Metric Bold' !important;
	font-size: 33px;
	line-height: 1.12em !important;
	margin-bottom: 30px !important;
	color: #0F329B !important;
}


/* ==========================================================================
   Icon Tile Holder Flex Layout
   ========================================================================== */

.vc_row.iconTileHolder > .wpb_column {
	display: flex;
	flex-direction: column;
}

.vc_row.iconTileHolder > .wpb_column > .vc_column-inner,
.vc_row.iconTileHolder > .wpb_column > .vc_column-inner > .wpb_wrapper,
.vc_row.iconTileHolder > .wpb_column > .vc_column-inner > .wpb_wrapper > .vc_row.vc_inner {
	display: flex;
	flex-direction: column;
	flex: 1;
}

.vc_row.iconTileHolder > .wpb_column > .vc_column-inner > .wpb_wrapper > .vc_row.vc_inner > .iconTile {
	flex: 1;
}

.iconTile {
	padding-bottom: 30px !important;
	padding-left: 20px !important;
	padding-right: 20px !important;
}


/* ==========================================================================
   Contact
   ========================================================================== */

.contactBar {
	padding-top: 50px !important;
	background-color: #F2F2F2 !important;
}

.contactBar .vc_column-inner {
	margin-bottom: 50px !important;
}

.page-id-564 .page-header {
	margin-bottom: 0 !important;
}

.contactDivide {
	margin-top: 30px !important;
	margin-bottom: 30px !important;
}

.contactBar a {
	color: #111 !important;
}

.vc_tta.vc_general ul.vc_tta-tabs-list li::before {
	display: none;
}

.callout h2.vcex-heading.ctaPullup {
	margin-top: -20px !important;
}

.loginTiles .theme-button {
	margin-bottom: 0 !important;
	margin-top: 5px !important;
}


/* ==========================================================================
   Account Menu Icon
   ========================================================================== */

.menuAccount a {
	background-image: url("/wp-content/uploads/2026/04/acc-icon.svg") !important;
	background-repeat: no-repeat !important;
	background-position: center center !important;
	background-size: contain !important;
	margin-left: 20px !important;
	min-height: 33px !important;
	width: 33px !important;
	cursor: pointer !important;
	display: block !important;
	z-index: 100 !important;
}

.menuAccount a .link-inner {
	display: none !important;
}

.overlay-header .menuAccount a {
	background-image: url("/wp-content/uploads/2026/04/acc-icon-white.svg") !important;
}

.menuAccount:hover a {
	background-image: url("/wp-content/uploads/2026/04/acc-icon-hover.svg") !important;
}

.overlay-header .menuAccount:hover a {
	background-image: url("/wp-content/uploads/2026/04//acc-icon-hover.svg") !important;
}

#site-header-sticky-wrapper.is-sticky .menuAccount a {
	background-image: url("/wp-content/uploads/2026/04/acc-icon.svg") !important;
}

#site-header-sticky-wrapper.is-sticky .menuAccount:hover a {
	background-image: url("/wp-content/uploads/2026/04/acc-icon-hover.svg") !important;
}


/* ==========================================================================
   Mobile (max-width: 767px)
   ========================================================================== */

@media (max-width: 767px) {

	h1,
	h1.vcex-heading {
		font-size: 42px;
		line-height: 1.06em !important;
		margin-bottom: 30px !important;
	}

	h2,
	h2.vcex-heading {
		font-size: 36px;
		line-height: 1.06em !important;
		margin-bottom: 30px !important;
	}

	h3,
	h3.vcex-heading {
		font-size: 33px;
		line-height: 1.12em !important;
		margin-bottom: 30px !important;
	}

	h4,
	h4.vcex-heading {
		font-size: 27px;
		line-height: 1.13em !important;
		margin-bottom: 30px !important;
	}

	h5,
	h5.vcex-heading {
		font-size: 23px;
		line-height: 1.15em !important;
		margin-bottom: 10px !important;
	}

	.homeHero h1 {
		font-size: 50px !important;
		line-height: 50px !important;
	}

	.page-header h1 {
		font-size: 45px !important;
	}

	.homeHero p {
		font-family: 'Metric Semibold' !important;
		font-size: 21px !important;
	}

	.largeSectorCallout span {
		font-size: 42px !important;
		line-height: 42px !important;
	}

	.whyIntro span {
		font-size: 30px !important;
	}

	.theme-button.solid {
		width: 100% !important;
	}

	.homeHero {
		margin-bottom: 45px !important;
	}

	:root {
		--wpex-vc-column-inner-margin-bottom: 50px;
		!important;
	}

	.padTop {
		padding-top: 50px !important;
	}

	.padTopBig {
		padding-top: 50px !important;
	}

	.calloutStrip {
		padding-top: 50px !important;
		padding-bottom: 0 !important;
	}

	.salesServiceButtons .vc_column-inner {
		margin-bottom: 0 !important;
	}

	.footerSocial {
		float: left !important;
		margin-top: 20px !important;
	}

	.footerSocial img {
		margin-left: 0 !important;
		margin-right: 15px !important;
	}

	.page-header-content {
		width: 100% !important;
	}

	blockquote {
		background-size: 70px auto !important;
		background-position: left top !important;
		padding-left: 0 !important;
		padding-top: 90px !important;
		min-height: 0 !important;
		font-size: 24px !important;
		line-height: 30px !important;
	}

	.swap-on-mobile {
		display: flex !important;
		flex-direction: column-reverse !important;
	}

	.removeBottomMob .vc_column-inner {
		margin-bottom: 0 !important;
	}

	.hideMob {
		display: none !important;
	}

	.hideMob .vc_column-inner {
		margin-bottom: 0 !important;
	}

	.callout .theme-button {
		margin-top: 30px !important;
	}

	.relatedLinks p {
		margin-bottom: 30px !important;
	}

	.industryRelatedLinks p {
		margin-bottom: 0 !important;
	}

	h2.smallTitle,
	h2.smallTitle .vcex-heading-inner {
		font-size: 30px !important;
		line-height: 1.1em !important;
	}

	.tabbedRow {
		padding-top: 0 !important;
	}

	.tabbedRow .vc_column-inner {
		margin-bottom: 20px !important;
	}

}






/* D365 Forms */

.new div[data-form-id] {
	--d365-gap: 5px;
	--d365-field-height: 55px;
	--d365-border: 2px solid #0F329B;
}


#contactFooter div[data-form-id] {
	--d365-gap: 5px;
	--d365-field-height: 55px;
	--d365-border: 2px solid #fff;
}


/* Hide form intro blocks */
.new div[data-form-id] [data-editorblocktype="Text"],
.new div[data-form-id] [data-editorblocktype="Title"] {
	display: none !important;
}

/* Table structure */
.new div[data-form-id] table {
	width: 100% !important;
	border-collapse: separate !important;
	border-spacing: var(--d365-gap) 0 !important;
	table-layout: fixed !important;
}

.new div[data-form-id] tr,
.new div[data-form-id] tbody,
.new div[data-form-id] thead {
	border: 0 !important;
	background: none !important;
	padding: 0 !important;
	margin: 0 !important;
}

.new div[data-form-id] td,
.new div[data-form-id] th {
	width: 50% !important;
	height: auto !important;
	padding: 12px 0 0 !important;
	vertical-align: bottom !important;
	background: transparent !important;
	border: 0 !important;
	box-sizing: border-box !important;
}

.new div[data-form-id] tr > td:only-child,
.new div[data-form-id] tr > th:only-child {
	width: 100% !important;
}

/* Grid fallback for non-table forms */
@supports (display: grid) {
	.new div[data-form-id] form:not(:has(table)) {
		display: grid !important;
		grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
		column-gap: var(--d365-gap);
		row-gap: 18px;
		align-items: end;
	}

	.new div[data-form-id] [class*="field"]:has(textarea),
	.new div[data-form-id] [class*="Field"]:has(textarea),
	.new div[data-form-id] [class*="field"]:has(select),
	.new div[data-form-id] [class*="Field"]:has(select),
	.new div[data-form-id] [class*="field"]:only-child,
	.new div[data-form-id] [class*="Field"]:only-child {
		grid-column: 1 / -1 !important;
	}
}

/* Field wrappers */
.new div[data-form-id] [class*="field"],
.new div[data-form-id] [class*="Field"],
.new div[data-form-id] .lp-form-field {
	float: none !important;
	width: auto !important;
	margin: 0 !important;
	padding: 0 !important;
	clear: none !important;
	display: block !important;
	box-sizing: border-box !important;
	border: none !important;
	box-shadow: none !important;
	background: none !important;
}

/* Global type */
.new div[data-form-id] * {
	box-sizing: border-box !important;
	font-family: "Metric", sans-serif !important;
	font-size: 20px !important;
	color: #0F329B !important;
}

.new div[data-form-id] label {
	display: none !important;
}

/* Inputs */
.new div[data-form-id] input[type="text"],
.new div[data-form-id] input[type="email"],
.new div[data-form-id] input[type="tel"],
.new div[data-form-id] input[type="number"],
.new div[data-form-id] input[type="date"] {
	display: block !important;
	width: 100% !important;
	height: var(--d365-field-height) !important;
	line-height: var(--d365-field-height) !important;
	padding: 0 4px !important;
	margin: 0 !important;
	border: none !important;
	border-bottom: var(--d365-border) !important;
	border-radius: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
	outline: none !important;
	font-weight: 300 !important;
	appearance: none !important;
	-webkit-appearance: none !important;
}

.new div[data-form-id] input::placeholder,
.new div[data-form-id] textarea::placeholder {
	color: #aaaaaa !important;
	font-weight: 300 !important;
	font-size: 18px !important;
}

/* Select */
.new div[data-form-id] select {
	display: block !important;
	width: 100% !important;
	height: var(--d365-field-height) !important;
	padding: 0 30px 0 4px !important;
	border: none !important;
	border-bottom: var(--d365-border) !important;
	border-radius: 0 !important;
	background: transparent url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230F329B' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E") no-repeat right 8px center / 20px !important;
	box-shadow: none !important;
	outline: none !important;
	font-weight: 300 !important;
	color: #aaaaaa !important;
	appearance: none !important;
	-webkit-appearance: none !important;
	cursor: pointer !important;
}

#contactFooter div[data-form-id] select {
	background: transparent url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23FFFFFF' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E") no-repeat right 8px center / 20px !important;
}

/* Textarea */
.new div[data-form-id] textarea {
	display: block !important;
	width: 100% !important;
	min-height: 160px !important;
	padding: 12px !important;
	margin: 0 !important;
	border: var(--d365-border) !important;
	border-radius: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
	outline: none !important;
	font-weight: 300 !important;
	resize: vertical !important;
}

/* Telephone field */
.new div[data-form-id] .phoneFormFieldBlock {
	display: block !important;
	width: 100% !important;
	height: auto !important;
	margin: 0 2px !important;
	padding: 0 !important;
	overflow: visible !important;
}

.new div[data-form-id] .phoneFormFieldBlock > *:first-child:not(input),
.phoneFormFieldBlock .phoneCountryCode {
	border: none !important;
}

/* Submit */
.new div[data-form-id] .submitButtonWrapper,
.new div[data-form-id] [class*="submitButton"],
.new div[data-form-id] [class*="submit-button"],
.new div[data-form-id] [class*="submit_button"] {
	width: 100% !important;
	margin: 12px 0 0 !important;
	padding: 0 !important;
	text-align: right !important;
	float: none !important;
	clear: both !important;
	background: transparent !important;
	border: 0 !important;
	grid-column: 1 / -1 !important;
}

.new div[data-form-id] button[type="submit"],
.new div[data-form-id] input[type="submit"] {
	all: unset !important;
	font-family: "Manrope", sans-serif !important;
	font-size: 18px !important;
	font-weight: 700 !important;
	color: #0F329B !important;
	cursor: pointer !important;
	display: inline-flex !important;
	align-items: center !important;
	padding: 10px 0 !important;
	box-sizing: border-box !important;
}

.new div[data-form-id] button[type="submit"]:hover {
	color: #F5B408 !important;
}

.new button::after {
	padding-top: 0 !important;
	top: 3px !important;
}





/* Validation */
.new div[data-form-id] [class*="error"],
.new div[data-form-id] [class*="invalid"],
.new div[data-form-id] [class*="validation"] {
	color: #e00 !important;
	font-size: 14px !important;
	display: block !important;
	margin-top: 4px !important;
}

/* Mobile */
@media (max-width: 768px) {
	.new div[data-form-id] table,
	.new div[data-form-id] tbody,
	.new div[data-form-id] tr,
	.new div[data-form-id] td,
	.new div[data-form-id] th {
		display: block !important;
		width: 100% !important;
	}
	 
	
	.new div[data-form-id] table {
		border-spacing: 0 18px !important;
	}
	

	@supports (display: grid) {
		.new div[data-form-id] form:not(:has(table)) {
			grid-template-columns: 1fr !important;
		}
	}
	
   
}

table { margin-block-end: 0 !important; }





/* Mobile */
@media (max-width: 768px) {
	.new div[data-form-id] table,
	.new div[data-form-id] tbody,
	.new div[data-form-id] tr,
	.new div[data-form-id] td,
	.new div[data-form-id] th {
		display: block !important;
		width: 100% !important;
	}

	.new div[data-form-id] table {
		border-spacing: 0 !important;
	}

	.new div[data-form-id] td,
	.new div[data-form-id] th {
		padding-top: 15px !important;
		padding-bottom: 0 !important;
	}

	/* No top padding on the first cell — avoids textarea crashing into field above */
	.new div[data-form-id] tr:first-child td,
	.new div[data-form-id] tr:first-child th {
		padding-top: 0 !important;
	}

	/* Pull submit button up tight under textarea */
	.new div[data-form-id] .submitButtonWrapper,
	.new div[data-form-id] [class*="submitButton"],
	.new div[data-form-id] [class*="submit-button"],
	.new div[data-form-id] [class*="submit_button"] {
		margin-top: 8px !important;
		padding-top: 0 !important;
	}

	/* Remove spacing from hidden spacer rows */
	.new div[data-form-id] tr:not(:has(input, select, textarea, button)) {
		display: none !important;
		padding: 0 !important;
		height: 0 !important;
	}

	@supports (display: grid) {
		.new div[data-form-id] form:not(:has(table)) {
			grid-template-columns: 1fr !important;
		}
	}
}


@media (max-width: 768px) {
	.new div[data-form-id] table,
	.new div[data-form-id] tbody,
	.new div[data-form-id] tr,
	.new div[data-form-id] td,
	.new div[data-form-id] th {
		display: block !important;
		width: 100% !important;
	}

	.new div[data-form-id] table {
		border-spacing: 0 !important;
	}

	.new div[data-form-id] td,
	.new div[data-form-id] th {
		padding-top: 15px !important;
		padding-bottom: 0 !important;
	}

	.new div[data-form-id] td:has(textarea),
	.new div[data-form-id] th:has(textarea) {
		padding-top: 0 !important;
	}

	.new div[data-form-id] textarea {
		margin-top: 15px !important;
	}

	.new div[data-form-id] .submitButtonWrapper,
	.new div[data-form-id] [class*="submitButton"],
	.new div[data-form-id] [class*="submit-button"],
	.new div[data-form-id] [class*="submit_button"] {
		margin-top: 8px !important;
		padding-top: 0 !important;
	}

	.new div[data-form-id] tr:not(:has(input, select, textarea, button)) {
		display: none !important;
		padding: 0 !important;
		height: 0 !important;
	}

	@supports (display: grid) {
		.new div[data-form-id] form:not(:has(table)) {
			grid-template-columns: 1fr !important;
		}
	}
}


@media (max-width: 768px) {
	/* Textarea inside columns-equal wrapper (most forms) */
	.new div[data-form-id] .columns-equal textarea,
	.new div[data-form-id] [class*="columns-equal"] textarea,
	.new div[data-form-id] [class*="emptyContainer"] textarea {
		margin-top: 15px !important;
	}

	/* Textarea NOT in a columns-equal wrapper (last form) */
	.new div[data-form-id] td > textarea,
	.new div[data-form-id] td > p > textarea,
	.new div[data-form-id] td > span > textarea,
	.new div[data-form-id] td > p > span > textarea {
		margin-top: 15px !important;
	}
}



.new div[data-form-id] td, .new div[data-form-id] th{padding-top:0px !important}

.new div[data-form-id] textarea{margin-top:20px !important}

.new {margin-left:-15px !important}

.onFormSubmittedFeedbackIcon{display:none !important}
.onFormSubmittedFeedbackMessage{font-size:21px !important; font-weight: 700 !important}
.new div[data-cached-form-url] .onFormSubmittedFeedback{background:none !important}


#contactFooter div[data-form-id] input[type="text"],
#contactFooter div[data-form-id] input[type="email"],
#contactFooter div[data-form-id] input[type="tel"],
#contactFooter div[data-form-id] input[type="number"],
#contactFooter div[data-form-id] input[type="date"] {
  color:#fff !important}
  
#contactFooter textarea, #contactFooter div[data-form-id] *{
  color:#fff !important}
  
#footPad{margin-bottom:20px !important}


/*----- Policies Update*/


.policyHolder .vc_tta-container{background-color:#fff !important; padding:60px 15px 15px 15px !important; border-radius:15px !important; box-shadow: 0px 1px 24px 0px rgba(0,0,0,0.51);
  -webkit-box-shadow: 0px 1px 24px 0px rgba(0,0,0,0.20);
  -moz-box-shadow: 0px 1px 24px 0px rgba(0,0,0,0.20);
margin-top:-50px !important}

.policyHolderNoIcon .vc_tta-container{background-color:#fff !important; padding:15px !important; border-radius:20px !important; box-shadow: 0px 1px 24px 0px rgba(0,0,0,0.51);
  -webkit-box-shadow: 0px 1px 24px 0px rgba(0,0,0,0.20);
  -moz-box-shadow: 0px 1px 24px 0px rgba(0,0,0,0.20);}
  
 .policyHolder .vc_tta.vc_general .vc_tta-panel-title>a {padding:12px 40px 12px 20px!important}
 


.policyHolder .vc_tta-title-text, .policyHolderNoIcon .vc_tta-title-text{font-size:18px !important; color:#111 !important; font-weight:400 !important; text-transform:none !important}

.policyHolder .vc_tta-color-grey.vc_tta-style-classic .vc_tta-controls-icon:before, .policyHolderNoIcon .vc_tta-color-grey.vc_tta-style-classic .vc_tta-controls-icon:before{border-color:#F5B408 !important}

.policyHolder .vc_tta.vc_general .vc_tta-panel, .policyHolderNoIcon .vc_tta.vc_general .vc_tta-panel, .policyHolder .vc_tta-color-grey.vc_tta-style-classic .vc_tta-panel .vc_tta-panel-body, .policyHolderNoIcon .vc_tta-color-grey.vc_tta-style-classic .vc_tta-panel .vc_tta-panel-body{background:none !important; border:none !important}

.policyHolder .vc_tta-color-grey.vc_tta-style-classic .vc_tta-panel .vc_tta-panel-heading, .policyHolderNoIcon .vc_tta-color-grey.vc_tta-style-classic .vc_tta-panel .vc_tta-panel-heading{background-color:#e9e9e9 !important; border-radius:15px !important}

.policyHolder h3{margin-top:5px !important; padding-left:5px !important; text-align:center !important; font-size:22px !important}

.policyHolder .theme-button.download, .policyHolderNoIcon .theme-button.download{margin-bottom:10px !important; margin-top:5px !important}


.small p{font-size:14px !important}



.policyHolder a.vcex-button.theme-button.download.widebut, .policyHolderNoIcon a.vcex-button.theme-button.download.widebut{
  text-align: left !important; line-height:21px !important; padding-bottom:13px !important
}

.policyHolder a.vcex-button.theme-button.download.widebut > span.vcex-button-inner,  .policyHolderNoIcon a.vcex-button.theme-button.download.widebut > span.vcex-button-inner{
  justify-content: flex-start !important;
  text-align: left !important;
}

.policyIcon img{width:100px !important; height:100px !important}


.policyHolder .theme-button.download,
.policyHolderNoIcon .theme-button.download {
	display: flex !important;
	align-items: flex-start !important;
}

.policyHolder .theme-button.download::before,
.policyHolderNoIcon .theme-button.download::before {
	flex-shrink: 0 !important;
	top: 0 !important;
}

.policyHolder .theme-button.download,
.policyHolderNoIcon .theme-button.download {
	display: flex !important;
	align-items: center !important;
}

.policyHolder .theme-button.download::before,
.policyHolderNoIcon .theme-button.download::before {
	flex-shrink: 0 !important;
	top: 0 !important;
	padding-top: 0 !important;
	align-self: flex-start !important;
}

h2.policyHolder, h2.policyHolderNoIcon{margin-bottom:0px !important}

.policyHolder h5.vc_tta-panel-title,
.policyHolderNoIcon h5.vc_tta-panel-title {
	margin-bottom: 0 !important;
}


.policyHolderNoIcon{margin-bottom:0px !important}

.policyHolder .vc_tta.vc_general .vc_tta-panel-title{background-color:#e9e9e9 !important; font-family: 'Metric' !important; line-height:20px !important; border-radius:5px !important}