/* Job positions listing — LLumar 2026 rebrand (Syne titles, Commissioner body) */

.llumar-page--job-positions .llumar-breadcrumb-wrap {
  padding-top: 1.5rem;
}

.llumar-page--job-positions .paragraph.text.container-965 {
  padding-bottom: 1.5rem;
}

.llumar-page--job-positions .paragraph.text .cmp-text p {
  margin: 0 0 1rem;
}

.llumar-page--job-positions .job-positions-promo {
  display: block;
  width: 100%;
  max-width: 33.125rem;
  height: auto;
  margin: 0 auto 2rem;
  border-radius: 0.5rem;
}

.llumar-page--job-positions .jobs-accordion-wrap {
  margin: 0 auto;
  max-width: 57.5rem;
  padding: 0 1.5rem 4rem;
}

#jobs-accordion {
  --job-accent: #dc2233;
  --job-title: #540606;
  --job-border: #dbdbdb;
  --job-muted: #4d4d4f;
  --job-soft-bg: #f5f3f0;
  --job-open-bg: #edebe4;
  --job-grid-cols: 1.375rem minmax(0, 1fr) minmax(0, 38%);
  --job-grid-gap: 0.625rem;
  text-align: left;
  font-family: var(--llumar-font-body);
  font-size: 1rem;
  font-weight: 300;
  color: #1b1919;
  line-height: 1.5;
}

.jobs-acc-table-head,
.job-row-head {
  display: grid;
  grid-template-columns: var(--job-grid-cols);
  column-gap: var(--job-grid-gap);
  align-items: center;
}

.jobs-acc-table-head {
  border-bottom: 0.125rem solid var(--job-title);
  padding: 0.625rem 0.5rem 0.75rem;
  font-family: var(--llumar-font-display);
  font-weight: 600;
  color: var(--job-title);
  font-size: 0.875rem;
  letter-spacing: 0.03em;
  text-transform: uppercase;
}

.jobs-acc-head-spacer {
  grid-column: 1;
  width: 1.375rem;
  min-width: 1.375rem;
  pointer-events: none;
}

.jobs-acc-col-title {
  cursor: pointer;
  user-select: none;
  display: flex;
  align-items: center;
  gap: 0.375rem;
  min-width: 0;
}

.jobs-acc-col-title[data-sort="title"] {
  grid-column: 2;
}

.jobs-acc-col-title[data-sort="loc"] {
  grid-column: 3;
  padding-left: 1.5rem;
  box-sizing: border-box;
}

.jobs-acc-col-title:hover {
  color: var(--job-accent);
}

.jobs-sort-arrows {
  display: inline-flex;
  flex-direction: column;
  font-size: 0.5625rem;
  line-height: 1;
  color: #aaa;
  margin-left: 0.125rem;
}

.job-row-wrap {
  border-bottom: 0.0625rem solid var(--job-border);
}

.job-row-head {
  padding: 0.875rem 0.5rem;
  cursor: pointer;
  transition: background 0.15s ease;
}

.job-row-head:hover {
  background: var(--job-soft-bg);
}

.job-row-wrap.is-open .job-row-head {
  background: var(--job-open-bg);
}

.job-toggle {
  grid-column: 1;
  color: var(--job-accent);
  font-family: var(--llumar-font-display);
  font-weight: 600;
  font-size: 1.125rem;
  line-height: 1;
  text-align: center;
}

.job-title-cell {
  grid-column: 2;
  min-width: 0;
  font-family: var(--llumar-font-display);
  font-weight: 600;
  color: var(--job-title);
  font-size: 1rem;
  line-height: 1.35;
  overflow-wrap: break-word;
  word-break: break-word;
}

.job-loc-cell {
  grid-column: 3;
  display: flex;
  align-items: center;
  gap: 0.5rem;
  color: var(--job-muted);
  font-size: 0.875rem;
  font-weight: 500;
  min-width: 0;
}

.job-loc-cell span,
.job-loc-cell .job-loc-maps {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  min-width: 0;
}

.job-loc-cell .job-loc-maps {
  color: inherit;
  text-decoration: none;
  cursor: pointer;
}

.job-loc-cell .job-loc-maps:hover {
  text-decoration: underline;
  color: var(--job-accent);
}

.job-panel-side .job-loc-maps-side {
  color: var(--job-accent);
  text-decoration: none;
  word-break: break-word;
}

.job-panel-side .job-loc-maps-side:hover {
  text-decoration: underline;
}

.job-panel {
  display: none;
  border: 0.0625rem solid var(--job-border);
  border-top: none;
  background: #fff;
  padding: 1.375rem 1.25rem 1.5rem;
  margin-bottom: 0.25rem;
}

.job-row-wrap.is-open .job-panel {
  display: block;
}

.job-panel-inner {
  display: flex;
  flex-wrap: wrap;
  gap: 1.5rem;
  align-items: flex-start;
}

.job-panel-main {
  flex: 1 1 26.25rem;
  min-width: 16.25rem;
}

.job-panel-side {
  flex: 0 1 16.25rem;
  min-width: 13.75rem;
  border-left: 0.0625rem solid var(--job-border);
  padding-left: 1.375rem;
}

#jobs-accordion p {
  column-count: 1 !important;
  width: auto !important;
  max-width: none !important;
  padding: 0 !important;
  text-align: left;
  margin: 0 0 0.625rem;
}

.job-panel-main p {
  margin: 0 0 0.625rem;
}

.job-panel-main p.job-para-spacer {
  margin: 0 0 0.625rem;
  min-height: 1em;
}

.job-panel-main ul {
  margin: 0 0 0.75rem;
  padding-left: 1.2em;
}

.job-panel-main li {
  margin-bottom: 0.375rem;
  text-align: left;
}

#jobs-accordion .job-panel-main b,
#jobs-accordion .job-panel-main strong {
  color: var(--job-title);
  font-family: var(--llumar-font-display);
  font-weight: 600;
}

.job-fact {
  display: flex;
  gap: 0.75rem;
  margin-bottom: 1.125rem;
  align-items: flex-start;
}

.job-fact-icon {
  flex: 0 0 1.375rem;
  color: var(--job-accent);
  margin-top: 0.125rem;
}

.job-fact h4 {
  margin: 0 0 0.25rem;
  font-family: var(--llumar-font-display);
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--job-title);
  text-transform: uppercase;
  letter-spacing: 0.02em;
}

.job-fact p {
  margin: 0;
  color: var(--job-muted);
  font-size: 0.875rem;
  font-weight: 500;
}

#jobs-accordion .job-panel-side .job-fact p,
#jobs-accordion .job-panel-side .job-fact h4 {
  text-align: left;
}

.job-apply-btn {
  display: inline-block;
  margin-top: 1.25rem;
  padding: 0 1.5rem;
  height: 3rem;
  line-height: 3rem;
  border: none;
  border-radius: 4rem;
  font-family: var(--llumar-font-body);
  font-size: 0.875rem;
  font-weight: 500;
  color: #fff !important;
  text-decoration: none;
  cursor: pointer;
  box-sizing: border-box;
  background-color: var(--job-accent);
  transition: opacity 0.2s ease;
}

.job-apply-btn:hover,
.job-apply-btn:focus {
  opacity: 0.88;
  color: #fff !important;
  text-decoration: none;
}

.jobs-empty {
  text-align: center;
  padding: 2.5rem 1.25rem;
  color: var(--job-muted);
  font-weight: 500;
}

@media screen and (max-width: 43.75rem) {
  .job-row-head {
    grid-template-columns: 1.375rem minmax(0, 1fr);
    grid-template-rows: auto auto;
    align-items: start;
  }

  .job-toggle {
    grid-row: 1 / -1;
    align-self: start;
    padding-top: 0.125rem;
  }

  .job-title-cell {
    grid-column: 2;
    grid-row: 1;
  }

  .job-loc-cell {
    grid-column: 2;
    grid-row: 2;
    max-width: none;
    margin-top: 0.375rem;
    padding-left: 0;
  }

  .job-loc-cell span,
  .job-loc-cell .job-loc-maps {
    white-space: normal;
    overflow: visible;
    text-overflow: clip;
  }

  .jobs-acc-table-head {
    grid-template-columns: 1.375rem minmax(0, 1fr);
    row-gap: 0.5rem;
  }

  .jobs-acc-col-title[data-sort="loc"] {
    display: none;
  }

  .jobs-acc-col-title[data-sort="title"] {
    grid-column: 2;
    min-width: 0;
  }

  .job-panel-inner {
    flex-direction: column-reverse;
    align-items: stretch;
  }

  .job-panel-main {
    min-width: 0;
    flex: 1 1 auto;
  }

  .job-panel-side {
    flex: 1 1 auto;
    border-left: none;
    padding-left: 0;
    border-bottom: 0.0625rem solid var(--job-border);
    padding-bottom: 1.125rem;
    margin-bottom: 0.25rem;
    width: 100%;
    min-width: 0;
  }
}

@media (min-width: 1024px) {
  .llumar-page--job-positions .jobs-accordion-wrap {
    padding-left: 2rem;
    padding-right: 2rem;
  }

  .job-title-cell {
    font-size: 1.125rem;
  }
}
