/* A visitor's Motion choice is shared by the homepage and the island. */
.motion-off *, .motion-off *::before, .motion-off *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
.intro-motion-toggle{font-size:11px;color:#c6c7c7;margin:0 auto 16px;min-height:36px;display:block;text-decoration:underline;text-underline-offset:4px}
.intro .gesture-icon{display:none}
.intro-motion-status{font-size:11px;line-height:1.6;color:#b8bbbf;min-height:36px;max-width:400px;margin:8px auto 0;text-wrap:pretty}
.intro-control-buttons{flex-wrap:wrap;gap:12px;justify-content:center}
.intro-sub{margin-top:8px}
.intro-browser-link{font-size:11px;min-height:40px;margin:10px auto 0;text-decoration:underline;text-underline-offset:4px;white-space:normal;max-width:100%}
.intro-copy-url{display:block;width:100%;padding:9px;background:#111318;color:#f2f0eb;border:1px solid #303238;border-radius:4px;font-size:11px;margin-top:8px}
.intro-controls #introMotionStatus{font-size:11px;line-height:1.6}
@media(max-width:700px){.intro-controls{bottom:calc(6% + env(safe-area-inset-bottom));width:min(560px,94%)}.intro-controls #introHint{font-size:13px}.intro-motion-status{font-size:11px;min-height:54px;max-width:310px}.intro-motion-toggle{margin-bottom:10px}.intro-control-buttons .button{min-height:44px}.intro-meter{margin-block:14px}.intro-footnote{display:none}}
@media(max-height:550px){.intro-controls{bottom:calc(12px + env(safe-area-inset-bottom));padding-top:0}.intro-motion-status{min-height:0;max-width:560px}.intro-motion-toggle{margin:0 auto 2px;min-height:28px}.intro-meter{margin-block:8px}.intro-control-buttons{gap:10px}.intro-control-buttons .button{min-height:36px;padding-block:7px}.intro-heading{top:27%}.intro-heading h2{font-size:32px}}

.intro-feedback{margin:10px auto 0;max-width:330px}.intro-feedback .button{min-height:40px;font-size:12px;padding:8px 16px}.intro-feedback p{font-size:10px;line-height:1.5;color:#a3a6ad;margin-top:6px;min-height:30px}.intro-controls{max-height:calc(100svh - 105px);overflow-y:auto;scrollbar-width:none}.intro-controls::-webkit-scrollbar{display:none}.intro.key-awarded .intro-heading{display:none!important}@media(max-width:700px){.intro-controls{bottom:calc(18px + env(safe-area-inset-bottom));padding-top:8px}.intro-motion-status{min-height:36px}.intro-feedback{margin-top:6px}.intro-meter{margin-block:10px}.intro-copy-url{font-size:12px}}@media(max-height:550px){.intro-feedback{margin-top:2px;display:flex;align-items:center;gap:8px;max-width:100%;justify-content:center}.intro-feedback p{max-width:220px;margin:0;min-height:0}.intro-feedback .button{min-height:32px;padding-block:5px}.intro-controls{bottom:8px;max-height:calc(100svh - 75px)}.intro-motion-status{margin-top:2px}.intro-motion-toggle{margin-bottom:0}.intro-heading{top:24%}}

@media(max-width:700px){.intro-controls .intro-sub{display:none}.intro-motion-toggle{min-height:28px;margin-bottom:4px}.intro-controls #introHint{font-size:12px;line-height:1.5}.intro-controls #introMotionStatus{font-size:10px;line-height:1.4;min-height:28px;margin-top:4px}.intro-feedback p{min-height:0;margin-top:4px}.intro-feedback .button{min-height:36px}.intro-feedback{margin-top:6px}}@media(max-width:700px) and (max-height:700px){.intro-heading{top:27%}}

/* The primary gesture starts resonance and supported haptics. */
.intro-feedback #introStart{min-height:46px;padding:11px 22px;font-size:13px}.intro-feedback #introStart:disabled{opacity:.7;cursor:default}.intro-feedback .intro-mute{display:block;margin:5px auto 0;padding:5px 10px;min-height:30px;font-size:11px;color:#b8bbbf;text-decoration:underline;text-underline-offset:4px}.intro-feedback p{min-height:0}.intro-control-buttons{margin-top:4px}
@media(max-height:550px){.intro-feedback{display:block}.intro-feedback p{max-width:100%;margin:4px auto 0}.intro-feedback #introStart{min-height:40px;padding-block:8px}.intro-feedback .intro-mute{min-height:24px;padding-block:2px}}

/* A stationary press forms the sand; release preserves the shape. */
.intro-hold{user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}
.intro-hold #introStart{touch-action:none;transition:background .2s,box-shadow .2s,transform .2s;min-width:164px;border-radius:40px}
.intro-hold.holding #introStart{background:#dfd2b2;box-shadow:0 0 0 5px #d4c39718,0 0 28px #d4c39720;transform:scale(.98)}
.intro-hold .intro-motion-status{min-height:30px}
@media(max-width:700px){.intro-hold .intro-feedback #introStart{min-height:50px}.intro-hold .intro-controls #introHint{font-size:13px}}
