.vivlio3d{position:relative;isolation:isolate;box-sizing:border-box;width:100%;max-width:1280px;margin:0 auto;padding:0 8px 12px;background:#fff;color:#18323d;text-align:center;font-family:inherit}
.vivlio3d *{box-sizing:border-box}
.vivlio3d__stage{position:relative;height:clamp(410px,52vw,570px);width:100%;overflow:hidden;background:#fff}
.vivlio3d model-viewer{display:block;width:100%;height:100%;background:#fff;--poster-color:#fff;outline-offset:-4px;touch-action:pan-y}
.vivlio3d model-viewer:focus-visible{outline:2px solid #23648b;border-radius:12px}
.vivlio3d img.vivlio3d__poster{margin:0!important;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:auto;height:100%;max-width:none;pointer-events:none}
.vivlio3d__status{position:absolute;bottom:12px;left:0;right:0;margin:0!important;font:400 14px/1.4 system-ui,sans-serif;color:#63757d}
.vivlio3d__bar{display:flex;justify-content:center;align-items:center;gap:24px;flex-wrap:wrap;margin:8px 0 0;min-height:44px;font-family:inherit}
.vivlio3d__hint{display:flex;align-items:center;justify-content:center;color:#244c60;margin:0!important}
.vivlio3d__gesture{display:block;position:relative;width:32px;height:32px;flex:none}
.vivlio3d__gesture svg{position:absolute;display:block;flex:none}
.vivlio3d__gesture .vivlio3d__swipe{width:92%;height:43%;top:-6%;left:4%}
.vivlio3d__gesture .vivlio3d__hand{width:64%;height:64%;top:31%;left:18%}
.vivlio3d .vivlio3d__sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;clip-path:inset(50%)!important;white-space:nowrap!important;border:0!important}
.vivlio3d [hidden]{display:none!important}
.vivlio3d[data-failed] model-viewer{visibility:hidden}
.vivlio3d[data-failed] .vivlio3d__bar{visibility:hidden}
@media(max-width:600px){.vivlio3d{padding:0 4px 12px}.vivlio3d__stage{height:440px;height:min(60vh,460px);min-height:360px}.vivlio3d__bar{gap:12px;flex-direction:column}}
@media(prefers-reduced-motion:reduce){.vivlio3d *{scroll-behavior:auto!important;transition:none!important}}

/* Compact spacing only around this module in the Vivlio ACF theme. */
center-content:has(.vivlio3d){margin-top:64px;margin-bottom:40px}
grid:has(+ center-content .vivlio3d){margin-bottom:64px}
center-content:has(.vivlio3d) + center-content{margin-top:64px}
center-content:has(.vivlio3d) .flex-col:has(> .wysiwyg > .vivlio3d){gap:12px}
@media(max-width:600px){center-content:has(.vivlio3d){margin-top:40px;margin-bottom:24px}grid:has(+ center-content .vivlio3d){margin-bottom:40px}center-content:has(.vivlio3d) + center-content{margin-top:40px}}
