/* Presale page additions (on top of style.css) */

/* ---------- Cover photo ---------- */
.cover {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  display: flex;
  align-items: flex-end;
  justify-content: center;
  min-height: clamp(420px, 76vh, 720px);
  /* shown if the photo can't load */
  background:
    radial-gradient(ellipse at 25% 100%, rgba(42, 44, 255, 0.55), transparent 60%),
    radial-gradient(ellipse at 75% 100%, rgba(255, 43, 209, 0.4), transparent 60%),
    #000;
}

.cover-img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 50% 30%;
  z-index: -2;
}

/* darkens the photo and fades it into the black page so the headline is readable */
.cover-shade {
  position: absolute;
  inset: 0;
  z-index: -1;
  background:
    linear-gradient(to bottom, rgba(0, 0, 0, 0.35) 0%, rgba(0, 0, 0, 0.1) 30%, rgba(0, 0, 0, 0.72) 62%, rgba(0, 0, 0, 0.9) 82%, #000 100%);
}

.cover-content {
  width: 100%;
  text-align: center;
  padding-top: 80px;
  padding-bottom: 56px;
}
.cover-content h1 {
  font-size: clamp(3.4rem, 9vw, 7.2rem);
  text-transform: uppercase;
  letter-spacing: 0.02em;
  text-shadow: 0 4px 40px rgba(0, 0, 0, 0.6);
}
.cover-content h1 em {
  font-style: normal;
  background: linear-gradient(90deg, #5b5dff, var(--magenta));
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}
.cover-content .eyebrow { color: #d6d6d6; }
.cover-content .lede { margin: 20px auto 0; color: #d0d0d0; }

@media (max-width: 640px) {
  .cover-content { padding-top: 60px; padding-bottom: 40px; }
}

.presale-form-section { padding: 10px 0 120px; }
.presale-wrap { max-width: 560px; }

/* Consent checkbox row */
.contact-form label.consent {
  display: flex;
  align-items: flex-start;
  gap: 14px;
  margin: 28px 0 0;
  color: var(--white);
  font-size: 0.92rem;
  letter-spacing: 0;
  line-height: 1.45;
  cursor: pointer;
}
.contact-form label.consent input[type="checkbox"] {
  appearance: none;
  -webkit-appearance: none;
  flex: 0 0 22px;
  width: 22px;
  height: 22px;
  margin: 1px 0 0;
  padding: 0;
  background: transparent;
  border: 1.5px solid var(--red);
  border-radius: 4px;
  cursor: pointer;
  position: relative;
}
.contact-form label.consent input[type="checkbox"]:checked {
  background: var(--red);
}
.contact-form label.consent input[type="checkbox"]:checked::after {
  content: "";
  position: absolute;
  left: 6px; top: 2px;
  width: 6px; height: 11px;
  border: solid var(--white);
  border-width: 0 2px 2px 0;
  transform: rotate(45deg);
}
.contact-form label.consent input[type="checkbox"]:focus-visible {
  outline: none;
  box-shadow: 0 0 0 3px rgba(255, 43, 209, 0.35);
}

/* Captcha spacing */
.captcha { margin-top: 26px; min-height: 0; }

.contact-form .btn { width: 100%; padding: 15px 26px; }

.fineprint {
  margin: 20px 0 0;
  font-size: 0.78rem;
  color: var(--muted);
  text-align: center;
}
.fineprint a { color: var(--white); text-underline-offset: 3px; }
.fineprint a:hover { color: var(--magenta); }

.site-footer .legal a { color: var(--muted); text-underline-offset: 3px; }
.site-footer .legal a:hover { color: var(--magenta); }
