/**
Theme Name: Astra Child
Author: Brainstorm Force
Author URI: http://wpastra.com/about/
Description: Astra Child Theme by OuterBox
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: astra-child
Template: astra
*/

/* TOC:
- Variables
- Utility
- Typography
- Slider
- Carousel
- Video
- Tabbed Content
- Tables
- Forms
- Mobile Menu
*/

:root {
  /* Spacing */
  --space-base: 16px;
  --space-xxs: calc(var(--space-base) * 0.25);
  --space-xs: calc(var(--space-base) * 0.5);
  --space-sm: calc(var(--space-base) * 0.75);
  --space-md: calc(var(--space-base) * 1.5);
  --space-lg: calc(var(--space-base) * 2);
  --space-xl: calc(var(--space-base) * 2.5);
  --space-xxl: calc(var(--space-base) * 4);
  --space-xxxl: calc(var(--space-base) * 5);
  --section-space: var(--space-xxxl);
  --section-side-space: var(--space-xxl);
  --gutter: var(--space-xxl);
  --gutter-sm: var(--space-lg);
  --content-max: 768px;
  --content-padded-max: 920px;
  --container-max: 1200px;

  /* Fonts */
  --text-base: 16px;
  --text-sm: calc(var(--text-base) * 0.875);
  --text-lg: calc(var(--text-base) * 1.125);
  --heading-xxs: calc(var(--text-base) * 0.875);
  --heading-xs: calc(var(--text-base) * 1);
  --heading-sm: calc(var(--text-base) * 1.25);
  --heading-md: calc(var(--text-base) * 1.5);
  --heading-lg: calc(var(--text-base) * 2);
  --heading-xl: calc(var(--text-base) * 2.5);
  --heading-xxl: calc(var(--text-base) * 3);
  --heading-xxxl: calc(var(--text-base) * 3.5);
  --font-weight-regular: 400;
  --font-weight-bold: 700;
  --font-weight-black: 800;
  --line-height-body: 1.5;
  --line-height-heading: 1.25;
  --font-family-heading: "Roboto", sans-serif;
  --font-family-body: "Roboto", sans-serif;

  /* Border Radius */
  --border-radius-sm: 4px;
  --border-radius-md: 8px;
  --border-radius-lg: 24px;
  --border-radius-element: var(--border-radius-lg);
  --border-radius-button: var(--border-radius-sm);
  --border-radius-input: var(--border-radius-md);

  /* Colors */
  --color-brand-01: #ed1c24;
  --color-brand-02: #0b0000;
  --color-brand-03: #fff;
  --color-brand-04: #17212e;
  --color-brand-05: #ebf1f5;
  --color-ui-01: #e6e6e6;
  --color-ui-02: #b3b3b3;
  --color-ui-03: #808080;
  --color-ui-white: #ffffff;
  --color-ui-warning: #ed1c24;
  --color-ui-light-bg: #f9f9f9;
  --color-text-black: #17212e;
  --color-text-white: #ffffff;
  --color-text-01: #444;
  --color-text-02: #ed1c24;
  --color-text-03: #fdce70;

  --eyebrow-padding: 20px;
  --content-padding: 20px;
  --content-button-padding: 28px;
}

@media only screen and (max-width: 991px) {
  :root {
    --heading-xxs: calc(var(--text-base) * 0.875);
    --heading-xs: calc(var(--text-base) * 1);
    --heading-sm: calc(var(--text-base) * 1.125);
    --heading-md: calc(var(--text-base) * 1.25);
    --heading-lg: calc(var(--text-base) * 1.5);
    --heading-xl: calc(var(--text-base) * 2);
    --heading-xxl: calc(var(--text-base) * 2.5);
    --heading-xxxl: calc(var(--text-base) * 3);
    --section-space: var(--space-xl);
    --section-side-space: var(--space-base);
    --gutter: var(--space-lg);
    --gutter-sm: var(--space-md);
    --space-xxl: calc(var(--space-base) * 2.5);
  }
}

/* Utility */
.border-radius-element {
  img,
  span,
  div,
  .elementor-slides .swiper-slide {
    border-radius: var(--border-radius-element);
  }
}
.remove-margins {
  ul {
    margin: 0 !important;
  }
}
.padding-full {
  padding: var(--section-space) var(--section-side-space);
}

.padding-top {
  padding: var(--section-space) var(--section-side-space) 0
    var(--section-side-space);
}

.padding-bottom {
  padding: 0 var(--section-side-space) var(--section-space)
    var(--section-side-space);
}

.padding-none {
  padding: 0px var(--section-side-space);
}

/* Typography */

a.elementor-element {
  text-decoration: none !important;
}

.eyebrow-heading {
  span,
  h1,
  h2,
  h3,
  h4,
  h5,
  h6 {
    line-height: 120% !important;
    font-size: var(--heading-xs);
    font-family: var(--font-family-heading);
    text-transform: uppercase;
    font-weight: var(--font-weight-black);
    letter-spacing: 1.92px;
  }
}

.headline-heading {
  span,
  h1,
  h2,
  h3,
  h4,
  h5,
  h6 {
    line-height: var(--line-height-heading) !important;
    font-size: var(--heading-xxxl);
    font-family: var(--font-family-heading);
    font-weight: var(--font-weight-black) !important;
  }
}

.heading1 {
  span,
  h1,
  h2,
  h3,
  h4,
  h5,
  h6 {
    line-height: var(--line-height-heading) !important;
    font-size: var(--heading-xxl);
    font-family: var(--font-family-heading);
    font-weight: var(--font-weight-black) !important;
  }
}

.heading2 {
  span,
  h1,
  h2,
  h3,
  h4,
  h5,
  h6 {
    line-height: var(--line-height-heading) !important;
    font-size: var(--heading-xl);
    font-family: var(--font-family-heading);
    font-weight: var(--font-weight-black) !important;
  }
}

.heading3 {
  span,
  h1,
  h2,
  h3,
  h4,
  h5,
  h6 {
    line-height: var(--line-height-heading) !important;
    font-size: var(--heading-lg);
    font-family: var(--font-family-heading);
    font-weight: var(--font-weight-black) !important;
  }
}

.heading4 {
  span,
  h1,
  h2,
  h3,
  h4,
  h5,
  h6 {
    line-height: var(--line-height-heading) !important;
    font-size: var(--heading-md);
    font-family: var(--font-family-heading);
    font-weight: var(--font-weight-black) !important;
  }
}

.heading5 {
  span,
  h1,
  h2,
  h3,
  h4,
  h5,
  h6 {
    line-height: var(--line-height-heading) !important;
    font-size: var(--heading-sm);
    font-family: var(--font-family-heading);
    font-weight: var(--font-weight-black) !important;
  }
}

.heading6 {
  span,
  h1,
  h2,
  h3,
  h4,
  h5,
  h6 {
    line-height: var(--line-height-body) !important;
    font-size: var(--heading-xs);
    font-family: var(--font-family-heading);
    font-weight: var(--font-family-black) !important;
  }
}

p {
  margin-bottom: 0 !important;
  font-size: var(--text-base) !important;
}

p--small {
  font-size: var(--text-sm);
}

p--large {
  font-size: var(--text-lg);
}

p + p {
  margin-top: var(--space-base) !important;
}

body,
button,
input,
select,
textarea {
  font-family: var(--font-family-body);
}

.elementor-button {
  border-radius: var(--border-radius-button);
  padding: var(--space-sm) var(--space-md) !important;
  font-family: var(--font-family-heading);
  font-weight: var(--font-weight-bold);
  text-transform: uppercase;
  line-height: 1.35 !important;
}

.product-card {
  overflow: hidden;
}

.product-card:hover {
  img {
    transform: scale(1.1);
  }
}

.product-card {
  img {
    transition: transform 0.3s ease;
  }
}

.resource-card:hover {
  img {
    transform: scale(1.1);
    transition: transform 0.3s ease;
  }
}

.secondary-bucket-card {
  overflow: hidden;
}

.secondary-bucket-card:hover {
  img {
    transform: scale(1.1);
  }
}

.secondary-bucket-card {
  img {
    transition: transform 0.3s ease;
  }
}

/* Slider */
.elementor-swiper {
  margin-bottom: 16px;
}

.elementor-element
  .swiper
  .swiper-pagination-bullets.swiper-pagination-horizontal {
  bottom: -18px;
}

.elementor-element.elementor-arrows-position-outside .swiper {
  width: calc(100% - 80px);
}

.elementor-slides .swiper-slide {
  position: relative;
  overflow: hidden;
}

/* Carousel */
.swiper-pagination-bullet {
  opacity: 1;
  position: relative;
  mask-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 12 12"><path fill="%23ffffff" d="M6,12c-3.31,0-6-2.69-6-6S2.69,0,6,0s6,2.69,6,6-2.69,6-6,6ZM6,1C3.24,1,1,3.24,1,6s2.24,5,5,5,5-2.24,5-5S8.76,1,6,1Z"/></svg>');
  mask-size: contain;
  mask-position: center;
  mask-repeat: no-repeat;
}

.swiper-pagination-bullet:hover,
.swiper-pagination-bullet-active {
  mask: none;
}

.elementor-swiper-button .fa-arrow-left,
.elementor-swiper-button .fa-arrow-right,
.eicon-chevron-left,
.eicon-chevron-right {
  mask-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M20.38,11.06L10.66,1.34l1.34-1.34,12,12-12,12-1.34-1.34,9.72-9.72H0v-1.89h20.38Z" style="fill-rule:evenodd;"/></svg>');
  mask-size: contain;
  mask-position: center;
  mask-repeat: no-repeat;
  display: block;
}

.elementor-swiper-button .fa-arrow-left:before,
.elementor-swiper-button .fa-arrow-right:before,
.eicon-chevron-left:before,
.eicon-chevron-right:before {
  background-color: currentColor;
}

.elementor-swiper-button .fa-arrow-left,
.eicon-chevron-left {
  transform: rotate(180deg);
}

/* Video */
.elementor-widget-video {
  border-radius: 0;
  position: relative;
  overflow: hidden;
  box-shadow: 0 10px 25px 0 rgba(0, 0, 0, 0.25);
}

.elementor-custom-embed-image-overlay:after {
  content: "";
  background-color: var(--color-text-black);
  opacity: 0.3;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: block;
}

.elementor-custom-embed-play {
  z-index: 2;
}

.elementor-custom-embed-image-overlay:hover .eicon-play {
  opacity: 0.8 !important;
}

.eicon-play {
  background-color: currentColor;
  border-radius: 100%;
  opacity: 0.5 !important;
  border: 3px solid var(--color-brand-01);
}

.eicon-play:before {
  opacity: 0;
}

.eicon-play:after {
  content: "";
  background: url("/wp-content/uploads/2025/09/video-play.svg") center center
    no-repeat transparent;
  background-size: 16px;
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  left: 2px;
  top: 1px;
}

/* Tabbed Content */
.tabs-left .e-n-tabs-heading button {
  position: relative;
}

.tabs-left .e-n-tabs-heading button:after {
  content: "";
  width: 100%;
  height: 1px;
  position: absolute;
  bottom: 0;
  left: 0;
  display: block;
  background-color: var(--color-ui-01);
}

@media only screen and (max-width: 767px) {
  .tabs-top .e-n-tabs-heading button {
    position: relative;
  }

  .tabs-top .e-n-tabs-heading button:after {
    content: "";
    width: 100%;
    height: 1px;
    position: absolute;
    bottom: 0;
    left: 0;
    display: block;
    background-color: var(--color-ui-01);
  }
}

/* Tables */

.html-table {
  table {
    border: 0;
  }

  thead {
    background-color: var(--color-brand-01);
  }

  th {
    border-color: var(--color-text-white);
    color: var(--color-text-white);
    line-height: 1.5;
    font-size: var(--text-base);
    font-family: var(--font-family-body);
    text-transform: uppercase;
    font-weight: var(--font-weight-bold);
    padding: var(--space-sm) var(--space-base);
  }

  tbody tr:nth-child(odd) {
    background-color: var(--color-ui-white);
  }

  tbody tr:nth-child(even) {
    background-color: var(--color-ui-01);
  }

  td {
    border: 0;
    border-bottom: 1px solid var(--color-ui-02);
    text-align: center;
    font-size: var(--text-base);
    padding: var(--space-sm) var(--space-base);
  }
}

.sw-table::-webkit-scrollbar-track,
.html-table::-webkit-scrollbar-track {
  background: var(--color-brand-05);
  border: 1px solid var(--color-brand-03);
  height: 8px;
  border-radius: 12px;
}

.sw-table::-webkit-scrollbar,
.html-table::-webkit-scrollbar {
  width: 8px;
  background: var(--color-brand-01);
  height: 8px;
  border-radius: 12px;
}

.sw-table::-webkit-scrollbar-thumb,
.html-table::-webkit-scrollbar-thumb {
  background: var(--color-brand-01);
  width: 40px;
  border-radius: 12px;
}

@media only screen and (max-width: 1024px) {
  .sw-table {
    width: 100% !important;
    overflow-x: scroll !important;
    overflow-y: hidden !important;
    min-width: auto !important;
    > div {
      width: 800px !important;
    }
  }
  .html-table {
    overflow: auto;

    table {
      width: 1024px;
    }
  }
}

/* Forms */
form {
  .gfield_label {
    color: var(--color-text-black) !important;
    line-height: 1.5;
    font-size: var(--text-base) !important;
    font-family: var(--font-family-body);
    font-weight: var(--font-weight-bold) !important;
    float: left;
  }

  .gfield_required {
    text-transform: lowercase;
    color: var(--color-ui-warning);
    font-size: var(--text-sm) !important;
  }

  .ginput_container input[type="text"],
  .ginput_container input[type="tel"],
  .ginput_container input[type="email"],
  .ginput_container select,
  .ginput_container input[type="file"] {
    border: 1px solid var(--color-ui-02) !important;
    padding: var(--space-sm) var(--space-base) !important;
    height: 48px !important;
    line-height: 48px !important;
  }

  .ginput_container select {
    padding: 0 var(--space-base) !important;
  }

  .ginput_container input[type="file"] {
    padding: 0 !important;
    border-radius: 0;
  }

  .ginput_container input[type="file"],
  .ginput_container input[type="text"],
  .ginput_container input[type="tel"],
  .ginput_container input[type="email"],
  .ginput_container select,
  .ginput_container textarea {
    color: #444;
    border: 1.8px solid #d1d1d1 !important;
    background-color: var(--color-ui-white);
    font-family: var(--font-family-body);
    font-size: var(--text-base);
    font-weight: var(--font-weight-regular);
    border-radius: 0 !important;
  }

  .ginput_container textarea {
    color: #444;
    border: 1.8px solid #d1d1d1 !important;
    padding: var(--space-sm) var(--space-base) !important;
    height: 96px !important;
  }

  label + .gfield_description {
    text-transform: lowercase;
    color: var(--color-text-black);
    font-size: var(--text-sm) !important;
    left: 8px;
    top: 1px;
    position: relative;
  }

  .gform_fields {
    row-gap: var(--space-base) !important;
  }

  .gform_button {
    border-radius: var(--border-radius-button);
    padding: var(--space-sm) var(--space-md) !important;
    font-family: var(--font-family-heading) !important;
    font-weight: var(--font-weight-bold) !important;
    text-transform: uppercase !important;
    line-height: 1.35 !important;
    color: var(--color-text-white);
    border: 2px solid var(--color-brand-03) !important;
    background-color: var(--color-brand-03) !important;
    font-size: var(--text-base) !important;
  }

  .gform_button:hover {
    border: 2px solid var(--color-brand-03) !important;
    background-color: var(--color-ui-white) !important;
    color: var(--color-brand-03) !important;
  }
}

.quick-contact-form_wrapper {
  .gform_required_legend {
    display: none;
  }
}

.form-wide form .gfield--width-half {
  grid-column: 1 / -1;
}

.form-light form .gfield_label,
.form-light form .gfield_required,
.form-light form .gfield_description {
  color: var(--color-text-white) !important;
}

/* Mobile Menu */
.off-canvas-toggle a[aria-expanded="true"] i:before {
  content: "\f00d";
}

.elementor-widget-off-canvas {
  .e-off-canvas__overlay {
    background-color: transparent !important;
  }

  .e-off-canvas__content {
    width: 100%;
  }

  .e-off-canvas__main {
    height: calc(100% - 143px);
    top: 143px;
    overflow-y: auto;
  }
}

.e-off-canvas .elementor-nav-menu--main {
  ul {
    position: relative;
    height: 100%;
  }

  ul li {
    position: relative;
  }

  ul li > .submenu-toggle {
    cursor: pointer;
    position: absolute;
    width: 40px;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    text-align: right;
  }

  ul li a {
    margin: 0;
    border: 0;
  }

  ul li a:after {
    content: "";
    opacity: 1 !important;
    height: 1px;
    width: 100%;
    background-color: #e8f3fb;
    display: block;
    position: absolute;
    left: 0;
    bottom: 0;
  }

  ul li a > span {
    display: none !important;
  }

  ul ul {
    position: absolute;
    left: 100vw !important;
    transition: left 0.2s ease-in-out;
    z-index: 3;
    background-color: white;
    width: 100% !important;
    top: 0 !important;
    transition: none;
    margin-left: 0 !important;
    margin-top: 0 !important;
  }

  ul li.submenu-active {
    position: static;
  }

  ul li.submenu-active > ul {
    left: 0 !important;
    transition: left 0.2s ease-in-out;
    z-index: 9;
    display: block !important;
  }

  button.submenu-toggle {
    position: relative;
    width: 40px;
    height: 40px;
    text-decoration: none;
    text-transform: uppercase;
    letter-spacing: 1px;
    border: 0;
    line-height: 1.5;
    color: var(--color-text-black);
    font-weight: var(--font-weight-bold);
    background-color: transparent;
    padding: 0;
  }

  button.submenu-toggle:before {
    content: "";
    width: 20px;
    height: 20px;
    display: block;
    background-color: var(--color-brand-01);
    mask-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 640 640"><!--!Font Awesome Free v7.0.1 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2025 Fonticons, Inc.--><path d="M566.6 342.6C579.1 330.1 579.1 309.8 566.6 297.3L406.6 137.3C394.1 124.8 373.8 124.8 361.3 137.3C348.8 149.8 348.8 170.1 361.3 182.6L466.7 288L96 288C78.3 288 64 302.3 64 320C64 337.7 78.3 352 96 352L466.7 352L361.3 457.4C348.8 469.9 348.8 490.2 361.3 502.7C373.8 515.2 394.1 515.2 406.6 502.7L566.6 342.7z"/></svg>');
    mask-repeat: no-repeat;
    mask-position: right center;
    mask-size: contain;
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
  }

  .submenu-back {
    border-bottom: 1px solid var(--color-ui-03);
  }

  button.submenu-back-button {
    position: relative;
    display: flex;
    align-items: center;
    text-decoration: none;
    text-transform: uppercase;
    letter-spacing: 1px;
    border: 0;
    line-height: 1.5;
    padding: 13px 0;
    color: var(--color-text-black);
    font-weight: var(--font-weight-bold);
    background-color: transparent;
  }

  .submenu-back-button:before {
    content: "";
    width: 20px;
    height: 20px;
    display: block;
    margin-right: 8px;
    background-color: var(--color-brand-02);
    mask-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 640 640"><!--!Font Awesome Pro v7.0.1 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2025 Fonticons, Inc.--><path d="M66.3 314.3C63.2 317.4 63.2 322.5 66.3 325.6L242.3 501.6C245.4 504.7 250.5 504.7 253.6 501.6C256.7 498.5 256.7 493.4 253.6 490.3L91.3 328L568 328C572.4 328 576 324.4 576 320C576 315.6 572.4 312 568 312L91.3 312L253.7 149.7C256.8 146.6 256.8 141.5 253.7 138.4C250.6 135.3 245.5 135.3 242.4 138.4L66.4 314.4z"/></svg>');
    mask-repeat: no-repeat;
    mask-position: left center;
    mask-size: contain;
  }
}

#mobile-nav .search-container {
  padding: var(--space-md) 0;

  .search-form input {
    width: 100%;
  }
}

.mobile-search {
  display: none;
}

.mobile-search-trigger.openSearch i::before {
  content: "\f00d";
}

.mobile-nav__utility {
  display: flex;
  flex-direction: column;
  gap: var(--space-md);
  margin-top: var(--space-md);

  i {
    width: 20px;
    color: var(--color-brand-03);
  }

  a {
    text-decoration: none;
    color: var(--color-text-black);
  }
}

.ginput_container .gform_button_select_files,
.gform-footer button[type="submit"],
.rfq-button,
.forms.calculator .submit,
.forms.calculator .clear-calculator,
.blog-card:hover div[data-widget_type="icon-list.default"] > div,
.product-card:hover div[data-widget_type="icon-list.default"] > div,
.outline-button a:hover,
.gradient-button button,
.gradient-button a {
  background-image: var(
    --Gradient-01,
    linear-gradient(180deg, #ed1c24 0%, #c81017 100%)
  );
  background-size: 300% 100%;
  moz-transition: all 0.4s ease-in-out !important;
  -o-transition: all 0.4s ease-in-out !important;
  -webkit-transition: all 0.4s ease-in-out !important;
  transition: all 0.4s ease-in-out !important;
  border: none !important;
  border-radius: 0 !important;
}

.blog-card:hover div[data-widget_type="icon-list.default"] > div span,
.product-card:hover div[data-widget_type="icon-list.default"] > div span,
.outline-button a:hover {
  color: var(--color-text-white) !important;
}

.outline-button a:hover {
  border: 2px solid var(--color-brand-01) !important;
  color: var(--color-text-white);
}

.blog-card:hover div[data-widget_type="icon-list.default"] > div,
.product-card:hover div[data-widget_type="icon-list.default"] > div {
  border: 2px solid var(--color-brand-01) !important;
}

.ginput_container .gform_button_select_files:hover,
.gform-footer button[type="submit"]:hover,
.rfq-button:hover,
.forms.calculator .submit:hover,
.forms.calculator .clear-calculator:hover,
.gradient-button button:hover,
.gradient-button a:hover {
  background-image: var(
    --Button-Hover,
    linear-gradient(
      265deg,
      #ed1c24 28.83%,
      #ff9094 52.29%,
      #ff9094 54.82%,
      #ed1c24 101.02%
    )
  );
  background-position: 100% 0;
}

.reverse-icon li,
.reverse-icon a {
  flex-flow: row-reverse;
  justify-content: start;
  gap: 8px;

  &:nth-child(1) {
    padding: 0;
  }
}

.news-link a {
  padding: 10px 0 !important;

  i:before {
    color: var(--color-brand-01);
  }
}

div[data-widget_type="video.default"] {
  border-radius: 0;

  div {
    border-radius: 0;
  }
}

.gradient-bg {
  background: linear-gradient(180deg, #f9f9f9 0%, #fff 100%) !important;
}

/* Steel Warehouse Theme */
.red-gradient-cta {
  background: linear-gradient(
    270deg,
    rgba(11, 0, 0, 0) 0%,
    rgba(11, 0, 0, 0.5) 90%
  );
}
.header-bottom {
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
  z-index: 1;
}

.elementor-widget-off-canvas .e-off-canvas {
  top: 102px !important;
}

.elementor-element.elementor-pagination-position-outside .swiper {
  padding-bottom: 0 !important;
}

.home-cta-slider {
  .swiper-pagination-bullet {
    mask: none;
    height: 86px;
    width: 5px;
    border-radius: 0;
    background: #f9f9f9;
  }

  .swiper-pagination-horizontal {
    display: flex;
    flex-flow: column;
    gap: 12px;
  }

  .swiper-pagination-bullet:hover,
  .swiper-pagination-bullet-active {
    background: var(--color-brand-01);
  }
}

.elementor-7
  .elementor-element.elementor-element-7bc0776e.border-radius-element {
  div {
    border-radius: 0;
  }
}

.elementor-7 .elementor-element.elementor-element-572c8fae {
  a,
  path,
  span {
    transition: all 0.2s ease-in-out;
    padding-bottom: 8px;
  }

  a:hover {
    svg path {
      fill: var(--color-brand-01);
    }

    span {
      color: var(--color-brand-01);
      border-bottom: 1px solid var(--color-brand-01);
    }
  }
}

.language {
  display: flex;
  align-items: center;
  gap: 8px;
  position: relative;
  select{
    width: 100px;
    border: none;
    font-family: var(--font-family-body);
    font-size: var(--text-sm);
    color: #3C3C3C;
  }

  ul ul>li {
    padding: 10px 10px 10px 0 !important;
    .menu-link{
      display: none;
    }
  }

  &::before {
    content: "";
    width: 20px;
    height: 20px;
    display: flex;
    align-items: center;
    justify-self: center;
    background-color: var(--color-brand-01);
    mask-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 640 640"><!--!Font Awesome Free v7.0.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2025 Fonticons, Inc.--><path d="M415.9 344L225 344C227.9 408.5 242.2 467.9 262.5 511.4C273.9 535.9 286.2 553.2 297.6 563.8C308.8 574.3 316.5 576 320.5 576C324.5 576 332.2 574.3 343.4 563.8C354.8 553.2 367.1 535.8 378.5 511.4C398.8 467.9 413.1 408.5 416 344zM224.9 296L415.8 296C413 231.5 398.7 172.1 378.4 128.6C367 104.2 354.7 86.8 343.3 76.2C332.1 65.7 324.4 64 320.4 64C316.4 64 308.7 65.7 297.5 76.2C286.1 86.8 273.8 104.2 262.4 128.6C242.1 172.1 227.8 231.5 224.9 296zM176.9 296C180.4 210.4 202.5 130.9 234.8 78.7C142.7 111.3 74.9 195.2 65.5 296L176.9 296zM65.5 344C74.9 444.8 142.7 528.7 234.8 561.3C202.5 509.1 180.4 429.6 176.9 344L65.5 344zM463.9 344C460.4 429.6 438.3 509.1 406 561.3C498.1 528.6 565.9 444.8 575.3 344L463.9 344zM575.3 296C565.9 195.2 498.1 111.3 406 78.7C438.3 130.9 460.4 210.4 463.9 296L575.3 296z"/></svg>');
    mask-repeat: no-repeat;
    mask-position: left center;
    mask-size: contain;
  }

  nav.elementor-nav-menu--dropdown.elementor-nav-menu__container {
    margin-top: 0;
    position: absolute;
    top: -9px;
    left: 20px;
    z-index: 5;

    > ul > li > a > .sub-arrow > i {
      color: var(--color-brand-01);
      font-size: 16px;
    }

    ul > li {
      padding: 10px;
      width: 100px;

      a {
        border-left: none;
      }
    }
  }
}
.elementor-nav-menu .sub-arrow{
  display: none !important;
}
.elementor-widget-search .e-search-submit {
  margin-inline-start: 0 !important;
  border-bottom: 0.5px solid var(--color-ui-02) !important;
  padding: 5px !important;
}

.elementor-widget-search .e-search-label > i {
  inset-inline-start: auto;
  right: 10px;

  &::before {
    display: none;
  }

  &::after {
    content: "";
    width: 20px;
    height: 20px;
    display: flex;
    align-items: center;
    justify-self: center;
    background-color: var(--color-brand-01);
    mask-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 640 640"><!--!Font Awesome Free v7.0.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2025 Fonticons, Inc.--><path d="M480 272C480 317.9 465.1 360.3 440 394.7L566.6 521.4C579.1 533.9 579.1 554.2 566.6 566.7C554.1 579.2 533.8 579.2 521.3 566.7L394.7 440C360.3 465.1 317.9 480 272 480C157.1 480 64 386.9 64 272C64 157.1 157.1 64 272 64C386.9 64 480 157.1 480 272zM272 416C351.5 416 416 351.5 416 272C416 192.5 351.5 128 272 128C192.5 128 128 192.5 128 272C128 351.5 192.5 416 272 416z"/></svg>');
    mask-repeat: no-repeat;
    mask-position: left center;
    mask-size: contain;
    shape-rendering: auto;
    position: relative;
    right: 30px;
  }
}

.elementor-1802 .elementor-element.elementor-element-8037084 .e-search-input {
  padding: 0;
  min-height: 23px;
}
.top-nav {
  .elementor-nav-menu {
    flex-wrap: nowrap !important;
  }

  nav > ul > li {
    > a {
      &:hover {
        border-radius: 30px;
        background: rgba(230, 230, 230, 0.7);
        padding-left: 8px;
      }

      &::after {
        display: none !important;
      }
    }
  }

  nav > ul > li.menu-item-has-children {
    &:nth-child(1) {
      > ul {
        left: -230px !important;
      }
    }

    &:nth-child(2) {
      > ul {
        left: -349px !important;
        height: 450px !important;
      }
    }
    &:nth-child(3),
    &:nth-child(4),
    &:nth-child(5),
    &:nth-child(6) {
      > ul {
        width: 253px !important;
        min-height: 600px !important;
        background: #f9f9f9;
        padding-left: 0;
        padding-right: 0;
        li {
          width: 100% !important;
        }
      }
      .placeholder {
        display: none;
      }
    }
    &:nth-child(4) {
      > ul {
        min-height: 550px !important;
      }
    }
    &:nth-child(5) {
      > ul {
        min-height: 555px !important;
      }
    }
    &:nth-child(5) {
      > ul {
        min-height: 700px !important;
        column-count: 2;
        column-gap: 10px;
        list-style-position: inside;
        width: 420px !important;
        min-height: 470px !important;
        .sub-menu-title{
          display: none;
        }
      }
    }
    &:nth-child(6) {
      > ul {
        min-height: fit-content !important;
      }
    }
    &:nth-child(7) {
      > ul {
        left: -1005px !important;
      }
    }
    .placeholder {
      padding-top: 28px;
      padding-right: 60px;
      a {
        display: flex;
        flex-flow: row;
        gap: 8px;
        color: var(--color-brand-01);
        font-size: var(--text-sm);
        padding: 0;

        &:hover {
          padding: 0;
        }

        &:after {
          content: "";
          width: 12px;
          height: 12px;
          display: flex;
          align-items: center;
          justify-self: center;
          background-color: var(--color-brand-01);
          mask-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 384 512"><!--!Font Awesome Pro v7.2.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2026 Fonticons, Inc.--><path d="M368 64c8.8 0 16 7.2 16 16l0 256c0 8.8-7.2 16-16 16s-16-7.2-16-16l0-217.4-324.7 324.7c-6.2 6.2-16.4 6.2-22.6 0s-6.2-16.4 0-22.6L329.4 96 112 96c-8.8 0-16-7.2-16-16s7.2-16 16-16l256 0z"/></svg>');
          mask-repeat: no-repeat;
          mask-position: left center;
          mask-size: contain;
          shape-rendering: auto;
        }
      }
    }
  }

  nav > ul > li.menu-item-has-children > ul {
    top: 68px !important;
    width: 1169px !important;
    max-width: none !important;
    height: 100% !important;
    min-height: 392px !important;
    margin-left: 0 !important;
    padding-top: 28px;
    padding-left: 20px;
    padding-right: 60px;
    background: linear-gradient(
      90deg,
      rgba(249, 249, 249, 1) 26%,
      rgba(255, 255, 255, 1) 20%
    );
    box-shadow: 0 10px 24px 0 rgba(0, 0, 0, 0.1);

    > li {
      width: 233px !important;
      background-color: var(--UI-Light-BG, #f9f9f9);
      position: unset !important;

      ul {
        width: 233px !important;
        height: 100% !important;
        min-height: 392px !important;
        margin-top: 0 !important;
        top: 0 !important;

        li {
          display: flex;
          align-items: center;
          border: none;
          padding-left: 0;
          position: unset;
          transition: none;

          a {
            &:hover {
              color: var(--color-brand-01);
            }
          }

          &:hover {
            border-bottom: 1px solid var(--color-brand-01);
            color: var(--color-brand-01);

            &::after {
              background-color: var(--color-brand-01);
            }
          }

          &.menu-item-has-children {
            &::after {
              content: "";
              width: 20px;
              height: 20px;
              display: flex;
              align-items: center;
              justify-self: center;
              background-color: var(--color-brand-02);
              mask-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 640 640"><!--!Font Awesome Free v7.0.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2025 Fonticons, Inc.--><path d="M439.1 297.4C451.6 309.9 451.6 330.2 439.1 342.7L279.1 502.7C266.6 515.2 246.3 515.2 233.8 502.7C221.3 490.2 221.3 469.9 233.8 457.4L371.2 320L233.9 182.6C221.4 170.1 221.4 149.8 233.9 137.3C246.4 124.8 266.7 124.8 279.2 137.3L439.2 297.3z"/></svg>');
              mask-repeat: no-repeat;
              mask-position: left center;
              mask-size: contain;
              shape-rendering: auto;
            }
          }
        }

        li > ul {
          left: 32px !important;
          border-left: 1px solid var(--color-ui-01);
        }
      }

      > a {
        transition: none;
        text-wrap: wrap;
        &:hover {
          border-left: 4px solid var(--Text-Accent-02, #ed1c24);
        }
      }

      > a.highlighted {
        border-left: 4px solid var(--Text-Accent-02, #ed1c24);
        background: #fff;
        padding: 13px 20px !important;
      }

      .nav-item-content-block {
        display: none;
      }
    }

    a {
      color: #000;
      font-family: var(--font-family-body);
      font-size: var(--text-sm);
      font-weight: var(--font-weight-regular);
      line-height: 150%;
      background-color: transparent !important;
      border: none;
      white-space: wrap;

      &.highlighted {
        background-color: #fff !important;
      }

      &:hover {
        background-color: #fff !important;
        color: var(--color-brand-01);
        border: none;
      }
    }

    .sub-menu-title {
      display: block;
      margin-bottom: 25px;
      color: #000;
      font-family: var(--font-family-heading);
      font-size: var(--heading-sm);
      font-style: normal;
      font-weight: var(--font-weight-black);
      line-height: 120%;
      padding-left: 20px;
    }

    .placeholder {
      width: 233px;
      height: 100%;
      position: absolute;
      right: 0;
      top: 0;
      background-color: var(--color-brand-03);
    }
  }
}

.sitemap{
  ul,a{
    color: var(--color-brand-01);
  }
}

#breadcrumbs {
  display: flex;
  align-items: center;
  flex-flow: row;
  width: 100%;

  span {
    display: flex;
    align-items: center;
    gap: 16px;
    flex-wrap: wrap;
    row-gap: 0;

    a {
      color: var(--color-ui-03);
      font-size: 14px !important;
      display: flex;
    }
  }

  span.breadcrumb_last {
    /* color: #3C3C3C; */
    font-size: 14px !important;
  }

  .fas.fa-house {
    position: relative;

    &::after {
      content: "";
      width: 16px;
      height: 16px;
      display: flex;
      align-items: center;
      justify-self: center;
      background-color: var(--color-brand-01);
      mask-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 576 512"><!--!Font Awesome Free v6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2025 Fonticons, Inc.--><path d="M575.8 255.5c0 18-15 32.1-32 32.1l-32 0 .7 160.2c0 2.7-.2 5.4-.5 8.1l0 16.2c0 22.1-17.9 40-40 40l-16 0c-1.1 0-2.2 0-3.3-.1c-1.4 .1-2.8 .1-4.2 .1L416 512l-24 0c-22.1 0-40-17.9-40-40l0-24 0-64c0-17.7-14.3-32-32-32l-64 0c-17.7 0-32 14.3-32 32l0 64 0 24c0 22.1-17.9 40-40 40l-24 0-31.9 0c-1.5 0-3-.1-4.5-.2c-1.2 .1-2.4 .2-3.6 .2l-16 0c-22.1 0-40-17.9-40-40l0-112c0-.9 0-1.9 .1-2.8l0-69.7-32 0c-18 0-32-14-32-32.1c0-9 3-17 10-24L266.4 8c7-7 15-8 22-8s15 2 21 7L564.8 231.5c8 7 12 15 11 24z"/></svg>');
      mask-repeat: no-repeat;
      mask-position: left center;
      mask-size: contain;
      shape-rendering: auto;
    }
  }

  .breadcrumb-seperator {
    &::after {
      content: "";
      width: 30px;
      height: 30px;
      display: flex;
      align-items: center;
      justify-self: center;
      background-color: #808080;
      mask-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 640 640"><!--!Font Awesome Pro v7.0.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2025 Fonticons, Inc.--><path d="M64 304L576 304L576 336L64 336L64 304z"/></svg>');
      mask-repeat: no-repeat;
      mask-position: left center;
      mask-size: contain;
      shape-rendering: auto;
    }
  }
}

.newsletter-form_wrapper {
  margin-top: 16px;

  h2 {
    display: none;
  }

  input[type="email"] {
    border-radius: 1px !important;
    border: 1px solid #a1a1aa !important;
    color: #a1a1aa !important;
    background-color: var(--color-brand-02) !important;
  }

  input[type="submit"] {
    border-radius: 1px !important;
    border: none !important;
    background-image: var(
      --Gradient-01,
      linear-gradient(180deg, #ed1c24 0%, #c81017 100%)
    );
    background-size: 300% 100%;
    width: 100% !important;
    color: var(--color-text-white);
    font-family: var(--font-family-body);
    font-size: var(--text-base);
    font-style: normal;
    font-weight: 700;
    line-height: 100%;
    /* 16px */
    letter-spacing: 0.96px;
    text-transform: uppercase;
    moz-transition: all 0.4s ease-in-out !important;
    -o-transition: all 0.4s ease-in-out !important;
    -webkit-transition: all 0.4s ease-in-out !important;
    transition: all 0.4s ease-in-out !important;
  }

  input[type="submit"]:hover {
    background-image: var(
      --Button-Hover,
      linear-gradient(
        265deg,
        #ed1c24 28.83%,
        #ff9094 52.29%,
        #ff9094 54.82%,
        #ed1c24 101.02%
      )
    );
    background-position: 100% 0;
  }

  .gform_required_legend {
    display: none;
  }
}

.back-to-top {
  cursor: pointer;

  > div:nth-child(2) span {
    padding: 10px;
    border-radius: 100px;
    border: 1px solid rgba(255, 255, 255, 0.5);
    background: rgba(255, 255, 255, 0.1);
    display: flex;

    &::after {
      content: "";
      width: 20px;
      height: 20px;
      display: flex;
      align-items: center;
      justify-self: center;
      background-color: rgba(255, 255, 255, 0.5);
      mask-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 640 640"><!--!Font Awesome Pro v7.0.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2025 Fonticons, Inc.--><path d="M337.5 79C328.1 69.6 312.9 69.6 303.6 79L135.5 247C126.1 256.4 126.1 271.6 135.5 280.9C144.9 290.2 160.1 290.3 169.4 280.9L296.4 153.9L296.4 560C296.4 573.3 307.1 584 320.4 584C333.7 584 344.4 573.3 344.4 560L344.4 153.9L471.4 280.9C480.8 290.3 496 290.3 505.3 280.9C514.6 271.5 514.7 256.3 505.3 247L337.5 79z"/></svg>');
      mask-repeat: no-repeat;
      mask-position: left center;
      mask-size: contain;
      shape-rendering: auto;
    }
  }
}

.highlights {
  img {
    object-fit: cover;
    aspect-ratio: 1/1;
  }
}

.elementor-7 .elementor-element.elementor-element-2b7e893 a {
  font-size: inherit;
  font-weight: 800;
  text-decoration: none;
}

/* Calculators */
.forms.calculator {
  .fieldset {
    display: flex;
    flex-flow: row wrap;
    margin: 0 -12px;

    .w33 {
      width: 33%;
    }

    .w50 {
      width: 50%;
    }

    .w100 {
      width: 100%;
    }

    .input-group {
      display: flex;
      flex-flow: column;
      padding: 0 12px;
      margin-bottom: 20px;
      box-shadow: none;
    }

    .result {
      font-size: 20px;
      display: flex;
      flex-flow: row;
      align-items: center;
      justify-content: center;
      opacity: 0;
      height: 0;
      -moz-transition: opacity 0.3s ease;
      -webkit-transition: opacity 0.3s ease;
      -o-transition: opacity 0.3s ease;
      transition: opacity 0.3s ease;
      margin-bottom: 16px;

      &.active {
        opacity: 1;
        height: auto;

        .clear-calculator {
          display: flex;
        }
      }
    }

    .rfq-button,
    .clear-calculator {
      display: none;
      color: var(--color-text-white);
      align-items: center;
      justify-content: center;
      font-size: 14px;
      letter-spacing: 1.7px;
      border: 0;
    }

    .rfq-button {
      display: flex;
    }
  }

  #cw-rfq-link {
    padding: 10px;
  }
}

p.min-order {
  display: flex;
  gap: var(--space-xs);
  background: var(--UI-Light-BG, #f9f9f9);
  padding: var(--space-base);
  max-width: 360px;
  width: 100%;
  color: var(--Text-Black, #3c3c3c);
  font-feature-settings:
    "liga" off,
    "clig" off;

  /* Body Text/Normal */
  font-family: var(--font-family-body);
  font-size: var(--text-base);
  font-style: normal;
  font-weight: var(--font-weight-regular);
  line-height: 150%;
  /* 24px */

  &::before {
    content: "";
    width: 20px;
    height: 20px;
    display: flex;
    align-items: center;
    justify-self: center;
    background-color: var(--color-brand-01);
    mask-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 640 640"><!--!Font Awesome Free v7.0.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2025 Fonticons, Inc.--><path d="M320 576C461.4 576 576 461.4 576 320C576 178.6 461.4 64 320 64C178.6 64 64 178.6 64 320C64 461.4 178.6 576 320 576zM288 224C288 206.3 302.3 192 320 192C337.7 192 352 206.3 352 224C352 241.7 337.7 256 320 256C302.3 256 288 241.7 288 224zM280 288L328 288C341.3 288 352 298.7 352 312L352 400L360 400C373.3 400 384 410.7 384 424C384 437.3 373.3 448 360 448L280 448C266.7 448 256 437.3 256 424C256 410.7 266.7 400 280 400L304 400L304 336L280 336C266.7 336 256 325.3 256 312C256 298.7 266.7 288 280 288z"/></svg>');
    mask-repeat: no-repeat;
    mask-position: left center;
    mask-size: contain;
    shape-rendering: auto;
  }
}

.rfq-form-container {
  background: linear-gradient(171deg, #f9f9f9 28.61%, #c6c6c6 385.57%);

  .contact-form_wrapper,
  .rfq-form_wrapper {
    .gform_title,
    .gform_description {
      display: none;
    }

    .gform_fields {
      select {
        height: 48px;
        padding-top: 10px;
      }
    }
  }

  .rfq-form_wrapper {
    .gform_fields {
      #field_4_19,
      #field_4_20 {
        border-bottom: none;

        .gsection_title {
          display: flex;
          align-items: center;
          gap: 12px;

          &:before {
            height: 30px;
            width: 30px;
            display: flex;
            justify-content: center;
            align-items: center;
            color: var(--color-text-white);
            background: var(--color-brand-01);
            font-family: var(--font-family-heading);
            font-size: var(--heading-md);
            font-style: normal;
            font-weight: var(--font-weight-black);
            line-height: 120%;
            /* 28.8px */
          }
        }
      }

      #field_4_19 {
        .gsection_title {
          &:before {
            content: "1";
          }
        }
      }

      #field_4_20 {
        margin-top: 30px;
        .gsection_title {
          &:before {
            content: "2";
          }
        }
      }
    }
  }
  .contact-form_wrapper {
    .gform_fields {
      #field_1_14,
      #field_1_15 {
        border-bottom: none;

        .gsection_title {
          display: flex;
          align-items: center;
          gap: 12px;
          font-family: var(--font-family-heading);
          font-size: var(--heading-md);
          font-weight: var(--font-weight-black);

          &:before {
            height: 30px;
            width: 30px;
            display: flex;
            justify-content: center;
            align-items: center;
            color: var(--color-text-white);
            background: var(--color-brand-01);
            font-family: var(--font-family-heading);
            font-size: var(--heading-md);
            font-style: normal;
            font-weight: var(--font-weight-black);
            line-height: 120%;
            /* 28.8px */
          }
        }
      }

      #field_1_14 {
        .gsection_title {
          &:before {
            content: "1";
          }
        }
      }

      #field_1_15 {
        .gsection_title {
          &:before {
            content: "2";
          }
        }
      }
    }
  }

  .gfield:where(.gfield--type-fileupload, .gfield--input-type-fileupload)
    .gform_drop_area::before {
    color: var(--color-brand-01) !important;
  }
}

.tl-sec {
  display: flex;
  justify-content: center;
  > div {
    width: 100%;
  }
}

.tl-sec::after {
  position: absolute;
  content: "";
  width: 2px;
  height: calc(100% + 30px);
  background: #eee;
  margin: -30px auto 0;
}

.w100 {
  width: 100%;
}
.w50 {
  width: 50%;
}

.block.white-bg {
  background-color: var(--color-ui-white);
}
.block.black-bg {
  background-color: #262626;
  .nested {
    h2,
    h4,
    p {
      color: var(--color-text-white);
    }
  }
}
.block.white-bg,
.block.black-bg {
  .column {
    display: flex;
    justify-content: center;
    min-height: 256px;
    &:not(:first-child){
      position: relative;
    }
  }
  .column:nth-child(odd){
    .timeline-swiper{
      /* position: absolute; */
      /* width: 523px; */
      margin: auto;
    }
  }
}

/* Each column sits relative so z-index works */
.block > .column.w100 {
  position: relative;
  z-index: 1; /* baseline */
}

/* Every column after the first overlaps the one above it */
.block > .column.w100 + .column.w100 {
  margin-top: -170px; /* tune this value — 20–50px is typical */
}

/* Ensure later entries stack on top of earlier ones */
.block > .column.w100:nth-child(1)  { z-index: 1; }
.block > .column.w100:nth-child(2)  { z-index: 2; }
.block > .column.w100:nth-child(3)  { z-index: 3; }
.block > .column.w100:nth-child(4)  { z-index: 4; }
.block > .column.w100:nth-child(5)  { z-index: 5; }
.block > .column.w100:nth-child(6)  { z-index: 6; }


/* .block.white-bg,
.block.black-bg{
  display: flex;
  flex-flow: column;
  gap: 0;
  position: relative;
  > .column{
    position: relative;
  }
  > .column:nth-child(even){
    bottom: 350px;
    &:not(:nth-child(2)){
      bottom: 900px;
    }
  }
  > .column:nth-child(odd):not(:first-child){
    bottom: 650px;
  }
} */

.nested {
  display: flex;
  justify-content: center;
  position: relative;

  .block {
    max-width: 1200px;
    margin: 0 auto;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: center;
    background-position: center center;
    background-repeat: no-repeat;
    padding-top: 30px;
    padding-bottom: 30px;
    background-size: cover;
    position: relative;

    .column {
      background-size: cover;
      display: block;
    }
  }

  .block .column:first-child {
    padding-left: 0 !important;
  }

  .block .column:last-child {
    margin-right: auto;
  }

  .timeline-entry {
    min-height: 265px;
  }

  .timeline-swiper {
    margin: auto;
  }

  .timeline-left,
  .timeline-right {
    width: 50%;
    position: relative;
    min-height: 200px;

    h2 {
      font-size: 48px;
      font-weight: 700;
      position: relative;
      float: left;
      margin-right: 30px;
      margin-bottom: 15px;
      max-width: 110px;

      &::after {
        position: absolute;
        content: "";
        height: 2px;
        width: 50%;
        background: #ca2437;
        bottom: -5px;
        left: 0;
      }
    }

    h4 {
      font-size: 16px;
      letter-spacing: 1.1px;
      color: var(--color-brand-01);
      font-weight: 300;
      line-height: 1.19;
      text-transform: uppercase;
      margin-bottom: 10px;
      clear: none;
    }

    &::after {
      position: absolute;
      content: "";
      width: 34px;
      height: 26px;
      background-size: contain;
      background-repeat: no-repeat;
      top: 10px;
      z-index: 1;
    }
  }

  .timeline-left {
    margin-left: 0;
    margin-right: auto;
    padding-right: 70px;

    &::after {
      background-image: url(/wp-content/uploads/2025/09/tl-left-arrow.png);
      right: -17px;
    }
  }

  .timeline-right {
    margin-right: 0;
    margin-left: auto;
    padding-left: 70px;

    &::after {
      background-image: url(/wp-content/uploads/2025/09/tl-right-arrow.png);
      left: -17px;
    }
  }

  .timeline-left h2,
  .timeline-right h2 {
    font-size: 48px;
    font-weight: 700;
    position: relative;
    float: left;
    margin-right: 30px;
    max-width: 140px;
  }

  .timeline-swiper {
    .image-slide {
      > a {
        display: block;
        height: 357px;
        overflow: hidden;

        img {
          height: 100%;
          width: 100%;
          object-fit: cover;
        }
      }
    }

    .slick-arrow {
      text-decoration: none;
      display: block;
      width: 40px;
      height: 37px;
      margin: -20px 0 0;
      position: absolute;
      top: 50%;
      z-index: 10;
      overflow: hidden;
      opacity: 1;
      cursor: pointer;
      color: rgba(0, 0, 0, 0.8);
      text-shadow: 1px 1px 0 rgba(255, 255, 255, 0.3);
      -webkit-transition: all 0.2s ease-in-out;
      -moz-transition: all 0.2s ease-in-out;
      -ms-transition: all 0.2s ease-in-out;
      -o-transition: all 0.2s ease-in-out;
      transition: all 0.2s ease-in-out;

      &.slick-next,
      &.slick-prev {
        background: transparent;

        &:before {
          font-family: "Font Awesome 5 Free";
          color: white;
          font-size: 32px;
          display: inline-block;
          font-weight: 900;
        }
      }

      &.slick-next {
        right: 2%;
        text-align: right;

        &:before {
          content: "\f105";
        }
      }

      &.slick-prev {
        left: 2%;

        &:before {
          content: "\f104";
        }
      }
    }

    .slick-dots {
      display: flex;
      gap: 16px;
      justify-content: center;
      align-items: center;

      button {
        display: none;
      }

      > li {
        &::marker {
          width: 11px;
          height: 11px;
          display: block;
          background: rgba(0, 0, 0, 0.5);
          cursor: pointer;
          text-indent: -9999px;
          font-size: 25px;
          -webkit-box-shadow: inset 0 0 3px rgba(0, 0, 0, 0.3);
          -moz-box-shadow: inset 0 0 3px rgba(0, 0, 0, 0.3);
          -o-box-shadow: inset 0 0 3px rgba(0, 0, 0, 0.3);
          box-shadow: inset 0 0 3px rgba(0, 0, 0, 0.3);
          -webkit-border-radius: 20px;
          -moz-border-radius: 20px;
          border-radius: 20px;
        }
      }

      > li.slick-active {
        &::marker {
          background: rgba(0, 0, 0, 0.9);
          cursor: default;
        }
      }
    }
  }
}

.timeline-top {
  height: 600px;
}

.color-box-container {
  position: relative;
  width: 100%;
}

.tl-toptext {
  position: absolute;
  z-index: 1;
}

.tl-since {
  font-size: 40px;
  font-weight: 200;
  z-index: 2;
  color: #ca2437;
  position: absolute;
  letter-spacing: 8px;
  top: 30%;
  left: 17%;
}

.tl-big {
  font-size: 300px;
}

.color-box {
  width: 100%;
  height: 100%;
  min-height: 400px;
  background-image: url(/wp-content/uploads/2025/09/banner3.jpg);
  background-size: cover;
  position: absolute;
  left: 33%;
  overflow: hidden;

  .gradient {
    width: 200%;
    height: 100%;
    background-image: linear-gradient(to right, #af1a2b, rgba(2, 32, 73, 0.9));
    z-index: 0;
  }
}

.story-begins:after {
  content: "";
  position: absolute;
  width: 75px;
  height: 3px;
  background: #ec1c24;
  left: 0;
  right: 0;
  bottom: 15px;
  margin: auto;
}

#tl-years {
  margin: 150px auto auto;
  position: fixed;
  left: 30px;
  top: 0;
  bottom: 0;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  flex-direction: column;
  z-index: 10;
}

#tl-years .tl-stop {
  display: flex;
  align-items: center;
  color: #000;
  font-weight: 700;
}

#tl-years .tl-stop .tl-line {
  height: 3px;
  width: 16px;
  background: #b4b4b4;
  margin-right: 8px;
  transition: all 0.25s ease;
}

#tl-years .tl-stop .tl-year {
  width: 0px;
  height: 9px;
  overflow: hidden;
  transition: all 0.25s ease;
}
#tl-years .tl-stop.active {
  margin-bottom: 4px;
  .tl-line {
    width: 50px;
    height: 8px;
    margin-top: 4px;
    background: #ca2437;
  }
  .tl-year {
    height: 20px;
    width: 75px;
    font-size: 18px;
    text-shadow:
      1px 1px 0px #eee,
      -1px -1px 0px #eee,
      1px -1px 0px #eee,
      -1px 1px 0px #eee,
      0 0 2px #eee,
      0 0 2px #eee,
      0 0 2px #eee,
      0 0 2px #eee,
      0 0 2px #eee;
  }
}
#tl-years .tl-stop:hover,
#tl-years .tl-stop:active,
#tl-years .tl-stop:focus {
  text-decoration: none;
}

#tl-years .tl-stop:hover .tl-line {
  width: 24px;
}

#tl-years .tl-stop:hover .tl-year {
  width: 75px;
  height: 20px;
}

.swiper-slide > div > div:nth-child(2) > div:nth-child(1) > div > span {
  font-size: var(--text-base) !important;
}

/* ---- Locations ---- */

#locations-dropdown {
  display: flex;
  width: 100%;
  padding: 30px 30px 31px 30px;
  flex-direction: column;
  align-items: center;
  gap: 20px;
  background: var(--color-ui-light-bg);
  box-shadow: 0 6px 12px 0 rgba(0, 0, 0, 0.1);
  margin-bottom: 80px;
  h4{
    color: #333 !important;
  }
}
#locations-dropdown #locations-selector {
  display: flex;
  gap: 20px;
  select{
    width: 460px;
    font-weight: var(--font-weight-bold);
    border-radius: 0;
  }
  button{
    text-transform: uppercase;
    font-size: var(--text-base);
    font-weight: var(--font-weight-bold);
  }
}

#locations-container {
  display: flex;
  flex-wrap: wrap;
  padding: 0;
  margin: 30px -8px 0;
}

#locations-buttons {
  width: 100%;
  margin: 0 auto 40px;
  display: flex;
  gap: 24px;
  flex-flow: row wrap;
}

#locations-buttons .button {
  display: flex;
  align-items: center;
  justify-self: center;
  text-decoration: none;
  padding: 12px 24px;
  font-size: 14px;
  font-weight: 700;
  letter-spacing: 1.7px;
}

#locations-buttons #mexico-btn {
  order: 12;
}

#locations-buttons #brazil-btn {
  order: 13;
}

#locations-buttons .button:after {
  font-size: 0;
}

#locations-buttons .button.active {
  background-color: #ec1c24;
  color: #fff;
}

#locations-map-outer {
  width: 70%;
  display: inline-block;
  vertical-align: top;
}

#locations-map {
  width: 100%;
  height: 470px;
}

/*
#locations-map .jvectormap-region[data-code="US-AK"]{
  display:none;
}*/
#locations-map .jvectormap-region[data-code="US-AK"] {
  opacity: 0;
}

#locations-map .jvectormap-zoomin,
#locations-map .jvectormap-zoomout {
  display: none;
}

#locations-map path[fill="#d7d8d8"] {
  pointer-events: none;
}

#locations-list {
  width: 29%;
  display: inline-block;
  vertical-align: top;
  -webkit-box-shadow: 0px 0px 23px -9px rgba(0, 0, 0, 0.3);
  -moz-box-shadow: 0px 0px 23px -9px rgba(0, 0, 0, 0.3);
  box-shadow: 0px 0px 23px -9px rgba(0, 0, 0, 0.3);
  position: relative;
  background-color: white;
}

#locations-list .top {
  background-color: var(--color-brand-02);
  height: 85px;
  display: flex;
  align-items: center;
  justify-content: center;
}

#locations-list .top h2 {
  margin: 0;
  color: var(--color-text-white);
  font-family: var(--font-family-heading);
  font-size: var(--heading-sm);
  font-weight: var(--font-weight-black);
  line-height: 120%;
  text-transform: capitalize;
}

#locations-list .bottom #locations {
  height: 400px;
  overflow-y: scroll;
  position: relative;
  padding-right: 0;
}

#locations-list .bottom a {
  display: none;
  margin-top: 0;
  color: #262626;
  border-bottom: 1px solid #eeeeee;
  position: relative;
  padding: 20px;
}

#locations-list .bottom a.active {
  display: block;
}
#locations-list .bottom{
  border-left: 1px solid #eeeeee;
}

/*
#locations-list .bottom .h3 {
  letter-spacing: 0;
  text-transform: none;
  font-size: 18px;
  line-height: 25px;
  font-family: 'Rubik', sans-serif;
  margin: 0 0 7px 0;
}
#locations-list .bottom .address {
  font-size: 16px;
  line-height: 25px;
}
*/
#locations::-webkit-scrollbar {
  width: 8px;
}

#locations::-webkit-scrollbar-track {
  box-shadow: none;
  border-radius: 5px;
  background-color: #dddddd;
}

#locations::-webkit-scrollbar-thumb {
  background: #B3B3B3;
  border-radius: 5px;
}

.jvectormap-tip {
  z-index: 3;
}

#id-111 .two-tone.block.text-left.has-overlay.swap-mobile {
  display: none;
}

#locations p {
  color: #262626;
  font-size: 16px;
  margin-bottom: 0;
}

#locations .notes {
  margin-top: 15px;
}
#locations > .location{
  text-decoration: none;
  .location-top{
    display: flex;
    flex-flow: column;
    gap: var(--space-xxs);
    h3{
      font-size: var(--text-lg);
      font-weight: var(--font-weight-bold);
      line-height: 150%;
      margin: 0;
    }
    > p{
      color: var(--color-brand-01);
      font-size: var(--text-sm);
    }
    .address{
      display: flex;
      gap: 8px;
    }
    .address::before{
      display: flex;
      content: "";
      width: 20px;
      height: 20px;
      align-items: center;
      justify-self: center;
      background-color: var(--color-brand-01);
      mask-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 384 512"><!--!Font Awesome Free v7.2.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2026 Fonticons, Inc.--><path d="M0 188.6C0 84.4 86 0 192 0S384 84.4 384 188.6c0 119.3-120.2 262.3-170.4 316.8-11.8 12.8-31.5 12.8-43.3 0-50.2-54.5-170.4-197.5-170.4-316.8zM192 256a64 64 0 1 0 0-128 64 64 0 1 0 0 128z"/></svg>');
      mask-repeat: no-repeat;
      mask-position: left center;
      mask-size: contain;
      shape-rendering: auto;
      p{
        color: var(--color-ui-03);
      }
    }
  }
  .notes{
    margin-top: 12px;
    display: flex;
    gap: 8px;
    overflow-x: hidden;
    &::before{
      display: flex;
      content: "";
      width: 20px;
      height: 20px;
      align-items: center;
      justify-self: center;
      background-color: var(--color-brand-01);
      mask-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><!--!Font Awesome Free v7.2.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2026 Fonticons, Inc.--><path d="M160.2 25C152.3 6.1 131.7-3.9 112.1 1.4l-5.5 1.5c-64.6 17.6-119.8 80.2-103.7 156.4 37.1 175 174.8 312.7 349.8 349.8 76.3 16.2 138.8-39.1 156.4-103.7l1.5-5.5c5.4-19.7-4.7-40.3-23.5-48.1l-97.3-40.5c-16.5-6.9-35.6-2.1-47 11.8l-38.6 47.2C233.9 335.4 177.3 277 144.8 205.3L189 169.3c13.9-11.3 18.6-30.4 11.8-47L160.2 25z"/></svg>');
      mask-repeat: no-repeat;
      mask-position: left center;
      mask-size: contain;
      shape-rendering: auto;
    }
  }
  span:last-child{
    display: flex;
    height: 42px;
    width: 164px;
    padding: 16px 24px;
    margin-top: 20px;
    justify-content: center;
    align-items: center;
    gap: 8px;
    border: 2px solid var(--color-brand-01);
    font-weight: var(--font-weight-bold);
    transition: all 0.3s linear;
  }
  &:hover{
    span:last-child{
      color: var(--color-text-white);
      background: linear-gradient(180deg, #ED1C24 0%, #C81017 100%);
    }
  }
}

div[data-widget_type="text-editor.default"] ul {
  margin: 0;
}

div[data-widget_type="text-editor.default"] ul li {
  list-style: none;
  position: relative;
  padding-left: 18px;
  margin-bottom: 10px;
}

div[data-widget_type="text-editor.default"] ul li:before {
  content: "\f111";
  font-family: "Font Awesome 5 Free";
  color: #ed164b;
  font-size: 8px;
  position: absolute;
  left: 0;
  top: 0;
  font-weight: 700;
}

div[data-widget_type="text-editor.default"] ul ul li:before {
  content: "\f111";
  font-weight: 300;
}

.location-content {
  h4,
  ul {
    a {
      font-size: inherit;
      text-decoration: none !important;

      &:hover {
        text-decoration: none !important;
      }
    }
  }

  ul {
    margin: 0 0 1.5em 0;
  }
}

.location-header:after {
  content: "";
  width: 53px;
  height: 3px;
  background: #ed164b;
  position: absolute;
  bottom: -6px;
  left: 0;
}

.featured-post {
  .blog-card {
    .elementor-widget-theme-post-featured-image img {
      width: 100%;
    }
  }
}

.blog-list {
  .elementor-widget-theme-post-featured-image img {
    object-fit: cover;
    width: 100%;
  }

  .elementor-pagination {
    margin: 40px 0;
    display: flex;
    justify-content: center;
    align-items: center;
  }

  .page-numbers:not(:first-child),
  .page-numbers:not(:last-child) {
    width: 32px;
    height: 32px;
    padding: 10px;
    justify-content: center;
    align-items: center;
    display: flex;
  }

  .page-numbers:not(:first-child) {
    border: 1px solid var(--UI-01, #e6e6e6);
    background: var(--Text-White, #fff);
  }

  .page-numbers:not(.prev):not(.next):hover,
  .page-numbers.current {
    color: var(--color-text-white);
    background: var(--color-brand-01);
  }

  .page-numbers.prev,
  .page-numbers.next {
    border: none;
  }

  .page-numbers.prev:hover,
  .page-numbers.next:hover {
    color: var(--color-text-02) !important;
  }

  .page-numbers.prev {
    color: var(--UI-02, #b3b3b3) !important;
  }
}

.featured-post,
.blog-list {
  .ast-grid-common-col {
    padding-left: 0;
    padding-right: 0;
  }
}

.elementor-widget-sidebar {
  .wp-block-search__inside-wrapper {
    border: 2px solid var(--UI-01, #e6e6e6) !important;
    flex-flow: row-reverse;
    outline-style: none !important;
  }

  .wp-block-search__inside-wrapper,
  .wp-block-search__input:focus,
  .wp-block-search__input {
    background-color: #f9f9f9;
    border: none;
  }

  .wp-block-search__button:hover,
  .wp-block-search__button {
    padding: 0 !important;
    background: none;
  }

  h2 {
    height: 68px;
    padding: 20px 20px 21px 20px;
    color: var(--color-text-white);
    font-family: var(--font-family-body);
    font-size: var(--text-lg);
    font-weight: var(--font-weight-regular);
    line-height: 150%;
    /* 27px */
    background: #000;
    margin: 0;
  }

  .cat-item,
  .selected-posts-list-widget__item {
    display: flex;
    padding: 16px 20px;
    flex-flow: row wrap;
    justify-content: space-between;
    align-items: flex-start;
    align-self: stretch;
    border: 1px solid var(--ui-015, #d5d5d5);
    background: var(--Text-White, #fff);

    a {
      font-family: var(--font-family-body);
      font-size: var(--text-base);
      font-weight: var(--font-weight-regular);
      line-height: 150%;
      /* 24px */
    }

    span {
      color: var(--UI-03, #808080);
      /* Body Text/Small */
      font-family: var(--font-family-body);
      font-size: var(--text-sm);
      font-weight: var(--font-weight-regular);
      line-height: 150%;
      /* 21px */
    }
  }
}

/* Search results page sidebar (Astra native widget area, not Elementor) */
#secondary {
  .wp-block-search__inside-wrapper {
    display: flex;
    padding: 4px;
    border: 2px solid var(--UI-01, #e6e6e6) !important;
    flex-flow: row-reverse;
    align-items: center;
    outline-style: none !important;
  }

  .wp-block-search__inside-wrapper,
  .wp-block-search__input {
    background-color: #f9f9f9;
    border: none;
  }

  .wp-block-search__input {
    flex-grow: 1;
    min-width: 0;
    line-height: 24px;
  }

  .wp-block-search__button {
    margin-left: 10px;
    padding: 0 !important;
    line-height: 0;
    background: none;
  }

  .wp-block-search__button svg {
    width: 24px;
    height: 24px;
    fill: currentColor;
  }
}

/* Search results page only: space between the message and the search form */
body.search .page-content {
  display: flex;
  flex-direction: column;
  gap: var(--gutter-sm);
}
.blog-post-content{
  h1{
    margin-bottom: var(--space-base);
  }
  h2 {
    max-width: 1200px;
    width: 100%;
    margin: 0 auto;
  }
  h3{
    margin-top: var(--space-base);
  }
  p:last-child{
    margin-bottom: var(--section-space) !important;
  }
}

.richtext {
  max-width: 1200px;
  margin: 0 auto;
  gap: 15px;
  padding-bottom: 25px;

  li {
    &::marker {
      color: var(--color-brand-01);
      font-size: 24px;
    }
  }
}

.product-card {
  cursor: pointer;

  div[data-widget_type="text-editor.default"] {
    min-height: 96px;
  }
}
.picked-plate-section{
  .product-card{
    cursor: default;
  }
}
.resource-slider,
.industry-carousel {
  .elementor-swiper-button {
    svg {
      height: 44px !important;
      width: 44px !important;
    }

    &.elementor-swiper-button-prev {
      transform: rotate(180deg) !important;
    }
  }
  .elementor-element .swiper~.elementor-swiper-button-prev{
    left: -52px;
  }

  .elementor-widget-n-carousel .swiper-pagination-bullet {
    width: 40px;
    height: 8px;
    border-radius: 8px;
    mask-image: none;
    background: var(--color-ui-white);
    border: 1px solid var(--color-ui-02);

    &.swiper-pagination-bullet-active {
      border: none;
      background: var(--color-ui-02);
    }
  }
}
.resource-slider.related-slider{
    .elementor-element .swiper~.elementor-swiper-button-prev{
      right: 55px;
    }
}

.keys-benefits {
  background: linear-gradient(180deg, #fff 0%, #f9f9f9 100%);

  .e-grid > div {
    background: linear-gradient(180deg, #fff 0%, #f9f9f9 100%);
  }
}

.elementor-widget-n-accordion
  .e-n-accordion-item
  div[data-widget_type="text-editor.default"],
.elementor-widget-n-accordion .e-n-accordion-item-title > span {
  padding: var(--space-sm) var(--space-base);
}

.info-card {
  border-right: 1px solid var(--color-ui-01) !important;
  border-bottom: 1px solid var(--color-ui-01) !important;
  border-left: 1px solid var(--color-ui-01) !important;
}

.highlight-card {
  > div > div:nth-child(2) .eyebrow-heading:nth-child(3) div {
    display: flex;
    align-items: center;
    gap: 8px;
    position: relative;

    &::after {
      position: absolute;
      right: -15px;
      content: "";
      width: 20px;
      height: 20px;
      opacity: 0;
      align-items: center;
      justify-self: center;
      background-color: var(--color-brand-01);
      mask-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 640 640"><!--!Font Awesome Pro v7.0.1 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2025 Fonticons, Inc.--><path d="M433.5 303C442.9 312.4 442.9 327.6 433.5 336.9L273.5 497C264.1 506.4 248.9 506.4 239.6 497C230.3 487.6 230.2 472.4 239.6 463.1L382.6 320.1L239.6 177.1C230.2 167.7 230.2 152.5 239.6 143.2C249 133.9 264.2 133.8 273.5 143.2L433.5 303.2z"/></svg>');
      mask-repeat: no-repeat;
      mask-position: left center;
      mask-size: contain;
      shape-rendering: auto;
      transition: 0.4s;
    }
  }

  &:hover {
    box-shadow: 0 10px 24px 0 rgba(61, 61, 61, 0.24) !important;

    > div > div:nth-child(2) .eyebrow-heading:nth-child(3) div::after {
      display: flex;
      right: -20px;
      opacity: 1;
    }
  }
}

.blog-card:hover {
  box-shadow: 0 10px 25px 0 rgba(0, 0, 0, 0.25) !important;
}

.resource-card {
  div > div > span {
    display: flex;
    align-items: center;
    &::after {
      position: absolute;
      right: -25px;
      content: "";
      width: 20px;
      height: 20px;
      opacity: 0;
      align-items: center;
      justify-self: center;
      background-color: var(--color-brand-01);
      mask-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 640 640"><!--!Font Awesome Pro v7.0.1 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2025 Fonticons, Inc.--><path d="M433.5 303C442.9 312.4 442.9 327.6 433.5 336.9L273.5 497C264.1 506.4 248.9 506.4 239.6 497C230.3 487.6 230.2 472.4 239.6 463.1L382.6 320.1L239.6 177.1C230.2 167.7 230.2 152.5 239.6 143.2C249 133.9 264.2 133.8 273.5 143.2L433.5 303.2z"/></svg>');
      mask-repeat: no-repeat;
      mask-position: left center;
      mask-size: contain;
      shape-rendering: auto;
      transition: 0.4s;
    }
  }

  &:hover {
    div > div > span {
      &::after {
        display: flex;
        right: -25px;
        opacity: 1;
      }
    }
  }
}

.sticky-list {
  .elementor-sticky--active {
    z-index: 1 !important;
  }

  ul {
    background-color: var(--color-brand-03);
  }

  .elementor-icon-list-items {
    .elementor-icon-list-item {
      height: 68px;
      padding: 20px 20px 21px 20px;
      border: 1px solid var(--ui-015, #d5d5d5);

      &:nth-child(1) {
        color: var(--color-text-white);
        background-color: var(--color-brand-02);
      }

      &.active {
        border-left: 4px solid var(--color-brand-01);
        background: rgba(230, 230, 230, 0.5);
      }
    }
  }
}

.sticky-product-nav {
  background-color: #fff;

  a {
    height: 63px;
    text-decoration: none !important;

    &.active {
      color: var(--color-brand-01);
      font-weight: bold;
      border-bottom: 2px solid var(--color-brand-01);
    }

    &:hover {
      border-bottom: 2px solid var(--color-brand-01);
    }
  }
}

/** Merged from admin **/

.home-cta-slider .swiper-slide > .elementor-element > .elementor-element {
  padding-left: calc((100vw - 1170px) / 2);
  padding-right: calc((100vw - 1170px) / 2);
}
.ul-list-section ul {
  margin-top: 20px;
}
.arrow-style .elementor-swiper-button-prev svg {
  transform: rotate(180deg);
}
.page-id-2177 .dialog-message iframe {
  max-height: inherit !important;
}
.hss-table table tbody tr td:first-child {
  background: #ed1c24;
  color: #fff;
}
.hss-table table tbody tr:nth-child(2n + 1) {
  background: #f9f9f9;
}
.post-counter .elementor-shortcode {
  font-style: italic;
  color: #3c3c3c;
  font-size: 16px;
  line-height: 1.5;
  font-weight: 400;
}
.secondary-bucket .elementor-heading-title a {
  text-decoration: none;
  font-weight: 800;
  position: relative;
}
.secondary-bucket .elementor-heading-title a::after {
  content: "\f054";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  margin-left: 10px;
  font-size: 14px;
}
.grid-grallery figure {
  padding: 24px;
  border: 1px solid #e6e6e6;
  transition: 0.5s all ease;
  box-shadow: 0px 4px 16px 0px rgba(0, 0, 0, 0.06);
  text-align: left;
}
.grid-grallery figure:hover {
  box-shadow: 0 10px 24px 0 rgba(61, 61, 61, 0.24) !important;
}
.grid-grallery figure > a {
  height: 200px;
}
.grid-grallery figure > a > img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}
.grid-grallery .swiper-pagination {
  margin-top: 20px;
}
.grid-grallery figcaption {
  display: inline-block;
  position: relative;
  margin-bottom: 0 !important;
}
.grid-grallery figcaption::after {
  content: "\f054";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  margin-left: 10px;
  font-size: 14px;
}
.grid-grallery .elementor-swiper-button svg {
  width: 44px !important;
  height: 44px !important;
}
.grid-grallery .elementor-swiper-button-prev svg {
  transform: rotate(180deg) !important;
  margin-left: -15px;
}
.grid-grallery .elementor-swiper-button-next svg {
  margin-right: -15px;
}
.grid-grallery .swiper-wrapper {
  padding-bottom: 40px;
}
.grid-grallery .swiper-pagination span.swiper-pagination-bullet {
  width: 40px;
  height: 8px;
  border-radius: 8px;
  mask-image: none;
  background: var(--color-ui-white);
  border: 1px solid var(--color-ui-02);
}
.grid-grallery
  .swiper-pagination
  span.swiper-pagination-bullet.swiper-pagination-bullet-active {
  border: none;
  background: var(--color-ui-02);
}
.landing-form h2.gform_title,
.landing-form .gform_required_legend {
  display: none;
}
/* Files */
.files {
  .elementor-list-item-link-full_width {
    width: 50%;
  }
  .elementor-icon-list-item {
    a {
      display: flex;
      flex-flow: row;
      align-items: center;
      justify-content: space-between;
      padding-left: var(--space-sm);
      padding-right: var(--space-sm);
      height: 39px;
      border-radius: 1px;
      border: 2px solid var(--color-brand-01);
      text-decoration: none;

      > span:first-child {
        display: none;
      }
      &:before {
        content: "";
        width: 20px;
        height: 20px;
        align-items: center;
        justify-self: center;
        background-color: var(--color-brand-02);
        mask-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><!--!Font Awesome Pro v5.15.4 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2026 Fonticons, Inc.--><path d="M452 432c0 11-9 20-20 20s-20-9-20-20 9-20 20-20 20 9 20 20zm-84-20c-11 0-20 9-20 20s9 20 20 20 20-9 20-20-9-20-20-20zm144-48v104c0 24.3-19.7 44-44 44H44c-24.3 0-44-19.7-44-44V364c0-24.3 19.7-44 44-44h99.4L87 263.6c-25.2-25.2-7.3-68.3 28.3-68.3H168V40c0-22.1 17.9-40 40-40h96c22.1 0 40 17.9 40 40v155.3h52.7c35.6 0 53.4 43.1 28.3 68.3L368.6 320H468c24.3 0 44 19.7 44 44zm-261.7 17.7c3.1 3.1 8.2 3.1 11.3 0L402.3 241c5-5 1.5-13.7-5.7-13.7H312V40c0-4.4-3.6-8-8-8h-96c-4.4 0-8 3.6-8 8v187.3h-84.7c-7.1 0-10.7 8.6-5.7 13.7l140.7 140.7zM480 364c0-6.6-5.4-12-12-12H336.6l-52.3 52.3c-15.6 15.6-41 15.6-56.6 0L175.4 352H44c-6.6 0-12 5.4-12 12v104c0 6.6 5.4 12 12 12h424c6.6 0 12-5.4 12-12V364z"/></svg>');
        mask-repeat: no-repeat;
        mask-position: left center;
        mask-size: contain;
        shape-rendering: auto;
        transition: 0.4s;
      }
      &.pdf {
        &:after {
          content: "";
          width: 20px;
          height: 20px;
          align-items: center;
          justify-self: center;
          background-color: var(--color-brand-02);
          mask-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 384 512"><!--!Font Awesome Free v5.15.4 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2026 Fonticons, Inc.--><path d="M369.9 97.9L286 14C277 5 264.8-.1 252.1-.1H48C21.5 0 0 21.5 0 48v416c0 26.5 21.5 48 48 48h288c26.5 0 48-21.5 48-48V131.9c0-12.7-5.1-25-14.1-34zM332.1 128H256V51.9l76.1 76.1zM48 464V48h160v104c0 13.3 10.7 24 24 24h104v288H48zm250.2-143.7c-12.2-12-47-8.7-64.4-6.5-17.2-10.5-28.7-25-36.8-46.3 3.9-16.1 10.1-40.6 5.4-56-4.2-26.2-37.8-23.6-42.6-5.9-4.4 16.1-.4 38.5 7 67.1-10 23.9-24.9 56-35.4 74.4-20 10.3-47 26.2-51 46.2-3.3 15.8 26 55.2 76.1-31.2 22.4-7.4 46.8-16.5 68.4-20.1 18.9 10.2 41 17 55.8 17 25.5 0 28-28.2 17.5-38.7zm-198.1 77.8c5.1-13.7 24.5-29.5 30.4-35-19 30.3-30.4 35.7-30.4 35zm81.6-190.6c7.4 0 6.7 32.1 1.8 40.8-4.4-13.9-4.3-40.8-1.8-40.8zm-24.4 136.6c9.7-16.9 18-37 24.7-54.7 8.3 15.1 18.9 27.2 30.1 35.5-20.8 4.3-38.9 13.1-54.8 19.2zm131.6-5s-5 6-37.3-7.8c35.1-2.6 40.9 5.4 37.3 7.8z"/></svg>');
          mask-repeat: no-repeat;
          mask-position: left center;
          mask-size: contain;
          shape-rendering: auto;
          transition: 0.4s;
        }
      }
    }
  }
}

.select-wrap {
  display: inline-block;
  position: relative;
}

#resource-filter-dropdown {
  appearance: none;
  -webkit-appearance: none;
  background-color: #fff;
  border: 1px solid var(--color-ui-02);
  padding: 10px 40px 10px 14px;
  font-size: var(--text-base);
  color: var(--color-ui-03);
  line-height: 150%;
  cursor: pointer;
  min-width: 200px;
  outline: none;
  transition:
    border-color 0.15s ease,
    box-shadow 0.15s ease;
}

#resource-filter-dropdown:hover {
  border-color: #9ca3af;
}

/* Arrow icon wrapper */
.select-wrap > span {
  pointer-events: none;
  position: absolute;
  right: 12px;
  top: 50%;
  transform: translateY(-50%);
  color: #6b7280;
  font-size: 14px;
  line-height: 1;
  i::before {
    content: "";
    width: 12px;
    height: 12px;
    display: block;
    align-items: center;
    justify-self: center;
    background-color: var(--color-ui-02);
    mask-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 256 512"><!--!Font Awesome Pro v5.15.4 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2026 Fonticons, Inc.--><path d="M119.5 326.9L3.5 209.1c-4.7-4.7-4.7-12.3 0-17l7.1-7.1c4.7-4.7 12.3-4.7 17 0L128 287.3l100.4-102.2c4.7-4.7 12.3-4.7 17 0l7.1 7.1c4.7 4.7 4.7 12.3 0 17L136.5 327c-4.7 4.6-12.3 4.6-17-.1z"/></svg>');
    mask-repeat: no-repeat;
    mask-position: left center;
    mask-size: contain;
    shape-rendering: auto;
    transition: 0.4s;
  }
}
.footer-accordion{
  .e-n-accordion-item-title>span {
    padding-left: 4px;
  }
}

@media only screen and (min-width: 1200px) {
  .sw-content-left > .e-con-inner {
    margin: 0 0 0 auto !important;
    max-width: 520px !important;
  }
  .sw-content-right > .e-con-inner {
    margin: 0 auto 0 0 !important;
    max-width: 520px !important;
  }
}

@media only screen and (max-width: 1200px) {
  .nav-item-content-block {
    display: none !important;
  }

  #tl-years {
    display: none;
  }

  .color-box-container,
  .block .nested .block.timeline-top .column:last-child {
    display: none;
  }

  #locations-container {
    padding: 0;
  }

  #locations-buttons {
    max-height: 40px;
    overflow: hidden;
    position: absolute;
    width: 334px;
    padding-left: 110px;
    z-index: 9;
    display: flex;
    flex-wrap: wrap;
  }

  #locations-buttons .button {
    margin: 0 auto 0 0;
    display: block;
    width: 224px;
    height: 40px;
    -webkit-box-ordinal-group: 2;
    -moz-box-ordinal-group: 2;
    -ms-flex-order: 2;
    -webkit-order: 2;
    order: 2;
    border-radius: 0;
  }

  #locations-buttons .button.active {
    -webkit-box-ordinal-group: 1;
    -moz-box-ordinal-group: 1;
    -ms-flex-order: 1;
    -webkit-order: 1;
    order: 1;
    background-color: #fff;
    color: #ec1c24;
    border: 2px solid #fff;
  }

  #locations-buttons .button:hover {
    background-color: #262626;
  }

  #locations-buttons:before {
    content: "SELECT AREA:";
    font-size: 14px;
    font-weight: bold;
    position: absolute;
    left: 0;
    top: 12px;
  }

  #locations-buttons:after {
    font-family: "Font Awesome 5 Free", sans-serif;
    content: "\f107";
    color: #ec1c24;
    font-size: 20px;
    position: absolute;
    right: 15px;
    top: 9px;
    z-index: 2;
    pointer-events: none;
  }

  #locations-buttons.open {
    max-height: 400px;
  }

  #locations-buttons.open:after {
    content: "\f106";
  }

  #locations-map-outer {
    width: 100%;
    margin-top: 70px;
    margin-bottom: -30px;
  }

  #locations-map {
    height: 280px;
  }

  #locations-list .bottom #locations {
    /* height: 200px; */
    height: 450px;
  }

  #locations-list {
    width: 90%;
    position: relative;
    margin: 50px auto 0;
  }

  #locations-list .top {
    height: 50px;
  }

  #locations-list .top h2 {
    line-height: 50px;
  }
}
@media only screen and (max-width: 1100px) {
  .home-cta-slider .swiper-slide > .elementor-element > .elementor-element {
    padding-left: 15px;
    padding-bottom: 15px;
    padding-right: calc((100vw - 1170px) / 2);
  }
  .nested{
    .timeline-left{
      width: 42%;
      margin-left: 8%;
    }
  }
  .industry-carousel{
    .elementor-element .swiper~.swiper-pagination-bullets.swiper-pagination-horizontal{
      top: 280px;
    }
  }
}

@media only screen and (max-width: 768px) {
  .forms.calculator {
    .fieldset {
      flex-flow: column;
      align-items: center;
      .w33,
      .w50 {
        width: 100%;
      }
    }
  }
  .block.white-bg, .block.black-bg {
      & .column:nth-child(2n+1) {
          .timeline-swiper {
              width: 500px;
              margin: auto;
          }
      }
  }
  .block > .column.w100 + .column.w100 {
    margin-top: auto;
  }
  .tl-sec::after{
    left: 5%;
  }
  .nested{
    width: 500px;
    .timeline-left,
    .timeline-right{
      width: auto;
    }
    .timeline-right,
    .timeline-left {
      margin-left: auto;
      margin-right: auto;
      padding-right: 0;
      padding-left: 0;

      &::after {
        background-image: url(/wp-content/uploads/2025/09/tl-right-arrow.png);
        left: -22%;
        right: auto;
      }
    }
  }
}
@media only screen and (max-width: 767px) {
  .resource-slider.related-slider{
      .elementor-element .swiper~.elementor-swiper-button-prev{
        right: auto;
      }
  }
}
@media only screen and (max-width: 500px) {
  #locations-dropdown {
    align-items: start;
  }
  #locations-dropdown #locations-selector {
    flex-flow: column;
    width: 100%;
  }
  #locations-dropdown #locations-selector {
    select{
      width: 100%;
    }
  }
  #locations-list {
      width: 100%;
  }
  .resource-slider,
  .industry-carousel {
    overflow: hidden;
  }
  .block.white-bg, .block.black-bg {
      & .column:nth-child(2n+1) {
          .timeline-swiper {
              width: 300px;
          }
      }
  }
  .nested{
    width: 300px;
    .timeline-right,
    .timeline-left {
      &::after {
        background-image: url(/wp-content/uploads/2025/09/tl-right-arrow.png);
        left: -18%;
      }
    }
  }
}
