/*======================== Style Reset ========================*/
/**
 * Reset stylesheet to normalize styles across browsers
 */

body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,form,fieldset,label,input,textarea,p,blockquote,th,td {  
	margin:0; 
	padding:0; 
	}
table { 
	border-collapse:collapse; 
	border-spacing:0; 
	}
fieldset,img {  
	border:0; 
	}
address,caption,cite,code,dfn,em,strong,th,var { 
	font-style:normal; 
	font-weight:normal; 
	}
ol,ul,li { 
	/*list-style:none; 
	margin: 0;
	padding: 0;*/
	}
caption,th { 
	text-align:left; 
	} 
h1,h2,h3,h4,h5,h6 { 
	font-size:100%; 
	font-weight:bold;
	} 
q:before,q:after { 
	content:''; 
	} 
abbr,acronym { 
	border:0; 
	} 
a {
	text-decoration: none;
	}
img {
	display: block;
	vertical-align: middle;
	max-width: 100%;
	}

* {
   -moz-box-sizing: border-box;
   -webkit-box-sizing: border-box;
	box-sizing: border-box;
	}

html {
	font-family: var(--ff-primary);
	font-size: 100%;
	height: 100%;
	scroll-behavior: smooth;
	/* scroll-padding-top: 156px; */
	}
	
html * {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

/*======================== Root Variables ========================*/
/*#region------------ root variables ------------*/
:root {
    /*============ COLORS ============*/
    --temp: #211959;
    --color-picker: rgb(241, 129, 42);
    --clr-primary: 7,55,113;
    --clr-secondary: ,,;
    --clr-accent: 224,48,42;
    --clr-accent: #E23129;
    --clr-text-light: 255,255,255;
    --clr-text-dark: 7,55,113;
    /*------ card colors ------*/
    --clr-1: #9CA6BE;
    --clr-2: #D5BFA9;
    --clr-3: #899B77;
    --clr-4: #A0C9D2;
    --clr-5: #CCBE73;
    --clr-6: #BE564D;
    --clr-6: #E23129;
    /*------Hero slide colors ------*/
    --clr-7: #84A06B;
    --clr-8: #604637;
    
    
    --accent: #E23129;

    /*============ FONT VARIABLES & SETTINGS ============*/
    font-size: 16px;
    --ff-primary: 'Open Sans', sans-serif;
    --ff-serif: Georgia, 'Times New Roman', Times, serif;
    --ff-sans-serif: 'Open Sans', Verdana, Geneva, Tahoma, sans-serif;
    --ff-monospace: 'Courier New', Courier, monospace;

    --ff-body: var(--ff-primary);
    --ff-heading: var(--ff-primary);
    --ff-button: var(--ff-primary);
    
	--display-font: 'Open Sans', sans-serif;
	--body-font: 'Open Sans', sans-serif;
	--display-med: 400;
	--display-semibold: 600;
	--display-bold: 700;
	--body-light: 400;
	--body-med: 600;
	--body-bold: 700;
    
    
    /*---------------------------------------------------*/
    --fw-super-light: 300;
    --fw-light: 400;
    --fw-regular: 500;
    --fw-semi-bold: 600;
    --fw-bold: 700;
    --fw-super-bold: 800;
    /*---------------------------------------------------*/
    --fs-1000: 1rem;
    --fs-1200: 1.2rem;
    --fs-1500: 1.5rem;
    --fs-2000: 2rem;
    --fs-3500: 3.5rem;

    --fs-primary-heading: var(--fs-2000);
    --fs-secondary-heading: var(--fs-1200);
    --fs-body: var(--fs-1000);
    --fs-button: var(--fs-1000);

    /*============ PAGE LAYOUT ============*/
    --page-margin: 3vw;
    --section-gap: 3rem;
}
/* Variables for small screen sizes */
@media only screen and (max-width: 600px) {
  :root {
    --fs-primary-heading: var(--fs-1200);
    --fs-secondary-heading: var(--fs-1000);
  }
}
/* Variables for extra large screen sizes */
@media only screen and (min-width: 1400px) {
  :root {
    --page-margin: 15vw;
  }
}
/*#endregion*/

/*++++++++++++++++++++++++ NO CUSTOM PHP VARIABLES AFTER THIS POINT ++++++++++++++++++++++++ */

/* ----- [ main.css ] --------- */
/* Buttons */ 
/*Arrow Button*/
.arrow-button,
.hero-text .button {
    background-color: white;
    width: 48px;
    height: 48px;
    display: inline-flex;
    justify-content: space-between;
    color: inherit;
    text-decoration: none;
    border-radius: 12rem;
    transition: width 0.5s ease;
	}
.arrow-button:hover,
.hero-text .button:hover {
    width: 150px;
    height: 48px;
	}

.arrow-button-text {
    width: 0;
    overflow: hidden;
    align-self: center;
    padding-left: 1rem;
    font-weight: 500;
    font-size: 1.1rem;
    transition: width 0.5s ease;
	}
.hero-text .arrow-button-text {
    font-size: 1.3rem;
    font-weight: 600;
    }

.arrow-button:hover .arrow-button-text{
    width: 100px;
	}
.arrow-button i {
    font-size: 3rem;
    margin-left: -1rem;
    color: inherit;
    background-color: white;
    border-radius: 12rem;
	}
.arrow-button .bi::before{
    vertical-align: 0.05em;
	}

/*Text-button*/
.text-button {
    border: 2px solid white;
    border-radius: 2.5rem;
    padding-block: 0.3rem;
    padding-inline: 1rem;
    background-color: var(--clr-3);
    color: rgb(var(--clr-text-light));
    font-size: var(--fs-1500);
    font-weight: bold;
    white-space: nowrap;
}
.text-button:hover {
    border: 2px solid var(--clr-3);;
    background-color: white;
    color: var(--clr-3);
}

/*Arrow Button Alt*/
.arrow-button-alt,
.button {
    border: 2px solid rgb(var(--clr-primary));
    width: 140px;
    width: auto;
    height: 42px;
    background-color: white;
    display: inline-flex;
    justify-content: space-between;
    align-self: flex-start;
    color: rgb(var(--clr-primary));
    text-decoration: none;
    border-radius: 12rem;
    transition: width 0.5s ease;
	}
.arrow-button-alt .arrow-button-text {
    width: 100px;
    font-size: 1.1rem;
	}
.arrow-button-alt i {
    font-size: 3rem;
    margin-left: -1.5rem;
    color: inherit;
    background-color: white;
    border-radius: 12rem;
    transition: all 0.3s ease;
	}
.arrow-button-alt .bi::before {
    line-height: 40px;
    vertical-align: top;
	}
.arrow-button-alt:hover i {
	margin-left: -1rem;
	}


.button {
	font-size: 1.1rem;
	font-weight: 500;
	line-height: 40px;
	width: auto;
	padding: 0 1em;
	padding: 0 0.3em 0 0.8em;
	
	}
.button:after {
	content: "";
	width: 40px;
	height: 40px;
	margin-left: 0.2em;
	border-radius: 50%;
	background: url('/site/templates/images/arrow-right-1.svg') center center no-repeat;
	background-size: 62%;
	transition: all 0.2s ease;
	}
.button:hover:after {
	margin-left: 0.7em;
	}

/*Arrow Button Simple*/
.arrow-button-simple {
    background-color: white;
    width: 36px;
    height: 36px;
    display: inline-flex;
    justify-content: space-between;
    color: inherit;
    text-decoration: none;
    border-radius: 12rem;
    transition: width 0.5s ease;

}
.arrow-button-simple:hover{
    width: 36px;
    height: 36px;
}
.arrow-button-simple i {
    font-size: 2rem;
    margin-left: -1rem;
    color: inherit;
    background-color: white;
    border-radius: 12rem;
    border: 2px solid rgb(var(--clr-primary));
}
.arrow-button-simple .bi::before{
    vertical-align: 0.15em;
}

/*in-text-button*/
.in-text-btn {
    min-width: 120px;
    border-radius: 12rem;
    border: 2px solid rgb(var(--clr-primary));
    background-color: white;
    color: rgb(var(--clr-primary));
    text-decoration: none;
    padding-block: 0.3rem;
    padding-inline: 1rem;
}
.in-text-btn:hover {
    background-color: rgb(var(--clr-primary));
    color: rgb(var(--clr-text-light));
}

/* --- PS --- */
/* ----- [ Typography ] -------------------------*/
p,
li,
td {
	/* font-family: var(--body-font);
	font-weight: var(--body-light); */
	font-style: normal;
	font-variation-settings: "wdth" 100;
	font-size: 1.2rem;
	line-height: 1.6em;
	margin: 0 0 1em;
	}
	
ul {
	margin: 1em 0;
	}

li {
	margin: 0;
	}
em {
	font-style: italic;
	}
strong, b {
	font-weight: 700;
	}
	
h1,.h1 {
    font-size: var(--fs-1500);
	font-size: 3rem;
	font-size: 2.2rem;
	font-size: clamp(2.2rem, 1.7726027397260276rem + 1.753424657534246vw, 3rem);
	line-height: 1.2;
	margin: 0 0 0.5em;
	}
h2,.h2 {
	font-size: 2.25rem;
	font-size: 2rem;
	line-height: 1.2;
	margin: 0 0 0.5em;
	}
h3,.h3 {
	font-size: 1.8rem;
	font-size: 1.7rem;
	font-weight: 600;
	line-height: 1.2;
	margin: 0 0 0.5em;
	}
h4,.h4 {
	font-size: 1.4rem;
	font-weight: 700;
	line-height: 1.2;
	margin: 0 0 0.5em;
	}
	
.hero-text p {
	font-size: 1.6rem;
	line-height: 1.45;
	font-weight: 600;
	}
	
.cta-banner-inner h2 {
	margin: 0;
	}
	
.sticky-head {
	position: sticky;
	top: 0;
	background: #fff;
	z-index: 1;
	}
	
/* ----- [ universal layouts ] ------------------- */
.section-hr {
	width: 100% !important;
	margin: 2em 0!important;
	}
.section-break {
	width: 100% !important;
	margin: 0!important;
	border: none;
	background: none;
	}
	
.category-hero .inner,
.category-hero-inner {
	background-size: cover!important;
	}

	
/* Policy Pages */
.main-col {
	flex: 1;
	margin-left: 10%;
	margin-right: 3em;
	}
.sidebar-col {
	max-width: 320px;
	margin-right: 10%;
	}
.side-menu {
	border: 5px solid #ccc;
	padding: 20px;
	}
	
.spacer-3 {
	margin-top: 3em;
	margin-bottom: 2em;
	background: #ccc;
	background: rgb(var(--clr-primary));
	border: none;
	height:2px;
	}

@media only screen and (min-width: 800px) {
	.ps-row {
		display: flex;
		flex-direction: row;
		justify-content: flex-start;
		align-items: stretch;
		column-gap: 10px;
		width: 100%;
		}
	.f-wrap {
		flex-wrap: wrap;
		}
	.ps-col {
		flex: 1;
		position: relative;
		}
	.padding-20 {
		column-gap: 20px;
		}
	.padding-30 {
		column-gap: 30px;
		}
	.padding-40 {
		column-gap: 40px;
		}
		
	.col.t-1of2,
	.col.t-50 {
		flex: 1 1 50%;
		}
	.col.t-1of3,
	.col.t-33 {
		flex: 1 1 33.3333%;
		}
	.col.t-2of3,
	.col.t-66 {
		flex: 1 1 66.6666%;
		}
	.col.t-1of4,
	.col.t-25 {
		flex: 1 1 25%;
		}
	.col.t-3of4,
	.col.t-75 {
		flex: 1 1 75%;
		}
	.col.t-1of5,
	.col.t-20 {
		flex: 1 1 20%;
		}
	.col.t-2of5,
	.col.t-40 {
		flex: 1 1 40%;
		}
	
	.col.t-45 {
		flex: 1 1 45%;
		}
		
	.col.t-3of5,
	.col.t-60 {
		flex: 1 1 60%;
		}
	
	.col.t-55 {
		flex: 1 1 55%;
		}
}

p img {
	border-radius: 10px;
	}

img.align_center {
	width: 100%;
	}

.p-home-services .align_right {
	margin: 0 0 0 auto;
	}

.form-wrapper {
	border: 3px solid #ccc;
	padding: 0 1.5em 1em;
	border-radius: 10px;
	}


input,
button,
select,
textarea {
	font-family: inherit;
	font-size: inherit;
	line-height: inherit;
	}

/* utilities */
.cms-text ul,
.cms-text ol {
	margin: 0 0 1em;
	}
.cms-text ul li {
	/*list-style-type: disc;*/
	list-style-position: outside;
	line-height: 1.6;
	margin: 0 0 0 2em;
	position: relative;
	}
	
.cms-text ul li:before {
	content: "";
	position: absolute;
	/*height: 28px;
	width: 28px;*/
	height: 10px;
	width: 32px;
	left: -2em;
	top: 0.6em;
	/* background: url('../images/circle-check.svg') no-repeat; */
	background: url('../images/pill-bullet.png') no-repeat;
	background-size: cover;
	}
	
.cms-text ol li {
	list-style-type: decimal;
	list-style-position: outside;
	line-height: 1.6;
	margin: 0 0 0 2em;
	}
	
.cms-text p + h2,
.cms-text ul + h2 {
	margin-top: 1em;
	}

/* [ break ] columns */
.col { flex:1 }


.solid-head {
	color: #fff;
	margin: 0 0 40px;
	border-top: 20px solid #fff;
	padding: 1.5em 2em;
	background: rgb(var(--clr-primary));
	}
.solid-head h1 {
	margin: 0 0 0.2em;
	}
.single-column {
	max-width: 55em;
	/*margin-left: auto;
	margin-right: auto;*/
	}

/* ----- [ FAQ ] --------------- */
dl.accordion {
	margin: 0;
	padding: 25px 0 0;
	position: relative;
	border-top: 2px solid #ccc;
	overflow: hidden;
	}
dl.accordion > dt {
	font-family: var(--body-font);
	list-style: none;
	}

dl.accordion > dt > a {
	color: #000;
	display: block;
	vertical-align: middle;
	position: relative;
	padding-right: 4em;
	padding-bottom: 15px;
	text-decoration: none;
	transition: all .2s ease; 
	border-bottom: 2px solid #ccc;
	}
	
.accordion h2 {
	/*font-size: 1.45rem;*/
	color: rgb(var(--clr-text-dark));
	margin: 0 0 0 1.8em;
	margin-bottom: 0;
	text-indent: -1.6em;
	}
.accordion h2:hover {
	color: rgb(var(--clr-accent));
	}
.accordion h2 span {
	font-size: 0.9em;
	}

dl.accordion > dt span {
	/*display: block;*/
	margin: 0;
	text-transform: none;
	font-weight: 400;
	}

dl.accordion > dt > a:before {
	content: '';
	position: absolute;
	height: 34px;
	width: 34px;
	background: url('/site/templates/images/arrow-right.svg') center center no-repeat;
	background-size: 60%;
	transform: rotate(0deg);
	transition: all .3s ease;
	right: 0;
	top: 0;
	font-size: 1.8rem;
	font-weight: 400;
	border: 2px solid rgb(var(--clr-text-dark));
	border-radius: 50%;
	}

dl.accordion > dt > a.open {
	border-bottom: none;
	}

dl.accordion > dt > a.open:before {
	content: ''; /* true minus sign */
	background: url('/site/templates/images/arrow-right.svg') center center no-repeat;
	background-size: 60%;
	transform: rotate(90deg);
	}
dl.accordion dd {
	padding: 0;
	margin: 0 0 15px;
	max-height: 0;
	opacity: 0;
    transition: all .4s ease;
    overflow: hidden;
	}
dl.accordion dd.is-open {
	padding: 0 0 15px;
	max-height: 10000px;
	opacity: 1;
	border-bottom: 1px solid #ccc;
	}
dl.accordion dd div {
	margin: 0 0 0 60px;
	position: relative;
	}
dl.accordion dd div:before {
	content: "A.";
	position: absolute;
	top: -5px;
	left: -52px;
	font-size: 2rem;
	font-weight: 700;
	}
	
	
dl.accordion p {
	line-height: 1.5;
	}
	
dd > h3 {
	font-size: 1.2rem;
	}
	
@media only screen and (min-width: 600px) {
	dl.accordion > dt > a {
		padding-bottom: 25px;
		}
	dl.accordion dd {
		margin: 0 0 25px;
		}
	.accordion h2 {
		/*font-size: 2.0rem;*/
		}
	.accordion a h3 {
		margin-bottom: 0;
		}
	dl.accordion > dt > a:before {
		height: 34px;
		width: 34px;
		}
	dd > h3 {
		font-size: 1.7rem;
		}
	dl.accordion p {
		/*line-height: 1.8;*/
		padding-right: 2em;
		}
	dl.accordion p {
		/*font-size: 1.2rem;*/
		padding-right: 2em;
		}
}

.sidebar-img {
	border-radius: 10px;
	margin: 0 0 20px;
	}

#editpage {
	position: fixed;
	bottom: 0;
	left: 0; 
	padding: 5px 6px; 
	background: #db1174; 
	color: #fff; 
	display: block;
	font-weight: bold; 
	z-index: 1000;
	}
#editpage:hover {
	background: #ffffcc;
	color: #000; 
	}

.WireFatalError {
	background: #a30000; 
	color: #fff; 
	padding: 1em; 
	position: relative;
	z-index: 9999;
	}



/* ----- [ Page Header / Masthead ] -----------------*/
.page-header {
	/* fixed or not */
	position: sticky;
	top: 0;
	padding: 0 20px;
	height: auto;
	z-index: 999;
	background: #fff;
	-webkit-transform: translateZ(0);
	-moz-transform: translateZ(0);
	-ms-transform: translateZ(0);
	-o-transform: translateZ(0);
	transform: translateZ(0);
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	-webkit-transition: all 0.4s;
	-moz-transition: all 0.4s;
	-o-transition: all 0.4s;
	transition: all 0.4s;
	/*border-bottom: 1px solid #ccc;*/
	}
	
.page-header .ps-inner {
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-items: center;
	width: 100%;
	max-width: var(--inner-very-wide);
	max-width: 1300px;
	margin: 0 auto;
	padding: 20px 0;
	background: #fff;
	}

.logo-wrapper {
	display: block;
	width: 330px;
	width: calc(100vw - 35%);
	max-width: 330px;
	height: auto;
	margin: 0;
	text-decoration: none;
	border: none;
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
	transition: all 0.3s ease;
	}
.logo-wrapper img {
	max-width: 100%;
	}

.head-meta {
	text-align: right;
	display: none;
	}
.head-meta-mobile {
	text-align: right;
	display: none;
	}
/*
.top-bar {
	font-size: 1.05rem;
	font-weight: var(--body-med);
	text-align: center;
	color: #fff;
	background: var(--black);
	padding: 5px 20px;
	}
.top-bar a {
	color: #fff;
	text-decoration: none;
	}
.top-bar span {
	display: none;
	}
*/
.head-phone,
.head-cta {
	color: var(--accent);
	display: inline-block;
	font-size: 1.2rem;
	font-weight: var(--body-bold);
	text-decoration: none;
	margin: 0 0 0.4em;
	margin: 0;
	}
.head-phone:last-child {
	margin-bottom: 0.5em;
	}
.head-phone .menu-link {
	font-weight: var(--body-bold);
	}
.head-phone:hover,
.head-cta:hover {
	text-decoration: underline;
	}

@media screen and (min-width: 1270px) {
	.head-meta {
		display: block;
		}
}

/* ----- [ Navigation / Search ] ------ */
.navigation-wrapper {
	display: flex;
	flex-direction: column-reverse;
	}
.main-navigation {
	position: absolute;
	top: 0;
	left: 0;
	width: 100vw;
	height: 100vh;
	height: 0;
	margin: 0;
	padding: 10% 10%;
	display: flex;
	flex-direction: column;
	justify-content: flex-start;
	align-items: flex-start;
	overflow: hidden;
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
	transition: all 0.3s ease;
	background: #fff;
	z-index: -1;
	opacity: 0;
	}
	
.main-navigation.is-open {
	min-height: 100vh;
	min-height: calc(100vh - 30px);
	opacity: 1;
	overflow: scroll;
	padding-top: 160px;
	padding-bottom: 3em;
	}
	
.main-navigation ul {
	margin: 0 0.5em;
	}
.level-2 {
	list-style: none;
	font-weight: var(--body-med);
	margin: 0.4em 0;
	text-decoration: none;
	}
.level-3 {
	margin: 0.3em 1em;
	text-decoration: none;
	}
	
.menu-item {
	list-style: none;
	margin: 0.5em 0;
	text-decoration: none;
	}
.menu-link {
	color: var(--clr-primary);
	font-weight: var(--body-med);
	font-size: 1.6rem;
	line-height: 1.4;
	text-decoration: none;
	text-transform: none;
	border-bottom: 4px solid transparent;
	cursor: pointer;
	}
.menu-link:hover,
.menu-link.on {
	text-decoration: none;
	border-bottom: 4px solid var(--accent);
	}
.menu-link:hover {
	color: var(--navyblue);
	text-decoration: none;
	border-bottom: 4px solid var(--accent);
	}
	
.dropnav {
	padding-top: 0.6em;
	display: none;
	}

.dlink {
	/*display: inline-block;*/
	}
	
.has-children:after {
	content: "\25B8";
	margin-left: 0.4em;
	}
.has-children.submenu-open:after {
	content: "\25BE";
	margin-left: 0.4em;
	}

.dropnav .menu-item {
	font-family: var(--body-font);
	font-weight: var(--body-med);
	color: #222;
	font-size: 1.4rem;
	line-height: 1.2;
	margin: 0 0 0.4em;
	padding: 0;
	text-transform: none;
	text-decoration: none;
	background-color: transparent;
	border-bottom: 2px solid transparent;
	}
.dropnav .menu-item b {
	content: "&nbsp;";
	display: inline-block;
	width: 8px;
	height: 18px;
	margin-top: 2px;
	margin-bottom: -2px;
	margin-right: 10px;
	}
		
.dropnav .menu-item:hover,
.dropnav .menu-item.on {
	color: #000;
	text-decoration: none;
	/*border-bottom: 2px solid var(--accent);*/
	}
	
.dropnav .menu-item:hover .dlink,
.dropnav .menu-item.on .dlink {
	display: inline;
	/*font-weight: 400;*/
	border-bottom: 2px solid var(--accent);
	}

@media only screen and (min-width: 950px) {
	.main-navigation {
		display: flex;
		flex-direction: row;
		position: relative;
		justify-content: flex-start;
		align-items: center;
		width: auto;
		height: auto;
		margin: 0;
		padding: 0;
		background-color: transparent;
		overflow: visible;
		flex-basis: 34%;
		opacity: 1;
		z-index: 1;
		}

	.menu-item {
		position: relative;
		display: inline-block;
		margin: 0 1em;
		white-space: nowrap;
		}
	.menu-item:last-child {
		margin-right: 0;
		}

	.menu-link {
		color: rgb(var(--clr-primary));
		font-size: 1.05rem;
		line-height: 1.2;
		font-weight: var(--body-med);
		padding: 0;
		background-color: transparent;
		}
		
	.menu-item:hover .dropnav {
		top: 120%;
		visibility: visible;
		opacity: 1;
		}

	.dropnav {		
		display: block;
		position: absolute;
		width: auto;
		top: 180%;
		left: -1em;
		/* left: -50%; */
		text-align: left;
		background: #fff;
		z-index: 9999;
		visibility: hidden;
		opacity: 0;
		padding: 20px;
		box-shadow: 0 1px 10px 0 rgba(0, 0, 0, 0.15);
		white-space: nowrap;
		-webkit-transform: none;
		-moz-transform: none;
		-ms-transform: translateX(0px);
		-o-transform: none;
		transform: none;
		-webkit-transition: all .3s ease;
		-moz-transition: all .3s ease;
		-o-transition: all .3s ease;
		transition: all .3s ease;
		/* new */
		/*
		left: 50%;
		-webkit-transform: translateX(-50%);
		-moz-transform: translateX(-50%);
		-ms-transform: translateX(-50%);
		-o-transform: translateX(-50%);
		transform: translateX(-50%);
		*/
		}
	.li-containers + .dropnav {
		left: auto;
		right: 0;
		}
	
	.level-2.mobile-only {
		display: none;
		}
		
	.dropnav ul,
	.nav-services {
		margin: 0;
		}
		
	.dropnav li {
		display: block;
		text-align: left;
		margin: 0;
		padding: 0;
		}

	.dropnav .menu-item {
		font-size: 1.1rem;
		}


	.main-navigation .level-2 {
		margin: 0;
		}
	.main-navigation .level-2 ul {
		margin: 0 0 0.2em;
		/* new */
		margin: 0;
		padding: 0 0 0.3em;
		}
		
	.has-children:after,
	.has-children.submenu-open:after  {
		content: "";
		margin-left: 0;
		}
		
	/* new */
	.main-navigation .level-2 {
		margin: 0;
		-webkit-column-break-inside: avoid;
		break-inside: avoid;
		}
		
	.main-navigation .level-3 .menu-item {
		font-weight: var(--body-light);
		font-size: 1rem;
		margin-left: 1em;
		}
		
	.nav-containers {
		columns: 3;
		}
		
	.submenu-toggle {
		position: relative;
		top: -1px;
		z-index: 2;
		display: inline-block;
		height: 12px;
		line-height: 12px;
		font-size: 12px;
		}

	.submenu-toggle:before {
		content: '\f107';
		font-family: 'FontAwesome', sans-serif;
		}
}
@media only screen and (min-width: 1260px) {
	.li-containers + .dropnav {
		/* new */
		left: 50%;
		right: auto;
		-webkit-transform: translateX(-50%);
		-moz-transform: translateX(-50%);
		-ms-transform: translateX(-50%);
		-o-transform: translateX(-50%);
		transform: translateX(-50%);
		}
}


/* ----- [ Menu Trigger (Hamburger) ] ---- */
.menu-toggle {
	position: absolute;
	right: 2em;
	display: block;
	background: transparent;
	width: 44px;
	height: 44px;
	cursor: pointer;
	}
.menu-toggle a {
	display: none;
	}

.menu-toggle .menu-icon {
	/* this span is the central line in the menu menu */
	display: inline-block;
	position: absolute;
	left: 50%;
	top: 50%;
	bottom: auto;
	right: auto;
	-webkit-transform: translateX(-50%) translateY(-50%);
	-moz-transform: translateX(-50%) translateY(-50%);
	-ms-transform: translateX(-50%) translateY(-50%);
	-o-transform: translateX(-50%) translateY(-50%);
	transform: translateX(-50%) translateY(-50%);
	width: 26px;
	height: 2px;
	background-color: #fff;
	/* these are the upper and lower lines in the menu menu */
	}
.menu-toggle .menu-icon::before, 
.menu-toggle .menu-icon:after {
	content: '';
	width: 100%;
	height: 100%;
	position: absolute;
	background-color: inherit;
	left: 0;
	}
.menu-toggle .menu-icon::before {
	bottom: 8px;
	}
.menu-toggle .menu-icon::after {
	top: 8px;
	}
.menu-toggle.is-clicked .menu-icon {
	background-color: rgba(255, 255, 255, 0);
	}
.menu-toggle.is-clicked .menu-icon::before, 
.menu-toggle.is-clicked .menu-icon::after {
	background-color: #fff;
	}
.menu-toggle.is-clicked .menu-icon::before {
	bottom: 0;
	-webkit-transform: rotate(45deg);
	-moz-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	-o-transform: rotate(45deg);
	transform: rotate(45deg);
	}
.menu-toggle.is-clicked .menu-icon::after {
	top: 0;
	-webkit-transform: rotate(-45deg);
	-moz-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	-o-transform: rotate(-45deg);
	transform: rotate(-45deg);
	}

/* was prefaced by 'is-solid' class */	
.menu-toggle .menu-icon {
	background-color: #222;
	}
.menu-toggle.is-clicked .menu-icon {
	background-color: rgba(255, 255, 255, 0);
	}
.menu-toggle.is-clicked .menu-icon::before, 
.menu-toggle.is-clicked .menu-icon::after {
	background-color: #222;
	}
	
@media only screen and (min-width: 950px) { /* 1020px */
	.menu-toggle {
		display: none;
		}
	.menu-toggle .menu-text {
		display: inline-block;
		line-height: 70px;
		}
	.menu-toggle .menu-icon {
		left: auto;
		right: 1.25em;
		-webkit-transform: translateX(0);
		-moz-transform: translateX(0);
		-ms-transform: translateX(0);
		-o-transform: translateX(0);
		transform: translateX(0);
		}
}

/* ----- [ product-category.css ] ------------- */
.category-hero {
    position: relative;
    height: 400px;
    height: 350px;
	}
.category-hero-inner {
	position: relative;
	background-size: cover;
	background-position: 50% 50% no-repeat;
	height: 100%;
	}

.category-hero-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    background: rgba(0,0,0,0.3);
    /*background: transparent linear-gradient(270deg, transparent 0%, #050404 100%) 0% 0% no-repeat padding-box;*/
    /*background: transparent linear-gradient(to left, transparent, rgba(3, 3, 3, 0.45) 71.85%, #050404) 0% 0% no-repeat padding-box;*/
	}

.hero-heading-wrapper {
    position: relative;
    display: flex;
    height: 100%;
    flex-direction: column;
    justify-content: flex-end;
    align-items: flex-start;
    padding: 20px 5vw 20px;
	}
	
.category-hero h1 {
    color: rgb(var(--clr-text-light));
    margin-bottom: 0;
    max-width: 16em;
	}
.category-hero h3 {
    color: rgb(var(--clr-text-light));
    max-width: 48ch;
    margin-top: 0.5em;
    }
.category-hero p {
    color: rgb(var(--clr-text-light));
    font-size: var(--fs-2000);
    line-height: 1.3;
    max-width: 18em;
	}
	
@media only screen and (min-width: 720px) {
	.category-hero-overlay {
	    background: transparent linear-gradient(to left, transparent, rgba(0, 0, 0, 0) 35.29%, rgba(3, 3, 3, 0.45) 68.49%, rgba(5, 4, 4, 0.68)) 0% 0% no-repeat padding-box;
		}
	.hero-heading-wrapper {
		justify-content: center;
		}
}
/*
.product-category-body {
    padding-block: var(--section-gap);
    padding-inline: var(--page-margin);
	}
*/
.product-category-body-inner {
    display: flex;
    flex-direction: column;
	}

.product-category-body-inner > * {
    color: rgb(var(--clr-primary));
	}

.product-category-product-menu {
    padding-inline: var(--page-margin);
	}

/* product grid */
.related-products-inner {
    display: grid;
    grid-template-columns: repeat(1, 1fr);
    column-gap: 20px;
    row-gap: 40px;
	}

@media only screen and (min-width: 550px) {
    .related-products-inner {
        grid-template-columns: repeat(2, 1fr);
    	}
}
@media only screen and (min-width: 720px) {
    .related-products-inner {
        grid-template-columns: repeat(3, 1fr);
    	}
}
@media only screen and (min-width: 820px) {
	.product-category-body-inner {
		flex-direction: row;
		column-gap: 2rem;
	}
}

@media only screen and (min-width: 1060px) {
    .related-products-inner {
        grid-template-columns: repeat(4, 1fr);
    	}
}

/* ----- [ Product Cards ] --------- */
.product-card {
    display: flex;
    flex-direction: column;
	}
.product-card-image-wrapper {
    width: 100%;
    background-position: center;
    background-size: cover;
    display: block;
    aspect-ratio: 1/1;
	overflow: hidden;
	/* for Chrome */
    /*overflow-clip-margin: unset;
	image-rendering: -webkit-optimize-contrast;
	-webkit-transform: translateZ(0);*/
	}
	
.product-card-image {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: all 0.3s ease;
	}
.product-card-image:hover {
	transform: scale(1.05);
	}
	
.product-card h3 {
	font-size: 1.6rem;
	line-height: 1.1;
	font-weight: 500;
    padding-block: 0.6rem;
    padding-inline: 1rem;
	min-height: 75px;
    background-color: rgb(var(--clr-primary));
    color: rgb(var(--clr-text-light));
	}
.product-card-description {
    padding-top: 0.5em 0;
    color: rgb(var(--clr-primary));
	}
.product-card-description p {
	font-size: 1.1rem;
	line-height: 1.4;
	}	
	
.product-card-otag-container {
    margin-top: auto;
    padding: 0.5em 0 1em;
	}
.product-card-otag {
    display: inline-block;
	padding: 0.25em 0.6em;
	margin: 5px 2px 0 0;
    color: rgb(var(--clr-text-light));
    font-size: 0.9rem;
    font-weight: 500;
	}
.product-card-otag:hover {
	filter: brightness(110%) contrast(101%);
	}
/* ----- [ product-page.css ] -------------- */
.product-details-section {
    padding-inline: var(--page-margin);
	}
	
/*.product-details-top,*/
.product-details-bottom {
	display: flex;
	flex-direction: column;
	margin-top: 20px;
	row-gap: 20px;
	}

.product-details-section-image-container {
    position: relative;
    width: 100%;
    height: 450px;
    margin-bottom: 20px;
	}
.product-details-panel {
	position: relative;
    width: 100%;
    height: auto;
	display: flex;
	flex-direction: column;
	justify-content: flex-start;
	align-items: stretch;
    }
	
/* Image Panel */
.product-details-section-image-container .hero-slide-arrow {
    z-index: 2;
    cursor: pointer;
	}
.product-details-section-image-container img {
    position: absolute;
    z-index: -1;
    width: 100%;
    height: 100%;
    object-fit: cover;
    /* for Chrome? */
    overflow-clip-margin: unset;
	overflow: visible;
	}
.product-details-section-image-container img[data-active] {
    z-index: 1;
	}
.product-details-section-image-container:hover .hero-slide-arrow i {
    opacity: 80%;
	}

@media only screen and (min-width: 860px) {
	.product-details-top {
		flex-direction: row;
		}
	.product-details-bottom {
		flex-direction: row;
		margin-top: 0;
		}
	.product-details-section-image-container {
		width: 55%;
    	height: 600px;
    	}
	.product-details-panel {
		width: 45%;
    	height: 600px;
    	}
}

/* Info Panel */
.product-details-panel {
    background-color: #f4f4f4;
    display: flex;
    flex-direction: column;
	}
.product-details-panel-top-bar {
    height: 1rem;
    width: 100%;
	height: auto;
	width: auto;
	color: #fff;
	padding: 10px 30px;
    background-color: rgb(var(--clr-primary));
    text-transform: uppercase;
	font-weight: 700;
	letter-spacing: 1px;
	font-size: 0.9rem;
	}

.product-details-panel h1 {
    font-size: clamp(1rem, 7vw, 2.2rem);
    color: rgb(var(--clr-primary));
    margin: 0 30px;
	padding: 0.5em 0;
    border-bottom: 3px solid rgb(var(--clr-primary));
	}
	
.product-details-panel-text-wrapper,
.product-details-text {
	padding: 0;
	padding: 15px 30px;
	inset: 0;
	}
	
.product-details-text p,
.product-details-text li {
	font-size: 1.1rem;
	}

.product-details-panel-text-selector {
	font-size: 6px;
	display: block;
	margin: 20px 30px 30px;
    background-color: white;
    border-top: 3px solid rgb(var(--clr-primary));
	}
	
.product-details-panel-text-selector-btn {
	font-size: 1.1rem;
	font-weight: 700;
	display: inline-block;
    padding-block: 0.2em;
    padding-inline: 1ch;
    color: rgb(var(--clr-primary));
    cursor: pointer;
	}

.product-details-panel-text-selector-btn.selected,
.product-details-panel-text-selector-btn:hover  {
    color: rgb(var(--clr-text-light));
    background-color: rgb(var(--clr-primary));
	}

.event-tabs {
	height: 100%;
	overflow: scroll;
	}
	
.tabs-navigation li {
	display: inline;
	margin: 0;
	}
.tabs-content {
	margin: 0 !important;
	}
.tabs-content > div {
	display: none;
	}
.tabs-content div.selected {
	display: block;
	}
	
.datasheet-link {
	display: flex;
	align-content: center;
	font-size: 1.2rem;
	line-height: 40px;
	font-weight: 700;
	color: inherit;
	color: rgb(var(--clr-primary));
	text-decoration: none;
	}
.datasheet-link:hover {
	text-decoration: underline;
	}
.datasheet-link img {
	width: 30px;
	margin: 0 20px 0 0;
	}

/* ----- [ Product Page ] --------- */
.product-page-otag-container {
    /*margin-top:  1.5rem;*/
    order: 2;
	}
.product-page-otag {
	color: rgb(var(--clr-text-light));
	font-size: 1.1rem;
	padding: 0.35em 0.7em;
	background: #ccc;
	display: inline-block;
	margin-bottom: 5px;
	text-decoration: none;
	}
.product-page-otag:hover {
	filter: brightness(110%) contrast(101%);
	}

.product-cta-btn-wrapper {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    padding: 30px;
    background: #f4f4f4;
    order: 1;
	}
	
@media only screen and (min-width: 860px) {
	.product-page-otag-container {
		order: 1;
		}
	.product-cta-btn-wrapper {
		order: 2;
		}
}




.occasion-hero-text-container {
    color: #fff;
    padding: 2em 15% 2em 2em;
    border-radius: 10px;
    height: 100%;
	}
.occasion-hero-text-container h1 {
    margin-bottom: 20px;
    /*font-size: var(--fs-3500);*/
	}

.occasion-hero-image-wrapper {
    min-height: 500px;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    border-radius: 10px;
	}

/*Occasion Page Content*/
.occasion-page-content {
    margin-top: var(--section-gap);
    padding-inline: var(--page-margin);
}
.occasion-page-content * {
    color: rgb(var(--clr-primary));
}
.occasion-page-content-inner h2 {
    margin-bottom: 1rem;
}
.occasion-page-content-inner {
    display: grid;
    grid-template-columns: 1fr 1fr;
    column-gap: 60px;
}
.occasion-page-content-body-copy-container img {
    width: 100%;
    object-fit: cover;
    margin-top: 2rem;
}

.occasion-page-content-products-container {
    max-height: 80vh;
    overflow-y: scroll;
}
.occasion-page-content-products-container::-webkit-scrollbar {
    width: 6px;
    color: transparent;
    /*background-color: rgb(var(--clr-primary), 0.5);*/
    background-color: #9ca6bebd;
}
.occasion-page-content-products-container::-webkit-scrollbar-track {
    box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.3);
}
.occasion-page-content-products-container::-webkit-scrollbar-thumb {
    background-color: rgb(var(--clr-primary));
    border-radius: 1rem;
}
.occasion-page-content-products-container-inner {
    height: fit-content;
    display: grid;
    grid-template-columns: 1fr;
    row-gap: 20px;
}
.occasion-related-product {
    position: relative;
    max-height: fit-content;
    display: grid;
	grid-template-columns: 120px 3fr;
    column-gap: 20px;
    padding-bottom: 1.2em;
}
.occasion-related-product img {
    width: 100%;
    aspect-ratio: 1/1;
    object-fit: cover;
    object-position: center;
}
.occasion-related-product-text-container {
    border-top: 4px solid var(--clr-1);
	padding-top: 6px;
	margin: 0;
}
.occasion-related-product-text-container h3 {
    margin-block: 0.2rem;
}
.occasion-related-product-text-container p {
	font-size: 1.05rem;
	line-height: 1.4;
	margin: 0;
	}
.occasion-related-product .arrow-button-simple {
	position: relative;
	margin: 0;
	padding: 0;
	top: 10px;
	right: 0;
	text-align: right;
}

.occasion-related-product-text-container p:last-child {
	text-align: right;
	margin: -0.5em 0 0.5em 0;
	}

@media only screen and (min-width: 800px) {
	.related-products-wrapper {
		position: absolute;
		top: 0;
		left: 0;
		right: 0;
		bottom: 0;
		overflow: auto;
		}
	.related-products-vertical {
		/*height: 400px;
		overflow: auto;*/
		}
	.occasion-related-product {
		grid-template-columns: 160px 3fr;
		}
}


/*CTA BANNER OVERRIDES*/
/*
.p-occasion-weddings .cta-banner-inner {
    background-color: var(--clr-4);
}
.p-occasion-construction .cta-banner-inner {
    background-color: var(--clr-5);
}
.p-occasion-events .cta-banner-inner {
    background-color: var(--clr-1);
}
.p-occasion-festivals .cta-banner-inner {
    background-color: var(--clr-6);
}
*//*======================== contact.css ========================*/
/*#region contact.css*/
.contact-details {
    margin-top: var(--section-gap);
    padding-inline: var(--page-margin);
    color: rgb(var(--clr-text-dark));
}
.contact-details-inner {
    margin-inline: auto;
    max-width: 800px;
    display: flex;
    flex-direction: column;
    row-gap: 3rem;
}
@supports not(gap:3rem){
    .contact-details-inner > *:not(:first-child){
        margin-bottom: 3rem;
    }
}

.address-wrapper .business-name {
    font-weight: var(--fw-semi-bold);
}
.contact-details-inner a {
    color: rgb(var(--clr-text-dark));
}

.form-page-section {
    margin-top: var(--section-gap);
    display: grid;
    place-content: center;
}
.form-page-section *:not(.text-button){
    color: rgb(var(--clr-text-dark));
}
.form-page-section form {
    width: 800px;
}
.form-page-section form label:not(.terms){
    display: none;
}
.form-page-section form ul{
    list-style: none;
}
.form-page-section form ul li{
    margin-bottom: 2.5rem;
}
.form-page-section form input:not([type="checkbox"]),
.form-page-section form textarea {
    width: 100%;
    border: none;
    border-bottom: 1px solid lightgray;
}
.form-page-section form textarea {
    height: 150px;
}
.form-page-section *::placeholder {
    font-size: 1.1rem;
}
.form-page-section h2 {
    margin-bottom: 2.5rem;
}
.form-page-section form .terms {
    font-size: 0.9rem;
    margin-left: 1.1rem;
}
/*#endregion*/
.hero-carousel {
	display: flex;
    justify-content: center;
    position: relative;
    height: 500px;
    z-index: 900;
    margin-inline: var(--page-margin);
	}

.home-hero .col {
	display: flex;
	color: #fff;
	background: rgb(var(--clr-primary));
	background: #123F6B;
	flex: 1 0 calc(50% - 10px);
	border-radius: 10px;
	overflow: hidden;
	}
.home-hero .hero-text {
	display: flex;
	flex-direction: column;
	padding: 2em;
	}
.home-hero .hero-image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	}

.flex-row.m-column {
	flex-direction: column-reverse;
	row-gap: 20px;
	}

@media only screen and (min-width: 820px) {
	.flex-row.m-column {
		flex-direction: row;
		}
}
@media only screen and (min-width: 960px) {
	.home-hero .hero-text {
		padding: 3em 2.5em 2.5em;
		}
}

.hero-carousel-img-container {
    position: relative;
}

.hero-slide-arrow {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    background-color: transparent;
    width: 36px;
    height: 36px;
    display: inline-flex;
    justify-content: space-between;
    color: inherit;
    border-radius: 12rem;
    border: none;
    padding: 0;
    margin: 0;
}
.hero-slide-arrow i {
    opacity: 20%;
    font-size: 2.25rem;
    width: 36px;
    height: 36px;
    color: inherit;
    background-color: white;
    border-radius: 12rem;
    transition: opacity 0.5s ease;
}
.hero-slide-arrow i::before {
    line-height: 0.5;
    vertical-align: 0.05em;
}

.hero-next-arrow {
    right: 20px;
}
.hero-prev-arrow {
    left: 20px;
}

.hero-carousel-img-container {
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
}
.hero-carousel-img-container:hover .hero-slide-arrow i{
    opacity: 80%;
}

/* Arrows */
.slick-prev,
.slick-next {
    font-size: 0;
    line-height: 0;
    position: absolute;
    text-align: center;
	top: auto;
    left: auto;
    right: 20px;
	top: 50%;
	top: 55vw;
    display: block;
    width: 42px;
    height: 42px;    
    /*padding: 0 0 0 2px;*/
    text-indent: -1px;
    color: #000;
    background: #fff;
    opacity: 0.3;
    border-radius: 50%;
    -webkit-transform: translate(0,0);
    -moz-transform: translate(0,0);
    -ms-transform: translate(0,0);
    -o-transform: translate(0,0);
    transform: translate(0,0);
    cursor: pointer;
    z-index: 9;
}
.slick-prev {
	left: 20px;
	/*padding: 0 2px 0 0;*/
	text-indent: -1.5px;
	-webkit-transform: rotate(180deg);
	-moz-transform: rotate(180deg);
	-ms-transform: rotate(180deg);
	-o-transform: rotate(180deg);
	transform: rotate(180deg);
	}
	
@media only screen and (min-width: 820px) {
	.slick-next {
		top: 50%;
		right: 20px;
		}
	.slick-prev {
		top: 50%;
		left: calc(50% + 30px);
		/*padding: 0 2px 0 0;*/
		text-indent: -1.5px;
		}
}

.slick-prev:hover,
.slick-next:hover {
	background: #fff;
	color: inherit;
	opacity: 0.9;
	}
.slick-prev:before,
.slick-next:before {
	content: "\f135";
	color: #000;
	color: inherit;
	display: inline-block;
	font-family: bootstrap-icons !important;
	font-size: 3rem;
	font-style: normal;
	font-weight: normal !important;
	font-variant: normal;
	text-transform: none;
	line-height: 0.9;
	/*vertical-align: -.125em;*/
	padding-right: 10px;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}
.slick-prev:before,
.slick-next:before {
	color: #000;
	}
.slide-1 {}
/*
.slick-dots {
	bottom: 20px;
	}
*/.category-grid {
    margin-top: var(--section-gap);
	}

.category-grid .section-inner {
	overflow-x: scroll;
	}

.category-grid .flex-row {
	width: 200%;
	width: auto;
	}
.category-card {
    /*height: 100%;*/
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    max-width: 310px;
    min-width: 250px;
    flex: 1 0 calc(48% - 40px/3.33333);
    margin: 0 0 20px;
	}
	
@media only screen and (min-width: 820px) {
	.category-card {
		flex: 1 0 calc(23.5% - 40px/3.33333);
		}
}

.category-card-img-wrapper {
    width: 100%;
    aspect-ratio: 1/1;
    background-position: center;
    background-size: cover;
}
.category-card-text-wrapper {
    padding-block: 1rem;
    padding-inline: 1rem;
}
.category-card-text-wrapper h3 {
    color: rgb(var(--clr-text-light));
    font-weight: 500;
}
.category-card-button-wrapper {
    margin-top: auto;
    padding-inline: 1rem;
    padding-bottom: 1rem;
}	.testimonials-section .ps-inner { 
		position: relative;
		min-height: 500px;
		display: flex;
		justify-content: flex-end;
		align-items: center;
		padding: 3%;
		}
	.testimonials-section .hero-overlay { 
		position: absolute;
		height: 100%;
		left: 0;
		right: 0;
		}
	.testimonials {
		width: 100%;
		max-width: 38em;
		margin-right: 0;
		background: rgba(29,37,56,0.7);
		}
	.testimonials-section .slick-track {
		/*background: rgba(29,37,56,0.7);*/
		}
	.testimonial-text {
		color: #fff;
		/*background: rgba(29,37,56,0.7);*/
		padding: 6% 5% 6% 8%;
		margin: 0 2em;
		}
	.testimonial-text p,
	.testimonial-text span {
		font-size: 1.6rem;
		line-height: 1.4;
		/* use clamp */
		}
	.testimonial-text p:first-child {
		position: relative;
		}
	.testimonial-text p:first-child:before {
		content: "“";
		position: absolute;
		top: 13px;
		left: -0.45em;
		font-size: 3rem;
		line-height: 0.3;
		}
	.testimonial-text p:first-child:after {
		content: "”";
		}
	
	.testimonials .slick-dots {
		bottom: 15px;
		}
	.testimonials .slick-dots li button:before {
        font-family: 'slick';
        font-size: 10px;
        line-height: 20px;
        position: absolute;
        top: 0;
        left: 0;
        width: 20px;
        height: 20px;
        content: '•';
        text-align: center;
        opacity: .3;
        color: white;
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale;
    	}
    .testimonials .slick-dots li.slick-active button:before {
    	opacity: 0.8;
    	color: white;
		}
	.testimonials .slick-dots li:hover button:before {
    	opacity: 1;
    	color: white;
		}/* ----- [ Client Logos ] -----------------*/
.logos-section {
	padding: 30px 0;
	overflow: hidden;
	}
.inner-logos {
	max-width: 100%;
	padding-left: 0;
	padding-right: 0;
	}

.logo-list {
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	justify-content: center;
	align-items: center;
	margin: 30px 0;
	list-style: none;
	overflow: scroll;
	}
.client-logo {
	margin: 20px 30px;
	/* border: 1px solid green; */
	}
.client-logo img {
	display: block;
	max-height: 100px;
	max-width: 220px;
	margin: 0;
	margin-right: auto;
	margin-left: auto;
	opacity: 0.3;
	opacity: 1;
	}

@media only screen and (min-width: 870px) {
	.logo-list {
		justify-content: space-between;
		justify-content: center;
		}
}
.cta-banner {
    margin-top: var(--section-gap);
	}

.cta-banner-inner {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    column-gap: 2em;
    row-gap: 1em;
    max-width: 1300px;
    color: rgb(var(--clr-text-light));
    margin: 0 auto;
    padding: 2em;
    background-color: rgb(var(--clr-primary));
	}

.cta-banner-inner,
.cta-banner-inner h2 {
	text-align: center;
	}
	
@supports not(gap:2rem){
    .cta-banner-inner > *:not(:first-child){
        margin-left: 2rem;
    }
}

@media only screen and (min-width: 820px) {
	.cta-banner-inner {
		flex-direction: row;
		}
	.cta-banner-inner,
	.cta-banner-inner h2 {
		text-align: left;
		}
}
/* ----- [ Footer.css ] ------------- */
.page-footer {
	margin: 0;
	padding: 0 30px;
    margin-top: var(--section-gap);
    background-color: rgb(var(--clr-primary));
	}
.footer-inner {
	max-width: 1300px;
	margin: 0 auto;
	padding: 4em 0;
	display: flex;
	justify-content: flex-start;
	justify-content: space-between;
	flex-wrap: wrap;
	}
	
.footer-col {
	flex: 1 1 50%;
	margin-right: 2em;
	min-width: 170px;
	}
.footer-logo-wrapper {
	/*flex: 2;*/
	}

@media screen and (min-width: 660px) {
	.footer-col {
		flex-basis: 50%;
		max-width: 50%;
		margin-right: 0;
		}
}

@media screen and (min-width: 1070px) {
	.footer-col {
		flex: unset;
		margin-right: 2em;
		min-width: 170px;
		}
	.footer-logo-wrapper {
		flex: 2;
		}
}

.page-footer p,
.page-footer li {
	font-size: 1rem;
    color: rgb(var(--clr-text-light));
    text-decoration: none;
	}
.page-footer p {
	margin-bottom: 1.6em;
	}
	
.page-footer a {
	color: rgb(var(--clr-text-light));
    text-decoration: none !important;
    }
.page-footer a:hover {
	color: rgb(var(--clr-text-light)) !important;
    text-decoration: underline !important;
    }

.footer-logo-wrapper img {
	width: 100%;
    max-width: 290px;
    margin-bottom: 3em;
	}
.address-container {
    line-height: 1.5;
    padding-bottom: 2em;
	}

.links-container ul{
    list-style: none;
    margin: 0 0 1em;
	}
.links-container a:hover {
    text-decoration: underline;
	}

.copyright-wrapper {
	margin: 0 auto;
	padding: 0 0 1em;
	}
.copyright-wrapper p {
    font-size: 0.9rem;
    color: white;
    margin: 0;
    padding: 0;
	}

/* ----- [ SVG Social Media Icons ] --------------- */
.social-icons-wrapper .social-icon {
    display: inline-block;
    height: 22px;
	width: 22px;
    margin: 0 0.8em 0 0;
    white-space: nowrap;
	}

.social-icons-wrapper .social-icon a,
.social-icons-wrapper .social-icon a:visited {
    opacity: 1;
    border: none;
	}
.social-icons-wrapper .social-icon a:hover,
.social-icons-wrapper .social-icon a:active {
    color: var(--accent);
    opacity: 1;
    border: none;
	}

.social-icons-wrapper .social-icon svg {
    fill: currentColor;
    max-width: 100%;
    max-height: 100%;
    vertical-align: middle;
	}

.social-icons-wrapper .social-icon svg:hover {
	fill: var(--accent);
	}
.social-icon span {
	display: none;
	}
@media screen and (min-width: 770px) {
	.social-icons-wrapper {
		text-align: left;
		}
	
	.copyright-wrapper {
		display: flex;
		justify-content: space-between;
		justify-content: flex-start;
		margin: 0 auto;
		padding: 0;
		}
	.copyright-wrapper p {
		font-size: 0.9rem;
		color: white;
		margin: 0;
		padding: 1em 0;
		}
		
}




/* --- PS Universals : merge with main.css --- */
.page-section {
	margin: 0;
	margin-bottom: var(--section-gap);
	padding: 0 20px;
	}
.section-inner,
.ps-inner {
	max-width: 1300px;
	margin: 0 auto;
	/*padding: 0 30px;*/
	}
.flex-row {
	display: flex;
	column-gap: 20px;
	}

.cms-text a {
	color: inherit;
	font-weight: 600;
	text-decoration: underline;
	}
.cms-text a:hover {
	color: var(--clr-accent);
	}

/* home */	
.slide-1 .col { background: #123F6B; }
.slide-2 .col { background: #7DA165; }
.slide-3 .col { background: #654534; }

/*
.category-card {
	height: auto;
	display: flex;
	flex-direction: column;
	justify-content: flex-start;
	flex: 1;
	}
*/