/* STUDIOZ 360 */
.sz360{margin:0}
.sz360-stage{position:relative;height:min(78vh,820px);min-height:420px;background:#0e0d0c;overflow:hidden;color:#f3f0ea;font-family:inherit}
.sz360-stage:fullscreen,.sz360-stage.sz360-max{height:100vh;position:fixed;inset:0;z-index:999}
.sz360-canvas{position:absolute;inset:0;width:100%;height:100%;display:block;cursor:grab;outline:none}
.sz360-canvas:active{cursor:grabbing}
.sz360-fade{position:absolute;inset:0;background:#0e0d0c;opacity:0;pointer-events:none;transition:opacity .35s}
.sz360-fade.on{opacity:1}
.sz360-hs{position:absolute;inset:0;pointer-events:none}
.sz360-pin{position:absolute;left:0;top:0;pointer-events:auto;display:flex;align-items:center;gap:8px;background:none;border:0;color:#fff;cursor:pointer;margin:-14px 0 0 -14px;padding:0}
.sz360-pin-dot{width:28px;height:28px;border-radius:50%;background:rgba(255,255,255,.25);border:2px solid #fff;box-shadow:0 0 0 6px rgba(255,255,255,.12);backdrop-filter:blur(4px);transition:transform .2s}
.sz360-pin:hover .sz360-pin-dot{transform:scale(1.15);background:var(--accent-2,#f5b400)}
.sz360-pin-label{background:rgba(14,13,12,.75);padding:6px 12px;font-size:13px;letter-spacing:.06em;white-space:nowrap;border-radius:2px}
.sz360-cap{position:absolute;left:clamp(20px,4vw,48px);bottom:clamp(84px,10vh,110px);max-width:min(520px,70%);pointer-events:none;text-shadow:0 2px 18px rgba(0,0,0,.45)}
.sz360-stage::after{content:"";position:absolute;inset:auto 0 0 0;height:55%;background:linear-gradient(transparent,rgba(14,13,12,.72));pointer-events:none}
.sz360-cap,.sz360-bar,.sz360-hint,.sz360-side,.sz360-hs{z-index:2}
.sz360-kicker{font-size:12px;font-weight:500;letter-spacing:.24em;text-transform:uppercase;color:var(--accent-2,#f5b400);margin:0 0 10px}
.sz360-title{font-size:clamp(40px,6vw,84px);font-weight:600;line-height:.92;text-transform:uppercase;letter-spacing:-.01em;margin:0}
.sz360-text{font-size:16px;line-height:1.5;color:rgba(243,240,234,.85);margin:14px 0 0}
.sz360-bar{position:absolute;right:clamp(16px,3vw,40px);bottom:clamp(20px,4vh,36px);display:flex;gap:8px}
.sz360-btn{background:rgba(14,13,12,.55);color:#f3f0ea;border:1px solid rgba(243,240,234,.35);padding:11px 16px;font:500 12.5px/1 inherit;letter-spacing:.12em;text-transform:uppercase;cursor:pointer;backdrop-filter:blur(6px);transition:.2s}
.sz360-btn:hover{background:#f3f0ea;color:#151412}
.sz360-accent{background:var(--accent-2,#f5b400);border-color:var(--accent-2,#f5b400);color:#151412}
.sz360-icon{font-size:16px;padding:9px 13px}
.sz360-hint{position:absolute;left:50%;top:22px;transform:translateX(-50%);margin:0;font-size:12.5px;letter-spacing:.08em;background:rgba(14,13,12,.55);padding:8px 14px;transition:opacity .5s}
.sz360-hint.off{opacity:0}
.sz360-side{position:absolute;top:16px;right:16px;bottom:84px;width:min(340px,86%);background:rgba(21,20,18,.92);border:1px solid rgba(243,240,234,.12);padding:20px;overflow:auto;transform:translateX(calc(100% + 24px));transition:transform .4s cubic-bezier(.2,.7,.2,1);backdrop-filter:blur(8px)}
.sz360-stage.side-open .sz360-side{transform:none}
.sz360-side-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}
.sz360-side-head .sz360-kicker{margin:0}
.sz360-close{background:none;border:0;color:#f3f0ea;font-size:28px;line-height:1;cursor:pointer}
.sz360-plan{position:relative;background:#f3f0ea;margin-bottom:16px}
.sz360-plan img{display:block;width:100%;height:auto}
.sz360-dot{position:absolute;width:18px;height:18px;margin:-9px 0 0 -9px;border-radius:50%;background:#151412;border:3px solid #f3f0ea;box-shadow:0 1px 6px rgba(0,0,0,.4);cursor:pointer;padding:0}
.sz360-dot.on{background:var(--accent-2,#f5b400);transform:scale(1.25)}
.sz360-list{list-style:none;margin:0;padding:0;counter-reset:s}
.sz360-list button{display:flex;gap:12px;width:100%;text-align:left;background:none;border:0;border-top:1px solid rgba(243,240,234,.12);color:rgba(243,240,234,.75);padding:12px 0;font:400 15px/1.3 inherit;cursor:pointer}
.sz360-list button::before{counter-increment:s;content:counter(s,decimal-leading-zero);font-size:12px;color:var(--accent-2,#f5b400);padding-top:2px}
.sz360-list button.on,.sz360-list button:hover{color:#fff}
.sz360-stage.loading .sz360-canvas{cursor:progress}
@media (max-width:700px){.sz360-stage{height:72vh}.sz360-bar{left:16px;right:16px;flex-wrap:wrap}.sz360-btn{flex:1}.sz360-icon{flex:0}.sz360-cap{bottom:120px;max-width:none;right:16px}.sz360-title{font-size:40px}.sz360-side{bottom:120px}}
.sz360-pin[hidden]{display:none}
