/*
Theme Name: OnePress Child
Theme URI: https://www.famethemes.com/themes/onepress/
Author: FameThemes
Author URI: http://www.famethemes.com
Description: OnePress is an outstanding creative and flexible WordPress one page theme well suited for business website, portfolio, digital agency, product showcase, freelancers and everyone else who appreciate good design. The theme overall is an elegant and classic one, a fine example of Bootstrap 4 WordPress theme which compatibility with latest version of WooCommerce. (Live preview : https://demos.famethemes.com/onepress)
Version: 10.9.25
Template:     onepress-hammersmith
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: onepress
*/

@import url('https://fonts.googleapis.com/css2?family=Roboto:ital,wght@0,100..900;1,100..900&family=Work+Sans:ital,wght@0,100..900;1,100..900&display=swap');


:root {
  --primary: #1a1a2e;
  --secondary: #e94560;

  --font-heading: "Work Sans", sans-serif;
  --font-body: "Roboto", sans-serif;
	
	--link-underline-color: #C1272D; /* WCS brand red — change to re-brand */
	--link-underline-speed: 0.35s;
}

body {
  font-size: 17px;
}

h1, h2, h3, h4, h5, h6 {
  font-family: var(--font-heading);
  font-optical-sizing: auto;
  font-weight: 900;
  font-style: normal;
  text-transform: uppercase;
  line-height: 1;
}

p {
  font-family: var(--font-body);
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
  font-variation-settings: "wdth" 100;
  line-height: 2;
}


h1, h2 {
  font-size: 54px;
  font-weight: 900;
}
h3 {
  font-size: 38px;
  font-weight: 900;
  line-height: 1;
}

h4 {
  font-size: 23px;
  font-weight: 900;
  line-height: 1.4;	
}

h5 {
  font-size: 16px;
}

.eyebrow {
  font-family: var(--font-body);
  font-weight: 700; /* Bold */
  font-size: 18px;
  line-height: 44px; /* unusually tall for a 24px label — worth double-checking this wasn't just the bounding box height rather than a true line-height override */
  letter-spacing: 0.12em; /* Figma's 12% is relative to font-size */
  text-transform: uppercase;
}

.custom-small-text {
  font-size: 15px;
  line-height: 1.6;
}

.breadcrumbs{
  display: none;
}
#page{
  overflow-x: hidden;
}


a {
  position: relative;
  text-decoration: none !important;
  transition: color var(--link-underline-speed) ease;
}

a::after {
  content: '';
  position: absolute;
  left: 0;
  bottom: -3px;
  width: 100%;
  height: 2px;
  background-color: var(--link-underline-color);
  transform: scaleX(0);
  transform-origin: right;
  transition: transform var(--link-underline-speed) cubic-bezier(.4,0,.2,1);
  pointer-events: none;
}

a:hover::after,
a:focus-visible::after {
  transform: scaleX(1);
  transform-origin: left;
}

/* Opt out: buttons, logo, and icon-only links keep their own style */
a.wp-block-button__link,
a.button,
a.btn,
a[class*="elementor-button"],
.site-branding a,
.custom-logo-link,
.easy-social-icons a,
a:has(> img),
a:has(> svg),
a:has(> i) {
  text-decoration: none;
}

a.wp-block-button__link::after,
a.button::after,
a.btn::after,
a[class*="elementor-button"]::after,
.site-branding a::after,
.custom-logo-link::after,
.easy-social-icons a::after,
a:has(> img)::after,
a:has(> svg)::after,
a:has(> i)::after {
  content: none;
}

.home-banner-btn .wp-block-button:first-child .wp-block-button__link,
.for-contractors-btn .wp-block-button:first-child .wp-block-button__link{
    border: 2px solid #c1272d;
}
.home-banner-btn .wp-block-button {
	min-width: 283px;
}

/* Respect users who prefer less motion */
@media (prefers-reduced-motion: reduce) {
  a, a::after {
    transition: none !important;
  }
}

a.wp-block-button__link,
a.button,
a.btn,
a[class*="elementor-button"] {
  opacity: 1;
  transition: opacity 0.3s ease, transform 0.3s ease;
}

a.wp-block-button__link:hover,
a.button:hover,
a.btn:hover,
a[class*="elementor-button"]:hover {
  opacity: 0.85;
}


.onepress-menu a{
  letter-spacing: 0;
  text-transform: none;
  font-family: var(--font-body);
  text-transform: uppercase;
  letter-spacing: .20em;
  color: #E6E6E6;
}
#primary{
	padding-top: 0; padding-bottom: 0;
}
.entry-content{
	margin-bottom: 0;
}
#masthead{
  padding: 15px 0;
  background-color: #1A1A1A;
}
.site-branding .no-logo-img.has-desc, .site-branding .has-logo-img, .site-header{
  line-height: unset;
}
#masthead > .container{
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  padding: 15px;
}
#masthead > .container > div{
  flex: 1;
}
#masthead > .container > div.site-branding{
  max-width: 300px;
  float: none;
}
.header-right-wrapper{
  text-align: right;
}
.onepress-menu{
  float: none;
  text-align: right;
  display: inline-block;
}
.onepress-menu ul, .onepress-menu li{
  text-align: left
}
.onepress-menu > li{
  float: none;
  display: inline-block;
}

.onepress-menu li.phone-icon {
  position: relative;
  padding-left: 9px;
  margin-left: 10px;
}
.onepress-menu li.phone-icon:before {
  content: '';
  background-image: url(/wp-content/uploads/2026/07/phone-icon.svg);
  background-repeat: no-repeat;
  background-size: contain;
  width: 17px;
  height: 17px;
  display: inline-block;
  position: absolute;
  left: 0;
  top: 2px;
}

#masthead .top-strip {
	border-bottom: 1px solid #C0272D;
	padding: 8px 0;
}
#masthead .top-strip a {
	color: #C5CED1;
	text-transform: uppercase;
	font-family: var(--font-body);
	font-weight: 400;
	font-size: 14px;
}
#masthead .top-strip .container > div {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	line-height: 1;
}

/* Header + footer container: match the 1250px page sections */
@media (min-width: 1200px) {
	#masthead .container,
	#colophon .container {
		width: 1250px;
		max-width: 100%;
	}
}


mark {
  padding: 0 !important;
}

#footer-2 {
    display: flex;
    gap: 100px; 
}
#text-5 .textwidget {
  display: flex;
  gap: 50px;
}
#text-2 > .textwidget {
  max-width: 350px;
}
#text-2 a {
  color: #C1272D;
  font-size: 24px;
  font-family: var(--font-heading);
}
footer.site-footer {
  border-top: 3px solid #C1272D;
}
footer.site-footer .site-info {
  background-color: #1a1a1a;
  padding: 0;
}
.site-footer .site-info .container {
  border-top: 1px solid #4E4F4F;
  padding: 25px;
  color: #6A6B6C;
}
#page .wp-block-button a {
  padding: 9px 50px;
  font-size: 18px;
  font-family: var(--font-body);
	line-height: 1;
    min-width: 250px;
	border-radius: 0;
	text-transform: uppercase;
}
#page .wp-block-button a:hover {
	color: #fff;
	text-decoration: none;
}
.who-we-serve-wrapper .cta-btn,
.arrow-right {
  position: absolute;
  bottom: 10px;
  text-transform: uppercase;
  letter-spacing: 0.12em;
  font-weight: 700;
  font-size: 16px;
  margin-bottom: 0;
}
.arrow-right.position-rel {
	position: relative;
	bottom: unset;
}
.who-we-serve-wrapper .cta-btn:hover,
.arrow-right:hover {
  text-decoration: none;
}
.who-we-serve-wrapper .cta-btn, .arrow-right {
  padding-right: 50px;
}
.who-we-serve-wrapper .cta-btn:after,
.arrow-right:after{
  content: '';
  background-image: url(/wp-content/uploads/2026/07/thick-right-arrow-red.svg);
  background-repeat: no-repeat;
  background-size: contain;
  width: 21px;
  height: 21px;
  position: absolute;
  right: 0;
  top: 4px;
}
.who-we-serve-wrapper .cta-btn.teal-btn:after,
.arrow-right.teal-btn:after{
  background-image: url(/wp-content/uploads/2026/07/thick-right-arrow-teal.svg);
}
.who-we-serve-wrapper .cta-btn.gray-btn:after,
.arrow-right.gray-btn:after{
  background-image: url(/wp-content/uploads/2026/07/thick-right-arrow-gray.svg);
}

#page .who-we-serve-wrapper img {
  max-width: 110px;
}
.with-bg-arrow-left-right {
  position: relative;
}
.with-bg-arrow-left-right:after {
  content: '';
  background-image: url(/wp-content/uploads/2026/07/big-arrow-red.png);
    background-repeat: no-repeat;
    background-size: contain;
    display: inline-block;
    z-index: 99999999;
    width: 293px;
    height: 100%;
    position: absolute;
    right: -130px;
    top: 0;
	z-index: 1;
}
.with-bg-arrow-left-right:before {
    content: '';
    background-image: url(/wp-content/uploads/2026/07/big-arrow-red.png);
    background-repeat: no-repeat;
    background-size: contain;
    display: inline-block;
    z-index: 99999999;
    width: 293px;
    height: 100%;
    position: absolute;
    left: -130px;
    top: 0;
    transform: scaleX(-1);
    transform-origin: center;
	z-index: 1;
}

.with-big-arrow-icon-left-right {
  position: relative;
}
.with-big-arrow-icon-left-right:after {
  content: '';
  background-image: url(/wp-content/uploads/2026/07/big-arrow-red.png);
    background-repeat: no-repeat;
    background-size: contain;
    display: inline-block;
    width: 512px;
    height: 100%;
    position: absolute;
    top: 0;
    transform-origin: center;
    z-index: 1;
    right: 0;
}
.with-big-arrow-icon-left-right:before {
    content: '';
    background-image: url(/wp-content/uploads/2026/07/big-arrow-red.png);
    background-repeat: no-repeat;
    background-size: contain;
    display: inline-block;
    z-index: 99999999;
    width: 512px;
    height: 100%;
    position: absolute;
    top: 0;
    transform: scaleX(-1);
    transform-origin: center;
    z-index: 1;
}

.stat-card-wrapper > .kt-row-column-wrap {
	z-index: 9;
}

.wcs-sitemap-simple {
  list-style: none;
  margin: 0 0 3rem;
  padding: 0;
  font-family: inherit;  
  font-size: inherit;
  line-height: 2.1;       
}
 
.wcs-sitemap-simple li {
  margin: 0;
  padding: 0;
}
 
.wcs-sitemap-simple li::before,
.wcs-sitemap-simple li::marker {
  content: none;       
}
 
.wcs-sitemap-simple a {
  color: #333;         
  text-decoration: none;
  transition: color .15s ease;
}
 
.wcs-sitemap-simple a:hover {
  color: #c8202f;      
  text-decoration: underline;
  text-underline-offset: 3px;
}
 
.wcs-sitemap-simple a:focus-visible {
  outline: 2px solid #3e86a8;
  outline-offset: 3px;
}
 

.wcs-sitemap-simple .children {
  list-style: none;
  margin: 0;
  padding-left: 1.25rem;
}
.wcs-sitemap-simple {
	margin: 0 !important;
}
.site-footer .site-info ul {
    display: flex;
    gap: 40px;
    font-weight: 400;
    justify-content: center;	
}
.site-footer .site-info ul li a {
	color: #6A6B6C;
}
.site-footer .site-info ul li {
	list-style: none;
}

blockquote .not-italic {
  font-style: none;
}
.onepress-menu {
  margin-right: 107px;
}

ul.arrow-red-icon{
  padding-left: 0; margin: 0;
}
ul.arrow-red-icon li {
    position: relative;
    padding-left: 35px;
    list-style-type: none;
    margin: 0 0 15px;
}
ul.arrow-red-icon li:before{
  content: '';
  position: absolute;
  left: 2px;
  width: 15px;
  height: 15px;
  background-image: url(/wp-content/uploads/2026/07/thick-right-arrow-red.svg);
  background-repeat: no-repeat;
  background-size: contain;
  top: 50%;
  transform: translateY(-50%);
}
.black-box-wrapper p {
	text-transform: uppercase;
	line-height: 1.2;
	font-family: var(--font-body);
	font-size: 15px;
	letter-spacing: 0.12em;
	font-weight: 700;
	margin-bottom: 0;
}

.gform_button.button {
    padding: 9px 50px;
    font-size: 18px;
    line-height: 1;	
}
.no-bullets-list {
	padding-left: 0;
}
.no-bullets-list li {
	margin-left: 0;
	list-style: none;
}

.gfield_label.gform-field-label {
	color: #1A1A1A !important;
	text-transform: uppercase;
	letter-spacing: 0.12em;
}
#page .light-color-form .gform_wrapper input:not([type=radio]):not([type=checkbox]):not([type=submit]):not([type=button]):not([type=image]):not([type=file]), #page .light-color-form .gform_wrapper select, #page .light-color-form .gform_wrapper textarea {
	background-color: #E6E6E6 !important;
}


.training-events {
    width: 100%;
    border-collapse: collapse;
    table-layout: fixed;
}

.training-events thead th {
    background: #1d1d1d;
    color: #A3B0B4;
    padding: 16px 20px;
    text-align: left;
    text-transform: uppercase;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 2px;
    border: none;
}

.training-events__logos {
	flex: 0 0 120px;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 10px;
	max-width: 120px;
}
.training-events__logo {
	width: auto;
	height: auto;
	overflow: visible;
}
.training-events__logo img {
	display: block;
	width: auto;
	height: auto;
	max-width: 120px;
	object-fit: contain;
}

/* Column widths – Event (2) takes whatever is left */

.training-events th:nth-child(1),
.training-events td:nth-child(1) { width: 150px; }  /* Date */

.training-events th:nth-child(3),
.training-events td:nth-child(3) { width: 180px; }  /* Location */

.training-events th:nth-child(4),
.training-events td:nth-child(4) { width: 210px; }  /* Representative */

.training-events th:nth-child(5),
.training-events td:nth-child(5) { width: 220px; }  /* Button */

.training-events tbody td {
    padding: 32px 20px;
    vertical-align: middle;
    border-bottom: 1px solid #bdbdbd;
}

/* Date */

.training-events__date {
    color: #c91f26;
    font-size: 18px;
    font-weight: 700;
    white-space: nowrap;
    line-height: 1;
}

.training-events__date .month,
.training-events__date .day {
    display: inline;
    font-size: inherit;
    font-weight: inherit;
}

.training-events__date .day {
    margin-left: 4px;
}

/* Event */

.training-events__event {
    display: flex;
    align-items: center;
    gap: 18px;
}

.training-events__logo {
    flex: 0 0 48px;
    height: 50px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.training-events__logo img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    display: block;
}

.training-events__event h3 {
    margin: 0 0 6px;
    font-size: 16px;
    font-weight: 700;
    line-height: 1.3;
}

.training-events__event p {
    margin: 0;
    font-size: 15px;
    line-height: 1.4;
    color: #333;
}

/* Location */

.training-events__location {
    font-size: 16px;
    font-weight: 600;
    color: #222;
}

/* Representative */

.training-events__representatives {
    font-size: 16px;
    line-height: 1.4;
    color: #222;
}

/* Button */

.training-events__button {
    text-align: right;
}

.training-events__button a {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    max-width: 180px;
    height: 46px;
    border: 2px solid #d32027;
    color: #d32027;
    text-decoration: none;
    text-transform: uppercase;
    font-size: 14px;
    font-weight: 700;
    white-space: nowrap;
    transition: .2s ease;
    box-sizing: border-box;
}

.training-events__button a:hover {
    background: #d32027;
    color: #fff;
}

/* Tablet: tighten fixed columns */

@media (max-width: 1100px) {
    .training-events th:nth-child(1),
    .training-events td:nth-child(1) { width: 130px; }

    .training-events th:nth-child(3),
    .training-events td:nth-child(3) { width: 150px; }

    .training-events th:nth-child(4),
    .training-events td:nth-child(4) { width: 170px; }

    .training-events th:nth-child(5),
    .training-events td:nth-child(5) { width: 180px; }

    .training-events tbody td { padding: 28px 14px; }
}

/* Mobile: stack rows as cards */

@media (max-width: 768px) {
    .training-events thead { display: none; }

    .training-events,
    .training-events tbody,
    .training-events tr,
    .training-events td {
        display: block;
        width: 100% !important;
    }

    .training-events tr {
        padding: 24px 0;
        border-bottom: 1px solid #bdbdbd;
    }

    .training-events tbody td {
        padding: 4px 0;
        border-bottom: none;
    }

    .training-events__date { margin-bottom: 12px; }

    .training-events__button {
        text-align: left;
        padding-top: 16px !important;
    }

    .training-events__button a { max-width: 100%; }
}

#gform_4 .gfield_label.gform-field-label {
	color: #fff !important;
}
#gform_fields_4 {
    grid-row-gap: 33px;	
}
#gform_fields_4 input {
	color: #fff !important;
}

#text-2 {
	margin-bottom: 0;
}

/* Fix bio popup: center it and keep it above the sticky header */
.tm-modal-overlay.is-open {
    display: flex !important;
    align-items: center;
    justify-content: center;
}
.tm-modal-overlay.is-open .tm-modal {
    margin: 0;
    max-height: calc(100vh - 80px);
    overflow-y: auto;
}
body.tm-modal-open header.site-header,
body.tm-modal-open #masthead {
    z-index: 1 !important;
}

/* Fix + equalize logo gallery on Home page (Our Represented Lines) */
.wcs-logo-gallery .kb-gallery-image-contain.kadence-blocks-gallery-intrinsic {
	height: 90px !important;
	padding-bottom: 0 !important;
}
.wcs-logo-gallery .kb-gallery-image-contain.kadence-blocks-gallery-intrinsic img {
	position: static !important;
	height: 100% !important;
	width: auto !important;
	max-width: 100% !important;
	object-fit: contain !important;
	object-position: center !important;
	top: auto !important;
	left: auto !important;
	flex: none !important;
}
.wcs-logo-gallery .kb-gallery-figure {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
}

.not-italic-text p {
	font-style: normal !important;
}

.banner-section-with-border p {
	border-bottom: 0 !important;
	line-height: 1.6;
	letter-spacing: 1px;
}


.tm-grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 30px;
	margin: 30px 0;
}

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

.tm-image-wrap {
	position: relative;
	overflow: hidden;
	background: #f0f0f0;
}

.tm-image-wrap img {
	display: block;
	width: 100%;
	height: auto;
	aspect-ratio: 1 / 1;
	object-fit: cover;
	object-position: top;
	transition: filter 0.4s ease, transform 0.4s ease;
}

.tm-grid:not(.tm-no-bio) .tm-card:hover .tm-image-wrap img {
	filter: blur(5px);
	transform: scale(1.15);
}

.tm-view-bio {
	position: absolute;
	left: 30px;
	right: 30px;
	bottom: -60px;
	opacity: 0;
	display: inline-block;
	padding: 10px 0;
	background: #C1272D;
	color: #fff;
	text-decoration: none;
	font-size: 14px;
	font-weight: 600;
	letter-spacing: 0.5px;
	text-transform: uppercase;
	border-radius: 3px;
	border: none;
	cursor: pointer;
	transition: bottom 0.4s ease, opacity 0.4s ease;
	line-height: 1;
	font-family: inherit;
}
.tm-view-bio:hover {
	background: #C1272D;
	color: #fff;
}

.tm-grid:not(.tm-no-bio) .tm-card:hover .tm-view-bio {
	bottom: 10px;
	opacity: 1;
}

.tm-name {
	margin: 15px 0 4px;
	font-size: 16px;
	font-weight: 900;
	text-align: left;
	letter-spacing: 0.12em;
}

.tm-job-title {
	margin: 0;
	font-size: 14px;
	color: #4E4F4F;
	text-align: left;
	text-transform: uppercase;
}

@media (max-width: 992px) {
	.tm-grid {
		grid-template-columns: repeat(2, 1fr);
	}
	#footer-2 {
		gap: 25px;	
	}
}

@media (max-width: 576px) {
	.tm-grid {
		grid-template-columns: 1fr;
	}
}

/* ---- Bio Modal ---- */
.tm-modal-overlay {
	display: none;
	position: fixed;
	inset: 0;
	background: rgba(0, 0, 0, 0.6);
	z-index: 9998;
	padding: 40px 20px;
	overflow-y: auto;
}

.tm-modal-overlay.is-open {
	display: block;
}

.tm-modal {
	position: relative;
	max-width: 800px;
	margin: 0 auto;
	background: #fff;
	border-radius: 4px;
	overflow: hidden;
	box-shadow: 0 20px 60px rgba(0,0,0,0.3);
}

.tm-modal-close {
	position: absolute;
	top: 18px;
	right: 20px;
	background: transparent;
	border: none;
	color: #fff;
	font-size: 28px;
	line-height: 1;
	cursor: pointer;
	z-index: 2;
	padding: 0;
	width: 32px;
	height: 32px;
}

.tm-modal-header {
	background: #202020;
	padding: 40px 50px;
}

.tm-modal-job-title {
	margin: 0 0 8px;
	font-size: 14px;
	font-weight: 700;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: #C1272D;
}

.tm-modal-name {
	margin: 0 0 20px;
	font-size: 42px;
	font-weight: 900;
	letter-spacing: 0.02em;
	color: #fff;
	line-height: 1.05;
}

.tm-modal-meta {
	margin: 0 0 4px;
	font-size: 14px;
	color: #bdbdbd;
}

.tm-modal-meta strong {
	color: #C1272D;
	font-weight: 700;
}

.tm-modal-body {
	padding: 40px 50px 20px;
	color: #333;
	font-size: 15px;
	line-height: 1.7;
}

.tm-modal-body p {
	margin: 0 0 20px;
}

.tm-modal-footer {
	display: flex;
	align-items: center;
	gap: 30px;
	flex-wrap: wrap;
	padding: 20px 50px 40px;
	margin-top: 10px;
	border-top: 1px solid #e0e0e0;
	font-size: 14px;
}

.tm-modal-footer a {
	color: #C1272D;
	text-decoration: underline;
}

body.tm-modal-open {
	overflow: hidden;
}


#page #footer-2 a,
#page #footer-3 a {
	color: #6a6b6c;
}

.wcs-documents-table thead tr{
	background-color: #1A1A1A !important;
	color: #fff;
}
.wcs-doc-download {
    text-align: center !important;
}
.wcs-doc-download a {
    color: #c1272d;		
	letter-spacing: 1px;
	text-transform: uppercase;
}
.wcs-documents-table thead th {
	border: none !important;
}

.wcs-documents-table {
  width: 100%;
  border-collapse: collapse;
}

.wcs-documents-table th,
.wcs-documents-table td {
  padding: 16px 12px;
  text-align: left;
  border-bottom: 1px solid rgba(0, 0, 0, 0.12);
}

.wcs-documents-table thead th {
  text-transform: uppercase;
  letter-spacing: 0.05em;
  font-size: 0.85em;
  opacity: 0.7;
}

.wcs-doc-subtitle {
  opacity: 0.7;
  font-size: 0.9em;
}

.wcs-doc-download-link {
  text-decoration: underline;
  font-weight: 600;
}

#page .wcs-partner-logo {
  max-width: 220px;
  height: auto;
  margin: 0 auto;
}

.wcs-partner-login-notice,
.wcs-partner-no-docs {
  opacity: 0.8;
}

/* Mobile */

@media (max-width: 767px) {

    .training-events,
    .training-events tbody,
    .training-events tr,
    .training-events td {
        display: block;
        width: 100%;
    }

    .training-events thead {
        display: none;
    }

    .training-events tbody tr {
        padding: 24px;
        border: 1px solid #ddd;
        margin-bottom: 24px;
    }

    .training-events tbody td {
        border: 0;
        padding: 0;
        margin-bottom: 18px;
    }

    .training-events__event {
        align-items: flex-start;
    }

    .training-events__logo {
        width: 64px;
        height: 40px;
    }

    .training-events__button {
        text-align: left;
    }

    .training-events__button a {
        width: 100%;
    }
	.footer-widgets * {
		text-align: center;
		margin: 0 auto;
	}
}

/* Gravity Forms: light text in the dark fields */
#page .gform_wrapper input:not([type="radio"]):not([type="checkbox"]):not([type="submit"]):not([type="button"]):not([type="image"]):not([type="file"]), #page .gform_wrapper select, #page .gform_wrapper textarea{
  color: #fff;
}

@media (max-width: 1200px){
  /* Mobile menu dividers: theme red, light */
  .onepress-menu.onepress-menu-mobile > li{
    border-top: 1px solid rgba(193, 39, 45, 0.45) !important;
    border-bottom: 0 !important;
  }
  .onepress-menu.onepress-menu-mobile > li:first-child{
    border-top: 0 !important;
  }
  .onepress-menu.onepress-menu-mobile > li > a{
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
  /* Phone icon inline with the number */
  .onepress-menu.onepress-menu-mobile li.phone-icon{
    position: relative;
    margin-left: 0 !important;
    padding-left: 0 !important;
  }
  .onepress-menu.onepress-menu-mobile li.phone-icon::before{
    top: 50% !important;
    left: 0 !important;
    transform: translateY(-50%);
  }
  .onepress-menu.onepress-menu-mobile li.phone-icon > a{
    padding-left: 27px !important;
  }
}

/* Popups: white field labels on the dark popup background */
.hs-popup .gform_wrapper .gfield_label.gform-field-label{
  color: #fff !important;
}
/* Sign-up form (#5) on the dark Follow Us section: light labels and thank-you message */
#gform_wrapper_5 .gfield_label,
#gform_wrapper_5 .gchoice label,
#gform_confirmation_message_5{
  color: #d9d9d9 !important;
}
/* Sign-up form (#5): checkboxes match the dark inputs, WCS red when checked */
#gform_wrapper_5 .gchoice input[type="checkbox"]{
  -webkit-appearance: none;
  appearance: none;
  width: 16px;
  height: 16px;
  margin: 0 8px 0 0;
  background-color: #1a1a1a;
  border: 1px solid #666;
  border-radius: 2px;
  vertical-align: middle;
  cursor: pointer;
}
#gform_wrapper_5 .gchoice input[type="checkbox"]:checked{
  background-color: #c1272d;
  border-color: #c1272d;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M4 8.5l2.5 2.5L12 5.5' fill='none' stroke='%23fff' stroke-width='2'/%3E%3C/svg%3E");
  background-size: 100% 100%;
}
#gform_wrapper_5 .gchoice input[type="checkbox"]:focus-visible{
  outline: 2px solid #c1272d;
  outline-offset: 2px;
}
/* Popups and sign-up form (#5): checkbox lists in two columns, one on mobile */
.hs-popup .gform_wrapper .gfield_checkbox,
#gform_wrapper_5 .gfield_checkbox{
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  column-gap: 20px;
}
@media (max-width: 767px){
  .hs-popup .gform_wrapper .gfield_checkbox,
  #gform_wrapper_5 .gfield_checkbox{
    grid-template-columns: 1fr;
  }
}
