.site-header{position:sticky;top:0;z-index:1000;border-bottom:1px solid var(--border);background:#0b1020d1;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.site-header__inner{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);min-height:76px}.site-brand{display:inline-flex;align-items:center;gap:.85rem;text-decoration:none;color:inherit}.site-brand__logo{height:42px;width:auto;display:block;object-fit:contain;transition:transform .2s ease}.site-brand:hover .site-brand__logo{transform:scale(1.04)}.site-brand__text{display:flex;flex-direction:column;line-height:1.1}.site-brand__name{font-weight:700;color:var(--text)}.site-brand__role{font-size:.85rem;color:var(--text-muted);margin-top:.15rem}.site-nav{display:flex;align-items:center;gap:var(--space-4)}.site-nav__link{position:relative;color:var(--text-muted);font-size:.95rem;font-weight:500}.site-nav__link:hover{color:var(--text)}.site-nav__link:after{content:"";position:absolute;left:0;bottom:-.35rem;width:100%;height:2px;transform:scaleX(0);transform-origin:left;background:var(--accent);transition:transform .2s ease}.site-nav__link:hover:after{transform:scaleX(1)}@media(max-width:760px){.site-header__inner{flex-direction:column;align-items:flex-start;justify-content:center;padding-top:.9rem;padding-bottom:.9rem}.site-brand__logo{height:36px}.site-brand__role{font-size:.8rem}.site-nav{flex-wrap:wrap;gap:.9rem 1rem}}.hero{padding:var(--space-8) 0}.hero__inner{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(300px,.8fr);align-items:center;gap:var(--space-7)}.hero__content{max-width:700px}.hero__intro{display:flex;align-items:flex-start;gap:2rem}.hero__text{flex:1}.hero__title{display:flex;flex-direction:column;gap:.35rem;font-size:clamp(2.6rem,4vw,3.4rem);line-height:1.1}.hero__title-accent{display:block;margin-top:.2rem;color:var(--accent-2);font-size:clamp(1.3rem,2.6vw,2rem);font-weight:600;letter-spacing:-.02em}.hero__summary{margin-top:var(--space-5);max-width:58ch;font-size:1.1rem;color:var(--text)}.hero__supporting-copy{margin-top:var(--space-4);max-width:62ch}.hero__actions{display:flex;flex-wrap:wrap;gap:var(--space-3);margin-top:var(--space-6)}.hero__profile{position:relative;flex-shrink:0}.hero__profile:before{content:"";position:absolute;inset:-20px;z-index:0;border-radius:50%;background:radial-gradient(circle,rgba(139,92,246,.35),transparent 70%);filter:blur(18px)}.hero__profile-image{position:relative;z-index:1;width:140px;height:140px;object-fit:cover;border:2px solid var(--border);border-radius:50%;box-shadow:var(--shadow-soft)}.hero__panel{display:flex;justify-content:flex-end}.hero-card{position:relative;overflow:hidden;width:min(100%,430px);border:1px solid var(--border);border-radius:var(--radius-lg);background:linear-gradient(180deg,#ffffff0a,#ffffff05),var(--bg-elevated);box-shadow:var(--shadow-soft)}.hero-card__glow{position:absolute;inset:-20% auto auto 55%;width:240px;height:240px;border-radius:999px;background:radial-gradient(circle,rgba(139,92,246,.18),transparent 70%);pointer-events:none}.hero-card__content{position:relative;padding:var(--space-6)}.hero-card__label{margin-bottom:var(--space-3);color:var(--accent-2);font-size:.85rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.hero-card__title{font-size:1.6rem}.hero-card__text{margin-top:var(--space-3)}.hero-card__stack{display:flex;flex-wrap:wrap;gap:.75rem;margin:var(--space-5) 0 0;padding:0;list-style:none}.hero-card__stack li{padding:.5rem .8rem;border:1px solid var(--border);border-radius:999px;background:#ffffff08;color:var(--text);font-size:.9rem}@media(max-width:960px){.hero__inner{grid-template-columns:1fr}.hero__panel{justify-content:flex-start}.hero__intro{flex-direction:column;align-items:flex-start;gap:1.25rem}.hero__profile-image{width:120px;height:120px}}@media(max-width:640px){.hero{padding:var(--space-7) 0}.hero__title{font-size:clamp(2.3rem,9vw,3rem)}.hero__title-accent{font-size:clamp(1.15rem,5vw,1.5rem)}.hero__summary{font-size:1rem}}.about-section{padding:var(--space-8) 0;border-top:1px solid var(--border)}.about-section__inner{display:grid;gap:var(--space-6)}.about-section__intro{max-width:760px}.about-section__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-4)}.about-section__card{padding:var(--space-5);border:1px solid var(--border);border-radius:var(--radius-md);background:#ffffff08;box-shadow:var(--shadow-soft)}.about-section__card p{color:var(--text)}.about-section__card--wide{grid-column:1 / -1}@media(max-width:760px){.about-section__grid{grid-template-columns:1fr}}.project-card{position:relative;display:flex;flex-direction:column;border:1px solid var(--border);border-radius:var(--radius-md);overflow:hidden;background:#ffffff08;box-shadow:var(--shadow-soft);transform:translateY(0);transition:transform .25s ease,border-color .25s ease,background-color .25s ease,box-shadow .25s ease}.project-card:before{content:"";position:absolute;inset:-1px;border-radius:inherit;background:radial-gradient(circle at 30% 20%,rgba(139,92,246,.45),rgba(139,92,246,.15),transparent 70%);opacity:0;transition:opacity .35s ease;z-index:0;pointer-events:none}.project-card:hover{transform:translateY(-6px);border-color:#ffffff38;background:#ffffff0b;box-shadow:0 18px 40px #0000003d}.project-card:hover:before{opacity:1}.project-card__image{overflow:hidden;position:relative;z-index:1}.project-card__image img{width:100%;height:200px;object-fit:cover;transform:scale(1);transition:transform .35s ease}.project-card:hover .project-card__image img{transform:scale(1.04)}.project-card__content{padding:var(--space-5);display:flex;flex-direction:column;gap:var(--space-3);position:relative;z-index:1}.project-card__description{font-size:.95rem}.project-card__stack{display:flex;flex-wrap:wrap;gap:.5rem;padding:0;list-style:none}.project-card__stack li{font-size:.8rem;padding:.35rem .6rem;border-radius:999px;border:1px solid var(--border);background:#ffffff0d}.project-card__cta{margin-top:.5rem;color:var(--accent-2);font-weight:600;font-size:.9rem;transition:transform .25s ease,color .25s ease}.project-card:hover .project-card__cta{transform:translate(4px);color:var(--text)}.project-card__links{display:flex;gap:var(--space-4);margin-top:var(--space-3)}.project-card__links a{font-weight:600;font-size:.9rem}.project-card:focus-visible{outline:2px solid var(--accent-2);outline-offset:4px;transform:translateY(-6px)}.featured-projects{padding:var(--space-9) 0;border-top:1px solid var(--border)}.featured-projects__intro{max-width:700px;margin-bottom:var(--space-6)}.featured-projects__description{margin-top:var(--space-3)}.featured-projects__filters{display:flex;flex-wrap:wrap;gap:.75rem;margin-bottom:var(--space-6)}.featured-projects__filter{padding:.65rem 1rem;border:1px solid var(--border);border-radius:999px;background:#ffffff08;color:var(--text);font-size:.92rem;font-weight:600;cursor:pointer;transition:transform .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,box-shadow .2s ease}.featured-projects__filter:hover{transform:translateY(-2px);border-color:#ffffff38;background:#ffffff0f}.featured-projects__filter--active{border-color:#c4b5fd73;background:#8b5cf624;color:var(--text);box-shadow:0 8px 24px #8b5cf61f}.featured-projects__filter:focus-visible{outline:2px solid var(--accent-2);outline-offset:3px}.featured-projects__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:var(--space-6);margin-top:var(--space-2)}.skills-section{padding:var(--space-9) 0;border-top:1px solid var(--border)}.skills-section__intro{max-width:760px;margin-bottom:var(--space-7)}.skills-section__description{margin-top:var(--space-3)}.skills-section__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-5)}.skills-card{padding:var(--space-5);border:1px solid var(--border);border-radius:var(--radius-md);background:#ffffff08;box-shadow:var(--shadow-soft)}.skills-card__title{margin-bottom:var(--space-4)}.skills-card__list{display:flex;flex-wrap:wrap;gap:.75rem;margin:0;padding:0;list-style:none}.skills-card__item{padding:.55rem .8rem;border:1px solid var(--border);border-radius:999px;background:#ffffff0d;color:var(--text);font-size:.9rem}@media(max-width:980px){.skills-section__grid{grid-template-columns:1fr}}.experience-section{padding:var(--space-9) 0;border-top:1px solid var(--border)}.experience-section__intro{max-width:760px;margin-bottom:var(--space-7)}.experience-section__description{margin-top:var(--space-3)}.experience-section__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-5)}.experience-card{padding:var(--space-5);border:1px solid var(--border);border-radius:var(--radius-md);background:#ffffff08;box-shadow:var(--shadow-soft)}.experience-card h3{margin-bottom:var(--space-3)}.experience-card p{color:var(--text-muted)}@media(max-width:980px){.experience-section__grid{grid-template-columns:1fr}}.contact-section{padding:var(--space-9) 0;border-top:1px solid var(--border)}.contact-section__inner{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr);gap:var(--space-6);align-items:start}.contact-section__content{max-width:720px}.contact-section__text{margin-top:var(--space-4)}.contact-section__card{display:grid;gap:var(--space-3);padding:var(--space-5);border:1px solid var(--border);border-radius:var(--radius-md);background:#ffffff08;box-shadow:var(--shadow-soft)}.contact-section__form{display:grid;gap:var(--space-3);margin-bottom:var(--space-2)}.contact-section__input,.contact-section__textarea{width:100%;border:1px solid var(--border);border-radius:var(--radius-sm);background:#ffffff08;color:var(--text);padding:.9rem 1rem;font:inherit;outline:none;transition:border-color .2s ease,background .2s ease}.contact-section__input::placeholder,.contact-section__textarea::placeholder{color:#ffffff80}.contact-section__input:focus,.contact-section__textarea:focus{border-color:#ffffff38;background:#ffffff0f}.contact-section__textarea{min-height:140px;resize:vertical}.contact-section__button{min-height:52px;padding:.9rem 1rem;border:1px solid var(--border);border-radius:var(--radius-sm);background:#ffffff14;color:var(--text);font:inherit;font-weight:600;cursor:pointer;transition:border-color .2s ease,background .2s ease,transform .2s ease}.contact-section__button:hover{border-color:#ffffff38;background:#ffffff1f;transform:translateY(-2px)}.contact-section__button:disabled{opacity:.7;cursor:not-allowed;transform:none}.contact-section__status{margin:0;font-size:.95rem}.contact-section__status--error{color:#ff8a8a}.contact-section__status--success{color:#8ee7a8}.contact-section__link{display:inline-flex;align-items:center;min-height:52px;padding:.9rem 1rem;border:1px solid var(--border);border-radius:var(--radius-sm);background:#ffffff08;color:var(--text);font-weight:600}.contact-section__link:hover{border-color:#ffffff38;background:#ffffff0f;transform:translateY(-2px)}@media(max-width:860px){.contact-section__inner{grid-template-columns:1fr}}.site-footer{border-top:1px solid rgba(255,255,255,.08);padding:var(--space-5) 0}.site-footer__inner{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4)}.site-footer__brand{display:flex;align-items:center;gap:.85rem}.site-footer__logo{height:30px;width:auto;max-width:120px;object-fit:contain;opacity:.95;flex-shrink:0}.site-footer__brand-text{display:flex;flex-direction:column;line-height:1.1}.site-footer__name{color:var(--text);font-weight:700}.site-footer__role{font-size:.85rem;color:var(--text-muted);margin-top:.15rem}.site-footer__meta{display:flex;flex-direction:column;align-items:flex-end;gap:.35rem}.site-footer__meta p{color:var(--text-muted);font-size:.92rem}.system-status{font-size:.9rem;opacity:.8}.system-status a{text-decoration:underline}@media(max-width:700px){.site-footer__inner{flex-direction:column;align-items:flex-start;gap:1rem}.site-footer__meta{align-items:flex-start}.site-footer__logo{height:28px}}.reveal{opacity:0;transform:translateY(22px);transition:opacity .7s ease,transform .7s ease;will-change:opacity,transform}.reveal--visible{opacity:1;transform:translateY(0)}@media(prefers-reduced-motion:reduce){.reveal,.reveal--visible{opacity:1;transform:none;transition:none}}.project-hero{padding:var(--space-9) 0 var(--space-7);border-bottom:1px solid var(--border)}.project-hero__title{margin-top:var(--space-3)}.project-hero__description{margin-top:var(--space-4);max-width:700px;font-size:1.05rem}.project-hero__stack{display:flex;flex-wrap:wrap;gap:.6rem;margin-top:var(--space-5);padding:0;list-style:none}.project-hero__stack li{padding:.45rem .75rem;border-radius:999px;border:1px solid var(--border);background:#ffffff0d;font-size:.85rem}.project-back{padding-top:var(--space-6)}.project-back__link{color:var(--accent-2);font-weight:600}:root{--bg: #0b1020;--bg-elevated: #121933;--surface: #18213f;--text: #f5f7ff;--text-muted: #b8c0dc;--accent: #8b5cf6;--accent-2: #c4b5fd;--border: rgba(255, 255, 255, .12);--shadow-soft: 0 10px 30px rgba(0, 0, 0, .18);--radius-sm: 10px;--radius-md: 16px;--radius-lg: 24px;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.5rem;--space-6: 2rem;--space-7: 3rem;--space-8: 4rem;--space-9: 6rem;--container: 1200px;--font-sans: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:320px;background:radial-gradient(circle at 15% 20%,rgba(139,92,246,.08),transparent 40%),radial-gradient(circle at 85% 80%,rgba(139,92,246,.06),transparent 45%),var(--bg);color:var(--text);font-family:var(--font-sans);line-height:1.5;animation:pageFade .45s ease}@keyframes pageFade{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}img{display:block;max-width:100%}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}h1,h2,h3,h4,h5,h6,p,ul{margin:0}h1{font-size:clamp(2.8rem,6vw,5rem);line-height:1.02;letter-spacing:-.04em}h2{font-size:clamp(2rem,4vw,3rem);line-height:1.08;letter-spacing:-.03em}h3{font-size:clamp(1.35rem,2vw,1.8rem);line-height:1.15;letter-spacing:-.02em}p{color:var(--text-muted);font-size:1rem}.button{position:relative;display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:.8rem 1.2rem;border:1px solid transparent;border-radius:999px;font-weight:600;cursor:pointer;transform:translateY(0);transition:transform .18s ease,box-shadow .18s ease,background-color .18s ease,border-color .18s ease,color .18s ease}.button--primary{background:var(--accent);color:#fff;box-shadow:0 0 #0000}.button--primary:hover{transform:translateY(-3px);background:linear-gradient(135deg,var(--accent-2),var(--accent));box-shadow:0 10px 26px #00000040}.button--secondary{border-color:var(--border);background:#ffffff0a;color:var(--text);box-shadow:0 0 #0000}.button--secondary:hover{transform:translateY(-3px);border-color:#ffffff3d;background:#ffffff14;box-shadow:0 10px 26px #00000038}.button:active{transform:translateY(-1px);box-shadow:0 4px 12px #0000002e}.button:focus-visible{outline:2px solid var(--accent-2);outline-offset:3px}.container{width:min(100% - 2rem,var(--container));margin:0 auto}.eyebrow{margin-bottom:var(--space-3);color:var(--accent-2);font-size:.85rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase}.button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:.8rem 1.2rem;border:1px solid transparent;border-radius:999px;font-weight:600}.button--primary{background:var(--accent);color:#fff}.button--primary:hover{transform:translateY(-1px);background:#7c3aed}.button--secondary{border-color:var(--border);background:#ffffff0a;color:var(--text)}.button--secondary:hover{transform:translateY(-1px);border-color:#ffffff3d;background:#ffffff14}
