.cta-ring{--cta-teal:43, 166, 171;--cta-cycle:5s;--cta-delay:.6s;border-radius:16px;padding:2px;position:relative}.cta-ring__deco{border-radius:inherit;pointer-events:none;transition:opacity .2s cubic-bezier(.23,1,.32,1);position:absolute;inset:0}.cta-ring[data-live] .cta-ring__deco{opacity:0}.cta-ring__track{border-radius:inherit;background:rgba(var(--cta-teal), .06);position:absolute;inset:0}.cta-ring__arc{border-radius:inherit;opacity:0;animation:cta-arc-fade var(--cta-cycle) ease var(--cta-delay) infinite;position:absolute;inset:0;overflow:hidden}.cta-ring__arc:before{content:"";background:conic-gradient(from 0deg, rgba(var(--cta-teal), 0) 0deg, rgba(var(--cta-teal), 0) 170deg, rgba(var(--cta-teal), .18) 240deg, rgba(var(--cta-teal), .7) 310deg, rgba(var(--cta-teal), .3) 340deg, rgba(var(--cta-teal), 0) 360deg);will-change:transform;width:640px;height:640px;animation:cta-sweep var(--cta-cycle) var(--cta-delay) infinite;margin:-320px 0 0 -320px;position:absolute;top:50%;left:50%}.cta-ring__hover{border-radius:inherit;background:rgba(var(--cta-teal), .35);opacity:0;transition:opacity .2s;position:absolute;inset:0}@media (hover:hover) and (pointer:fine){.cta-ring:hover .cta-ring__hover{opacity:1}}@keyframes cta-sweep{0%{animation-timing-function:cubic-bezier(.77,0,.175,1);transform:rotate(0)}48%{transform:rotate(360deg)}to{transform:rotate(360deg)}}@keyframes cta-arc-fade{0%{opacity:0}18%{opacity:1}32%{opacity:1}50%{opacity:0}to{opacity:0}}@media (prefers-reduced-motion:reduce){.cta-ring__arc,.cta-ring__arc:before{animation:none}.cta-ring__track{background:rgba(var(--cta-teal), .2)}}@keyframes cta-phone-ring{0%,to{transform:rotate(0)}20%{transform:rotate(15deg)}40%{transform:rotate(-15deg)}60%{transform:rotate(10deg)}80%{transform:rotate(-10deg)}}@media (hover:hover) and (pointer:fine){.cta-call:hover .cta-phone{animation:.5s cubic-bezier(.77,0,.175,1) cta-phone-ring}}@media (prefers-reduced-motion:reduce){.cta-call:hover .cta-phone{animation:none}}.orb-rings{--cta-teal:43, 166, 171;--cta-cycle:5s;--cta-delay:.6s;pointer-events:none;transition:opacity .2s cubic-bezier(.23,1,.32,1);position:absolute;inset:0}.orb-rings[data-live]{opacity:0}.orb-ring{opacity:0;animation:orb-ring var(--cta-cycle) cubic-bezier(.23, 1, .32, 1) var(--cta-delay) infinite;position:absolute;inset:0;transform:scale(.575)}.orb-ring:nth-child(2){animation-delay:calc(var(--cta-delay) + .25s)}.orb-ring:nth-child(3){animation-delay:calc(var(--cta-delay) + .5s)}@keyframes orb-ring{0%{opacity:0;transform:scale(.575)}6%{opacity:.6}48%{opacity:0;transform:scale(1)}to{opacity:0;transform:scale(1)}}@media (prefers-reduced-motion:reduce){.orb-rings{display:none}}
