:root{
  --paper:#efebe1;--paper2:#f7f3e9;--ink:#17171a;--muted:#75716a;--line:rgba(23,23,26,.16);
  --purple:#7457ff;--orange:#ff5c2a;--acid:#c4ff59;--blue:#3987ff;--radius:22px;
  --shadow:0 18px 60px rgba(18,18,20,.16);--ease:cubic-bezier(.2,.75,.2,1);
}
*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--ink)}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;overflow-x:hidden}body.modal-open{overflow:hidden}::selection{background:var(--purple);color:#fff}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit}img{display:block;max-width:100%}
.page-noise{position:fixed;inset:0;z-index:9998;pointer-events:none;opacity:.075;background-image:url('assets/textures/noise.webp');mix-blend-mode:multiply}.page-noise::after{content:"";position:absolute;inset:0;background-image:url('assets/textures/paper.webp');background-size:700px;opacity:.27}
.cursor{position:fixed;left:0;top:0;width:28px;height:28px;border:1px solid rgba(20,20,22,.65);border-radius:50%;z-index:10000;pointer-events:none;transform:translate(-50%,-50%);display:none;transition:width .25s,height .25s,background .25s,border-color .25s}.cursor span{position:absolute;width:4px;height:4px;border-radius:50%;background:var(--ink);left:50%;top:50%;transform:translate(-50%,-50%)}.cursor.is-hover{width:54px;height:54px;background:rgba(196,255,89,.65);border-color:transparent;mix-blend-mode:multiply}
.loader{position:fixed;inset:0;background:var(--ink);color:white;z-index:10020;display:grid;place-items:center;align-content:center;gap:18px;transition:transform 1s var(--ease);transform-origin:top}.loader.done{transform:translateY(-105%)}.loader strong{font-size:12px;letter-spacing:.22em}.loader>span{font:700 64px/1 Arial}.loader-reel{width:76px;height:76px;border:2px solid white;border-radius:50%;position:relative;animation:spin 1.2s linear infinite}.loader-reel i{width:14px;height:14px;background:var(--acid);border-radius:50%;position:absolute;left:50%;top:50%;transform-origin:0 0}.loader-reel i:nth-child(1){transform:rotate(0) translate(20px,-7px)}.loader-reel i:nth-child(2){transform:rotate(120deg) translate(20px,-7px)}.loader-reel i:nth-child(3){transform:rotate(240deg) translate(20px,-7px)}@keyframes spin{to{rotate:360deg}}
.topbar{height:92px;padding:16px 4.5vw;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;border-bottom:1px solid var(--line);position:relative;z-index:50;background:rgba(239,235,225,.8);backdrop-filter:blur(18px)}.brand{justify-self:start;display:flex;gap:12px;align-items:center}.brand-mark{width:47px;height:47px;background:var(--ink);color:white;border-radius:50% 50% 46% 54%/54% 46% 54% 46%;display:grid;place-items:center;font:700 17px Georgia,serif;transform:rotate(-7deg);box-shadow:inset 0 0 0 2px rgba(255,255,255,.12)}.brand-copy{display:grid;gap:2px}.brand-copy b{font-size:12px;letter-spacing:.08em}.brand-copy small{font-size:8px;letter-spacing:.16em;color:var(--muted)}.nav{display:flex;gap:30px;font-size:10px;font-weight:800;letter-spacing:.06em}.nav a{position:relative;padding:8px 0}.nav a::after{content:"";position:absolute;left:0;right:100%;bottom:1px;height:2px;background:var(--ink);transition:right .35s var(--ease)}.nav a:hover::after{right:0}.header-actions{justify-self:end;display:flex;align-items:center;gap:14px}.lang-switch{border:1px solid var(--ink);background:transparent;height:34px;border-radius:20px;display:flex;align-items:center;padding:0 10px;gap:7px;cursor:pointer;font-size:9px;font-weight:900;letter-spacing:.05em}.lang-switch i{width:22px;height:12px;border-radius:20px;background:var(--ink);position:relative}.lang-switch i::after{content:"";position:absolute;width:8px;height:8px;background:var(--acid);border-radius:50%;left:2px;top:2px;transition:left .35s var(--ease)}html[data-lang="en"] .lang-switch i::after{left:12px}.menu-btn{display:none;background:none;border:0;width:42px;height:42px;position:relative}.menu-btn span{position:absolute;width:24px;height:2px;background:var(--ink);left:9px;top:17px}.menu-btn span+span{top:24px}
.hero{min-height:calc(100vh - 92px);position:relative;overflow:hidden;background:var(--paper2) url('assets/textures/paper.webp');background-size:760px;border-bottom:1px solid var(--line)}#heroCanvas{position:absolute;inset:0;width:100%;height:100%;opacity:.42}.hero-grid{position:relative;z-index:2;display:grid;grid-template-columns:minmax(0,45%) minmax(0,55%);min-height:calc(100vh - 138px);align-items:center;padding:4vw 4.5vw 6.5vw}.hero-copy{max-width:720px}.kicker{font-size:9px;letter-spacing:.12em;font-weight:800;display:flex;gap:8px;align-items:center}.kicker>span:first-child{color:var(--purple);font-size:12px}.hero h1{font-size:clamp(66px,7.5vw,140px);line-height:.78;letter-spacing:-.075em;margin:25px 0 28px;font-weight:950;max-width:850px}.hero h1 em{font-family:Georgia,serif;font-weight:400;color:var(--purple);white-space:nowrap}.hero-title .motion-word{position:relative;display:inline-block;color:var(--ink);padding-right:.08em;isolation:isolate;letter-spacing:-.02em;text-shadow:0 0 0 rgba(0,0,0,0)}.hero-title .motion-word::before,.hero-title .motion-word::after{content:attr(data-text);position:absolute;inset:0;pointer-events:none}.hero-title .motion-word::before{color:rgba(116,87,255,.48);filter:blur(6px);transform:translateX(14px);opacity:.58}.hero-title .motion-word::after{color:rgba(255,92,42,.24);filter:blur(11px);transform:translateX(28px);opacity:.28}.hero-text{max-width:560px;font-size:14px;line-height:1.55;color:#3e3b37}.hero-cta-row{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.btn{min-height:50px;border:1px solid var(--ink);display:inline-flex;align-items:center;justify-content:space-between;gap:30px;padding:0 18px;font-size:9px;font-weight:900;letter-spacing:.07em;cursor:pointer;transition:transform .25s,box-shadow .25s}.btn:hover{transform:translateY(-3px);box-shadow:0 10px 25px rgba(0,0,0,.11)}.btn-dark{background:var(--ink);color:white}.btn-dark b{color:var(--acid);font-size:18px}.btn-paper{background:var(--paper2)}.btn-paper b{font-size:17px}.hero-stats{display:flex;border-top:1px solid var(--line);margin-top:42px;padding-top:20px;gap:34px}.hero-stats div{display:grid;gap:3px;min-width:92px}.hero-stats strong{font-size:19px}.hero-stats span{font-size:8px;letter-spacing:.05em;color:var(--muted);text-transform:uppercase}
.hero-stack{height:640px;position:relative;perspective:1300px;transform-style:preserve-3d;--stack-scale:1;--stack-rx:0deg;--stack-ry:0deg;transform:scale(var(--stack-scale)) rotateX(var(--stack-rx)) rotateY(var(--stack-ry));transition:transform .18s ease-out}.hero-card{position:absolute;left:50%;top:49%;width:235px;height:430px;background:#111;border:4px solid var(--paper2);box-shadow:0 18px 50px rgba(0,0,0,.23);overflow:hidden;transform-origin:50% 100%;cursor:pointer;--px:0px;--py:0px;--fan-x:0px;--fan-y:0px;--img-x:0px;--img-y:0px;translate:calc(var(--px) + var(--fan-x)) calc(var(--py) + var(--fan-y));transition:translate .16s ease-out,scale .3s var(--ease),filter .3s,box-shadow .3s;will-change:translate,scale,filter}.hero-stack:hover .hc1{--fan-x:-25px;--fan-y:11px}.hero-stack:hover .hc2{--fan-x:-12px;--fan-y:-5px}.hero-stack:hover .hc3{--fan-x:0px;--fan-y:-22px}.hero-stack:hover .hc4{--fan-x:12px;--fan-y:-5px}.hero-stack:hover .hc5{--fan-x:25px;--fan-y:11px}.hero-stack.has-focus .hero-card:not(.is-focus){filter:brightness(.72) saturate(.78);scale:.985}.hero-card:hover,.hero-card.is-focus{filter:saturate(1.22) brightness(1.03);box-shadow:0 34px 80px rgba(0,0,0,.32);scale:1.075;z-index:12!important}.hero-card img{width:100%;height:100%;object-fit:cover;transform:scale(1.07) translate3d(var(--img-x),var(--img-y),0);transition:transform .18s ease-out,filter .3s;will-change:transform}.hero-card:hover img{transform:scale(1.13) translate3d(var(--img-x),var(--img-y),0)}.hero-card>span{position:absolute;left:12px;top:12px;z-index:2;background:var(--paper2);color:var(--ink);font-size:8px;font-weight:900;padding:7px 8px;letter-spacing:.06em}.hc1{transform:translate(-50%,-47%) rotate(-30deg) translate(-105px,30px);z-index:1}.hc2{transform:translate(-50%,-50%) rotate(-15deg) translate(-58px,0);z-index:2}.hc3{transform:translate(-50%,-52%) rotate(0deg);z-index:4}.hc4{transform:translate(-50%,-50%) rotate(15deg) translate(58px,0);z-index:3}.hc5{transform:translate(-50%,-47%) rotate(30deg) translate(105px,30px);z-index:2}.hero-play{position:absolute;z-index:7;left:50%;top:50%;width:105px;height:105px;border-radius:50%;border:0;background:var(--acid);transform:translate(-50%,-10%);box-shadow:0 16px 45px rgba(0,0,0,.19);font-size:10px;font-weight:900;display:grid;place-items:center;align-content:center;gap:7px;cursor:pointer}.hero-play b{font-size:20px}.hero-sticker{position:absolute;z-index:8;font-weight:950;text-align:center;line-height:.88;letter-spacing:-.04em}.sticker-a{right:2%;top:15%;background:var(--orange);color:white;padding:18px 16px;transform:rotate(9deg);font-size:18px}.sticker-b{left:6%;bottom:13%;background:var(--purple);color:white;border-radius:50%;width:96px;height:96px;display:grid;place-items:center;align-content:center;transform:rotate(-12deg);font-size:14px}.hero-orbit{position:absolute;right:5%;bottom:7%;width:145px;height:70px;border:1px solid var(--ink);border-radius:50%;transform:rotate(-16deg)}.hero-orbit::after{content:"";position:absolute;width:10px;height:10px;background:var(--orange);border-radius:50%;top:-4px;left:44%}.hero-orbit i{position:absolute;inset:8px;border:1px dashed var(--ink);border-radius:50%}.hero-tape{height:48px;background:var(--ink);color:white;overflow:hidden;display:flex;align-items:center;white-space:nowrap;font-size:10px;font-weight:900;letter-spacing:.12em}.hero-tape div{animation:marquee 22s linear infinite}@keyframes marquee{to{transform:translateX(-50%)}}
.about{padding:110px 4.5vw 120px;display:grid;grid-template-columns:20% 50% 30%;gap:0;border-bottom:1px solid var(--line);background:var(--paper)}.about-label{font-size:9px;letter-spacing:.1em;display:grid;align-content:start;gap:12px;border-right:1px solid var(--line);padding-right:24px}.about-label span{font-size:72px;font-weight:950;letter-spacing:-.08em;color:transparent;-webkit-text-stroke:1px var(--ink);line-height:.8}.about-main{padding:0 5vw}.about-main h2{font-size:clamp(34px,4.4vw,74px);line-height:.98;letter-spacing:-.055em;margin:0 0 45px}.about-copy{display:grid;grid-template-columns:1fr 1fr;gap:34px}.about-copy p{font-size:12px;line-height:1.7;margin:0;color:#494640}.about-cards{display:grid;grid-template-columns:1fr 1fr;gap:8px}.about-cards article{min-height:150px;border:1px solid var(--line);padding:16px;display:flex;flex-direction:column;justify-content:space-between;background:rgba(255,255,255,.25);transition:transform .25s,background .25s}.about-cards article:hover{transform:rotate(-1deg) translateY(-3px);background:var(--paper2)}.about-cards small{font-size:8px}.about-cards strong{font-size:18px;letter-spacing:-.04em}.about-cards span{font-size:9px;color:var(--muted)}.about-card-accent{background:var(--purple)!important;color:white!important;transform:rotate(2deg)}.about-card-accent span{color:white!important}
.clients{padding:70px 0 76px;background:var(--ink);color:white;overflow:hidden}.clients-heading{padding:0 4.5vw 48px;display:grid;grid-template-columns:28% 72%;align-items:end}.clients-heading>span{font-size:9px;letter-spacing:.13em;color:#aaa}.clients-heading h2{font-size:clamp(32px,4vw,68px);letter-spacing:-.055em;line-height:.95;margin:0;max-width:820px}.client-marquee{border-top:1px solid #444;border-bottom:1px solid #444;overflow:hidden}.client-track{height:92px;display:flex;align-items:center;gap:55px;width:max-content;white-space:nowrap;animation:marquee 34s linear infinite}.client-track span{font-weight:950;font-size:19px;letter-spacing:-.04em;color:#ecebe8}.client-track span:nth-child(3n){font-family:Georgia,serif;font-style:italic;font-weight:400;color:var(--acid)}.creator-line{padding:35px 4.5vw 0;display:flex;flex-wrap:wrap;gap:15px 24px;align-items:center;font-size:9px;letter-spacing:.05em}.creator-line b{color:var(--acid)}.creator-line span{color:#aaa}
.work{padding:110px 4.5vw 130px;background:var(--paper2) url('assets/textures/paper.webp');background-size:780px}.work-head{display:block;margin-bottom:58px}.section-no{font-size:9px;letter-spacing:.12em;font-weight:800;color:var(--muted)}.work-head h2{font-size:clamp(58px,7vw,118px);line-height:.76;letter-spacing:-.075em;margin:20px 0 0}.catalog-meter{height:24px;border:1px solid var(--ink);display:flex;align-items:center;position:relative;padding:0 8px;overflow:hidden}.catalog-meter i{position:absolute;left:0;top:0;bottom:0;width:var(--v);background:var(--acid)}.catalog-meter span{position:relative;z-index:2;font-size:8px;font-weight:900;margin-left:auto}.catalog-shell{display:grid;grid-template-columns:210px 1fr;border-top:1px solid var(--ink);min-height:760px}.filters{border-right:1px solid var(--ink);padding:18px 18px 0 0;position:sticky;top:0;height:max-content}.filter{width:100%;border:0;border-bottom:1px solid var(--line);background:transparent;display:flex;justify-content:space-between;align-items:center;padding:15px 8px;text-align:left;font-size:9px;font-weight:900;cursor:pointer;transition:background .2s,padding .2s}.filter b{font-size:8px;color:var(--muted)}.filter:hover{padding-left:14px;background:rgba(116,87,255,.08)}.filter.active{background:var(--ink);color:white;padding-left:14px}.filter.active b{color:var(--acid)}.catalog-stage{padding-left:28px}.catalog-toolbar{height:74px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;font-size:9px;font-weight:900;letter-spacing:.08em}.catalog-toolbar>div span:first-child{font-size:28px;letter-spacing:-.05em;margin-right:6px}.shuffle{background:none;border:0;font-size:9px;font-weight:900;cursor:pointer;padding:10px}.project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding-top:28px}.project-card{background:#151518;position:relative;overflow:hidden;min-height:355px;cursor:pointer;isolation:isolate;box-shadow:0 0 0 1px rgba(0,0,0,.14);transition:transform .35s var(--ease),box-shadow .35s var(--ease);animation:cardIn .55s var(--ease) both}.project-card:nth-child(5n+1){min-height:420px}.project-card:nth-child(7n+2){min-height:310px}.project-card:hover{transform:translateY(-7px) rotate(-.35deg);box-shadow:var(--shadow);z-index:2}.project-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .7s var(--ease),filter .5s}.project-card:hover img{transform:scale(1.055);filter:saturate(1.18)}.project-card::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(10,10,12,.96) 0%,rgba(10,10,12,.25) 48%,rgba(10,10,12,.05) 75%);z-index:1}.project-card.is-portrait img{object-position:center top}.project-card.fallback::before{content:"BF / VIDEO";position:absolute;inset:0;background:radial-gradient(circle at 25% 30%,var(--purple),transparent 35%),radial-gradient(circle at 80% 70%,var(--orange),transparent 30%),#17171a;color:white;display:grid;place-items:center;font-size:30px;font-weight:950;letter-spacing:-.06em}.project-top{position:absolute;left:11px;right:11px;top:11px;z-index:3;display:flex;justify-content:space-between;gap:8px;align-items:start}.project-chip{background:var(--paper2);color:var(--ink);padding:6px 7px;font-size:7px;font-weight:950;letter-spacing:.08em;text-transform:uppercase}.project-num{width:28px;height:28px;background:var(--acid);color:var(--ink);border-radius:50%;display:grid;place-items:center;font-size:8px;font-weight:950}.project-bottom{position:absolute;left:14px;right:14px;bottom:14px;z-index:3;color:white;display:flex;align-items:end;justify-content:space-between;gap:10px}.project-bottom h3{font-size:clamp(16px,1.5vw,25px);line-height:.95;letter-spacing:-.04em;margin:7px 0 0;text-wrap:balance}.project-bottom small{font-size:7px;letter-spacing:.1em;color:#c5c5c5}.play-pill{flex:0 0 46px;height:46px;border-radius:50%;border:1px solid rgba(255,255,255,.55);display:grid;place-items:center;backdrop-filter:blur(8px);transition:background .25s,color .25s}.project-card:hover .play-pill{background:var(--acid);color:var(--ink);border-color:var(--acid)}@keyframes cardIn{from{opacity:0;transform:translateY(18px) scale(.985)}to{opacity:1;transform:none}}
.manifesto{background:var(--purple);color:white;overflow:hidden}.manifesto-strip{height:38px;background:var(--acid);color:var(--ink);display:flex;align-items:center;white-space:nowrap;font-size:9px;font-weight:950;letter-spacing:.12em;transform:rotate(-1.3deg) scale(1.03)}.manifesto-inner{min-height:520px;padding:80px 4.5vw;display:grid;grid-template-columns:15% 65% 20%;align-items:center}.manifesto-small{font-size:9px;letter-spacing:.12em;align-self:start}.manifesto blockquote{font-family:Georgia,serif;font-style:italic;font-size:clamp(42px,6vw,92px);line-height:.98;letter-spacing:-.05em;margin:0;max-width:1050px}.manifesto-doodle{width:190px;height:190px;border:2px dashed white;border-radius:50%;position:relative;justify-self:end;animation:spin 14s linear infinite}.manifesto-doodle i{position:absolute;width:12px;height:12px;border-radius:50%;background:var(--acid)}.manifesto-doodle i:nth-child(1){left:48%;top:-6px}.manifesto-doodle i:nth-child(2){right:7%;bottom:18%}.manifesto-doodle i:nth-child(3){left:5%;bottom:25%;background:var(--orange)}.manifesto-doodle b{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);font-size:34px;letter-spacing:-.05em;animation:spin 14s linear infinite reverse}
.resume{padding:100px 4.5vw;background:var(--paper)}.resume-card{border:1px solid var(--ink);min-height:540px;display:grid;grid-template-columns:55% 45%;overflow:hidden;box-shadow:12px 12px 0 var(--ink)}.resume-paper{padding:66px;position:relative;background:var(--paper2) url('assets/textures/scribble.png') bottom right/50% auto no-repeat}.resume-kicker{font-size:9px;font-weight:900;letter-spacing:.12em}.resume-paper h2{font-size:clamp(52px,6vw,98px);line-height:.82;letter-spacing:-.07em;margin:30px 0 25px}.resume-paper p{font-size:12px;line-height:1.6;max-width:430px;margin:0 0 30px}.resume-visual{background:var(--ink);position:relative;perspective:1200px;overflow:hidden}.doc-page{position:absolute;width:280px;height:390px;background:#fff;color:var(--ink);left:50%;top:50%;box-shadow:0 20px 45px rgba(0,0,0,.35);padding:30px}.page-back{transform:translate(-58%,-50%) rotate(-13deg);background:#dcd5c7;color:#4a4641;font:700 26px/1 Georgia,serif}.page-front{transform:translate(-38%,-49%) rotate(7deg);display:flex;flex-direction:column;justify-content:space-between}.page-front b{font:700 80px/.8 Georgia,serif;color:var(--purple)}.page-front span{font-size:12px;font-weight:900;line-height:1.4}.page-front i{font-style:normal;font-size:26px;font-weight:950}.resume-clip{position:absolute;left:50%;top:45px;width:55px;height:120px;border:7px solid var(--acid);border-bottom:0;border-radius:28px 28px 0 0;transform:translateX(-50%) rotate(4deg)}
.contact{padding:120px 4.5vw 80px;background:var(--paper2);border-top:1px solid var(--line)}.contact-top{display:grid;grid-template-columns:18% 82%;align-items:start}.contact-top h2{font-size:clamp(70px,10vw,168px);line-height:.75;letter-spacing:-.085em;margin:0}.contact-top h2 em{font-family:Georgia,serif;color:var(--orange);font-weight:400}.contact-bottom{display:grid;grid-template-columns:62% 38%;align-items:end;margin-top:70px;padding-top:35px;border-top:1px solid var(--ink)}.contact-mail{font-size:clamp(20px,2.5vw,42px);letter-spacing:-.04em;font-weight:800}.contact-mail span{color:var(--purple)}.socials{display:flex;justify-content:flex-end;gap:24px;font-size:9px;font-weight:900;letter-spacing:.06em;flex-wrap:wrap}footer{height:80px;background:var(--ink);color:#a9a9a9;display:flex;align-items:center;justify-content:space-between;padding:0 4.5vw;font-size:8px;letter-spacing:.09em}
.project-modal{width:min(1180px,94vw);height:min(840px,92vh);border:0;padding:0;background:transparent;overflow:visible}.project-modal::backdrop{background:rgba(12,12,14,.86);backdrop-filter:blur(12px)}.modal-shell{height:100%;background:var(--paper2);border:1px solid rgba(255,255,255,.14);box-shadow:0 30px 100px rgba(0,0,0,.45);display:grid;grid-template-rows:minmax(0,1fr) auto;position:relative;overflow:hidden}.modal-close{position:absolute;right:14px;top:14px;z-index:10;width:45px;height:45px;border-radius:50%;border:0;background:var(--acid);font-size:28px;cursor:pointer}.modal-player{background:#0a0a0b;position:relative;min-height:0;isolation:isolate}.modal-player iframe{width:100%;height:100%;border:0;display:block;position:relative;z-index:1;background:#0a0a0b}.player-loader{position:absolute;inset:0;z-index:3;display:grid;place-items:center;align-content:center;color:white;gap:12px;font-size:8px;letter-spacing:.14em;background:#0a0a0b;transition:opacity .35s var(--ease),visibility .35s}.player-loader.is-done{opacity:0;visibility:hidden;pointer-events:none}.player-loader>small{font-size:7px;color:#747474;letter-spacing:.1em}.player-loader i{width:45px;height:45px;border:2px solid #444;border-top-color:var(--acid);border-radius:50%;animation:spin .8s linear infinite}.player-loader.is-slow{padding:35px;text-align:center;gap:14px}.player-loader.is-slow b{font-size:15px;letter-spacing:.04em}.player-loader.is-slow>span{max-width:340px;color:#aaa;line-height:1.5;letter-spacing:.04em}.player-fallback-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:center;margin-top:5px}.player-fallback-actions button,.player-fallback-actions a{border:1px solid #5a5a5a;background:#171719;color:white;padding:12px 14px;font-size:8px;font-weight:900;letter-spacing:.08em;cursor:pointer}.player-fallback-actions button:hover,.player-fallback-actions a:hover{background:var(--acid);color:var(--ink);border-color:var(--acid)}.modal-info{display:grid;grid-template-columns:1fr auto;gap:35px;padding:25px 28px 28px;border-top:1px solid var(--ink);align-items:end}.modal-category{font-size:8px;letter-spacing:.1em;font-weight:900;color:var(--purple)}.modal-info h2{font-size:clamp(28px,4vw,56px);line-height:.92;letter-spacing:-.055em;margin:8px 0}.modal-info p{font-size:10px;color:var(--muted);margin:0}.modal-actions{display:flex;align-items:center;gap:14px}.modal-nav{display:flex;align-items:center;border:1px solid var(--ink);height:50px}.modal-nav button{height:100%;width:46px;border:0;background:transparent;cursor:pointer;font-size:17px}.modal-nav span{font-size:8px;font-weight:900;padding:0 6px}.modal-nav button:hover{background:var(--ink);color:white}.reveal{opacity:0;transform:translateY(28px);transition:opacity .85s var(--ease),transform .85s var(--ease)}.reveal.visible{opacity:1;transform:none}
@media(pointer:fine){.cursor{display:block}}
@media(max-width:1180px){.hero-grid{grid-template-columns:48% 52%}.hero-stack{--stack-scale:.86}.about{grid-template-columns:18% 50% 32%}.project-grid{grid-template-columns:repeat(2,1fr)}.manifesto-inner{grid-template-columns:15% 70% 15%}.manifesto-doodle{width:135px;height:135px}.resume-paper{padding:50px}}

.catalog-count{display:flex;align-items:center;gap:7px;min-width:0}.drive-sync-state{margin-left:10px;display:inline-flex;align-items:center;gap:6px;padding:5px 8px;border:1px solid var(--line);font-size:7px!important;letter-spacing:.09em!important;font-weight:950;background:rgba(255,255,255,.5);white-space:nowrap}.drive-sync-state[hidden]{display:none}.drive-sync-state i{width:6px;height:6px;border-radius:50%;background:#888;box-shadow:0 0 0 3px rgba(120,120,120,.12)}.drive-sync-state.live i{background:var(--acid);box-shadow:0 0 0 3px rgba(196,255,89,.2);animation:drivePulse 1.8s ease-in-out infinite}.drive-sync-state.loading i{background:var(--orange);animation:drivePulse .7s ease-in-out infinite}.drive-sync-state.error i{background:#ef5350}.drive-sync-state small{font-size:6px;color:var(--muted);letter-spacing:.05em}@keyframes drivePulse{50%{transform:scale(1.45);opacity:.65}}
.instagram-link{background:var(--ink);color:#fff;padding:9px 12px;box-shadow:3px 3px 0 var(--purple);transition:transform .25s var(--ease),box-shadow .25s var(--ease),background .25s}.instagram-link:hover{background:var(--purple);transform:translate(-2px,-2px);box-shadow:5px 5px 0 var(--acid)}
@media(max-width:860px){.topbar{grid-template-columns:1fr auto;height:76px}.nav{position:fixed;inset:76px 0 auto 0;background:var(--paper2);border-bottom:1px solid var(--ink);padding:30px 5vw;display:grid;gap:18px;transform:translateY(-130%);transition:transform .5s var(--ease);z-index:-1}.menu-open .nav{transform:none}.nav a{font-size:22px}.menu-btn{display:block}.hero-grid{grid-template-columns:1fr;padding-top:55px}.hero{min-height:auto}.hero h1{font-size:clamp(68px,16vw,115px)}.hero-stack{height:560px;--stack-scale:.82;margin-top:-10px}.about{grid-template-columns:1fr;padding:75px 5vw}.about-label{border-right:0;border-bottom:1px solid var(--line);padding:0 0 30px}.about-main{padding:38px 0}.about-cards{grid-template-columns:repeat(2,1fr)}.clients-heading{grid-template-columns:1fr;gap:18px}.work{padding-left:5vw;padding-right:5vw}.work-head{grid-template-columns:1fr;gap:30px}.work-intro{justify-self:start}.catalog-shell{grid-template-columns:1fr}.filters{position:relative;border-right:0;display:flex;overflow:auto;padding:10px 0;border-bottom:1px solid var(--ink);gap:6px;scrollbar-width:none}.filter{min-width:max-content;border:1px solid var(--line);padding:10px 12px;gap:20px}.catalog-stage{padding-left:0}.project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.manifesto-inner{grid-template-columns:1fr;padding:65px 5vw;gap:45px}.manifesto-doodle{justify-self:start}.resume-card{grid-template-columns:1fr}.resume-visual{min-height:430px}.contact-top{grid-template-columns:1fr;gap:20px}.contact-bottom{grid-template-columns:1fr;gap:35px}.socials{justify-content:flex-start}.modal-info{grid-template-columns:1fr}.modal-actions{justify-content:space-between;flex-wrap:wrap}}
@media(max-width:560px){.topbar{padding:12px 16px}.brand-copy small{display:none}.lang-switch{height:32px}.hero-grid{padding-left:16px;padding-right:16px}.hero h1{font-size:clamp(58px,17.2vw,88px)}.hero-text{font-size:12px}.hero-stats{gap:14px}.hero-stats div{min-width:0}.hero-stack{height:450px;--stack-scale:.66;margin:-20px 0 -45px}.about,.work,.resume,.contact{padding-left:16px;padding-right:16px}.about-copy{grid-template-columns:1fr}.about-cards{grid-template-columns:1fr 1fr}.about-cards article{min-height:130px}.clients-heading{padding-left:16px;padding-right:16px}.creator-line{padding-left:16px;padding-right:16px}.work-head h2{font-size:55px}.catalog-toolbar{height:60px}.project-grid{grid-template-columns:1fr;gap:10px}.project-card,.project-card:nth-child(5n+1),.project-card:nth-child(7n+2){min-height:390px}.manifesto-inner{padding-left:16px;padding-right:16px}.manifesto blockquote{font-size:44px}.resume{padding-top:60px;padding-bottom:70px}.resume-card{box-shadow:7px 7px 0 var(--ink)}.resume-paper{padding:40px 24px}.resume-paper h2{font-size:55px}.resume-visual{min-height:370px}.doc-page{width:220px;height:310px}.contact{padding-top:80px}.contact-top h2{font-size:64px}.contact-mail{font-size:19px;overflow-wrap:anywhere}footer{height:auto;min-height:120px;gap:14px;flex-wrap:wrap;padding:25px 16px}.project-modal{width:100vw;height:100dvh;max-height:none;margin:0}.modal-shell{border:0}.modal-info{padding:18px}.modal-actions .btn{width:100%}.modal-nav{width:100%;justify-content:space-between}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition-duration:.001ms!important;scroll-behavior:auto!important}.reveal{opacity:1;transform:none}.hero-title .motion-word::before,.hero-title .motion-word::after{display:none}}

/* FAST CATALOG PATCH — the portfolio grid must never be hidden by reveal animations. */
.work-head,.catalog-shell{opacity:1!important;transform:none!important}
.project-card{background:linear-gradient(135deg,#161619,#222228)}
.project-card img{background:#17171a}
