chore: add coming soon page
This commit is contained in:
96
src/pages/coming-soon.astro
Normal file
96
src/pages/coming-soon.astro
Normal file
@@ -0,0 +1,96 @@
|
||||
---
|
||||
// Standalone "Getting ready for launch" page shown to everyone who is NOT an
|
||||
// unlocked client (strangers, search engines, bots). The gate in
|
||||
// src/middleware.ts internally rewrites unauthorized requests to this route.
|
||||
//
|
||||
// It is intentionally self-contained — no shared Layout and no Strapi data — so
|
||||
// it renders even while the rest of the site is gated. Edit the copy in <main>.
|
||||
Astro.response.headers.set('X-Robots-Tag', 'noindex, nofollow')
|
||||
---
|
||||
|
||||
<!doctype html>
|
||||
<html lang="ru">
|
||||
<head>
|
||||
<meta charset="utf-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
<meta name="robots" content="noindex, nofollow" />
|
||||
<title>Скоро запуск</title>
|
||||
</head>
|
||||
<body>
|
||||
<main>
|
||||
<div class="dot" aria-hidden="true"></div>
|
||||
<h1>Мы готовимся к запуску</h1>
|
||||
<p>Сайт скоро станет доступен. Спасибо, что заглянули — мы уже совсем близко.</p>
|
||||
</main>
|
||||
|
||||
<style is:global>
|
||||
:root {
|
||||
color-scheme: dark;
|
||||
}
|
||||
* {
|
||||
box-sizing: border-box;
|
||||
}
|
||||
html,
|
||||
body {
|
||||
height: 100%;
|
||||
margin: 0;
|
||||
}
|
||||
body {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
min-height: 100%;
|
||||
padding: 24px;
|
||||
font-family: ui-sans-serif, system-ui, -apple-system, 'Segoe UI', Roboto, Helvetica,
|
||||
Arial, sans-serif;
|
||||
color: #e7e9ee;
|
||||
background: radial-gradient(
|
||||
1200px 600px at 50% -10%,
|
||||
#1b2a4a 0%,
|
||||
#0b1020 55%,
|
||||
#070a14 100%
|
||||
);
|
||||
text-align: center;
|
||||
}
|
||||
main {
|
||||
max-width: 540px;
|
||||
}
|
||||
.dot {
|
||||
width: 12px;
|
||||
height: 12px;
|
||||
margin: 0 auto 28px;
|
||||
border-radius: 50%;
|
||||
background: #5b8cff;
|
||||
animation: pulse 2s ease-out infinite;
|
||||
}
|
||||
@keyframes pulse {
|
||||
0% {
|
||||
box-shadow: 0 0 0 0 rgba(91, 140, 255, 0.55);
|
||||
}
|
||||
70% {
|
||||
box-shadow: 0 0 0 18px rgba(91, 140, 255, 0);
|
||||
}
|
||||
100% {
|
||||
box-shadow: 0 0 0 0 rgba(91, 140, 255, 0);
|
||||
}
|
||||
}
|
||||
h1 {
|
||||
margin: 0 0 14px;
|
||||
font-size: clamp(28px, 5vw, 40px);
|
||||
font-weight: 700;
|
||||
letter-spacing: -0.02em;
|
||||
}
|
||||
p {
|
||||
margin: 0;
|
||||
font-size: clamp(15px, 2.5vw, 18px);
|
||||
line-height: 1.6;
|
||||
color: #a8b0c2;
|
||||
}
|
||||
@media (prefers-reduced-motion: reduce) {
|
||||
.dot {
|
||||
animation: none;
|
||||
}
|
||||
}
|
||||
</style>
|
||||
</body>
|
||||
</html>
|
||||
Reference in New Issue
Block a user