/* latin */
@font-face {
  font-family: 'Poppins';
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url(assets/fonts/poppins-latin-italic-400.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin */
@font-face {
  font-family: 'Poppins';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(assets/fonts/poppins-latin-normal-400.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin */
@font-face {
  font-family: 'Poppins';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(assets/fonts/poppins-latin-normal-600.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin */
@font-face {
  font-family: 'Poppins';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(assets/fonts/poppins-latin-normal-700.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* Captured Nord Vital layout, consolidated for the unchanged English article.
   Source measurements and selectors: nord-layout-computed.json.
   The local font-face declarations are prepended by the migration build. */
:root {
  color-scheme: light;
  --navy: #0a1e3d;
  --button: #1a3d6b;
  --ink: #1a1a1a;
  --page: #f3f4f6;
}
* { box-sizing: border-box; }
html { scroll-padding-bottom: 90px; }
body { margin: 0; padding: 0 0 88px; background: var(--page); color: var(--ink); font: 400 16px/1.5 Poppins, sans-serif; }
img { display: block; max-width: 100%; height: auto; }
a { color: var(--button); }
a:focus-visible { outline: 3px solid #d99f31; outline-offset: 4px; }
#ihue { min-height: 52px; padding: 7px 24px; background: var(--navy); }
#ibmh { max-width: 1100px; margin: 0 auto; display: flex; align-items: center; justify-content: space-between; gap: 20px; }
#icyk { color: white; font-size: 25px; font-weight: 700; line-height: 1.5; }
#irecd { color: #b0beca; font-size: 14px; font-weight: 400; text-transform: uppercase; white-space: nowrap; }
#iygcthf { padding: 20px 2%; }
#iuoqugk { padding: 25px 0; }
#ialx1 { padding: 10px 0 15px; }
#nrg-main-layout { display: grid; grid-template-columns: minmax(0, 744px) minmax(0, 348px); align-items: start; gap: 28px; width: 1120px; max-width: 100%; margin: 0 auto; }
#nrg-primary-column, #ipgb6, #ilqbm, #izp8b { min-width: 0; width: 100%; }
#ipgb6 { padding: 12px 0 0; }
#ilqbm { background: white; }
#izp8b { padding: 12px 15px 24px; }
#is7zm, #i2i9t { padding: 2px 0; list-style: none; font-size: 14px; font-weight: 400; }
#is7zm { display: flex; align-items: center; min-height: 57.25px; margin: 0 0 10px; color: #1a3053; }
#is7zm li:empty, #i2i9t li:empty { display: none; }
.fk-bullet-list-container { display: flex; align-items: center; gap: 12px; }
#ikb4g { flex: 0 0 26px; display: flex; justify-content: center; }
#i6lxi { width: 8px; height: 8px; display: block; background: #1a3053; }
#im7tg { font-size: 16px; line-height: 28px; }
#iokvb { padding: 1px; margin: 0 0 16px; font-size: 36px; font-weight: 700; line-height: 1.25; letter-spacing: 0; }
#i2i9t { margin: 14px 0 22px; color: #666; line-height: 1.6; }
#ia7mz { display: none; }
#ig3wl { font-style: normal; white-space: nowrap; }
#article-byline-row { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 16px 20px; margin-bottom: 22px; }
#itu8i { min-width: 0; }
#i2h98 { display: flex; align-items: center; gap: 12px; }
#img9l { width: 50px; height: 50px; object-fit: cover; border-radius: 50%; flex-shrink: 0; }
#ito5f { font-size: 13px; line-height: 1.65; }
#ikexh { font-size: 12px; color: #666; }
#i0s3cl { display: flex; flex-shrink: 0; align-items: center; gap: 8px; margin: 0; }
#i0s3cl a { display: block; border-radius: 4px; }
#i0s3cl img { width: 32px; height: 32px; object-fit: contain; }
#i2700n { font-size: 19px; font-weight: 400; line-height: 1.75; }
#i2700n > p { margin: 0 0 19px; }
#i2700n h2 { margin: 32px 0 20px; font-size: 25px; line-height: 1.3; font-weight: 700; }
#i2700n #iess4d { margin: 0 0 22px; font-size: 22px; line-height: 1.4; }
#i2700n > img { width: 100%; margin: 0 auto 24px; }
#i2700n b, #i2700n strong { font-weight: 700; }
#transplant-deck { margin: 0 0 20px; color: #353b43; font-size: 18px; line-height: 1.65; }
#i2700n > div { margin: 0 0 19px; }
#i2700n p { margin: 0 0 19px; }
#i2700n p:last-child { margin-bottom: 0; }
#i2700n .source-section-heading { clear: both; }
#i2700n .source-subheading { margin: 28px 0 16px; font-size: 23px; font-weight: 700; line-height: 1.35; }
#i2700n .source-media-block, #i2700n .transplant-video-wrap { width: 100%; margin: 22px 0 24px; }
#i2700n .source-media-frame { width: 100%; margin: 0; }
#i2700n .source-media-block img, #i2700n .transplant-video, #i2700n #stage-progression-photo { width: 100%; max-width: 100%; height: auto; margin: 0 auto; object-fit: contain; }
#i2700n #cc-id-ZRiknMki78N7 { margin-top: 22px; }
#i2700n #stage3-stain-animation { margin-bottom: 14px; }
#i2700n #cc-id-ZRiknMki78N7 p { margin: 0; }
#i2700n #cc-id-EJCpEKcBbucI, #i2700n #cc-id-Qbna4RCAd4TQ, #i2700n #cc-id-PqLjeICZbl2T, #i2700n #cc-id-UG8dwKivLHn9, #i2700n #cc-id-d4OeiPpcPrf7 { margin-bottom: 12px; }
#i2700n #cc-id-7SGqKEkfePlZ, #i2700n #cc-id-HYU0LdmqwUYQ, #i2700n #cc-id-2B8KJ7Q62kOH { padding: 14px 16px; border-left: 4px solid #1a3d6b; background: #f6f8fb; }
#i2700n #i72182, #i2700n #cc-id-Hlzs9CKLJWXd, #i2700n #cc-id-TI6jhDj4xhBD { margin: 16px 0; }
#i2700n #i2ant4, #i2700n #cc-id-8HuJkoDiRD8w, #i2700n #cc-id-Fh1y0OwvIbUA { width: 100%; padding: 20px; border: 1px solid #d8e0e9; border-radius: 10px; background: #fff; box-shadow: 0 3px 12px #0a1e3d14; text-align: center; }
#i2700n #fkt-image-28b-490-a76, #i2700n #cc-id-PkdaeUc0e8Vl, #i2700n #cc-id-oALpUvvz66Wv { width: 170px; max-width: 50%; height: auto; margin: 0 auto 12px; border-radius: 50%; object-fit: contain; }
#i2700n #jddpv, #i2700n #fbj0d, #i2700n #h3jj1 { font-size: 15px; line-height: 1.6; }
#i2700n #j2i1b, #i2700n #ffvwq, #i2700n #ssi2k { margin-top: 10px; color: #626a73; font-size: 12px; line-height: 1.5; }
#i2700n #cc-id-YQp7fxWuybcn, #i2700n #cc-id-VQfwgIuDK010, #i2700n #cc-id-P80OJk5QIc7m, #i2700n #cc-id-rsa66m4R9n1T { margin: 24px 0; }
#i2700n #cc-id-YQp7fxWuybcn .purchase-cta, #i2700n #cc-id-VQfwgIuDK010 .purchase-cta, #i2700n #cc-id-P80OJk5QIc7m .purchase-cta, #i2700n #cc-id-rsa66m4R9n1T .purchase-cta { margin: 0; }
#i2700n #cc-id-upFiEQAv1XQ0 { margin: 28px 0; padding: 20px; border: 1px solid #ced9e7; border-radius: 10px; background: #f7f9fc; }
#i2700n #cc-id-upFiEQAv1XQ0 .source-subheading { margin-top: 0; text-align: center; }
#i2700n #cc-id-2zgY76J3ZclD, #i2700n #cc-id-17n57YdAUEoG, #i2700n #ijg279p, #i2700n #cc-id-whenyouclick { padding: 16px 18px; border-radius: 8px; background: #f6f8fb; }
#i2700n #cc-id-17n57YdAUEoG, #i2700n #cc-id-bK4siHSiXjrq { text-align: center; }
#i2700n #cc-id-bK4siHSiXjrq { margin-top: -12px; color: #626a73; font-size: 14px; }
#i2700n #cc-id-vM6gQLH57Fz5 { display: flex; align-items: flex-start; gap: 12px; }
#i2700n #cc-id-vJ5gyCqR3Cwl { flex: 0 0 72px; width: 72px; max-width: 72px; height: auto; margin: 2px 0 0; border-radius: 50%; object-fit: contain; }
#i2700n #cc-id-WdfdTkdt5R13 { min-width: 0; }
.purchase-cta { display: block; width: 100%; margin: 20px auto; padding: 15px 18px; border: 0; border-radius: 8px; background: var(--button); color: white; text-align: center; text-decoration: none; font-family: Poppins, sans-serif; font-size: 18px; font-weight: 700; line-height: 1.5; cursor: pointer; }
.purchase-cta:hover { background: #123258; color: white; }
#iratng1 { margin-top: 28px; }
#iratng3 { font-size: 24px; line-height: 1.4; }
/* Complete donor sidebar: node-specific values measured from the captured Nord source. */
#itd3vuc { display: flex; flex-direction: row; align-items: center; justify-content: center; width: calc(100% + 1px); min-width: 0; padding: 10px; color: #457584; font: 600 12px/12px Poppins, sans-serif; }
#ic2h7lh { display: flex; flex-direction: column; align-items: center; justify-content: center; width: 100%; padding: 10px 20px 0; background: white; }
#ic2h7lh img { object-fit: cover; }
#vij5h, #vnnwc, #q4zch, #oug19 { margin: 20px 0 10px; padding: 0; color: #1a1a1a; font: 600 19px/33.25px Georgia, "Times New Roman", serif; }
#eixtc, #pkx95, #shqdu { font: 600 16px/28px Poppins, sans-serif; }
#k3l8h { font: 600 16px/28px Poppins, sans-serif; }
#itofhp4, #i2ikmup, #iywgi1n, #il7xgy7, #itx50zj { font-weight: 400; }
#ipozx1s, #oz3ex { width: 100%; height: auto; margin: 0; border: 0; border-radius: 0; }
#amxtw, #ifv8rcq, #cbg27 { display: flex; flex-direction: column; align-items: center; justify-content: center; width: 100%; padding: 10px 0; margin: 0; background: transparent; border: 0; border-radius: 0; }
#cbg27 { padding-bottom: 0; }
#p2l76, #daca2, #soabn { width: 100%; height: auto; margin: 0; border: 0; border-radius: 0; }
#lfwjr, #cngu2 { display: block; width: 100%; padding-top: 20px; color: #1a1a1a; font: 400 15px/22.5px Poppins, sans-serif; }
#ihc9ejh { display: block; width: 100%; padding-top: 20px; color: #1a1a1a; font: 300 15px/19.5px Poppins, sans-serif; }
#i2r4wkl { font-weight: 400; }
#i4w5kwh { font-weight: 400; line-height: 24px; }
#i06xb7k, #izouidk, #i0uivsg { font-style: italic; }
#uf9x3, #h0wik, #zybkm { width: auto; height: 25px; margin: 0 0 0 auto; border: 0; border-radius: 0; }
#ic2h7lh .sidebar-purchase-cta { width: 289px; max-width: 100%; height: 48px; padding: 11px 12px; margin: 20px auto; background: #1a3d6b; color: white; border: 1px solid #1a3d6b; border-radius: 4px; font: 600 16px/24px Poppins, sans-serif; text-align: center; }
#i3ms0x { padding: 0 15px 24px; background: white; font: 400 14px/1.5 Poppins, sans-serif; }
#fbcommentslist, #fbcommentslist ul { margin: 0; padding: 0; list-style: none; }
#fbcommentslist { border-top: 1px solid #ddd; padding-top: 18px; }
#fbcommentslist li { display: flex; align-items: flex-start; gap: 10px; margin: 14px 0; padding: 4px 0; list-style: none; }
#fbcommentslist li > div { min-width: 0; flex: 1; }
#fbcommentslist .profilepic { flex: 0 0 44px; width: 44px; height: auto; object-fit: contain; }
#fbcommentslist ul .profilepic { flex-basis: 36px; width: 36px; height: auto; }
#fbcommentslist h3 { margin: 0 0 4px; color: #365899; font-size: 14px; font-weight: 600; line-height: 1.5; }
#fbcommentslist p { margin: 0 0 6px; }
#fbcommentslist .fbbuttons { color: #667078; font-size: 12px; line-height: 1.7; }
#fbcommentslist .blue { color: #365899; cursor: default; }
#fbcommentslist .likeduim { display: inline-block; width: 13px; height: 13px; object-fit: contain; vertical-align: text-bottom; }
#iylx5 { padding: 32px 24px; background: white; color: #525963; font-size: 13px; line-height: 1.65; text-align: center; }
#invu4 { width: 1100px; max-width: 100%; margin: 0 auto; }
#iixxjt7 { margin-top: 16px; }
#isirkui { height: 1px; border: 0; background: #d9dce1; margin: 24px 0; }
#ikhkd5l { display: flex; flex-wrap: wrap; justify-content: center; gap: 10px 24px; margin-bottom: 16px; }
#iylx5 a { color: #344b66; text-underline-offset: 3px; }
#i61ptdh { position: fixed; z-index: 10; left: 0; right: 0; bottom: 0; background: var(--navy); padding: 10px 16px max(10px, env(safe-area-inset-bottom)); box-shadow: 0 -2px 8px #00000018; }
#i8f8qrr { width: 720px; max-width: 100%; margin: 0 auto; }
#fkhks { margin: 0; padding: 10px 16px; font-size: 16px; font-weight: 600; line-height: 1.45; border-radius: 6px; }
@media (max-width: 1023px) {
  #nrg-main-layout { display: flex; flex-direction: column; align-items: stretch; width: 100%; gap: 0; }
  #itd3vuc { width: 100%; padding: 10px; }
  #ic2h7lh { max-width: 100%; margin: 0; }
}
@media (max-width: 767px) {
  #ihue { min-height: 44px; padding: 8px 16px; }
  #ibmh { min-height: 28px; gap: 12px; }
  #icyk { font-size: 19px; line-height: 28px; }
  #irecd { font-size: 9px; }
  #iygcthf { padding: 20px 4%; }
  #iuoqugk { padding: 8px 0 25px; }
  #ipgb6 { padding-top: 0; }
  #im7tg { font-size: 14px; line-height: 24.5px; }
  #ikb4g { flex-basis: 24px; }
  #iokvb { font-size: 25px; line-height: 1.3; }
  #i2i9t { margin: 12px 0 20px; font-size: 12px; }
  #i2700n { font-size: 19px; line-height: 1.6; }
  #i2700n > p { margin-bottom: 19px; }
  #i2700n h2 { font-size: 22px; line-height: 1.35; }
  #i2700n #iess4d { font-size: 20px; line-height: 1.45; }
  #transplant-deck { font-size: 17px; line-height: 1.6; }
  #i2700n .source-subheading { margin-top: 24px; font-size: 20px; line-height: 1.4; }
  #i2700n .source-media-block, #i2700n .transplant-video-wrap { margin: 18px 0 22px; }
  #i2700n #i2ant4, #i2700n #cc-id-8HuJkoDiRD8w, #i2700n #cc-id-Fh1y0OwvIbUA { padding: 16px 14px; }
  #i2700n #cc-id-upFiEQAv1XQ0 { padding: 16px 14px; }
  #i2700n #cc-id-2zgY76J3ZclD, #i2700n #cc-id-17n57YdAUEoG, #i2700n #ijg279p, #i2700n #cc-id-whenyouclick { padding: 14px; }
  .purchase-cta { font-size: 16px; padding: 14px 12px; }
  #iratng3 { font-size: 22px; }
  #ic2h7lh .sidebar-purchase-cta { height: 60px; padding: 16px 30px; }
  #ic2h7lh #o8x8t { padding-bottom: 0; }
  #i3ms0x { font-size: 13px; }
  #fbcommentslist li { gap: 8px; }
  #fbcommentslist .profilepic { flex-basis: 36px; width: 36px; height: auto; }
  #fbcommentslist ul .profilepic { flex-basis: 28px; width: 28px; height: auto; }
  #fbcommentslist h3 { font-size: 13px; }
  #fbcommentslist .fbbuttons { font-size: 11px; }
  #iylx5 { padding: 28px 24px; }
  #i61ptdh { padding: 8px 12px max(8px, env(safe-area-inset-bottom)); }
  #fkhks { font-size: 14px; padding: 10px 8px; }
}
@media (max-width: 359px) {
  #ihue { padding-left: 12px; padding-right: 12px; }
  #icyk { font-size: 17px; }
  #ibmh { gap: 8px; }
  #irecd { font-size: 8px; }
}

/* fix38a: sidebar hidden where the layout stacks (phone/tablet) */
@media (max-width: 1023px) { #itd3vuc { display: none !important; } }
