:root{
--muted:#9aa4b2;
--accent:#6ee7b7; /* soft green */
--accent-2:#60a5fa; /* soft blue */
--text:#e6eef6;
--radius:14px;
}


/* Basic reset */
*{box-sizing:border-box}
html,body{height:100%}
body{
margin:0;
font-family:Inter, system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial;
color:var(--text);
background:linear-gradient(180deg,#071022 0%, #081226 60%);
-webkit-font-smoothing:antialiased;
}
.container{max-width:1100px;margin:0 auto;padding:2rem}
.header-inner{display:flex;align-items:center;justify-content:space-between}
.brand{display:flex;align-items:center;text-decoration:none;color:inherit}
.logo{height:40px;width:auto}
.main-nav ul{list-style:none;padding:0;margin:0;display:flex;gap:1rem}
.main-nav a{color:var(--muted);text-decoration:none}


/* Hero */
.hero{padding:6rem 0 4rem}
.hero h1{font-size:2.1rem;margin:0 0 .5rem}
.lead{color:var(--muted);max-width:60ch}
.cta-row{margin-top:1.2rem}
.btn-primary,.btn-secondary{display:inline-block;padding:.8rem 1.2rem;border-radius:10px;text-decoration:none;font-weight:600}
.btn-primary{background:linear-gradient(90deg,var(--accent),var(--accent-2));color:#04202a}
.btn-secondary{border:1px solid rgba(255,255,255,.06);color:var(--text);background:transparent}


.section{padding:3.5rem 0}
.section.alt{background:linear-gradient(180deg, rgba(255,255,255,0.02), transparent)}
.services-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem}
.card{background:rgba(255,255,255,0.02);padding:1.2rem;border-radius:10px}


.steps{padding-left:1rem}


.contact-form{max-width:760px}
.form-row{margin-bottom:1rem}
.form-row label{display:block;margin-bottom:.4rem;color:var(--muted)}
.form-row input,.form-row textarea{width:100%;padding:.8rem;border-radius:8px;border:1px solid rgba(255,255,255,.04);background:transparent;color:var(--text)}
.form-row.small{display:flex;gap:.6rem;align-items:center}
.btn-primary[type=submit]{cursor:pointer}
.form-status{margin-top:.6rem;color:var(--accent)}


.site-footer{padding:2rem 0;border-top:1px solid rgba(255,255,255,.03)}
.small{color:var(--muted);font-size:.9rem}


/* Accessibility helpers */
.sr-only{position:absolute;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden}


/* Responsive */
@media (max-width:720px){
.header-inner{padding:0 1rem}
.hero h1{font-size:1.6rem}
.container{padding:1rem}
}