.smart-journey{height:600svh;background:#1d241e}.sj-stage{background:#1d241e}
.sj-wash{background:linear-gradient(180deg,#111b1c70,transparent 40%,transparent 62%,#101b1be0)}
.sj-head>a:first-child,.sj-head .sj-link,.sj-copy h1,.sj-sub,.sj-kicker,.sj-bottom p,.sj-bottom>small,.sj-actions a{color:#fff9ed}
.sj-head .sj-link{background:#202b2350;border-color:#fff8}.sj-copy h1{text-shadow:0 2px 20px #0003;font-weight:500}.sj-kicker{color:#e5d9ba}.sj-track{background:#fff4}.sj-track span{background:#e0c99f}
.sj-actions button{background:#f0e9d8;color:#25352c}.sj-copy{top:112px}.sj-photo-interior .sj-copy{top:108px}.sj-photo-interior .sj-copy h1{font-size:clamp(28px,3.6vw,48px)}
.sj-sub{max-width:320px}.sj-modes{background:#17251eea;color:#f3ecdc;border-color:#ddcda050}.sj-modes>span,.sj-modes small{color:#eadfc8}.sj-modes button{background:#eee3ce!important;border-color:#eee3ce!important}
@media(max-width:650px){.sj-copy h1{font-size:34px}.sj-photo-interior .sj-copy h1{font-size:28px}.sj-photo-interior .sj-sub{font-size:11px}.sj-modes{bottom:160px}.sj-bottom>small{font-size:8px}}

.sj-scan{position:absolute;z-index:4;right:22px;top:44%;width:132px;padding:14px;background:#13291deb;border:1px solid #c0e1c67a;border-radius:16px;color:#e5f4df;text-align:center}.sj-scan svg{width:80px;fill:none;stroke:#bedec0;stroke-width:2;display:block;margin:0 auto 9px}.sj-scan b{display:block;font-size:12px}.sj-scan small{font-size:8px;display:block;margin-top:6px;color:#c2cabc}.sj-scan.is-complete{border-color:#b7db99}
.sj-scan[hidden],.sj-spots[hidden],.sj-zone-info[hidden]{display:none!important}
.sj-spots{position:absolute;inset:0;z-index:5;pointer-events:none}.sj-spots button{position:absolute;transform:translate(-50%,-50%);pointer-events:auto;border:1px solid #bca16b;background:#fffffff0;border-radius:25px;box-shadow:0 3px 14px #41351c24;padding:8px 11px;font:600 11px system-ui;color:#34412d;white-space:nowrap;cursor:pointer}.sj-spots button span{display:inline-block;margin-right:5px;color:#9b763a}.sj-spots button[aria-pressed=true]{background:#314233;color:#fff;border-color:#314233}.sj-spots button[aria-pressed=true] span{color:#e5c488}
.sj-zone-info{position:absolute;z-index:5;right:24px;top:45%;width:245px;padding:16px;background:#fffdf4ed;border:1px solid #d7c7a5;border-radius:12px;color:#33412f;box-shadow:0 6px 26px #54462b15}.sj-zone-info b{font-size:13px}.sj-zone-info p{font-size:12px;line-height:1.7;margin:8px 0}.sj-zone-info small{font-size:9px;color:#767764}
.sj-cutaway .sj-wash{background:none}.sj-cutaway .sj-head>a:first-child,.sj-cutaway .sj-head .sj-link,.sj-cutaway .sj-copy h1,.sj-cutaway .sj-sub,.sj-cutaway .sj-kicker,.sj-cutaway .sj-bottom p,.sj-cutaway .sj-bottom>small,.sj-cutaway .sj-actions a{color:#35412f}.sj-cutaway .sj-head .sj-link{border-color:#7d856a;background:#f8f4e8b0}.sj-cutaway .sj-copy h1{text-shadow:none}.sj-cutaway .sj-track{background:#6a5b4130}.sj-cutaway .sj-track span{background:#94703d}
.sj-full-interior .sj-copy{top:94px}.sj-full-interior .sj-copy h1{font-size:24px}.sj-full-interior .sj-sub{font-size:11px;margin-top:8px}.sj-full-interior .sj-copy h1 br{display:none}
@media(max-width:900px){.sj-zone-info{right:16px;left:16px;top:auto;bottom:96px;width:auto;padding:10px 12px}.sj-zone-info b{font-size:12px}.sj-zone-info p{font-size:11px;margin:5px 0}.sj-zone-info small{font-size:8px}.sj-cutaway .sj-bottom{bottom:16px}.sj-cutaway .sj-track{margin-bottom:8px}.sj-cutaway #sjGuide{display:none}.sj-cutaway #sjDisclaimer{max-width:100%}.sj-cutaway .sj-copy{top:83px}.sj-cutaway .sj-copy h1{font-size:22px}.sj-cutaway .sj-sub{display:none}.sj-cutaway .sj-kicker{margin-bottom:8px}}
@media(max-width:420px){.sj-scan{right:14px;width:112px;padding:10px}.sj-scan svg{width:65px}.sj-full-interior .sj-copy h1{font-size:22px}}

.sj-welcome{position:absolute;z-index:3;left:20px;right:20px;bottom:150px;max-width:500px;padding:14px;border:1px solid #e7d6ad45;background:#18251cce;backdrop-filter:blur(8px);border-radius:12px;color:#f7f0de;pointer-events:none}.sj-welcome[hidden]{display:none!important}.sj-state-row{display:flex;gap:8px;flex-wrap:wrap}.sj-state-row span{font-size:11px;white-space:nowrap;line-height:1.6;padding:3px 0}.sj-state-row span+span:before{content:'·';margin-right:8px;color:#e5bd73}.sj-welcome p{font-size:11px;margin:10px 0 0;border-top:1px solid #fff2;padding-top:10px;color:#e8d4ac}.sj-welcome i{font-style:normal;margin:0 7px;color:#afc9ac}.sj-full-interior .sj-copy{top:85px}.sj-full-interior .sj-sub{max-width:290px}.sj-full-interior .sj-kicker{margin-bottom:8px}
@media(max-width:420px){.sj-welcome{bottom:145px;padding:11px;left:16px;right:16px}.sj-state-row span{font-size:10px}.sj-state-row{gap:6px}.sj-full-interior .sj-copy h1{font-size:21px}.sj-full-interior .sj-sub{font-size:10px}}

.sj-full-interior .sj-sub{display:none}.sj-full-interior .sj-copy h1{text-shadow:0 2px 12px #0008}
/* Shorter arrival and compact home response; closing App reveal retained. */
.smart-journey{height:480svh}
.sj-app-shade{position:absolute;inset:0;background:#07100c;opacity:0;z-index:2;pointer-events:none}
.sj-app-arrival{position:absolute;z-index:4;transform-origin:top left;will-change:transform,top;pointer-events:none}
.sj-app-arrival[hidden],.sj-app-next[hidden],.sj-phone-slot[hidden]{display:none!important}
.sj-app-label{position:absolute;top:-28px;left:0;width:100%;text-align:center;color:#e6d8b9;letter-spacing:.09em;font:500 11px system-ui}
#appDevice.sj-lifted-phone{position:relative!important;width:300px!important;min-height:540px!important;height:auto;max-height:560px;box-sizing:border-box;padding:27px 15px 30px!important;transform:none!important;margin:0!important;border:7px solid #17221f;border-radius:35px;box-shadow:0 25px 80px #0009;pointer-events:none}
.sj-lifted-phone .app-top b{font-size:22px}.sj-lifted-phone .app-quick button{font-size:12px}.sj-lifted-phone .app-tile{height:136px}.sj-lifted-phone .app-tile b{font-size:13px}
.sj-app-next{position:absolute;z-index:5;left:20px;right:20px;text-align:center;color:#f5e8cb;text-decoration:none;font:500 12px system-ui;padding:12px}
.sj-app-ending .sj-copy{z-index:3;left:20px;right:20px;top:91px;text-align:center;max-width:none}.sj-app-ending .sj-copy h1{font-size:clamp(21px,3vw,32px);line-height:1.25}.sj-app-ending .sj-kicker{margin-bottom:9px}.sj-app-ending .sj-sub{display:none}
.sj-app-ending .sj-bottom{z-index:3}.sj-app-ending .sj-actions,.sj-app-ending #sjGuide,.sj-app-ending .sj-track{display:none}.sj-app-ending #sjDisclaimer{text-align:center;max-width:none;font-size:8px;color:#c9c9ba}
.sj-app-ending .sj-head{z-index:3}.sj-app-ending .sj-welcome{display:none!important}
/* Moving the same App node must not let browser scroll anchoring move the page. */
html{overflow-anchor:none}

#sjDisclaimer:empty,#sjGuide:empty,.sj-sub:empty{display:none}.sj-welcome{max-width:540px}.sj-full-interior .sj-copy h1 br{display:block}

/* Refined typography and responsive device summary. */
.sj-copy{max-width:540px!important;left:clamp(24px,5vw,72px);right:24px}
.sj-copy h1{font-size:clamp(32px,4.2vw,56px);line-height:1.22;letter-spacing:-.025em;margin:0;font-weight:500}
.sj-kicker{font-size:11px;letter-spacing:.18em;margin-bottom:18px}
.sj-sub{font-size:14px;line-height:1.6;margin-top:20px}
.sj-welcome{max-width:590px;padding:18px 20px;border-radius:18px;background:#1c2925e6;bottom:130px}
.sj-state-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.sj-device-card{display:flex;align-items:center;gap:9px;min-width:0}
.sj-device-card svg{width:26px;height:26px;flex-shrink:0;fill:none;stroke:#ddcda4;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}
.sj-device-card b{display:block;font-size:12px;font-weight:500;color:#fff6e7;margin-bottom:5px}
.sj-state-row .sj-device-card span{display:block;white-space:normal;font-size:10px;color:#c5cec5;padding:0;line-height:1.5}
.sj-welcome p{font-size:11px;letter-spacing:.03em;margin-top:16px;padding-top:12px;color:#d6dbc9}
.sj-app-ending .sj-copy{left:24px;right:24px;max-width:none!important;top:86px;text-align:center}
.sj-app-ending .sj-copy h1{font-size:clamp(23px,2.6vw,34px);line-height:1.3}
.sj-app-ending .sj-copy h1 br{display:block}
.sj-app-label{display:none}
@media(max-width:600px){
 .sj-copy{top:110px;left:24px;right:24px;max-width:340px!important}
 .sj-copy h1{font-size:clamp(30px,7.4vw,40px);line-height:1.28}
 .sj-sub{font-size:12px;margin-top:16px}.sj-kicker{font-size:10px;margin-bottom:14px}
 .sj-welcome{left:16px;right:16px;bottom:120px;padding:16px}
 .sj-state-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 20px}
 .sj-device-card svg{width:24px;height:24px}.sj-device-card b{font-size:12px}
 .sj-app-ending .sj-copy{top:84px;max-width:none!important}
 .sj-app-ending .sj-copy h1{font-size:24px}
}

/* Reset the inherited mobile heading width, so heading and phone share one centre. */
.sj-app-ending .sj-copy h1{width:100%;max-width:none!important;margin:0 auto!important;text-align:center!important}
.sj-app-ending .sj-kicker{width:100%;text-align:center}
/* Low-profile device dock keeps the room visible. */
.sj-welcome{left:24px;right:24px;bottom:32px;max-width:520px;margin:0 auto;padding:12px 16px;border-radius:14px;background:#1b2827b8;backdrop-filter:blur(10px)}
.sj-state-row{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.sj-device-card{position:relative;justify-content:center;gap:6px}
.sj-device-card svg{width:19px;height:19px}
.sj-device-card b{font-size:11px;margin:0;font-weight:500}
.sj-state-row .sj-device-card span{display:none}
.sj-ready-check{font-size:12px;color:#94d5ac;font-style:normal;opacity:.45}
.is-ready .sj-ready-check{opacity:1}
.sj-welcome p{text-align:center;font-size:10px;margin:9px 0 0;padding:8px 0 0;border-color:#ffffff18;color:#d3dccd}
.sj-full-interior:not(.sj-app-ending) .sj-bottom{display:none}
@media(max-width:600px){.sj-welcome{left:14px;right:14px;bottom:24px;padding:12px 10px}.sj-state-row{gap:6px}.sj-device-card{gap:4px}.sj-device-card svg{width:17px;height:17px}.sj-device-card b{font-size:10px}.sj-ready-check{font-size:11px}}

/* Give the home-preparation moment a clear, restrained visual focus. */
.sj-welcome{bottom:clamp(76px,12vh,130px);max-width:560px;padding:19px 22px 20px;border-radius:18px;background:#192923e8;border:1px solid #d7c89d80;box-shadow:0 12px 40px #06130f40}
.sj-welcome p{margin:0 0 17px;padding:0 0 14px;border-top:0;border-bottom:1px solid #e8dbb52b;font-size:18px;font-weight:500;line-height:1.4;letter-spacing:.025em;color:#fff2d9;text-align:center}
.sj-state-row{gap:14px}.sj-device-card{gap:8px}.sj-device-card svg{width:24px;height:24px;stroke:#e8cf93}.sj-device-card b{font-size:13px}.sj-ready-check{font-size:16px;font-weight:600;color:#a3e8b8}
@media(max-width:600px){.sj-welcome{left:16px;right:16px;bottom:clamp(72px,12vh,110px);padding:17px 12px 18px}.sj-welcome p{font-size:16px;margin-bottom:14px;padding-bottom:12px}.sj-state-row{gap:6px}.sj-device-card{gap:5px}.sj-device-card svg{width:21px;height:21px}.sj-device-card b{font-size:12px}.sj-ready-check{font-size:14px}}
@media(max-width:360px){.sj-device-card{gap:3px}.sj-device-card svg{width:18px;height:18px}.sj-device-card b{font-size:11px}.sj-welcome p{font-size:15px}}

/* Language control and stronger opening contrast. */
.sj-head{gap:12px}.sj-head>a:first-child{margin-right:auto}.sj-language{border:1px solid #fff8;border-radius:99px;background:#192a25c9;color:#fff8e9;font:600 11px system-ui;padding:10px 13px;cursor:pointer}.sj-language:focus-visible{outline:2px solid #edd6a5;outline-offset:3px}
.sj-stage:not(.sj-photo-interior) .sj-wash{background:linear-gradient(90deg,#101e1cd1 0%,#101e1c83 42%,#101e1c12 78%),linear-gradient(0deg,#101b1b9c,transparent 35%)}
.sj-stage:not(.sj-photo-interior) .sj-copy{max-width:540px!important;top:clamp(116px,19vh,160px)}
.sj-stage:not(.sj-photo-interior) .sj-copy h1{font-size:clamp(30px,3.6vw,48px);line-height:1.3;color:#fff8eb;letter-spacing:-.025em;font-weight:500;text-shadow:0 2px 16px #0004}
.sj-stage:not(.sj-photo-interior) .sj-kicker{color:#ecd6aa}.sj-stage:not(.sj-photo-interior) .sj-sub{color:#f1eee5;font-size:13px;margin-top:22px}
html[lang=en] .section-title{font-size:clamp(32px,4.7vw,62px);line-height:1.15;letter-spacing:-.035em}
html[lang=en] .sj-full-interior .sj-copy h1{font-size:clamp(20px,2.4vw,30px);max-width:510px;line-height:1.25}
html[lang=en] .sj-app-ending .sj-copy h1{max-width:none!important}
html[lang=en] .sj-welcome p{font-size:16px;letter-spacing:0}
html[lang=en] .sj-device-card b{font-size:11px}
html[lang=en] .app-effect{flex-wrap:wrap;gap:4px}html[lang=en] .app-effect b{font-size:9px}
html[lang=en] .app-top span{font-size:10px}html[lang=en] .app-tile b{font-size:11px}
@media(max-width:650px){.sj-head{gap:7px}.sj-language{font-size:10px;padding:8px 10px}.sj-stage:not(.sj-photo-interior) .sj-copy{left:24px;right:24px}.sj-stage:not(.sj-photo-interior) .sj-copy h1{font-size:clamp(28px,6.6vw,38px);max-width:none}.sj-stage:not(.sj-photo-interior) .sj-sub{font-size:12px}html[lang=en] .sj-welcome{padding-left:10px;padding-right:10px}html[lang=en] .sj-welcome p{font-size:14px}html[lang=en] .sj-device-card{gap:4px}html[lang=en] .sj-device-card b{font-size:10px}html[lang=en] .sj-device-card svg{width:17px}html[lang=en] .sj-app-next{font-size:11px}}

html[lang=en] .app-quick button small{display:none}

/* Bright exterior; a single assistant focal point inside. */
.sj-stage:not(.sj-photo-interior) .sj-wash{background:linear-gradient(90deg,#f3eedc55,transparent 55%),linear-gradient(0deg,#101b1b66,transparent 24%)}
.sj-stage:not(.sj-photo-interior) .sj-copy h1{color:#233d33;text-shadow:0 1px 12px #fff7}
.sj-stage:not(.sj-photo-interior) .sj-kicker{color:#385143;font-weight:650}
.sj-stage:not(.sj-photo-interior) .sj-sub{color:#30483d;text-shadow:0 1px 8px #fff9}
.sj-stage:not(.sj-photo-interior) .sj-head>a:first-child{color:#263e32}
.sj-full-interior:not(.sj-app-ending) .sj-copy{display:none}
.sj-kicker{font-size:12px;letter-spacing:.13em}
.sj-assistant-head{display:flex;align-items:center;gap:14px;margin-bottom:15px}
.sj-robot{width:52px;height:52px;flex:none;fill:none;stroke:#ebd29b;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;background:#dccc9d0c;border-radius:15px}
.sj-eye{fill:#b8ddc3;stroke:none;filter:drop-shadow(0 0 3px #b8ddc3)}
.is-prepared .sj-robot{stroke:#bee3c3}.is-prepared .sj-eye{fill:#d7f4dd}
.sj-assistant-label{display:block;font-size:11px;letter-spacing:.09em;color:#d9c596;font-weight:600;margin-bottom:7px}
.sj-assistant-copy{min-width:0}
.sj-welcome .sj-assistant-copy p{font-size:17px;text-align:left;line-height:1.4;margin:0;padding:0;border:0;letter-spacing:0}
.sj-welcome .sj-state-row{border-top:1px solid #e8dbb52b;padding-top:14px}
html[lang=en] .sj-welcome .sj-assistant-copy p{font-size:16px}
@media(max-width:600px){.sj-welcome{padding:16px}.sj-assistant-head{gap:11px;margin-bottom:13px}.sj-robot{width:44px;height:44px}.sj-welcome .sj-assistant-copy p{font-size:15px}.sj-assistant-label{font-size:10px}.sj-welcome .sj-state-row{padding-top:12px}html[lang=en] .sj-welcome .sj-assistant-copy p{font-size:14px}.sj-kicker{font-size:11px}}

/* App demo: clear invitation, one summary, and disclosure outside the room. */
.app-demo-frame{min-width:0}
.app-demo-invite{color:#294237;font-size:16px;font-weight:550;line-height:1.5;margin:0 0 16px}
.app-demo-note{color:#607065;font-size:11px;line-height:1.6;margin:12px 4px 0;text-align:right}
#appEffectDetail{display:none}
.app-effect{min-height:33px;gap:6px}
.app-showcase #appDevice{min-height:465px;padding-bottom:28px}
.app-showcase .app-home-heading{margin-top:24px}
.app-showcase .app-grid{margin-bottom:6px}
@media(max-width:600px){.app-demo-invite{font-size:14px;margin-bottom:12px}.app-demo-note{font-size:10px;text-align:left}.app-showcase #appDevice{min-height:405px;padding-bottom:22px}}

.app-room-canvas{position:absolute;inset:0;width:100%;height:100%;z-index:0;pointer-events:none}.has-room-motion{background:#24332b}.has-room-motion:before,.has-room-motion:after,.has-room-motion .curtain-visual{display:none!important}.app-showcase #appDevice .app-tile{height:106px}.app-showcase #appDevice{min-height:0}.app-showcase .demo-state{font-size:10px;gap:6px}.sj-lifted-phone .app-tile{height:108px}.sj-lifted-phone .app-tile b{margin-top:7px}html[lang=en] #appAC b{font-size:10px}@media(max-width:600px){.app-showcase #appDevice .app-tile{height:100px}.app-showcase .demo-state{font-size:9px}}

.app-showcase #appDevice .app-tile,.sj-lifted-phone .app-tile{height:126px}.app-showcase #appDevice .app-tile b{margin-top:7px}.app-showcase #appDevice .app-tile{padding:11px}.app-showcase #appDevice .device-toggle{margin-top:6px}
