/*
Theme Name: Heartland 2026
Theme URI: http://heartlandindustries.org/
Description: Heartland Industries theme updated for 2026
Version: 2.0
Author: Daniel Jones
Author URI: http://notjustanotherjones.com

*/

body {padding: 0; overflow-x: hidden !important; margin: 0 auto; /*background-color: #6eabcd;*/ font-size: 16px; font-weight: normal; font-style: normal;}
html {overflow-x: hidden !important;}
/* 16 * 0.0625 = 1px */

.clearfix:after { content: "."; display: block; width: 100%; height: 1px; clear: both; visibility: hidden; }
.clearer { display: block; width: 100%; height: 0; float: none !important; clear: both !important; }
.padder {padding: 12px 0px;}
.wrap {width: 90%; max-width: 1240px; padding: 0px; margin: 0 auto;}
.wrap2 {width: 95%; max-width: 1240px; padding: 0px; margin: 0 auto;}

.quarters {width: 25%;}
.thirds {width: 33.33%;}
.halfs {width: 50%;}
.thothirds {width: 66.66%;}
.threequarters {width: 75%;}

.left {float: left;}
.right {float: right;}

.desktop {display: block;}
.phone {display: none;}
/* font-family: 'Open Sans', sans-serif;  400, 600, 700 */

p, li, span, a {font-family: 'Open Sans', sans-serif;}
h1, h2, h3, h4, h5 {font-family: 'Open Sans', sans-serif;}

h1 {font-size: 2.5em; font-weight: 600; color: #3156a4; padding: 10px 0px 10px 0px; margin: 0 auto;}
h2 {font-size: 2em; font-weight: 600; color: #3156a4; padding: 10px 0px 10px 0px; margin: 0 auto;}
h3 {font-size: 1.5em; font-weight: 600; color: #3156a4; padding: 10px 0px 10px 0px; margin: 0 auto;}
h4 {font-size: 1.2em; font-weight: 600; color: #999; padding: 10px 0px 10px 0px; margin: 0 auto;}
h5 {font-size: 1.2em; font-weight: 600; color: #999; padding: 10px 0px 10px 0px; margin: 0 auto;}

p {font-size: 1.1em; color: #231f20; padding: 0px 0px 10px 0px; margin: 0 auto;}

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

#wrapper {position: relative; padding: 0px; margin: 0px;}

#header {position: relative; background-color: #fff; width: 100%; height: auto; min-height: 190px; padding: 0px; margin: 0 auto;}
.header {position: relative; width: 90%; max-width: 1240px; height: auto; min-height: 190px; padding: 0px; margin: 0 auto;}

.logo {position: relative; padding: 0px; margin: 0px;}
.logo img {position: absolute; height: auto; width: 100%; max-width: 300px; padding: 0px; margin: 0px; z-index: 1;}

ul.nav {width: 100%; position: relative; text-align: center; padding: 140px 0px 5px 0px; margin: 0 auto;}
ul.nav li {list-style: none; position: relative;  display: inline-block; padding: 0px 10px; margin: 0 auto;}
ul.nav > li {position: static;}
ul.nav li a {display: block; font-weight: 600; font-size: 1.1em; color: #231f20; text-decoration: none; padding: 0px 0px 10px 0px; margin: 0px 0px 0px 0px;}
ul.nav li a:hover { margin: 0px 0px 10px 0px;}
ul.nav li ul {display:none;
position:absolute;
justify-content: center;
align-items: center;
text-align: center;
top: 100%;
width: 100%;
min-height: 40px;
height: auto;
left: 0;
transform: none;
background-color: #6eabcd;
padding: 0;
margin: 0; z-index: 10000;
white-space: nowrap;}

ul.nav li ul li {display: inline-block; height: 50px; position: relative; padding: 0px 0px 0px 0px; margin: 0 auto; }
ul.nav li ul li:hover {background-color: transparent; }

ul.nav li ul li a {position: relative; display: block; color: #231f20; font-size: .9em; padding: 10px 8px 10px 8px; margin: 0 auto; }
ul.nav li ul li a:hover {color: #231f20;}

ul.nav li ul ul {position: relative; display: flex; justify-content: center; align-items: center; text-align: center;
top: initial;
width: 100%;
height: auto;
left: initial;
    transform: initial;
background-color: #6eabcd;
padding: initial;
margin: 0; z-index: 10000;}
ul.nav li ul ul li {display: block;  white-space: nowrap;  height: 50px; position: relative; padding: 0px 0px 0px 0px; margin: 0 auto; }
ul.nav li ul ul li:hover {background-color: transparent; }
ul.nav li ul ul li a {position: relative; display: block; color: #231f20; font-size: .9em; padding: 10px 8px 10px 8px; margin: 0 auto; }
ul.nav li ul ul li a:hover {color: #231f20;}

ul.nav li:hover > ul
{
	display:flex
}

ul.nav li:hover > ul ul li a
{
	background-color: #fff;
  margin: 0px 1px;
  padding-left: 14px;
  padding-right: 14px;
}




/* The Overlay (background) */
.navigationoverlay {
  /* Height & width depends on how you want to reveal the overlay (see JS below) */
  height: 100%;
  width: 0;
  position: fixed; /* Stay in place */
  z-index: 99999999; /* Sit on top */
  left: 0;
  top: 0;
  background-color: rgb(57,87,159); /* Black fallback color */
  background-color: rgba(57,87,159, 0.96); /* Black w/opacity */
  overflow-x: hidden; /* Disable horizontal scroll */
  transition: 0.5s; /* 0.5 second transition effect to slide in or slide down the overlay (height or width, depending on reveal) */
}

/* Position the content inside the overlay */
.overlay-content {
  position: relative;
  top: 8%; /* 25% from the top */

  width: 100%; /* 100% width */
  text-align: center; /* Centered text/links */
  margin-top: 30px; /* 30px top margin to avoid conflict with the close button on smaller screens */
  padding-bottom: 60px; /* 30px top margin to avoid conflict with the close button on smaller screens */

}

/* The navigation links inside the overlay */
.overlay-content ul.overlayed {display: block; padding: 0px !important;; margin: 0px 0px 20px 0px !important;}
.overlay-content ul.overlayed li {display: block; color: #fff; width: 100%; padding: 0px !important;; margin: 0px 0px 0px 0px !important;}
.overlay-content ul.overlayed li.oheader a {font-size: 1.2em !important; color: #fff; padding: 0px 0px 0px 0px !important;; margin: 0px 0px 5px 0px !important;}
.overlay-content ul.overlayed li a {font-size: 1em !important; padding: 5px 0px !important; margin: 0px 0px 0px 0px !important;}


.navigationoverlay a {
  padding: 0px;
  text-decoration: none;
  font-size: 1.2em;
  color: #fff;
  display: block !important; /* Display block instead of inline */
	font-family: 'Open Sans', sans-serif; font-weight: 300;
  transition: 0.3s; /* Transition effects on hover (color) */
}


/* When you mouse over the navigation links, change their color */
.navigationoverlay a:hover, .navigationoverlay a:focus {
  	color: #444;
	background-color: #fff;
}

/* Position the close button (top right corner) */
.navigationoverlay .closebtn {
  position: absolute;
  top: 20px;
  right: 36px;
  font-size: 60px;
}

.navigationoverlay .closebtn:hover {
	background-color: transparent;
}


.now-hiring-wrap {position: absolute; right: 0px; top: 0px; z-index:2;}
.now-hiring {position: relative; text-align: center;}
.now-hiring a {display: block; background-color: #3156a4; padding: 20px 30px; margin: 0px;
  -webkit-border-bottom-right-radius: 8px;
  -webkit-border-bottom-left-radius: 8px;
  -moz-border-radius-bottomright: 8px;
  -moz-border-radius-bottomleft: 8px;
  border-bottom-right-radius: 8px;
  border-bottom-left-radius: 8px;
text-transform: uppercase; color: #fff; text-decoration: none;}
.now-hiring a span {display: block; font-size: 80%; color: #fff; text-decoration: underline;}

.now-hiring a:hover {background-color: #193d7c;}

.mobile-now-hiring-wrap {display: none;}

/* linear-gradient(180deg, rgba(49,86,164,1) 0%, rgba(9,171,205,1) 100%); */

#landing {
	position: relative; 
	height: 720px; 
	width: 100%; 
	background: linear-gradient(180deg, rgba(49,86,164,1) 0%, rgba(8,121,208,1) 100%);
	padding: 0px; 
	margin: 0 0 80px 0;
  }
  
#landing .header-img {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: auto;
	opacity: 1; 
	z-index: 1; 
    pointer-events: none;
}
  
  

/* #landing {position: relative; height: 720px; width: 100%; background: url(//heartlandindustries.org/wp-content/uploads/2024/07/heartland-industries-inc-building-exterior.png) no-repeat center center; background-size: cover; padding: 0px; margin: 0px;} */
#landing2 {position: relative; height: 286px; width: 100%; background: url(//heartlandindustries.org/wp-content/themes/WP-Heartland-2026/assets/images/gifts-header.jpg) no-repeat center center; background-size: cover; padding: 0px; margin: 0 0 80px 0;}
#landing3 {position: relative; height: 286px; width: 100%; background: url(//heartlandindustries.org/wp-content/themes/WP-Heartland-2026/assets/images/facility-header.jpg) no-repeat center center; background-size: cover; padding: 0px; margin: 0 0 80px 0;}
#landing4 {position: relative; height: 286px; width: 100%; background: url(//heartlandindustries.org/wp-content/themes/WP-Heartland-2026/assets/images/capabilities-header.jpg) no-repeat center center; background-size: cover; padding: 0px; margin: 0 0 80px 0;}
#landing5 {position: relative; height: 286px; width: 100%; background: url(//heartlandindustries.org/wp-content/themes/WP-Heartland-2026/assets/images/contact-header.jpg) no-repeat center center; background-size: cover; padding: 0px; margin: 0 0 80px 0;}
#landing6 {position: relative; height: 286px; width: 100%; background: url(//heartlandindustries.org/wp-content/themes/WP-Heartland-2026/assets/images/about-header.jpg) no-repeat center center; background-size: cover; padding: 0px; margin: 0 0 80px 0;}
#landing7 {position: relative; height: 286px; width: 100%; background: url(//heartlandindustries.org/wp-content/themes/WP-Heartland-2026/assets/images/mad-header.jpg) no-repeat center center; background-size: cover; padding: 0px; margin: 0 0 80px 0;}




.landing {width: 90%; max-width: 960px; padding: 80px 0px 0px 0px; margin: 0 auto;}
/*
.landing span.landingtitle {display: block; position: relative; font-size: 2.2em; color: #fff; padding: 10px 0px 10px 0px; margin: 0 auto; text-shadow: 3px 3px 5px #205c96;}
.landing span.landingtext {display: block; position: relative; font-size: 1.1em; color: #fff; padding: 0px 0px 10px 0px; margin: 0 auto; text-shadow: 3px 3px 5px #205c96;}
*/
.landing h1 {display: block; position: relative; font-size: 2.2em; color: #fff; padding: 10px 0px 10px 0px; margin: 0 auto; text-shadow: 3px 3px 5px #205c96;}
.landing p {display: block; position: relative; font-size: 1.1em; color: #fff; padding: 0px 0px 10px 0px; margin: 0 auto; text-shadow: 3px 3px 5px #205c96;}


.downarrowwrap {position: absolute; left: 50%; bottom: -24px; z-index: 999;}
.downarrow {position: relative; left: -50%;}

#testimonials {position: relative; border-bottom: 6px solid #fff; background-color: #3156A4; width: 100%; padding: 0px; margin: 0 auto;}
.testimonialwrap {width: 90%; max-width: 1240px; display: -webkit-flex; display: flex; padding: 0px; margin: 0 auto;}
.testimonial {position: relative; width: 100%; padding: 0px; margin: 30px auto; border-right: 6px solid #fff;}
.testimonial h3 {display: block; position: relative; font-size: 1.34em; color: #fff; padding: 10px 0px 10px 0px; margin: 0 auto;}
.testimonial p {display: block; position: relative; font-size: 1.1em; color: #c5d8ff; padding: 0px 0px 10px 0px; margin: 0 auto;}
.testimonial:nth-child(even) {border-right: 0px solid #fff;}


#footer {position: relative; background-color: #3156A4; padding: 0px 0px 40px 0px; margin: 80px 0 0 0;}
.footer45 {float: left; width: 45%; padding: 35px 0px 0px 0px; margin: 0 auto;}
.footer45 p {color: #fff; font-size: 1em; padding: 0px; margin: 0 auto;}
.footer45 p span {color: #fff; font-size: 1.125em; padding: 0px; margin: 0 auto;}
.footer45 img {width: 90%; height: 90%; max-width: 412px; border: 6px solid #fff; padding: 0px; margin: 0px auto 15px auto;}

.footer55 {float: right; width: 55%; padding: 35px 0px 0px 0px; margin: 0 auto;}
.footer55 ul {width: 100%; text-align: left; padding: 0px 0px 15px 0px; margin: 0 auto;}
.footer55 li {list-style: none; display: block; padding: 0px 0px 4px 0px; margin: 0 auto;}
.footer55 li.heading a {display: block; font-weight: 600; font-size: 1.1em; font-weight: 600; color: #fff; text-decoration: none; padding: 0px;}
.footer55 li a {display: block; font-size: 1em; color: #c5d8ff; text-decoration: none; padding: 0px;}


#main {position: relative; background-color: #fff; min-height: 400px; padding: 0px 0px; margin: 0 auto;}
.feature {	display: -webkit-flex; display: flex; align-items: center;
 justify-content: center; padding: 0px; margin: 40px auto;}
.photobox {width: 100%; height: 100%; padding: 0px; margin: 0 auto;}
.photobox img {width: 100%; height: auto; padding: 0px; margin: 0 auto; border-radius:10px;}

/* ------------
Possibly get rid of all feature-content and replace with simple header and P tags 
-------------*/


.feature-content {width: 100%; height: 100%; padding: 0px; margin: 0 auto;}
/*
.feature-content h2 {display: block; position: relative; font-size: 2.3em; font-weight: 600; color: #3156a4; padding: 10px 0px 10px 0px; margin: 0 auto;}
.feature-content h1 {display: block; position: relative; font-size: 2.3em; font-weight: 600; color: #3156a4; padding: 10px 0px 10px 0px; margin: 0 auto;}


.feature-content p {display: block; position: relative; font-size: 1.1em; color: #231f20; padding: 0px 0px 10px 0px; margin: 0 auto;}
.feature-content span.feature-text a {color: #2974b6; text-decoration: none;}
.feature-content span.feature-text a:hover {color: #3156a4;}
.feature-content p {display: block; position: relative; font-size: 1.1em; color: #231f20; padding: 0px 0px 10px 0px; margin: 0 auto;}
.feature-content .feature-text a {color: #2974b6; text-decoration: none;}
.feature-content .feature-text a:hover {color: #3156a4;}

.feature-content p {display: block; position: relative; font-size: 1.1em; color: #231f20; padding: 0px 0px 10px 0px; margin: 0 auto;}
.feature-content p a {color: #2974b6; text-decoration: none;}
.feature-content p a:hover {color: #3156a4;} */

.flexforty {flex-basis: 40%;}
.flexsixty {flex-basis: 60%;}

.careers {width: 100%; border-bottom: 2px solid #3156a4; margin: 20px auto 30px auto; padding: 0px;}
.job-wrap {display: flex; justify-content: space-between; align-items: center; margin: 0px auto; padding: 0px;}
.job-item:nth-child(1) {flex-basis: 70%; padding: 5px 10px;}
.job-item:nth-child(2)  {flex-basis: 30%; padding: 5px 10px; text-align: center;}
.job-item a { position: relative; font-size: 1.1em; font-weight: 600; color: #3156A4; padding: 0px 0px 10px 0px; margin: 0 auto; text-decoration: none;}
.job-wrap:nth-child(odd) {background-color: #f0f0f0;}
.job-wrap:nth-child(even) {}

.featurequarters {width: 100%; max-width: 1240px;

	 display: flex;
 	flex-wrap: wrap;
 	flex-direction: row;
	align-items: start;
	 justify-content: center;
	 padding: 20px 0px 0px 0px; margin: 0 auto;}

.flexquarter{position: relative; text-align: center; display: flex;
	 justify-content: center;
	 flex-direction: column;
	 flex-basis: 25%;

	padding: 0px 0px 40px 0px;
	}

.align-left {text-align: left;}
.alignment {text-align: left;}


	.flexthirds {
		 flex-basis: 33.33%;
		}
		.flexfourths {
			 flex-basis: 25%;
			}

.association-wrap {width: 100%; display: flex; flex-wrap: wrap;
 	flex-direction: row;  justify-content: center; align-items: center; text-align: center; }
.association-item {display: block; margin: 30px 10px; flex-basis: calc(20% - 20px);}
.association-item img {width: 100%; height: auto;}

span.section-title {display: block; position: relative; font-size: 2.3em; font-weight: 600; color: #3156a4; padding: 10px 0px 10px 0px; margin: 0 auto;}
span.section-title2 {display: block; position: relative; text-align: center; font-size: 1.8em; font-weight: 600; color: #444; padding: 10px 0px 10px 0px; margin: 0 auto;}
/* span.section-title3 {display: block; position: relative; text-align: center; font-size: 1.2em; font-weight: 600; color: #444; padding: 10px 0px 10px 0px; margin: 0 auto;} */
/* h3 {display: block; position: relative; text-align: center; font-size: 1.2em; font-weight: 600; color: #444; padding: 10px 0px 10px 0px; margin: 0 auto;} */

#boardofdirectors {width: 100%; border-top: 4px solid #3156a4; border-bottom: 4px solid #3156a4; padding: 30px 0px; margin: 30px auto;}
#associations {width: 100%; padding: 30px 0px; margin: 50px auto 0px auto;}
#facts {width: 100%; padding: 30px 0px; margin: 50px auto 0px auto;}
#mission-statement {width: 100%; padding: 30px 0px; margin: 20px auto;}
#heartland-distinction {width: 100%; padding: 30px 0px; margin: 20px auto;}

#gallery {position: relative; padding: 0px 0px 40px 0px; margin: 0 auto;}
span.gallerytitle {display: block; position: relative; font-size: 2.2em; color: #3156a4; font-weight: 600; padding: 10px 0px 10px 0px; margin: 0 auto;}
.gallery {	display: -webkit-flex; display: flex; align-items: center; justify-content: center; flex-wrap: wrap; padding: 0px; margin: 40px auto;}
.gallerybox {width: 100%; height: 100%; flex: 0 0 50%; text-align: center; padding: 0px; margin: 0 auto 40px auto;}
.gallerybox img {width: 90%; height: 90%; text-align: center; padding: 0px; margin: 0 auto; border-radius: 10px;}



.leadershipcontainer {
 position: relative;
 width: 100%;
}

.leadershipimage {
 display: block;
 width: 100%;
 height: auto;
}


/* span.titlepoverlay {
	position: absolute;
	display: block;
	top: 45%;
	left: 5%;
	right: 5%;
	width: 90% !important;
	color: #fff;
	font-size: 2.2em; font-family: 'Open Sans', sans-serif; padding: 0px; margin: 0 auto;
	text-shadow: 3px 3px 3px #444;
	overflow: hidden;
} */

.leadershipoverlay {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 5%;
	right: 5%;
	height: 100%;
	width: 90%;
	opacity: 0;
	transition: .5s ease;
	background-color: #3156A4;
	cursor: pointer;
	overflow: hidden;
}


.leadershipcontainer:hover .leadershipoverlay {
 opacity: 1;
}


.leadershipcontainer:hover, .leadershipcontainer.hover_effect {
 opacity: 1;
}

.hover {
	-webkit-user-select: none;
	-webkit-touch-callout: none;
}

.leadershipcontainer:focus .leadershipoverlay {
	opacity: 1;
	display: block;
}

.leadershipcontainer:active .leadershipoverlay {
 opacity: 1;
	display: block;
}

.leadershiptext {
	color: white !important;
	position: relative;
	text-align: left;
	width: 90%;
	padding: 0px;
	margin: 20px auto;
	/* top:5em; */
}

.leadershiptext p {
	color:#FFFFFF;
}

.lheader {font-size: 1.5em; font-family: 'Open Sans', sans-serif; padding: 0 0 10px 0; margin: 0 auto; color: #fff; text-align: center;}
.ltext {font-size: 1.1em; font-family: 'Open Sans', sans-serif; padding: 0px; margin: 0 auto; color: #fff; text-align: center;}

.genericbutton {padding: 20px 0px; margin: 0 auto 20px auto;}
.genericbutton a {border-radius: 12px; font-family: 'Open Sans', sans-serif; font-size: 1.1em; color: #fff; letter-spacing: .05em; background-color: #3156a4; padding: 14px 24px; margin: 0 auto; text-transform: uppercase; text-align: center; text-decoration: none;}
/*update*/
.genericbutton a:hover {background-color: #6eabcd; color: #000;}

.genericbutton2 {padding: 20px 0px; margin: 0 auto 0px auto;}
.genericbutton2 a {border-radius: 12px; font-family: 'Open Sans', sans-serif; font-size: .9em; color: #fff; letter-spacing: .05em; background-color: #3156a4; padding: 11px 20px; margin: 0 auto; text-transform: uppercase; text-align: center; text-decoration: none;}
/*update*/
.genericbutton2 a:hover {background-color: #6eabcd; color: #000;}

/* white Button */
.whiteBtn {
    position: relative;
    padding: 0; /* Remove padding to avoid conflicts */
    margin: 15px auto;
    text-align: center;
    flex: 1 1 calc(33.333% - 16px);
    box-sizing: border-box;
    min-height: 80px; /* Consistent minimum height */
    display: flex; /* Enable Flexbox for centering */
    align-items: center; /* Center child content vertically */
    justify-content: center; /* Center child content horizontally */
}

/* Adjust the <a> styles */
.whiteBtn a,
.whiteBtn a:active {
    display: flex; /* Allow Flexbox within <a> for alignment */
    align-items: center; /* Center text vertically inside <a> */
    justify-content: center; /* Center text horizontally inside <a> */
    border-radius: 12px;
    font-family: 'Open Sans', sans-serif;
    font-size: 1em;
    color: #000;
    letter-spacing: .05em;
    background-color: #FFF;
    text-transform: uppercase;
    text-align: center;
    text-decoration: none !important;
    z-index: 5000;
    max-width: 300px;
    padding: 15px 30px;
    box-sizing: border-box;
    width: 100%; /* Ensure <a> fills the width of the parent */
    height: 100%; /* Ensure <a> fills the height of the parent */
}

/* Hover effect */
.whiteBtn a:hover {
    color: #FFF;
    background-color: #3156a4;
}

/* Flex container for buttons */
.btn-wrapper {
    display: flex;
    flex-wrap: wrap;
    gap: 16px; /* Space between buttons on desktop */
    justify-content: space-between;
}

/* Mobile styles */
@media (max-width: 768px) {
    .btn-wrapper {
        gap: 8px; /* Reduce gap between buttons */
    }

    .whiteBtn {
        flex: 1 1 100%; /* Stack buttons */
        margin: 8px auto; /* Reduce margin for stacked buttons */
        min-height: auto; /* Remove fixed height for mobile */
    }
}






/************
Start of Contact Form 7
*************/

.form { width: 90%; max-width: 720px; padding: 50px 0px 50px 0px; margin: 0 auto;}
.form p {font-size: 12px; color: #ccc; font-weight: normal;text-transform: uppercase;padding: 12px 0 0 0; margin: 0 auto; line-height: 175%;}
.form a {font-size: 16px; color: #535353; font-weight: bold; padding: 0px; margin: 0 auto; text-decoration: none;}
.form a:hover {font-size: 16px; color: #424242; font-weight: bold; padding: 0px; margin: 0 auto; text-decoration: underline;}

.button { width: 90%; padding-bottom: 10px; margin: 0 auto; font-size: 14px; color: #737373; font-weight: bold;}

input:focus,
select:focus,
textarea:focus,
button:focus {
  outline: none;
}

.wpcf7-form input, .wpcf7-form textarea{
padding:10px 0px;
margin-top:10px;
margin-bottom:0px;
margin-right:auto;
text-indent: 15px;
margin-left:auto;
width: 100%;
font-size: 16px;
color: #444;
background-color: transparent;
border: 4px solid #6eabcd;
border-radius: 5px;
}

.wpcf7-list-item {position: relative; top: 10px; padding: 0px 0px 0px 5px; margin: 0;}

.wpcf7-select {
 width: 100%;
  height: 42px;
  overflow: hidden;
border-top: 0px;
border-left: 0px;
border-right: 0px;

border: 4px solid #6eabcd;	color: #615436;
	-webkit-appearance: none;
	  -moz-appearance: none;
	  text-indent: 5px;
	  text-overflow: '';
		padding:10px 0px;

		margin-top:10px;
		margin-bottom:0px;

		margin-right:auto;

		margin-left:auto;
}

select::-ms-expand {
  display: none;
}




.wpcf7-form input.wpcf7-submit {width: 90%; display: block; max-width: 420px; border: 0px; border-radius: 12px; cursor: pointer; font-family: 'Open Sans', sans-serif; font-size: 1.1em; color: #fff; letter-spacing: .05em; background-color: #3156a4; padding: 14px 24px; margin: 12px auto 0px auto; text-transform: uppercase; text-align: center; text-decoration: none;}
.wpcf7-form input.wpcf7-submit:hover {background-color: #6eabcd; color: #000;}

.wpcf7-form .wpcf7-validation-errors{
	font-family:Arial, Helvetica, sans-serif;
	font-size: 16px;
	color: #666666;
	padding: 10px 13px;
		border-radius: 4px;
	-moz-border-radius: 4px;
	-webkit-border-radius: 4px;
	border: 2px solid #d1d1d1;


}

.wpcf7-form .wpcf7-mail-sent-ok{
border:none;
background-color:#abf779;
margin:0;
padding:20px;
-moz-border-radius:10px;
-webkit-border-radius:10px;
}

.wpcf7-form .wpcf7-mail-sent-ng{
border:none;
background-color:#fcb3b8;
margin:0;
padding:20px;
-moz-border-radius:10px;
-webkit-border-radius:10px;
}

.wpcf7-form span.wpcf7-not-valid-tip{
border:none;
background-color:#fcb3b8;
padding:10px;
-moz-border-radius:5px;
-webkit-border-radius:5px;}

/************
WPForms Custom Styling to Match Contact Form 7
*************/

/* Form Container */
.wpforms-container {
    width: 90%;
	font-family: 'Open Sans', sans-serif;
    max-width: 720px;
    padding: 50px 0;
    margin: 0 auto;
}

/* Paragraph Text */
.wpforms-container p {
    font-size: 12px;
    color: #ccc;
    font-weight: normal;
    text-transform: uppercase;
    padding: 12px 0;
    margin: 0;
    line-height: 175%;
}

/* Links */
.wpforms-container a {
    font-size: 16px;
    color: #535353;
    font-weight: bold;
    text-decoration: none;
}

.wpforms-container a:hover {
    color: #424242;
    text-decoration: underline;
}

/* Input Fields */
.wpforms-field input[type="text"],
.wpforms-field input[type="email"],
.wpforms-field input[type="url"],
.wpforms-field input[type="tel"],
.wpforms-field input[type="number"],
.wpforms-field input[type="password"],
.wpforms-field textarea {
    width: 100%;
    padding: 10px 15px;
    margin: 10px 0;
    font-size: 16px;
    color: #000;  /* Black input text */
    background-color: transparent;
    border: 4px solid #6eabcd;  /* Blue border */
    border-radius: 5px;
    box-sizing: border-box;
}

/* Placeholder Text */
input::placeholder,
textarea::placeholder {
    color: #000 !important;  /* Black placeholder text */
    opacity: 1;
}

::placeholder,
::placeholder {
    color: #000 !important;  /* Black placeholder text */
    opacity: 1;
}

/* Test with higher specificity */

/* Change font for fieldset legends (main label like "Name:") */
.wpforms-field legend.wpforms-field-label {
    font-family: 'Verdana', sans-serif !important;
}

/* Change font for sublabels (e.g., "First" and "Last") */
.wpforms-field .wpforms-field-sublabel {
    font-family: 'Verdana', sans-serif !important;
}

/* Change font for placeholder text (e.g., "First Name" and "Last Name") */
.wpforms-field input::placeholder {
    font-family: 'Verdana', sans-serif !important;
}

/* Change font for submit button text */
.wpforms-submit-container button[type="submit"], 
.wpforms-submit-container input[type="submit"] {
    font-family: 'Verdana', sans-serif !important;
}




/* Select Dropdown */
.wpforms-field select {
    width: 100%;
    height: 42px;
    padding: 10px 15px;
    margin: 10px 0;
    font-size: 16px;
    color: #615436;
    background-color: transparent;
    border: 4px solid #6eabcd;  /* Blue border */
    border-radius: 5px;
    -webkit-appearance: none;
    -moz-appearance: none;
}

/* Remove Native Select Arrow */
select::-ms-expand {
    display: none;
}

/* Submit Button */
.wpforms-submit {
    width: 90%;
    max-width: 420px;
    display: block;
    margin: 12px auto 0;  /* Center the button */
    padding: 14px 24px;
    font-family: 'Open Sans', sans-serif !important;
    font-size: 1.1em;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    text-align: center;
    color: #fff;
    background-color: #3156a4;
    border: none;
    border-radius: 12px;
    cursor: pointer;
    transition: background-color 0.3s ease;
}
div.wpforms-container-full input[type=date], div.wpforms-container-full input[type=datetime], div.wpforms-container-full input[type=datetime-local], div.wpforms-container-full input[type=email], div.wpforms-container-full input[type=month], div.wpforms-container-full input[type=number], div.wpforms-container-full input[type=password], div.wpforms-container-full input[type=range], div.wpforms-container-full input[type=search], div.wpforms-container-full input[type=tel], div.wpforms-container-full input[type=text], div.wpforms-container-full input[type=time], div.wpforms-container-full input[type=url], div.wpforms-container-full input[type=week], div.wpforms-container-full select, div.wpforms-container-full textarea, .wp-core-ui div.wpforms-container-full input[type=date], .wp-core-ui div.wpforms-container-full input[type=datetime], .wp-core-ui div.wpforms-container-full input[type=datetime-local], .wp-core-ui div.wpforms-container-full input[type=email], .wp-core-ui div.wpforms-container-full input[type=month], .wp-core-ui div.wpforms-container-full input[type=number], .wp-core-ui div.wpforms-container-full input[type=password], .wp-core-ui div.wpforms-container-full input[type=range], .wp-core-ui div.wpforms-container-full input[type=search], .wp-core-ui div.wpforms-container-full input[type=tel], .wp-core-ui div.wpforms-container-full input[type=text], .wp-core-ui div.wpforms-container-full input[type=time], .wp-core-ui div.wpforms-container-full input[type=url], .wp-core-ui div.wpforms-container-full input[type=week], .wp-core-ui div.wpforms-container-full select, .wp-core-ui div.wpforms-container-full textarea {border: 3px solid #3156a4 !important; border-radius: 4px;}

.wpforms-submit:hover {
    background-color: #6eabcd;
    color: #000;
}

/* Error Messages */
.wpforms-error-container {
    font-family: Arial, Helvetica, sans-serif;
    font-size: 16px;
    color: #666;
    padding: 10px 13px;
    border-radius: 4px;
    border: 2px solid #d1d1d1;
}

/* Confirmation Message */
.wpforms-confirmation-container {
    background-color: #abf779;
    padding: 20px;
    border-radius: 10px;
}

/* Input Focus Styles */
input:focus,
select:focus,
textarea:focus {
    outline: none;
    border-color: #3156a4;
}

/* Checkbox and Radio Buttons */
.wpforms-field.wpforms-field-radio .wpforms-field-label,
.wpforms-field.wpforms-field-checkbox .wpforms-field-label {
    padding-left: 5px;
    margin: 0;
}

@media (min-width: 1500px) {
	#landing {height: 900px;}
}

@media (max-width: 1280px) {
	#landing {height: 800px;}
}


@media (max-width: 960px) {

	.flexquarter {flex-basis: calc(50%);}
	.gallery {display: block;}

	/* .feature-content h2 { font-size: 1.6em; }
	.feature-content h3 { font-size: 1.2em; }
 	.feature-content h1 { font-size: 1.6em; }
	.feature-content span.feature-text { font-size: .8em;} */

	span.section-title {font-size: 75%; }
	span.section-title2 {font-size: 75%; }
	.association-item {display: block; margin: 30px 10px; flex-basis: calc(50% - 20px);}


	span.titlepoverlay {font-size: 1.6em;}

	.testimonial h3 {font-size: 1.05em; }
	.testimonial p {font-size: .9em;}

	.genericbutton a {font-size: .9em; padding: 10px 18px; }
  	.genericbutton2 a {font-size: .9em; padding: 10px 18px; }

	/* #landing {position: relative; height: 620px; width: 100%; background: url(//heartlandindustries.org/wp-content/themes/WP-Heartland-2026/assets/images/HeartLand_Homepage.jpg) no-repeat center center; background-size: cover; padding: 0px; margin: 0px;} */

}

@media (max-width: 800px) {
	.lheader {font-size: 1.6em; }
	.ltext {font-size: 1em; }

	body {background-size: 100%;}

	#landing {height: 600px;}

	/* #landing {position: relative; height: 520px; width: 100%; background: url(//heartlandindustries.org/wp-content/themes/WP-Heartland-2026/assets/images/HeartLand_Homepage.jpg) no-repeat center center; background-size: cover; padding: 0px; margin: 0px;} */

}

@media (max-width: 768px) {
	.desktop {display: none;}
	.phone {display: block;}

	.footer45 {width: 100%; text-align: center;}
	.footer55 {width: 100%; text-align: center;}
	.footer55 ul { text-align: center;}
	.footer55 li { width: 90%;}

	.flexquarter {flex-basis: calc(100%);}

	.feature {display: block;}

	/* #landing {position: relative; height: 420px; width: 100%; background: url(//heartlandindustries.org/wp-content/themes/WP-Heartland-2026/assets/images/HeartLand_Homepage.jpg) no-repeat center center; background-size: cover; padding: 0px; margin: 0px;} */

	#landing {height: 800px;}

	.wpcf7-form input.wpcf7-submit {font-size: .9em; color: #fff; padding: 10px 20px; }

	span.titlepoverlay {font-size: 1.3em;}
	.testimonialwrap {display: block;}
	.testimonial {border: 0px;}
	.flexfourths {
		 flex-basis: 50%;
		}
    .job-wrap {display: block;}
    .job-item:nth-child(1) {text-align: center;}

	.logo img { width: 100%; max-width: 250px; }
}



@media (max-width: 480px) {
	.association-wrap {display: block;}

	.mobile-now-hiring-wrap {display: block; position: relative; width: 100%;}
	.mobile-now-hiring {position: relative; text-align: center;}
	.mobile-now-hiring a {display: block; background-color: #3156a4; font-size: 90%; padding: 12px 20px; margin: 0px; text-transform: uppercase; color: #fff; text-decoration: none;}
	.mobile-now-hiring a span {display: block; font-size: 80%; color: #fff; text-decoration: underline;}
	.mobile-now-hiring a:hover {background-color: #193d7c;}

    .now-hiring-wrap {display:none;}

	.association-item {display: block; margin: 30px 10px; flex-basis: calc(50% - 20px);}

	/* .header {background: url(//heartlandindustries.org/wp-content/themes/WP-Heartland-2026/assets/images/Heartland-Logo.jpg) no-repeat top left; background-size: 100%;}	 */

    .logo img { width:100%; max-width:100% }

	.lheader {font-size: 1.3em; }
	.ltext {font-size: .9em; }

	.halfs {width: 100%;}
	.flexfourths {flex-basis: 100%;}

    #landing {height: 800px;}
}


@media (max-width: 321px) {
	.wpcf7-form input.wpcf7-submit {font-size: .8em; color: #fff; padding: 8px 0px; }
	.genericbutton a {font-size: .8em; padding: 10px 12px; }
  	.genericbutton2 a {font-size: .8em; padding: 10px 12px; }

	/* .feature-content h2 { font-size: 1.2em; }
	.feature-content h3 { font-size: 1em; }
  	.feature-content h1 { font-size: 1.2em; }

	.feature-content span.feature-text { font-size: .8em;} */

	span.section-title {font-size: 75%; }
	span.section-title2 {font-size: 75%; }


	span.titlepoverlay {font-size: 1em;}

	.testimonial h3 {font-size: .95em; }
	.testimonial p {font-size: .8em;}
	.lheader {font-size: 1em; }
	.ltext {font-size: .8em; }

    #landing {height: 700px;}
}

/* NEW Box Treatment for ADA */

.gallerybox {
    position: relative;
    max-width: 600px;
    margin: 4px;
}

.leadershipcontainer.extended {
    position: relative;
    width: 100%;
    height: auto;
    overflow: hidden;
}

.leadershipcontainer.extended img {
    display: block;
    width: 100%;
    height: auto;
}

.title-background {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 80px; 
    background-color: #3156A4; 
    display: flex;
    justify-content: center; 
    align-items: center; 
	color: #ffffff !important;
	/* border-radius: 0 0 10px 10px; */

}

.titlepoverlay {
    font-size: 22px;
    color: white;
    text-align: center;
    padding: 5px 10px; 
    z-index: 1; 
    opacity: 1; 
    transition: opacity 0.1s ease; 
}

.text-container.extended {
    position: absolute;
    bottom: -80px; 
    left: 0;
    width: 100%;
    height: auto;
    background-color: #3156A4;
    padding: 10px;
    box-sizing: border-box;
    transform: translateY(100%);
    transition: transform 0.5s ease;
}

.leadershipcontainer.extended:hover .title-background,
.leadershipcontainer.extended:focus .title-background {
    transform: translateY(80px);
    opacity: 0;
}

.leadershipcontainer.extended:hover .text-container.extended,
.leadershipcontainer.extended:focus .text-container.extended {
    bottom: 0;
    transform: translateY(0);
}

.leadershipcontainer.extended:hover .titlepoverlay,
.leadershipcontainer.extended:focus .titlepoverlay {
    opacity: 0;
}

/* Skip to Content */

.skip-to-content {
    position: absolute;
    top: -40px;
    left: 0;
    background: #3156a4;
    color: #fff;
    padding: 8px 16px;
    z-index: 100;
    transition: top 0.3s;
}

.skip-to-content:focus {
    top: 0;
}

/* legal */

.lp-legal a, 
.lp-legal a:hover, 
.lp-legal a:active, 
.lp-legal a:visited {
 color:#FFFFFF !important;
 text-decoration: underline;
}

/* Footer */

ul.footer-list {
    display: flex;
    justify-content: center;
    list-style: none;
    margin: 0 auto;
    padding: 40px 0px 20px 0px;
    color: white;
    text-align: center;
}
ul.footer-list li {
    margin-right: 15px;
}
ul.footer-list a {
    color: white;
    text-decoration: none;
}
ul.footer-list a:hover {
    text-decoration: underline;
}

@media (max-width: 768px) {
	ul.footer-list {
        display: block;
    }
}

/* Video Styles */

.vid-box {
    position: relative;
    width: 100%;
    padding-top: 56.25%;
    overflow: hidden;
    background: #EFEFEF;
    border-radius: 10px;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
    margin: 50px auto;
}

.vid-box iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: 0;
}

/* Footer Updates */

.footer55 {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	gap: 20px;
}

.footer55 .halfs {
	flex: 1 1 30%;
	min-width: 200px;
}
/* FAQ */
.screen-reader-text {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0;
}

.heartland-faq-section,
.heartland-faq-archive {
	padding: 50px 0;
	background: #f6f8fb;
	font-family: 'Open Sans', sans-serif;
}

.heartland-faq-section {
	margin-top: 70px;
	padding: 70px 0 54px;
}

.heartland-faq-section + #footer {
	margin-top: 0;
}

.heartland-faq-section h2,
.heartland-faq-archive h1 {
	color: #3156a4;
	text-align: center;
}

.heartland-faq-intro {
	max-width: 780px;
	margin: 0 auto 28px;
	text-align: center;
}

.heartland-faq-filter {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	justify-content: center;
	margin: 28px 0 34px;
}

.heartland-faq-filter input,
.heartland-faq-filter select {
	min-height: 44px;
	min-width: 240px;
	border: 1px solid #c9d1df;
	border-radius: 4px;
	padding: 8px 12px;
	background: #fff;
	color: #333;
}

.heartland-faq-filter button,
.heartland-faq-reset {
	display: inline-flex;
	align-items: center;
	min-height: 44px;
	border: 0;
	border-radius: 4px;
	padding: 8px 18px;
	background: #3156a4;
	color: #fff;
	font-weight: 700;
	text-decoration: none;
	cursor: pointer;
}

.heartland-faq-reset {
	background: #494949;
}

.heartland-faq-list {
	max-width: 900px;
	margin: 0 auto;
}

.heartland-faq-item {
	margin-bottom: 12px;
	border: 1px solid #d9e0eb;
	border-radius: 4px;
	background: #fff;
}

.heartland-faq-item summary {
	display: flex;
	align-items: center;
	gap: 14px;
	padding: 16px 18px;
	color: #3156a4;
	font-family: 'Open Sans', sans-serif;
	font-size: 1.1em;
	font-weight: 700;
	cursor: pointer;
	list-style: none;
}

.heartland-faq-item summary::-webkit-details-marker {
	display: none;
}

.heartland-faq-item summary::after {
	content: "";
	width: 0;
	height: 0;
	margin-left: auto;
	border-top: 6px solid transparent;
	border-bottom: 6px solid transparent;
	border-left: 8px solid #3156a4;
	transition: transform 180ms ease;
	flex: 0 0 auto;
}

.heartland-faq-item[open] summary::after {
	transform: rotate(90deg);
}

.heartland-faq-answer {
	overflow: hidden;
	padding: 0 18px 18px;
	color: #494949;
	font-family: 'Open Sans', sans-serif;
	transition: height 220ms ease;
}

.heartland-faq-answer p:last-child {
	margin-bottom: 0;
}

.heartland-faq-cta {
	margin-top: 28px;
	text-align: center;
}

.heartland-faq-cta a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 44px;
	border-radius: 4px;
	padding: 10px 22px;
	background: #3156a4;
	color: #fff;
	font-family: 'Open Sans', sans-serif;
	font-weight: 700;
	text-decoration: none;
}

.heartland-faq-cta a:hover,
.heartland-faq-cta a:focus {
	background: #193d7c;
	color: #fff;
}

@media screen and (max-width: 640px) {
	.heartland-faq-filter input,
	.heartland-faq-filter select,
	.heartland-faq-filter button,
	.heartland-faq-reset {
		width: 100%;
	}
}
