/* Slow orbital movement and chrome reflections around the decision surface. */
.reading-progress{position:fixed;inset:0 0 auto;height:2px;background:var(--green);box-shadow:0 0 12px #c2fc6166;transform:scaleX(0);transform-origin:left;z-index:20;pointer-events:none}
.motion-word{display:inline-block}
.motion-ready .motion-word{opacity:0;transform:translateY(16px) rotateX(18deg);transition:opacity .65s cubic-bezier(.16,1,.3,1),transform .8s cubic-bezier(.16,1,.3,1);transition-delay:var(--word-delay,0ms)}
.motion-ready .revealed .motion-word{opacity:1;transform:none}
.interactive-panel{--light-x:50%;--light-y:30%;position:relative;isolation:isolate}
.interactive-panel:after{content:"";position:absolute;inset:0;border-radius:inherit;background:radial-gradient(420px circle at var(--light-x) var(--light-y),#c2fc6115,transparent 70%);opacity:0;transition:opacity .4s;pointer-events:none;z-index:2}
.interactive-panel:hover:after{opacity:1}
.motion-ready .steps article.revealed{transform:perspective(1000px) rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg));transition-delay:0ms!important}
.steps article:hover h3,.rule-list article:hover h3{color:var(--green)}
.steps h3,.rule-list h3{transition:color .3s}
.step-bottom{position:relative;width:fit-content;padding-bottom:7px}
.step-bottom:after{content:"";position:absolute;bottom:0;left:0;right:0;height:1px;background:var(--green);transform:scaleX(0);transform-origin:left;transition:transform .5s cubic-bezier(.16,1,.3,1)}
.steps article:hover .step-bottom:after{transform:scaleX(1)}
.rule-list article{transition:background .35s,padding-left .35s}
.rule-list article:hover{background:linear-gradient(90deg,#c2fc6107,transparent);padding-left:10px}
.primary,.wallet-button,.outline,.wallet-list button{position:relative;overflow:hidden}
.click-wave{position:absolute;width:10px;height:10px;border-radius:50%;background:currentColor;opacity:.18;pointer-events:none;animation:click-wave .7s ease-out forwards}
dialog[open]{animation:dialog-arrival .4s cubic-bezier(.16,1,.3,1) both}
dialog[open]::backdrop{animation:backdrop-arrival .3s ease-out both}
.wallet-list button{transition:background .25s,border-color .25s,transform .25s}
.wallet-list button:hover{transform:translateX(4px)}
.faq-list summary{transition:color .25s,padding-left .3s}
.faq-list summary:hover{padding-left:8px;color:var(--green)}
.faq-list summary span{display:inline-block;transition:transform .35s,color .35s}
.faq-list details[open] summary span{transform:rotate(45deg);color:var(--green)}
.text-button>span,.ballot-bottom a>span{display:inline-block;transition:transform .3s}
.text-button:hover>span,.ballot-bottom a:hover>span{transform:rotate(90deg)}
@keyframes click-wave{from{transform:translate(-50%,-50%) scale(1);opacity:.18}to{transform:translate(-50%,-50%) scale(70);opacity:0}}
@keyframes dialog-arrival{from{opacity:0;transform:translateY(18px) scale(.97)}to{opacity:1;transform:none}}
@keyframes backdrop-arrival{from{opacity:0}to{opacity:1}}
@media(prefers-reduced-motion:reduce){.motion-ready .motion-word{opacity:1;transform:none;transition:none}.interactive-panel:after{display:none}.motion-ready .steps article.revealed{transform:none}.rule-list article:hover,.faq-list summary:hover{padding-left:0}.wallet-list button:hover{transform:none}dialog[open],dialog[open]::backdrop{animation:none}.click-wave{display:none}}
.hero-orbits{position:absolute;left:66%;top:52%;width:440px;height:440px;transform:translate(-50%,-50%);perspective:900px;pointer-events:none;opacity:.4}
.hero-orbits i{position:absolute;inset:0;border:1px solid #c2fc6144;border-radius:50%;box-shadow:0 0 24px #c2fc6109,inset 0 0 18px #c2fc6108;animation:hero-orbit 25s linear infinite}
.hero-orbits i:nth-child(2){inset:34px;border-color:#dce8d323;animation:hero-orbit-cross 32s linear infinite}
.orbit-satellite{position:absolute;left:50%;top:50%;width:5px;height:5px;border-radius:50%;background:#dcffab;box-shadow:0 0 18px #c2fc61;animation:hero-satellite 22s linear infinite}
.hero-art:before{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 43%,#c2fc6110 49%,#efffd01a 50%,transparent 56%);transform:translateX(-60%);animation:hero-light 14s ease-in-out infinite;mix-blend-mode:screen}
.motion-ready .hero-copy>.eyebrow,.motion-ready .hero-copy>h1,.motion-ready .hero-copy>p,.motion-ready .hero-copy>.primary,.motion-ready .hero-foot,.motion-ready .art-caption{animation:copy-arrival .95s cubic-bezier(.16,1,.3,1) both}
.motion-ready .hero-copy>h1{animation-delay:.1s}.motion-ready .hero-copy>p{animation-delay:.2s}.motion-ready .hero-copy>.primary{animation-delay:.3s}.motion-ready .hero-foot{animation-delay:.4s}.motion-ready .art-caption{animation-delay:.6s}
.principle-strip .strip-star{display:inline-block;animation:strip-spin 24s linear infinite}.principle-strip .strip-star:nth-of-type(4){animation-direction:reverse}
.participation .participation-sculpture{height:126px;margin:8px 0 0;perspective:750px;pointer-events:none}.sculpture-float{position:absolute;inset:0;transform-style:preserve-3d;animation:coin-float 7s ease-in-out infinite}.sculpture-coin{position:absolute;width:76px;height:76px;left:calc(50% - 38px);top:25px;transform-style:preserve-3d;animation:coin-spin 18s linear infinite}
.coin-front,.coin-back{position:absolute;inset:0;display:grid;place-items:center;border-radius:50%;background:radial-gradient(ellipse at 26% 18%,#edffd470,#7c94712b 25%,#151d1299 58%,#b8d59066 90%),linear-gradient(140deg,#a3b292,#121a0e 48%,#667552);border:1px solid #d9edc180;backface-visibility:hidden;box-shadow:inset 0 0 0 5px #0b130dcc,inset 0 0 0 6px #c2fc6155,0 8px 28px #0008}
.coin-front{transform:translateZ(5px)}.coin-back{transform:rotateY(180deg) translateZ(5px)}.coin-front img,.coin-back img{filter:drop-shadow(0 0 10px #c2fc6155)}
.sculpture-ring{position:absolute;width:152px;height:152px;left:calc(50% - 76px);top:-12px;border:1px solid #c2fc6177;border-radius:50%;box-shadow:0 0 18px #c2fc610a;transform-style:preserve-3d;animation:sculpture-orbit 15s linear infinite}.ring-two{width:136px;height:136px;left:calc(50% - 68px);top:-4px;border-color:#dae8cd4d;animation:sculpture-orbit-cross 21s linear infinite}.sculpture-satellite{position:absolute;width:6px;height:6px;left:50%;top:50%;background:#c2fc61;border-radius:50%;box-shadow:0 0 15px #c2fc61;animation:small-satellite 15s linear infinite}
.participation h3{margin-top:12px}.participation{transition:border-color .5s,box-shadow .5s}.participation:hover{border-color:#65784b;box-shadow:0 16px 60px #0003}.ballot .proposal-emblem{animation:emblem-breathe 6s ease-in-out infinite}.round-clock.closing:not([data-motion-pause]){animation:clock-breathe 2s ease-in-out infinite}.primary .button-symbol{transition:transform .35s ease}.primary:hover .button-symbol{transform:translate(3px,-3px)}
.motion-ready .reveal-ready{opacity:0;transform:translateY(24px);transition:opacity .8s cubic-bezier(.16,1,.3,1),transform .8s cubic-bezier(.16,1,.3,1)}.motion-ready .reveal-ready.revealed{opacity:1;transform:translateY(0)}
.faq-list details[open] p{animation:faq-arrival .35s ease-out both}.nav nav a{position:relative}.nav nav a:after{content:"";position:absolute;left:0;right:0;bottom:-8px;height:1px;background:var(--green);transform:scaleX(0);transform-origin:left;transition:transform .3s}.nav nav a:hover:after,.nav nav a.active:after{transform:scaleX(1)}
[data-motion-pause] *,[data-motion-pause]:before,[data-motion-pause]:after,html.motion-paused *{animation-play-state:paused!important}
@keyframes copy-arrival{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}
@keyframes hero-orbit{from{transform:rotateX(67deg) rotateY(-18deg) rotateZ(0)}to{transform:rotateX(67deg) rotateY(-18deg) rotateZ(360deg)}}
@keyframes hero-orbit-cross{from{transform:rotateY(72deg) rotateX(16deg) rotateZ(0)}to{transform:rotateY(72deg) rotateX(16deg) rotateZ(-360deg)}}
@keyframes hero-satellite{from{transform:rotate(-20deg) translateX(207px)}to{transform:rotate(340deg) translateX(207px)}}
@keyframes hero-light{0%,20%{transform:translateX(-80%);opacity:0}35%{opacity:.6}60%,100%{transform:translateX(80%);opacity:0}}
@keyframes coin-float{0%,100%{transform:translateY(3px) rotateZ(-3deg)}50%{transform:translateY(-7px) rotateZ(3deg)}}
@keyframes coin-spin{from{transform:rotateY(-25deg) rotateX(9deg)}to{transform:rotateY(335deg) rotateX(9deg)}}
@keyframes sculpture-orbit{from{transform:rotateX(65deg) rotateY(-18deg) rotateZ(0)}to{transform:rotateX(65deg) rotateY(-18deg) rotateZ(360deg)}}
@keyframes sculpture-orbit-cross{from{transform:rotateY(67deg) rotateX(12deg) rotateZ(0)}to{transform:rotateY(67deg) rotateX(12deg) rotateZ(-360deg)}}
@keyframes small-satellite{from{transform:rotate(-40deg) translateX(71px)}to{transform:rotate(320deg) translateX(71px)}}
@keyframes strip-spin{to{transform:rotate(360deg)}}
@keyframes emblem-breathe{0%,100%{box-shadow:0 0 12px #c2fc610a,inset 0 0 15px #c2fc6108}50%{box-shadow:0 0 32px #c2fc6128,inset 0 0 15px #c2fc6118}}
@keyframes clock-breathe{0%,100%{filter:drop-shadow(0 0 0 transparent)}50%{filter:drop-shadow(0 0 8px #c2fc6133)}}
@keyframes faq-arrival{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:760px){.hero-orbits{left:65%;top:75%;width:260px;height:260px;opacity:.25}.hero-orbits i:nth-child(2){inset:18px}.orbit-satellite{display:none}.participation .participation-sculpture{height:104px;max-width:190px;margin:7px auto 0;width:100%}.sculpture-coin{top:15px}.sculpture-ring{top:-22px}.ring-two{top:-14px}.participation h3{margin-top:10px}.hero-art:before{animation-duration:20s}}
@media(prefers-reduced-motion:reduce){.motion-ready .reveal-ready{opacity:1;transform:none;transition:none}.hero-orbits{opacity:.2}.hero-orbits i{transform:rotateX(65deg)}.hero-orbits i:nth-child(2){transform:rotateY(68deg)}.sculpture-coin{transform:rotateY(-25deg) rotateX(9deg)}.sculpture-ring{transform:rotateX(65deg)}.ring-two{transform:rotateY(67deg)}.sculpture-satellite,.orbit-satellite,.hero-art:before{display:none}}
