* {
box-sizing: border-box;
}
html {
scroll-behavior: smooth;
}
body {
margin: 0;
font-family: Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
background: #0d0b14;
color: #f4f1ff;
line-height: 1.6;
}
a {
color: inherit;
text-decoration: none;
}
img {
max-width: 100%;
}
.hero {
min-height: 100vh;
padding: 32px;
background:
radial-gradient(circle at top left, rgba(139, 92, 246, 0.38), transparent 32%),
radial-gradient(circle at bottom right, rgba(64, 255, 180, 0.12), transparent 35%),
#0d0b14;
}
.nav {
max-width: 1280px;
margin: 0 auto;
display: flex;
justify-content: space-between;
gap: 24px;
align-items: center;
}
.logo {
font-weight: 900;
font-size: 1.5rem;
letter-spacing: 0.04em;
color: #b783ff;
}
.nav-links {
display: flex;
gap: 22px;
color: #d8d0ee;
font-weight: 600;
flex-wrap: wrap;
}
.nav-links a:hover {
color: #8effc1;
}
.hero-grid {
max-width: 1280px;
margin: 110px auto 0;
display: grid;
grid-template-columns: 0.95fr 1.05fr;
gap: 42px;
align-items: center;
}
.hero-content {
max-width: 720px;
}
.eyebrow {
color: #8effc1;
text-transform: uppercase;
letter-spacing: 0.15em;
font-size: 0.82rem;
font-weight: 800;
}
h1 {
font-size: clamp(2.6rem, 6vw, 5.2rem);
line-height: 0.98;
margin: 16px 0;
}
.subtext {
color: #cfc7e8;
font-size: 1.15rem;
}
.buttons {
margin-top: 34px;
display: flex;
gap: 16px;
flex-wrap: wrap;
}
.btn {
padding: 14px 22px;
border-radius: 999px;
font-weight: 800;
}
.primary {
background: #8b5cf6;
color: white;
box-shadow: 0 0 24px rgba(139, 92, 246, 0.35);
}
.secondary {
border: 1px solid #8b5cf6;
color: #d9ccff;
}
.hero-image,
.feature-image,
.screenshot-card {
box-shadow: 0 24px 80px rgba(0, 0, 0, 0.35);
}
.hero-image img,
.feature-image img,
.screenshot-card img {
display: block;
width: 100%;
}
.hero-image {
border: 1px solid #302747;
border-radius: 22px;
overflow: hidden;
background: #171321;
}
.stats {
max-width: 1180px;
margin: -58px auto 60px;
display: grid;
grid-template-columns: repeat(4, 1fr);
gap: 16px;
padding: 0 32px;
position: relative;
z-index: 2;
}
.stats div {
background: rgba(23, 19, 33, 0.94);
border: 1px solid #302747;
border-radius: 18px;
padding: 24px;
text-align: center;
}
.stats span {
display: block;
font-size: 2rem;
font-weight: 900;
color: #8effc1;
}
.stats p {
margin: 4px 0 0;
color: #cfc7e8;
}
.section {
max-width: 1180px;
margin: 0 auto;
padding: 80px 32px;
}
.section-heading {
max-width: 860px;
margin-bottom: 32px;
}
.section h2 {
font-size: clamp(2rem, 4vw, 3rem);
line-height: 1.05;
margin: 10px 0 16px;
}
.section p {
color: #cfc7e8;
}
.intro {
padding-top: 40px;
}
.dark {
max-width: none;
padding-left: calc((100% - 1180px) / 2 + 32px);
padding-right: calc((100% - 1180px) / 2 + 32px);
background: #120f1b;
}
.feature-image {
border: 1px solid #302747;
border-radius: 22px;
overflow: hidden;
background: #171321;
}
.feature-image.wide {
max-width: 100%;
}
.screenshot-grid {
display: grid;
grid-template-columns: repeat(2, 1fr);
gap: 24px;
}
.screenshot-card {
background: #171321;
border: 1px solid #302747;
border-radius: 20px;
overflow: hidden;
}
.screenshot-card div {
padding: 22px;
}
.screenshot-card h3 {
margin: 0 0 8px;
color: #b783ff;
font-size: 1.3rem;
}
.screenshot-card p {
margin: 0;
color: #cfc7e8;
}
.skills {
text-align: center;
}
.skills-grid {
margin-top: 28px;
display: flex;
flex-wrap: wrap;
justify-content: center;
gap: 12px;
}
.skills-grid span {
border: 1px solid #302747;
background: #171321;
color: #d9ccff;
padding: 10px 14px;
border-radius: 999px;
font-weight: 700;
}
footer {
padding: 36px;
text-align: center;
color: #8f86a8;
border-top: 1px solid #211a31;
}
@media (max-width: 950px) {
.hero-grid,
.screenshot-grid {
grid-template-columns: 1fr;
}
.hero-grid {
margin-top: 80px;
}
.stats {
grid-template-columns: repeat(2, 1fr);
margin-top: 40px;
}
}
@media (max-width: 650px) {
.hero,
.section {
padding-left: 20px;
padding-right: 20px;
}
.nav {
align-items: flex-start;
flex-direction: column;
}
.stats {
grid-template-columns: 1fr;
padding: 0 20px;
}
.dark {
padding-left: 20px;
padding-right: 20px;
}
}