/* Mechanics of Data: complete topical plates, with content outside the artwork. */
.rw .vs-hero-art,.rw[data-theme=light] .vs-hero-art,.rw .vs-editorial-art{height:auto!important;min-height:0;aspect-ratio:auto;margin:0;padding:12px;overflow:hidden;border:1px solid var(--line);border-radius:3px 24px 3px 24px;background:#100e0c!important;isolation:isolate}
.rw .vs-hero-art img,.rw .vs-editorial-art .vs-editorial-image{position:relative!important;inset:auto!important;display:block;width:100%!important;height:auto!important;aspect-ratio:3/2;max-width:100%;object-fit:contain;object-position:center;mask-image:none!important;mix-blend-mode:normal;opacity:1}
.rw .vs-hero-art :is(.vs-diagram,.vs-hero-halo,.vs-registration),.rw .vs-editorial-art :is(.vs-diagram,.vs-art-glow,.vs-art-track){display:none}
.rw :is(.vs-hero-art,.vs-editorial-art,.hv-art,.iv-scene) :is(.sc-motion-canvas,.sc-soft-light){display:none}
.rw .vs-motion-service{padding-bottom:48px}.rw .vs-motion-service>.vs-motion-toggle{right:0;bottom:0}
.rw .vs-motion-editorial{padding-bottom:48px}.rw .vs-motion-editorial>.vs-motion-toggle{right:0;bottom:0}
.rw .vs-motion-toggle{background:var(--panel);color:var(--tx);border-color:var(--line-strong)}
.rw .vs-motion-toggle:hover{background:var(--panel);border-color:var(--acc)}
.rw .vs-motion-editorial{max-width:100%}
/* Match the reading column used to position the contents sidebar. */
.rw .rd>.vs-motion-editorial{width:100%;max-width:min(100%,900px);min-width:0;box-sizing:border-box}

/* A shared catalogue crop never cuts a diagram or device out of its plate. */
.rw[data-blog-covers] .bc-cover{aspect-ratio:3/2;background:#100e0c}
.rw[data-blog-covers] .bc-cover img{object-fit:contain;transform:none!important;filter:none!important}
.rw[data-blog-covers] .bc-cover:after{background:linear-gradient(110deg,transparent 32%,#ffffff30 50%,transparent 66%)}
.rw[data-blog-covers] .bc-corner{border-color:#b96430}
.rw[data-theme=light][data-blog-covers] .bloglist>.postcard{background:var(--panel)}
.rw .article .ax-art{background:#100e0c}
.rw .article .ax-art img{object-fit:contain;mask-image:none;opacity:1;transform:none!important}
.rw .article .ax-figure:not(:has(.ax-art))>figcaption{min-height:0;padding-right:0}

/* A collection's own scene shares a grid with its introduction, never its text. */
.rw .uv-collection{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);align-items:center;gap:clamp(24px,4vw,64px);margin:16px 0 28px;min-width:0}
.rw .uv-collection>*,.rw .uv-intro{min-width:0}
.rw .uv-collection .vs-motion-wrap,.rw .uv-utility{position:relative;padding-bottom:42px;width:100%;min-width:0;box-sizing:border-box}
.rw .uv-collection .vs-motion-toggle,.rw .uv-utility>.vs-motion-toggle{position:absolute;bottom:0;right:0;display:inline-flex;align-items:center;gap:8px;padding:9px 14px;border:1px solid var(--line-strong);border-radius:30px;cursor:pointer;font:inherit;font-size:11px}
.rw .uv-utility{max-width:480px;margin:24px 0 28px}
.rw .uv-utility-header .uv-utility{margin:0;justify-self:end}
.rw .uv-utility-header h1{margin-top:0}
@media(max-width:760px){.rw .uv-collection{grid-template-columns:minmax(0,1fr);gap:20px}.rw .uv-collection .vs-motion-wrap{max-width:520px}.rw .uv-utility{max-width:100%}}

/* The explanatory labels stay readable below a full image instead of covering it. */
.rw .vx-art,.rw .vx-compact .vx-art{height:auto;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding:12px;background:#100e0c;border-color:var(--line);border-radius:3px 24px 3px 24px}
.rw .vx-art:before,.rw .vx-art:after,.rw .vx-flow{display:none}
.rw .vx-image{position:relative;inset:auto;width:100%;height:auto;aspect-ratio:3/2;object-fit:contain;opacity:1;mask-image:none;grid-column:1/-1;max-width:100%}
.rw .vx-node,.rw .vx-node[data-vx-node],.rw .vx-scene[data-vx-kind] .vx-node[data-vx-node]{position:relative;left:auto;right:auto;top:auto;bottom:auto;max-width:100%;padding:10px 8px;box-shadow:none;background:none;backdrop-filter:none;color:#e8ded1;border:0;border-top:1px solid #f0d5b02b;border-radius:0;font-size:11px;animation:none}
.rw .vx-node>span{color:#e59a61}

/* Homepage uses the same plates; real project screenshots are untouched. */
.rw .hv-home .hv-art{height:auto;min-height:0;margin:0;padding:42px 0 64px;align-self:center;background:transparent!important;border-radius:0!important;color:var(--tx)}
.rw .hv-home .hv-art-image{position:relative;inset:auto;padding:12px;border-radius:3px 26px 3px 26px;background:#100e0c;overflow:hidden;transform:none!important}
.rw .hv-home .hv-art-image img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:contain;mask-image:none;mix-blend-mode:normal}
.rw .hv-home .hv-art-orbit,.rw .hv-home .hv-art-traces{display:none}
.rw .hv-home .hv-art figcaption,.rw[data-theme=light] .hv-home .hv-art figcaption{left:0;top:0;width:100%;color:var(--tx-mut);gap:16px;font-size:11px}
.rw .hv-home .hv-art-label{position:relative;inset:auto;display:inline-flex;margin:12px 10px 0 0;padding:5px 0;color:var(--tx-mut);background:none;border:0;text-shadow:none;font-size:11px;animation:none}
.rw .hv-home .hv-art-controls{left:0;bottom:7px}.rw .hv-home .hv-art-next,.rw[data-theme=light] .hv-home .hv-art-next{right:0;bottom:0;color:var(--tx);border-color:var(--line)}
.rw .hv-home .hv-motion-control,.rw[data-theme=light] .hv-home .hv-motion-control{color:var(--tx-mut);border-color:var(--line-strong)}
.rw .iv-scene{height:auto;aspect-ratio:3/2;margin:0;overflow:hidden;border-radius:3px 24px 3px 24px;background:#100e0c}
.rw .iv-scene .iv-scene-image{inset:0;width:100%;height:100%;object-fit:contain;mask-image:none}
.rw .iv-scene-index{color:#eed7bc;top:12px;right:12px;background:#100e0cd9;padding:4px 7px;border-radius:3px}
.rw .iv-scene-readout{color:#eed7bc;background:#100e0ce8;border-color:#eebd813d;bottom:10px;font-family:inherit}
@media(max-width:600px){
 .rw .vs-hero-art,.rw .vs-editorial-art{padding:7px;border-radius:3px 18px 3px 18px}
 .rw .hv-home .hero-grid>.hv-art{margin:18px 0 10px;max-width:100%;padding-top:36px;padding-bottom:57px}
 .rw .hv-home .hv-art-image{padding:7px}.rw .hv-home .hv-art figcaption{font-size:9px;gap:10px}
 .rw .hv-home .hv-art-label{font-size:10px;margin-right:8px;gap:5px}
 .rw .vx-art{padding:8px;gap:5px}.rw .vx-node{font-size:10px!important;padding:8px 5px!important}
 .rw .iv-scene-readout{font-size:8px;max-width:calc(100% - 20px);white-space:normal;text-align:center;bottom:6px;padding:7px 9px}
}
@media(prefers-reduced-motion:reduce){.rw :is(.vs-scene-image,.hv-art-image img,.iv-scene-image,.vx-image){animation:none!important;transform:none!important;transition:none!important}}

/* Scene paths follow the complete image, so the raster never shifts underneath them. */
.rw :is(.vs-scene-image,.hv-art-image img,.iv-scene-image,.vx-image){animation:none!important;transform:none!important}
.rw :is(.vs-hero-art,.vs-editorial-art,.vx-art,.hv-art-image,.iv-scene,.bc-cover,.ax-art){position:relative}
.rw .mm-canvas{position:absolute;z-index:2;pointer-events:none;user-select:none;max-width:none!important}
.rw .vx-node{z-index:3}
.rw .hv-home .hv-art-image{box-shadow:0 20px 70px -35px #ff6b302d}
.rw .vs-hero-art,.rw .vs-editorial-art{border-color:#dfb38124;box-shadow:0 20px 60px -40px #ff7e3426}
@media(prefers-reduced-motion:reduce){.rw .mm-canvas{display:none}}
