/* ===== SITE LAYOUT =================== */

body, html, .jv-wrapper, .jv-page {
  font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", sans-serif;
  font-size: 16px;
  line-height: 1.6;
  color: #1a1a1a;
  background-color: #fafafa;
  padding: 0 24px;
}

h1, h2, h3 {
  font-weight: 700;
  line-height: 1.3;
  margin-bottom: 0.6em;
  color: #1a1a1a;
}

h1 {
  font-size: 32px;
  margin-top: 1.5em;
}

h2 {
  font-size: 24px;
  margin-top: 2em;
}

a,
.jv-logo a,
footer a,
.jv-page-body a {
  color: rgb(85, 85, 85);
  text-decoration: none;
  font-weight: 500;
}

a:hover,
.jv-logo a:hover,
footer a:hover,
.jv-page-body a:hover {
  text-decoration: underline;
}

.jv-logo a {
  color: rgb(85, 85, 85) !important;
  text-decoration: none !important;
}

.jv-logo a:hover {
  text-decoration: underline !important;
}

/* ===== JOB LISTINGS PAGE =================== */

.jv-page-body h2 {}

h3.h2 {}

.jv-job-list {
  width: 100%;
  border-collapse: collapse;
  background-color: #f9f9f9;
  border-radius: 10px;
  overflow: hidden;
  margin-top: 1em;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05);
}

.jv-job-list th {}

.jv-job-list td {
  padding: 16px 20px;
  border-top: 1px solid #e0e0e0;
}

.jv-job-list tr {
  transition: background-color 0.2s ease;
}

.jv-job-list tr:first-child td {
  border-top: none;
}

.jv-job-list tr:hover {
  background-color: #f0f4ff;
  cursor: pointer;
}

.jv-job-list .jv-job-list-name a {
  font-weight: 600;
  font-size: 16px;
  color: rgb(85, 85, 85);
  display: block;
  text-decoration: underline;
}

.jv-job-list .jv-job-list-location {
  text-align: right;
  font-size: 14px;
  color: #666;
  white-space: nowrap;
}

/* ========== JOB DETAILS PAGE =============== */

h2.jv-header {}

.jv-job-detail-meta,
.jv-apply-meta {}

.jv-button {}

.jv-button-primary {}

.jv-current-openings {}

.jv-share-widget {}

.jv-job-detail-bottom-actions,
.jv-apply-form-actions {}

/* ========== APPLY PAGE ====================== */

.jv-form {}

.jv-apply-form {}

.jv-search-form {}

.jv-apply-step {}

.jv-apply-section {}

.jv-step-header {}

.jv-required-label {}


/* ===== MOBILE‐ONLY OVERRIDES (scoped under .jv-mobile) ===== */

@media (max-width: 767px) {
  body, html, .jv-wrapper, .jv-page {
    padding-left: 0;
    padding-right: 0;
  }

}

.jv-mobile {
  /* Header background */
  --brand-green: #012611;

  /* Page header */
  .jv-page-header {
    background-color: var(--brand-green) !important;
  }

  /* Logo styling */
  .jv-logo {
    color: white !important;
    text-overflow: ellipsis !important;
    padding-right: 10px !important;
    padding-left: 10px !important;
  }
  
  .jv-logo a {
    color: white !important;
  }
  .jv-logo a::after,
  .jv-logo::after {
    background: none !important;
    content: none !important;
  }

  /* Tabs container background */
  .jv-tabs {
    background: var(--brand-green) !important;
  }

  /* Active‐tab underline/triangle */
  .jv-tab.jv-tab-active::before {
    border-top-color: white !important;
  }

  /* Collapse/expand chevron in category */
  .jv-list-icon.icon-mobile-collapse::before,
  .jv-list-icon.icon-mobile-expand::before {
    color: white !important;
  }

  /* Job category link background & text */
  .jv-job-category-link {
    background-color: var(--brand-green) !important;
  }

  .jv-job-category-link::before {
    display: none;  
  }

  .jv-job-category-label,
  .jv-job-category-meta {
    color: white !important;
  }
  .jv-active-category {
    border-left: 4px solid var(--brand-green) !important;
  }

  /* Job‐list inner container & rows */
  .jv-job-list-inner {
    background-color: var(--brand-green) !important;
  }
  .jv-list-link,
  .jv-list-label,
  .jv-meta {
    color: white !important;
  }

  /* Remove leftover red “ghost” on menu toggle */
  .jv-nav-open-link::before,
  .jv-nav-open-link::after,
  .jv-nav-open-link span {
    background: white !important;
    color: white !important;
  }

  .jv-wrapper {
    background: unset;
  }

  .jv-wrapper p a {
    text-decoration: underline;
  }

  .jv-nav-open-link.icon.icon-menu-flyout {
    display: none;
  }
  
  .jv-job-list {
    border-radius: 0px;
  }
}
