/* ============================================================
   BLOCO HEADER — Acro Digital GMN
   Mobile-first: hamburguer padrão, nav em >=1025px
   ============================================================ */

.bloco-header {
  position: sticky;
  top: 0;
  width: 100%;
  z-index: 800;
  background-color: var(--color-white);
  box-shadow: 0 1px 0 var(--color-neutral-200);
  transition: box-shadow var(--transition-hover);
}
.bloco-header.scrolled { box-shadow: 0 2px 12px rgba(16,42,67,.12); }

.bloco-header__inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding-block: 14px;
}

.bloco-header__logo { display: flex; align-items: center; flex-shrink: 0; }
.bloco-header__logo-full  { display: block; height: 36px; width: auto; }
.bloco-header__logo-icon  { display: none;  height: 32px; width: auto; }

.bloco-header__nav { display: none; }
.bloco-header__nav ul { display: flex; align-items: center; gap: 28px; }
.bloco-header__nav a {
  position: relative;
  font-size: var(--font-size-btn);
  font-weight: var(--fw-medium);
  color: var(--color-primary-800);
  transition: color var(--transition-hover);
  white-space: nowrap;
}
.bloco-header__nav a::after {
  content: ""; position: absolute; left: 0; bottom: -4px;
  width: 0; height: 2px; background-color: var(--color-primary-600);
  transition: width .25s ease;
}
.bloco-header__nav a:hover { color: var(--color-primary-600); }
.bloco-header__nav a:hover::after { width: 100%; }

.bloco-header__cta { display: none; flex-shrink: 0; white-space: nowrap; }
.bloco-header__cta .icon svg { width: 18px; height: 18px; }

.bloco-header__hamburguer {
  display: flex; align-items: center; justify-content: center;
  width: 44px; height: 44px; flex-shrink: 0;
  color: var(--color-primary-800); transition: color var(--transition-hover);
}
.bloco-header__hamburguer:hover { color: var(--color-primary-600); }

.bloco-header__drawer {
  display: none; position: fixed; top: 0; right: 0; bottom: 0;
  width: min(300px, 84vw); flex-direction: column; gap: 24px;
  padding: 20px; background-color: var(--color-white);
  box-shadow: -4px 0 16px rgba(16,42,67,.15);
  z-index: 900; transform: translateX(100%); transition: transform var(--btn-transition);
  overflow-y: auto;
}
.bloco-header__drawer.is-open { display: flex; transform: translateX(0); }
.bloco-header__drawer-close {
  align-self: flex-end; width: 44px; height: 44px;
  display: flex; align-items: center; justify-content: center; flex-shrink: 0;
}
.bloco-header__drawer ul { display: flex; flex-direction: column; gap: 20px; }
.bloco-header__drawer a {
  font-size: var(--font-size-h3); font-weight: var(--fw-medium); color: var(--color-primary-900);
}

.bloco-header .icon svg {
  fill: none !important; stroke: currentColor !important;
  stroke-width: 1.5px !important; stroke-linecap: round !important;
  stroke-linejoin: round !important; display: block; flex-shrink: 0;
}
.bloco-header .icon--header svg { width: 26px; height: 26px; }
.bloco-header .icon--btn svg    { width: 18px; height: 18px; }

@media (min-width: 1025px) {
  .bloco-header__nav, .bloco-header__cta { display: flex; }
  .bloco-header__hamburguer { display: none; }
  .bloco-header__logo-full { height: 40px; }
}
@media (max-width: 380px) {
  .bloco-header__logo-full { display: none; }
  .bloco-header__logo-icon { display: block; }
}


/* ============================================================
   BLOCO HERO — Acro Digital GMN
   Mobile-first: coluna única, icones decorativos ocultos
   ============================================================ */

.bloco-hero {
  position: relative; overflow: hidden; width: 100%;
  padding-block: var(--space-block-mobile-r);
  background: linear-gradient(150deg, var(--color-primary-900) 0%, var(--color-primary-800) 100%);
}

.bloco-hero__decor { display: none; }

.bloco-hero__decor-icon {
  position: absolute; width: 140px; height: 140px;
  color: var(--color-primary-300); opacity: .38;
  transform: translate(-50%,-50%);
}
.bloco-hero__decor-icon svg {
  width: 100%; height: 100%; fill: none; stroke: currentColor;
  stroke-width: .9px; stroke-linecap: round; stroke-linejoin: round;
}
.bloco-hero__decor-icon--1 { top: 14%; left: 50%; }
.bloco-hero__decor-icon--2 { top: 39%; left: 84%; }
.bloco-hero__decor-icon--3 { top: 79%; left: 71%; }
.bloco-hero__decor-icon--4 { top: 79%; left: 29%; }
.bloco-hero__decor-icon--5 { top: 39%; left: 16%; }

.bloco-hero::after { display: none; }

.bloco-hero__inner { position: relative; z-index: 1; }

.bloco-hero__content {
  display: flex; flex-direction: column; align-items: flex-start;
  gap: 16px; width: 100%;
}
.bloco-hero h1 { color: var(--color-white); max-width: 22ch; }
.bloco-hero__subheadline {
  font-size: var(--font-size-body); font-weight: var(--fw-regular);
  color: var(--color-primary-50); text-wrap: balance; max-width: 40ch;
}
.bloco-hero__badge { background-color: rgba(255,255,255,.12); color: var(--color-white); }
.bloco-hero__preco { font-size: var(--font-size-body); color: var(--color-primary-300); }
.bloco-hero__preco strong {
  font-size: var(--font-size-h3); font-weight: var(--fw-bold); color: var(--color-white);
}
.bloco-hero__ctas { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 4px; width: 100%; }
.bloco-hero__ctas .btn-cta-primary,
.bloco-hero__ctas .btn-cta-secondary {
  flex: 1 1 auto; justify-content: center; min-width: 180px;
}
.bloco-hero__ctas .btn-cta-secondary {
  color: var(--color-white); border-color: rgba(255,255,255,.5);
}
.bloco-hero__ctas .btn-cta-secondary:hover {
  background-color: rgba(255,255,255,.12); color: var(--color-white);
}
.bloco-hero__trust { margin-top: 4px; gap: 10px 20px; }
.bloco-hero__trust .trust-item { color: var(--color-primary-50); font-size: var(--font-size-small); }

.bloco-hero .icon svg {
  fill: none !important; stroke: currentColor !important;
  stroke-width: 1.5px !important; stroke-linecap: round !important;
  stroke-linejoin: round !important; display: block; flex-shrink: 0;
}

@media (min-width: 481px) and (max-width: 767px) {
  .bloco-hero { padding-block: var(--space-block-mobile-p); }
  .bloco-hero__badge, .bloco-hero__subheadline,
  .bloco-hero__trust, .bloco-hero__ctas .btn-cta-secondary { display: none; }
  .bloco-hero__ctas .btn-cta-primary { flex: 0 0 auto; }
}
@media (min-width: 768px) {
  .bloco-hero { padding-block: var(--space-block-tablet); }
  .bloco-hero__content { max-width: 56%; }
  .bloco-hero__ctas .btn-cta-primary,
  .bloco-hero__ctas .btn-cta-secondary { flex: 0 0 auto; width: auto; }
}
@media (min-width: 1025px) {
  .bloco-hero { padding-block: var(--space-block-desktop); }
  .bloco-hero__decor {
    display: block; position: absolute; top: 50%; right: 6%;
    transform: translateY(-50%); width: min(480px, 40vw);
    aspect-ratio: 1; z-index: 0; pointer-events: none;
  }
  .bloco-hero::after {
    display: block; content: ""; position: absolute;
    left: 0; right: 0; bottom: 0; height: var(--blender-height);
    background: linear-gradient(to bottom, transparent, var(--blender-color));
    pointer-events: none;
  }
  .bloco-hero__content { max-width: 52%; gap: 18px; }
}


/* ============================================================
   BLOCO DOR-SOLUCAO — Acro Digital GMN
   Mobile: empilhado com borda superior; Desktop: horizontal
   ============================================================ */

.bloco-dor-solucao { background-color: var(--color-neutral-50); }
.bloco-dor-solucao h2 { text-align: center; margin-inline: auto; }
.bloco-dor-solucao__lista { display: flex; flex-direction: column; gap: 14px; margin-top: 40px; }

.bloco-dor-solucao__item {
  display: grid; grid-template-columns: 1fr; gap: 16px;
  background-color: var(--color-white); border-radius: var(--radius-card);
  padding: 20px; box-shadow: 0 2px 8px rgba(16,42,67,.06);
  border: 1px solid var(--color-neutral-200);
  transition: box-shadow var(--transition-hover), transform var(--transition-hover);
}
.bloco-dor-solucao__item:hover {
  box-shadow: 0 6px 20px rgba(16,42,67,.10); transform: translateY(-2px);
}

.bloco-dor-solucao__label {
  display: block; font-size: var(--font-size-badge);
  font-weight: var(--fw-semibold); letter-spacing: var(--letter-spacing-badge);
  text-transform: uppercase; margin-bottom: 6px;
}
.bloco-dor-solucao__dor .bloco-dor-solucao__label { color: var(--color-neutral-400); }
.bloco-dor-solucao__solucao .bloco-dor-solucao__label { color: var(--color-primary-600); }
.bloco-dor-solucao__dor p { color: var(--color-primary-900); }
.bloco-dor-solucao__solucao p { color: var(--color-primary-800); }
.bloco-dor-solucao__dor p,
.bloco-dor-solucao__solucao p { font-size: var(--font-size-body); line-height: var(--line-height-body); }

.bloco-dor-solucao__solucao {
  border-top: 3px solid var(--color-primary-600); padding-top: 16px;
}

.bloco-dor-solucao__seta {
  display: flex; align-items: center; justify-content: center;
  width: 52px; height: 52px; background-color: var(--color-primary-50);
  border-radius: 50%; color: var(--color-primary-600); flex-shrink: 0;
  box-shadow: 0 2px 8px rgba(0,74,173,.10); margin: 0 auto; transform: rotate(90deg);
}
.bloco-dor-solucao__seta svg { width: 22px; height: 22px; }

@media (min-width: 768px) {
  .bloco-dor-solucao__item {
    grid-template-columns: 1fr 56px 1fr; align-items: center; gap: 24px; padding: 28px 32px;
  }
  .bloco-dor-solucao__solucao {
    border-top: none; padding-top: 0;
    border-left: 3px solid var(--color-primary-600); padding-left: 20px;
  }
  .bloco-dor-solucao__seta { transform: rotate(0deg); margin: 0; }
}


/* ============================================================
   BLOCO ARGUMENTACAO — Acro Digital GMN
   Cabecalho centralizado; grid 1->2 col; h3 nowrap no tablet+
   ============================================================ */

.bloco-argumentacao { background-color: var(--color-white); }

.bloco-argumentacao__cabecalho { margin-bottom: 40px; text-align: center; }
.bloco-argumentacao__cabecalho .badge-bloco { margin-inline: auto; }
.bloco-argumentacao__cabecalho h2 { margin-top: 12px; margin-inline: auto; }

.bloco-argumentacao__lista { display: grid; grid-template-columns: 1fr; gap: 24px; }

.bloco-argumentacao__item { display: flex; gap: 16px; align-items: flex-start; }

.bloco-argumentacao__icone {
  flex-shrink: 0; width: 44px; height: 44px;
  display: flex; align-items: center; justify-content: center;
  background-color: var(--color-primary-50); border-radius: var(--radius-card);
  color: var(--color-primary-600);
}
.bloco-argumentacao__icone svg { width: 22px; height: 22px; }

.bloco-argumentacao__texto h3 {
  font-size: var(--font-size-body); font-weight: var(--fw-semibold);
  color: var(--color-primary-900); margin-bottom: 10px;
}
.bloco-argumentacao__texto p { color: var(--color-primary-800); line-height: var(--line-height-body); }
.bloco-argumentacao__texto p + p { margin-top: 10px; }

@media (min-width: 768px) {
  .bloco-argumentacao__lista { grid-template-columns: 1fr 1fr; gap: 32px; }
  .bloco-argumentacao__icone { width: 48px; height: 48px; }
  .bloco-argumentacao__icone svg { width: 24px; height: 24px; }
  .bloco-argumentacao__texto h3 { white-space: nowrap; }
}


/* ============================================================
   BLOCO PLANOS — Acro Digital GMN
   Mobile: empilhado; Tablet: manutenção em linha; Desktop: compacto
   ============================================================ */

.bloco-planos { background-color: var(--color-neutral-50); }
.bloco-planos h2 { text-align: center; margin-inline: auto; }

/* Container vira flex coluna centralizado */
.bloco-planos .container {
  display: flex;
  flex-direction: column;
  align-items: center;
}

.bloco-planos__intro {
  display: flex; flex-direction: column; gap: 8px;
  margin-top: 24px; margin-bottom: 40px; width: 100%;
  align-items: center;
  text-align: center;
}
.bloco-planos__intro-item {
  font-size: var(--font-size-body); line-height: var(--line-height-body);
  color: var(--color-primary-800);
  max-width: 52ch;
}
.bloco-planos__intro-item .icon { display: none; }
.bloco-planos__intro-item--implementacao { font-weight: var(--fw-semibold); }
.bloco-planos__intro-item--manutencao { font-weight: var(--fw-regular); }

/* Grid principal: coluna, centralizado */
.bloco-planos__grid {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 28px;
  width: 100%;
}

/* Linha 1: implementação compacta e centralizada */
.bloco-planos__linha-implementacao {
  display: flex;
  justify-content: center;
  width: 100%;
}
.bloco-planos__card--implementacao {
  width: 100%;
  max-width: 420px;
}

/* Linha 2: GRID FIXO 2 colunas — especificidade reforçada */
.bloco-planos .bloco-planos__linha-manutencao {
  display: grid !important;
  grid-template-columns: 1fr 1fr;
  gap: 24px;
  width: 100%;
  max-width: 840px;
}

/* Só empilha em telas muito pequenas */
@media (max-width: 599px) {
  .bloco-planos .bloco-planos__linha-manutencao {
    grid-template-columns: 1fr;
  }
  .bloco-planos__card--implementacao {
    max-width: 100%;
  }
}


.bloco-planos__card {
  background-color: var(--color-white); border-radius: var(--radius-card);
  border: 1px solid var(--color-neutral-200); padding: 24px;
  display: flex; flex-direction: column; gap: 20px;
}
.bloco-planos__card--destaque { border-color: var(--color-primary-600); border-width: 2px; position: relative; }
.bloco-planos__card--destaque::before {
  content: "Mais contratado"; position: absolute; top: -13px; left: 50%; transform: translateX(-50%);
  background-color: var(--color-primary-600); color: var(--color-white);
  font-size: var(--font-size-badge); font-weight: var(--fw-semibold);
  letter-spacing: var(--letter-spacing-badge); padding: 4px 14px; border-radius: 999px; white-space: nowrap;
}

.bloco-planos__card-topo { display: flex; flex-direction: column; gap: 8px; }
.bloco-planos__tipo {
  font-size: var(--font-size-badge); font-weight: var(--fw-semibold);
  letter-spacing: var(--letter-spacing-badge); text-transform: uppercase; color: var(--color-primary-600);
}
.bloco-planos__preco { display: flex; align-items: baseline; gap: 6px; flex-wrap: wrap; }
.bloco-planos__valor { font-size: var(--font-size-h2); font-weight: var(--fw-bold); color: var(--color-primary-900); line-height: 1; }
.bloco-planos__periodo { font-size: var(--font-size-small); color: var(--color-neutral-400); }
.bloco-planos__equivalencia { font-size: var(--font-size-small); color: var(--color-primary-600); font-weight: var(--fw-semibold); }

.bloco-planos__itens { display: flex; flex-direction: column; gap: 12px; flex: 1; }
.bloco-planos__itens li {
  display: flex; align-items: flex-start; gap: 10px;
  font-size: var(--font-size-body); color: var(--color-primary-800); line-height: var(--line-height-body);
}
.bloco-planos__itens li svg { flex-shrink: 0; margin-top: 4px; color: var(--color-primary-600); }

.bloco-planos__card-nota {
  font-size: var(--font-size-small); color: var(--color-neutral-400);
  border-top: 1px solid var(--color-neutral-200); padding-top: 14px; line-height: var(--line-height-body);
}
.bloco-planos__card .btn-cta-primary { width: 100%; justify-content: center; }

.bloco-planos__multiplas-unidades {
  text-align: center; margin-top: 28px;
  font-size: var(--font-size-body); color: var(--color-primary-800);
}
.bloco-planos__multiplas-unidades a {
  color: var(--color-primary-600); font-weight: var(--fw-semibold); transition: color var(--transition-hover);
}
.bloco-planos__multiplas-unidades a:hover { color: var(--color-primary-700); }

.bloco-planos .icon svg {
  fill: none !important; stroke: currentColor !important;
  stroke-width: 1.5px !important; stroke-linecap: round !important;
  stroke-linejoin: round !important; display: block;
}





/* ============================================================
   BLOCO POR QUE MANTER — Acro Digital GMN
   Fundo escuro, cabecalho centralizado
   ============================================================ */

.bloco-por-que-manter { background-color: var(--color-primary-900); }

.bloco-por-que-manter__cabecalho { margin-bottom: 40px; text-align: center; }
.bloco-por-que-manter__cabecalho h2 { color: var(--color-white); margin-bottom: 16px; margin-inline: auto; }
.bloco-por-que-manter__cabecalho p {
  color: var(--color-primary-300); font-size: var(--font-size-body);
  margin-inline: auto; max-width: 48ch; line-height: var(--line-height-body);
}
.bloco-por-que-manter__cabecalho p + p { margin-top: 6px; }

.bloco-por-que-manter__lista { display: flex; flex-direction: column; gap: 28px; }
.bloco-por-que-manter__item { display: flex; gap: 20px; align-items: flex-start; }
.bloco-por-que-manter__numero {
  flex-shrink: 0; font-size: clamp(2rem, 5vw, 3.5rem);
  font-weight: var(--fw-bold); color: var(--color-primary-700); line-height: 1; min-width: 48px;
}
.bloco-por-que-manter__texto h3 { font-size: var(--font-size-h3); color: var(--color-white); margin-bottom: 12px; }
.bloco-por-que-manter__texto p { color: var(--color-primary-300); line-height: var(--line-height-body); }
.bloco-por-que-manter__texto p + p { margin-top: 10px; }

@media (min-width: 768px) {
  .bloco-por-que-manter__texto h3 { white-space: nowrap; }
  .bloco-por-que-manter__item { gap: 28px; }
  .bloco-por-que-manter__numero { min-width: 56px; }
}


/* ============================================================
   BLOCO COMO FUNCIONA — Acro Digital GMN
   Mobile: vertical com icone a esquerda; Desktop: horizontal
   ============================================================ */

.bloco-como-funciona { background-color: var(--color-white); }
.bloco-como-funciona h2 { text-align: center; margin-inline: auto; margin-bottom: 40px; }

.bloco-como-funciona__lista { display: flex; flex-direction: column; gap: 20px; }
.bloco-como-funciona__item { display: flex; flex-direction: row; align-items: center; gap: 16px; text-align: left; }

.bloco-como-funciona__icone {
  width: 60px; height: 60px; flex-shrink: 0;
  display: flex; align-items: center; justify-content: center;
  background-color: var(--color-primary-50); border-radius: 50%;
  border: 2px solid var(--color-neutral-200); color: var(--color-primary-600);
  box-shadow: 0 2px 8px rgba(16,42,67,.07);
  transition: background-color var(--transition-hover), color var(--transition-hover),
              box-shadow var(--transition-hover), transform var(--transition-hover);
}
.bloco-como-funciona__item:hover .bloco-como-funciona__icone {
  background-color: var(--color-primary-600); color: var(--color-white);
  border-color: var(--color-primary-600); box-shadow: 0 6px 16px rgba(0,74,173,.22);
  transform: translateY(-2px);
}
.bloco-como-funciona__icone svg { width: 26px; height: 26px; }
.bloco-como-funciona__item p {
  font-size: var(--font-size-body); color: var(--color-primary-800);
  line-height: var(--line-height-body); transition: color var(--transition-hover);
}
.bloco-como-funciona__item:hover p { color: var(--color-primary-900); }

.bloco-como-funciona .icon svg {
  fill: none !important; stroke: currentColor !important;
  stroke-width: 1.5px !important; stroke-linecap: round !important;
  stroke-linejoin: round !important; display: block; flex-shrink: 0;
}

@media (min-width: 640px) and (max-width: 1024px) {
  .bloco-como-funciona__lista { flex-direction: row; flex-wrap: wrap; justify-content: center; gap: 20px 16px; }
  .bloco-como-funciona__item {
    flex: 0 1 calc(33% - 16px); flex-direction: column;
    align-items: center; text-align: center; max-width: 180px; gap: 12px;
  }
}
@media (min-width: 1025px) {
  .bloco-como-funciona__lista {
    flex-direction: row; justify-content: space-between; gap: 16px; position: relative;
  }
  .bloco-como-funciona__lista::before {
    content: ""; position: absolute; top: 34px; left: 10%; right: 10%;
    height: 1px; background-color: var(--color-neutral-200); z-index: 0;
  }
  .bloco-como-funciona__item {
    flex: 1; flex-direction: column; align-items: center; text-align: center;
    gap: 12px; position: relative; z-index: 1; max-width: 160px;
  }
  .bloco-como-funciona__icone { width: 68px; height: 68px; }
  .bloco-como-funciona__icone svg { width: 28px; height: 28px; }
  .bloco-como-funciona__item p { font-size: var(--font-size-small); }
}


/* ============================================================
   BLOCO SEGMENTOS — Acro Digital GMN
   Grade 2 col mobile, 4 col tablet+
   ============================================================ */

.bloco-segmentos { background-color: var(--color-neutral-50); }
.bloco-segmentos h2 { text-align: center; margin-inline: auto; }
.bloco-segmentos__subtitulo { text-align: center; color: var(--color-primary-800); margin-top: 8px; margin-bottom: 32px; }

.bloco-segmentos__grade { display: grid; grid-template-columns: repeat(2, 1fr); gap: 12px; }
.bloco-segmentos__item {
  display: flex; flex-direction: column; align-items: center; gap: 10px;
  padding: 18px 12px; background-color: var(--color-white);
  border-radius: var(--radius-card); border: 1px solid var(--color-neutral-200);
  text-align: center; transition: border-color var(--transition-hover), transform var(--transition-hover);
}
.bloco-segmentos__item:hover { border-color: var(--color-primary-300); transform: translateY(-3px); }
.bloco-segmentos__icone {
  width: 52px; height: 52px; display: flex; align-items: center; justify-content: center;
  background-color: var(--color-primary-50); border-radius: var(--radius-card); color: var(--color-primary-600);
}
.bloco-segmentos__icone svg { width: 32px; height: 32px; color: var(--color-primary-600); }
.bloco-segmentos__icone svg path,
.bloco-segmentos__icone svg g { fill: currentColor; }
.bloco-segmentos__item span { font-size: var(--font-size-small); font-weight: var(--fw-semibold); color: var(--color-primary-800); line-height: 1.3; }

@media (min-width: 640px) {
  .bloco-segmentos__grade { grid-template-columns: repeat(4, 1fr); gap: 16px; }
  .bloco-segmentos__item { padding: 22px 16px; gap: 12px; }
  .bloco-segmentos__icone { width: 56px; height: 56px; }
  .bloco-segmentos__icone svg { width: 34px; height: 34px; }
}


/* ============================================================
   BLOCO FAQ — Acro Digital GMN
   ============================================================ */

.bloco-faq { background-color: var(--color-white); }
.bloco-faq h2 { text-align: center; margin-inline: auto; margin-bottom: 40px; }
.bloco-faq__grupo { max-width: 760px; margin: 0 auto 36px; }
.bloco-faq__grupo:last-child { margin-bottom: 0; }
.bloco-faq__grupo h3 {
  font-size: var(--font-size-small); font-weight: var(--fw-semibold);
  text-transform: uppercase; letter-spacing: .06em; color: var(--color-primary-600); margin-bottom: 14px;
}
@media (min-width: 640px) {
  .bloco-faq__grupo h3 { font-size: var(--font-size-body); white-space: nowrap; }
}

.bloco-faq__item { border-bottom: 1px solid var(--color-neutral-200); }
.bloco-faq__pergunta {
  display: flex; align-items: center; justify-content: space-between; gap: 12px;
  padding: 16px 4px; font-size: var(--font-size-body); font-weight: var(--fw-semibold);
  color: var(--color-primary-900); cursor: pointer; list-style: none; transition: color .25s ease;
}
.bloco-faq__pergunta:hover { color: var(--color-primary-600); }
.bloco-faq__pergunta::-webkit-details-marker { display: none; }
.bloco-faq__pergunta::marker { content: ""; }
.bloco-faq__chevron { flex-shrink: 0; transition: transform var(--transition-hover); }
.bloco-faq__item[open] .bloco-faq__chevron { transform: rotate(180deg); }
.bloco-faq__resposta {
  padding: 0 4px 18px; font-size: var(--font-size-body); color: var(--color-primary-800);
  max-width: 65ch; line-height: var(--line-height-body);
}
.bloco-faq .icon svg {
  fill: none !important; stroke: currentColor !important;
  stroke-width: 1.5px !important; stroke-linecap: round !important;
  stroke-linejoin: round !important; display: block; flex-shrink: 0;
}
.bloco-faq .icon--btn svg { width: 20px; height: 20px; color: var(--color-primary-600); }


/* ============================================================
   BLOCO RODAPE — Acro Digital GMN
   Mobile: empilhado; Desktop: horizontal
   ============================================================ */

.bloco-rodape { background-color: var(--color-primary-900); padding-block: var(--space-block-mobile-p); }
.bloco-rodape__inner { display: flex; flex-direction: column; align-items: flex-start; gap: 24px; }
.bloco-rodape__brand { display: flex; flex-direction: column; align-items: flex-start; gap: 6px; }
.bloco-rodape__brand img { height: 30px; width: auto; margin-bottom: 6px; }
.bloco-rodape__brand p { font-size: var(--font-size-small); color: var(--color-primary-300); }
.bloco-rodape__links { display: flex; flex-direction: column; align-items: flex-start; gap: 14px; width: 100%; }
.bloco-rodape__links a { font-size: var(--font-size-small); color: var(--color-white); transition: color var(--transition-hover); }
.bloco-rodape__links a:hover { color: var(--color-primary-300); }
.bloco-rodape__cta { padding-block: .7em; padding-inline: 1.4em; width: 100%; justify-content: center; }
.bloco-rodape .icon svg {
  fill: none !important; stroke: currentColor !important;
  stroke-width: 1.5px !important; stroke-linecap: round !important;
  stroke-linejoin: round !important; display: block; flex-shrink: 0;
}
.bloco-rodape .icon--btn svg { width: 18px; height: 18px; }

@media (min-width: 768px) {
  .bloco-rodape { padding-block: var(--space-block-desktop); }
  .bloco-rodape__inner { flex-direction: row; align-items: center; justify-content: space-between; }
  .bloco-rodape__links { flex-direction: row; align-items: center; width: auto; gap: 24px; }
  .bloco-rodape__cta { width: auto; }
}

/* [CSS -> arquivo autonomo: css/style-gmn.css — v1.1 mobile-first] */
