/* ═══════════════════════════════════════════════
   ISHFAQUE AHMED — PORTFOLIO v4.0
   Dark: Deep Navy + Electric Blue
   Light: Warm Neutral + Crimson Red  
═══════════════════════════════════════════════ */
@import url('https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;500;600;700;800;900&family=Space+Grotesk:wght@300;400;500;600;700&family=JetBrains+Mono:wght@400;500;600&display=swap');

/* ── DARK THEME (default) ── */
:root {
  --bg:#050810;--bg2:#090e1c;--bg3:#0e1428;--bg4:#141c32;
  --acc:#3b82f6;--acc2:#1d4ed8;--acc3:#60a5fa;--acc4:#93c5fd;
  --glow:rgba(59,130,246,.22);--glow2:rgba(59,130,246,.08);--glow3:rgba(59,130,246,.04);
  --text:#f0f4ff;--text2:#8fa3c0;--text3:#3d5068;
  --border:rgba(59,130,246,.22);--border2:rgba(59,130,246,.1);--border3:rgba(59,130,246,.05);
  --card:rgba(9,14,28,.95);--card2:rgba(14,20,40,.8);--nav:rgba(5,8,16,.96);
  --grid:rgba(59,130,246,.045);
  --grad1:linear-gradient(135deg,#3b82f6,#1d4ed8);
  --grad2:linear-gradient(135deg,#60a5fa,#3b82f6);
  --shadow:rgba(0,0,0,.4);
}

/* ── LIGHT THEME ── */
[data-theme="light"] {
  --bg:#f5f7ff;--bg2:#edf0fb;--bg3:#e3e8f5;--bg4:#d5dbed;
  --acc:#dc2626;--acc2:#b91c1c;--acc3:#ef4444;--acc4:#fca5a5;
  --glow:rgba(220,38,38,.16);--glow2:rgba(220,38,38,.06);--glow3:rgba(220,38,38,.03);
  --text:#0d1117;--text2:#3d4a5c;--text3:#9ca3af;
  --border:rgba(220,38,38,.22);--border2:rgba(220,38,38,.1);--border3:rgba(220,38,38,.05);
  --card:rgba(255,255,255,.96);--card2:rgba(245,247,255,.9);--nav:rgba(245,247,255,.97);
  --grid:rgba(220,38,38,.04);
  --grad1:linear-gradient(135deg,#dc2626,#b91c1c);
  --grad2:linear-gradient(135deg,#ef4444,#dc2626);
  --shadow:rgba(0,0,0,.1);
}

*,*::before,*::after{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;scroll-padding-top:72px;}
body{background:var(--bg);color:var(--text);font-family:'Outfit',sans-serif;font-size:15px;line-height:1.75;overflow-x:hidden;transition:background .5s,color .5s;}
::-webkit-scrollbar{width:4px;}
::-webkit-scrollbar-track{background:var(--bg);}
::-webkit-scrollbar-thumb{background:var(--acc);border-radius:2px;}
::selection{background:var(--acc);color:#fff;}
a{text-decoration:none;color:inherit;}
button{border:none;background:none;font-family:inherit;}
img{max-width:100%;display:block;}

/* ── BACKGROUND ── */
.grid-bg{position:fixed;inset:0;z-index:0;pointer-events:none;background-image:linear-gradient(var(--grid) 1px,transparent 1px),linear-gradient(90deg,var(--grid) 1px,transparent 1px);background-size:64px 64px;animation:gridDrift 32s linear infinite;}
@keyframes gridDrift{to{background-position:64px 64px;}}
.grid-fade{position:fixed;inset:0;z-index:1;pointer-events:none;background:radial-gradient(ellipse 90% 80% at 50% 40%,transparent 20%,var(--bg) 80%);}
#particles-js{position:fixed;inset:0;z-index:2;pointer-events:none;opacity:.45;}

/* ── NAVBAR ── */
.navbar{position:fixed;top:0;left:0;right:0;z-index:900;height:68px;display:flex;align-items:center;justify-content:space-between;padding:0 56px;background:var(--nav);backdrop-filter:blur(24px);border-bottom:1px solid var(--border3);transition:all .4s;}
.navbar.scrolled{box-shadow:0 4px 36px var(--shadow);border-bottom-color:var(--border2);}
.nav-logo{font-family:'Space Grotesk',sans-serif;font-size:1.3rem;font-weight:700;color:var(--text);letter-spacing:-.03em;}
.nav-logo span{color:var(--acc);}
.nav-links{list-style:none;display:flex;gap:0;align-items:center;}
.nav-links a{font-family:'Outfit',sans-serif;font-size:13.5px;font-weight:500;color:var(--text2);padding:6px 13px;border-radius:7px;transition:color .25s;position:relative;letter-spacing:.01em;}
.nav-links a::after{content:'';position:absolute;bottom:2px;left:13px;width:0;height:2px;background:var(--acc);border-radius:2px;transition:width .3s;}
.nav-links a:hover,.nav-links a.active{color:var(--acc);}
.nav-links a:hover::after,.nav-links a.active::after{width:calc(100% - 26px);}
.nav-right{display:flex;align-items:center;gap:10px;}
.theme-btn{display:flex;align-items:center;gap:7px;padding:7px 15px;border-radius:50px;border:1px solid var(--border2);background:var(--card2);font-size:12px;font-weight:500;color:var(--text2);cursor:pointer;transition:all .3s;}
.theme-btn i{color:var(--acc);font-size:13px;}
.theme-btn:hover{border-color:var(--acc);color:var(--acc);}
.btn-hire{padding:9px 24px;background:var(--acc);color:#fff;border-radius:8px;font-family:'Outfit',sans-serif;font-size:13px;font-weight:600;cursor:pointer;transition:all .3s;letter-spacing:.03em;}
.btn-hire:hover{background:var(--acc2);transform:translateY(-1px);box-shadow:0 6px 22px var(--glow);}
.hamburger{display:none;flex-direction:column;gap:5px;cursor:pointer;padding:4px;}
.hamburger span{display:block;width:22px;height:2px;background:var(--text2);border-radius:2px;transition:all .3s;}
.mobile-nav{display:none;position:fixed;top:68px;left:0;right:0;background:var(--nav);backdrop-filter:blur(22px);border-bottom:1px solid var(--border2);z-index:899;padding:14px 22px;flex-direction:column;gap:4px;}
.mobile-nav a{padding:11px 16px;border-radius:8px;font-size:14px;font-weight:500;color:var(--text2);transition:all .3s;display:block;}
.mobile-nav a:hover{background:var(--glow2);color:var(--acc);}
.mobile-nav.open{display:flex;}

/* ── LAYOUT ── */
section{position:relative;z-index:10;padding:110px 0 88px;}
.container{max-width:1120px;margin:0 auto;padding:0 52px;}
.glow-line{height:1px;background:linear-gradient(90deg,transparent,var(--acc),transparent);opacity:.18;position:relative;z-index:10;}

/* ── SECTION HEADERS ── */
.sec-chip{display:inline-flex;align-items:center;gap:9px;font-family:'JetBrains Mono',monospace;font-size:11px;font-weight:500;color:var(--acc);letter-spacing:.25em;text-transform:uppercase;margin-bottom:14px;}
.sec-chip::before{content:'';display:inline-block;width:26px;height:1px;background:var(--acc);}
.sec-h2{font-family:'Space Grotesk',sans-serif;font-size:clamp(2rem,4vw,3rem);font-weight:700;color:var(--text);letter-spacing:-.04em;line-height:1.08;margin-bottom:14px;}
.sec-h2 em{color:var(--acc);font-style:normal;}
.sec-bar{width:44px;height:3px;background:linear-gradient(90deg,var(--acc),transparent);border-radius:3px;margin-bottom:56px;}

/* ── ANIMATIONS ── */
.anim-l{opacity:0;transform:translateX(-48px);transition:opacity .8s cubic-bezier(.22,1,.36,1),transform .8s cubic-bezier(.22,1,.36,1);}
.anim-r{opacity:0;transform:translateX(48px);transition:opacity .8s cubic-bezier(.22,1,.36,1),transform .8s cubic-bezier(.22,1,.36,1);}
.anim-u{opacity:0;transform:translateY(40px);transition:opacity .75s cubic-bezier(.22,1,.36,1),transform .75s cubic-bezier(.22,1,.36,1);}
.anim-l.in,.anim-r.in,.anim-u.in{opacity:1;transform:translate(0);}
.d1{transition-delay:.06s;}.d2{transition-delay:.13s;}.d3{transition-delay:.2s;}
.d4{transition-delay:.27s;}.d5{transition-delay:.34s;}.d6{transition-delay:.41s;}

/* ═══════════ HERO ═══════════ */
#hero{min-height:100vh;display:flex;align-items:center;justify-content:center;text-align:center;padding:90px 24px 60px;overflow:hidden;}
.hero-inner{position:relative;z-index:10;max-width:780px;margin:0 auto;}

/* Profile Image — animated gradient border ring */
.photo-wrap{position:relative;display:inline-block;margin-bottom:36px;}
.photo-ring-outer{position:absolute;inset:-12px;border-radius:50%;background:conic-gradient(from 0deg,transparent 0%,var(--acc) 25%,transparent 50%,var(--acc3) 75%,transparent 100%);animation:spinRing 6s linear infinite;opacity:.55;}
@keyframes spinRing{to{transform:rotate(360deg);}}
.photo-ring-inner{position:absolute;inset:-6px;border-radius:50%;border:1.5px dashed var(--border);animation:spinRingR 20s linear infinite;}
@keyframes spinRingR{to{transform:rotate(-360deg);}}
.photo-glow{position:absolute;inset:-18px;border-radius:50%;background:radial-gradient(circle,var(--glow) 0%,transparent 70%);animation:glowPulse 3.5s ease-in-out infinite;}
@keyframes glowPulse{0%,100%{opacity:.5;transform:scale(1);}50%{opacity:1;transform:scale(1.1);}}
.photo-ring{width:174px;height:174px;border-radius:50%;background:var(--bg3);position:relative;z-index:2;border:3px solid var(--bg4);box-shadow:0 0 0 1px var(--border2),0 8px 40px var(--shadow);overflow:hidden;}
.photo-ring img{width:100%;height:100%;object-fit:cover;border-radius:50%;}
/* Orbit dots */
.photo-wrap::before,.photo-wrap::after{content:'';position:absolute;width:8px;height:8px;border-radius:50%;background:var(--acc);box-shadow:0 0 10px var(--acc);z-index:3;}
.photo-wrap::before{top:14px;right:16px;animation:dotBlink 3s ease infinite;}
.photo-wrap::after{bottom:14px;left:16px;animation:dotBlink 3s ease infinite 1.5s;background:var(--acc3);}
@keyframes dotBlink{0%,100%{opacity:1;transform:scale(1);}50%{opacity:.3;transform:scale(.5);}}
.avail{position:absolute;bottom:-2px;left:50%;transform:translateX(-50%);background:var(--bg2);border:1px solid rgba(34,197,94,.4);border-radius:20px;padding:5px 14px;font-family:'JetBrains Mono',monospace;font-size:10px;color:#22c55e;display:flex;align-items:center;gap:6px;white-space:nowrap;box-shadow:0 0 20px rgba(34,197,94,.15);z-index:5;}
.ping-dot{width:7px;height:7px;border-radius:50%;background:#22c55e;animation:ping 1.8s ease infinite;}
@keyframes ping{0%,100%{box-shadow:0 0 0 0 rgba(34,197,94,.55);}50%{box-shadow:0 0 0 8px rgba(34,197,94,0);}}

/* Hero Text */
.hero-name{font-family:'Space Grotesk',sans-serif;font-size:clamp(2.8rem,6.5vw,5.2rem);font-weight:700;letter-spacing:-.04em;line-height:1.04;color:var(--text);margin-bottom:12px;}
.hero-name .acc{color:var(--acc);}
.glitch{position:relative;display:inline-block;}
.glitch::before,.glitch::after{content:attr(data-text);position:absolute;top:0;left:0;width:100%;height:100%;}
.glitch::before{color:var(--acc3);clip-path:polygon(0 0,100% 0,100% 38%,0 38%);animation:g1 6s infinite;opacity:.7;}
.glitch::after{color:var(--acc2);clip-path:polygon(0 62%,100% 62%,100% 100%,0 100%);animation:g2 6s infinite;opacity:.7;}
@keyframes g1{0%,94%,100%{transform:none;opacity:0;}95%{transform:skewX(-14deg) translateX(2px);opacity:.7;}96%{transform:skewX(10deg) translateX(-1px);opacity:.5;}}
@keyframes g2{0%,92%,100%{transform:none;opacity:0;}93%{transform:skewX(10deg) translateX(-2px);opacity:.6;}94%{transform:skewX(-8deg) translateX(2px);opacity:.4;}}
.typed-wrap{margin-bottom:18px;min-height:34px;}
.typed-txt{font-family:'JetBrains Mono',monospace;font-size:clamp(.95rem,2.3vw,1.2rem);color:var(--acc);font-weight:500;letter-spacing:.04em;}
.hero-bio{font-family:'Outfit',sans-serif;font-size:clamp(13.5px,1.7vw,15.5px);color:var(--text2);max-width:600px;margin:0 auto 32px;line-height:1.9;font-weight:400;}

/* Stats */
.stats-bar{display:flex;justify-content:center;gap:0;border:1px solid var(--border2);border-radius:14px;background:var(--card);backdrop-filter:blur(12px);overflow:hidden;margin-bottom:34px;max-width:520px;margin-left:auto;margin-right:auto;}
.stat-item{flex:1;padding:18px 16px;text-align:center;border-right:1px solid var(--border2);transition:background .3s;}
.stat-item:last-child{border-right:none;}
.stat-item:hover{background:var(--glow3);}
.stat-n{display:block;font-family:'Space Grotesk',sans-serif;font-size:1.55rem;font-weight:700;color:var(--text);letter-spacing:-.02em;line-height:1;}
.stat-l{display:block;font-family:'JetBrains Mono',monospace;font-size:9px;color:var(--text3);text-transform:uppercase;letter-spacing:.2em;margin-top:5px;}

/* Buttons */
.hero-btns{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;margin-bottom:30px;}
.btn-prim{display:inline-flex;align-items:center;gap:8px;padding:13px 28px;background:var(--acc);color:#fff;border-radius:10px;font-family:'Outfit',sans-serif;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s;letter-spacing:.02em;border:2px solid var(--acc);}
.btn-prim:hover{background:var(--acc2);border-color:var(--acc2);transform:translateY(-2px);box-shadow:0 10px 32px var(--glow);}
.btn-sec{display:inline-flex;align-items:center;gap:8px;padding:13px 28px;background:transparent;color:var(--text);border:2px solid var(--border);border-radius:10px;font-family:'Outfit',sans-serif;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s;letter-spacing:.02em;}
.btn-sec:hover{border-color:var(--acc);color:var(--acc);transform:translateY(-2px);box-shadow:0 8px 28px var(--glow);}
.hero-socs{display:flex;justify-content:center;gap:10px;flex-wrap:wrap;}
.soc{width:40px;height:40px;border:1px solid var(--border2);border-radius:10px;display:flex;align-items:center;justify-content:center;color:var(--text3);font-size:15px;transition:all .3s;}
.soc:hover{border-color:var(--acc);color:var(--acc);background:var(--glow2);transform:translateY(-3px);box-shadow:0 6px 20px var(--glow);}
.scroll-cue{position:absolute;bottom:28px;left:50%;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;gap:5px;font-family:'JetBrains Mono',monospace;font-size:10px;color:var(--text3);letter-spacing:.18em;text-transform:uppercase;animation:scrollBob 2.5s ease-in-out infinite;}
@keyframes scrollBob{0%,100%{transform:translateX(-50%) translateY(0);}50%{transform:translateX(-50%) translateY(7px);}}

/* ═══════════ SERVICES ═══════════ */
#services{background:var(--bg2);}
.svc-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:18px;}
.svc-card{background:var(--card);border:1px solid var(--border3);border-radius:16px;padding:28px 26px;position:relative;overflow:hidden;transition:all .4s cubic-bezier(.22,1,.36,1);}
.svc-card::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse 80% 60% at 50% 0%,var(--glow3),transparent);opacity:0;transition:opacity .4s;}
.svc-card::after{content:'';position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,var(--acc),transparent);opacity:0;transition:opacity .4s;}
.svc-card:hover{border-color:var(--border);transform:translateY(-6px);box-shadow:0 20px 50px var(--shadow);}
.svc-card:hover::before,.svc-card:hover::after{opacity:1;}
.svc-icon-wrap{width:50px;height:50px;border-radius:12px;background:var(--glow2);border:1px solid var(--border2);display:flex;align-items:center;justify-content:center;font-size:22px;margin-bottom:16px;transition:all .4s;}
.svc-card:hover .svc-icon-wrap{background:var(--glow);border-color:var(--acc);transform:scale(1.08);}
.svc-icon{font-size:22px;}
.svc-title{font-family:'Space Grotesk',sans-serif;font-size:16px;font-weight:600;color:var(--text);margin-bottom:9px;letter-spacing:-.02em;}
.svc-desc{font-size:13.5px;color:var(--text2);line-height:1.75;margin-bottom:14px;}
.svc-tags{display:flex;flex-wrap:wrap;gap:6px;}
.stag{font-family:'JetBrains Mono',monospace;font-size:10.5px;padding:3px 9px;background:var(--glow2);border:1px solid var(--border2);border-radius:5px;color:var(--acc3);font-weight:500;}

/* ═══════════ PROJECTS ═══════════ */
#projects{background:var(--bg);}
.filter-bar{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:38px;}
.f-btn{font-family:'Outfit',sans-serif;font-size:13px;font-weight:500;padding:8px 18px;border:1px solid var(--border2);border-radius:8px;color:var(--text2);cursor:pointer;transition:all .3s;background:var(--card);}
.f-btn:hover,.f-btn.on{background:var(--acc);border-color:var(--acc);color:#fff;}
.proj-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:20px;}
.proj-card{background:var(--card);border:1px solid var(--border3);border-radius:16px;overflow:hidden;transition:all .4s cubic-bezier(.22,1,.36,1);position:relative;display:flex;flex-direction:column;}
.proj-card::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,var(--acc),transparent);opacity:0;transition:opacity .4s;}
.proj-card:hover{border-color:var(--border);box-shadow:0 20px 50px var(--shadow);}
.proj-card:hover::before{opacity:1;}
.proj-top{padding:20px 20px 0;display:flex;justify-content:space-between;align-items:flex-start;}
.proj-icon{font-size:28px;line-height:1;}
.proj-links{display:flex;gap:8px;}
.proj-links a{width:32px;height:32px;border:1px solid var(--border2);border-radius:8px;display:flex;align-items:center;justify-content:center;color:var(--text3);font-size:12px;transition:all .3s;}
.proj-links a:hover{border-color:var(--acc);color:var(--acc);background:var(--glow2);}
.proj-body{padding:14px 20px 20px;display:flex;flex-direction:column;gap:9px;flex:1;}
.pbadge{font-family:'JetBrains Mono',monospace;font-size:10px;padding:3px 10px;border-radius:20px;display:inline-block;align-self:flex-start;}
.blive{background:rgba(34,197,94,.1);color:#22c55e;border:1px solid rgba(34,197,94,.2);}
.bdash{background:rgba(59,130,246,.1);color:var(--acc);border:1px solid var(--border2);}
.bml{background:rgba(139,92,246,.1);color:#a78bfa;border:1px solid rgba(139,92,246,.2);}
.proj-title{font-family:'Space Grotesk',sans-serif;font-size:16px;font-weight:600;color:var(--text);letter-spacing:-.02em;line-height:1.35;}
.proj-desc{font-size:13.5px;color:var(--text2);line-height:1.72;}
.proj-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:4px;}
.ptag{font-family:'JetBrains Mono',monospace;font-size:10.5px;padding:3px 9px;background:var(--glow2);border:1px solid var(--border2);border-radius:5px;color:var(--acc3);transition:all .3s;}
.proj-card:hover .ptag{background:var(--glow3);}

/* ═══════════ SKILLS ═══════════ */
#skills{background:var(--bg2);}
.skills-wrap{display:grid;grid-template-columns:1fr 1fr;gap:48px 72px;}
.sg{margin-bottom:28px;}
.sg-title{font-family:'Space Grotesk',sans-serif;font-size:13px;font-weight:600;color:var(--acc);text-transform:uppercase;letter-spacing:.1em;margin-bottom:16px;padding-bottom:8px;border-bottom:1px solid var(--border2);}
.bar-item{margin-bottom:12px;}
.bar-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px;}
.bar-name{font-family:'Outfit',sans-serif;font-size:13.5px;color:var(--text);font-weight:500;}
.bar-pct{font-family:'JetBrains Mono',monospace;font-size:11px;color:var(--acc);font-weight:500;}
.bar-track{height:5px;background:var(--glow2);border-radius:3px;overflow:hidden;}
.bar-fill{height:100%;width:0;background:var(--grad1);border-radius:3px;transition:width 1.2s cubic-bezier(.22,1,.36,1);}
.chips{display:flex;flex-wrap:wrap;gap:8px;}
.chip{font-family:'JetBrains Mono',monospace;font-size:11.5px;padding:7px 13px;background:var(--card);border:1px solid var(--border2);border-radius:8px;color:var(--text2);display:flex;align-items:center;gap:7px;transition:all .3s;}
.chip i{color:var(--acc);font-size:12px;}
.chip:hover{border-color:var(--acc);color:var(--text);background:var(--glow2);}

/* Tools Logo Grid */
.tools-section{grid-column:1/-1;margin-top:16px;}
.tools-grid-title{font-family:'Space Grotesk',sans-serif;font-size:13px;font-weight:600;color:var(--acc);text-transform:uppercase;letter-spacing:.1em;margin-bottom:20px;padding-bottom:8px;border-bottom:1px solid var(--border2);}
.tools-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(90px,1fr));gap:12px;}
.tool-item{display:flex;flex-direction:column;align-items:center;gap:8px;padding:16px 10px;background:var(--card);border:1px solid var(--border2);border-radius:12px;transition:all .35s;cursor:default;}
.tool-item:hover{border-color:var(--acc);transform:translateY(-4px);box-shadow:0 10px 28px var(--shadow);}
.tool-emoji{font-size:26px;line-height:1;transition:transform .3s;}
.tool-item:hover .tool-emoji{transform:scale(1.18);}
.tool-name{font-family:'JetBrains Mono',monospace;font-size:9.5px;color:var(--text3);text-align:center;text-transform:uppercase;letter-spacing:.08em;line-height:1.3;}
.tool-item:hover .tool-name{color:var(--acc);}

/* ═══════════ EXPERIENCE ═══════════ */
#experience{background:var(--bg);}
.exp-list{display:flex;flex-direction:column;gap:0;position:relative;}
.exp-list::before{content:'';position:absolute;left:20px;top:28px;bottom:28px;width:1px;background:linear-gradient(to bottom,var(--acc),transparent);opacity:.22;}
.exp-card{background:var(--card);border:1px solid var(--border3);border-radius:14px;padding:24px 24px 24px 52px;margin-bottom:16px;position:relative;transition:all .4s cubic-bezier(.22,1,.36,1);}
.exp-card::before{content:'';position:absolute;left:13px;top:30px;width:15px;height:15px;border-radius:50%;background:var(--bg3);border:2px solid var(--acc);box-shadow:0 0 12px var(--glow);transition:all .3s;}
.exp-card:hover{border-color:var(--border);transform:translateX(4px);box-shadow:0 12px 36px var(--shadow);}
.exp-card:hover::before{background:var(--acc);}
.exp-head{display:flex;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;gap:10px;margin-bottom:12px;}
.exp-role{font-family:'Space Grotesk',sans-serif;font-size:16px;font-weight:600;color:var(--text);letter-spacing:-.02em;}
.exp-co{font-size:13px;color:var(--acc);font-weight:500;margin-top:2px;}
.exp-period{font-family:'JetBrains Mono',monospace;font-size:11px;color:var(--text3);background:var(--card2);border:1px solid var(--border2);padding:4px 11px;border-radius:6px;white-space:nowrap;}
.exp-pts{list-style:none;display:flex;flex-direction:column;gap:6px;}
.exp-pts li{font-size:13.5px;color:var(--text2);padding-left:16px;position:relative;line-height:1.65;}
.exp-pts li::before{content:'→';position:absolute;left:0;color:var(--acc);font-size:11px;}
.ebadge{display:inline-block;margin-top:10px;font-size:10px;font-family:'JetBrains Mono',monospace;padding:3px 10px;border-radius:20px;}
.eb-c{background:var(--glow2);color:var(--acc);border:1px solid var(--border);}
.eb-live{background:rgba(34,197,94,.08);color:#22c55e;border:1px solid rgba(34,197,94,.25);}

/* ═══════════ ABOUT ═══════════ */
#about{background:var(--bg2);}
.about-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:60px;align-items:start;}
.about-text p{font-size:14.5px;color:var(--text2);line-height:2;margin-bottom:16px;}
.about-text strong{color:var(--acc);font-weight:600;}
.about-cards{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:24px;}
.abt-c{background:var(--card);border:1px solid var(--border2);border-radius:12px;padding:20px;transition:all .35s;}
.abt-c:hover{border-color:var(--acc);transform:translateY(-3px);box-shadow:0 10px 28px var(--shadow);}
.abt-c .ico{font-size:22px;margin-bottom:10px;}
.abt-c h4{font-family:'Space Grotesk',sans-serif;font-size:12px;font-weight:600;color:var(--acc);text-transform:uppercase;letter-spacing:.08em;margin-bottom:6px;}
.abt-c p{font-size:12.5px;color:var(--text2);line-height:1.7;margin:0;}
.info-list{display:flex;flex-direction:column;gap:9px;}
.info-row{display:flex;align-items:flex-start;gap:13px;padding:13px 15px;background:var(--card);border:1px solid var(--border2);border-radius:10px;transition:all .3s;}
.info-row:hover{border-color:var(--acc);background:var(--glow2);}
.info-row i{color:var(--acc);font-size:13px;margin-top:2px;min-width:14px;}
.il{font-size:10px;color:var(--text3);text-transform:uppercase;letter-spacing:.1em;font-family:'JetBrains Mono',monospace;margin-bottom:2px;}
.iv{font-size:13.5px;color:var(--text);font-weight:500;}
.iv a{color:var(--acc);}

/* ═══════════ CERTIFICATIONS ═══════════ */
#certifications{background:var(--bg);}
.cert-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:16px;}
.cert-card{background:var(--card);border:1px solid var(--border2);border-radius:14px;padding:24px;display:flex;flex-direction:column;gap:9px;transition:all .4s cubic-bezier(.22,1,.36,1);position:relative;overflow:hidden;}
.cert-card::after{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:var(--grad1);opacity:0;transition:opacity .4s;}
.cert-card:hover{border-color:var(--acc);transform:translateY(-5px);box-shadow:0 16px 40px var(--shadow);}
.cert-card:hover::after{opacity:1;}
.cert-ico{font-size:28px;}
.cert-name{font-family:'Space Grotesk',sans-serif;font-size:14px;font-weight:600;color:var(--text);line-height:1.35;}
.cert-from{font-size:12.5px;color:var(--acc);font-weight:500;}
.cert-date{font-size:11px;color:var(--text3);font-family:'JetBrains Mono',monospace;}
.awards-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:16px;}
.award-card{background:var(--card);border:1px solid var(--border2);border-radius:14px;padding:24px;position:relative;overflow:hidden;transition:all .4s cubic-bezier(.22,1,.36,1);}
.award-card::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:var(--grad1);opacity:.5;transition:opacity .4s;}
.award-card:hover{border-color:var(--acc);transform:translateY(-5px);box-shadow:0 16px 40px var(--shadow);}
.award-card:hover::before{opacity:1;}
.award-em{font-size:30px;margin-bottom:12px;display:block;}
.award-title{font-family:'Space Grotesk',sans-serif;font-size:14px;font-weight:600;color:var(--text);margin-bottom:6px;line-height:1.4;}
.award-org{font-size:12.5px;color:var(--acc);font-weight:500;margin-bottom:4px;}
.award-date{font-size:11px;color:var(--text3);font-family:'JetBrains Mono',monospace;}

/* ═══════════ CONTACT ═══════════ */
#contact{background:var(--bg);}
.contact-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:56px;align-items:start;}
.contact-tag{font-size:14.5px;color:var(--text2);line-height:1.9;margin-bottom:26px;}
.clinks{display:flex;flex-direction:column;gap:9px;}
.clink{display:flex;align-items:center;gap:13px;padding:14px 18px;background:var(--card);border:1px solid var(--border2);border-radius:11px;color:var(--text);transition:all .3s;}
.clink:hover{border-color:var(--acc);transform:translateX(5px);box-shadow:0 0 28px var(--glow);background:var(--glow2);}
.clink i{font-size:15px;color:var(--acc);min-width:16px;text-align:center;}
.cl{font-size:10px;color:var(--text3);text-transform:uppercase;letter-spacing:.1em;font-family:'JetBrains Mono',monospace;}
.cv{font-size:13.5px;color:var(--text);font-weight:500;}
.soc-strip{display:flex;flex-wrap:wrap;gap:8px;margin-top:22px;}
.soc-btn{padding:8px 16px;background:var(--card);border:1px solid var(--border2);border-radius:8px;font-size:12px;color:var(--text2);display:flex;align-items:center;gap:7px;font-weight:500;transition:all .3s;}
.soc-btn i{color:var(--acc);font-size:13px;}
.soc-btn:hover{border-color:var(--acc);color:var(--acc);background:var(--glow2);transform:translateY(-2px);}
.cform{display:flex;flex-direction:column;gap:16px;}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:13px;}
.fg{display:flex;flex-direction:column;gap:5px;}
.fg label{font-size:11px;font-family:'JetBrains Mono',monospace;color:var(--text2);letter-spacing:.1em;text-transform:uppercase;}
.fg input,.fg textarea{background:var(--card);border:1px solid var(--border2);border-radius:9px;padding:13px 15px;color:var(--text);font-family:'Outfit',sans-serif;font-size:14px;transition:all .3s;resize:none;}
.fg input:focus,.fg textarea:focus{outline:none;border-color:var(--acc);box-shadow:0 0 0 3px var(--glow2);}
.fg input::placeholder,.fg textarea::placeholder{color:var(--text3);}
.form-note{font-size:11.5px;color:var(--text3);font-style:italic;line-height:1.6;}
.btn-send{align-self:flex-start;padding:13px 34px;background:var(--acc);color:#fff;border:2px solid var(--acc);border-radius:9px;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s;display:inline-flex;align-items:center;gap:8px;letter-spacing:.02em;font-family:'Outfit',sans-serif;}
.btn-send:hover{background:transparent;color:var(--acc);transform:translateY(-2px);box-shadow:0 10px 30px var(--glow);}
.form-success{display:none;padding:15px 18px;background:rgba(34,197,94,.1);border:1px solid rgba(34,197,94,.3);border-radius:9px;font-size:13px;color:#22c55e;text-align:center;margin-top:8px;}
.form-success.show{display:block;}

/* ═══════════ FOOTER ═══════════ */
footer{position:relative;z-index:10;background:var(--bg3);border-top:1px solid var(--border2);padding:48px 52px 28px;text-align:center;}
.footer-logo{font-family:'Space Grotesk',sans-serif;font-size:1.35rem;font-weight:700;color:var(--text);display:block;margin-bottom:16px;}
.footer-logo span{color:var(--acc);}
.footer-socs{display:flex;justify-content:center;gap:10px;margin-bottom:22px;flex-wrap:wrap;}
.footer-socs a{width:40px;height:40px;border:1px solid var(--border2);border-radius:9px;display:flex;align-items:center;justify-content:center;color:var(--text3);font-size:14px;transition:all .3s;}
.footer-socs a:hover{border-color:var(--acc);color:var(--acc);background:var(--glow2);transform:translateY(-3px);}
.footer-txt{font-size:12.5px;color:var(--text3);line-height:1.9;}
.footer-txt span{color:var(--acc);}
.wa-float{position:fixed;bottom:26px;right:26px;width:52px;height:52px;background:#25d366;border-radius:14px;display:flex;align-items:center;justify-content:center;color:#fff;font-size:22px;box-shadow:0 4px 24px rgba(37,211,102,.4);z-index:880;transition:all .3s;}
.wa-float:hover{transform:scale(1.1) translateY(-3px);box-shadow:0 10px 32px rgba(37,211,102,.55);}

/* ═══════════ RESPONSIVE ═══════════ */
@media(max-width:920px){
  .about-grid,.skills-wrap,.contact-grid{grid-template-columns:1fr;gap:36px;}
  .about-cards{grid-template-columns:1fr 1fr;}
  .form-row{grid-template-columns:1fr;}
  .navbar{padding:0 22px;}
  .nav-links{display:none;}
  .hamburger{display:flex;}
  .container{padding:0 22px;}
  section{padding:90px 0 64px;}
  footer{padding:40px 24px 24px;}
  .exp-list::before{display:none;}
  .exp-card{padding-left:24px;}
  .exp-card::before{display:none;}
}
@media(max-width:640px){
  .stats-bar{flex-direction:column;}
  .stat-item{border-right:none;border-bottom:1px solid var(--border2);}
  .stat-item:last-child{border-bottom:none;}
  .about-cards{grid-template-columns:1fr;}
  .svc-grid{grid-template-columns:1fr;}
  .hero-btns{flex-direction:column;align-items:center;}
  .tools-grid{grid-template-columns:repeat(auto-fill,minmax(76px,1fr));}
  .skills-wrap{grid-template-columns:1fr;gap:0;}
}
