.coming-soon-page { min-height: 100vh; display: flex; flex-direction: column; }
.coming-soon-shell { width: min(calc(100% - 3rem), 680px); margin: auto; padding: clamp(3rem, 7vw, 6rem) 0; text-align: center; }
.coming-soon-intro h1 { margin: 1.5rem 0; font-family: var(--display); font-size: clamp(3rem, 5.8vw, 5.6rem); font-weight: 500; letter-spacing: -.065em; line-height: 1; }
.coming-soon-intro h1 span { color: var(--green); }
.coming-soon-intro > p:not(.eyebrow) { max-width: 42ch; margin-left: auto; margin-right: auto; color: var(--muted); }
.coming-soon-contact { margin-top: 2.5rem; padding-top: 1.5rem; border-top: 1px solid var(--line); }
.coming-soon-contact p { color: var(--muted); font-size: .85rem; }
.coming-soon-contact a { display: inline-block; max-width: 100%; overflow-wrap: anywhere; color: var(--text); font-family: var(--display); font-size: clamp(1rem, 2vw, 1.4rem); text-decoration: underline; text-underline-offset: .3em; padding: .5rem 0; }
.coming-soon-contact a:hover { color: var(--green); }
.coming-soon-page a:focus-visible { outline: 2px solid var(--green); outline-offset: 5px; }
.coming-soon-intro .coming-soon-note { margin-top: 1.5rem; font-size: .8rem; color: var(--dim); }
@media (max-width: 760px) { .coming-soon-shell { width: min(calc(100% - 2rem), 680px); } .coming-soon-intro h1 { font-size: clamp(2.8rem, 11vw, 4.5rem); } }
