/* Shared styles for the 3D piece pages (/p/<code>), same look as the EL-1045 pilot */
.piece{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:28px;align-items:start}
@media (max-width:820px){.piece{grid-template-columns:minmax(0,1fr)}}
.stage{position:relative;border:1px solid var(--line);background:#f3ece0;height:clamp(340px,62vh,560px);overflow:hidden}
.panel{position:absolute;inset:0;transition:opacity .35s}
.panel.off{opacity:0;pointer-events:none}
.photos img.main{width:100%;height:100%;object-fit:contain;background:#f3ece0;display:block}
model-viewer{width:100%;height:100%;background:#f3ece0;--poster-color:#f3ece0}
.modes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:10px}
.modes button{font-family:var(--arabic);font-size:15px;line-height:1.35;padding:12px 6px;border:1px solid var(--gold);background:transparent;color:var(--champagne);cursor:pointer}
.modes button small{display:block;font-size:11px;color:var(--muted);font-family:var(--arabic)}
.modes button[aria-pressed="true"]{background:var(--gold);color:#1d1812}
.modes button[aria-pressed="true"] small{color:#3a2f22}
.modes button:focus-visible{outline:2px solid var(--gold);outline-offset:3px}
.hint{color:var(--muted);font-size:13px;text-align:center;margin-top:8px;min-height:1.6em}
.code{color:var(--gold);font-family:var(--sans);direction:ltr;unicode-bidi:isolate;letter-spacing:.12em;font-size:13px}
.crumbs{font-size:13px;color:var(--muted);margin-bottom:8px}.crumbs a{color:var(--muted)}
.ttl{font-family:var(--arabic);color:var(--champagne);font-size:clamp(24px,4vw,32px);margin:6px 0 14px}
.specs{width:100%;border-collapse:collapse;font-size:15px;margin-bottom:18px}
.specs th,.specs td{text-align:right;padding:9px 0;border-bottom:1px solid var(--line);vertical-align:top}
.specs th{color:var(--muted);font-weight:400;width:34%}
.specs td{color:var(--ivory)}
.specs td small{color:var(--muted);font-size:12px}
.dims{font-variant-numeric:tabular-nums}
.btns{display:grid;gap:10px}
.btns a{display:block;text-align:center;border:1px solid var(--gold);padding:12px;color:var(--champagne)}
.btns a.main{background:var(--gold);color:#1d1812;font-weight:600}
.btns a.buy-sheet small,.btns a.room small{display:block;font-size:12px;color:var(--muted);margin-top:2px}
.small-note{color:var(--muted);font-size:12px;margin-top:14px}
@media (max-width:600px){header .eyebrow,header .slogan,header .logo-slot{display:none} header h1{font-size:30px;margin:6px 0} header nav{margin-top:10px;gap:4px 10px}}
@media (max-width:820px){header nav a,footer a,.crumbs a{display:inline-flex;align-items:center;min-height:44px;padding-inline:6px}}

.thumbs{display:flex;gap:8px;margin-top:8px}.thumbs button{flex:1;padding:0;border:2px solid transparent;border-radius:8px;overflow:hidden;background:#f3ece0;cursor:pointer;min-height:44px}.thumbs button:hover,.thumbs button:focus-visible{border-color:#b08d57}.thumbs img{width:100%;aspect-ratio:1;object-fit:cover;display:block}
