/* Minimal flex-first starter styles */
*,
*::before,
*::after {
  box-sizing: border-box;
}

html {
  font-size: var(--font-size-root);

  body {
    margin: 0;
    font-family: var(--font-family-body);
    font-size: var(--font-size-body);
    line-height: var(--line-height-body);
    color: var(--color-text);
    background-color: #ffffff;
    min-height: 100vh;
    display: flex;
    flex-direction: column;
    overflow-x: hidden;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
  }

  :root {
    --wp-adminbar-offset: 0px;
  }

  body.admin-bar {
    --wp-adminbar-offset: 32px;
  }

  html.no-animations,
  body.no-animations {
    scroll-behavior: auto !important;
  }

  .no-animations,
  .no-animations::before,
  .no-animations::after,
  .no-animations *,
  .no-animations *::before,
  .no-animations *::after {
    animation: none !important;
    transition: none !important;
  }

  body.is-site-loading {
    overflow: hidden;
  }

  .page-loader {
    position: fixed;
    inset: 0;
    z-index: 999;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(255, 255, 255, 0.8);
    transition:
      opacity 0.6s ease,
      visibility 0.6s ease;
    backdrop-filter: blur(18px) saturate(140%);
    -webkit-backdrop-filter: blur(18px) saturate(140%);
  }

  body.is-site-loaded .page-loader {
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
  }

  .page-loader__content {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: var(--gap18);
  }

  .page-loader__spinner {
    position: relative;
    width: 64px;
    height: 64px;
    border-radius: 50%;
    background: conic-gradient(
      from 0deg,
      var(--color-brand-blue),
      var(--color-brand-green) 35%,
      var(--color-brand-blue) 70%,
      var(--color-brand-green) 100%
    );
    -webkit-mask:
      repeating-conic-gradient(#000 0deg 8deg, transparent 8deg 30deg),
      radial-gradient(circle, transparent 0 46%, #000 46% 88%, transparent 88%);
    -webkit-mask-composite: source-in;
    mask:
      repeating-conic-gradient(#000 0deg 8deg, transparent 8deg 30deg),
      radial-gradient(circle, transparent 0 46%, #000 46% 88%, transparent 88%);
    mask-composite: intersect;
    animation: pageLoaderSpin 1s linear infinite;
  }

  @keyframes pageLoaderSpin {
    to {
      transform: rotate(360deg);
    }
  }

  main {
    flex: 1 0 auto;
    margin-top: 82px;
    /* background-color: var(--color-brand-light-gray); */
  }

  .home main {
    margin-top: var(--home-header-offset, 0px);
    transition: margin-top 0.35s ease;
  }

  #content {
    flex: 1 0 auto;
    display: flex;
    flex-direction: column;
    min-height: 100%;
  }

  html.lenis,
  html.lenis body {
    height: auto;
  }

  .lenis.lenis-smooth {
    scroll-behavior: auto;
  }

  .lenis.lenis-smooth [data-lenis-prevent] {
    overscroll-behavior: contain;
  }

  .lenis.lenis-stopped {
    overflow: hidden;
  }

  .lenis.lenis-scrolling iframe {
    pointer-events: none;
  }

  img,
  picture,
  video,
  canvas,
  svg {
    display: block;
    max-width: 100%;
    height: auto;
  }

  figure {
    margin: 0;
  }

  a {
    color: inherit;
    text-decoration: none;
  }

  p {
    margin: 0;
  }

  h1,
  h2,
  h3,
  h4,
  h5,
  h6 {
    margin: 0;
    font-family: var(--font-family-heading);
    font-weight: 700;
    line-height: 1.2;
    letter-spacing: -0.01em;
  }

  ul,
  ol {
    margin: 0;
    padding: 0;
    list-style: none;
  }

  button,
  input,
  textarea,
  select {
    font: inherit;
  }

  .visually-hidden {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
  }

  .container {
    /* width: min(100%, var(--max-width));
    margin: 0 auto; */
  }

  .section {
    padding-block: var(--gap72);
    position: relative;
  }

  .reveal-word {
    display: inline-block;
  }

  .section--flush {
    padding-block: 0;
  }

  .flex {
    display: flex;
  }

  .inline-flex {
    display: inline-flex;
  }

  .flex-row {
    flex-direction: row;
  }

  .flex-col {
    flex-direction: column;
  }

  .flex-wrap {
    flex-wrap: wrap;
  }

  .grow {
    flex: 1 1 0;
  }

  .basis-1-3 {
    flex-basis: calc(100% / 3);
  }

  .basis-2-3 {
    flex-basis: calc((100% / 3) * 2);
  }

  .align-start {
    align-items: flex-start;
  }

  .align-center {
    align-items: center;
  }

  .align-end {
    align-items: flex-end;
  }

  .justify-start {
    justify-content: flex-start;
  }

  .justify-center {
    justify-content: center;
  }

  .justify-between {
    justify-content: space-between;
  }

  .justify-end {
    justify-content: flex-end;
  }

  .text-center {
    text-align: center;
  }

  .text-justify {
    text-align: justify;
  }

  .text-left {
    text-align: left;
  }

  .text-pretty {
    text-wrap: pretty;
  }

  .text-morph {
    --morph-duration: 900ms;
    --morph-offset: 0.35em;
    --morph-blur: 10px;
    --morph-ease: cubic-bezier(0.2, 0.7, 0.2, 1);
    display: inline-grid;
    align-items: start;
    justify-items: start;
  }

  .text-morph .phrase {
    grid-area: 1 / 1;
    opacity: 0;
    transform: translateY(var(--morph-offset));
    filter: blur(var(--morph-blur));
    transition:
      opacity var(--morph-duration) var(--morph-ease),
      transform var(--morph-duration) var(--morph-ease),
      filter var(--morph-duration) var(--morph-ease);
  }

  .text-morph .phrase.is-active {
    opacity: 1;
    transform: translateY(0);
    filter: blur(0);
  }

  .text-morph--ready .phrase {
    will-change: opacity, transform, filter;
  }

  .text-morph:not(.text-morph--ready) .phrase:first-child {
    opacity: 1;
    transform: translateY(0);
    filter: blur(0);
  }

  .text-morph--typewriter {
    --morph-offset: 0;
    --morph-blur: 0;
  }

  .text-morph--typewriter .phrase {
    display: inline-block;
    transition: opacity 260ms ease;
  }

  .text-morph--typewriter .phrase.is-typing::after {
    content: "";
    display: inline-block;
    width: 0.08em;
    height: 0.9em;
    margin-left: 0.08em;
    background-color: currentColor;
    animation: text-morph-caret 0.9s steps(2, start) infinite;
    transform: translateY(0.05em);
  }

  @keyframes text-morph-caret {
    0%,
    100% {
      opacity: 0;
    }

    50% {
      opacity: 1;
    }
  }

  .gap-9 {
    gap: var(--gap9);
  }

  .gap-12 {
    gap: var(--gap12);
  }

  .gap-18 {
    gap: var(--gap18);
  }

  .gap-24 {
    gap: var(--gap24);
  }

  .gap-36 {
    gap: var(--gap);
  }

  .gap-48 {
    gap: var(--gap48);
  }

  .gap-72 {
    gap: var(--gap72);
  }

  .gap-108 {
    gap: var(--gap108);
  }

  .gap-auto {
    justify-content: space-between;
  }

  .pad-24 {
    padding: var(--gap24);
  }

  .pad-36 {
    padding: var(--gap);
  }

  .pad-72 {
    padding: var(--gap72);
  }

  .stack {
    display: flex;
    flex-direction: column;
    gap: var(--gap24);
  }

  .site-header {
    position: fixed;
    top: var(--wp-adminbar-offset, 0px);
    left: 0;
    width: 100%;
    z-index: 20;
    color: #ffffff;
    transition:
      background-color 0.3s ease,
      color 0.3s ease,
      border-color 0.3s ease,
      box-shadow 0.3s ease,
      transform 0.4s ease,
      opacity 0.4s ease;
    /* border-top: 8px solid transparent; */
    padding-top: 8px;
    /* border-image: linear-gradient(to right, var(--color-brand-green), var(--color-brand-blue)) 1; */
  }

  .site-header:before {
    content: " ";
    display: block;
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 8px;
    background: linear-gradient(
      to right,
      var(--color-brand-green),
      var(--color-brand-blue)
    );
  }

  .site-header.no-animations {
    position: absolute;
  }

  .site-header {
    background-color: rgba(255, 255, 255, 1);
    color: var(--color-text);
    /* backdrop-filter: blur(18px) saturate(140%);
    -webkit-backdrop-filter: blur(18px) saturate(140%); */
  }

  .site-header:not(.is-top) {
    box-shadow: 0 10px 24px rgba(17, 17, 17, 0.1);
  }

  body.home.home-menu-hidden .site-header {
    transform: translateY(-100%);
    opacity: 0;
    pointer-events: none;
  }

  .site-header__inner {
    position: relative;
    display: grid;
    grid-template-columns: auto 1fr auto;
    align-items: center;
    gap: 0;
    justify-content: space-between;
    width: 100%;
    max-width: var(--header-width);
    margin: 0 auto;
    padding: var(--gap9) 0;
    transition:
      background-color 0.3s ease,
      color 0.3s ease,
      border-color 0.3s ease,
      box-shadow 0.3s ease;
  }

  .site-logo {
    display: inline-flex;
    align-items: center;
    background-color: var(--color-white);
    z-index: 10;
    padding-right: var(--gap24);
  }

  .site-logo .logo {
    display: block;
    height: 56px;
    flex-basis: 56px;
    flex-shrink: 0;
    width: auto;
  }

  .header-nav {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-self: center;
    width: 100%;
    max-width: 100%;
    white-space: normal;
    gap: 0;
    position: absolute;
    left: 0;
    right: 0;
    width: 100%;
    max-width: none;
  }

  .header-actions {
    display: inline-flex;
    align-items: center;
    justify-self: end;
    gap: var(--gap12);
    white-space: nowrap;
    background-color: var(--color-white);
    z-index: 10;
    padding-left: var(--gap18);
  }

  .header-menu-toggle {
    display: none;
    align-items: center;
    gap: 0.5rem;
    border: 1px solid currentColor;
    border-radius: 999px;
    padding: 0.35rem 0.75rem;
    background: transparent;
    color: inherit;
    font-family: var(--font-family-heading);
    font-size: 0.75rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    cursor: pointer;
    appearance: none;
    -webkit-appearance: none;
  }

  .header-menu-toggle:focus-visible,
  .mobile-menu__toggle:focus-visible {
    outline: 2px solid rgba(var(--color-brand-blue-rgb), 0.35);
    outline-offset: 2px;
  }

  .header-menu-toggle__icon {
    position: relative;
    width: 22px;
    height: 2px;
    border-radius: 2px;
    background-color: currentColor;
    transition: background-color 0.2s ease;
  }

  .header-menu-toggle__icon::before,
  .header-menu-toggle__icon::after {
    content: "";
    position: absolute;
    left: 0;
    width: 100%;
    height: 2px;
    border-radius: 2px;
    background-color: currentColor;
    transition:
      transform 0.2s ease,
      opacity 0.2s ease;
  }

  .header-menu-toggle__icon::before {
    top: -6px;
  }

  .header-menu-toggle__icon::after {
    top: 6px;
  }

  .site-header.is-nav-open .header-menu-toggle__icon {
    background-color: transparent;
  }

  .site-header.is-nav-open .header-menu-toggle__icon::before {
    transform: translateY(6px) rotate(45deg);
  }

  .site-header.is-nav-open .header-menu-toggle__icon::after {
    transform: translateY(-6px) rotate(-45deg);
  }

  .mobile-menu {
    display: none;
    color: var(--color-text);
  }

  .mobile-menu[hidden] {
    display: none;
  }

  .mobile-menu__inner {
    display: flex;
    flex-direction: column;
    gap: var(--gap24);
    padding: var(--gap24);
  }

  .mobile-menu__tier {
    display: flex;
    flex-direction: column;
    gap: var(--gap18);
  }

  .mobile-menu__tier + .mobile-menu__tier {
    border-top: 1px solid rgba(0, 0, 0, 0.1);
    padding-top: var(--gap18);
  }

  .mobile-menu__item,
  .mobile-menu__group {
    display: flex;
    flex-direction: column;
    gap: var(--gap12);
  }

  .mobile-menu__heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: var(--gap12);
  }

  .mobile-menu__parent {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    font-family: var(--font-family-heading);
    font-weight: 700;
    font-size: 1rem;
    letter-spacing: -0.01em;
    color: inherit;
  }

  .mobile-menu__toggle {
    border: 1px solid rgba(0, 0, 0, 0.2);
    background: transparent;
    width: 2rem;
    height: 2rem;
    border-radius: 999px;
    position: relative;
    cursor: pointer;
    appearance: none;
    -webkit-appearance: none;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: inherit;
  }

  .mobile-menu__toggle::before {
    content: "";
    width: 0.75rem;
    height: 0.75rem;
    background-color: currentColor;
    -webkit-mask: url("../images/icons/icon-chevron.svg") no-repeat center /
      contain;
    mask: url("../images/icons/icon-chevron.svg") no-repeat center / contain;
    transform: rotate(0deg);
    transition: transform 0.2s ease;
  }

  .mobile-menu__toggle[aria-expanded="true"]::before {
    transform: rotate(180deg);
  }

  @supports not (mask: url()) {
    .mobile-menu__toggle::before {
      background-color: transparent;
      background-image: url("../images/icons/icon-chevron.svg");
      background-repeat: no-repeat;
      background-position: center;
      background-size: contain;
    }
  }

  .mobile-menu__panel {
    padding-left: var(--gap18);
  }

  .mobile-menu__list {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: var(--gap9);
  }

  .mobile-menu__link {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    padding-block: 0.15rem;
    font-family: var(--font-family-heading);
    font-weight: 700;
    font-size: 0.95rem;
    letter-spacing: -0.01em;
    color: var(--color-text);
  }

  .mobile-menu__actions {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: var(--gap12);
    padding-top: var(--gap18);
    border-top: 1px solid rgba(0, 0, 0, 0.1);
    white-space: normal;
  }

  .mobile-menu__actions .header-cta {
    margin-left: 0;
    width: 100%;
  }

  .mobile-menu__actions .search-icon {
    justify-content: flex-start;
  }

  body.is-nav-open {
    overflow: hidden;
  }

  .language-switcher {
    position: relative;
    display: inline-flex;
    align-items: center;
  }

  .language-switcher__trigger {
    display: inline-flex;
    align-items: center;
    gap: 0.3rem;
    border: none;
    background: none;
    padding: 0;
    color: inherit;
    cursor: pointer;
    appearance: none;
    -webkit-appearance: none;
  }

  .language-switcher__trigger:focus-visible,
  .language-switcher__link:focus-visible {
    outline: 2px solid rgba(var(--color-brand-blue-rgb), 0.35);
    outline-offset: 2px;
  }

  .language-switcher__icon {
    width: 0.6rem;
    height: 0.6rem;
    margin-left: 0.4rem;
    background-color: currentColor;
    -webkit-mask: url("../images/icons/icon-chevron.svg") no-repeat center /
      contain;
    mask: url("../images/icons/icon-chevron.svg") no-repeat center / contain;
    transition: transform 0.2s ease;
  }

  .language-switcher.is-open .language-switcher__icon {
    transform: rotate(180deg);
  }

  .language-switcher__menu {
    position: absolute;
    top: calc(100% + var(--gap12));
    right: 0;
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
    border-radius: var(--gap12);
    padding: var(--gap9) var(--gap12);
    margin: 0;
    background: rgba(255, 255, 255, 0.9);
    backdrop-filter: blur(16px) saturate(140%);
    -webkit-backdrop-filter: blur(16px) saturate(140%);
    z-index: 40;
    box-shadow: 0 22px 55px rgba(17, 17, 17, 0.2);
  }

  .language-switcher__menu[hidden] {
    display: none;
  }

  .language-switcher__menu li {
    list-style: none;
  }

  .language-switcher__link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.3rem;
    font-size: 0.9rem;
    text-transform: uppercase;
    padding: 0.35rem 0.5rem;
    font-weight: 700;
    color: var(--color-text);
    font-family: var(--font-family-heading);
    transition:
      background-color 0.2s ease,
      color 0.2s ease,
      transform 0.2s ease;
  }

  .language-switcher__link[aria-current="true"] {
    background-color: rgba(var(--color-brand-blue-rgb), 0.12);
    color: var(--color-brand-blue);
  }

  .language-switcher__link:hover,
  .language-switcher__link:focus {
    background-color: rgba(var(--color-brand-blue-rgb), 0.05);
    color: var(--color-brand-blue);
    transform: translateY(-1px);
  }

  .header-nav__list {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    column-gap: var(--gap);
    row-gap: var(--gap9);
    list-style: none;
    margin: 0;
  }

  .header-nav__list--secondary {
    column-gap: var(--gap24);
    font-size: 0.95rem;
    opacity: 0.95;
    padding-bottom: var(--gap9);
    border-bottom: 1px solid var(--color-brand-light-gray);
    padding-left: var(--gap24);
    padding-right: var(--gap24);
  }

  .has-glass .header-nav__list--secondary {
    border-bottom-color: rgb(0 0 0 / 0.2);
  }

  .nav-item {
    position: static;
    display: flex;
    align-items: center;
  }

  .nav-link {
    display: inline-flex;
    align-items: center;
    cursor: pointer;
    gap: 0.5em;
    font-size: 0.85rem;
    line-height: 1.1em;
    padding: 0;
    font-weight: 500;
    font-family: var(--font-family-heading);
    transition: color 0.2s ease;
    text-transform: none;
    letter-spacing: 0.05em;
  }

  .header-nav__list--main .nav-link {
    font-weight: 700;
    font-size: 1rem;
    line-height: 1.1em;
    gap: 0.5em;
    letter-spacing: 0.05em;
  }

  .nav-link:hover,
  .nav-link:focus {
    color: var(--color-brand-blue);
  }

  .nav-item--has-mega > .nav-link::after {
    content: "";
    display: inline-block;
    width: 0.6rem;
    height: 0.6rem;
    background-color: currentColor;
    -webkit-mask: url("../images/icons/icon-chevron.svg") no-repeat center /
      contain;
    mask: url("../images/icons/icon-chevron.svg") no-repeat center / contain;
    transform: rotate(0deg);
    transition: transform 0.2s ease;
  }

  .nav-item--has-mega > .nav-link[aria-expanded="true"]::after {
    transform: rotate(180deg);
  }

  @supports not (mask: url()) {
    .nav-item--has-mega > .nav-link::after {
      background-color: transparent;
      background-image: url("../images/icons/icon-chevron.svg");
      background-repeat: no-repeat;
      background-position: center;
      background-size: contain;
    }
  }

  .mega-panels {
    --mega-menu-padding: var(--gap24);
    width: 100%;
    padding: 0 var(--mega-menu-padding);
    box-sizing: border-box;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    overflow: hidden;
    transition:
      opacity 0.25s ease,
      visibility 0.25s ease,
      padding-top 0.25s ease,
      padding-bottom 0.25s ease;
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
  }

  .site-header.mega-open .mega-panels {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
  }

  .mega-panel {
    display: none;
    max-width: min(100%, calc(var(--max-width) + var(--gap24) * 2));
    margin: 0;
    color: var(--color-text);
  }

  .mega-panel.is-active {
    display: block;
  }

  .mega-panel .menu-headline,
  .mega-panel .mega-menu__list > li {
    opacity: 0;
    transform: translateY(12px);
    transition:
      opacity 0.28s ease,
      transform 0.28s ease;
  }

  .mega-panel .menu-headline.is-visible,
  .mega-panel .mega-menu__list > li.is-visible {
    opacity: 1;
    transform: translateY(0);
  }

  .mega-menu__inner {
    display: flex;
    flex-direction: row;
    gap: var(--gap18);
    color: var(--color-text);
    width: min(100%, 420px);
    max-width: min(100vw - (var(--mega-menu-padding, var(--gap24)) * 2), 420px);
    margin: 0;
    margin-left: calc(
      var(--mega-menu-offset, 0px) + var(--mega-menu-item-offset, 0px) -
        var(--mega-menu-padding, 0px)
    );
    margin-right: auto;
    padding: var(--gap);
    background-color: rgba(255, 255, 255, 0.75);
    backdrop-filter: blur(18px) saturate(140%);
    -webkit-backdrop-filter: blur(18px) saturate(140%);
    border: 0;
    box-shadow: 0 20px 50px rgba(17, 17, 17, 0.15);
  }

  .mega-menu__inner .menu-headline {
    display: flex;
    margin-left: calc((var(--gap) + var(--gap12)) * -1);
  }

  .mega-menu__inner .menu-headline .icon img {
    display: block;
    width: var(--gap);
    height: var(--gap);
  }

  .mega-menu__inner .menu-headline .headline {
    font-family: var(--font-family-heading);
    font-weight: 700;
    font-size: 1.1rem;
    line-height: 1.2;
    background: linear-gradient(
      135deg,
      var(--color-brand-blue) 0%,
      var(--color-brand-green) 100%
    );
    background-clip: text;
    -webkit-background-clip: text;
    /* Safari/iOS */
    color: transparent;
    -webkit-text-fill-color: transparent;
    /* Safari/iOS */
  }

  .submenu-box {
    display: flex;
    flex-direction: column;
    gap: var(--gap24);
  }

  .menu-headline {
    display: flex;
    flex-direction: row;
    gap: var(--gap12);
    align-items: center;
  }

  .mega-menu__list {
    display: grid;
    gap: var(--gap18);
    margin: 0;
    padding: 0;
    list-style: none;
  }

  .mega-menu__link {
    display: inline-flex;
    align-items: center;
    gap: var(--gap9);
    font-size: 1.06rem;
    font-family: var(--font-family-heading);
    font-weight: 700;
    line-height: 1.1em;
    letter-spacing: -0.01em;
  }

  .mega-menu__link:hover {
    color: var(--color-brand-blue);
  }

  .mega-menu__link:hover::before,
  .search-icon {
    height: auto;
    display: inline-flex;
    padding: 0;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
  }

  .is-top .search-icon {
    border-left: none;
  }

  .search-icon img {
    width: 14px;
    height: 14px;
    display: block;
    transition:
      transform 0.2s ease,
      filter 0.2s ease,
      opacity 0.2s ease;
  }

  .site-header.has-glass .search-icon img {
    filter: invert(100%);
  }

  .search-icon:hover img,
  .search-icon:focus img {
    transform: scale(1.08);
    opacity: 0.85;
  }

  .site-header.is-top .nav-link:hover,
  .site-header.is-top .nav-link:focus,
  .site-header .nav-link.current {
    color: var(--color-brand-blue);
  }

  .button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 1em 2.5em;
    border-radius: 2em;
    border: none;
    box-sizing: border-box;
    background-color: transparent;
    font-weight: 700;
    font-family: var(--font-family-heading);
    font-size: 0.9rem;
    line-height: 1.1em;
    cursor: pointer;
    transition:
      background-color 0.2s ease,
      color 0.2s ease;
  }

  .button.sm {
    font-size: 0.75rem;
    line-height: 1em;
    padding: 0.6em 2em;
  }

  .button.cta {
    background-color: var(--color-brand-army);
    color: #ffffff;
  }

  .button.cta.light {
    background-color: var(--color-brand-pjh-light-green);
    color: #ffffff;
  }

  .header-cta {
    margin-left: auto;
  }

  .button.cta:hover,
  .button.cta:focus {
    background-color: var(--color-brand-blue);
  }

  .button.cta.pop,
  .button.cta.expand,
  .button.cta.more,
  .button.cta.back {
    background-color: transparent;
    padding: 0;
    display: flex;
    justify-content: start;
    gap: var(--gap9);
    font-weight: bold;
    font-family: var(--font-family-heading);
    color: var(--color-brand-blue);
    font-size: 1rem;
    line-height: 1.5;
    border: 0;
    padding: 0;
    align-items: center;
  }

  .button.cta.pop.white {
    color: var(--color-white);
  }

  .button.cta.pop:before {
    content: " ";
    width: var(--gap24);
    height: var(--gap24);
    flex-shrink: 0;
    flex-grow: 0;
    background: transparent url(../images/icons/icon-new-tab.svg) center
      center/contain no-repeat;
  }

  .button.cta.expand:after {
    content: " ";
    width: var(--gap24);
    height: var(--gap24);
    flex-shrink: 0;
    flex-grow: 0;
    background: transparent url(../images/icons/icon-menu-inpage-chevron.svg)
      center center/contain no-repeat;
  }

  .button.cta.more:after {
    content: " ";
    width: var(--gap24);
    height: var(--gap24);
    flex-shrink: 0;
    flex-grow: 0;
    background: transparent url(../images/icons/icon-menu-inpage-chevron.svg)
      center center/contain no-repeat;
    transform: rotate(270deg);
  }

  .button.cta.back:before {
    content: " ";
    width: var(--gap24);
    height: var(--gap24);
    flex-shrink: 0;
    flex-grow: 0;
    background: transparent url(../images/icons/icon-menu-inpage-chevron.svg)
      center center/contain no-repeat;
    transform: rotate(90deg);
  }

  .button.cta.blue {
    background-color: var(--color-brand-blue);
    color: #ffffff;
  }

  .button.cta.blue:hover,
  .button.cta.blue:focus {
    background-color: var(--color-brand-army);
  }

  .site-header .button.cta {
    padding: 0.8em 1.4em;
  }

  .site-header .button.cta.pop {
    padding: 0;
    margin-left: var(--gap12);
    letter-spacing: -0.01em;
    font-size: 1rem;
    line-height: 1.5em;
    color: var(--color-text);
  }

  .site-header.is-top .button.cta.pop {
    color: var(--color-white);
  }

  .site-header.is-top .button.cta.pop:before {
    filter: brightness(0) invert(1);
  }

  .site-header.is-top .button.cta:hover,
  .site-header.is-top .button.cta:focus {
    color: var(--color-brand-pjh-light-green);
  }

  body.home main .text-brand-army {
    color: #008578;
  }

  body.home main .text-brand-blue,
  body.home main .section-heading {
    color: var(--color-home-primary);
  }

  body.home main .button.cta:not(.pop):not(.expand):not(.more):not(.back),
  body.home main .button--primary,
  body.home main .button--arrow,
  body.home main .subsidiaries-progress__bar,
  body.home main .news-progress__bar {
    background-color: #008578;
  }

  body.home main .button--secondary {
    border-color: #008578;
    color: #008578;
  }

  body.home main .button.cta:not(.pop):not(.expand):not(.more):not(.back):hover,
  body.home main .button.cta:not(.pop):not(.expand):not(.more):not(.back):focus,
  body.home main .button--primary:hover,
  body.home main .button--primary:focus,
  body.home main .button--secondary:hover,
  body.home main .button--secondary:focus {
    background-color: var(--color-home-hover);
    border-color: var(--color-home-hover);
    color: #ffffff;
  }

  /* Government intro CTA — same treatment as homepage row-page-intro secondary (body.home .button--secondary) */
  .government-intro-button.button--secondary {
    border-color: #008578;
    color: #008578;
  }

  .commercial-intro-button.button--secondary,
  .commercial-bottom-button.button--secondary {
    border-color: #008578;
    color: #008578;
  }

  .government-intro-button.button--secondary:hover,
  .government-intro-button.button--secondary:focus,
  .commercial-intro-button.button--secondary:hover,
  .commercial-intro-button.button--secondary:focus,
  .commercial-bottom-button.button--secondary:hover,
  .commercial-bottom-button.button--secondary:focus {
    background-color: var(--color-home-hover);
    border-color: var(--color-home-hover);
    color: #ffffff;
  }

  body.home .news-arrow {
    border-color: var(--color-home-primary);
  }

  body.home .news-arrow:hover,
  body.home .news-arrow:focus {
    border-color: var(--color-home-hover);
  }

  body.home .nav-link:hover,
  body.home .nav-link:focus,
  body.home .site-header .nav-link.current,
  body.home .site-header.is-top .nav-link:hover,
  body.home .site-header.is-top .nav-link:focus {
    color: var(--color-home-hover);
  }

  body.home .row-footer__link-list a:hover,
  body.home .row-footer__link-list a:focus-visible,
  body.home .row-footer__policies a:hover,
  body.home .row-footer__policies a:focus-visible {
    color: var(--color-home-hover);
  }

  .row-intro {
    position: relative;
    background-color: #ffffff;
    color: #ffffff;
    min-height: 100dvh;
    padding: 0;
    overflow: hidden;
    border-bottom-right-radius: 0;
    transition: border-radius 0.6s ease;
  }

  .home .row-intro {
    min-height: calc(100dvh - var(--home-header-offset, 0px));
    transition: min-height 0.35s ease;
  }

  .home .hero-slider {
    position: relative;
    width: 100%;
    height: calc(100dvh - var(--home-header-offset, 0px));
    transition: height 0.35s ease;
  }

  .row-intro.is-curved {
    border-bottom-right-radius: 15vw;
  }

  .row-intro.is-fixed-curved {
    border-bottom-right-radius: 15vw;
  }

  .row-intro--static {
    min-height: auto;
    color: var(--color-text);
    background-size: cover;
    background-repeat: no-repeat;
    background-image: var(--row-intro-bg-desktop);
    background-position: var(--row-intro-bg-position, center);
  }

  .row-intro.has-rotator {
    background-image: none;
  }

  .row-intro__rotator {
    position: absolute;
    inset: 0;
    z-index: 0;
    overflow: hidden;
    pointer-events: none;
  }

  .row-intro__slide {
    position: absolute;
    inset: 0;
    background-size: cover;
    background-position: var(--row-intro-rotator-position, center);
    background-repeat: no-repeat;
    opacity: 0;
    transition: opacity var(--row-intro-rotator-fade, 1200ms) ease;
    will-change: opacity;
  }

  .row-intro__slide.is-active {
    opacity: 1;
  }

  .row-intro__dots {
    position: absolute;
    right: var(--gap72);
    bottom: var(--gap48);
    z-index: 3;
    justify-content: flex-end;
    padding: 0;
    pointer-events: auto;
  }

  .row-about {
    padding-block: calc(var(--gap108) * 1.1);
    z-index: 2;
  }

  .hero-heading {
    display: flex;
    align-items: flex-end;
    width: 100%;
    height: 100dvh;
    min-height: 560px;
    max-height: 70dvh;
    padding: calc(var(--header-offset) + var(--gap48)) var(--gap72) var(--gap);
    color: var(--color-text);
    background: var(--heading-bg-overlay);
    text-shadow: var(--text-shadow);
    position: relative;
  }

  .hero-heading.tall {
    min-height: 560px;
    max-height: 70dvh;
    background: var(--heading-bg-overlay-more);
  }

  .hero-heading .container {
    display: flex;
    flex-direction: column;
    gap: var(--gap12);
    z-index: 2;
    width: 100%;
  }

  .hero-heading__title {
    font-family: var(--font-family-heading);
    font-size: 3rem;
    line-height: 1.15;
    margin: 0;
    color: #ffffff;
  }

  .hero-heading__excerpt {
    font-family: var(--font-family-heading);
    font-size: 1.1rem;
    line-height: 1.6;
    max-width: 800px;
    margin: 0;
    color: #ffffff;
  }

  .hero-slide {
    position: absolute;
    inset: 0;
    opacity: 0;
    transition: opacity 0.8s ease;
    background-size: cover;
    background-position: center;
    display: flex;
    align-items: stretch;
    justify-content: center;
    pointer-events: none;
    overflow: hidden;
  }

  .hero-slide__media {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    pointer-events: none;
    z-index: 0;
    /* filter: brightness(1.04) contrast(1.12) saturate(1.2); */
  }

  .hero-slide__audio-toggle {
    position: absolute;
    right: clamp(16px, 4vw, 48px);
    bottom: clamp(16px, 4vw, 48px);
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.55rem 1rem;
    border-radius: 999px;
    border: 1px solid rgba(255, 255, 255, 0.45);
    background: rgba(0, 0, 0, 0.45);
    color: #ffffff;
    font-family: var(--font-family-heading);
    font-size: 0.68rem;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    cursor: pointer;
    z-index: 3;
    pointer-events: auto;
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
    transition:
      background-color 0.2s ease,
      border-color 0.2s ease,
      color 0.2s ease,
      transform 0.2s ease;
  }

  .hero-slide__audio-toggle:hover,
  .hero-slide__audio-toggle:focus-visible {
    background: rgba(0, 0, 0, 0.65);
    border-color: rgba(255, 255, 255, 0.7);
    transform: translateY(-1px);
  }

  .hero-slide__audio-toggle:focus-visible {
    outline: 2px solid rgba(var(--color-brand-green-rgb), 0.6);
    outline-offset: 2px;
  }

  .hero-slide__audio-icon {
    width: var(--gap);
    height: var(--gap);
    flex: 0 0 auto;
    color: #ffffff;
  }

  .hero-slide__audio-toggle[aria-pressed="true"] {
    background: rgba(var(--color-brand-green-rgb), 0.35);
    border-color: rgba(var(--color-brand-green-rgb), 0.75);
    color: #ffffff;
  }

  .hero-slide__audio-toggle[aria-pressed="false"] .hero-slide__audio-icon {
    opacity: 0.7;
  }

  /* .hero-slide::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 1;
    background: var(--hero-slide-gradient);
} */

  /* .hero-slide::after {
    content: "";
    position: absolute;
    inset: 0;
    height: 180px;
    background: linear-gradient(0deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.4) 50%, rgba(0, 0, 0, 0.9) 100%);
    z-index: 1;
} */

  .hero-slide.is-active {
    opacity: 1;
    z-index: 1;
    pointer-events: auto;
  }

  .hero-slide__content {
    position: relative;
    z-index: 2;
    width: 100%;
    min-height: 100%;
    padding: calc(var(--header-offset) + clamp(24px, 6vw, var(--gap72)))
      clamp(24px, 6vw, var(--gap72)) clamp(24px, 6vw, var(--gap72));
    display: flex;
    align-items: flex-end;
    /* justify-content: center; */
    justify-content: flex-start;
    background: var(--heading-bg-overlay);
  }

  .home .hero-slide__content {
    background: var(--heading-bg-overlay-home);
    /* text-align: center; */
  }

  .hero-slide__text {
    display: inline-flex;
    align-items: start;
    flex-wrap: wrap;
    flex-direction: column;
    gap: var(--gap18);
    justify-content: start;
    /* max-width: 75%; */
  }

  .hero-tabs {
    position: absolute;
    bottom: var(--gap48);
    width: calc(100% - var(--gap72) * 2);
    display: flex;
    align-items: flex-end;
    gap: var(--gap24);
    z-index: 3;
    margin-left: var(--gap72);
    margin-right: var(--gap72);
  }

  .hero-tabs::before {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    height: 1px;
    background-color: rgba(255, 255, 255, 0.35);
    opacity: 0.8;
  }

  .hero-slide__subheading {
    font-family: var(--font-family-body);
    font-size: 0.8rem;
    text-transform: uppercase;
    letter-spacing: 0.15em;
    color: var(--color-brand-army);
  }

  .hero-slide__heading {
    font-family: var(--font-family-heading);
    /* font-size: clamp(1.8rem, 3.6vw, 2.5rem); */
    line-height: 1em;
    margin: 0;
  }

  .hero-slide__excerpt {
    font-size: 1rem;
    line-height: 1.6em;
    font-weight: 400;
    margin: 0;
  }

  .hero-slide__text .button {
    align-self: flex-start;
    vertical-align: middle;
  }

  .home-intro {
    padding-block: clamp(36px, 8vw, var(--gap72));
    padding-inline: clamp(20px, 6vw, var(--gap72));
  }

  .home-intro .h1 {
    font-size: clamp(2rem, 5vw, 3rem);
  }

  .home-intro__headline {
    flex-wrap: wrap;
    align-items: baseline;
  }

  .quote-slider-wrapper {
    position: relative;
    width: 100%;
    display: flex;
    flex-direction: column;
  }

  .quote-slider {
    position: relative;
    width: 100%;
    overflow: hidden;
  }

  .quote-slide {
    position: absolute;
    inset: 0;
    opacity: 0;
    transition: opacity 0.8s ease;
    display: flex;
    align-items: stretch;
    justify-content: center;
    pointer-events: none;
  }

  .quote-slide.is-active {
    position: relative;
    opacity: 1;
    z-index: 1;
    pointer-events: auto;
  }

  .quote-slide__content {
    position: relative;
    z-index: 1;
    width: 100%;
    padding: 0;
    display: flex;
    align-items: stretch;
    justify-content: center;
  }

  .quote-dots {
    display: flex;
    justify-content: center;
    gap: var(--gap24);
    padding: 0;
  }

  .quote-dot {
    width: var(--gap12);
    height: var(--gap12);
    border-radius: var(--gap12);
    background-color: transparent;
    cursor: pointer;
    transition: opacity 0.25s ease;
    opacity: 1;
    appearance: none;
    -webkit-appearance: none;
    position: relative;
    overflow: visible;
    border: 0;
    padding: 0;
  }

  .quote-dot::before {
    content: "";
    position: absolute;
    top: 0;
    left: 50%;
    width: var(--gap);
    height: var(--gap12);
    border-radius: 50%;
    background-color: var(--color-brand-gray);
    opacity: 0.45;
    transform: translateX(-50%) scaleX(0.3333333333);
    transform-origin: center;
    transition:
      transform 0.25s ease,
      background-color 0.25s ease,
      opacity 0.25s ease;
    will-change: transform;
    pointer-events: none;
  }

  .quote-dot.is-active {
    opacity: 1;
  }

  .quote-dot.is-active::before {
    background: var(--color-brand-army);
    border-radius: var(--gap12);
    transform: translateX(-50%) scaleX(1);
    opacity: 1;
  }

  .hero-tab {
    flex: 1 1 0;
    border: none;
    background: none;
    text-align: left;
    color: rgba(255, 255, 255, 0.7);
    font-family: var(--font-family-heading);
    font-size: 0.9rem;
    line-height: 1.1em;
    padding: var(--gap24) 0 0;
    position: relative;
    cursor: pointer;
    font-weight: 500;
    transition: color 0.3s ease;
  }

  .hero-tab::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    top: -1px;
    height: 2px;
    background: #ffffff;
    transform: scaleX(0);
    transform-origin: left center;
    opacity: 0;
    transition:
      transform 0.3s ease,
      opacity 0.3s ease;
  }

  .hero-tab.is-active {
    color: #ffffff;
  }

  .hero-tab.is-active::after {
    transform: scaleX(1);
    opacity: 1;
  }

  .hero-tab:focus-visible {
    outline: 2px solid rgba(255, 255, 255, 0.6);
    outline-offset: 4px;
  }

  .hero-tab:hover:not(.is-active) {
    color: rgba(255, 255, 255, 0.9);
  }

  .row-about .text-layout-wrapper {
    padding-right: var(--gap48);
  }

  .section-heading {
    font-family: var(--font-family-heading);
  }

  .section-heading label {
    font-family: var(--font-family-heading) !important;
  }

  .section-heading .mf-input-required-indicator {
    display: none;
  }

  .text-balance {
    text-wrap: balance;
  }

  .linebreak-desktop {
    display: inline;
  }

  .linebreak-mobile {
    display: none;
  }

  h2.section-heading,
  .section-heading.h2 {
    font-size: 2.5rem;
    line-height: 1.2;
  }

  /* h3.section-heading {
    font-size: clamp(1.8rem, 1.8vw + 1rem, 2rem);
} */

  .section-label {
    font-family: var(--font-family-heading);
  }

  .section-label--inverse {
    color: #ffffff;
    opacity: 0.9;
  }

  .row-about .text-description {
    flex: 1 1 0;
    font-size: 1.8rem;
    line-height: 1.25em;
    font-family: var(--font-family-heading);
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: var(--gap);
    letter-spacing: -0.01em;
  }

  .button.text-link {
    color: var(--color-brand-blue);
    padding: 0;
    background-color: transparent;
    text-decoration: underline;
    text-underline-offset: 0.3em;
  }

  .button.text-link:hover {
    color: var(--color-brand-army);
  }

  .button--primary {
    background-color: var(--color-brand-army);
    color: #ffffff;
  }

  .button--primary:hover,
  .button--primary:focus {
    background-color: var(--color-brand-blue);
    color: #ffffff;
  }

  .button--secondary {
    background-color: transparent;
    border: 1px solid var(--color-brand-blue);
    color: var(--color-brand-blue);
  }

  .button--inverted-white {
    background-color: transparent;
    border: 1px solid #ffffff;
    color: #ffffff;
  }

  .button--inverted-arrow {
    border: 1px solid #ffffff;
    background: transparent;
    color: #ffffff;
    text-indent: -999em;
    overflow: hidden;
    padding: 0;
    width: var(--gap);
    height: var(--gap);
    position: relative;
  }

  .card-meta .button--inverted-arrow {
    position: absolute;
    right: 0;
    bottom: 0;
  }

  .button--arrow {
    background: var(--color-brand-army);
    color: #ffffff;
    text-indent: -999em;
    overflow: hidden;
    padding: 0;
    width: var(--gap);
    height: var(--gap);
    position: relative;
  }

  .button--inverted-arrow::after {
    content: "";
    position: absolute;
    inset: 0;
    margin: auto;
    width: 30%;
    height: 30%;
    background-color: currentColor;
    -webkit-mask: url("../images/icons/icon-chevron.svg") no-repeat center /
      contain;
    mask: url("../images/icons/icon-chevron.svg") no-repeat center / contain;
    transform: rotate(-90deg);
    transition: transform 0.2s ease;
  }

  .button--arrow::after {
    content: "";
    position: absolute;
    inset: 0;
    margin: auto;
    width: 30%;
    height: 30%;
    background-color: currentColor;
    -webkit-mask: url("../images/icons/icon-chevron.svg") no-repeat center /
      contain;
    mask: url("../images/icons/icon-chevron.svg") no-repeat center / contain;
    transform: rotate(-90deg);
    transition: transform 0.2s ease;
  }

  .button--inverted-arrow:hover::after,
  .button--inverted-arrow:focus::after {
    transform: rotate(-90deg) translateX(2px);
  }

  .button--arrow:hover::after,
  .button--arrow:focus::after {
    transform: rotate(-90deg) translateX(2px);
  }

  .button--inverted-arrow.color {
    color: var(--color-brand-blue);
    border-color: var(--color-brand-blue);
  }

  .button--gradient1 {
    background: linear-gradient(
      90deg,
      var(--color-brand-blue),
      var(--color-brand-green),
      var(--color-brand-blue)
    );
    background-size: 200% 100%;
    background-position: 0% 50%;
    transition: background-position 0.6s ease;
    color: #fff;
  }

  .button--gradient1:hover {
    background-position: 100% 50%;
  }

  .button-group {
    display: flex;
    gap: var(--gap18);
  }

  .button--secondary:hover,
  .button--secondary:focus {
    background-color: transparent;
    color: var(--color-brand-army);
    border-color: var(--color-brand-army);
  }

  .button--inverse {
    background-color: transparent;
    color: white;
    box-shadow: inset 0 0 0 1px #ffffff;
  }

  .button--inverse:hover,
  .button--inverse:focus {
    background-color: rgba(255, 255, 255, 0.9);
    color: var(--color-brand-army);
  }

  .button--outline {
    background-color: transparent;
    color: var(--color-brand-blue);
    border: 1px solid var(--color-brand-blue);
  }

  .button--outline:hover,
  .button--outline:focus {
    background-color: var(--color-brand-blue);
    color: #ffffff;
  }

  .button--ghost {
    background-color: transparent;
    color: #ffffff;
    border: 1px solid rgba(255, 255, 255, 0.6);
  }

  .button--ghost:hover,
  .button--ghost:focus {
    background-color: rgba(255, 255, 255, 0.15);
    color: #ffffff;
    border-color: #ffffff;
  }

  .button--careers-primary {
    background-color: #ffffff;
    color: var(--color-brand-blue);
    border: 1px solid #ffffff;
  }

  .button--careers-primary:hover,
  .button--careers-primary:focus {
    background-color: rgba(255, 255, 255, 0.85);
    color: var(--color-brand-blue);
  }

  .button--careers-secondary {
    background-color: transparent;
    color: #ffffff;
    border: 1px solid rgba(255, 255, 255, 0.85);
  }

  .button--careers-secondary:hover,
  .button--careers-secondary:focus {
    border-color: #ffffff;
    background-color: rgba(255, 255, 255, 0.12);
  }

  .row-services .text-layout-wrapper {
    padding-right: 0;
  }

  .section-copy {
    margin: 0;
    font-size: 1rem;
    line-height: 1.6;
    color: var(--color-text);
    padding-bottom: var(--gap18);
  }

  .subsidiaries-controls {
    display: flex;
    align-items: center;
    gap: var(--gap18);
    padding-right: var(--gap72);
  }

  .slider-arrow,
  .news-arrow {
    width: var(--gap);
    height: var(--gap);
    padding: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: none;
    background-color: #ffffff;
    background-color: transparent;
    color: var(--color-white);
    cursor: pointer;
    transition:
      color 0.2s ease,
      transform 0.2s ease;
    border: 1px solid var(--color-brand-army);
    /* mask: url(../images/icons/icon-chevron-green.svg) no-repeat center / 30% 30%; */
    background-image: url(../images/icons/icon-chevron-green.svg);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 30% 30%;
    transform: rotate(-90deg);
    transition: transform 0.2s ease;
    border-radius: 50%;
  }

  .slider-arrow img,
  .news-arrow img {
    width: 32px;
    height: 32px;
    transition:
      transform 0.3s ease,
      filter 0.3s ease;
  }

  .slider-arrow:hover,
  .slider-arrow:focus,
  .news-arrow:hover,
  .news-arrow:focus {
    color: var(--color-brand-blue);
  }

  .slider-arrow:disabled,
  .news-arrow:disabled {
    opacity: 0.25;
    cursor: not-allowed;
  }

  .slider-arrow:hover img,
  .slider-arrow:focus img,
  .news-arrow:hover img,
  .news-arrow:focus img {
    transform: translateX(4px);
    filter: drop-shadow(0 8px 12px rgba(32, 74, 138, 0.25));
  }

  .slider-arrow--prev,
  .news-arrow--prev {
    transform: rotate(90deg);
  }

  .slider-arrow--prev:hover img,
  .slider-arrow--prev:focus img,
  .news-arrow--prev:hover img,
  .news-arrow--prev:focus img {
    transform: rotate(180deg) translateX(4px);
  }

  .subsidiaries-progress {
    position: relative;
    flex: 1 1 auto;
    height: 1px;
    background-color: var(--color-brand-light-gray);
    border-radius: 999px;
  }

  .subsidiaries-progress__bar {
    position: absolute;
    inset: 0;
    height: 2px;
    background-color: var(--color-brand-army);
    transform: scaleX(0);
    transform-origin: left center;
    transition: transform 0.3s ease;
  }

  .subsidiaries-showcase {
    flex: 1 1 0;
    display: flex;
    flex-direction: column;
    gap: var(--gap24);
    margin-right: calc((100vw - min(100vw, var(--max-width))) * -0.5);
    padding-right: calc((100vw - min(100vw, var(--max-width))) * 0.5);
    max-width: none;
  }

  .subsidiary-slider {
    flex: 1 1 0;
    position: relative;
  }

  .grid-showcase {
    flex: 1 1 0;
    display: flex;
    flex-direction: column;
    gap: var(--gap24);
    --grid-showcase-max-width: var(--max-width);
    margin-right: calc(
      (100vw - min(100vw, var(--grid-showcase-max-width))) * -0.5
    );
    padding-right: calc(
      (100vw - min(100vw, var(--grid-showcase-max-width))) * 0.5
    );
    max-width: none;
    --grid-carousel-columns: 1;
    --grid-carousel-gap: var(--gap24);
  }

  .grid-showcase[data-grid-bleed="on"] {
    /* --grid-showcase-max-width: var(--limit-width); */
    --grid-showcase-max-width: var(--limit-width);
    margin-right: 0;
    padding-right: 0;
  }

  .grid-showcase.card-rail[data-grid-bleed="on"] .grid-viewport {
    overflow: visible;
  }

  .grid-showcase[data-grid-bleed="off"] {
    --grid-showcase-max-width: 100vw;
  }

  .grid-showcase.image-gallery {
    --grid-carousel-columns: 1;
    --grid-carousel-gap: 0;
    gap: var(--gap18);
    margin-right: 0;
    padding-right: 0;
    max-width: 100%;
  }

  .grid-showcase.image-gallery .grid-card__media img {
    aspect-ratio: 16 / 9;
    object-fit: cover;
    height: auto;
    width: 100%;
  }

  .grid-showcase.image-gallery .grid-card__media::after {
    display: none;
  }

  .grid-showcase.image-gallery[data-grid-carousel="on"] .grid-track {
    gap: 0;
  }

  .grid-showcase.image-gallery[data-grid-carousel="on"] .grid-card {
    flex: 0 0 100%;
    max-width: 100%;
  }

  .grid-showcase.image-gallery .grid-card__media .grid-card__title .card-title {
    font-size: 0.9rem;
    line-height: 1.3;
  }

  .grid-showcase.image-gallery
    .grid-card__media
    .grid-card__title
    .card-subtitle {
    font-size: 0.9rem;
    line-height: 1.3;
  }

  .grid-slider {
    width: 100%;
    flex: 1 1 0;
    position: relative;
  }

  .grid-viewport {
    width: 100%;
  }

  .grid-track {
    display: grid;
    gap: var(--grid-carousel-gap);
    grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
    transition: transform 0.4s ease;
  }

  .grid-controls {
    display: none;
    align-items: center;
    gap: var(--gap18);
  }

  .grid-progress {
    position: relative;
    flex: 1 1 auto;
    height: 1px;
    background-color: var(--color-brand-light-gray);
    border-radius: 999px;
  }

  .grid-progress__bar {
    position: absolute;
    inset: 0;
    height: 2px;
    background-color: var(--color-brand-army);
    transform: scaleX(0);
    transform-origin: left center;
    transition: transform 0.3s ease;
  }

  .grid-showcase[data-grid-carousel="on"] .grid-viewport {
    overflow: hidden;
    touch-action: pan-y;
  }

  .grid-showcase[data-grid-carousel="on"] .grid-track {
    display: flex;
    gap: var(--grid-carousel-gap);
    will-change: transform;
    cursor: grab;
  }

  .grid-showcase[data-grid-carousel="on"] .grid-slider.is-dragging .grid-track {
    cursor: grabbing;
  }

  .grid-showcase[data-grid-carousel="on"] .grid-slider.is-dragging .grid-card a,
  .grid-showcase[data-grid-carousel="mobile"]
    .grid-slider.is-dragging
    .grid-card
    a {
    pointer-events: none;
  }

  .grid-showcase[data-grid-carousel="on"] .grid-card {
    flex: 0 0
      calc(
        (
            100% -
              ((var(--grid-carousel-columns) - 1) * var(--grid-carousel-gap))
          ) /
          var(--grid-carousel-columns)
      );
    max-width: calc(
      (100% - ((var(--grid-carousel-columns) - 1) * var(--grid-carousel-gap))) /
        var(--grid-carousel-columns)
    );
    min-width: 0;
  }

  .grid-showcase[data-grid-carousel="on"] .grid-controls {
    display: flex;
  }

  .grid-showcase[data-grid-carousel="mobile"] .grid-viewport {
    overflow: hidden;
    touch-action: pan-y;
  }

  .grid-showcase[data-grid-carousel="mobile"] .grid-track {
    display: flex;
    gap: var(--grid-carousel-gap);
    will-change: transform;
    cursor: grab;
  }

  .grid-showcase[data-grid-carousel="mobile"]
    .grid-slider.is-dragging
    .grid-track {
    cursor: grabbing;
  }

  .grid-showcase[data-grid-carousel="mobile"] .grid-card {
    flex: 0 0
      calc(
        (
            100% -
              ((var(--grid-carousel-columns) - 1) * var(--grid-carousel-gap))
          ) /
          var(--grid-carousel-columns)
      );
    max-width: calc(
      (100% - ((var(--grid-carousel-columns) - 1) * var(--grid-carousel-gap))) /
        var(--grid-carousel-columns)
    );
    min-width: 0;
  }

  .grid-showcase[data-grid-carousel="mobile"] .grid-controls {
    display: flex;
  }

  .section-wrapper[data-grid-bleed="on"] {
    overflow: visible;
  }

  @supports selector(:has(*)) {
    .grid-showcase-wrapper:has(.grid-showcase[data-grid-bleed="on"]) {
      width: min(100%, var(--limit-width));
      margin-inline: auto;
    }

    .section-wrapper:has(.grid-showcase[data-grid-bleed="on"]) {
      overflow: visible;
    }
  }

  .dropdown-accordion-box {
    display: flex;
    gap: var(--gap72);
  }

  .dropdown-toggle {
    position: relative;
    width: fit-content;
    flex-basis: 200px;
    flex-shrink: 0;
    flex-grow: 0;
  }

  .dropdown-current {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: var(--gap18);
    background-color: transparent;
    font-family: var(--font-family-heading);
    font-weight: 500;
    color: var(--color-brand-blue);
    font-size: 1.3rem;
    line-height: 1.2;
    cursor: pointer;
    transition:
      border-color 0.3s ease,
      box-shadow 0.3s ease;
    border: 0;
    padding: 0;
    white-space: nowrap;
  }

  .style-dark .dropdown-current {
    color: var(--color-white);
  }

  .dropdown-current::after {
    content: "";
    width: 14px;
    height: 14px;
    background: url(../images/icons/icon-chevron.svg) center/contain no-repeat;
    transition: transform 0.3s ease;
    transform: rotate(0deg);
  }

  .style-dark .dropdown-current::after {
    filter: brightness(0) invert(1);
  }

  .dropdown-toggle.is-open .dropdown-current {
    border-color: var(--c);
    box-shadow: 0 12px 30px rgba(0, 0, 0, 0.08);
  }

  .dropdown-toggle.is-open .dropdown-current::after {
    transform: rotate(180deg);
  }

  .dropdown-toggle .options {
    position: absolute;
    border-radius: var(--gap12);
    left: 0;
    right: 0;
    display: flex;
    flex-direction: column;
    gap: var(--gap12);
    padding: var(--gap24);
    margin-top: var(--gap18);
    background-color: rgb(var(--color-brand-blue-rgb) / 0.7);
    backdrop-filter: blur(18px) saturate(140%);
    -webkit-backdrop-filter: blur(18px) saturate(140%);
    z-index: 999;
    min-width: 280px;
    box-shadow: 0 20px 60px rgb(0 0 0 / 0.4);
  }

  .style-dark .dropdown-toggle .options {
    background-color: rgba(0, 0, 0, 0.6);
  }

  .award-filter .dropdown-toggle .options {
    left: auto;
    right: 0;
  }

  .award-filter.year .dropdown-toggle .options {
    left: 0;
    right: auto;
    min-width: 100px;
  }

  .dropdown-toggle .options[hidden] {
    display: none;
  }

  .dropdown-toggle .options a {
    font-family: var(--font-family-heading);
    font-size: 1.2rem;
    line-height: 1.2;
    padding: 0;
    color: var(--color-white);
    display: block;
    cursor: pointer;
    transition:
      background-color 0.25s ease,
      color 0.25s ease;
  }

  .dropdown-toggle .options a:hover,
  .dropdown-toggle .options a:focus {
    color: var(--color-brand-army);
  }

  .dropdown-accordion {
    flex-basis: 100%;
  }

  .dropdown-accordion .accordion-title {
    font-family: var(--font-family-heading);
    font-size: 1.5rem;
    line-height: 1.2em;
    font-weight: bold;
    color: var(--color-brand-emerald);
    padding-bottom: var(--gap18);
    letter-spacing: -0.02em;
  }

  .business-grid-title {
    font-family: var(--font-family-heading);
    font-size: 1.5rem;
    line-height: 1.2em;
    font-weight: bold;
    color: var(--color-brand-emerald);
    padding-bottom: var(--gap18);
  }

  .accordion-items {
    display: block;
    width: 100%;
  }

  .accordion-item {
    color: var(--color-text);
    overflow: hidden;
    transition:
      border-color 0.3s ease,
      box-shadow 0.3s ease;
    border-top: 1px solid var(--color-brand-gray);
  }

  .accordion-item.opened {
    border-top-color: var(--color-brand-army);
  }

  .accordion-item .item-heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: var(--gap18);
    padding: var(--gap18) 0;
    font-family: var(--font-family-heading);
    font-size: 1.15rem;
    line-height: 1.2;
    cursor: pointer;
    font-weight: bold;
    min-height: 82px;
  }

  .accordion-items.open-all .accordion-item .item-heading {
    cursor: default;
    pointer-events: none;
  }

  .accordion-item[data-accordion-toggle="disabled"] .item-heading,
  .accordion-item[data-accordion-toggle-disabled] .item-heading,
  .accordion-item .item-heading[data-accordion-toggle="disabled"],
  .accordion-item .item-heading[data-accordion-toggle-disabled] {
    cursor: default;
  }

  .accordion-item .item-heading .sub {
    font-size: 12px;
    line-height: 1.4;
    font-weight: 400;
    color: var(--color-text);
    margin-top: 0.4em;
  }

  .row-awards .accordion-item {
    color: var(--color-white);
    gap: var(--gap);
  }

  .accordion-item.opened .item-heading {
    color: var(--color-brand-army);
    padding-bottom: var(--gap12);
  }

  .accordion-item .item-heading:focus-visible {
    outline: 2px solid var(--color-brand-army);
    outline-offset: 2px;
  }

  .item-toggle {
    width: var(--gap24);
    height: var(--gap24);
    flex: none;
    background: url("../images/icons/icon-accordion-open.svg") center / contain
      no-repeat;
    transition:
      transform 0.3s ease,
      background-image 0.3s ease;
  }

  .accordion-item.opened .item-toggle {
    background-image: url("../images/icons/icon-accordion-close.svg");
  }

  .accordion-item .item-content {
    padding: 0 0 var(--gap);
    font-size: 0.95rem;
    line-height: 1.5;
  }

  .normal-style .accordion-item .item-content {
    color: var(--color-text);
  }

  .accordion-item .item-content.nopad {
    padding-bottom: 0;
  }

  .project-card .item-content {
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, 0.1);
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
    border-radius: var(--gap12);
    box-shadow: 0 24px 48px rgba(0, 0, 0, 0.28);
    padding: var(--gap48);
    overflow-y: auto;
    max-height: 100%;
    opacity: 0;
    pointer-events: none;
    transform: translateY(12px);
    transition:
      opacity 0.3s ease,
      transform 0.3s ease;
    color: #ffffff;
    z-index: 2;
  }

  .project-card .item-content .text-block {
    display: flex;
    flex-direction: column;
    gap: var(--gap9);
  }

  .item-content.is-overlay-open {
    opacity: 1;
    pointer-events: auto;
    transform: translateY(0);
    display: flex;
    padding: var(--gap72);
  }

  .project-card .item-content.is-overlay-open {
    display: flex;
    align-items: stretch;
    justify-content: flex-start;
  }

  .project-card .accordion-item .item-content[hidden] {
    display: none !important;
  }

  .project-card__overlay {
    position: absolute;
    inset: 0;
    z-index: 10;
    pointer-events: none;
  }

  .project-card__overlay.is-active {
    pointer-events: auto;
  }

  .project-card .accordion-item .item-heading .item-toggle {
    background-image: url("../images/icons/icon-menu-inpage-chevron.svg");
    transform: rotate(-90deg);
  }

  .project-card .accordion-close {
    position: absolute;
    top: var(--gap);
    right: var(--gap);
    border: 1px solid #ffffff;
    background-color: var(--color-brand-blue);
    background-image: url(../images/icons/icon-modal-close-white.svg);
    background-repeat: no-repeat;
    background-position: center;
    background-size: var(--gap18) var(--gap18);
    color: var(--color-brand-black);
    border-radius: 999px;
    width: var(--gap);
    height: var(--gap);
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition:
      border-color 0.2s ease,
      background-color 0.2s ease;
  }

  .accordion-item .sub-heading {
    font-weight: 700;
    font-family: var(--font-family-heading);
  }

  .accordion-item .item-footnote {
    color: var(--color-brand-light-gray);
    font-size: 12px;
    padding-top: var(--gap12);
    font-family: var(--font-family-heading);
  }

  .subsidiary-viewport {
    overflow: hidden;
  }

  .subsidiary-track {
    display: flex;
    gap: var(--gap18);
    transform: translateX(0);
    transition: transform 0.4s ease;
    will-change: transform;
  }

  .subsidiary-card {
    flex: 0 0 100%;
    overflow: hidden;
    display: flex;
    flex-direction: column;
  }

  .grid-card {
    overflow: hidden;
    display: flex;
    flex-direction: column;
  }

  .subsidiary-card__media {
    width: 100%;
    aspect-ratio: 3 / 4;
    overflow: hidden;
    position: relative;
    margin: 0;
  }

  .subsidiary-card__media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
  }

  .subsidiary-card__media::after {
    content: "";
    position: absolute;
    inset: 0;
    height: 100%;
    pointer-events: none;
    background: var(--background-visual-gradient);
    background-blend-mode: multiply;
    transition: all 0.2s linear;
  }

  .subsidiary-card__title {
    position: absolute;
    left: 0;
    bottom: 0;
    padding: var(--gap);
    margin: 0;
    font-family: var(--font-family-heading);
    font-size: 1.3rem;
    line-height: 1.2;
    font-weight: 700;
    color: #ffffff;
    z-index: 3;
    width: 100%;
    display: flex;
    flex-direction: column;
    transition: all 0.2s linear;
  }

  .subsidiary-card__title .card-meta {
    font-size: 0.9rem;
    font-weight: 400;
    line-height: 1.5;
    max-height: 0px;
    overflow: hidden;
    opacity: 0;
    transform: translateY(16px);
    transition:
      opacity 0.4s ease,
      transform 0.4s ease;
  }

  .subsidiary-card .subsidiary-card__title .card-title {
    padding-bottom: var(--gap18);
  }

  .subsidiary-card:hover .subsidiary-card__title .card-meta,
  .subsidiary-card.is-active .subsidiary-card__title .card-meta {
    opacity: 1;
    max-height: 50%;
    transform: translateY(0px);
  }

  .subsidiary-card__media {
    overflow: hidden;
    border-bottom-right-radius: 0;
    transition: border-radius 0.4s ease;
  }

  .subsidiary-card:hover .subsidiary-card__media,
  .grid-card__media {
    width: 100%;
    aspect-ratio: 3 / 4;
    overflow: hidden;
    position: relative;
    margin: 0;
  }

  .grid-card__media.ratio-free {
    aspect-ratio: unset;
  }

  .grid-card__media.ratio-4-3 {
    aspect-ratio: 4 / 3;
  }

  .grid-card__media.ratio-16-9 {
    aspect-ratio: 16 / 9;
  }

  .grid-card__media.is-curve {
    border-bottom-right-radius: 3vw;
  }

  .grid-card__media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
  }

  .grid-card__media::after {
    content: "";
    position: absolute;
    inset: 0;
    height: 100%;
    pointer-events: none;
    background: var(--hero-slide-gradient);
    background-blend-mode: multiply;
    transition: all 0.2s linear;
  }

  .row-leadership .grid-card__media::after,
  .grid-card__media.no-overlay::after {
    display: none;
  }

  .grid-card__title {
    position: absolute;
    left: 0;
    bottom: 0;
    padding: var(--gap) var(--gap48) var(--gap) var(--gap);
    margin: 0;
    font-family: var(--font-family-heading);
    font-size: 1.15rem;
    line-height: 1.3;
    font-weight: 700;
    color: #ffffff;
    z-index: 3;
    width: 100%;
    max-width: 90%;
    display: flex;
    flex-direction: column;
    transition: all 0.2s linear;
  }

  .grid-card__title .card-meta,
  .project-card .card-meta {
    font-size: 0.9rem;
    font-weight: 400;
    line-height: 1.5;
    max-height: 0px;
    overflow: hidden;
    opacity: 0;
    transform: translateY(16px);
    transition: all 0.4s ease;
    display: flex;
    flex-direction: column;
    gap: var(--gap18);
    position: relative;
  }

  .grid-card .grid-card__title .card-subtitle {
    font-size: 0.9rem;
    line-height: 1.5;
    font-weight: 400;
  }

  .card-subtitle {
    display: none !important;
  }

  .row-leadership .grid-card .grid-card__title .card-subtitle {
    display: block !important;
    padding-top: var(--gap6);
    font-size: 0.8rem;
    line-height: 1.4;
    font-weight: 400;
    color: var(--color-text);
  }

  .row-leadership .grid-showcase.caption-below .grid-card__title {
    max-width: 100%;
  }

  .row-leadership .grid-showcase.caption-below .grid-card__title .card-title {
    font-weight: 700;
  }

  .grid-card:hover .grid-card__title .card-meta,
  .grid-card.is-active .grid-card__title .card-meta {
    opacity: 1;
    max-height: 50%;
    transform: translateY(0px);
    padding-top: var(--gap12);
    overflow: unset;
  }

  .grid-card__media {
    overflow: hidden;
    border-bottom-right-radius: 0;
    transition: border-radius 0.4s ease;
  }

  .grid-card .grid-card__media {
    border-bottom-right-radius: 3vw;
    aspect-ratio: unset;
  }

  .grid-showcase.caption-below .grid-card__title {
    padding: var(--gap18) 0 0;
    position: relative;
    inset: auto;
    color: var(--color-text);
    font-size: 1rem;
    line-height: 1.3;
  }

  .grid-showcase.caption-below .grid-card__media {
    border-bottom-right-radius: 0;
    background-color: transparent;
  }

  .grid-showcase.caption-below .grid-card__media img {
    border-bottom-right-radius: 3vw;
  }

  .row-projects {
    padding-block: var(--gap108);
    display: flex;
    flex-direction: column;
    gap: var(--gap48);
    background-color: var(--color-surface);
  }

  .projects-slideshow {
    flex-basis: 40%;
    position: relative;
    aspect-ratio: 1/1;
  }

  .projects-intro {
    width: 100%;
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    gap: var(--gap12);
    padding-left: var(--gap72);
    padding-right: var(--gap72);
    color: var(--color-brand-blue);
    align-items: flex-start;
  }

  .projects-gallery {
    width: 100%;
    margin: 0;
    display: flex;
    gap: 1px;
    min-height: 25vw;
    height: auto;
    background-color: var(--color-white);
  }

  .project-card {
    position: relative;
    flex: 1 1 0;
    min-height: 25vw;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    transition: all 0.8s cubic-bezier(0.4, 0, 0.2, 1);
    border-bottom-right-radius: 0;
    min-width: 0;
    text-decoration: none;
    color: inherit;
  }

  .project-card__media {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
  }

  .project-card__media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    filter: saturate(0.9);
    transform-origin: center top;
    transition:
      transform 0.6s cubic-bezier(0.4, 0, 0.2, 1),
      filter 0.6s cubic-bezier(0.4, 0, 0.2, 1);
  }

  .project-card__media img.pos-center-top {
    object-position: center top;
  }

  .project-card__media img.pos-center-bottom {
    object-position: center bottom;
  }

  .project-card__media img.pos-center-center {
    object-position: center center;
  }

  .project-card__media:not(.nooverlay)::after {
    content: "";
    position: absolute;
    inset: 0;
    background: var(--card-slide-gradient);
    transition: opacity 0.4s ease;
    z-index: 2;
  }

  .project-card__media.balanced::after {
    content: "";
    position: absolute;
    inset: 0;
    background: var(--card-slide-balanced-gradient);
    transition: opacity 0.4s ease;
    z-index: 2;
  }

  /* .project-card__media:not(.nooverlay)::before {
    content: "";
    position: absolute;
    inset: 0;
    background: var(--background-visual-gradient-content);
    background-blend-mode: multiply;
    transition: opacity 0.4s ease;
    z-index: 1;
    opacity: 0;
} */
  .projects-gallery .project-card.is-active,
  .projects-gallery .project-card:hover {
    flex: 2 1 0;
  }

  .projects-gallery.business
    .project-card.is-active
    .project-card__media:not(.nooverlay)::before,
  .projects-gallery.business
    .project-card:hover
    .project-card__media:not(.nooverlay)::before {
    opacity: 0.7;
  }

  .projects-gallery.business .project-card.is-active .project-card__content,
  .projects-gallery.business .project-card:hover .project-card__content {
    /* padding: var(--gap72); */
    /* backdrop-filter: blur(8px) saturate(100%);
    -webkit-backdrop-filter: blur(8px) saturate(100%); */
  }

  .projects-gallery .project-card .accordion-item {
    color: var(--color-white);
  }

  .projects-gallery .project-card .accordion-item .item-heading {
    min-height: 80px;
  }

  .projects-gallery .project-card .accordion-item .item-heading .sub {
    color: var(--color-brand-light-gray);
  }

  /* .project-card__media.mild::after {
    background: var(--background-visual-gradient-mild);
} */

  .project-card__content {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    padding: var(--gap24) var(--gap);
    color: #ffffff;
    flex: 1 1 auto;
    width: 100%;
    height: 100%;
    z-index: 3;
    transition: all 0.4s ease;
  }

  .project-card__header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: var(--gap12);
  }

  .project-card__title {
    margin: 0;
    font-family: var(--font-family-heading);
    font-size: 1.5rem;
    line-height: 1.2;
    font-weight: 700;
    color: #ffffff;
  }

  .project-card__list {
    color: #ffffff;
    padding-top: var(--gap18);
  }

  .project-card__list ul,
  .project-card__list ul li,
  .project-card__list ul li a {
    color: #ffffff;
  }

  .project-card__cta {
    width: 1.8rem;
    height: 1.8rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background-color: rgba(255, 255, 255, 0.85);
    mask: url("../images/icons/icon-plus.svg") center / contain no-repeat;
    -webkit-mask: url("../images/icons/icon-plus.svg") center / contain
      no-repeat;
    transition:
      background-color 0.3s ease,
      transform 0.3s ease;
  }

  .project-card__excerpt {
    max-height: 0;
    margin: 0;
    font-size: 0.9rem;
    line-height: 1.5;
    color: rgba(255, 255, 255, 1);
    opacity: 0;
    transform: translateY(16px);
    transition:
      opacity 0.4s ease,
      transform 0.4s ease;
  }

  .project-card.is-active,
  .project-card:hover,
  .project-card:focus-within {
    flex: 2 1 0;
  }

  .project-card.is-active .project-card__media img,
  .project-card:hover .project-card__media img,
  .project-card:focus-within .project-card__media img {
    transform: scale(1.05);
    filter: saturate(1.05);
  }

  .project-card.is-active .project-card__title br,
  .project-card:hover .project-card__title br,
  .project-card:focus-within .project-card__title br {
    display: none;
  }

  .project-card.is-active .project-card__media::after,
  .project-card:hover .project-card__media::after,
  .project-card:focus-within .project-card__media::after {
    opacity: 1;
  }

  .project-card.is-active .project-card__excerpt,
  .project-card:hover .project-card__excerpt,
  .project-card:focus-within .project-card__excerpt,
  .project-card.is-active .card-meta,
  .project-card:hover .card-meta,
  .project-card:focus-within .card-meta {
    max-height: 50vw;
    opacity: 1;
    transform: translateY(0);
    /* padding-top: var(--gap12); */
    overflow: unset;
  }

  .project-card.is-active .project-card__cta,
  .project-card:hover .project-card__cta,
  .project-card:focus-within .project-card__cta {
    background-color: var(--color-brand-army);
    transform: rotate(45deg);
  }

  .projects-gallery:focus-within .project-card:not(:focus-within) {
    flex: 1 1 0;
  }

  .projects-gallery:hover .project-card:not(:hover) {
    flex: 1 1 0;
  }

  .projects-gallery--no-accordion .project-card,
  .projects-gallery--no-accordion .project-card.is-active,
  .projects-gallery--no-accordion .project-card:hover,
  .projects-gallery--no-accordion .project-card:focus-within {
    flex: 1 1 0;
  }

  .projects-gallery--no-accordion
    .project-card.is-active
    .project-card__media
    img,
  .projects-gallery--no-accordion .project-card:hover .project-card__media img,
  .projects-gallery--no-accordion
    .project-card:focus-within
    .project-card__media
    img {
    transform: none;
    filter: none;
  }

  .projects-gallery--no-accordion
    .project-card.is-active
    .project-card__title
    br,
  .projects-gallery--no-accordion .project-card:hover .project-card__title br,
  .projects-gallery--no-accordion
    .project-card:focus-within
    .project-card__title
    br {
    display: initial;
  }

  .projects-gallery--no-accordion
    .project-card.is-active
    .project-card__media::after,
  .projects-gallery--no-accordion
    .project-card:hover
    .project-card__media::after,
  .projects-gallery--no-accordion
    .project-card:focus-within
    .project-card__media::after {
  }

  .projects-gallery--no-accordion
    .project-card.is-active
    .project-card__excerpt,
  .projects-gallery--no-accordion .project-card:hover .project-card__excerpt,
  .projects-gallery--no-accordion
    .project-card:focus-within
    .project-card__excerpt,
  .projects-gallery--no-accordion .project-card.is-active .card-meta,
  .projects-gallery--no-accordion .project-card:hover .card-meta,
  .projects-gallery--no-accordion .project-card:focus-within .card-meta {
    max-height: 0;
    opacity: 0;
    transform: translateY(16px);
    padding-top: 0;
    overflow: hidden;
  }

  .projects-gallery--no-accordion .project-card.is-active .project-card__cta,
  .projects-gallery--no-accordion .project-card:hover .project-card__cta,
  .projects-gallery--no-accordion
    .project-card:focus-within
    .project-card__cta {
    background-color: rgba(255, 255, 255, 0.85);
    transform: none;
  }

  .sustainability-columns {
    width: 100%;
    display: flex;
    align-items: stretch;
    gap: var(--gap);
  }

  .sustainability-columns .sustain-slideshow {
    flex: 1 1 60%;
    min-width: 0;
  }

  .sustainability-columns .sustainability-layout {
    flex: 0 1 40%;
    width: auto;
    align-self: stretch;
  }

  .sustainability-layout {
    width: 100%;
    display: flex;
    position: relative;
  }

  .sustainability-summary {
    flex: 0 0 32%;
    max-width: 320px;
    display: flex;
    flex-direction: column;
    gap: var(--gap12);
    color: var(--color-brand-blue);
  }

  .sustainability-description {
    flex: 1 1 0;
    color: var(--color-brand-blue);
  }

  .sustainability-gallery {
    position: relative;
    width: 100%;
    margin: 0 auto;
  }

  .sustainability-gallery__viewport {
    position: relative;
    overflow: hidden;
  }

  .sustainability-gallery__track {
    display: flex;
    transition: transform 0.6s cubic-bezier(0.45, 0, 0.2, 1);
  }

  .sustainability-card {
    position: relative;
    flex: 0 0 100%;
    min-height: 25vw;
    background-color: #000000;
    color: #ffffff;
    overflow: hidden;
  }

  .sustainability-card__media {
    margin: 0;
    height: 100%;
  }

  .sustainability-card__media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    filter: saturate(0.95);
  }

  .sustainability-card__overlay {
    position: absolute;
    inset: 0;
    display: flex;
    flex-direction: row;
    align-items: flex-end;
    gap: var(--gap72);
    padding: var(--gap108) var(--gap72);
    background: linear-gradient(
      180deg,
      rgba(11, 25, 39, 0.05) 0%,
      rgba(2, 8, 13, 0.78) 65%
    );
  }

  .sustainability-card__title {
    margin: 0;
    font-family: var(--font-family-heading);
    font-size: clamp(1.8rem, 3vw, 2.4rem);
    line-height: 1.2;
    letter-spacing: 0.01em;
    max-width: 320px;
    justify-content: flex-end;
  }

  .sustainability-card__details {
    display: flex;
    flex-direction: column;
    gap: var(--gap);
    justify-content: flex-end;
  }

  .sustainability-card__divider {
    display: block;
    width: 100%;
    height: 1px;
    background: rgba(255, 255, 255, 0.35);
  }

  .sustainability-card__caption {
    margin: 0;
    font-size: 1rem;
    line-height: 1.7;
    color: rgba(255, 255, 255, 0.92);
  }

  .sustainability-card__link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: fit-content;
    min-width: 150px;
    padding: 0.85rem 1.8rem;
    border: 1px solid rgba(255, 255, 255, 0.6);
    text-transform: uppercase;
    letter-spacing: 0.14em;
    font-size: 0.78rem;
    color: #ffffff;
    transition:
      background-color 0.3s ease,
      color 0.3s ease,
      border-color 0.3s ease;
  }

  .sustainability-card__link:hover,
  .sustainability-card__link:focus {
    background-color: #ffffff;
    color: var(--color-brand-blue);
    border-color: transparent;
  }

  .sustainability-card.is-active .sustainability-card__link {
    border-color: rgba(255, 255, 255, 0.85);
  }

  .sustainability-gallery__controls {
    position: absolute;
    left: 50%;
    bottom: clamp(1.5rem, 4vw, 2.5rem);
    transform: translateX(-50%);
    display: flex;
    align-items: center;
    gap: var(--gap12);
    z-index: 2;
  }

  .sustainability-gallery__dots {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
  }

  .sustainability-gallery__dot {
    width: 10px;
    height: 10px;
    padding: 0;
    border-radius: 999px;
    border: none;
    background-color: rgba(255, 255, 255, 0.4);
    cursor: pointer;
    transition:
      background-color 0.3s ease,
      transform 0.3s ease,
      width 0.3s ease;
  }

  .sustainability-gallery__dot.is-active {
    width: 26px;
    background-color: var(--color-brand-army);
    transform: translateY(-1px);
  }

  .sustainability-gallery__dot:focus-visible {
    outline: 2px solid var(--color-brand-army);
    outline-offset: 2px;
  }

  .row-news {
    padding-bottom: var(--gap72);
    display: flex;
    flex-direction: column;
    gap: var(--gap48);
    background-color: #e6f5fe;
  }

  .row-news .grid-showcase.news-media-grid {
    margin-right: 0;
    padding-right: 0;
    max-width: 100%;
  }

  .news-layout {
    width: 100%;
    margin: 0 auto;
    display: flex;
    gap: var(--gap72);
    align-items: flex-start;
    padding-left: var(--gap72);
  }

  .news-intro {
    flex: 0 0 32%;
    max-width: 320px;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: var(--gap12);
    color: var(--color-brand-blue);
  }

  .news-item {
    position: relative;
    flex: 0 0 calc(100% / 3);
    border-left: 1px solid var(--color-brand-army);
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: var(--gap24);
    color: var(--color-brand-blue);
    overflow: hidden;
    min-height: 320px;
    transition:
      flex 0.5s cubic-bezier(0.4, 0, 0.2, 1),
      transform 0.45s cubic-bezier(0.4, 0, 0.2, 1),
      opacity 0.3s ease,
      background-color 0.4s ease,
      color 0.4s ease,
      border-color 0.4s ease,
      box-shadow 0.4s ease,
      max-width 0.5s cubic-bezier(0.4, 0, 0.2, 1);
  }

  .arts-news .news-item {
    flex: 0 0 calc(100% / 4);
  }

  .news-item__media {
    position: absolute;
    inset: 0;
    width: 100%;
    transform: translateX(-105%);
    transition: transform 0.6s cubic-bezier(0.4, 0, 0.2, 1);
    z-index: 0;
  }

  .news-item__media::after {
    content: "";
    position: absolute;
    inset: 0;
    background: var(--background-visual-gradient-mild-black);
    opacity: 0;
    transition: opacity 0.4s ease;
  }

  .news-item__media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
  }

  .news-item__body {
    position: relative;
    z-index: 1;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: var(--gap12);
    min-height: 100%;
    padding: var(--gap24);
    transition: all 0.5s ease;
  }

  .news-item__body .top-section {
    display: flex;
    flex-direction: column;
    gap: var(--gap12);
    flex-grow: 1;
    transition: all 0.5s ease;
  }

  .news-item__source {
    margin: 0;
    font-size: 0.75rem;
    color: var(--color-brand-gray);
    font-weight: 500;
  }

  .news-item__title {
    margin: 0;
    font-family: var(--font-family-heading);
    font-size: 1.15rem;
    line-height: 1.3;
    font-weight: 700;
  }

  .news-item__meta {
    display: flex;
    align-items: baseline;
    gap: 0;
    margin-top: auto;
    flex-direction: column;
  }

  .news-item__day {
    font-family: var(--font-family-heading);
    font-size: 3rem;
    line-height: 1;
    font-weight: 500;
  }

  .news-item__date {
    font-size: 0.9rem;
    line-height: 1.1;
    color: var(--color-brand-army);
    font-weight: bold;
    display: block;
  }

  .news-item__link {
    position: relative;
    z-index: 1;
    align-self: flex-start;
    margin-top: auto;
    font-size: 0.85rem;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    display: inline-flex;
    gap: 0.35em;
    color: var(--color-brand-army);
    transition: color 0.3s ease;
  }

  .news-item:hover,
  .news-item:focus-within,
  .news-item.is-active {
    background-color: var(--color-brand-blue);
    color: #ffffff;
    border-color: transparent;
    box-shadow: 0 24px 40px rgba(17, 17, 17, 0.12);
  }

  .news-item:hover .news-item__media,
  .news-item:focus-within .news-item__media,
  .news-item.is-active .news-item__media {
    transform: translateX(0);
  }

  .news-item:hover .news-item__media::after,
  .news-item:focus-within .news-item__media::after,
  .news-item.is-active .news-item__media::after {
    opacity: 1;
  }

  .news-item:hover .news-item__source,
  .news-item:focus-within .news-item__source,
  .news-item.is-active .news-item__source,
  .news-item:hover .news-item__date,
  .news-item:focus-within .news-item__date,
  .news-item.is-active .news-item__date,
  .news-item:hover .news-item__link,
  .news-item:focus-within .news-item__link,
  .news-item.is-active .news-item__link {
    color: rgba(255, 255, 255, 0.85);
  }

  .news-item:hover .news-item__link span,
  .news-item:focus-within .news-item__link span,
  .news-item.is-active .news-item__link span {
    transform: translateX(6px);
  }

  .news-item__link span {
    transition: transform 0.3s ease;
  }

  .news-item:not(.noimage).is-active .news-item__body {
    justify-content: flex-end;
  }

  .news-item:not(.noimage).is-active .news-item__body .top-section {
    justify-content: flex-end;
  }

  .news-item:not(.noimage).is-active .news-item__meta {
    max-height: 0;
    overflow: hidden;
    flex-basis: 0;
  }

  .news-controls {
    width: 100%;
    display: flex;
    align-items: center;
    gap: var(--gap24);
  }

  .news-progress {
    position: relative;
    flex: 1 1 0;
    height: 1px;
    background-color: var(--color-brand-light-gray);
    border-radius: 999px;
  }

  .news-progress__bar {
    position: absolute;
    inset: 0;
    height: 2px;
    width: 0;
    background-color: var(--color-brand-army);
    transition: width 0.3s ease;
  }

  .news-controls__arrows {
    display: inline-flex;
    gap: var(--gap18);
  }

  .row-explore {
    display: flex;
    flex-direction: column;
    padding-block: 0;
    max-width: var(--max-width);
    margin: 0 auto;
  }

  .explore-header {
    width: 100%;
    margin: 0 auto;
  }

  .explore-header.collapsible {
    padding-block: var(--gap12);
    border-top: 1px solid var(--color-brand-light-gray);
  }

  .footer-accordion {
    width: 100%;
  }

  .footer-accordion__summary {
    list-style: none;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: var(--gap12);
    cursor: pointer;
  }

  .footer-accordion__summary::-webkit-details-marker {
    display: none;
  }

  .footer-accordion__summary::marker {
    content: "";
  }

  .footer-accordion__summary .section-label {
  }

  .footer-accordion__icon {
    display: none;
    width: 18px;
    height: 18px;
    flex-shrink: 0;
    background: url("../images/icons/icon-accordion-open.svg") center / contain
      no-repeat;
    transition: transform 0.2s ease;
  }

  .footer-accordion__icon--visible {
    display: inline-flex;
  }

  .footer-accordion[open] .footer-accordion__icon {
    background-image: url("../images/icons/icon-accordion-close.svg");
  }

  .footer-accordion__content {
    display: block;
    padding-top: var(--gap12);
  }

  .footer-accordion--links .footer-accordion__summary {
    display: none;
  }

  .footer-accordion--links .footer-accordion__content {
    padding-top: 0;
  }

  .footer-accordion--links .row-footer__links {
    width: 100%;
  }

  .explore-heading {
    margin: 0;
    font-family: var(--font-family-heading);
    font-size: clamp(1.4rem, 1.4vw + 1rem, 1.8rem);
    color: var(--color-brand-blue);
  }

  .explore-grid {
    --logo-count: 1;
    --tablet-columns: 1;
    --mobile-columns: 1;
    --logo-slot-width: clamp(120px, 10vw, 156px);
    width: min(
      100%,
      calc(
        (var(--logo-count) * var(--logo-slot-width)) +
          ((var(--logo-count) - 1) * var(--gap))
      )
    );
    margin: 0 auto var(--gap18);
    display: flex;
    flex-wrap: nowrap;
    justify-content: center;
    column-gap: var(--gap12);
    row-gap: var(--gap24);
    align-items: center;
  }

  .explore-grid__item {
    display: flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 var(--logo-slot-width);
    width: var(--logo-slot-width);
    min-width: 0;
    transition: transform 0.3s ease;
  }

  .explore-grid__item:hover,
  .explore-grid__item:focus-visible {
    transform: scale(1.1);
  }

  .explore-grid__media {
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 100%;
    gap: var(--gap12);
    text-align: center;
  }

  .explore-grid__media img {
    width: auto;
    max-width: min(100%, var(--gap108));
    max-height: var(--gap48);
  }

  .explore-grid__media img.explore-grid__logo--inverted {
    filter: brightness(0) invert(0);
  }

  .explore-grid__label {
    font-family: var(--font-family-heading);
    font-size: 0.85rem;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: rgba(255, 255, 255, 0.85);
  }

  .row-careers {
    background-color: #e9f4ff;
    padding-block: calc(var(--gap108) * 1.1);
  }

  .careers-card {
    position: relative;
    display: grid;
    grid-template-columns: minmax(280px, 0.92fr) minmax(320px, 1.08fr);
    border-radius: 24px;
    overflow: hidden;
    box-shadow: 0 28px 56px rgba(32, 74, 138, 0.16);
  }

  .careers-card__content {
    position: relative;
    padding: clamp(32px, 6vw, 72px);
    background: linear-gradient(115deg, #65c03b 0%, #3ea043 80%);
    color: #ffffff;
    display: flex;
    flex-direction: column;
    gap: var(--gap24);
    justify-content: center;
  }

  .careers-card__headline {
    margin: 0;
    font-family: var(--font-family-heading);
    font-weight: 500;
    font-size: clamp(1.75rem, 1.1vw + 1.3rem, 2.4rem);
    line-height: 1.35;
    max-width: 28rem;
  }

  .careers-card__actions {
    display: flex;
    flex-wrap: wrap;
    gap: var(--gap18);
  }

  .careers-card__actions .button {
    flex: 0 0 auto;
    min-width: 156px;
  }

  .careers-card__media {
    position: relative;
    isolation: isolate;
    min-height: 320px;
  }

  .careers-card__media::before {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(
      110deg,
      rgba(101, 192, 59, 0.7) 0%,
      rgba(101, 192, 59, 0.45) 32%,
      rgba(101, 192, 59, 0) 62%
    );
    z-index: 1;
    pointer-events: none;
  }

  .careers-card__media img {
    position: relative;
    z-index: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
  }

  .row-footer {
    position: relative;
    background-color: var(--color-surface);
    color: var(--color-text);
    padding: var(--gap);
    overflow: hidden;
    border-bottom: 8px solid transparent;
    border-image: linear-gradient(
        to right,
        var(--color-brand-green),
        var(--color-brand-blue)
      )
      1;
  }

  .row-footer:before {
    content: " ";
    display: block;
    position: absolute;
    left: 0;
    top: 0;
    height: 1px;
    width: 100%;
    background-color: var(--color-brand-light-gray);
  }

  .row-footer__layout {
    position: relative;
    z-index: 1;
    display: flex;
    flex-direction: column;
    gap: var(--gap18);
    border-top: 1px solid var(--color-brand-light-gray);
    padding-top: var(--gap18);
    max-width: var(--max-width);
    margin: 0 auto;
  }

  .footer-logo-flex {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: var(--gap24);
  }

  .row-footer__right {
    display: flex;
    justify-content: flex-end;
    align-items: start;
    gap: var(--gap18);
    flex-basis: fit-content;
    flex-shrink: 0;
  }

  .row-footer-actions {
    display: flex;
    justify-content: flex-end;
    gap: var(--gap24);
  }

  .row-footer__logo img {
    width: 72px;
    height: auto;
    display: block;
  }

  .row-footer__content {
    display: flex;
    gap: 0;
    align-items: flex-start;
    width: 100%;
  }

  .row-footer__summary {
    display: flex;
    flex-direction: column;
    gap: var(--gap24);
    flex-basis: calc(100% / var(--footer-column-count));
    width: calc(100% / var(--footer-column-count));
    flex-grow: 1;
    flex-shrink: 0;
  }

  .row-footer__heading {
    margin: 0;
    font-family: var(--font-family-heading);
    font-size: clamp(2rem, 2.5vw + 1rem, 2.8rem);
    line-height: 1.2;
    font-weight: 500;
  }

  .row-footer__address {
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 0.35rem;
    font-style: normal;
    font-size: 0.75rem;
    line-height: 1.2;
  }

  .row-footer__menus {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: var(--gap48);
    flex-basis: 100%;
  }

  .row-footer__links {
    flex: 1 1 0;
  }

  .row-footer__link-columns {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    column-gap: var(--gap72);
    row-gap: 0;
  }

  .row-footer__link-list {
    margin: 0;
    padding: 0;
    list-style: none;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    column-gap: var(--gap72);
    row-gap: 0;
  }

  .row-footer__link-columns .row-footer__link-list {
    display: flex;
    flex-direction: column;
    gap: 0;
  }

  .row-footer__link-list li {
  }

  .row-footer__link-list a {
    font-size: 0.8rem;
    font-weight: 700;
    font-family: var(--font-family-heading);
    display: inline-block;
    transition: color 0.3s ease;
    color: var(--color-text-gray);
    white-space: nowrap;
  }

  .row-footer__link-list a:hover,
  .row-footer__link-list a:focus-visible {
    color: var(--color-brand-army);
  }

  .row-footer__social {
    display: flex;
    flex-direction: column;
    gap: var(--gap18);
  }

  .row-footer__cta {
    display: flex;
    flex-direction: column;
    gap: var(--gap9);
    align-items: flex-end;
  }

  .row-footer__cta .button {
    padding-inline: 1.5rem;
  }

  .row-footer__social-list {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    justify-items: center;
    column-gap: var(--gap18);
    row-gap: var(--gap12);
    padding: 0;
    margin: 0;
    list-style: none;
  }

  .row-footer__social-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #ffffff;
    transition:
      background-color 0.3s ease,
      color 0.3s ease,
      border-color 0.3s ease,
      transform 0.3s ease;
  }

  .row-footer__social-link img {
    width: var(--gap24);
    height: var(--gap24);
    display: block;
    object-fit: contain;
    flex-shrink: 0;
    transition: transform 0.3s ease;
  }

  .row-footer__social-link:hover,
  .row-footer__social-link:focus {
    color: var(--color-brand-blue);
  }

  .row-footer-actions .search-icon img {
    width: var(--gap24);
    height: var(--gap24);
  }

  .row-footer__meta {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: var(--gap18);
    padding-top: var(--gap18);
    font-size: 0.7rem;
    line-height: 1.2;
    border-top: 1px solid var(--color-brand-light-gray);
  }

  .row-footer__policies {
    display: inline-flex;
    gap: var(--gap18);
  }

  .row-footer__policies a {
    transition: color 0.3s ease;
  }

  .row-footer__policies a:hover,
  .row-footer__policies a:focus-visible {
    color: var(--color-brand-army);
  }

  .grid-showcase:not([data-grid-carousel="on"]) .grid-track {
    grid-template-columns: repeat(auto-fit, minmax(0, 1fr));
  }

  .grid-showcase[data-grid-columns="1"]:not([data-grid-carousel="on"])
    .grid-track {
    justify-content: center;
    grid-template-columns: minmax(auto, 33%);
  }

  .grid-showcase[data-grid-columns="2"]:not([data-grid-carousel="on"])
    .grid-track {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .grid-showcase[data-grid-columns="3"]:not([data-grid-carousel="on"])
    .grid-track {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .grid-showcase[data-grid-columns="4"]:not([data-grid-carousel="on"])
    .grid-track {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }

  .grid-showcase[data-grid-columns="5"]:not([data-grid-carousel="on"])
    .grid-track {
    grid-template-columns: repeat(5, minmax(0, 1fr));
  }

  .grid-showcase[data-grid-columns="6"]:not([data-grid-carousel="on"])
    .grid-track {
    grid-template-columns: repeat(6, minmax(0, 1fr));
  }

  /* .grid-showcase[data-grid-columns="1"]:not([data-grid-carousel="on"]) .grid-track .grid-card {
    max-width: 360px;
} */

  .text-summary .section-label,
  .hero-heading .section-label {
    display: inline-flex;
    gap: 0.5em;
    align-items: center;
  }

  .hero-heading .section-label {
    color: #ffffff;
  }

  body:not(.home) .text-summary .section-label:before {
    content: "";
    display: none;
  }

  .row-experience .text-summary {
    flex-basis: 80%;
    max-width: 800px;
    text-align: center;
  }

  .row-experience .text-summary .section-label {
    justify-content: center;
  }

  .row-projects .text-summary {
    flex-basis: calc(60% - var(--gap72));
    max-width: none;
  }

  .row-projects .projects-slideshow {
    flex-basis: 40%;
    position: relative;
    aspect-ratio: 1/1;
  }

  .featured-project {
    position: absolute;
    inset: 0;
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.45s ease;
  }

  .featured-project .visual {
    position: relative;
    aspect-ratio: 1/1;
    overflow: hidden;
    border-bottom-right-radius: 8vw;
  }

  .featured-project .visual::after {
    content: "";
    position: absolute;
    inset: 0;
    height: 100%;
    pointer-events: none;
    background: var(--background-visual-gradient);
    background-blend-mode: multiply;
    transition: all 0.2s linear;
  }

  .featured-project img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    object-position: center;
  }

  .featured-project.is-active {
    opacity: 1;
    pointer-events: auto;
  }

  .featured-project.is-transitioning {
    opacity: 0;
  }

  .projects-slideshow-navigation {
    font-size: 1rem;
    line-height: 1.2em;
    font-weight: 700;
    font-family: var(--font-family-heading);
    padding-bottom: var(--gap18);
  }

  .projects-slideshow-navigation li {
    display: block;
  }

  .projects-slideshow-navigation ul > li:not(:first-child) {
    border-top: 1px solid var(--color-brand-light-gray);
  }

  .projects-slideshow-navigation li a {
    transition: color 0.2s ease;
    display: block;
    padding-block: var(--gap12);
    cursor: pointer;
    color: var(--color-brand-blue);
  }

  .projects-slideshow-navigation li a.is-active {
    color: var(--color-brand-army);
  }

  .projects-slideshow-navigation li a:hover {
    color: var(--color-brand-army);
  }

  .projects-slideshow-navigation li:last-child a {
    padding-bottom: 0;
  }

  .projects-slideshow-navigation li:first-child a {
    padding-top: 0;
  }

  .sustain-news {
    width: 100%;
    font-size: 1rem;
    line-height: 1.2em;
    font-weight: 700;
    font-family: var(--font-family-heading);
  }

  .sustain-news ul {
    display: flex;
    flex-direction: column;
    width: 100%;
    gap: 2px;
    border-bottom: 2px solid transparent;
  }

  .sustain-news ul > li {
    flex-basis: 100%;
  }

  .sustain-news li {
    display: block;
    flex-basis: 50%;
  }

  .sustain-news li a {
    font-size: 1.25rem;
    line-height: 1.2em;
    transition: color 0.2s ease;
    padding: var(--gap24);
    cursor: pointer;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: var(--color-brand-blue);
    background-color: var(--color-surface);
    border-top: 2px solid var(--color-surface);
    transition: all 0.35s ease;
    display: flex;
    gap: var(--gap18);
    align-items: center;
  }

  .sustain-news li a .tab-nav {
    display: flex;
    flex-direction: column;
    gap: var(--gap6);
  }

  .sustain-news li a .desc {
    text-transform: none;
    letter-spacing: normal;
    font-size: 1rem;
    line-height: 1.3;
    font-weight: 400;
    display: block;
    transition:
      opacity 0.35s ease,
      transform 0.35s ease,
      margin-top 0.35s ease,
      visibility 0s linear 0.35s;
    will-change: opacity, transform;
    color: var(--color-text);
  }

  .sustain-news li a.is-active {
    border-top: 2px solid var(--color-brand-army);
    background-color: var(--color-white);
  }

  .sustain-news li a.is-active .heading {
    color: var(--color-brand-army);
  }

  .sustain-news li a:hover .heading {
    color: var(--color-brand-army);
  }

  /* .sustain-news li:last-child a {
    padding-bottom: 0;
} */

  /* .sustain-news li:first-child a {
    padding-top: 0;
} */

  /* .sustain-news li a .heading {
    display: flex;
    gap: var(--gap12);
    align-items: center;
} */

  .sustain-news li a.planet:before {
    flex-basis: 2em;
    flex-shrink: 0;
    content: " ";
    display: block;
    height: 2em;
    width: 2em;
    background: transparent url(../images/icons/icon-sus-planet.svg) center
      center/contain no-repeat;
  }

  .sustain-news li a.people:before {
    flex-basis: 2em;
    flex-shrink: 0;
    content: " ";
    display: block;
    height: 2em;
    width: 2em;
    background: transparent url(../images/icons/icon-sus-people.svg) center
      center/contain no-repeat;
  }

  .sustain-news li a.prosperity:before {
    flex-basis: 2em;
    flex-shrink: 0;
    content: " ";
    display: block;
    height: 2em;
    width: 2em;
    background: transparent url(../images/icons/icon-sus-prosperity.svg) center
      center/contain no-repeat;
  }

  .sustain-news li a.peace:before {
    flex-basis: 2em;
    flex-shrink: 0;
    content: " ";
    display: block;
    height: 2em;
    width: 2em;
    background: transparent url(../images/icons/icon-sus-peace.svg) center
      center/contain no-repeat;
  }

  .sustain-slideshow {
    position: relative;
    width: 100%;
    align-self: stretch;
    overflow: hidden;
    border-radius: var(--gap18);
  }

  .sustain-slideshow::before {
    content: "";
    display: block;
    padding-top: 40%;
  }

  .sustain-slideshow .sustain-project {
    position: absolute;
    inset: 0;
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.45s ease;
  }

  .sustain-slideshow .sustain-project.is-active {
    opacity: 1;
    pointer-events: auto;
  }

  .sustain-slideshow .sustain-project.is-transitioning {
    opacity: 0;
  }

  .sustain-slideshow .sustain-project .visual {
    position: relative;
    overflow: hidden;
    width: 100%;
    height: 100%;
  }

  .sustain-slideshow .sustain-project .visual img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
  }

  /*
.row-news .section-label::before {
    content: "";
    display: inline-block;
    width: 1.5em;
    height: 1.5em;
    margin-right: 0.45em;
    vertical-align: -0.28em;
    background: transparent url(../images/icons/icon-news.svg) center center / contain no-repeat;
} */

  .explore-header .section-label {
    color: var(--color-text-gray);
    font-size: 0.9rem;
  }

  /* .hero-heading:not(.nooverlay)::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 1;
    background: var(--hero-slide-gradient);
    background-blend-mode: multiply;
} */

  /* .hero-heading.more-gradient:not(.nooverlay)::before {
    background: var(--hero-slide-gradient-more);
} */

  /* .hero-heading::after {
    content: "";
    position: absolute;
    inset: 0;
    height: 140px;
    background: linear-gradient(0deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.3) 50%, rgba(0, 0, 0, 0.75) 100%);
    z-index: 1;
} */

  body.about .row-page-intro {
    padding: 0;
  }

  body.about .row-page-intro .text-layout-wrapper {
    padding-block: calc(var(--gap108));
    /* background-color: var(--color-white); */
    /* border-bottom-right-radius: 8vw; */
  }

  body.about .row-page-intro .left {
    flex-basis: 100%;
  }

  body.about .row-page-intro .right {
    flex-basis: 100%;
    max-width: 600px;
  }

  .row-page-intro .text-description {
    margin: 0;
    font-size: 0.9rem;
    line-height: 1.5;
    color: var(--color-text);
    display: flex;
    flex-direction: column;
    gap: 18px;
  }

  body.businesses .row-page-intro .text-description {
    margin: 0;
    font-size: 1.5rem;
    line-height: 1.3;
    font-weight: 500;
    color: var(--color-brand-blue);
    display: flex;
    flex-direction: column;
    gap: 18px;
  }

  .row-page-intro .text-description .button {
    align-self: flex-start;
  }

  .row-listed {
    background-color: var(--color-surface);
    background-image: url(../images/bg/bg-map.jpg);
    background-position: left center;
    background-size: auto 100%;
    background-repeat: no-repeat;
    padding-block: calc(var(--gap72));
    padding-top: var(--gap108);
    height: 60vw;
  }

  .row-listed.is-curved {
    border-top-left-radius: 8vw;
    border-bottom-right-radius: 8vw;
  }

  .floating-legend {
    position: absolute;
    left: 60%;
    top: var(--gap108);
    display: flex;
    flex-direction: column;
    gap: var(--gap24);
    z-index: 3;
  }

  .floating-legend .heading {
    font-family: var(--font-family-heading);
    font-size: 1.5rem;
    line-height: 1.2em;
    font-weight: 700;
    color: var(--color-brand-blue);
  }

  .floating-legend .stats {
    display: flex;
    flex-direction: column;
    gap: 0;
  }

  .floating-legend .stats .stat {
    border-top: 1px solid var(--color-brand-blue);
    padding: var(--gap18) 0;
  }

  .floating-legend .stats .stat:last-child {
    padding-bottom: 0;
  }

  .floating-legend .stats .stat .subheading {
    font-size: 0.9rem;
    line-height: 1.1em;
    font-weight: 700;
    display: flex;
    align-items: center;
    color: var(--color-brand-army);
    gap: 5px;
  }

  .floating-legend .stats .stat .subheading:before {
    content: " ";
    display: block;
    height: 13px;
    width: 10px;
    flex-grow: 0;
    flex-shrink: 0;
    background: transparent none center center/contain no-repeat;
  }

  .floating-legend .stats .stat .subheading.listed:before {
    background-image: url(../images/icons/icon-listed.svg);
  }

  .floating-legend .stats .stat .subheading.private:before {
    background-image: url(../images/icons/icon-private.svg);
  }

  .floating-legend .stats .stat .subheading.total:before {
    width: 17px;
    background-image: url(../images/icons/icon-private-listed.svg);
  }

  .floating-legend .stats .stat .stat-num {
    font-size: 3rem;
    line-height: 1.2em;
    color: var(--color-brand-blue);
    font-weight: 500;
  }

  .floating-legend .footnote {
    font-size: 10px;
    color: var(--color-text);
    font-family: var(--font-family-heading);
    line-height: 1.2em;
  }

  .map-bubbles {
    position: absolute;
    z-index: 2;
    inset: 0;
  }

  .map-bubbles .bubble {
    position: absolute;
  }

  .map-bubbles .bubble img {
    display: block;
    width: 100%;
    height: 100%;
  }

  .map-bubbles .bubble.kl {
    width: 12%;
    left: 19%;
    top: 43%;
  }

  .map-bubbles .bubble.sel {
    width: 9%;
    left: 18%;
    top: 61%;
  }

  .map-bubbles .bubble.puj {
    width: 9%;
    left: 26%;
    top: 57%;
  }

  .map-bubbles .bubble.n9 {
    width: 9%;
    left: 33%;
    top: 62%;
  }

  .map-bubbles .bubble.tg {
    width: 9%;
    left: 39%;
    top: 25%;
  }

  .row-leadership {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: var(--gap72);
    justify-content: center;
    gap: var(--gap48);
  }

  body:not(.home) .row-leadership .text-summary {
    flex-basis: 100%;
    max-width: 800px;
    text-align: center;
  }

  .row-leadership .text-summary .section-label {
    justify-content: center;
  }

  .grid-box {
    width: 100%;
  }

  .portfolio-tabs {
    display: flex;
    flex-direction: column;
    gap: var(--gap24);
  }

  .portfolio-tabs__nav {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: var(--gap);
  }

  .portfolio-tabs__nav:before,
  .portfolio-tabs__nav:after {
    content: "";
    display: block;
    width: 100%;
    height: 1px;
    background-color: var(--color-brand-pjh-light-green);
  }

  .portfolio-tab {
    appearance: none;
    border: 0;
    background-color: transparent;
    color: var(--color-text);
    font-family: var(--font-family-heading);
    font-size: 1.5rem;
    line-height: 1.2;
    font-weight: 700;
    letter-spacing: -0.01em;
    padding: 0 0 var(--gap6);
    position: relative;
    cursor: pointer;
    transition: color 0.2s ease;
    white-space: nowrap;
  }

  .portfolio-tab::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: -2px;
    height: 2px;
    background-color: var(--color-brand-blue);
    transform: scaleX(0);
    transform-origin: left center;
    opacity: 0;
    transition:
      transform 0.2s ease,
      opacity 0.2s ease;
  }

  .portfolio-tab:focus-visible {
    outline: 2px solid var(--color-brand-blue);
    outline-offset: 2px;
  }

  .portfolio-tab.is-active {
    color: var(--color-brand-blue);
    font-weight: 600;
  }

  .portfolio-tab.is-active::after {
    transform: scaleX(1);
    opacity: 1;
  }

  .portfolio-tab-panel {
    width: 100%;
  }

  .portfolio-tab-panel[hidden] {
    display: none;
  }

  .grid-box .grid-heading {
    font-family: var(--font-family-heading);
    font-weight: 700;
    font-size: 1.5rem;
    line-height: 1.2;
    padding-bottom: var(--gap24);
    color: var(--color-brand-emerald);
  }

  .row-leadership .grid-box .grid-heading {
    text-align: center;
  }

  .row-leadership .section-copy {
    padding-bottom: 0;
  }

  .row-leadership .grid-card__media {
    aspect-ratio: unset;
    background-color: transparent;
  }

  .row-leadership .grid-card__media .media-wrapper {
    position: relative;
  }

  .row-leadership .grid-card__media img {
    aspect-ratio: 1 / 1;
    object-position: center top;
    height: auto;
    background-color: var(--color-surface);
  }

  .row-leadership
    .leaders-team-showcase:not([data-grid-carousel="on"])
    .grid-track {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
  }

  .row-leadership
    .leaders-team-showcase[data-grid-columns="5"]:not([data-grid-carousel="on"])
    .grid-card {
    flex: 0 1
      calc(
        (
            100% - var(--grid-carousel-gap) - var(--grid-carousel-gap) -
              var(--grid-carousel-gap) - var(--grid-carousel-gap)
          ) /
          5
      );
    max-width: calc(
      (
          100% - var(--grid-carousel-gap) - var(--grid-carousel-gap) -
            var(--grid-carousel-gap) - var(--grid-carousel-gap)
        ) /
        5
    );
  }

  .row-leadership
    .leaders-team-showcase[data-grid-columns="3"]:not([data-grid-carousel="on"])
    .grid-card {
    flex: 0 1
      calc((100% - var(--grid-carousel-gap) - var(--grid-carousel-gap)) / 3);
    max-width: calc(
      (100% - var(--grid-carousel-gap) - var(--grid-carousel-gap)) / 3
    );
  }

  .grid-showcase.property-grid .grid-card__media img {
    aspect-ratio: 16 / 9;
    object-position: center top;
    height: auto;
    background-color: var(--color-brand-light-gray);
    border-bottom-right-radius: 0;
  }

  .grid-showcase.property-grid .grid-card {
    background-color: var(--color-white);
    border-bottom-right-radius: 3vw;
    border: 1px solid var(--color-brand-light-gray);
  }

  /* overflow-x: clip hides off-screen carousel cards and keeps the layout box contained.
     overflow-y: visible lets card box-shadows show above/below without being clipped.
     Per CSS spec, "clip" is excluded from the "convert visible to auto" rule, so
     overflow-y stays visible. */
  .grid-showcase.property-grid[data-grid-carousel="on"] .grid-viewport,
  .grid-showcase.property-grid[data-grid-carousel="mobile"] .grid-viewport {
    overflow-x: clip;
    overflow-y: visible;
  }

  .grid-showcase.property-grid .grid-card .property-details {
    padding: var(--gap24);
    display: flex;
    flex-direction: column;
    gap: var(--gap18);
  }

  .grid-showcase.property-grid .grid-card .status-tag {
    position: absolute;
    right: 0;
    top: 0;
  }

  .grid-showcase.property-grid .grid-card .property-details .property-meta {
    padding: var(--gap18) 0;
    border-top: 1px solid var(--color-brand-light-gray);
    border-bottom: 1px solid var(--color-brand-light-gray);
    display: flex;
    flex-direction: column;
    gap: var(--gap12);
  }

  .grid-showcase.property-grid
    .grid-card
    .property-details
    .property-meta
    .card-meta-rows {
    display: flex;
    gap: var(--gap18);
    align-items: flex-start;
  }

  .grid-showcase.property-grid
    .grid-card
    .property-details
    .property-meta
    .card-meta-rows
    .card-meta-row {
    flex-basis: 100%;
  }

  .grid-showcase.property-grid
    .grid-card
    .property-details
    .property-meta
    .card-meta-label {
    font-size: 0.9rem;
    line-height: 1.3;
    font-family: var(--font-family-heading);
    font-weight: bold;
  }

  .grid-showcase.property-grid
    .grid-card
    .property-details
    .property-meta
    .card-meta-value {
    font-size: 0.9rem;
    line-height: 1.6;
    font-family: var(--font-family-heading);
    color: var(--color-text);
  }

  .grid-showcase.property-grid .grid-card__title {
    position: static;
    inset: auto;
    width: 100%;
    z-index: auto;
    color: var(--color-text);
    padding: 0;
    max-width: none;
    font-size: 1.25rem;
    line-height: 1.2;
  }

  .grid-showcase.property-grid .grid-card__title .card-title {
    color: var(--color-brand-blue);
  }

  .grid-showcase.property-grid .grid-card__title .card-subtitle {
    color: var(--color-text-gray);
    margin-top: var(--gap6);
    font-size: 0.95rem;
    line-height: 1.4;
  }

  .grid-showcase.property-grid
    .grid-card__title
    .card-subtitle.card-description {
    color: #000;
  }

  .grid-showcase.property-grid
    .grid-card.property-card--home-compact
    .property-details {
    gap: var(--gap12);
  }

  .grid-showcase.property-grid .grid-card.property-card--home-compact {
    position: relative;
    transition:
      transform 0.22s ease,
      box-shadow 0.22s ease;
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.06);
    will-change: transform, box-shadow;
  }

  .grid-showcase.property-grid
    .grid-card.property-card--home-compact
    .property-card__full-link {
    position: absolute;
    inset: 0;
    z-index: 2;
    border-radius: inherit;
    color: inherit;
    text-decoration: none;
  }

  .grid-showcase.property-grid
    .grid-card.property-card--home-compact
    .property-card__full-link:focus-visible {
    outline: 2px solid var(--color-home-primary, #17594f);
    outline-offset: 2px;
  }

  .grid-showcase.property-grid
    .grid-card.property-card--home-compact
    .property-card__cta-wrap,
  .grid-showcase.property-grid
    .grid-card.property-card--home-compact
    .property-card__title-link {
    position: relative;
    z-index: 3;
    font-family: var(--font-family-heading);
    font-size: 1rem;
    font-weight: 700;
    line-height: 1.3;
  }

  .grid-showcase.property-grid
    .grid-card.property-card--home-compact
    .property-card__link-wrap {
    display: block;
    height: 100%;
    color: inherit;
    text-decoration: none;
  }

  .grid-showcase.property-grid
    .grid-card.property-card--home-compact
    .property-card__link-wrap:focus-visible {
    outline: 2px solid var(--color-home-primary, #17594f);
    outline-offset: 2px;
  }

  .grid-showcase.property-grid .grid-card.property-card--home-compact:hover,
  .grid-showcase.property-grid
    .grid-card.property-card--home-compact:focus-within {
    transform: translateY(-6px);
    box-shadow: 0 16px 32px rgba(0, 0, 0, 0.12);
  }

  .grid-showcase.property-grid
    .grid-card.property-card--home-compact
    .grid-card__title {
    display: block;
  }

  .grid-showcase.property-grid
    .grid-card.property-card--home-compact
    .grid-card__title
    .property-card__title-row {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: var(--gap12);
  }

  .grid-showcase.property-grid
    .grid-card.property-card--meta-hidden
    .grid-card__title
    .property-card__title-row {
    align-items: center;
  }

  .grid-showcase.property-grid
    .grid-card.property-card--meta-hidden
    .property-details {
    align-items: stretch !important;
  }

  .grid-showcase.property-grid
    .grid-card.property-card--meta-hidden
    .property-card__section:first-child {
    align-items: center !important;
    width: 100%;
  }

  .grid-showcase.property-grid
    .grid-card.property-card--meta-hidden
    .property-card__section:first-child {
    justify-content: space-between !important;
  }

  .grid-showcase.property-grid
    .grid-card.property-card--meta-hidden
    .grid-card__title {
    text-align: left;
  }

  .grid-showcase.property-grid
    .grid-card.property-card--home-compact
    .grid-card__title
    .card-title {
    color: #008578;
    flex: 1 1 auto;
    font-family: var(--font-family-heading);
    font-size: 1rem;
    font-weight: 700;
    line-height: 1.3;
  }

  .grid-showcase.property-grid
    .grid-card.property-card--home-compact
    .property-card__title-arrow {
    width: 2rem;
    height: 2rem;
    min-width: 2rem;
    border-radius: 999px;
    border: 1px solid var(--color-home-primary, #17594f);
    color: var(--color-home-primary, #17594f);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    transition:
      background-color 0.2s ease,
      border-color 0.2s ease,
      color 0.2s ease,
      transform 0.2s ease;
  }

  .grid-showcase.property-grid
    .grid-card.property-card--home-compact
    .property-card__title-arrow
    i {
    font-size: 0.75rem;
    line-height: 1;
    transition: transform 0.2s ease;
  }

  .grid-showcase.property-grid
    .grid-card.property-card--home-compact
    .property-card__title-arrow:hover,
  .grid-showcase.property-grid
    .grid-card.property-card--home-compact
    .property-card__title-arrow:focus-visible {
    background-color: #008578;
    border-color: #008578;
    color: #ffffff;
    transform: translateX(1px);
  }

  .grid-showcase.property-grid
    .grid-card.property-card--home-compact
    .property-card__title-arrow:hover
    i,
  .grid-showcase.property-grid
    .grid-card.property-card--home-compact
    .property-card__title-arrow:focus-visible
    i {
    transform: translateX(2px);
  }

  .grid-showcase.property-grid
    .grid-card.property-card--home-compact
    .property-card__link-wrap:hover
    .property-card__title-arrow,
  .grid-showcase.property-grid
    .grid-card.property-card--home-compact
    .property-card__link-wrap:focus-visible
    .property-card__title-arrow {
    background-color: #008578;
    border-color: #008578;
    color: #ffffff;
    transform: translateX(1px);
  }

  .grid-showcase.property-grid
    .grid-card.property-card--home-compact
    .property-card__link-wrap:hover
    .property-card__title-arrow
    i,
  .grid-showcase.property-grid
    .grid-card.property-card--home-compact
    .property-card__link-wrap:focus-visible
    .property-card__title-arrow
    i {
    transform: translateX(2px);
  }

  .home-highlights__body
    .grid-showcase.property-grid
    .grid-card
    .card-subtitle {
    display: none;
  }

  .grid-showcase.property-grid
    .grid-card.property-card--sector-modern
    .property-card__hover-cta {
    display: inline-flex;
    align-items: center;
    align-self: flex-start;
    max-height: 0;
    margin-top: 0;
    overflow: hidden;
    color: #008578;
    font-family: var(--font-family-heading);
    font-size: 0.95rem;
    font-weight: 700;
    line-height: 1.35;
    opacity: 0;
    transform: translateY(4px);
    transition:
      max-height 0.22s ease,
      margin-top 0.22s ease,
      opacity 0.2s ease,
      transform 0.2s ease;
  }

  .grid-showcase.property-grid
    .grid-card.property-card--sector-modern:hover
    .property-card__hover-cta,
  .grid-showcase.property-grid
    .grid-card.property-card--sector-modern:focus-within
    .property-card__hover-cta {
    max-height: 2rem;
    margin-top: var(--gap6);
    opacity: 1;
    transform: translateY(0);
  }

  .property-tabs--detail
    .grid-showcase.property-grid
    .grid-card.property-card--home-compact
    .property-details {
    gap: var(--gap12);
  }

  .property-grid .grid-card__media::after {
    content: none;
  }

  .portfolio-tabs.property-tabs {
    gap: var(--gap18);
  }

  .portfolio-tabs.property-tabs .portfolio-tab:hover,
  .portfolio-tabs.property-tabs .portfolio-tab:focus-visible {
    color: #008578;
  }

  .portfolio-tabs.property-tabs .portfolio-tab.is-active {
    color: #008578;
  }

  .portfolio-tabs.property-tabs .portfolio-tab.is-active::after {
    background-color: #008578;
  }

  .portfolio-tabs--portfolio-grid {
    gap: var(--gap24);
  }

  .portfolio-tabs--portfolio-grid.portfolio-tabs.property-tabs
    .portfolio-tab--static.is-active {
    color: #008578;
  }

  .portfolio-tabs--portfolio-grid .portfolio-tab--static.is-active::after {
    background-color: #008578;
    transform: scaleX(1);
    opacity: 1;
  }

  .portfolio-tabs__nav--single-category {
    justify-content: flex-end;
  }

  .portfolio-tab--static {
    cursor: default;
    pointer-events: none;
  }

  .about-who-section {
    background-color: #e8f4da;
  }

  .about-who-label-tabs {
    width: 100%;
  }

  .about-who-label-block {
    width: 100%;
  }

  .about-who-label-tabs .portfolio-tabs__nav {
    width: 100%;
  }

  .about-who-label-tabs .portfolio-tabs__nav::before,
  .about-who-label-tabs .portfolio-tabs__nav::after {
    flex: 1 1 auto;
    width: auto;
    min-width: 0;
  }

  .about-who-label-tabs .portfolio-tab {
    flex: 0 0 auto;
  }

  .about-who-body {
    text-align: center;
    margin-inline: auto;
  }

  .portfolio-tab-panel--portfolio-grid {
    display: flex;
    flex-direction: column;
    gap: var(--gap18);
  }

  /* Flex row: [prev-arrow] [showcase] [next-arrow] — naturally symmetric */
  .portfolio-item-grid__showcase-wrapper {
    display: flex;
    align-items: center;
    gap: 16px;
    width: 100%;
  }

  .portfolio-item-grid__showcase-wrapper .portfolio-item-grid__showcase {
    flex: 1 1 0;
    min-width: 0;
    /* Override the asymmetric bleed margin/padding from the base .grid-showcase rule */
    margin-right: 0 !important;
    padding-right: 0 !important;
  }

  .portfolio-item-grid__nav-arrow {
    flex-shrink: 0;
    background-color: #ffffff;
  }

  .portfolio-item-grid__nav-placeholder {
    display: block;
    flex-shrink: 0;
    width: 44px;
    height: 44px;
  }

  /* No extra padding needed on the wrapper itself */
  .portfolio-tab-panel--portfolio-grid .grid-showcase-wrapper {
    padding-inline: 0;
  }

  .portfolio-item-grid__description {
    text-align: center;
    color: var(--color-text-gray);
    margin-inline: auto;
  }

  .portfolio-tab-panel--portfolio-grid
    .portfolio-item-grid__showcase
    .grid-track {
    gap: var(--gap18);
  }

  .portfolio-item-grid--center-few
    .portfolio-item-grid__showcase[data-grid-carousel="on"]
    .grid-track {
    justify-content: center;
  }

  /* Paginated portfolio grid: .grid-card { display:flex } beats the UA [hidden] rule — force non-current pages out of the grid (strict 3×3 per page). */
  .grid-showcase.portfolio-item-grid__showcase.property-grid
    .grid-card[hidden] {
    display: none !important;
  }

  /* Portfolio sector grid: mobile list + load more (JS adds .is-mobile-list on [data-portfolio-tabs-root]) */
  .portfolio-item-grid[data-portfolio-mobile-list="1"].is-mobile-list
    .portfolio-item-card--mobile-clamped {
    display: none !important;
  }

  .home-highlights__body
    .portfolio-item-grid__showcase[data-grid-carousel="on"]
    .grid-controls {
    flex-direction: row;
    flex-wrap: nowrap;
    align-items: center;
    justify-content: center;
    width: 100%;
    column-gap: var(--gap18);
    row-gap: 0;
  }

  .home-highlights__body
    .portfolio-item-grid__showcase[data-grid-carousel="on"]
    .grid-progress {
    display: none;
  }

  .home-highlights__body
    .portfolio-item-grid__showcase[data-grid-carousel="on"]
    .slider-arrow--prev {
    order: 1;
    flex-shrink: 0;
  }

  .home-highlights__body
    .portfolio-item-grid__showcase[data-grid-carousel="on"]
    .home-highlights__dots {
    order: 2;
    flex: 0 0 auto;
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    justify-content: center;
    gap: var(--gap9);
    width: auto;
    min-width: 0;
    padding-top: 0;
  }

  .home-highlights__body
    .portfolio-item-grid__showcase[data-grid-carousel="on"]
    .slider-arrow--next {
    order: 3;
    flex-shrink: 0;
  }

  .home-highlights__body
    .portfolio-item-grid__showcase[data-grid-carousel="on"]
    .home-highlights__dot {
    width: 10px;
    height: 10px;
    padding: 0;
    border: 0;
    border-radius: 50%;
    background-color: rgba(0, 133, 120, 0.28);
    cursor: pointer;
    transition:
      background-color 0.2s ease,
      transform 0.2s ease;
  }

  .home-highlights__body
    .portfolio-item-grid__showcase[data-grid-carousel="on"]
    .home-highlights__dot:hover,
  .home-highlights__body
    .portfolio-item-grid__showcase[data-grid-carousel="on"]
    .home-highlights__dot:focus-visible {
    background-color: rgba(0, 133, 120, 0.45);
  }

  .home-highlights__body
    .portfolio-item-grid__showcase[data-grid-carousel="on"]
    .home-highlights__dot.is-active {
    background-color: #008578;
    transform: scale(1.15);
  }

  .property-archive-hero .hero-heading {
    min-height: clamp(360px, 58vh, 520px);
    max-height: unset;
  }

  .property-archive-listing .section-heading {
    color: var(--color-text);
  }

  .property-market-filters {
    display: flex;
    flex-wrap: wrap;
    gap: var(--gap12);
    justify-content: center;
  }

  .property-market-filter {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0.55em 1.4em;
    border-radius: 999px;
    border: 1px solid var(--color-home-primary);
    color: var(--color-home-primary);
    text-decoration: none;
    font-family: var(--font-family-heading);
    font-size: 0.82rem;
    font-weight: 700;
    line-height: 1.1;
    transition:
      background-color 0.2s ease,
      color 0.2s ease,
      border-color 0.2s ease;
  }

  .property-market-filter:hover,
  .property-market-filter:focus {
    background-color: var(--color-home-hover);
    border-color: var(--color-home-hover);
    color: #ffffff;
  }

  .property-market-filter.is-active {
    background-color: var(--color-home-primary);
    color: #ffffff;
  }

  .portfolio-tabs.property-tabs--archive {
    gap: var(--gap24);
  }

  .property-detail-hero {
    position: relative;
    min-height: clamp(520px, 84vh, 860px);
    display: flex;
    align-items: flex-end;
    overflow: hidden;
    border-bottom-right-radius: 0;
    background-color: #0f1419;
    isolation: isolate;
  }

  .property-detail-hero--custom {
    min-height: clamp(620px, 86vh, 920px);
    display: grid;
    place-items: center;
    border-radius: 0;
    background: #fff;
    color: #9b5949;
    font-family: "Museo Sans", "Inter", Verdana, sans-serif;
  }

  .property-detail-hero__custom-background {
    position: absolute;
    inset: 0;
    z-index: -1;
    width: 100%;
    height: 100%;
    object-fit: cover;
  }

  .property-detail-hero__custom-background--color {
    background: var(--property-hero-background-color, #e8d39a);
  }

  .property-detail-hero__custom-overlay {
    position: absolute;
    inset: 0;
    z-index: 0;
    background: var(--property-hero-overlay-color, #000000);
    opacity: var(--property-hero-overlay-opacity, 0);
    pointer-events: none;
  }

  .property-detail-hero__custom-content {
    position: relative;
    z-index: 1;
    width: min(100%, 960px);
    padding: 72px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 48px;
    text-align: center;
  }

  .property-detail-hero__custom-top-image,
  .property-detail-hero__custom-bottom-image {
    display: block;
    width: auto;
    max-width: min(100%, 360px);
    object-fit: contain;
  }

  .property-detail-hero__custom-top-image {
    max-height: 150px;
  }

  .property-detail-hero__custom-bottom-image {
    max-height: 110px;
  }

  .property-detail-hero__custom-copy {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 24px;
  }

  .property-detail-hero__custom-label,
  .property-detail-hero__custom-heading {
    margin: 0;
    color: inherit;
    font-family: "Museo Sans", "Inter", Verdana, sans-serif;
  }

  .property-detail-hero__custom-label {
    color: var(--property-hero-label-color, #9b5949);
    font-size: clamp(1rem, 1.2vw, 1.3rem);
    font-weight: 800;
    line-height: 1.2;
  }

  .property-detail-hero__custom-heading {
    color: var(--property-hero-heading-color, #9b5949);
    max-width: 820px;
    font-size: 3rem;
    font-weight: 700;
    line-height: 1.15;
  }

  .property-detail-hero__custom-ctas {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    gap: 12px;
  }

  .property-detail-hero__custom-cta {
    width: 46px;
    min-height: 46px;
    padding: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    border: 1px solid #078a78;
    border-radius: 999px;
    background: #078a78;
    color: #fff;
    font-size: 0.95rem;
    font-weight: 700;
    line-height: 1.2;
    text-decoration: none;
    cursor: pointer;
    transition: background-color 0.3s ease, color 0.3s ease;
  }

  .property-detail-hero__custom-cta::after {
    content: "";
    width: 7px;
    height: 7px;
    border-right: 1px solid currentColor;
    border-bottom: 1px solid currentColor;
    transform: translateY(-2px) rotate(45deg);
  }

  .property-detail-hero__custom-cta:hover,
  .property-detail-hero__custom-cta:focus-visible {
    background: transparent;
    color: #078a78;
  }

  .property-detail-hero__custom-cta:focus-visible {
    outline: 2px solid #078a78;
    outline-offset: 4px;
  }

  .property-detail-hero--custom.is-animation-pending .property-detail-hero__custom-background,
  .property-detail-hero--custom.is-animation-pending .property-detail-hero__custom-overlay,
  .property-detail-hero--custom.is-animation-pending .property-detail-hero__custom-top-image,
  .property-detail-hero--custom.is-animation-pending .property-detail-hero__custom-label,
  .property-detail-hero--custom.is-animation-pending .property-detail-hero__custom-heading,
  .property-detail-hero--custom.is-animation-pending .property-detail-hero__custom-bottom-image,
  .property-detail-hero--custom.is-animation-pending .property-detail-hero__custom-cta {
    opacity: 0;
  }

  /* Opacity and stagger timing are owned by initPropertyDynamicHero(). */
  .property-detail-hero--custom.is-animation-ready .property-detail-hero__custom-background,
  .property-detail-hero--custom.is-animation-ready .property-detail-hero__custom-overlay,
  .property-detail-hero--custom.is-animation-ready .property-detail-hero__custom-top-image,
  .property-detail-hero--custom.is-animation-ready .property-detail-hero__custom-label,
  .property-detail-hero--custom.is-animation-ready .property-detail-hero__custom-heading,
  .property-detail-hero--custom.is-animation-ready .property-detail-hero__custom-bottom-image,
  .property-detail-hero--custom.is-animation-ready .property-detail-hero__custom-cta {
    opacity: 0;
  }

  .property-detail-hero--custom.is-animation-ready.is-visible .property-detail-hero__custom-background,
  .property-detail-hero--custom.is-animation-ready.is-visible .property-detail-hero__custom-top-image,
  .property-detail-hero--custom.is-animation-ready.is-visible .property-detail-hero__custom-label,
  .property-detail-hero--custom.is-animation-ready.is-visible .property-detail-hero__custom-heading,
  .property-detail-hero--custom.is-animation-ready.is-visible .property-detail-hero__custom-bottom-image,
  .property-detail-hero--custom.is-animation-ready.is-visible .property-detail-hero__custom-cta {
    opacity: 1;
  }

  .property-detail-hero--custom.is-animation-ready.is-visible .property-detail-hero__custom-overlay {
    opacity: var(--property-hero-overlay-opacity, 0);
  }

  .property-detail-hero--image-only {
    min-height: clamp(520px, 84vh, 860px);
    display: block;
    border-radius: 0;
    background: #deded9;
  }

  .property-detail-hero--image-only > img {
    display: block;
    width: 100%;
    height: 100%;
    min-height: inherit;
    object-fit: cover;
  }

  .property-detail-hero--html {
    min-height: 0;
    display: block;
    border-radius: 0;
    background: #fff;
    overflow: visible;
  }

  .property-detail-hero__html-content {
    width: 100%;
  }

  .property-detail-section-one {
    position: relative;
    min-height: 100vh;
    min-height: 100svh;
    display: flex;
    align-items: stretch;
    overflow: hidden;
    background: #e8e8e3;
    font-family: "Museo Sans", "Inter", Verdana, sans-serif;
    isolation: isolate;
  }

  .property-detail-section-one__background {
    position: absolute;
    inset: 0;
    z-index: -1;
    width: 100%;
    height: 100%;
    object-fit: cover;
  }

  .property-detail-section-one__panel {
    width: 40%;
    min-height: inherit;
    margin-left: auto;
    display: flex;
    align-items: center;
    padding: clamp(3rem, 8vh, 7rem) clamp(2rem, 6vw, 7rem);
    background: rgba(255, 255, 255, 0.9);
    backdrop-filter: blur(2px);
  }

  .property-detail-section-one--overlay-left .property-detail-section-one__panel {
    margin-left: 0;
    margin-right: auto;
  }

  .property-detail-section-one__content {
    width: 100%;
    max-width: 36rem;
    margin-inline: auto;
  }

  .property-detail-section-one__label {
    display: none;
    margin: 0 0 clamp(0.75rem, 1.4vw, 1.25rem);
    color: var(--color-brand-pjh-dark-green);
    font-size: clamp(1.2rem, 1.35vw, 1.5rem);
    font-weight: 800;
    line-height: 1.2;
    letter-spacing: 0.04em;
    text-transform: uppercase;
  }

  .property-detail-section-one__label,
  .property-detail-section-one__heading {
    font-family: var(--font-family-heading);
  }

  .property-detail-section-one__description,
  .property-detail-section-one__description * {
    font-family: var(--font-family-body);
  }

  .property-detail-section-one__heading {
    margin: 0;
    color: var(--color-home-primary, #174786);
    font-size: 2.5rem;
    font-weight: 700;
    line-height: 1.2;
  }

  .property-detail-section-one__description {
    margin-top: clamp(1.25rem, 2vw, 2rem);
    color: #222;
    font-size: 1rem;
    line-height: 1.6;
  }

  .property-detail-section-one__description > :first-child {
    margin-top: 0;
  }

  .property-detail-section-one__description > :last-child {
    margin-bottom: 0;
  }

  .property-detail-section-one--no-image .property-detail-section-one__panel {
    width: 100%;
    max-width: none;
  }

  .property-detail-section-one.is-animation-ready .property-detail-section-one__background,
  .property-detail-section-one.is-animation-ready .property-detail-section-one__panel,
  .property-detail-section-one.is-animation-ready .property-detail-section-one__label,
  .property-detail-section-one.is-animation-ready .property-detail-section-one__heading,
  .property-detail-section-one.is-animation-ready .property-detail-section-one__description {
    opacity: 0;
    will-change: opacity, transform;
  }

  .property-detail-section-one.is-animation-ready .property-detail-section-one__background {
    transition: opacity 1.3s ease;
  }

  .property-detail-section-one.is-animation-ready .property-detail-section-one__panel {
    transition: opacity 1.1s ease 0.16s;
  }

  .property-detail-section-one.is-animation-ready .property-detail-section-one__label,
  .property-detail-section-one.is-animation-ready .property-detail-section-one__heading,
  .property-detail-section-one.is-animation-ready .property-detail-section-one__description {
    transform: translateX(36px);
    transition:
      opacity 0.95s ease,
      transform 1.05s cubic-bezier(0.22, 1, 0.36, 1);
  }

  .property-detail-section-one--overlay-left.is-animation-ready .property-detail-section-one__label,
  .property-detail-section-one--overlay-left.is-animation-ready .property-detail-section-one__heading,
  .property-detail-section-one--overlay-left.is-animation-ready .property-detail-section-one__description {
    transform: translateX(-36px);
  }

  .property-detail-section-one.is-animation-ready .property-detail-section-one__label {
    transition-delay: 0.42s;
  }

  .property-detail-section-one.is-animation-ready .property-detail-section-one__heading {
    transition-delay: 0.62s;
  }

  .property-detail-section-one.is-animation-ready .property-detail-section-one__description {
    transition-delay: 0.82s;
  }

  .property-detail-section-one.is-animation-ready.is-in-view.is-background-ready .property-detail-section-one__background,
  .property-detail-section-one.is-animation-ready.is-in-view .property-detail-section-one__panel,
  .property-detail-section-one.is-animation-ready.is-in-view .property-detail-section-one__label,
  .property-detail-section-one.is-animation-ready.is-in-view .property-detail-section-one__heading,
  .property-detail-section-one.is-animation-ready.is-in-view .property-detail-section-one__description {
    opacity: 1;
  }

  .property-detail-section-one.is-animation-ready.is-in-view .property-detail-section-one__label,
  .property-detail-section-one.is-animation-ready.is-in-view .property-detail-section-one__heading,
  .property-detail-section-one.is-animation-ready.is-in-view .property-detail-section-one__description,
  .property-detail-section-one--overlay-left.is-animation-ready.is-in-view .property-detail-section-one__label,
  .property-detail-section-one--overlay-left.is-animation-ready.is-in-view .property-detail-section-one__heading,
  .property-detail-section-one--overlay-left.is-animation-ready.is-in-view .property-detail-section-one__description {
    transform: translateX(0);
  }

  .property-detail-section-two {
    background: #e8f4da;
    color: var(--color-brand-pjh-dark-green);
    font-family: "Museo Sans", "Inter", Verdana, sans-serif;
    overflow: hidden;
  }

  .property-detail-section-two__inner {
    width: 100%;
    margin-inline: auto;
    padding-block: var(--gap72);
    display: flex;
    flex-direction: column;
    gap: 0;
  }

  .hero-stats.home-stats.property-detail-section-two__metrics {
    width: 100%;
    padding-inline: var(--gap72);
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 0;
    text-align: center;
  }

  .hero-stats.home-stats.property-detail-section-two__metrics.col1 {
    grid-template-columns: minmax(0, 1fr);
  }

  .hero-stats.home-stats.property-detail-section-two__metrics.col2 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .hero-stats.home-stats.property-detail-section-two__metrics.col3 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .hero-stats.home-stats.property-detail-section-two__metrics .property-detail-section-two__metric.stat {
    flex-basis: auto;
    width: auto;
    min-width: 0;
    padding: 0 clamp(1rem, 2vw, 2rem);
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
  }

  .property-detail-section-two__metrics > .stat:not(:first-child) {
    border-left: 1px solid #159c83;
  }

  .hero-stats.home-stats.property-detail-section-two__metrics > .stat:not(:first-child)::before {
    display: none;
  }

  .hero-stats.home-stats.property-detail-section-two__metrics .stat .property-detail-section-two__metric-value.number.text {
    min-width: 0;
    color: #078a78;
    font-family: "Museo Sans", "Inter", Verdana, sans-serif;
    font-size: clamp(1.6rem, 2vw, 2.3rem);
    font-weight: 700;
    line-height: 1.05;
    letter-spacing: -0.025em;
    white-space: normal;
  }

  .property-detail-section-two__metric-prefix,
  .property-detail-section-two__metric-suffix {
    font-size: 0.72em;
    letter-spacing: 0;
  }

  .hero-stats.home-stats.property-detail-section-two__metrics .stat .property-detail-section-two__metric-description.label {
    color: #7b7b7d;
    font-family: "Museo Sans", "Inter", Verdana, sans-serif;
    font-size: clamp(1rem, 1.15vw, 1.25rem);
    font-weight: 700;
    line-height: 1.25;
    white-space: normal;
  }

  .property-detail-section-two__ctas {
    width: 100%;
    padding-inline: var(--gap72);
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 12px;
  }

  .property-detail-section-two__metrics + .property-detail-section-two__ctas {
    margin-top: 24px;
  }

  .property-detail-section-two__cta {
    min-height: 44px;
    min-width: min(100%, 190px);
    padding: 0.75rem 1.75rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid #078a78;
    border-radius: 999px;
    font-family: "Museo Sans", "Inter", Verdana, sans-serif;
    font-size: 0.95rem;
    font-weight: 700;
    line-height: 1.2;
    text-align: center;
    text-decoration: none;
    cursor: pointer;
    transition: background-color 0.2s ease, color 0.2s ease;
  }

  .property-detail-section-two__cta--filled {
    background: #078a78;
    color: #fff;
  }

  .property-detail-section-two__cta--outline {
    background: transparent;
    color: #078a78;
  }

  .property-detail-section-two__cta--filled:hover,
  .property-detail-section-two__cta--filled:focus-visible {
    background: var(--color-brand-pjh-dark-green);
    color: #fff;
  }

  .property-detail-section-two__cta--outline:hover,
  .property-detail-section-two__cta--outline:focus-visible {
    background: #078a78;
    color: #fff;
  }

  .property-detail-section-two__features {
    display: flex;
    flex-direction: column;
    gap: 24px;
  }

  .property-detail-section-two__ctas + .property-detail-section-two__features,
  .property-detail-section-two__metrics + .property-detail-section-two__features {
    margin-top: 48px;
  }

  .property-detail-section-two__features-header {
    width: 100%;
    padding-inline: var(--gap72);
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
  }

  .property-detail-section-two__features-heading {
    margin: 0;
    color: var(--color-brand-pjh-dark-green);
    font-family: "Museo Sans", "Inter", Verdana, sans-serif;
    font-size: clamp(1.1rem, 1.3vw, 1.4rem);
    font-weight: 900;
    line-height: 1.2;
    text-transform: uppercase;
  }

  .property-detail-section-two__features-controls {
    display: flex;
    align-items: center;
    gap: 12px;
  }

  .property-detail-section-two__features-controls .slider-arrow {
    width: 36px;
    height: 36px;
    flex: 0 0 36px;
  }

  .grid-showcase.property-detail-section-two__feature-carousel {
    --grid-carousel-gap: 24px;
    width: 100%;
    margin: 0;
    padding: 0;
    gap: 0;
  }

  .property-detail-section-two__feature-card.grid-card {
    min-height: clamp(190px, 16vw, 245px);
    padding: clamp(1.5rem, 2.5vw, 2.25rem);
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-start;
    gap: clamp(1.25rem, 2vw, 2rem);
    border-radius: 18px;
    background: linear-gradient(143.18deg, #17594f 12.57%, #10b49c 85.07%);
    color: #fff;
  }

  .property-detail-section-two__feature-icon {
    width: var(--gap48);
    height: var(--gap48);
    object-fit: contain;
  }

  .property-detail-section-two__feature-text {
    margin: 0;
    color: #fff;
    font-family: "Museo Sans", "Inter", Verdana, sans-serif;
    font-size: clamp(1rem, 1.1vw, 1.2rem);
    font-weight: 700;
    line-height: 1.3;
  }

  .property-detail-section-three {
    position: relative;
    padding-top: 48px;
    padding-bottom: 72px !important;
    box-sizing: border-box;
    background: #fff;
    font-family: "Museo Sans", "Inter", Verdana, sans-serif;
    overflow: visible;
  }

  .property-detail-custom-content {
    background: #e8f4da;
  }

  .property-detail-custom-content__header {
    width: min(100%, 960px);
    margin: 0 auto 32px;
    padding-inline: clamp(24px, 5vw, 72px);
    box-sizing: border-box;
    text-align: center;
  }

  .property-detail-custom-content__heading.property-detail-section-three__heading {
    margin-bottom: 14px;
    padding-inline: 0;
  }

  .property-detail-custom-content__heading:last-child {
    margin-bottom: 0;
  }

  .property-detail-custom-content__intro {
    max-width: 780px;
    margin: 0 auto;
    color: #1d342f;
    font-family: "Museo Sans", "Inter", Verdana, sans-serif;
    font-size: clamp(1rem, 1.2vw, 1.25rem);
    line-height: 1.6;
  }

  .property-detail-custom-content__intro > :first-child {
    margin-top: 0;
  }

  .property-detail-custom-content__intro > :last-child {
    margin-bottom: 0;
  }

  .property-detail-section-three__heading {
    margin: 0 0 24px;
    color: #078a78;
    font-family: "Museo Sans", "Inter", Verdana, sans-serif;
    font-size: 2.5rem;
    font-weight: 700;
    line-height: 1.2;
    text-align: center;
  }

  .property-detail-section-three__viewport {
    position: relative;
    width: 100%;
    overflow: hidden;
  }

  .property-detail-section-three__track {
    width: 100%;
    display: flex;
    align-items: flex-start;
    transform: translateX(0);
    transition: transform 0.72s cubic-bezier(0.65, 0, 0.35, 1);
    will-change: transform;
  }

  .property-detail-section-three__row {
    position: relative;
    width: 100%;
    flex: 0 0 100%;
    display: flex;
    gap: 1px;
    pointer-events: none;
  }

  .property-detail-section-three__row.is-active {
    pointer-events: auto;
  }

  .property-detail-section-three .property-detail-section-three__card.project-card,
  .property-detail-section-three .property-detail-section-three__card.project-card:hover,
  .property-detail-section-three .property-detail-section-three__card.project-card:focus-within,
  .property-detail-section-three .property-detail-section-three__card.project-card.is-info-open {
    flex: 1 1 0;
    min-height: clamp(340px, 31vw, 520px);
    border: 0;
    border-radius: 0;
    background: #1d342f;
    cursor: pointer;
  }

  .property-detail-section-three.is-entrance-ready:not(.is-in-view)
    .property-detail-section-three__row:first-child
    .property-detail-section-three__card {
    opacity: 0;
    transform: translateX(-72px);
  }

  .property-detail-section-three.is-entrance-ready.is-in-view
    .property-detail-section-three__row:first-child
    .property-detail-section-three__card {
    opacity: 1;
    transform: translateX(0);
    transition:
      opacity 0.95s ease,
      transform 1.05s cubic-bezier(0.22, 1, 0.36, 1);
  }

  .property-detail-section-three.is-entrance-ready.is-in-view
    .property-detail-section-three__row:first-child
    .property-detail-section-three__card:nth-child(1) {
    transition-delay: 0.1s;
  }

  .property-detail-section-three.is-entrance-ready.is-in-view
    .property-detail-section-three__row:first-child
    .property-detail-section-three__card:nth-child(2) {
    transition-delay: 0.32s;
  }

  .property-detail-section-three.is-entrance-ready.is-in-view
    .property-detail-section-three__row:first-child
    .property-detail-section-three__card:nth-child(3) {
    transition-delay: 0.54s;
  }

  .property-detail-section-three__card:focus-visible {
    outline: 3px solid #10b49c;
    outline-offset: -3px;
  }

  .property-detail-section-three .property-detail-section-three__media::after {
    background: linear-gradient(180deg, rgba(0, 0, 0, 0.08) 20%, rgba(0, 0, 0, 0.78) 100%);
    transition: opacity 0.4s ease;
  }

  .property-detail-section-three .property-detail-section-three__media::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 3;
    background: linear-gradient(180deg, rgba(0, 0, 0, 0.08) 20%, rgba(0, 0, 0, 0.78) 100%);
    clip-path: inset(100% 0 0 0);
    pointer-events: none;
    transition: clip-path 0.58s cubic-bezier(0.65, 0, 0.35, 1);
  }

  .property-detail-section-three .property-detail-section-three__card.is-info-open .property-detail-section-three__media::before {
    clip-path: inset(0 0 0 0);
  }

  .property-detail-section-three .property-detail-section-three__card:hover .property-detail-section-three__media img,
  .property-detail-section-three .property-detail-section-three__card:focus-within .property-detail-section-three__media img {
    transform: none;
    filter: saturate(0.9);
  }

  .property-detail-section-three__content {
    z-index: 4;
    padding: clamp(1.5rem, 2.5vw, 3rem);
    gap: 0;
  }

  .property-detail-section-three .property-detail-section-three__description,
  .property-detail-section-three .property-detail-section-three__card:hover .property-detail-section-three__description,
  .property-detail-section-three .property-detail-section-three__card:focus-within .property-detail-section-three__description {
    max-height: 0;
    margin: 0;
    opacity: 0;
    overflow: hidden;
    transform: translateY(18px);
    font-family: "Museo Sans", "Inter", Verdana, sans-serif;
    font-size: clamp(1.05rem, 1.15vw, 1.25rem);
    line-height: 1.5;
    transition: max-height 0.45s ease, margin 0.45s ease, opacity 0.35s ease, transform 0.45s ease;
  }

  .property-detail-section-three .property-detail-section-three__card.is-info-open .property-detail-section-three__description {
    max-height: 22rem;
    margin-top: 14px;
    opacity: 1;
    overflow: hidden;
    transform: translateY(0);
  }

  .property-detail-section-three__toggle.button.button--inverted-arrow,
  .property-detail-section-three .property-detail-section-three__card:hover .property-detail-section-three__toggle,
  .property-detail-section-three .property-detail-section-three__card:focus-within .property-detail-section-three__toggle {
    position: relative;
    right: auto;
    bottom: auto;
    margin-top: 18px;
    flex: 0 0 var(--gap);
    align-self: flex-start;
    background: transparent;
    border-color: #fff;
    opacity: 1;
    visibility: visible;
    transform: none;
    transition: opacity 0.3s ease, transform 0.3s ease, visibility 0s linear 0s;
  }

  .property-detail-section-three .property-detail-section-three__card.is-info-open .property-detail-section-three__toggle,
  .property-detail-section-three .property-detail-section-three__card.is-info-open:focus-within .property-detail-section-three__toggle,
  .property-detail-section-three .property-detail-section-three__card.is-info-open:hover .property-detail-section-three__toggle {
    opacity: 0;
    visibility: hidden;
    transform: translateY(-10px) scale(0.85);
    transition-delay: 0s, 0s, 0.3s;
  }

  .property-detail-section-three__pagination {
    position: absolute;
    left: 50%;
    bottom: 40px;
    z-index: 5;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    transform: translateX(-50%);
  }

  .property-detail-section-three__dot {
    width: 11px;
    height: 11px;
    padding: 0;
    border: 0;
    border-radius: 999px;
    background: #818586;
    cursor: pointer;
    transition: width 0.3s ease, background-color 0.3s ease;
  }

  .property-detail-section-three__dot.is-active {
    width: 38px;
    background: #078a78;
  }

  .property-detail-section-three__dot:focus-visible {
    outline: 2px solid #078a78;
    outline-offset: 3px;
  }

  .property-detail-section-four {
    padding-block: 48px;
    background: #f6f6f3;
    font-family: "Museo Sans", "Inter", Verdana, sans-serif;
    overflow: hidden;
  }

  .property-detail-section-four.is-entrance-ready {
    opacity: 0;
    will-change: opacity;
    transition: opacity 1.25s ease;
  }

  .property-detail-section-four.is-entrance-ready.is-in-view {
    opacity: 1;
  }

  .property-detail-section-four__inner,
  .property-detail-section-four__gallery {
    width: 100%;
    display: flex;
    flex-direction: column;
    gap: 24px;
  }

  .property-detail-section-four__heading {
    margin: 0;
    color: #078a78;
    font-family: "Museo Sans", "Inter", Verdana, sans-serif;
    font-size: 2.5rem;
    font-weight: 700;
    line-height: 1.2;
    text-align: center;
  }

  .grid-showcase.property-detail-section-four__carousel {
    --grid-carousel-gap: 0;
    --grid-carousel-columns: 1 !important;
    width: 100%;
    margin: 0;
    padding: 0;
    gap: 0;
  }

  .grid-showcase.property-detail-section-four__carousel .grid-viewport {
    width: 100%;
    overflow: hidden !important;
  }

  .grid-showcase.property-detail-section-four__carousel .grid-track {
    width: 100%;
    display: flex !important;
    flex-wrap: nowrap !important;
    gap: 0 !important;
  }

  .property-detail-section-four__slide.grid-card {
    width: 100% !important;
    min-width: 100% !important;
    max-width: 100% !important;
    flex: 0 0 100% !important;
    height: 80vh;
    min-height: 360px;
    max-height: 720px;
    margin: 0;
    overflow: hidden;
    background: #deded9;
  }

  .property-detail-section-four__slide img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
  }

  .property-detail-section-four__controls {
    width: 100%;
    padding-inline: var(--gap48);
    display: flex;
    align-items: center;
    gap: 24px;
  }

  .property-detail-section-four__progress {
    height: 1px;
    flex: 1 1 auto;
    background: #d7d9d5;
    overflow: hidden;
  }

  .property-detail-section-four__progress-bar {
    height: 2px;
    background: #078a78;
    transform-origin: left center;
    transition: transform 0.45s cubic-bezier(0.65, 0, 0.35, 1);
  }

  .property-detail-section-four__arrows {
    display: flex;
    align-items: center;
    gap: 12px;
  }

  .property-detail-section-four__arrows .slider-arrow {
    width: 36px;
    height: 36px;
    flex: 0 0 36px;
  }

  .property-detail-section-five {
    padding: 72px;
    background: #fff;
    font-family: "Museo Sans", "Inter", Verdana, sans-serif;
    overflow: hidden;
  }

  .property-detail-section-five.is-animation-ready {
    opacity: 0;
    will-change: opacity;
    transition: opacity 1.25s ease;
  }

  .property-detail-section-five.is-animation-ready.is-in-view {
    opacity: 1;
  }

  .property-detail-section-six {
    width: 100%;
    min-height: clamp(520px, 68vh, 760px);
    display: grid;
    grid-template-columns: minmax(0, 65fr) minmax(0, 35fr);
    background: #edf9f8;
    color: #17594f;
    font-family: "Museo Sans", "Inter", Verdana, sans-serif;
    overflow: hidden;
  }

  .property-detail-section-six--map-only {
    grid-template-columns: minmax(0, 1fr);
  }

  .property-detail-section-six__map {
    min-width: 0;
    min-height: inherit;
    background: #d9e6e2;
  }

  .property-detail-section-six__map iframe {
    display: block;
    width: 100%;
    height: 100%;
    min-height: inherit;
    border: 0;
  }

  .property-detail-section-six__information {
    min-width: 0;
    padding: 72px;
  }

  .property-detail-section-six__heading {
    margin: 0;
    color: #078a78;
    font-family: "Museo Sans", "Inter", Verdana, sans-serif;
    font-size: 2.5rem;
    font-weight: 700;
    line-height: 1.2;
  }

  .property-detail-section-six__heading-divider,
  .property-detail-section-six__accordion::after {
    display: block;
    width: 100%;
    height: 1px;
    background: #159c83;
    transform-origin: left center;
  }

  .property-detail-section-six__heading-divider {
    margin-top: 32px;
  }

  .property-detail-section-six__accordion {
    position: relative;
  }

  .property-detail-section-six__accordion::after {
    content: "";
  }

  .property-detail-section-six__trigger {
    width: 100%;
    padding: 24px 0;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    border: 0;
    background: transparent;
    color: #17594f;
    font-family: var(--font-family-heading);
    font-size: 1.15rem;
    font-weight: 700;
    line-height: 1.2;
    text-align: left;
    cursor: pointer;
  }

  .property-detail-section-six__label {
    display: block;
    font: inherit;
  }

  .property-detail-section-six__plus {
    position: relative;
    width: 18px;
    height: 18px;
    flex: 0 0 18px;
  }

  .property-detail-section-six__plus::before,
  .property-detail-section-six__plus::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 16px;
    height: 1px;
    background: #078a78;
    transform: translate(-50%, -50%);
    transition: transform 0.35s ease;
  }

  .property-detail-section-six__plus::after {
    transform: translate(-50%, -50%) rotate(90deg);
  }

  .property-detail-section-six__trigger[aria-expanded="true"] .property-detail-section-six__plus::after {
    transform: translate(-50%, -50%) rotate(0deg);
  }

  .property-detail-section-six__trigger:focus-visible {
    outline: 2px solid #078a78;
    outline-offset: 4px;
  }

  .property-detail-section-six__panel {
    display: grid;
    grid-template-rows: 0fr;
    opacity: 0;
    transition: grid-template-rows 0.45s ease, opacity 0.35s ease;
  }

  .property-detail-section-six__panel-inner {
    min-height: 0;
    overflow: hidden;
    color: #333;
    font-size: clamp(1rem, 1.05vw, 1.15rem);
    line-height: 1.55;
  }

  .property-detail-section-six__panel-inner > :first-child {
    margin-top: 0;
  }

  .property-detail-section-six__panel-inner > :last-child {
    margin-bottom: 24px;
  }

  .property-detail-section-six__accordion.is-open .property-detail-section-six__panel {
    grid-template-rows: 1fr;
    opacity: 1;
  }

  .property-detail-section-six.is-animation-ready {
    opacity: 0;
    transition: opacity 1.15s ease;
  }

  .property-detail-section-six.is-animation-ready .property-detail-section-six__heading {
    opacity: 0;
    transform: translateY(22px);
    transition: opacity 0.75s ease 1.1s, transform 0.85s cubic-bezier(0.22, 1, 0.36, 1) 1.1s;
  }

  .property-detail-section-six.is-animation-ready .property-detail-section-six__heading-divider,
  .property-detail-section-six.is-animation-ready .property-detail-section-six__accordion::after {
    transform: scaleX(0);
    transition: transform 0.85s cubic-bezier(0.65, 0, 0.35, 1);
  }

  .property-detail-section-six.is-animation-ready .property-detail-section-six__heading-divider {
    transition-delay: 1.42s;
  }

  .property-detail-section-six.is-animation-ready .property-detail-section-six__accordion::after {
    transition-delay: calc(1.52s + (var(--location-accordion-index) * 0.14s));
  }

  .property-detail-section-six.is-animation-ready .property-detail-section-six__label {
    opacity: 0;
    clip-path: inset(0 100% 0 0);
    transition: opacity 0.4s ease, clip-path 0.7s cubic-bezier(0.22, 1, 0.36, 1);
    transition-delay: calc(1.6s + (var(--location-accordion-index) * 0.14s));
  }

  .property-detail-section-six.is-animation-ready .property-detail-section-six__plus {
    opacity: 0;
    transition: opacity 0.55s ease;
    transition-delay: calc(1.78s + (var(--location-accordion-index) * 0.14s));
  }

  .property-detail-section-six.is-animation-ready.is-in-view,
  .property-detail-section-six.is-animation-ready.is-in-view .property-detail-section-six__heading,
  .property-detail-section-six.is-animation-ready.is-in-view .property-detail-section-six__label,
  .property-detail-section-six.is-animation-ready.is-in-view .property-detail-section-six__plus {
    opacity: 1;
  }

  .property-detail-section-six.is-animation-ready.is-in-view .property-detail-section-six__heading {
    transform: translateY(0);
  }

  .property-detail-section-six.is-animation-ready.is-in-view .property-detail-section-six__heading-divider,
  .property-detail-section-six.is-animation-ready.is-in-view .property-detail-section-six__accordion::after {
    transform: scaleX(1);
  }

  .property-detail-section-six.is-animation-ready.is-in-view .property-detail-section-six__label {
    clip-path: inset(0 0 0 0);
  }

  .property-detail-section-seven {
    padding: 72px;
    background: linear-gradient(90deg, #17594f 0%, #0b806f 100%);
    color: #fff;
    font-family: "Museo Sans", "Inter", Verdana, sans-serif;
    overflow: hidden;
  }

  .property-detail-section-seven__inner {
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 24px;
    text-align: center;
  }

  .property-detail-section-seven__heading {
    max-width: 760px;
    margin: 0;
    color: #fff;
    font-family: "Museo Sans", "Inter", Verdana, sans-serif;
    font-size: 2rem;
    font-weight: 700;
    line-height: 1.2;
  }

  .sector-bottom-cta {
    --property-section-seven-cta-border: #008578;
    font-family: "Museo Sans", "Inter", Verdana, sans-serif;
  }

  .sector-bottom-cta .property-detail-section-seven__heading {
    color: var(--color-text);
  }

  .sector-bottom-cta .property-detail-section-seven__heading.text-brand-blue {
    color: var(--color-brand-blue);
  }

  .property-detail-section-seven__ctas {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    gap: 12px;
  }

  .property-detail-section-seven__cta,
  .sector-bottom-cta .commercial-bottom-button {
    min-width: 170px;
    min-height: 46px;
    padding: 12px 28px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid var(--property-section-seven-cta-border, #fff);
    border-radius: 999px;
    font: inherit;
    font-size: 0.9rem;
    font-weight: 700;
    line-height: 1.1;
    text-decoration: none;
    cursor: pointer;
    transition: background-color 0.3s ease, color 0.3s ease;
  }

  .property-detail-section-seven__cta--filled {
    background: #fff;
    color: #078a78;
  }

  .property-detail-section-seven__cta--outline {
    background: transparent;
    color: #fff;
  }

  .property-detail-section-seven__cta--filled:hover,
  .property-detail-section-seven__cta--filled:focus-visible {
    background: transparent;
    color: #fff;
  }

  .property-detail-section-seven__cta--outline:hover,
  .property-detail-section-seven__cta--outline:focus-visible {
    background: #fff;
    color: #078a78;
  }

  .property-detail-section-seven__cta:focus-visible {
    outline: 2px solid #fff;
    outline-offset: 4px;
  }

  .property-detail-section-seven.is-animation-ready {
    opacity: 0;
    transition: opacity 1.05s ease;
  }

  .property-detail-section-seven.is-animation-ready .property-detail-section-seven__heading {
    opacity: 0;
    clip-path: inset(0 100% 0 0);
    transition: opacity 0.45s ease 0.72s, clip-path 0.85s cubic-bezier(0.22, 1, 0.36, 1) 0.72s;
  }

  .property-detail-section-seven.is-animation-ready .property-detail-section-seven__cta {
    opacity: 0;
    transform: translateY(30px);
    transition:
      opacity 0.7s ease,
      transform 0.8s cubic-bezier(0.22, 1, 0.36, 1),
      background-color 0.3s ease,
      color 0.3s ease;
    transition-delay:
      calc(1.05s + (var(--property-cta-index) * 0.2s)),
      calc(1.05s + (var(--property-cta-index) * 0.2s)),
      0s,
      0s;
  }

  .property-detail-section-seven.is-animation-ready.is-in-view,
  .property-detail-section-seven.is-animation-ready.is-in-view .property-detail-section-seven__heading,
  .property-detail-section-seven.is-animation-ready.is-in-view .property-detail-section-seven__cta {
    opacity: 1;
  }

  .property-detail-section-seven.is-animation-ready.is-in-view .property-detail-section-seven__heading {
    clip-path: inset(0 0 0 0);
  }

  .property-detail-section-seven.is-animation-ready.is-in-view .property-detail-section-seven__cta {
    transform: translateY(0);
  }

  .property-detail-section-five__inner {
    width: 100%;
    display: flex;
    flex-direction: column;
    gap: 24px;
  }

  .property-detail-section-five__heading {
    margin: 0;
    color: #078a78;
    font-family: "Museo Sans", "Inter", Verdana, sans-serif;
    font-size: 2.5rem;
    font-weight: 700;
    line-height: 1.2;
    text-align: center;
  }

  .property-detail-section-five__tabs {
    display: flex;
    align-items: center;
    justify-content: center;
    column-gap: 24px;
    row-gap: 12px;
  }

  .property-detail-section-five__tab {
    position: relative;
    padding: 0 0 8px;
    border: 0;
    background: transparent;
    color: var(--color-brand-pjh-dark-green);
    font-family: "Museo Sans", "Inter", Verdana, sans-serif;
    font-size: clamp(1rem, 1.15vw, 1.2rem);
    font-weight: 900;
    line-height: 1.2;
    text-transform: uppercase;
    white-space: nowrap;
    cursor: pointer;
  }

  .property-detail-section-five__tab::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    height: 2px;
    background: #078a78;
    transform: scaleX(0);
    transform-origin: left center;
    transition: transform 1s cubic-bezier(0.65, 0, 0.35, 1);
  }

  .property-detail-section-five__tab.is-active::after {
    transform: scaleX(1);
  }

  .property-detail-section-five__tab:focus-visible {
    outline: 2px solid #078a78;
    outline-offset: 4px;
  }

  .property-detail-section-five__panels {
    width: 100%;
  }

  .property-detail-section-five__panel {
    width: 100%;
    height: min(70vh, 760px);
    min-height: 400px;
    margin: 0;
    align-items: center;
    justify-content: center;
    background: #fff;
  }

  .property-detail-section-five__panel[hidden] {
    display: none;
  }

  .property-detail-section-five__panel.is-active {
    display: flex;
  }

  .property-detail-section-five__panel img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
  }

  .property-detail-section-five.is-animation-ready .property-detail-section-five__panel img {
    opacity: 0;
    transition: opacity 0.7s ease;
  }

  .property-detail-section-five.is-animation-ready .property-detail-section-five__panel.is-image-visible img {
    opacity: 1;
  }

  .property-detail-section-five.is-animation-ready .property-detail-section-five__heading {
    opacity: 0;
    transform: translateY(26px);
    transition: opacity 0.65s ease, transform 0.65s cubic-bezier(0.22, 1, 0.36, 1);
  }

  .property-detail-section-five.is-animation-ready .property-detail-section-five__tab > span {
    display: block;
    opacity: 0;
    clip-path: inset(0 100% 0 0);
    transition: clip-path 0.65s cubic-bezier(0.22, 1, 0.36, 1), opacity 0.35s ease;
    transition-delay: calc(var(--site-plan-tab-index) * 0.1s);
  }

  .property-detail-section-five.is-animation-ready:not(.is-in-view) .property-detail-section-five__tab::after {
    transform: scaleX(0);
  }

  .property-detail-section-five.is-animation-ready:not(.is-in-view) .property-detail-section-five__panel.is-active {
    opacity: 0;
  }

  .property-detail-section-five.is-animation-ready.is-in-view .property-detail-section-five__heading {
    opacity: 1;
    transform: translateY(0);
  }

  .property-detail-section-five.is-animation-ready.is-in-view .property-detail-section-five__tab > span {
    opacity: 1;
    clip-path: inset(0 0 0 0);
  }

  .property-detail-section-five.is-animation-ready.is-in-view .property-detail-section-five__panel.is-active {
    opacity: 1;
  }

  .property-detail-hero__media,
  .property-detail-hero__overlay {
    position: absolute;
    inset: 0;
  }

  .property-detail-hero__media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }

  .property-detail-hero__overlay {
    background:
      linear-gradient(180deg, rgba(0, 0, 0, 0.18) 0%, rgba(0, 0, 0, 0.55) 100%),
      radial-gradient(
        110% 70% at 18% 95%,
        rgba(0, 0, 0, 0.72) 0%,
        rgba(0, 0, 0, 0) 80%
      );
  }

  .property-detail-hero__content {
    position: relative;
    z-index: 2;
    /* width: min(100%, var(--limit-width)); */
    /* margin-inline: auto; */
    padding-inline: var(--gap72);
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: var(--gap18);
  }

  .property-detail-hero__content .h1 {
    line-height: 1;
    margin: 0;
  }

  .property-detail-hero__lead {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: var(--gap12);
  }

  .property-detail-hero__lead .status-tag {
    position: static;
  }

  .property-detail-hero__intro {
    max-width: min(68ch, 90%);
  }

  .property-detail-hero .button.cta,
  .property-detail-background .button.cta,
  .property-detail-features .button.cta {
    background-color: var(--color-home-primary);
  }

  .property-detail-hero .button.cta:hover,
  .property-detail-hero .button.cta:focus,
  .property-detail-background .button.cta:hover,
  .property-detail-background .button.cta:focus,
  .property-detail-features .button.cta:hover,
  .property-detail-features .button.cta:focus {
    background-color: var(--color-home-hover);
  }

  .property-detail-hero .button.cta.pop,
  .property-detail-background .button.cta.pop,
  .property-detail-features .button.cta.pop {
    background-color: transparent;
  }

  .property-detail-hero .button.cta.pop:hover,
  .property-detail-hero .button.cta.pop:focus,
  .property-detail-background .button.cta.pop:hover,
  .property-detail-background .button.cta.pop:focus,
  .property-detail-features .button.cta.pop:hover,
  .property-detail-features .button.cta.pop:focus {
    background-color: transparent;
  }

  .property-detail-background .button.cta.pop,
  .property-detail-features .button.cta.pop {
    color: var(--color-brand-pjh-dark-green);
  }

  .property-detail-heading {
    color: var(--color-brand-pjh-dark-green);
    margin: 0;
  }

  .property-detail-copy > :first-child {
    margin-top: 0;
  }

  .property-detail-copy > :last-child {
    margin-bottom: 0;
  }

  .property-detail-cta-label {
    color: var(--color-brand-pjh-dark-green);
    font-family: var(--font-family-heading);
    font-size: 1rem;
    font-weight: 700;
    line-height: 1.35;
    margin: var(--gap6) 0 calc(var(--gap12) * -1);
  }

  .property-detail-overview {
    background-color: #ffffff;
    position: relative;
    padding-bottom: clamp(var(--gap48), 6vw, var(--gap96));
  }

  .property-detail-overview .property-detail-heading {
    color: var(--color-home-primary);
  }

  .property-detail-overview__media {
    width: 100%;
    height: clamp(360px, 44vw, 620px);
    overflow: hidden;
  }

  .property-detail-overview__media img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
  }

  .property-detail-overview__content-wrap {
    position: relative;
    z-index: 1;
    margin-top: calc(clamp(var(--gap72), 8vw, 120px) * -1);
  }

  .property-detail-overview__content-panel {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    align-items: start;
    gap: clamp(24px, 3vw, 36px);
    width: auto;
    margin: 0 72px;
    padding: clamp(var(--gap48), 5vw, var(--gap72));
    background: #ffffff;
    box-shadow: 0 24px 70px rgba(15, 23, 42, 0.12);
  }

  .property-detail-overview__overview {
    justify-content: center;
    min-width: 0;
    padding-right: 0;
  }

  .property-detail-overview__overview .property-detail-heading {
    position: relative;
    margin-bottom: 0;
  }

  .property-detail-overview__overview .property-detail-heading::after {
    content: none;
  }

  .property-detail-overview__overview .property-detail-copy {
    max-width: 58ch;
  }

  .property-detail-overview__overview .property-detail-copy > * + * {
    margin-top: var(--gap18);
  }

  .property-detail-overview .property-detail-overview__label-heading {
    color: var(--color-brand-emerald);
  }

  .property-detail-overview__metric {
    min-width: 0;
  }

  .property-detail-overview__metric-label {
    margin-bottom: var(--gap12);
  }

  .property-detail-overview__metric-value {
    font-size: clamp(2rem, 2.2vw, 2.35rem);
    margin-bottom: 0;
  }

  .property-detail-overview__metric-copy {
    margin: 0;
  }

  .property-detail-overview__metric-unit {
    display: inline;
    font-size: 0.34em;
    font-weight: 400;
    line-height: 1;
    margin: 0;
  }

  .property-detail-overview__glance-panel {
    background-color: #e8f4da;
    border-bottom-left-radius: clamp(52px, 8vw, 96px);
    margin-top: calc(var(--gap72) * -1);
    margin-right: calc(var(--gap72) * -1);
    margin-bottom: 0;
    padding-top: var(--gap72);
    padding-bottom: clamp(var(--gap24), 4vw, var(--gap48));
    padding-left: clamp(var(--gap24), 3.5vw, var(--gap48));
    padding-right: calc(
      clamp(var(--gap24), 3.5vw, var(--gap48)) + var(--gap72)
    );
    transition:
      background-color 0.28s ease,
      border-radius 0.28s ease,
      box-shadow 0.28s ease;
  }

  .property-detail-overview__glance-panel .property-glance-grid {
    gap: var(--gap24) clamp(var(--gap24), 3vw, var(--gap48));
  }

  .property-detail-overview__glance-panel .property-glance-item__value {
    color: #101419;
    font-weight: 700;
    line-height: 1.35;
  }

  .property-glance-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: var(--gap24) var(--gap48);
  }

  .property-glance-grid--compact {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    max-width: min(100%, 640px);
  }

  .property-glance-item__label {
    color: var(--color-brand-pjh-green);
    font-size: 1.02rem;
    line-height: 1.25;
    font-family: var(--font-family-heading);
    font-weight: 700;
    margin-bottom: var(--gap6);
  }

  .property-glance-item__value {
    font-family: Verdana;
    font-size: 1rem;
    font-style: normal;
    font-weight: 400;
    line-height: 1.6;
    text-wrap: pretty;
  }

  .property-detail-background {
    background-color: #f2f6ed;
  }

  .property-detail-background .property-detail-heading {
    color: var(--color-home-primary);
  }

  .property-detail-architecture {
    background-color: var(--color-white);
  }

  .property-detail-architecture__wrapper {
    padding-top: 5px;
  }

  .property-detail-architecture__layout {
    display: grid;
    grid-template-columns: minmax(0, 1.05fr) minmax(0, 0.95fr);
    gap: 5px;
    align-items: stretch;
  }

  .property-detail-architecture__main-image,
  .property-detail-architecture__thumb {
    overflow: hidden;
    background-color: var(--color-surface);
  }

  .property-detail-architecture__main-image {
    min-height: clamp(420px, 46vw, 550px);
  }

  .property-detail-architecture__main-image img,
  .property-detail-architecture__thumb img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
  }

  .property-detail-architecture__content {
    display: grid;
    grid-template-rows: minmax(0, 1fr) auto;
    gap: var(--gap24);
  }

  .property-detail-architecture__text {
    align-self: center;
    display: flex;
    flex-direction: column;
    gap: var(--gap18);
    padding-inline: 36px;
    padding-block: 36px;
  }

  .property-detail-architecture__heading {
    font-size: 2rem;
    margin: 0;
  }

  .property-detail-architecture__content .property-detail-copy {
    max-width: 56ch;
  }

  .property-detail-architecture__content .property-detail-copy > * + * {
    margin-top: var(--gap18);
  }

  .property-detail-architecture__image-pair {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 5px;
    margin-top: 0;
  }

  .property-detail-architecture__thumb {
    aspect-ratio: 1 / 1;
  }

  .property-detail-architecture .button-group {
    margin-top: var(--gap6);
  }

  .property-detail-location {
    background-color: var(--color-white);
    padding-top: 5px;
  }

  .property-detail-location__media {
    position: relative;
    min-height: clamp(480px, 48vw, 760px);
    overflow: hidden;
  }

  .property-detail-location__media img {
    width: 100%;
    height: 100%;
    min-height: inherit;
    display: block;
    object-fit: cover;
  }

  .property-detail-location__panel {
    position: absolute;
    left: 36px;
    bottom: 36px;
    width: min(100% - 72px, 626px);
    padding: 36px;
    background-color: var(--color-white);
  }

  .property-detail-location__heading {
    margin: 0 0 var(--gap24);
    font-size: 2rem;
  }

  .property-detail-location__copy {
    max-width: 48ch;
  }

  .property-detail-location__copy > * + * {
    margin-top: var(--gap18);
  }

  .property-detail-content-image {
    background-color: var(--color-white);
  }

  .property-detail-content-image__wrapper {
    padding-top: 5px;
    padding-bottom: 5px;
  }

  .property-detail-content-image__layout {
    display: grid;
    grid-template-columns: minmax(0, 0.95fr) minmax(0, 1.05fr);
    align-items: center;
    gap: var(--gap72);
  }

  .property-detail-content-image__content {
    max-width: 640px;
  }

  .property-detail-content-image__heading {
    margin: 0 0 var(--gap24);
    font-size: 2rem;
  }

  .property-detail-content-image__copy > * + * {
    margin-top: var(--gap18);
  }

  .property-detail-content-image__media {
    aspect-ratio: 16 / 10;
    overflow: hidden;
  }

  .property-detail-content-image__media img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
  }

  .property-detail-overlay-feature {
    position: relative;
    min-height: clamp(320px, 33vw, 520px);
    overflow: hidden;
    background-color: var(--color-surface);
  }

  .property-detail-overlay-feature__media {
    position: absolute;
    inset: 0;
  }

  .property-detail-overlay-feature__media img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
  }

  .property-detail-overlay-feature__content {
    position: relative;
    z-index: 1;
    min-height: inherit;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: var(--gap72);
  }

  .property-detail-overlay-feature__panel {
    width: min(100%, 760px);
    padding: 36px;
    background-color: var(--color-white);
  }

  .property-detail-overlay-feature__heading {
    margin: 0 0 var(--gap24);
    font-size: 2rem;
  }

  .property-detail-overlay-feature__copy > * + * {
    margin-top: var(--gap18);
  }

  .property-detail-background__layout {
    gap: 0;
    align-items: flex-start;
  }

  .property-detail-background__panel {
    transition:
      background-color 0.28s ease,
      border-radius 0.28s ease,
      box-shadow 0.28s ease;
  }

  .property-detail-background__components-panel {
    background-color: #d2f1ff;
    border-bottom-right-radius: clamp(52px, 8vw, 96px);
    margin-top: calc(var(--gap72) * -1);
    margin-left: calc(var(--gap72) * -1);
    margin-bottom: 0;
    padding-top: var(--gap72);
    padding-bottom: clamp(var(--gap24), 4vw, var(--gap48));
    padding-left: calc(clamp(var(--gap24), 3.5vw, var(--gap48)) + var(--gap72));
    padding-right: clamp(var(--gap24), 3.5vw, var(--gap48));
  }

  .property-detail-background__components-panel .property-components {
    gap: var(--gap24);
  }

  .property-detail-background__components-panel
    .property-components__group-title {
    color: var(--color-brand-pjh-green);
  }

  .property-detail-background__components-panel
    .property-components__item-value {
    color: #101419;
    font-weight: 700;
    line-height: 1.35;
  }

  .property-detail-background__content-panel {
    background-color: transparent;
    margin-top: calc(var(--gap72) * -1);
    margin-right: calc(var(--gap72) * -1);
    margin-bottom: 0;
    padding-top: var(--gap72);
    padding-bottom: 0;
    padding-left: clamp(var(--gap24), 3.5vw, var(--gap48));
    padding-right: calc(
      clamp(var(--gap24), 3.5vw, var(--gap48)) + var(--gap72)
    );
  }

  .property-detail-background__content-panel .property-detail-copy {
    max-width: 62ch;
  }

  .property-detail-background__content-panel .property-detail-copy > * + * {
    margin-top: var(--gap24);
  }

  .property-detail-background__content-panel .button-group {
    margin-top: var(--gap6);
  }

  .property-detail-background__content-panel .button.cta:not(.pop) {
    background-color: var(--color-brand-pjh-green);
    border-color: var(--color-brand-pjh-green);
    color: #ffffff;
  }

  .property-detail-background__content-panel .button.cta:not(.pop):hover,
  .property-detail-background__content-panel .button.cta:not(.pop):focus {
    background-color: var(--color-brand-pjh-dark-green);
    border-color: var(--color-brand-pjh-dark-green);
  }

  .property-components {
    display: flex;
    flex-direction: column;
    gap: var(--gap24);
  }

  .property-components__group {
    display: flex;
    flex-direction: column;
    gap: var(--gap12);
  }

  .property-components__group-title {
    color: var(--color-brand-pjh-dark-green);
    margin: 0;
  }

  .property-components__items {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: var(--gap18) var(--gap24);
  }

  .property-components__item-label {
    color: var(--color-brand-pjh-green);
    font-size: 0.98rem;
    line-height: 1.3;
    font-family: var(--font-family-heading);
    font-weight: 700;
  }

  .property-components__item-value {
    color: var(--color-text);
    font-size: 2rem;
    line-height: 1.15;
    font-family: var(--font-family-heading);
    font-weight: 700;
    margin-top: var(--gap6);
    font-family: Verdana;
    font-size: 1rem;
    font-style: normal;
    font-weight: 400;
    line-height: 1.6;
    text-wrap: pretty;
  }

  .property-glance-item__value.stat-num,
  .property-components__item-value.stat-num {
    font-variant-numeric: tabular-nums;
  }

  .grid-showcase.property-detail-gallery {
    --grid-showcase-max-width: 100%;
    margin-right: 0;
    padding-right: 0;
  }

  .grid-showcase.property-detail-gallery .grid-card__media img {
    aspect-ratio: 4 / 3;
    object-position: center;
    border-bottom-right-radius: 3vw;
    transform: scale(1);
    transition: transform 0.55s cubic-bezier(0.22, 1, 0.36, 1);
  }

  .grid-showcase.property-detail-gallery[data-property-caption-ready="1"]
    .property-detail-gallery__card
    .grid-card__title {
    opacity: 0.45;
    transform: translateY(8px);
    transition:
      opacity 0.35s cubic-bezier(0.22, 1, 0.36, 1),
      transform 0.35s cubic-bezier(0.22, 1, 0.36, 1);
  }

  .grid-showcase.property-detail-gallery[data-property-caption-ready="1"]
    .property-detail-gallery__card.is-caption-active
    .grid-card__title {
    opacity: 1;
    transform: translateY(0);
  }

  .grid-showcase.property-detail-gallery[data-property-caption-ready="1"]
    .property-detail-gallery__card.is-caption-active
    .grid-card__media
    img {
    transform: scale(1.02);
  }

  .grid-showcase.property-detail-gallery .grid-card__title .card-subtitle {
    color: var(--color-text);
  }

  .property-detail-features-list {
    margin: 0;
  }

  .property-detail-features .green-list li::before,
  .property-detail-architecture .green-list li::before,
  .property-detail-content-image .green-list li::before,
  .property-detail-overlay-feature .green-list li::before {
    width: 9px;
    height: 9px;
    border-radius: 50%;
    background-image: none;
    background-color: #008578;
  }

  .property-detail-features-list li {
    color: var(--color-text);
    font-size: 1.2rem;
    line-height: 1.4;
    font-family: Verdana;
    font-size: 1rem;
    font-style: normal;
    font-weight: 400;
    line-height: 1.6;
    text-wrap: pretty;
  }

  .property-detail-features .grid-controls .grid-progress {
    background-color: #008578;
  }

  .property-detail-features .grid-controls .grid-progress__bar {
    background-color: #008578;
  }

  .property-detail-features .grid-controls .slider-arrow {
    border-color: #008578;
    background-image: none;
  }

  .property-detail-features .grid-controls .slider-arrow::before {
    content: "";
    width: 10px;
    height: 10px;
    display: block;
    background-color: #008578;
    -webkit-mask: url("../images/icons/icon-chevron-green.svg") no-repeat
      center / contain;
    mask: url("../images/icons/icon-chevron-green.svg") no-repeat center /
      contain;
  }

  .property-detail-features .justify-content-center {
    justify-content: center;
  }

  .property-detail-structure.pad-top-72 {
    padding-top: var(--gap72);
    padding-bottom: 0;
  }

  .property-detail-structure__certification {
    margin-top: clamp(var(--gap48), 6vw, var(--gap96));
    padding: 36px;
    border-left: 5px solid var(--color-brand-emerald);
    border-radius: 4px;
  }

  .property-detail-structure__heading {
    font-size: 2rem;
  }

  .property-detail-structure__certification-label {
    color: var(--color-brand-emerald) !important;
    margin-bottom: var(--gap18);
  }

  .property-detail-structure__certification-copy {
    max-width: 58ch;
  }

  .property-detail-related .portfolio-tabs__nav::before,
  .property-detail-related .portfolio-tabs__nav::after {
    background-color: var(--color-brand-pjh-light-green);
  }

  .property-detail-related .portfolio-tab:hover,
  .property-detail-related .portfolio-tab:focus-visible {
    color: var(--color-brand-pjh-dark-green);
  }

  .property-detail-related .portfolio-tab.is-active {
    color: var(--color-brand-pjh-dark-green);
  }

  .property-detail-related .portfolio-tab.is-active::after {
    background-color: var(--color-brand-pjh-dark-green);
  }

  .property-detail-related .button--secondary {
    border-color: var(--color-home-primary);
    color: var(--color-home-primary);
  }

  .property-detail-related .button--secondary:hover,
  .property-detail-related .button--secondary:focus {
    background-color: var(--color-home-hover);
    border-color: var(--color-home-hover);
    color: #ffffff;
  }

  .property-detail-related .grid-controls .grid-progress__bar {
    background-color: var(--color-brand-pjh-dark-green);
  }

  .property-tabs--detail-paged .portfolio-tab-panel {
    display: flex;
    flex-direction: column;
    gap: var(--gap24);
  }

  .property-tabs--detail-paged .portfolio-tab-panel[hidden] {
    display: none;
  }

  .property-tabs--detail-paged .grid-card[hidden] {
    display: none;
  }

  .property-card-pagination {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: var(--gap12);
  }

  .property-card-pagination__pages {
    display: inline-flex;
    align-items: center;
    gap: var(--gap12);
  }

  .property-card-pagination__page {
    border: 0;
    background: transparent;
    color: #008578;
    font-family: var(--font-family-heading);
    font-size: 1.25rem;
    font-weight: 700;
    line-height: 1;
    min-width: 1.4em;
    cursor: pointer;
    padding: 0;
    transition:
      color 0.2s ease,
      opacity 0.2s ease;
  }

  .property-card-pagination__page:hover,
  .property-card-pagination__page:focus-visible {
    color: #006d63;
  }

  .property-card-pagination__page.is-current {
    color: #005d54;
  }

  .property-card-pagination__arrow {
    border-color: #008578;
    background-image: none;
  }

  .property-card-pagination__arrow::before {
    content: "";
    width: 10px;
    height: 10px;
    display: block;
    background-color: #008578;
    -webkit-mask: url("../images/icons/icon-chevron-green.svg") no-repeat
      center / contain;
    mask: url("../images/icons/icon-chevron-green.svg") no-repeat center /
      contain;
  }

  .property-card-pagination__arrow:disabled {
    opacity: 0.35;
  }

  .grid-showcase.news-media-grid .grid-card__media img {
    aspect-ratio: 4 / 3;
    object-position: center top;
    height: auto;
    border-radius: 1.5vw;
  }

  .career-scam-modal .grid-showcase.news-media-grid .grid-card__media img {
    aspect-ratio: auto;
    object-fit: contain;
    border-radius: 0;
  }

  .career-scam-modal .grid-card {
    border-radius: 0;
    border: 1px solid var(--color-brand-light-gray);
  }

  .grid-showcase.news-media-grid .grid-card .news-details {
    display: flex;
    flex-direction: column;
    gap: var(--gap18);
    padding-top: var(--gap18);
  }

  .grid-showcase.news-media-grid .grid-card .status-tag {
    position: absolute;
    right: 0;
    top: 0;
    border-top-right-radius: 1.5vw;
  }

  .grid-showcase.news-media-grid .grid-card__title {
    padding: 0;
    max-width: none;
    font-size: 1.5rem;
    line-height: 1.2;
    display: flex;
    flex-direction: column;
    gap: var(--gap9);
  }

  .grid-showcase.news-media-grid .grid-card__title .card-title {
    font-size: 1.06rem;
    line-height: 1.3;
    color: var(--color-brand-blue);
  }

  .grid-showcase.news-media-grid .grid-card__title .news-date {
    font-size: 0.9rem;
    line-height: 1.3;
  }

  .grid-showcase.news-media-grid .grid-card__title .news-category {
    font-size: 0.72rem;
    line-height: 1.2;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    color: var(--color-brand-pjh-green);
  }

  .news-media-grid .grid-card__media::after {
    content: none;
  }

  .home-news-pagination {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: var(--gap18);
    margin-top: var(--gap18);
  }

  .home-news-pagination__pages {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: var(--gap24);
  }

  .home-news-pagination__page {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 1.5rem;
    text-decoration: none;
    font-family: var(--font-family-heading);
    font-size: 1.5rem;
    line-height: 1;
    font-weight: 700;
    color: var(--color-brand-blue);
    transition:
      color 0.2s ease,
      opacity 0.2s ease;
  }

  .home-news-pagination__page:hover,
  .home-news-pagination__page:focus-visible {
    color: var(--color-brand-pjh-green);
  }

  .home-news-pagination__page.is-current {
    color: var(--color-brand-pjh-green);
  }

  .home-news-pagination__arrow {
    width: 3.15rem;
    height: 3.15rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 999px;
    border: 2px solid var(--color-brand-pjh-green);
    text-decoration: none;
    color: var(--color-brand-pjh-green);
    font-family: var(--font-family-heading);
    font-size: 2rem;
    line-height: 1;
    transition:
      background-color 0.2s ease,
      color 0.2s ease,
      opacity 0.2s ease;
  }

  .home-news-pagination__arrow i {
    font-size: 1.35rem;
    line-height: 1;
  }

  .home-news-pagination__arrow:hover,
  .home-news-pagination__arrow:focus-visible {
    background-color: var(--color-brand-pjh-green);
    color: var(--color-white);
  }

  .home-news-pagination__arrow.is-disabled {
    pointer-events: none;
    opacity: 0.35;
  }

  .home-news-pagination.is-loading {
    pointer-events: none;
    opacity: 0.72;
  }

  .row-news .grid-viewport[data-grid-viewport] {
    transition: min-height 0.25s ease;
  }

  .row-news .grid-track[data-grid-track] {
    will-change: transform, opacity;
  }

  .row-news .grid-track[data-grid-track].is-paging-out {
    opacity: 0;
    transform: translateX(var(--home-news-shift, 24px));
    transition:
      opacity 0.18s ease,
      transform 0.22s cubic-bezier(0.4, 0, 0.2, 1);
  }

  .row-news .grid-track[data-grid-track].is-paging-in {
    animation: home-news-page-in 0.38s cubic-bezier(0.22, 0.61, 0.36, 1) both;
  }

  @keyframes home-news-page-in {
    from {
      opacity: 0;
      transform: translateX(var(--home-news-shift, -24px));
    }

    to {
      opacity: 1;
      transform: translateX(0);
    }
  }

  .row-leadership .management .grid-card__media {
    aspect-ratio: 3 / 4;
  }

  .row-awards.is-curved {
    border-top-left-radius: 8vw;
  }

  .row-awards {
    padding: var(--gap72);
    gap: var(--gap72);
    display: flex;
    flex-direction: column;
    background-position: center top;
    background-repeat: no-repeat;
    background-size: 100% auto;
  }

  .row-awards__inner {
    width: 100%;
    margin-inline: auto;
  }

  body:not(.home) .row-awards .text-summary {
    flex: 1 1 100%;
    max-width: none;
  }

  body:not(.home) .row-awards .block {
    flex: 1 1 100%;
    max-width: none;
    width: 100%;
  }

  body:not(.home) .row-awards .section-copy {
    padding-bottom: 0;
  }

  .featured-awards {
  }

  .featured-awards__carousel {
    width: 100%;
  }

  .featured-awards .award-carousel {
    position: relative;
    background-color: var(--color-white);
    border-radius: var(--gap18);
  }

  .featured-awards .award-carousel .award-visual {
    display: block;
  }

  .featured-awards .award-card__media {
    padding: 0;
  }

  .featured-awards .award-visual {
    margin-top: var(--gap9);
    cursor: pointer;
  }

  .featured-awards .award-visual img {
    display: block;
    width: 100%;
    border-radius: var(--gap12);
    object-fit: cover;
  }

  .featured-awards .river-row {
    --river-card-width: clamp(240px, 60vw, 480px);
    --river-card-height: clamp(170px, 32vw, 260px);
  }

  .featured-awards__carousel.caption-below .grid-card__title .card-meta {
    opacity: 1;
    max-height: none;
    transform: none;
    padding-top: var(--gap9);
    overflow: visible;
  }

  .featured-awards .card-title {
    font-size: 1.25rem;
    line-height: 1.2;
    color: var(--color-brand-army);
  }

  .featured-awards .grid-card {
    text-align: center;
    background-color: transparent;
  }

  .featured-awards .grid-slider {
    background-color: var(--color-white);
    border-radius: var(--gap18);
  }

  .item-gallery {
    display: flex;
    gap: var(--gap18);
  }

  .item-gallery img {
    display: block;
    width: 100%;
  }

  .row-history {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: var(--gap) var(--gap72) var(--gap72);
    /* background-color: var(--color-white); */
    justify-content: center;
    gap: var(--gap);
  }

  body:not(.home) .row-history .text-summary {
    flex-basis: 100%;
    max-width: 800px;
    text-align: center;
  }

  .row-history .text-summary .section-label {
    justify-content: center;
  }

  .row-history .grid-box .grid-heading {
    text-align: center;
  }

  .row-history .section-copy {
    padding-bottom: 0;
  }

  .timeline-box {
    width: 100%;
    position: relative;
    display: flex;
    flex-direction: column;
    gap: var(--gap);
    max-width: var(--max-width);
  }

  .timeline-box:before {
    content: none;
  }

  .timeline-years {
    position: relative;
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
    gap: var(--gap108);
    flex-wrap: nowrap;
    overflow-x: auto;
    overflow-y: visible;
    width: 100%;
    max-width: calc(100% - var(--gap72));
    z-index: 1;
    padding: 0;
  }

  .timeline-years-wrapper {
    position: relative;
  }

  .timeline-years-wrapper:before {
    content: "";
    position: absolute;
    left: var(--gap);
    right: var(--gap);
    top: 5px;
    height: 2px;
    background-color: var(--color-brand-gray);
    border-radius: 999px;
    opacity: 0.9;
    pointer-events: none;
    z-index: 0;
  }

  .timeline-years::-webkit-scrollbar {
    height: 6px;
  }

  .timeline-years::-webkit-scrollbar-thumb {
    background: rgba(var(--color-brand-blue-rgb), 0.35);
    border-radius: 999px;
  }

  .timeline-year {
    scroll-snap-align: center;
    scroll-snap-stop: always;
    position: relative;
    z-index: 1;
    background: none;
    border: none;
    color: var(--color-brand-blue);
    font-family: var(--font-family-heading);
    font-weight: 700;
    font-size: 1.2rem;
    line-height: 1.2;
    letter-spacing: -0.05em;
    white-space: nowrap;
    cursor: pointer;
    display: flex;
    flex-direction: column;
    gap: var(--gap12);
    align-items: center;
    transition:
      color 0.2s ease,
      font-size 0.2s ease,
      transform 0.2s ease;
    transform-origin: center;
    padding: 0;
  }

  .timeline-year:before {
    content: "";
    width: var(--gap12);
    height: var(--gap12);
    border-radius: 100%;
    background: var(--color-brand-gray);
    pointer-events: none;
    z-index: 0;
    transition:
      background-color 0.2s ease,
      border-color 0.2s ease,
      transform 0.2s ease,
      box-shadow 0.2s ease;
  }

  .timeline-year:focus-visible {
    outline: none;
    color: var(--color-brand-blue);
    box-shadow: 0 0 0 2px rgba(var(--color-brand-blue-rgb), 0.35);
    border-radius: var(--gap9);
  }

  .timeline-year:hover,
  .timeline-year.is-active {
    color: var(--color-brand-army);
    font-size: 1.8rem;
  }

  .timeline-year.is-active:before {
    background: linear-gradient(
      to right,
      var(--color-brand-green),
      var(--color-brand-blue)
    );
  }

  .timeline-box .events-viewport {
    width: 100%;
    overflow: hidden;
    transition: height 0.45s ease;
  }

  .timeline-box .events {
    width: 100%;
    display: flex;
    flex-direction: row;
    align-items: stretch;
    gap: var(--gap24);
    position: relative;
    transition: transform 0.45s ease;
    will-change: transform;
  }

  .timeline-box .events .event {
    display: grid;
    grid-template-columns: minmax(320px, 1fr) minmax(320px, 1fr);
    gap: 0;
    flex: 0 0 100%;
    border: none;
    overflow: hidden;
    padding: 0;
    transition:
      box-shadow 0.2s ease,
      transform 0.2s ease;
    border-bottom-right-radius: 3vw;
  }

  .timeline-box .events .event .year-hero {
    padding: 0;
    height: 100%;
    display: flex;
  }

  .timeline-box .events .event .year-hero .grid-card {
    flex: 1 1 auto;
  }

  .timeline-box .events .event .year-hero .grid-card__media,
  .timeline-box .events .event .year-hero .grid-card__media img {
    height: 100%;
  }

  .timeline-box .events .event .year-hero .grid-card__media img {
    object-fit: cover;
  }

  .timeline-box .events .event .year-details {
    display: inline-flex;
    flex-direction: column;
    gap: var(--gap12);
    align-items: flex-start;
    justify-content: flex-start;
    padding: var(--gap);
    background-color: var(--color-surface);
  }

  /* .year-num {
    display: inline-flex;
    position: relative;
    font-family: var(--font-family-heading);
    font-size: 2rem;
    line-height: 1em;
    color: var(--color-white);
    font-weight: 900;
    padding: var(--gap18) var(--gap24);
    border-radius: var(--gap12);
    background: linear-gradient(to right, var(--color-brand-blue), var(--color-brand-green));
    justify-content: center;
} */

  .year-num {
    display: inline-flex;
    position: relative;
    font-family: var(--font-family-heading);
    font-size: 3rem;
    line-height: 1.1em;
    color: var(--color-brand-army);
    font-weight: 700;
    white-space: nowrap;
    letter-spacing: -0.05em;
  }

  .year-num:before {
    display: none;
  }

  .timeline-box .events .event .event-list {
    font-size: 1.05rem;
    font-family: var(--font-family-heading);
    font-weight: 600;
    color: var(--color-brand-blue);
    display: flex;
    flex-direction: column;
    gap: var(--gap9);
  }

  .events .button--inverted-arrow {
    border-color: var(--color-brand-blue);
  }

  .events .event .action .button {
    color: var(--color-brand-blue);
  }

  .events .event .grid-card .grid-card__media {
    border-bottom-right-radius: 0;
    aspect-ratio: 4 / 3;
    height: 100%;
  }

  .timeline-box .events .event.event--placeholder .year-hero {
    display: block;
  }

  .timeline-box .events .event.event--placeholder .event-title {
    color: rgba(var(--color-brand-blue-rgb), 0.75);
    font-weight: 600;
  }

  .timeline-box .events .event.event--placeholder {
    grid-template-columns: minmax(320px, 1fr) minmax(320px, 1fr);
    box-shadow: none;
  }

  .timeline-box .events-nav {
    display: flex;
    justify-content: space-between;
    position: absolute;
    z-index: 2;
    transform: translateY(-50%);
    top: 6px;
    width: 100%;
  }

  .timeline-box .events-nav .slider-arrow {
    background-color: var(--color-white);
  }

  .timeline-box .events-nav .slider-arrow--prev {
    transform: rotate(90deg);
    background-color: var(--color-brand-army);
    background-image: url(../images/icons/icon-chevron-white.svg);
  }

  .timeline-box .events-nav .slider-arrow--next {
    transform: rotate(-90deg);
    background-color: var(--color-brand-army);
    background-image: url(../images/icons/icon-chevron-white.svg);
  }

  .row-property-investment {
    padding: var(--gap108) 0;
    display: flex;
    flex-direction: column;
    gap: var(--gap72);
    padding-bottom: 0;
  }

  .row-property-investment.is-curved {
    border-top-left-radius: 8vw;
    border-bottom-right-radius: 8vw;
  }

  .business-layout {
    display: flex;
    padding-left: var(--gap72);
    padding-right: var(--gap72);
    flex-direction: column;
    /* gap: var(--gap48); */
    gap: var(--gap);
  }

  .business-layout .business-featured {
    display: flex;
    gap: var(--gap72);
  }

  .business-layout .business-secondary {
    display: flex;
    gap: var(--gap);
  }

  .business-layout .business-featured > *,
  .business-layout .business-secondary > * {
    flex-basis: 100%;
  }

  .business-featured .accordion-item,
  .business-secondary .accordion-item {
    border-top-color: var(--color-brand-light-gray);
  }

  .business-featured .accordion-item.opened,
  .business-secondary .accordion-item.opened {
    border-top-color: var(--color-brand-army);
  }

  .business-featured .accordion-item.opened .item-heading,
  .business-secondary .accordion-item.opened .item-heading {
    padding-bottom: var(--gap24);
  }

  /* .business-secondary .accordion-item .item-heading {
    font-size: 1.06rem;
    line-height: 1.3;
    padding: var(--gap18) 0;
} */

  .business-featured .grid-card__media {
    aspect-ratio: 3 / 2;
    border-bottom-right-radius: 6vw;
  }

  .business-featured
    .grid-showcase:not([data-grid-carousel="on"])
    .grid-card__media {
    aspect-ratio: auto;
    height: 28vw;
    border-bottom-right-radius: 6vw;
  }

  .row-property-development {
    padding: var(--gap108) 0;
    display: flex;
    flex-direction: column;
    gap: var(--gap72);
    padding-bottom: 0;
  }

  body:not(.home) .row-property-development .text-summary {
    max-width: 420px;
  }

  .mixed .business-featured .grid-card__media {
    aspect-ratio: 5 / 4;
  }

  .project-management .business-featured .grid-card__media {
    aspect-ratio: 5 / 4;
  }

  .facilities-management .business-featured .grid-card__media {
    aspect-ratio: 5 / 4;
  }

  .row-property-development
    .residential
    .business-featured
    .grid-card__media
    img {
    object-position: center top;
  }

  .row-property-development .government .business-featured .grid-card__media {
    aspect-ratio: 16 / 9;
  }

  .row-property-investment .office .business-featured .grid-card__media {
    aspect-ratio: 5 / 4;
  }

  .row-property-investment .hotel .business-featured .grid-card__media {
    aspect-ratio: 5 / 4;
  }

  .row-property-investment .hotel .business-featured .grid-card__media img {
    object-position: center top;
  }

  .row-property-investment .retail .business-featured .grid-card__media {
    aspect-ratio: 1;
  }

  .row-property-investment .retail .business-featured .grid-card__media img {
    object-position: center top;
  }

  .row-property-investment .reit .business-featured .grid-card__media {
    aspect-ratio: 5 / 4;
  }

  .row-property-investment .reit .business-featured .grid-card__media img {
    object-position: center top;
  }

  .row-management-services {
    padding: var(--gap108) 0;
    display: flex;
    flex-direction: column;
    gap: var(--gap72);
    padding-bottom: 0;
  }

  .row-management-services.is-curved {
    border-bottom-right-radius: 8vw;
  }

  body:not(.home) .row-management-services .text-summary,
  body:not(.home) .row-management-services .text-description {
    max-width: none;
    flex-basis: 100%;
    flex-shrink: 1;
    flex-grow: 1;
  }

  .business-featured .grid-card .grid-card__title {
    font-size: 1.06rem;
    line-height: 1.3;
  }

  .business-featured .grid-card .grid-card__title .card-title {
    padding-bottom: 0;
  }

  .row-utilities {
    padding: var(--gap108) 0;
    display: flex;
    flex-direction: column;
    gap: var(--gap72);
    padding-bottom: 0;
  }

  .row-utilities .business-grid {
    width: 100%;
  }

  .row-utilities .business-grid-title {
    text-align: center;
  }

  .row-utilities .grid-card .grid-card__title {
    font-size: 1.06rem;
    line-height: 1.3;
  }

  .row-utilities .grid-card .grid-card__title .card-title {
    padding-bottom: 0;
  }

  body.experience:not(.home) .row-page-intro .text-summary,
  body.experience:not(.home) .row-page-intro .text-description {
    max-width: none;
    flex-basis: 100%;
    flex-shrink: 1;
    flex-grow: 1;
  }

  body.experience .row-business .grid-card .grid-card__title {
    font-size: 1.06rem;
    line-height: 1.3;
  }

  body.experience .row-business .grid-card__media {
    aspect-ratio: 4 / 5;
  }

  body.experience .row-business,
  body.experience .row-education,
  body.experience .row-arts,
  body.experience .row-culture {
    padding: var(--gap108) 0;
    display: flex;
    flex-direction: column;
    gap: var(--gap72);
    padding-bottom: 0;
  }

  body.experience .row-culture {
    padding-bottom: 1px;
  }

  body.experience .text-summary,
  body.experience .text-description {
    flex: 1 1 100%;
    max-width: none;
  }

  body.experience .text-description > *:last-child {
    padding-bottom: 0;
  }

  body.home .row-about .text-summary {
    max-width: none;
    flex: 1 1 100%;
  }

  .hero-stats {
    display: flex;
    flex-wrap: wrap;
    gap: 0;
    flex-basis: content;
    gap: var(--gap60);
  }

  .heading-actions {
    display: flex;
    gap: var(--gap18);
    align-items: center;
  }

  .hero-stats .stat-group {
    display: flex;
    flex-direction: column;
    gap: var(--gap12);
    flex-basis: 100%;
  }

  .hero-stats .stat-group .group-label {
    font-family: var(--font-family-heading);
    font-size: 1.25rem;
    font-weight: bold;
    color: var(--color-brand-army);
  }

  .hero-stats .stat-group .stats {
    display: flex;
    flex-wrap: wrap;
    gap: 0;
    flex-basis: content;
    gap: var(--gap48);
  }

  .row-about .hero-stats {
    max-width: 548px;
    min-width: 548px;
  }

  .hero-stats .stat {
    flex-basis: 220px;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: var(--gap6);
  }

  .financial-stats .hero-stats .stat {
    flex-basis: calc((100% - (var(--gap48)) * 2) / 3);
  }

  .hero-stats .stat.footprint,
  .hero-stats .stat.portfolio {
    flex-basis: 270px;
  }

  .row-highlights,
  .row-portfolio-items,
  .row-residential-items,
  .row-commercial-items,
  .row-government-items,
  .row-hospitality-items,
  .row-retail-items,
  .row-utility-items,
  .row-education-items {
    background-color: #e8f4da;
  }

  .hero-stats .stat .label {
    font-size: 1.25rem;
    line-height: 1.1em;
    font-weight: 500;
    display: flex;
    align-items: center;
    color: #79797a;
    gap: 5px;
    white-space: nowrap;
    font-family: var(--font-family-heading);
  }

  .hero-stats .stat .sublabel {
    font-size: 1rem;
    line-height: 1.4em;
    font-weight: 400;
    color: var(--color-text);
    margin-top: var(--gap9);
  }

  .hero-stats .stat .label .fine-note {
    font-weight: 700;
    font-size: 1rem;
    line-height: 1;
    color: var(--color-brand-gray);
    background: transparent;
    border: 0;
    padding: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    position: relative;
    font-family: inherit;
    transition:
      color 0.2s ease,
      transform 0.2s ease;
  }

  .hero-stats .stat .label .fine-note:hover,
  .hero-stats .stat .label .fine-note:focus-visible {
    color: var(--color-brand-blue);
    transform: scale(1.05);
  }

  .hero-stats .stat .label .fine-note:focus-visible {
    outline: 2px solid var(--color-brand-blue);
    outline-offset: 2px;
  }

  .hero-stats .stat .label .fine-note[data-tooltip]::after,
  .hero-stats .stat .label .fine-note[data-tooltip]::before {
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition:
      opacity 0.2s ease,
      transform 0.2s ease;
  }

  .hero-stats .stat .label .fine-note[data-tooltip]::after {
    content: attr(data-tooltip);
    position: absolute;
    bottom: calc(100% + 6px);
    left: 50%;
    transform: translate(-50%, -4px);
    background: var(--color-brand-blue);
    color: #fff;
    padding: var(--gap24);
    border-radius: var(--gap18);
    white-space: normal;
    min-width: 220px;
    max-width: 280px;
    text-align: left;
    font-size: 0.65rem;
    font-weight: 400;
    line-height: 1.5;
    z-index: 10;
  }

  .hero-stats .stat .label .fine-note[data-tooltip]::before {
    content: "";
    position: absolute;
    bottom: calc(100% + 2px);
    left: 50%;
    transform: translate(-50%, -4px);
    width: 0;
    height: 0;
    border-left: 8px solid transparent;
    border-right: 8px solid transparent;
    border-top: 8px solid var(--color-brand-blue);
    z-index: 9;
  }

  .hero-stats .stat .label .fine-note[data-tooltip]:hover::after,
  .hero-stats .stat .label .fine-note[data-tooltip]:hover::before,
  .hero-stats .stat .label .fine-note[data-tooltip]:focus-visible::after,
  .hero-stats .stat .label .fine-note[data-tooltip]:focus-visible::before {
    opacity: 1;
    visibility: visible;
    transform: translate(-50%, 0);
  }

  .hero-stats .stat .number {
    font-family: var(--font-family-heading);
    font-size: 3.4rem;
    line-height: 1em;
    color: #008578;
    font-weight: 700;
    white-space: nowrap;
    letter-spacing: -0.05em;
    display: inline-flex;
    gap: 0.1em;
    align-items: start;
  }

  .hero-stats .stat .super {
    font-family: var(--font-family-heading);
    font-size: 1.25rem;
    line-height: 1.4em;
    letter-spacing: 0;
    font-weight: 900;
    align-self: end;
    padding-bottom: 0.1em;
  }

  .hero-stats.about-stats {
    min-width: 0;
    row-gap: var(--gap);
  }

  .hero-stats.home-stats {
    min-width: 0;
    row-gap: var(--gap);
    justify-content: center;
    text-align: center;
    flex-wrap: nowrap;
    --home-stats-divider-width: 2px;
  }

  .hero-stats.about-stats .stat {
    flex-basis: calc((100% - var(--gap48)) / 2);
    width: calc((100% - var(--gap48)) / 2);
    align-items: center;
  }

  .hero-stats.home-stats .stat {
    flex-basis: calc((100% - var(--gap48) - var(--gap48)) / 4);
    width: calc((100% - var(--gap48) - var(--gap48)) / 4);
    position: relative;
  }

  .hero-stats.home-stats.flexi .stat {
    flex-basis: auto;
    width: auto;
  }

  .hero-stats.home-stats.col3 .stat {
    flex-basis: calc((100% - var(--gap48) - var(--gap48)) / 3);
    width: calc((100% - var(--gap48) - var(--gap48)) / 3);
  }

  .hero-stats.home-stats.col3 .stat .sublabel {
    max-width: 35ch;
    margin-left: auto;
    margin-right: auto;
  }

  .hero-stats.home-stats > .stat:not(:first-child)::before {
    content: "";
    position: absolute;
    left: calc(var(--gap60) / -2);
    top: 0;
    bottom: 0;
    width: var(--home-stats-divider-width);
    background: var(--color-brand-gray);
    pointer-events: none;
  }

  .hero-stats.col2 .stat {
    flex-basis: calc((100% - var(--gap48)) / 2);
    width: calc((100% - var(--gap48)) / 2);
  }

  .hero-stats.col2 .stat .sublabel {
    max-width: 50ch;
    margin-left: auto;
    margin-right: auto;
  }

  .hero-stats.col3 .stat {
    flex-basis: calc((100% - (var(--gap48) * 2)) / 3);
    width: calc((100% - (var(--gap48) * 2)) / 3);
  }

  .hero-stats.col4 .stat {
    flex-basis: calc((100% - var(--gap48) - var(--gap48) - var(--gap48)) / 4);
    width: calc((100% - var(--gap48) - var(--gap48) - var(--gap48)) / 4);
  }

  .hero-stats.about-stats .stat .label {
    white-space: unset;
    line-height: 1.3;
  }

  .hero-stats.home-stats .stat .label {
    white-space: unset;
    line-height: 1.3;
    justify-content: center;
    text-align: center;
    font-weight: 700;
  }

  .hero-stats.home-stats .stat .number {
    justify-content: center;
    text-align: center;
  }

  .hero-stats.home-stats .stat .number.text {
    font-size: 2.2rem;
    line-height: 1em;
    white-space: normal;
  }

  .hero-stats.home-stats .stat.wide {
    flex-basis: calc((100% - var(--gap48)) / 2.5);
    width: calc((100% - var(--gap48)) / 2.5);
  }

  body.home .row-page-intro .hero-stats.home-stats {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    align-items: stretch;
    justify-items: stretch;
    column-gap: 0;
    row-gap: 0;
  }

  body.home .row-page-intro .hero-stats.home-stats .stat {
    width: 100%;
    min-width: 0;
    box-sizing: border-box;
    padding-inline: calc(var(--gap48) / 2);
    justify-content: center;
    align-items: center;
  }

  body.home .row-page-intro .hero-stats.home-stats .stat:first-child {
    padding-left: 0;
  }

  body.home .row-page-intro .hero-stats.home-stats .stat:last-child {
    padding-right: 0;
  }

  body.home
    .row-page-intro
    .hero-stats.home-stats
    > .stat:not(:first-child)::before {
    left: 0;
    width: var(--home-stats-divider-width);
  }

  body.businesses .row-property-investment .text-summary,
  body.businesses .row-property-development .text-summary,
  body.businesses .row-management-services .text-summary,
  body.businesses .row-utilities .text-summary {
    flex: 1 1 100%;
    max-width: none;
  }

  body.businesses .row-property-investment .text-description,
  body.businesses .row-property-development .text-description,
  body.businesses .row-management-services .text-description,
  body.businesses .row-utilities .text-description {
    flex: 1 1 100%;
    max-width: none;
  }

  .row-news .text-layout-wrapper {
    display: flex;
    flex-direction: column;
    gap: var(--gap48);
  }

  .row-utilities .grid-card__media {
    aspect-ratio: 3 / 2;
  }

  .row-utilities .grid-card__media img {
    object-position: top;
  }

  .row-government.is-curved {
    border-top-left-radius: 8vw;
    padding: var(--gap108) 0;
    display: flex;
    flex-direction: column;
    gap: var(--gap72);
  }

  .sustainability-layout .section-cta {
    padding-top: var(--gap12);
  }

  .arts-news {
    padding-top: var(--gap72);
    padding-bottom: var(--gap72);
  }

  body.experience2 .row-business .grid-card__media {
    aspect-ratio: 5 / 4;
  }

  body.experience2:not(.home) .row-business .text-summary,
  body.experience2:not(.home) .row-business .text-description {
    max-width: none;
    flex: 1 1 100%;
  }

  .row-lifestyle {
    background-color: var(--color-surface);
    padding-block: calc(var(--gap108));
    padding-top: var(--gap108);
    border-top-left-radius: 8vw;
  }

  body.experience2 .row-lifestyle .text-summary {
    flex-basis: 100%;
    max-width: 800px;
    text-align: center;
    align-items: center;
  }

  body.experience2 .row-lifestyle .text-layout-wrapper {
    display: flex;
    flex-direction: column;
    gap: var(--gap48);
  }

  body.experience2 .row-lifestyle {
    padding-bottom: var(--gap72);
  }

  .section-intro-copy {
    margin: 0;
    font-size: 1rem;
    line-height: 1.6;
    color: var(--color-text);
  }

  .section-intro-copy > * {
    margin: 1em 0;
  }

  .section-intro-copy > *:first-child {
    margin-top: 0;
  }

  .section-intro-copy > *:last-child {
    margin-bottom: 0;
  }

  .flex-col {
    flex: 1 1 100%;
    display: flex;
    flex-direction: column;
  }

  .flex-col.sustain-intro {
    gap: var(--gap48);
    /* max-width: 560px; */
  }

  .inline-menu {
    flex: 1 1 100%;
    display: flex;
    flex-direction: column;
    gap: var(--gap18);
  }

  .inline-menu .menu-title {
    font-family: var(--font-family-heading);
    font-weight: bold;
    font-size: 1.25rem;
    line-height: 1.2;
    font-weight: 700;
    color: var(--color-brand-blue);
  }

  .inline-menu ul {
    display: flex;
    flex-wrap: wrap;
  }

  .inline-menu ul li {
    flex-basis: 50%;
  }

  .inline-menu ul li a {
    display: flex;
    justify-content: space-between;
    padding: var(--gap18) 0;
    align-items: center;
    border-top: 1px solid var(--color-brand-light-gray);
    font-size: 1.06rem;
    font-weight: bold;
    font-family: var(--font-family-heading);
  }

  .style-dark .inline-menu ul li a {
    color: var(--color-white);
  }

  .style-dark .inline-menu ul.downloads li a:before {
    background-image: url(../images/icons/icon-new-tab-white.svg);
  }

  .inline-menu ul li:nth-child(odd) a {
    padding-right: var(--gap18);
  }

  .inline-menu ul li:nth-child(even) a {
    padding-left: var(--gap18);
  }

  .inline-menu ul li a:after {
    content: " ";
    width: var(--gap24);
    height: var(--gap24);
    flex-shrink: 0;
    flex-grow: 0;
    background: transparent url(../images/icons/icon-menu-inpage-chevron.svg)
      center center/contain no-repeat;
  }

  .inline-menu ul li a.open-modal:after {
    transform: rotate(-90deg);
  }

  .inline-menu ul.downloads {
    flex-wrap: nowrap;
    flex-direction: column;
    gap: var(--gap9);
  }

  .inline-menu ul.downloads li a {
    justify-content: start;
    gap: var(--gap9);
    font-size: 1rem;
    line-height: 1.5;
    border: 0;
    padding: 0;
    align-items: start;
  }

  .inline-menu ul.downloads li:nth-child(odd) a,
  .inline-menu ul.downloads li:nth-child(even) a {
    padding-left: 0;
    padding-right: 0;
  }

  .inline-menu ul.downloads li a:after {
    content: "";
    display: none;
  }

  .inline-menu ul.downloads li a:before {
    content: " ";
    width: var(--gap24);
    height: var(--gap24);
    flex-shrink: 0;
    flex-grow: 0;
    background: transparent url(../images/icons/icon-new-tab.svg) center
      center/contain no-repeat;
  }

  .card-rail .inline-menu ul.downloads li a:before {
    background-image: url(../images/icons/icon-new-tab-white.svg);
  }

  .section.standard {
    padding: 0;
  }

  .section.standard .section-wrapper {
    padding: var(--gap108) var(--gap72);
  }

  .section.standard .section-wrapper .flex-block {
    display: flex;
  }

  .top-left-curve {
    border-top-left-radius: 8vw;
    overflow: hidden;
  }

  .top-right-curve {
    border-top-right-radius: 8vw;
    overflow: hidden;
  }

  .bottom-left-curve {
    border-bottom-left-radius: 8vw;
    overflow: hidden;
  }

  .bottom-right-curve {
    border-bottom-right-radius: 8vw;
    overflow: hidden;
  }

  .hero-quote {
    position: relative;
    text-align: justify;
  }

  .hero-quote:before {
    content: " ";
    display: block;
    position: absolute;
    right: calc(100% + 1rem);
    top: -0.5rem;
    height: 2.2rem;
    width: 2.2rem;
    background: transparent url(../images/icons/icon-open-quote.svg) center
      center/contain no-repeat;
  }

  .hero-quote:after {
    content: " ";
    display: inline-block;
    position: absolute;
    /* left: calc(100% + 1rem); */
    /* bottom: -0.5rem; */
    height: 2.2rem;
    width: 2.2rem;
    background: transparent url(../images/icons/icon-close-quote.svg) center
      center/contain no-repeat;
    transform: translate(60%, 30%);
  }

  .hero-quote .quote-title {
    display: flex;
    flex-direction: column;
    gap: var(--gap6);
  }

  .hero-quote .quote-name {
    font-size: 1rem;
    color: var(--color-brand-blue);
  }

  .hero-quote .quote-position {
    font-size: 0.9rem;
  }

  .quote-author {
    display: flex;
    gap: var(--gap18);
    align-items: center;
  }

  .quote-author .thumb {
    flex: 0 0 var(--gap72);
    background-color: var(--color-brand-light-gray);
    aspect-ratio: 1;
    border-bottom-right-radius: var(--gap24);
  }

  .row-vision {
    border-top: 1px solid var(--color-brand-gray);
    border-bottom: 1px solid var(--color-brand-gray);
  }

  .accordion-items.style-light .accordion-item {
    border-top-color: var(--color-brand-light-gray);
  }

  .accordion-items.style-light .accordion-item.opened {
    border-top-color: var(--color-brand-army);
  }

  .accordion-items.text-style .accordion-item .item-heading {
    font-style: normal;
    font-weight: 700;
    min-height: 0 !important;
  }

  .accordion-items.text-style .accordion-item.opened .item-heading {
    padding-bottom: var(--gap18);
  }

  .accordion-items.tab-style .accordion-item {
    border-top-color: var(--color-brand-light-gray);
    padding: var(--gap);
  }

  .accordion-items.tab-style .accordion-item.opened {
    border-top-color: transparent;
    background-color: var(--color-surface);
  }

  .accordion-items.tab-style .accordion-item .item-heading {
    min-height: 0;
    padding: 0;
  }

  .accordion-items.tab-style .accordion-item.opened .item-heading {
    padding: 0 0 var(--gap);
  }

  .accordion-items.tab-style .accordion-item .item-content {
    padding: var(--gap) 0 0;
    border-top: 1px solid var(--color-brand-light-gray);
  }

  .accordion-items.tab-style .accordion-item .item-heading .icon-heading {
    display: flex;
    gap: var(--gap18);
    align-items: center;
  }

  .accordion-items.tab-style
    .accordion-item
    .item-heading
    .icon-heading:before {
    content: " ";
    display: block;
    height: 64px;
    width: 64px;
    flex-basis: 64px;
    flex-shrink: 0;
    flex-grow: 0;
    background: transparent url(../images/icons/icon-planet2.svg) center
      center/contain no-repeat;
  }

  .accordion-items.tab-style
    .accordion-item.people
    .item-heading
    .icon-heading:before {
    background: transparent url(../images/icons/icon-people2.svg) center
      center/contain no-repeat;
  }

  .accordion-items.tab-style
    .accordion-item.peace
    .item-heading
    .icon-heading:before {
    background: transparent url(../images/icons/icon-peace2.svg) center
      center/contain no-repeat;
  }

  .accordion-items.tab-style
    .accordion-item.prosperity
    .item-heading
    .icon-heading:before {
    background: transparent url(../images/icons/icon-prosperity2.svg) center
      center/contain no-repeat;
  }

  .icons-un {
    display: flex;
    gap: var(--gap12);
  }

  .icons-un img {
    display: block;
    width: 80px;
  }

  .green-list {
    list-style: none;
    margin: 0;
    padding: 0;
  }

  .green-list li {
    position: relative;
    padding-left: var(--gap18);
    /* space for the icon */
    margin-bottom: var(--gap9);
  }

  .green-list > li:last-child {
    margin-bottom: 0;
  }

  .green-list li::before {
    content: "";
    position: absolute;
    top: 50%;
    /* adjust vertically */
    transform: translateY(-50%);
    left: 0;
    width: 8px;
    height: 8px;
    background-repeat: no-repeat;
    background-size: contain;
    /* Put your SVG here (URL-encoded) */
    background-image: url(../images/icons/icon-bullet-green.svg);
  }

  .inline-menu.modal ul {
    flex-direction: column;
    flex-wrap: nowrap;
  }

  .inline-menu.modal ul li:nth-child(even) a {
    padding-left: 0;
  }

  .inline-menu.modal ul li:nth-child(odd) a {
    padding-right: 0;
  }

  .inline-menu.modal ul > li:last-child a {
    padding-bottom: 0;
  }

  .modal-menu {
    flex: 1 1 100%;
    max-width: 360px;
  }

  .hidden-modal-content {
    display: none;
  }

  .legacy-thumbnail-modal,
  .award-thumbnail-modal {
    display: flex;
    flex-direction: column;
    gap: var(--gap12);
    text-align: center;
  }

  .legacy-thumbnail-modal img,
  .award-thumbnail-modal img {
    display: block;
    width: 100%;
    height: auto;
    max-width: 100%;
    max-height: calc(
      100vh - var(--gap72) - (var(--gap48) * 2) - var(--gap108) - var(--gap18)
    );
    margin-inline: auto;
    object-fit: contain;
  }

  .site-modal {
    position: fixed;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: var(--gap72) var(--gap24);
    z-index: 1200;
    background: rgb(255 255 0255 / 0.5);
    backdrop-filter: blur(18px) saturate(140%);
    -webkit-backdrop-filter: blur(18px) saturate(140%);
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition:
      opacity 0.35s ease,
      visibility 0.35s ease;
  }

  .site-modal.is-visible {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
  }

  .site-modal__dialog {
    position: relative;
    width: min(var(--medium-width), 100%);
    max-height: calc(100vh - var(--gap72));
    overflow: auto;
    background-color: var(--color-white);
    border-radius: var(--gap18);
    padding: var(--gap48);
    box-shadow: 0 20px 60px rgb(0 0 0 / 0.4);
  }

  .site-modal--frameless .site-modal__dialog {
    width: auto;
    width: fit-content;
    max-width: calc(100vw - var(--gap48));
    max-height: calc(100vh - var(--gap72));
    overflow: visible;
    padding: 0;
    background-color: transparent;
    box-shadow: none;
  }

  .site-modal--frameless .site-modal__body {
    display: flex;
    flex-direction: column;
    align-items: center;
  }

  .site-modal--frameless .legacy-thumbnail-modal img,
  .site-modal--frameless .award-thumbnail-modal img {
    width: auto;
    max-width: 100%;
    box-shadow: 0 10px 24px rgb(0 0 0 / 0.35);
  }

  .site-modal--frameless .site-modal__close {
    z-index: 2;
    top: 0;
    right: 0;
    transform: translate(50%, -50%);
    box-shadow: 0 10px 24px rgb(0 0 0 / 0.35);
  }

  .site-modal--drawer {
    align-items: stretch;
    justify-content: flex-end;
    padding: 0;
    background: transparent;
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
  }

  .site-modal--drawer .site-modal__dialog {
    width: min(var(--limit-width), 100%);
    max-height: 100vh;
    border-radius: 0;
    padding: var(--gap72);
    box-shadow: -12px 0 48px rgb(0 0 0 / 0.35);
    transform: translateX(110%);
    transition: transform 0.7s cubic-bezier(0.22, 0.61, 0.36, 1);
    will-change: transform;
    overflow-x: hidden;
  }

  .site-modal--drawer.is-visible .site-modal__dialog {
    transform: translateX(0);
  }

  .site-modal--drawer .site-modal__dialog.full-width {
    width: 100%;
    max-width: 100%;
  }

  .site-modal--drawer .site-modal__dialog.limit-width {
    width: 100%;
    max-width: var(--limit-width);
  }

  .site-modal--drawer .site-modal__dialog.medium-width {
    width: 100%;
    max-width: var(--medium-width);
  }

  .site-modal--drawer .site-modal__dialog.narrow-width {
    width: 100%;
    max-width: var(--narrow-width);
  }

  .site-modal__close {
    position: absolute;
    top: var(--gap18);
    right: var(--gap18);
    border: 1px solid #ffffff;
    background-color: var(--color-brand-blue);
    background-image: url(../images/icons/icon-modal-close-white.svg);
    background-repeat: no-repeat;
    background-position: center;
    background-size: var(--gap18) var(--gap18);
    color: var(--color-brand-black);
    border-radius: 999px;
    width: var(--gap);
    height: var(--gap);
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition:
      border-color 0.2s ease,
      background-color 0.2s ease;
  }

  .site-modal__nav {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: var(--gap24);
    margin-top: var(--gap18);
  }

  .site-modal__nav[hidden] {
    display: none;
  }

  .site-modal__nav-button {
    background-color: var(--color-white);
  }

  .site-modal__nav-button:disabled {
    box-shadow: none;
  }

  .site-modal__nav-button:focus-visible {
    outline: 2px solid var(--color-brand-blue);
    outline-offset: 2px;
  }

  .site-modal__body > :first-child {
    margin-top: 0;
  }

  .site-modal__body > :last-child {
    margin-bottom: 0;
  }

  .search-modal {
    display: flex;
    flex-direction: column;
    gap: var(--gap24);
  }

  .social-directory-modal {
    display: flex;
    flex-direction: column;
    gap: var(--gap24);
  }

  .social-directory__header {
    display: flex;
    flex-direction: column;
    gap: var(--gap12);
  }

  .social-directory__list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: var(--gap18);
  }

  .social-directory__item {
    background-color: var(--color-surface);
    border-radius: var(--gap12);
    padding: var(--gap18);
    display: flex;
    flex-direction: column;
    gap: var(--gap12);
  }

  .social-directory__name {
    font-family: var(--font-family-heading);
    font-weight: 700;
    color: var(--color-brand-blue);
    font-size: 1.2rem;
    line-height: 1.2;
  }

  .social-directory__links {
    display: flex;
    flex-wrap: wrap;
    gap: var(--gap12);
    align-items: center;
  }

  .social-directory__link {
    display: inline-flex;
    align-items: center;
    text-decoration: none;
    font-size: 0.85rem;
    font-weight: 600;
    transition: transform 0.2s ease;
  }

  .social-directory__icon {
    width: 24px;
    height: 24px;
    display: block;
    flex-shrink: 0;
  }

  .social-directory__link:hover,
  .social-directory__link:focus-visible {
    color: inherit;
  }

  .social-directory__link:hover .social-directory__icon,
  .social-directory__link:focus-visible .social-directory__icon {
    filter: brightness(0) saturate(100%);
  }

  .social-directory__missing {
    font-size: 0.8rem;
    color: var(--color-text-gray);
  }

  .social-directory__website {
    font-size: 0.8rem;
    color: var(--color-brand-blue);
    text-decoration: none;
    font-weight: 600;
  }

  .social-directory__website:hover,
  .social-directory__website:focus-visible {
    text-decoration: underline;
  }

  .search-modal__header {
    display: flex;
    flex-direction: column;
    gap: var(--gap9);
  }

  .search-form {
    display: flex;
    flex-direction: column;
    gap: var(--gap18);
  }

  .search-form__field {
    display: flex;
    align-items: flex-end;
    gap: var(--gap12);
  }

  .search-form__field input {
    flex: 1;
  }

  .search-form__field input[type="search"] {
    min-width: 30ch;
  }

  body.is-modal-open {
    overflow: hidden;
  }

  .open-modal {
    cursor: pointer;
  }

  .policies-download > .col {
    flex-basis: 100%;
  }

  .report-list {
    display: flex;
    flex-wrap: wrap;
    gap: var(--gap);
    width: 100%;
  }

  .report-list li {
    /* flex-basis: calc(50% - var(--gap18)); */
    flex-basis: calc((100% - (var(--gap) * 1)) / 2);
  }

  .report-item {
    display: flex;
    gap: var(--gap18);
  }

  .report-item.vertical {
    flex-direction: column;
  }

  .report-item .thumb {
    flex-basis: 40%;
    flex-shrink: 0;
    flex-grow: 0;
  }

  .report-item .thumb img {
    display: block;
    width: 100%;
  }

  .report-item .report-details {
    flex-basis: 70%;
    display: flex;
    flex-direction: column;
    gap: var(--gap9);
    justify-content: center;
  }

  .report-item .report-details .report-desc {
    padding-top: var(--gap9);
  }

  .report-item .report-details .report-action {
    padding-top: var(--gap9);
  }

  .report-item .report-details .report-action a {
    display: flex;
    justify-content: start;
    gap: var(--gap9);
    font-size: 1rem;
    line-height: 1.1;
    border: 0;
    padding: 0;
    font-weight: bold;
    font-family: var(--font-family-heading);
    align-items: center;
    color: var(--color-text);
  }

  .report-item .report-details .report-action a:before {
    content: " ";
    width: var(--gap24);
    height: var(--gap24);
    flex-shrink: 0;
    flex-grow: 0;
    background: transparent url(../images/icons/icon-new-tab.svg) center
      center/contain no-repeat;
  }

  .four-pillar-chart {
    --four-pillar-ring: rgb(255 255 255 / 0.1);
    --four-pillar-planet: #58b7aa;
    --four-pillar-people: #e88a2f;
    --four-pillar-peace: #2c4a68;
    --four-pillar-prosperity: #b9d7a2;
    --four-pillar-size: clamp(280px, 34vw, 520px);
    display: flex;
    gap: var(--gap72);
    align-items: center;
  }

  .chart2 .four-pillar-chart {
    gap: 0;
  }

  .chart-home .four-pillar-chart {
    gap: 0;
  }

  .chart-home .four-pillar-chart .four-pillar-chart__panel {
    text-align: center;
  }

  .chart-home .four-pillar-chart__segment path {
    fill: var(--four-pillar-ring);
    stroke: var(--color-white);
    stroke-width: 0;
    stroke-linejoin: round;
  }

  .chart-home .four-pillar-chart__segment[data-key="planet"] {
    --four-pillar-active-fill: var(--four-pillar-planet);
  }

  .chart-home .four-pillar-chart__segment[data-key="people"] {
    --four-pillar-active-fill: var(--four-pillar-people);
  }

  .chart-home .four-pillar-chart__segment[data-key="peace"] {
    --four-pillar-active-fill: var(--four-pillar-peace);
  }

  .chart-home .four-pillar-chart__segment[data-key="prosperity"] {
    --four-pillar-active-fill: var(--four-pillar-prosperity);
  }

  .chart-home .four-pillar-chart__segment[aria-pressed="true"] path {
    fill: var(--four-pillar-active-fill, transparent);
  }

  .four-pillar-chart__viz {
    flex-basis: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
  }

  .four-pillar-chart__svg {
    width: 100%;
    height: auto;
    aspect-ratio: 1 / 1;
  }

  .four-pillar-chart__center {
    font-size: 1rem;
    font-weight: 700;
    text-anchor: middle;
    fill: rgb(255 255 255 / 0.7);
    letter-spacing: 0.04em;
  }

  .chart1 .four-pillar-chart__center {
    fill: var(--color-white);
    font-family: var(--font-family-heading);
  }

  .four-pillar-chart__panel {
    flex-basis: 100%;
    display: flex;
    flex-direction: column;
    gap: var(--gap18);
  }

  .four-pillar-chart__title {
    font-family: var(--font-family-heading);
    font-size: 1.5rem;
    font-style: normal;
    font-weight: 700;
    line-height: 1.2;
    color: var(--color-brand-army);
  }

  .four-pillar-chart__panels {
    display: block;
  }

  .four-pillar-chart__article[hidden] {
    display: none !important;
  }

  .four-pillar-chart__panels-holder {
    position: relative;
    width: 100%;
    overflow: hidden;
    min-height: 160px;
  }

  .chart-home .four-pillar-chart .four-pillar-chart__panels-holder {
    min-height: 90px;
  }

  .four-pillar-chart__segment-content {
    pointer-events: none;
  }

  .four-pillar-chart__segment {
    cursor: pointer;
    outline: none;
    transform-origin: 50% 50%;
    transform-box: fill-box;
  }

  .four-pillar-chart__segment-label {
    pointer-events: none;
    font-size: 0.5rem;
    letter-spacing: 0;
    font-family: var(--font-family-heading);
    font-weight: 700;
    line-height: 1em;
    fill: var(--color-white);
  }

  .four-pillar-chart__segment:focus-visible {
    filter: drop-shadow(0 0 0.4rem rgb(0 0 0 / 0.4));
  }

  .four-pillar-chart__segment-icon {
    pointer-events: none;
    filter: drop-shadow(0 1px 4px rgb(0 0 0 / 0.2));
  }

  .four-pillar-chart__segment-content-inner {
    transform-origin: 50% 50%;
    transform-box: fill-box;
    transition: transform 0.3s ease;
    transform: var(--four-pillar-content-transform, translate(0, 0));
  }

  .four-pillar-chart__segment[data-key="planet"]
    .four-pillar-chart__segment-content-inner {
    transform: var(--four-pillar-content-transform, translate(0, 20%));
  }

  .four-pillar-chart__segment[data-key="peace"]
    .four-pillar-chart__segment-content-inner {
    transform: var(--four-pillar-content-transform, translate(0, 20%));
  }

  .four-pillar-chart__segment:hover .four-pillar-chart__segment-content-inner,
  .four-pillar-chart__segment:focus-visible
    .four-pillar-chart__segment-content-inner,
  .four-pillar-chart__segment[aria-pressed="true"]
    .four-pillar-chart__segment-content-inner {
    transform: var(--four-pillar-content-transform, translate(0, 0))
      scale(var(--four-pillar-content-scale, 1.2));
  }

  .four-pillar-chart__segment[data-key="planet"]:hover
    .four-pillar-chart__segment-content-inner,
  .four-pillar-chart__segment[data-key="planet"]:focus-visible
    .four-pillar-chart__segment-content-inner,
  .four-pillar-chart__segment[data-key="planet"][aria-pressed="true"]
    .four-pillar-chart__segment-content-inner {
    transform: var(--four-pillar-content-transform, translate(0, 20%))
      scale(var(--four-pillar-content-scale, 1.2));
  }

  .four-pillar-chart__segment[data-key="peace"]:hover
    .four-pillar-chart__segment-content-inner,
  .four-pillar-chart__segment[data-key="peace"]:focus-visible
    .four-pillar-chart__segment-content-inner,
  .four-pillar-chart__segment[data-key="peace"][aria-pressed="true"]
    .four-pillar-chart__segment-content-inner {
    transform: var(--four-pillar-content-transform, translate(0, 20%))
      scale(var(--four-pillar-content-scale, 1.2));
  }

  .accordion-items.for-chart .accordion-item .item-heading {
    font-size: 1rem;
  }

  .accordion-items.style-dark .accordion-item {
    color: var(--color-brand-light-gray);
  }

  .chart-pillar {
    width: 100%;
  }

  .full-flex {
    width: 100%;
  }

  .accordion-items.for-chart {
    width: 100%;
  }

  .un-icons {
    display: flex;
    flex-wrap: wrap;
    max-width: 482px;
  }

  .un-icons img {
    display: block;
    width: 96px;
  }

  .chart-governance-structure,
  .chart-governance-committee {
    display: block;
    width: 100%;
  }

  .chart-matrix {
    position: relative;
  }

  .chart-matrix img {
    display: block;
    width: 100%;
  }

  .chart-matrix img:not(.base) {
    position: absolute;
    top: 0;
    left: 0;
  }

  .chart-matrix img:not(.base):not(.show) {
    visibility: hidden;
  }

  .item-heading .m {
    display: inline-flex;
    gap: var(--gap12);
  }

  .item-heading .m img {
    display: block;
    height: 20px;
    width: 20px;
  }

  .col-matrix {
    flex-basis: calc(33% - var(--gap));
  }

  .chart-pillar.chart2 {
    flex-basis: 66%;
  }

  .contact-list {
    width: 100%;
  }

  .open-all .accordion-item.opened {
    border-top-color: var(--color-brand-gray);
  }

  .open-all .accordion-item.opened .item-content {
    padding-bottom: var(--gap18);
  }

  .icon-charts {
    display: flex;
    flex-direction: column;
    width: 100%;
    gap: var(--gap);
  }

  .icon-charts .icon-chart-row {
    display: flex;
    gap: var(--gap);
    align-items: start;
    width: 100%;
    border-top: 1px solid var(--color-brand-light-gray);
    padding-top: var(--gap24);
  }

  .icon-charts .icon-chart-row .topic {
    flex-basis: 100%;
    max-width: 200px;
  }

  .pillar-stats {
    flex-basis: 100%;
    width: 100%;
    display: flex;
    gap: var(--gap);
    align-items: start;
    flex-wrap: wrap;
  }

  .pillar-stats .pillar-stat {
    flex-basis: calc(33% - var(--gap24));
  }

  .topic {
    display: flex;
    gap: var(--gap12);
    align-items: center;
  }

  .topic.planet:before {
    content: " ";
    display: block;
    height: 2.62rem;
    width: 2.62rem;
    background: transparent url(../images/icons/icon-planet2.svg) center
      center/contain no-repeat;
  }

  .topic.people:before {
    content: " ";
    display: block;
    height: 2.62rem;
    width: 2.62rem;
    background: transparent url(../images/icons/icon-people2.svg) center
      center/contain no-repeat;
  }

  .topic.peace:before {
    content: " ";
    display: block;
    height: 2.62rem;
    width: 2.62rem;
    background: transparent url(../images/icons/icon-peace2.svg) center
      center/contain no-repeat;
  }

  .topic.prosperity:before {
    content: " ";
    display: block;
    height: 2.62rem;
    width: 2.62rem;
    background: transparent url(../images/icons/icon-prosperity2.svg) center
      center/contain no-repeat;
  }

  .pillar-stats .pillar-stat .running-num {
    display: flex;
    align-items: start;
  }

  .pillar-stats .pillar-stat .super {
    font-family: var(--font-family-heading);
    font-size: 1.25rem;
    font-style: normal;
    font-weight: 700;
    line-height: 1.2;
    padding-left: 0.3em;
    padding-top: 0.3em;
  }

  .row-partnership .grid-card__media {
    aspect-ratio: 1 / 1;
  }

  .row-partnership .text-summary .section-label {
    justify-content: center;
  }

  .row-investor {
    display: flex;
    flex-direction: column;
    gap: var(--gap48);
    padding-top: var(--gap108);
  }

  .row-investor .text-layout-wrapper {
    justify-content: center;
  }

  .row-investor .text-summary {
    flex-basis: 80%;
    max-width: 800px;
    text-align: center;
  }

  .row-investor .text-summary .section-label {
    justify-content: center;
  }

  .row-investor .investor-section {
    flex-basis: 55%;
    max-width: none;
  }

  .row-investor .more-download {
    padding-top: var(--gap);
    display: flex;
    flex-direction: column;
    gap: var(--gap18);
  }

  .download-cols {
    display: flex;
    gap: var(--gap);
    align-items: start;
  }

  .more-download .menu-title {
    font-family: var(--font-family-heading);
    font-weight: bold;
    font-size: 1.25rem;
    line-height: 1.2;
    font-weight: 700;
    color: var(--color-brand-blue);
  }

  .row-investor .text-summary .section-label:before {
    background-image: url(../images/icons/icon-investor.svg);
  }

  .row-partnership .text-summary .section-label:before {
    background-image: url(../images/icons/icon-partnership.svg);
  }

  .data-table {
    width: 100%;
    border-collapse: separate;
    border-spacing: 0;
    background-color: var(--color-white);
    border-radius: var(--gap12);
    overflow: hidden;
    border: 1px solid var(--color-brand-light-gray);
    box-shadow: 0 18px 40px rgb(0 0 0 / 0.06);
    table-layout: fixed;
  }

  .data-table thead tr {
    background: linear-gradient(
      90deg,
      var(--color-brand-blue),
      var(--color-brand-green)
    );
  }

  .data-table th,
  .data-table td {
    text-align: left;
    padding: 0.95rem 1.2rem;
  }

  .data-table th {
    font-family: var(--font-family-heading);
    font-size: 0.9rem;
    font-weight: 700;
    line-height: 1.2;
    color: var(--color-white);
    border-bottom: 1px solid rgb(255 255 255 / 0.25);
  }

  .data-table th:first-child {
    width: 26%;
  }

  .data-table td:first-child {
    color: var(--color-brand-blue);
    font-weight: 700;
    white-space: nowrap;
  }

  .data-table td {
    font-size: 0.9rem;
    line-height: 1.2;
    color: var(--color-text);
    border-bottom: 1px solid var(--color-brand-light-gray);
    overflow-wrap: anywhere;
  }

  .data-table tbody tr:nth-child(even) {
    background-color: var(--color-surface);
  }

  .data-table tbody tr:hover {
    background-color: rgb(var(--color-brand-green-rgb) / 0.12);
  }

  .data-table tbody tr:last-child td {
    border-bottom: none;
  }

  .chart-home .four-pillar-chart__panel {
    flex-basis: 50%;
  }

  .about-video {
    overflow: hidden;
    border-radius: 16px;
  }

  .legacy-carousel {
    position: relative;
    isolation: isolate;
    width: 100%;
    aspect-ratio: 16 / 9;
    border-radius: var(--gap18);
    overflow: hidden;
    background-color: #e8ecea;
  }

  .legacy-carousel__background {
    position: absolute;
    inset: 0;
    z-index: 0;
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    object-position: center;
    pointer-events: none;
    user-select: none;
  }

  .legacy-carousel::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(0deg, rgba(0, 0, 0, 0.25), rgba(0, 0, 0, 0));
    pointer-events: none;
    opacity: 0.6;
    z-index: 0;
  }

  .legacy-carousel__fallback {
    position: relative;
    z-index: 1;
    width: 100%;
    height: 100%;
    object-fit: contain;
    object-position: center;
    display: block;
  }

  .legacy-slide {
    position: absolute;
    inset: 0;
    opacity: 0;
    transform: scale(1);
    transition: opacity 0.9s ease;
    will-change: opacity;
  }

  .legacy-slide img {
    position: relative;
    z-index: 1;
    width: 100%;
    height: 100%;
    object-fit: contain;
    object-position: center;
    display: block;
    filter: saturate(1.05);
  }

  .legacy-slide__caption {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    color: #ffffff;
    font-size: 0.9rem;
    line-height: 1.4;
    font-weight: 500;
    text-shadow: 0 2px 8px rgb(0 0 0 / 0.65);
    z-index: 2;
    padding: var(--gap18) var(--gap24);
    background: linear-gradient(
      180deg,
      rgb(0 0 0 / 0.05) 0%,
      rgb(0 0 0 / 0.75) 100%
    );
    z-index: 3;
  }

  .legacy-slide.is-active {
    opacity: 1;
    transform: scale(1);
    z-index: 1;
  }

  .about-expand {
    /* padding-top: var(--gap72);
    border-top: 1px solid var(--color-brand-light-gray); */
  }

  .latest-project-image img {
    transition: opacity 280ms ease;
  }

  .business-layout.latest-projects {
    padding-left: 0;
  }

  .about-expand .dropdown-accordion .accordion-title {
    color: var(--color-brand-blue);
  }

  .about-expand .dropdown-accordion .accordion-item {
    border-top-color: var(--color-brand-light-gray);
  }

  .about-expand .dropdown-accordion .accordion-item .item-heading {
    font-size: 1.1rem;
    min-height: 0px;
  }

  .text-column-layout {
    display: flex;
    flex-direction: column;
    gap: var(--gap);
    width: 100%;
  }

  .about-shared-values {
    background: linear-gradient(
      135deg,
      var(--color-brand-blue),
      var(--color-brand-green)
    );
  }

  .about-behaviours {
    background: var(--color-brand-blue);
  }

  .text-column-layout .columns {
    width: 100%;
    display: flex;
    gap: var(--gap24);
  }

  .text-column-layout .columns .column {
    flex: 1 1 100%;
    padding: var(--gap);
    border-radius: var(--gap18);
    display: flex;
    flex-direction: column;
    gap: var(--gap12);
    text-align: center;
    background-color: var(--color-white);
    box-shadow: 0 0 20px rgba(0, 0, 0, 0.18);
  }

  .legacy-pillars .columns .column {
    position: relative;
    padding: 0;
    flex-direction: row;
    box-shadow: none;
  }

  /* .legacy-pillars .columns .column::after {
    content: "";
    position: absolute;
    top: 50%;
    right: calc(var(--gap24) * -0.5);
    width: var(--gap);
    height: var(--gap);
    background-color: var(--color-brand-army);
    border-radius: 999px;
    transform: translate(50%, -50%);
    pointer-events: none;
    z-index: 1;
} */

  /* .legacy-pillars .columns .column::before {
    content: "";
    position: absolute;
    top: 50%;
    right: calc(var(--gap24) * -0.5);
    width: var(--gap);
    height: var(--gap);
    background: url("../images/icons/icon-chevron.svg") no-repeat center / 30%;
    transform: translate(50%, -50%) rotate(-90deg);
    filter: brightness(0) invert(1);
    pointer-events: none;
    z-index: 2;
}

.legacy-pillars .columns .column:last-child::after {
    content: none;
}

.legacy-pillars .columns .column:last-child::before {
    content: none;
} */

  .legacy-pillars .columns {
    gap: var(--gap);
  }

  .legacy-pillars .columns .column {
    overflow: hidden;
  }

  .legacy-pillars .columns .column .column-thumb {
    flex-basis: 40%;
  }

  .legacy-pillars .columns .column .column-thumb img {
    height: 100%;
    width: 100%;
    object-fit: cover;
    object-position: center;
  }

  .legacy-pillars .columns .column .column-content {
    flex-basis: 60%;
    text-align: left;
    padding: var(--gap);
    display: flex;
    flex-direction: column;
  }

  .legacy-pillars .columns .column .column-content p {
    text-align: justify;
  }

  .about-shared-values .text-column-layout .columns .column {
    padding: 0;
    background-color: transparent;
    border-radius: 0;
  }

  .text-column-layout .columns .column .icon {
  }

  .text-column-layout .columns .column .icon img {
    display: block;
    width: var(--gap48);
    height: var(--gap48);
    margin: 0 auto;
  }

  .text-column-layout .columns .column.noborder {
    border-left: 0;
  }

  .shared-values-carousel,
  .shared-values-grid {
    width: 100%;
  }

  .shared-values-carousel .shared-value-card,
  .shared-values-grid .shared-value-card {
    background: rgba(255, 255, 255, 0.1);
    border-radius: var(--gap18);
    border: 1px solid transparent;
    padding: var(--gap);
    text-align: center;
    align-items: center;
    gap: var(--gap12);
    transition: all 0.5s ease;
  }

  .shared-values-grid .shared-value-card.horizontal {
    flex-direction: row;
    justify-content: center;
  }

  .shared-values-grid .shared-value-card.horizontal .column-title {
  }

  .shared-values-carousel .shared-value-card .icon img,
  .shared-values-grid .shared-value-card .icon img {
    width: calc(var(--gap) * 1.5);
    height: calc(var(--gap) * 1.5);
    display: block;
    margin: 0 auto;
    object-fit: contain;
    filter: brightness(0) invert(1);
  }

  .shared-values-carousel .grid-controls {
    justify-content: center;
    gap: var(--gap12);
  }

  .award-filters {
    display: flex;
    justify-content: flex-start;
    gap: var(--gap);
    align-items: center;
  }

  .award-filter.keyword {
    align-self: flex-start;
    margin-left: auto;
  }

  .award-filter.keyword input {
    border: 0;
    border-bottom: 1px solid var(--color-brand-blue);
    background-color: transparent;
    appearance: none;
    -webkit-appearance: none;
    outline: none;
    font-family: var(--font-family-heading);
    color: var(--color-brand-blue);
    font-size: 1.3rem;
    line-height: 1.2;
    padding: var(--gap9) 0;
    max-width: 15ch;
  }

  .style-dark .award-filter.keyword input {
    color: var(--color-white);
    border-bottom: 1px solid var(--color-white);
  }

  .award-filter.keyword input::placeholder {
    color: var(--color-text-gray);
  }

  .project-info {
    margin-bottom: var(--gap18);
  }

  .latest-projects .business-featured {
    flex-basis: 100%;
  }

  .latest-projects .business-featured .grid-card {
    flex-basis: 100%;
  }

  .winning-strategy {
    width: 100%;
    border-top: 1px solid var(--color-brand-light-gray);
    border-bottom: 1px solid var(--color-brand-light-gray);
    padding-block: var(--gap72);
  }

  .winning-strategy .medium-width {
    margin-left: auto;
    margin-right: auto;
  }

  .accordion-items-group {
    display: flex;
    gap: var(--gap48);
  }

  .accordion-items-group .accordion-items {
    flex-basis: 100%;
    width: 100%;
  }

  .project-modal-content {
    align-items: center;
    width: 100%;
  }

  .project-modal-content .col {
    flex-basis: 100%;
  }

  .project-modal-content .col img {
    aspect-ratio: 4 / 3;
    display: block;
    width: 100%;
    object-fit: cover;
  }

  .projects-gallery-group {
    display: flex;
    flex-direction: column;
    gap: 1px;
    padding-bottom: 1px;
    width: 100%;
  }

  .projects-gallery-group.projects-gallery-thumbs {
    gap: var(--gap24);
    padding-bottom: 0;
  }

  .projects-gallery-group.projects-gallery-thumbs .projects-gallery {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: var(--gap);
    min-height: auto;
    background-color: transparent;
  }

  .projects-gallery-group.projects-gallery-thumbs .project-card {
    flex: initial;
    min-height: auto;
    height: auto;
    overflow: visible;
    gap: var(--gap12);
    transition:
      transform 0.3s ease,
      box-shadow 0.3s ease;
  }

  .projects-gallery-group.projects-gallery-thumbs .project-card__media {
    position: relative;
    inset: auto;
    width: 100%;
    height: auto;
    aspect-ratio: 16 / 9;
    border-radius: var(--gap12);
    overflow: hidden;
  }

  .projects-gallery-group.projects-gallery-thumbs .project-card__media img {
    filter: none;
  }

  .projects-gallery-group.projects-gallery-thumbs .project-card__media::after {
    display: none;
  }

  .projects-gallery-group.projects-gallery-thumbs .project-card__content {
    position: static;
    padding: 0;
    height: auto;
    color: var(--color-text);
    flex: 0 0 auto;
    justify-content: flex-start;
  }

  .projects-gallery-group.projects-gallery-thumbs .project-card__header {
    justify-content: flex-start;
  }

  .projects-gallery-group.projects-gallery-thumbs .project-card__title {
    font-size: 1.05rem;
    color: var(--color-brand-blue);
  }

  .projects-gallery-group.projects-gallery-thumbs .project-card .card-meta {
    max-height: none;
    opacity: 1;
    transform: none;
    padding-top: var(--gap9);
  }

  .projects-gallery-group.projects-gallery-thumbs
    .project-card
    .card-meta
    .button--inverted-arrow {
    position: static;
    border-color: var(--color-brand-blue);
    color: var(--color-brand-blue);
  }

  .projects-gallery-group.projects-gallery-thumbs .project-card.is-active,
  .projects-gallery-group.projects-gallery-thumbs .project-card:hover,
  .projects-gallery-group.projects-gallery-thumbs .project-card:focus-within {
    transform: translateY(-4px);
  }

  .projects-gallery-group.projects-gallery-thumbs
    .project-card.is-active
    .project-card__media
    img,
  .projects-gallery-group.projects-gallery-thumbs
    .project-card:hover
    .project-card__media
    img,
  .projects-gallery-group.projects-gallery-thumbs
    .project-card:focus-within
    .project-card__media
    img {
    transform: none;
    filter: none;
  }

  .year-event-list {
    width: 100%;
  }

  .home-ecosystem {
    display: flex;
    flex-direction: column;
    gap: var(--gap24);
  }

  .home-ecosystem .first .grid-card__media {
    aspect-ratio: 4 / 3;
  }

  .home-ecosystem .second .grid-card__media {
    aspect-ratio: 1 / 1;
  }

  body.standard .row-headline .text-summary,
  body.standard .row-headline .text-description {
    max-width: none;
    flex: 1 1 100%;
  }

  .row-reports {
    display: flex;
    flex-direction: column;
    gap: var(--gap48);
  }

  .row-reports .text-summary {
    flex-shrink: 1;
    flex-grow: 1;
  }

  .row-reports.row-search-results
    .grid-showcase.search-results-list
    .grid-track {
    display: flex;
    flex-direction: column;
    gap: 0;
  }

  .row-search-results .grid-box {
    display: flex;
    flex-direction: column;
    gap: var(--gap);
  }

  .search-result-item {
    width: 100%;
    cursor: pointer;
    list-style: none;
    border-bottom: 1px solid var(--color-brand-light-gray);
    padding: var(--gap12) 0;
  }

  .search-result-item:first-child {
    padding-top: 0;
  }

  .search-result-item__date {
    display: block;
    font-size: 0.85rem;
    line-height: 1.35;
    color: var(--color-brand-army);
    margin-bottom: var(--gap6);
  }

  .search-result-item__title {
    display: block;
    font-family: var(--font-family-heading);
    font-size: 1.15rem;
    line-height: 1.35;
    font-weight: 700;
    color: var(--color-text);
  }

  .search-result-item:hover .search-result-item__title,
  .search-result-item.is-active .search-result-item__title,
  .search-result-item:focus-visible .search-result-item__title {
    color: var(--color-brand-blue);
  }

  .search-result-item--hidden {
    display: none;
  }

  .search-results__load-more {
    align-self: center;
    margin-inline: 0;
  }

  .news-grid {
    width: 100%;
    display: flex;
    flex-direction: column;
    gap: var(--gap24);
    overflow: hidden;
  }

  .news-grid-box {
    display: flex;
    gap: 0;
    position: relative;
    flex-wrap: nowrap;
    overflow: hidden;
    scroll-behavior: smooth;
  }

  .news-grid--wrap .news-grid-box {
    flex-wrap: wrap;
    overflow: visible;
  }

  .news-grid--wrap .news-item {
    flex: 0 0 calc(100% / 3);
    max-width: calc(100% / 3);
  }

  .form label {
    font-family: var(--font-family-heading);
    font-size: 0.9rem;
  }

  .form.style-dark {
    color: var(--color-white);
  }

  .form input[type="text"],
  .form input[type="number"],
  .form input[type="email"],
  .form input[type="tel"],
  .form input[type="search"],
  .form textarea,
  .form select {
    border: 1px solid var(--color-brand-blue);
    background-color: transparent;
    appearance: none;
    -webkit-appearance: none;
    outline: none;
    font-family: var(--font-family-body);
    color: var(--color-brand-blue);
    font-size: 1rem;
    line-height: 1.3;
    padding: var(--gap12);
    width: 100%;
    display: block;
  }

  .form textarea {
    min-height: 26ch;
  }

  .form.style-dark input[type="text"],
  .form.style-dark input[type="number"],
  .form.style-dark input[type="email"],
  .form.style-dark input[type="tel"],
  .form.style-dark input[type="search"],
  .form.style-dark textarea {
    color: var(--color-white);
    border-color: var(--color-white);
  }

  .form .form-row {
    display: flex;
    flex-direction: column;
    gap: var(--gap9);
    width: 100%;
  }

  .form .form-row label {
    text-transform: uppercase;
    letter-spacing: 0.05em;
    font-weight: 700;
    color: var(--color-brand-blue);
  }

  .info-list {
    display: flex;
    flex-direction: column;
    gap: var(--gap6);
    font-size: 0.9rem;
  }

  .info-list li {
    display: inline-flex;
    justify-content: start;
    gap: var(--gap9);
    font-size: 0.9rem;
    line-height: 1.5;
    border: 0;
    padding: 0;
    align-items: center;
    color: var(--color-text);
    white-space: nowrap;
  }

  .info-list li:before {
    content: " ";
    width: var(--gap18);
    height: var(--gap18);
    flex-shrink: 0;
    flex-grow: 0;
    background: transparent url(../images/icons/icon-new-tab.svg) center
      center / contain no-repeat;
  }

  .info-list li.phone:before {
    background-image: url(../images/icons/icon-phone.svg);
  }

  .info-list li.fax:before {
    background-image: url(../images/icons/icon-fax.svg);
  }

  .info-list li.email:before {
    background-image: url(../images/icons/icon-email.svg);
  }

  .info-list li.web:before {
    background-image: url(../images/icons/icon-website.svg);
  }

  .legacy-parallax {
    padding: var(--gap108) var(--gap72);
    overflow: hidden;
  }

  .legacy-parallax__header {
    max-width: 720px;
    margin: 0 auto var(--gap72);
    text-align: center;
    display: flex;
    flex-direction: column;
    gap: var(--gap18);
  }

  .legacy-parallax__grid {
    display: grid;
    grid-template-columns: repeat(12, minmax(0, 1fr));
    column-gap: var(--gap24);
    row-gap: 24vh;
    width: 100vw;
    margin-left: calc(50% - 50vw);
    padding: 0;
  }

  .legacy-parallax__item {
    display: flex;
    flex-direction: column;
    gap: var(--gap18);
  }

  .legacy-parallax__media {
    position: relative;
    overflow: hidden;
    height: 80vh;
    max-height: 50vw;
  }

  .legacy-parallax__media img {
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 140%;
    object-fit: cover;
    will-change: transform;
  }

  .legacy-parallax__caption {
    display: flex;
    flex-direction: column;
    gap: var(--gap12);
    padding-inline: var(--gap72);
  }

  .legacy-parallax__eyebrow {
    margin: 0;
    font-family: var(--font-family-heading);
    font-size: 1rem;
    line-height: 1.1;
    font-weight: 700;
    color: var(--color-brand-army);
  }

  .legacy-parallax__title {
    margin: 0;
    font-family: var(--font-family-heading);
    font-size: 1.9rem;
    line-height: 1.2;
    color: var(--color-brand-blue);
  }

  .legacy-parallax__item:nth-child(1) {
    grid-column: 1 / -1;
    grid-row: 1;
  }

  .legacy-parallax__item:nth-child(1) .legacy-parallax__media {
    height: 90vh;
    max-height: 60vw;
  }

  .legacy-parallax__item:nth-child(2) {
    grid-column: 2 / span 8;
    grid-row: 2;
  }

  .legacy-parallax__item:nth-child(3) {
    grid-column: 4 / span 8;
    grid-row: 3;
  }

  .legacy-parallax__item:nth-child(4) {
    grid-column: 1 / -1;
    grid-row: 4;
  }

  .legacy-parallax__item:nth-child(5) {
    grid-column: 4 / span 8;
    grid-row: 5;
  }

  .legacy-parallax__item:nth-child(6) {
    grid-column: 2 / span 8;
    grid-row: 6;
  }

  .legacy-hero img {
    border-radius: 16px;
  }

  .legacy-quote {
    flex: 0 0 50%;
    display: flex;
    /* flex-direction: column; */
    height: 100%;
    justify-content: space-between;
    gap: var(--gap72);
  }

  .legacy-quote .legacy-hero {
    flex-basis: 25%;
    flex-shrink: 0;
  }

  .legacy-quote .h3,
  .aspirational-quote {
    /* font-weight: 300 !important; */
    line-height: 1.2;
  }

  .legacy-intro__columns {
    align-items: flex-start;
  }

  .award-listing {
    width: 100%;
    position: relative;
  }

  .award-carousel {
    width: 100%;
    --award-columns: 3;
  }

  .award-carousel__controls {
    position: absolute;
    left: 0;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    display: flex;
    justify-content: space-between;
    align-items: center;
    pointer-events: none;
  }

  .award-carousel__controls .slider-arrow {
    pointer-events: auto;
    background-image: url(../images/icons/icon-chevron-white.svg);
    border: 0;
    background-color: var(--color-brand-army);
  }

  .award-carousel__controls .slider-arrow.slider-arrow--next {
    transform: rotate(-90deg) translateY(50%);
  }

  .award-carousel__controls .slider-arrow.slider-arrow--prev {
    transform: rotate(90deg) translateY(50%);
  }

  .award-carousel .grid-viewport {
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
  }

  .award-carousel .grid-viewport::-webkit-scrollbar {
    display: none;
  }

  .award-carousel .grid-track {
    display: flex;
    gap: var(--gap24);
    scroll-snap-type: x mandatory;
  }

  .award-carousel .grid-card {
    flex: 0 0
      calc(
        (100% - ((var(--award-columns) - 1) * var(--gap24))) /
          var(--award-columns)
      );
    max-width: calc(
      (100% - ((var(--award-columns) - 1) * var(--gap24))) /
        var(--award-columns)
    );
    display: flex;
    flex-direction: column;
    scroll-snap-align: start;
    background-color: var(--color-white);
    border-radius: 0;
    padding: 0;
  }

  .award-listing .award[hidden] {
    display: none;
  }

  .award-listing .award {
    color: var(--color-text);
  }

  .award-carousel .award-visual {
    display: none;
  }

  .award-listing .award-results {
    display: none;
  }

  .award-listing .award-list {
    display: flex;
    flex-direction: column;
    gap: var(--gap6);
  }

  .award-listing__actions {
    display: flex;
    justify-content: center;
    margin-top: var(--gap24);
  }

  .award-listing .award {
    display: flex;
    flex-direction: row;
    align-items: stretch;
    background-color: var(--color-white);
    padding: var(--gap24);
  }

  .award-listing .award-card__body {
    flex: 1 1 auto;
    min-width: 0;
  }

  .award-listing .award-card__media {
    display: block;
    flex: 0 0 clamp(120px, 20vw, 180px);
    max-width: clamp(120px, 20vw, 180px);
    margin-left: auto;
    opacity: 1;
    transform: none;
    overflow: hidden;
    pointer-events: auto;
    transition: none;
  }

  .award-listing .award-visual {
    display: block;
    margin-top: 0;
    cursor: pointer;
  }

  .award-listing .award-visual img {
    width: 100%;
    height: 100%;
    aspect-ratio: 1 / 1;
  }

  .award-listing .award-card__body,
  .featured-awards .award-card__body {
    display: flex;
    flex-direction: column;
    gap: var(--gap12);
  }

  .award-carousel .award-card__body {
    flex: 1 1 100%;
    padding: var(--gap24);
    padding-top: 0;
  }

  .award-carousel .award-header {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    height: 100%;
  }

  .award-listing .award-card__media,
  .featured-awards .award-card__media {
    padding: 0;
  }

  .award-listing .award .award-header,
  .featured-awards .award .award-header {
    display: flex;
    flex-direction: column;
    gap: var(--gap12);
  }

  .featured-awards .award .award-header {
    align-items: center;
  }

  .award-listing .award .award-meta,
  .featured-awards .award .award-meta {
    display: flex;
    flex-direction: column;
    flex-basis: 100%;
    gap: var(--gap6);
    align-items: flex-start;
    justify-content: flex-end;
  }

  .award-listing .award .award-meta {
  }

  .featured-awards .award .award-meta {
    text-align: center;
    justify-content: flex-start;
    align-items: center;
  }

  .award-listing .award .award-winners,
  .featured-awards .award .award-winners {
    display: flex;
    flex-direction: column;
    gap: 0;
  }

  .award-listing .award .award-winners .award-desc2,
  .featured-awards .award .award-winners .award-desc2 {
    padding-top: 0;
  }

  .award-listing .award .award-visual {
    margin-top: 0;
  }

  .featured-awards .award .award-visual {
    margin-top: var(--gap9);
  }

  .award-listing .award .award-visual img,
  .featured-awards .award .award-visual img {
    display: block;
    width: 100%;
    border-radius: var(--gap12);
    object-fit: contain;
  }

  .award-listing .award .award-name,
  .featured-awards .award .award-name {
    font-size: 1.06rem;
    line-height: 1.2;
    font-weight: 700;
    color: var(--color-brand-blue);
    font-family: var(--font-family-heading);
  }

  .award-listing .award .award-year,
  .featured-awards .award .award-year {
    color: var(--color-brand-blue);
    font-family: var(--font-family-heading);
    font-size: 0.85rem;
    line-height: 1;
    display: inline-block;
    font-weight: 700;
  }

  .award-listing .award .award-desc,
  .featured-awards .award .award-desc {
    color: var(--color-text);
    font-family: var(--font-family-heading);
    line-height: 1.3;
  }

  .award-listing .award .award-desc2,
  .featured-awards .award .award-desc2 {
    color: var(--color-brand-black);
    font-weight: 700;
    font-family: var(--font-family-heading);
    line-height: 1.3;
  }

  .award-listing .award .action,
  .featured-awards .award .action {
    padding-top: var(--gap18);
  }

  .property-listing {
    display: flex;
    flex-direction: column;
    gap: var(--gap);
  }

  .property-listing.horizontal {
    flex-direction: row;
    flex-wrap: wrap;
  }

  .property-listing .property {
    display: flex;
    flex-direction: column;
  }

  .property-listing:not(.horizontal) .property {
    flex-direction: row;
    gap: var(--gap);
  }

  .property-listing.horizontal .property {
    flex-basis: calc((100% - var(--gap)) / 2);
  }

  .property-listing:not(.horizontal) .property .visual {
    flex-basis: 50%;
  }

  .property-listing:not(.horizontal) .property .text {
    flex-basis: 50%;
  }

  .property-listing .property .visual img {
    display: block;
    border-bottom-right-radius: 3vw;
    aspect-ratio: 4 / 3;
    object-fit: cover;
  }

  .property-listing .property .text {
    padding-top: var(--gap18);
    display: flex;
    flex-direction: column;
    gap: var(--gap18);
  }

  .property-listing:not(.horizontal) .property .text {
    padding-top: 0;
  }

  .property-enquiry-modal {
    background-color: #f4f4f4;
    padding: var(--gap72);
    height: 100vh;
    display: flex;
    flex-direction: column;
    justify-content: center;
  }

  .property-enquiry-modal__header {
    margin-bottom: var(--gap24);
  }

  .property-enquiry-form {
    display: flex;
    flex-direction: column;
    gap: var(--gap24);
  }

  .property-enquiry-form__row {
    display: flex;
    flex-direction: column;
    gap: var(--gap9);
  }

  .property-enquiry-form__row label {
    font-family: var(--font-family-heading);
    font-weight: 700;
    font-size: 0.95rem;
    line-height: 1.2;
    color: var(--color-text-gray);
  }

  .property-enquiry-form__row input[type="text"],
  .property-enquiry-form__row input[type="email"],
  .property-enquiry-form__row textarea,
  .property-enquiry-form__row select {
    border: 0;
    border-bottom: 1px solid var(--color-brand-pjh-green);
    background: transparent;
    color: var(--color-brand-pjh-green);
    font-family: var(--font-family-heading);
    font-size: 1.2rem;
    line-height: 1.2;
    padding: 0 0 var(--gap12);
    transition:
      border-color 0.2s ease,
      color 0.2s ease;
  }

  .property-enquiry-form__row textarea {
    min-height: 8rem;
    resize: vertical;
  }

  .property-enquiry-form__row input:focus,
  .property-enquiry-form__row textarea:focus,
  .property-enquiry-form__row select:focus {
    outline: none;
    border-bottom-color: var(--color-home-hover);
  }

  .property-enquiry-form__actions .button {
    min-width: 120px;
  }

  .status-tag {
    font-family: var(--font-family-heading);
    font-size: 0.75rem;
    letter-spacing: 0;
    font-weight: 700;
    line-height: 1.2;
    display: inline-block;
    padding: 0.6em 1.2em;
    border-radius: 0.1em;
    background-color: var(--color-brand-green);
    color: var(--color-white);
    text-transform: uppercase;
    border-bottom-left-radius: 1em;
  }

  .status-tag.new {
    background-color: #fdb924;
  }

  .status-tag.for-sale {
    background-color: var(--color-brand-blue);
  }

  .status-tag.for-lease {
    background-color: var(--color-brand-pjh-green);
  }

  .status-tag.newly-launched {
    background-color: #fdb924;
  }

  .status-tag.open {
    background-color: #8ac646;
  }

  .status-tag.announced {
    background-color: var(--color-brand-blue);
  }

  .status-tag.coming {
    background-color: #763f98;
  }

  .status-tag.updated {
    background-color: #79797a;
  }

  .status-tag.lease {
    background-color: #0b806f;
  }

  .status-tag.sale {
    background-color: #204a8a;
  }

  .status-tag.press {
    background-color: var(--color-brand-blue);
  }

  .status-tag.event {
    background-color: var(--color-brand-green);
  }

  .status-tag.news {
    background-color: var(--color-brand-emerald);
  }

  .media-wrapper {
    position: relative;
  }

  .media-wrapper .floating-action {
    position: absolute;
    right: -8px;
    bottom: -8px;
  }

  .media-wrapper .button {
    border: 8px solid var(--color-white);
    box-sizing: content-box;
  }

  .media-wrapper .floating-action:after {
    background: 0 0;
    border-bottom: 10px solid #fff;
    border-left: 10px solid #fff;
    border-bottom-left-radius: 18px;
    content: " ";
    display: block;
    height: 18px;
    position: absolute;
    right: -10px;
    top: 45px;
    width: 21px;
    z-index: 0;
  }

  .hero-stats.stock-stats .stat .number {
    font-weight: 400;
    color: var(--color-brand-army);
  }

  .hero-stats.stock-stats .stat .label {
    font-size: 1.25rem;
    line-height: 1.2;
  }

  .hero-stats.stock-stats .stat .sublabel {
    margin-top: 0;
    font-size: 0.9rem;
    line-height: 1;
    letter-spacing: -0.01em;
    font-weight: bold;
  }

  .stock-change-value.up {
    color: var(--color-brand-emerald);
  }

  .stock-up {
    display: inline-block;
    width: 0.6rem;
    height: 0.6rem;
    margin-left: 0.4rem;
    background-color: var(--color-brand-emerald);
    -webkit-mask: url(../images/icons/icon-chevron.svg) no-repeat center /
      contain;
    mask: url(../images/icons/icon-chevron.svg) no-repeat center / contain;
    transform: rotate(180deg);
    transition: transform 0.2s ease;
  }

  .hero-stats.stock-stats .stat {
    gap: 0;
    flex-basis: auto;
  }

  .hero-stats.stock-stats .stat .sublabel2 {
    font-size: 0.7rem;
    line-height: 1.4em;
    font-weight: 400;
    color: var(--color-text);
    margin-top: var(--gap9);
  }

  .hero-stats.stock-stats {
    flex-wrap: nowrap;
    text-align: center;
    gap: var(--gap);
  }

  .hero-stats.stock-stats .stat-group {
    flex-direction: row;
    display: flex;
    gap: 0;
    align-items: center;
  }

  .hero-stats.stock-stats .stat .number {
    justify-content: center;
  }

  .hero-stats.stock-stats .stat-group .stat {
    padding: 0 var(--gap18);
    text-align: center;
    align-items: center;
    gap: var(--gap6);
  }

  .hero-stats.stock-stats .stat-group .stat .number {
    font-size: 1.5rem;
    color: var(--color-text);
    justify-content: center;
  }

  .hero-stats.stock-stats .stat-group .stat .label {
    font-size: 0.9rem;
    line-height: 1em;
    color: var(--color-brand-blue);
  }

  .hero-stats.stock-stats .stat-group .stat:not(:last-child) {
    border-right: 1px solid var(--color-brand-light-gray);
  }

  .card-rail .grid-card {
    position: relative;
    overflow: hidden;
    background-color: var(--color-brand-blue);
    /* border-radius: var(--gap18); */
    padding: var(--gap);
    /* aspect-ratio: 1 / 1; */
    background: linear-gradient(
      135deg,
      var(--color-brand-blue),
      var(--color-brand-green)
    );
    --card-overlay-opacity: 0.8;
    --card-overlay-opacity-hover: 0.85;
    --card-overlay-hover: rgb(var(--color-brand-black-rgb) / 1);
  }

  .career-application-process.card-rail .grid-card {
    text-align: center;
    border-radius: var(--gap18);
  }

  .card-rail .grid-card.planet {
    background-color: var(--color-brand-army);
    background-image: url(../images/hero/banner-planet.jpg);
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
    --card-overlay-from: rgb(var(--color-brand-army-rgb) / 1);
    --card-overlay-to: rgb(var(--color-brand-black-rgb) / 1);
  }

  .card-rail .grid-card.people {
    background-color: var(--color-brand-gold);
    background-image: url(../images/hero/banner-people2.jpg);
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
    --card-overlay-from: rgb(var(--color-brand-gold-rgb) / 1);
    --card-overlay-to: rgb(var(--color-brand-black-rgb) / 1);
  }

  .card-rail .grid-card.peace {
    background-color: var(--color-brand-emerald);
    background-image: url(../images/hero/banner-peace.jpg);
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
    --card-overlay-from: rgb(var(--color-brand-emerald-rgb) / 1);
    --card-overlay-to: rgb(var(--color-brand-black-rgb) / 1);
  }

  .card-rail .grid-card.prosperity {
    background-color: var(--color-brand-purple);
    background-image: url(../images/hero/banner-prosperity.jpg);
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
    --card-overlay-from: rgb(var(--color-brand-purple-rgb) / 1);
    --card-overlay-to: rgb(var(--color-brand-black-rgb) / 1);
  }

  .netzero-timeline {
    width: 100%;
    padding: 0;
  }

  .netzero-timeline .netzero-inner {
    max-width: 1200px;
    margin: 0 auto;
  }

  .netzero-timeline .netzero-title {
    font-family: var(--font-family-heading);
    font-weight: 700;
    font-size: clamp(1.6rem, 2.6vw, 2.6rem);
    text-align: center;
    color: var(--color-brand-blue);
  }

  .netzero-timeline .netzero-intro {
    max-width: 760px;
    margin: 12px auto 40px;
    text-align: center;
    line-height: 1.6;
    color: var(--color-text);
  }

  .netzero-timeline .netzero-track {
    display: flex;
    gap: var(--gap24);
    align-items: flex-start;
    justify-content: space-between;
  }

  .netzero-timeline .netzero-milestone {
    flex: 1;
    min-width: 170px;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0;
  }

  .netzero-timeline .netzero-head {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 8px;
    min-height: var(--gap48);
  }

  .netzero-timeline .netzero-year {
    font-weight: 900;
    font-size: 1.5rem;
    color: var(--color-brand-blue);
    font-family: var(--font-family-heading);
  }

  .netzero-timeline .netzero-connector {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0;
    margin: 0;
  }

  .netzero-timeline .netzero-dot {
    width: 16px;
    height: 16px;
    border-radius: 50%;
    border: 3px solid var(--netzero-accent);
    background: var(--color-white);
  }

  .netzero-timeline .netzero-line {
    width: 2px;
    height: 24px;
    border-radius: 2px;
    background: var(--netzero-accent);
    transform-origin: top center;
  }

  .netzero-timeline .netzero-bar {
    width: 100%;
    height: 14px;
    border-radius: 8px;
    background: var(--netzero-accent);
    transform-origin: left center;
  }

  .netzero-timeline .netzero-details {
    align-self: stretch;
    text-align: left;
    margin-top: 8px;
    font-size: 0.75rem;
    line-height: 1.4;
  }

  .netzero-timeline .netzero-item {
    display: block;
    position: relative;
    padding-left: 14px;
    line-height: 1.35;
    color: var(--color-text);
  }

  .netzero-timeline .netzero-item::before {
    content: "-";
    position: absolute;
    left: 0;
    top: 0;
    color: var(--netzero-accent);
  }

  /* === Story Article Section === */
  .story-article-section__heading {
    width: 100%;
    display: flex;
    flex-direction: column;
    gap: var(--gap18);
  }

  .story-article-section__main-title,
  .story-article-card__title--lead {
    margin: 0;
  }

  .story-article-card {
    overflow: hidden;
  }

  .story-article-card--feature {
    display: grid;
    grid-template-columns: minmax(280px, 42%) minmax(0, 1fr);
    gap: var(--gap24);
    align-items: center;
  }

  .story-article-card--feature .story-article-card__image {
    float: none;
    width: 100%;
    margin: 0;
    align-self: center;
  }

  .story-article-card__content {
    display: flex;
    flex-direction: column;
    gap: var(--gap18);
  }

  .story-article-card--text-left {
    display: grid;
    grid-template-columns: minmax(0, 52%) minmax(300px, 38%);
    column-gap: var(--gap48);
    row-gap: var(--gap24);
    align-items: flex-start;
    justify-content: space-between;
  }

  .story-article-card--text-left .story-article-card__body {
    display: contents;
    min-width: 0;
  }

  .story-article-card--text-left .story-article-card__title {
    grid-column: 1 / -1;
    margin-bottom: 0;
  }

  .story-article-card--text-left .story-article-card__body > .p {
    grid-column: 1;
  }

  .story-article-card--text-left .story-article-card__image--right {
    grid-column: 2;
    grid-row: 1 / span 4;
    justify-self: center;
    align-self: center;
    width: min(100%, 320px);
    margin: 0;
  }

  .story-article-card--text-left .story-article-card__images {
    grid-column: 2;
    grid-row: 2 / span 3;
  }

  .story-article-card__image {
    float: left;
    width: 42%;
    margin-right: var(--gap24);
    margin-bottom: var(--gap18);
  }

  .story-article-card__image img {
    width: 100%;
    height: auto;
    display: block;
  }

  .story-article-card__title {
    font-family: var(--font-family-heading);
    margin-bottom: var(--gap18);
  }

  .story-article-card__list {
    padding-left: 1.5em;
    list-style: disc;
    display: flex;
    flex-direction: column;
    gap: 0.5em;
  }

  .story-article-card__list li::marker {
    color: var(--color-brand-army);
  }

  .story-article-card__images {
    flex: 0 0 45%;
    display: flex;
    gap: var(--gap12);
    align-items: flex-start;
    justify-content: center;
    width: 100%;
    max-width: 420px;
    justify-self: center;
  }

  .story-article-card__images img {
    height: auto;
    display: block;
    flex: 0 1 auto;
    max-width: 100%;
  }

  .story-article-card__images img:first-child {
    width: 55%;
  }

  .story-article-card__images img:nth-child(2) {
    width: 35%;
  }

  .story-article-section__heading-link {
    text-decoration: underline;
    text-underline-offset: 0.2em;
    color: inherit;
  }

  .story-article-card__image--right {
    float: none;
    flex: 0 0 42%;
    width: 42%;
    margin: 0;
  }

  .story-article-card__image--right img {
    width: 100%;
    height: auto;
    display: block;
  }

  .story-article-card--text-left .story-article-card__image--right {
    flex: 0 1 auto;
    width: min(100%, 320px);
  }

  .story-article-card--image-left {
    display: grid;
    grid-template-columns: minmax(280px, 42%) minmax(0, 1fr);
    column-gap: var(--gap48);
    row-gap: var(--gap24);
    align-items: flex-start;
  }

  .story-article-card--image-left .story-article-card__title {
    grid-column: 1 / -1;
    grid-row: 1;
    margin-bottom: 0;
  }

  .story-article-card--image-left .story-article-card__image {
    grid-column: 1;
    grid-row: 2;
    float: none;
    width: 100%;
    margin: 0;
    justify-self: center;
    align-self: start;
  }

  .story-article-card--image-left .story-article-card__body {
    grid-column: 2;
    grid-row: 2;
    min-width: 0;
  }

  .netzero-timeline .netzero-final {
    padding-left: 0;
    margin-bottom: 10px;
    /* font-weight: 800; */
    text-transform: uppercase;
    /* letter-spacing: 0.04em; */
    text-align: center;
  }

  .netzero-timeline .netzero-final::before {
    content: "";
  }

  .netzero-timeline .netzero-icon {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    border: 2px solid var(--netzero-accent);
    color: var(--netzero-accent);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 0.6rem;
    letter-spacing: 0.04em;
    font-weight: 700;
  }

  .netzero-timeline .netzero-icon-below {
    margin-top: 8px;
    width: 44px;
    height: 44px;
    background: var(--netzero-accent);
    color: var(--color-white);
    border: none;
    align-self: center;
  }

  .netzero-timeline .netzero-icon-row {
    display: flex;
    justify-content: center;
    gap: 8px;
  }

  .netzero-timeline .netzero-milestone[data-step="2023"] {
    --netzero-accent: #c43d32;
  }

  .netzero-timeline .netzero-milestone[data-step="2024-2030"] {
    --netzero-accent: #e74c3c;
  }

  .netzero-timeline .netzero-milestone[data-step="2030"] {
    --netzero-accent: #f0b429;
  }

  .netzero-timeline .netzero-milestone[data-step="2030-2050"] {
    --netzero-accent: #7bc043;
  }

  .netzero-timeline .netzero-milestone[data-step="2050"] {
    --netzero-accent: #0b7d6b;
  }

  .sustainability-journey {
    width: 100%;
  }

  .sustainability-journey .journey-track {
    display: grid;
    grid-template-rows: 1fr;
    align-items: center;
  }

  .sustainability-journey .journey-path {
    grid-area: 1 / 1;
    height: 18px;
    transform: translateY(100%);
    border-radius: 999px;
    background:
      linear-gradient(
        90deg,
        var(--color-brand-army) 0% 11.11%,
        var(--color-brand-gray) 11.11% 22.22%,
        var(--color-brand-blue) 22.22% 33.33%,
        var(--color-brand-green) 33.33% 44.44%,
        #e74c3c 44.44% 55.55%,
        var(--color-brand-emerald) 55.55% 66.66%,
        #00a0e3 66.66% 77.77%,
        var(--color-brand-gold) 77.77% 88.88%,
        var(--color-brand-pjh-light-green) 88.88% 100%
      ),
      repeating-linear-gradient(
        90deg,
        transparent 0 10px,
        rgba(255, 255, 255, 0.45) 10px 18px
      );
    box-shadow: 0 10px 20px rgba(34, 60, 50, 0.08);
  }

  .sustainability-journey .journey-markers {
    grid-area: 1 / 1;
    display: grid;
    grid-template-columns: repeat(9, minmax(105px, 1fr));
    grid-template-rows: auto auto;
    row-gap: 18px;
    column-gap: 0;
    align-items: center;
    padding: clamp(18px, 3vw, 32px) 0;
  }

  .sustainability-journey .journey-milestone {
    --journey-accent: rgba(70, 90, 80, 0.6);
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 8px;
    text-align: center;
    opacity: 1;
    transform: translateY(0);
    transition:
      opacity 0.45s ease,
      transform 0.45s ease;
  }

  .sustainability-journey.is-animated .journey-milestone {
    opacity: 0;
    transform: translateY(8px);
  }

  .sustainability-journey.is-animated .journey-milestone.is-visible {
    opacity: 1;
    transform: translateY(0);
  }

  .sustainability-journey .journey-emphasis {
    --journey-accent: rgba(11, 125, 107, 0.9);
  }

  .sustainability-journey .journey-label {
    display: flex;
    flex-direction: column;
    gap: 6px;
  }

  .sustainability-journey .journey-year {
    font-weight: 900;
    color: var(--color-brand-blue);
    font-size: 1.5rem;
    line-height: 1.1;
    font-family: var(--font-family-heading);
  }

  .sustainability-journey .journey-text {
    font-size: 0.9rem;
    line-height: 1.3;
    color: var(--color-text);
    font-family: var(--font-family-heading);
  }

  .sustainability-journey .journey-marker {
    display: flex;
    align-items: center;
    gap: 6px;
  }

  .sustainability-journey .journey-line {
    width: 2px;
    height: 22px;
    border-radius: 2px;
    background: var(--journey-accent);
  }

  .sustainability-journey .journey-dot {
    width: 14px;
    height: 14px;
    border-radius: 50%;
    background: var(--journey-accent);
    border: 3px solid var(--color-white);
    box-shadow: 0 6px 12px rgba(0, 0, 0, 0.08);
  }

  .sustainability-journey .journey-row-top {
    grid-row: 1;
    align-self: end;
  }

  .sustainability-journey .journey-row-top .journey-marker {
    flex-direction: column;
  }

  .sustainability-journey .journey-row-bottom {
    grid-row: 2;
    align-self: start;
  }

  .sustainability-journey .journey-row-bottom .journey-marker {
    order: -1;
    flex-direction: column-reverse;
  }

  .sustainability-journey .journey-pos-1 {
    grid-column: 1;
  }

  .sustainability-journey .journey-pos-2 {
    grid-column: 2;
  }

  .sustainability-journey .journey-pos-3 {
    grid-column: 3;
  }

  .sustainability-journey .journey-pos-4 {
    grid-column: 4;
  }

  .sustainability-journey .journey-pos-5 {
    grid-column: 5;
  }

  .sustainability-journey .journey-pos-6 {
    grid-column: 6;
  }

  .sustainability-journey .journey-pos-7 {
    grid-column: 7;
  }

  .sustainability-journey .journey-pos-8 {
    grid-column: 8;
  }

  .sustainability-journey .journey-pos-9 {
    grid-column: 9;
  }

  .card-rail .grid-card.planet::before,
  .card-rail .grid-card.people::before,
  .card-rail .grid-card.peace::before,
  .card-rail .grid-card.prosperity::before {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(
      135deg,
      var(--card-overlay-from),
      var(--card-overlay-to)
    );
    opacity: var(--card-overlay-opacity);
    transition: opacity 0.45s ease;
    pointer-events: none;
    z-index: 0;
  }

  .card-rail .grid-card.planet::after,
  .card-rail .grid-card.people::after,
  .card-rail .grid-card.peace::after,
  .card-rail .grid-card.prosperity::after {
    content: "";
    position: absolute;
    inset: 0;
    background: var(--card-overlay-hover);
    opacity: 0;
    transition: opacity 0.45s ease;
    pointer-events: none;
    z-index: 0;
  }

  .card-rail .grid-card.is-active::before,
  .card-rail .grid-card:hover::before,
  .card-rail .grid-card:focus-within::before {
    opacity: 0;
  }

  .card-rail .grid-card.is-active::after,
  .card-rail .grid-card:hover::after,
  .card-rail .grid-card:focus-within::after {
    opacity: var(--card-overlay-opacity-hover);
  }

  .card-rail .grid-card > * {
    position: relative;
    z-index: 1;
  }

  .card-rail .grid-card .card-details {
    display: flex;
    flex-direction: column;
    gap: var(--gap24);
  }

  .card-rail .grid-card .card-details .card-title {
    font-family: var(--font-family-heading);
    font-size: 1.5rem;
    line-height: 1.2;
    font-weight: 700;
    color: #ffffff;
    text-align: center;
  }

  .card-rail .grid-card .card-details .card-title .subheading {
    font-family: var(--font-family-heading);
    font-size: 1rem;
    line-height: 1.2;
    font-weight: 500;
    color: #ffffff;
    margin-top: var(--gap6);
  }

  ul.bullets {
    display: flex;
    flex-direction: column;
    gap: var(--gap9);
    list-style: none;
  }

  ul.indent-bullets {
    display: flex;
    flex-direction: column;
    gap: var(--gap9);
    list-style: none;
    margin-top: 9px;
  }

  ul.bullets li {
    position: relative;
    padding-left: 1.5em;
    font-size: 0.9rem;
    line-height: 1.6;
    color: var(--color-text);
  }

  ul.bullets li::before {
    content: "";
    width: 0.5em;
    height: 0.5em;
    background: var(--color-brand-army);
    border-radius: 50%;
    position: absolute;
    left: 0;
    top: 0.8em;
    transform: translateY(-50%);
  }

  .divider {
    height: 1px;
    background-color: var(--color-brand-light-gray);
    width: 100%;
  }

  .legacy-thumbnails {
    display: flex;
    gap: var(--gap18);
    --columns: 6;
  }

  .legacy-thumbnails__viewport {
    display: contents;
  }

  .legacy-thumbnails__track {
    display: contents;
  }

  .legacy-thumbnails .legacy-thumbnail {
    flex-basis: calc(
      100% / var(--columns) - var(--gap24) * (var(--columns) - 1) /
        var(--columns)
    );
    cursor: pointer;
  }

  .legacy-thumbnails .legacy-thumbnail .visual {
  }

  .legacy-thumbnails .legacy-thumbnail .visual img {
    display: block;
    width: 100%;
    aspect-ratio: 4 / 3;
    object-fit: cover;
    border-radius: 16px;
    transition:
      transform 0.35s ease,
      box-shadow 0.35s ease;
  }

  .legacy-thumbnails .legacy-thumbnail.is-active .visual img {
    transform: scale(1.03);
    transform-origin: center center;
    box-shadow: 0 18px 30px rgba(0, 0, 0, 0.18);
    outline: 2px solid var(--color-brand-blue);
    outline-offset: 4px;
  }

  @media (max-width: 768px) {
    .our-legacy-section .section-wrapper.pad-inline-72 {
      padding-inline: 24px;
    }
  }

  .highlight-badge {
    display: inline-flex;
    gap: var(--gap18);
    background: linear-gradient(
      90deg,
      var(--color-brand-blue),
      var(--color-brand-army)
    );
    padding: var(--gap24);
    border-radius: var(--gap18);
    color: var(--color-white);
    margin-top: var(--gap);
    align-items: center;
  }

  .highlight-badge .visual {
    flex-shrink: 0;
    flex-grow: 0;
    flex-basis: 110px;
  }

  .highlight-badge .visual img {
    display: block;
    width: 100%;
  }

  .highlight-badge .caption {
    font-size: 0.9rem;
    line-height: 1.4;
  }

  .highlight-badge .action {
    flex-shrink: 0;
    flex-grow: 0;
  }

  .ol-list,
  .article-body ol {
    list-style: decimal;
    padding-left: 1.5em;
  }

  .ol-list.roman {
    list-style: lower-roman;
  }

  .ul-list,
  .article-body ul {
    list-style: disc;
    padding-left: 1.5em;
  }

  li > ul,
  li > ol {
    margin-top: var(--gap18);
  }

  .article-body ul {
    list-style: disc;
    padding-left: 1.5em;
  }

  .ol-list li,
  .article-body ol li {
    margin-bottom: var(--gap12);
  }

  .article-body ul li {
    margin-bottom: var(--gap12);
  }

  .article-body h1,
  .article-body h2,
  .article-body h3,
  .article-body h4,
  .article-body h5 {
    margin: 1em 0;
    color: var(--color-brand-blue);
  }

  .article-body p,
  .article-body li {
    color: var(--color-text);
    text-align: justify;
  }

  .article-body > figure:not(:last-child) {
    margin: 1em 0;
  }

  .article-body > p:not(:last-child),
  .article-body ul > li:not(:last-child) {
    margin-bottom: 0.6em;
  }

  .article-body p a {
    text-decoration: underline;
    text-underline-offset: 0.3em;
  }

  .article-body > *:first-child {
    margin-top: 0;
  }

  .article-body table {
    border-collapse: collapse;
  }

  .article-body > table {
    margin: var(--gap24) 0;
    width: 100%;
  }

  .article-body table th,
  .article-body table td {
    border: 1px solid var(--color-brand-light-gray);
    padding: var(--gap12) var(--gap18);
    text-align: left;
  }

  .article-body table th {
    background-color: var(--color-brand-blue);
    color: var(--color-white);
  }

  .logo-grid {
    display: flex;
    flex-wrap: wrap;
    border-collapse: collapse;
  }

  .logo-grid .logo-grid__item {
    flex-basis: 33.333%;
    display: flex;
    align-items: center;
    justify-content: center;
    /* border: 1px solid var(--color-brand-light-gray); */
    border-collapse: collapse;
    /* box-shadow:
    0 0 0 1px var(--color-brand-light-gray); */
  }

  .career-values {
    gap: var(--gap24);
  }

  .accordion-items.normal-style {
    background-color: var(--color-surface);
  }

  .accordion-items.normal-style
    .accordion-item
    .item-heading
    .icon-heading:before {
    display: none;
  }

  .accordion-items.normal-style .accordion-item.opened {
    border-top-color: var(--color-brand-light-gray);
  }

  .num-badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-family: var(--font-family-heading);
    font-size: 1rem;
    font-weight: 700;
    line-height: 1em;
    color: var(--color-white);
    background-color: var(--color-brand-emerald);
    width: 2.5rem;
    height: 2.5rem;
    border-radius: 50%;
  }

  .scrolling-highlights {
    position: relative;
    overflow: hidden;
    padding: var(--gap) 0;
    background-color: var(--color-brand-blue);
  }

  .scrolling-highlights .text-layout-wrapper {
    position: relative;
    z-index: 1;
  }

  .scrolling-highlights__copy {
    flex: 1 1 0;
    max-width: 520px;
    display: flex;
    flex-direction: column;
    gap: var(--gap18);
    color: var(--color-text);
  }

  .scrolling-highlights__copy p {
    font-size: 0.95rem;
    line-height: 1.6;
  }

  .scrolling-highlights__meta {
    display: flex;
    flex-wrap: wrap;
    gap: var(--gap18);
    align-items: center;
  }

  .scrolling-highlights__hint {
    font-size: 0.72rem;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    color: var(--color-brand-blue);
  }

  .river-gallery {
    position: relative;
    display: flex;
    flex-direction: column;
    z-index: 1;
  }

  .river-row {
    position: relative;
    overflow: hidden;
    padding-inline: var(--gap24);
    --river-card-width: clamp(185px, 19vw, 295px);
    --river-card-height: clamp(118px, 12.5vw, 190px);
    --river-duration: 68s;
  }

  .river-row__track {
    display: flex;
    align-items: center;
    gap: 0;
    width: max-content;
    padding-block: var(--gap12);
    animation: riverScroll var(--river-duration) linear infinite;
    will-change: transform;
  }

  .river-gallery.is-scroll-linked .river-row__track {
    animation: none;
  }

  .river-gallery.is-carousel .river-row__track {
    animation: none;
    transition: transform 0.6s ease;
  }

  .river-gallery.is-continuous .river-row__track {
    animation: none;
  }

  .river-row__set {
    display: flex;
    align-items: center;
    gap: var(--gap18);
    padding-right: var(--gap18);
  }

  .river-gallery.is-carousel .river-row__set[aria-hidden="true"] {
    display: none;
  }

  .river-row--two {
    --river-duration: 68s;
  }

  .river-row--three {
    --river-duration: 68s;
  }

  .river-row--two .river-row__track {
    animation-direction: reverse;
  }

  .river-card {
    position: relative;
    width: var(--river-card-width);
    height: var(--river-card-height);
    flex: 0 0 auto;
    border-radius: 18px;
    overflow: hidden;
    background-color: var(--color-brand-blue);
  }

  .river-card::after {
    content: "";
    position: absolute;
    inset: 0;
    background: radial-gradient(
      ellipse 90% 75% at left bottom,
      rgb(0 0 0 / 0.7) 0%,
      rgb(0 0 0 / 0) 70%
    );
    opacity: 1;
    pointer-events: none;
    z-index: 1;
  }

  .river-card img {
    position: relative;
    z-index: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    filter: saturate(1.05);
  }

  .river-card__label {
    font-family: var(--font-family-heading);
    position: absolute;
    left: 12px;
    bottom: 12px;
    max-width: calc(100% - 24px);
    color: #ffffff;
    font-size: 1rem;
    line-height: 1.2;
    font-weight: 700;
    text-shadow: 0 2px 8px rgb(0 0 0 / 0.65);
    pointer-events: none;
    transition:
      opacity 0.3s ease,
      transform 0.3s ease;
    z-index: 2;
    width: 100%;
  }

  .river-card__overlay {
    position: absolute;
    inset: 0;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    gap: 0.35rem;
    padding: 16px;
    background: linear-gradient(
      180deg,
      rgb(0 0 0 / 0.05) 0%,
      rgb(0 0 0 / 0.75) 100%
    );
    color: #ffffff;
    opacity: 0;
    transform: translateY(6px);
    pointer-events: none;
    transition:
      opacity 0.35s ease,
      transform 0.35s ease;
    z-index: 3;
  }

  .river-card__title {
    font-family: var(--font-family-heading);
    font-size: 0.9rem;
    font-weight: 700;
    line-height: 1.2;
  }

  .river-card__desc {
    margin: 0;
    font-size: 0.8rem;
    line-height: 1.3;
    color: rgb(255 255 255 / 0.9);
  }

  .river-card:hover .river-card__overlay {
    opacity: 1;
    transform: translateY(0);
  }

  .river-card:hover .river-card__label {
    opacity: 0;
    transform: translateY(6px);
  }

  .river-gallery:not(.is-scroll-linked):hover .river-row__track,
  .river-gallery:not(.is-scroll-linked):focus-within .river-row__track {
    animation-play-state: paused;
  }

  .river-gallery__controls {
    display: flex;
    justify-content: flex-end;
    gap: var(--gap12);
    padding-inline: var(--gap24);
    margin-top: var(--gap12);
  }

  .river-row__controls {
    position: absolute;
    inset: 0;
    justify-content: space-between;
    align-items: center;
    padding-inline: var(--gap24);
    margin-top: 0;
    z-index: 3;
    pointer-events: none;
  }

  .river-row__controls .slider-arrow {
    pointer-events: auto;
    background-color: #ffffff;
    border-color: rgba(0, 0, 0, 0.08);
    box-shadow: 0 10px 24px rgba(0, 0, 0, 0.18);
  }

  .explore-group-listing {
    gap: 0;
    border-bottom: 1px solid #dddddd;
  }

  .explore-group-listing > .flex {
    width: 100%;
    gap: 0;
    flex-wrap: wrap;
  }

  .explore-group-listing > .flex > .flex {
    flex-basis: calc(100% / var(--footer-column-count));
  }

  .explore-group-listing .accordion-item {
    border-top-color: var(--color-brand-light-gray);
  }

  .explore-group-listing .accordion-item .item-heading {
    padding: var(--gap12) var(--gap24) var(--gap12) 0;
    min-height: 0;
    font-size: 0.9rem;
    line-height: 1.1;
    text-transform: uppercase;
    letter-spacing: 0.05em;
  }

  .explore-group-listing .accordion-item .item-heading .item-toggle {
    width: var(--gap18);
    height: var(--gap18);
  }

  .explore-group-listing .accordion-item .item-content {
    padding: var(--gap18) var(--gap24) var(--gap24) 0;
    font-size: 0.9rem;
    line-height: 1.1;
  }

  .explore-group-listing .accordion-item .item-content .footer-group-category {
    font-family: var(--font-family-heading);
    font-weight: 600;
    padding-bottom: var(--gap18);
    font-size: 0.8rem;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: var(--color-brand-blue);
  }

  .explore-group-listing .accordion-item .item-content .footer-group-title {
    font-family: var(--font-family-heading);
    font-weight: 600;
    padding-bottom: var(--gap12);
    font-size: 0.9rem;
  }

  .explore-group-listing .accordion-item .item-content ul {
    font-size: 0.8rem;
    line-height: 1.3;
    display: flex;
    flex-direction: column;
    gap: var(--gap9);
    list-style: none;
  }

  .explore-group-listing .accordion-item .item-content ul li {
    color: var(--color-text-gray);
  }

  .explore-group-listing .accordion-item .item-content ul li a {
    color: var(--color-text);
  }

  .explore-group-listing .accordion-item .item-content ul li a:hover {
    color: var(--color-brand-army);
  }

  .explore-group-listing .accordion-item .item-content > ul:not(:last-child) {
    margin-bottom: var(--gap24);
  }

  @keyframes riverScroll {
    0% {
      transform: translateX(0);
    }

    100% {
      transform: translateX(-50%);
    }
  }

  /* Sustainability ESG Framework */
  .esg-framework {
    --row-label-width: clamp(84px, 9vw, 130px);
    --objectives-top: 8%;
    --objectives-height: clamp(240px, 32vw, 360px);
    --objectives-gap: clamp(56px, 6vw, 140px);
    --goals-top: calc(
      var(--objectives-top) + var(--objectives-height) + var(--objectives-gap)
    );
    position: relative;
    overflow: hidden;
  }

  .esg-framework .esg-pin {
    position: relative;
    height: 100vh;
    min-height: 720px;
    background-image: url(../images/bg/bg-sus-bottom.png);
    background-size: 100% auto;
    background-position: center bottom;
    background-repeat: no-repeat;
  }

  .esg-framework .esg-canvas {
    position: absolute;
    inset: var(--header-offset) 0 0 0;
    padding: 0;
    box-sizing: border-box;
  }

  .esg-framework:not(.is-esg-inview) .esg-canvas {
    opacity: 0;
    pointer-events: none;
  }

  /* .esg-framework .esg-canvas::before {
    content: "";
    position: absolute;
    inset: 0;
    background:
        radial-gradient(circle at 20% 20%, rgba(32, 74, 138, 0.12), transparent 55%),
        radial-gradient(circle at 80% 70%, rgba(138, 198, 70, 0.12), transparent 50%);
    pointer-events: none;
} */

  .esg-framework .master-circle {
    position: absolute;
    left: 50%;
    top: 50%;
    --master-size: clamp(170px, 50vw, 30vw);
    width: var(--master-size);
    aspect-ratio: 1 / 1;
    border-radius: 50%;
    background: linear-gradient(
      135deg,
      #b5d306,
      var(--color-brand-gold),
      #00a99d,
      var(--color-brand-purple)
    );
    background-size: 200% 200%;
    color: var(--color-white);
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    font-family: var(--font-family-heading);
    font-weight: 700;
    font-size: clamp(0.9rem, calc(var(--master-size) / 12), 1.6rem);
    padding: 20px;
    box-shadow: 0 24px 40px rgba(0, 0, 0, 0.18);
    transform: translate(-50%, -50%);
    z-index: 3;
    animation: masterPulse 6s ease-in-out infinite;
  }

  .esg-framework .master-circle span {
    font-size: 3em;
    line-height: 1.1em;
  }

  @keyframes masterPulse {
    0% {
      background-position: 0% 50%;
    }

    50% {
      background-position: 100% 50%;
    }

    100% {
      background-position: 0% 50%;
    }
  }

  .esg-framework .pillar {
    --pillar-color: var(--color-brand-blue);
    position: absolute;
    left: 50%;
    top: 50%;
    width: clamp(120px, 14vw, 160px);
    text-align: center;
    transform: translate(-50%, -50%);
    z-index: 4;
  }

  .esg-framework .pillar-circle {
    width: 100%;
    aspect-ratio: 1 / 1;
    border-radius: 50%;
    background: var(--pillar-color);
    color: var(--color-white);
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 8px;
    font-family: var(--font-family-heading);
    font-weight: 600;
    box-shadow: 0 18px 28px rgba(0, 0, 0, 0.16);
  }

  .esg-framework .pillar-circle span {
    font-size: 1.5rem;
    line-height: 1em;
  }

  .esg-framework .pillar-icon {
    width: clamp(22px, 4vw, var(--gap48));
    height: auto;
    display: block;
    filter: brightness(0) invert(1);
  }

  .esg-framework .pillar-subtitle {
    /* position: absolute;
    left: 50%;
    top: 100%; */
    /* transform: translateX(-50%); */
    /* width: min(210px, 28vw); */
    margin-top: 0;
    font-size: 1rem;
    line-height: 1.3;
    font-family: var(--font-family-heading);
    color: var(--color-text);
    font-weight: 600;
    text-align: center;
    pointer-events: none;
    width: 100%;
    max-width: 100%;
    white-space: normal;
    margin-inline: 0;
    align-self: stretch;
  }

  .esg-framework .pillar--planet {
    --pillar-color: var(--color-brand-army);
  }

  .esg-framework .pillar--people {
    --pillar-color: var(--color-brand-gold);
  }

  .esg-framework .pillar--peace {
    --pillar-color: #00a99d;
  }

  .esg-framework .pillar--prosperity {
    --pillar-color: var(--color-brand-purple);
  }

  .esg-framework .objectives-row,
  .esg-framework .goals-area,
  .esg-framework .sdg-strip {
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    width: min(1200px, 92%);
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    grid-template-rows: auto 1fr;
    row-gap: clamp(18px, 2vw, 32px);
    column-gap: var(--gap18);
    align-items: stretch;
    z-index: 2;
  }

  .esg-framework .objectives-row {
    top: var(--objectives-top);
    grid-template-columns: 1fr;
    grid-template-rows: auto auto auto;
    min-height: var(--objectives-height);
    z-index: 4;
  }

  .esg-framework .objectives-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: var(--gap18);
    align-items: stretch;
  }

  .esg-framework .pillar-group {
    --pillar-group-bg-opacity: 0;
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: var(--gap18);
    border-radius: 12px;
    padding: var(--gap18);
    overflow: visible;
    height: 100%;
  }

  .esg-framework .pillar-group::before {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: inherit;
    background: var(--color-white);
    opacity: var(--pillar-group-bg-opacity, 0);
    pointer-events: none;
    z-index: 0;
  }

  .esg-framework .pillar-group > * {
    position: relative;
    z-index: 1;
  }

  .esg-framework .pillar-group .pillar {
    position: relative;
    left: auto;
    top: auto;
    transform: none;
    width: clamp(120px, 14vw, 160px);
  }

  .esg-framework .pillar-group .goals-column {
    width: 100%;
    text-align: left;
    background: transparent;
    border-radius: 0;
    padding: 0;
    min-height: 0;
    flex: 1 1 auto;
    align-self: stretch;
  }

  .esg-framework .row-label {
    grid-column: 1 / -1;
    display: inline-flex;
    align-items: baseline;
    gap: 12px;
    align-items: center;
    justify-content: center;
    text-align: center;
    width: 100%;
    font-family: var(--font-family-heading);
    font-weight: 700;
    font-size: clamp(1.1rem, 4vw, 3rem);
    color: var(--color-brand-blue);
    position: relative;
  }

  .row-label .num {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 2em;
    padding: 0.18em 0.55em;
    border-radius: 999px;
    background: var(--color-brand-emerald);
    color: var(--color-white);
    line-height: 1.6;
    font-size: 0.6em;
  }

  .esg-framework .goals-area {
    top: var(--goals-top);
    grid-template-columns: 1fr;
    grid-template-rows: auto 1fr;
  }

  .esg-framework .goals-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: var(--gap18);
  }

  .esg-framework .goals-column {
    background: var(--color-white);
    border-radius: 12px;
    padding: var(--gap18);
    display: flex;
    flex-direction: column;
    gap: 8px;
    min-height: 170px;
  }

  .esg-framework .goals-column-title {
    font-weight: 600;
    color: var(--color-brand-blue);
    font-size: 1.25rem;
    line-height: 1.2;
    letter-spacing: 0.02em;
    text-align: center;
    font-family: var(--font-family-heading);
  }

  .esg-framework .goal {
    font-size: 0.9rem;
    font-family: var(--font-family-heading);
    line-height: 1.25;
    color: var(--color-text);
    display: flex;
    align-items: flex-start;
    gap: 8px;
  }

  .esg-framework .goal .num {
    display: inline-flex;
    flex-shrink: 0;
    flex-grow: 0;
    align-items: center;
    justify-content: center;
    width: 2em;
    height: 2em;
    padding: 0;
    border-radius: 50%;
    background: var(--color-brand-blue);
    color: var(--color-white);
    font-weight: 700;
    font-size: 0.8rem;
    line-height: 1;
    transform: translateY(-0.3em);
  }

  .esg-framework .row-label--goals {
    margin-top: var(--gap12);
  }

  .esg-framework .align-with {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: min(1100px, 86%);
    display: flex;
    flex-direction: column;
    gap: 16px;
    align-items: center;
    z-index: 2;
  }

  .esg-framework .align-label {
    font-family: var(--font-family-heading);
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    font-size: 1rem;
    color: var(--color-brand-army);
  }

  .esg-framework .align-main {
    font-family: var(--font-family-heading);
    font-weight: 700;
    font-size: clamp(1rem, 3vw, 2rem);
    color: var(--color-brand-blue);
  }

  .esg-framework .align-badge {
    width: min(60vmin, 420px);
    aspect-ratio: 1 / 1;
    background: url("../images/icons/petronas-sus-approach.png") center /
      contain no-repeat;
    display: grid;
    place-items: center;
    font-size: 0.55rem;
    font-weight: 700;
    color: var(--color-white);
    text-transform: uppercase;
    letter-spacing: 0.04em;
  }

  .esg-framework .align-badge span {
    display: none;
  }

  .esg-framework .sdg-strip {
    top: 50%;
    bottom: auto;
    transform: translate(-50%, -50%);
    grid-template-columns: 1fr;
    grid-template-rows: auto 1fr;
    align-items: center;
  }

  .esg-framework .sdg-tiles {
    display: grid;
    grid-template-columns: repeat(10, minmax(0, 1fr));
    gap: 8px;
  }

  .esg-framework .sdg-icons {
  }

  .esg-framework .sdg-icons img {
    max-width: 50%;
    display: block;
    width: 100%;
    height: auto;
    margin: 0 auto;
  }

  .esg-framework .sdg-tile {
    aspect-ratio: 1/1;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 700;
    font-size: 0.7rem;
    color: #1b1d20;
  }

  .breadcrumb {
    background-color: var(--color-brand-ice);
    font-size: 1rem;
    line-height: 1.4;
    font-family: var(--font-family-heading);
    padding: var(--gap12) var(--gap72);
    border-bottom: 1px solid var(--color-brand-light-gray);
  }

  .breadcrumb ul {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
  }

  .breadcrumb ul li {
    display: inline-flex;
    align-items: center;
    color: var(--color-text-gray);
  }

  .breadcrumb ul li + li::before {
    content: "";
    width: var(--gap9);
    height: var(--gap9);
    margin: 0 var(--gap9);
    background: url("../images/icons/icon-chevron.svg") no-repeat center /
      contain;
    opacity: 0.7;
    flex: 0 0 auto;
    transform: rotate(-90deg);
  }

  .breadcrumb ul li a {
    color: var(--color-text);
    text-decoration: none;
  }

  .breadcrumb ul li a:hover {
    color: var(--color-brand-army);
  }

  .breadcrumb--property-detail {
    background-color: var(--color-brand-ice);
    border-top: 1px solid var(--color-brand-light-gray);
  }

  .breadcrumb--property-detail ul {
    min-height: 24px;
  }

  .breadcrumb--property-detail ul li,
  .breadcrumb--property-detail ul li a,
  .breadcrumb--property-detail ul li span {
    color: var(--color-text-gray);
  }

  .breadcrumb--property-detail ul li a:hover,
  .breadcrumb--property-detail ul li a:focus-visible {
    color: var(--color-brand-blue);
  }

  .corporate-video {
    width: min(100%, var(--limit-width));
    margin-inline: auto;
  }

  .corporate-video__preview {
    position: relative;
    border-radius: var(--gap18);
    overflow: hidden;
    background: #0b0f14;
    box-shadow: 0 24px 60px rgb(0 0 0 / 0.25);
  }

  .corporate-video__preview::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(
      180deg,
      rgb(0 0 0 / 0.1) 0%,
      rgb(0 0 0 / 0.55) 75%
    );
    pointer-events: none;
  }

  body.about .corporate-video__preview::after {
    content: none;
  }

  .corporate-video--about-style .corporate-video__preview::after {
    content: none;
  }

  .corporate-video__preview-media {
    display: block;
    width: 100%;
    height: auto;
    aspect-ratio: 16 / 9;
    object-fit: cover;
  }

  .grid-card__media.ratio-4-3 .corporate-video__preview-media,
  .grid-card__media.ratio-9-16 .corporate-video__preview-media {
    width: 100%;
    height: 100%;
    aspect-ratio: auto;
    object-fit: cover;
  }

  .corporate-video__play-toggle {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 1rem 2rem;
    border-radius: 999px;
    border: 1px solid rgba(255, 255, 255, 0.45);
    background: rgba(0, 0, 0, 0.45);
    color: #ffffff;
    font-family: var(--font-family-heading);
    font-size: 0.9rem;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    cursor: pointer;
    pointer-events: auto;
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
    transition:
      background-color 0.2s ease,
      border-color 0.2s ease,
      color 0.2s ease,
      box-shadow 0.2s ease;
  }

  .corporate-video__play-toggle:hover,
  .corporate-video__play-toggle:focus-visible {
    background: rgba(0, 0, 0, 0.65);
    border-color: rgba(255, 255, 255, 0.7);
    box-shadow: 0 12px 24px rgb(0 0 0 / 0.3);
  }

  .corporate-video__cta {
    position: absolute;
    left: 50%;
    top: 50%;
    right: auto;
    bottom: auto;
    transform: translate(-50%, -50%);
    z-index: 3;
  }

  .corporate-video__cta:focus-visible {
    outline: 2px solid rgba(var(--color-brand-green-rgb), 0.6);
    outline-offset: 2px;
  }

  body.about .corporate-video__play-toggle {
    width: 68px;
    height: 68px;
    padding: 0;
    justify-content: center;
    gap: 0;
    border-radius: 999px;
    border-color: var(--color-brand-light-gray);
    background-color: var(--color-brand-blue);
    color: #ffffff;
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
  }

  .corporate-video--about-style .corporate-video__play-toggle {
    width: 68px;
    height: 68px;
    padding: 0;
    justify-content: center;
    gap: 0;
    border-radius: 999px;
    border-color: var(--color-brand-light-gray);
    background-color: var(--color-brand-blue);
    color: #ffffff;
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
  }

  body.about .corporate-video__play-toggle:hover,
  body.about .corporate-video__play-toggle:focus-visible {
    background-color: var(--color-brand-blue);
    border-color: var(--color-brand-light-gray);
    color: #ffffff;
  }

  .corporate-video--about-style .corporate-video__play-toggle:hover,
  .corporate-video--about-style .corporate-video__play-toggle:focus-visible {
    background-color: var(--color-brand-blue);
    border-color: var(--color-brand-light-gray);
    color: #ffffff;
  }

  .custom-video-modal,
  .corporate-video-modal {
    width: min(1100px, 92vw);
    background: #0b0f14;
    border-radius: var(--gap18);
    padding: 0;
    box-shadow: 0 24px 60px rgb(0 0 0 / 0.45);
  }

  .custom-video-modal__media,
  .corporate-video-modal__media {
    width: 100%;
  }

  .site-modal--frameless .custom-video-modal--portrait {
    width: min(
      calc(100vw - var(--gap48)),
      calc((100dvh - var(--gap72)) * 9 / 16)
    );
    max-height: calc(100vh - var(--gap72));
    max-height: calc(100dvh - var(--gap72));
  }

  .site-modal--frameless
    .custom-video-modal--portrait
    .custom-video-modal__media {
    width: 100%;
    aspect-ratio: 9 / 16;
  }

  .custom-video-modal .plyr,
  .custom-video-modal .plyr__video-wrapper,
  .corporate-video-modal .plyr,
  .corporate-video-modal .plyr__video-wrapper {
    border-radius: var(--gap12);
    overflow: hidden;
    background: #000000;
  }

  .policy-icon {
    width: clamp(22px, 4vw, var(--gap48));
    height: auto;
    display: block;
    margin: 0 auto;
    filter: brightness(0) invert(1);
  }

  .grid-showcase.sus-policy-cards:not([data-grid-carousel="on"]) .grid-track {
    gap: 0;
    grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
  }

  .sus-plan {
    background-image: url(../images/bg/bg-sus-top.png);
    background-size: 100% auto;
    background-position: center top;
    background-repeat: no-repeat;
    background-color: #f2f7e1;
  }

  .pending-tag {
    position: relative;
  }

  .pending-tag:before {
    content: "Pending from client";
    display: inline-block;
    position: absolute;
    top: 50%;
    left: 50%;
    color: #666666;
    text-transform: uppercase;
    font-weight: 600;
    font-size: 11px;
    transform: translate(-50%, -50%);
    white-space: nowrap;
    z-index: 2;
  }

  .search-result-label {
    white-space: nowrap;
  }

  .row-footer__social-trigger {
    white-space: nowrap;
  }

  .heading-with-logos {
    width: 100%;
    justify-content: space-between;
  }

  .heading-with-logos .logo-grid {
    justify-content: flex-end;
  }

  .heading-with-logos .logo-grid .logo-grid__item {
    flex-basis: auto;
  }

  .heading-with-logos .logo-grid .logo-grid__item img {
    max-width: 100px;
  }

  .heading-with-logos .logo-grid.single-logo .logo-grid__item img {
    max-width: 240px;
  }

  .heading-with-logos .logo-grid.single-logo2 .logo-grid__item img {
    max-width: 180px;
  }

  .nav-item--career-mobile-only {
    display: list-item;
  }

  .elementor-1316 .elementor-element.elementor-element-8a48531 .mf-textarea {
    height: 221px !important;
  }

  /* =============================================================================
   About page — at a glance (scoped; from concept about row-page-intro / about-stats)
   Uses .about-page-intro* only so global .hero-stats / .row-page-intro stay untouched.
   ============================================================================= */

  .about-page-intro {
    padding: 0;
    background-color: var(--color-surface);
  }

  .about-page-intro__inner {
    padding-block: calc(var(--gap108));
    background-color: var(--color-white);
  }

  .about-page-intro__row {
    align-items: flex-start;
  }

  .about-page-intro__col--copy {
    flex-basis: 100%;
  }

  .about-page-intro__col--stats {
    flex-basis: 100%;
    max-width: 600px;
    flex-shrink: 0;
  }

  .about-page-intro__copy {
    margin: 0;
    font-size: 1rem;
    line-height: 1.6;
    color: var(--color-text);
  }

  .about-page-intro__copy > * {
    margin: 1em 0;
  }

  .about-page-intro__copy > *:first-child {
    margin-top: 0;
  }

  .about-page-intro__copy > *:last-child {
    margin-bottom: 0;
  }

  .about-page-intro__stats {
    display: flex;
    flex-wrap: wrap;
    gap: var(--gap48);
    min-width: 0;
    flex-basis: content;
  }

  .about-page-intro__stat {
    flex-basis: calc((100% - var(--gap48)) / 2);
    width: calc((100% - var(--gap48)) / 2);
    max-width: calc((100% - var(--gap48)) / 2);
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: var(--gap6);
    box-sizing: border-box;
  }

  .about-page-intro__stat-label {
    font-size: 1rem;
    line-height: 1.3;
    font-weight: 700;
    display: flex;
    align-items: center;
    color: var(--color-brand-pjh-light-green);
    gap: 5px;
    white-space: unset;
    font-family: var(--font-family-heading);
  }

  .about-page-intro__stat-number {
    font-family: var(--font-family-heading);
    font-size: 4rem;
    line-height: 1.2em;
    color: var(--color-brand-pjh-green);
    font-weight: 300;
    white-space: nowrap;
    letter-spacing: -0.05em;
    display: inline-flex;
    gap: 0.1em;
    align-items: center;
  }

  .about-page-intro__stat-number .currency {
    display: inline-block;
  }

  /* =============================================================================
   About page — mission + shared values (scoped; concept mint / about-expand)
   ============================================================================= */

  .about-page-values__shell {
    max-width: 100%;
  }

  .about-page-values__stack {
    width: 100%;
  }

  .about-page-values__lead {
    width: 100%;
    max-width: min(100%, 960px);
    margin-inline: auto;
    text-align: center;
    align-items: center;
  }

  .about-page-values__eyebrow {
    text-align: center;
  }

  .about-page-values__heading {
    text-align: center;
    margin-inline: auto;
  }

  .about-page-values__video {
    overflow: hidden;
    border-radius: var(--gap18);
    width: 100%;
    max-width: 100%;
  }

  .about-page-values__video video {
    display: block;
    width: 100%;
    height: auto;
  }

  .about-page-values__values {
    display: flex;
    flex-direction: column;
    gap: var(--gap);
    width: 100%;
  }

  .about-page-values__values-title {
    margin-bottom: 0;
  }

  .about-page-values__columns {
    width: 100%;
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: var(--gap24);
    align-items: stretch;
  }

  .about-page-values__column {
    padding: var(--gap);
    border-radius: var(--gap18);
    display: flex;
    flex-direction: column;
    gap: var(--gap12);
    text-align: center;
    background-color: #f5f5f1;
    box-sizing: border-box;
    min-width: 0;
  }

  .about-page-values__icon img {
    display: block;
    width: var(--gap72);
    height: var(--gap72);
    margin: 0 auto;
    object-fit: contain;
  }

  .about-page-values__column-title {
    margin: 0;
  }
}

/* ── Residential Intro Two-Column Section ── */
.row-residential-intro {
  display: grid;
  grid-template-columns: 1fr 1fr;
  align-items: stretch;
  overflow: hidden;
  column-gap: 5px;
}

.residential-intro__left {
  display: flex;
  flex-direction: column;
}

.residential-intro__left-image {
  height: 420px;
  flex-shrink: 0;
  overflow: hidden;
}

.residential-intro__left-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  display: block;
}

.residential-intro__left-content {
  flex: 1;
  display: flex;
  align-items: center;
  background-color: var(--color-bg);
  padding-block: var(--gap48);
}

.residential-intro__right {
  overflow: hidden;
}

.residential-intro__right img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  display: block;
}

.row-commercial-highlights {
  padding-bottom: 4px;
}

.row-commercial-highlights .commercial-property-section:empty {
  display: none;
}

/* ============================================================
   Portfolio Card Drawer
   ============================================================ */

.pf-noscroll {
  overflow: hidden !important;
}

.pf-drawer-wrap {
  position: fixed;
  inset: 0;
  z-index: 999999;
  display: block;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition:
    opacity 0.38s ease,
    visibility 0s linear 0.38s;
}

.pf-drawer-wrap.is-open {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transition:
    opacity 0.38s ease,
    visibility 0s linear 0s;
}

.pf-drawer-backdrop {
  position: absolute;
  inset: 0;
  background: rgba(17, 24, 39, 0.45);
  opacity: 0;
  transition: opacity 0.38s ease;
}

.pf-drawer-wrap.is-open .pf-drawer-backdrop {
  opacity: 1;
}

.pf-drawer {
  position: absolute;
  top: 0;
  right: 0;
  height: 100%;
  width: min(860px, 92vw);
  background: #fff;
  overflow: auto;
  box-shadow: -12px 0 40px rgba(0, 0, 0, 0.15);
  padding: 72px;
  transform-origin: right center;
  transform: translate3d(28px, 0, 0) scaleX(0.94);
  opacity: 0;
  transition:
    transform 0.6s cubic-bezier(0.16, 1, 0.3, 1),
    opacity 0.4s ease;
  will-change: transform, opacity;
  overscroll-behavior: contain;
  -webkit-overflow-scrolling: touch;
}

.pf-drawer-wrap.is-open .pf-drawer {
  transform: translate3d(0, 0, 0) scaleX(1);
  opacity: 1;
}

.pf-drawer-close {
  position: absolute;
  top: 18px;
  right: 18px;
  width: 36px;
  height: 36px;
  border-radius: 999px;
  border: 1px solid #ffffff;
  padding: 0;
  background: var(--color-brand-blue, #204a8a);
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  line-height: 1;
  z-index: 10;
}

.pf-drawer-close i {
  display: block;
  font-size: 16px;
  line-height: 1;
  color: #ffffff;
}

.pf-drawer-close:hover,
.pf-drawer-close:focus-visible {
  background: transparent;
  border: 1px solid var(--color-brand-blue, #204a8a);
}

.pf-drawer-close:hover i,
.pf-drawer-close:focus-visible i {
  color: var(--color-brand-blue, #204a8a);
}

.open-pf-drawer {
  background: none;
  border: none;
  padding: 0;
  text-align: left;
  cursor: pointer;
  display: block;
  width: 100%;
}

@media (prefers-reduced-motion: reduce) {
  .property-detail-hero--custom.is-animation-ready .property-detail-hero__custom-background,
  .property-detail-hero--custom.is-animation-ready .property-detail-hero__custom-overlay,
  .property-detail-hero--custom.is-animation-ready .property-detail-hero__custom-top-image,
  .property-detail-hero--custom.is-animation-ready .property-detail-hero__custom-label,
  .property-detail-hero--custom.is-animation-ready .property-detail-hero__custom-heading,
  .property-detail-hero--custom.is-animation-ready .property-detail-hero__custom-bottom-image,
  .property-detail-hero--custom.is-animation-ready .property-detail-hero__custom-cta {
    transition: none;
  }

  .pf-drawer-wrap,
  .pf-drawer-backdrop,
  .pf-drawer {
    transition: none;
  }
}

@media (max-width: 640px) {
  .pf-drawer {
    width: 100vw;
    padding: 28px 18px 44px;
  }
}

.property-detail-complete {
  background-color: var(--color-white);
  padding: var(--gap72);
}

.property-detail-complete__inner {
  width: 100%;
  max-width: none;
  margin-inline: auto;
}

.property-detail-complete__top,
.property-detail-complete__media-section,
.property-detail-complete__overlap-row,
.property-detail-complete__grid {
  display: grid;
  grid-template-columns: minmax(0, 55fr) minmax(0, 45fr);
  align-items: start;
  gap: var(--gap48);
}

.property-detail-complete__top {
  align-items: start;
  margin-bottom: var(--gap48);
}

.property-detail-complete__media-section {
  align-items: stretch;
  margin-bottom: var(--gap48);
}

.property-detail-complete__media-left {
  display: flex;
  flex-direction: column;
  gap: var(--gap24);
  min-width: 0;
}

.property-detail-complete__overlap-section {
  display: flex;
  flex-direction: column;
  gap: var(--gap36, 36px);
  margin-bottom: var(--gap48);
}

.property-detail-complete__overlap-row--bottom {
  align-items: stretch;
}

.property-detail-complete__overlap-row--top {
  align-items: stretch;
}

.property-detail-complete__overlap-left {
  display: flex;
  flex-direction: column;
  gap: 0;
  min-width: 0;
}

.property-detail-complete__overlap-image-pair {
  position: static;
  margin: 0;
  padding: 0;
  height: 100%;
  max-height: 100%;
}

.property-detail-complete__overlap-image-pair .property-detail-complete__image {
  aspect-ratio: auto;
  height: 100%;
  max-height: 100%;
}

.property-detail-complete__overlap-panel {
  background-color: #e8f4da;
  margin-left: -72px;
  margin-top: var(--gap36, 36px);
  margin-right: -84px;
  padding: var(--gap36, 36px) calc(var(--gap36, 36px) + var(--gap48))
    calc(var(--gap72) + var(--gap36, 36px)) var(--gap72);
  display: flex;
  flex-direction: column;
  gap: var(--gap36, 36px);
}

.property-detail-complete__overlap-bottom-image {
  position: relative;
  z-index: 2;
  width: 100%;
  max-width: 100%;
  margin-top: -72px !important;
  margin-right: auto;
  margin-bottom: 0;
  margin-left: 0;
}

.property-detail-complete__overlap-right {
  display: flex;
  flex-direction: column;
  gap: var(--gap36, 36px);
  min-width: 0;
}

.property-detail-complete__image--overlap-right {
  aspect-ratio: 4 / 5;
  margin-top: 0;
  min-height: 0;
  flex: 1 1 auto;
}

.property-detail-complete__column {
  display: flex;
  flex-direction: column;
  gap: var(--gap24);
  min-width: 0;
}

.property-detail-complete__intro,
.property-detail-complete__block {
  display: flex;
  flex-direction: column;
  gap: var(--gap12);
}

.property-detail-complete__primary-copy,
.property-detail-complete__feature-copy {
  gap: var(--gap18);
}

.property-detail-complete__primary-title,
.property-detail-complete__primary-body,
.property-detail-complete__feature-title,
.property-detail-complete__feature-body {
  padding-bottom: var(--gap18);
  border-bottom: 1px solid rgba(0, 133, 120, 0.18);
}

.property-detail-complete__feature-copy--green
  .property-detail-complete__feature-title,
.property-detail-complete__feature-copy--green
  .property-detail-complete__feature-body {
  border-bottom-color: var(--color-white);
}

.property-detail-complete__content-combined
  .property-detail-complete__feature-body:not(:last-child),
.property-detail-complete__content-combined
  .property-detail-complete__primary-body:not(:last-child) {
  padding-bottom: 0;
  border-bottom: 0;
}

.property-detail-complete__primary-title,
.property-detail-complete__feature-title {
  color: var(--color-brand-pjh-light-green);
}

.property-detail-complete__heading {
  margin: 0;
  font-size: clamp(2rem, 4vw, 3.25rem);
  line-height: 1.05;
}

.property-detail-complete__subheading {
  margin: 0;
  font-size: 1.35rem;
  line-height: 1.2;
}

.property-detail-complete__stat-label {
  margin: 0;
  line-height: 1.2;
}

.property-detail-complete__copy > * {
  margin-top: 0;
}

.property-detail-complete__copy > * + * {
  margin-top: var(--gap12);
}

.property-detail-complete__image {
  margin: 0;
  overflow: hidden;
  background-color: var(--color-surface);
}

.property-detail-complete__image img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
}

@media (min-width: 901px) {
  .property-detail-complete__overlap-row--bottom {
    position: relative;
    margin-left: calc(var(--gap72) * -1);
    margin-right: calc(var(--gap72) * -1);
    padding-left: var(--gap72);
    padding-right: var(--gap72);
    background-color: #e8f4da;
  }

  .property-detail-complete__overlap-row--bottom
    .property-detail-complete__overlap-panel {
    background-color: transparent;
    margin: 0;
    padding: var(--gap36, 36px) var(--gap36, 36px) var(--gap36, 36px) 0;
  }

  .property-detail-complete__overlap-row--bottom
    .property-detail-complete__overlap-bottom-image {
    width: calc(100% - var(--gap36, 36px));
    max-width: calc(100% - var(--gap36, 36px));
    margin: 0 !important;
  }

  .property-detail-complete__overlap-right--bottom {
    height: 100%;
  }

  .property-detail-complete__overlap-right--bottom
    .property-detail-complete__image--overlap-right {
    aspect-ratio: auto;
    height: 100%;
    min-height: 100%;
  }
}

.property-detail-complete__image--wide {
  aspect-ratio: 16 / 10;
}

.property-detail-complete__image--square {
  aspect-ratio: 1 / 1;
}

.property-detail-complete__image--tall {
  aspect-ratio: 4 / 3;
}

.property-detail-complete__image--media-right {
  aspect-ratio: auto;
  height: 100%;
  min-height: 100%;
}

.property-detail-complete__image--spaced {
  margin-top: var(--gap12);
}

.property-detail-complete__image-pair {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--gap18);
}

.property-detail-complete__panel {
  padding: var(--gap36, 36px);
}

.property-detail-complete__panel--green,
.property-detail-complete__stat-panel {
  background-color: #e8f4da;
}

.property-detail-complete__stat-panel {
  border-radius: 16px;
  padding: var(--gap24);
  display: flex;
  align-items: center;
}

.property-detail-complete__stat-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: var(--gap18);
  width: 100%;
}

.property-detail-complete__stat-card {
  min-height: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: flex-start;
  gap: var(--gap6, 6px);
}

.property-detail-complete__stat-card + .property-detail-complete__stat-card {
  padding-top: var(--gap18);
  border-top: 1px solid var(--color-white);
}

.property-detail-complete__stat-heading {
  display: flex;
  align-items: center;
  gap: var(--gap8, 8px);
}

.property-detail-complete__stat-icon {
  width: 35px;
  height: 35px;
  object-fit: contain;
}

.property-detail-complete__stat-value {
  margin: 0;
  font-family: Verdana, sans-serif;
  font-size: 0.95rem;
  line-height: 1.45;
}

.property-detail-complete__list {
  margin: 0;
}

.property-detail-complete .green-list li::before {
  top: 0.72em;
  transform: translateY(-50%);
  width: 9px;
  height: 9px;
  border-radius: 50%;
  background-image: none;
  background-color: #008578;
}

.property-detail-complete__cta {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--gap12);
  margin-top: var(--gap36, 36px);
  text-align: center;
}

.property-detail-complete__cta p {
  margin: 0;
  font-family: Verdana, sans-serif;
  font-size: 0.9rem;
}

.property-detail-complete__cta-actions {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: var(--gap12);
  flex-wrap: wrap;
}

.property-detail-related__heading {
  margin: 0 0 var(--gap24);
  text-align: center;
  font-size: 2rem;
  line-height: 1.2;
}

.property-tabs--detail-related .portfolio-tabs__nav {
  justify-content: center;
}

.property-tabs__panel--detail-related {
  margin-top: var(--gap24);
}

@media (max-width: 900px) {
  .property-detail-complete {
    padding: var(--gap36, 36px);
  }

  .property-detail-complete__top,
  .property-detail-complete__media-section,
  .property-detail-complete__overlap-row,
  .property-detail-complete__grid {
    grid-template-columns: minmax(0, 1fr);
    gap: var(--gap36, 36px);
  }

  .property-detail-complete__overlap-image-pair,
  .property-detail-complete__image--overlap-right {
    margin-top: 0;
  }

  .property-detail-complete__overlap-image-pair {
    margin-bottom: 0;
    padding-inline: 0;
  }

  .property-detail-complete__overlap-panel {
    margin-left: 0;
    margin-right: 0;
    margin-top: 0;
    padding: var(--gap36, 36px);
  }

  .property-detail-complete__overlap-bottom-image {
    width: 100%;
    margin-top: var(--gap36, 36px);
  }

  .property-detail-complete__image--overlap-right {
    aspect-ratio: 16 / 10;
    min-height: 0;
  }

  .property-detail-complete__image--media-right {
    aspect-ratio: 16 / 10;
    height: auto;
    min-height: 0;
  }

  .property-detail-complete__stat-grid {
    grid-template-columns: minmax(0, 1fr);
  }
}

@media (max-width: 560px) {
  .property-detail-complete {
    padding: var(--gap24);
  }

  .property-detail-complete__image-pair {
    grid-template-columns: minmax(0, 1fr);
  }

  .property-detail-complete__panel {
    padding: var(--gap24);
  }
}

/* Property detail template: tablet and mobile layout system.
 * Keep this inside the same html scope as the base component rules so the
 * responsive declarations have matching cascade specificity. */
html {
  .property-detail-coming-soon__heading {
    font-size: clamp(2rem, 5vw, 3.5rem) !important;
    overflow-wrap: anywhere;
  }

@media (max-width: 1100px) {
  .property-detail-hero,
  .property-detail-hero--custom,
  .property-detail-hero--image-only {
    border-radius: 0 !important;
  }

  .property-detail-hero--custom {
    min-height: clamp(560px, 78svh, 760px);
  }

  .property-detail-hero__custom-content {
    width: min(100%, 860px);
    min-height: inherit;
    padding: 56px 40px;
    gap: 32px;
  }

  .property-detail-hero__custom-copy {
    gap: 18px;
  }

  .property-detail-hero__custom-top-image {
    max-width: min(72vw, 320px);
    max-height: 130px;
  }

  .property-detail-hero__custom-bottom-image {
    max-width: min(68vw, 300px);
    max-height: 90px;
  }

  .property-detail-hero__custom-heading {
    max-width: 760px;
  }

  .property-detail-hero--image-only {
    min-height: clamp(440px, 70svh, 680px);
  }

  .breadcrumb--property-detail {
    padding: 12px 40px;
    font-size: 0.95rem;
  }

  .breadcrumb--property-detail ul {
    row-gap: 6px;
  }

  .breadcrumb--property-detail ul li:last-child {
    min-width: 0;
    overflow-wrap: anywhere;
  }

  .property-detail-section-one {
    min-height: 0;
    display: grid;
    grid-template-columns: minmax(0, 1fr);
  }

  .property-detail-section-one__background {
    position: relative;
    inset: auto;
    z-index: 0;
    height: clamp(340px, 56vw, 560px);
    object-position: center;
  }

  .property-detail-section-one__panel,
  .property-detail-section-one--overlay-left .property-detail-section-one__panel {
    width: 100%;
    min-height: 0;
    margin: 0;
    padding: 64px 48px;
    background: rgba(255, 255, 255, 0.97);
    backdrop-filter: none;
  }

  .property-detail-section-one__content {
    max-width: 64rem;
  }

  .property-detail-section-one__heading {
    max-width: 24ch;
  }

  .property-detail-section-one__description {
    max-width: 65ch;
  }

  .property-detail-section-two__inner {
    padding-block: 56px;
  }

  .hero-stats.home-stats.property-detail-section-two__metrics,
  .hero-stats.home-stats.property-detail-section-two__metrics.col2,
  .hero-stats.home-stats.property-detail-section-two__metrics.col3 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    padding-inline: 40px;
  }

  .hero-stats.home-stats.property-detail-section-two__metrics.col1 {
    grid-template-columns: minmax(0, 1fr);
  }

  .hero-stats.home-stats.property-detail-section-two__metrics.col3
    > .property-detail-section-two__metric:last-child {
    grid-column: 1 / -1;
  }

  .hero-stats.home-stats.property-detail-section-two__metrics
    > .property-detail-section-two__metric {
    border-left: 0 !important;
  }

  .hero-stats.home-stats.property-detail-section-two__metrics
    > .property-detail-section-two__metric:nth-child(even) {
    border-left: 1px solid #159c83 !important;
  }

  .hero-stats.home-stats.property-detail-section-two__metrics
    > .property-detail-section-two__metric:nth-child(n + 3) {
    margin-top: 28px;
    padding-top: 28px;
    border-top: 1px solid #159c83;
  }

  .property-detail-section-two__ctas,
  .property-detail-section-two__features-header {
    padding-inline: 40px;
  }

  .grid-showcase.property-detail-section-two__feature-carousel {
    --grid-carousel-columns: 3 !important;
  }

  .property-detail-section-two__feature-card.grid-card {
    min-height: 210px;
  }

  .property-detail-section-three {
    padding-top: 40px;
    padding-bottom: 64px !important;
  }

  .property-detail-section-three__heading {
    padding-inline: 40px;
  }

  .property-detail-section-four {
    padding-block: 40px;
  }

  .property-detail-section-four__slide.grid-card {
    height: clamp(360px, 58vw, 620px);
  }

  .property-detail-section-four__controls {
    padding-inline: 40px;
  }

  .property-detail-section-five {
    padding: 56px 40px;
  }

  .property-detail-section-five__tabs {
    flex-wrap: wrap;
  }

  .property-detail-section-five__panel {
    height: min(62vh, 640px);
    min-height: 360px;
  }

  .property-detail-section-six {
    min-height: 0;
    grid-template-columns: minmax(0, 1fr);
  }

  .property-detail-section-six__map {
    min-height: clamp(360px, 52vw, 520px);
  }

  .property-detail-section-six__information {
    padding: 56px 40px;
  }

  .property-detail-section-seven {
    padding: 56px 40px;
  }

  .property-detail-related {
    padding: 56px 40px;
  }
}

@media (max-width: 768px) {
  .property-detail-hero--custom {
    min-height: clamp(520px, 78svh, 680px) !important;
    max-height: none !important;
    border-radius: 0 !important;
  }

  .property-detail-hero__custom-content {
    min-height: inherit;
    padding: 48px 24px;
    gap: 24px;
  }

  .property-detail-hero__custom-copy {
    gap: 14px;
  }

  .property-detail-hero__custom-top-image {
    max-width: min(76vw, 260px);
    max-height: 110px;
  }

  .property-detail-hero__custom-bottom-image {
    max-width: min(68vw, 220px);
    max-height: 80px;
  }

  .property-detail-hero__custom-label {
    font-size: 1rem;
  }

  .property-detail-hero--image-only {
    min-height: clamp(360px, 58svh, 520px) !important;
    max-height: none !important;
    border-radius: 0 !important;
  }

  .property-detail-hero--html {
    min-height: 0 !important;
    max-height: none !important;
    border-radius: 0 !important;
  }

  .breadcrumb--property-detail {
    padding: 10px 24px;
    font-size: 0.9rem;
    line-height: 1.35;
  }

  .breadcrumb--property-detail ul {
    row-gap: 4px;
  }

  .breadcrumb--property-detail ul li + li::before {
    width: 7px;
    height: 7px;
    margin-inline: 6px;
  }

  .property-detail-section-one__background {
    height: clamp(260px, 68vw, 420px);
  }

  .property-detail-section-one__panel,
  .property-detail-section-one--overlay-left .property-detail-section-one__panel {
    padding: 40px 24px;
  }

  .property-detail-section-one__description {
    line-height: 1.6;
  }

  .property-detail-section-two__inner {
    padding-block: 48px;
  }

  .hero-stats.home-stats.property-detail-section-two__metrics,
  .hero-stats.home-stats.property-detail-section-two__metrics.col1,
  .hero-stats.home-stats.property-detail-section-two__metrics.col2,
  .hero-stats.home-stats.property-detail-section-two__metrics.col3 {
    grid-template-columns: minmax(0, 1fr) !important;
    padding-inline: 24px;
  }

  .hero-stats.home-stats.property-detail-section-two__metrics.col3
    > .property-detail-section-two__metric:last-child {
    grid-column: auto;
  }

  .hero-stats.home-stats.property-detail-section-two__metrics
    > .property-detail-section-two__metric,
  .hero-stats.home-stats.property-detail-section-two__metrics
    > .property-detail-section-two__metric:nth-child(even),
  .hero-stats.home-stats.property-detail-section-two__metrics
    > .property-detail-section-two__metric:nth-child(n + 3) {
    margin-top: 0;
    padding: 24px 0 !important;
    flex-direction: column;
    gap: 6px;
    border-top: 0;
    border-left: 0 !important;
  }

  .hero-stats.home-stats.property-detail-section-two__metrics
    > .property-detail-section-two__metric:not(:first-child) {
    border-top: 1px solid #159c83;
  }

  .property-detail-section-two__ctas,
  .property-detail-section-two__features-header {
    padding-inline: 24px;
  }

  .property-detail-section-two__cta {
    width: 100%;
    max-width: 320px;
    min-width: 0;
  }

  .grid-showcase.property-detail-section-two__feature-carousel {
    --grid-carousel-columns: 1.36 !important;
    --grid-carousel-gap: 18px;
  }

  .property-detail-section-two__feature-card.grid-card {
    min-height: 200px;
  }

  .property-detail-section-three__heading {
    padding-inline: 24px;
  }

  .property-detail-section-three.is-mobile-list {
    padding-bottom: 48px !important;
  }

  .property-detail-section-three.is-mobile-list .property-detail-section-three__viewport {
    height: auto !important;
    overflow: visible;
  }

  .property-detail-section-three.is-mobile-list .property-detail-section-three__track {
    height: auto !important;
    display: grid;
    gap: 8px;
    transform: none !important;
    transition: none;
    will-change: auto;
  }

  .property-detail-section-three.is-mobile-list .property-detail-section-three__row {
    width: 100%;
    flex: none;
    pointer-events: auto;
  }

  .property-detail-section-three.is-mobile-list .property-detail-section-three__pagination {
    display: none !important;
  }

  .property-detail-section-three__row {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 8px;
  }

  .property-detail-section-three
    .property-detail-section-three__card.project-card,
  .property-detail-section-three
    .property-detail-section-three__card.project-card:hover,
  .property-detail-section-three
    .property-detail-section-three__card.project-card:focus-within,
  .property-detail-section-three
    .property-detail-section-three__card.project-card.is-info-open {
    width: 100%;
    min-height: clamp(300px, 85vw, 420px);
  }

  .property-detail-section-three__content {
    padding: 24px;
  }

  .property-detail-section-four {
    padding-block: 32px;
  }

  .property-detail-section-four__inner,
  .property-detail-section-four__gallery {
    gap: 20px;
  }

  .property-detail-section-four__slide.grid-card {
    height: clamp(260px, 72vw, 420px);
    min-height: 0;
  }

  .property-detail-section-four__controls {
    padding-inline: 24px;
    gap: 16px;
  }

  .property-detail-section-five {
    padding: 48px 24px;
  }

  .property-detail-section-five__tabs {
    width: 100%;
    flex-wrap: nowrap;
    justify-content: flex-start;
    overflow-x: auto;
    overscroll-behavior-inline: contain;
    scroll-snap-type: inline proximity;
    scrollbar-width: none;
    padding-bottom: 8px;
  }

  .property-detail-section-five__tabs::-webkit-scrollbar {
    display: none;
  }

  .property-detail-section-five__tab {
    flex: 0 0 auto;
    scroll-snap-align: start;
  }

  .property-detail-section-five__panel {
    height: auto;
    min-height: 0;
    aspect-ratio: 4 / 3;
  }

  .property-detail-section-six__map {
    min-height: clamp(280px, 70vw, 380px);
  }

  .property-detail-section-six__information {
    padding: 40px 24px;
  }

  .property-detail-section-six__heading-divider {
    margin-top: 24px;
  }

  .property-detail-section-six__trigger {
    padding-block: 20px;
    gap: 16px;
  }

  .property-detail-section-seven {
    padding: 48px 24px;
  }

  .property-detail-section-seven__ctas {
    width: 100%;
  }

  .property-detail-section-seven__cta {
    width: 100%;
    max-width: 360px;
    min-width: 0;
  }

  .property-detail-related {
    padding: 48px 24px;
  }

  .property-detail-coming-soon__heading {
    font-size: clamp(1.75rem, 8vw, 2.5rem) !important;
  }
}

@media (max-width: 480px) {
  .property-detail-hero__custom-content {
    padding: 40px 20px;
    gap: 20px;
  }

  .property-detail-section-one__panel,
  .property-detail-section-one--overlay-left .property-detail-section-one__panel,
  .property-detail-section-six__information {
    padding-inline: 20px;
  }

  .property-detail-section-five,
  .property-detail-section-seven,
  .property-detail-related {
    padding-inline: 20px;
  }
}
}

/* Property cards: typography formerly emitted as inline styles. */
.portfolio-item-card--list-main-column .property-card__location,
.portfolio-item-card--list-main-column .property-card__meta-value,
.portfolio-item-card--list-main-column .property-card__room-count,
.portfolio-item-card--list-main-column .property-card__room-separator,
.portfolio-item-card--list-main-column .property-card__highlight-text {
  line-height: 1.2em;
}

.portfolio-item-card--list-main-column .property-card__meta-label {
  color: #888;
  font-size: 0.75rem;
  line-height: 1.2em;
  letter-spacing: 0.05em;
  text-transform: uppercase;
}

.property-card__coming-soon {
  color: #008578;
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1.2em;
}

.property-detail-coming-soon__heading {
  line-height: 1.12;
}

/* Our Policies page */
.our-policies-section {
  padding: 72px clamp(24px, 5vw, 72px);
  background: #f4f8f5;
}

.our-policies-section__inner {
  width: min(100%, 1180px);
  margin-inline: auto;
  display: flex;
  flex-direction: column;
  gap: 48px;
}

.our-policies-section__header {
  width: min(100%, 780px);
  margin-inline: auto;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 14px;
  text-align: center;
}

.our-policies-section__header > * {
  margin: 0;
}

.our-policies-section__header .p {
  color: #5f6664;
  line-height: 1.65;
}

.our-policies-list {
  margin-inline: auto;
  padding: var(--gap);
  border-radius: var(--gap18);
  background: var(--color-white);
  color: var(--color-brand-pjh-dark-green);
}

.our-policies-list.inline-menu ul.downloads {
  gap: var(--gap12);
}

@media (max-width: 767px) {
  .our-policies-section {
    padding: 48px 24px;
  }

  .our-policies-section__inner {
    gap: 36px;
  }
}

/* 404 page */
.error404 #main-content.site-404 {
  --site-404-header-offset: 82px;
  min-height: calc(100svh - var(--site-404-header-offset));
  display: flex;
  overflow: hidden;
  background-color: var(--color-white);
}

.error404 .site-404__section {
  position: relative;
  width: 100%;
  min-height: inherit;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: clamp(96px, 14vh, 160px) clamp(var(--gap), 6vw, 96px);
}

.error404 .site-404__section::before {
  content: "";
  position: absolute;
  inset: 0 0 auto;
  height: 6px;
  background: linear-gradient(90deg, var(--color-brand-green), var(--color-brand-blue));
}

.error404 .site-404__inner {
  width: min(100%, 760px);
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--gap18);
  text-align: center;
}

.error404 .site-404__code {
  color: var(--color-brand-blue);
  font-family: var(--font-family-heading);
  font-size: clamp(7rem, 16vw, 13rem);
  font-weight: 700;
  line-height: 0.8;
  letter-spacing: 0;
}

.error404 .site-404__label {
  color: var(--color-brand-pjh-green);
  font-family: var(--font-family-heading);
  font-size: 0.9rem;
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: 0;
  text-transform: uppercase;
}

.error404 .site-404__title {
  color: var(--color-brand-blue);
  font-size: clamp(2.25rem, 4vw, 3.5rem);
  letter-spacing: 0;
  text-wrap: balance;
}

.error404 .site-404__message {
  max-width: 620px;
  color: var(--color-text);
  font-size: 1.125rem;
  line-height: 1.6;
  text-wrap: balance;
}

.error404 .site-404__button {
  min-height: 44px;
  margin-top: var(--gap12);
}

@media (max-width: 480px) {
  .error404 .site-404__section {
    padding: 80px var(--gap);
  }

  .error404 .site-404__inner {
    gap: var(--gap12);
  }

  .error404 .site-404__message {
    font-size: 1rem;
    line-height: 1.5;
  }

  .error404 .site-404__button {
    width: 100%;
    max-width: 280px;
    margin-top: var(--gap18);
  }
}
