

.rich-text { padding: clamp(40px, 6vw, 80px) 20px; background: #fff; }
.rich-text__inner { max-width: 880px; margin: 0 auto; color: var(--udi-soft, #52516b); }
.rich-text__inner > :first-child { margin-top: 0; }


.rich-text__inner p { margin: 18px 0 0; font-size: calc(17px * var(--a11y-fs, 1)); line-height: 1.78; }
.rich-text__inner a { color: var(--blue, var(--udi-blue, #53a7dc)); text-decoration: underline; }
.rich-text__inner a:hover { text-decoration: none; }
.rich-text__inner strong, .rich-text__inner b { font-weight: 700; color: var(--basic, #25225e); }
.rich-text__inner em, .rich-text__inner i { font-style: italic; }


.rich-text__inner h2, .rich-text__inner h3, .rich-text__inner h4 { color: var(--basic, #25225e); scroll-margin-top: 110px; }
.rich-text__inner h2 { margin: 44px 0 0; font-size: calc(28px * var(--a11y-fs, 1)) !important; line-height: 1.25; font-weight: 700; letter-spacing: -0.3px; }
.rich-text__inner h3 { margin: 30px 0 0; font-size: calc(20px * var(--a11y-fs, 1)); font-weight: 700; }
.rich-text__inner h4 { margin: 24px 0 0; font-size: calc(17px * var(--a11y-fs, 1)); font-weight: 700; }
.rich-text__inner h2 + p, .rich-text__inner h3 + p, .rich-text__inner h4 + p { margin-top: 12px; }


.rich-text__inner ul, .rich-text__inner ol { margin: 16px 0 0; padding-left: 22px; }
.rich-text__inner li { margin-top: 8px; font-size: calc(17px * var(--a11y-fs, 1)); line-height: 1.7; }
.rich-text__inner li > ul, .rich-text__inner li > ol { margin-top: 8px; }


.rich-text__inner img { max-width: 100%; height: auto; border-radius: 14px; margin-top: 24px; display: block; }
.rich-text__inner figure { margin-top: 24px; }
.rich-text__inner figure img { margin-top: 0; }
.rich-text__inner figcaption { margin-top: 10px; font-size: calc(14px * var(--a11y-fs, 1)); line-height: 1.5; color: var(--udi-muted, #8a8fa0); text-align: center; }


.rich-text__inner blockquote {
  margin: 28px 0 0; padding: 20px 26px; border-left: 5px solid var(--orange, var(--udi-orange, #f9741c));
  border-radius: 0 14px 14px 0; background: color-mix(in srgb, var(--blue, var(--udi-blue, #53a7dc)) 12%, #fff);
  font-size: calc(18px * var(--a11y-fs, 1)); line-height: 1.6; font-weight: 500; color: var(--basic, #25225e);
}
.rich-text__inner blockquote p { margin: 0; font-size: inherit; color: inherit; }


.rich-text__inner table {
  width: 100%; border-collapse: collapse; margin: 24px 0 0; font-size: calc(15px * var(--a11y-fs, 1));
  border: 1px solid #e7e9ee; border-radius: 12px; overflow: hidden;
}
.rich-text__inner th, .rich-text__inner td { padding: 14px 18px; text-align: left; vertical-align: top; border-top: 1px solid #eef0f4; }
.rich-text__inner thead th { background: var(--basic, #25225e); color: #fff; font-size: calc(13px * var(--a11y-fs, 1)); font-weight: 700; text-transform: uppercase; letter-spacing: .5px; border-top: 0; }
.rich-text__inner tbody tr:nth-child(even) { background: #f7fafd; }


.rich-text__inner hr { border: 0; border-top: 1px solid #e7e9ee; margin: 32px 0 0; }

@media (max-width: 640px) {
  .rich-text__inner p, .rich-text__inner li { font-size: calc(16px * var(--a11y-fs, 1)); }
  .rich-text__inner h2 { font-size: calc(23px * var(--a11y-fs, 1)) !important; margin-top: 36px; }
  .rich-text__inner h3 { font-size: calc(18px * var(--a11y-fs, 1)); }
  .rich-text__inner table { display: block; overflow-x: auto; -webkit-overflow-scrolling: touch; }
}
