/* @font-face {
  font-family: Geist;
  src: url("vendor/geist.woff2") format("woff2");
  font-weight: 100 900;
  font-display: swap;
} */

@import url("https://fonts.googleapis.com/css2?family=Geist:ital,wght@0,100..900;1,100..900&family=Inter:ital,opsz,wght@0,14..32,100..900;1,14..32,100..900&family=Plus+Jakarta+Sans:ital,wght@0,200..800;1,200..800&display=swap");

:root {
  --ink: #101625;
  --slate: #181f2e;
  --muted: #56616f;
  --cream: #f8f5ed;
  --yellow: #f5c842;
  --yellow-hover: #e6b72a;
  --teal: #228b83;
  --filter-selected: #3abcb1;
  --focus-ring: #318dff;
  --paper: #fff;
  --bs-body-font-family: Geist, system-ui, sans-serif;
  --bs-body-color: var(--ink);
}
body {
  line-height: 1.55;
}
.container {
  --bs-gutter-x: 36px;
  max-width: 1436px;
}
h1,
h2,
h3 {
  font-weight: 600;
  line-height: 1.08;
  letter-spacing: -0.035em;
}
h1 {
  font-size: clamp(2.55rem, 5.2vw, 4.75rem);
}
h2 {
  font-size: clamp(2rem, 3.3vw, 3.25rem);
}
h3 {
  font-size: 1.25rem;
}
p {
  margin-bottom: 1rem;
}
em {
  font-style: normal;
  color: var(--yellow);
}
a {
  color: inherit;
  text-underline-offset: 0.18em;
}
a:hover {
  color: inherit;
}
:focus-visible {
  outline: 3px solid var(--focus-ring);
  outline-offset: 4px;
}
[hidden] {
  display: none !important;
}
.skip-link {
  position: fixed;
  top: 8px;
  left: 8px;
  z-index: 10;
  padding: 12px;
  background: #fff;
  transform: translateY(-150%);
}
.skip-link:focus {
  transform: none;
}
.dark {
  background: var(--ink);
  color: #fff;
}
.dark p:not(.eyebrow):not(.bundle-price):not(.figma-scene p) {
  color: #b8c2d1;
}
.cream {
  background: var(--cream);
}
.section {
  padding-block: 64px;
}
.eyebrow {
  display: flex;
  align-items: center;
  gap: 9px;
  text-transform: uppercase;
  letter-spacing: 0.11em;
  font-size: 0.75rem;
  font-weight: 500;
  margin-bottom: 12px;
}
.eyebrow::before {
  content: "";
  width: 24px;
  height: 2px;
  background: var(--yellow);
  flex: none;
}
.section-heading {
  margin-bottom: 24px;
}
.section-heading h2 {
  margin: 0;
}
.section-heading > p {
  margin-top: 14px;
  color: var(--muted);
}
.dark .section-heading > p {
  color: #b8c2d1;
}
.logo {
  width: 108px;
  height: auto;
  display: block;
}
.masthead {
  min-height: 78px;
  position: relative;
  gap: 16px;
  flex-wrap: wrap;
  padding-block: 12px;
}
.masthead nav {
  display: flex;
  flex-direction: column;
  gap: 14px;
  width: 100%;
  padding-bottom: 12px;
}
.masthead nav a {
  text-decoration: none;
  font-weight: 500;
  font-style: normal;
  font-size: 0.94rem;
}
.masthead nav a:hover {
  text-decoration: underline;
}
.menu-toggle {
  display: none;
  background: #1d2637;
  border: 1px solid #3b475a;
  color: white;
  border-radius: 8px;
  min-height: 44px;
  padding: 8px 14px;
}
.js .menu-toggle {
  display: block;
}
.js .masthead nav:not(.is-open) {
  display: none;
}
.pill {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  gap: 8px;
  min-height: 44px;
  border: 1px solid transparent;
  border-radius: 100px;
  padding: 8px 18px;
  font-size: 0.9rem;
  font-weight: 700;
  text-decoration: none;
  text-align: center;
  line-height: 1.3;
}
.yellow {
  background: var(--yellow);
  color: var(--ink);
}
.ink {
  background: var(--ink);
  color: #fff;
}
.white {
  background: #fff;
  color: var(--ink);
}
.outline {
  border-color: #aeb8c6;
  color: #fff;
}
.hero {
  padding: 46px 0 62px;
  background:
    radial-gradient(ellipse at 80% 75%, #143530 0, transparent 56%), var(--ink);
}
.hero .eyebrow::before {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #49baad;
}
.hero-mark {
  width: 26px;
  vertical-align: top;
  margin-left: -10px;
  margin-top: 5px;
}
.hero-intro {
  max-width: 640px;
  font-weight: 400;
  font-size: clamp(1rem, 1.5vw, 1.25rem);
  margin-block: 20px 24px;
}
.job-search {
  display: grid;
  gap: 8px;
  padding: 10px;
  background: #222e3e;
  border-radius: 10px;
  max-width: 566px;
}
.job-search label {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 5px;
  min-width: 0;
}
.job-search label img {
  width: 24px;
  height: auto;
}
.job-search label span {
  font-size: 0.72rem;
  font-weight: 500;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  min-width: 0;
  width: 100%;
}
.job-search input {
  display: block;
  width: 100%;
  font-weight: 400;
  background: transparent;
  color: #fff;
  border: 0;
  padding: 4px 0;
  font-size: 0.875rem;
}
.job-search input::placeholder {
  color: #6d7989;
}
.job-search button {
  border-radius: 8px;
}
.popular {
  margin-top: 18px;
  font-size: 0.82rem;
}
.popular a {
  border: 1px solid #68788b;
  border-radius: 100px;
  padding: 4px 10px;
  text-decoration: none;
}
.popular a:hover {
  background: #344252;
}
.free {
  margin: 22px 0 0;
  font-size: 0.85rem;
  font-weight: 600;
}
.free img {
  width: 22px;
  margin-right: 6px;
}
.tile {
  border: 1px solid #e0e4e7;
  border-radius: 12px;
  background: #fff;
  padding: 20px;
  overflow: hidden;
}
.cream .tile {
  border-color: transparent;
}
.tile p:last-child {
  margin-bottom: 0;
}
.tile h3 {
  margin-block: 8px 10px;
  font-style: normal;
  font-weight: 500;
  align-self: stretch;
}
.tile hr {
  opacity: 0.14;
}
.employer {
  height: 50px;
  display: flex;
  align-items: center;
  font-weight: 700;
  margin-bottom: 10px;
}

.employer img {
  max-width: 140px;
  max-height: 48px;
  width: auto;
  height: auto;
}
.inline-icon {
  width: 14px;
  height: auto;
  vertical-align: -2px;
}
.text-link {
  font-weight: 700;
  font-size: 0.9rem;
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  min-height: 32px;
}
.text-link:hover {
  text-decoration: underline;
}
.filter button {
  background: transparent;
  border: 1px solid #aeb9c1;
  color: var(--ink);
  border-radius: 100px;
  padding: 6px 13px;
  min-height: 40px;
  font-size: 0.85rem;
  font-weight: 700;
}
.filter button[aria-pressed="true"] {
  background: var(--filter-selected);
  border-color: var(--filter-selected);
}
.filter button:disabled {
  opacity: 0.6;
}
.feature-icon {
  width: 34px;
  height: auto;
}
.stat-icon {
  width: auto;
  height: 44px;
  margin-bottom: 12px;
}
.stat {
  border-top: 1px solid #dedbd4;
  padding-top: 16px;
}
.stat h3 {
  font-size: 2rem;
}
.dark .tile {
  display: flex;
  flex-direction: column;
  background: #192231;
  border-color: #475365;
}
.bundle-price {
  font-size: 2rem;
  font-weight: 700;
  color: var(--yellow);
  margin-bottom: 0;
}
.bundle-price del {
  font-size: 1.25rem;
  color: #b8c2d1;
}
.checks {
  list-style: none;
  padding: 0;
}
.checks li {
  padding-block: 4px;
}
.checks li::before {
  content: "✓";
  color: #83dfd3;
  margin-right: 8px;
}
.course-grid .tile,
.paths .tile {
  padding: 0;
}
.course-grid .tile {
  background: #f5f6f7;
}
.card-photo {
  width: 100%;
  aspect-ratio: 1.78;
  object-fit: cover;
  display: block;
}
.tile-body {
  padding: 15px;
}
.course-price {
  color: #246b65;
  font-weight: 700;
}
.journey {
  margin-top: 24px;
}
.step {
  border-left: 1px solid #c5bfae;
  padding-left: 18px;
  margin-left: 18px;
}
.step img {
  width: 48px;
  height: 48px;
  object-fit: contain;
  margin-bottom: 12px;
}
details {
  border-bottom: 1px solid #dce1e4;
}
details:first-child {
  border-top: 1px solid #dce1e4;
}
summary {
  padding: 13px 0;
  min-height: 48px;
  font-weight: 650;
  cursor: pointer;
  list-style: none;
  display: flex;
  justify-content: space-between;
  gap: 12px;
}
summary::-webkit-details-marker {
  display: none;
}
summary::after {
  content: "+";
  border: 1px solid #a8b4bf;
  border-radius: 50%;
  width: 22px;
  height: 22px;
  text-align: center;
  line-height: 20px;
  flex: none;
}
details[open] > summary::after {
  content: "−";
}
details p {
  color: var(--muted);
}
.faq-art {
  min-height: 86px;
  display: flex;
  align-items: center;
  gap: 12px;
}
.faq-art img {
  max-width: 72px;
}
.faq-art img:last-child {
  max-width: 26px;
}
.closing {
  background: var(--yellow);
}
.closing h2 {
  font-size: clamp(2.5rem, 5.2vw, 4.7rem);
}
.closing em {
  color: inherit;
}
.closing .eyebrow::before {
  background: currentColor;
}
.newsletter {
  padding-block: 36px;
}
.newsletter-icon {
  width: 46px;
  height: 46px;
  flex: none;
}
.newsletter h2 {
  font-size: 1.5rem;
}
.newsletter p:last-child {
  margin-bottom: 0;
}
.signup {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-block: 4px;
}
.signup input {
  flex: 1 1 180px;
  min-width: 0;
  border: 1px solid #aeb7c4;
  border-radius: 8px;
  padding: 9px;
}
.signup .pill {
  border-radius: 8px;
  flex: 1 0 auto;
}
footer nav h2 {
  font-size: 1rem;
}
footer nav a {
  display: block;
  font-size: 0.875rem;
  margin-bottom: 8px;
  text-decoration: none;
}
footer nav a:hover {
  text-decoration: underline;
}
footer .footer-line {
  font-size: clamp(1.35rem, 3vw, 2.3rem);
  font-weight: 700;
  margin: 38px 0 20px;
}
.footer-bottom {
  border-top: 1px solid #3f4859;
  padding-top: 18px;
}
@media (max-width: 767.98px) {
  .browse-row {
    flex-wrap: nowrap;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    padding-bottom: 10px;
  }
  .browse-row > [class*="col"] {
    scroll-snap-align: start;
  }
  .job-search label + label {
    border-top: 1px solid #48566a;
  }
  .faq-art {
    margin-top: 20px;
  }
}
@media (min-width: 576px) {
  .job-search {
    grid-template-columns: 1fr 1fr auto;
    align-items: center;
  }
  .job-search label + label {
    border-top: 0;
    border-left: 1px solid #48566a;
  }
  .logo {
    width: 132px;
  }
}
@media (min-width: 992px) {
  .section {
    padding-block: 96px;
  }
  .masthead {
    min-height: 84px;
    flex-wrap: nowrap;
  }
  .js .menu-toggle {
    display: none;
  }
  .masthead nav,
  .js .masthead nav:not(.is-open) {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    flex-direction: row;
    gap: clamp(12px, 1.5vw, 28px);
    padding: 0;
  }
  .masthead nav a:nth-last-child(2) {
    margin-left: clamp(0px, 6vw, 140px);
  }
  .hero {
    padding-block: 56px;
  }
  .hero .row {
    min-height: 616px;
  }
  .stat {
    border-top: 0;
    border-left: 1px solid #dedbd4;
    padding: 0 24px;
  }
}
@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    animation-duration: 0.01ms !important;
    scroll-behavior: auto !important;
    transition-duration: 0.01ms !important;
  }
}

@media (max-width: 991.98px) {
  .hero h1 br {
    display: none;
  }
  .hero h1 em {
    display: block;
  }
  .hero-mark {
    display: none;
  }
}

html:not(.js) .filter {
  display: none !important;
}

@media (min-width: 992px) {
  .hero h1 {
    font-size: clamp(2.65rem, 4.25vw, 4.25rem);
  }
}

.card-controls {
  display: none;
}

.footer-menu-toggle {
  display: none;
}

#faq details.is-closing > summary::after {
  content: "+";
}

.faq-answer {
  display: flow-root;
}

@media (max-width: 767.98px) {
  .bundle-grid > [class*="col"] {
    width: 86%;
  }

  .card-controls:not([hidden]) {
    display: flex;
    justify-content: flex-end;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 12px;
  }

  .card-controls button {
    min-height: 44px;
    display: grid;
    place-items: center;
    width: 44px;
    padding: 0;
    border: 1px solid currentColor;
    border-radius: 50%;
    background: transparent;
    color: inherit;
    font: inherit;
  }

  .card-controls button:disabled {
    opacity: 0.5;
  }

  .js .footer-menu {
    width: 100%;
  }

  .js .footer-menu > h2 {
    display: none;
  }

  .js .footer-menu-toggle {
    display: flex;
    width: 100%;
    align-items: center;
    justify-content: space-between;
    min-height: 44px;
    margin-bottom: 4px;
    padding: 8px 0;
    border: 0;
    background: transparent;
    color: inherit;
    font: inherit;
    font-weight: 650;
    text-align: left;
  }

  .footer-menu-toggle::after {
    content: "+";
  }

  .footer-menu-toggle[aria-expanded="true"]::after {
    content: "−";
  }

  .footer-menu a {
    padding-block: 8px;
  }
}

.mobile-drawer {
  position: fixed;
  inset: 0 0 0 auto;
  width: min(88vw, 384px);
  max-width: none;
  height: 100dvh;
  max-height: none;
  margin: 0;
  padding: 20px;
  overflow-y: auto;
  overscroll-behavior: contain;
  border: 0;
  background: #101625;
  color: #fff;
}

.mobile-drawer::backdrop {
  background: rgb(5 9 18 / 65%);
}

html:has(.mobile-drawer[open]) {
  overflow: hidden;
}

.drawer-close {
  display: block;
  min-height: 44px;
  margin-inline-start: auto;
  margin-bottom: 16px;
  padding: 8px 14px;
  border: 1px solid #68788b;
  border-radius: 8px;
  background: transparent;
  color: inherit;
}

.mobile-drawer nav {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 8px;
}

.mobile-drawer nav a {
  display: flex;
  align-items: center;
  min-height: 44px;
  padding: 8px 12px;
  text-decoration: none;
}

.mobile-drawer nav a:not(.pill):hover {
  background: #1d2637;
}

/* Homepage details from the Figma section exports. */
.job-search {
  grid-template-columns: minmax(0, 1fr) 48px;
  gap: 8px 12px;
  padding: 8px;
  background: #1c2430;
  border-radius: 8px;
}
.job-search label {
  grid-column: 1;
  padding: 0 4px;
}
.job-search button {
  grid-area: 1 / 2 / 3 / 3;
  align-self: center;
  width: 48px;
  height: 48px;
  padding: 0;
}
.job-search button img {
  filter: brightness(0) saturate(100%);
}
.job-search input {
  padding: 0;
}
@media (min-width: 576px) {
  .job-search {
    grid-template-columns: repeat(2, minmax(0, 1fr)) 48px;
    min-height: 64px;
  }
  .job-search label,
  .job-search button {
    grid-area: auto;
  }
}

.journey {
  --step-line: #a39b85;
  --step-size: 72px;
}
.journey .step {
  position: relative;
  margin: 0;
  padding: 0;
  border: 0;
}
.journey .step img {
  position: relative;
  z-index: 1;
  display: block;
  width: var(--step-size);
  height: var(--step-size);
  margin: 0 0 24px;
  padding: 17px;
  border: 1px solid var(--step-line);
  border-radius: 50%;
  background: var(--cream);
}
.journey .step h3 {
  font-size: 20px;
}
.journey .step p {
  font-size: 16px;
  color: #3d4959;
}
@media (min-width: 992px) {
  .journey > div:not(:last-child) .step::before {
    content: "";
    position: absolute;
    top: calc(var(--step-size) / 2);
    width: calc(100% + var(--bs-gutter-x));
    border-top: 1px solid var(--step-line);
  }
}
@media (max-width: 767.98px) {
  .journey {
    --step-size: 56px;
  }
  .journey .step {
    display: grid;
    grid-template-columns: var(--step-size) minmax(0, 1fr);
    gap: 4px 16px;
    align-items: start;
    min-height: var(--step-size);
  }
  .journey .step img {
    grid-row: span 2;
    margin: 0;
    padding: 12px;
  }
  .journey > div:not(:last-child) .step::before {
    content: "";
    position: absolute;
    top: 0;
    bottom: calc(-1 * var(--bs-gutter-y));
    left: calc(var(--step-size) / 2);
    border-left: 1px solid var(--step-line);
  }
}
.faq-art img:only-child {
  width: min(100%, 277px);
  max-width: none;
  height: auto;
}
.closing {
  min-height: clamp(455px, 32.5vw, 624px);
  padding-block: clamp(52px, 5.7vw, 96px);
  display: flex;
  align-items: center;
  background:
    linear-gradient(90deg, #2b918a 22%, transparent 62%),
    linear-gradient(rgb(58 188 177 / 60%), rgb(58 188 177 / 60%)),
    url("../img/9-f5827.webp") center bottom / cover no-repeat,
    #2e968e;
  color: #0e1424;
}
.closing h2 {
  font-size: clamp(36px, 4.1vw, 68px);
  line-height: 1.12;
}
.closing em {
  color: #fff;
}
.closing .pill {
  min-width: 0;
  font-weight: 500;
}
.closing-cards {
  position: relative;
  isolation: isolate;
  display: grid;
  justify-items: start;
  width: min(100%, 330px);
  margin-inline: auto;
  padding: 16px 0 20px;
  gap: 0;
}
.closing-cards::before {
  content: "";
  position: absolute;
  z-index: -1;
  width: 73%;
  aspect-ratio: 1;
  top: 10%;
  left: 7%;
  border: 4px dashed #d8f2ef;
  border-radius: 50%;
}
.closing-chip {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: clamp(8px, 0.95vw, 18px);
  width: 77%;
  min-height: clamp(64px, 5.5vw, 96px);
  padding: 10px clamp(12px, 1.3vw, 24px);
  border-radius: 10px;
  background: #fff;
  color: #0e1424;
  font-size: clamp(18px, 1.9vw, 32px);
  font-weight: 650;
  white-space: nowrap;
  line-height: 1.12;
  box-shadow: 0 8px 10px rgb(14 20 36 / 8%);
  transform: rotate(-7deg);
}
.closing-chip:nth-child(2) {
  margin-top: -3px;
  margin-left: 14%;
  background: var(--yellow);
  transform: rotate(3deg);
}
.closing-chip:nth-child(3) {
  margin-top: 4px;
  margin-left: 25%;
  width: 75%;
  color: #fff;
  background: #0e1424;
  transform: rotate(-5deg);
}
.closing-chip small {
  font-size: 11px;
  font-weight: 500;
}
.closing-chip img {
  width: clamp(22px, 2.08vw, 40px);
  height: clamp(22px, 2.08vw, 40px);
  object-fit: contain;
  box-sizing: content-box;
  padding: 8px;
  border-radius: 8px;
  background: #0e1424;
}
.closing-chip:last-child img {
  background: #293344;
}
@media (min-width: 992px) {
  .closing > .container {
    width: 83.5%;
  }
  .closing .row > :first-child {
    width: 60%;
  }
}
.newsletter {
  padding-block: 56px;
  border-bottom: 1px solid #0e1424;
}
.newsletter-icon {
  display: grid;
  place-items: center;
  width: 56px;
  height: 56px;
  border-radius: 12px;
  background: #0e1424;
}
.newsletter .eyebrow {
  margin-bottom: 4px;
  font:
    500 14px/1.5 ui-monospace,
    monospace;
  letter-spacing: 0.05em;
}
.newsletter .eyebrow::before {
  content: none;
}
.newsletter h2 {
  font-size: clamp(24px, 2vw, 32px);
}
.newsletter p:last-child {
  max-width: 410px;
  color: #3d4959;
}
.newsletter label {
  font-size: 14px;
  font-weight: 700;
}
.newsletter .signup {
  flex-wrap: nowrap;
  align-items: center;
  margin-block: 6px;
  padding: 8px;
  border: 1px solid #aeb7c4;
  border-radius: 8px;
}
.newsletter .signup input {
  flex: 1 1 0;
  border: 0;
  padding: 8px 4px;
}
.newsletter .signup .pill {
  flex: 0 0 auto;
}
.newsletter [role="status"] {
  color: #3d4959;
}
@media (max-width: 420px) {
  .newsletter .signup {
    flex-wrap: wrap;
  }
  .newsletter .signup input,
  .newsletter .signup .pill {
    flex: 1 0 100%;
  }
}
@media (min-width: 992px) {
  .closing .closing-cards {
    width: min(36%, clamp(290px, 24.1vw, 427px));
    margin-inline: 0 auto;
  }
}
.closing {
  background-size:
    auto,
    auto,
    100% 100%;
}
@media (max-width: 767.98px) {
  .closing {
    background-size: auto, auto, cover;
    background-position:
      center,
      center,
      70% top;
  }
}

.footer-join-accent {
  margin-inline-start: 4px;
  vertical-align: 0.1em;
}

footer.dark .footer-line {
  color: #f8f9fa;
}

.footer-bottom a {
  color: var(--yellow);
}

.jobs-grid .layered-logo {
  position: relative;
  display: block;
  width: 78px;
  height: 30px;
}

.jobs-grid .layered-logo .logo-piece {
  position: absolute;
  display: block;
  width: auto;
  height: auto;
}

.footer-signoff {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 14px 28px;
  margin-block: 36px 24px;
}
.footer-signoff .footer-line {
  margin: 0;
}
.footer-social,
.footer-social ul {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 12px;
}
.footer-social {
  color: #c6cdd5;
  font-size: 14px;
}
.footer-social ul {
  margin: 0;
  padding: 0;
  list-style: none;
}
.footer-social img {
  display: block;
  object-fit: contain;
}
.launch-footer .footer-signoff {
  margin: 0;
}

footer.section,
footer.launch-footer {
  padding-block-end: 24px;
}

footer a:is(:hover, :focus-visible),
footer .footer-menu-toggle:is(:hover, :focus-visible),
footer nav h2:hover {
  color: var(--yellow);
}

.footer-social li {
  position: relative;
}
.footer-social li:has(img[src$="f2a59.svg"]) {
  --social-icon: url("data:image/svg+xml;base64,PHN2ZyBwcmVzZXJ2ZUFzcGVjdFJhdGlvPSJub25lIiBvdmVyZmxvdz0idmlzaWJsZSIgc3R5bGU9ImRpc3BsYXk6IGJsb2NrOyIgd2lkdGg9IjI0IiBoZWlnaHQ9IjI0IiB2aWV3Qm94PSIwIDAgMjQgMjQiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxnIGlkPSJmYWNlYm9vayI+CjxwYXRoIGlkPSJWZWN0b3IiIGQ9Ik0xOCA2LjI5OTg1SDE1LjYyNDRIMTQuOTkzNkMxNC40NTA1IDYuMjk5ODUgMTQuMDEwMSA2Ljc0MDE1IDE0LjAxMDEgNy4yODMzVjEwLjczMzdIMThMMTcuNDE1NiAxNC41MzIySDE0LjAxMDFWMjEuNUg5LjYyMjU1VjE0LjUzMjJINlYxMC43MzM3SDkuNTc1NzVMOS42MjI1NSA3LjEyODE1TDkuNjE1OSA2LjQ3MzU1QzkuNTkzOTUgNC4zMDEwOSAxMS4zMzcyIDIuNTIyMTcgMTMuNTA5NyAyLjUwMDJDMTMuNTIyOSAyLjUwMDA3IDEzLjUzNjIgMi41IDEzLjU0OTQgMi41SDE4VjYuMjk5ODVaIiBzdHJva2Utd2lkdGg9IjEuNSIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIgc3Ryb2tlPSJ3aGl0ZSIvPgo8L2c+Cjwvc3ZnPgo=");
}
.footer-social li:has(img[src$="95d83.svg"]) {
  --social-icon: url("data:image/svg+xml;base64,PHN2ZyBwcmVzZXJ2ZUFzcGVjdFJhdGlvPSJub25lIiBvdmVyZmxvdz0idmlzaWJsZSIgc3R5bGU9ImRpc3BsYXk6IGJsb2NrOyIgd2lkdGg9IjE5LjUiIGhlaWdodD0iMTkuNSIgdmlld0JveD0iMCAwIDE5LjUgMTkuNSIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPGcgaWQ9Ikdyb3VwIj4KPHBhdGggaWQ9IlZlY3RvciIgZD0iTTE0Ljc1IDAuNzVINC43NUMyLjU0MDg2IDAuNzUgMC43NSAyLjU0MDg2IDAuNzUgNC43NVYxNC43NUMwLjc1IDE2Ljk1OTIgMi41NDA4NiAxOC43NSA0Ljc1IDE4Ljc1SDE0Ljc1QzE2Ljk1OTIgMTguNzUgMTguNzUgMTYuOTU5MiAxOC43NSAxNC43NVY0Ljc1QzE4Ljc1IDIuNTQwODYgMTYuOTU5MiAwLjc1IDE0Ljc1IDAuNzVaIiBzdHJva2Utd2lkdGg9IjEuNSIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIgc3Ryb2tlPSJ3aGl0ZSIvPgo8cGF0aCBpZD0iVmVjdG9yXzIiIGQ9Ik05Ljc1IDEzLjc1QzExLjk1OTIgMTMuNzUgMTMuNzUgMTEuOTU5MiAxMy43NSA5Ljc1QzEzLjc1IDcuNTQwODUgMTEuOTU5MiA1Ljc1IDkuNzUgNS43NUM3LjU0MDg1IDUuNzUgNS43NSA3LjU0MDg1IDUuNzUgOS43NUM1Ljc1IDExLjk1OTIgNy41NDA4NSAxMy43NSA5Ljc1IDEzLjc1WiIgc3Ryb2tlLXdpZHRoPSIxLjUiIHN0cm9rZS1saW5lam9pbj0icm91bmQiIHN0cm9rZT0id2hpdGUiLz4KPHBhdGggaWQ9IlZlY3Rvcl8zIiBkPSJNMTUuMjUgNS4yNUMxNS44MDIzIDUuMjUgMTYuMjUgNC44MDIzIDE2LjI1IDQuMjVDMTYuMjUgMy42OTc3IDE1LjgwMjMgMy4yNSAxNS4yNSAzLjI1QzE0LjY5NzcgMy4yNSAxNC4yNSAzLjY5NzcgMTQuMjUgNC4yNUMxNC4yNSA0LjgwMjMgMTQuNjk3NyA1LjI1IDE1LjI1IDUuMjVaIiBmaWxsPSJ3aGl0ZSIvPgo8L2c+Cjwvc3ZnPgo=");
}
.footer-social li:has(img[src$="3875b.svg"]) {
  --social-icon: url("data:image/svg+xml;base64,PHN2ZyBwcmVzZXJ2ZUFzcGVjdFJhdGlvPSJub25lIiBvdmVyZmxvdz0idmlzaWJsZSIgc3R5bGU9ImRpc3BsYXk6IGJsb2NrOyIgd2lkdGg9IjE5LjUiIGhlaWdodD0iMTkuNSIgdmlld0JveD0iMCAwIDE5LjUgMTkuNSIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPGcgaWQ9Ikdyb3VwIDQiPgo8ZyBpZD0iVW5pb24iPgo8L2c+CjxnIGlkPSJVbmlvbl8yIj4KPC9nPgo8ZyBpZD0iVmVjdG9yIj4KPHBhdGggZD0iTTUuMzI2OTUgNi4xMDg5N0M1Ljk3ODM2IDYuMTA4OTcgNi41MDY0NCA1LjU4MDkgNi41MDY0NCA0LjkyOTQ5QzYuNTA2NDQgNC4yNzgwNyA1Ljk3ODM2IDMuNzUgNS4zMjY5NSAzLjc1QzQuNjc1NTQgMy43NSA0LjE0NzQ2IDQuMjc4MDcgNC4xNDc0NiA0LjkyOTQ5QzQuMTQ3NDYgNS41ODA5IDQuNjc1NTQgNi4xMDg5NyA1LjMyNjk1IDYuMTA4OTdaIiBmaWxsPSJ3aGl0ZSIvPgo8cGF0aCBkPSJNNi41MDYzNyA3Ljg3ODJINC4xNDc0VjE1LjI1SDYuNTA2MzdWNy44NzgyWiIgZmlsbD0id2hpdGUiLz4KPC9nPgo8cGF0aCBpZD0iVmVjdG9yXzIiIGQ9Ik04Ljg2NTM2IDEwLjY3OTVWMTUuMjVIMTAuOTI5NVYxMS4xMjE4QzEwLjkyOTUgMTAuMzg0NiAxMS4zNzE4IDkuNzk0ODcgMTIuMTA4OSA5Ljc5NDg3QzEyLjg0NjEgOS43OTQ4NyAxMy4yODg0IDEwLjUzMjEgMTMuMjg4NCAxMS4xMjE4VjE1LjI1SDE1LjM1MjVWMTAuNjc5NUMxNS4zNTI1IDkuNzk0ODcgMTQuMzIwNSA3Ljg3ODIgMTIuMTA4OSA3Ljg3ODJDOS44OTc0MSA3Ljg3ODIgOC44NjUzNiA5Ljc5NDg3IDguODY1MzYgMTAuNjc5NVoiIGZpbGw9IndoaXRlIi8+CjxwYXRoIGlkPSJWZWN0b3JfMyIgZD0iTTE0Ljc1IDAuNzVINC43NUMyLjU0MDg2IDAuNzUgMC43NSAyLjU0MDg2IDAuNzUgNC43NVYxNC43NUMwLjc1IDE2Ljk1OTIgMi41NDA4NiAxOC43NSA0Ljc1IDE4Ljc1SDE0Ljc1QzE2Ljk1OTIgMTguNzUgMTguNzUgMTYuOTU5MiAxOC43NSAxNC43NVY0Ljc1QzE4Ljc1IDIuNTQwODYgMTYuOTU5MiAwLjc1IDE0Ljc1IDAuNzVaIiBzdHJva2Utd2lkdGg9IjEuNSIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIgc3Ryb2tlPSJ3aGl0ZSIvPgo8L2c+Cjwvc3ZnPgo=");
}
.footer-social li:has(img[src$="0be9e.svg"]) {
  --social-icon: url("data:image/svg+xml;base64,PHN2ZyBwcmVzZXJ2ZUFzcGVjdFJhdGlvPSJub25lIiBvdmVyZmxvdz0idmlzaWJsZSIgc3R5bGU9ImRpc3BsYXk6IGJsb2NrOyIgd2lkdGg9IjIwLjUiIGhlaWdodD0iMTUuNSIgdmlld0JveD0iMCAwIDIwLjUgMTUuNSIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPGcgaWQ9Ikdyb3VwIj4KPHBhdGggaWQ9IlZlY3RvciIgZD0iTTMuNzgyODIgMC45NTcyQzYuNTU0NDIgMC44MTkwNSA4LjcxMDEyIDAuNzUgMTAuMjUgMC43NUMxMS43OSAwLjc1IDEzLjk0NjUgMC44MTkxIDE2LjcxOTUgMC45NTcyNUMxOC4yMjA1IDEuMDMyMDUgMTkuNDM0NiAyLjIwNTk1IDE5LjU1OTggMy43MDM2QzE5LjY4NjYgNS4yMjA2IDE5Ljc1IDYuNTU2NyAxOS43NSA3LjcxMTlDMTkuNzUgOC44ODEzIDE5LjY4NSAxMC4yMzYgMTkuNTU1MSAxMS43NzYxQzE5LjQzMDMgMTMuMjU1MiAxOC4yNDI2IDE0LjQyMDYgMTYuNzYxNSAxNC41MTc1QzE0LjM5MDggMTQuNjcyNSAxMi4yMjAzIDE0Ljc1IDEwLjI1IDE0Ljc1QzguMjc5OTcgMTQuNzUgNi4xMTAyOCAxNC42NzI1IDMuNzQwODggMTQuNTE3NUMyLjI2MDIzIDE0LjQyMDcgMS4wNzI4MiAxMy4yNTYgMC45NDc0MTUgMTEuNzc3NUMwLjgxNTgwNSAxMC4yMjU5IDAuNzUgOC44NzA3IDAuNzUgNy43MTE5QzAuNzUgNi41NjcwNSAwLjgxNDIzIDUuMjMwNSAwLjk0MjcgMy43MDIyQzEuMDY4NTQgMi4yMDUxNSAyLjI4MjM0IDEuMDMyIDMuNzgyODIgMC45NTcyWiIgc3Ryb2tlLXdpZHRoPSIxLjUiIHN0cm9rZS1saW5lam9pbj0icm91bmQiIHN0cm9rZT0id2hpdGUiLz4KPHBhdGggaWQ9IlZlY3Rvcl8yIiBkPSJNOC43NTA5NyA1LjU1NDZWOS45NTNDOC43NTA5NyAxMC4xODk3IDguOTQyODcgMTAuMzgxNSA5LjE3OTUyIDEwLjM4MTVDOS4yNjM1NyAxMC4zODE1IDkuMzQ1NzcgMTAuMzU2OCA5LjQxNTg3IDEwLjMxMDVMMTIuNzE0NyA4LjEzMDI1QzEyLjkxMjEgNy45OTk3NSAxMi45NjY0IDcuNzMzODUgMTIuODM1OSA3LjUzNjRDMTIuODA0NyA3LjQ4OTIgMTIuNzY0NCA3LjQ0ODY1IDEyLjcxNzUgNy40MTcwNUw5LjQxODY3IDUuMTk4OTVDOS4yMjIyNyA1LjA2Njg1IDguOTU1OTcgNS4xMTkwNSA4LjgyMzg3IDUuMzE1NDVDOC43NzYzNyA1LjM4NjE1IDguNzUwOTcgNS40Njk0IDguNzUwOTcgNS41NTQ2WiIgZmlsbD0id2hpdGUiIHN0cm9rZS13aWR0aD0iMS41IiBzdHJva2UtbGluZWpvaW49InJvdW5kIiBzdHJva2U9IndoaXRlIi8+CjwvZz4KPC9zdmc+Cg==");
}
.footer-social li:has(img[src$="047da.svg"]) {
  --social-icon: url("data:image/svg+xml;base64,PHN2ZyBwcmVzZXJ2ZUFzcGVjdFJhdGlvPSJub25lIiBvdmVyZmxvdz0idmlzaWJsZSIgc3R5bGU9ImRpc3BsYXk6IGJsb2NrOyIgd2lkdGg9IjI0IiBoZWlnaHQ9IjI0IiB2aWV3Qm94PSIwIDAgMjQgMjQiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxnIGlkPSJ0aWt0b2siPgo8cGF0aCBpZD0iVmVjdG9yIiBkPSJNMTAuNjc5IDkuNTY5OTVDNy43MzQ3IDkuNDI3OSA1LjY4ODEgMTAuNDc3NyA0LjUzOTE5IDEyLjcxOTJDMi44MTU4NCAxNi4wODE1IDQuMjQwMTMgMjEuNTgzMyA5Ljk4OTQgMjEuNTgzM0MxNS43Mzg3IDIxLjU4MzMgMTUuOTA1IDE2LjAyNzcgMTUuOTA1IDE1LjQ0NTdDMTUuOTA1IDE1LjA1NzcgMTUuOTA1IDEyLjg4ODIgMTUuOTA1IDguOTM3M0MxNy4xMzQ3IDkuNzE2MTUgMTguMTcxNSAxMC4xODUgMTkuMDE1NCAxMC4zNDM5QzE5Ljg1OTMgMTAuNTAyNyAyMC4zOTU4IDEwLjU3MzEgMjAuNjI0OSAxMC41NTVWNy4zMTcxNUMxOS44NDQzIDcuMjIzMDUgMTkuMTY5MyA3LjA0MzY1IDE4LjU5OTggNi43NzkwNUMxNy43NDU2IDYuMzgyMTUgMTYuMDUxOCA1LjI4MDU1IDE2LjA1MTggMy42NjYwNEMxNi4wNTMgMy42NzM5MyAxNi4wNTMgMy4yNTc0NyAxNi4wNTE4IDIuNDE2NjNIMTIuNDkyOUMxMi40ODIzIDEwLjMyNDYgMTIuNDgyMyAxNC42Njc2IDEyLjQ5MjkgMTUuNDQ1N0MxMi41MDg4IDE2LjYxMjcgMTEuNjAzNCAxOC4yNDUzIDkuNzY3NzUgMTguMjQ1M0M3LjkzMjEgMTguMjQ1MyA3LjAyNjc1IDE2LjYxNCA3LjAyNjc1IDE1LjU2MTlDNy4wMjY3NSAxNC45MTc4IDcuMjQ4IDEzLjk4NDMgOC4xNjI1NSAxMy4yOTI5QzguNzA0OSAxMi44ODI5IDkuNDU3NjUgMTIuNzE5MiAxMC42NzkgMTIuNzE5MkMxMC42NzkgMTIuMzQxNCAxMC42NzkgMTEuMjkxNyAxMC42NzkgOS41Njk5NVoiIHN0cm9rZS13aWR0aD0iMS41IiBzdHJva2UtbGluZWpvaW49InJvdW5kIiBzdHJva2U9IndoaXRlIi8+CjwvZz4KPC9zdmc+Cg==");
}
.footer-social li:has(img[src$="twitter.svg"]) {
  --social-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M18.244 2.25h3.308l-7.227 8.26 8.502 11.24H16.17l-5.214-6.817L4.99 21.75H1.68l7.73-8.835L1.254 2.25H8.08l4.713 6.231zm-1.161 17.52h1.833L7.084 4.126H5.117z' fill='white'/%3E%3C/svg%3E");
}
.footer-social li:has(img[src$="whatsapp.svg"]) {
  --social-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M17.472 14.382c-.297-.149-1.758-.867-2.03-.967-.273-.099-.471-.148-.67.15-.197.297-.767.966-.94 1.164-.173.199-.347.223-.644.075-.297-.15-1.255-.463-2.39-1.475-.883-.788-1.48-1.761-1.653-2.059-.173-.297-.018-.458.13-.606.134-.133.298-.347.446-.52.149-.174.198-.298.298-.497.099-.198.05-.371-.025-.52-.075-.149-.669-1.612-.916-2.207-.242-.579-.487-.5-.669-.51-.173-.008-.371-.01-.57-.01-.198 0-.52.074-.792.372-.272.297-1.04 1.016-1.04 2.479 0 1.462 1.065 2.875 1.213 3.074.149.198 2.096 3.2 5.077 4.487.709.306 1.262.489 1.694.625.712.227 1.36.195 1.871.118.571-.085 1.758-.719 2.006-1.413.248-.694.248-1.289.173-1.413-.074-.124-.272-.198-.57-.347m-5.421 7.403h-.004a9.87 9.87 0 01-5.031-1.378l-.361-.214-3.741.982.998-3.648-.235-.374a9.86 9.86 0 01-1.51-5.26c.001-5.45 4.436-9.884 9.888-9.884 2.64 0 5.122 1.03 6.988 2.898a9.825 9.825 0 012.893 6.994c-.003 5.45-4.437 9.884-9.885 9.884m8.413-18.297A11.815 11.815 0 0012.05 0C5.495 0 .16 5.335.157 11.892c0 2.096.547 4.142 1.588 5.945L.057 24l6.305-1.654a11.882 11.882 0 005.683 1.448h.005c6.554 0 11.89-5.335 11.893-11.893a11.821 11.821 0 00-3.48-8.413Z' fill='white'/%3E%3C/svg%3E");
}
.footer-social li:has(img[src$="link.svg"]) {
  --social-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M3.9 12c0-1.71 1.39-3.1 3.1-3.1h4V7H7c-2.76 0-5 2.24-5 5s2.24 5 5 5h4v-1.9H7c-1.71 0-3.1-1.39-3.1-3.1zM8 13h8v-2H8v2zm9-6h-4v1.9h4c1.71 0 3.1 1.39 3.1 3.1s-1.39 3.1-3.1 3.1h-4V17h4c2.76 0 5-2.24 5-5s-2.24-5-5-5z' fill='white'/%3E%3C/svg%3E");
}

.footer-social li:is(:hover, :focus-within)::after {
  content: "";
  position: absolute;
  inset: 0;
  background: var(--yellow);
  mask: var(--social-icon) center / contain no-repeat;
  pointer-events: none;
}
.footer-social li:is(:hover, :focus-within) img {
  opacity: 0;
}

.card-actions {
  margin-top: 24px;
}

@media (max-width: 767.98px) {
  .card-actions {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    margin-top: 12px;
  }

  .card-actions .card-controls {
    flex: none;
    flex-wrap: nowrap;
    margin: 0 0 0 auto;
  }

  .js .footer-menu + .footer-menu {
    margin-top: 4px;
  }

  .js .footer-menu-toggle {
    margin-bottom: 0;
  }
}

.pill:is(.yellow, .ink, .white, .outline, .listing-outline):not(
    :disabled
  ):hover {
  text-decoration: none;
}
.pill.yellow:not(:disabled):hover {
  background: var(--yellow-hover);
  color: var(--ink);
}
.pill.ink:not(:disabled):hover {
  background: #293344;
  color: #fff;
}
.pill.white:hover,
.pill.listing-outline:hover {
  background: #e7f5f3;
  color: var(--ink);
}
.pill.outline:hover {
  border-color: var(--yellow);
  color: var(--yellow);
}
.filter button[aria-pressed="false"]:not(:disabled):hover,
.launch-sector-filters button[aria-pressed="false"]:hover {
  background: #e7f5f3;
}
.card-controls button:not(:disabled):hover,
.listing-pagination button:not(:disabled):hover,
.sector-motion-toggle:hover {
  border-color: var(--yellow);
  background: var(--yellow);
  color: var(--ink);
}
.launch-form-actions button[type="reset"]:not(:disabled):hover,
.menu-toggle:hover,
.drawer-close:hover,
.launch-close:hover {
  background: #e7f5f3;
  color: var(--ink);
}

.newsletter-consent {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-top: 8px;
}

.newsletter-consent input {
  accent-color: var(--yellow);
}

.hiup-form-status {
  margin-block: 12px 0;
  font-size: 14px;
}

.hiup-form-status.error {
  color: #dc3545;
  font-weight: 500;
}

.hiup-form-status.success {
  color: #28a745;
  font-weight: 500;
}

a[aria-haspopup="dialog"] {
  position: relative;
}

/* Keep the default headline phrases together on narrow screens. */
@media (max-width: 575.98px) {
  .hero h1,
  .closing h2 {
    font-size: clamp(1.5rem, 7.8vw, 2.25rem);
    text-wrap: balance;
  }
}
