#modules-pricing { display: flex; flex-direction: column; width: 100%; max-width: 100%; overflow-x: clip; color: #0d1729; background: #fff; container: modules-pricing / inline-size; }
#modules-pricing .rail { width: min(calc(100% - 32px), 760px); margin-inline: auto; }
#modules-pricing .rail, #modules-pricing .rail > *, #modules-pricing section, #modules-pricing article { min-width: 0; }
#modules-pricing > .mp-hero { order: 0; }
#modules-pricing > .mp-profiles-section { order: 1; }
#modules-pricing > .mp-catalogue { order: 2; }
#modules-pricing > .mp-infrastructure { order: 3; }
#modules-pricing > .mp-boundaries { order: 4; }
#modules-pricing > .mp-delivery { order: 5; }
#modules-pricing > .mp-payment-section { order: 6; }
#modules-pricing > .mp-next { order: 7; }
.mp-hero { padding: var(--mobile-hero-top) 0 var(--mobile-hero-bottom); border-bottom: 1px solid #d8dedb; background: #f7f8f5; }
.mp-hero-grid { display: grid; grid-template-columns: minmax(0, 1fr); gap: 28px; }
.mp-hero-copy, .mp-hero-side { width: 100%; min-width: 0; }
.mp-hero-side { display: grid; grid-template-columns: minmax(0, 1fr); gap: 14px; }
.mp-hero h1 { max-width: 680px; margin: 0 0 18px; font-size: var(--own-site-hero-title-font-size); line-height: var(--own-site-hero-title-line-height);font-weight:var(--own-site-hero-title-font-weight);letter-spacing:var(--own-site-hero-title-letter-spacing); }
.mp-hero p:not(.eyebrow) { max-width: 680px; font-size: 17px; line-height: 1.55; }
.mp-hero-price { display: block; margin: 20px 0 4px; color: #075b3a; font-size: 20px; font-weight: 800; }
.mp-hero-actions { display: grid; grid-template-columns: minmax(0, 1fr); gap: 12px; }
.mp-hero-actions .button { width: 100%; min-width: 0; }
.mp-core { --mp-core-gap: 10px; position: relative; display: grid; grid-template-columns: minmax(0, 1fr); align-items: start; gap: var(--mp-core-gap); padding: 26px; border: 1px solid #aebdb5; border-radius: 8px; background: #fff; box-shadow: 0 14px 38px rgba(13, 45, 34, .08); }
.mp-core::after { position: absolute; inset: 9px 9px auto auto; display: grid; width: 34px; height: 34px; place-items: center; border: 1px solid #a8bbb1; border-radius: 50%; color: #075b3a; content: "\2713"; font-size: 18px; font-weight: 800; }
.mp-core h2 { grid-column: auto; grid-row: auto; margin: 0 40px 0 0; font-size: var(--own-site-card-title-font-size); line-height: var(--own-site-card-title-line-height); font-weight: var(--own-site-card-title-font-weight); letter-spacing: var(--own-site-card-title-letter-spacing); }
.mp-core > strong { grid-column: auto; grid-row: auto; color: #075b3a; font-size: 38px; }
.mp-core p { grid-column: auto; grid-row: auto; margin: 4px 0 0; color: #38475d; font-size: 15px; line-height: 1.5; }
.mp-lock { min-width: 0; margin-bottom: calc(var(--own-site-eyebrow-heading-gap) - var(--mp-core-gap)); padding-right: 38px; }
.mp-section { width: 100%; padding: 46px 0; }
.mp-section h2 { margin: 0 0 14px; font-size: var(--own-site-section-title-font-size); line-height: var(--own-site-section-title-line-height); font-weight: var(--own-site-section-title-font-weight); letter-spacing: var(--own-site-section-title-letter-spacing); }
.mp-intro { max-width: 680px; color: #536076; font-size: 16px; line-height: 1.55; }
.mp-profiles-section { padding: 38px 0; border-bottom: 1px solid #d8dedb; }
.mp-profiles-section > .rail { display: grid; grid-template-columns: minmax(0, 1fr); align-items: start; row-gap: 0; }
.mp-profiles-section h2 { max-width: none; margin-bottom: 0; font-size: var(--own-site-section-title-font-size); line-height: var(--own-site-section-title-line-height); font-weight: var(--own-site-section-title-font-weight); letter-spacing: var(--own-site-section-title-letter-spacing); }
.mp-profiles-section .mp-intro { display: none; }
.mp-profile-selector { position: relative; margin-top: 22px; }
.mp-profile > .mp-customised { position: absolute; z-index: 2; top: 0; right: 12px; margin: 0; padding: 5px 10px; transform: translateY(-50%); border: 1px solid #0b6b52; border-radius: 4px; color: #0b6b52; background: #fff; font-size: 12px; font-weight: 750; line-height: normal; white-space: nowrap; }
.mp-profiles { display: grid; grid-template-columns: minmax(0, 1fr); gap: 12px; }
.mp-profile { position: relative; display: grid; gap: 6px; width: 100%; min-height: 0; padding: 18px; border: 1px solid #d7ddda; border-radius: 8px; background: #fff; cursor: pointer; }
.mp-profile:first-child,
.mp-profile:last-child { border-radius: 8px; }
.mp-profile:last-child { border-right: 1px solid #d7ddda; }
.mp-profile input { position: absolute; opacity: 0; }
.mp-profile span { font-size: var(--own-site-card-title-font-size); line-height: var(--own-site-card-title-line-height); font-weight: var(--own-site-card-title-font-weight); letter-spacing: var(--own-site-card-title-letter-spacing); }
.mp-profile b { display: block; width: max-content; margin: 7px 0 0; padding: 4px 7px; border-radius: 3px; color: #fff; background: #075b3a; font-size: 10px; text-transform: uppercase; }
.mp-profile small { color: #536076; font-size: 13px; line-height: 1.4; }
.mp-profile.is-selected { border-color: #075b3a; box-shadow: inset 0 0 0 1px #075b3a; background: #eef7f1; }
.mp-profile:focus-within { outline: 3px solid rgba(23, 105, 255, .28); outline-offset: -3px; }
.mp-catalogue { background: #f8f9f7; }
.mp-layout { display: grid; grid-template-columns: minmax(0, 1fr); gap: 28px; }
.mp-catalogue-main { min-width: 0; }
.mp-module-grid { display: grid; grid-template-columns: minmax(0, 1fr); gap: 14px; margin-top: 26px; }
.mp-module { display: flex; flex-direction: column; gap: 2px; min-height: 0; padding: 20px; border: 1px solid #cbd4cf; border-radius: 8px; background: #fff; }
.mp-module:has(input:checked) { border-color: #075b3a; box-shadow: inset 0 0 0 1px #075b3a; }
.mp-module:focus-within { outline: 3px solid rgba(23, 105, 255, .22); outline-offset: 2px; }
.mp-module > label { display: flex; gap: 11px; align-items: flex-start; cursor: pointer; }
.mp-module > label input { flex: 0 0 auto; width: 19px; height: 19px; margin-top: 2px; accent-color: #075b3a; }
.mp-module > label span { display: grid; flex: 1; gap: 4px; font-size: 17px; line-height: 1.25; }
.mp-module > label strong { color: #075b3a; font-size: 15px; white-space: nowrap; }
.mp-module > p { color: #38475d; font-size: 14px; line-height: 1.45; }
.mp-static { margin-top: auto; padding-top: 12px; border-top: 1px solid #e1e5e2; font-size: 12px !important; }
.mp-customer-admin-label { color: #075b3a; font-weight: 750; }
.mp-customer-admin-label { display: inline-block; margin: 4px 0; font-size: 11px; }
.mp-view-example { align-self: flex-start; margin-top: 14px; padding: 9px 12px; border: 1px solid #075b3a; border-radius: 5px; color: #075b3a; background: #fff; font: inherit; font-size: 13px; font-weight: 750; cursor: pointer; }
.mp-summary { position: static; padding: 24px; border: 1px solid #aebdb5; border-radius: 8px; background: #fff; }
.mp-summary h2 { margin: 0 0 10px; font-size: var(--own-site-card-title-font-size); line-height: var(--own-site-card-title-line-height); font-weight: var(--own-site-card-title-font-weight); letter-spacing: var(--own-site-card-title-letter-spacing); }
.mp-summary dl { margin: 16px 0; }
.mp-summary dl div, .mp-summary fieldset label { display: flex; justify-content: space-between; gap: 14px; padding: 10px 8px; border-bottom: 1px solid #d9dfdc; }
.mp-summary .mp-estimated-total, .mp-recurring-total { margin: 10px 0 0; padding: 13px 12px; border: 0; border-radius: 5px; color: #075b3a; background: #e4f3ea; font-weight: 800; }
.mp-recurring-total { display: flex; align-items: center; justify-content: space-between; gap: 14px; }
.mp-recurring-total > span { min-width: 0; }
.mp-recurring-total > b { margin-left: auto; text-align: right; white-space: nowrap; }
.mp-summary dd { margin: 0; font-weight: 800; text-align: right; }
.mp-summary fieldset { margin: 18px 0; padding: 0; border: 0; }
.mp-summary legend { margin-bottom: 8px; font-weight: 800; }
.mp-preview-note h3 { margin-bottom: 8px; font-weight: var(--own-site-small-title-font-weight); font-size: var(--own-site-small-title-font-size); line-height: var(--own-site-small-title-line-height); letter-spacing: var(--own-site-small-title-letter-spacing); }
.mp-summary input { width: 18px; height: 18px; accent-color: #075b3a; }
.mp-preview-note { margin-top: 22px; padding-top: 18px; border-top: 1px solid #cdd6d1; }
.mp-preview-note p { margin: 10px 0; color: #536076; font-size: 12px; line-height: 1.5; }
.mp-tax { font-size: 12px; line-height: 1.45; }
.mp-status { padding: 10px; border-radius: 5px; color: #8b2f18; background: #fff0e9; font-size: 12px; font-weight: 750; }
.mp-summary label.is-muted { color: #7b8580; background: #f4f5f4; }
.mp-infrastructure { background: #fff; }
.mp-infrastructure.is-embedded { margin-top: 44px; padding: 42px 0 0; border-top: 1px solid #cbd4cf; background: transparent; }
#modules-pricing .mp-infrastructure.is-embedded > .rail {
  width: 100%;
  margin-inline: 0;
}
.mp-source-stack { display: grid; gap: 16px; margin-top: 24px; }
.mp-source-stack fieldset { min-width: 0; margin: 0; padding: 18px; border: 1px solid #c7d0cb; border-radius: 8px; background: #fff; }
.mp-source-stack legend { padding: 0 6px; font-size: 17px; font-weight: 800; }
.mp-source-stack > fieldset > label { display: flex; gap: 11px; align-items: flex-start; margin: 11px 0; padding: 14px; border: 1px solid #d7ddda; border-radius: 7px; cursor: pointer; }
.mp-source-stack input[type="radio"] { flex: 0 0 auto; width: 19px; height: 19px; margin-top: 2px; accent-color: #075b3a; }
.mp-source-stack label span { display: grid; gap: 5px; }
.mp-source-stack label small, .mp-domain-request small { color: #536076; line-height: 1.45; }
.mp-domain-request { display: grid; gap: 7px; margin-top: 14px; }
.mp-domain-request[hidden], .mp-source-review [data-domain-review-row][hidden] { display: none; }
.mp-domain-request > label { font-weight: 800; }
.mp-domain-request input { width: 100%; min-height: 46px; padding: 10px 12px; border: 1px solid #aebdb5; border-radius: 5px; font: inherit; }
.mp-domain-request input[aria-invalid="true"] { border-color: #b53418; }
.mp-source-error { margin: 8px 0 0; color: #a42b12; font-weight: 700; }
.mp-source-review { margin-top: 16px; padding: 18px; border: 1px solid #aebdb5; border-radius: 8px; background: #f5f8f6; }
.mp-source-review h3 { margin: 0 0 10px; }
.mp-source-review dl { display: grid; gap: 12px; margin: 0; }
.mp-source-review dl div { display: grid; gap: 4px; }
.mp-source-review dt { color: #536076; font-size: 13px; }
.mp-source-review dd { margin: 0; font-weight: 800; }
.mp-source-review dd.is-required { color: #a42b12; }
.mp-viewer-open, .mp-confirm-open { overflow: hidden; }
.mp-profile-confirm { width: min(520px, calc(100% - 24px)); max-height: calc(100vh - 24px); max-height: calc(100dvh - 24px); margin: auto; padding: 0; overflow: auto; overscroll-behavior: contain; border: 1px solid #9eada5; border-radius: 10px; color: #0d1729; background: #fff; box-shadow: 0 20px 54px rgba(7, 32, 24, .28); }
.mp-profile-confirm::backdrop { background: rgba(7, 32, 24, .7); backdrop-filter: blur(2px); }
.mp-profile-confirm-inner { padding: 22px; }
#modules-pricing .mp-profile-confirm .eyebrow { margin: 0; }
.mp-profile-confirm h2 { margin: 11px 0; font-size: var(--own-site-section-title-font-size); line-height: var(--own-site-section-title-line-height); font-weight: var(--own-site-section-title-font-weight); letter-spacing: var(--own-site-section-title-letter-spacing); }
.mp-profile-confirm [data-profile-confirm-description] { margin: 0; color: #536076; font-size: 15px; line-height: 1.5; }
.mp-profile-confirm-actions { display: grid; gap: 10px; margin-top: 22px; }
.mp-profile-confirm-actions button { width: 100%; min-height: 46px; padding: 11px 14px; border-radius: 5px; font: inherit; font-weight: 800; cursor: pointer; }
.mp-profile-confirm-keep { border: 1px solid #075b3a; color: #075b3a; background: #fff; }
.mp-profile-confirm-use { border: 1px solid #1769ff; color: #fff; background: #1769ff; }
.mp-profile-confirm-actions button:focus-visible { outline: 3px solid rgba(23, 105, 255, .35); outline-offset: 2px; }
.mp-boundaries { background: #073d2a; color: #fff; }
.mp-boundary-grid { display: grid; grid-template-columns: minmax(0, 1fr); margin-top: 26px; border: 1px solid #5f8777; border-radius: 8px; overflow: hidden; }
.mp-boundary-grid article { padding: 24px; border-bottom: 1px solid #5f8777; }
.mp-boundary-grid article:last-child { border-bottom: 0; }
.mp-boundary-grid h3 { margin: 0 0 14px; font-size: var(--own-site-card-title-font-size); line-height: var(--own-site-card-title-line-height); font-weight: var(--own-site-card-title-font-weight); letter-spacing: var(--own-site-card-title-letter-spacing); }
.mp-boundary-grid ul { margin: 0; padding-left: 19px; }
.mp-boundary-grid li { margin: 8px 0; line-height: 1.42; }
.mp-delivery, .mp-payment-section { background: #f1f4f2; }
.mp-delivery { padding-bottom: 0; }
.mp-delivery-paths { display: grid; grid-template-columns: minmax(0, 1fr); gap: 16px; margin-top: 26px; }
.mp-delivery-paths article, .mp-payment-milestones { padding: 22px; border: 1px solid #ccd4d0; border-radius: 8px; background: #fff; }
.mp-delivery-paths h3, .mp-payment-milestones h3 { margin: 0 0 10px; font-size: var(--own-site-card-title-font-size); line-height: var(--own-site-card-title-line-height); font-weight: var(--own-site-card-title-font-weight); letter-spacing: var(--own-site-card-title-letter-spacing); }
.mp-delivery-paths p, .mp-delivery-paths strong, .mp-start-conditions, .mp-payment-milestones p { line-height: 1.55; }
.mp-delivery-paths strong { display: block; color: #075b3a; }
.mp-payment-section { padding-top: 46px; }
.mp-payment-milestones p { margin: 0; }
.mp-start-conditions, .mp-delivery-note { margin: 22px 0 0; }
.mp-delivery-note { color: #536076; line-height: 1.6; }
.mp-next-inner { display: grid; gap: 22px; padding: 28px; border-radius: 8px; color: #fff; background: #073d2a; }
#modules-pricing .mp-next-inner .eyebrow { color: #dff4e8; }
#modules-pricing .mp-next-inner .eyebrow::before { background: #6fa5ff; }
#modules-pricing .mp-boundaries .eyebrow { color: #dff4e8; }
#modules-pricing .mp-boundaries .eyebrow::before { background: #6fa5ff; }
.mp-next-inner h2, .mp-next-inner p { margin-top: 0; }
.mp-next-inner p { line-height: 1.5; }
.mp-next .button { width: 100%; }
.mp-example-viewer { width: calc(100% - 16px); height: calc(100vh - 16px); max-height: calc(100vh - 16px); padding: 0; overflow: hidden; border: 1px solid #9eada5; border-radius: 8px; color: #0d1729; background: #fff; }
.mp-example-viewer::backdrop { background: rgba(7, 32, 24, .72); }
.mp-example-viewer-inner { position: relative; display: grid; grid-template-rows: auto minmax(0, 1fr) auto; gap: 8px; height: 100%; padding: 0 48px 10px; overflow: hidden; }
.mp-example-toolbar { display: flex; justify-content: space-between; align-items: center; min-height: 54px; margin-inline: -48px; padding: 5px 8px 5px 12px; border-bottom: 1px solid #d5dcd8; background: #fff; }
.mp-example-toolbar > button, .mp-example-info-button, .mp-example-info [data-example-info-close] { display: grid; width: 44px; height: 44px; padding: 0 !important; place-items: center; border: 1px solid #075b3a; border-radius: 50% !important; color: #075b3a; background: #fff; font: inherit; font-size: 24px; font-weight: 750; line-height: 1; }
.mp-example-toolbar > button > span, .mp-example-info [data-example-info-close] > span { position: relative; display: block; width: 100%; height: 100%; overflow: hidden; color: transparent; font-size: 0; }
.mp-example-toolbar > button > span::before, .mp-example-toolbar > button > span::after, .mp-example-info [data-example-info-close] > span::before, .mp-example-info [data-example-info-close] > span::after { position: absolute; top: 50%; left: 50%; width: 16px; height: 2px; border-radius: 999px; background: #075b3a; content: ""; transform-origin: center; }
.mp-example-toolbar > button > span::before, .mp-example-info [data-example-info-close] > span::before { transform: translate(-50%, -50%) rotate(45deg); }
.mp-example-toolbar > button > span::after, .mp-example-info [data-example-info-close] > span::after { transform: translate(-50%, -50%) rotate(-45deg); }
.mp-example-position, .mp-example-viewer-classification { color: #075b3a; font-weight: 750; }
.mp-example-page { min-width: 0; min-height: 0; opacity: 1; transform: translateX(0); transition: opacity 180ms ease, transform 180ms ease; }
.mp-example-page[hidden] { display: none; }
.mp-example-page.is-slide-out-forward { opacity: 0; transform: translateX(-110%); }
.mp-example-page.is-slide-out-backward { opacity: 0; transform: translateX(110%); }
.mp-example-page.is-slide-in-forward { opacity: 0; transform: translateX(110%); transition: none; }
.mp-example-page.is-slide-in-backward { opacity: 0; transform: translateX(-110%); transition: none; }
.mp-example-overview:not([hidden]) { display: grid; grid-template-rows: auto auto auto; align-content: start; overflow: hidden; }
.mp-example-overview-copy { overflow: hidden; }
.mp-example-overview-copy h2 { margin: 6px 0 9px; font-size: var(--own-site-section-title-font-size); line-height: var(--own-site-section-title-line-height); font-weight: var(--own-site-section-title-font-weight); letter-spacing: var(--own-site-section-title-letter-spacing); }
.mp-example-overview-copy > p:not(.eyebrow, .mp-static) { color: #38475d; font-size: 14px; line-height: 1.45; }
.mp-example-overview-copy .mp-static { margin: 10px 0; font-size: 12px; }
.mp-example-page > h3 { margin: 10px 0 7px; font-size: var(--own-site-small-title-font-size); line-height: var(--own-site-small-title-line-height); font-weight: var(--own-site-small-title-font-weight); letter-spacing: var(--own-site-small-title-letter-spacing); }
.mp-example-thumbnails { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 6px; height: clamp(190px, 36vh, 300px); min-height: 0; }
.mp-example-thumbnails button { display: grid; grid-template-rows: minmax(0, 1fr) auto; gap: 5px; min-width: 0; min-height: 0; padding: 5px; border: 1px solid #b8c4bd; border-radius: 6px; color: #0d1729; background: #f6f8f6; font: inherit; font-size: 11px; font-weight: 750; text-align: left; }
.mp-example-thumbnails button:focus-visible { outline: 3px solid #1769ff; outline-offset: 2px; }
.mp-example-thumbnails img { width: 100%; height: 100%; min-height: 0; object-fit: contain; background: #fff; }
.mp-example-detail { position: relative; display: grid; grid-template-rows: auto minmax(0, 1fr); gap: 7px; }
.mp-example-heading { display: grid; grid-template-columns: minmax(0, auto) 44px; gap: 6px; align-items: center; }
.mp-example-heading h2 { margin: 0; font-size: var(--own-site-card-title-font-size); line-height: var(--own-site-card-title-line-height); font-weight: var(--own-site-card-title-font-weight); letter-spacing: var(--own-site-card-title-letter-spacing); }
.mp-example-viewer-brand, .mp-example-viewer-classification, .mp-customer-admin-label { grid-column: 1 / -1; margin: 0; color: #536076; font-size: 12px; }
.mp-example-info { position: absolute; z-index: 12; top: 48px; left: 0; width: 100%; max-height: 60vh; padding: 16px 52px 16px 16px; overflow: auto; border: 1px solid #aebdb5; border-radius: 8px; background: #fff; box-shadow: 0 14px 34px rgba(13, 45, 34, .2); }
.mp-example-info[hidden] { display: none; }
.mp-example-info > * { margin: 0 0 8px; }
.mp-example-info [data-example-info-close] { position: absolute; top: 6px; right: 6px; }
.mp-example-media { display: grid; grid-template-rows: minmax(0, 1fr) auto; min-height: 0; margin: 0; overflow: hidden; border: 1px solid #d5dcd8; border-radius: 8px; background: #f4f6f4; }
.mp-example-canvas { position: relative; width: 100%; height: 100%; overflow: hidden; cursor: grab; touch-action: none; user-select: none; }
.mp-example-canvas.is-dragging { cursor: grabbing; }
.mp-example-media img { position: absolute; top: 0; left: 0; width: 100%; max-width: none; height: auto; transform: translate3d(0, var(--mp-pan-y, 0), 0); will-change: transform; user-select: none; }
.mp-example-media figcaption { margin: 6px; padding: 8px; border: 1px solid #c5d2cb; border-radius: 6px; color: #26374d; background: #eef5f1; font-size: 11px; line-height: 1.35; }
.mp-example-rail { position: absolute; z-index: 10; top: 50%; display: grid; width: 44px; min-height: 132px; padding: 0 !important; place-items: center; border: 1px solid #b8c4bd !important; border-radius: 8px !important; color: #075b3a; background: rgba(255, 255, 255, .94) !important; transform: translateY(-50%); }
.mp-example-rail:disabled { color: #8b9690; border-color: #c8cfcb !important; background: #edf0ee !important; opacity: .8; }
.mp-example-rail span { font-size: 40px; font-weight: 300; line-height: 1; }
.mp-example-rail-previous { left: 2px; }
.mp-example-rail-next { right: 2px; }
.mp-example-pagination { display: flex; justify-content: center; gap: 7px; }
.mp-example-pagination button { display: grid; width: 40px; height: 40px; padding: 0; place-items: center; border: 1px solid #075b3a; border-radius: 50%; color: #075b3a; background: #fff; font: inherit; font-weight: 800; }
.mp-example-pagination button.is-current { color: #fff; background: #075b3a; }
@media (prefers-reduced-motion: reduce) {
  .mp-example-page { transition: none; }
}
@container modules-pricing (min-width: 720px) {
  .mp-hero-actions { grid-template-columns: minmax(0, 220px); }
  .mp-core { grid-template-columns: minmax(180px, .45fr) minmax(280px, 1fr); align-items: center; }
  .mp-core h2 { grid-column: 1; }
  .mp-core > strong { grid-column: 1; }
  .mp-core p { grid-column: 2; grid-row: 1 / span 3; }
  .mp-module-grid, .mp-delivery-paths { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .mp-next .button { width: auto; }
}

/*
 * The editor can force the mobile presentation inside a wide desktop
 * viewport. Keep this final layer after every container query so the canvas
 * profile, rather than the host browser width, owns all page geometry.
 */
:is(
  [data-presentation-profile="mobile"] #modules-pricing,
  #modules-pricing[data-presentation-profile="mobile"]
) {
  width: 100% !important;
  min-width: 0 !important;
  max-width: 100% !important;
  overflow-x: clip !important;
}

:is(
  [data-presentation-profile="mobile"] #modules-pricing,
  #modules-pricing[data-presentation-profile="mobile"]
) :where(
  .rail,
  .mp-hero-grid,
  .mp-hero-copy,
  .mp-hero-side,
  .mp-hero-actions,
  .mp-core,
  .mp-profiles-section > .rail,
  .mp-profile-selector,
  .mp-profiles,
  .mp-catalogue > .mp-layout,
  .mp-catalogue-main,
  .mp-module-grid,
  .mp-summary,
  .mp-source-stack,
  .mp-boundary-grid,
  .mp-delivery-paths,
  .mp-payment-milestones,
  .mp-next-inner
) {
  min-width: 0 !important;
  max-width: 100% !important;
}

:is(
  [data-presentation-profile="mobile"] #modules-pricing,
  #modules-pricing[data-presentation-profile="mobile"]
) :where(
  .mp-hero-grid,
  .mp-hero-actions,
  .mp-core,
  .mp-profiles-section > .rail,
  .mp-profile-selector,
  .mp-profiles,
  .mp-catalogue > .mp-layout,
  .mp-module-grid,
  .mp-boundary-grid,
  .mp-delivery-paths,
  .mp-next-inner
) {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) !important;
}

:is(
  [data-presentation-profile="mobile"] #modules-pricing,
  #modules-pricing[data-presentation-profile="mobile"]
) :where(
  .mp-core h2,
  .mp-core > strong,
  .mp-core > p,
  .mp-profile-selector,
  .mp-profiles,
  .mp-catalogue-main,
  .mp-summary
) {
  grid-column: auto !important;
  grid-row: auto !important;
}

:is(
  [data-presentation-profile="mobile"] #modules-pricing,
  #modules-pricing[data-presentation-profile="mobile"]
) .mp-core > p {
  padding-right: 0 !important;
}

:is(
  [data-presentation-profile="mobile"] #modules-pricing,
  #modules-pricing[data-presentation-profile="mobile"]
) .mp-customised {
  position: absolute !important;
  top: 0 !important;
  right: 12px !important;
  margin: 0 !important;
  transform: translateY(-50%) !important;
}

:is(
  [data-presentation-profile="mobile"] #modules-pricing,
  #modules-pricing[data-presentation-profile="mobile"]
) .mp-summary {
  position: static !important;
  z-index: auto !important;
  top: auto !important;
  right: auto !important;
  bottom: auto !important;
  left: auto !important;
  width: 100% !important;
  align-self: stretch !important;
}

:is(
  [data-presentation-profile="mobile"] #modules-pricing,
  #modules-pricing[data-presentation-profile="mobile"]
) .mp-next-inner {
  align-items: stretch !important;
}

:is(
  [data-presentation-profile="mobile"] #modules-pricing,
  #modules-pricing[data-presentation-profile="mobile"]
) .mp-next .button {
  width: 100% !important;
}
