:root{color-scheme:light;--ink: #202831;--ink-strong: #111722;--muted: #66717f;--paper: #f7f8fb;--paper-strong: #ffffff;--line: #d9e0ea;--accent: #024dfd;--accent-soft: #dbe6ff;--mint: #dff7ef;--rose: #ffe4ef;--amber: #fff0cf;--cream: #fff7eb;--max: 1180px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:320px;background:var(--paper);color:var(--ink);font-family:var(--font-body),Inter,system-ui,sans-serif}body::selection{background:var(--accent);color:#fff}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.site-header{position:sticky;top:0;z-index:10;display:flex;align-items:center;justify-content:center;width:min(100%,var(--max));min-height:72px;margin:0 auto;padding:0 24px;background:color-mix(in srgb,var(--paper) 88%,transparent);backdrop-filter:blur(16px)}.hero-mark{display:inline-flex;align-items:baseline;justify-content:center;gap:.095em;font-family:var(--font-logo),Comfortaa,system-ui,sans-serif;letter-spacing:0}.hero-name{display:inline-flex;align-items:baseline}.hero-mark strong{color:var(--accent);font-weight:700}.hero-mark em{font-style:normal;font-weight:400}.inline-mark{display:inline-flex;align-items:baseline;gap:.095em;color:var(--ink-strong);font-family:var(--font-logo),Comfortaa,system-ui,sans-serif;letter-spacing:0;line-height:1;vertical-align:-.04em;white-space:nowrap}.inline-mark strong{color:var(--accent);font-weight:700}.inline-mark em{font-style:normal;font-weight:400}.site-nav{display:flex;align-items:center;justify-content:center;gap:clamp(18px,4vw,42px);color:var(--muted);font-size:.92rem;font-weight:600}.site-nav a{padding:10px 0}.site-nav a:hover,.site-nav a:focus-visible{color:var(--accent)}.hero{position:relative;isolation:isolate;display:grid;align-items:center;min-height:clamp(640px,calc(100svh - 72px),780px);overflow:hidden;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.hero:before{content:"";position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,color-mix(in srgb,var(--accent-soft) 45%,transparent) 1px,transparent 1px),linear-gradient(0deg,color-mix(in srgb,var(--accent-soft) 45%,transparent) 1px,transparent 1px),var(--paper-strong);background-size:80px 80px}.hero-content{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:0;width:min(100%,var(--max));margin:0 auto;padding:104px 24px 116px;text-align:center}.eyebrow{margin:0 0 18px;color:var(--accent);font-family:var(--font-display),system-ui,sans-serif;font-size:.78rem;font-weight:700;letter-spacing:0;text-transform:uppercase}h1,h2,h3,p{margin-top:0}h1{max-width:1080px;margin-inline:auto;margin-bottom:0;color:var(--ink-strong);font-size:clamp(5.25rem,10.6vw,9.25rem);line-height:.88}.hero-copy{max-width:900px;margin-inline:auto;margin-top:clamp(54px,7.2vw,82px);margin-bottom:0;color:var(--ink);font-family:var(--font-display),system-ui,sans-serif;font-size:clamp(1.08rem,1.45vw,1.28rem);font-weight:500;line-height:1.5}.hero-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:16px;margin-top:38px}.button{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:0 22px;border:1px solid var(--ink);border-radius:8px;font-weight:700;transition:transform .16s ease,background .16s ease,color .16s ease}.button:hover,.button:focus-visible{transform:translateY(-2px)}.button.primary{background:var(--ink);color:#fff}.button.secondary{background:color-mix(in srgb,white 80%,transparent);color:var(--ink)}.signal-strip{display:flex;justify-content:center;gap:20px;width:min(100%,var(--max));margin:0 auto;padding:28px 24px;color:var(--muted);font-size:.92rem;font-weight:600;text-align:center}.signal-strip p{margin:0}.signal-strip span{display:none}.section{width:min(100%,var(--max));margin:0 auto;padding:118px 24px}.section-heading{display:block;max-width:860px;margin-inline:auto;margin-bottom:46px;text-align:center}.section-heading h2,.contact-band h2{margin:0;color:var(--ink-strong);font-family:var(--font-display),system-ui,sans-serif;font-size:3.72rem;line-height:1.04}.section-heading.compact{max-width:860px;margin-inline:auto}.method-heading{max-width:900px}.method-heading p:not(.eyebrow){max-width:800px;margin:28px auto 0;color:var(--muted);font-size:1.13rem;line-height:1.55}.method-grid{display:grid;grid-template-columns:1fr;gap:14px;max-width:920px;margin:0 auto}.mascot-widget{position:fixed;right:clamp(12px,1.8vw,24px);bottom:clamp(12px,1.8vw,24px);z-index:30;width:clamp(112px,7.8vw,146px);max-width:146px;height:clamp(94px,6.65vw,122px);max-height:122px;pointer-events:none;--rocky-facing: 1;--rocky-tilt: 0deg;--rocky-look-x: 0px;--rocky-look-y: 0px}.mascot-salute{position:absolute;right:6%;bottom:calc(100% - 8px);z-index:4;max-width:min(190px,calc(100vw - 32px));padding:8px 11px;border:2px solid #17130f;border-radius:4px;background:#f8fff9;box-shadow:5px 5px color-mix(in srgb,#17130f 18%,transparent);color:#111316;font-family:var(--font-display),system-ui,sans-serif;font-size:.86rem;font-weight:900;line-height:1;opacity:0;pointer-events:none;transform:translateY(10px) scale(.88);transform-origin:92% 100%}.mascot-widget[data-bubble-side=right] .mascot-salute{right:auto;left:6%;transform-origin:8% 100%}.mascot-widget[data-bubble-side=top] .mascot-salute{right:50%;max-width:min(170px,calc(100vw - 24px));transform:translate(50%,10px) scale(.88);transform-origin:50% 100%}.mascot-salute:after{position:absolute;right:22px;bottom:-9px;width:12px;height:12px;border-right:2px solid #17130f;border-bottom:2px solid #17130f;background:inherit;content:"";transform:rotate(45deg)}.mascot-widget[data-bubble-side=right] .mascot-salute:after{right:auto;left:22px}.mascot-widget[data-bubble-side=top] .mascot-salute:after{right:calc(50% - 6px)}.mascot-widget[data-salute=true] .mascot-salute{opacity:1;animation:rocky-salute-pop 1.5s cubic-bezier(.2,.9,.2,1)}.mascot-widget[data-salute=true][data-bubble-side=top] .mascot-salute{animation:rocky-salute-pop-centered 1.5s cubic-bezier(.2,.9,.2,1)}.mascot-widget[data-salute-style=amaze] .mascot-salute{background:#ecfff6;box-shadow:5px 5px color-mix(in srgb,#43e6ac 34%,transparent);color:#102117}.mascot-widget[data-salute-style=bump] .mascot-salute{background:#f6fbff;box-shadow:5px 5px color-mix(in srgb,#024dfd 24%,transparent)}.mascot-widget[data-salute-style=question] .mascot-salute{background:#fffaf0;box-shadow:5px 5px color-mix(in srgb,#b99268 28%,transparent)}.mascot-widget[data-salute-style=encourage] .mascot-salute{background:#f7fff1;box-shadow:5px 5px color-mix(in srgb,#7bcf4f 28%,transparent)}.mascot-widget[data-salute-style=go] .mascot-salute{background:#eef4ff;box-shadow:5px 5px color-mix(in srgb,#024dfd 30%,transparent)}.mascot-widget[data-salute-style=joke] .mascot-salute{background:#fff6fb;box-shadow:5px 5px color-mix(in srgb,#ff8cb3 30%,transparent)}.mascot-widget[data-salute-style=grumble] .mascot-salute{background:#fff5ed;box-shadow:5px 5px color-mix(in srgb,#8b6040 30%,transparent)}.mascot-widget[data-salute-style=protect] .mascot-salute{background:#f2fbff;box-shadow:5px 5px color-mix(in srgb,#2fb7a8 28%,transparent)}.mascot-widget[data-salute-style=proud] .mascot-salute{background:#f9fff1;box-shadow:5px 5px color-mix(in srgb,#b3d85c 34%,transparent)}.mascot-widget[data-salute=true][data-salute-style=amaze] .mascot-salute{animation:rocky-salute-amaze 1.5s cubic-bezier(.2,.9,.2,1)}.mascot-widget[data-salute=true][data-salute-style=go] .mascot-salute{animation:rocky-salute-go 1.5s cubic-bezier(.2,.9,.2,1)}.mascot-widget[data-salute=true][data-salute-style=question] .mascot-salute{animation:rocky-salute-question 1.5s cubic-bezier(.2,.9,.2,1)}.mascot-widget[data-salute=true][data-salute-style=protect] .mascot-salute{animation:rocky-salute-protect 1.5s cubic-bezier(.2,.9,.2,1)}.mascot-widget[data-salute=true][data-salute-style=proud] .mascot-salute{animation:rocky-salute-proud 1.5s cubic-bezier(.2,.9,.2,1)}.mascot-widget[data-salute=true][data-bubble-side=top][data-salute-style=amaze] .mascot-salute,.mascot-widget[data-salute=true][data-bubble-side=top][data-salute-style=go] .mascot-salute,.mascot-widget[data-salute=true][data-bubble-side=top][data-salute-style=question] .mascot-salute,.mascot-widget[data-salute=true][data-bubble-side=top][data-salute-style=protect] .mascot-salute,.mascot-widget[data-salute=true][data-bubble-side=top][data-salute-style=proud] .mascot-salute{animation-name:rocky-salute-pop-centered}.mascot-toggle{position:relative;display:grid;place-items:center;width:100%;height:100%;padding:0;border:0;border-radius:8px;background:transparent;cursor:grab;pointer-events:auto;touch-action:none;transform-origin:50% 84%;animation:mascot-idle 6s ease-in-out infinite}.mascot-widget[data-dragging=true] .mascot-toggle{cursor:grabbing;animation-play-state:paused}.mascot-widget[data-dragging=true] .mascot-stage{animation:rocky-carried .52s steps(4,end) infinite}.mascot-widget[data-dragging=true] .rocky-ground{opacity:.28;transform:scaleX(.64)}.mascot-widget[data-mood=arrive] .mascot-toggle{animation:none;cursor:default}.mascot-toggle:focus-visible{outline:2px solid color-mix(in srgb,#5bf7ba 58%,transparent);outline-offset:3px}.mascot-stage{position:relative;display:grid;place-items:center;width:100%;height:100%;transform-origin:50% 84%}.mascot-shadow{position:absolute;right:16%;bottom:7%;left:12%;z-index:1;height:15px;border-radius:999px;background:color-mix(in srgb,#111316 16%,transparent);filter:blur(1px);opacity:.8;pointer-events:none;transform:scaleX(.86);transform-origin:50% 50%;transition:opacity .18s ease,transform .18s ease}.rocky-svg{position:relative;z-index:2;width:100%;max-width:none;overflow:visible;filter:drop-shadow(0 7px 0 color-mix(in srgb,#111316 10%,transparent)) drop-shadow(0 15px 16px color-mix(in srgb,#000 24%,transparent));pointer-events:none;shape-rendering:crispEdges;transform:scaleX(var(--rocky-facing)) rotate(var(--rocky-tilt));transform-origin:50% 70%}.rocky-svg *{transform-box:fill-box;transform-origin:center}.mascot-widget[data-facing=left]{--rocky-facing: -1}.mascot-widget[data-direction=up]{--rocky-tilt: -4deg}.mascot-widget[data-direction=down]{--rocky-tilt: 4deg}.mascot-widget[data-direction=left]{--rocky-tilt: -1.5deg}.mascot-widget[data-direction=right]{--rocky-tilt: 1.5deg}.mascot-widget[data-mood=fall][data-fall-drift=left]{--rocky-tilt: -7deg}.mascot-widget[data-mood=fall][data-fall-drift=right]{--rocky-tilt: 7deg}.rocky-svg path,.rocky-svg rect{stroke:#17130f;stroke-linejoin:miter;stroke-width:3}.rocky-ground{fill:color-mix(in srgb,#111316 18%,transparent);stroke-width:0;transform-origin:50% 50%;animation:rocky-ground-idle 6s ease-in-out infinite}.rocky-creature{transform-origin:50% 70%;animation:rocky-body-idle 6s ease-in-out infinite}.rocky-body,.sensor,.glow{transition:transform .18s ease,opacity .18s ease}.stone,.shell{fill:#9c7650}.stone-joint{fill:#8e6745}.dark{fill:#765235}.light{fill:#b99268}.top-plate{fill:#b0865e}.front-plate{fill:#96704c}.side-plate.left{fill:#7c593b}.face-plate{fill:#87613f}.side-plate.right{fill:#9f7650}.lower-plate{fill:#80603f}.facet-one{fill:#a87c54}.facet-two{fill:#7a5738}.facet-three{fill:#8b6646}.facet-four{fill:#b2875d}.stone-foot{fill:#8b6040}.band{fill:#5f3f2a}.glyph{fill:#33261c;stroke-width:0}.hatch,.crack,.ridge{fill:none;stroke:#33261c;stroke-linecap:square;stroke-linejoin:miter;stroke-width:2}.ridge{opacity:.46;stroke-width:1.5}.crater{fill:#493728;opacity:.62;stroke-width:0}.sensor{fill:#211811;opacity:.82;stroke-width:0}.glow{fill:#43e6ac;filter:url(#rocky-glow);opacity:.78;stroke-width:0;animation:rocky-glow-idle 2.9s steps(4,end) infinite}.glow.small{opacity:.58}.mascot-widget[data-attention=true] .rocky-body{transform:translate(var(--rocky-look-x),var(--rocky-look-y))}.mascot-widget[data-attention=true] .sensor{opacity:1;transform:translate(calc(var(--rocky-look-x) * 1.8),calc(var(--rocky-look-y) * 1.4)) scale(1.35)}.mascot-widget[data-attention=true] .glow{opacity:.96;transform:translate(calc(var(--rocky-look-x) * .9),calc(var(--rocky-look-y) * .8)) scale(1.08)}.mascot-pixel{position:absolute;z-index:3;width:8px;height:8px;border:2px solid #17130f;background:#43e6ac;image-rendering:pixelated;opacity:0;pointer-events:none}.pixel-one{top:22%;left:18%}.pixel-two{top:17%;right:20%}.pixel-three{right:34%;bottom:18%}.rocky-leg{transform-origin:50% 10%}.leg-back-left{transform-origin:86% 14%}.leg-mid-left{transform-origin:78% 12%}.leg-mid-right{transform-origin:22% 14%}.leg-back-right{transform-origin:18% 74%}.leg-front{transform-origin:50% 12%}.mascot-widget[data-mood=idle] .leg-back-left,.mascot-widget[data-mood=idle] .leg-mid-right{animation:rocky-foot-tap 6s ease-in-out infinite}.mascot-widget[data-mood=idle] .sensor{animation:rocky-idle-sensors 7.2s steps(6,end) infinite}.mascot-widget[data-mood=idle] .sensor-two,.mascot-widget[data-mood=idle] .sensor-five{animation-delay:.18s}.mascot-widget[data-mood=idle] .sensor-three,.mascot-widget[data-mood=idle] .sensor-six{animation-delay:.36s}.mascot-widget[data-mood=idle] .glow-core{animation:rocky-idle-core 7.2s steps(6,end) infinite}.mascot-widget[data-mood=arrive] .mascot-stage{animation:rocky-arrive-stage 1.18s cubic-bezier(.16,.9,.2,1) both}.mascot-widget[data-mood=arrive] .rocky-creature{animation:rocky-arrive-body 1.18s cubic-bezier(.16,.9,.2,1) both}.mascot-widget[data-mood=arrive] .rocky-ground,.mascot-widget[data-mood=arrive] .mascot-shadow{animation:rocky-arrive-shadow 1.18s cubic-bezier(.16,.9,.2,1) both}.mascot-widget[data-mood=arrive] .leg-back-left,.mascot-widget[data-mood=arrive] .leg-mid-right{animation:rocky-arrive-limb-a 1.18s cubic-bezier(.16,.9,.2,1) both}.mascot-widget[data-mood=arrive] .leg-mid-left,.mascot-widget[data-mood=arrive] .leg-back-right{animation:rocky-arrive-limb-b 1.18s cubic-bezier(.16,.9,.2,1) both}.mascot-widget[data-mood=arrive] .leg-front{animation:rocky-arrive-limb-front 1.18s cubic-bezier(.16,.9,.2,1) both}.mascot-widget[data-mood=arrive] .glow,.mascot-widget[data-mood=arrive] .sensor{animation:rocky-arrive-glow 1.18s steps(5,end) both}.mascot-widget[data-mood=walk] .mascot-stage{animation:rocky-stage-walk 1.18s steps(5,end) infinite}.mascot-widget[data-mood=walk] .rocky-creature{animation:rocky-body-walk 1.18s steps(5,end) infinite}.mascot-widget[data-mood=walk] .leg-back-left,.mascot-widget[data-mood=walk] .leg-mid-right{animation:rocky-leg-a 1.18s steps(5,end) infinite}.mascot-widget[data-mood=walk] .leg-mid-left,.mascot-widget[data-mood=walk] .leg-back-right{animation:rocky-leg-b 1.18s steps(5,end) infinite}.mascot-widget[data-mood=walk] .leg-front{animation:rocky-leg-front 1.18s steps(5,end) infinite}.mascot-widget[data-mood=walk][data-route=patrol] .mascot-stage{animation:rocky-stage-patrol 1.48s steps(6,end) infinite}.mascot-widget[data-mood=walk][data-route=patrol] .rocky-creature{animation:rocky-body-patrol 1.48s steps(6,end) infinite}.mascot-widget[data-mood=walk][data-route=recover] .mascot-stage{animation:rocky-stage-recover 1.32s steps(6,end) infinite}.mascot-widget[data-mood=walk][data-route=recover] .rocky-creature{animation:rocky-body-recover 1.32s steps(6,end) infinite}.mascot-widget[data-mood=walk][data-route=sidestep] .mascot-stage{animation:rocky-stage-sidestep 1.42s steps(6,end) infinite}.mascot-widget[data-mood=walk][data-route=sidestep] .rocky-creature{animation:rocky-body-sidestep 1.42s steps(6,end) infinite}.mascot-widget[data-mood=walk][data-route=skitter] .mascot-stage{animation:rocky-stage-skitter .76s steps(5,end) infinite}.mascot-widget[data-mood=walk][data-route=skitter] .rocky-creature{animation:rocky-body-skitter .76s steps(5,end) infinite}.mascot-widget[data-mood=walk][data-route=skitter] .leg-back-left,.mascot-widget[data-mood=walk][data-route=skitter] .leg-mid-right{animation:rocky-leg-skitter-a .76s steps(5,end) infinite}.mascot-widget[data-mood=walk][data-route=skitter] .leg-mid-left,.mascot-widget[data-mood=walk][data-route=skitter] .leg-back-right{animation:rocky-leg-skitter-b .76s steps(5,end) infinite}.mascot-widget[data-mood=walk][data-route=skitter] .leg-front{animation:rocky-leg-skitter-front .76s steps(5,end) infinite}.mascot-widget[data-mood=walk][data-route=shuffle] .mascot-stage{animation-duration:1.26s}.mascot-widget[data-mood=walk][data-direction=up] .mascot-stage{animation-name:rocky-stage-climb}.mascot-widget[data-mood=walk][data-direction=down] .mascot-stage{animation-name:rocky-stage-descend}.mascot-widget[data-mood=walk][data-direction=up] .rocky-creature{animation-name:rocky-body-climb}.mascot-widget[data-mood=walk][data-direction=down] .rocky-creature{animation-name:rocky-body-descend}.mascot-widget[data-mood=walk][data-direction=up] .leg-back-left,.mascot-widget[data-mood=walk][data-direction=up] .leg-mid-right{animation-name:rocky-leg-climb-a}.mascot-widget[data-mood=walk][data-direction=up] .leg-mid-left,.mascot-widget[data-mood=walk][data-direction=up] .leg-back-right{animation-name:rocky-leg-climb-b}.mascot-widget[data-mood=walk][data-direction=up] .leg-front{animation-name:rocky-leg-climb-front}.mascot-widget[data-mood=walk][data-direction=down] .leg-back-left,.mascot-widget[data-mood=walk][data-direction=down] .leg-mid-right{animation-name:rocky-leg-descend-a}.mascot-widget[data-mood=walk][data-direction=down] .leg-mid-left,.mascot-widget[data-mood=walk][data-direction=down] .leg-back-right{animation-name:rocky-leg-descend-b}.mascot-widget[data-mood=walk][data-direction=down] .leg-front{animation-name:rocky-leg-descend-front}.mascot-widget[data-mood=walk][data-route=recover] .mascot-stage{animation-name:rocky-stage-recover;animation-duration:1.32s}.mascot-widget[data-mood=walk][data-route=recover] .rocky-creature{animation-name:rocky-body-recover;animation-duration:1.32s}.mascot-widget[data-mood=walk][data-route=skitter] .mascot-stage{animation-name:rocky-stage-skitter;animation-duration:.76s}.mascot-widget[data-mood=walk][data-route=skitter] .rocky-creature{animation-name:rocky-body-skitter;animation-duration:.76s}.mascot-widget[data-mood=walk][data-route=skitter] .leg-back-left,.mascot-widget[data-mood=walk][data-route=skitter] .leg-mid-right{animation-name:rocky-leg-skitter-a;animation-duration:.76s}.mascot-widget[data-mood=walk][data-route=skitter] .leg-mid-left,.mascot-widget[data-mood=walk][data-route=skitter] .leg-back-right{animation-name:rocky-leg-skitter-b;animation-duration:.76s}.mascot-widget[data-mood=walk][data-route=skitter] .leg-front{animation-name:rocky-leg-skitter-front;animation-duration:.76s}.mascot-widget[data-mood=fall] .mascot-stage{animation:rocky-fall-stage .76s cubic-bezier(.18,.9,.2,1)}.mascot-widget[data-mood=fall] .rocky-creature{animation:rocky-fall-body .76s cubic-bezier(.18,.9,.2,1)}.mascot-widget[data-mood=fall] .rocky-ground{animation:rocky-ground-fall .76s cubic-bezier(.18,.9,.2,1)}.mascot-widget[data-mood=fall] .mascot-shadow{opacity:.9;transform:scaleX(1.16)}.mascot-widget[data-mood=fall] .leg-back-left,.mascot-widget[data-mood=fall] .leg-mid-right{animation:rocky-fall-limb-a .76s cubic-bezier(.18,.9,.2,1)}.mascot-widget[data-mood=fall] .leg-mid-left,.mascot-widget[data-mood=fall] .leg-back-right{animation:rocky-fall-limb-b .76s cubic-bezier(.18,.9,.2,1)}.mascot-widget[data-mood=fall] .leg-front{animation:rocky-fall-limb-front .76s cubic-bezier(.18,.9,.2,1)}.mascot-widget[data-mood=land] .mascot-stage{animation:rocky-land-stage .9s cubic-bezier(.2,.9,.2,1)}.mascot-widget[data-mood=land] .rocky-creature{animation:rocky-land-body .9s cubic-bezier(.2,.9,.2,1)}.mascot-widget[data-mood=land] .rocky-ground{animation:rocky-land-ground .9s cubic-bezier(.2,.9,.2,1)}.mascot-widget[data-mood=land] .mascot-shadow{opacity:.95;transform:scaleX(1.25)}.mascot-widget[data-mood=land][data-route=release] .mascot-stage{animation:rocky-release-land-stage .86s cubic-bezier(.18,.95,.2,1)}.mascot-widget[data-mood=land][data-route=release] .rocky-creature{animation:rocky-release-land-body .86s cubic-bezier(.18,.95,.2,1)}.mascot-widget[data-mood=land][data-route=release] .mascot-shadow{opacity:.98;transform:scaleX(1.34)}.mascot-widget[data-mood=think] .rocky-creature{animation:rocky-think 1.8s ease-in-out infinite}.mascot-widget[data-mood=think] .sensor{animation:rocky-think-sensors 1.8s steps(4,end) infinite}.mascot-widget[data-mood=signal] .glow,.mascot-widget[data-mood=scan] .glow{animation:rocky-signal-glow .8s steps(4,end) infinite}.mascot-widget[data-mood=signal] .mascot-stage{animation:rocky-signal-stage .9s steps(5,end) infinite}.mascot-widget[data-mood=signal] .rocky-creature{animation:rocky-signal-body .9s steps(5,end) infinite}.mascot-widget[data-mood=signal] .leg-back-right{animation:rocky-fist-bump .9s steps(5,end) infinite}.mascot-widget[data-mood=signal] .mascot-pixel{animation:rocky-sparks .8s steps(4,end) infinite}.mascot-widget[data-mood=signal] .pixel-two{animation-delay:80ms}.mascot-widget[data-mood=signal] .pixel-three{animation-delay:.16s}.mascot-widget[data-mood=amaze] .mascot-stage{animation:rocky-amaze-stage .95s steps(6,end) infinite}.mascot-widget[data-mood=amaze] .rocky-creature{animation:rocky-amaze-body .95s steps(6,end) infinite}.mascot-widget[data-mood=amaze] .leg-back-left,.mascot-widget[data-mood=amaze] .leg-back-right{animation:rocky-amaze-arms .95s steps(6,end) infinite}.mascot-widget[data-mood=amaze] .leg-mid-left,.mascot-widget[data-mood=amaze] .leg-mid-right{animation:rocky-amaze-legs .95s steps(6,end) infinite}.mascot-widget[data-mood=amaze] .glow,.mascot-widget[data-mood=amaze] .sensor{animation:rocky-amaze-glow .62s steps(4,end) infinite}.mascot-widget[data-mood=amaze] .mascot-pixel{animation:rocky-amaze-sparks .76s steps(5,end) infinite}.mascot-widget[data-mood=amaze] .pixel-two{animation-delay:.1s}.mascot-widget[data-mood=amaze] .pixel-three{animation-delay:.19s}.mascot-widget[data-mood=stretch] .rocky-creature{animation:rocky-stretch 1.4s ease-in-out infinite}.mascot-widget[data-mood=stretch] .leg-back-left,.mascot-widget[data-mood=stretch] .leg-back-right{animation:rocky-stretch-back 1.4s ease-in-out infinite}.mascot-widget[data-mood=stretch] .leg-mid-left,.mascot-widget[data-mood=stretch] .leg-mid-right{animation:rocky-stretch-mid 1.4s ease-in-out infinite}.mascot-widget[data-mood=nod] .rocky-body{animation:rocky-nod 1.1s ease-in-out infinite}.mascot-widget[data-mood=scan] .rocky-body{animation:rocky-scan 1.35s ease-in-out infinite}.mascot-widget[data-mood=scan] .sensor{animation:rocky-sensor-scan 1.35s steps(5,end) infinite}.mascot-widget[data-mood=observe] .rocky-creature{animation:rocky-observe 1.8s steps(5,end) infinite}.mascot-widget[data-mood=observe] .sensor{animation:rocky-sensor-chase 1.2s steps(6,end) infinite}.mascot-widget[data-mood=observe] .sensor-two,.mascot-widget[data-mood=observe] .sensor-five{animation-delay:.12s}.mascot-widget[data-mood=observe] .sensor-three,.mascot-widget[data-mood=observe] .sensor-six{animation-delay:.24s}.mascot-widget[data-mood=observe] .sensor-four{animation-delay:.36s}.mascot-widget[data-mood=observe] .glow{animation:rocky-observe-glow 1.2s steps(4,end) infinite}.mascot-widget[data-mood=peek] .mascot-stage{animation:rocky-peek-stage 1.3s steps(5,end) infinite}.mascot-widget[data-mood=peek] .rocky-creature{animation:rocky-peek-body 1.3s steps(5,end) infinite}.mascot-widget[data-mood=peek] .leg-back-right{animation:rocky-peek-fist 1.3s steps(5,end) infinite}.mascot-widget[data-mood=peek] .sensor,.mascot-widget[data-mood=peek] .glow{animation:rocky-peek-glow .9s steps(4,end) infinite}.mascot-widget[data-mood=guard] .mascot-stage{animation:rocky-guard-stage 1.6s steps(5,end) infinite}.mascot-widget[data-mood=guard] .rocky-creature{animation:rocky-guard-body 1.6s steps(5,end) infinite}.mascot-widget[data-mood=guard] .leg-front,.mascot-widget[data-mood=guard] .leg-mid-left,.mascot-widget[data-mood=guard] .leg-mid-right{animation:rocky-guard-brace 1.6s steps(5,end) infinite}.mascot-widget[data-mood=guard] .sensor{animation:rocky-guard-sensors 1.05s steps(6,end) infinite}.mascot-widget[data-mood=guard] .glow{animation:rocky-guard-glow 1.05s steps(4,end) infinite}.mascot-widget[data-mood=cheer] .mascot-stage{animation:rocky-cheer-stage 1.05s steps(6,end) infinite}.mascot-widget[data-mood=cheer] .rocky-creature{animation:rocky-cheer-body 1.05s steps(6,end) infinite}.mascot-widget[data-mood=cheer] .leg-back-left,.mascot-widget[data-mood=cheer] .leg-back-right{animation:rocky-cheer-arms 1.05s steps(6,end) infinite}.mascot-widget[data-mood=cheer] .leg-mid-left,.mascot-widget[data-mood=cheer] .leg-mid-right{animation:rocky-cheer-legs 1.05s steps(6,end) infinite}.mascot-widget[data-mood=cheer] .glow,.mascot-widget[data-mood=cheer] .sensor{animation:rocky-cheer-glow .7s steps(4,end) infinite}.mascot-widget[data-mood=cheer] .mascot-pixel{animation:rocky-cheer-sparks .82s steps(5,end) infinite}.mascot-widget[data-mood=cheer] .pixel-two{animation-delay:80ms}.mascot-widget[data-mood=cheer] .pixel-three{animation-delay:.15s}.mascot-widget[data-mood=curious] .mascot-stage{animation:rocky-curious-stage 1.35s steps(5,end) infinite}.mascot-widget[data-mood=curious] .rocky-creature{animation:rocky-curious-body 1.35s steps(5,end) infinite}.mascot-widget[data-mood=curious] .leg-front{animation:rocky-curious-foot 1.35s steps(5,end) infinite}.mascot-widget[data-mood=curious] .sensor{animation:rocky-curious-sensors 1s steps(5,end) infinite}.mascot-widget[data-mood=curious] .glow{animation:rocky-curious-glow 1s steps(4,end) infinite}.mascot-widget[data-mood=listen] .mascot-stage{animation:rocky-listen-stage 1.45s steps(5,end) infinite}.mascot-widget[data-mood=listen] .rocky-creature{animation:rocky-listen-body 1.45s steps(5,end) infinite}.mascot-widget[data-mood=listen] .leg-front,.mascot-widget[data-mood=listen] .leg-mid-left,.mascot-widget[data-mood=listen] .leg-mid-right{animation:rocky-listen-brace 1.45s steps(5,end) infinite}.mascot-widget[data-mood=listen] .sensor{animation:rocky-listen-sensors .9s steps(5,end) infinite}.mascot-widget[data-mood=listen] .glow{animation:rocky-listen-glow .9s steps(4,end) infinite}.mascot-widget[data-mood=orient] .mascot-stage{animation:rocky-orient-stage .68s steps(5,end) infinite}.mascot-widget[data-mood=orient] .rocky-creature{animation:rocky-orient-body .68s steps(5,end) infinite}.mascot-widget[data-mood=orient] .leg-front,.mascot-widget[data-mood=orient] .leg-mid-left,.mascot-widget[data-mood=orient] .leg-mid-right{animation:rocky-orient-brace .68s steps(5,end) infinite}.mascot-widget[data-mood=orient] .sensor{animation:rocky-orient-sensors .68s steps(5,end) infinite}.mascot-widget[data-mood=orient] .glow{animation:rocky-orient-glow .68s steps(4,end) infinite}.mascot-widget[data-mood=inspect] .mascot-stage{animation:rocky-inspect-stage 1.7s steps(7,end) infinite}.mascot-widget[data-mood=inspect] .rocky-creature{animation:rocky-inspect-body 1.7s steps(7,end) infinite}.mascot-widget[data-mood=inspect] .leg-front{animation:rocky-inspect-front 1.7s steps(7,end) infinite}.mascot-widget[data-mood=inspect] .leg-back-right{animation:rocky-inspect-signal 1.7s steps(7,end) infinite}.mascot-widget[data-mood=inspect] .sensor{animation:rocky-inspect-sensors .92s steps(6,end) infinite}.mascot-widget[data-mood=inspect] .glow{animation:rocky-inspect-glow .92s steps(5,end) infinite}.mascot-widget[data-mood=inspect] .mascot-pixel{animation:rocky-inspect-pixels 1.15s steps(5,end) infinite}.mascot-widget[data-mood=inspect] .pixel-two{animation-delay:.13s}.mascot-widget[data-mood=inspect] .pixel-three{animation-delay:.26s}.mascot-widget[data-mood=doze] .mascot-toggle{animation:none}.mascot-widget[data-mood=doze] .mascot-stage{animation:rocky-doze-stage 3.6s steps(6,end) infinite}.mascot-widget[data-mood=doze] .rocky-creature{animation:rocky-doze-body 3.6s steps(6,end) infinite}.mascot-widget[data-mood=doze] .leg-back-left,.mascot-widget[data-mood=doze] .leg-mid-left,.mascot-widget[data-mood=doze] .leg-mid-right,.mascot-widget[data-mood=doze] .leg-back-right{animation:rocky-doze-limbs 3.6s steps(6,end) infinite}.mascot-widget[data-mood=doze] .sensor{opacity:.32;animation:rocky-doze-sensors 3.6s steps(6,end) infinite}.mascot-widget[data-mood=doze] .glow{opacity:.38;animation:rocky-doze-glow 3.6s steps(6,end) infinite}.mascot-widget[data-mood=doze] .rocky-ground,.mascot-widget[data-mood=doze] .mascot-shadow{opacity:.48;transform:scaleX(.7)}@keyframes mascot-idle{0%,to{transform:translateY(0) rotate(0)}28%{transform:translateY(-4px) rotate(-1deg)}56%{transform:translateY(1px) rotate(1deg)}76%{transform:translateY(-2px) rotate(0)}}@keyframes rocky-salute-pop{0%,6%{opacity:1;transform:translateY(10px) scale(.88)}18%,to{opacity:1;transform:translateY(0) scale(1)}}@keyframes rocky-salute-pop-centered{0%,6%{opacity:1;transform:translate(50%,10px) scale(.88)}18%,to{opacity:1;transform:translate(50%) scale(1)}}@keyframes rocky-salute-amaze{0%,6%{opacity:1;transform:translateY(10px) scale(.84) rotate(-2deg)}18%{opacity:1;transform:translateY(-2px) scale(1.06) rotate(1deg)}32%,to{opacity:1;transform:translateY(0) scale(1) rotate(0)}}@keyframes rocky-salute-go{0%,6%{opacity:1;transform:translate(-8px,10px) scale(.9)}18%,to{opacity:1;transform:translate(0) scale(1)}}@keyframes rocky-salute-question{0%,6%{opacity:1;transform:translateY(8px) rotate(-3deg) scale(.9)}24%{opacity:1;transform:translateY(0) rotate(2deg) scale(1)}42%,to{opacity:1;transform:translateY(0) rotate(0) scale(1)}}@keyframes rocky-salute-protect{0%,6%{opacity:1;transform:translateY(7px) scale(.92)}20%{opacity:1;transform:translateY(1px) scale(1.01)}36%,to{opacity:1;transform:translateY(0) scale(1)}}@keyframes rocky-salute-proud{0%,6%{opacity:1;transform:translateY(10px) scale(.88) rotate(1deg)}18%{opacity:1;transform:translateY(-3px) scale(1.04) rotate(-1deg)}34%,to{opacity:1;transform:translateY(0) scale(1) rotate(0)}}@keyframes rocky-ground-idle{0%,to{opacity:.76;transform:scaleX(1)}46%{opacity:.48;transform:scaleX(.82)}}@keyframes rocky-carried{0%,to{transform:translateY(-4px) rotate(-2deg)}34%{transform:translateY(-10px) rotate(3deg)}68%{transform:translateY(-6px) rotate(-1deg)}}@keyframes rocky-body-idle{0%,to{transform:translateY(0) rotate(0)}42%{transform:translateY(-3px) rotate(-1deg)}70%{transform:translateY(1px) rotate(.8deg)}}@keyframes rocky-glow-idle{0%,to{opacity:.68}50%{opacity:.96}}@keyframes rocky-foot-tap{0%,78%,to{transform:translateY(0) rotate(0)}86%{transform:translateY(-5px) rotate(-4deg)}}@keyframes rocky-idle-sensors{0%,64%,to{opacity:.82;transform:translate(0) scale(1)}70%{opacity:1;transform:translate(1px,-1px) scale(1.28)}76%{opacity:.48;transform:translate(-1px) scale(.86)}82%{opacity:.96;transform:translateY(1px) scale(1.14)}}@keyframes rocky-idle-core{0%,62%,to{opacity:.72}74%{opacity:1}82%{opacity:.54}}@keyframes rocky-arrive-stage{0%{opacity:0;transform:translate(34px,-126px) scale(.78) rotate(-10deg)}16%{opacity:1}52%{transform:translate(-6px,13px) scale(1.06,.9) rotate(4deg)}70%{transform:translate(3px,-10px) scale(.96,1.06) rotate(-2deg)}86%{transform:translate(-1px,3px) scale(1.02,.98) rotate(.8deg)}to{opacity:1;transform:translate(0) scale(1) rotate(0)}}@keyframes rocky-arrive-body{0%{transform:rotate(-5deg) scale(.96,1.05)}48%{transform:rotate(5deg) scale(1.08,.86)}70%{transform:rotate(-2.5deg) scale(.94,1.08)}to{transform:rotate(0) scale(1)}}@keyframes rocky-arrive-shadow{0%{opacity:0;transform:scaleX(.35)}52%{opacity:.96;transform:scaleX(1.32)}74%{opacity:.56;transform:scaleX(.78)}to{opacity:.78;transform:scaleX(1)}}@keyframes rocky-arrive-limb-a{0%{transform:rotate(25deg) translate(7px,-10px)}52%{transform:rotate(-13deg) translate(-4px,8px)}78%{transform:rotate(8deg) translate(3px,-5px)}to{transform:rotate(0) translate(0)}}@keyframes rocky-arrive-limb-b{0%{transform:rotate(-26deg) translate(-7px,-9px)}52%{transform:rotate(14deg) translate(5px,8px)}78%{transform:rotate(-8deg) translate(-2px,-5px)}to{transform:rotate(0) translate(0)}}@keyframes rocky-arrive-limb-front{0%{transform:translateY(-9px) scaleY(.92)}52%{transform:translateY(12px) scaleY(1.15)}78%{transform:translateY(-6px) scaleY(.93)}to{transform:translateY(0) scaleY(1)}}@keyframes rocky-arrive-glow{0%,30%{opacity:.35}52%{opacity:1}70%{opacity:.52}to{opacity:.82}}@keyframes rocky-stage-walk{0%,to{transform:translate(0)}20%{transform:translate(-4px)}40%{transform:translate(3px)}60%{transform:translate(-2px)}80%{transform:translate(4px)}}@keyframes rocky-stage-patrol{0%,to{transform:translate(0) rotate(0)}18%{transform:translate(-2px,-1px) rotate(-.6deg)}36%{transform:translate(3px,1px) rotate(.8deg)}54%{transform:translate(-1px,-2px) rotate(-.4deg)}72%{transform:translate(2px) rotate(.5deg)}}@keyframes rocky-body-patrol{0%,to{transform:translateY(0) rotate(0)}24%{transform:translateY(-1px) rotate(-.8deg)}48%{transform:translateY(2px) rotate(.7deg)}72%{transform:translateY(-1px) rotate(.3deg)}}@keyframes rocky-stage-recover{0%,to{transform:translateY(0) rotate(0)}18%{transform:translateY(3px) rotate(1.6deg)}36%{transform:translateY(-2px) rotate(-1.2deg)}58%{transform:translateY(2px) rotate(.8deg)}78%{transform:translateY(-1px) rotate(-.5deg)}}@keyframes rocky-body-recover{0%,to{transform:translateY(0) scale(1) rotate(0)}20%{transform:translateY(3px) scale(1.02,.97) rotate(1.4deg)}42%{transform:translateY(-2px) scale(.99,1.02) rotate(-1.1deg)}68%{transform:translateY(1px) scale(1.01,.99) rotate(.5deg)}}@keyframes rocky-stage-sidestep{0%,to{transform:translate(0) rotate(0)}18%{transform:translate(-3px) translateY(1px) rotate(-1.2deg)}36%{transform:translate(4px) translateY(-2px) rotate(1deg)}58%{transform:translate(-2px) translateY(0) rotate(-.5deg)}78%{transform:translate(3px) translateY(-1px) rotate(.7deg)}}@keyframes rocky-body-sidestep{0%,to{transform:translateY(0) scale(1) rotate(0)}22%{transform:translateY(2px) scale(1.03,.97) rotate(-1deg)}44%{transform:translateY(-2px) scale(.98,1.03) rotate(1.1deg)}68%{transform:translateY(1px) scale(1.02,.98) rotate(-.5deg)}}@keyframes rocky-stage-skitter{0%,to{transform:translate(0) rotate(0)}18%{transform:translate(-5px,-3px) rotate(-2.4deg)}38%{transform:translate(6px,2px) rotate(2deg)}58%{transform:translate(-3px,-1px) rotate(-1.2deg)}78%{transform:translate(4px,1px) rotate(1.4deg)}}@keyframes rocky-body-skitter{0%,to{transform:translateY(0) scale(1) rotate(0)}18%{transform:translateY(-2px) scale(.98,1.05) rotate(-2deg)}38%{transform:translateY(2px) scale(1.05,.96) rotate(1.8deg)}62%{transform:translateY(-1px) scale(.99,1.03) rotate(-.8deg)}}@keyframes rocky-leg-skitter-a{0%,to{transform:rotate(0) translate(0)}22%{transform:rotate(-15deg) translate(-3px,-4px)}48%{transform:rotate(12deg) translate(4px,2px)}72%{transform:rotate(-7deg) translate(-2px,-1px)}}@keyframes rocky-leg-skitter-b{0%,to{transform:rotate(0) translate(0)}20%{transform:rotate(13deg) translate(3px,-3px)}46%{transform:rotate(-14deg) translate(-4px,2px)}74%{transform:rotate(8deg) translate(2px,-1px)}}@keyframes rocky-leg-skitter-front{0%,to{transform:translateY(0) scaleY(1)}22%{transform:translateY(-5px) scaleY(.95)}46%{transform:translateY(4px) scaleY(1.08)}72%{transform:translateY(-2px) scaleY(.98)}}@keyframes rocky-stage-climb{0%,to{transform:translateY(0)}20%{transform:translateY(5px) rotate(-1deg)}42%{transform:translateY(-5px) rotate(1deg)}64%{transform:translateY(4px) rotate(1.5deg)}82%{transform:translateY(-3px) rotate(-1deg)}}@keyframes rocky-stage-descend{0%,to{transform:translateY(0)}24%{transform:translateY(7px) rotate(1.4deg)}44%{transform:translateY(1px) rotate(-1deg)}68%{transform:translateY(8px) rotate(-1.5deg)}86%{transform:translateY(2px) rotate(1deg)}}@keyframes rocky-body-walk{0%,to{transform:translateY(0) rotate(0)}20%{transform:translateY(4px) rotate(-1.6deg)}40%{transform:translateY(-2px) rotate(1.2deg)}60%{transform:translateY(3px) rotate(1.7deg)}80%{transform:translateY(-1px) rotate(-1deg)}}@keyframes rocky-body-climb{0%,to{transform:translateY(0) scale(1) rotate(0)}25%{transform:translateY(-3px) scale(.99,1.02) rotate(-1.4deg)}50%{transform:translateY(3px) scale(1.02,.98) rotate(1.2deg)}75%{transform:translateY(-2px) scale(.99,1.01) rotate(-.8deg)}}@keyframes rocky-body-descend{0%,to{transform:translateY(0) scale(1) rotate(0)}24%{transform:translateY(5px) scale(1.03,.96) rotate(1.5deg)}48%{transform:translateY(-1px) scale(.99,1.02) rotate(-1deg)}72%{transform:translateY(6px) scale(1.04,.95) rotate(-1.4deg)}}@keyframes rocky-leg-a{0%,to{transform:rotate(-7deg) translate(0)}40%{transform:rotate(12deg) translate(4px,-6px)}80%{transform:rotate(-3deg) translate(-2px,3px)}}@keyframes rocky-leg-climb-a{0%,to{transform:rotate(-11deg) translateY(1px)}34%{transform:rotate(9deg) translate(1px,-9px)}68%{transform:rotate(-4deg) translate(-1px,5px)}}@keyframes rocky-leg-descend-a{0%,to{transform:rotate(-5deg) translateY(2px)}32%{transform:rotate(15deg) translate(4px,6px)}66%{transform:rotate(-12deg) translate(-3px,-5px)}}@keyframes rocky-leg-b{0%,to{transform:rotate(10deg) translate(2px,-5px)}40%{transform:rotate(-8deg) translate(-3px,2px)}80%{transform:rotate(7deg) translate(1px,-4px)}}@keyframes rocky-leg-climb-b{0%,to{transform:rotate(11deg) translateY(-8px)}34%{transform:rotate(-9deg) translate(-1px,4px)}68%{transform:rotate(6deg) translate(1px,-7px)}}@keyframes rocky-leg-descend-b{0%,to{transform:rotate(12deg) translate(1px,-3px)}32%{transform:rotate(-13deg) translate(-4px,5px)}66%{transform:rotate(9deg) translate(2px,-7px)}}@keyframes rocky-leg-front{0%,to{transform:translateY(0) scaleY(1)}20%,60%{transform:translateY(-6px) scaleY(.97)}40%,80%{transform:translateY(3px) scaleY(1.03)}}@keyframes rocky-leg-climb-front{0%,to{transform:translateY(2px) scaleY(1.04)}25%,65%{transform:translateY(-8px) scaleY(.94)}45%,85%{transform:translateY(6px) scaleY(1.08)}}@keyframes rocky-leg-descend-front{0%,to{transform:translateY(5px) scaleY(1.08)}30%,70%{transform:translateY(-5px) scaleY(.95)}50%,88%{transform:translateY(8px) scaleY(1.12)}}@keyframes rocky-fall-stage{0%{transform:translateY(-12px) rotate(-4deg)}42%{transform:translateY(22px) rotate(7deg)}68%{transform:translateY(8px) rotate(-3deg)}to{transform:translateY(0) rotate(0)}}@keyframes rocky-fall-body{0%{transform:scale(1.02,.98) rotate(-2deg)}44%{transform:scale(.96,1.06) rotate(5deg)}70%{transform:scale(1.04,.96) rotate(-3deg)}to{transform:scale(1) rotate(0)}}@keyframes rocky-ground-fall{0%{opacity:.34;transform:scaleX(.72)}45%{opacity:.86;transform:scaleX(1.16)}to{opacity:.7;transform:scaleX(1)}}@keyframes rocky-fall-limb-a{0%{transform:rotate(-4deg) translateY(-4px)}42%{transform:rotate(24deg) translate(6px,9px)}70%{transform:rotate(-16deg) translate(-4px,-5px)}to{transform:rotate(0) translate(0)}}@keyframes rocky-fall-limb-b{0%{transform:rotate(6deg) translateY(-5px)}44%{transform:rotate(-25deg) translate(-6px,8px)}72%{transform:rotate(14deg) translate(4px,-6px)}to{transform:rotate(0) translate(0)}}@keyframes rocky-fall-limb-front{0%{transform:translateY(-5px) scaleY(.96)}44%{transform:translateY(11px) scaleY(1.1)}70%{transform:translateY(-7px) scaleY(.92)}to{transform:translateY(0) scaleY(1)}}@keyframes rocky-land-stage{0%{transform:translateY(-18px) rotate(var(--rocky-tilt))}34%{transform:translateY(9px) rotate(-2deg)}58%{transform:translateY(-5px) rotate(1deg)}82%{transform:translateY(2px) rotate(0)}to{transform:translateY(0) rotate(0)}}@keyframes rocky-land-body{0%{transform:scale(.98,1.04) rotate(-1deg)}36%{transform:scale(1.08,.88) rotate(2deg)}60%{transform:scale(.96,1.05) rotate(-1.2deg)}to{transform:scale(1) rotate(0)}}@keyframes rocky-land-ground{0%{opacity:.25;transform:scaleX(.58)}34%{opacity:.9;transform:scaleX(1.22)}to{opacity:.7;transform:scaleX(1)}}@keyframes rocky-release-land-stage{0%{transform:translateY(-14px) rotate(var(--rocky-tilt))}24%{transform:translateY(11px) rotate(calc(var(--rocky-tilt) * -.5))}48%{transform:translateY(-7px) rotate(1.6deg)}72%{transform:translateY(3px) rotate(-.8deg)}to{transform:translateY(0) rotate(0)}}@keyframes rocky-release-land-body{0%{transform:scale(.97,1.06) rotate(-1.4deg)}28%{transform:scale(1.11,.84) rotate(2.2deg)}52%{transform:scale(.94,1.08) rotate(-1.4deg)}76%{transform:scale(1.03,.97) rotate(.7deg)}to{transform:scale(1) rotate(0)}}@keyframes rocky-think{0%,to{transform:translateY(0) rotate(0)}40%{transform:translateY(-4px) rotate(-4deg)}72%{transform:translateY(-1px) rotate(2deg)}}@keyframes rocky-think-sensors{0%,to{opacity:.42;transform:translateY(0) scale(1)}50%{opacity:1;transform:translateY(-1px) scale(1.35)}}@keyframes rocky-signal-glow{0%,to{opacity:.6}50%{opacity:1}}@keyframes rocky-signal-stage{0%,to{transform:translateY(0) rotate(0)}25%{transform:translateY(-5px) rotate(-2deg)}50%{transform:translateY(2px) rotate(1.5deg)}75%{transform:translateY(-2px) rotate(-1deg)}}@keyframes rocky-signal-body{0%,to{transform:translateY(0) scale(1) rotate(0)}28%{transform:translateY(-4px) scale(.98,1.04) rotate(-2deg)}54%{transform:translateY(2px) scale(1.03,.96) rotate(1deg)}78%{transform:translateY(-2px) scale(1) rotate(-1deg)}}@keyframes rocky-fist-bump{0%,to{transform:rotate(0) translate(0)}18%{transform:rotate(10deg) translate(-2px,3px)}42%{transform:rotate(-22deg) translate(5px,-13px)}72%{transform:rotate(-15deg) translate(3px,-9px)}}@keyframes rocky-sparks{0%,to{opacity:0;transform:translate(0) scale(.6)}35%{opacity:1;transform:translate(-5px,-12px) scale(1)}70%{opacity:.8;transform:translate(7px,-20px) scale(.85)}}@keyframes rocky-amaze-stage{0%,to{transform:translateY(0) rotate(0)}16%{transform:translateY(-8px) rotate(-3deg)}32%{transform:translateY(3px) rotate(2deg)}52%{transform:translateY(-10px) rotate(3deg)}72%{transform:translateY(2px) rotate(-2deg)}}@keyframes rocky-amaze-body{0%,to{transform:translateY(0) scale(1) rotate(0)}18%{transform:translateY(-5px) scale(.96,1.06) rotate(-4deg)}38%{transform:translateY(2px) scale(1.05,.94) rotate(3deg)}58%{transform:translateY(-7px) scale(.96,1.07) rotate(4deg)}78%{transform:translateY(1px) scale(1.03,.97) rotate(-2deg)}}@keyframes rocky-amaze-arms{0%,to{transform:rotate(0) translate(0)}26%{transform:rotate(-24deg) translate(4px,-13px)}52%{transform:rotate(20deg) translate(-3px,-9px)}76%{transform:rotate(-18deg) translate(4px,-12px)}}@keyframes rocky-amaze-legs{0%,to{transform:rotate(0) translate(0)}30%{transform:rotate(12deg) translate(2px,-6px)}58%{transform:rotate(-10deg) translate(-2px,5px)}82%{transform:rotate(8deg) translate(1px,-4px)}}@keyframes rocky-amaze-glow{0%,to{opacity:.58;transform:scale(1)}50%{opacity:1;transform:scale(1.24)}}@keyframes rocky-amaze-sparks{0%,to{opacity:0;transform:translate(0) scale(.6)}22%{opacity:1;transform:translate(-10px,-16px) scale(1)}48%{opacity:.9;transform:translate(9px,-27px) scale(.85)}74%{opacity:.7;transform:translate(-3px,-35px) scale(.7)}}@keyframes rocky-stretch{0%,to{transform:translateY(0) scale(1)}45%{transform:translateY(6px) scale(1.07,.93)}70%{transform:translateY(-5px) scale(.96,1.04)}}@keyframes rocky-stretch-back{0%,to{transform:rotate(0)}45%{transform:rotate(13deg) translateY(7px)}}@keyframes rocky-stretch-mid{0%,to{transform:rotate(0)}45%{transform:rotate(-10deg) translateY(5px)}}@keyframes rocky-nod{0%,to{transform:translateY(0) rotate(0)}40%{transform:translateY(6px) rotate(2deg)}70%{transform:translateY(-3px) rotate(-1deg)}}@keyframes rocky-scan{0%,to{transform:translate(0) rotate(0)}35%{transform:translate(-5px) rotate(-2deg)}70%{transform:translate(5px) rotate(2deg)}}@keyframes rocky-sensor-scan{0%,to{opacity:.38;transform:translate(-2px) scale(1)}35%{opacity:1;transform:translate(2px) scale(1.35)}70%{opacity:.78;transform:translate(5px) scale(1.18)}}@keyframes rocky-observe{0%,to{transform:translateY(0) rotate(0)}28%{transform:translateY(-2px) rotate(-2deg)}62%{transform:translateY(1px) rotate(2deg)}}@keyframes rocky-sensor-chase{0%,to{opacity:.36;transform:scale(1)}45%{opacity:1;transform:scale(1.45)}}@keyframes rocky-observe-glow{0%,to{opacity:.54}50%{opacity:.98}}@keyframes rocky-peek-stage{0%,to{transform:translate(0) translateY(0) rotate(0)}22%{transform:translate(6px) translateY(-2px) rotate(2deg)}44%{transform:translate(-4px) translateY(-5px) rotate(-2deg)}68%{transform:translate(4px) translateY(-1px) rotate(1deg)}}@keyframes rocky-peek-body{0%,to{transform:translateY(0) rotate(0)}30%{transform:translateY(-3px) rotate(-4deg)}58%{transform:translateY(2px) rotate(3deg)}}@keyframes rocky-peek-fist{0%,to{transform:rotate(0) translate(0)}36%{transform:rotate(-14deg) translate(3px,-8px)}66%{transform:rotate(-8deg) translate(1px,-5px)}}@keyframes rocky-peek-glow{0%,to{opacity:.52;transform:scale(1)}50%{opacity:1;transform:scale(1.18)}}@keyframes rocky-guard-stage{0%,to{transform:translate(0) rotate(0)}22%{transform:translate(-2px,2px) rotate(-1deg)}42%{transform:translate(3px,1px) rotate(1deg)}66%{transform:translate(-1px) rotate(-.5deg)}}@keyframes rocky-guard-body{0%,to{transform:translateY(0) scale(1) rotate(0)}28%{transform:translateY(4px) scale(1.04,.94) rotate(-1deg)}54%{transform:translateY(2px) scale(1.02,.97) rotate(1deg)}78%{transform:translateY(3px) scale(1.03,.95) rotate(0)}}@keyframes rocky-guard-brace{0%,to{transform:rotate(0) translate(0)}34%{transform:rotate(7deg) translate(2px,4px)}68%{transform:rotate(-5deg) translate(-2px,3px)}}@keyframes rocky-guard-sensors{0%,to{opacity:.72;transform:translate(-1px) scale(.96)}30%{opacity:1;transform:translate(3px) scale(1.34)}60%{opacity:.86;transform:translate(-3px) scale(1.12)}}@keyframes rocky-guard-glow{0%,to{opacity:.62;transform:scale(1)}40%{opacity:1;transform:scale(1.2)}70%{opacity:.78;transform:scale(1.08)}}@keyframes rocky-cheer-stage{0%,to{transform:translateY(0) rotate(0)}18%{transform:translateY(-7px) rotate(-2deg)}38%{transform:translateY(2px) rotate(2deg)}58%{transform:translateY(-5px) rotate(1deg)}78%{transform:translateY(0) rotate(-1deg)}}@keyframes rocky-cheer-body{0%,to{transform:translateY(0) scale(1) rotate(0)}18%{transform:translateY(-5px) scale(.96,1.08) rotate(-2deg)}38%{transform:translateY(3px) scale(1.06,.92) rotate(2deg)}62%{transform:translateY(-3px) scale(.98,1.04) rotate(1deg)}}@keyframes rocky-cheer-arms{0%,to{transform:rotate(0) translate(0)}22%{transform:rotate(-18deg) translate(2px,-10px)}48%{transform:rotate(14deg) translate(-2px,-6px)}72%{transform:rotate(-10deg) translate(1px,-8px)}}@keyframes rocky-cheer-legs{0%,to{transform:rotate(0) translate(0)}28%{transform:rotate(8deg) translate(2px,-4px)}56%{transform:rotate(-8deg) translate(-2px,3px)}}@keyframes rocky-cheer-glow{0%,to{opacity:.7;transform:scale(1)}36%{opacity:1;transform:scale(1.32)}68%{opacity:.9;transform:scale(1.12)}}@keyframes rocky-cheer-sparks{0%,to{opacity:0;transform:translate(0) scale(.7)}18%{opacity:1;transform:translate(-4px,-8px) scale(1)}42%{opacity:.82;transform:translate(5px,-16px) scale(1.1)}70%{opacity:0;transform:translate(8px,-24px) scale(.8)}}@keyframes rocky-curious-stage{0%,to{transform:translate(0) rotate(0)}22%{transform:translate(3px,-2px) rotate(1deg)}44%{transform:translate(-2px,-3px) rotate(-1deg)}68%{transform:translate(2px,-1px) rotate(.5deg)}}@keyframes rocky-curious-body{0%,to{transform:translateY(0) rotate(0) scale(1)}30%{transform:translateY(-2px) rotate(-3deg) scale(1.02,.98)}58%{transform:translateY(1px) rotate(3deg) scale(.99,1.02)}}@keyframes rocky-curious-foot{0%,to{transform:translateY(0) rotate(0)}34%{transform:translateY(-6px) rotate(-6deg)}64%{transform:translateY(2px) rotate(4deg)}}@keyframes rocky-curious-sensors{0%,to{opacity:.58;transform:translate(-1px) scale(1)}32%{opacity:1;transform:translate(3px,-1px) scale(1.42)}62%{opacity:.82;transform:translate(-3px,1px) scale(1.16)}}@keyframes rocky-curious-glow{0%,to{opacity:.58;transform:scale(1)}44%{opacity:1;transform:scale(1.22)}72%{opacity:.74;transform:scale(1.08)}}@keyframes rocky-listen-stage{0%,to{transform:translateY(0) rotate(0)}24%{transform:translateY(2px) rotate(-.8deg)}48%{transform:translateY(-2px) rotate(.6deg)}72%{transform:translateY(1px) rotate(-.4deg)}}@keyframes rocky-listen-body{0%,to{transform:translateY(0) scale(1) rotate(0)}28%{transform:translateY(2px) scale(1.03,.96) rotate(-1.1deg)}54%{transform:translateY(-1px) scale(.99,1.02) rotate(.8deg)}78%{transform:translateY(1px) scale(1.01,.99) rotate(-.4deg)}}@keyframes rocky-listen-brace{0%,to{transform:rotate(0) translate(0)}36%{transform:rotate(4deg) translate(1px,2px)}68%{transform:rotate(-3deg) translate(-1px,1px)}}@keyframes rocky-listen-sensors{0%,to{opacity:.62;transform:translate(-1px) scale(.96)}34%{opacity:1;transform:translate(2px) scale(1.32)}68%{opacity:.82;transform:translate(-2px) scale(1.1)}}@keyframes rocky-listen-glow{0%,to{opacity:.56;transform:scale(1)}42%{opacity:.98;transform:scale(1.18)}74%{opacity:.76;transform:scale(1.06)}}@keyframes rocky-orient-stage{0%,to{transform:translateY(0) rotate(0)}34%{transform:translateY(2px) rotate(-.8deg)}68%{transform:translateY(-1px) rotate(.5deg)}}@keyframes rocky-orient-body{0%,to{transform:translateY(0) scale(1) rotate(0)}36%{transform:translateY(3px) scale(1.04,.94) rotate(-1deg)}70%{transform:translateY(1px) scale(1.02,.97) rotate(.6deg)}}@keyframes rocky-orient-brace{0%,to{transform:rotate(0) translate(0)}44%{transform:rotate(5deg) translate(1px,3px)}72%{transform:rotate(-3deg) translate(-1px,1px)}}@keyframes rocky-orient-sensors{0%,to{opacity:.72;transform:translate(0) scale(1)}38%{opacity:1;transform:translate(3px) scale(1.35)}70%{opacity:.92;transform:translate(-1px) scale(1.18)}}@keyframes rocky-orient-glow{0%,to{opacity:.62;transform:scale(.96)}42%{opacity:1;transform:scale(1.18)}}@keyframes rocky-inspect-stage{0%,to{transform:translateY(0) rotate(0)}16%{transform:translateY(-3px) rotate(-1.2deg)}34%{transform:translate(3px,-2px) rotate(1deg)}56%{transform:translate(-3px,-1px) rotate(-.8deg)}78%{transform:translateY(1px) rotate(.4deg)}}@keyframes rocky-inspect-body{0%,to{transform:translateY(0) scale(1) rotate(0)}20%{transform:translateY(-2px) scale(1.02,.98) rotate(-2deg)}44%{transform:translate(3px) scale(.99,1.02) rotate(2.4deg)}68%{transform:translate(-2px) scale(1.01,.99) rotate(-1.6deg)}}@keyframes rocky-inspect-front{0%,to{transform:translateY(0) rotate(0)}24%{transform:translateY(-8px) rotate(-8deg)}48%{transform:translateY(1px) rotate(4deg)}}@keyframes rocky-inspect-signal{0%,to{transform:rotate(0) translate(0)}26%{transform:rotate(-18deg) translate(-3px,-6px)}52%{transform:rotate(10deg) translate(2px,3px)}}@keyframes rocky-inspect-sensors{0%,to{opacity:.58;transform:translate(-2px) scale(.96)}22%{opacity:1;transform:translate(3px,-1px) scale(1.48)}46%{opacity:.72;transform:translate(0) scale(1.08)}70%{opacity:1;transform:translate(-3px,1px) scale(1.38)}}@keyframes rocky-inspect-glow{0%,to{opacity:.5;transform:scale(.92)}24%{opacity:1;transform:scale(1.28)}54%{opacity:.7;transform:scale(1.02)}78%{opacity:.96;transform:scale(1.18)}}@keyframes rocky-inspect-pixels{0%,to{opacity:0;transform:translate(0) scale(.75)}22%{opacity:1;transform:translate(-3px,-8px) scale(1)}48%{opacity:.74;transform:translate(5px,-14px) scale(1.08)}72%{opacity:0;transform:translate(7px,-22px) scale(.82)}}@keyframes rocky-doze-stage{0%,to{transform:translateY(4px) rotate(0)}48%{transform:translateY(7px) rotate(-.8deg)}}@keyframes rocky-doze-body{0%,to{transform:translateY(7px) scale(1.04,.86) rotate(0)}48%{transform:translateY(9px) scale(1.06,.82) rotate(.8deg)}}@keyframes rocky-doze-limbs{0%,to{transform:rotate(8deg) translate(2px,6px)}48%{transform:rotate(11deg) translate(3px,8px)}}@keyframes rocky-doze-sensors{0%,to{opacity:.24;transform:translateY(1px) scale(.72)}48%{opacity:.42;transform:translateY(0) scale(.86)}}@keyframes rocky-doze-glow{0%,to{opacity:.28;transform:scale(.82)}48%{opacity:.48;transform:scale(.96)}}.method-card{position:relative;display:grid;grid-template-areas:"meta title" "meta copy";grid-template-columns:minmax(120px,.24fr) minmax(0,1fr);column-gap:clamp(24px,4vw,56px);row-gap:12px;align-items:start;min-height:158px;padding:clamp(24px,3.1vw,34px);border:1px solid var(--line);border-radius:8px;background:var(--paper-strong);text-align:left}.method-card:nth-child(2){background:color-mix(in srgb,var(--mint) 54%,white)}.method-card:nth-child(3){background:color-mix(in srgb,var(--amber) 58%,white)}.method-card:nth-child(4){background:color-mix(in srgb,var(--rose) 54%,white)}.method-meta{grid-area:meta;display:grid;gap:12px;justify-items:start;align-self:stretch;margin-bottom:0;color:var(--muted);font-size:.78rem;font-weight:700;text-transform:uppercase}.method-meta span:last-child{max-width:16ch;text-align:left}.method-meta span:first-child{display:inline-grid;place-items:center;width:42px;height:42px;border:1px solid var(--line);border-radius:999px;background:color-mix(in srgb,white 70%,transparent);color:var(--ink-strong)}.method-card h3{grid-area:title;max-width:640px;margin-bottom:0;font-family:var(--font-display),system-ui,sans-serif;font-size:clamp(1.5rem,2.55vw,2.2rem);line-height:1.04}.method-card p{grid-area:copy;max-width:620px}.method-card p,.contact-band p{margin-bottom:0;color:var(--muted);font-size:1.02rem;line-height:1.55}.method-note{display:grid;place-items:center;max-width:920px;margin:18px auto 0;padding:20px 24px;border:1px solid var(--line);border-radius:8px;background:color-mix(in srgb,white 72%,transparent);text-align:center}.method-note p{margin:0;color:var(--ink-strong);font-family:var(--font-display),system-ui,sans-serif;font-size:1.04rem;font-weight:700;line-height:1.35}.principles-section{display:block;padding-top:118px;padding-bottom:124px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);text-align:center}.principle-list{display:grid;gap:0;max-width:820px;margin:0 auto;padding:0;list-style:none;counter-reset:principles}.principle-list li{counter-increment:principles;display:grid;grid-template-columns:46px 1fr;align-items:center;min-height:72px;padding:18px 0;border-bottom:1px solid var(--line);color:var(--ink-strong);font-family:var(--font-display),system-ui,sans-serif;font-size:1.45rem;font-weight:600;text-align:left}.principle-list li:before{content:counter(principles,decimal-leading-zero);color:var(--accent);font-family:var(--font-body),system-ui,sans-serif;font-size:.84rem;font-weight:800}.contact-band{display:flex;align-items:center;justify-content:center;gap:clamp(24px,5vw,56px);width:min(calc(100% - 48px),1080px);margin:54px auto 42px;padding:54px 48px;border:1px solid var(--ink);border-radius:8px;background:var(--ink);color:#fff;text-align:center}.contact-band .eyebrow,.contact-band h2{color:#fff}.contact-band .button.primary{border-color:#fff;background:#fff;color:var(--ink)}@media(max-width:820px){.site-header{min-height:66px;padding-inline:18px}.site-nav{gap:14px;font-size:.84rem}.hero{min-height:610px}.hero-content,.section{padding-inline:18px}.hero-content{padding-top:84px;padding-bottom:92px}h1{font-size:6.2rem}.hero-copy{max-width:640px;margin-top:60px;font-size:1.16rem}.hero-actions{margin-top:32px}.section{padding-top:88px;padding-bottom:88px}.section-heading h2,.contact-band h2{font-size:2.9rem}.section-heading,.principles-section{grid-template-columns:1fr}.method-grid{grid-template-columns:1fr;max-width:760px}.method-card{grid-template-columns:minmax(94px,.22fr) minmax(0,1fr)}.method-meta{min-height:0}.contact-band{width:calc(100% - 36px);align-items:center;flex-direction:column;padding:38px 24px}}@media(max-width:560px){.site-header{min-height:60px}.hero{min-height:560px}.hero-content{padding-top:64px;padding-bottom:72px}h1{font-size:4.35rem;margin-bottom:0}.hero-copy{max-width:360px;margin-top:46px;margin-bottom:0;font-size:1.02rem}.hero-actions{width:min(100%,340px);margin-top:28px}.button{width:100%}.signal-strip{padding-inline:18px}.section{padding-top:72px;padding-bottom:72px}.section-heading{margin-bottom:30px}.section-heading h2,.contact-band h2{font-size:2.18rem}.method-heading p:not(.eyebrow){margin-top:20px;font-size:1rem}.method-grid{grid-template-columns:1fr}.method-card{grid-template-areas:"meta" "title" "copy";grid-template-columns:1fr;row-gap:16px;min-height:0;padding:20px}.method-meta{display:flex;align-items:center;justify-content:space-between;gap:16px}.method-meta span:last-child{max-width:none;text-align:right}.method-card h3{font-size:1.35rem}.principle-list li{grid-template-columns:38px 1fr;min-height:62px;padding:14px 0;font-size:1.16rem}.mascot-widget{right:12px;bottom:12px;width:clamp(104px,28vw,120px);max-width:120px;height:clamp(88px,23vw,100px);max-height:100px}.mascot-toggle{width:100%;height:100%}.mascot-salute{max-width:min(150px,calc(100vw - 24px));font-size:.72rem}}@media(prefers-reduced-motion:reduce){.mascot-toggle,.mascot-stage,.rocky-creature,.rocky-ground,.rocky-leg,.rocky-body,.sensor,.glow,.mascot-pixel,.mascot-salute{animation:none!important;transition:none!important}.mascot-salute{transform:translateY(0) scale(1)}.mascot-widget[data-bubble-side=top] .mascot-salute{transform:translate(50%) scale(1)}}
