/* plans.css — Take 05 monthly plans (term toggle with 3/6/12-month savings) + the checkout dialog */
.dn-x .terms-row{display:flex;flex-wrap:wrap;align-items:center;gap:14px 24px;margin:0 0 44px}
.dn-x .terms{display:inline-flex;flex-wrap:wrap;border:1px solid var(--line);border-radius:999px;padding:4px;background:#0f0f0e;gap:2px}
.dn-x .terms button{position:relative;background:none;border:0;color:var(--mut);font:600 14px/1 'Inter Tight',sans-serif;padding:12px 18px;border-radius:999px;cursor:pointer;display:inline-flex;align-items:center;gap:8px;transition:background .25s,color .25s}
.dn-x .terms button em{font:700 10.5px/1 var(--fm);letter-spacing:.04em;color:var(--red);background:rgba(225,37,27,.12);padding:4px 6px;border-radius:999px}
.dn-x .terms button i{position:absolute;top:-11px;right:6px;font:700 9px/1 var(--fm);letter-spacing:.12em;text-transform:uppercase;font-style:normal;background:var(--red);color:#fff;padding:4px 7px;border-radius:2px;white-space:nowrap}
.dn-x .terms button[aria-checked=true]{background:#fff;color:#111}
.dn-x .terms button[aria-checked=true] em{background:var(--red);color:#fff}
.dn-x .terms-save{color:var(--mut);font-size:15px}.dn-x .terms-save b{color:#fff}
.dn-x .plan-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;align-items:stretch}
.dn-x .plan{position:relative;border:1px solid var(--line);background:#0d0d0c;padding:clamp(26px,2.6vw,36px);display:flex;flex-direction:column;gap:10px;border-radius:2px;transition:transform .4s cubic-bezier(.16,1,.3,1),border-color .3s}
.dn-x .plan:hover{transform:translateY(-4px);border-color:#3a3835}
.dn-x .plan.featured{border-color:var(--red);background:linear-gradient(180deg,#1b0907,#0d0d0c 58%);box-shadow:0 30px 80px -40px rgba(225,37,27,.55)}
.dn-x .plan .badge{position:absolute;top:-13px;left:clamp(26px,2.6vw,36px);background:var(--red);color:#fff;font:700 11px/1 var(--fm);letter-spacing:.16em;text-transform:uppercase;padding:8px 12px;border-radius:2px}
.dn-x .plan-tag{font:600 11px/1 var(--fm);letter-spacing:.18em;text-transform:uppercase;color:var(--red)}
.dn-x .plan h3{font:800 clamp(36px,3.4vw,52px)/1 var(--fd);letter-spacing:-.035em;color:#fff}
.dn-x .plan-spec{color:#d4d1ca}.dn-x .plan-spec b{color:#fff;font-size:20px}
.dn-x .plan-price{margin-top:12px;display:flex;align-items:baseline;flex-wrap:wrap;gap:4px 10px}
.dn-x .plan-price s{font:600 20px/1 var(--fd);color:#6f6c66;text-decoration-color:var(--red);text-decoration-thickness:2px;width:100%}
.dn-x .plan-price .amt{display:inline-block;font:800 clamp(40px,3.8vw,58px)/1 var(--fd);letter-spacing:-.03em;color:#fff}
.dn-x .plan-price .per{color:var(--mut)}
.dn-x .plan-pv{display:inline-block;font:600 15px/1 'Inter Tight',sans-serif;color:#fff}
.dn-x .plan-save{align-self:flex-start;font:700 11px/1 var(--fm);letter-spacing:.1em;text-transform:uppercase;color:#fff;background:var(--red);padding:7px 10px;border-radius:2px}
.dn-x .plan-total{font:500 12px/1.4 var(--fm);letter-spacing:.04em;color:var(--mut)}
.dn-x .plan-pitch{margin:8px 0 12px;color:#cfcdc7;flex:1;line-height:1.55}
.dn-x .plan-cta{display:flex;justify-content:space-between;align-items:center;gap:20px;background:#fff;color:#111;border:0;cursor:pointer;font:600 16px/1 'Inter Tight',sans-serif;padding:16px 18px;border-radius:2px;transition:background .2s,color .2s}
.dn-x .plan.featured .plan-cta{background:var(--red);color:#fff}
.dn-x .plan-cta:hover{background:var(--red);color:#fff}
.dn-x .plan.featured .plan-cta:hover{background:#fff;color:#111}
.dn-x .plan-foot{margin-top:22px;display:grid;grid-template-columns:1fr;gap:16px}
.dn-x .plans-vs{font:700 clamp(20px,1.8vw,26px)/1.3 var(--fd);color:#cfcdc7;letter-spacing:-.01em}.dn-x .plans-vs b{color:#fff}
.dn-x .pay-strip{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.dn-x .pay-strip div{border:1px solid var(--line);padding:18px 22px;display:flex;flex-direction:column;gap:4px}
.dn-x .pay-strip b{font:700 18px/1.2 var(--fd);color:#fff}.dn-x .pay-strip span{color:var(--mut);font-size:14px}
.dn-x .pay-note{margin-top:22px;border:1px solid var(--line);border-left:3px solid var(--red);padding:16px 20px;color:#cfcdc7}.dn-x .pay-note b{color:#fff}
/* checkout dialog */
.co-dialog{width:min(600px,calc(100vw - 24px));padding:34px clamp(20px,4vw,40px)}
.co-dialog .co-top{display:flex;align-items:center;gap:14px;padding-bottom:18px;border-bottom:1px solid #2a2a27;margin-bottom:22px}
.co-dialog .co-top b{display:block;font:800 17px/1 Cabinet,sans-serif;letter-spacing:.02em}.co-dialog .co-top small{font:500 10px/1 ui-monospace,Consolas,monospace;letter-spacing:.18em;color:var(--grey)}
.co-dialog .lock{width:38px;height:38px;border:1px solid #2a2a27;border-radius:50%;display:grid;place-items:center;color:var(--red)}
.co-dialog h2{font-size:clamp(30px,4vw,40px);margin:0 0 6px}
.co-sub{color:var(--grey);margin:0 0 18px;font-size:15px}
.co-sum{border:1px solid #2a2a27;border-left:3px solid var(--red);padding:16px 18px;margin:0 0 14px;display:grid;grid-template-columns:1fr auto;gap:5px 16px}
.co-sum .s-name{font:800 21px/1.1 Cabinet,sans-serif}.co-sum .s-meta{color:var(--grey);font-size:14px;grid-column:1}.co-sum .s-meta s{color:#6f6c66}
.co-sum .s-amt{grid-column:2;grid-row:1/3;align-self:center;font:800 28px/1 Cabinet,sans-serif}
.co-sum .s-save{grid-column:1/-1;font:600 12px/1.3 ui-monospace,Consolas,monospace;letter-spacing:.04em;color:#ff8a82}.co-sum .s-save.muted{color:var(--grey)}
.co-terms{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 20px}
.co-terms button{background:#141413;border:1px solid #2a2a27;color:#cfcdc7;border-radius:999px;padding:9px 13px;font:600 13px/1 'Inter Tight',sans-serif;cursor:pointer;display:inline-flex;gap:6px;align-items:center}
.co-terms button em{font-style:normal;color:var(--red);font:700 10.5px/1 ui-monospace,monospace}
.co-terms button[aria-checked=true]{background:#fff;color:#111;border-color:#fff}
#co-form>label,#co-form .co-row>label{font:500 11px/1 ui-monospace,Consolas,monospace;letter-spacing:.12em;text-transform:uppercase;color:var(--grey);margin-bottom:14px}
#co-form input[name=name],#co-form input[name=email],#co-form input[name=brand]{font:400 16px/1.4 'Inter Tight',sans-serif;padding:13px 14px;text-transform:none;letter-spacing:0}
.co-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.methods{border:0;padding:0;margin:4px 0 18px;display:flex;flex-direction:column;gap:10px}
.methods legend{font:500 11px/1 ui-monospace,Consolas,monospace;letter-spacing:.12em;text-transform:uppercase;color:var(--grey);margin-bottom:10px;padding:0}
#co-form .method{flex-direction:row;align-items:center;gap:14px;border:1px solid #2a2a27;border-radius:4px;padding:15px;cursor:pointer;font:400 15px/1.4 'Inter Tight',sans-serif;color:#fff;transition:border-color .2s,background .2s;margin:0}
#co-form .method:has(input:checked){border-color:var(--red);background:#170908}
#co-form .method input{accent-color:#e1251b;width:18px;height:18px;margin:0;flex:none;padding:0}
.m-ic{width:36px;height:36px;border:1px solid #2a2a27;border-radius:6px;display:grid;place-items:center;font-size:16px;flex:none}
.m-tx{display:flex;flex-direction:column;gap:3px}.m-tx b{font-weight:700}.m-tx small{color:var(--grey);font-size:13px}
.co-pay{width:100%;background:var(--red);color:#fff;border:0;border-radius:2px;padding:17px;font:700 16px/1 'Inter Tight',sans-serif;cursor:pointer;transition:background .2s}
.co-pay:hover{background:#f2392e}.co-pay[disabled]{opacity:.6;cursor:wait}
.co-msg{min-height:20px;margin:12px 0 0;color:#ffb4ad;font-size:14px}
.co-fine{color:#8a8780;font-size:13px;margin:8px 0 0;line-height:1.5}.co-fine a{color:var(--grey)}
.co-done h2{font-size:32px}.co-done p{color:#cfcdc7}
@media (max-width:900px){.dn-x .plan-grid{grid-template-columns:1fr}.dn-x .plan.featured{order:-1}.dn-x .pay-strip{grid-template-columns:1fr}.co-row{grid-template-columns:1fr}.dn-x .terms button{padding:11px 12px;font-size:13px}}
@media (max-width:600px){.dn-x .terms{display:grid;grid-template-columns:1fr 1fr;border-radius:14px;width:100%;gap:4px}.dn-x .terms button{justify-content:center;border-radius:10px;padding:12px 8px;flex-wrap:wrap}.dn-x .terms button i{position:static;order:3;width:100%;text-align:center;padding:3px 0;margin-top:2px}}
