/* Semantic mappings for the remaining approved Homepage treatments. */
.s3-numbered-section--standard .s3-numbered-section__body { max-width: 760px; }
.s3-numbered-section--full .s3-numbered-section__body { max-width: none; }
.s3-numbered-section--neutral { background: #eae7df; border-top: 1px solid #d3cec2; --s3-section-number: #dad5c8; }
.s3-numbered-section--neutral .s3-numbered-section__inner { padding-block: 92px; }
.s3-numbered-section--gold { background: #f6ebd2; border-top: 1px solid #e4d4a9; --s3-section-number: #ebdbb1; }
.s3-numbered-section--gold .s3-numbered-section__inner { padding-block: 76px; }
.s3-numbered-section--system .s3-numbered-section__label { line-height: 1.45; }
.s3-numbered-section--map { border: 0; max-width: 1240px; }
.s3-numbered-section--map .s3-numbered-section__inner { padding: 44px 40px 84px; }
.s3-numbered-section--map .s3-numbered-section__label { font-size: 12px; line-height: 1.5; letter-spacing: .06em; padding-top: 6px; }
.s3-module-rows, .s3-proof-stories { display: grid; gap: 0; margin: 0; position: relative; }
.s3-module-row { border-top: 1px solid #dcd9d2; padding: 30px 0 34px; display: grid; grid-template-columns: minmax(0,1fr) 210px; column-gap: 36px; align-items: start; margin: 0; }
.s3-module-row:first-child, .s3-proof-story:first-child { border-top-color: #101a26; }
.s3-module-row:last-of-type { border-bottom: 1px solid #101a26; }
.s3-module-row__body { min-width: 0; }
.is-style-strive3-system-intro { font: 400 19px/1.65 'Source Serif 4', Georgia, serif; margin: 0 0 56px; max-width: 720px; }
.s3-module-row__price { border-left: 1px solid #dcd9d2; padding-left: 22px; font: 400 13px/1.8 'IBM Plex Mono', monospace; letter-spacing: .04em; color: #101a26; }
.is-style-strive3-module-kicker { font: 400 12.5px/1.65 'IBM Plex Mono', monospace; letter-spacing: .09em; text-transform: uppercase; color: #5a626e; margin: 0 0 10px; }
.is-style-strive3-module-heading { font: 700 30px/1.2 'Archivo Narrow', sans-serif; margin: 0 0 16px; }
.is-style-strive3-module-body { font: 400 19px/1.65 'Source Serif 4', Georgia, serif; margin: 0 0 16px; }
.s3-module-row__body > :last-child { margin-bottom: 0; }
.is-style-strive3-bundle-note { margin: 34px 0 0; max-width: 720px; display: grid; gap: 8px; }
.is-style-strive3-bundle-note > * { margin: 0; }
.is-style-strive3-bundle-note strong { font-weight: 600; }
.s3-numbered-section .wp-block-buttons { margin: 0; display: block; font: 400 19px/1.65 'Source Serif 4', Georgia, serif; }
.s3-numbered-section .wp-block-button { display: inline-block; margin: 0; }
.s3-numbered-section .is-style-strive3-primary .wp-block-button__link { display: inline-block; }
.s3-numbered-section .wp-block-buttons.is-style-strive3-spaced-actions { margin-top: 38px; }
.is-style-strive3-definitions-intro { font: 400 19px/1.65 'Source Serif 4', Georgia, serif; margin: 0 0 48px; max-width: 720px; }
.s3-measure-definitions { margin: 0; padding: 0; display: grid; gap: 0; border-top: 1px solid #101a26; position: relative; }
.s3-measure-definition { border-bottom: 1px solid #cfc9bb; padding: 20px 0; display: grid; grid-template-columns: minmax(0,270px) minmax(0,1fr); column-gap: 32px; margin: 0; }
.s3-measure-definition:last-of-type { border-bottom-color: #101a26; }
.s3-measure-definition dt { font: 500 13px/1.5 'IBM Plex Mono', monospace; letter-spacing: .07em; text-transform: uppercase; color: #101a26; margin: 0; }
.s3-measure-definition dd { margin: 0; font: 400 13.5px/1.75 'IBM Plex Mono', monospace; color: #101a26; }
.is-style-strive3-report-intro { font: 400 19px/1.65 'Source Serif 4', Georgia, serif; margin: 48px 0 20px; max-width: 720px; }
.wp-block-quote.is-style-strive3-evidence { margin: 0 0 24px; border-left: 2px solid #1f5c4f; padding: 4px 0 4px 24px; max-width: 720px; }
.is-style-strive3-quote-text { font: italic 400 21px/1.6 'Source Serif 4', Georgia, serif; margin: 0; }
.is-style-strive3-closing-note { font: 400 19px/1.65 'Source Serif 4', Georgia, serif; margin: 0; max-width: 720px; }
.s3-proof-story { border-top: 1px solid #dcd9d2; padding: 30px 0 40px; margin: 0; }
.s3-proof-story:last-of-type { border-bottom: 1px solid #101a26; }
.is-style-strive3-proof-heading { font: 700 30px/1.2 'Archivo Narrow', sans-serif; margin: 0 0 6px; }
.is-style-strive3-proof-kicker { font: 400 12.5px/1.65 'IBM Plex Mono', monospace; letter-spacing: .07em; text-transform: uppercase; color: #5a626e; margin: 0 0 22px; }
.is-style-strive3-story-body { max-width: 720px; display: grid; gap: 20px; margin: 0; }
.is-style-strive3-story-body > * { margin: 0; }
.is-style-strive3-story-link { margin: 22px 0 0; font: 400 19px/1.65 'Source Serif 4', Georgia, serif; }
.is-style-strive3-story-link a { font: 400 13px/1.65 'IBM Plex Mono', monospace; letter-spacing: .07em; text-transform: uppercase; color: #1f5c4f; }
.is-style-strive3-credentials { max-width: 760px; display: grid; gap: 0; list-style: none; padding: 0; margin: 0; font: 400 13px/1.65 'IBM Plex Mono', monospace; letter-spacing: .08em; text-transform: uppercase; color: #3f4855; }
.is-style-strive3-credentials > li { border-top: 1px solid #e0cfa2; padding: 15px 0; margin: 0; }
.is-style-strive3-credentials > li:last-child { border-bottom: 1px solid #e0cfa2; }
.is-style-strive3-cta-heading { font: 700 52px/1.08 'Archivo Narrow', sans-serif; margin: 0 0 28px; color: var(--s3-section-heading); }
.is-style-strive3-cta-body { font: 400 19px/1.65 'Source Serif 4', Georgia, serif; margin: 0 0 36px; }
.is-style-strive3-contact-note { margin: 44px 0 0; border-top: 1px solid #4a5a8e; padding-top: 18px; font: 400 12.5px/1.9 'IBM Plex Mono', monospace; letter-spacing: .05em; color: var(--s3-section-muted); }
.s3-map-figure { margin: 0; }
.s3-map-figure__frame { border: 1px solid #dcd9d2; background: #f7f6f3; padding: 14px; position: relative; }
.is-style-strive3-map-caption { font: 400 12.5px/1.6 'IBM Plex Mono', monospace; letter-spacing: .04em; color: #5a626e; margin: 14px 0 0; max-width: 620px; }
.s3-map-editor-status { position: absolute; inset: 30px; font: 400 13px/1.6 'IBM Plex Mono', monospace; }
/* Native block-root constraints must not change the approved reading measures. */
.editor-styles-wrapper .s3-numbered-section__body > :is(.is-style-strive3-definitions-intro, .is-style-strive3-report-intro, .is-style-strive3-evidence, .is-style-strive3-closing-note, .is-style-strive3-bundle-note) { max-width: 720px; }
.editor-styles-wrapper .s3-numbered-section__body > .is-style-strive3-system-intro { max-width: 720px; }
.editor-styles-wrapper .s3-numbered-section__body > .is-style-strive3-map-caption { max-width: 620px; }
.editor-styles-wrapper .s3-numbered-section__body > .s3-map-figure { max-width: none; }
.editor-styles-wrapper :is(.s3-module-rows, .s3-proof-stories, .s3-measure-definitions) > .wp-block { width: 100%; max-width: none; margin-left: 0; margin-right: 0; }
.editor-styles-wrapper :is(.s3-module-row__body, .s3-proof-story, .is-style-strive3-story-body, .is-style-strive3-bundle-note, .is-style-strive3-evidence) > .wp-block { margin-left: 0; margin-right: 0; }
.editor-styles-wrapper .s3-proof-story > .is-style-strive3-story-body { max-width: 720px; }
.editor-styles-wrapper :is(.is-style-strive3-story-body, .is-style-strive3-bundle-note) > .wp-block { max-width: 100%; }
.editor-styles-wrapper .is-style-strive3-credentials > .wp-block { width: 100%; max-width: none; margin-left: 0; margin-right: 0; }
.editor-styles-wrapper :is(.s3-module-rows, .s3-proof-stories, .s3-measure-definitions) > .block-list-appender { position: absolute; inset: auto 0 -30px auto; margin: 0; }
.s3-surface-choices { display: flex; flex-wrap: wrap; margin-bottom: 16px; }
@media (max-width: 860px) {
  .s3-numbered-section--neutral .s3-numbered-section__inner { padding-block: 55px; }
  .s3-numbered-section--gold .s3-numbered-section__inner { padding-block: 46px; }
  .s3-numbered-section--map .s3-numbered-section__inner { padding: 33px 20px 50px; }
  .s3-module-row, .s3-measure-definition { grid-template-columns: minmax(0,1fr); row-gap: 12px; }
  .s3-proof-story { padding: 23px 0 30px; }
}
@media (max-width: 640px) {
  .is-style-strive3-module-heading, .is-style-strive3-proof-heading { font-size: 24px; }
  .is-style-strive3-module-body, .is-style-strive3-definitions-intro, .is-style-strive3-report-intro, .is-style-strive3-closing-note, .is-style-strive3-cta-body { font-size: 17.5px; }
  .is-style-strive3-system-intro { font-size: 17.5px; }
  .is-style-strive3-cta-heading { font-size: 33px; }
  .is-style-strive3-story-link { font-size: 17px; }
}
