﻿/* Consultoria (/consultoria) — layout do Figma (pipeline figma-to-bootstrap, outputs/consultoria).
   GERADO do merged/styles.css (+ assets/css/mg-btn.css escopado): tokens que eram :root e o body{}
   do mockup ficam no wrapper .consultoria-page, para não vazar no header/rodapé do site.
   Corrigir no mockup (sections/) e regerar; só o bloco "LEANWEB" no fim é exclusivo daqui. */
/* ============================================================ */
/* CONSULTORIA — PÁGINA COMPLETA                               */
/* Merge de sections/*, na ordem do merge.json:                */
/* HERO · SOCIOTÉCNICO · ESTRATÉGIA · LIDERANÇA · VERTENTES · CICLO · MODELO DE ATUAÇÃO · SETORES · CASES · QUIZ · CONTATO · FAQ*/
/*                                                             */
/* Gerado a partir de sections/*.css — a fonte da verdade      */
/* continua sendo cada seção; ao editá-las, refazer o merge.   */
/* ============================================================ */

.consultoria-page {
  /* --- 1/12 · HERO — sec-hero 2973:1848  (hero.css) --- */

  --font-primary:   'Roboto', sans-serif;
  --color-page-bg:  #ffffff;

  /* Cores */
  --csh-ink:            #1c1846;              /* títulos e texto do cartão */
  --csh-white:          #ffffff;
  --csh-kicker:         rgba(255, 255, 255, 0.75);
  --csh-lead:           rgba(255, 255, 255, 0.88);
  --csh-orange:         #ff8000;
  --csh-orange-light:   #ffa626;
  --csh-grad-from:      #161231;              /* gradiente do Section, 0% */
  --csh-grad-to:        rgba(41, 35, 92, 0.55); /* #29235c a 55%, 100% */
  --csh-glow:           rgba(255, 166, 38, 0.25);
  --csh-glow-0:         rgba(255, 166, 38, 0);
  --csh-card-bg:        rgba(255, 255, 255, 0.8);
  --csh-card-line:      rgba(41, 35, 92, 0.15);
  --csh-card-shadow:    rgba(41, 35, 92, 0.4);

  /* Medidas estruturais */
  --csh-container:      1208px;     /* Container 2973:2375 em x=356 → (1920 − 2×356) */
  --csh-pad-x:          0px;
  --csh-pad-top:        199px;      /* top do Container: 50% − 32.51 − 529.98/2 em 993 */
  --csh-card-w:         1052px;     /* 2973:2388, centrado (x=434) */
  --csh-card-gap-top:   94.31px;    /* 900 (topo do cartão) − 805.69 (fim da faixa de botões) */
  --csh-invade:         290.36px;   /* 1283.36 − 993: quanto o cartão entra na sociotécnico */
  /* --- 2/12 · SOCIOTÉCNICO — sec-sociotecnico 2973:1849  (sociotecnico.css) --- */


  /* Cores */
  --cso-bg:             #f5f4f8;   /* #f3f2f7 + shader a 13% (medido no print) */
  --cso-title:          #29235c;
  --cso-text:           #5c5876;

  /* Medidas estruturais */
  --cso-reserva:        290.36px;  /* parte do cartão do hero que invade esta seção (1283.36 − 993) */
  --cso-pad-top:        142.64px;  /* 433 (topo do texto) − reserva */
  --cso-pad-bottom:     133px;     /* 974 − 841 (fim do 3º parágrafo) */
  --cso-container:      1420px;    /* 250 → 1670: margem direita do texto (250) espelhada */
  --cso-indent:         67px;      /* ilustração em x=317 = 250 + 67 */
  --cso-gap:            32px;      /* 1082 − (317 + 733) */
  --cso-text-w:         588px;
  --cso-figure-offset:  46.47px;   /* ilustração em top 479.47 × texto em 433 */
  /* --- 3/12 · ESTRATÉGIA — sec-estrategia 2973:2430  (estrategia.css) --- */


  --cse-bg: #f7f6fb;
  --cse-navy: #161231;
  --cse-orange: #ff8000;
  --cse-white: #ffffff;
  --cse-content-w: 1172px;     /* x=374 em 1920 */
  --cse-text-w: 500px;
  /* --- 4/12 · LIDERANÇA — sec-lideranca 2973:2442  (lideranca.css) --- */


  --csl-bg: #f0eff4;           /* base (medido no print) */
  --csl-bg-band: #f7f6fb;      /* faixas do shader "Concentric patterns" */
  --csl-bg-band-2: #f3f2f7;
  --csl-ink: #29235c;
  --csl-text: #443f6b;
  --csl-orange: #ff8000;
  --csl-deco: #f3f2f7;
  --csl-photo-w: 425px;
  --csl-text-w: 459px;
  /* --- 5/12 · VERTENTES — sec-vertentes 2973:2455  (vertentes.css) --- */


  --csv-bg: #f7f6fb;
  --csv-dot: rgba(41, 35, 92, 0.07);   /* aproxima o shader (grade 11px, 13%) */
  --csv-ink: #29235c;
  --csv-text: #443f6b;
  --csv-muted: #9a95bd;
  --csv-orange: #ff8000;
  --csv-teal: #169194;
  --csv-violet: #534ab7;
  --csv-content-w: 1300px;
  /* --- 6/12 · CICLO — sec-ciclo 2973:2518  (ciclo.css) --- */


  --csc-ink: #29235c;
  --csc-text: #443f6b;
  --csc-teal: #169194;
  --csc-muted: #9a95bd;
  --csc-orange: #ff8000;
  --csc-dot: rgba(40, 36, 70, 0.13);   /* shader "Geometric pattern": grade 11px a 13% */
  --csc-font-mono: 'Roboto Mono', monospace;
  --csc-inner-w: 1300px;
  --csc-steps-w: 1108px;
  /* --- 7/12 · MODELO DE ATUAÇÃO — sec-modelo-atuacao 2973:2848  (modelo-atuacao.css) --- */


  --csm-bg:            #161231;                    /* fill sólido do frame */
  --csm-white:         #ffffff;
  --csm-orange:        #f5821f;                    /* eyebrows, números, CTA */
  --csm-teal:          #5ab4cf;                    /* eyebrow "Organização" */
  --csm-muted:         #bab6c9;                    /* textos dos papéis / rótulos */
  --csm-lead:          rgba(255, 255, 255, 0.72);  /* parágrafos do cabeçalho */
  --csm-step-text:     rgba(255, 255, 255, 0.6);   /* descrição do card 01 */
  --csm-card:          #1e1a38;                    /* cards 02–04 e papéis */
  --csm-card-hi:       #241f45;                    /* card 01 (destaque) */
  --csm-border:        rgba(255, 255, 255, 0.09);
  --csm-border-hi:     rgba(245, 130, 31, 0.4);
  --csm-cta-ink:       #201305;
  --csm-rail:          rgba(255, 255, 255, 0.16);  /* mesmo alfa do traço da elipse */

  /* Anéis do shader: centro (97,9% · 4,565% de 1467 = 67px) e alfa(r) do branco
     = 0,177·e^(−r/924), ajustado em 737 px da referência (raios das bordas
     408/1186/1969 batem com o WGSL: período 1562px, offset 0,74). */
  --csm-rings-x: 97.9%;
  --csm-rings-y: 67px;
  /* --- 8/12 · SETORES — sec-setores 2973:2643  (setores.css) --- */


  --cst-bg: #f7f6fb;
  --cst-dot: rgba(41, 35, 92, 0.07);   /* aproxima o shader (grade 11px, 13%) */
  --cst-ink: #29235c;
  --cst-title: #161231;
  --cst-orange: #ff8000;
  --cst-teal: #169194;
  --cst-muted: #5c5885;
  --cst-radius: 16px;
  --cst-content-w: 1320px;
  /* --- 9/12 · CASES — sec-cases 2973:2575  (cases.css) --- */


  --csk-bg: #161231;
  --csk-orange: #ff8000;
  --csk-amber: #ffa626;
  --csk-card-bg: rgba(255, 255, 255, 0.03);
  --csk-card-border: rgba(255, 255, 255, 0.08);
  --csk-text-soft: rgba(255, 255, 255, 0.6);
  --csk-card-w: 353.41px;
  --csk-gap: 20.8px;
  --csk-content-w: 1300px;
  /* --- 10/12 · QUIZ — sec-quiz 2973:2636  (quiz.css) --- */


  --csq-navy: #161231;
  --csq-lilac: #827eae;
  --csq-orange: #ff8000;
  --csq-dot: rgba(40, 36, 70, 0.13);   /* shader "Geometric pattern": grade 11px a 13% */
  --csq-card-w: 1240px;
  /* --- 11/12 · CONTATO — sec-contato 2973:2766  (contato.css) --- */


  --csn-bg:           #1a1734;
  --csn-accent:       #ff8000;
  --csn-white:        #ffffff;
  --csn-navy:         #29235c;
  --csn-ink:          #1a1734;
  --csn-input-border: rgba(41, 35, 92, 0.15);
  --csn-input-text:   #211d3f;
  --csn-placeholder:  #8a8a96;
  --csn-note:         #9a95bd;
  --csn-arcs-opacity: 0.2;
  /* --- 12/12 · FAQ — sec-faq 2974:2  (faq.css) --- */


  --csf-color-navy:         #29235c;   /* título, perguntas, círculo */
  --csf-color-text:         #4a4570;   /* respostas */
  --csf-color-accent:       #ff8000;   /* traço e links */
  --csf-color-bg-top:       #f5f6fa;
  --csf-color-bg-bottom:    #e8e8e8;
  --csf-color-card:         #ffffff;
  --csf-color-card-border:  #ebebf0;

  --csf-container:          1000px;
  --csf-pad-top:            91px;
  --csf-gap-title-rule:     21px;
  --csf-gap-rule-list:      69px;
  --csf-gap-cards:          18px;
  --csf-pad-bottom:         75px;
  --csf-card-radius:        4px;
  --csf-sign:               36px;
}


/* ============================================================ */
/* GLOBAL                                                      */
/* ============================================================ */
.consultoria-page {
  font-family: var(--font-primary);
  margin: 0;
  padding: 0;
  background-color: var(--color-page-bg);
}


/* ============================================================ */
/* 1/12 — HERO — sec-hero 2973:1848                            */
/* origem: sections/hero.css                                   */
/* ============================================================ */
/* ============================================================ */
/* SECTION: HERO                                                */
/* ============================================================ */
/* Sem overflow:hidden e com z-index acima da sociotécnico: o cartão sai pela
   base da seção e precisa ficar POR CIMA da seção seguinte (que vem depois no
   DOM e, sem isso, o cobriria). O recorte do fundo mora no __bg. Sem
   `isolation`/filtro aqui: um ancestral com filtro vira raiz de backdrop e o
   blur do cartão deixaria de enxergar a sociotécnico. */
.cs-hero {
  position: relative;
  z-index: 2;
  font-family: var(--font-primary);
  color: var(--csh-white);
  background-color: var(--csh-grad-from);
}

/* Fills do Section 2973:2373 (de baixo para cima) + Rectangle 2973:2374.
   Gradiente: 128.4988deg #161231 → #29235c a 55%. Brilho: retângulo
   1152 × 1579.19 em (1081, −237.03), radial circular de raio 977.4 no centro
   dele → centro em (1657, 552.6) da seção = (86.30%, 55.65%); some em 60%. */
.cs-hero__bg {
  position: absolute;
  inset: 0;
  z-index: 0;
  overflow: hidden;
  pointer-events: none;
}

.cs-hero__bg::after {
  content: "";
  position: absolute;
  inset: 0;
  background-image:
    radial-gradient(circle 977.4px at 86.3% 55.65%, var(--csh-glow) 0%, var(--csh-glow-0) 60%),
    linear-gradient(128.4988deg, var(--csh-grad-from) 0%, var(--csh-grad-to) 100%);
}

/* Fill IMAGE com CROP (imageTransform y 0.7755 / 0.0595): o asset já é o
   recorte do original 4096×2731 (linhas 163→2281), na proporção do frame
   (1.934 = 1920/993) — em 1920 o cover casa 1:1 com o Figma. */
.cs-hero__photo {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  max-width: none;
  object-fit: cover;
  object-position: 50% 50%;
}


/* --- Conteúdo --- */
.cs-hero__container {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  box-sizing: border-box;
  max-width: calc(var(--csh-container) + 2 * var(--csh-pad-x));
  margin: 0 auto;
  padding: var(--csh-pad-top) var(--csh-pad-x) 0;
}

.cs-hero__intro {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  max-width: 680px;               /* Container 2973:2375 */
}

/* Heading 1 2973:2376: duas linhas de estilo diferente, gap 10.695 */
.cs-hero__title {
  display: flex;
  flex-direction: column;
  gap: 10.695px;
  margin: 0;
  font-weight: inherit;
}

/* 2973:2378: Regular 64 numa caixa de 58 (o texto centra nela), tracking .472 */
.cs-hero__kicker {
  display: block;
  font-size: 4rem;                /* 64px */
  font-weight: 400;
  line-height: 58px;
  letter-spacing: 0.472px;
  color: var(--csh-kicker);
}

/* 2973:2379: Black 65.6 / 69.54, tracking −1.312, caixa de 615 → 3 linhas
   ("Transformação e" / "performance para" / "sua empresa") */
.cs-hero__headline {
  display: block;
  max-width: 615px;
  font-size: 4.1rem;              /* 65.6px */
  font-weight: 900;
  line-height: 69.54px;
  letter-spacing: -1.312px;
  color: var(--csh-white);
}

.cs-hero__highlight {
  background-image: linear-gradient(90deg, var(--csh-orange-light) 0%, var(--csh-orange) 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  color: transparent;
}

/* 2973:2380/2381: caixa de 134 em top 340.7 com o texto (24, normal = 28.125
   por linha × 4) centrado → topo do texto em 353.45; o título termina em
   277.3 (58 + 10.695 + 3 × 69.54) → margem 76.15. Largura 528. */
.cs-hero__lead {
  max-width: 528px;
  margin: 76.15px 0 0;
  font-size: 1.5rem;              /* 24px */
  font-weight: 400;
  line-height: normal;
  color: var(--csh-lead);
}

/* 2973:2382: top 537.7 + pt 16.99 → botões em 554.69; o texto termina em
   465.95 → margem 88.74. Botões de 52 (self-stretch), gap 16. */
.cs-hero__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
  margin-top: 88.74px;
}

.cs-hero__btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  min-height: 52px;
  padding: 16px 30.4px;
  border: 1px solid transparent;
  border-radius: 12px;
  font-size: 0.95rem;             /* 15.2px */
  font-weight: 700;
  line-height: normal;
  text-align: center;
  text-decoration: none;
  white-space: nowrap;
  transition: transform 0.2s ease, box-shadow 0.2s ease, background-color 0.2s ease, border-color 0.2s ease;
}

/* 2973:2383 + sombra 2973:2384 (0 10 30 −8 laranja .6) */
.cs-hero__btn--primary {
  color: var(--csh-white);
  background-color: var(--csh-orange);
  box-shadow: 0 10px 30px -8px rgba(255, 128, 0, 0.6);
}

/* 2973:2386: borda branca .5 + backdrop-blur 2 */
.cs-hero__btn--outline {
  border-color: rgba(255, 255, 255, 0.5);
  color: var(--csh-white);
  background-color: transparent;
  -webkit-backdrop-filter: blur(2px);
  backdrop-filter: blur(2px);
}

/* Hover/foco: não está no Figma — acabamento da conversão */
.cs-hero__btn--primary:hover,
.cs-hero__btn--primary:focus-visible {
  color: var(--csh-white);
  transform: translateY(-2px);
  box-shadow: 0 14px 32px -8px rgba(255, 128, 0, 0.75);
}

.cs-hero__btn--outline:hover,
.cs-hero__btn--outline:focus-visible {
  color: var(--csh-white);
  border-color: rgba(255, 255, 255, 0.8);
  background-color: rgba(255, 255, 255, 0.08);
}

.cs-hero__btn:focus-visible {
  outline: 2px solid var(--csh-orange-light);
  outline-offset: 3px;
}


/* ============================================================ */
/* CARTÃO SOBREPOSTO — "QUANDO FAZ SENTIDO" (2973:2388)         */
/* ============================================================ */
/* Fica no fluxo do hero; a margem negativa de baixo é o que o faz invadir a
   sociotécnico: a seção termina 290.36px antes do fim do cartão, e a
   sociotécnico reserva esse espaço no próprio padding-top (--cso-reserva). */
.cs-hero__card {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 38.4px;
  align-self: center;
  box-sizing: border-box;
  width: 100%;
  max-width: var(--csh-card-w);
  margin: var(--csh-card-gap-top) 0 calc(-1 * var(--csh-invade));
  padding: 54.4px 54.4px 28px;
  border: 1px solid var(--csh-orange);
  border-top-width: 4px;
  border-radius: 20px;
  color: var(--csh-ink);
  background-color: var(--csh-card-bg);
  -webkit-backdrop-filter: blur(9px);
  backdrop-filter: blur(9px);      /* BACKGROUND_BLUR 18 no Figma */
  box-shadow: 0 40px 70px -30px var(--csh-card-shadow);   /* Overlay+Shadow 2973:2389 */
}

/* 2973:2391/2392: ExtraBold 38, normal, centrado; pb .59 → caixa 45.59 */
.cs-hero__card-title {
  margin: 0;
  padding-bottom: 0.59px;
  font-size: 2.375rem;            /* 38px */
  font-weight: 800;
  line-height: normal;
  text-align: center;
  color: var(--csh-ink);
}

/* List 2973:2393: grid 2 × 2, gap 22.4 / 32; item 48.09 */
.cs-hero__reasons {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 22.4px 32px;
  box-sizing: border-box;
  width: 100%;
  margin: 0;
  padding: 0;
  list-style: none;
}

/* Texto a 40.39 da esquerda e 3.53 do topo, Regular 16 / 20. A quebra em 2
   linhas sai sozinha na largura do item (414.2): nenhuma 1ª linha + a palavra
   seguinte cabe (a mais curta somaria ~427). */
.cs-hero__reason {
  position: relative;
  box-sizing: border-box;
  min-height: 48.09px;
  padding: 3.53px 0 0 40.39px;
  font-size: 1rem;                /* 16px */
  font-weight: 400;
  line-height: 20px;
  color: var(--csh-ink);
}

/* Background 2973:2395: círculo 26 em top 1.6, gradiente 135deg */
.cs-hero__reason::before {
  content: "";
  position: absolute;
  top: 1.6px;
  left: 0;
  width: 26px;
  height: 26px;
  border-radius: 50%;
  background-image: linear-gradient(135deg, var(--csh-orange-light) 0%, var(--csh-orange) 100%);
}

/* Border 2973:2396: 11 × 7 com borda esquerda/inferior 2px branca, girado
   −45deg; o pt 5.58 / pb 7.69 do círculo põe o centro em (13, 13.55) */
.cs-hero__reason::after {
  content: "";
  position: absolute;
  top: 10.05px;
  left: 7.5px;
  box-sizing: border-box;
  width: 11px;
  height: 7px;
  border-bottom: 2px solid var(--csh-white);
  border-left: 2px solid var(--csh-white);
  transform: rotate(-45deg);
}

/* Navegação rápida 2973:2410: fio .15 + pt 31.99; itens centrados, gap 25;
   separador "•" 13.6 numa caixa de 33.39 (px 14.4), a 25 do link */
.cs-hero__nav {
  box-sizing: border-box;
  width: 100%;
  padding-top: 31.99px;
  border-top: 1px solid var(--csh-card-line);
}

.cs-hero__nav-list {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 0 25px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.cs-hero__nav-item {
  display: flex;
  align-items: center;
  gap: 25px;
}

.cs-hero__nav-item:not(:last-child)::after {
  content: "•";
  box-sizing: border-box;
  width: 33.39px;
  padding: 0 14.4px;
  font-size: 0.85rem;             /* 13.6px */
  font-weight: 400;
  line-height: normal;
  color: var(--csh-orange);
}

.cs-hero__nav-link {
  display: block;
  padding-bottom: 2px;
  font-size: 1rem;                /* 16px */
  font-weight: 800;
  line-height: 20px;
  color: var(--csh-orange);
  text-decoration: none;
}

/* Hover: não está no Figma — acabamento da conversão */
.cs-hero__nav-link:hover,
.cs-hero__nav-link:focus-visible {
  color: var(--csh-orange);
  opacity: .8;                    /* links sem sublinhado (pedido do autor) */
}

.cs-hero__nav-link:focus-visible {
  outline: 2px solid var(--csh-orange);
  outline-offset: 3px;
  border-radius: 2px;
}


/* ============================================================ */
/* RESPONSIVO                                                   */
/* ============================================================ */
@media (prefers-reduced-motion: reduce) {
  .cs-hero__btn { transition-duration: 1ms; }
  .cs-hero__btn--primary:hover,
  .cs-hero__btn--primary:focus-visible { transform: none; }
}

@media (max-width: 1399.98px) {
  .consultoria-page {
    --csh-pad-x: 40px;
  }
}

@media (max-width: 1247.98px) {
  .consultoria-page {
    --csh-pad-top: 160px;
  }

  .cs-hero__card { padding-left: 40px; padding-right: 40px; }
}

/* Abaixo de 992 o cartão volta ao fluxo, sem invadir a sociotécnico
   (que zera a reserva no mesmo breakpoint): fica na base do hero escuro. */
@media (max-width: 991.98px) {
  .consultoria-page {
    --csh-pad-top: 128px;
    --csh-pad-x: 32px;
    --csh-card-gap-top: 72px;
    --csh-invade: 0px;
  }

  .cs-hero__container { padding-bottom: 64px; }

  .cs-hero__kicker { font-size: 3.25rem; line-height: 52px; }       /* 52px */
  .cs-hero__headline { font-size: 3.5rem; line-height: 60px; letter-spacing: -1.1px; }   /* 56px */
  .cs-hero__lead { margin-top: 40px; font-size: 1.375rem; }         /* 22px */
  .cs-hero__actions { margin-top: 48px; }

  .cs-hero__card { gap: 32px; padding: 44px 32px 28px; }
  .cs-hero__card-title { font-size: 2rem; }                         /* 32px */

  /* Navegação quebra em 2 linhas: o separador sobraria na ponta da linha */
  .cs-hero__nav-list { gap: 12px 32px; }
  .cs-hero__nav-item:not(:last-child)::after { content: none; }
}

@media (max-width: 767.98px) {
  .consultoria-page {
    --csh-pad-top: 104px;
    --csh-pad-x: 24px;
    --csh-card-gap-top: 56px;
  }

  .cs-hero__container { padding-bottom: 48px; }

  .cs-hero__kicker { font-size: 2.625rem; line-height: 44px; }      /* 42px */
  .cs-hero__headline { font-size: 2.875rem; line-height: 50px; letter-spacing: -0.9px; }   /* 46px */
  .cs-hero__lead { margin-top: 32px; font-size: 1.25rem; }          /* 20px */
  .cs-hero__actions { margin-top: 40px; }

  .cs-hero__card { gap: 28px; padding: 36px 24px 24px; }
  .cs-hero__card-title { font-size: 1.75rem; }                      /* 28px */
  .cs-hero__reasons { grid-template-columns: minmax(0, 1fr); gap: 18px; }
  .cs-hero__reason { min-height: 0; }
  .cs-hero__nav { padding-top: 24px; }
}

/* Celular: botões empilhados em largura total; navegação vira coluna. */
@media (max-width: 575.98px) {
  .consultoria-page {
    --csh-pad-top: 88px;
    --csh-pad-x: 16px;
    --csh-card-gap-top: 48px;
  }

  .cs-hero__kicker { font-size: 2.125rem; line-height: 38px; }      /* 34px */
  .cs-hero__headline { font-size: 2.25rem; line-height: 40px; letter-spacing: -0.7px; }   /* 36px */
  .cs-hero__lead { margin-top: 24px; font-size: 1.125rem; }         /* 18px */
  .cs-hero__actions { flex-direction: column; align-self: stretch; margin-top: 32px; }
  .cs-hero__btn { white-space: normal; }

  .cs-hero__card { padding: 32px 20px 22px; border-radius: 16px; }
  .cs-hero__card-title { font-size: 1.5rem; }                       /* 24px */
  .cs-hero__nav-list { flex-direction: column; gap: 12px; }
}


/* ============================================================ */
/* 2/12 — SOCIOTÉCNICO — sec-sociotecnico 2973:1849            */
/* origem: sections/sociotecnico.css                           */
/* ============================================================ */
/* ============================================================ */
/* SECTION: MODELO SOCIOTÉCNICO                                 */
/* ============================================================ */
/* Fundo = SOLID #f3f2f7 + SHADER "Geometric pattern" (grid, scale 11,
   thickness .07, branco sobre #282446) a 13%, que não exporta. Medido no
   print: fundo #f5f4f8 e 1 pixel #dad9e1 a cada 11px em (11k+5, 11k+5) —
   o mesmo em SVG de 11×11, ancorado no canto da seção. */
.cs-soc {
  position: relative;
  z-index: 1;
  font-family: var(--font-primary);
  background-color: var(--cso-bg);
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='11' height='11'%3E%3Crect x='5' y='5' width='1' height='1' fill='%23dad9e1'/%3E%3C/svg%3E");
  background-repeat: repeat;
  background-position: 0 0;
  background-size: 11px 11px;
}

.cs-soc__container {
  display: flex;
  align-items: flex-start;
  gap: var(--cso-gap);
  box-sizing: border-box;
  max-width: var(--cso-container);
  margin: 0 auto;
  padding: calc(var(--cso-reserva) + var(--cso-pad-top)) 0 var(--cso-pad-bottom) var(--cso-indent);
}

/* LTF - Vetor 1 2973:1859: 733 × 322, vetorial (SVG sem texto vivo) */
.cs-soc__figure {
  flex: 0 1 733px;
  min-width: 0;
  margin: var(--cso-figure-offset) 0 0;
}

.cs-soc__img {
  display: block;
  width: 100%;
  height: auto;
}

/* Container 2973:1850: pt 7.69, gap 16.9 */
.cs-soc__text {
  display: flex;
  flex: 0 0 var(--cso-text-w);
  flex-direction: column;
  gap: 16.9px;
  min-width: 0;
  padding-top: 7.69px;
}

/* 2973:1852: ExtraBold 38, normal. Quebra em "estrutural" / "pelo modelo
   sociotécnico": a 1ª linha mede 463 e com " pelo" passaria de 540 → caixa 500 */
.cs-soc__title {
  max-width: 500px;
  margin: 0;
  font-size: 2.375rem;            /* 38px */
  font-weight: 800;
  line-height: normal;
  color: var(--cso-title);
}

/* 2973:1854/1856/1858: Regular 16 / 20; cada parágrafo tem a própria caixa
   no Figma (454 · 463 · 446) — é ela que reproduz as quebras de linha. */
.cs-soc__p {
  margin: 0;
  font-size: 1rem;                /* 16px */
  font-weight: 400;
  line-height: 20px;
  color: var(--cso-text);
}

.cs-soc__p--1 { max-width: 454px; }
.cs-soc__p--2 { max-width: 463px; }
.cs-soc__p--3 { max-width: 446px; padding-bottom: 0.555px; }


/* ============================================================ */
/* RESPONSIVO                                                   */
/* ============================================================ */
@media (max-width: 1399.98px) {
  .consultoria-page {
    --cso-indent: 40px;
    --cso-text-w: 520px;
  }

  .cs-soc__container { padding-right: 40px; align-items: center; }
  .cs-soc__figure { margin-top: 0; }
}

@media (max-width: 1247.98px) {
  .consultoria-page {
    --cso-text-w: 460px;
    --cso-pad-top: 120px;
    --cso-pad-bottom: 112px;
  }

  .cs-soc__title { font-size: 2.125rem; }   /* 34px */
}

/* Abaixo de 992 o cartão do hero volta ao fluxo (--csh-invade: 0), então a
   reserva zera junto; texto em cima, ilustração embaixo. */
@media (max-width: 991.98px) {
  .consultoria-page {
    --cso-reserva: 0px;
    --cso-pad-top: 88px;
    --cso-pad-bottom: 88px;
    --cso-indent: 32px;
    --cso-gap: 40px;
  }

  .cs-soc__container {
    flex-direction: column-reverse;
    align-items: stretch;
    padding-right: 32px;
  }

  /* texto no mesmo eixo da ilustração (bloco de 733 centralizado): com teto de
     640 alinhado à esquerda, sobrava área vazia ao lado (ajuste do autor, 860) */
  .cs-soc__text { flex: 0 0 auto; padding-top: 0; align-self: center; width: 100%; max-width: 733px; }
  .cs-soc__title,
  .cs-soc__p { max-width: none; }
  .cs-soc__figure { flex: 0 0 auto; align-self: center; width: 100%; max-width: 733px; }
}

@media (max-width: 767.98px) {
  .consultoria-page {
    --cso-pad-top: 72px;
    --cso-pad-bottom: 72px;
    --cso-indent: 24px;
    --cso-gap: 32px;
  }

  .cs-soc__container { padding-right: 24px; }
  .cs-soc__title { font-size: 1.875rem; }   /* 30px */
}

@media (max-width: 575.98px) {
  .consultoria-page {
    --cso-pad-top: 56px;
    --cso-pad-bottom: 56px;
    --cso-indent: 16px;
  }

  .cs-soc__container { padding-right: 16px; }
  .cs-soc__title { font-size: 1.625rem; }   /* 26px */
}


/* ============================================================ */
/* 3/12 — ESTRATÉGIA — sec-estrategia 2973:2430                */
/* origem: sections/estrategia.css                             */
/* ============================================================ */
/* ============================================================ */
/* SECTION                                                      */
/* ============================================================ */
.cs-est {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  min-height: 720px;
  background: var(--cse-bg);
  font-family: var(--font-primary);
  color: var(--cse-white);
}

/* Fundo: foto FILL (cover, centrada) + gradiente 116deg navy -> transparente */
.cs-est__bg { position: absolute; inset: 0; z-index: -1; pointer-events: none; }
.cs-est__photo { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center; }
.cs-est__veil {
  position: absolute; inset: 0;
  background: linear-gradient(116.017deg, rgb(22, 18, 49) 24.951%, rgba(22, 18, 49, 0) 100.41%);
}

.cs-est__inner {
  max-width: var(--cse-content-w);
  margin: 0 auto;
  padding: 139px 0 104px;
}

.cs-est__eyebrow {
  margin: 7px 0 0;
  font-size: 24px;
  font-weight: 800;
  line-height: normal;
  color: var(--cse-orange);
}
.cs-est__title {
  margin: 0;
  padding-top: 1.6px;
  font-size: 38px;
  font-weight: 800;
  line-height: normal;
  color: var(--cse-white);
}
.cs-est__rule {
  display: block;
  width: 26px;
  height: 2px;
  margin-top: 22px;
  background: var(--cse-orange);
}
.cs-est__text {
  max-width: var(--cse-text-w);
  margin: 19px 0 0;
  font-size: 16px;
  font-weight: 400;
  line-height: 20px;
  color: var(--cse-white);
}
.cs-est__text strong { font-weight: 800; }

.cs-est__btn {
  display: inline-flex;
  align-items: center;
  gap: 9.6px;
  margin-top: 49px;
  padding: 15.2px 28.8px;
  border-radius: 12px;
  background: var(--cse-orange);
  color: var(--cse-white);
  font-size: 15.2px;
  font-weight: 700;
  line-height: normal;
  text-decoration: none;
  white-space: nowrap;
}
.cs-est__btn:hover, .cs-est__btn:focus-visible { color: var(--cse-white); filter: brightness(1.06); }

/* ============================================================ */
/* RESPONSIVO                                                   */
/* ============================================================ */
@media (max-width: 1399.98px) {
  .cs-est__inner { padding-left: 32px; padding-right: 32px; }
}
@media (max-width: 1247.98px) {
  .cs-est__veil { background: linear-gradient(116deg, rgba(22, 18, 49, .95) 25%, rgba(22, 18, 49, .35) 100%); }
}
@media (max-width: 991.98px) {
  .cs-est__inner { padding-top: 96px; padding-bottom: 96px; }
  .cs-est__veil { background: linear-gradient(180deg, rgba(22, 18, 49, .92) 0%, rgba(22, 18, 49, .78) 100%); }
}
@media (max-width: 767.98px) {
  .cs-est__title { font-size: 32px; }
  .cs-est__eyebrow { font-size: 20px; }
}
@media (max-width: 575.98px) {
  .cs-est__inner { padding: 72px 20px; }
  .cs-est__title { font-size: 28px; }
  .cs-est__btn { white-space: normal; }
}


/* ============================================================ */
/* 4/12 — LIDERANÇA — sec-lideranca 2973:2442                  */
/* origem: sections/lideranca.css                              */
/* ============================================================ */
/* ============================================================ */
/* SECTION                                                      */
/* ============================================================ */
.cs-lid {
  position: relative;
  overflow: hidden;
  min-height: 778px;
  font-family: var(--font-primary);
  /* Shader (anéis concêntricos, centro 21,7% / 35,8%, raio de faixa 412px):
     aproximado por radial-gradient com os raios medidos no print de referência */
  background:
    radial-gradient(circle at 417px 278px,
      var(--csl-bg-band) 0, var(--csl-bg-band) 408px,
      var(--csl-bg) 416px, var(--csl-bg) 797px,
      var(--csl-bg-band) 805px, var(--csl-bg-band) 1186px,
      var(--csl-bg-band-2) 1194px, var(--csl-bg-band-2) 1552px,
      var(--csl-bg) 1560px),
    var(--csl-bg);
}

.cs-lid__inner {
  display: grid;
  grid-template-columns: var(--csl-photo-w) minmax(0, 1fr);
  column-gap: 187px;           /* texto em x=986: 374 + 425 + 187 */
  max-width: 1172px;
  margin: 0 auto;
  padding: 95px 0 116px;
}

.cs-lid__media {
  position: relative;
  width: var(--csl-photo-w);
  aspect-ratio: 425 / 567;
}
.cs-lid__photo {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 13px;
}
.cs-lid__deco {
  position: absolute;
  width: 97.88%;
  height: 98.06%;
  border-radius: 13px;
  background: var(--csl-deco);
}
.cs-lid__deco--a { left: -9.88%; top: 7.76%; box-shadow: 0 10px 32.4px 0 rgba(0, 0, 0, .05); }
.cs-lid__deco--b { left: 10.59%; top: -5.11%; box-shadow: 0 -10px 32px 0 rgba(0, 0, 0, .05); }

.cs-lid__content { padding-top: 44px; }
.cs-lid__eyebrow {
  margin: 5.6px 0 0;
  font-size: 24px;
  font-weight: 800;
  line-height: normal;
  color: var(--csl-orange);
}
.cs-lid__title {
  margin: 7px 0 0;
  font-size: 38px;
  font-weight: 800;
  line-height: normal;
  color: var(--csl-ink);
}
.cs-lid__rule {
  display: block;
  width: 26px;
  height: 2px;
  margin-top: 22px;
  background: var(--csl-orange);
}
.cs-lid__text {
  max-width: var(--csl-text-w);
  margin: 0;
  font-size: 16px;
  font-weight: 400;
  line-height: 20px;
  color: var(--csl-text);
}
.cs-lid__rule + .cs-lid__text { margin-top: 24px; }
.cs-lid__text + .cs-lid__text { margin-top: 20px; }
.cs-lid__text strong { font-weight: 800; }

.cs-lid__btn {
  display: inline-flex;
  align-items: center;
  gap: 9.6px;
  margin-top: 74.7px;
  padding: 15.2px 28.8px;
  border-radius: 12px;
  background: var(--csl-ink);
  color: #fff;
  font-size: 15.2px;
  font-weight: 700;
  line-height: normal;
  text-decoration: none;
  white-space: nowrap;
}
.cs-lid__btn:hover, .cs-lid__btn:focus-visible { color: #fff; filter: brightness(1.15); }

/* ============================================================ */
/* RESPONSIVO                                                   */
/* ============================================================ */
@media (max-width: 1399.98px) {
  .cs-lid__inner { padding-left: 48px; padding-right: 48px; column-gap: 96px; }
}
@media (max-width: 1247.98px) {
  .cs-lid__inner { column-gap: 64px; grid-template-columns: minmax(0, 425px) minmax(0, 1fr); }
  .cs-lid__media { width: 100%; }
}
@media (max-width: 991.98px) {
  .cs-lid__inner { grid-template-columns: minmax(0, 1fr); row-gap: 56px; padding: 72px 24px 80px; }
  .cs-lid__media { width: min(var(--csl-photo-w), calc(100% - 90px)); margin: 29px auto 0; }
  .cs-lid__content { padding-top: 0; }
  .cs-lid__text { max-width: 560px; }
  .cs-lid__btn { margin-top: 40px; }
}
@media (max-width: 767.98px) {
  .cs-lid__title { font-size: 32px; }
  .cs-lid__eyebrow { font-size: 20px; }
}
@media (max-width: 575.98px) {
  .cs-lid__inner { padding: 56px 20px 64px; }
  .cs-lid__title { font-size: 28px; }
  .cs-lid__btn { white-space: normal; }
}


/* ============================================================ */
/* 5/12 — VERTENTES — sec-vertentes 2973:2455                  */
/* origem: sections/vertentes.css                              */
/* ============================================================ */
/* ============================================================ */
/* SECTION                                                      */
/* ============================================================ */
.cs-vert {
  position: relative;
  font-family: var(--font-primary);
  background:
    radial-gradient(circle, var(--csv-dot) 1px, transparent 1.3px) 0 0 / 11px 11px,
    radial-gradient(ellipse 18% 14% at 40% 57%, #ffffff 0%, rgba(255,255,255,0) 100%),
    var(--csv-bg);
  overflow: hidden;
}
.cs-vert__inner {
  max-width: var(--csv-content-w);
  margin: 0 auto;
  padding: 104px 96px 112px;
  display: flex;
  flex-direction: column;
  gap: 25.6px;
}

/* topo: texto + pilha de camadas */
.cs-vert__top {
  display: grid;
  grid-template-columns: 514px 1fr;
  column-gap: 80px;
  min-height: 431px;
}
.cs-vert__eyebrow {
  margin: 28px 0 12px;
  font-size: 24px; font-weight: 800; line-height: normal;
  color: var(--csv-orange);
}
.cs-vert__title {
  margin: 0; max-width: 380px;
  font-size: 38px; font-weight: 800; line-height: normal;
  color: var(--csv-ink);
}
.cs-vert__rule {
  display: block; width: 26px; height: 2px; margin: 25px 0 24px;
  background: var(--csv-orange);
}
.cs-vert__lead { max-width: 430px; font-size: 14px; line-height: 20px; color: var(--csv-text); }
.cs-vert__lead p { margin: 0 0 20px; }
.cs-vert__lead strong { font-weight: 800; color: var(--csv-ink); }

.cs-vert__stack {
  list-style: none; margin: 21px 0 0; padding: 0;
  width: 280px; justify-self: center;
  display: flex; flex-direction: column; gap: 4px;
}
.cs-vert__layer {
  display: flex; flex-direction: column; align-items: flex-start; gap: 6.6px;
  width: 100%; text-align: left; cursor: pointer;
  padding: 20.8px 24px;
  background: rgba(255, 255, 255, 0.7);
  -webkit-backdrop-filter: blur(7px); backdrop-filter: blur(7px);
  border: 1px solid var(--csv-c); border-top-width: 3px;
  border-radius: 16px;
  box-shadow: 0 22px 42px -20px rgba(41, 35, 92, 0.28);
  font-family: inherit;
  transition: transform .25s ease, box-shadow .25s ease, background-color .25s ease;
}
.cs-vert__layer--gov { --csv-c: var(--csv-ink); }
.cs-vert__layer--est { --csv-c: var(--csv-teal); }
.cs-vert__layer--flx { --csv-c: var(--csv-violet); }
.cs-vert__layer--ino { --csv-c: var(--csv-orange); }
.cs-vert__layer:hover { transform: translateY(-2px); }
.cs-vert__layer.is-active { background: #fff; box-shadow: 0 22px 42px -20px rgba(41, 35, 92, 0.45); }
.cs-vert__layer:focus-visible { outline: 2px solid var(--csv-c); outline-offset: 3px; }
.cs-vert__layer-cat {
  font-family: 'Roboto Mono', monospace; font-size: 9.9px; letter-spacing: .6px;
  text-transform: uppercase; color: var(--csv-muted);
}
.cs-vert__layer-name { font-size: 15.2px; font-weight: 700; line-height: normal; color: var(--csv-ink); }

/* abas */
.cs-vert__tabs { display: flex; flex-wrap: wrap; justify-content: center; gap: 9.6px; }
.cs-vert__tab {
  padding: 12px 20.8px;
  font-family: inherit; font-size: 13.6px; font-weight: 600; line-height: 16px;
  color: var(--csv-ink);
  background: rgba(255, 255, 255, 0.6);
  border: 1px solid rgba(41, 35, 92, 0.12);
  border-radius: 12px; cursor: pointer;
  transition: background-color .2s ease, color .2s ease, box-shadow .2s ease;
}
.cs-vert__tab:hover { background: #fff; }
.cs-vert__tab.active {
  color: #fff; background: var(--csv-ink); border-color: var(--csv-ink);
  box-shadow: 0 12px 25px -12px rgba(41, 35, 92, 0.5);
}
.cs-vert__tab:focus-visible { outline: 2px solid var(--csv-orange); outline-offset: 2px; }

/* painel */
.cs-vert__panel {
  min-height: 220px;
  background: rgba(255, 255, 255, 0.75);
  -webkit-backdrop-filter: blur(8px); backdrop-filter: blur(8px);
  border: 1px solid rgba(255, 255, 255, 0.85);
  border-radius: 20px;
  box-shadow: 0 30px 60px -28px rgba(41, 35, 92, 0.32);
}
.cs-vert__pane {
  display: flex; gap: 35px;
  padding: 51.2px 44.8px 44.8px;
}
.cs-vert__pane-main, .cs-vert__pane-side { flex: 1 1 0; min-width: 0; }
.cs-vert__pane-main { padding-bottom: 52px; }
.cs-vert__pane-title { margin: 0 0 8.6px; font-size: 20.8px; font-weight: 700; line-height: 27px; color: var(--csv-ink); }
.cs-vert__pane-text { margin: 0; padding-top: 3px; font-size: 14px; line-height: 20px; color: var(--csv-text); max-width: 470px; }
.cs-vert__pane-label {
  margin: 0 0 14.4px;
  font-family: 'Roboto Mono', monospace; font-size: 10.6px; font-weight: 700; letter-spacing: .85px;
  text-transform: uppercase; color: var(--csv-orange);
}
.cs-vert__items { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 9.6px; }
.cs-vert__items li {
  padding: 9.6px 12.8px;
  font-size: 14px; line-height: 20px; color: var(--csv-ink);
  background: rgba(41, 35, 92, 0.05);
  border-left: 3px solid var(--csv-orange);
  border-radius: 8px;
}

/* CTA */
.cs-vert__cta { display: flex; justify-content: center; padding-top: 22.4px; }
.cs-vert__btn {
  display: inline-flex; align-items: center; gap: 9.6px;
  padding: 16px 30.4px;
  font-size: 15.2px; font-weight: 700; line-height: normal; text-decoration: none;
  color: #fff; background: var(--csv-orange);
  border-radius: 12px;
  box-shadow: 0 12px 28px -10px rgba(255, 128, 0, 0.5);
}
.cs-vert__btn:hover { color: #fff; }

/* ============================================================ */
/* RESPONSIVO                                                   */
/* ============================================================ */
@media (max-width: 1399.98px) {
  .cs-vert__inner { padding-left: 48px; padding-right: 48px; }
}
@media (max-width: 1247.98px) {
  .cs-vert__top { grid-template-columns: 1fr 280px; column-gap: 32px; }
}
@media (max-width: 991.98px) {
  .cs-vert__inner { padding-top: 72px; padding-bottom: 80px; }
  .cs-vert__top { grid-template-columns: 1fr; min-height: 0; gap: 40px; }
  .cs-vert__stack { margin-top: 0; }
  .cs-vert__layer:hover { transform: none; }
  .cs-vert__pane { flex-direction: column; gap: 28px; padding: 36px 28px; }
  .cs-vert__pane-main { padding-bottom: 0; }
}
@media (max-width: 767.98px) {
  .cs-vert__inner { padding-left: 20px; padding-right: 20px; }
  .cs-vert__eyebrow { font-size: 20px; }
  .cs-vert__title { font-size: 30px; }
  .cs-vert__stack { width: 100%; max-width: 320px; }
}
@media (max-width: 575.98px) {
  .cs-vert__tabs { gap: 8px; }
  .cs-vert__tab { flex: 1 1 calc(50% - 8px); padding-left: 12px; padding-right: 12px; }
  .cs-vert__pane { padding: 28px 20px; }
  .cs-vert__btn { width: 100%; justify-content: center; }
}


/* ============================================================ */
/* 6/12 — CICLO — sec-ciclo 2973:2518                          */
/* origem: sections/ciclo.css                                  */
/* ============================================================ */
/* ============================================================ */
/* SECTION                                                      */
/* ============================================================ */
.cs-cic {
  position: relative;
  min-height: 726px;
  font-family: var(--font-primary);
  background-color: #fff;
  /* grade de pontos de 11px (centro de cada célula), 13% navy */
  background-image: radial-gradient(circle at 5.5px 5.5px, var(--csc-dot) 0.5px, transparent 0.95px);
  background-size: 11px 11px;
}

.cs-cic__inner {
  max-width: var(--csc-inner-w);
  margin: 0 auto;
  padding: 72px 0 0;
}

.cs-cic__header { text-align: center; }
.cs-cic__title {
  max-width: 780px;
  margin: 0 auto;
  font-size: 41.6px;
  font-weight: 900;
  line-height: 49.92px;
  color: var(--csc-ink);
}
.cs-cic__rule {
  display: block;
  width: 26px;
  height: 2px;
  margin: 24px auto 0;
  background: var(--csc-orange);
}
.cs-cic__lead {
  max-width: 680px;
  margin: 36.4px auto 0;
  font-size: 16px;
  line-height: 20px;
  color: var(--csc-text);
}

/* Passos: 4 colunas (260,2px + 22,4px) ; trilha pontilhada atrás dos selos */
.cs-cic__steps {
  position: relative;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  column-gap: 22.4px;
  max-width: var(--csc-steps-w);
  margin: 24.6px auto 0;       /* selos em y=338 */
  padding: 0;
  list-style: none;
  counter-reset: none;
}
.cs-cic__steps::before {
  content: "";
  position: absolute;
  left: 0.68%;
  width: 94.5%;
  top: 25px;
  height: 2px;
  background: url("../img/consultoria/icons/ciclo-linha.svg") center / 100% 2px no-repeat;
  pointer-events: none;
}
.cs-cic__step { position: relative; }
.cs-cic__num {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 50px;
  height: 50px;
  box-sizing: border-box;
  border: 1px solid rgba(255, 255, 255, 0.9);
  border-radius: 16px;
  background: rgba(255, 255, 255, 0.75);
  -webkit-backdrop-filter: blur(5px);
  backdrop-filter: blur(5px);
  box-shadow: 0 12px 24px -12px rgba(41, 35, 92, 0.3);
  font-family: var(--csc-font-mono);
  font-size: 16.8px;
  font-weight: 700;
  color: var(--csc-ink);
}
.cs-cic__step-title {
  margin: 16px 0 0;
  font-size: 17.3px;
  font-weight: 700;
  line-height: 22.46px;
  color: var(--csc-ink);
}
.cs-cic__step-sub {
  margin: 6.4px 0 0;
  font-size: 13.6px;
  font-weight: 500;
  line-height: 19px;
  color: var(--csc-teal);
}
.cs-cic__step:nth-child(1) .cs-cic__step-sub { max-width: 193px; }
.cs-cic__step:nth-child(2) .cs-cic__step-sub { max-width: 237px; }
.cs-cic__step:nth-child(3) .cs-cic__step-sub { max-width: 234px; }
.cs-cic__step:nth-child(4) .cs-cic__step-sub { max-width: 239px; }
.cs-cic__more {
  display: inline-flex;
  align-items: center;
  gap: 5.6px;
  margin-top: 6.4px;
  padding-top: 3.2px;
  font-family: var(--csc-font-mono);
  font-size: 10.4px;
  letter-spacing: 0.624px;
  text-transform: uppercase;
  color: var(--csc-muted);
}
.cs-cic__more img { display: block; width: 11px; height: 11px; }

/* ============================================================ */
/* RESPONSIVO                                                   */
/* ============================================================ */
@media (max-width: 1399.98px) {
  .cs-cic__inner { padding-left: 32px; padding-right: 32px; }
}
@media (max-width: 1247.98px) {
  .cs-cic__title { font-size: 36px; line-height: 43px; }
  .cs-cic__step-sub { max-width: none !important; }
}
@media (max-width: 991.98px) {
  .cs-cic { min-height: 0; padding-bottom: 72px; }
  .cs-cic__steps { grid-template-columns: repeat(2, minmax(0, 1fr)); row-gap: 40px; column-gap: 32px; }
  .cs-cic__steps::before { display: none; }
}
@media (max-width: 767.98px) {
  .cs-cic__title { font-size: 30px; line-height: 37px; }
}
@media (max-width: 575.98px) {
  .cs-cic__inner { padding-left: 20px; padding-right: 20px; }
  .cs-cic__title { font-size: 26px; line-height: 32px; }
  .cs-cic__steps { grid-template-columns: minmax(0, 1fr); }
}


/* ============================================================ */
/* 7/12 — MODELO DE ATUAÇÃO — sec-modelo-atuacao 2973:2848     */
/* origem: sections/modelo-atuacao.css                         */
/* ============================================================ */
/* ============================================================ */
/* SECTION: MODELO DE ATUAÇÃO                                  */
/* ============================================================ */
.cs-mod {
  position: relative;
  overflow: hidden;
  isolation: isolate;
  min-height: 1467px;
  padding: 105px 0 89px;                /* eyebrow em y=105; CTA termina 89px antes da base */
  background-color: var(--csm-bg);
  font-family: var(--font-primary);
  color: var(--csm-white);
  box-sizing: border-box;
}
.cs-mod *, .cs-mod *::before, .cs-mod *::after { box-sizing: border-box; }
/* reset com peso de 1 classe: vence o reboot do Bootstrap e perde para as regras abaixo */
.cs-mod :where(p, h2, h3, ol) { margin: 0; }

/* Anéis claros = faixas onde fract(3·d + 0,74) < 0,5 (bordas duras, como o smoothstep
   de ~1px do shader); entre as paradas, o alfa segue a exponencial medida. */
.cs-mod__rings {
  position: absolute;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  background-image: radial-gradient(circle at var(--csm-rings-x) var(--csm-rings-y),
    rgba(255, 255, 255, 0) 0,
    rgba(255, 255, 255, 0) 407px,
    rgba(255, 255, 255, 0.1138) 408px,
    rgba(255, 255, 255, 0.0925) 600px,
    rgba(255, 255, 255, 0.0745) 800px,
    rgba(255, 255, 255, 0.06) 1000px,
    rgba(255, 255, 255, 0.049) 1187px,
    rgba(255, 255, 255, 0) 1188px,
    rgba(255, 255, 255, 0) 1968px,
    rgba(255, 255, 255, 0.021) 1969px,
    rgba(255, 255, 255, 0.0164) 2200px,
    rgba(255, 255, 255, 0.0125) 2450px,
    rgba(255, 255, 255, 0.009) 2750px,
    rgba(255, 255, 255, 0) 2751px,
    rgba(255, 255, 255, 0) 3530px,
    rgba(255, 255, 255, 0.0039) 3531px,
    rgba(255, 255, 255, 0.0017) 4310px,
    rgba(255, 255, 255, 0) 4311px);
}

/* 1160px de conteúdo (380→1540 no 1920 = fileira dos papéis) */
.cs-mod__container {
  position: relative;
  max-width: 1208px;
  margin: 0 auto;
  padding: 0 24px;
}

/* ---------- Cabeçalho ---------- */
/* 587→1397 no 1920: bloco de 810px cujo centro (992) fica 32px à direita do eixo */
.cs-mod__head {
  position: relative;
  left: 32px;
  display: flex;
  align-items: flex-start;
  max-width: 810px;
  margin: 0 auto;
}

.cs-mod__head-title {
  flex: 0 0 330px;                      /* 2973:2851 w=330 */
}

.cs-mod__eyebrow {
  font-size: 0.8125rem;                 /* 13px */
  font-weight: 700;
  line-height: normal;
  letter-spacing: 1.56px;
  text-transform: uppercase;
  color: var(--csm-orange);
}

.cs-mod__title {
  font-size: 2.375rem;                  /* 38px — H2 ExtraBold */
  font-weight: 800;
  line-height: normal;                  /* "100" no estilo = normal (44,5px) */
  color: var(--csm-white);
}

/* quebra de parágrafo/linha que o Figma traz explícita */
.cs-mod__line { display: block; }

/* parágrafos começam em y=140 (35px abaixo do eyebrow); 15px entre eles */
.cs-mod__head-text {
  flex: 0 1 480px;
  padding-top: 35px;
}

.cs-mod__lead {
  max-width: 480px;                     /* 2973:2853 w=480 */
  font-size: 1rem;                      /* 16px — P2 */
  line-height: 20px;
  color: var(--csm-lead);
}
.cs-mod__lead + .cs-mod__lead { margin-top: 15px; }
.cs-mod__lead--narrow { max-width: 459px; } /* 2973:2854 w=459 */

/* ---------- Diagrama do ciclo ---------- */
/* Região 2973:2855: 526→1446 × 354→893 no 1920 (920 × 539); centro 26px à direita do eixo.
   Topo do cabeçalho em 105 → maior bloco termina em 275 → 79px até a região. */
.cs-mod__cycle {
  position: relative;
  left: 26px;
  width: 920px;
  min-height: 539px;
  margin: 79px auto 0;
}

/* SVG 2973:2856: 24px abaixo do topo da região, arcos com vãos onde ficam os cards */
.cs-mod__cycle-art {
  position: absolute;
  top: 24px;
  left: 0;
  width: 920px;
  height: 515px;
  pointer-events: none;
}

/* 2973:2858: x=345, y=246, w=230 */
.cs-mod__cycle-label {
  position: absolute;
  top: 246px;
  left: 345px;
  width: 230px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6px;
  text-align: center;
}

.cs-mod__kicker {
  display: block;
  font-size: 0.75rem;                   /* 12px */
  font-weight: 700;
  line-height: normal;
  letter-spacing: 1.2px;
  text-transform: uppercase;
  color: var(--csm-orange);
}

.cs-mod__cycle-sub {
  display: block;
  font-size: 0.84375rem;                /* 13.5px */
  line-height: 19.58px;
  color: var(--csm-muted);
}

.cs-mod__steps {
  list-style: none;
  padding: 0;
}

/* Cards: Button 2973:2865 (pt16 px18 pb26, gap 7, raio 14) */
.cs-mod__step {
  position: absolute;
  width: 230px;
  display: flex;
  flex-direction: column;
  gap: 7px;
  padding: 16px 18px 26px;
  background-color: var(--csm-card);
  border: 1px solid var(--csm-border);
  border-radius: 14px;
}

/* Posições do Figma (lista começa 24px abaixo do topo da região) */
.cs-mod__step--1 { left: -14px; top: 70px; }       /* 2973:2882 y=46  */
.cs-mod__step--2 { left: 572px; top: 52.87px; }    /* 2973:2864 y=28,87 */
.cs-mod__step--3 { left: 624px; top: 352.87px; }   /* 2973:2870 y=328,87 */
.cs-mod__step--4 { left: 119px; top: 418.87px; }   /* 2973:2876 y=394,87 */

.cs-mod__step-num {
  display: block;
  font-size: 0.78125rem;                /* 12.5px */
  font-weight: 700;
  line-height: normal;
  letter-spacing: 0.75px;
  color: var(--csm-orange);
}

.cs-mod__step-title {
  font-size: 0.90625rem;                /* 14.5px */
  font-weight: 700;
  line-height: 19.58px;
  color: var(--csm-white);
}

.cs-mod__step-text {
  padding-top: 3.19px;
  font-size: 0.8375rem;                 /* 13.4px */
  line-height: 20.83px;
  color: var(--csm-step-text);
}

/* Card 01 em destaque (2973:2883): fundo mais claro, borda laranja 40%, sombra,
   tudo ~3% maior (309px, 12.9/14.9px) e com a descrição aberta */
.cs-mod__step--destaque {
  width: 309px;
  gap: 7.1px;
  padding: 16.51px 18.57px;
  background-color: var(--csm-card-hi);
  border-color: var(--csm-border-hi);
  box-shadow: 0 18px 46px -18px rgba(0, 0, 0, 0.6);
}
.cs-mod__step--destaque .cs-mod__step-num {
  font-size: 0.80625rem;                /* 12.9px */
  letter-spacing: 0.7725px;
}
.cs-mod__step--destaque .cs-mod__step-title {
  font-size: 0.93125rem;                /* 14.9px */
  line-height: 20.167px;
}

/* Acabamento da conversão (não está no Figma): realce discreto no hover */
@media (hover: hover) and (pointer: fine) {
  .cs-mod__step:not(.cs-mod__step--destaque):hover {
    border-color: var(--csm-border-hi);
    background-color: var(--csm-card-hi);
  }
}

/* ---------- Papéis + elo ---------- */
/* Container 2973:2891: topo dos cards em y=1010 → 117px abaixo da região (893) */
.cs-mod__roles {
  display: flex;
  align-items: stretch;
  gap: 32px;
  margin-top: 117px;
}

/* 2973:2892: pt/px 34, pb 58,08, gap 14, raio 18 → 237px de altura */
.cs-mod__role {
  flex: 1 1 0;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 14px;
  padding: 34px 34px 58px;
  background-color: var(--csm-card);
  border: 1px solid var(--csm-border);
  border-radius: 18px;
}

.cs-mod__role-eyebrow {
  font-size: 0.78125rem;                /* 12.5px */
  font-weight: 700;
  line-height: normal;
  letter-spacing: 1.25px;
  text-transform: uppercase;
  color: var(--csm-orange);
}
.cs-mod__role-eyebrow--org { color: var(--csm-teal); }

.cs-mod__role-title {
  padding-bottom: 1px;
  font-size: 1.4375rem;                 /* 23px */
  font-weight: 700;
  line-height: normal;
  color: var(--csm-white);
}

.cs-mod__role-text {
  font-size: 0.90625rem;                /* 14.5px (14.4 no card da organização: ruído) */
  line-height: 24.65px;
  color: var(--csm-muted);
}

/* 2973:2899: coluna de 192 × 237; elipse tracejada 192×152 com o centro 34,5px acima
   do meio (topo em 8px); rótulo em 170 e subtítulo em 195 */
.cs-mod__link {
  flex: 0 0 192px;
  display: flex;
  flex-direction: column;
  align-items: center;
  min-height: 237px;
  padding-top: 8px;
  text-align: center;
}

.cs-mod__link-art {
  position: relative;
  width: 192px;
  height: 152px;
}
.cs-mod__link-art img {
  display: block;
  width: 192px;
  height: 152px;
}

.cs-mod__link-label {
  display: flex;
  flex-direction: column;
  align-items: center;
  margin-top: 10px;
}

.cs-mod__link-sub {
  display: block;
  margin-top: 11px;
  font-size: 0.8125rem;                 /* 13px — P4 */
  line-height: 16px;
  color: var(--csm-muted);
}

/* Pontos 2973:2904/2906: no Figma ficam em opacity 0 nas pontas dos arcos (seta do
   fluxo). Aqui piscam alternados: fim do arco de cima → fim do arco de baixo. */
.cs-mod__dot {
  position: absolute;
  width: 8.43px;
  height: 8.43px;
  border-radius: 50%;
  background-color: var(--csm-orange);
  box-shadow: 0 0 8px 1px rgba(245, 130, 31, 0.4);
  opacity: 0;
  animation: csm-pulso 3.2s ease-in-out infinite;
}
.cs-mod__dot--fim    { left: 174.78px; top: 50.79px; }
.cs-mod__dot--inicio { left: 2.77px;   top: 88.78px; animation-delay: 1.6s; }

@keyframes csm-pulso {
  0%, 55%, 100% { opacity: 0; }
  15%, 35%      { opacity: 1; }
}

/* ---------- CTA ---------- */
/* 2973:2919: y=1331, 84px abaixo dos papéis (1247); botão 379 × 47 centrado */
.cs-mod__cta-wrap {
  display: flex;
  justify-content: center;
  margin-top: 82px;                     /* 84 no Figma; os papéis renderizam 239 (não 237) por line-height normal */
}

.cs-mod__cta {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  min-height: 47px;
  padding: 0 26px;
  border-radius: 999px;
  background-color: var(--csm-orange);
  box-shadow: 0 14px 32px -14px rgba(245, 130, 31, 0.55);
  color: var(--csm-cta-ink);
  font-size: 0.90625rem;                /* 14.5px */
  font-weight: 700;
  line-height: normal;
  text-decoration: none;
  transition: transform 0.25s ease, box-shadow 0.25s ease;
}
/* texto do botão (já com o slide-up do mg-btn): 2973:2922 min-w 302,17 */
.cs-mod__cta .mg-btn__swap:not(.mg-btn__icon-wrap) { min-width: 302px; }

.cs-mod__cta:hover,
.cs-mod__cta:focus-visible {
  color: var(--csm-cta-ink);
  transform: translateY(-2px);
  box-shadow: 0 18px 36px -14px rgba(245, 130, 31, 0.7);
}
.cs-mod__cta:focus-visible {
  outline: 2px solid var(--csm-white);
  outline-offset: 3px;
}


/* ============================================================ */
/* RESPONSIVO                                                  */
/* ============================================================ */
@media (prefers-reduced-motion: reduce) {
  .cs-mod__dot { animation: none; }
  .cs-mod__cta { transition-duration: 1ms; }
  .cs-mod__cta:hover, .cs-mod__cta:focus-visible { transform: none; }
}

/* sem folga para os deslocamentos de 26/32px do 1920 */
@media (max-width: 1247.98px) {
  .cs-mod__head,
  .cs-mod__cycle { left: 0; }
}

/* Diagrama vira lista vertical; cabeçalho e papéis empilham */
@media (max-width: 991.98px) {
  .cs-mod {
    min-height: 0;
    padding: 88px 0 80px;
  }

  .cs-mod__head {
    flex-direction: column;
    max-width: 640px;
  }
  .cs-mod__head-title { flex: none; max-width: 330px; }
  .cs-mod__head-text { flex: none; padding-top: 20px; }

  .cs-mod__cycle {
    width: auto;
    max-width: 560px;
    min-height: 0;
    margin-top: 56px;
    display: flex;
    flex-direction: column;
  }
  .cs-mod__cycle-art { display: none; }

  .cs-mod__cycle-label {
    position: static;
    width: auto;
    margin-bottom: 24px;
  }

  /* trilho vertical do ciclo, por trás dos cards */
  .cs-mod__steps {
    position: relative;
    display: flex;
    flex-direction: column;
    gap: 16px;
  }
  .cs-mod__steps::before {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    left: 36px;
    border-left: 1px solid var(--csm-rail);
  }

  .cs-mod__step,
  .cs-mod__step--destaque {
    position: relative;
    left: auto;
    top: auto;
    width: 100%;
  }
  .cs-mod__step .cs-mod__line { display: inline; }

  .cs-mod__roles {
    flex-direction: column;
    align-items: stretch;
    gap: 24px;
    max-width: 640px;
    margin: 72px auto 0;
  }
  .cs-mod__role { flex: none; }
  .cs-mod__link { flex: none; min-height: 0; padding-top: 0; }

  .cs-mod__cta-wrap { margin-top: 56px; }
}

@media (max-width: 575.98px) {
  .cs-mod { padding: 64px 0; }
  .cs-mod__container { padding: 0 16px; }

  .cs-mod__title { font-size: 1.875rem; }  /* 30px */
  .cs-mod__lead { font-size: 0.9375rem; }  /* 15px */

  .cs-mod__cycle { margin-top: 44px; }
  .cs-mod__steps::before { left: 28px; }

  .cs-mod__roles { margin-top: 56px; gap: 20px; }
  .cs-mod__role { padding: 26px 22px 32px; }
  .cs-mod__role-title { font-size: 1.25rem; }  /* 20px */

  .cs-mod__cta {
    padding: 13px 22px;
    text-align: center;
  }
  .cs-mod__cta .mg-btn__swap:not(.mg-btn__icon-wrap) { min-width: 0; }
}


/* ============================================================ */
/* 8/12 — SETORES — sec-setores 2973:2643                      */
/* origem: sections/setores.css                                */
/* ============================================================ */
/* ============================================================ */
/* SECTION                                                      */
/* ============================================================ */
.cs-set {
  position: relative;
  font-family: var(--font-primary);
  background:
    radial-gradient(circle, var(--cst-dot) 1px, transparent 1.3px) 0 0 / 11px 11px,
    var(--cst-bg);
}
.cs-set__inner {
  max-width: var(--cst-content-w);
  margin: 0 auto;
  padding: 105px 96px 90px;
  display: flex; flex-direction: column; align-items: center; gap: 38.4px;
}

/* cabeçalho */
.cs-set__header { max-width: 760px; text-align: center; display: flex; flex-direction: column; align-items: center; }
.cs-set__title {
  margin: 0; font-size: 41.6px; font-weight: 900; line-height: 49.92px;
  color: var(--cst-orange);
}
.cs-set__title span { display: block; color: var(--cst-title); }
.cs-set__rule { display: block; width: 64px; height: 3px; margin: 19px 0 20px; border-radius: 100px; background: var(--cst-orange); }
.cs-set__lead { margin: 0; max-width: 760px; font-size: 16.5px; line-height: 28.84px; color: #000; }

/* grade */
.cs-set__grid {
  list-style: none; margin: 0; padding: 17.6px 0 0; width: 100%;
  display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 17.6px;
}
.cs-set__card {
  position: relative; overflow: hidden; isolation: isolate;
  aspect-ratio: 364.27 / 282.3;
  border-radius: var(--cst-radius);
  background: var(--cst-ink);
  outline: none;
}
.cs-set__img {
  position: absolute; inset: 0; width: 100%; height: 100%;
  object-fit: cover; object-position: center;
  transition: transform .6s ease;
}
.cs-set__card:hover .cs-set__img,
.cs-set__card:focus-within .cs-set__img { transform: scale(1.04); }
.cs-set__card:focus-visible { box-shadow: 0 0 0 3px var(--cst-orange); }

/* estado padrão: véu + ponto + nome */
.cs-set__over {
  position: absolute; inset: 0;
  display: flex; flex-direction: column; justify-content: space-between;
  padding: 25.6px;
  background: linear-gradient(180deg, rgba(28, 24, 70, .15) 0%, rgba(28, 24, 70, .78) 100%);
  transition: opacity .3s ease;
  pointer-events: none;
}
.cs-set__dot {
  width: 14px; height: 14px; border-radius: 50%;
  background: rgba(255, 255, 255, .6);
  box-shadow: 0 0 0 3px rgba(255, 255, 255, .15);
}
.cs-set__name {
  margin: 0 0 5px; font-size: 17.9px; font-weight: 800; line-height: 22.94px;
  color: #fff; text-shadow: 0 2px 8px rgba(0, 0, 0, .35);
}
.cs-set__hint {
  margin: 0; font-family: 'Roboto Mono', monospace; font-size: 9.9px; letter-spacing: .6px;
  text-transform: uppercase; color: rgba(255, 255, 255, .7);
}

/* estado hover/foco: painel branco com descrição + link */
.cs-set__more {
  position: absolute; inset: 0; z-index: 2;
  display: flex; flex-direction: column; justify-content: space-between; gap: 12px;
  padding: 25.6px; background: #fff;
  opacity: 0; transform: translateY(6px);
  transition: opacity .3s ease, transform .3s ease;
  pointer-events: none;
}
.cs-set__card:hover .cs-set__more,
.cs-set__card:focus-within .cs-set__more { opacity: 1; transform: none; pointer-events: auto; }
.cs-set__card:hover .cs-set__over,
.cs-set__card:focus-within .cs-set__over { opacity: 0; }
.cs-set__more-title { margin: 0 0 9.6px; font-size: 15.7px; font-weight: 800; line-height: normal; color: var(--cst-ink); }
.cs-set__more-text { margin: 0; font-size: 13.3px; line-height: 20.58px; color: var(--cst-muted); max-height: 103px; overflow: hidden; }
.cs-set__more-link {
  display: inline-flex; align-items: center; gap: 6.4px;
  font-size: 13.1px; font-weight: 700; line-height: normal; text-decoration: none; color: var(--cst-teal);
}
.cs-set__more-link:hover { color: var(--cst-teal); }

/* CTA */
.cs-set__cta { display: flex; justify-content: center; width: 100%; }
.cs-set__btn {
  display: inline-flex; align-items: center; gap: 9.6px;
  padding: 14.4px 28.8px;
  font-size: 14.7px; font-weight: 700; line-height: normal; text-decoration: none;
  color: var(--cst-ink); background: transparent;
  border: 1px solid var(--cst-ink); border-radius: 12px;
  transition: background-color .2s ease, color .2s ease;
}
.cs-set__btn:hover { background: var(--cst-ink); color: #fff; }

/* ============================================================ */
/* RESPONSIVO                                                   */
/* ============================================================ */
@media (max-width: 1399.98px) {
  .cs-set__inner { padding-left: 48px; padding-right: 48px; }
}
@media (max-width: 1247.98px) {
  .cs-set__title { font-size: 36px; line-height: 44px; }
}
@media (max-width: 991.98px) {
  .cs-set__inner { padding-top: 72px; padding-bottom: 80px; }
  .cs-set__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 767.98px) {
  .cs-set__inner { padding-left: 20px; padding-right: 20px; }
  .cs-set__title { font-size: 30px; line-height: 38px; }
  .cs-set__lead { font-size: 15px; line-height: 25px; }
  .cs-set__grid { grid-template-columns: 1fr; }
}
@media (max-width: 575.98px) {
  .cs-set__btn { width: 100%; justify-content: center; }
}


/* ============================================================ */
/* 9/12 — CASES — sec-cases 2973:2575                          */
/* origem: sections/cases.css                                  */
/* ============================================================ */
/* ============================================================ */
/* SECTION                                                      */
/* ============================================================ */
.cs-cases {
  position: relative; overflow: hidden;
  font-family: var(--font-primary); color: #fff;
  /* aproxima o shader "anéis concentrados" (20%): discos claros a partir do canto sup. esquerdo */
  background:
    radial-gradient(circle at 0 0,
      rgba(255,255,255,.22) 0, rgba(255,255,255,.15) 38.2vw, rgba(255,255,255,0) calc(38.2vw + 1px),
      rgba(255,255,255,0) 85.5vw, rgba(255,255,255,.04) calc(85.5vw + 1px), rgba(255,255,255,.10) 140vw),
    var(--csk-bg);
}
.cs-cases__inner {
  max-width: var(--csk-content-w); margin: 0 auto;
  padding: 84px 96px 104px;
  display: flex; flex-direction: column; align-items: center;
}

/* cabeçalho */
.cs-cases__header { display: flex; flex-direction: column; align-items: center; text-align: center; }
.cs-cases__eyebrow { margin: 0 0 4.5px; font-size: 24px; font-weight: 800; line-height: normal; color: var(--csk-orange); }
.cs-cases__title { margin: 0; max-width: 452px; font-size: 38px; font-weight: 800; line-height: normal; color: #fff; }
.cs-cases__rule { display: block; width: 64px; height: 3px; margin: 23px 0 21px; border-radius: 100px; background: var(--csk-orange); }
.cs-cases__lead { margin: 0; max-width: 665px; font-size: 16px; line-height: 20px; color: #fff; }

/* carrossel */
.cs-cases__carousel { width: 100%; margin-top: 83px; display: flex; flex-direction: column; align-items: center; gap: 41.6px; }
.cs-cases__track {
  list-style: none; margin: 0; padding: 9.6px 0 8px; width: 100%;
  display: flex; gap: var(--csk-gap);
  overflow-x: auto; scroll-snap-type: x mandatory; scroll-behavior: smooth;
  -webkit-overflow-scrolling: touch; scrollbar-width: none; overscroll-behavior-x: contain;
}
.cs-cases__track::-webkit-scrollbar { display: none; }
.cs-cases__card {
  flex: 0 0 var(--csk-card-w); scroll-snap-align: start;
  display: flex; flex-direction: column; overflow: hidden;
  background: var(--csk-card-bg); border: 1px solid var(--csk-card-border); border-radius: 10px;
}
.cs-cases__thumb {
  position: relative; display: block; overflow: hidden; aspect-ratio: 353.41 / 198.78;
  color: inherit; text-decoration: none; border-radius: 0;
}
.cs-cases__thumb > img:first-child {
  position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover;
  filter: saturate(.4); transition: transform .5s ease;
}
.cs-cases__thumb:hover > img:first-child { transform: scale(1.05); }
.cs-cases__thumb::before,
.cs-cases__thumb::after { content: ''; position: absolute; inset: 0; pointer-events: none; }
.cs-cases__thumb::before { background: linear-gradient(160deg, rgba(41,35,92,.6) 0%, rgba(255,166,38,.15) 100%); mix-blend-mode: hard-light; }
.cs-cases__thumb::after { background: linear-gradient(180deg, rgba(22,18,49,0) 40%, rgba(22,18,49,.85) 100%); }
.cs-cases__tag {
  position: absolute; z-index: 1; left: 16px; top: 17px;
  font-family: 'Roboto Mono', monospace; font-size: 9.6px; letter-spacing: .58px; line-height: normal;
  text-transform: uppercase; color: var(--csk-amber);
}
.cs-cases__play {
  position: absolute; z-index: 1; left: 19px; bottom: 17.6px;
  width: 42px; height: 42px; border-radius: 50%; background: var(--csk-orange);
  display: flex; align-items: center; justify-content: center; padding-left: 2px;
  transition: transform .25s ease;
}
.cs-cases__thumb:hover .cs-cases__play { transform: scale(1.1); }
.cs-cases__thumb:focus-visible { outline: 2px solid var(--csk-orange); outline-offset: -2px; }
.cs-cases__body { padding: 17.6px 20.8px 22.4px; display: flex; flex-direction: column; gap: 5.6px; }
.cs-cases__name { margin: 0; font-size: 17.6px; font-weight: 900; line-height: normal; color: #fff; }
.cs-cases__text { margin: 0; font-size: 13.8px; line-height: 20.64px; color: var(--csk-text-soft); }

.cs-cases__nav { display: flex; gap: 9.6px; }
.cs-cases__arrow {
  width: 44px; height: 44px; padding: 0; border-radius: 50%; cursor: pointer;
  display: flex; align-items: center; justify-content: center;
  background: transparent; border: 1px solid #fff;
  transition: background-color .2s ease, opacity .2s ease;
}
.cs-cases__arrow:hover { background: rgba(255, 255, 255, .14); }
.cs-cases__arrow:focus-visible { outline: 2px solid var(--csk-orange); outline-offset: 3px; }
.cs-cases__arrow[aria-disabled="true"] { opacity: .35; cursor: default; }

/* CTA */
.cs-cases__cta { margin-top: 41.6px; display: flex; justify-content: center; }
.cs-cases__btn {
  display: inline-flex; align-items: center; gap: 9.6px;
  padding: 15.2px 28.8px;
  font-size: 15.2px; font-weight: 700; line-height: normal; text-decoration: none;
  color: #fff; background: var(--csk-orange); border-radius: 12px;
}
.cs-cases__btn:hover { color: #fff; }

/* ============================================================ */
/* RESPONSIVO                                                   */
/* ============================================================ */
@media (max-width: 1399.98px) {
  .cs-cases__inner { padding-left: 48px; padding-right: 48px; }
}
@media (max-width: 1247.98px) {
  .cs-cases__inner { padding-left: 32px; padding-right: 32px; }
}
@media (max-width: 991.98px) {
  .cs-cases__inner { padding-top: 72px; padding-bottom: 80px; }
  .cs-cases__carousel { margin-top: 56px; }
}
@media (max-width: 767.98px) {
  .cs-cases__inner { padding-left: 20px; padding-right: 20px; }
  .cs-cases__eyebrow { font-size: 20px; }
  .cs-cases__title { font-size: 30px; }
  .cs-cases__lead { font-size: 15px; line-height: 22px; }
  .cs-cases__card { flex-basis: min(var(--csk-card-w), 82vw); }
}
@media (max-width: 575.98px) {
  .cs-cases__btn { width: 100%; justify-content: center; }
}


/* ============================================================ */
/* 10/12 — QUIZ — sec-quiz 2973:2636                           */
/* origem: sections/quiz.css                                   */
/* ============================================================ */
/* ============================================================ */
/* SECTION                                                      */
/* ============================================================ */
.cs-quiz {
  min-height: 507px;
  padding: 100px 24px 72px;
  font-family: var(--font-primary);
  background-color: #fff;
  background-image: radial-gradient(circle at 5.5px 5.5px, var(--csq-dot) 0.5px, transparent 0.95px);
  background-size: 11px 11px;
}

.cs-quiz__card {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 22px;
  max-width: var(--csq-card-w);
  min-height: 292px;
  margin: 0 auto;
  padding: 56px 60px;
  box-sizing: border-box;
  border-radius: 26px;
  background: linear-gradient(-66.163deg, var(--csq-lilac) 1.3484%, var(--csq-navy) 94.815%);
  box-shadow: 5px 29px 46.5px -5px rgba(0, 0, 0, 0.23);
  text-align: center;
  color: #fff;
}
.cs-quiz__title {
  margin: 0;
  font-size: 38px;
  font-weight: 800;
  line-height: normal;
  margin-bottom: 1px;
  color: #fff;
}
.cs-quiz__text {
  max-width: 648px;
  margin: 0;
  font-size: 16px;
  line-height: 20px;
  color: rgba(255, 255, 255, 0.82);
}
.cs-quiz__btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 52px;
  box-sizing: border-box;
  padding: 12.06px 26px 12.94px;
  border: 1px solid transparent;
  border-radius: 12px;
  background: var(--csq-orange);
  box-shadow: 0 14px 15px rgba(255, 128, 0, 0.28);
  color: #fff;
  font-size: 15.4px;
  font-weight: 700;
  line-height: 24.88px;
  text-decoration: none;
}
.cs-quiz__btn:hover, .cs-quiz__btn:focus-visible { color: #fff; filter: brightness(1.06); }

/* ============================================================ */
/* RESPONSIVO                                                   */
/* ============================================================ */
@media (max-width: 1247.98px) {
  .cs-quiz__title { font-size: 34px; }
}
@media (max-width: 991.98px) {
  .cs-quiz { min-height: 0; padding-top: 72px; padding-bottom: 88px; }
  .cs-quiz__card { padding: 48px 40px; }
  .cs-quiz__title { font-size: 30px; }
}
@media (max-width: 575.98px) {
  .cs-quiz { padding-left: 16px; padding-right: 16px; }
  .cs-quiz__card { padding: 40px 24px; }
  .cs-quiz__title { font-size: 26px; }
}


/* ============================================================ */
/* 11/12 — CONTATO — sec-contato 2973:2766                     */
/* origem: sections/contato.css                                */
/* ============================================================ */
/* ============================================================ */
/* SECTION: CONTATO                                            */
/* ============================================================ */
.cs-cont {
  position: relative;
  overflow: hidden;
  background-color: var(--csn-bg);
  min-height: 654px;
  padding: 86px 24px 87px;
  font-family: var(--font-primary);
  color: var(--csn-white);
  box-sizing: border-box;
}
.cs-cont *, .cs-cont *::before, .cs-cont *::after { box-sizing: border-box; }

/* Arcos: arte em % da seção (deforma de propósito, como o shader em uv normalizado) */
.cs-cont__arcs {
  position: absolute;
  inset: 0;
  background: url("../img/consultoria/contato-arcos.webp") center / 100% 100% no-repeat;
  opacity: var(--csn-arcs-opacity);
  pointer-events: none;
}

.cs-cont__container {
  position: relative;
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  max-width: 1008px;                  /* 456 → 1464 no frame 1920 */
  margin: 0 auto;
}

/* --- Coluna esquerda --- */
.cs-cont__intro {
  flex: 0 0 380px;
  max-width: 380px;
  margin-top: 40px;
}

.cs-cont__title {
  margin: 0;
  font-size: 2.5rem;                  /* 40px */
  font-weight: 800;
  line-height: 48px;
  letter-spacing: 0;
  color: var(--csn-accent);
}

.cs-cont__rule {
  display: block;
  width: 64px;
  height: 3px;
  margin: 24px 0 26px;
  background: var(--csn-accent);
}

.cs-cont__text {
  margin: 0 0 20px;
  font-size: 0.875rem;                /* 14px */
  font-weight: 400;
  line-height: 20px;
  color: var(--csn-white);
  max-width: 360px;
}
.cs-cont__text:last-child { margin-bottom: 0; }

/* --- Card --- */
.cs-cont__card {
  position: relative;
  flex: 0 0 467px;
  width: 467px;
  max-width: 100%;
  background: var(--csn-white);
  border-left: 6px solid var(--csn-accent);
  border-radius: 14px;
  box-shadow: 0 30px 60px -28px rgba(41, 35, 92, 0.3);
  padding: 0 42px 42px 36px;
}

.cs-cont__card-title {
  margin: 0 0 23px -8px;
  padding-top: 22px;
  font-size: 1.125rem;                /* 18px */
  font-weight: 800;
  line-height: 48px;
  text-transform: uppercase;
  color: var(--csn-ink);
  white-space: nowrap;
}

.cs-cont__form { display: block; }
.cs-cont__field { min-width: 0; }

.cs-cont__row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0 3px;
  margin-top: 20px;
}
.cs-cont__row--first { margin-top: 0; }
.cs-cont__field--solo { margin-top: 20px; }

.cs-cont__label {
  display: block;
  margin: 0 0 8px;
  font-size: 0.8125rem;               /* 13px */
  font-weight: 600;
  line-height: 15px;
  color: var(--csn-navy);
}

.cs-cont__input {
  display: block;
  width: 100%;
  height: 47px;
  background: var(--csn-white);
  border: 1px solid var(--csn-input-border);
  border-radius: 4px;
  padding: 0 12px;
  font-family: var(--font-primary);
  font-size: 0.9375rem;               /* 15px */
  color: var(--csn-input-text);
}
.cs-cont__input::placeholder { color: var(--csn-placeholder); opacity: 1; }
.cs-cont__input:focus {
  outline: 2px solid var(--csn-accent);
  outline-offset: -1px;
}

.cs-cont__submit {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  width: 100%;
  height: 55px;
  margin-top: 20px;
  background: var(--csn-accent);
  color: var(--csn-white);
  border: 0;
  border-radius: 12px;
  font-family: var(--font-primary);
  font-size: 1rem;                    /* 16px */
  font-weight: 700;
  line-height: normal;
  cursor: pointer;
  transition: filter 0.2s;
}
.cs-cont__submit:hover { filter: brightness(0.93); }

.cs-cont__note {
  margin: 9px 0 0;
  text-align: center;
  font-size: 0.75rem;                 /* 12px */
  line-height: 1.2;
  color: var(--csn-note);
}


/* ============================================================ */
/* RESPONSIVO                                                  */
/* ============================================================ */
@media (max-width: 1399.98px) {
  .cs-cont__container { max-width: 960px; }
}

@media (max-width: 1247.98px) {
  .cs-cont__intro { flex-basis: 340px; max-width: 340px; }
}

@media (max-width: 991.98px) {
  .cs-cont { min-height: 0; padding: 72px 24px; }
  .cs-cont__container { flex-direction: column; align-items: stretch; gap: 40px; max-width: 560px; }
  .cs-cont__intro { flex: none; max-width: 100%; margin-top: 0; }
  .cs-cont__card { flex: none; width: 100%; padding: 0 24px 28px 24px; }
  .cs-cont__card-title { margin: 0; padding: 22px 0 14px; line-height: 1.3; white-space: normal; }
}

@media (max-width: 767.98px) {
  .cs-cont__title { font-size: 2rem; line-height: 38px; }
}

@media (max-width: 575.98px) {
  .cs-cont { padding: 56px 16px; }
  .cs-cont__title { font-size: 1.75rem; line-height: 34px; }
  .cs-cont__row { grid-template-columns: 1fr; gap: 20px 0; }
  .cs-cont__field--solo { margin-top: 20px; }
  .cs-cont__card { padding: 0 16px 24px 16px; }
}


/* ============================================================ */
/* 12/12 — FAQ — sec-faq 2974:2                                */
/* origem: sections/faq.css                                    */
/* ============================================================ */
/* ============================================================ */
/* SECTION: PERGUNTAS FREQUENTES                                */
/* ============================================================ */
.cs-faq {
  box-sizing: border-box;
  padding: var(--csf-pad-top) 24px var(--csf-pad-bottom);
  font-family: var(--font-primary);
  background: linear-gradient(180deg, var(--csf-color-bg-top) 0%, var(--csf-color-bg-bottom) 100%);
}

.cs-faq__container {
  max-width: var(--csf-container);
  margin: 0 auto;
}

.cs-faq__title {
  margin: 0 auto;
  font-size: 38px;
  font-weight: 800;
  line-height: 45px;
  text-align: center;
  color: var(--csf-color-navy);
}

.cs-faq__rule {
  display: block;
  width: 64px;
  height: 3px;
  margin: var(--csf-gap-title-rule) auto 0;
  background-color: var(--csf-color-accent);
}

.cs-faq__list {
  display: flex;
  flex-direction: column;
  gap: var(--csf-gap-cards);
  margin-top: var(--csf-gap-rule-list);
}

/* Especificidade acima de faq-module.css (que também é carregado no site) */
.cs-faq .cs-faq__item {
  position: relative;
  margin: 0;
  background: var(--csf-color-card);
  border: 1px solid var(--csf-color-card-border);
  border-radius: var(--csf-card-radius) !important;
  box-shadow: 0 1px 3px rgba(41, 35, 92, 0.05);
  overflow: hidden;
}

.cs-faq .cs-faq__item:hover {
  border-color: var(--csf-color-card-border);
  box-shadow: 0 1px 3px rgba(41, 35, 92, 0.05);
}

.cs-faq .cs-faq__item .accordion-button,
.cs-faq .cs-faq__item .accordion-button:not(.collapsed) {
  display: block;
  padding: 28px 90px 0 30px;
  font-size: 24px;
  font-weight: 800;
  line-height: 28px;
  color: var(--csf-color-navy);
  background: transparent;
  box-shadow: none;
}

.cs-faq .cs-faq__item .accordion-button.collapsed {
  padding: 28px 90px 28px 30px;
}

.cs-faq .cs-faq__item .accordion-button:focus-visible {
  outline: 2px solid var(--csf-color-accent);
  outline-offset: -4px;
}

/* Círculo navy +/− (posição absoluta no card, como no Figma) */
.cs-faq .cs-faq__item .accordion-button::after {
  content: "";
  position: absolute;
  top: 12px;
  right: 14px;
  width: var(--csf-sign);
  height: var(--csf-sign);
  margin: 0;
  border-radius: 50%;
  transform: none;
  background-color: var(--csf-color-navy);
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 36 36'%3E%3Crect x='13' y='17' width='10' height='2' rx='1' fill='%23fff'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: center;
  background-size: 36px;
}

.cs-faq .cs-faq__item .accordion-button.collapsed::after {
  top: 17px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 36 36'%3E%3Crect x='13' y='17' width='10' height='2' rx='1' fill='%23fff'/%3E%3Crect x='17' y='13' width='2' height='10' rx='1' fill='%23fff'/%3E%3C/svg%3E");
}

.cs-faq .cs-faq__item .accordion-button:not(.collapsed)::after {
  transform: none;
}

.cs-faq .cs-faq__item .accordion-body {
  box-sizing: border-box;
  padding: 14px 59px 20px 30px;
  font-size: 16px;
  line-height: 20px;
  color: var(--csf-color-text);
}

.cs-faq .cs-faq__item .accordion-body p {
  margin: 0;
}

.cs-faq .cs-faq__item .accordion-body .cs-faq__links {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 64px;
  margin-top: 9px;
  padding: 0 0 20px 6px;
}

.cs-faq__link {
  font-size: 14px;
  font-weight: 700;
  line-height: 20px;
  color: var(--csf-color-accent);
  text-decoration: none;
}
/* Links sem sublinhado (pedido do autor) — vence o `.faq-module__item .accordion-body a`
   do faq-module.css do LeanWeb, que sublinha links dentro das respostas. */
.cs-faq .cs-faq__item .accordion-body .cs-faq__link { text-decoration: none; }
.cs-faq__link:hover { opacity: .8; }


/* ============================================================ */
/* RESPONSIVO                                                   */
/* ============================================================ */
@media (max-width: 991.98px) {
  .cs-faq { --csf-pad-top: 72px; --csf-pad-bottom: 64px; --csf-gap-rule-list: 48px; }
  .cs-faq__title { font-size: 32px; line-height: 39px; }
}

@media (max-width: 767.98px) {
  .cs-faq { --csf-pad-top: 56px; --csf-pad-bottom: 56px; --csf-gap-rule-list: 36px; --csf-gap-cards: 14px; padding-inline: 16px; }
  .cs-faq__title { font-size: 26px; line-height: 32px; }
  .cs-faq .cs-faq__item .accordion-button,
  .cs-faq .cs-faq__item .accordion-button.collapsed { font-size: 19px; line-height: 24px; padding: 20px 64px 18px 18px; }
  .cs-faq .cs-faq__item .accordion-button::after,
  .cs-faq .cs-faq__item .accordion-button.collapsed::after { top: 14px; right: 12px; }
  .cs-faq .cs-faq__item .accordion-body { padding: 10px 18px 18px; }
  .cs-faq .cs-faq__item .accordion-body .cs-faq__links { padding-bottom: 0; gap: 8px 28px; }
}

@media (max-width: 575.98px) {
  .cs-faq__title { font-size: 23px; line-height: 29px; }
}


/* ============================================================ */
/* SLIDE-UP DOS BOTÕES (mg-btn) — contrato do mgButtons.js,     */
/* escopado na página (initMgButtons em consultoria.anim.js)    */
/* ============================================================ */
.consultoria-page { --mg-btn-swap-duration: 0.9s; }   /* mesma velocidade da Academia/AgendaTreinamento */

/* Anti-FOUC: esconde o conteúdo cru enquanto o JS não faz o upgrade. */
.consultoria-page .mg-btn-auto:not(.mg-btn) { color: transparent !important; }
.consultoria-page .mg-btn-auto:not(.mg-btn) > svg,
.consultoria-page .mg-btn-auto:not(.mg-btn) > img,
.consultoria-page .mg-btn-auto:not(.mg-btn) > span { opacity: 0 !important; visibility: hidden !important; }

.consultoria-page .mg-btn { position: relative; }
.consultoria-page .mg-btn__inner { display: inline-flex; align-items: center; gap: 10px; }
.consultoria-page .mg-btn__swap { position: relative; display: inline-grid; overflow: hidden; }
.consultoria-page .mg-btn__swap-text {
  grid-area: 1 / 1;
  transition: transform var(--mg-btn-swap-duration, .42s) cubic-bezier(.2, .7, .2, 1);
}
.consultoria-page .mg-btn__swap-text.is-absolute { position: absolute; inset: 0; transform: translate3d(0, 130%, 0); }
.consultoria-page .mg-btn:hover .mg-btn__swap-text.is-absolute,
.consultoria-page .mg-btn:focus-visible .mg-btn__swap-text.is-absolute { transform: translate3d(0, 0, 0); }
.consultoria-page .mg-btn:hover .mg-btn__swap-text.is-relative,
.consultoria-page .mg-btn:focus-visible .mg-btn__swap-text.is-relative { transform: translate3d(0, -130%, 0); }
.consultoria-page .mg-btn__icon { grid-area: 1 / 1; display: grid; place-items: center; transition: transform var(--mg-btn-swap-duration, .42s) cubic-bezier(.2, .7, .2, 1); }
.consultoria-page .mg-btn__icon.is-absolute { position: absolute; inset: 0; transform: translate3d(0, 130%, 0); }
.consultoria-page .mg-btn:hover .mg-btn__icon.is-absolute,
.consultoria-page .mg-btn:focus-visible .mg-btn__icon.is-absolute { transform: translate3d(0, 0, 0); }
.consultoria-page .mg-btn:hover .mg-btn__icon.is-relative,
.consultoria-page .mg-btn:focus-visible .mg-btn__icon.is-relative { transform: translate3d(0, -130%, 0); }
.consultoria-page .mg-btn__icon-wrap { flex: none; width: var(--mg-icon-size, 16px); height: var(--mg-icon-size, 16px); }  /* flex:none: não encolhe quando o texto quebra */
.consultoria-page .mg-btn__icon svg { width: 100%; height: 100%; display: block; }

/* Sem animação de swap em reduced-motion: trava no estado de repouso. */
@media (prefers-reduced-motion: reduce) {
  .consultoria-page .mg-btn__swap-text,
  .consultoria-page .mg-btn__icon { transition: none; }
  .consultoria-page .mg-btn:hover .mg-btn__swap-text.is-absolute,
  .consultoria-page .mg-btn:focus-visible .mg-btn__swap-text.is-absolute,
  .consultoria-page .mg-btn:hover .mg-btn__icon.is-absolute,
  .consultoria-page .mg-btn:focus-visible .mg-btn__icon.is-absolute { transform: translate3d(0, 130%, 0); }
  .consultoria-page .mg-btn:hover .mg-btn__swap-text.is-relative,
  .consultoria-page .mg-btn:focus-visible .mg-btn__swap-text.is-relative,
  .consultoria-page .mg-btn:hover .mg-btn__icon.is-relative,
  .consultoria-page .mg-btn:focus-visible .mg-btn__icon.is-relative { transform: translate3d(0, 0, 0); }
}


/* ============================================================ */
/* LEANWEB — 1ª dobra sem piscar (ver js/consultoria/consultoria.anim.js) */
/* ============================================================ */
.consultoria-page--preload .cs-hero [data-reveal] {
  opacity: 0;
}

/* Formulário de contato ligado ao handler global (form[data-contact-form] → /api/contato):
   captcha Turnstile acima do botão, mesma régua dos campos. */
.cs-cont__captcha {
  margin: 4px 0 20px;
  min-height: 65px;
}

/* ============================================================ */
/* BRIEFING (28/07/2026) — itens decididos no relatório         */
/* briefing × aplicação (F2B outputs/consultoria/briefing/)     */
/* ============================================================ */
/* Ciclo: "Ver detalhes" virou botão que abre a explicação da etapa */
button.cs-cic__more {
  border: 0;
  background: none;
  padding-left: 0;
  padding-right: 0;
  cursor: pointer;
}
button.cs-cic__more img { transition: transform 0.25s ease; }
button.cs-cic__more[aria-expanded="true"] img { transform: rotate(180deg); }
button.cs-cic__more:hover { color: var(--csc-ink); }
button.cs-cic__more:focus-visible { outline: 2px solid var(--csc-teal); outline-offset: 3px; border-radius: 4px; }
.cs-cic__detail {
  margin-top: 10px;
  max-width: 260px;
  font-size: 14px;
  line-height: 21px;
  color: var(--csc-ink);
  animation: cs-cic-abre 0.3s ease;
}
.cs-cic__detail p { margin: 0; }
@keyframes cs-cic-abre { from { opacity: 0; transform: translateY(-4px); } to { opacity: 1; transform: none; } }
@media (max-width: 1247.98px) { .cs-cic__detail { max-width: none; } }

/* Setores: o chevron do "Ver todos" vira para cima quando a grade está aberta */
.cs-set__btn svg { transition: transform 0.25s ease; }
.cs-set__btn.is-aberto svg { transform: rotate(180deg); }
.cs-set__card[hidden] { display: none; }

/* Parceria: com a frase nos 4 princípios o card 04 desce ~80px — a região
   do diagrama cresce junto para não encostar nos papéis (desktop). */
@media (min-width: 992px) { .cs-mod__cycle { min-height: 620px; } }

@media (prefers-reduced-motion: reduce) {
  .cs-cic__detail { animation: none; }
  button.cs-cic__more img, .cs-set__btn svg { transition: none; }
}
