/* Inceptor landing page. Values carried over from the old Divi layout. */

*, *::before, *::after { box-sizing: border-box; }

html { -webkit-text-size-adjust: 100%; }

body {
  margin: 0;
  background: #fff;
  color: #666;
  font: 14px/1.7 "Open Sans", Arial, sans-serif;
  -webkit-font-smoothing: antialiased;
}

img { max-width: 100%; height: auto; display: block; }

/* Header */
.site-header {
  display: flex;
  align-items: stretch;
  justify-content: space-between;
  border-bottom: 1px solid #383838;
  background: #fff;
}
.logo { display: block; padding: 21px 0 8px 20px; }
.logo img { width: 200px; }
.login {
  display: flex;
  align-items: center;
  padding: 0 53px;
  background: #383838;
  color: #fff;
  font: 500 14px/1 Poppins, Arial, sans-serif;
  text-decoration: none;
  transition: background-color .3s, color .3s;
}
.login:hover, .login:focus-visible { background: #c3c3c3; color: #000; }

/* Hero */
.hero {
  position: relative;
  background: #2b59ff;
  padding: 7vh 0 calc(7vh + 100px);
}
.row {
  display: flex;
  gap: 2%;
  width: 90%;
  max-width: 1270px;
  margin: 0 auto;
  padding: 39px 0;
}
.col { flex: 1 1 0; min-width: 0; }
.col-image img { margin: 0 auto; }

h1 {
  margin: 0 0 .7em;
  color: #fff;
  font: 700 70px/1.1 "Kumbh Sans", Arial, sans-serif;
  letter-spacing: -1px;
}
.copy {
  max-width: 546px;
  color: rgba(255, 255, 255, .8);
  font: 18px/1.8 Sen, Arial, sans-serif;
}
.copy p { margin: 0 0 1em; }
.highlight { color: #ff0; font-weight: 700; }

.divider {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 100px;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1280 140' preserveAspectRatio='none'%3E%3Cg fill='%23fff'%3E%3Cpath d='M0 47.44L170 0l626.48 94.89L1110 87.11l170-39.67V140H0V47.44z' fill-opacity='.5'/%3E%3Cpath d='M0 90.72l140-28.28 315.52 24.14L796.48 65.8 1140 104.89l140-14.17V140H0V90.72z'/%3E%3C/g%3E%3C/svg%3E") 0 0 / 100% 100px no-repeat;
}

/* Waiting-list form */
.waitlist { padding-right: 21px; margin-top: 24px; }
.field { margin: 0 0 16px; padding: 0; border: 0; min-width: 0; }
.waitlist label, .waitlist legend {
  display: block;
  padding: 0;
  margin: 0 0 8px;
  color: #fff;
  font-size: 16px;
  font-weight: 700;
}
.waitlist label.sub { margin: 4px 0 0; font-size: 15px; font-weight: 400; }
.waitlist input {
  width: 100%;
  padding: 8px;
  border: 1px solid #686868;
  border-radius: 0;
  background: #fff;
  color: #112337;
  font: inherit;
  font-size: 15px;
}
.waitlist input:focus { outline: 3px solid #ff0; outline-offset: 0; }
.waitlist input[aria-invalid="true"] { border-color: #ec0000; box-shadow: 0 0 0 2px #ec0000; }
.name-row { display: flex; gap: 2%; }
.name-row > span { flex: 1 1 0; }
.field-error, .form-error {
  margin: 6px 0 0;
  color: #fff;
  font-size: 14px;
  font-weight: 700;
}
.field-error::before, .form-error::before { content: "\26A0  "; color: #ff0; }
.form-error { margin: 0 0 16px; }
.waitlist button {
  margin-top: 15px;
  padding: 11px 40px;
  border: 0;
  background: #ec0000;
  color: #fff;
  font: 800 14px/1.7 "Open Sans", Arial, sans-serif;
  text-transform: uppercase;
  cursor: pointer;
}
.waitlist button:hover { background: #c40000; }
.waitlist button:focus-visible { outline: 3px solid #ff0; outline-offset: 2px; }
.confirmation {
  margin: 0;
  color: #fff;
  font: 700 18px/1.6 Sen, Arial, sans-serif;
}
.hp { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }

/* Numbers section */
.numbers {
  padding: 20px 5% 50px;
  text-align: center;
}
.numbers h2 {
  max-width: 700px;
  margin: 0 auto;
  color: #000b33;
  font: 700 44px/1.2 "Kumbh Sans", Arial, sans-serif;
  letter-spacing: -1px;
}
.numbers p {
  max-width: 510px;
  margin: 1em auto 0;
  color: rgba(0, 11, 51, .8);
  font: 18px/1.8 Sen, Arial, sans-serif;
}

.site-footer { background: #020202; height: 81px; }

/* Entrance animations, like the old Divi slide-ins */
@media (prefers-reduced-motion: no-preference) {
  .col-text { animation: slide-left 1.5s ease both; }
  .col-image img { animation: slide-down 1.5s ease .75s both; }
  @keyframes slide-left { from { opacity: 0; transform: translateX(-10%); } }
  @keyframes slide-down { from { opacity: 0; transform: translateY(-10%); } }
}

/* Tablet and phone */
@media (max-width: 980px) {
  .login { display: none; }
  .hero { padding: 40px 0 100px; }
  .row { flex-direction: column; }
  .col-text { padding-top: 30px; }
  .col-image img { max-width: 275px; margin-top: 30px; }
  .waitlist { padding-right: 0; }
}
@media (max-width: 767px) {
  .hero { padding-top: 35px; }
  h1 { font-size: 35px; }
  .col-image img { max-width: 250px; }
  .numbers h2 { font-size: 30px; }
  .name-row { flex-direction: column; gap: 12px; }
}
