:root{--font-heading:"Cormorant Garamond", serif;--font-body:"Geist", sans-serif;--color-plum:#2f2644;--color-off-white:#f7f6f5;--color-lavender:#a394c7}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px}body{font-family:var(--font-body);background:var(--color-off-white);color:var(--color-plum);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:1.7}.container{flex-direction:column;justify-content:center;max-width:40rem;min-height:100dvh;margin:0 auto;padding:2rem 1.5rem;display:flex}h1,h2,h3{font-family:var(--font-heading);font-weight:600;line-height:1.2}h1{margin-bottom:.75rem;font-size:2.5rem}h2{margin-bottom:.5rem;font-size:1.75rem}p{margin-bottom:1rem}a{color:var(--color-lavender);text-underline-offset:.15em;text-decoration-thickness:1px;transition:color .15s}a:hover{color:var(--color-plum)}.brand{text-align:center;margin-bottom:2rem}.brand h1{letter-spacing:-.02em;font-size:3rem;font-weight:700}.brand .tagline{color:var(--color-lavender);margin-bottom:2rem;font-size:1.125rem}.cta{background:var(--color-plum);color:var(--color-off-white);font-family:var(--font-body);letter-spacing:.01em;border-radius:.375rem;padding:.875rem 2.25rem;font-size:1rem;font-weight:500;text-decoration:none;transition:background .15s;display:inline-block}.cta:hover{background:var(--color-lavender);color:var(--color-off-white)}.message-card{text-align:center;background:#fff;border:1px solid #a394c733;border-radius:.75rem;padding:2rem}.message-card h2{margin-bottom:1rem}.message-card p:last-child{margin-bottom:0}.loading{text-align:center;padding:3rem 0}.loading-dot{background:var(--color-lavender);border-radius:50%;width:.5rem;height:.5rem;margin:0 .25rem;animation:1.4s ease-in-out infinite pulse;display:inline-block}.loading-dot:nth-child(2){animation-delay:.2s}.loading-dot:nth-child(3){animation-delay:.4s}@keyframes pulse{0%,80%,to{opacity:.3;transform:scale(.8)}40%{opacity:1;transform:scale(1)}}.not-found{text-align:center}.not-found h1{color:var(--color-lavender);margin-bottom:.25rem;font-size:4rem}.not-found p{margin-bottom:2rem;font-size:1.125rem}
