@font-face{font-family:vazirmatn;src:url(../media/Vazirmatn_Regular-s.p.3nc7nhhw4ple2.ttf)format("truetype");font-display:swap;font-weight:400;font-style:normal}@font-face{font-family:vazirmatn;src:url(../media/Vazirmatn_Bold-s.p.12oo84civjy3b.ttf)format("truetype");font-display:swap;font-weight:700;font-style:normal}@font-face{font-family:vazirmatn Fallback;src:local(Arial);ascent-override:101.52%;descent-override:53.18%;line-gap-override:0.0%;size-adjust:101.0%}.so07qa_className{font-family:vazirmatn,vazirmatn Fallback}.so07qa_variable{--font-persian:"vazirmatn", "vazirmatn Fallback"}
:root{--paper:#fff;--ink:#000;--line:#0000001a;--gutter:2.5vw;--header-height:83px;--small:clamp(13px, 1.25vw, 22px);--copy:clamp(16px, 1.55vw, 28px);--ease:cubic-bezier(.21,.83,.27,1)}*{box-sizing:border-box}html{background:var(--paper);color:var(--ink);scrollbar-gutter:stable;scroll-behavior:smooth;scroll-padding-top:calc(var(--header-height) + 20px)}body{font:400 var(--small)/1.2 Arial, Helvetica, sans-serif;letter-spacing:normal;-webkit-font-smoothing:antialiased;margin:0}h1,h2,h3,p,figure{margin:0;font-weight:400}a{color:inherit;text-decoration:none}button{font:inherit;letter-spacing:inherit;color:inherit;cursor:pointer;background:0 0;border:0}ul{margin:0;padding:0;list-style:none}img{object-fit:cover;width:100%;height:auto;display:block}a,button{-webkit-tap-highlight-color:transparent}:focus-visible{outline-offset:5px;outline:2px solid #4663e8}::selection{color:#fff;background:#171717}.sr-only{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{z-index:200;color:#fff;background:#000;padding:12px;position:fixed;top:8px;left:8px;transform:translateY(-160%)}.skip-link:focus{transform:translateY(0)}.page-gutter{padding-inline:var(--gutter)}:lang(fa){font-family:var(--font-persian),sans-serif;letter-spacing:normal}.site-header{z-index:50;padding:16px var(--gutter);-webkit-backdrop-filter:blur(16px);background:#fffffff0;border-bottom:1px solid #0000000d;position:sticky;top:0}.navbar{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:20px;min-height:48px;font-size:14px;line-height:1;display:grid;position:relative}.wordmark{white-space:nowrap;align-items:center;width:fit-content;min-height:44px;display:inline-flex}.brand-name{letter-spacing:-.055em;font-size:clamp(19px,1.55vw,25px);font-weight:400;line-height:1.1}.desktop-links{align-items:center;gap:clamp(24px,2.8vw,44px);display:flex}.nav-link{color:#666;letter-spacing:-.025em;justify-content:center;align-items:center;gap:4px;min-height:44px;padding:0 2px;font-size:15px;transition:color .25s;display:inline-flex;position:relative}.nav-link:after{content:"";transform-origin:100%;height:1px;transition:transform .35s var(--ease);background:currentColor;position:absolute;bottom:6px;left:2px;right:2px;transform:scaleX(0)}.nav-link:is(:hover,:focus-visible),.nav-link[aria-current=page]{color:var(--ink)}.nav-link:is(:hover,:focus-visible):after,.nav-link[aria-current=page]:after{transform-origin:0;transform:scaleX(1)}.nav-count{color:#666;letter-spacing:normal;font-variant-numeric:tabular-nums;align-self:flex-start;margin-top:8px;font-size:10px;line-height:1}.nav-contact{color:#fff;white-space:nowrap;background:#171717;border:1px solid #171717;border-radius:999px;justify-content:center;justify-self:end;align-items:center;gap:14px;min-height:44px;padding:0 19px;font-size:13px;transition:background .25s;display:inline-flex}.nav-contact:hover{background:#383838}.nav-contact svg,.menu-contact svg{transition:transform .3s var(--ease);flex-shrink:0}.nav-contact:hover svg,.menu-contact:hover svg{transform:translate(2px,-2px)}.link-label:after,.underline-link:after{content:"";transform-origin:100%;width:100%;height:1px;transition:transform .5s var(--ease);background:currentColor;position:absolute;bottom:-2px;left:0;transform:scaleX(0)}.link-label,.underline-link{position:relative}.arrow-link:hover .link-label:after,.underline-link:hover:after{transform-origin:0;transform:scaleX(1)}.menu-toggle,.mobile-menu{display:none}.home-hero{padding:6vw var(--gutter) 11.5vw;flex-direction:column;align-items:center;gap:3.5vw;display:flex}.hero-name{perspective:25vw;letter-spacing:-.067em;justify-content:center;align-items:flex-end;gap:2vw;font-size:15.2vw;line-height:.76;display:flex}.hero-word{display:block;overflow:hidden}.hero-letter{animation:1.2s cubic-bezier(.18,.66,.18,1) both line-in;animation-delay:calc(var(--letter) * 70ms);display:inline-block}.hero-word-first{animation:1.5s cubic-bezier(.66,0,.23,1) both word-left}.hero-word-last{animation:1.5s cubic-bezier(.66,0,.23,1) both word-right}.hero-reel{background:#ececec;border-radius:3px;flex:0 0 14vw;width:14vw;height:10vw;padding:0;animation:1.5s cubic-bezier(.28,.54,.39,1) both reel-in;position:relative;overflow:hidden}.hero-reel img{opacity:0;width:100%;height:100%;animation:6s linear infinite project-reel;animation-delay:calc(var(--frame) * 1.5s);position:absolute;inset:0}.hero-reel img:first-child{opacity:1}.hero-paused .hero-reel img{animation-play-state:paused}.hero-subtitle{text-align:center;letter-spacing:normal;font-size:3.6vw;line-height:1.1}.hero-actions{flex-wrap:wrap;justify-content:center;gap:1.25rem 2.5rem;display:flex}.hero-actions .arrow-link{align-items:center;min-height:44px}.hero-availability{color:#595959;text-align:center;margin-top:-2vw;font-size:max(13px,1vw)}.line-clip{min-height:4.1vw;padding-bottom:1px;display:block;overflow:hidden}.line-clip>span{animation:line-in 1.1s var(--ease) both;animation-delay:.18s;display:block}.line-clip:nth-child(2)>span{animation-delay:.28s}.line-clip:nth-child(3)>span{animation-delay:.38s}.info-row{border-top:1px solid #0000;grid-template-columns:1fr 1fr;align-items:start;padding-top:2.5vw;display:grid;position:relative}.info-right{justify-content:space-between;align-items:start;gap:2vw;display:flex}.numbered-copy{max-width:21vw;font-size:var(--copy);text-indent:4vw;line-height:1.2;position:relative}.copy-number{text-indent:0;letter-spacing:-.02em;font-size:max(10px,.8vw);position:absolute;top:0;left:0}.info-action{white-space:nowrap}.arrow-link{align-items:baseline;gap:.45em;width:fit-content;display:inline-flex}.link-arrow{transition:transform .5s var(--ease);display:inline-block}.arrow-link:hover .link-arrow{transform:translate(.2em)}.selected-work{padding:5vw var(--gutter) 14vw}.section-heading{justify-content:space-between;align-items:flex-end;margin-bottom:3.5vw;display:flex}.section-heading h2{font-size:3.6vw}.project-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:5vw 3px;display:grid}.project-card{flex-direction:column;gap:.7vw;min-width:0;display:flex}.project-visual{background:var(--project-color,#eee);border-radius:4px;height:33vw;overflow:hidden}.project-visual>img{object-position:center;width:100%;height:100%;transition:transform 1s var(--ease)}.project-card:hover .project-visual>img{transform:scale(1.025)}.project-placeholder{color:#28241f;flex-direction:column;justify-content:center;align-items:center;gap:1.2vw;width:100%;height:100%;display:flex}.project-placeholder>span{letter-spacing:-.065em;font-size:clamp(25px,4.3vw,90px)}.project-placeholder small{letter-spacing:-.01em;font-size:.8em}.project-caption{align-items:baseline;gap:.6vw;display:flex}.project-caption h3{font-size:var(--copy)}.project-card-summary{color:#595959;max-width:38em;padding-right:2vw;font-size:max(14px,1.1vw);line-height:1.45}.project-index{letter-spacing:-.02em;font-size:max(10px,.8vw)}.card-arrow{opacity:0;transition:opacity .6s,transform .6s var(--ease);transform:translate(-.3em)}.project-card:is(:hover,:focus-visible) .card-arrow{opacity:1;transform:translate(0)}.mobile-all-work{display:none}.site-footer{border-top:1px solid var(--line);margin:0 var(--gutter) 4vw;grid-template-columns:1fr 1fr;align-items:start;padding-top:2.5vw;display:grid}.footer-right{justify-content:space-between;gap:2vw;display:flex}.footer-column{flex-direction:column;gap:2vw;max-width:21vw;display:flex}.footer-message{font-size:var(--copy);line-height:1.2}.footer-contact{font-size:var(--small);line-height:1.2}.footer-contact>p{font-size:var(--small)}.footer-contact a{overflow-wrap:anywhere}.work-hero{padding-top:2.5vw;padding-bottom:7vw}.work-title-wrapper{justify-content:center;padding:6vw 0 12vw;display:flex}.work-title{letter-spacing:normal;align-items:center;gap:1.5vw;font-size:8vw;line-height:1;display:flex}.idea-tile{background:#fffb24;border-radius:3px;justify-content:center;align-items:center;width:8.5vw;height:8.5vw;display:inline-flex;transform:none}.idea-tile svg{width:78%;height:78%;animation:4s ease-in-out infinite idea-wiggle}.all-work{padding-top:5vw;padding-bottom:14vw}.about-page{grid-template-columns:43vw minmax(0,1fr);align-items:start;display:grid}.about-portrait{top:var(--header-height);height:calc(100dvh - var(--header-height));justify-content:center;align-items:start;padding:7vw 2.5vw 2vw;display:flex;position:sticky}.portrait-frame{background:#e9e9e7;border-radius:3px;width:18vw;height:24vw;overflow:hidden}.portrait-frame img{object-position:center 35%;height:100%}.about-content{flex-direction:column;gap:12vw;padding:6.3vw 2.5vw 2vw 0;display:flex}.about-intro{flex-direction:column;gap:3vw;display:flex}.about-intro p+p{text-indent:2vw}.about-intro p{text-indent:7vw;letter-spacing:normal;max-width:47vw;font-size:2.5vw;line-height:1.2}.about-details{flex-direction:column;gap:12vw;margin-bottom:12vw;padding-left:7vw;display:flex}.about-services,.about-credits{flex-direction:column;gap:7vw;display:flex}.about-info{flex-direction:column;gap:3vw;display:flex}.about-info h2{font-size:3vw}.about-info p{font-size:var(--copy);line-height:1.3}.experience-list{gap:clamp(32px,4vw,64px);display:grid}.experience-entry{border-top:1px solid var(--line);padding-top:clamp(18px,2vw,32px)}.experience-heading{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:.75rem 1.25rem;display:flex}.experience-heading h3{font-size:var(--copy)}.about-info .experience-period{color:#666;font-size:var(--small);white-space:nowrap}.about-info .experience-role{font-size:var(--small);color:#595959;margin-top:.75rem}.experience-highlights{color:#444;font-size:var(--small);gap:1rem;margin-top:1.5rem;padding-left:1.1em;line-height:1.55;list-style:outside;display:grid}.skill-groups{gap:1.5rem;margin:0;display:grid}.skill-group{border-top:1px solid var(--line);grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:1.5rem;padding-top:1.25rem;line-height:1.5;display:grid}.skill-group dt{color:#666}.skill-group dd{margin:0}.skill-group ul{flex-wrap:wrap;gap:.25rem 1rem;display:flex}.about-social{flex-wrap:wrap;gap:1rem 1.5rem;display:flex}.service-copy{text-indent:2vw;max-width:34vw;padding-left:6vw;position:relative}.service-copy>span{text-indent:0;font-size:1vw;position:absolute;top:0;left:0}.muted{color:#666}.about-info .reference-credit{font-size:var(--small);margin-top:-1.8vw}.about-contact{font-size:3vw}.project-page{grid-template-columns:43vw minmax(0,1fr);align-items:start;display:grid}.project-info{top:var(--header-height);min-height:calc(100dvh - var(--header-height));flex-direction:column;justify-content:space-between;gap:5vw;padding:0 2.5vw 2vw;display:flex;position:sticky}.project-number{font-size:1vw;position:absolute;top:-3.4vw;right:2.5vw}.project-title{letter-spacing:-.055em;overflow-wrap:anywhere;margin:3vw 0 6vw;font-size:4vw;line-height:1.05}.project-description{grid-template-columns:1.2fr 2fr;gap:1vw;display:grid}.project-date{font-size:max(12px,.9vw);line-height:1.5}.project-details{flex-direction:column;gap:2vw;line-height:1.25;display:flex}.project-fact h2{color:#595959;margin-bottom:.65rem;font-size:.8em}.project-fact ul{line-height:1.5}.project-fact .project-tech-list{flex-wrap:wrap;gap:.3rem .75rem;font-size:.9em;display:flex}.project-story{padding:clamp(24px,3.5vw,64px) 0;line-height:1.65}.story-label{color:#595959;margin-bottom:1rem;font-size:13px}.project-story>h2{text-wrap:balance;max-width:22ch;margin-bottom:1.5rem;font-size:clamp(28px,2.8vw,48px);line-height:1.15}.story-intro{max-width:56ch;font-size:clamp(17px,1.5vw,24px)}.story-section{border-top:1px solid var(--line);margin-top:2rem;padding-top:1.5rem}.project-story h3{margin-bottom:.6rem;font-size:clamp(17px,1.4vw,23px);line-height:1.35}.story-section p,.story-explore p{color:#444;max-width:65ch;font-size:clamp(15px,1.15vw,20px)}.story-explore{background:#f5f5f5;border-radius:4px;margin-top:2rem;padding:clamp(20px,2vw,36px)}.story-explore .arrow-link{margin-top:1rem}.project-external-links{flex-direction:column;gap:.8em;display:flex}.project-external-links .arrow-link{flex-direction:row-reverse}.project-availability{color:#777;font-size:.85em}.project-gallery{flex-direction:column;gap:1vw;padding:0 2.5vw 2vw 0;display:flex}.project-screenshot{margin-top:2vw}.gallery-group-title{margin-block:1rem 1.5rem;font-size:clamp(24px,2.2vw,36px);line-height:1.2}.project-screenshot img{border:1px solid var(--line);border-radius:4px;height:auto}.project-screenshot figcaption{color:#595959;margin-block:1rem 2rem;line-height:1.5}.project-page+.site-footer{margin-top:8vw}.project-cover{height:auto;aspect-ratio:var(--project-aspect-ratio,1.57)}.project-cover .project-placeholder{min-height:35vw}.next-project-mobile{display:none}.not-found{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:4vw;min-height:80dvh;display:flex}.not-found h1{letter-spacing:normal;font-size:clamp(48px,8vw,160px);line-height:1}.info-row:before{content:"";background:var(--line);transform-origin:0;height:1px;position:absolute;inset:-1px 0 auto}.info-row.reveal-ready{border-top-color:#0000}.info-row.reveal-ready:before{transition:transform 1.7s var(--ease);transform:scaleX(0)}.info-row.is-visible:before{transform:scaleX(1)}.page-enter{animation:page-in .65s var(--ease) both}.reveal-ready{opacity:0;transition:opacity 1s var(--ease),transform 1.1s var(--ease);transform:translateY(32px)}.reveal-ready.is-visible{opacity:1;transform:translateY(0)}@keyframes page-in{0%{opacity:0}to{opacity:1}}@keyframes line-in{0%{transform:translateY(115%)}to{transform:translateY(0)}}@keyframes word-left{0%{transform:translate(8.3vw)}to{transform:translate(0)}}@keyframes word-right{0%{transform:translate(-8.3vw)}to{transform:translate(0)}}@keyframes reel-in{0%{opacity:0;transform:scale(1.1)translate(1.5vw)rotateY(90deg)}to{opacity:1;transform:none}}@keyframes project-reel{0%{opacity:1;transform:scale(1.18)}24.99%{opacity:1;transform:scale(1)}25%,to{opacity:0;transform:scale(1)}}@keyframes idea-wiggle{0%,80%,to{transform:rotate(0)}85%{transform:rotate(-7deg)}90%{transform:rotate(7deg)}95%{transform:rotate(-3deg)}}@media (max-width:900px){:root{--header-height:69px}.site-header{padding:12px max(16px, var(--gutter))}.navbar{grid-template-columns:minmax(0,1fr) auto;gap:12px;min-height:44px}.wordmark{gap:10px}.brand-name{font-size:clamp(18px,4.8vw,22px)}.desktop-links,.nav-contact{display:none}.menu-toggle{border:1px solid var(--line);background:#fff;border-radius:999px;justify-content:center;align-items:center;gap:10px;min-width:92px;min-height:44px;padding:0 14px;font-size:13px;display:inline-flex}.menu-toggle:hover{background:#f4f4f3}.menu-is-open{-webkit-backdrop-filter:none;background:#fff}.menu-is-open .navbar{z-index:2}.mobile-menu{height:100dvh;padding:104px max(24px, 6vw) max(28px, env(safe-area-inset-bottom));animation:menu-in .45s var(--ease) both;overscroll-behavior:contain;background:#fff;flex-direction:column;gap:24px;display:flex;position:fixed;inset:0;overflow-y:auto}.menu-eyebrow{color:#737373;letter-spacing:.04em;font-size:12px}.mobile-menu nav{flex-direction:column;display:flex}.mobile-menu nav a{border-bottom:1px solid var(--line);letter-spacing:-.045em;min-height:64px;animation:line-in .5s var(--ease) both;animation-delay:calc(var(--order) * 45ms);justify-content:space-between;align-items:center;gap:20px;padding:12px 0;font-size:clamp(30px,7vw,48px);line-height:1.1;display:flex}.mobile-menu nav a[aria-current=page]{color:#6b6b6b}.mobile-menu nav a>svg{color:#929292}.menu-count{border:1px solid var(--line);letter-spacing:normal;border-radius:50%;place-items:center;min-width:28px;height:28px;font-size:12px;display:grid}.menu-footer{margin-top:auto;padding-top:24px}.menu-footer>p{color:#737373;margin-bottom:12px;font-size:12px}.menu-contact{color:#fff;background:#171717;border-radius:16px;justify-content:space-between;align-items:center;gap:16px;min-height:56px;padding:16px 20px;font-size:18px;display:flex}}@media (min-width:1800px){.footer-contact{font-size:18px}}@media (max-width:768px){:root{--gutter:4vw;--small:clamp(12px, 3.7vw, 22px);--copy:clamp(13px, 3.7vw, 23px)}html{scrollbar-gutter:auto}body{letter-spacing:normal}.desktop-only{display:none}.home-hero{padding:18vw var(--gutter) 20vw;gap:7vw}.hero-name{gap:2vw;font-size:16.8vw}.hero-reel{flex-basis:19vw;width:19vw;height:13vw}.line-clip{min-height:8.3vw}.hero-subtitle{letter-spacing:normal;font-size:7vw;line-height:1.1}.info-row{padding-top:7vw}.info-right{flex-direction:column;gap:10vw}.numbered-copy{text-indent:10vw;max-width:none}.copy-number{font-size:max(8px,2vw)}.info-action{white-space:normal}.selected-work{padding:5vw var(--gutter) 30vw}.section-heading{margin-bottom:7vw}.section-heading h2{font-size:6vw}.project-grid{flex-direction:column;gap:7vw;display:flex}.project-card{gap:2vw}.project-visual{height:60vw}.project-caption{gap:2vw}.project-index{font-size:max(8px,2vw)}.card-arrow{opacity:1;transform:none}.project-placeholder>span{font-size:8vw}.project-placeholder{gap:3vw}.mobile-all-work{margin:24vw auto 0;display:flex}.site-footer{margin-bottom:15vw;padding-top:7vw}.footer-right{flex-direction:column;gap:10vw}.footer-column{gap:5vw;max-width:none}.footer-message{font-size:clamp(12px,3.3vw,21px);line-height:1.3}.footer-contact{font-size:var(--small)}.work-hero{padding-top:4vw;padding-bottom:7vw}.work-title-wrapper{padding:20vw 0 25vw}.work-title{white-space:nowrap;gap:2vw;font-size:11vw}.idea-tile{flex-shrink:0;width:12vw;height:12vw}.all-work{padding-top:15vw;padding-bottom:30vw}.all-work .project-grid{gap:10vw}.about-page{flex-direction:column;display:flex}.about-portrait{justify-content:center;width:100%;height:auto;padding:20vw 4vw 15vw;position:static}.portrait-frame{width:40vw;height:54vw}.about-content{gap:20vw;padding:5vw 4vw 25vw}.about-intro{gap:7vw}.about-intro p+p{text-indent:5vw}.about-intro p{text-indent:15vw;max-width:none;font-size:5vw}.about-details{gap:20vw;margin-bottom:12vw;padding-left:10vw}.about-services,.about-credits{gap:15vw}.about-info{gap:5vw}.about-info h2{font-size:7vw}.experience-heading{flex-direction:column;gap:.5rem}.skill-group{grid-template-columns:1fr;gap:.75rem}.service-copy{text-indent:5vw;max-width:none;padding-left:15vw}.service-copy>span{font-size:3vw}.about-info .reference-credit{margin-top:-4vw;font-size:3.2vw}.about-contact{margin-top:7vw;font-size:9.7vw}.project-page{flex-direction:column;gap:20vw;padding:5vw 4vw 7vw;display:flex}.project-info{width:100%;min-height:0;padding:0;position:relative;top:auto}.project-number{font-size:3vw;top:0;right:0}.project-title{margin:10vw 0 15vw;font-size:10vw}.project-description{grid-template-columns:1fr 2fr;gap:4vw}.project-details{gap:7vw}.project-gallery{gap:1vw;width:100%;padding:0}.project-cover{height:auto}.project-cover .project-placeholder{min-height:60vw}.next-project-desktop{display:none}.next-project-mobile{margin:10vw auto 25vw;display:flex}}@keyframes menu-in{0%{transform:translate(101%)}to{transform:translate(0)}}.route-curtain{z-index:140;pointer-events:auto;background:#0000003b;position:fixed;inset:0}.route-curtain>div{background:var(--paper);position:absolute;inset:0}.route-curtain-cover{animation:.7s both curtain-shade}.route-curtain-cover>div{animation:.7s cubic-bezier(.76,0,.47,.95) both curtain-cover}.route-curtain-reveal{pointer-events:none;animation:1s both curtain-clear}.route-curtain-reveal>div{animation:1s cubic-bezier(.76,0,.47,.95) both curtain-reveal}.navigation-exit #page-content{animation:.7s cubic-bezier(.76,0,.47,.95) both navigation-exit}@keyframes curtain-shade{0%{background:0 0}to{background:#0000003b}}@keyframes curtain-cover{0%{transform:translateY(102%)}to{transform:translateY(0)}}@keyframes curtain-reveal{0%{transform:translateY(0)}to{transform:translateY(-102%)}}@keyframes curtain-clear{0%{background:#0000003b}to{background:0 0}}@keyframes navigation-exit{to{transform:translateY(-7rem)}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important;animation:none!important}.reveal-ready{opacity:1;transform:none}.route-curtain{display:none}.hero-reel img{opacity:0}.hero-reel img:first-child{opacity:1}}
