/* =====================================================================
   MIRROR STUDIO v2 — style.css
   Concept: the page is a mirror. Ink above the seam, paper below it,
   one red hairline where they meet. Everything reflects across it.
   Palette follows the brand book: black, white, grey, one rare accent.
   Fonts are local files (assets/fonts). No CDN, no external requests.
   ===================================================================== */
@font-face{font-family:"MS Display";src:url(fonts/display-800.woff) format("woff");font-weight:800;font-style:normal;font-display:swap}
@font-face{font-family:"MS Display";src:url(fonts/display-300.woff) format("woff");font-weight:300;font-style:normal;font-display:swap}
@font-face{font-family:"MS Body";src:url(fonts/body-400.woff) format("woff");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"MS Script";src:url(fonts/mono-400.woff) format("woff");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"Peyda";src:local("Peyda"),local("Peyda Regular"),url(fonts/Peyda-Regular.ttf) format("truetype");font-weight:400;font-style:normal;font-display:swap}

:root{
  color-scheme:dark;
  --txt:#f1f1ee; --txt-rgb:241 241 238; --txt-2:#f1d9d7; --ink-rgb:11 11 11; --mut0:#9b9b97;
  --ink:#0b0b0b; --ink-2:#161616; --paper:#1d0709; --paper-2:#2a0b0e; --red:#9f0008; --signal:#c8101b;
  --f-display:"MS Display","Inter Display","Helvetica Neue",Arial,sans-serif;
  --f-body:"MS Body","Inter","Helvetica Neue",Arial,sans-serif;
  --f-script:"MS Script","Latin Modern Mono","Courier New",ui-monospace,monospace; /* screenplay-style labels */
  --ease:cubic-bezier(.16,.84,.24,1);
  --gut:clamp(18px,3.4vw,52px);
}
*{box-sizing:border-box;margin:0;padding:0}
html{background:var(--ink);scroll-behavior:auto}
html.menu-open{overflow:hidden}
body{font-family:var(--f-body);font-size:17px;line-height:1.62;background:var(--ink);color:var(--txt);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:hidden}
img,svg{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit;background:none;border:0;cursor:pointer}
ul,ol{list-style:none}
em{font-style:normal;font-weight:800}
[hidden]{display:none!important}
::selection{background:var(--signal);color:#fff}
:focus-visible{outline:2px solid var(--signal);outline-offset:4px}
.skip{position:absolute;left:-999px;top:10px;background:var(--signal);color:#fff;padding:10px 16px;z-index:400}
.skip:focus{left:10px}

/* surfaces */
.on-ink{--bg:var(--ink);--fg:var(--txt);--mut:var(--mut0);--ln:rgb(var(--txt-rgb) / .17);background:var(--bg);color:var(--fg)}
.on-paper{--bg:var(--paper);--fg:var(--txt);--mut:#b69f9d;--ln:rgb(var(--txt-rgb) / .17);background:var(--bg);color:var(--fg)}
.sec{position:relative;padding-block:clamp(88px,12vw,190px)}
.wrap{width:100%;max-width:1520px;margin-inline:auto;padding-inline:var(--gut)}
.grid-12{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--gut)}
.c-3{grid-column:1/4}.c-4{grid-column:1/5}.c-5{grid-column:1/6}.c-7{grid-column:6/13}.c-8{grid-column:5/13}.c-9{grid-column:4/13}.c-12{grid-column:1/-1}.c-6a{grid-column:1/7}.c-6b{grid-column:7/13}

/* type */
.eye{font-family:var(--f-script);font-size:12.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--mut);display:flex;align-items:center;gap:12px}
.eye::before{content:"";width:7px;height:7px;background:var(--signal);flex:none}
.h-xl{font-family:var(--f-display);font-weight:300;font-size:clamp(36px,6.6vw,112px);line-height:1.02;letter-spacing:-.04em}
.h-l{font-family:var(--f-display);font-weight:800;text-transform:uppercase;font-size:clamp(46px,9.4vw,168px);line-height:.86;letter-spacing:-.055em}
.h-m{font-family:var(--f-display);font-weight:800;font-size:clamp(26px,3.4vw,52px);line-height:1.02;letter-spacing:-.035em}
.h-xl.sm{font-size:clamp(28px,4.2vw,68px);line-height:1.08}
.lead{font-size:clamp(18px,1.7vw,24px);line-height:1.5;color:var(--mut);max-width:44ch}
.mut{color:var(--mut)}
.script{font-family:var(--f-script);font-size:12.5px;letter-spacing:.16em;text-transform:uppercase}

/* line + fade reveals (only when JS runs) */
.js .ln{display:block;overflow:hidden;padding-block:.1em;margin-block:-.1em}
.js .ln>span{display:block;transform:translateY(114%);transition:transform 1.2s var(--ease);transition-delay:calc(var(--i,0)*.09s + var(--d,0s))}
.js .is-in .ln>span{transform:none}
.js [data-r]{opacity:0;transform:translateY(26px);transition:opacity 1.1s var(--ease) var(--d,0s),transform 1.1s var(--ease) var(--d,0s)}
.js [data-r].is-in{opacity:1;transform:none}

/* links */
.arrow-link{display:inline-flex;align-items:center;gap:14px;font-family:var(--f-script);font-size:13px;letter-spacing:.18em;text-transform:uppercase;padding-bottom:6px;border-bottom:1px solid currentColor;transition:gap .5s var(--ease),color .3s}
.arrow-link:hover{gap:24px;color:var(--signal)}
.arrow-link svg,.go svg{width:16px;height:16px;flex:none}
.big-link{display:inline-flex;align-items:center;gap:.4em;font-family:var(--f-display);font-weight:800;font-size:clamp(28px,4.2vw,64px);letter-spacing:-.04em;line-height:1;border-bottom:2px solid currentColor;padding-bottom:.12em;transition:color .3s,gap .5s var(--ease)}
.big-link:hover{color:var(--signal);gap:.7em}
.big-link svg{width:.7em;height:.7em}

/* ------------------------------ navigation ------------------------------ */
.nav{position:fixed;left:0;right:0;top:0;z-index:90;display:flex;justify-content:space-between;align-items:center;padding:20px var(--gut);color:var(--txt);pointer-events:none;background:linear-gradient(rgb(var(--ink-rgb) / .9),rgb(var(--ink-rgb) / 0))}
.nav a,.nav button{pointer-events:auto}
.nav .logo{display:flex;align-items:center;gap:12px}
.mark{display:block;flex:none;aspect-ratio:999/945;background:currentColor;-webkit-mask:url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA5OTkgOTQ1Ij48cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGZpbGw9IiMwMDAiIGQ9Ik0wLjUgMS4wIEwwLjAgOTQ0LjUgTDEzOC41IDk0NC41IEwxMzkuMCA1OTEuMCBMMTQ4LjUgNTg1LjUgTDE3NC4wIDU3NC41IEwyMDcuMCA1NjQuNSBMMjU4LjAgNTU2LjUgTDMwMy4wIDU1NC4wIEw0MTkuMCA1NTQuNSBMNDIwLjAgNTU1LjUgTDM0OC4wIDcwMS41IEwzMzcuMCA3MTkuNSBMMzE2LjUgNzQ1LjUgTDI4NC4wIDc4MC41IEwyNjYuNSA3OTMuMCBMMjUzLjUgNzk5LjAgTDIzOS41IDgwMy4wIEwyMjcuNSA4MDQuNSBMMjA2LjAgODA0LjAgTDIwNS4wIDgwNS4wIEwyMDUuNSA5NDQuMCBMMjMwLjUgOTQ0LjUgTDI3Ny41IDkzOC41IEwzMDguNSA5MzEuNSBMMzIzLjUgOTI2LjUgTDM0OC41IDkxNS41IEwzNjYuMCA5MDUuNSBMMzg3LjAgODkwLjUgTDQxMS41IDg2Ny41IEw0MjYuNSA4NDkuNSBMNDM2LjUgODM1LjAgTDQ0NC41IDgyMS41IEw0OTkuNSA3MDkuMCBMNTAxLjAgNzA5LjUgTDU0Ny4wIDgwNS4wIEw1NjMuMCA4MzQuNSBMNTc2LjAgODUzLjAgTDU4Ni4wIDg2NS4wIEw1OTcuMCA4NzYuNSBMNjEzLjUgODkxLjAgTDYzNS41IDkwNi41IEw2NDkuNSA5MTQuNSBMNjY0LjAgOTIxLjUgTDY5MS41IDkzMS41IEw3MTYuNSA5MzcuNSBMNzU3LjAgOTQzLjUgTDc3MC4wIDk0NC41IEw3OTQuNSA5NDQuMCBMNzk1LjUgOTQzLjAgTDc5NS4wIDgwNC4wIEw3ODAuNSA4MDUuMCBMNzY2LjAgODA0LjAgTDc0OS41IDgwMC4wIEw3MzQuMCA3OTMuMCBMNzI0LjUgNzg3LjAgTDcxMC4wIDc3NS4wIEw2ODUuNSA3NDcuNSBMNjYzLjUgNzIwLjAgTDY1MC41IDY5OS4wIEw1ODAuMCA1NTUuNSBMNTgwLjUgNTU0LjUgTDY1MS4wIDU1My41IEw3MTQuNSA1NTQuNSBMNzQxLjUgNTU2LjUgTDc3MS41IDU2MC41IEw3OTYuMCA1NjUuNSBMODIyLjUgNTczLjUgTDg0NC41IDU4Mi41IEw4NjAuMCA1OTEuMCBMODYwLjUgOTQ0LjUgTDk5OC41IDk0NC4wIEw5OTguNSAxLjBaTTc2NS4wIDE0MS4wIEw4NTkuMCAxNDAuNSBMODYwLjAgMTQxLjUgTDg1OS41IDQ0OS41IEw4MzQuMCA0MzcuMCBMODA3LjAgNDI3LjAgTDc4Ny41IDQyMi4wIEw3NjMuNSA0MTguMCBMNzc1LjUgMzkyLjAgTDc4NC41IDM2NS4wIEw3OTIuNSAzMjUuNSBMNzk1LjUgMjkwLjUgTDc5NC41IDI1MS4wIEw3ODguNSAyMTAuMCBMNzc5LjUgMTc2LjUgTDc3MS41IDE1Ni4wIEw3NjQuNSAxNDIuNVpNMzk2LjAgMTY1LjUgTDQxNy41IDE1NC41IEw0NDUuMCAxNDYuNSBMNDc2LjAgMTQxLjUgTDUxNi41IDE0MC41IEw1NDguMCAxNDQuNSBMNTcxLjAgMTUwLjUgTDU5NC41IDE2MC41IEw2MDkuMCAxNjkuNSBMNjE5LjAgMTc3LjUgTDYzNi4wIDE5Ni41IEw2NDcuMCAyMTYuNSBMNjUyLjAgMjMxLjUgTDY1NS4wIDI0Ni4wIEw2NTcuMCAyNzIuMCBMNjU1LjAgMzAwLjAgTDY1MC4wIDMyNC41IEw2NDIuMCAzNDQuNSBMNjMzLjAgMzU5LjAgTDYyNi4wIDM2Ny41IEw2MTcuNSAzNzYuMCBMNjA1LjUgMzg1LjUgTDU5My41IDM5My4wIEw1NzkuMCA0MDAuMCBMNTY1LjUgNDA1LjAgTDU0Ni4wIDQxMC4wIEw1MTQuNSA0MTQuMCBMNDc3LjAgNDEzLjAgTDQ0My41IDQwNy4wIEw0MjQuMCA0MDEuMCBMNDEyLjAgMzk2LjAgTDM5Ny4wIDM4Ny41IEwzODUuNSAzNzkuMCBMMzY3LjUgMzYwLjAgTDM1OS41IDM0Ny41IEwzNTEuNSAzMjkuNSBMMzQ3LjUgMzE1LjAgTDM0NC41IDI5NS41IEwzNDMuNSAyNTYuMCBMMzQ4LjUgMjI5LjUgTDM1My41IDIxNi4wIEwzNTkuNSAyMDQuMCBMMzcyLjAgMTg2LjUgTDM4NC4wIDE3NC41Wk0yMzUuMCAxNDEuMCBMMjM1LjAgMTQzLjUgTDIyOS4wIDE1NS4wIEwyMjAuMCAxNzguNSBMMjExLjAgMjEzLjUgTDIwNi4wIDI0OS4wIEwyMDUuMCAyOTQuNSBMMjA4LjAgMzI3LjAgTDIxNi4wIDM2Ni4wIEwyMjguMCA0MDAuNSBMMjM3LjAgNDE4LjAgTDIzNi4wIDQxOS4wIEwyMzAuNSA0MTkuMCBMMjA3LjUgNDIzLjAgTDE4OS4wIDQyOC4wIEwxNjcuNSA0MzYuMCBMMTM5LjUgNDUwLjAgTDEzOC41IDE0Mi4wIEwxNDAuMCAxNDAuNVoiLz48L3N2Zz4=") center/contain no-repeat;mask:url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA5OTkgOTQ1Ij48cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGZpbGw9IiMwMDAiIGQ9Ik0wLjUgMS4wIEwwLjAgOTQ0LjUgTDEzOC41IDk0NC41IEwxMzkuMCA1OTEuMCBMMTQ4LjUgNTg1LjUgTDE3NC4wIDU3NC41IEwyMDcuMCA1NjQuNSBMMjU4LjAgNTU2LjUgTDMwMy4wIDU1NC4wIEw0MTkuMCA1NTQuNSBMNDIwLjAgNTU1LjUgTDM0OC4wIDcwMS41IEwzMzcuMCA3MTkuNSBMMzE2LjUgNzQ1LjUgTDI4NC4wIDc4MC41IEwyNjYuNSA3OTMuMCBMMjUzLjUgNzk5LjAgTDIzOS41IDgwMy4wIEwyMjcuNSA4MDQuNSBMMjA2LjAgODA0LjAgTDIwNS4wIDgwNS4wIEwyMDUuNSA5NDQuMCBMMjMwLjUgOTQ0LjUgTDI3Ny41IDkzOC41IEwzMDguNSA5MzEuNSBMMzIzLjUgOTI2LjUgTDM0OC41IDkxNS41IEwzNjYuMCA5MDUuNSBMMzg3LjAgODkwLjUgTDQxMS41IDg2Ny41IEw0MjYuNSA4NDkuNSBMNDM2LjUgODM1LjAgTDQ0NC41IDgyMS41IEw0OTkuNSA3MDkuMCBMNTAxLjAgNzA5LjUgTDU0Ny4wIDgwNS4wIEw1NjMuMCA4MzQuNSBMNTc2LjAgODUzLjAgTDU4Ni4wIDg2NS4wIEw1OTcuMCA4NzYuNSBMNjEzLjUgODkxLjAgTDYzNS41IDkwNi41IEw2NDkuNSA5MTQuNSBMNjY0LjAgOTIxLjUgTDY5MS41IDkzMS41IEw3MTYuNSA5MzcuNSBMNzU3LjAgOTQzLjUgTDc3MC4wIDk0NC41IEw3OTQuNSA5NDQuMCBMNzk1LjUgOTQzLjAgTDc5NS4wIDgwNC4wIEw3ODAuNSA4MDUuMCBMNzY2LjAgODA0LjAgTDc0OS41IDgwMC4wIEw3MzQuMCA3OTMuMCBMNzI0LjUgNzg3LjAgTDcxMC4wIDc3NS4wIEw2ODUuNSA3NDcuNSBMNjYzLjUgNzIwLjAgTDY1MC41IDY5OS4wIEw1ODAuMCA1NTUuNSBMNTgwLjUgNTU0LjUgTDY1MS4wIDU1My41IEw3MTQuNSA1NTQuNSBMNzQxLjUgNTU2LjUgTDc3MS41IDU2MC41IEw3OTYuMCA1NjUuNSBMODIyLjUgNTczLjUgTDg0NC41IDU4Mi41IEw4NjAuMCA1OTEuMCBMODYwLjUgOTQ0LjUgTDk5OC41IDk0NC4wIEw5OTguNSAxLjBaTTc2NS4wIDE0MS4wIEw4NTkuMCAxNDAuNSBMODYwLjAgMTQxLjUgTDg1OS41IDQ0OS41IEw4MzQuMCA0MzcuMCBMODA3LjAgNDI3LjAgTDc4Ny41IDQyMi4wIEw3NjMuNSA0MTguMCBMNzc1LjUgMzkyLjAgTDc4NC41IDM2NS4wIEw3OTIuNSAzMjUuNSBMNzk1LjUgMjkwLjUgTDc5NC41IDI1MS4wIEw3ODguNSAyMTAuMCBMNzc5LjUgMTc2LjUgTDc3MS41IDE1Ni4wIEw3NjQuNSAxNDIuNVpNMzk2LjAgMTY1LjUgTDQxNy41IDE1NC41IEw0NDUuMCAxNDYuNSBMNDc2LjAgMTQxLjUgTDUxNi41IDE0MC41IEw1NDguMCAxNDQuNSBMNTcxLjAgMTUwLjUgTDU5NC41IDE2MC41IEw2MDkuMCAxNjkuNSBMNjE5LjAgMTc3LjUgTDYzNi4wIDE5Ni41IEw2NDcuMCAyMTYuNSBMNjUyLjAgMjMxLjUgTDY1NS4wIDI0Ni4wIEw2NTcuMCAyNzIuMCBMNjU1LjAgMzAwLjAgTDY1MC4wIDMyNC41IEw2NDIuMCAzNDQuNSBMNjMzLjAgMzU5LjAgTDYyNi4wIDM2Ny41IEw2MTcuNSAzNzYuMCBMNjA1LjUgMzg1LjUgTDU5My41IDM5My4wIEw1NzkuMCA0MDAuMCBMNTY1LjUgNDA1LjAgTDU0Ni4wIDQxMC4wIEw1MTQuNSA0MTQuMCBMNDc3LjAgNDEzLjAgTDQ0My41IDQwNy4wIEw0MjQuMCA0MDEuMCBMNDEyLjAgMzk2LjAgTDM5Ny4wIDM4Ny41IEwzODUuNSAzNzkuMCBMMzY3LjUgMzYwLjAgTDM1OS41IDM0Ny41IEwzNTEuNSAzMjkuNSBMMzQ3LjUgMzE1LjAgTDM0NC41IDI5NS41IEwzNDMuNSAyNTYuMCBMMzQ4LjUgMjI5LjUgTDM1My41IDIxNi4wIEwzNTkuNSAyMDQuMCBMMzcyLjAgMTg2LjUgTDM4NC4wIDE3NC41Wk0yMzUuMCAxNDEuMCBMMjM1LjAgMTQzLjUgTDIyOS4wIDE1NS4wIEwyMjAuMCAxNzguNSBMMjExLjAgMjEzLjUgTDIwNi4wIDI0OS4wIEwyMDUuMCAyOTQuNSBMMjA4LjAgMzI3LjAgTDIxNi4wIDM2Ni4wIEwyMjguMCA0MDAuNSBMMjM3LjAgNDE4LjAgTDIzNi4wIDQxOS4wIEwyMzAuNSA0MTkuMCBMMjA3LjUgNDIzLjAgTDE4OS4wIDQyOC4wIEwxNjcuNSA0MzYuMCBMMTM5LjUgNDUwLjAgTDEzOC41IDE0Mi4wIEwxNDAuMCAxNDAuNVoiLz48L3N2Zz4=") center/contain no-repeat}
.nav .logo .mark{width:32px;background:var(--signal)}
.nav .logo span{font-family:var(--f-display);font-weight:800;font-size:15px;letter-spacing:-.02em;text-transform:uppercase}
.nav .links{display:flex;gap:clamp(20px,3.2vw,48px)}
.nav .links a{font-family:var(--f-script);font-size:12.5px;letter-spacing:.18em;text-transform:uppercase;padding:6px 0;position:relative}
.nav .links a::after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform .5s var(--ease)}
.nav .links a:hover::after,.nav .links a[aria-current=page]::after{transform:scaleX(1)}
.nav .menu-btn{display:none;padding:8px 0}
.menu{position:fixed;inset:0;z-index:80;background:var(--ink);color:var(--txt);display:none;flex-direction:column;justify-content:center;padding:90px var(--gut) 40px;gap:2px;opacity:0;visibility:hidden;transition:opacity .45s,visibility .45s}
.menu.open{opacity:1;visibility:visible}
.menu a{font-family:var(--f-display);font-weight:800;font-size:clamp(40px,12vw,76px);line-height:1.02;letter-spacing:-.05em;text-transform:uppercase;padding:6px 0;border-bottom:1px solid rgb(var(--txt-rgb) / .14);transition:color .3s,padding .5s var(--ease)}
.menu a:hover{color:var(--signal);padding-left:14px}
.menu small{font-family:var(--f-script);font-size:11.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--mut0);margin:22px 0 6px}

/* page transition: two panels meet at the seam */
.wipe{position:fixed;inset:0;z-index:250;pointer-events:none}
.wipe i{position:absolute;left:0;right:0;height:50.3%;background:var(--ink);transition:transform .85s var(--ease)}
.wipe i:first-child{top:0;transform:translateY(-106%);border-bottom:1px solid var(--signal)}
.wipe i:last-child{bottom:0;transform:translateY(106%);border-top:1px solid var(--signal)}
.wipe-closed .wipe{pointer-events:all}
.wipe-closed .wipe i{transform:none}

/* cursor: a lens that inverts what is under it */
.lens{position:fixed;left:0;top:0;width:16px;height:16px;margin:-8px 0 0 -8px;border-radius:50%;background:rgb(var(--txt-rgb) / .92);mix-blend-mode:exclusion;z-index:300;pointer-events:none;opacity:0;transition:opacity .3s,width .45s var(--ease),height .45s var(--ease),margin .45s var(--ease)}
.has-lens .lens{opacity:1}
.lens.on{width:88px;height:88px;margin:-44px 0 0 -44px}

/* ---------------------------------- SEAM HERO ---------------------------------- */
.seam{--split:58%;--fs:24vw;position:relative;height:100svh;min-height:560px;background:var(--red);overflow:hidden}
.seam.sm{--split:60%;height:76svh;min-height:500px}
.seam-top{position:absolute;left:0;right:0;top:0;height:var(--split);background:var(--ink);color:var(--txt);overflow:hidden}
.seam-bot{position:absolute;left:0;right:0;top:var(--split);bottom:0;background:var(--red);color:var(--txt);overflow:hidden}
.seam::after{content:"";position:absolute;left:0;right:0;top:var(--split);height:1px;margin-top:-.5px;background:var(--txt);opacity:.9;z-index:6}
.word{position:absolute;left:var(--gut);margin:0;font-family:var(--f-display);font-weight:800;text-transform:uppercase;white-space:nowrap;letter-spacing:-.055em;font-size:var(--fs);line-height:.76;will-change:transform}
.word>span{display:inline-block}
.seam-top .word{bottom:0;transform:translate3d(calc(var(--p,0)*-6vw),0,0)}
.seam-bot .word{top:0;transform:scaleY(-1) translate3d(calc(var(--p,0)*6vw),0,0);color:var(--ink)}
/* both halves start hidden at the seam and travel away from it */
.js .word>span{transform:translateY(106%)}
.js.ready .word>span{transform:none;transition:transform 1.5s var(--ease) .1s}
.meta{position:absolute;z-index:3}
.meta p{max-width:34ch}
.seam-top .tl{left:var(--gut);top:clamp(92px,14vh,140px);display:grid;gap:14px}
.seam-top .tl .tag{font-family:var(--f-display);font-weight:300;font-size:clamp(20px,2.3vw,34px);line-height:1.12;letter-spacing:-.03em;max-width:20ch}
.seam-top .tl .eye{color:var(--mut0)}
.seam-bot .bl{left:var(--gut);bottom:clamp(22px,4vh,44px);font-size:15.5px;line-height:1.5;color:var(--txt-2);max-width:30ch}
.seam-bot .br{right:var(--gut);bottom:clamp(22px,4vh,44px);display:grid;gap:12px;justify-items:end}
.seam-bot .br .eye{color:var(--txt-2)}.seam-bot .eye::before{background:#0b0b0b}
.seam-bot .arrow-link:hover{color:#0b0b0b}
.seam-bot .bl-lead{font-size:clamp(16px,1.4vw,20px);color:var(--txt);line-height:1.45;max-width:30ch}
.hint{position:absolute;z-index:7;left:50%;bottom:16px;transform:translateX(-50%);font-family:var(--f-script);font-size:11px;letter-spacing:.24em;text-transform:uppercase;color:var(--txt-2);display:none}

/* ---------------------------------- services index ---------------------------------- */
.head{display:flex;justify-content:space-between;align-items:end;gap:24px;flex-wrap:wrap;margin-bottom:clamp(44px,6vw,90px)}
.head .eye{margin-bottom:22px}
.index{border-top:1px solid var(--ln)}
.index li{border-bottom:1px solid var(--ln)}
.row{position:relative;display:grid;grid-template-columns:70px minmax(0,1fr) minmax(0,260px) 56px;align-items:center;gap:var(--gut);padding:clamp(22px,3.2vw,44px) 0;isolation:isolate;transition:color .5s var(--ease),padding .6s var(--ease)}
.row::before{content:"";position:absolute;left:calc(var(--gut)*-1);right:calc(var(--gut)*-1);top:0;bottom:0;background:var(--red);transform:scaleY(0);transform-origin:center;transition:transform .7s var(--ease);z-index:-1}
.row:hover,.row:focus-visible{color:var(--txt);padding-inline:12px}
.row:hover::before,.row:focus-visible::before{transform:scaleY(1)}
.row .n{font-family:var(--f-script);font-size:13px;letter-spacing:.16em;color:var(--mut);transition:color .4s}
.row:hover .n,.row:hover .s{color:var(--txt-2)}
.row .t{font-family:var(--f-display);font-weight:800;text-transform:uppercase;font-size:clamp(34px,6.6vw,110px);line-height:.92;letter-spacing:-.055em}
.row .s{font-family:var(--f-script);font-size:12.5px;letter-spacing:.14em;text-transform:uppercase;line-height:1.7;color:var(--mut);transition:color .4s}
.row .go{justify-self:end;width:44px;height:44px;border:1px solid currentColor;border-radius:50%;display:grid;place-items:center;transition:background .4s,color .4s,transform .6s var(--ease),border-color .4s}
.row:hover .go{background:var(--ink);border-color:var(--ink);color:var(--txt);transform:rotate(45deg)}

/* values marquee + its reflection */
.marq{overflow:hidden;padding-block:clamp(30px,5vw,70px) 0;border-top:1px solid var(--ln)}
.marq-row{overflow:hidden;white-space:nowrap}
.marq-track{display:inline-flex;gap:0;will-change:transform;font-family:var(--f-display);font-weight:800;text-transform:uppercase;font-size:clamp(48px,9vw,150px);line-height:.9;letter-spacing:-.055em}
.marq-track span{padding-right:.7em}
.marq-track span:nth-child(even){color:transparent;-webkit-text-stroke:1.5px rgb(var(--txt-rgb) / .5)}
.marq-row.flip{transform:scaleY(-1);height:clamp(40px,6vw,96px);opacity:.28;-webkit-mask-image:linear-gradient(to bottom,#000,transparent);mask-image:linear-gradient(to bottom,#000,transparent);margin-top:2px}

/* ---------------------------------- work gallery ---------------------------------- */
.gallery{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--gut);row-gap:clamp(48px,7vw,110px)}
.t7{grid-column:span 7}.t5{grid-column:span 5}.t6{grid-column:span 6}.t4{grid-column:span 4}
.t5.lo{margin-top:clamp(40px,9vw,150px)}
.tile{display:block;position:relative}
.frame{position:relative;overflow:hidden;background:#1d0709;aspect-ratio:var(--ar,4/5)}
.t7 .frame{--ar:5/4}
.media{position:absolute;inset:-9% 0;background-color:#141414;background-image:var(--img,linear-gradient(var(--ang,162deg),#5a0a10 0%,#1d0709 52%,#0a0a0a 100%));background-size:cover;background-position:center;transform:translate3d(0,var(--py,0px),0) scale(var(--s,1.04));transition:transform 1.3s var(--ease)}
.media::after{content:"";position:absolute;inset:0;opacity:.2;mix-blend-mode:overlay;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='180' height='180'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='2' stitchTiles='stitch'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>")}
.frame::after{content:"";position:absolute;left:0;right:0;top:62%;height:1px;background:var(--signal);opacity:.75;z-index:2}
.frame::before{content:"";position:absolute;inset:14px;border:1px solid rgba(255,255,255,.28);z-index:3;opacity:0;transition:opacity .5s}
.tile:hover .frame::before{opacity:1}
.tile:hover .media{--s:1.12}
.frame .ph{position:absolute;left:16px;top:14px;z-index:3;color:var(--txt);opacity:.8}
.cap{display:flex;justify-content:space-between;align-items:baseline;gap:16px;padding-top:16px;border-bottom:1px solid var(--ln);padding-bottom:14px}
.cap b{font-family:var(--f-display);font-weight:800;font-size:clamp(20px,2vw,30px);letter-spacing:-.035em;line-height:1}
.cap .script{color:var(--mut)}

/* ---------------------------------- accordion ---------------------------------- */
.acc{border-top:1px solid var(--ln)}
.acc-item{border-bottom:1px solid var(--ln)}
.acc-btn{width:100%;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:26px 0;font-family:var(--f-display);font-weight:800;font-size:clamp(22px,2.6vw,38px);letter-spacing:-.04em;text-transform:uppercase;text-align:left;transition:color .3s}
.acc-btn:hover{color:var(--signal)}
.acc-btn i{width:20px;height:20px;position:relative;flex:none}
.acc-btn i::before,.acc-btn i::after{content:"";position:absolute;background:currentColor;left:0;right:0;top:50%;height:2px;margin-top:-1px;transition:transform .5s var(--ease)}
.acc-btn i::after{transform:rotate(90deg)}
.acc-btn[aria-expanded=true] i::after{transform:rotate(0)}
.acc-panel{display:grid;grid-template-rows:0fr;transition:grid-template-rows .7s var(--ease)}
.acc-panel>div{overflow:hidden}
.acc-btn[aria-expanded=true]+.acc-panel{grid-template-rows:1fr}
html:not(.js) .acc-panel{grid-template-rows:1fr}
.acc-panel p{padding:0 0 18px;color:var(--mut);max-width:56ch}
.acc-panel p:last-child{padding-bottom:30px}
.acc-panel .k{font-family:var(--f-script);font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--fg);margin-right:10px}

/* ---------------------------------- inner pages ---------------------------------- */
.list{border-top:1px solid var(--ln)}
.list li{display:flex;gap:24px;align-items:baseline;padding:20px 0;border-bottom:1px solid var(--ln);font-size:clamp(18px,1.8vw,26px);letter-spacing:-.02em}
.list li span{font-family:var(--f-script);font-size:12.5px;letter-spacing:.16em;color:var(--mut);min-width:34px}
.cols{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));column-gap:var(--gut);row-gap:48px;border-top:1px solid var(--ln)}
.cols>div{padding-top:28px}
.cols h3{font-family:var(--f-display);font-weight:800;font-size:clamp(24px,2.6vw,38px);letter-spacing:-.04em;line-height:1.02;margin:16px 0 12px}
.cols p{color:var(--mut);max-width:34ch}
.cols.five{grid-template-columns:repeat(5,minmax(0,1fr))}
.cols.five h3{font-size:clamp(20px,1.9vw,28px)}
.steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));column-gap:var(--gut);row-gap:36px;border-top:1px solid var(--ln)}
.steps li{padding-top:26px}
.steps h3{font-family:var(--f-display);font-weight:800;font-size:clamp(22px,2.2vw,32px);letter-spacing:-.04em;margin:14px 0 10px;text-transform:uppercase}
.steps p{color:var(--mut);max-width:28ch;font-size:16px}
.quote{font-family:var(--f-display);font-weight:300;font-size:clamp(32px,5.6vw,92px);line-height:1.02;letter-spacing:-.04em;max-width:18ch}
.pager{display:flex;justify-content:space-between;gap:24px;flex-wrap:wrap;border-top:1px solid var(--ln);padding-top:34px}
.pager a{display:grid;gap:8px;max-width:44ch}
.pager b{font-family:var(--f-display);font-weight:800;font-size:clamp(26px,3.4vw,52px);letter-spacing:-.045em;line-height:1;text-transform:uppercase;transition:color .3s}
.pager a:hover b{color:var(--signal)}
.pager .next{text-align:right;margin-left:auto}
.post{display:grid;grid-template-columns:150px minmax(0,1fr) 56px;gap:var(--gut);align-items:center;padding:clamp(28px,3.4vw,48px) 0;border-bottom:1px solid var(--ln);position:relative;isolation:isolate;transition:padding .6s var(--ease),color .5s}
.post:first-child{border-top:1px solid var(--ln)}
.post::before{content:"";position:absolute;left:calc(var(--gut)*-1);right:calc(var(--gut)*-1);top:0;bottom:0;background:var(--ink);transform:scaleY(0);transition:transform .7s var(--ease);z-index:-1}
.post:hover{color:var(--txt);padding-inline:12px}
.post:hover::before{transform:scaleY(1)}
.post h3{font-family:var(--f-display);font-weight:800;font-size:clamp(24px,3.4vw,52px);letter-spacing:-.045em;line-height:1}
.post p{margin-top:10px;color:var(--mut);max-width:58ch}
.post:hover p,.post:hover .script{color:var(--mut0)}
.post .go{justify-self:end;width:44px;height:44px;border:1px solid currentColor;border-radius:50%;display:grid;place-items:center}
.prose{max-width:62ch}
.prose p{font-size:clamp(19px,1.7vw,23px);line-height:1.6;margin-bottom:1.3em}
.prose p:first-child::first-line{font-family:var(--f-display);font-weight:300;letter-spacing:-.02em}
.page-head{padding:clamp(150px,22vw,260px) 0 clamp(60px,8vw,110px)}
.page-head h1{font-family:var(--f-display);font-weight:800;text-transform:uppercase;font-size:clamp(38px,7.4vw,124px);line-height:.9;letter-spacing:-.055em;max-width:14ch;margin-top:26px}

/* form */
.field{display:grid;gap:6px;margin-bottom:34px}
.field label{font-family:var(--f-script);font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:var(--mut)}
.field input,.field select,.field textarea{width:100%;background:transparent;border:0;border-bottom:1px solid var(--ln);border-radius:0;color:inherit;font:inherit;font-size:clamp(20px,2vw,28px);letter-spacing:-.02em;padding:10px 0 14px;transition:border-color .3s}
.field select{appearance:none;-webkit-appearance:none;cursor:pointer}
.field select option{background:var(--ink);color:var(--txt)}
.field textarea{min-height:140px;resize:vertical}
.field :is(input,select,textarea):focus{outline:none;border-color:var(--signal)}
.note{min-height:1.6em;margin-top:18px;color:var(--mut)}
.info{display:grid;gap:40px;align-content:start}
.info h4{font-family:var(--f-script);font-weight:400;font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:var(--mut);margin-bottom:10px}
.info a,.info p{font-family:var(--f-display);font-weight:300;font-size:clamp(22px,2.4vw,34px);letter-spacing:-.03em;line-height:1.15}
.info a:hover{color:var(--signal)}

/* ---------------------------------- footer ---------------------------------- */
.footer{position:relative;overflow:hidden;padding:clamp(70px,9vw,130px) 0 0}
.foot-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:var(--gut);padding-bottom:clamp(60px,8vw,120px)}
.foot-grid h4{font-family:var(--f-script);font-weight:400;font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:var(--mut);margin-bottom:18px}
.foot-grid li{margin-bottom:10px}
.foot-grid a{transition:color .3s}
.foot-grid a:hover{color:var(--signal)}
.foot-grid p{color:var(--mut);max-width:30ch}
.foot-grid .logo-big{display:flex;align-items:center;gap:14px;margin-bottom:20px}
.foot-grid .logo-big .mark{width:38px;background:var(--signal)}
.foot-grid .logo-big span{font-family:var(--f-display);font-weight:800;font-size:18px;text-transform:uppercase;letter-spacing:-.02em}
.foot-word{position:relative;margin:0 0 0 var(--gut);--fs:inherit;font-family:var(--f-display);font-weight:800;text-transform:uppercase;font-size:var(--fs,24vw);line-height:.76;letter-spacing:-.055em;white-space:nowrap;color:#2a0509;height:calc(var(--fs,24vw)*.76)}
.foot-ref{position:absolute;left:0;top:100%;font-family:inherit;font-size:inherit;line-height:inherit;letter-spacing:inherit;transform:scaleY(-1);-webkit-mask-image:linear-gradient(to top,#000 0,transparent 80%);mask-image:linear-gradient(to top,#000 0,transparent 80%);opacity:.7;pointer-events:none}
.copy{position:absolute;left:var(--gut);bottom:18px;z-index:3;font-family:var(--f-script);font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--mut0)}
.foot-wrap{position:relative;padding-bottom:calc(var(--fs,24vw)*.5)}

/* ---------------------------------- responsive ---------------------------------- */
@media (max-width:1000px){
  .c-3,.c-4,.c-5,.c-7,.c-8,.c-9,.c-6a,.c-6b{grid-column:1/-1}
  .grid-12>*+*{margin-top:30px}
  .row{grid-template-columns:44px minmax(0,1fr) 44px}
  .row .s{display:none}
  .t7,.t5,.t6{grid-column:span 12}
  .t5.lo{margin-top:0}
  .cols,.cols.five{grid-template-columns:repeat(2,minmax(0,1fr))}
  .steps{grid-template-columns:repeat(2,minmax(0,1fr))}
  .foot-grid{grid-template-columns:1fr 1fr}
}
@media (max-width:760px){
  body{font-size:16px}
  .nav .links{display:none}
  .nav .menu-btn{display:flex}
  .menu{display:flex}
  .nav .logo span{display:none}
  .seam{--split:54%;height:520px;min-height:0}
  .seam.sm{--split:54%;height:470px;min-height:0}
  .seam-bot .br{left:var(--gut);right:auto;justify-items:start;bottom:clamp(20px,3vh,30px)}
  .seam-bot .bl{display:none}
  .hint{display:none!important}
  .cols,.cols.five,.steps{grid-template-columns:1fr}
  .post{grid-template-columns:minmax(0,1fr) 44px}
  .post .script{grid-column:1/-1}
  .foot-grid{grid-template-columns:1fr}
  .row{padding-block:20px}
}
@media (min-width:1001px){ .hint{display:block} }

@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation:none!important;transition-duration:.01ms!important;transition-delay:0s!important}
  .js .ln>span,.js [data-r],.js .word>span{transform:none!important;opacity:1!important}
}


/* Keep this English design left-to-right even on Persian WordPress installs. */
html[lang="en"], html[lang="en"] body { direction: ltr !important; }
html[lang="en"] body { text-align: left; }
html[lang="fa"], html[lang="fa"] body { direction: rtl !important; }
html[lang="fa"] { --f-display: "Peyda", Tahoma, Arial, sans-serif; --f-body: "Peyda", Tahoma, Arial, sans-serif; --f-script: "Peyda", Tahoma, Arial, sans-serif; }
html[lang="fa"] body { text-align: right; font-family: var(--f-body); }
html[lang="fa"] :is(h1,h2,h3,h4,p,a,button,label,li,span,b,strong) { letter-spacing: normal; }
html[lang="fa"] :is(.nav .links a,.menu small,.eye,.script) { text-transform: none; }
.nav-tools { display:flex; align-items:center; gap:clamp(18px,2.5vw,36px); pointer-events:auto; }
.language-switcher { display:flex; align-items:center; gap:8px; font-family:var(--f-script); font-size:12px; letter-spacing:.08em; }
.language-switcher a { padding:5px 2px; }
.language-switcher a:hover { color:var(--signal); }
.menu-btn { position:relative; width:34px; height:34px; align-items:center; justify-content:center; flex-direction:column; gap:6px; }
.menu-btn span { display:block; width:25px; height:1.5px; background:currentColor; transition:transform .3s, opacity .2s; }
.menu-btn.is-open span:first-child { transform:translateY(7.5px) rotate(45deg); }
.menu-btn.is-open span:nth-child(2) { opacity:0; }
.menu-btn.is-open span:last-child { transform:translateY(-7.5px) rotate(-45deg); }
html[lang="fa"] .language-switcher { font-size:13px; }
html[lang="fa"] .post, html[lang="fa"] .cap, html[lang="fa"] .head, html[lang="fa"] .foot-grid { direction:rtl; }
html[lang="fa"] .post .go { justify-self:start; }
html[lang="fa"] .menu a:hover { padding-left:0; padding-right:14px; }
html[lang="fa"] .row .go { transform:scaleX(-1); }




/* =====================================================================
   V4 — BOLD AGENCY LAYER
   black + bold red + chalk. Big type, round pills, scroll-driven words.
   ===================================================================== */
:root{--signal:#e3111b;--chalk:var(--txt);--paper:#121212;--paper-2:#1a1a1a}
@keyframes spin{to{transform:rotate(360deg)}}
@keyframes blink{50%{opacity:0}}
@keyframes pulse{0%,100%{transform:scale(1)}50%{transform:scale(1.35)}}
@keyframes scrub{0%{transform:translateX(0)}100%{transform:translateX(49px)}}
@keyframes beat{0%,100%{transform:scale(1)}50%{transform:scale(.8)}}
@keyframes draw{0%{stroke-dashoffset:170}55%,80%{stroke-dashoffset:0}100%{stroke-dashoffset:-170}}
@keyframes mv{0%{opacity:0;filter:blur(14px)}3%,15.5%{opacity:1;filter:none}18.5%,100%{opacity:0;filter:blur(14px)}}

.on-ink{background:var(--ink);background-image:none}
.on-paper{background:var(--paper);background-image:none;--mut:#a9a9a5}
.eye::before{width:9px;height:9px;background:var(--signal);border-radius:50%;animation:none}
.h-xl em,.h-m em{color:var(--signal)}

/* pills */
.pill{display:inline-flex;align-items:center;gap:12px;padding:15px 24px;border:1px solid rgb(var(--txt-rgb) / .4);border-radius:999px;font-family:var(--f-script);font-size:12.5px;letter-spacing:.14em;text-transform:uppercase;transition:background .35s,color .35s,border-color .35s,gap .5s var(--ease);white-space:nowrap;background:transparent;color:var(--chalk)}
.pill svg{width:14px;height:14px;flex:none}
.pill:hover{background:var(--chalk);color:var(--ink);border-color:var(--chalk);gap:20px}
.pill.red{background:var(--signal);border-color:var(--signal);color:#fff}
.pill.red:hover{background:var(--chalk);border-color:var(--chalk);color:var(--ink)}
.pill.dark{background:var(--ink);border-color:var(--ink);color:var(--chalk)}
.pill.dark:hover{background:var(--chalk);border-color:var(--chalk);color:var(--ink)}
.pill.big{padding:24px 38px;font-size:14px}
html[lang="fa"] .pill{letter-spacing:0;text-transform:none;font-size:14.5px}

/* navigation: floating pill */
.nav{background:none;padding:16px var(--gut)}
.nav::before{content:"";position:absolute;left:0;right:0;top:0;height:110px;background:linear-gradient(rgb(var(--ink-rgb) / .85),rgb(var(--ink-rgb) / 0));z-index:-1;pointer-events:none}
.nav .links{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);gap:2px;padding:5px;border:1px solid rgb(var(--txt-rgb) / .2);border-radius:999px;background:rgb(var(--ink-rgb) / .7);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);pointer-events:auto}
.nav .links a{padding:9px 18px;border-radius:999px;transition:background .3s,color .3s}
.nav .links a::after{display:none}
.nav .links a:hover{background:var(--chalk);color:var(--ink)}
.nav .links a[aria-current=page]{background:rgb(var(--txt-rgb) / .14)}
.nav-cta{padding:11px 18px}
.language-switcher{padding:9px 14px;border:1px solid rgb(var(--txt-rgb) / .2);border-radius:999px;background:rgb(var(--ink-rgb) / .55);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}
.language-switcher a{padding:0 2px}
.menu{background:var(--ink)}
.menu a:hover{color:var(--signal)}
.wipe i{background:var(--signal)}
.wipe i:first-child{border-bottom:1px solid var(--ink)}.wipe i:last-child{border-top:1px solid var(--ink)}

/* cursor: dot that grows, and turns into a labelled red bubble over cards */
.lens{width:14px;height:14px;margin:-7px 0 0 -7px;border:0;border-radius:50%;background:var(--txt);mix-blend-mode:normal;box-shadow:0 0 0 1px rgba(0,0,0,.35);display:grid;place-items:center;color:#fff;overflow:hidden}
.lens::before,.lens::after{display:none}
.lens.on{width:58px;height:58px;margin:-29px 0 0 -29px;background:#fff}
.lens.lab{width:96px;height:96px;margin:-48px 0 0 -48px;background:var(--signal);mix-blend-mode:normal;opacity:1}
.lens span{font:700 11.5px/1 var(--f-script);letter-spacing:.14em;text-transform:uppercase;opacity:0;transition:opacity .25s}
.lens.lab span{opacity:1}

/* ---------------------------------- HERO ---------------------------------- */
.hero{position:relative;min-height:100svh;padding:clamp(120px,19vh,200px) var(--gut) clamp(26px,5vh,56px);display:flex;flex-direction:column;justify-content:space-between;gap:48px;background:var(--ink);overflow:hidden}
.hero-h{font-family:var(--f-display);font-weight:800;font-size:clamp(50px,10.6vw,200px);line-height:.94;letter-spacing:-.052em;display:flex;flex-direction:column;align-items:flex-start;max-width:100%}
.hero-h>span{display:block}
.hero-h .hl-a,.hero-h .hl-c{overflow:hidden;padding-block:.04em}
.js .hero-h .hl-a,.js .hero-h .hl-c,.js .hero-h .morph{opacity:0;transform:translateY(60%)}
.js.ready .hero-h .hl-a,.js.ready .hero-h .hl-c,.js.ready .hero-h .morph{opacity:1;transform:none;transition:opacity 1.1s var(--ease),transform 1.3s var(--ease)}
.js.ready .hero-h .morph{transition-delay:.12s}.js.ready .hero-h .hl-c{transition-delay:.24s}
.hero-h>.morph,.morph{display:grid;position:relative;padding-block:.02em}
.mv{grid-area:1/1;justify-self:start;opacity:0;white-space:nowrap;animation:mv 12s infinite both;animation-delay:calc(var(--i,0)*2s)}
.m1{--i:0;color:var(--signal)}
.m2{--i:1;color:transparent;-webkit-text-stroke:.025em var(--chalk)}
.m3{--i:2;font-weight:300;letter-spacing:-.06em;transform:skewX(-9deg)}
.m4{--i:3;transform:scaleX(-1);transform-origin:center}
.m5{--i:4;font-family:var(--f-script);font-weight:400;text-transform:uppercase;letter-spacing:-.02em;font-size:.82em;align-self:center;color:var(--signal)}
.m6{--i:5;background:var(--signal);color:#fff;padding:0 .22em;border-radius:.2em;justify-self:start}
html[lang="fa"] .hero-h{letter-spacing:0;line-height:1.18;font-weight:800;align-items:flex-start}
html[lang="fa"] .m3{font-weight:400;transform:none}
html[lang="fa"] .m5{font-family:inherit;letter-spacing:0;text-transform:none}
.hero-foot{display:flex;justify-content:space-between;align-items:flex-end;gap:28px;flex-wrap:wrap}
.hero-lead{max-width:34ch;font-size:clamp(16px,1.35vw,20px);line-height:1.5;color:rgb(var(--txt-rgb) / .82)}
.hero-btns{display:flex;gap:12px;flex-wrap:wrap}
.badge{position:absolute;right:var(--gut);top:clamp(124px,22vh,230px);width:clamp(104px,11vw,168px);aspect-ratio:1;display:grid;place-items:center;z-index:2}
.badge svg{position:absolute;inset:0;width:100%;height:100%;animation:spin 22s linear infinite;overflow:visible}
.badge text{font:700 15.5px var(--f-script);letter-spacing:.2em;text-transform:uppercase;fill:var(--chalk)}
.badge .mark{width:30%;background:var(--signal);transition:transform .6s var(--ease)}
.badge:hover .mark{transform:rotate(-12deg) scale(1.15)}
.badge:hover svg{animation-duration:6s}

/* ---------------------------------- statement ---------------------------------- */
.stmt{background:var(--signal);color:var(--ink);overflow:hidden;padding:clamp(34px,5vw,80px) 0 0;--sf:clamp(88px,17.5vw,330px)}
.stmt-row{overflow:hidden;white-space:nowrap;font-family:var(--f-display);font-weight:800;text-transform:uppercase;font-size:var(--sf);line-height:.84;letter-spacing:-.06em}
.stmt-track{display:inline-flex;gap:.28em;padding-inline:var(--gut);will-change:transform}
.stmt-track .o{color:transparent;-webkit-text-stroke:.018em var(--ink)}
.stmt-track .r{color:var(--chalk)}
.stmt-row.ref{transform:scaleY(-1);height:calc(var(--sf)*.52);opacity:.55;-webkit-mask-image:linear-gradient(to bottom,#000,transparent 95%);mask-image:linear-gradient(to bottom,#000,transparent 95%);pointer-events:none}
html[lang="fa"] .stmt-row{letter-spacing:0;text-transform:none;line-height:1.1;font-size:calc(var(--sf)*.8)}

/* ---------------------------------- work ---------------------------------- */
.frame{border-radius:28px;background:#1c1c1c}
.frame::before,.frame::after{display:none}
.media{background-image:var(--img,linear-gradient(var(--ang,162deg),#c4000e 0%,#2a0509 55%,#0b0b0b 100%))}
.frame .ph{left:16px;top:16px;padding:8px 14px;border-radius:999px;background:rgb(var(--ink-rgb) / .62);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);opacity:1;font-size:11.5px}
.cap{align-items:center;border-bottom:0;padding:18px 4px 0}
.cap b{font-size:clamp(22px,2.4vw,38px)}
.cap .script{padding:8px 14px;border:1px solid var(--ln);border-radius:999px;color:var(--chalk);font-size:11.5px}
.tile:hover .cap b{color:var(--signal)}
.tile:hover .media{--s:1.1}

/* ---------------------------------- services ---------------------------------- */
.svc{background:var(--paper)}
.index{border-top:1px solid var(--ln)}
.index li{border-bottom:1px solid var(--ln)}
.row{position:relative;display:grid;grid-template-columns:56px 76px minmax(0,1fr) minmax(0,250px) 52px;align-items:center;gap:var(--gut);padding:clamp(18px,2.2vw,30px) 0;isolation:isolate;transition:padding .6s var(--ease),color .4s}
.row::before{content:"";position:absolute;inset:0 calc(var(--gut)*-1);background:var(--signal);transform:scaleX(0);transform-origin:left;transition:transform .7s var(--ease);z-index:-1}
html[lang="fa"] .row::before{transform-origin:right}
.row:hover,.row:focus-visible{color:#fff;padding-inline:14px}
.row:hover::before,.row:focus-visible::before{transform:scaleX(1)}
.row .n,.row .s{font-family:var(--f-script);color:var(--mut)}
.row .s{font-size:12.5px;letter-spacing:.14em;text-transform:uppercase;line-height:1.7}
.row:hover .n,.row:hover .s{color:rgba(255,255,255,.9)}
.ico-w{display:block;width:64px;height:64px;color:var(--signal);transition:color .4s}
.row:hover .ico-w{color:#fff}
.ico{width:100%;height:100%;overflow:visible}
.ico .blades,.ico .orb{transform-box:view-box;transform-origin:32px 32px;animation:spin 16s linear infinite}
.row:hover .ico .blades{animation-duration:2.6s}.row:hover .ico .orb{animation-duration:3s}
.ico .hex{transform-box:fill-box;transform-origin:center;animation:pulse 3.2s ease-in-out infinite}
.ico .core{transform-box:fill-box;transform-origin:center;animation:pulse 1.8s ease-in-out infinite}
.ico .head{animation:scrub 3.4s linear infinite}
.ico .tri{transform-box:fill-box;transform-origin:center;animation:beat 1.7s ease-in-out infinite}
.ico .bez{stroke-dasharray:170;animation:draw 3.8s ease-in-out infinite}
.ico .nd{animation:blink 1.6s steps(2) infinite}
.row .go{border-radius:50%}
html[lang="fa"] .row .s{letter-spacing:0;text-transform:none;font-size:14px}

/* ---------------------------------- about ---------------------------------- */
.about{padding-block:clamp(110px,15vw,240px)}
.big-text{margin-top:30px;font-family:var(--f-display);font-weight:800;font-size:clamp(32px,6vw,104px);line-height:1.06;letter-spacing:-.045em;max-width:22ch}
.big-text mark{background:none;color:inherit}
.big-text .w{transition:opacity .25s linear}
.big-text .w.hl{background:linear-gradient(var(--signal),var(--signal)) no-repeat left center/0% 100%;transition:opacity .25s linear,background-size .6s var(--ease);padding:.02em .1em;margin:0 -.1em;border-radius:.14em;-webkit-box-decoration-break:clone;box-decoration-break:clone}
.big-text .w.hl.lit{background-size:100% 100%;color:#fff}
html[lang="fa"] .big-text{letter-spacing:0;line-height:1.5;max-width:26ch}
html[lang="fa"] .big-text .w.hl{background-position:right center}

/* values band */
.chips-band{overflow:hidden;white-space:nowrap;padding-block:clamp(22px,3vw,40px);border-block:1px solid rgb(var(--txt-rgb) / .14);background:var(--ink)}
.cb-track{display:inline-flex;gap:14px;will-change:transform;padding-inline-start:14px}
.cb-track span{display:inline-flex;align-items:center;gap:14px;padding:14px 30px;border:1px solid rgb(var(--txt-rgb) / .28);border-radius:999px;font-family:var(--f-display);font-weight:800;text-transform:uppercase;letter-spacing:-.03em;font-size:clamp(18px,2vw,32px);line-height:1}
.cb-track span::before{content:"";width:12px;height:12px;border-radius:50%;background:var(--signal)}
html[lang="fa"] .cb-track span{letter-spacing:0;text-transform:none}

/* process */
.num-c{display:grid;place-items:center;width:56px;height:56px;border-radius:50%;background:var(--signal);font-family:var(--f-script);font-size:13px;letter-spacing:.1em;color:#fff}
.steps h3{font-size:clamp(26px,2.6vw,40px);margin:22px 0 10px}

/* call to action: solid red */
.cta{background:var(--signal);color:#fff;--fg:#fff;--mut:rgba(255,255,255,.88);--ln:rgba(255,255,255,.4);padding-block:clamp(100px,14vw,220px)}
.cta .eye{color:#fff}.cta .eye::before{background:var(--ink)}
.cta-h{font-family:var(--f-display);font-weight:800;font-size:clamp(52px,11.4vw,214px);line-height:.92;letter-spacing:-.055em;margin:28px 0 clamp(40px,5vw,76px)}
.cta-h em{color:var(--ink)}
html[lang="fa"] .cta-h{letter-spacing:0;line-height:1.25}
.cta-foot{display:flex;gap:30px;align-items:center;flex-wrap:wrap}
.cta-foot p{color:#fff}
.cta .arrow-link:hover{color:var(--ink)}
.cta ::selection{background:var(--ink)}

/* footer */
.footer{background:var(--ink);background-image:none}
.foot-word{color:transparent;-webkit-text-stroke:1px rgba(227,17,27,.7)}
.copy{bottom:46px}

/* inner page heroes: giant title + its reflection */
.seam{background:var(--ink)}
.seam-top{background:var(--ink);background-image:none}
.seam-top::after{display:none}
.seam-bot{background:var(--ink)}
.seam::after{background:rgb(var(--txt-rgb) / .35)}
.seam-bot .word{color:transparent;-webkit-text-stroke:1.3px rgba(227,17,27,.85);-webkit-mask-image:linear-gradient(to top,#000 0,transparent 80%);mask-image:linear-gradient(to top,#000 0,transparent 80%)}
.seam-bot .bl-lead,.seam-bot .bl{color:rgb(var(--txt-rgb) / .8)}
.seam-bot .br .eye{color:rgb(var(--txt-rgb) / .8)}.seam-bot .eye::before{background:var(--signal)}
.seam-bot .arrow-link:hover{color:var(--signal)}
.seam.sm .seam-top .word{color:var(--chalk)}

/* skip link: never create horizontal overflow (RTL safe) */
.skip{position:fixed;left:10px;top:10px;transform:translateY(-300%);z-index:400}
.skip:focus{left:10px;transform:none}

/* ---------------------------------- responsive ---------------------------------- */
@media (max-width:1000px){
  .nav .links{display:none}
  .nav-cta{display:none}
  .row{grid-template-columns:40px 56px minmax(0,1fr) 40px;gap:14px}
  .row .s{display:none}
  .ico-w{width:50px;height:50px}
}
@media (max-width:760px){
  .hero{min-height:620px;padding-top:120px}
  .badge{display:none}
  .row .t{font-size:clamp(26px,8.2vw,56px);min-width:0;overflow-wrap:anywhere}
  .row .go{width:40px;height:40px}
  .ico-w{width:46px;height:46px}
  .hero-btns .pill{padding:13px 18px}
}
@media (prefers-reduced-motion:reduce){
  .ico *,.badge svg{animation:none!important}
  .mv{animation:none!important}.m1{opacity:1}
  .js .hero-h .hl-a,.js .hero-h .hl-c,.js .hero-h .morph{opacity:1!important;transform:none!important}
}
/* v3 fixes: RTL hero */
html[lang="fa"] .hero-h{font-size:clamp(44px,7.6vw,150px)}
html[lang="fa"] .badge{right:auto;left:var(--gut)}
html[lang="fa"] .badge text{font-family:"Peyda",Tahoma,sans-serif;letter-spacing:0;font-size:17px}

/* ===== v3.1 — light / dark theme ===== */
html[data-theme="light"]{
  color-scheme:light;
  --txt:#161312; --txt-rgb:22 19 18; --txt-2:#3b2c2c; --ink-rgb:243 240 235; --mut0:#6d6865;
  --ink:#f3f0eb; --ink-2:#e8e3dc; --paper:#e9e2db; --paper-2:#ddd4cb;
}
html,body,.on-ink,.on-paper,.sec,.menu,.nav,.wipe i,.pill,.index .row{transition:background-color .45s,color .45s,border-color .45s}
.theme-btn{position:relative;width:42px;height:42px;border-radius:50%;border:1px solid rgb(var(--txt-rgb) / .2);display:grid;place-items:center;background:rgb(var(--ink-rgb) / .55);color:var(--txt);flex:none}
.theme-btn svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;transition:transform .6s var(--ease)}
.theme-btn .sun{position:absolute;opacity:0;transform:rotate(-70deg) scale(.6)}
html[data-theme="light"] .theme-btn .moon{opacity:0;transform:rotate(70deg) scale(.6)}
html[data-theme="light"] .theme-btn .sun{opacity:1;transform:none}
.theme-btn:hover{border-color:var(--signal);color:var(--signal)}
/* content that sits on always-dark or always-red surfaces keeps light text */
.frame,.frame *,.stmt,.stmt *,.cap,.cap *,.badge text{--txt:#f1f1ee}
.cta,.cta *{--txt:#fff}
.stmt .o{-webkit-text-stroke-color:#0b0b0b}
html[data-theme="light"] .nav{color:var(--txt)}
html[data-theme="light"] .mark{background:var(--signal)}
html[data-theme="light"] .pill.red,html[data-theme="light"] .pill.dark{color:#fff}
html[data-theme="light"] .pill.dark{background:#0b0b0b}
html[data-theme="light"] .cta .pill.dark{color:#f1f1ee}

/* ===== v3.1 — particle logo in Work ===== */
.lm-track{height:340vh;position:relative}
.lm-stage{position:sticky;top:0;height:100vh;height:100dvh;overflow:hidden}
.lm-c{position:absolute;inset:0;width:100%;height:100%;display:block}
.lm-cap{position:absolute;left:var(--gut);right:var(--gut);bottom:clamp(22px,5vh,48px);display:flex;justify-content:space-between;align-items:flex-end;font-family:var(--f-script);font-size:11.5px;letter-spacing:.22em;text-transform:uppercase;color:var(--mut0)}
.lm-eye{display:flex;align-items:center;gap:10px}.lm-eye::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--signal)}
.lm-n{font-family:var(--f-display);font-weight:800;font-size:clamp(34px,5vw,72px);letter-spacing:-.04em;color:var(--txt);line-height:1}
.lm-hint{position:absolute;left:50%;top:calc(var(--gut) + 74px);transform:translateX(-50%);font-family:var(--f-script);font-size:11px;letter-spacing:.3em;text-transform:uppercase;color:var(--mut0)}
@media (prefers-reduced-motion:reduce){.lm-track{height:100vh}.lm-hint{display:none}}
@media (max-width:760px){.lm-track{height:280vh}}

/* ===== v3.2 — tighter space, tiered (staircase) type, principles ===== */
.sec{padding-block:clamp(60px,8vw,130px)}
.about{padding-block:clamp(70px,9vw,150px)}
.head{margin-bottom:clamp(28px,4vw,60px)}
.hero{padding-top:clamp(104px,15vh,160px);gap:clamp(28px,5vh,48px)}
.hero-h{line-height:.9}
.stmt{padding-top:clamp(26px,4vw,60px)}
.cta{padding-block:clamp(72px,9vw,150px)}
.cta-h{margin:20px 0 clamp(28px,4vw,56px);line-height:.88}
.about-sub{max-width:44ch;margin-top:clamp(24px,3vw,44px);color:var(--mut0)}
.big-text{margin-top:22px}
/* tiered headline: every line steps in */
.hero-h .morph{margin-inline-start:clamp(18px,7vw,140px)}
.hero-h .hl-c{margin-inline-start:clamp(36px,14vw,280px)}
.cta-h .ln:nth-child(2){margin-inline-start:clamp(28px,10vw,200px)}
/* principles staircase */
.prin .stair{display:flex;flex-direction:column;border-top:1px solid var(--ln)}
.stair li{display:grid;grid-template-columns:52px minmax(0,1.1fr) minmax(0,1.3fr);column-gap:clamp(16px,2.4vw,40px);row-gap:6px;align-items:baseline;padding:clamp(18px,2.2vw,30px) 0;border-bottom:1px solid var(--ln);margin-inline-start:calc(var(--k)*clamp(0px,6.4vw,120px))}
.stair .sn{font-family:var(--f-script);font-size:12px;letter-spacing:.2em;color:var(--signal)}
.stair h3{font-family:var(--f-display);font-weight:800;text-transform:uppercase;font-size:clamp(26px,3.8vw,60px);line-height:.95;letter-spacing:-.045em;grid-row:1/3;grid-column:2}
.stair .st{font-family:var(--f-script);font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--txt);grid-column:3}
.stair .sd{grid-column:3;color:var(--mut0);font-size:16px;line-height:1.5;max-width:46ch}
html[lang="fa"] .stair h3{text-transform:none;letter-spacing:0;line-height:1.2}
html[lang="fa"] .stair .st{letter-spacing:0;text-transform:none;font-family:inherit;font-size:14px}
@media (max-width:760px){
  .sec{padding-block:clamp(48px,12vw,72px)}
  .hero{min-height:0;padding-top:96px;padding-bottom:28px;gap:26px}
  .hero-foot{gap:18px}
  .hero-h .morph{margin-inline-start:8vw}.hero-h .hl-c{margin-inline-start:16vw}
  .cta-h .ln:nth-child(2){margin-inline-start:9vw}
  .stair li{grid-template-columns:34px minmax(0,1fr);margin-inline-start:calc(var(--k)*3.2vw)}
  .stair h3{grid-column:2;grid-row:auto}.stair .st,.stair .sd{grid-column:2}
  .head{gap:12px}
}

/* ===== v3.3 — light-show video band + scrubbed Work headline ===== */
.stmt{background:#0b0b0b;position:relative;isolation:isolate}
.stmt-vid{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;opacity:.95}
.stmt-shade{position:absolute;inset:0;z-index:-1;background:linear-gradient(rgba(11,11,11,.35),rgba(11,11,11,.1) 50%,rgba(11,11,11,.55))}
.stmt,.stmt *{--txt:#f1f1ee}
.stmt .stmt-track span{color:#f1f1ee}
.stmt .stmt-track .o{color:transparent;-webkit-text-stroke:2px #f1f1ee}
.stmt .stmt-track .r{color:var(--signal);text-shadow:0 0 40px rgba(227,17,27,.55)}
.stmt .ref{opacity:.5}
@media (prefers-reduced-motion:reduce){.stmt-vid{display:none}.stmt{background:linear-gradient(120deg,#0b0b0b,#4a070c)}}
.lm-h{position:absolute;z-index:0;left:var(--gut);right:var(--gut);top:clamp(92px,16vh,160px);display:flex;flex-direction:column;font-family:var(--f-display);font-weight:800;text-transform:uppercase;font-size:clamp(54px,13vw,250px);line-height:.88;letter-spacing:-.055em;pointer-events:none}
.lm-l{display:block;overflow:hidden;padding:.04em .06em .02em}
.lm-l:nth-child(2){margin-inline-start:clamp(36px,14vw,280px)}
.lm-w{display:inline-block;will-change:transform;opacity:0}
.lm-l:nth-child(1) .lm-w{color:var(--txt)}
.lm-l:nth-child(2) .lm-w{color:transparent;-webkit-text-stroke:2px var(--signal)}
.lm-c{z-index:1}.lm-cap,.lm-hint{z-index:2}
html[lang="fa"] .lm-h{text-transform:none;letter-spacing:0;line-height:1.15}
.head-r{justify-content:space-between;margin-bottom:clamp(24px,3vw,44px)}
body{overflow-x:clip}

/* ===== v3.4 — pure video band (no text); height follows the video ===== */
.stmt.stmt-video{height:clamp(220px,40vw,640px);padding:0;background:radial-gradient(120% 140% at 50% 120%,#5a0a10,#0b0b0b 70%)}
.stmt-video .stmt-vid{opacity:1}
.stmt-video .stmt-shade{background:linear-gradient(rgba(11,11,11,.25),rgba(11,11,11,0) 30%,rgba(11,11,11,0) 70%,rgba(11,11,11,.3))}
@media (max-width:760px){.stmt.stmt-video{height:clamp(200px,58vw,320px)}}
