/* Faithful design: pages flagged innova_design = faithful */
.innova-faithful {
  --paper: #FBFAF6; --forest: #043A31; --forest-deep: #032b24; --forest-hover: #06493d;
  --foam: #B9DA93; --foam-deep: #82A856; --foam-tint: rgba(185, 218, 147, 0.16);
  --ink: #181818; --muted: #5a5a52; --border: #e0ddd7; --alt: #f0ede7;
  --hair: rgba(4, 58, 49, .10); --raise: 0 6px 24px rgba(4, 58, 49, .10);
  --dur-quick: 150ms; --dur-standard: 240ms; --dur-reveal: 650ms;
  --ease-out: cubic-bezier(0.2, 0, 0, 1); --ease-emphasized: cubic-bezier(0.05, 0.7, 0.1, 1);
  --ease-spring: linear(0, 0.0404, 0.1357, 0.2561, 0.3824, 0.5028, 0.6108, 0.7035, 0.7801, 0.8417, 0.8898, 0.9263, 0.9534, 0.9728, 0.9863, 0.9952, 1.0009, 1.0041, 1.0057, 1.0063, 1.0061, 1.0056, 1.0048, 1.004, 1);
  --mark: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 40 8'%3E%3Cpath d='M0 4h13M27 4h13' stroke='black' stroke-width='1.4'/%3E%3Ccircle cx='20' cy='4' r='3.2'/%3E%3C/svg%3E");
  --arrow: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M4 12h15M13 6l6 6-6 6' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  --plus: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 5v14M5 12h14' fill='none' stroke='black' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E");
  background: var(--paper);
}
.innova-faithful .container-wrap { background: var(--paper); }
.innova-faithful .main-content,
.innova-faithful .main-content p,
.innova-faithful .main-content li { font-family: Poppins, sans-serif; }

/* type */
.innova-faithful .main-content h1 { font-weight: 400; font-size: clamp(2.6rem, 6.4vw, 4.9rem); line-height: 1.06; letter-spacing: -0.01em; }
.innova-faithful .main-content h2 { font-weight: 400; font-size: clamp(1.9rem, 3.6vw, 2.75rem); line-height: 1.15; letter-spacing: -0.005em; color: var(--forest); margin-bottom: 0; }
.innova-faithful .main-content h3 { font-weight: 500; font-size: 1.15rem; line-height: 1.3; letter-spacing: 0; color: var(--forest); margin-bottom: 0; }
.innova-faithful .main-content p { color: var(--ink); padding-bottom: 0; }
.innova-faithful .inn-lead p { margin-top: 14px; max-width: 62ch; font-size: 1.125rem; line-height: 1.65; color: var(--muted); }

/* the eyebrow: the line badge, with the mark in place of its rule */
.innova-faithful .nectar-badge.badge-style-line { margin-bottom: 14px; }
.innova-faithful .nectar-badge.badge-style-line .nectar-badge__inner { display: inline-flex; align-items: center; gap: 12px; padding: 0;
  font: 600 .72rem/1.2 Poppins, sans-serif; letter-spacing: .12em; text-transform: uppercase; color: var(--forest); }
.innova-faithful .nectar-badge.badge-style-line .nectar-badge__inner::before { content: ""; position: static; flex: none; width: 40px; height: 8px;
  border: 0; opacity: 1; transform: none; background: var(--foam-deep); -webkit-mask: var(--mark) center / contain no-repeat; mask: var(--mark) center / contain no-repeat; }
.innova-faithful .nectar-badge.badge-style-line .nectar-badge__inner::after { display: none; }

/* links */
.innova-faithful .inn-more { margin-top: 28px; }
.innova-faithful .inn-link { display: inline-flex; align-items: center; gap: .5em; font: 600 .78rem/1.2 Poppins, sans-serif; letter-spacing: .1em;
  text-transform: uppercase; text-decoration: none; color: var(--forest); }
.innova-faithful .inn-link::after { content: ""; width: 1.1em; height: 1.1em; background: currentColor; -webkit-mask: var(--arrow) center / contain no-repeat;
  mask: var(--arrow) center / contain no-repeat; transition: transform var(--dur-standard) var(--ease-out); }
@media (hover: hover) and (pointer: fine) { .innova-faithful .inn-link:hover::after { transform: translateX(4px); } }

/* sections: one rhythm for every section */
.innova-faithful { --sec: clamp(64px, 7vw, 96px); }
.innova-faithful .main-content .inn-sec { padding-top: var(--sec) !important; padding-bottom: var(--sec) !important; margin-bottom: 0 !important; }
/* two sections on the same ground: a Foam hairline between them, the rhythm either side */
.innova-faithful .main-content :is(.inn-sec, .inn-hub-hero):not(.inn-alt, .inn-tint, .inn-band) + .inn-sec:not(.inn-alt, .inn-tint, .inn-band) { padding-top: 0 !important; }
.innova-faithful .main-content :is(.inn-sec, .inn-hub-hero):not(.inn-alt, .inn-tint, .inn-band) + .inn-sec:not(.inn-alt, .inn-tint, .inn-band) > .row_col_wrap_12 > .wpb_column > .vc_column-inner {
  padding-top: var(--sec) !important; border-top: 1px solid var(--foam); }
/* the location sits on the alt ground, so it never meets Insights on the same one */
.innova-faithful .main-content .inn-location > .row-bg-wrap .row-bg { background-color: var(--alt) !important; }
.innova-faithful .inn-band h2, .innova-faithful .inn-band h3, .innova-faithful .inn-band p { color: var(--paper); }
.innova-faithful .inn-band .inn-lead p { color: rgba(251, 250, 246, .78); }
.innova-faithful .inn-band .nectar-badge.badge-style-line .nectar-badge__inner { color: var(--paper); }
.innova-faithful .inn-band .nectar-badge.badge-style-line .nectar-badge__inner::before { background: var(--foam); }

/* the last element of a column carries no trailing margin */
.innova-faithful .main-content .wpb_wrapper > :last-child { margin-bottom: 0 !important; }
.innova-faithful .main-content .wpb_content_element { margin-bottom: 0; }

/* grids: one inner row per set, laid out as a grid */
.innova-faithful .inn-grid { margin-top: clamp(36px, 5vw, 56px); margin-bottom: 0 !important; }
.innova-faithful .inn-grid > .row_col_wrap_12_inner { display: grid !important; grid-template-columns: repeat(var(--cols, 3), minmax(0, 1fr)); gap: 20px; width: 100%; margin: 0 !important; }
.innova-faithful :is(.inn-grid > .row_col_wrap_12_inner, .inn-faqs > .row_col_wrap_12, .wpb_row > .row_col_wrap_12)::before,
.innova-faithful :is(.inn-grid > .row_col_wrap_12_inner, .inn-faqs > .row_col_wrap_12, .wpb_row > .row_col_wrap_12)::after { content: none !important; display: none !important; }
.innova-faithful .main-content .wpb_row:is(.inn-sec, .inn-band) > .row_col_wrap_12 { row-gap: 0 !important; }
.innova-faithful .main-content .wpb_text_column > .wpb_wrapper > :last-child,
.innova-faithful .main-content .wpb_text_column > .wpb_wrapper > :last-child > li:last-child,
.innova-faithful .main-content .wpb_wrapper > .nectar-fancy-ul:last-child > ul,
.innova-faithful .main-content .wpb_wrapper > .nectar-fancy-ul:last-child li:last-child { margin-bottom: 0 !important; }
.innova-faithful .inn-grid > .row_col_wrap_12_inner > .wpb_column { width: auto !important; max-width: none !important; margin: 0 !important; float: none; padding: 0; }
.innova-faithful .inn-grid > .row_col_wrap_12_inner > .wpb_column > .vc_column-inner { height: 100%; }
.innova-faithful .inn-cols-2 { --cols: 2; } .innova-faithful .inn-cols-3 { --cols: 3; } .innova-faithful .inn-cols-4 { --cols: 4; }
@media (max-width: 1023px) { .innova-faithful .inn-cols-3, .innova-faithful .inn-cols-4 { --cols: 2; } }
@media (max-width: 679px) { .innova-faithful .inn-cols-2, .innova-faithful .inn-cols-3, .innova-faithful .inn-cols-4 { --cols: 1; } }

/* the house card: Foam left edge on a warm white ground, a Forest hairline, a hover that lifts */
.innova-faithful .inn-card > .vc_column-inner { position: relative; overflow: hidden; background: #fff; border: 1px solid var(--hair); border-radius: 10px;
  padding: 26px 26px 26px 29px !important; transition: box-shadow var(--dur-standard) var(--ease-out), transform var(--dur-standard) var(--ease-out); }
.innova-faithful .inn-card > .vc_column-inner::before { content: ""; position: absolute; left: 0; top: 0; bottom: 0; width: 3px; background: var(--foam);
  transform-origin: top; transition: background-color var(--dur-standard) ease; }
.innova-faithful .inn-card p { margin-top: 10px; font-size: .98rem; line-height: 1.65; }
.innova-faithful .inn-role p { color: var(--muted); }
@media (hover: hover) and (pointer: fine) {
  .innova-faithful .inn-card:hover > .vc_column-inner { box-shadow: var(--raise); transform: translateY(-2px); }
  .innova-faithful .inn-card:hover > .vc_column-inner::before { background: var(--forest); }
}
.innova-faithful .inn-card h3 a { color: inherit; text-decoration: none; }
/* a service card is one link: the title carries it and stretches over the card */
.innova-faithful .inn-svc h3 a::after { content: ""; position: absolute; inset: 0; z-index: 1; border-radius: 10px; }
.innova-faithful .inn-svc h3::after { content: ""; display: inline-block; width: .8em; height: .8em; margin-left: .35em; vertical-align: -.05em; background: var(--forest);
  -webkit-mask: var(--arrow) center / contain no-repeat; mask: var(--arrow) center / contain no-repeat; transition: transform var(--dur-standard) var(--ease-out); }
.innova-faithful .inn-svc h3 a:focus-visible { outline: none; }
.innova-faithful .inn-svc:has(h3 a:focus-visible) > .vc_column-inner { outline: 2px solid var(--forest); outline-offset: 3px; }
@media (hover: hover) and (pointer: fine) { .innova-faithful .inn-svc:hover h3::after { transform: translateX(4px); } }

/* hero: the live video under a forest overlay, 80% at the top easing to 92% */
.innova-faithful .inn-hero { min-height: min(90svh, 860px) !important; display: flex; align-items: center; padding-top: 96px !important; padding-bottom: 96px !important; }
.innova-faithful .inn-hero .row_col_wrap_12 { width: 100%; }
.innova-faithful .inn-hero .nectar-highlighted-text h1 { color: var(--paper) !important; text-align: center; }
.innova-faithful .inn-hero .nectar-highlighted-text em { font-style: normal; background-size: 0 .07em !important; }
.innova-faithful .inn-hero .nectar-highlighted-text em.animated, html.no-js .innova-faithful .inn-hero .nectar-highlighted-text em { background-size: 100% .07em !important; }
.innova-faithful .inn-hero-sub p { max-width: 46ch; margin: 22px auto 0; font-size: clamp(1.05rem, 1.6vw, 1.25rem); line-height: 1.5; color: rgba(251, 250, 246, .86); }
.innova-faithful .inn-hero .wpb_wrapper { display: flex; flex-wrap: wrap; justify-content: center; column-gap: 12px; }
.innova-faithful .inn-hero .wpb_wrapper > div { flex: 0 0 100%; }
.innova-faithful .inn-hero .wpb_wrapper > .nectar-button { margin: 32px 0 0 !important; }
@media (prefers-reduced-motion: reduce) { .innova-faithful .inn-hero .nectar-video-wrap { display: none !important; } }
@media print { .innova-faithful .inn-hero .nectar-video-wrap { display: none !important; } }

/* buttons */
.innova-faithful .main-content .inn-btn { display: inline-flex !important; align-items: center; justify-content: center; min-height: 48px; padding: 0 22px !important;
  border-radius: 6px !important; border: 1px solid transparent !important; box-shadow: none !important; font: 600 .78rem/1 Poppins, sans-serif !important;
  letter-spacing: .1em !important; text-transform: uppercase; white-space: nowrap; transition: background-color var(--dur-quick) ease, transform var(--dur-quick) var(--ease-out) !important; }
.innova-faithful .main-content .inn-btn span { color: inherit !important; font: inherit !important; letter-spacing: inherit !important; }
.innova-faithful .main-content .inn-btn:active { transform: scale(.97); }
.innova-faithful .main-content .inn-btn-foam { background: var(--foam) !important; color: var(--forest) !important; }
.innova-faithful .main-content .inn-btn-ghost { background: transparent !important; border-color: rgba(251, 250, 246, .55) !important; color: var(--paper) !important; }
@media (hover: hover) and (pointer: fine) { .innova-faithful .main-content .inn-btn-ghost:hover { background: rgba(251, 250, 246, .1) !important; } }

/* our model: Salient's scribble under "model", as live */
.innova-faithful .inn-model { padding-top: var(--sec) !important; padding-bottom: var(--sec) !important; }
.innova-faithful .inn-narrow > .vc_column-inner { max-width: 820px; margin: 0 auto; }
.innova-faithful .inn-model .nectar-highlighted-text h2 { font-size: clamp(2.4rem, 5vw, 3.6rem); line-height: 1.2; color: var(--paper); margin-bottom: clamp(40px, 4.4vw, 56px); }
.innova-faithful .inn-model-line { margin-top: 16px; font-size: clamp(1.15rem, 2vw, 1.4rem) !important; line-height: 1.55 !important; color: var(--paper) !important; }

/* why clients bring us in, and the engagement cards */
.innova-faithful .inn-why .img-with-aniamtion-wrap { margin-bottom: 18px; }
.innova-faithful .inn-why h3 + p { margin-top: 10px; }
.innova-faithful .inn-why p { font-size: .98rem; line-height: 1.65; color: var(--muted); }
.innova-faithful .inn-engage-row { margin-top: clamp(48px, 6vw, 72px); }
.innova-faithful .inn-engage-row > .row_col_wrap_12_inner { gap: 24px; }
.innova-faithful .inn-engage > .vc_column-inner { display: flex; flex-direction: column; padding: 0 !important; }
.innova-faithful .inn-engage > .vc_column-inner::before { display: none; }
.innova-faithful .inn-engage .wpb_wrapper { display: flex; flex-direction: column; height: 100%; }
.innova-faithful .inn-engage .img-with-aniamtion-wrap { margin: 0 !important; overflow: hidden; aspect-ratio: 4 / 3; background: var(--forest); }
.innova-faithful .inn-engage .img-with-aniamtion-wrap .inner,
.innova-faithful .inn-engage .img-with-aniamtion-wrap .hover-wrap,
.innova-faithful .inn-engage .img-with-aniamtion-wrap .hover-wrap-inner { width: 100%; height: 100%; }
.innova-faithful .inn-engage .img-with-aniamtion-wrap img { width: 100% !important; height: 100% !important; max-width: none; object-fit: cover; transition: transform 900ms var(--ease-out); }
.innova-faithful .inn-engage:nth-child(1) .img-with-aniamtion-wrap img { object-position: 80% 50%; }
.innova-faithful .inn-engage:nth-child(2) .img-with-aniamtion-wrap img { object-position: 18% 50%; }
.innova-faithful .inn-eng-text { position: relative; flex: 1; margin: 0 !important; padding: 24px 26px 28px 29px; }
.innova-faithful .inn-eng-text::before { content: ""; position: absolute; left: 0; top: 0; bottom: 0; width: 3px; background: var(--foam); transition: background-color var(--dur-standard) ease; }
.innova-faithful .inn-eng-text h3 { font-size: 1.25rem; }
.innova-faithful .inn-eng-text p { color: var(--muted); }
@media (hover: hover) and (pointer: fine) {
  .innova-faithful .inn-engage:hover .inn-eng-text::before { background: var(--forest); }
  .innova-faithful .inn-engage:hover .img-with-aniamtion-wrap img { transform: scale(1.04); }
}

/* the figures and recently closed searches */
/* the figures: one strip in the house card, a Foam left edge and hairlines between */
.innova-faithful .main-content .inn-record { padding-bottom: 0 !important; }
.innova-faithful .main-content .inn-record + .inn-closed-sec { padding-top: clamp(56px, 6vw, 80px) !important; }
.innova-faithful .inn-stats { margin-top: 0; --cols: 3 !important; }
.innova-faithful .inn-stats > .row_col_wrap_12_inner { position: relative; gap: 0 !important; overflow: hidden; background: #fff; border: 1px solid var(--hair); border-radius: 10px; }
.innova-faithful .inn-stats > .row_col_wrap_12_inner::before { content: ""; position: absolute; left: 0; top: 0; bottom: 0; width: 3px; z-index: 1; background: var(--foam); }
.innova-faithful .inn-stat > .vc_column-inner { padding: clamp(24px, 3vw, 36px) clamp(24px, 3vw, 40px) !important; border-left: 1px solid var(--hair); }
.innova-faithful .inn-stat:first-child > .vc_column-inner { border-left: 0; padding-left: clamp(27px, 3vw, 43px) !important; }
.innova-faithful .inn-stat .nectar-milestone { text-align: left !important; }
.innova-faithful .inn-stat .nectar-milestone .number { justify-content: flex-start !important; font: 400 clamp(2.4rem, 4.4vw, 3.4rem)/1 Poppins, sans-serif !important; color: var(--forest) !important; font-variant-numeric: tabular-nums; }
.innova-faithful .inn-stat .nectar-milestone .number span, .innova-faithful .inn-stat .nectar-milestone .symbol-wrap { font: inherit !important; color: inherit !important; }
.innova-faithful .inn-stat .nectar-milestone .subject { margin-top: 12px; text-align: left !important; font: 600 .72rem/1.4 Poppins, sans-serif !important; letter-spacing: .12em; text-transform: uppercase; color: var(--muted); }
@media (max-width: 679px) {
  .innova-faithful .inn-stats { --cols: 1 !important; }
  .innova-faithful .inn-stat > .vc_column-inner, .innova-faithful .inn-stat:first-child > .vc_column-inner { border-left: 0; border-top: 1px solid var(--hair); padding: 24px 24px 24px 27px !important; }
  .innova-faithful .inn-stat:first-child > .vc_column-inner { border-top: 0; }
}

.innova-faithful .inn-closed { margin-top: clamp(36px, 5vw, 56px); margin-bottom: 0 !important; }
.innova-faithful .innova-cs-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; }
.innova-faithful .innova-cs-n4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
@media (max-width: 1023px) { .innova-faithful .innova-cs-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 679px) { .innova-faithful .innova-cs-grid { grid-template-columns: minmax(0, 1fr); } }
.innova-faithful .innova-cs-card { position: relative; overflow: hidden; background: #fff; border: 1px solid var(--hair); border-radius: 10px; padding: 26px 26px 26px 29px;
  transition: box-shadow var(--dur-standard) var(--ease-out), transform var(--dur-standard) var(--ease-out); }
.innova-faithful .innova-cs-card::before { content: ""; position: absolute; left: 0; top: 0; bottom: 0; width: 3px; background: var(--foam); transition: background-color var(--dur-standard) ease; }
@media (hover: hover) and (pointer: fine) {
  .innova-faithful .innova-cs-card:hover { box-shadow: var(--raise); transform: translateY(-2px); }
  .innova-faithful .innova-cs-card:hover::before { background: var(--forest); }
}
.innova-faithful .innova-cs-meta { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin: 0 0 14px !important; }
.innova-faithful .innova-cs-chip { display: inline-flex; align-items: center; gap: 6px; padding: 4px 10px; border-radius: 999px; background: var(--foam-tint);
  color: var(--forest); font-size: .72rem; font-weight: 600; line-height: 1.4; letter-spacing: .04em; white-space: nowrap; }
.innova-faithful .innova-cs-chip svg { width: 12px; height: 12px; fill: none; stroke: currentColor; stroke-width: 2.4; stroke-linecap: round; stroke-linejoin: round; }
.innova-faithful .innova-cs-chip-alt { background: transparent; box-shadow: inset 0 0 0 1px var(--hair); }
.innova-faithful .innova-cs-loc { font-size: .82rem; color: var(--muted); }
.innova-faithful .innova-cs-outcome { margin-top: 10px; font-size: .98rem !important; line-height: 1.65 !important; }
.innova-faithful .innova-cs-by { display: flex; align-items: center; gap: 10px; margin-top: 18px; font-size: .85rem !important; color: var(--muted) !important; }
.innova-faithful .innova-cs-by b { font-weight: 500; color: var(--forest); }
.innova-faithful .innova-cs-faces { display: flex; flex: none; }
.innova-faithful .innova-cs-faces img { width: 30px; height: 30px; border-radius: 50%; object-fit: cover; box-shadow: 0 0 0 2px #fff; }
.innova-faithful .innova-cs-faces img + img { margin-left: -8px; }

/* founders */
.innova-faithful .inn-founders .inn-grid > .row_col_wrap_12_inner { gap: 28px; }
.innova-faithful .inn-founder .team-member { margin: 0; padding: 0; border: 0; text-align: left; }
.innova-faithful .inn-founder .team-member > * { border: 0 !important; }
.innova-faithful .inn-founder .team-member .description { padding-bottom: 0 !important; }
.innova-faithful .inn-founder .team-member img { width: 100%; aspect-ratio: 4 / 5; height: auto; object-fit: cover; object-position: 50% 20%; border-radius: 10px; margin: 0; }
.innova-faithful .inn-founder .team-member h4 { margin: 20px 0 0; font: 400 1.3rem/1.3 Poppins, sans-serif; color: var(--forest); }
.innova-faithful .inn-founder .team-member .position { margin-top: 4px; font: 500 .88rem/1.4 Poppins, sans-serif; letter-spacing: 0; text-transform: none; color: var(--forest); opacity: 1; }
.innova-faithful .inn-founder .team-member .description { margin-top: 10px; font-size: .96rem; line-height: 1.65; color: var(--muted); }
.innova-faithful .inn-f-links { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; margin-top: 16px; }
.innova-faithful .inn-ic { display: grid; place-items: center; width: 40px; height: 40px; border-radius: 50%; border: 1px solid var(--hair); color: var(--forest);
  text-decoration: none; font-size: 17px; transition: background-color var(--dur-quick) ease; }
.innova-faithful .inn-f-links .inn-link { margin-left: 6px; }
@media (hover: hover) and (pointer: fine) { .innova-faithful .inn-ic:hover { background: var(--foam-tint); } }

/* who we work with: the live line icons */
.innova-faithful .inn-who-sec .nectar-badge, .innova-faithful .inn-who-sec .nectar-split-heading { text-align: center; }
.innova-faithful .inn-who-sec .nectar-badge__inner { justify-content: center; }
.innova-faithful .inn-who > .vc_column-inner { padding: 8px 12px 0 !important; text-align: center; }
.innova-faithful .inn-who .nectar_icon_wrap { margin: 0 auto 18px; }
.innova-faithful .inn-who .nectar_icon, .innova-faithful .inn-who .im-icon-wrap { padding: 0 !important; height: auto !important; width: auto !important; }
.innova-faithful .inn-who svg { width: 50px !important; height: 50px !important; fill: var(--forest) !important; }
.innova-faithful .inn-who svg path { fill: var(--forest) !important; }
.innova-faithful .inn-who p { margin-top: 10px; font-size: .98rem; line-height: 1.65; color: var(--muted); }

/* testimonials: forest cards, the live slider */
.innova-faithful .inn-quotes .testimonial_slider { margin-top: clamp(36px, 5vw, 56px); }
.innova-faithful .inn-quotes .testimonial_slider[data-style*="multiple_visible"] .slides { margin-bottom: 0 !important; }
/* the arrows sit clear below the cards rather than over their bottom edge. Salient lifts
   them 25px with a transform that is also their circle's containing block, so keep the
   transform and move them with margin */
.innova-faithful .inn-quotes .testimonial_slider .flickity-prev-next-button { margin-top: 53px !important; }
.innova-faithful .inn-quotes .testimonial_slider[data-style*="multiple_visible"] .slides blockquote { display: flex !important; flex-direction: column !important;
  width: calc((100% - 40px) / 3) !important; min-height: 0; margin: 0 20px 0 0 !important; padding: 28px !important; border: 0 !important; border-radius: 10px !important;
  background: var(--forest) !important; box-shadow: none !important; opacity: 1 !important; text-align: left !important; }
@media (max-width: 1023px) { .innova-faithful .inn-quotes .testimonial_slider[data-style*="multiple_visible"] .slides blockquote { width: calc((100% - 20px) / 2) !important; max-width: none !important; } }
@media (max-width: 679px) { .innova-faithful .inn-quotes .testimonial_slider[data-style*="multiple_visible"] .slides blockquote { width: 84% !important; margin-right: 14px !important; padding: 24px !important; } }
.innova-faithful .inn-quotes .testimonial_slider[data-style*="multiple_visible"] .slides blockquote::before { content: "\201C"; display: block; flex: 0 0 auto; margin: 0 0 12px;
  position: static !important; width: auto !important; height: auto !important; background: none !important; transform: none !important; opacity: 1 !important;
  font: 700 52px/1 Georgia, "Times New Roman", serif; color: var(--foam); }
.innova-faithful .inn-quotes .testimonial_slider[data-style*="multiple_visible"] .slides blockquote .image-icon,
.innova-faithful .inn-quotes .testimonial_slider[data-style*="multiple_visible"] .slides blockquote .bottom-arrow { display: none !important; }
.innova-faithful .inn-quotes .testimonial_slider[data-style*="multiple_visible"] .slides blockquote p { flex: 1 1 auto; margin: 0 !important; padding: 0 !important;
  font-size: .98rem !important; line-height: 1.7 !important; letter-spacing: 0; color: var(--paper) !important; text-align: left !important; }
.innova-faithful .inn-quotes .testimonial_slider[data-style*="multiple_visible"] .slides blockquote .testimonial-name { display: block; margin-top: 22px !important; padding-top: 16px;
  border-top: 1px solid rgba(251, 250, 246, .16); font: 500 1rem/1.4 Poppins, sans-serif !important; color: var(--paper) !important; opacity: 1 !important; text-align: left !important; }
.innova-faithful .inn-quotes .testimonial_slider[data-style*="multiple_visible"] .slides blockquote .title { display: block; margin-top: 2px; font-size: .84rem !important; letter-spacing: 0;
  color: rgba(251, 250, 246, .78) !important; opacity: 1 !important; text-align: left !important; }
.innova-faithful .inn-quotes .testimonial_slider .flickity-prev-next-button { background: none !important; }
.innova-faithful .inn-quotes .testimonial_slider .flickity-prev-next-button::before { background-color: var(--forest) !important; }
.innova-faithful .inn-quotes .testimonial_slider .flickity-prev-next-button::after { background-color: var(--paper) !important; }
.innova-faithful .inn-quotes .testimonial_slider .flickity-prev-next-button svg path { fill: var(--paper) !important; }
.innova-faithful .inn-quotes .testimonial_slider .flickity-prev-next-button:disabled { opacity: .35; }
/* testimonials, script off */
html.no-js .innova-faithful .inn-quotes .testimonial_slider .slides,
html.no-js .innova-faithful .inn-quotes .testimonial_slider .flickity-viewport { display: block !important; height: auto !important; overflow: visible !important; margin-bottom: 0 !important; }
html.no-js .innova-faithful .inn-quotes .testimonial_slider .flickity-slider { display: grid !important; grid-template-columns: repeat(auto-fill, minmax(min(100%, 320px), 1fr)); gap: 20px;
  position: static !important; transform: none !important; height: auto !important; }
html.no-js .innova-faithful .inn-quotes .testimonial_slider[data-style*="multiple_visible"] .slides blockquote { width: auto !important; margin: 0 !important; position: static !important;
  left: auto !important; float: none !important; transform: none !important; }
/* insights cards, script off */
html.no-js .innova-faithful .nectar-post-grid.nectar-flickity .flickity-slider { display: grid !important; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 30px;
  position: static !important; transform: none !important; }
html.no-js .innova-faithful .nectar-post-grid.nectar-flickity .nectar-post-grid-item .inner { background-color: var(--forest) !important; }
@media (max-width: 999px) { html.no-js .innova-faithful .nectar-post-grid.nectar-flickity .flickity-slider { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 679px) { html.no-js .innova-faithful .nectar-post-grid.nectar-flickity .flickity-slider { grid-template-columns: minmax(0, 1fr); } }
html.no-js .innova-faithful .nectar-post-grid.nectar-flickity .flickity-slider > .nectar-post-grid-item { width: auto !important; margin: 0 !important; position: relative !important; left: auto !important; }
html.no-js .innova-faithful .inn-quotes .testimonial_slider .flickity-prev-next-button,
html.no-js .innova-faithful .inn-quotes .testimonial_slider .flickity-page-dots { display: none !important; }
/* insights: the live carousel */
.innova-faithful .inn-ins { overflow-x: clip; }
.innova-faithful .inn-ins-bar { margin: 22px 0 !important; }
.innova-faithful .inn-ins-bar > .row_col_wrap_12_inner { display: flex !important; align-items: center; justify-content: space-between; }
.innova-faithful .inn-ins-bar .wpb_column { flex: 0 0 auto !important; width: auto !important; margin: 0 !important; }
.innova-faithful .inn-ins-bar .inn-right { margin-left: auto !important; }
.innova-faithful .inn-ins-bar .inn-more { margin: 0; }
.innova-faithful .inn-feat { font: 600 .72rem/1.4 Poppins, sans-serif !important; letter-spacing: .12em; text-transform: uppercase; color: var(--muted) !important; }
.innova-faithful .inn-ins .nectar-post-grid-item { border-radius: 10px; overflow: hidden; }
.innova-faithful .inn-ins .nectar-post-grid-item .meta-category a { background: var(--foam) !important; color: var(--forest) !important; border-radius: 999px; font-weight: 600; letter-spacing: .04em; }
.innova-faithful .inn-ins .nectar-post-grid-item .post-heading { font-weight: 500; line-height: 1.3; }
.innova-faithful .inn-ins .nectar-post-grid-item .bg-overlay, .innova-faithful .inn-ins .nectar-post-grid-item-bg-wrap::after { }
.innova-faithful .inn-ins .nectar-post-grid-filters { display: none; }

/* hub: hero */
.innova-faithful .inn-hub-hero { padding-top: clamp(56px, 8vw, 104px) !important; padding-bottom: var(--sec) !important; }
.innova-faithful .inn-hub-hero .nectar-badge:not(.badge-style-line) .nectar-badge__inner { display: inline-block; padding: 5px 12px; border-radius: 6px; background: var(--foam);
  color: var(--forest); font: 500 .78rem/1.4 Poppins, sans-serif; }
.innova-faithful .inn-hub-hero h1 { margin-top: 18px; color: var(--forest); }
.innova-faithful .inn-hub-hero .inn-lead p { margin-top: 22px; }
.innova-faithful .inn-hub-hero .nectar-cta { margin-top: 30px; }
.innova-faithful .inn-hub-hero .nectar-cta .link_wrap { display: inline-flex; align-items: center; min-height: 48px; padding: 0 22px !important; border-radius: 6px;
  background: var(--forest) !important; font: 600 .78rem/1 Poppins, sans-serif; letter-spacing: .1em; text-transform: uppercase; }
.innova-faithful .inn-hub-hero .nectar-cta .link_wrap * { color: var(--paper) !important; font: inherit; }
.innova-faithful .inn-hub-hero-side > .vc_column-inner { padding-left: clamp(0px, 4vw, 48px) !important; border-left: 1px solid var(--border) !important; }
.innova-faithful .inn-pull { margin-bottom: 14px; font-size: 1.3rem !important; line-height: 1.4 !important; color: var(--forest) !important; }
.innova-faithful .inn-side-text p:not(.inn-pull) { color: var(--muted); }
.innova-faithful .inn-hub-hero .nectar-fancy-ul { margin-top: 22px; }
.innova-faithful .inn-hub-hero .nectar-fancy-ul li { position: relative; padding-left: 22px !important; margin: 0 0 12px !important; font-size: .96rem; line-height: 1.5; }
.innova-faithful .inn-hub-hero .nectar-fancy-ul li i, .innova-faithful .inn-hub-hero .nectar-fancy-ul li .list-icon-holder { display: none !important; }
.innova-faithful .inn-hub-hero .nectar-fancy-ul li::before { content: ""; position: absolute; left: 0; top: .62em; width: 8px; height: 8px; border-radius: 50%; background: var(--foam-deep); }
@media (max-width: 999px) {
  .innova-faithful .inn-hub-hero-side > .vc_column-inner { padding-left: 0 !important; border-left: 0 !important; border-top: 1px solid var(--border) !important; padding-top: 28px !important; margin-top: 28px; }
}

/* hub: the image band that carries the reader into the process */
.innova-faithful .inn-hub-band > .row_col_wrap_12 > .wpb_column > .vc_column-inner { border-radius: 12px; overflow: hidden; }
.innova-faithful .inn-hub-band h3 { max-width: 20ch; margin: 0 auto; font-size: clamp(1.75rem, 3.4vw, 2.7rem) !important; font-weight: 400; line-height: 1.2 !important; color: var(--paper) !important; }

/* hub: the four steps on a connecting line */
.innova-faithful .inn-steps > .row_col_wrap_12_inner { position: relative; gap: 0; }
.innova-faithful .inn-steps > .row_col_wrap_12_inner::before { content: ""; position: absolute; left: 22px; right: 22px; top: 21px; height: 2px; background: var(--foam); transform-origin: left; }
.innova-faithful .inn-step > .vc_column-inner { position: relative; padding: 0 24px !important; border-left: 1px solid rgba(251, 250, 246, .16); }
.innova-faithful .inn-step:first-child > .vc_column-inner { border-left: 0; padding-left: 0 !important; }
.innova-faithful .inn-step .nectar-badge { position: relative; z-index: 1; margin-bottom: 20px; }
.innova-faithful .inn-step .nectar-badge .nectar-badge__inner { display: grid; place-items: center; width: 44px; height: 44px; padding: 0; border-radius: 50% !important;
  background: var(--foam) !important; color: var(--forest) !important; font: 600 .85rem/1 Poppins, sans-serif; }
.innova-faithful .inn-step h3 + p { margin-top: 10px; }
.innova-faithful .inn-step p { font-size: .96rem; line-height: 1.65; color: rgba(251, 250, 246, .82) !important; }
@media (max-width: 899px) {
  .innova-faithful .inn-steps > .row_col_wrap_12_inner { grid-template-columns: minmax(0, 1fr); gap: 28px; }
  .innova-faithful .inn-step > .vc_column-inner, .innova-faithful .inn-step:first-child > .vc_column-inner { border-left: 0; padding: 0 0 0 64px !important; }
  .innova-faithful .inn-step .nectar-badge { position: absolute; left: 0; top: 0; }
  .innova-faithful .inn-steps > .row_col_wrap_12_inner::before { left: 21px; right: auto; top: 22px; bottom: 22px; width: 2px; height: auto; transform-origin: top; }
}

/* hub: FAQs, the live toggles as cards */
.innova-faithful .inn-faqs > .row_col_wrap_12 { display: grid !important; grid-template-columns: minmax(0, 1.15fr) minmax(0, 1fr); gap: clamp(32px, 6vw, 88px); align-items: start; }
.innova-faithful .inn-faqs > .row_col_wrap_12 > .wpb_column { width: auto !important; margin: 0 !important; }
@media (max-width: 899px) { .innova-faithful .inn-faqs > .row_col_wrap_12 { grid-template-columns: minmax(0, 1fr); } }
.innova-faithful .inn-faq-list > .vc_column-inner { background: none !important; padding: 0 !important; }
.innova-faithful .inn-faq-list .toggles { display: grid; gap: 12px; }
.innova-faithful .inn-faq-list .toggle { margin: 0 !important; background: #fff !important; border: 1px solid var(--hair) !important; border-radius: 10px !important; box-shadow: none !important;
  transition: box-shadow var(--dur-standard) var(--ease-out), border-color var(--dur-standard) ease; }
.innova-faithful .inn-faq-list .toggle-title { margin: 0 !important; }
/* Salient lays the row out right to left for its right-hand icon; every question starts at the left edge */
.innova-faithful .inn-faq-list .toggle-title a { display: flex !important; flex-direction: row !important; align-items: center; justify-content: flex-start !important; gap: 16px;
  padding: 20px 22px !important; text-align: left !important; font: 500 1rem/1.4 Poppins, sans-serif !important; color: var(--forest) !important; background: none !important; }
.innova-faithful .inn-faq-list .toggle-title a::after { order: 2; margin-left: auto; }
.innova-faithful .inn-faq-list .toggle-title svg.nectar-toggle-icon { display: none; }
.innova-faithful .inn-faq-list .toggle-title a::after { content: ""; flex: none; width: 32px; height: 32px; border-radius: 50%; box-shadow: inset 0 0 0 1px var(--hair);
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 5v14M5 12h14' fill='none' stroke='%23043A31' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E") center / 16px no-repeat;
  transition: transform var(--dur-standard) var(--ease-out), background-color var(--dur-standard) ease; }
.innova-faithful .inn-faq-list .toggle.open .toggle-title a::after { transform: rotate(45deg); background-color: var(--foam-tint); }
@media (hover: hover) and (pointer: fine) {
  .innova-faithful .inn-faq-list .toggle:hover { box-shadow: var(--raise); border-color: rgba(4, 58, 49, .18) !important; }
  .innova-faithful .inn-faq-list .toggle-title a:hover::after { background-color: var(--foam); box-shadow: none; }
}
.innova-faithful .inn-faq-list .toggle > div { padding: 0 22px !important; }
.innova-faithful .inn-faq-list .toggle .inner-toggle-wrap { padding: 0 0 22px !important; }
.innova-faithful .inn-faq-list .toggle p { font-size: .96rem; line-height: 1.7; color: var(--muted); }
.innova-faithful .inn-faq-list .toggle p a { color: var(--forest); text-decoration: underline; text-decoration-color: var(--foam-deep); text-underline-offset: 2px; }
/* with script off, every answer is open and readable */
/* Salient holds these at opacity 0 until its script animates them in */
html.no-js .innova-faithful .nectar-split-heading, html.no-js .innova-faithful .nectar-milestone { opacity: 1 !important; }
html.no-js .innova-faithful .inn-faq-list .toggle > div { display: block !important; height: auto !important; max-height: none !important; opacity: 1 !important; visibility: visible !important; overflow: visible !important; }

/* header: the call to action, on these pages only */
@media (min-width: 1000px) {
  .innova-faithful #top nav > ul > li.innova-hdr-cta { margin-left: 8px; }
  .innova-faithful #top nav > ul > li.innova-hdr-cta > a { display: inline-flex !important; align-items: center; min-height: 44px; margin: 0 !important; padding: 0 20px !important;
    border-radius: 6px; background: var(--forest); color: var(--paper) !important; font-weight: 600; letter-spacing: .1em; white-space: nowrap; }
  .innova-faithful #top nav > ul > li.innova-hdr-cta > a .menu-title-text { color: var(--paper) !important; }
  .innova-faithful #top nav > ul > li { margin: 0 !important; }
  .innova-faithful #top nav > ul > li.menu-item-has-children > a { align-items: center; }
  .innova-faithful #top nav > ul > li > a { padding-left: 12px !important; padding-right: 12px !important; font-size: 13px !important; letter-spacing: .06em; white-space: nowrap; }
}
@media (min-width: 1000px) and (hover: hover) and (pointer: fine) { .innova-faithful #top nav > ul > li.innova-hdr-cta > a:hover { background: var(--forest-hover); } }
/* Theme Options custom CSS hides the global footer CTA on the four service pages,
   which carried their own CTA row; a Faithful page drops that row and keeps this one */
body.innova-faithful .before-footer #contact { display: block !important; }

/* below Salient's desktop nav the hero carries the same button */
@media (max-width: 999px) { .innova-faithful #top nav > ul > li.innova-hdr-cta { display: none !important; } }
.innova-faithful #top .mobile-header li.innova-hdr-cta { display: none !important; }
.innova-faithful .innova-location-eyebrow { opacity: 1 !important; color: rgba(4, 58, 49, .72); }

/* motion: the site's reveal gate, with the Faithful timing */
.js-reveal .innova-faithful .innova-fade-in:not(.visible) { opacity: 0; transform: translateY(24px); }
.js-reveal .innova-faithful .innova-fade-in { transition: opacity var(--dur-reveal) var(--ease-out), transform var(--dur-reveal) var(--ease-emphasized); }
.js-reveal .innova-faithful .inn-grid .innova-fade-in:nth-child(4n+2) { transition-delay: 80ms; }
.js-reveal .innova-faithful .inn-grid .innova-fade-in:nth-child(4n+3) { transition-delay: 160ms; }
.js-reveal .innova-faithful .inn-grid .innova-fade-in:nth-child(4n+4) { transition-delay: 240ms; }
.js-reveal .innova-faithful .inn-model-line:nth-child(2) { transition-delay: 80ms; }
.js-reveal .innova-faithful .inn-model-line:nth-child(3) { transition-delay: 160ms; }
.js-reveal .innova-faithful .inn-card.innova-fade-in > .vc_column-inner::before { transform: scaleY(0); transition: transform 700ms var(--ease-emphasized) 220ms, background-color var(--dur-standard) ease; }
.js-reveal .innova-faithful .inn-card.innova-fade-in.visible > .vc_column-inner::before { transform: none; }
.js-reveal .innova-faithful .inn-founder.innova-fade-in .team-member img { clip-path: inset(0 0 0 100%); transition: clip-path 900ms var(--ease-emphasized); }
.js-reveal .innova-faithful .inn-founder.innova-fade-in.visible .team-member img { clip-path: inset(0); }
.js-reveal .innova-faithful .inn-engage .img-with-aniamtion-wrap img { transform: scale(1.12); transition: transform 1400ms var(--ease-out); }
.js-reveal .innova-faithful .inn-engage.visible .img-with-aniamtion-wrap img { transform: none; }
.js-reveal .innova-faithful .inn-steps.innova-fade-in { opacity: 1; transform: none; }
.js-reveal .innova-faithful .inn-steps > .row_col_wrap_12_inner::before { transform: scaleX(0); transition: transform 1400ms var(--ease-emphasized) 200ms; }
.js-reveal .innova-faithful .inn-steps.visible > .row_col_wrap_12_inner::before { transform: none; }
.js-reveal .innova-faithful .inn-steps .nectar-badge { opacity: 0; transform: scale(.85); transition: opacity 200ms var(--ease-out), transform 500ms var(--ease-spring); }
.js-reveal .innova-faithful .inn-steps .inn-step:nth-child(1) .nectar-badge { transition-delay: 200ms; }
.js-reveal .innova-faithful .inn-steps .inn-step:nth-child(2) .nectar-badge { transition-delay: 520ms; }
.js-reveal .innova-faithful .inn-steps .inn-step:nth-child(3) .nectar-badge { transition-delay: 840ms; }
.js-reveal .innova-faithful .inn-steps .inn-step:nth-child(4) .nectar-badge { transition-delay: 1160ms; }
.js-reveal .innova-faithful .inn-steps.visible .nectar-badge { opacity: 1; transform: none; }
@media (max-width: 899px) {
  .js-reveal .innova-faithful .inn-steps > .row_col_wrap_12_inner::before { transform: scaleY(0); }
  .js-reveal .innova-faithful .inn-steps.visible > .row_col_wrap_12_inner::before { transform: none; }
}
@media (prefers-reduced-motion: reduce) {
  .innova-faithful .inn-card > .vc_column-inner, .innova-faithful .innova-cs-card, .innova-faithful .inn-link::after, .innova-faithful .inn-svc h3::after,
  .innova-faithful .inn-engage .img-with-aniamtion-wrap img, .innova-faithful .inn-faq-list .toggle-title a::after { transition-property: opacity, background-color, box-shadow; }
  .innova-faithful .inn-card:hover > .vc_column-inner, .innova-faithful .innova-cs-card:hover { transform: none; }
  .innova-faithful .inn-engage:hover .img-with-aniamtion-wrap img, .innova-faithful .inn-svc:hover h3::after, .innova-faithful .inn-link:hover::after { transform: none; }
}
@media print {
  .innova-faithful .innova-fade-in { opacity: 1 !important; transform: none !important; }
  .innova-faithful .inn-founder .team-member img { clip-path: none !important; }
}

/* Faithful design: header, on every page carrying the header class */
.innova-faithful-header { --forest: #043A31; --forest-hover: #06493d; --paper: #FBFAF6; }
@media (min-width: 1000px) {
  .innova-faithful-header #top nav > ul > li.innova-hdr-cta { margin-left: 8px; }
  .innova-faithful-header #top nav > ul > li.innova-hdr-cta > a { display: inline-flex !important; align-items: center; min-height: 44px; margin: 0 !important; padding: 0 20px !important;
    border-radius: 6px; background: var(--forest); color: var(--paper) !important; font-weight: 600; letter-spacing: .1em; white-space: nowrap; }
  .innova-faithful-header #top nav > ul > li.innova-hdr-cta > a .menu-title-text { color: var(--paper) !important; }
  .innova-faithful-header #top nav > ul > li { margin: 0 !important; }
  .innova-faithful-header #top nav > ul > li.menu-item-has-children > a { align-items: center; }
  .innova-faithful-header #top nav > ul > li > a { padding-left: 12px !important; padding-right: 12px !important; font-size: 13px !important; letter-spacing: .06em; white-space: nowrap; }
}
@media (min-width: 1000px) and (hover: hover) and (pointer: fine) { .innova-faithful-header #top nav > ul > li.innova-hdr-cta > a:hover { background: var(--forest-hover); } }
@media (max-width: 999px) { .innova-faithful-header #top nav > ul > li.innova-hdr-cta { display: none !important; } }
.innova-faithful-header #top .mobile-header li.innova-hdr-cta { display: none !important; }

/* sections in two columns: the heading beside the text */
.innova-faithful .inn-split > .row_col_wrap_12 { display: grid !important; grid-template-columns: minmax(0, 1fr) minmax(0, 1.9fr); gap: clamp(32px, 6vw, 88px); align-items: start; }
.innova-faithful .inn-split > .row_col_wrap_12 > .wpb_column { width: auto !important; margin: 0 !important; float: none; }
@media (max-width: 899px) { .innova-faithful .inn-split > .row_col_wrap_12 { grid-template-columns: minmax(0, 1fr); gap: 28px; } }
/* one hairline across both columns when a two-column section follows one on the same ground */
.innova-faithful .main-content :is(.inn-sec, .inn-hub-hero):not(.inn-alt, .inn-tint, .inn-band) + .inn-split.inn-sec:not(.inn-alt, .inn-tint, .inn-band) > .row_col_wrap_12 > .wpb_column > .vc_column-inner {
  padding-top: 0 !important; border-top: 0 !important; }
.innova-faithful .main-content :is(.inn-sec, .inn-hub-hero):not(.inn-alt, .inn-tint, .inn-band) + .inn-split.inn-sec:not(.inn-alt, .inn-tint, .inn-band) > .row_col_wrap_12 {
  padding-top: var(--sec); border-top: 1px solid var(--foam); }
.innova-faithful .inn-split-head .inn-lead p { font-size: 1.02rem; }

/* running text and lists */
.innova-faithful .main-content :is(.inn-body, .inn-card) p { font-size: 1.02rem; line-height: 1.75; }
.innova-faithful .main-content .inn-card p { font-size: .98rem; line-height: 1.65; }
.innova-faithful .main-content :is(.inn-body, .inn-card) :is(p, ul) + :is(p, ul) { margin-top: 14px; }
.innova-faithful .main-content :is(.inn-body, .inn-card) ul { margin: 0; padding: 0; }
.innova-faithful .main-content :is(.inn-body, .inn-card) ul li { position: relative; list-style: none; margin: 0 0 10px; padding-left: 22px; line-height: 1.65; }
.innova-faithful .main-content :is(.inn-body, .inn-card) ul li::before { content: ""; position: absolute; left: 0; top: .66em; width: 8px; height: 8px; border-radius: 50%; background: var(--foam-deep); }
.innova-faithful .main-content :is(.inn-body, .inn-card) strong { color: var(--forest); font-weight: 600; }
.innova-faithful .main-content .inn-body a { color: var(--forest); text-decoration: underline; text-decoration-color: var(--foam-deep); text-underline-offset: 3px; }
.innova-faithful .inn-band .inn-body :is(p, li) { color: rgba(251, 250, 246, .86); }
.innova-faithful .inn-band .inn-body strong, .innova-faithful .inn-band .inn-body a { color: var(--paper); }
.innova-faithful .inn-band .inn-body ul li::before { background: var(--foam); }

/* cards: a label, a number or an icon above the title */
.innova-faithful .inn-cols-1 { --cols: 1; }
.innova-faithful .inn-stack + .inn-stack { margin-top: 20px; }
.innova-faithful .inn-card .nectar-badge.badge-style-line { margin-bottom: 12px; }
.innova-faithful .inn-card .nectar-badge:not(.badge-style-line) { margin-bottom: 16px; }
.innova-faithful .inn-card .nectar-badge:not(.badge-style-line) .nectar-badge__inner { display: grid; place-items: center; width: 36px; height: 36px; padding: 0;
  border-radius: 50% !important; background: var(--foam) !important; color: var(--forest) !important; font: 600 .8rem/1 Poppins, sans-serif; }
.innova-faithful .inn-card .nectar_icon_wrap { margin-bottom: 14px; }
.innova-faithful .inn-cols-1 .inn-card h3 { font-size: 1.35rem; }
.innova-faithful .inn-cols-1 .inn-card p { max-width: 75ch; }

/* custom templates: the Faithful finish on their own markup */
.innova-faithful-tpl { --sec: clamp(64px, 7vw, 96px); }
.innova-faithful-tpl :is(.innova-hero h1, .innova-careers-h1, .innova-job-h1, .innova-article-hero h1) { font-weight: 400 !important; letter-spacing: -0.01em !important; }
.innova-faithful-tpl .innova-hero h1 { font-size: clamp(2.6rem, 6vw, 4.6rem); line-height: 1.06; }
.innova-faithful-tpl .innova-hero h1 em { font-weight: 400; }
.innova-faithful-tpl .innova-hero, .innova-faithful-tpl .innova-careers-hero, .innova-faithful-tpl .innova-job-hero, .innova-faithful-tpl #innova-article-page .innova-article-hero {
  background: linear-gradient(180deg, var(--forest) 0%, var(--forest-deep) 100%) !important; }
/* labels carry the eyebrow mark */
.innova-faithful-tpl :is(.innova-section-label, .innova-intro-label, .innova-careers-eyebrow, .innova-job-eyebrow, .innova-related-label, .innova-divider-label, .innova-featured-label) {
  display: inline-flex !important; align-items: center; gap: 12px; font: 600 .72rem/1.2 Poppins, sans-serif !important; letter-spacing: .12em !important; text-transform: uppercase; }
.innova-faithful-tpl :is(.innova-section-label, .innova-intro-label, .innova-careers-eyebrow, .innova-job-eyebrow, .innova-related-label, .innova-divider-label, .innova-featured-label)::before {
  content: ""; flex: none; width: 40px; height: 8px; background: currentColor; -webkit-mask: var(--mark) center / contain no-repeat; mask: var(--mark) center / contain no-repeat; }
.innova-faithful-tpl .innova-section-label { display: flex !important; color: var(--forest) !important; border-bottom-color: var(--foam) !important; }
/* the house card */
.innova-faithful-tpl :is(.innova-article-card, .innova-job-card, .innova-closed-card) { position: relative; background: #fff !important; border: 1px solid var(--hair) !important; border-radius: 10px !important;
  box-shadow: none !important; transition: box-shadow var(--dur-standard) var(--ease-out), transform var(--dur-standard) var(--ease-out); }
.innova-faithful-tpl :is(.innova-article-card, .innova-job-card, .innova-closed-card)::before { content: ""; position: absolute; left: -1px; top: -1px; bottom: -1px; width: 3px; border-radius: 10px 0 0 10px; background: var(--foam); z-index: 1; }
@media (hover: hover) and (pointer: fine) {
  .innova-faithful-tpl :is(.innova-article-card, .innova-job-card):hover { box-shadow: var(--raise) !important; transform: translateY(-2px); }
  .innova-faithful-tpl :is(.innova-article-card, .innova-job-card):hover::before { background: var(--forest); }
}
.innova-faithful-tpl .innova-article-card { padding-left: 28px !important; padding-right: 24px !important; }
.innova-faithful-tpl :is(.innova-article-title, .innova-job-card-title, .innova-closed-role, .innova-related-card-title, .innova-founder-name) { font-weight: 500 !important; }
/* buttons */
.innova-faithful-tpl :is(.innova-btn-primary, .innova-btn-outline, .innova-job-apply-btn, .innova-cta-button, .innova-job-ghost-btn) {
  display: inline-flex !important; align-items: center; justify-content: center; min-height: 44px; border-radius: 6px !important; font: 600 .74rem/1 Poppins, sans-serif !important; letter-spacing: .1em !important; text-transform: uppercase; }
/* the founders' figures, as on the homepage */
.innova-faithful-tpl .innova-stats .nectar-milestone .number { font-weight: 400 !important; color: var(--forest) !important; }
@media (prefers-reduced-motion: reduce) {
  .innova-faithful-tpl :is(.innova-article-card, .innova-job-card):hover { transform: none; }
}

/* Faithful light: the original service page layouts and colours, with the Faithful type and marks */
.innova-faithful-light {
  --forest: #043A31; --foam: #B9DA93; --foam-deep: #82A856; --paper: #FBFAF6;
  --mark: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 40 8'%3E%3Cpath d='M0 4h13M27 4h13' stroke='black' stroke-width='1.4'/%3E%3Ccircle cx='20' cy='4' r='3.2'/%3E%3C/svg%3E");
}
/* headings at the Faithful weight */
.innova-faithful-light .main-content h1 { letter-spacing: -0.01em !important; }
.innova-faithful-light .main-content .nectar-split-heading h3 { font-weight: 400; letter-spacing: -0.005em; }
/* eyebrows carry the mark */
.innova-faithful-light .main-content .nectar-badge.badge-style-line .nectar-badge__inner { display: inline-flex; align-items: center; gap: 12px; padding: 0;
  font: 600 .72rem/1.2 Poppins, sans-serif; letter-spacing: .12em; text-transform: uppercase; color: var(--forest); }
.innova-faithful-light .main-content .nectar-badge.badge-style-line .nectar-badge__inner::before { content: ""; position: static; flex: none; width: 40px; height: 8px;
  border: 0; opacity: 1; transform: none; background: var(--foam-deep); -webkit-mask: var(--mark) center / contain no-repeat; mask: var(--mark) center / contain no-repeat; }
.innova-faithful-light .main-content .nectar-badge.badge-style-line .nectar-badge__inner::after { display: none; }
.innova-faithful-light .main-content .light .nectar-badge.badge-style-line .nectar-badge__inner { color: var(--foam) !important; -webkit-text-fill-color: var(--foam); }
.innova-faithful-light .main-content .light .nectar-badge.badge-style-line .nectar-badge__inner::before { background: var(--foam); }
/* buttons in the Faithful shape, colours as set on the page */
.innova-faithful-light .main-content .nectar-cta[data-style="basic"]:not([data-color="white"]) .link_wrap { display: inline-flex; align-items: center; min-height: 48px; padding: 0 22px !important; border-radius: 6px; }
.innova-faithful-light .main-content .nectar-cta[data-style="basic"]:not([data-color="white"]) .link_wrap .link_text { font: 600 .78rem/1.2 Poppins, sans-serif !important; letter-spacing: .1em; text-transform: uppercase; }
/* cards: the house Foam edge */
.innova-faithful-light .main-content .number-section > .row_col_wrap_12_inner > .wpb_column > .vc_column-inner { box-shadow: inset 3px 0 0 var(--foam); }
/* with script off, headings and cards are still there */
html.no-js .innova-faithful-light .main-content :is(.nectar-split-heading, .wpb_column.has-animation) { opacity: 1 !important; transform: none !important; }
