:root {
  --ink: #07162b;
  --ink-soft: #0b2340;
  --paper: #f0ede5;
  --muted: #9ba9b8;
  --gold: #d8ae61;
  --gold-light: #f0d99e;
  --line: rgba(240, 237, 229, 0.15);
}

.version-switcher { background: rgba(7, 22, 43, .92); }
.brand-insignia { width: 34px; height: 34px; margin: -7.5px; object-fit: contain; mix-blend-mode: screen; }
.hero-tagline { font-weight: 300; }
.hero {
  background:
    radial-gradient(circle at 76% 48%, rgba(87, 123, 177, .2), transparent 29%),
    radial-gradient(circle at 75% 48%, rgba(216, 174, 97, .11), transparent 17%),
    linear-gradient(120deg, #07162b, #0b2442 62%, #071326);
}
.distinction { background: #0b2340; }
.discernment { background: #07162b; }
.closing { background: #07162b; }
.journey { background: #dfe2e5; color: #101c30; }
.step-dot { border-color: #dfe2e5; }
.pathway::before { background: rgba(16, 28, 48, .24); }
.path-step p, .journey-intro > p { color: #5d6570; }
.future { background: #f0ede5; color: #101c30; }
.future-card:hover { background: #e2e7ec; }
.threshold { color: #101c30; }
.threshold h2 em { color: #9a7136; }
.body-copy .definition { color: #101c30; }
.companions { background: #c0934f; color: #09172a; }
.companions .eyebrow { color: #21304a; }
.companion-orbit { border-color: rgba(7, 22, 43, .12); }
.companion-orbit::before, .companion-orbit::after { border-color: rgba(7, 22, 43, .1); }
.companion-orbit i { background: #102744; }
.pathway.pathway-six { grid-template-columns: repeat(6, 1fr); }
.pathway.pathway-six .path-step { padding-left: 16px; padding-right: 16px; }
.pathway.pathway-six .path-step h3 { font-size: 1.35rem; }
.future-card:last-child { grid-column: span 2; }
.closing { min-height: 1180px; height: auto; }
.closing-invitation { display: flex; flex-direction: column; align-items: center; gap: 14px; width: min(680px, 100%); margin-top: 38px; }
.closing-invitation p { margin: 0; color: rgba(240, 237, 229, .5); font-size: .72rem; letter-spacing: .08em; text-transform: none; }
.closing-invitation .companion-question { margin-bottom: 8px; color: rgba(240, 237, 229, .78); font-family: var(--serif); font-size: 1.15rem; letter-spacing: 0; }
.closing-invitation .email-note { letter-spacing: .03em; }
.closing-invitation p a { border-bottom: 1px solid rgba(216, 174, 97, .38); }
.closing .companion-mail { color: #07162b; }
.contact-form { display: grid; gap: 18px; width: 100%; margin-top: 12px; padding: 34px; border: 1px solid rgba(240, 237, 229, .18); background: rgba(11, 35, 64, .42); text-align: left; }
.contact-form-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; }
.contact-form label { display: grid; gap: 8px; }
.contact-form label > span { color: rgba(240, 237, 229, .62); font-size: .72rem; letter-spacing: .08em; }
.contact-form input, .contact-form select, .contact-form textarea { width: 100%; border: 1px solid rgba(240, 237, 229, .2); border-radius: 0; background: rgba(7, 22, 43, .78); color: var(--paper); font: 400 1rem/1.4 var(--sans); outline: none; }
.contact-form input, .contact-form select { min-height: 50px; padding: 0 14px; }
.contact-form textarea { min-height: 130px; padding: 13px 14px; resize: vertical; }
.contact-form input:focus, .contact-form select:focus, .contact-form textarea:focus { border-color: var(--gold); box-shadow: 0 0 0 1px var(--gold); }
.contact-form select { color-scheme: dark; }
.contact-form .contact-submit { justify-self: start; border: 0; cursor: pointer; }
.form-honey { position: absolute !important; left: -9999px !important; width: 1px !important; height: 1px !important; opacity: 0 !important; }

.thanks-page { min-height: 100svh; display: grid; place-items: center; padding: 50px 24px; background: radial-gradient(circle at 50% 42%, rgba(216, 174, 97, .1), transparent 24%), #07162b; color: var(--paper); text-align: center; }
.thanks-inner { width: min(680px, 100%); }
.thanks-inner .closing-pulse { display: block; margin: 0 auto 52px; }
.thanks-inner h1 { margin-bottom: 24px; font-size: clamp(3.6rem, 8vw, 7.5rem); }
.thanks-inner > p { width: min(540px, 100%); margin: 0 auto 36px; color: rgba(240, 237, 229, .65); font-family: var(--serif); font-size: 1.25rem; }

@media (max-width: 600px) {
  .closing { min-height: 1120px; padding-left: 18px; padding-right: 18px; }
  .contact-form { padding: 24px 18px; }
  .contact-form-grid { grid-template-columns: 1fr; }
  .contact-form .contact-submit { width: 100%; }
}

@media (max-width: 950px) {
  .pathway.pathway-six { grid-template-columns: 1fr; }
  .future-card:last-child { grid-column: auto; }
}
