/* Immersive architectural journey */
.hero-art{isolation:isolate}.hero-art .house-view{position:absolute;inset:-20px -12% -5px -18%;width:auto;height:auto;transform:none;z-index:-1}.hero-art .house-view canvas{width:100%;height:100%;display:block}.hero-art .orb{width:92%;background:#e2e7da;z-index:-2}.hero-art .floating{z-index:2}.hero-art .floating.top{top:2%}.hero-art .floating.bottom{bottom:6%;left:8%}.hero-art .art-caption{bottom:-20px}.hero-art .house-view svg{position:absolute;top:18%;width:100%}.explorer{height:480vh;background:radial-gradient(ellipse at 45% 35%,#f5f5e9 0%,#e6eadf 65%,#dce3d6 100%)}.explore-sticky{height:calc(100svh - 94px);min-height:640px;top:94px}.experience-top{position:absolute;top:25px;left:4%;right:4%;display:flex;justify-content:space-between;align-items:center;z-index:4}.experience-top .eyebrow{font-size:9px;letter-spacing:1.8px}.experience-top #scene-num{font-size:11px;font-variant-numeric:tabular-nums}.experience-heading{position:absolute;top:90px;left:4%;z-index:3;pointer-events:none;max-width:350px}.experience-heading>span{font-size:9px;letter-spacing:1.6px;color:#7c887b}.experience-heading h2{font-size:clamp(35px,3.7vw,59px);margin:18px 0 17px;letter-spacing:-2.5px}.experience-heading>p{max-width:250px;font-size:12px;line-height:1.8;color:#6c7b6d}.explore-sticky #explore-house{position:absolute;inset:6% 15% 4% 0;width:auto;max-width:none;height:auto;z-index:1}.house-view canvas{width:100%;height:100%;display:block}.explore-sticky #explore-house svg{height:100%;width:100%;object-fit:contain}.sensor-card{z-index:4;right:4%;top:25%;width:255px;padding:23px;border:1px solid #ffffffa0;background:#fafcf6e8;backdrop-filter:blur(16px);box-shadow:0 20px 60px #35513d0a;transition:transform .4s,opacity .4s}.sensor-card .product-visual{height:105px;margin:12px 0 19px;background:#e8ede2}.sensor-card .product-visual .device{scale:.72}.sensor-card h3{font-size:21px;line-height:1.2}.sensor-card>.eyebrow{font-size:7px;letter-spacing:1.1px}.sensor-card p{font-size:11px;line-height:1.8}.sensor-card .price{font-size:13px}.sensor-card .button{font-size:11px;padding:14px 15px}.experience-bottom{position:absolute;bottom:0;left:0;right:0;z-index:4;background:linear-gradient(transparent,#e3e8dc 60%);padding:35px 4% 22px;display:flex;align-items:end;justify-content:space-between;gap:20px;pointer-events:none}.experience-bottom button,.experience-bottom .zone-tabs{pointer-events:auto}.experience-bottom .scene-controls{position:static;display:flex;flex-direction:column;align-items:start;gap:10px}.scene-controls button{background:#f8faf3b0;padding:10px 15px;font-size:10px}.scene-controls span{font-size:8px;max-width:200px;line-height:1.5}.experience-bottom .zone-tabs{position:static;display:flex;gap:12px}.zone-tabs button{border:0;background:none;border-radius:0;color:#8a9487;padding:6px 8px;display:flex;flex-direction:column;gap:7px;align-items:center;min-width:64px}.zone-tabs button b{font-size:13px;display:grid;place-items:center;width:32px;height:32px;font-weight:500;border:1px solid #b7c4b3;border-radius:50%;background:#f1f4eb70}.zone-tabs button span{font-size:9px}.zone-tabs button.active{color:var(--ink);background:none;border:0}.zone-tabs button.active b{color:white;background:var(--ink);border-color:var(--ink)}.scroll-hint{font-size:7px;letter-spacing:1.3px;display:flex;flex-direction:column;align-items:center;gap:15px;padding-bottom:12px}.scroll-hint span{font-size:22px}.scroll-track{position:absolute;bottom:0;left:0;right:0;height:3px;background:#ced8c7;z-index:6}.scroll-track div{height:100%;background:var(--accent);transform:scaleX(0);transform-origin:left;will-change:transform}.scene-labels{position:absolute;inset:0;pointer-events:none;z-index:3}.sensor-label{position:absolute;transform:translate(-9px,-9px);border:0;padding:0;background:none;display:flex;gap:8px;align-items:center;white-space:nowrap;pointer-events:auto;color:var(--ink)}.sensor-label[hidden]{display:none}.sensor-label i{width:18px;height:18px;border:5px solid #fff;border-radius:50%;background:var(--accent);box-shadow:0 0 0 6px #f16d4830,0 2px 10px #273d3020}.sensor-label span{padding:8px 10px;background:#fffef5ec;border:1px solid white;font-size:9px;border-radius:5px;box-shadow:0 5px 25px #243e2510}.sensor-label:hover span{background:var(--ink);color:white}.visual-packs{display:flex;gap:5px;margin-top:12px}.visual-packs button{border:1px solid #c2cfbb;background:none;font-size:10px;padding:8px 10px;border-radius:20px;flex:1;color:var(--ink)}.visual-packs button.active{background:var(--ink);color:white}.scene-loading{font-size:12px;color:var(--muted);position:absolute;top:50%;left:40%}@media(min-width:1600px){.sensor-card{width:290px}.explore-sticky #explore-house{right:17%;left:4%}}@media(max-width:1000px) and (min-width:621px){.experience-heading{top:70px;max-width:280px}.experience-heading h2{font-size:35px}.experience-heading>p{font-size:10px;max-width:200px}.sensor-card{width:215px;padding:18px;right:3%;top:34%}.sensor-card h3{font-size:19px}.experience-bottom .zone-tabs{gap:3px}.zone-tabs button{min-width:52px;padding:5px}.scroll-hint{display:none}.explore-sticky{top:76px;height:calc(100svh - 76px)}}@media(max-width:620px){.hero-art{height:350px;margin-top:5px}.hero-art .house-view{inset:-20px -13% 0 -13%;width:auto}.hero-art .floating.top{top:10px}.hero-art .floating.bottom{left:0;bottom:5px}.hero-art .art-caption{display:none}.explorer{height:420vh}.explore-sticky{top:70px;height:calc(100svh - 70px);min-height:650px}.experience-top{top:17px;left:6%;right:6%}.experience-top .eyebrow{font-size:7px;letter-spacing:1px}.experience-top #scene-num{font-size:9px}.experience-heading{top:53px;left:6%;max-width:88%}.experience-heading>span{font-size:7px}.experience-heading h2{font-size:29px;letter-spacing:-1.2px;margin:10px 0 7px;line-height:1.12}.experience-heading h2 br{display:none}.experience-heading h2 em:before{content:' '}.experience-heading>p{font-size:10px;line-height:1.6;max-width:280px;margin-bottom:0}.explore-sticky #explore-house{top:135px;bottom:225px;left:-13%;right:-13%;width:auto;min-height:260px}.sensor-card{left:6%;right:6%;top:auto;bottom:95px;width:auto;padding:14px 16px;min-height:0;max-height:220px}.sensor-card>.eyebrow{display:none}.sensor-card .product-visual{float:left;width:64px;height:90px;margin:0 13px 0 0}.sensor-card .product-visual .device{scale:.55}.sensor-card h3{font-size:17px;margin:0 0 5px}.sensor-card p{font-size:10px;line-height:1.5;margin-bottom:6px}.sensor-card .price{font-size:10px}.sensor-card .button{font-size:10px;padding:10px 12px;width:calc(100% - 77px);margin-top:8px;gap:8px}.sensor-card:has(#start-tour) .button{width:100%}.sensor-card:has(#start-tour) h3 br{display:none}.sensor-card:has(#start-tour) p{max-width:275px}.sensor-card:has(.visual-packs) .product-visual{display:none}.sensor-card:has(.visual-packs) .button{width:100%}.visual-packs{margin:0 0 9px}.visual-packs button{font-size:9px;padding:7px}.experience-bottom{padding:0 6% 13px;display:block;background:linear-gradient(transparent,#e3e8dc);pointer-events:none}.experience-bottom .scene-controls{position:absolute;bottom:290px;left:6%;gap:5px}.scene-controls button{font-size:8px;padding:7px 10px}.scene-controls span{font-size:6px;max-width:190px}.experience-bottom .zone-tabs{display:flex;justify-content:space-between;gap:0}.zone-tabs button{min-width:0;padding:5px 1px;flex:1;gap:6px}.zone-tabs button b{font-size:10px;width:25px;height:25px}.zone-tabs button span{font-size:8px}.scroll-hint{display:none}.sensor-label span{font-size:7px;padding:5px 7px;max-width:90px;white-space:normal;text-align:left}.sensor-label i{width:14px;height:14px;border-width:4px;box-shadow:0 0 0 4px #f16d4820}.sensor-label{gap:5px;transform:translate(-7px,-7px)}}@media(prefers-reduced-motion:reduce){.sensor-card{transition:none}}
@media(max-width:620px) and (max-height:740px){.explore-sticky{min-height:560px}.experience-heading{top:46px}.experience-heading h2{font-size:25px}.experience-heading>p{font-size:9px}.explore-sticky #explore-house{top:115px;bottom:215px;min-height:210px}.sensor-card{bottom:80px;padding:12px}.sensor-card h3{font-size:15px}.sensor-card p{font-size:9px}.sensor-card .product-visual{height:75px}.sensor-card .button{padding:8px 10px}.experience-bottom .scene-controls{bottom:255px}.visual-packs button{padding:5px}.zone-tabs button span{font-size:7px}}
/* One architectural experience: photographic entrance, then explanatory 3D. */
.hero.hero-editorial{display:block;min-height:0;height:auto;max-height:none;padding:45px 6% 100px}.hero-editorial .hero-copy{max-width:1000px}.hero-editorial h1{font-size:clamp(44px,5.2vw,76px);line-height:1.05;margin:24px 0;max-width:900px}.hero-editorial .intro{max-width:620px;font-size:15px}.hero-editorial .hero-note{margin-top:22px}.hero-editorial .hero-foot{left:6%;right:6%}
.cinematic-entry{position:absolute;inset:0;overflow:hidden;z-index:2;pointer-events:none;background:#223b36}.cinematic-entry img{width:100%;height:100%;object-fit:cover;object-position:50% 48%;will-change:transform,opacity}.cinematic-entry:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#13251e99,transparent 65%),linear-gradient(0deg,#14271c66,transparent 40%)}
.explore-sticky[data-chapter="0"] .experience-heading h2,.explore-sticky[data-chapter="0"] .experience-heading>span,.explore-sticky[data-chapter="0"] .experience-heading>p,.explore-sticky[data-chapter="0"] .experience-top{color:#fff}.explore-sticky[data-chapter="0"] .experience-heading h2 em{color:#ffd1a9}.explore-sticky[data-chapter="0"] .experience-bottom{background:linear-gradient(transparent,#e3e8dce8 95%)}
.sensor-card{top:22%;width:285px;padding:22px;max-height:calc(100% - 190px);overflow:auto}.detection-metrics{display:flex;align-items:center;gap:14px;padding:13px 0;margin:8px 0 14px;border-top:1px solid #cbd4c7;border-bottom:1px solid #cbd4c7}.detection-metrics b{font-size:30px;color:#d85e32;white-space:nowrap}.detection-metrics span{font-size:12px;font-weight:600}.scene-disclaimer{display:block;font-size:10px;line-height:1.6;color:#68776d;margin:12px 0}.sensor-card .text-action{display:block;font-size:11px;line-height:1.6;margin-top:14px}.sensor-card:has(.detection-metrics) p{font-size:12px;line-height:1.7}.coverage-legend{position:absolute;bottom:120px;left:4%;z-index:4;display:flex;flex-wrap:wrap;gap:9px 16px;max-width:380px;padding:12px 16px;background:#fffef2ed;border:1px solid #fff;border-radius:8px;font-size:11px;pointer-events:none}.coverage-legend[hidden],.coverage-legend span[hidden]{display:none}.coverage-legend span:before{content:'';display:inline-block;width:10px;height:10px;border-radius:50%;margin-right:7px;background:#f46b36}.coverage-legend .legend-in:before{background:#00a8a0}.coverage-legend small{width:100%;font-size:9px;color:#66766c}.explore-sticky #explore-house{inset:5% 17% 5% -4%}.scene-controls #toggle-coverage{font-size:9px;border:1px solid #b7c4b3;border-radius:20px}.scene-labels{z-index:3}.sensor-label span{max-width:170px;white-space:normal;line-height:1.4;text-align:left}.sensor-label[data-scene-label="motion"] i,.sensor-label[data-scene-label="motion2"] i{background:#00a8a0}.sensor-label[data-scene-label="range"] i{display:none}
@media(max-width:1000px) and (min-width:621px){.sensor-card{width:235px;right:3%;top:28%;padding:17px}.sensor-card h3{font-size:20px}.sensor-card:has(.detection-metrics) p{font-size:11px}.coverage-legend{bottom:135px;max-width:300px}}
@media(max-width:620px){.hero.hero-editorial{padding:30px 6% 85px}.hero-editorial h1{font-size:43px;letter-spacing:-2px}.hero-editorial .intro{font-size:13px}.hero-editorial .hero-foot>span:first-child{max-width:160px;font-size:7px}.cinematic-entry img{object-position:46% 50%}.explore-sticky #explore-house{inset:125px -12% 280px;min-height:220px}.sensor-card{top:auto;bottom:94px;left:5%;right:5%;width:auto;padding:13px 15px;max-height:230px}.sensor-card h3{font-size:17px;margin-bottom:7px}.sensor-card .sensor-ref{font-size:8px;line-height:1.5}.sensor-card:has(.detection-metrics) p{font-size:10px;line-height:1.5}.sensor-card .scene-disclaimer{font-size:8px;line-height:1.5;margin:7px 0}.sensor-card .text-action{font-size:9px;margin:7px 0 0}.detection-metrics{float:right;border:0;padding:0 0 5px 8px;margin:0;display:flex;flex-direction:column;gap:1px;max-width:105px}.detection-metrics b{font-size:23px}.detection-metrics span{font-size:9px}.sensor-card .button{width:100%;padding:10px 13px}.coverage-legend{bottom:338px;left:5%;max-width:90%;padding:7px 10px;gap:3px 12px;font-size:8px}.coverage-legend small{font-size:7px}.experience-bottom .scene-controls{bottom:285px;left:5%;gap:4px;flex-direction:row;align-items:center}.scene-controls #toggle-coverage{font-size:8px;padding:7px}.scene-controls span{display:none}.sensor-label span{font-size:7px;max-width:100px;padding:4px}.experience-heading>p{font-size:9px;max-width:290px}.experience-heading h2{font-size:27px}.explore-sticky[data-chapter="0"] .coverage-legend{display:none}}
@media(prefers-reduced-motion:reduce){.cinematic-entry img{will-change:auto;transform:none!important}}
@media(min-width:850px){.hero-editorial .hero-copy{max-width:none;display:grid;grid-template-columns:1.15fr 1fr;column-gap:8%;align-items:start}.hero-editorial .hero-copy>.eyebrow{grid-column:1/-1}.hero-editorial h1{grid-column:1;grid-row:2/5;font-size:62px;margin:12px 0}.hero-editorial .intro{grid-column:2;grid-row:2;margin-top:20px;max-width:440px}.hero-editorial .hero-copy>.button{grid-column:2;grid-row:3;justify-self:start;margin-top:0}.hero-editorial .hero-note{grid-column:2;grid-row:4}}
/* Continuous photographic journey: no geometry or renderer fallback. */
#explore-house,#scene-labels{display:none!important}.cinematic-entry{z-index:1;opacity:1!important;visibility:visible!important}.photo-world{position:absolute;left:0;top:0;transform-origin:0 0;will-change:transform}.cinematic-entry .photo-world img{position:absolute;inset:0;width:100%;height:100%;object-fit:fill;transform:none!important}.photo-zones{position:absolute;inset:0;width:100%;height:100%;overflow:visible}.photo-zones>g{transition:opacity .5s}.cinematic-entry:after{background:linear-gradient(90deg,#10231dc7 0%,#10231d55 27%,transparent 55%),linear-gradient(0deg,#10231ddd,transparent 25%)}.explore-sticky .experience-heading h2,.explore-sticky .experience-heading>span,.explore-sticky .experience-heading>p,.explore-sticky .experience-top{color:#fff!important}.explore-sticky .experience-heading h2 em{color:#ffd1a9!important}.explore-sticky .experience-bottom{background:none!important}.scene-controls span,.scroll-hint{color:#fff}.zone-tabs button,.zone-tabs button.active{color:#fff}.zone-tabs button b{background:#203b2a80;border-color:#ffffff88}.zone-tabs button.active b{background:#f16d48;border-color:#f16d48}.sensor-card{background:#fffdf2ed;box-shadow:0 15px 70px #08160e33}.experience-heading{max-width:290px}.experience-heading h2{font-size:clamp(32px,3.1vw,49px)}
@media(max-width:620px){.cinematic-entry{inset:165px 0 300px;background:#24392d}.explore-sticky{background:#172b24;overflow:hidden}.cinematic-entry:after{background:linear-gradient(0deg,#172b24,transparent 15%,transparent 85%,#172b24)}.experience-heading{top:48px;max-width:90%}.experience-heading h2{font-size:26px}.experience-heading>p{max-width:330px}.experience-heading>span{font-size:7px}.photo-zones text{font-size:20px}.coverage-legend{bottom:309px;font-size:7px;padding:5px 8px}.coverage-legend small{display:none}.experience-bottom .scene-controls{bottom:268px}.sensor-card{bottom:85px;max-height:190px}.sensor-card .scene-disclaimer{font-size:7px}.sensor-card:has(#start-tour){max-height:180px}.experience-bottom{padding-bottom:10px}.zone-tabs button span{color:#fff}.scene-controls #toggle-coverage{background:#f8faf3ec}}
@media(prefers-reduced-motion:reduce){.photo-zones>g{transition:none}.photo-world{will-change:auto}}
.mounted-device{filter:drop-shadow(2px 3px 2px #17201688)}.scene-product{display:flex;align-items:center;gap:12px;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid #dce0d5}.scene-product img{width:64px;height:73px;object-fit:contain}.scene-product span{font-size:8px;line-height:1.9;letter-spacing:.7px;color:#718173}.scene-product b{font-size:14px;letter-spacing:.3px;color:#244737}.demo-install{background:#e7eddf;border-left:3px solid #bdcfae;padding:10px 12px;font-size:10px;line-height:1.5;margin-top:12px}.demo-install small{display:block;font-size:8px;margin-top:4px;color:#64735d}.sensor-card{border-radius:18px}.sensor-card:has(.scene-product){top:17%;max-height:calc(100% - 160px)}.coverage-legend{max-width:430px}.photo-zones>g{transition:opacity .4s}
@media(max-width:620px){.scene-product{float:left;margin:0 10px 5px 0;padding:0;border:0;display:block}.scene-product img{width:40px;height:53px}.scene-product span{display:none}.demo-install{clear:both;padding:6px 9px;font-size:9px;margin-top:7px}.demo-install small{font-size:7px}.sensor-card:has(.scene-product){top:auto;max-height:190px}.photo-zones text{font-size:11px}.coverage-legend{max-width:90%}}

.pack-recommended{position:relative;border:2px solid #37634b!important}.recommendation{display:inline-block;background:#264b38;color:#fff;padding:7px 12px;border-radius:20px;font-size:10px;letter-spacing:1px;margin-bottom:18px}.pack-extension{font-size:11px!important;line-height:1.6;padding:12px;border-radius:8px;background:#e8eddf}.sensor-card:has(.scene-product) .detection-metrics b{font-size:24px}

.signal-flow{animation:radio-flow 2s linear infinite}.signal-flow .outgoing{stroke:#79f4d0}.mobile-alert{border-radius:13px;background:#e6eee3;border-left:3px solid #f16d48;padding:13px;margin:12px 0;display:grid;gap:6px}.mobile-alert span{font-size:8px;letter-spacing:1px}.mobile-alert b{font-size:16px}.mobile-alert small{font-size:10px;line-height:1.4}.resilience{display:grid;gap:10px;margin:12px 0}.resilience div{display:grid;gap:4px;border-top:1px solid #dce0d5;padding-top:9px}.resilience b{font-size:12px;color:#244737}.resilience span{font-size:10px;line-height:1.5}.explore-sticky[data-chapter="3"] .sensor-card{top:15%;max-height:calc(100% - 150px)}
@keyframes radio-flow{to{stroke-dashoffset:-34}}
@media(max-width:620px){.explore-sticky[data-chapter="3"] .sensor-card{top:auto;bottom:85px;max-height:190px}.mobile-alert{padding:8px;margin:7px 0}.mobile-alert b{font-size:12px}.resilience{gap:6px}.resilience b{font-size:10px}.resilience span{font-size:9px}}
@media(prefers-reduced-motion:reduce){.signal-flow{animation:none}}

/* Compare packs without adding to the basket. */
.pack-navigation{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:14px 0 8px}.pack-navigation h3{margin:0;text-align:center;flex:1}.pack-navigation button{width:34px;height:34px;flex-shrink:0;border:1px solid #b7c4b3;border-radius:50%;background:#fffdf2;color:#244737;font-size:25px;cursor:pointer}.pack-navigation button:disabled{opacity:.25;cursor:default}.visual-packs button{cursor:pointer;min-height:36px}.pack{scroll-margin-top:115px}.pack-selected{outline:3px solid #f16d48;outline-offset:5px}.pack:focus-visible{outline:3px solid #f16d48}.photo-zones g{transition:opacity .35s,filter .35s}
@media(max-width:620px){.sensor-card:has(.visual-packs){max-height:210px}.pack-navigation{margin:6px 0}.pack-navigation button{width:30px;height:30px}.visual-packs{margin-bottom:5px}.pack{scroll-margin-top:85px}}
@media(prefers-reduced-motion:reduce){.photo-zones g{transition:none}}
/* Keep the facade-mounted devices visible while comparing packs. */
@media(min-width:621px){.explore-sticky[data-chapter="4"] .sensor-card{top:auto;bottom:105px;max-height:44%}}

/* Sound radiates only from the siren included in the selected pack. */
#siren-device .siren-halo,#siren-device .siren-sound{display:none}
#siren-device[data-included="true"] .siren-halo,#siren-device[data-included="true"] .siren-sound{display:block}
#siren-device[data-included="true"] .sound-wave{animation:siren-sound-wave 1.8s ease-out infinite}
#siren-device .wave-2{animation-delay:.24s!important}
#siren-device .wave-3{animation-delay:.48s!important}
@keyframes siren-sound-wave{0%,100%{opacity:.15}35%{opacity:1}75%{opacity:.35}}
@media(prefers-reduced-motion:reduce){#siren-device[data-included="true"] .sound-wave{animation:none;opacity:.9}}

/* Desktop: keep the information panel outside the photographic viewport. */
@media (min-width:1001px) {
  .explore-sticky {
    --scene-panel-width:clamp(280px,24vw,360px);
    --scene-panel-space:calc(var(--scene-panel-width) + 48px);
    background:#172b24;
  }
  .explore-sticky .cinematic-entry {
    right:var(--scene-panel-space);
    background:#172b24;
  }
  .explore-sticky #sensor-card {
    box-sizing:border-box;
    left:auto;
    right:24px;
    top:72px;
    bottom:110px;
    width:var(--scene-panel-width);
    height:auto;
    min-height:0;
    max-height:none;
    padding:22px;
    overflow-y:auto;
    background:#fffdf2;
    backdrop-filter:none;
    box-shadow:none;
    scrollbar-gutter:stable;
  }
  .explore-sticky .experience-heading {left:3%;max-width:250px}
  .explore-sticky .experience-heading h2 {font-size:clamp(30px,2.6vw,46px)}
  .explore-sticky .experience-heading>p {max-width:220px}
  .explore-sticky .experience-bottom {
    right:var(--scene-panel-space);
    padding-left:3%;
    padding-right:3%;
    gap:12px;
  }
  .explore-sticky .experience-bottom .scroll-hint {display:none}
  .explore-sticky .experience-bottom .zone-tabs {gap:4px}
  .explore-sticky .zone-tabs button {min-width:50px;padding:6px 4px}
  .explore-sticky #coverage-legend {
    box-sizing:border-box;
    left:auto;
    right:24px;
    bottom:20px;
    width:var(--scene-panel-width);
    max-width:none;
    padding:10px 14px;
  }
}

/* Explain the offer before the exploration begins. */
.hero-editorial .hero-promise{min-width:0}
.hero-editorial .hero-offer{font-family:Manrope,sans-serif;font-size:clamp(24px,2.35vw,36px);font-weight:500;line-height:1.3;letter-spacing:-.8px;margin:32px 0 16px;color:var(--ink)}
.hero-editorial .hero-offer strong{color:#b94322;font-weight:700}
.hero-editorial .hero-offer-note{font-size:14px;line-height:1.7;max-width:410px;color:#52655b;margin:0 0 14px}
.customer-journey{background:#edf1e7;border:1px solid #dbe3d4;border-radius:16px;padding:26px;margin:28px 0 32px}
.customer-journey h3{font-size:26px;line-height:1.2;margin:12px 0 24px}
.customer-journey ol{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}
.customer-journey li>span{display:grid;place-items:center;width:32px;height:32px;border:1px solid #a6b99d;border-radius:50%;font-size:12px;margin-bottom:14px}
.customer-journey li strong{display:block;font-size:14px;line-height:1.5}
.customer-journey li p{font-size:12px;line-height:1.7;margin:8px 0 0;color:#52655b}
.journey-availability{font-size:12px;line-height:1.6;border-top:1px solid #cad6c3;padding-top:18px;margin:22px 0 0}
.pack-choice-instruction{font-size:14px;line-height:1.7;margin:0 0 22px}
.pack .button{width:100%;gap:12px}
.tour-scroll-guide{display:none}
.sensor-card .pack-picker-help{font-size:12px;line-height:1.6;margin:12px 0;color:#52655b}
.sensor-card .pack-picker-help strong{color:#233b36}
.sensor-card .visual-packs{gap:5px;flex-wrap:wrap}
.sensor-card .visual-packs button{min-height:44px;font-size:12px;font-weight:600;padding:10px 8px}
.sensor-card .visual-packs button.active{box-shadow:0 0 0 2px #f16d48}
@media(min-width:850px){
 .hero-editorial .hero-promise{grid-column:1;grid-row:2/5;align-self:start}
 .hero-editorial .hero-promise h1{font-size:clamp(44px,4.5vw,68px)}
}
@media(min-width:1001px){
 .explore-sticky{--scene-panel-space:calc(var(--scene-panel-width) + 148px)}
 .tour-scroll-guide{display:flex;position:absolute;z-index:4;right:calc(var(--scene-panel-width) + 34px);width:104px;top:45%;transform:translateY(-50%);flex-direction:column;align-items:center;text-align:center;color:#fff;padding:0 6px}
 .tour-scroll-guide p{font-size:13px;font-weight:600;line-height:1.6;margin:0 0 15px}
 .tour-scroll-guide button{width:46px;height:46px;flex-shrink:0;border:1px solid #f9caac;border-radius:50%;background:#f16d48;color:#fff;font-size:26px}
 .tour-scroll-guide button span{display:block;animation:tour-nudge 1.8s ease-in-out infinite}
 .tour-scroll-guide small{font-size:10px;line-height:1.7;color:#c5d5c8;margin-top:15px}
 .explore-sticky[data-chapter="4"] .tour-scroll-guide button span{animation:none}
}
@media(max-width:1000px){.customer-journey ol{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){
 .hero-editorial .hero-offer{font-size:25px;letter-spacing:-.5px;margin-top:22px}
 .hero-editorial .hero-offer-note{font-size:13px}
 .hero-editorial .hero-promise{margin-bottom:28px}
 .customer-journey{padding:20px}
 .customer-journey ol{grid-template-columns:1fr;gap:20px}
 .customer-journey li{display:flex;gap:14px}
 .customer-journey li>span{flex-shrink:0;margin:0}
 .customer-journey h3{font-size:23px}
 .sensor-card .pack-picker-help{font-size:10px;margin:8px 0}
 .sensor-card .visual-packs button{font-size:11px}
}
#parcours-client{scroll-margin-top:120px}
@keyframes tour-nudge{0%,100%{transform:translateY(-3px)}50%{transform:translateY(3px)}}
@media(prefers-reduced-motion:reduce){.tour-scroll-guide button span{animation:none}}

/* Tablet: reserve separate, non-overlapping areas for the house and panel. */
@media(min-width:621px) and (max-width:1000px){
 header{gap:16px;height:76px;padding-inline:3%}
 header nav{display:none}
 header .brand{flex-shrink:0;font-size:28px}
 header .account-open,header .cart-open{font-size:12px;padding:10px 14px;white-space:nowrap}
 .explore-sticky{
  --scene-panel-width:clamp(240px,32vw,300px);
  --scene-panel-space:calc(var(--scene-panel-width) + 36px);
  top:76px;height:calc(100svh - 76px);min-height:520px;background:#172b24;
 }
 .explore-sticky .cinematic-entry{
  inset:130px var(--scene-panel-space) 130px 0;
  background:#172b24;
 }
 .explore-sticky .cinematic-entry:after{background:none}
 .explore-sticky #sensor-card{
  box-sizing:border-box;left:auto;right:12px;top:55px;bottom:100px;
  width:var(--scene-panel-width);height:auto;min-height:0;max-height:none;
  padding:16px;overflow-y:auto;scrollbar-gutter:stable;
  background:#fffdf2;backdrop-filter:none;box-shadow:none;
 }
 .explore-sticky .experience-top{top:16px;left:18px;right:18px}
 .explore-sticky .experience-heading{
  top:50px;left:18px;width:calc(100% - var(--scene-panel-space) - 30px);max-width:none;
 }
 .explore-sticky .experience-heading>span{font-size:8px}
 .explore-sticky .experience-heading h2{font-size:25px;line-height:1.12;letter-spacing:-1px;margin:10px 0 0}
 .explore-sticky .experience-heading>p{display:none}
 .explore-sticky .experience-bottom{
  left:0;right:var(--scene-panel-space);bottom:0;display:block;padding:10px 12px 16px;
 }
 .explore-sticky .experience-bottom .zone-tabs{width:100%;gap:0;justify-content:space-between}
 .explore-sticky .zone-tabs button{min-width:0;flex:1;padding:5px 1px}
 .explore-sticky .zone-tabs button span{font-size:8px;line-height:1.3}
 .explore-sticky .experience-bottom .scene-controls{
  position:absolute;left:18px;bottom:80px;gap:4px;
 }
 .explore-sticky .scene-controls span{display:none}
 .explore-sticky .scene-controls #toggle-coverage{font-size:9px;padding:9px 12px}
 .explore-sticky #coverage-legend{
  box-sizing:border-box;left:auto;right:12px;bottom:16px;
  width:var(--scene-panel-width);max-width:none;padding:8px 10px;font-size:10px;
 }
 .explore-sticky #coverage-legend small{font-size:8px}
 .explore-sticky .scroll-hint{display:none}
}

/* Distinct radio and audible alarm illustrations; no sound is played. */
.central-device{pointer-events:none}
.central-device .central-wave{opacity:.2}
.central-device.is-active .central-wave{animation:central-wave 2.4s ease-in-out infinite}
.central-device .wave-2{animation-delay:.3s!important}
.central-device .wave-3{animation-delay:.6s!important}
.central-sound .central-wave{animation-duration:1.8s!important}
.signal-key{display:grid;gap:5px;border-left:3px solid #3b91a5;padding:10px;background:#edf3ed}
.signal-key span{font-size:10px;line-height:1.5}
.signal-key small{font-size:9px;color:#52655b}
@keyframes central-wave{0%,100%{opacity:.15}35%,50%{opacity:1}80%{opacity:.3}}
/* A high-contrast invitation, placed outside the photographic viewport. */
.explore-sticky .tour-scroll-guide{background:#fff3dd;color:#243b32;border:2px solid #f16d48;border-radius:18px;box-shadow:0 0 24px #f6a14c55;padding:16px 8px}
.explore-sticky .tour-scroll-guide p{color:#243b32;font-weight:800}
.explore-sticky .tour-scroll-guide small{color:#52655b}
.explore-sticky .tour-scroll-guide button{background:#c84826;border:2px solid #fff;color:white;box-shadow:0 0 0 4px #f7bc86}
@media(min-width:1001px){.explore-sticky .tour-scroll-guide{width:112px;right:calc(var(--scene-panel-width) + 30px)}}
@media(min-width:621px) and (max-width:1000px){
 .explore-sticky .cinematic-entry{bottom:178px}
 .explore-sticky .tour-scroll-guide{
  display:grid;grid-template-columns:minmax(0,1fr) 44px;align-items:center;gap:10px;
  position:absolute;z-index:5;left:18px;right:calc(var(--scene-panel-space) + 18px);
  top:auto;bottom:126px;width:auto;height:44px;transform:none;padding:4px 10px;border-radius:12px;
 }
 .explore-sticky .tour-scroll-guide p{margin:0;font-size:12px;line-height:1.3;text-align:left}
 .explore-sticky .tour-scroll-guide button{width:34px;height:34px;font-size:23px;justify-self:end}
 .explore-sticky .tour-scroll-guide small{display:none}
}
@media(max-width:620px){
 .explore-sticky .experience-heading>p{display:none}
 .explore-sticky .experience-heading h2{font-size:25px}
 .explore-sticky .cinematic-entry{top:196px}
 .explore-sticky .tour-scroll-guide{
  display:grid;grid-template-columns:minmax(0,1fr) 40px;align-items:center;gap:8px;
  position:absolute;z-index:5;left:5%;right:5%;top:142px;bottom:auto;width:auto;height:44px;
  transform:none;padding:4px 12px;border-radius:12px;
 }
 .explore-sticky .tour-scroll-guide p{margin:0;font-size:12px;line-height:1.3;text-align:left}
 .explore-sticky .tour-scroll-guide button{width:34px;height:34px;font-size:23px;justify-self:end}
 .explore-sticky .tour-scroll-guide small{display:none}
}
.explore-sticky .tour-scroll-guide button span{display:block;animation:tour-nudge 1.8s ease-in-out infinite}
@media(prefers-reduced-motion:reduce){
 .central-device.is-active .central-wave{animation:none;opacity:.85}
 .explore-sticky .tour-scroll-guide button span{animation:none}
}

/* Scroll guidance stays in the existing reserved area, clear of the house. */
@media (hover:hover) and (pointer:fine){
 .explore-sticky:not([data-chapter="4"]){cursor:url("assets/scroll-down-cursor.svg") 24 24,s-resize}
 .explore-sticky :is(button,a,input,select,textarea,[role="button"]){cursor:pointer}
 .explore-sticky #sensor-card{cursor:auto}
}
.explore-sticky:not([data-chapter="4"]) .tour-scroll-guide{
 border-color:#c84826;
 box-shadow:0 0 0 4px #fff3dd66,0 5px 22px #102a2966;
 animation:tour-guide-arrival 1.6s ease-in-out 3;
}
.explore-sticky[data-chapter="4"] .tour-scroll-guide button span{animation:none}
@media(max-width:1000px){
 .explore-sticky .tour-scroll-guide{grid-template-columns:minmax(0,1fr) 44px}
 .explore-sticky .tour-scroll-guide button{width:44px;height:44px;font-size:30px}
 .explore-sticky .tour-scroll-guide p{font-size:13px;line-height:1.2}
}
@media(hover:none) and (pointer:coarse){
 .explore-sticky:not([data-chapter="4"]) .tour-scroll-guide p::after{
  content:"Glissez le doigt vers le haut";display:block;font-size:10px;font-weight:500;line-height:1.4;margin-top:3px;
 }
}
@keyframes tour-guide-arrival{
 0%,100%{box-shadow:0 0 0 4px #fff3dd66,0 5px 22px #102a2966}
 50%{box-shadow:0 0 0 7px #f16d4880,0 5px 26px #102a2980}
}
@media(prefers-reduced-motion:reduce){
 .explore-sticky:not([data-chapter="4"]) .tour-scroll-guide{animation:none}
}

/* Photographic opening: the same home introduces the interactive tour below. */
.hero.hero-editorial{
 background-color:#18352e;
 background-image:linear-gradient(90deg,rgba(12,33,28,.88) 0%,rgba(12,33,28,.66) 48%,rgba(12,33,28,.42) 100%),url("assets/villa-immersive.webp");
 background-size:cover;background-position:center;color:#fffdf5;
}
.hero-editorial .hero-copy{position:relative;z-index:1}
.hero-editorial h1{color:#fffdf5;text-shadow:0 2px 20px #102a2940}
.hero-editorial h1 em,.hero-editorial .hero-offer strong{color:#ffd0ad}
.hero-editorial .hero-offer{color:#fffdf5}
.hero-editorial .hero-offer-note,.hero-editorial .hero-note{color:#f1eee3}
.hero-editorial .intro{
 color:#fffdf5;background:rgba(12,33,28,.72);padding:24px;
 border:1px solid #ffffff30;border-radius:16px;
}
.hero-editorial .intro p:last-child{margin-bottom:0}
.hero-editorial .intro a{color:#ffd0ad;text-decoration:underline;text-underline-offset:3px}
.hero-editorial .hero-promise>.text-link{color:#ffd0ad}
.hero-editorial .hero-foot{color:#fffdf5;border-color:#ffffff55;z-index:1}
.hero-editorial .hero-copy>.button{background:#c84826;color:#fff}
.hero-editorial .hero-copy>.button:hover{background:#ad3b1c}
.hero-editorial :is(a,button):focus-visible{outline-color:#ffd0ad}
@media(max-width:849px){
 .hero.hero-editorial{
  background-image:linear-gradient(180deg,rgba(12,33,28,.76),rgba(12,33,28,.60) 45%,rgba(12,33,28,.91)),url("assets/villa-immersive.webp");
  background-position:58% center;
 }
 .hero-editorial .intro{max-width:none;padding:20px}
}

/* The photo remains visible until YouTube confirms muted playback. */
.hero-editorial .hero-video{position:absolute;inset:0;z-index:0;overflow:hidden;pointer-events:none;opacity:0}
.hero-editorial .hero-video.is-playing{opacity:1}
.hero-editorial .hero-video iframe{
 position:absolute;left:50%;top:50%;width:var(--video-width,100%);height:var(--video-height,100%);
 transform:translate(-50%,-50%);border:0;max-width:none;pointer-events:none;
}
.hero-editorial .hero-video::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#0c211ce0,#0c211c8a 55%,#0c211c70)}
.hero-editorial .hero-copy,.hero-editorial .hero-foot{z-index:2}
.hero-video-toggle{position:relative;z-index:2;display:block;margin:24px 0 0 auto;background:#0c211ccc;color:#fffdf5;border:1px solid #ffffff66;border-radius:20px;padding:10px 14px;font-size:11px}
.hero-video-toggle[hidden]{display:none}
@media(max-width:849px){.hero-editorial .hero-video::after{background:linear-gradient(180deg,#0c211cc7,#0c211ca3 45%,#0c211ceb)}}
@media(prefers-reduced-motion:reduce){.hero-editorial .hero-video{display:none}}

/* Keep the introductory copy readable over every video frame. */
.hero.hero-editorial .hero-copy .intro{background:rgba(12,33,28,.80)}
.hero.hero-editorial .hero-copy .intro p{color:#fffdf5}
.hero.hero-editorial .hero-copy .intro strong{color:#ffb486}
.tour-mouse-arrow{
 position:fixed;left:0;top:0;z-index:60;width:48px;height:48px;
 transform:translate(-50%,-50%);pointer-events:none;
 display:grid;place-items:center;border:3px solid #fff3dd;border-radius:50%;
 background:#c84826;color:#fff;box-shadow:0 3px 12px #0004;
}
.tour-mouse-arrow[hidden]{display:none}
.tour-mouse-arrow span{display:block;font:32px/1 Arial,sans-serif;animation:tour-nudge 1.8s ease-in-out infinite}
@media(hover:hover) and (pointer:fine){
 .explore-sticky.tour-cursor-active:not([data-chapter="4"]){cursor:none}
}
@media(prefers-reduced-motion:reduce){.tour-mouse-arrow{display:none}}

/* Always-accessible search and a single compact account/cart group. */
body>header{display:flex;flex-wrap:nowrap;justify-content:space-between;gap:20px}
body>header .brand{flex-shrink:0}
.header-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-shrink:0;margin-left:auto}
body>header .header-actions button{
 display:inline-flex;align-items:center;justify-content:center;gap:8px;position:relative;
 min-height:44px;margin:0;padding:10px 14px;white-space:nowrap;font-size:12px;
 border:1px solid #bcc8bf;border-radius:28px;background:transparent;color:var(--ink);
}
.header-actions svg{width:21px;height:21px;flex-shrink:0}
body>header .header-actions .search-toggle{width:44px;padding:10px}
body>header .header-actions #count{margin:0;padding:2px 6px;min-width:20px;background:var(--ink);color:white;border-radius:20px;font-size:11px}
body>header .site-search{
 position:absolute;left:0;right:0;top:100%;margin:0;padding:20px 5.2%;
 box-shadow:0 12px 22px #102a2926;max-height:calc(100dvh - 100px);overflow:auto;
}
body>header .site-search[hidden]{display:none}
body>header .search-toggle[aria-expanded="true"]{background:var(--ink);color:white}
@media(max-width:1250px){body>header nav{display:none}}
@media(min-width:621px) and (max-width:1000px){body>header{height:76px;min-height:76px}}
@media(max-width:700px){
 body>header{gap:8px;padding-inline:12px}
 body>header .brand{font-size:25px}
 .header-actions{gap:4px}
 body>header .header-actions button{width:44px;height:44px;padding:10px}
 .header-actions .header-action-label{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
 body>header .header-actions #count{position:absolute;right:-2px;top:-5px;font-size:10px;min-width:18px;padding:2px 4px}
 body>header .site-search{grid-template-columns:1fr;padding:16px;max-height:calc(100dvh - 76px)}
 body>header .site-search>span{grid-column:1}
}
@media(max-width:620px){body>header{height:70px;min-height:70px}body>header .brand{font-size:23px;letter-spacing:-1.4px}}

/* Mobile: keep coverage controls above the tallest card, outside its text. */
@media(max-width:620px){
 .explore-sticky{
  --mobile-panel-bottom:85px;
  --mobile-panel-max-height:210px;
  --mobile-coverage-bottom:calc(var(--mobile-panel-bottom) + var(--mobile-panel-max-height) + 12px);
 }
 .explore-sticky #sensor-card{bottom:var(--mobile-panel-bottom)}
 .explore-sticky .sensor-card:has(.visual-packs){max-height:var(--mobile-panel-max-height)}
 .explore-sticky .experience-bottom .scene-controls{
  bottom:var(--mobile-coverage-bottom);left:5%;right:5%;
 }
 .explore-sticky .scene-controls #toggle-coverage{
  min-height:32px;padding:6px 12px;font-size:10px;line-height:18px;
 }
 .explore-sticky #coverage-legend{
  bottom:calc(var(--mobile-coverage-bottom) + 40px);
 }
}
@media(max-width:620px) and (max-height:740px){
 .explore-sticky{min-height:620px}
}
