/* The original ALTEO model, isolated from the simple landing template. */
.landing-3d{position:relative;isolation:isolate;margin:22px 0;padding:14px 0 16px;border:1px solid #c6d9cf26;border-radius:16px;overflow:hidden;background:radial-gradient(ellipse at 75% 45%,#24644999,transparent 70%),#072f27;color:#d8e5de;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;line-height:1.4}
.landing-3d button{font:inherit;cursor:pointer}
.landing-3d button:disabled{cursor:wait;opacity:.45}
.landing-3d button:focus-visible,.landing-3d canvas:focus-visible{outline:3px solid #fdb813;outline-offset:-3px}
.landing-3d .scene-topline{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:4px 16px 14px;min-height:48px}
.landing-3d .scene-offer-copy{min-width:0}
.landing-3d .scene-offer-copy h2{margin:0 0 8px;color:#f2d49b;font-size:25px;font-weight:700;line-height:1.2;letter-spacing:-.35px}
.landing-3d .scene-offer-detail{margin:0;color:#e1ebe5;font-size:15px;line-height:1.5}
.landing-3d .scene-topline button{display:grid;place-items:center;flex:none;width:48px;height:48px;padding:0;border:1px solid #ffffff24;border-radius:12px;background:#ffffff06;color:#d6e5dc;font-size:26px;line-height:1}
.landing-3d .upgrade-orbit{position:absolute;inset:14% 4% 18%;z-index:-1;border:1px solid #c4dfce17;border-radius:50%;transform:rotate(-14deg);pointer-events:none}
.landing-3d .kitchen-canvas{position:relative;isolation:isolate;width:100%;height:300px;touch-action:pan-y}
.landing-3d .kitchen-canvas>canvas{position:absolute;inset:0;display:block;width:100%!important;height:100%!important;background:transparent;cursor:grab;touch-action:pan-y}
.landing-3d .kitchen-canvas>canvas:active{cursor:grabbing}
.landing-3d .scene-fallback{position:absolute;inset:0;overflow:hidden}
.landing-3d .scene-fallback img{display:block;width:100%;height:100%;object-fit:contain}
.landing-3d[data-scene-state=ready] .scene-fallback{display:none}
.landing-3d .upgrade-scene-badge{position:absolute;z-index:2;top:10px;right:12px;display:flex;align-items:center;gap:8px;padding:8px 12px;border:1px solid #fdb813;border-radius:999px;background:#fdb813;color:#10201b;font-size:10px;letter-spacing:.04em;pointer-events:none}
.landing-3d .upgrade-scene-badge>span:first-child{color:inherit;font-size:17px}
.landing-3d .scene-tools{margin:0 14px;padding-top:12px;border-top:1px solid #bad7c429}
.landing-3d .scene-swatches{display:flex;align-items:center;gap:6px;margin-bottom:12px}
.landing-3d .scene-swatches button{display:grid;place-items:center;flex:none;width:56px;height:56px;padding:6px;border:1px solid transparent;border-radius:50%;background:transparent}
.landing-3d .scene-swatches button[aria-pressed=true]{border-color:#fdb813}
.landing-3d .scene-swatches button>span{display:block;width:40px;height:40px;border-radius:50%;box-shadow:inset 0 0 0 1px #ffffff2c}
.landing-3d .swatch-sandstone{background:#d7c6a7}
.landing-3d .swatch-oak{background:repeating-linear-gradient(94deg,#ae7846 0 2px,#c49462 3px 6px,#bd8753 7px 9px)}
.landing-3d .swatch-graphite{background:#353b39}
.landing-3d .scene-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.landing-3d .scene-actions button{display:flex;align-items:center;justify-content:center;gap:7px;min-height:58px;padding:10px 7px;border:1px solid #bfd6c62a;border-radius:11px;background:#ffffff05;color:#dce8df;font-size:14px;line-height:1.3}
.landing-3d .scene-actions button[aria-pressed=true]{border-color:#fdb813;background:#fdb813;color:#10201b}
.landing-3d .scene-help{margin:10px 10px 0;color:#b0c6b9;font-size:14px;text-align:center;line-height:1.5}
.landing-3d .scene-load-status{min-height:24px;margin:4px 14px 0;color:#c7dcd0;font-size:12px;text-align:center}
.landing-3d .scene-failed-note,.landing-3d .scene-retry{display:none}
.landing-3d[data-scene-state=ready] .scene-loading-note,.landing-3d[data-scene-state=fallback] .scene-loading-note{display:none}
.landing-3d[data-scene-state=fallback] .scene-failed-note{display:block}
.landing-3d[data-scene-state=fallback] .scene-retry{display:inline-block;margin-top:8px;min-height:44px;padding:8px 14px;border:1px solid #fdb81380;border-radius:9px;background:transparent;color:#fdb813;font-size:13px}
.landing-3d[data-scene-state=fallback] .scene-tools{display:none}
