/*
 Theme Name:   Virtue Child
 Theme URI:    http://example.com/virtue/
 Description:  Virtue Child Theme
 Author:       Tyler Smith
 Author URI:   http://example.com
 Template:     virtue
 Version:      1.0.0
 License:      GNU General Public License v2 or later
 License URI:  http://www.gnu.org/licenses/gpl-2.0.html
 Tags:         light, dark, two-columns, right-sidebar, responsive-layout, accessibility-ready
 Text Domain:  virtue-child
*/
/*--------------------------------------------------------------
# General
--------------------------------------------------------------*/
/*@font-face { 
font-family: Norwester; 
src: url(http://dev.topekafoundry.com/wp-content/themes/virtue-child/fonts/norwester.otf); 
font-weight: normal; 
}

@font-face { 
font-family: Glacial Indifference Regular; 
src: url(http://dev.topekafoundry.com/wp-content/themes/virtue-child/fonts/GlacialIndifference-Regular.otf); 
font-weight: normal; 
}

@font-face { 
font-family: Glacial Indifference Italic; 
src: url(http://dev.topekafoundry.com/wp-content/themes/virtue-child/fonts/GlacialIndifference-Italic.otf); 
font-weight: normal; 
}

@font-face { 
font-family: Glacial Indifference Bold; 
src: url(http://dev.topekafoundry.com/wp-content/themes/virtue-child/fonts/GlacialIndifference-Bold.otf); 
font-weight: normal; 
}*/

#content{
	position:absolute;
	top:0;
}
.gray-background{
	background: #f7f7f7;
}

.navy-background{
	background: #08242e;
}
.navy-background h3{
	margin-bottom: 0;
	padding-bottom: 15px;
}
.container{
    padding-right: 15px;
    padding-left: 15px;
    margin-right: auto;
    margin-left: auto;
	justify-content: center;
}
.wrap.contentclass{
	padding-top: 0;
}
body.home {
    background: url('https://whisperingoutloudcoaching.com/wp-content/uploads/2018/05/img_jump_dark.jpg') no-repeat scroll 50% 50% / cover;
}
body {
	background: #fff;
	color: #666666;
	font-family: "Open Sans", sans-serif;
}

.submitButton {
	background: #336699;
	border: 0;
	padding: 10px 24px;
	color: #fff;
	transition: 0.4s;
}

	.submitButton :hover {
		background: #51d8ad;
	}

a {
	/*color: #2dc997;*/
	color: #336699;
}

	a:hover, a:active, a:focus {
		color: #595959;
		outline: none;
		text-decoration: none;
	}

p {
	padding: 0;
	margin: 0 0 30px 0;
}

h1, h2, h3, h4, h5, h6 {
	font-family: "Poppins", sans-serif;
	font-weight: 400;
	margin: 0 0 20px 0;
	padding: 0;
}
h2.no-margin-header, h4.no-margin-header{
	margin-bottom: 0px;
}

h2.reduced-margin-header, h4.reduced-margin-header{
	margin-bottom: 10px;
}

/* Prelaoder */
#preloader {
	position: fixed;
	left: 0;
	top: 0;
	z-index: 999;
	width: 100%;
	height: 100%;
	overflow: visible;
	background: #fff url("../images/preloader.svg") no-repeat center center;
}

/*--------------------------------------------------------------
# Header
--------------------------------------------------------------*/
header.banner.headerclass{
	width: 100%;
    position: fixed;
    /*background: rgb(8, 36, 46, 0.9);*/
	background: #08242E;
    z-index: 100;
}
header.banner.headerclass .container{
	width: 100%;
    margin: 0px;
}

.social-media-container {
	max-width: 100px;
    position: fixed;
    top: 40px;
    right: 35px;
    z-index: 500;
}
#nav-main{
	padding-top: 15px;
}
#nav-main ul.sf-menu a{
	color: #17375E;
	font-weight: bolder;
	line-height: 25px !important;
}
#nav-main ul.sf-menu a:hover{
	color: #BBE1CD;
}
.col-md-4.clearfix.kad-header-left{
	z-index: 100;
    width: 400px;
}
.col-md-8.kad-header-right{
	width: auto;
	float: right;
}
@media (max-width: 768px){
	header.banner.headerclass{
		padding-top: 0;
	}
}
@media (min-width: 996px) {
	.kad-header-right {
		padding-top: 5px;
	}
}

#header {
	padding: 30px 0;
	height: 92px;
	position: fixed;
	left: 0;
	top: 0;
	right: 0;
	transition: all 0.5s;
	z-index: 997;
}

	#header #logo {
		float: left;
	}

		#header #logo h1 {
			font-size: 36px;
			margin: 0;
			padding: 6px 0;
			line-height: 1;
			font-family: "Poppins", sans-serif;
			font-weight: 700;
			letter-spacing: 3px;
			text-transform: uppercase;
		}

			#header #logo h1 a, #header #logo h1 a:hover {
				color: #fff;
			}

		#header #logo img {
			padding: 0;
			margin: 0;
		}


@media (max-width: 768px) {
	#header #logo h1 {
		font-size: 26px;
	}

	#header #logo img {
		max-height: 40px;
	}
}

#header.header-fixed {
	background: rgba(52, 59, 64, 0.9);
	padding: 20px 0;
	height: 72px;
	transition: all 0.5s;
}

#cat_nav {
	position: fixed;
    width: 100%;
    top: 0px;
    z-index: 1000;
	color: #17375E;
	/*padding-top: 15px;*/
	background: #fff;
}

#nav-second ul.sf-menu>li{
	width: 13.5%;
}

#menu-primary-menu li a{
	text-transform: uppercase;
	font-size: 24px !important;
}
#menu-primary-menu .current-menu-item.current_page_item a{
	color: #BBE1CD;
}

#nav-second #menu-hme-group-companies li a{
	color:#17375E;
	font-weight: bold;
	font-size: 15px;
}
#nav-second #menu-hme-group-companies li a:hover{
	background: #08242E;
	color: #fff;
}

#nav-second #menu-hme-group-companies li.menu-item-1807 a{
	background: #08242E;
	color: #fff;
}

.menu-item-1387 a{
	background: #bbe1cd;
}

.menu-item-1387 a span{
	color: #08242e;
	font-weight: bold;
}

.group-companies-header a span{
	font-weight: bold;
}

.group-companies-header:hover{
	color: #444;
}

.group-companies-header a:hover{
	color: #444;
}

.group-companies-header a span:hover{
	color: #444;
}





@media (min-width: 1420px) {

.banner.headerclass .row {
    display: flex;
    align-items: center;
    flex-wrap: nowrap;
}

.kad-header-left,
.kad-header-right {
    float: none !important;
}

.kad-header-right {
	flex: 1;
    min-width: 0;
}
}



@media (min-width: 992px) {

    /* Prevent logo + menu from wrapping 
    .banner.headerclass .row {
        display: flex;
        align-items: center;
        flex-wrap: nowrap;
    }

    /* Remove floats so flex can work 
    .kad-header-left,
    .kad-header-right {
        float: none !important;
    }*/

    /* Lock logo width */
    .kad-header-left {
        width: 258px;
        flex: 0 0 258px;
    }

    /* Let menu fill remaining space 
    .kad-header-right {
        flex: 1;
        min-width: 0; 
    }*/

    /* Menu layout */
    #menu-primary-menu {
        display: flex;
        align-items: center;
        width: 100%;
    }

    /* Push Group Companies left */
    #menu-primary-menu > .group-companies-menu {
        margin-right: auto;
    }
	
	/* Keep arrow and text on one line */
    #menu-primary-menu > .group-companies-menu > a {
        display: inline-flex;
        align-items: center;
        white-space: nowrap;
		font-size: 30px;
    }


/* Right-pointing arrow (default state) */
    #menu-primary-menu > .group-companies-menu > a::before {
        content: "";
        display: inline-block;
        width: 0;
        height: 0;

        /* Taller than wide */
        border-top: 10px solid transparent;
        border-bottom: 10px solid transparent;
        border-left: 20px solid currentColor;

        margin-right: 30px;
        transform: translateY(0px);
        transition: transform 0.2s ease;
    }
	
	 /* Rotate arrow downward on hover */
    #menu-primary-menu > .group-companies-menu:hover > a::before {
        transform: rotate(90deg) translateX(0px) translateY(-1px);
    }
	
	#thelogo img{
		float: right;
		width: 160px;
	}
}
/*--------------------------------------------------------------
# Hero Section
--------------------------------------------------------------*/
.wp-block-cover, .wp-block-cover-image {
    position: relative;
    background-size: cover;
    background-position: 50%;
    min-height: 430px;
    height: 76vh;
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 16px;
}
.wp-block-cover__inner-container .has-text-align-center {
    color: #eee;
    margin-bottom: 50px;
    font-size: 24px;
}
.wp-block-cover__inner-container .has-text-align-center.has-large-font-size {
    margin: 30px 0 10px 0;
    font-size: 48px;
    font-weight: 700;
    line-height: 56px;
    text-transform: uppercase;
    color: #fff;
}
@media (min-width: 700px){
	.top-cover {
		max-height: 550px;
	}
}

.top-cover h1, .top-cover p{
	/*text-shadow: 5px 5px 0px black;*/
}

.homepage-btn-container{
	width: 100%;
	text-align:center;
}
.homepage-btn {
	font-family: "Poppins", sans-serif;
	text-transform: uppercase;
	font-weight: 500;
	font-size: 16px;
	letter-spacing: 1px;
	display: inline-block;
	padding: 8px 28px;
	transition: 0.5s;
	margin: 10px;
	border: 10px solid #bbe1cd;
	background: #bbe1cd;
	color: black;
	font-weight: 600;
}

	.homepage-btn:hover {
		/*background: #2dc997;
		border: 2px solid #2dc997;*/
		background: #08242e;
		border: 10px solid #08242e;
		color: #fff;
	}

.kad-menu-name{
	color: #fff;
}
.kad-navbtn i{
	color: #fff;
}
.kad-mobile-nav .kad-nav-inner .kad-nav-collapse ul li a{
	color: #17375e;
	background: #fff;
	border-bottom: 1px solid #697176;
}

.kad-nav-inner .kad-mnav{
	background: #fff;
    border: none;
}
.kad-navbtn i {
	color: #17375e;
}
.kad-menu-name{
	background: #fff;
	color: #17375e;
}

/* Hide menu by default */
.kad-nav-collapse {
    display: none;
}

/* Show and make scrollable when open */
.kad-nav-collapse.in {
    display: block !important;
    max-height: calc(100vh - 92px) !important;
    overflow-y: scroll !important;
    -webkit-overflow-scrolling: touch !important;
}

/* Ensure kad-mobile-nav has black background */
.kad-mobile-nav {
    background: #000 !important;
}

/*--------------------------------------------------------------
# Sections
--------------------------------------------------------------*/


/* Capabilities Section
--------------------------------*/

.capabilities-section {
	background-size: cover;
	padding: 80px 0 60px 0;
}

.machine-popup-img{
	margin: auto;
}

	.capabilities-section .box {
		padding: 50px 20px;
		margin-bottom: 50px;
		text-align: center;
		border: 1px solid #e6e6e6;
		height: 360px;
		position: relative;
		background: #fafafa;
	}

	.capabilities-section .icon {
		position: absolute;
		top: -36px;
		left: calc(50% - 36px);
		transition: 0.2s;
		border-radius: 50%;
		border: 6px solid #fff;
		display: flex;
		justify-content: center;
		align-items: center;
		flex-direction: column;
		text-align: center;
		width: 72px;
		height: 72px;
		/*background: #2dc997;*/
		background: #444;
		color: #fff;
		font-size: 24px;
	}

		.capabilities-section .icon a {
			display: inline-block;
		}

		.capabilities-section .icon i {
			color: #fff;
			font-size: 24px;
		}
.capabilities-section .icon svg {
			color: #fff;
			width: 24px;
		}

	.capabilities-section .box:hover .icon {
		background: #fff;
		/*border: 2px solid #2dc997;*/
		border: 2px solid #444;
		color: #444;
	}

		.capabilities-section .box:hover .icon i {
			/*color: #2dc997;*/
			color: #444;
		}

.capabilities-section .box:hover .icon svg {
			/*color: #2dc997;*/
			color: #444;
		}

		.capabilities-section .box:hover .icon a {
			/*color: #2dc997;*/
			color: #444;
		}

	.capabilities-section .title {
		font-weight: 700;
		font-size: 18px;
		margin-bottom: 15px;
		text-transform: uppercase;
	}

		.capabilities-section .title a {
			color: #111;
		}

	.capabilities-section .description {
		font-size: 14px;
		line-height: 24px;
	}
.capabilities-boxes-container{
	padding-top: 30px;
}

.capabilities-machine-gallery {
	width: 600px;
	margin: auto;
}
.kb-gallery-ul .kadence-blocks-gallery-item .kadence-blocks-gallery-item-inner figure .kb-gallery-image-contain.kadence-blocks-gallery-intrinsic img{
	height: auto;
	border: none;
	box-shadow: none;
	-webkit-box-shadow: none;
}
.no-border-img figure img {
	border: none;
	box-shadow: none;
	-webkit-box-shadow: none;
}
.no-border-img figure img:hover {
	border: none;
	box-shadow: none;
	-webkit-box-shadow: none;
}
.no-border-img img {
	border: none;
	box-shadow: none;
	-webkit-box-shadow: none;
}
.no-border-img img:hover {
	border: none;
	box-shadow: none;
	-webkit-box-shadow: none;
}
@media (min-width: 1700px) {
	.main:not(.col-lg-9) .entry-content .wp-block-coblocks-row.alignwide.coblocks-row-111591930111 {
		width: 31vw;
    	margin-left: -18vw;
	}
}
@media (max-width: 1200px) {
	.capabilities-section .box {
		height: 420px;
	}
}

@media (max-width: 992px) {
	.capabilities-section .box {
		height: 540px;
	}
}

@media (max-width: 740px) {
	.capabilities-section .box {
		height: 777px;
	}
}

@media (max-width: 600px) {
	.capabilities-section .box {
		height: 360px;
	}
}

#popmake-665 .wp-video {
	margin: auto;
	max-width: 512px;
    max-height: 288px;

}

#popmake-665 .mejs-container.wp-video-shortcode.mejs-video{
	max-height: 288px;
}

#popmake-665 #video-12-1_html5{
	max-height: 288px;
}

#popmake-665 .wp-image-428 {
	margin: auto;
}

/* Services Section
--------------------------------*/

.services {
	background: #fff;
	background-size: cover;
	padding: 80px 25px 60px;
}

.services .box {
	padding: 50px 20px;
	margin-bottom: 50px;
	text-align: center;
	border: 1px solid #e6e6e6;
	height: 250px;
	position: relative;
	background: #fafafa;
}

.blue-bottom {
	display: flex;
    flex-direction: column;
	padding: 20px;
	text-align: center;
	border-bottom: 10px solid #17375E;
	position: relative;
	background: #fff;
}
.blue-bottom .wp-block-kadence-advancedbtn{
	margin-top: auto;
}
.blue-box {
	display: flex;
    flex-direction: column;
	padding: 20px;
	text-align: center;
	border-bottom: 10px solid #17375e;
	position: relative;
	background: #17375e;
}
.blue-box p a{
	transform: underline;
	color: #bbe1cd;
}
.blue-box .wp-block-kadence-advancedbtn{
	margin-top: auto;
}

.customer-solutions-tiles{
	justify-content: center;
}

.customer-solutions-tiles .wp-block-column{
	max-width: 261px;
}

.customer-solutions-tiles img{
	max-width: 256px;
	-webkit-filter: grayscale(75%);
    filter: grayscale(75%);
}

.customer-solutions-tiles img:hover{
	-webkit-filter: grayscale(0%);
    filter: grayscale(0%);
}
.container.services-old{
	display: none;
}
.services-columns-container-old {
	display: none;
}

@media screen and (min-width: 782px) and (max-width: 1526px){
	.services-columns-container {
	  display: flex;
	  flex-flow: row wrap;
	  align-content: space-between;
	  justify-content: space-between;
	}
	.services-columns-container::before, .services-columns-container::after {
	  content: '';
	  width: 100%;
	  order: 1;
	}
	.services-columns-container .box:nth-child(n + 4) {
	  order: 1;
	}
	.services-columns-container .box:nth-child(4n) {
	  margin-left: 0px;
	}
	.services-columns-container .box:nth-child(n + 7) {
	  order: 2;
	}
}


	.services .icon {
		position: absolute;
		top: -36px;
		left: calc(50% - 36px);
		transition: 0.2s;
		border-radius: 50%;
		border: 6px solid #08242e;
		display: flex;
		justify-content: center;
		align-items: center;
		flex-direction: column;
		text-align: center;
		width: 72px;
		height: 72px;
		background: #08242e;
		color: #08242e;
		font-size: 24px;
		-webkit-mask-image: none !important;
	}

		.services .icon a {
			display: inline-block;
		}

		.services .icon i {
			color: #fff;
			font-size: 24px;
		}
.services .icon svg {
			color: #fff;
			width: 24px;
		}

/*	.services .box:hover .icon {
		background: #fff;
		border: 2px solid black;
		color: black;
	}

		.services .box:hover .icon i {
			color: black;
		}

.services .box:hover .icon svg {
			color: black;
		}

		.services .box:hover .icon a {
			color: black;
		}*/

	.services .title {
		font-weight: 700;
		font-size: 18px;
		margin-bottom: 15px;
		text-transform: uppercase;
	}

		.services .title a {
			color: #111;
		}

	.services .description {
		font-size: 14px;
		line-height: 24px;
	}
.services-boxes-container{
	padding-top: 30px;
}

@media (max-width: 1700px) {
	.services-old .box {
		height: 300px;
	}
}

.slide-from-left{
	  -webkit-animation-duration: 2s;
      animation-duration: 2s;
      -webkit-animation-fill-mode: both;
      animation-fill-mode: both;
}

@-webkit-keyframes slide-from-left {
            0% {
               opacity: 0;
               -webkit-transform: translateX(-1200px);
            }
            100% {
               opacity: 1;
               -webkit-transform: translateX(0);
            }
         }
         
         @keyframes slide-from-left {
            0% {
               opacity: 0;
               transform: translateX(-1200px);
            }
            100% {
               opacity: 1;
               transform: translateX(0);
            }
         }
         
         .slide-from-left {
         -webkit-animation-name: slide-from-left;
         animation-name: slide-from-left;
         }

.slide-from-right{
	-webkit-animation-duration: 2s;
      animation-duration: 2s;
      -webkit-animation-fill-mode: both;
      animation-fill-mode: both;
}


@-webkit-keyframes slide-from-right {
            0% {
               opacity: 0;
               -webkit-transform: translateX(2400px);
            }
            100% {
               opacity: 1;
               -webkit-transform: translateX(0);
            }
         }
         
         @keyframes slide-from-right {
            0% {
               opacity: 0;
               transform: translateX(2400px);
            }
            100% {
               opacity: 1;
               transform: translateX(0);
            }
         }
         
         .slide-from-right {
         -webkit-animation-name: slide-from-right;
         animation-name: slide-from-right;
         } 

/* Industries Section
--------------------------------*/
.industries-images{
	padding-left: 20px;
	padding-right: 20px;
}

.industries-images img{
	-webkit-filter: grayscale(75%);
    filter: grayscale(75%);
}

.industries-images img:hover{
	-webkit-filter: grayscale(0%);
    filter: grayscale(0%);
}

.industries-column{
	background-repeat: no-repeat;
    background-size: cover;
}
.industries-ag{
	background-image: url(https://dev.topekafoundry.com/wp-content/uploads/2022/06/1-2.png);
}
.industries-overlay{
	background: rgba(50, 70, 80, 0.7);
 	overflow: hidden;
    height: 100%;
	visibility: visible;
	opacity: 1;
    transition: 0.3s;
}

.industries-column:hover > .industries-overlay{
  opacity: 0;
}

/* Divisions Section
--------------------------------*/

#divisions-boxes {
	text-align: center;
	color: #fff;
}

#divisions-boxes h2{
	font-size: 40px;
	line-height: 40px;
	color: #fff;
}

#divisions-boxes p{
	font-size: 20px;
	line-height: 20px;
}

@media screen and (max-width:768px){
	#divisions-boxes p {
	  padding: 20px;
    }
}

#divisions .row{
	background: #08242E;
}

	#divisions .box {
		padding: 24px 20px;
    /*margin-bottom: 50px;
    text-align: center;
    border: 1px solid #e6e6e6;
    height: 200px;*/
    position: relative;
    background: #08242E;
	width: 90%;
	margin-left: auto;
    margin-right: auto;
	}

	#divisions .box img{
		/*max-height: 80px;*/
		/*width: 50%*/
	}

	#divisions .box #fdc{
		padding-top: 55px;
	}

    #divisions .box #cz{
		padding-top: 50px;
	}

    #divisions .box #hc{
		padding-top: 70px;
	}


    #divisions .box.hme-box{
		padding-top: 32px;
	}

	#divisions .box.hme-box img{
		/*max-width: 80%;*/
	}

#divisions .box.divisions-extra-padding{
	padding-top: 70px;
}

@media (max-width: 1600px) {
	#divisions .box.tfi-box{
		padding-top: 50px;
	}
	
	#divisions .box #fdc{
		padding-top: 60px;
	}

    #divisions .box #cz{
		padding-top: 25px;
	}

    #divisions .box #hc{
		padding-top: 45px;
	}
}

/* About Us Section
--------------------------------*/

#about {
  width:100%;
  display: inline-block;
  vertical-align: top;
  position: relative;
  color:black;
}

.image-side{
	/* The image used */
  background-image: url("https://dev.topekafoundry.com/wp-content/uploads/2022/06/TFI-Collage.png");

  /* Create the parallax scrolling effect */
  background-attachment: fixed;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  min-height: 500px;
}

#about.homepage-about-section{
	/*background-image: url(https://dev.topekafoundry.com/wp-content/uploads/2022/06/Website-Background.png);*/
	background-repeat: no-repeat;
    background-size: contain;
}

.home-contact-banner .wp-block-columns{
	border-left: 15px solid #3a4c53;
	padding-left: 15px;
    padding-top: 15px;
}
.home-contact-banner .wp-block-columns .button-column{
	margin-top: auto;
	margin-bottom: auto;
}
.home-contact-banner p.home-contact-links a{
	color: #bbe1cd;
}

.wp-block-kadence-advancedgallery.about-carousel {
	max-width: 750px;
	max-height: 750px;
	/*margin-left: auto;
	margin-right: auto;*/
	padding-top: 50px;
}

#wd-map2 {
	min-height:400px;
}

	#about .about-container .background {
		/*min-height: 300px;*/
		min-height: 315px;
		/*background: url(../images/about-img.jpg) center top no-repeat;*/
		background: url(../images/HMEManagementTeam.jpg) center top no-repeat;
		margin-bottom: 10px;
	}

	#about .about-container .content {
		background: #fff;
	}

	#about .about-container .title {
		color: #333;
		font-weight: 700;
		font-size: 32px;
	}

@media (max-width: 768px) {
	#about .about-container .title {
		padding-top: 15px;
	}
}

#about .about-container p {
	line-height: 26px;
}

	#about .about-container p:last-child {
		margin-bottom: 0;
	}

#about .about-container .icon-box {
	background: #fff;
	background-size: cover;
	padding: 0 0 30px 0;
}

	#about .about-container .icon-box .icon {
		float: left;
		background: #fff;
		width: 64px;
		height: 64px;
		display: flex;
		justify-content: center;
		align-items: center;
		flex-direction: column;
		text-align: center;
		border-radius: 50%;
		/*border: 2px solid #2dc997;*/
		border: 2px solid black;
		color: black;
		font-size: 24px;
	}

#about .text-side{
	margin: auto;
}

#about .text-side img{
	margin: 5px;
	max-width: 150px;
}

@media (min-width: 1083px){
	#about .wp-block-columns{
		margin-right: 100px;
		margin-left: 100px;
	}
	#about .wp-block-columns.about-list-columns{
	    margin: 0px;
    }
}


		#about .about-container .icon-box .icon i {
			/*color: #2dc997;*/
			color: black;
			font-size: 24px;
		}

	#about .about-container .icon-box .title {
		margin-left: 80px;
		font-weight: 500;
		margin-bottom: 5px;
		font-size: 18px;
		text-transform: uppercase;
	}

		#about .about-container .icon-box .title a {
			color: #111;
		}

	#about .about-container .icon-box .description {
		margin-left: 80px;
		line-height: 24px;
		font-size: 14px;
	}

#about .certifications img{
	max-width: 150px
}

#about .about-certifications li{
	margin-top: auto;
	margin-bottom: auto;
	display: inline-block;
}

#about .about-certifications figure{
	margin-top: auto;
	margin-bottom: auto;
	display: inline-block;
}


#about .about-certifications figure img{
	max-width: 150px !important;
	border: none;
	box-shadow: none;
	-webkit-box-shadow: none;
}


#about .about-certifications figure img:hover{
	border: none;
	box-shadow: none;
	-webkit-box-shadow: none;
}

#about .about-certifications figure.cert-padding img{
	padding-bottom: 10px;
}

#about h2{
	padding: 0px;
}

@media (min-width: 600px) and (max-width: 1080px){
	#about .about-certifications li{
    	margin-bottom: 10px;
    	margin-right: 90px;
	}
}

#home-billboard .wp-block-gallery{
	justify-content: center;
	display: inline;
}

#home-billboard .blocks-gallery-item img{
	border: none;
	box-shadow: none;
	-webkit-box-shadow: none;
	margin:auto;
}

#home-billboard .blocks-gallery-item img:hover{
	border: none;
	box-shadow: none;
	-webkit-box-shadow: none;
}

#home-billboard .blocks-gallery-grid{
	max-width: 500px;
	margin: auto;
	float: left;
}

#home-billboard li{
	margin-top: auto;
	margin-bottom: auto;
	display: inline-block;
}

@media (min-width: 600px) and (max-width: 1080px){
	#home-billboard li{
    	margin-bottom: 10px;
    	margin-right: 90px;
	}
}

#about .wp-block-gallery{
	justify-content: center;
	display: inline;
}

#about .blocks-gallery-item img{
	border: none;
	box-shadow: none;
	-webkit-box-shadow: none;
	margin:auto;
}

#about .blocks-gallery-item img:hover{
	border: none;
	box-shadow: none;
	-webkit-box-shadow: none;
}

#about .blocks-gallery-grid{
	max-width: 650px;
	margin: auto;
	float: left;
}

.about-text-group{
		margin-top: 20px;
	}

.about-text-group .wp-block-group__inner-container .about-list-columns .wp-block-column ul li{
		margin-bottom: 15px;
	}

@media screen and (min-width: 1600px){
	.about-text-group{
		margin-left: 200px;
		margin-right: 200px;
	}
}

@media screen and (max-width: 1083px){
	.about-text-group{
		padding-left: 25px;
		padding-right: 25px;
	}
}
/* Bar being removed but I'm leaving this here in case they want to bring it back
.vertical-bar{
    width: 15% !important;
    height: 100%;
    position: absolute;
    left: 66%;
    margin-left: -3px;
    top: 0;
    z-index: -1;
    background: #bbe1cd;
}
@media screen and (max-width: 898px){
	.vertical-bar{
    	display: none;
	}
}
*/

/* Employment Section
--------------------------------*/
.employment {
	background: #fff;
	background-size: cover;
	padding: 80px 0 60px 0;
}

.employment .employment-blue-text a{
	text-decoration: underline !important;
}

	.employment .box {
		padding: 50px 20px;
		margin-bottom: 50px;
		text-align: center;
		border: 1px solid #e6e6e6;
		height: 200px;
		position: relative;
		background: #fafafa;
		width: 33%;
	}

	.employment .icon {
		position: absolute;
		top: -36px;
		left: calc(50% - 36px);
		transition: 0.2s;
		border-radius: 50%;
		border: 6px solid #fff;
		display: flex;
		justify-content: center;
		align-items: center;
		flex-direction: column;
		text-align: center;
		width: 72px;
		height: 72px;
		/*background: #336699;*/
		background: #08242E;
		color: #fff;
		font-size: 24px;
	}

		.employment .icon a {
			display: inline-block;
		}

		.employment .icon i {
			color: #fff;
			font-size: 24px;
		}
.employment .icon svg {
			color: #fff;
			width: 24px;
		}

	.employment .box:hover .icon {
		background: #fff;
		/*border: 2px solid #336699;*/
		border: 2px solid #343B40;
		color: #336699;
	}

		.employment .box:hover .icon i {
			/*color: #336699;*/
			color: #08242E;
		}

.employment .box:hover .icon svg {
			/*color: #336699;*/
			color: #08242E;
		}

		.employment .box:hover .icon a {
			/*color: #336699;*/
			color: #08242E;
		}

	.employment .title {
		font-weight: 700;
		font-size: 18px;
		margin-bottom: 15px;
		text-transform: uppercase;
	}

		.employment .title a {
			color: #111;
		}

	.employment .description {
		font-size: 14px;
		line-height: 24px;
	}
.employment-boxes-container{
	padding-top: 30px;
}

.employment-header{
	position: relative;
	width: 100%;
	background: url(https://dev.topekafoundry.com/wp-content/uploads/2022/06/Careers.png) center top no-repeat;
	background-size: contain;
    height: 0;
    padding-top: 20.64%; /* (img-height / img-width * container-width) */
                /* (853 / 1280 * 100) */
}
.employment-header-text{
	position:absolute; 
	top:50%;
	left:0;
	right:0;
	color: #fff;
	font-size: 3vw;
	text-shadow: 5px 5px 0px black;
}

.careers-locations h2{
	padding-left: 0px;
}
.careers-locations a{
	color: #08242E;
	text-decoration: underline;
}
.careers-map img{
	border: none;
	box-shadow: none;
	-webkit-box-shadow: none;
	margin:auto;
}

.careers-map img:hover{
	border: none;
	box-shadow: none;
	-webkit-box-shadow: none;
}

.benefits ul{
	padding-left: 130px;
}

.benefits-lists{
	color: #fff;
}

.lets-chat-list li a{
	font-weight: bolder;
	color: #08242E;
	text-decoration: underline;
}

.group-companies-box{
	border: 5px solid #697176;
}

.group-companies-box img{
	width: 230px;
	border: none;
	box-shadow: none;
	-webkit-box-shadow: none;
}

.group-companies-box img:hover{
	border: none;
	box-shadow: none;
	-webkit-box-shadow: none;
}

.group-companies-box .group-companies-smaller img{
	width: 190px;
}

.group-companies-box .wp-block-columns.top-row{
	padding-left: 20px;
	padding-right: 20px;
}

.group-companies-box .wp-block-columns.bottom-row{
	padding-left: 50px;
	padding-right: 50px;
}

.group-companies-box h3{
	color: #fff;
    background: #697176;
    margin-top: -20px;
    width: 50%;
    margin-left: auto;
    margin-right: auto;
}

.services-header{
	position: relative;
	width: 100%;
	background: url(https://dev.topekafoundry.com/wp-content/uploads/2022/04/Services-Equipment-Landing-Page-Header.png) center top no-repeat;
	background-size: contain;
    height: 0;
    padding-top: 20.64%; /* (img-height / img-width * container-width) */
                /* (853 / 1280 * 100) */
}
.services-header-text{
	position:absolute; 
	top:50%;
	left:0;
	right:0;
	color: #fff;
	font-size: 3vw;
	text-shadow: 5px 5px 0px black;
}

.landing-page-cover{
	max-height: 400px;
}
.landing-page-cover p{
	/*text-shadow: 5px 5px 0px black;*/
}

/* Request a Quote Section
--------------------------------*/
.quote-header{
	position: relative;
	width: 100%;
	background: url(https://dev.topekafoundry.com/wp-content/uploads/2022/02/TFI-Request-a-Quote-Banner.png) center top no-repeat;
	background-size: contain;
    height: 0;
    padding-top: 20.64%; /* (img-height / img-width * container-width) */
                /* (853 / 1280 * 100) */
}
.quote-header-text{
	position:absolute; 
	top:50%;
	left:0;
	right:0;
	color: #fff;
	font-size: 3vw;
	text-shadow: 5px 5px 0px black;
}

/* Contact Section
--------------------------------*/
#contact {
	background: #fff;
	padding: 80px 0 40px 0;
}

	#contact #google-map {
		height: 300px;
		margin-bottom: 20px;
	}

	#contact .info {
		color: #333333;
		font-size: 32px;
	}

		#contact .info i {
			font-size: 32px;
			/*color: #2dc997;*/
			color: #336699;
			float: left;
		}

		#contact .info p {
			padding: 0 0 10px 50px;
			margin-bottom: 20px;
			line-height: 22px;
			font-size: 14px;
		}

		#contact .info .email p {
			padding-top: 5px;
		}

	#contact .social-links {
		padding-bottom: 20px;
		padding-left: 50px;
	}

		#contact .social-links a {
			font-size: 18px;
			display: inline-block;
			background: #333;
			color: #fff;
			line-height: 1;
			padding: 8px 0;
			border-radius: 50%;
			text-align: center;
			width: 36px;
			height: 36px;
			transition: 0.3s;
		}

			#contact .social-links a:hover {
				/*background: #2dc997;*/
				background: #336699;
				color: #fff;
			}

	#contact .form #sendmessage {
		/*color: #2dc997;
		border: 1px solid #2dc997;*/
		color: #336699;
		border: 1px solid #336699;
		display: none;
		text-align: center;
		padding: 15px;
		font-weight: 600;
		margin-bottom: 15px;
	}

	#contact .form #errormessage {
		color: red;
		display: none;
		border: 1px solid red;
		text-align: center;
		padding: 15px;
		font-weight: 600;
		margin-bottom: 15px;
	}

		#contact .form #sendmessage.show, #contact .form #errormessage.show, #contact .form .show {
			display: block;
		}

	#contact .form .validation {
		color: red;
		display: none;
		margin: 0 0 20px;
		font-weight: 400;
		font-size: 13px;
	}

	#contact .form input, #contact .form textarea {
		border-radius: 0;
		box-shadow: none;
		font-size: 14px;
	}

	#contact .form button[type="submit"] {
		/*background: #2dc997;*/
		background: #336699;
		border: 0;
		padding: 10px 24px;
		color: #fff;
		transition: 0.4s;
	}

	#contact .form button[type="submit"]:hover {
		background: #51d8ad;
	}

	.hidden{
		display:none;
	}

#contact-submit:disabled{
	background: #ddd;
}

.required-marker{
	color: red;
}
.validation-error-text {
	padding:5px;
	color: red;
}

.validation-success-text {
	padding: 5px;
	color: #28a745;
}

.invalid-field {
	border:1px solid red;
}
.valid-field {
	border: 1px solid #28a745;
}

.datepicker .datepicker-dropdown .dropdown-menu .datepicker-orient-left .datepicker-orient-top{
	z-index:1000 !important;
}

.job-app-radio-buttons{
	margin-top:25px;
}

#job-app {
	background: #fff;
	padding: 80px 0;
}

.job-app-section{
	display:none;
}

.job-app-container{
	padding-top: 200px;
}

@media (max-width: 1200px) and (min-width: 992px) {
	.job-app-container{
		padding-top: 190px;
	}
}

.job-app-buttons .wpcf7-previous{
	color: #fff;
	background: #343B40;
}

.job-app-buttons .wpcf7-submit{
	background: #BBE1CD;
	color: #08242E;
	float:right;
}

.job-app-buttons .wpcf7-submit:hover{
	background: #08242E;
	color: #fff;
	float:right;
}

.job-app-eeo{
	padding-top: 20px;
}

#containerfooter{
	display:none;
}

.step-nav-button {
	background: #336699;
	border: 0;
	padding: 10px 24px;
	color: #fff;
	transition: 0.4s;
}

	.step-nav-button :hover {
		background: #51d8ad;
	}

	.nav-next{
		float:right;
	}
.nav-next:disabled {
	background: #ddd;
}

.employer-button:disabled {
	background: #ddd;
}

.employer-button {
	background: #336699;
	border: 0;
	padding: 10px 24px;
	color: #fff;
	transition: 0.4s;
}

	.employer-button :hover {
		background: #51d8ad;
	}

#contact-submit:disabled {
	background: #ddd;
}
/*--------------------------------------------------------------
# Footer
--------------------------------------------------------------*/
.footer {
	background: #08242E;
	padding: 30px 0;
	color: #fff;
	font-size: 14px;
	line-height: 30px;
}

.policy-link{
	color: #fff;
}

#job-app-header {
	background: #343b40;
	padding: 20px 0;
	height: 72px;
}

	.footer .copyright {
		text-align: center;
	}

	.footer .credits {
		padding-top: 10px;
		text-align: center;
		font-size: 13px;
		color: #ccc;
	}


/*--------------------------------------------------------------
# Job Descriptions and Job listings table
--------------------------------------------------------------*/

.job-listing-text-container{
	padding: 0 10% 0 10%;
}

.apply-now-button-group{
		position: fixed;
		width: 35%;
	}

@media screen and (min-width: 1811px) {
	.apply-now-button-group{
		width: 15%;
	}
}

@media screen and (min-width: 1092px) and (max-width: 1811px) {
	.apply-now-button-group{
		width: 25%;
	}
}

@media screen and (min-width: 782px) {
	
	.job-listing-apply-button.wp-block-kadence-advancedbtn.kt-btns_17e7a5-b2 .kt-btn-wrap-0 a.kt-button, .job-listing-apply-button.wp-block-kadence-advancedbtn.kt-btns_17e7a5-b2 .kt-btn-wrap.kt-btn-wrap-0{
		width: 100%;
	}
	.job-listing-right-column h4{
		padding-top: 5%;
	}
	.job-listing-right-column p{
		width: 500px;
	}
	.job-listing-right-column ul{
	}
}

@media screen and (max-width: 782px) {
	
	.apply-now-button-group{
		position: relative;
		width: 100%;
		padding: 0 10% 0 10%;
	}
}

@media screen and (max-width: 336px) {
	
	.apply-now-button-group{
		padding: 0;
	}
}

.entry-content .job-listing-table table thead, .modal-body table thead{
	background: #fff;
}

.job-listing-table.wp-block-table td{
	border: none;
}

.job-listing-table.wp-block-table th{
	border-top: 1px solid;
	border-bottom: 1px solid;
	border-left: none;
	border-right: none;
}
.entry-content .job-listing-table table tr:nth-child(even), .modal-body table tr:nth-child(even){
	background: #fff;
}


.now-hiring-banner{
	position: fixed;
	width: 100%;
	top: 86px;
	z-index: 2;
}

@media screen and (min-width: 1530px) {
	.now-hiring-banner{
		top: 86px;
	}
}

@media screen and (min-width: 1421px) and (max-width: 1530px){
	.now-hiring-banner{
		top: 110px;
	}
}

@media screen and (min-width: 1221px) and (max-width: 1420px){
	.now-hiring-banner{
		top: 110px;
	}
}

@media screen and (min-width: 1130px) and (max-width: 1220px){
	.now-hiring-banner{
		top: 110px;
	}
}

@media screen and (min-width: 992px) and (max-width: 1129px){
	.now-hiring-banner{
		top: 144px;
	}
}

@media screen and (min-width: 768px) and (max-width: 991px){
	.now-hiring-banner{
		top: 79px;
	}
}

.now-hiring-banner h3{
	padding: 0.5em 0;
	font-size: 1.5vw;
	margin-bottom: 0px;
}

@media screen and (max-width: 996px){
	.now-hiring-banner h3{
	font-size: 2vw;
}
}

.now-hiring-banner h3 a{
	color: #697176;
}
/*--------------------------------------------------------------
# New Landing Page
--------------------------------------------------------------*/
.lp-capabilities-group{
	max-width: 500px;
}

#lp-top-section .certifications img{
	max-width: 150px
}

#lp-top-section .text-side.left-text.lp-cert-column{
	max-width: 1300px;
}

#lp-top-section .about-certifications li{
	margin-top: auto;
	margin-bottom: auto;
	display: inline-block;
}

#lp-top-section .about-certifications figure{
	margin-top: auto;
	margin-bottom: auto;
	display: inline-block;
}


#lp-top-section .about-certifications figure img{
	max-width: 150px !important;
	border: none;
	box-shadow: none;
	-webkit-box-shadow: none;
}


#lp-top-section .about-certifications figure img:hover{
	border: none;
	box-shadow: none;
	-webkit-box-shadow: none;
}

#lp-top-section .about-certifications figure.cert-padding img{
	padding-bottom: 10px;
}



#lp-top-section {
  width:100%;
  display: inline-block;
  vertical-align: top;
  position: relative;
  color:black;
}

.past-projects-header a{
	color: #17375e;
}

.past-projects-paragraph a strong{
	color: #07989d;
	text-decoration: underline;
	
}

.image-side{
	/* The image used */
  background-image: url("https://dev.topekafoundry.com/wp-content/uploads/2022/06/TFI-Collage.png");

  /* Create the parallax scrolling effect */
  background-attachment: fixed;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  min-height: 500px;
}

#lp-top-section.homepage-about-section{
	/*background-image: url(https://dev.topekafoundry.com/wp-content/uploads/2022/06/Website-Background.png);*/
	background-repeat: no-repeat;
    background-size: contain;
}

	#lp-top-section .about-container .background {
		/*min-height: 300px;*/
		min-height: 315px;
		/*background: url(../images/about-img.jpg) center top no-repeat;*/
		background: url(../images/HMEManagementTeam.jpg) center top no-repeat;
		margin-bottom: 10px;
	}

	#lp-top-section .about-container .content {
		background: #fff;
	}

	#lp-top-section .about-container .title {
		color: #333;
		font-weight: 700;
		font-size: 32px;
	}

@media (max-width: 768px) {
	#lp-top-section .about-container .title {
		padding-top: 15px;
	}
}

#lp-top-section .about-container p {
	line-height: 26px;
}

	#lp-top-section .about-container p:last-child {
		margin-bottom: 0;
	}

#lp-top-section .about-container .icon-box {
	background: #fff;
	background-size: cover;
	padding: 0 0 30px 0;
}

	#lp-top-section .about-container .icon-box .icon {
		float: left;
		background: #fff;
		width: 64px;
		height: 64px;
		display: flex;
		justify-content: center;
		align-items: center;
		flex-direction: column;
		text-align: center;
		border-radius: 50%;
		/*border: 2px solid #2dc997;*/
		border: 2px solid black;
		color: black;
		font-size: 24px;
	}

#lp-top-section .text-side{
	margin-top: auto;
	margin-bottom: auto;
}

#lp-top-section .text-side img{
	margin: 5px;
	max-width: 500px;
}

@media (min-width: 1083px){
	#lp-top-section .wp-block-columns{
		margin-right: 100px;
		margin-left: 100px;
	}
	#lp-top-section .wp-block-columns.about-list-columns{
	    margin: 0px;
    }
}


		#lp-top-section .about-container .icon-box .icon i {
			/*color: #2dc997;*/
			color: black;
			font-size: 24px;
		}

	#lp-top-section .about-container .icon-box .title {
		margin-left: 80px;
		font-weight: 500;
		margin-bottom: 5px;
		font-size: 18px;
		text-transform: uppercase;
	}

		#lp-top-section .about-container .icon-box .title a {
			color: #111;
		}

	#lp-top-section .about-container .icon-box .description {
		margin-left: 80px;
		line-height: 24px;
		font-size: 14px;
	}

#lp-top-section h2{
	padding: 0px;
}

@media (min-width: 600px) and (max-width: 1080px){
	#lp-top-section .about-certifications li{
    	margin-bottom: 10px;
    	margin-right: 90px;
	}
}

#lp-top-section .wp-block-gallery{
	justify-content: center;
	display: inline;
}

#lp-top-section .blocks-gallery-item img{
	border: none;
	box-shadow: none;
	-webkit-box-shadow: none;
	margin:auto;
}

#lp-top-section .blocks-gallery-item img:hover{
	border: none;
	box-shadow: none;
	-webkit-box-shadow: none;
}

#lp-top-section .blocks-gallery-grid{
	max-width: 650px;
	margin: auto;
	float: left;
}

.lp-capabilities-ul-group ul li{
	margin-bottom: 15px;
	line-height: 25px;
}


/*-----------landing page boxes with hover effect ----------------*/

.landing-page-gallery-columns-container.landing-page-box-container{
	justify-content: center;	
}

.lp-gallery-box{
  display: inline-block;
  max-width: 330px;
  min-width: 240px;
  overflow: hidden;
  position: relative;
  text-align: center;
	margin: 50px;
}

.alp-gallery-box .elementor-widget-wrap.elementor-element-populated{
	padding: 0px;
}

.lp-gallery-box .elementor-element.elementor-widget.elementor-widget-image{
	margin: 0px;
}

.lp-gallery-box:before,
.lp-gallery-box:after {
  background-color: rgba(0, 0, 0, 0.5);
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  content: '';
  transition: all 0.3s ease;
  z-index: 1;
  opacity: 0;
  transform: scaleY(2);
}

.lp-gallery-box img {
  vertical-align: top;
  max-width: 100%;
  max-height: 250px;
  backface-visibility: hidden;
}

.lp-gallery-box .wp-block-image{
	margin: 0;
}

.lp-gallery-box .lp-gallery-box-header {
  position: absolute;
  top: 210px;
  bottom: 0;
  left: 0;
  right: 0;
  align-items: center;
  z-index: 2 !important;
  display: flex;
  flex-direction: column;
  justify-content: center;
  z-index: 2;
	transition: all .3s ease-out;
  transition-delay: 0.1s;
  font-weight: 400;
	color: #fff;
}

@media (min-width: 768px) and (max-width: 1594px) {
	.lp-gallery-box .lp-gallery-box-header {
		top: 185px;
	}
	body .is-layout-flex.landing-page-box-container{
 	    flex-wrap: wrap !important;
    }
}

@media (max-width: 397px) {
	.lp-gallery-box .lp-gallery-box-header {
		top: 185px;
	}
}

.lp-gallery-box .lp-gallery-box-text {
  position: absolute;
  top: 300px;
  bottom: 0;
  left: 0;
  right: 0;
	opacity: 0;
  align-items: center;
  z-index: 2 !important;
  display: flex;
  flex-direction: column;
  justify-content: center;
  z-index: 2;
	transition: all .3s ease-out;
  transition-delay: 0.1s;
  font-weight: 400;
	color: #fff;
}

.lp-gallery-box:hover:before,
.lp-gallery-box:hover:after {
  transform: scale(1);
  opacity: 1;
}

.lp-gallery-box:hover > img {
  opacity: 0.7;
}

.lp-gallery-box:hover .lp-gallery-box-header{
  top: -100px;
}

.lp-gallery-box:hover .lp-gallery-box-text {
	opacity: 1;
  top: 50px;
	padding: 20px;
}

/*-----------end landing page boxes-------------*/

/*--------------------------------------------------------------
# Metal Sales Page
--------------------------------------------------------------*/
.is-layout-flow.wp-block-column.is-vertically-aligned-top.metalworking-services-list-column{
	margin: auto;
}
.has-text-align-center.metal-sales-hours.has-text-color.has-background.has-oswald-font-family.has-large-font-size.has-custom-font{
	padding-bottom: 0;
	margin-bottom: 0;
}
.has-text-align-center.metal-sales-delivery-available.has-text-color.has-background.has-oswald-font-family.has-large-font-size.has-custom-font{
	padding: 20px;
}

@media (min-width: 1200px){
.metal-sales-top-gallery.container {
    width: 1500px;
}
}

.metal-sales-top-gallery .metal-sales-top-gallery-image-container .project-title{
    padding: 15px 0 10px 0;
	color: #08242E;
	font-size: 25px;
}

.metal-sales-gallery-image-container{
    min-height: 453px;
}

.metal-sales-gallery-image-container p, .metal-sales-top-gallery-image-container p{
    font-size: 20px;
	line-height: 25px;
}
.metal-sales-gallery-image-container p.project-title{
    font-size: 25px;
	line-height: 25px;
}
.metal-sales-gallery-image-container .project-title{
    padding: 15px 0 10px 0;
	color: #08242E;
	font-size: 18px;
}

.metal-sales-gallery-image img{
	height: 300px;
}
.wp-block-column.metal-sales-about-text.is-layout-flow{
	margin: auto;
}
.metal-book-container{
	background: #697176;
}
.metal-book-container a{
	color: #bbe1cd;
}
.metal-book-container a:hover{
	color: #336699;
}
.metal-sales-contact-banner .wp-block-columns {
    border-left: 15px solid #3a4c53;
    padding-left: 15px;
    padding-top: 15px;
}
.metal-sales-contact-banner .wp-block-columns h2{
    padding-left: 0px;
}
.metal-sales-contact-banner .wp-block-columns a{
    color: #BBE1CD;
}
.metal-sales-cover {
	max-height: 1000px;
}
.metal-sales-cover .cover-title{
		margin-bottom: 20px;
	}
@media (max-width: 644px) {
	.metal-sales-cover .cover-title{
		font-size: 41px !important;
	}
	.metal-sales-cover .cover-sub-title{
		font-size: 20px !important;
	}
}
.banner-phone{
	position: absolute;
    top: 160px;
    right: 50px;
}
.banner-phone a{
	color: #fff;
}
.banner-phone a:hover{
	color: #BBE1CD;
}
@media (max-width: 768px){
	.banner-phone{
		position: absolute;
		bottom: 0;
		top: auto;
		/*right: 85px;*/
	}
}




/* ============================================
   TOPEKA FOUNDRY — CONSOLIDATED CSS v2
   ============================================
   STRUCTURE:
   1.  Global — Hero
   2.  Global — CTA Button + CTA Banner
   3.  Global — Haas Group Cards + Footer
   4.  Global — Split-Section Pattern (shared across all pages)
   5.  Global — Logo Bar (Industrial & Aerospace)
   6.  Global — Hover Cards (shared card body pattern)
   7.  Global — Cert Logos
   8.  Global — Bullet List
   9.  HOME        page-id-19234
   10. ABOUT US    page-id-19298
   11. METAL SALES page-id-19309
   12. CAPABILITIES page-id-19373
   13. CAREERS     page-id-19384
   14. INDUSTRIAL & DOMESTIC page-id-19398
   15. AEROSPACE & DEFENSE  page-id-19423
   16. CONTACT     page-id-19451
   ============================================ */


/* ============================================
   1. GLOBAL — HERO
   ============================================ */

#hero {
  height: 100vh;
  min-height: 600px;
  display: flex;
  align-items: center;
}

/* Hero overlay — used on all static-image pages */
.page-id-19298 #hero .hero-overlay,
.page-id-19309 #hero .hero-overlay,
.page-id-19373 #hero .hero-overlay,
.page-id-19384 #hero .hero-overlay,
.page-id-19398 #hero .hero-overlay,
.page-id-19423 #hero .hero-overlay,
.page-id-19451 #hero .hero-overlay {
  position: absolute;
  top: 0; left: 0;
  width: 100%; height: 100%;
  background: rgba(0, 0, 0, 0.35);
  z-index: 0;
}

.hero-content {
  position: relative;
  z-index: 1;
  padding-left: 30px;
  border-left: 15px solid #BBE1CD;
  max-width: 60%;
  margin-left: 5%;
}

.hero-content h1 {
  font-family: 'Oswald', sans-serif;
  font-size: 5vw;
  font-weight: 700;
  color: #fff;
  margin-bottom: 20px;
  line-height: 1.1;
}

.hero-content p {
  color: #fff;
  font-size: 1.2vw;
  font-family: 'Open Sans', sans-serif;
  margin: 0;
}

.hero-bottom {
  position: absolute;
  bottom: 100px;
  left: 0;
  right: 0;
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  padding: 0 60px;
  z-index: 1;
}

.hero-bottom-spacer {
  width: 275px;
}

.hero-cert-logos {
  display: flex;
  align-items: center;
  gap: 20px;
}

.hero-cert-logos img {
  height: 50px;
}

.hero-scroll img {
  height: 100px;
}

.hero-social {
  position: absolute;
  top: 16%;
  right: 60px;
  display: flex;
  gap: 15px;
  align-items: center;
  z-index: 1;
}

.hero-social img {
  height: 30px;
}


/* ============================================
   2. GLOBAL — CTA BUTTON + CTA BANNER
   ============================================ */

.cta-button {
  display: inline-block;
  background: #BBE1CD;
  color: #08242E;
  text-align: center;
  padding: 18px 60px;
  font-family: 'Oswald', sans-serif;
  font-size: 1.1vw;
  font-weight: 700;
  letter-spacing: 2px;
  text-decoration: none;
  transition: background 0.3s;
  width: auto;
  max-width: 300px;
}

.cta-button:hover {
  background: #fff;
  color: #08242E;
}

.cta-banner {
  background: #08242E;
  padding: 0 60px;
  margin-top: 60px;
}

.cta-banner-inner {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 60px 40px;
  gap: 30px;
  max-width: 80%;
  margin: 0 auto;
}

.cta-banner-inner .cta-slide-left {
  flex: 1;
}

.cta-banner-inner .cta-slide-left h2 {
  font-family: 'Oswald', sans-serif;
  font-size: 3.5vw;
  font-weight: 700;
  color: #fff;
  margin: 0;
  line-height: 1.1;
}

.cta-banner-inner .cta-slide-right {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 20px;
  align-items: flex-start;
}

.cta-banner-inner .cta-slide-right p {
  color: #fff;
  font-family: 'Open Sans', sans-serif;
  font-size: 25px;
  line-height: 1.6;
  margin: 0;
}


/* ============================================
   3. GLOBAL — HAAS GROUP CARDS + FOOTER
   ============================================ */

.haas-group-section {
  background: #fff;
  padding-top: 60px;
  overflow: visible;
}

.haas-group-inner {
  background: #BBE1CD;
  max-width: 80%;
  margin: 0px auto -50px auto;
  padding: 50px 0 140px;
  position: relative;
  overflow: visible;
  height: 700px;
}

.haas-group-inner h2 {
  font-family: 'Oswald', sans-serif;
  font-size: 2vw;
  font-weight: 700;
  color: #08242E;
  text-align: center;
  margin: 0 0 40px 0;
  letter-spacing: 1px;
}

.haas-cards {
  display: flex;
  gap: 30px;
  margin: 0 -3%;
  align-items: flex-start;
  position: relative;
}

.haas-card {
  flex: 1;
  display: block;
  text-decoration: none;
}

.haas-card-inner {
  position: relative;
  width: 100%;
  padding-bottom: 100%;
  overflow: visible;
  transition: padding-bottom 0.4s ease;
}

.haas-card:hover .haas-card-inner {
  padding-bottom: 170%;
}

.haas-card-bg {
  position: absolute;
  top: 0; left: 0;
  width: 100%; height: 100%;
  object-fit: cover;
  display: block;
  transition: filter 0.4s ease;
}

.haas-card:hover .haas-card-bg {
  filter: brightness(0.6);
}

.haas-card-overlay {
  position: absolute;
  top: 0; left: 0;
  right: 0;
  bottom: auto;
  min-height: 100%;
  background: rgba(0,0,0,0.3);
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 20px;
  transition: background 0.4s ease;
  z-index: 1;
}

.haas-card:hover .haas-card-overlay {
  background: rgba(0,0,0,0.65);
  justify-content: flex-start;
  padding-top: 30px;
}

.haas-card-logo {
  max-width: 80%;
  height: auto;
  display: block;
  position: relative;
  z-index: 2;
}

.haas-card-hover-content {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.5s ease;
  text-align: center;
  position: relative;
  z-index: 2;
  width: 100%;
}

.haas-card:hover .haas-card-hover-content {
  max-height: 400px;
}

.haas-card-hover-content p {
  color: #fff;
  font-family: 'Open Sans', sans-serif;
  font-size: 14px;
  line-height: 1.8;
  margin: 30px 0 20px;
}

.haas-learn-more {
  display: inline-block;
  background: #e8a020;
  color: #fff;
  font-family: 'Oswald', sans-serif;
  font-size: 12px;
  font-weight: 700;
  padding: 8px 20px;
  letter-spacing: 1px;
  text-decoration: none;
}

.haas-footer {
  background: #17375E;
  padding: 80px 0 30px 0;
}

.haas-footer-inner {
  max-width: 80%;
  margin: 10px auto;
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  gap: 15px;
}

.haas-footer-inner span {
  color: #fff;
  font-family: 'Open Sans', sans-serif;
  font-size: 18px;
}

.haas-footer-inner a {
  color: #fff;
  text-decoration: none;
}

.haas-footer-inner a:hover {
  color: #BBE1CD;
}

@media (max-width: 992px) {
  .haas-group-inner {
    height: auto;
    max-width: 100%;
    padding-bottom: 40px;
  }
  .haas-cards {
    flex-wrap: wrap;
    margin: 0 20px;
    gap: 20px;
  }
  .haas-card {
    flex: 0 0 calc(50% - 10px);
  }
  /* Cards are ~50% wide — need more padding-bottom to fit content */
  .haas-card:hover .haas-card-inner {
    padding-bottom: 215%;
  }
  .haas-group-inner h2 {
    font-size: 3vw;
    padding: 0 20px;
  }
}

@media (max-width: 600px) {
  .haas-group-inner {
    height: auto;
    max-width: 100%;
    padding: 30px 20px 40px;
  }
  .haas-group-inner h2 { font-size: 6vw; padding: 0; }
  .haas-cards { flex-direction: column; flex-wrap: nowrap; margin: 0; gap: 15px; }
  .haas-card { flex: 0 0 auto; width: 100%; }
  /* Full-width single column — resting state can be shorter, hover needs less */
  .haas-card-inner { padding-bottom: 55%; }
  .haas-card:hover .haas-card-inner { padding-bottom: 120%; }
  .haas-card-overlay { justify-content: center; }
  .haas-card-hover-content p { font-size: 13px; line-height: 1.6; margin: 15px 0; }
  .haas-footer-inner { flex-direction: column; align-items: flex-start; max-width: 90%; gap: 10px; }
  .haas-footer-inner span { font-size: 14px; }
}


/* ============================================
   4. GLOBAL — SPLIT-SECTION PATTERN
   ============================================
   Used on every page for the "image overlapping
   two-tone top/bottom" sections.

   HTML structure expected:
     <div class="split-section [page-specific-section-class]">
       <div class="split-top [bg-white|etc]">
         <div class="split-col-55 split-heading"> ... h2 ... </div>
         <div class="split-col-45 split-image-spacer"></div>
         — OR mirrored: spacer left, heading right —
       </div>
       <div class="split-bottom [bg-navy|bg-gray|etc]">
         <div class="split-col-55 split-text"> ... </div>
         <div class="split-col-45 split-image-spacer"></div>
       </div>
       <div class="split-image-container [left|right]">
         <div class="split-img-bg-teal"></div>  (optional decorative rects)
         <img class="split-main-img" ...>
       </div>
     </div>

   Page-specific classes handle: heading color, bg colors,
   exact positioning offsets, and unique content inside.
   ============================================ */

/* Section wrapper */
.split-section {
  position: relative;
  overflow: visible;
  margin-top: 60px;
}

.split-section.has-bottom-margin {
  margin-bottom: 200px;
}

.split-section.has-bottom-margin-lg {
  margin-bottom: 250px;
}

.split-section.has-bottom-margin-sm {
  margin-bottom: 120px;
}

/* Top half */
.split-top {
  background: #fff;
  display: flex;
  padding: 60px 7% 0;
}

.split-top.align-right {
  justify-content: flex-end;
}

/* Bottom half */
.split-bottom {
  display: flex;
  padding: 40px 7% 60px;
}

.split-bottom.align-right {
  justify-content: flex-end;
}

.split-bottom.pad-bottom-lg {
  padding-bottom: 90px;
}

/* Column widths */
.split-col-55 { width: 55%; }
.split-col-45 { width: 45%; }

/* Heading area */
.split-heading h2 {
  font-family: 'Oswald', sans-serif;
  font-size: 4.5vw;
  font-weight: 700;
  margin: 0;
  line-height: 1;
  text-transform: uppercase;
}

/* Body text column */
.split-text p {
  color: #fff;
  font-family: 'Open Sans', sans-serif;
  font-size: 15px;
  line-height: 1.7;
  margin-bottom: 20px;
}

/* Bullet list inside split-text */
.split-text ul {
  list-style: none;
  padding: 0;
  margin: 0 0 40px 0;
}

.split-text ul li {
  color: #fff;
  font-family: 'Open Sans', sans-serif;
  font-size: 16px;
  line-height: 1.7;
  margin-bottom: 15px;
  padding-left: 30px;
  position: relative;
}

.split-text ul li::before {
  content: '■';
  position: absolute;
  left: 0;
  color: #fff;
  font-size: 10px;
  top: 5px;
}

/* Two-column bullet grid inside split-text */
.split-bullets {
  display: flex;
  gap: 40px;
  margin-top: 10px;
}

.split-bullet-col {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.split-bullet-item {
  font-family: 'Open Sans', sans-serif;
  font-size: 14.5px;
  color: #fff;
  line-height: 1.5;
}

/* Absolutely-positioned image container */
.split-image-container {
  position: absolute;
  top: 20px;
  width: 30%;
}

.split-image-container.pos-right {
  right: 7%;
}

.split-image-container.pos-right-wide {
  right: 10%;
  width: 25%;
}

.split-image-container.pos-left {
  left: 7%;
}

.split-image-container.pos-left-wide {
  left: 10%;
  width: 27%;
}

/* Decorative background rectangles */
.split-img-bg {
  position: absolute;
  z-index: 0;
}

.split-img-bg-teal {
  background: #BBE1CD;
}

.split-img-bg-navy {
  background: #08242E;
}

.split-img-bg-gray {
  background: #697176;
}

/* Main photo inside container */
.split-main-img {
  position: relative;
  width: 100%;
  display: block;
  z-index: 1;
}

/* Background color helpers for split-bottom */
.bg-navy  { background: #08242E; }
.bg-navy-mid { background: #17375E; }
.bg-gray  { background: #697176; }
.bg-teal  { background: #BBE1CD; }
.bg-white { background: #fff; }


/* ============================================
   5. GLOBAL — LOGO BAR
   (Industrial & Domestic + Aerospace & Defense)
   ============================================ */

.page-id-19398 .ind-logo-bar,
.page-id-19423 .ind-logo-bar {
  background: #697176;
  width: 100vw;
  margin-left: calc(-50vw + 50%);
  padding: 30px 0;
}

.page-id-19398 .ind-logo-bar-track,
.page-id-19423 .ind-logo-bar-track {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 80px;
  flex-wrap: wrap;
  padding: 0 7%;
}

.page-id-19398 .ind-logo-bar-track img,
.page-id-19423 .ind-logo-bar-track img {
  height: 40px;
  width: auto;
  opacity: 0.9;
}


/* ============================================
   6. GLOBAL — HOVER CARD BODY PATTERN
   (Capabilities equip, Careers tracks & benefits)
   ============================================ */

.hover-card-body {
  padding: 0 24px;
  position: relative;
  transition: padding 0.3s ease;
  overflow: hidden;
}

.hover-card:hover .hover-card-body {
  padding: 24px 24px 50px;
}

.hover-card-body ul {
  list-style: none;
  padding: 0;
  margin: 0;
  max-height: 0;
  overflow: hidden;
  opacity: 0;
  transition: max-height 0.5s ease, opacity 0.4s ease;
}

.hover-card:hover .hover-card-body ul {
  max-height: 1000px;
  opacity: 1;
}

.hover-card-body ul li {
  font-family: 'Open Sans', sans-serif;
  font-size: 13.5px;
  color: rgba(255, 255, 255, 0.9);
  line-height: 1.6;
  margin-bottom: 8px;
  padding-left: 24px;
  position: relative;
}

.hover-card-body ul li::before {
  content: '■';
  position: absolute;
  left: 0;
  color: rgba(255, 255, 255, 0.5);
  font-size: 8px;
  top: 6px;
}

/* Corner triangle decoration */
.hover-card-corner {
  position: absolute;
  bottom: 5px;
  right: 5px;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0 0 60px 60px;
  border-color: transparent transparent #fff transparent;
}

/* Hover card image wrap (shared by caps equip, careers tracks) */
.hover-card-img-wrap {
  position: relative;
  width: 100%;
  aspect-ratio: 4/3;
  overflow: hidden;
}

.hover-card-img-wrap img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.hover-card-img-overlay {
  position: absolute;
  top: 0; left: 0;
  width: 100%; height: 100%;
  background: rgba(0, 0, 0, 0.25);
  z-index: 1;
}

.hover-card-img-wrap h3 {
  position: absolute;
  top: 50%;
  left: 0; right: 0;
  transform: translateY(-50%);
  z-index: 2;
  font-family: 'Oswald', sans-serif;
  font-size: 1.6vw;
  font-weight: 700;
  color: #fff;
  margin: 0;
  text-align: center;
  text-transform: uppercase;
  letter-spacing: 0.05em;
}


/* ============================================
   7. GLOBAL — CERT LOGOS
   ============================================ */

.cert-logos {
  display: flex;
  align-items: center;
  gap: 30px;
  flex-wrap: nowrap;
}

.cert-logos img {
  height: 60px;
}


/* ============================================
   8. GLOBAL — TEAL CTA BUTTON VARIANT
   (used inside split sections on several pages)
   ============================================ */

.split-cta-btn {
  display: inline-block;
  background: #BBE1CD;
  color: #17375E;
  font-family: 'Oswald', sans-serif;
  font-weight: 700;
  font-size: 1.1vw;
  letter-spacing: 2px;
  text-transform: uppercase;
  text-align: center;
  padding: 18px 60px;
  text-decoration: none;
  transition: background 0.3s;
  margin-top: 10px;
}

.split-cta-btn:hover {
  background: #fff;
  color: #17375E;
}


/* ============================================
   9. HOME — page-id-19234
   ============================================ */

/* Industry Panels */
.page-id-19234 .industry-panels-wrapper {
  position: relative;
  margin-top: -60px;
  z-index: 2;
}

.page-id-19234 .industry-divider {
  background: #fff;
  height: 120px;
  max-width: 88%;
  margin: 0 auto;
  position: relative;
  z-index: 2;
}

.page-id-19234 .industry-panels {
  display: flex;
  position: relative;
  z-index: 3;
  max-width: 90%;
  margin: -95px auto 0;
  gap: 40px;
}

.page-id-19234 .industry-panel {
  flex: 1;
  position: relative;
  overflow: hidden;
  min-height: 60vh;
  display: flex;
  align-items: center;
  justify-content: center;
}

.page-id-19234 .industry-panel video {
  position: absolute;
  top: 0; left: 0;
  width: 100%; height: 100%;
  object-fit: cover;
  z-index: 0;
  transform: scale(1);
  transition: transform 0.4s ease;
  display: block;
}

.page-id-19234 .industry-panel:hover video {
  transform: scale(1.05);
}

.page-id-19234 .industry-panel-overlay {
  position: absolute;
  top: 0; left: 0;
  width: 100%; height: 100%;
  background: rgba(0,0,0,0.35);
  z-index: 1;
}

.page-id-19234 .industry-panel h2 {
  position: relative;
  z-index: 2;
  color: #fff;
  font-family: 'Oswald', sans-serif;
  font-size: 2.5vw;
  font-weight: 700;
  text-align: center;
  margin: 0;
}

/* Logo Ticker */
.page-id-19234 .logo-ticker {
  background: #08242E;
  width: 100vw;
  margin-left: calc(-50vw + 50%);
  overflow: hidden;
  padding: 30px 0;
  margin-top: 60px;
}

.page-id-19234 .logo-ticker-scroller {
  display: flex;
  width: max-content;
  animation: logo-scroll 30s linear infinite;
}

.page-id-19234 .logo-ticker-track {
  display: flex;
  align-items: center;
  gap: 80px;
  flex-shrink: 0;
  padding-right: 80px;
}

.page-id-19234 .logo-ticker-track img {
  height: 40px;
  width: auto;
  flex-shrink: 0;
  opacity: 0.9;
}

@keyframes logo-scroll {
  0%   { transform: translateX(0); }
  100% { transform: translateX(-50%); }
}

/* Strength in Motion */
.page-id-19234 .strength-section {
  margin-bottom: 200px; /* image overhangs */
}

.page-id-19234 .strength-heading h2 {
  color: #697176;
  font-size: 3.5vw; /* slightly smaller than default 4.5vw */
}

.page-id-19234 .strength-bottom {
  background: #697176;
}

.page-id-19234 .strength-text {
  padding-right: 40px;
}

.page-id-19234 .strength-text p {
  font-size: 18px; /* larger than default */
}

.page-id-19234 .partners-label {
  color: #fff !important;
  font-style: italic;
}

.page-id-19234 .partner-logos {
  display: flex;
  align-items: center;
  gap: 30px;
  flex-wrap: nowrap;
}

.page-id-19234 .partner-logos img {
  height: 35px;
}

.page-id-19234 .strength-image-container {
  right: 7%;
  width: 40%;
}

.page-id-19234 .strength-image-bg-gray {
  position: absolute;
  top: -20px;
  right: -20px;
  width: 100%; height: 100%;
  background: #8a9ba8;
  z-index: 0;
}

.page-id-19234 .strength-image-bg-teal {
  position: absolute;
  bottom: -30px;
  right: -20px;
  width: 65%; height: 40%;
  background: #BBE1CD;
  z-index: 0;
}

/* Capability Cards */
.page-id-19234 .capabilities-cards-section {
  padding: 265px 7% 180px;
}

.page-id-19234 .capabilities-cards-inner {
  display: flex;
  gap: 60px;
  justify-content: center;
  align-items: flex-start;
}

.page-id-19234 .capability-card {
  background: #0a2e3a;
  flex: 1;
  max-width: 500px;
  min-height: 350px;
  padding: 50px 40px 60px;
  position: relative;
  display: flex;
  flex-direction: column;
  transition: padding-bottom 0.4s ease;
}

.page-id-19234 .card-corner {
  position: absolute;
  bottom: 10px;
  right: 10px;
  width: 50px;
  height: auto;
}

.page-id-19234 .capability-card h3 {
  font-size: 2vw;
  font-weight: 400;
  color: #fff;
  text-align: center;
  margin-bottom: 40px;
  line-height: 1.3;
}

.page-id-19234 .capability-card ul {
  list-style: none;
  padding: 0;
  margin: 0;
  max-height: 0;
  overflow: hidden;
  opacity: 0;
  transition: max-height 0.4s ease, opacity 0.3s ease;
}

.page-id-19234 .capability-card:hover ul {
  max-height: 600px;
  opacity: 1;
}

.page-id-19234 .capability-card ul li {
  color: rgba(255,255,255,0.85);
  font-family: 'Open Sans', sans-serif;
  font-size: 20px;
  line-height: 1.6;
  margin-bottom: 20px;
  padding-left: 30px;
  position: relative;
}

.page-id-19234 .capability-card ul li::before {
  content: '■';
  position: absolute;
  left: 0;
  color: #fff;
  font-size: 24px;
  top: -5px;
}

/* Forging Our Way */
.page-id-19234 .forging-section {
  margin-bottom: 200px; /* image overhangs */
}

.page-id-19234 .forging-heading h2 {
  color: #17375E;
}

.page-id-19234 .forging-bottom {
  background: #17375E;
  padding-bottom: 90px;
}

.page-id-19234 .forging-text {
  width: 55%;
  padding-left: 40px;
}

.page-id-19234 .forging-text p {
  font-size: 25px; /* larger than default */
}

.page-id-19234 .forging-text strong {
  color: #fff;
}

.page-id-19234 .forging-image-container {
  left: 7%;
  width: 38%;
}

.page-id-19234 .forging-image-bg-teal {
  position: absolute;
  top: -20px;
  left: -20px;
  width: 60%; height: 35%;
  background: #BBE1CD;
  z-index: 0;
}

.page-id-19234 .forging-small-images {
  position: relative;
  margin-top: -75px;
  margin-left: calc(50% + 40px);
  width: 40%;
  display: flex;
  gap: 75px;
  z-index: 2;
  padding-bottom: 40px;
}

.page-id-19234 .forging-small-images img {
  width: calc(50% - 10px);
  height: auto;
  display: block;
}

/* CTA Carousel (homepage only) */
.page-id-19234 .cta-carousel {
  position: relative;
  display: flex;
  align-items: center;
  background: #08242E;
  padding: 0 60px;
}

.page-id-19234 .cta-carousel-prev,
.page-id-19234 .cta-carousel-next {
  background: none;
  border: none;
  color: #fff;
  font-size: 48px;
  cursor: pointer;
  padding: 20px;
  flex-shrink: 0;
  z-index: 2;
}

.page-id-19234 .cta-carousel-track {
  flex: 1;
  overflow: hidden;
}

.page-id-19234 .cta-slide {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 60px 15%;
  gap: 60px;
}

.page-id-19234 .cta-slide-left {
  flex: 1;
}

.page-id-19234 .cta-slide-left h2 {
  font-family: 'Oswald', sans-serif;
  font-size: 3.5vw;
  font-weight: 700;
  color: #fff;
  margin: 0;
  line-height: 1.1;
}

.page-id-19234 .cta-slide-right {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.page-id-19234 .cta-slide-right p {
  color: #fff;
  font-family: 'Open Sans', sans-serif;
  font-size: 25px;
  line-height: 1.6;
  margin: 0;
}


/* ============================================
   10. ABOUT US — page-id-19298
   ============================================ */

/* Trusted for 150 Years */
.page-id-19298 .trusted-section {
  padding-bottom: 200px; /* image overhangs */
}

.page-id-19298 .trusted-heading h2 {
  color: #697176;
}

.page-id-19298 .trusted-bottom {
  background: #697176;
}

.page-id-19298 .trusted-text {
  padding-right: 40px;
}

.page-id-19298 .trusted-text em {
  color: #fff;
}

.page-id-19298 .trusted-cta-button {
  display: block;
  background: #BBE1CD;
  color: #08242E;
  text-align: center;
  padding: 18px 60px;
  font-family: 'Oswald', sans-serif;
  font-size: 1.1vw;
  font-weight: 700;
  letter-spacing: 2px;
  text-decoration: none;
  margin-top: 20px;
  transition: background 0.3s;
  max-width: 450px;
  margin-left: auto;
  margin-right: auto;
}

.page-id-19298 .trusted-cta-button:hover {
  background: #fff;
  color: #08242E;
}

.page-id-19298 .trusted-image-container {
  right: 7%;
  width: 30%;
}

/* Problem Cards */
.page-id-19298 .problem-cards-section {
  background: #fff;
  padding: 80px 7%;
  position: relative;
  z-index: 2;
}

.page-id-19298 .problem-cards-inner {
  display: flex;
  gap: 50px;
  justify-content: center;
  align-items: flex-start;
}

.page-id-19298 .problem-card {
  background: #08242E;
  flex: 1;
  min-height: 250px;
  padding: 40px 30px;
  position: relative;
  z-index: 2;
}

.page-id-19298 .problem-card h3 {
  font-family: 'Oswald', sans-serif;
  font-size: 1.7vw;
  font-weight: 700;
  color: #fff;
  text-align: center;
  margin-bottom: 40px;
  line-height: 1.3;
}

.page-id-19298 .problem-card p {
  color: #fff;
  font-family: 'Open Sans', sans-serif;
  font-size: 20px;
  line-height: 1.7;
  margin: 0;
  max-height: 0;
  overflow: hidden;
  opacity: 0;
  transition: max-height 0.4s ease, opacity 0.3s ease;
}

.page-id-19298 .problem-card:hover p {
  max-height: 400px;
  opacity: 1;
}

/* What Sets Us Apart */
.page-id-19298 .apart-section {
  margin-bottom: 200px; /* image overhangs */
}

.page-id-19298 .apart-heading h2 {
  color: #697176;
}

.page-id-19298 .apart-bottom {
  background: #697176;
  padding-bottom: 90px;
}

.page-id-19298 .apart-text {
  padding-left: 40px;
}

.page-id-19298 .apart-image-container {
  top: 115px; /* offset to clear the problem cards above */
  left: 7%;
  width: 38%;
}


/* ============================================
   11. METAL SALES — page-id-19309
   ============================================ */

.page-id-19309 .ms-delivery-banner {
  background: #BBE1CD;
  width: 100vw;
  padding: 30px 7%;
  text-align: center;
  margin: 80px 0;
}

.page-id-19309 .ms-delivery-banner p {
  font-family: 'Oswald', sans-serif;
  font-size: clamp(1.1rem, 2vw, 2.6rem);
  font-weight: 700;
  color: #08242E;
  margin: 0;
  letter-spacing: 0.05em;
  text-transform: uppercase;
}

/* Our Products */
.page-id-19309 .ms-products-section {
  background: #fff;
  position: relative;
}

.page-id-19309 .ms-products-top {
  display: flex;
  padding: 0 0 0 7%;
  margin-top: 30px;
}

.page-id-19309 .ms-products-heading {
  width: 55%;
  background: #fff;
  padding: 30px 40px 0 0;
}

.page-id-19309 .ms-products-heading h2 {
  font-family: 'Oswald', sans-serif;
  font-size: 4.5vw;
  font-weight: 700;
  color: #17375E;
  margin: 0;
  line-height: 1;
  text-transform: uppercase;
}

.page-id-19309 .ms-products-top-right {
  width: 45%;
  background: #17375E;
  position: relative;
}

.page-id-19309 .ms-products-teal-rect {
  position: absolute;
  top: -18px;
  right: 0;
  width: 200px;
  height: 55px;
  background: #BBE1CD;
}

.page-id-19309 .ms-products-bar {
  background: #17375E;
  height: 60px;
  width: 100%;
}

.page-id-19309 .ms-products-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 28px;
  padding: 0 7% 60px;
  margin-top: -40px;
  position: relative;
  z-index: 2;
}

.page-id-19309 .ms-product-item {
  display: flex;
  flex-direction: column;
}

.page-id-19309 .ms-product-img-wrap {
  width: 100%;
  aspect-ratio: 4/3;
  overflow: hidden;
  margin-bottom: 12px;
}

.page-id-19309 .ms-product-img-wrap img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.page-id-19309 .ms-product-item p {
  font-family: 'Open Sans', sans-serif;
  font-size: 13.5px;
  color: #08242E;
  margin: 0;
  line-height: 1.4;
}

.page-id-19309 .ms-product-item p strong {
  font-weight: 700;
}

/* Our Materials */
.page-id-19309 .ms-materials-section {
  background: #fff;
  position: relative;
  padding-bottom: 60px;
  margin-top: 30px;
}

.page-id-19309 .ms-materials-top {
  display: flex;
}

.page-id-19309 .ms-materials-navy-left {
  width: 20%;
  background: #08242E;
  position: relative;
  flex-shrink: 0;
}

.page-id-19309 .ms-materials-teal-left {
  position: absolute;
  top: -18px; left: 0;
  width: 160px; height: 55px;
  background: #BBE1CD;
}

.page-id-19309 .ms-materials-heading {
  flex: 1;
  background: #fff;
  text-align: center;
  padding: 30px 20px 0;
}

.page-id-19309 .ms-materials-heading h2 {
  font-family: 'Oswald', sans-serif;
  font-size: 4.5vw;
  font-weight: 700;
  color: #08242E;
  margin: 0;
  line-height: 1;
  text-transform: uppercase;
  letter-spacing: 0.04em;
}

.page-id-19309 .ms-materials-navy-right {
  width: 20%;
  position: relative;
  flex-shrink: 0;
}

.page-id-19309 .ms-materials-teal-right {
  position: absolute;
  top: -18px; right: 0;
  width: 160px; height: 55px;
  background: #BBE1CD;
}

.page-id-19309 .ms-materials-bar {
  background: #08242E;
  height: 80px;
  width: 100%;
}

.page-id-19309 .ms-materials-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 40px 90px;
  padding: 0 7% 40px;
  margin-top: -40px;
  position: relative;
  z-index: 2;
  margin-bottom: 20px;
}

.page-id-19309 .ms-material-item {
  display: flex;
  flex-direction: column;
}

.page-id-19309 .ms-material-img-wrap {
  width: 100%;
  aspect-ratio: 4/3;
  overflow: hidden;
  margin-bottom: 16px;
}

.page-id-19309 .ms-material-img-wrap img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.page-id-19309 .ms-material-item h3 {
  font-family: 'Oswald', sans-serif;
  font-size: 2.1rem;
  font-weight: 700;
  color: #08242E;
  text-transform: uppercase;
  margin: 0 0 12px;
  letter-spacing: 0.03em;
}

.page-id-19309 .ms-material-item p {
  font-family: 'Open Sans', sans-serif;
  font-size: 16px;
  color: #333;
  line-height: 1.7;
  margin: 0;
}

.page-id-19309 .ms-metals-guide-wrap {
  text-align: center;
  padding: 20px 7%;
}

.page-id-19309 .ms-metals-guide-btn {
  display: inline-block;
  background: #BBE1CD;
  color: #17375E;
  font-family: 'Oswald', sans-serif;
  font-weight: 700;
  font-size: 3.15rem;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  padding: 18px 80px;
  text-decoration: none;
  margin-bottom: 24px;
}

.page-id-19309 .ms-metals-guide-btn:hover {
  background: #a8d4bc;
}

.page-id-19309 .ms-metals-guide-note {
  font-family: 'Open Sans', sans-serif;
  font-size: 14px;
  color: #444;
  font-style: italic;
  margin: 0 auto;
  max-width: 620px;
  line-height: 1.6;
}

/* Metalwork Services */
.page-id-19309 .ms-services-section {
  margin-bottom: 200px;
}

.page-id-19309 .ms-services-heading h2 {
  color: #08242E;
}

.page-id-19309 .ms-services-bottom {
  background: #08242E;
}

.page-id-19309 .ms-services-text {
  padding-right: 40px;
}

.page-id-19309 .ms-services-bullets {
  display: flex;
  gap: 40px;
  margin-top: 24px;
}

.page-id-19309 .ms-services-col {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.page-id-19309 .ms-service-item {
  font-family: 'Open Sans', sans-serif;
  font-size: 14.5px;
  color: #fff;
  line-height: 1.5;
}

.page-id-19309 .ms-service-item em {
  display: block;
  font-size: 12.5px;
  color: #BBE1CD;
  margin-top: 2px;
}

.page-id-19309 .ms-services-image-container {
  right: 10%;
  width: 25%;
}

.page-id-19309 .ms-services-image-bg-navy {
  position: absolute;
  bottom: -30px; right: -20px;
  width: 65%; height: 40%;
  background: #08242E;
  z-index: 0;
}

.page-id-19309 .ms-services-image-bg-teal {
  position: absolute;
  top: -20px; left: -20px;
  width: 100%; height: 50%;
  background: #BBE1CD;
  z-index: 0;
}

.page-id-19309 .ms-services-worker-img {
  max-height: 680px;
}

/* Testimonial Carousel */
.page-id-19309 .ms-testimonial-section {
  background: #17375E;
  padding: 70px 10%;
  display: flex;
  align-items: center;
  gap: 30px;
}

.page-id-19309 .ms-testimonial-track {
  flex: 1;
  text-align: center;
}

.page-id-19309 .ms-testimonial-slide { display: none; }
.page-id-19309 .ms-testimonial-slide.active { display: block; }

.page-id-19309 .ms-testimonial-slide blockquote {
  font-family: 'Open Sans', sans-serif;
  font-size: 3.05rem;
  color: #fff;
  line-height: 1.75;
  margin: 0 0 20px;
  font-style: normal;
  border: none;
  padding: 0;
}

.page-id-19309 .ms-testimonial-attribution {
  font-family: 'Open Sans', sans-serif;
  font-size: 3rem;
  color: #fff;
  margin: 0;
  line-height: 1.1;
}

.page-id-19309 .ms-testimonial-prev,
.page-id-19309 .ms-testimonial-next {
  background: none;
  border: none;
  color: #fff;
  font-size: 5.8rem;
  cursor: pointer;
  padding: 10px;
  line-height: 1;
  opacity: 0.7;
  transition: opacity 0.2s;
}

.page-id-19309 .ms-testimonial-prev:hover,
.page-id-19309 .ms-testimonial-next:hover {
  opacity: 1;
}

/* Ag-Line Hybrid Buildings */
.page-id-19309 .ms-agline-section {
  margin-bottom: 130px;
}

.page-id-19309 .ms-agline-top .ms-agline-image-col { width: 45%; }
.page-id-19309 .ms-agline-top .ms-agline-text-col  { width: 55%; }

.page-id-19309 .ms-agline-bottom {
  background: #697176;
}

.page-id-19309 .ms-agline-bottom .ms-agline-image-col { width: 45%; }

.page-id-19309 .ms-agline-text {
  width: 55%;
  padding-left: 40px;
}

.page-id-19309 .ms-agline-text h2 {
  font-family: 'Oswald', sans-serif;
  font-size: clamp(2rem, 2.2vw, 5rem);
  font-weight: 700;
  color: #fff;
  text-transform: uppercase;
  margin: 0 0 20px;
  line-height: 1.1;
  letter-spacing: 0.04em;
}

.page-id-19309 .ms-agline-text p {
  font-family: 'Open Sans', sans-serif;
  font-size: 18px;
  color: #fff;
  line-height: 1.7;
  margin-bottom: 30px;
}

.page-id-19309 .ms-agline-btn {
  display: block;
  background: #17375E;
  color: #fff;
  font-family: 'Oswald', sans-serif;
  font-weight: 700;
  font-size: 3rem;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  text-align: center;
  padding: 20px 40px;
  text-decoration: none;
  max-width: 340px;
  margin: auto;
}

.page-id-19309 .ms-agline-btn:hover {
  background: #0f2240;
  color: #fff;
}

.page-id-19309 .ms-agline-image-container {
  left: 10%;
  width: 27%;
}

.page-id-19309 .ms-agline-image-bg-gray {
  position: absolute;
  bottom: -30px; left: -20px;
  width: 65%; height: 40%;
  background: #697176;
  z-index: 0;
}

.page-id-19309 .ms-agline-image-bg-teal {
  position: absolute;
  top: -20px; right: -20px;
  width: 100%; height: 50%;
  background: #BBE1CD;
  z-index: 0;
}


/* ============================================
   12. CAPABILITIES — page-id-19373
   ============================================ */

/* Your Full-Service Shop */
.page-id-19373 .cap-fullservice-section {
  margin-bottom: 200px;
}

.page-id-19373 .cap-fullservice-heading h2 {
  color: #08242E;
  font-size: 4vw; /* slightly tighter than default */
}

.page-id-19373 .cap-fullservice-bottom {
  background: #08242E;
}

.page-id-19373 .cap-fullservice-text {
  padding-right: 40px;
}

.page-id-19373 .cap-fullservice-text p {
  margin-bottom: 24px;
}

.page-id-19373 .cap-fullservice-image-container {
  right: 10%;
  width: 25%;
}

.page-id-19373 .cap-fullservice-image-bg-teal {
  position: absolute;
  top: -20px; left: -20px;
  width: 100%; height: 50%;
  background: #BBE1CD;
  z-index: 0;
}

.page-id-19373 .cap-fullservice-worker-img {
  max-height: 680px;
  object-fit: cover;
}

/* Industry Capability Cards */
.page-id-19373 .cap-industry-section {
  display: flex;
  gap: 80px;
  padding: 60px 7%;
  background: #fff;
}

.page-id-19373 .cap-industry-card {
  flex: 1;
  display: flex;
  flex-direction: column;
}

.page-id-19373 .cap-industry-img-wrap {
  position: relative;
  width: 100%;
  aspect-ratio: 16/9;
  overflow: hidden;
}

.page-id-19373 .cap-industry-img-wrap img {
  width: 100%; height: 100%;
  object-fit: cover;
  display: block;
}

.page-id-19373 .cap-industry-img-overlay {
  position: absolute;
  top: 0; left: 0;
  width: 100%; height: 100%;
  background: rgba(0, 0, 0, 0.45);
  z-index: 1;
}

.page-id-19373 .cap-industry-img-wrap h2 {
  position: absolute;
  top: 50%; left: 0; right: 0;
  transform: translateY(-50%);
  text-align: center;
  z-index: 2;
  font-family: 'Oswald', sans-serif;
  font-size: 2.2vw;
  font-weight: 700;
  color: #fff;
  margin: 0;
  line-height: 1.1;
}

.page-id-19373 .cap-industry-body {
  background: #08242E;
  padding: 0 30px;
  transition: padding 0.3s ease;
}

.page-id-19373 .cap-industry-card:hover .cap-industry-body {
  padding: 30px 30px 40px;
}

.page-id-19373 .cap-industry-body ul {
  list-style: none;
  padding: 0; margin: 0;
  max-height: 0;
  overflow: hidden;
  opacity: 0;
  transition: max-height 0.5s ease, opacity 0.4s ease;
}

.page-id-19373 .cap-industry-card:hover .cap-industry-body ul {
  max-height: 800px;
  opacity: 1;
}

.page-id-19373 .cap-industry-body ul li {
  font-family: 'Open Sans', sans-serif;
  font-size: 20px;
  color: rgba(255, 255, 255, 0.9);
  line-height: 1.6;
  margin-bottom: 10px;
  padding-left: 28px;
  position: relative;
}

.page-id-19373 .cap-industry-body ul li::before {
  content: '■';
  position: absolute;
  left: 0;
  color: #fff;
  font-size: 20px;
}

/* Our Machines */
.page-id-19373 .cap-machines-section {
  margin-bottom: 200px;
}

.page-id-19373 .cap-machines-heading h2 {
  color: #17375E;
}

.page-id-19373 .cap-machines-bottom {
  background: #17375E;
  padding-bottom: 90px;
}

.page-id-19373 .cap-machines-text {
  padding-left: 40px;
}

.page-id-19373 .cap-machines-text p {
  font-size: 16px;
  margin-bottom: 30px;
}

.page-id-19373 .cap-machines-btn {
  display: inline-block;
  background: #BBE1CD;
  color: #17375E;
  font-family: 'Oswald', sans-serif;
  font-weight: 700;
  font-size: 1.1vw;
  letter-spacing: 2px;
  text-transform: uppercase;
  text-align: center;
  padding: 18px 60px;
  text-decoration: none;
  transition: background 0.3s;
}

.page-id-19373 .cap-machines-btn:hover {
  background: #fff;
  color: #17375E;
}

.page-id-19373 .cap-machines-image-container {
  left: 7%;
  width: 30%;
}

.page-id-19373 .cap-machines-image-bg-teal {
  position: absolute;
  top: -20px; left: -20px;
  width: 60%; height: 35%;
  background: #BBE1CD;
  z-index: 0;
}

/* Equipment Cards */
.page-id-19373 .cap-equipment-section {
  display: flex;
  gap: 28px;
  padding: 160px 7% 80px;
  background: #fff;
}

.page-id-19373 .cap-equip-card {
  flex: 1;
  display: flex;
  flex-direction: column;
}

.page-id-19373 .cap-equip-body {
  background: #17375E;
}

/* Cap equip body ul has a special strong element variant */
.page-id-19373 .cap-equip-body ul li strong {
  font-family: 'Oswald', sans-serif;
  font-size: 3rem;
  color: #fff;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  display: block;
  margin-top: 14px;
  margin-bottom: 4px;
  padding-left: 0;
}

.page-id-19373 .cap-equip-body ul li:has(strong)::before {
  display: none;
}

/* Override bullet color to full white for equip cards */
.page-id-19373 .cap-equip-body ul li::before {
  color: rgba(255, 255, 255, 1);
  font-size: 14px;
  top: 0;
}


/* ============================================
   13. CAREERS — page-id-19384
   ============================================ */

/* Why Join Us */
.page-id-19384 .car-whyjoin-section {
  margin-bottom: 200px;
}

.page-id-19384 .car-whyjoin-heading h2 {
  color: #17375E;
}

.page-id-19384 .car-whyjoin-bottom {
  background: #17375E;
}

.page-id-19384 .car-whyjoin-text {
  padding-right: 40px;
}

.page-id-19384 .car-whyjoin-image-container {
  right: 7%;
  width: 30%;
}

.page-id-19384 .car-whyjoin-image-bg-teal {
  position: absolute;
  top: -20px; left: -20px;
  width: 60%; height: 35%;
  background: #BBE1CD;
  z-index: 0;
}

/* Career Track Cards */
.page-id-19384 .car-tracks-section {
  display: flex;
  gap: 28px;
  padding: 60px 7% 80px;
  background: #fff;
}

.page-id-19384 .car-track-card {
  flex: 1;
  display: flex;
  flex-direction: column;
}

.page-id-19384 .car-track-body {
  background: #08242E;
}

/* Benefits Cards */
.page-id-19384 .car-benefits-section {
  display: flex;
  gap: 28px;
  padding: 60px 7% 80px;
  background: #fff;
}

.page-id-19384 .car-benefit-card {
  flex: 1;
  display: flex;
  flex-direction: column;
}

.page-id-19384 .car-benefit-top {
  background: #697176;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 40px 20px 30px;
}

.page-id-19384 .car-benefit-icon {
  max-width: 200px;
  max-height: 200px;
  object-fit: contain;
  display: block;
  margin-bottom: 20px;
}

.page-id-19384 .car-benefit-top h3 {
  font-family: 'Oswald', sans-serif;
  font-size: 1.8vw;
  font-weight: 700;
  color: #fff;
  margin: 0;
  text-align: center;
  text-transform: uppercase;
  letter-spacing: 0.05em;
}

.page-id-19384 .car-benefit-body {
  background: #697176;
}

/* Benefits bullet has em sub-label */
.page-id-19384 .car-benefit-body ul li em {
  display: block;
  font-size: 11px;
  color: #BBE1CD;
  margin-top: 2px;
}

/* The Haas Way */
.page-id-19384 .car-haasway-section {
  margin-bottom: 200px;
}

.page-id-19384 .car-haasway-heading h2 {
  color: #17375E;
}

.page-id-19384 .car-haasway-bottom {
  background: #17375E;
}

.page-id-19384 .car-haasway-text {
  padding-left: 40px;
}

.page-id-19384 .car-haasway-image-container {
  left: 7%;
  width: 30%;
}

.page-id-19384 .car-haasway-image-bg-teal {
  position: absolute;
  top: -20px; right: -20px;
  width: 60%; height: 35%;
  background: #BBE1CD;
  z-index: 0;
}


/* ============================================
   14. INDUSTRIAL & DOMESTIC — page-id-19398
   ============================================ */

/* Built for Productivity */
.page-id-19398 .ind-productivity-section {
  margin-top: 15px; /* tighter than default 60px */
  margin-bottom: 200px;
}

.page-id-19398 .ind-productivity-heading h2 {
  color: #08242E;
  font-size: 4vw;
}

.page-id-19398 .ind-productivity-bottom {
  background: #08242E;
}

.page-id-19398 .ind-productivity-text {
  padding-right: 40px;
}

.page-id-19398 .ind-productivity-text p {
  margin-bottom: 24px;
}

.page-id-19398 .ind-productivity-image-container {
  right: 10%;
  width: 25%;
}

.page-id-19398 .ind-productivity-image-bg-teal {
  position: absolute;
  top: -20px; left: -20px;
  width: 100%; height: 50%;
  background: #BBE1CD;
  z-index: 0;
}

.page-id-19398 .ind-productivity-worker-img {
  max-height: 680px;
  object-fit: cover;
}

/* Why Leaders Trust TFI */
.page-id-19398 .ind-trust-section {
  margin-bottom: 120px;
}

.page-id-19398 .ind-trust-heading h2 {
  color: #17375E;
}

.page-id-19398 .ind-trust-bottom {
  background: #17375E;
  padding-bottom: 90px;
}

.page-id-19398 .ind-trust-text {
  padding-left: 40px;
}

.page-id-19398 .ind-trust-image-container {
  left: 7%;
  width: 30%;
}

.page-id-19398 .ind-trust-image-bg-teal {
  position: absolute;
  top: -20px; left: -20px;
  width: 60%; height: 35%;
  background: #BBE1CD;
  z-index: 0;
}

/* Industry List Bar */
.page-id-19398 .ind-industry-bar {
  background: #fff;
  padding: 60px 3%;
  text-align: center;
}

.page-id-19398 .ind-industry-bar p {
  font-family: 'Oswald', sans-serif;
  font-size: clamp(0.75rem, 1.1vw, 3rem);
  font-weight: 400;
  color: #08242E;
  letter-spacing: 0.08em;
  margin: 0;
  line-height: 1.6;
}


/* ============================================
   15. AEROSPACE & DEFENSE — page-id-19423
   ============================================ */

/* Built for the Mission */
.page-id-19423 .aero-mission-section {
  margin-bottom: 200px;
}

.page-id-19423 .aero-mission-heading h2 {
  color: #08242E;
  font-size: 4vw;
}

.page-id-19423 .aero-mission-bottom {
  background: #08242E;
}

.page-id-19423 .aero-mission-text {
  padding-right: 40px;
}

.page-id-19423 .aero-mission-text p {
  margin-bottom: 24px;
}

.page-id-19423 .aero-mission-image-container {
  right: 10%;
  width: 25%;
}

.page-id-19423 .aero-mission-image-bg-teal {
  position: absolute;
  top: -20px; left: -20px;
  width: 100%; height: 50%;
  background: #BBE1CD;
  z-index: 0;
}

.page-id-19423 .aero-mission-worker-img {
  max-height: 680px;
  object-fit: cover;
}

/* Why Leaders Trust TFI */
.page-id-19423 .aero-trust-section {
  margin-bottom: 250px;
}

.page-id-19423 .aero-trust-heading h2 {
  color: #697176;
}

.page-id-19423 .aero-trust-bottom {
  background: #697176;
  padding-bottom: 90px;
}

.page-id-19423 .aero-trust-text {
  padding-left: 40px;
}

.page-id-19423 .aero-trust-image-container {
  left: 7%;
  width: 30%;
}

.page-id-19423 .aero-trust-image-bg-teal {
  position: absolute;
  top: -20px; left: -20px;
  width: 60%; height: 35%;
  background: #BBE1CD;
  z-index: 0;
}


/* ============================================
   16. CONTACT — page-id-19451
   ============================================ */

.page-id-19451 .contact-section {
  display: flex;
  align-items: flex-start;
  background: #fff;
  margin-top: 60px;
}

/* Left column */
.page-id-19451 .contact-left {
  width: 55%;
  background: #08242E;
  padding: 60px 5% 60px 7%;
  display: flex;
  flex-direction: column;
  gap: 40px;
  margin-top: 160px;
}

.page-id-19451 .contact-call-wrap {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 16px;
}

.page-id-19451 .contact-call-btn {
  display: block;
  background: #BBE1CD;
  color: #08242E;
  font-family: 'Oswald', sans-serif;
  font-weight: 700;
  font-size: clamp(1.3rem, 2vw, 1.9rem);
  letter-spacing: 0.08em;
  text-transform: uppercase;
  text-align: center;
  padding: 22px 60px;
  text-decoration: none;
  width: 100%;
  max-width: 520px;
  transition: background 0.3s;
}

.page-id-19451 .contact-call-btn:hover {
  background: #a8d4bc;
}

.page-id-19451 .contact-email-line {
  font-family: 'Open Sans', sans-serif;
  font-size: 19px;
  color: #fff;
  margin: 0;
  text-align: center;
}

.page-id-19451 .contact-email-line a {
  color: #fff;
  text-decoration: none;
}

.page-id-19451 .contact-email-line a:hover {
  color: #BBE1CD;
}

.page-id-19451 .contact-locations {
  display: flex;
  flex-wrap: wrap;
  gap: 24px 0;
  justify-content: space-between;
}

.page-id-19451 .contact-location {
  flex: 0 0 auto;
  min-width: 130px;
}

.page-id-19451 .contact-location h4 {
  font-family: 'Oswald', sans-serif;
  font-size: 2rem;
  font-weight: 700;
  color: #fff;
  margin: 0 0 8px;
  letter-spacing: 0.03em;
}

.page-id-19451 .contact-star {
  color: #BBE1CD;
  margin-right: 4px;
}

.page-id-19451 .contact-location p {
  font-family: 'Open Sans', sans-serif;
  font-size: 15px;
  color: rgba(255,255,255,0.75);
  line-height: 1.6;
  margin: 0;
}

.page-id-19451 .contact-map-wrap {
  width: 100%;
  height: 360px;
  overflow: hidden;
}

.page-id-19451 .contact-map-wrap iframe {
  width: 100%; height: 100%;
  display: block;
}

/* Right column */
.page-id-19451 .contact-right {
  width: 45%;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  align-self: stretch;
}

.page-id-19451 .contact-form-heading {
  font-family: 'Oswald', sans-serif;
  font-size: 4.5vw;
  font-weight: 700;
  color: #17375E;
  margin: 0;
  line-height: 1;
  text-transform: uppercase;
  letter-spacing: 0.03em;
  padding: 10px 5% 0px 50px;
  background: #fff;
  width: 100%;
  box-sizing: border-box;
  min-height: 120px;
  display: flex;
  align-items: flex-end;
}

.page-id-19451 .contact-form-panel {
  background: #17375E;
  width: 100%;
  padding: 40px 40px 60px;
  box-sizing: border-box;
  flex: 1;
}

/* CF7 Form */
.page-id-19451 .contact-form-panel .wpcf7 { margin: 0; }

.page-id-19451 .contact-form-panel .wpcf7-form {
  display: flex;
  flex-direction: column;
  gap: 24px;
}

.page-id-19451 .contact-form-panel .wpcf7-form label,
.page-id-19451 .contact-form-panel .wpcf7-form .contact-field-label {
  display: block;
  font-family: 'Open Sans', sans-serif;
  font-size: 17px;
  color: #fff;
  margin-bottom: 8px;
}

.page-id-19451 .contact-form-panel .wpcf7-form input[type="text"],
.page-id-19451 .contact-form-panel .wpcf7-form input[type="email"],
.page-id-19451 .contact-form-panel .wpcf7-form input[type="tel"],
.page-id-19451 .contact-form-panel .wpcf7-form textarea {
  width: 100%;
  background: #fff;
  border: none;
  padding: 16px 18px;
  font-family: 'Open Sans', sans-serif;
  font-size: 16px;
  color: #08242E;
  box-sizing: border-box;
  outline: none;
  border-radius: 0;
  -webkit-appearance: none;
}

.page-id-19451 .contact-form-panel .wpcf7-form textarea {
  min-height: 180px;
  resize: vertical;
}

.page-id-19451 .contact-form-panel .wpcf7-form input[type="submit"] {
  background: #BBE1CD;
  color: #08242E;
  font-family: 'Oswald', sans-serif;
  font-weight: 700;
  font-size: 1.2rem;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  padding: 18px 70px;
  border: none;
  cursor: pointer;
  transition: background 0.3s;
  align-self: flex-start;
  border-radius: 0;
}

.page-id-19451 .contact-form-panel .wpcf7-form input[type="submit"]:hover {
  background: #a8d4bc;
}

.page-id-19451 .contact-form-panel .wpcf7-not-valid-tip {
  color: #BBE1CD;
  font-size: 13px;
  margin-top: 4px;
}

.page-id-19451 .contact-form-panel .wpcf7-response-output {
  color: #fff;
  font-family: 'Open Sans', sans-serif;
  font-size: 15px;
  border-color: #BBE1CD !important;
  margin-top: 10px;
}


/* ============================================
   RESPONSIVE — GLOBAL SHARED
   Breakpoints: 1024 | 900 | 768 | 600 | 480
   ============================================ */

/* --- Hero --- */
@media (max-width: 1024px) {
  .hero-content h1 { font-size: 6vw; }
  .hero-content p  { font-size: 1.6vw; }
  .cta-button      { font-size: 1.4vw; }
}

@media (max-width: 900px) {
  .hero-content h1 { font-size: 7vw; }
  .hero-content p  { font-size: 2vw; }
  .hero-bottom { bottom: 60px; padding: 0 30px; }
  .hero-social { right: 30px; }
  .cta-banner-inner { flex-direction: column; max-width: 90%; padding: 50px 20px; gap: 20px; }
  .cta-banner-inner .cta-slide-left h2 { font-size: 5vw; }
  .cta-banner-inner .cta-slide-right p  { font-size: 18px; }
  .cta-button { font-size: 2vw; max-width: 100%; }
}

@media (max-width: 768px) {
  .hero-content { max-width: 80%; }
  .hero-content h1 { font-size: 8vw; }
  .hero-content p  { font-size: 2.5vw; }
  .hero-cert-logos { gap: 12px; }
  .hero-cert-logos img { height: 36px; }
  .hero-scroll img { height: 70px; }
  .hero-bottom-spacer { width: 120px; }
}

@media (max-width: 600px) {
  .hero-content { max-width: 90%; margin-left: 3%; }
  .hero-content h1 { font-size: 10vw; }
  .hero-content p  { font-size: 3.5vw; }
  .hero-social { display: none; }
  .hero-cert-logos { gap: 8px; }
  .hero-cert-logos img { height: 28px; }
  .hero-scroll img { height: 55px; }
  .hero-bottom { bottom: 30px; padding: 0 20px; }
  .hero-bottom-spacer { display: none; }
  .cta-banner-inner .cta-slide-left h2 { font-size: 7vw; }
  .cta-button { font-size: 3.5vw; padding: 16px 30px; }
}

@media (max-width: 480px) {
  .hero-content h1 { font-size: 11vw; }
  .hero-bottom { flex-direction: column; align-items: center; gap: 12px; bottom: 20px; }
  .hero-cert-logos img { height: 22px; }
}

/* --- Split-section pattern (global, all pages) --- */
@media (max-width: 900px) {
  /* Stack top heading to full width */
  .split-top  { flex-wrap: wrap; padding: 40px 7% 0; }
  .split-bottom { flex-wrap: wrap; padding: 30px 7% 50px; }
  .split-col-55,
  .split-col-45 { width: 100%; }
  .split-heading h2 { font-size: 6vw; }
  /* Image container: pull out of absolute flow, go full-width in-flow, centered */
  .split-image-container {
    position: relative;
    top: auto; left: auto; right: auto;
    width: 90%;
    max-width: 560px;
    margin: 0 auto 40px;
  }
  /* Hide decorative bg rects — they use negative absolute offsets
     that bleed awkwardly at full width */
  .split-img-bg { display: none; }
  /* Ensure the photo fills its container cleanly */
  .split-main-img { width: 100%; max-width: 100%; display: block; }
  .split-section.has-bottom-margin,
  .split-section.has-bottom-margin-lg,
  .split-section.has-bottom-margin-sm { margin-bottom: 0; }
  .split-bullets { flex-direction: column; gap: 16px; }
  .cert-logos { flex-wrap: wrap; gap: 16px; }
  .split-cta-btn { font-size: 2rem; padding: 16px 40px; }
}

@media (max-width: 600px) {
  .split-heading h2 { font-size: 7.5vw; }
}

@media (max-width: 480px) {
  .split-heading h2 { font-size: 9vw; }
}


/* ============================================
   RESPONSIVE — HOME page-id-19234
   ============================================ */

@media (max-width: 1024px) {
  .page-id-19234 .industry-panels { gap: 20px; }
  .page-id-19234 .industry-panel h2 { font-size: 3vw; }
  .page-id-19234 .capability-card h3 { font-size: 2.5vw; }
  .page-id-19234 .strength-heading h2 { font-size: 4vw; }
}

@media (max-width: 900px) {
  .page-id-19234 .industry-panels { flex-direction: column; max-width: 100%; margin: 0; gap: 0; }
  .page-id-19234 .industry-panel { min-height: 40vw; }
  .page-id-19234 .industry-panel h2 { font-size: 5vw; }
  .page-id-19234 .industry-divider { display: none; }
  .page-id-19234 .industry-panels-wrapper { margin-top: 0; }
  .page-id-19234 .capabilities-cards-section { padding: 60px 7% 80px; }
  .page-id-19234 .capabilities-cards-inner { flex-direction: column; gap: 30px; }
  .page-id-19234 .capability-card { max-width: 100%; }
  .page-id-19234 .capability-card h3 { font-size: 4vw; }
  .page-id-19234 .forging-text { width: 100%; padding-left: 0; }
  .page-id-19234 .forging-small-images { width: 90%; margin-left: 5%; margin-top: 30px; gap: 20px; }
  .page-id-19234 .strength-text { padding-right: 0; }
  .page-id-19234 .partner-logos { flex-wrap: wrap; gap: 16px; }
}

@media (max-width: 768px) {
  .page-id-19234 .capability-card h3 { font-size: 5vw; }
  .page-id-19234 .forging-heading h2 { font-size: 6vw; }
}

@media (max-width: 600px) {
  .page-id-19234 .industry-panel { min-height: 55vw; }
  .page-id-19234 .industry-panel h2 { font-size: 7vw; }
  .page-id-19234 .capability-card h3 { font-size: 6vw; }
  .page-id-19234 .cta-slide { flex-direction: column; padding: 40px 7%; gap: 20px; }
  .page-id-19234 .cta-slide-left h2 { font-size: 6vw; }
  .page-id-19234 .cta-slide-right p { font-size: 16px; }
}


/* ============================================
   RESPONSIVE — ABOUT page-id-19298
   ============================================ */

@media (max-width: 900px) {
  .page-id-19298 .problem-cards-inner { flex-direction: column; gap: 20px; }
  .page-id-19298 .problem-card { min-height: auto; }
  .page-id-19298 .problem-card h3 { font-size: 4vw; }
  .page-id-19298 .trusted-text { padding-right: 0; }
  .page-id-19298 .trusted-section { padding-bottom: 0; }
  .page-id-19298 .apart-section { margin-bottom: 0; }
  /* Stacked image containers */
  .page-id-19298 .trusted-image-container,
  .page-id-19298 .apart-image-container {
    position: relative; top: auto; left: auto; right: auto;
    width: 90%; max-width: 560px; margin: 0 auto 40px;
  }
  .page-id-19298 .trusted-image-container > div,
  .page-id-19298 .apart-image-container > div { display: none; }
}

@media (max-width: 768px) {
  .page-id-19298 .problem-card h3 { font-size: 5vw; }
  .page-id-19298 .trusted-cta-button { font-size: 2vw; }
}

@media (max-width: 600px) {
  .page-id-19298 .problem-card h3 { font-size: 6vw; }
  .page-id-19298 .trusted-cta-button { font-size: 3.5vw; max-width: 100%; }
}


/* ============================================
   RESPONSIVE — METAL SALES page-id-19309
   ============================================ */

@media (max-width: 1024px) {
  .page-id-19309 .ms-products-grid { grid-template-columns: repeat(3, 1fr); }
  .page-id-19309 .ms-materials-grid { grid-template-columns: repeat(2, 1fr); gap: 30px 50px; }
}

@media (max-width: 900px) {
  .page-id-19309 .ms-products-grid { grid-template-columns: repeat(2, 1fr); }
  .page-id-19309 .ms-products-top { padding: 0 7%; flex-wrap: wrap; }
  .page-id-19309 .ms-products-heading { width: 100%; padding: 30px 0 20px; }
  .page-id-19309 .ms-products-heading h2 { font-size: 6vw; }
  .page-id-19309 .ms-products-top-right { display: none; }
  .page-id-19309 .ms-products-teal-rect { display: none; }
  .page-id-19309 .ms-materials-grid { grid-template-columns: 1fr; margin-top: 0; padding-top: 30px; }
  .page-id-19309 .ms-materials-navy-left,
  .page-id-19309 .ms-materials-navy-right { display: none; }
  .page-id-19309 .ms-materials-heading { padding: 20px 7% 0; }
  .page-id-19309 .ms-materials-heading h2 { font-size: 6vw; }
  .page-id-19309 .ms-services-text { width: 100%; padding-right: 0; }
  .page-id-19309 .ms-agline-text { width: 100%; padding-left: 0; }
  .page-id-19309 .ms-services-section,
  .page-id-19309 .ms-agline-section { margin-bottom: 0; }
  /* Stacked image containers */
  .page-id-19309 .ms-services-image-container,
  .page-id-19309 .ms-agline-image-container {
    position: relative; top: auto; left: auto; right: auto;
    width: 90%; max-width: 560px; margin: 0 auto 40px;
  }
  .page-id-19309 .ms-services-image-container > div,
  .page-id-19309 .ms-agline-image-container > div { display: none; }
}

@media (max-width: 768px) {
  .page-id-19309 .ms-products-heading h2 { font-size: 7vw; }
  .page-id-19309 .ms-metals-guide-btn { font-size: 2.2rem; padding: 16px 40px; }
}

@media (max-width: 600px) {
  .page-id-19309 .ms-products-grid { grid-template-columns: 1fr; }
  .page-id-19309 .ms-services-bullets { flex-direction: column; gap: 16px; }
  .page-id-19309 .ms-testimonial-section { flex-direction: column; padding: 40px 7%; }
  .page-id-19309 .ms-testimonial-slide blockquote { font-size: 2rem; }
}

@media (max-width: 480px) {
  .page-id-19309 .ms-products-heading h2 { font-size: 9vw; }
}


/* ============================================
   RESPONSIVE — CAPABILITIES page-id-19373
   ============================================ */

@media (max-width: 1024px) {
  .page-id-19373 .cap-industry-img-wrap h2 { font-size: 3vw; }
  .page-id-19373 .cap-equip-img-wrap h3 { font-size: 2vw; }
}

@media (max-width: 900px) {
  .page-id-19373 .cap-fullservice-text { width: 100%; padding-right: 0; }
  .page-id-19373 .cap-fullservice-section { margin-bottom: 0; }
  .page-id-19373 .cap-industry-section { flex-direction: column; padding: 40px 7%; gap: 30px; }
  .page-id-19373 .cap-industry-img-wrap h2 { font-size: 5vw; }
  .page-id-19373 .cap-machines-text { width: 100%; padding-left: 0; }
  .page-id-19373 .cap-machines-section { margin-bottom: 0; }
  .page-id-19373 .cap-machines-btn { font-size: 3vw; }
  .page-id-19373 .cap-equipment-section { flex-direction: column; padding: 40px 7%; }
  .page-id-19373 .cap-equip-img-wrap h3 { font-size: 4vw; }
  /* Stacked image containers */
  .page-id-19373 .cap-fullservice-image-container,
  .page-id-19373 .cap-machines-image-container {
    position: relative; top: auto; left: auto; right: auto;
    width: 90%; max-width: 560px; margin: 0 auto 40px;
  }
  .page-id-19373 .cap-fullservice-image-container > div,
  .page-id-19373 .cap-machines-image-container > div { display: none; }
}

@media (max-width: 768px) {
  .page-id-19373 .cap-industry-img-wrap h2 { font-size: 6vw; }
  .page-id-19373 .hover-card-img-wrap h3,
  .page-id-19373 .cap-equip-img-wrap h3 { font-size: 5vw; }
}

@media (max-width: 600px) {
  .page-id-19373 .cap-fullservice-bullets { flex-direction: column; gap: 16px; }
  .page-id-19373 .cap-fullservice-heading h2 { font-size: 7vw; }
  .page-id-19373 .cap-industry-img-wrap h2 { font-size: 7vw; }
  .page-id-19373 .cap-machines-btn { font-size: 4.5vw; }
}


/* ============================================
   RESPONSIVE — CAREERS page-id-19384
   ============================================ */

@media (max-width: 900px) {
  .page-id-19384 .car-whyjoin-text { width: 100%; padding-right: 0; }
  .page-id-19384 .car-whyjoin-section { margin-bottom: 0; }
  .page-id-19384 .car-tracks-section { flex-direction: column; padding: 40px 7%; }
  .page-id-19384 .car-benefits-section { flex-direction: column; padding: 40px 7%; }
  .page-id-19384 .car-benefit-top h3 { font-size: 5vw; }
  .page-id-19384 .car-haasway-text { width: 100%; padding-left: 0; }
  .page-id-19384 .car-haasway-section { margin-bottom: 0; }
  /* Stacked image containers */
  .page-id-19384 .car-whyjoin-image-container,
  .page-id-19384 .car-haasway-image-container {
    position: relative; top: auto; left: auto; right: auto;
    width: 90%; max-width: 560px; margin: 0 auto 40px;
  }
  .page-id-19384 .car-whyjoin-image-container > div,
  .page-id-19384 .car-haasway-image-container > div { display: none; }
}

@media (max-width: 768px) {
  .page-id-19384 .hover-card-img-wrap h3 { font-size: 4vw; }
  .page-id-19384 .car-benefit-top h3 { font-size: 6vw; }
}

@media (max-width: 600px) {
  .page-id-19384 .car-benefit-top h3 { font-size: 7vw; }
  .page-id-19384 .car-benefit-icon { max-width: 140px; max-height: 140px; }
}

@media (max-width: 480px) {
  .page-id-19384 .hover-card-img-wrap h3 { font-size: 6vw; }
}


/* ============================================
   RESPONSIVE — INDUSTRIAL & DOMESTIC page-id-19398
   ============================================ */

@media (max-width: 900px) {
  .page-id-19398 .ind-productivity-text { width: 100%; padding-right: 0; }
  .page-id-19398 .ind-productivity-section,
  .page-id-19398 .ind-trust-section { margin-bottom: 0; }
  .page-id-19398 .ind-trust-text { width: 100%; padding-left: 0; }
  .page-id-19398 .ind-logo-bar-track { gap: 40px; }
  .page-id-19398 .ind-industry-bar { padding: 40px 5%; }
  /* Stacked image containers */
  .page-id-19398 .ind-productivity-image-container,
  .page-id-19398 .ind-trust-image-container {
    position: relative; top: auto; left: auto; right: auto;
    width: 90%; max-width: 560px; margin: 0 auto 40px;
  }
  .page-id-19398 .ind-productivity-image-container > div,
  .page-id-19398 .ind-trust-image-container > div { display: none; }
}

@media (max-width: 600px) {
  .page-id-19398 .ind-productivity-bullets { flex-direction: column; gap: 16px; }
  .page-id-19398 .ind-productivity-heading h2 { font-size: 7vw; }
  .page-id-19398 .ind-logo-bar-track { gap: 24px; }
  .page-id-19398 .ind-logo-bar-track img { height: 28px; }
}

@media (max-width: 480px) {
  .page-id-19398 .ind-industry-bar p { font-size: clamp(0.7rem, 2.5vw, 1rem); }
}


/* ============================================
   RESPONSIVE — AEROSPACE & DEFENSE page-id-19423
   ============================================ */

@media (max-width: 900px) {
  .page-id-19423 .aero-mission-text { width: 100%; padding-right: 0; }
  .page-id-19423 .aero-mission-section { margin-bottom: 0; }
  .page-id-19423 .aero-trust-text { width: 100%; padding-left: 0; }
  .page-id-19423 .aero-trust-section { margin-bottom: 0; }
  .page-id-19423 .ind-logo-bar-track { gap: 40px; }
  /* Stacked image containers */
  .page-id-19423 .aero-mission-image-container,
  .page-id-19423 .aero-trust-image-container {
    position: relative; top: auto; left: auto; right: auto;
    width: 90%; max-width: 560px; margin: 0 auto 40px;
  }
  .page-id-19423 .aero-mission-image-container > div,
  .page-id-19423 .aero-trust-image-container > div { display: none; }
}

@media (max-width: 600px) {
  .page-id-19423 .aero-mission-bullets { flex-direction: column; gap: 16px; }
  .page-id-19423 .aero-mission-heading h2 { font-size: 7vw; }
  .page-id-19423 .aero-trust-cert-logos,
  .page-id-19398 .ind-trust-cert-logos,
  .page-id-19298 .apart-cert-logos { flex-wrap: wrap; gap: 12px; }
  .page-id-19423 .ind-logo-bar-track { gap: 24px; }
  .page-id-19423 .ind-logo-bar-track img { height: 28px; }
}

@media (max-width: 480px) {
  .page-id-19423 .aero-trust-cert-logos img,
  .page-id-19398 .ind-trust-cert-logos img,
  .page-id-19298 .apart-cert-logos img { height: 40px; }
}


/* ============================================
   RESPONSIVE — CONTACT page-id-19451
   ============================================ */

@media (max-width: 1024px) {
  .page-id-19451 .contact-form-heading { font-size: 3.5vw; }
}

@media (max-width: 900px) {
  .page-id-19451 .contact-section { flex-direction: column-reverse; background: #08242E; margin-top: 40px; }
  .page-id-19451 .contact-left { width: 100%; padding: 40px 7%; margin-top: 0; }
  .page-id-19451 .contact-right { width: 100%; align-self: auto; }
  .page-id-19451 .contact-form-heading { font-size: clamp(2rem, 6vw, 3rem); padding: 30px 7%; min-height: auto; align-items: flex-start; }
  .page-id-19451 .contact-form-panel { padding: 30px 7% 50px; }
  .page-id-19451 .contact-locations { gap: 24px 20px; }
  .page-id-19451 .contact-location { flex: 0 0 calc(50% - 10px); }
}

@media (max-width: 600px) {
  .page-id-19451 .contact-location { flex: 0 0 100%; }
  .page-id-19451 .contact-map-wrap { height: 260px; }
  .page-id-19451 .contact-call-btn { padding: 18px 30px; }
}

@media (max-width: 480px) {
  .page-id-19451 .contact-location h4 { font-size: 1.6rem; }
}