
/* GFoundry text links, option A. Shared by PT and EN.
   Only explicitly migrated links use this component. No button/nav reset.
   Colours and type sizes remain inherited from each existing section. */
a.gf-link-chevron { text-decoration:none!important; }
a.gf-link-chevron.gf-link-chevron--inline {
  display:inline-flex; align-items:center; gap:8px; max-width:100%;
  border-bottom:0!important; vertical-align:baseline;
}
a.gf-link-chevron .gf-link-label {
  min-width:0; text-decoration:none!important; border-bottom:0!important;
}
a.gf-link-chevron .gf-link-chevron-icon {
  display:inline-block!important; position:relative!important;
  flex:0 0 16px; width:16px!important; height:16px!important;
  margin:0 0 0 8px; padding:0!important; vertical-align:-2px;
  background:none!important; border:0!important; float:none!important;
  color:inherit!important; opacity:1!important; font-size:inherit!important;
  top:auto!important; right:auto!important; bottom:auto!important; left:auto!important;
  transform:none; transition:transform .16s ease;
}
a.gf-link-chevron.gf-link-chevron--inline .gf-link-chevron-icon { margin:0; }
a.gf-link-chevron .gf-link-chevron-icon::before {
  content:""; display:block; position:absolute; width:6px; height:6px;
  /* Optical alignment with Source Sans Pro; scales with the link font. */
  top:calc(50% + .08em); left:3px; border:0; border-top:1.7px solid currentColor;
  border-right:1.7px solid currentColor; transform:translateY(-50%) rotate(45deg);
}
a.gf-link-chevron .gf-link-chevron-icon::after { content:none!important; }
a.gf-link-chevron:hover .gf-link-label,
a.gf-link-chevron:focus-visible .gf-link-label {
  text-decoration:underline!important; text-decoration-thickness:1px;
  text-underline-offset:4px;
}
a.gf-link-chevron:hover .gf-link-chevron-icon,
a.gf-link-chevron:focus-visible .gf-link-chevron-icon { transform:translateX(3px); }
a.gf-link-chevron:focus-visible { outline:2px solid currentColor; outline-offset:5px; }
@media (prefers-reduced-motion:reduce) {
  a.gf-link-chevron .gf-link-chevron-icon { transition:none; }
  a.gf-link-chevron:hover .gf-link-chevron-icon,
  a.gf-link-chevron:focus-visible .gf-link-chevron-icon { transform:none; }
}
/* GFoundry website design system - Eyebrow A
 * Approved 5 October 2026. One component for PT and EN.
 * Use a paragraph before its heading; never an H6 solely for visual styling.
 * Typography is global. Layout alignment and contrast use explicit modifiers.
 */
:root {
  /* Approved 7 October 2026: shared blue-black for previously black heroes. */
  --gf-hero-dark-bg: #151b26;
  --gf-eyebrow-font: "Source Sans Pro", sans-serif;
  --gf-eyebrow-size: 14px;
  --gf-eyebrow-weight: 600;
  --gf-eyebrow-leading: 1.4;
  --gf-eyebrow-gap: 16px;
  --gf-eyebrow-color: #bc2c58;
  --gf-eyebrow-inverse: #ffb0c8;
  --gf-eyebrow-on-color: #ffffff;
}

/* Repeated class specificity protects the component from legacy theme rules.
 * Important declarations also neutralise WPBakery's inline typography.
 * This selector targets the component only, never all paragraphs or headings.
 */
body .gf-eyebrow.gf-eyebrow {
  display: block !important;
  font-family: var(--gf-eyebrow-font) !important;
  font-size: var(--gf-eyebrow-size) !important;
  font-weight: var(--gf-eyebrow-weight) !important;
  font-style: normal !important;
  line-height: var(--gf-eyebrow-leading) !important;
  letter-spacing: normal !important;
  text-transform: none !important;
  color: var(--gf-eyebrow-color) !important;
  margin: 0 0 var(--gf-eyebrow-gap) !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: none !important;
  box-shadow: none !important;
  width: auto !important;
  max-width: none !important;
}

/* No decorative rules, lines or icons attached to the label. */
body .gf-eyebrow.gf-eyebrow::before,
body .gf-eyebrow.gf-eyebrow::after {
  content: none !important;
  display: none !important;
}

/* Centred sections remain centred. The default inherits the title's context. */
body .gf-eyebrow.gf-eyebrow--center { text-align: center !important; }
body .gf-eyebrow.gf-eyebrow--inverse { color: var(--gf-eyebrow-inverse) !important; }
body .gf-eyebrow.gf-eyebrow--on-color { color: var(--gf-eyebrow-on-color) !important; }

/* Compatibility with older WPBakery columns whose heading has a 10px inset.
 * New blocks normally need only gf-eyebrow, with no layout modifier.
 */
body .gf-eyebrow.gf-eyebrow--inset { padding-inline: 10px !important; }

/* Do not add a second margin above the following heading. */
.gf-eyebrow + :is(h1,h2,h3,h4) { margin-top: 0 !important; }


/* Shared closing CTA. Insert the EN/PT source page once; never copy its CSS.
 * Theme vc_btn buttons supply their own shape, colour, hover and focus states.
 * Only layout and editorial type are defined here. */
.gf-footer-cta-host, .gf-footer-cta.wpb_content_element { margin-bottom:0; }
.gf-footer-cta .gf-footer-cta-inner {
  display:grid; grid-template-columns:1.1fr 1fr; gap:72px;
  align-items:center; max-width:1140px; margin:0 auto; padding:80px 32px;
}
.gf-footer-cta .gf-footer-cta-heading {
  color:#fff!important; font-family:"Source Sans Pro",sans-serif;
  font-size:42px; font-weight:800; line-height:1.15; letter-spacing:-.02em;
  margin:0; max-width:520px; text-transform:none;
}
.gf-footer-cta .gf-footer-cta-description {
  color:#d1d8e2!important; font-size:18px; font-weight:400;
  line-height:1.65; margin:0 0 28px; max-width:510px;
}
.gf-footer-cta .gf-footer-cta-actions {
  display:flex; flex-wrap:wrap; align-items:center; gap:14px;
}
.gf-footer-cta .gf-footer-cta-actions .vc_btn3-container { margin:0; }
.gf-footer-cta .gf-footer-cta-actions .vc_btn3 { white-space:normal; }
.gf-footer-cta .gf-footer-cta-actions .vc_btn3:focus-visible {
  outline:2px solid #ffb0c8; outline-offset:5px;
}
@media (max-width:767px) {
  .gf-footer-cta .gf-footer-cta-inner {
    grid-template-columns:1fr; gap:24px; padding:52px 24px;
  }
  .gf-footer-cta .gf-footer-cta-heading { font-size:32px; }
  .gf-footer-cta .gf-footer-cta-description { font-size:18px; margin-bottom:24px; }
}



/* Product solution hero B. Approved 5 October 2026.
   Add gf-product-hero to a full-width WPBakery row. Shared PT/EN component.
   Keep supporting copy and all following sections in the page builder. */
body .gf-product-hero {
 --gf-product-gradient:linear-gradient(100deg,#5d83ff 0%,#a276ff 32%,#e05dcd 62%,#ff6481 84%,#ff7860 100%);
 background:var(--gf-hero-dark-bg); color:#fff; text-align:center;
 padding:86px 32px 80px; margin-top:0; margin-bottom:0; overflow:hidden;
}
body .gf-product-hero > .wpb_column > .vc_column-inner {padding:0}
body .gf-product-hero .wpb_text_column {margin-bottom:0}
body .gf-product-hero__inner {max-width:940px;margin:0 auto}
body .gf-product-hero h1.gf-product-hero__title {
 font:700 60px/1.08 "Source Sans Pro",sans-serif!important;
 letter-spacing:-.025em!important; margin:0 auto 24px!important;
 max-width:100%;width:fit-content;text-transform:none!important;
 color:#fff!important;background:none;-webkit-text-fill-color:currentColor;
}
body .gf-product-hero__plain, body .gf-product-hero__focus {
 display:block;width:fit-content;max-width:100%;margin-inline:auto;
}
body .gf-product-hero__focus {color:#fff}
@supports ((background-clip:text) or (-webkit-background-clip:text)) {
 body .gf-product-hero__focus {background:var(--gf-product-gradient);
 background-clip:text;-webkit-background-clip:text;color:transparent;
 -webkit-text-fill-color:transparent}
}
body .gf-product-hero .gf-product-hero__lead {
 font:400 22px/1.5 "Source Sans Pro",sans-serif!important;
 color:#c7ccd4!important;max-width:770px;margin:0 auto 30px!important;
}
body .gf-product-hero__actions {
 display:flex;justify-content:center;flex-wrap:wrap;gap:16px;align-items:center;
}
body .gf-product-hero__actions .vc_btn3-container {margin:0!important}
body .gf-product-hero__actions .vc_btn3 {white-space:normal}
body .gf-product-hero a:focus-visible {outline:3px solid white!important;outline-offset:5px!important}
body .gf-product-hero__media {max-width:600px;margin:40px auto 0!important}
body .gf-product-hero__media img {max-width:100%;height:auto}
body .gf-product-hero-anchor {height:0;scroll-margin-top:100px}
@media(max-width:1024px) {
 body .gf-product-hero h1.gf-product-hero__title {font-size:52px!important}
}
@media(max-width:767px) {
 body .gf-product-hero {padding:48px 24px 50px}
 body .gf-product-hero h1.gf-product-hero__title {
 font-size:40px!important;line-height:1.08!important;
 letter-spacing:-.02em!important;margin-bottom:22px!important}
 body .gf-product-hero .gf-product-hero__lead {
 font-size:19px!important;line-height:1.5!important;margin-bottom:26px!important}
 body .gf-product-hero__actions {gap:12px}
 body .gf-product-hero__actions .vc_btn3 {font-size:16px!important}
}
@media(max-width:359px) {
 body .gf-product-hero h1.gf-product-hero__title {font-size:36px!important}
}
@media print {
 body .gf-product-hero__focus {background:none;color:inherit;-webkit-text-fill-color:currentColor}
}


/* WPBakery computes stretch-row horizontal padding at runtime.
   The inner copy owns mobile gutters so the title never touches the viewport. */
@media(max-width:767px) {
 body .gf-product-hero__inner {padding-inline:24px}
 body .gf-product-hero__media {max-width:calc(100% - 48px)}
}

/* Automatic internal links must respect the white hero eyebrow. */
body .gf-product-hero .gf-eyebrow a {color:inherit!important;-webkit-text-fill-color:currentColor}

/* GFoundry section introduction. Approved 6 October 2026.
   Explicit reusable class: never attach it to every paragraph.
   Colour inherits the section; links remain separate gf-link-chevron components.
   Global component maintained in Website design system, Code Snippets 16. */
body p.gf-section-lead.gf-section-lead {
 font-family:"Source Sans Pro",sans-serif!important;
 font-size:22px!important;
 font-weight:400!important;
 line-height:1.5!important;
 margin:0 0 24px;
 color:inherit;
}
@media(max-width:767px) {
 body p.gf-section-lead.gf-section-lead {font-size:20px!important;}
}


/* Industry Premium sections: define the light foreground on the section itself.
   Section leads inherit it in EN/PT, including newly created industry pages. */
.gf-is.gf-is-premium { color:#d8dfe7; }

/* Solution content sections. Shared PT/EN component, 6 October 2026.
   Pair with the approved gf-product-hero. No page IDs or local style blocks. */
body .gf-solution-section {
 background:#fff; color:#536071; margin:0; scroll-margin-top:100px;
}
body .gf-solution-section--soft {background:#f6f7f9;}
body .gf-solution-section--dark {background:#151b26;color:#d8dfe7;}
body .gf-solution-section > .wpb_column > .vc_column-inner {padding:0;}
body .gf-solution-section .wpb_content_element {margin-bottom:0;}
body .gf-solution-section__inner {max-width:1264px;margin:0 auto;padding:80px 32px;}
body .gf-solution-section__head {
 display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);
 gap:64px;align-items:start;margin-bottom:48px;
}
body .gf-solution-section__head > div + div {padding-top:48px;}
body .gf-solution-section h2 {
 font:700 42px/1.15 "Source Sans Pro",sans-serif!important;
 letter-spacing:-.02em; text-transform:none; color:#171c26;
 background:none;-webkit-text-fill-color:currentColor;margin:0 0 24px;
}
body .gf-solution-section h3 {
 font:700 26px/1.25 "Source Sans Pro",sans-serif!important;
 letter-spacing:-.01em;text-transform:none;color:#171c26;
 background:none;-webkit-text-fill-color:currentColor;margin:0 0 18px;
}
body .gf-solution-section p {font:400 18px/1.65 "Source Sans Pro",sans-serif;color:inherit;margin:0 0 22px;}
body .gf-solution-section .gf-eyebrow {margin-bottom:24px;}
body .gf-solution-section--dark h2,body .gf-solution-section--dark h3 {color:#fff;}
body .gf-solution-section--dark .gf-link-chevron {color:#ffafc6;}
body .gf-solution-section .gf-link-chevron {font-size:18px;font-weight:600;}
body .gf-solution-section__media {max-width:1040px;margin:0 auto;}
body .gf-solution-section__media img {display:block;width:100%;height:auto;border:1px solid #e2e6eb;border-radius:20px;}
body .gf-solution-section p.gf-solution-section__caption {font-size:14px;line-height:1.5;margin:18px 0 0;text-align:center;}
body .gf-solution-section__grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px;}
body .gf-solution-section__grid--two {grid-template-columns:repeat(2,minmax(0,1fr));gap:40px 64px;}
body .gf-solution-section__item {border-top:1px solid #d5dce3;padding-top:26px;min-width:0;}
body .gf-solution-section p.gf-solution-section__index {font-size:14px;font-weight:600;color:#bc2c58;margin-bottom:24px;}
body .gf-solution-section__list .gf-solution-section__item {border-color:#3b4452;margin-bottom:32px;}
body .gf-solution-section__list .gf-solution-section__item:last-child {margin-bottom:0;}
body .gf-solution-section__links {display:flex;flex-wrap:wrap;gap:16px 28px;}
body .gf-solution-section--dark .gf-solution-section__head,
body .gf-solution-section--soft .gf-solution-section__head:last-child {margin-bottom:0;}
body .gf-solution-section--faq > .wpb_column > .vc_column-inner {max-width:1264px;margin:auto;padding:80px 32px;}
body .gf-solution-section--faq .gf-solution-section__inner {padding:0;}
body .gf-solution-section__faq {text-align:center;margin-bottom:40px;}
body .gf-solution-section .gf-solution-faq-toggle {margin:0!important;padding:24px 0;border-bottom:1px solid #d5dce3;}
body .gf-solution-section .gf-solution-faq-toggle .vc_toggle_title {padding:0 40px 0 0!important;border:0!important;}
body .gf-solution-section .gf-solution-faq-toggle .vc_toggle_title h4 {font:600 22px/1.4 "Source Sans Pro",sans-serif!important;color:#171c26;margin:0;text-transform:none;}
body .gf-solution-section .gf-solution-faq-toggle .vc_toggle_icon {left:auto!important;right:0!important;}
body .gf-solution-section .gf-solution-faq-toggle .vc_toggle_content {margin:18px 0 0;padding:0!important;width:auto!important;}
/* Scalia draws its toggle via ::after. Keep it aligned on multiline titles. */
body .gf-solution-section .gf-solution-faq-toggle .vc_toggle_title::after {position:absolute;right:0;top:50%;transform:translateY(-50%);float:none;}
body .gf-solution-section .gf-solution-faq-toggle .vc_toggle_title:focus-visible {outline:2px solid #bc2c58;outline-offset:6px;border-radius:4px;}
body .gf-solution-section .gf-solution-faq-toggle .vc_toggle_content p:last-child {margin-bottom:0;}
@media(max-width:1024px) {
 body .gf-solution-section__head,body .gf-solution-section__grid--two {gap:36px;}
}
@media(max-width:767px) {
 body .gf-solution-section__inner,body .gf-solution-section--faq > .wpb_column > .vc_column-inner {padding:48px 24px;}
 body .gf-solution-section--faq .gf-solution-section__inner {padding:0;}
 body .gf-solution-section__head {grid-template-columns:1fr;gap:12px;margin-bottom:32px;}
 body .gf-solution-section__head > div + div {padding-top:0;}
 body .gf-solution-section h2 {font-size:32px!important;margin-bottom:20px;}
 body .gf-solution-section h3 {font-size:24px!important;}
 body .gf-solution-section__grid,body .gf-solution-section__grid--two {grid-template-columns:1fr;gap:32px;}
 body .gf-solution-section__media img {border-radius:14px;}
 body .gf-solution-section .gf-solution-faq-toggle .vc_toggle_title h4 {font-size:20px!important;}
}


/* MCP flow: shared component copied from the EN homepage, 6 October 2026. */
/* ===== GFoundry · MCP Flow block ===== */
/* Fundo transparente. Fontes: usa a Source Sans 3 / Source Sans Pro se a página a carregar. */






/* Chat */
































/* Connector */












/* MCP badge mobile */







/* Plataformas */












/* Passos */






/* Responsive */
@media (max-width: 859px) {
  
  
  
  
  
  
  /* Mobile platform labels need the full card width, particularly SAP SuccessFactors. */
  
  
  
  
  
}

@keyframes gf-mcp-flow { to { stroke-dashoffset: -160; } }
@keyframes gf-mcp-caret { 0%, 55% { opacity: 1; } 56%, 100% { opacity: 0; } }
@keyframes gf-mcp-dots { 0%, 100% { opacity: .25; } 50% { opacity: 1; } }
@keyframes gf-mcp-pulse { 0%, 100% { box-shadow: 0 0 0 0 rgba(226,77,116,.35); } 50% { box-shadow: 0 0 0 10px rgba(226,77,116,0); } }

@media (prefers-reduced-motion: reduce) {
  
}
/* Section wrapper for reusing the flow outside the homepage. */





@media(max-width:767px) {   }


/* Centred editorial hero. Same scale and soft background as the integrations reference.
 * Reuse this component for PT/EN; add only content and theme buttons in the page. */
.vc_row.gf-centered-hero {
 background:radial-gradient(ellipse 120% 90% at 50% -10%,#fdeef3 0%,#f7f8fa 46%,#fff 100%)!important;
 padding-top:clamp(56px,7vw,104px)!important;
 padding-bottom:clamp(48px,6vw,72px)!important;
 text-align:center; color:#14151b;
}
.gf-centered-hero__inner { max-width:860px; margin:0 auto; padding:0 clamp(20px,4vw,40px); }
/* Shared editorial H1 scale: centred modules and animated Gamification Engine.
 * Typography only; backgrounds, colours, motion and layout stay with each component. */
.gf-centered-hero .gf-centered-hero__title,
.ge-hero .ge-hero__title {
 font-family:"Source Sans Pro",sans-serif;
 font-size:clamp(34px,5vw,58px)!important;
 line-height:1.06!important;
 font-weight:800!important;
 letter-spacing:-.03em;
}
.gf-centered-hero .gf-centered-hero__title {
 margin:0 0 22px!important; color:#14151b!important; text-align:center;
 background:none!important; -webkit-text-fill-color:currentColor;
}
/* Centred hero actions: theme buttons, shared by PT and EN. */
.gf-centered-hero__actions {
 display:flex; justify-content:center; align-items:center;
 flex-wrap:wrap; gap:16px; margin-top:32px;
}
.gf-centered-hero__actions .vc_btn3-container { margin:0!important; }
.gf-centered-hero__focus { color:#e24d74; }
.gf-centered-hero p.gf-centered-hero__lead {
 font-family:"Source Sans Pro",sans-serif; font-size:clamp(17px,1.5vw,20px);
 line-height:1.6; font-weight:400; color:#54585f; max-width:60ch; margin:0 auto 20px;
}
.gf-centered-hero p.gf-centered-hero__lead:last-child { margin-bottom:36px; }


/* Product video and value prompts - approved 2026-10-06.
   Shared components for EN/PT; no page-ID selectors. */
.gf-video-section { padding:64px 0 72px; background:#fff; color:#536071; scroll-margin-top:110px; }
.gf-video-section__inner,.gf-value-section__inner { max-width:1180px; padding:0 24px; margin:0 auto; }
.gf-video-section__head { max-width:760px; margin:0 auto 32px; text-align:center; }
.gf-video-section h2,.gf-value-section h2 { font-family:"Source Sans Pro",sans-serif; font-size:42px; font-weight:800; line-height:1.15; letter-spacing:-.02em; text-transform:none; color:#171c26; margin:0 0 24px; }
.gf-video-section__head p.gf-section-lead { color:#536071; }
.gf-video-card { position:relative; max-width:1000px; margin:0 auto; aspect-ratio:16/9; overflow:hidden; isolation:isolate; background:#f5f6f7; }
.gf-video-card.max-rounded2 { margin:0 auto!important; }
.gf-video-card video { display:block; width:100%; height:100%; object-fit:contain; background:#fff; }
.gf-video-card__cover { display:block; position:absolute; inset:0; width:100%; height:100%; padding:0; margin:0; border:0; background:#f5f6f7; cursor:pointer; color:#fff; font-family:"Source Sans Pro",sans-serif; }
.gf-video-card__cover[hidden] { display:none!important; }
.gf-video-card .gf-video-card__cover img { display:block; width:100%; height:100%!important; object-fit:cover; margin:0!important; border-radius:0; box-shadow:none!important; }
.gf-video-card__control { position:absolute; inset:0; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:12px; }
.gf-video-card__play { display:grid; place-items:center; width:72px; height:72px; border-radius:50%; background:rgba(255,255,255,.96); color:#bc2c58; box-shadow:0 4px 24px rgba(21,28,38,.16); transition:transform .18s ease; }
.gf-video-card__play svg { display:block; width:24px; height:24px; margin-left:4px; fill:currentColor; }
.gf-video-card__label { padding:6px 16px; border-radius:999px; background:rgba(21,28,38,.9); color:#fff; font-size:16px; font-weight:600; line-height:1.4; }
.gf-video-card__cover:hover .gf-video-card__play { transform:scale(1.05); }
.gf-video-card__cover:focus-visible { outline:4px solid #bc2c58; outline-offset:-6px; }
.gf-video-card video:focus-visible { outline:3px solid #bc2c58; outline-offset:-4px; }
.gf-video-section__summary { max-width:1000px; margin:20px auto 0; font-size:15px; line-height:1.6; color:#536071; }
.gf-value-section { padding:64px 0; background:#f7f8fa; color:#536071; scroll-margin-top:110px; }
.gf-value-section__grid { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:64px; align-items:start; }
.gf-value-section__grid h2 { margin-bottom:0; }
.gf-value-section a.gf-link-chevron { color:#bc2c58; font-size:18px; font-weight:600; }
.gf-value-section p.gf-value-section__note { font-size:14px; line-height:1.6; margin:20px 0 0; color:#536071; }
.gf-link-stack { display:flex; flex-direction:column; align-items:flex-start; gap:12px; }
@media (max-width:767px) {
 .gf-video-section,.gf-value-section { padding:48px 0; }
 .gf-video-section__inner,.gf-value-section__inner { padding:0 24px; }
 .gf-video-section h2,.gf-value-section h2 { font-size:32px; }
 .gf-video-section__head { margin-bottom:24px; }
 .gf-value-section__grid { grid-template-columns:minmax(0,1fr); gap:24px; }
 .gf-video-card__play { width:56px; height:56px; }
 .gf-video-card__label { font-size:14px; }
}
@media (prefers-reduced-motion:reduce) {
 .gf-video-card__play { transition:none; }
 .gf-video-card__cover:hover .gf-video-card__play { transform:none; }
}

.gf-video-section > .vc_column_container > .vc_column-inner,
.gf-value-section > .vc_column_container > .vc_column-inner { padding:0; }
.gf-video-section .wpb_content_element,.gf-value-section .wpb_content_element { margin-bottom:0; }

/* Editorial testimonials. Source: Scalia; reusable in any page or block. */
/* Reusable heading-to-carousel separation; padding avoids builder margin resets. */
.gf-testimonials-heading { padding-bottom:40px; }
@media(max-width:767px) { .gf-testimonials-heading { padding-bottom:28px; } }
.gf-testimonials { width:100%; max-width:1040px; margin:0 auto; color:#171c26; }
.gf-testimonials__viewport { display:flex; align-items:flex-start; overflow-x:auto; overflow-y:hidden; scroll-snap-type:x mandatory; scrollbar-width:none; border-radius:24px; background:#fff; }
.gf-testimonials__viewport::-webkit-scrollbar { display:none; }
.gf-testimonials__slide { flex:0 0 100%; min-width:0; scroll-snap-align:start; scroll-snap-stop:always; }
.gf-testimonials .gf-testimonials__figure { display:flex; flex-direction:column; justify-content:space-between; gap:36px; height:auto; margin:0; padding:48px 56px; }
.gf-testimonials .gf-testimonials__quote { margin:0; padding:0; border:0; background:none; font:inherit; font-size:26px; line-height:1.55; font-weight:400; font-style:normal; letter-spacing:-.015em; color:inherit; }
.gf-testimonials .gf-testimonials__quote::before,.gf-testimonials .gf-testimonials__quote::after,.gf-testimonials .gf-testimonials__quote p::before,.gf-testimonials .gf-testimonials__quote p::after { content:none!important; display:none!important; }
.gf-testimonials .gf-testimonials__quote p { margin:0 0 16px!important; font:inherit!important; color:inherit!important; }
.gf-testimonials .gf-testimonials__quote p:last-child { margin-bottom:0!important; }
.gf-testimonials__author { display:flex; align-items:center; gap:16px; margin:0; text-align:left; }
.gf-testimonials img.gf-testimonials__photo { flex:0 0 64px; width:64px; height:64px; margin:0; border-radius:50%; object-fit:cover; }
.gf-testimonials__identity { display:flex; flex-direction:column; gap:3px; min-width:0; }
.gf-testimonials .gf-testimonials__name { color:#171c26; font-size:17px; line-height:1.35; font-weight:700; }
.gf-testimonials .gf-testimonials__position,.gf-testimonials .gf-testimonials__company,.gf-testimonials .gf-testimonials__company a { font-size:14px; line-height:1.5; color:#526174; }
.gf-testimonials__case { margin-left:auto; font-size:15px!important; font-weight:600; color:#c12e5a!important; white-space:normal; }
.gf-testimonials__controls { display:flex; align-items:center; justify-content:space-between; gap:24px; padding:20px 4px 0; }
.gf-testimonials__controls[hidden] { display:none!important; }
.gf-testimonials .gf-testimonials__status { margin:0!important; font-size:14px!important; line-height:1.5!important; color:#526174!important; }
.gf-testimonials__navigation { display:flex; gap:10px; }
.gf-testimonials .gf-testimonials__arrow { display:inline-flex; align-items:center; justify-content:center; width:44px; height:44px; padding:0; border:1px solid #d6dce4; border-radius:50%; background:#fff; color:#171c26; cursor:pointer; box-shadow:none; transition:background .18s ease,border-color .18s ease; }
.gf-testimonials .gf-testimonials__arrow:hover { border-color:#aeb8c4; background:#f4f5f8; }
.gf-testimonials .gf-testimonials__arrow svg { display:block; }
.gf-testimonials__viewport:focus-visible,.gf-testimonials__arrow:focus-visible { outline:2px solid #c12e5a; outline-offset:4px; }
@media(max-width:767px) {
 .gf-testimonials__viewport { border-radius:20px; }
 .gf-testimonials .gf-testimonials__figure { padding:28px 24px; gap:28px; }
 .gf-testimonials .gf-testimonials__quote { font-size:21px; line-height:1.5; }
 .gf-testimonials__author { flex-wrap:wrap; gap:14px; }
 .gf-testimonials img.gf-testimonials__photo { flex-basis:52px; width:52px; height:52px; }
 .gf-testimonials__identity { flex:1; }
 .gf-testimonials__name { font-size:16px; }
 .gf-testimonials__case { flex:0 0 100%; margin:6px 0 0; }
}
@media(prefers-reduced-motion:reduce) {
 .gf-testimonials__arrow { transition:none!important; }
 .gf-testimonials__viewport { scroll-behavior:auto!important; }
}

/* Skills evidence: the person and existing skills stay central. Shared PT/EN. */















































@keyframes gf-skills-evidence-flow { 0%,2% { opacity:0; stroke-dashoffset:100; } 5% { opacity:.65; } 22% { opacity:.65; stroke-dashoffset:0; } 25%,100% { opacity:0; stroke-dashoffset:0; } }
@keyframes gf-skills-evidence-source { 0%,28%,100% { border-color:#e2e7ee; box-shadow:0 0 0 transparent; } 8%,20% { border-color:var(--gf-skill-accent); box-shadow:0 4px 20px var(--gf-skill-tint); } }
@keyframes gf-skills-evidence-signal { 0%,14%,33%,100% { background:#dfe4eb; } 20%,27% { background:var(--gf-skill-accent); } }
@media (max-width:900px) {
 
 
 
 
 
 
 
 
 
 
 
 
 
}
@media (max-width:600px) {
 
 
 
 
 
 
 
 
 
 
 
}
@media (prefers-reduced-motion:reduce) {
 
 
}


/* ===== Public homepage: EN and PT ===== */
/* GFoundry homepage components, approved for public EN/PT on 2026-10-06.
   Shared namespace gf-home; maintained in global design system snippet 16.
   Uses gf-eyebrow, gf-section-lead, gf-link-chevron, max-rounded2 and theme buttons. */
.gf-home { --home-ink:#151b26; --home-body:#4c5867; --home-accent:#bc2c58; --home-line:#dce0e4; color:var(--home-body); background:#fff; }
.gf-home, .gf-home * { box-sizing:border-box; }
.gf-home > .vc_column_container > .vc_column-inner { padding:0; }
.gf-home .wpb_content_element { margin-bottom:0; }
.gf-home-inner { max-width:1200px; padding:0 32px; margin:0 auto; }
.gf-home h1,.gf-home h2,.gf-home h3 { color:var(--home-ink); background:none; -webkit-text-fill-color:currentColor; letter-spacing:-.02em; text-transform:none; font-family:inherit; font-weight:700; }
.gf-home h1 { font-size:60px; line-height:1.08; margin:0 0 26px; }
.gf-home h1 em { color:var(--home-accent); font-style:normal; }
.gf-home h2 { font-size:40px; line-height:1.15; margin:0 0 24px; }
.gf-home h3 { font-size:24px; line-height:1.2; margin:0 0 16px; }
.gf-home p,.gf-home dd { font-size:18px; line-height:1.6; margin:0 0 22px; }
.gf-home p.gf-home-lead { font-size:22px; line-height:1.5; max-width:530px; margin-bottom:30px; }
.gf-home p.gf-home-small,.gf-home figcaption { font-size:14px; line-height:1.5; }
.gf-home figcaption { margin:18px 0 0; color:var(--home-body); }
.gf-home figure { margin:0; }
.gf-home .gf-link-chevron { font-size:17px; line-height:1.5; font-weight:600; color:var(--home-accent); }
.gf-home .gf-link-chevron:visited { color:var(--home-accent); }
.gf-home img { max-width:100%; height:auto; display:block; }
.gf-home-section { padding:88px 0; }
.gf-home-section-head { display:grid; grid-template-columns:1fr 1fr; gap:64px; align-items:start; margin-bottom:48px; }
.gf-home-section-head > p,.gf-home-section-head > div:nth-child(2) { padding-top:36px; }
.gf-home-section-head h2 { margin-bottom:0; }
/* Hero: clear category, concise promise, the original manual-play overview video. */
.gf-home-hero { background:#f8f7f4; padding:64px 0 56px; }
.gf-home-hero-grid { display:grid; grid-template-columns:1fr 1fr; gap:56px; align-items:center; }
.gf-home-actions { display:flex; gap:16px; flex-wrap:wrap; }
.gf-home-actions .vc_btn3-container { margin:0; }
.gf-home-hero-figure img { width:100%; box-shadow:0 14px 32px rgba(21,27,38,.09); }
/* Customer proof: existing brand assets, linked only to published case studies. */
.gf-home-trust-row { padding:24px 0; border-bottom:1px solid var(--home-line); }
.gf-home-trust p { margin:0 0 8px; font-size:15px; text-align:center; }
.gf-home-trust ul { display:flex; flex-wrap:wrap; justify-content:center; align-items:center; list-style:none; padding:0; margin:0; }
.gf-home-trust li { flex:0 0 calc(100% / 7); display:flex; justify-content:center; align-items:center; padding:0 10px; }
.gf-home-trust li a { display:block; border-radius:4px; }
.gf-home-trust li a:hover { opacity:.75; }
.gf-home-trust li a:focus-visible { outline:2px solid var(--home-accent); outline-offset:4px; }
.gf-home .gf-home-trust img { display:block; width:128px; height:128px; max-width:100%; object-fit:contain; }
/* Editorial priorities: no ornamental cards, badges or competing buttons. */
.gf-home-priorities { display:grid; grid-template-columns:repeat(3,1fr); gap:40px; }
.gf-home-priorities article { border-top:1px solid var(--home-line); padding-top:24px; }
.gf-home-number { display:block; color:var(--home-accent); font-size:14px; font-weight:600; margin-bottom:20px; }
.gf-home-priorities h3 { max-width:280px; }
/* Editorial carousel backed by published Scalia testimonial records. */
.gf-home-proof { background:#f8f7f4; }
.gf-home-proof-head { text-align:center; }
.gf-home-proof .vc_row_inner { max-width:1040px; margin:0 auto; }
.gf-home-proof .testimonials { padding:0; }
.gf-home-proof-link { text-align:center; margin-top:28px; }
/* Product view: five full-resolution images, a stable frame and manual navigation. */
.gf-home-product-grid { display:grid; grid-template-columns:1fr 1fr; gap:80px; align-items:center; }
/* Reusable carousel, shared by the published EN/PT homepage components. */
.gf-home-carousel { min-width:0; position:relative; }
.gf-home-carousel__viewport { margin:0!important; display:flex; width:100%; overflow-x:auto; overflow-y:hidden; scroll-snap-type:x mandatory; scrollbar-width:none; overscroll-behavior-x:contain; }
.gf-home-carousel__viewport::-webkit-scrollbar { display:none; }
.gf-home-carousel__slide { flex:0 0 100%; min-width:0; scroll-snap-align:start; scroll-snap-stop:always; }
.gf-home .gf-home-carousel__slide img { margin:0!important; width:100%; height:auto; aspect-ratio:8/9; object-fit:contain; }
.gf-home-carousel__controls { display:flex; align-items:center; justify-content:space-between; gap:16px; margin-top:20px; }
.gf-home-carousel__dots,.gf-home-carousel__arrows { display:flex; align-items:center; gap:8px; }
.gf-home-carousel__dots { gap:2px; }
.gf-home-carousel button { appearance:none; margin:0; padding:0; cursor:pointer; background:#fff; color:var(--home-ink); box-shadow:none; }
.gf-home-carousel__dot { width:28px; height:44px; border:0; display:grid; place-items:center; }
.gf-home-carousel__dot::before { content:""; display:block; width:7px; height:7px; border-radius:999px; background:#d5d9df; transition:width .18s ease,background .18s ease; }
.gf-home-carousel__dot[aria-current="true"]::before { width:24px; background:var(--home-accent); }
.gf-home-carousel__arrow { width:44px; height:44px; border:1px solid var(--home-line); border-radius:50%; display:grid; place-items:center; }
.gf-home-carousel__arrow:hover { background:#f8f7f4; border-color:var(--home-body); }
.gf-home-carousel__dot:hover::before { background:var(--home-accent); }
.gf-home-carousel button:focus-visible,.gf-home-carousel__viewport:focus-visible { outline:2px solid var(--home-accent); outline-offset:4px; }
.gf-home .gf-home-carousel__status { position:absolute; width:1px; height:1px; padding:0; margin:0; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }

.gf-home-benefits { margin:28px 0; }
.gf-home-benefits > div { border-top:1px solid var(--home-line); padding:18px 0; }
.gf-home-benefits dt { color:var(--home-ink); font-size:20px; line-height:1.4; font-weight:600; margin-bottom:6px; }
.gf-home-benefits dd { margin:0; }
/* Journey: reuse the existing homepage curve with shorter, meaningful labels. */
.gf-home-journey { background:#111426; --home-ink:#fff; --home-body:#d0d4df; }
.gf-home-journey .gf-link-chevron,.gf-home-journey .gf-link-chevron:visited { color:#ffb0c8; }
.gf-home-journey .gf-tlc { padding:0; background:transparent; color:#fff; overflow:hidden; }
.gf-home-journey .gf-tlc__wrap { width:100%; }
.gf-home-journey .gf-tlc__svg { width:100%; height:auto; display:block; overflow:visible; }
.gf-home-journey .gf-tlc__curve { stroke-dasharray:var(--gf-len,2600); stroke-dashoffset:0; opacity:1; }
.gf-home-journey .gf-tlc.is-on .gf-tlc__curve { animation:gf-home-curve 2s ease both; }
@keyframes gf-home-curve { from { stroke-dashoffset:var(--gf-len,2600); } to { stroke-dashoffset:0; } }
.gf-home-journey .gf-tlc__phase-g { cursor:pointer; }
.gf-home-journey .gf-tlc__halo { opacity:0; transition:opacity .3s; }
.gf-home-journey .gf-tlc__phase-g.is-active .gf-tlc__halo { opacity:.2; }
.gf-home-journey .gf-tlc__labels { position:relative; height:146px; margin-top:6px; }
.gf-home-journey .gf-tlc__label { position:absolute; top:0; width:17%; transform:translateX(-50%); text-align:center; cursor:pointer; }
.gf-home-journey .gf-tlc__name { font-size:26px; font-weight:700; line-height:1.3; color:#fff; }
.gf-home-journey .gf-tlc__bar { width:30px; height:2px; margin:10px auto; opacity:.3; }
.gf-home-journey .gf-tlc__label.is-active .gf-tlc__bar { opacity:1; }
.gf-home-journey .gf-tlc__desc { font-size:16px; line-height:1.45; color:#c9cfdb; }
.gf-home-journey .gf-tlc__label:focus-visible { outline:2px solid #ffb0c8; outline-offset:6px; }
/* Light talent lifecycle. Reusable PT/EN modifier; keep the coloured animated curve. */
body .gf-home-journey--light {
 background:#fff; color:#536071; --home-ink:#171c26; --home-body:#536071;
}
.gf-home-journey--light .gf-link-chevron,
.gf-home-journey--light .gf-link-chevron:visited {color:#bc2c58;}
.gf-home-journey--light .gf-tlc {color:#171c26;}
.gf-home-journey--light .gf-tlc__name {color:#171c26;}
.gf-home-journey--light .gf-tlc__desc {color:#536071;}
.gf-home-journey--light .gf-tlc__phase-g > line {stroke:rgba(21,27,38,.25);}
.gf-home-journey--light .gf-tlc__phase-g > circle:not([class]) {fill:#fff;}
.gf-home-journey--light .gf-tlc__label:focus-visible {outline-color:#bc2c58;}
/* AI remains compact and follows the platform explanation. */
.gf-home-ai-list { display:grid; grid-template-columns:1fr 1fr; gap:0 64px; }
.gf-home-ai-list article { border-top:1px solid var(--home-line); padding:24px 0; }
.gf-home-ai-list article p { margin-bottom:0; }
.gf-home-ai p.gf-home-small { margin:12px 0 0; }
.gf-home-confidence { background:#f8f7f4; }
.gf-home-confidence-list { display:grid; grid-template-columns:repeat(3,1fr); gap:40px; }
.gf-home-confidence-list article { border-top:1px solid var(--home-line); padding-top:24px; }
/* Theme FAQ retains its visible disclosure icon and gains keyboard semantics. */
.gf-home-faq .gf-home-faq-panels { width:calc(100% - 64px); max-width:1136px; margin:0 auto; }
.gf-home-faq-panels > .vc_column_container > .vc_column-inner { padding:0; }
.gf-home-faq .vc_toggle { padding:12px 0; margin:0; }
.gf-home-faq .vc_toggle_title h4 { font-size:22px; line-height:1.35; text-transform:none; font-weight:600; color:var(--home-ink); margin:0; }
.gf-home-faq .vc_toggle_content { margin-top:18px; color:var(--home-body); }
.gf-home-faq .vc_toggle_content p { margin:0; }
.gf-home-faq .vc_toggle_title:focus-visible { outline:2px solid var(--home-accent); outline-offset:6px; }
.gf-home-self-service { display:flex; align-items:center; flex-wrap:wrap; gap:12px 24px; margin-top:36px; }
.gf-home-self-service p { margin:0; font-size:16px; }
/* Tablet: maintain the shared hero scale and readable editorial columns. */
@media(max-width:1023px) {
 .gf-home h1 { font-size:52px; }
 .gf-home-hero-grid,.gf-home-product-grid { gap:36px; }
 .gf-home-section-head { gap:36px; }
 .gf-home-priorities,.gf-home-confidence-list { gap:24px; }
 .gf-home-trust li { flex-basis:25%; }
}
/* Mobile: early offer and proof, shorter page, no sideways scroll. */
@media(max-width:767px) {
 .gf-home-inner { padding:0 24px; }
 .gf-home h1 { font-size:40px; line-height:1.1; }
 .gf-home h2 { font-size:32px; line-height:1.2; }
 .gf-home h3 { font-size:23px; }
 .gf-home p.gf-home-lead { font-size:20px; }
 .gf-home-section { padding:56px 0; }
 .gf-home-hero { padding:40px 0; }
 .gf-home-hero-grid,.gf-home-product-grid,.gf-home-section-head,.gf-home-priorities,.gf-home-confidence-list,.gf-home-ai-list { grid-template-columns:1fr; gap:28px; }
 .gf-home-section-head { margin-bottom:32px; }
 .gf-home-section-head > p,.gf-home-section-head > div:nth-child(2) { padding-top:0; }
 .gf-home-actions { gap:12px; }
 .gf-home-hero-figure { margin-top:4px; }
 .gf-home-trust li { flex-basis:calc(100% / 3); padding:0 6px; }
 .gf-home .gf-home-trust img { width:104px; height:104px; }
 .gf-home-priorities h3 { max-width:none; }
 .gf-home-proof .vc_row_inner { margin:0 10px; }
 .gf-home-product-grid > figure { order:2; }
 .gf-home-product-grid > div { order:1; }

 .gf-home-journey .gf-tlc__labels { position:static; height:auto; display:grid; grid-template-columns:1fr; gap:20px; margin-top:24px; }
 .gf-home-journey .gf-tlc__label { position:static; width:auto; transform:none; text-align:left; display:block; }
 .gf-home-journey .gf-tlc__name { font-size:22px; }
 .gf-home-journey .gf-tlc__bar { margin:8px 0; }
 .gf-home-journey .gf-tlc__desc { font-size:17px; }
 .gf-home-ai-list { gap:0; }
 .gf-home-faq .gf-home-faq-panels { width:calc(100% - 48px); margin:0 auto; }
}
@media(prefers-reduced-motion:reduce) {
 .gf-home-journey .gf-tlc,.gf-home-journey .gf-tlc * { transition:none!important; animation:none!important; }
 .gf-home-carousel__dot::before { transition:none; }
}

/* Solution spacing variants. Shared components; opt in per block, any language. */
body .gf-solution-section__head.gf-solution-section__head--with-content {margin-bottom:48px;}
body .gf-solution-section__media--figure > a {display:block;}
body .gf-solution-section__media--figure > p:empty {display:none;}
body .gf-solution-section__media--figure + p {margin-top:28px;}
body .gf-solution-section__stack {display:grid;gap:32px;align-content:start;}
body .gf-solution-section__stack .gf-solution-section__item > p:last-child {margin-bottom:0;}
body .gf-solution-section__grid--editorial {row-gap:0;}
body .gf-solution-section__grid--editorial > .gf-solution-section__item {display:flex;flex-direction:column;}
body .gf-solution-section__grid--editorial > .gf-solution-section__item > p:last-child:has(> .gf-link-chevron) {margin-top:auto;margin-bottom:0;}
@supports (grid-template-rows:subgrid) {
 body .gf-solution-section__grid--editorial > .gf-solution-section__item {display:grid;grid-template-rows:subgrid;grid-row:span 3;row-gap:0;}
 body .gf-solution-section__grid--editorial > .gf-solution-section__item > h3 {grid-row:1;}
 body .gf-solution-section__grid--editorial > .gf-solution-section__item > p {grid-row:2;}
 body .gf-solution-section__grid--editorial > .gf-solution-section__item > p:last-child:has(> .gf-link-chevron) {grid-row:3;}
}
@media(max-width:767px) {
 body .gf-solution-section__head.gf-solution-section__head--with-content {margin-bottom:32px;}
 body .gf-solution-section__media--figure + p {margin-top:24px;}
 body .gf-solution-section__grid--editorial {row-gap:32px;}
 body .gf-solution-section__grid--editorial > .gf-solution-section__item {display:block;grid-row:auto;}
 body .gf-solution-section__grid--editorial > .gf-solution-section__item > p:last-child:has(> .gf-link-chevron) {margin-top:0;}
}

/* Course preview pair: crop from the bottom; full-size asset remains available. */
body .gf-solution-section__media--course-preview img {
  aspect-ratio:2492 / 2056;
  object-fit:cover;
  object-position:center top;
}

/* Portrait product examples: preserve the complete screenshot, shared PT/EN. */
body .gf-solution-section__media--portrait {width:100%;max-width:340px;}
body .gf-solution-section__grid--balanced {align-items:center;}
/* Separate a wide product figure from the explanatory grid that follows. */
body .gf-solution-section__media--figure + .gf-solution-section__grid {margin-top:40px;}
@media(max-width:767px) {
 body .gf-solution-section__media--portrait {max-width:300px;}
 body .gf-solution-section__media--figure + .gf-solution-section__grid {margin-top:32px;}
}

/* Solution FAQ spacing: padding survives the theme's global margin reset. */
body .gf-solution-section--faq .gf-solution-section__faq {padding-bottom:40px;}
body .gf-solution-section--faq .vc_toggle + .wpb_text_column {padding-top:24px;}
@media(max-width:767px) {
 body .gf-solution-section--faq .gf-solution-section__faq {padding-bottom:32px;}
}

/* Product images whose own composition supplies the frame. Opt in, any language. */
body .gf-solution-section__media.gf-solution-section__media--unframed img {border:0;}

/* Solution signposts: reuse the site’s icon shortcode, one restrained accent.
   Opt-in only; decorative icons are hidden from assistive technology. */
body .gf-solution-section__icon {
 display:block;width:36px;height:36px;margin:0 0 20px;
 color:#cc315d;font-size:36px;line-height:1;
}
body .gf-solution-section__icon i,
body .gf-solution-section__icon svg {display:block;font-size:36px;width:36px;height:36px;line-height:1;}
body .gf-solution-section--dark .gf-solution-section__icon {color:#f4a5bc;}
/* Crop only the empty bottom of badge screenshots. The full asset stays linked. */
body .gf-solution-section__media--badge-compact > a {
 display:block;aspect-ratio:7 / 10;overflow:hidden;border-radius:20px;
}
body .gf-solution-section__media--badge-compact img {
 width:100%;height:100%;object-fit:cover;object-position:center top;
}


/* Customer proof: dynamic Clients and case stories, shared PT/EN.
   Layout/type/buttons/icons reuse gf-solution-section and gf-link-chevron. */
body:has(.gf-customer-section) .gf-editorial-cta.gf-editorial-cta-wpb {margin-bottom:80px!important;}
@media(max-width:767px){body:has(.gf-customer-section) .gf-editorial-cta.gf-editorial-cta-wpb {margin-bottom:48px!important;}}























@media(max-width:1000px){}
@media(max-width:767px){}
@media(max-width:420px){}

