*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{
  --bg:#0f0f12;
  --surf:#1a1a1f;
  --surf2:#22222a;
  --surf3:#2b2b35;
  --brd:rgba(255,255,255,0.07);
  --brd2:rgba(255,255,255,0.15);
  --txt:#eeede6;
  --muted:rgba(238,237,230,0.42);
  --acc:#c8f060;
  --acc2:#a8e040;
  --mono:"Space Mono",monospace;
  --sans:"DM Sans",sans-serif;
}
body{font-family:var(--sans);background:var(--bg);color:var(--txt);min-height:100vh;display:flex;flex-direction:column;align-items:center;padding:3rem 1rem 5rem;overflow-x:hidden}
.wrap{width:100%;max-width:860px;display:flex;flex-direction:column;gap:2.5rem}

/* Header */
.site-header{text-align:center;display:flex;flex-direction:column;gap:.55rem}
.site-title{font-family:var(--mono);font-size:clamp(1.6rem,5vw,2.6rem);font-weight:700;letter-spacing:-.03em;color:var(--acc);line-height:1}
.site-sub{font-size:.75rem;color:var(--muted);letter-spacing:.1em;text-transform:uppercase}

/* Section */
.section-label{font-family:var(--mono);font-size:.6rem;font-weight:700;text-transform:uppercase;letter-spacing:.14em;color:var(--muted);margin-bottom:1rem;padding-bottom:.5rem;border-bottom:1px solid var(--brd)}

/* Project grid */
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:1rem}
.project-card{background:var(--surf);border:1px solid var(--brd);border-radius:14px;padding:1.4rem;display:flex;flex-direction:column;gap:.85rem;text-decoration:none;color:inherit;transition:border-color .2s,transform .15s,box-shadow .2s;position:relative;overflow:hidden}
.project-card::before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(200,240,96,.04) 0%,transparent 60%);opacity:0;transition:opacity .2s}
.project-card:hover{border-color:var(--acc);transform:translateY(-10px) scale(1.02);box-shadow:0 30px 70px rgba(0,0,0,.6),0 0 40px rgba(200,240,96,.12)}
.project-card:hover::before{opacity:1}
.card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:.5rem}
.card-icon{width:40px;height:40px;border-radius:10px;background:var(--surf2);border:1px solid var(--brd2);display:flex;align-items:center;justify-content:center;font-size:1.25rem;flex-shrink:0}
.card-arrow{font-family:var(--mono);font-size:.8rem;color:var(--muted);margin-top:.25rem;transition:color .15s,transform .15s}
.project-card:hover .card-arrow{color:var(--acc);transform:translate(4px,-4px)}
.card-name{font-family:var(--mono);font-size:.95rem;font-weight:700;color:var(--txt);letter-spacing:-.01em}
.card-desc{font-size:.78rem;color:var(--muted);line-height:1.55}
.card-tags{display:flex;flex-wrap:wrap;gap:.35rem;margin-top:.1rem}
.tag{font-family:var(--mono);font-size:.55rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;padding:.22rem .55rem;border-radius:99px;background:var(--surf2);border:1px solid var(--brd2);color:var(--muted)}

/* Footer */
footer{text-align:center;font-size:.62rem;color:var(--muted);font-family:var(--mono);margin-top:1rem;line-height:2.2}
.yt-link{color:#ff4444;text-decoration:none;text-transform:uppercase;letter-spacing:.08em}
.yt-link:hover{text-decoration:underline}

@media(max-width:520px){
  body{padding:2rem .75rem 4rem}
  .grid{grid-template-columns:1fr}
}
