:root {
  --whf-eggplant: #262436;
  --whf-atrium: #e8e8de;
  --whf-tiffany: #91e8d9;
  --whf-tiffany-dark: #35d4ba;
  --whf-white: #fff;
}

.whf-insights-library,
.whf-featured-client-work {
  box-sizing: border-box;
  color: var(--whf-eggplant);
  font-family: "Halenoir Text W05 Regular", Arial, sans-serif;
}

.whf-insights-library {
  margin: 0 auto;
  max-width: 1200px;
  padding: 44px 0 64px;
  width: calc(100% - 60px);
}

@media (min-width: 1001px) {
  .whf-insights-library {
    margin-left: auto;
    margin-right: auto;
    max-width: 1200px;
    width: calc(100% - 60px);
  }
}

.whf-featured-client-work {
  background: var(--whf-atrium);
  padding: clamp(3rem, 6vw, 6rem) max(1.25rem, calc((100vw - 1200px) / 2));
}

.whf-section-heading {
  margin-bottom: 2rem;
  max-width: 760px;
}

.whf-section-heading h2 {
  color: var(--whf-eggplant);
  font-family: "Halenoir Display W05 ExtraBold", Arial, sans-serif;
  font-size: clamp(2rem, 4vw, 3.5rem);
  line-height: 1.05;
  margin: 0;
}

.whf-eyebrow,
.whf-card-type {
  color: var(--whf-eggplant);
  font-family: "Halenoir Display W05 DemiBold", Arial, sans-serif;
  font-size: .78rem;
  font-weight: 700;
  letter-spacing: .12em;
  margin: 0 0 .75rem;
  text-transform: uppercase;
}

.whf-filter-groups {
  display: grid;
  gap: 1.1rem;
  margin: 0 0 2rem;
}

.whf-filter-group {
  min-width: 0;
}

.whf-filter-label {
  color: var(--whf-eggplant);
  font-family: "Halenoir Display W05 DemiBold", Arial, sans-serif;
  font-size: .78rem;
  font-weight: 700;
  letter-spacing: .12em;
  margin: 0 0 .55rem;
  text-align: left;
  text-transform: uppercase;
}

.whf-insight-filters {
  display: flex;
  flex-wrap: wrap;
  gap: .75rem;
  justify-content: flex-start;
  margin: 0;
  text-align: left;
}

.whf-filter {
  border: 1px solid var(--whf-eggplant);
  color: var(--whf-eggplant);
  font-family: "Halenoir Display W05 DemiBold", Arial, sans-serif;
  padding: .65rem 1rem;
  text-decoration: none;
}

.whf-filter:hover,
.whf-filter:focus,
.whf-filter.is-active {
  background: var(--whf-eggplant);
  color: var(--whf-white);
}

.whf-insight-grid {
  display: grid;
  gap: 1.5rem;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.whf-insight-card {
  --whf-card-accent: var(--whf-tiffany-dark);
  background: var(--whf-white);
  display: flex;
  flex-direction: column;
  min-width: 0;
}

.whf-card-media {
  border-radius: 12px;
  overflow: hidden;
}

.whf-card-image {
  display: block;
  overflow: hidden;
}

.whf-card-accent {
  background: var(--whf-card-accent);
  display: block;
  height: 5px;
  width: 100%;
}

.whf-card-image img {
  aspect-ratio: 16 / 9;
  display: block;
  height: auto;
  object-fit: cover;
  transition: transform .25s ease;
  width: 100%;
}

.whf-card-image:hover img,
.whf-card-image:focus img {
  transform: scale(1.025);
}

.whf-card-content {
  display: flex;
  flex: 1;
  flex-direction: column;
  padding: 1.25rem 0.75rem 1.5rem;
  text-align: left;
}

.whf-insight-card h3 {
  font-family: "Halenoir Display W05 ExtraBold", Arial, sans-serif;
  font-size: 1.45rem;
  line-height: 1.2;
  margin: 0 0 1rem;
}

.whf-insight-card h3 a {
  color: var(--whf-eggplant);
  text-decoration: none;
}

.whf-insight-card h3 a:hover,
.whf-insight-card h3 a:focus {
  text-decoration: underline;
  text-decoration-color: var(--whf-tiffany-dark);
  text-decoration-thickness: 3px;
}

.whf-card-summary {
  line-height: 1.55;
  margin: 0 0 1.25rem;
}

.whf-card-cta {
  color: var(--whf-eggplant);
  font-family: "Halenoir Display W05 DemiBold", Arial, sans-serif;
  font-weight: 700;
  margin-top: auto;
  text-decoration-color: var(--whf-tiffany-dark);
  text-decoration-thickness: 2px;
  text-underline-offset: 4px;
}

.whf-empty {
  background: #f7f7f3;
  padding: 1.5rem;
}

.whf-single-insight {
  box-sizing: border-box;
  color: var(--whf-eggplant);
  display: flex;
  flex-direction: column;
  font-family: "Halenoir Text W05 Regular", Arial, sans-serif;
  margin: 0 auto;
  max-width: 1000px;
  padding: 32px 30px 24px;
  text-align: left !important;
  width: calc(100% - 60px);
}

@media (min-width: 1001px) {
  .whf-single-insight {
    margin-left: auto !important;
    margin-right: auto !important;
    max-width: 1200px;
    padding-left: 0;
    padding-right: 0;
    width: calc(100% - 60px);
  }

  body.single-whf_insight .entry-content + .wp-block-template-part > .wp-block-group {
    margin-left: auto !important;
    margin-right: auto !important;
    max-width: 1200px !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    width: calc(100% - 60px) !important;
  }
}

.whf-single-header {
  display: block;
  float: none;
  height: auto !important;
  margin: 0 0 30px;
  min-height: 0;
  overflow: visible;
  position: static;
  text-align: left;
  width: 100%;
}
.whf-single-type {
  color: var(--whf-tiffany-dark);
  font-family: "Halenoir Display W05 DemiBold", Arial, sans-serif;
  font-size: .8rem;
  font-weight: 600;
  letter-spacing: .1em;
  margin: 0 0 12px;
  text-transform: uppercase;
}
.whf-single-title {
  color: var(--whf-eggplant);
  font-family: "Halenoir Display W05 ExtraBold", Arial, sans-serif;
  font-size: clamp(2rem, 4vw, 3rem) !important;
  line-height: 1.08;
  margin: 0 !important;
  max-width: 880px;
  text-align: left !important;
}

body.single-whf_insight main .wp-block-post-featured-image,
body.single-whf_insight main .wp-block-post-title {
  display: none !important;
}

.whf-single-image {
  clear: both;
  display: block;
  float: none !important;
  margin: 0 0 32px !important;
  max-width: 100%;
  overflow: hidden;
  position: static !important;
  width: 100%;
}

.whf-single-image img {
  aspect-ratio: 16 / 9;
  display: block;
  float: none !important;
  height: auto !important;
  margin: 0 !important;
  max-width: 100% !important;
  object-fit: cover;
  position: static !important;
  transform: none !important;
  width: 100% !important;
}

.whf-single-subtitle {
  font-size: 1.35rem;
  line-height: 1.45;
  margin: 28px 0 40px;
  max-width: 800px;
  text-align: left;
}

.whf-single-publisher {
  color: var(--whf-eggplant);
  font-family: "Halenoir Display W05 DemiBold", Arial, sans-serif;
  font-size: .85rem;
  letter-spacing: .04em;
  margin: 0 0 40px;
}

.whf-single-subtitle + .whf-single-publisher { margin-top: -22px; }

body.single-whf_insight .posted-on,
body.single-whf_insight .entry-date,
body.single-whf_insight .wp-block-post-date,
body.single-whf_insight .entry-title {
  display: none !important;
}

body.single-whf_insight .entry-content + .wp-block-template-part .wp-block-columns {
  align-items: flex-start !important;
  display: block !important;
}

body.single-whf_insight .entry-content + .wp-block-template-part > .wp-block-group {
  box-sizing: border-box;
  color: var(--whf-eggplant) !important;
  margin: 20px auto 0 !important;
  max-width: 1000px !important;
  padding-left: 30px !important;
  padding-right: 30px !important;
  width: calc(100% - 60px) !important;
}

body.single-whf_insight .entry-content + .wp-block-template-part .wp-block-separator {
  background-color: #e8e8de !important;
  border-color: #e8e8de !important;
  color: #e8e8de !important;
}

body.single-whf_insight .entry-content + .wp-block-template-part a,
body.single-whf_insight .entry-content + .wp-block-template-part p,
body.single-whf_insight .entry-content + .wp-block-template-part .wp-block-post-terms,
body.single-whf_insight .entry-content + .wp-block-template-part .whf-theme-publisher {
  color: var(--whf-eggplant) !important;
}

/* Theme metadata: render Insight tags as compact Walker-branded pills. */
body.single-whf_insight .entry-content + .wp-block-template-part .taxonomy-post_tag a {
  border: 1px solid var(--whf-eggplant);
  border-radius: 999px;
  color: var(--whf-eggplant) !important;
  display: inline-block;
  font-family: "Halenoir Display W05 DemiBold", Arial, sans-serif;
  font-size: .72rem;
  font-weight: 600;
  letter-spacing: .08em;
  line-height: 1.2;
  margin: 2px 5px 2px 0;
  padding: 5px 9px;
  text-decoration: none;
  text-transform: uppercase;
}

body.single-whf_insight .entry-content + .wp-block-template-part .taxonomy-post_tag a:hover,
body.single-whf_insight .entry-content + .wp-block-template-part .taxonomy-post_tag a:focus {
  background: var(--whf-atrium);
}

@media (min-width: 1001px) {
  body.single-whf_insight .entry-content + .wp-block-template-part > .wp-block-group {
    margin-left: auto !important;
    margin-right: auto !important;
    max-width: 1200px !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    width: calc(100% - 60px) !important;
  }
}

body.single-whf_insight .entry-content + .wp-block-template-part .wp-block-column {
  margin: 0 0 8px !important;
  text-align: left !important;
  width: 100% !important;
}

body.single-whf_insight .entry-content + .wp-block-template-part .wp-block-column > .wp-block-group {
  align-items: baseline !important;
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: wrap !important;
  gap: 6px !important;
  justify-content: flex-start !important;
  margin: 0 0 6px !important;
  text-align: left !important;
}

body.single-whf_insight .entry-content + .wp-block-template-part .wp-block-post-terms,
body.single-whf_insight .entry-content + .wp-block-template-part .whf-theme-publisher,
body.single-whf_insight .entry-content + .wp-block-template-part p {
  margin: 0 !important;
  text-align: left !important;
}

.whf-single-section {
  border-top: 1px solid var(--whf-atrium);
  padding: 32px 0;
  text-align: left;
}

.whf-single-section h2 {
  color: var(--whf-eggplant);
  font-family: "Halenoir Display W05 ExtraBold", Arial, sans-serif;
  font-size: 1.65rem !important;
  line-height: 1.2;
  margin: 0 0 16px !important;
  text-align: left !important;
}

.whf-single-section p { line-height: 1.65; }
.whf-impact-list { display: grid; gap: 18px; grid-template-columns: repeat(2, minmax(0, 1fr)); list-style: none; margin: 0; padding: 0; }
.whf-impact-list li { align-items: flex-start; background: var(--whf-white); border: 2px solid var(--whf-atrium); border-radius: 10px; display: flex; flex-direction: column; justify-content: center; min-height: 76px; padding: 16px 20px; text-align: left; }
.whf-result-value { color: var(--whf-eggplant); font-family: "Halenoir Display W05 ExtraBold", Arial, sans-serif; font-size: 1.45rem; line-height: 1.1; }
.whf-result-label { font-size: .95rem; line-height: 1.35; margin-top: 5px; }


@media (max-width: 900px) {
  .whf-insights-library { width: calc(100% - 48px); }
  .whf-insight-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .whf-single-insight {
    padding-left: 0;
    padding-right: 0;
    width: calc(100% - 48px);
  }
  body.single-whf_insight .entry-content + .wp-block-template-part > .wp-block-group {
    padding-left: 0 !important;
    padding-right: 0 !important;
    width: calc(100% - 48px) !important;
  }
}

@media (max-width: 600px) {
  .whf-insights-library {
    padding: 38px 0 52px;
    width: calc(100% - 40px);
  }
  .whf-insight-grid { grid-template-columns: 1fr; }
  .whf-single-insight { padding: 24px 0 20px; width: calc(100% - 40px); }
  body.single-whf_insight .entry-content + .wp-block-template-part > .wp-block-group {
    padding-left: 0 !important;
    padding-right: 0 !important;
    width: calc(100% - 40px) !important;
  }
  .whf-impact-list { grid-template-columns: 1fr; }
}

@media (prefers-reduced-motion: reduce) {
  .whf-card-image img { transition: none; }
}


/* Audience-aware calls to action on individual Insight pages. */
.whf-insight-cta {
  align-items: center;
  background: var(--whf-atrium);
  border-radius: 12px;
  display: flex;
  gap: 32px;
  justify-content: space-between;
  margin-top: 56px;
  padding: 30px 34px;
}

.whf-insight-cta-copy { max-width: 700px; }
.whf-insight-cta h2 {
  color: var(--whf-eggplant);
  font-size: clamp(1.35rem, 2vw, 1.75rem);
  margin: 0 0 8px;
}
.whf-insight-cta p { color: var(--whf-eggplant); margin: 0; }
.whf-insight-cta-button {
  background: var(--whf-eggplant);
  border: 2px solid var(--whf-eggplant);
  border-radius: 999px;
  color: #fff !important;
  display: inline-block;
  flex: 0 0 auto;
  font-family: "Halenoir Display W05 DemiBold", Arial, sans-serif;
  font-weight: 600;
  padding: 11px 20px;
  text-decoration: none;
}
.whf-insight-cta-button:hover,
.whf-insight-cta-button:focus {
  background: transparent;
  color: var(--whf-eggplant) !important;
}
@media (max-width: 700px) {
  .whf-insight-cta { align-items: flex-start; flex-direction: column; gap: 20px; padding: 26px; }
}

/* v1.1.16: compact primary filter bar, aligned to Walker's existing visual system. */
.whf-compact-filters {
  align-items: end;
  border-bottom: 1px solid var(--whf-atrium);
  display: grid;
  gap: 14px;
  grid-template-columns: repeat(3, minmax(180px, 1fr)) auto;
  margin: 0 0 2rem;
  padding: 0 0 22px;
}

.whf-filter-control { min-width: 0; }

.whf-filter-control label {
  color: var(--whf-eggplant);
  display: block;
  font-family: "Halenoir Display W05 DemiBold", Arial, sans-serif;
  font-size: .75rem;
  font-weight: 700;
  letter-spacing: .1em;
  margin: 0 0 7px;
  text-align: left;
  text-transform: uppercase;
}

.whf-filter-control select {
  appearance: none;
  background-color: var(--whf-white);
  background-image: linear-gradient(45deg, transparent 50%, var(--whf-eggplant) 50%), linear-gradient(135deg, var(--whf-eggplant) 50%, transparent 50%);
  background-position: calc(100% - 18px) calc(50% - 2px), calc(100% - 13px) calc(50% - 2px);
  background-repeat: no-repeat;
  background-size: 5px 5px, 5px 5px;
  border: 1px solid #a19dbe;
  border-radius: 0;
  box-sizing: border-box;
  color: var(--whf-eggplant);
  cursor: pointer;
  font-family: "Halenoir Text W05 Regular", Arial, sans-serif;
  font-size: 1rem;
  line-height: 1.25;
  min-height: 48px;
  padding: 11px 38px 11px 14px;
  width: 100%;
}

.whf-filter-control select:hover,
.whf-filter-control select:focus {
  border-color: var(--whf-eggplant);
  outline: none;
}

.whf-filter-control select:focus {
  box-shadow: 0 0 0 2px rgba(38, 36, 54, .12);
}

.whf-filter-clear,
.whf-filter-submit {
  align-items: center;
  color: var(--whf-eggplant);
  display: inline-flex;
  font-family: "Halenoir Display W05 DemiBold", Arial, sans-serif;
  font-size: .9rem;
  font-weight: 700;
  justify-content: center;
  min-height: 48px;
  padding: 0 4px;
  text-decoration: underline;
  text-underline-offset: 3px;
  white-space: nowrap;
}

.whf-filter-clear:hover,
.whf-filter-clear:focus { color: #4e496e; }

.whf-filter-submit {
  background: var(--whf-eggplant);
  border: 1px solid var(--whf-eggplant);
  color: var(--whf-white);
  padding: 0 18px;
  text-decoration: none;
}

@media (max-width: 900px) {
  .whf-compact-filters { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .whf-filter-clear, .whf-filter-submit { justify-self: start; }
}

@media (max-width: 680px) {
  .whf-compact-filters { grid-template-columns: 1fr; gap: 12px; }
  .whf-filter-clear, .whf-filter-submit { min-height: 36px; }
}

/* v1.1.19: custom Insights filter controls. These replace native selects so
   long menus always open beneath the field and scroll within the page. */
.whf-custom-select {
  position: relative;
  width: 100%;
}

.whf-custom-select-button {
  align-items: center;
  appearance: none;
  background: var(--whf-white);
  border: 1px solid #a19dbe;
  border-radius: 0;
  box-sizing: border-box;
  color: var(--whf-eggplant);
  cursor: pointer;
  display: flex;
  font-family: "Halenoir Text W05 Regular", Arial, sans-serif;
  font-size: 1rem;
  font-weight: 400;
  justify-content: space-between;
  line-height: 1.25;
  min-height: 48px;
  padding: 11px 14px;
  text-align: left;
  width: 100%;
}

.whf-custom-select-button:hover,
.whf-custom-select-button:focus,
.whf-custom-select.is-open .whf-custom-select-button {
  border-color: var(--whf-eggplant);
  outline: none;
}

.whf-custom-select-button:focus {
  box-shadow: 0 0 0 2px rgba(38, 36, 54, .12);
}

.whf-custom-select-value {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.whf-custom-select-chevron {
  border-bottom: 1.5px solid var(--whf-eggplant);
  border-right: 1.5px solid var(--whf-eggplant);
  flex: 0 0 auto;
  height: 7px;
  margin: -4px 3px 0 14px;
  transform: rotate(45deg);
  transition: transform .15s ease, margin .15s ease;
  width: 7px;
}

.whf-custom-select.is-open .whf-custom-select-chevron {
  margin-top: 4px;
  transform: rotate(225deg);
}

.whf-custom-select-menu {
  background: #fff;
  border: 1px solid var(--whf-eggplant);
  box-shadow: 0 10px 28px rgba(38, 36, 54, .12);
  box-sizing: border-box;
  display: none;
  left: 0;
  max-height: 320px;
  overflow-x: hidden;
  overflow-y: auto;
  overscroll-behavior: contain;
  padding: 5px 0;
  position: absolute;
  right: 0;
  top: calc(100% + 4px);
  z-index: 1000;
}

.whf-custom-select.is-open .whf-custom-select-menu {
  display: block;
}

.whf-custom-select-option {
  appearance: none;
  background: transparent;
  border: 0;
  color: var(--whf-eggplant);
  cursor: pointer;
  display: block;
  font-family: "Halenoir Text W05 Regular", Arial, sans-serif;
  font-size: .95rem;
  font-weight: 400;
  line-height: 1.3;
  margin: 0;
  padding: 9px 14px;
  text-align: left;
  width: 100%;
}

.whf-custom-select-option:hover,
.whf-custom-select-option:focus {
  background: #f3f3ee;
  outline: none;
}

.whf-custom-select-option[aria-selected="true"] {
  background: #e9fbf8;
}

.whf-custom-select-option.is-parent {
  font-family: "Halenoir Display W05 DemiBold", Arial, sans-serif;
  font-weight: 600;
  padding-top: 12px;
}

.whf-custom-select-option.is-child {
  padding-left: 30px;
}

.whf-custom-select-option.is-child::before {
  color: #BCBC9F;
  content: "—";
  margin-right: 7px;
}

.whf-filter-noscript {
  display: grid;
  gap: 10px;
  grid-column: 1 / -1;
}

@media (max-width: 680px) {
  .whf-custom-select-menu { max-height: 280px; }
}

/* Featured Client Work shortcode support (v1.1.22).
   Visual styling intentionally follows the Walker Healthforce site classes. */
.featured-client-work [hidden] { display: none !important; }
.featured-client-work-slider { width: 100%; }
.featured-client-work-visual {
  display: block;
  min-width: 0;
  overflow: hidden;
  border-radius: 15px;
}
.featured-client-work-visual img {
  display: block;
  width: 100%;
  height: 100%;
  min-height: 390px;
  object-fit: cover;
}
.featured-client-work-carousel-controls {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 18px;
  margin-top: 22px;
}
.featured-client-work-carousel-controls button {
  appearance: none;
  border: 0;
  background: transparent;
  color: #fff;
  cursor: pointer;
  font-family: Arial, sans-serif;
  font-size: 24px;
  line-height: 1;
  padding: 6px 10px;
}
.featured-client-work-carousel-status {
  color: #DEDECF;
  font-family: "Halenoir Text W05 Regular", Arial, sans-serif;
  font-size: 13px;
  line-height: 1.2;
}
@media (max-width: 750px) {
  .featured-client-work-visual img { min-height: 260px; }
}

/* Featured Client Work simple image-left card (v1.1.24). */
.featured-client-work .featured-client-work-intro {
  display: block !important;
}
.featured-client-work .featured-client-work-intro-copy {
  width: 100%;
}
.featured-client-work .featured-client-work-intro-text {
  margin: 14px 0 0 !important;
  max-width: 760px !important;
  text-align: left;
}
.featured-client-work-card.whf-featured-simple {
  grid-template-columns: minmax(340px, .82fr) minmax(0, 1.18fr) !important;
  gap: 34px !important;
  align-items: stretch;
}
.featured-client-work-card.whf-featured-simple .whf-featured-simple-visual {
  min-height: 340px;
  height: 100%;
  border-radius: 12px;
  overflow: hidden;
  background: #DEDECF;
}
.featured-client-work-card.whf-featured-simple .whf-featured-simple-visual img {
  width: 100%;
  height: 100%;
  min-height: 340px;
  object-fit: cover;
}
.featured-client-work-card.whf-featured-simple .whf-featured-simple-content {
  display: flex;
  flex-direction: column;
  min-width: 0;
}
.featured-client-work-card.whf-featured-simple .featured-client-work-pill {
  align-self: flex-start;
}
.featured-client-work-card.whf-featured-simple .featured-client-work-metrics {
  margin-top: auto;
}
@media (max-width: 1000px) {
  .featured-client-work-card.whf-featured-simple {
    grid-template-columns: minmax(300px, .85fr) minmax(0, 1.15fr) !important;
    gap: 28px !important;
  }
  .featured-client-work-card.whf-featured-simple .whf-featured-simple-visual,
  .featured-client-work-card.whf-featured-simple .whf-featured-simple-visual img { min-height: 320px; }
}
@media (max-width: 750px) {
  .featured-client-work .featured-client-work-intro-text { margin-top: 12px !important; }
  .featured-client-work-card.whf-featured-simple {
    display: flex !important;
    flex-direction: column !important;
    gap: 24px !important;
  }
  .featured-client-work-card.whf-featured-simple .whf-featured-simple-visual,
  .featured-client-work-card.whf-featured-simple .whf-featured-simple-visual img { min-height: 260px; }
}
@media (max-width: 500px) {
  .featured-client-work-card.whf-featured-simple .whf-featured-simple-visual,
  .featured-client-work-card.whf-featured-simple .whf-featured-simple-visual img { min-height: 220px; }
}

/* v1.1.25: Return navigation for individual Insight content. */
.whf-back-to-insights {
  align-items: center;
  align-self: flex-start;
  color: var(--whf-eggplant) !important;
  display: inline-flex;
  font-family: "Halenoir Display W05 DemiBold", Arial, sans-serif;
  font-size: .85rem;
  font-weight: 600;
  gap: 6px;
  margin: 0 0 24px;
  text-decoration: none;
}
.whf-back-to-insights span {
  color: var(--whf-tiffany-dark);
  font-size: 1.35em;
  line-height: 1;
  transition: transform .18s ease;
}
.whf-back-to-insights:hover,
.whf-back-to-insights:focus {
  text-decoration: underline;
  text-underline-offset: 4px;
}
.whf-back-to-insights:hover span,
.whf-back-to-insights:focus span {
  transform: translateX(-2px);
}

/* Testimonials are quote-led, full-color cards in the same Insights grid. */
.whf-insight-grid .whf-insight-card--testimonial {
  background:#262436; color:#fff; border-radius:18px; overflow:hidden;
  border:0; min-width:0; overflow-wrap:anywhere;
}
.whf-insight-card--testimonial .whf-card-content {
  padding:30px; display:flex; flex-direction:column; height:100%; box-sizing:border-box;
}
.whf-insight-card--testimonial .whf-card-type { color:#91e8d9; }
.whf-insight-card--testimonial h3,
.whf-insight-card--testimonial h3 a,

.whf-insight-card--testimonial h3 { font-size:20px; line-height:1.3; margin:0 0 24px; }
.whf-insight-card--testimonial .whf-testimonial-mark { color:#91e8d9; font:700 74px/.7 Georgia,serif; margin:0 0 16px; }
.whf-insight-card--testimonial .whf-testimonial-card-quote {
  border:0; background:none; padding:0; margin:0 0 28px; color:#fff;
  font-family:"Halenoir Text W05 Regular",Arial,sans-serif; font-size:22px; line-height:1.5; font-style:normal;
}
.whf-insight-card--testimonial .whf-testimonial-card-attribution { border-top:3px solid #91e8d9; padding-top:18px; margin-top:auto; }
.whf-insight-card--testimonial .whf-testimonial-card-attribution p { color:#fff; font-size:15px; line-height:1.5; margin:0; }
.whf-insight-card--testimonial .whf-testimonial-card-attribution p:first-child { font-weight:600; }

.whf-insight-card--testimonial a:focus-visible { outline:2px solid #91e8d9; outline-offset:4px; }
.whf-insight-card--testimonial a:hover { color:#91e8d9; }
.whf-testimonial-detail { background:#262436; color:#fff; border-radius:18px; padding:clamp(24px,5vw,64px); margin:32px 0; }
.whf-testimonial-detail .testimonial-quote-mark { font:700 80px/.8 Georgia,serif; color:#91e8d9; }
.whf-testimonial-detail .testimonial-quote { border:0; background:none; color:#fff; padding:0; margin:24px 0 32px; font-size:clamp(22px,3vw,32px); font-style:normal; line-height:1.55; }
.whf-testimonial-detail .testimonial-attribution,
.whf-testimonial-detail .testimonial-organization { color:#fff; margin:8px 0; }
.whf-testimonial-detail .testimonial-attribution { font-weight:600; }
.whf-client-perspectives [hidden] { display:none !important; }
@media(max-width:600px) { .whf-insight-card--testimonial .whf-card-content { padding:24px; } }

/* 1.1.27: internal titles, pale testimonial surfaces and separated rows. */
.whf-insight-grid .whf-insight-card--testimonial,
.whf-single-insight .whf-testimonial-detail { background:#F7F7F3; color:#262436; }
.whf-insight-card--testimonial .whf-card-type,
.whf-insight-card--testimonial .whf-card-cta,
.whf-insight-card--testimonial .whf-testimonial-card-attribution p,
.whf-single-insight .whf-testimonial-detail .testimonial-quote,
.whf-single-insight .whf-testimonial-detail .testimonial-attribution,
.whf-single-insight .whf-testimonial-detail .testimonial-organization { color:#262436; }
.whf-insight-card--testimonial .whf-testimonial-card-quote {
  font-size:1em; line-height:1.55; color:#262436;
}
.whf-insight-card--testimonial .whf-card-cta:hover { color:#262436; text-decoration:underline; }
.whf-insight-card--testimonial a:focus-visible { outline-color:#262436; }
.whf-insight-card--testimonial .whf-testimonial-card-attribution {
  min-height:var(--whf-attribution-height,90px); box-sizing:border-box;
}

.whf-insight-card--testimonial { min-height:var(--whf-testimonial-card-height,0px); }
.whf-insight-grid.whf-insight-grid--separated { display:flex; flex-direction:column; gap:1.5rem; }
.whf-insight-grid--separated .whf-insight-row {
  display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1.5rem; align-items:stretch;
}
.whf-insight-grid--separated .whf-insight-row--empty { min-height:96px; }
@media(max-width:900px) {
  .whf-insight-grid--separated .whf-insight-row { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media(max-width:600px) {
  .whf-insight-grid--separated .whf-insight-row { grid-template-columns:minmax(0,1fr); }
}

/* Space the testimonial eyebrow away from the quotation mark. */
.whf-insight-card--testimonial .whf-card-type { margin-bottom:24px; }

/* Shared Client Perspectives: compact bordered carousel on every page. */
#client-perspectives.whf-client-perspectives{padding-block:24px 32px;}
#client-perspectives.whf-client-perspectives .client-perspectives-inner{box-sizing:border-box;grid-template-columns:235px minmax(0,1fr);gap:24px;height:380px;padding:28px;border:1px solid #E8E8DE;border-radius:20px;align-items:start;}
#client-perspectives.whf-client-perspectives .client-perspectives-intro{padding-top:0;}
#client-perspectives.whf-client-perspectives .client-perspectives-eyebrow{margin-bottom:24px !important;}
#client-perspectives.whf-client-perspectives .client-perspectives-heading{font-size:32px;}
#client-perspectives.whf-client-perspectives .client-perspectives-divider{margin:22px 0;}
#client-perspectives.whf-client-perspectives .testimonial-stage{height:322px;min-width:0;}
#client-perspectives.whf-client-perspectives .testimonial-viewport{grid-template-columns:minmax(0,.52fr) minmax(0,2.4fr) minmax(0,.52fr);gap:18px;min-height:0;height:298px;}
#client-perspectives.whf-client-perspectives .testimonial-item{padding:0;border:0;}
#client-perspectives.whf-client-perspectives .testimonial-item::before{display:none !important;content:none !important;}
#client-perspectives.whf-client-perspectives .testimonial-featured,#client-perspectives.whf-client-perspectives .whf-testimonial-slide{height:100%;min-height:0;}
#client-perspectives.whf-client-perspectives .testimonial-visual{display:flex;flex-direction:column;min-height:0;height:100%;}
#client-perspectives.whf-client-perspectives .testimonial-featured .testimonial-quote-mark{font-size:48px;line-height:.65;margin:0 0 12px;flex-shrink:0;}
#client-perspectives.whf-client-perspectives .testimonial-featured .testimonial-quote{font-size:20px;line-height:1.4;min-height:0;overflow:auto;}
#client-perspectives.whf-client-perspectives .testimonial-accent{margin:12px 0 10px;flex-shrink:0;}
#client-perspectives.whf-client-perspectives .testimonial-attribution,#client-perspectives.whf-client-perspectives .testimonial-organization{flex-shrink:0;}
#client-perspectives.whf-client-perspectives .testimonial-preview{height:280px;}
#client-perspectives.whf-client-perspectives .testimonial-pagination{margin-top:14px;}
@media(max-width:1100px){#client-perspectives.whf-client-perspectives .client-perspectives-inner{grid-template-columns:205px minmax(0,1fr);padding:24px;gap:20px;}#client-perspectives.whf-client-perspectives .testimonial-viewport{grid-template-columns:minmax(0,.35fr) minmax(0,2.8fr) minmax(0,.35fr);gap:12px;}}
@media(max-width:750px){#client-perspectives.whf-client-perspectives .client-perspectives-inner{display:block;height:auto;padding:24px;}#client-perspectives.whf-client-perspectives .client-perspectives-intro{margin-bottom:24px;}#client-perspectives.whf-client-perspectives .client-perspectives-heading{max-width:none;}#client-perspectives.whf-client-perspectives .testimonial-stage{height:354px;}#client-perspectives.whf-client-perspectives .testimonial-viewport{display:block;height:330px;}#client-perspectives.whf-client-perspectives .testimonial-side{display:none;}#client-perspectives.whf-client-perspectives .testimonial-featured{padding:0;min-height:0;}}

/* Fit the entire quote without an internal scrollbar. */
#client-perspectives.whf-client-perspectives .testimonial-featured .testimonial-quote{overflow:visible !important;flex:0 0 auto;max-height:none !important;}

/* Shared Client Perspectives: remove the enclosing rectangle everywhere. */
#client-perspectives.whf-client-perspectives .client-perspectives-inner{border:0;border-radius:0;}

/* Shared testimonials: anchor source and balance short quotes. */
#client-perspectives.whf-client-perspectives .testimonial-visual{position:relative;display:flex;flex-direction:column;height:100%;}
#client-perspectives.whf-client-perspectives .testimonial-accent{margin-top:auto;margin-bottom:10px;flex-shrink:0;}
#client-perspectives.whf-client-perspectives .testimonial-attribution{min-height:17px;}
#client-perspectives.whf-client-perspectives .testimonial-organization{min-height:17px;}
