thanks.astro
1---
2// Landing point after joining the waitlist: sovrnd redirects here from the
3// Atmosphere-account sign-in (adding ?email=0 when the user withheld their
4// email) and from the no-JavaScript email form.
5import Layout from '../../layouts/Layout.astro';
6import Masthead from '../../components/Masthead.astro';
7import Footer from '../../components/Footer.astro';
8---
9
10<Layout title="You’re on the list — sovrn" description="Thanks for joining the sovrn waitlist." noindex>
11 <div class="page">
12 <Masthead compact />
13
14 <main id="main" class="thanks">
15 <section class="thanks-field" aria-labelledby="thanks-title">
16 <h1 id="thanks-title" class="thanks-title">You’re on the list.</h1>
17 <p class="thanks-sub">
18 Thanks for joining the sovrn waitlist. We’ll be in touch when we open to beta testers.
19 </p>
20 <p class="thanks-note" data-no-email hidden>
21 You didn’t share an email address, so we saved only your Atmosphere handle.
22 </p>
23 <p class="thanks-back"><a href="/">Back to the homepage</a></p>
24 </section>
25 <div class="thanks-column on-dark" aria-hidden="true">
26 <img class="thanks-mark" src="/plates/speedmark.png" alt="" width="1032" height="528" />
27 </div>
28 </main>
29
30 <Footer compact />
31 </div>
32</Layout>
33
34<script>
35 if (new URLSearchParams(location.search).get('email') === '0') {
36 document.querySelector<HTMLElement>('[data-no-email]')?.removeAttribute('hidden');
37 }
38</script>
39
40<style>
41 /* Short pages: the footer sits on the bottom of the viewport and the
42 gold field grows to meet it. */
43 .page {
44 display: flex;
45 flex-direction: column;
46 min-height: 100svh;
47 }
48
49 .thanks {
50 flex: 1 0 auto;
51 display: grid;
52 grid-template-columns: 1fr 24.6%;
53 min-height: clamp(28rem, 60svh, 44rem);
54 }
55
56 .thanks-field {
57 display: grid;
58 align-content: center;
59 gap: 1.75rem;
60 padding: clamp(3.5rem, 8vw, 7rem) var(--gutter);
61 background: var(--gold);
62 color: var(--ptt);
63 }
64
65 .thanks-title {
66 font-size: clamp(2.75rem, 7.5vw, 7.25rem);
67 font-weight: 850;
68 line-height: 0.93;
69 letter-spacing: -0.04em;
70 }
71
72 .thanks-sub {
73 max-width: 32ch;
74 font-size: clamp(1.25rem, 2.2vw, 2rem);
75 font-weight: 700;
76 line-height: 1.15;
77 letter-spacing: -0.03em;
78 }
79
80 .thanks-note {
81 max-width: 44ch;
82 color: var(--ptt);
83 font-size: 1.0625rem;
84 font-weight: 600;
85 }
86
87 .thanks-back a {
88 color: var(--ptt);
89 font-weight: 750;
90 text-decoration-thickness: 2px;
91 }
92
93 .thanks-column {
94 position: relative;
95 background: var(--ptt);
96 }
97
98 .thanks-mark {
99 position: absolute;
100 left: 3.7%;
101 top: 40%;
102 width: 91%;
103 height: auto;
104 mix-blend-mode: lighten;
105 }
106
107 @media (max-width: 1100px) {
108 .thanks {
109 grid-template-columns: 1fr;
110 }
111 .thanks-column {
112 display: none;
113 }
114 }
115</style>