
.membership-flow { max-width: 1040px; }
.flow-back { margin-bottom: 22px; }
.flow-layout { display: grid; grid-template-columns: minmax(0,1.7fr) minmax(260px,1fr); gap: 22px; margin-top: 24px; align-items: start; }
.flow-layout .entry-wizard__intro { margin: 0; }
.flow-fields { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 18px; }
.flow-field-wide { grid-column: 1 / -1; }
.membership-flow .form-control, .membership-flow .form-select { min-height: 46px; }
.membership-flow .form-select { appearance: auto; }
.flow-help { color: #67576f; font-size: .9rem; margin-top: 6px !important; }
.flow-total { display: flex; justify-content: space-between; gap: 16px; border-top: 1px solid var(--wizard-border); border-bottom: 1px solid var(--wizard-border); padding: 18px 0; margin: 18px 0; }
.flow-total strong { color: var(--wizard-purple-dark); font-size: 1.6rem; }
.flow-summary .btn { width: 100%; padding: 12px 16px; font-weight: 700; margin-top: 16px; }
.flow-summary small { display: block; color: #67576f; line-height: 1.6; }
.flow-check { display: flex !important; gap: 10px; align-items: flex-start; padding: 16px; background: var(--wizard-soft); border-radius: 8px; }
.flow-check input { margin-top: 5px; }
.membership-flow h2 { margin-top: 0; font-size: 1.4rem; }
.flow-cards { display: flex; gap: 10px; flex-wrap: wrap; margin-top: 18px; color: #67576f; font-size: .85rem; }
.flow-cards span { border: 1px solid var(--wizard-border); border-radius: 6px; padding: 5px 9px; }
@media(max-width:760px) { .flow-layout { grid-template-columns: 1fr; } }
@media(max-width:480px) { .flow-fields { grid-template-columns: 1fr; } }

.information-update-notice { background: #fff6d9; border: 1px solid #d9b44a; border-left: 5px solid #651473; border-radius: 8px; color: #42104c; font-size: 1rem; font-weight: 700; line-height: 1.6; margin: 16px 0 20px; padding: 16px 18px; }
