/* Changemaker Plans — accessible, self-contained editorial 3D hero. */
body.cm-pricing .cm-plans-hero {
  position:relative;isolation:isolate;overflow:hidden;min-height:700px;padding:150px 0 72px;
  background:radial-gradient(ellipse at 73% 44%,rgba(37,122,92,.32),transparent 43%),
             radial-gradient(ellipse at 95% 19%,rgba(115,77,180,.22),transparent 44%),
             linear-gradient(120deg,#07110e 3%,#0d1918 52%,#0a1019 100%);
}
body.cm-pricing .cm-plans-hero:before{
  content:"";position:absolute;inset:0;z-index:0;filter:none;
  background:radial-gradient(circle at 70% 70%,rgba(255,204,129,.095),transparent 38%),
             linear-gradient(180deg,rgba(0,0,0,.02),rgba(0,0,0,.18));
}
body.cm-pricing .cm-plans-hero:after{
  content:"";position:absolute;inset:0;z-index:0;pointer-events:none;
  background-image:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),
                   linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);
  background-size:80px 80px;mask-image:linear-gradient(90deg,transparent 35%,black 100%);opacity:.48;
}
.cm-pricing .cm-plans-hero-grid {
  position:relative;z-index:2;display:grid;grid-template-columns:minmax(0,.93fr) minmax(0,1.07fr);
  gap:clamp(12px,3vw,46px);align-items:center;min-height:550px;
}
.cm-pricing .cm-plans-hero-copy{position:relative;z-index:3;min-width:0;padding:15px 0 36px}
.cm-pricing .cm-plans-hero-copy .eyebrow{color:#9af6c7;letter-spacing:.22em}
.cm-pricing .cm-plans-hero-copy h1{
  display:block;max-width:650px;margin:24px 0 30px;font-size:clamp(56px,5.35vw,89px);
  line-height:.99;letter-spacing:-.064em;text-wrap:balance;
}
.cm-pricing .cm-plans-hero-copy h1 .text-gradient{
  color:#b6f6c8;background:linear-gradient(104deg,#ccffd9 0%,#73edb2 65%,#dac1ff 100%);
  background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent;
}
.cm-pricing .cm-plans-hero-copy p {
  color:#c5d8cf;max-width:505px;font-size:clamp(15px,1.1vw,18px);line-height:1.82;margin:0 0 28px;
}
.cm-pricing .cm-plans-hero-pills{display:flex;flex-wrap:wrap;gap:12px}
.cm-pricing .cm-plans-hero-pills .page-chip{
  display:inline-flex;align-items:center;padding:12px 20px;
  border:1px solid rgba(180,254,218,.27);border-radius:999px;
  color:#e4fff1;background:rgba(152,255,206,.075);font-size:11px;
  font-family:var(--font-mono,monospace);letter-spacing:.075em;
  backdrop-filter:blur(12px);
}
.cm-pricing .cm-plans-hero-visual {
  position:relative;min-width:0;height:clamp(480px,47vw,650px);
  margin:-10px -7% -30px -7%;isolation:isolate;pointer-events:none;
}
.cm-pricing .cm-plans-hero-glow{
  position:absolute;inset:16% 4% 12%;border-radius:50%;
  background:radial-gradient(ellipse at 40% 62%,rgba(255,162,188,.18),transparent 46%),
             radial-gradient(ellipse at 72% 38%,rgba(118,245,190,.15),transparent 58%);
  filter:blur(26px);pointer-events:none;z-index:-1;
}
.cm-pricing .cm-plans-hero-visual canvas{
  width:100%;height:100%;display:block;position:absolute;inset:0;
  filter:drop-shadow(0 24px 52px rgba(0,0,0,.12));
}
.cm-pricing .cm-plans-hero-fallback{position:absolute;inset:0;display:grid;place-items:center}
.cm-pricing .cm-plans-fallback-pig{
  position:absolute;width:min(52%,290px);aspect-ratio:1;left:12%;top:26%;
  display:grid;place-items:center;border-radius:50%;
  background:radial-gradient(circle at 31% 26%,#ffe6ed,#f9a7c5 67%,#a35483);
  box-shadow:inset -24px -33px 50px rgba(96,37,85,.27),0 38px 90px #0008;
  transform:rotate(-9deg);
}
.cm-pricing .cm-plans-fallback-pig span{font-size:clamp(90px,13vw,156px);filter:drop-shadow(0 4px 12px #7e315655)}
.cm-pricing .cm-plans-fallback-coin{
  position:absolute;display:grid;place-items:center;width:80px;aspect-ratio:1;border-radius:50%;
  border:9px solid #f7bb54;background:radial-gradient(circle at 32% 25%,#fff2b3,#d18a20);
  color:#fff3b9;font-size:36px;box-shadow:inset 0 0 10px #f6cc65,0 16px 45px #0008;
}
.cm-pricing .cm-plans-fallback-coin--a{left:18%;top:11%;transform:rotate(-24deg)}
.cm-pricing .cm-plans-fallback-coin--b{left:52%;top:13%;transform:rotate(28deg) scale(.72)}
.cm-pricing .cm-plans-fallback-device {
  position:absolute;right:9%;bottom:7%;width:25%;height:54%;border:8px solid #424e54;border-radius:23px;
  background:linear-gradient(145deg,#123b30,#071310);box-shadow:0 29px 65px #000a;
  color:#f5fff8;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;
  transform:rotate(11deg);font-family:var(--font-display,system-ui);font-size:clamp(10px,1.2vw,16px);
}
.cm-pricing .cm-plans-fallback-mark{display:grid;place-items:center;background:#26dba0;
  color:#092018;border-radius:50%;width:42px;height:42px;font-size:30px}
.cm-pricing .cm-plans-fallback-device i{width:70%;height:8px;border-radius:8px;background:#53977b;opacity:.6}
.cm-pricing .cm-plans-hero-visual.is-ready .cm-plans-hero-fallback{display:none}
.cm-pricing .cm-plans-motion-toggle{
  position:absolute;bottom:7px;right:7px;z-index:4;border:1px solid #d0ffe347;background:#142c27c9;
  color:#d1ffe9;width:43px;height:43px;border-radius:999px;display:grid;place-items:center;
  font-size:14px;cursor:pointer;backdrop-filter:blur(18px);
  transition:background .2s,border-color .2s;
}
.cm-pricing .cm-plans-motion-toggle:hover{background:#255043;border-color:#d0ffe37a}
.cm-pricing .cm-plans-motion-toggle:focus-visible{outline:3px solid #b8ffe1;outline-offset:4px}
.cm-pricing .cm-plans-motion-toggle[hidden]{display:none!important}
.cm-pricing #comparar-planes{position:relative;z-index:1;scroll-margin-top:100px}
@media(max-width:1100px){
  .cm-pricing .cm-plans-hero-copy h1{font-size:clamp(49px,5.9vw,74px)}
  .cm-pricing .cm-plans-hero-visual{height:540px;margin:0 -12% -15px}
}
@media(max-width:800px){
  body.cm-pricing .cm-plans-hero{min-height:auto;padding:132px 0 38px}
  .cm-pricing .cm-plans-hero-grid{display:flex;flex-direction:column;align-items:stretch;gap:0;min-height:0}
  .cm-pricing .cm-plans-hero-copy{padding:0;max-width:710px}
  .cm-pricing .cm-plans-hero-copy h1{font-size:clamp(50px,10vw,75px);max-width:680px;margin:18px 0 20px}
  .cm-pricing .cm-plans-hero-copy p{font-size:15px;line-height:1.7;max-width:660px}
  .cm-pricing .cm-plans-hero-visual{height:clamp(350px,67vw,520px);margin:0 -5% -25px}
  .cm-pricing .cm-plans-motion-toggle{right:10px;bottom:12px}
}
@media(max-width:480px){
  body.cm-pricing .cm-plans-hero{padding-top:115px;padding-bottom:22px}
  .cm-pricing .cm-plans-hero-copy h1{font-size:clamp(46px,11vw,58px);line-height:1.025}
  .cm-pricing .cm-plans-hero-copy p{font-size:13px;margin-bottom:18px}
  .cm-pricing .cm-plans-hero-pills .page-chip{padding:9px 14px;font-size:10px}
  .cm-pricing .cm-plans-hero-visual{height:365px;margin:3px -8% -15px}
}
@media(prefers-reduced-motion:reduce){
 .cm-pricing .cm-plans-motion-toggle{display:none!important}
 .cm-pricing .cm-plans-hero-pills *{transition:none!important}
}
