/* Ritualic · Círculo — lunas, panel de Mi cuenta y página del programa */
.rcl,.rcl-acc{--l:var(--lav,#c8a6f5);--a:var(--amber,#d9a45b);--g:#e2a947;--ln:rgba(200,166,245,.28);color:var(--silver,#e6dff0)}
/* ---------- las lunas ---------- */
.rcl-moon{display:block;width:100%;height:auto;overflow:visible}
.rcl-moon .rcl-halo{transform-box:fill-box;transform-origin:center;animation:rclPulse 4.5s ease-in-out infinite}
.rcl-moon .rcl-orbit{transform-box:fill-box;transform-origin:center;animation:rclSpin 70s linear infinite}
.rcl-moon .rcl-tw circle{animation:rclTw 3.4s ease-in-out infinite}.rcl-moon .rcl-tw circle:nth-child(2n){animation-delay:-1.1s}.rcl-moon .rcl-tw circle:nth-child(3n){animation-delay:-2.2s}
.rcl-moon .rcl-rays{transform-box:fill-box;transform-origin:center;animation:rclSpin 45s linear infinite}
.rcl-moon .rcl-corona{animation:rclPulse 3.2s ease-in-out infinite}.rcl-moon .rcl-flare{transform-box:fill-box;transform-origin:center;animation:rclFlare 3.6s ease-in-out infinite}
.rcl-moon.is-locked{filter:grayscale(1) brightness(.62);opacity:.5}.rcl-moon.is-locked *{animation-play-state:paused}
@keyframes rclPulse{0%,100%{opacity:.72}50%{opacity:1}}@keyframes rclSpin{to{transform:rotate(360deg)}}@keyframes rclTw{0%,100%{opacity:.25;transform:scale(.7)}50%{opacity:1;transform:scale(1.3)}}@keyframes rclFlare{0%,100%{transform:scale(.8) rotate(0)}50%{transform:scale(1.25) rotate(18deg)}}
.rcl-flash{margin:0 0 1.2rem;padding:.8rem 1.1rem;border-radius:16px;background:rgba(127,216,180,.12);box-shadow:inset 0 0 0 1.5px #7fd8b4}
/* ---------- panel de Mi cuenta ---------- */
.rcl-acc{position:relative;display:grid;grid-template-columns:auto minmax(0,1fr);gap:clamp(1.2rem,3.4vw,3.4rem);align-items:center;margin:1.8rem 0;padding:clamp(1.4rem,3vw,2.6rem);border-radius:34px;overflow:hidden;background:linear-gradient(150deg,rgba(255,255,255,.075),rgba(255,255,255,.02));box-shadow:inset 0 0 0 1px var(--ln),0 40px 80px -50px #000}
.rcl-acc__bg{position:absolute;inset:0;pointer-events:none;background:radial-gradient(60% 90% at 12% 50%,rgba(139,61,219,.40),transparent 70%)}
.rcl-acc[data-rank="creciente"] .rcl-acc__bg{background:radial-gradient(60% 90% at 12% 50%,rgba(226,169,71,.26),transparent 70%),radial-gradient(40% 70% at 95% 10%,rgba(139,61,219,.25),transparent 70%)}
.rcl-acc[data-rank="llena"] .rcl-acc__bg{background:radial-gradient(60% 90% at 12% 50%,rgba(255,217,138,.34),transparent 70%),radial-gradient(40% 70% at 95% 10%,rgba(139,61,219,.25),transparent 70%)}
.rcl-acc[data-rank="eclipse"] .rcl-acc__bg{background:radial-gradient(60% 90% at 12% 50%,rgba(139,61,219,.55),rgba(226,169,71,.14) 55%,transparent 75%)}
.rcl-acc[data-rank="eclipse"]{box-shadow:inset 0 0 0 1.5px rgba(226,169,71,.55),0 40px 90px -45px rgba(226,169,71,.4)}
.rcl-acc__moon{position:relative;width:clamp(120px,19vw,210px)}
.rcl-acc__main{position:relative;min-width:0}
.rcl-k{margin:0 0 .5rem;font:700 .78rem/1 var(--sans,system-ui,sans-serif);letter-spacing:.24em;text-transform:uppercase;color:var(--l)}
.rcl-acc__t{--fs:clamp(2.8rem,6.4vw,5.4rem);margin:0;font:700 var(--fs)/.88 var(--disp,"Big Shoulders",Impact,sans-serif);text-transform:uppercase;color:#fff}
.rcl-acc[data-rank="llena"] .rcl-acc__t,.rcl-acc[data-rank="eclipse"] .rcl-acc__t{background:linear-gradient(100deg,#fff1b8,#e2a947 55%,#fff1b8);-webkit-background-clip:text;background-clip:text;color:transparent}
.rcl-acc__sub{margin:.55rem 0 1.2rem;font:italic 400 clamp(1.05rem,1.6vw,1.3rem)/1.3 var(--serif,Georgia,serif);color:var(--l)}
.rcl-prog{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.8rem;max-width:34rem}
.rcl-prog__m{width:2.4rem}.rcl-prog__bar{position:relative;height:.7rem;border-radius:99px;background:rgba(255,255,255,.12);overflow:hidden;box-shadow:inset 0 0 0 1px rgba(200,166,245,.25)}
.rcl-prog__bar i{position:absolute;inset:0 auto 0 0;width:0;border-radius:99px;background:linear-gradient(90deg,#8b3ddb,var(--l),#fff1b8);box-shadow:0 0 14px rgba(226,169,71,.7);transition:width 1.5s cubic-bezier(.16,1,.3,1) .25s}
.rcl-in.is-in .rcl-prog__bar i{width:calc(var(--p) * 100%)}
.rcl-prog__bar i::after{content:"";position:absolute;inset:0;background:linear-gradient(100deg,transparent 35%,rgba(255,255,255,.55) 50%,transparent 65%);transform:translateX(-100%);animation:rclSh 3.4s ease-in-out 1.8s infinite}@keyframes rclSh{60%,100%{transform:translateX(100%)}}
.rcl-prog__t{margin:.7rem 0 0;font:400 1rem/1.4 var(--sans,system-ui,sans-serif);color:var(--muted,#b8a9cf)}.rcl-prog__t b{color:#fff}.rcl-prog__t--top{color:var(--g);font-weight:700}
.rcl-perks{list-style:none;margin:1.3rem 0 0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem 1.4rem}
.rcl-perks li{position:relative;padding-left:1.5rem;font:700 .98rem/1.35 var(--sans,system-ui,sans-serif);color:var(--silver,#e6dff0)}.rcl-perks li::before{content:"✦";position:absolute;left:0;top:0;color:var(--g)}
.rcl-acc__foot{display:flex;flex-wrap:wrap;align-items:center;gap:.9rem 1.6rem;margin-top:1.5rem;padding-top:1.2rem;border-top:1px dashed rgba(200,166,245,.28)}.rcl-acc__foot .tlink{margin-left:auto}
.rcl-opt{margin:0}.rcl-sw{display:inline-flex;align-items:center;gap:.8rem;cursor:pointer;font:400 .95rem/1.3 var(--sans,system-ui,sans-serif);color:var(--silver,#e6dff0)}
.rcl-sw input{position:absolute;opacity:0;width:1px;height:1px}.rcl-sw__i{position:relative;flex:none;width:2.9rem;height:1.6rem;border-radius:99px;background:rgba(255,255,255,.16);box-shadow:inset 0 0 0 1.5px var(--ln);transition:background .35s}
.rcl-sw__i::after{content:"";position:absolute;left:.2rem;top:.2rem;width:1.2rem;height:1.2rem;border-radius:50%;background:#fff;transition:transform .35s cubic-bezier(.16,1,.3,1)}
.rcl-sw input:checked+.rcl-sw__i{background:linear-gradient(90deg,#8b3ddb,var(--l))}.rcl-sw input:checked+.rcl-sw__i::after{transform:translateX(1.3rem)}.rcl-sw input:focus-visible+.rcl-sw__i{outline:3px solid var(--a);outline-offset:3px}
.rcl-btn{padding:.6rem 1.2rem;border-radius:99px;border:0;background:var(--l);color:var(--ink,#100817);font-weight:700;cursor:pointer}
/* ---------- página del Círculo ---------- */
.rcl-page{--w:min(1240px,calc(100vw - 2 * var(--pad,1.25rem)));width:var(--w);max-width:none;margin:0;box-sizing:border-box}
.rcl-hero{max-width:46rem;margin:0 0 clamp(2.4rem,5vw,4rem)}
.rcl-lede{margin:.4rem 0 1.6rem;font:italic 400 clamp(1.5rem,3.2vw,2.5rem)/1.18 var(--serif,Georgia,serif);color:var(--silver,#e6dff0)}.rcl-lede em{color:var(--l)}
.rcl-hero__cta{display:flex;flex-wrap:wrap;align-items:center;gap:1rem 1.6rem}.rcl-you{margin:0;color:var(--muted,#b8a9cf)}.rcl-you b{color:#fff}
.rcl-path{list-style:none;margin:0 0 clamp(3rem,6vw,5rem);padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1.1rem;position:relative}
.rcl-path::before{content:"";position:absolute;left:12.5%;right:12.5%;top:calc(clamp(110px,11vw,150px) / 2 + 1.2rem);height:0;border-top:2px dotted rgba(226,169,71,.5);z-index:0}
.rcl-step{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;text-align:center;padding:1.2rem 1.1rem 1.6rem;border-radius:30px;background:linear-gradient(170deg,rgba(255,255,255,.07),rgba(255,255,255,.015));box-shadow:inset 0 0 0 1px var(--ln)}
.rcl-step__moon{position:relative;width:clamp(110px,11vw,150px);margin-bottom:.6rem}
.rcl-step__from{margin:0;font:700 .72rem/1 var(--sans,system-ui,sans-serif);letter-spacing:.24em;text-transform:uppercase;color:var(--g)}
.rcl-step__t{--fs:clamp(2rem,3.2vw,2.8rem);margin:.45rem 0 .2rem;font:700 var(--fs)/.92 var(--disp,Impact,sans-serif);text-transform:uppercase;color:#fff}
.rcl-step__tag{margin:0 0 1rem;font:italic 400 1.05rem/1.3 var(--serif,Georgia,serif);color:var(--l)}
.rcl-step .rcl-perks{grid-template-columns:1fr;margin:0;text-align:left;gap:.5rem}.rcl-step .rcl-perks li{font-size:.92rem;font-weight:600}
.rcl-step.is-current{box-shadow:inset 0 0 0 2px var(--g),0 30px 60px -34px rgba(226,169,71,.55);background:linear-gradient(170deg,rgba(226,169,71,.14),rgba(255,255,255,.02))}
.rcl-here{position:absolute;left:50%;bottom:-.5rem;transform:translateX(-50%);white-space:nowrap;padding:.32rem .8rem;border-radius:99px;font:700 .68rem/1 var(--sans,system-ui,sans-serif);letter-spacing:.18em;text-transform:uppercase;color:#1d0f2e;background:linear-gradient(100deg,#e2a947,#fff1b8 50%,#e2a947)}
.rcl-step--eclipse{box-shadow:inset 0 0 0 1.5px rgba(226,169,71,.55)}
.js .rcl-in:not(.is-in) .rcl-step{opacity:0;transform:translateY(28px)}.js .rcl-step{transition:opacity .9s ease,transform 1.1s cubic-bezier(.16,1,.3,1);transition-delay:calc(var(--i,0) * .13s)}
.rcl-how{margin:0 0 clamp(3rem,6vw,5rem)}.rcl-how h2,.rcl-faq h2{--fs:clamp(2.6rem,5.4vw,4.6rem);margin:0 0 1.4rem;font:700 var(--fs)/.9 var(--disp,Impact,sans-serif);text-transform:uppercase;color:var(--silver,#e6dff0)}
.rcl-how__l{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.2rem}.rcl-how__l li{display:flex;flex-direction:column;gap:.7rem;padding-top:1rem;border-top:1px solid var(--ln);font:400 1.15rem/1.4 var(--sans,system-ui,sans-serif)}
.rcl-how__l b{font:700 .8rem/1 var(--sans,system-ui,sans-serif);letter-spacing:.22em;color:var(--g)}.rcl-note{max-width:44rem;margin:1.4rem 0 0;color:var(--muted,#b8a9cf)}
.rcl-faq{max-width:50rem;margin:0 0 2.4rem}.rcl-faq details{border-top:1px solid var(--ln);padding:1rem 0}.rcl-faq details:last-of-type{border-bottom:1px solid var(--ln)}
.rcl-faq summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:1rem;font:700 1.15rem/1.3 var(--sans,system-ui,sans-serif)}.rcl-faq summary::-webkit-details-marker{display:none}.rcl-faq summary::after{content:"+";flex:none;color:var(--g);font-size:1.5rem;line-height:1;transition:transform .3s}
.rcl-faq details[open] summary::after{transform:rotate(45deg)}.rcl-faq p{margin:.8rem 0 0;color:var(--muted,#b8a9cf);max-width:42rem}.rcl-disc{max-width:44rem;font-size:.88rem;color:var(--muted,#b8a9cf)}.rcl-disc a{color:var(--l);text-decoration:underline}
/* ficha de producto reservado */
.rcl-lock{margin:1rem 0;padding:.9rem 1.2rem;border-radius:18px;background:rgba(226,169,71,.12);box-shadow:inset 0 0 0 1.5px rgba(226,169,71,.6);font-size:.95rem;line-height:1.45}.rcl-lock a{text-decoration:underline}.rcl-lock--ok{background:rgba(127,216,180,.12);box-shadow:inset 0 0 0 1.5px #7fd8b4}
.rcl-chk{margin:.4rem 0 1rem!important}
@media (max-width:980px){.rcl-path{grid-template-columns:repeat(2,minmax(0,1fr))}.rcl-path::before{display:none}}
@media (max-width:680px){
 .rcl-acc{grid-template-columns:1fr;text-align:left}.rcl-acc__moon{width:min(54vw,190px);margin:0 auto}.rcl-perks{grid-template-columns:1fr}.rcl-acc__foot .tlink{margin-left:0}
 .rcl-path{grid-template-columns:1fr}.rcl-step{display:grid;grid-template-columns:96px minmax(0,1fr);column-gap:1rem;text-align:left;align-items:start;padding:1.1rem 1.1rem 1.4rem}
 .rcl-step__moon{grid-row:1 / span 4;width:96px;margin:0}.rcl-step .rcl-perks{grid-column:1 / -1;margin-top:1rem}.rcl-here{left:48px;bottom:-.4rem}
 .rcl-how__l{grid-template-columns:1fr}
}
@media (prefers-reduced-motion:reduce){.rcl-moon *,.rcl-prog__bar i::after{animation:none!important}.rcl-prog__bar i{transition:none}.js .rcl-step{transition:none}}
/* el tema pinta de lila los enlaces dentro de una página: el botón lila necesita su texto oscuro */
.rcl a.btn,.rcl a.btn:hover{text-decoration:none}.rcl a.btn--fill{color:var(--ink,#100817)}.rcl a.btn--fill:hover{color:var(--lav,#c8a6f5)}
.rcl-step.is-current .rcl-step__moon{margin-bottom:1.5rem}
.rcl-moon.is-locked{filter:grayscale(.9) brightness(.9);opacity:.62}
.rcl-perks,.rcl-perks li{list-style:none}.rcl-perks li::marker{content:""}.rcl-how__l,.rcl-how__l li,.rcl-path,.rcl-path>li{list-style:none}.rcl-how__l li::marker,.rcl-path>li::marker{content:""}
