/* =============================================================================
   COMMENTED OUT / ARCHIVED
   ============================================================================= */

/*.mktoCaptchaDisclaimer,
.mktoCaptchaDisclaimer a {
  color: white !important;
}*/


/* =============================================================================
   DIVIDERS & BORDERS
   ============================================================================= */

.icon-wrap {
  border-right: 1px dotted #0f2160;
}

.trends-wrapper .trend {
  border-right: 1px dotted #ef5713;
}

.features {
  border-right: 1px dotted #fff;
}


/* =============================================================================
   TOPIC LIST FILTER
   ============================================================================= */

.ccm-block-topic-list-flat-filter a {
  font-size: 11px;
}


/* =============================================================================
   POPUP / MODAL
   ============================================================================= */

.popUpContent h2 {
  color: #ef5713;
}


/* =============================================================================
   LINKS — Remove auto-added arrows and pseudo-elements
   ============================================================================= */

.home-page-featured-wrapper .featured-content-panel .featured-content-link::after,
.learn-more a::after,
.learn-more::after,
.case-wrap-detail a::after {
  content: none !important;
}


/* =============================================================================
   LINKS — Consistent underline styles
   ============================================================================= */

.home-page-featured-wrapper .featured-content-panel .featured-content-link,
.learn-more a,
.learn-more .featured-content-link,
.case-wrap-detail a {
  text-decoration: underline !important;
  text-underline-offset: 4px;
  text-decoration-color: currentColor;
  display: inline;
}

.home-page-featured-wrapper .featured-content-panel:hover .featured-content-link,
.learn-more a:hover,
.learn-more .featured-content-link:hover,
.case-wrap-detail a:hover {
  text-decoration: underline !important;
}


/* =============================================================================
   KPI TREND CARDS — Skewed parallelogram tiles with animated pattern
   ============================================================================= */

.trends-wrapper-circle .trend-inner {
  position: relative;
  width: clamp(180px, 22vw, 320px);
  aspect-ratio: 5 / 4;
  margin: 0 auto;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  border-radius: 0;
  transform: skewX(-12deg);
  background: #fff;
}

/* Animated diagonal stripe pattern layer */
.trends-wrapper-circle .trend-inner::before {
  content: "";
  position: absolute;
  inset: 0;
  background: repeating-linear-gradient(
    135deg,
    rgba(0, 0, 0, 0.06) 0px,
    rgba(0, 0, 0, 0.06) 1px,
    transparent 1px,
    transparent 12px
  );
  animation: diagonalShift 12s linear infinite;
  z-index: 0;
}

@keyframes diagonalShift {
  from { background-position: 0 0; }
  to   { background-position: 100px 100px; }
}

/* Counter-skew the content so text stays upright */
.trends-wrapper-circle .trend-content {
  position: relative;
  z-index: 1;
  transform: skewX(12deg);
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
}

.trends-wrapper-circle .trend-content h2,
.trends-wrapper-circle .trend-content .kpi {
  color: #ef5713;
  font-size: clamp(1.6rem, 4.2vw, 3rem);
  line-height: 1;
  margin: 0;
}

.trends-wrapper-circle .trend-content p {
  color: #04087c;
  font-weight: 700;
  font-size: clamp(1.2rem, 1.3vw, 1.4rem);
  margin: 0.6em 0 0 0;
}

/* KPI cards — two-column layout on mobile */
@media (max-width: 768px) {
  .trends-wrapper-circle {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: 20px;
  }

  .trends-wrapper-circle .trend-inner {
    flex: 1 1 calc(50% - 20px);
  }
}


/* =============================================================================
   MANUAL NAV GRIDS — Background colour
   ============================================================================= */

.manual-nav-grid-4 .manual-nav-entry,
.manual-nav-grid-3 .manual-nav-entry,
.manual-nav-grid-2 .manual-nav-entry {
  background-color: #f8f8f8;
}


/* =============================================================================
   LEADERSHIP — Headshot image size, circle crop and blue tint
   ============================================================================= */

.leadership_profile_photo {
  display: block !important;
  position: relative !important;
  width: 80% !important;
  margin: 40px auto 20px !important;
  border-radius: 50% !important;
  overflow: hidden !important;
  aspect-ratio: 1 / 1 !important;
  outline: 2px solid #d9d9d9 !important;
  outline-offset: 4px !important;
}

/* Blue tint overlay */
.leadership_profile_photo::after {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  background: rgba(4, 47, 95, 0.05) !important;
  mix-blend-mode: multiply !important;
  pointer-events: none !important;
}

.leadership_profile_photo img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center top !important;
  display: block !important;
}