@charset "UTF-8";
@font-face {
  font-family: 'New Science';
  src: url("../fonts/newscience/NewScience-Bold.eot");
  src: url("../fonts/newscience/NewScience-Bold.eot?#iefix") format("embedded-opentype"), url("../fonts/newscience/NewScience-Bold.woff2") format("woff2"), url("../fonts/newscience/NewScience-Bold.woff") format("woff"), url("../fonts/newscience/NewScience-Bold.ttf") format("truetype"), url("../fonts/newscience/NewScience-Bold.svg#NewScience-Bold") format("svg");
  font-weight: bold;
  font-style: normal;
  font-display: swap; }

[href]:focus {
  outline: none !important; }

[href] {
  text-decoration: none !important; }

.divRow {
  width: 100%; }

.d-flex {
  display: flex;
  justify-content: center;
  align-items: center; }

.d-flex-between {
  display: flex;
  justify-content: space-between;
  align-items: center; }

.d-flex-jfc {
  display: flex;
  justify-content: flex-start;
  align-items: center; }

.grid {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  display: -webkit-flex;
  -webkit-flex-wrap: wrap;
  margin-right: -15px;
  margin-left: -15px; }

.xl-1, .xl-2, .xl-3, .xl-4, .xl-5, .xl-6, .xl-7, .xl-8, .xl-9, .xl-10, .xl-11, .xl-12,
.lg-1, .lg-2, .lg-3, .lg-4, .lg-5, .lg-6, .lg-7, .lg-8, .lg-9, .lg-10, .lg-11, .lg-12,
.md-1, .md-2, .md-3, .md-4, .md-5, .md-6, .md-7, .md-8, .md-9, .md-10, .md-11, .md-12,
.sm-1, .sm-2, .sm-3, .sm-4, .sm-5, .sm-6, .sm-7, .sm-8, .sm-9, .sm-10, .sm-11, .sm-12,
.xs-1, .xs-2, .xs-3, .xs-4, .xs-5, .xs-6, .xs-7, .xs-8, .xs-9, .xs-10, .xs-11, .xs-12 {
  position: relative;
  width: 100%;
  padding-right: 15px;
  padding-left: 15px; }

@media (min-width: 576px) {
  .sm-1 {
    width: calc(100% / 12); }
  .sm-2 {
    width: calc(100% / 12 * 2); }
  .sm-3 {
    width: calc(100% / 12 * 3); }
  .sm-4 {
    width: calc(100% / 12 * 4); }
  .sm-5 {
    width: calc(100% / 12 * 5); }
  .sm-6 {
    width: calc(100% / 12 * 6); }
  .sm-7 {
    width: calc(100% / 12 * 7); }
  .sm-8 {
    width: calc(100% / 12 * 8); }
  .sm-9 {
    width: calc(100% / 12 * 9); }
  .sm-10 {
    width: calc(100% / 12 * 10); }
  .sm-11 {
    width: calc(100% / 12 * 11); }
  .sm-12 {
    width: calc(100% / 12 * 12); } }

@media (min-width: 768px) {
  .md-1 {
    width: calc(100% / 12); }
  .md-2 {
    width: calc(100% / 12 * 2); }
  .md-3 {
    width: calc(100% / 12 * 3); }
  .md-4 {
    width: calc(100% / 12 * 4); }
  .md-5 {
    width: calc(100% / 12 * 5); }
  .md-6 {
    width: calc(100% / 12 * 6); }
  .md-7 {
    width: calc(100% / 12 * 7); }
  .md-8 {
    width: calc(100% / 12 * 8); }
  .md-9 {
    width: calc(100% / 12 * 9); }
  .md-10 {
    width: calc(100% / 12 * 10); }
  .md-11 {
    width: calc(100% / 12 * 11); }
  .md-12 {
    width: calc(100% / 12 * 12); } }

@media (min-width: 992px) {
  .lg-1 {
    width: calc(100% / 12); }
  .lg-2 {
    width: calc(100% / 12 * 2); }
  .lg-3 {
    width: calc(100% / 12 * 3); }
  .lg-4 {
    width: calc(100% / 12 * 4); }
  .lg-5 {
    width: calc(100% / 12 * 5); }
  .lg-6 {
    width: calc(100% / 12 * 6); }
  .lg-7 {
    width: calc(100% / 12 * 7); }
  .lg-8 {
    width: calc(100% / 12 * 8); }
  .lg-9 {
    width: calc(100% / 12 * 9); }
  .lg-10 {
    width: calc(100% / 12 * 10); }
  .lg-11 {
    width: calc(100% / 12 * 11); }
  .lg-12 {
    width: calc(100% / 12 * 12); } }

@media (min-width: 1200px) {
  .xl-1 {
    width: calc(100% / 12); }
  .xl-2 {
    width: calc(100% / 12 * 2); }
  .xl-3 {
    width: calc(100% / 12 * 3); }
  .xl-4 {
    width: calc(100% / 12 * 4); }
  .xl-5 {
    width: calc(100% / 12 * 5); }
  .xl-6 {
    width: calc(100% / 12 * 6); }
  .xl-7 {
    width: calc(100% / 12 * 7); }
  .xl-8 {
    width: calc(100% / 12 * 8); }
  .xl-9 {
    width: calc(100% / 12 * 9); }
  .xl-10 {
    width: calc(100% / 12 * 10); }
  .xl-11 {
    width: calc(100% / 12 * 11); }
  .xl-12 {
    width: calc(100% / 12 * 12); } }

@media (max-width: 551px) {
  .xs-1 {
    width: calc(100% / 12); }
  .xs-2 {
    width: calc(100% / 12 * 2); }
  .xs-3 {
    width: calc(100% / 12 * 3); }
  .xs-4 {
    width: calc(100% / 12 * 4); }
  .xs-5 {
    width: calc(100% / 12 * 5); }
  .xs-6 {
    width: calc(100% / 12 * 6); }
  .xs-7 {
    width: calc(100% / 12 * 7); }
  .xs-8 {
    width: calc(100% / 12 * 8); }
  .xs-9 {
    width: calc(100% / 12 * 9); }
  .xs-10 {
    width: calc(100% / 12 * 10); }
  .xs-11 {
    width: calc(100% / 12 * 11); }
  .xs-12 {
    width: calc(100% / 12 * 12); } }

@font-face {
  font-family: 'New Science';
  src: url("../fonts/newscience/NewScience-Bold.eot");
  src: url("../fonts/newscience/NewScience-Bold.eot?#iefix") format("embedded-opentype"), url("../fonts/newscience/NewScience-Bold.woff2") format("woff2"), url("../fonts/newscience/NewScience-Bold.woff") format("woff"), url("../fonts/newscience/NewScience-Bold.ttf") format("truetype"), url("../fonts/newscience/NewScience-Bold.svg#NewScience-Bold") format("svg");
  font-weight: bold;
  font-style: normal;
  font-display: swap; }

/* Page-specific variables converted from CSS custom properties */
body {
  font-family: "Roboto", sans-serif;
  color: #000000;
  background-color: #ffffff;
  padding: 0; }

strong {
  font-weight: 700; }

small {
  font-size: 80%; }

hr {
  height: 1px;
  border: 0;
  border-top: 1px solid #BEC7D5; }

img {
  max-width: 100%;
  height: auto; }

ul {
  margin: 0;
  list-style: none; }

a {
  text-decoration: none; }

h1, h2, h3, h4, h5, h6 {
  font-family: "New Science"; }

#main-content .page {
  margin: 0; }
  #main-content .page .navBar--sub {
    display: none; }
  #main-content .page .page-content {
    padding: 0; }
    #main-content .page .page-content .no-margin {
      margin-bottom: 0; }

/* =========================================================
   ONSET JOB OPPORTUNITIES PAGE
   ========================================================= */
.job-opp {
  color: #000000;
  background: #ffffff;
  font-family: inherit; }

/* =========================================================
   COMMON
   ========================================================= */
.job-opp *,
.job-opp *::before,
.job-opp *::after {
  box-sizing: border-box; }

.job-opp img {
  max-width: 100%;
  display: block; }

.job-opp .signup-form .inner-section {
  width: 100%;
  max-width: 800px;
  margin: 0 auto; }

.job-opp h1,
.job-opp h2,
.job-opp h3,
.job-opp h4,
.job-opp h5 {
  color: #102C52;
  margin-top: 0; }

.job-opp p {
  line-height: 1.7; }

/* =========================================================
   HERO BANNER
   ========================================================= */
.job-opp .hero-banner {
  position: relative;
  min-height: 500px;
  display: flex;
  align-items: center;
  overflow: hidden; }

.job-opp .hero-banner::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, rgba(16, 44, 82, 0.88) 0%, rgba(16, 44, 82, 0.65) 40%, rgba(16, 44, 82, 0.12) 75%, rgba(16, 44, 82, 0) 100%);
  z-index: 1; }

.job-opp .hero-banner > img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover; }

.job-opp .hero-content {
  position: relative;
  z-index: 2; }

.job-opp .hero-content h1 {
  max-width: 700px;
  color: #ffffff;
  font-size: clamp(30px, 4vw, 42px);
  line-height: 1.05;
  font-weight: 700;
  margin: 0;
  letter-spacing: -1px; }

/* =========================================================
   JOIN THE TEAM
   ========================================================= */
.job-opp .join-team-content {
  padding: 40px 0px;
  text-align: center;
  background: #e1ecee;
  margin-bottom: 50px; }

.job-opp .join-team-content h3 {
  font-size: 38px;
  line-height: 1.2;
  margin-bottom: 15px;
  font-weight: 700; }

.job-opp .join-team-content p {
  max-width: 760px;
  margin: 0 auto;
  font-size: 19px;
  color: #555; }

/* =========================================================
   HOW TO APPLY
   ========================================================= */
.job-opp .hta {
  padding: 40px 0px;
  background-color: #73BE1C;
  margin-bottom: 50px; }

.job-opp .hta h3 {
  font-size: 38px;
  text-align: center;
  margin-bottom: 15px; }

.job-opp .hta .h5 {
  font-size: 18px;
  color: #000000;
  margin-bottom: 25px;
  text-transform: initial; }

.job-opp .hta ul {
  margin: 0;
  padding: 0;
  list-style: none;
  counter-reset: apply-counter; }

.job-opp .hta li {
  position: relative;
  padding: 18px 20px 18px 70px;
  margin-bottom: 15px;
  background: #e1ecee;
  border-left: 4px solid #73BE1C;
  border-radius: 4px;
  counter-increment: apply-counter; }

.job-opp .hta li::before {
  content: counter(apply-counter);
  position: absolute;
  left: 20px;
  top: 50%;
  transform: translateY(-50%);
  width: 34px;
  height: 34px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #73BE1C;
  color: #ffffff;
  border-radius: 50%;
  font-size: 16px;
  font-weight: 700; }

.job-opp .hta .p1 {
  margin: 0;
  font-size: 17px;
  line-height: 1.6; }

/* =========================================================
   CURRENT JOB OPENINGS
   ========================================================= */
.job-opp .current-job {
  padding: 50px 0px;
  background: #e1ecee; }

.job-opp .current-job h2 {
  max-width: 1320px;
  margin: 0 auto 20px;
  text-align: center;
  font-size: 40px;
  font-weight: 700; }

.job-opp .current-job .view-content {
  max-width: 1320px;
  margin: 0 auto;
  background: #ffffff;
  border-radius: 10px;
  overflow: hidden;
  box-shadow: 0 8px 30px rgba(16, 44, 82, 0.08); }

/* =========================================================
   JOB TABLE
   ========================================================= */
.job-opp .current-job table {
  width: 100%;
  border-collapse: collapse;
  border: 0;
  margin: 0; }

.job-opp .current-job thead {
  background: #102C52; }

.job-opp .current-job th {
  padding: 20px 24px;
  color: #ffffff;
  text-align: left;
  font-size: 16px;
  font-weight: 700;
  border: 0; }

.job-opp .current-job td {
  padding: 24px;
  vertical-align: top;
  border-bottom: 1px solid #d9dee7;
  font-size: 16px;
  line-height: 1.65; }

.job-opp .current-job tbody tr:last-child td {
  border-bottom: 0; }

.job-opp .current-job tbody tr {
  transition: background-color 0.25s ease; }

.job-opp .current-job tbody tr:hover {
  background: #f7f9fb; }

.job-opp .current-job td:first-child {
  width: 25%; }

.job-opp .current-job td:nth-child(2) {
  width: 20%;
  font-weight: 600;
  color: #102C52; }

.job-opp .current-job td:nth-child(3) {
  width: 55%; }

.job-opp .current-job td a {
  color: #102C52;
  font-weight: 700;
  text-decoration: none;
  transition: color 0.25s ease; }

.job-opp .current-job td a:hover {
  color: #73BE1C; }

/* =========================================================
   IMAGE SECTION
   ========================================================= */
.job-opp .layout-section {
  padding: 50px 0px;
  background: #ffffff;
  text-align: center; }

.job-opp .layout-section .inner-section {
  text-align: center; }

.job-opp .layout-section .d-flex {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 25px;
  margin-bottom: 40px; }

.job-opp .layout-section .d-flex img {
  width: 100% !important;
  height: 480px;
  object-fit: cover;
  margin: 0 !important;
  border-radius: 8px; }

/* =========================================================
   BUTTON
   ========================================================= */
.job-opp .secondary-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: #73BE1C;
  color: #102C52;
  text-decoration: none;
  border: 2px solid transparent;
  transition: all 0.3s ease;
  font-size: 16px;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 10%;
  border-radius: 4px;
  text-transform: uppercase;
  padding: 16px 24px;
  font-family: Oxanium, sans-serif; }

.job-opp .secondary-button:hover {
  background: #219338;
  border-color: #219338;
  color: #102C52;
  transform: translateY(-2px); }

/* =========================================================
   SIGNUP FORM SECTION
   ========================================================= */
.job-opp .signup-form {
  padding: 50px 0px;
  background: #f0f5f7;
  margin-bottom: 50px; }

.job-opp .signup-form form {
  background: #ffffff;
  padding: 30px;
  border-radius: 10px;
  box-shadow: 0 10px 35px rgba(16, 44, 82, 0.08); }

.job-opp .signup-form h2 {
  text-align: center;
  font-size: 38px;
  line-height: 1.2;
  margin-bottom: 35px; }

/* =========================================================
   FORM FIELDS
   ========================================================= */
.job-opp .signup-form .webform-flexbox {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 20px; }

.job-opp .signup-form .form-item {
  margin: 0 0 20px; }

.job-opp .signup-form label {
  display: none; }

.job-opp .signup-form input,
.job-opp .signup-form select {
  width: 100%;
  height: 54px;
  padding: 0 16px;
  border: 1px solid #cdd3dc;
  border-radius: 3px;
  background: #ffffff;
  color: #000000;
  font-size: 16px;
  outline: none;
  transition: border-color 0.25s ease, box-shadow 0.25s ease; }

.job-opp .signup-form input:focus,
.job-opp .signup-form select:focus {
  border-color: #73BE1C;
  box-shadow: 0 0 0 3px rgba(115, 190, 28, 0.15); }

.job-opp .signup-form input::placeholder {
  color: #707780; }

.job-opp .signup-form select {
  cursor: pointer; }

/* =========================================================
   EMAIL FIELD
   ========================================================= */
.job-opp .signup-form #edit-email-address {
  margin-bottom: 0px; }

/* =========================================================
   SELECTS
   ========================================================= */
.job-opp .signup-form #edit-flexbox-01 {
  display: grid;
  grid-template-columns: 1fr; }

.job-opp .signup-form #edit-application,
.job-opp .signup-form #edit-country {
  margin-bottom: 0px; }

/* =========================================================
   SUBMIT BUTTON
   ========================================================= */
.job-opp .signup-form .form-actions {
  margin-top: 10px;
  text-align: center; }

.job-opp .signup-form .webform-button--submit {
  min-width: 200px;
  padding: 12px 24px;
  border: 2px solid transparent;
  background: #73BE1C;
  color: #102C52;
  font-size: 16px;
  line-height: 24px;
  font-weight: 700;
  cursor: pointer;
  transition: background-color 0.25s ease, border-color 0.25s ease, color 0.25s ease, transform 0.25s ease;
  font-family: Oxanium, sans-serif; }

.job-opp .signup-form .webform-button--submit:hover {
  background: #219338;
  border-color: #219338;
  color: #102C52;
  transform: translateY(-2px); }

/* =========================================================
   PRIVACY TEXT
   ========================================================= */
.job-opp .signup-form #edit-markup {
  margin-top: 20px;
  text-align: center; }

.job-opp .signup-form #edit-markup p {
  margin: 0;
  color: #000;
  font-size: 15px; }

.job-opp .signup-form #edit-markup a {
  color: #102C52;
  font-weight: 600; }

.job-opp .signup-form #edit-markup a:hover {
  color: #73BE1C; }

/* =========================================================
   HIDDEN SUB APPLICATIONS
   ========================================================= */
.job-opp .js-webform-states-hidden {
  width: 100%; }

/* =========================================================
   TABLET
   ========================================================= */
@media (max-width: 991px) {
  .job-opp .hero-banner {
    min-height: 430px; }
  .job-opp .current-job .view-content {
    overflow-x: auto; }
  .job-opp .current-job table {
    min-width: 750px; }
  .job-opp .layout-section .d-flex img {
    height: 380px; } }

/* =========================================================
   MOBILE
   ========================================================= */
@media (max-width: 767px) {
  .job-opp .hero-banner {
    min-height: 360px; }
  .job-opp .hero-banner::after {
    background: linear-gradient(90deg, rgba(16, 44, 82, 0.85), rgba(16, 44, 82, 0.55)); }
  .job-opp .join-team-content h3,
  .job-opp .hta h3,
  .job-opp .current-job h2,
  .job-opp .signup-form h2 {
    font-size: 28px; }
  .job-opp .join-team-content p {
    font-size: 17px; }
  .job-opp .hta li {
    padding: 18px 15px 18px 60px; }
  .job-opp .hta li::before {
    left: 15px; }
  .job-opp .current-job .view-content {
    border-radius: 6px; }
  .job-opp .current-job table {
    min-width: 700px; }
  .job-opp .current-job th,
  .job-opp .current-job td {
    padding: 16px; }
  .job-opp .layout-section .d-flex {
    grid-template-columns: 1fr;
    gap: 15px; }
  .job-opp .layout-section .d-flex img {
    height: 300px; }
  .job-opp .signup-form form {
    padding: 30px 20px; }
  .job-opp .signup-form .webform-flexbox {
    grid-template-columns: 1fr;
    gap: 0; }
  .job-opp .secondary-button {
    width: 100%;
    max-width: 280px;
    font-size: 14px;
    padding: 12px 24px; } }

/* =========================================================
   SMALL MOBILE
   ========================================================= */
@media (max-width: 480px) {
  .job-opp .hero-banner {
    min-height: 320px; }
  .job-opp .join-team-content h3,
  .job-opp .hta h3,
  .job-opp .current-job h2,
  .job-opp .signup-form h2 {
    font-size: 24px; }
  .job-opp .hta li {
    font-size: 15px; }
  .job-opp .layout-section .d-flex img {
    height: 240px; }
  .job-opp .signup-form form {
    padding: 25px 15px; }
  .job-opp .signup-form input,
  .job-opp .signup-form select {
    height: 44px;
    font-size: 15px; }
  .job-opp .signup-form .webform-button--submit {
    padding: 10px 18px;
    font-size: 14px;
    line-height: 20px; } }

/* =========================================================
   ABOUT HOBO PAGE
   ========================================================= */
/* =========================================================
   GLOBAL / CONTAINER
   ========================================================= */
.about-hobo *,
.about-hobo *::before,
.about-hobo *::after {
  box-sizing: border-box; }

.about-hobo .container {
  width: 100%;
  max-width: 1190px;
  margin: 0 auto;
  padding-left: 20px;
  padding-right: 20px; }

.about-hobo img {
  max-width: 100%;
  height: auto;
  display: block; }

.about-hobo .section-content {
  width: 100%; }

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

.about-hobo p {
  margin-top: 0;
  margin-bottom: 18px;
  color: #000000;
  line-height: 1.7; }

.about-hobo h1,
.about-hobo h2,
.about-hobo h3,
.about-hobo h4,
.about-hobo h5,
.about-hobo h6 {
  margin-top: 0;
  color: #102C52;
  line-height: 1.25; }

/* =========================================================
   HERO BANNER
   ========================================================= */
.about-hobo .section-hero-banner {
  position: relative;
  overflow: hidden; }

.about-hobo .hero-banner {
  position: relative;
  min-height: 600px;
  display: flex;
  align-items: center; }

.about-hobo .hero-banner-media {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%; }

.about-hobo .hero-banner-media::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, rgba(16, 44, 82, 0.92) 0%, rgba(16, 44, 82, 0.78) 35%, rgba(16, 44, 82, 0.25) 65%, rgba(16, 44, 82, 0) 100%); }

.about-hobo .hero-banner-media img {
  width: 100%;
  height: 100%;
  object-fit: cover; }

.about-hobo .hero-banner-content {
  position: relative;
  z-index: 2;
  color: #ffffff;
  padding-top: 80px;
  padding-bottom: 80px; }

.about-hobo .hero-banner-title {
  max-width: 720px; }

.about-hobo .hero-banner-title h1 {
  max-width: 750px;
  margin-bottom: 25px;
  color: #ffffff;
  font-size: clamp(30px, 4vw, 42px);
  font-weight: 700;
  line-height: normal;
  letter-spacing: 2%; }

.about-hobo .hero-banner-summary {
  max-width: 700px; }

.about-hobo .hero-banner-summary p {
  color: #ffffff;
  font-size: clamp(16px, 2vw, 20px);
  line-height: 1.6;
  margin-bottom: 0; }

.about-hobo .hero-banner-caption {
  margin-top: 30px; }

.about-hobo .hero-banner-caption small {
  font-size: 14px; }

/* =========================================================
   PROOF DATA SECTION
   ========================================================= */
.about-hobo .section-proof-data {
  padding: 50px 0;
  background: #ffffff; }

.about-hobo .section-proof-data h2,
.about-hobo .section-about-licor h2,
.about-hobo .section-core-principles h2,
.about-hobo .section-contact h2 {
  margin-bottom: 20px;
  font-size: clamp(30px, 4vw, 42px);
  font-weight: 700; }

.about-hobo .section-description {
  margin: 0 auto 55px; }

.about-hobo .section-description h5 {
  margin-bottom: 20px;
  color: #000000;
  font-size: 22px;
  font-weight: 600;
  text-transform: inherit;
  font-family: 'Roboto'; }

.about-hobo .section-description h6 {
  margin-bottom: 18px;
  color: #000000;
  font-size: 17px;
  font-weight: 400;
  line-height: 1.7;
  text-transform: inherit;
  font-family: 'Roboto'; }

/* =========================================================
   PRODUCT CARDS
   ========================================================= */
.about-hobo .product-cards {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 30px;
  margin-top: 50px;
  text-align: left; }

.about-hobo .product-card {
  display: flex;
  flex-direction: column;
  height: 100%;
  overflow: hidden;
  background: #ffffff;
  border: 1px solid #d9dee7;
  border-radius: 4px;
  box-shadow: 0 8px 30px rgba(16, 44, 82, 0.08);
  transition: all 0.3s ease; }

.about-hobo .product-card:hover {
  transform: translateY(-6px);
  box-shadow: 0 15px 40px rgba(16, 44, 82, 0.15); }

.about-hobo .product-card-image {
  overflow: hidden;
  aspect-ratio: 1 / 1;
  background: #f7f8fa; }

.about-hobo .product-card-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.5s ease; }

.about-hobo .product-card:hover .product-card-image img {
  transform: scale(1.04); }

.about-hobo .product-card-content {
  display: flex;
  flex-direction: column;
  flex: 1;
  padding: 30px;
  background: #f0f5f7; }

.about-hobo .product-card-content h3 {
  margin-bottom: 15px;
  font-size: 23px;
  font-weight: 700; }

.about-hobo .product-card-content p {
  flex: 1;
  margin-bottom: 25px;
  font-size: clamp(14px, 2vw, 16px); }

.about-hobo .arrow-link {
  position: relative;
  display: inline-flex;
  align-items: center;
  gap: 12px;
  width: fit-content;
  font-size: 16px;
  font-weight: 700;
  text-decoration: none;
  transition: all 0.3s ease;
  font-family: "Oxanium", sans-serif;
  color: #102C52;
  background: #73BE1C;
  border: 2px solid transparent;
  padding: 11px 20px 9px;
  border-radius: 4px; }

.about-hobo .arrow-link::after {
  content: "›";
  font-size: 22px;
  line-height: 1;
  transition: transform 0.3s ease; }

.about-hobo .arrow-link:hover {
  color: #102C52;
  background: #219338; }

.about-hobo .arrow-link:hover::after {
  transform: translateX(5px); }

/* =========================================================
   LI-COR VIDEO
   ========================================================= */
.about-hobo .section-about-licor {
  padding: 50px 0;
  background: #e1ecee; }

.about-hobo .video-wrapper {
  width: 100%;
  overflow: hidden;
  border-radius: 6px;
  background: #000000;
  box-shadow: 0 15px 45px rgba(0, 0, 0, 0.15);
  max-width: 900px;
  margin: 0 auto; }

.about-hobo .video-wrapper wistia-player {
  display: block;
  width: 100%; }

/* =========================================================
   CORE PRINCIPLES
   ========================================================= */
.about-hobo .section-core-principles {
  padding: 50px 0;
  background: #ffffff; }

.about-hobo .principles-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 25px;
  margin-top: 20px;
  text-align: center; }

.about-hobo .principle-card {
  position: relative;
  height: 100%;
  padding: 35px 25px;
  background: #ffffff;
  border: 1px solid #d9dee7;
  transition: all 0.3s ease;
  border-radius: 4px; }

.about-hobo .principle-card:hover {
  border-color: #73be1c;
  transform: translateY(-5px);
  box-shadow: 0 12px 35px rgba(16, 44, 82, 0.1); }

.about-hobo .principle-card-link {
  position: absolute;
  inset: 0;
  z-index: 1; }

.about-hobo .principle-card-icon {
  margin-bottom: 25px;
  display: flex;
  align-items: center;
  justify-content: center; }

.about-hobo .principle-card-icon img {
  width: 64px;
  height: 64px;
  object-fit: contain; }

.about-hobo .principle-card h3 {
  position: relative;
  z-index: 2;
  margin-bottom: 15px;
  font-size: clamp(18px, 3vw, 24px);
  font-weight: 700; }

.about-hobo .principle-card p {
  position: relative;
  z-index: 2;
  margin-bottom: 0;
  font-size: clamp(14px, 2vw, 16px);
  line-height: 1.65; }

/* =========================================================
   CONTACT SECTION
   ========================================================= */
.about-hobo .section-contact {
  padding: 50px 0;
  background: #e1ecee; }

.about-hobo .section-contact .section-content {
  display: grid;
  grid-template-columns: 0.9fr 1.1fr;
  gap: 30px;
  align-items: start; }

.about-hobo .section-contact h2 {
  grid-column: 1 / -1;
  margin-bottom: 0; }

.about-hobo .contact-information {
  padding: 35px;
  background: #ffffff;
  border-left: 5px solid #73be1c;
  box-shadow: 0 8px 30px rgba(16, 44, 82, 0.08); }

.about-hobo .contact-information h4 {
  margin-bottom: 30px;
  font-size: 24px; }

.about-hobo .contact-information h6 {
  margin-bottom: 12px;
  font-size: 20px;
  font-weight: 700;
  text-transform: capitalize;
  letter-spacing: 0.04em; }

.about-hobo .contact-information p {
  margin-bottom: 20px;
  font-size: clamp(14px, 2vw, 16px); }

.about-hobo .contact-information p:last-child {
  margin-bottom: 0; }

.about-hobo .contact-accordion {
  width: 100%; }

.about-hobo .accordion-item {
  margin-bottom: 12px;
  background: #ffffff;
  border: 1px solid #d9dee7; }

.about-hobo .accordion-title {
  margin: 0; }

.about-hobo .accordion-button {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  padding: 22px 25px;
  border: 0;
  background: #ffffff;
  color: #102C52;
  font-size: 20px;
  font-weight: 700;
  text-align: left;
  cursor: pointer;
  transition: all 0.3s ease;
  text-transform: initial;
  font-family: 'New Science';
  letter-spacing: 5%; }

.about-hobo .accordion-button::after {
  content: "+";
  display: flex;
  align-items: center;
  justify-content: center;
  width: 30px;
  height: 30px;
  color: #73be1c;
  font-size: 28px;
  font-weight: 400;
  line-height: 1; }

.about-hobo .accordion-button:hover {
  background: #f7f8fa; }

.about-hobo .accordion-collapse {
  overflow: hidden; }

.about-hobo .accordion-content {
  padding: 0 25px 30px; }

.about-hobo .accordion-content h4 {
  margin-top: 25px;
  margin-bottom: 12px;
  font-size: 18px; }

.about-hobo .accordion-content h5 {
  margin-bottom: 25px;
  font-size: 18px;
  text-transform: capitalize; }

.about-hobo .accordion-content p {
  font-size: clamp(14px, 2vw, 16px); }

.about-hobo .accommodation {
  display: grid;
  grid-template-columns: 180px 1fr;
  gap: 20px;
  align-items: center;
  margin-bottom: 20px;
  padding: 15px;
  border: 1px solid #d9dee7; }

.about-hobo .accommodation:last-child {
  margin-bottom: 0; }

.about-hobo .accommodation img {
  width: 180px;
  height: 90px;
  object-fit: cover; }

.about-hobo .secondary-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: #73BE1C;
  color: #102C52;
  text-decoration: none;
  border: 2px solid transparent;
  transition: all 0.3s ease;
  font-size: 14px;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 10%;
  border-radius: 4px;
  text-transform: uppercase;
  padding: 10px 16px;
  font-family: Oxanium, sans-serif; }

.about-hobo .secondary-button:hover {
  background: #219338;
  border-color: #219338;
  color: #102C52;
  transform: translateY(-2px); }

.about-hobo .contact-accordion .accordion-collapse {
  display: none; }

.about-hobo .contact-accordion .accordion-item.active
.accordion-collapse {
  display: block; }

.about-hobo .contact-accordion .accordion-button::after {
  content: "+"; }

.about-hobo .contact-accordion .accordion-button.active::after {
  content: "−"; }

/* =========================================================
   SERVICE SECTION
   ========================================================= */
.section-service {
  width: 100%;
  padding: 50px 0; }

/*
    * ==========================================================
    * QUICK LINKS GRID
    * ==========================================================
    */
.section-service .quicklinks-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 20px;
  width: 100%; }

/*
    * ==========================================================
    * QUICK LINK CARD
    * ==========================================================
    */
.section-service .quicklink-wrapper {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  min-height: 210px;
  padding: 30px 28px 26px;
  overflow: hidden;
  border: 1px solid #d9dee7;
  border-radius: 4px;
  background: #ffffff;
  box-shadow: 0 4px 16px rgba(16, 44, 82, 0.06);
  transition: background-color 0.3s ease, border-color 0.3s ease, box-shadow 0.3s ease, transform 0.3s ease;
  /*
            * Green accent line
            */
  /*
            * Subtle green background shape
            */ }
  .section-service .quicklink-wrapper::before {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 4px;
    background: #73be1c;
    content: "";
    transform: scaleX(1);
    transform-origin: left;
    transition: transform 0.3s ease; }
  .section-service .quicklink-wrapper::after {
    position: absolute;
    right: -45px;
    bottom: -45px;
    width: 120px;
    height: 120px;
    border-radius: 50%;
    background: rgba(115, 190, 28, 0.08);
    content: "";
    transition: transform 0.4s ease, background-color 0.4s ease; }
  .section-service .quicklink-wrapper:hover {
    border-color: #73be1c;
    box-shadow: 0 10px 28px rgba(16, 44, 82, 0.12);
    transform: translateY(-5px); }
    .section-service .quicklink-wrapper:hover::before {
      background: #219338;
      transform: scaleX(1); }
    .section-service .quicklink-wrapper:hover::after {
      background: rgba(115, 190, 28, 0.14);
      transform: scale(1.25); }
    .section-service .quicklink-wrapper:hover .arrow-link {
      color: #102C52;
      background: #219338;
      border-color: #219338; }

/*
     * ==========================================================
     * TITLE
     * ==========================================================
     */
.section-service .quicklink-item-title {
  position: relative;
  z-index: 2;
  max-width: 240px;
  margin: 0;
  padding: 0;
  color: #102c52;
  font-family: "New Science", sans-serif;
  font-size: 24px;
  font-weight: 700;
  line-height: 1.25;
  letter-spacing: 0.01em;
  transition: color 0.3s ease; }

/*
     * ==========================================================
     * GO BUTTON
     * ==========================================================
     */
.section-service .arrow-link {
  position: relative;
  z-index: 2;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: fit-content;
  margin-top: 25px;
  padding: 8px 15px 6px;
  border: 1px solid transparent;
  border-radius: 4px;
  background: #73be1c;
  color: #102c52;
  font-family: "Oxanium", sans-serif;
  font-size: 16px;
  font-weight: 700;
  line-height: 20px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  transition: background-color 0.3s ease, border-color 0.3s ease, color 0.3s ease; }

/*
     * ==========================================================
     * FULL CARD CLICK AREA
     * ==========================================================
     */
.section-service .hover-link {
  position: absolute;
  z-index: 5;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  text-decoration: none;
  cursor: pointer; }
  .section-service .hover-link:focus-visible {
    outline: 3px solid rgba(115, 190, 28, 0.45);
    outline-offset: -3px; }

/* =========================================================
   TABLET
   ========================================================= */
@media (max-width: 1199px) {
  .about-hobo .hero-banner {
    min-height: 520px; }
  .about-hobo .hero-banner-content {
    padding-top: 70px;
    padding-bottom: 70px; }
  .about-hobo .product-cards {
    gap: 20px; }
  .about-hobo .principles-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .about-hobo .section-contact .section-content {
    grid-template-columns: 1fr; }
  .about-hobo .section-contact h2 {
    grid-column: auto; } }

/* =========================================================
   TABLET / SMALL LAPTOP
   ========================================================= */
@media (max-width: 991px) {
  .about-hobo .container {
    padding-left: 25px;
    padding-right: 25px; }
  .about-hobo .hero-banner {
    min-height: 500px; }
  .about-hobo .hero-banner-media::after {
    background: linear-gradient(90deg, rgba(16, 44, 82, 0.9) 0%, rgba(16, 44, 82, 0.65) 55%, rgba(16, 44, 82, 0.25) 100%); }
  .about-hobo .product-cards {
    grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .about-hobo .product-card:last-child {
    grid-column: 1 / -1;
    max-width: calc(50% - 10px);
    margin: 0 auto; }
  .about-hobo .principles-grid {
    gap: 20px; }
  .about-hobo .contact-information {
    padding: 30px; }
  .section-service .quicklinks-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px; }
  .section-service .quicklink-wrapper {
    min-height: 190px;
    padding: 26px 24px 24px; }
  .section-service .quicklink-item-title {
    font-size: 22px; } }

/* =========================================================
   MOBILE
   ========================================================= */
@media (max-width: 767px) {
  .about-hobo .container {
    padding-left: 18px;
    padding-right: 18px; }
  /* Hero */
  .about-hobo .hero-banner {
    min-height: 600px;
    align-items: flex-end; }
  .about-hobo .hero-banner-media::after {
    background: linear-gradient(180deg, rgba(16, 44, 82, 0.15) 0%, rgba(16, 44, 82, 0.75) 45%, rgba(16, 44, 82, 0.95) 100%); }
  .about-hobo .hero-banner-content {
    padding-top: 50px;
    padding-bottom: 45px; }
  .about-hobo .hero-banner-title h1 {
    margin-bottom: 18px; }
  .about-hobo .hero-banner-caption {
    margin-top: 20px; }
  /* Common Sections */
  .about-hobo .section-proof-data h2,
  .about-hobo .section-about-licor h2,
  .about-hobo .section-core-principles h2,
  .about-hobo .section-contact h2 {
    margin-bottom: 15px;
    font-size: 32px; }
  .about-hobo .section-description {
    margin-bottom: 35px; }
  .about-hobo .section-description h5 {
    font-size: 19px; }
  .about-hobo .section-description h6 {
    font-size: 15px; }
  /* Product Cards */
  .about-hobo .product-cards {
    grid-template-columns: 1fr;
    gap: 20px;
    margin-top: 35px; }
  .about-hobo .product-card:last-child {
    grid-column: auto;
    max-width: none;
    margin: 0; }
  .about-hobo .product-card-content {
    padding: 25px; }
  .about-hobo .product-card-content h3 {
    font-size: 21px; }
  .about-hobo .arrow-link {
    font-size: 14px;
    padding: 7px 14px 5px; }
  /* Video */
  .about-hobo .video-wrapper {
    margin-top: 30px;
    border-radius: 4px; }
  /* Principles */
  .about-hobo .principles-grid {
    grid-template-columns: 1fr;
    gap: 15px; }
  .about-hobo .principle-card {
    padding: 28px 22px; }
  /* Contact */
  .about-hobo .section-contact .section-content {
    gap: 25px; }
  .about-hobo .contact-information {
    padding: 25px 20px; }
  .about-hobo .contact-information h4 {
    font-size: 20px; }
  .about-hobo .accordion-button {
    padding: 18px 20px;
    font-size: 17px; }
  .about-hobo .accordion-content {
    padding: 0 20px 25px; }
  .about-hobo .accommodation {
    grid-template-columns: 1fr;
    gap: 15px;
    padding: 15px; }
  .about-hobo .accommodation img {
    width: 100%;
    height: auto;
    max-height: 160px;
    object-fit: cover; }
  .about-hobo .secondary-button {
    width: 100%;
    text-align: center; }
  .section-service .quicklinks-grid {
    grid-template-columns: 1fr;
    gap: 15px; }
  .section-service .quicklink-wrapper {
    min-height: 165px;
    padding: 24px 22px 21px; }
    .section-service .quicklink-wrapper:hover {
      transform: translateY(-3px); }
  .section-service .quicklink-item-title {
    max-width: 100%;
    font-size: 21px;
    line-height: 1.25; }
  .section-service .arrow-link {
    margin-top: 20px;
    padding: 7px 13px 5px; } }

/* =========================================================
   EXTRA SMALL MOBILE
   ========================================================= */
@media (max-width: 480px) {
  .about-hobo .hero-banner {
    min-height: 560px; }
  .about-hobo .section-proof-data h2,
  .about-hobo .section-about-licor h2,
  .about-hobo .section-core-principles h2,
  .about-hobo .section-contact h2 {
    font-size: 28px; }
  .about-hobo .product-card-content {
    padding: 22px; }
  .about-hobo .principle-card {
    padding: 25px 20px; }
  .about-hobo .contact-information {
    padding: 22px 18px; }
  .about-hobo .accordion-button {
    padding: 16px 18px; }
  .about-hobo .accordion-content {
    padding-left: 18px;
    padding-right: 18px; }
  .section-service .quicklinks-grid {
    gap: 12px; }
  .section-service .quicklink-wrapper {
    min-height: 145px;
    padding: 21px 19px 19px; }
  .section-service .quicklink-item-title {
    font-size: 19px;
    line-height: 1.3; }
  .section-service .arrow-link {
    margin-top: 16px;
    padding: 6px 12px 4px;
    font-size: 14px;
    letter-spacing: 0.06em; }
  .section-service .quicklink-wrapper::after {
    right: -55px;
    bottom: -55px;
    width: 110px;
    height: 110px; } }

/* ==========================================================
   HOBO AMBASSADORS
   Homepage-style responsive design
   ========================================================== */
.section-ambassadors,
.section-ambassador-apply {
  width: 100%;
  box-sizing: border-box; }

/* ==========================================================
   AMBASSADOR LISTING SECTION
   ========================================================== */
.section-ambassadors {
  background: #ffffff; }

.section-ambassadors .hero-banner {
  background: #102c52;
  color: #fff;
  padding: 90px 0px;
  margin-bottom: 50px; }

.section-ambassadors .hero-banner .title-wrapper h1 {
  max-width: 750px;
  margin-bottom: 25px;
  color: #ffffff;
  font-size: clamp(30px, 4vw, 42px);
  font-weight: 700;
  line-height: normal;
  letter-spacing: 2%; }

.section-ambassadors .hero-banner .title-wrapper h1::after {
  content: "";
  display: block;
  width: 55px;
  height: 4px;
  margin: 20px 0 26px;
  background: #73BE1C;
  border-radius: 2px; }

.section-ambassadors .hero-banner .summary p {
  margin-bottom: 0;
  color: #ffffff;
  font-size: clamp(16px, 2vw, 20px);
  font-weight: 400;
  line-height: normal; }

/* ==========================================================
   SECTION HEADING
   ========================================================== */
.section-ambassadors .section-title,
.section-ambassadors h2 {
  margin: 0 0 45px;
  color: #102c52;
  font-family: "New Science", sans-serif;
  font-size: 34px;
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: 0.01em;
  text-align: center; }

/*
 * Green heading accent
 */
.section-ambassadors .section-title::after,
.section-ambassadors h2::after {
  display: block;
  width: 55px;
  height: 4px;
  margin: 16px auto 0;
  background: #73be1c;
  content: ""; }

/* ==========================================================
   AMBASSADOR GRID
   ========================================================== */
.section-ambassadors .ambassadors-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 30px;
  width: 100%;
  padding-bottom: 50px; }

/* ==========================================================
   AMBASSADOR CARD
   ========================================================== */
.section-ambassadors .ambassadors-grid .ambassador-card {
  position: relative;
  display: flex;
  flex-direction: column;
  height: 100%;
  overflow: hidden;
  border: 1px solid #d9dee7;
  border-radius: 6px;
  background: #ffffff;
  box-shadow: 0 4px 16px rgba(16, 44, 82, 0.07);
  transition: transform 0.3s ease, box-shadow 0.3s ease, border-color 0.3s ease;
  /*
     * Top green accent
     */ }
  .section-ambassadors .ambassadors-grid .ambassador-card::before {
    position: absolute;
    z-index: 2;
    top: 0;
    left: 0;
    width: 100%;
    height: 4px;
    background: #73be1c;
    content: "";
    transition: background-color 0.3s ease; }
  .section-ambassadors .ambassadors-grid .ambassador-card:hover {
    border-color: #73be1c;
    box-shadow: 0 12px 30px rgba(16, 44, 82, 0.13);
    transform: translateY(-5px); }
    .section-ambassadors .ambassadors-grid .ambassador-card:hover::before {
      background: #219338; }
    .section-ambassadors .ambassadors-grid .ambassador-card:hover .ambassador-image img {
      transform: scale(1.04); }

/* ==========================================================
   AMBASSADOR IMAGE
   ========================================================== */
.section-ambassadors .ambassadors-grid .ambassador-image {
  display: block;
  width: 100%;
  aspect-ratio: 1 / 1;
  margin: 0;
  overflow: hidden;
  background: #edf0f5; }
  .section-ambassadors .ambassadors-grid .ambassador-image img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.5s ease; }

/* ==========================================================
   AMBASSADOR CONTENT
   ========================================================== */
.section-ambassadors .ambassadors-grid .ambassador-content {
  display: flex;
  flex: 1;
  flex-direction: column;
  padding: 25px 24px 27px;
  background: #f0f5f7;
  box-sizing: border-box; }
  .section-ambassadors .ambassadors-grid .ambassador-content h3 {
    margin: 0 0 10px;
    color: #102c52;
    font-family: "New Science", sans-serif;
    font-size: 23px;
    font-weight: 700;
    line-height: 1.25;
    letter-spacing: 0.01em;
    transition: color 0.3s ease; }
  .section-ambassadors .ambassadors-grid .ambassador-content p {
    margin: 0;
    color: #333333;
    font-family: "Roboto", sans-serif;
    font-size: 15px;
    font-weight: 400;
    line-height: 1.65; }
  .section-ambassadors .ambassadors-grid .ambassador-content a {
    color: #102c52;
    font-weight: 600;
    text-decoration: underline;
    transition: color 0.3s ease; }
    .section-ambassadors .ambassadors-grid .ambassador-content a:hover, .section-ambassadors .ambassadors-grid .ambassador-content a:focus {
      color: #219338; }

/* ==========================================================
   AMBASSADOR APPLICATION SECTION
   ========================================================== */
.hobo-ambassadors-page .section-ambassador-apply {
  padding: 50px 0;
  background: #edf0f5;
  margin-bottom: 50px; }

/* ==========================================================
   APPLICATION HEADING
   ========================================================== */
.section-ambassador-apply h2 {
  position: relative;
  margin: 0 auto 40px;
  color: #102c52;
  font-family: "New Science", sans-serif;
  font-size: 34px;
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: 0.01em;
  text-align: center; }
  .section-ambassador-apply h2::after {
    display: block;
    width: 55px;
    height: 4px;
    margin: 16px auto 0;
    background: #73be1c;
    content: ""; }

/* ==========================================================
   FORM WRAPPER
   ========================================================== */
.hobo-ambassadors-page .ambassador-form,
.hobo-ambassadors-page .section-ambassador-apply form {
  width: 100%;
  max-width: 800px;
  margin: 0 auto;
  padding: 30px 18px;
  border: 1px solid #d9dee7;
  border-radius: 10px;
  background: #ffffff;
  box-shadow: 0 6px 24px rgba(16, 44, 82, 0.08);
  box-sizing: border-box; }

/* ==========================================================
   FORM ROW
   ========================================================== */
.hobo-ambassadors-page .section-ambassador-apply .form-row {
  margin: 0;
  display: flex;
  align-items: center;
  justify-content: center; }

/*
 * Make full-width fields span both columns.
 * Useful for textarea/message fields.
 */
.section-ambassador-apply .form-row .form-field.full-width,
.section-ambassador-apply .form-row .form-field.form-field--full,
.section-ambassador-apply .form-row .form-field:last-child {
  grid-column: 1 / -1; }

/* ==========================================================
   FORM FIELD
   ========================================================== */
.section-ambassador-apply .form-field {
  min-width: 0;
  margin: 0 0 24px;
  box-sizing: border-box;
  padding-left: 0.75rem;
  padding-right: 0.75rem; }

/* ==========================================================
   FORM LABEL
   ========================================================== */
.section-ambassador-apply .form-field label {
  display: block;
  margin: 0 0 8px;
  color: #102c52;
  font-family: "Roboto", sans-serif;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.4; }

/*
 * Required marker
 */
.section-ambassador-apply .form-field label .required,
.section-ambassador-apply .form-field label abbr {
  color: #219338; }

/* ==========================================================
   INPUT / SELECT / TEXTAREA
   ========================================================== */
.section-ambassador-apply .form-field input,
.section-ambassador-apply .form-field select,
.section-ambassador-apply .form-field textarea,
.section-ambassador-apply .form-control {
  display: block;
  width: 100%;
  min-width: 0;
  box-sizing: border-box;
  border: 1px solid #c8d0da;
  border-radius: 4px;
  background: #ffffff;
  color: #333333;
  font-family: "Roboto", sans-serif;
  font-size: 15px;
  font-weight: 400;
  line-height: 22px;
  transition: border-color 0.25s ease, box-shadow 0.25s ease, background-color 0.25s ease; }

/* ==========================================================
   INPUT
   ========================================================== */
.section-ambassador-apply .form-field input,
.section-ambassador-apply .form-control:not(textarea) {
  height: 48px;
  padding: 11px 14px; }

/* ==========================================================
   SELECT
   ========================================================== */
.section-ambassador-apply .form-field select {
  height: 48px;
  padding: 10px 40px 10px 14px;
  cursor: pointer; }

/* ==========================================================
   TEXTAREA
   ========================================================== */
.section-ambassador-apply .form-field textarea,
.section-ambassador-apply textarea.form-control {
  min-height: 140px;
  padding: 12px 14px;
  resize: vertical; }

/* ==========================================================
   PLACEHOLDER
   ========================================================== */
.section-ambassador-apply input::placeholder,
.section-ambassador-apply textarea::placeholder {
  color: #7a8795;
  opacity: 1; }

/* ==========================================================
   FOCUS STATE
   ========================================================== */
.section-ambassador-apply .form-field input:focus,
.section-ambassador-apply .form-field select:focus,
.section-ambassador-apply .form-field textarea:focus,
.section-ambassador-apply .form-control:focus {
  border-color: #73be1c;
  outline: none;
  background: #ffffff;
  box-shadow: 0 0 0 3px rgba(115, 190, 28, 0.15); }

/* ==========================================================
   HOVER STATE
   ========================================================== */
.section-ambassador-apply .form-field input:hover,
.section-ambassador-apply .form-field select:hover,
.section-ambassador-apply .form-field textarea:hover {
  border-color: #102c52; }

/* ==========================================================
   HIDDEN FIELDS
   ========================================================== */
.section-ambassador-apply .form-field.is-hidden,
.section-ambassador-apply .form-hidden-field {
  display: none !important; }

/* ==========================================================
   CHECKBOX / RADIO
   ========================================================== */
.section-ambassador-apply input[type="checkbox"],
.section-ambassador-apply input[type="radio"] {
  width: auto;
  height: auto;
  margin-right: 8px;
  vertical-align: middle; }

/* ==========================================================
   FORM HELP / DESCRIPTION
   ========================================================== */
.section-ambassador-apply .form-field .description,
.section-ambassador-apply .form-field .help-text,
.section-ambassador-apply .form-note {
  color: #5a6b7a;
  font-family: "Roboto", sans-serif;
  font-size: 13px;
  line-height: 1.5; }

/* ==========================================================
   ERROR STATE
   ========================================================== */
.section-ambassador-apply .form-field.has-error input,
.section-ambassador-apply .form-field.has-error select,
.section-ambassador-apply .form-field.has-error textarea,
.section-ambassador-apply .form-field input.error,
.section-ambassador-apply .form-field select.error,
.section-ambassador-apply .form-field textarea.error {
  border-color: #c0392b;
  box-shadow: 0 0 0 2px rgba(192, 57, 43, 0.08); }

/* ==========================================================
   ERROR MESSAGE
   ========================================================== */
.section-ambassador-apply .form-field .error,
.section-ambassador-apply .form-field .form-error {
  display: block;
  margin-top: 6px;
  color: #c0392b;
  font-family: "Roboto", sans-serif;
  font-size: 13px;
  line-height: 1.4; }

/* ==========================================================
   FORM ACTIONS
   ========================================================== */
.section-ambassador-apply .form-actions {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-top: 8px;
  text-align: center; }

/* ==========================================================
   SUBMIT BUTTON
   ========================================================== */
.section-ambassador-apply .form-submit {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 170px;
  min-height: 48px;
  margin: 0;
  padding: 11px 28px 9px;
  border: 1px solid transparent;
  border-radius: 4px;
  background: #73be1c;
  color: #102C52;
  font-family: "Oxanium", sans-serif;
  font-size: 14px;
  font-weight: 700;
  line-height: 22px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  cursor: pointer;
  transition: background-color 0.3s ease, border-color 0.3s ease, color 0.3s ease, transform 0.3s ease, box-shadow 0.3s ease; }
  .section-ambassador-apply .form-submit:hover, .section-ambassador-apply .form-submit:focus {
    border-color: #219338;
    background: #219338;
    color: #ffffff;
    box-shadow: 0 5px 14px rgba(33, 147, 56, 0.2);
    outline: none;
    transform: translateY(-2px);
    color: #102C52; }
  .section-ambassador-apply .form-submit:active {
    background: #219338;
    border-color: #219338;
    transform: translateY(0); }

/* ==========================================================
   FORM NOTE
   ========================================================== */
.section-ambassador-apply .form-note {
  max-width: 650px;
  margin: 22px auto 0;
  color: #5a6b7a;
  font-size: 14px;
  line-height: 1.6;
  text-align: center; }

/* ==========================================================
   TAG / EXTRA CONTENT
   ========================================================== */
.section-ambassador-apply a {
  color: #102c52;
  transition: color 0.3s ease; }
  .section-ambassador-apply a:hover, .section-ambassador-apply a:focus {
    color: #219338; }

/* ==========================================================
   TABLET
   768px - 991px
   ========================================================== */
@media screen and (max-width: 991px) {
  .section-ambassadors > .container,
  .section-ambassador-apply > .container {
    padding: 0 25px; }
  .section-ambassadors .section-title,
  .section-ambassadors h2,
  .section-ambassador-apply h2 {
    font-size: 30px; }
  .section-ambassadors .ambassadors-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 24px; }
  .section-ambassadors .ambassador-content {
    padding: 22px 20px 24px; }
    .section-ambassadors .ambassador-content h3 {
      font-size: 21px; } }

/* ==========================================================
   MOBILE
   768px and below
   ========================================================== */
@media screen and (max-width: 767px) {
  .section-ambassadors .hero-banner {
    padding: 70px 0px; }
  .section-ambassadors .hero-banner .title-wrapper h1::after {
    width: 45px;
    height: 3px; }
  .hobo-ambassadors-page .section-ambassador-apply {
    padding: 40px 0; }
  .section-ambassadors > .container,
  .section-ambassador-apply > .container {
    padding: 0 18px; }
  .section-ambassadors .section-title,
  .section-ambassadors h2,
  .section-ambassador-apply h2 {
    margin-bottom: 30px;
    font-size: 27px;
    line-height: 1.25; }
  .section-ambassadors .section-title::after,
  .section-ambassadors h2::after,
  .section-ambassador-apply h2::after {
    width: 45px;
    height: 3px;
    margin-top: 13px; }
  /*
     * One card per row
     */
  .section-ambassadors .ambassadors-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px; }
  .section-ambassadors .ambassador-card:hover {
    transform: none; }
  .section-ambassadors .ambassador-content {
    padding: 21px 20px 23px; }
    .section-ambassadors .ambassador-content h3 {
      font-size: 21px; }
    .section-ambassadors .ambassador-content p {
      font-size: 14px;
      line-height: 1.6; }
  /*
     * Form
     */
  .hobo-ambassadors-page .ambassador-form,
  .hobo-ambassadors-page .section-ambassador-apply form {
    max-width: 100%;
    padding: 24px; }
  .hobo-ambassadors-page .section-ambassador-apply .form-row {
    flex-wrap: wrap; }
  .hobo-ambassadors-page .section-ambassador-apply .form-field {
    padding: 0; }
  .section-ambassador-apply .form-row .form-field.full-width,
  .section-ambassador-apply .form-row .form-field.form-field--full,
  .section-ambassador-apply .form-row .form-field:last-child {
    grid-column: auto; }
  .section-ambassador-apply .form-field {
    margin-bottom: 20px; }
  .section-ambassador-apply .form-actions {
    margin-top: 5px; }
  .section-ambassador-apply .form-submit {
    width: 100%;
    min-height: 46px; } }

/* ==========================================================
   SMALL MOBILE
   480px and below
   ========================================================== */
@media screen and (max-width: 480px) {
  .section-ambassadors .hero-banner {
    padding: 50px 0px; }
  .hobo-ambassadors-page .section-ambassador-apply {
    padding: 30px 0; }
  .section-ambassadors > .container,
  .section-ambassador-apply > .container {
    padding: 0 15px; }
  .section-ambassadors .section-title,
  .section-ambassadors h2,
  .section-ambassador-apply h2 {
    margin-bottom: 25px;
    font-size: 23px;
    line-height: 1.3; }
  .section-ambassadors .ambassadors-grid {
    grid-template-columns: 1fr; }
  .section-ambassadors .ambassador-content {
    padding: 19px 17px 21px; }
    .section-ambassadors .ambassador-content h3 {
      margin-bottom: 8px;
      font-size: 19px; }
    .section-ambassadors .ambassador-content p {
      font-size: 14px;
      line-height: 1.55; }
  /*
     * Form card
     */
  .hobo-ambassadors-page .ambassador-form,
  .hobo-ambassadors-page .section-ambassador-apply form {
    padding: 20px; }
  .section-ambassador-apply .form-field {
    margin-bottom: 18px; }
  .section-ambassador-apply .form-field label {
    margin-bottom: 6px;
    font-size: 14px; }
  .section-ambassador-apply .form-field input,
  .section-ambassador-apply .form-field select,
  .section-ambassador-apply .form-control:not(textarea) {
    height: 45px;
    padding: 9px 12px;
    font-size: 14px; }
  .section-ambassador-apply .form-field textarea,
  .section-ambassador-apply textarea.form-control {
    min-height: 120px;
    padding: 10px 12px;
    font-size: 14px; }
  .section-ambassador-apply .form-submit {
    min-height: 44px;
    padding: 9px 20px 7px;
    font-size: 12px;
    letter-spacing: 0.06em; }
  .section-ambassador-apply .form-note {
    font-size: 12px; } }

/* =========================================================
   NEWA PAGE - BASE
   Parent: .node__content
   ========================================================= */
.node__content {
  width: 100%;
  overflow: hidden; }

.node__content *,
.node__content *::before,
.node__content *::after {
  box-sizing: border-box; }

.node__content img {
  max-width: 100%;
  height: auto;
  display: block; }

/* =========================================================
   COMMON SECTION
   ========================================================= */
.node__content
.section-newa-intro,
.node__content
.section-newa-modeling,
.node__content
.section-newa-features,
.node__content
.section-newa-benefits,
.node__content
.section-newa-tools,
.node__content
.section-newa-partners,
.node__content
.section-newa-hobolink,
.node__content
.section-newa-starter-kit,
.node__content
.section-newa-faq,
.node__content
.section-newa-resources {
  width: 100%;
  position: relative; }

/* =========================================================
   TYPOGRAPHY
   ========================================================= */
.node__content h2 {
  margin: 0 0 25px;
  font-size: 36px;
  line-height: normal;
  font-weight: 700;
  font-family: 'New Science'; }

.node__content h3 {
  line-height: 1.3; }

.node__content p {
  margin: 0 0 18px;
  font-size: 17px;
  line-height: 1.7; }

.node__content ul {
  margin: 0;
  padding-left: 22px; }

.node__content li {
  margin-bottom: 10px;
  font-size: 16px;
  line-height: 1.6;
  list-style: disc; }

.node__content li::marker {
  color: #73BE1C; }

.node__content .hero-banner {
  position: relative;
  min-height: 600px;
  display: flex;
  align-items: center;
  overflow: hidden; }

.node__content .hero-banner > img {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover; }

.node__content .hero-banner::after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background: linear-gradient(90deg, rgba(16, 44, 82, 0.94) 0%, rgba(16, 44, 82, 0.82) 35%, rgba(16, 44, 82, 0.38) 65%, rgba(16, 44, 82, 0.05) 100%);
  pointer-events: none; }

.node__content .hero-content {
  position: relative;
  z-index: 2;
  padding-top: 80px;
  padding-bottom: 80px; }

.node__content .hero-content h1 {
  max-width: 750px;
  margin-bottom: 25px;
  color: #ffffff;
  font-size: clamp(30px, 4vw, 42px);
  font-weight: 700;
  line-height: 1.1; }

.node__content .hero-content .summary {
  max-width: 720px; }

.node__content .hero-content .summary h4 {
  margin-bottom: 0;
  color: #ffffff;
  font-size: 22px;
  font-weight: 400;
  line-height: 1.6; }

.node__content .hero-content .hero-banner-link {
  color: #fff;
  padding: 10px;
  border: 1px solid;
  display: inline-block;
  margin: 30px 0;
  font-size: 20px;
  font-weight: 500;
  border-radius: 4px; }
  .node__content .hero-content .hero-banner-link:hover {
    color: #73BE1C; }

/* =========================================================
   SECTION 1 - INTRO
   ========================================================= */
.node__content .section-newa-intro {
  background: #ffffff;
  padding: 50px 0 30px 0; }

.node__content .section-newa-intro .col-12 {
  width: 100%; }

.node__content .section-newa-intro .bs-text-center {
  text-align: center; }

.node__content .section-newa-intro h2 {
  margin-bottom: 25px; }

.node__content .section-newa-intro p {
  margin-bottom: 15px; }

/* =========================================================
   SECTION 2 - MODELING
   ========================================================= */
.node__content .section-newa-modeling {
  background: #edf0f5;
  padding: 50px 0; }

.node__content .section-newa-modeling
.ping-pong-wrapper {
  position: relative;
  min-height: 500px;
  overflow: hidden;
  display: flex;
  align-items: center; }

.node__content .section-newa-modeling
.ping-pong-wrapper__background {
  flex: 1; }

.node__content .section-newa-modeling
.ping-pong-wrapper__background article,
.node__content .section-newa-modeling
.ping-pong-wrapper__background .field,
.node__content .section-newa-modeling
.ping-pong-wrapper__background img {
  width: 100%;
  height: 100%; }

.node__content .section-newa-modeling
.ping-pong-wrapper__content {
  position: relative;
  z-index: 2;
  min-height: 500px;
  display: flex;
  align-items: center;
  flex: 1; }

.node__content .section-newa-modeling
.ping-pong-wrapper__content__inner {
  background: #ffffff;
  padding: 30px;
  max-width: 500px;
  border-radius: 6px;
  box-shadow: 0 10px 35px rgba(0, 0, 0, 0.08); }

.node__content .section-newa-modeling
.quicklink-item-title {
  margin-bottom: 20px;
  margin-right: 14px; }

/* =========================================================
   SECTION 3 - FEATURES
   ========================================================= */
.node__content .section-newa-features {
  background: #ffffff;
  padding: 50px 0; }

.node__content .section-newa-features table {
  width: 100%;
  border-collapse: collapse;
  border-spacing: 0;
  background: #ffffff; }

.node__content .section-newa-features table td {
  width: 50%;
  padding: 18px 25px;
  border: 1px solid #d9dee6;
  vertical-align: middle;
  font-size: 16px;
  line-height: 1.5; }

.node__content .section-newa-features table tr:first-child td {
  background: #102c52;
  color: #ffffff; }

.node__content .section-newa-features table tr:first-child h4 {
  color: #ffffff;
  margin: 0;
  font-size: 20px; }

.node__content .section-newa-features table tr:not(:first-child):nth-child(even) td {
  background: #f7f8fa; }

.node__content .section-newa-features table p {
  margin: 0; }

/* =========================================================
   SECTION 4 - BENEFITS / INTERACTIVE INFO
   ========================================================= */
/* =========================================================
   NEWA BENEFITS SLIDER
   ========================================================= */
.node__content .section-newa-benefits {
  background: #edf0f5;
  padding: 50px 0; }

.node__content .section-newa-benefits .newa-benefits {
  display: grid;
  grid-template-columns: 42% 58%;
  align-items: center;
  gap: 50px; }

/* =========================================================
   TEXT AREA
   ========================================================= */
.node__content .newa-benefits__content {
  min-width: 0; }

.node__content .newa-benefits__content > h2 {
  margin: 0 0 35px;
  font-size: 36px;
  line-height: 1.2;
  font-weight: 700;
  color: #102c52; }

/* =========================================================
   TEXT SLIDER
   ========================================================= */
.node__content .newa-benefits__text-slider {
  position: relative; }

.node__content .slick-slide {
  margin-bottom: 10px; }

.node__content .newa-benefit {
  padding: 25px 30px;
  border-left: 4px solid #102C52;
  cursor: pointer;
  transition: all 0.3s ease; }

.node__content .slick-current .newa-benefit {
  background: #ffffff;
  border-left-color: #73be1c;
  box-shadow: 0 8px 25px rgba(0, 0, 0, 0.08); }

.node__content .newa-benefit h3 {
  margin: 0 0 10px;
  font-size: 21px;
  line-height: 1.3;
  font-weight: 700;
  color: #102c52; }

.node__content .newa-benefit p {
  margin: 0;
  font-size: 16px;
  line-height: 1.6;
  color: #333333; }

/* =========================================================
   IMAGE SLIDER
   ========================================================= */
.node__content .newa-benefits__image {
  position: relative;
  min-width: 0; }

.node__content .newa-benefits__image-slider {
  position: relative; }

.node__content .newa-benefits__image-slider .slick-slide {
  padding: 0; }

.node__content .newa-benefits__image-slider img {
  width: 100%;
  aspect-ratio: 1 / 1;
  display: block;
  object-fit: cover; }

/* =========================================================
   SLIDER ARROWS
   ========================================================= */
.node__content .newa-benefits__text-slider .slick-prev,
.node__content .newa-benefits__text-slider .slick-next {
  position: absolute;
  z-index: 5;
  width: 40px;
  height: 40px;
  border: 0;
  background: #102c52;
  color: #ffffff;
  font-size: 0;
  cursor: pointer; }

.node__content .newa-benefits__text-slider .slick-prev {
  left: -20px;
  top: 50%;
  transform: translateY(-50%); }

.node__content .newa-benefits__text-slider .slick-next {
  right: -20px;
  top: 50%;
  transform: translateY(-50%); }

.node__content .newa-benefits__text-slider .slick-prev::before {
  content: "‹";
  font-size: 30px;
  line-height: 1; }

.node__content .newa-benefits__text-slider .slick-next::before {
  content: "›";
  font-size: 30px;
  line-height: 1; }

/* =========================================================
   DOTS
   ========================================================= */
.node__content .newa-benefits__dots {
  margin-top: 20px; }

.node__content .newa-benefits__dots .slick-dots {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 8px;
  list-style: none;
  margin: 0;
  padding: 0; }

.node__content .newa-benefits__dots .slick-dots li {
  margin: 0;
  padding: 0; }

.node__content .newa-benefits__dots .slick-dots button {
  width: 15px;
  height: 15px;
  padding: 0;
  border: 0;
  border-radius: 50%;
  background: #102C52;
  font-size: 0;
  cursor: pointer; }

.node__content .newa-benefits__dots .slick-dots button::before {
  left: 0;
  top: 0; }

.node__content .newa-benefits__dots .slick-dots .slick-active button {
  background: #73be1c; }

.node__content .newa-benefits__dots .slick-dots .slick-active button::before {
  background: #73be1c; }

/* =========================================================
   TABLET
   ========================================================= */
@media (max-width: 991px) {
  .node__content .section-newa-benefits {
    padding: 60px 0; }
  .node__content .section-newa-benefits .newa-benefits {
    grid-template-columns: 1fr;
    gap: 40px; }
  .node__content .newa-benefits__content > h2 {
    font-size: 32px;
    text-align: center; }
  .node__content .newa-benefits__text-slider {
    padding: 0 20px; }
  .node__content .newa-benefit {
    padding: 20px 25px; }
  .node__content .newa-benefits__image {
    max-width: 650px;
    width: 100%;
    margin: 0 auto; } }

/* =========================================================
   MOBILE
   ========================================================= */
@media (max-width: 767px) {
  .node__content .section-newa-benefits {
    padding: 45px 0; }
  .node__content .section-newa-benefits .newa-benefits {
    display: block; }
  .node__content .newa-benefits__content > h2 {
    font-size: 24px;
    margin-bottom: 25px;
    text-align: left; }
  .node__content .newa-benefits__text-slider {
    padding: 0; }
  .node__content .newa-benefit {
    padding: 20px; }
  .node__content .newa-benefit h3 {
    font-size: 19px; }
  .node__content .newa-benefit p {
    font-size: 15px; }
  .node__content .newa-benefits__image {
    margin-top: 25px; }
  .node__content .newa-benefits__image-slider img {
    aspect-ratio: 1 / 1; }
  .node__content .newa-benefits__text-slider .slick-prev,
  .node__content .newa-benefits__text-slider .slick-next {
    width: 35px;
    height: 35px; }
  .node__content .newa-benefits__text-slider .slick-prev {
    left: -10px; }
  .node__content .newa-benefits__text-slider .slick-next {
    right: -10px; } }

/* =========================================================
   SECTION 5 - TOOLS
   ========================================================= */
.node__content .section-newa-tools {
  background: #ffffff;
  padding: 50px 0; }

.node__content .section-newa-tools
.ping-pong-wrapper {
  display: grid;
  grid-template-columns: 1fr 1fr;
  align-items: center;
  gap: 60px; }

.node__content .section-newa-tools
.ping-pong-media-wrapper {
  width: 100%; }

.node__content .section-newa-tools
.ping-pong-media-wrapper img {
  width: 100%;
  height: auto; }

.node__content .section-newa-tools
.quicklink-wrapper {
  padding: 20px; }

.node__content .section-newa-tools
.quicklink-item-title {
  margin-bottom: 20px; }

.node__content .section-newa-tools
.quicklink-item-description li {
  margin-bottom: 12px; }

/* =========================================================
   SECTION 6 - PARTNERS
   ========================================================= */
.node__content .section-newa-partners {
  background: #edf0f5;
  padding: 50px 0; }

.node__content .section-newa-partners
.ping-pong-wrapper {
  display: grid;
  grid-template-columns: 1fr 1fr;
  align-items: center;
  gap: 60px; }

.node__content .section-newa-partners
.ping-pong-media-wrapper img {
  width: 100%;
  height: auto; }

.node__content .section-newa-partners
.quicklink-wrapper {
  padding: 20px; }

.node__content .section-newa-partners
.quicklink-item-title {
  margin-bottom: 20px; }

.node__content .section-newa-partners
h6 {
  font-size: 18px;
  line-height: 1.5;
  text-transform: initial; }

/* =========================================================
   SECTION 7 - HOBOlink
   ========================================================= */
.node__content .section-newa-hobolink {
  background: #ffffff;
  padding: 50px 0; }

.node__content .section-newa-hobolink
.ping-pong-wrapper {
  display: grid;
  grid-template-columns: 1fr 1fr;
  align-items: center;
  gap: 60px; }

.node__content .section-newa-hobolink
.ping-pong-media-wrapper img {
  width: 100%;
  height: auto; }

.node__content .section-newa-hobolink
.quicklink-item-title {
  margin-bottom: 20px; }

.node__content .section-newa-hobolink
.arrow-link {
  display: inline-block;
  margin-top: 15px;
  font-weight: 700;
  color: #102c52; }

.node__content .section-newa-hobolink
.hover-link {
  display: none; }

/* =========================================================
   SECTION 8 - STARTER KIT
   ========================================================= */
.node__content .section-newa-starter-kit {
  background: #edf0f5;
  padding: 50px 0; }

.node__content .section-newa-starter-kit > .container > .layout
> .col-12 > .block-webform {
  max-width: 1000px;
  margin: 0 auto; }

.node__content .section-newa-starter-kit
> .container > .layout > .col-12 > .block-webform > h2 {
  text-align: center;
  margin-bottom: 40px; }

/* =========================================================
   STARTER KIT - FORM
   ========================================================= */
.node__content .section-newa-starter-kit
.webform-submission-form {
  background: #ffffff;
  padding: 40px;
  box-shadow: 0 10px 35px rgba(0, 0, 0, 0.08); }

.node__content .section-newa-starter-kit
.webform-wizard-pages-links {
  display: none; }

.node__content .section-newa-starter-kit
.webform-progress {
  margin-bottom: 40px; }

.node__content .section-newa-starter-kit
.progress-tracker {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 10px;
  list-style: none;
  padding: 0;
  margin: 0; }

.node__content .section-newa-starter-kit
.progress-step {
  position: relative;
  text-align: center;
  list-style: none; }

.node__content .section-newa-starter-kit
.progress-title {
  padding: 15px 10px;
  background: #edf0f5;
  border-radius: 4px;
  cursor: pointer; }

.node__content .section-newa-starter-kit
.progress-step.is-active .progress-title {
  background: #102c52;
  color: #ffffff; }

.node__content .section-newa-starter-kit
.progress-title__info {
  font-size: 13px;
  font-weight: 600;
  margin-bottom: 3px; }

.node__content .section-newa-starter-kit
.progress-title__title {
  font-size: 15px;
  font-weight: 700; }

/* =========================================================
   STARTER KIT - PRODUCT OPTIONS
   ========================================================= */
.node__content .section-newa-starter-kit
.step-title {
  font-size: 25px;
  margin: 0 0 25px;
  padding-bottom: 15px;
  border-bottom: 1px solid #d9dee6; }

.node__content .section-newa-starter-kit
.step-title__label {
  display: inline-block;
  margin-right: 8px;
  color: #73be1c; }

.node__content .section-newa-starter-kit
.step-title__content {
  font-weight: 700; }

.node__content .section-newa-starter-kit
.prod-info__price {
  font-weight: 700; }

.node__content .section-newa-starter-kit
.included-product {
  margin: 0 0 25px;
  padding: 20px;
  border: 1px solid #d9dee6;
  background: #ffffff; }

.node__content .section-newa-starter-kit
.included-product legend {
  padding: 0;
  margin-bottom: 15px;
  font-size: 18px;
  font-weight: 700; }

.node__content .section-newa-starter-kit
.js-form-item {
  position: relative; }

.node__content .section-newa-starter-kit .quantity-wrapper {
  margin-bottom: 16px; }

/* ============================================
   DECREASE BUTTON — adds a "−" (minus) sign
   ============================================ */
.button.decrease-button {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 12px;
  font-size: 0.95rem;
  font-weight: 600;
  letter-spacing: 0.3px;
  line-height: 1;
  border-radius: 100px;
  border: 2px solid #102c52;
  background-color: transparent;
  color: #102c52;
  cursor: pointer;
  transition: all 0.25s ease;
  user-select: none;
  white-space: nowrap;
  box-shadow: 0 2px 6px rgba(16, 44, 82, 0.06);
  height: 30px;
  width: 30px; }

/* The minus sign — two horizontal bars */
.button.decrease-button::before {
  content: "";
  display: inline-block;
  width: 14px;
  height: 2px;
  background-color: currentColor;
  /* inherits text color */
  border-radius: 2px;
  transition: background-color 0.25s ease;
  flex-shrink: 0; }

.button.decrease-button:hover {
  background-color: #102c52;
  color: #ffffff;
  border-color: #102c52;
  box-shadow: 0 6px 16px rgba(16, 44, 82, 0.25);
  transform: translateY(-2px); }

.button.decrease-button:active {
  transform: translateY(0);
  box-shadow: 0 2px 6px rgba(16, 44, 82, 0.15);
  background-color: #0a1f3a;
  border-color: #0a1f3a; }

.button.decrease-button:focus-visible {
  outline: 3px solid rgba(115, 190, 28, 0.5);
  outline-offset: 2px; }

/* ============================================
   INCREASE BUTTON — adds a "+" (plus) sign
   ============================================ */
.node__content div[data-webform-key="step_2"] .button.increase-button {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 12px;
  font-size: 0.95rem;
  font-weight: 600;
  letter-spacing: 0.3px;
  line-height: 1;
  border-radius: 40px;
  border: 2px solid #73be1c;
  background-color: #73be1c;
  color: #ffffff;
  cursor: pointer;
  transition: all 0.25s ease;
  user-select: none;
  white-space: nowrap;
  box-shadow: 0 2px 6px rgba(115, 190, 28, 0.2);
  height: 30px;
  width: 30px; }

/* The plus sign — horizontal bar */
.node__content div[data-webform-key="step_2"] .button.increase-button::before {
  content: "";
  display: inline-block;
  width: 14px;
  height: 2px;
  background-color: currentColor;
  border-radius: 2px;
  transition: background-color 0.25s ease;
  flex-shrink: 0; }

/* The plus sign — vertical bar */
.node__content div[data-webform-key="step_2"] .button.increase-button::after {
  content: "";
  position: absolute;
  width: 2px;
  height: 14px;
  background-color: currentColor;
  border-radius: 2px;
  transition: background-color 0.25s ease;
  left: 48%;
  top: 50%;
  transform: translateY(-50%);
  pointer-events: none; }

.node__content div[data-webform-key="step_2"] .button.increase-button:hover {
  background-color: #5fa514;
  border-color: #5fa514;
  color: #ffffff;
  box-shadow: 0 6px 18px rgba(115, 190, 28, 0.4);
  transform: translateY(-2px); }

.node__content div[data-webform-key="step_2"] .button.increase-button:active {
  transform: translateY(0);
  box-shadow: 0 2px 6px rgba(115, 190, 28, 0.25);
  background-color: #4f8a10;
  border-color: #4f8a10; }

.node__content div[data-webform-key="step_2"] .button.increase-button:focus-visible {
  outline: 3px solid rgba(16, 44, 82, 0.4);
  outline-offset: 2px; }

.node__content div[data-webform-key="step_2"],
.node__content div[data-webform-key="step_3_mounting_options"],
.node__content div[data-webform-key="summary"] {
  display: none; }

.node__content div[data-webform-key="step_2"] .accordion {
  border: 0; }

.node__content div[data-webform-key="step_2"] .form-wrapper {
  padding: 20px !important; }

.node__content div[data-webform-key="step_2"] .form-wrapper .form-wrapper {
  padding: 0px !important;
  flex: 1 0 0; }

.node__content div[data-webform-key="step_2"] .form-wrapper .form-no-label {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  margin-bottom: 12px; }

.node__content div[data-webform-key="step_2"] .form-wrapper .form-required {
  display: flex;
  align-items: center;
  margin: 0 5px; }

.node__content .section-newa-starter-kit
.configurator-product-item-option {
  margin-right: 10px; }

.node__content .section-newa-starter-kit
.prod-info {
  position: relative;
  padding: 5px 0 5px 30px; }

.node__content .section-newa-starter-kit
.prod-info__title {
  font-size: 16px;
  font-weight: 600;
  line-height: 1.4; }

.node__content .section-newa-starter-kit
.prod-info__sku {
  margin: 5px 0;
  font-size: 13px; }

.node__content .section-newa-starter-kit
.prod-info__sku a {
  text-decoration: underline; }

.node__content .section-newa-starter-kit
.prod-info__price {
  font-size: 15px; }

.node__content .section-newa-starter-kit
.configurator__actions {
  margin-top: 30px;
  text-align: right; }

.node__content .section-newa-starter-kit
.webform-button--next {
  cursor: pointer;
  color: #102C52;
  font-size: 16px;
  font-weight: 700;
  text-decoration: none;
  transition: all 0.3s ease;
  font-family: "Oxanium", sans-serif;
  background: #73BE1C;
  border: 2px solid transparent;
  padding: 13px 20px;
  border-radius: 4px; }

.node__content .section-newa-starter-kit
.webform-button--next:hover {
  background: #219338; }

.node__content .section-newa-starter-kit
.configurator__subtotal {
  margin-top: 30px;
  padding-top: 20px;
  border-top: 2px solid #102c52; }

.node__content .section-newa-starter-kit
.subtotal-content {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap; }

.node__content .section-newa-starter-kit
.subtotal-content p {
  margin-right: auto;
  margin-bottom: 0; }

.node__content .section-newa-starter-kit
.subtotal-content__label {
  font-weight: 700; }

.node__content .section-newa-starter-kit
.subtotal-content__price {
  font-size: 22px;
  font-weight: 700; }

/* =========================================================
   STARTER KIT - BOTTOM BUTTON
   ========================================================= */
.node__content .section-newa-starter-kit
.bs-text-center {
  text-align: center;
  margin-top: 35px; }

.node__content .section-newa-starter-kit
.primary-button {
  cursor: pointer;
  color: #102C52;
  font-size: 16px;
  font-weight: 700;
  text-decoration: none;
  transition: all 0.3s ease;
  font-family: "Oxanium", sans-serif;
  background: #73BE1C;
  border: 2px solid transparent;
  padding: 13px 20px;
  border-radius: 4px;
  text-transform: uppercase;
  line-height: 1;
  letter-spacing: 10%;
  display: inline-flex;
  justify-content: center;
  align-items: center; }

.node__content .section-newa-starter-kit
.primary-button:hover {
  background: #219338; }

/* =========================================================
   SECTION 9 - FAQ
   ========================================================= */
.node__content .section-newa-faq {
  background: #ffffff;
  padding: 50px 0; }

.node__content .section-newa-faq
.accordion-title {
  text-align: center;
  margin-bottom: 40px; }

.node__content .section-newa-faq
.accordion-item {
  border-radius: 0;
  margin-bottom: 0px;
  overflow: hidden;
  background: #ffffff; }

.node__content .section-newa-faq
.accordion-header {
  margin: 0;
  border-bottom: 1px solid #d9dee6; }

.node__content .section-newa-faq
.accordion-button {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  padding: 20px 25px;
  border: 0;
  background: #f5f7f9;
  color: #102c52;
  font-size: 18px;
  font-weight: 700;
  line-height: 1.25;
  text-align: left;
  cursor: pointer;
  box-shadow: none;
  text-transform: initial;
  font-family: 'New Science';
  letter-spacing: 5%; }

.node__content .section-newa-faq
.accordion-button:hover {
  background: #f5f7f9; }

.node__content .section-newa-faq
.accordion-button::after {
  flex: 0 0 auto; }

.node__content .section-newa-faq .accordion-item.active
.accordion-collapse {
  display: block; }

.node__content .section-newa-faq .accordion-button::after {
  content: "+";
  color: #73BE1C;
  font-size: 28px;
  font-family: 'New Science'; }

.node__content .section-newa-faq .accordion-item.active .accordion-button::after {
  content: "−"; }

.node__content .section-newa-faq
.accordion-collapse {
  border-bottom: 1px solid #d9dee6;
  display: none; }

.node__content .section-newa-faq
.accordion-body {
  padding: 25px; }

.node__content .section-newa-faq
.accordion-body p {
  margin: 0; }

/* =========================================================
   SECTION 10 - RESOURCES
   ========================================================= */
.node__content .section-newa-resources {
  background: #edf0f5;
  padding: 50px 0;
  margin-bottom: 40px; }

.node__content .section-newa-resources
.block-cards-head-wrapper {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 30px;
  margin-bottom: 35px; }

.node__content .section-newa-resources
.block-cards-head-wrapper h2 {
  margin: 0; }

.node__content .section-newa-resources
.link-wrapper {
  flex: 0 0 auto; }

.node__content .section-newa-resources
.view-more-link {
  color: #102c52;
  font-weight: 700;
  font-size: 16px;
  line-height: 24px; }

a.read-more-link.view-more-link::after {
  content: "›";
  font-size: 24px;
  transition: transform .3s ease, -webkit-transform .3s ease;
  font-family: 'Oxanium';
  vertical-align: middle;
  margin-left: 6px;
  color: #73BE1C; }

.node__content .section-newa-resources
.view-more-link:hover {
  color: #73be1c; }

.node__content .section-newa-resources
.cards-wrapper {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 25px; }

.node__content .section-newa-resources
.card-item-wrapper {
  position: relative;
  display: flex;
  flex-direction: column;
  background: #f0f5f7;
  border-radius: 8px;
  overflow: hidden;
  box-shadow: 0 5px 20px rgba(0, 0, 0, 0.06);
  transition: transform 0.3s ease, box-shadow 0.3s ease; }

.node__content .section-newa-resources
.card-item-wrapper:hover {
  transform: translateY(-5px);
  box-shadow: 0 12px 30px rgba(0, 0, 0, 0.12); }

.node__content .section-newa-resources
.card-item-image-wrapper {
  width: 100%;
  aspect-ratio: 1 / 1;
  overflow: hidden; }

.node__content .section-newa-resources
.card-item-image-wrapper img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.4s ease; }

.node__content .section-newa-resources
.card-item-wrapper:hover
.card-item-image-wrapper img {
  transform: scale(1.05); }

.node__content .section-newa-resources
.card-item-title-wrapper {
  padding: 20px 20px 10px; }

.node__content .section-newa-resources
.card-item-title {
  margin: 0;
  font-size: 20px;
  line-height: 1.35; }

.node__content .section-newa-resources
.card-item-info-wrapper {
  display: flex;
  flex-direction: column;
  flex: 1;
  padding: 0 20px 25px; }

.node__content .section-newa-resources
.card-item-text-wrapper {
  flex: 1; }

.node__content .section-newa-resources
.card-item-text-wrapper > div {
  font-size: 15px;
  line-height: 1.6; }

.node__content .section-newa-resources
.card-item-info-wrapper .arrow-link {
  display: inline-block;
  margin-top: 20px;
  color: #102c52;
  font-weight: 700;
  font-family: Oxanium, sans-serif; }

.node__content .section-newa-resources
.card-item-info-wrapper .arrow-link span {
  font-size: 20px;
  font-weight: 800;
  color: #73be1c;
  vertical-align: middle; }

.node__content .section-newa-resources
.card-item-wrapper:hover
.card-item-info-wrapper .arrow-link {
  color: #526e92;
  text-decoration: underline solid #73BE1C 2px !important;
  text-underline-offset: 5px;
  -webkit-transform: translateY(-2px);
  transform: translateY(-2px); }

.node__content .section-newa-resources
.card-item-link {
  position: absolute;
  inset: 0;
  z-index: 2; }

/* =========================================================
   TABLET
   ========================================================= */
@media (max-width: 991px) {
  .node__content
.section-newa-intro,
  .node__content
.section-newa-modeling,
  .node__content
.section-newa-features,
  .node__content
.section-newa-benefits,
  .node__content
.section-newa-tools,
  .node__content
.section-newa-partners,
  .node__content
.section-newa-hobolink,
  .node__content
.section-newa-starter-kit,
  .node__content
.section-newa-faq,
  .node__content
.section-newa-resources {
    padding-top: 55px;
    padding-bottom: 55px; }
  .node__content h2 {
    font-size: 32px; }
  /* Modeling */
  .node__content .section-newa-modeling
.ping-pong-wrapper {
    min-height: 450px; }
  .node__content .section-newa-modeling
.ping-pong-wrapper__content {
    min-height: 450px; }
  .node__content .section-newa-modeling
.ping-pong-wrapper__content__inner {
    max-width: 450px; }
  /* Benefits */
  .node__content .section-newa-benefits
.interactive-info {
    grid-template-columns: 1fr; }
  .node__content .section-newa-benefits
.slider-nav-wrapper {
    order: 1; }
  .node__content .section-newa-benefits
.slider {
    order: 2; }
  .node__content .section-newa-benefits
.slider-nav .slick-track {
    display: block; }
  .node__content .section-newa-benefits
.slider-nav .slick-slide {
    display: block;
    width: 100% !important; }
  /* Resources */
  .node__content .section-newa-resources
.cards-wrapper {
    grid-template-columns: repeat(2, 1fr); }
  /* Starter kit */
  .node__content .section-newa-starter-kit
.webform-submission-form {
    padding: 30px; } }

/* =========================================================
   MOBILE
   ========================================================= */
@media (max-width: 767px) {
  .node__content
.section-newa-intro,
  .node__content
.section-newa-modeling,
  .node__content
.section-newa-features,
  .node__content
.section-newa-benefits,
  .node__content
.section-newa-tools,
  .node__content
.section-newa-partners,
  .node__content
.section-newa-hobolink,
  .node__content
.section-newa-starter-kit,
  .node__content
.section-newa-faq,
  .node__content
.section-newa-resources {
    padding-top: 45px;
    padding-bottom: 45px; }
  .node__content h2 {
    font-size: 28px;
    margin-bottom: 20px; }
  .node__content p {
    font-size: 16px;
    line-height: 1.6; }
  /* =====================================================
       MODELING
       ===================================================== */
  .node__content .section-newa-modeling
.ping-pong-wrapper {
    display: flex;
    flex-direction: column;
    min-height: auto; }
  .node__content .section-newa-modeling
.ping-pong-wrapper__background {
    position: relative;
    height: auto;
    order: 1; }
  .node__content .section-newa-modeling
.ping-pong-wrapper__background img {
    margin-bottom: 20px; }
  .node__content .section-newa-modeling
.ping-pong-wrapper__content {
    min-height: auto;
    order: 2; }
  .node__content .section-newa-modeling
.ping-pong-wrapper__content__inner {
    max-width: 100%;
    padding: 20px;
    box-shadow: none;
    flex-direction: column; }
  .node__content .section-newa-modeling .quicklink-item-title {
    margin-bottom: 10px;
    margin-right: 0; }
  /* =====================================================
       FEATURES TABLE
       ===================================================== */
  .node__content .section-newa-features
table {
    display: block;
    overflow-x: auto; }
  .node__content .section-newa-features
table td {
    min-width: 220px;
    padding: 14px 15px;
    font-size: 14px; }
  .node__content .section-newa-features
table tr:first-child h4 {
    font-size: 17px; }
  /* =====================================================
       BENEFITS
       ===================================================== */
  .node__content .section-newa-benefits
.interactive-info-title {
    margin-bottom: 25px; }
  .node__content .section-newa-benefits
.slider-nav .slick-slide {
    padding: 15px 18px; }
  .node__content .section-newa-benefits
.slider-nav .field--name-field-label {
    font-size: 18px; }
  .node__content .section-newa-benefits
.slider-nav .field--name-field-description p {
    font-size: 14px; }
  .node__content .section-newa-benefits
.slider img {
    aspect-ratio: 1 / 1; }
  /* =====================================================
       TOOLS / PARTNERS / HOBOlink
       ===================================================== */
  .node__content .section-newa-tools
.ping-pong-wrapper,
  .node__content .section-newa-partners
.ping-pong-wrapper,
  .node__content .section-newa-hobolink
.ping-pong-wrapper {
    grid-template-columns: 1fr;
    gap: 25px; }
  .node__content .section-newa-tools
.quicklink-wrapper,
  .node__content .section-newa-partners
.quicklink-wrapper,
  .node__content .section-newa-hobolink
.quicklink-wrapper {
    padding: 0; }
  .node__content .section-newa-tools
.ping-pong-media-wrapper,
  .node__content .section-newa-partners
.ping-pong-media-wrapper,
  .node__content .section-newa-hobolink
.ping-pong-media-wrapper {
    order: 1; }
  .node__content .section-newa-tools
.quicklink-wrapper,
  .node__content .section-newa-partners
.quicklink-wrapper,
  .node__content .section-newa-hobolink
.quicklink-wrapper {
    order: 2; }
  /* =====================================================
       STARTER KIT
       ===================================================== */
  .node__content .section-newa-starter-kit
.webform-submission-form {
    padding: 20px 15px; }
  .node__content .section-newa-starter-kit
.progress-tracker {
    grid-template-columns: repeat(2, 1fr); }
  .node__content .section-newa-starter-kit
.progress-title {
    padding: 12px 8px; }
  .node__content .section-newa-starter-kit
.progress-title__title {
    font-size: 13px; }
  .node__content .section-newa-starter-kit
.step-title {
    font-size: 21px; }
  .node__content .section-newa-starter-kit
.included-product {
    padding: 15px; }
  .node__content .section-newa-starter-kit
.configurator__actions {
    text-align: left; }
  .node__content .section-newa-starter-kit
.webform-button--next {
    width: 100%;
    padding: 14px 15px; }
  .node__content .section-newa-starter-kit
.subtotal-content {
    display: block; }
  .node__content .section-newa-starter-kit
.subtotal-content p {
    margin-bottom: 15px; }
  .node__content .section-newa-starter-kit
.subtotal-content__price {
    display: inline-block;
    margin-top: 5px; }
  .node__content div[data-webform-key="step_2"] .form-wrapper .form-wrapper {
    flex: auto; }
  /* =====================================================
       FAQ
       ===================================================== */
  .node__content .section-newa-faq
.accordion-button {
    padding: 17px 18px;
    font-size: 16px; }
  .node__content .section-newa-faq
.accordion-body {
    padding: 18px; }
  /* =====================================================
       RESOURCES
       ===================================================== */
  .node__content .section-newa-resources
.block-cards-head-wrapper {
    display: block;
    text-align: center;
    margin-bottom: 25px; }
  .node__content .section-newa-resources
.block-cards-head-wrapper h2 {
    margin-bottom: 15px; }
  .node__content .section-newa-resources
.cards-wrapper {
    grid-template-columns: 1fr;
    gap: 20px; }
  .node__content .section-newa-resources
.card-item-title {
    font-size: 19px; } }

/* =========================================================
   SMALL MOBILE
   ========================================================= */
@media (max-width: 480px) {
  .node__content
.section-newa-intro,
  .node__content
.section-newa-modeling,
  .node__content
.section-newa-features,
  .node__content
.section-newa-benefits,
  .node__content
.section-newa-tools,
  .node__content
.section-newa-partners,
  .node__content
.section-newa-hobolink,
  .node__content
.section-newa-starter-kit,
  .node__content
.section-newa-faq,
  .node__content
.section-newa-resources {
    padding-top: 35px;
    padding-bottom: 35px; }
  .node__content h2 {
    font-size: 24px; }
  .node__content .section-newa-modeling
.ping-pong-wrapper__content__inner {
    padding: 16px; }
  .node__content .section-newa-starter-kit
.progress-tracker {
    grid-template-columns: 1fr; } }

/* =========================================================
   CAREERS PAGE
   Parent: .careers-page
   BigCommerce / Sass compatible version
   ========================================================= */
.careers-page {
  width: 100%;
  overflow: hidden; }

.careers-page *,
.careers-page *::before,
.careers-page *::after {
  box-sizing: border-box; }

.careers-page img {
  display: block;
  max-width: 100%;
  height: auto; }

.careers-page .container {
  width: 100%;
  max-width: 1190px;
  margin: 0 auto;
  padding-left: 20px;
  padding-right: 20px; }

.careers-page h1,
.careers-page h2,
.careers-page h3,
.careers-page h4,
.careers-page h5,
.careers-page p {
  margin-top: 0; }

.careers-page h1,
.careers-page h2,
.careers-page h3,
.careers-page h4,
.careers-page h5 {
  color: #102C52; }

.careers-page p {
  color: #000000;
  line-height: 1.7; }

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

/* =========================================================
   BUTTONS
   ========================================================= */
.careers-page .btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 2px solid transparent;
  background: #73BE1C;
  color: #102C52;
  text-decoration: none;
  cursor: pointer;
  transition: all 0.3s ease;
  margin-bottom: 16px;
  font-size: 16px;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 10%;
  border-radius: 4px;
  text-transform: uppercase;
  padding: 16px 24px;
  font-family: Oxanium, sans-serif; }

.careers-page .btn:hover {
  border-color: #219338;
  background: #219338;
  color: #102C52; }

.careers-page .btn-small {
  min-height: 42px;
  padding: 10px 20px;
  font-size: 14px; }

/* =========================================================
   HERO BANNER
   ========================================================= */
.careers-page .hero-banner {
  position: relative;
  min-height: 600px;
  display: flex;
  align-items: center;
  overflow: hidden;
  color: #fff; }

.careers-page .hero-banner > img {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover; }

.careers-page .hero-banner::after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background: linear-gradient(90deg, rgba(16, 44, 82, 0.94) 0%, rgba(16, 44, 82, 0.82) 35%, rgba(16, 44, 82, 0.38) 65%, rgba(16, 44, 82, 0.05) 100%);
  pointer-events: none; }

.careers-page .hero-content {
  position: relative;
  z-index: 2;
  padding-top: 80px;
  padding-bottom: 80px;
  color: #fff; }

.careers-page .hero-content h1 {
  max-width: 750px;
  margin-bottom: 25px;
  color: #ffffff;
  font-size: clamp(30px, 4vw, 42px);
  font-weight: 700;
  line-height: normal;
  letter-spacing: 2%; }

.careers-page .hero-content .summary {
  max-width: 720px; }

.careers-page .hero-content .summary h4 {
  margin-bottom: 0;
  color: #ffffff;
  font-size: clamp(16px, 2vw, 20px);
  font-weight: 400;
  line-height: normal; }

/* =========================================================
   COMMON SECTION
   ========================================================= */
.careers-page .section {
  padding: 50px 0 0 0; }

.careers-page .container > h2 {
  margin-bottom: 25px;
  font-size: clamp(24px, 4vw, 42px);
  font-weight: 700;
  line-height: normal; }

.careers-page .container > h4 {
  margin-bottom: 30px;
  color: #102C52;
  font-size: clamp(18px, 3vw, 21px);
  font-weight: 500;
  line-height: 1.5; }

.careers-page .container > p {
  margin-bottom: 30px;
  font-size: 16px; }

/* =========================================================
   COMMUNITY
   ========================================================= */
.careers-page .bg-light-grey {
  background: #e1ecee; }

.careers-page .bg-light-green {
  background: #f0f5f7; }

.careers-page .section.bg-light-grey:first-child {
  margin-top: 50px;
  padding: 50px 0px; }

.careers-page .section.bg-light-grey > .btn {
  margin-top: 15px; }

/* =========================================================
   VIDEO
   ========================================================= */
.careers-page .video-section {
  background-color: #73BE1C;
  padding-bottom: 50px;
  margin-top: 50px;
  box-shadow: 0 8px 30px rgba(115, 190, 28, 0.25); }

.careers-page .section video {
  display: block;
  height: auto !important;
  max-height: 650px;
  margin: 0 auto;
  background: #000000;
  max-width: 900px;
  border-radius: 8px; }

/* =========================================================
   ENVIRONMENTAL SUSTAINABILITY
   ========================================================= */
.careers-page .bg-light-green > h2 {
  margin-bottom: 20px; }

.careers-page .cards {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 30px;
  text-align: left;
  padding-top: 30px; }

.careers-page .card {
  display: flex;
  flex-direction: column;
  height: 100%;
  overflow: hidden;
  background: #ffffff;
  border: 1px solid #d9dee7;
  box-shadow: 0 8px 30px rgba(16, 44, 82, 0.08);
  transition: all 0.3s ease;
  border-radius: 8px; }

.careers-page .card:hover {
  transform: translateY(-7px);
  box-shadow: 0 15px 40px rgba(16, 44, 82, 0.15); }

.careers-page .card > img {
  width: 100%;
  height: 240px;
  object-fit: cover; }

.careers-page .card-body {
  flex: 1;
  padding: 30px; }

.careers-page .card-title {
  margin-bottom: 15px;
  font-size: clamp(18px, 4vw, 24px) !important;
  font-weight: 700; }

.careers-page .card-body p {
  margin-bottom: 0;
  font-size: 16px; }

/* =========================================================
   WORKING AT ONSET
   ========================================================= */
.careers-page .tiles {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
  padding: 0px 0 50px; }

.careers-page .tile {
  position: relative;
  min-height: 260px;
  overflow: hidden;
  background: #102C52; }

.careers-page .tile::after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background: linear-gradient(180deg, rgba(16, 44, 82, 0) 35%, rgba(16, 44, 82, 0.85) 100%);
  pointer-events: none; }

.careers-page .tile img {
  width: 100%;
  height: 260px;
  min-height: 260px;
  object-fit: cover;
  transition: transform 0.5s ease; }

.careers-page .tile:hover img {
  transform: scale(1.06); }

.careers-page .tile-title {
  position: absolute;
  right: 20px;
  bottom: 20px;
  left: 20px;
  z-index: 2;
  color: #ffffff;
  text-align: left;
  pointer-events: none;
  font-size: 18px;
  font-weight: 700;
  line-height: normal;
  letter-spacing: 2%;
  font-family: "New Science"; }

/* =========================================================
   ACCORDION
   ========================================================= */
.careers-page .accordion {
  text-align: left; }

.careers-page .accordion-item {
  margin-bottom: 12px;
  border: 1px solid #d9dee7;
  background: #ffffff; }

.careers-page .accordion-header {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  padding: 22px 25px;
  border: 0;
  background: #ffffff;
  color: #102C52;
  font-size: 19px;
  font-weight: 700;
  text-align: left;
  cursor: pointer;
  transition: all 0.3s ease;
  text-transform: initial;
  font-family: 'New Science';
  letter-spacing: 5%; }

.careers-page .accordion-header:hover,
.careers-page .accordion-item.active .accordion-header {
  background: #f7f9fb; }

.careers-page .accordion-header .icon {
  display: flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 30px;
  width: 30px;
  height: 30px;
  margin-left: 20px;
  color: #73BE1C;
  font-size: 28px;
  font-weight: 400;
  line-height: 1; }

.careers-page .accordion-body {
  display: none;
  padding: 5px 30px 30px;
  background: #ffffff; }

.careers-page .accordion-item.active .accordion-body {
  display: block; }

.careers-page .accordion-body h4 {
  margin-top: 25px;
  margin-bottom: 12px;
  font-size: 22px; }

.careers-page .accordion-body h5 {
  margin-bottom: 25px;
  font-size: 18px;
  font-weight: 400;
  line-height: 1.6;
  text-transform: initial; }

.careers-page .accordion-body p {
  margin-bottom: 12px;
  font-size: 16px; }

/* =========================================================
   BENEFITS TABLE
   ========================================================= */
.careers-page .accordion-body table {
  width: 100%;
  border-collapse: collapse;
  margin-top: 20px; }

.careers-page .accordion-body table td {
  width: 50%;
  padding: 18px 20px;
  border: 1px solid #d9dee7;
  background: #fafbfc;
  color: #000000;
  font-size: 16px;
  line-height: 1.5;
  vertical-align: top; }

.careers-page .accordion-body table tr:nth-child(even) td {
  background: #ffffff; }

/* =========================================================
   QUICK LINK
   ========================================================= */
.careers-page .quicklink {
  width: 100%;
  max-width: 600px;
  margin: 60px auto 0;
  padding: 40px 30px;
  background: #102C52;
  text-align: center; }

.careers-page .quicklink h2 {
  margin-bottom: 20px;
  color: #ffffff;
  font-size: 27px; }

.careers-page .quicklink .arrow-link {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  color: #ffffff;
  font-size: 18px;
  font-weight: 700;
  text-decoration: none; }

.careers-page .quicklink .arrow-link::after {
  content: "→";
  font-size: 24px;
  transition: transform 0.3s ease; }

.careers-page .quicklink .arrow-link:hover {
  color: #73BE1C; }

.careers-page .quicklink .arrow-link:hover::after {
  transform: translateX(6px); }

/* =========================================================
   LOCATION / PING PONG
   ========================================================= */
.careers-page .ping-pong {
  position: relative;
  min-height: 550px;
  overflow: hidden;
  padding: 50px 0; }

.careers-page .ping-pong .media {
  width: 100%;
  height: 100%; }

.careers-page .ping-pong .media img {
  width: 100%;
  height: 550px;
  object-fit: cover; }

.careers-page .ping-pong .content {
  position: absolute;
  left: 0%;
  bottom: 50px;
  width: 520px;
  max-width: 84%;
  padding: 40px;
  background: rgba(255, 255, 255, 0.96);
  box-shadow: 0 15px 40px rgba(0, 0, 0, 0.15); }

.careers-page .ping-pong .content h2 {
  margin-bottom: 20px;
  font-size: clamp(30px, 4vw, 42px); }

.careers-page .ping-pong .content p {
  font-size: 16px; }

.careers-page .ping-pong .content .btn {
  margin-top: 10px; }

/* =========================================================
   SIGNUP FORM
   ========================================================= */
.careers-page .form-signup {
  margin-bottom: 50px;
  padding: 50px 20px !important; }

.careers-page .form-signup form {
  width: 100%;
  max-width: 800px;
  margin: 0 auto;
  background: #ffffff;
  padding: 30px;
  border-radius: 10px;
  box-shadow: 0 10px 35px rgba(16, 44, 82, 0.08); }

.careers-page .form-signup h2 {
  margin-bottom: 30px;
  font-size: clamp(30px, 4vw, 40px);
  line-height: normal; }

.careers-page .form-row {
  display: grid;
  grid-template-columns: repeat(1, 1fr);
  gap: 0;
  margin: 0; }

.careers-page .form-group {
  margin-bottom: 20px; }

.careers-page .form-group input,
.careers-page .form-group select {
  display: block;
  width: 100%;
  height: 54px;
  padding: 0 17px;
  border: 1px solid #cbd2da;
  border-radius: 0;
  outline: none;
  background: #ffffff;
  color: #000000;
  font-size: 15px;
  transition: all 0.3s ease; }

.careers-page .form-group input::placeholder {
  color: #777; }

.careers-page .form-group input:focus,
.careers-page .form-group select:focus {
  border-color: #73BE1C;
  box-shadow: 0 0 0 3px rgba(115, 190, 28, 0.12); }

.careers-page .form-signup form > .btn {
  margin-top: 5px; }

.careers-page .form-signup .small {
  margin: 12px auto 0;
  color: #000000;
  font-size: 15px;
  line-height: 1.6; }

.careers-page .form-signup .small a {
  color: #102C52;
  font-weight: 600;
  text-decoration: underline; }

/* =========================================================
   LARGE TABLET
   ========================================================= */
@media (max-width: 1199px) {
  .careers-page .cards {
    gap: 20px; }
  .careers-page .tiles {
    gap: 15px; }
  .careers-page .ping-pong .content {
    left: 5%; } }

/* =========================================================
   TABLET
   ========================================================= */
@media (max-width: 991px) {
  .careers-page .container {
    padding-left: 25px;
    padding-right: 25px; }
  .careers-page .hero-banner {
    min-height: 520px; }
  .careers-page .hero-content,
  .job-opp .hero-content {
    padding-top: 70px;
    padding-bottom: 70px; }
  .node__content .hero-content .hero-banner-link {
    margin: 20px 0;
    font-size: 14px; }
  .careers-page .section {
    padding: 50px 0; }
  .careers-page .cards {
    grid-template-columns: repeat(2, 1fr); }
  .careers-page .card:last-child {
    grid-column: 1 / -1;
    width: 50%;
    margin: 0 auto; }
  .careers-page .tiles {
    grid-template-columns: repeat(2, 1fr); }
  .careers-page .ping-pong {
    min-height: 600px; }
  .careers-page .ping-pong .media img {
    height: 600px; }
  .careers-page .ping-pong .content {
    left: 50%;
    bottom: 30px;
    transform: translateX(-50%);
    width: 90%;
    max-width: 650px; } }

/* =========================================================
   MOBILE
   ========================================================= */
@media (max-width: 767px) {
  .careers-page .container {
    padding-left: 18px;
    padding-right: 18px; }
  .careers-page .btn {
    font-size: 14px;
    padding: 11px 20px; }
  /* -----------------------------------------------------
       HERO
       ----------------------------------------------------- */
  .careers-page .hero-banner {
    min-height: 560px;
    align-items: flex-end; }
  .careers-page .hero-banner::after {
    background: linear-gradient(180deg, rgba(16, 44, 82, 0.1) 0%, rgba(16, 44, 82, 0.55) 40%, rgba(16, 44, 82, 0.95) 100%); }
  .careers-page .hero-content, .job-opp .hero-content {
    padding-top: 45px;
    padding-bottom: 45px; }
  .careers-page .hero-content h1,
  .node__content .hero-content h1 {
    margin-bottom: 18px; }
  .careers-page .hero-content .summary h4,
  .node__content .hero-content .summary h4 {
    line-height: 1.55; }
  /* -----------------------------------------------------
       SECTIONS
       ----------------------------------------------------- */
  .careers-page .section {
    padding: 50px 0; }
  .careers-page .section > h2 {
    margin-bottom: 18px; }
  .careers-page .section > h4 {
    font-size: 18px; }
  .careers-page .section > p {
    font-size: 15px;
    line-height: 1.65; }
  /* -----------------------------------------------------
       CARDS
       ----------------------------------------------------- */
  .careers-page .cards {
    grid-template-columns: 1fr;
    gap: 20px;
    margin-top: 35px; }
  .careers-page .card:last-child {
    grid-column: auto;
    width: 100%;
    max-width: none;
    margin: 0; }
  .careers-page .card > img {
    height: 220px; }
  .careers-page .card-body {
    padding: 25px; }
  .careers-page .card-title {
    font-size: 21px; }
  /* -----------------------------------------------------
       TILES
       ----------------------------------------------------- */
  .careers-page .tiles {
    grid-template-columns: 1fr;
    gap: 15px;
    padding: 20px 0; }
  .careers-page .tile {
    min-height: 250px; }
  .careers-page .tile img {
    height: 250px;
    min-height: 250px; }
  /* -----------------------------------------------------
       ACCORDION
       ----------------------------------------------------- */
  .careers-page .accordion-header {
    padding: 18px 20px;
    font-size: 16px; }
  .careers-page .accordion-body {
    padding: 5px 18px 25px; }
  .careers-page .accordion-body h5 {
    font-size: 15px; }
  /* -----------------------------------------------------
       TABLE
       ----------------------------------------------------- */
  .careers-page .accordion-body table,
  .careers-page .accordion-body tbody,
  .careers-page .accordion-body tr,
  .careers-page .accordion-body td {
    display: block;
    width: 100%; }
  .careers-page .accordion-body tr {
    margin-bottom: 10px; }
  .careers-page .accordion-body table td {
    padding: 14px 15px;
    font-size: 14px; }
  /* -----------------------------------------------------
       QUICK LINK
       ----------------------------------------------------- */
  .careers-page .quicklink {
    margin-top: 40px;
    padding: 30px 20px; }
  .careers-page .quicklink h2 {
    font-size: 20px;
    line-height: 1; }
  /* -----------------------------------------------------
       LOCATION
       ----------------------------------------------------- */
  .careers-page .ping-pong {
    min-height: auto; }
  .careers-page .ping-pong .media img {
    height: 400px; }
  .careers-page .ping-pong .content {
    position: relative;
    left: auto;
    bottom: auto;
    width: 100%;
    max-width: none;
    margin: -70px auto 30px;
    transform: none;
    padding: 28px 22px; }
  /* -----------------------------------------------------
       FORM
       ----------------------------------------------------- */
  .careers-page .form-row {
    grid-template-columns: 1fr;
    gap: 0; }
  .careers-page .form-group {
    margin-bottom: 15px; }
  .careers-page .form-group input,
  .careers-page .form-group select {
    height: 50px; }
  .careers-page .form-signup form > .btn {
    width: 100%; } }

/* =========================================================
   SMALL MOBILE
   ========================================================= */
@media (max-width: 480px) {
  .careers-page .hero-banner {
    min-height: 520px; }
  .careers-page .section {
    padding: 40px 0; }
  .careers-page .card > img {
    height: 200px; }
  .careers-page .tile {
    min-height: 220px; }
  .careers-page .tile img {
    height: 220px;
    min-height: 220px; }
  .careers-page .tile-title {
    right: 15px;
    bottom: 15px;
    left: 15px;
    font-size: 17px; }
  .careers-page .ping-pong .media img {
    height: 330px; }
  .careers-page .ping-pong .content {
    margin-top: -50px;
    padding: 25px 20px; }
  .careers-page .accordion-header {
    padding: 16px;
    font-size: 15px; }
  .careers-page .accordion-body {
    padding-left: 16px;
    padding-right: 16px; }
  .careers-page .form-signup {
    margin-bottom: 30px; } }

/* =========================================================
   MX DATA LOGGER GUIDE
   All selectors are scoped to .mx-guide-page.
   Homepage visual language: navy, green, diagonal/clean
   buttons, New Science typography, consistent containers.
   ========================================================= */
.mx-guide-page {
  --mx-navy: #102c52;
  --mx-green: #73be1c;
  --mx-green-dark: #219338;
  --mx-text: #102c52;
  --mx-light: #edf0f5;
  --mx-white: #fff;
  --mx-border: #d7dee7;
  --mx-container: 1300px;
  --mx-narrow: 980px;
  width: 100%;
  color: var(--mx-text);
  font-family: "New Science", Arial, sans-serif;
  line-height: 1.65; }

.mx-guide-page *,
.mx-guide-page *::before,
.mx-guide-page *::after {
  box-sizing: border-box; }

.mx-guide-page .container,
.mx-guide-page .container-narrow {
  width: 100%;
  margin-inline: auto; }

/* Hero */
.mx-guide-page__hero {
  width: 100%;
  background: var(--mx-navy); }

.mx-guide-page__hero-inner {
  position: relative;
  min-height: 420px;
  display: flex;
  align-items: center;
  overflow: hidden; }

.mx-guide-page__hero-media {
  position: absolute;
  inset: 0; }

.mx-guide-page__hero-media::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, rgba(16, 44, 82, 0.94) 0%, rgba(16, 44, 82, 0.72) 48%, rgba(16, 44, 82, 0.18) 100%); }

.mx-guide-page__hero-image,
.mx-guide-page__hero-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block; }

.mx-guide-page__hero-content {
  position: relative;
  z-index: 1;
  padding-block: 80px;
  padding-left: 20px;
  padding-right: 20px; }

.mx-guide-page__hero-content h1 {
  max-width: 760px;
  margin: 0 0 20px;
  color: var(--mx-white);
  font-size: clamp(30px, 4vw, 42px);
  line-height: 1.08;
  font-weight: 700; }

.mx-guide-page__hero-content p {
  max-width: 760px;
  margin: 0;
  color: var(--mx-white);
  font-size: clamp(16px, 2vw, 20px); }

/* Main spacing */
.mx-guide-page__main {
  padding-block: 62px 62px;
  background: var(--mx-white); }

.mx-guide-page__content {
  margin-bottom: 50px;
  padding-top: 62px; }

/* Accordion */
.mx-guide-page__accordion {
  border-top: 1px solid var(--mx-border); }

.mx-guide-page__accordion-item {
  border-bottom: 1px solid var(--mx-border); }

.mx-guide-page__accordion-title {
  margin: 0; }

.mx-guide-page__accordion-button {
  width: 100%;
  min-height: 76px;
  padding: 22px 64px 22px 0;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  border: 0;
  background: transparent;
  color: var(--mx-navy);
  text-align: left;
  font: inherit;
  font-size: clamp(1.08rem, 1.7vw, 1.35rem);
  font-weight: 700;
  line-height: 1.3;
  cursor: pointer;
  text-transform: capitalize; }

.mx-guide-page__accordion-button:hover,
.mx-guide-page__accordion-button:focus-visible {
  color: var(--mx-green-dark); }

.mx-guide-page__accordion-button:focus-visible {
  outline: 3px solid rgba(115, 190, 28, 0.35);
  outline-offset: 4px; }

.mx-guide-page__accordion-icon {
  position: absolute;
  right: 8px;
  top: 50%;
  width: 24px;
  height: 24px;
  transform: translateY(-50%); }

.mx-guide-page__accordion-icon::before,
.mx-guide-page__accordion-icon::after {
  content: "";
  position: absolute;
  left: 50%;
  top: 50%;
  width: 18px;
  height: 2px;
  background: currentColor;
  transform: translate(-50%, -50%);
  transition: transform .25s ease; }

.mx-guide-page__accordion-icon::after {
  transform: translate(-50%, -50%) rotate(90deg); }

.mx-guide-page__accordion-button[aria-expanded="true"] .mx-guide-page__accordion-icon::after {
  transform: translate(-50%, -50%) rotate(0); }

.mx-guide-page__accordion-panel {
  overflow: hidden; }

.mx-guide-page__accordion-body {
  padding: 4px 0 14px;
  font-family: "Roboto", sans-serif;
  color: #000000; }

.mx-guide-page__accordion-body > :first-child {
  margin-top: 0; }

.mx-guide-page__accordion-body > :last-child {
  margin-bottom: 0; }

.mx-guide-page__accordion-body p,
.mx-guide-page__accordion-body li {
  font-size: 16px;
  line-height: 24px;
  margin-bottom: 16px; }

.mx-guide-page__accordion-body a {
  color: var(--mx-navy);
  text-decoration: underline;
  text-underline-offset: 3px; }

.mx-guide-page__accordion-body a:hover,
.mx-guide-page__accordion-body a:focus {
  color: var(--mx-green-dark); }

.mx-guide-page__accordion-body ol,
.mx-guide-page__accordion-body ul {
  padding-left: 24px; }

.mx-guide-page__accordion-body .content-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 48px;
  align-items: center; }

.mx-guide-page__accordion-body .content-column {
  min-width: 0; }

.mx-guide-page__accordion-body .content-media {
  text-align: center; }

.mx-guide-page__accordion-body img {
  max-width: 100%;
  width: auto;
  height: auto;
  max-height: 720px;
  object-fit: contain;
  display: inline-block; }

.mx-guide-page__accordion-body .text-align-center {
  text-align: center; }

/* Homepage-style buttons */
.mx-guide-page .button,
.mx-guide-page a.secondary-button {
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: var(--mx-green);
  color: var(--mx-navy);
  text-decoration: none;
  border: 2px solid transparent;
  transition: all 0.3s ease;
  font-size: 16px;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 10%;
  border-radius: 4px;
  text-transform: uppercase;
  padding: 16px 24px;
  font-family: Oxanium, sans-serif; }

.mx-guide-page .button:hover,
.mx-guide-page .button:focus-visible,
.mx-guide-page a.secondary-button:hover,
.mx-guide-page a.secondary-button:focus-visible {
  background: var(--mx-green-dark);
  color: var(--mx-navy);
  transform: translateY(-1px);
  border-color: var(--mx-green-dark); }

.mx-guide-page__video {
  margin-bottom: 50px;
  background-color: #102c52;
  padding: 50px 0;
  box-shadow: 0px 5px 10px rgba(0, 0, 0, 0.25); }

.mx-guide-page__video .video__inner {
  position: relative;
  width: 80%;
  margin: 0 auto;
  padding-bottom: 56.25%;
  /* 16:9 ratio */
  height: 0;
  overflow: hidden;
  border-radius: 8px; }

.mx-guide-page__video .video__inner iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 0; }

/* Search */
.mx-guide-page__search {
  padding-top: 12px;
  padding-bottom: 60px; }

.mx-guide-page__search-inner {
  padding: 50px;
  background: var(--mx-light);
  text-align: center; }

.mx-guide-page__search-inner h2 {
  margin: 0 0 26px;
  color: var(--mx-navy);
  font-size: clamp(1.7rem, 2.8vw, 2.4rem);
  line-height: 1.15; }

.mx-guide-page__search-form {
  max-width: 750px;
  margin: 0 auto; }

.mx-guide-page__search-field {
  text-align: left;
  width: 100%; }

.mx-guide-page__search-field label {
  display: block;
  margin-bottom: 7px;
  color: var(--mx-navy);
  font-weight: 700; }

.mx-guide-page__search-field input {
  width: calc(100% - 150px);
  margin-right: 16px;
  min-height: 52px;
  padding: 12px 15px;
  border: 1px solid var(--mx-border);
  background: var(--mx-white);
  color: var(--mx-text);
  font: inherit;
  display: inline-block; }

.mx-guide-page__search-field input:focus {
  border-color: var(--mx-green-dark);
  outline: 2px solid var(--mx-green-dark);
  outline-offset: 1px; }

/* Responsive */
@media (max-width: 991px) {
  .mx-guide-page .container,
  .mx-guide-page .container-narrow {
    max-width: var(--mx-container); }
  .mx-guide-page__hero-inner {
    min-height: 360px; }
  .mx-guide-page__hero-content {
    padding-block: 70px; }
  .mx-guide-page__accordion-body .content-grid {
    gap: 32px; } }

@media (max-width: 767px) {
  .mx-guide-page .container,
  .mx-guide-page .container-narrow {
    max-width: var(--mx-container); }
  .mx-guide-page__hero-inner {
    min-height: 330px; }
  .mx-guide-page__hero-content {
    padding-block: 58px; }
  .mx-guide-page__hero-content h1 {
    margin-bottom: 16px; }
  .mx-guide-page__main {
    padding-block: 42px 52px; }
  .mx-guide-page__content {
    margin-bottom: 48px; }
  .mx-guide-page__accordion-button {
    min-height: 68px;
    padding: 18px 48px 18px 0; }
  .mx-guide-page__accordion-body {
    padding-bottom: 10px; }
  .mx-guide-page__accordion-body .content-grid {
    grid-template-columns: 1fr;
    gap: 26px; }
  .mx-guide-page__accordion-body .content-column:first-child {
    order: 1; }
  .mx-guide-page__accordion-body .content-column:last-child {
    order: 2; }
  .mx-guide-page__search-inner {
    padding: 32px 20px; }
  .mx-guide-page__search-field input {
    width: 100%;
    margin-right: 0px;
    margin-bottom: 16px;
    min-height: 24px; }
  .mx-guide-page__search-form .button {
    width: 100%; }
  .mx-guide-page .button,
  .mx-guide-page a.secondary-button {
    font-size: 14px;
    padding: 10px 12px;
    line-height: normal; }
  .mx-guide-page__video {
    margin-bottom: 40px;
    padding: 30px 0; } }

@media (max-width: 480px) {
  .mx-guide-page .container,
  .mx-guide-page .container-narrow {
    max-width: var(--mx-container); }
  .mx-guide-page__hero-inner {
    min-height: 300px; }
  .mx-guide-page__hero-content {
    padding-block: 48px; }
  .mx-guide-page__accordion-button {
    font-size: 1rem; }
  .mx-guide-page__accordion-body p,
  .mx-guide-page__accordion-body li {
    font-size: .95rem; } }

#main-content .page h4 {
  text-transform: initial; }

#main-content .page h5 {
  text-transform: initial; }

#main-content .page .hero-banner {
  display: flex;
  align-items: center;
  padding: 90px 0;
  background: #102C52; }
  #main-content .page .hero-banner .title-wrapper h1,
  #main-content .page .hero-banner .summary,
  #main-content .page .hero-banner .summary h4 {
    color: #ffffff; }
  #main-content .page .hero-banner .summary {
    max-width: 760px; }
  #main-content .page .hero-banner .summary h4 {
    margin: 0;
    font-size: clamp(18px, 2vw, 23px);
    font-weight: 400;
    line-height: 1.55; }

#main-content .page .quotes-section {
  padding: 50px 0;
  background: #ffffff; }
  #main-content .page .quotes-section blockquote {
    max-width: 900px;
    margin: 0 auto;
    padding-left: 28px;
    border-left: 2px solid #73BE1C; }
    #main-content .page .quotes-section blockquote h4 {
      margin: 0;
      color: #102C52;
      font-size: clamp(20px, 2.2vw, 24px);
      line-height: 1.5; }

#main-content .page .quality-section,
#main-content .page .process-section,
#main-content .page .benefits-section {
  padding: 60px 0;
  background: #e1ecee; }

#main-content .page .policy-section,
#main-content .page .certification-section {
  padding: 60px 0;
  background: #ffffff; }

#main-content .page .policy-section h2:not(:first-child) {
  margin-top: 60px; }

#main-content .page .policy-section .table tr td {
  font-family: "Roboto", sans-serif;
  font-size: 16px;
  line-height: 1.6; }

#main-content .page .policy-section .orders-table-wrapper {
  width: 100%;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch; }

#main-content .page .policy-section .orders-table {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0;
  overflow: hidden;
  border: 1px solid #d7e0e5;
  border-radius: 8px;
  background: #ffffff;
  box-shadow: 0 8px 25px rgba(16, 44, 82, 0.06); }
  #main-content .page .policy-section .orders-table th,
  #main-content .page .policy-section .orders-table td {
    padding: 20px;
    border-right: 1px solid #d7e0e5;
    border-bottom: 1px solid #d7e0e5;
    color: #000000;
    font-size: 15px;
    line-height: 1.6;
    text-align: left;
    vertical-align: top; }
    #main-content .page .policy-section .orders-table th:last-child,
    #main-content .page .policy-section .orders-table td:last-child {
      border-right: 0; }
    #main-content .page .policy-section .orders-table th span,
    #main-content .page .policy-section .orders-table td span {
      font-family: "Roboto", sans-serif; }
  #main-content .page .policy-section .orders-table tr:last-child td {
    border-bottom: 0; }
  #main-content .page .policy-section .orders-table th {
    padding: 20px;
    border-right: 0;
    background: #102C52;
    color: #ffffff;
    font-size: 15px;
    font-weight: 600; }
    #main-content .page .policy-section .orders-table th a {
      color: #ffffff; }
  #main-content .page .policy-section .orders-table td {
    width: 50%;
    background: #ffffff; }
    #main-content .page .policy-section .orders-table td strong {
      display: block;
      margin-bottom: 6px;
      color: #102C52;
      font-size: 14px;
      font-weight: 700; }
    #main-content .page .policy-section .orders-table td span {
      display: block; }
    #main-content .page .policy-section .orders-table td a {
      display: inline-block;
      margin-top: 5px;
      color: #73BE1C;
      font-weight: 700;
      text-decoration: underline;
      text-underline-offset: 3px;
      transition: color 0.2s ease; }
      #main-content .page .policy-section .orders-table td a:hover, #main-content .page .policy-section .orders-table td a:focus {
        color: #102C52; }
  #main-content .page .policy-section .orders-table tr:not(:first-child) td:hover {
    background: #e1ecee; }

@media (max-width: 767px) {
  #main-content .page .policy-section .table tr td {
    font-size: 14px;
    line-height: 1.5; }
  #main-content .page .policy-section .orders-table th,
  #main-content .page .policy-section .orders-table td {
    padding: 20px;
    font-size: 15px; }
  #main-content .page .policy-section .orders-table th {
    font-size: 16px; }
  #main-content .page .policy-section .orders-table td strong {
    font-size: 16px; } }

@media (max-width: 575px) {
  #main-content .page .policy-section .orders-table {
    display: block;
    border: 0;
    border-radius: 0;
    box-shadow: none;
    background: transparent; }
    #main-content .page .policy-section .orders-table tbody,
    #main-content .page .policy-section .orders-table tr {
      display: block;
      width: 100%; }
    #main-content .page .policy-section .orders-table th,
    #main-content .page .policy-section .orders-table td {
      display: block;
      width: 100%;
      border-right: 1px solid #d7e0e5;
      border-left: 1px solid #d7e0e5; }
    #main-content .page .policy-section .orders-table th {
      border-top: 1px solid #d7e0e5;
      border-radius: 6px 6px 0 0; }
    #main-content .page .policy-section .orders-table tr:nth-child(2) td:last-child {
      border-bottom: 1px solid #d7e0e5;
      border-right: 1px solid #d7e0e5; }
    #main-content .page .policy-section .orders-table tr:last-child td {
      border-bottom: 1px solid #d7e0e5; }
    #main-content .page .policy-section .orders-table tr:nth-child(3) td:last-child {
      border-radius: 0 0 6px 6px;
      border-bottom: 1px solid #d7e0e5;
      border-right: 1px solid #d7e0e5; }
    #main-content .page .policy-section .orders-table td {
      background: #ffffff; } }

#main-content .page .align-center {
  width: 100%;
  text-align: center; }
  #main-content .page .align-center img {
    display: block;
    width: 100%;
    max-width: 1160px;
    height: auto;
    margin: 0 auto; }

#main-content .page .certification-section h2 {
  margin-bottom: 0; }

#main-content .page .benefits-section .container {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 28px; }

#main-content .page .benefits-section .benefits-inner {
  padding: 38px;
  border: 1px solid #d9dee7;
  border-top: 5px solid #73BE1C;
  background: #ffffff;
  box-shadow: 0 8px 25px rgba(16, 44, 82, 0.06); }
  #main-content .page .benefits-section .benefits-inner h2 {
    margin-bottom: 20px;
    font-size: clamp(20px, 2.5vw, 24px);
    line-height: 1.25; }
  #main-content .page .benefits-section .benefits-inner p:last-child {
    margin-bottom: 0; }

@media (max-width: 991px) {
  #main-content .page .benefits-section .container {
    display: flex;
    flex-wrap: wrap; }
  #main-content .page .benefits-section .benefits-inner {
    padding: 30px;
    width: 100%; } }

@media (max-width: 767px) {
  #main-content .page .hero-banner {
    padding: 70px 0; }
    #main-content .page .hero-banner .summary h4 {
      font-size: 17px; }
  #main-content .page .quotes-section,
  #main-content .page .quality-section,
  #main-content .page .policy-section,
  #main-content .page .process-section,
  #main-content .page .certification-section,
  #main-content .page .benefits-section {
    padding: 40px 0; }
  #main-content .page p, #main-content .page li {
    font-size: 14px;
    line-height: 1.5; }
  #main-content .page .quotes-section blockquote {
    padding-left: 18px; }
    #main-content .page .quotes-section blockquote h4 {
      font-size: 19px; }
  #main-content .page .policy-section h2:not(:first-child) {
    margin-top: 45px; }
  #main-content .page .benefits-section .benefits-inner {
    padding: 25px 20px; } }

@media (max-width: 480px) {
  #main-content .page .hero-banner {
    padding: 50px 0; }
  #main-content .page .quotes-section blockquote {
    padding-left: 14px; }
  #main-content .page .benefits-section .benefits-inner {
    padding: 22px 16px; }
  #main-content .page ul {
    padding-left: 20px; }
    #main-content .page ul li {
      padding-left: 3px; } }

/* =========================================================
   SHIPPING CHARGES PAGE
   Homepage Style
   ========================================================= */
/* =========================================================
   PAGE WRAPPER
   ========================================================= */
.shipping-charges-page {
  width: 100%;
  overflow: hidden;
  /* =======================================================
     HERO
     ======================================================= */
  /* =======================================================
     MAIN CONTENT
     ======================================================= */
  /* =======================================================
     NOTICE
     ======================================================= */
  /* =======================================================
     SECTIONS
     ======================================================= */
  /* =======================================================
     HEADINGS
     ======================================================= */
  /* =======================================================
     NOTES
     ======================================================= */
  /* =======================================================
     TABLE WRAPPER
     ======================================================= */
  /* =======================================================
     TABLE
     ======================================================= */
  /* =======================================================
     ALTERNATE SECTION TABLE
     ======================================================= */
  /* =======================================================
     RESPONSIVE - TABLET
     ======================================================= */
  /* =======================================================
     RESPONSIVE - MOBILE
     ======================================================= */
  /* =======================================================
     RESPONSIVE - SMALL MOBILE
     ======================================================= */ }
  .shipping-charges-page *,
  .shipping-charges-page *::before,
  .shipping-charges-page *::after {
    box-sizing: border-box; }
  .shipping-charges-page__hero {
    position: relative;
    display: flex;
    align-items: center;
    padding: 90px 0;
    background: #102C52; }
  .shipping-charges-page__hero h1 {
    max-width: 900px;
    margin: 0;
    color: #ffffff;
    font-family: "New Science", sans-serif;
    font-size: clamp(30px, 4vw, 42px);
    font-weight: 700;
    line-height: 1.15;
    letter-spacing: 0.5px; }
    .shipping-charges-page__hero h1:after {
      content: "";
      display: block;
      width: 55px;
      height: 4px;
      margin: 20px 0 20px;
      background: #73BE1C;
      border-radius: 2px; }
  .shipping-charges-page__content {
    width: 100%;
    padding: 0;
    background: #ffffff; }
  .shipping-charges-page__inner {
    padding-bottom: 30px; }
  .shipping-charges-page__notice {
    margin: 20px auto 0;
    padding: 24px 28px;
    border-left: 5px solid #73BE1C;
    border-radius: 4px;
    background: #e1ecee;
    color: #000000;
    font-size: 14px;
    line-height: 1.5; }
    .shipping-charges-page__notice strong {
      color: #102C52;
      font-weight: 700; }
  .shipping-charges-page__section {
    margin-top: 40px;
    padding: 0; }
    .shipping-charges-page__section--alternate {
      padding: 40px 0px;
      background: #e1ecee; }
  .shipping-charges-page h2 {
    position: relative;
    margin: 0 0 30px;
    padding-bottom: 16px;
    color: #102C52;
    font-family: "New Science", sans-serif;
    font-size: 32px;
    font-weight: 700;
    line-height: 1.25; }
  .shipping-charges-page h2::after {
    display: block;
    width: 55px;
    height: 4px;
    margin-top: 15px;
    border-radius: 3px;
    background: #73BE1C;
    content: ""; }
  .shipping-charges-page h2 span {
    font-weight: 500; }
  .shipping-charges-page h3 {
    margin: 35px 0 18px;
    color: #102C52;
    font-family: "New Science", sans-serif;
    font-size: 22px;
    font-weight: 700;
    line-height: 1.35; }
  .shipping-charges-page h3 span {
    font-weight: 500; }
  .shipping-charges-page p {
    max-width: 1100px;
    margin: 0 0 22px;
    color: #000000;
    font-size: 16px;
    line-height: 1.75; }
  .shipping-charges-page__subheading {
    margin-top: -5px;
    color: #102C52;
    font-weight: 600; }
  .shipping-charges-page__footnote {
    margin-top: 20px;
    font-size: 14px;
    font-style: italic; }
  .shipping-charges-page__notes {
    margin-top: 25px; }
    .shipping-charges-page__notes p {
      margin-bottom: 12px; }
  .shipping-charges-page__table-wrap {
    width: 100%;
    margin: 25px 0 35px;
    overflow-x: auto;
    border-radius: 6px;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: thin; }
  .shipping-charges-page__table {
    width: 100%;
    min-width: 650px;
    border: 1px solid #d9dee7;
    border-spacing: 0;
    border-collapse: separate;
    border-radius: 6px;
    background: #ffffff;
    box-shadow: 0 8px 25px rgba(16, 44, 82, 0.06);
    /* Group table heading */ }
    .shipping-charges-page__table th,
    .shipping-charges-page__table td {
      padding: 20px;
      border-right: 1px solid #d9dee7;
      border-bottom: 1px solid #d9dee7;
      color: #000000;
      font-family: inherit;
      font-size: 14px;
      line-height: 1.55;
      text-align: left;
      vertical-align: top; }
      .shipping-charges-page__table th:last-child,
      .shipping-charges-page__table td:last-child {
        border-right: 0; }
    .shipping-charges-page__table thead th {
      background: #102C52;
      color: #ffffff;
      font-size: 15px;
      vertical-align: middle; }
    .shipping-charges-page__table tbody tr:last-child td {
      border-bottom: 0; }
    .shipping-charges-page__table tbody tr td {
      background: #ffffff;
      transition: background-color 0.2s ease, color 0.2s ease; }
    .shipping-charges-page__table tbody tr:nth-child(even) td {
      background: #f8fafb; }
    .shipping-charges-page__table tbody tr:hover td {
      background: #e1ecee; }
    .shipping-charges-page__table tbody td:first-child {
      color: #102C52;
      font-weight: 600; }
    .shipping-charges-page__table--groups th {
      padding: 16px 20px;
      background: #102C52;
      color: #ffffff;
      font-size: 18px;
      text-transform: none; }
    .shipping-charges-page__table--groups td:first-child {
      width: 4%;
      color: inherit; }
    .shipping-charges-page__table--groups td:last-child {
      width: 96%; }
  .shipping-charges-page__section--alternate .shipping-charges-page__table {
    box-shadow: 0 8px 25px rgba(16, 44, 82, 0.08); }
  @media (max-width: 991px) {
    .shipping-charges-page h2 {
      font-size: 29px; }
    .shipping-charges-page h3 {
      font-size: 21px; }
    .shipping-charges-page__table th,
    .shipping-charges-page__table td {
      padding: 15px 17px;
      font-size: 14px; }
    .shipping-charges-page__table thead th {
      font-size: 14px; } }
  @media (max-width: 767px) {
    .shipping-charges-page__hero {
      padding: 70px 0; }
    .shipping-charges-page__notice {
      padding: 20px;
      font-size: 15px; }
    .shipping-charges-page h2 {
      margin-bottom: 25px;
      font-size: 27px; }
    .shipping-charges-page h2::after {
      width: 45px;
      height: 3px; }
    .shipping-charges-page h3 {
      margin-top: 28px;
      font-size: 19px; }
    .shipping-charges-page p {
      font-size: 15px;
      line-height: 1.7; }
    .shipping-charges-page__table-wrap {
      margin-top: 20px;
      margin-bottom: 28px;
      border-radius: 5px; }
    .shipping-charges-page__table {
      min-width: 600px; }
      .shipping-charges-page__table th,
      .shipping-charges-page__table td {
        padding: 13px 15px;
        font-size: 14px; }
      .shipping-charges-page__table thead th {
        font-size: 13px; } }
  @media (max-width: 480px) {
    .shipping-charges-page__hero {
      padding: 50px 0; }
    .shipping-charges-page__inner {
      padding-bottom: 20px; }
    .shipping-charges-page__notice {
      padding: 17px;
      font-size: 14px;
      line-height: 1.6; }
    .shipping-charges-page h2 {
      font-size: 24px;
      line-height: 1.3; }
    .shipping-charges-page h3 {
      font-size: 18px; }
    .shipping-charges-page p {
      font-size: 14px; }
    .shipping-charges-page__table {
      min-width: 560px; }
      .shipping-charges-page__table th,
      .shipping-charges-page__table td {
        padding: 12px;
        font-size: 13px; }
      .shipping-charges-page__table thead th {
        font-size: 12px; } }

.distributor-page {
  --primary: #102c52;
  --secondary: #73be1c;
  --hover: #219338;
  --light: #e1ecee;
  --white: #fff;
  --text: #263746;
  --border: #d6dee5;
  width: 100%;
  color: var(--text); }

.distributor-page *,
.distributor-page *::before,
.distributor-page *::after {
  box-sizing: border-box; }

.distributor-page .distributor-filter {
  display: flex;
  align-items: center;
  gap: 16px;
  padding: 0 0 32px 0; }

.distributor-page .distributor-filter label {
  color: var(--primary);
  font-size: 18px;
  font-weight: 700; }

.distributor-page .distributor-filter select {
  width: 360px;
  min-height: 48px;
  padding: 10px 42px 10px 14px;
  border: 1px solid var(--border);
  border-radius: 4px;
  background: var(--white);
  color: var(--primary);
  font-size: 16px; }

.distributor-page .distributor-filter select:focus {
  outline: 2px solid var(--secondary);
  outline-offset: 2px; }

.distributor-page .distributor-count {
  margin: 0 0 0 auto;
  color: #5a6b7a;
  font-size: 14px; }

.distributor-page .distributor-list {
  margin-bottom: 48px; }

.distributor-page .distributor {
  display: grid;
  grid-template-columns: minmax(180px, 24%) 1fr;
  gap: 40px;
  padding: 42px 40px; }

.distributor-page .distributor:nth-child(odd) {
  background: var(--light); }

.distributor-page .distributor:nth-child(even) {
  background: var(--white); }

.distributor-page .distributor__logo {
  display: flex;
  align-items: flex-start;
  justify-content: center; }

.distributor-page .distributor__logo img {
  display: block;
  width: auto;
  max-width: 100%;
  max-height: 160px;
  height: auto;
  object-fit: contain; }

.distributor-page .distributor__content {
  min-width: 0; }

.distributor-page h2 {
  margin: 0 0 18px;
  color: var(--primary);
  font-size: clamp(24px, 2.1vw, 32px);
  line-height: 1.2;
  font-weight: 700; }

.distributor-page p {
  margin: 0 0 8px;
  line-height: 1.6;
  overflow-wrap: anywhere; }

.distributor-page strong {
  display: inline-block;
  min-width: 86px;
  margin-right: 8px;
  color: var(--primary);
  font-weight: 700; }

.distributor-page a {
  color: var(--secondary);
  text-decoration: underline;
  text-underline-offset: 2px; }

.distributor-page a:hover,
.distributor-page a:focus {
  color: var(--hover); }

.distributor-page .distributor__services {
  margin: 18px 0;
  padding: 0;
  list-style: none; }

.distributor-page .distributor__services li {
  position: relative;
  margin: 6px 0;
  padding-left: 18px;
  color: var(--primary);
  font-weight: 600; }

.distributor-page .distributor__services li::before {
  content: '';
  position: absolute;
  left: 0;
  top: 0.65em;
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: var(--secondary); }

.distributor-page .distributor__websites {
  margin: 14px 0; }

.distributor-page .distributor__websites strong {
  vertical-align: top; }

.distributor-page .distributor__websites a {
  display: block;
  margin: 5px 0 0 94px;
  word-break: break-all; }

.distributor-page .office-toggle {
  display: inline-flex;
  align-items: center;
  min-height: 44px;
  margin-top: 18px;
  padding: 9px 18px;
  border: 1px solid var(--secondary);
  border-radius: 4px;
  background: var(--secondary);
  color: var(--primary);
  font: inherit;
  font-weight: 700;
  cursor: pointer;
  transition: 0.2s; }

.distributor-page .office-toggle:hover,
.distributor-page .office-toggle:focus {
  background: var(--hover);
  border-color: var(--hover); }

.distributor-page .offices {
  margin-top: 20px;
  padding-top: 20px;
  border-top: 1px solid rgba(16, 44, 82, 0.18); }

.distributor-page .office + .office {
  margin-top: 20px;
  padding-top: 20px;
  border-top: 1px solid var(--border); }

.distributor-page .office h3 {
  margin: 0 0 10px;
  color: var(--primary);
  font-size: 19px;
  line-height: 1.35; }

.distributor-page .distributor.is-hidden {
  display: none; }

.distributor-page .distributor-empty {
  margin-bottom: 48px;
  padding: 32px;
  background: var(--light);
  color: var(--primary);
  text-align: center;
  font-weight: 600; }

@media (max-width: 991px) {
  .distributor-page .distributor {
    grid-template-columns: 180px 1fr;
    gap: 28px;
    padding: 32px 28px; } }

@media (max-width: 767px) {
  .distributor-page .distributor-filter,
  .distributor-page .distributor-list,
  .distributor-page .distributor-empty {
    width: calc(100% - 32px); }
  .distributor-page .distributor-filter {
    display: block; }
  .distributor-page .distributor-filter label {
    display: block;
    margin-bottom: 8px; }
  .distributor-page .distributor-filter select {
    width: 100%; }
  .distributor-page .distributor-count {
    margin-top: 8px; }
  .distributor-page .distributor {
    grid-template-columns: 1fr;
    gap: 22px;
    padding: 28px 20px; }
  .distributor-page .distributor__logo {
    justify-content: flex-start; }
  .distributor-page .distributor__logo img {
    max-height: 120px; }
  .distributor-page strong {
    display: block;
    min-width: 0;
    margin: 0 0 2px; }
  .distributor-page .distributor__websites a {
    margin-left: 0; }
  .distributor-page .office-toggle {
    width: auto;
    justify-content: center;
    font-size: 12px;
    min-height: 36px;
    padding: 8px 12px; } }

@media (max-width: 480px) {
  .distributor-page .distributor-filter,
  .distributor-page .distributor-list,
  .distributor-page .distributor-empty {
    width: calc(100% - 24px); }
  .distributor-page .distributor {
    padding: 20px 0px;
    border-bottom: 1px solid var(--primary); }
  .distributor-page .distributor:nth-child(odd) {
    background: var(--white); }
  .distributor-page h2 {
    font-size: 22px; }
  .distributor-page p {
    font-size: 15px; } }
