@import "https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300;0,400;1,300;1,400&family=DM+Sans:opsz,wght@9..40,300;9..40,400;9..40,500&display=swap";:root{--bg:#0d1117;--s1:#131929;--s2:#182030;--s3:#1e2a3e;--b:#a8c0ff1a;--bm:#a8c0ff33;--t:#e8edf8;--tm:#e8edf880;--td:#e8edf83d;--a:#5b8af0;--a2:#a8c0ff;--ab:#5b8af01f;--a2b:#a8c0ff14;--radius-xs:4px;--radius-sm:6px;--radius-md:12px;--radius-lg:16px}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--t);overflow-x:hidden}a{color:inherit;text-decoration:none}ul{list-style:none}button{cursor:pointer;font:inherit;color:inherit;background:0 0;border:none}img{max-width:100%;display:block}body{font-family:DM Sans,sans-serif;font-size:16px;line-height:1.7}.section{padding:6.5rem 3rem}@media (width<=960px){.section{padding:5rem 1.5rem}}.wrap{max-width:1120px;margin:0 auto}.section-label{letter-spacing:.16em;text-transform:uppercase;color:var(--a);align-items:center;gap:.75rem;margin-bottom:.875rem;font-size:.67rem;font-weight:500;display:flex}.section-label:before{content:"";background:var(--a);width:18px;height:1px;display:inline-block}.section-label--a2{color:var(--a2)}.section-label--a2:before{background:var(--a2)}.section-title{letter-spacing:-.015em;margin-bottom:3rem;font-family:Cormorant Garamond,serif;font-size:clamp(2.5rem,4.5vw,4rem);font-weight:300;line-height:1.04}.section-title em{color:var(--a);font-style:italic}.section-title--a2 em{color:var(--a2)}.btn{letter-spacing:.1em;text-transform:uppercase;border-radius:var(--radius-sm);cursor:pointer;border:none;align-items:center;gap:.7rem;padding:.85rem 2rem;font-size:.75rem;font-weight:500;transition:opacity .2s;display:inline-flex}.btn--solid{background:var(--a);color:#07080f}.btn--solid:hover{opacity:.85}.btn--outline{border:1px solid var(--bm);color:var(--tm);background:0 0;font-weight:400;transition:border-color .2s,color .2s}.btn--outline:hover{border-color:var(--a);color:var(--a)}.btn--a2{background:var(--a2);color:#07080f}.btn--a2:hover{opacity:.85}.nav{z-index:200;border-bottom:1px solid #0000;justify-content:space-between;align-items:center;padding:1.35rem 3rem;transition:background .35s,border-color .35s;display:flex;position:fixed;top:0;left:0;right:0}.nav--scrolled{-webkit-backdrop-filter:blur(20px);border-color:var(--b);background:#0d1117ed}.nav__logo{letter-spacing:.06em;color:var(--t);font-family:Cormorant Garamond,serif;font-size:1.1rem;font-weight:400}.nav__back{letter-spacing:.1em;text-transform:uppercase;color:var(--tm);cursor:pointer;font-size:.72rem;transition:color .2s}.nav__back:hover{color:var(--a2)}.nav__links{align-items:center;gap:1.875rem;display:flex}@media (width<=960px){.nav__links{display:none}}.nav__link{color:var(--tm);letter-spacing:.12em;text-transform:uppercase;cursor:pointer;font-size:.72rem;transition:color .2s}.nav__link:hover{color:var(--t)}.nav__badge{border:1px solid var(--a2);color:var(--a2);border-radius:var(--radius-sm);letter-spacing:.12em;text-transform:uppercase;cursor:pointer;padding:.38rem .95rem;font-size:.72rem;transition:background .2s,color .2s}.nav__badge:hover{color:var(--t);background:#a8c0ff1a}@media (width<=960px){.nav{padding:1.2rem 1.5rem}}.fade-in{opacity:0;transition:opacity .72s cubic-bezier(.22,1,.36,1),transform .72s cubic-bezier(.22,1,.36,1);transform:translateY(24px)}.fade-in--visible{opacity:1;transform:translateY(0)}.iphone{background:var(--bg);border-bottom:1px solid var(--b);justify-content:center;padding:2rem 1.75rem 1.5rem;display:flex}.iphone__body{background:linear-gradient(160deg,#1c1c28 0%,#0e0e18 40%,#131320 100%);border-radius:44px;width:200px;padding:8px 7px;position:relative;box-shadow:0 0 0 1.5px #ffffff21,0 0 0 2.5px #000c,0 24px 48px #00000080}.iphone__screen{background:#000;border-radius:37px;position:relative;overflow:hidden;box-shadow:inset 0 0 0 1px #ffffff0a}.iphone__viewport{border-radius:37px;height:403px;position:relative;overflow:hidden}.iphone__notch{z-index:10;background:linear-gradient(#0e0e18,#131320);border-radius:0 0 18px 18px;width:130px;height:30px;position:absolute;top:0;left:50%;transform:translate(-50%)}.iphone__video{object-fit:cover;width:100%;height:100%;display:block;position:absolute;inset:0}.iphone__placeholder{background:var(--s3);position:absolute;inset:0}.iphone__btn{background:linear-gradient(90deg,#1a1a28,#0e0e18);position:absolute}.iphone__btn--silent{border-radius:2px 0 0 2px;width:3.5px;height:30px;top:88px;left:-5px;box-shadow:-1px 0 #ffffff14,-1px 0 4px #0006}.iphone__btn--vol-up{border-radius:2px 0 0 2px;width:3.5px;height:54px;top:142px;left:-5px;box-shadow:-1px 0 #ffffff14,-1px 0 4px #0006}.iphone__btn--vol-down{border-radius:2px 0 0 2px;width:3.5px;height:54px;top:210px;left:-5px;box-shadow:-1px 0 #ffffff14,-1px 0 4px #0006}.iphone__btn--power{border-radius:0 2px 2px 0;width:3.5px;height:72px;top:164px;right:-5px;box-shadow:1px 0 #ffffff14,1px 0 4px #0006}.project-card{background:var(--s2);border-radius:var(--radius-md);flex-direction:column;transition:background .25s;display:flex;overflow:hidden}.project-card:hover{background:var(--s3)}.project-card__info{flex-direction:column;flex:1;padding:1.5rem 1.625rem 1.75rem;display:flex}.project-card__header{justify-content:space-between;align-items:flex-start;gap:.875rem;margin-bottom:.625rem;display:flex}.project-card__name{font-family:Cormorant Garamond,serif;font-size:1.55rem;font-weight:400;line-height:1.1}.project-card__badges{flex-wrap:wrap;flex-shrink:0;gap:.35rem;margin-top:.2rem;display:flex}.project-card__badge{letter-spacing:.09em;text-transform:uppercase;border:1px solid var(--b);color:var(--tm);white-space:nowrap;border-radius:var(--radius-xs);padding:.22rem .625rem;font-size:.58rem;font-weight:500}.project-card__badge--live{color:#e8743acc;background:#e8743a0d;border-color:#e8743a4d}.project-card__badge--demo{color:#22c55ecc;background:#22c55e0d;border-color:#22c55e4d}.project-card__desc{color:var(--tm);flex:1;margin-bottom:1rem;font-size:.84rem;font-weight:300;line-height:1.85}.project-card__tech{flex-wrap:wrap;gap:.35rem;margin-bottom:1rem;display:flex}.project-card__tag{letter-spacing:.07em;text-transform:uppercase;border:1px solid var(--b);color:var(--tm);border-radius:var(--radius-xs);background:#ffffff0a;padding:.2rem .56rem;font-size:.58rem;font-weight:500}.project-card__credentials{border:1px solid var(--b);border-radius:var(--radius-sm);background:#ffffff05;margin-bottom:1.1rem;overflow:hidden}.project-card__cred-label{letter-spacing:.12em;text-transform:uppercase;color:var(--td);border-bottom:1px solid var(--b);padding:.5rem .75rem .35rem;font-size:.6rem;font-weight:500}.project-card__cred-row{align-items:center;gap:.5rem;padding:.5rem .75rem;display:flex}.project-card__cred-row+.project-card__cred-row{border-top:1px solid var(--b)}.project-card__cred-role{letter-spacing:.08em;text-transform:uppercase;color:var(--td);flex-shrink:0;width:44px;font-size:.58rem;font-weight:500}.project-card__cred-fields{flex-wrap:wrap;flex:1;gap:.35rem;display:flex}.project-card__cred-field{border:1px solid var(--b);color:var(--tm);letter-spacing:.02em;cursor:pointer;border-radius:var(--radius-xs);background:#ffffff0a;align-items:center;gap:.35rem;padding:.28rem .6rem;font-family:DM Sans,sans-serif;font-size:.68rem;transition:border-color .15s,color .15s,background .15s;display:inline-flex}.project-card__cred-field svg{opacity:.5;flex-shrink:0}.project-card__cred-field:hover{border-color:var(--a);color:var(--a);background:var(--ab)}.project-card__cred-field:hover svg{opacity:1}.project-card__cred-field--copied{color:#22c55ed9;background:#22c55e0f;border-color:#22c55e66}.project-card__link{color:var(--a);cursor:pointer;align-items:center;gap:.45rem;margin-top:auto;padding-top:.25rem;font-size:.78rem;font-weight:500;transition:gap .2s;display:inline-flex}.project-card__link:hover{gap:.75rem}.service-card{background:var(--s1);border-radius:var(--radius-md);padding:2.25rem 2rem;transition:background .25s}.service-card:hover{background:var(--s2)}.service-card__num{color:var(--a2);opacity:.7;margin-bottom:1.25rem;font-family:Cormorant Garamond,serif;font-size:.85rem;font-weight:400}.service-card__title{color:var(--t);margin-bottom:.75rem;font-family:Cormorant Garamond,serif;font-size:1.5rem;font-weight:400}.service-card__desc{color:var(--tm);margin-bottom:1.25rem;font-size:.875rem;font-weight:300;line-height:1.85}.service-card__tags{flex-wrap:wrap;gap:.35rem;display:flex}.service-card__tag{letter-spacing:.07em;text-transform:uppercase;color:var(--a2);border-radius:var(--radius-xs);background:#a8c0ff0f;border:1px solid #a8c0ff24;padding:.2rem .56rem;font-size:.6rem;font-weight:500}.stat-block{background:var(--s2);border-radius:var(--radius-md);padding:2.25rem 2rem;position:relative;overflow:hidden}.stat-block:before{content:"";opacity:.06;pointer-events:none;border-radius:50%;width:120px;height:120px;position:absolute;top:-30px;right:-30px}.stat-block--primary:before{background:var(--a)}.stat-block--secondary:before{background:var(--a2)}.stat-block__num{letter-spacing:-.02em;margin-bottom:.5rem;font-family:Cormorant Garamond,serif;font-size:4.5rem;font-weight:300;line-height:1}.stat-block--primary .stat-block__num{color:var(--a)}.stat-block--secondary .stat-block__num{color:var(--a2)}.stat-block__label{color:var(--tm);max-width:180px;font-size:.8rem;font-weight:300;line-height:1.5}.contact-links{flex-direction:column;gap:.7rem;display:flex}.contact-links__item{border:1px solid var(--b);color:var(--t);border-radius:var(--radius-md);cursor:pointer;justify-content:space-between;align-items:center;padding:1.15rem 1.4rem;font-size:.86rem;transition:border-color .2s,color .2s;display:flex}.contact-links__item:hover{border-color:var(--a);color:var(--a)}.contact-links__item:hover .contact-links__arrow{transform:translate(2px,-2px)}.contact-links__arrow{transition:transform .2s;display:inline-block}.footer{border-top:1px solid var(--b);justify-content:space-between;align-items:center;padding:1.75rem 3rem;display:flex}@media (width<=960px){.footer{text-align:center;flex-direction:column;gap:.6rem;padding:1.5rem}}.footer__copy{color:var(--td);font-size:.73rem;font-weight:300}.footer__link{color:var(--a2);cursor:pointer;background:0 0;border:none;padding:0;font-size:.73rem;font-weight:300;transition:color .2s}.footer__link:hover{color:var(--t)}.hero{align-items:center;min-height:100vh;display:flex;position:relative;overflow:hidden}.hero__bg{z-index:0;background:url(/images/blue-banner.png) 50%/cover no-repeat;position:absolute;inset:0}.hero__overlay{z-index:1;background:#050a14;animation:3s ease-out .3s forwards hero-overlay-reveal;position:absolute;inset:0}.hero__content{z-index:2;width:100%;padding:0 3rem;position:relative}@media (width<=960px){.hero__content{padding:0 1.5rem}}.hero__eyebrow{letter-spacing:.16em;text-transform:uppercase;color:var(--a2);align-items:center;gap:.875rem;margin-bottom:1.75rem;font-size:.7rem;font-weight:500;animation:.8s ease-out .2s both hero-fade-up;display:flex}.hero__eyebrow:before{content:"";background:var(--a2);width:28px;height:1px;display:inline-block}.hero__name{letter-spacing:-.025em;margin-bottom:1.5rem;font-family:Cormorant Garamond,serif;font-size:clamp(4.5rem,10vw,9.5rem);font-weight:300;line-height:.87;animation:.9s ease-out .45s both hero-fade-up}.hero__name em{color:var(--a);font-style:italic}.hero__sub{color:var(--tm);max-width:520px;margin-bottom:3rem;font-size:1.05rem;font-weight:300;line-height:1.85;animation:.8s ease-out .65s both hero-fade-up}.hero__paths{grid-template-columns:1fr 1fr;gap:1rem;max-width:680px;animation:.8s ease-out .85s both hero-fade-up;display:grid}@media (width<=600px){.hero__paths{grid-template-columns:1fr}}@keyframes hero-overlay-reveal{0%{opacity:1}to{opacity:.75}}@keyframes hero-fade-up{0%{opacity:0;transform:translateY(22px)}to{opacity:1;transform:translateY(0)}}.path-card{cursor:pointer;border-radius:var(--radius-md);-webkit-backdrop-filter:blur(12px);outline:none;flex-direction:column;gap:.625rem;padding:1.875rem 2rem;transition:background .25s;display:flex}.path-card:focus-visible{outline:2px solid var(--a);outline-offset:-2px}.path-card--build{background:#5b8af02e;border:1px solid #5b8af04d}.path-card--build:hover{background:#5b8af042}.path-card--build .path-card__label,.path-card--build .path-card__cta{color:var(--a)}.path-card--hire{background:#a8c0ff1f;border:1px solid #a8c0ff38}.path-card--hire:hover{background:#a8c0ff33}.path-card--hire .path-card__label,.path-card--hire .path-card__cta{color:var(--a2)}.path-card__label{letter-spacing:.14em;text-transform:uppercase;font-size:.62rem;font-weight:500}.path-card__title{color:var(--t);font-family:Cormorant Garamond,serif;font-size:1.5rem;font-weight:400;line-height:1.1}.path-card__desc{color:var(--tm);font-size:.8rem;font-weight:300;line-height:1.6}.path-card__cta{letter-spacing:.1em;text-transform:uppercase;margin-top:.25rem;font-size:.72rem;font-weight:500;transition:letter-spacing .2s}.path-card:hover .path-card__cta{letter-spacing:.14em}.work{background:var(--s1)}.work__hint{color:var(--td);letter-spacing:.05em;margin-top:-2.25rem;margin-bottom:2.75rem;font-size:.78rem}.work__grid{grid-template-columns:repeat(3,1fr);gap:1.5rem;display:grid}@media (width<=960px){.work__grid{grid-template-columns:1fr}}.services__grid{grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-bottom:2.5rem;display:grid}@media (width<=960px){.services__grid{grid-template-columns:1fr}}.services__cta{text-align:center}.about{background:var(--s1)}.about__grid{grid-template-columns:1.15fr .85fr;align-items:start;gap:5.5rem;display:grid}@media (width<=960px){.about__grid{grid-template-columns:1fr;gap:2.5rem}}.about__text p{color:var(--tm);margin-bottom:1.2rem;font-size:1rem;font-weight:300;line-height:1.9}.about__text p strong{color:var(--t);font-weight:500}.about__stats{flex-direction:column;gap:1rem;display:flex}.contact__grid{grid-template-columns:1fr 1fr;align-items:center;gap:5.5rem;display:grid}@media (width<=960px){.contact__grid{grid-template-columns:1fr;gap:2.5rem}}.contact__note{color:var(--tm);margin-top:-.5rem;font-size:.95rem;font-weight:300;line-height:1.9}.icon-grid{background:var(--b);border-radius:var(--radius-md);grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:1px;display:grid;overflow:hidden}.icon-grid__cell{background:var(--s2);flex-direction:column;align-items:center;gap:.6rem;padding:1.4rem .875rem;transition:background .2s;display:flex}.icon-grid__cell:hover{background:var(--s3)}.icon-grid__icon{object-fit:contain;opacity:.7;width:30px;height:30px;transition:opacity .2s}.icon-grid__cell:hover .icon-grid__icon{opacity:1}.icon-grid__name{color:var(--tm);letter-spacing:.03em;text-align:center;font-size:.66rem}.career-hero{grid-template-columns:1fr auto;align-items:center;gap:4rem;min-height:85vh;padding:0 3rem;display:grid;position:relative;overflow:hidden}.career-hero:before{content:"";pointer-events:none;background:radial-gradient(#a8c0ff0f 0%,#0000 70%);border-radius:50%;width:500px;height:500px;position:absolute;top:50%;right:180px;transform:translateY(-50%)}@media (width<=960px){.career-hero{grid-template-columns:1fr;min-height:auto;padding:6rem 1.5rem 3rem}}.career-hero__left{padding-top:5rem}.career-hero__eyebrow{letter-spacing:.16em;text-transform:uppercase;color:var(--a2);align-items:center;gap:.875rem;margin-bottom:1.75rem;font-size:.7rem;font-weight:500;display:flex}.career-hero__eyebrow:before{content:"";background:var(--a2);width:28px;height:1px;display:inline-block}.career-hero__name{letter-spacing:-.025em;margin-bottom:1.5rem;font-family:Cormorant Garamond,serif;font-size:clamp(4.5rem,10vw,9.5rem);font-weight:300;line-height:.87}.career-hero__name em{color:var(--a2);font-style:italic}.career-hero__role{color:var(--tm);margin-bottom:.35rem;font-size:1rem;font-weight:300}.career-hero__role strong{color:var(--t);font-weight:500}.career-hero__open{color:var(--a2);align-items:center;gap:.6rem;margin-bottom:2.5rem;font-size:.78rem;display:flex}.career-hero__open:before{content:"";background:var(--a2);border-radius:50%;width:6px;height:6px;animation:2s infinite career-pulse;display:inline-block}.career-hero__btns{flex-wrap:wrap;gap:.875rem;display:flex}.career-hero__avatar-wrap{padding-top:5rem}@media (width<=960px){.career-hero__avatar-wrap{display:none}}.career-hero__avatar{border:1px solid var(--bm);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:260px;height:260px;display:flex;position:relative;overflow:hidden}.career-hero__avatar:before{content:"";background:radial-gradient(at 40% 30%,#a8c0ff1a,#0000 65%);position:absolute;inset:0}.career-hero__avatar-initials{color:var(--a2);opacity:.5;z-index:1;font-family:Cormorant Garamond,serif;font-size:4rem;font-weight:300}.career-hero__avatar-hint{letter-spacing:.1em;text-transform:uppercase;color:var(--td);text-align:center;z-index:2;font-size:.58rem;position:absolute;bottom:.875rem}@keyframes career-pulse{0%,to{opacity:1}50%{opacity:.3}}.career-stack{background:var(--s1)}.career-about__grid{grid-template-columns:1.15fr .85fr;align-items:start;gap:5.5rem;display:grid}@media (width<=960px){.career-about__grid{grid-template-columns:1fr;gap:2.5rem}}.career-about__text p{color:var(--tm);margin-bottom:1.2rem;font-size:1rem;font-weight:300;line-height:1.9}.career-about__text p strong{color:var(--t);font-weight:500}.career-about__stats{flex-direction:column;gap:1rem;display:flex}.career-resume{background:var(--s1)}.career-resume__card{border:1px solid var(--bm);border-radius:var(--radius-md);justify-content:space-between;align-items:center;gap:2rem;max-width:700px;padding:3rem;display:flex}@media (width<=600px){.career-resume__card{flex-direction:column;align-items:flex-start}}.career-resume__name{margin-bottom:.5rem;font-family:Cormorant Garamond,serif;font-size:1.75rem;font-weight:300}.career-resume__meta{color:var(--tm);font-size:.9rem;font-weight:300;line-height:1.7}.career-contact{background:var(--s1)}.career-contact__grid{grid-template-columns:1fr 1fr;align-items:center;gap:5.5rem;display:grid}@media (width<=960px){.career-contact__grid{grid-template-columns:1fr;gap:2.5rem}}.career-contact__note{color:var(--tm);margin-top:-.5rem;font-size:.95rem;font-weight:300;line-height:1.9}
