.component-viewer{position:absolute;inset:0;z-index:2;isolation:isolate;border-radius:inherit;background:#fff}
.component-viewer[hidden]{display:none}
.component-viewer:empty{display:none}
.component-tools:empty,.component-tools[hidden]{display:none}
.component-canvas-mount,.component-poster,.component-leaders{position:absolute;inset:0;width:100%;height:100%;border-radius:inherit}
.component-poster{object-fit:contain;pointer-events:none;background:#fff}
.component-poster[hidden]{display:none}
.component-viewer.is-interactive .component-poster{display:none}
.component-canvas-mount{opacity:0;pointer-events:none;transition:opacity .55s ease}
.component-canvas-mount canvas{display:block;width:100%;height:100%;outline:none;cursor:grab;touch-action:pan-y}
.component-canvas-mount canvas:active{cursor:grabbing}
.component-canvas-mount canvas:focus-visible{outline:2px solid #1686b4;outline-offset:-4px}
.component-viewer.is-presented .component-canvas-mount{opacity:1}
.component-viewer.is-ready .component-canvas-mount{opacity:1;pointer-events:auto}
.component-leaders{z-index:2;pointer-events:none;overflow:visible;opacity:0}
.component-viewer.is-ready .component-leaders{opacity:1}
.component-leaders polyline{fill:none;stroke:#32758f;stroke-width:1;stroke-opacity:.8;vector-effect:non-scaling-stroke}
.component-leaders circle{fill:#fff;stroke:#32758f;stroke-width:1;vector-effect:non-scaling-stroke}
.component-callout{position:absolute;z-index:2;top:7%;min-width:72px;max-width:calc(50% - 24px);color:#163543;pointer-events:none;background:rgba(255,255,255,.9);padding:5px 8px;border-radius:5px;box-shadow:0 3px 12px rgba(30,50,65,.04);font:500 11px/1.4 Inter,Arial,sans-serif;opacity:0}
.component-callout[hidden]{display:none}
.component-viewer.is-ready .component-callout{opacity:1}
.component-callout strong{display:block;font-size:13px;letter-spacing:.02em;font-weight:650}
.component-callout span{display:block;color:#57717d;font-size:10px}
.component-callout--seat{left:7%}.component-callout--bore{right:7%;text-align:right}
.component-toolbar{display:flex;align-items:center;justify-content:flex-end;gap:5px;padding:7px 12px;border-top:1px solid #edf0f2;background:#fff;white-space:nowrap}
.component-toolbar button{min-width:30px;min-height:30px;padding:4px 7px;border:0;border-radius:6px;background:transparent;color:#244856;font:500 12px/1.2 Inter,Arial,sans-serif;cursor:pointer}
.component-toolbar button:hover{background:#edf4f6}.component-toolbar button:focus-visible{outline:2px solid #1686b4;outline-offset:1px}
.component-toolbar button:disabled{opacity:.35;cursor:default}.component-toolbar button:disabled:hover{background:transparent}
.component-drag-hint{margin-right:auto;padding:0 6px;font:500 8px/1.2 Inter,Arial,sans-serif;letter-spacing:.12em;color:#6b818b}
.component-status{position:absolute;z-index:3;left:12px;right:12px;top:12px;margin:0;text-align:center;color:#617984;font:500 11px/1.5 Inter,Arial,sans-serif;background:rgba(255,255,255,.88);border-radius:6px}
.component-status:empty{display:none}
.component-viewer.is-loading .component-status::before{content:"";display:inline-block;width:7px;height:7px;margin-right:7px;border:1.5px solid #d6e2e7;border-top-color:#6b8d9e;border-radius:50%;vertical-align:-1px;animation:component-loading-turn 1s linear infinite}
@keyframes component-loading-turn{to{transform:rotate(1turn)}}
@media(max-width:700px){.component-toolbar{gap:2px;padding:5px 9px}.component-toolbar button{min-width:29px;min-height:29px;padding:3px 5px;font-size:11px}.component-drag-hint{font-size:7px;padding:0 3px}.component-callout{top:6%;padding:4px 6px;min-width:60px}.component-callout strong{font-size:11px}.component-callout span{font-size:9px}.component-callout--seat{left:5%}.component-callout--bore{right:5%}}
@media(prefers-reduced-motion:reduce){.component-canvas-mount{transition:none}.component-viewer.is-loading .component-status::before{animation:none}}
@media print{.component-canvas-mount,.component-leaders,.component-callout,.component-toolbar,.component-status{display:none!important}.component-poster[hidden]{display:block!important}}

/* Large, open studio composition: the geometry crosses the logical carousel. */
.component-enhanced body{overflow-x:hidden}
.component-enhanced .hero{isolation:isolate}
.component-enhanced .hero-copy{position:relative;z-index:5}
.component-enhanced .header{position:relative;z-index:6;background:#fff}
.component-enhanced .concept-bar{position:relative;z-index:6}
.component-enhanced .hero-showcase{position:relative;z-index:2}
.component-enhanced .hero-showcase-stage{overflow:visible}
.component-enhanced .component-viewer{background:transparent;overflow:visible}
.component-enhanced .component-viewer::before{content:'';position:absolute;inset:-45%;z-index:-1;pointer-events:none;background:radial-gradient(ellipse at 65% 30%,rgba(255,233,193,.28),rgba(249,232,213,.16) 43%,rgba(255,255,255,0) 72%),radial-gradient(ellipse at 38% 60%,rgba(204,235,252,.14),rgba(255,255,255,0) 64%)}
.component-enhanced .component-canvas-mount{inset:auto;left:-50%;top:-50%;width:200%;height:200%;-webkit-mask-image:radial-gradient(ellipse at center,#000 58%,rgba(0,0,0,.88) 73%,transparent 96%);mask-image:radial-gradient(ellipse at center,#000 58%,rgba(0,0,0,.88) 73%,transparent 96%)}
.component-enhanced .component-tools{position:relative;z-index:5}
.component-enhanced .hero-showcase-caption{position:relative;z-index:5;background:linear-gradient(180deg,rgba(255,255,255,.86),#fff 90px)}
.component-enhanced .hero-showcase-arrows{z-index:5}
.component-enhanced .component-leaders,.component-enhanced .component-callout{z-index:4}
@media(max-width:760px){.component-enhanced .component-viewer::before{inset:-25% -45%}.component-enhanced .hero-showcase-caption{background:linear-gradient(180deg,rgba(255,255,255,.9),#fff 65px)}}
@media(min-width:761px){.component-enhanced .component-canvas-mount{left:-70%;top:-70%;width:240%;height:240%}}
.component-enhanced .hero-foot{position:relative;z-index:5;background:linear-gradient(180deg,rgba(255,255,255,.84),#fff)}
