:root{
  --bg:#0f1724;
  --card:#0b1220;
  --text:#e6eef8;
  --muted:#9fb0c8;
  --accent:#7c5cff;
  --radius:12px;
  --container:1100px;
  --gap:24px;
}
*{box-sizing:border-box}
html,body{height:100%}
body{
  margin:0;
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial;
  background:linear-gradient(180deg,#071025 0%, #071827 100%);
  color:var(--text);
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
  line-height:1.45;
}
.container{max-width:var(--container);margin:0 auto;padding:48px 20px}
.site-header{position:sticky;top:0;background:rgba(3,6,12,0.4);backdrop-filter:blur(6px);border-bottom:1px solid rgba(255,255,255,0.03)}
.header-inner{display:flex;align-items:center;justify-content:space-between}
.brand{font-weight:700;color:var(--text);text-decoration:none;font-size:1.1rem}
.nav{position:relative}
.nav-toggle{display:none;background:none;border:1px solid rgba(255,255,255,0.04);color:var(--text);padding:8px 12px;border-radius:8px}
.nav-list{display:flex;gap:18px;list-style:none;margin:0;padding:0}
.nav-list a{color:var(--muted);text-decoration:none}
.hero{padding-top:60px;padding-bottom:40px}
.hero-inner{display:grid;grid-template-columns:1fr 360px;gap:40px;align-items:center}
.hero-text h1{font-size:2.4rem;margin:0}
.lead{color:var(--muted);margin:12px 0 20px}
.accent{color:var(--accent)}
.btn{display:inline-block;padding:10px 16px;border-radius:10px;text-decoration:none;cursor:pointer}
.btn.primary{background:linear-gradient(90deg,var(--accent),#5aa1ff);color:#fff}
.btn.outline{border:1px solid rgba(255,255,255,0.06);color:var(--text)}
.section{padding:60px 0}
.projects h2,.skills h2,.about h2,.contact h2{margin:0 0 8px}
.muted{color:var(--muted)}
.project-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:18px}
.card{background:linear-gradient(180deg,rgba(255,255,255,0.02),transparent);padding:18px;border-radius:12px;border:1px solid rgba(255,255,255,0.03)}
.card h3{margin:0 0 8px}
.skill-category{font-size:1.2rem;margin-top:20px;margin-bottom:8px;color:var(--accent)}
.skills-list{display:flex;flex-wrap:wrap;gap:10px;margin-top:6px;margin-bottom:16px}
.skill{background:rgba(255,255,255,0.03);padding:8px 12px;border-radius:999px;color:var(--muted)}
.about-inner{display:flex;gap:24px;align-items:center}
.about-photo img{width:160px;height:160px;border-radius:12px;object-fit:cover}
.contact-form{display:grid;grid-template-columns:1fr 1fr;gap:12px;max-width:820px}
.contact-form label{display:block;color:var(--muted)}
.contact-form input,.contact-form textarea{width:100%;padding:8px;border-radius:8px;border:1px solid rgba(255,255,255,0.04);background:transparent;color:var(--text)}
.contact-form textarea{grid-column:span 2}
.site-footer{border-top:1px solid rgba(255,255,255,0.03);padding:24px 0}
.footer-inner{display:flex;justify-content:space-between;align-items:center}
.social a{color:var(--muted);text-decoration:none;margin-left:12px}
@media (max-width:1000px){
  .hero-inner{grid-template-columns:1fr 300px}
  .project-grid{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:720px){
  .nav-toggle{display:inline-block}
  .nav-list{display:none;position:absolute;right:0;top:44px;background:var(--card);padding:10px;border-radius:8px;box-shadow:0 6px 18px rgba(2,6,23,0.6)}
  .nav-list.show{display:flex;flex-direction:column}
  .hero-inner{grid-template-columns:1fr;gap:20px}
  .hero-illustration{order:-1}
  .project-grid{grid-template-columns:1fr}
  .contact-form{grid-template-columns:1fr}
}
.text-center{text-align:center}
.z-1{z-index:1}
