:root{--bg:#fbf5ea;--fg:#1a0846;--mut:#675f82;--acc:#7b3aff;--ai:#fff;--line:#e6dccb;--card:#fff;box-sizing:border-box;padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px);color-scheme:light}
html{scroll-padding-top:env(safe-area-inset-top,0px)}
*{box-sizing:border-box;margin:0}
body{background:var(--bg);color:var(--fg);font:400 16px/1.6 Manrope,system-ui,sans-serif;overflow-x:hidden}
body::before{content:"";position:fixed;inset:0 0 auto;height:env(safe-area-inset-top,0px);z-index:60;background:var(--bg)}
h1,h2,h3,.d{font-family:Unbounded,Impact,sans-serif;line-height:1.05;letter-spacing:-.02em}
.m{font-family:'JetBrains Mono',ui-monospace,monospace;font-size:.78rem;letter-spacing:.08em;text-transform:uppercase;color:var(--mut)}
a{color:inherit;text-decoration:none}
.w{max-width:1200px;margin:auto;padding:0 clamp(18px,4vw,40px)}
section{padding:clamp(60px,10vw,120px) 0}
h2,.ph h1{font-size:clamp(1.8rem,5vw,3.6rem);font-weight:800}
.page{display:none}.page.on{display:block}
/* nav */
nav{position:fixed;top:env(safe-area-inset-top,0px);left:0;right:0;z-index:50;background:rgba(251,245,234,.97);border-bottom:1px solid var(--line)}
nav .w{display:flex;align-items:center;justify-content:space-between;height:76px}
.logo{display:flex;align-items:center;gap:10px;font:800 1.1rem Unbounded,sans-serif}
.logo svg{width:28px;height:28px}
.links{display:flex;gap:26px;align-items:center}
.links a{font-size:.9rem;position:relative;padding:4px 0}
.links a::after{content:"";position:absolute;left:0;bottom:0;height:2px;width:100%;background:var(--acc);transform:scaleX(0);transform-origin:right;transition:transform .35s}
.links a:hover::after,.links a.cur::after{transform:scaleX(1);transform-origin:left}
.btn{display:inline-flex;gap:10px;align-items:center;padding:14px 26px;border-radius:99px;background:var(--acc);color:var(--ai);font:600 .92rem Manrope;border:0;cursor:pointer;transition:transform .2s,box-shadow .3s}
.btn:hover{box-shadow:0 10px 40px -8px var(--acc)}
.btn.o{background:none;color:var(--fg);border:1px solid var(--line)}
.tg{background:none;border:1px solid var(--line);color:var(--fg);width:36px;height:36px;border-radius:50%;cursor:pointer}
.bg{display:none;background:none;border:0;color:var(--fg);width:40px;height:40px;cursor:pointer;flex-direction:column;gap:6px;align-items:center;justify-content:center}
.bg i{width:24px;height:2px;background:currentColor;transition:.3s}
.bg.x i:first-child{transform:translateY(4px) rotate(45deg)}.bg.x i:last-child{transform:translateY(-4px) rotate(-45deg)}

/* hero */
.hero{min-height:100svh;position:relative;display:flex;align-items:flex-end;--band:170px;padding:100px 0 calc(var(--band) + 34px);overflow:hidden}
#cv{position:absolute;left:0;right:0;bottom:0;width:100%;height:var(--band)}@media(max-width:700px){.hero{--band:118px}}
.hero .w{position:relative;pointer-events:none}.hero .w>*{pointer-events:auto}
.hero h1{font-size:clamp(2.2rem,7vw,5.8rem);font-weight:800;max-width:15ch}
.hero h1 em{font-style:normal;color:var(--acc);display:inline-block;border-right:.08em solid var(--acc);animation:cr .8s steps(1) infinite}
@keyframes cr{50%{border-color:transparent}}
.hero p{max-width:520px;color:var(--mut);margin:24px 0 32px;font-size:1.1rem}
.hero .row{display:flex;gap:14px;flex-wrap:wrap}
.tag{position:absolute;right:clamp(18px,4vw,40px);top:96px;text-align:right}
/* marquee */
.mq{border-block:1px solid var(--line);overflow:hidden;padding:18px 0;background:var(--card)}
.mq div{display:flex;gap:48px;width:max-content;animation:mq 30s linear infinite;font:800 clamp(1.2rem,3vw,2rem) Unbounded}
.mq span::after{content:"✦";color:var(--acc);margin-left:48px}
.mq:hover div{animation-play-state:paused}
@keyframes mq{to{transform:translateX(-50%)}}
/* stack cards */
.stk{margin-top:48px;border-top:1px solid var(--line)}
.stk{--px:clamp(16px,2.6vw,32px);--nw:2.4rem}
.it{border-bottom:1px solid var(--line);cursor:pointer;position:relative;overflow:hidden;outline-offset:-3px}
.it::before{content:"";position:absolute;inset:0;background:var(--acc);transform:translateY(101%);transition:transform .5s cubic-bezier(.7,0,.2,1);z-index:0}
.it:hover::before,.it.open::before{transform:none}
.it>*{position:relative;z-index:1;transition:color .4s}
.it:hover>*,.it.open>*{color:var(--ai)}
.it .h{display:flex;align-items:center;gap:20px;padding:26px var(--px)}
.it .h .m{width:var(--nw);flex:none;color:inherit;opacity:.6;transition:opacity .4s}
.it:hover .h .m,.it.open .h .m{opacity:.85}
.it .h b{font:800 clamp(1.2rem,3.2vw,2.2rem) Unbounded;flex:1;transition:transform .45s cubic-bezier(.7,0,.2,1)}
.it:hover .h b,.it.open .h b{transform:translateX(8px)}
.it .h i{font-style:normal;font-size:1.5rem;line-height:1;width:42px;height:42px;flex:none;display:grid;place-items:center;border:1px solid currentColor;border-radius:50%;transition:transform .4s,background .4s}
.it.open .h i{transform:rotate(45deg);background:rgba(255,255,255,.16)}
.it .b{max-height:0;overflow:hidden;transition:max-height .5s;padding:0 var(--px) 0 calc(var(--px) + var(--nw) + 20px + 8px)}
.it.open .b{max-height:320px}
.it .b p{max-width:620px;padding-bottom:16px;opacity:.92}
.it .b .tags{padding-bottom:30px;display:flex;gap:8px;flex-wrap:wrap}
.it .b .tags span{border:1px solid rgba(255,255,255,.45);background:rgba(255,255,255,.12);border-radius:99px;padding:5px 14px;font-size:.78rem;font-weight:500}
@media(max-width:560px){.stk{--nw:1.8rem}.it .h{gap:12px;padding-block:20px}.it .h i{width:34px;height:34px;font-size:1.2rem}.it .b{padding-left:calc(var(--px) + var(--nw) + 12px)}}
/* stats */
.st{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1px;background:var(--line);border:1px solid var(--line)}
.st div{background:var(--bg);padding:34px 26px}.st b{font:800 clamp(2.4rem,5vw,4rem) Unbounded;color:var(--acc);display:block}
/* work */
.fl{display:flex;gap:10px;flex-wrap:wrap;margin:30px 0}
.fl button{background:none;border:1px solid var(--line);color:var(--fg);border-radius:99px;padding:8px 18px;cursor:pointer;font:inherit;font-size:.88rem}
.fl button.on{background:var(--fg);color:var(--bg)}
.gr{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,340px),1fr));gap:22px}
.pj{background:var(--card);border:1px solid var(--line);border-radius:18px;overflow:hidden;transition:transform .25s,opacity .4s;transform-style:preserve-3d}
.pj .t{height:220px;position:relative;overflow:hidden;display:grid;place-items:center}
.pj .t span{font:800 5rem Unbounded;color:rgba(255,255,255,.9);mix-blend-mode:overlay;transition:transform .6s}
.pj:hover .t span{transform:scale(1.25) rotate(-6deg)}
.pj .c{padding:22px}.pj h3{font-size:1.2rem;margin:6px 0 8px}.pj.hide{display:none}
/* process */
.pr{position:relative;margin-top:50px;padding-left:44px}
.pr::before{content:"";position:absolute;left:11px;top:0;bottom:0;width:2px;background:var(--line)}
.pr .ln{position:absolute;left:11px;top:0;width:2px;background:var(--acc);height:0}
.pr .s{position:relative;padding-bottom:50px}.pr .s::before{content:"";position:absolute;left:-41px;top:6px;width:18px;height:18px;border-radius:50%;background:var(--bg);border:2px solid var(--acc)}
.pr .s h3{font-size:clamp(1.2rem,3vw,1.9rem);margin:4px 0 8px}.pr .s p{max-width:560px;color:var(--mut)}
/* team */
.tm{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,420px),1fr));gap:22px;margin-top:40px}
.fd{background:var(--card);border:1px solid var(--line);border-radius:22px;padding:34px;display:flex;gap:24px;align-items:center;flex-wrap:wrap}
.av{width:120px;height:120px;border-radius:50%;display:grid;place-items:center;font:800 2rem Unbounded;background:conic-gradient(from 0deg,var(--acc),transparent 60%,var(--acc));position:relative;animation:sp 8s linear infinite;flex:none}
.av b{position:absolute;inset:4px;border-radius:50%;background:var(--card);display:grid;place-items:center;animation:sp 8s linear infinite reverse}
@keyframes sp{to{transform:rotate(360deg)}}
.fd h3{font-size:1.4rem;margin-bottom:4px}
.vl{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:22px;margin-top:40px}
.vl div{border-left:2px solid var(--acc);padding:4px 0 4px 20px}.vl b{font:600 1.1rem Unbounded}.vl p{color:var(--mut);margin-top:8px}
/* contact */
.cg{display:grid;grid-template-columns:1fr 1.2fr;gap:50px;margin-top:40px}@media(max-width:800px){.cg{grid-template-columns:1fr}}
.fm label{display:block;position:relative;margin-bottom:22px}
.fm input,.fm select,.fm textarea{width:100%;background:none;border:0;border-bottom:1px solid var(--line);color:var(--fg);font:inherit;padding:22px 0 8px;outline:0;transition:border-color .3s}
.fm select option{background:var(--bg)}
.fm span{position:absolute;left:0;top:22px;color:var(--mut);transition:.25s;pointer-events:none}
.fm input:focus,.fm textarea:focus,.fm select:focus{border-color:var(--acc)}
.fm input:focus+span,.fm input:not(:placeholder-shown)+span,.fm textarea:focus+span,.fm textarea:not(:placeholder-shown)+span,.fm select+span{top:0;font-size:.74rem;color:var(--acc)}
.big{font:800 clamp(1.4rem,4vw,2.4rem) Unbounded;word-break:break-word;display:block;margin:12px 0 28px}
.big:hover{color:var(--acc)}
/* cta + footer */
.cta{background:var(--acc);color:var(--ai);border-radius:28px;padding:clamp(40px,8vw,90px);position:relative;overflow:hidden}
.cta h2{max-width:14ch}.cta .btn{background:var(--ai);color:var(--acc);margin-top:28px}
.cta::after{content:"{ }";position:absolute;right:-20px;bottom:-60px;font:800 16rem Unbounded;opacity:.12;animation:fl 6s ease-in-out infinite alternate}
@keyframes fl{to{transform:translateY(-30px) rotate(6deg)}}
footer{border-top:1px solid var(--line);padding:60px 0 30px;margin-top:80px}
.fg{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:36px}@media(max-width:800px){.fg{grid-template-columns:1fr 1fr}.fg>div:first-child{grid-column:1/-1}}.ft{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;flex-wrap:wrap;padding-bottom:50px;margin-bottom:50px;border-bottom:1px solid var(--line)}.ft h3{font-size:clamp(1.6rem,4.6vw,3.2rem);max-width:15ch}.mw{container-type:inline-size;margin-top:50px;overflow:hidden}.mega span{background:linear-gradient(180deg,rgba(253,240,220,.32),rgba(253,240,220,0) 88%);-webkit-background-clip:text;background-clip:text;color:transparent}.mega span+span{background-image:linear-gradient(180deg,rgba(255,161,10,.7),rgba(255,161,10,0) 88%)}.fb{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-top:14px;padding-top:20px;border-top:1px solid var(--line)}footer .fb a{display:inline;padding:0}
footer a{display:block;color:var(--mut);padding:3px 0}footer a:hover{color:var(--acc)}
.mega{font:800 8.1cqw/1.05 Unbounded;letter-spacing:-.04em;white-space:nowrap;text-align:center;user-select:none}

/* posts */
.po{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:22px;margin-top:40px}
.po a{border:1px solid var(--line);border-radius:18px;padding:28px;background:var(--card);display:flex;flex-direction:column;gap:14px;min-height:240px;transition:transform .3s,border-color .3s}
.po a:hover{transform:translateY(-8px) rotate(-.6deg);border-color:var(--acc)}.po h3{font-size:1.2rem}
/* motion */
.rv{opacity:0;transform:translateY(34px);transition:opacity .8s,transform .8s cubic-bezier(.2,.7,.2,1)}.rv.in{opacity:1;transform:none}
#ct{position:fixed;inset:0;z-index:80;display:flex;pointer-events:none}
#ct i{flex:1;background:var(--acc);transform:scaleY(0);transform-origin:bottom;transition:transform .55s cubic-bezier(.7,0,.2,1)}
#ct.on i{transform:scaleY(1)}#ct.off i{transform-origin:top}
#ct i:nth-child(2){transition-delay:.05s}#ct i:nth-child(3){transition-delay:.1s}#ct i:nth-child(4){transition-delay:.15s}#ct i:nth-child(5){transition-delay:.2s}
.ph{padding-top:140px;padding-bottom:0}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}.rv{opacity:1;transform:none}}
.dk{--bg:#1a0846;--fg:#fdf0dc;--mut:#b9abdf;--acc:#ffa10a;--ai:#1a0846;--line:rgba(253,240,220,.16);--card:#25105a;background:var(--bg);color:var(--fg)}
.hero.dk{background:radial-gradient(60% 55% at 85% 15%,rgba(123,58,255,.55),transparent 70%),radial-gradient(40% 40% at 8% 95%,rgba(255,161,10,.14),transparent),#1a0846}
body.mo{overflow:hidden}@media(max-width:700px){.tag{display:none}}.logo span b{color:var(--acc)}
footer.dk{margin-top:0;border:0;padding-top:70px}
:focus-visible{outline:2px solid var(--acc);outline-offset:3px}
.sk{position:absolute;left:-999px;top:8px;z-index:100;background:#7b3aff;color:#fff;padding:10px 16px;border-radius:8px}.sk:focus{left:8px}
.mq.dk{border-color:transparent}
.ok{color:var(--acc)}


/* floating dock nav */
nav{top:calc(14px + env(safe-area-inset-top,0px));background:none;border:0;pointer-events:none}
nav .w{pointer-events:auto;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;position:relative;height:66px;width:calc(100% - 28px);max-width:1120px;margin:0 auto;padding:0 10px;background:rgba(26,8,70,.92);border:1px solid rgba(253,240,220,.16);border-radius:99px;box-shadow:0 22px 50px -22px rgba(26,8,70,.9),0 0 0 1px rgba(123,58,255,.18);transition:max-width .6s cubic-bezier(.7,0,.2,1),background .4s}
nav.sc .w{background:rgba(26,8,70,.97)}
nav .logo{gap:0;flex:none;justify-self:start;border-radius:14px;overflow:hidden}
nav .logo img{display:block;border-radius:13px}
.lt{max-width:0;opacity:0;white-space:nowrap;overflow:hidden;margin-left:0;color:#fdf0dc;font:800 1.02rem Unbounded;transition:max-width .6s cubic-bezier(.7,0,.2,1),opacity .4s,margin .6s}
nav .logo .lt b{color:#ffa10a}
nav .logo:hover .lt,nav .logo:focus-visible .lt{max-width:150px;opacity:1;margin:0 8px 0 10px}
.links{position:relative;gap:2px}
.links a{color:#fdf0dc;padding:10px 17px;font-size:.93rem;position:relative;z-index:1;border-radius:99px;transition:color .3s}
.links a::after{display:none}
.links a.cur{color:#ffa10a}
.links a.btn{background:#ffa10a;color:#1a0846!important;font:600 .92rem Manrope;padding:12px 24px;margin-left:10px}
.links a.btn:hover{box-shadow:0 8px 30px -6px #ffa10a}
.bl{position:absolute;left:0;top:0;width:0;height:0;opacity:0;border-radius:99px;background:rgba(253,240,220,.13);pointer-events:none;transition:left .45s cubic-bezier(.7,0,.2,1),width .45s cubic-bezier(.7,0,.2,1),top .3s,height .3s,opacity .3s}
.pg{position:absolute;left:36px;right:36px;bottom:-1px;height:2px;pointer-events:none}
.pg i{display:block;height:100%;border-radius:2px;background:linear-gradient(90deg,#7b3aff,#ffa10a);transform:scaleX(var(--p,0));transform-origin:left;box-shadow:0 0 14px #ffa10a}
@media(max-width:860px){
nav .w{display:flex;justify-content:space-between;height:60px;width:calc(100% - 24px)}nav.sc .w{max-width:none}
nav .logo{position:relative;z-index:3}nav .logo .lt{max-width:150px;opacity:1;margin:0 8px 0 10px}
.bg{display:flex;color:#fdf0dc;position:relative;z-index:3}
.links{position:fixed;inset:0;gap:0;flex-direction:column;align-items:stretch;justify-content:flex-start;padding:104px 28px 32px;overflow-y:auto;background:radial-gradient(70% 45% at 85% 8%,rgba(123,58,255,.55),transparent),#1a0846;clip-path:circle(0 at calc(100% - 40px) 32px);visibility:hidden;transition:clip-path .7s cubic-bezier(.7,0,.2,1),visibility 0s .7s}
.links.open{clip-path:circle(150% at calc(100% - 40px) 32px);visibility:visible;transition:clip-path .7s cubic-bezier(.7,0,.2,1)}
.links a{font:800 1.7rem Unbounded;padding:16px 0;border-radius:0;border-bottom:1px solid rgba(253,240,220,.14);opacity:0;transform:translateY(24px);transition:opacity .5s,transform .5s,color .3s}
.links.open a{opacity:1;transform:none;transition-delay:calc(.3s + var(--i,0)*.06s)}
.links a.btn{font:600 1rem Manrope;border:0;margin:30px 0 0;justify-content:center;padding:18px 26px;border-radius:99px}
.bl{display:none}.pg{left:26px;right:26px}}

/* hero: layered stack */
.hero{align-items:center;padding:150px 0 80px}
.hero .w{pointer-events:auto}
.hero h1{font-size:clamp(2.1rem,5.3vw,4.9rem);max-width:none}
.hero p.eb{margin:0 0 24px;font-size:.76rem;max-width:none;color:var(--mut)}
.hero p.cap{margin:10px 0 16px;font-size:.74rem;min-height:2.6em;text-align:center;max-width:380px;color:var(--fg)}
.hg{display:grid;grid-template-columns:1.05fr .95fr;gap:30px;align-items:center;position:relative}
@media(max-width:900px){.hg{grid-template-columns:1fr}.hero{padding-top:120px}}
.grid-bg{position:absolute;inset:0;background-image:radial-gradient(rgba(253,240,220,.14) 1px,transparent 1.2px);background-size:30px 30px;-webkit-mask-image:radial-gradient(70% 75% at 72% 45%,#000,transparent);mask-image:radial-gradient(70% 75% at 72% 45%,#000,transparent)}
.dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:#ffa10a;margin-right:10px;animation:pl 2s infinite}
@keyframes pl{0%{box-shadow:0 0 0 0 rgba(255,161,10,.7)}70%,100%{box-shadow:0 0 0 12px rgba(255,161,10,0)}}
.hs{display:flex;flex-direction:column;align-items:center}
.scene{perspective:1300px;width:min(100%,440px);aspect-ratio:1/.95;position:relative;cursor:pointer}
.stack{position:absolute;inset:0;transform-style:preserve-3d;transform:translateY(var(--ty,8%)) scale(var(--sc,1)) rotateX(calc(60deg + var(--rx,0deg))) rotateZ(calc(-40deg + var(--rz,0deg)));transition:transform .35s ease-out}.ex .stack{--ty:24%;--sc:.9}
.ly{position:absolute;left:17%;top:17%;width:66%;height:66%;border-radius:20px;background:var(--c);color:var(--t);box-shadow:inset 0 0 0 1px rgba(255,255,255,.2);transform-style:preserve-3d;transform:translateZ(calc(var(--i)*var(--sp,36px)));transition:transform .8s cubic-bezier(.7,0,.2,1);animation:land 1s cubic-bezier(.3,1.3,.5,1) calc(var(--i)*.15s + .2s) backwards;display:flex;align-items:flex-end;padding:14px 18px;font:600 .72rem 'JetBrains Mono',monospace;letter-spacing:.08em;text-transform:uppercase}
.ly::before,.ly::after{content:"";position:absolute;inset:0;border-radius:inherit;background:rgba(0,0,0,.22)}
.ly::before{transform:translateZ(-6px)}.ly::after{transform:translateZ(-13px);background:rgba(0,0,0,.4)}
.ex .ly{--sp:104px}
.ly.hv{transform:translateZ(calc(var(--i)*var(--sp,36px) + 24px))}
@keyframes land{from{transform:translateZ(560px);opacity:0}}
.px{position:absolute;background:#ffa10a;border-radius:6px;width:var(--s,28px);height:var(--s,28px);transform:translateZ(var(--z));animation:bob 3s ease-in-out infinite alternate var(--d,0s)}
@keyframes bob{to{transform:translateZ(calc(var(--z) + 34px))}}
.tl{display:block;min-height:1.08em;white-space:nowrap}@media(max-width:560px){.ly{font-size:.62rem;padding:10px 12px}.ex .ly{--sp:80px}}
@media(min-width:861px) and (max-width:1199px){nav .logo{position:relative;overflow:visible}.lt{position:absolute;left:0;top:calc(100% + 12px);max-width:none;margin:0!important;padding:9px 16px;background:#1a0846;border:1px solid rgba(253,240,220,.22);border-radius:12px;transform:translateY(-6px);pointer-events:none;overflow:visible;box-shadow:0 14px 30px -12px rgba(26,8,70,.8)}nav .logo:hover .lt,nav .logo:focus-visible .lt{opacity:1;transform:none}}

/* founders: cutout over giant name */
.tm{grid-template-columns:repeat(auto-fit,minmax(min(100%,460px),1fr));gap:24px}
.fc{position:relative;overflow:hidden;height:100%;display:flex;flex-direction:column;background:var(--card);border:1px solid var(--line);border-radius:30px;transition:opacity .8s,transform .5s cubic-bezier(.2,.7,.2,1),box-shadow .5s,border-color .5s}
.fc:hover{transform:translateY(-6px);border-color:rgba(123,58,255,.35);box-shadow:0 34px 64px -34px rgba(26,8,70,.4)}
.stg{position:relative;container-type:inline-size;aspect-ratio:1/1.1;overflow:hidden;background:radial-gradient(ellipse 62% 48% at 50% 66%,rgba(123,58,255,.2),transparent 72%),linear-gradient(180deg,#fff 0%,#f7f1ff 100%)}
.stg::after{content:"";position:absolute;top:7%;right:9%;width:clamp(9px,2.4cqw,14px);aspect-ratio:1;border-radius:50%;background:#ff9f0a;z-index:3}
.gn{position:absolute;left:0;right:0;top:18.5%;transform:translateY(-50%);margin:0;text-align:center;font:800 var(--nz,13.5cqw)/.92 Unbounded,system-ui,sans-serif;letter-spacing:-.045em;text-transform:uppercase;white-space:nowrap;z-index:1;color:var(--acc);transition:transform .7s cubic-bezier(.2,.7,.2,1)}
.gn span{display:block}
.gn .ol{color:transparent;-webkit-text-stroke:max(1.5px,.5cqw) var(--acc)}
.fc:hover .gn{transform:translateY(-50%) scale(1.04)}
.cut{position:absolute;left:50%;bottom:0;width:80%;height:auto;transform:translateX(-50%);transform-origin:50% 100%;z-index:2;-webkit-mask-image:linear-gradient(#000 86%,transparent);mask-image:linear-gradient(#000 86%,transparent);transition:transform .7s cubic-bezier(.2,.7,.2,1);user-select:none}
.fc:hover .cut{transform:translateX(-50%) scale(1.03)}
.cut.pl{width:70%;opacity:.9}
.fci{flex:1;display:flex;flex-direction:column;align-items:center;text-align:center;padding:6px clamp(20px,4vw,40px) 34px}
.fc .role{display:inline-block;margin:0;background:rgba(123,58,255,.1);color:var(--acc);padding:6px 14px;border-radius:99px;font-size:.74rem}
.fcb{color:var(--mut);margin-top:16px;max-width:38ch}
.fcx{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin-top:18px}
.fcx span{border:1px solid var(--line);border-radius:99px;padding:4px 13px;font-size:.78rem;font-weight:500;background:var(--bg);transition:border-color .3s}
.fc:hover .fcx span{border-color:rgba(123,58,255,.38)}
.fcm{margin-top:22px;font:500 .8rem "JetBrains Mono",ui-monospace,monospace;color:var(--fg);text-decoration:none;border-bottom:1px solid var(--acc);padding-bottom:2px;max-width:100%;overflow-wrap:anywhere;transition:color .3s}.fcm:hover{color:var(--acc)}

/* blog + social */
.bh{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;margin:56px 0 24px}.bh h3{font-size:clamp(1.4rem,3vw,2rem)}
.bl2{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:22px}
.bc{background:var(--card);border:1px solid var(--line);border-radius:24px;overflow:hidden;cursor:pointer;display:flex;flex-direction:column;text-align:left;font:inherit;color:inherit;padding:0;transition:opacity .8s,transform .4s,border-color .3s,box-shadow .4s}
.bc:hover{transform:translateY(-8px);border-color:var(--acc);box-shadow:0 30px 50px -34px rgba(26,8,70,.4)}
.bc .cv{aspect-ratio:16/9;display:grid;place-items:center;font:800 3.4rem Unbounded;color:rgba(255,255,255,.9)}
.bc .bd{padding:24px;display:flex;flex-direction:column;gap:10px;flex:1}.bc h4{font:800 1.15rem/1.3 Unbounded}.bc p{color:var(--mut)}.bc .mt{margin-top:auto;padding-top:10px;display:flex;justify-content:space-between;color:var(--acc)}
.bc.fe{grid-column:1/-1}@media(min-width:800px){.bc.fe{flex-direction:row}.bc.fe .cv{flex:1.1;aspect-ratio:auto;min-height:280px;font-size:6rem}.bc.fe .bd{flex:1;padding:40px;justify-content:center}.bc.fe h4{font-size:1.6rem}}
.ig{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,230px),1fr));gap:18px}
.ip{display:flex;flex-direction:column;gap:12px;background:var(--card);border:1px solid var(--line);border-radius:22px;padding:12px 12px 18px;transition:opacity .8s,transform .4s,border-color .3s}.ip:hover{transform:translateY(-6px);border-color:var(--acc)}
.ip .ti{aspect-ratio:1;border-radius:14px;display:grid;place-items:center}.ip .ti svg{width:32%;fill:none;stroke:#fff;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;transition:transform .5s}.ip:hover .ti svg{transform:scale(1.2) rotate(-8deg)}
.ip p{padding:0 8px;font-size:.92rem;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.ip .m{padding:0 8px;color:var(--acc)}
.rd{position:fixed;inset:0;z-index:90;background:rgba(26,8,70,.6);backdrop-filter:blur(8px);display:none;overflow:auto;padding:6vh 16px}.rd.on{display:block}
.rp{max-width:740px;margin:auto;background:var(--bg);border-radius:28px;padding:clamp(24px,5vw,56px);position:relative}.rp h2{font-size:clamp(1.6rem,4vw,2.4rem);margin:12px 0 20px}.rp p{margin-bottom:16px;font-size:1.05rem}.rp .btn{margin-top:14px;display:inline-block}
.rx{position:absolute;right:16px;top:14px;width:42px;height:42px;border-radius:50%;border:1px solid var(--line);background:var(--card);font-size:1.5rem;cursor:pointer;color:var(--fg)}
/* social icons */
.sr{display:flex;gap:10px;margin-top:20px;flex-wrap:wrap}
.so{display:inline-flex;width:46px;height:46px;border-radius:50%;border:1px solid var(--line);align-items:center;justify-content:center;padding:0;color:var(--fg);background:rgba(123,58,255,.06);transition:transform .35s,background .3s,color .3s,border-color .3s}
.so svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.so:hover{background:var(--acc);border-color:var(--acc);color:var(--ai);transform:translateY(-4px) rotate(-6deg)}
/* contact */
.ci{display:grid;gap:16px;align-content:start}
.cc{display:flex;flex-direction:column;gap:6px;background:var(--card);border:1px solid var(--line);border-radius:22px;padding:24px;transition:transform .35s,border-color .3s}
.cc b{font:800 clamp(1.05rem,2.6vw,1.4rem) Unbounded;word-break:break-word}.cc .m{color:var(--acc)}.cc p{color:var(--mut)}.cc>a:not(.so){text-decoration:underline;text-underline-offset:3px;word-break:break-word}
a.cc:hover,.cc:hover{border-color:var(--acc);transform:translateY(-4px)}.cc .sr{margin-top:6px}
.fm{background:var(--card);border:1px solid var(--line);border-radius:28px;padding:clamp(24px,4vw,44px);box-shadow:0 30px 60px -40px rgba(26,8,70,.35)}
/* footer */
footer .ft{background:linear-gradient(135deg,#7b3aff,#4a1fb8);border:0;border-radius:32px;padding:clamp(28px,5vw,54px);margin-bottom:60px;align-items:center;position:relative;overflow:hidden}
footer .ft::after{content:"";position:absolute;right:-60px;top:-90px;width:260px;height:260px;border-radius:50%;background:radial-gradient(circle,rgba(255,161,10,.55),transparent 70%)}
footer .ft h3{color:#fff;position:relative;z-index:1}footer .ft .btn{position:relative;z-index:1}
.fg>div>.m{color:var(--acc);margin-bottom:10px}footer .fg a:not(.logo):not(.so){transition:color .25s,transform .25s}footer .fg a:not(.logo):not(.so):hover{transform:translateX(5px)}
/* logo: full wordmark at top, icon only once scrolled (hover still reveals it) */
@media(min-width:1200px),(max-width:860px){
nav:not(.sc) .logo .lt{max-width:150px;opacity:1;margin:0 8px 0 10px}
nav.sc .logo .lt{max-width:0;opacity:0;margin:0}
nav.sc .logo:hover .lt,nav.sc .logo:focus-visible .lt{max-width:150px;opacity:1;margin:0 8px 0 10px}
}
.ie{background:var(--card);border:1px solid var(--line);border-radius:22px;overflow:hidden;display:flex;flex-direction:column;transition:opacity .8s,transform .4s,border-color .3s,box-shadow .4s}.ie:hover{transform:translateY(-6px);border-color:var(--acc);box-shadow:0 30px 50px -34px rgba(26,8,70,.4)}
.ie iframe{width:100%;height:600px;border:0;display:block;background:linear-gradient(135deg,#f3ecff,#fff4e0)}.ie .m{padding:14px 18px;color:var(--acc);border-top:1px solid var(--line)}
.ig{grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr))}
.ip .ti{position:relative;overflow:hidden}.ip .ti img{width:100%;height:100%;object-fit:cover;transition:transform .6s}.ip:hover .ti img{transform:scale(1.07)}
.bj{position:absolute;top:10px;right:10px;background:rgba(26,8,70,.78);color:#fff;border-radius:99px;padding:3px 11px;font:500 .7rem "JetBrains Mono",ui-monospace,monospace}
.pj .pt{display:flex;flex-wrap:wrap;gap:6px;margin:14px 0 16px}.pj .pt span{border:1px solid var(--line);border-radius:99px;padding:3px 11px;font-size:.76rem;background:var(--bg)}
.pj .pl{display:inline-block;color:var(--acc);font-weight:600;border-bottom:1px solid currentColor;padding-bottom:1px}
.pj{cursor:pointer}.pj:focus-visible{outline:2px solid var(--acc);outline-offset:3px}
.rp .pt{display:flex;flex-wrap:wrap;gap:6px;margin:10px 0 26px}.rp .pt span{border:1px solid var(--line);border-radius:99px;padding:4px 13px;font-size:.8rem;background:var(--card)}
.pf2{margin:10px 0 0 20px}.pf2 li{margin-bottom:6px}

/* article content */
.rp h3{font:800 clamp(1.15rem,2.6vw,1.45rem)/1.25 Unbounded,system-ui,sans-serif;margin:36px 0 14px}
.rp ul,.rp ol{margin:0 0 20px;padding-left:1.3em}.rp li{margin-bottom:10px;font-size:1.02rem}.rp li::marker{color:var(--acc);font-weight:700}
.rp .tw{overflow-x:auto;margin:20px 0 26px;border:1px solid var(--line);border-radius:16px;background:var(--card)}
.rp table{border-collapse:collapse;width:100%;min-width:540px;font-size:.92rem}
.rp th,.rp td{text-align:left;padding:13px 16px;border-bottom:1px solid var(--line);vertical-align:top}
.rp th{font:600 .7rem 'JetBrains Mono',ui-monospace,monospace;letter-spacing:.08em;text-transform:uppercase;color:var(--mut);background:rgba(123,58,255,.06)}
.rp tr:last-child td{border-bottom:0}.rp td:first-child{font-weight:700}
.dl{display:inline-block;width:10px;height:10px;border-radius:50%;margin-right:8px}.dl-g{background:#22c55e}.dl-y{background:#f5b301}.dl-r{background:#ef4444}
.rp .src li{font-size:.9rem;color:var(--mut);margin-bottom:6px}
.rp .by{color:var(--mut);margin:-6px 0 22px;font-size:.78rem}

/* instagram embeds */
.ig.em{grid-template-columns:repeat(auto-fill,minmax(min(100%,330px),1fr));align-items:start;gap:22px}
.ie{border-radius:22px}.ie iframe{min-height:480px;transition:height .3s}

/* careers + popups */
.jb{display:grid;gap:16px;margin-top:40px}
.jc{display:flex;align-items:center;justify-content:space-between;gap:20px;text-align:left;background:var(--card);border:1px solid var(--line);border-radius:20px;padding:clamp(20px,3vw,30px);cursor:pointer;color:inherit;font:inherit;transition:transform .3s,border-color .3s,box-shadow .3s}
.jc:hover{transform:translateY(-4px);border-color:var(--acc);box-shadow:0 18px 40px -22px var(--acc)}
.jc h3{font-size:clamp(1.1rem,2.4vw,1.5rem);margin:6px 0 12px}
.jm{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 6px}.jm span{border:1px solid var(--line);border-radius:99px;padding:3px 13px;font-size:.8rem;color:var(--mut)}
.jc .pl{white-space:nowrap}@media(max-width:620px){.jc{flex-direction:column;align-items:flex-start}}
.jn{border:1px dashed var(--line);border-radius:20px;padding:clamp(24px,4vw,40px)}.jn p{color:var(--mut);max-width:560px;margin-top:10px}
.hire{display:inline-block;margin-top:26px;background:var(--acc);color:var(--ai);border-radius:99px;padding:10px 22px;font-weight:700;text-decoration:none}.hire[hidden]{display:none}
.rp .jd{margin:18px 0}.rp .jd p{margin-bottom:12px}
.ap{margin-top:14px;position:relative}.ap .fl{display:block;margin-bottom:20px}.ap input[type=file]{margin-top:8px;font:inherit;color:var(--fg);max-width:100%}
.ap label{display:block;position:relative;margin-bottom:22px}
.ap input:not([type=file]),.ap textarea{width:100%;background:none;border:0;border-bottom:1px solid var(--line);color:var(--fg);font:inherit;padding:22px 0 8px;outline:0}
.ap span:not(.m){position:absolute;left:0;top:22px;color:var(--mut);transition:.25s;pointer-events:none}
.ap input:focus+span,.ap input:not(:placeholder-shown)+span,.ap textarea:focus+span,.ap textarea:not(:placeholder-shown)+span{top:0;font-size:.74rem;color:var(--acc)}
.ap input:focus,.ap textarea:focus{border-color:var(--acc)}
.pimg{width:100%;border-radius:16px;margin:12px 0 6px;display:block}
.ap .fl span.m{position:static;pointer-events:auto;display:block}.ap input[type=file]{padding:8px 0;border:0}

/* ---- polish ---- */
/* breathing room between the last block of every inner page and the footer */
.page:not(#p-home)>section:last-of-type{padding-bottom:clamp(64px,8vw,110px)}
/* gap between a page intro and the grid below it */
.ph .gr{margin-top:40px}
/* equal-height project cards with the link pinned to the bottom */
.pj{display:flex;flex-direction:column}
.pj .c{flex:1;display:flex;flex-direction:column}
.pj .pl{margin-top:auto;align-self:flex-start}
/* project letter: plain white so it reads on every gradient */
.pj .t span{mix-blend-mode:normal;color:rgba(255,255,255,.92)}
/* the home page already ends with its own call to action, so don't repeat it in the footer */
body:has(#p-home.on) .ft{display:none}

/* Arsal's portrait: sized so his head matches Huzaifa's (the soft shoulder shape is built into the image) */
.cut.cut-w{width:64%}
