@charset "UTF-8"; /*
Theme Name:Pure Pour Vending Wordpress Theme
Author:Chelsea Brown
Author URI:https://focusedcre.com
Description:Custom wordpress theme for Pure Pour Vending
Version:1
*/

:root{
	--primaryColor: #D6E263; 
	--secondaryColor: #9DAEF3;
	--tertiaryColor: #3451A4;
	--primaryShadeColor: #BCC414;
	--light: #f5f5f5;
	--dark: #333;
	--white:#fff;
	--black:#000;
	--primaryFont : "Montserrat", sans-serif;
}



/* html, body {overflow-x: hidden; width: 100%;} */
/* html, body {max-width: 100vw;} */
/* body{font-family:"Montserrat",sans-serif; font-weight:normal;
	color: #6d6e71; font-size: 15px; line-height: 1.8; overflow-x: hidden;
	max-width: 100%;
}
#websiteMainWrapper {width: 100%; max-width: 100%; box-sizing: border-box; } */
/* === GLOBAL RESET & SCROLL FIX === */
html {
	scroll-behavior: smooth;
	scroll-padding-top: 100px; /* Height of fixed header */
}
html, body {
	margin: 0;
	padding: 0;
	/* overflow-x: hidden; */
	width: 100%;
	box-sizing: border-box;
}

/* Optional but helpful */
*, *::before, *::after {
	box-sizing: inherit;
}



/* === BODY STYLES === */
body {
	font-family: var(--primaryFont);
	font-weight: normal;
	color: var(--dark); font-size: 15px; line-height: 1.8;	background-color: #fff;
}

/* === WRAPPER === */
#websiteMainWrapper {
	position: relative;	width: 100%; 
	overflow-x: clip; /* Better than hidden; allows sticky/fixed elements to still work */	
	box-sizing: border-box;
}

/************************* fonts,buttons,icons and text blocks styles**********************************/
/* font-family:"canada-type-gibson",sans-serif; */
h1{font-size:64px; line-height: 1.2; font-weight: 600; color: var(--dark);}
h2{font-size:40px; line-height: 1.2; font-weight: 600; color: var(--dark); margin-top:20px; margin-bottom: 30px;}
h3{font-size:36px; line-height: 1.2; font-weight: 400; color: var(--dark); margin-bottom: 20px;}
h4{font-size:26px; line-height: 1.4; font-weight: 400; color: var(--dark);}
h5{font-size:20px; line-height: 1.5;}
h6{font-size:16px; line-height: 1.5;}
strong {color: var(--tertiaryColor);}
.heading-inline{display:inline !important;}
a{color: var(--dark); text-decoration:none; -webkit-transition:0.3s ease-in-out !important; -moz-transition:0.3s ease-in-out !important; -ms-transition:0.3s ease-in-out !important; -o-transition:0.3s ease-in-out !important; transition:0.3s ease-in-out !important;}
a:hover{color:var(--primaryColor); text-decoration:none;}
a:focus{text-decoration:none; outline:none;}
ul{margin:0; padding:0;}
ul li{list-style:none;}
img{image-rendering:-webkit-optimize-contrast;}
#map{height:400px;}
/*--------------------------------------------------------------
# Bottom Bar
--------------------------------------------------------------*/
#header{
	font-size:14px; transition:all 0.5s; padding:0;
}
#header:hover {overflow: visible;}
#header.header-scrolled{top:0; border-top:0;
	background:var(--secondaryColor);
	border-bottom:1px solid rgb(0 0 0 / 20%);
}
.headerLogoCol {background-color: var(--primaryColor);}
.headerNavCol {
	transition: justify-content 0.4s ease;
}
/* Header Logo Animation - Initial State (hidden) */
.headerLogoBox {
	width: 0;
	overflow: hidden;
	opacity: 0;
	transition: width 0.4s ease, opacity 0.3s ease;
}
.headerLogoBox .logo {
	display: block;
	white-space: nowrap;
}
/* Header Logo Animation - Visible State */
.header-logo-visible .headerLogoBox {
	width: 220px;
	opacity: 1;
}
.header-logo-visible .headerNavCol {
	justify-content: space-between !important;
}
.headerNavCol * {color: #fff;}
#header .logo img {max-height: 85px; width: 220px; object-fit: contain; object-position: left;}
/*--------------------------------------------------------------
# Navigation Menu
--------------------------------------------------------------*/

/*--------------------------------------------------------------
# Desktop Navigation
--------------------------------------------------------------*/
@media (min-width:1200px){
	.navbar{padding:0;}
	.navbar ul{margin:0; padding:0; display:flex; list-style:none; align-items:center; gap: 10px 15px;}
	.navbar li{position:relative; transition:0.3s;}
	.navbar li a,.navbar li a:focus{position:relative; display:block; align-items:center; justify-content:space-between; 
		font-size:13px; color:var(--white); transition:0.3s !important; text-transform:uppercase; font-weight:600; letter-spacing:1.5px;
		padding: 38px 5px;
	}
	/* .navbar #menu-main-menu > li > a::before {content: ''; position: absolute; bottom: 0; left: 50%;
		transform: translate(-50%, 0);
		height: 3px; width: 0; background: var(--primaryColor); transition: 0.3s;
	} */
	.navbar a i,.navbar a:focus i{font-size:12px; line-height:0; margin-left:5px;}
	.navbar li a:hover,.navbar .current-menu-item a,
	.navbar .current-menu-item:focus a,
	.navbar li:hover > a,
	.navbar li.activeMenuItem a {color: var(--primaryColor);}
	#header.header-scrolled  .navbar li a:hover,#header.header-scrolled .navbar .current-menu-item a,#header.header-scrolled .navbar .current-menu-item:focus a,#header.header-scrolled .navbar li:hover > a{border-bottom-color:#ffffff}
	/* .navbar #menu-main-menu > li.current-menu-item > a::before,
	.navbar #menu-main-menu > li > a:hover::before {width: calc(100% - 8px);} */
	#header.header-scrolled .custombtnG{border:1px solid #fff;}
	.navbar .menu-item-has-children ul.sub-menu{display:block; position:absolute; left:0; top:calc(100% + 30px); margin:0; z-index:99; opacity:0; visibility:hidden; background:#fff; box-shadow:0 0 30px rgb(127 137 161 / 25%); transition:0.3s; height:0;}
	.navbar .menu-item-has-children ul.sub-menu li{min-width:200px;}
	.navbar .menu-item-has-children ul.sub-menu a{padding:8px 15px; font-size:16px; font-weight:600; text-transform:none; color:#000000; border:0; letter-spacing:1.5px;}
	.navbar .menu-item-has-children ul.sub-menu a i{font-size:12px;}
	.navbar .menu-item-has-children ul.sub-menu a:hover,.navbar .menu-item-has-children ul.sub-menu .active:hover,.navbar .menu-item-has-children ul.sub-menu li:hover > a{color:#000; background-color: var(--secondaryColor);}
	.navbar .menu-item-has-children:hover > ul.sub-menu{opacity:1; top:100%; visibility:visible; height:initial; width: 250px;}
	.navbar .menu-item-has-children .menu-item-has-children ul.sub-menu{
		/* top:0; left:calc(100% - 30px); visibility:hidden; */
		position:static; display:block; padding-left: 20px; height: initial;
		opacity: 1; visibility: visible; box-shadow: none;
	}
	.navbar .menu-item-has-children .menu-item-has-children:hover > ul.sub-menu{
		/* opacity:1; top:0; left:100%; visibility:visible; */
	}
}
@media (min-width:1200px) and (max-width:1366px){
	.navbar .menu-item-has-children .menu-item-has-children ul.sub-menu{left:-90%;}
	.navbar .menu-item-has-children .menu-item-has-children:hover > ul.sub-menu{left:-100%;}
}
@media (min-width:1200px){
	.mobile-nav-show,.mobile-nav-hide{display:none !important;}
}
.navbar ul:not(ul li ul){position:relative;}
/*--------------------------------------------------------------
# Mobile Navigation
--------------------------------------------------------------*/
@media (max-width:1199.98px){
	.navbar{position:fixed; top:0; right:-100%; width:100%; max-width:400px; bottom:0; transition:0.3s; z-index:9997;}
	.navbar ul{position:absolute; inset:0; padding:50px 0 10px 0; margin:0; overflow-y:auto; transition:0.3s; z-index:9998;}
	.navbar a,.navbar a:focus{display:flex; align-items:center; justify-content:space-between; padding:10px 20px; font-size:15px; font-weight:600; color:rgba(255,255,255,0.7); white-space:nowrap; transition:0.5s !important;}
	.navbar a:hover,.navbar .current-menu-item a,.navbar .current-menu-item:focus a,.navbar li:hover > a{color:#fff;}
	.navbar .menu-item-has-children ul.sub-menu,.navbar .menu-item-has-children .menu-item-has-children ul.sub-menu{position:static; display:none; padding:10px 0; margin:10px 20px; background-color:rgba(20,35,51,0.6);}
	.navbar .menu-item-has-children > .submenu-active,.navbar .menu-item-has-children .menu-item-has-children > .submenu-active{display:block;}
	.mobile-nav-show{font-size:23px; cursor:pointer; line-height:0; transition:0.5s; padding:17px 10px 0 0; color:#ffffff;}
	.mobile-nav-hide{color:rgba(255,255,255,0.9); font-size:32px; cursor:pointer; line-height:0; 
		transition:0.5s; position:fixed; right:15px; top:30px; z-index:9999;
	}
	.mobile-nav-active{overflow:hidden;}
	.mobile-nav-active .navbar:before{content:""; position:fixed; inset:0; background:var(--secondaryColor);
		opacity: 1;
		z-index:9996;
	}
	.mobile-nav-active .navbar{right:0; background:var(--green);}
}
.sub-menu-toggle{display:none !important;}
/*--------------------------------------------------------------
# Mobile Navigation
--------------------------------------------------------------*/
.page-margin {margin-top: 100px;}
.mainBannerSec {position: relative; overflow: hidden; z-index: 1;}
.mainBannerSec::before {
	content: ""; position: absolute; inset: 0; background: rgba(0, 0, 0, 0.4); z-index: -2;
	width: 100%; height: 100%; top: 0; left: 0;
}
.mainBannerSec::after {
	content: ""; position: absolute; background: rgba(0, 0, 0, 0.3); z-index: -1;
	width: 50%; height: 100%; top: 0; right: 0;
}
.mainBannerVideo {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	z-index: -1;
}
.mainBannerSec .mainBannerTextBox > div {min-height: 100vh;}
.mainBannerLogo {max-width: 300px; width: 100%; height: auto;}
.mainBannerTextInner * {color: #fff;}
.mainBannerTextInner h1 {
	font-weight: 400;
}
.mainBannerTextInner h2 {
	font-size: 34px;
	margin-top: 40px;
	padding-right: 44px;
	background: url(assets/img/drop.svg) no-repeat right bottom;
	background-size: contain;
	display: inline-block;
}

.aboutUsSection {
	background: #fff;
}
.headingStyle h2 {
	color: var(--secondaryColor);
	font-size: 100px;
	line-height: 0.8;
	font-weight: 400;
	opacity: 0.3;
	margin-top: 0;
}
.headingStyle h2 strong {
	color: var(--secondaryColor);
}
.headingStyle2 h2 {
	color: var(--tertiaryColor);
	font-weight: 400;
	font-size: 48px;
}
.headingStyle2 h2 strong {
	color: var(--primaryColor);
	font-weight: 700;
}
.aboutUsSection .aboutUsSecInner h4 {
	margin-bottom: 50px;
}

.missionSec {
	background: linear-gradient(to top right, var(--tertiaryColor), var(--secondaryColor));
	position: relative;
	z-index: 1;
	font-size: 20px;
}
.missionSec::before {
	content: ""; position: absolute;
	top: 50%; 
	left: 0; 
	transform: translateY(-50%);
	width: 100%; height: calc(100% - 10px); 
	background: url(assets/img/purepour-u-drop.svg) no-repeat 20% center; 
	background-size: contain;
	opacity: 0.25;
	z-index: -1;
}
.missionSec * {
	color: #fff;
}
.missionSec h4 {
	margin-bottom: 30px;
	font-weight: 600;
	font-size: 24px;
}

.productLineupSec {
	background: #fff;
}
.productLineupSec h4 {
	margin: 50px 0 40px;
}
.productLineupImgSec {
	position: relative;
	z-index: 1;
}
.productLineupStrip {
	position: absolute;
	bottom: 58px; 
	left: 0; 
	width: 100%;
	height: 205px;
	background: var(--primaryColor);
	z-index: -1;
}
.productLineupStrip::before {
	content: "";
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 60px;
	background-color: #F5F6FA;
	z-index: 1;
}
.productBox .productBoxInner img {
	object-fit: contain;
	width: 100%;
	height: auto;
	margin: 0 auto;
}
.productBox .productBoxInner h4 {
	text-align: center;
	font-size: 20px;
	font-weight: 600;
	color: var(--tertiaryColor);
	position: relative;
	z-index: 1;
	display: inline-block;
	margin: 35px 0 0;
}
.productBox .productBoxInner h4::after {
	content: ""; display: block; width: 50px; height: 2px; background: var(--secondaryColor); margin: 10px auto 0;
}
.productBox.productBox1 .productBoxInner h4 {
	padding-left: 33px;
}
.productBox.productBox2 .productBoxInner h4 {
	padding-left: 15px;
}

/* Product Box - Clickable Styles */
.productBox {
	cursor: pointer;
	transition: transform 0.3s ease;
}
.productBox:hover {}
.productBox:hover .productBoxInner h4 {
	color: var(--secondaryColor);
}

/* Product Box Bubble Animation */
.productBoxInner {
	position: relative;
}
.productBoxInner .bubbleContainer {
	position: absolute;
	top: -110px;
	left: 25px;
	width: 90px;
	height: 125px;
	overflow: hidden;
	pointer-events: none;
	z-index: 0;
	opacity: 0;
	transition: opacity 0.3s ease;
}
.productBoxInner:hover .bubbleContainer {
	opacity: 1;
}
.productBoxInner .bubble {
	position: absolute;
	bottom: 0%;
	background: var(--secondaryColor);
	border-radius: 50%;
	opacity: 0;
	animation: bubbleFloat 3s ease-in infinite;
}
.productBoxInner .bubble::before {
	content: "";
	position: absolute;
	top: 20%;
	left: 20%;
	width: 30%;
	height: 30%;
	background: rgba(255, 255, 255, 0.8);
	border-radius: 50%;
}
/* Different bubble sizes and positions */
/* 12 bubbles with varied sizes (3px-12px), positions (10%-90%), and delays (0s-3s) */
.productBoxInner .bubble:nth-child(1) {
	width: 8px;
	height: 8px;
	left: 15%;
	animation-delay: 0s;
	animation-duration: 2.5s;
}
.productBoxInner .bubble:nth-child(2) {
	width: 5px;
	height: 5px;
	left: 35%;
	animation-delay: 0.4s;
	animation-duration: 3s;
}
.productBoxInner .bubble:nth-child(3) {
	width: 10px;
	height: 10px;
	left: 55%;
	animation-delay: 0.8s;
	animation-duration: 2.8s;
}
.productBoxInner .bubble:nth-child(4) {
	width: 4px;
	height: 4px;
	left: 75%;
	animation-delay: 1.2s;
	animation-duration: 3.2s;
}
.productBoxInner .bubble:nth-child(5) {
	width: 7px;
	height: 7px;
	left: 25%;
	animation-delay: 1.6s;
	animation-duration: 2.6s;
}
.productBoxInner .bubble:nth-child(6) {
	width: 3px;
	height: 3px;
	left: 45%;
	animation-delay: 2s;
	animation-duration: 3.5s;
}
.productBoxInner .bubble:nth-child(7) {
	width: 12px;
	height: 12px;
	left: 65%;
	animation-delay: 0.2s;
	animation-duration: 2.4s;
}
.productBoxInner .bubble:nth-child(8) {
	width: 6px;
	height: 6px;
	left: 85%;
	animation-delay: 2.4s;
	animation-duration: 2.9s;
}
.productBoxInner .bubble:nth-child(9) {
	width: 9px;
	height: 9px;
	left: 10%;
	animation-delay: 1s;
	animation-duration: 3.3s;
}
.productBoxInner .bubble:nth-child(10) {
	width: 4px;
	height: 4px;
	left: 90%;
	animation-delay: 2.8s;
	animation-duration: 2.7s;
}
.productBoxInner .bubble:nth-child(11) {
	width: 5px;
	height: 5px;
	left: 50%;
	animation-delay: 0.6s;
	animation-duration: 3.1s;
}
.productBoxInner .bubble:nth-child(12) {
	width: 11px;
	height: 11px;
	left: 30%;
	animation-delay: 1.8s;
	animation-duration: 2.3s;
}

@keyframes bubbleFloat {
	0% {
		transform: translateY(0) scale(1);
		opacity: 0;
	}
	10% {
		opacity: 0.7;
	}
	50% {
		opacity: 0.5;
	}
	100% {
		transform: translateY(-200px) scale(0.6);
		opacity: 0;
	}
}

/* Product Modal Styles */
.productModal {
	--bs-modal-margin: 0;
}
/* Override Bootstrap fade animation - use slide from right instead */
.productModal.fade .modal-dialog {
	min-width: 80%;
	margin-right: 0;
	margin-left: auto;
	min-height: 100vh;
	max-height: 100vh;
	height: 100vh;
	transform: translateX(100%);
	transition: transform 0.3s ease-out;
}
.productModal.fade.show .modal-dialog {
	transform: translateX(0);
}
.productModal .modal-content {
	border: none;
	border-radius: 0;
	position: relative;
	overflow: hidden;
	min-height: 100vh;
	height: 100vh;
	background-color: #fff;
}
.productModal .modal-content::after {
	content: "";
	position: absolute;
	top: 0;
	right: 0;
	width: 100%;
	height: 100%;
	background-image: url('assets/img/purepour-u-drop.svg');
	background-repeat: no-repeat;
	background-position: top right;
	background-size: 350px auto;
	opacity: 0.25;
	pointer-events: none;
}
.productModal .modal-body {
	padding: 60px 50px 50px;
	position: relative;
	z-index: 1;
	height: 100vh;
	overflow-y: auto;
}
.productModalClose {
	position: absolute;
	top: 25px;
	right: 25px;
	z-index: 10;
	opacity: 1;
	width: 30px;
	height: 30px;
	padding: 0;
	background: transparent !important;
	border: none;
	cursor: pointer;
}
.productModalClose::before,
.productModalClose::after {
	content: "";
	position: absolute;
	top: 50%;
	left: 50%;
	width: 24px;
	height: 2px;
	background-color: var(--dark);
	transform-origin: center;
}
.productModalClose::before {
	transform: translate(-50%, -50%) rotate(45deg);
}
.productModalClose::after {
	transform: translate(-50%, -50%) rotate(-45deg);
}
.productModalClose:hover::before,
.productModalClose:hover::after {
	background-color: var(--tertiaryColor);
}

/* Modal Header Section */
.productModalHeader {
	display: flex;
	align-items: flex-start;
	gap: 40px;
	margin-bottom: 40px;
}
.productModalMainImage {
	flex: 0 0 200px;
	max-width: 200px;
}
.productModalMainImage img {
	width: 100%;
	height: auto;
	object-fit: contain;
}
.productModalHeaderText {
	flex: 1;
}
.productModalHeaderText h3 {
	font-size: 20px;
	font-weight: 700;
	color: var(--tertiaryColor);
	text-transform: uppercase;
	margin: 0 0 15px;
	letter-spacing: 1px;
	position: relative;
	z-index: 1;
}
.productModalHeaderText h3::after {
	content: ""; display: block; width: 60px; height: 3px; background: var(--secondaryColor); margin: 10px 0 0;
}
.productModalHeaderText p {
	font-size: 14px;
	line-height: 1.7;
	color: var(--dark);
	max-width: 550px;
}

/* Modal Related Products Grid */
.productModalItems .row {
	margin: 0 -10px;
}
.productModalItem {
	padding: 0 10px;
	margin-bottom: 20px;
}
.productModalItemInner {
	text-align: center;
}
.productModalItemImage {
	border: 1px solid var(--secondaryColor);
	padding: 20px;
	margin-bottom: 15px;
	aspect-ratio: 1;
	display: flex;
	align-items: center;
	justify-content: center;
}
.productModalItemImage img {
	max-width: 100%;
	height: auto;
	object-fit: contain;
	aspect-ratio: 1;
}
.productModalItemInner h5 {
	font-size: 14px;
	font-weight: 700;
	color: var(--tertiaryColor);
	margin: 0 0 5px;
}
.productModalItemInner p {
	font-size: 12px;
	line-height: 1.5;
	color: #666;
	margin: 0;
}

/* Modal Backdrop */
.modal-backdrop.show {
	opacity: 0.7;
}

/* Responsive Modal Styles */
@media (max-width: 991px) {
	.productModal .modal-dialog {
		min-width: 100%;
		max-width: 100%;
		margin: 0;
	}
	.productModal .modal-content {
		background-size: 250px auto;
	}
}
@media (max-width: 767px) {
	.productModal .modal-body {
		padding: 50px 20px 40px;
	}
	.productModalHeader {
		flex-direction: column;
		align-items: center;
		text-align: center;
		gap: 20px;
	}
	.productModalMainImage {
		flex: 0 0 150px;
		max-width: 150px;
	}
	.productModalItemImage {
		padding: 15px;
	}
	.productModal .modal-content {
		background-size: 180px auto;
	}
}

.ourPartnerSec {position: relative; overflow: hidden; z-index: 1;}
.ourPartnerSec::before {
	content: ""; position: absolute; 
	background: var(--tertiaryColor);
	z-index: -2;
	width: 100%; height: 100%; top: 0; left: 0;
	mix-blend-mode: multiply;
}
.ourPartnerSec *:not(h2) {
	color: #fff;
}
.ourPartnerSec .headingStyle h2 {
	line-height: 0.6;
}
.ourPartnerSec h4 {
	margin-top: 40px;
}
.ourPartnerLogoSec .partnerLogoBox.partnerLogoBox1 img {
	width: 240px; height: auto;
}
.ourPartnerLogoSec .partnerLogoBox img:not(.partnerLogoBox1 img) {
	opacity: 0.25;
	width: 140px; height: auto;
	transition: all 0.1s ease;
}
.ourPartnerLogoSec .partnerLogoBox img:not(.partnerLogoBox1 img):hover {
	opacity: 1;
}
.ourPartnerLogoCarousel img {
	opacity: 0.25;
	transition: all 0.3s ease;
}
.ourPartnerLogoCarousel .owl-item.center img {
	opacity: 1;
}
.statsSec {
	background-color: #fff;
	position: relative;
	z-index: 1;
}
.statsSec::after {
	content: ""; position: absolute; 
	background: url(assets/img/purepour-u-drop.svg) right top no-repeat;
	background-size: 25%;
	z-index: -1;
	width: 100%; height: 100%; top: 0; left: 0;
	opacity: 0.2;
}
.statsSec .headingStyle h2 {
	margin-top: 0;
}
/* Counter Boxes */
.counterBox .counterBoxInner {
	padding: 60px 30px;
	border-radius: 0;
	height: 100%;
	transition: transform 0.3s ease;
}
.counterBox .counterBoxInner:hover {
	transform: translateY(-5px);
}

/* Blue boxes (positions 1, 3, 5 - odd) */
.counterBox:nth-child(odd) .counterBoxInner {
	background: linear-gradient(to top right, var(--tertiaryColor), var(--secondaryColor));
}

/* Green boxes (positions 2, 4, 6 - even) */
.counterBox:nth-child(even) .counterBoxInner {
	background: linear-gradient(to top right, var(--primaryShadeColor), var(--primaryColor));
}

/* Large numbers */
.counterBox .counterBoxInner h3 {
	font-size: 56px;
	font-weight: 700;
	color: var(--primaryColor);
	margin: 0 0 15px;
	line-height: 1;
}

/* Green boxes number color - darker for contrast */
.counterBox:nth-child(even) .counterBoxInner h3 {
	color: var(--tertiaryColor);
}

/* Counter text container */
.counterBox .counterText h4 {
	font-size: 14px;
	font-weight: 700;
	color: var(--primaryColor);
	margin: 0 0 15px;
	text-transform: uppercase;
	letter-spacing: 0.5px;
}

/* Green boxes h4 color */
.counterBox:nth-child(even) .counterText h4 {
	color: var(--tertiaryColor);
}

/* White paragraph text */
.counterBox .counterText p {
	font-size: 14px;
	line-height: 1.5;
	color: var(--white);
	margin: 0 0 10px;
}

/* Source attribution - bold text */
.counterBox .counterText p strong {
	color: var(--white);
	font-weight: 700;
}
.contactSection {
	background: linear-gradient(to top right, var(--tertiaryColor), var(--secondaryColor));
}

/* Contact Section Left Column - Text Box */
.contactFormTextBox * {
	color: #fff;
}
.contactFormTextBox h3 {
	font-size: 28px;
	font-weight: 600;
	margin: 0 0 25px;
	line-height: 1.3;
}

.contactFormTextBox h4 {
	font-size: 18px;
	font-weight: 700;
	margin: 0 0 15px;
}

.contactFormTextBox p {
	font-size: 14px;
	line-height: 1.6;
	margin: 0 0 10px;
	padding-left: 20px;
	position: relative;
}

/* Green bullet points */
.contactFormTextBox p::before {
	content: "●";
	color: var(--primaryColor);
	position: absolute;
	left: 0;
	font-size: 10px;
	top: 3px;
}

.contactFormTextBox p:last-child::before {
	display: none;
}

.bulletTextWhite ul {
	list-style: none;
	padding: 0;
	margin: 20px 0;
}

.bulletTextWhite ul li {
	font-size: 14px;
	line-height: 1.6;
	color: var(--white);
	margin: 0 0 10px;
	padding-left: 20px;
	position: relative;
}

.bulletTextWhite ul li::before {
	content: "●";
	color: #fff;
	position: absolute;
	left: 0;
	font-size: 23px;
	top: -8px;
}

.bulletText ul {
	list-style: none;
	padding: 0;
	margin: 20px 0;
}

.bulletText ul li {
	font-size: 14px;
	line-height: 1.6;
	margin: 0 0 10px;
	padding-left: 20px;
	position: relative;
}

.bulletText ul li::before {
	content: "●";
	color: var(--primaryColor);
	position: absolute;
	left: 0;
	font-size: 23px;
	top: -8px;
}

/* Contact Section Right Column - Form Styles */
.homeContactForm .wpcf7-form {
	display: flex;
	flex-direction: column;
	gap: 15px;
}

.homeContactForm .wpcf7-form-control-wrap {
	display: block;
	width: 100%;
}

.homeContactForm input[type="text"],
.homeContactForm input[type="email"],
.homeContactForm input[type="tel"],
.homeContactForm textarea {
	width: 100%;
	padding: 15px 20px;
	background: rgba(255, 255, 255, 0.25);
	border: none;
	border-radius: 0;
	color: var(--white);
	font-size: 14px;
	font-family: inherit;
}

.homeContactForm input[type="text"]::placeholder,
.homeContactForm input[type="email"]::placeholder,
.homeContactForm input[type="tel"]::placeholder,
.homeContactForm textarea::placeholder {
	color: rgba(255, 255, 255, 0.8);
}

.homeContactForm textarea {
	min-height: 120px;
	resize: vertical;
}

.homeContactForm input[type="submit"] {
	background: var(--primaryColor);
	color: var(--tertiaryColor);
	border: none;
	padding: 15px 40px;
	font-size: 14px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 1px;
	cursor: pointer;
	transition: all 0.3s ease;
	width: 100%;
}

.homeContactForm input[type="submit"]:hover {
	background: var(--primaryShadeColor);
}

/* Hide CF7 default paragraph wrappers spacing */
.homeContactForm .wpcf7-form p {
	margin: 0;
}

/*--------------------------------------------------------------
# Footer
--------------------------------------------------------------*/

.footerSec {background: #fff;}
.footerSec a:not(.footerSec .footerSocial a) {text-decoration: none;}
.footerSec a:not(.footerSec .footerSocial a):hover {text-decoration: underline; color: var(--tertiaryColor);}
.footerLogo {max-width: 200px;}
.footerSocial {
	padding: 0;
	margin: 0;
	list-style: none;
}

.footerSocial li a {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 36px;
	height: 36px;
	background-color: var(--secondaryColor);
	color: #fff;
	border-radius: 3px;
	font-size: 26px;
	transition: all 0.3s ease;
	text-decoration: none;
}
.footerSocial li a i {color: #fff; transition: all 0.3s ease;}
.footerSocial li a:hover {
	background-color: var(--primaryColor);
	color: var(--secondaryColor);
}
.footerSocial li a:hover i {color: var(--secondaryColor);}
.copyright {font-size: 13px;}
/*--------------------------------------------------------------
# Footer End
--------------------------------------------------------------*/