/* Readable service pages, a concrete next step and focused campaign variants. */
body.lp-page :is(.ed-benefit-copy p,.cx-steps p,.cx-investment > p,.cx-faq .pf-faq details p,.cx-section-heading > p,.cx-approach-intro > p,.lp-contact-copy > p) {
  font-size: 16px;
  line-height: 1.75;
  color: #4d627c;
}
body.lr-enhanced.lp-page .lr-showcase-caption p { font-size: 16px; line-height: 1.75; }
body.lr-enhanced.lp-page .lr-showcase > .pf-caption { font-size: 13px; line-height: 1.65; }
body.lp-page :is(.ed-next-step,.ed-example-note,.cx-goals-note,.lp-contact-hint,.pf-caption,.cx-portfolio-note) { font-size: 13px; line-height: 1.65; }
body.lp-page .cx-faq .pf-faq summary { font-size: 16px; }
body.lp-page :is(.ip-principles p,.ip-discipline p,.ip-factor-list p,.ip-options p,.ip-prose p,.ip-section-head > p,.ip-disciplines > div > p,.ip-faq .pf-faq p) { font-size: 16px; line-height: 1.75; color: #4d627c; }
body.lp-page .ip-prose p:first-child { font-size: 18px; color: #253c5e; }
body.lp-page .ip-faq .pf-faq summary { font-size: 16px; }
body.lp-page .ip-option-meta { font-size: 13px; }
body.lp-page .cx-investment li { font-size: 14px; }
body.lp-page .cx-goal-options a b { font-size: 14px; }
body.lp-page .cx-proof { font-size: 13px; color: #4d627c; }
body.lp-page .fc-reassurance { margin: 9px auto 0; font-size: 13px; line-height: 1.6; color: #4d627c; }
body.lp-page .fc-contact-action { display: flex; flex-direction: column; align-items: flex-start; gap: 9px; flex: none; }
body.lp-page .fc-contact-action > p { font-size: 13px; line-height: 1.6; color: #4d627c; }
body.lp-page .fc-decision-points { display: grid; margin: 25px 0 0; }
body.lp-page .fc-decision-points > div { min-width: 0; padding: 20px 0; border-top: 1px solid #dce5f1; }
body.lp-page .fc-decision-points > div:last-child { padding-bottom: 0; }
body.lp-page .fc-decision-points dt { color: #183351; font-size: 17px; line-height: 1.45; font-weight: 500; letter-spacing: -.015em; }
body.lp-page .fc-decision-points dd { margin: 9px 0 0; color: #4d627c; font-size: 16px; line-height: 1.75; }
body.lp-page .fc-decision-section { margin-top: 96px; padding-top: 0; }
body.lp-page .fc-decision-section h2 { font-size: clamp(32px,3.5vw,44px); line-height: 1.15; max-width: 25ch; }
body.lp-page .fc-decision-section .fc-decision-points { grid-template-columns: repeat(3,minmax(0,1fr)); gap: 36px; margin-top: 34px; }
body.lp-page .fc-decision-section .fc-decision-points > div { padding-top: 23px; border-color: #c9d8ec; }
body.lp-page.fc-campaign .cx-benefits { padding-top: 76px; }
body.lp-page .fc-audience { display: block; margin-top: 8px; font-size: 12px; letter-spacing: normal; text-transform: none; color: #4d627c; }
body.lp-page .fc-contact-route { display: grid; gap: 22px; margin: 30px 0 0; padding: 0; list-style: none; }
body.lp-page .fc-contact-route li { display: grid; grid-template-columns: 30px minmax(0,1fr); gap: 13px; }
body.lp-page .fc-contact-route li > span { padding-top: 3px; color: #1a4dff; font-size: 12px; font-variant-numeric: tabular-nums; }
body.lp-page .fc-contact-route h3 { margin: 0 0 5px; font-size: 17px; line-height: 1.4; letter-spacing: -.02em; font-weight: 500; }
body.lp-page .fc-contact-route p { margin: 0; max-width: 40ch; font-size: 15px; line-height: 1.7; color: #4d627c; }
body.lp-page .lp-contact-copy > .fc-person { font-size: 14px; margin-top: 28px; padding-top: 22px; border-top: 1px solid #e0e7f0; }
body.lp-page .fc-field-hint { margin: -4px 0 19px; font-size: 13px; color: #4d627c; line-height: 1.65; }
body.lp-page .lp-contact-panel :is(input,textarea) { font-size: 16px; }
body.lp-page .lp-contact-status { font-size: 15px; padding-top: 28px; }
body.lp-page .lp-contact-status h3 { margin: 12px 0; font-size: 25px; font-weight: 500; line-height: 1.2; }
body.lp-page .lp-contact-status h3:focus { outline: none; }
body.lp-page .lp-contact-status > p { margin-bottom: 20px; }
body.lp-page .lp-contact-status .pf-button { display: inline-flex; color: #fff; text-decoration: none; }
body.lp-page .lp-contact-status .lp-copy-draft { min-height: 44px; padding-block: 10px; margin-top: 6px; font-size: 14px; cursor: pointer; }
body.lp-page .fc-draft-preview { margin-top: 14px; border-top: 1px solid #e0e7f0; border-bottom: 1px solid #e0e7f0; }
body.lp-page .fc-draft-preview summary { padding-block: 14px; cursor: pointer; font-size: 14px; }
body.lp-page .fc-draft-preview textarea { box-sizing: border-box; width: 100%; margin: 0 0 16px; white-space: pre-wrap; }
body.lp-page .lp-contact-status [data-copy-status] { font-size: 13px; }
body.lp-page .lp-contact-status .fc-draft-next { margin: 20px 0 0; font-size: 14px; }
body.lp-page .lp-related { margin-top: 48px; }
body.lp-page .lp-related + .lp-contact { margin-top: 32px; }
body.lp-page .fc-campaign-header { display: flex; justify-content: space-between; gap: 20px; }
body.lp-page .fc-campaign-header .pf-logo { position: static; transform: none; }
body.lp-page .fc-campaign-header .pf-button { min-height: 44px; padding: 11px 18px; font-size: 13px; }
body.lp-page .fc-campaign-footer { margin-top: 0; padding-block: 30px; }
body.lp-page .fc-campaign-footer > .pf-wrap { display: flex; justify-content: space-between; gap: 18px; font-size: 13px; }
body.lp-page .fc-campaign-footer a { color: #4d627c; }
body.lp-page.fc-campaign .cx-hero { padding-top: 72px; }
body.lp-page :is(.fc-draft-preview summary,.lp-copy-draft):focus-visible { outline: 2px solid #1a4dff; outline-offset: 4px; }
@media(max-width:650px) {
  body.cx-page .cx-lead { font-size: 16px; line-height: 1.75; }
  body.lp-page .fc-campaign-header { padding-inline: 20px; gap: 16px; }
  body.lp-page .fc-campaign-header .pf-logo img { width: 124px; height: auto; }
  body.lp-page .fc-campaign-header .pf-button { padding-inline: 12px; font-size: 12px; white-space: nowrap; }
  body.lp-page.fc-campaign .cx-hero { padding-top: 44px; }
  body.lp-page .fc-contact-route { gap: 20px; }
  body.lp-page .fc-campaign-footer > .pf-wrap { flex-direction: column; gap: 12px; }
  body.lp-page .lp-contact-status .pf-button { width: 100%; justify-content: center; }
}
@media(max-width:850px) {
  body.lp-page .fc-decision-section .fc-decision-points { grid-template-columns: 1fr; gap: 0; margin-top: 26px; }
  body.lp-page .fc-decision-section .fc-decision-points > div { padding: 22px 0; }
  body.lp-page .fc-decision-section { margin-top: 74px; }
}
