/* Механика окна, просмотра фото и роликов. Цвета — из переменных варианта: --bg2 (фон окна), --fg, --mut, --acc, --line */
html.locked{overflow:hidden}
.sheet{position:fixed;inset:0;z-index:100;pointer-events:none}
.sheet-bg{position:absolute;inset:0;background:rgba(0,0,0,.55);opacity:0;transition:opacity .3s}
.sheet-box{position:absolute;left:50%;bottom:0;width:min(640px,100%);max-height:88vh;max-height:88dvh;display:flex;flex-direction:column;background:var(--bg2);color:var(--fg);transform:translate(-50%,104%);transition:transform .38s cubic-bezier(.2,.8,.2,1)}
.sheet.on{pointer-events:auto}
.sheet.on .sheet-bg{opacity:1}
.sheet.on .sheet-box{transform:translate(-50%,0)}
.sheet-in{overflow-y:auto;overscroll-behavior:contain;padding:30px 26px calc(28px + env(safe-area-inset-bottom))}
.sheet-x{position:absolute;right:10px;top:8px;width:40px;height:40px;border:0;background:none;color:var(--fg);font:300 30px/1 Arial,sans-serif;cursor:pointer;z-index:2}
@media (min-width:760px){.sheet-box{bottom:auto;top:50%;max-height:84vh;transform:translate(-50%,-46%);opacity:0;transition:transform .35s cubic-bezier(.2,.8,.2,1),opacity .25s}.sheet.on .sheet-box{transform:translate(-50%,-50%);opacity:1}}

.s-cat{margin:0 0 6px;font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;color:var(--mut)}
.sheet h3{margin:0 40px 6px 0;font-size:1.55rem;line-height:1.15}
.s-price{margin:0 0 18px;color:var(--acc);font-weight:700;font-size:1.05rem}
.s-lead{font-size:1.05rem}
.sheet p{line-height:1.55}
.s-list,.s-notes{list-style:none;margin:16px 0;padding:0}
.s-list li{display:flex;justify-content:space-between;gap:14px;padding:10px 0;border-top:1px solid var(--line);line-height:1.35}
.s-list li:last-child{border-bottom:1px solid var(--line)}
.s-list b{white-space:nowrap;font-weight:700}
.s-notes li{position:relative;padding:3px 0 3px 18px;color:var(--mut);font-size:.92rem;line-height:1.45}
.s-notes li::before{content:"—";position:absolute;left:0}
.s-links a{color:var(--fg);margin-right:14px}
.s-g{margin:22px 0 8px;font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;color:var(--mut)}
.s-ph{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:3px}
.s-ph button{padding:0;border:0;aspect-ratio:1;overflow:hidden;cursor:zoom-in;background:#222}
.s-ph img{width:100%;height:100%;object-fit:cover;display:block}
.s-vids{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin:18px 0}
.s-vids .vid{aspect-ratio:9/16}
@media (max-width:480px){.s-vids{grid-template-columns:1fr 1fr}}
.s-cta{display:inline-block;margin-top:14px;color:var(--fg);font-weight:700;letter-spacing:.08em;text-transform:uppercase;font-size:.82rem;text-decoration:none;border-bottom:2px solid var(--acc);padding-bottom:4px}

.lb{position:fixed;inset:0;z-index:110;background:rgba(0,0,0,.92);display:none;align-items:center;justify-content:center}
.lb.on{display:flex}
.lb img{max-width:94vw;max-height:84vh;object-fit:contain}
.lb button{position:absolute;border:0;background:none;color:#fff;font:300 44px/1 Arial,sans-serif;cursor:pointer;padding:10px 16px}
.lb-p{left:4px;top:50%;transform:translateY(-50%)}.lb-n{right:4px;top:50%;transform:translateY(-50%)}.lb-x{right:6px;top:6px}
.lb-c{position:absolute;bottom:16px;left:0;right:0;text-align:center;color:#bbb;font:13px Arial,sans-serif;letter-spacing:.1em}

.vid{position:relative;overflow:hidden;cursor:pointer;background:#111}
.vid video{display:block;width:100%;height:100%;object-fit:cover}
.vid-snd{position:absolute;right:8px;bottom:8px;border:0;padding:5px 8px;background:rgba(0,0,0,.5);color:#fff;font:600 10px/1 Arial,sans-serif;letter-spacing:.1em;text-transform:uppercase;pointer-events:none}
.vid.loud .vid-snd{background:var(--acc)}
