/* Product scenes. Motion is driven entirely by the chapter's scroll properties. */
.scene-campercore{position:relative;isolation:isolate;overflow:hidden;container-type:inline-size;background:#172320;color:#eef4e9;border-radius:inherit;--cc-mint:#bddeb8;--cc-line:#b8d6b82e}
.scene-campercore .cc-atmosphere{position:absolute;inset:0;background:radial-gradient(ellipse at 48% 38%,#34524590,transparent 64%),radial-gradient(ellipse at 4% 100%,#8a98601c,transparent 48%);opacity:calc(.55 + var(--reveal,1)*.45)}
.scene-campercore .cc-grid{position:absolute;inset:32% -28% -50%;background-image:linear-gradient(#b2cfac0b 1px,transparent 1px),linear-gradient(90deg,#b2cfac0b 1px,transparent 1px);background-size:46px 46px;transform:perspective(600px) rotateX(56deg) translateY(calc(var(--scene-progress,.5)*-38px));transform-origin:center top;mask-image:linear-gradient(transparent,#000 18%,#000 65%,transparent)}
.scene-campercore .cc-scene-label{position:absolute;top:7%;left:6%;z-index:5;display:flex;align-items:center;gap:9px;font-size:9px;font-weight:600;letter-spacing:.16em;line-height:1.4;color:#c3cec0}
.scene-campercore .cc-status-dot{width:5px;height:5px;border-radius:50%;background:#c1dd97;box-shadow:0 0 12px #badb8270}
.scene-campercore .cc-connections{position:absolute;inset:0;width:100%;height:100%;z-index:1;opacity:calc(.35 + var(--detail,.7)*.65)}
.scene-campercore .cc-connection-base{stroke:#b9d2b31f;stroke-width:1}
.scene-campercore .cc-connection-flow{stroke:#bfd89b;stroke-width:1.2;stroke-linecap:round;stroke-dasharray:100;stroke-dashoffset:calc(100 - var(--reveal,1)*100)}
.scene-campercore .cc-flow-light{stroke:#e4d8a8;stroke-dashoffset:calc(100 - var(--detail,.7)*100)}
.scene-campercore .cc-flow-screen{stroke:#8cbcae;stroke-dashoffset:calc(100 - var(--detail,.7)*100)}
.scene-campercore .cc-van{position:absolute;left:31%;top:14%;width:30%;height:78%;z-index:2;transform:translate3d(calc(var(--pointer-x,0)*-5px),calc((1 - var(--reveal,1))*48px + var(--pointer-y,0)*-4px - var(--outro,0)*14px),0) rotate(calc(-9deg + var(--scene-progress,.5)*11deg));transform-origin:50% 56%;opacity:calc(.55 + var(--reveal,1)*.45)}
.scene-campercore .cc-van>img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;filter:drop-shadow(12px 22px 12px #060e0b77)}
.scene-campercore .cc-van-shadow{position:absolute;inset:12% -20% -2%;border-radius:50%;background:radial-gradient(ellipse,#0007,transparent 67%);transform:rotate(7deg)}
.scene-campercore .cc-cabin-light{position:absolute;left:18%;top:27%;width:61%;height:45%;border-radius:45%;background:radial-gradient(ellipse,#ffecbc63,transparent 68%);mix-blend-mode:screen;opacity:calc(var(--detail,.7)*.75);filter:blur(7px)}
.scene-campercore .cc-van-point{position:absolute;z-index:1;width:7px;height:7px;border:1px solid #e5f1d1;border-radius:50%;background:#cae59d;box-shadow:0 0 0 5px #c5df9e13,0 0 15px #d1e9a966}
.scene-campercore .cc-van-point-energy{left:46%;top:47%;opacity:var(--reveal,1)}
.scene-campercore .cc-van-point-light{left:51%;top:63%;background:#ffe5ac;border-color:#ffefce;opacity:var(--detail,.7)}
.scene-campercore .cc-energy-module,.scene-campercore .cc-light-module{position:absolute;left:6%;width:24%;max-width:176px;z-index:3;margin:0;border:1px solid #b0c6a52e;border-radius:12px;background:linear-gradient(140deg,#314238eb,#202f2ae8);box-shadow:0 12px 30px #050d072b;backdrop-filter:blur(14px);padding:15px 15px 12px}
.scene-campercore .cc-energy-module{top:21%;transform:translate3d(calc((1 - var(--reveal,1))*-36px + var(--pointer-x,0)*5px),calc((1 - var(--reveal,1))*16px + var(--pointer-y,0)*4px),0);opacity:calc(.45 + var(--reveal,1)*.55)}
.scene-campercore .cc-module-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:8px;font-weight:600;letter-spacing:.12em;line-height:1.3;color:#bdcbbb}
.scene-campercore .cc-module-index{font-variant-numeric:tabular-nums;font-size:8px;color:#6f8a76;letter-spacing:.02em}
.scene-campercore .cc-energy-icons{display:flex;align-items:center;gap:9px;margin:15px 0 12px;color:#c6e3af}
.scene-campercore .cc-energy-icons>svg{display:block;width:27px;height:27px;flex:0 0 27px}
.scene-campercore .cc-energy-bridge{position:relative;display:block;flex:1;height:1px;background:#bddeb832;overflow:hidden}
.scene-campercore .cc-energy-bridge>i{position:absolute;left:0;top:0;width:55%;height:100%;background:#d4e9ac;transform:translateX(calc(var(--scene-progress,.5)*160% - 30%))}
.scene-campercore .cc-energy-module>strong{display:block;font-size:17px;line-height:1.25;font-weight:500;letter-spacing:-.03em;color:#f0f5e7}
.scene-campercore .cc-energy-module>p{font-size:11px;line-height:1.5;color:#abbba9;margin:5px 0 13px}
.scene-campercore .cc-module-foot{display:flex;justify-content:space-between;gap:7px;border-top:1px solid #b8d6b81c;padding-top:8px;font-size:8px;line-height:1.3;color:#8da38f}
.scene-campercore .cc-light-module{top:62%;left:8%;width:25%;transform:translate3d(calc((1 - var(--detail,.7))*-26px + var(--pointer-x,0)*8px),calc((1 - var(--detail,.7))*24px + var(--pointer-y,0)*5px),0);opacity:calc(.5 + var(--detail,.7)*.5);padding-bottom:10px}
.scene-campercore .cc-light-row{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:13px;font-size:12px;line-height:1.25;color:#e2ebdc}
.scene-campercore .cc-light-toggle{display:block;position:relative;width:29px;height:16px;flex-shrink:0;background:#41594b;border:1px solid #c2dcb426;border-radius:20px}
.scene-campercore .cc-light-toggle>i{position:absolute;top:2px;left:2px;width:10px;height:10px;border-radius:50%;background:#afc5a6;transform:translateX(calc(var(--detail,.7)*12px));box-shadow:0 1px 3px #0003}
.scene-campercore .cc-light-toggle-kitchen{background:#6a86604d}
.scene-campercore .cc-light-toggle-kitchen>i{background:#dfebc2}
.scene-campercore .cc-light-toggle-bed>i{transform:translateX(calc(var(--reveal,1)*12px))}
.scene-campercore .cc-light-caption{margin-top:12px;font-size:8px;line-height:1.4;color:#8da38f}
.scene-campercore .cc-screen{position:absolute;z-index:4;right:5%;top:21%;width:23%;height:66%;margin:0;padding:27px 5px 22px;border:1px solid #b4c4af44;border-radius:14px;background:#1f2a2b;box-shadow:-8px 16px 38px #03090666;transform:perspective(1000px) translate3d(calc((1 - var(--detail,.7))*28px + var(--pointer-x,0)*-7px),calc((1 - var(--reveal,1))*30px + var(--pointer-y,0)*-5px),0) rotateY(calc(-8deg + var(--detail,.7)*8deg)) rotateZ(calc(3deg - var(--detail,.7)*3deg));opacity:calc(.6 + var(--reveal,1)*.4)}
.scene-campercore .cc-screen>img{width:100%;height:100%;object-fit:contain;object-position:center;background:#20292e;border-radius:3px}
.scene-campercore .cc-screen-top{position:absolute;top:10px;left:12px;right:12px;display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:8px;line-height:1;font-weight:600;letter-spacing:-.03em;color:#d4dfd1}
.scene-campercore .cc-screen-top>i{display:block;width:4px;height:4px;border-radius:50%;background:#b9d79c}
.scene-campercore .cc-screen>figcaption{position:absolute;left:0;right:0;bottom:9px;text-align:center;font-size:6px;line-height:1;letter-spacing:.09em;color:#9fac9e}
.scene-campercore .cc-scene-footer{position:absolute;left:6%;right:6%;bottom:5.5%;z-index:5;display:flex;align-items:center;justify-content:space-between;gap:18px;font-size:8px;line-height:1.4;letter-spacing:.11em;color:#90a18d}
.scene-campercore .cc-scene-footer>span:last-child{font-size:10px;letter-spacing:0;color:#c5d2bf}
.scene-campercore .cc-scene-footer i{font-style:normal;display:inline-block;margin-left:8px;color:#d3e6ae}

.scene-flambini{position:relative;isolation:isolate;overflow:hidden;container-type:inline-size;background:#130f0c;color:#f7eddf;border-radius:inherit}
.scene-flambini .fb-fire-stage{position:absolute;inset:0;overflow:hidden;transform:translate3d(calc(var(--pointer-x,0)*-4px),calc(var(--pointer-y,0)*-3px),0)}
.scene-flambini .fb-fire-image{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 65%;transform:translateY(calc((1 - var(--reveal,1))*36px + var(--detail,.7)*15px)) scale(calc(1.12 - var(--reveal,1)*.07 + var(--detail,.7)*.06));transform-origin:50% 65%;opacity:calc(.5 + var(--reveal,1)*.5);filter:saturate(.78)}
.scene-flambini .fb-fire-video{position:absolute;inset:0;opacity:0;transition:opacity .35s ease;pointer-events:none}
.scene-flambini .fb-fire-video.is-playing-frame{opacity:calc(.5 + var(--reveal,1)*.5)}
@media(prefers-reduced-motion:reduce){.scene-flambini .fb-fire-video{display:none}}
.scene-flambini .fb-warmth{position:absolute;inset:26% -20% -30%;z-index:1;background:radial-gradient(ellipse at 54% 55%,#dc531c39,transparent 62%);mix-blend-mode:screen;opacity:calc(.3 + var(--detail,.7)*.7);transform:scale(calc(.85 + var(--scene-progress,.5)*.25));pointer-events:none}
.scene-flambini .fb-shade{position:absolute;inset:0;z-index:2;background:linear-gradient(180deg,#100d0bbb,transparent 38%,transparent 60%,#100c09ed 92%),linear-gradient(90deg,#100c0966,transparent 50%,#100c0922);pointer-events:none}
.scene-flambini .fb-scene-label{position:absolute;top:7%;left:6%;z-index:5;display:flex;align-items:center;gap:10px;font-size:9px;font-weight:600;letter-spacing:.16em;line-height:1.4;color:#d8c6b5}
.scene-flambini .fb-scene-label>span{color:#e99959;font-size:15px;line-height:1}
.scene-flambini .fb-material-heading{position:absolute;left:6%;top:17%;z-index:5;transform:translate3d(calc(var(--pointer-x,0)*4px),calc((1 - var(--reveal,1))*20px - var(--detail,.7)*6px),0);opacity:calc(.6 + var(--reveal,1)*.4)}
.scene-flambini .fb-material-heading>span{display:block;font-size:8px;font-weight:500;line-height:1.4;letter-spacing:.13em;color:#b9a693}
.scene-flambini .fb-material-heading>strong{display:block;margin-top:9px;font-size:clamp(68px,12cqw,90px);font-weight:450;line-height:.85;letter-spacing:-.07em;color:#f6e7d6}
.scene-flambini .fb-material-heading>strong>span{font-size:.39em;letter-spacing:-.06em;margin-left:5px;color:#d1b99f}
.scene-flambini .fb-metal-detail{position:absolute;right:6%;top:13%;z-index:6;width:32%;max-width:245px;margin:0;border:1px solid #f6ddba36;border-radius:9px;background:#302a24;box-shadow:0 15px 40px #08040366;overflow:hidden;transform:perspective(1100px) translate3d(calc((1 - var(--detail,.7))*80px + var(--pointer-x,0)*-8px),calc((1 - var(--detail,.7))*-22px + var(--pointer-y,0)*-6px),0) rotateY(calc((1 - var(--detail,.7))*-12deg)) rotateZ(calc((1 - var(--detail,.7))*5deg));opacity:clamp(0,var(--detail,.7)*1.8,1)}
.scene-flambini .fb-metal-image-wrap{position:relative;aspect-ratio:1.48;overflow:hidden;background:#8b7961}
.scene-flambini .fb-metal-image-wrap:after{content:'';position:absolute;inset:0;border:1px solid #fff1d51a;background:linear-gradient(135deg,#ffe0a920,transparent 55%);pointer-events:none}
.scene-flambini .fb-metal-image-wrap>img{width:100%;height:100%;object-fit:cover;object-position:35% 43%;transform:scale(calc(1.3 - var(--detail,.7)*.15));filter:saturate(.45)}
.scene-flambini .fb-metal-detail>figcaption{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:11px 12px;font-size:9px;font-weight:500;line-height:1.4;color:#e1d5c5}
.scene-flambini .fb-metal-detail>figcaption>i{font-style:normal;color:#bdae9a;font-size:12px;line-height:1}
.scene-flambini .fb-detail-rule{position:absolute;z-index:4;right:20%;top:43%;width:1px;height:15%;background:linear-gradient(#d8bb89a6,#d8bb8922);transform:scaleY(var(--detail,.7));transform-origin:top;opacity:var(--detail,.7)}
.scene-flambini .fb-detail-rule>span{position:absolute;left:-3px;bottom:0;width:7px;height:7px;border-radius:50%;background:#ecc791;box-shadow:0 0 0 5px #f5c58112}
.scene-flambini .fb-fire-caption{position:absolute;left:6%;bottom:24%;z-index:5;display:flex;align-items:center;gap:8px;font-size:8px;font-weight:500;line-height:1.4;letter-spacing:.12em;color:#edd0b2;text-shadow:0 1px 10px #100900;transform:translateY(calc((1 - var(--detail,.7))*15px));opacity:calc(.45 + var(--detail,.7)*.55)}
.scene-flambini .fb-fire-dot{display:block;width:4px;height:4px;border-radius:50%;background:#efa164;box-shadow:0 0 12px #f37c39}
.scene-flambini .fb-specifications{position:absolute;z-index:5;left:6%;right:6%;bottom:6%;display:flex;align-items:center;gap:29px;border-top:1px solid #f1c99026;padding-top:18px;transform:translateY(calc((1 - var(--reveal,1))*18px));opacity:calc(.5 + var(--reveal,1)*.5)}
.scene-flambini .fb-specifications>div{display:flex;flex-direction:column;gap:7px}
.scene-flambini .fb-specifications strong{font-size:26px;font-weight:450;line-height:1;letter-spacing:-.04em;color:#f1e0cb;font-variant-numeric:tabular-nums}
.scene-flambini .fb-specifications strong>span{margin-left:5px;font-size:11px;font-weight:400;letter-spacing:0;color:#b9a892}
.scene-flambini .fb-specifications>div>span{font-size:9px;line-height:1.3;letter-spacing:.01em;color:#b9a892}
.scene-flambini .fb-spec-divider{display:block;width:1px;height:37px;flex-shrink:0;background:#e0c8a525}

@container(max-width:560px){
  .scene-campercore .cc-scene-label{font-size:8px;letter-spacing:.12em}
  .scene-campercore .cc-energy-module,.scene-campercore .cc-light-module{left:5%;width:27%;padding:12px 11px 10px;border-radius:10px}
  .scene-campercore .cc-energy-module{top:23%}
  .scene-campercore .cc-light-module{top:61%;left:6%}
  .scene-campercore .cc-van{left:31%;top:16%;width:32%;height:75%}
  .scene-campercore .cc-energy-module>strong{font-size:15px}
  .scene-campercore .cc-energy-module>p{font-size:10px;margin-bottom:10px}
  .scene-campercore .cc-energy-icons{gap:7px;margin:12px 0 10px}
  .scene-campercore .cc-energy-icons>svg{width:23px;height:23px;flex-basis:23px}
  .scene-campercore .cc-module-foot{font-size:7px;gap:3px}
  .scene-campercore .cc-screen{right:4%;width:24%;top:22%;height:62%;padding:24px 4px 20px;border-radius:11px}
  .scene-campercore .cc-screen-top{left:9px;right:9px;font-size:7px}
  .scene-campercore .cc-screen>figcaption{font-size:5px;letter-spacing:.035em}
  .scene-campercore .cc-scene-footer{font-size:7px;letter-spacing:.07em;gap:10px}
  .scene-campercore .cc-scene-footer>span:last-child{font-size:8px}
  .scene-flambini .fb-scene-label{font-size:8px;letter-spacing:.13em}
  .scene-flambini .fb-material-heading{top:18%}
  .scene-flambini .fb-material-heading>span{font-size:7px;letter-spacing:.1em}
  .scene-flambini .fb-material-heading>strong{font-size:68px}
  .scene-flambini .fb-metal-detail{right:5%;top:18%;width:35%}
  .scene-flambini .fb-metal-detail>figcaption{padding:9px;font-size:8px;gap:5px}
  .scene-flambini .fb-metal-detail>figcaption>i{font-size:10px}
  .scene-flambini .fb-specifications{gap:22px;padding-top:15px}
  .scene-flambini .fb-specifications strong{font-size:24px}
  .scene-flambini .fb-specifications>div>span{font-size:8px}
  .scene-flambini .fb-fire-caption{font-size:7px;letter-spacing:.08em}
}
@container(max-width:390px){
  .scene-campercore .cc-scene-label{left:5%;font-size:7px;gap:7px}
  .scene-campercore .cc-energy-module,.scene-campercore .cc-light-module{left:4%;width:30%;padding:11px 9px 9px}
  .scene-campercore .cc-energy-module{top:22%}
  .scene-campercore .cc-light-module{top:62%;left:5%}
  .scene-campercore .cc-van{left:30%;top:17%;width:37%;height:73%}
  .scene-campercore .cc-energy-module>strong{font-size:14px}
  .scene-campercore .cc-module-heading{font-size:7px;letter-spacing:.08em}
  .scene-campercore .cc-energy-icons{gap:5px}
  .scene-campercore .cc-energy-icons>svg{width:21px;height:21px;flex-basis:21px}
  .scene-campercore .cc-module-foot{font-size:6.5px}
  .scene-campercore .cc-light-row{font-size:11px;margin-top:10px}
  .scene-campercore .cc-light-caption{font-size:7px;margin-top:10px}
  .scene-campercore .cc-screen{right:3%;top:23%;width:25%;height:58%;padding:21px 3px 18px}
  .scene-campercore .cc-screen-top{top:8px;left:7px;right:7px;font-size:6.5px}
  .scene-campercore .cc-screen>figcaption{font-size:4.7px;letter-spacing:0;bottom:7px}
  .scene-campercore .cc-scene-footer{left:5%;right:5%;font-size:6px;letter-spacing:.04em}
  .scene-campercore .cc-scene-footer>span:last-child{font-size:7px}
  .scene-campercore .cc-scene-footer i{margin-left:4px}
  .scene-flambini .fb-scene-label{font-size:7px;letter-spacing:.1em}
  .scene-flambini .fb-material-heading>span{max-width:105px;line-height:1.6;font-size:6.5px}
  .scene-flambini .fb-material-heading>strong{font-size:61px;margin-top:8px}
  .scene-flambini .fb-metal-detail{width:37%;right:5%;top:20%}
  .scene-flambini .fb-metal-detail>figcaption{padding:8px;font-size:7px}
  .scene-flambini .fb-specifications{gap:17px;padding-top:14px}
  .scene-flambini .fb-specifications strong{font-size:22px}
  .scene-flambini .fb-specifications strong>span{font-size:9px}
  .scene-flambini .fb-specifications>div>span{font-size:7px;max-width:122px}
  .scene-flambini .fb-spec-divider{height:34px}
  .scene-flambini .fb-fire-caption{font-size:6.5px;bottom:25%;letter-spacing:.06em}
}
@media(prefers-reduced-motion:reduce){
  .scene-campercore .cc-grid,.scene-campercore .cc-van,.scene-campercore .cc-energy-module,.scene-campercore .cc-light-module,.scene-campercore .cc-screen,.scene-campercore .cc-energy-bridge>i{transform:none!important;transition:none!important;animation:none!important;opacity:1!important}
  .scene-campercore .cc-connection-flow{stroke-dashoffset:0}
  .scene-campercore .cc-cabin-light{opacity:.4}
  .scene-campercore .cc-light-toggle>i{transform:translateX(12px)}
  .scene-flambini .fb-fire-stage,.scene-flambini .fb-fire-image,.scene-flambini .fb-material-heading,.scene-flambini .fb-metal-detail,.scene-flambini .fb-detail-rule,.scene-flambini .fb-fire-caption,.scene-flambini .fb-specifications,.scene-flambini .fb-metal-image-wrap>img,.scene-flambini .fb-warmth{transform:none!important;transition:none!important;animation:none!important;opacity:1!important}
}
