.affiliate-program,
.affiliate-program * {
   box-sizing: border-box;
}

.affiliate-program {
   color: #2f3337;
   font-family: Arial, Helvetica, sans-serif;
   font-size: 16px;
   line-height: 1.55;
}

.affiliate-program__inner {
   width: 100%;
   max-width: 1200px;
   margin: 0 auto;
   padding: 0 24px;
}

.affiliate-program h1,
.affiliate-program h2,
.affiliate-program h3,
.affiliate-program p,
.affiliate-program ul,
.affiliate-program ol {
   margin-top: 0;
}

.affiliate-program h1,
.affiliate-program h2,
.affiliate-program h3 {
   color: #202427;
   font-weight: 700;
   letter-spacing: 0;
}

.affiliate-program h1 {
   max-width: 640px;
   margin-bottom: 18px;
   color: #fff;
   font-size: 38px;
   line-height: 1.12;
}

.affiliate-program h2 {
   margin-bottom: 12px;
   font-size: 32px;
   line-height: 1.22;
}

.affiliate-program h3 {
   font-size: 19px;
   line-height: 1.35;
}

.affiliate-program__hero {
   position: relative;
   min-height: 365px;
   background-color: #ad3f10;
   background-position: center;
   background-repeat: no-repeat;
   background-size: cover;
   overflow: hidden;
}

.affiliate-program__hero:before {
   position: absolute;
   inset: 0;
   background: rgba(30, 23, 18, 0.46);
   content: "";
}

.affiliate-program__hero-inner {
   position: relative;
   display: flex;
   min-height: 365px;
   align-items: center;
   justify-content: flex-end;
}

.affiliate-program__hero-content {
   width: 52%;
   padding: 24px 0;
   color: #fff;
}

.affiliate-program__eyebrow,
.affiliate-program__section-kicker {
   display: block;
   margin-bottom: 9px;
   color: #b69b00;
   font-size: 13px;
   font-weight: 700;
   text-transform: uppercase;
}

.affiliate-program__eyebrow {
   color: #fff4a5;
}

.affiliate-program__lead {
   max-width: 610px;
   margin-bottom: 16px;
   color: #fff;
   font-size: 18px;
}

.affiliate-program__hero-facts {
   display: flex;
   max-width: 620px;
   margin: 0 0 18px;
   padding: 0;
   list-style: none;
}

.affiliate-program__hero-facts li {
   flex: 1 1 0;
   min-width: 0;
   padding: 0 16px;
   border-left: 1px solid rgba(255, 255, 255, 0.42);
}

.affiliate-program__hero-facts li:first-child {
   padding-left: 0;
   border-left: 0;
}

.affiliate-program__hero-facts strong,
.affiliate-program__hero-facts span {
   display: block;
}

.affiliate-program__hero-facts strong {
   color: #fff4a5;
   font-size: 20px;
}

.affiliate-program__hero-facts span {
   color: #fff;
   font-size: 13px;
}

.affiliate-program__actions,
.affiliate-program__final-actions {
   display: flex;
   flex-wrap: wrap;
   gap: 12px;
   align-items: center;
}

.affiliate-program__button {
   display: inline-flex;
   min-height: 48px;
   padding: 11px 20px;
   border: 1px solid transparent;
   border-radius: 4px;
   align-items: center;
   justify-content: center;
   gap: 9px;
   font-weight: 700;
   line-height: 1.25;
   text-align: center;
   text-decoration: none;
   transition: background-color .18s ease, border-color .18s ease, color .18s ease;
}

.affiliate-program__button:hover,
.affiliate-program__button:focus {
   text-decoration: none;
}

.affiliate-program__button--primary {
   border-color: #d7c300;
   background: #d7c300;
   color: #1d2225;
}

.affiliate-program__button--primary:hover,
.affiliate-program__button--primary:focus {
   border-color: #f0d900;
   background: #f0d900;
   color: #1d2225;
}

.affiliate-program__button--secondary {
   border-color: rgba(255, 255, 255, 0.8);
   background: rgba(31, 35, 38, 0.45);
   color: #fff;
}

.affiliate-program__button--secondary:hover,
.affiliate-program__button--secondary:focus {
   border-color: #fff;
   background: #fff;
   color: #2b3034;
}

.affiliate-program__hero-note {
   margin: 10px 0 0;
   color: #fff;
   font-size: 13px;
}

.affiliate-program__hero-note a {
   color: #fff4a5;
   text-decoration: underline;
}

.affiliate-program__section {
   padding: 64px 0;
}

.affiliate-program__section-heading {
   max-width: 760px;
   margin: 0 auto 34px;
   text-align: center;
}

.affiliate-program__section-heading p,
.affiliate-program__faq-heading p,
.affiliate-program__audience-copy p {
   margin-bottom: 0;
   color: #68727a;
   font-size: 17px;
}

.affiliate-program__steps {
   display: grid;
   margin: 0;
   padding: 0;
   grid-template-columns: repeat(4, minmax(0, 1fr));
   list-style: none;
}

.affiliate-program__step {
   position: relative;
   min-height: 230px;
   padding: 28px 24px 24px;
   border: 1px solid #dce2e6;
   border-right: 0;
   background: #fff;
}

.affiliate-program__step:first-child {
   border-radius: 6px 0 0 6px;
}

.affiliate-program__step:last-child {
   border-right: 1px solid #dce2e6;
   border-radius: 0 6px 6px 0;
}

.affiliate-program__step-number {
   position: absolute;
   top: 18px;
   right: 18px;
   display: inline-flex;
   width: 30px;
   height: 30px;
   border-radius: 50%;
   align-items: center;
   justify-content: center;
   background: #eff2f4;
   color: #68727a;
   font-size: 13px;
   font-weight: 700;
}

.affiliate-program__step > .fa {
   display: block;
   margin-bottom: 22px;
   color: #b69b00;
   font-size: 32px;
}

.affiliate-program__step h3 {
   min-height: 51px;
   margin-bottom: 8px;
}

.affiliate-program__step p {
   margin-bottom: 10px;
   color: #68727a;
   font-size: 14px;
}

.affiliate-program__step a,
.affiliate-program__text-link {
   color: #8d7900;
   font-weight: 700;
   text-decoration: underline;
}

.affiliate-program__section--audience {
   padding: 48px 0;
   border-top: 1px solid #dde4e8;
   border-bottom: 1px solid #dde4e8;
   background: #f1f5f7;
}

.affiliate-program__audience-layout {
   display: grid;
   grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr);
   gap: 56px;
   align-items: center;
}

.affiliate-program__audience-copy h2 {
   max-width: 480px;
}

.affiliate-program__audience-list {
   display: grid;
   margin: 0;
   padding: 0;
   grid-template-columns: repeat(2, minmax(0, 1fr));
   gap: 12px;
   list-style: none;
}

.affiliate-program__audience-list li {
   display: flex;
   min-height: 76px;
   padding: 16px;
   border: 1px solid #d7e0e5;
   border-radius: 6px;
   align-items: center;
   gap: 13px;
   background: #fff;
   font-weight: 700;
}

.affiliate-program__audience-list .fa {
   width: 32px;
   flex: 0 0 32px;
   color: #268c86;
   font-size: 25px;
   text-align: center;
}

.affiliate-program__section--terms {
   background: #fff;
}

.affiliate-program__term-facts {
   display: grid;
   margin-bottom: 42px;
   grid-template-columns: repeat(4, minmax(0, 1fr));
   gap: 16px;
}

.affiliate-program__term-facts article {
   min-height: 210px;
   padding: 24px;
   border: 1px solid #dce2e6;
   border-top: 4px solid #d7c300;
   border-radius: 6px;
   background: #fff;
}

.affiliate-program__term-facts .fa {
   display: block;
   margin-bottom: 16px;
   color: #268c86;
   font-size: 27px;
}

.affiliate-program__term-facts strong {
   display: block;
   min-height: 50px;
   margin-bottom: 8px;
   color: #202427;
   font-size: 17px;
   line-height: 1.45;
}

.affiliate-program__term-facts p {
   margin-bottom: 0;
   color: #68727a;
   font-size: 14px;
}

.affiliate-program__commission-heading {
   display: flex;
   margin-bottom: 16px;
   align-items: end;
   justify-content: space-between;
   gap: 20px;
}

.affiliate-program__commission-heading h3,
.affiliate-program__commission-heading p {
   margin-bottom: 0;
}

.affiliate-program__commission-heading h3 {
   font-size: 24px;
}

.affiliate-program__commission-heading p {
   color: #68727a;
}

.affiliate-program__commission-grid {
   display: grid;
   grid-template-columns: repeat(4, minmax(0, 1fr));
   border-top: 1px solid #dce2e6;
   border-left: 1px solid #dce2e6;
}

.affiliate-program__commission-grid article {
   display: flex;
   min-height: 118px;
   padding: 18px;
   border-right: 1px solid #dce2e6;
   border-bottom: 1px solid #dce2e6;
   flex-direction: column;
   justify-content: space-between;
   background: #f8fafb;
}

.affiliate-program__commission-grid article:nth-child(2n) {
   background: #fff;
}

.affiliate-program__commission-grid span {
   color: #68727a;
   font-size: 14px;
}

.affiliate-program__commission-grid strong {
   color: #202427;
   font-size: 28px;
}

.affiliate-program__commission-grid small {
   font-size: 16px;
}

.affiliate-program__commission-note {
   display: flex;
   margin: 14px 0 0;
   padding: 14px 16px;
   border-left: 4px solid #268c86;
   align-items: flex-start;
   gap: 10px;
   background: #edf7f6;
   color: #425158;
   font-size: 14px;
}

.affiliate-program__commission-note .fa {
   margin-top: 3px;
   color: #268c86;
}

.affiliate-program__section--benefits {
   border-top: 1px solid #dde4e8;
   background: #f1f5f7;
}

.affiliate-program__benefits-grid {
   display: grid;
   margin: 0;
   padding: 0;
   grid-template-columns: repeat(3, minmax(0, 1fr));
   gap: 16px;
   list-style: none;
}

.affiliate-program__benefits-grid li {
   display: flex;
   min-height: 128px;
   padding: 22px;
   border: 1px solid #d7e0e5;
   border-radius: 6px;
   align-items: flex-start;
   gap: 15px;
   background: #fff;
}

.affiliate-program__benefits-grid .fa {
   width: 34px;
   flex: 0 0 34px;
   color: #b69b00;
   font-size: 27px;
   text-align: center;
}

.affiliate-program__benefits-grid strong,
.affiliate-program__benefits-grid span {
   display: block;
}

.affiliate-program__benefits-grid strong {
   margin-bottom: 5px;
   color: #202427;
   font-size: 16px;
}

.affiliate-program__benefits-grid span {
   color: #68727a;
   font-size: 14px;
}

.affiliate-program__faq-layout {
   display: grid;
   grid-template-columns: minmax(0, .75fr) minmax(0, 1.25fr);
   gap: 58px;
}

.affiliate-program__faq-heading {
   align-self: start;
}

.affiliate-program__faq-heading p {
   margin-bottom: 18px;
}

.affiliate-program__faq-list details {
   border-top: 1px solid #dce2e6;
}

.affiliate-program__faq-list details:last-child {
   border-bottom: 1px solid #dce2e6;
}

.affiliate-program__faq-list summary {
   position: relative;
   padding: 20px 42px 20px 0;
   color: #202427;
   cursor: pointer;
   font-size: 16px;
   font-weight: 700;
   list-style: none;
}

.affiliate-program__faq-list summary::-webkit-details-marker {
   display: none;
}

.affiliate-program__faq-list summary:after {
   position: absolute;
   top: 18px;
   right: 8px;
   color: #8d7900;
   content: "+";
   font-size: 24px;
   font-weight: 400;
}

.affiliate-program__faq-list details[open] summary:after {
   content: "−";
}

.affiliate-program__faq-list details p {
   margin: -5px 0 20px;
   padding-right: 42px;
   color: #68727a;
}

.affiliate-program__final {
   padding: 46px 0;
   background: #30373b;
}

.affiliate-program__final-layout {
   display: flex;
   align-items: center;
   justify-content: space-between;
   gap: 32px;
}

.affiliate-program__final h2 {
   margin-bottom: 6px;
   color: #fff;
   font-size: 28px;
}

.affiliate-program__final p {
   margin-bottom: 0;
   color: #dce2e6;
}

.affiliate-program__text-link--light {
   color: #fff4a5;
}

.affiliate-program a:focus,
.affiliate-program summary:focus {
   outline: 2px solid #268c86;
   outline-offset: 3px;
}

@media (max-width: 991px) {
   .affiliate-program h1 {
      font-size: 36px;
   }

   .affiliate-program__hero:before {
      background: rgba(30, 23, 18, 0.62);
   }

   .affiliate-program__hero-content {
      width: 65%;
   }

   .affiliate-program__steps,
   .affiliate-program__term-facts {
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 14px;
   }

   .affiliate-program__step,
   .affiliate-program__step:first-child,
   .affiliate-program__step:last-child {
      min-height: 210px;
      border: 1px solid #dce2e6;
      border-radius: 6px;
   }

   .affiliate-program__step h3,
   .affiliate-program__term-facts strong {
      min-height: 0;
   }

   .affiliate-program__audience-layout,
   .affiliate-program__faq-layout {
      grid-template-columns: 1fr;
      gap: 32px;
   }

   .affiliate-program__commission-grid,
   .affiliate-program__benefits-grid {
      grid-template-columns: repeat(2, minmax(0, 1fr));
   }
}

@media (max-width: 767px) {
   #jvLabelWrap,
   #jcont {
      display: none !important;
   }

   .affiliate-program {
      font-size: 15px;
   }

   .affiliate-program__inner {
      padding: 0 16px;
   }

   .affiliate-program h1 {
      font-size: 30px;
   }

   .affiliate-program h2 {
      font-size: 26px;
   }

   .affiliate-program__hero,
   .affiliate-program__hero-inner {
      min-height: 410px;
   }

   .affiliate-program__hero {
      background-position: 44% center;
   }

   .affiliate-program__hero:before {
      background: rgba(30, 23, 18, 0.72);
   }

   .affiliate-program__hero-content {
      width: 100%;
      padding: 30px 0;
   }

   .affiliate-program__lead {
      font-size: 16px;
   }

   .affiliate-program__hero-facts {
      margin-bottom: 20px;
   }

   .affiliate-program__hero-facts li {
      padding: 0 9px;
   }

   .affiliate-program__hero-facts strong {
      font-size: 17px;
   }

   .affiliate-program__hero-facts span {
      font-size: 11px;
   }

   .affiliate-program__actions {
      align-items: stretch;
      flex-direction: column;
   }

   .affiliate-program__button {
      width: 100%;
   }

   .affiliate-program__section {
      padding: 48px 0;
   }

   .affiliate-program__section-heading {
      margin-bottom: 26px;
      text-align: left;
   }

   .affiliate-program__section-heading p,
   .affiliate-program__faq-heading p,
   .affiliate-program__audience-copy p {
      font-size: 15px;
   }

   .affiliate-program__steps,
   .affiliate-program__term-facts,
   .affiliate-program__audience-list,
   .affiliate-program__commission-grid,
   .affiliate-program__benefits-grid {
      grid-template-columns: 1fr;
   }

   .affiliate-program__step,
   .affiliate-program__term-facts article {
      min-height: 0;
   }

   .affiliate-program__step h3 {
      margin-bottom: 6px;
   }

   .affiliate-program__audience-layout {
      gap: 26px;
   }

   .affiliate-program__commission-heading {
      align-items: flex-start;
      flex-direction: column;
      gap: 4px;
   }

   .affiliate-program__commission-grid {
      border: 0;
      gap: 8px;
   }

   .affiliate-program__commission-grid article,
   .affiliate-program__commission-grid article:nth-child(2n) {
      min-height: 74px;
      padding: 14px 16px;
      border: 1px solid #dce2e6;
      border-radius: 4px;
      align-items: center;
      flex-direction: row;
      gap: 16px;
      background: #fff;
   }

   .affiliate-program__commission-grid span {
      max-width: 70%;
   }

   .affiliate-program__commission-grid strong {
      flex: 0 0 auto;
      font-size: 24px;
   }

   .affiliate-program__faq-layout {
      gap: 24px;
   }

   .affiliate-program__final-layout {
      align-items: stretch;
      flex-direction: column;
      gap: 22px;
   }

   .affiliate-program__final-actions {
      align-items: stretch;
      flex-direction: column;
   }

   .affiliate-program__final-actions .affiliate-program__text-link {
      text-align: center;
   }
}

@media (max-width: 479px) {
   .affiliate-program h1 {
      font-size: 28px;
   }

   .affiliate-program__hero,
   .affiliate-program__hero-inner {
      min-height: 440px;
   }

   .affiliate-program__hero-facts {
      display: grid;
      grid-template-columns: repeat(3, minmax(0, 1fr));
   }

   .affiliate-program__hero-facts li {
      padding: 0 7px;
   }

   .affiliate-program__hero-facts strong {
      font-size: 16px;
   }
}
