/* One immersive roof, with the controls kept at the edge of the experience. */
.roof-showcase{--sc-ink:#20292c;--sc-muted:#657277;--sc-line:#dce2e3;color:var(--sc-ink);background:#fff;overflow:hidden}
.roof-showcase [hidden]{display:none!important}.roof-showcase button,.roof-showcase select{font:inherit}.roof-showcase button{cursor:pointer}.roof-showcase button:disabled{cursor:default;opacity:.35}.roof-showcase button:focus-visible,.roof-showcase a:focus-visible,.roof-showcase select:focus-visible{outline:2px solid #527487;outline-offset:4px}.sc-sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
body:has(.roof-showcase) .header{min-height:65px;padding-block:10px;box-shadow:none;border-bottom:1px solid #eff1f1}body:has(.roof-showcase) .brand img{width:143px;height:49px;object-fit:contain}body:has(.roof-showcase) .header .button.small{min-height:39px;padding:11px 19px;font-size:.72rem}body:has(.roof-showcase) .desktop-nav{gap:25px;font-size:.75rem}body:has(.roof-showcase) .topbar{font-size:.58rem;min-height:23px;padding-block:5px}
.sc-showroom{height:clamp(520px,calc(100svh - 238px),740px);max-width:1920px;position:relative;margin:auto;isolation:isolate;background:linear-gradient(110deg,#fff 12%,#f8f9f8 70%,#f0f3f3);transition:background 1.3s}
.sc-intro{position:absolute;z-index:3;left:4.5%;top:11%;width:27%;max-width:390px;pointer-events:none}.sc-intro a{pointer-events:auto}.sc-eyebrow{font-size:.67rem;font-weight:600;line-height:1.5;letter-spacing:.15em;text-transform:uppercase;color:#697779;margin:0 0 17px!important}.sc-intro h1{font-size:clamp(2.7rem,3.7vw,4.65rem);font-weight:600;line-height:1.015;letter-spacing:-.055em;margin:0 0 23px}.sc-intro h1 span{display:block}.sc-intro-copy{font-size:clamp(.89rem,1.03vw,1.12rem);line-height:1.65;color:#586569;max-width:310px;white-space:pre-line;margin:0!important}.sc-estimate{display:inline-flex;align-items:center;gap:28px;background:#273337;color:white;border-radius:28px;padding:14px 22px;font-size:.79rem;font-weight:500;text-decoration:none;box-shadow:0 7px 18px #26303418;margin-top:23px}.sc-estimate:hover{background:#46575d}.sc-location{font-size:.64rem;color:#8a9497;line-height:1.6;margin-top:18px!important}.sc-weather-story{margin-top:30px;max-width:300px;border-top:1px solid #dce3e3;padding-top:18px}.sc-weather-kicker{font-size:.62rem;letter-spacing:.09em;text-transform:uppercase;color:#8a969c}.sc-weather-story h3{font-size:1.05rem;line-height:1.35;font-weight:500;margin:8px 0;color:#415964;letter-spacing:-.02em}.sc-weather-story p{font-size:.78rem;line-height:1.65;color:#687c85;margin:0!important}.roof-showcase[data-weather=day] .sc-weather-story{display:none}
.sc-world{position:absolute;inset:0 0 0 25%;overflow:hidden;transition:background 1.2s;background:radial-gradient(ellipse at 70% 40%,#f2f5f7,transparent 67%)}.sc-scene{position:absolute;inset:0 0 62px;min-height:0}.sc-scene canvas{display:block;width:100%;height:100%;position:absolute;inset:0;touch-action:pan-y pinch-zoom;outline-offset:-6px}.sc-fallback{position:absolute;inset:-3% -2% 0;opacity:1;transition:opacity .45s;pointer-events:auto}.sc-fallback>svg{width:100%;height:100%;display:block;overflow:visible}.sc-fallback.is-retired{opacity:0;pointer-events:none}.sc-company-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:contain}.sc-enter{position:absolute;left:50%;bottom:48px;transform:translateX(-50%);border:1px solid #d7e0e1;border-radius:30px;background:white;padding:14px 24px;color:#30454e;font-size:.9rem;white-space:nowrap}
.sc-atmosphere{position:absolute;right:4.5%;top:23px;display:flex;align-items:center;z-index:5;background:#ffffffdc;border:1px solid #e0e5e6;border-radius:30px;box-shadow:0 3px 15px #21333808;backdrop-filter:blur(12px);padding:3px}.sc-atmosphere label{display:flex;align-items:center;gap:7px;padding-left:12px}.sc-sun-icon{font-size:17px;color:#68818c}.sc-atmosphere select{appearance:auto;border:none;background:none;color:#3f5762;font-size:.74rem;padding:9px 3px 9px 0;max-width:174px;min-height:36px}.sc-atmosphere button{border:0;border-left:1px solid #dce4e6;background:none;width:37px;height:30px;color:#567b8c;font-size:.75rem;margin-left:5px}.sc-atmosphere button[aria-pressed=true]{color:#223b48}.sc-hotspots{position:absolute;inset:0 0 62px;pointer-events:none;z-index:4}.sc-hotspots button{position:absolute;transform:translate(-50%,-50%);width:29px;height:29px;border-radius:50%;border:1px solid #b2c4cb;background:#fffffff2;color:#46616d;font-size:9px;font-weight:600;padding:0;pointer-events:auto;box-shadow:0 3px 15px #21323d25;transition:background .2s,box-shadow .2s}.sc-hotspots button:hover,.sc-hotspots button[aria-pressed=true]{background:#284451;border-color:white;color:white;box-shadow:0 0 0 5px #ffffff73}.roof-showcase[data-detail-open]:not([data-autoplay]) .sc-hotspots button:not([aria-pressed=true]){opacity:.35}
.sc-gesture{position:absolute;bottom:72px;left:0;right:0;text-align:center;font-size:.69rem;letter-spacing:.01em;color:#70838d;margin:0!important;pointer-events:none;z-index:4}.sc-dock{position:absolute;z-index:8;bottom:26px;left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:10px;white-space:nowrap}.sc-peel-controls{display:flex;align-items:center;padding:3px;background:#fffffff3;border:1px solid #d9e1e4;border-radius:30px;box-shadow:0 8px 25px #192c3912}.sc-peel-controls>button:first-child{border:0;background:none;width:37px;height:35px;font-size:1.18rem;color:#546d77}.sc-peel{border:0;border-radius:26px;background:#263b44;color:white;padding:11px 19px;min-height:41px;font-size:.8rem!important;min-width:163px;text-align:center;display:flex;justify-content:space-between;align-items:center;gap:17px}.sc-peel:hover{background:#43616f}.sc-step{font-size:.62rem;letter-spacing:.04em;color:#819098;min-width:61px;text-align:center}.sc-zoom{display:flex;align-items:center;padding:4px;border:1px solid #d9e1e4;border-radius:28px;background:#fffffff3;box-shadow:0 8px 25px #192c390c}.sc-zoom button{height:34px;min-width:30px;padding:0 6px;border:0;background:none;color:#566b76;font-size:1rem}.sc-zoom button:nth-child(2){font-size:.65rem;min-width:42px}.sc-scope{position:absolute;bottom:6px;left:0;right:3%;font-size:.53rem;line-height:1.4;text-align:center;color:#8b969b;margin:0!important;pointer-events:none}.sc-scene-message{position:absolute;z-index:7;top:12%;left:20%;right:14%;font-size:.86rem;line-height:1.6;color:#385868;text-align:center;background:#fffffff0;border:1px solid #dce7eb;border-radius:14px;padding:15px 22px}
.sc-inspector{position:absolute;z-index:9;left:3.5%;top:28px;bottom:29px;width:30%;max-width:410px;min-width:325px;background:#fffffff7;border:1px solid #e2e7e9;border-radius:15px;box-shadow:0 18px 60px #142d3f16,0 2px 8px #20324205;display:flex;flex-direction:column;overflow:hidden;animation:sc-card-in .35s ease}.sc-inspector-head{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:11px 20px;border-bottom:1px solid #e8ecee;flex-shrink:0}.sc-inspector-head button,.sc-inspector-head a{font-size:.72rem;line-height:1.5;color:#527184;text-decoration:none;border:0;background:none;padding:8px 0;white-space:nowrap}.sc-inspector-content{overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#c8d7de transparent;padding:22px 23px 25px;min-height:0}.sc-detail>.sc-eyebrow{font-size:.61rem;margin:0 0 14px!important;letter-spacing:.09em;color:#7a8c95}.sc-detail h2{font-size:clamp(1.75rem,2.2vw,2.3rem);line-height:1.07;letter-spacing:-.04em;margin:0 0 17px;font-weight:600;color:#253a44}.sc-detail-lead{font-size:1rem;line-height:1.6;color:#3c5665;margin:0 0 23px!important}.sc-installation{border-top:1px solid #e2e8ea;padding-top:19px}.sc-installation h3{font-size:.74rem;letter-spacing:.075em;text-transform:uppercase;color:#728995;font-weight:600;margin:0 0 10px}.sc-installation p{font-size:.95rem;line-height:1.68;color:#45606f;margin:0!important}.sc-specification{border-top:1px solid #dce5e9;margin-top:24px;padding-top:16px}.sc-specification summary{font-size:.82rem;font-weight:500;color:#3a637a;line-height:1.5;cursor:pointer}.sc-specification>p,.sc-illustration-note{font-size:.72rem;line-height:1.6;color:#778b98}.sc-detail-drawing{margin:18px -9px 12px;padding:13px 0;background:#f5f8f9;border-radius:8px;overflow:hidden}.sc-detail-drawing svg{width:100%;height:auto;display:block}.sc-products{display:grid;gap:22px;margin:23px 0}.sc-products figure{margin:0;border:1px solid #e1e8ec;border-radius:9px;overflow:hidden;background:white}.sc-products img{width:100%;height:190px;object-fit:contain;display:block;background:#fff}.sc-products figcaption{padding:14px 16px}.sc-products figcaption small{display:block;font-size:.59rem;letter-spacing:.1em;color:#7890a0;margin-bottom:5px}.sc-products figcaption a{font-size:.87rem;color:#315b73;line-height:1.4}.sc-products p{font-size:.81rem;line-height:1.6;color:#5e7b8c;margin-top:9px!important}.sc-sources{display:grid;gap:12px;margin-top:20px}.sc-sources a{color:#38617c;font-size:.75rem;line-height:1.5}.sc-vent-choice,.sc-material-choice,.sc-related{display:block;margin:22px 0 3px;padding:16px;background:#edf4f7;border:1px solid #dae6eb;border-radius:9px;font-size:.8rem;color:#46677c;line-height:1.5}.sc-vent-choice label{font-weight:600;display:block;margin-bottom:8px}.sc-vent-choice select,.sc-material-choice select,.sc-related select{display:block;width:100%;background:white;color:#31536a;border:1px solid #c7d9e2;border-radius:6px;min-height:41px;padding:9px 8px;margin-top:9px;font-size:.85rem}.sc-vent-choice p{font-size:.81rem;line-height:1.6;color:#4e7085;margin-top:13px!important}.sc-vent-choice small{display:block;font-size:.73rem;line-height:1.5;color:#718997;margin-top:10px}
.sc-detail-rail{position:relative;z-index:2;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));padding:0 3.5%;border-top:1px solid #e6eaec;background:white;max-width:1920px;margin:auto}.sc-detail-rail button{min-width:0;position:relative;padding:15px 13px 5px;border:0;border-right:1px solid #e8ecee;background:white;text-align:left;overflow:hidden}.sc-detail-rail button:last-child{border-right:0}.sc-rail-title{font-size:.75rem;font-weight:600;color:#41545f;line-height:1.3;display:block;padding-right:12px}.sc-rail-title small{font-size:.58rem;color:#9aa6ad;margin-right:8px;font-weight:400}.sc-detail-rail img{height:97px;width:100%;display:block;object-fit:contain;margin-top:7px;transition:transform .5s}.sc-detail-rail button:hover img{transform:scale(1.07)}.sc-detail-rail button[aria-pressed=true]{background:#f0f5f7;box-shadow:inset 0 3px #587b90}.sc-rail-arrow{position:absolute;right:15px;top:14px;font-size:.75rem;color:#8ba2b0}.sc-baseline{display:flex;justify-content:space-between;gap:20px;padding:15px 4.5%;background:#fff;border-top:1px solid #edf0f2;color:#7c8a91;font-size:.66rem}.sc-baseline a{color:#627d8c;text-decoration:none}.sc-noscript{padding:20px 5%;font-size:1rem}
.roof-showcase[data-weather=night] .sc-world{background:radial-gradient(ellipse at 70% 38%,#273b55,#142638 66%,#f8f9f8 115%)}.roof-showcase[data-weather=night] .sc-gesture,.roof-showcase[data-weather=night] .sc-scope{color:#b3c7d7}.roof-showcase[data-weather=heat] .sc-world{background:radial-gradient(ellipse at 60% 25%,#f4e9d9,transparent 70%)}.roof-showcase[data-weather=rain] .sc-world{background:radial-gradient(ellipse at 70% 38%,#dbe4eb,#eff3f4 70%)}.roof-showcase[data-weather=cold] .sc-world{background:radial-gradient(ellipse at 70% 40%,#e3ecf4,#f6f9fb 75%)}
body:has(.roof-showcase) #chat-launch{bottom:20px;right:22px;width:48px;height:48px;padding:0;gap:0;justify-content:center;font-size:0}body:has(.roof-showcase) #chat-launch span{font-size:21px}body:has(.roof-showcase[data-detail-open]:not([data-autoplay])) #chat-launch{visibility:hidden}
@keyframes sc-card-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
@media(min-width:851px) and (max-height:760px){.sc-intro{top:8%}.sc-intro h1{font-size:3rem;margin-bottom:18px}.sc-intro-copy{font-size:.88rem}.sc-weather-story{margin-top:19px;padding-top:13px}.sc-weather-story p{font-size:.72rem}.sc-detail-rail img{height:79px}.sc-detail-rail button{padding-top:12px}.sc-inspector{top:15px;bottom:16px}.sc-inspector-content{padding-top:18px}.sc-detail-lead{font-size:.96rem}.sc-installation p{font-size:.91rem}}
@media(min-width:851px) and (max-width:1120px){.sc-intro{left:3.4%;width:29%}.sc-intro h1{font-size:3rem}.sc-world{left:28%}.sc-inspector{left:2%;min-width:310px;width:32%}.sc-dock{gap:6px}.sc-peel{min-width:145px;padding-inline:13px;font-size:.74rem!important}.sc-step{min-width:49px}.sc-rail-title{font-size:.68rem}.sc-rail-title small{display:none}.sc-atmosphere{right:3%;top:14px}}
@media(max-width:850px){
 body:has(.roof-showcase) .header{min-height:61px;padding-inline:5%}body:has(.roof-showcase) .brand img{width:132px;height:41px}body:has(.roof-showcase) .topbar{min-height:22px}.sc-showroom{height:auto;display:flex;flex-direction:column;background:#fff}.sc-intro{position:relative;left:auto;top:auto;width:auto;max-width:none;padding:29px 6% 0}.sc-eyebrow{font-size:.63rem;margin-bottom:13px!important}.sc-intro h1{font-size:clamp(2.6rem,7.5vw,4.2rem);line-height:1.01;max-width:490px;margin-bottom:16px}.sc-intro-copy{font-size:.91rem;line-height:1.6;max-width:420px}.sc-estimate{font-size:.75rem;padding:12px 20px;margin-top:17px}.sc-location{display:none}.sc-weather-story{display:none}.sc-world{position:relative;inset:auto;height:465px;width:100%;background:radial-gradient(ellipse at center,#f1f5f5,white 75%);margin-top:3px}.sc-scene{inset:30px -7% 81px}.sc-hotspots{inset:30px -7% 81px}.sc-atmosphere{top:6px;right:5%;transform:scale(.94);transform-origin:top right}.sc-atmosphere select{font-size:.72rem}.sc-gesture{bottom:84px;font-size:.65rem}.sc-dock{bottom:34px;gap:5px;width:94%;justify-content:center}.sc-peel{font-size:.72rem!important;min-width:146px;padding:11px 12px;gap:8px;min-height:39px}.sc-peel-controls>button:first-child{width:29px}.sc-step{font-size:.57rem;min-width:44px}.sc-zoom{gap:0}.sc-zoom button{min-width:26px;padding-inline:3px}.sc-zoom button:nth-child(2){min-width:37px;font-size:.61rem}.sc-scope{bottom:13px;font-size:.49rem;right:3%;left:3%}.sc-hotspots button{width:30px;height:30px;font-size:9px}.sc-detail-rail{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;padding-inline:5%;scrollbar-width:thin}.sc-detail-rail button{flex:0 0 150px;scroll-snap-align:start;padding:14px 11px 6px}.sc-detail-rail img{height:85px}.sc-rail-title{font-size:.7rem}.sc-rail-title small{display:none}.sc-rail-arrow{right:9px}.sc-baseline{font-size:.61rem;padding:13px 5%;margin-bottom:8px}.sc-baseline span{max-width:220px}body:has(.roof-showcase) #chat-launch{bottom:82px;width:44px;height:44px;right:13px}
 .roof-showcase[data-detail-open]:not([data-autoplay]) .sc-showroom{position:fixed;inset:0;height:100svh;z-index:1200;display:grid;grid-template-rows:45% 55%;background:white}.roof-showcase[data-detail-open]:not([data-autoplay]) .sc-world{grid-row:1;height:100%;margin:0;position:relative;width:100%}.roof-showcase[data-detail-open]:not([data-autoplay]) .sc-scene,.roof-showcase[data-detail-open]:not([data-autoplay]) .sc-hotspots{inset:0 0 71px}.roof-showcase[data-detail-open]:not([data-autoplay]) .sc-atmosphere{display:none}.roof-showcase[data-detail-open]:not([data-autoplay]) .sc-gesture,.roof-showcase[data-detail-open]:not([data-autoplay]) .sc-scope{display:none}.roof-showcase[data-detail-open]:not([data-autoplay]) .sc-dock{bottom:12px}.roof-showcase[data-detail-open]:not([data-autoplay]) .sc-inspector{grid-row:2;position:relative;inset:auto;width:100%;height:100%;min-width:0;max-width:none;border-radius:0;border:0;border-top:1px solid #d8e2e7;box-shadow:none;animation:none}.sc-inspector-head{padding:9px 6%;min-height:47px}.sc-inspector-head button,.sc-inspector-head a{font-size:.77rem}.sc-inspector-content{padding:18px 6% 25px}.sc-detail>.sc-eyebrow{font-size:.61rem;margin-bottom:12px!important}.sc-detail h2{font-size:1.8rem;margin-bottom:15px}.sc-detail-lead{font-size:1rem;line-height:1.62;margin-bottom:19px!important}.sc-installation p{font-size:.94rem;line-height:1.65}.sc-installation{padding-top:16px}.sc-products img{height:220px}.sc-scene-message{top:15%;left:8%;right:8%;font-size:.77rem}.roof-showcase[data-detail-open]:not([data-autoplay]) .sc-detail-rail{visibility:hidden}body:has(.roof-showcase[data-detail-open]:not([data-autoplay])){overflow:hidden}body:has(.roof-showcase[data-detail-open]:not([data-autoplay])) .mobile-dock{visibility:hidden}
}
@media(max-width:380px){.sc-step{display:none}.sc-dock{gap:7px}.sc-peel{min-width:150px}.sc-intro h1{font-size:2.6rem}}
@media(prefers-reduced-motion:reduce){.roof-showcase *{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
html:not(.motion-on) .roof-showcase *{animation:none!important;transition:none!important;scroll-behavior:auto!important}
/* Weather replaces the introductory copy so its explanation remains readable. */
.roof-showcase:not([data-weather=day]) .sc-intro-copy,.roof-showcase:not([data-weather=day]) .sc-location{display:none}
.roof-showcase:not([data-weather=day]) .sc-intro{display:flex;flex-direction:column}
.roof-showcase:not([data-weather=day]) .sc-weather-story{order:2;margin-top:0;padding-top:16px}
.roof-showcase:not([data-weather=day]) .sc-estimate{order:3;align-self:flex-start;margin-top:19px}
@media(max-width:850px){.roof-showcase:not([data-weather=day]) .sc-weather-story{display:block;max-width:520px;border-top:0;padding-top:0}.roof-showcase:not([data-weather=day]) .sc-weather-story p{font-size:.84rem}.roof-showcase:not([data-weather=day]) .sc-weather-kicker{display:none}.roof-showcase:not([data-weather=day]) .sc-weather-story h3{margin:0 0 8px}}
/* Blend the atmosphere across the stage without a hard edge behind the headline. */
.roof-showcase[data-weather] .sc-world{background:none}
.roof-showcase[data-weather=heat] .sc-showroom{background:linear-gradient(110deg,#fff 25%,#fbf6ed 55%,#eee0c8)}
.roof-showcase[data-weather=rain] .sc-showroom{background:linear-gradient(110deg,#fff 25%,#eef3f5 50%,#dce5eb)}
.roof-showcase[data-weather=cold] .sc-showroom{background:linear-gradient(110deg,#fff 25%,#eff5fa 50%,#dee9f4)}
.roof-showcase[data-weather=night] .sc-showroom{background:linear-gradient(105deg,#fff 29%,#f5f7f8 33%,#334960 54%,#142638)}
.sc-gesture{left:50%;right:auto;transform:translateX(-50%);width:max-content;max-width:88%;border-radius:20px;background:#ffffffd9;backdrop-filter:blur(8px);padding:4px 12px;line-height:1.35}
.roof-showcase[data-weather=night] .sc-gesture{background:#243c52cb}
.sc-scene canvas{mask-image:linear-gradient(#000 93%,transparent 100%)}
@media(max-width:850px){.roof-showcase[data-weather] .sc-showroom{background:white}.roof-showcase[data-weather=night] .sc-world{background:radial-gradient(ellipse at center,#344c65,#142638)}.roof-showcase[data-weather=heat] .sc-world{background:radial-gradient(ellipse at center,#f2e3ca,white 80%)}.roof-showcase[data-weather=rain] .sc-world{background:radial-gradient(ellipse at center,#dce5eb,#f9fafb 80%)}.roof-showcase[data-weather=cold] .sc-world{background:radial-gradient(ellipse at center,#dde9f4,#f7fbff 80%)}}
.sc-inspector{background:#fff}
@media(max-width:850px){.sc-world{height:405px}.sc-scene,.sc-hotspots{inset:28px 0 76px}.sc-gesture{bottom:80px;font-size:.61rem}.sc-dock{bottom:30px}.sc-scope{bottom:10px}body:has(.roof-showcase) #chat-launch{bottom:82px}}
/* Keep the selected construction detail unobstructed by floating labels. */
.roof-showcase[data-detail-open]:not([data-autoplay]) .sc-hotspots{visibility:hidden}
.sc-scene canvas:focus-visible{outline:2px solid #7892a0;outline-offset:-4px}
@media(max-width:850px){
 body:has(.roof-showcase[data-detail-open]:not([data-autoplay])) .header,body:has(.roof-showcase[data-detail-open]:not([data-autoplay])) .topbar,body:has(.roof-showcase[data-detail-open]:not([data-autoplay])) footer,body:has(.roof-showcase[data-detail-open]:not([data-autoplay])) #main>:not(.roof-showcase){visibility:hidden}
 .roof-showcase[data-detail-open]:not([data-autoplay]){position:relative;z-index:2000}
 .roof-showcase[data-detail-open]:not([data-autoplay]) .sc-showroom,.roof-showcase[data-detail-open]:not([data-autoplay]) .sc-world{background-color:#fff}
}
@media(max-width:850px){.roof-showcase[data-detail-open]:not([data-autoplay]) .sc-baseline{visibility:hidden}}
/* V9: the house owns the stage; each selected detail becomes a short chapter. */
.sc-showroom{height:clamp(580px,calc(100svh - 180px),880px)}
.sc-world{left:23%}.sc-intro{left:4%;top:14%;width:26%}.sc-intro h1{font-size:clamp(3rem,4.2vw,5.4rem)}
.sc-watch{pointer-events:auto;display:flex;align-items:center;gap:11px;padding:12px 0;border:0;background:none;color:#45626d;font-size:.82rem!important;font-weight:500;margin-top:9px;text-align:left}
.sc-watch span{display:grid;place-items:center;width:25px;height:25px;border:1px solid #adc0c7;border-radius:50%;font-size:9px;padding-left:2px}.sc-watch:hover{color:#182e3a}
.sc-inspector{left:3%;width:30%;max-width:440px;top:32px;bottom:36px;box-shadow:0 24px 80px #1835441b}
.sc-cinema h2{font-size:clamp(1.9rem,2.8vw,3rem);line-height:1.06;letter-spacing:-.045em;color:#243a44;font-weight:550;margin:0 0 22px}
.sc-cinema .sc-eyebrow{letter-spacing:.09em;font-size:.65rem;line-height:1.6;margin-bottom:20px!important}
.sc-cinema-caption{font-size:clamp(1.04rem,1.28vw,1.32rem);line-height:1.63;color:#405965;margin:0!important;white-space:pre-line}
.sc-cinema-progress{height:3px;background:#e1eaed;margin:28px 0 17px;border-radius:4px;overflow:hidden}.sc-cinema-progress span{height:100%;display:block;transform-origin:left;background:#537587;transform:scaleX(0)}
.sc-cinema-controls{display:flex;justify-content:space-between;gap:12px}.sc-cinema-controls button{border:0;padding:9px 0;background:none;color:#3b5c70;font-size:.77rem;line-height:1.3}.sc-cinema-controls button[aria-pressed=true]{color:#1f3b48}
.sc-voice-note{font-size:.65rem;line-height:1.5;color:#7a8b94;margin:8px 0 20px!important}
.sc-read-detail{display:block;background:none;border:0;border-top:1px solid #e1e8eb;width:100%;padding:17px 0 0;text-align:left;font-size:.8rem!important;color:#46697e}
.roof-showcase[data-cinema] .sc-detail>.sc-eyebrow,.roof-showcase[data-cinema] .sc-detail>h2,.roof-showcase[data-cinema] .sc-detail>.sc-detail-lead,.roof-showcase[data-cinema] .sc-installation,.roof-showcase[data-cinema] .sc-specification,.roof-showcase[data-cinema] .sc-related{display:none}
.roof-showcase[data-cinema] .sc-gesture{visibility:hidden}.roof-showcase[data-cinema] .sc-atmosphere{opacity:.4;transition:opacity .3s}.roof-showcase[data-cinema] .sc-atmosphere:hover,.roof-showcase[data-cinema] .sc-atmosphere:focus-within{opacity:1}
.roof-showcase[data-cinema] .sc-inspector{border-color:#d3e0e6}
.roof-showcase:not([data-weather=day]) .sc-watch{order:4}
@media(min-width:851px) and (max-height:760px){.sc-showroom{height:580px}.sc-intro{top:12%}.sc-intro h1{font-size:3.3rem}.sc-cinema-caption{font-size:1.04rem}.sc-cinema h2{font-size:2.1rem}.sc-cinema .sc-eyebrow{margin-bottom:14px!important}.sc-cinema-progress{margin-top:23px}}
@media(max-width:850px){.sc-showroom{height:auto}.sc-intro{left:auto;top:auto;width:auto;padding-top:26px}.sc-intro h1{font-size:clamp(2.8rem,8.5vw,4.5rem)}.sc-world{left:auto;height:455px}.sc-watch{font-size:.8rem!important;margin-top:3px;padding-block:9px}.sc-inspector{max-width:none}.sc-cinema h2{font-size:2rem;margin-bottom:15px}.sc-cinema-caption{font-size:1.04rem;line-height:1.58}.sc-cinema .sc-eyebrow{font-size:.59rem;margin-bottom:12px!important}.sc-cinema-progress{margin:22px 0 12px}.sc-cinema-controls button{font-size:.8rem}.sc-voice-note{font-size:.63rem;margin-bottom:15px!important}.sc-read-detail{font-size:.78rem!important}.roof-showcase[data-cinema] .sc-inspector-content{padding-top:21px}.roof-showcase[data-detail-open]:not([data-autoplay]) .sc-showroom{grid-template-rows:43% 57%}.roof-showcase[data-cinema] .sc-dock{opacity:.8}}

@media(min-width:851px){.sc-world{left:30%}.sc-intro{width:26%}}
.sc-heat-explanation{margin-top:15px;padding-top:12px;border-top:1px solid #ccdee6}.sc-heat-explanation summary{cursor:pointer;font-size:.8rem;line-height:1.5}.sc-heat-explanation a{font-size:.73rem;color:#375f76}
/* V10: photographic house and slow, source-grounded detail chapters. */
.sc-showroom{height:clamp(640px,calc(100svh - 164px),970px);background:#fafbf9}
.sc-world{left:27%;right:-1.5%;overflow:hidden}
.sc-intro{left:4%;top:17%;width:27%;max-width:430px}
.sc-intro h1{font-size:clamp(3.2rem,4.65vw,6rem);font-weight:600;letter-spacing:-.06em}
.sc-intro-copy{max-width:310px;font-size:clamp(1rem,1.12vw,1.2rem)}
.sc-inspector{left:3%;width:29.5%;max-width:470px;top:8%;bottom:auto;max-height:83%;border-color:#e4e8e7;box-shadow:0 20px 65px #213b4714}
.sc-inspector-content{padding:27px 25px 25px}
.sc-cinema h2{font-size:clamp(2rem,2.7vw,3.35rem);line-height:1.08;color:#1e3037}
.sc-cinema-caption{font-size:clamp(1.02rem,1.16vw,1.3rem);line-height:1.65;color:#3b535f}
.sc-scene{transition:opacity 1.8s ease;z-index:1}
.sc-film{position:absolute;inset:0 0 67px;overflow:hidden;z-index:2;pointer-events:none;opacity:1;transition:opacity 1.8s ease;background:transparent}
.sc-film[data-model=true]{opacity:0}
.sc-film-camera{position:absolute;inset:0;display:grid;place-items:center;transform-origin:50% 47%;will-change:transform;transition:transform 2s cubic-bezier(.22,.61,.36,1)}
.sc-film-stage{position:relative;width:100%;aspect-ratio:3/2;max-height:100%;overflow:hidden}
.sc-film[data-format=house] .sc-film-stage{aspect-ratio:4/3}
.sc-film-camera img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;opacity:0;transition:opacity 2.8s ease,filter 4s ease;user-select:none;-webkit-user-drag:none}
.sc-film-camera img.is-active{opacity:1}
.sc-film[data-weather=night] img{filter:brightness(.43) saturate(.7)}
.sc-film[data-weather=heat] img{filter:sepia(.07) saturate(1.04)}
.sc-film[data-weather=cold] img{filter:saturate(.7)}
.sc-film-effects{position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none}
.sc-film-effects [data-film-effect]{opacity:0;transition:opacity 1.8s ease}
.film-flow,.film-air-flow,.film-warm-air-flow,.film-heat-flow{fill:none;stroke:#88d6ed;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:15 35;animation:sc-flow 5s linear infinite;filter:drop-shadow(0 1px 2px #12394740)}
.film-flow.secondary,.film-air-flow.secondary{stroke-width:2;opacity:.6;animation-delay:-2s}
.film-air-flow{stroke:#79d8f4;stroke-width:3.2;stroke-dasharray:20 22;animation-duration:4.2s}
.film-warm-air-flow,.film-heat-flow{stroke:#ea9b61;stroke-width:2.7;stroke-dasharray:15 30;animation-duration:6.5s}
.film-hot-zone,.film-cool-zone{transition:opacity 3s ease;animation:sc-thermal 8s ease-in-out infinite alternate}
.film-blocked{stroke:#e88766;stroke-width:3;fill:none}
.film-layer-edge{stroke:#f6edc8;stroke-width:2;stroke-dasharray:5 7;fill:none;opacity:.7;animation:sc-flow 7s linear infinite}
.film-ice,.film-ice-risk{stroke:#ddf4ff;stroke-width:9;stroke-linecap:round;fill:none;filter:drop-shadow(0 2px 3px #4691b555)}
.film-spotlight{fill:#142833;fill-opacity:.32}
.film-label-text{font:500 13px 'DM Sans',sans-serif;fill:#fff;paint-order:stroke;stroke:#18303ec4;stroke-width:4px;stroke-linejoin:round}
.film-label-leader{stroke:#ffffffe0;stroke-width:1.2;fill:none}
.sc-film-haze{position:absolute;inset:0;pointer-events:none;transition:background 4s}
.sc-film-label{position:absolute;left:50%;bottom:22px;transform:translateX(-50%);max-width:90%;display:flex;align-items:center;gap:9px;border:1px solid #ffffffae;padding:10px 17px;border-radius:30px;background:#ffffffe8;color:#3a535f;box-shadow:0 6px 25px #153c4820;font-size:.72rem;line-height:1.45;text-align:center;white-space:normal}
.sc-film-label-dot{width:6px;height:6px;flex:none;background:#69a5b6;border-radius:50%}
.sc-film[data-running=false] *{animation-play-state:paused!important}
.sc-story-time{font-size:.66rem;color:#71828a;line-height:1.5;margin:4px 0!important}
.sc-cinema-progress{height:2px;margin-top:25px}
.sc-scope{font-size:.57rem}.roof-showcase[data-cinema] .sc-atmosphere{opacity:.85}
.roof-showcase[data-cinema] .sc-hotspots{visibility:hidden}
.roof-showcase[data-cinema] .sc-dock{opacity:.65;transition:opacity .3s}
.roof-showcase[data-cinema] .sc-dock:hover,.roof-showcase[data-cinema] .sc-dock:focus-within{opacity:1}
@keyframes sc-flow{to{stroke-dashoffset:-300}}
@keyframes sc-thermal{from{opacity:.65}to{opacity:1}}
@media(max-width:850px){
 .sc-showroom{height:auto}.sc-world{left:auto;right:auto;height:460px}.sc-intro{left:auto;top:auto;width:auto;max-width:none;padding-top:28px}.sc-intro h1{font-size:clamp(2.9rem,9vw,4.8rem)}.sc-intro-copy{max-width:480px;font-size:.98rem}.sc-film{inset:5px -6% 77px}.sc-film-stage{width:100%}.sc-film-label{font-size:.62rem;bottom:9px;padding:7px 11px}.sc-inspector{max-height:none;max-width:none}.sc-inspector-content{padding:23px 6%}.sc-cinema h2{font-size:2rem}.sc-cinema-caption{font-size:1.04rem;line-height:1.62}
 .roof-showcase[data-autoplay][data-detail-open] .sc-showroom{display:flex;position:relative;height:auto;min-height:830px}
 .roof-showcase[data-autoplay][data-detail-open] .sc-world{height:400px;flex-shrink:0}
 .roof-showcase[data-autoplay][data-detail-open] .sc-inspector{position:relative;inset:auto;width:auto;min-width:0;margin:0 5% 24px;border-radius:13px;box-shadow:0 12px 40px #213b4711}
 .roof-showcase[data-autoplay][data-detail-open] .sc-inspector-content{overflow:visible}
 .roof-showcase[data-autoplay] .sc-detail-rail{visibility:visible}
 .roof-showcase[data-detail-open]:not([data-autoplay]) .sc-film{inset:0 0 69px}
 .roof-showcase[data-autoplay] .sc-vent-choice{margin-top:19px}
}
@media(prefers-reduced-motion:reduce){.sc-film *{animation:none!important;transition:none!important}.sc-film-camera{will-change:auto}}
html:not(.motion-on) .sc-film *{animation:none!important;transition:none!important}
/* Keep thermal colors tied to the lesson's timeline, rather than a decorative pulse. */
.sc-film .film-hot-zone,.sc-film .film-cool-zone{animation:none}
.sc-film .film-spotlight{fill:none}
.film-label-point{fill:#effaff;stroke:#335e70;stroke-width:1}
.film-ice-mark{stroke:#f3fcff;stroke-width:3;fill:none}
.film-melt-flow{stroke:#c6eafa;stroke-width:3;animation-duration:7s}
.roof-showcase{scroll-margin-top:76px}
.sc-world>.sc-vent-film{inset:16px 3% 84px 6%;z-index:3;border:1px solid #e2e8e6;border-radius:14px}
.roof-showcase[data-vent-view] .sc-film{opacity:0;pointer-events:none}
@media(max-width:850px){.sc-world>.sc-vent-film{inset:3px 3% 75px}.sc-vent-film .vent-film-product-stage{min-height:130px}.sc-vent-film .vent-film-section{min-height:85px}.sc-vent-film .vent-film-product img{max-height:140px}.sc-vent-film .vent-film-explanation,.sc-vent-film .vent-film-note{display:none}}
/* Leave clear space beside the description so all five guide positions stay visible. */
@media(min-width:851px){.sc-film[data-format=macro]{left:8%;right:3.5%}.sc-world>.sc-vent-film{left:8%;right:3.5%}}
@media(max-width:850px){.sc-film[data-format=macro]{left:0;right:0}}

/* V11: the visitor starts the story; one clear invitation precedes the detail. */
.sc-intro{display:flex;flex-direction:column;align-items:flex-start}
.sc-intro .sc-eyebrow{order:0}.sc-intro h1{order:1}.sc-intro-copy{order:2}
.sc-watch{order:3;background:#26383d;color:#fff;border-radius:30px;padding:14px 19px;margin-top:24px;box-shadow:0 8px 25px #24373d24;font-size:.9rem!important;line-height:1.4;gap:12px}
.sc-watch span{width:29px;height:29px;border-color:#ffffff70;flex:none}.sc-watch:hover{background:#3e555d;color:#fff;transform:translateY(-1px)}
.sc-intro .sc-estimate{order:4;background:none;color:#465e67;box-shadow:none;border-bottom:1px solid #ced9dc;border-radius:0;padding:8px 0;margin-top:12px;font-size:.81rem;gap:18px}
.sc-location{order:5}.sc-weather-story{order:6}
.sc-detail-watch{display:grid;grid-template-columns:35px 1fr;column-gap:12px;row-gap:2px;align-items:center;width:100%;background:#263b43;color:#fff;border:0;border-radius:12px;padding:16px 17px;margin-bottom:24px;text-align:left;box-shadow:0 8px 24px #1d36411a}
.sc-detail-watch>span:first-child{grid-row:1/3;width:34px;height:34px;display:grid;place-items:center;border:1px solid #ffffff70;border-radius:50%;font-size:11px;padding-left:2px}
.sc-detail-watch>span:nth-child(2){font-size:1rem;font-weight:550;line-height:1.4}.sc-detail-watch small{font-size:.67rem;line-height:1.5;color:#c5d8dd}
.sc-detail-watch:hover{background:#3b5662}.sc-detail-watch:disabled{opacity:.5}
.roof-showcase[data-cinema] .sc-peel-controls{display:none}
.roof-showcase[data-cinema] .sc-atmosphere{display:none}
.roof-showcase[data-cinema] .sc-dock{opacity:1}
.roof-showcase[data-manual] .sc-gesture{font-weight:550;color:#344b56}
.roof-showcase .sc-scene{transition:none}
.sc-material-note{padding:14px 16px;background:#f2f6f7;border-radius:9px;font-size:.81rem;line-height:1.6;color:#55717e}.roof-showcase[data-cinema] .sc-material-note{display:none}
@media(min-width:851px){.roof-showcase[data-detail-open] .sc-film[data-format=house]{left:6%;right:0}}
@media(max-width:850px){.sc-watch{margin-top:17px;padding:13px 17px;font-size:.83rem!important}.sc-intro .sc-estimate{margin-top:7px;padding:7px 0}.sc-detail-watch{padding:13px 15px;margin-bottom:20px}.sc-detail-watch>span:nth-child(2){font-size:.96rem}}
.film-fastening-label,.film-exposure-label{font-family:'DM Sans',sans-serif;paint-order:stroke;stroke:#243137bb;stroke-width:2px;stroke-linejoin:round}
