/* Homeowners audience: quiet entrances and finite purple-and-gold accents. */
body[data-page="homeowners"]{--homeowners-motion-ease:cubic-bezier(.22,1,.36,1)}
body[data-page="homeowners"] [data-homeowners-reveal]{opacity:1}
body[data-page="homeowners"] main>section:not([data-motion-banner]) .reveal{opacity:1;transform:none;transition:none}
body[data-page="homeowners"] .process-step{position:relative}
body[data-page="homeowners"] .process-step::before{content:"";position:absolute;top:-1px;left:0;width:84px;height:2px;background:linear-gradient(90deg,var(--violet),var(--gold));transform:scaleX(1);transform-origin:left;pointer-events:none}
body[data-page="homeowners"].homeowners-motion-ready .process-step::before{transition:transform .55s var(--homeowners-motion-ease)}
body[data-page="homeowners"].homeowners-motion-ready .process-step:not(.homeowners-revealed)::before{transform:scaleX(.25)}
body[data-page="homeowners"] .process-step .num{transition:color .22s ease}
body[data-page="homeowners"] .service-card{transition:transform .28s var(--homeowners-motion-ease),border-color .25s ease,box-shadow .25s ease}
body[data-page="homeowners"] .card-visual img{transition:transform .55s var(--homeowners-motion-ease)}
body[data-page="homeowners"] .card-link svg{transition:transform .22s var(--homeowners-motion-ease)}
body[data-page="homeowners"] main>section:not([data-motion-banner]) .text-link{transition:color .2s ease,border-color .2s ease}
body[data-page="homeowners"] main>section:not([data-motion-banner]) .text-link svg{transition:transform .22s var(--homeowners-motion-ease)}
body[data-page="homeowners"] .contact-call,
body[data-page="homeowners"] .contact-save{transition:background-color .22s ease,border-color .22s ease,box-shadow .22s ease}
body[data-page="homeowners"] .contact-save:hover{transform:none}
body[data-page="homeowners"] .contact-hub-form{transition:border-color .22s ease,box-shadow .22s ease}
body[data-page="homeowners"] .contact-hub-form:focus-within{border-color:#b49bc4;box-shadow:0 0 0 3px #7944a60c}
@media(hover:hover) and (pointer:fine){
 body[data-page="homeowners"] .service-card:hover{transform:translateY(-3px);border-color:var(--violet)}
 body[data-page="homeowners"] .service-card:hover .card-visual img{transform:scale(1.02)}
 body[data-page="homeowners"] .service-card:hover .card-link svg{transform:translateX(2px)}
 body[data-page="homeowners"] .process-step:hover .num{color:var(--purple)}
 body[data-page="homeowners"] main>section:not([data-motion-banner]) .text-link:hover{color:var(--purple);border-color:var(--violet)}
 body[data-page="homeowners"] main>section:not([data-motion-banner]) .text-link:hover svg{transform:translateX(2px)}
}
body[data-page="homeowners"] .service-card:focus-visible{border-color:var(--violet)}
@media(max-width:650px){
 body[data-page="homeowners"] .service-card:hover,
 body[data-page="homeowners"] .service-card:hover .card-visual img{transform:none}
 body[data-page="homeowners"] .process-step::before{width:64px}
}
.motion-paused body[data-page="homeowners"] main>section:not([data-motion-banner]) *,
.motion-paused body[data-page="homeowners"] main>section:not([data-motion-banner]) *::before,
.motion-paused body[data-page="homeowners"] main>section:not([data-motion-banner]) *::after{animation:none!important;transition:none!important}
.motion-paused body[data-page="homeowners"] .process-step::before{transform:scaleX(1)!important}
.motion-paused body[data-page="homeowners"] .service-card:hover,
.motion-paused body[data-page="homeowners"] .service-card:hover .card-visual img,
.motion-paused body[data-page="homeowners"] .service-card:hover .card-link svg,
.motion-paused body[data-page="homeowners"] main>section:not([data-motion-banner]) .text-link:hover svg{transform:none!important}
@media(prefers-reduced-motion:reduce){
 body[data-page="homeowners"] main>section:not([data-motion-banner]) *,
 body[data-page="homeowners"] main>section:not([data-motion-banner]) *::before,
 body[data-page="homeowners"] main>section:not([data-motion-banner]) *::after{animation:none!important;transition:none!important}
 body[data-page="homeowners"] .process-step::before{transform:scaleX(1)!important}
 body[data-page="homeowners"] .service-card:hover,
 body[data-page="homeowners"] .service-card:hover .card-visual img,
 body[data-page="homeowners"] .service-card:hover .card-link svg,
 body[data-page="homeowners"] main>section:not([data-motion-banner]) .text-link:hover svg{transform:none!important}
}
@media print{
 body[data-page="homeowners"] [data-homeowners-reveal]{opacity:1!important;transform:none!important}
 body[data-page="homeowners"] .process-step::before{display:none}
}
