/* === Tokens === */
:root{
  --bg: #0b0e13;
  --surface: #0f1218;
  --card: #121623;
  --text: #e8ecf1;
  --muted: #a7b0c0;
  --border: #1f2533;

  --p1: #a78bfa; /* purple */
  --p2: #22d3ee; /* cyan */
  --grad: linear-gradient(90deg, var(--p1), var(--p2));

  --radius: 18px;
  --radius-pill: 999px;
  --shadow: 0 20px 60px rgba(0,0,0,.45);
  --ring: 0 0 0 1px var(--border);
}

*{box-sizing:border-box}
html,body{height:100%}
body {
  background: #10101a;
  color: #fff;
  font-family: 'Inter', sans-serif;
  margin: 0;
  min-height: 100vh;
}

a {
  color: #a78bfa;
  text-decoration: none;
  transition: color 0.2s;
}

a:hover {
  color: #7c3aed;
}

.accent, .brand-text, .chip-ghost, .btn-gradient {
  color: #a78bfa;
}

.container{width:min(1120px,92vw);margin:0 auto}
.center{text-align:center}
.muted{color:var(--muted)}
.max-60 { max-width: 60ch; margin: 0 auto; }
.max-70 { max-width: 70ch; margin: 0 auto; }

/* Header */
.site-header{
  position:sticky; top:0; z-index:50;
  backdrop-filter:saturate(120%) blur(8px);
  background:linear-gradient(to bottom, rgba(11,14,19,0.9), rgba(11,14,19,0.55));
  border-bottom:1px solid var(--border);
}
.header-inner{display:flex;align-items:center;justify-content:space-between;padding:14px 0}
.brand{display:flex;align-items:center;gap:10px;font-weight:700}
.brand-logo{width:28px;height:28px}
.nav-toggle{display:none;background:transparent;border:1px solid var(--border);color:var(--text);padding:6px 10px;border-radius:10px}
.nav-list{display:flex;gap:10px;list-style:none;margin:0;padding:0}
.nav-list a{padding:8px 12px;border-radius:12px;color:var(--muted)}
.nav-list a:hover{background:var(--surface);color:var(--text)}

/* Sections */
.section{padding: 64px 0 48px 0;}
.eyebrow{color:var(--p2);text-transform:uppercase;font-weight:700;letter-spacing:.6px;font-size:12px;margin:0 0 10px}
h1{font-size: clamp(28px, 5vw, 56px);line-height:1.1;margin:6px 0 12px}
h2{font-size: clamp(26px, 3.2vw, 40px);line-height:1.2;margin:0 0 18px}
h3{font-size:18px;margin:0 0 6px}

/* Hero */
.hero-inner{display:grid;grid-template-columns:.35fr 1fr;gap:32px;align-items:center}
.avatar-wrap{
  width:160px;height:160px;border-radius:50%;margin:0 auto;
  background: radial-gradient(60% 60% at 50% 40%, rgba(167,139,250,.6), transparent), var(--card);
  box-shadow: 0 0 0 2px rgba(255,255,255,0.04), 0 0 80px rgba(34,211,238,.2), 0 0 60px rgba(167,139,250,.25);
  display:grid;place-items:center;border:1px solid var(--border);
}
.avatar-wrap img{width:72%;border-radius:50%}
.hero-copy .lead{color:var(--muted);max-width:62ch}
.actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}

/* Chips & Pills */
.chip, .pill{
  display:inline-flex;align-items:center;gap:8px;
  padding:8px 12px;border-radius:var(--radius-pill);border:1px solid var(--border);
  background:rgba(255,255,255,0.02); color:var(--text); font-size:13px;
}
.chip-ghost{background:transparent;color:var(--muted)}
.pill{background: var(--grad); color:#0b0e13; font-weight:700; box-shadow: var(--shadow);}
.cta-row{display:flex;gap:12px;justify-content:center;margin:14px 0 24px}

/* Buttons */
.btn{display:inline-flex;align-items:center;gap:8px;padding:10px 14px;border-radius:14px;border:1px solid var(--border);cursor:pointer;transition:.2s}
.btn-gradient{background:var(--grad);color:#0b0e13;border:none;font-weight:700}
.btn-soft{background:rgba(255,255,255,0.04)}
.btn-ghost{background:transparent;color:var(--muted)}
.btn:hover{transform:translateY(-1px)}

/* Cards */
.cards{display:grid;gap:16px;margin-top:16px}
.cards.three{grid-template-columns:repeat(3,1fr)}
.card{
  background: linear-gradient(180deg, rgba(255,255,255,0.02), rgba(255,255,255,0.01));
  border: 1px solid var(--border);
  border-radius: var(--radius);
  padding:18px; box-shadow: var(--shadow);
}
.card .icon{font-size:22px;margin-bottom:10px}

/* Projects */
.project-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin-top:14px}
.project{background:linear-gradient(180deg, rgba(255,255,255,0.02), rgba(255,255,255,0.01)); border:1px solid var(--border); border-radius:var(--radius); overflow:hidden; box-shadow:var(--shadow)}
.project .thumb{aspect-ratio: 16/9; background:#0e121a; border-bottom:1px solid var(--border)}
.project .thumb img{width:100%;height:100%;object-fit:cover}
.project-body{padding:14px}
.project .chips{display:flex;gap:8px;flex-wrap:wrap;margin:6px 0 8px}

/* Skills */
.skills-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin-top:12px}
.skill{
  background: radial-gradient(120% 100% at 20% 10%, rgba(34,211,238,.08), transparent), var(--card);
  border:1px solid var(--border); border-radius:14px; padding:14px; text-align:center;
}

/* Timeline */
.timeline{list-style:none;padding:0;margin:16px 0 0;display:grid;gap:12px}
.timeline li{display:grid;grid-template-columns:90px 1fr;gap:16px;align-items:start;background:rgba(255,255,255,0.02);border:1px solid var(--border);border-radius:var(--radius);padding:12px}
.bullet{display:inline-flex;align-items:center;gap:8px;background:var(--surface);border:1px solid var(--border);padding:6px 10px;border-radius:12px}
.year{display:inline-block;background:var(--grad);color:#0b0e13;border-radius:999px;padding:0 6px;margin-left:6px;font-weight:800}
.availability{margin-top:12px;text-align:center}

/* Contact */
.contact-form{
  margin:20px auto 0; width:min(800px, 100%);
  background: linear-gradient(180deg, rgba(255,255,255,0.02), rgba(255,255,255,0.01));
  border:1px solid var(--border); border-radius:var(--radius); padding:18px;
  box-shadow: 0 0 60px rgba(124,92,255,.12);
}
.contact-form h3{margin:0 0 10px}
.contact-form label{display:grid;gap:6px;font-size:14px;margin:6px 0}
.contact-form input, .contact-form textarea{
  background:#0c1016; border:1px solid var(--border); border-radius:12px; color:var(--text); padding:10px 12px; outline:none;
}
.contact-form input:focus, .contact-form textarea:focus{ border-color: #2bc9ff; box-shadow: 0 0 0 3px rgba(43,201,255,.15) }

/* Footer */
.site-footer{border-top:1px solid var(--border);padding:24px 0;color:var(--muted)}
.footer-inner{display:flex;align-items:center;justify-content:space-between}
.heart{color:#ff5bb0}
.top{border:1px solid var(--border);padding:6px 10px;border-radius:10px}

/* Reveal */
[data-reveal]{opacity:0;transform:translateY(16px);transition:opacity .6s ease, transform .6s ease}
[data-reveal].is-visible{opacity:1;transform:translateY(0)}

/* Responsive */
@media (max-width: 900px){
  .hero-inner{grid-template-columns:1fr; text-align:center}
  .cards.three{grid-template-columns:1fr}
  .project-grid{grid-template-columns:1fr}
  .skills-grid{grid-template-columns:repeat(2,1fr)}
}
@media (max-width: 720px){
  .nav-toggle{display:inline-block}
  .nav-list{
    position:absolute; right:16px; top:56px; background:var(--card);
    border:1px solid var(--border); border-radius:12px; padding:8px; gap:0; display:none; min-width:220px;
  }
  .nav-list.show{ display:grid }
  .nav-list a{ display:block; padding:10px 12px }
}
