@media (prefers-color-scheme: dark) {
  #prg main,
  #prg main header {
    background-color: #212111;
  }
  #prg main header > .program-intro {
    background: rgba(252, 251, 249, 0.5);
  }
  #prg main header > .program-intro > p {
    color: #ffffff;
  }
  #prg main section.sectionbox2 > div,
  #prg main section.sectionbox3 > div > div:nth-child(1) > h2 > span::before {
    background-color: #434333;
  }
  #prg main section.sectionbox2 > div > div:nth-child(2) > h2 > span::before {
    background-color: #212111;
  }
  #prg main section .index-box1 > div > :nth-child(2) > h2,
  #prg main section.sectionbox2 > div > div:nth-child(2) > h2 > span,
  #prg main section .index-box1 > div > :nth-child(2) > p,
  #prg main section.sectionbox3 > div > div:nth-child(1) > h2 > span {
    color: #fcfbf9;
  }
  /* ========================================================================= */
  /* 1. OLD UNMIGRATED PROGRAM PAGES                                           */
  /*    These rules are heavy-handed (* { color: white }) and would break      */
  /*    the new .prg-dtl layout, so they must be restricted via :not()         */
  /* ========================================================================= */
  #prg:not(.prg-dtl) section.programgroup {
    background-color: #60707a;
  }
  #prg:not(.prg-dtl) section.programgroup .programgroup-logo {
    border: none;
  }
  #prg:not(.prg-dtl) h1,
  #prg:not(.prg-dtl) h2,
  #prg:not(.prg-dtl) p {
    color: #ffffff;
  }
  #prg:not(.prg-dtl) a.button-default {
    color: #fcfbf9;
    background-color: transparent;
    border: 1px solid #fcfbf9;
  }
  #prg-grp:not(.prg-dtl) section {
    background-color: #60707a;
  }
  #prg-grp:not(.prg-dtl) section * {
    color: #ffffff;
  }
  #prg-grp:not(.prg-dtl) section h1,
  #prg-grp:not(.prg-dtl) section h2,
  #prg-grp:not(.prg-dtl) section h3 {
    color: #ffffff;
  }
  #prg-grp:not(.prg-dtl).quality section p.quote {
    color: #ffffff;
  }
  #prg-grp:not(.prg-dtl).quality section p.quote > a {
    color: #80cce7;
  }
  #prg-grp:not(.prg-dtl).quality section p.quote > a:visited {
    color: #80cce7;
  }
  #prg-grp:not(.prg-dtl).quality section p.quote > a strong {
    color: #80cce7;
  }
  #prg-grp:not(.prg-dtl).financing section p.quote {
    color: #ffffff;
  }
  #prg-grp:not(.prg-dtl).financing section p.quote > a {
    color: #f67bcf;
  }
  #prg-grp:not(.prg-dtl).financing section p.quote > a:visited {
    color: #f67bcf;
  }
  #prg-grp:not(.prg-dtl).financing section p.quote > a strong {
    color: #f67bcf;
  }
  #prg-grp:not(.prg-dtl).safety section p.quote {
    color: #ffffff;
  }
  #prg-grp:not(.prg-dtl).safety section p.quote > a {
    color: #fbd863;
  }
  #prg-grp:not(.prg-dtl).safety section p.quote > a:visited {
    color: #fbd863;
  }
  #prg-grp:not(.prg-dtl).safety section p.quote > a strong {
    color: #fbd863;
  }
  #prg-grp:not(.prg-dtl).service section p.quote {
    color: #ffffff;
  }
  #prg-grp:not(.prg-dtl).service section p.quote > a {
    color: #edb274;
  }
  #prg-grp:not(.prg-dtl).service section p.quote > a:visited {
    color: #edb274;
  }
  #prg-grp:not(.prg-dtl).service section p.quote > a strong {
    color: #edb274;
  }
  #prg-grp:not(.prg-dtl).technology section p.quote {
    color: #ffffff;
  }
  #prg-grp:not(.prg-dtl).technology section p.quote > a {
    color: #8ae058;
  }
  #prg-grp:not(.prg-dtl).technology section p.quote > a:visited {
    color: #8ae058;
  }
  #prg-grp:not(.prg-dtl).technology section p.quote > a strong {
    color: #8ae058;
  }
  body:not(.prg-dtl) main.program article {
    background-color: #000;
  }
  body:not(.prg-dtl) main.program article * {
    color: #ffffff;
  }
  body:not(.prg-dtl) main.program article header {
    font-size: 14pt;
  }
  body:not(.prg-dtl) main.program article header .title {
    background-color: #000;
  }
  body:not(.prg-dtl) main.program article header .title h1 {
    color: #ffffff;
  }
  body:not(.prg-dtl) main.program article header p.motto {
    background-color: #000;
    color: #ffffff;
  }
  body:not(.prg-dtl) main.program article header .warrantor p {
    color: #000;
  }
  body:not(.prg-dtl) main.program article header .warrantor p a,
  body:not(.prg-dtl) main.program article header .warrantor p strong {
    color: #000;
  }
  body:not(.prg-dtl) main.program article section {
    background-color: #60707a;
  }
  body:not(.prg-dtl) main.program article section h2 {
    color: #ffffff;
  }
  body:not(.prg-dtl) main.program article section.main-motto {
    background-color: #000;
  }
  body:not(.prg-dtl) main.program article section.main-motto p {
    color: #ffffff;
  }
  body:not(.prg-dtl) main.program article section div.quote {
    color: #ffffff;
  }
  body:not(.prg-dtl) main.program article section div.quote p {
    padding-top: 0;
    padding-left: 10px;
    margin-bottom: 20px;
    border-color: #ffffff;
    color: #ffffff;
  }
  body:not(.prg-dtl) main.program article section div.quote p a {
    color: #ffffff;
  }
  body:not(.prg-dtl) main.program article section div.quote p a:visited {
    color: #ffffff;
  }
  /* --- PDO SPECIFIC --- */
  #prg-pdo section .box-equals {
    color: #ffffff;
    background: url("/images/program/pdo/border-white.svg") center bottom no-repeat;
    background-size: 210px;
  }
  /* ========================================================================= */
  /* 2. NEW MIGRATED PROGRAM PAGES (.prg-dtl)                                  */
  /*    Controlled dark mode that respects the box layouts and backgrounds     */
  /*    Using original Figma color palette:                                    */
  /*    - --color-darkslategray: #434333                                       */
  /*    - --color-gray-100: #fcfbf9 (variables.$color-light)                   */
  /*    - --color-gray-200: #212222                                            */
  /*    - --color-gray-400: #212111 (variables.$color-black)                   */
  /* ========================================================================= */
  body.prg-dtl {
    background-color: #212111;
  }
  body.prg-dtl main.program {
    background-color: transparent;
  }
  body.prg-dtl main.program article {
    background-color: transparent;
  }
  body.prg-dtl main.program article > section {
    background-color: transparent;
  }
  body.prg-dtl main.program article h1,
  body.prg-dtl main.program article h2,
  body.prg-dtl main.program article h3,
  body.prg-dtl main.program article h4,
  body.prg-dtl main.program article p,
  body.prg-dtl main.program article span,
  body.prg-dtl main.program article li,
  body.prg-dtl main.program article strong,
  body.prg-dtl main.program article a {
    color: #fcfbf9;
  }
  body.prg-dtl main.program article header {
    background-color: #212111;
  }
  body.prg-dtl main.program article header > .program-intro {
    background-color: #434333;
    border-color: #434333;
  }
  body.prg-dtl main.program article header > .program-intro > h1 > span {
    background-color: #212111;
  }
  body.prg-dtl main.program article header > .program-intro > h1 > small {
    color: #fcfbf9;
  }
  body.prg-dtl main.program article header > .program-intro .motto {
    background-color: #212111;
  }
  body.prg-dtl main.program article header > .program-warranty {
    background-color: #212222;
    border-color: #212222;
  }
  body.prg-dtl main.program article header > .program-warranty .warranty-header > h2 > span {
    color: #fcfbf9;
    background-color: #434333;
  }
  body.prg-dtl main.program article header > .program-warranty .warranty-header > div > img {
    border-color: #434333;
  }
  body.prg-dtl main.program article section.program-motto {
    background-color: transparent;
  }
  body.prg-dtl main.program article section.program-benefits ul.boxed {
    background-color: transparent;
  }
  body.prg-dtl main.program article section.program-benefits ul.boxed > li {
    background-color: transparent;
  }
  body.prg-dtl main.program article section.program-benefits ul.boxed > li::before {
    filter: invert(1) brightness(100);
  }
  body.prg-dtl main.program article section.sectionbox2 > div,
  body.prg-dtl main.program article section.sectionbox3 > div,
  body.prg-dtl main.program article section.sectionbox4 > div,
  body.prg-dtl main.program article section.sectionbox5 > div,
  body.prg-dtl main.program article section.sectionbox6 > div {
    background-color: #434333;
  }
  body.prg-dtl main.program article section.sectionbox2 h2 > span,
  body.prg-dtl main.program article section.sectionbox2 h3 > span,
  body.prg-dtl main.program article section.sectionbox3 h2 > span,
  body.prg-dtl main.program article section.sectionbox3 h3 > span,
  body.prg-dtl main.program article section.sectionbox4 h2 > span,
  body.prg-dtl main.program article section.sectionbox4 h3 > span,
  body.prg-dtl main.program article section.sectionbox5 h2 > span,
  body.prg-dtl main.program article section.sectionbox5 h3 > span,
  body.prg-dtl main.program article section.sectionbox6 h2 > span,
  body.prg-dtl main.program article section.sectionbox6 h3 > span {
    color: #fcfbf9;
    background-color: rgba(0, 0, 0, 0.25);
  }
  body.prg-dtl main.program article section.sectionbox2 .box-links > a,
  body.prg-dtl main.program article section.sectionbox3 .box-links > a,
  body.prg-dtl main.program article section.sectionbox4 .box-links > a,
  body.prg-dtl main.program article section.sectionbox5 .box-links > a,
  body.prg-dtl main.program article section.sectionbox6 .box-links > a {
    border-color: rgba(252, 251, 249, 0.4);
  }
  body.prg-dtl main.program article section.sectionbox2 .box-links > a > span:nth-child(1),
  body.prg-dtl main.program article section.sectionbox3 .box-links > a > span:nth-child(1),
  body.prg-dtl main.program article section.sectionbox4 .box-links > a > span:nth-child(1),
  body.prg-dtl main.program article section.sectionbox5 .box-links > a > span:nth-child(1),
  body.prg-dtl main.program article section.sectionbox6 .box-links > a > span:nth-child(1) {
    background-color: transparent;
    color: #fcfbf9;
  }
  body.prg-dtl main.program article section.sectionbox2 .box-links > a > span:nth-child(2),
  body.prg-dtl main.program article section.sectionbox3 .box-links > a > span:nth-child(2),
  body.prg-dtl main.program article section.sectionbox4 .box-links > a > span:nth-child(2),
  body.prg-dtl main.program article section.sectionbox5 .box-links > a > span:nth-child(2),
  body.prg-dtl main.program article section.sectionbox6 .box-links > a > span:nth-child(2) {
    background-color: transparent;
    color: #fcfbf9;
  }
  #prg-phf main.program article section ul.boxed li:not(.title):nth-child(2) {
    background-image: url("/images/program/phf/ico_info1_dark.svg");
  }
  #prg-phf main.program article section ul.boxed li:not(.title):nth-child(3) {
    background-image: url("/images/program/phf/ico_info2_dark.svg");
  }
  #prg-phf main.program article section ul.boxed li:not(.title):nth-child(4) {
    background-image: url("/images/program/phf/ico_info3_dark.svg");
  }
  #prg-phf main.program article section ul.boxed li:not(.title)::before {
    filter: none;
  }
}
