/*
Theme Name: BNE Minimal
Description: A starter template ready for full customizations. Inspired by Sweetness, a full fledge theme by BNE Creative.
Author: Kerry Kline
Author URI: https://www.bnecreative.com
Version: 2025.12.19
Text Domain: bne
License: GPL2
License URI: http://www.gnu.org/licenses/gpl-2.0.html
*/


/* Globals */
:root {
	/* Defined in options
	--btn-color
	--btn-text-color
	--primary-color
	--secondary-color
	--tertiary-color
	--accent-color
	*/

	/* Layout */
	--content-area-width: 1400px;
	/* Sidebar gap on desktop */
	--sidebar-gutter: 3rem;
	
	
	/* Typography */
	--fs-base: 17px;
	/* --fs-ratio: 1.3; */
		
	/* Fluid Generator: https://fluidtypography.com */
	/* Clamp: (min, fluid, max) */
	--fs-h1: clamp(2rem, 5.196vw + 1.155rem, 2.5rem); 
	--fs-h2: clamp(1.5rem, 1.617vw + 1.519rem, 2rem);
	--fs-h3: clamp(1.3rem, 1.386vw + 1.079rem, 1.5rem);
	--fs-h4: clamp(1.125rem, 1.155vw + 0.826rem, 1.3rem);
	--fs-h5: clamp(1rem, 0.693vw + 0.821rem, 1.125rem);
	--fs-h6: clamp(0.875rem, 0.462vw + 0.755rem, 1rem);
	
	--body-font-family: system-ui;
	--body-font-color: #333;

	--heading-font-family: 'Poppins';
	--heading-font-color: #222;
	--heading-font-weight: 700;

	--link-color: #005994;
	--link-color-hover: #005994;
	
	/* Menu */
	--menu-alignment: space-around; /* use "center" for centering links */
	--menu-bg-color: var(--primary-color); /* wrapper */
	
	--menu-top-color: #fff;
	--menu-top-color-hover: #fff;
	--menu-top-bg-color: transparent;
	--menu-top-bg-color-hover: var(--tertiary-color);
	--menu-top-color-border: var(--primary-color);

	--menu-sub-color: #fff;
	--menu-sub-color-hover: #333;
	--menu-sub-bg-color: var(--tertiary-color);
	--menu-sub-bg-color-hover: #fff;

	/* Forms */
	--input-color: #535165;
	--input-bg-color: #f4f4f4;
	--input-border-radius: 0.5rem;
	--input-shadow: none;
	
	/* Buttons */
	--btn-submit-text-size: 1.125rem;
	--btn-submit-padding: .625rem 1rem;
	--btn-submit-width: auto;
	--btn-border-radius: 1rem;
	/* --btn-color: #fff */
	/* --btn-text-color: #333 */
	
	
	/* Media */
	--wp--style--block-gap: 1.2rem;

	/* Utility */
	--border-radius: 1rem;
	
}
/* END Globals */



/* 	=================================
	Utilities
=================================  */



/* WP Columns */
@media( min-width: 1024px ) {
	:where( .wp-block-columns.is-layout-flex ) {
		column-gap: 4em;
	}
	
	.wp-block-columns + .wp-block-columns {
		margin-top: 3rem;
	}
}

@media( max-width: 768px ) {
	.wp-block-columns.columns-sm-2 > .wp-block-column {
		flex-basis: 40% !important;
	}
}

.border-radius {
	border-radius: var(--border-radius) !important;
}

.gap-0 {
	gap: 0;
}


/*	=================================
	Typography
	Self Hosted Font Generator: gwfh.mranftl.com/fonts/
=================================  */

/* poppins-regular - latin */
@font-face {
  font-display: swap;
  font-family: 'Poppins';
  font-style: normal;
  font-weight: 400;
  src: url('assets/fonts/poppins-v22-latin-regular.woff2') format('woff2');
}
/* poppins-700 - latin */
@font-face {
  font-display: swap;
  font-family: 'Poppins';
  font-style: normal;
  font-weight: 700;
  src: url('assets/fonts/poppins-v22-latin-700.woff2') format('woff2');
}
/* poppins-900 - latin */
@font-face {
  font-display: swap;
  font-family: 'Poppins';
  font-style: normal;
  font-weight: 900;
  src: url('assets/fonts/poppins-v22-latin-900.woff2') format('woff2');
}


/* == General == */
strong {
	font-weight: 700;
}

.heading-main {
	line-height: 1;
	font-family: var(--heading-font-family);
}
.heading-sub {
	line-height: 1.1;
}

.text-stroke .heading-main {
	-webkit-text-stroke: 2px white;
}




/* == Mobile Typography Resets == */
/* let's make sure any inline font changes in WP blocks are reset for mobile */
@media(max-width:600px) {
	h1, .h1 { font-size: var(--fs-h1) !important; }
	h2, .h2 { font-size: var(--fs-h2) !important; }
	h3, .h3 { font-size: var(--fs-h3) !important; }
	h4, .h4 { font-size: var(--fs-h4) !important; }
	h5, .h5 { font-size: var(--fs-h5) !important; }
	h6, .h6 { font-size: var(--fs-h6) !important; }
}



/* == Buttons == */
.wp-block-button.is-style-outline:hover a:not(.has-text-color) .btn-icon,
.wp-block-button.is-style-outline a:not(.has-text-color):hover {
	color: var(--btn-color) !important;
}
.wp-block-button.is-style-outline a.has-light-color:hover {
	color: #000 !important;
}

/* Button - External Link Icon 
	Use "icon-after-{xxx}" and "icon-before-{xxx}"
*/
.wp-block-button.icon-after-external a:after {
	mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path d="M290.4 19.8C295.4 7.8 307.1 0 320 0L480 0c17.7 0 32 14.3 32 32l0 160c0 12.9-7.8 24.6-19.8 29.6s-25.7 2.2-34.9-6.9L400 157.3 246.6 310.6c-12.5 12.5-32.8 12.5-45.3 0s-12.5-32.8 0-45.3L354.7 112 297.4 54.6c-9.2-9.2-11.9-22.9-6.9-34.9zM0 176c0-44.2 35.8-80 80-80l80 0c17.7 0 32 14.3 32 32s-14.3 32-32 32l-80 0c-8.8 0-16 7.2-16 16l0 256c0 8.8 7.2 16 16 16l256 0c8.8 0 16-7.2 16-16l0-80c0-17.7 14.3-32 32-32s32 14.3 32 32l0 80c0 44.2-35.8 80-80 80L80 512c-44.2 0-80-35.8-80-80L0 176z"/></svg>');
}

/* Button - Phone Icon */
.wp-block-button.icon-before-phone a:before {
	mask-image: url('data:image/svg+xml;utf8,<svg viewBox="0 0 512 512" xmlns="http://www.w3.org/2000/svg"><path d="m164.9 24.6c-7.7-18.6-28-28.5-47.4-23.2l-88 24c-17.4 4.8-29.5 20.6-29.5 38.6 0 247.4 200.6 448 448 448 18 0 33.8-12.1 38.6-29.5l24-88c5.3-19.4-4.6-39.7-23.2-47.4l-96-40c-16.3-6.8-35.2-2.1-46.3 11.6l-40.4 49.3c-70.4-33.3-127.4-90.3-160.7-160.7l49.3-40.3c13.7-11.2 18.4-30 11.6-46.3l-40-96z"/></svg>');
}

.wp-block-button.icon-after-arrow-right a:after {
	mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 640 640"><!--!Font Awesome Pro v7.2.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2026 Fonticons, Inc.--><path d="M569 337C578.4 327.6 578.4 312.4 569 303.1L433 167C423.6 157.6 408.4 157.6 399.1 167C389.8 176.4 389.7 191.6 399.1 200.9L494.1 295.9L216 295.9C202.7 295.9 192 306.6 192 319.9C192 333.2 202.7 343.9 216 343.9L494.1 343.9L399.1 438.9C389.7 448.3 389.7 463.5 399.1 472.8C408.5 482.1 423.7 482.2 433 472.8L569 337zM96 512C113.7 512 128 497.7 128 480C128 462.3 113.7 448 96 448C78.3 448 64 462.3 64 480C64 497.7 78.3 512 96 512zM128 373.3C128 355.6 113.7 341.3 96 341.3C78.3 341.3 64 355.6 64 373.3C64 391 78.3 405.3 96 405.3C113.7 405.3 128 391 128 373.3zM96 298.7C113.7 298.7 128 284.4 128 266.7C128 249 113.7 234.7 96 234.7C78.3 234.7 64 249 64 266.7C64 284.4 78.3 298.7 96 298.7zM128 160C128 142.3 113.7 128 96 128C78.3 128 64 142.3 64 160C64 177.7 78.3 192 96 192C113.7 192 128 177.7 128 160z"/></svg>');
}


/* == Forms == */

.gf-light {
	--input-color: #fff;
	--input-bg-color: rgba(255,255,255,.2);
}
.gf-light .gfield_label,
.gf-light .gform-field-label {
	color: #fff;
}



/*	=================================
	Media
=================================  */

@media(max-width:500px) {
	.wp-block-image .alignleft,
	.wp-block-image .alignright {
		float: none;
	}
}


/*	=================================
	Main Menu
=================================  */

/* == Mobile Menu btn == */
.mobile-nav-btn {
	background-color: var(--primary-color);
	height: 100%;
	width: fit-content;
}

.mobile-nav-btn span {
	display: block;
}


/* == Menu Button CTA == */
@media( min-width: 768px ) {
	ul.primary-nav {
		align-items: center; /* Aligns with menu btns */
	}
	.menu-btn {
		margin-left: 1rem;
	}
	
	/* Fly in button on sticky */
	/*
	.menu-btn {
		margin-left:-175px;
		transform: translateX(175px);
		opacity: 0;
		transition: all .3s ease;
	}
	.menu-btn a {
		border-radius: var(--border-radius) !important;
	}
	
	.is-sticky .menu-btn {
		margin-left: 1rem;
		transform: translateX(0);
		opacity: 1;
	}
	*/
	
	
}

ul.primary-nav .menu-btn a {
	background-color: var(--primary-color);
	color: #fff;
	border: 1px solid transparent;
	border-radius: var(--btn-border-radius);
	font-weight: bold;
}

ul.primary-nav .menu-btn:hover a {
	background-color: #fff;
	color: var(--primary-color);
	border-color: var(--primary-color);
	box-shadow: none;

}

ul.primary-nav .menu-btn .menu-label {
	display: inline-flex;
	align-items: center;
}

ul.primary-nav .menu-btn .menu-label:before {
	/* SVG Phone */
	content: "";
	height: 1em;
	width: 1em;
	margin-right: 0.5em;	
	background-color: currentColor;
	mask-repeat: no-repeat;
	mask-position: center;
	mask-size: 1em;
	mask-image: url('data:image/svg+xml;utf8,<svg viewBox="0 0 512 512" xmlns="http://www.w3.org/2000/svg"><path d="m164.9 24.6c-7.7-18.6-28-28.5-47.4-23.2l-88 24c-17.4 4.8-29.5 20.6-29.5 38.6 0 247.4 200.6 448 448 448 18 0 33.8-12.1 38.6-29.5l24-88c5.3-19.4-4.6-39.7-23.2-47.4l-96-40c-16.3-6.8-35.2-2.1-46.3 11.6l-40.4 49.3c-70.4-33.3-127.4-90.3-160.7-160.7l49.3-40.3c13.7-11.2 18.4-30 11.6-46.3l-40-96z"/></svg>');
}

ul.primary-nav .menu-phone a {
	font-size: 1.3rem ;
}

/* == General Menu Adjustments == */

ul.primary-nav > li > a {
	padding: 1.4rem 1rem;
	font-weight: bold;
	text-transform: uppercase;
}
ul.primary-nav > li > a .menu-label {}

@media(min-width: 768px) {
	#primary-nav-wrapper {
		margin-top: 1.5rem;
		padding: 1rem;
		border-radius: var(--border-radius) var(--border-radius) 0 0;
	}
	#primary-nav-wrapper ul#header-menu {
		padding: 0 1rem;
	}
}


/* == Mobile Menu Adjustments == */
@media(max-width: 768px) {
	body.has-mobile-nav.admin-bar #header-wrapper:not(.is-sticky) #primary-nav-wrapper {
		top: calc( (var(--header-height) * 1px ) + 46px);
	}
	
	/* Mobile Menu */
	body.has-mobile-nav #primary-nav-wrapper {
		top: calc( var(--header-height) * 1px );
		width: 100vw;
		
		/* 
		--menu-bg-color: #fff;
		--menu-top-color: #333;
		--menu-top-color-hover: #000;
		--menu-top-bg-color: transparent;
		--menu-top-bg-color-hover: #fff;
		--menu-top-color-border: var(--primary-color); 
		*/
		
	}
}



/*	=================================
	Header
=================================  */

#header-above {
	background-color: var(--secondary-color);
	padding: 1rem 30px;
	display: none;
	color: #fff;
}

#header-wrapper {
	padding: 0;
	box-shadow: 0px 0px 3px rgba(0,0,0,.4);
	z-index: 3;
}

#header-wrapper .row {
	align-items: end !important;
	gap: 0;
	margin: 0;
}

#header-wrapper .row > * {
	padding: 0;
}

.header-logo {}

.header-logo a {
	display: block;
}

.header-logo img {
	padding: .8rem;
	max-height: 70px;
	width: auto;
	text-align: center;
}

@media( min-width: 768px ) {
	#header-above {
		display: block;
	}
	
	#header-wrapper {
		padding: 1rem 30px 0 30px;
	}
	
	
	.header-logo {
		text-align: left;
	}
	
	.header-logo img {
		max-height: 150px;
		padding: .5rem;
	}
	
	.header-widget-area,
	.header-above-widget-area {
		display: flex;
		gap: 2rem;
		font-size: .9rem;
		
		align-items: center;
		padding-right: 1rem;
	}
	.header-widget-area {
		justify-content: space-between;
		font-weight: bold;
	}
	
	.header-widget-area p,
	.header-above-widget-area p,
	.header-widget-area .wp-block-buttons {
		margin: 0;
	}
	.header-widget-area p a {
		color: inherit;
	}
	
	/* Widget Alignment */
	/* .header-widget-area .widget:last-of-type {
		margin-left: auto; 
	} */
	.header-above-widget-area .widget:first-of-type {
		margin-right: auto; 
	}
	
}



/* == Transparent Header == */
@media(min-width: 768px) {
	body.has-transparent-header #header-wrapper {
		background-color: rgba(0, 0, 0, 0.2);
		--menu-top-color: #fff;
		--menu-top-color-hover: #fff;
		--menu-top-bg-color: transparent;
		--menu-top-bg-color-hover: transparent;
		--menu-top-color-border: var(--primary-color);
	}
	body.has-transparent-header #header-wrapper:not(.is-sticky) {
		top: calc( var(--header-above-height) * 1px );
	}
	
	body.has-transparent-header #header-wrapper.is-sticky {
		background-color: #fff !important;
		transition: all .3s ease;
		--menu-top-color: #000;
		--menu-top-color-hover: var(--primary-color);
		--menu-top-bg-color: transparent;
		--menu-top-bg-color-hover: transparent;
		--menu-top-color-border: var(--primary-color);
	}

	body.has-transparent-header .default-logo {
		display: none;
	}
	body.has-transparent-header .transparent-logo {
		display: inline-block;
	}
	
	body.has-transparent-header #header-wrapper.is-sticky .transparent-logo {
		display: none;
	}
	body.has-transparent-header #header-wrapper.is-sticky .default-logo {
		display: inline-block;
	}

}



/*	=================================
	Sticky Header
=================================  */

/* Enable Mobile Sticky */
@media(max-width: 768px) {

	#wrapper {
		overflow: initial;
	}
	
	#header-wrapper {
		position: sticky;
		top:0
	}

}

/* Mobile Sticky Header */
.mobile-header-btns {
	display: flex;
	align-items: stretch;
	height: 70px
}

.mobile-header-btns > * {
	box-shadow: none;
	border: none;
}

.mobile-header-btns .header-cta {
	height: 100%;
	max-width: fit-content;
	border-radius: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 1rem;
	padding: .8rem 1rem;
	background-color: var(--secondary-color);
	color: #fff;
}

.mobile-header-btns .header-cta span {
	display: block
}

@media(max-width: 768px) {
	.logo-col {
		justify-content: center;
		display: flex;
	}
	.logo-col img {
		padding: .1rem;
	}
}


/*	=================================
	Main
=================================  */


/* == Page Title Wrapper ==  */
#page-title-wrapper {}
#page-title-wrapper .entry-header {}
#page-title-wrapper .entry-title {}
#page-title-wrapper .subheading {}
#page-title-wrapper .cta {}
#page-title-wrapper .btn {}


/* == Featured Image == */
.page-template.sidebar-none .featured-image-wrapper.alignfull {
	margin-top: -40px;
}


/* == Containers == */
@media( min-width: 768px ) {
	.wp-block-bne-container.half-color-right:before {
		content: "";
		background: white;
		position: absolute;
		top: 0;
		left: 0;
		bottom: 0;
		right: 50%;
		z-index: 1;
	}	
	.wp-block-bne-container.half-color-right .bne-container-content {
		z-index: 2;
	}

}
@media( max-width: 768px ) {
	.wp-block-bne-container.half-color-right {
		color: #fff;
	}
}

/* == Cards == */
.card-icon {
	position: absolute;
	top: -20px;
	right: 20px;
	z-index: 1;

}

.card-icon img {
	background-color: var(--tertiary-color);
	padding: 5px;
	border-radius: 0 .5rem .5rem .5rem;
	width: 60px;
}

.card-icon:before {
	content: "";
	border-style: solid;
	border-color: transparent;
	border-width: 0 14px 20px 14px;
	border-bottom-color: var(--primary-color);
	position: absolute;
	left: -15px;
	top: 0;
	z-index: -1;
}

.card-icon + .wp-block-heading {
	max-width: calc( 100% - 60px );
}

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

#footer-wrapper {
	background-color: var(--secondary-color);
	color: #fff;
	--heading-font-color: #fff;
	--link-color: #fff;
	--link-color-hover: #fff;
	
}

@media( min-width: 768px ) {
	#footer-wrapper {
		margin-top: 100px;
	}
	.footer-logo {
		margin-top: -140px;
	}
}


/* #footer-wrapper .widget h3,
#footer-wrapper .widget-title {
	position: relative;
	margin-bottom: 2rem;
}

#footer-wrapper .widget h3:after,
#footer-wrapper .widget-title:after {
	content: "";
	position: absolute;
	left: 0;
	bottom: -10px;
	width: 150px;
	border-bottom: 4px solid var(--tertiary-color);
} */

.footer-copy {}




/*	=================================
	Widgets / Sidebar
=================================  */




/*	=================================
	Blocks
=================================  */

/* == BNE Container == */
/* Adjust to --content-area-width + 30*/
@media(max-width: 1430px) {
	.bne-container.has-right-bg .bne-container-content {
		padding-left: 30px;
	}
	.bne-container.has-left-bg .bne-container-content {
		padding-right: 30px;
	}
}

/*	=================================
	Plugins
=================================  */


/* Outline Text */
.stroke-white mark,
.stroke-black mark {
	font-size: 1em;
	line-height: 1em;
	-webkit-text-stroke-width: 1px;
	stroke-width: 1px;
	-webkit-text-stroke-color: #000;
	stroke: #000;
}

.stroke-white mark {
	color: #ffffff00 !important;
	-webkit-text-stroke-color: #fff;
	stroke: #fff;
	
}

.stroke-black mark {
	color: #ffffff00 !important;
	-webkit-text-stroke-color: #000;
	stroke: #000;
	
}
.stroke-white.stroke-hover mark {
	transition: color .3s ease;
}
.stroke-white.stroke-hover:hover mark {
	color: #fff !important;
	cursor: pointer;
}

/* == Marquee Container == */
.marquee-container {
	width: 100%;
	padding: 0;
	font-size: 2rem;
	font-weight: bold;
	white-space: nowrap;
}
@media(min-width:768px) {
	.marquee-container {
		font-size: 3rem;
	}
}

.marquee-container .stroke-black mark {
	background-color:rgba(0, 0, 0, 0);
	color: #ffffff00 !important;
	stroke-width: 1px;
	-webkit-text-stroke-color: #fff;
	stroke: #fff;
}
.marquee-container span:not(:last-of-type):after {
	content: "•";
	margin: 0 1rem;
}


.marquee-content {
	display: inline-flex;
	padding-left: 100%; /* Starts the text off-screen to the right */
	animation: scrolling-text 40s linear infinite; /* Applies the animation */
}

@keyframes scrolling-text {
	0% {
		transform: translateX(0%); /* Starting position */
	}
	100% {
		transform: translateX(-100%); /* Ending position: moves the content entirely off-screen to the left */
	}
}





/* Trust Index */
#wrapper .has-header-badge .ti-header {
	background-color: #3d5f6b !important;
	border: none !important;
	color: #fff !important;
}

#wrapper .has-header-badge .ti-platform-icon {
	background-color: white;
	border-radius: 1rem 0 0 1rem !important;
}
#wrapper .has-header-badge .ti-verified-by {
	display: none;
}


