.contact-page {
  --c: 1px;
  background: #f8f9ff;
}

.contact-main {
  margin-top: calc(-120 * var(--c));
  overflow-x: clip;
  background: #f8f9ff;
}

.contact-eyebrow,
.job-copy-mobile {
  display: none;
}

.contact-hero {
  position: relative;
  height: calc(1117.782 * var(--c));
  overflow: hidden;
  background: #002a4b;
}

.contact-hero-bg,
.contact-hero-overlay {
  position: absolute;
  inset: 0;
}

.contact-hero-bg {
  overflow: hidden;
}

.contact-hero-bg img {
  position: absolute;
  top: -35.88%;
  left: 0;
  width: 100%;
  height: 171.77%;
  max-width: none;
  object-fit: cover;
}

.contact-hero-overlay {
  background: rgba(0, 42, 75, 0.8);
  mix-blend-mode: multiply;
}

.contact-hero-shell {
  position: relative;
  z-index: 1;
  top: calc(180 * var(--c));
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: calc(36 * var(--c));
  align-items: center;
  width: min(100%, calc(1728 * var(--c)));
  height: calc(757.782 * var(--c));
  margin: 0 auto;
}

.contact-info {
  min-width: 0;
}

.contact-info h1 {
  color: #ffffff;
  font-size: calc(96 * var(--c));
  line-height: calc(105.6 * var(--c));
}

.contact-lead {
  max-width: calc(768 * var(--c));
  margin-top: calc(46.2 * var(--c));
  color: #d1e4ff;
  font-size: calc(27 * var(--c));
  line-height: calc(43.2 * var(--c));
}

.contact-methods {
  display: flex;
  flex-direction: column;
  gap: calc(48 * var(--c));
  margin-top: calc(46.2 * var(--c));
  padding-top: calc(25.8 * var(--c));
  font-style: normal;
}

.contact-method {
  display: flex;
  align-items: flex-start;
  gap: calc(36 * var(--c));
  width: 100%;
  min-width: 0;
  color: inherit;
}

.contact-method-icon {
  flex: 0 0 auto;
  width: calc(72 * var(--c));
  height: calc(72 * var(--c));
  overflow: visible;
}

.contact-method-icon img {
  width: calc(108.5 * var(--c));
  height: calc(108 * var(--c));
  max-width: none;
  margin-top: calc(-3 * var(--c));
  margin-left: calc(-18 * var(--c));
}

.contact-method-body {
  display: flex;
  min-width: 0;
  flex-direction: column;
}

.contact-method-label {
  color: #75d1ff;
  font-size: calc(21 * var(--c));
  font-weight: 600;
  letter-spacing: calc(2.1 * var(--c));
  line-height: calc(25.2 * var(--c));
  text-transform: uppercase;
}

.contact-method-value {
  margin-top: calc(6 * var(--c));
  color: #ffffff;
  font-size: calc(24 * var(--c));
  line-height: calc(36 * var(--c));
  white-space: nowrap;
}

.contact-form-panel {
  position: relative;
  min-width: 0;
  border: calc(1.5 * var(--c)) solid rgba(255, 255, 255, 0.1);
  border-radius: calc(36 * var(--c));
  background: rgba(248, 249, 255, 0.1);
  padding: calc(73.5 * var(--c)) calc(73.5 * var(--c)) calc(97.5 * var(--c));
  box-shadow: 0 calc(37.5 * var(--c)) calc(75 * var(--c)) calc(-18 * var(--c))
    rgba(0, 0, 0, 0.25);
  backdrop-filter: blur(calc(18 * var(--c)));
}

.contact-form-inner {
  width: 100%;
}

.contact-form-inner h2 {
  color: #ffffff;
  font-size: calc(48 * var(--c));
  font-weight: 600;
  line-height: calc(62.4 * var(--c));
}

.contact-form-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: calc(36 * var(--c));
  margin-top: calc(34.5 * var(--c));
}

.contact-field {
  min-width: 0;
}

.contact-field label {
  display: block;
  color: #d1e4ff;
  font-size: calc(21 * var(--c));
  font-weight: 600;
  letter-spacing: calc(1.05 * var(--c));
  line-height: calc(25.2 * var(--c));
}

.contact-field input,
.contact-field textarea {
  width: 100%;
  border: calc(1.5 * var(--c)) solid rgba(255, 255, 255, 0.2);
  border-radius: calc(12 * var(--c));
  background: rgba(255, 255, 255, 0.05);
  color: #ffffff;
  outline: none;
  transition:
    border-color 180ms ease,
    box-shadow 180ms ease,
    background 180ms ease;
}

.contact-field input {
  height: calc(74 * var(--c));
  margin-top: calc(13.2 * var(--c));
  padding: 0 calc(19.5 * var(--c));
  font-size: calc(24 * var(--c));
}

.contact-field textarea {
  display: block;
  height: calc(183 * var(--c));
  margin-top: calc(13.2 * var(--c));
  padding: calc(19.5 * var(--c));
  font-size: calc(24 * var(--c));
  line-height: calc(36 * var(--c));
  resize: none;
}

.contact-field input::placeholder,
.contact-field textarea::placeholder {
  color: #6b7280;
  opacity: 1;
}

.contact-field input:focus,
.contact-field textarea:focus {
  border-color: rgba(0, 193, 253, 0.82);
  background: rgba(255, 255, 255, 0.08);
  box-shadow: 0 0 0 calc(3 * var(--c)) rgba(0, 193, 253, 0.14);
}

.contact-field input[aria-invalid="true"],
.contact-field textarea[aria-invalid="true"] {
  border-color: #ff5b76;
  background: rgba(255, 91, 118, 0.08);
  box-shadow: 0 0 0 calc(3 * var(--c)) rgba(255, 91, 118, 0.2);
}

.contact-field .fw-field-error {
  margin-top: calc(10 * var(--c));
  color: #ffdce3;
  font-size: calc(16 * var(--c));
  font-weight: 700;
  line-height: calc(23 * var(--c));
}

.contact-field-message {
  margin-top: calc(34.5 * var(--c));
}

.contact-submit {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: calc(85.5 * var(--c));
  margin-top: calc(34.5 * var(--c));
  border: 0;
  border-radius: calc(18 * var(--c));
  background: #00c1fd;
  color: #004b65;
  padding: 0 calc(24 * var(--c));
  font-size: calc(24 * var(--c));
  font-weight: 700;
  line-height: calc(36 * var(--c));
  box-shadow:
    0 calc(30 * var(--c)) calc(37.5 * var(--c)) calc(-7.5 * var(--c))
      rgba(0, 0, 0, 0.1),
    0 calc(12 * var(--c)) calc(15 * var(--c)) calc(-9 * var(--c))
      rgba(0, 0, 0, 0.1);
}

.contact-careers {
  scroll-margin-top: calc(144 * var(--c));
  background: #f8f9ff;
  padding: calc(180 * var(--c)) var(--gutter);
}

.contact-careers-shell {
  width: min(100%, calc(1728 * var(--c)));
  margin: 0 auto;
}

.contact-section-heading {
  max-width: calc(1008 * var(--c));
}

.contact-section-heading p {
  color: #006688;
  font-size: calc(21 * var(--c));
  font-weight: 600;
  letter-spacing: calc(2.1 * var(--c));
  line-height: calc(25.2 * var(--c));
  text-transform: uppercase;
}

.contact-section-heading h2 {
  margin-top: calc(24 * var(--c));
  color: #002a4b;
  font-size: calc(72 * var(--c));
  line-height: calc(86.4 * var(--c));
}

.contact-jobs {
  display: flex;
  flex-direction: column;
  gap: calc(24 * var(--c));
  margin-top: calc(96 * var(--c));
}

.contact-job-card {
  min-width: 0;
  border: calc(1.5 * var(--c)) solid rgba(195, 199, 207, 0.3);
  border-radius: calc(24 * var(--c));
  background: #ffffff;
  overflow: hidden;
  transition:
    border-color 180ms ease,
    box-shadow 180ms ease;
}

.contact-job-card[open] {
  border-color: rgba(0, 102, 136, 0.2);
  box-shadow: 0 calc(24 * var(--c)) calc(54 * var(--c)) rgba(0, 42, 75, 0.06);
}

.contact-job-summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  min-width: 0;
  gap: calc(48 * var(--c));
  padding: calc(49.5 * var(--c));
  cursor: pointer;
  list-style: none;
}

.contact-job-summary::-webkit-details-marker {
  display: none;
}

.contact-job-summary::marker {
  content: "";
}

.contact-job-summary:focus-visible {
  outline: calc(3 * var(--c)) solid rgba(0, 193, 253, 0.4);
  outline-offset: calc(-9 * var(--c));
}

.contact-job-copy {
  display: flex;
  flex-direction: column;
  gap: calc(6 * var(--c));
  min-width: 0;
}

.contact-job-title {
  color: #002a4b;
  font-family: var(--font-heading);
  font-size: calc(48 * var(--c));
  font-weight: 600;
  line-height: calc(62.4 * var(--c));
  text-transform: uppercase;
  white-space: nowrap;
}

.contact-job-intro {
  display: block;
  min-width: 0;
  color: #42474e;
  font-size: calc(24 * var(--c));
  line-height: calc(36 * var(--c));
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.contact-job-arrow {
  flex: 0 0 auto;
  width: calc(22 * var(--c));
  height: calc(37.367 * var(--c));
  max-width: none;
  transform: rotate(90deg);
  transition: transform 180ms ease;
}

.contact-job-card[open] .contact-job-arrow {
  transform: rotate(-90deg);
}

.contact-job-card[open] .contact-job-intro {
  display: none;
}

.contact-job-detail {
  margin: 0 calc(49.5 * var(--c));
  border-top: calc(1.5 * var(--c)) solid rgba(195, 199, 207, 0.3);
  padding: calc(34.5 * var(--c)) 0 calc(49.5 * var(--c));
  color: #42474e;
  font-size: calc(21 * var(--c));
  line-height: calc(34 * var(--c));
}

.contact-job-detail h3 {
  color: #002a4b;
  font-size: calc(27 * var(--c));
  font-weight: 600;
  line-height: calc(36 * var(--c));
  text-transform: uppercase;
}

.contact-job-detail h3:not(:first-child) {
  margin-top: calc(30 * var(--c));
}

.contact-job-detail ol {
  margin: calc(16 * var(--c)) 0 0;
  padding-left: calc(32 * var(--c));
}

.contact-job-detail li + li {
  margin-top: calc(8 * var(--c));
}

@media (min-width: 1101px) and (max-width: 1919.98px) {
  .contact-page {
    --c: var(--d);
  }
}

@media (max-width: 1100px) {
  .contact-page {
    --c: var(--m);
  }

  .contact-main {
    margin-top: calc(-30.769 * var(--m));
  }

  .contact-hero {
    height: auto;
    overflow: hidden;
    background: #ffffff;
  }

  .contact-hero-bg,
  .contact-hero-overlay {
    inset: 0 auto auto 0;
    width: 100%;
    height: calc(1098 * var(--m));
  }

  .contact-hero-bg img {
    top: calc(-2 * var(--m));
    left: 0;
    width: calc(1684 * var(--m));
    height: calc(1102 * var(--m));
    object-fit: cover;
  }

  .contact-hero-overlay {
    background: linear-gradient(
      0deg,
      rgba(0, 42, 75, 0.9) 0%,
      rgba(0, 42, 75, 0.4) 50%,
      rgba(0, 42, 75, 0) 100%
    );
    mix-blend-mode: normal;
  }

  .contact-hero-shell {
    top: auto;
    display: flex;
    flex-direction: column;
    gap: 0;
    align-items: stretch;
    width: min(100%, calc(673.077 * var(--m)));
    height: auto;
    padding-top: calc(127.807 * var(--m));
  }

  .contact-info {
    display: flex;
    flex-direction: column;
    gap: calc(15.385 * var(--m));
  }

  .contact-eyebrow {
    display: block;
    color: #00c1fd;
    font-size: calc(30.769 * var(--m));
    font-weight: 400;
    letter-spacing: calc(3.077 * var(--m));
    line-height: calc(46.154 * var(--m));
    text-transform: uppercase;
  }

  .contact-info h1 {
    font-size: calc(53.846 * var(--m));
    font-weight: 600;
    line-height: calc(70 * var(--m));
  }

  .contact-lead {
    width: calc(674 * var(--m));
    max-width: 100%;
    margin-top: 0;
    font-size: calc(27 * var(--m));
    line-height: calc(43.2 * var(--m));
  }

  .contact-methods {
    gap: calc(30.769 * var(--m));
    margin-top: 0;
    padding-top: calc(46.154 * var(--m));
  }

  .contact-method {
    align-items: center;
    gap: calc(30.769 * var(--m));
    border: calc(1.923 * var(--m)) solid rgba(255, 255, 255, 0.3);
    border-radius: calc(23.077 * var(--m));
    background: rgba(255, 255, 255, 0.35);
    padding: calc(32.692 * var(--m));
    backdrop-filter: blur(calc(11.538 * var(--m)));
  }

  .contact-method-icon {
    width: calc(76.923 * var(--m));
    height: calc(76.923 * var(--m));
  }

  .contact-method-icon img {
    width: calc(115.879 * var(--m));
    height: calc(115.345 * var(--m));
    margin-top: calc(-3.205 * var(--m));
    margin-left: calc(-19.231 * var(--m));
  }

  .contact-method-label {
    color: rgba(255, 255, 255, 0.7);
    font-size: calc(23.077 * var(--m));
    font-weight: 400;
    letter-spacing: 0;
    line-height: calc(30.769 * var(--m));
  }

  .contact-method-value {
    margin-top: 0;
    font-size: calc(30.769 * var(--m));
    font-weight: 600;
    line-height: calc(46.154 * var(--m));
    white-space: normal;
  }

  .contact-method[href^="mailto"] .contact-method-value,
  .contact-method[href^="tel"] .contact-method-value {
    white-space: nowrap;
  }

  .contact-form-panel {
    width: 100vw;
    margin-top: calc(92.308 * var(--m));
    margin-left: calc((100% - 100vw) / 2);
    border: 0;
    border-radius: 0;
    background: #ffffff;
    padding: calc(123.077 * var(--m)) var(--gutter) calc(136.346 * var(--m));
    box-shadow: none;
    backdrop-filter: none;
  }

  .contact-form-inner {
    width: min(100%, calc(673.077 * var(--m)));
    margin: 0 auto;
  }

  .contact-form-inner h2 {
    color: #002a4b;
    font-size: calc(53.846 * var(--m));
    font-weight: 600;
    line-height: calc(70 * var(--m));
    margin-bottom: calc(76.923 * var(--m));
  }

  .contact-form-inner h2::after {
    display: block;
    width: calc(92.308 * var(--m));
    height: calc(7.692 * var(--m));
    margin-top: calc(15.385 * var(--m));
    border-radius: 999px;
    background: #00c1fd;
    content: "";
  }

  .contact-form-grid {
    display: flex;
    flex-direction: column;
    gap: calc(46.154 * var(--m));
    margin-top: 0;
  }

  .contact-field label {
    padding-left: calc(7.692 * var(--m));
    color: #42474e;
    font-size: calc(26.923 * var(--m));
    letter-spacing: 0;
    line-height: calc(38.462 * var(--m));
  }

  .contact-field input,
  .contact-field textarea {
    border: calc(1.923 * var(--m)) solid #c3c7cf;
    border-radius: calc(23.077 * var(--m));
    background: #ffffff;
    color: #002a4b;
  }

  .contact-field input[aria-invalid="true"],
  .contact-field textarea[aria-invalid="true"] {
    border-color: #d92d47;
    background: #fff8fa;
    box-shadow: 0 0 0 calc(3.846 * var(--m)) rgba(217, 45, 71, 0.14);
  }

  .contact-field input {
    height: calc(94.692 * var(--m));
    margin-top: calc(15.385 * var(--m));
    padding: 0 calc(32.692 * var(--m));
    font-size: calc(30.769 * var(--m));
  }

  .contact-field textarea {
    height: calc(235.462 * var(--m));
    margin-top: calc(15.385 * var(--m));
    padding: calc(25 * var(--m)) calc(32.692 * var(--m));
    font-size: calc(30.769 * var(--m));
    line-height: calc(46.154 * var(--m));
  }

  .contact-field-message {
    margin-top: calc(46.154 * var(--m));
  }

  .contact-field .fw-field-error {
    margin-top: calc(13.462 * var(--m));
    color: #b42318;
    font-size: calc(23.077 * var(--m));
    line-height: calc(32.692 * var(--m));
  }

  .contact-submit {
    height: calc(108.538 * var(--m));
    margin-top: calc(46.154 * var(--m));
    border-radius: calc(23.077 * var(--m));
    padding: calc(30.769 * var(--m));
    font-size: calc(30.769 * var(--m));
    font-weight: 600;
    line-height: calc(46.154 * var(--m));
    box-shadow:
      0 calc(19.231 * var(--m)) calc(28.846 * var(--m)) calc(-5.769 * var(--m))
        rgba(0, 0, 0, 0.1),
      0 calc(7.692 * var(--m)) calc(11.538 * var(--m)) calc(-7.692 * var(--m))
        rgba(0, 0, 0, 0.1);
  }

  .contact-careers {
    scroll-margin-top: calc(184.615 * var(--m));
    padding: calc(115.231 * var(--m)) var(--gutter) calc(114.616 * var(--m));
  }

  .contact-careers-shell {
    width: min(100%, calc(673.077 * var(--m)));
  }

  .contact-section-heading p {
    font-size: calc(30.769 * var(--m));
    font-weight: 400;
    letter-spacing: calc(3.077 * var(--m));
    line-height: calc(46.154 * var(--m));
  }

  .contact-section-heading h2 {
    margin-top: calc(30.769 * var(--m));
    font-size: calc(53.846 * var(--m));
    font-weight: 600;
    line-height: calc(70 * var(--m));
  }

  .contact-jobs {
    gap: calc(30.769 * var(--m));
    margin-top: calc(39.231 * var(--m));
    padding-top: calc(30.769 * var(--m));
  }

  .contact-job-card {
    border: 0;
    border-radius: calc(30.769 * var(--m));
    box-shadow: 0 calc(1.923 * var(--m)) calc(1.923 * var(--m))
      rgba(0, 0, 0, 0.05);
  }

  .contact-job-card[open] {
    box-shadow:
      0 calc(1.923 * var(--m)) calc(1.923 * var(--m)) rgba(0, 0, 0, 0.05),
      0 calc(19.231 * var(--m)) calc(38.462 * var(--m)) rgba(0, 42, 75, 0.06);
  }

  .contact-job-summary {
    gap: calc(24 * var(--m));
    padding: calc(46.154 * var(--m));
  }

  .contact-job-summary:focus-visible {
    outline-width: calc(3.846 * var(--m));
    outline-offset: calc(-11.538 * var(--m));
  }

  .contact-job-copy {
    gap: calc(5.769 * var(--m));
  }

  .contact-job-title {
    font-size: calc(34.615 * var(--m));
    line-height: calc(51.923 * var(--m));
    text-transform: none;
    white-space: normal;
  }

  .contact-job-card:nth-child(3) .contact-job-title {
    max-width: calc(369 * var(--m));
  }

  .contact-job-intro {
    font-size: calc(24 * var(--m));
    font-weight: 600;
    letter-spacing: calc(1.346 * var(--m));
    line-height: calc(32.308 * var(--m));
    white-space: normal;
  }

  .job-copy-pc {
    display: none;
  }

  .job-copy-mobile {
    display: inline;
  }

  .contact-job-arrow {
    width: calc(11.775 * var(--m));
    height: calc(20 * var(--m));
  }

  .contact-job-detail {
    margin: 0 calc(46.154 * var(--m));
    border-top-width: calc(1.923 * var(--m));
    padding: calc(34.615 * var(--m)) 0 calc(46.154 * var(--m));
    font-size: calc(23.077 * var(--m));
    line-height: calc(34.615 * var(--m));
  }

  .contact-job-detail h3 {
    font-size: calc(26.923 * var(--m));
    line-height: calc(38.462 * var(--m));
    text-transform: none;
  }

  .contact-job-detail h3:not(:first-child) {
    margin-top: calc(34.615 * var(--m));
  }

  .contact-job-detail ol {
    margin-top: calc(15.385 * var(--m));
    padding-left: calc(30.769 * var(--m));
  }

  .contact-job-detail li + li {
    margin-top: calc(11.538 * var(--m));
  }
}
