
/* Unified interaction states, isolated to the redesigned homepage. */
:where(#fire-prototype,body:has(#pa-hero-root)) :is(a,button,summary){-webkit-tap-highlight-color:rgba(142,150,159,.16)}
:where(#fire-prototype,body:has(#pa-hero-root)) :is(a,button,summary):focus-visible{outline:2px solid #8e969f;outline-offset:4px}
:where(#fire-prototype,body:has(#pa-hero-root)) :is(input,textarea,select):focus-visible{outline:1px solid #8e969f;outline-offset:2px;border-color:#8e969f}
:where(#fire-prototype,body:has(#pa-hero-root)) :is(.primary,.outline,.call-button,.pa-call-button,.btn,.pa-services-all){position:relative;overflow:hidden;isolation:isolate;transition:box-shadow .18s,filter .18s}
:where(#fire-prototype,body:has(#pa-hero-root)) :is(.primary,.outline,.call-button,.pa-call-button,.btn,.pa-services-all)::after{content:"";pointer-events:none;position:absolute;inset:-25% auto -25% -90%;width:55%;background:linear-gradient(105deg,transparent,rgba(255,255,255,.3),transparent);transform:skewX(-18deg);opacity:0}
@keyframes pa-ui-shine{0%{left:-90%;opacity:0}20%,80%{opacity:1}100%{left:140%;opacity:0}}
:where(#fire-prototype,body:has(#pa-hero-root)) :is(.search-button,.pa-search-button) svg{transition:transform .18s ease;transform-origin:center}
:where(#fire-prototype,body:has(#pa-hero-root)) :is(.search-button,.pa-search-button){color:#1c2026!important}
:where(#fire-prototype,body:has(#pa-hero-root)) :is(.arrow,.play,.dialog-close,.menu-button,.pa-menu-button,.phone-icon,.pa-phone-icon){transition:transform .18s,opacity .18s}
#pa-services-root .pa-long-arrow{flex:none;transition:transform .2s ease;vertical-align:middle}
@media(hover:hover) and (pointer:fine){
:where(#fire-prototype,body:has(#pa-hero-root)) :is(.search-button,.pa-search-button):hover svg{transform:scale(1.1)}
:where(#fire-prototype,body:has(#pa-hero-root)) :is(.primary,.outline,.call-button,.pa-call-button,.btn,.pa-services-all):hover::after{animation:pa-ui-shine .65s ease-out 1}
:where(#fire-prototype,body:has(#pa-hero-root)) :is(.primary,.outline,.call-button,.pa-call-button,.btn):hover{filter:brightness(1.06)}
:where(#fire-prototype,body:has(#pa-hero-root)) :is(.arrow,.play,.dialog-close,.menu-button,.pa-menu-button,.phone-icon,.pa-phone-icon):hover{transform:scale(1.08)}
:where(#fire-prototype,body:has(#pa-hero-root)) :is(a[href^="tel:"],a[href^="mailto:"]):hover{text-decoration:underline;text-underline-offset:4px}
:where(#fire-prototype,body:has(#pa-hero-root)) :is(nav a,nav summary):hover{color:#fc4d08}
:where(#fire-prototype,body:has(#pa-hero-root)) :is(.faq summary,#faq button,details:not(.nav-item) summary):hover{background-color:rgba(142,150,159,.12)}
:where(#fire-prototype,body:has(#pa-hero-root)) :is(.pa-task,.object-card):hover{box-shadow:0 7px 22px rgba(28,32,38,.12)}
#pa-services-root :is(.pa-service-card,.pa-service-link,.pa-services-all):hover .pa-long-arrow{transform:translateX(6px)}
}
:where(#fire-prototype,body:has(#pa-hero-root)) :is(a,button,summary):active{opacity:.85}
@media(prefers-reduced-motion:reduce){:where(#fire-prototype,body:has(#pa-hero-root)) :is(a,button,svg,summary){transition:none!important;animation:none!important} :where(#fire-prototype,body:has(#pa-hero-root)) :is(a,button)::after{animation:none!important;display:none!important} :where(#fire-prototype,body:has(#pa-hero-root)) :is(.search-button,.pa-search-button):hover svg{transform:none}#pa-services-root .pa-long-arrow{transform:none!important}}

/* Task and flip arrows enlarge on hover; keep their original colors. */
:where(#fire-prototype,#pa-task-root) .pa-task-link span{display:inline-block;transition:transform .18s ease;transform-origin:center}
:where(#fire-prototype,#pa-hero-root,#pa-final-root) .hero .flip-actions .arrow:hover{color:#c1c6cd;background:transparent}
:where(#fire-prototype,#pa-hero-root,#pa-final-root) .hero .back .flip-actions .arrow:hover{color:#5c666e;background:transparent}
@media(hover:hover) and (pointer:fine){:where(#fire-prototype,#pa-task-root) .pa-task:hover .pa-task-link span{transform:scale(1.2)}:where(#fire-prototype,#pa-hero-root,#pa-final-root) .hero .flip-actions .arrow:hover{transform:scale(1.2)}}
@media(prefers-reduced-motion:reduce){:where(#fire-prototype,#pa-task-root) .pa-task-link span{transition:none}:where(#fire-prototype,#pa-task-root) .pa-task:hover .pa-task-link span,:where(#fire-prototype,#pa-hero-root,#pa-final-root) .hero .flip-actions .arrow:hover{transform:none}}

/* Same arrow geometry and motion in services, tasks and the first screen. */
:where(#fire-prototype,#pa-task-root) .pa-task-link span{width:36px;height:16px;flex:none;font-size:0!important;position:relative;transform:none!important}
:where(#fire-prototype,#pa-hero-root,#pa-final-root) .hero .flip-actions .arrow{font-size:0!important;transform:none!important}
:where(#fire-prototype,#pa-task-root) .pa-task-link span::before,:where(#fire-prototype,#pa-hero-root,#pa-final-root) .hero .flip-actions .arrow::before{content:"";display:block;width:36px;height:16px;background:currentColor;mask:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2036%2016%22%3E%3Cpath%20d%3D%22M1%208h32M26%201l7%207-7%207%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%2F%3E%3C%2Fsvg%3E");mask-repeat:no-repeat;mask-position:center;mask-size:contain;-webkit-mask:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2036%2016%22%3E%3Cpath%20d%3D%22M1%208h32M26%201l7%207-7%207%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%2F%3E%3C%2Fsvg%3E");-webkit-mask-repeat:no-repeat;-webkit-mask-position:center;-webkit-mask-size:contain;transition:transform .2s ease}
:where(#fire-prototype,#pa-hero-root,#pa-final-root) .hero .flip-actions .arrow:first-child::before{transform:rotate(180deg)}
@media(hover:hover) and (pointer:fine){:where(#fire-prototype,#pa-task-root) .pa-task:hover .pa-task-link span::before,:where(#fire-prototype,#pa-hero-root,#pa-final-root) .hero .flip-actions .arrow:hover::before{transform:translateX(6px)}:where(#fire-prototype,#pa-hero-root,#pa-final-root) .hero .flip-actions .arrow:first-child:hover::before{transform:translateX(-6px) rotate(180deg)}}
@media(prefers-reduced-motion:reduce){:where(#fire-prototype,#pa-task-root) .pa-task-link span::before,:where(#fire-prototype,#pa-hero-root,#pa-final-root) .hero .flip-actions .arrow::before{transition:none}:where(#fire-prototype,#pa-task-root) .pa-task:hover .pa-task-link span::before,:where(#fire-prototype,#pa-hero-root,#pa-final-root) .hero .flip-actions .arrow:hover::before{transform:none}:where(#fire-prototype,#pa-hero-root,#pa-final-root) .hero .flip-actions .arrow:first-child:hover::before{transform:rotate(180deg)}}
