/* Owner-approved motion addendum, 08.10.2026. Layout and approved artwork stay fixed. */
@keyframes planet-cta-breathe {
  0%,100% {box-shadow:0 4px 0 #302062,0 0 0 0 rgba(112,88,184,0),0 10px 22px rgba(70,49,124,.12)}
  50% {box-shadow:0 4px 0 #302062,0 0 0 7px rgba(112,88,184,.11),0 15px 29px rgba(70,49,124,.23)}
}
@keyframes planet-control-breathe {0%,100%{opacity:.64}50%{opacity:1}}
@keyframes planet-panel-open {from{opacity:.35}to{opacity:1}}
body .cta {animation:planet-cta-breathe 2.8s ease-in-out infinite}
body .cta:hover,body .cta:focus-visible,body .cta:active,body .cta.is-pressed,body .cta:disabled {animation:none}
#program .day-toggle:not(:disabled) .day-toggle-mark,#faq summary::after {animation:planet-control-breathe 3.2s ease-in-out infinite}
#program .day-toggle:focus-visible .day-toggle-mark,#faq summary:focus-visible::after {animation:none;opacity:1}
#program .day-content:not([hidden]),#faq details[open] .faq-live-answer {animation:planet-panel-open .22s ease-out}
#for-you .audience-item,#natal-map .mf-list li,#moving-sky .mf-list li,#outcomes .outcome-card,#faq .faq-live-item {transition:box-shadow .22s ease,background-color .22s ease}
#registration-section .field input,#registration-section .phone-control {transition:box-shadow .18s ease,border-color .18s ease}
#registration-section .field input:focus-visible,#registration-section .phone-control:focus-within {box-shadow:0 0 0 4px rgba(112,88,184,.1)}
@media(hover:hover) and (pointer:fine) {
 #for-you .audience-item:hover,#natal-map .mf-list li:hover,#moving-sky .mf-list li:hover,#outcomes .outcome-card:hover,#faq .faq-live-item:hover {box-shadow:0 8px 22px rgba(77,57,128,.09)}
}
/* Deterministic preview and the visitor's accessibility setting take precedence. */
html.qa-static .cta,html.qa-static #program .day-toggle:not(:disabled) .day-toggle-mark,html.qa-static #faq summary::after,html.qa-static #program .day-content,html.qa-static #faq .faq-live-answer {animation:none}
@media(prefers-reduced-motion:reduce) {
 body .cta,#program .day-toggle:not(:disabled) .day-toggle-mark,#faq summary::after,#program .day-content:not([hidden]),#faq details[open] .faq-live-answer {animation:none}
 #for-you .audience-item,#natal-map .mf-list li,#moving-sky .mf-list li,#outcomes .outcome-card,#faq .faq-live-item,#registration-section .field input,#registration-section .phone-control {transition:none}
}
