/* Bloco Pacotes */
.plans { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; margin-top: 64px; align-items: stretch; }
.plan { position: relative; display: flex; flex-direction: column; gap: 22px; border-radius: var(--r); padding: clamp(24px, 2.4vw, 32px); background: var(--bg-2); box-shadow: 0 0 0 1px var(--line) inset; }
.plan-scope { margin: 0 0 -10px; font: 500 .76rem/1.3 var(--mono); letter-spacing: .14em; text-transform: uppercase; color: var(--green-text); }
.plan-name { font-family: var(--display); font-weight: 800; letter-spacing: -0.018em; font-size: 1.6rem; }
.plan-for { color: var(--muted); min-height: 3.2em; }
.price { display: grid; gap: 4px; padding-block: 18px; border-block: 1px solid var(--line); }
.price .from { text-wrap: balance; font-family: var(--mono); font-size: .78rem; letter-spacing: .14em; text-transform: uppercase; color: var(--dim); }
.price .amt { font-family: var(--display); font-weight: 850; letter-spacing: -0.03em; line-height: 1; font-size: clamp(2.1rem, 1.6rem + 1vw, 2.5rem); font-variant-numeric: tabular-nums; }
.price .amt small { font-family: var(--font); font-weight: 500; font-size: 1rem; letter-spacing: 0; color: var(--muted); margin-left: 4px; }
.price .amt.amt-text { font-size: clamp(1.6rem, 1.3rem + .7vw, 2rem); letter-spacing: -0.02em; line-height: 1.05; color: var(--green); }
.incl { list-style: none; margin: 0; padding: 0; display: grid; gap: 12px; flex: 1; }
.incl li { display: grid; grid-template-columns: 22px minmax(0, 1fr); gap: 10px; align-items: start; color: var(--muted); }
.incl li .i { width: 18px; height: 18px; margin-top: 3px; color: var(--green-text); }
.incl li strong { color: var(--ink); font-weight: 550; }
.plan .btn { width: 100%; }
.plan-featured { border: 1px solid transparent; box-shadow: 0 40px 90px -40px rgb(138 60 240 / .7); background: linear-gradient(170deg, #5A23C8, #261D57 52%) padding-box, linear-gradient(150deg, var(--purple), rgb(255 255 255 / .06) 45%, var(--green)) border-box; }
.plan-custom { background: radial-gradient(90% 70% at 85% 0%, rgb(47 91 234 / .35), transparent 70%), linear-gradient(170deg, #142B63, #0B1838 62%); box-shadow: 0 0 0 1px rgb(255 255 255 / .1) inset, 0 40px 90px -40px rgb(11 24 56 / .6); }
.plan-tag { position: absolute; top: 20px; right: 20px; padding: 6px 12px; border-radius: 999px; font-size: .8rem; font-weight: 600; background: var(--green); color: var(--on-green); }
.plans-foot { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 14px 32px; margin-top: 24px; }
.plans-note { color: var(--dim); font-size: .94rem; max-width: 70ch; }
.plans-link { font-weight: 500; }
.plans-link a { font-weight: 600; text-underline-offset: 5px; }

@media (max-width: 1199px) { .plans { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 1023px) { .plan-for { min-height: 0; } }
@media (max-width: 639px) { .plans { grid-template-columns: minmax(0, 1fr); } }

/* Ofertas: selo −50%, oferta por plano, bônus, botões de compra e oferta de landing page */
.incl li.incl-bonus { margin: -2px -10px 2px; padding: 9px 10px; border-radius: 12px; color: var(--ink); background: linear-gradient(100deg, rgb(200 212 63 / .28), rgb(200 212 63 / .08)); box-shadow: 0 0 0 1px rgb(200 212 63 / .45) inset; }
.incl li.incl-bonus .i { color: var(--green-text); }
.on-dark .incl li.incl-bonus .i { color: var(--green); }
.lp-offer { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: 22px 40px; margin-top: 24px; padding: clamp(22px, 3vw, 32px) clamp(22px, 3.4vw, 40px); border-radius: var(--r); background: linear-gradient(100deg, #EEF4B6, #FFFFFF 62%); box-shadow: 0 0 0 1px rgb(200 212 63 / .7) inset, 0 24px 60px -36px rgb(92 102 0 / .45); }
.lp-offer-copy { display: grid; gap: 8px; }
.lp-offer-tag { display: inline-flex; align-items: center; gap: 8px; justify-self: start; padding: 6px 12px; border-radius: 999px; background: var(--green); color: var(--on-green); font: 600 .76rem/1 var(--mono); letter-spacing: .12em; text-transform: uppercase; }
.lp-offer-tag .i { width: 14px; height: 14px; }
.lp-offer h3 { font: 800 clamp(1.4rem, 1.1rem + 1.1vw, 1.95rem)/1.1 var(--display); letter-spacing: -0.02em; }
.lp-offer h3 .amt { color: var(--purple); white-space: nowrap; }
.lp-offer p { color: var(--muted); max-width: 68ch; }
.lp-offer .lp-offer-bonus { color: var(--ink); }
.lp-offer-cta { display: grid; justify-items: center; gap: 4px; }
@media (max-width: 760px) { .lp-offer { grid-template-columns: minmax(0, 1fr); } .lp-offer-cta { justify-items: stretch; } .lp-offer-cta .btn { width: 100%; } .lp-offer-cta .text-link { justify-self: center; } }
.plan-cta { display: grid; gap: 6px; }
.deal-pill { flex: none; display: inline-flex; align-items: center; padding: 5px 9px; border-radius: 999px; background: var(--purple); color: #fff; font: 700 .78rem/1 var(--mono); letter-spacing: .02em; }
.plan-deal { display: flex; align-items: center; gap: 10px; margin: -10px 0 0; padding: 9px 12px; border-radius: 12px; font-size: .92rem; color: var(--ink); background: rgb(122 46 230 / .08); box-shadow: 0 0 0 1px rgb(122 46 230 / .3) inset; }
.plan-deal b, .plan-deal strong { font-variant-numeric: tabular-nums; white-space: nowrap; }
.on-dark .plan-deal { background: rgb(255 255 255 / .1); box-shadow: 0 0 0 1px rgb(255 255 255 / .22) inset; }
.on-dark .plan-deal .deal-pill { background: var(--green); color: var(--on-green); }
.pk-offer { display: inline-flex; align-items: center; gap: 12px; justify-self: start; margin-top: 6px; padding: 10px 16px 10px 10px; border-radius: 999px; background: rgb(122 46 230 / .08); box-shadow: 0 0 0 1px rgb(122 46 230 / .3) inset; color: var(--ink); font-size: .98rem; }
@media (max-width: 560px) { .pk-offer { border-radius: 16px; align-items: flex-start; } }
.plan-alt { justify-self: center; min-height: 44px; font-size: .94rem; text-align: center; }
