/* Assistência técnica de eletrodomésticos: verde-petróleo e âmbar, cara de oficina organizada (não de loja). */
:root {
  --marca: #134E4A; --marca-2: #0F766E; --destaque: #F59E0B; --destaque-texto: #1F1300;
  --texto: #14211F; --texto-2: #4B5D5A; --fundo: #FFFFFF; --suave: #F3F7F5; --borda: #DCE6E2;
  --raio: 10px;
  --fonte-titulo: 'Red Hat Display', system-ui, sans-serif; --fonte-texto: 'Red Hat Text', system-ui, sans-serif;
}
body { font-size: 17px; }
h1, h2, h3 { font-weight: 800; letter-spacing: -.01em; }
.pc-cabeca h2 { font-size: 32px; }

.topo { position: sticky; top: 0; z-index: 40; background: #fff; border-bottom: 1px solid var(--borda); }
.topo .pc-container { display: flex; align-items: center; justify-content: space-between; height: 64px; gap: 12px; }
.marca { display: flex; align-items: center; gap: 8px; text-decoration: none; font: 800 18px/1.1 var(--fonte-titulo); color: var(--marca); }
.marca svg { width: 30px; height: 30px; color: var(--destaque); flex: none; }
.topo .pc-botao { min-height: 42px; padding: 0 16px; font-size: 15px; white-space: nowrap; background: var(--marca); color: #fff; }
@media (max-width: 420px) { .topo .pc-botao .txt-longo { display: none; } }

.faixa-aviso { background: var(--marca); color: #E7F3F0; text-align: center; font-size: 14px; padding: 8px 16px; }
.faixa-aviso strong { color: var(--destaque); }

.hero { background: var(--suave); padding: 36px 0 44px; }
.hero .pc-container { display: grid; gap: 28px; align-items: center; }
.hero h1 { font-size: 40px; line-height: 1.05; color: var(--marca); }
.hero h1 span { color: var(--marca-2); text-decoration: underline; text-decoration-color: var(--destaque); text-decoration-thickness: 6px; text-underline-offset: 6px; }
.hero .sub { margin: 16px 0 22px; font-size: 19px; color: var(--texto-2); max-width: 540px; }
.hero .acoes { display: grid; gap: 10px; }
.hero .pc-botao { min-height: 56px; font-size: 18px; }
.botao-escuro { background: var(--marca); color: #fff; }
.selos { display: flex; flex-wrap: wrap; gap: 8px; margin: 22px 0 0; padding: 0; list-style: none; }
.selos li { display: flex; gap: 6px; align-items: center; font-size: 15px; color: var(--marca); background: #fff; border: 1px solid var(--borda); border-radius: 999px; padding: 6px 12px; }
.selos svg { width: 16px; height: 16px; color: var(--marca-2); }
.ficha { background: #fff; border: 1px solid var(--borda); border-radius: 14px; padding: 20px; box-shadow: var(--sombra-2); max-width: 420px; font-size: 15px; }
.ficha .topo-ficha { display: flex; justify-content: space-between; border-bottom: 1px dashed var(--borda); padding-bottom: 10px; margin-bottom: 10px; font-weight: 700; color: var(--marca); }
.ficha .topo-ficha span:last-child { color: var(--marca-2); }
.ficha dl { margin: 0; display: grid; grid-template-columns: auto 1fr; gap: 6px 14px; }
.ficha dt { color: var(--texto-2); }
.ficha dd { margin: 0; font-weight: 600; }
.ficha .ok { display: inline-block; margin-top: 12px; background: #DCFCE7; color: #166534; font-weight: 700; border-radius: 999px; padding: 4px 12px; }

.aparelhos { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.aparelho { display: flex; flex-direction: column; align-items: flex-start; gap: 10px; background: #fff; border: 2px solid var(--borda); border-radius: var(--raio); padding: 16px; font: 700 16px var(--fonte-texto); color: var(--texto); cursor: pointer; text-align: left; transition: border-color .15s, transform .15s var(--curva-saida); }
.aparelho:hover, .aparelho:focus-visible { border-color: var(--destaque); transform: translateY(-2px); outline: none; }
.aparelho .pc-icone { background: var(--suave); color: var(--marca-2); }
.aparelho small { font-weight: 600; font-size: 13px; color: var(--whats); }

.servicos { display: grid; gap: 14px; }
.servico h3 { font-size: 21px; color: var(--marca); }
.servico p { color: var(--texto-2); margin-top: 6px; }
.dicas { display: grid; gap: 14px; counter-reset: d; }
.dica { counter-increment: d; background: #fff; border-left: 4px solid var(--destaque); border-radius: 0 var(--raio) var(--raio) 0; padding: 18px 20px; }
.dica h3 { font-size: 20px; color: var(--marca); }
.dica h3::before { content: counter(d) '. '; color: var(--destaque); }
.dica p { color: var(--texto-2); margin-top: 4px; }
.passos { list-style: none; padding: 0; margin: 0; counter-reset: p; }
.passos li { position: relative; padding-left: 58px; min-height: 44px; }
.passos li::before { counter-increment: p; content: counter(p); position: absolute; left: 0; top: 0; width: 42px; height: 42px; border-radius: 50%; background: var(--destaque); color: var(--destaque-texto); display: grid; place-items: center; font: 800 20px var(--fonte-titulo); }
.passos h3 { font-size: 20px; color: var(--marca); }
.passos p { color: var(--texto-2); }
.depoimento { margin: 0; display: flex; flex-direction: column; gap: 10px; }
.depoimento figcaption { font-size: 12px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; color: var(--texto-2); }
.final { background: var(--marca); color: #fff; text-align: center; padding: 56px 0; }
.final h2 { font-size: 32px; margin-bottom: 20px; }
.final .acoes { display: flex; flex-wrap: wrap; gap: 10px; justify-content: center; }

.chips { display: flex; flex-wrap: wrap; gap: 8px; }
.chips label { position: relative; display: block; }
.chips input { position: absolute; left: 0; top: 0; width: 1px; height: 1px; opacity: 0; }
.chips span { display: inline-block; border: 2px solid var(--borda); border-radius: 999px; padding: 8px 14px; font-size: 15px; font-weight: 600; cursor: pointer; }
.chips input:checked + span { background: var(--marca); border-color: var(--marca); color: #fff; }
.chips input:focus-visible + span { outline: 3px solid var(--destaque); }
.pergunta { font-weight: 700; font-size: 15px; margin: 14px 0 6px; }
.pc-dialogo { max-height: 90vh; overflow-y: auto; }

@media (min-width: 640px) {
  .aparelhos { grid-template-columns: repeat(4, 1fr); }
  .hero .acoes { grid-template-columns: auto auto; justify-content: start; }
  .servicos, .dicas { grid-template-columns: repeat(3, 1fr); }
}
@media (min-width: 960px) {
  .hero { padding: 64px 0 72px; }
  .hero .pc-container { grid-template-columns: 1.2fr 1fr; gap: 56px; }
  .hero h1 { font-size: 60px; }
  .ficha { justify-self: end; }
  .pc-cabeca h2 { font-size: 44px; }
}
