/* ============================================================
   THEME: PORTFOLIO GRID — Projects-first masonry
   ============================================================ */
.pg-wrap{font-family:'Space Grotesk',sans-serif;background:#0a0a0a;min-height:100vh;animation:fadeIn .5s ease}
.pg-nav{position:sticky;top:0;z-index:50;background:rgba(10,10,10,.92);backdrop-filter:blur(12px);border-bottom:1px solid #151515;display:flex;justify-content:space-between;align-items:center;padding:16px 40px}
.pg-nav-name{font-size:.9rem;font-weight:600;color:#f4f1e8;letter-spacing:.02em}
.pg-nav-links{display:flex;gap:24px}
.pg-nav-link{color:#444;text-decoration:none;font-size:.82rem;cursor:pointer;transition:color .2s}
.pg-nav-link:hover{color:#f4f1e8}
.pg-hero{padding:80px 40px 60px;max-width:900px}
.pg-img{width:56px;height:56px;border-radius:6px;object-fit:cover;border:1px solid #1c1c1c;margin-bottom:24px;display:block}
.pg-hero-name{font-size:clamp(2rem,5vw,3.5rem);color:#f4f1e8;font-weight:700;letter-spacing:-.03em;line-height:1.05;margin-bottom:12px}
.pg-hero-role{color:#444;font-size:.95rem;margin-bottom:14px}
.pg-hero-bio{color:#333;font-size:.9rem;line-height:1.8;max-width:500px;margin-bottom:28px}
.pg-resume-btn{display:inline-flex;align-items:center;gap:7px;padding:10px 22px;background:#f4f1e8;color:#0a0a0a;border-radius:5px;font-size:.82rem;font-weight:600;text-decoration:none;transition:background .2s}
.pg-resume-btn:hover{background:#fff}
.pg-section{padding:60px 40px;border-top:1px solid #111}
.pg-section-header{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:30px}
.pg-section-title{font-size:1.3rem;color:#f4f1e8;font-weight:600}
.pg-section-count{font-family:'IBM Plex Mono',monospace;font-size:.72rem;color:#333}
.pg-proj-masonry{columns:2;gap:16px}
@media(max-width:600px){.pg-proj-masonry{columns:1}}
.pg-proj-card{break-inside:avoid;background:#111;border:1px solid #181818;border-radius:10px;padding:22px;margin-bottom:16px;transition:all .3s;display:block}
.pg-proj-card:hover{border-color:#333;transform:translateY(-3px)}
.pg-proj-num{font-family:'IBM Plex Mono',monospace;font-size:.65rem;color:#333;margin-bottom:12px;letter-spacing:.08em}
.pg-proj-title{font-size:1rem;color:#f4f1e8;margin-bottom:8px;font-weight:600}
.pg-proj-desc{color:#444;font-size:.83rem;line-height:1.65;margin-bottom:14px}
.pg-proj-links{display:flex;gap:8px}
.pg-btn-sm{padding:5px 12px;font-size:.74rem;border:1px solid #222;color:#555;transition:all .2s;display:flex;align-items:center;gap:4px;text-decoration:none;border-radius:4px}
.pg-btn-sm:hover{border-color:#f4f1e8;color:#f4f1e8}
.pg-doing-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px}
.pg-doing-card{background:#111;border:1px solid #181818;padding:18px;border-radius:8px}
.pg-icon-box{width:36px;height:36px;border-radius:6px;display:flex;align-items:center;justify-content:center;font-size:.9rem;margin-bottom:10px}
.pg-doing-title{font-size:.88rem;color:#f4f1e8;margin-bottom:4px}
.pg-doing-desc{font-size:.78rem;color:#444;line-height:1.5}
.pg-skills-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px}
.pg-skill-cat{background:#111;border:1px solid #181818;padding:18px;border-radius:8px}
.pg-skill-cat-name{font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;color:#444;margin-bottom:10px}
.pg-tags{display:flex;flex-wrap:wrap;gap:7px}
.pg-tag{background:#181818;border:1px solid #1c1c1c;padding:4px 10px;font-size:.77rem;color:#555;border-radius:4px}
.pg-titem{border-bottom:1px solid #111;padding:20px 0} .pg-titem:last-child{border-bottom:none}
.pg-tdate{font-family:'IBM Plex Mono',monospace;font-size:.72rem;color:#333;margin-bottom:5px}
.pg-tinst{font-size:.95rem;color:#f4f1e8;margin-bottom:3px} .pg-tdeg{font-size:.83rem;color:#444}
.pg-ach-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px}
.pg-ach-card{background:#111;border:1px solid #181818;padding:18px;border-radius:8px;display:flex;align-items:center;gap:12px}
.pg-ach-icon{color:#333;font-size:1rem;flex-shrink:0}
.pg-ach-title{font-size:.88rem;color:#f4f1e8;margin-bottom:2px}
.pg-ach-sub{font-size:.76rem;color:#444;margin:0}
.pg-cert-link{display:inline-block;margin-top:3px;font-size:.68rem;color:#9aa0a6;text-decoration:none}
.pg-contact-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:10px}
.pg-contact-item{background:#111;border:1px solid #181818;padding:16px;border-radius:8px;display:flex;align-items:center;gap:10px;color:#444;text-decoration:none;font-size:.83rem;transition:all .2s}
.pg-contact-item:hover{border-color:#333;color:#f4f1e8}
.pg-empty{color:#2a2a2a;font-size:.83rem;font-style:italic}
