
@media (min-width: 48rem) {
  :root {
    --spacing-default: 2.5rem;
    --spacing-small: 1.875rem;
    --spacing-large: 5rem;
    --gutter-left: 2.5rem;
    --gutter-right: 2.5rem;
    --gap-col: 1.875rem;
    --padding-bottom-content: 2.5rem;
  }
  .grid > .col-2 {
    grid-column: span 4;
  }
  .grid > .col-3 {
    grid-column: span 3;
  }
  .grid > .col-4 {
    grid-column: span 4;
  }
  .grid > .col-5 {
    grid-column: span 5;
  }
  .grid > .col-6 {
    grid-column: span 6;
  }
  .grid > .col-7 {
    grid-column: span 7;
  }
  .grid > .col-8 {
    grid-column: span 8;
  }
  .grid > .col-9 {
    grid-column: span 9;
  }
  .grid > .col-10 {
    grid-column: span 10;
  }
  .grid > .col-11 {
    grid-column: span 11;
  }
  .authorList:has(> :only-child) {
    grid-template-columns: unset;
  }
  .authorList:has(> :only-child) .authorWrap {
    width: 28.125rem;
    max-width: unset;
  }
  .authorList {
    --gap: 1.875rem;
  }
  .pageFooterWrap {
    display: grid;
    grid-template-columns: 2fr 1fr;
    grid-template-areas: "logo logo" "navigation social";
    padding-block: 2.5rem;
  }
  .pageFooterLogoContainer {
    grid-area: logo;
    margin-bottom: 1.875rem;
  }
  .pageFooterList {
    grid-area: navigation;
  }
  .pageFooterSloganSocialWrap {
    grid-area: social;
    padding: 0;
    gap: 3.75rem;
  }
  .pageFooterPolicies {
    grid-column: span 3;
    gap: 1.25rem;
    margin-top: 1.875rem;
  }
  .pageFooterPolicies::after {
    width: 100%;
  }
  .pageFooterPoliciesContainer {
    flex-direction: row;
  }
  .mediaHeroBlock {
    --secondaryPadding: 1.5rem;
    --blockPadding: 1.875rem;
    min-height: unset;
    border-radius: 1.25rem;
    aspect-ratio: 16/7;
    grid-template-rows: var(--blockPadding) auto 4.875rem auto var(--blockPadding);
    grid-template-columns: 1fr calc(var(--secondaryPadding) * 2 + 1.875rem) 1fr;
    /* Makes container flexible in height in iOS and MacOS*/
  }
  @supports (-webkit-hyphens: none) {
    .mediaHeroBlock {
      min-height: -moz-fit-content;
      min-height: fit-content; /* Safari-specific tweak */
    }
  }
  .mediaHeroBlock .cta {
    width: -moz-fit-content;
    width: fit-content;
  }
  .mediaHeroBlockPrimaryContentWrapper {
    grid-column: 1/3;
    margin-inline-end: 0;
  }
  .mediaHeroBlockPrimaryContentWrapper:has(+ .mediaHeroBlockSecondaryContentWrapper) .mediaHeroBlockPrimaryContent {
    padding-block-end: 1.875rem;
    padding-inline-end: 5rem;
  }
  .mediaHeroBlockSecondaryContentWrapper {
    grid-column: 2/-1;
  }
  .mediaHeroBlockPrimaryContent {
    padding: 1.875rem 1.25rem;
  }
  .mediaHeroBlock .apiVideoBlockLink {
    bottom: 1.25rem;
    left: 1.25rem;
    border-radius: 0.75rem;
  }
  .col-3:has(.peoplePromoBlockContainer) {
    grid-column: span 6;
  }
  .promoBlock.col-12:not(.noImage) .promoBlockWrap {
    display: grid;
    grid-template-columns: 6fr 4fr 2fr;
    grid-template-rows: 1fr auto 2.5rem;
    align-items: end;
  }
  .promoBlock.col-12:not(.noImage) .promoBlockWrap::after {
    content: "";
    background-color: #123546;
    grid-area: 2/2/3/4;
    z-index: 1;
    width: 100%;
    height: 100%;
    mix-blend-mode: multiply;
  }
  .promoBlock.col-12:not(.noImage):has(.promoBlockTitle a:hover) .text {
    --themeBackground: #0B2430;
  }
  .promoBlock.col-12:not(.noImage):focus-within .text {
    --themeBackground: #0B2430;
  }
  .promoBlock.col-12:not(.noImage).themePink .promoBlockWrap::after {
    background-color: #791D7E;
  }
  .promoBlock.col-12:not(.noImage).themePink:has(.promoBlockTitle a:hover) .text {
    --themeBackground: #3D193F;
  }
  .promoBlock.col-12:not(.noImage).themePink:focus-within .text {
    --themeBackground: #3D193F;
  }
  .promoBlock.col-12:not(.noImage) .image {
    grid-area: 1/1/4/3;
  }
  .promoBlock.col-12:not(.noImage) .text {
    --themeBackground: transparent;
    padding: 1.875rem;
    margin-block-start: 0;
    grid-area: 2/2/3/4;
    width: unset;
    justify-self: end;
    width: 100%;
  }
  .promoBlock.col-12:not(.noImage) .text .promoBlockTitle {
    --titleSize: 1.75rem;
    --titleLH: 1.25;
  }
  .promoBlock.col-12:not(.noImage).right .promoBlockWrap {
    grid-template-columns: 2fr 4fr 6fr;
  }
  .promoBlock.col-12:not(.noImage).right .promoBlockWrap:after {
    grid-area: 2/1/3/3;
  }
  .promoBlock.col-12:not(.noImage).right a:after {
    left: 0;
    right: calc((var(--gutter-left) + 0.0625rem) * -1);
  }
  .promoBlock.col-12:not(.noImage).right .image {
    border-radius: 0;
    border-top-left-radius: 0.625rem;
    border-bottom-left-radius: 0.625rem;
    justify-self: end;
    grid-area: 1/2/4/4;
    left: unset;
    right: calc(var(--gutter-left) * -1 - 0.0625rem);
  }
  .promoBlock.col-12:not(.noImage).right .image:after {
    transition: 0.5s ease-out right, 0.5s ease-out opacity;
    left: unset;
    right: calc(var(--width) * -1);
  }
  .promoBlock.col-12:not(.noImage).right .text {
    justify-self: start;
    grid-area: 2/1/3/3;
  }
  @supports not selector(p:has(p)) {
    .promoBlock.col-12:not(.noImage).right.noHas-.promoBlockTitle a:hover- .image:after {
      left: unset;
      right: 0;
    }
  }
  .promoBlock.col-12:not(.noImage).right:has(.promoBlockTitle a:hover) .image:after {
    left: unset;
    right: 0;
  }
  .promoBlock.col-12:not(.noImage).right:focus-within .image:after {
    left: unset;
    right: 0;
  }
  .promoBlock.col-3 {
    grid-column: span 6;
  }
  .formBlock {
    padding-inline: 3.75rem;
  }
  .mediaHeroCarouselBlock .carousel, .carousel {
    grid-template-columns: 1fr auto 1fr;
    grid-template-rows: auto 2.75rem;
    grid-template-areas: "carouselContents carouselContents carouselContents" "carouselBtnStart carouselPagination carouselBtnEnd";
    column-gap: 0.5rem;
  }
  .mediaHeroCarouselBlock .carouselBtn.prev, .carouselBtn.prev {
    transform: unset;
    justify-self: flex-end;
  }
  .mediaHeroCarouselBlock .carouselBtn.next, .carouselBtn.next {
    transform: unset;
  }
  .mediaHeroCarouselBlock .carouselPaginationList, .carouselPaginationList {
    margin-block-end: 0;
  }
  .mediaCarouselBlock .carouselPagination {
    --column-gap: 1.25rem;
    --on-show: 6;
  }
  .mediaHeroCarouselBlock .carouselContent {
    border-radius: 1.25rem;
  }
  .articleHubBlock,
  .contentListingBlock {
    --rowGap: 1.875rem;
    --colGap: 1.875rem;
  }
  .contentListingBlock.carousel-cols-3 .carousel {
    --carousel-cols: 2;
  }
  .contentListingBlock.carousel-cols-4 .carousel {
    --carousel-cols: 3;
  }
  .contentListingBlock.carousel-cols-6 .carousel {
    --carousel-cols: 2;
  }
  .contentListingBlock.carousel-cols-12 .carousel {
    --carousel-gap: 5rem;
  }
  .stacked.contentList {
    grid-template-columns: repeat(2, 1fr);
  }
  .apiVideoWrapper {
    grid-template-areas: "video content";
    grid-template-columns: 8fr 4fr;
    gap: 1.875rem;
  }
  .apiVideoWrapper.noContent {
    grid-template-areas: "video";
    grid-template-columns: auto;
  }
  .apiVideoBlockContent {
    border-width: 0.625rem;
  }
  .articleHubBlockTitle {
    font-size: 3.4375rem;
    line-height: 1.18;
    letter-spacing: 0.10313rem;
    margin: 0 0 2.5rem;
  }
  .articleHubBlockList {
    grid-template-columns: repeat(4, 1fr);
    grid-template-rows: repeat(3, auto);
  }
  .articleHubBlockList > :nth-child(2) .promoBlockTitle a,
  .articleHubBlockList > :nth-child(2) .promoBlockTitle, .articleHubBlockList > :nth-child(3) .promoBlockTitle a,
  .articleHubBlockList > :nth-child(3) .promoBlockTitle {
    font-size: 1.375rem;
    line-height: 1.875rem;
  }
  .articleHubBlockListItem:nth-child(1) {
    grid-area: 1/1/2/5;
  }
  .articleHubBlockListItem:nth-child(2) {
    grid-area: 2/1/3/3;
  }
  .articleHubBlockListItem:nth-child(3) {
    grid-area: 2/3/3/5;
  }
  .articleHubBlockListItem:nth-child(4) {
    grid-area: 3/1/4/2;
  }
  .articleHubBlockListItem:nth-child(5) {
    grid-area: 3/2/4/3;
  }
  .articleHubBlockListItem:nth-child(6) {
    grid-area: 3/3/4/4;
  }
  .articleHubBlockListItem:nth-child(7) {
    grid-area: 3/4/4/5;
  }
  .articleHubBlock .ctaLink {
    margin: 1.875rem auto 0;
  }
  .listingPageForm.spacingSmall {
    margin-block-start: 1.875rem;
  }
  .listingPage .results {
    --gap-col: 1.875rem;
    --gap-row: var(--gap-col);
  }
  .pagination {
    grid-template-columns: 2.75rem auto 2.75rem;
    column-gap: 0.625rem;
    margin-block-start: 3.75rem;
  }
  .prevNextWrapper.prev {
    left: 0;
  }
  .prevNextWrapper.next {
    right: 0;
  }
  .clearAll {
    display: inline-block;
  }
}
@media (min-width: 64rem) {
  :root {
    --spacing-default: 3.75rem;
    --spacing-small: 2.5rem;
    --spacing-large: 7.5rem;
    --gutter-left: 3.75rem;
    --gutter-right: 3.75rem;
    --padding-bottom-content: 3.75rem;
  }
  .grid > .narrow.textBlock {
    grid-column: 2/span 10;
  }
  .grid .textBlock {
    grid-column: 1/span 10;
  }
  .author {
    grid-column: 2/span 10;
  }
  .authorList {
    grid-template-columns: repeat(2, 1fr);
  }
  .pageHeader {
    margin-bottom: 1.875rem;
  }
  .pageHeaderWrap {
    column-gap: 1.875rem;
    grid-template-columns: auto 1fr auto auto;
    grid-template-rows: 3.125rem 3.1875rem 2.9375rem;
    grid-template-areas: "eyebrow eyebrow eyebrow eyebrow" "logo logo logo logo" "nav nav nav searchButton";
    align-items: center;
    margin-inline: auto;
  }
  @supports not selector(p:has(p)) {
    .noHas-.pageHeaderLocLang-.pageHeaderWrap {
      grid-template-areas: "eyebrow eyebrow loclang loclang" "logo logo logo logo" "nav nav nav searchButton";
    }
  }
  .pageHeaderWrap:has(.pageHeaderLocLang) {
    grid-template-areas: "eyebrow eyebrow loclang loclang" "logo logo logo logo" "nav nav nav searchButton";
  }
  .pageHeaderWrap:has(.level1 > .navigationListItem.open)::after {
    content: "";
    position: absolute;
    top: calc(100% - 0.0625rem);
    left: var(--gutter-left);
    height: 1.875rem;
    width: calc(100% - 2 * var(--gutter-left));
    background-color: #151515;
    border-bottom: 0.0625rem solid #ffffff;
    z-index: 1000;
  }
  .pageHeaderLogo svg {
    width: 8.125rem;
    height: 1.3125rem;
  }
  .pageHeaderNav {
    position: static;
    display: flex;
    justify-content: flex-start;
    grid-area: nav;
  }
  .pageHeaderEyebrow {
    display: flex;
    grid-area: eyebrow;
    gap: 1.875rem;
    align-items: center;
    padding: 0;
    justify-content: flex-end;
  }
  .pageHeaderEyebrow a, .pageHeaderEyebrow button {
    font-family: var(--font-family);
    font-weight: 300;
    font-size: 0.9375rem;
    letter-spacing: 0.03em;
    padding-inline: 0.3125rem;
    text-decoration-color: transparent;
  }
  @supports not selector(*:focus-visible) {
    .pageHeaderEyebrow a:focus, .pageHeaderEyebrow button:focus {
      text-decoration-color: #ffffff;
    }
    body.notUsingKeys .pageHeaderEyebrow a:focus, body.notUsingKeys .pageHeaderEyebrow button:focus {
      outline: 0;
    }
  }
  .pageHeaderEyebrow a:hover, .pageHeaderEyebrow button:hover {
    text-decoration-color: #ffffff;
  }
  .pageHeaderEyebrow a:focus-visible, .pageHeaderEyebrow button:focus-visible {
    text-decoration-color: #ffffff;
  }
  .pageHeaderLocLang {
    justify-content: unset;
  }
  .pageHeaderLocLangWrapper {
    position: relative;
  }
  .pageHeaderLocLangWrapper button {
    font-size: 0.9375rem;
    height: unset;
  }
  .pageHeaderLocLangWrapper button:after {
    outline-offset: 0.25rem;
  }
  .pageHeaderLocLangButtonWrapper {
    height: unset;
  }
  .pageHeaderButton.nav {
    display: none;
  }
  @supports not selector(*:focus-visible) {
    .pageHeaderSearchButton:focus svg use {
      fill: #E60073;
    }
    body.notUsingKeys .pageHeaderSearchButton:focus {
      outline: 0;
    }
  }
  .pageHeaderSearchButton:hover svg use {
    fill: #E60073;
  }
  .pageHeaderSearchButton:focus-visible svg use {
    fill: #E60073;
  }
  .navigationList.level1 > .navigationListItem > a, .navigationList.level1 > .navigationListItem > button {
    padding-inline-end: 1.375rem;
  }
  .navigationList.level1 > .navigationListItem > a > .text, .navigationList.level1 > .navigationListItem > button > .text {
    position: static;
  }
  .navigationList.level1 > .navigationListItem > a .icon, .navigationList.level1 > .navigationListItem > button .icon {
    position: absolute;
    transition: unset;
  }
  .navigationList.level1 > .navigationListItem > .hasSubNav > .icon {
    right: 0;
  }
  .navigationList.level1 > .navigationListItem > .hasSubNav > .icon svg {
    transform: unset;
  }
  .navigationList.level1 > .navigationListItem > .hasSubNav > .icon .navigationListItemIconUp {
    width: 0.75rem;
    height: 0.5rem;
    transform: rotate(180deg);
  }
  .navigationList.level1 > .navigationListItem.open > .hasSubNav > .icon svg {
    transform: rotate(0);
  }
  .navigationList.level2 {
    position: absolute;
    visibility: hidden;
    left: 0;
    opacity: 0;
    transition: opacity 0.2s ease-in-out;
    scrollbar-width: none;
    -ms-overflow-style: none;
  }
  .navigationList.level2::-webkit-scrollbar, .navigationList.level2::-webkit-scrollbar-button {
    display: none;
  }
  .navigationList.level3 {
    display: none;
  }
  .navigationListItemLink {
    line-height: 1.4;
  }
  html:has(.level1 > .navigationListItem.open) {
    overflow-y: hidden;
  }
  html:has(.level1 > .navigationListItem.open) .pageHeader {
    padding-right: calc(2 * var(--scrollbar-width));
  }
  .pageFooterWrap {
    grid-template-columns: 2fr 26%;
    padding-block: 3.75rem;
  }
  .pageFooterList {
    flex-direction: row;
    justify-content: flex-start;
  }
  .pageFooterList .flexListWrapper:first-of-type {
    margin-block-end: 0;
  }
  .pageFooterList .flexList {
    width: 18rem;
  }
  .pageFooterSloganSocialWrap {
    gap: 2.5rem;
  }
  .grid > .quoteBlockWrapper.narrow {
    grid-column: 2/span 11;
  }
  .keyTakeawayBlockImage + .keyTakeawayBlockContent {
    margin-block-start: -2.5rem;
  }
  .keyTakeawayBlockCardswrapper {
    flex-flow: row;
  }
  .keyTakeawayBlockCardflex {
    flex: 1;
    min-width: 15.0625rem;
  }
  .textHeroBlock {
    grid-column: 2/span 10;
  }
  .textHeroBlock::after {
    margin: 1.875rem auto 0;
  }
  .textHeroBlock .titleBlock {
    gap: 1.875rem;
  }
  .textHeroBlock .titleBlock {
    gap: 2.5rem;
  }
  .textHeroBlockProjectname {
    margin: 0 0 -1.5625rem;
  }
  .textHeroBlockTitle {
    line-height: 1;
  }
  .filterBlockTitle {
    font-size: 1.875rem;
    margin-block-end: 2.8125rem;
    line-height: 1.27;
  }
  .mediaHeroBlock {
    --blockPadding: 2.5rem;
  }
  .mediaHeroBlockPrimaryContent {
    gap: 0.625rem;
    padding: 1.875rem 2.5rem;
  }
  .mediaHeroBlockPrimaryContentTitle {
    font-size: 3.625rem;
    line-height: 3.875rem;
  }
  .mediaHeroBlockPrimaryContentTitle.small {
    font-size: 2.75rem;
    line-height: 3rem;
  }
  .peoplePromoBlockContainer:has(.peoplePromoBlockLink:hover, .cta:hover) .overlay {
    background-size: 0 100%, 5rem 100%;
  }
  .peoplePromoBlockContainer:has(:focus-visible) .overlay {
    background-size: 0 100%, 5rem 100%;
  }
  .col-3:has(.peoplePromoBlockContainer) {
    grid-column: span 3;
  }
  .promoBlock.col-12:not(.noImage) .promoBlockWrap {
    grid-template-columns: 7fr 3fr 2fr;
  }
  .promoBlock.col-12:not(.noImage) .text .promoBlockTitle {
    --titleSize: 1.875rem;
    --titleLH: 1.25;
  }
  .promoBlock.col-12:not(.noImage).right .promoBlockWrap {
    grid-template-columns: 2fr 3fr 7fr;
  }
  .promoBlock.col-3 {
    grid-column: span 3;
  }
  .formBlock {
    padding-inline: 6.25rem;
  }
  .formBlock:not(.modal) {
    grid-column: 2/span 10;
  }
  .grid > .accordions.narrow {
    grid-column: 2/span 10;
  }
  .searchWrap {
    padding: var(--topspacing) var(--gutter-left) calc(var(--topspacing) * 2);
  }
  .searchForm {
    font-size: 1.625rem;
    width: 55vw;
    max-width: 63.75rem;
  }
  .searchPage .searchForm {
    max-width: 45rem;
    margin-inline: auto;
    width: auto;
  }
  .articleHubBlock,
  .contentListingBlock {
    --rowGap: 2.5rem;
  }
  .contentListingBlock.carousel-cols-3 .carousel {
    --carousel-cols: 4;
  }
  .contentListingBlock.carousel-cols-12 .carousel {
    --carousel-gap: 7.5rem;
  }
  .stacked.contentList {
    grid-template-columns: repeat(4, 1fr);
  }
  .apiVideoBlockLink::before {
    width: 4.25rem;
    height: 4.25rem;
  }
  .apiVideoBlockIconPlay {
    width: 1.3125rem;
  }
  .apiVideoBlockIconBuffering {
    width: 1.9375rem;
  }
  .articleHubBlockList {
    grid-template-columns: repeat(12, 1fr);
    grid-template-rows: 1fr 1fr auto;
  }
  .articleHubBlockList .promoBlockTitle a,
  .articleHubBlockList .promoBlockTitle {
    font-size: 1.375rem;
    line-height: 1.875rem;
  }
  .articleHubBlockList > :first-child .promoBlockTitle a,
  .articleHubBlockList > :first-child .promoBlockTitle {
    font-size: 1.75rem;
    line-height: 2.125rem;
  }
  .articleHubBlockListItem:nth-child(1) {
    grid-area: 1/1/3/9;
  }
  .articleHubBlockListItem:nth-child(2) {
    grid-area: 1/9/2/13;
  }
  .articleHubBlockListItem:nth-child(3) {
    grid-area: 2/9/3/13;
  }
  .articleHubBlockListItem:nth-child(4) {
    grid-area: 3/1/4/4;
  }
  .articleHubBlockListItem:nth-child(5) {
    grid-area: 3/4/4/7;
  }
  .articleHubBlockListItem:nth-child(6) {
    grid-area: 3/7/4/10;
  }
  .articleHubBlockListItem:nth-child(7) {
    grid-area: 3/10/4/13;
  }
  .listingPageForm.spacingSmall {
    margin-block-start: 1.25rem;
  }
  .listingPageFilters {
    grid-template-columns: repeat(var(--filterCount, 4), 1fr);
    margin-block-end: 1.875rem;
    padding: 1.25rem;
    gap: 1.25rem;
  }
  .listingPageSort .dropDown ul {
    position: absolute;
    right: 0;
    top: calc(100% - 0.0625rem);
    width: auto;
  }
  .listingPageSort .dropDown ul li {
    text-wrap: nowrap;
  }
  .listingPage .resultsDetails {
    flex-flow: row-reverse;
    justify-content: space-between;
    align-items: center;
    padding-block: 1.25rem 2.5rem;
  }
  .listingPage .resultsDetails:has(.listingPageSort.hide) {
    flex-flow: row;
  }
  .searchPage .listingPageFilters {
    grid-template-columns: repeat(3, 1fr);
  }
  .dropDown {
    display: grid;
    grid-template-columns: subgrid;
    grid-column: 1/-1;
    grid-row: 1/-1;
  }
  .dropDown > ul {
    grid-area: filters;
    grid-column: span var(--filterCount, 4);
    padding-block: 3.75rem 1.25rem;
    gap: 2.5rem;
  }
  .filterTermsWrapper {
    display: flex;
    flex-flow: row wrap;
    align-items: center;
  }
}
@media (min-width: 80rem) {
  :root {
    --spacing-default: 12.5rem;
    --spacing-small: 4.375rem;
    --spacing-large: 16.25rem;
    --gutter-left: 5rem;
    --gutter-right: 5rem;
    --gap-col: 3rem;
    --padding-bottom-content: 5rem;
  }
  .grid > .col-2 {
    grid-column: span 2;
  }
  .grid > .col-3 {
    grid-column: span 3;
  }
  .grid > .narrow {
    grid-column: 2/span 10;
  }
  .grid > .narrow.textBlock {
    grid-column: 3/span 8;
  }
  .grid .textBlock {
    grid-column: 1/span 8;
  }
  [class*=col-].spacingHero {
    margin-block-end: var(--spacing-small);
  }
  :root {
    --cta-padding-vertical: 1.25rem;
  }
  :root:has(.level1 > .navigationListItem.open) main:after,
  :root:has(.level1 > .navigationListItem.open) footer.pageFooter:after {
    z-index: 99;
  }
  .cta:hover {
    outline-offset: 0.625rem;
  }
  .cta:focus-visible {
    outline-offset: 0.625rem;
  }
  .cta {
    font-size: 1.125rem;
    border-radius: var(--radius-mid);
  }
  h1,
  h2 {
    font-size: 3.875rem;
    line-height: 1.1;
  }
  h1.condensed,
  h2.condensed {
    font-size: 4.375rem;
    line-height: 1.12;
  }
  h2.small,
  h3 {
    font-size: 3.4375rem;
    line-height: 1.18;
  }
  h4 {
    font-size: 2.75rem;
  }
  p, a, button, li, td {
    font-size: 1.375rem;
    line-height: 1.5;
  }
  p.intro, a.intro, button.intro, li.intro, td.intro {
    font-size: 2.125rem;
    line-height: 1.18;
  }
  .wysiwyg img.floatLeft,
  .mce-content-body img.floatLeft {
    float: left;
    width: 50%;
    margin-right: 1.875rem;
  }
  .wysiwyg img.floatRight,
  .mce-content-body img.floatRight {
    float: right;
    width: 50%;
    margin-left: 1.875rem;
  }
  .authorList:has(> :only-child) .authorWrap {
    width: 31.25rem;
  }
  .authorList {
    gap: 3rem;
    margin-block-end: var(--spacing-small);
  }
  .authorWrap {
    gap: 1.875rem;
    padding: 1.25rem;
  }
  .authorImage .overlay {
    border-radius: 0.75rem;
  }
  .authorName {
    font-size: 1.625rem;
    font-style: normal;
    line-height: 1.46;
  }
  .pageHeader {
    margin-bottom: 4.375rem;
  }
  .pageHeaderWrap {
    grid-template-columns: auto 1fr auto auto;
    grid-template-rows: 3.125rem 4.625rem;
    grid-template-areas: "eyebrow eyebrow eyebrow eyebrow" "logo nav nav searchButton";
  }
  @supports not selector(p:has(p)) {
    .noHas-.pageHeaderLocLang-.pageHeaderWrap {
      grid-template-areas: "eyebrow eyebrow loclang loclang" "logo nav nav searchButton";
    }
  }
  .pageHeaderWrap:has(.pageHeaderLocLang) {
    grid-template-areas: "eyebrow eyebrow loclang loclang" "logo nav nav searchButton";
  }
  .pageHeaderLogo {
    padding: 0;
  }
  .pageHeaderNav {
    justify-content: center;
  }
  .pageHeaderButton.nav {
    display: none;
  }
  .pageHeaderNav .navigation {
    height: auto;
    overflow: visible;
  }
  .pageHeaderEyebrow a, .pageHeaderEyebrow button {
    font-size: 1rem;
  }
  .pageHeaderLocLangWrapper button {
    font-size: 1rem;
  }
  .navigationList.level1 > .navigationListItem > .hasSubNav {
    font-size: 1.125rem;
  }
  .pageFooterWrap {
    grid-template-columns: 1fr 2fr 2fr;
    grid-template-areas: "logo navigation social" "logo navigation social";
    padding-block: 6.25rem 0;
  }
  .pageFooterLogoContainer .logoIcon {
    width: 9.375rem;
    height: 1.5rem;
  }
  .pageFooterList {
    gap: 3.75rem;
  }
  .pageFooterList .flexList {
    width: 8.5rem;
  }
  .pageFooterListItem {
    line-height: 0.9;
  }
  .pageFooterListItemLink {
    font-size: 1.125rem;
    line-height: 1.33;
  }
  .pageFooterSloganSocialWrap {
    flex-direction: row;
    gap: 3.75rem;
  }
  .pageFooterSloganSocialWrap .slogan {
    padding-left: 1.5625rem;
  }
  .pageFooterPolicies {
    flex-direction: row;
    justify-content: space-between;
    margin-top: 5.625rem;
    padding-top: 1.25rem;
  }
  .pageFooterPolicies::after {
    width: 100vw;
  }
  .pageFooterPoliciesContainer .policyLink {
    font-size: 1rem;
    line-height: 1.25;
  }
  .pageFooterPoliciesCopyright {
    font-size: 1.125rem;
    line-height: 1.44;
  }
  .breadcrumbsList {
    margin: 0.625rem 0 4.375rem;
    justify-content: flex-start;
  }
  .breadcrumbsItem {
    display: block;
  }
  .breadcrumbsItem:last-of-type {
    display: none;
  }
  .breadcrumbsLink {
    display: flex;
    font-size: 1.25rem;
    line-height: 1.2;
    letter-spacing: 0.15em;
  }
  .breadcrumbsLinkText {
    display: block;
  }
  .breadcrumbsLinkTextPrevious {
    display: none;
  }
  body:has(.textHeroBlock) .breadcrumbsList {
    justify-content: center;
  }
  .quoteBlockBody {
    display: flex;
    flex-flow: row wrap;
    justify-content: flex-start;
    align-items: flex-start;
    align-content: flex-start;
    padding: 0 0 0 5rem;
    --keylineWidth: 1.25rem;
  }
  .quoteBlockBody .wysiwyg p {
    font-size: 2.1875rem;
    line-height: 1.34;
  }
  .quoteBlockFooter {
    padding: 1.875rem 0 0;
  }
  .quoteBlockCite {
    font-size: 1.375rem;
    line-height: 1.54;
  }
  .quoteBlockAuthor {
    font-size: 1.375rem;
    line-height: 1.54;
  }
  .quoteBlockComa {
    font-size: 1.375rem;
    line-height: 1.54;
  }
  .grid > .quoteBlockWrapper.narrow {
    grid-column: 3/span 9;
  }
  .keyTakeawayBlockImage img {
    aspect-ratio: 21/9;
    border-radius: 1.25rem;
    width: 100%;
    object-fit: cover;
  }
  .keyTakeawayBlockImage + .keyTakeawayBlockContent {
    margin-block-start: -3.75rem;
  }
  .keyTakeawayBlockContent {
    flex-flow: row;
    margin-inline: 1.875rem;
    padding: 1.875rem;
  }
  .keyTakeawayBlockTitle {
    font-size: 2.5rem;
    min-width: 15.5rem;
    max-width: min-content;
  }
  .keyTakeawayBlockCardswrapper {
    gap: 1.875rem;
    flex: 1;
    flex-wrap: wrap;
  }
  .keyTakeawayBlockCardflex {
    border-left: 0.3125rem solid #E60073;
    padding: 0 0 0 1.875rem;
    min-width: 11.375rem;
  }
  .keyTakeawayBlockCardtitle {
    font-size: clamp(2.88rem, -4.17rem + 8.81vw, 3.75rem);
  }
  .keyTakeawayBlockCardtext {
    font-size: 1.125rem;
    line-height: 1.55;
  }
  .textHeroBlock {
    grid-column: 3/span 8;
  }
  .textHeroBlockProjectname {
    font-size: 1.625rem;
    line-height: 1.38;
  }
  .textHeroBlockTitle {
    font-size: 3.4375rem;
    line-height: 1.18;
    letter-spacing: 0.10313rem;
  }
  .textHeroBlockDate {
    font-size: 1.125rem;
    line-height: 1.11;
    letter-spacing: 0.0675rem;
  }
  .textHeroBlockSubtitle {
    font-size: 1.625rem;
    line-height: 1.38;
  }
  .textHeroBlock .tertiary {
    font-size: 1.125rem;
    line-height: 1.4375rem;
  }
  .titleBlock {
    max-width: 56.25rem;
  }
  .titleBlockTitle {
    font-size: 3.4375rem;
    line-height: 1.18;
    letter-spacing: 0.10313rem;
  }
  .titleBlockTitleSub {
    font-size: 1.375rem;
    line-height: 1.54;
    letter-spacing: 0.04125rem;
  }
  .mediaHeroBlock {
    --blockPadding: 3.125rem;
  }
  .mediaHeroBlockPrimaryContentWrapper:has(+ .mediaHeroBlockSecondaryContentWrapper) .mediaHeroBlockPrimaryContent {
    padding-block-end: 2.5rem;
    padding-inline-end: 6.875rem;
  }
  .mediaHeroBlockPrimaryContent {
    gap: 0.9375rem;
    padding: 2.5rem 3.75rem;
  }
  .mediaHeroBlockPrimaryContentTitle {
    letter-spacing: 0.2em;
    font-size: 6rem;
    line-height: 6.25rem;
  }
  .mediaHeroBlockPrimaryContentTitle.small {
    font-size: clamp(2.93rem, -1.08rem + 5.03vw, 3.43rem);
    line-height: 1.1;
  }
  .mediaHeroBlockPrimaryContent > p {
    font-size: 1.875rem;
    line-height: 1.25;
  }
  .mediaHeroBlockPrimaryContentLink {
    margin-block-start: 2.1875rem;
  }
  .mediaHeroBlockSecondaryContent {
    gap: 1.25rem;
  }
  .mediaHeroBlockSecondaryContentTitle {
    font-size: 0.9375rem;
  }
  .mediaHeroBlockSecondaryContent > p {
    font-size: 2.125rem;
    line-height: 1.25;
  }
  .mediaHeroBlockSecondaryContent > p.small {
    font-size: 1.625rem;
    line-height: 2.375rem;
  }
  .mediaHeroBlockSecondaryContentLink {
    margin-block-start: 1.25rem;
  }
  .imageBlockText {
    font-size: 1.625rem;
    margin: -2.25rem 2.5rem 0;
    padding: 1.25rem;
    border-radius: 1.25rem;
    line-height: 1.21;
    letter-spacing: 0.0525rem;
  }
  .ctaBlockContainer {
    max-width: 74.6875rem;
    padding: 0 0 0 5rem;
  }
  .ctaBlockTitle {
    margin: 0 0 1.875rem;
    font-size: 3.4375rem;
    line-height: 1.18;
    letter-spacing: 0.10313rem;
  }
  .ctaBlockText {
    margin: 0 0 3rem;
    font-size: 1.375rem;
    line-height: 1.54;
  }
  .peoplePromoBlockContainer {
    padding: 1.875rem;
    border-radius: 1.25rem;
    gap: 2.5rem;
  }
  .peoplePromoBlockImage img {
    border-radius: 0.75rem;
  }
  .peoplePromoBlockImage .overlay {
    border-radius: 0.75rem;
  }
  .peoplePromoBlockTitle {
    font-family: var(--font-family);
    font-weight: 300;
    font-size: 1.75rem;
    line-height: 1.12;
    letter-spacing: 0.0525rem;
  }
  .peoplePromoBlockJob {
    font-size: 1.125rem;
    line-height: 1.44;
  }
  .peoplePromoBlockSummary {
    font-size: 1.125rem;
    line-height: 1.44;
    letter-spacing: 0.03375rem;
  }
  .col-3 .cta {
    padding-block: 0.9375rem;
    border-radius: 0.3125rem;
    font-size: 1rem;
  }
  @supports not selector(*:focus-visible) {
    .col-3 .cta:focus {
      outline-offset: 0.5rem;
    }
    body.notUsingKeys .col-3 .cta:focus {
      outline: 0;
    }
  }
  .col-3 .cta:hover {
    outline-offset: 0.5rem;
  }
  .col-3 .cta:focus-visible {
    outline-offset: 0.5rem;
  }
  .formTitle {
    margin-block-end: 3.75rem;
  }
  .form .hbspt-form {
    --spacing: 1.875rem;
  }
  .form .hbspt-form .form-columns-1 .hs-form-field .input input,
  .form .hbspt-form .form-columns-1 .hs-form-field .input select,
  .form .hbspt-form .form-columns-1 .hs-form-field .input textarea,
  .form .hbspt-form .form-columns-2 .hs-form-field .input input,
  .form .hbspt-form .form-columns-2 .hs-form-field .input select,
  .form .hbspt-form .form-columns-2 .hs-form-field .input textarea {
    border-radius: 0.75rem;
  }
  .form .hbspt-form .hs-button:hover {
    outline-offset: 0.625rem;
  }
  .form .hbspt-form .hs-button:focus-visible {
    outline-offset: 0.625rem;
  }
  .form .hbspt-form .hs-button {
    font-size: 1.125rem;
    border-radius: var(--radius-mid);
  }
  .promoBlock {
    --cardPadding: 1.875rem;
    --borderRadius: 1.25rem;
  }
  .promoBlock.col-12:not(.noImage) .promoBlockWrap {
    grid-template-rows: 1fr auto 3.75rem;
    grid-template-columns: 8fr 2fr 2fr;
  }
  .promoBlock.col-12:not(.noImage) .image {
    aspect-ratio: 5/3;
  }
  .promoBlock.col-12:not(.noImage) .image img {
    height: 100%;
    width: 100%;
    object-fit: cover;
    object-position: center;
  }
  .promoBlockWrap {
    --imageGap: 2.5rem;
  }
  .promoBlock .image:after {
    --width: 5rem;
  }
  .promoBlockTag {
    --tagSize: 1rem;
  }
  .promoBlockProjectName {
    --titleSize: 1.25rem;
    --titleLH: 1.5;
  }
  .promoBlockTitle {
    --titleSize: 1.75rem;
    --titleLH: 1.2;
  }
  .promoBlockSummary {
    --summarySize: 1.125rem;
  }
  .promoBlock.col-3 {
    --cardPadding: 0.9375rem;
  }
  .promoBlock.col-3 .promoBlockTag {
    --tagSize: 0.875rem;
  }
  .promoBlock.col-3 .promoBlockProjectName {
    --titleSize: 1rem;
  }
  .promoBlock.col-3 .promoBlockWrap {
    --imageGap: 1.875rem;
  }
  .promoBlock.col-3 .promoBlockTitle {
    --titleSize: 1.375rem;
  }
  .promoBlock.col-3 .promoBlockSummary {
    --summarySize: 0.9375rem;
  }
  .promoBlock.col-3 .image:after {
    --width: 2.5rem;
  }
  .searchPage .promoBlock a:after {
    border-radius: 1.375rem;
    border-width: 0.625rem;
  }
  .formBlock {
    border-radius: 1.25rem;
    padding: 3.75rem;
    --spacing: 1.875rem;
  }
  .formBlock:not(.modal) {
    grid-column: 3/span 8;
  }
  .accordionSummaryWrap {
    padding-block: 2.125rem;
  }
  .accordionSummaryText {
    font-size: 2.25rem;
    padding-inline-end: 5rem;
    max-width: 53.75rem;
  }
  .accordionSummaryIcon {
    top: 2.125rem;
    padding: 1.25rem;
    width: 2.5rem;
    height: 2.5rem;
  }
  .accordionSummaryIcon svg {
    top: 0.625rem;
    left: 0.625rem;
    width: 1.25rem;
    height: 1.25rem;
  }
  .accordionContent .accordionContentWrap {
    padding-block-end: 2.25rem;
  }
  .accordions.col-12 {
    grid-column: 2/span 10;
  }
  .grid > .accordions.narrow {
    grid-column: 3/span 8;
  }
  .mediaHeroCarouselBlock .carousel, .carousel {
    grid-template-rows: auto 3.75rem;
    --carousel-gap: 3rem;
    column-gap: 6.25rem;
  }
  .mediaHeroCarouselBlock .carouselContent, .carouselContent {
    margin-block-end: 2.5rem;
  }
  .mediaHeroCarouselBlock .carouselBtn, .carouselBtn {
    width: 3.75rem;
    height: 3.75rem;
  }
  .carouselBtn .icon {
    flex: 0 0 3.75rem;
    width: 3.75rem;
    height: 3.75rem;
  }
  .mediaHeroCarouselBlock .carouselPaginationItem, .carouselPaginationItem {
    flex: 0 0 1.25rem;
    margin: 0.75rem;
  }
  .mediaHeroCarouselBlock .carouselPaginationBtn, .carouselPaginationBtn {
    border-radius: 0.625rem;
    width: 1.25rem;
    height: 1.25rem;
  }
  .searchForm {
    border-width: 0.625rem;
  }
  .mediaCarouselBlock {
    --borderRadius: 1.25rem;
  }
  .mediaCarouselBlockTitle {
    line-height: 1.16;
    margin-block-end: 3.75rem;
  }
  .mediaCarouselBlock .carousel {
    column-gap: 6.25rem;
    grid-template-rows: auto auto 3.75rem;
  }
  .mediaCarouselBlock .carouselContent {
    margin-block-end: 2.5rem;
  }
  .mediaCarouselBlock .carouselBtn {
    width: 3.75rem;
    height: 3.75rem;
  }
  .mediaCarouselBlock .carouselBtn.next, .mediaCarouselBlock .carouselBtn.prev {
    margin: 0;
  }
  .mediaCarouselBlock .carouselBtn .icon {
    flex: 0 0 3.75rem;
    width: 3.75rem;
    height: 3.75rem;
  }
  .mediaCarouselBlock .carouselPagination {
    --column-gap: 2.5rem;
    margin-block-end: 2.5rem;
  }
  .mediaCarouselBlock .carouselPaginationList {
    margin-block-end: 1.875rem;
  }
  .mediaCarouselBlock .carouselPaginationBtn {
    border-radius: 0.75rem;
  }
  .mediaCarouselBlock .carouselPaginationBtn:disabled {
    outline-offset: 0.3125rem;
  }
  .mediaHeroCarouselBlock.spacingHero {
    margin-block-end: 6.25rem;
  }
  .mediaHeroCarouselBlock .embedBlock {
    border-radius: 1.25rem;
  }
  .articleHubBlock,
  .contentListingBlock {
    --colGap: 3rem;
  }
  .contentListingBlockHeader {
    margin-block-end: 2.5rem;
  }
  .contentListingBlock.carousel-cols-12 .carousel {
    --carousel-gap: 10rem;
  }
  .apiVideoBlock {
    border-radius: 0.75rem;
  }
  .apiVideoBlockLink::before {
    width: 5.25rem;
    height: 5.25rem;
  }
  .apiVideoWrapper {
    gap: 2.5rem;
  }
  .apiVideoBlockContent {
    padding-inline-start: 2.5rem;
  }
  .apiVideoBlockTitle {
    font-size: 2.75rem;
    line-height: 1.25;
  }
  .apiVideoBlockIconPlay {
    width: 1.625rem;
  }
  .apiVideoBlockIconBuffering {
    width: 2.5rem;
  }
  .articleHubBlockList {
    grid-template-columns: repeat(4, 1fr);
    grid-template-rows: repeat(4, 1fr);
  }
  .articleHubBlockList > :first-child .promoBlockTitle a,
  .articleHubBlockList > :first-child .promoBlockTitle {
    font-size: 2.75rem;
    line-height: 3.25rem;
  }
  .articleHubBlockListItem:nth-child(1) {
    grid-area: 1/1/5/3;
  }
  .articleHubBlockListItem:nth-child(2) {
    grid-area: 1/3/3/4;
  }
  .articleHubBlockListItem:nth-child(3) {
    grid-area: 3/3/5/4;
  }
  .articleHubBlockListItem:nth-child(4) {
    grid-area: 1/4/2/5;
  }
  .articleHubBlockListItem:nth-child(5) {
    grid-area: 2/4/3/5;
  }
  .articleHubBlockListItem:nth-child(6) {
    grid-area: 3/4/4/5;
  }
  .articleHubBlockListItem:nth-child(7) {
    grid-area: 4/4/5/5;
  }
  .listingPageForm.spacingSmall {
    margin-block-start: 0;
  }
  .listingPage .results > .col-4 {
    grid-column: span 3;
  }
  .searchPage .results li {
    grid-column: 2/span 10;
  }
  .filterTermsWrapper {
    gap: 1.25rem;
  }
  .filterTermsList {
    gap: 1.25rem;
  }
  .pagination {
    margin-block-start: 4.875rem;
  }
  .clearAllLink {
    font-size: 1.125rem;
    line-height: 1.55;
  }
}
@media (min-width: 90rem) {
  .wysiwyg img,
  .mce-content-body img {
    margin-block-end: 3.75rem;
  }
  .wysiwyg h1, .wysiwyg h2, .wysiwyg h3, .wysiwyg h4,
  .mce-content-body h1,
  .mce-content-body h2,
  .mce-content-body h3,
  .mce-content-body h4 {
    margin-block-end: 2.5rem;
  }
  .wysiwyg p, .wysiwyg ol, .wysiwyg ul, .wysiwyg li, .wysiwyg caption, .wysiwyg small,
  .mce-content-body p,
  .mce-content-body ol,
  .mce-content-body ul,
  .mce-content-body li,
  .mce-content-body caption,
  .mce-content-body small {
    margin: 0 auto 1.875rem;
  }
  .wysiwyg p + *:not(p):not(ul):not(ol):not(small):not(.cta),
  .mce-content-body p + *:not(p):not(ul):not(ol):not(small):not(.cta) {
    margin-block-start: 3.75rem;
  }
  .wysiwyg .cta,
  .mce-content-body .cta {
    margin-block-end: 1.875rem;
  }
  .authorList:has(> :only-child) .authorWrap {
    width: 34.375rem;
  }
  .authorList {
    grid-template-columns: repeat(2, 1fr);
    max-width: calc(68.75rem + var(--gap));
    margin-inline: auto;
  }
  .authorWrap {
    grid-template-columns: clamp(8.13rem, -13.48rem + 24vw, 9.63rem) 1fr;
  }
  .authorImage {
    width: clamp(8.13rem, -13.48rem + 24vw, 9.63rem);
    flex: 0 0 clamp(8.13rem, -13.48rem + 24vw, 9.63rem);
  }
  .pageHeaderLogo svg {
    width: 10.625rem;
    height: 1.75rem;
  }
  .navigationList {
    column-gap: 1.875rem;
  }
  .grid > .quoteBlockWrapper.narrow {
    grid-column: 4/span 8;
  }
  .keyTakeawayBlockCardswrapper {
    gap: 3rem;
  }
  .keyTakeawayBlockCardtitle {
    font-size: clamp(3.56rem, -3.19rem + 7.5vw, 3.75rem);
  }
  .mediaHeroBlock {
    --secondaryPadding: 1.875rem;
  }
  .promoBlock.col-3 {
    --cardPadding: 1.875rem;
  }
  .promoBlock.col-3 .promoBlockTag {
    --tagSize: 1rem;
  }
  .promoBlock.col-3 .promoBlockProjectName {
    --titleSize: 1.25rem;
  }
  .promoBlock.col-3 .promoBlockWrap {
    --imageGap: 2.5rem;
  }
  .promoBlock.col-3 .promoBlockTitle {
    --titleSize: 1.75rem;
  }
  .promoBlock.col-3 .promoBlockSummary {
    --summarySize: 1.125rem;
  }
  .listingPageFilters {
    padding: 1.875rem;
    column-gap: 1.875rem;
    border-radius: 0.75rem;
  }
  .listingPageSort .dropDown ul {
    border-bottom-left-radius: 0.75rem;
    border-bottom-right-radius: 0.75rem;
    padding: 1.25rem 1.875rem;
  }
  .listingPageSort .dropDown ul li a .labelHolder {
    font-size: 1.5rem;
  }
  .dropDown > button {
    font-size: 1.5rem;
    height: 4.875rem;
    padding-inline: 1.875rem;
    border-radius: 0.75rem;
  }
  .filterFormResultsMsg {
    font-size: 1.5rem;
  }
  .filterTermsListItem > a {
    font-size: 1.125rem;
  }
}
@media (min-width: 120rem) {
  :root {
    --gutter-left: 6.25rem;
    --gutter-right: 6.25rem;
    --padding-bottom-content: 6.25rem;
  }
  .grid > .col-2 {
    grid-column: span 2;
  }
  h1,
  h2 {
    font-size: 4.5rem;
  }
  h1.condensed,
  h2.condensed {
    font-size: 5rem;
  }
  h2.small,
  h3 {
    font-size: 4.0625rem;
    line-height: 1.18;
  }
  h4 {
    font-size: 3.375rem;
    line-height: 1.18;
  }
  p, a, button, li, td {
    font-size: 1.625rem;
  }
  p.intro, a.intro, button.intro, li.intro, td.intro {
    font-size: 2.25rem;
    line-height: 1.39;
  }
  .author {
    grid-column: 3/span 8;
  }
  .author:has(.authorList .authorWrap:nth-child(3)) {
    grid-column: 2/span 10;
  }
  .authorList .authorWrap:not(:only-child):nth-last-child(1):nth-child(odd) {
    left: 0;
  }
  .authorList:has(.authorWrap:nth-child(3)) {
    grid-template-columns: repeat(3, 1fr);
    max-width: unset;
  }
  .authorList:has(> :nth-child(3)) .authorWrap {
    grid-template-columns: 8.125rem 1fr;
  }
  .authorList:has(> :nth-child(3)) .authorImage {
    width: 8.125rem;
    flex: 0 0 8.125rem;
  }
  .authorWrap {
    grid-template-columns: 10.75rem 1fr;
  }
  .authorImage {
    width: 10.75rem;
    flex: 0 0 10.75rem;
  }
  .pageHeaderWrap:has(.level1 > .navigationListItem.open)::after {
    height: 3.75rem;
  }
  .pageFooterWrap {
    padding-block: 7.5rem 0;
  }
  .pageFooterLogoContainer .logoIcon {
    width: 12.5rem;
    height: 2rem;
  }
  .pageFooterList .flexList {
    width: 14.8125rem;
    gap: 1.5rem;
  }
  .pageFooterSloganSocialWrap {
    gap: 6.25rem;
  }
  .pageFooterSloganSocialWrap .slogan {
    max-width: 23.875rem;
  }
  .pageFooterSloganSocialWrap .sloganText {
    font-size: 3.125rem;
    line-height: 1.2;
    letter-spacing: 0.625rem;
    min-width: 23.875rem;
  }
  .quoteBlockBody {
    max-width: 65.75rem;
  }
  .quoteBlockBody .wysiwyg p {
    font-size: 2.5rem;
    line-height: 1.3;
  }
  .keyTakeawayBlockContent {
    margin-inline: 3.125rem;
    padding: 2.5rem;
  }
  .keyTakeawayBlockCardtext {
    font-size: 1.375rem;
    line-height: 1.36;
  }
  .textHeroBlockTitle {
    font-size: 4.0625rem;
    line-height: 1.11;
    letter-spacing: 0.135rem;
  }
  .titleBlockTitle {
    font-size: 4.0625rem;
    line-height: 1.15;
    letter-spacing: 0.12188rem;
    margin: 0 0 1.875rem;
  }
  .titleBlockTitleSub {
    font-size: 1.625rem;
    line-height: 1.46;
    letter-spacing: 0.04875rem;
  }
  .filterBlockTitle {
    font-size: 4.0625rem;
    margin-block-end: 4.375rem;
    line-height: 1.15;
  }
  .mediaHeroBlock {
    --secondaryPadding: 2.5rem;
    --blockPadding: 6.25rem;
  }
  .mediaHeroBlockPrimaryContentWrapper:has(+ .mediaHeroBlockSecondaryContentWrapper) .mediaHeroBlockPrimaryContent {
    padding-block-end: 3.75rem;
    padding-inline-end: 7.5rem;
  }
  .mediaHeroBlockPrimaryContent {
    padding: 3.75rem 5.625rem;
  }
  .mediaHeroBlockPrimaryContentTitle {
    font-size: 8.75rem;
    line-height: 9rem;
  }
  .mediaHeroBlockPrimaryContentTitle.small {
    font-size: 4.5rem;
    line-height: 1.05;
  }
  .mediaHeroBlockPrimaryContent > p {
    font-size: 2.125rem;
  }
  .mediaHeroBlockSecondaryContent > p {
    font-size: 3.375rem;
    line-height: 1.2;
  }
  .ctaBlock {
    padding: 5.625rem 0;
  }
  .ctaBlockTitle {
    font-size: 4.0625rem;
    line-height: 1.15;
    letter-spacing: 0.12188rem;
  }
  .ctaBlockText {
    font-size: 1.625rem;
    line-height: 1.46;
  }
  .promoBlock.col-12:not(.noImage) .text .promoBlockTitle {
    --titleSize: 3.375rem;
    --titleLH: 1.2;
  }
  .promoBlock.col-12:not(.noImage).right .promoBlockWrap {
    grid-template-columns: 2fr 2fr 8fr;
  }
  .promoBlock .textWrap {
    row-gap: 1.25rem;
  }
  .promoBlock.col-6 .promoBlockProjectName {
    --titleSize: 1.625rem;
    --titleLH: 1.4;
  }
  .promoBlock.col-6 .promoBlockTitle {
    --titleSize: 3.375rem;
    --titleLH: 1.2;
  }
  .formBlock {
    padding-inline: 6.25rem;
  }
  .formBlock:not(.modal) {
    grid-column: 4/span 6;
  }
  .accordions.col-12 {
    grid-column: 3/span 8;
  }
  .mediaHeroCarouselBlock .carousel, .carousel {
    margin-left: calc((100vw - 100%) / 2 * -1);
    --carousel-slide-width: calc((107.5rem / var(--carousel-cols)) - var(--carousel-gap) + (var(--carousel-gap) / var(--carousel-cols)));
  }
  .mediaHeroCarouselBlock .carouselContent, .carouselContent {
    --paddingInline: calc((100vw - 107.5rem) / 2);
  }
  .mediaHeroCarouselBlock .carouselContentList, .carouselContentList {
    width: auto;
  }
  .mediaCarouselBlockTitle {
    line-height: 1.14;
    margin-block-end: 4.375rem;
  }
  .mediaCarouselBlock .carouselPagination {
    scroll-padding: calc((100vw - 107.5rem) / 2);
  }
  .mediaCarouselBlock .carouselPaginationList {
    padding-inline: calc((100vw - 107.5rem) / 2);
    max-width: calc(100% - var(--gutter-left) * 2);
    width: auto;
  }
  .mediaCarouselBlock .carouselPaginationItem {
    flex: 0 0 calc((107.5rem - (var(--on-show) - 1) * var(--column-gap)) / var(--on-show));
  }
  .mediaCarouselBlock .carouselPaginationItem:last-of-type {
    padding-inline-end: calc((100vw - 107.5rem) / 2);
  }
  .mediaHeroCarouselBlock .carousel {
    margin-left: auto;
  }
  .mediaHeroCarouselBlock .carouselContentList > li {
    width: 107.5rem;
    flex: 0 0 107.5rem;
  }
  .articleHubBlock,
  .contentListingBlock {
    --rowGap: 4.375rem;
  }
  .contentListingBlock.carousel-cols-12 .carousel {
    --carousel-gap: 12.5rem;
  }
  .stacked.contentList .contentListItem {
    --lineThickness: 0.625rem;
  }
  .stacked.contentList .contentListItem .stackedPromoContent {
    padding-block-start: 4.375rem;
  }
  .stacked.contentList .contentListItem .contentListItemTitle,
  .stacked.contentList .contentListItem .contentListItemTitle a {
    font-size: 2.5rem;
    line-height: 1.2;
  }
  .apiVideoBlockLink::before {
    width: 8.125rem;
    height: 8.125rem;
  }
  .apiVideoBlockContent {
    border-width: 1.25rem;
  }
  .apiVideoBlockTitle {
    font-size: 3.375rem;
    line-height: 1.18;
  }
  .apiVideoBlockCta {
    margin-block-start: 2.5rem;
  }
  .apiVideoBlockIconPlay {
    width: 2.5rem;
  }
  .apiVideoBlockIconBuffering {
    width: 3.4375rem;
  }
  .articleHubBlockTitle {
    font-size: 4.0625rem;
    line-height: 1.15;
    letter-spacing: 0.12188rem;
  }
  .articleHubBlockList {
    margin: 2.5rem 0 1.875rem;
  }
  .articleHubBlockList .promoBlockTitle a,
  .articleHubBlockList .promoBlockTitle {
    font-size: 1.75rem;
    line-height: 2.125rem;
  }
  .articleHubBlockList > :first-child .promoBlockTitle a,
  .articleHubBlockList > :first-child .promoBlockTitle {
    font-size: 3.375rem;
    line-height: 4rem;
  }
  .articleHubBlockList > :nth-child(2) .promoBlockTitle a,
  .articleHubBlockList > :nth-child(2) .promoBlockTitle, .articleHubBlockList > :nth-child(3) .promoBlockTitle a,
  .articleHubBlockList > :nth-child(3) .promoBlockTitle {
    font-size: 1.75rem;
    line-height: 2.125rem;
  }
  .listingPageForm.spacingSmall {
    margin-block-end: 4.375rem;
  }
  .listingPage .results {
    --gap-col: 3rem;
  }
  .pagination {
    margin-block-start: 4.375rem;
  }
}