@import url(https://fonts.googleapis.com/css2?family=Cairo:wght@200;300;400&display=swap);@import url(https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600&family=Manrope:wght@400;500;600&display=swap);::-webkit-scrollbar{height:10px;width:10px}::-webkit-scrollbar-track{box-shadow:inset 0 0 6px rgba(0,0,0,.3);-webkit-box-shadow:inset 0 0 6px rgba(0,0,0,.3)}::-webkit-scrollbar-thumb{background-color:rgba(54,54,54,.5);border-radius:5px}:root{--bg:#0b0c0d;--surface:#121416;--line:hsla(0,0%,100%,.12);--text:#f4f2ed;--muted:#9c9d9c;--lime:#c8ff43;--orange:#ff6337}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:#0b0c0d!important;background:var(--bg)!important;color:#f4f2ed!important;color:var(--text)!important;font-family:DM Sans,sans-serif!important;margin:0}body.modal-open jdiv{display:none!important}.cursor-dot,.cursor-preview,.cursor-ring{display:none}a,button{font:inherit}button{color:inherit}.ui-icon{fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex:0 0 auto;height:1.05em;width:1.05em}.portfolio-shell{background:#0b0c0d;background:var(--bg);min-height:100vh;overflow:hidden}.noise{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='a'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23a)' opacity='.8'/%3E%3C/svg%3E");inset:0;opacity:.035;pointer-events:none;position:fixed;z-index:20}.site-header{align-items:center;display:flex;height:88px;inset:0 0 auto;justify-content:space-between;padding:0 clamp(24px,5vw,80px);position:fixed;transition:.3s ease;z-index:50}.site-header.is-scrolled{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:rgba(11,12,13,.78);border-bottom:1px solid hsla(0,0%,100%,.12);border-bottom:1px solid var(--line);height:68px}.brand{background:none;border:0;cursor:pointer;font-size:26px;font-weight:600;letter-spacing:-1.5px;padding:8px 0}.brand span{color:#c8ff43;color:var(--lime)}.desktop-nav{display:flex;gap:34px}.desktop-nav button,.lang,.menu-toggle{background:none;border:0;color:#9c9d9c;color:var(--muted);cursor:pointer;transition:.2s}.desktop-nav button:hover,.lang:hover{color:#f4f2ed;color:var(--text)}.header-actions{align-items:center;display:flex;gap:16px}.lang{font-size:13px;letter-spacing:1.5px}.resume{align-items:center;border:1px solid hsla(0,0%,100%,.12);border:1px solid var(--line);border-radius:30px;color:#f4f2ed;color:var(--text);display:inline-flex;gap:6px;padding:10px 15px;text-decoration:none;transition:.2s}.resume:hover{background:#c8ff43;background:var(--lime);border-color:#c8ff43;border-color:var(--lime);color:#0b0c0d;color:var(--bg)}.menu-toggle,.mobile-menu{display:none}.section-pad{padding-left:clamp(24px,7vw,112px);padding-right:clamp(24px,7vw,112px)}.hero{align-items:center;border-bottom:1px solid hsla(0,0%,100%,.12);border-bottom:1px solid var(--line);display:flex;min-height:100vh;padding-bottom:70px;padding-top:130px}.hero,.hero-copy{position:relative}.hero-copy{width:100%;z-index:2}.eyebrow,.hero-tag{color:#c8ff43;color:var(--lime);font-size:12px;font-weight:600;letter-spacing:2.4px;text-transform:uppercase}.status-line{align-items:center;color:#9c9d9c;color:var(--muted);display:flex;font-size:13px;gap:9px;position:absolute;right:0;top:0}.status-dot{animation:pulse 2s infinite;background:#c8ff43;background:var(--lime);border-radius:50%;box-shadow:0 0 0 6px rgba(200,255,67,.1);display:block;height:8px;width:8px}@keyframes pulse{50%{box-shadow:0 0 0 12px rgba(200,255,67,0)}}.hero h1{font-family:Manrope,sans-serif;font-size:clamp(52px,7.2vw,112px);font-weight:500;letter-spacing:-.065em;line-height:.95;margin:30px 0 48px;max-width:1200px}.hero h1 span{color:#696b6a;display:block;font-size:.38em;letter-spacing:-.03em;margin-bottom:20px}.hero-bottom{grid-gap:80px;align-items:end;display:grid;gap:80px;grid-template-columns:minmax(280px,520px) 1fr}.hero-bottom>p{color:#9c9d9c;color:var(--muted);font-size:clamp(17px,1.5vw,21px);line-height:1.55;margin:0}.hero-actions{align-items:center;display:flex;gap:20px;justify-content:flex-end}.primary-btn{background:#c8ff43;background:var(--lime);border:0;color:#0a0b0a;cursor:pointer;display:flex;font-weight:600;justify-content:space-between;min-width:190px;padding:17px 22px;transition:.25s}.primary-btn:hover{box-shadow:0 14px 35px rgba(200,255,67,.15);transform:translateY(-3px)}.text-btn{align-items:center;background:none;border:0;border-bottom:1px solid hsla(0,0%,100%,.12);border-bottom:1px solid var(--line);cursor:pointer;display:inline-flex;gap:8px;padding:16px 0}.hero-orb{border-radius:50%;filter:blur(10px);pointer-events:none;position:absolute}.orb-one{animation:float 8s ease-in-out infinite;background:radial-gradient(circle,rgba(255,99,55,.17),transparent 68%);height:380px;right:5%;top:16%;width:380px}.orb-two{animation:float 10s ease-in-out infinite reverse;background:radial-gradient(circle,rgba(200,255,67,.08),transparent 68%);bottom:0;height:280px;left:28%;width:280px}@keyframes float{50%{transform:translate(24px,-28px) scale(1.08)}}.scroll-cue{align-items:center;bottom:25px;color:#777;display:flex;font-size:9px;gap:12px;letter-spacing:2px;position:absolute;right:clamp(24px,5vw,80px)}.scroll-cue span{background:hsla(0,0%,100%,.12);background:var(--line);height:1px;width:70px}.about,.experience,.projects{padding-bottom:140px;padding-top:140px}.section-heading{grid-gap:50px;align-items:start;display:grid;gap:50px;grid-template-columns:minmax(160px,1fr) 3fr;margin-bottom:80px}.section-heading p{margin:9px 0 0}.section-heading h2{font-family:Manrope,sans-serif;font-size:clamp(38px,5vw,72px);font-weight:500;letter-spacing:-.045em;line-height:1.08;margin:0;max-width:970px}.about{background:#0e0f10}.about-grid{grid-gap:clamp(50px,8vw,140px);align-items:end;display:grid;gap:clamp(50px,8vw,140px);grid-template-columns:minmax(260px,.8fr) 1.3fr}.portrait-wrap{max-width:460px;position:relative}.portrait-wrap:before{border:1px solid rgba(200,255,67,.45);content:"";inset:14px -14px -14px 14px;position:absolute}.portrait-wrap img{aspect-ratio:4/5;display:block;filter:grayscale(100%) contrast(1.07);object-fit:cover;position:relative;width:100%;z-index:1}.portrait-wrap span{background:#c8ff43;background:var(--lime);bottom:20px;color:#0b0c0d;font-size:11px;left:20px;letter-spacing:1.4px;padding:9px 12px;position:absolute;text-transform:uppercase;z-index:2}.about-copy>p{font-family:Manrope,sans-serif;font-size:clamp(23px,2.6vw,40px);letter-spacing:-.025em;line-height:1.35;margin:0 0 60px}.facts{grid-gap:24px;border-top:1px solid hsla(0,0%,100%,.12);border-top:1px solid var(--line);display:grid;gap:24px;grid-template-columns:repeat(3,1fr);padding-top:30px}.facts div{display:flex;flex-direction:column}.facts strong{color:#c8ff43;color:var(--lime);font-size:clamp(38px,4vw,62px);font-weight:500}.facts span{color:#9c9d9c;color:var(--muted)}.tech-visual{grid-gap:clamp(45px,7vw,110px);align-items:center;display:grid;gap:clamp(45px,7vw,110px);grid-template-columns:.72fr 1.28fr;margin-top:120px}.tech-visual-copy h3{font-family:Manrope,sans-serif;font-size:clamp(34px,4vw,58px);font-weight:500;letter-spacing:-.045em;line-height:1.05;margin:18px 0 22px;max-width:470px}.tech-visual-copy>p:last-child{color:#9c9d9c;color:var(--muted);line-height:1.65;max-width:420px}.about-details{grid-gap:clamp(50px,8vw,120px);align-items:start;display:grid;gap:clamp(50px,8vw,120px);grid-template-columns:1fr 1.35fr;margin-top:110px}.detail-label{color:#9c9d9c;color:var(--muted);font-size:11px;letter-spacing:2px;margin:0 0 24px;text-transform:uppercase}.stack-cloud{display:flex;flex-wrap:wrap;gap:9px}.stack-cloud span{border:1px solid hsla(0,0%,100%,.12);border:1px solid var(--line);color:#d7d8d4;font-size:13px;padding:10px 13px;transition:.2s}.stack-cloud span:hover{background:#c8ff43;background:var(--lime);border-color:#c8ff43;border-color:var(--lime);color:#0b0c0d;transform:translateY(-2px)}.service-list{border-top:1px solid hsla(0,0%,100%,.12);border-top:1px solid var(--line)}.service-item{grid-gap:24px;align-items:start;border-bottom:1px solid hsla(0,0%,100%,.12);border-bottom:1px solid var(--line);display:grid;gap:24px;grid-template-columns:44px 1fr 1.45fr;padding:26px 0}.service-item>span{color:#c8ff43;color:var(--lime);font-size:11px}.service-item h3{font-family:Manrope,sans-serif;font-size:19px;font-weight:500;margin:0}.service-item p{color:#9c9d9c;color:var(--muted);font-size:14px;line-height:1.55;margin:0}.experience{border-bottom:1px solid hsla(0,0%,100%,.12);border-bottom:1px solid var(--line)}.experience,.experience-list{border-top:1px solid hsla(0,0%,100%,.12);border-top:1px solid var(--line)}.experience-card{grid-gap:45px;border-bottom:1px solid hsla(0,0%,100%,.12);border-bottom:1px solid var(--line);display:grid;gap:45px;grid-template-columns:1fr 2.5fr auto;padding:42px 0}.company,.exp-time,.experience-card>div>p{color:#9c9d9c;color:var(--muted)}.exp-time small{color:#666967;display:block;font-size:11px;margin-top:9px}.experience-card h3{font-family:Manrope,sans-serif;font-size:clamp(28px,3vw,46px);font-weight:500;letter-spacing:-.03em;margin:8px 0 20px}.experience-card ul{color:#9c9d9c;color:var(--muted);list-style:none;margin:0;max-width:760px;padding:0}.experience-card li{line-height:1.55;margin:9px 0;padding-left:18px;position:relative}.experience-card li:before{background:#c8ff43;background:var(--lime);border-radius:50%;content:"";height:5px;left:0;position:absolute;top:.7em;width:5px}.company{margin:0}.exp-arrow{color:#c8ff43;color:var(--lime);height:30px;width:30px}.skill-marquee{background:#c8ff43;background:var(--lime);color:#0b0c0d;margin:90px calc(clamp(24px,7vw,112px)*-1) -140px;overflow:hidden;padding:20px 0;transform:rotate(-1.3deg);white-space:nowrap}.skill-marquee div{animation:marquee 24s linear infinite;display:inline-block;font-size:20px;font-weight:600;letter-spacing:1px}.skill-marquee i{font-style:normal;padding:0 22px}@keyframes marquee{to{transform:translateX(-45%)}}.projects{background:#0e0f10}.project-list{display:flex;flex-direction:column;gap:100px}.project-card{grid-gap:clamp(40px,7vw,110px);align-items:center;cursor:pointer;display:grid;gap:clamp(40px,7vw,110px);grid-template-columns:1.3fr 1fr;outline:none}.project-card:focus-visible{box-shadow:0 0 0 2px #c8ff43;box-shadow:0 0 0 2px var(--lime)}.project-card:nth-child(2n) .project-image{order:2}.project-card:nth-child(2n) .project-content{order:1}.project-image{background:#17191b;overflow:hidden;position:relative}.project-image img{aspect-ratio:16/10;display:block;filter:saturate(.75);object-fit:cover;transition:.7s cubic-bezier(.22,1,.36,1);width:100%}.project-card:hover .project-image img{filter:saturate(1);transform:scale(1.035)}.project-image span{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:rgba(11,12,13,.85);border:1px solid hsla(0,0%,100%,.12);border:1px solid var(--line);display:grid;height:44px;left:16px;place-items:center;position:absolute;top:16px;width:44px}.project-type{color:#c8ff43!important;color:var(--lime)!important;font-size:11px!important;letter-spacing:1.8px;text-transform:uppercase}.project-content h3{font-family:Manrope,sans-serif;font-size:clamp(34px,4vw,58px);font-weight:500;letter-spacing:-.045em;margin:15px 0 24px}.project-content>p{color:#9c9d9c;color:var(--muted);font-size:18px;line-height:1.65}.project-tech{border-bottom:1px solid hsla(0,0%,100%,.12);border-bottom:1px solid var(--line);border-top:1px solid hsla(0,0%,100%,.12);border-top:1px solid var(--line);color:#d5d5d1;margin:28px 0 18px;padding:20px 0}.project-content small{color:#656766}.project-open{align-items:center;border-bottom:1px solid rgba(200,255,67,.4);color:#c8ff43;color:var(--lime);display:inline-flex;font-size:13px;gap:7px;margin-top:24px;padding-bottom:4px}.project-modal-backdrop{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:rgba(3,4,4,.88);display:grid;inset:0;padding:32px;place-items:center;position:fixed;z-index:2147483647}.project-modal{background:#111315;border:1px solid hsla(0,0%,100%,.16);box-shadow:0 30px 100px rgba(0,0,0,.7);max-height:calc(100vh - 64px);overflow-y:auto;position:relative;scrollbar-color:#454846 #111315;scrollbar-width:thin;width:min(920px,100%)}.modal-close{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:rgba(10,11,12,.78);border:1px solid hsla(0,0%,100%,.3);border-radius:30px;color:#f4f2ed;color:var(--text);cursor:pointer;display:flex;gap:11px;padding:9px 12px 9px 16px;position:absolute;right:18px;top:18px;transition:.2s;z-index:3}.modal-close:hover{background:#c8ff43;background:var(--lime);border-color:#c8ff43;border-color:var(--lime);color:#0b0c0d}.modal-close .ui-icon{height:18px;width:18px}.modal-hero{min-height:390px;overflow:hidden;position:relative}.modal-hero:after{background:linear-gradient(90deg,rgba(8,9,10,.97),rgba(8,9,10,.76) 44%,rgba(8,9,10,.12)),linear-gradient(0deg,rgba(8,9,10,.85),transparent 60%);content:"";inset:0;position:absolute}.modal-hero>div{bottom:clamp(28px,5vw,52px);left:clamp(25px,5vw,58px);position:absolute;width:min(500px,70%);z-index:2}.modal-hero h2{font-family:Manrope,sans-serif;font-size:clamp(44px,6vw,76px);font-weight:500;letter-spacing:-.055em;line-height:.92;margin:13px 0 18px}.modal-hero>div>p:last-child{color:#c1c3bf;line-height:1.55;margin:0;max-width:470px}.modal-hero img{display:block;filter:saturate(.8) contrast(1.04);height:390px;object-fit:cover;object-position:center;width:100%}.modal-grid{border-top:1px solid hsla(0,0%,100%,.12);border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr;margin:0 clamp(25px,5vw,58px)}.modal-grid>div{border-bottom:1px solid hsla(0,0%,100%,.12);border-bottom:1px solid var(--line);padding:30px 28px 30px 0}.modal-grid>div:nth-child(2n){border-left:1px solid hsla(0,0%,100%,.12);border-left:1px solid var(--line);padding-left:28px;padding-right:0}.modal-label{color:#c8ff43;color:var(--lime);display:block;font-size:10px;font-weight:600;letter-spacing:1.8px;margin-bottom:17px;text-transform:uppercase}.modal-grid li,.modal-grid p{color:#9c9d9c;color:var(--muted);line-height:1.65}.modal-grid ul{margin:0;padding-left:18px}.modal-tech{color:#d8d9d5;font-size:13px;margin-top:22px}.modal-note{border-left:2px solid rgba(200,255,67,.35);color:#6f7270;font-size:11px;line-height:1.5;margin:26px clamp(25px,5vw,58px) 34px;padding-left:16px}.contact{background:#ff6337;background:var(--orange);color:#111;display:flex;flex-direction:column;justify-content:space-between;min-height:76vh;padding-bottom:60px;padding-top:150px}.contact .eyebrow{color:#111;opacity:.7}.contact h2{font-family:Manrope,sans-serif;font-size:clamp(50px,8vw,118px);font-weight:500;letter-spacing:-.065em;line-height:.93;margin:40px 0;max-width:1000px}.contact-copy{font-size:19px;line-height:1.6;max-width:530px}.email-link{align-items:center;border-bottom:2px solid #111;color:#111;display:flex;font-size:clamp(25px,3vw,42px);font-weight:500;justify-content:space-between;margin-top:65px;max-width:660px;padding:24px 0;text-decoration:none}.email-link .ui-icon{transition:.2s}.email-link:hover .ui-icon{transform:translate(4px,-4px)}.contact-links{align-self:flex-end;display:flex;gap:30px;margin-top:60px}.contact-links a{align-items:center;border-bottom:1px solid rgba(0,0,0,.35);color:#111;display:inline-flex;gap:5px;padding-bottom:4px;text-decoration:none}footer{align-items:center;color:#777;display:flex;font-size:13px;justify-content:space-between;min-height:100px;padding:30px clamp(24px,7vw,112px)}footer button{align-items:center;background:none;border:0;color:#aaa;cursor:pointer;display:inline-flex;gap:7px}@media(max-width:900px){.desktop-nav{display:none}.menu-toggle{border-left:1px solid hsla(0,0%,100%,.12);border-left:1px solid var(--line);color:#f4f2ed;color:var(--text);display:block;padding-left:16px}.mobile-menu{background:#0b0c0d;display:flex;flex-direction:column;inset:0;padding:120px 24px 40px;position:fixed;z-index:40}.mobile-menu button{align-items:center;background:none;border:0;border-bottom:1px solid hsla(0,0%,100%,.12);border-bottom:1px solid var(--line);display:flex;font-size:clamp(30px,9vw,50px);gap:20px;padding:24px 0;text-align:left}.mobile-menu button span{color:#c8ff43;color:var(--lime);font-size:11px}.hero-bottom,.section-heading{gap:30px;grid-template-columns:1fr}.hero-actions{justify-content:flex-start}.section-heading{margin-bottom:55px}.section-heading .eyebrow{margin:0}.about-grid{grid-template-columns:1fr}.about-details,.tech-visual{grid-template-columns:1fr;margin-top:80px}.portrait-wrap{max-width:400px}.experience-card{grid-template-columns:1fr auto}.experience-card>div:nth-child(2){grid-column:1/3}.project-card{gap:30px;grid-template-columns:1fr}.project-card:nth-child(2n) .project-content,.project-card:nth-child(2n) .project-image{order:0}}@media(max-width:600px){.site-header{height:70px}.header-actions{gap:8px}.resume{display:block;font-size:12px;padding:7px 10px}.menu-toggle{font-size:13px;padding-left:10px}.hero{align-items:flex-start;padding-top:110px}.status-line{margin-bottom:38px;position:static}.hero h1{font-size:clamp(45px,14.2vw,66px);margin-top:22px}.hero-bottom{gap:25px}.hero-actions{flex-wrap:wrap}.primary-btn{width:100%}.scroll-cue{display:none}.about,.experience,.projects{padding-bottom:95px;padding-top:95px}.facts{gap:12px}.facts strong{font-size:36px}.facts span{font-size:12px}.service-item{gap:14px;grid-template-columns:32px 1fr}.service-item p{grid-column:2}.skill-marquee{margin-bottom:-95px}.project-list{gap:70px}.project-modal-backdrop{padding:0;place-items:stretch}.project-modal{border:0;max-height:100vh;width:100%}.modal-close{font-size:12px;right:12px;top:12px}.modal-hero{min-height:420px}.modal-hero:after{background:linear-gradient(0deg,rgba(8,9,10,.98) 5%,rgba(8,9,10,.55) 65%,rgba(8,9,10,.12))}.modal-hero img{height:420px}.modal-hero>div{bottom:28px;left:22px;right:22px;width:auto}.modal-hero h2{font-size:46px}.modal-grid{grid-template-columns:1fr;margin:0 22px}.modal-grid>div,.modal-grid>div:nth-child(2n){border-left:0;padding:25px 0}.modal-note{margin:24px 22px 32px}.contact{min-height:80vh;padding-top:100px}.contact-links{align-self:flex-start;flex-wrap:wrap}footer{align-items:flex-start;flex-wrap:wrap;gap:20px}footer span:nth-child(2){display:none}}@media(prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important}}@media(pointer:fine) and (prefers-reduced-motion:no-preference){.project-card,a,body,button{cursor:none!important}.cursor-dot,.cursor-ring{display:block;left:0;opacity:0;pointer-events:none;position:fixed;top:0;will-change:transform;z-index:2147483646}body.cursor-active .cursor-dot,body.cursor-active .cursor-ring{opacity:1}.cursor-dot{background:#c8ff43;background:var(--lime);border-radius:50%;height:6px;margin:-3px 0 0 -3px;transition:opacity .2s;width:6px}.cursor-ring{border:1px solid rgba(200,255,67,.65);border-radius:50%;height:34px;margin:-17px 0 0 -17px;transition:width .25s,height .25s,margin .25s,border-color .25s,opacity .2s,transform 75ms linear;width:34px}.cursor-ring.is-project{background:rgba(200,255,67,.06);border-color:rgba(200,255,67,.22);height:58px;margin:-29px 0 0 -29px;width:58px}.cursor-preview{background:#151718;border:1px solid hsla(0,0%,100%,.18);box-shadow:0 20px 55px rgba(0,0,0,.5);display:block;left:0;opacity:0;padding:8px;pointer-events:none;position:fixed;scale:.94;top:0;transform-origin:top left;transition:opacity .18s,scale .22s;width:268px;will-change:transform;z-index:2147483645}.cursor-preview.is-visible{opacity:1;scale:1}.cursor-preview img{display:block;filter:saturate(.8);height:155px;object-fit:cover;width:100%}.cursor-preview>div{align-items:center;display:flex;gap:12px;padding:11px 6px 5px}.cursor-preview span{color:#c8ff43;color:var(--lime);font-size:10px}.cursor-preview strong{font-size:13px;font-weight:500}body.modal-open .cursor-preview{display:none}}.spline-stage{background:#111315;height:560px;isolation:isolate;overflow:hidden;position:relative;width:100%}.spline-stage iframe{border:0;height:100%;inset:0;position:absolute;width:100%;z-index:1}.spline-glow{animation:splinePulse 5s ease-in-out infinite;background:radial-gradient(circle,rgba(200,255,67,.12),transparent 62%);filter:blur(22px);inset:18% 12%;position:absolute;z-index:0}.spline-cover{background:#111315;bottom:0;height:48px;pointer-events:none;position:absolute;right:0;width:125px;z-index:2}@keyframes splinePulse{50%{opacity:.55;transform:scale(1.12)}}@media(max-width:600px){.spline-stage{height:480px}.spline-cover{width:110px}}@media(prefers-reduced-motion:reduce){.spline-glow{animation:none}}
/*# sourceMappingURL=main.31064a50.css.map*/