:root {
	--primary: #005f73;
	--secondary: #0a9396;
	--accent: #ee9b00;
	--bg: #f8f9fa;
	--text: #212529;
	--gray: #dee2e6;
	--radius: 10px;
}

* { box-sizing: border-box; margin: 0; padding: 0; }
body {
	font-family: 'Inter', sans-serif;
	color: var(--text);
	background: var(--bg);
	line-height: 1.6;
}

a { text-decoration: none; color: var(--primary); }
h1, h2, h3 { font-family: 'Montserrat', sans-serif; margin-bottom: .5rem; }

.navbar {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 1rem 2rem;
	background: white;
	box-shadow: 0 1px 5px rgba(0,0,0,0.05);
	position: sticky;
	top: 0;
	z-index: 100;
}
.navbar .logo {
	font-weight: 700;
	font-size: 1.3rem;
	color: var(--primary);
}
.navbar nav a {
	margin-left: 1.5rem;
	color: var(--text);
}
.navbar nav a.active {
	color: var(--secondary);
	font-weight: 600;
}

.hero {
	background: linear-gradient(120deg, var(--primary), var(--secondary));
	color: white;
	text-align: center;
	padding: 6rem 2rem;
}
.hero h1 { font-size: 2.2rem; margin-bottom: 1rem; }
.hero p { font-size: 1.1rem; margin-bottom: 2rem; }

.btn {
	display: inline-block;
	padding: .75rem 1.5rem;
	border-radius: var(--radius);
	font-weight: 600;
}
.btn.primary {
	background: var(--accent);
	color: #fff;
}
.btn.secondary {
	border: 2px solid white;
	color: white;
}

.features, .about-quantum, .workflow, .specs, .modules, .tech, .contact-form {
	padding: 4rem 2rem;
	max-width: 1100px;
	margin: auto;
}
.features h2, .specs h2, .modules h2, .tech h2, .workflow h2 {
	text-align: center;
	margin-bottom: 2rem;
}
.grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
	gap: 1.5rem;
}
.card {
	background: white;
	padding: 1.5rem;
	border-radius: var(--radius);
	box-shadow: 0 1px 4px rgba(0,0,0,0.05);
	transition: transform .2s;
}
.card:hover { transform: translateY(-4px); }

.workflow ol {
	list-style: none;
	text-align: center;
}
.workflow li {
	margin: .5rem 0;
	font-weight: 500;
}

footer {
	text-align: center;
	padding: 2rem;
	background: white;
	margin-top: 2rem;
	border-top: 1px solid var(--gray);
}

.page-header {
	text-align: center;
	padding: 5rem 2rem 2rem;
	background: var(--gray);
}

.contact-form {
	display: grid;
	grid-template-columns: 2fr 1fr;
	gap: 2rem;
}
.contact-form form {
	display: flex;
	flex-direction: column;
}
.contact-form input, .contact-form textarea {
	margin-bottom: 1rem;
	padding: .75rem;
	border: 1px solid var(--gray);
	border-radius: var(--radius);
}
.contact-form button {
	align-self: start;
}
.contact-form .info {
	background: white;
	padding: 1.5rem;
	border-radius: var(--radius);
	box-shadow: 0 1px 4px rgba(0,0,0,0.05);
}

@media (max-width: 800px) {
	.contact-form { grid-template-columns: 1fr; }
	.hero { padding: 4rem 1rem; }
}