.mma-pricing{max-width:var(--mma-gym-maxw);margin:2rem auto;padding:0 1rem;font-family:var(--font-body);color:var(--mma-gym-ink)}
.mma-pricing__title{font-family:var(--font-heading);font-weight:var(--font-heading-weight);margin-bottom:1.25rem}
.mma-sections{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:1.25rem}
.mma-card{background:var(--mma-gym-card);border:1px solid var(--mma-gym-ring);border-radius:var(--mma-gym-radius);box-shadow:0 8px 20px var(--mma-gym-shadow-1),0 2px 6px var(--mma-gym-shadow-2);padding:1rem 1.25rem}
.mma-card__title{margin:0 0 .5rem 0;font-family:var(--font-heading);font-weight:var(--font-heading-weight)}
.mma-list{list-style:none;margin:0;padding:0;display:grid;gap:.75rem}
.mma-list__item{padding:.75rem 0;border-top:1px solid var(--mma-gym-ring)}
.mma-list__item:first-child{border-top:0}
.mma-row{display:grid;grid-template-columns:1fr auto;align-items:baseline;gap:.75rem}
.mma-desc{margin-top:.35rem;color:var(--mma-gym-muted)}
.mma-cta{margin-top:.5rem}
.mma-signup{display:inline-block;text-decoration:none;padding:.5rem .85rem;border-radius:calc(var(--mma-gym-radius)/2);border:1px solid var(--mma-gym-accent);background:transparent;color:var(--mma-gym-accent)}
.mma-signup:hover{background:var(--mma-gym-accent);color:var(--mma-gym-black);box-shadow:0 0 0 6px var(--mma-gym-ring)}
.mma-signup.is-loading{opacity:.65;pointer-events:none}

/* Modal */
.mma-modal{position:fixed;inset:0;background:rgba(0,0,0,.55);display:none;align-items:center;justify-content:center;z-index:9999}
.mma-modal.active{display:flex}
.mma-modal__dialog{background:var(--mma-gym-card);color:var(--mma-gym-ink);border-radius:14px;padding:18px;min-width:320px;max-width:min(560px,90vw);border-left:6px solid var(--mma-gym-accent);box-shadow:0 14px 40px rgba(0,0,0,.35)}
.mma-modal__title{margin:.25rem 0 0 0}
.mma-modal__summary {
    margin: .25rem 0 .75rem 0;
    opacity: .9;
    font-weight: 900;
    color: var(--mma-gym-accent-2)!important;
}
.mma-modal__close{position:absolute;margin-left:-6px;margin-top:-6px;right:clamp(6px,2vw,12px);top:clamp(6px,2vw,10px);border:0;background:transparent;font-size:1.6rem;line-height:1;color:#fff;cursor:pointer}

/* Form Steps */
.mma-form-step{display:none}
.mma-form-step.mma-active-step{display:block}

.mma-fieldpair{display:grid;grid-template-columns:1fr 1fr;gap:.75rem;margin:.25rem 0 .5rem}
.mma-fieldpair input{width:100%;padding:.6rem .7rem;border-radius:10px;border:1px solid #2b2b2e;background:var(--mma-gym-bg);color:var(--mma-gym-ink);font-family:inherit}
#mmaPaymentElement{margin:.5rem 0 0}
.mma-actions{display:flex;gap:.5rem;justify-content:center;margin-top:10px}
.mma-cta{appearance:none;display:inline-flex;align-items:center;justify-content:center;gap:.5rem;;border-radius:10px;background:var(--mma-gym-accent)!important;color:var(--mma-gym-black)!important;font-weight:800;border:0;cursor:pointer;text-transform:uppercase}
.mma-cta.ghost{background:transparent!important;color:var(--mma-gym-ink)!important;border:1px solid #333!important;font-weight:700}
.mma-msg{min-height:1.2em;margin-top:.4rem}
@media(max-width:600px){.mma-fieldpair{grid-template-columns:1fr}}

.mma-flash{outline:2px solid; outline-offset:2px; transition:outline 0.2s ease}
/* Shared spacing */
.mma-cta .mma-next,
.mma-cta .mma-cancel {
  padding: 10px;
}

/* "Next" disabled states: handles buttons, links-with-class, and the HTML :disabled */
.mma-cta .mma-next:disabled,
.mma-cta .mma-next.is-disabled,
.mma-cta .mma-next.disabled {
  background: #ccc;       /* grey background */
  color: #666;            /* dim text */
  cursor: not-allowed;
  pointer-events: none;   /* for <a> tags */
  opacity: 0.7;           /* optional “greyed out” look */
}
/* Add these styles to your CSS */
.mma-row {
    display: grid;
    grid-template-columns: 1fr auto;
    align-items: baseline;
    gap: .75rem;
    margin-bottom: 0.25rem;
}

.mma-label {
    font-size: 1.1rem;
    font-weight: 600;
    color: var(--mma-gym-ink);
}

.mma-price {
    font-size: 1.2rem;
    font-weight: 700;
    color: var(--mma-gym-accent);
    background: var(--mma-gym-accent-light);
    padding: 0.25rem 0.5rem;
    border-radius: 6px;
    min-width: 80px;
    text-align: center;
}

.mma-desc {
    margin-top: 0.5rem;
    color: var(--mma-gym-muted);
    font-size: 0.9rem;
    line-height: 1.4;
}

.mma-modal__summary {
    margin: .5rem 0 1rem 0;
    font-size: 1.1rem;
    font-weight: 700;
    color: var(--mma-gym-accent) !important;
    background: var(--mma-gym-accent-light);
    padding: 0.75rem 1rem;
    border-radius: 8px;
    border-left: 4px solid var(--mma-gym-accent);
}

/* Better visual hierarchy for modal */
.mma-modal__title {
    margin: 0 0 0.5rem 0;
    font-size: 1.5rem;
    color: var(--mma-gym-ink);
}

/* Responsive improvements */
@media (max-width: 480px) {
    .mma-row {
        grid-template-columns: 1fr;
        gap: 0.5rem;
    }
    
    .mma-price {
        justify-self: start;
    }
    
    .mma-fieldpair {
        grid-template-columns: 1fr;
    }
}