/* =========================================================
   Case aberto e Clientes e Resultados
   ========================================================= */

/* ---------- Case aberto (conteúdo de 991px a partir de x=227) ---------- */
.cs-case { --cs-c1: #f7cd7d; --cs-c2: #bf6938; background: #f7f7f7; padding-top: 157px; padding-bottom: 156px; }
.cs-case__wrap { max-width: calc(991px + 2 * var(--sb-gutter)); }
.cs-badge { display: inline-flex; align-items: center; justify-content: center; width: 245px; height: 62px; padding: 0 30px; border: 2px solid var(--cs-c1); border-radius: 20px; background: linear-gradient(90deg, var(--cs-c1), var(--cs-c2)); color: #fff; font-weight: 600; transition: transform .3s var(--sb-ease), box-shadow .3s; }
.cs-badge:hover { transform: translateY(-2px); box-shadow: 0 10px 24px rgba(0, 0, 0, .08); }
.cs-badge__logo { width: 149px; height: 30px; object-fit: contain; }
.cs-title { margin-top: 30px; font-size: var(--sb-fs-lg); line-height: 1; letter-spacing: -.03em; font-weight: 400; color: #000; }
.cs-sobre { margin-top: 25px; max-width: 755px; font-size: 16px; line-height: 20px; color: var(--sb-gray); }
.cs-sobre p + p { margin-top: 20px; }
.cs-foto { margin: 25px 0 0; aspect-ratio: 991 / 350; border-radius: 30px; overflow: hidden; background: #e4e4e4; }
.cs-foto img { width: 100%; height: 100%; object-fit: cover; }

.cs-label { font-size: 14px; line-height: 18px; letter-spacing: -.03em; font-weight: 500; color: var(--sb-cs-accent, #c37a3d); }
.cs-bloco--desafio { margin-top: 47px; }
.cs-desafio { margin-top: 6px; max-width: 755px; font-size: 16px; line-height: 20px; color: var(--sb-gray); }
.cs-duo { display: grid; grid-template-columns: 569px 1fr; margin-top: 48px; }
.cs-small { margin-top: 6px; font-size: 14px; line-height: 20px; color: #000; }
.cs-duo > .cs-bloco:first-child .cs-small { max-width: 443px; }
.cs-duo > .cs-bloco:nth-child(2) .cs-small { max-width: 420px; }
.cs-small p + p { margin-top: 14px; }
.cs-duo--fim { margin-top: 30px; align-items: end; }
.cs-ind { display: grid; grid-template-columns: auto 1fr; grid-template-areas: "label label" "num leg"; column-gap: 0; align-items: end; }
.cs-ind .cs-label { grid-area: label; }
.cs-ind__num { grid-area: num; margin-top: 12px; font-size: var(--sb-fs-lg); line-height: 1; letter-spacing: -.03em; font-weight: 300; color: var(--sb-cs-accent, #c37a3d); margin-right: 7px; }
.cs-ind__leg { grid-area: leg; max-width: 97px; font-size: 16px; line-height: 20px; color: var(--sb-text); transform: translateY(38px); }
.cs-bloco--btn { padding-bottom: 7px; }
.cs-btn { width: 341px; max-width: 100%; border: 2px solid var(--cs-c1); color: var(--sb-cs-accent, #c37a3d); background: transparent; }
.cs-btn:hover { background: linear-gradient(90deg, var(--cs-c1), var(--cs-c2)); color: #fff; border-color: transparent; }

/* A cor de texto do Figma (#c37a3d) é a cor escura da Sigma; nas demais empresas usa a 2ª cor. */
.cs-case { --sb-cs-accent: var(--cs-c2); }

/* Faixa final do case: título e botão alinhados embaixo, como no Figma */
.sb-cta--case .sb-cta__inner { align-items: flex-end; padding-bottom: 64px; }
.sb-cta--case .sb-cta__title { max-width: 651px; }
.sb-cta--case .sb-cta__side { padding-bottom: 13px; }

/* ---------- Clientes e Resultados (lista) ---------- */
.cs-lista-hero { padding-bottom: 0; }
.cs-lista-hero__text { margin-top: 40px; }
.cs-lista { margin-top: 70px; padding-bottom: 140px; }

/* ---------- Responsivo ---------- */
@media (max-width: 1024px) {
	.cs-duo { grid-template-columns: 1fr 1fr; column-gap: 32px; }
}
@media (max-width: 768px) {
	.cs-case { padding-top: 120px; padding-bottom: 90px; }
	.cs-title { margin-top: 24px; }
	.cs-foto { margin-top: 40px; aspect-ratio: 4 / 3; }
	.cs-duo { grid-template-columns: 1fr; row-gap: 32px; margin-top: 32px; }
	.cs-duo--fim { margin-top: 36px; row-gap: 40px; }
	.cs-ind__leg { transform: none; padding-bottom: 8px; }
	.cs-bloco--btn { padding-bottom: 0; }
	.cs-btn { width: 100%; }
	.cs-lista { margin-top: 48px; padding-bottom: 90px; }
	.sb-cta--case .sb-cta__inner { align-items: flex-start; }
	.sb-cta--case .sb-cta__side { padding-bottom: 0; }
}
