/* Original character sculptures inspired by the selected launch poster. No WebGL or external runtime. */
.hero{position:relative;padding-top:65px;min-height:740px;grid-template-columns:1.04fr 1fr;isolation:isolate;background:radial-gradient(ellipse at 80% 45%,#e8d6d5a8,transparent 55%)}
.hero-copy{padding-bottom:65px}.hero h1{font-size:clamp(58px,6.5vw,94px);line-height:.99;letter-spacing:-.065em}.hero-description{max-width:400px;font-size:17px}.hero-secondary{display:flex;margin:22px 0 0}.hero .serif{color:var(--purple)}
.clay-stage{height:540px;perspective:1100px;transform:translate(var(--pointer-x,0px),var(--pointer-y,0px));transition:transform .8s ease-out}
.clay-browser{width:355px;position:absolute;left:50%;top:45%;transform:translate(-50%,-50%) rotate(-9deg) rotateY(-12deg);border:10px solid #f4e6d7;border-radius:23px;background:#f6f0e7;box-shadow:inset 0 0 0 1px #fff,12px 18px 0 #dfcdbd,18px 34px 40px #24233226;animation:browser-drift 8s ease-in-out infinite;z-index:2;overflow:hidden}
.clay-toolbar{padding:11px 12px;display:flex;justify-content:space-between;font-size:8px;color:#795e80}.clay-toolbar>span:first-child{color:#b880a6;letter-spacing:2px}.clay-screen{margin:0 9px 10px;border-radius:9px;padding:23px 22px 15px;background:var(--purple);color:var(--paper);min-height:255px;overflow:hidden}.demo-label{font-size:7px;letter-spacing:.16em}.clay-screen strong{display:block;margin-top:16px;font-size:34px;line-height:1.02;letter-spacing:-.055em}.demo-shapes{display:flex;align-items:center;height:82px;gap:10px;margin-top:12px}.demo-shapes i{display:block;width:66px;height:66px;border-radius:50%;background:var(--pink)}.demo-shapes i:nth-child(2){border-radius:55% 55% 5% 5%;background:var(--paper);transform:rotate(12deg)}.demo-shapes i:nth-child(3){width:43px;height:43px;background:#242332}.demo-foot{font-size:7px;letter-spacing:.1em}
.stage-orbit{position:absolute;width:450px;height:330px;left:50%;top:45%;border:7px solid #f6e8da;border-radius:50%;box-shadow:inset 1px 2px 3px #b6a398,1px 2px 2px #fff;transform:translate(-50%,-50%) rotate(-33deg)}
.clay-ball{position:absolute;border-radius:50%;z-index:3;box-shadow:inset -13px -18px 26px #24233250,inset 6px 8px 15px #ffffff50,14px 22px 23px #24233220;animation:ball-float 7s ease-in-out infinite}
.purple-ball{width:190px;height:190px;left:-18px;bottom:60px;background:radial-gradient(circle at 31% 22%,#b08be5 0,#8660c7 28%,#6d4cb5 60%,#49346d 100%);transform:rotate(-16deg)}
.rose-ball{width:125px;height:125px;right:13px;top:2px;background:radial-gradient(circle at 30% 20%,#fce3e6,#d7a0ae 48%,#af7387);animation-delay:-2s}
.plum-ball{width:88px;height:88px;right:5px;bottom:45px;background:radial-gradient(circle at 32% 22%,#777084,#242332 58%);animation-delay:-4s;color:#f6f0e7}
.eye{position:absolute;top:42%;width:6%;height:11%;border-radius:50%;background:#242332;box-shadow:inset 1px 1px 1px #ffffff50}.eye-left{left:34%;transform:rotate(-12deg)}.eye-right{left:61%;transform:rotate(-12deg)}.smile{position:absolute;width:19%;height:13%;left:45%;top:54%;border-bottom:3px solid currentColor;border-radius:0 0 50% 50%;transform:rotate(-10deg)}.plum-ball .eye{background:#f6f0e7}.clay-ball:after{content:'';position:absolute;width:23%;height:13%;left:21%;top:13%;border-radius:50%;background:#ffffff32;filter:blur(6px);transform:rotate(-35deg)}
.stage-dot{position:absolute;width:28px;height:28px;background:var(--purple);border-radius:50%;box-shadow:inset 3px 3px 5px #ffffff66,inset -3px -3px 5px #24233255;animation:ball-float 6s ease-in-out infinite}.dot-one{top:40px;left:75px}.dot-two{bottom:25px;right:150px;background:var(--pink);animation-delay:-3s}.clay-stage .concept-caption{bottom:-10px}
.living-dots{position:absolute;inset:0;z-index:-1;pointer-events:none;overflow:hidden}.living-dots i{position:absolute;width:calc(3px + var(--i)*.6px);height:calc(3px + var(--i)*.6px);border-radius:50%;background:var(--purple);opacity:.14;left:calc(4% + var(--i)*8%);top:calc(8% + mod(var(--i),4)*22%);animation:dots-drift calc(12s + var(--i)*1s) ease-in-out infinite;animation-delay:calc(var(--i)*-1s)}
.motion-toggle{background:transparent;border:1px solid #77707c;border-radius:20px;padding:9px 14px;min-height:40px;font-size:11px}.motion-toggle:hover{background:var(--ink);color:var(--paper)}.hero-footer{gap:15px}.service-card{transition:transform .35s,box-shadow .35s}.service-card:hover{transform:translateY(-6px);box-shadow:0 15px 30px #0002}
@keyframes ball-float{0%,100%{translate:0 0}50%{translate:0 -15px}}@keyframes browser-drift{0%,100%{translate:0 0}50%{translate:0 12px}}@keyframes dots-drift{0%,100%{translate:0 0}50%{translate:12px -25px}}
.motion-paused *,.motion-paused *:before,.motion-paused *:after{animation-play-state:paused!important}.motion-paused .clay-stage{transform:none;transition:none}
@media(max-width:1100px){.clay-stage{scale:.88}.hero{column-gap:0}.hero h1{font-size:65px}.hero-footer>span{font-size:8px}}
@media(max-width:800px){.hero{grid-template-columns:1fr;min-height:0;padding-top:35px}.hero-copy{padding-bottom:10px}.hero h1{font-size:72px}.clay-stage{width:470px;max-width:100%;margin:20px auto 0;scale:1}.hero-footer{margin-top:0}.hero-footer>span{display:none}}
@media(max-width:640px){.hero h1{font-size:clamp(48px,12vw,70px)}.hero-copy{padding:10px 0 0}.hero-description{font-size:16px}.clay-stage{height:420px;transform:none!important;scale:.86;max-width:none;width:380px;left:50%;margin-left:-190px;margin-top:-5px;margin-bottom:-20px}.clay-browser{width:295px}.clay-screen{min-height:220px}.clay-screen strong{font-size:29px}.stage-orbit{width:360px;height:280px}.purple-ball{width:145px;height:145px;left:-8px;bottom:35px}.rose-ball{width:98px;height:98px;right:5px;top:0}.plum-ball{width:72px;height:72px;right:0;bottom:15px}.demo-shapes{height:65px}.demo-shapes i{width:53px;height:53px}.living-dots i:nth-child(n+7){display:none}.hero-footer{padding-top:18px}}
@media(prefers-reduced-motion:reduce){.clay-stage{transform:none!important;transition:none!important}*,*:before,*:after{animation:none!important;transition:none!important}.service-card:hover{transform:none}}
.tab-hidden *{animation-play-state:paused!important}
