.ks-hero{--ks-room:#f7f7f7;height:calc(100svh - var(--header-h) - var(--announce-h) - var(--toolbar-h));background:var(--color-paper);flex-direction:column;min-height:600px;max-height:1120px;display:flex;position:relative;overflow:hidden}.ks-stage{background:var(--ks-room);touch-action:pan-y;cursor:grab;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;outline:none;flex:auto;min-height:0;position:relative}.ks-stage:active{cursor:grabbing}.ks-stage:focus-visible{outline:2px solid var(--color-bordo-500);outline-offset:-4px}.ks-poster,.ks-poster img{width:100%;height:100%;display:block;position:absolute;inset:0}.ks-poster img{object-fit:cover;object-position:50% 50%;-webkit-user-drag:none}.ks-canvas,.ks-fade{width:100%;height:100%;display:block;position:absolute;inset:0}.ks-canvas{opacity:0;transition:opacity .6s ease-out}.ks-ready .ks-canvas{opacity:1}.ks-fade{opacity:0;pointer-events:none}.ks-line{z-index:2;max-width:21rem;color:var(--color-ink-soft);pointer-events:none;transition:opacity .4s var(--ease-out-strong);font-size:1rem;line-height:1.55;position:absolute;top:clamp(20px,4.5vh,48px);left:clamp(16px,3.4vw,56px)}.ks-label{z-index:2;border-top:1px solid var(--color-line-strong);width:min(23.5rem,50vw - 345px);padding-top:14px;transition:border-color .2s ease-out;position:absolute;bottom:clamp(96px,17vh,168px)}.ks-label-left{left:clamp(16px,3.4vw,56px)}.ks-label-right{right:clamp(16px,3.4vw,56px)}.ks-label-on{border-top-color:var(--color-bordo-700)}.ks-name{text-underline-offset:5px;align-items:center;gap:6px;text-decoration-thickness:1px;display:inline-flex}.ks-name:hover{text-decoration-line:underline}.ks-name-icon{color:var(--color-muted)}.ks-actions{flex-wrap:wrap;gap:8px;margin-top:18px;display:flex}.ks-actions-compact{grid-template-columns:1fr 1fr;margin-top:14px;display:grid}.ks-actions-compact>*{height:46px;padding-inline:10px}.ks-dock{z-index:2;pointer-events:none;justify-content:center;padding:0 16px clamp(18px,3.6vh,36px);display:flex;position:absolute;bottom:0;left:0;right:0}.ks-dock>*{pointer-events:auto}.ks-index{align-items:center;gap:10px;max-width:100%;display:flex}.ks-step{width:44px;height:44px;color:var(--color-ink);border:1px solid var(--color-line-strong);background:var(--color-paper);transition:background-color .2s var(--ease-out-strong), color .2s var(--ease-out-strong), border-color .2s var(--ease-out-strong), transform .16s var(--ease-out-strong);border-radius:999px;flex:none;justify-content:center;align-items:center;display:inline-flex}.ks-step:hover:not(:disabled){background:var(--color-ink);border-color:var(--color-ink);color:#fff}.ks-step:active:not(:disabled){transform:scale(.96)}.ks-step:disabled{color:var(--color-fog-300);cursor:default}.ks-chips{overscroll-behavior-x:contain;scrollbar-width:none;align-items:center;gap:8px;min-width:0;padding:6px 2px 8px;display:flex;overflow-x:auto}.ks-chips::-webkit-scrollbar{display:none}.ks-pair{flex:none;gap:1px;display:flex}.ks-chip{outline-offset:2px;width:30px;height:30px;transition:transform .2s var(--ease-out-strong);background-position:50%;background-size:cover;border-radius:4px;flex:none;position:relative}.ks-chip:before{content:"";position:absolute;inset:-7px 0}.ks-chip:after{content:"";background:0 0;height:2px;transition:background-color .2s ease-out;position:absolute;bottom:-6px;left:0;right:0}@media (hover:hover){.ks-chip:hover{transform:translateY(-2px)}}.ks-chip-on:after{background:var(--color-line-strong)}.ks-chip-sel:after{background:var(--color-bordo-700)}.ks-caption{width:100%}.ks-caption-single,.ks-captions{display:none}.ks-captions{grid-template-columns:1fr 1fr;gap:32px;width:100%;max-width:980px}.ks-captions .ks-caption{box-shadow:inset 0 1px 0 var(--color-line-strong);padding-top:14px;transition:box-shadow .2s ease-out}.ks-captions .ks-caption-on{box-shadow:inset 0 2px 0 var(--color-bordo-700)}@media (max-width:1199px){.ks-label{display:none}}.ks-line-dock{color:var(--color-ink-soft);font-size:.9375rem;display:none}@media (min-width:700px) and (max-width:1199px){.ks-line{display:none}.ks-line-dock{display:block}.ks-dock{background:var(--color-paper);flex-direction:column;align-items:center;gap:14px;padding:18px clamp(16px,3.4vw,56px);position:relative}.ks-captions{display:grid}}.ks-line-short{display:none}@media (max-width:699px){.ks-hero{min-height:540px}.ks-line{background:#ffffffe0;border-radius:6px;width:fit-content;max-width:none;padding:4px 10px;font-size:.875rem;line-height:1.45;top:12px;left:16px;right:16px}.ks-line-long{display:none}.ks-line-short{display:inline}.ks-touched .ks-line{opacity:0}.ks-dock{padding:14px 16px max(12px, env(safe-area-inset-bottom));background:var(--color-paper);flex-direction:column;gap:12px;position:relative}.ks-caption-single{display:block}.ks-index{gap:8px}.ks-chips{flex:auto;gap:6px}.ks-chip{width:28px;height:28px}}.ks-static{background:var(--ks-room);justify-content:center;align-items:center;gap:24px;padding:8% 0 14%;display:flex;position:absolute;inset:0}.ks-static-face{aspect-ratio:1.06/2.3;background-repeat:repeat;flex:none;height:100%}@media (prefers-reduced-motion:reduce){.ks-canvas,.ks-line{transition:none}.ks-chip:hover{transform:none}}.hm2-wall,.hm2-row,.hm2-atlas{--gutter:clamp(16px, 3.4vw, 56px)}.hm2-more{min-height:44px;color:var(--color-ink);text-decoration-line:underline;-webkit-text-decoration-color:var(--color-line-strong);-webkit-text-decoration-color:var(--color-line-strong);text-decoration-color:var(--color-line-strong);text-underline-offset:5px;transition:text-decoration-color .2s var(--ease-out-strong);align-items:center;gap:.45rem;font-size:.9375rem;font-weight:500;display:inline-flex}.hm2-more svg{transition:transform .2s var(--ease-out-strong)}@media (hover:hover){.hm2-more:hover{-webkit-text-decoration-color:var(--color-bordo-700);-webkit-text-decoration-color:var(--color-bordo-700);text-decoration-color:var(--color-bordo-700)}.hm2-more:hover svg{transform:translate(3px)}}.hm2-wall,.hm2-wall-only{display:none}.hm2-row{display:flex}@media (hover:hover) and (pointer:fine) and (min-width:1024px){.hm2-wall{display:flex}.hm2-wall-only{display:block}.hm2-row,.hm2-row-only{display:none}}.hm2-wall{--grow:10;--wall-h:clamp(440px, 64svh, 700px);gap:1px;list-style:none}@media (min-width:1280px){.hm2-wall{--grow:9}}@media (min-width:1680px){.hm2-wall{--grow:8}}.hm2-drop{min-width:0;transition:flex-grow .76s var(--ease-out-strong);flex:1 1 0;position:relative;overflow:clip}.hm2-drop[data-active=true]{flex-grow:var(--grow)}.hm2-drop-link{outline-offset:-2px;display:block}.hm2-frame{height:var(--wall-h);display:block;position:relative;overflow:hidden}.hm2-paper{opacity:0;transition:opacity .7s var(--ease-out-strong);background-position:0 0;background-repeat:repeat;display:block;position:absolute;inset:0}.hm2-paper[data-ready=true]{opacity:1}.hm2-room{clip-path:inset(0 0 100%);transition:clip-path .42s var(--ease-in-out-strong);display:block;position:absolute;inset:0}.hm2-drop[data-active=true] .hm2-room,.hm2-rdrop[data-active=true] .hm2-room{clip-path:inset(0);transition:clip-path .95s var(--ease-drop) .14s}.hm2-cap{opacity:0;width:clamp(340px,30vw,440px);height:136px;padding:22px 28px 0 20px;transition:opacity .16s;display:block}.hm2-drop:first-child .hm2-cap{width:calc(clamp(340px,30vw,440px) + max(0px,50vw - 800px));padding-left:calc(max(0px, (100vw - 1600px) / 2) + var(--gutter))}.hm2-drop[data-active=true] .hm2-cap{opacity:1;transition:opacity .42s var(--ease-out-strong) .24s}.hm2-wall[data-hang=armed] .hm2-frame,.hm2-row[data-hang=armed] .hm2-rframe{clip-path:inset(0 0 100%)}.hm2-wall[data-hang=hung] .hm2-frame,.hm2-row[data-hang=hung] .hm2-rframe{clip-path:inset(0);transition:clip-path 1s var(--ease-drop) calc(var(--i) * 55ms)}.hm2-row[data-hang=hung] .hm2-rframe{transition-delay:calc(min(var(--i), 4) * 90ms)}.hm2-row{padding:0 var(--gutter);overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scroll-padding-inline:var(--gutter);scrollbar-width:none;gap:1px;list-style:none;overflow-x:auto}.hm2-row::-webkit-scrollbar{display:none}@media (pointer:fine){.hm2-row{scrollbar-width:thin;scrollbar-color:var(--color-line-strong) transparent;padding-bottom:10px}.hm2-row::-webkit-scrollbar{height:6px;display:block}.hm2-row::-webkit-scrollbar-thumb{background:var(--color-line-strong)}}.hm2-row:after{content:"";flex:0 0 calc(var(--gutter) - 1px)}.hm2-rdrop{scroll-snap-align:start;flex:none;width:min(66vw,300px)}.hm2-rframe{aspect-ratio:9/16;display:block;position:relative;overflow:hidden}.hm2-atlas{--s:76px;--gx:16px;--lab:40px;--gy:14px;height:calc((var(--s) + var(--lab) + var(--gy)) * 3);position:relative;overflow:clip}@media (min-width:640px){.hm2-atlas{--s:96px;--gx:22px}}@media (hover:hover) and (pointer:fine) and (min-width:1024px){.hm2-atlas{--s:clamp(104px, 7.4vw, 128px);--gx:clamp(22px, 1.9vw, 30px);--lab:46px;--gy:16px;height:calc((var(--s) + var(--lab) + var(--gy)) * 3.45)}}.hm2-field{touch-action:pan-y;cursor:grab;-webkit-user-select:none;user-select:none;position:absolute;inset:0}.hm2-field[data-dragging=true]{cursor:grabbing}.hm2-field[data-dragging=true] .hm2-chip-link{pointer-events:none}.hm2-plane{will-change:transform;position:absolute;top:0;left:0}.hm2-col{width:calc(var(--s) + var(--gx));will-change:transform;position:absolute;top:0;left:0}.hm2-chip{width:calc(var(--s) + var(--gx));height:calc(var(--s) + var(--lab) + var(--gy));position:absolute;top:0;left:0}.hm2-chip-link{width:var(--s);-webkit-user-drag:none;-webkit-touch-callout:none;display:block}.hm2-sw{width:var(--s);height:var(--s);outline-offset:-1px;transition:outline-color .2s var(--ease-out-strong);outline:1px solid #0000;display:block;position:relative;overflow:hidden}.hm2-chip-code{color:var(--color-muted);transition:color .2s var(--ease-out-strong);margin-top:8px;font-size:.75rem;line-height:1.2;display:block}.hm2-chip-col{white-space:nowrap;text-overflow:ellipsis;color:var(--color-ink-soft);opacity:0;transition:opacity .2s var(--ease-out-strong);margin-top:4px;font-size:.6875rem;display:block;overflow:hidden}.hm2-chip-link:focus-visible .hm2-sw{outline-color:var(--color-ink)}.hm2-chip-link:focus-visible .hm2-chip-code{color:var(--color-bordo-700)}.hm2-chip-link:focus-visible .hm2-chip-col{opacity:1}@media (hover:hover) and (pointer:fine){.hm2-chip-link:hover .hm2-sw{outline-color:var(--color-ink)}.hm2-chip-link:hover .hm2-chip-code{color:var(--color-bordo-700)}.hm2-chip-link:hover .hm2-chip-col{opacity:1}}@media (prefers-reduced-motion:reduce){.hm2-drop,.hm2-room,.hm2-cap,.hm2-paper,.hm2-frame,.hm2-rframe{transition:none!important}}

