.header-actions{display:flex;gap:23px;align-items:center}#motion-toggle{font:inherit;font-size:.75rem;color:var(--muted);background:transparent;border:0;padding:10px 0;text-decoration:underline;text-underline-offset:4px}.brand img{width:65px;height:65px;object-fit:contain}.heading{align-items:center;margin-bottom:24px;min-height:220px}.heading-copy{flex:1;min-width:0}.heading-copy .intro{padding:0;margin-top:16px}.avatar-guide{position:relative;width:390px;align-self:stretch;flex-shrink:0;min-height:240px;display:flex;align-items:center;justify-content:start;background:radial-gradient(ellipse at 76% 73%,#94dce65c 0%,#c7edf021 40%,transparent 68%)}.avatar-window{width:205px;height:250px;position:absolute;right:0;bottom:-3px;overflow:hidden;mask-image:linear-gradient(#000 90%,transparent 100%)}.avatar-window img{width:205px;height:auto;position:absolute;bottom:-8px;right:0;transform-origin:55% 90%;animation:avatar-breathe 5s ease-in-out infinite}.guide-bubble{align-self:center;z-index:1;position:relative;background:white;border:1px solid #cde0e5;border-radius:15px 15px 0 15px;padding:14px 17px;max-width:220px;margin-top:-30px;box-shadow:0 8px 28px #06303f0a;animation:enter-bubble .6s ease-out both}.guide-bubble>span{font-size:.65rem;letter-spacing:.13em;font-weight:750;color:var(--teal)}.guide-bubble p{font-size:.86rem;line-height:1.5;color:var(--navy);margin-top:6px}.visual-guide{margin-top:34px}.visual-guide-title{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:20px}.visual-guide-title h2{font-size:1.3rem}.visual-guide-title p{font-size:.85rem}.motion-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.motion-card{border:1px solid var(--line);border-radius:16px;overflow:hidden;background:white;animation:enter-card .65s ease-out both}.motion-card:nth-child(2){animation-delay:.12s}.motion-card:nth-child(3){animation-delay:.24s}.motion-image{height:185px;position:relative;overflow:hidden;background:#f3f2ee}.motion-image img{width:100%;height:100%;object-fit:cover;animation:scene-drift 8s ease-in-out infinite alternate}.motion-card:nth-child(2) img{animation-delay:-3s}.motion-card:nth-child(3) img{animation-delay:-6s}.visual-step{position:absolute;top:13px;left:13px;background:white;color:var(--teal);font-size:.75rem;font-weight:750;width:32px;height:32px;border-radius:50%;display:grid;place-items:center}.motion-caption{padding:17px 19px 20px}.motion-caption h3{font-size:1rem}.motion-caption p{font-size:.8rem;margin-top:5px}.selected-visual{height:146px;position:relative;overflow:hidden;border-radius:10px;margin-top:17px;background:#e9eff0}.selected-visual img{width:100%;height:100%;object-fit:cover;object-position:center 54%;animation:scene-drift 9s ease-in-out infinite alternate}.selected-visual span{position:absolute;bottom:10px;left:10px;max-width:calc(100% - 20px);border:1px solid #fff9;background:#ffffffeb;border-radius:7px;padding:7px 10px;font-size:.74rem;color:var(--navy);font-weight:650}.roof-graphic svg g{animation:pan-enter .6s ease-out both}.roof-graphic svg g:nth-child(2){animation-delay:.08s}.roof-graphic svg g:nth-child(3){animation-delay:.16s}.roof-graphic svg g:nth-child(4){animation-delay:.24s}.is-analyzing .avatar-window img{animation-duration:1.8s}.is-analyzing .address-card{background:linear-gradient(110deg,#fff 30%,#e4f6f8 49%,#fff 68%);background-size:250% 100%;animation:analysis-sweep 2.2s linear infinite}.motion-paused *, .motion-paused *:before,.motion-paused *:after{animation-play-state:paused!important;transition:none!important}
@keyframes avatar-breathe{0%,100%{transform:translateY(0) rotate(-.6deg)}50%{transform:translateY(-5px) rotate(.6deg)}}
.motion-paused .motion-card,.motion-paused .guide-bubble{opacity:1!important;transform:none!important}
@keyframes enter-bubble{from{opacity:0;transform:translateY(9px)}to{opacity:1;transform:translateY(0)}}
@keyframes enter-card{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}
@keyframes scene-drift{from{transform:scale(1.025) translateY(0)}to{transform:scale(1.08) translateY(-2px)}}
@keyframes pan-enter{from{opacity:.25}to{opacity:1}}
@keyframes analysis-sweep{from{background-position:120% 0}to{background-position:-120% 0}}
@media(max-width:1000px){.avatar-guide{width:310px}.avatar-window{right:-10px;width:170px;height:220px}.avatar-window img{width:185px}.guide-bubble{max-width:180px;padding:11px 13px;margin-top:-30px}.guide-bubble p{font-size:.8rem}.heading h1{font-size:2.6rem}.header-actions{gap:15px}.motion-image{height:155px}.visual-guide-title{display:block}.visual-guide-title p{margin-top:6px}}
@media(max-width:700px){.header{height:87px}.brand img{width:58px;height:58px}.brand{gap:4px}.header-actions{flex-direction:column-reverse;gap:0;align-items:end}#motion-toggle{font-size:.62rem;padding:5px 0;max-width:140px;text-align:right}.heading{position:relative;min-height:285px;margin-bottom:17px;display:block}.heading h1{font-size:2.04rem;max-width:300px}.heading-copy .intro{font-size:.82rem;max-width:205px;margin-top:13px}.avatar-guide{height:104px;min-height:0;width:100%;position:relative;margin-top:9px;background:none}.avatar-window{width:118px;height:154px;bottom:-10px;right:-1px}.avatar-window img{width:126px;bottom:-2px}.guide-bubble{max-width:228px;margin:0 105px 0 0;padding:10px 12px;border-radius:10px 10px 0 10px}.guide-bubble>span{font-size:.6rem}.guide-bubble p{font-size:.76rem;margin-top:4px}.motion-cards{grid-template-columns:1fr;gap:14px}.motion-card{display:grid;grid-template-columns:132px 1fr;align-items:center}.motion-image{height:115px}.motion-caption{padding:12px}.motion-caption h3{font-size:.9rem}.motion-caption p{font-size:.76rem}.visual-step{top:8px;left:8px;width:25px;height:25px;font-size:.68rem}.visual-guide-title h2{font-size:1.15rem}.selected-visual{height:140px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.motion-card,.guide-bubble{opacity:1!important;transform:none!important}}
@media print{.avatar-guide,.visual-guide,.selected-visual,#motion-toggle{display:none!important}*,*:before,*:after{animation:none!important}}
.roof-graphic svg g{animation:none}
