/* ==========================================================================
   PÁGINA PILAR "CRIAÇÃO DE SITES" (/criacao-de-sites/)

   Carregado depois de sites.css: reutiliza a base visual da página Sites
   (hero, eyebrows, cards, portfólio, depoimentos, formulário — classes hs-)
   e acrescenta só os componentes novos (classes cs-).
   Cores: theme.json → settings.custom.sites (atalhos --s-* em sites.css).
   ========================================================================== */

/* Títulos de secção (iguais aos H2 da página Sites) ---------------------- */

.cs-h2,
.cs-depoimentos h2 {
	margin: 12px 0 18px;
	font-size: var(--titulo-secao);
	line-height: 1.15;
	font-weight: 900;
	letter-spacing: -1.4px;
	color: var(--s-texto);
}

.cs-h2 strong,
.cs-page .hs-deliver h2 strong {
	color: var(--s-cobre-claro);
}

.cs-narrow {
	max-width: 800px;
	margin: 0 auto;
}

.cs-narrow > p,
.cs-split__texto > p,
.cs-custo__texto > p,
.cs-faq__inner > p {
	margin: 0 0 14px;
	font-size: var(--texto-base);
	line-height: 1.75;
	color: var(--s-texto-medio);
}

.cs-centro {
	margin: 40px 0 0;
	text-align: center;
}

/* Cartão branco (mesmo estilo dos cartões de preço) */
.cs-cartao {
	background: var(--cor-branco);
	border: 1px solid var(--s-borda-cartao);
	border-radius: 18px;
	box-shadow: 0 12px 30px rgb(var(--rgb-preto) / .05);
}

/* HERO ------------------------------------------------------------------- */

.cs-hero .hl-breadcrumbs {
	margin-bottom: 20px;
}

.cs-hero .hl-breadcrumbs a {
	color: var(--s-cobre);
}

.cs-hero .hs-hero-text h1 {
	margin-top: 16px;
}

.cs-hero .hs-hero-text p + p {
	margin-top: 14px;
}

.cs-hero .hs-hero-text p:last-of-type {
	font-weight: 500;
}

/* WEBSITES PARA CRESCER -------------------------------------------------- */

.cs-crescer h2 {
	margin-bottom: 20px;
}

.cs-destaques {
	max-width: 1180px;
	margin-top: 44px;
	grid-template-columns: repeat(6, 1fr);
}

.cs-destaques svg {
	width: 44px;
	height: 44px;
	margin-bottom: 14px;
	color: var(--s-cobre);
	transition: transform .6s var(--mov-curva);
}

.cs-destaques li:hover svg {
	transform: translateY(-4px) scale(1.08);
}

/* TIPOS DE WEBSITE ------------------------------------------------------- */

.cs-tipos .cs-h2 {
	margin-bottom: 0;
}

.cs-tipos-grid {
	max-width: 1180px;
	margin: 44px auto 0;
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 24px;
	align-items: stretch;
}

.cs-tipos .cs-tipo {
	min-height: 0;
	padding: 32px 28px 28px;
}

.cs-tipo .hs-price-icon {
	margin-bottom: 18px;
}

.cs-tipo h3 {
	font-size: var(--texto-destaque);
}

.cs-tipo p {
	flex: 1;
}

.cs-tipo .cs-tipo-cta {
	position: static;
	width: 100%;
	height: 46px;
	margin-top: 24px;
	border-radius: 8px;
}

/* WORDPRESS e DISPOSITIVOS (texto + visual) ------------------------------ */

.cs-split {
	max-width: calc(1180px + 144px);
	margin: 0 auto;
	padding: 72px;
	display: grid;
	grid-template-columns: 1.1fr .9fr;
	gap: 64px;
	align-items: center;
}

.cs-split .cs-h2 {
	margin-bottom: 22px;
}

.cs-check {
	margin: 0;
	padding: 34px 34px 18px;
	list-style: none;
}

.cs-check li {
	position: relative;
	padding: 0 0 18px 34px;
}

.cs-check li::before {
	content: "✓";
	position: absolute;
	left: 0;
	top: -2px;
	color: var(--s-vivo);
	font-size: 20px;
	font-weight: 900;
}

.cs-check strong {
	display: block;
	font-size: var(--texto-base);
	font-weight: 800;
	color: var(--s-texto-forte);
}

.cs-check span {
	display: block;
	margin-top: 3px;
	font-size: var(--texto-md);
	line-height: 1.55;
	color: var(--s-texto-medio);
}

.cs-disp-lista {
	margin: 8px 0 0;
	padding: 0;
	list-style: none;
}

.cs-disp-lista li {
	padding: 12px 0;
	border-bottom: 1px solid var(--s-borda);
	font-size: var(--texto-md);
	line-height: 1.55;
	color: var(--s-texto-medio);
}

.cs-disp-lista strong {
	color: var(--s-texto-forte);
}

/* Mockups responsivos (desenhados em CSS: leves e nítidos) */
.cs-devices {
	position: relative;
	width: 100%;
	max-width: 560px;
	margin-inline: auto;
	aspect-ratio: 16 / 11;
}

.cs-device {
	position: absolute;
	background: var(--s-fundo-final);
	box-shadow: 0 30px 50px rgb(var(--rgb-castanho) / .18);
}

.cs-device--desktop {
	top: 0;
	left: 9%;
	width: 84%;
	aspect-ratio: 16 / 10;
	padding: 2.2%;
	border-radius: 14px;
}

.cs-device__stand {
	position: absolute;
	left: 50%;
	bottom: -12%;
	width: 22%;
	height: 12%;
	transform: translateX(-50%);
	background: linear-gradient(180deg, var(--s-borda), var(--s-borda-cartao));
	clip-path: polygon(30% 0, 70% 0, 100% 100%, 0 100%);
}

.cs-device--tablet {
	right: 0;
	bottom: 2%;
	width: 30%;
	aspect-ratio: 3 / 4;
	padding: 2.4%;
	border-radius: 16px;
}

.cs-device--phone {
	left: 0;
	bottom: 0;
	width: 17%;
	aspect-ratio: 9 / 19;
	padding: 1.6%;
	border-radius: 18px;
}

.cs-screen {
	height: 100%;
	display: flex;
	flex-direction: column;
	gap: 7%;
	padding: 6% 7%;
	overflow: hidden;
	border-radius: 6px;
	background: var(--s-fundo);
}

.cs-device--phone .cs-screen,
.cs-device--tablet .cs-screen {
	border-radius: 10px;
}

.cs-wf-nav {
	height: 6%;
	min-height: 4px;
	border-radius: 99px;
	background: var(--s-borda);
}

.cs-wf-hero {
	flex: 1.4;
	border-radius: 6px;
	background:
		linear-gradient(90deg, color-mix(in srgb, var(--s-botao-1) 85%, transparent) 0 38%, transparent 38%) 12% 30% / 60% 14% no-repeat,
		linear-gradient(90deg, var(--s-borda) 0 100%) 12% 55% / 46% 8% no-repeat,
		linear-gradient(135deg, var(--s-fundo-hero), var(--s-fundo-setores));
}

.cs-wf-row {
	flex: 1;
	display: flex;
	gap: 7%;
}

.cs-wf-row i {
	flex: 1;
	border-radius: 5px;
	background: var(--cor-branco);
	border: 1px solid var(--s-borda-cartao);
}

.cs-wf-btn {
	height: 9%;
	border-radius: 5px;
	background: linear-gradient(135deg, var(--s-botao-1), var(--s-botao-2));
}

/* SEO -------------------------------------------------------------------- */

.cs-seo h2 {
	margin-bottom: 18px;
}

.cs-seo .hs-lead {
	margin: 0 0 14px;
}

.cs-seo-grid {
	max-width: 1000px;
	margin: 38px auto 0;
	padding: 0;
	list-style: none;
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 14px;
}

.cs-seo-grid li {
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 16px 18px;
	background: var(--cor-branco);
	border: 1px solid var(--s-borda-etiqueta);
	border-radius: 12px;
	text-align: left;
	font-size: var(--texto-md);
	font-weight: 700;
	line-height: 1.3;
	color: var(--s-texto-escuro);
	transition: translate .6s var(--mov-curva), box-shadow .6s var(--mov-curva);
}

.cs-seo-grid li:hover {
	translate: 0 -3px;
	box-shadow: 0 12px 24px rgb(var(--rgb-preto) / .06);
}

.cs-seo-grid svg {
	flex-shrink: 0;
	width: 20px;
	height: 20px;
	color: var(--s-vivo);
}

.cs-nota {
	max-width: 760px;
	margin: 34px auto 0;
	font-size: var(--texto-md);
	line-height: 1.7;
	color: var(--s-texto-medio);
}

.cs-nota a,
.cs-leia a,
.cs-projeto__servicos a {
	color: var(--s-ferrugem);
	font-weight: 700;
	text-underline-offset: 3px;
}

/* PROCESSO --------------------------------------------------------------- */

.cs-etapas {
	max-width: 1180px;
	margin: 0 auto;
	padding: 0;
	list-style: none;
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 24px;
	text-align: left;
}

.cs-etapa {
	position: relative;
	padding: 30px 30px 28px;
	background: var(--cor-branco);
	border: 1px solid var(--s-borda-cartao);
	border-radius: 18px;
	box-shadow: 0 12px 30px rgb(var(--rgb-preto) / .05);
	transition: translate .6s var(--mov-curva), box-shadow .6s var(--mov-curva);
}

.cs-etapa:hover {
	translate: 0 -5px;
	box-shadow: 0 22px 44px rgb(var(--rgb-preto) / .09);
}

.cs-etapa__num {
	display: block;
	font-size: var(--titulo-2);
	font-weight: 900;
	line-height: 1;
	letter-spacing: -1px;
	color: var(--s-cobre-claro);
}

.cs-etapa h3 {
	margin: 14px 0 8px;
	font-size: var(--texto-xl);
	font-weight: 900;
	text-transform: uppercase;
	letter-spacing: .4px;
	color: var(--s-texto-forte);
}

.cs-etapa p {
	margin: 0;
	font-size: var(--texto-md);
	line-height: 1.6;
	color: var(--s-texto-medio);
}

/* INVESTIMENTO ----------------------------------------------------------- */

.cs-investimento {
	padding: 62px 72px;
}

.cs-custo {
	max-width: 1180px;
	margin: 0 auto;
	padding: 44px 48px;
	display: grid;
	grid-template-columns: 1fr auto;
	gap: 48px;
	align-items: center;
}

.cs-custo__acoes {
	display: flex;
	flex-direction: column;
	gap: 14px;
}

.cs-leia {
	display: flex;
	flex-wrap: wrap;
	gap: 6px 10px;
	margin: 18px 0 0;
	padding: 14px 18px;
	border-radius: 10px;
	background: var(--s-fundo-hero);
	font-size: var(--texto-md);
}

.cs-leia span {
	font-weight: 800;
	color: var(--s-texto-forte);
}

/* PROJETOS --------------------------------------------------------------- */

.cs-projetos h2 {
	margin-bottom: 38px;
}

.cs-projeto img {
	height: auto;
}

.cs-projeto__tipo {
	margin: 12px 0 0 !important;
	font-size: var(--texto-sm);
	font-weight: 800;
	color: var(--s-cobre-escuro);
}

.cs-projeto__servicos {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin: 14px 0 0;
	padding: 0;
	list-style: none;
}

.cs-projeto__servicos li {
	padding: 5px 12px;
	border: 1px solid var(--s-borda-etiqueta);
	border-radius: 999px;
	background: var(--cor-branco);
	font-size: var(--texto-xs);
	font-weight: 700;
	color: var(--s-ferrugem-clara);
}

/* DEPOIMENTOS ------------------------------------------------------------ */

.cs-depoimentos h2 {
	margin: 0 0 28px;
	padding-inline: 24px;
}

/* FAQ (acordeão — base em blog.css .hl-faq) ------------------------------ */

.cs-faq {
	padding: 62px 72px;
	background: var(--s-fundo-portfolio);
}

.cs-faq__inner {
	max-width: 860px;
	margin: 0 auto;
}

.cs-faq .hs-eyebrow,
.cs-faq .cs-h2,
.cs-artigos .hs-eyebrow,
.cs-artigos .cs-h2 {
	text-align: center;
}

.cs-faq .cs-h2 {
	margin-bottom: 30px;
}

.cs-faq .hl-faq__item {
	border-color: var(--s-borda);
}

.cs-faq .hl-faq__item summary h3 {
	color: var(--s-texto-forte);
}

.cs-faq .hl-faq__item summary::after {
	color: var(--s-vivo);
}

.cs-faq .hl-faq__answer {
	color: var(--s-texto-medio);
}

/* ARTIGOS DO BLOG -------------------------------------------------------- */

.cs-artigos {
	padding: 62px 72px;
}

.cs-artigos__inner {
	max-width: 1180px;
	margin: 0 auto;
}

.cs-artigos .cs-h2 {
	margin-bottom: 34px;
}

/* FORMULÁRIO FINAL ------------------------------------------------------- */

.cs-page .hs-final-form {
	margin-top: 56px;
}

.cs-final-texto {
	margin: 0 0 18px;
	font-size: var(--texto-md);
	line-height: 1.6;
	color: rgb(var(--rgb-branco) / .85);
}

/* RESPONSIVO ------------------------------------------------------------- */

@media (max-width: 1200px) {
	.cs-destaques {
		grid-template-columns: repeat(3, 1fr);
		row-gap: 28px;
	}

	.cs-destaques li:nth-child(3n) {
		border-right: none;
	}
}

@media (max-width: 1024px) {
	.cs-destaques {
		grid-template-columns: repeat(2, 1fr);
	}

	.cs-tipos-grid {
		grid-template-columns: repeat(2, 1fr);
		max-width: 760px;
	}

	.cs-split {
		grid-template-columns: 1fr;
		gap: 40px;
		padding: 54px 24px;
	}

	.cs-seo-grid {
		grid-template-columns: repeat(2, 1fr);
	}

	.cs-etapas {
		grid-template-columns: repeat(2, 1fr);
	}

	.cs-investimento,
	.cs-faq,
	.cs-artigos {
		padding: 50px 24px;
	}

	.cs-custo {
		grid-template-columns: 1fr;
		gap: 28px;
		padding: 34px 28px;
	}

	.cs-custo__acoes {
		flex-direction: row;
		flex-wrap: wrap;
	}
}

@media (max-width: 600px) {
	.cs-tipos-grid,
	.cs-etapas {
		grid-template-columns: 1fr;
	}

	.cs-seo-grid li {
		padding: 14px;
		font-size: var(--texto-sm);
	}

	.cs-tipos {
		padding: 44px 18px;
	}

	.cs-custo__acoes .hs-btn {
		flex: 1 1 100%;
	}

	.cs-etapa {
		padding: 24px;
	}
}

@media (max-width: 380px) {
	.cs-seo-grid {
		grid-template-columns: 1fr;
	}
}
