/* Folha única do site. Prefixo bz-; cores em variáveis no :root. */
:root {
  --bz-papel: #f6f8f7; --bz-branco: #ffffff; --bz-nevoa: #ebf1f3; --bz-ceu: #d9e9f0;
  --bz-tinta: #13191c; --bz-grafite: #46525a; --bz-borda: #74878f; --bz-linha: #d3dcdf;
  --bz-baliza: #e4572e; --bz-baliza-botao: #c8471f; --bz-baliza-funda: #a63a17; --bz-baliza-clara: #fde6dc;
  --bz-sol: #f2b705; --bz-noite: #0f1a1f; --bz-noite-2: #18262d; --bz-noite-texto: #e6eef1; --bz-noite-apoio: #a9bcc4;
  --bz-titulo: "Mona Sans", "Segoe UI", system-ui, sans-serif;
  --bz-texto: "Geologica", "Segoe UI", system-ui, sans-serif;
  --bz-mono: "Fragment Mono", ui-monospace, "Cascadia Mono", Consolas, monospace;
  --bz-raio: 3px; --bz-largura: 1180px; --bz-sombra: 0 1px 0 rgba(19, 25, 28, .06), 0 14px 34px -22px rgba(19, 25, 28, .45);
}
[hidden] { display: none !important; } /* hidden sempre vence o display das classes */
*, ::before, ::after { box-sizing: border-box; } /* medidas com borda inclusa */
html.bz { -webkit-text-size-adjust: 100%; scroll-behavior: smooth; scroll-padding-top: 96px; }
body { margin: 0; background-color: var(--bz-papel); color: var(--bz-tinta); font: 400 1.0625rem/1.62 var(--bz-texto); }
img, svg { max-width: 100%; display: block; } /* nada de vão embaixo das imagens */
p, ul, ol, dl, figure, h1, h2, h3 { margin: 0; }
h1, h2, h3 { font-family: var(--bz-titulo); font-stretch: 112.5%; letter-spacing: -.012em; line-height: 1.1; text-wrap: balance; }
a { color: var(--bz-tinta); text-decoration-thickness: 1px; text-underline-offset: .18em; }
a:hover { color: var(--bz-baliza-funda); }
:focus-visible { outline: 3px solid var(--bz-baliza); outline-offset: 2px; }
button, input, select, textarea { color: inherit; font: inherit; } /* controles com a letra do site */
.bz-oculto { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); clip-path: inset(50%); white-space: nowrap; }
.bz-largo { width: min(100% - 2.5rem, var(--bz-largura)); margin-inline: auto; }
.bz-picto { flex: none; }
.bz-atalho { position: absolute; left: 1rem; top: -4rem; z-index: 60; padding: .7rem 1rem; background: var(--bz-baliza-botao); color: #fff; font-weight: 600; border-radius: var(--bz-raio); }
.bz-atalho:focus { top: .8rem; color: #fff; }

/* ---------- botões e rótulos de canal */
.bz-botao { display: inline-flex; align-items: center; justify-content: center; gap: .55rem; min-height: 48px; padding: .72rem 1.2rem; border: 2px solid transparent; border-radius: var(--bz-raio); font: 600 1rem/1.2 var(--bz-texto); text-decoration: none; cursor: pointer; transition: background-color .15s, color .15s, border-color .15s; }
.bz-botao--baliza { background-color: var(--bz-baliza-botao); color: #fff; }
.bz-botao--baliza:hover { background-color: var(--bz-baliza-funda); color: #fff; }
.bz-botao--tinta { background-color: var(--bz-tinta); color: #fff; }
.bz-botao--tinta:hover { background-color: #2b363c; color: #fff; }
.bz-botao--contorno { background-color: transparent; border-color: var(--bz-tinta); color: var(--bz-tinta); }
.bz-botao--contorno:hover { background-color: var(--bz-tinta); color: #fff; }
.bz-botao[disabled] { opacity: .65; cursor: progress; }
.bz-canal { display: flex; align-items: center; gap: .6rem; margin-bottom: .9rem; color: var(--bz-grafite); font: 400 .8rem/1.2 var(--bz-mono); letter-spacing: .06em; text-transform: uppercase; }
.bz-canal span { padding: .28rem .5rem; background-color: var(--bz-tinta); color: #fff; border-radius: 2px; }
.bz-canal::after { content: ""; flex: 0 0 2.2rem; height: 2px; background-color: var(--bz-baliza); }
.bz-canal--claro { color: var(--bz-noite-apoio); }
.bz-canal--claro span { background-color: var(--bz-baliza-botao); }
.bz-seguir { display: inline-flex; align-items: center; gap: .4rem; min-height: 44px; margin-top: .7rem; font-weight: 600; text-decoration: none; border-bottom: 2px solid var(--bz-baliza); padding-bottom: .15rem; }
.bz-seguir--claro { color: var(--bz-noite-texto); }
.bz-seguir--claro:hover { color: #ffb69c; }

/* ---------- faixa superior e cabeçalho */
.bz-faixa { background-color: var(--bz-tinta); color: #dfe7ea; font-size: .86rem; }
.bz-faixa__linha { display: flex; align-items: center; justify-content: space-between; gap: .4rem 1.4rem; flex-wrap: wrap; min-height: 38px; padding-block: .35rem; }
.bz-faixa__expediente { display: flex; align-items: center; gap: .45rem; }
.bz-faixa__fones { display: flex; gap: 1.1rem; font-family: var(--bz-mono); }
.bz-faixa a { color: #fff; text-decoration: none; padding-block: .3rem; }
.bz-faixa a:hover { color: #ffb69c; text-decoration: underline; }
.bz-cabecalho { position: sticky; top: 0; z-index: 40; background-color: var(--bz-branco); border-bottom: 1px solid var(--bz-linha); }
.bz-cabecalho__linha { display: flex; align-items: center; gap: 1.2rem; min-height: 74px; }
.bz-marca { display: grid; grid-template-columns: 40px auto; column-gap: .7rem; align-items: center; text-decoration: none; margin-right: auto; }
.bz-marca img { grid-row: span 2; }
.bz-marca__nome { font: 800 1.32rem/1 var(--bz-titulo); font-stretch: 112.5%; letter-spacing: -.01em; }
.bz-marca__sub { font: 400 .72rem/1.3 var(--bz-mono); color: var(--bz-grafite); letter-spacing: .04em; text-transform: uppercase; }
.bz-menu ul { display: flex; gap: .2rem; list-style: none; padding: 0; margin: 0; }
.bz-menu a { display: block; padding: .6rem .7rem; font-size: .95rem; font-weight: 500; text-decoration: none; white-space: nowrap; border-radius: var(--bz-raio); }
.bz-menu a:hover, .bz-menu a[aria-current="page"] { background-color: var(--bz-nevoa); color: var(--bz-tinta); box-shadow: inset 0 -2px 0 var(--bz-baliza); }
.bz-cabecalho__proposta { white-space: nowrap; }
.bz-gaveta { display: none; width: 48px; height: 48px; border: 1px solid var(--bz-borda); border-radius: var(--bz-raio); background-color: var(--bz-branco); cursor: pointer; }
.bz-gaveta__tracos { display: grid; gap: 5px; width: 22px; margin: auto; }
.bz-gaveta__tracos span { display: block; height: 2px; background-color: var(--bz-tinta); transition: transform .2s, opacity .2s; }
.bz-gaveta[aria-expanded="true"] .bz-gaveta__tracos span:nth-child(1) { transform: translateY(7px) rotate(45deg); }
.bz-gaveta[aria-expanded="true"] .bz-gaveta__tracos span:nth-child(2) { opacity: 0; }
.bz-gaveta[aria-expanded="true"] .bz-gaveta__tracos span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }

/* ---------- abertura */
.bz-abertura { position: relative; isolation: isolate; overflow: hidden; background: linear-gradient(180deg, var(--bz-ceu) 0%, #eaf2f5 58%, var(--bz-papel) 100%) var(--bz-ceu); border-bottom: 1px solid var(--bz-linha); }
.bz-abertura__isobaras { position: absolute; inset: 0; z-index: -1; opacity: .5; background: url("isobaras.svg") center / cover no-repeat; }
.bz-abertura__grade { display: grid; grid-template-columns: minmax(0, 1.12fr) minmax(0, .88fr); gap: 2.4rem; align-items: center; padding-block: clamp(2.6rem, 6vw, 4.6rem) clamp(2rem, 4vw, 3rem); }
.bz-abertura__chapeu { color: var(--bz-baliza-funda); font: 400 .85rem/1.3 var(--bz-mono); letter-spacing: .08em; text-transform: uppercase; margin-bottom: 1rem; }
.bz-abertura h1 { font-size: clamp(2.05rem, 4.4vw, 3.45rem); font-weight: 800; max-width: 17ch; }
.bz-abertura__lide { margin-top: 1.2rem; font-size: 1.14rem; max-width: 56ch; color: #273136; }
.bz-abertura__acoes { display: flex; flex-wrap: wrap; gap: .8rem; margin-top: 1.8rem; }
.bz-abertura__figura { position: relative; justify-self: center; width: min(100%, 400px); padding: 1rem 1rem .6rem; background-color: rgba(255, 255, 255, .55); border: 1px solid rgba(116, 135, 143, .45); border-radius: var(--bz-raio); }
.bz-abertura__figura figcaption, .bz-monte__figura figcaption { margin-top: .5rem; font: 400 .74rem/1.4 var(--bz-mono); color: var(--bz-grafite); }
.bz-leituras { display: flex; flex-wrap: wrap; gap: .6rem; margin-top: 2rem; padding: 0; list-style: none; }
.bz-leituras li { display: flex; align-items: baseline; gap: .55rem; padding: .55rem .8rem; background-color: var(--bz-branco); border: 1px solid var(--bz-linha); border-left: 3px solid var(--bz-baliza); font-family: var(--bz-mono); }
.bz-leituras__sigla { font-size: .78rem; color: var(--bz-grafite); }
.bz-leituras__valor { font-size: .98rem; }

/* ---------- desenho da torre (SVG) */
.bz-torre { width: 100%; height: auto; }
.bz-torre__regua line { stroke: var(--bz-borda); stroke-width: 1; }
.bz-torre__regua text, .bz-torre__rotulo { font: 400 10.5px var(--bz-mono); fill: var(--bz-grafite); }
.bz-torre__rotulo { fill: var(--bz-tinta); }
.bz-torre__chao { stroke: var(--bz-tinta); stroke-width: 2; }
.bz-torre__estais line { stroke: #8fa3ab; stroke-width: 1; }
.bz-faixa-baliza { fill: var(--bz-baliza); }
.bz-faixa-branca { fill: #fff; }
.bz-torre__trelica { fill: none; stroke: var(--bz-tinta); stroke-width: 1.1; }
.bz-torre__braco, .bz-torre__haste { stroke: var(--bz-tinta); stroke-width: 2; }
.bz-torre__domo { fill: var(--bz-sol); stroke: var(--bz-tinta); stroke-width: 1.2; }
.bz-torre__biruta { fill: var(--bz-tinta); stroke: var(--bz-tinta); stroke-width: 1.6; }
.bz-gira { transform-box: fill-box; transform-origin: center; animation: bz-girar 2.4s linear infinite; }
.bz-gira path { fill: none; stroke: var(--bz-tinta); stroke-width: 1.4; }
.bz-gira__copo { fill: var(--bz-tinta); }
.bz-gira__alcance { fill: none; stroke: none; }
.bz-corrente { stroke: #6e8b97; stroke-width: 1.3; stroke-dasharray: 5 11; animation: bz-soprar 3.2s linear infinite; }
.bz-corrente--2 { animation-duration: 2.7s; } .bz-corrente--3 { animation-duration: 3.6s; } .bz-corrente--4 { animation-duration: 2.9s; }
@keyframes bz-girar { to { transform: rotate(360deg); } }
@keyframes bz-soprar { to { stroke-dashoffset: -64; } }
@media (prefers-reduced-motion: reduce) { /* conchas e correntes paradas */
  html.bz { scroll-behavior: auto; }
  .bz-gira, .bz-corrente { animation: none; }
}

/* ---------- seções */
.bz-secao { padding-block: clamp(3rem, 7vw, 5.2rem); }
.bz-secao--nevoa { background-color: var(--bz-nevoa); border-block: 1px solid var(--bz-linha); }
.bz-secao h2 { font-size: clamp(1.6rem, 3vw, 2.35rem); font-weight: 800; max-width: 26ch; }
.bz-secao__intro { margin-top: 1rem; max-width: 64ch; color: var(--bz-grafite); }
.bz-duas { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: clamp(1.4rem, 3vw, 2.2rem); margin-top: 2rem; }
.bz-duas > div > h2 + p { margin-top: 1rem; color: var(--bz-grafite); }
.bz-cartao { padding: clamp(1.4rem, 3vw, 2rem); border: 1px solid var(--bz-linha); border-radius: var(--bz-raio); box-shadow: var(--bz-sombra); color: var(--bz-tinta); }
.bz-cartao--marcas {
  background:
    linear-gradient(var(--bz-baliza), var(--bz-baliza)) left top / 22px 3px no-repeat,
    linear-gradient(var(--bz-baliza), var(--bz-baliza)) left top / 3px 22px no-repeat,
    linear-gradient(var(--bz-tinta), var(--bz-tinta)) right bottom / 22px 3px no-repeat,
    linear-gradient(var(--bz-tinta), var(--bz-tinta)) right bottom / 3px 22px no-repeat,
    var(--bz-branco);
}
.bz-cartao h3 { font-size: 1.32rem; margin: .9rem 0 .5rem; }
.bz-cartao p + p { margin-top: .7rem; }
.bz-cartao__icone { display: inline-grid; place-items: center; width: 50px; height: 50px; border-radius: 50%; background-color: var(--bz-nevoa); color: var(--bz-tinta); }
.bz-cartao__icone--sol { background-color: #fdf0c4; }

/* tabela de linhas */
.bz-ficha { margin-top: 1.2rem; overflow-x: auto; border: 1px solid var(--bz-linha); border-radius: var(--bz-raio); background-color: var(--bz-branco); }
.bz-ficha table { width: 100%; min-width: 400px; border-collapse: collapse; font-size: .93rem; table-layout: fixed; }
.bz-ficha th:first-child { width: 7.6rem; }
.bz-ficha th, .bz-ficha td { padding: .7rem .8rem; text-align: left; vertical-align: top; border-bottom: 1px solid var(--bz-linha); }
.bz-ficha thead th { background-color: var(--bz-tinta); color: #fff; font: 400 .74rem/1.3 var(--bz-mono); letter-spacing: .05em; text-transform: uppercase; }
.bz-ficha tbody th { font: 400 .74rem/1.9 var(--bz-mono); color: var(--bz-grafite); letter-spacing: .04em; text-transform: uppercase; }
.bz-ficha thead th + th { font-size: .9rem; letter-spacing: .02em; }
.bz-ficha tbody tr:last-child > * { border-bottom: 0; }
.bz-ficha__altura { font-family: var(--bz-mono); white-space: nowrap; color: var(--bz-baliza-funda); }

/* cadeia de medição */
.bz-cadeia__lista { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 1.2rem; margin-top: 2.4rem; padding: 0; list-style: none; counter-reset: etapa; position: relative; }
.bz-cadeia__lista::before { content: ""; position: absolute; left: 0; right: 0; top: 17px; height: 2px; background: repeating-linear-gradient(90deg, var(--bz-borda) 0 8px, transparent 8px 14px) var(--bz-papel); }
.bz-cadeia__etapa { position: relative; padding-top: 3.1rem; }
.bz-cadeia__n { position: absolute; top: 0; left: 0; display: grid; place-items: center; width: 36px; height: 36px; border-radius: 50%; background-color: var(--bz-tinta); color: #fff; font: 400 .85rem/1 var(--bz-mono); box-shadow: 0 0 0 5px var(--bz-papel); }
.bz-cadeia__etapa:last-child .bz-cadeia__n { background-color: var(--bz-baliza-botao); }
.bz-cadeia__etapa h3 { font-size: 1.06rem; margin-bottom: .45rem; }
.bz-cadeia__etapa p { font-size: .95rem; color: var(--bz-grafite); }
.bz-cadeia__fases { margin-top: 2.2rem; padding: .9rem 1.1rem; border-left: 3px solid var(--bz-baliza); background-color: var(--bz-branco); font-size: .98rem; }

/* montador */
.bz-monte__grade { display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(0, .95fr); gap: clamp(1.6rem, 4vw, 3.4rem); align-items: start; }
.bz-monte__painel > h2 + p { margin-top: .9rem; color: var(--bz-grafite); max-width: 58ch; }
.bz-monte__tipo, .bz-monte__sensores { margin: 1.6rem 0 0; padding: 0; border: 0; display: flex; flex-wrap: wrap; gap: .55rem; }
.bz-monte__tipo legend, .bz-monte__sensores legend { width: 100%; margin-bottom: .55rem; padding: 0; font-weight: 600; }
.bz-monte__linha { display: grid; grid-template-columns: minmax(0, 1fr) 9.5rem; gap: 1rem; margin-top: 1.4rem; }
.bz-monte__altura { display: grid; grid-template-columns: minmax(0, 1fr) auto; column-gap: 1rem; align-items: center; }
.bz-monte__altura label { grid-column: 1 / -1; }
.bz-monte__altura input[type="range"] { width: 100%; accent-color: var(--bz-baliza-botao); min-height: 44px; }
.bz-monte__lido { min-width: 5.4rem; padding: .45rem .6rem; border: 1px solid var(--bz-linha); background-color: var(--bz-branco); font: 400 1rem/1.2 var(--bz-mono); text-align: right; }
.bz-monte__resultado { margin-top: 1.4rem; padding: .9rem 1rem; background-color: var(--bz-branco); border: 1px solid var(--bz-linha); border-left: 3px solid var(--bz-tinta); font-family: var(--bz-mono); font-size: .92rem; }
.bz-monte__painel > .bz-botao { margin-top: 1.1rem; }
.bz-monte__nota { margin-top: 1rem; font-size: .88rem; color: var(--bz-grafite); max-width: 60ch; }
.bz-monte__figura { position: sticky; top: 104px; padding: 1rem 1rem .7rem; border: 1px solid var(--bz-linha); border-radius: var(--bz-raio); background: linear-gradient(180deg, var(--bz-ceu), var(--bz-branco) 72%) var(--bz-branco); }
.bz-marcar { display: inline-flex; align-items: center; gap: .5rem; min-height: 44px; padding: .4rem .8rem; border: 1px solid var(--bz-borda); border-radius: var(--bz-raio); background-color: var(--bz-branco); font-size: .94rem; cursor: pointer; }
.bz-marcar:has(input:checked) { border-color: var(--bz-tinta); box-shadow: inset 3px 0 0 var(--bz-baliza); }
.bz-marcar input { width: 18px; height: 18px; accent-color: var(--bz-tinta); margin: 0; }

/* sensores */
.bz-sensores { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1px; margin-top: 2rem; padding: 0; list-style: none; background-color: var(--bz-linha); border: 1px solid var(--bz-linha); }
.bz-sensor { padding: 1.4rem 1.2rem 1.5rem; background-color: var(--bz-branco); }
.bz-sensor__icone { color: var(--bz-tinta); margin-bottom: .9rem; }
.bz-sensor:nth-child(7) .bz-sensor__icone { color: #9b6f00; }
.bz-sensor h3 { font-size: 1.02rem; margin-bottom: .4rem; }
.bz-sensor p { font-size: .93rem; color: var(--bz-grafite); }
.bz-revenda { display: flex; align-items: center; gap: .7rem; margin-top: 1.4rem; font-size: .96rem; }
.bz-revenda .bz-picto { color: var(--bz-baliza-botao); }
.bz-lista-tecnica { display: grid; gap: .8rem; padding: 0; list-style: none; }
.bz-lista-tecnica li { display: flex; gap: .8rem; align-items: flex-start; padding: .95rem 1rem; background-color: var(--bz-branco); border: 1px solid var(--bz-linha); border-radius: var(--bz-raio); }
.bz-lista-tecnica .bz-picto { margin-top: .1rem; color: var(--bz-baliza-botao); }
.bz-texto-corrido p + p { margin-top: .9rem; }

/* faixa escura da manutenção */
.bz-noite { position: relative; isolation: isolate; overflow: hidden; background-color: var(--bz-noite); color: var(--bz-noite-texto); }
.bz-noite__isobaras { position: absolute; inset: 0; z-index: -1; opacity: .16; background: url("isobaras.svg") right center / cover no-repeat; }
.bz-noite__grade { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(0, .8fr); gap: clamp(1.6rem, 4vw, 3.6rem); align-items: center; }
.bz-noite h2 { color: #fff; }
.bz-noite__grade > div > p:not(.bz-canal) { margin-top: 1rem; color: var(--bz-noite-apoio); max-width: 60ch; }
.bz-noite__riscos { display: grid; gap: .7rem; padding: 0; list-style: none; }
.bz-noite__riscos li { display: flex; align-items: center; gap: .75rem; padding: .95rem 1.1rem; background-color: var(--bz-noite-2); border: 1px solid #2a3b43; border-radius: var(--bz-raio); }
.bz-noite__riscos .bz-picto { color: #ff8c66; }

/* empresa e mapa */
.bz-empresa { display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(0, .85fr); gap: clamp(1.6rem, 4vw, 3rem); align-items: start; }
.bz-empresa__texto > h2 + p { margin-top: 1rem; }
.bz-empresa__texto > p + p { margin-top: .8rem; }
.bz-identidade { display: grid; gap: 0; margin-top: 1.6rem; border-top: 1px solid var(--bz-linha); }
.bz-identidade div { display: grid; grid-template-columns: 9.5rem minmax(0, 1fr); gap: 1rem; padding: .7rem 0; border-bottom: 1px solid var(--bz-linha); }
.bz-identidade dt { font: 400 .76rem/1.6 var(--bz-mono); color: var(--bz-grafite); text-transform: uppercase; letter-spacing: .05em; }
.bz-identidade dd { margin: 0; overflow-wrap: anywhere; }
.bz-mapa { display: grid; justify-items: start; gap: .8rem; min-height: 360px; padding: 1.6rem; align-content: end; border: 1px solid var(--bz-linha); border-radius: var(--bz-raio); background: linear-gradient(rgba(116, 135, 143, .16) 1px, transparent 1px) 0 0 / 28px 28px, linear-gradient(90deg, rgba(116, 135, 143, .16) 1px, transparent 1px) 0 0 / 28px 28px, var(--bz-branco); }
.bz-mapa__pino { color: var(--bz-baliza-botao); }
.bz-mapa__endereco { font-weight: 500; max-width: 34ch; overflow-wrap: anywhere; }
.bz-mapa__nota { font-size: .84rem; color: var(--bz-grafite); }
.bz-mapa--aberto { padding: 0; align-content: stretch; }
.bz-mapa iframe { width: 100%; height: 100%; min-height: 360px; border: 0; border-radius: var(--bz-raio); }

/* perguntas */
.bz-perguntas { display: grid; grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr); gap: clamp(1.4rem, 4vw, 3rem); }
.bz-perguntas__lista { border-top: 2px solid var(--bz-tinta); }
.bz-pergunta { border-bottom: 1px solid var(--bz-linha); }
.bz-pergunta summary { position: relative; display: block; padding: 1.05rem 2.6rem 1.05rem 0; font-weight: 600; cursor: pointer; list-style: none; }
.bz-pergunta summary::-webkit-details-marker { display: none; }
.bz-pergunta summary::after { content: "+"; position: absolute; right: .3rem; top: .8rem; font: 400 1.5rem/1 var(--bz-mono); color: var(--bz-baliza-botao); transition: transform .2s; }
.bz-pergunta[open] summary::after { transform: rotate(45deg); }
.bz-pergunta p { padding: 0 2.6rem 1.15rem 0; color: var(--bz-grafite); }

/* formulário */
.bz-pedido { background-color: var(--bz-nevoa); border-top: 1px solid var(--bz-linha); }
.bz-pedido__grade { display: grid; grid-template-columns: minmax(0, 1.55fr) minmax(0, .75fr); gap: clamp(1.4rem, 3vw, 2.4rem); align-items: start; }
.bz-consulta { padding: clamp(1.4rem, 3.4vw, 2.4rem); background-color: var(--bz-branco); color: var(--bz-tinta); border: 1px solid var(--bz-linha); border-top: 4px solid var(--bz-tinta); border-radius: var(--bz-raio); box-shadow: var(--bz-sombra); }
.bz-consulta__titulo { font-size: clamp(1.5rem, 2.6vw, 2rem); font-weight: 800; }
.bz-consulta__intro { margin-top: .6rem; color: var(--bz-grafite); }
.bz-consulta__alerta { margin-top: 1.2rem; padding: .85rem 1rem; background-color: var(--bz-baliza-clara); border-left: 4px solid var(--bz-baliza-botao); font-weight: 500; }
.bz-consulta__grupo { margin: 1.8rem 0 0; padding: 0; border: 0; min-width: 0; }
.bz-consulta__grupo legend { display: flex; align-items: center; gap: .6rem; margin-bottom: 1rem; padding: 0; font: 700 1.08rem/1.2 var(--bz-titulo); font-stretch: 112.5%; }
.bz-consulta__num { display: grid; place-items: center; width: 28px; height: 28px; border-radius: 50%; background-color: var(--bz-baliza-botao); color: #fff; font: 400 .85rem/1 var(--bz-mono); }
.bz-consulta__dupla, .bz-consulta__tripla { display: grid; gap: 1rem; }
.bz-consulta__dupla { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.bz-consulta__tripla { grid-template-columns: minmax(0, 1.4fr) repeat(2, minmax(0, 1fr)); }
.bz-consulta__grupo > * + * { margin-top: 1rem; }
.bz-campo { display: grid; gap: .35rem; min-width: 0; }
.bz-campo > label, .bz-campo__rotulo { font-weight: 600; font-size: .96rem; }
.bz-opcional { font: 400 .72rem/1 var(--bz-mono); color: var(--bz-grafite); text-transform: uppercase; letter-spacing: .04em; margin-left: .3rem; }
.bz-campo input[type="text"], .bz-campo input[type="tel"], .bz-campo input[type="email"], .bz-campo select, .bz-campo textarea { width: 100%; min-height: 48px; padding: .66rem .8rem; background-color: var(--bz-branco); border: 1px solid var(--bz-borda); border-radius: var(--bz-raio); }
.bz-campo textarea { min-height: 110px; resize: vertical; line-height: 1.5; }
.bz-campo input:focus, .bz-campo select:focus, .bz-campo textarea:focus { outline: none; border-color: var(--bz-tinta); box-shadow: 0 0 0 3px rgba(228, 87, 46, .45); }
.bz-campo--falha input, .bz-campo--falha select, .bz-campo--falha textarea { border-color: var(--bz-baliza-funda); background-color: #fff8f5; }
.bz-falha { color: var(--bz-baliza-funda); font-size: .9rem; font-weight: 500; }
.bz-dica { font-size: .86rem; color: var(--bz-grafite); }
.bz-opcoes { display: flex; flex-wrap: wrap; gap: .5rem; }
.bz-opcao { display: inline-flex; align-items: center; gap: .5rem; min-height: 44px; padding: .45rem .85rem; border: 1px solid var(--bz-borda); border-radius: var(--bz-raio); background-color: var(--bz-branco); cursor: pointer; font-size: .95rem; }
.bz-opcao input { width: 18px; height: 18px; margin: 0; accent-color: var(--bz-baliza-botao); }
.bz-opcao:has(input:checked) { border-color: var(--bz-tinta); background-color: var(--bz-tinta); color: #fff; }
.bz-opcao:has(input:focus-visible) { outline: 3px solid var(--bz-baliza); outline-offset: 2px; }
.bz-campo--falha .bz-opcao { border-color: var(--bz-baliza-funda); }
.bz-campo--autorizo { grid-template-columns: 22px minmax(0, 1fr); column-gap: .7rem; align-items: start; margin-top: 1.6rem; }
.bz-campo--autorizo input { width: 20px; height: 20px; margin: .2rem 0 0; accent-color: var(--bz-tinta); }
.bz-campo--autorizo label { font-weight: 400; font-size: .94rem; }
.bz-campo--autorizo .bz-falha { grid-column: 2; }
.bz-isca { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
.bz-consulta__fim { display: flex; flex-wrap: wrap; align-items: center; gap: .8rem 1.2rem; margin-top: 1.6rem; }
.bz-consulta__nota { font-size: .86rem; color: var(--bz-grafite); max-width: 40ch; }
.bz-pedido__lado { display: grid; gap: .7rem; padding: 1.4rem; background-color: var(--bz-tinta); color: #e5ecef; border-radius: var(--bz-raio); }
.bz-pedido__lado-titulo { font: 700 1.12rem/1.2 var(--bz-titulo); font-stretch: 112.5%; color: #fff; margin-bottom: .2rem; }
.bz-pedido__canal { display: flex; align-items: center; gap: .65rem; min-height: 48px; padding: .6rem .8rem; border: 1px solid #3a474d; border-radius: var(--bz-raio); color: #fff; text-decoration: none; overflow-wrap: anywhere; font-family: var(--bz-mono); font-size: .92rem; }
.bz-pedido__canal:hover { border-color: var(--bz-baliza); color: #fff; background-color: #1d272b; }
.bz-pedido__hora { font-size: .9rem; color: #b9c8ce; }
.bz-pedido__depois { margin-top: .6rem; padding-left: 1.2rem; display: grid; gap: .5rem; font-size: .9rem; color: #c9d5da; }

/* páginas de texto, recibo e lacuna */
.bz-documento__grade { display: grid; grid-template-columns: minmax(0, .7fr) minmax(0, 1.3fr); gap: clamp(1.4rem, 4vw, 3.4rem); }
.bz-documento__topo h1 { font-size: clamp(1.9rem, 3.4vw, 2.7rem); font-weight: 800; }
.bz-documento__data { margin-top: .8rem; font: 400 .8rem/1.4 var(--bz-mono); color: var(--bz-grafite); }
.bz-documento__texto section + section { margin-top: 2rem; }
.bz-documento__texto h2 { font-size: 1.3rem; margin-bottom: .6rem; }
.bz-documento__texto p + p { margin-top: .7rem; }
.bz-documento__texto p { overflow-wrap: anywhere; }
.bz-recebida__caixa, .bz-lacuna__caixa { max-width: 680px; padding: clamp(1.6rem, 4vw, 2.6rem); background-color: var(--bz-branco); border: 1px solid var(--bz-linha); border-top: 4px solid var(--bz-baliza-botao); border-radius: var(--bz-raio); box-shadow: var(--bz-sombra); }
.bz-recebida__caixa > * + *, .bz-lacuna__caixa > * + * { margin-top: 1rem; }
.bz-recebida__selo { color: var(--bz-baliza-botao); }
.bz-recebida h1, .bz-lacuna h1 { font-size: clamp(1.8rem, 3.4vw, 2.5rem); font-weight: 800; }
.bz-recebida__numero { font-family: var(--bz-mono); font-size: 1.05rem; }
.bz-recebida__numero b { padding: .2rem .45rem; background-color: var(--bz-nevoa); font-weight: 400; }
.bz-lacuna__grafico { display: flex; align-items: flex-end; gap: 6px; height: 54px; }
.bz-lacuna__grafico span { width: 18px; background-color: var(--bz-tinta); border-radius: 1px; }
.bz-lacuna__grafico span:nth-child(1) { height: 60%; } .bz-lacuna__grafico span:nth-child(2) { height: 85%; } .bz-lacuna__grafico span:nth-child(3) { height: 45%; }
.bz-lacuna__grafico span:nth-child(5) { height: 70%; } .bz-lacuna__grafico span:nth-child(6) { height: 50%; }
.bz-lacuna__grafico .bz-lacuna__vazio { height: 100%; background: repeating-linear-gradient(-45deg, var(--bz-baliza) 0 4px, transparent 4px 8px) transparent; }
.bz-lacuna__links { display: flex; flex-wrap: wrap; gap: .5rem; padding: 0; list-style: none; }
.bz-lacuna__links a { display: inline-block; padding: .6rem .9rem; border: 1px solid var(--bz-borda); border-radius: var(--bz-raio); text-decoration: none; }

/* rodapé, barra do celular e aviso de medição */
.bz-rodape { background-color: var(--bz-noite); color: #c5d3d9; font-size: .93rem; padding-top: clamp(2.6rem, 6vw, 3.8rem); }
.bz-rodape__colunas { display: grid; grid-template-columns: minmax(0, 1.2fr) repeat(3, minmax(0, 1fr)); gap: 2rem; }
.bz-rodape__marca { display: flex; align-items: center; gap: .6rem; font: 800 1.2rem/1 var(--bz-titulo); font-stretch: 112.5%; color: #fff; margin-bottom: .8rem; }
.bz-rodape__titulo { font: 400 .78rem/1.3 var(--bz-mono); letter-spacing: .07em; text-transform: uppercase; color: #ff9b78; margin-bottom: .8rem; }
.bz-rodape__bloco p { overflow-wrap: anywhere; }
.bz-rodape__lista { display: grid; gap: .25rem; padding: 0; list-style: none; }
.bz-rodape__lista a, .bz-rodape__hora { display: inline-flex; align-items: center; gap: .5rem; min-height: 36px; color: #e9f0f2; text-decoration: none; overflow-wrap: anywhere; }
.bz-rodape__lista a:hover { color: #ffb69c; text-decoration: underline; }
.bz-rodape__preferencia { min-height: 36px; padding: 0; border: 0; background: none; color: #e9f0f2; text-decoration: underline; cursor: pointer; }
.bz-rodape__base { margin-top: 2.4rem; padding-block: 1.2rem 1.6rem; border-top: 1px solid #263840; font-size: .84rem; color: #9fb2ba; }
.bz-barra { display: none; }
.bz-medicao { position: fixed; z-index: 70; left: 1rem; bottom: 1rem; width: min(400px, calc(100% - 2rem)); padding: 1.1rem 1.2rem 1.2rem; background-color: var(--bz-branco); color: var(--bz-tinta); border: 1px solid var(--bz-borda); border-top: 4px solid var(--bz-baliza-botao); border-radius: var(--bz-raio); box-shadow: 0 24px 50px -24px rgba(19, 25, 28, .55); font-size: .92rem; }
.bz-medicao__titulo { font: 700 1.02rem/1.2 var(--bz-titulo); font-stretch: 112.5%; margin-bottom: .45rem; }
.bz-medicao__botoes { display: flex; flex-wrap: wrap; gap: .6rem; margin-top: .9rem; }

/* ---------- telas menores */
@media (max-width: 1100px) {
  .bz-gaveta { display: block; }
  .bz-menu { display: none; position: absolute; left: 0; right: 0; top: 100%; background-color: var(--bz-branco); border-bottom: 1px solid var(--bz-linha); box-shadow: 0 18px 30px -20px rgba(19, 25, 28, .5); }
  .bz-menu.bz-menu--aberto { display: block; }
  .bz-menu ul { flex-direction: column; width: min(100% - 2.5rem, var(--bz-largura)); margin: 0 auto; padding: .6rem 0 1rem; }
  .bz-menu a { padding: .85rem .6rem; font-size: 1.02rem; }
  .bz-cadeia__lista { grid-template-columns: minmax(0, 1fr); gap: 0; }
  .bz-cadeia__lista::before { left: 17px; right: auto; top: 0; bottom: 0; width: 2px; height: auto; background: repeating-linear-gradient(180deg, var(--bz-borda) 0 8px, transparent 8px 14px) var(--bz-papel); }
  .bz-cadeia__etapa { padding: 0 0 1.6rem 3.4rem; }
  .bz-sensores { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .bz-rodape__colunas { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 860px) { /* uma coluna e barra de contato fixa */
  .bz-abertura__grade, .bz-monte__grade, .bz-duas, .bz-noite__grade, .bz-empresa, .bz-perguntas, .bz-pedido__grade, .bz-documento__grade { grid-template-columns: minmax(0, 1fr); }
  .bz-abertura__figura { width: min(100%, 340px); }
  .bz-monte__figura { position: static; max-width: 420px; }
  .bz-faixa__area { display: none; }
  .bz-barra { position: fixed; z-index: 50; left: 0; right: 0; bottom: 0; display: grid; grid-template-columns: repeat(auto-fit, minmax(0, 1fr)); gap: 1px; background-color: var(--bz-tinta); padding-bottom: env(safe-area-inset-bottom); transition: transform .2s; }
  .bz-barra a { display: flex; align-items: center; justify-content: center; gap: .5rem; min-height: 56px; color: #fff; font-weight: 600; text-decoration: none; }
  .bz-barra__pedir { background-color: var(--bz-baliza-botao); }
  .bz-barra--recolhida { transform: translateY(110%); }
  .bz-rodape { padding-bottom: 64px; }
  .bz-medicao { bottom: 70px; }
}
@media (max-width: 640px) { /* celular */
  .bz-largo { width: min(100% - 2rem, var(--bz-largura)); }
  .bz-cabecalho__linha { gap: .6rem; min-height: 66px; }
  .bz-cabecalho__proposta { width: 48px; padding: 0; }
  .bz-cabecalho__proposta span { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
  .bz-marca__sub { display: none; }
  .bz-faixa__linha { justify-content: center; text-align: center; }
  .bz-consulta__dupla, .bz-consulta__tripla, .bz-monte__linha { grid-template-columns: minmax(0, 1fr); }
  .bz-sensores, .bz-rodape__colunas { grid-template-columns: minmax(0, 1fr); }
  .bz-identidade div { grid-template-columns: minmax(0, 1fr); gap: .1rem; }
  .bz-ficha table { min-width: 0; }
  .bz-ficha th:first-child { width: 5.9rem; }
  .bz-abertura__acoes .bz-botao, .bz-consulta__enviar { width: 100%; }
}
