:root{--bg:#050505;--bg-soft:#0a0a0a;--panel:#14141499;--panel-strong:#141414;--line:#ffffff14;--text-main:#f0f4f8;--text-soft:#a0aec0;--accent:#0052ff;--accent-strong:#04c;--shadow:0 8px 32px #0009}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--text-main);font-family:Space Grotesk,sans-serif;line-height:1.6;position:relative;overflow-x:hidden}h1,h2,h3,h4,h5,h6{letter-spacing:-.02em;font-weight:700}body.overlay-open{overflow:hidden}img{max-width:100%}.page-noise{pointer-events:none;z-index:0;opacity:.8;background-image:radial-gradient(#ffffff14 1px,#0000 1px);background-size:24px 24px;position:fixed;inset:0}.cursor-glow{pointer-events:none;z-index:0;background:radial-gradient(circle,#0052ff29 0%,#0052ff00 70%);border-radius:50%;width:280px;height:280px;transition:left .18s,top .18s;position:fixed;transform:translate(-50%,-50%)}.top-banner{text-align:center;text-transform:uppercase;letter-spacing:.12em;background:#ffffff08;background-image:linear-gradient(90deg, var(--accent), #00c6ff, var(--accent));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;border-bottom:1px solid #ffffff0d;width:100%;padding:.8rem;font-family:IBM Plex Mono,monospace;font-size:1.15rem;font-weight:700;display:block}.site-nav{z-index:20;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#08111f99;border-bottom:1px solid #ffffff0d;justify-content:space-between;align-items:center;padding:1.2rem 7%;display:flex;position:sticky;top:0}.logo,.nav-links a,.btn{text-decoration:none}.logo{color:var(--text-main);letter-spacing:.03em;font-size:1.2rem;font-weight:700}.logo span{color:var(--accent);margin-left:.15rem}.nav-links{gap:1.5rem;display:flex}.nav-links a{color:var(--text-soft);font-size:.95rem;transition:color .25s}.nav-links a:hover{color:var(--text-main)}.section{z-index:1;padding:5.5rem 7%;position:relative}.hero{grid-template-columns:1.2fr .8fr;align-items:center;gap:2.5rem;min-height:calc(100vh - 78px);display:grid}.eyebrow,.section-kicker,.project-meta,.badge,.tags span,.chip-list span,.status-top,.timeline-card li{font-family:IBM Plex Mono,monospace}.eyebrow,.section-kicker{text-transform:uppercase;letter-spacing:.12em;color:var(--accent);align-items:center;gap:.5rem;font-size:.78rem;display:inline-flex}.hero h1{max-width:12ch;margin-top:1rem;font-size:clamp(3rem,7vw,5.8rem);line-height:.96}.hero h1 span{color:var(--accent-strong)}.hero-text{max-width:58ch;color:var(--text-soft);margin-top:1.4rem;font-size:1.05rem}.hero-actions,.contact-actions,.view-more-container{flex-wrap:wrap;justify-content:center;gap:1rem;margin-top:2rem;display:flex}.btn{border:1px solid #0000;border-radius:6px;justify-content:center;align-items:center;padding:.95rem 1.4rem;font-weight:600;transition:transform .25s,box-shadow .25s,border-color .25s,background .25s;display:inline-flex}.btn:hover{transform:translateY(-2px)}.btn-primary{background:linear-gradient(135deg, var(--accent) 0%, #37f 100%);color:#fff;box-shadow:0 16px 30px #0052ff38}.btn-secondary{color:var(--text-main);background:#ffffff08;border-color:#ffffff17}.hero-panel,.about-card,.project-card,.skill-card,.timeline-card,.contact-card,.overlay-content{background:var(--panel);border:1px solid var(--line);-webkit-backdrop-filter:blur(12px);box-shadow:0 4px 30px #0000001a}.hero-panel{border-radius:16px;padding:1.4rem}.status-card{background:linear-gradient(#ffffff0a,#ffffff04),linear-gradient(160deg,#0052ff14,#0044cc0f);border:1px solid #ffffff0f;border-radius:22px;min-height:100%;padding:1.25rem}.status-top{color:var(--text-soft);border-bottom:1px solid #ffffff14;align-items:center;gap:.65rem;padding-bottom:1rem;font-size:.78rem;display:flex}.status-dot{background:var(--accent);border-radius:50%;width:10px;height:10px;box-shadow:0 0 16px #0052ffcc}.signal-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin-top:1.2rem;display:grid}.signal-grid div{background:#ffffff08;border:1px solid #ffffff0d;border-radius:20px;padding:1rem}.signal-grid strong{color:var(--accent);font-size:1.4rem;display:block}.signal-grid span{color:var(--text-soft);font-size:.95rem}.section-heading{margin-bottom:2rem}.section-heading h2{margin-top:.6rem;font-size:clamp(2rem,4vw,3.25rem);line-height:1.05}.about-grid,.project-grid,.skills-layout{gap:1.35rem;display:grid}.about-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.about-card,.skill-card,.timeline-card,.contact-card{border-radius:16px;padding:1.6rem}.about-card h3,.timeline-card h3,.contact-card h2{margin-bottom:.8rem}.skill-card h3{margin-bottom:1.2rem;font-size:1.4rem}.about-card p,.skill-card p,.timeline-card li,.contact-card p{color:var(--text-soft)}.project-grid{grid-template-columns:repeat(3,1fr);grid-auto-rows:minmax(280px,auto)}.project-grid>:first-child{grid-column:span 2}.project-grid>:nth-child(2),.project-grid>:nth-child(3){grid-column:span 1}.project-grid>:nth-child(4){grid-column:span 2}.project-grid.carousel{scroll-snap-type:x mandatory;scrollbar-width:thin;scrollbar-color:#fff3 transparent;padding-bottom:1.5rem;scroll-padding:0 .5rem;display:flex;overflow:auto hidden}.project-grid.carousel::-webkit-scrollbar{height:6px}.project-grid.carousel::-webkit-scrollbar-track{background:0 0}.project-grid.carousel::-webkit-scrollbar-thumb{background-color:#fff3;border-radius:10px}[data-theme=light] .project-grid.carousel::-webkit-scrollbar-thumb{background-color:#0003}.project-grid.carousel .project-card{scroll-snap-align:start;flex:0 0 calc(60% - 1rem);min-width:300px;grid-column:auto!important}@media (width<=980px){.project-grid.carousel .project-card{flex:0 0 calc(85% - 1rem)}}.project-card{cursor:pointer;border-radius:16px;min-height:280px;padding:1.6rem;transition:transform .28s,border-color .28s,box-shadow .28s;position:relative;overflow:hidden}.project-card:before{content:"";background:radial-gradient(circle,#04c3,#0000 70%);border-radius:50%;width:180px;height:180px;position:absolute;inset:auto -15% -35% auto}.project-card:hover,.project-card:focus-visible,.skill-card:hover,.skill-card:focus-visible{border-color:#0052ff4d;outline:none;transform:translateY(-4px);box-shadow:0 0 40px #0052ff26}.project-card:hover .project-link:after,.project-card:focus-visible .project-link:after{transform:translate(4px)}.project-card:hover .tags span,.project-card:focus-visible .tags span{background:#0052ff26;border-color:#0052ff4d}.project-meta{color:var(--accent);text-transform:uppercase;letter-spacing:.08em;flex-wrap:wrap;gap:.6rem;margin-bottom:1rem;font-size:.72rem;display:flex}.project-card h3{margin-bottom:.8rem;font-size:1.6rem}.project-card p{color:var(--text-soft)}.project-link{color:var(--accent);align-items:center;margin-top:1rem;font-weight:500;text-decoration:none;transition:color .28s;display:inline-flex}.project-link:after{content:"→";margin-left:.5rem;transition:transform .28s}.project-link:hover,.project-link:focus-visible{color:var(--accent-strong)}.tags,.chip-list{flex-wrap:wrap;gap:.55rem;margin-top:1.2rem;display:flex}.tags span,.chip-list span{color:var(--text-main);background:#ffffff0d;border:1px solid #ffffff0f;border-radius:6px;align-items:center;padding:.42rem .72rem;font-size:.95rem;font-weight:500;display:inline-flex}.skills-layout{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:2rem}.background-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2rem;display:grid}.timeline{flex-direction:column;gap:1.25rem;margin-top:1.5rem;display:flex}.timeline.alternating{gap:0;max-width:1200px;margin:0 auto;padding:2rem 0;position:relative}.timeline.alternating:before{content:"";background:#ffffff14;width:2px;position:absolute;top:0;bottom:0;left:50%;transform:translate(-50%)}.timeline-item{box-sizing:border-box;width:50%;padding:1.5rem 2rem;position:relative}.timeline-item.left{text-align:right;left:0}.timeline-item.right{text-align:left;left:50%}.timeline-item:after{content:"";background:var(--accent);width:18px;height:18px;box-shadow:0 0 15px var(--accent);z-index:1;border-radius:50%;position:absolute;top:50%;transform:translateY(-50%)}.timeline-item.left:after{right:-9px}.timeline-item.right:after{left:-9px}.timeline-item .timeline-card{text-align:left;box-sizing:border-box;border-radius:2.5rem;flex-direction:column;width:100%;min-height:280px;padding:3rem;display:flex}.timeline-item .score-pill{align-self:flex-start;margin-top:1.5rem}.score-pill{color:var(--text-main);background:#0052ff1a;border:1px solid #0052ff40;border-radius:8px;align-items:center;gap:.5rem;margin-top:1.2rem;padding:.45rem .9rem;font-family:IBM Plex Mono,monospace;font-size:.85rem;display:inline-flex}.timeline-title{margin-bottom:.5rem;font-size:1.5rem}.timeline-meta{letter-spacing:.1em;text-transform:uppercase;color:var(--accent);margin-bottom:.8rem;font-family:IBM Plex Mono,monospace;font-size:.95rem;font-weight:600}.timeline-card h4{margin-bottom:.8rem;font-size:1.6rem;font-weight:800;line-height:1.2}.timeline-card p{color:var(--text-soft);margin-bottom:1rem;font-size:1.05rem;font-weight:500}.timeline-card ul{list-style:none}.timeline-card li{margin-bottom:.9rem;padding-left:1.1rem;position:relative}.timeline-card li:before{content:"";background:var(--accent-strong);border-radius:50%;width:.45rem;height:.45rem;position:absolute;top:.55rem;left:0}.contact{padding-bottom:6.5rem}.contact-card{text-align:center;max-width:860px;margin:0 auto;padding:2.25rem}.overlay{z-index:50;place-items:center;display:grid;position:fixed;inset:0}.overlay.hidden{display:none}.overlay-backdrop{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#02060cc2;position:absolute;inset:0}.overlay-content{z-index:1;border-radius:30px;width:min(92vw,820px);max-height:86vh;padding:2rem;position:relative;overflow-y:auto}.close-btn{width:42px;height:42px;color:var(--text-main);cursor:pointer;background:#ffffff0a;border:1px solid #ffffff14;border-radius:50%;font-size:1.6rem;position:absolute;top:1rem;right:1rem}.overlay-copy h2{margin-bottom:.6rem;font-size:2rem}.overlay-copy p,.overlay-copy li{color:var(--text-soft)}.overlay-copy ul{margin:1.2rem 0 0 1.2rem}.overlay-copy .detail-label{color:var(--accent);text-transform:uppercase;letter-spacing:.12em;font-family:IBM Plex Mono,monospace;font-size:.78rem}.reveal{opacity:0;transition:opacity .8s cubic-bezier(.16,1,.3,1),transform .8s cubic-bezier(.16,1,.3,1);transform:translateY(30px)scale(.98)}.reveal.visible{opacity:1;transform:translateY(0)scale(1)}.delay-1{transition-delay:.1s}.delay-2{transition-delay:.2s}@media (width<=980px){.hero,.about-grid,.project-grid,.skills-layout,.background-grid{grid-template-columns:1fr}.project-grid>:first-child,.project-grid>:nth-child(2),.project-grid>:nth-child(3),.project-grid>:nth-child(4),.project-grid>*,.skills-layout>*{grid-column:1/-1}.hero{padding-top:3rem}.timeline.alternating:before{left:20px}.timeline-item{width:100%;padding-left:50px;padding-right:15px}.timeline-item.left,.timeline-item.right{text-align:left;left:0}.timeline-item.left:after,.timeline-item.right:after{left:11px}}@media (width<=720px){.site-nav{flex-direction:column;gap:.85rem;padding:1rem 5%}.nav-links{-webkit-overflow-scrolling:touch;scrollbar-width:none;flex-wrap:nowrap;justify-content:flex-start;gap:1rem;width:100%;padding-bottom:.5rem;overflow-x:auto}.nav-links::-webkit-scrollbar{display:none}.section{padding:4.5rem 5%}.hero h1{font-size:clamp(2.7rem,12vw,4rem)}.btn{width:100%}.overlay-content{width:90vw;padding:1.4rem}.full-cert-popup{max-width:90vw;max-height:70vh}.cursor-glow{display:none}}.project-section{margin-top:1.5rem}.project-section h3{margin-bottom:.55rem;font-size:1.05rem}.project-section p{margin-bottom:.9rem}.project-section ul{margin-top:.6rem}.project-actions{margin-top:1.4rem}.contact-email{color:var(--text-soft);margin-top:1rem}.contact-email a{color:var(--accent);text-decoration:none}.copy-email-btn{font:inherit;cursor:pointer}.unified-skills{box-sizing:border-box;width:100%;min-width:0;max-width:100%;margin:0 auto}.section.skills .skills-layout{grid-template-columns:1fr;width:100%;max-width:100%}.floating-stickers{pointer-events:none;z-index:10;position:absolute;inset:0;overflow:hidden}.sticker{opacity:.55;mix-blend-mode:screen;animation:6s ease-in-out infinite floatSticker;position:absolute}.sticker-1{--rot:-15deg;width:clamp(80px,9vw,120px);animation-delay:0s;top:12%;left:2%}.sticker-2{--rot:15deg;width:clamp(70px,8vw,100px);animation-delay:-1.5s;top:32%;right:3%}.sticker-3{--rot:25deg;width:clamp(90px,10vw,130px);animation-delay:-3s;top:65%;left:3%}.sticker-4{--rot:-20deg;width:clamp(80px,9vw,115px);animation-delay:-4.5s;top:15%;right:4%}.sticker-5{--rot:-10deg;width:clamp(65px,7vw,95px);animation-delay:-2s;top:85%;right:5%}.sticker-6{--rot:40deg;width:clamp(75px,8vw,110px);animation-delay:-5s;top:48%;left:1%}.sticker-7{--rot:10deg;width:clamp(70px,8vw,105px);animation-delay:-1s;top:92%;left:6%}@keyframes floatSticker{0%,to{transform:translateY(0) rotate(var(--rot))}50%{transform:translateY(-20px) rotate(var(--rot))}}.leadership-section .background-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.leadership-card{transition:transform .28s,border-color .28s,box-shadow .28s;position:relative;overflow:hidden}.leadership-card:before{content:"";pointer-events:none;background:radial-gradient(circle,#0052ff26,#0000 70%);border-radius:50%;width:160px;height:160px;position:absolute;inset:auto -10% -30% auto}.leadership-card:hover{border-color:#0052ff4d;transform:translateY(-4px);box-shadow:0 0 40px #0052ff26}.leadership-badge{color:var(--accent);letter-spacing:.08em;text-transform:uppercase;background:#0052ff1f;border:1px solid #0052ff47;border-radius:999px;align-items:center;margin-top:1.1rem;padding:.35rem .85rem;font-family:IBM Plex Mono,monospace;font-size:.75rem;font-weight:600;display:inline-flex}.ssoc-card{border-color:#ff64b433}.ssoc-card:hover{border-color:#ff64b473;box-shadow:0 0 40px #ff50a01f}.ssoc-badge{color:#ff64b4;background:#ff50a01f;border-color:#ff50a04d}.ssoc-code-block{background:#0a0814b3;border:1px solid #ff64b426;border-radius:10px;flex-direction:column;gap:.3rem;margin-top:1.1rem;padding:1rem 1.2rem;font-family:IBM Plex Mono,monospace;font-size:.82rem;display:flex}.ssoc-line{line-height:1.7;display:block}.ssoc-key{color:#ff79c6}.ssoc-colon{color:#f8f8f2}.ssoc-val{color:#50fa7b}.ssoc-num{color:#bd93f9}.certifications{margin-top:6rem}.certifications .section-heading{text-align:left;margin-bottom:2rem}.certifications .eyebrow{margin-bottom:1rem}.cert-grid{scroll-snap-type:x mandatory;scrollbar-width:thin;scrollbar-color:#fff3 transparent;gap:1.5rem;margin-top:2rem;padding-bottom:1.5rem;scroll-padding:0 .5rem;display:flex;overflow:auto hidden}.cert-grid::-webkit-scrollbar{height:6px}.cert-grid::-webkit-scrollbar-track{background:0 0}.cert-grid::-webkit-scrollbar-thumb{background-color:#fff3;border-radius:10px}[data-theme=light] .cert-grid::-webkit-scrollbar-thumb{background-color:#0003}.cert-card{scroll-snap-align:start;background:var(--panel);border:1px solid #ffffff0d;border-radius:16px;flex-direction:column;flex:0 0 calc(33.333% - 1rem);transition:transform .28s,border-color .28s,box-shadow .28s;display:flex}.cert-card:hover{border-color:#0052ff4d;transform:translateY(-4px);box-shadow:0 0 40px #0052ff26}.cert-image{aspect-ratio:16/10;background:#fff;border-radius:16px 16px 0 0;width:100%;position:relative}.cert-image img.preview-img{object-fit:cover;border-radius:16px 16px 0 0;width:100%;height:100%;display:block}.full-cert-popup{object-fit:contain;opacity:0;visibility:hidden;z-index:100;pointer-events:none;background:#111;border:1px solid #ffffff1a;border-radius:12px;width:max-content;max-width:650px;height:auto;max-height:85vh;transition:all .35s cubic-bezier(.2,.8,.2,1);position:absolute;bottom:50%;left:50%;transform:translate(-50%,50%)scale(.85);box-shadow:0 20px 60px #000000d9}.cert-card:hover .full-cert-popup{opacity:1;visibility:visible;transform:translate(-50%,50%)scale(1)}.img-placeholder{background:linear-gradient(135deg,#e0e0e0 0%,#f5f5f5 100%);width:100%;height:100%}.cert-overlay{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:linear-gradient(#0000 0%,#0006 40%,#000000d9 100%);flex-direction:column;gap:.25rem;padding:1rem;display:flex;position:absolute;bottom:0;left:0;right:0}.cert-overlay span{color:#fff;font-size:1.1rem;font-weight:700;line-height:1.2}.cert-overlay small{color:#ffffffd9;font-size:.85rem}.cert-content{border-radius:0 0 16px 16px;flex-direction:column;flex-grow:1;justify-content:center;padding:1.25rem;display:flex}.cert-content h3{color:var(--text-main);margin-bottom:.5rem;font-size:1.2rem;line-height:1.3}.cert-content p{color:var(--text-soft);margin:0;font-size:.95rem}@media (width<=980px){.cert-card{flex:0 0 calc(50% - .75rem)}}@media (width<=720px){.cert-card{flex:0 0 85%}}[data-theme=light]{--bg:#f8fafc;--bg-soft:#f1f5f9;--panel:#ffffffb3;--panel-strong:#fff;--line:#00000014;--text-main:#0f172a;--text-soft:#475569;--accent:#0052ff;--accent-strong:#003db3;--shadow:0 8px 32px #00000014}[data-theme=light] .site-nav{border-bottom:1px solid var(--line);background:#fff9}[data-theme=light] .top-banner{border-bottom:1px solid var(--line);background-color:#00000008}[data-theme=light] .page-noise{background-image:radial-gradient(#00000014 1px,#0000 1px)}[data-theme=light] .status-card{border:1px solid var(--line);background:linear-gradient(#00000005,#00000003),linear-gradient(160deg,#0052ff14,#0044cc0f)}[data-theme=light] .signal-grid div{border:1px solid var(--line);background:#00000008}[data-theme=light] .btn-secondary{border-color:var(--line);background:#00000008}[data-theme=light] .tags span,[data-theme=light] .chip-list span{border:1px solid var(--line);background:#0000000d}[data-theme=light] .project-card:before{background:radial-gradient(circle,#0044cc1a,#0000 70%)}[data-theme=light] .timeline.alternating:before{background:var(--line)}[data-theme=light] .overlay-backdrop{background:#ffffffc2}[data-theme=light] .close-btn{border:1px solid var(--line);background:#0000000a}.scroll-to-top{background:var(--accent);color:#fff;cursor:pointer;z-index:99;opacity:0;visibility:hidden;border:none;border-radius:50%;justify-content:center;align-items:center;width:48px;height:48px;transition:opacity .3s,visibility .3s,transform .3s,background .2s;display:flex;position:fixed;bottom:2rem;right:2rem;transform:translateY(20px);box-shadow:0 8px 24px #0052ff66}.scroll-to-top.show{opacity:1;visibility:visible;transform:translateY(0)}.scroll-to-top:hover{background:var(--accent-strong);transform:translateY(-3px)}@media (width<=720px){.scroll-to-top{width:42px;height:42px;bottom:1.5rem;right:1.5rem}}
