:root{--ink:#0b0b0b;--paper:#eee9df;--acid:#d8ff43;--orange:#ff6846;--violet:#8d6cff;--line:rgba(255,255,255,.18);--ease:cubic-bezier(.77,0,.18,1)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:320px;overflow-x:hidden;color:#f7f3eb;background:var(--ink);font-family:Arial,"Helvetica Neue",sans-serif}body.no-scroll{overflow:hidden}button,a,input,select,textarea{color:inherit;font:inherit}button{cursor:pointer}.skip-link{position:fixed;z-index:200;top:1rem;left:1rem;padding:.8rem 1rem;color:var(--ink);background:var(--acid);transform:translateY(-150%)}.skip-link:focus{transform:none}.cursor-orbit{position:fixed;z-index:150;width:38px;height:38px;border:1px solid rgba(216,255,67,.55);border-radius:50%;pointer-events:none;translate:-50% -50%;transition:width .2s,height .2s,border .2s;mix-blend-mode:difference}.cursor-orbit i{position:absolute;top:50%;left:50%;width:4px;height:4px;border-radius:50%;background:#fff;translate:-50% -50%}.cursor-orbit.is-hovering{width:72px;height:72px;border-color:#fff}.header{position:fixed;z-index:80;inset:0 0 auto;height:78px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:0 clamp(18px,4vw,70px);border-bottom:1px solid var(--line);transition:height .3s,background .3s}.header.is-scrolled{height:64px;background:rgba(11,11,11,.88);backdrop-filter:blur(18px)}.brand{display:flex;align-items:center;width:max-content;gap:.7rem;color:inherit;text-decoration:none;font-size:.72rem;font-weight:900;letter-spacing:-.04em;line-height:.83}.brand-mark{position:relative;width:31px;height:31px;display:block}.brand-mark::before,.brand-mark::after,.brand-mark i{content:"";position:absolute;inset:4px;border:1.5px solid currentColor;border-radius:50% 12% 50% 12%;rotate:45deg}.brand-mark::after{inset:9px;rotate:-45deg}.brand-mark i:first-child{inset:13px;background:currentColor;border:0;border-radius:50%}.brand-mark i:last-child{inset:0;rotate:90deg;border-color:rgba(255,255,255,.35)}.header nav{display:flex;gap:clamp(1.2rem,3vw,3.2rem)}.header nav a,.footer a,.footer button{color:inherit;font-size:.6rem;font-weight:900;letter-spacing:.14em;text-decoration:none;text-transform:uppercase}.header nav sup{color:var(--acid);font-size:.48rem}.start-button{justify-self:end;display:flex;align-items:center;gap:2rem;border:1px solid rgba(255,255,255,.55);padding:.75rem .9rem;background:transparent;font-size:.57rem;font-weight:900;letter-spacing:.13em;text-transform:uppercase;transition:.25s}.start-button:hover{color:var(--ink);background:var(--acid)}
.section{position:relative;overflow:hidden}.hero{position:relative;min-height:100svh;padding:clamp(125px,12vw,185px) clamp(20px,5vw,85px) 60px;overflow:hidden;background:var(--ink)}.hero-grid{position:absolute;inset:78px 0 0;background-image:linear-gradient(rgba(255,255,255,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.055) 1px,transparent 1px);background-size:8.333vw 8.333vw;mask-image:linear-gradient(90deg,transparent,#000 20%,#000 80%,transparent)}.hero-kicker,.eyebrow{margin:0;font-size:.57rem;font-weight:900;letter-spacing:.2em;text-transform:uppercase}.hero h1{position:relative;z-index:2;margin:5vw 0 0;max-width:10ch;font-family:Impact,Haettenschweiler,"Arial Narrow Bold",sans-serif;font-size:clamp(6rem,14vw,15rem);font-weight:900;letter-spacing:-.055em;line-height:.72;text-transform:uppercase}.hero h1 span,.hero h1 em{display:block;font-style:normal}.hero h1 em{color:transparent;font-family:Georgia,serif;font-weight:400;text-transform:none;-webkit-text-stroke:1.5px var(--acid)}.hero-bottom{position:relative;z-index:4;display:grid;grid-template-columns:1fr auto;align-items:end;margin-top:4vw;padding-top:1.5rem;border-top:1px solid var(--line)}.hero-bottom p{margin:0;max-width:32rem;font-size:clamp(.95rem,1.3vw,1.2rem);line-height:1.55}.hero-bottom a{display:flex;gap:3rem;color:inherit;font-size:.58rem;font-weight:900;letter-spacing:.14em;text-decoration:none;text-transform:uppercase}.hero-reel{position:absolute;z-index:3;top:18%;right:5vw;width:min(32vw,500px);aspect-ratio:.82;perspective:1200px}.reel-frame{position:absolute;inset:0;overflow:hidden;border:1px solid rgba(255,255,255,.25);box-shadow:0 35px 80px rgba(0,0,0,.35);transform-origin:bottom center;animation:reelCycle 9s var(--ease) infinite}.reel-frame img{width:100%;height:100%;object-fit:cover}.reel-frame--two{animation-delay:-6s}.reel-frame--three{animation-delay:-3s}@keyframes reelCycle{0%,25%{opacity:1;transform:translate3d(0,0,0) rotateY(-7deg) scale(1)}33%,92%{opacity:0;transform:translate3d(-22%,8%,0) rotateY(16deg) scale(.86)}100%{opacity:1;transform:translate3d(0,0,0) rotateY(-7deg) scale(1)}}.hero-reel__label{position:absolute;z-index:5;left:-25px;right:-25px;bottom:18px;display:flex;justify-content:space-between;padding:.8rem 1rem;color:var(--ink);background:var(--acid);font-size:.52rem;font-weight:900;letter-spacing:.14em;text-transform:uppercase}.hero-index{position:absolute;right:clamp(18px,4vw,70px);bottom:35px;display:flex;align-items:end;gap:.7rem}.hero-index b{font-size:clamp(3.5rem,6vw,7rem);line-height:.7;letter-spacing:-.08em}.hero-index span{font-size:.48rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase}.reveal{opacity:0;transform:translateY(65px);transition:opacity .8s,transform 1s var(--ease)}.reveal.is-visible{opacity:1;transform:none}
.archive{padding:clamp(110px,12vw,190px) clamp(16px,3vw,48px);color:var(--ink);background:var(--paper)}.archive-header{display:grid;grid-template-columns:1fr 2.2fr 1fr;gap:3vw;align-items:end;margin-bottom:7vw}.archive-header h2,.statement h2,.section-heading h2,.cta h2,.order-sheet h2{margin:0;font-family:Impact,Haettenschweiler,"Arial Narrow Bold",sans-serif;font-size:clamp(4.4rem,8.5vw,9.5rem);line-height:.8;letter-spacing:-.045em;text-transform:uppercase}.archive-header h2 em,.statement h2 em,.method h2 em,.cta h2 em{color:var(--orange);font-family:Georgia,serif;font-weight:400;text-transform:none}.archive-header>p:last-child{margin:0;line-height:1.55}.archive-toolbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;padding:1rem 0;border-top:1px solid rgba(11,11,11,.35);border-bottom:1px solid rgba(11,11,11,.35)}.filters{display:flex;flex-wrap:wrap;gap:.35rem}.filter{border:1px solid rgba(11,11,11,.35);border-radius:999px;padding:.55rem .8rem;background:transparent;font-size:.52rem;font-weight:900;letter-spacing:.11em;text-transform:uppercase}.filter span{opacity:.55}.filter.is-active,.filter:hover{color:#fff;background:var(--ink)}.archive-toolbar>p{display:flex;align-items:center;gap:.6rem;margin:0;font-size:.52rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase}.archive-toolbar>p i{width:7px;height:7px;border-radius:50%;background:#49bd63;box-shadow:0 0 0 5px rgba(73,189,99,.16)}.project-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:2px;background:#aaa}.project-card{position:relative;min-height:clamp(440px,47vw,720px);overflow:hidden;color:#fff;background:#161616}.project-card.is-hidden{display:none}.project-card__preview{position:absolute;inset:0;overflow:hidden;background:hsl(var(--hue) 58% 50%)}.project-card__preview::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(4,4,4,.74),transparent 55%)}.project-card video,.project-card__preview>img{width:100%;height:100%;object-fit:cover;transition:transform 1.1s var(--ease),filter .5s}.project-card:hover video,.project-card:hover .project-card__preview>img{transform:scale(1.055);filter:saturate(1.15)}.project-card__top{position:absolute;z-index:5;top:20px;left:20px;right:20px;display:flex;justify-content:space-between;align-items:center}.project-status{padding:.45rem .65rem;border:1px solid rgba(255,255,255,.5);border-radius:999px;background:rgba(10,10,10,.14);backdrop-filter:blur(8px);font-size:.48rem;font-weight:900;letter-spacing:.13em;text-transform:uppercase}.project-index{font-size:.52rem;font-weight:900;letter-spacing:.14em}.project-card__info{position:absolute;z-index:5;left:24px;right:24px;bottom:22px;display:grid;grid-template-columns:1fr auto;gap:.65rem 1rem;align-items:end}.project-card h3{margin:0;font-family:Impact,Haettenschweiler,"Arial Narrow Bold",sans-serif;font-size:clamp(2.8rem,5vw,6rem);line-height:.85;letter-spacing:-.035em;text-transform:uppercase}.project-card__info p{margin:0;font-size:.58rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;opacity:.72}.project-card__open{grid-column:2;grid-row:1/span 2;display:grid;width:64px;height:64px;place-items:center;border:1px solid rgba(255,255,255,.65);border-radius:50%;color:#fff;background:rgba(255,255,255,.08);text-decoration:none;backdrop-filter:blur(8px);transition:.3s}.project-card:hover .project-card__open{color:var(--ink);background:var(--acid);transform:rotate(45deg)}.concept-art{position:absolute;inset:0;overflow:hidden;background:linear-gradient(135deg,hsl(var(--hue) 70% 48%),hsl(calc(var(--hue) + 55) 68% 36%))}.concept-art__word{position:absolute;top:50%;left:50%;width:125%;translate:-50% -50%;color:rgba(255,255,255,.8);font-family:Impact,Haettenschweiler,"Arial Narrow Bold",sans-serif;font-size:clamp(5rem,11vw,13rem);letter-spacing:-.06em;line-height:.75;text-align:center;text-transform:uppercase;transform:scaleX(.66) rotate(-4deg);transition:transform .9s var(--ease),letter-spacing .9s}.project-card:hover .concept-art__word{letter-spacing:.015em;transform:scaleX(1) rotate(0)}.concept-art__orb{position:absolute;top:50%;left:50%;width:34%;aspect-ratio:1;translate:-50% -50%;border:1px solid rgba(255,255,255,.7);border-radius:50%;box-shadow:0 0 0 5vw rgba(255,255,255,.08),0 0 0 10vw rgba(255,255,255,.04);transition:transform 1s var(--ease),border-radius .8s}.project-card:hover .concept-art__orb{border-radius:12%;transform:rotate(135deg) scale(.72)}.concept-art__lines{position:absolute;inset:12%;border:1px solid rgba(255,255,255,.25);transform:skew(-12deg);transition:inset .9s var(--ease),transform .9s}.project-card:hover .concept-art__lines{inset:28% 8%;transform:skew(12deg) rotate(90deg)}.mini-site{position:absolute;inset:0;background:#f26f70}.mini-site img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.mini-site__type{position:absolute;z-index:2;top:38%;left:50%;width:110%;translate:-50%;color:#fff;font-family:Impact,Haettenschweiler,"Arial Narrow Bold",sans-serif;font-size:8vw;text-align:center;text-transform:uppercase;white-space:nowrap;transition:letter-spacing .8s var(--ease),transform .8s}.project-card:hover .mini-site__type{letter-spacing:.08em;transform:scaleX(1.1)}.mini-site--orbit{background:#7777c9}.archive-note{display:grid;grid-template-columns:auto auto 1fr;gap:2rem;margin-top:2rem;padding:1.5rem 0;border-top:1px solid rgba(11,11,11,.35)}.archive-note span{font-size:.58rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase}.archive-note p{justify-self:end;margin:0;max-width:38rem;font-size:.72rem;line-height:1.5;text-align:right}
.statement{min-height:105svh;padding:clamp(110px,12vw,190px) clamp(20px,7vw,120px);background:var(--violet)}.statement h2{margin:7vw 0 0;font-size:clamp(4.7rem,10vw,11rem)}.statement h2 em{color:var(--acid)}.statement-copy{display:grid;grid-template-columns:auto 1fr;gap:3rem;align-items:center;max-width:680px;margin:8vw 0 0 auto}.statement-copy p{margin:0;font-size:clamp(1rem,1.5vw,1.35rem);line-height:1.55}.loom-symbol{position:relative;width:125px;height:125px}.loom-symbol i{position:absolute;inset:0;border:1px solid currentColor;border-radius:50% 8%;rotate:45deg}.loom-symbol i:nth-child(2){inset:18px;rotate:-45deg}.loom-symbol i:nth-child(3){inset:43px;border:0;border-radius:50%;background:var(--acid)}
.services{padding:clamp(110px,12vw,190px) clamp(20px,7vw,120px);background:var(--ink)}.section-heading{display:grid;grid-template-columns:1fr 3fr;gap:3vw;margin-bottom:7vw}.section-heading h2{font-size:clamp(4.2rem,8vw,9rem)}.service-list{border-top:1px solid var(--line)}.service{position:relative;min-height:240px;display:grid;grid-template-columns:70px 1.4fr 1fr;align-items:center;gap:3vw;overflow:hidden;border-bottom:1px solid var(--line)}.service>span{align-self:start;padding-top:2rem;font-size:.55rem;font-weight:900}.service h3{position:relative;z-index:2;margin:0;font-size:clamp(2.7rem,5vw,5.8rem);line-height:.9;letter-spacing:-.065em;text-transform:uppercase}.service p{position:relative;z-index:2;margin:0;max-width:30rem;line-height:1.55}.service b{position:absolute;left:calc(70px + 3vw);bottom:2rem;font-size:.48rem;letter-spacing:.13em;text-transform:uppercase;opacity:.55}.service>i{position:absolute;right:0;bottom:-.24em;color:transparent;font-family:Impact,Haettenschweiler,"Arial Narrow Bold",sans-serif;font-size:14vw;font-style:normal;-webkit-text-stroke:1px rgba(216,255,67,.17);transform:translateX(18%);transition:transform .9s var(--ease)}.service:hover>i{transform:none}
.method{padding:clamp(110px,12vw,190px) clamp(20px,5vw,85px);color:var(--ink);background:var(--acid)}.method .section-heading h2 em{color:var(--violet)}.method-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:rgba(11,11,11,.35)}.method-grid article{min-height:350px;display:flex;flex-direction:column;padding:2rem;background:var(--acid)}.method-grid span{font-size:.56rem;font-weight:900;letter-spacing:.14em;text-transform:uppercase}.method-grid h3{margin:auto 0 1rem;font-size:clamp(2.5rem,4.3vw,5rem);line-height:.9;letter-spacing:-.06em;text-transform:uppercase}.method-grid p{margin:0;max-width:31rem;line-height:1.55}.method-grid b{margin-top:2rem;font-size:.52rem;letter-spacing:.14em;text-transform:uppercase}
.packages{padding:clamp(110px,12vw,190px) clamp(18px,4vw,70px);color:var(--ink);background:var(--paper)}.package-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2px;background:rgba(11,11,11,.3)}.package{min-height:620px;display:flex;flex-direction:column;padding:1.7rem;background:var(--paper)}.package--featured{color:#fff;background:var(--violet)}.package>span,.package>p{font-size:.55rem;font-weight:900;letter-spacing:.14em;text-transform:uppercase}.package>p{margin:4rem 0 .9rem}.package h3{margin:0;font-size:clamp(2.6rem,4vw,4.8rem);line-height:.87;letter-spacing:-.06em;text-transform:uppercase}.package strong{margin:1.6rem 0 3rem;font-family:Georgia,serif;font-size:1.4rem;font-style:italic}.package ul{margin:0;padding:0;list-style:none}.package li{padding:.75rem 0;border-bottom:1px solid currentColor;font-size:.72rem}.package button{margin-top:auto;border:1px solid currentColor;padding:1rem;background:transparent;font-size:.58rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase;transition:.25s}.package button:hover{color:#fff;background:var(--ink)}.package--featured button:hover{color:var(--ink);background:var(--acid)}
.cta{min-height:100svh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:110px 20px;text-align:center;background:var(--orange)}.cta h2{position:relative;z-index:3;margin:3rem 0;font-size:clamp(5.2rem,12vw,13rem)}.cta h2 em{color:var(--acid)}.cta-button{position:relative;z-index:4;min-width:min(420px,90vw);display:flex;justify-content:space-between;border:1px solid currentColor;padding:1.15rem 1.3rem;background:transparent;font-size:.62rem;font-weight:900;letter-spacing:.14em;text-transform:uppercase;transition:.25s}.cta-button:hover{color:#fff;background:var(--ink)}.cta-loom{position:absolute;left:50%;bottom:-26vw;width:67vw;aspect-ratio:1;translate:-50%;border:1px solid rgba(11,11,11,.17);border-radius:50% 12%;rotate:45deg}.cta-loom i{position:absolute;inset:8%;border:inherit;border-radius:inherit}.cta-loom i:nth-child(2){inset:17%}.cta-loom i:nth-child(3){inset:26%}.cta-loom i:nth-child(4){inset:35%}.cta-loom i:nth-child(5){inset:44%;background:var(--acid);opacity:.55}.footer{display:grid;grid-template-columns:1.2fr 1fr 1fr 1.4fr auto;gap:3rem;padding:55px clamp(20px,4vw,70px);color:var(--ink);background:var(--paper)}.footer>div{display:flex;flex-direction:column;gap:.7rem}.footer button{border:0;padding:0;background:transparent;text-align:left}.footer p{margin:0;font-size:.62rem;line-height:1.6;opacity:.64}
.order-panel{position:fixed;z-index:120;inset:0;visibility:hidden;opacity:0;transition:opacity .35s,visibility .35s}.order-panel.is-open{visibility:visible;opacity:1}.order-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.7);backdrop-filter:blur(7px)}.order-sheet{position:absolute;top:0;right:0;width:min(760px,100%);height:100%;overflow:auto;padding:clamp(70px,8vw,105px) clamp(24px,6vw,75px);color:var(--ink);background:var(--acid);transform:translateX(100%);transition:transform .65s var(--ease)}.order-panel.is-open .order-sheet{transform:none}.order-close{position:absolute;top:22px;right:22px;width:44px;height:44px;border:1px solid currentColor;border-radius:50%;background:transparent;font-size:1.5rem}.order-sheet h2{margin:2.2rem 0 3.5rem;font-size:clamp(3.7rem,7vw,6.5rem)}.order-sheet form{display:grid;grid-template-columns:1fr 1fr;gap:1.4rem}.order-sheet label,.order-sheet fieldset{display:flex;flex-direction:column;gap:.55rem;margin:0;border:0;padding:0;font-size:.54rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.order-sheet input,.order-sheet select,.order-sheet textarea{width:100%;border:0;border-bottom:1px solid rgba(11,11,11,.45);border-radius:0;padding:.8rem 0;color:var(--ink);background:transparent;font-size:1rem;letter-spacing:0;text-transform:none;outline:none}.order-sheet input:focus,.order-sheet select:focus,.order-sheet textarea:focus{border-color:var(--violet)}.order-sheet fieldset{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,1fr);gap:.5rem}.order-sheet legend{grid-column:1/-1;margin-bottom:.7rem}.order-sheet fieldset label{position:relative;display:block}.order-sheet fieldset input{position:absolute;opacity:0}.order-sheet fieldset span{display:block;border:1px solid rgba(11,11,11,.45);padding:.9rem;text-align:center}.order-sheet fieldset input:checked+span{color:#fff;background:var(--ink)}.form-full{grid-column:1/-1}.submit-brief{display:flex;justify-content:space-between;margin-top:1rem;border:0;padding:1.1rem 1.2rem;color:#fff;background:var(--ink);font-size:.62rem;font-weight:900;letter-spacing:.14em;text-transform:uppercase}.form-note{margin:0!important;font-size:.53rem!important;line-height:1.5;opacity:.58}.toast{position:fixed;z-index:160;top:88px;left:50%;translate:-50% -18px;padding:.8rem 1rem;color:var(--ink);background:var(--acid);font-size:.6rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase;opacity:0;pointer-events:none;transition:.35s var(--ease)}.toast.is-visible{opacity:1;translate:-50% 0}
@media(max-width:1000px){.header{grid-template-columns:1fr auto}.header nav{display:none}.hero h1{font-size:15vw}.hero-reel{width:37vw;right:3vw}.archive-header{grid-template-columns:1fr 2fr}.archive-header>p:last-child{grid-column:2}.section-heading{grid-template-columns:1fr 2fr}.product-grid{grid-template-columns:1fr}.service{grid-template-columns:55px 1.2fr 1fr}.package-grid{grid-template-columns:1fr}.package{min-height:520px}.footer{grid-template-columns:1fr 1fr 1fr}.footer>p{grid-column:auto}}
@media(max-width:680px){.cursor-orbit{display:none}.header{height:64px;padding-inline:18px}.start-button{gap:.8rem}.hero{min-height:830px;padding:110px 18px 45px}.hero-grid{top:64px;background-size:25vw 25vw}.hero h1{font-size:23vw}.hero-reel{top:36%;right:8%;width:68vw}.hero-bottom{position:absolute;left:18px;right:18px;bottom:28px;grid-template-columns:1fr}.hero-bottom a{margin-top:1rem}.hero-index{display:none}.archive,.services,.method,.packages{padding:90px 14px}.archive-header{display:block}.archive-header h2,.statement h2,.section-heading h2{margin:2.5rem 0 1.5rem;font-size:17vw}.archive-toolbar{align-items:flex-start}.archive-toolbar>p{display:none}.filters{gap:.25rem}.filter{padding:.45rem .6rem}.project-grid{grid-template-columns:1fr}.project-card{min-height:520px}.project-card h3{font-size:3.4rem}.concept-art__word{font-size:19vw}.mini-site__type{font-size:19vw}.archive-note{grid-template-columns:1fr;gap:.7rem}.archive-note p{justify-self:start;text-align:left}.statement{padding:100px 18px}.statement-copy{grid-template-columns:1fr;margin-top:70px}.loom-symbol{width:90px;height:90px}.section-heading{display:block}.service{grid-template-columns:35px 1fr;min-height:300px;padding:2rem 0}.service p{grid-column:2}.service b{left:calc(35px + 3vw);bottom:1rem}.service h3{font-size:3.3rem}.method-grid{grid-template-columns:1fr}.method-grid article{min-height:320px}.package{min-height:580px}.cta h2{font-size:22vw}.footer{grid-template-columns:1fr;gap:2rem}.order-sheet{padding:75px 20px 40px}.order-sheet form{grid-template-columns:1fr}.form-full,.order-sheet fieldset{grid-column:1}.order-sheet fieldset{grid-template-columns:1fr}.reel-frame{animation:none}.reel-frame--two,.reel-frame--three{display:none}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important}.reveal{opacity:1;transform:none}.cursor-orbit{display:none}}

/* Signature 3D showreel portal — inspired by Halo Ring, Crystal Sphere and Primal */
.hero-portal{position:absolute;z-index:5;top:13%;right:1.5vw;width:min(48vw,720px);aspect-ratio:1;perspective:1400px;--px:0;--py:0;--hero-scroll:0}.portal-scene{position:absolute;inset:8%;transform-style:preserve-3d;transform:translate3d(calc(var(--px)*18px),calc(var(--py)*14px + var(--hero-scroll)*90px),0) rotateX(calc(var(--py)*-9deg + var(--hero-scroll)*18deg)) rotateY(calc(var(--px)*11deg + var(--hero-scroll)*-22deg)) scale(calc(1 - var(--hero-scroll)*.16));transition:transform .25s ease-out}.portal-ring,.portal-axis{position:absolute;top:50%;left:50%;border:1px solid rgba(216,255,67,.62);border-radius:50%;translate:-50% -50%;transform-style:preserve-3d;pointer-events:none}.portal-ring::before,.portal-ring::after{content:"";position:absolute;top:50%;left:50%;border-radius:50%;translate:-50% -50%}.portal-ring::before{width:8px;height:8px;background:var(--acid);box-shadow:0 0 24px var(--acid)}.portal-ring::after{inset:10%;border:1px dashed rgba(255,255,255,.2)}.portal-ring--one{width:87%;height:87%;transform:rotateX(68deg) rotateZ(12deg);animation:portalSpinOne 12s linear infinite}.portal-ring--two{width:71%;height:71%;border-color:rgba(141,108,255,.85);transform:rotateY(67deg) rotateZ(-18deg);animation:portalSpinTwo 10s linear infinite reverse}.portal-ring--three{width:100%;height:42%;border-color:rgba(255,255,255,.28);transform:rotateX(72deg) rotateZ(-28deg);animation:portalSpinThree 15s linear infinite}.portal-axis{width:106%;height:1px;border:0;border-top:1px solid rgba(255,255,255,.18);border-radius:0}.portal-axis::before,.portal-axis::after{content:"";position:absolute;top:-3px;width:6px;height:6px;border-radius:50%;background:#fff}.portal-axis::before{left:0}.portal-axis::after{right:0}.portal-axis--one{transform:rotate(23deg)}.portal-axis--two{transform:rotate(-47deg)}@keyframes portalSpinOne{to{transform:rotateX(68deg) rotateZ(372deg)}}@keyframes portalSpinTwo{to{transform:rotateY(67deg) rotateZ(342deg)}}@keyframes portalSpinThree{to{transform:rotateX(72deg) rotateZ(332deg)}}.portal-core{position:absolute;z-index:3;top:50%;left:50%;width:57%;aspect-ratio:1;translate:-50% -50%;overflow:hidden;border:1px solid rgba(255,255,255,.7);border-radius:50%;background:#111;box-shadow:0 0 0 10px rgba(255,255,255,.025),0 0 70px rgba(141,108,255,.38),inset 0 0 55px rgba(0,0,0,.45);transform:translateZ(85px)}.portal-core video,.portal-frame{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:opacity .65s var(--ease),transform 1.1s var(--ease)}.portal-frame{opacity:0;transform:scale(1.15)}.hero-portal.show-swirl .portal-frame--swirl,.hero-portal.show-orbit .portal-frame--orbit{opacity:1;transform:scale(1.02)}.hero-portal.show-swirl video,.hero-portal.show-orbit video{opacity:0}.portal-core__glass{position:absolute;inset:0;background:radial-gradient(circle at 35% 24%,rgba(255,255,255,.26),transparent 28%),linear-gradient(135deg,rgba(255,255,255,.12),transparent 40%);pointer-events:none}.portal-core__label{position:absolute;left:50%;bottom:12%;translate:-50%;width:max-content;padding:.52rem .72rem;border:1px solid rgba(255,255,255,.38);border-radius:999px;background:rgba(5,5,5,.48);backdrop-filter:blur(8px);text-align:center}.portal-core__label span{display:block;font-size:.38rem;font-weight:900;letter-spacing:.16em;text-transform:uppercase;opacity:.65}.portal-core__label b{display:block;margin-top:.18rem;font-size:.56rem;letter-spacing:.12em}.portal-play{position:absolute;top:50%;left:50%;width:56px;height:56px;translate:-50% -50%;border:1px solid rgba(255,255,255,.68);border-radius:50%;color:#fff;background:rgba(0,0,0,.2);font-size:.7rem;opacity:0;transition:.25s}.portal-core:hover .portal-play,.portal-play:focus{opacity:1}.portal-node{position:absolute;z-index:6;width:23%;padding:0;border:1px solid rgba(255,255,255,.35);color:#fff;background:#111;box-shadow:0 20px 45px rgba(0,0,0,.3);transform-style:preserve-3d;transition:transform .65s var(--ease),border .3s,filter .3s}.portal-node:hover,.portal-node.is-active{border-color:var(--acid);filter:saturate(1.2)}.portal-node img{display:block;width:100%;aspect-ratio:1.35;object-fit:cover}.portal-node span{display:flex;justify-content:space-between;padding:.45rem;font-size:.4rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase}.portal-node span b{color:var(--acid)}.portal-node--fire{top:8%;right:5%;transform:translateZ(125px) rotateY(-13deg) rotateZ(5deg)}.portal-node--fire:hover{transform:translateZ(170px) rotateY(0) rotateZ(0) scale(1.08)}.portal-node--swirl{left:0;bottom:13%;transform:translateZ(92px) rotateY(16deg) rotateZ(-7deg)}.portal-node--swirl:hover{transform:translateZ(155px) rotateY(0) rotateZ(0) scale(1.08)}.portal-node--orbit{right:0;bottom:3%;transform:translateZ(70px) rotateY(-18deg) rotateZ(6deg)}.portal-node--orbit:hover{transform:translateZ(145px) rotateY(0) rotateZ(0) scale(1.08)}.portal-hud{position:absolute;left:7%;right:7%;bottom:2%;display:flex;align-items:center;gap:.7rem;font-size:.38rem;font-weight:900;letter-spacing:.15em;text-transform:uppercase}.portal-hud i{height:1px;flex:1;background:linear-gradient(90deg,var(--acid),transparent)}.portal-hud b{color:var(--acid)}
@media(max-width:1000px){.hero-portal{top:20%;right:-3vw;width:55vw}}
@media(max-width:680px){.hero{min-height:900px}.hero-portal{top:32%;right:50%;width:88vw;translate:50% 0}.portal-scene{inset:5%}.portal-node{width:25%}.portal-hud{display:none}.portal-play{opacity:.8}.hero-bottom{bottom:24px}}
@media(prefers-reduced-motion:reduce){.portal-ring{animation:none}.portal-scene{transform:none}.portal-frame{transition:none}}
/* OUTLINE STUDIO archive actions */
.project-card__info{bottom:92px}
.project-card__experience{position:absolute;z-index:7;right:24px;bottom:22px;left:24px;display:flex;min-height:52px;align-items:center;justify-content:space-between;padding:0 18px;border:1px solid rgba(255,255,255,.58);color:#0b0b0b;background:var(--acid);font:900 .58rem/1 Arial,sans-serif;letter-spacing:.12em;text-decoration:none;text-transform:uppercase;transition:transform .3s var(--ease),background .3s,color .3s}
.project-card__experience:hover{color:#fff;background:var(--orange);transform:translateY(-3px)}
.project-card__experience b{font-size:1rem}
.project-card__experience--soon{color:#fff;background:rgba(8,8,8,.56);backdrop-filter:blur(12px);cursor:pointer}
.project-card__experience--soon b{font-size:.5rem;letter-spacing:.12em;opacity:.72}
.project-card .archive-film{filter:saturate(.78) brightness(.82)}
.project-card:hover .archive-film{filter:saturate(1.08) brightness(1)}
@media(max-width:700px){.project-card__info{bottom:84px}.project-card__experience{right:16px;bottom:16px;left:16px;min-height:48px}.project-card__info{left:16px;right:16px}}

/* OUTLINE / 02 — restrained editorial identity */
:root{--ink:#07080b;--paper:#0d0f14;--acid:#5f6cff;--orange:#9aa4ff;--violet:#5f6cff;--line:rgba(255,255,255,.12)}
body{color:#f4f5f7;background:#07080b;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Helvetica Neue",Arial,sans-serif}
.header{height:86px;border-color:rgba(255,255,255,.12);background:rgba(7,8,11,.72);backdrop-filter:blur(20px)}
.header.is-scrolled{height:68px;background:rgba(7,8,11,.92)}
.brand{font-size:.66rem;letter-spacing:.03em;line-height:.9}.brand-mark{width:27px;height:27px}.header nav a{font-weight:650;letter-spacing:.17em}.header nav sup{color:#8f98ff}
.start-button{border-radius:999px;border-color:rgba(255,255,255,.25);padding:.88rem 1.2rem}.start-button:hover{color:#fff;background:#5f6cff;border-color:#5f6cff}
.cursor-orbit{border-color:rgba(126,137,255,.75)}
.hero{min-height:100svh;padding-top:clamp(145px,13vw,200px);background:radial-gradient(circle at 76% 42%,rgba(72,81,190,.18),transparent 34%),#07080b}
.hero-grid{opacity:.55;background-size:10vw 10vw;mask-image:linear-gradient(180deg,#000,transparent 88%)}
.hero h1{max-width:8ch;margin-top:4vw;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Helvetica Neue",Arial,sans-serif;font-size:clamp(5.6rem,12.7vw,13rem);font-weight:760;letter-spacing:-.075em;line-height:.76;text-transform:none}
.hero h1 em{color:#f4f5f7;font-family:"Times New Roman",Georgia,serif;font-weight:400;font-style:italic;letter-spacing:-.075em;-webkit-text-stroke:0}
.hero-kicker,.eyebrow{color:#a4a9b5;font-weight:650;letter-spacing:.2em}
.hero-bottom{border-color:rgba(255,255,255,.18)}.hero-bottom p{color:#c4c7cf}.hero-bottom a{color:#aeb5ff}
.hero-portal{right:2vw;width:min(44vw,660px)}.portal-ring{border-color:rgba(118,129,255,.48)}.portal-ring--two{border-color:rgba(255,255,255,.34)}.portal-core{border-radius:38% 62% 48% 52%;border-color:rgba(255,255,255,.42);box-shadow:0 0 0 1px rgba(255,255,255,.06),0 30px 100px rgba(45,51,150,.3)}
.portal-node{border-color:rgba(255,255,255,.18);background:#0b0c10}.portal-node:hover,.portal-node.is-active{border-color:#8290ff}.portal-node span b,.portal-hud b{color:#98a2ff}.portal-hud i{background:linear-gradient(90deg,#7380ff,transparent)}
.archive{color:#f4f5f7;background:#0b0c10}.archive-header{margin-bottom:5vw}.archive-header h2,.statement h2,.section-heading h2,.cta h2,.order-sheet h2{font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Helvetica Neue",Arial,sans-serif;font-weight:720;letter-spacing:-.07em;line-height:.84;text-transform:none}.archive-header h2 em,.statement h2 em,.method h2 em,.cta h2 em{color:#9da6ff;font-family:"Times New Roman",Georgia,serif;font-style:italic}
.archive-header>p:last-child{color:#a9adb8}.archive-toolbar{border-color:rgba(255,255,255,.16)}.filter{border-color:rgba(255,255,255,.18);color:#c2c5ce}.filter.is-active,.filter:hover{color:#07080b;background:#f3f4f6}.archive-toolbar>p i{background:#7d87ff;box-shadow:0 0 0 5px rgba(125,135,255,.15)}
.project-grid{gap:1px;background:rgba(255,255,255,.12)}.project-card{min-height:clamp(390px,39vw,620px);background:#11131a}.project-card__preview::after{background:linear-gradient(0deg,rgba(5,6,9,.92),rgba(5,6,9,.05) 64%)}.project-card h3{font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Helvetica Neue",Arial,sans-serif;font-size:clamp(2.1rem,3.9vw,4.8rem);font-weight:720;letter-spacing:-.065em;line-height:.9}.project-card__info p{color:#c0c3cc;opacity:.82}.project-status{border-color:rgba(255,255,255,.26);background:rgba(5,6,9,.46)}
.project-card__experience{color:#07080b;background:#f3f4f6;border-color:#f3f4f6}.project-card__experience:hover{color:#fff;background:#5f6cff;border-color:#5f6cff}.project-card__experience--soon{color:#fff;background:rgba(8,9,13,.7);border-color:rgba(255,255,255,.25)}
.preview-signal{position:absolute;z-index:6;top:22px;left:50%;display:flex;align-items:center;gap:.48rem;padding:.42rem .65rem;border-radius:999px;color:#fff;background:rgba(7,8,11,.68);backdrop-filter:blur(10px);font-size:.46rem;font-weight:750;letter-spacing:.12em;text-transform:uppercase;translate:-50% -10px;opacity:0;transition:.3s}.preview-signal i{width:6px;height:6px;border-radius:50%;background:#8f98ff}.project-card:hover .preview-signal,.project-card.is-playing .preview-signal{translate:-50% 0;opacity:1}.project-card.is-playing .preview-signal i{animation:previewPulse .8s ease-in-out infinite alternate}.project-card.is-playing::after{content:"";position:absolute;z-index:8;right:0;bottom:0;left:0;height:3px;background:#6f7cff;transform-origin:left;animation:previewProgress 3s linear infinite}@keyframes previewProgress{from{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes previewPulse{to{opacity:.3;transform:scale(.7)}}
.archive-note{border-color:rgba(255,255,255,.16)}.archive-note p{color:#a8acb5}
.statement,.services,.packages{color:#f2f3f5;background:#07080b}.statement-copy,.service,.package-grid{border-color:rgba(255,255,255,.14)}.service>i{display:none}.service p{color:#aeb2bd}.method{color:#f3f4f6;background:#11131a}.method-grid{background:rgba(255,255,255,.13)}.method-grid article{background:#11131a}.method-grid p{color:#b9bdc7}.package-grid{background:rgba(255,255,255,.12)}.package{color:#f3f4f6;background:#0d0f14}.package--featured{background:#303a9a}.package li{border-color:rgba(255,255,255,.16)}.package button:hover{color:#07080b;background:#f3f4f6}.cta{color:#f4f5f7;background:radial-gradient(circle at 50% 70%,rgba(91,103,255,.3),transparent 35%),#07080b}.cta h2 em{color:#9da6ff}.cta-button:hover{color:#07080b;background:#f4f5f7}.cta-loom{border-color:rgba(126,137,255,.16)}.cta-loom i:nth-child(5){background:#6471ff}.footer{color:#c8cbd3;background:#0b0c10;border-top:1px solid rgba(255,255,255,.12)}
.order-sheet{color:#f4f5f7;background:#121620}.order-sheet input,.order-sheet select,.order-sheet textarea{color:#fff;border-color:rgba(255,255,255,.25)}.order-sheet fieldset span{border-color:rgba(255,255,255,.25)}.order-sheet fieldset input:checked+span,.submit-brief{color:#fff;background:#5866f2}.toast{color:#fff;background:#5866f2}
@media(max-width:680px){.hero{min-height:880px}.hero h1{font-size:21vw}.hero-portal{top:34%;width:82vw}.archive,.services,.method,.packages{padding-inline:16px}.project-card{min-height:480px}.project-card h3{font-size:2.7rem}.preview-signal{display:none}}
