.olive-animation-section{background-color:#eee8d7;display:flex;align-items:center;justify-content:center;padding:4rem 1rem;width:100%}
.olive-stage{display:flex;align-items:center;justify-content:center}
.olive-svg{width:220px;height:260px;overflow:visible;animation:olive-float 5.5s ease-in-out infinite}
@keyframes olive-float{0%,100%{transform:translateY(0) rotate(-0.8deg)}50%{transform:translateY(-14px) rotate(0.8deg)}}
@keyframes olive-sway{0%,100%{transform:rotate(0deg)}40%{transform:rotate(4deg)}70%{transform:rotate(-3deg)}}
@keyframes olive-shimmer{0%,100%{opacity:0.5}50%{opacity:0.85}}
@keyframes olive-ring{0%{r:52px;opacity:0.2;stroke-width:1px}100%{r:80px;opacity:0;stroke-width:0.4px}}
@keyframes olive-orbit-1{from{transform:rotate(0deg) translateX(58px) rotate(0deg)}to{transform:rotate(360deg) translateX(58px) rotate(-360deg)}}
@keyframes olive-orbit-2{from{transform:rotate(120deg) translateX(64px) rotate(-120deg)}to{transform:rotate(480deg) translateX(64px) rotate(-480deg)}}
@keyframes olive-orbit-3{from{transform:rotate(240deg) translateX(54px) rotate(-240deg)}to{transform:rotate(600deg) translateX(54px) rotate(-600deg)}}
.olive-leaves{transform-origin:110px 96px;animation:olive-sway 4.5s ease-in-out infinite}
.olive-highlight{animation:olive-shimmer 4s ease-in-out infinite}
.olive-ring{stroke-width:1px;animation:olive-ring 4s ease-out infinite}
.olive-ring--delay{animation-delay:2s}
.olive-dot{transform-box:fill-box}
.olive-dot--1{transform-origin:110px 162px;animation:olive-orbit-1 9s linear infinite}
.olive-dot--2{transform-origin:110px 162px;animation:olive-orbit-2 12s linear infinite}
.olive-dot--3{transform-origin:110px 162px;animation:olive-orbit-3 7.5s linear infinite}
@media(prefers-reduced-motion:reduce){.olive-svg,.olive-leaves,.olive-highlight,.olive-ring,.olive-dot--1,.olive-dot--2,.olive-dot--3{animation:none}}
@media screen and (max-width:749px){.olive-svg{width:170px;height:200px}.olive-animation-section{padding:3rem 1rem}}
