/* Rich motion uses transform/opacity and remains optional. Approved room section is excluded. */
.hero-photo-layout .hero-blue{font-size:.92em;line-height:1.2}.hero-copy{isolation:isolate}.hero-copy:before,.hero-copy:after{content:"";position:absolute;pointer-events:none;z-index:-1;border-radius:50%;filter:blur(50px);opacity:.18;animation:ambientDrift 12s ease-in-out infinite alternate}.hero-copy:before{width:260px;height:260px;background:#8bead4;top:1%;left:12%}.hero-copy:after{width:280px;height:280px;background:#b4c8ff;bottom:3%;right:2%;animation-delay:-6s}
#problem .stat-card:before{background:linear-gradient(180deg,#22c55e 0%,#179fc8 50%,#1d4ed8 100%)}
.problem-visual{box-shadow:0 28px 55px #0b1f4b17,0 5px 12px #0b1f4b08}.problem-visual img{transition:transform 1.2s cubic-bezier(.2,.8,.2,1)}.problem-visual:hover img{transform:scale(1.035)}
.warranty-photo>img{aspect-ratio:1.2;object-fit:contain;filter:drop-shadow(0 22px 16px #0b1f4b18);animation:floatProduct 8s ease-in-out infinite}
.materials-section .mat-photo{height:310px;object-fit:contain}
.review-demo{padding:8.6cqw 4.6cqw!important;text-align:center}.phone-screen-vector{container-type:inline-size;background:linear-gradient(145deg,#d9f4eb 0%,#e9f3f7 45%,#d4e5f9 100%)}
.review-demo-card{border-radius:7.5cqw;padding:10.2cqw 7cqw 8.5cqw;box-shadow:0 5cqw 10cqw #0b1f4b12}
.review-demo-brand{font-size:4.6cqw;gap:2cqw;letter-spacing:-.03em}.phone-screen-vector .review-demo-brand img{width:6.6cqw;height:6.6cqw}
.review-demo-eyebrow{margin:8.6cqw 0 5.6cqw;gap:2cqw;font-size:2.9cqw;letter-spacing:.08em;font-weight:800}.review-demo-eyebrow:before,.review-demo-eyebrow:after{width:7cqw}
.review-demo-stars{font-size:8cqw;letter-spacing:.035em;line-height:1;margin:0 0 5.5cqw}
.review-demo h3{font-size:6.5cqw;line-height:1.18;letter-spacing:-.045em;margin:0 0 5cqw;font-weight:800!important}
.review-demo-sub{font-size:3.8cqw;line-height:1.6;margin:0 0 7.5cqw;color:#7b8d9e}
.review-demo-map{min-height:16cqw;border-radius:4.2cqw;font-size:4cqw;font-weight:800;gap:2.4cqw;padding:3.2cqw 1.8cqw;margin-bottom:3cqw;white-space:nowrap}
.review-demo-map svg{width:5.2cqw;height:5.2cqw}.phone-screen-vector .review-demo-map img{width:6.4cqw;height:6.4cqw;transform:none;background:none;border:0}
.review-demo-thanks{font-size:3.4cqw;line-height:1.55;color:#95a2ad;margin:8cqw 0 5.5cqw}.review-demo-site{display:inline-block;border-bottom:1px solid #b8c7d5;padding-bottom:1cqw;font-size:3.4cqw;font-weight:700;color:#2154db}
.phone-mockup{width:340px;max-width:90%;padding:12px;box-shadow:0 30px 60px #0b1f4b24,0 7px 16px #0b1f4b14}
#stats .chart-wrap{box-shadow:0 25px 60px #0b1f4b13;border-radius:24px}.chart-caption{font-weight:600}
.motion-enabled .reveal-item{transition:opacity .75s ease,translate .85s cubic-bezier(.2,.7,.2,1);transition-delay:var(--reveal-delay,0ms)}
.motion-enabled .reveal-item:not(.is-in){opacity:0;translate:0 28px}.motion-enabled .reveal-item.is-in{opacity:1;translate:0 0}
.tilt-layer{transform:perspective(1000px) rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg));transition:transform .4s ease;transform-style:preserve-3d}
.stat-card,.solution-steps li,.trust-qa,.price-table-wrap{transition:box-shadow .3s,border-color .3s,translate .3s}.stat-card:hover,.solution-steps li:hover{box-shadow:0 20px 38px #0b1f4b13;border-color:#c4ddec;translate:0 -3px}
.site-header.is-scrolled{box-shadow:0 10px 30px #0b1f4b0d;background:#ffffffed}.site-header{transition:box-shadow .3s,background .3s}
.scroll-progress{position:fixed;left:0;right:0;top:0;height:3px;z-index:1000;background:var(--brand-gradient);transform:scaleX(0);transform-origin:left;pointer-events:none}
.btn{position:relative;overflow:hidden}.btn:after{content:"";position:absolute;inset:-100% 0;background:linear-gradient(100deg,transparent 35%,#ffffff45 50%,transparent 65%);translate:-120% 0;pointer-events:none}.btn:hover:after{animation:buttonLight .8s ease}
@keyframes buttonLight{to{translate:120% 0}}@keyframes floatProduct{0%,100%{transform:translateY(0) rotate(-1deg)}50%{transform:translateY(-10px) rotate(1deg)}}@keyframes ambientDrift{to{transform:translate(20px,-18px) scale(1.12)}}
@media(max-width:760px){.hero-photo-layout .hero-blue{max-width:100%}.phone-mockup{width:320px;max-width:94%}.hero-copy:before{width:200px;height:200px}.hero-copy:after{width:200px;height:200px}.chart{height:250px}.chart-wrap{padding:25px 15px}.chart-labels{gap:8px;padding-left:0;padding-right:0}.bar-label{font-size:10px}.bar-label small{font-size:9px}.chart-caption{font-size:15px}.bar-value{font-size:12px}.bar-col.win .bar-value{font-size:14px}}
@media(prefers-reduced-motion:reduce){.motion-enabled .reveal-item:not(.is-in){opacity:1;translate:none}.tilt-layer{transform:none}.hero-copy:before,.hero-copy:after,.warranty-photo>img,.btn:after{animation:none}.scroll-progress{display:none}}
