/* Arrival room films: the photograph fills the frame. Type sits on the picture.
   The video never captures clicks, so doors, rolls and links stay usable. */
.jp-enter-film{position:relative;min-height:220px;margin:12px 0 16px;overflow:hidden;border-radius:18px;background:#140e12;isolation:isolate}
.jp-enter-film .jp-room-film{position:absolute;inset:0}
.jp-enter-film .jp-room-film-poster,.jp-enter-film video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.jp-enter-film video{pointer-events:none}
.jp-enter-film .jp-room-film-copy{position:absolute;left:0;right:0;bottom:0;z-index:2;padding:28px 14px 12px;background:linear-gradient(180deg,transparent,#140e12f2);color:#fff8ec;pointer-events:none}
.jp-enter-film .jp-room-film-copy b{display:block;font:700 22px/1.15 "Playfair Display",Georgia,serif}
.jp-enter-film .jp-room-film-copy span{display:block;margin-top:4px;font:15px/1.4 Georgia,serif;color:#f3e6d0}
.jpw-scene-art video.jp-room-film{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;pointer-events:none;z-index:1}
.jp-door-offer{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px;margin:12px 0}
.jp-door-offer .po-card{position:relative;display:flex;flex-direction:column;justify-content:flex-end;min-height:220px;overflow:hidden;background:#120e0f;color:#fff;text-decoration:none;border-radius:16px}
.jp-door-offer .po-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.jp-door-offer .po-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(18,14,15,.15) 20%,rgba(18,14,15,.92))}
.jp-door-offer .po-copy{position:relative;z-index:1;display:flex;flex-direction:column;align-items:flex-start;gap:4px;padding:16px}
.jp-door-offer .po-kicker{font:800 11px/1.2 Inter,system-ui,sans-serif;letter-spacing:.12em;text-transform:uppercase;color:#f6db8b}
.jp-door-offer .po-title{font:800 18px/1.2 Inter,system-ui,sans-serif;color:#fff}
.jp-door-offer .po-price{font:700 14px/1.2 Inter,system-ui,sans-serif;color:#fff}
.jp-door-offer .po-cta{margin-top:6px;padding:7px 10px;border:1px solid #fff;border-radius:2px;font:700 12px/1 Inter,system-ui,sans-serif;color:#fff}
.jp-door-soon{cursor:default}
.jp-store-photo .po-card{position:relative;display:flex;flex-direction:column;justify-content:flex-end;min-height:420px;overflow:hidden;border-radius:18px;background:#120e0f;color:#fff;text-decoration:none}
.jp-store-photo .po-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.jp-store-photo .po-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(18,14,15,.12),rgba(18,14,15,.9))}
.jp-store-photo .po-copy{position:relative;z-index:1;display:flex;flex-direction:column;align-items:flex-start;gap:6px;padding:22px}
.jp-store-photo .po-kicker{font:800 11px/1.2 Inter,system-ui,sans-serif;letter-spacing:.14em;text-transform:uppercase;color:#f6db8b}
.jp-store-photo .po-title{font:800 clamp(28px,4vw,44px)/1.1 Georgia,serif;color:#fff}
.jp-store-photo .po-price{font:800 20px/1.2 Inter,system-ui,sans-serif;color:#fff}
.jp-store-photo .po-cta{margin-top:8px;padding:8px 12px;border:1px solid #fff;color:#fff;font:700 13px/1 Inter,system-ui,sans-serif}
.jp-store-photo .feature{background:transparent}
.jp-store-photo .featurebox{display:block;padding:0;border:0;background:#120e0f;border-radius:18px;overflow:hidden}
.jp-store-photo .grid .card{position:relative;display:flex;flex-direction:column;justify-content:flex-end;min-height:340px;overflow:hidden;background:#120e0f;border:0;box-shadow:none;color:#fff}
.jp-store-photo .grid .card img,.jp-store-photo .grid .card picture{position:absolute;inset:0;width:100%;height:100%;max-height:none}
.jp-store-photo .grid .card img{object-fit:cover;height:100%}
.jp-store-photo .grid .card .body{position:relative;z-index:1;background:linear-gradient(180deg,transparent,#120e0ff0 42%);color:#fff}
.jp-store-photo .grid .card h3,.jp-store-photo .grid .card p,.jp-store-photo .grid .card .price,.jp-store-photo .grid .card .type{color:#fff}
.jp-store-photo .grid .card .buy{color:#fff;background:transparent;border:1px solid #fff}
