/* ==========================================================================
   Lets Engenharia — visual 2026
   Linha "documento técnico": IBM Plex, cantos retos, linhas finas,
   fotos reais tratadas em azul nas seções de destaque, laranja só em
   botões e detalhes finos.
   Carregado como arquivo externo (cache do navegador), depois do CSS antigo.
   ========================================================================== */

@font-face { font-family: "IBM Plex Sans"; font-style: normal; font-weight: 400; font-display: swap; src: url("../fonts/ibm-plex-sans-latin-400-normal.woff2") format("woff2"); }
@font-face { font-family: "IBM Plex Sans"; font-style: normal; font-weight: 600; font-display: swap; src: url("../fonts/ibm-plex-sans-latin-600-normal.woff2") format("woff2"); }
@font-face { font-family: "IBM Plex Sans"; font-style: normal; font-weight: 700; font-display: swap; src: url("../fonts/ibm-plex-sans-latin-700-normal.woff2") format("woff2"); }
@font-face { font-family: "IBM Plex Mono"; font-style: normal; font-weight: 400; font-display: swap; src: url("../fonts/ibm-plex-mono-latin-400-normal.woff2") format("woff2"); }
@font-face { font-family: "IBM Plex Mono"; font-style: normal; font-weight: 500; font-display: swap; src: url("../fonts/ibm-plex-mono-latin-500-normal.woff2") format("woff2"); }

:root {
	--v-sans: "IBM Plex Sans", "Segoe UI", Roboto, Arial, sans-serif;
	--v-mono: "IBM Plex Mono", ui-monospace, Consolas, monospace;
	--v-tinta: #14202b;        /* texto principal */
	--v-texto: #46525e;        /* texto corrido */
	--v-marinho: #0a2540;      /* fundos escuros */
	--v-azul: #005295;         /* azul da marca */
	--v-azul-claro: #9cc3e6;   /* rótulos sobre fundo escuro */
	--v-papel: #f3f5f7;        /* fundo claro */
	--v-linha: #d5dde5;        /* linhas finas */
	--laranja: #ff6b00;
	--laranja-escuro: #e05a00;
	--cor-terciaria: var(--laranja);
	--cor-quarta: var(--laranja-escuro);
	--v-raio: 3px;
}

/* ---------- Base ---------- */
body { font-family: var(--v-sans) !important; color: var(--v-texto); background: #fff; -webkit-font-smoothing: antialiased; }
h1, h2, h3, h4, h5, h6 { font-family: var(--v-sans); color: var(--v-tinta); font-weight: 700; letter-spacing: -.01em; }
h1 { font-size: clamp(2rem, 4.2vw, 3.2rem); line-height: 1.08; }
h2 { font-size: clamp(1.6rem, 3vw, 2.35rem); line-height: 1.15; }
p { line-height: 1.65; }
::selection { background: var(--v-azul); color: #fff; }

/* Rótulo de seção: fonte mono + traço laranja (substitui etiquetas arredondadas) */
.subtitulo-section, .v-rotulo {
	display: inline-flex; align-items: center; gap: 10px;
	font-family: var(--v-mono); font-size: 12.5px; font-weight: 500; letter-spacing: .14em; text-transform: uppercase;
	color: var(--v-azul) !important; margin-bottom: 12px;
}
.subtitulo-section::before, .v-rotulo::before { content: ""; width: 28px; height: 2px; background: var(--laranja); }
.section-small { background: none !important; padding: 0 !important; border-radius: 0 !important; margin-bottom: 14px; }
.section-small small { font-family: var(--v-mono); font-size: 12.5px; letter-spacing: .14em; text-transform: uppercase; color: var(--v-azul); }
.section-small i { display: none; }

/* Botões */
.btn { border-radius: var(--v-raio) !important; font-family: var(--v-sans); }
.btn-site, .btn-envia { background: var(--laranja) !important; border: 1px solid var(--laranja) !important; color: #fff !important; font-weight: 600; letter-spacing: .01em; box-shadow: none !important; padding: 12px 22px; }
.btn-site:hover, .btn-site:focus, .btn-envia:hover { background: var(--laranja-escuro) !important; border-color: var(--laranja-escuro) !important; transform: none; }
.btn-site-outline { color: var(--v-azul) !important; border: 1px solid var(--v-azul) !important; background: transparent !important; font-weight: 600; padding: 12px 22px; }
.btn-site-outline:hover { background: var(--v-azul) !important; color: #fff !important; }
.btn-shine::before, .btn-shine::after { display: none !important; }
.btn-pulse { animation: none !important; }
.v-btn-claro { color: #fff !important; border: 1px solid rgba(255, 255, 255, .55) !important; background: transparent !important; font-weight: 600; padding: 12px 22px; }
.v-btn-claro:hover { background: #fff !important; color: var(--v-marinho) !important; }

/* Cantos retos e sem sombras fofas no site todo */
.card, .form-control, img.img-fluid, .home--servicos__card, .home--diferencial__card, .home--segmentos__cards, .home--etapas__cards,
.contato--form__box, .avaliacoes__card, .pilar__card, .pilar__destaque, .pilar__engenheiro, .pilar__faq details, .card__destaque,
.servicos-pag__etapas--card, .logo-card { border-radius: var(--v-raio) !important; }
.form-control { border: 1px solid var(--v-linha); box-shadow: none !important; font-family: var(--v-sans); }
.form-control:focus { border-color: var(--v-azul); }

/* ---------- Cabeçalho ---------- */
.topo { background: #fff !important; box-shadow: none !important; border-bottom: 1px solid var(--v-linha); }
.topo .menu-box > ul > li > a:not(.btn) { font-family: var(--v-sans); font-weight: 500; color: var(--v-tinta); font-size: 15px; }
.topo .menu-box > ul > li > a:not(.btn):hover { color: var(--v-azul); }
.topo .btn-site { padding: 10px 18px; }

/* ---------- Seções de destaque com foto real tratada em azul ---------- */
.v-foto { position: relative; color: #fff; background-color: var(--v-marinho); background-size: cover; background-position: center; }
.v-foto::before { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(6, 22, 42, .9) 30%, rgba(6, 22, 42, .62)); }
.v-foto > * { position: relative; }
.v-foto h1, .v-foto h2, .v-foto h3 { color: #fff; }
.v-foto p { color: #d4e1ed; }
.v-foto .subtitulo-section, .v-foto .v-rotulo, .v-foto .section-small small { color: var(--v-azul-claro) !important; }
.v-foto--hero { background-image: url("fundo-hero.webp"); }
.v-foto--nr13 { background-image: url("fundo-nr13.webp"); }
.v-foto--cta { background-image: url("fundo-cta.webp"); }

/* Seções antigas que eram faixas de cor chapada (laranja/azul) → foto tratada */
.servicos-pag--txt__destaque, .home--faixa { position: relative; background: var(--v-marinho) url("fundo-cta.webp") center/cover !important; }
.servicos-pag--txt__destaque::before, .home--faixa::before { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(6, 22, 42, .9) 30%, rgba(6, 22, 42, .66)); }
.servicos-pag--txt__destaque > *, .home--faixa > * { position: relative; }
.servicos-pag--txt__destaque h2, .servicos-pag--txt__destaque > .container-site > p { color: #fff; }
.servicos-pag--txt__destaque small { color: var(--v-azul-claro) !important; }
.servicos-pag--txt__destaque .pilar__card, .servicos-pag--txt__destaque .servicos-pag__etapas--card { border: 0; border-left: 3px solid var(--laranja); box-shadow: none; }

/* Topo das páginas de serviço: foto tratada em azul (sem laranja) */
.servicos-pag__banner { position: relative; }
.servicos-pag__banner::after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(6, 22, 42, .78) 25%, rgba(6, 22, 42, .35)); pointer-events: none; }
.servicos-pag__banner > * { position: relative; z-index: 1; }
.servicos-pag__banner h1 { font-weight: 700 !important; letter-spacing: -.01em; }

/* ---------- Páginas pilar (NR13, NR12) ---------- */
.pilar__card { border: 1px solid var(--v-linha); box-shadow: none !important; }
.pilar__card--alerta { border-left: 3px solid var(--laranja); }
.pilar__card-icone { color: var(--v-azul) !important; }
.pilar__destaque { background: var(--v-marinho) url("fundo-nr13.webp") center/cover !important; position: relative; overflow: hidden; }
.pilar__destaque::before { content: ""; position: absolute; inset: 0; background: linear-gradient(120deg, rgba(6, 22, 42, .94) 35%, rgba(6, 22, 42, .75)); }
.pilar__destaque > * { position: relative; }
.pilar__engenheiro { box-shadow: none !important; border: 1px solid var(--v-linha); border-left: 3px solid var(--v-azul); }
.pilar__faq details { box-shadow: none !important; border: 1px solid var(--v-linha); }
.pilar__faq summary { font-weight: 600; }
.pilar__lista i, .servicos-pag__intro i, .pilar__checks i { color: var(--v-azul) !important; }
.v-foto .pilar__checks i, .pilar__destaque .pilar__checks i { color: var(--laranja) !important; }
.pilar__etapas li span, .pilar__etapas .numero { font-family: var(--v-mono); }
.pilar__galeria-titulo { font-size: 1.15rem; font-weight: 600; }
.pilar__portal-print img { border-radius: var(--v-raio); box-shadow: 0 1px 0 var(--v-linha), 0 18px 40px rgba(10, 37, 64, .14); }
.servicos-pag__inspecao .card__destaque, .servicos-pag__inspecao .card__image img { border-radius: var(--v-raio) !important; }

/* ---------- Avaliações ---------- */
.avaliacoes { background: var(--v-papel); }
.avaliacoes__card { box-shadow: none !important; border: 1px solid var(--v-linha); background: #fff; }
.avaliacoes__resumo { border-radius: var(--v-raio) !important; box-shadow: none !important; border: 1px solid var(--v-linha); }
.avaliacoes__nota { font-family: var(--v-mono); }

/* ---------- Contato e rodapé ---------- */
.contato--form__box { box-shadow: none !important; border: 1px solid var(--v-linha) !important; background: #fff; }
.home--contato { background: #fff; }
.footer { background: var(--v-marinho) !important; }
.creditos-link { display: none !important; }

/* ==========================================================================
   HOME (classes v-)
   ========================================================================== */
.v-sec { padding: clamp(56px, 8vw, 104px) 0; }
.v-papel { background: var(--v-papel); }
.v-branco { background: #fff; }
.v-cabeca { max-width: 46rem; margin-bottom: 40px; }
.v-cabeca p { font-size: 17px; }
.v-mono { font-family: var(--v-mono); }

/* Hero */
.v-hero { padding: clamp(64px, 9vw, 120px) 0 0; }
.v-hero__grade { display: grid; grid-template-columns: 1.35fr 1fr; gap: clamp(32px, 5vw, 72px); align-items: end; padding-bottom: clamp(48px, 6vw, 80px); }
.v-hero h1 { margin: 6px 0 18px; }
.v-hero h1 span { color: var(--v-azul-claro); display: block; }
.v-hero__texto > p { font-size: 18px; max-width: 40rem; }
.v-hero__acoes { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 28px; }
.v-ficha { border: 1px solid rgba(255, 255, 255, .28); background: rgba(6, 22, 42, .55); font-family: var(--v-mono); font-size: 13.5px; color: #d4e1ed; }
.v-ficha__titulo { padding: 10px 16px; border-bottom: 1px solid rgba(255, 255, 255, .28); letter-spacing: .14em; text-transform: uppercase; font-size: 11.5px; color: var(--v-azul-claro); display: flex; justify-content: space-between; }
.v-ficha dl { margin: 0; }
.v-ficha dl div { display: grid; grid-template-columns: 9.5rem 1fr; border-bottom: 1px solid rgba(255, 255, 255, .14); }
.v-ficha dl div:last-child { border-bottom: 0; }
.v-ficha dt, .v-ficha dd { margin: 0; padding: 10px 16px; font-weight: 400; }
.v-ficha dt { color: var(--v-azul-claro); border-right: 1px solid rgba(255, 255, 255, .14); }
.v-ficha dd { color: #fff; }
.v-faixa-fatos { border-top: 1px solid rgba(255, 255, 255, .2); }
.v-faixa-fatos ul { display: grid; grid-template-columns: repeat(4, 1fr); margin: 0; padding: 0; list-style: none; }
.v-faixa-fatos li { padding: 18px 20px 18px 0; font-family: var(--v-mono); font-size: 13px; letter-spacing: .04em; color: #d4e1ed; display: flex; gap: 10px; align-items: baseline; }
.v-faixa-fatos li::before { content: ""; width: 8px; height: 8px; background: var(--laranja); flex: none; transform: translateY(-1px); }

/* Índice de serviços */
.v-indice { display: grid; grid-template-columns: 1fr 1fr; column-gap: 48px; border-top: 1px solid var(--v-linha); }
.v-indice a { display: grid; grid-template-columns: 3rem 1fr 1.5rem; gap: 14px; align-items: start; padding: 22px 4px; border-bottom: 1px solid var(--v-linha); text-decoration: none; color: inherit; transition: background .2s; }
.v-indice a:hover { background: #fff; }
.v-indice__num { font-family: var(--v-mono); font-size: 13px; color: var(--v-azul); padding-top: 4px; }
.v-indice h3 { font-size: 1.15rem; margin: 0 0 4px; }
.v-indice p { margin: 0; font-size: 15px; }
.v-indice__seta { color: var(--v-azul); padding-top: 3px; transition: transform .2s; }
.v-indice a:hover .v-indice__seta { transform: translateX(4px); color: var(--laranja); }
.v-indice a:hover h3 { color: var(--v-azul); }

/* Duas colunas (texto + imagem/lista) */
.v-duas { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(32px, 5vw, 72px); align-items: center; }
.v-checks { list-style: none; padding: 0; margin: 22px 0 0; display: grid; grid-template-columns: 1fr 1fr; gap: 0 28px; }
.v-checks li { padding: 9px 0 9px 22px; border-bottom: 1px solid rgba(255, 255, 255, .16); position: relative; font-size: 15.5px; }
.v-checks li::before { content: ""; position: absolute; left: 0; top: 17px; width: 10px; height: 2px; background: var(--laranja); }
.v-papel .v-checks li, .v-branco .v-checks li { border-color: var(--v-linha); color: var(--v-tinta); }
.v-figura { margin: 0; }
.v-figura img { width: 100%; height: auto; display: block; border-radius: var(--v-raio); }
.v-figura figcaption { font-family: var(--v-mono); font-size: 12.5px; padding: 10px 0 0; color: var(--v-texto); letter-spacing: .03em; }
.v-foto .v-figura figcaption { color: var(--v-azul-claro); }
.v-moldura { border: 1px solid rgba(255, 255, 255, .28); padding: 10px; }

/* Escopo NR12 em tabela */
.v-escopo { border: 1px solid var(--v-linha); background: #fff; }
.v-escopo__titulo { font-family: var(--v-mono); font-size: 12px; letter-spacing: .14em; text-transform: uppercase; color: var(--v-azul); padding: 12px 18px; border-bottom: 1px solid var(--v-linha); }
.v-escopo ol { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: 1fr 1fr; counter-reset: e; }
.v-escopo li { counter-increment: e; padding: 13px 18px; border-bottom: 1px solid var(--v-linha); color: var(--v-tinta); font-size: 15.5px; display: flex; gap: 12px; }
.v-escopo li:nth-child(odd) { border-right: 1px solid var(--v-linha); }
.v-escopo li::before { content: counter(e, decimal-leading-zero); font-family: var(--v-mono); font-size: 12.5px; color: var(--v-azul); padding-top: 2px; }

/* Diferenciais com prova */
.v-provas { display: grid; grid-template-columns: repeat(3, 1fr); gap: 28px; }
.v-prova { border-top: 2px solid var(--v-tinta); padding-top: 18px; }
.v-prova img { width: 100%; aspect-ratio: 4 / 3; object-fit: cover; border-radius: var(--v-raio); margin-bottom: 18px; display: block; }
.v-prova__num { font-family: var(--v-mono); font-size: 12.5px; color: var(--v-azul); letter-spacing: .1em; }
.v-prova h3 { font-size: 1.25rem; margin: 6px 0 8px; }
.v-prova p { margin: 0; font-size: 15.5px; }

/* Sobre / responsável técnico */
.v-sobre { display: grid; grid-template-columns: 320px 1fr; gap: clamp(32px, 5vw, 72px); align-items: start; }
.v-sobre__foto img { width: 100%; height: auto; display: block; border-radius: var(--v-raio); }
.v-sobre__foto figcaption { font-family: var(--v-mono); font-size: 12.5px; color: var(--v-texto); padding-top: 10px; }
.v-tabela { width: 100%; border-collapse: collapse; margin: 22px 0 0; font-size: 15px; }
.v-tabela th, .v-tabela td { text-align: left; padding: 11px 0; border-bottom: 1px solid var(--v-linha); vertical-align: top; }
.v-tabela th { font-family: var(--v-mono); font-weight: 400; font-size: 12.5px; letter-spacing: .08em; text-transform: uppercase; color: var(--v-azul); width: 13rem; padding-top: 13px; }
.v-tabela td { color: var(--v-tinta); }

/* Processo em linha do tempo */
.v-etapas { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(5, 1fr); position: relative; }
.v-etapas::before { content: ""; position: absolute; left: 0; right: 0; top: 15px; height: 1px; background: var(--v-linha); }
.v-etapas li { position: relative; padding-right: 22px; }
.v-etapas__num { position: relative; display: inline-block; font-family: var(--v-mono); font-size: 13px; color: var(--v-azul); background: var(--v-papel); padding: 6px 10px 6px 0; }
.v-etapas__num::before { content: ""; display: inline-block; width: 9px; height: 9px; background: var(--laranja); margin-right: 10px; }
.v-etapas h3 { font-size: 1.05rem; margin: 14px 0 6px; }
.v-etapas p { font-size: 14.5px; margin: 0; }

/* Clientes */
.v-clientes .logo-card { background: #fff; border: 1px solid var(--v-linha); box-shadow: none !important; }
.v-clientes .logo-card img { filter: grayscale(1); opacity: .75; transition: .2s; }
.v-clientes .logo-card:hover img { filter: none; opacity: 1; }

/* Chamada final */
.v-cta { text-align: left; }
.v-cta__grade { display: flex; justify-content: space-between; align-items: center; gap: 32px; flex-wrap: wrap; }
.v-cta h2 { max-width: 34rem; margin: 0 0 8px; }
.v-cta p { margin: 0; max-width: 36rem; }

/* ---------- Responsivo ---------- */
@media (max-width: 991px) {
	.v-hero__grade, .v-duas, .v-sobre { grid-template-columns: 1fr; }
	.v-sobre__foto { max-width: 280px; }
	.v-indice { grid-template-columns: 1fr; }
	.v-provas { grid-template-columns: 1fr; gap: 36px; }
	.v-faixa-fatos ul { grid-template-columns: 1fr 1fr; }
	.v-etapas { grid-template-columns: 1fr; gap: 0; }
	.v-etapas::before { left: 4px; right: auto; top: 0; bottom: 0; width: 1px; height: auto; }
	.v-etapas li { padding: 0 0 22px 0; }
}
@media (max-width: 575px) {
	.v-checks, .v-escopo ol { grid-template-columns: 1fr; }
	.v-escopo li:nth-child(odd) { border-right: 0; }
	.v-ficha dl div { grid-template-columns: 7.5rem 1fr; }
	.v-faixa-fatos ul { grid-template-columns: 1fr; }
	.v-faixa-fatos li { padding: 10px 0; }
	.v-tabela th { width: 8.5rem; }
	.v-hero__acoes .btn { width: 100%; justify-content: center; }
}

/* ---------- Ajustes finos ---------- */
h1, h2 { font-weight: 700 !important; }
.v-sec p, .v-hero p, .home--contato p { font-size: 16.5px; }
.v-cabeca p { font-size: 17px; }
.v-duas > .v-figura { max-width: 470px; justify-self: end; width: 100%; }
.v-figura img { aspect-ratio: 1 / 1; object-fit: cover; }
footer.footer h2.footer-titulo { color: #fff !important; font-family: var(--v-mono); font-size: 12.5px !important; font-weight: 500 !important; letter-spacing: .14em; text-transform: uppercase; border-left: 0 !important; padding-left: 0 !important; }
footer.footer h2.footer-titulo::before { content: ""; display: inline-block; width: 20px; height: 2px; background: var(--laranja); margin-right: 10px; vertical-align: middle; }
footer.footer, footer.footer p, footer.footer a { font-family: var(--v-sans); }
.contato--form__icon { background: transparent !important; }
.contato--form__icon i, .contato--form__box:nth-child(n) .contato--form__icon i { color: var(--v-azul) !important; }
.box_contato { background: transparent !important; padding: 0 !important; }
.home--contato form h3 { font-family: var(--v-sans); font-size: 14px; font-weight: 600; color: var(--v-tinta); }
@media (max-width: 991px) { .v-duas > .v-figura { justify-self: start; } }
.pilar__card--alerta h3 i { color: var(--laranja) !important; }
.pilar__etapas li { box-shadow: none !important; border: 1px solid var(--v-linha); border-radius: var(--v-raio) !important; }
.pilar__etapas li span { border-radius: 0 !important; background: var(--v-marinho) !important; }
.btn-success { border-radius: var(--v-raio) !important; box-shadow: none !important; }

/* ==========================================================================
   MODELO DAS PÁGINAS DE SERVIÇO (servicos-pag__*) no visual das páginas
   locais NR13 (Santa Catarina). Só aparência — nenhum texto muda.
   ========================================================================== */
main:not(.nr13-local) { --sc-navy: #0A3158; --sc-ink: #142438; --sc-muted: #5c6b7a; --sc-azul: #127ec5; --sc-claro: #f2f7fb; --sc-borda: #dae6ee; }
main:not(.nr13-local) .subtitulo-section { color: var(--laranja) !important; font-family: var(--v-sans); font-weight: 800; font-size: 13px; letter-spacing: .09em; }
main:not(.nr13-local) .subtitulo-section::before { display: none; }
main:not(.nr13-local) .color-fade { color: inherit !important; background: none !important; -webkit-text-fill-color: currentColor !important; }

/* Topo */
main:not(.nr13-local) .servicos-pag__banner { min-height: 0; padding: clamp(80px, 9vw, 130px) 0 clamp(60px, 7vw, 100px); position: relative; background-size: cover; background-position: center; }
main:not(.nr13-local) .servicos-pag__banner::after { background: linear-gradient(90deg, rgba(5, 37, 65, .97) 0%, rgba(7, 58, 99, .9) 50%, rgba(7, 58, 99, .72) 100%); }
main:not(.nr13-local) .servicos-pag__banner::before { content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 5px; z-index: 2; background: linear-gradient(90deg, var(--laranja), #ffad57 35%, var(--sc-azul)); }
main:not(.nr13-local) .servicos-pag__banner h1 { max-width: 820px; color: #fff; font-size: clamp(32px, 4.2vw, 56px) !important; font-weight: 700 !important; line-height: 1.06; letter-spacing: -.02em; margin: 0; }

/* Seções brancas com texto + foto */
main:not(.nr13-local) .servicos-pag__intro, main:not(.nr13-local) .servicos-pag__laudos { background: #fff !important; }
main:not(.nr13-local) section.servicos-pag__intro + section.servicos-pag__intro { background: var(--sc-claro) !important; }
main:not(.nr13-local) .servicos-pag__intro h2, main:not(.nr13-local) .servicos-pag__laudos h2, main:not(.nr13-local) .servicos-pag--card h2, main:not(.nr13-local) .servicos-pag__perguntas h2, main:not(.nr13-local) .servicos-pag__etapas h2, main:not(.nr13-local) .servicos-pag__inspecao h2 { color: var(--sc-ink); font-size: clamp(28px, 3.3vw, 42px); font-weight: 700; letter-spacing: -.02em; line-height: 1.12; }
main:not(.nr13-local) .servicos-pag__intro p, main:not(.nr13-local) .servicos-pag__laudos p { color: var(--sc-muted); font-size: 16px; line-height: 1.75; }
main:not(.nr13-local) .servicos-pag--img, main:not(.nr13-local) .servicos-pag__laudos-img { position: relative; max-width: 520px; padding: 0 26px 26px 0; }
main:not(.nr13-local) .servicos-pag--img::before, main:not(.nr13-local) .servicos-pag__laudos-img::before { content: ""; position: absolute; right: 0; bottom: 0; width: 62%; height: 60%; border: 8px solid #e9f3fa; border-radius: 12px; z-index: 0; }
main:not(.nr13-local) .servicos-pag--img img, main:not(.nr13-local) .servicos-pag__laudos-img img { position: relative; z-index: 1; border-radius: 12px !important; box-shadow: 0 20px 55px rgba(7, 58, 99, .18); }

/* Cartões (escopo / equipamentos / itens) */
main:not(.nr13-local) .servicos-pag__intro .servicos-pag__intro--txt { animation: none !important; background: #fff; border: 1px solid var(--sc-borda) !important; border-radius: 12px !important; box-shadow: 0 12px 35px rgba(7, 58, 99, .06); padding: 26px 22px !important; margin: 8px; flex: 1 1 240px; max-width: calc(25% - 16px); position: relative; transition: .28s ease; }
main:not(.nr13-local) .servicos-pag__intro .servicos-pag__intro--txt::before { content: ""; display: block; width: 42px; height: 4px; background: var(--laranja); margin-bottom: 16px; }
main:not(.nr13-local) .servicos-pag__intro .servicos-pag__intro--txt:hover { transform: translateY(-6px); box-shadow: 0 20px 44px rgba(7, 58, 99, .13); }
main:not(.nr13-local) .servicos-pag__intro--txt h3 { color: var(--sc-ink); font-size: 19px; font-weight: 700; }
main:not(.nr13-local) .servicos-pag__intro--txt p { font-size: 14.5px !important; }
main:not(.nr13-local) .servicos-pag--card { background: var(--sc-claro) !important; }
main:not(.nr13-local) .servicos-pag--card + .servicos-pag--card { background: #fff !important; }
main:not(.nr13-local) .servicos-pag__card { background: #fff !important; border: 1px solid var(--sc-borda) !important; border-radius: 12px !important; box-shadow: 0 12px 35px rgba(7, 58, 99, .06) !important; padding: 30px 26px !important; transition: .28s ease; }
main:not(.nr13-local) .servicos-pag__card:hover { transform: translateY(-6px); box-shadow: 0 20px 44px rgba(7, 58, 99, .13) !important; }
main:not(.nr13-local) .servicos-pag__card h2, main:not(.nr13-local) .servicos-pag__card h3 { color: var(--sc-ink) !important; font-size: 20px !important; font-weight: 700; }
main:not(.nr13-local) .servicos-pag__card p { color: var(--sc-muted) !important; font-size: 15px; line-height: 1.7; }
main:not(.nr13-local) .servicos-pag__card i, main:not(.nr13-local) .servicos-pag__card--icon { color: var(--sc-azul) !important; }
@media (max-width: 991px) { main:not(.nr13-local) .servicos-pag__intro .servicos-pag__intro--txt { max-width: calc(50% - 16px); } }
@media (max-width: 575px) { main:not(.nr13-local) .servicos-pag__intro .servicos-pag__intro--txt { max-width: 100%; } }

/* Lista do entregável */
main:not(.nr13-local) .servicos-pag__laudos-list { border-bottom: 1px solid #e2e9ee; padding: 14px 0; gap: 16px; }
main:not(.nr13-local) .servicos-pag__laudos-list > i { display: grid; place-items: center; flex: none; width: 40px; height: 40px; background: var(--sc-navy); color: #fff !important; border-radius: 50%; font-size: 14px; box-shadow: 0 0 0 6px #eaf3f9; }
main:not(.nr13-local) .servicos-pag__laudos-list h3 { color: var(--sc-ink); font-size: 17px; font-weight: 700; margin-bottom: 4px; }
main:not(.nr13-local) .servicos-pag__laudos-list p { font-size: 14px !important; margin: 0; }

/* Faixa azul-marinho (destaques) */
main:not(.nr13-local) .servicos-pag--txt__destaque { background: var(--sc-navy) !important; }
main:not(.nr13-local) .servicos-pag--txt__destaque::before { display: none; }
main:not(.nr13-local) .servicos-pag--txt__destaque h2, main:not(.nr13-local) .servicos-pag--txt__destaque h3 { color: #fff !important; }
main:not(.nr13-local) .servicos-pag--txt__destaque p, main:not(.nr13-local) .servicos-pag--txt__destaque li { color: rgba(255, 255, 255, .8) !important; }
main:not(.nr13-local) .servicos-pag--txt__destaque .subtitulo-section { color: #ff9c4a !important; }

/* Diferenciais / etapas: estilo dos quadros da seção azul */
main:not(.nr13-local) .servicos-pag__etapas { background: var(--sc-navy) !important; }
main:not(.nr13-local) .servicos-pag__etapas h2 { color: #fff !important; }
main:not(.nr13-local) .servicos-pag__etapas .subtitulo-section { color: #ff9c4a !important; }
main:not(.nr13-local) .servicos-pag__etapas--card { height: 100%; background: rgba(255, 255, 255, .07) !important; border: 1px solid rgba(255, 255, 255, .13) !important; border-radius: 10px !important; box-shadow: none !important; padding: 22px !important; }
main:not(.nr13-local) .servicos-pag__etapas--card i { color: #ff9c4a !important; font-size: 24px; margin-bottom: 10px; }
main:not(.nr13-local) .servicos-pag__etapas--card h3 { color: #fff !important; font-size: 17px; font-weight: 700; }
main:not(.nr13-local) .servicos-pag__etapas--card p { color: rgba(255, 255, 255, .75) !important; font-size: 14px; margin: 0; }

/* Perguntas (sanfona) */
main:not(.nr13-local) .servicos-pag__perguntas { background: var(--sc-claro) !important; }
main:not(.nr13-local) .pergunta--item { background: #fff; border: 1px solid #dbe5ec !important; border-radius: 9px !important; box-shadow: 0 7px 22px rgba(7, 58, 99, .04) !important; margin-bottom: 12px; }
main:not(.nr13-local) .pergunta { min-height: 66px; }
main:not(.nr13-local) .pergunta h6, main:not(.nr13-local) .pergunta h3 { color: var(--sc-ink); font-size: 16px; font-weight: 700; margin: 0; }
main:not(.nr13-local) .resposta p { color: var(--sc-muted); font-size: 14.5px; line-height: 1.7; }

/* Galeria de fotos */
main:not(.nr13-local) .servicos-pag__inspecao { background: var(--sc-claro) !important; }
.servicos-pag__inspecao .card__destaque { border-radius: 10px !important; overflow: hidden; }
.card-destaque__txt h3, .card-destaque__txt h4 { color: #fff !important; }
.servicos-pag__inspecao .card__image { position: relative; }
.servicos-pag__inspecao .card__image::after { content: ""; position: absolute; inset: 45% 0 0; background: linear-gradient(transparent, rgba(3, 20, 34, .9)); pointer-events: none; }
.servicos-pag__inspecao .card-destaque__txt { z-index: 2; }

/* Galerias: todas as fotos no mesmo formato quadrado, independente do arquivo */
.servicos-pag__inspecao .card__image { aspect-ratio: 1 / 1; overflow: hidden; }
.servicos-pag__inspecao .card__image img { width: 100%; height: 100% !important; object-fit: cover; display: block; }

/* Logo 2026 (fundo transparente) */
.logo img { height: 58px; width: auto; max-width: none; }
.topo .logo { display: flex; align-items: center; padding: 8px 0; }
.logo_footer img { width: 200px; height: auto; padding: 0; background: none !important; }
.logo_footer { background: none !important; padding: 0 0 18px; }
@media (max-width: 520px) { .topo .logo { width: auto; } .topo .logo img { height: 48px; } }

/* ==========================================================================
   Topo com foto viva (out/2026): azul forte só atrás do texto (esquerda),
   foto colorida à direita. Contraste do H1 mantido; no celular o véu fica
   mais forte porque o texto ocupa a largura toda.
   ========================================================================== */
:root { --veu-topo: linear-gradient(90deg, rgba(4, 28, 54, .95) 0%, rgba(4, 28, 54, .86) 34%, rgba(4, 28, 54, .42) 62%, rgba(4, 28, 54, .12) 100%); }
.v-foto--hero { background-image: url("fundo-hero-cor.webp"); }
.v-hero.v-foto::before { background: var(--veu-topo); }
.nr13-local__hero { background: var(--veu-topo), url("../imagens/banner/inspecao-nr13-topo.webp") center/cover no-repeat !important; }
.nr13-local__hero--nr12 { background: var(--veu-topo), url("../imagens/banner/adequacao-nr12-topo.webp") center/cover no-repeat !important; }
main:not(.nr13-local) .servicos-pag__banner::after { background: var(--veu-topo); }
.v-hero .v-ficha { background: rgba(4, 28, 54, .78); backdrop-filter: blur(3px); }
.nr13-local__hero h1, .v-hero h1, .servicos-pag__banner h1 { text-shadow: 0 2px 18px rgba(0, 0, 0, .35); }
@media (max-width: 991px) {
	:root { --veu-topo: linear-gradient(180deg, rgba(4, 28, 54, .9) 0%, rgba(4, 28, 54, .82) 60%, rgba(4, 28, 54, .7) 100%); }
}

/* Topo com foto viva em todas as páginas de serviço, Serviços e Contato (out/2026) */
.servicos__banner, .contato__banner { position: relative; background: #0a2540 url("../imagens/banner/inspecao-nr13-topo.webp") center/cover no-repeat !important; }
.servicos__banner::after, .contato__banner::after { content: ""; position: absolute; inset: 0; background: var(--veu-topo); pointer-events: none; }
.servicos__banner > *, .contato__banner > * { position: relative; z-index: 1; }
.servicos__banner h1, .contato__banner h1 { text-shadow: 0 2px 18px rgba(0, 0, 0, .35); }
.servicos-pag__banner { position: relative; }
.servicos-pag__banner::after { content: ""; position: absolute; inset: 0; background: var(--veu-topo) !important; pointer-events: none; }

/* ==========================================================================
   Formulário do topo mais discreto + ritmo vertical uniforme (out/2026)
   ========================================================================== */
.nr13-local__hero .row { align-items: center; }
.nr13-local__form-card { max-width: 380px; margin-left: auto; padding: 22px 22px 18px !important; border-radius: 12px !important; border-top-width: 3px !important; background: rgba(255, 255, 255, .96) !important; box-shadow: 0 18px 50px rgba(0, 0, 0, .28) !important; }
.nr13-local__form-card .nr13-local__form-kicker { margin-bottom: 12px !important; font-size: 12px; }
.nr13-local__form-card h2 { font-size: 20px !important; margin-bottom: 4px !important; }
.nr13-local__form-card > p { font-size: 13px !important; margin-bottom: 12px !important; }
.nr13-local__form-card #formulario { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
.nr13-local__form-card #formulario .form-group { margin: 0 !important; grid-column: 1 / -1; }
.nr13-local__form-card #formulario .form-group:nth-child(2), .nr13-local__form-card #formulario .form-group:nth-child(3) { grid-column: auto; }
.nr13-local__form-card .form-control { min-height: 40px !important; height: 40px; padding: 8px 12px; font-size: 14px !important; }
.nr13-local__form-card textarea.form-control { min-height: 64px !important; height: 64px; resize: vertical; }
.nr13-local__form-card .btn-envia { min-height: 42px !important; font-size: 15px; }
.nr13-local__hero { padding: clamp(56px, 6vw, 88px) 0 !important; }
.nr13-local__hero h1 { font-size: clamp(30px, 3.6vw, 48px) !important; }

/* Ritmo vertical: mesmo espaçamento em todas as seções */
.nr13-local__section { padding: clamp(56px, 6vw, 88px) 0 !important; }
.nr13-local__cta { padding-bottom: clamp(56px, 6vw, 88px) !important; }
.nr13-local__cta--final { padding-top: clamp(56px, 6vw, 88px) !important; }
.nr13-local__heading { margin-bottom: 28px !important; }
.nr13-local__heading p:last-child, .nr13-local__copy p:last-child { margin-bottom: 0; }
.section-padd { padding-block: clamp(56px, 6vw, 88px) !important; }
.section-padd.pt-0 { padding-top: 0 !important; }
.v-sec { padding: clamp(56px, 6vw, 88px) 0 !important; }
.avaliacoes.section-padd { padding-block: clamp(56px, 6vw, 88px) !important; }
@media (max-width: 991.98px) {
	.nr13-local__form-card { max-width: 520px; margin: 8px auto 0; }
}
@media (max-width: 575.98px) {
	.nr13-local__form-card #formulario { grid-template-columns: 1fr; }
	.nr13-local__form-card #formulario .form-group:nth-child(2), .nr13-local__form-card #formulario .form-group:nth-child(3) { grid-column: 1 / -1; }
	.nr13-local__section, .section-padd, .v-sec { padding-block: 48px !important; }
}

/* Ajustes finos de espaçamento encontrados na revisão */
.servicos-pag__intro .text-center.py-5 { padding-top: 0 !important; padding-bottom: 24px !important; }
.servicos-pag__inspecao .swiper.pb-5 { padding-bottom: 36px !important; }
.pilar__galeria-titulo { margin-top: 8px !important; }

/* ==========================================================================
   Desempenho no celular (out/2026): topo com versão leve da foto (recorte
   central, ~70% menor). No celular o véu cobre quase toda a foto, então a
   diferença não aparece. As mesmas imagens são pré-carregadas no head.php.
   ========================================================================== */
@media (max-width: 767px) {
	.v-foto--hero { background-image: url("fundo-hero-cor-m.webp"); }
	.nr13-local__hero { background: var(--veu-topo), url("../imagens/banner/inspecao-nr13-topo-m.webp") center/cover no-repeat !important; }
	.nr13-local__hero--nr12 { background: var(--veu-topo), url("../imagens/banner/adequacao-nr12-topo-m.webp") center/cover no-repeat !important; }
	.servicos__banner, .contato__banner { background: #0a2540 url("../imagens/banner/inspecao-nr13-topo-m.webp") center/cover no-repeat !important; }
}

/* ==========================================================================
   Rodapé compacto (out/2026): mesmos links e dados (NAP), menos altura.
   ========================================================================== */
.footer { padding: 52px 0 0 !important; }
.footer .footer-colunas { row-gap: 8px; }
.logo_footer { padding: 0 0 14px !important; }
.logo_footer img { width: 168px !important; margin: 0 !important; }
footer.footer h2.footer-titulo { margin: 4px 0 14px !important; line-height: 1.3; }
footer.footer ul + h2.footer-titulo { margin-top: 26px !important; }
.footer ul { margin: 0; }
.footer ul li { padding-bottom: 7px !important; }
.footer ul li a { font-size: 14px; line-height: 1.45 !important; color: rgba(255, 255, 255, .86) !important; }
.footer ul li a:hover, .footer-contato a:hover { color: var(--laranja) !important; }
.footer p, .footer a { line-height: 1.6 !important; }
.footer .footer-sobre { font-size: 13.5px !important; color: rgba(255, 255, 255, .72) !important; margin-bottom: 14px !important; max-width: 330px; }
.footer .redes-sociais-footer { margin-top: 0; }
.footer .redes-sociais-footer i { padding: 6px 9px; font-size: 18px; border-radius: 6px; }
.footer-contato { font-style: normal; margin: 0; }
.footer-contato p { display: flex; flex-wrap: wrap; align-items: flex-start; gap: 4px 14px; margin: 0 0 10px !important; color: rgba(255, 255, 255, .86) !important; }
.footer-contato a { color: rgba(255, 255, 255, .86) !important; overflow-wrap: anywhere; }
.footer-contato i { color: var(--laranja); width: 16px; margin-right: 6px; text-align: center; }
.footer-contato p > i { margin-top: 5px; flex: 0 0 auto; }
.footer-contato p > span { flex: 1; min-width: 0; }
.footer .footer-atendimento { font-size: 13px !important; color: rgba(255, 255, 255, .6) !important; margin-top: 4px !important; }
.creditos { padding: 0 0 18px !important; }
.creditos-box { display: block !important; margin-top: 30px !important; padding: 16px 0 0 !important; background: none !important; border-top: 1px solid rgba(255, 255, 255, .1); }
.creditos-text { margin: 0 !important; text-align: center; font-size: 12.5px !important; line-height: 1.7 !important; color: rgba(255, 255, 255, .6) !important; }
.creditos-text a { font-size: 12.5px !important; color: rgba(255, 255, 255, .75) !important; text-decoration: underline; text-underline-offset: 2px; }
.creditos-text strong { color: rgba(255, 255, 255, .85); font-weight: 600; }
.creditos-sep { margin: 0 6px; opacity: .5; }
@media (max-width: 991px) {
	.footer { padding-top: 40px !important; }
	.footer .footer-sobre { max-width: none; }
	footer.footer h2.footer-titulo { margin-top: 18px !important; }
}
@media (max-width: 767px) {
	.footer .col-md-4 ul:first-of-type { columns: 2; column-gap: 16px; }
	.footer .col-md-4 ul:first-of-type li { break-inside: avoid; }
	.creditos-sep { display: none; }
	.creditos-text { display: flex; flex-direction: column; gap: 2px; }
}
.footer-contato span, .creditos-text span { color: inherit !important; }
.footer-contato p { column-gap: 0; }
.footer-contato .footer-whats { margin-left: 14px; }
.footer .footer-colunas > [class*="col-"] { padding-left: 15px !important; padding-right: 15px !important; }

/* Pilar NR11 (out/2026): topo com foto real de ponte rolante */
.nr13-local__hero--nr11 { background: var(--veu-topo), url("../imagens/banner/topo-inspecao-nr11-real.webp") center/cover no-repeat !important; }
@media (max-width: 767px) {
	.nr13-local__hero--nr11 { background: var(--veu-topo), url("../imagens/banner/topo-inspecao-nr11-real-m.webp") center/cover no-repeat !important; }
}

/* Teste de estanqueidade (nov/2026): topo com foto real de central de GLP */
.nr13-local__hero--estanqueidade { background: var(--veu-topo), url("../imagens/banner/topo-teste-de-estanqueidade-real.webp") center/cover no-repeat !important; }
@media (max-width: 767px) {
	.nr13-local__hero--estanqueidade { background: var(--veu-topo), url("../imagens/banner/topo-teste-de-estanqueidade-real-m.webp") center/cover no-repeat !important; }
}

/* Regiões atendidas (includes/regioes-atendidas.php) */
.regioes__polos { display: grid; grid-template-columns: 1fr 1fr; gap: 8px 28px; margin: 18px 0 14px; }
.regioes__polos h3 { font-size: 15px !important; margin: 0 0 8px !important; color: var(--v-marinho, #0a2540); }
.regioes__polos ul { list-style: none; margin: 0; padding: 0; }
.regioes__polos li { position: relative; padding: 3px 0 3px 20px; font-size: 15px; line-height: 1.45; }
.regioes__polos li::before { content: ""; position: absolute; left: 2px; top: 11px; width: 8px; height: 8px; border-radius: 50%; background: var(--laranja); }
@media (max-width: 575px) { .regioes__polos { grid-template-columns: 1fr; } }
.nr13-local__scope-card p + p { margin-top: 10px; }
.nr13-local__copy .nr13-local__steps { padding-left: 0; margin-top: 18px; }

/* Laudo de máquinas pesadas (out/2026): topo com foto real (retroescavadeira) */
.nr13-local__hero--maquinas { background: var(--veu-topo), url("../imagens/banner/topo-maquinas-pesadas-real.webp") center/cover no-repeat !important; }
@media (max-width: 767px) {
	.nr13-local__hero--maquinas { background: var(--veu-topo), url("../imagens/banner/topo-maquinas-pesadas-real-m.webp") center/cover no-repeat !important; }
}
.servicos-pag-slide > .card__destaque { width: 100%; }
.card__destaque .card__image img { width: 100%; height: 100%; object-fit: cover; }

/* Home — serviços em cartões clicáveis com "Saiba mais" (out/2026) */
.v-indice { gap: 18px; border-top: 0; }
.v-indice a { grid-template-columns: 2.6rem 1fr; grid-template-rows: auto auto; row-gap: 0; padding: 22px 24px 20px 20px; background: #fff; border: 1px solid var(--v-linha); border-radius: 12px; box-shadow: 0 1px 2px rgba(10, 37, 64, .04); transition: box-shadow .2s, transform .2s, border-color .2s; }
.v-indice a:hover { background: #fff; border-color: rgba(0, 82, 149, .35); box-shadow: 0 12px 28px rgba(10, 37, 64, .10); transform: translateY(-2px); }
.v-indice__num { grid-row: 1 / span 2; display: inline-flex; align-items: center; justify-content: center; width: 2.4rem; height: 2.4rem; padding: 0; border-radius: 8px; background: #edf4fa; font-weight: 600; }
.v-indice a > span:nth-child(2) { grid-column: 2; }
.v-indice__mais { grid-column: 2; display: inline-flex; align-items: center; gap: 8px; margin-top: 12px; font-size: 14px; font-weight: 600; color: var(--v-azul); }
.v-indice__mais i { font-size: 12px; transition: transform .2s; }
.v-indice a:hover .v-indice__mais { color: var(--laranja-escuro, #e05a00); }
.v-indice a:hover .v-indice__mais i { transform: translateX(4px); }
@media (max-width: 575px) { .v-indice a { padding: 18px 16px; grid-template-columns: 2.4rem 1fr; } }
.v-prova img.v-prova__img--topo { object-position: 50% 8%; }

/* Responsabilidade técnica (out/2026): topo com a tela do Portal do Cliente desfocada */
.nr13-local__hero--rt { background: var(--veu-topo), url("../imagens/banner/topo-responsabilidade-tecnica-portal.webp") center top/cover no-repeat !important; }
@media (max-width: 767px) {
	.nr13-local__hero--rt { background: var(--veu-topo), url("../imagens/banner/topo-responsabilidade-tecnica-portal-m.webp") center top/cover no-repeat !important; }
}

/* PMOC e climatização (out/2026): topo com foto real da obra VRF */
.nr13-local__hero--clima { background: var(--veu-topo), url("../imagens/banner/topo-climatizacao-vrf.webp") center/cover no-repeat !important; }
@media (max-width: 767px) {
	.nr13-local__hero--clima { background: var(--veu-topo), url("../imagens/banner/topo-climatizacao-vrf-m.webp") center/cover no-repeat !important; }
}
.nr13-local__normas-lista { list-style: none; padding: 0; margin: 0; display: grid; grid-template-columns: 1fr 1fr; gap: 10px 28px; }
.nr13-local__normas-lista li { padding: 12px 14px; background: #fff; border: 1px solid #e3ebf2; border-radius: 10px; font-size: 14.5px; line-height: 1.5; }
.nr13-local__normas-lista strong { display: block; color: var(--v-marinho, #0a2540); }
@media (max-width: 767px) { .nr13-local__normas-lista { grid-template-columns: 1fr; } }

/* Páginas de texto (política de privacidade) */
.pagina-texto .nr13-local__section { padding-top: clamp(40px, 5vw, 64px); }
.pagina-texto__corpo { max-width: 780px; margin: 0 auto; }
.pagina-texto__corpo h1 { font-size: clamp(30px, 4vw, 42px); margin: 6px 0 18px; }
.pagina-texto__corpo h2 { font-size: 22px; margin: 34px 0 10px; }
.pagina-texto__corpo p, .pagina-texto__corpo li { font-size: 16px; line-height: 1.7; }
.pagina-texto__corpo ul { padding-left: 20px; margin: 0 0 12px; }
.pagina-texto__corpo li { margin-bottom: 6px; }

/* Topos com fotos reais: elevadores, perícia de motores, reclassificação de monta; linha de vida sem foto (out/2026) */
.nr13-local__hero--elevadores { background: var(--veu-topo), url("../imagens/banner/topo-elevadores-real.webp") center/cover no-repeat !important; }
.nr13-local__hero--motores { background: var(--veu-topo), url("../imagens/banner/topo-pericia-motores-real.webp") center/cover no-repeat !important; }
.nr13-local__hero--linha-vida { background: var(--veu-topo), url("../imagens/banner/topo-linha-de-vida.webp") center/cover no-repeat !important; }
.nr13-local__hero--monta { background: var(--veu-topo), url("../imagens/banner/topo-reclassificacao-monta-real.webp") center/cover no-repeat !important; }
.nr13-local__hero--sem-foto { position: relative; background: radial-gradient(1200px 500px at 85% 20%, rgba(0, 82, 149, .55), transparent 60%), linear-gradient(135deg, #041c36 0%, #0a3158 55%, #0b3a66 100%) !important; }
.nr13-local__hero--sem-foto::after { content: ""; position: absolute; inset: 0; background-image: linear-gradient(rgba(255, 255, 255, .04) 1px, transparent 1px), linear-gradient(90deg, rgba(255, 255, 255, .04) 1px, transparent 1px); background-size: 44px 44px; pointer-events: none; }
.nr13-local__hero--sem-foto > * { position: relative; z-index: 1; }
@media (max-width: 767px) {
	.nr13-local__hero--elevadores { background: var(--veu-topo), url("../imagens/banner/topo-elevadores-real-m.webp") center/cover no-repeat !important; }
	.nr13-local__hero--motores { background: var(--veu-topo), url("../imagens/banner/topo-pericia-motores-real-m.webp") center/cover no-repeat !important; }
	.nr13-local__hero--linha-vida { background: var(--veu-topo), url("../imagens/banner/topo-linha-de-vida-m.webp") center/cover no-repeat !important; }
	.nr13-local__hero--monta { background: var(--veu-topo), url("../imagens/banner/topo-reclassificacao-monta-real-m.webp") center/cover no-repeat !important; }
}

/* Página Serviços: serviço ainda sem foto real (linha de vida) */
.servicos-lista__imagem--sem-foto { display: flex; align-items: center; justify-content: center; min-height: 280px; background: radial-gradient(600px 300px at 80% 20%, rgba(0, 82, 149, .5), transparent 60%), linear-gradient(135deg, #041c36, #0b3a66); }
.servicos-lista__imagem--sem-foto i { font-size: 64px; color: rgba(255, 255, 255, .85); }

/* ---------- Home: primeira dobra cabe na tela (desktop) ---------- */
@media (min-width: 992px) {
	.v-hero { display: flex; flex-direction: column; min-height: calc(100vh - 81px); min-height: calc(100svh - 81px); padding-top: clamp(28px, 5vh, 64px); }
	.v-hero > .container-site { flex: 1; display: flex; align-items: center; width: 100%; }
	.v-hero__grade { width: 100%; align-items: center; grid-template-columns: 1.3fr 1fr; padding-bottom: clamp(28px, 5vh, 56px); }
	.v-hero h1 { font-size: clamp(2.2rem, min(3.6vw, 6.2vh), 3.2rem); text-wrap: balance; }
	.v-hero__texto > p { margin-bottom: 0; }
	.v-hero__acoes { margin-top: clamp(18px, 3vh, 28px); }
	.v-ficha dt, .v-ficha dd { padding: clamp(7px, 1.2vh, 10px) 16px; }
	.v-faixa-fatos ul { display: flex; justify-content: space-between; gap: 24px; }
	.v-faixa-fatos li { padding: clamp(12px, 2vh, 18px) 0; white-space: nowrap; }
}

/* ---------- Blog (out/2026): /blog e /blog/<slug> ---------- */
.blog-topo { background: var(--v-marinho); color: #d4e1ed; padding: clamp(36px, 6vw, 64px) 0 clamp(32px, 5vw, 52px); border-bottom: 3px solid var(--laranja); }
.blog-topo h1 { color: #fff; font-size: clamp(1.75rem, 3.4vw, 2.6rem); line-height: 1.15; max-width: 52rem; margin: 14px 0 16px; text-wrap: balance; }
.blog-trilha { font-family: var(--v-mono); font-size: 12.5px; letter-spacing: .06em; color: var(--v-azul-claro); }
.blog-trilha a { color: var(--v-azul-claro); text-decoration: none; }
.blog-trilha a:hover { color: #fff; }
.blog-trilha span[aria-hidden] { margin: 0 6px; opacity: .6; }
.blog-topo__meta { display: flex; flex-wrap: wrap; gap: 6px 22px; margin: 0; font-size: 14.5px; color: #c4d4e3; }
.blog-topo__meta strong { color: #fff; font-weight: 600; }
.blog-topo__lead { max-width: 46rem; margin: 0; font-size: 17px; color: #d4e1ed; }
.blog-grade { display: grid; grid-template-columns: minmax(0, 1fr) 300px; gap: 56px; padding: clamp(36px, 5vw, 56px) 0 clamp(48px, 6vw, 80px); align-items: start; }
.blog-corpo { max-width: 46rem; color: var(--v-texto); font-size: 17px; line-height: 1.7; }
.blog-corpo p, .blog-corpo li { font-size: 17px; }
.blog-corpo h2 { font-size: clamp(1.35rem, 2.2vw, 1.65rem); line-height: 1.25; margin: 2.4em 0 .7em; scroll-margin-top: 100px; }
.blog-corpo h3 { font-size: 1.1rem; }
.blog-corpo ul { padding-left: 1.2em; margin: 0 0 1.2em; }
.blog-corpo li { margin-bottom: .5em; }
.blog-corpo li::marker { color: var(--laranja); }
.blog-corpo a:not(.btn) { color: var(--v-azul); text-decoration: underline; text-underline-offset: 2px; }
.blog-corpo strong { color: var(--v-tinta); }
.blog-artigo__lead { font-size: 18.5px !important; line-height: 1.65; color: var(--v-tinta); border-left: 3px solid var(--laranja); padding-left: 18px; margin-bottom: 1.4em; }
.blog-artigo__fonte { font-size: 14px !important; color: #6b7682; border-top: 1px solid var(--v-linha); padding-top: 14px; margin-top: 2em; }
.blog-tabela { overflow-x: auto; margin: 1.4em 0 1.6em; -webkit-overflow-scrolling: touch; }
.blog-tabela table { width: 100%; border-collapse: collapse; font-size: 15.5px; min-width: 460px; }
.blog-tabela caption { caption-side: top; text-align: left; font-family: var(--v-mono); font-size: 12px; letter-spacing: .08em; text-transform: uppercase; color: var(--v-azul); padding: 0 0 8px; }
.blog-tabela th, .blog-tabela td { border: 1px solid var(--v-linha); padding: 9px 12px; text-align: center; }
.blog-tabela thead th { background: var(--v-marinho); color: #fff; font-weight: 600; }
.blog-tabela tbody th { background: var(--v-papel); color: var(--v-tinta); font-weight: 600; text-align: left; }
.blog-tabela tbody tr:nth-child(even) td { background: #fafbfc; }
.blog-exemplo { background: var(--v-papel); border: 1px solid var(--v-linha); border-left: 4px solid var(--v-azul); padding: 18px 22px 6px; margin: 1.6em 0; }
.blog-exemplo__rotulo { display: block; font-family: var(--v-mono); font-size: 12px; letter-spacing: .1em; text-transform: uppercase; color: var(--v-azul); margin-bottom: 8px; }
.blog-exemplo p { font-size: 16px !important; margin-bottom: .8em; }
.blog-figura { margin: 1.6em 0; }
.blog-figura img { width: 100%; max-width: 560px; height: auto; display: block; border-radius: var(--v-raio); }
.blog-figura figcaption { font-size: 14px; color: #6b7682; margin-top: 8px; max-width: 560px; }
.blog-figuras-duplas { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; }
.blog-figuras-duplas .blog-figura { margin: .6em 0 1.4em; }
.blog-chamada { background: var(--v-marinho); color: #d4e1ed; padding: 24px 26px; margin: 2.2em 0 1.6em; border-radius: var(--v-raio); }
.blog-chamada p { color: #d4e1ed; font-size: 16.5px !important; }
.blog-chamada strong { color: #fff; }
.blog-faq { margin-top: 2.6em; }
.blog-faq h2 { margin-top: 0; }
.blog-autor { display: grid; grid-template-columns: 96px 1fr; gap: 20px; align-items: center; border-top: 1px solid var(--v-linha); border-bottom: 1px solid var(--v-linha); padding: 22px 0; margin-top: 2.6em; }
.blog-autor img { width: 96px; height: 96px; object-fit: cover; object-position: top; border-radius: 50%; }
.blog-autor p { font-size: 15.5px !important; margin: 0; }
.blog-autor .blog-autor__nome { font-weight: 700; color: var(--v-tinta); margin: 4px 0 6px; }
.blog-lateral { position: sticky; top: 100px; }
.blog-lateral__caixa { border: 1px solid var(--v-linha); border-top: 3px solid var(--laranja); background: #fff; padding: 22px; box-shadow: 0 10px 30px rgba(7, 37, 64, .06); }
.blog-lateral__caixa p { font-size: 15px; margin: 8px 0 16px; }
.blog-lateral__caixa .btn { display: flex; justify-content: center; align-items: center; gap: 8px; width: 100%; margin-bottom: 10px; }
.blog-btn-whats { border: 1px solid #1f9d55; color: #1f9d55 !important; background: #fff; font-weight: 600; }
.blog-btn-whats:hover { background: #1f9d55; color: #fff !important; }
.blog-lista { padding: clamp(36px, 5vw, 64px) 0 clamp(48px, 6vw, 80px); }
.blog-lista__grade { display: grid; gap: 28px; }
.blog-card { display: grid; grid-template-columns: 300px 1fr; gap: 28px; align-items: center; border: 1px solid var(--v-linha); background: #fff; padding: 18px; }
.blog-card__img img { width: 100%; height: 240px; object-fit: cover; display: block; border-radius: var(--v-raio); }
.blog-card h2 { font-size: clamp(1.2rem, 2vw, 1.45rem); line-height: 1.25; margin: 8px 0 10px; }
.blog-card h2 a { color: var(--v-tinta); text-decoration: none; }
.blog-card h2 a:hover { color: var(--v-azul); }
.blog-card p { margin-bottom: 12px; }
.blog-card__mais { font-weight: 600; color: var(--laranja-escuro); text-decoration: none; }
.blog-lista__nota { margin-top: 32px; font-size: 15.5px; }
.blog-lista__nota a { color: var(--v-azul); }
@media (max-width: 991px) {
	.blog-grade { grid-template-columns: minmax(0, 1fr); gap: 32px; }
	.blog-lateral { position: static; }
	.blog-corpo { max-width: none; }
}
@media (max-width: 640px) {
	.blog-card { grid-template-columns: 1fr; gap: 14px; padding: 14px; }
	.blog-card__img img { height: 200px; }
	.blog-figuras-duplas { grid-template-columns: 1fr; }
	.blog-autor { grid-template-columns: 72px 1fr; }
	.blog-autor img { width: 72px; height: 72px; }
	.blog-corpo, .blog-corpo p, .blog-corpo li { font-size: 16.5px; }
	.blog-artigo__lead { font-size: 17px !important; padding-left: 14px; }
	.blog-tabela table { min-width: 0; font-size: 13.5px; }
	.blog-tabela th, .blog-tabela td { padding: 7px 5px; }
	.blog-tabela thead th { font-size: 12.5px; }
}
.blog-chamada a:not(.btn) { color: #fff !important; }
.blog-passos { counter-reset: passo; list-style: none; padding-left: 0 !important; }
.blog-passos li { counter-increment: passo; position: relative; padding-left: 44px; margin-bottom: .9em; }
.blog-passos li::before { content: counter(passo); position: absolute; left: 0; top: 1px; width: 30px; height: 30px; border-radius: 50%; background: var(--v-marinho); color: #fff; font: 600 14px/30px var(--v-mono); text-align: center; }

/* ---------- Home: bloco "Do blog" ---------- */
.home-blog__grade { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; }
.home-blog__card { background: #fff; border: 1px solid var(--v-linha); display: flex; flex-direction: column; }
.home-blog__img img { width: 100%; height: 190px; object-fit: cover; display: block; }
.home-blog__txt { padding: 18px 20px 20px; display: flex; flex-direction: column; flex: 1; }
.home-blog__tema { font-family: var(--v-mono); font-size: 12px; letter-spacing: .1em; text-transform: uppercase; color: var(--laranja-escuro); }
.home-blog__card h3 { font-size: 1.08rem; line-height: 1.35; margin: 8px 0 14px; }
.home-blog__card h3 a { color: var(--v-tinta); text-decoration: none; }
.home-blog__card h3 a:hover { color: var(--v-azul); }
.home-blog__mais { margin-top: auto; font-weight: 600; color: var(--v-azul); text-decoration: none; font-size: 15px; }
.home-blog__todos { margin: 28px 0 0; text-align: center; }
.home-blog__todos a { font-weight: 600; color: var(--v-azul); }
@media (max-width: 991px) { .home-blog__grade { grid-template-columns: 1fr; } .home-blog__img img { height: 200px; } }
.blog-formula { font-family: var(--v-mono); font-size: 1.25rem !important; text-align: center; background: var(--v-papel); border: 1px solid var(--v-linha); padding: 14px; margin: 1em 0; color: var(--v-tinta); }


/* Home: serviços com foto real em lista com miniatura (nov/2026) */
.v-servicos { display: grid; grid-template-columns: 1fr 1fr; gap: 16px 24px; }
.v-servico { display: flex; background: #fff; border: 1px solid var(--v-linha); border-radius: 12px; overflow: hidden; text-decoration: none !important; color: inherit; box-shadow: 0 1px 2px rgba(10, 37, 64, .04); transition: box-shadow .2s, transform .2s, border-color .2s; }
.v-servico:hover { border-color: rgba(0, 82, 149, .35); box-shadow: 0 12px 28px rgba(10, 37, 64, .12); transform: translateY(-2px); color: inherit; }
.v-servico__foto { position: relative; flex: 0 0 150px; min-height: 150px; overflow: hidden; background: #e8eef4; }
.v-servico__foto img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; transition: transform .45s; }
.v-servico:hover .v-servico__foto img { transform: scale(1.05); }
.v-servico__num { position: absolute; left: 10px; top: 10px; padding: 3px 7px; border-radius: 6px; background: rgba(255, 255, 255, .92); font-family: var(--v-mono); font-size: 12px; font-weight: 600; color: var(--v-azul); }
.v-servico__corpo { display: flex; flex-direction: column; flex: 1; padding: 18px 20px; }
.v-servico h3 { margin: 0 0 6px; font-size: 1.1rem; color: var(--v-tinta); }
.v-servico p { margin: 0; font-size: 15px; color: var(--v-texto); }
.v-servico__mais { display: inline-flex; align-items: center; gap: 8px; margin-top: auto; padding-top: 12px; font-size: 14px; font-weight: 600; color: var(--v-azul); }
.v-servico__mais i { font-size: 12px; transition: transform .2s; }
.v-servico:hover .v-servico__mais { color: var(--laranja-escuro); }
.v-servico:hover .v-servico__mais i { transform: translateX(4px); }
.v-servico--cta { background: var(--v-marinho); border-color: var(--v-marinho); }
.v-servico--cta .v-servico__corpo { justify-content: center; padding: 26px; }
.v-servico--cta h3 { color: #fff; font-size: 1.25rem; }
.v-servico--cta p { color: rgba(255, 255, 255, .8); }
.v-servico--cta .v-servico__mais, .v-servico--cta:hover .v-servico__mais { color: var(--laranja); }
@media (max-width: 767px) {
	.v-servicos { grid-template-columns: 1fr; }
	.v-servico__foto { flex-basis: 108px; min-height: 0; }
	.v-servico__corpo { padding: 14px 16px; }
	.v-servico p { font-size: 14px; }
}
