@import"https://fonts.googleapis.com/css2?family=Clash+Display:wght@400;500;600;700&family=Manrope:wght@400;500;600;700&family=IBM+Plex+Mono:wght@400;500;600&display=swap";.app{width:100%;min-height:100vh;display:flex;flex-direction:column}.app-shell{flex:1;width:100%;max-width:1280px;margin:0 auto;padding:clamp(2.5rem,6vw,4rem) clamp(1.5rem,6vw,3.5rem) 0;display:grid;grid-template-columns:minmax(210px,280px) minmax(0,1fr);gap:clamp(2.5rem,6vw,5rem)}.page-main{display:flex;flex-direction:column;gap:var(--space-section)}.page-main>section,.page-main>div{position:relative;z-index:1}.site-footer{width:100%;max-width:1280px;margin:clamp(3rem,6vw,4.5rem) auto clamp(2rem,5vw,3rem);padding:1.75rem clamp(1.5rem,6vw,3.5rem);font-size:.9rem;color:var(--text-tertiary);border-top:1px solid var(--border-soft);text-align:center}.site-footer p{max-width:640px;margin:0 auto}@media (max-width: 960px){.app-shell{grid-template-columns:1fr;padding-top:clamp(2rem,5vw,3rem)}}@media (max-width: 720px){.site-footer{margin-top:2.5rem;padding:1.5rem 1.75rem}}.contact-section{display:grid}.contact-card{padding:clamp(2.5rem,5vw,3.5rem);border-radius:var(--radius-lg);border:1px solid var(--border);background:var(--card);box-shadow:var(--shadow-md);display:grid;gap:1.5rem}.contact-badge{font-family:IBM Plex Mono,monospace;font-size:.7rem;letter-spacing:.16em;text-transform:uppercase;color:var(--text-tertiary)}.contact-heading{font-family:Clash Display,Manrope,sans-serif;font-size:clamp(2rem,4vw,2.6rem);line-height:1.2;color:var(--text-strong);max-width:20ch}.contact-lede{font-size:1.1rem;color:var(--text-secondary);max-width:48ch;line-height:1.7}.contact-meta{list-style:none;display:grid;gap:.75rem;font-size:.95rem;color:var(--text)}.contact-meta li{position:relative;padding-left:1.4rem}.contact-meta li:before{content:"";position:absolute;left:0;top:.6rem;width:.7rem;height:1px;background:var(--accent)}.contact-actions{display:grid;gap:1.1rem}.contact-button{display:inline-flex;align-items:center;justify-content:center;padding:.9rem 1.8rem;border-radius:999px;border:1px solid var(--border);font-weight:600;font-size:.95rem;transition:transform .25s ease,box-shadow .3s ease,border-color .3s ease}.contact-button--primary{background:var(--accent);color:#f6f7ff;border-color:transparent}.contact-button--primary:hover{transform:translateY(-2px);box-shadow:0 20px 40px #1f3df32e}.contact-links{display:inline-flex;align-items:center;gap:.6rem;font-size:.95rem;color:var(--text-muted)}.contact-links a{color:var(--text-secondary);position:relative}.contact-links a:after{content:"";position:absolute;left:0;bottom:-.15rem;width:100%;height:1px;background:#1f3df340;transform:scaleX(0);transform-origin:left;transition:transform .25s ease}.contact-links a:hover:after{transform:scaleX(1)}@media (max-width: 720px){.contact-card{text-align:left;padding:2.25rem}.contact-links{flex-wrap:wrap}}.education-section{display:grid;gap:1.5rem}.education-card{display:grid;gap:clamp(1.5rem,3vw,2rem);padding:clamp(1.75rem,3vw,2.5rem);border-radius:var(--radius-lg);border:1px solid var(--border);background:var(--card);box-shadow:var(--shadow-sm)}.education-header{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1.5rem;padding-bottom:1.5rem;border-bottom:1px solid var(--border-soft)}.education-main{display:grid;gap:.45rem}.education-degree{font-family:Clash Display,Manrope,sans-serif;font-size:clamp(1.35rem,2.5vw,1.65rem);font-weight:600;color:var(--text-strong)}.education-school{font-size:1rem;color:var(--text-muted)}.education-details{display:flex;flex-direction:column;align-items:flex-end;gap:.4rem;font-size:.9rem;color:var(--text-muted)}.education-gpa{font-weight:600;color:var(--accent)}.education-coursework h4,.education-achievements h4{font-size:.95rem;font-weight:600;text-transform:uppercase;letter-spacing:.12em;color:var(--text-tertiary)}.coursework-grid{display:flex;flex-wrap:wrap;gap:.6rem}.course-badge{padding:.5rem 1.1rem;border-radius:999px;border:1px solid var(--border);background:var(--card-muted);font-size:.85rem;font-weight:600;color:var(--text-secondary);letter-spacing:.04em}.education-achievements ul{list-style:none;display:grid;gap:.75rem;font-size:.95rem;color:var(--text-secondary)}.education-achievements ul li{position:relative;padding-left:1.3rem}.education-achievements ul li:before{content:"·";position:absolute;left:0;top:0;font-size:1.5rem;line-height:1;color:var(--accent)}@media (max-width: 768px){.education-header{flex-direction:column;align-items:flex-start}.education-details{align-items:flex-start}.education-card{padding:1.75rem}}.experience-section{display:grid;gap:1.5rem}.experience-timeline{display:grid;gap:clamp(1.25rem,3vw,1.75rem)}.experience-card{padding:clamp(2.2rem,4vw,2.8rem);border-radius:22px;background:#ffffffb8;box-shadow:0 8px 32px #1f3df31a,0 2px 8px #00000012;display:grid;gap:1.1rem;border:3px solid transparent;background-clip:padding-box;position:relative}.experience-card:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:22px;padding:2px;background:linear-gradient(135deg,#a3c9fa,#e0c3fc,#f9e7c3);z-index:0;pointer-events:none}.experience-card>*{position:relative;z-index:1}} .experience-header{display:flex;flex-wrap:wrap;justify-content:space-between;gap:1.25rem;border-bottom:1px solid var(--border-soft);padding-bottom:1.15rem}.experience-header>div{display:grid;gap:.45rem}.experience-title{font-family:Clash Display,Manrope,sans-serif;font-size:1.3rem;font-weight:600;color:var(--text-strong)}.experience-company{font-size:.95rem;color:var(--text-muted)}.experience-type{font-size:.85rem;letter-spacing:.12em;text-transform:uppercase;color:var(--text-tertiary)}.experience-period{font-size:.9rem;color:var(--accent);white-space:nowrap;align-self:flex-start}.experience-highlights{list-style:none;display:grid;gap:.65rem;font-size:.95rem;color:var(--text)}.experience-highlights li{position:relative;padding-left:1.4rem;line-height:1.6}.experience-highlights li:before{content:"";position:absolute;left:0;top:.6rem;width:.7rem;height:1px;background:var(--accent)}@media (max-width: 768px){.experience-header{flex-direction:column;align-items:flex-start}.experience-period{font-size:.85rem}}.featured-projects{position:relative;width:100%;padding:4rem 2rem;background:#fff;overflow:hidden}.featured-projects:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.1) 50%,transparent 100%)}.featured-projects__container{max-width:1200px;margin:0 auto}.featured-projects__header{text-align:center;margin-bottom:3rem}.featured-projects__badge{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:#f8f9fa;border:1px solid #e9ecef;border-radius:100px;font-size:.875rem;font-weight:600;color:#495057;margin-bottom:1rem}.badge-icon{font-size:1.25rem}.featured-projects__title{font-size:2.5rem;font-weight:700;color:#000;margin-bottom:.75rem;line-height:1.2}.featured-projects__subtitle{font-size:1.125rem;color:#6c757d;max-width:700px;margin:0 auto;line-height:1.6}.featured-projects__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:1.5rem;margin-bottom:3rem}.project-card{position:relative;background:#fff;border:2px solid #e9ecef;border-radius:16px;padding:1.75rem;transition:all .3s cubic-bezier(.4,0,.2,1);overflow:hidden;cursor:default}.project-card:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:16px;padding:1px;background:linear-gradient(135deg,#0000001a,#0000000d);-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask-composite:exclude;opacity:0;transition:opacity .3s ease}.project-card:hover:before{opacity:1}.project-card:hover{border-color:#ced4da;transform:translateY(-4px);box-shadow:0 20px 40px #0000001f,0 0 0 1px #00000014}.project-card__gradient{position:absolute;top:0;left:0;right:0;height:100%;background:radial-gradient(circle at top,rgba(0,0,0,.02) 0%,transparent 70%);opacity:0;transition:opacity .3s ease;pointer-events:none}.project-card:hover .project-card__gradient{opacity:1}.project-card__status{position:absolute;top:1.25rem;right:1.25rem;z-index:2}.status-badge{display:inline-flex;align-items:center;gap:.375rem;padding:.375rem .75rem;border-radius:100px;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em}.status-badge--production{background:#d1f4e0;color:#0d8050;border:1px solid #9de7c3}.status-badge--in-progress{background:#fff4cc;color:#c80;border:1px solid #ffe699}.status-badge--planned{background:#e8f4ff;color:#06c;border:1px solid #b3d9ff}.project-card__content{position:relative;z-index:1;margin-top:2.5rem}.project-card__title{font-size:1.5rem;font-weight:700;color:#000;margin-bottom:.5rem;line-height:1.3}.project-card__tagline{font-size:.9375rem;font-weight:600;color:#495057;margin-bottom:.75rem;line-height:1.4}.project-card__description{font-size:.9375rem;color:#6c757d;line-height:1.6;margin-bottom:1.25rem}.project-card__highlights{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1rem}.highlight-tag{display:inline-block;padding:.375rem .75rem;background:#f8f9fa;border:1px solid #e9ecef;border-radius:6px;font-size:.8125rem;font-weight:600;color:#495057;white-space:nowrap}.project-card__tech{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1.5rem}.tech-tag{display:inline-block;padding:.25rem .625rem;background:#fff;border:1px solid #dee2e6;border-radius:4px;font-size:.75rem;font-weight:500;color:#6c757d;white-space:nowrap}.project-card__links{display:flex;gap:.75rem;position:relative;z-index:1}.project-link{display:inline-flex;align-items:center;gap:.5rem;padding:.625rem 1.25rem;border-radius:8px;font-size:.875rem;font-weight:600;text-decoration:none;transition:all .2s ease;white-space:nowrap}.project-link--primary{background:#000;color:#fff;border:1px solid #000000}.project-link--primary:hover{background:#212529;border-color:#212529;transform:translate(2px)}.project-link--secondary{background:#fff;color:#495057;border:1px solid #dee2e6}.project-link--secondary:hover{background:#f8f9fa;border-color:#ced4da}.featured-projects__footer{text-align:center;padding-top:2rem;border-top:1px solid #e9ecef}.footer-text{font-size:1rem;color:#6c757d;margin-bottom:1rem}.footer-cta{display:inline-flex;align-items:center;gap:.5rem;padding:.875rem 1.75rem;background:#000;border:2px solid #000000;border-radius:12px;color:#fff;font-size:1rem;font-weight:700;text-decoration:none;transition:all .3s ease}.footer-cta:hover{background:#212529;border-color:#212529;transform:translateY(-2px);box-shadow:0 8px 24px #00000026}@media (max-width: 1024px){.featured-projects__grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}}@media (max-width: 768px){.featured-projects{padding:3rem 1.5rem}.featured-projects__title{font-size:2rem}.featured-projects__subtitle{font-size:1rem}.featured-projects__grid{grid-template-columns:1fr;gap:1.25rem}.project-card{padding:1.5rem}.project-card__links{flex-direction:column}.project-link{justify-content:center;width:100%}}@media (max-width: 480px){.featured-projects{padding:2.5rem 1rem}.featured-projects__title{font-size:1.75rem}.project-card__title{font-size:1.25rem}.footer-cta{padding:.75rem 1.5rem;font-size:.9375rem}}.hero{display:flex;align-items:center;min-height:100vh;position:relative;width:100%;padding:2rem 0;background:linear-gradient(180deg,#f7f1ea,#faf7f2)}.hero__container{position:relative;width:100%;max-width:1400px;margin:0 auto;padding:clamp(3rem,8vw,6rem) clamp(2rem,5vw,4rem);background:#ffffffbf;-webkit-backdrop-filter:blur(60px) saturate(200%);backdrop-filter:blur(60px) saturate(200%);border:1px solid rgba(255,255,255,.8);border-radius:40px;box-shadow:0 20px 80px #1f3df31a,0 8px 32px #0000000d,inset 0 2px #fff;transition:all .6s cubic-bezier(.25,.1,.25,1)}.hero__container:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:40px;padding:1px;background:linear-gradient(135deg,#1f3df333,#6366f11a);-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none}.hero__status-badge{display:inline-flex;align-items:center;gap:.75rem;padding:.75rem 1.5rem;background:linear-gradient(135deg,#22c55e26,#10b9811a);border:1px solid rgba(34,197,94,.3);border-radius:100px;font-size:.85rem;font-weight:600;color:#059669;margin-bottom:2rem;box-shadow:0 4px 16px #22c55e26,inset 0 1px #ffffff80}.status-pulse{width:10px;height:10px;background:#22c55e;border-radius:50%;box-shadow:0 0 #22c55eb3;animation:pulse-ring 2s cubic-bezier(.455,.03,.515,.955) infinite}@keyframes pulse-ring{0%{box-shadow:0 0 #22c55eb3}50%{box-shadow:0 0 0 8px #22c55e00}to{box-shadow:0 0 #22c55e00}}.hero__profile-photo{width:140px;height:140px;margin:0 auto 2rem;border-radius:50%;overflow:hidden;border:3px solid rgba(255,255,255,.2);box-shadow:0 8px 32px #0000001f,0 0 0 1px #ffffff1a;transition:all .3s ease}.hero__profile-photo img{width:100%;height:100%;object-fit:cover;display:block}.hero__identity{display:flex;flex-direction:column;gap:2rem;margin-bottom:3rem}.hero__name-block{display:flex;flex-direction:column;gap:1rem}.hero__name{font-size:clamp(3.5rem,8vw,5.5rem);font-weight:800;line-height:1;letter-spacing:-.05em;background:linear-gradient(135deg,#0a0a0a,#1f3df3 60%,#6366f1);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;margin:0}.hero__title-wrapper{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.hero__title-badge{padding:.5rem 1.25rem;background:linear-gradient(135deg,#1f3df3,#1223b0);color:#fff;font-size:1rem;font-weight:700;border-radius:8px;box-shadow:0 4px 16px #1f3df340}.hero__title-separator{color:#0000004d;font-size:1.2rem}.hero__title-specialty{font-size:1.1rem;font-weight:600;color:#000000b3}.hero__mission{font-size:clamp(1.15rem,2.5vw,1.4rem);line-height:1.7;color:#000000bf;max-width:70ch}.hero__mission strong{font-weight:700;color:#1f3df3;background:linear-gradient(135deg,#1f3df3,#6366f1);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.hero__actions{display:flex;gap:1rem;flex-wrap:wrap}.hero__cta{display:inline-flex;align-items:center;justify-content:center;gap:.75rem;padding:1.1rem 2.5rem;border-radius:100px;font-weight:700;font-size:1rem;text-decoration:none;cursor:pointer;transition:all .3s cubic-bezier(.25,.1,.25,1);position:relative;overflow:hidden}.hero__cta--primary{background:#fffffff2;-webkit-backdrop-filter:blur(40px) saturate(180%);backdrop-filter:blur(40px) saturate(180%);color:#1223b0;border:2px solid rgba(31,61,243,.3);box-shadow:0 4px 24px #1f3df333,0 2px 8px #00000014,inset 0 2px #fff,inset 0 0 30px #fff9}.hero__cta--primary:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:100px;padding:2px;background:linear-gradient(135deg,#1f3df380,#6366f14d);-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none;opacity:.6}.hero__cta--primary:hover{background:#fff;transform:translateY(-2px);border-color:#1f3df380;box-shadow:0 8px 32px #1f3df34d,0 4px 12px #0000001f,inset 0 2px #fff,inset 0 0 40px #fffc}.hero__cta--primary svg{transition:transform .3s cubic-bezier(.25,.1,.25,1);color:#1223b0}.hero__cta--primary:hover svg{transform:translate(4px)}.hero__cta--secondary{background:#1f3df31f;-webkit-backdrop-filter:blur(30px) saturate(150%);backdrop-filter:blur(30px) saturate(150%);color:#1223b0;border:2px solid rgba(31,61,243,.3);box-shadow:0 4px 16px #1f3df31f,inset 0 1px #fffc}.hero__cta--secondary:hover{background:#1f3df32e;transform:translateY(-2px);border-color:#1f3df380;box-shadow:0 8px 24px #1f3df333,inset 0 1px #ffffffe6}.hero__highlights-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1.25rem;margin:3rem 0}.hero__highlight-card{display:flex;align-items:center;gap:1.25rem;padding:1.75rem;background:#fffc;-webkit-backdrop-filter:blur(30px);backdrop-filter:blur(30px);border:1px solid rgba(255,255,255,.9);border-radius:20px;box-shadow:0 8px 32px #1f3df314,0 2px 8px #0000000a,inset 0 1px #fff;transition:all .4s cubic-bezier(.25,.1,.25,1);cursor:default}.highlight-icon{font-size:2.5rem;flex-shrink:0;filter:drop-shadow(0 2px 8px rgba(31,61,243,.2))}.highlight-content{display:flex;flex-direction:column;gap:.25rem;flex:1}.highlight-label{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.1em;color:#00000080}.highlight-value{font-size:1.5rem;font-weight:800;background:linear-gradient(135deg,#1f3df3,#6366f1);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;line-height:1.2}.highlight-subtext{font-size:.85rem;font-weight:500;color:#0009}.hero__tech-stack{display:flex;flex-direction:column;gap:1rem;margin:3rem 0;padding:2rem;background:linear-gradient(135deg,#1f3df30d,#6366f108);border:1px solid rgba(31,61,243,.1);border-radius:20px}.tech-stack-label{font-size:.85rem;font-weight:700;text-transform:uppercase;letter-spacing:.12em;color:#0009}.tech-stack-pills{display:flex;flex-wrap:wrap;gap:.75rem}.tech-pill{padding:.65rem 1.25rem;background:#ffffffe6;border:1px solid rgba(31,61,243,.15);border-radius:100px;font-size:.9rem;font-weight:600;color:#000c;cursor:default;transition:all .3s cubic-bezier(.25,.1,.25,1);box-shadow:0 2px 8px #1f3df30d}.hero__contact-info{display:flex;flex-wrap:wrap;gap:2rem;margin-top:3rem;padding-top:3rem;border-top:1px solid rgba(0,0,0,.1)}.contact-link{display:flex;align-items:center;gap:.65rem;font-size:.95rem;font-weight:500;color:#000000b3;text-decoration:none;transition:all .3s cubic-bezier(.25,.1,.25,1)}.contact-link svg{color:#1f3df3;flex-shrink:0}.contact-link:hover{color:#1f3df3;transform:translate(4px)}.hero__beyond-work{text-align:center;font-size:.9rem;font-weight:400;color:#00000080;font-style:italic;margin-top:2rem;padding-top:2rem;border-top:1px solid rgba(0,0,0,.08);line-height:1.6}.hero__beyond-work strong{display:block;font-style:normal;font-weight:600;color:#000000b3;margin-bottom:.5rem}@media (max-width: 1024px){.hero__highlights-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 768px){.hero{min-height:100vh;padding:1rem 0}.hero__container{padding:2.5rem 1.5rem;border-radius:28px}.hero__name{font-size:2.5rem}.hero__highlights-grid{grid-template-columns:1fr;gap:1rem}.hero__highlight-card{padding:1.25rem}.highlight-icon{font-size:2rem}.hero__actions{flex-direction:column;width:100%}.hero__cta{width:100%;justify-content:center}.hero__contact-info{flex-direction:column;gap:1rem}.tech-stack-pills{gap:.5rem}.tech-pill{padding:.5rem 1rem;font-size:.85rem}}@media (max-width: 480px){.hero__name{font-size:2rem}.hero__mission{font-size:1rem}.hero__title-wrapper{flex-direction:column;align-items:flex-start}.hero__title-separator{display:none}}.nav-panel__button--highlight{background:linear-gradient(90deg,#1f3df3,#7f3df3 60%,#c9a961);color:#fff;border:none;font-weight:700;box-shadow:0 4px 18px #1f3df321,0 1px 3px #0000000a;letter-spacing:.02em;transition:background .2s,box-shadow .2s,transform .2s}.nav-panel__button--highlight:hover{background:linear-gradient(90deg,#7f3df3,#1f3df3 60%,#c9a961);box-shadow:0 8px 32px #1f3df32e;transform:translateY(-2px) scale(1.04)}.nav-panel{position:relative;color:var(--text-secondary)}.nav-panel__inner{position:sticky;top:clamp(2rem,6vw,3.2rem);display:flex;flex-direction:column;gap:clamp(1.75rem,3vw,2.5rem);padding-bottom:clamp(2rem,4vw,3rem)}.nav-panel--compact .nav-panel__inner{top:clamp(1.5rem,5vw,2.4rem)}.nav-panel__heading{display:grid;gap:.75rem}.nav-panel__eyebrow{font-family:IBM Plex Mono,monospace;letter-spacing:.16em;text-transform:uppercase;font-size:.7rem;color:var(--text-tertiary)}.nav-panel__heading h1{font-family:Clash Display,Manrope,sans-serif;font-size:clamp(1.65rem,3vw,2.2rem);line-height:1.2;letter-spacing:-.02em;color:var(--text-primary)}.nav-panel__heading p{font-size:.9rem;color:var(--text-muted);max-width:18ch}.nav-panel__nav{position:relative;border-top:1px solid var(--border);border-bottom:1px solid var(--border);padding:1.25rem 0}.nav-panel__nav ol{list-style:none;display:flex;flex-direction:column}.nav-panel__nav li{position:relative}.nav-panel__nav li+li{border-top:1px solid var(--border-soft)}.nav-panel__nav a{position:relative;display:grid;grid-template-columns:auto 1fr;align-items:center;gap:1rem;padding:.75rem 0;font-weight:500;color:var(--text-secondary);transition:color .25s ease,transform .25s ease}.nav-panel__nav a:before{content:"";position:absolute;left:-1.5rem;top:.75rem;bottom:.75rem;width:2px;border-radius:999px;background:transparent;transform:translate(0);transition:background .3s ease}.nav-panel__nav a:hover{color:var(--text-primary);transform:translate(8px)}.nav-panel__nav a.is-active{color:var(--accent);transform:translate(8px)}.nav-panel__nav a.is-active:before{background:var(--accent)}.nav-panel__nav a.is-active .nav-panel__item-index,.nav-panel__nav a.is-active .nav-panel__item-label{color:inherit}.nav-panel__item-index{font-family:IBM Plex Mono,monospace;font-size:.75rem;letter-spacing:.14em;color:var(--text-tertiary)}.nav-panel__item-label{font-size:1rem;letter-spacing:.02em}.nav-panel__cta{display:grid;gap:.75rem}.nav-panel__button{display:inline-flex;align-items:center;justify-content:center;padding:.7rem 1.6rem;border-radius:999px;border:1px solid var(--border);background:var(--surface);font-weight:600;color:var(--text-primary);transition:transform .25s ease,box-shadow .3s ease,border-color .3s ease}.nav-panel__button:hover{transform:translateY(-2px);border-color:var(--accent-soft);box-shadow:0 18px 34px #1f3df31f}.nav-panel__link{font-size:.95rem;color:var(--text-secondary);text-decoration:underline;text-decoration-color:#1f3df340;text-decoration-thickness:2px;text-underline-offset:4px}.nav-panel__link:hover{color:var(--text-primary)}.nav-panel__social{display:inline-flex;align-items:center;gap:.5rem;font-size:.9rem;color:var(--text-muted)}.nav-panel__social a{color:var(--text-secondary)}.nav-panel__social a:hover{color:var(--accent)}@media (max-width: 960px){.nav-panel__inner{position:relative;top:0;padding-bottom:1.5rem;border-bottom:1px solid var(--border-soft)}.nav-panel__heading p{max-width:none}.nav-panel__nav{border-radius:0}}.skills-section{display:grid;gap:1.5rem}.skills-grid{display:grid;gap:clamp(1.25rem,3vw,1.75rem);grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.skill-category{padding:clamp(1.4rem,2.5vw,1.9rem);border-radius:var(--radius-md);border:1px solid var(--border);background:var(--card);box-shadow:var(--shadow-sm);display:grid;gap:1rem}.skill-category-title{font-size:1.05rem;font-weight:600;color:var(--text-strong)}.skill-tags{display:flex;flex-wrap:wrap;gap:.55rem}.skill-tag{padding:.45rem 1rem;border-radius:999px;border:1px solid var(--border);background:var(--card-muted);font-size:.85rem;font-weight:600;color:var(--text-secondary);letter-spacing:.03em;transition:border-color .2s ease,color .2s ease}.skill-tag:hover{border-color:var(--accent-soft);color:var(--accent)}:root{--page-bg: #f7f1ea;--page-bg-soft: #efe8df;--surface: #ffffff;--surface-alt: #f3ede6;--card: #ffffff;--card-muted: #f9f5ef;--border: #ded4c7;--border-soft: #eae1d6;--border-strong: #c8bcad;--text-primary: #1c1710;--text-secondary: #4a4239;--text-tertiary: #7d756c;--text-muted: #6b6359;--text-strong: #1c1710;--text: #352f27;--accent: #1f3df3;--accent-dark: #1223b0;--accent-soft: #e0e4ff;--accent-muted: #f2f4ff;--font-h1: clamp(3.2rem, 5vw, 4.2rem);--font-h2: clamp(2.4rem, 4vw, 3.2rem);--font-h3: clamp(1.8rem, 3vw, 2.4rem);--font-body-lg: 1.2rem;--font-body: 1.1rem;--font-body-sm: .95rem;--space-section: clamp(4rem, 8vw, 6.5rem);--space-lg: clamp(3rem, 5vw, 4rem);--space-md: clamp(2rem, 4vw, 3rem);--space-sm: 1.5rem;--radius-xl: 32px;--radius-lg: 24px;--radius-md: 16px;--radius-sm: 10px;--shadow-sm: 0 14px 36px rgba(33, 24, 16, .08);--shadow-md: 0 28px 70px rgba(33, 24, 16, .08);--shadow-lg: 0 48px 120px rgba(33, 24, 16, .1)}*{box-sizing:border-box;margin:0;padding:0}body{font-family:Manrope,-apple-system,BlinkMacSystemFont,sans-serif;background:linear-gradient(180deg,var(--page-bg) 0%,var(--page-bg-soft) 100%);color:var(--text-primary);font-size:var(--font-body);line-height:1.75;-webkit-font-smoothing:antialiased;overflow-x:hidden;position:relative}body:after{content:"";position:fixed;top:0;right:0;bottom:0;left:0;background-image:linear-gradient(transparent 31px,#00000006 31px),linear-gradient(90deg,transparent 31px,rgba(0,0,0,.02) 31px);background-size:32px 32px;opacity:.12;pointer-events:none;z-index:-1}#root{width:100%;min-height:100vh}a{color:inherit;text-decoration:none;transition:color .25s ease}img{max-width:100%;display:block;border-radius:var(--radius-md)}.section-heading{font-family:Clash Display,Manrope,sans-serif;font-weight:700;font-size:var(--font-h2);letter-spacing:-.02em;color:var(--text-primary);line-height:1.15}.section-sub{font-size:var(--font-body);color:var(--text-secondary);max-width:600px;line-height:1.7;font-weight:500}.glass-panel{background:#ffffffb3;-webkit-backdrop-filter:blur(20px) saturate(180%);backdrop-filter:blur(20px) saturate(180%);border:1px solid rgba(255,255,255,.3);box-shadow:0 8px 32px #1f3df314,0 1px 3px #0000000a,inset 0 1px 1px #fff9}.glass-panel--dark{background:#1c1710d9;border:1px solid rgba(255,255,255,.1)}
