:root{--ink:#0e0d0b;--ink-2:#1a1815;--bone:#ede6da;--bone-dim:#a39b8e;--wine:#8c1c2b;--ochre:#e8a23a;--line:#ede6da24;--display:"Bricolage Grotesque", system-ui, sans-serif;--serif:"Instrument Serif", Georgia, serif;--gutter:clamp(16px, 4vw, 56px);--ease:cubic-bezier(.2, .7, .1, 1)}*,:before,:after{box-sizing:border-box}html{background:var(--ink);color:var(--bone);-webkit-font-smoothing:antialiased}html.lenis,html.lenis body{height:auto}body{font-family:var(--display);margin:0;font-size:clamp(16px,1.05vw,18px);line-height:1.5;overflow-x:hidden}a{color:inherit;text-decoration:none}em{font-family:var(--serif);font-style:italic;font-weight:400}h1,h2,h3{letter-spacing:-.03em;margin:0;font-weight:500;line-height:.95}:focus-visible{outline:2px solid var(--ochre);outline-offset:4px}.label{letter-spacing:.14em;text-transform:uppercase;color:var(--bone-dim);margin:0 0 2rem;font-size:.8rem}.section-title{margin-bottom:4rem;font-size:clamp(2.6rem,7vw,6.5rem)}.section-title em,.work-head em{color:var(--ochre)}.btn{background:var(--bone);color:var(--ink);transition:background .3s var(--ease), transform .3s var(--ease);border-radius:999px;align-items:center;gap:.5em;padding:.9em 1.5em;font-weight:600;display:inline-flex}.btn:hover{background:var(--ochre)}.btn-small{padding:.6em 1.1em;font-size:.9rem}.cursor{display:none}@media (hover:hover) and (pointer:fine){html.motion .cursor{background:var(--bone);mix-blend-mode:difference;pointer-events:none;z-index:100;width:14px;height:14px;transition:width .3s var(--ease), height .3s var(--ease), margin .3s var(--ease);border-radius:50%;margin:-7px 0 0 -7px;display:block;position:fixed;top:0;left:0}html.motion .cursor.big{width:72px;height:72px;margin:-36px 0 0 -36px}}.nav{z-index:50;padding:1.1rem var(--gutter);mix-blend-mode:difference;justify-content:space-between;align-items:center;gap:1rem;display:flex;position:fixed;inset:0 0 auto}.logo{letter-spacing:-.02em;font-size:1.1rem;font-weight:700}.logo span{vertical-align:super;font-size:.6em}.nav nav{gap:2rem;display:flex}.nav nav a{position:relative}.nav nav a:after{content:"";transform-origin:100%;height:1px;transition:transform .4s var(--ease);background:currentColor;position:absolute;bottom:-3px;left:0;right:0;transform:scaleX(0)}.nav nav a:hover:after{transform-origin:0;transform:scaleX(1)}@media (width<=720px){.nav nav{display:none}}.hero{min-height:100svh;padding:7rem var(--gutter) 3rem;flex-direction:column;justify-content:flex-end;display:flex;position:relative;overflow:hidden}.hero-bg{z-index:-1;filter:blur(70px)saturate(1.2);opacity:.75;position:absolute;inset:0}.orb{border-radius:50%;position:absolute}.orb-a{background:var(--wine);width:46vw;height:46vw;top:-10%;right:-8%}.orb-b{background:var(--ochre);opacity:.55;width:30vw;height:30vw;top:30%;right:22%}.orb-c{background:#2f3d33;width:36vw;height:36vw;bottom:-18%;left:-6%}html.motion .orb-a{animation:18s ease-in-out infinite alternate drift}html.motion .orb-b{animation:14s ease-in-out infinite alternate-reverse drift}html.motion .orb-c{animation:22s ease-in-out infinite alternate drift}@keyframes drift{to{transform:translate(-6vw,5vw)scale(1.15)}}.eyebrow{color:var(--bone-dim);margin:0 0 1.5rem}.hero-title{letter-spacing:-.055em;font-size:clamp(4rem,15.5vw,17rem);font-weight:600;line-height:.86}.hero-title .line{padding-bottom:.06em;display:block;overflow:hidden}.hero-title .word{display:inline-block}.hero-title em{letter-spacing:-.02em;color:var(--ochre);padding-right:.04em;font-weight:400}.hero-title .dot{color:var(--wine)}.hero-foot{justify-content:space-between;align-items:flex-end;gap:2rem;margin-top:2.5rem;display:flex}.hero-sub{max-width:34ch;margin:0;font-size:clamp(1rem,1.4vw,1.25rem)}.scroll-cue{border:1px solid var(--line);border-radius:50%;flex:none;place-items:center;width:56px;height:56px;display:grid}.scroll-cue span{background:var(--bone);width:1px;height:22px}html.motion .scroll-cue span{animation:cue 1.8s var(--ease) infinite}@keyframes cue{0%{transform-origin:top;transform:scaleY(0)}50%{transform-origin:top;transform:scaleY(1)}51%{transform-origin:bottom}to{transform-origin:bottom;transform:scaleY(0)}}.marquee{border-block:1px solid var(--line);padding:1.4rem 0;overflow:hidden}.marquee-track{letter-spacing:-.02em;gap:2.5rem;width:max-content;font-size:clamp(1.6rem,3.5vw,3rem);display:flex}.marquee-track span{white-space:nowrap;align-items:center;gap:2.5rem;display:inline-flex}.marquee-track i{color:var(--ochre);font-size:.6em;font-style:normal}html.motion .marquee-track{animation:32s linear infinite marquee}@keyframes marquee{to{transform:translate(-50%)}}.manifesto{padding:clamp(6rem, 16vw, 14rem) var(--gutter)}.manifesto-text{letter-spacing:-.03em;max-width:22ch;margin:0;font-size:clamp(2rem,5.4vw,5.2rem);line-height:1.04}html.motion .manifesto-text span{opacity:.16}.work{position:relative}.work-pin{padding:5rem var(--gutter)}.work-head h2{font-size:clamp(2.6rem,6vw,5.5rem)}.note{color:var(--bone-dim);max-width:40ch;margin:1.2rem 0 3rem}.work-track{gap:2rem;display:grid}.card{gap:1.25rem;display:grid;position:relative}.card-link{z-index:3;border-radius:18px;position:absolute;inset:0}.card-status{z-index:2;backdrop-filter:blur(6px);background:#0e0d0b8c;border-radius:999px;padding:.35em .9em;font-size:.8rem;position:absolute;top:1.25rem;left:1.25rem}.card-package{z-index:2;background:var(--ochre);color:var(--ink);border-radius:999px;padding:.35em .9em;font-size:.8rem;font-weight:600;position:absolute;bottom:1.25rem;right:1.25rem}.service-examples{border-bottom:1px solid;align-self:flex-start;font-weight:600}.card.live .card-status{background:var(--ink);color:var(--bone);font-weight:600}.card-art{aspect-ratio:4/3;background:radial-gradient(120% 90% at 85% 10%, var(--h2) 0%, transparent 55%), linear-gradient(160deg, var(--h) 10%, var(--ink-2) 95%);transition:transform .6s var(--ease);border-radius:18px;position:relative;overflow:hidden}.card:hover .card-art{transform:scale(.985)}.card-cover{object-fit:cover;width:100%;height:100%;transition:transform 1s var(--ease);position:absolute;inset:0}.card:hover .card-cover{transform:scale(1.06)}.card-art:has(.card-cover) .card-initial,.card-art:has(.card-cover) .card-ring,.card-art:has(.card-cover) .card-grain{display:none}.card-initial{font-family:var(--serif);color:var(--bone);mix-blend-mode:overlay;opacity:.9;font-size:clamp(12rem,30vw,26rem);font-style:italic;line-height:1;position:absolute;bottom:-14%;left:6%}.card-ring{aspect-ratio:1;border:1px solid #ede6da80;border-radius:50%;width:34%;position:absolute;top:12%;right:8%}html.motion .card-ring{border-style:dashed;animation:24s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.card-grain{opacity:.25;mix-blend-mode:overlay;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");position:absolute;inset:0}.card-meta{grid-template-columns:auto 1fr;align-items:baseline;column-gap:1rem;display:grid}.card-num{color:var(--ochre);font-size:.85rem}.card-meta h3{font-size:clamp(1.6rem,2.6vw,2.4rem)}.card-meta p,.card-meta ul{color:var(--bone-dim);grid-column:2;margin:.4rem 0 0}.card-meta ul{flex-wrap:wrap;gap:.4rem;margin-top:.8rem;padding:0;list-style:none;display:flex}.card-meta li{border:1px solid var(--line);border-radius:999px;padding:.25em .8em;font-size:.8rem}@media (width>=900px){html.motion .work-pin{align-items:center;gap:5vw;height:100vh;padding-block:0;display:flex;overflow:hidden}html.motion .work-head{width:calc(30vw + var(--gutter));margin-left:calc(var(--gutter) * -1);padding-left:var(--gutter);z-index:2;background:var(--ink);box-shadow:4vw 0 4vw var(--ink);flex-direction:column;flex:none;justify-content:center;align-self:stretch;display:flex;position:relative}html.motion .work-track{will-change:transform;gap:3vw;display:flex}html.motion .card{flex:none;width:46vw}html:not(.motion) .work-track{grid-template-columns:repeat(3,1fr)}}.services{padding:clamp(6rem, 12vw, 10rem) var(--gutter)}.service-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:1.25rem;display:grid}.service{border:1px solid var(--line);transition:border-color .4s var(--ease), transform .4s var(--ease);border-radius:20px;flex-direction:column;gap:1.2rem;padding:2rem;display:flex}.service:hover{border-color:var(--bone-dim);transform:translateY(-4px)}.service header{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:.25rem 1rem;display:flex}.service h3{font-size:2.2rem}.price{font-family:var(--serif);color:var(--ochre);font-size:1.3rem;font-style:italic}.service-lead{margin:0;font-size:1.1rem}.service ul{border-top:1px solid var(--line);color:var(--bone-dim);gap:.6rem;margin:auto 0 0;padding:1.2rem 0 0;list-style:none;display:grid}.service li:before{content:"— ";color:var(--bone)}.service.featured{background:var(--bone);color:var(--ink);border-color:var(--bone)}.service.featured .price{color:var(--wine)}.service.featured ul{color:#4a443b;border-color:#0e0d0b26}.service.featured li:before{color:var(--ink)}.lab{padding:clamp(6rem, 12vw, 10rem) var(--gutter) 0}.lab-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:1.25rem;display:grid}.lab-card{gap:1rem;display:grid;position:relative}.lab-media{aspect-ratio:4/5;background:#1a1916;border-radius:18px;overflow:hidden}.lab-media img,.lab-media video{object-fit:cover;width:100%;height:100%;transition:transform .8s var(--ease)}.lab-card:hover .lab-media img,.lab-card:hover .lab-media video{transform:scale(1.04)}.lab-meta h3{font-size:1.6rem}.lab-meta p{color:var(--bone-dim);margin:.3rem 0 .8rem}.lab-meta ul{flex-wrap:wrap;gap:.4rem;margin:0;padding:0;list-style:none;display:flex}.lab-meta li{border:1px solid var(--line);color:var(--bone-dim);border-radius:999px;padding:.25em .8em;font-size:.8rem}.about{padding:clamp(6rem, 12vw, 10rem) var(--gutter);border-top:1px solid var(--line)}.about-grid{grid-template-columns:minmax(0,5fr) minmax(0,7fr);align-items:center;gap:clamp(2rem,6vw,6rem);display:grid}.about-photo{aspect-ratio:1;object-fit:cover;filter:grayscale(.15)contrast(1.02);border-radius:20px;width:100%;height:auto}.about-text p{color:var(--bone-dim);max-width:52ch;margin:0 0 1.2rem;font-size:1.15rem}.about-text .btn{margin-top:1rem}@media (width<=800px){.about-grid{grid-template-columns:1fr}.about-photo{max-width:420px}}.process{padding:0 var(--gutter) clamp(6rem, 12vw, 10rem)}.steps{border-top:1px solid var(--line);grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));margin:0;padding:0;list-style:none;display:grid}.step{border-bottom:1px solid var(--line);padding:2rem 1.5rem 2rem 0}.step-num{font-family:var(--serif);color:var(--ochre);font-size:3rem;font-style:italic;line-height:1}.step h3{margin:1rem 0 .6rem;font-size:1.8rem}.step p{color:var(--bone-dim);max-width:32ch;margin:0}.contact{padding:clamp(6rem, 12vw, 10rem) var(--gutter) 4rem;border-top:1px solid var(--line)}.contact-big{letter-spacing:-.05em;transition:color .4s var(--ease);flex-direction:column;font-size:clamp(3rem,10vw,10rem);font-weight:600;line-height:.9;display:inline-flex}.contact-big em{color:var(--ochre);font-weight:400}.contact-big:hover{color:var(--ochre)}.contact-big:hover em{color:var(--bone)}.contact-row{color:var(--bone-dim);flex-wrap:wrap;gap:1rem 2.5rem;margin-top:3rem;display:flex}.contact-row a{color:var(--bone);border-bottom:1px solid var(--line)}.footer{padding:2rem var(--gutter);border-top:1px solid var(--line);color:var(--bone-dim);flex-wrap:wrap;justify-content:space-between;gap:1rem;font-size:.85rem;display:flex}html.motion .reveal{opacity:0;transform:translateY(30px)}html.motion .hero-title .word{transform:translateY(110%)}
