.rmg-shortcode-card,
.rmg-shortcode-card * {
    box-sizing: border-box;
}

.rmg-shortcode-card {
    --rmg-form-primary: #0a234a;
    --rmg-form-accent: #1e6bff;
    width: min(100%, 860px);
    margin: 28px auto;
    padding: clamp(22px, 4vw, 42px);
    border: 1px solid #e5ebf5;
    border-radius: 22px;
    background: #fff;
    box-shadow: 0 18px 55px rgba(15, 43, 85, .10);
    color: #10244a;
    font-family: Poppins, Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

.rmg-shortcode-header {
    display: flex;
    align-items: flex-start;
    gap: 16px;
    margin-bottom: 28px;
}

.rmg-shortcode-logo {
    flex: 0 0 auto;
    display: grid;
    place-items: center;
    width: 62px;
    height: 62px;
    border-radius: 16px;
    background: linear-gradient(145deg, var(--rmg-form-primary), #0d4c95);
    color: #fff;
    font-size: 22px;
    font-weight: 800;
    letter-spacing: -.04em;
    box-shadow: 0 10px 25px rgba(10, 35, 74, .22);
}

.rmg-shortcode-header h2 {
    margin: 0 0 8px;
    color: var(--rmg-form-primary);
    font-size: clamp(24px, 4vw, 34px);
    line-height: 1.15;
}

.rmg-shortcode-header p {
    margin: 0;
    color: #64748b;
    font-size: 15px;
    line-height: 1.65;
}

.rmg-registration-form {
    display: grid;
    gap: 18px;
}

.rmg-form-grid {
    display: grid;
    gap: 18px;
}

.rmg-form-grid-2 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.rmg-registration-form label:not(.rmg-checkbox-row):not(.rmg-honeypot) {
    display: grid;
    gap: 8px;
    color: #1e3158;
    font-size: 14px;
    font-weight: 600;
}

.rmg-registration-form input[type="text"],
.rmg-registration-form input[type="email"],
.rmg-registration-form input[type="tel"],
.rmg-registration-form input[type="password"] {
    width: 100%;
    min-height: 50px;
    margin: 0;
    padding: 12px 15px;
    border: 1px solid #d9e2ef;
    border-radius: 12px;
    background: #fdfefe;
    color: #12274c;
    font: inherit;
    font-weight: 500;
    outline: none;
    transition: border-color .2s ease, box-shadow .2s ease, background .2s ease;
}

.rmg-registration-form input:focus {
    border-color: var(--rmg-form-accent);
    background: #fff;
    box-shadow: 0 0 0 4px rgba(30, 107, 255, .12);
}

.rmg-registration-form input[aria-invalid="true"] {
    border-color: #dc2626;
    box-shadow: 0 0 0 4px rgba(220, 38, 38, .08);
}

.rmg-registration-form small {
    color: #7b8aa4;
    font-size: 12px;
    font-weight: 400;
}

.rmg-checkbox-row {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    color: #52617a;
    font-size: 13px;
    line-height: 1.5;
}

.rmg-checkbox-row input {
    width: 17px;
    height: 17px;
    margin-top: 2px;
    accent-color: var(--rmg-form-accent);
}

.rmg-submit-button {
    min-height: 52px;
    border: 0;
    border-radius: 12px;
    background: linear-gradient(135deg, var(--rmg-form-primary), var(--rmg-form-accent));
    color: #fff;
    font: inherit;
    font-weight: 700;
    cursor: pointer;
    box-shadow: 0 12px 26px rgba(30, 107, 255, .22);
    transition: transform .2s ease, box-shadow .2s ease, opacity .2s ease;
}

.rmg-submit-button:hover {
    transform: translateY(-1px);
    box-shadow: 0 15px 32px rgba(30, 107, 255, .28);
}

.rmg-submit-button:disabled {
    cursor: wait;
    opacity: .68;
    transform: none;
}

.rmg-form-status {
    padding: 13px 15px;
    border-radius: 11px;
    background: #eff6ff;
    color: #1d4ed8;
    font-size: 14px;
    line-height: 1.55;
}

.rmg-form-status.is-error {
    background: #fef2f2;
    color: #b91c1c;
}

.rmg-form-status.is-success {
    background: #ecfdf3;
    color: #047857;
}

.rmg-login-link {
    margin: 0;
    text-align: center;
    color: #718096;
    font-size: 13px;
}

.rmg-login-link a {
    color: var(--rmg-form-accent);
    font-weight: 700;
    text-decoration: none;
}

.rmg-honeypot {
    position: absolute !important;
    left: -9999px !important;
    width: 1px !important;
    height: 1px !important;
    overflow: hidden !important;
}

@media (max-width: 680px) {
    .rmg-form-grid-2 {
        grid-template-columns: 1fr;
    }

    .rmg-shortcode-card {
        margin: 16px auto;
        border-radius: 16px;
    }

    .rmg-shortcode-header {
        align-items: center;
    }

    .rmg-shortcode-logo {
        width: 54px;
        height: 54px;
        border-radius: 14px;
        font-size: 19px;
    }
}

/* Public business-formation order form — premium SaaS interface. */
.rmg-order-app,
.rmg-order-app * {
    box-sizing: border-box;
}

.rmg-order-app {
    --rmg-order-primary: #092c72;
    --rmg-order-primary-deep: #061c4f;
    --rmg-order-primary-2: #164fb8;
    --rmg-order-accent: #1769ff;
    --rmg-order-accent-2: #0f4ee8;
    --rmg-order-success: #1dbb78;
    --rmg-order-danger: #dc334b;
    --rmg-order-text: #10244a;
    --rmg-order-muted: #687995;
    --rmg-order-soft: #f5f9ff;
    --rmg-order-soft-2: #edf4ff;
    --rmg-order-border: #dbe5f2;
    --rmg-order-shadow: 0 18px 45px rgba(28, 64, 122, .11);
    --rmg-order-shadow-lg: 0 28px 80px rgba(28, 64, 122, .13);
    position: relative;
    isolation: isolate;
    width: min(100%, 1380px);
    margin: 28px auto;
    padding: clamp(22px, 3vw, 42px);
    overflow: hidden;
    border: 1px solid rgba(210, 224, 242, .92);
    border-radius: 30px;
    background:
        radial-gradient(circle at 0 0, rgba(23, 105, 255, .12), transparent 25%),
        radial-gradient(circle at 100% 10%, rgba(94, 164, 255, .10), transparent 26%),
        linear-gradient(180deg, #ffffff 0%, #f7faff 52%, #f1f7ff 100%);
    box-shadow: var(--rmg-order-shadow-lg);
    color: var(--rmg-order-text);
    font-family: Poppins, Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    -webkit-font-smoothing: antialiased;
    text-rendering: optimizeLegibility;
}

.rmg-order-app::before,
.rmg-order-app::after {
    position: absolute;
    z-index: -1;
    border-radius: 999px;
    content: "";
    pointer-events: none;
}

.rmg-order-app::before {
    top: -160px;
    left: -170px;
    width: 390px;
    height: 390px;
    border: 46px solid rgba(23, 105, 255, .045);
    box-shadow: 0 0 0 38px rgba(23, 105, 255, .028), 0 0 0 75px rgba(23, 105, 255, .018);
}

.rmg-order-app::after {
    right: -180px;
    bottom: -210px;
    width: 430px;
    height: 430px;
    background: radial-gradient(circle, rgba(23, 105, 255, .11), transparent 68%);
    filter: blur(2px);
}

.rmg-order-header {
    position: relative;
    z-index: 2;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 28px;
    min-height: 72px;
    padding: 0 2px 26px;
}

.rmg-order-brand {
    display: flex;
    min-width: 0;
    align-items: center;
    gap: 16px;
}

.rmg-order-header .rmg-shortcode-logo {
    width: auto;
    min-width: 88px;
    height: auto;
    padding: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
    color: var(--rmg-order-accent);
    font-size: clamp(30px, 3vw, 40px);
    font-weight: 900;
    letter-spacing: -.065em;
    line-height: 1;
}

.rmg-order-header-copy {
    min-width: 0;
    padding-left: 16px;
    border-left: 1px solid #dfe7f2;
}

.rmg-order-kicker {
    display: none;
}

.rmg-order-header h2 {
    margin: 0 0 3px;
    color: #394765;
    font-size: clamp(16px, 1.65vw, 21px);
    font-weight: 600;
    letter-spacing: -.025em;
    line-height: 1.25;
}

.rmg-order-header p {
    max-width: 520px;
    margin: 0;
    overflow: hidden;
    color: #7b8ba5;
    font-size: 11px;
    line-height: 1.55;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.rmg-order-automation-bar {
    display: flex;
    flex: 0 0 auto;
    align-items: center;
    gap: 0;
    min-height: 54px;
}

.rmg-automation-status {
    position: relative;
    display: flex;
    align-items: center;
    gap: 10px;
    min-width: 170px;
    padding: 4px 22px;
    border-left: 1px solid #e4ebf4;
    color: #50617d;
}

.rmg-automation-status:first-child {
    border-left: 0;
}

.rmg-automation-status > .dashicons {
    display: grid;
    flex: 0 0 auto;
    place-items: center;
    width: 30px;
    height: 30px;
    border-radius: 50%;
    background: #edf4ff;
    color: var(--rmg-order-accent);
    font-size: 17px;
    line-height: 1;
}

.rmg-automation-status.is-saved > .dashicons {
    background: #dcf8e9;
    color: var(--rmg-order-success);
}

.rmg-automation-status.is-saving > .dashicons {
    animation: rmg-spin .85s linear infinite;
}

.rmg-automation-status > span:last-child {
    display: grid;
    gap: 1px;
}

.rmg-automation-status strong,
.rmg-automation-status small {
    display: block;
    margin: 0;
    white-space: nowrap;
}

.rmg-automation-status strong {
    color: #203354;
    font-size: 12px;
    font-weight: 800;
    line-height: 1.25;
}

.rmg-live-calculation strong {
    color: var(--rmg-order-accent-2);
}

.rmg-automation-status small {
    color: #8794aa;
    font-size: 10px;
    line-height: 1.35;
}

.rmg-live-calculation.is-pulsing > .dashicons {
    animation: rmg-live-pop .45s ease;
}

.rmg-order-avatar {
    display: grid;
    flex: 0 0 auto;
    place-items: center;
    width: 42px;
    height: 42px;
    margin-left: 18px;
    border: 4px solid #e8f0ff;
    border-radius: 50%;
    background: linear-gradient(145deg, #287aff, #1048d7);
    box-shadow: 0 8px 20px rgba(23, 105, 255, .20);
    color: #fff;
    font-size: 14px;
    font-weight: 800;
}

.rmg-order-progress {
    position: relative;
    z-index: 2;
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 0;
    margin: 0 0 28px;
    padding: 20px 22px;
    border: 1px solid rgba(209, 222, 239, .95);
    border-radius: 22px;
    background: rgba(255, 255, 255, .90);
    box-shadow: 0 12px 30px rgba(35, 72, 129, .10);
    backdrop-filter: blur(14px);
}

.rmg-progress-item {
    position: relative;
    display: flex;
    min-width: 0;
    align-items: center;
    justify-content: center;
    gap: 13px;
    min-height: 54px;
    padding: 8px 20px;
    border: 1px solid transparent;
    border-radius: 999px;
    color: #7d8ba3;
    outline: none;
    transition: color .25s ease, background .25s ease, border-color .25s ease, box-shadow .25s ease, transform .25s ease;
}

.rmg-progress-item:not(:last-child)::after {
    position: absolute;
    top: 50%;
    right: -10%;
    z-index: -1;
    width: 20%;
    height: 1px;
    background: #dbe4f0;
    content: "";
}

.rmg-progress-item span {
    display: grid;
    flex: 0 0 auto;
    place-items: center;
    width: 40px;
    height: 40px;
    border: 1px solid #d7dfeb;
    border-radius: 50%;
    background: #f8fafc;
    color: #718098;
    font-size: 17px;
    font-weight: 700;
    transition: inherit;
}

.rmg-progress-item strong {
    min-width: 0;
    overflow: hidden;
    font-size: 13px;
    font-weight: 700;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.rmg-progress-item.is-active {
    border-color: #8db5ff;
    background: linear-gradient(180deg, #ffffff, #f4f8ff);
    box-shadow: 0 0 0 4px rgba(23, 105, 255, .08), 0 10px 25px rgba(23, 105, 255, .13);
    color: var(--rmg-order-accent-2);
    transform: translateY(-1px);
}

.rmg-progress-item.is-active::before {
    position: absolute;
    right: 50%;
    bottom: -8px;
    width: 9px;
    height: 9px;
    border-radius: 50%;
    background: var(--rmg-order-accent);
    box-shadow: 0 0 0 6px rgba(23, 105, 255, .12);
    content: "";
    transform: translateX(50%);
    animation: rmg-step-pulse 2.25s ease-in-out infinite;
}

.rmg-progress-item.is-active span,
.rmg-progress-item.is-complete span {
    border-color: transparent;
    background: linear-gradient(145deg, #2d7cff, #0d4fe7);
    box-shadow: 0 8px 18px rgba(23, 105, 255, .26);
    color: #fff;
}

.rmg-progress-item.is-complete {
    color: #335c9b;
    cursor: pointer;
}

.rmg-progress-item.is-complete:hover,
.rmg-progress-item.is-complete:focus-visible {
    background: #f3f7fd;
    color: var(--rmg-order-accent-2);
}

.rmg-order-status {
    position: relative;
    z-index: 3;
    margin: 0 0 18px;
    border: 1px solid rgba(23, 105, 255, .15);
    box-shadow: 0 8px 22px rgba(15, 43, 85, .07);
    animation: rmg-status-in .3s ease both;
}

.rmg-order-layout {
    position: relative;
    z-index: 2;
    display: grid;
    grid-template-columns: minmax(0, 1.72fr) minmax(315px, .82fr);
    gap: 18px;
    align-items: start;
}

.rmg-order-layout.without-sidebar {
    grid-template-columns: minmax(0, 1fr);
}

.rmg-order-main,
.rmg-order-summary {
    min-width: 0;
    border: 1px solid rgba(207, 221, 239, .98);
    border-radius: 22px;
    background: rgba(255, 255, 255, .94);
    box-shadow: var(--rmg-order-shadow);
    backdrop-filter: blur(14px);
}

.rmg-order-main {
    display: flex;
    min-height: 590px;
    flex-direction: column;
    padding: clamp(28px, 3.3vw, 46px);
}

.rmg-order-step {
    flex: 1 1 auto;
    min-height: 0;
}

.rmg-order-step.is-active {
    animation: rmg-step-in .42s cubic-bezier(.22, .72, .2, 1) both;
}

.rmg-order-step[hidden] {
    display: none !important;
}

.rmg-step-heading {
    position: relative;
    margin: 0 0 30px;
    padding-bottom: 2px;
}

.rmg-step-heading > span {
    display: inline-flex;
    align-items: center;
    min-height: 31px;
    padding: 5px 13px;
    border-radius: 999px;
    background: #edf4ff;
    color: var(--rmg-order-accent-2);
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .065em;
    line-height: 1;
    text-transform: uppercase;
}

.rmg-step-heading h3 {
    position: relative;
    margin: 18px 0 13px;
    padding-bottom: 17px;
    color: var(--rmg-order-primary-deep);
    font-size: clamp(25px, 3vw, 34px);
    font-weight: 750;
    letter-spacing: -.043em;
    line-height: 1.22;
}

.rmg-step-heading h3::after {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 42px;
    height: 3px;
    border-radius: 99px;
    background: linear-gradient(90deg, var(--rmg-order-accent), #65a1ff);
    content: "";
}

.rmg-step-heading p {
    max-width: 790px;
    margin: 0;
    color: var(--rmg-order-muted);
    font-size: 14px;
    line-height: 1.75;
}

.rmg-order-form .rmg-form-grid {
    display: grid;
    gap: 22px;
}

.rmg-order-form .rmg-form-grid-2 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.rmg-order-form .rmg-field {
    display: grid;
    min-width: 0;
    gap: 10px;
    margin: 0 0 20px;
    color: #1c3154;
    font-size: 12px;
    font-weight: 750;
}

.rmg-order-form .rmg-field > span:first-child b {
    color: var(--rmg-order-danger);
}

.rmg-control-shell {
    position: relative;
    display: block;
}

.rmg-control-shell > .dashicons {
    position: absolute;
    top: 50%;
    left: 18px;
    z-index: 2;
    width: 19px;
    height: 19px;
    color: var(--rmg-order-accent-2);
    font-size: 19px;
    line-height: 1;
    pointer-events: none;
    transform: translateY(-50%);
}

.rmg-order-form input[type="text"],
.rmg-order-form input[type="email"],
.rmg-order-form input[type="tel"],
.rmg-order-form select {
    width: 100%;
    min-height: 58px;
    margin: 0;
    padding: 14px 17px;
    border: 1px solid #d4deeb;
    border-radius: 13px;
    background: rgba(255, 255, 255, .98);
    box-shadow: 0 2px 0 rgba(22, 51, 94, .02);
    color: var(--rmg-order-text);
    font: inherit;
    font-size: 14px;
    font-weight: 500;
    line-height: 1.35;
    outline: none;
    transition: border-color .2s ease, box-shadow .2s ease, background .2s ease, transform .2s ease;
}

.rmg-field-with-icon select {
    padding-left: 53px;
}

.rmg-order-form select {
    cursor: pointer;
}

.rmg-order-form input:hover,
.rmg-order-form select:hover {
    border-color: #b9cae1;
}

.rmg-order-form input:focus,
.rmg-order-form select:focus {
    border-color: var(--rmg-order-accent);
    background: #fff;
    box-shadow: 0 0 0 4px rgba(23, 105, 255, .10), 0 8px 22px rgba(23, 105, 255, .08);
    transform: translateY(-1px);
}

.rmg-order-form [aria-invalid="true"] {
    border-color: var(--rmg-order-danger) !important;
    box-shadow: 0 0 0 4px rgba(220, 51, 75, .09) !important;
}

.rmg-step-live-note {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    align-items: center;
    gap: 11px;
    margin: 6px 0 0;
    padding: 14px 16px;
    border: 1px solid #e3ecf7;
    border-radius: 11px;
    background: linear-gradient(90deg, #f4f8ff, #f8fbff);
    color: #536580;
    font-size: 11px;
    line-height: 1.55;
}

.rmg-step-live-note > .dashicons {
    color: var(--rmg-order-accent);
    font-size: 17px;
}

.rmg-step-live-note strong,
.rmg-summary-live {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    color: var(--rmg-order-accent-2);
    font-size: 11px;
    font-weight: 700;
    white-space: nowrap;
}

.rmg-step-live-note i,
.rmg-summary-live i {
    display: block;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: var(--rmg-order-success);
    box-shadow: 0 0 0 4px rgba(29, 187, 120, .10);
    animation: rmg-live-dot 1.8s ease-in-out infinite;
}

.rmg-state-notice {
    display: flex;
    align-items: center;
    gap: 13px;
    margin-top: 14px;
    padding: 14px 16px;
    border: 1px solid #cfe0fa;
    border-radius: 12px;
    background: #f1f7ff;
    animation: rmg-status-in .3s ease both;
}

.rmg-state-notice[hidden] {
    display: none !important;
}

.rmg-state-notice > .dashicons {
    display: grid;
    flex: 0 0 auto;
    place-items: center;
    width: 38px;
    height: 38px;
    border-radius: 11px;
    background: linear-gradient(145deg, #2d7cff, #0d4fe7);
    box-shadow: 0 8px 18px rgba(23, 105, 255, .18);
    color: #fff;
}

.rmg-state-notice strong,
.rmg-state-notice p {
    display: block;
    margin: 0;
}

.rmg-state-notice p {
    margin-top: 3px;
    color: #5f7394;
    font-size: 11px;
    line-height: 1.55;
}

.rmg-package-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 16px;
    align-items: stretch;
}

.rmg-package-card {
    position: relative;
    display: flex;
    min-width: 0;
    min-height: 390px;
    flex-direction: column;
    padding: 23px;
    overflow: hidden;
    border: 1px solid #dce5f0;
    border-radius: 18px;
    background: linear-gradient(180deg, #fff, #fbfdff);
    cursor: pointer;
    transition: transform .24s ease, border-color .24s ease, box-shadow .24s ease, background .24s ease;
}

.rmg-package-card::after {
    position: absolute;
    top: -75px;
    right: -75px;
    width: 150px;
    height: 150px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(23, 105, 255, .13), transparent 70%);
    content: "";
    opacity: 0;
    transition: opacity .25s ease;
}

.rmg-package-card:hover {
    z-index: 2;
    border-color: #a9c7f6;
    box-shadow: 0 18px 38px rgba(30, 107, 255, .12);
    transform: translateY(-4px);
}

.rmg-package-card:hover::after,
.rmg-package-card.is-selected::after {
    opacity: 1;
}

.rmg-package-card.is-selected {
    border: 2px solid var(--rmg-order-accent);
    padding: 22px;
    background: linear-gradient(180deg, #fff, #f3f8ff);
    box-shadow: 0 20px 42px rgba(30, 107, 255, .16);
}

.rmg-package-card input {
    position: absolute;
    opacity: 0;
    pointer-events: none;
}

.rmg-package-badge {
    position: absolute;
    top: 15px;
    right: 15px;
    z-index: 2;
    padding: 6px 10px;
    border-radius: 999px;
    background: linear-gradient(135deg, var(--rmg-order-primary), var(--rmg-order-accent));
    box-shadow: 0 7px 16px rgba(23, 105, 255, .18);
    color: #fff;
    font-size: 9px;
    font-weight: 800;
    letter-spacing: .04em;
    text-transform: uppercase;
}

.rmg-package-top {
    position: relative;
    z-index: 1;
    display: block;
}

.rmg-package-top h4 {
    margin: 0 0 8px;
    color: var(--rmg-order-primary-deep);
    font-size: 20px;
    letter-spacing: -.025em;
}

.rmg-package-top p {
    min-height: 60px;
    margin: 0 0 17px;
    color: var(--rmg-order-muted);
    font-size: 11px;
    line-height: 1.6;
}

.rmg-package-price strong,
.rmg-package-price small {
    display: block;
}

.rmg-package-price strong {
    color: var(--rmg-order-primary-deep);
    font-size: 26px;
    letter-spacing: -.035em;
}

.rmg-package-price small {
    color: #8491a6;
    font-size: 10px;
}

.rmg-package-card ul {
    position: relative;
    z-index: 1;
    display: grid;
    gap: 10px;
    margin: 19px 0;
    padding: 0;
    list-style: none;
}

.rmg-package-card li {
    display: flex;
    align-items: flex-start;
    gap: 9px;
    margin: 0;
    color: #4f607c;
    font-size: 11px;
    line-height: 1.5;
}

.rmg-package-card li span {
    display: grid;
    flex: 0 0 auto;
    place-items: center;
    width: 17px;
    height: 17px;
    border-radius: 50%;
    background: #e6f8ef;
    color: #0eaf73;
    font-size: 10px;
    font-weight: 900;
}

.rmg-package-select {
    position: relative;
    z-index: 1;
    display: grid;
    place-items: center;
    min-height: 44px;
    margin-top: auto;
    border: 1px solid #cbd9eb;
    border-radius: 11px;
    background: #fff;
    color: var(--rmg-order-primary);
    font-size: 11px;
    font-weight: 800;
    transition: background .2s ease, color .2s ease, border-color .2s ease, transform .2s ease;
}

.rmg-package-card.is-selected .rmg-package-select {
    border-color: var(--rmg-order-accent);
    background: linear-gradient(135deg, #2878ff, #1050e9);
    box-shadow: 0 10px 20px rgba(23, 105, 255, .20);
    color: #fff;
}

.rmg-addon-list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 13px;
    align-items: stretch;
}

.rmg-addon-card,
.rmg-expedite-card {
    position: relative;
    display: flex;
    min-width: 0;
    align-items: center;
    gap: 13px;
    padding: 16px;
    overflow: hidden;
    border: 1px solid #dce5f0;
    border-radius: 14px;
    background: #fff;
    cursor: pointer;
    transition: border-color .2s ease, box-shadow .2s ease, background .2s ease, transform .2s ease, opacity .2s ease;
}

.rmg-addon-card:hover,
.rmg-expedite-card:hover {
    border-color: #adc9f3;
    box-shadow: 0 12px 26px rgba(30, 107, 255, .09);
    transform: translateY(-2px);
}

.rmg-addon-card.is-selected,
.rmg-expedite-card.is-selected {
    border-color: #8db7ff;
    background: linear-gradient(180deg, #fff, #f4f8ff);
    box-shadow: 0 12px 26px rgba(30, 107, 255, .11);
}

.rmg-addon-card input,
.rmg-expedite-card input {
    position: absolute;
    opacity: 0;
    pointer-events: none;
}

.rmg-addon-check {
    display: grid;
    flex: 0 0 auto;
    place-items: center;
    width: 27px;
    height: 27px;
    border: 1px solid #cbd7e7;
    border-radius: 8px;
    background: #fff;
    color: transparent;
    font-size: 12px;
    font-weight: 900;
    transition: inherit;
}

.rmg-addon-card.is-selected .rmg-addon-check {
    border-color: var(--rmg-order-accent);
    background: linear-gradient(145deg, #2d7cff, #0d4fe7);
    box-shadow: 0 6px 14px rgba(23, 105, 255, .20);
    color: #fff;
}

.rmg-addon-copy {
    display: block;
    flex: 1;
    min-width: 0;
}

.rmg-addon-copy strong,
.rmg-addon-copy small {
    display: block;
}

.rmg-addon-copy strong {
    color: var(--rmg-order-primary-deep);
    font-size: 12px;
}

.rmg-addon-copy small {
    margin-top: 4px;
    color: var(--rmg-order-muted);
    font-size: 10px;
    line-height: 1.5;
}

.rmg-addon-price,
.rmg-expedite-card > b {
    flex: 0 0 auto;
    color: var(--rmg-order-primary-deep);
    font-size: 11px;
    font-weight: 800;
    white-space: nowrap;
}

.rmg-addon-card.is-included .rmg-addon-price,
.rmg-expedite-card.is-included > b {
    color: #06855d;
}

.rmg-expedite-card {
    margin-top: 15px;
}

.rmg-expedite-card > .dashicons {
    display: grid;
    flex: 0 0 auto;
    place-items: center;
    width: 42px;
    height: 42px;
    border-radius: 12px;
    background: #edf4ff;
    color: var(--rmg-order-accent);
}

.rmg-expedite-card > span:nth-of-type(2) {
    display: block;
    flex: 1;
    min-width: 0;
}

.rmg-expedite-card strong,
.rmg-expedite-card small {
    display: block;
}

.rmg-expedite-card strong {
    color: var(--rmg-order-primary-deep);
    font-size: 12px;
}

.rmg-expedite-card small {
    margin-top: 4px;
    color: var(--rmg-order-muted);
    font-size: 10px;
    line-height: 1.5;
}

.rmg-addon-card.is-locked,
.rmg-expedite-card.is-locked {
    cursor: not-allowed;
    opacity: .55;
    box-shadow: none;
    transform: none;
}

.rmg-addon-card.is-not-applicable {
    display: none;
}

.rmg-review-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 13px;
    margin-bottom: 18px;
}

.rmg-review-card {
    position: relative;
    padding: 17px;
    overflow: hidden;
    border: 1px solid #dfe7f2;
    border-radius: 14px;
    background: linear-gradient(180deg, #fbfdff, #f6f9fd);
    animation: rmg-review-in .35s ease both;
}

.rmg-review-card:last-child {
    grid-column: 1 / -1;
    background: linear-gradient(135deg, #eef5ff, #f8fbff);
}

.rmg-review-card h4 {
    margin: 0 0 9px;
    color: var(--rmg-order-primary-deep);
    font-size: 12px;
}

.rmg-review-card p {
    margin: 0;
    color: #566984;
    font-size: 11px;
    line-height: 1.65;
}

.rmg-order-terms {
    padding: 15px;
    border: 1px solid #d9e3ef;
    border-radius: 12px;
    background: #f7faff;
}

.rmg-order-navigation {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 12px;
    margin-top: 28px;
    padding-top: 20px;
    border-top: 1px solid #e3eaf3;
}

.rmg-order-navigation button {
    position: relative;
    display: inline-flex;
    min-width: 0;
    min-height: 54px;
    align-items: center;
    justify-content: center;
    gap: 10px;
    margin: 0;
    padding: 12px 15px;
    overflow: hidden;
    border-radius: 11px;
    font: inherit;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .01em;
    line-height: 1.2;
    cursor: pointer;
    transition: border-color .2s ease, background .2s ease, box-shadow .2s ease, color .2s ease, transform .2s ease, opacity .2s ease;
}

.rmg-order-navigation button .dashicons {
    width: 18px;
    height: 18px;
    font-size: 18px;
}

.rmg-order-clear,
.rmg-order-back {
    border: 1px solid #a8c2f2;
    background: rgba(255, 255, 255, .96);
    color: var(--rmg-order-accent-2);
}

.rmg-order-clear:hover:not(:disabled),
.rmg-order-back:hover:not(:disabled) {
    border-color: var(--rmg-order-accent);
    background: #f2f7ff;
    box-shadow: 0 10px 22px rgba(23, 105, 255, .10);
    transform: translateY(-2px);
}

.rmg-order-next,
.rmg-order-submit {
    border: 1px solid transparent;
    background: linear-gradient(135deg, #2878ff, #0d4de3);
    box-shadow: 0 12px 24px rgba(23, 105, 255, .22);
    color: #fff;
}

.rmg-order-submit {
    background: linear-gradient(135deg, #1666f7, #073bc5);
}

.rmg-order-next::before,
.rmg-order-submit::before {
    position: absolute;
    top: -30%;
    left: -55%;
    width: 40%;
    height: 160%;
    background: linear-gradient(90deg, transparent, rgba(255,255,255,.38), transparent);
    content: "";
    opacity: 0;
    pointer-events: none;
    transform: rotate(14deg);
}

.rmg-order-next:hover:not(:disabled),
.rmg-order-submit:hover:not(:disabled) {
    box-shadow: 0 16px 30px rgba(23, 105, 255, .30);
    transform: translateY(-2px);
}

.rmg-order-next:hover:not(:disabled)::before,
.rmg-order-submit:hover:not(:disabled)::before {
    opacity: 1;
    animation: rmg-button-shine .75s ease;
}

.rmg-order-navigation button:disabled {
    cursor: not-allowed;
    opacity: .38;
    box-shadow: none;
    filter: saturate(.65);
    transform: none;
}

.rmg-order-summary {
    position: sticky;
    top: 24px;
    display: flex;
    min-height: 590px;
    flex-direction: column;
    padding: 24px;
}

.rmg-summary-heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    padding-bottom: 18px;
    border-bottom: 1px dashed #d8e3f0;
}

.rmg-summary-title {
    display: flex;
    min-width: 0;
    align-items: center;
    gap: 12px;
}

.rmg-summary-title > .dashicons {
    display: grid;
    flex: 0 0 auto;
    place-items: center;
    width: 42px;
    height: 42px;
    border-radius: 12px;
    background: linear-gradient(145deg, #2d7cff, #0d4fe7);
    box-shadow: 0 9px 20px rgba(23, 105, 255, .20);
    color: #fff;
    font-size: 19px;
}

.rmg-summary-title h3 {
    margin: 0;
    color: var(--rmg-order-primary-deep);
    font-size: 17px;
    letter-spacing: -.02em;
}

.rmg-summary-live {
    padding: 7px 10px;
    border-radius: 999px;
    background: #e9f9f1;
    color: #159762;
}

.rmg-summary-empty {
    display: flex;
    flex: 1 1 auto;
    min-height: 315px;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 34px 18px;
    color: #74839a;
    text-align: center;
    animation: rmg-status-in .35s ease both;
}

.rmg-summary-empty[hidden],
.rmg-summary-content[hidden],
.rmg-summary-row[hidden] {
    display: none !important;
}

.rmg-summary-illustration {
    position: relative;
    display: grid;
    place-items: center;
    width: 116px;
    height: 116px;
    margin-bottom: 22px;
    border-radius: 50%;
    background: radial-gradient(circle, #fff 0 36%, #eef4ff 37% 62%, rgba(238, 244, 255, .45) 63% 100%);
}

.rmg-summary-illustration::before,
.rmg-summary-illustration::after {
    position: absolute;
    color: #a7c5ff;
    content: "✦";
    font-size: 13px;
    animation: rmg-sparkle 2.3s ease-in-out infinite;
}

.rmg-summary-illustration::before {
    top: 8px;
    right: 8px;
}

.rmg-summary-illustration::after {
    bottom: 22px;
    left: 5px;
    animation-delay: .7s;
}

.rmg-summary-illustration > span {
    display: grid;
    place-items: center;
    width: 57px;
    height: 70px;
    border-radius: 10px;
    background: #fff;
    box-shadow: 0 12px 28px rgba(42, 83, 145, .13);
    color: #b4c9ee;
    font-size: 31px;
}

.rmg-summary-illustration > i {
    position: absolute;
    right: 12px;
    bottom: 13px;
    display: grid;
    place-items: center;
    width: 35px;
    height: 35px;
    border: 4px solid #eef4ff;
    border-radius: 50%;
    background: linear-gradient(145deg, #2d7cff, #0d4fe7);
    box-shadow: 0 8px 18px rgba(23, 105, 255, .22);
    color: #fff;
    font-size: 16px;
    font-style: normal;
}

.rmg-summary-empty > strong {
    display: block;
    margin-bottom: 8px;
    color: var(--rmg-order-primary-deep);
    font-size: 15px;
}

.rmg-summary-empty > p {
    max-width: 245px;
    margin: 0;
    color: #77879f;
    font-size: 11px;
    line-height: 1.7;
}

.rmg-summary-content {
    flex: 1 1 auto;
    padding-top: 18px;
    animation: rmg-status-in .3s ease both;
}

.rmg-order-summary.is-updating .rmg-summary-content,
.rmg-order-summary.is-updating .rmg-summary-empty {
    animation: rmg-summary-flash .42s ease;
}

.rmg-summary-row {
    display: flex;
    justify-content: space-between;
    gap: 14px;
    padding: 9px 0;
    color: #677890;
    font-size: 11px;
    line-height: 1.45;
}

.rmg-summary-row strong {
    max-width: 58%;
    color: var(--rmg-order-primary-deep);
    font-weight: 750;
    text-align: right;
}

.rmg-summary-divider {
    margin: 8px 0;
    border-top: 1px solid #e3eaf3;
}

.rmg-summary-total {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 15px;
    margin-top: 14px;
    padding-top: 17px;
    border-top: 1px solid #dfe7f1;
    color: var(--rmg-order-primary-deep);
    font-size: 15px;
    font-weight: 800;
}

.rmg-summary-total strong {
    color: var(--rmg-order-primary-deep);
    font-size: 25px;
    letter-spacing: -.04em;
}

.rmg-summary-total strong.is-changing {
    animation: rmg-total-pop .35s ease;
}

.rmg-summary-content > small {
    display: block;
    margin-top: 15px;
    color: #8794aa;
    font-size: 9px;
    line-height: 1.6;
}

.rmg-summary-security {
    display: flex;
    align-items: center;
    gap: 11px;
    margin-top: auto;
    padding-top: 18px;
    border-top: 1px dashed #d8e3f0;
}

.rmg-summary-security > .dashicons {
    display: grid;
    flex: 0 0 auto;
    place-items: center;
    width: 37px;
    height: 37px;
    border-radius: 11px;
    background: #edf4ff;
    color: var(--rmg-order-accent-2);
    font-size: 18px;
}

.rmg-summary-security > span {
    display: grid;
    gap: 3px;
}

.rmg-summary-security strong,
.rmg-summary-security small {
    display: block;
}

.rmg-summary-security strong {
    color: #5d6d85;
    font-size: 10px;
}

.rmg-summary-security small {
    color: #8b98ab;
    font-size: 8px;
    line-height: 1.45;
}

.rmg-order-terms input {
    flex: 0 0 auto;
}

@keyframes rmg-step-in {
    from { opacity: 0; transform: translateY(10px); }
    to { opacity: 1; transform: translateY(0); }
}

@keyframes rmg-status-in {
    from { opacity: 0; transform: translateY(-5px); }
    to { opacity: 1; transform: translateY(0); }
}

@keyframes rmg-review-in {
    from { opacity: 0; transform: translateY(7px); }
    to { opacity: 1; transform: translateY(0); }
}

@keyframes rmg-step-pulse {
    0%, 100% { box-shadow: 0 0 0 5px rgba(23, 105, 255, .10); }
    50% { box-shadow: 0 0 0 10px rgba(23, 105, 255, 0); }
}

@keyframes rmg-live-dot {
    0%, 100% { transform: scale(1); opacity: 1; }
    50% { transform: scale(.78); opacity: .62; }
}

@keyframes rmg-live-pop {
    0% { transform: scale(.92); }
    55% { transform: scale(1.14); }
    100% { transform: scale(1); }
}

@keyframes rmg-summary-flash {
    0% { opacity: .72; transform: translateY(2px); }
    100% { opacity: 1; transform: translateY(0); }
}

@keyframes rmg-total-pop {
    0% { transform: scale(.94); color: var(--rmg-order-accent); }
    70% { transform: scale(1.06); color: var(--rmg-order-accent); }
    100% { transform: scale(1); color: var(--rmg-order-primary-deep); }
}

@keyframes rmg-button-shine {
    from { left: -55%; }
    to { left: 125%; }
}

@keyframes rmg-sparkle {
    0%, 100% { opacity: .35; transform: scale(.8) rotate(0); }
    50% { opacity: 1; transform: scale(1.2) rotate(30deg); }
}

@keyframes rmg-spin {
    to { transform: rotate(360deg); }
}

@media (max-width: 1180px) {
    .rmg-order-automation-bar {
        display: none;
    }

    .rmg-order-layout {
        grid-template-columns: minmax(0, 1fr) 300px;
    }

    .rmg-package-card {
        min-height: 0;
    }
}

@media (max-width: 980px) {
    .rmg-order-app {
        padding: 22px;
    }

    .rmg-order-progress {
        overflow-x: auto;
        grid-template-columns: repeat(5, minmax(150px, 1fr));
        scrollbar-width: thin;
    }

    .rmg-order-layout {
        grid-template-columns: 1fr;
    }

    .rmg-order-summary {
        position: static;
        min-height: 0;
        order: -1;
    }

    .rmg-summary-empty {
        min-height: 230px;
    }

    .rmg-package-grid {
        grid-template-columns: 1fr;
    }

    .rmg-package-top p {
        min-height: 0;
    }
}

@media (max-width: 760px) {
    .rmg-order-app {
        margin: 14px auto;
        padding: 15px;
        border-radius: 20px;
    }

    .rmg-order-header {
        min-height: 58px;
        padding-bottom: 18px;
    }

    .rmg-order-header .rmg-shortcode-logo {
        min-width: 72px;
        font-size: 29px;
    }

    .rmg-order-header-copy {
        padding-left: 12px;
    }

    .rmg-order-header h2 {
        font-size: 15px;
    }

    .rmg-order-header p {
        display: none;
    }

    .rmg-order-progress {
        margin-bottom: 16px;
        padding: 9px;
        grid-template-columns: repeat(5, minmax(58px, 1fr));
    }

    .rmg-progress-item {
        min-height: 46px;
        gap: 0;
        padding: 5px;
    }

    .rmg-progress-item:not(:last-child)::after,
    .rmg-progress-item strong {
        display: none;
    }

    .rmg-progress-item span {
        width: 33px;
        height: 33px;
        font-size: 13px;
    }

    .rmg-order-main,
    .rmg-order-summary {
        border-radius: 17px;
    }

    .rmg-order-main {
        min-height: 0;
        padding: 22px 18px;
    }

    .rmg-step-heading {
        margin-bottom: 24px;
    }

    .rmg-step-heading h3 {
        margin-top: 14px;
        font-size: 24px;
    }

    .rmg-order-form .rmg-form-grid-2,
    .rmg-addon-list,
    .rmg-review-grid {
        grid-template-columns: 1fr;
    }

    .rmg-step-live-note {
        grid-template-columns: auto minmax(0, 1fr);
    }

    .rmg-step-live-note strong {
        grid-column: 1 / -1;
        justify-self: start;
        padding-left: 28px;
    }

    .rmg-addon-card,
    .rmg-expedite-card {
        align-items: flex-start;
        flex-wrap: wrap;
    }

    .rmg-addon-price,
    .rmg-expedite-card > b {
        margin-left: 40px;
    }

    .rmg-review-card:last-child {
        grid-column: auto;
    }

    .rmg-order-navigation {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .rmg-order-navigation button {
        min-height: 50px;
    }
}

@media (max-width: 430px) {
    .rmg-order-brand {
        gap: 9px;
    }

    .rmg-order-header .rmg-shortcode-logo {
        min-width: 62px;
        font-size: 25px;
    }

    .rmg-order-header-copy {
        padding-left: 9px;
    }

    .rmg-order-header h2 {
        font-size: 13px;
    }

    .rmg-order-progress {
        grid-template-columns: repeat(5, 48px);
        justify-content: space-between;
    }

    .rmg-order-navigation {
        grid-template-columns: 1fr;
    }

    .rmg-order-summary {
        padding: 19px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .rmg-order-app *,
    .rmg-order-app *::before,
    .rmg-order-app *::after {
        scroll-behavior: auto !important;
        animation-duration: .001ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: .001ms !important;
    }
}

/* ========================================================================
 * RMG Formation Form v0.4.1 — responsive 1290px application layout
 * Keeps the shortcode independent from narrow theme / Elementor containers.
 * ====================================================================== */
@media (min-width: 1051px) {
    .rmg-order-app {
        left: 50%;
        width: min(1290px, calc(100vw - 32px)) !important;
        max-width: 1290px !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        transform: translateX(-50%);
    }
}

.rmg-order-app {
    --rmg-desktop-summary: 340px;
    --rmg-desktop-gap: 22px;
    padding: 26px;
    border-radius: 26px;
}

.rmg-order-header {
    min-height: 66px;
    padding: 0 4px 22px;
}

.rmg-order-header-copy {
    max-width: 420px;
}

.rmg-order-progress {
    margin-bottom: 22px;
    padding: 16px;
    border-radius: 19px;
}

.rmg-progress-item {
    min-height: 52px;
    gap: 10px;
    padding: 7px 12px;
}

.rmg-progress-item span {
    width: 36px;
    height: 36px;
    font-size: 15px;
}

.rmg-progress-item strong {
    font-size: 12px;
}

.rmg-order-layout {
    grid-template-columns: minmax(0, 1fr) var(--rmg-desktop-summary);
    gap: var(--rmg-desktop-gap);
    align-items: stretch;
}

.rmg-order-main,
.rmg-order-summary {
    border-radius: 20px;
}

.rmg-order-main {
    min-height: 570px;
    padding: 34px 36px 28px;
}

.rmg-order-summary {
    top: 48px;
    min-height: 570px;
    padding: 24px 22px;
}

.rmg-step-heading {
    margin-bottom: 26px;
}

.rmg-step-heading h3 {
    margin-top: 14px;
    font-size: clamp(25px, 2.35vw, 31px);
}

.rmg-step-heading p {
    max-width: 720px;
    font-size: 13px;
    line-height: 1.68;
}

.rmg-order-form .rmg-form-grid {
    gap: 18px;
}

.rmg-order-form .rmg-field {
    gap: 8px;
    margin-bottom: 16px;
}

.rmg-order-form input[type="text"],
.rmg-order-form input[type="email"],
.rmg-order-form input[type="tel"],
.rmg-order-form select {
    min-height: 54px;
    border-radius: 12px;
}

.rmg-step-live-note {
    margin-top: 2px;
    padding: 13px 15px;
}

/* Package cards are dimensioned to fit the 1290px shell without clipping. */
.rmg-package-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 14px;
}

.rmg-package-card {
    min-height: 0;
    padding: 20px 18px;
    border-radius: 16px;
}

.rmg-package-card.is-selected {
    padding: 19px 17px;
}

.rmg-package-card.has-badge .rmg-package-top {
    padding-top: 24px;
}

.rmg-package-badge {
    top: 12px;
    right: 12px;
    max-width: calc(100% - 24px);
    padding: 5px 8px;
    font-size: 8px;
    white-space: nowrap;
}

.rmg-package-top h4 {
    margin-bottom: 6px;
    font-size: 18px;
}

.rmg-package-top p {
    min-height: 54px;
    margin-bottom: 13px;
    font-size: 10.5px;
    line-height: 1.55;
}

.rmg-package-price strong {
    font-size: 24px;
}

.rmg-package-card ul {
    gap: 8px;
    margin: 15px 0 17px;
}

.rmg-package-card li {
    gap: 8px;
    font-size: 10.5px;
    line-height: 1.42;
}

.rmg-package-select {
    min-height: 42px;
}

.rmg-addon-list {
    gap: 12px;
}

.rmg-addon-card,
.rmg-expedite-card {
    min-height: 78px;
    padding: 14px;
}

.rmg-order-navigation {
    grid-template-columns: minmax(120px, .92fr) minmax(120px, .92fr) minmax(150px, 1.12fr) minmax(170px, 1.26fr);
    gap: 10px;
    margin-top: 24px;
    padding-top: 18px;
}

.rmg-order-navigation button {
    min-height: 52px;
    padding-inline: 12px;
    border-radius: 10px;
    white-space: nowrap;
}

.rmg-summary-heading {
    padding-bottom: 16px;
}

.rmg-summary-title h3 {
    font-size: 16px;
}

.rmg-summary-content {
    padding-top: 15px;
}

.rmg-summary-row {
    gap: 10px;
    padding: 8px 0;
    font-size: 10.5px;
}

.rmg-summary-row strong {
    max-width: 60%;
    overflow-wrap: anywhere;
}

.rmg-summary-total {
    margin-top: 11px;
    padding-top: 15px;
}

.rmg-summary-total strong {
    font-size: 23px;
}

/* Large laptops: retain two-column form + summary while giving form enough room. */
@media (max-width: 1180px) and (min-width: 1051px) {
    .rmg-order-app {
        --rmg-desktop-summary: 310px;
        --rmg-desktop-gap: 18px;
        padding: 22px;
    }

    .rmg-order-main {
        padding: 30px 28px 26px;
    }

    .rmg-order-automation-bar {
        display: flex;
    }

    .rmg-automation-status {
        min-width: 148px;
        padding-inline: 14px;
    }

    .rmg-order-avatar {
        margin-left: 12px;
    }

    .rmg-progress-item {
        gap: 7px;
        padding-inline: 8px;
    }

    .rmg-progress-item strong {
        font-size: 11px;
    }
}

/* Tablet / narrow laptop: stop squeezing the form. Summary becomes a full row. */
@media (max-width: 1050px) {
    .rmg-order-app {
        left: auto;
        width: min(100%, calc(100vw - 24px)) !important;
        max-width: 100% !important;
        margin: 18px auto !important;
        padding: 20px;
        transform: none;
    }

    .rmg-order-layout {
        grid-template-columns: minmax(0, 1fr);
        gap: 18px;
    }

    .rmg-order-summary {
        position: static;
        order: 2;
        min-height: 0;
    }

    .rmg-summary-empty {
        min-height: 220px;
    }

    .rmg-package-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (max-width: 900px) {
    .rmg-order-header {
        align-items: flex-start;
    }

    .rmg-order-automation-bar {
        display: none;
    }

    .rmg-order-progress {
        grid-template-columns: repeat(5, minmax(132px, 1fr));
        overflow-x: auto;
        overscroll-behavior-inline: contain;
        scroll-snap-type: x proximity;
    }

    .rmg-progress-item {
        scroll-snap-align: start;
    }

    .rmg-package-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .rmg-package-top p {
        min-height: 0;
    }

    .rmg-package-card:last-child:nth-child(odd) {
        grid-column: 1 / -1;
    }

    .rmg-order-navigation {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 680px) {
    .rmg-order-app {
        width: min(100%, calc(100vw - 16px)) !important;
        margin: 8px auto !important;
        padding: 12px;
        border-radius: 18px;
    }

    .rmg-order-header {
        padding: 4px 4px 14px;
    }

    .rmg-order-brand {
        width: 100%;
    }

    .rmg-order-header .rmg-shortcode-logo {
        min-width: 66px;
        font-size: 27px;
    }

    .rmg-order-header-copy {
        max-width: none;
        padding-left: 10px;
    }

    .rmg-order-progress {
        margin-bottom: 12px;
        padding: 8px;
        grid-template-columns: repeat(5, 52px);
        justify-content: space-between;
        overflow: visible;
    }

    .rmg-progress-item {
        min-height: 44px;
        padding: 4px;
    }

    .rmg-progress-item strong,
    .rmg-progress-item:not(:last-child)::after {
        display: none;
    }

    .rmg-progress-item span {
        width: 32px;
        height: 32px;
        font-size: 12px;
    }

    .rmg-order-main,
    .rmg-order-summary {
        border-radius: 15px;
    }

    .rmg-order-main {
        padding: 22px 17px 17px;
    }

    .rmg-order-summary {
        padding: 19px 17px;
    }

    .rmg-step-heading h3 {
        font-size: 23px;
        line-height: 1.22;
    }

    .rmg-order-form .rmg-form-grid-2,
    .rmg-addon-list,
    .rmg-review-grid,
    .rmg-package-grid {
        grid-template-columns: minmax(0, 1fr);
    }

    .rmg-package-card:last-child:nth-child(odd) {
        grid-column: auto;
    }

    .rmg-step-live-note {
        grid-template-columns: auto minmax(0, 1fr);
    }

    .rmg-step-live-note strong {
        grid-column: 1 / -1;
        justify-self: start;
        padding-left: 27px;
    }

    .rmg-order-navigation {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 9px;
    }

    .rmg-order-navigation button {
        min-height: 50px;
        padding: 10px 8px;
        font-size: 10.5px;
    }
}

@media (max-width: 430px) {
    .rmg-order-navigation {
        grid-template-columns: minmax(0, 1fr);
    }

    .rmg-order-navigation button {
        width: 100%;
    }

    .rmg-summary-title > .dashicons {
        width: 38px;
        height: 38px;
    }

    .rmg-summary-live {
        padding: 6px 8px;
    }
}

/* ========================================================================== 
   v0.6.3 — Front-end form readability
   ========================================================================== */
.rmg-shortcode-card,
.rmg-order-app { font-size: 16px; text-rendering: optimizeLegibility; -webkit-font-smoothing: antialiased; }
.rmg-registration-form label:not(.rmg-checkbox-row):not(.rmg-honeypot) { font-size: 15px; }
.rmg-registration-form small { font-size: 13px; }
.rmg-checkbox-row { font-size: 14px; }
.rmg-form-status { font-size: 14px; }

.rmg-order-app .rmg-progress-item strong { font-size: 13px; }
.rmg-order-app .rmg-step-heading p { font-size: 15px; }
.rmg-order-app .rmg-order-form .rmg-field { font-size: 14px; }
.rmg-order-app .rmg-order-form input[type="text"],
.rmg-order-app .rmg-order-form input[type="email"],
.rmg-order-app .rmg-order-form input[type="tel"],
.rmg-order-app .rmg-order-form select { font-size: 15px; }
.rmg-order-app .rmg-step-live-note,
.rmg-order-app .rmg-step-live-note strong,
.rmg-order-app .rmg-summary-live { font-size: 12.5px; }
.rmg-order-app .rmg-state-notice p { font-size: 12.5px; }
.rmg-order-app .rmg-package-badge { font-size: 10px; }
.rmg-order-app .rmg-package-top p,
.rmg-order-app .rmg-package-card li { font-size: 12.5px; }
.rmg-order-app .rmg-summary-title h3 { font-size: 18px; }
.rmg-order-app .rmg-summary-empty > strong { font-size: 16px; }
.rmg-order-app .rmg-summary-empty > p { font-size: 12.5px; }
.rmg-order-app .rmg-summary-row { font-size: 12.5px; }
.rmg-order-app .rmg-summary-content > small { font-size: 11px; }
.rmg-order-app .rmg-summary-security strong { font-size: 12px; }
.rmg-order-app .rmg-summary-security small { font-size: 10.5px; }
.rmg-order-app .rmg-order-navigation button { font-size: 13px; }

@media (max-width: 680px) {
    .rmg-order-app .rmg-order-navigation button { font-size: 12.5px; }
    .rmg-order-app .rmg-step-heading p { font-size: 14px; }
}


/* ========================================================================== 
   RMG Business Platform v0.7.0 — Public Forms / Exact Website Theme
   ========================================================================== */
.rmg-shortcode-card,
.rmg-order-app {
    --rmg-form-primary:#04336B;
    --rmg-form-accent:#0B70BE;
    --rmg-order-primary:#04336B;
    --rmg-order-primary-deep:#02264F;
    --rmg-order-primary-2:#075B96;
    --rmg-order-accent:#0B70BE;
    --rmg-order-accent-2:#075B96;
    --rmg-order-text:#131A23;
    --rmg-order-muted:#66758A;
    --rmg-order-soft:#F7F9FB;
    --rmg-order-soft-2:#EEF4F8;
    --rmg-order-border:#DEE6ED;
    --rmg-order-shadow:0 12px 34px rgba(4,51,107,.055);
    --rmg-order-shadow-lg:0 24px 64px rgba(4,51,107,.09);
    font-family:Poppins,Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
}
.rmg-shortcode-card {
    border:1px solid rgba(4,51,107,.08);
    border-radius:24px;
    background:linear-gradient(180deg,rgba(250,251,252,.98),rgba(247,249,251,.98));
    box-shadow:0 20px 54px rgba(4,51,107,.08);
}
.rmg-shortcode-logo {
    border:0;
    background:linear-gradient(135deg,#0768A8,#04336B 64%,#02264F);
    box-shadow:0 10px 24px rgba(4,51,107,.17);
    font-weight:500;
}
.rmg-shortcode-header h2 { color:#131A23; font-weight:500; letter-spacing:-.035em; }
.rmg-shortcode-header p { color:#66758A; font-size:15px; }
.rmg-registration-form label:not(.rmg-checkbox-row):not(.rmg-honeypot) { color:#2E4355; font-weight:500; }
.rmg-registration-form input[type="text"],
.rmg-registration-form input[type="email"],
.rmg-registration-form input[type="tel"],
.rmg-registration-form input[type="password"] {
    min-height:52px;
    border-color:rgba(4,51,107,.12);
    border-radius:12px;
    background:rgba(255,255,255,.92);
    color:#131A23;
    font-weight:400;
}
.rmg-registration-form input:focus { border-color:rgba(11,112,190,.55); box-shadow:0 0 0 3px rgba(11,112,190,.08),0 8px 22px rgba(4,51,107,.04); }
.rmg-submit-button {
    min-height:54px;
    border-radius:12px;
    background:linear-gradient(135deg,#0768A8,#04336B 64%,#02264F);
    font-weight:500;
    box-shadow:0 12px 26px rgba(4,51,107,.17);
}
.rmg-login-link a { color:#04336B; font-weight:500; }

.rmg-order-app {
    border:1px solid rgba(4,51,107,.075);
    border-radius:30px;
    background:
        radial-gradient(circle at 100% 0,rgba(11,112,190,.075),transparent 27%),
        radial-gradient(circle at 0 100%,rgba(4,51,107,.045),transparent 26%),
        linear-gradient(180deg,rgba(250,251,252,.98),rgba(247,249,251,.98));
    box-shadow:var(--rmg-order-shadow-lg);
}
.rmg-order-app::before { border-color:rgba(11,112,190,.025); box-shadow:0 0 0 38px rgba(11,112,190,.018),0 0 0 75px rgba(11,112,190,.012); }
.rmg-order-app::after { background:radial-gradient(circle,rgba(4,51,107,.06),transparent 68%); }
.rmg-order-header .rmg-shortcode-logo { color:#04336B; font-weight:500; }
.rmg-order-header h2 { color:#131A23; font-weight:500; font-size:clamp(18px,1.7vw,22px); }
.rmg-order-header p { color:#66758A; font-size:12px; }
.rmg-automation-status { color:#526370; border-color:rgba(4,51,107,.07); }
.rmg-automation-status > .dashicons { background:rgba(4,51,107,.055); color:#04336B; }
.rmg-automation-status strong { color:#131A23; font-weight:500; }
.rmg-order-avatar { border-color:#EAF2F7; background:linear-gradient(145deg,#0B70BE,#04336B); box-shadow:0 8px 20px rgba(4,51,107,.16); font-weight:500; }
.rmg-order-progress {
    border-color:rgba(4,51,107,.075);
    border-radius:20px;
    background:rgba(255,255,255,.72);
    box-shadow:0 11px 30px rgba(4,51,107,.045);
}
.rmg-progress-item { color:#76848F; font-weight:400; }
.rmg-progress-item span { width:38px;height:38px;border-color:rgba(4,51,107,.10);background:#F7F9FB;color:#04336B;font-weight:500; }
.rmg-progress-item strong { font-size:13px; font-weight:500; }
.rmg-progress-item.is-active { border-color:rgba(11,112,190,.20); background:#fff; color:#04336B; box-shadow:0 0 0 3px rgba(11,112,190,.055),0 9px 22px rgba(4,51,107,.055); }
.rmg-progress-item.is-active span,
.rmg-progress-item.is-complete span { background:linear-gradient(145deg,#0B70BE,#04336B); box-shadow:0 7px 17px rgba(4,51,107,.15); }
.rmg-progress-item.is-active::before { background:#0B70BE; box-shadow:0 0 0 6px rgba(11,112,190,.08); }
.rmg-order-main,
.rmg-order-summary {
    border-color:rgba(4,51,107,.075);
    border-radius:22px;
    background:rgba(255,255,255,.78);
    box-shadow:0 12px 34px rgba(4,51,107,.05);
    backdrop-filter:blur(13px);
}
.rmg-step-heading > span { background:rgba(4,51,107,.05); color:#04336B; font-weight:500; }
.rmg-step-heading h3 { color:#131A23; font-weight:500; letter-spacing:-.04em; }
.rmg-step-heading h3::after { background:linear-gradient(90deg,#0B70BE,#04336B,transparent); }
.rmg-step-heading p { color:#66758A; font-size:15px; }
.rmg-order-form .rmg-field { color:#2D4254; font-size:13px; font-weight:500; }
.rmg-control-shell > .dashicons { color:#04336B; }
.rmg-order-form input[type="text"],
.rmg-order-form input[type="email"],
.rmg-order-form input[type="tel"],
.rmg-order-form select {
    min-height:59px;
    border-color:rgba(4,51,107,.11);
    border-radius:13px;
    background:rgba(255,255,255,.94);
    color:#131A23;
    font-size:14px;
    font-weight:400;
}
.rmg-order-form input:focus,
.rmg-order-form select:focus { border-color:rgba(11,112,190,.55); box-shadow:0 0 0 3px rgba(11,112,190,.08),0 8px 22px rgba(4,51,107,.04); }
.rmg-package-card,
.rmg-addon-card,
.rmg-expedite-card,
.rmg-review-card,
.rmg-order-terms { border-color:rgba(4,51,107,.08); border-radius:15px; background:rgba(255,255,255,.74); box-shadow:0 7px 20px rgba(4,51,107,.025); }
.rmg-package-card:hover,
.rmg-addon-card:hover,
.rmg-expedite-card:hover { border-color:rgba(4,51,107,.14); box-shadow:0 14px 30px rgba(4,51,107,.065); }
.rmg-package-card.is-selected,
.rmg-addon-card.is-selected,
.rmg-expedite-card.is-selected { border-color:rgba(11,112,190,.35); background:#fff; box-shadow:0 15px 36px rgba(4,51,107,.085); }
.rmg-package-badge { background:linear-gradient(135deg,#0768A8,#04336B); box-shadow:0 7px 16px rgba(4,51,107,.14); font-weight:500; }
.rmg-package-top h4,
.rmg-package-price strong,
.rmg-addon-copy strong,
.rmg-expedite-card strong,
.rmg-review-card h4,
.rmg-summary-title h3 { color:#131A23; font-weight:500; }
.rmg-package-select { border-color:rgba(4,51,107,.10); color:#04336B; font-weight:500; }
.rmg-package-card.is-selected .rmg-package-select { border-color:#04336B; background:linear-gradient(135deg,#0768A8,#04336B); box-shadow:0 10px 20px rgba(4,51,107,.14); }
.rmg-addon-card.is-selected .rmg-addon-check { border-color:#04336B; background:linear-gradient(145deg,#0B70BE,#04336B); box-shadow:0 6px 14px rgba(4,51,107,.14); }
.rmg-order-navigation button { min-height:54px; border-radius:11px; font-size:12px; font-weight:500; }
.rmg-order-clear,
.rmg-order-back { border-color:rgba(4,51,107,.12); color:#04336B; }
.rmg-order-next,
.rmg-order-submit { background:linear-gradient(135deg,#0768A8,#04336B 64%,#02264F); box-shadow:0 12px 24px rgba(4,51,107,.17); }
.rmg-order-summary { top:20px; }
.rmg-summary-title > .dashicons { background:linear-gradient(145deg,#0B70BE,#04336B); box-shadow:0 9px 20px rgba(4,51,107,.15); }
.rmg-summary-total { color:#04336B; }
@media (prefers-reduced-motion:reduce) {
    .rmg-order-app *, .rmg-order-app *::before, .rmg-order-app *::after { animation:none!important; transition:none!important; }
}


/* ========================================================================== 
   v0.8.0 — public forms share the exact RMG light website theme.
   ========================================================================== */
.rmg-order-app,
.rmg-shortcode-card {
    background:linear-gradient(180deg,rgba(250,251,252,.98),rgba(247,249,251,.98));
}
.rmg-order-app { border-color:rgba(4,51,107,.08); box-shadow:0 24px 62px rgba(4,51,107,.09); }
.rmg-order-header { background:rgba(255,255,255,.62); border-bottom-color:rgba(4,51,107,.07); }
.rmg-order-progress { background:rgba(255,255,255,.42); border-bottom-color:rgba(4,51,107,.07); }
.rmg-order-summary { background:rgba(255,255,255,.76); border-color:rgba(4,51,107,.075); }
.rmg-package-card,.rmg-addon-card,.rmg-expedite-card { background:rgba(255,255,255,.78); border-color:rgba(4,51,107,.08); }
.rmg-package-card:hover,.rmg-addon-card:hover,.rmg-expedite-card:hover { border-color:rgba(4,51,107,.15); box-shadow:0 14px 32px rgba(4,51,107,.055); }


/* =========================================================
   v0.8.1 DASHBOARD-CONTROLLED PUBLIC PRICING
========================================================= */
.rmg-pricing-public,.rmg-pricing-public *{box-sizing:border-box}.rmg-pricing-public{--rmg-price-blue:#04336B;--rmg-price-dark:#02264F;--rmg-price-light:#0B70BE;--rmg-price-ink:#131A23;--rmg-price-text:#526370;--rmg-price-muted:#788692;width:100%;margin:0;padding:0;font-family:"Poppins",sans-serif;color:var(--rmg-price-ink);background:linear-gradient(180deg,rgba(250,251,252,.98),rgba(247,249,251,.98));overflow:hidden}.rmg-pricing-public-inner{width:min(100%,1380px);margin:0 auto;padding:clamp(58px,6vw,88px) clamp(18px,4vw,34px) clamp(58px,6vw,88px)}.rmg-pricing-public-head{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(280px,.55fr);gap:clamp(35px,6vw,88px);align-items:end;margin-bottom:clamp(34px,4vw,50px)}.rmg-pricing-public-kicker{display:block;margin-bottom:16px;color:var(--rmg-price-blue);font-size:11px;font-weight:500;letter-spacing:.10em;text-transform:uppercase}.rmg-pricing-public-head h1{max-width:850px;margin:0;color:var(--rmg-price-ink);font-size:clamp(44px,5vw,68px);line-height:1.07;font-weight:500;letter-spacing:-.047em}.rmg-pricing-public-intro p{margin:0 0 14px;color:var(--rmg-price-text);font-size:15px;line-height:1.75}.rmg-pricing-public-intro a{display:inline-flex;gap:7px;align-items:center;color:var(--rmg-price-blue);font-size:12px;font-weight:500;text-decoration:none}.rmg-pricing-public-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.rmg-pricing-public-card{position:relative;display:flex;flex-direction:column;min-width:0;padding:24px;border:1px solid rgba(4,51,107,.075);border-radius:21px;background:rgba(255,255,255,.78);box-shadow:0 12px 34px rgba(4,51,107,.035);transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease}.rmg-pricing-public-card:hover{transform:translateY(-6px);border-color:rgba(4,51,107,.13);box-shadow:0 22px 48px rgba(4,51,107,.085)}.rmg-pricing-public-card.is-featured{border-color:rgba(4,51,107,.16);box-shadow:0 18px 44px rgba(4,51,107,.075)}.rmg-pricing-public-card-top{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:20px}.rmg-pricing-public-code{color:var(--rmg-price-muted);font-size:9px;font-weight:500;letter-spacing:.08em}.rmg-pricing-public-badge{min-height:29px;display:inline-flex;align-items:center;padding:0 10px;border-radius:999px;color:#fff;background:linear-gradient(135deg,#0B70BE,#04336B);font-size:9px;font-weight:500}.rmg-pricing-public-card h2{margin:0 0 12px;color:var(--rmg-price-ink);font-size:26px;line-height:1.2;font-weight:500;letter-spacing:-.03em}.rmg-pricing-public-price{display:grid;gap:5px;margin-bottom:16px}.rmg-pricing-public-price strong{color:var(--rmg-price-blue);font-size:clamp(38px,3.2vw,48px);line-height:1;font-weight:500;letter-spacing:-.045em}.rmg-pricing-public-price span{color:var(--rmg-price-muted);font-size:10px}.rmg-pricing-public-card>p{margin:0 0 16px;color:var(--rmg-price-text);font-size:13px;line-height:1.65}.rmg-pricing-public-processing{margin-bottom:17px;padding:9px 11px;border-radius:10px;background:rgba(4,51,107,.045);color:var(--rmg-price-blue);font-size:10px;font-weight:500}.rmg-pricing-public-card ul{display:grid;gap:10px;margin:0 0 22px;padding:18px 0 0;list-style:none;border-top:1px solid rgba(4,51,107,.075)}.rmg-pricing-public-card li{display:grid;grid-template-columns:22px minmax(0,1fr);gap:8px;align-items:start;color:var(--rmg-price-text);font-size:12px;line-height:1.5}.rmg-pricing-public-card li span{width:20px;height:20px;display:grid;place-items:center;border-radius:50%;color:var(--rmg-price-blue);background:rgba(4,51,107,.055);font-size:9px}.rmg-pricing-public-cta{min-height:51px;margin-top:auto;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 10px 0 17px;border-radius:11px;color:#fff!important;background:linear-gradient(135deg,#0768A8,#04336B 63%,#02264F);text-decoration:none!important;font-size:12px;font-weight:500;box-shadow:0 11px 24px rgba(4,51,107,.15);transition:transform .24s ease,box-shadow .24s ease}.rmg-pricing-public-cta:hover{transform:translateY(-2px);box-shadow:0 16px 31px rgba(4,51,107,.22)}.rmg-pricing-public-cta b{width:33px;height:33px;display:grid;place-items:center;border-radius:9px;color:var(--rmg-price-blue);background:#fff;font-size:13px;font-weight:500}.rmg-pricing-public-addons{margin-top:clamp(42px,5vw,60px);padding-top:clamp(28px,3vw,38px);border-top:1px solid rgba(4,51,107,.08)}.rmg-pricing-public-addons-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,.55fr);gap:30px;align-items:end;margin-bottom:22px}.rmg-pricing-public-addons-head span{display:block;margin-bottom:7px;color:var(--rmg-price-blue);font-size:10px;font-weight:500;letter-spacing:.08em;text-transform:uppercase}.rmg-pricing-public-addons-head h2{margin:0;color:var(--rmg-price-ink);font-size:30px;font-weight:500;letter-spacing:-.035em}.rmg-pricing-public-addons-head p{margin:0;color:var(--rmg-price-muted);font-size:12px;line-height:1.6}.rmg-pricing-public-addon-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.rmg-pricing-public-addon-grid article{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:20px;align-items:center;padding:17px 18px;border:1px solid rgba(4,51,107,.065);border-radius:14px;background:rgba(255,255,255,.6)}.rmg-pricing-public-addon-grid strong{display:block;color:#314659;font-size:13px;font-weight:500}.rmg-pricing-public-addon-grid p{margin:4px 0 0;color:var(--rmg-price-muted);font-size:10px;line-height:1.45}.rmg-pricing-public-addon-grid article>span{color:var(--rmg-price-blue);font-size:18px;font-weight:500}.rmg-pricing-public-note{display:grid;grid-template-columns:auto minmax(0,1fr);gap:18px;align-items:center;margin-top:24px;padding:16px 18px;border:1px solid rgba(4,51,107,.065);border-radius:14px;background:rgba(4,51,107,.035)}.rmg-pricing-public-note strong{color:var(--rmg-price-blue);font-size:11px;font-weight:500;text-transform:uppercase;letter-spacing:.07em}.rmg-pricing-public-note p{margin:0;color:var(--rmg-price-text);font-size:11px;line-height:1.55}
@media(max-width:900px){.rmg-pricing-public-head,.rmg-pricing-public-addons-head{grid-template-columns:1fr}.rmg-pricing-public-grid{grid-template-columns:1fr}.rmg-pricing-public-card{max-width:680px}.rmg-pricing-public-addon-grid{grid-template-columns:1fr}}
@media(max-width:620px){.rmg-pricing-public-inner{padding:40px 12px 44px}.rmg-pricing-public-head h1{font-size:clamp(36px,10vw,46px)}.rmg-pricing-public-card{padding:20px 17px;border-radius:17px}.rmg-pricing-public-card h2{font-size:23px}.rmg-pricing-public-addons-head h2{font-size:25px}.rmg-pricing-public-note{grid-template-columns:1fr;gap:7px}}
