/* Proportions and fittings traced from the owner's front and rear photos. */
.model-wrap{width:280px;height:520px;top:46%;transform:translate(-50%,-50%) scale(.9)}
.booth-model{transform:rotateX(-4deg) rotateY(var(--turn,-24deg))}
.booth-head{--w:190px;--h:242px;--d:84px;top:0}
.booth-head .front,.booth-head .back{border-radius:7px}
.booth-head .left,.booth-head .right{clip-path:polygon(0 0,100% 0,100% 43%,50% 69%,50% 100%,0 100%);background:linear-gradient(105deg,#15171c,#292b30 65%,#0c0e12);border-radius:5px}
.booth-head .left:after,.booth-head .right:after{content:'';position:absolute;top:34px;left:15px;width:35px;height:42px;background:radial-gradient(circle,#030507 1px,transparent 1.5px) 0 0/4px 4px;border-radius:50%;opacity:.8}
.booth-head .front{background:linear-gradient(115deg,#23252b,#0a0d12 70%,#202127);border-color:#44464d}
.led-border{inset:3px;padding:1px;border-radius:6px;box-shadow:0 0 4px var(--pink),0 0 11px var(--pink),0 0 19px #bd87e444}
.led-border:before{inset:2px;border-radius:4px;background:linear-gradient(125deg,#22242b,#0b0e14 65%,#171a20)}
.led-border:after{inset:0;border-radius:5px;background:radial-gradient(circle,#fff 0 1px,transparent 2px) 0 0/8px 8px;opacity:.95;animation:none;mix-blend-mode:screen}
.camera-ring{width:60px;height:60px;top:28px;border-width:7px;box-shadow:0 0 4px #fff,0 0 10px #fff8}
.booth-screen{left:15px;right:15px;top:120px;height:101px;border-width:4px;border-radius:1px}
.booth-head .front:after{inset:4px;border-radius:5px;background:linear-gradient(115deg,#ffffff04,transparent 60%,#ffffff06)}
.booth-head .bottom{background:linear-gradient(90deg,#0c1117,#697079 9%,#171b22 15%,#0c1117 85%,#737a82 91%,#11161d)}
.booth-neck{--w:48px;--h:263px;--d:43px;top:242px}
.pedestal-light{inset:9px 7px 8px;border-radius:0;box-shadow:0 0 5px var(--pink),inset 0 0 8px #fff5}
.pedestal-light:before{top:55%;height:13px;border:0;background:#090d13}
.booth-base{--w:173px;--h:10px;--d:133px;top:505px}
.booth-base .top{border-radius:25px;background:linear-gradient(130deg,#3e4147,#171b22 60%,#282c33);border:1px solid #444850}
.booth-base .front,.booth-base .back{border-radius:5px}
.printer-shelf{--w:145px;--h:6px;--d:135px;top:426px;transform:translateX(-50%) translateZ(-67px)}
.printer-shelf .top{background:#171c23;border-color:#414751;border-radius:3px}
.booth-printer{--w:128px;--h:108px;--d:111px;top:318px;transform:translateX(-50%) translateZ(-69px)}
.booth-printer .face{background:linear-gradient(110deg,#e5e7e7,#b8bdc0);border-color:#8b9296;border-radius:2px}
.booth-printer .top{background:linear-gradient(120deg,#f1f1ed,#cdd0d0)}
.booth-printer .left,.booth-printer .right{background:repeating-linear-gradient(90deg,transparent 0 4px,#555d64 4px 5px,transparent 5px 7px) center 40px/75px 35px no-repeat,linear-gradient(115deg,#c8cdce,#e2e4e1)}
.booth-printer .back{background:linear-gradient(#ddd 0 25%,#161b21 26% 71%,#b3b8ba 72%)}
.printer-badge{position:absolute;bottom:13px;left:12px;font:700 7px Arial;color:#303a40;letter-spacing:.05em}
.printer-vent{position:absolute;left:12px;right:12px;top:22px;height:36px;background:repeating-linear-gradient(90deg,#727c83 0 1px,transparent 1px 4px)}
.booth-instruction{font-size:9px;bottom:61px}
@media(max-width:760px){.model-wrap{transform:translate(-50%,-50%) scale(.76);top:44%}.booth-instruction{font-size:8px;bottom:58px}}
@media(prefers-reduced-motion:reduce){.booth-model{transition:none}}
.booth-stage{height:630px}.model-wrap{top:47%}
.led-border:after{padding:3px;mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask-composite:exclude;-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor}
@media(max-width:760px){.booth-stage{height:510px}.model-wrap{top:46%}}
.booth-base .front,.booth-base .back{width:145px}.booth-base .left,.booth-base .right{width:105px}
.hero-main{object-fit:contain;background:#101a2c}.occasion img{object-fit:contain;background:#101a2c}
.hero-scene .photo-strip{display:none}.hero-main,.scene-shade{border-radius:18px}.hero-scene{margin-bottom:20px}
/* Full-height silhouette: head width / overall height follows the front reference. */
.model-wrap{height:662px;transform:translate(-50%,-50%) scale(.73)}
.booth-neck{--h:410px}.booth-base{top:652px}.printer-shelf{top:482px}.booth-printer{top:374px}
@media(max-width:760px){.model-wrap{transform:translate(-50%,-50%) scale(.60)}}
