/* Páginas de solução SAP: SAP Business One, S/4HANA e Grow with SAP.
   Componentes compartilhados (prefixo sol-) + blocos específicos (b1-, s4-, grow-). */

/* ---------- Hero ---------- */
.sol-hero { position: relative; overflow: hidden; background: var(--azul-gelo); }
.sol-hero__bg { position: absolute; top: 0; right: 0; height: 100%; width: auto; max-width: none; }
.sol-hero::before { content: ""; position: absolute; inset: 0; z-index: 1; background: linear-gradient(90deg, var(--azul-gelo) 48%, rgba(222, 239, 250, 0) 65%); }
.sol-hero__conteudo { position: relative; z-index: 2; min-height: 37.5rem; display: flex; align-items: center; padding-block: 2rem 8.5rem; }
.sol-hero__texto { width: 50%; display: flex; flex-direction: column; align-items: flex-start; gap: 2rem; }
.sol-hero__logo { width: 18.75rem; height: auto; }
.sol-hero__logo--s4 { width: 75%; margin-left: -1.25rem; }
.sol-hero__logo--grow { width: 7.5rem; }
.sol-hero__titulo { font-size: 1.8125rem; font-weight: 700; line-height: 1.2; color: var(--marinho); }
.sol-hero__texto p { font-size: .9375rem; font-weight: 600; line-height: 1.55; color: var(--marinho); }
.sol-hero__texto > div { display: flex; flex-direction: column; gap: 1.5rem; align-items: flex-start; }
.sol-hero__numeros { position: absolute; z-index: 3; left: 0; right: 0; bottom: 0; }
.sol-hero__numeros ul {
  display: inline-flex; gap: 2.75rem; color: var(--branco); background: var(--azul); padding: 1.25rem 4rem 1.25rem .75rem;
  border-radius: 0 3rem 0 0; position: relative;
}
.sol-hero__numeros ul::before { content: ""; position: absolute; top: 0; bottom: 0; right: 100%; width: 100vw; background: var(--azul); }
.sol-hero__numeros strong { display: block; font-size: 1.5rem; font-weight: 600; line-height: 1.2; }
.sol-hero__numeros span { font-size: .875rem; opacity: .9; }

.btn--acento { background: var(--verde); color: #000; }
.btn--acento:hover, .btn--acento:focus-visible { background: #00FF37; color: var(--marinho); }

/* ---------- Títulos ---------- */
.sol-h2 { font-size: clamp(1.9375rem, 1.3rem + 1.6vw, 3rem); font-weight: 500; line-height: 1.2; }
.sol-h2--md { font-size: clamp(1.75rem, 1.3rem + 1.1vw, 2.25rem); }
.sol-h2--sm { font-size: clamp(1.5rem, 1.2rem + .8vw, 1.875rem); font-weight: 600; }
.sol-h2 b, .sol-h2 strong { font-weight: 700; }
.sol-intro { max-width: 40rem; margin: 1rem auto 0; font-size: .9375rem; font-weight: 600; line-height: 1.6; text-align: center; color: #333; }

/* ---------- Cards brancos com ícone ---------- */
.sol-cards { display: grid; grid-template-columns: repeat(var(--cols, 3), minmax(0, 1fr)); gap: 1rem; }
.sol-cards--4 { --cols: 4; }
.sol-card { background: var(--branco); border: 2px solid var(--cinza); padding: 1.5rem; display: flex; flex-direction: column; gap: 1.5rem; }
.sol-card__topo { display: flex; align-items: center; gap: .9375rem; }
.sol-card__topo h3 { font-size: 1.125rem; font-weight: 600; color: var(--azul); line-height: 1.2; }
.sol-card p { font-size: .9375rem; font-weight: 500; line-height: 1.55; }
.sol-ico { flex: none; display: grid; place-items: center; width: 3.5rem; height: 3.5rem; padding: .5rem; border-radius: 1rem; background: #E5F3FF; }
.sol-ico img { width: 100%; height: 100%; }
.sol-ico--branco { background: var(--branco); }
.sol-ico--lg { width: 4.5rem; height: 4.5rem; }

/* ---------- Carrossel de segmentos (fundo marinho) ---------- */
.sol-vert { background: var(--marinho); color: var(--branco); padding: 4rem 0 8rem; }
.sol-vert__titulo { text-align: center; font-size: clamp(1.9375rem, 1.3rem + 1.6vw, 3rem); font-weight: 500; line-height: 1.2; margin-bottom: 2rem; }
.sol-vert .carrossel__item { flex: 0 0 calc((100% - 1rem) / 2); padding: 0; place-items: stretch; }
.sol-seg { display: flex; background: var(--branco); color: var(--marinho); height: 100%; }
.sol-vert .sol-seg__img { flex: 0 0 36%; width: 36%; max-height: none; height: auto; object-fit: cover; }
.sol-seg__corpo { padding: 1.5rem; display: flex; flex-direction: column; align-items: flex-start; gap: .75rem; }
.sol-seg__corpo h3 { font-size: 1.125rem; font-weight: 700; color: #333; }
.sol-seg__corpo p { font-size: .9375rem; font-weight: 500; line-height: 1.55; flex: 1; margin: 0; }
.sol-seg__corpo .btn { padding: .625rem; border-radius: .5rem; }
.sol-vert .carrossel__nav { justify-content: center; gap: 5.5rem; margin-top: 1.5rem; }
.sol-vert .carrossel__nav button { width: 2.75rem; height: 2.75rem; display: grid; place-items: center; }
.sol-vert .carrossel__nav svg { width: 1.125rem; height: 1.125rem; }

/* ---------- Caixa azul com lista de ícones (Sinais / Desafios) ---------- */
.sol-azul { background: var(--azul); color: var(--branco); display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 2rem; padding: 2rem 3rem; align-items: center; }
.sol-azul h2 { font-size: clamp(1.75rem, 1.3rem + 1.1vw, 2.25rem); font-weight: 700; line-height: 1.2; margin-bottom: 1.5rem; }
.sol-azul__texto p { font-size: 1rem; line-height: 1.5; margin-bottom: 2.5rem; }
.sol-azul__lista { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.25rem 1.5rem; }
.sol-azul__lista li { display: flex; align-items: center; gap: .9375rem; font-size: .8125rem; font-weight: 600; line-height: 1.3; }
.sol-azul__lista .sol-ico { background: var(--branco); }
.sol-azul__lista li.sol-maior { font-size: 1rem; }

/* ---------- Comparativo (Duas jornadas / Grow x tradicional) ---------- */
.sol-comp { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem; align-items: stretch; }
.sol-comp__texto { padding: 1.25rem; align-self: center; }
.sol-comp__titulo { font-size: clamp(1.9375rem, 1.4rem + 1.3vw, 2.25rem); font-weight: 600; line-height: 1.1; margin-bottom: 2rem; }
.sol-comp__texto > p:not(.sol-comp__titulo) { font-size: .9375rem; font-weight: 400; line-height: 1.55; color: #333; margin-bottom: 2rem; }
.sol-comp__card { display: flex; flex-direction: column; border: 2px solid var(--cinza); background: var(--cinza); transition: transform .3s; }
.sol-comp__card:hover { transform: scale(1.03); }
.sol-comp__logo { background: var(--branco); display: grid; place-items: center; }
.sol-comp__logo img { width: 100%; height: 12.5rem; object-fit: contain; }
.sol-comp__logo img.sol-comp__logo--rise { width: 25%; }
@media (max-width: 1366px) { .sol-comp__logo img { height: 7.5rem; } }
.sol-comp__lista { flex: 1; padding: 1.5rem 1.5rem 1.5rem 3rem; color: var(--branco); background: var(--azul); }
.sol-comp__lista--marinho { background: var(--marinho); }
.sol-comp__lista--cinza { background: #E0E0E0; color: #333; }
.sol-comp__lista ul { list-style: disc; font-size: .9375rem; font-weight: 400; line-height: 1.55; }
.sol-comp__lista--bold ul { font-weight: 600; list-style: disc; }

/* ---------- Faixa ciano (IA / Public Edition) ---------- */
.sol-ciano { background: #00ACFF; color: var(--branco); padding-block: 4rem; }
.sol-ciano__grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 2rem; align-items: center; }
.sol-ciano__img { display: grid; place-items: center; }
.sol-ciano__img img { width: 100%; height: 31.25rem; object-fit: contain; }
.sol-ciano h2 { font-size: clamp(1.75rem, 1.3rem + 1.1vw, 2.25rem); font-weight: 700; line-height: 1.2; margin-bottom: 1rem; }
.sol-ciano__texto > p { font-size: .9375rem; line-height: 1.6; margin-bottom: 2rem; }
.sol-checks { display: grid; gap: 1.25rem; }
.sol-checks li { display: flex; align-items: center; gap: 1rem; font-size: .8125rem; line-height: 1.4; font-weight: 400; }
.sol-checks li b { font-weight: 700; }
.sol-checks svg { flex: none; width: 2rem; height: 2rem; stroke-width: 1.2; }
.sol-checks--2 { grid-template-columns: minmax(0, 1fr); }

/* ---------- Banner com foto (CTA) ---------- */
.sol-banner { position: relative; overflow: hidden; background: var(--marinho); color: var(--branco); }
.sol-banner--azul { background: #1D92FF; }
.sol-banner__bg { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: right center; }
.sol-banner__texto { position: relative; max-width: 35rem; padding: 2.75rem 2.75rem 2.75rem 2.75rem; display: flex; flex-direction: column; align-items: flex-start; gap: 1.5rem; }
.sol-banner h2 { font-size: clamp(1.875rem, 1.4rem + 1.2vw, 2.5rem); font-weight: 400; line-height: 1.15; }
.sol-banner h2 b, .sol-banner h2 strong { font-weight: 600; }
.sol-banner p { font-size: .875rem; font-weight: 600; line-height: 1.9; }
.sol-banner .fw-300 { font-weight: 300; }

/* ---------- Formulário de contato (só desktop no original) ---------- */
.sol-form { background: var(--branco); padding-block: 4rem; }
.sol-form__grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 4rem; align-items: center; padding-inline: 2rem; }
.sol-form h2 { font-size: clamp(1.5rem, 1.2rem + .8vw, 1.875rem); font-weight: 700; line-height: 1.4; margin-bottom: 1.5rem; }
.sol-form__intro { font-size: .875rem; line-height: 1.05; margin-bottom: 1.5rem; }
.sol-form__lista li { display: flex; gap: .4rem; align-items: center; font-size: .875rem; font-weight: 400; line-height: 1.55; color: #333; }
.sol-form__lista svg { flex: none; width: .9rem; height: .9rem; color: var(--azul); stroke-width: 3; }
.sol-form .form { gap: .75rem .75rem; }
.sol-form .form input, .sol-form .form select { padding: .875rem 1rem; }
@media (max-width: 1024px) { .sol-form { display: none; } }

/* ---------- FAQ ---------- */
.sol-faq { max-width: 70rem; margin: 2rem auto 0; }
.sol-faq details { border-bottom: 1px solid rgba(1, 17, 50, .1); border-radius: 1rem; }
.sol-faq details[open] { background: var(--cinza); border-bottom-color: transparent; }
.sol-faq summary { padding: 1rem .75rem; font-size: .875rem; }
.sol-faq summary::after { display: none; }
.sol-faq details > div { border-top: 1px solid rgba(1, 17, 50, .1); padding: 1rem .75rem 1.5rem; color: #333; }

/* ---------- SAP Business One ---------- */
.b1-func__topo { display: flex; justify-content: space-between; align-items: center; gap: 1.5rem; margin-bottom: 2rem; }
.b1-func__topo img { height: 2.5rem; width: auto; }

.b1-stats { background: var(--azul); color: var(--branco); padding-block: 4rem; text-align: center; }
.b1-stats h2 { font-size: clamp(1.5rem, 1.2rem + .8vw, 1.875rem); font-weight: 600; margin-bottom: 2rem; }
.b1-stats ul { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1.5rem; }
.b1-stats strong { display: block; font-size: 2.5rem; font-weight: 600; line-height: 1.2; margin-bottom: .5rem; }
.b1-stats span { font-size: 1rem; font-weight: 300; line-height: 1.6; opacity: .85; }

.b1-core { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 2rem; align-items: center; }
.b1-core__intro { font-size: 1.25rem; font-weight: 500; line-height: 1.6; margin-bottom: 2rem; }
.b1-core__intro strong { font-weight: 700; }
.b1-core h2 { font-size: 1.5rem; font-weight: 600; margin-bottom: 1.5rem; }
.sol-icones { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem 1.5rem; }
.sol-icones li { display: flex; align-items: center; gap: .9375rem; }
.sol-icones h3 { font-size: .9375rem; font-weight: 600; color: #333; line-height: 1.3; }
.sol-icones .sol-ico { background: var(--branco); }

.b1-escolha { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.3fr); gap: 3rem; align-items: center; }
.b1-escolha h2 { font-size: clamp(1.75rem, 1.3rem + 1.1vw, 2.25rem); font-weight: 500; line-height: 1.3; margin-bottom: 1.5rem; }
.b1-mockups .carrossel__item { flex-basis: 100%; padding: 0; }
.b1-mockups .carrossel__item img { max-height: none; width: 100%; aspect-ratio: 1.45; object-fit: contain; }
.b1-mockups .carrossel__nav { justify-content: flex-end; gap: .5rem; padding-right: 1rem; }
.b1-mockups .carrossel__nav button { background: var(--marinho); width: 2.75rem; height: 2.75rem; display: grid; place-items: center; }
.b1-mockups .carrossel__nav svg { width: 1.125rem; height: 1.125rem; }

.b1-plat__titulo { text-align: center; font-size: clamp(1.5rem, 1.2rem + .8vw, 1.875rem); font-weight: 600; margin-bottom: 1.5rem; }
.b1-plat__card { background: var(--branco); display: flex; flex-direction: column; }
.b1-plat__card img { width: 100%; aspect-ratio: 16 / 9; object-fit: cover; }
.b1-plat__card div { padding: 1rem 1rem 1rem; }
.b1-plat__card h3 { font-size: 1.25rem; font-weight: 600; margin-bottom: 1rem; }
.b1-plat__card p { font-size: .875rem; line-height: 1.65; }

.b1-ganhos { background: var(--azul); padding-block: 4rem; }
.b1-ganhos h2 { text-align: center; color: var(--branco); font-size: clamp(1.75rem, 1.3rem + 1.1vw, 2.25rem); font-weight: 400; margin-bottom: 2rem; }
.b1-ganhos h2 span { color: #C9EAFF; font-weight: 600; }
.b1-ganhos .sol-card { padding: 2rem; border: 0; gap: 1.5rem; }
.b1-ganhos .sol-card__topo h3 { font-size: 1rem; color: #333; }
.b1-ganhos .sol-card p { font-size: .875rem; }
.b1-ganhos .sol-ico { width: 5.5rem; height: 5.5rem; padding: 1rem; border-radius: 4px; }

.b1-dif { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem; }
.b1-dif__item { display: flex; flex-direction: column; color: var(--branco); background: var(--azul); }
.b1-dif__item img { width: 100%; aspect-ratio: 16 / 9; object-fit: cover; }
.b1-dif__item h3 { flex: 1; display: flex; flex-direction: column; justify-content: center; padding: 2.5rem; font-size: 1.5rem; font-weight: 400; line-height: 2rem; }
.b1-dif__item h3 b { font-weight: 700; }
.b1-dif__item--alto { grid-row: span 2; }
.b1-dif__item--largo { grid-column: span 2; }
.b1-dif__item--total { grid-column: 1 / -1; }
.b1-dif__item--forte { background: var(--azul-forte); }
.b1-dif__item--branco { background: var(--branco); color: var(--azul); }
.b1-dif__item--marinho { background: var(--marinho); }
.b1-dif__item--total h3 { text-align: center; }
.b1-dif__foto { grid-column: span 2; min-height: 15.625rem; background: url("../../img/diferenciais-b1-1.webp") top center / cover no-repeat; }

/* ---------- S/4HANA ---------- */
.s4-etapas { display: grid; grid-template-columns: 1fr auto 1fr auto 1fr auto 1fr; gap: 1rem; align-items: center; }
.s4-etapas--3 { grid-template-columns: 1fr auto 1fr auto 1fr; margin-top: 1.5rem; }
.s4-etapa { background: var(--marinho); color: var(--branco); padding: 1rem; align-self: stretch; display: flex; flex-direction: column; justify-content: center; }
.s4-etapa__ico { display: grid; place-items: center; width: 3.75rem; height: 3.75rem; border-radius: .5rem; background: rgba(255, 255, 255, .17); margin-bottom: 1.25rem; }
.s4-etapa__ico svg { width: 1.5rem; height: 1.5rem; fill: var(--branco); }
.s4-etapa h3 { font-size: 1.25rem; font-weight: 600; margin-bottom: 1.25rem; }
.s4-etapa p { font-size: .875rem; line-height: 1.6; }
.s4-seta { width: 1.25rem; height: 1.25rem; color: var(--marinho); }
.s4-seta svg { width: 100%; height: 100%; }

.s4-arq { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 2rem; align-items: center; }
.s4-arq h2 { font-size: clamp(1.75rem, 1.3rem + 1.1vw, 2.25rem); font-weight: 700; line-height: 1.3; margin-bottom: 1.5rem; }
.s4-arq__texto > p { font-size: .9375rem; line-height: 1.05; margin-bottom: 1.5rem; }
.s4-arq__lista li { display: flex; align-items: center; gap: .9375rem; margin-bottom: 1rem; }
.s4-arq__lista .sol-ico { width: 3rem; height: 3rem; padding: .25rem; border-radius: .75rem; background: var(--branco); }
.s4-arq__lista h3 { font-size: .9375rem; font-weight: 600; color: #333; }
.s4-arq__lista p { font-size: .75rem; line-height: 1.4; color: #333; }
.s4-arq__img { background: var(--branco); border-radius: 1.25rem; overflow: hidden; }

/* ---------- Grow with SAP ---------- */
.grow-quem__sub { text-align: center; font-size: 1rem; font-weight: 400; line-height: 1.4; max-width: 40rem; margin: .75rem auto 1.75rem; color: #333; }
.grow-quem { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: .5rem; }
.grow-quem li { background: var(--marinho); color: var(--branco); padding: 1.5rem; display: flex; flex-direction: column; gap: 1.75rem; }
.grow-quem__ico { display: grid; place-items: center; width: 3.75rem; height: 3.75rem; border-radius: .75rem; background: #E5F3FF; color: var(--azul); }
.grow-quem__ico svg { width: 1.5rem; height: 1.5rem; }
.grow-quem h3 { font-size: 1.0625rem; font-weight: 600; line-height: 1.25; }

.grow-apoio { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 2.5rem 1.5rem; margin-top: 2rem; }
.grow-apoio li { display: flex; align-items: center; gap: .9375rem; }
.grow-apoio__ico { flex: none; display: grid; place-items: center; width: 3.5rem; height: 3.5rem; border-radius: .75rem; background: var(--branco); }
.grow-apoio__ico svg { width: 1.75rem; height: 1.75rem; fill: #0BAE2E; }
.grow-apoio h3 { font-size: .9375rem; font-weight: 600; color: #333; }
.grow-apoio p { font-size: .8125rem; color: #333; line-height: 1.4; }

/* ---------- Tablet ---------- */
@media (max-width: 1024px) {
  .sol-hero__bg { width: 100%; object-fit: cover; object-position: right center; }
  .sol-hero__conteudo { min-height: 43.75rem; }
  .sol-hero__texto { width: 75%; }
  .sol-cards--4 { --cols: 2; }
  .sol-hero__numeros .container { padding: 0; }
  .sol-hero__numeros ul { display: flex; justify-content: center; width: 100%; border-radius: 0; padding-inline: 1rem; }
  .sol-hero__numeros ul::before { display: none; }
  .sol-vert .carrossel__item { flex-basis: calc((100% - 1rem) / 2); }
  .sol-seg { flex-direction: column; }
  .sol-vert .sol-seg__img { width: 100%; flex: none; height: 15.625rem; }
  .sol-azul { grid-template-columns: minmax(0, 1fr); }
  .sol-comp { grid-template-columns: minmax(0, 1fr); }
  .sol-ciano__grid { grid-template-columns: minmax(0, 1fr); }
  .b1-core, .b1-escolha, .s4-arq { grid-template-columns: minmax(0, 1fr); }
  .b1-stats ul { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .b1-dif { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .b1-dif__item, .b1-dif__item--alto, .b1-dif__item--largo { grid-row: auto; grid-column: auto; }
  .b1-dif__item img { display: none; }
  .b1-dif__item h3 { padding: 1.5rem; min-height: 12rem; }
  .b1-dif__item--total, .b1-dif__foto { grid-column: 1 / -1; }
  .s4-etapas, .s4-etapas--3 { grid-template-columns: minmax(0, 1fr); justify-items: stretch; }
  .s4-seta { justify-self: center; transform: rotate(90deg); }
  .s4-arq__img { display: none; }
  .grow-quem { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .grow-apoio { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

/* ---------- Celular ---------- */
@media (max-width: 767px) {
  .sol-hero::before { background: rgba(222, 239, 250, .8); }
  .sol-hero__bg { object-position: 30% center; }
  .sol-hero__conteudo { min-height: 0; padding-block: 3rem; }
  .sol-hero__texto { width: 100%; gap: 1.5rem; }
  .sol-hero__titulo { font-size: 1.5rem; }
  .sol-hero__logo { max-width: 75%; }
  .sol-hero__texto .btn { width: 100%; padding-block: 1rem; font-size: .9375rem; }
  .sol-hero__numeros { position: relative; }
  .sol-hero__numeros .container { padding: 0; }
  .sol-hero__numeros ul { display: flex; flex-wrap: wrap; justify-content: center; gap: 1rem 1rem; width: 100%; padding: 1.5rem 1rem; border-radius: 0; text-align: center; }
  .sol-hero__numeros li { flex: 0 0 auto; }
  .sol-hero__numeros ul::before { display: none; }
  .sol-cards, .sol-cards--4 { --cols: 1; }
  .sol-card { padding: 1.5rem; }
  .sol-card__topo { flex-direction: column; align-items: flex-start; gap: 1.5rem; }
  .sol-vert { padding: 3rem 0 4rem; }
  .sol-vert__titulo { text-align: left; }
  .sol-vert .carrossel__item { flex-basis: 100%; }
  .sol-vert .carrossel__nav { gap: 8rem; }
  .sol-azul { padding: 2rem 1.5rem; }
  .sol-azul__lista { grid-template-columns: minmax(0, 1fr); gap: 1.5rem; }
  .sol-azul__lista li { flex-direction: column; align-items: flex-start; gap: 1.5rem; font-size: .9375rem; }
  .sol-azul__lista .sol-ico { width: 4.5rem; height: 4.5rem; }
  .sol-icones { grid-template-columns: minmax(0, 1fr); gap: 1.5rem; }
  .sol-icones li { flex-direction: column; align-items: flex-start; gap: 1.5rem; }
  .sol-icones .sol-ico { width: 4.5rem; height: 4.5rem; }
  .sol-icones h3 { font-size: 1.0625rem; }
  .sol-banner__bg { opacity: .3; }
  .sol-banner__texto { padding: 6rem 2rem 2rem; max-width: none; }
  .sol-banner .btn { width: 100%; }
  .sol-faq summary { padding-inline: .5rem; }
  .b1-func__topo { flex-direction: column; align-items: flex-start; }
  .b1-func__topo img { align-self: center; height: 2.5rem; }
  .b1-stats { text-align: left; }
  .b1-stats h2 { text-align: center; }
  .b1-stats ul { grid-template-columns: minmax(0, 1fr); }
  .b1-dif { grid-template-columns: minmax(0, 1fr); padding-inline: 1.75rem; }
  .b1-dif__item h3 { padding: 2.5rem 2.5rem 2.5rem 4rem; font-size: 1.25rem; line-height: 1.8rem; min-height: 0; }
  .b1-dif__item--alto h3 { min-height: 24rem; }
  .b1-dif__foto { min-height: 18.75rem; }
  .b1-ganhos .sol-card__topo { flex-direction: row; align-items: center; }
  .grow-quem, .grow-apoio { grid-template-columns: minmax(0, 1fr); }
  .sol-ciano__img img { height: 18.75rem; }
}

/* Ajustes de títulos usados como itens de lista */
.sol-azul__lista h3, .sol-checks h3 { font-size: inherit; font-weight: inherit; line-height: inherit; }
.s4-seta--entre { display: none; }
@media (max-width: 1024px) { .s4-seta--entre { display: block; margin: 1rem auto; } .s4-etapas--3 { margin-top: 0; } }
@media (max-width: 767px) { .b1-stats strong { font-size: 1.875rem; } }
.sol-azul__texto .sol-azul__p-sm { font-size: .8125rem; margin-bottom: 1.5rem; }
.sol-ciano--alto { padding-block: 6rem; }
.sol-checks--folga { gap: 1.5rem; }
.sol-h2.fw-600 { font-weight: 600; }
.sol-h2.fw-700 { font-weight: 700; }
.s4-diag__titulo { max-width: 36rem; margin-inline: auto; }
.sol-intro.s4-diag__intro { max-width: 48rem; }
@media (max-width: 767px) {
  .sol-checks li, .s4-arq__lista li { flex-direction: column; align-items: flex-start; gap: 1.5rem; }
  .s4-arq__lista .sol-ico { width: 3.5rem; height: 3.5rem; }
  .sol-hero__logo--s4 { margin-left: -.75rem; }
  .sol-comp__lista ul { font-size: 1rem; }
}
