:root{
  --bg:#0f172a;
  --card:#0b1320;
  --muted:#94a3b8;
  --accent:#06b6d4;
  --accent-2:#7c3aed;
  --white:#ffffff;
  --radius:12px;
}

*{box-sizing:border-box}
html,body{height:100%}
body{
  margin:0;
  font-family:Inter, system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial;
  background:linear-gradient(180deg,#0b1220 0%, #071028 100%);
  color:var(--white);
  line-height:1.5;
  -webkit-font-smoothing:antialiased;
}

.container{max-width:1100px;margin:0 auto;padding:1.5rem}

.site-header{background:transparent;padding:1rem 0}
.header-inner{display:flex;align-items:center;justify-content:space-between}
.logo{font-weight:700;color:var(--white);text-decoration:none}
.main-nav a{color:var(--muted);margin-left:1rem;text-decoration:none}
.main-nav a:hover{color:var(--white)}

.hero{padding:3.5rem 0}
.hero-inner{display:flex;gap:2rem;align-items:center}
.hero-text{flex:1}
.hero-text h1{font-size:2rem;margin:0 0 .5rem}
.hero-text p{color:var(--muted);margin:0 0 1rem}
.btn{display:inline-block;background:linear-gradient(90deg,var(--accent),var(--accent-2));color:#061123;padding:.6rem 1rem;border-radius:8px;text-decoration:none;font-weight:600}

.hero-photo{width:160px;height:160px;border-radius:50%;background:linear-gradient(135deg,#06b6d4,#7c3aed);flex:0 0 160px;box-shadow:0 8px 30px rgba(0,0,0,.4)}

.about{padding:2rem 0}
.about h2{margin-top:0}
.about p{color:var(--muted)}

.projects{padding:2rem 0}
.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}
.card{background:rgba(255,255,255,0.03);padding:1rem;border-radius:var(--radius);min-height:220px;display:flex;flex-direction:column}
.card-media{height:110px;border-radius:8px;margin-bottom:.8rem}
.card h3{margin:.25rem 0}
.card p{flex:1;color:var(--muted)}
.card-link{color:var(--accent);text-decoration:none;font-weight:600}

.contact{padding:2rem 0}
.contact-form{display:grid;grid-template-columns:1fr 1fr;gap:1rem;max-width:700px}
.contact-form label{display:flex;flex-direction:column;color:var(--muted)}
.contact-form input,.contact-form textarea{padding:.6rem;border-radius:8px;border:1px solid rgba(255,255,255,0.06);background:transparent;color:var(--white)}
.contact-form button{grid-column:1 / -1;justify-self:start}

.site-footer{border-top:1px solid rgba(255,255,255,0.04);padding:1rem 0;margin-top:2rem;color:var(--muted)}

@media (max-width:900px){
  .hero-inner{flex-direction:column;align-items:flex-start}
  .grid{grid-template-columns:repeat(2,1fr)}
  .contact-form{grid-template-columns:1fr}
}

@media (max-width:520px){
  .grid{grid-template-columns:1fr}
  .hero-text h1{font-size:1.5rem}
  .hero-photo{width:120px;height:120px}
}
