/*
Theme Name: Custom Amish Cabinets
Theme URI: https://www.steerpoint.com/
Author: SteerPoint
Author URI: https://www.steerpoint.com/
Description: Custom Theme for the Custom Amish Cabinets Website
Version: 1.0
Text Domain: customamishcabinets
*/

/* Custom Properties */
:root {
	--spm-color-green: #99cc33;
	--spm-color-green-2: #5bbf21;
	--spm-color-blue: #002046;
	--spm-color-light-grey: #f5f5f5;
	--spm-color-grey: #666;
	
	--spm-font-family-body: Roboto, Arial, Helvetica, sans-serif;
	--spm-font-family-heading: Merriweather, Arial, Helvetica, sans-serif;
	
	--spm-header-height: 78px;
	--spm-nav-height: 40px;
	--spm-mobile-footer-height: 40px;
}
 
/* Remove This portion of code padding-top: calc(var(--spm-header-height) + var(--spm-nav-height) + 2px); */
/* Overall Formatting */
html {scroll-behavior: smooth;}
body {overflow-x: hidden;min-width: 320px;margin: 0;color: var(--spm-color-grey);font: 300 16px/1.5 var(--spm-font-family-body);background-color: #fff;-webkit-text-size-adjust: 100%;-ms-text-size-adjust: 100%;}

h1 {font-size: 1.5em;} h2 {font-size: 1.5em;} h3 {font-size: 1.3em;} h4 {font-size: 1em;} h5 {font-size: 1em;} h6 {font-size: 0.67em;}
h1, h2, h3, h4, h5, h6 {margin: 0 0 0.7em;}
p {margin: 0 0 1em;}
hr {margin: 0 0 1.5em;height: 2px;background-color: #ccc;border: none;}
a, a:visited {color: var(--spm-color-blue);text-decoration: none;transition: color 0.2s;}
a img {border: none;}
img {max-width: 100%;height: auto;}
ul, ol {margin: 0 0 1em;padding: 0 0 0 1em;}
li {margin: 0 0 0.2em;}
table {margin: 0 0 1em;}
tr {text-align: left;}
th, td {vertical-align: top;}
th {vertical-align: middle;}
input[type="date"], input[type="datetime-local"], input[type="email"], input[type="month"], input[type="number"], input[type="password"], input[type="search"], input[type="tel"], input[type="text"], input[type="time"], input[type="url"], input[type="week"],
textarea,
select {width: 100%;padding: 0.6em 1em;color: #000;font: 18px var(--spm-font-family-body);background-color: #fff;border: 1px solid #999;box-sizing: border-box;appearance: none;-webkit-appearance: none;}
select {margin: 0 5px 5px 0;vertical-align: middle;appearance: menulist;-webkit-appearance: menulist;}
input[type="submit"] {cursor: pointer;padding: 0.8em 1.5em;color: #fff;font: bold 16px/1em var(--spm-font-family-body);background-color: #000;border-radius: 4px;appearance: none;-webkit-appearance: none;transition: color 0.2s, background-color 0.2s, border-color 0.2s;}
input[type="submit"]:hover {background-color: var(--spm-color-grey);}
textarea {overflow: auto;}

/* Common Styles */
.clearfix:after {display: block;clear: both;content: '';}

.columns {display: flex;flex-wrap: wrap;gap: var(--spm-row-gap) var(--spm-column-gap);--spm-row-gap: 20px;--spm-column-gap: 20px;--spm-column-gap-adjusted: var(--spm-column-gap) * (var(--spm-column-count) - 1) / var(--spm-column-count); /* column gap multiplied by a - 1 / a (where a = column count) */;}
.columns.rtl {flex-direction: row-reverse;}
.columns.columns-2 {--spm-column-count: 2;}
.columns.columns-3 {--spm-column-count: 3;}
.columns.columns-4 {--spm-column-count: 4;}
.columns.columns-5 {--spm-column-count: 5;}
.columns.columns-6 {--spm-column-count: 6;}
.columns.columns-7 {--spm-column-count: 7;}
.columns.columns-8 {--spm-column-count: 8;}
.columns.columns-9 {--spm-column-count: 9;}
.columns > .column {width: calc(100% / var(--spm-column-count) - var(--spm-column-gap-adjusted));}

.full_coverage_link {position: absolute;overflow: hidden;left: 0;right: 0;top: 0;bottom: 0;text-decoration: none;text-indent: -999em;}
.full_coverage_link:hover {text-decoration: none;}

.video_container {position: relative;padding-top: 56.25%;margin: 0 0 10px;}
.video_container > *:first-child {position: absolute;display: block;left: 0;top: 0;width: 100%;height: 100%;max-width: none;}

a.anchor {position: relative;top: calc(0px - var(--spm-header-height) - var(--spm-nav-height) - 140px);}

/* - buttons (.button was already taken by WooCommerce) - */
.spm_button,
.spm_button:visited {position: relative;display: inline-flex;gap: 0.6em;padding: 0.8em 1.5em;color: #fff;text-decoration: none;font: 300 16px/1em var(--spm-font-family-body);background-color: #000;border-radius: 4px;transition: color 0.2s, background-color 0.2s;}
.spm_button:hover {text-decoration: none;background-color: var(--spm-color-grey);}

/* General Purpose Content Wrapper */
.wrap {max-width: 1120px;margin: 0 auto;padding: 0 20px;}

/* Responsive Menu */
#responsive_menu {position: fixed;z-index: 1000;overflow: auto;left: -999em;top: 0;bottom: 0;width: 100%;color: #fff;font-weight: 600;line-height: 1.2em;transition: left 0.3s step-end;}
.admin-bar #responsive_menu {top: var(--wp-admin--admin-bar--height);}
.menu_revealed #responsive_menu {left: 0;transition: none;}

#responsive_menu .overlay {opacity: 0;position: absolute;left: 0;right: 0;top: 0;bottom: 0;background-color: rgba(0,0,0,0.5);transition: opacity 0.3s linear;}
.menu_revealed #responsive_menu .overlay {opacity: 1;}

#responsive_menu .menu_container {position: absolute;overflow-y: scroll;left: 0;top: 0;bottom: 0;width: 250px;height: 100%;padding: 0 20px calc(var(--spm-mobile-footer-height) + 40px);background-color: #333;box-sizing: border-box;-webkit-overflow-scrolling: touch;transform: translateX(-100%);transition: transform 0.3s;}
.menu_revealed #responsive_menu .menu_container {transform: translateX(0);}

#responsive_menu .menu a {display: block;color: inherit;text-decoration: none;font: normal 18px var(--spm-font-family-heading);}
#responsive_menu .menu a:hover {background-color: rgba(255,255,255,0.07);}

#responsive_menu .menu {margin: 0 -20px;padding: 0;list-style: none;}

#responsive_menu .menu > li {margin: 0;}
#responsive_menu .menu > li > a {padding: 10px 20px;text-decoration: none;}
#responsive_menu .menu > li.current-menu-item > a,
#responsive_menu .menu > li.current_page_item > a {color: var(--spm-color-green);}

#responsive_menu .sub-menu {margin: 0 0 10px;padding: 0;list-style: none;font-weight: normal;font-size: 15px;line-height: 1.2em;}
#responsive_menu .sub-menu > li {margin: 0;padding: 0;border-bottom: none;}
#responsive_menu .sub-menu > li.current-menu-item > a,
#responsive_menu .sub-menu > li.current-menu-parent > a,
#responsive_menu .sub-menu > li.current_page_item > a {color: var(--spm-color-green);}
#responsive_menu .sub-menu > li > a {padding: 3px 20px 3px 25px;color: #ccc;}
#responsive_menu .sub-menu > li.menu-item-has-children > a {color: inherit;}
#responsive_menu .sub-menu .sub-menu {margin: 0 0 10px;text-transform: none;}
#responsive_menu .sub-menu .sub-menu > li > a {padding: 3px 20px 3px 35px;}
#responsive_menu .sub-menu .sub-menu .sub-menu li > a {padding: 2px 20px 2px 50px;}

/* Header */
.header_container {position: fixed;z-index: 999;left: 0;right: 0;top: 0;box-shadow: 0 1px 3px rgba(0,0,0,0.1);}
.admin-bar .header_container {top: var(--wp-admin--admin-bar--height);}

#header {font-family: var(--spm-font-family-body);background-color: #fff;}

#header .wrap {position: relative;max-width: 1260px;height: var(--spm-header-height);padding-bottom: 10px}

#header a {color: inherit;text-decoration: none;}

#header .spm_button {color: #fff;}

#header #responsive_menu_button {position: absolute;display: none;left: 30px;top: 30px;color: #000;text-transform: uppercase;text-decoration: none;font-size: 36px;}

#header .logo {position: absolute;z-index: 998;left: 20px;top: 5px;width: 204px;height: 80px;max-width: 100%;background: url(images/Logo2025.png) no-repeat 0 / 100% auto;image-rendering: -webkit-optimize-contrast;}
#header .logo a {position: relative;display: block;overflow: hidden;height: 100%;text-indent: -999em;}

#header .contact_information {position: absolute;right: 20px;top: 28px;display: flex;gap: 20px;margin: 0;padding: 0;list-style: none;font-size: 17px;}
#header .contact_information li {margin: 0;padding: 0 0 2px;}
#header .contact_information li.underline {border-bottom: 4px solid var(--spm-color-green-2);}
#header .contact_information li a {display: flex;align-items: center;gap: 0.5em;}
#header .contact_information li a:hover {color: var(--spm-color-blue);}
#header .contact_information li i {color: var(--spm-color-green-2);}
#header .contact_information li i.icon-phone {font-size: 1.3em;}
#header .contact_information li i.icon-envelope {font-size: 1.6em;}

/* Nav */
#nav {background-color: #fff;border-bottom: 1px solid #000;}
#nav .wrap {position: relative;max-width: 1260px;padding-top: 1px;}
#nav .wrap:before {position: absolute;left: 20px;right: 20px;top: 0;height: 1px;content: '';background-color: #e3e3e3;}

#nav .menu {display: flex;margin: 0;padding: 0;list-style: none;text-transform: uppercase;font-weight: normal;font-size: 14px;line-height: var(--spm-nav-height);}
#nav .menu > li {cursor: pointer;position: relative;margin: 0;}
#nav .menu > li > a {display: block;padding: 0 15px;color: inherit;transition: color 0.2s;}
#nav .menu > li > a:hover {color: var(--spm-color-green);text-decoration: none;}
#nav .menu > li.alternate > a {color: #fff;background-color: #000;}

#nav .sub-menu {position: absolute;z-index: 999;opacity: 0;width: 240px;left: -999em;margin: 0;padding: 30px 20px 30px 40px;color: #fff;list-style: none;text-align: left;text-transform: none;font-weight: normal;line-height: 1.1em;background-color: #313131;box-sizing: border-box;transform: translateY(10px);transition: transform 0.2s linear, opacity 0.2s linear, left 0.2s step-end, right 0.2s step-end;}
#nav .menu > li:hover > .sub-menu {opacity: 1;left: -30px;transform: translateY(0);transition: transform 0.2s linear, opacity 0.2s linear, right step-end;}
#nav .menu > li:last-child:hover > .sub-menu {right: 0;}
#nav .sub-menu > li {position: relative;left: auto;margin: 0;padding: 0;background: none;}
#nav .sub-menu > li:before {position: absolute;opacity: 0;left: 0;top: calc(50% - 3px);width: 6px;height: 6px;content: '';background-color: var(--spm-color-green);border-radius: 50%;transition: opacity 0.2s;}
#nav .sub-menu > li:hover:before {opacity: 1;}
#nav .sub-menu > li > a {display: block;padding: 10px 15px 10px 0;color: inherit;text-decoration: none;transition: padding 0.2s;}
#nav .sub-menu > li:hover > a {padding-left: 15px;padding-right: 0;color: var(--spm-color-green);font-weight: bold;letter-spacing: -0.04em;}

/* Banner (Home) */
#banner {position: relative;margin: 0 0 30px;color: #fff;font-size: 28px;line-height: 1.2;background-color: #000;}

#banner .cycle-nav {position: absolute;z-index: 997;left: 20px;right: 20px;top: calc(50% - var(--spm-font-size) / 2);display: flex;gap: 10px;font-size: var(--spm-font-size);text-shadow: 0 0 7px rgba(0,0,0,0.5);--spm-font-size: 52px;}
#banner .cycle-prev,
#banner .cycle-next {position: absolute;top: 0;color: inherit;}
#banner .cycle-prev {left: 0;}
#banner .cycle-next {right: 0;}

#banner .slide {position: absolute;display: none;width: 100%;height: 100%;}

#banner .slide .background {position: absolute;left: 0;top: 0;display: block;width: 100%;height: 100%;object-fit: cover;}

#banner .slide .overlay {position: absolute;left: 0;right: 0;top: 0;bottom: 0;background-image: linear-gradient(rgba(27,23,28,0.25), rgba(27,23,28,0.9));}

#banner .slide .wrap {position: relative;display: flex;flex-direction: column;justify-content: center;max-width: 1260px;min-height: 400px;margin: 0 auto;padding: 45px 90px;}

#banner .slide .content_container {max-width: 410px;padding: 60px 40px 60px 60px;color: #fff;background-color: rgba(0,0,0,0.6);border-left: 10px solid var(--spm-color-green);}
#banner .slide .content_container.right {align-self: flex-end;border-left: none;border-right: 10px solid var(--spm-color-green);}

#banner .slide p {margin: 0 0 0.8em;}

#banner .slide .title {font: bold 44px/1.3em var(--spm-font-family-heading);}

#banner .slide .button_row {display: flex;flex-wrap: wrap;gap: 20px;}

#banner .slide .spm_button {padding: 0.8em 1em;color: #000;font-weight: bold;font-size: 24px;background-color: #fff;}
#banner .slide .spm_button:hover {color: #fff;background-color: #000;}

/* Banner (Inside Pages) */
#banner_inside_page {position: relative;overflow: hidden;color: #333;text-align: center;line-height: 1.6;background-color: var(--spm-color-light-grey);border-top: 1px solid #e3e3e3;}
#banner_inside_page .wrap {position: relative;display: flex;flex-direction: column;justify-content: center;min-height: 100px;margin: 0 auto;padding: 60px 20px;}

#banner_inside_page .background {position: absolute;left: 0;top: 0;width: 100%;height: 100%;object-fit: cover;}

#banner_inside_page .page_title {margin: 0;font: 42px/1.2em var(--spm-font-family-heading);}

/* Main Page Container */
#main .wrap {position: relative;padding: 60px 20px 40px;}

/* Content */
#content {float: right;width: 73%;margin: 0 0 40px;}
#content.full_width {float: none;width: auto;}

#content .page_title {font-weight: bold;font-size: 32px;line-height: 1.2em;}

#content .post {margin: 0 0 60px;}

#content .postmetadata {color: var(--spm-color-grey);font-size: 14px;}
#content .postmetadata a {color: inherit;}

#content .title {margin: 0 0 0.5em;font-weight: bold;font-size: 26px;line-height: 1.2em;}
#content .title a {color: inherit;}

/* Sidebar */
#sidebar {float: left;width: 24%;}

#sidebar .widget {margin: 0 0 40px;padding: 20px 20px 5px;;border: 1px solid var(--spm-color-grey);}

#sidebar .widgettitle,
#sidebar .wp-block-heading {margin: -20px -20px 1.3em;padding: 15px 20px;color: #fff;text-transform: uppercase;font-size: 20px;line-height: 1.2em;background-color: var(--spm-color-grey);}

/* Layout Blocks */
.layout_block {position: relative;overflow: hidden;}

.layout_block.centered {text-align: center;}

.layout_block.more_padding_top {padding-top: 80px !important;}
.layout_block.more_padding_bottom {padding-bottom: 65px !important;}

.layout_block .wrap {position: relative;padding: 60px 20px 45px;}

.layout_block.less_padding_top .wrap {padding-top: 30px !important;}
.layout_block.less_padding_bottom .wrap {padding-bottom: 20px !important;}

.layout_block .section_title {margin: 0 0 0.5em;font: 32px/1.2em var(--spm-font-family-heading);}

.layout_block h3 {font-weight: 600;font-size: 22px;line-height: 1.35em;}

.layout_block.centered ul {display: inline-block;text-align: start;}

/* .layout_block ul.checkmarks {display: flex;flex-direction: column;gap: 0.3em;flex-wrap: wrap;margin: 0 0 1.5em;padding: 0;text-align: start;list-style: none;line-height: 1.4;}
.layout_block ul.checkmarks li {position: relative;margin: 0;padding-left: 50px;}
.layout_block ul.checkmarks li:before {position: absolute;left: 10px;top: 0.2em;content: '\e904';font: 18px icomoon;}

.layout_block ol.big_numbers {display: flex;flex-direction: column;gap: 0.8em;flex-wrap: wrap;list-style: none;margin: 0 0 1.8em;padding: 0;text-align: start;counter-reset: num;line-height: 1.3;}
.layout_block ol.big_numbers li {position: relative;margin: 0;padding-left: 1.7em;counter-increment: num;}
.layout_block ol.big_numbers li:before {position: absolute;left: 0;top: -0.05em;content: counter(num);font-weight: bold;font-size: 1.5em;line-height: 1em;} */

/* - content editor - */
.layout_block.content_editor .secondary_title {font-size: 22px;}

.layout_block.content_editor .content {margin: 0 auto;}

.layout_block.content_editor.intro {font-size: 18px;}
.layout_block.content_editor.intro .wrap {max-width: 768px;}

/* - content w/image & content w/video - */
.layout_block.content_with_image {position: relative;}

.layout_block.content_with_image .section_title {margin: 0 0 1em;text-align: center;}

.layout_block.content_with_image .columns.content_with_image_columns {align-items: center;--spm-row-gap: 40px;--spm-column-gap: 60px;}
.layout_block.content_with_image .columns.content_with_image_columns.right {flex-direction: row-reverse;}

.layout_block.content_with_image .columns.content_with_image_columns > .column.column-image {text-align: center;}
.layout_block.content_with_image .columns.content_with_image_columns > .column-image .image {display: block;margin: 0 auto 1em;}

.layout_block.content_with_image.content_with_video.square_aspect_ratio .columns.content_with_image_columns > .column-image .video_container {padding-top: 100%;}

.layout_block.content_with_image .columns.content_with_image_columns .section_title {text-align: start;line-height: 1.2em;}

/* - content w/image gallery - */
.layout_block.content_with_image_gallery .section_title {margin: 0 0 1em;text-align: center;}

.layout_block.content_with_image_gallery .columns.content_with_image_columns {--spm-row-gap: 40px;--spm-column-gap: 60px;}
.layout_block.content_with_image_gallery .columns.content_with_image_columns.right {flex-direction: row-reverse;}

.layout_block.content_with_image_gallery .columns.content_with_image_columns .column.column-gallery .main_image {position: relative;}
.layout_block.content_with_image_gallery .columns.content_with_image_columns .column.column-gallery .main_image .image {display: block;}

.layout_block.content_with_image_gallery .columns.content_with_image_columns .column.column-gallery .additional_images {display: flex;flex-wrap: wrap;}
.layout_block.content_with_image_gallery .columns.content_with_image_columns .column.column-gallery .additional_images .image_container {width: 20%;}
.layout_block.content_with_image_gallery .columns.content_with_image_columns .column.column-gallery .additional_images .image_container > .layer_2 {position: relative;padding-top: 100%;}
.layout_block.content_with_image_gallery .columns.content_with_image_columns .column.column-gallery .additional_images .image_container .image {position: absolute;left: 0;top: 0;width: 100%;height: 100%;object-fit: cover;}

.layout_block.content_with_image_gallery .columns.content_with_image_columns .column.column-description ol li {margin: 0 0 1em;}

/* - multi-column - */
.layout_block.multi_column {text-align: center;}

.layout_block.multi_column .section_title {margin: 0 0 1em;}

.layout_block.multi_column .intro_text {max-width: 855px;margin: 0 auto 1em;line-height: 1.4;}

.layout_block.multi_column .columns {justify-content: center;--spm-row-gap: 40px;--spm-column-gap: 40px;}

.layout_block.multi_column .columns .image {display: block;margin: 0 auto 20px;}

.layout_block.multi_column .columns .title {min-height: 2.2em;margin: 0 0 0.5em;font-weight: bold;font-size: 22px;line-height: 1.2em;}

.layout_block.multi_column .columns .spm_button {padding: 1.2em 2.8em;}

/* - multi-column (alternate) - */
.layout_block.multi_column_alternate .section_title {margin: 0 0 1em;}

.layout_block.multi_column_alternate .columns {margin: 0 0 10px;padding: 60px 60px 45px;background-color: var(--spm-color-light-grey);--spm-row-gap: 40px;--spm-column-gap: 30px;}
.layout_block.multi_column_alternate .columns > .column {box-sizing: border-box;}

.layout_block.multi_column_alternate .columns .pre_title {margin: 0 0 0.5em;font-size: 20px;line-height: 1.2em;}

.layout_block.multi_column_alternate .columns .title {margin: 0 0 0.5em;font-size: 30px;line-height: 1.2em;}

.layout_block.multi_column_alternate .footer_text {font-size: 13px;}

/* - silos - */
.layout_block.silos {text-align: center;}
.layout_block.silos .wrap {max-width: 1440px;padding: 60px 40px 85px;}

.layout_block.silos .columns {justify-content: center;--spm-row-gap: 40px;}

.layout_block.silos .title {margin: 0 0 0.7em;font: 30px/1.2em var(--spm-font-family-heading);}

.layout_block.silos .secondary_title {margin: -0.5em 0 1em;font-weight: normal;font-size: 18px;}

.layout_block.silos .image_container {position: relative;padding-top: 100%;}
.layout_block.silos .image_container .badge {position: absolute;left: -15px;top: -15px;width: 125px;}
.layout_block.silos .image_container .image {position: absolute;left: 0;top: 0;width: 100%;height: 100%;object-fit: cover;}

/* - image gallery - */
.layout_block.image_gallery {text-align: center;}

.layout_block.image_gallery .section_title {margin: 0 0 1em;}

.layout_block.image_gallery .intro_text {max-width: 855px;margin: 0 auto 40px;font-size: 18px;line-height: 1.4;}

.layout_block.image_gallery .columns {justify-content: center;margin-bottom: 40px;--spm-row-gap: 40px;}

.layout_block.image_gallery .columns .image_container {position: relative;margin: 0 0 1em;padding-top: 75%;}
.layout_block.image_gallery .columns .image_container > img {position: absolute;left: 0;top: 0;width: 100%;height: 100%;object-fit: cover;}

.layout_block.image_gallery .columns .title {margin: 0 0 0.5em;font: 20px/1.2em var(--spm-font-family-heading);}

.layout_block.image_gallery .columns .content {font-size: 15px;}

/* - video gallery - */
.layout_block.video_gallery {text-align: center;}

.layout_block.video_gallery .section_title {margin: 0 0 1em;}

.layout_block.video_gallery .intro_text {max-width: 855px;margin: 0 auto 1em;line-height: 1.4;}

.layout_block.video_gallery .columns {justify-content: center;margin-bottom: 40px;}

.layout_block.video_gallery .columns .video_container {margin: 0;}

/* - comparison table - */
.layout_block.comparison_table {text-align: center;}

.layout_block.comparison_table table {table-layout: fixed;width: 100%;font-size: 15px;border: 1px solid #000;border-collapse: collapse;}

.layout_block.comparison_table table th,
.layout_block.comparison_table table td {padding: 1em 0.5em;text-align: center;vertical-align: middle;border: 1px solid #000;}
.layout_block.comparison_table table th {padding: 0.6em;font-weight: inherit;font-size: 22px;line-height: 1.2em;}
.layout_block.comparison_table table td:first-child {background-color: #e5e5e5;}

/* - timeline - */
.layout_block.timeline .steps {padding: 0;list-style: none;font-size: 18px;}
.layout_block.timeline .steps .step {position: relative;margin: 0 0 40px;padding: 0 0 0 60px;}

.layout_block.timeline .steps .step .side_content {position: absolute;left: 0;top: 0;bottom: 0;width: 50px;}

.layout_block.timeline .steps .step .side_content .arrow {position: absolute;left: calc(50% - 1px);top: 50px;bottom: 0;width: 2px;content: '';background-color: #000;}
.layout_block.timeline .steps .step .side_content .arrow:after {position: absolute;left: -9px;bottom: -12px;content: '';border: 10px solid transparent;border-top-color: #000;}
.layout_block.timeline .steps .step:last-child .side_content .arrow {display: none;}

.layout_block.timeline .steps .step .side_content .number {position: absolute;left: calc(50% - 16px);display: flex;justify-content: center;align-items: center;width: 30px;height: 30px;font-size: 22px;border: 1px solid #000;border-radius: 50%;}

.layout_block.timeline .steps .step .side_content .line_label {position: absolute;left: calc(50% - 20px);top: calc(50% + 25px);white-space: nowrap;line-height: 0.9;transform: translate(-50%, -50%) rotate(270deg);}

.layout_block.timeline .steps .step .title {font: 20px/1.2em var(--spm-font-family-heading);}
.layout_block.timeline .steps .step .title span {font-weight: bold;font-size: 22px;}

.layout_block.timeline .steps .step ul {list-style: disc;}

.layout_block.timeline .steps .step .footer_text {text-align: center;text-transform: uppercase;font-weight: normal;font-size: 19px;line-height: 1.2em;}

.layout_block.timeline .columns .column.column-secondary .title {text-align: center;font: 24px/1.2em var(--spm-font-family-heading);}

/* - logos - */
.layout_block.logos {text-align: center;}

.layout_block.logos .section_title {margin: 0 0 1.5em;}

.layout_block.logos .columns {justify-content: center;}

/* - contact form - */
.layout_block.contact_form .section_title {margin: 0 0 0.7em;text-align: center;}

.layout_block.contact_form .intro_text {margin: 0 0 1.7em;}

.layout_block.contact_form input[type="submit"] {flex-grow: 0;text-transform: uppercase;font-size: 20px;border: none;}

/* - testimonials - */
.layout_block.testimonials {text-align: center;font-size: 17px;background-color: var(--spm-color-light-grey);}
.layout_block.testimonials .wrap {padding: 40px 20px;}

.layout_block.testimonials .cycle-slideshow:before,
.layout_block.testimonials .cycle-slideshow:after {position: absolute;z-index: 998;top: 0;bottom: 0;width: 10px;content: '';}
.layout_block.testimonials .cycle-slideshow:before {left: 0;background-image: linear-gradient(90deg, var(--spm-color-light-grey), transparent);}
.layout_block.testimonials .cycle-slideshow:after {right: 0;background-image: linear-gradient(270deg, var(--spm-color-light-grey), transparent);}

.layout_block.testimonials .cycle-nav {display: flex;justify-content: center;gap: 10px;margin-top: 30px;}
.layout_block.testimonials .cycle-prev,
.layout_block.testimonials .cycle-next {display: flex;justify-content: center;align-items: center;width: 26px;height: 26px;color: #000;font-size: 10px;border: 2px solid #000;border-radius: 3px;transition: color 0.2s, background-color 0.2s;}
.layout_block.testimonials .cycle-prev:hover,
.layout_block.testimonials .cycle-next:hover {color: #fff;text-decoration: none;background-color: #000;}

.layout_block.testimonials .slide {width: 100%;padding: 0 10px;box-sizing: border-box;}

.layout_block.testimonials .testimonial .signed {display: flex;gap: 20px;font-weight: normal;justify-content: center;align-items: center;}
.layout_block.testimonials .testimonial .signed .image {flex-shrink: 0;width: 40px;height: 40px;border-radius: 8px;object-fit: cover;}
.layout_block.testimonials .testimonial .signed .name {margin: 0;}

/* - 3d render - */
.layout_block.three_dimensional_render {overflow: visible;}
.layout_block.three_dimensional_render .image_container {position: relative;padding-top: 66.667%;}

.layout_block.three_dimensional_render .image_container .image {position: absolute;left: 0;top: 0;width: 100%;height: 100%;object-fit: contain;}

.layout_block.three_dimensional_render .image_container .clickable_item {position: absolute;font-weight: bold;font-size: 20px;}

.layout_block.three_dimensional_render .image_container .clickable_item a {position: absolute;left: -15px;top: -15px;width: 30px;text-align: center;line-height: 30px;background-color: #fff;border: 1px solid #000;border-radius: 50%;transition: background-color 0.2s;}
.layout_block.three_dimensional_render .image_container .clickable_item a:hover {/* color: var(--spm-color-green-2); */background-color: #ccc;}

.layout_block.three_dimensional_render .image_container .clickable_item .popup_content {display: none;position: absolute;z-index: 1;left: 50%;top: calc(100% + 35px);width: 280px;padding: 20px 20px 5px;text-align: center;font-weight: 300;font-size: 14px;line-height: 1.4em;background-color: #fff;border: 1px solid #000;border-radius: 10px;box-shadow: 5px 5px 10px rgba(0,0,0,0.2);transform: translateX(-50%);}
.layout_block.three_dimensional_render .image_container .clickable_item .popup_content.justify_left {transform: none;left: -50px;}
.layout_block.three_dimensional_render .image_container .clickable_item .popup_content.justify_right {transform: none;left: auto;right: -50px;}
.layout_block.three_dimensional_render .image_container .clickable_item .popup_content.justify_bottom {top: auto;bottom: calc(100% + 35px);}
.layout_block.three_dimensional_render .image_container .clickable_item .popup_content .index {margin: 0 0 0.5em;color: #000;font-weight: bold;font-size: 20px;}
.layout_block.three_dimensional_render .image_container .clickable_item .popup_content .title {margin: 0 0 0.5em;font: 18px/1em var(--spm-font-family-heading);}
.layout_block.three_dimensional_render .image_container .clickable_item .popup_content img {border: 1px solid #000;}

/* FAQs */
.layout_block.faqs .ui-accordion-header { position: relative; cursor: pointer; margin: 0 0 0.5em; padding-left: 25px; font-weight: 500; line-height: 1.2; font-size: larger; }
.layout_block.faqs .ui-accordion-header.accordion-header-active { color: var(--spm-color-green-2); font-weight: bold; letter-spacing: -0.005em; }
.layout_block.faqs .ui-accordion-header i:before { content: "\e903"; }
.layout_block.faqs .ui-accordion-header i { position: absolute; left: 0; top: 0.55em; color: var(--spm-color-green); font-size: 11px; transition: transform 0.2s; }
.layout_block.faqs .ui-accordion-header.accordion-header-active i { transform: rotate(90deg); }
.layout_block.faqs .ui-accordion-content { margin: 0 0 10px 25px; padding: 0 0 1px; line-height: 1.3; color: var(--spm-color-grey); }
.layout_block.faqs .faq-intro { font-size: larger; margin-bottom: 2em; }

/* Footer */
#footer {overflow: hidden;font-size: 15px;background-color: var(--spm-color-light-grey);border-top: 2px solid #e3e3e3;}
#footer .wrap {position: relative;padding: 50px 20px 35px;}

#footer a {color: inherit;}

#footer .title {margin: 0 0 0.5em;font: 30px/1.2em var(--spm-font-family-heading);}

#footer .columns {--spm-row-gap: 30px;--spm-column-gap: 50px;}
#footer .columns.columns-4 .column.column-1,
#footer .columns.columns-4 .column.column-3 {width: calc(22% - var(--spm-column-gap-adjusted));}
#footer .columns.columns-4 .column.column-2,
#footer .columns.columns-4 .column.column-4 {width: calc(28% - var(--spm-column-gap-adjusted));}

#footer .columns .column.column-logo {display: flex;flex-direction: column;justify-content: center;}

#footer .menu {padding: 0;list-style: none;}

#footer .contact_information {display: flex;flex-direction: column;align-content: center;row-gap: 0.7em;flex-wrap: wrap;margin: 0 0 2em;padding: 0;list-style: none;text-align: start !important;}
#footer .contact_information li {position: relative;margin: 0;padding-left: 2.2em;}
#footer .contact_information li i {position: absolute;left: 0;top: 0;color: #000;font-size: 1.7em;}

#footer .social_media {display: flex;gap: 1em;padding: 0;list-style: none;text-align: center;font-size: 18px;}
#footer .social_media li {height: 30px;width: 30px;margin: 0;border: 1px solid #000;}
#footer .social_media li a {display: flex;justify-content: center;align-items: center;height: 100%;color: #fff;background-color: #000;transition: color 0.2s, background-color 0.2s;}
#footer .social_media li a:hover {color: #000;background-color: #fff;}

/* Sub-Footer */
#sub_footer {color: #fff;text-align: center;font-size: 14px;line-height: 1.2;background-color: #000;}
#sub_footer .wrap {padding: 8px 20px 5px;}

#sub_footer p {margin: 0 0 0.2em;}

#sub_footer a {color: var(--spm-color-green);}

/* Footer (Mobile) */
#mobile_footer {display: none;position: fixed;z-index: 999;left: 0;right: 0;bottom: 0;min-width: 320px;color: #fff;text-align: center;text-transform: uppercase;font: 500 18px/var(--spm-mobile-footer-height) var(--spm-font-family-body);box-shadow: 0 0 4px 1px rgba(0,0,0,0.3);}

#mobile_footer ul {display: flex;margin: 0;padding: 0;list-style: none;}
#mobile_footer ul li {width: 50%;margin: 0;}

#mobile_footer ul li a {display: flex;justify-content: center;align-items: center;gap: 0.5em;color: inherit;text-decoration: none;background-color: var(--spm-color-blue);transition: color 0.2s;}
#mobile_footer ul li a.alternate {background-color: #333;}
#mobile_footer ul li i {font-size: 1.5em;}

/* WordPress */

/* - editor formatting - */
.alignleft {float: left;}
.alignright {float: right;text-align: right;}
.aligncenter {margin-left: auto;margin-right: auto;text-align: center;}
.hidden {display: none;}
.cleared {clear: both;}

img.alignleft {display: inline;margin: 0 1.5em 0.8em 0;max-width: 39%;}
img.aligncenter {display: block;margin: 0 auto;}
img.alignright {display: inline;margin: 0 0 0.8em 2.5em;max-width: 39%;}

.wp-caption.alignleft {margin: 0 1.5em 3em 0;}
.wp-caption.aligncenter {margin: 0 auto;}
.wp-caption.alignright {margin: 0 0 3em 2.5em;text-align: left;}

/* - galleries - */
.gallery {margin: 0 -5% 0 0;}
.gallery:after {display: block;clear: both;content: '';}

.gallery-item {float: left;margin: 0 5% 5% 0;}
.gallery-columns-1 .gallery-item {width: 95%;}
.gallery-columns-2 .gallery-item {width: 45%;}
.gallery-columns-3 .gallery-item {width: 28.333%;}
.gallery-columns-4 .gallery-item {width: 20%;}

.gallery-item img {display: block;width: 100%;box-shadow: 0 2px 18px -7px #fff;}

.gallery-item .wp-caption-text {display: none;}

/* - page and comment navigation - */
.navigation {overflow: hidden;margin: 0 0 20px;}
.comment-navigation {overflow: hidden;}
.navigation ul,
.comment-navigation ul {float: right;margin: 0 0 5px;list-style: none;}
.navigation li,
.comment-navigation li {float: left;margin: 0 0 5px 5px;}
.navigation a,
.navigation span,
.comment-navigation a,
.comment-navigation span {display: block;padding: 0 0.7em;color: #fff;text-decoration: none;line-height: 2em;background-color: #38434f;}
.navigation span,
.comment-navigation span {color: #fff;}

.vcard {font-weight: bold;}
.vcard img {margin: 0 7px 0 0;vertical-align: middle;border: 2px solid #ccd0dd;}

.comment-date {float: right;font-size: 10px;font-weight: normal;}

/* - accessbility - */
.screen-reader-text {border: 0;clip: rect(1px,1px,1px,1px);clip-path: inset(50%);height: 1px;margin: -1px;overflow: hidden;padding: 0;position: absolute;width: 1px;word-wrap: normal !important;}

/* jQuery Modal */
.blocker {z-index: 999;}

.modal {max-width: 650px;margin: 0 0 20px;padding: 50px 50px 35px;}

/* Lite Youtube Embed */
lite-youtube {text-align: start;font-weight: normal;}

/* WOW.js */
.wow {visibility: hidden;}
.animated {-webkit-animation-duration: 1s;animation-duration: 1s;-webkit-animation-fill-mode: both;animation-fill-mode: both;}

/* Styles from animate.css */
@-webkit-keyframes fadeIn {
	from {opacity: 0;}
}
@keyframes fadeIn {
	from {opacity: 0;}
}
.fadeIn {-webkit-animation-name: fadeIn;animation-name: fadeIn;}

@-webkit-keyframes fadeInUp {
	from {opacity: 0;-webkit-transform: translateY(100%);}
}
@keyframes fadeInUp {
	from {opacity: 0;transform: translateY(100%);}
}
.fadeInUp {-webkit-animation-name: fadeInUp;animation-name: fadeInUp;}

@-webkit-keyframes fadeInDown {
	from {opacity: 0;-webkit-transform: translateY(-100%);}
}
@keyframes fadeInDown {
	from {opacity: 0;transform: translateY(-100%);}
}
.fadeInDown {-webkit-animation-name: fadeInDown;animation-name: fadeInDown;}

@-webkit-keyframes fadeInLeft {
	from {opacity: 0;-webkit-transform: translateX(-100%);}
}
@keyframes fadeInLeft {
	from {opacity: 0;transform: translateX(-100%);}
}
.fadeInLeft {-webkit-animation-name: fadeInLeft;animation-name: fadeInLeft;}

@-webkit-keyframes fadeInRight {
	from {opacity: 0;-webkit-transform: translateX(100%);}
}
@keyframes fadeInRight {
	from {opacity: 0;transform: translateX(100%);}
}
.fadeInRight {-webkit-animation-name: fadeInRight;animation-name: fadeInRight;}

@-webkit-keyframes fadeOutDown {
	from {opacity: 1;}
	to {opacity: 0;-webkit-transform: translateY(100%);}
}
@keyframes fadeOutDown {
	from {opacity: 1;}
	to {opacity: 0;transform: translateY(100%);}
}
.fadeOutDown {-webkit-animation-name: fadeOutDown;animation-name: fadeOutDown;}

@-webkit-keyframes fadeInUpSmall {
	from {opacity: 0;-webkit-transform: translateY(100%);}
}
@keyframes fadeInUpSmall {
	from {opacity: 0;transform: translateY(20px);}
}
.fadeInUpSmall {-webkit-animation-name: fadeInUp;animation-name: fadeInUp;}

@-webkit-keyframes fadeInDownSmall {
	from {opacity: 0;-webkit-transform: translateY(-20px);}
}
@keyframes fadeInDownSmall {
	from {opacity: 0;transform: translateY(-20px);}
}
.fadeInDownSmall {-webkit-animation-name: fadeInDownSmall;animation-name: fadeInDownSmall;}

@-webkit-keyframes fadeInLeftSmall {
	from {opacity: 0;-webkit-transform: translateX(-20px);}
}
@keyframes fadeInLeftSmall {
	from {opacity: 0;transform: translateX(-20px);}
}
.fadeInLeftSmall {-webkit-animation-name: fadeInLeftSmall;animation-name: fadeInLeftSmall;}

@-webkit-keyframes fadeInRightSmall {
	from {opacity: 0;-webkit-transform: translateX(20px);}
}
@keyframes fadeInRightSmall {
	from {opacity: 0;transform: translateX(20px);}
}
.fadeInRightSmall {-webkit-animation-name: fadeInRightSmall;animation-name: fadeInRightSmall;}

@-webkit-keyframes fadeOutDownSmall {
	from {opacity: 1;}
	to {opacity: 0;-webkit-transform: translateY(20px);}
}
@keyframes fadeOutDownSmall {
	from {opacity: 1;}
	to {opacity: 0;transform: translateY(20px);}
}
.fadeOutDownSmall {-webkit-animation-name: fadeOutDownSmall;animation-name: fadeOutDownSmall;}

@-webkit-keyframes zoomIn {
	from {opacity: 0;-webkit-transform: scale(.3);}
}
@keyframes zoomIn {
	from {opacity: 0;transform: scale(.3);}
}
.zoomIn {-webkit-animation-name: zoomIn;animation-name: zoomIn;}

@-webkit-keyframes extendLeft {
	from {-webkit-transform: scaleX(0);}
}
@keyframes extendLeft {
	from {transform: scaleX(0);}
}
.extendLeft {-webkit-animation-name: extendLeft;animation-name: extendLeft;-webkit-transform-origin: 100%;transform-origin: 100%;}

@-webkit-keyframes extendRight {
	from {-webkit-transform: scaleX(0);}
}
@keyframes extendRight {
	from {transform: scaleX(0);}
}
.extendRight {-webkit-animation-name: extendRight;animation-name: extendRight;-webkit-transform-origin: 0;transform-origin: 0;}

/* Gravity Forms */
.gform_wrapper .gform_title {text-align: center;font-size: 36px;line-height: 1.2em;}

.gform_wrapper .gform_fields {grid-row-gap: 15px !important;grid-column-gap: 15px !important;}

.gform_wrapper .gfield_label {font: 300 18px var(--spm-font-family-body) !important;}

.gform_wrapper input:not([type="submit"]),
.gform_wrapper select,
.gform_wrapper textarea {line-height: inherit !important;}

.gform_wrapper .gform_footer {margin: 0 !important;padding-bottom: 0 !important;}

.gform_wrapper #field_submit input,
.gform_wrapper .gform_footer input {flex-grow: 1;line-height: 1em !important;}

.gform_wrapper .gform_footer .gform_ajax_spinner {margin-left: 10px;}

/* Responsive Design */
@media only screen and (max-width: 1139px) {
	#header .nav .menu {font-size: 15px;}
}

@media only screen and (max-width: 959px) {
	body {padding-top: 0;}
	
	a.anchor {top: -140px;}
	
	.header_container {position: static;}
	
	#header .wrap {height: auto;padding-top: 30px;}
	#header .logo {position: static;margin: 0 auto 20px;}
	#header .contact_information {display: none;}
	
	#nav .wrap {padding: 0;}
	#nav .menu {justify-content: center;}
	#nav .menu > li > a {padding: 0 10px;}
	#nav .menu > li::after {bottom: 15px;}
	
	#banner {font-size: 22px;}
	#banner .cycle-nav {left: 10px;right: 10px;--spm-font-size: 32px;}
	#banner .slide .wrap {min-height: auto;padding: 45px;}
	#banner .slide .content_container {padding: 30px 30px 40px 30px;}
	#banner .slide .title {font-size: 32px;}
	#banner .slide .spm_button {font-size: 16px;}
	
	.layout_block.content_with_image {text-align: center;}
	.layout_block.content_with_image .columns.content_with_image_columns {--spm-column-count: 1;}
	.layout_block.content_with_image .columns.content_with_image_columns > .column {width: 100% !important;}
	.layout_block.content_with_image .columns.content_with_image_columns .section_title {text-align: center;}
	.layout_block.content_with_image .columns.content_with_image_columns ul {display: inline-block;text-align: start;}
	/* .layout_block.content_with_image .columns.content_with_image_columns ul.checkmarks,
	.layout_block.content_with_image .columns.content_with_image_columns ol.big_numbers {align-content: center;} */
	
	.layout_block.silos .columns.columns-3 {--spm-column-count: 2;}
	
	.layout_block.logos .columns.columns-6,
	.layout_block.logos .columns.columns-7,
	.layout_block.logos .columns.columns-8,
	.layout_block.logos .columns.columns-9 {--spm-column-count: 3;}
}

@media only screen and (max-width: 767px) {
	body {padding-bottom: var(--spm-mobile-footer-height);}
	
	#header .wrap {padding: 20px 20px 1px;}
	#header #responsive_menu_button {display: block;}
	
	#nav {display: none;}
	
	#banner {font-size: 18px;}
	#banner .slide {height: 350px;}
	#banner .cycle-nav {position: absolute;left: auto;right: 30px;top: auto;bottom: 15px;--spm-font-size: 24px;}
	#banner .cycle-nav .cycle-prev,
	#banner .cycle-nav .cycle-next {position: static;}
	#banner .slide .wrap {position: absolute;display: block;left: 0;right: 0;bottom : 0;min-height: auto;padding: 0;}
	#banner .slide .content_container {max-width: none;border-left: none;border-right: 10px solid var(--spm-color-green)}
	#banner .slide .title {font-size: 22px;}
	
	#banner_inside_page .wrap {min-height: auto;}
	#banner_inside_page .page_title {font-size: 32px;}
	
	#content {float: none;width: auto !important;}
	
	#content .columns.columns-2,
	#content .columns.columns-3 {--spm-column-count: 1;--spm-row-gap: 40px;}
	#content .columns.columns-4 {--spm-column-count: 2;}
	
	#sidebar {display: flex;flex-direction: column;align-content: center;flex-wrap: wrap;float: none;width: auto !important;}
	
	.layout_block .wrap {padding: 50px 20px 35px;}
	
	.layout_block .section_title {font-size: 30px;}
	
	.layout_block.content_editor.intro {font-size: 16px;line-height: 1.25;}
	
	.layout_block.multi_column .columns.columns-2,
	.layout_block.multi_column .columns.columns-3 {--spm-column-count: 1;}
	.layout_block.multi_column .columns.columns-4 {--spm-column-count: 2;}
	
	.layout_block.multi_column_alternate .columns {padding: 60px 30px;--spm-column-count: 1;}
	
	.layout_block.content_with_image_gallery .columns.content_with_image_columns {--spm-column-count: 1;}
	
	.layout_block.image_gallery .columns.columns-3,
	.layout_block.image_gallery .columns.columns-4 {--spm-column-count: 2;}
	
	.layout_block.video_gallery .columns.columns-2,
	.layout_block.video_gallery .columns.columns-3 {--spm-column-count: 1;}
	
	.layout_block.timeline .columns {--spm-column-count: 1;}
	
	.layout_block.logos .columns.columns-4,
	.layout_block.logos .columns.columns-5 {--spm-column-count: 3;}
	
	#footer {text-align: center;}
	#footer .wrap {max-width: 360px;}
	#footer .columns {flex-direction: column;align-content: center;}
	#footer .columns > .column {width: auto !important;}
	#footer .social_media {justify-content: center;}
	
	#mobile_footer {display: block;}
}

@media only screen and (max-width: 567px) {
	.layout_block.silos .columns.columns-3 {--spm-column-count: 1;}
}

@media only screen and (max-width: 479px) {
	#content .columns.columns-4 {--spm-column-count: 1;--spm-row-gap: 40px;}
	
	.layout_block.image_gallery .columns.columns-3,
	.layout_block.image_gallery .columns.columns-4 {--spm-column-count: 1;}
	
	.layout_block.logos .columns.columns-4,
	.layout_block.logos .columns.columns-5 {--spm-column-count: 1;}
	.layout_block.logos .columns.columns-6,
	.layout_block.logos .columns.columns-7,
	.layout_block.logos .columns.columns-8,
	.layout_block.logos .columns.columns-9 {--spm-column-count: 2;}
}

@media only screen and (max-width: 374px) {
	#header #responsive_menu_button {left: 20px;top: 35px;font-size: 28px;}
}

/* Custom Edits */
/* Remove extra space above the header */
body,
.header_container {
  margin-top: 0 !important;
  padding-top: 0 !important;
}

/* Adjust the top login bar spacing to look balanced */
.top-login-bar {
  background-color: #ffffff;
  border-bottom: 1px solid #ddd;
  padding: 4px 0; /* was 6px, this reduces the height */
  position: relative;
  z-index: 9999;
}

/* Ensure it's flush with top of page */
html, body {
  padding: 0;
  margin: 0;
}

/* Keep login text aligned properly */
.top-login-bar .wrap {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 20px;
}

.top-login-bar .login-top-link {
  color: #333;
  text-decoration: none;
  font-size: 14px;
  font-weight: 500;
}

.top-login-bar .login-top-link:hover {
  color: #000;
}
