/*
 Theme Name:   Hardig Industrial
 Theme URI:    https://hardigindustrial.com
 Description:  Child theme of GeneratePress created by Holland Adhaus.
 Author:       Holland Adhaus
 Author URI:   https://hollandadhaus.com
 Template:     generatepress
 Version:      1.0.2
*/

/**
 * HA
 */

/* Hide featured images used for preload */
.page .featured-image.page-header-image {
    display: none !important;
    visibility: hidden !important;
}
/* Navigation transitions */
.main-navigation a, 
.main-navigation .menu-toggle, 
.main-navigation .menu-bar-items, 
.main-navigation a:hover, 
.main-navigation .menu-toggle:hover, 
.main-navigation .menu-bar-items:hover, 
.main-navigation a:active, 
.main-navigation .menu-toggle:active, 
.main-navigation .menu-bar-items:active, 
.main-navigation a:focus, 
.main-navigation .menu-toggle:focus, 
.main-navigation .menu-bar-items:focus {
    transition: color .2s ease !important;
}
/* Elementor icon list and nav menu transitions */
.elementor-nav-menu a, 
.elementor-nav-menu a:hover, 
.elementor-nav-menu a:active, 
.elementor-nav-menu a:focus, 
.elementor-icon-list-item a span, 
.elementor-icon-list-item a:hover span, 
.elementor-icon-list-item a:focus span, 
.elementor-icon-list-item a:active span, 
.elementor-social-icon *,
.elementor-social-icon:hover *,
.elementor-social-icon:focus *,
.elementor-social-icon:active * {
    transition: all .2s ease !important;
} 
/* Elementor lazy load carousel/swiper compat */
.swiper-slide-image.swiper-lazy.lazy-hidden, 
.entry img.swiper-slide-image.swiper-lazy.lazy-hidden, 
img.thumbnail.swiper-slide-image.swiper-lazy.lazy-hidden {
    opacity: 1 !important;
}
/* Vertical table for hours */
.hours-table table {
    margin-bottom: 0;
}
.hours-table table thead, 
.hours-table table tbody {
    display: inline-block;
}
.hours-table table, 
.hours-table td, 
.hours-table th {
    border: none;
    text-align: left !important;
}
.hours-table td, 
.hours-table th {
    padding: 0.25rem 1rem 0 0;
}
.hours-table {
    white-space: nowrap;
}
@media (max-width: 1366px) {
    .hours-table .elementor-widget-container {
        margin-left: 0 !important;
    }
}
.te0 p:last-child, 
.te0 ul:last-child, 
.te0 ol:last-child {
    margin-bottom: 0 !important;
}
/* Fix E-FA icon fill color bug */
.elementor-icon-list-icon svg.svg-inline--fa path {
  fill: inherit;
}
/* Equal height fix for Elementor Loop Carousels with .force-eq-height */
.force-eq-height .swiper-slide {
  height: auto !important;
}
.force-eq-height .elementor-widget-theme-post-content, 
.force-eq-height .elementor[data-elementor-type="wp-post"], 
.force-eq-height .elementor[data-elementor-type="wp-post"] > .elementor-element {
    height: 100% !important;
}

/**
* Custom
*/

/** 
* Nav icons 
*/
/* .inside-header a .gp-icon svg {
    width: 1.1rem;
    height: 1.1rem;
    top: 0.25rem;
    overflow: visible;
}
.inside-header nav li a .gp-icon {
    margin-right: 0.25rem;
} */

/**
* Gravity Forms
*/

/* Form reCAPTCHA consent message */
.form-consent-message {
    font-size: 0.8rem;
    color: #9e9e9e;
}
.form-consent-message a {
    color: inherit;
}
/* Hide required initial instructions */
.gform_required_legend {
    display: none !important;
}
/* Rounded input corners */
.gform_wrapper.gravity-theme input[type="color"], 
.gform_wrapper.gravity-theme input[type="date"], 
.gform_wrapper.gravity-theme input[type="datetime-local"], 
.gform_wrapper.gravity-theme input[type="datetime"], 
.gform_wrapper.gravity-theme input[type="email"], 
.gform_wrapper.gravity-theme input[type="month"], 
.gform_wrapper.gravity-theme input[type="number"], 
.gform_wrapper.gravity-theme input[type="password"], 
.gform_wrapper.gravity-theme input[type="search"], 
.gform_wrapper.gravity-theme input[type="tel"], 
.gform_wrapper.gravity-theme input[type="text"], 
.gform_wrapper.gravity-theme input[type="time"], 
.gform_wrapper.gravity-theme input[type="url"], 
.gform_wrapper.gravity-theme input[type="week"], 
.gform_wrapper.gravity-theme select, 
.gform_wrapper.gravity-theme textarea, 
.gform_wrapper.gravity-theme .ginput_complex input, 
.gform_wrapper.gravity-theme .ginput_complex select, 
.gform_wrapper.gravity-theme .gform_footer button, 
.gform_wrapper.gravity-theme .gform_footer input, 
.gform_wrapper.gravity-theme .gform_page_footer button, 
.gform_wrapper.gravity-theme .gform_page_footer input {
    border-radius: 0rem;
}
/* Hide instructions on fields with class .hide-instruction */
.gform_wrapper .gfield.hide-instruction .instruction {
    display: none;
    visibility: none;
}
/* Submit buttons */
.gform_button, .gform_wrapper input[type="submit"] {
    font-weight: 800;
    font-family: 'Montserrat', sans-serif;
    font-size: 1.2rem;
}
/* Fix state subfield in address field */
.ginput_address_state {
    margin-bottom: 8px;
}

.gform_fields {
    --gf-form-gap-y: 1.5rem;
}
.gform-button {
    color: var(--hardig-red);
    border-radius: 0rem !important;
}
.gform-button:hover, 
.gform-button:active, 
.gform-button:focus {
    background-color: var(--hardig-red) !important;
    --gf-ctrl-btn-bg-color-hover-primary: var(--hardig-red-light) !important;
    color: #fff !important;
}
.gform_wrapper .gform-button--width-full {
    width: 100% !important;
}
.gform_wrapper .gform_button, 
.gform_wrapper input[type="submit"] {
    text-transform: uppercase !important;
    font-weight: 800 !important;
    border-radius: 0rem !important;
    background: var(--hardig-red);
    color: #fff;
}
.gform_wrapper .gform_button:hover, 
.gform_wrapper .gform_button:active, 
.gform_wrapper .gform_button:focus, 
.gform_wrapper input[type="submit"]:hover, 
.gform_wrapper input[type="submit"]:active, 
.gform_wrapper input[type="submit"]:focus {
    background: var(--hardig-red-light) !important;
    color: #fff !important;
}

/* Hero form */
#gform_1 .gsection_title {
  color: #fff;
  font-size: 1.5rem;
  line-height: 2rem;
  margin: 0;
}
#gform_1 .gfield--type-section {
  --gf-field-section-border-color: rgba(255,255,255,0.35);
}
#gform_1 .gform_previous_button, 
#gform_1 .gform_next_button {
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.5px;
}
#gform_1 .gform_previous_button {
  background: var(--hardig-gray);
  color: #fff;
}
#gform_1 .gform_previous_button:hover, 
#gform_1 .gform_previous_button:active, 
#gform_1 .gform_previous_button:focus {
  background: var(--hardig-charcoal);
  color: #fff;
}
#gform_1 .gform_next_button {
  background: var(--hardig-red);
  color: #fff;
}
#gform_1 .gform_next_button:hover,
#gform_1 .gform_next_button:active,
#gform_1 .gform_next_button:focus {
  background: var(--hardig-red-light);
  color: #fff;
}
#gform_1 .cf-turnstile-br-gf-1 {
  display: none;
  visibility: hidden;
}
#gform_1 .gf-turnstile-container {
  margin-top: 1rem;
}
#gform_1 #gform_submit_button_1 {
  font-size: 1.25rem;
  line-height: 1.75rem;
  letter-spacing: 0.5px;
  padding: 1rem;
}

/* Make the two rows size to their own content instead of equal fr */
.grid-rows-auto {
    align-content: start;                 /* don't stretch rows to fill */
    grid-template-rows: auto auto !important;  /* replace the 1fr rows */
    /* If Elementor injects grid-auto-rows or a fixed height, we neutralize: */
    grid-auto-rows: auto;
}
.location-grid-content {
  height: 100%;
}

/* Ensure items don't re-stretch themselves */
.grid-rows-auto > .e-con {
    align-self: start;
}

/* Special form */
#input_1_1 {
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  justify-content: stretch;
  align-items: stretch;
}
#field_1_1 .gform-field-label {
    font-weight: 800 !important;
    text-transform: uppercase !important;
}
#field_1_1 .gfield_required {
    display: none !important;
    visibility: hidden !important;
}
#gform_page_1_1 .gform-page-footer {
    display: none !important;
    visibility: hidden !important;
}
#input_1_1 .gfield-image-choice-wrapper-outer {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: stretch;
    gap: 1rem;
    padding: 1rem;
}
#input_1_1 .gchoice .gfield-image-choice-wrapper-inner {
    display: flex;
    width: 100%;
}
#input_1_1 .gchoice .gfield-image-choice-wrapper-inner label {
    text-align: left;
    margin: 0;
    color: #fff;
    display: flex;
    flex-direction: column;
    align-items: stretch;
}
#input_1_1 .gchoice .gfield-image-choice-wrapper-inner label .sf-opt-title {
    font-size: 1.25rem;
    line-height: 1.75rem;
    font-weight: 700;
}
#input_1_1 .gchoice .gfield-image-choice-wrapper-inner label .sf-opt-desc {
    font-size: 1rem;
    line-height: 1.25rem;
}
#input_1_1 .gchoice .gfield-choice-image-wrapper {
    height: 2.5rem;
    width: 2.5rem;
    display: flex;
    justify-content: center;
    text-align: center;
    margin-bottom: 0;
}
.gform-theme--framework .gfield--type-image_choice .gfield-choice-image {
    display: block !important;
    object-fit: contain !important;
    -o-object-fit: contain !important;
}
#input_1_1 .gchoice .gfield-image-choice-wrapper-inner .gfield-choice-input {
    display: none !important;
    visibility: hidden !important;
}
#field_1_1 legend {
    text-align: center;
    width: 100%;
    justify-content: center;
    font-size: 1.5rem;
    line-height: 2rem;
    margin-bottom: 1rem;
}
@media (max-width: 400px) {
    #input_1_1 .gfield-image-choice-wrapper-outer {
        flex-direction: column;
        gap: 0.5rem;
    }
    #input_1_1 .gchoice .gfield-image-choice-wrapper-inner label {
        text-align: center;
    }
}
#input_1_1 .gchoice {
    cursor: pointer;
    background: var(--hardig-red) !important;
    box-shadow: none;
    border: none;
    border-radius: 0px;
    inline-size: unset;
    max-inline-size: unset;
    min-inline-size: unset;
    width: 100%;
    flex: 1;
}
#input_1_1 .gchoice:hover, 
#input_1_1 .gchoice:active, 
#input_1_1 .gchoice:focus {
  background: var(--hardig-red-light) !important;
}
#input_1_1 .gchoice br {
    display: block;
}
#gform_wrapper_1 .gfield_radio .gchoice label, 
#gform_wrapper_1 .gfield_radio .gchoice .gfield-choice-input {
    cursor: pointer;
}
#gform_wrapper_1 .gfield_radio .gchoice .gfield-choice-input {
  margin-top: 0.25rem;
}
#gform_wrapper_1 .gfield--type-image_choice.gfield--image-choice-appearance-card .gchoice:where(:has(input:checked))::after {
  background-color: #fff;
  color: var(--hardig-charcoal);
  filter: none;
  font-size: 16px;
  font-weight: 900;
  block-size: 24px;
  inline-size: 24px;
  inset-block-start: 8px !important;
  inset-inline-end: 8px !important;
}
#gform_wrapper_1 .gfield--type-image_choice.gfield--image-choice-appearance-card .gchoice:where(:has(input:checked)) {
  background: var(--hardig-red-light);
}
.gform-page-footer button {
  font-weight: 600 !important;
  margin-bottom: 1rem !important;
  font-family: "Montserrat", "Font Awesome 6 Pro", sans-serif !important;
}
.gform-page-footer button:hover, 
.gform-page-footer button:active, 
.gform-page-footer button:focus {
  background: var(--hardig-red-light) !important;
}

.swiper-pagination-bullet {
  border-radius: 0 !important;
}
.swiper-pagination-bullet:not(.swiper-pagination-bullet-active) {
  opacity: 100% !important;
  border: 2px solid var(--dots-normal-color,#000) !important;
  background: transparent !important;
}

.elementor-icon-list-item.elementor-inline-item {
  line-height: 200%;
}
.elementor-flip-box__button {
  width: 100%;
}

/**** Split section with bleeds ****/
:root {
  --site-content-max: 1200px;
  --outer-pad: 0;            /* default; overridden by .outer-pad at <=1200px */
}

/* Outer section: no side padding */
.split-bleed {
  padding-left: 0 !important;
  padding-right: 0 !important;
}

/* Centered wrapper defines a container for cqw units */
.split-bleed .split-inner {
  width: 100%;
  max-width: var(--site-content-max);
  margin: 0 auto;
  display: flex;
  gap: 0;
  align-items: stretch;
  container-type: inline-size; /* 1cqw = 1% of this wrapper's width */
}

/* Columns */
.split-left { flex: 0 0 auto; min-width: 0; }
.split-right { flex: 0 0 50cqw; max-width: 50cqw; min-width: 0; }

/* >=1201px: bleed LEFT by gutter; RIGHT stays boxed */
@media (min-width:1201px){
  .split-bleed {
    --inner: min(var(--site-content-max), 100vw);
    --gutter: calc((100vw - var(--inner)) / 2);
  }
  .split-left {
    width: calc(50cqw + var(--gutter));
    margin-left: calc(var(--gutter) * -1);
  }
}

/* <=1200px: stack; make both 100% width; only counter a parent pad if declared */
@media (max-width:1200px){
  /* If a parent set --outer-pad (e.g., via .outer-pad), let this section bleed over it */
  .split-bleed{
    margin-left: calc(-1 * var(--outer-pad));
    margin-right: calc(-1 * var(--outer-pad));
  }

  .split-bleed .split-inner{
    flex-direction: column;
    max-width: none;
    width: 100%;
    margin: 0;
  }

  /* Reset the 50cqw basis when stacked */
  .split-left, .split-right{
    flex: 0 0 auto;
    width: 100%;
    max-width: none;
    margin: 0;
  }
}
/**** END ****/

/* Outermost section (no side padding) */
.split-bleed-alt {
  padding-left: 0 !important;
  padding-right: 0 !important;
}

/* Centered wrapper establishes container for cqw units */
.split-bleed-alt .split-inner-alt {
  width: 100%;
  max-width: var(--site-content-max);
  margin: 0 auto;
  display: flex;
  gap: 0;
  align-items: stretch;
  container-type: inline-size; /* 1cqw = 1% of this wrapper's width */
}

/* Columns */
.split-left-alt  { flex: 0 0 50cqw; max-width: 50cqw; min-width: 0; } /* boxed LEFT (50% of inner) */
.split-right-alt { flex: 0 0 auto; min-width: 0; }                     /* bleed RIGHT on desktop */

/* >=1201px: bleed the RIGHT to the viewport edge; LEFT stays boxed */
@media (min-width:1201px){
  .split-bleed-alt {
    --inner: min(var(--site-content-max), 100vw);
    --gutter: calc((100vw - var(--inner)) / 2); /* viewport --> inner wrapper gutter */
  }
  .split-right-alt{
    width: calc(50cqw + var(--gutter));
    margin-right: calc(var(--gutter) * -1); /* push to the right screen edge */
  }
}

/* <=1200px: stack; both columns full width; only counter parent pad if declared */
@media (max-width:1200px){
  .split-bleed-alt{
    margin-left:  calc(-1 * var(--outer-pad));
    margin-right: calc(-1 * var(--outer-pad));
  }

  .split-bleed-alt .split-inner-alt{
    flex-direction: column;
    max-width: none;
    width: 100%;
    margin: 0;
  }

  /* Reset the 50cqw basis when stacked */
  .split-left-alt,
  .split-right-alt{
    flex: 0 0 auto;
    width: 100%;
    max-width: none;
    margin: 0;
  }
}
/**** END alt ****/

/**** Split section with bleeds - ALT 40/60 (boxed LEFT 40%, bleed RIGHT 60%) ****/
:root {
  --site-content-max: 1200px;
  --outer-pad: 0; /* set by a padded parent (e.g., .outer-pad) at <=1200px if present */
}

/* Optional helper if you use a padded parent container */
@media (max-width:1200px){
  .outer-pad { --outer-pad: 2rem; }
}

/* Outermost section (no side padding) */
.split-bleed-alt4060 {
  padding-left: 0 !important;
  padding-right: 0 !important;
}

/* Centered wrapper establishes container for cqw units */
.split-bleed-alt4060 .split-inner-alt4060 {
  width: 100%;
  max-width: var(--site-content-max);
  margin: 0 auto;
  display: flex;
  gap: 0;
  align-items: stretch;
  container-type: inline-size; /* 1cqw = 1% of this wrapper's width */
}

/* Columns */
.split-left-alt4060  { flex: 0 0 40cqw; max-width: 40cqw; min-width: 0; } /* boxed LEFT (40% of inner) */
.split-right-alt4060 { flex: 0 0 auto; min-width: 0; }                     /* bleed RIGHT on desktop */

/* >=1201px: bleed the RIGHT to the viewport edge; LEFT stays boxed */
@media (min-width:1201px){
  .split-bleed-alt4060{
    --inner: min(var(--site-content-max), 100vw);
    --gutter: calc((100vw - var(--inner)) / 2); /* viewport --> inner wrapper gutter */
  }
  .split-right-alt4060{
    width: calc(60cqw + var(--gutter));
    margin-right: calc(var(--gutter) * -1); /* push to the right screen edge */
  }
}

/* <=1200px: stack; both columns full width; only counter parent pad if declared */
@media (max-width:1200px){
  .split-bleed-alt4060{
    margin-left:  calc(-1 * var(--outer-pad));
    margin-right: calc(-1 * var(--outer-pad));
  }

  .split-bleed-alt4060 .split-inner-alt4060{
    flex-direction: column;
    max-width: none;
    width: 100%;
    margin: 0;
  }

  /* Reset bases when stacked */
  .split-left-alt4060,
  .split-right-alt4060{
    flex: 0 0 auto;
    width: 100%;
    max-width: none;
    margin: 0;
  }
}
/**** END alt 40/60 ****/

/**** Diagonal cut split diagonal ****/
/* container */
.diag-cut-cont {
  position: relative;
  overflow: visible;
}

/* the Elementor image widget */
.diag-cut {
  position: absolute;
  bottom: 0;            /* keep existing vertical positioning behavior */
  left: 40% !important; /* override the 40% inline offset */
  height: 100%;         /* make the widget fill the container height */
  transform: translateX(-50%) !important; /* center the *widget* */
  pointer-events: none; /* optional: keeps it non-interactive */
  max-width: none !important;
  width: auto !important;
}

/* the <img> inside the widget */
.diag-cut img {
  display: block;
  height: 100%;         /* fill vertically */
  width: auto !important; 
  max-width: none !important; /* allow the 4x-wide SVG to extend */
  object-fit: contain;  /* maintain proportions (no distortion) */
  object-position: center; /* keep the SVG's 50% viewBox centered */
}

/**** END ****/

/**** Split section with bleeds - ALT 60/40 (bleed LEFT 60%, boxed RIGHT 40%) ****/
/* Outermost section (no side padding) */
.split-bleed-alt6040 {
  padding-left: 0 !important;
  padding-right: 0 !important;
}

/* Centered wrapper establishes container for cqw units */
.split-bleed-alt6040 .split-inner-alt6040 {
  width: 100%;
  max-width: var(--site-content-max);
  margin: 0 auto;
  display: flex;
  gap: 0;
  align-items: stretch;
  container-type: inline-size; /* 1cqw = 1% of this wrapper's width */
}

/* Columns */
.split-left-alt6040  { flex: 0 0 auto; min-width: 0; }                     /* bleed LEFT on desktop */
.split-right-alt6040 { flex: 0 0 40cqw; max-width: 40cqw; min-width: 0; }  /* boxed RIGHT (40% of inner) */

/* >=1201px: bleed the LEFT to the viewport edge; RIGHT stays boxed */
@media (min-width:1201px){
  .split-bleed-alt6040{
    --inner: min(var(--site-content-max), 100vw);
    --gutter: calc((100vw - var(--inner)) / 2); /* viewport --> inner wrapper gutter */
  }
  .split-left-alt6040{
    width: calc(60cqw + var(--gutter));
    margin-left: calc(var(--gutter) * -1); /* push to the left screen edge */
  }
}

/* <=1200px: stack; both columns full width; only counter parent pad if declared */
@media (max-width:1200px){
  .split-bleed-alt6040{
    margin-left:  calc(-1 * var(--outer-pad));
    margin-right: calc(-1 * var(--outer-pad));
  }
  .split-bleed-alt6040 .split-inner-alt6040{
    flex-direction: column;
    max-width: none;
    width: 100%;
    margin: 0;
  }
  /* Reset bases when stacked */
  .split-left-alt6040,
  .split-right-alt6040{
    flex: 0 0 auto;
    width: 100%;
    max-width: none;
    margin: 0;
  }
}
/**** END alt 60/40 ****/

/**** Diagonal cut position override for the 60/40 right-content variant ****/
/* Keep the same absolute/100%-height technique; just anchor the SVG at the 60% split */
.split-bleed-alt6040 .diag-cut{
  left: 60% !important;             /* center the widget on the 60% boundary */
  transform: translateX(-50%) !important;
}

.application-image {
    aspect-ratio: 1 !important;
    border: 10px solid black !important;
    border-radius: 50% !important;
}
.application-image img {
    aspect-ratio: 1 !important;
}
.il-h3-p h3, 
.il-h4-p h4 {
    font-size: inherit;
    line-height: inherit;
    text-transform: inherit;
    margin-bottom: 0.25rem;
}
/* .il-h4-p h4 {
    font-size: 1.5rem;
    line-height: 2rem;
    text-transform: inherit;
    margin-bottom: 0.25rem;
} */
.il-h3-p p, 
.il-h4-p p {
    margin-bottom: 0;
} 
.il-inset-ul {
    margin-bottom: 0;
}

.ah-hero h1 {
  margin-bottom: 0;
}
.ah-hero .elementor-headline-plain-text {
  font-size: 3.5rem !important;
  line-height: 4rem !important;
  display: block !important;
  padding-bottom: 0;
}
@media (max-width: 1200px) {
  .ah-hero h1 {
    font-size: 2.5rem !important;
    line-height: 3rem !important;
  }
  .ah-hero .elementor-headline-plain-text {
    font-size: 3rem !important;
    line-height: 3.5rem !important;
  }
}
@media (max-width: 1024px) {
  .ah-hero h1 {
    font-size: 2rem !important;
    line-height: 2.5rem !important;
  }
  .ah-hero .elementor-headline-plain-text {
    font-size: 2.5rem !important;
    line-height: 3rem !important;
  }
}
@media (max-width: 768px) {
  .ah-hero h1 {
    font-size: 3rem !important;
    line-height: 3.5rem !important;
  }
  .ah-hero .elementor-headline-plain-text {
    font-size: 3.5rem !important;
    line-height: 4rem !important;
  }
}
@media (max-width: 605px) {
  .ah-hero h1 {
    font-size: 2.5rem !important;
    line-height: 3rem !important;
  }
  .ah-hero .elementor-headline-plain-text {
    font-size: 3rem !important;
    line-height: 3.5rem !important;
  }
}
@media (max-width: 540px) {
  .ah-hero h1 {
    font-size: 2rem !important;
    line-height: 2.5rem !important;
  }
  .ah-hero .elementor-headline-plain-text {
    font-size: 2.5rem !important;
    line-height: 3rem !important;
  }
}
@media (max-width: 420px) {
  .ah-hero h1 {
    font-size: 1.75rem !important;
    line-height: 2.25rem !important;
  }
  .ah-hero .elementor-headline-plain-text {
    font-size: 2.25rem !important;
    line-height: 2.75rem !important;
  }
}
@media (max-width: 360px) {
  .ah-hero h1 {
    font-size: 1.5rem !important;
    line-height: 2rem !important;
  }
  .ah-hero .elementor-headline-plain-text {
    font-size: 2rem !important;
    line-height: 2.5rem !important;
  }
}
@media (max-width: 320px) {
  .ah-hero h1 {
    font-size: 7vw !important;
    line-height: 9vw !important;
  }
  .ah-hero .elementor-headline-plain-text {
    font-size: 2rem !important;
    line-height: 2.5rem !important;
  }
}
@media (max-width: 1024px) {
  .featured-slide-applications-grid .elementor-widget-icon-box .elementor-icon-box-title span br {
    display: none !important;
    visibility: hidden !important;
  }
}
.h-tax-filter .e-filter-item:focus:not([aria-pressed="true"]) {
  background-color: transparent !important;
  border-color: #fff !important;
  color: #fff !important;
}
.h-tax-filter button, 
.h-tax-filter button:hover, 
.h-tax-filter button:active, 
.h-tax-filter button:focus {
  transition: all .3s ease;
}
.resource-li-content {
  height: 100%;
}

/* Homepage hero video */
/* Background video container: fills the hero, behind the content */
#hero .elementor-background-video-container {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
  z-index: 0; /* then give your content containers higher z-index if needed */
}
/* Video: lock its size, but keep Elementor's centering transform */
#hero .elementor-background-video-hosted {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover;
  /* DON'T touch transform/top/left here - let Elementor keep translate(-50%, -50%) */
}
/* Make sure content sits above the video */
#hero .e-child {
  position: relative;
  z-index: 1;
}

/* Elfsight LinkedIn Feed */
.hardig-li-embed button, 
.hardig-li-embed button:hover, 
.hardig-li-embed button:active, 
.hardig-li-embed button:focus {
  background-color: initial;
  color: initial;
}

/* Termly */
div[name="termly-embed"] {
    margin: -20px;
}

.hardig-table th {
  background: var(--hardig-charcoal) !important;
  color: #fff !important;
  text-transform: uppercase;
}