/* stylelint-disable-next-line wrap-rem-on-px/wrap-rem-on-px */
/* stylelint-disable wrap-rem-on-px/wrap-rem-on-px */
/* stylelint-enable wrap-rem-on-px/wrap-rem-on-px */
/*
USAGE:
font-size: fluid(12, 62); : from rem(12)@380px to  rem(62)@1440px
gap: fluid(10, 33, 992);  : from rem(10)@991px to  rem(33)@1440px
margin-right: fluid(32, 65, 320, 2560);  : from rem(32)@320px to  rem(65)@2560px
*/
/*
AUTOFILL

USAGE:
@include mixin.autofill(background-color, text-color);
@include mixin.autofill;

Note: Call this mixin in the wrapper or container to where you intend to manipulate the
      default chrome autofill styles for input, textarea and select elements.
*/
/* stylelint-disable */
/* stylelint-enable */
/* Font */
/* GFIP color palette */
:root {
  --dark-green: #005600;
  --teal-green: #0f7557;
  --forest-green-60: rgba(39, 84, 28, 0.6);
  --green: #239600;
  --light-green: #5edc38;
  --lime-green: #97d83e;
  --light-green-bg: #dffcd6;
  --mint-green: #80DCC1;
  --bright-green: #009A00;
  --pastel-green: #0F7557;
  --yellow: #e9fa4c;
  --lime-yellow: #e6f410;
  --gold: #a1b500;
  --light-yellow-bg: #faffd4;
  --dark-blue: #1b5ea3;
  --medium-blue: #3b5faf;
  --blue: #04b7d9;
  --light-blue: #7df5f5;
  --powder-blue: #ADF4FF;
  --resource-blue: #7de5f5;
  --resource-yellow: #f1fc88;
  --resource-blue-tag: #adf4ff;
  --resource-green-tag: #a3ff87;
  --violet: #5578c4;
  --orange: #f2542d;
  --black: #000;
  --black-transparent: rgba(0, 0, 0, 0);
  --white: #fff;
  --white-70: rgba(255, 255, 255, 0.7);
  --red: #FC0404;
}

section.section.section--program-module {
  padding: 6.25rem 0;
  color: var(--black);
}
section.section.section--program-module.is-white {
  background-color: var(--white);
}
@media screen and (min-width:991px) {
  section.section.section--program-module {
    padding: 5rem 0 3.875rem;
  }
}
@media screen and (min-width:1700px) {
  section.section.section--program-module {
    padding: 5.5555555556vw 0 4.3055555556vw;
  }
}

.gfip.program-module {
  display: grid;
  gap: 1.875rem;
}
@media screen and (min-width:991px) {
  .gfip.program-module {
    align-items: start;
    grid-template-columns: minmax(0, 785fr) minmax(18.75rem, 440fr);
    gap: clamp(2.5rem, 9.375vw, 8.25rem);
  }
}
@media screen and (min-width:1700px) {
  .gfip.program-module {
    grid-template-columns: minmax(0, 785fr) minmax(20.8333333333vw, 440fr);
    gap: 9.1666666667vw;
  }
}
.gfip.program-module .program-module__cnt {
  display: flex;
  min-width: 0;
  flex-direction: column;
}
@media screen and (min-width:991px) {
  .gfip.program-module .program-module__cnt {
    gap: 2.375rem;
  }
}
@media screen and (min-width:1700px) {
  .gfip.program-module .program-module__cnt {
    gap: 2.6388888889vw;
  }
}
.gfip.program-module .program-module__title {
  max-width: 36.75rem;
  margin: 0;
  font-family: "PT Serif Caption", serif;
  font-size: clamp(1.625rem, 0.38536vw + 1.528179375rem, 1.875rem);
  font-style: normal;
  font-weight: 400;
  letter-spacing: normal;
  line-height: 1.23;
}
@media screen and (min-width:1199px) {
  .gfip.program-module .program-module__title {
    line-height: 1.27;
  }
}
@media screen and (min-width:1700px) {
  .gfip.program-module .program-module__title {
    font-size: 2.0833333333vw;
  }
}
@media screen and (min-width:1700px) {
  .gfip.program-module .program-module__title {
    max-width: 40.8333333333vw;
  }
}
.gfip.program-module .program-module__rows {
  border-top: 0.0625rem solid var(--black);
}
@media screen and (max-width:990px) {
  .gfip.program-module .program-module__rows {
    border-top: 0;
  }
}
@media screen and (min-width:1700px) {
  .gfip.program-module .program-module__rows {
    border-top-width: 0.0694444444vw;
  }
}
.gfip.program-module .program-module__row {
  display: flex;
  flex-direction: column;
  padding: 1.875rem 0 1.125rem;
  border-bottom: 0.0625rem solid var(--black);
  gap: 1.375rem;
}
@media screen and (min-width:991px) {
  .gfip.program-module .program-module__row {
    gap: 0.875rem;
    padding: 1.25rem 0;
  }
}
@media screen and (min-width:991px) {
  .gfip.program-module .program-module__row:first-child {
    padding-top: 1.25rem;
  }
}
.gfip.program-module .program-module__row:last-child {
  padding-bottom: 0;
  border-bottom: 0;
}
@media screen and (max-width:990px) {
  .gfip.program-module .program-module__row:last-child {
    padding-bottom: 1.25rem;
    border-bottom: 0.0625rem solid var(--black);
  }
}
@media screen and (min-width:1700px) {
  .gfip.program-module .program-module__row {
    padding: 1.3888888889vw 0;
    border-bottom-width: 0.0694444444vw;
    gap: 0.9722222222vw;
  }
}
.gfip.program-module .program-module__label {
  margin: 0;
  font-family: "PT Serif Caption", serif;
  font-size: clamp(1.125rem, 0.19268vw + 1.076589375rem, 1.25rem);
  font-style: normal;
  font-weight: 400;
  line-height: 1.56;
}
@media screen and (min-width:1199px) {
  .gfip.program-module .program-module__label {
    line-height: 1.5;
  }
}
@media screen and (min-width:1700px) {
  .gfip.program-module .program-module__label {
    font-size: 1.3888888889vw;
  }
}
@media screen and (max-width:990px) {
  .gfip.program-module .program-module__label {
    font-size: 1.25rem;
    line-height: 1.5;
  }
}
@media screen and (min-width:1700px) {
  .gfip.program-module .program-module__label {
    font-size: 1.3888888889vw;
  }
}
.gfip.program-module .program-module__body {
  max-width: 41.75rem;
}
@media screen and (min-width:1700px) {
  .gfip.program-module .program-module__body {
    max-width: 46.3888888889vw;
  }
}
.gfip.program-module .program-module__body p,
.gfip.program-module .program-module__body ol,
.gfip.program-module .program-module__body ul {
  margin-top: 0;
  margin-bottom: 0.875rem;
  font-family: "Plus Jakarta Sans", sans-serif;
  font-size: 1rem;
  font-style: normal;
  font-weight: 500;
  line-height: 1.38;
}
@media screen and (min-width:1700px) {
  .gfip.program-module .program-module__body p,
  .gfip.program-module .program-module__body ol,
  .gfip.program-module .program-module__body ul {
    font-size: 1.1111111111vw;
  }
}
.gfip.program-module .program-module__body p:last-child,
.gfip.program-module .program-module__body ol:last-child,
.gfip.program-module .program-module__body ul:last-child {
  margin-bottom: 0;
}
@media screen and (min-width:1700px) {
  .gfip.program-module .program-module__body p,
  .gfip.program-module .program-module__body ol,
  .gfip.program-module .program-module__body ul {
    margin-bottom: 0.9722222222vw;
  }
}
.gfip.program-module .program-module__body a {
  color: inherit;
  font: inherit;
  text-decoration: underline;
}
.gfip.program-module .program-module__body a:hover {
  text-decoration: none;
}
.gfip.program-module .program-module__cta {
  width: fit-content;
  align-self: flex-end;
  margin-top: 0.5625rem;
}
@media screen and (min-width:991px) {
  .gfip.program-module .program-module__cta {
    align-self: flex-start;
    margin-top: 0;
    padding: 0.9375rem 2rem;
  }
}
@media screen and (min-width:1700px) {
  .gfip.program-module .program-module__cta {
    padding: 1.0416666667vw 2.2222222222vw;
  }
}
.gfip.program-module .program-module__fig {
  position: relative;
  display: flex;
  min-width: 0;
  flex-direction: column;
  margin: 0;
}
.gfip.program-module .program-module__feature {
  display: block;
  width: 100%;
  overflow: hidden;
  aspect-ratio: 362/467;
}
@media screen and (min-width:991px) {
  .gfip.program-module .program-module__feature {
    aspect-ratio: 440/549;
  }
}
.gfip.program-module .program-module__feature img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.gfip.program-module .program-module__decorative {
  display: block;
  width: 100%;
  height: 5rem;
  overflow: hidden;
}
@media screen and (min-width:991px) {
  .gfip.program-module .program-module__decorative {
    height: 6.0625rem;
  }
}
@media screen and (min-width:1700px) {
  .gfip.program-module .program-module__decorative {
    height: 6.7361111111vw;
  }
}
.gfip.program-module .program-module__decorative img,
.gfip.program-module .program-module__decorative canvas {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
@media screen and (max-width:990px) {
  .gfip.program-module .program-module__decorative.mobile-is-dark-green {
    background-color: var(--dark-green);
  }
}
@media screen and (max-width:990px) {
  .gfip.program-module .program-module__decorative.mobile-is-light-green-bg {
    background-color: var(--light-green-bg);
  }
}
@media screen and (max-width:990px) {
  .gfip.program-module .program-module__decorative.mobile-is-green {
    background-color: var(--green);
  }
}
@media screen and (max-width:990px) {
  .gfip.program-module .program-module__decorative.mobile-is-light-green {
    background-color: var(--light-green);
  }
}
@media screen and (max-width:990px) {
  .gfip.program-module .program-module__decorative.mobile-is-yellow {
    background-color: var(--yellow);
  }
}
@media screen and (max-width:990px) {
  .gfip.program-module .program-module__decorative.mobile-is-light-yellow {
    background-color: var(--light-yellow-bg);
  }
}
@media screen and (max-width:990px) {
  .gfip.program-module .program-module__decorative.mobile-is-violet {
    background-color: var(--violet);
  }
}
@media screen and (max-width:990px) {
  .gfip.program-module .program-module__decorative.mobile-is-dark-blue {
    background-color: var(--dark-blue);
  }
}
@media screen and (max-width:990px) {
  .gfip.program-module .program-module__decorative.mobile-is-blue {
    background-color: var(--blue);
  }
}
@media screen and (max-width:990px) {
  .gfip.program-module .program-module__decorative.mobile-is-light-blue {
    background-color: var(--light-blue);
  }
}
@media screen and (max-width:990px) {
  .gfip.program-module .program-module__decorative.mobile-is-gold {
    background-color: var(--gold);
  }
}
.gfip.program-module .program-module__credit {
  position: absolute;
  z-index: 1;
  right: 0.5rem;
  bottom: 5.375rem;
  max-width: calc(100% - 1rem);
  margin: 0;
  text-align: right;
  color: var(--white);
  font-family: "Plus Jakarta Sans", sans-serif;
  font-size: 0.75rem;
  font-style: normal;
  font-weight: 600;
  line-height: 1.5;
}
@media screen and (min-width:1700px) {
  .gfip.program-module .program-module__credit {
    font-size: 0.8333333333vw;
  }
}
@media screen and (min-width:991px) {
  .gfip.program-module .program-module__credit {
    right: 0.625rem;
    bottom: 6.625rem;
  }
}
@media screen and (min-width:1700px) {
  .gfip.program-module .program-module__credit {
    right: 0.5555555556vw;
    bottom: 5.9722222222vw;
    max-width: calc(100% - 1.1111111111vw);
  }
}
.gfip.program-module .program-module__feature:last-of-type + .program-module__credit {
  bottom: 0.375rem;
}
@media screen and (min-width:1700px) {
  .gfip.program-module .program-module__feature:last-of-type + .program-module__credit {
    bottom: 0.4166666667vw;
  }
}
@media screen and (min-width:991px) {
  .gfip.program-module.is-alternate {
    grid-template-columns: minmax(18.75rem, 440fr) minmax(0, 785fr);
  }
  .gfip.program-module.is-alternate .program-module__cnt {
    order: 2;
  }
  .gfip.program-module.is-alternate .program-module__fig {
    order: 1;
  }
}
@media screen and (min-width:1700px) {
  .gfip.program-module.is-alternate {
    grid-template-columns: minmax(20.8333333333vw, 440fr) minmax(0, 785fr);
  }
}

/*# sourceMappingURL=program-module.css.map */
