/* ═══════════════════════════════
   VARIABLES
═══════════════════════════════ */
:root {
  --bg:#0a0a0f; --surface:#12121a; --surface2:#1a1a26;
  --border:rgba(255,255,255,0.07); --accent:#7fff6e; --accent2:#6ee4ff; --accent3:#ff6eb4;
  --text:#f0f0f0; --muted:#888899; --card-bg:rgba(255,255,255,0.03); --shadow:rgba(0,0,0,0.4);
}
[data-theme="light"] {
  --bg:#f2f2ee; --surface:#ffffff; --surface2:#e8e8e4;
  --border:rgba(0,0,0,0.09); --accent:#2d9e20; --accent2:#0077aa; --accent3:#cc3388;
  --text:#111118; --muted:#66667a;
  --card-bg:rgba(0,0,0,0.025); --shadow:rgba(0,0,0,0.1);
}

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;}
body{background:var(--bg);color:var(--text);font-family:'DM Sans',sans-serif;font-weight:300;line-height:1.7;overflow-x:hidden;transition:background .3s,color .3s;}

/* Noise */
body::before{content:'';position:fixed;inset:0;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.04'/%3E%3C/svg%3E");pointer-events:none;z-index:9998;opacity:.35;}

/* Scroll bar */
#scroll-bar{position:fixed;top:0;left:0;height:3px;background:linear-gradient(90deg,var(--accent),var(--accent2));width:0%;z-index:9999;box-shadow:0 0 10px rgba(127,255,110,.5);transition:width .08s linear;}

/* Cursor */
.cursor-glow{position:fixed;width:380px;height:380px;border-radius:50%;background:radial-gradient(circle,rgba(127,255,110,.07) 0%,transparent 70%);pointer-events:none;transform:translate(-50%,-50%);transition:left .12s,top .12s;z-index:0;}
[data-theme="light"] .cursor-glow{background:radial-gradient(circle,rgba(0,160,60,.07) 0%,transparent 70%);}

/* Particles */
#pcvs{position:fixed;inset:0;pointer-events:none;z-index:1;}

/* ═══ NAV ═══ */
nav{position:fixed;top:0;left:0;right:0;z-index:500;display:flex;align-items:center;justify-content:space-between;padding:17px 60px;background:rgba(10,10,15,.88);backdrop-filter:blur(20px);border-bottom:1px solid var(--border);transition:background .3s;}
[data-theme="light"] nav{background:rgba(242,242,238,.92);}
.nav-logo{font-family:'Syne',sans-serif;font-weight:800;font-size:1.08rem;letter-spacing:-.02em;color:var(--text);text-decoration:none;}
.nav-logo span{color:var(--accent);}
.nav-links{display:flex;gap:36px;list-style:none;}
.nav-links a{color:var(--muted);text-decoration:none;font-size:.8rem;letter-spacing:.08em;text-transform:uppercase;transition:color .2s;}
.nav-links a:hover,.nav-links a.active{color:var(--accent);}
.nav-right{display:flex;align-items:center;gap:11px;}
.theme-toggle{width:37px;height:37px;border-radius:50%;background:var(--surface2);border:1px solid var(--border);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:.95rem;transition:all .2s;color:var(--text);}
.theme-toggle:hover{border-color:var(--accent);}
.nav-cta{background:transparent;border:1px solid var(--accent);color:var(--accent);padding:7px 18px;border-radius:4px;font-size:.76rem;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;text-decoration:none;transition:all .2s;}
.nav-cta:hover{background:var(--accent);color:#000;}
.hamburger{display:none;background:none;border:none;cursor:pointer;flex-direction:column;gap:5px;padding:4px;}
.hamburger span{display:block;width:22px;height:2px;background:var(--text);transition:all .3s;}

/* ═══ HERO ═══ */
#hero{min-height:100vh;display:flex;align-items:center;padding:120px 60px 80px;position:relative;overflow:hidden;}
.hero-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.018) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.018) 1px,transparent 1px);background-size:60px 60px;}
[data-theme="light"] .hero-grid{background-image:linear-gradient(rgba(0,0,0,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(0,0,0,.04) 1px,transparent 1px);}
.hero-blob1{position:absolute;width:600px;height:600px;border-radius:50%;background:radial-gradient(circle,rgba(127,255,110,.09) 0%,transparent 65%);top:-100px;right:-100px;pointer-events:none;}
.hero-blob2{position:absolute;width:400px;height:400px;border-radius:50%;background:radial-gradient(circle,rgba(110,228,255,.07) 0%,transparent 65%);bottom:-50px;left:200px;pointer-events:none;}
.hero-inner{position:relative;z-index:2;max-width:1200px;width:100%;margin:0 auto;display:grid;grid-template-columns:1fr 330px;gap:80px;align-items:center;}

.hero-tag{display:inline-flex;align-items:center;gap:8px;background:rgba(127,255,110,.08);border:1px solid rgba(127,255,110,.22);border-radius:100px;padding:6px 16px;font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;color:var(--accent);margin-bottom:26px;}
.hero-tag::before{content:'';width:6px;height:6px;border-radius:50%;background:var(--accent);animation:pulse 2s infinite;}
@keyframes pulse{0%,100%{opacity:1;transform:scale(1);}50%{opacity:.35;transform:scale(.75);}}

h1{font-family:'Syne',sans-serif;font-size:clamp(3rem,7vw,5.4rem);font-weight:800;line-height:1.0;letter-spacing:-.03em;margin-bottom:18px;}
h1 .accent{color:var(--accent);}

.typed-wrap{font-family:'Syne',sans-serif;font-size:clamp(.95rem,2vw,1.25rem);font-weight:600;color:var(--accent2);margin-bottom:18px;min-height:2em;display:flex;align-items:center;gap:6px;}
.tcursor{display:inline-block;width:2px;height:1.1em;background:var(--accent2);animation:blink .85s step-end infinite;vertical-align:middle;}
@keyframes blink{0%,100%{opacity:1;}50%{opacity:0;}}

.hero-desc{font-size:.98rem;color:var(--muted);max-width:510px;margin-bottom:42px;line-height:1.85;}
.hero-actions{display:flex;gap:16px;flex-wrap:wrap;}

.btn-primary{background:var(--accent);color:#000;border:none;padding:13px 30px;border-radius:6px;font-family:'Syne',sans-serif;font-weight:700;font-size:.83rem;letter-spacing:.04em;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;gap:8px;transition:all .22s;}
.btn-primary:hover{background:#adffa2;transform:translateY(-2px);box-shadow:0 12px 28px rgba(127,255,110,.28);}
.btn-secondary{background:transparent;color:var(--text);border:1px solid var(--border);padding:13px 30px;border-radius:6px;font-family:'Syne',sans-serif;font-weight:600;font-size:.83rem;letter-spacing:.04em;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;gap:8px;transition:all .22s;}
.btn-secondary:hover{border-color:var(--accent);color:var(--accent);}

.hero-card{background:var(--surface);border:1px solid var(--border);border-radius:20px;padding:32px;position:relative;overflow:hidden;}
.hero-card::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,var(--accent),var(--accent2));}
.hero-avatar{width:86px;height:86px;border-radius:50%;background:linear-gradient(135deg,var(--accent),var(--accent2));display:flex;align-items:center;justify-content:center;font-family:'Syne',sans-serif;font-size:1.7rem;font-weight:800;color:#000;margin-bottom:18px;overflow:hidden;}
.hero-avatar img{width:100%;height:100%;object-fit:cover;}
.hero-card h3{font-family:'Syne',sans-serif;font-weight:700;font-size:1.05rem;margin-bottom:3px;}
.hero-card .role{color:var(--accent);font-size:.76rem;letter-spacing:.08em;text-transform:uppercase;margin-bottom:22px;}
.ci-list{display:flex;flex-direction:column;gap:11px;}
.ci{display:flex;align-items:center;gap:11px;font-size:.78rem;color:var(--muted);}
.ci .ico{width:30px;height:30px;border-radius:7px;background:var(--surface2);display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:.82rem;}
.ci a{color:var(--muted);text-decoration:none;transition:color .2s;}
.ci a:hover{color:var(--accent);}
.stats-row{display:flex;border-top:1px solid var(--border);margin-top:22px;padding-top:22px;}
.stat{flex:1;text-align:center;padding:0 6px;border-right:1px solid var(--border);}
.stat:last-child{border-right:none;}
.stat-n{font-family:'Syne',sans-serif;font-size:1.35rem;font-weight:800;color:var(--accent);}
.stat-l{font-size:.65rem;color:var(--muted);text-transform:uppercase;letter-spacing:.06em;}

/* ═══ SECTIONS ═══ */
section{padding:96px 60px;max-width:1200px;margin:0 auto;}
.slabel{font-size:.68rem;letter-spacing:.15em;text-transform:uppercase;color:var(--accent);margin-bottom:11px;display:flex;align-items:center;gap:11px;}
.slabel::after{content:'';flex:1;max-width:38px;height:1px;background:var(--accent);}
h2{font-family:'Syne',sans-serif;font-size:clamp(1.9rem,4vw,2.8rem);font-weight:800;letter-spacing:-.02em;line-height:1.1;margin-bottom:46px;}

/* ═══ ABOUT ═══ */
#about .ag{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:start;}
.about-text p{color:var(--muted);margin-bottom:18px;font-size:.98rem;}
.about-text p strong{color:var(--text);font-weight:500;}
.svcs{display:grid;grid-template-columns:1fr 1fr;gap:14px;}
.svc{background:var(--card-bg);border:1px solid var(--border);border-radius:12px;padding:22px;transition:all .25s;position:relative;overflow:hidden;}
.svc::before{content:'';position:absolute;inset:0;background:linear-gradient(135deg,rgba(127,255,110,.05),transparent);opacity:0;transition:opacity .25s;}
.svc:hover{border-color:rgba(127,255,110,.28);transform:translateY(-2px);}
.svc:hover::before{opacity:1;}
.svc-ico{width:38px;height:38px;border-radius:9px;background:rgba(127,255,110,.1);display:flex;align-items:center;justify-content:center;margin-bottom:12px;font-size:1.05rem;}
.svc h4{font-family:'Syne',sans-serif;font-size:.86rem;font-weight:700;margin-bottom:5px;}
.svc p{font-size:.76rem;color:var(--muted);line-height:1.6;}

/* ═══ RESUME ═══ */
#resume{background:var(--surface);border-top:1px solid var(--border);border-bottom:1px solid var(--border);max-width:100%;padding:96px 60px;}
#resume .inner{max-width:1200px;margin:0 auto;}
.rg{display:grid;grid-template-columns:1fr 1fr;gap:56px;}
.rc h3{font-family:'Syne',sans-serif;font-weight:700;font-size:1.02rem;margin-bottom:28px;display:flex;align-items:center;gap:9px;}
.rc h3 span{width:26px;height:26px;border-radius:6px;background:rgba(127,255,110,.15);display:inline-flex;align-items:center;justify-content:center;font-size:.8rem;}
.tl{display:flex;flex-direction:column;}
.tli{position:relative;padding:0 0 28px 26px;border-left:1px solid var(--border);}
.tli:last-child{padding-bottom:0;border-color:transparent;}
.tli::before{content:'';position:absolute;left:-5px;top:6px;width:9px;height:9px;border-radius:50%;background:var(--accent);box-shadow:0 0 9px rgba(127,255,110,.5);}
.td{font-size:.68rem;color:var(--accent);letter-spacing:.08em;text-transform:uppercase;margin-bottom:4px;}
.tt{font-family:'Syne',sans-serif;font-weight:700;font-size:.9rem;margin-bottom:3px;}
.to{font-size:.76rem;color:var(--accent2);margin-bottom:7px;}
.tx{font-size:.76rem;color:var(--muted);line-height:1.65;}

.skills-sec{margin-top:54px;}
.skills-sec h3{font-family:'Syne',sans-serif;font-weight:700;font-size:1.02rem;margin-bottom:24px;display:flex;align-items:center;gap:9px;}
.skcat{margin-bottom:18px;}
.skcat-l{font-size:.68rem;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin-bottom:9px;}
.sktags{display:flex;flex-wrap:wrap;gap:7px;}
.skt{background:var(--surface2);border:1px solid var(--border);border-radius:6px;padding:4px 11px;font-size:.74rem;color:var(--text);transition:all .2s;cursor:default;}
.skt:hover{border-color:var(--accent);color:var(--accent);background:rgba(127,255,110,.05);}

/* GitHub stats */
.ghsec{margin-top:38px;}
.ghsec h3{font-family:'Syne',sans-serif;font-weight:700;font-size:1.02rem;margin-bottom:18px;display:flex;align-items:center;gap:9px;}
.ghg{display:grid;grid-template-columns:repeat(3,1fr);gap:11px;}
.ghc{background:var(--card-bg);border:1px solid var(--border);border-radius:10px;padding:14px;text-align:center;transition:all .2s;}
.ghc:hover{border-color:rgba(127,255,110,.28);}
.ghn{font-family:'Syne',sans-serif;font-size:1.5rem;font-weight:800;color:var(--accent);display:block;margin-bottom:3px;}
.ghl{font-size:.65rem;color:var(--muted);text-transform:uppercase;letter-spacing:.07em;}
.gh-msg{color:var(--muted);font-size:.78rem;text-align:center;padding:18px;grid-column:1/-1;}

/* ═══ PROJECTS ═══ */
#projects{padding:96px 60px;max-width:1200px;margin:0 auto;}
.fbar{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:44px;}
.fbtn{background:transparent;border:1px solid var(--border);color:var(--muted);padding:7px 18px;border-radius:100px;font-size:.74rem;letter-spacing:.06em;text-transform:uppercase;cursor:pointer;transition:all .2s;}
.fbtn:hover,.fbtn.active{background:var(--accent);border-color:var(--accent);color:#000;}
.pgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;}
.pcard{background:var(--card-bg);border:1px solid var(--border);border-radius:13px;overflow:hidden;transition:all .3s;cursor:pointer;text-decoration:none;display:block;}
.pcard:hover{border-color:rgba(127,255,110,.32);transform:translateY(-4px);box-shadow:0 18px 38px var(--shadow);}
.pthumb{width:100%;height:170px;background:var(--surface2);overflow:hidden;position:relative;}
.pthumb img{width:100%;height:100%;object-fit:cover;transition:transform .4s;filter:brightness(.85) saturate(.9);}
.pcard:hover .pthumb img{transform:scale(1.06);filter:brightness(.95) saturate(1);}
.pover{position:absolute;inset:0;background:linear-gradient(to top,rgba(10,10,15,.75) 0%,transparent 60%);}
.pbody{padding:16px 18px 18px;}
.pcat{font-size:.65rem;letter-spacing:.1em;text-transform:uppercase;color:var(--accent);margin-bottom:5px;}
.ptitle{font-family:'Syne',sans-serif;font-weight:700;font-size:.9rem;color:var(--text);line-height:1.3;display:flex;align-items:center;gap:5px;}
.ptitle svg{transition:opacity .2s;flex-shrink:0;}
.pcard:hover .ptitle svg{opacity:1;}

/* Project card star badge */
.pcard-meta{display:flex;align-items:center;gap:10px;margin-top:8px;}
.pstar{display:inline-flex;align-items:center;gap:4px;font-size:.68rem;color:var(--muted);background:var(--surface2);border:1px solid var(--border);border-radius:100px;padding:3px 9px;transition:all .2s;}
.pstar svg{color:#f0b429;flex-shrink:0;}
.pcard:hover .pstar{border-color:rgba(240,180,41,.35);color:#f0b429;}

/* Modal stats */
.mstats{display:flex;gap:10px;margin-bottom:22px;flex-wrap:wrap;}
.mstat{display:inline-flex;align-items:center;gap:5px;font-size:.74rem;color:var(--muted);background:var(--surface2);border:1px solid var(--border);border-radius:8px;padding:5px 12px;}
.mstat svg{flex-shrink:0;}
.mstat.stars svg{color:#f0b429;}
.mstat.commits svg{color:var(--accent2);}
.mstat span{font-family:'Syne',sans-serif;font-weight:700;color:var(--text);}

/* Modal */
.mbdrop{position:fixed;inset:0;background:rgba(0,0,0,.78);z-index:800;display:flex;align-items:center;justify-content:center;pointer-events:none;transition:opacity .25s;padding:20px;opacity:0;}
.mbdrop.open{opacity:1;pointer-events:all;}
.mbox{background:var(--surface);border:1px solid var(--border);border-radius:20px;max-width:580px;width:100%;max-height:90vh;overflow-y:auto;transform:translateY(18px) scale(.97);transition:transform .25s;position:relative;}
.mbdrop.open .mbox{transform:translateY(0) scale(1);}
.mimg{width:100%;height:230px;object-fit:cover;border-radius:18px 18px 0 0;filter:brightness(.85);}
.mbody{padding:28px;}
.mcat{font-size:.68rem;letter-spacing:.1em;text-transform:uppercase;color:var(--accent);margin-bottom:7px;}
.mtitle{font-family:'Syne',sans-serif;font-size:1.35rem;font-weight:800;margin-bottom:12px;}
.mdesc{font-size:.86rem;color:var(--muted);line-height:1.75;margin-bottom:22px;}
.mclose{position:absolute;top:14px;right:14px;width:34px;height:34px;border-radius:50%;background:rgba(0,0,0,.5);border:none;color:#fff;cursor:pointer;font-size:.95rem;display:flex;align-items:center;justify-content:center;transition:background .2s;z-index:1;}
.mclose:hover{background:rgba(0,0,0,.8);}
.mghlink{display:inline-flex;align-items:center;gap:7px;background:var(--accent);color:#000;border:none;padding:11px 22px;border-radius:6px;font-family:'Syne',sans-serif;font-weight:700;font-size:.8rem;letter-spacing:.04em;text-decoration:none;transition:all .2s;}
.mghlink:hover{background:#adffa2;transform:translateY(-1px);}

/* ═══ CONTACT ═══ */
#contact{padding:96px 60px;max-width:1200px;margin:0 auto;}
.contact-intro{margin-bottom:40px;}
.contact-intro p{color:var(--muted);font-size:.98rem;max-width:640px;}
.cg{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:start;}
.cinfo{display:flex;flex-direction:column;gap:0;}
.clinks{display:flex;flex-direction:column;gap:11px;margin-bottom:20px;}
.clink{display:flex;align-items:center;gap:13px;padding:13px 16px;background:var(--card-bg);border:1px solid var(--border);border-radius:10px;color:var(--muted);text-decoration:none;transition:all .2s;font-size:.81rem;}
.clink:hover{border-color:var(--accent);color:var(--accent);}
.clink .ci2{font-size:1rem;width:20px;text-align:center;}
.vctr{display:inline-flex;align-items:center;gap:8px;padding:9px 14px;background:var(--card-bg);border:1px solid var(--border);border-radius:8px;font-size:.76rem;color:var(--muted);}
.vctr strong{color:var(--accent);font-family:'Syne',sans-serif;font-size:.95rem;}

/* Social icons row */
.socials{display:flex;gap:10px;margin-top:20px;flex-wrap:wrap;}
.soc{display:inline-flex;align-items:center;gap:8px;padding:9px 16px;background:var(--card-bg);border:1px solid var(--border);border-radius:8px;color:var(--muted);text-decoration:none;font-size:.78rem;transition:all .2s;}
.soc:hover{transform:translateY(-2px);}
.soc svg{width:15px;height:15px;flex-shrink:0;}
.soc.gh:hover{border-color:#6e7681;color:var(--text);}
.soc.li:hover{border-color:#0a66c2;color:#0a66c2;}
.soc.lc:hover{border-color:#ffa116;color:#ffa116;}
.soc.tw:hover{border-color:#1d9bf0;color:#1d9bf0;}

/* Certifications */
#certs{padding:96px 60px;max-width:1200px;margin:0 auto;}
.cert-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px;}
.cert-card{background:var(--card-bg);border:1px solid var(--border);border-radius:13px;padding:22px;display:flex;gap:16px;align-items:flex-start;transition:all .25s;position:relative;overflow:hidden;text-decoration:none;color:inherit;}
.cert-card::before{content:'';position:absolute;inset:0;background:linear-gradient(135deg,rgba(127,255,110,.04),transparent);opacity:0;transition:opacity .25s;}
.cert-card:hover{border-color:rgba(127,255,110,.28);transform:translateY(-2px);}
.cert-card:hover::before{opacity:1;}
.cert-logo{width:44px;height:44px;border-radius:10px;background:var(--surface2);display:flex;align-items:center;justify-content:center;font-size:1.3rem;flex-shrink:0;}
.cert-issuer{font-size:.67rem;letter-spacing:.1em;text-transform:uppercase;color:var(--accent);margin-bottom:4px;}
.cert-name{font-family:'Syne',sans-serif;font-weight:700;font-size:.88rem;line-height:1.35;margin-bottom:5px;}
.cert-date{font-size:.72rem;color:var(--muted);}
.cert-verify{display:inline-flex;align-items:center;gap:4px;font-size:.71rem;color:var(--accent2);margin-top:7px;}

/* Form */
.cform{display:flex;flex-direction:column;gap:14px;}
.frow{display:grid;grid-template-columns:1fr 1fr;gap:14px;}
.fg{display:flex;flex-direction:column;gap:5px;}
.fg label{font-size:.7rem;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);}
.fg input,.fg textarea{background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:11px 14px;color:var(--text);font-family:'DM Sans',sans-serif;font-size:.86rem;outline:none;transition:border-color .2s;resize:none;}
.fg input:focus,.fg textarea:focus{border-color:var(--accent);}
.fg textarea{min-height:130px;}
.fsub{background:var(--accent);color:#000;border:none;padding:13px 30px;border-radius:8px;font-family:'Syne',sans-serif;font-weight:700;font-size:.84rem;letter-spacing:.04em;cursor:pointer;transition:all .2s;align-self:flex-start;display:flex;align-items:center;gap:7px;}
.fsub:hover{background:#adffa2;transform:translateY(-2px);box-shadow:0 8px 22px rgba(127,255,110,.3);}

/* ═══ FOOTER ═══ */
footer{border-top:1px solid var(--border);padding:26px 60px;display:flex;align-items:center;justify-content:space-between;}
.fcopy{font-size:.74rem;color:var(--muted);}
.flinks{display:flex;gap:22px;}
.flinks a{font-size:.74rem;color:var(--muted);text-decoration:none;transition:color .2s;}
.flinks a:hover{color:var(--accent);}

/* Back to top */
#btt{position:fixed;bottom:26px;right:26px;width:42px;height:42px;border-radius:50%;background:var(--accent);border:none;color:#000;font-size:1rem;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 18px rgba(127,255,110,.35);z-index:400;transform:translateY(10px);pointer-events:none;transition:all .3s;opacity:0;}
#btt.vis{opacity:1;transform:translateY(0);pointer-events:all;}
#btt:hover{background:#adffa2;transform:translateY(-3px);}

/* Fade in */
.fi{transform:translateY(20px);transition:opacity .6s,transform .6s;opacity:0;}
.fi.vis{opacity:1;transform:translateY(0);}
.fi:nth-child(1){transition-delay:.05s}.fi:nth-child(2){transition-delay:.1s}.fi:nth-child(3){transition-delay:.15s}.fi:nth-child(4){transition-delay:.2s}.fi:nth-child(5){transition-delay:.25s}.fi:nth-child(6){transition-delay:.3s}

/* ═══ RESPONSIVE ═══ */
@media(max-width:900px){
  nav{padding:15px 18px;}
  .nav-links{display:none;position:fixed;top:60px;left:0;right:0;background:var(--surface);flex-direction:column;padding:18px;gap:16px;border-bottom:1px solid var(--border);z-index:490;}
  .nav-links.open{display:flex;}
  .hamburger{display:flex;}
  .nav-cta{display:none;}
  #hero{padding:96px 18px 56px;}
  .hero-inner{grid-template-columns:1fr;}
  .hero-card{display:none;}
  section{padding:56px 18px;}
  #resume,#projects,#contact,#certs{padding:56px 18px;}
  #about .ag{grid-template-columns:1fr;gap:28px;}
  .svcs{grid-template-columns:1fr;}
  .rg{grid-template-columns:1fr;gap:36px;}
  .pgrid{grid-template-columns:1fr 1fr;}
  .cg{grid-template-columns:1fr;gap:32px;}
  .frow{grid-template-columns:1fr;}
  footer{flex-direction:column;gap:12px;padding:18px;text-align:center;}
  .ghg{grid-template-columns:repeat(3,1fr);}
}
@media(max-width:560px){
  .pgrid{grid-template-columns:1fr;}
  .ghg{grid-template-columns:1fr 1fr;}
}
