.surface-preview-card .product-image{isolation:isolate}
.surface-preview-card .product-image .surface-preview-primary,.surface-preview-card .product-image .surface-preview-room{transition:opacity .4s ease,transform .65s ease;will-change:opacity}
.surface-preview-card .product-image .surface-preview-primary{opacity:1;transform:scale(1)}
.surface-preview-card .product-image .surface-preview-room{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transform:scale(1);pointer-events:none}
.surface-preview-card.is-room-visible .product-image .surface-preview-primary{opacity:0;transform:scale(1.015)}
.surface-preview-card.is-room-visible .product-image .surface-preview-room{opacity:1;transform:scale(1.015)}
.surface-preview-card .product-badge{top:11px;bottom:auto;z-index:2}
.surface-preview-card .jumbo-badge{top:36px;bottom:auto;left:11px;right:auto;z-index:2}
.surface-preview-hint,.surface-preview-toggle{border:1px solid #e7ddef;background:#ffffffed;color:#4d1984;border-radius:30px;font-size:11px;font-weight:550;line-height:1.3;box-shadow:0 2px 10px #2310310a}
.surface-preview-hint{position:absolute;bottom:12px;left:12px;z-index:2;padding:8px 12px;pointer-events:none}
.surface-preview-toggle{position:absolute;top:var(--surface-preview-button-top,8px);left:12px;z-index:3;display:none;min-height:36px;padding:8px 12px;max-width:calc(100% - 24px)}
.surface-preview-toggle[aria-pressed=true]{background:#4d1984;border-color:#4d1984;color:#fff}
.surface-preview-unavailable .surface-preview-primary{opacity:1!important;transform:none!important}
.surface-preview-unavailable .surface-preview-room{display:none}
.surface-preview-unavailable .product-badge{top:auto;bottom:11px}
.surface-preview-unavailable .jumbo-badge{top:auto;bottom:11px;left:auto;right:11px}
@media(hover:none),(pointer:coarse),(any-pointer:coarse){.surface-preview-hint{display:none}.surface-preview-toggle:not([hidden]){display:block}}
@media(max-width:640px){.surface-preview-card .product-badge{top:9px;left:9px}.surface-preview-card .jumbo-badge{top:32px;left:9px;right:auto}.surface-preview-hint{display:none}.surface-preview-toggle:not([hidden]){display:block}.surface-preview-toggle{left:9px;max-width:calc(100% - 18px);font-size:11px;padding:8px 11px}.surface-preview-unavailable .product-badge{top:auto;bottom:7px;left:7px}.surface-preview-unavailable .jumbo-badge{top:auto;bottom:29px;left:auto;right:7px}}
@media(prefers-reduced-motion:reduce){.surface-preview-card .product-image .surface-preview-primary,.surface-preview-card .product-image .surface-preview-room{transition:none!important;transform:none!important}}

.surface-preview-link{display:block}
.room-illustration{position:relative;overflow:hidden;background:#e5ded3}
.room-stage{position:absolute;left:50%;top:50%;width:1536px;height:1024px;transform-origin:center;transform:translate(-50%,-50%) scale(.25)}
.product-image .room-stage .room-backdrop{position:absolute;inset:0;width:1536px;height:1024px;max-width:none;transform:none;object-fit:fill}
.product-image .room-stage .room-plane,.room-plane-light{position:absolute;left:0;top:0;width:1000px;height:500px;max-width:none;transform-origin:0 0;object-fit:fill;backface-visibility:hidden}
.room-plane-light{background:linear-gradient(120deg,#fff2,transparent 60%,#50402009);pointer-events:none}
.room-front-edge{position:absolute;left:0;top:765px;width:1530px;height:24px;background-size:1530px 765px;background-position:bottom;box-shadow:inset 0 0 0 20px #382a1820;border-top:1px solid #ffffff40}
.product-caption .preview-disclosure{font-size:10px;color:#746979;margin-top:5px}
.product-image>.stone-crop,.main-product-image>.stone-crop,.thumbnail-row .stone-crop{display:block;width:100%;height:100%}
.product-image .room-stage .room-material{display:block;position:absolute;inset:0;width:1000px;height:500px;max-width:none;object-fit:fill;transform:none}
.product-image .room-stage svg.room-material{overflow:hidden}
.room-front-edge{overflow:hidden;background:none}
.room-front-edge:after{content:'';position:absolute;inset:0;background:#382a1820;border-top:1px solid #ffffff40}
.product-image .room-stage .room-edge-material{position:absolute;left:0;bottom:0;width:1530px;height:765px;max-width:none;object-fit:fill;transform:none}
.product-image .room-stage .room-texture-loader,.room-texture-loader{position:absolute;width:1px!important;height:1px!important;opacity:0;pointer-events:none}
.room-stage svg.room-material{width:1000px;height:500px}
.room-stage svg.room-edge-material{width:1530px;height:765px}
.product-room-preview{margin-top:16px;border:1px solid #e7e0ec}
.product-room-preview summary{cursor:pointer;color:#4d1984;font-size:13px;padding:13px 16px}
.product-room-scene{aspect-ratio:1.5}
.product-room-scene .room-backdrop{width:1536px;height:1024px;max-width:none}
.product-room-scene .room-material{display:block;width:1000px;height:500px;max-width:none;object-fit:fill}
.product-room-scene .room-edge-material{position:absolute;left:0;bottom:0;width:1530px;height:765px;max-width:none;object-fit:fill}
.zoom-media{width:100%;max-width:100%;height:min(76vh,800px);display:grid;place-items:center}
.zoom-media>img,.zoom-media>.stone-crop{width:100%;height:100%;max-height:76vh;object-fit:contain}
.compare-product-link>.stone-crop{width:100%;height:150px;display:block}
.room-stage .room-backdrop{position:absolute;inset:0;width:1536px;height:1024px;max-width:none;object-fit:fill}
.room-stage .room-plane{position:absolute;left:0;top:0;width:1000px;height:500px;max-width:none;transform-origin:0 0;backface-visibility:hidden}

.product-image .room-photo-crop>.stone-crop{display:block;width:100%;height:100%;transform:none}
.main-product-image{display:block;position:relative}
.main-product-image>img,.main-product-image>.stone-crop{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
/* Each kitchen has its own projected top and visible thin edge geometry. */
.room-stage .room-slab-edge{position:absolute;left:0;top:0;width:1000px;height:20px;overflow:hidden;transform-origin:0 0;backface-visibility:hidden}
.room-stage .room-slab-edge>.room-edge-material,.product-image .room-stage .room-slab-edge>.room-edge-material,.product-room-scene .room-stage .room-slab-edge>.room-edge-material{position:absolute;left:0;bottom:0;width:1000px;height:500px;max-width:none;object-fit:fill;transform:none}
.room-slab-edge:after{content:'';position:absolute;inset:0;background:linear-gradient(#fff2,#19120b22);pointer-events:none}

/* The same slab continues across the full-height splashback and rear worktop. */
.room-stage .room-extra-plane{position:absolute;left:0;top:0;width:1000px;height:500px;overflow:hidden;transform-origin:0 0;backface-visibility:hidden}
.room-stage .room-extra-plane>.room-material{position:absolute;inset:0;width:1000px;height:500px;max-width:none;object-fit:fill;transform:none}
.room-stage .room-extra-plane:after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(110deg,#fff1,#180e0522)}
.room-stage .room-counter:after{background:linear-gradient(110deg,#fff1,#180e0515)}

/* Finished kitchen images preserve lighting, reflections and edge geometry. */
.room-finished>.room-finished-image,.product-image .room-finished>.room-finished-image{display:block;width:100%;height:100%;object-fit:cover;transform:none;max-width:100%}
.product-room-scene.room-finished>.room-finished-image{object-fit:contain}
