@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--navy:#0c192e;--cream:#f3e9da;--muted:#a3aab4;--line:#ffffff20}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:80px}body{margin:0;background:var(--navy);color:var(--cream);font-family:'DM Sans',sans-serif}a{color:inherit;text-decoration:none}button{font:inherit}header{height:112px;margin:0 5.5%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:12px}.brand svg{width:45px;fill:var(--cream)}.brand>span{font-size:18px;letter-spacing:3px;font-weight:700}.brand small{display:block;font-size:8px;letter-spacing:6px;margin-top:3px}nav{display:flex;gap:34px;font-size:13px;color:#c3c7cf}.nav-cta{font-size:13px;border-bottom:1px solid #a99d8a;padding:11px 0}.nav-cta span{margin-left:36px}.hero{min-height:710px;position:relative;padding:80px 5.5% 72px;overflow:hidden;display:grid;grid-template-columns:1.05fr 1fr}.eyebrow{font-size:10px;font-weight:600;letter-spacing:2px;display:flex;align-items:center;gap:10px}.eyebrow i,.capture-bottom i{width:5px;height:5px;display:inline-block;border-radius:50%;background:#d9c7a6}h1,h2,h3,p{margin-top:0}h1{font-family:Manrope,sans-serif;font-weight:500;letter-spacing:-4.5px;line-height:1.08;font-size:clamp(56px,5.9vw,92px);margin:27px 0}em{font-family:Georgia,serif;font-weight:400}h1 em{color:#d1bda0}.intro{font-size:15px;line-height:1.9;color:#b0b7c1}.actions{display:flex;gap:30px;align-items:center;margin-top:31px}.button{padding:17px 22px;font-size:12px;display:inline-flex;gap:36px}.light{background:var(--cream);color:var(--navy)}.button:hover{background:#d8c3a4}.text-link{font-size:12px;border-bottom:1px solid #8a8d91;padding-bottom:7px}.hero-art{position:relative;display:flex;align-items:center;justify-content:center;perspective:900px}.orb{position:absolute;width:95%;aspect-ratio:1;background:radial-gradient(ellipse,#a9916524,transparent 65%);border-radius:50%}.sculpture{width:108%;overflow:visible;transform:rotate(-11deg) rotateY(-22deg) rotateX(19deg);filter:drop-shadow(10px 45px 18px #0007);animation:float 9s ease-in-out infinite}.face{fill:url(#metal);stroke:#f9e7c5;stroke-width:.5}.depth{fill:#806f58}.d1{transform:translate(2px,3px)}.d2{transform:translate(4px,7px);fill:#6f604f}.d3{transform:translate(6px,11px);fill:#4b4338}.art-caption{position:absolute;bottom:35px;left:15%;right:0;display:flex;justify-content:space-between;font-size:8px;line-height:1.8;letter-spacing:1.5px;color:#939aa5}.hero-bottom{position:absolute;bottom:25px;left:5.5%;right:5.5%;display:flex;justify-content:space-between;font-size:8px;letter-spacing:1.6px;color:#929ba9}.platforms{padding:33px 5.5%;border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:24px}.platforms>span{font-size:8px;color:#9aa4b2;letter-spacing:1.5px;width:160px;line-height:1.9}.platforms strong{font-family:Manrope;font-size:26px;letter-spacing:-1px}.platforms strong span{display:block;font-family:'DM Sans';font-size:8px;font-weight:400;letter-spacing:1px;color:#9aa4b2;margin-top:3px}.section{padding:100px 7%}.section-heading h2,h2{font-family:Manrope;font-size:clamp(38px,4.5vw,64px);font-weight:400;letter-spacing:-2.5px;line-height:1.15;margin:26px 0 32px}.section-heading>p:last-child{font-size:14px;color:var(--muted)}.motion-grid{display:grid;grid-template-columns:1.25fr 1fr;gap:9%;align-items:center;margin-top:48px}.capture{position:relative;background:#101f34;border:1px solid #ffffff12;aspect-ratio:1.24;overflow:hidden}.capture canvas{width:100%;height:100%}.viewport-label{position:absolute;top:22px;left:22px;font-size:8px;letter-spacing:2px;color:#9ca9ba}.capture button{position:absolute;top:17px;right:18px;color:var(--cream);background:transparent;border:1px solid #ffffff30;border-radius:50%;width:30px;height:30px;cursor:pointer}.capture-bottom{position:absolute;bottom:20px;left:20px;right:20px;display:flex;justify-content:space-between;font-size:7px;letter-spacing:1px;color:#b1bbc8}.motion-text>p{font-size:29px;line-height:1.45;letter-spacing:-1px}.body-copy{color:var(--muted);font-size:14px;line-height:1.9;margin-bottom:30px}.note{font-size:10px;line-height:1.8;color:#727f92;margin-top:38px}.services{background:var(--cream);color:var(--navy)}.services .section-heading>p:last-child{color:#586170}.service{display:grid;grid-template-columns:75px 1fr 60px;border-top:1px solid #0c192e30;padding:34px 0;transition:padding .2s}.service:hover{padding-left:12px}.number{font-size:11px;margin-top:6px;color:#7c817f}h3{font-family:Manrope;font-weight:500;font-size:29px;letter-spacing:-1px;margin-bottom:14px}.service p{max-width:580px;font-size:14px;line-height:1.8;color:#59606b}.tags{display:flex;gap:10px;margin-top:23px}.tags span{font-size:8px;letter-spacing:1px;border:1px solid #0c192e30;padding:6px 9px}.service-arrow{font-size:32px;text-align:right}.service h3 small{font-family:'DM Sans';font-size:8px;letter-spacing:1px;vertical-align:middle;margin-left:13px}.process-top{display:flex;justify-content:space-between;align-items:center}.process-top>p{color:var(--muted);line-height:1.8;font-size:14px}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:45px;margin-top:35px}.steps article{border-top:1px solid var(--line);padding-top:22px}.steps article>span{font-size:9px;letter-spacing:1.5px;color:#ad9e88}.steps h3{font-size:23px;margin:30px 0 14px}.steps p{font-size:13px;color:var(--muted);line-height:1.9;max-width:270px}.contact{text-align:center;background:#142139;border-top:1px solid var(--line)}.contact .eyebrow{justify-content:center}.contact h2{font-size:clamp(55px,7vw,98px);line-height:1.05;margin-bottom:43px}.contact>a{font-size:clamp(17px,2.5vw,31px);border-bottom:1px solid #a89b84;padding-bottom:13px;display:inline-block}.contact>a span{margin-left:40px}.contact>p:last-child{font-size:12px;color:var(--muted);margin:25px 0 0}footer{padding:38px 5.5%;display:flex;align-items:center;justify-content:space-between}footer>span{font-size:10px;color:#8d97a7}footer .brand{transform:scale(.8);transform-origin:left center}@keyframes float{50%{transform:translateY(-14px) rotate(-7deg) rotateY(-12deg) rotateX(12deg)}}@media(min-width:1600px){main,header,footer{max-width:1600px;margin-left:auto;margin-right:auto}}@media(max-width:800px){header{height:85px}nav{display:none}.hero{padding-top:50px;grid-template-columns:1fr;min-height:1000px}.hero h1{font-size:62px;letter-spacing:-3px}.hero-art{height:340px}.sculpture{width:85%;max-width:490px}.art-caption{left:5%;bottom:10px}.platforms{flex-wrap:wrap;justify-content:space-around}.platforms>span{width:100%;text-align:center}.platforms strong{font-size:21px}.platforms strong span{font-size:7px}.section{padding:70px 6%}.motion-grid{grid-template-columns:1fr;gap:40px}.motion-text>p{font-size:27px}.service{grid-template-columns:35px 1fr 25px}.service h3{font-size:23px}.service h3 small{display:block;margin:9px 0 0}.service p{font-size:13px}.process-top{display:block}.steps{grid-template-columns:1fr;gap:22px}.steps h3{margin-top:18px}.steps p{max-width:none}footer{flex-wrap:wrap;gap:25px}footer>span{font-size:9px}footer>span:nth-child(2){display:none}.capture-bottom{font-size:6px}.actions{gap:20px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.sculpture{animation:none}}

.capture{aspect-ratio:1.24;background:#0b1728}.motion-render{display:block;width:100%;height:100%;object-fit:cover}.capture::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,#09152680,transparent 22%,transparent 72%,#091526cc)}.viewport-label,.capture-bottom,.concept-badge{z-index:1}.concept-badge{position:absolute;top:22px;right:20px;font-size:7px;letter-spacing:1.2px;color:#d4c9b7;border:1px solid #d4c9b740;padding:6px 8px;background:#0c192e50}.capture-bottom{color:#d6cbb9}.viewport-label{font-size:7px;color:#d6cbb9}.capture-bottom i{margin-right:5px}@media(max-width:420px){.concept-badge{top:43px;left:20px;right:auto;font-size:6px}.capture-bottom{font-size:5px}}

model-viewer{width:100%;height:100%;display:block;background:radial-gradient(ellipse at 50% 40%,#26344a,#0b1728 75%);--progress-bar-color:#d6bf9c}.capture::after{display:none}.motion-controls{position:absolute;bottom:48px;left:50%;transform:translateX(-50%);display:flex;border:1px solid #d6bf9c40;background:#0b1728bc;padding:4px;gap:4px;z-index:2}.motion-controls button{position:static;border:0;border-radius:0;width:auto;height:auto;padding:9px 14px;font-size:8px;letter-spacing:1px;color:#d6bf9c;background:transparent}.motion-controls button.active{background:#e3d1b6;color:#0b1728}.capture-bottom{pointer-events:none}.viewport-label{pointer-events:none}

#performer{display:block;width:100%;height:100%;touch-action:pan-y;cursor:grab}#performer:active{cursor:grabbing}#motionStatus{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:11px;color:#d6bf9c}.bespoke{border-top:1px solid #0c192e30;padding-top:38px;display:flex;gap:35px;align-items:center;justify-content:space-between}.bespoke p:not(.eyebrow){max-width:590px;font-size:14px;line-height:1.8;color:#59606b}.bespoke .button{background:#0c192e;color:#f3e9da;flex-shrink:0}.platforms{flex-wrap:wrap}@media(max-width:800px){.bespoke{display:block}.bespoke .button{margin-top:15px}}

/* The emblem opens as a stack of sculptural pages, then settles back together. */
.sculpture .depth,.sculpture .face{transform-box:fill-box;transform-origin:80% 90%;animation-duration:8s;animation-iteration-count:infinite;animation-timing-function:cubic-bezier(.45,0,.2,1)}
.sculpture .d3{animation-name:page-back}.sculpture .d2{animation-name:page-middle}.sculpture .d1{animation-name:page-inner}.sculpture .face{animation-name:page-front}
@keyframes page-back{0%,18%,85%,100%{transform:translate(6px,11px) rotate(0deg)}42%,58%{transform:translate(12px,37px) rotate(7deg) scaleY(.94)}}
@keyframes page-middle{0%,20%,83%,100%{transform:translate(4px,7px) rotate(0deg)}43%,57%{transform:translate(8px,22px) rotate(3.7deg) scaleY(.97)}}
@keyframes page-inner{0%,22%,81%,100%{transform:translate(2px,3px) rotate(0deg)}44%,56%{transform:translate(3px,8px) rotate(.5deg)}}
@keyframes page-front{0%,24%,79%,100%{transform:translate(0px,0px) rotate(0deg)}45%,55%{transform:translate(-3px,-14px) rotate(-5deg) scaleY(1.02)}}
.capture{border-radius:20px;border-color:#d6bf9c15}.motion-controls{bottom:33px}.capture-bottom{bottom:13px}
@media(prefers-reduced-motion:reduce){.sculpture .depth,.sculpture .face{animation:none}}

.reference-scene{position:absolute;inset:0;overflow:hidden;background:#0c192b}.reference-scene img{width:100%;height:100%;display:block;object-fit:cover;animation:reference-drift 14s ease-in-out infinite;transform-origin:48% 55%}.reference-sheen{position:absolute;inset:0;pointer-events:none;background:linear-gradient(115deg,transparent 25%,#f4dfbc0a 47%,transparent 65%);background-size:250% 100%;animation:reference-light 12s ease-in-out infinite}.reference-scene.paused *{animation-play-state:paused}.capture{aspect-ratio:1.196;border-radius:22px}.capture .viewport-label{top:18px;left:18px;font-size:6px;text-shadow:0 1px 5px #000}.capture-bottom{font-size:6px;text-shadow:0 1px 5px #000}.capture button{background:#0c192e80}.ripple-logo{filter:url(#silk-wave)}.sculpture .depth,.sculpture .face{animation-duration:6.8s}
@keyframes page-back{0%,100%{transform:translate(6px,11px) rotate(0)}25%{transform:translate(9px,27px) rotate(4deg) skewY(2deg)}50%{transform:translate(13px,42px) rotate(8deg) scaleY(.95)}75%{transform:translate(4px,23px) rotate(2deg) skewY(-2deg)}}
@keyframes page-middle{0%,100%{transform:translate(4px,7px) rotate(0)}25%{transform:translate(7px,16px) rotate(2deg) skewY(1deg)}50%{transform:translate(9px,25px) rotate(4deg) scaleY(.97)}75%{transform:translate(2px,12px) rotate(1deg) skewY(-1deg)}}
@keyframes page-inner{0%,100%{transform:translate(2px,3px)}25%{transform:translate(2px,2px) rotate(-1deg)}50%{transform:translate(3px,8px) rotate(1deg)}75%{transform:translate(1px,1px) rotate(-2deg)}}
@keyframes page-front{0%,100%{transform:translate(0,0) rotate(0)}25%{transform:translate(-2px,-13px) rotate(-3deg) skewY(-1deg)}50%{transform:translate(-4px,-19px) rotate(-6deg) scaleY(1.02)}75%{transform:translate(-1px,-7px) rotate(-2deg) skewY(1deg)}}
@keyframes reference-drift{0%,100%{transform:scale(1.015) translate(0,0)}50%{transform:scale(1.045) translate(-.4%,-.5%)}}@keyframes reference-light{0%,100%{background-position:100% 0}50%{background-position:0 0}}
@media(prefers-reduced-motion:reduce){.sculpture .depth,.sculpture .face,.reference-scene *{animation:none}.ripple-logo{filter:none}}

.ripple-logo{filter:none!important}.sculpture .depth,.sculpture .face{animation-duration:9s;animation-timing-function:ease-in-out}.sculpture{filter:drop-shadow(10px 35px 18px #0006)}
@keyframes page-back{0%,100%{transform:translate(6px,11px)}50%{transform:translate(7px,19px) rotate(1.5deg)}}
@keyframes page-middle{0%,100%{transform:translate(4px,7px)}50%{transform:translate(5px,12px) rotate(.8deg)}}
@keyframes page-inner{0%,100%{transform:translate(2px,3px)}50%{transform:translate(2px,5px) rotate(.3deg)}}
@keyframes page-front{0%,100%{transform:translate(0,0)}50%{transform:translate(0,-3px) rotate(-.6deg)}}
#runFrames{display:block;width:100%;height:100%;background:#0b1728}.capture{aspect-ratio:1/1}.capture .viewport-label{pointer-events:none}
@media(prefers-reduced-motion:reduce){.sculpture .depth,.sculpture .face{animation:none}}

/* Restore the selected original interactive motion study only. */
.capture{aspect-ratio:1.24;border-radius:0;border:1px solid #ffffff12}.capture-bottom{bottom:20px;font-size:7px;color:#d6cbb9}.capture .viewport-label{top:22px;left:22px;font-size:7px;color:#d6cbb9}.motion-controls{bottom:48px}.capture button{background:transparent}
