:root{--paper:#f7f7f3;--surface:#eeeee8;--ink:#102127;--body-text:#46565a;--marine:#17566a;--green:#174d38;--forest:#174d38;--line:rgba(16,33,39,.13);--muted:#7b8583;--font-display:"Fraunces",serif;--font-body:"Inter",sans-serif;--font-mono:"IBM Plex Mono",monospace;--font-arabic:"Noto Serif Arabic",serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);font-family:var(--font-body);color:var(--body-text)}a{color:inherit;text-decoration:none}::selection{background:rgba(23,77,56,.18);color:var(--ink)}:focus-visible{outline:2px solid var(--forest);outline-offset:4px}.shell{display:grid;grid-template-columns:240px minmax(0,1fr);min-height:100vh}.rail{position:-webkit-sticky;position:sticky;top:0;height:100vh;padding:32px 26px;display:flex;flex-direction:column;justify-content:space-between;border-right:1px solid var(--line);background:var(--paper)}.rail-top .mark{display:block;font-family:var(--font-display);font-size:20px;font-weight:600;letter-spacing:-.02em;color:var(--ink);margin-bottom:7px}.rail-top .mark span{color:var(--forest)}.rail-top .role{font-size:9px;color:var(--muted);letter-spacing:.08em}.language-switch,.rail-top .role{font-family:var(--font-mono);text-transform:uppercase}.language-switch{margin-top:24px;font-size:10px;letter-spacing:.06em}.language-switch a{color:var(--forest);border-bottom:1px solid rgba(23,77,56,.35);padding-bottom:3px}nav.index{margin-top:38px}nav.index a{display:flex;align-items:center;gap:10px;width:100%;padding:9px 0;font-family:var(--font-mono);font-size:10px;color:#89918f;border-bottom:1px solid var(--line);transition:color .2s ease}.tick{width:4px;height:4px;border-radius:50%;background:#b6bdb9;transition:transform .2s ease,background .2s ease;flex:none}.index a.current{color:var(--ink)}.index a.current .tick{background:var(--forest);transform:scale(1.7)}.index a:hover{color:var(--ink)}.rail-bottom{font-family:var(--font-mono);font-size:10px;color:var(--muted);line-height:1.9}.socials{display:flex;align-items:center;gap:10px;margin-bottom:12px}.social-icon{width:30px;height:30px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--line);color:var(--ink);transition:all .2s ease}.social-icon svg{width:15px;height:15px;fill:currentColor}.social-icon:hover{color:var(--paper);background:var(--forest);border-color:var(--forest)}.rail-bottom a:hover{color:var(--forest)}.rail-bottom .social-icon:hover{color:var(--paper)}main{width:100%;padding:0 clamp(28px,5vw,80px)}.hero,section{width:100%;max-width:1160px;margin-left:auto;margin-right:auto}.hero{min-height:84vh;display:flex;flex-direction:column;justify-content:center;padding:68px 0 58px!important;border-bottom:1px solid var(--line)}.hero-topline{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.hero-index{font-size:9px;color:var(--muted);letter-spacing:.08em}.eyebrow,.hero-index{font-family:var(--font-mono)}.eyebrow{font-size:10px;color:var(--forest);text-transform:uppercase;letter-spacing:.1em}.eyebrow:before{content:"— ";color:var(--forest)}.hero-identity{display:grid;grid-template-columns:180px minmax(0,1fr);grid-gap:42px;gap:42px;align-items:center}.hero-pfp{width:180px;height:180px;overflow:hidden;border-radius:4px;border:1px solid rgba(23,77,56,.35);background:var(--surface);box-shadow:10px 10px 0 rgba(23,77,56,.08)}.hero-pfp img{display:block;width:100%;height:100%;object-fit:cover}.hero h1{font-family:var(--font-display);font-weight:500;font-size:clamp(52px,5vw,72px);line-height:.98;letter-spacing:-.045em;color:var(--ink);max-width:850px;margin:0 0 24px}.hero h1 em{font-style:italic;font-weight:400;color:var(--forest)}.hero p.lede{font-size:17px;line-height:1.7;max-width:590px;margin:0}.hero-actions{display:flex;gap:11px;align-items:center;margin-top:27px}.hero-meta{justify-content:space-between;gap:20px;margin-top:auto;padding-top:44px;color:var(--muted);letter-spacing:.07em}.hero-meta,.section-kicker{display:flex;font-family:var(--font-mono);font-size:9px;text-transform:uppercase}.section-kicker{align-items:center;gap:15px;color:var(--forest);letter-spacing:.1em;margin-bottom:34px}section{padding:92px 0;border-bottom:1px solid var(--line)}section:last-child{border-bottom:0}.section-title{font-family:var(--font-display);font-weight:500;font-size:clamp(34px,4vw,56px);line-height:1.04;letter-spacing:-.035em;color:var(--ink);margin:0}.about-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(280px,.95fr);grid-gap:78px;gap:78px;align-items:start}.prose p{font-size:16px;line-height:1.82;margin:0 0 20px}.work-section{padding-bottom:104px}.project-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-column-gap:30px;column-gap:30px;grid-row-gap:62px;row-gap:62px}.project-card{display:block;border:0;border-top:1px solid var(--line);padding:0 0 8px;margin:0;transition:transform .3s ease}.project-card.featured-project{grid-column:1/-1;margin-bottom:10px}.thumb{position:relative;overflow:hidden;margin-bottom:20px;line-height:0;background:var(--surface)}.thumb img{display:block;width:100%;height:auto;filter:none;transition:transform .6s cubic-bezier(.2,.7,.2,1)}.thumb:after{content:"";position:absolute;inset:0;background:var(--forest);mix-blend-mode:multiply;opacity:0;transition:opacity .4s ease}.project-card:hover{transform:translateY(-3px)}.project-card:hover .thumb img{transform:scale(1.018)}.project-card:hover .thumb:after{opacity:.06}.project-card.featured-project .thumb{aspect-ratio:16/7.4;max-height:500px}.project-card.featured-project .thumb img{width:100%;height:100%;object-fit:cover;object-position:center}.project-card:not(.featured-project) .thumb{aspect-ratio:4/3}.project-card:not(.featured-project) .thumb img{width:100%;height:100%;object-fit:cover}.thumb-label{position:absolute;right:14px;bottom:13px;font-family:var(--font-mono);font-size:9px;color:#fff;background:var(--ink);padding:7px 9px;text-transform:uppercase;letter-spacing:.06em;z-index:1;opacity:0;transform:translateY(5px);transition:opacity .25s ease,transform .25s ease}.project-card:hover .thumb-label{opacity:1;transform:none}.project-info{position:relative;padding-right:42px}.project-info .tag{font-family:var(--font-mono);font-size:9px;color:var(--forest);text-transform:uppercase;letter-spacing:.08em}.project-info h3{font-family:var(--font-display);font-weight:500;font-size:clamp(25px,2.8vw,37px);line-height:1.08;letter-spacing:-.025em;color:var(--ink);margin:8px 0 9px;max-width:800px}.project-card:not(.featured-project) .project-info h3{font-size:clamp(23px,2.3vw,32px)}.project-info p{font-size:14px;line-height:1.65;max-width:620px;margin:0}.project-link{position:absolute;right:0;top:0;font-size:9px;opacity:.7}.empty-state{font-size:14px;color:var(--muted)}.experience-intro{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:45px;gap:45px;align-items:start;margin-bottom:58px;max-width:880px}.experience-list{border-top:1px solid var(--line)}.experience-item{display:grid;grid-template-columns:165px minmax(0,1fr);grid-gap:45px;gap:45px;padding:27px 0;border-bottom:1px solid var(--line)}.experience-date{font-family:var(--font-mono);font-size:9px;color:var(--muted);text-transform:uppercase;letter-spacing:.06em;padding-top:7px}.experience-item h3{font-family:var(--font-display);font-size:28px;line-height:1.1;font-weight:500;color:var(--ink);margin:0 0 5px}.experience-org{font-family:var(--font-mono);font-size:10px;color:var(--forest);text-transform:uppercase;letter-spacing:.07em;margin-bottom:16px}.experience-item .prose p{font-size:14px;max-width:680px}.btn-primary,.btn-secondary,.contact-link{display:inline-flex;align-items:center;gap:8px;font-family:var(--font-mono);font-size:10px;font-weight:500;text-transform:uppercase;letter-spacing:.06em;cursor:pointer;transition:transform .25s ease,background .25s ease}.btn-primary,.contact-link{background:var(--forest);color:var(--paper);padding:13px 18px}.btn-primary:hover,.contact-link:hover{transform:translateY(-2px);background:var(--ink)}.btn-secondary{background:transparent;color:var(--forest);border:1px solid var(--forest);padding:12px 17px}.btn-secondary:hover{transform:translateY(-2px);background:var(--forest);color:var(--paper)}.contact-heading{font-family:var(--font-display);font-weight:500;font-size:clamp(50px,6.4vw,86px);line-height:.95;letter-spacing:-.045em;color:var(--ink);max-width:900px;margin:0 0 24px}.contact-section>p{max-width:500px;font-size:16px;line-height:1.75}.contact-actions{display:flex;gap:11px;align-items:center;margin-top:26px}.back-link{display:inline-flex;font-family:var(--font-mono);font-size:10px;color:var(--forest);text-transform:uppercase;letter-spacing:.06em;margin-bottom:46px}.back-link:hover{color:var(--marine)}.filed-line{opacity:.55}.locale-root[dir=rtl]{font-family:var(--font-arabic)}.locale-root[dir=rtl] .shell{grid-template-columns:minmax(0,1fr) 240px}.locale-root[dir=rtl] .rail{grid-column:2;grid-row:1;border-right:0;border-left:1px solid var(--line)}.locale-root[dir=rtl] main{grid-column:1;grid-row:1}.locale-root[dir=rtl] .contact-heading,.locale-root[dir=rtl] .hero h1,.locale-root[dir=rtl] .project-info h3,.locale-root[dir=rtl] .section-title{font-family:var(--font-arabic);font-weight:600;letter-spacing:0}.locale-root[dir=rtl] .hero h1 em{font-family:var(--font-arabic);font-style:normal}.locale-root[dir=rtl] .thumb-label{right:auto;left:14px}.locale-root[dir=rtl] .project-info{padding-left:42px}.locale-root[dir=rtl] .project-link{right:auto;left:0}.locale-root[dir=rtl] .about-grid,.locale-root[dir=rtl] .experience-item{direction:rtl}.locale-root[dir=rtl] .experience-date{text-align:right}@media (max-width:820px){.locale-root[dir=rtl] .shell,.shell{display:block}.locale-root[dir=rtl] .rail,.rail{position:-webkit-sticky;position:sticky;top:0;height:auto;z-index:20;padding:14px 18px;border:0;border-bottom:1px solid var(--line);display:flex;flex-direction:row;align-items:center;gap:15px;background:hsla(60,20%,96%,.96);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.rail-top{display:flex;align-items:center;gap:13px;min-width:0}.rail-top .mark{font-size:17px;margin:0}.rail-top .role{display:none}.language-switch{margin:0;white-space:nowrap}nav.index{margin:0;display:flex;overflow-x:auto;scrollbar-width:none}nav.index::-webkit-scrollbar{display:none}nav.index a{width:auto;border:0;padding:7px 8px;white-space:nowrap;font-size:9px}.rail-bottom{display:none}.locale-root[dir=rtl] main,main{max-width:none;padding:0 20px}.hero{min-height:76vh;padding:58px 0 48px!important}.hero-identity{grid-template-columns:1fr;gap:26px}.hero-pfp{width:132px;height:132px}.hero h1{font-size:clamp(45px,12vw,66px);letter-spacing:-.04em}.hero p.lede{font-size:16px}.hero-meta{padding-top:42px;flex-direction:column;gap:8px}.hero-actions{flex-wrap:wrap}.section-kicker{margin-bottom:28px}section{padding:70px 0}.about-grid{display:block}.about-grid .prose{margin-top:28px}.project-grid{grid-template-columns:1fr;row-gap:54px}.project-card.featured-project{grid-column:auto}.project-card.featured-project .thumb{aspect-ratio:16/8.2;max-height:400px}.project-card:not(.featured-project) .thumb{aspect-ratio:4/3}.project-card:not(.featured-project) .project-info h3,.project-info h3{font-size:28px}.experience-intro{display:block;margin-bottom:48px}.experience-intro .btn-secondary{margin-top:20px}.experience-item{grid-template-columns:1fr;gap:10px;padding:24px 0}.experience-date{padding-top:0}.experience-item h3{font-size:26px}.contact-heading{font-size:clamp(48px,13vw,74px)}.contact-actions{flex-wrap:wrap}.locale-root[dir=rtl] .project-info{padding-left:42px}.locale-root[dir=rtl] .about-grid{direction:rtl}}main{scroll-padding-top:24px}section{scroll-margin-top:24px}.about-grid{display:block}.about-grid .prose{margin-top:28px;max-width:680px}.project-grid{grid-template-columns:1fr;row-gap:54px}.project-card.featured-project{grid-column:auto;margin-bottom:0}.experience-intro{display:block;margin-bottom:48px}.experience-intro .btn-secondary{margin-top:20px}.experience-item{grid-template-columns:1fr;gap:10px;padding:24px 0}.project-info{display:flex;flex-direction:column;align-items:flex-start;padding-right:0;padding-left:0}.project-link{position:static;display:inline-flex;align-items:center;justify-content:center;width:max-content;margin-top:18px;padding:10px 14px;border:1px solid var(--forest);background:transparent;color:var(--forest);font-family:var(--font-mono);font-size:10px;font-weight:500;line-height:1;letter-spacing:.04em;opacity:1;transition:transform .2s ease,background .2s ease,color .2s ease,border-color .2s ease}.project-card:hover .project-link{transform:translateY(-2px);background:var(--forest);color:var(--paper);border-color:var(--forest)}.project-card:focus-visible .project-link{background:var(--forest);color:var(--paper)}.thumb-label{display:none!important}.locale-root[dir=rtl] .project-info{padding-right:0;padding-left:0;align-items:flex-start}.error-page{min-height:100svh;padding:0!important;border:0!important;display:flex;align-items:center}.error-page-inner{width:100%;max-width:1160px;margin:0 auto;padding:clamp(34px,7vw,90px) 0}.error-page-grid{display:grid;grid-template-columns:minmax(0,1fr);grid-gap:44px;gap:44px;align-items:center}.error-page-grid.has-visual{grid-template-columns:minmax(0,1.15fr) minmax(260px,.85fr)}.error-page-copy{min-width:0}.error-page-eyebrow{margin-bottom:24px}.error-code{font-family:var(--font-mono);font-size:clamp(76px,15vw,150px);line-height:.8;letter-spacing:-.08em;color:var(--forest);margin:0 0 34px}.error-page-copy h1{font-family:var(--font-display);font-weight:500;font-size:clamp(32px,5vw,58px);line-height:1.05;letter-spacing:-.035em;color:var(--ink);max-width:720px;margin:0 0 24px}.error-page-copy p{font-size:17px;line-height:1.7;color:var(--body-text);max-width:600px;margin:0 0 34px;white-space:pre-line}.error-page-actions{display:flex;flex-wrap:wrap;gap:12px}.error-page-visual{width:100%;max-width:420px;aspect-ratio:1;justify-self:end;overflow:hidden;border-radius:2px;background:var(--surface);border:1px solid rgba(23,77,56,.18);box-shadow:10px 10px 0 rgba(23,77,56,.08)}.error-page-visual img{display:block;width:100%;height:100%;object-fit:cover}.error-page-visual-mobile{display:none}@media (max-width:820px){main{scroll-padding-top:74px}section{scroll-margin-top:74px}.project-link{margin-top:16px;padding:11px 15px}.error-page{min-height:calc(100svh - 61px);align-items:flex-start}.error-page-inner{padding:42px 0 52px}.error-page-grid,.error-page-grid.has-visual{grid-template-columns:1fr;gap:32px}.error-page-eyebrow{margin-bottom:20px}.error-identity{display:grid!important;grid-template-columns:minmax(0,1fr) 82px!important;align-items:center!important;grid-column-gap:16px!important;column-gap:16px!important;width:max-content!important;max-width:100%!important;min-height:0!important;margin:0 0 28px!important}.error-identity .error-code{grid-column:1!important;grid-row:1!important;align-self:center!important;font-size:clamp(72px,20vw,108px)!important;line-height:.72!important;letter-spacing:-.09em!important;margin:0!important;white-space:nowrap!important}.error-identity .error-page-visual-mobile{grid-column:2!important;grid-row:1!important;display:block!important;width:82px!important;height:82px!important;max-width:82px!important;flex:none!important;aspect-ratio:1!important;justify-self:start!important;align-self:center!important;margin:0!important}.error-identity .error-page-visual-mobile img{width:100%!important;height:100%!important;object-fit:cover!important;display:block!important}.error-page-visual-desktop{display:none!important}.error-page-copy h1{font-size:clamp(31px,8.7vw,46px);line-height:1.04;letter-spacing:-.025em;margin-bottom:20px}.error-page-copy p{font-size:15px;line-height:1.7;margin-bottom:26px;max-width:100%}.error-page-actions{gap:9px}.error-page-actions .btn-primary,.error-page-actions .btn-secondary{padding:12px 14px;font-size:9px}}@media (max-width:420px){.error-page-inner{padding-top:34px;padding-bottom:44px}.error-page-grid,.error-page-grid.has-visual{gap:28px}.error-identity{grid-template-columns:minmax(0,1fr) 72px!important;column-gap:14px!important;margin-bottom:24px!important}.error-identity .error-code{font-size:clamp(68px,20.5vw,94px)!important}.error-identity .error-page-visual-mobile{width:72px!important;height:72px!important;max-width:72px!important}.error-page-copy h1{font-size:clamp(29px,8.3vw,38px)}.error-page-actions{width:100%;display:grid;grid-template-columns:1fr 1fr}.error-page-actions a{justify-content:center;text-align:center}}.locale-root[dir=rtl] .error-page-copy h1{font-family:var(--font-arabic);font-weight:600;letter-spacing:0}.locale-root[dir=rtl] .error-page-copy p{font-family:var(--font-arabic)}.locale-root[dir=rtl] .error-page-visual{justify-self:start}