@font-face{font-family:Vazirmatn Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./vazirmatn-arabic-wght-normal-Cafbb7Zc.woff2)format("woff2-variations");unicode-range:U+6??,U+750-77F,U+870-88E,U+890-891,U+897-8E1,U+8E3-8FF,U+200C-200E,U+2010-2011,U+204F,U+2E41,U+FB50-FDFF,U+FE70-FE74,U+FE76-FEFC,U+102E0-102FB,U+10E60-10E7E,U+10EC2-10EC4,U+10EFC-10EFF,U+1EE00-1EE03,U+1EE05-1EE1F,U+1EE21-1EE22,U+1EE24,U+1EE27,U+1EE29-1EE32,U+1EE34-1EE37,U+1EE39,U+1EE3B,U+1EE42,U+1EE47,U+1EE49,U+1EE4B,U+1EE4D-1EE4F,U+1EE51-1EE52,U+1EE54,U+1EE57,U+1EE59,U+1EE5B,U+1EE5D,U+1EE5F,U+1EE61-1EE62,U+1EE64,U+1EE67-1EE6A,U+1EE6C-1EE72,U+1EE74-1EE77,U+1EE79-1EE7C,U+1EE7E,U+1EE80-1EE89,U+1EE8B-1EE9B,U+1EEA1-1EEA3,U+1EEA5-1EEA9,U+1EEAB-1EEBB,U+1EEF0-1EEF1}@font-face{font-family:Vazirmatn Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./vazirmatn-latin-ext-wght-normal-tDTa1Fj6.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Vazirmatn Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./vazirmatn-latin-wght-normal-BFexNX-K.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Unbounded Variable;font-style:normal;font-display:swap;font-weight:200 900;src:url(./unbounded-cyrillic-ext-wght-normal-2qyXmZWE.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Unbounded Variable;font-style:normal;font-display:swap;font-weight:200 900;src:url(./unbounded-cyrillic-wght-normal-C627f1f8.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Unbounded Variable;font-style:normal;font-display:swap;font-weight:200 900;src:url(./unbounded-vietnamese-wght-normal-rat7GD3o.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Unbounded Variable;font-style:normal;font-display:swap;font-weight:200 900;src:url(./unbounded-latin-ext-wght-normal-D6H-S6MW.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Unbounded Variable;font-style:normal;font-display:swap;font-weight:200 900;src:url(./unbounded-latin-wght-normal-D5afBTBx.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter Tight Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./inter-tight-cyrillic-ext-wght-normal-okcGN4Nq.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter Tight Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./inter-tight-cyrillic-wght-normal-BS41q_Tv.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter Tight Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./inter-tight-greek-ext-wght-normal-DQgQPNk4.woff2)format("woff2-variations");unicode-range:U+1F??}@font-face{font-family:Inter Tight Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./inter-tight-greek-wght-normal-sS1B39LI.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter Tight Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./inter-tight-vietnamese-wght-normal-TKKdAiBA.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter Tight Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./inter-tight-latin-ext-wght-normal-B4u9PlvR.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter Tight Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./inter-tight-latin-wght-normal-DX-nOvPD.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(./jetbrains-mono-cyrillic-ext-wght-normal-EocZY2iu.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(./jetbrains-mono-cyrillic-wght-normal-D73BlboJ.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(./jetbrains-mono-greek-wght-normal-Bw9x6K1M.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(./jetbrains-mono-vietnamese-wght-normal-Bt-aOZkq.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(./jetbrains-mono-latin-ext-wght-normal-DBQx-q_a.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(./jetbrains-mono-latin-wght-normal-B9CIFXIH.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Instrument Serif;font-style:normal;font-display:swap;font-weight:400;src:url(./instrument-serif-latin-ext-400-normal-C2je3j2s.woff2)format("woff2"),url(./instrument-serif-latin-ext-400-normal-CFCUzsTy.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Instrument Serif;font-style:normal;font-display:swap;font-weight:400;src:url(./instrument-serif-latin-400-normal-DnYpCC2O.woff2)format("woff2"),url(./instrument-serif-latin-400-normal-BVbkICAY.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Instrument Serif;font-style:italic;font-display:swap;font-weight:400;src:url(./instrument-serif-latin-ext-400-italic-C9HzH3YL.woff2)format("woff2"),url(./instrument-serif-latin-ext-400-italic-D7-lnxEk.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Instrument Serif;font-style:italic;font-display:swap;font-weight:400;src:url(./instrument-serif-latin-400-italic-DKMiL14s.woff2)format("woff2"),url(./instrument-serif-latin-400-italic-u__WvvIK.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}html.lenis,html.lenis body{height:auto}.lenis:not(.lenis-autoToggle).lenis-stopped{overflow:clip}.lenis [data-lenis-prevent],.lenis [data-lenis-prevent-wheel],.lenis [data-lenis-prevent-touch],.lenis [data-lenis-prevent-vertical],.lenis [data-lenis-prevent-horizontal]{overscroll-behavior:contain}.lenis.lenis-smooth iframe{pointer-events:none}.lenis.lenis-autoToggle{transition-behavior:allow-discrete;transition-property:overflow;transition-duration:1ms}@property --angle{syntax:"<angle>";inherits:false;initial-value:0deg}:root{--bg:#060608;--bg-2:#0c0c11;--bg-3:#14141b;--fg:#edeae3;--fg-dim:#edeae3a8;--fg-faint:#edeae366;--line:#edeae31f;--line-strong:#edeae342;--glass:#0e0e149e;--accent:#37f0cf;--accent-2:#ffb23f;--accent-3:#ff4d5e;--font-sans:"Inter Tight Variable", "Vazirmatn Variable", system-ui, sans-serif;--font-display:"Unbounded Variable", "Vazirmatn Variable", system-ui, sans-serif;--font-serif:"Instrument Serif", "Vazirmatn Variable", Georgia, serif;--font-mono:"JetBrains Mono Variable", "Vazirmatn Variable", ui-monospace, monospace;--pad:clamp(1.1rem, 3.4vw, 3.4rem);--header-h:76px;--radius:28px;--ease-out:cubic-bezier(.16, 1, .3, 1);--ease-in-out:cubic-bezier(.76, 0, .24, 1);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;interpolate-size:allow-keywords}html:lang(fa){--font-sans:"Vazirmatn Variable", system-ui, sans-serif;--font-display:"Vazirmatn Variable", system-ui, sans-serif;--font-serif:"Vazirmatn Variable", serif;--font-mono:"JetBrains Mono Variable", "Vazirmatn Variable", ui-monospace, monospace}html:lang(fa) body *{letter-spacing:normal!important}*,:before,:after{box-sizing:border-box}html{-webkit-tap-highlight-color:transparent;-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;scrollbar-width:thin;scrollbar-color:#edeae340 transparent}body{background:radial-gradient(120% 80% at 80% -10%, #0f1a1c 0%, transparent 55%), radial-gradient(90% 70% at 0% 110%, #1a130b 0%, transparent 50%), var(--bg);min-height:100svh;color:var(--fg);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;background-attachment:fixed;margin:0;font-size:clamp(1rem,.35vw + .9rem,1.125rem);line-height:1.6}h1,h2,h3,p,figure,blockquote,dl,dd{margin:0}img,svg{max-width:100%;display:block}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0;padding:0}ul,ol{margin:0;padding:0;list-style:none}::selection{background:var(--accent);color:var(--bg)}:focus-visible{outline:2px solid var(--accent);outline-offset:4px;border-radius:6px}em{font-family:var(--font-serif);color:var(--accent);letter-spacing:-.01em;font-style:italic;font-weight:400}html:lang(fa) em{background:linear-gradient(90deg, var(--accent), var(--accent-2));color:#0000;-webkit-background-clip:text;background-clip:text;font-style:normal;font-weight:900}.sr-only{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;position:absolute!important}.skip-link{z-index:300;background:var(--fg);color:var(--bg);transition:transform .4s var(--ease-out);border-radius:999px;padding:.8rem 1.2rem;font-weight:600;position:fixed;inset-block-start:1rem;inset-inline-start:1rem;transform:translateY(-200%)}.skip-link:focus-visible{transform:none}.w{overflow-clip-margin:.12em;vertical-align:top;margin-block:-.02em -.1em;padding-block:.02em .1em;display:inline-block;overflow:clip}.w-i,.ch{display:inline-block}.gl{z-index:0;pointer-events:none;width:100vw;height:100lvh;position:fixed;inset:0}#app{z-index:1;position:relative;overflow-x:clip}.fx-vignette{z-index:0;pointer-events:none;background:radial-gradient(130% 100%,#0000 55%,#0009 100%);position:fixed;inset:0}.no-webgl .fx-vignette{background:radial-gradient(40% 40% at 72% 30%,#37f0cf29,#0000 70%),radial-gradient(40% 40% at 20% 80%,#ffb23f1f,#0000 70%),radial-gradient(130% 100%,#0000 55%,#0009 100%)}.fx-grain{z-index:120;pointer-events:none;opacity:.07;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='220' height='220'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 1.4 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");animation:.9s steps(6,end) infinite grain;position:fixed;inset:-50%}@keyframes grain{0%{transform:translate(0)}20%{transform:translate(-6%,4%)}40%{transform:translate(5%,-7%)}60%{transform:translate(-3%,8%)}80%{transform:translate(7%,2%)}to{transform:translate(-4%,-5%)}}.preloader{display:none}.js .preloader{z-index:200;padding:var(--pad);background:var(--bg);clip-path:inset(0);grid-template-rows:auto 1fr auto auto;animation:0s 12s forwards pl-failsafe;display:grid;position:fixed;inset:0}@keyframes pl-failsafe{to{visibility:hidden}}.pl-row{font:500 .78rem/1.4 var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--fg-dim);justify-content:space-between;align-items:flex-end;gap:1rem;display:flex}.pl-name{font:700 clamp(2.2rem, 8vw, 8.5rem) / 1.05 var(--font-display);letter-spacing:-.045em;white-space:nowrap;place-self:center;padding-block:.05em;overflow:clip}.js .pl-name .ch{transform:translateY(120%)}html:lang(fa) .pl-name{font-size:clamp(3rem,11vw,10rem);font-weight:900;line-height:1.3}.pl-count{font:700 clamp(3rem, 11vw, 10rem) / .8 var(--font-display);letter-spacing:-.05em;color:var(--fg)}.pl-status{padding-bottom:.4rem}.pl-bar{background:var(--line);height:1px;margin-top:1.4rem}.pl-bar i{background:linear-gradient(90deg, var(--accent), var(--accent-2), var(--accent-3));transform-origin:0;height:100%;display:block;transform:scaleX(0)}[dir=rtl] .pl-bar i{transform-origin:100%}.cursor{display:none}.has-cursor .cursor{z-index:9999;pointer-events:none;opacity:0;transition:opacity .35s;display:block;position:fixed;inset:0}.has-cursor .cursor.is-visible{opacity:1}.has-cursor,.has-cursor *{cursor:none!important}.cursor-dot,.cursor-follow{position:fixed;top:0;left:0}.cursor-dot,.cursor-ring,.cursor-disc{border-radius:50%}.cursor-dot{mix-blend-mode:difference;background:#fff;width:6px;height:6px;margin:-3px 0 0 -3px;transition:opacity .3s}.cursor-ring{width:40px;height:40px;transition:scale .3s var(--ease-out), opacity .2s ease, background-color .2s ease, border-color .2s ease;border:1px solid #edeae373;position:absolute;top:-20px;left:-20px}.cursor-disc{background:var(--accent);opacity:0;width:108px;height:108px;transition:scale .3s var(--ease-out), opacity .2s ease;place-items:center;display:grid;position:absolute;top:-54px;left:-54px;scale:.3}.cursor.is-hover .cursor-ring{background:#edeae314;border-color:#edeae326;scale:1.6}.cursor.is-view .cursor-ring,.cursor.is-view .cursor-dot{opacity:0}.cursor.is-view .cursor-disc{opacity:1;scale:1}.cursor.is-text .cursor-ring{background:var(--accent);border-color:#0000;scale:.08 .75}.cursor.is-down .cursor-ring{scale:.82}.cursor.is-hover.is-down .cursor-ring{scale:1.35}.cursor.is-view.is-down .cursor-disc{scale:.94}.cursor-label{font:700 .82rem var(--font-sans);color:var(--bg);white-space:nowrap}.btn{isolation:isolate;min-height:3.5rem;font:600 .98rem/1 var(--font-sans);white-space:nowrap;transition:color .2s ease, border-color .2s ease, scale .16s var(--ease-out);border-radius:999px;justify-content:center;align-items:center;gap:.75rem;padding-inline:1.7rem;display:inline-flex;position:relative;overflow:hidden}.btn:before{content:"";z-index:-1;border-radius:inherit;transition:transform .35s var(--ease-out);position:absolute;inset:0;transform:translateY(102%)}.btn:focus-visible:before{transform:none}.btn--primary{background:var(--fg);color:var(--bg)}.btn--primary:before{background:var(--accent)}.btn--ghost{border:1px solid var(--line-strong)}.btn--ghost:before{background:var(--fg)}.btn--ghost:focus-visible{color:var(--bg);border-color:var(--fg)}.btn--pill{border:1px solid var(--line-strong);min-height:2.9rem;padding-inline:1.3rem;font-size:.9rem}.btn--pill:before{background:var(--accent)}.btn-dot{background:var(--accent);width:7px;height:7px;box-shadow:0 0 12px var(--accent);border-radius:50%;transition:background-color .2s}.btn-ic svg{width:1.15rem;height:1.15rem;transition:transform .3s var(--ease-out)}[dir=rtl] .btn-ic svg,[dir=rtl] .socials svg,[dir=rtl] [data-quote-next] svg,[dir=rtl] .case-next svg,[data-quote-prev] svg{transform:scaleX(-1)}[dir=rtl] [data-quote-prev] svg{transform:none}.round-btn{border:1px solid var(--line-strong);width:3.4rem;height:3.4rem;transition:background-color .2s ease, color .2s ease, border-color .2s ease, scale .16s var(--ease-out);border-radius:50%;place-items:center;display:grid}.round-btn svg{width:1.2rem;height:1.2rem}.round-btn--lg{width:4.6rem;height:4.6rem}.tags{flex-wrap:wrap;gap:.45rem;display:flex}.tags li{border:1px solid var(--line);font:500 .78rem/1.3 var(--font-mono);color:var(--fg-dim);white-space:nowrap;border-radius:999px;padding:.35rem .8rem}.status{align-items:center;gap:.55rem;display:inline-flex}.status-dot{background:#3dff9a;border-radius:50%;width:8px;height:8px;position:relative;box-shadow:0 0 10px #3dff9a}.status-dot:after{content:"";animation:ping 2s var(--ease-out) infinite;border:1px solid #3dff9a;border-radius:50%;position:absolute;inset:-4px}@keyframes ping{0%{opacity:1;transform:scale(.6)}to{opacity:0;transform:scale(2.4)}}.sample-badge{z-index:3;border:1px dashed var(--accent-2);color:var(--accent-2);font:600 .65rem/1.4 var(--font-mono);letter-spacing:.08em;text-transform:uppercase;pointer-events:none;background:#060608b3;border-radius:999px;padding:.2rem .6rem;position:absolute;inset-block-start:.8rem;inset-inline-end:.8rem}.jr-title .sample-badge,.case-title .sample-badge{vertical-align:middle;margin-inline-start:.8rem;font-size:.6rem;display:inline-block;position:static}.case-title .sample-badge{font-size:.8rem}button,.btn,.chip,.nav-link,.menu-link,.project{touch-action:manipulation;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}.btn:active,.round-btn:active,.tool-btn:active,.email:active{scale:.97}.chip span{transition:background-color .2s ease, color .2s ease, border-color .2s ease, scale .16s var(--ease-out)}.chip:active span{scale:.95}@media (hover:hover) and (pointer:fine){.btn:hover:before{transform:none}.btn--ghost:hover{color:var(--bg);border-color:var(--fg)}.btn--pill:hover{color:var(--bg);border-color:var(--accent)}.btn--pill:hover .btn-dot{background:var(--bg);box-shadow:none}.btn:hover .btn-ic svg{transform:translate(5px)}[dir=rtl] .btn:hover .btn-ic svg{transform:scaleX(-1)translate(5px)}.round-btn:hover{background:var(--fg);color:var(--bg);border-color:var(--fg)}}.header{z-index:60;height:var(--header-h);padding-inline:var(--pad);padding-top:env(safe-area-inset-top,0px);height:calc(var(--header-h) + env(safe-area-inset-top,0px));transition:transform .4s var(--ease-out);justify-content:space-between;align-items:center;gap:1.5rem;display:flex;position:fixed;inset-block-start:0;inset-inline:0}.header:before{content:"";z-index:-1;opacity:0;pointer-events:none;background:linear-gradient(#060608d9,#06060800);transition:opacity .5s;position:absolute;inset:0 0 -30px}.header.is-scrolled:before{opacity:1}.header.is-hidden{transform:translateY(-110%)}.menu-open .header{transform:none}.brand{align-items:center;gap:.8rem;display:flex}.brand-mark{background:linear-gradient(var(--bg), var(--bg)) padding-box, conic-gradient(from var(--angle), var(--accent), var(--accent-2), var(--accent-3), var(--accent)) border-box;border:1.5px solid #0000;border-radius:50%;flex:none;place-items:center;width:2.9rem;height:2.9rem;padding:2px;animation:5s linear infinite spin-angle;display:grid}.brand-mark img{object-fit:cover;filter:saturate(.9)contrast(1.05);width:100%;height:100%;transition:transform .4s var(--ease-out), filter .4s ease;border-radius:50%}.brand:hover .brand-mark img{filter:none;transform:scale(1.08)}@keyframes spin-angle{to{--angle:360deg}}.brand-name{font-size:.95rem;font-weight:600;line-height:1.2;display:grid}.brand-name small{color:var(--fg-dim);font-size:.74rem;font-weight:400}.nav ul{gap:clamp(1rem,2.2vw,2.4rem);display:flex}.nav-link{align-items:flex-start;gap:.3rem;padding-block:.4rem;font-size:.95rem;font-weight:500;display:flex;position:relative}.nav-i{font:500 .6rem var(--font-mono);color:var(--accent);opacity:.8}.nav-link:after{content:"";inset-inline:0;transform-origin:100%;height:1px;transition:transform .3s var(--ease-out);background:currentColor;position:absolute;bottom:0;transform:scaleX(0)}[dir=rtl] .nav-link:after{transform-origin:0}.header-tools{align-items:center;gap:.55rem;display:flex}.tool-btn{border:1px solid var(--line-strong);min-width:2.9rem;height:2.9rem;font:600 .72rem var(--font-mono);letter-spacing:.06em;transition:background-color .2s ease, border-color .2s ease, color .2s ease, scale .16s var(--ease-out);border-radius:999px;justify-content:center;align-items:center;gap:.25rem;padding-inline:.8rem;display:inline-flex}.lang-cur{color:var(--fg)}.lang-sep,.lang-next{color:var(--fg-faint)}.bars{align-items:center;gap:2px;height:14px;display:flex}.bars i{background:currentColor;border-radius:2px;width:2px;height:3px;transition:height .4s}.sound-on .sound-btn{border-color:var(--accent);color:var(--accent)}.sound-on .bars i{animation:1s ease-in-out infinite alternate eq}.sound-on .bars i:nth-child(2){animation-delay:-.4s}.sound-on .bars i:nth-child(3){animation-delay:-.75s}.sound-on .bars i:nth-child(4){animation-delay:-.2s}@keyframes eq{0%{height:3px}to{height:14px}}.menu-btn{width:2.9rem;padding:0;display:none}.menu-lines{gap:5px;width:16px;display:grid}.menu-lines i{height:1.5px;transition:transform .5s var(--ease-out);background:currentColor}.menu-open .menu-lines i:first-child{transform:translateY(3.25px)rotate(45deg)}.menu-open .menu-lines i:last-child{transform:translateY(-3.25px)rotate(-45deg)}.menu{z-index:55;padding:calc(var(--header-h) + 2rem) var(--pad) 2rem;grid-template-rows:1fr auto;display:grid;position:fixed;inset:0}.menu[hidden]{display:none}.menu-bg{z-index:-1;background:radial-gradient(80% 60% at 100% 0%, #37f0cf1f, transparent 60%), var(--bg-2);position:absolute;inset:0}.menu nav{align-content:center;display:grid}.menu-list{gap:.2rem;display:grid}.menu-link{font:700 clamp(2.6rem, 11vw, 5rem) / 1.1 var(--font-display);letter-spacing:-.04em;align-items:flex-start;gap:.8rem;display:flex;overflow:clip}.menu-t,.menu-i{display:inline-block}.menu-i{font:500 .75rem var(--font-mono);color:var(--accent);padding-top:.6em}.menu-foot{color:var(--fg-dim);gap:1rem;display:grid}.menu-socials{flex-wrap:wrap;gap:1rem 1.4rem;display:flex}.section{padding:clamp(6rem, 13vw, 12rem) var(--pad);position:relative}.section-head{margin-bottom:clamp(3rem,6vw,5rem)}.section-label{font:500 .76rem/1.4 var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--fg-dim);align-items:center;gap:.7rem;margin-bottom:1.8rem;display:flex}.section-label:before{content:"";background:currentColor;width:2.4rem;height:1px}.section-label-i{color:var(--accent)}.section-title{max-width:15ch;font:600 clamp(2.5rem, 6.6vw, 6.8rem) / 1 var(--font-display);letter-spacing:-.045em}html:lang(fa) .section-title{font-size:clamp(2.3rem,5.8vw,5.6rem);font-weight:800;line-height:1.3}.hero{min-height:100svh;padding:calc(var(--header-h) + 1.4rem) var(--pad) clamp(3.2rem, 7vh, 4.5rem);grid-template-rows:auto 1fr auto auto;gap:clamp(1rem,2.5vh,2rem);display:grid;position:relative}.hero-meta{font:500 .74rem/1.4 var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--fg-dim);flex-wrap:wrap;justify-content:space-between;gap:.6rem 1.5rem;display:flex}.hero-loc time{color:var(--fg);font-variant-numeric:tabular-nums}.hero-title{font:700 clamp(3.4rem, min(14.6vw, 27svh), 17rem) / .84 var(--font-display);letter-spacing:-.055em;text-transform:uppercase;flex-direction:column;align-self:center;display:flex}.hero-line{padding-block:.04em .07em;display:block;overflow:clip}.hero-line-i{white-space:nowrap;display:inline-block}.hero-line--2{align-self:flex-end}.hero-line--2 .ch{color:#0000;-webkit-text-stroke:clamp(1px, .13vw, 2px) var(--fg)}html:lang(fa) .hero-title{font-size:clamp(4rem,min(17vw,21svh),19rem);font-weight:900;line-height:1}html:lang(fa) .hero-line{padding-block:0 .12em}.hero-statement{letter-spacing:-.025em;justify-self:end;max-width:24ch;font-size:clamp(1.45rem,2.7vw,2.8rem);font-weight:500;line-height:1.12}html:lang(fa) .hero-statement{max-width:30ch;font-size:clamp(1.35rem,2.3vw,2.3rem);font-weight:600;line-height:1.5}.hero-bottom{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:1.5rem 3rem;display:flex}.hero-intro{max-width:44ch;color:var(--fg-dim)}.hero-ctas{flex-wrap:wrap;gap:.7rem;display:flex}.scroll-hint{font:500 .72rem var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--fg-dim);align-items:center;gap:.9rem;display:flex}.scroll-hint i{background:var(--line);width:1px;height:3.2rem;position:relative;overflow:hidden}.scroll-hint i:after{content:"";background:var(--accent);animation:scroll-line 2.2s var(--ease-in-out) infinite;position:absolute;inset:0}@keyframes scroll-line{0%{transform:translateY(-100%)}60%,to{transform:translateY(100%)}}.manifesto{letter-spacing:-.035em;max-width:24ch;font-size:clamp(2rem,4.9vw,5.2rem);font-weight:500;line-height:1.08}html:lang(fa) .manifesto{max-width:26ch;font-size:clamp(1.8rem,4vw,4.2rem);font-weight:700;line-height:1.55}.about-portrait{display:none}@media (max-width:899px){.about-portrait{height:min(50svh,120vw);margin-top:2rem;display:block}}.about-grid{grid-template-columns:minmax(0,5fr) minmax(0,7fr);align-items:stretch;gap:clamp(1.5rem,4vw,4rem);margin-top:clamp(4rem,9vw,8rem);display:grid}.name-card{border:1px solid var(--line);border-radius:var(--radius);-webkit-backdrop-filter:blur(16px);background:linear-gradient(150deg,#ffffff12,#ffffff03 60%);align-content:end;gap:.6rem;min-height:22rem;padding:clamp(1.6rem,3vw,2.6rem);display:grid;position:relative;overflow:hidden}.name-card-glow,.spot{pointer-events:none;border-radius:50%;width:840px;height:840px;margin:-420px 0 0 -420px;position:absolute;top:0;left:0}.name-card-glow{background:radial-gradient(closest-side,#37f0cf38,#0000);transform:translate(140px,60px)}.spot{z-index:2;opacity:0;background:radial-gradient(closest-side,#ffffff1f,#0000);width:1000px;height:1000px;margin:-500px 0 0 -500px;transition:opacity .25s}.name-card-word{font:700 clamp(3.2rem, 6.4vw, 6rem) / 1 var(--font-display);letter-spacing:-.05em;background:linear-gradient(95deg, var(--accent), var(--accent-2) 70%, var(--accent-3));color:#0000;-webkit-background-clip:text;background-clip:text}html:lang(fa) .name-card-word{font-weight:900;line-height:1.4}.name-card-ph{font:500 .9rem var(--font-mono);color:var(--fg-dim);text-align:start}.name-card-text{max-width:36ch;color:var(--fg-dim)}.stats{border-top:1px solid var(--line);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.stat{border-bottom:1px solid var(--line);align-content:space-between;gap:2rem;padding:clamp(1.4rem,3vw,2.4rem) 0;padding-inline-end:1rem;display:grid;position:relative}.stat:nth-child(odd){border-inline-end:1px solid var(--line)}.stat:nth-child(2n){padding-inline-start:clamp(1rem,3vw,2.4rem)}.stat-num{font:700 clamp(3rem, 6.5vw, 6.2rem) / .9 var(--font-display);letter-spacing:-.05em;font-variant-numeric:tabular-nums;justify-content:flex-start;align-items:flex-start;display:flex}[dir=rtl] .stat-num{justify-content:flex-end}html:lang(fa) .stat-num{font-weight:800;line-height:1.1}.stat-suf{color:var(--accent);margin-top:.1em;font-size:.5em}.stat-label{font:500 .8rem var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--fg-dim)}.svc-list{gap:2.2rem;padding-bottom:8vh;display:grid}.svc{top:calc(var(--header-h) + 1rem + var(--i) * 1.3rem);position:sticky}.svc-card{--glow:var(--accent);border:1px solid var(--line);background:radial-gradient(70% 90% at 100% 0%, color-mix(in oklab, var(--glow) 16%, transparent), transparent 70%), linear-gradient(160deg, #16161edb, #09090df0);-webkit-backdrop-filter:blur(22px)saturate(140%);will-change:transform;border-radius:clamp(22px,3vw,36px);grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-areas:"top top""title text""title tags";align-content:space-between;gap:1.6rem clamp(2rem,5vw,5rem);min-height:min(64vh,560px);padding:clamp(1.6rem,3.6vw,3.4rem);display:grid;position:relative;overflow:hidden;box-shadow:0 -30px 60px -30px #000c}.svc-dim{z-index:1;border-radius:inherit;opacity:0;pointer-events:none;background:#000;position:absolute;inset:0}[dir=rtl] .svc-card{background:radial-gradient(70% 90% at 0% 0%, color-mix(in oklab, var(--glow) 16%, transparent), transparent 70%), linear-gradient(200deg, #16161edb, #09090df0)}.svc:nth-child(2) .svc-card{--glow:var(--accent-2)}.svc:nth-child(3) .svc-card{--glow:#8a6bff}.svc:nth-child(4) .svc-card{--glow:var(--accent-3)}.svc:nth-child(5) .svc-card{--glow:#2b6bff}.svc-top{grid-area:top;justify-content:space-between;align-items:flex-start;display:flex}.svc-num{font:500 .85rem var(--font-mono);color:var(--glow)}.svc-icon{color:var(--glow);opacity:.9}.svc-icon svg{width:clamp(3rem,5vw,4.4rem);height:auto}.svc-title{font:600 clamp(2rem, 4.4vw, 4.4rem) / 1.02 var(--font-display);letter-spacing:-.045em;grid-area:title;align-self:end}html:lang(fa) .svc-title{font-weight:800;line-height:1.35}.svc-text{color:var(--fg-dim);grid-area:text;align-self:end;max-width:38ch;font-size:clamp(1.05rem,1.4vw,1.3rem)}.svc-card .tags{grid-area:tags}.work{padding:0}.work-pin{height:100svh;min-height:640px;padding-block:calc(var(--header-h) + 1rem) 3.5rem;flex-direction:column;justify-content:center;gap:clamp(1.5rem,4vh,3rem);display:flex;position:relative;overflow:hidden}.work-head{padding-inline:var(--pad);grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:0 2rem;display:grid}.work-head .section-label{grid-column:1/-1;margin-bottom:1rem}.work-head .section-title{max-width:none;font-size:clamp(2.4rem,5.4vw,5.6rem)}html:lang(fa) .work-head .section-title{font-size:clamp(2.2rem,4.8vw,4.8rem)}.work-meta{text-align:end;max-width:22ch;color:var(--fg-dim);justify-items:end;gap:.3rem;font-size:.85rem;display:grid}.work-count{font:700 clamp(2.4rem, 4vw, 3.6rem) / 1 var(--font-display);color:#0000;-webkit-text-stroke:1px var(--fg)}.work-track{width:max-content;padding-inline:var(--pad);will-change:transform;align-items:stretch;gap:clamp(1.4rem,2.8vw,3rem);display:flex}.project{flex:none;align-content:start;gap:1.1rem;width:min(44vw,92.8vh,780px);display:grid;position:relative}.project-media{aspect-ratio:16/10;border:1px solid var(--line);background:var(--bg-2);transform-style:preserve-3d;border-radius:clamp(18px,2vw,28px);position:relative;overflow:hidden}.project-info{grid-template-columns:auto minmax(0,1fr) auto;align-items:baseline;gap:.2rem 1rem;display:grid}.project-idx,.project-year{font:500 .78rem var(--font-mono);color:var(--fg-dim)}.project-title{font:600 clamp(1.4rem, 2.2vw, 2.1rem) / 1.1 var(--font-display);letter-spacing:-.04em;transition:color .2s}html:lang(fa) .project-title{font-weight:800}.project-cat{color:var(--fg-dim);grid-column:2;font-size:.92rem}.project-year{grid-area:1/3}.work-outro{flex:none;align-content:center;justify-items:start;gap:2rem;width:min(34vw,520px);padding-inline:2rem;display:grid}.work-outro-title{font:600 clamp(2rem, 3.6vw, 3.6rem) / 1.05 var(--font-display);letter-spacing:-.045em}html:lang(fa) .work-outro-title{font-weight:800;line-height:1.45}.work-progress{inset-inline:var(--pad);background:var(--line);height:1px;position:absolute;bottom:2rem}.work-progress i{background:linear-gradient(90deg, var(--accent), var(--accent-2));transform-origin:0;position:absolute;inset:0;transform:scaleX(0)}[dir=rtl] .work-progress i{transform-origin:100%}.art,.art-img{width:112%;height:112%;position:absolute;inset:-6%}.art-img{object-fit:cover;object-position:top center;width:100%;height:100%;transition:scale .6s var(--ease-out);inset:0}.art{background:radial-gradient(110% 90% at 12% 0%, color-mix(in oklab, var(--c1) 58%, transparent), transparent 62%), radial-gradient(90% 80% at 95% 105%, color-mix(in oklab, var(--c2) 62%, transparent), transparent 66%), #0a0a0f;overflow:hidden;container-type:size}.art-bg{background-image:linear-gradient(#ffffff0f 1px,#0000 1px),linear-gradient(90deg,#ffffff0f 1px,#0000 1px);background-size:6cqw 6cqw;position:absolute;inset:0;-webkit-mask-image:radial-gradient(70% 70% at 50% 45%,#000,#0000);mask-image:radial-gradient(70% 70% at 50% 45%,#000,#0000)}.art-word{inset-inline:0;text-align:center;letter-spacing:-.06em;white-space:nowrap;color:#ffffff12;font:800 22cqh/1 Unbounded Variable,sans-serif;position:absolute;bottom:-2cqh}.mock{transition:transform .6s var(--ease-out);position:absolute}.mock--browser{inset-inline-start:15%;aspect-ratio:16/10.5;background:#0d0d13;border-radius:1.6cqw;width:70%;top:15%;overflow:hidden;transform:perspective(1400px)rotateX(12deg)rotateY(-16deg)rotate(2deg);box-shadow:0 0 0 1px #ffffff1a,0 5cqh 10cqh -2cqh #000000bf}.case-cover .mock--browser{transform:perspective(1400px)rotateX(4deg)rotateY(-6deg)translateY(-2%)scale(1.04)}.mock-bar{background:#ffffff0d;align-items:center;gap:.8cqw;height:7%;padding-inline:2.4%;display:flex}.mock-bar i{background:#ffffff38;border-radius:50%;width:1.1cqw;height:1.1cqw}.mock-bar span{background:#ffffff12;border-radius:99px;flex:1;height:40%;margin-inline:6% 20%}.mock-body{background:linear-gradient(165deg, color-mix(in oklab, var(--c1) 26%, #0d0d13), #0d0d13 62%);height:93%;padding:5% 6%;position:relative}.mock-nav{align-items:center;gap:3%;display:flex}.mock-nav b{background:var(--c1);border-radius:4px;width:9%;height:1.4cqh;margin-inline-end:auto}.mock-nav span{background:#ffffff47;border-radius:4px;width:6%;height:.9cqh}.mock-hero{gap:1.6cqh;margin-top:8%;display:grid}.mock-h1{background:linear-gradient(90deg,#fff,#ffffff8c);border-radius:1cqh;width:62%;height:4.2cqh;display:block}.mock-h1--s{background:linear-gradient(90deg, var(--c1), var(--c2));width:42%}.mock-btn{background:var(--c2);width:17%;height:4.6cqh;box-shadow:0 0 4cqh color-mix(in oklab, var(--c2) 60%, transparent);border-radius:99px;margin-top:1.4cqh;display:block}.mock-grid{inset-inline:6%;grid-template-columns:repeat(3,1fr);gap:3%;display:grid;position:absolute;bottom:7%}.mock-grid i{aspect-ratio:4/2.6;background:linear-gradient(140deg, color-mix(in oklab, var(--c1) 38%, #17171f), #15151c 70%);border-radius:1cqw;box-shadow:inset 0 0 0 1px #ffffff0f}.mock-grid i:nth-child(2){background:linear-gradient(140deg, color-mix(in oklab, var(--c2) 38%, #17171f), #15151c 70%)}.mock--phones{perspective:1400px;justify-content:center;align-items:center;gap:7%;display:flex;inset:0}.phone{aspect-ratio:9/19;background:linear-gradient(180deg, color-mix(in oklab, var(--c1) 16%, #0c0c12), #0c0c12 60%);width:24%;transition:transform .6s var(--ease-out);border:.35cqw solid #ffffff24;border-radius:3.6cqw;position:relative;overflow:hidden;transform:rotateY(22deg)rotate(-7deg)translateY(4%);box-shadow:0 5cqh 10cqh -2cqh #000c}.phone--2{transform:rotateY(-18deg)rotate(7deg)translateY(-7%)}.case-cover .phone{transform:rotateY(10deg)rotate(-3deg)translateY(0)}.case-cover .phone--2{transform:rotateY(-8deg)rotate(3deg)translateY(-4%)}.phone-notch{background:#000;border-radius:99px;width:32%;height:2.4%;margin:5% auto 6%}.phone-cover{background:radial-gradient(circle at 30% 30%, var(--c2), transparent 55%), radial-gradient(circle at 80% 80%, var(--c1), transparent 60%), #15151c;border-radius:2cqw;height:36%;margin-inline:8%}.phone--2 .phone-cover{aspect-ratio:1;border-radius:50%;width:46%;height:auto;margin-inline:auto}.phone-line{background:#ffffffd9;border-radius:99px;width:64%;height:2.1%;margin:8% 8% 0;display:block}.phone-line--s{background:#ffffff4d;width:40%;margin-top:4%}.phone-list{gap:1.2cqh;margin:9% 8% 0;display:grid}.phone-list i{height:4.2cqh;box-shadow:inset .8cqw 0 0 color-mix(in oklab, var(--c1) 70%, transparent);background:#ffffff0f;border-radius:1cqw}.phone-bar{inset-inline:8%;background:linear-gradient(90deg, var(--c1), var(--c2));opacity:.85;border-radius:2cqw;height:7%;position:absolute;bottom:4%}.process-grid{grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(2rem,7vw,8rem);display:grid}.process-aside{top:calc(var(--header-h) + 3rem);align-self:start;position:sticky}.process-text{max-width:34ch;color:var(--fg-dim);margin-top:2rem}.process-steps{padding-inline-start:clamp(1.5rem,3vw,3rem);position:relative}.process-line{background:var(--line);width:1px;position:absolute;inset-block:0;inset-inline-start:0}.process-line i{background:linear-gradient(var(--accent), var(--accent-2));box-shadow:0 0 12px var(--accent);transform-origin:top;position:absolute;inset:0;transform:scaleY(0)}.step{border-bottom:1px solid var(--line);grid-template-columns:auto minmax(0,1fr) auto;gap:1.4rem;padding-block:clamp(1.8rem,3.5vw,2.8rem);transition:opacity .35s;display:grid}.js .step{opacity:.42}.js .step.is-active{opacity:1}.step-num{font:500 .85rem var(--font-mono);color:var(--fg-faint);padding-top:.5rem;transition:color .35s}.step.is-active .step-num{color:var(--accent)}.step-title{font:600 clamp(1.5rem, 2.6vw, 2.5rem) / 1.1 var(--font-display);letter-spacing:-.04em;margin-bottom:.6rem}html:lang(fa) .step-title{font-weight:800;line-height:1.4}.step-text{max-width:46ch;color:var(--fg-dim)}.step-time{border:1px solid var(--line);font:500 .75rem var(--font-mono);color:var(--fg-dim);white-space:nowrap;border-radius:999px;align-self:start;padding:.35rem .85rem}.jr-list{border-top:1px solid var(--line)}.jr{isolation:isolate;border-bottom:1px solid var(--line);grid-template-columns:9rem minmax(0,1.4fr) minmax(0,1fr) 7rem;align-items:center;gap:1rem 2rem;padding:clamp(1.4rem,2.6vw,2.1rem) .4rem;transition:color .25s;display:grid;position:relative}.jr>*{transition:translate .35s var(--ease-out), color .25s ease}.jr:before{content:"";z-index:-1;background:var(--fg);transform-origin:bottom;transition:transform .35s var(--ease-out);position:absolute;inset:0;transform:scaleY(0)}.jr-year{font:500 .85rem var(--font-mono)}.jr-title a{text-decoration:underline;-webkit-text-decoration-color:var(--line-strong);text-decoration-color:var(--line-strong);text-underline-offset:.2em}.jr-title{font:600 clamp(1.15rem, 2vw, 1.8rem) / 1.2 var(--font-display);letter-spacing:-.03em}html:lang(fa) .jr-title{font-weight:700;line-height:1.5}.jr-place{color:var(--fg-dim)}.jr-kind{font:500 .72rem var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--accent);justify-self:end}.tools{gap:.6rem;padding-block:clamp(3rem,8vw,7rem);display:grid;position:relative;overflow:clip;transform:rotate(-3deg)scale(1.06)}[dir=rtl] .tools{transform:rotate(3deg)scale(1.06)}.marquee{border-block:1px solid var(--line);background:#06060880;padding-block:.4rem;overflow:clip}.marquee-track,.marquee-unit{align-items:center;width:max-content;display:flex}.marquee-unit{gap:clamp(1.4rem,3vw,2.8rem);padding-inline-end:clamp(1.4rem,3vw,2.8rem)}.mq-item{letter-spacing:-.045em;white-space:nowrap;font:700 clamp(2.4rem,6.8vw,6.4rem)/1.15 Unbounded Variable,sans-serif}.marquee--outline .mq-item{color:#0000;-webkit-text-stroke:1px #edeae38c}.mq-sep svg{width:clamp(1.2rem,3vw,2.6rem);height:auto;color:var(--accent)}.marquee--outline .mq-sep svg{color:var(--accent-2)}.quote-stage{border:1px solid var(--line);-webkit-backdrop-filter:blur(18px);background:linear-gradient(160deg,#14141cb3,#08080ccc);border-radius:clamp(24px,3vw,40px);padding:clamp(2rem,6vw,5.5rem);display:grid;position:relative}.quote-mark{color:var(--accent);opacity:.45;pointer-events:none;font:400 clamp(10rem,22vw,20rem)/1 Instrument Serif,serif;position:absolute;inset-block-start:-.25em;inset-inline-end:.35em}.quote{visibility:hidden;opacity:0;grid-area:1/1;position:relative}.quote.is-active{visibility:visible;opacity:1}.quote blockquote p{letter-spacing:-.025em;max-width:30ch;font-size:clamp(1.5rem,3.4vw,3.2rem);font-weight:500;line-height:1.2}html:lang(fa) .quote blockquote p{font-size:clamp(1.35rem,2.8vw,2.6rem);font-weight:600;line-height:1.7}.quote figcaption{gap:.2rem;margin-top:2.2rem;display:grid}.quote figcaption span{color:var(--fg-dim);font-size:.92rem}.quote-nav{grid-area:2/1;align-items:center;gap:1rem;margin-top:2.6rem;display:flex}.quote-count{font:500 .85rem var(--font-mono);color:var(--fg-dim);font-variant-numeric:tabular-nums}.faq-grid{grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(2rem,6vw,7rem);display:grid}.faq-grid .section-head{top:calc(var(--header-h) + 3rem);align-self:start;position:sticky}.qa{border-bottom:1px solid var(--line)}.qa:first-child{border-top:1px solid var(--line)}.qa summary{cursor:pointer;justify-content:space-between;align-items:center;gap:1.2rem;padding-block:1.6rem;font-size:clamp(1.1rem,1.7vw,1.45rem);font-weight:600;line-height:1.35;list-style:none;display:flex}.qa summary::-webkit-details-marker{display:none}.qa-icon{border:1px solid var(--line-strong);width:2.5rem;height:2.5rem;transition:transform .3s var(--ease-out), background-color .2s ease, color .2s ease, border-color .2s ease;border-radius:50%;flex:none;place-items:center;display:grid}.qa-icon svg{width:1rem;height:1rem}.qa[open] .qa-icon{background:var(--accent);border-color:var(--accent);color:var(--bg);transform:rotate(135deg)}.qa::details-content{block-size:0;transition:block-size .4s var(--ease-out), content-visibility .4s allow-discrete;overflow-y:clip}.qa[open]::details-content{block-size:auto}.qa-a p{max-width:60ch;color:var(--fg-dim);padding-bottom:1.8rem}.contact{padding-bottom:clamp(5rem,10vw,9rem)}.contact-title{max-width:13ch;font:700 clamp(3rem, 9.4vw, 10rem) / .94 var(--font-display);letter-spacing:-.055em;margin-bottom:clamp(3rem,7vw,6rem)}html:lang(fa) .contact-title{font-size:clamp(2.8rem,8vw,8.4rem);font-weight:900;line-height:1.25}.contact-grid{grid-template-columns:minmax(0,5fr) minmax(0,6fr);align-items:start;gap:clamp(2.5rem,6vw,7rem);display:grid}.contact-info{gap:2.4rem;display:grid}.contact-text{max-width:40ch;color:var(--fg-dim);font-size:clamp(1.1rem,1.6vw,1.4rem)}.email{border-bottom:1px solid var(--line-strong);letter-spacing:-.04em;text-align:start;width:100%;transition:color .2s ease, border-color .2s ease, scale .16s var(--ease-out);justify-content:space-between;align-items:center;gap:1rem;padding-block:1rem;font:600 clamp(1.05rem,2vw,2rem)/1.2 Unbounded Variable,sans-serif;display:flex}.email-addr{overflow-wrap:anywhere;min-width:0}.email-ic svg{width:1.4rem;height:1.4rem}.socials{flex-wrap:wrap;gap:.6rem;display:flex}.socials a{border:1px solid var(--line);border-radius:999px;align-items:center;gap:.5rem;padding:.6rem 1rem;font-size:.92rem;transition:border-color .2s,color .2s;display:inline-flex}.socials svg{width:.9rem;height:.9rem}.contact-meta{font:500 .8rem var(--font-mono);color:var(--fg-dim);gap:.6rem;display:grid}.contact-meta p{border-bottom:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;gap:.5rem 1rem;padding-bottom:.6rem;display:flex}.contact-meta time{color:var(--fg);font-variant-numeric:tabular-nums}.brief{border:1px solid var(--line);border-radius:var(--radius);-webkit-backdrop-filter:blur(18px);background:linear-gradient(160deg,#14141cb8,#08080cd1);gap:1.8rem;padding:clamp(1.5rem,3.4vw,2.8rem);display:grid}.brief-title{font:600 1.4rem var(--font-display);letter-spacing:-.03em}.field{border:0;gap:.8rem;min-width:0;margin:0;padding:0;display:grid}.field-label{font:500 .74rem var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--fg-dim);padding:0}.field input,.field textarea{border:0;border-bottom:1px solid var(--line-strong);width:100%;color:var(--fg);font:400 1.1rem/1.5 var(--font-sans);resize:vertical;background:0 0;border-radius:0;padding:.6rem 0;transition:border-color .4s}.field input:focus-visible,.field textarea:focus-visible{border-color:var(--accent);outline:none}.field [aria-invalid=true]{border-color:var(--accent-3)}.chips{flex-wrap:wrap;gap:.5rem;display:flex}.chip{cursor:pointer;position:relative}.chip input{opacity:0;pointer-events:none;position:absolute}.chip span{border:1px solid var(--line-strong);border-radius:999px;padding:.55rem 1.05rem;font-size:.92rem;display:inline-flex}.chip input:checked+span{background:var(--fg);border-color:var(--fg);color:var(--bg)}.chip input:focus-visible+span{outline:2px solid var(--accent);outline-offset:3px}.brief-foot{flex-wrap:wrap;align-items:center;gap:1rem 1.5rem;display:flex}.brief-note{color:var(--fg-faint);font-size:.82rem}.footer{padding:3rem var(--pad) 1.6rem;border-top:1px solid var(--line);background:linear-gradient(#0000,#060608d9 40%);position:relative;overflow:clip}.footer-top{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1.5rem;display:flex}.footer-links{color:var(--fg-dim);flex-wrap:wrap;gap:.8rem 1.8rem;display:flex}.footer-mark{letter-spacing:-.06em;white-space:nowrap;justify-content:center;margin-block:clamp(2rem,5vw,4rem) 1.5rem;font:800 clamp(2.4rem,9.3vw,11rem)/.9 Unbounded Variable,sans-serif;display:flex;overflow:clip}html:lang(fa) .footer-mark{font:900 clamp(3rem, 16vw, 16rem) / 1.2 var(--font-display)}.footer-mark .ch{background:linear-gradient(180deg, var(--fg) 20%, #edeae314);color:#0000;-webkit-background-clip:text;background-clip:text}.footer-bottom{font:500 .76rem var(--font-mono);color:var(--fg-faint);flex-wrap:wrap;justify-content:space-between;gap:.5rem 1.5rem;display:flex}.footer-versions{color:var(--fg-dim);text-decoration:underline;-webkit-text-decoration-color:color-mix(in srgb, currentColor 35%, transparent);text-decoration-color:color-mix(in srgb, currentColor 35%, transparent);text-underline-offset:3px;transition:color .2s}.footer-versions:hover{color:var(--accent)}.hud{inset-inline:var(--pad);bottom:calc(1.1rem + env(safe-area-inset-bottom,0px));z-index:40;pointer-events:none;font:500 .7rem var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--fg-dim);mix-blend-mode:difference;justify-content:space-between;transition:opacity .5s;display:flex;position:fixed}.hud.is-hidden{opacity:0}.hud-sec{align-items:center;gap:.6rem;display:flex}.hud-dot{background:var(--accent);width:5px;height:5px;box-shadow:0 0 10px var(--accent);border-radius:50%}.hud-pct{font-variant-numeric:tabular-nums}.toast{z-index:150;background:var(--fg);color:var(--bg);opacity:0;transition:translate .4s var(--ease-out), opacity .3s ease;pointer-events:none;margin-bottom:env(safe-area-inset-bottom,0px);border-radius:999px;padding:.85rem 1.4rem;font-weight:600;position:fixed;bottom:2rem;left:50%;translate:-50% 150%}.toast.is-visible{opacity:1;translate:-50%}.case{overscroll-behavior:contain;width:100%;max-width:none;height:100%;max-height:none;color:var(--fg);opacity:0;transition:opacity .5s var(--ease-out), display .5s allow-discrete, overlay .5s allow-discrete;background:#060608f0;border:0;margin:0;padding:0;overflow-y:auto}.case[open]{opacity:1}@starting-style{.case[open]{opacity:0}}.case::backdrop{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#0009}.case-inner{width:min(1240px, 100% - 2 * var(--pad));margin-inline:auto;padding-block:1rem 6rem}.case-top{z-index:2;background:linear-gradient(#060608f2 60%,#0000);justify-content:space-between;align-items:center;gap:1rem;padding-block:1rem;display:flex;position:sticky;top:0}.case-kicker{font:500 .76rem var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--fg-dim)}.case-title{font:700 clamp(3rem, 10vw, 9.5rem) / .9 var(--font-display);letter-spacing:-.055em;margin:2rem 0 1.2rem}html:lang(fa) .case-title{font-weight:900;line-height:1.3}.case-summary{max-width:40ch;color:var(--fg-dim);font-size:clamp(1.2rem,2vw,1.7rem)}.case-cover{aspect-ratio:16/9;border:1px solid var(--line);background:var(--bg-2);border-radius:clamp(20px,3vw,36px);margin-block:clamp(2rem,5vw,4rem);position:relative;overflow:hidden}.case-meta{border-block:1px solid var(--line);grid-template-columns:repeat(4,minmax(0,1fr));gap:1.5rem 2rem;padding-block:2rem;display:grid}.case-meta dt{font:500 .74rem var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--fg-dim);margin-bottom:.5rem}.case-story{grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(2rem,5vw,5rem);margin-block:clamp(3rem,6vw,5rem);display:grid}.case h3{font:500 .78rem var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--accent);margin-bottom:1rem}.case-story p{font-size:clamp(1.15rem,1.7vw,1.45rem);line-height:1.55}.case-results ul{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;display:grid}.case-results li{border:1px solid var(--line);background:#ffffff05;border-radius:22px;gap:.6rem;padding:clamp(1.4rem,3vw,2.4rem);display:grid}.case-results strong{font:700 clamp(2rem, 4.6vw, 4rem) / 1.1 var(--font-display);letter-spacing:-.05em;background:linear-gradient(95deg, var(--accent), var(--accent-2));color:#0000;-webkit-background-clip:text;background-clip:text}.case-results span{color:var(--fg-dim)}.case-foot{border-top:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1.5rem;margin-top:clamp(3rem,6vw,5rem);padding-top:2rem;display:flex}.case-next{color:var(--fg-dim);align-items:center;gap:1rem;margin-inline-start:auto;transition:color .2s;display:flex}.case-next strong{font:700 clamp(1.6rem, 3.4vw, 3rem) / 1.1 var(--font-display);letter-spacing:-.04em;color:var(--fg);transition:color .2s}.case-next svg{width:1.6rem;height:1.6rem}html.case-open{overflow:hidden}::view-transition-group(case-media){animation-duration:.6s;animation-timing-function:cubic-bezier(.76,0,.24,1)}::view-transition-old(root){animation-duration:.3s}::view-transition-new(root){animation-duration:.3s}html[data-vt=lang]::view-transition-old(root){mix-blend-mode:normal;animation:none}html[data-vt=lang]::view-transition-new(root){mix-blend-mode:normal;animation:none}html[data-vt=lang]::view-transition-new(root){z-index:2}@media (max-width:1100px){.brand-name small{display:none}.jr{grid-template-columns:6.5rem minmax(0,1fr) auto}.jr-place{grid-area:2/2;margin-top:-.6rem}.jr-kind{grid-area:1/3}}@media (max-width:899px){:root{--header-h:68px}.nav,.header-cta,.hud{display:none}.menu-btn{display:inline-flex}.brand-name{display:none}.hero-statement{justify-self:start}.hero-bottom{flex-direction:column;align-items:flex-start}.scroll-hint{display:none}.about-grid,.process-grid,.faq-grid,.contact-grid,.case-story{grid-template-columns:minmax(0,1fr)}.process-aside,.faq-grid .section-head{position:static}.svc-card{-webkit-backdrop-filter:none;background:radial-gradient(90% 60% at 100% 0%, color-mix(in oklab, var(--glow) 16%, transparent), transparent 70%), linear-gradient(160deg, #15151d, #0a0a0e);grid-template-columns:minmax(0,1fr);grid-template-areas:"top""title""text""tags";min-height:0}.work-pin{height:auto;min-height:0;padding-block:clamp(6rem,13vw,8rem) 3rem;overflow:visible}.work-head{grid-template-columns:minmax(0,1fr)}.work-meta{text-align:start;justify-items:start;margin-top:1rem}.work-track{flex-direction:column;gap:3rem;width:auto}.project,.work-outro{width:100%;padding-inline:0}.work-progress{display:none}.case-meta{grid-template-columns:repeat(2,minmax(0,1fr))}.case-results ul{grid-template-columns:minmax(0,1fr)}}@media (max-width:560px){.stats{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.step{grid-template-columns:auto minmax(0,1fr)}.step-time{grid-column:2;justify-self:start}.hero-ctas .btn{flex:auto}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-property:opacity,color,background-color,border-color!important;animation:none!important}.js .step{opacity:1}.fx-grain{animation:none}.marquee{overflow-x:auto}}@media (hover:hover) and (pointer:fine){.nav-link:hover:after{transform-origin:0;transform:scaleX(1)}[dir=rtl] .nav-link:hover:after{transform-origin:100%}.tool-btn:hover{border-color:var(--fg)}.lang-btn:hover .lang-next{color:var(--accent)}.project:hover .spot{opacity:1}.project:hover .project-title{color:var(--accent)}.project:hover .mock--browser{transform:perspective(1400px)rotateX(4deg)rotateY(-6deg)translateY(-2%)scale(1.04)}.project:hover .art-img{scale:1.04}.project:hover .phone{transform:rotateY(10deg)rotate(-3deg)translateY(0)}.project:hover .phone--2{transform:rotateY(-8deg)rotate(3deg)translateY(-4%)}.jr:hover{color:var(--bg)}.jr:hover>*{translate:1rem}[dir=rtl] .jr:hover>*{translate:-1rem}.jr:hover:before{transform-origin:top;transform:scaleY(1)}.jr:hover .jr-place,.jr:hover .jr-kind{color:var(--bg)}.qa summary:hover .qa-icon{border-color:var(--fg)}.email:hover{color:var(--accent);border-color:var(--accent)}.socials a:hover{border-color:var(--accent);color:var(--accent)}.chip:hover span{border-color:var(--fg)}.footer-links a:hover,.case-next:hover strong{color:var(--accent)}}
