.moose-module{--sh-ink:#273d2c;--sh-muted:#69735f;--sh-serif:'Prata',Georgia,serif;--sh-editorial:'Lora',Georgia,serif;--sh-sans:'Manrope',sans-serif;color:var(--sh-ink);font-family:var(--sh-sans);max-width:1380px;margin:auto;padding:64px 44px 35px;scroll-margin-top:90px;box-sizing:border-box}
.moose-module *,.moose-module *:before,.moose-module *:after{box-sizing:border-box}.moose-module button{font-family:var(--sh-sans)}.moose-module a{color:inherit}.moose-module :is(a,button):focus-visible{outline:3px solid #9f742e;outline-offset:5px}
.moose-module .shoko-layout{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.45fr);gap:24px;align-items:center}.moose-module .shoko-copy{padding:20px 0 32px 24px;min-width:0}.moose-module .shoko-eyebrow{display:flex;align-items:center;gap:10px;font:400 10px/1.5 var(--sh-sans);letter-spacing:.16em;text-transform:uppercase;color:var(--sh-muted);margin:0 0 26px}.moose-module .shoko-eyebrow>span{font:400 24px/1 var(--sh-editorial);color:#82916c}
.moose-module h2{font:400 clamp(32px,3.9vw,54px)/1.25 var(--sh-serif);letter-spacing:-.045em;margin:0 0 24px;text-wrap:balance}.moose-module h2 em{display:block;font-family:var(--sh-editorial);font-style:italic;font-weight:400;color:#637956;letter-spacing:-.035em}.moose-module .shoko-intro{font:400 17px/1.7 var(--sh-editorial);max-width:330px;margin:0 0 25px;color:var(--sh-muted);text-wrap:pretty}.moose-module .shoko-instruction{font:400 12px/1.9 var(--sh-sans);max-width:345px;margin:0 0 23px;text-wrap:pretty}.moose-module .shoko-tour{display:inline-flex;align-items:center;gap:24px;text-decoration:underline;text-underline-offset:7px;text-decoration-thickness:1px;font:400 13px/1.8 var(--sh-editorial);padding:8px 0}.moose-module .shoko-tour span{font:400 20px/1 var(--sh-sans)}
.moose-module .shoko-figure{margin:0;min-width:0}.moose-module .shoko-scene{height:570px;position:relative;isolation:isolate;background:radial-gradient(ellipse at 58% 48%,#cbd5bd99 0%,#dce3d065 38%,#e9ecdf22 61%,transparent 73%);border-radius:45%;overflow:visible}.moose-module .shoko-scene canvas{position:absolute;inset:0;width:100%;height:100%;opacity:0;transition:opacity .6s;z-index:1}.moose-module .shoko-poster{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;border-radius:24px;opacity:1;transition:opacity .4s}.moose-module .shoko-scene.ready canvas{opacity:1}.moose-module .shoko-scene.ready .shoko-poster{visibility:hidden;opacity:0;pointer-events:none}.moose-module .shoko-controls{position:relative;z-index:4;text-align:center;padding:20px 0 0}
.moose-module .shoko-feed{display:inline-flex;align-items:center;justify-content:center;gap:11px;background:#304a32;color:#f8f6ed;min-height:49px;padding:12px 26px;border:1px solid transparent;border-radius:4px;font-size:12px;line-height:1.5;letter-spacing:.015em;cursor:pointer;transition:background .2s,transform .2s}.moose-module .shoko-feed:hover:not(:disabled){background:#425f3d;transform:translateY(-1px)}.moose-module .shoko-feed:disabled{background:#75836b;cursor:default}.moose-module .shoko-feed>span{font:400 23px/1 var(--sh-editorial)}.moose-module #status{font:400 11px/1.7 var(--sh-editorial);color:#707c65;margin:11px 0 0;min-height:20px}
.moose-module .shoko-handle{position:absolute;width:116px;height:84px;left:0;top:0;border-radius:40%;border:1px dashed transparent;background:transparent;z-index:5;cursor:grab;touch-action:none;transform:translate(-50%,-50%);padding:0}.moose-module .shoko-handle:active{cursor:grabbing}.moose-module .shoko-handle[hidden]{display:none}.moose-module .shoko-handle>span{position:absolute;width:170px;top:calc(100% + 14px);left:50%;transform:translateX(-50%);font:500 12px/1.5 var(--sh-editorial);text-align:center;color:#40583b;pointer-events:none;opacity:1}.moose-module .shoko-handle>span:before{content:"↑";position:absolute;bottom:calc(100% + 2px);left:calc(50% - 6px);font:400 18px/1 var(--sh-sans)}.moose-module .shoko-handle:hover,.moose-module .shoko-handle:focus-visible{border-color:#8b9b6c85}.moose-module .shoko-handle:hover>span,.moose-module .shoko-handle:focus-visible>span{opacity:1}.moose-module .tracking .shoko-handle{border-color:transparent}.moose-module .tracking .shoko-handle>span{visibility:hidden}
.moose-module .shoko-target{width:88px;height:88px;position:absolute;left:0;top:0;border:1px solid #788f58bb;box-shadow:0 0 0 7px #f8fbf033;border-radius:50%;transform:translate(-50%,-50%);opacity:0;pointer-events:none;z-index:3;transition:opacity .2s}.moose-module .shoko-target>span{position:absolute;top:-25px;width:100%;text-align:center;font:400 11px/1.5 var(--sh-editorial);color:#4d653b}.moose-module .tracking .shoko-target{opacity:.7}.moose-module .tracking .shoko-target.near{opacity:1;background:#eff5d731;border-width:2px}.moose-module .shoko-note{text-align:center;font:400 10px/1.8 var(--sh-editorial);color:#7a8371;margin:26px auto 0;max-width:680px;text-wrap:pretty}.moose-module .shoko-credit{text-align:center;margin:10px 0 0;font:400 8px/1.7 var(--sh-sans);color:#7c8674}.moose-module .shoko-credit a{text-decoration:none}.moose-module .shoko-credit a:hover{text-decoration:underline}.moose-module .shoko-nojs{position:absolute;bottom:12px;padding:10px;font-size:12px}
.demo-page{margin:0;background:#f6f5ed;color:#273d2c;font-family:'Manrope',sans-serif;-webkit-font-smoothing:antialiased}.demo-page .masthead{box-sizing:border-box;max-width:1292px;margin:auto;min-height:104px;padding:22px 24px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #d9ddce;gap:24px}.demo-page .brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:inherit;font:400 17px/1.17 'Prata',Georgia,serif;letter-spacing:-.03em}.demo-page .brand img{object-fit:contain}.demo-page .chapter{font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:#6d7766}.demo-page .moose-module{padding-top:22px}.demo-page .demo-footer{max-width:1244px;padding:18px 0 24px;border-top:1px solid #d9ddce;margin:auto;font-size:9px;text-align:center;color:#7c8674}.demo-page .demo-footer a{color:inherit}
@media(max-width:1100px){.moose-module{padding:48px 28px 28px}.moose-module .shoko-layout{gap:12px;grid-template-columns:minmax(0,.95fr) minmax(0,1.2fr)}.moose-module .shoko-copy{padding-left:0}.moose-module h2{font-size:40px}.moose-module .shoko-scene{height:510px}.moose-module .shoko-intro{font-size:15px}.moose-module .shoko-instruction{font-size:11px}.moose-module .shoko-handle{width:100px;height:76px}}
@media(max-width:800px){.moose-module .shoko-layout{grid-template-columns:minmax(0,.95fr) minmax(0,1.15fr);gap:16px}.moose-module h2{font-size:32px}.moose-module .shoko-intro{font-size:14px}.moose-module .shoko-scene{height:450px}.moose-module .shoko-feed{font-size:11px;padding-inline:17px}}
@media(max-width:620px){.moose-module{padding:38px 18px 24px}.moose-module .shoko-layout{display:flex;flex-direction:column;gap:0}.moose-module .shoko-copy{width:100%;padding:0 6px}.moose-module .shoko-eyebrow{font-size:8px;letter-spacing:.12em;margin-bottom:15px;gap:7px}.moose-module .shoko-eyebrow>span{font-size:18px}.moose-module h2{font-size:34px;line-height:1.23;margin-bottom:14px}.moose-module h2 em{display:inline}.moose-module .shoko-intro{font-size:13px;line-height:1.65;margin-bottom:14px;max-width:300px}.moose-module .shoko-instruction{font-size:10px;line-height:1.85;max-width:100%;margin-bottom:10px}.moose-module .shoko-tour{font-size:11px;gap:16px;padding:6px 0}.moose-module .shoko-figure{width:100%;margin-top:10px}.moose-module .shoko-scene{height:365px;border-radius:38%}.moose-module .shoko-controls{padding-top:32px}.moose-module .shoko-feed{min-height:46px;padding-inline:22px;font-size:11px}.moose-module #status{font-size:10px;margin-top:9px}.moose-module .shoko-handle{width:100px;height:72px}.moose-module .shoko-handle>span{width:132px;top:calc(100% + 6px);font-size:10.5px}.moose-module .shoko-target{width:96px;height:96px}.moose-module .shoko-note{font-size:9px;margin-top:20px}.moose-module .shoko-credit{font-size:8px}.demo-page .masthead{min-height:71px;margin-inline:22px;padding:12px 0;gap:12px}.demo-page .brand{font-size:14px;gap:8px}.demo-page .brand img{width:32px;height:39px}.demo-page .chapter{font-size:8px;max-width:100px;text-align:right;letter-spacing:.08em}.demo-page .moose-module{padding-top:26px}.demo-page .demo-footer{margin-inline:24px}}
@media(max-width:350px){.moose-module{padding-inline:14px}.moose-module h2{font-size:29px}.moose-module .shoko-scene{height:330px}.moose-module .shoko-intro{font-size:12px}}
@media(prefers-reduced-motion:reduce){.moose-module *,.moose-module *:before,.moose-module *:after{transition:none!important;animation:none!important}}
