/*
 * TZACH — Home redesign (v1.3.92)
 * Portado do protótipo aprovado (/workspace/tzach-preview, v8). Só a página inicial
 * carrega este arquivo. Escopo: seções .tzh (HTML) + FAQ .tzh-faq. Header, footer e
 * trilho (.tzach-booking-section / .tzb) não são tocados aqui.
 * Paleta oficial: petróleo #275D68 (hover #1F4C55), carvão #202326, canvas #FAFAF8,
 * borda #D8DDDD, muted #657074, superfície #F2F4F3. Sem laranja, sem rosa.
 */
:root {
	--tzh-canvas: #fafaf8;
	--tzh-card: #ffffff;
	--tzh-carvao: #202326;
	--tzh-petroleo: #275d68;
	--tzh-petroleo-hover: #1f4c55;
	--tzh-borda: #d8dddd;
	--tzh-muted: #657074;
	--tzh-superficie: #f2f4f3;
}

/* Contêineres Elementor das seções novas: sem padding/gap próprios */
body .elementor .e-con.tzh {
	--padding-top: 0px;
	--padding-right: 0px;
	--padding-bottom: 0px;
	--padding-left: 0px;
	--gap: 0px;
	--row-gap: 0px;
	--column-gap: 0px;
	display: block !important;
	padding: 0 !important;
	margin: 0 !important;
	background: transparent;
}
body .elementor .e-con.tzh > .elementor-widget-html {
	width: 100%;
	max-width: 100%;
	margin: 0 !important;
}

/* Reset local (igual ao protótipo) */
body .elementor .tzh,
body .elementor .tzh * {
	box-sizing: border-box;
}
body .elementor .tzh :where(p, h1, h2, h3, ul, ol, li, figure, form) {
	margin: 0;
	padding: 0;
}
body .elementor .tzh {
	font-family: 'Poppins', system-ui, sans-serif;
	color: var(--tzh-carvao);
	font-size: 17px;
	line-height: 1.55;
	-webkit-font-smoothing: antialiased;
}
body .elementor .tzh a { color: inherit; text-decoration: none; }
body .elementor .tzh img { max-width: 100%; display: block; height: auto; }
body .elementor .tzh .wrap { width: 100%; max-width: 1200px; margin: 0 auto; padding: 0 20px; }
body .elementor .tzh :is(a, button, input):focus-visible { outline: 3px solid var(--tzh-petroleo); outline-offset: 3px; }

/* Botões (sobrepõe o reset do tema, que usa #c36) */
body .elementor .tzh .btn,
body .elementor .tzh button.btn {
	display: inline-flex;
	white-space: nowrap;
	align-items: center;
	justify-content: center;
	gap: 10px;
	min-height: 52px;
	padding: 0 28px;
	border: 0 !important;
	border-radius: 14px;
	background: var(--tzh-petroleo) !important;
	color: #fff !important;
	font: 500 17px/1 'Poppins', sans-serif;
	text-decoration: none !important;
	cursor: pointer;
	transition: background .15s;
}
body .elementor .tzh .btn:hover,
body .elementor .tzh .btn:focus,
body .elementor .tzh .btn:active {
	background: var(--tzh-petroleo-hover) !important;
	color: #fff !important;
}

/* Herói */
body .elementor .e-con.tzh-hero { position: relative; overflow: hidden; background: linear-gradient(170deg, #f1f4f3 0%, var(--tzh-canvas) 60%); }
body .elementor .tzh-hero .wrap.hero-wrap { position: relative; display: flex; flex-direction: column; padding-top: 40px; padding-bottom: 56px; }
body .elementor .tzh .promessa { font-size: 15px; font-weight: 400; color: var(--tzh-muted); max-width: 36ch; margin-bottom: 14px; }
body .elementor .tzh .promessa strong { font-weight: 600; color: var(--tzh-carvao); }
body .elementor .tzh h1.tzh-title { font-family: 'Poppins', sans-serif; font-size: 32px; line-height: 1.18; font-weight: 600; letter-spacing: -.02em; margin-bottom: 22px; color: var(--tzh-carvao); }
body .elementor .tzh h1.tzh-title span { color: var(--tzh-petroleo); }
body .elementor .tzh .cep-card { background: var(--tzh-card); border: 1px solid var(--tzh-borda); border-radius: 20px; padding: 24px; box-shadow: 0 12px 32px -24px rgba(32, 35, 38, .35); }
body .elementor .tzh .cep-card label { display: block; font-size: 15px; font-weight: 500; margin-bottom: 10px; color: var(--tzh-carvao); }
body .elementor .tzh input.cep-input {
	width: 100%;
	min-height: 60px;
	border: 1px solid var(--tzh-borda) !important;
	border-radius: 14px !important;
	padding: 0 18px !important;
	font: 500 21px 'Poppins', sans-serif;
	letter-spacing: .03em;
	color: var(--tzh-carvao);
	background: #fff !important;
	box-shadow: none;
}
body .elementor .tzh input.cep-input::placeholder { color: var(--tzh-muted); font-weight: 400; letter-spacing: 0; opacity: 1; }
body .elementor .tzh input.cep-input:focus { outline: none; border-color: var(--tzh-petroleo) !important; box-shadow: 0 0 0 3px rgba(39, 93, 104, .18); }
body .elementor .tzh .cep-card .btn { width: 100%; margin-top: 12px; }
body .elementor .tzh .cep-ajuda { font-size: 14px; color: var(--tzh-muted); margin-top: 14px; text-align: center; }
body .elementor .tzh .cep-ajuda a { color: var(--tzh-petroleo); font-weight: 500; text-decoration: underline; }
body .elementor .tzh .hero-foto { display: none; }
/* Mobile: ilustração como fundo suave atrás de todo o herói (único blur da página) */
body .elementor .tzh .hero-bg { position: absolute; inset: 0; pointer-events: none; overflow: hidden; }
body .elementor .tzh .hero-bg img { position: absolute; left: 50%; top: 50%; width: 165%; max-width: none; transform: translate(-44%, -46%); filter: blur(4.5px); opacity: .42; }
body .elementor .tzh .hero-bg::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(250, 250, 248, .55) 0%, rgba(250, 250, 248, .35) 45%, rgba(250, 250, 248, .55) 100%); }

/* Seções */
body .elementor .e-con.tzh-sec { padding: 56px 0 !important; }
body .elementor .e-con.tzh-processo { padding-top: 16px !important; }
body .elementor .e-con.tzh-area { padding-top: 16px !important; }
body .elementor .tzh .sec-head h2 { margin-bottom: 12px; }
body .elementor .tzh .lead { color: var(--tzh-muted); font-size: 16px; }
body .elementor .tzh .sec-head .lead { margin-bottom: 24px; }
body .elementor .tzh .eyebrow { font-size: 12px; font-weight: 500; letter-spacing: .14em; text-transform: uppercase; color: var(--tzh-petroleo); margin-bottom: 8px; }
body .elementor .tzh h2 { font-family: 'Poppins', sans-serif; font-size: 27px; line-height: 1.2; font-weight: 600; letter-spacing: -.02em; margin-bottom: 28px; color: var(--tzh-carvao); }
body .elementor .tzh h3 { font-family: 'Poppins', sans-serif; color: inherit; }
body .elementor .tzh .icone { flex: none; width: 48px; height: 48px; border-radius: 14px; background: rgba(39, 93, 104, .08); display: grid; place-items: center; color: var(--tzh-petroleo); }
body .elementor .tzh .icone svg { width: 24px; height: 24px; }
body .elementor .tzh .cta-unico { display: flex; width: 100%; margin-top: 28px; }
body .elementor .tzh .card { background: var(--tzh-card); border: 1px solid var(--tzh-borda); border-radius: 20px; }

/* Como funciona: carrossel (mobile) / linha do tempo (desktop) */
body .elementor .tzh .passos { list-style: none; display: flex; gap: 12px; overflow-x: auto; scroll-snap-type: x mandatory; -webkit-overflow-scrolling: touch; scrollbar-width: none; overscroll-behavior-x: contain; margin: 0 -20px; padding: 4px 20px 8px; scroll-padding-left: 20px; }
body .elementor .tzh .passos::-webkit-scrollbar { display: none; }
body .elementor .tzh .passo { flex: 0 0 80%; scroll-snap-align: start; position: relative; }
body .elementor .tzh .passo-card { height: 100%; background: var(--tzh-card); border: 1px solid var(--tzh-borda); border-radius: 20px; padding: 24px; padding-top: 68px; }
body .elementor .tzh .node { position: absolute; left: 24px; top: 24px; z-index: 1; width: 36px; height: 36px; border-radius: 50%; background: var(--tzh-petroleo); color: #fff; display: grid; place-items: center; font-weight: 500; font-size: 15px; }
body .elementor .tzh .passo-card .icone { position: absolute; right: 24px; top: 20px; width: 44px; height: 44px; }
body .elementor .tzh .passo-card .icone svg { width: 22px; height: 22px; }
body .elementor .tzh .passo h3 { font-size: 19px; font-weight: 600; margin-bottom: 6px; }
body .elementor .tzh .passo p { font-size: 16px; color: var(--tzh-muted); }
body .elementor .tzh .dots { display: flex; justify-content: center; gap: 8px; margin-top: 16px; }
body .elementor .tzh .dots i { width: 8px; height: 8px; border-radius: 50%; background: var(--tzh-borda); transition: all .2s; }
body .elementor .tzh .dots i.on { width: 22px; border-radius: 8px; background: var(--tzh-petroleo); }

/* Confiança */
body .elementor .e-con.tzh-trust { padding-top: 0 !important; }
body .elementor .tzh .trust-grid { list-style: none; display: grid; grid-template-columns: minmax(0, 1fr); gap: 14px; }
body .elementor .tzh .trust-item { display: flex; gap: 16px; align-items: flex-start; padding: 24px; }
body .elementor .tzh .trust-item h3,
body .elementor .tzh .why-list h3 { font-size: 18px; font-weight: 600; margin-bottom: 2px; }
body .elementor .tzh .trust-item p,
body .elementor .tzh .why-list p { font-size: 15px; color: var(--tzh-muted); }
body .elementor .tzh .trust-item.destaque { background: var(--tzh-petroleo); border-color: var(--tzh-petroleo); color: #fff; }
body .elementor .tzh .trust-item.destaque h3 { color: #fff; }
body .elementor .tzh .trust-item.destaque .icone { background: rgba(255, 255, 255, .14); color: #fff; }
body .elementor .tzh .trust-item.destaque p { color: rgba(255, 255, 255, .86); }
body .elementor .tzh .icone.sm { width: 44px; height: 44px; border-radius: 12px; }
body .elementor .tzh .icone.sm svg { width: 22px; height: 22px; }

/* Por que TZACH */
body .elementor .tzh .why-grid { display: grid; grid-template-columns: minmax(0, 1fr); gap: 28px; }
body .elementor .tzh .why-foto img { width: 100%; max-width: 360px; height: auto; margin: 0 auto; }
body .elementor .tzh-why h2 { margin-bottom: 12px; }
body .elementor .tzh .why-list { list-style: none; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px 16px; margin-top: 8px; }
body .elementor .tzh .why-list li { display: flex; flex-direction: column; gap: 10px; }
body .elementor .tzh .why-list h3 { font-size: 16px; }
body .elementor .tzh .why-list p { font-size: 14.5px; }

/* Área atendida */
body .elementor .tzh .area-grid { display: grid; grid-template-columns: minmax(0, 1fr); gap: 22px; }
body .elementor .tzh .mapa { position: relative; border-radius: 20px; overflow: hidden; border: 1px solid var(--tzh-borda); aspect-ratio: 16 / 11; background: var(--tzh-superficie); }
body .elementor .tzh .mapa img { width: 100%; height: 100%; object-fit: cover; }
body .elementor .tzh .mapa .rotulo { position: absolute; left: 14px; bottom: 14px; background: var(--tzh-card); border: 1px solid var(--tzh-borda); border-radius: 12px; padding: 8px 14px; font-size: 14px; font-weight: 500; color: var(--tzh-carvao); }
body .elementor .tzh .mapa .aviso { position: absolute; right: 12px; top: 12px; font-size: 11px; background: rgba(250, 250, 248, .92); border: 1px solid var(--tzh-borda); color: var(--tzh-muted); border-radius: 8px; padding: 3px 8px; }
body .elementor .tzh .area-texto h2 { margin-bottom: 12px; }
body .elementor .tzh .area-texto p:not(.eyebrow) { color: var(--tzh-muted); max-width: 40ch; }

/* CTA final */
body .elementor .e-con.tzh-final { padding-top: 0 !important; }
body .elementor .tzh .final-card { overflow: hidden; text-align: center; }
body .elementor .tzh .final-foto img { width: 100%; height: 150px; object-fit: cover; }
body .elementor .tzh .final-texto { padding: 32px 22px 36px; display: flex; flex-direction: column; align-items: center; }
body .elementor .tzh .final-texto h2 { margin-bottom: 12px; }
body .elementor .tzh .final-texto .lead { margin-bottom: 28px; max-width: 44ch; }
body .elementor .tzh .btn.btn-xl { min-height: 58px; width: 100%; font-size: 18px; padding: 0 40px; }
body .elementor .tzh .br-m { display: inline; }

/* ---------- FAQ (widget Elementor ao vivo, conteúdo intacto; só visual novo) ---------- */
body .elementor .e-con.tzh-faq {
	--padding-top: 24px;
	--padding-bottom: 56px;
	--padding-left: 0px;
	--padding-right: 0px;
	padding: 24px 0 56px !important;
	background: transparent !important;
}
body .elementor > .e-con.tzh-faq > .e-con-inner {
	display: grid !important;
	grid-template-columns: minmax(0, 1fr);
	gap: 0 !important;
	width: 100%;
	max-width: 1200px !important;
	margin: 0 auto;
	padding: 0 20px !important;
	font-family: 'Poppins', sans-serif;
}
body .elementor .tzh-faq > .e-con-inner > .elementor-widget { width: 100%; max-width: none !important; margin: 0 !important; }
body .elementor .tzh-faq,
body .elementor .tzh-faq :is(.elementor-heading-title, .elementor-widget-text-editor, .elementor-widget-text-editor p, .elementor-accordion, .elementor-tab-title, .elementor-tab-content, .faq-help-t) { font-family: 'Poppins', system-ui, sans-serif !important; }
body .elementor .tzh-faq .tzach-eyebrow .elementor-heading-title {
	font-size: 12px !important;
	font-weight: 500 !important;
	letter-spacing: .14em !important;
	text-transform: uppercase;
	line-height: 1.55 !important;
	color: var(--tzh-petroleo) !important;
	margin: 0 0 8px !important;
}
body .elementor .tzh-faq .tzach-eyebrow .elementor-heading-title::before,
body .elementor .tzh-faq .tzach-eyebrow .elementor-heading-title::after { display: none !important; }
body .elementor .tzh-faq h2.elementor-heading-title {
	font-size: 27px !important;
	line-height: 1.2 !important;
	font-weight: 600 !important;
	letter-spacing: -.02em !important;
	color: var(--tzh-carvao) !important;
	margin: 0 0 16px !important;
}
body .elementor .tzh-faq > .e-con-inner > .elementor-widget.tzh-faq-help { margin-bottom: 24px !important; }
body .elementor .tzh-faq .faq-help { background: var(--tzh-card); border: 1px solid var(--tzh-borda); border-radius: 20px; padding: 20px 24px; display: flex; flex-direction: column; gap: 12px; align-items: flex-start; }
body .elementor .tzh-faq .faq-help p { margin: 0; }
body .elementor .tzh-faq .faq-help-t { font-weight: 500; font-size: 17px; color: var(--tzh-carvao); }
body .elementor .tzh-faq .faq-help a.wa-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	min-height: 52px;
	padding: 0 24px;
	border: 1px solid var(--tzh-borda);
	border-radius: 14px;
	background: transparent;
	color: var(--tzh-petroleo) !important;
	font: 500 16px/1 'Poppins', sans-serif;
	text-decoration: none !important;
	white-space: nowrap;
	transition: background .15s;
}
body .elementor .tzh-faq .faq-help a.wa-btn:hover,
body .elementor .tzh-faq .faq-help a.wa-btn:focus { background: var(--tzh-superficie); color: var(--tzh-petroleo-hover) !important; }
body .elementor .tzh-faq .faq-help a.wa-btn svg { width: 20px; height: 20px; flex: none; }
body .elementor .tzh-faq .elementor-accordion { display: flex; flex-direction: column; gap: 10px; counter-reset: tzhfaq; border: 0 !important; background: transparent !important; }
body .elementor .tzh-faq .elementor-accordion-item {
	counter-increment: tzhfaq;
	background: var(--tzh-card) !important;
	border: 1px solid var(--tzh-borda) !important;
	border-radius: 20px !important;
	box-shadow: none !important;
	overflow: hidden;
	margin: 0 !important;
	transition: border-color .15s;
}
body .elementor .tzh-faq .elementor-accordion-item + .elementor-accordion-item { border-top: 1px solid var(--tzh-borda) !important; }
body .elementor .tzh-faq .elementor-accordion-item:has(.elementor-active) { border-color: rgba(39, 93, 104, .45) !important; }
body .elementor .tzh-faq .elementor-tab-title {
	display: flex !important;
	align-items: center;
	gap: 14px;
	min-height: 64px;
	padding: 16px 20px !important;
	margin: 0 !important;
	border: 0 !important;
	background: transparent !important;
	cursor: pointer;
	font: 500 16px/1.4 'Poppins', sans-serif !important;
	color: var(--tzh-carvao) !important;
}
body .elementor .tzh-faq .elementor-tab-title::before {
	content: counter(tzhfaq, decimal-leading-zero);
	display: none;
	flex: none;
	order: 0;
	font-size: 12px;
	font-weight: 500;
	letter-spacing: .06em;
	color: var(--tzh-petroleo);
}
body .elementor .tzh-faq .elementor-tab-title::after { display: none !important; content: none !important; }
body .elementor .tzh-faq .elementor-tab-title a.elementor-accordion-title,
body .elementor .tzh-faq .elementor-accordion-title {
	order: 1;
	flex: 1 1 auto;
	color: var(--tzh-carvao) !important;
	font: inherit !important;
	text-decoration: none !important;
	padding: 0 !important;
}
body .elementor .tzh-faq .elementor-accordion-icon {
	order: 2;
	flex: none;
	float: none !important;
	display: grid !important;
	place-items: center;
	width: 32px !important;
	height: 32px;
	margin: 0 !important;
	padding: 0 !important;
	border-radius: 50%;
	border: 1px solid var(--tzh-borda) !important;
	background: transparent !important;
	color: var(--tzh-petroleo) !important;
	fill: var(--tzh-petroleo) !important;
	transform: none !important;
}
body .elementor .tzh-faq .elementor-accordion-icon svg { width: 12px !important; height: 12px !important; fill: var(--tzh-petroleo) !important; transform: none !important; }
body .elementor .tzh-faq .elementor-tab-title.elementor-active .elementor-accordion-icon { background: transparent !important; border-color: var(--tzh-borda) !important; }
body .elementor .tzh-faq .elementor-tab-content {
	padding: 0 20px 20px !important;
	border: 0 !important;
	background: transparent !important;
	color: var(--tzh-muted) !important;
	font: 400 15.5px/1.55 'Poppins', sans-serif !important;
}
body .elementor .tzh-faq .elementor-tab-content p { margin: 0; color: inherit; }
body .elementor .tzh-faq .elementor-tab-content p + p { margin-top: 10px; }
body .elementor .tzh-faq .elementor-tab-content :is(b, strong) { color: var(--tzh-carvao); font-weight: 500; }

/* ---------- Desktop ---------- */
@media (min-width: 900px) {
	body .elementor .tzh { font-size: 18px; }
	body .elementor .tzh .wrap { max-width: 1280px; padding: 0 48px 0 96px; }
	body .elementor .tzh-hero .wrap.hero-wrap { min-height: min(calc(100vh - 76px), 760px); max-width: none; padding: 0; display: grid; grid-template-columns: 1fr 1fr; align-items: stretch; }
	body .elementor .tzh .hero-texto { display: flex; flex-direction: column; justify-content: center; padding: 48px 64px 48px max(96px, calc((min(100vw, 1920px) - 1280px) / 2 + 96px)); }
	body .elementor .tzh .promessa { font-size: 17px; max-width: 42ch; }
	body .elementor .tzh h1.tzh-title { font-size: 48px; margin-bottom: 28px; }
	body .elementor .tzh .cep-card { padding: 32px; max-width: 500px; }
	body .elementor .tzh input.cep-input { min-height: 64px; font-size: 22px; }
	body .elementor .tzh .hero-bg { display: none; }
	body .elementor .tzh .hero-foto { display: flex; align-items: center; justify-content: center; position: relative; overflow: hidden; background: radial-gradient(circle at 55% 55%, #f3f5f4 0%, #eceFee 55%, #e4e9e8 100%); border-left: 1px solid var(--tzh-borda); }
	body .elementor .tzh .hero-foto img { width: 100%; max-width: 620px; padding: 48px; filter: none; }
	body .elementor .e-con.tzh-sec { padding: 96px 0 !important; }
	body .elementor .e-con.tzh-processo { padding-top: 24px !important; }
	body .elementor .tzh h2 { font-size: 38px; }
	body .elementor .tzh .lead { font-size: 17px; }
	body .elementor .tzh .sec-head { display: flex; justify-content: space-between; align-items: flex-end; gap: 40px; margin-bottom: 40px; }
	body .elementor .tzh .sec-head h2 { margin-bottom: 0; }
	body .elementor .tzh .sec-head .lead { max-width: 40ch; margin-bottom: 0; }
	body .elementor .tzh .cta-unico { display: flex; width: fit-content; margin: 44px auto 0; }
	body .elementor .tzh .passos { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 24px; overflow: visible; margin: 0; padding: 0; position: relative; }
	body .elementor .tzh .passos::before { content: ""; position: absolute; left: 12.5%; right: 12.5%; top: 22px; height: 2px; background: var(--tzh-borda); }
	body .elementor .tzh .passo { display: flex; flex-direction: column; align-items: center; }
	body .elementor .tzh .node { position: relative; left: auto; top: auto; width: 46px; height: 46px; font-size: 17px; box-shadow: 0 0 0 8px var(--tzh-canvas); margin-bottom: 24px; }
	body .elementor .tzh .passo-card { padding: 28px; width: 100%; }
	body .elementor .tzh .passo-card .icone { position: static; margin-bottom: 18px; }
	body .elementor .tzh .dots { display: none; }
	body .elementor .e-con.tzh-trust { padding: 16px 0 48px !important; }
	body .elementor .tzh .trust-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; }
	body .elementor .tzh .trust-item { padding: 28px; }
	body .elementor .e-con.tzh-why { padding-top: 48px !important; }
	body .elementor .tzh .why-grid { grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); gap: 72px; row-gap: 56px; align-items: center; }
	body .elementor .tzh .why-foto img { max-width: 440px; margin: 0; }
	body .elementor .tzh .why-list { grid-column: 1 / -1; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 0; margin-top: 0; border-top: 1px solid var(--tzh-borda); padding-top: 36px; }
	body .elementor .tzh .why-list li { flex-direction: row; gap: 14px; padding: 0 24px; border-left: 1px solid var(--tzh-borda); }
	body .elementor .tzh .why-list li:first-child { padding-left: 0; border-left: 0; }
	body .elementor .tzh .why-list h3 { font-size: 17px; }
	body .elementor .tzh .why-list p { font-size: 15px; }
	/* Área atendida: sem mapa no desktop, texto centralizado (~640px) */
	body .elementor .e-con.tzh-area { padding: 8px 0 88px !important; }
	body .elementor .tzh .area-grid { justify-items: center; }
	body .elementor .tzh .mapa { display: none; }
	body .elementor .tzh .area-texto { max-width: 640px; text-align: center; }
	body .elementor .tzh .area-texto p:not(.eyebrow) { margin: 0 auto; font-size: 18px; }
	body .elementor .e-con.tzh-final { padding: 16px 0 96px !important; }
	body .elementor .tzh .final-foto img { height: 240px; }
	body .elementor .tzh .final-texto { padding: 56px 48px 64px; }
	body .elementor .tzh .final-texto h2 { font-size: 42px; }
	body .elementor .tzh .btn.btn-xl { width: auto; min-width: 360px; min-height: 60px; font-size: 19px; }
	body .elementor .tzh .br-m { display: none; }
	/* FAQ */
	body .elementor .e-con.tzh-faq { padding: 32px 0 96px !important; }
	body .elementor > .e-con.tzh-faq > .e-con-inner {
		max-width: 1280px !important;
		padding: 0 48px 0 96px !important;
		grid-template-columns: minmax(0, 4fr) minmax(0, 8fr);
		grid-template-rows: auto auto auto 1fr;
		column-gap: 64px !important;
		align-items: start;
	}
	body .elementor .tzh-faq > .e-con-inner > .elementor-widget { grid-column: 1; }
	body .elementor .tzh-faq > .e-con-inner > .elementor-widget-accordion { grid-column: 2; grid-row: 1 / span 4; }
	body .elementor .tzh-faq h2.elementor-heading-title { font-size: 38px !important; }
	body .elementor .tzh-faq .elementor-tab-title { padding: 18px 24px !important; font-size: 17px !important; }
	body .elementor .tzh-faq .elementor-tab-title::before { display: block; }
	body .elementor .tzh-faq .elementor-tab-content { padding: 0 24px 22px 58px !important; font-size: 16px !important; }
}

/* v1.3.93 - resultado da cobertura no card de CEP do herói (espelha o status do trilho). */
body .elementor .tzh .cep-card .tzh-cep-result { margin: 12px 0 0; color: var(--tzh-petroleo); font-size: 14px; font-weight: 500; line-height: 1.45; }
body .elementor .tzh .cep-card .tzh-cep-result[hidden] { display: none; }
body .elementor .tzh .cep-card .tzh-cep-result .tzb-cep-contact { display: block; margin-top: 6px; color: var(--tzh-carvao); font-weight: 500; }
body .elementor .tzh .cep-card .tzh-cep-result a.tzb-cep-wa { display: inline-flex; margin-top: 10px; padding: 8px 14px; border-radius: 999px; background: var(--tzh-petroleo); color: #fff; font-size: 14px; font-weight: 600; text-decoration: none; }

/* v1.3.93 - trilho passo 3, modal "Quais serviços?" no celular: rótulos e cartões dentro do respiro lateral do título, sem estouro horizontal. */
@media (max-width: 767px) {
	body .tzb .tzb-service-dialog .tzb-service-scroll { box-sizing: border-box; width: 100%; padding-left: 22px; padding-right: 22px; overflow-x: hidden; }
	body .tzb .tzb-service-dialog .tzb-service-scroll p.tzb-service-group { box-sizing: border-box; max-width: 100%; margin-left: 0; margin-right: 0; padding: 0; }
	body .tzb .tzb-service-dialog .tzb-service-option,
	body .tzb .tzb-service-dialog .tzb-service-option:hover,
	body .tzb .tzb-service-dialog .tzb-service-option:focus,
	body .tzb .tzb-service-dialog .tzb-service-option:focus-visible,
	body .tzb .tzb-service-dialog .tzb-service-option:active { box-sizing: border-box; width: 100%; max-width: 100%; min-width: 0; margin-left: 0; margin-right: 0; white-space: normal; text-align: left; }
	body .tzb .tzb-service-dialog .tzb-service-option .tzb-service-name { flex: 1 1 auto; min-width: 0; white-space: normal; overflow-wrap: anywhere; line-height: 1.3; }
	body .tzb .tzb-service-dialog .tzb-service-option strong { flex: 0 0 auto; }
}

/* v1.3.94 - CEP atendido no card do herói: bloco verde de sucesso com cara de botão, mas não interativo (sem link, hover ou cursor de clique).
   Verde #1E7A46 com texto branco (contraste 5,35:1, AA). Demais estados inalterados. */
body .elementor .tzh .cep-card .tzh-cep-result[data-state="atendido"] {
	display: flex;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
	width: 100%;
	min-height: 48px;
	margin: 12px 0 0;
	padding: 12px 18px;
	border-radius: 14px;
	background: #1E7A46;
	color: #fff;
	font-size: 16px;
	font-weight: 600;
	line-height: 1.3;
	text-align: center;
	cursor: default;
	pointer-events: none;
	user-select: none;
}
body .elementor .tzh .cep-card .tzh-cep-result[data-state="atendido"][hidden] { display: none; }

/* v1.3.98 - home, celular (<=767px): respiro menor entre o fim do trilho (passo 3, "Escolher serviços") e "Como funciona".
   Antes: 268px do botão ao topo da seção (passo 44 + trilho 40 + widget 72 + inner 40 + seção 72; os dois 72 vinham de
   html.tzb-sheet-visible e entravam/saíam com a barra "Sua coleta"). Agora: passo 44 + trilho 12 = 56px fixos (+16px do topo de
   "Como funciona" = 72px até o rótulo), em linha com os respiros de 56-80px das outras seções no celular. Desktop intocado. */
@media (max-width: 767px) {
	html body .elementor-22 .elementor-element.tzach-booking-section,
	html body .elementor-22 .tzach-booking-section > .e-con-inner,
	html body .elementor-22 .elementor-widget-tzach-booking-rail { padding-bottom: 0 !important; }
	html body .elementor-22 .tzach-booking-section .tzb .tzb-track { padding-bottom: 12px; }
}

/* v1.3.101 - trilho e modais do trilho (home): sem o rosa do tema. O reset.css do Hello Elementor pinta
   button:hover/button:focus com background #c36 + texto branco (e button com borda/texto #c36), com "transition: all .3s".
   Aqui só a cor muda: onde aparecia #c36 entra petróleo #275D68 (foco) / #1F4C55 (hover/pressionado), texto branco.
   Mesmos estados e mesma transição do tema; o contorno de foco do teclado (.tzb button:focus-visible) continua. */
body .tzach-booking-section .tzb .tzb-service-open:hover { color: #275D68; }
body .tzach-booking-section .tzb .tzb-service-open:focus:not(:hover) { background-color: #275D68; border-color: #275D68; color: #fff; }
body .tzach-booking-section .tzb .tzb-day:focus:not(:hover):not([aria-pressed="true"]),
body .tzach-booking-section .tzb .tzb-chip:focus:not(:hover):not([aria-pressed="true"]) { background-color: #275D68; color: #fff; }
body .tzach-booking-section .tzb .tzb-day:focus:not(:hover):not([aria-pressed="true"]) > span,
body .tzach-booking-section .tzb .tzb-day:focus:not(:hover):not([aria-pressed="true"]) > small { color: rgba(255, 255, 255, .85); }
body .tzach-booking-section .tzb .tzb-modal-close:hover { background-color: #1F4C55; color: #fff; }
body .tzach-booking-section .tzb .tzb-modal-close:focus:not(:hover) { background-color: #275D68; color: #fff; }
body .tzach-booking-section .tzb .tzb-modal-bg,
body .tzach-booking-section .tzb .tzb-modal-bg:hover,
body .tzach-booking-section .tzb .tzb-modal-bg:focus,
body .tzach-booking-section .tzb .tzb-modal-bg:active { color: #275D68; border-color: #275D68; }
body .tzach-booking-section .tzb .tzb-button:not(.tzb-secondary):not(:disabled):focus:not(:hover) { background-color: #275D68; color: #fff; }
body .tzach-booking-section .tzb .tzb-modal-tabs button:not(.is-on):hover { background-color: #1F4C55; color: #fff; }
body .tzach-booking-section .tzb .tzb-modal-tabs button:not(.is-on):focus:not(:hover) { background-color: #275D68; color: #fff; }
body .tzach-booking-section .tzb .tzb-sheet-toggle:hover { background-color: #1F4C55; color: #fff; }
body .tzach-booking-section .tzb .tzb-sheet-toggle:focus:not(:hover) { background-color: #275D68; color: #fff; }
body .tzach-booking-section .tzb .tzb-sheet-toggle:hover span,
body .tzach-booking-section .tzb .tzb-sheet-toggle:focus span { color: rgba(255, 255, 255, .85); }
@media (min-width: 1081px) {
	/* barra "Sua coleta" fica oculta no desktop; só tira o rosa herdado do tema */
	body .tzach-booking-section .tzb .tzb-sheet-toggle { color: #275D68; border-color: #275D68; }
}
