.panel--content-panel {
  position: relative;
  display: grid;
  isolation: isolate;
  overflow: hidden;
  background-color: #FFF;
  background-image: url("../../images/background-tile-light.png");
  background-repeat: repeat;

  &.content-panel--bg-white_bg {
    background-color: #FFF;
    background-image: url("../../images/background-tile-light.png");
  }

  &.content-panel--bg-gray_bg {
    background-color: #E7E6E6;
    background-image: none;
  }

  &.content-panel--bg-navy_bg,
  &.content-panel--bg-image_bg {
    background-color: #002467;
    background-image: none;
  }

  &.has-background-image {
    min-height: 600px;
  }

  .content-panel__background {
    position: absolute;
    z-index: 0;
    inset: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;

    &::after {
      content: "";
      position: absolute;
      inset: 0;
      background: linear-gradient(270deg, #00246772 0%, #002467CE 100%) 0% 0% no-repeat;
    }

    .content-panel__background-image {
      display: block;
      width: 100%;
      height: 100%;
      object-fit: cover;
      object-position: center;
    }
  }

  .content-panel__inner {
    z-index: 1;
    padding-block: 100px;
    display: flex;
    gap: 30px;

    @media (max-width: 900px) {
      flex-direction: column !important;
      align-items: center;
    }

    .content-panel__content {
      display: flex;
      flex-direction: column;
      justify-content: center;

      .content-panel__eyebrow {
        padding: 10px 20px;
        position: absolute;
        width: fit-content;
        left: 0;
        top: 40px;
        font-weight: 700;
        font-size: 17px;
        letter-spacing: 0.05em;
        text-transform: uppercase;
        color: #FFF;
      }

      .content-panel__heading {
        font-family: var(--research-font-aleo);
        font-size: 30px;
        font-weight: 900;
        color: #AE2F54;
        margin: 0;
        letter-spacing: 0.05em;
        text-transform: uppercase;
        line-height: 40px;
      }

      .content-panel__body {
        font-size: 18px;
        font-weight: 300;
        line-height: 32px;
        color: #6A6B6C;
      }

    }

    .content-panel__media {
      display: flex;
      justify-content: center;
      align-items: center;
      flex: 1 0 60%;
      flex-direction: column;

      .content-panel__icons {
        display: flex;
        justify-content: center;
        align-items: center;
        gap: 20px;
        padding-left: 20px;
        margin: auto 0;

        .content-panel__icons-title {
          margin: 0;
          font-size: 17px;
          font-weight: 700;
          color: #002467;
          letter-spacing: 0.05em;
          text-transform: uppercase;
        }

        .content-panel__icon-items {
          display: flex;
          flex-direction: column;
          gap: 25px;
          position: relative;
          padding-left: 20px;

          .content-panel__icon-item {
            display: flex;
            gap: 25px;
            justify-content: flex-start;
            align-items: center;

            .content-panel__icon {
              padding: 20px;
              background: #E7E6E6;
              border-radius: 50%;

              img {
                aspect-ratio: 1;
                min-width: 70px;
              }
            }

            .content-panel__icon-body {
              font-family: var(--research-font-aleo);
              font-size: 30px;
              color: #AE2F54;
            }
          }

          &::after {
            content: "";
            height: 70%;
            position: absolute;
            left: 0;
            width: 1px;
            background-color: #F08B1E;
            top: 50%;
            transform: translateY(-50%);
          }

          &::before {
            content: "";
            height: 1px;
            position: absolute;
            left: -40px;
            width: 40px;
            background-color: #F08B1E;
            top: 50%;
            transform: translateY(-50%);
          }
        }

        @media (max-width: 900px) {
          flex-direction: column;
          padding-left: 0px;

          .content-panel__icon-items {
            &::before, &::after {
              display: none;
            }

            .content-panel__icon-body {
              font-size: 20px !important;
            }
          }
        }
      }

      .content-panel__video-player {
        position: relative;
        width: 100%;
        overflow: hidden;

        .content-panel__video {
          display: block;
          width: 100%;
        }

        .content-panel__video-play {
          position: absolute;
          z-index: 2;
          top: 50%;
          left: 50%;
          display: grid;
          width: clamp(80px, 10vw, 120px);
          aspect-ratio: 1;
          padding: 0;
          border: 1px solid #FFF;
          border-radius: 50%;
          background: rgba(256, 256, 256, 0.15);
          color: #FFF;
          cursor: pointer;
          place-items: center;
          transform: translate(-50%, -50%);
          transition: background-color 180ms ease, transform 180ms ease;

          &[hidden] {
            display: none;
          }

          &:hover {
            background: rgba(256, 256, 256, 0.50);
            transform: translate(-50%, -50%) scale(1.06);
          }

          .content-panel__video-play-icon {
            width: clamp(28px, 4vw, 44px);
            height: auto;
            margin-left: 8%;
            overflow: visible;
            fill: none;
            stroke: currentColor;
            stroke-linecap: round;
            stroke-linejoin: round;
            stroke-width: 1;
          }
        }
      }

      video {
        width: 100%;
      }

      &.content-panel__media--icon_text {
        .content-panel__cta {
          align-self: flex-end;
        }
      }

      @media (max-width: 900px) {
        display: contents;
      }
    }

    .content-panel__cta {
      display: flex;
      align-items: center;
      gap: 10px;
      text-decoration: none;
      

      .content-panel__cta-label {
        font-size: 17px;
        text-transform: uppercase;
        text-decoration: none;
      }

      &:hover {
        .content-panel__cta-label {
          text-decoration: underline;
        }
      }

      &.cta_orange svg, &.cta_orange .content-panel__cta-label {
        color: #F08B1E;
      }

      &.cta_white svg, &.cta_white .content-panel__cta-label {
        color: #FFF;
      }

      &.cta_blue svg, &.cta_blue .content-panel__cta-label {
        color: #002467;
      }
    }
  }

  &.show-divider {
    .content-panel__inner {
      border-bottom: 1px solid #F08B1E;
    }
  }

  &.content-panel--text_right {
    .content-panel__inner {
      flex-direction: row-reverse;
    }
  }

  &.content-panel--text_center {
    position: relative;

    .content-panel__inner {
      justify-content: center;
      align-items: center;

      .content-panel__content {
        width: 70%;

        @media (max-width: 900px) {
          width: 100%;
        }

        .content-panel__heading {
          text-align: center;
          font-family: var(--research-font-aleo);
          font-weight: 900;
          font-size: 30px;
          color: #F08B1E;
        }

        .content-panel__body {
          color: #FFF;
          font-size: 30px;
          line-height: 45px;
          font-family: var(--research-font-aleo);
        }
      }
    }
  }
}
