.membership-list{display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(min(100%,420px),1fr))}
.membership-card{background:#fff;border:1px solid #dce5ed;border-radius:20px;padding:26px;color:#102b43}
.membership-card header{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;flex-wrap:wrap}
.membership-card header small{font-size:11px;font-weight:700;letter-spacing:1px;color:#5f768b}
.membership-card h3{margin:7px 0 0;font-size:23px}.membership-state{font-size:12px;font-weight:700;background:#edf1f5;color:#526477;padding:8px 12px;border-radius:30px}
.membership-state.is-active{background:#e6f7ee;color:#13734b}.membership-price{font-size:29px;font-weight:750;margin:22px 0 16px}.membership-price span{font-size:14px;font-weight:400;color:#61758a}
.membership-notice{background:#f3f7fa;border-left:3px solid #13a66b;border-radius:8px;padding:14px;line-height:1.6;font-size:14px}
.membership-details{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin:24px 0}.membership-details dt{font-size:12px;color:#61758a;margin-bottom:6px}.membership-details dd{margin:0;font-size:14px;font-weight:600;line-height:1.5;overflow-wrap:anywhere}
.membership-card footer{border-top:1px solid #e7edf2;padding-top:18px;font-size:13px}.membership-card footer p{line-height:1.7}.membership-card footer small{color:#61758a}.membership-retry{margin-top:16px;border:0;border-radius:8px;background:#102b43;color:white;padding:12px 18px;cursor:pointer}
@media(max-width:540px){.membership-card{padding:20px}.membership-details{grid-template-columns:1fr;gap:16px}}
