/* The application form page. Field markup is built by application-form.js. */

.ig-app { max-width: 880px; margin: 0 auto; padding: 40px 16px 72px; font: 400 16px/1.5 Nunito, sans-serif; color: #233746; }
.ig-app h1 { margin: 0 0 12px; font: 700 36px/1.2 Nunito, sans-serif; color: #233746; }
.ig-app__intro { margin: 0 0 28px; }

.ig-app__section { margin: 0 0 24px; padding: 24px; border: 1px solid #e3eef0; border-radius: 8px; background: #fff; min-width: 0; }
.ig-app__section[hidden], .ig-app__group[hidden], .ig-app__field[hidden] { display: none; }
.ig-app__section h2 { margin: 0 0 18px; font: 700 20px/1.3 Nunito, sans-serif; color: #233746; }
.ig-app__group + .ig-app__group { margin-top: 24px; padding-top: 24px; border-top: 1px solid #e3eef0; }
.ig-app__group h3 { margin: 0 0 14px; font: 700 16px/1.3 Nunito, sans-serif; color: #233746; }
.ig-app__grid { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.ig-app__grid > .ig-app__wide { grid-column: 1 / -1; }

.ig-app__field label { display: block; margin-bottom: 6px; font-size: 14px; font-weight: 700; color: #233746; }
.ig-app__optional { font-weight: 400; color: #5b6b78; }
.ig-app__field input,
.ig-app__field select {
  display: block; width: 100%; height: 44px; box-sizing: border-box; margin: 0; padding: 10px;
  font: 400 16px/1.3 Nunito, sans-serif; color: #000; background-color: #f2f2f2; border: 0; border-radius: 4px; outline: none;
}
.ig-app__field select {
  appearance: none; -webkit-appearance: none; padding-right: 32px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' fill='none' stroke='%23233746' stroke-width='2'%3E%3Cpath d='M1 1.5l5 5 5-5'/%3E%3C/svg%3E");
  background-repeat: no-repeat; background-position: right 12px center;
}
.ig-app__field input:focus, .ig-app__field select:focus { box-shadow: 0 0 0 2px #1fcfcb; }
.ig-app__field ::placeholder { color: #6b6b6b; opacity: 1; }

.ig-app__ack p { margin: 0 0 12px; font-size: 15px; }
.ig-app__ack a { color: #0d8f8c; }
.ig-app__agree { display: grid; grid-template-columns: 20px 1fr; gap: 10px; align-items: start; margin-top: 16px; font-weight: 700; font-size: 15px; }
.ig-app__agree input { width: 20px; height: 20px; margin: 2px 0 0; accent-color: #1fcfcb; }

.ig-app__submit {
  min-width: 180px; height: 48px; padding: 0 28px; border: 0; border-radius: 4px; cursor: pointer;
  font: 700 16px/1 Nunito, sans-serif; color: #fff; background-color: #1fcfcb;
}
.ig-app__submit:hover, .ig-app__submit:focus-visible { background-color: #233746; }
.ig-app__submit:disabled { opacity: .6; cursor: default; }

.ig-app__trap { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }

.ig-app__message:empty { display: none; }
.ig-app__message { margin: 16px 0 0; padding: 12px 14px; border-radius: 4px; font-size: 15px; }
.ig-app__message.is-error { background: #fdeaea; color: #8a1f1f; }
.ig-app__done { padding: 24px; border-radius: 8px; background: #e7f6ec; color: #17603a; font-size: 17px; }

@media (max-width: 640px) {
  .ig-app { padding-top: 24px; }
  .ig-app h1 { font-size: 28px; }
  .ig-app__section { padding: 16px; }
  .ig-app__grid { grid-template-columns: 1fr; }
}
