Files
noveria-landing/css/style.css
T

264 lines
8.1 KiB
CSS
Executable File
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
/* ═══════════════════════════════════════════════
Noveria Operation Landing Galaxy + Aya Design
Dark Premium: Monochrome + Violett-Akzent
═══════════════════════════════════════════════ */
:root {
--bg: #080a0f;
--tx: #ffffff;
--tx-2: #9ca3af;
--tx-3: #6b7280;
--accent: #8b5cf6;
--accent-strong: #a78bfa;
--accent-glow: rgba(139, 92, 246, .35);
--grad: linear-gradient(135deg, #7c3aed, #a855f7, #6366f1);
--holographic: linear-gradient(135deg, rgba(249,115,22,.06), rgba(236,72,153,.06), rgba(99,102,241,.06));
}
* { box-sizing: border-box; margin: 0; padding: 0; }
html, body {
height: 100%;
overflow: hidden;
font-family: 'Space Grotesk', Inter, ui-sans-serif, system-ui, -apple-system, sans-serif;
color: var(--tx);
background: var(--bg);
}
/* ═══ Galaxy Background ═══ */
.galaxy {
position: fixed;
inset: 0;
z-index: 0;
background:
radial-gradient(80% 60% at 50% 40%, rgba(139, 92, 246, .10), transparent 60%),
radial-gradient(60% 50% at 80% 80%, rgba(168, 85, 247, .06), transparent 55%),
radial-gradient(50% 40% at 20% 20%, rgba(99, 102, 241, .05), transparent 50%),
var(--bg);
}
/* Holographic premium gradient */
.holographic {
position: absolute;
inset: 0;
background: var(--holographic);
mix-blend-mode: screen;
pointer-events: none;
}
.stars, .stars2, .stars3 {
position: absolute;
inset: 0;
}
.stars {
background-image:
radial-gradient(1px 1px at 10% 15%, rgba(255,255,255,.8), transparent),
radial-gradient(1px 1px at 25% 45%, rgba(255,255,255,.6), transparent),
radial-gradient(1.5px 1.5px at 40% 10%, rgba(200,190,255,.9), transparent),
radial-gradient(1px 1px at 55% 70%, rgba(255,255,255,.7), transparent),
radial-gradient(1px 1px at 70% 30%, rgba(255,255,255,.5), transparent),
radial-gradient(1.5px 1.5px at 85% 55%, rgba(180,170,255,.8), transparent),
radial-gradient(1px 1px at 15% 80%, rgba(255,255,255,.6), transparent),
radial-gradient(1px 1px at 60% 85%, rgba(255,255,255,.4), transparent),
radial-gradient(1px 1px at 90% 20%, rgba(255,255,255,.7), transparent);
}
.stars2 {
background-image:
radial-gradient(1px 1px at 5% 25%, rgba(255,255,255,.9), transparent),
radial-gradient(1.5px 1.5px at 20% 60%, rgba(220,210,255,.8), transparent),
radial-gradient(1px 1px at 35% 35%, rgba(255,255,255,.5), transparent),
radial-gradient(1px 1px at 50% 15%, rgba(255,255,255,.6), transparent),
radial-gradient(1px 1px at 65% 55%, rgba(255,255,255,.7), transparent),
radial-gradient(1.5px 1.5px at 80% 75%, rgba(200,190,255,.8), transparent),
radial-gradient(1px 1px at 95% 40%, rgba(255,255,255,.5), transparent),
radial-gradient(1px 1px at 45% 90%, rgba(255,255,255,.4), transparent);
animation: twinkle 4s ease-in-out infinite alternate;
}
.stars3 {
background-image:
radial-gradient(1px 1px at 8% 65%, rgba(255,255,255,.6), transparent),
radial-gradient(1px 1px at 18% 15%, rgba(255,255,255,.5), transparent),
radial-gradient(1.5px 1.5px at 30% 80%, rgba(210,200,255,.7), transparent),
radial-gradient(1px 1px at 48% 45%, rgba(255,255,255,.8), transparent),
radial-gradient(1px 1px at 62% 25%, rgba(255,255,255,.4), transparent),
radial-gradient(1px 1px at 75% 65%, rgba(255,255,255,.6), transparent),
radial-gradient(1px 1px at 88% 8%, rgba(255,255,255,.7), transparent),
radial-gradient(1.5px 1.5px at 12% 48%, rgba(190,180,255,.8), transparent);
animation: twinkle 6s ease-in-out infinite alternate-reverse;
}
@keyframes twinkle {
0% { opacity: .5; }
100% { opacity: 1; }
}
/* ═══ Shooting Stars ═══ */
.shooting-star {
position: absolute;
top: -10%;
left: 60%;
width: 2px;
height: 100px;
background: linear-gradient(to bottom, rgba(255,255,255,0), rgba(255,255,255,.9), rgba(139,92,246,.4));
transform: rotate(-30deg);
animation: shoot 4s ease-in infinite;
opacity: 0;
border-radius: 1px;
filter: blur(.5px);
}
.shooting-star:nth-child(5) {
top: -5%;
left: 25%;
animation-delay: 2.5s;
animation-duration: 5s;
height: 70px;
}
@keyframes shoot {
0% { opacity: 0; transform: rotate(-30deg) translate(0, 0); }
2% { opacity: .9; }
8% { opacity: 0; transform: rotate(-30deg) translate(-300px, 600px); }
100% { opacity: 0; transform: rotate(-30deg) translate(-300px, 600px); }
}
/* ═══ Floating Ambient Orbs ═══ */
.orb {
position: fixed;
border-radius: 50%;
filter: blur(80px);
z-index: 0;
pointer-events: none;
}
.orb-1 {
width: 320px; height: 320px;
top: -60px; right: -80px;
background: rgba(139, 92, 246, .12);
animation: float-orb 8s ease-in-out infinite;
}
.orb-2 {
width: 240px; height: 240px;
bottom: -40px; left: -60px;
background: rgba(99, 102, 241, .10);
animation: float-orb 12s ease-in-out infinite reverse;
}
@keyframes float-orb {
0%, 100% { transform: translate(0, 0) scale(1); }
33% { transform: translate(20px, -20px) scale(1.1); }
66% { transform: translate(-10px, 10px) scale(.95); }
}
/* ═══ Content ═══ */
.hero {
position: relative;
z-index: 1;
display: flex;
align-items: center;
justify-content: center;
height: 100%;
padding: 2rem;
}
.hero-content {
text-align: center;
animation: fade-up .8s ease-out;
}
@keyframes fade-up {
from { opacity: 0; transform: translateY(16px); }
to { opacity: 1; transform: translateY(0); }
}
/* Monogram */
.avatar {
width: 72px; height: 72px;
border-radius: 50%;
margin: 0 auto 1.5rem;
background: rgba(139, 92, 246, .10);
border: 2px solid rgba(139, 92, 246, .25);
display: flex;
align-items: center;
justify-content: center;
font-size: 1.75rem;
font-weight: 700;
color: var(--accent-strong);
letter-spacing: .04em;
box-shadow: 0 0 48px rgba(139, 92, 246, .15);
animation: pulse-avatar 3s ease-in-out infinite;
}
@keyframes pulse-avatar {
0%, 100% { box-shadow: 0 0 32px rgba(139, 92, 246, .10); }
50% { box-shadow: 0 0 56px rgba(139, 92, 246, .20); }
}
/* Headline — EXTREM GROSS */
.hero-title {
font-size: clamp(2.8rem, 9vw, 5.5rem);
font-weight: 700;
letter-spacing: .04em;
background: var(--grad);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
background-clip: text;
filter: drop-shadow(0 0 32px var(--accent-glow));
margin-bottom: .35rem;
line-height: 1.1;
}
/* Subtext — WINZIG */
.hero-subtitle {
font-size: clamp(.85rem, 2vw, 1.1rem);
color: var(--tx-2);
letter-spacing: .06em;
font-weight: 400;
margin-bottom: 2rem;
}
/* Status-Badge */
.status-badge {
display: inline-block;
padding: .55rem 1.6rem;
border-radius: 99px;
border: 1px solid rgba(139, 92, 246, .30);
background: rgba(139, 92, 246, .08);
backdrop-filter: blur(8px);
-webkit-backdrop-filter: blur(8px);
color: var(--accent-strong);
font-size: .8rem;
font-weight: 600;
letter-spacing: .10em;
text-transform: uppercase;
box-shadow: 0 0 36px rgba(139, 92, 246, .15);
margin-bottom: 2.5rem;
animation: pulse-badge 3s ease-in-out infinite;
}
@keyframes pulse-badge {
0%, 100% { box-shadow: 0 0 28px rgba(139, 92, 246, .08); }
50% { box-shadow: 0 0 48px rgba(139, 92, 246, .22); }
}
/* ═══ Footer ═══ */
.footer {
position: fixed;
bottom: 0;
left: 0;
right: 0;
z-index: 1;
text-align: center;
padding: 1rem;
font-size: .7rem;
color: var(--tx-3);
letter-spacing: .04em;
}
/* ═══ Responsive ═══ */
@media (max-width: 640px) {
.hero { padding: 1rem; }
.hero-title { font-size: clamp(2rem, 14vw, 3.5rem); }
.hero-subtitle { font-size: .8rem; }
.avatar { width: 56px; height: 56px; font-size: 1.35rem; }
.orb { display: none; }
.shooting-star { display: none; }
}