:root{
  --vinho:#7B1C2C; --vinho-escuro:#5A1220; --vinho-claro:#D98A96;
  --ouro:#C9A84C; --preto:#0B0B0D; --creme:#F5F3EF;
  --tinta:#16161A; --cinza:#6B6B72; --linha:#E4E0D9; --papel:#FFFFFF;
  --ok:#1F7A4C; --alerta:#B4771A; --erro:#A32020;
  --raio:10px; --sombra:0 1px 2px rgba(11,11,13,.06),0 8px 24px rgba(11,11,13,.06);
}
*{box-sizing:border-box}
body{margin:0;background:var(--creme);color:var(--tinta);
  font-family:Archivo,"Segoe UI",system-ui,sans-serif;font-size:15px;line-height:1.55}
h1,h2,h3,.marca{font-family:"Bebas Neue",Archivo,sans-serif;font-weight:400;
  letter-spacing:.02em;line-height:1;margin:0 0 .4em}
h1{font-size:44px}h2{font-size:30px}h3{font-size:22px}
a{color:var(--vinho);text-decoration:none}
a:hover{text-decoration:underline}
.container{max-width:1100px;margin:0 auto;padding:0 20px}

/* topo */
.topo{background:var(--preto);color:var(--creme);position:sticky;top:0;z-index:20}
.topo .container{display:flex;align-items:center;gap:22px;height:58px}
.marca{font-size:27px;color:var(--creme);display:flex;align-items:baseline;gap:9px}
.marca:hover{text-decoration:none}
.marca span{font-family:Archivo;font-size:10px;font-weight:600;letter-spacing:.14em;
  text-transform:uppercase;color:var(--ouro)}
.menu{display:flex;gap:18px;margin-left:auto;flex-wrap:wrap}
.menu a{color:#CFCBC4;font-size:13px;font-weight:500;letter-spacing:.02em;
  padding:6px 10px;border-radius:6px;position:relative}
.menu a:hover{color:var(--ouro);text-decoration:none;background:rgba(201,168,76,.10)}
.menu a.ativo{color:var(--ouro);font-weight:600;background:rgba(201,168,76,.14);
  text-decoration:none}
.menu a.ativo::after{content:"";position:absolute;left:10px;right:10px;bottom:-1px;
  height:2px;background:var(--ouro);border-radius:2px}

/* blocos */
.grade{display:grid;gap:18px}
.g2{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}
.g3{grid-template-columns:repeat(auto-fit,minmax(230px,1fr))}
.cartao{background:var(--papel);border:1px solid var(--linha);border-radius:var(--raio);
  padding:20px;box-shadow:var(--sombra)}
.cartao.destaque{border-left:4px solid var(--vinho)}
main{padding:30px 0 70px}
.cabeca{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;
  margin-bottom:22px;flex-wrap:wrap}
.sub{color:var(--cinza);font-size:14px;margin:0}

/* formulario */
label{display:block;font-size:12px;font-weight:700;letter-spacing:.08em;
  text-transform:uppercase;color:var(--cinza);margin:14px 0 6px}
input[type=text],input[type=email],input[type=password],input[type=date],
select,textarea{width:100%;padding:11px 12px;border:1px solid var(--linha);
  border-radius:8px;font:inherit;background:var(--papel);color:var(--tinta)}
textarea{min-height:110px;resize:vertical}
input:focus,select:focus,textarea:focus{outline:2px solid var(--vinho-claro);
  border-color:var(--vinho)}
.botao{display:inline-flex;align-items:center;gap:8px;background:var(--vinho);
  color:#fff;border:0;border-radius:8px;padding:11px 20px;font:inherit;font-weight:600;
  cursor:pointer}
.botao:hover{background:var(--vinho-escuro);text-decoration:none;color:#fff}
.botao[disabled]{opacity:.5;cursor:progress}
.botao.fantasma{background:transparent;color:var(--vinho);border:1px solid var(--vinho)}
.botao.fantasma:hover{background:var(--vinho);color:#fff}
.botao.pequeno{padding:7px 13px;font-size:13px}
.linha-botoes{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}

/* etiquetas */
.eti{display:inline-block;font-size:11px;font-weight:700;letter-spacing:.07em;
  text-transform:uppercase;padding:3px 9px;border-radius:999px;border:1px solid var(--linha)}
.eti.vinho{background:var(--vinho);color:#fff;border-color:var(--vinho)}
.eti.ouro{background:var(--ouro);color:var(--preto);border-color:var(--ouro)}
.eti.ok{background:#E7F3EC;color:var(--ok);border-color:#BFE0CD}
.eti.alerta{background:#FBF1DF;color:var(--alerta);border-color:#EBD5A8}
.eti.erro{background:#F8E5E5;color:var(--erro);border-color:#E6BFBF}

/* escolhas */
.opcoes{display:flex;flex-wrap:wrap;gap:8px;margin-top:6px}
.opcao{border:1px solid var(--linha);border-radius:999px;padding:7px 14px;font-size:13px;
  cursor:pointer;background:var(--papel);user-select:none}
.opcao input{display:none}
.opcao.marcada{background:var(--vinho);color:#fff;border-color:var(--vinho)}

/* laudo */
.laudo{border-radius:var(--raio);padding:14px 16px;margin-top:16px;font-size:14px}
.laudo.aprovado{background:#EEF7F1;border:1px solid #BFE0CD}
.laudo.reprovado{background:#FCF0F0;border:1px solid #E6BFBF}
.laudo h4{margin:0 0 8px;font-size:14px}
.laudo ul{margin:8px 0 0;padding-left:18px}
.laudo li{margin-bottom:7px}
.laudo code{background:rgba(11,11,13,.06);padding:1px 5px;border-radius:4px;font-size:12px}

/* calendario */
.cal{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}
.cal .cab{font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;
  color:var(--cinza);text-align:center;padding:6px 0}
.dia{background:var(--papel);border:1px solid var(--linha);border-radius:8px;min-height:96px;
  padding:7px}
.dia.vazio{background:transparent;border:0}
.dia.hoje{border-color:var(--ouro);box-shadow:inset 0 0 0 1px var(--ouro)}
.dia b{font-size:12px;color:var(--cinza)}
.chip{display:block;font-size:11px;background:var(--creme);border-left:3px solid var(--vinho);
  border-radius:4px;padding:4px 6px;margin-top:5px;line-height:1.3}

/* saida */
.saida{white-space:pre-wrap;background:var(--papel);border:1px solid var(--linha);
  border-radius:8px;padding:14px;font-size:14px}
.slide{border:1px solid var(--linha);border-radius:8px;padding:12px;margin-bottom:9px;
  background:var(--papel)}
.slide b{display:block;font-family:"Bebas Neue",sans-serif;font-size:19px;letter-spacing:.01em}
.hash{color:var(--vinho);font-size:13px;word-spacing:6px}
.carregando{color:var(--cinza);font-size:14px}

/* painel de pensando */
.pensando{background:var(--papel);border:1px solid var(--linha);border-radius:var(--raio);
  padding:16px 18px;box-shadow:var(--sombra)}
.pensando-cab{display:flex;align-items:center;gap:10px;font-size:14px}
.pensando-cab b{font-weight:600}
.pensando .tempo{margin-left:auto;color:var(--cinza);font-size:12px;
  font-variant-numeric:tabular-nums}
.pensando .ponto{width:9px;height:9px;border-radius:50%;background:var(--vinho);
  animation:pulso 1.1s ease-in-out infinite;flex:0 0 auto}
@keyframes pulso{0%,100%{opacity:.25;transform:scale(.8)}50%{opacity:1;transform:scale(1.15)}}
.pensando .barra{height:5px;background:var(--linha);border-radius:999px;overflow:hidden;
  margin:12px 0 9px}
.pensando .barra i{display:block;height:100%;width:0;border-radius:999px;
  background:linear-gradient(90deg,var(--vinho),var(--ouro));
  transition:width .25s linear}
.pensando .etapa{color:var(--cinza);font-size:13px}
@media (prefers-reduced-motion:reduce){
  .pensando .ponto{animation:none;opacity:.8}
  .pensando .barra i{transition:none}
}
.erro-caixa{background:#F8E5E5;border:1px solid #E6BFBF;color:var(--erro);padding:11px 14px;
  border-radius:8px;margin:14px 0;font-size:14px}
.tabela{width:100%;border-collapse:collapse;font-size:14px}
.tabela th{text-align:left;font-size:11px;letter-spacing:.08em;text-transform:uppercase;
  color:var(--cinza);border-bottom:1px solid var(--linha);padding:8px 6px}
.tabela td{border-bottom:1px solid var(--linha);padding:10px 6px;vertical-align:top}
.numero{font-family:"Bebas Neue",sans-serif;font-size:38px;color:var(--vinho);line-height:1}
.rodape{border-top:1px solid var(--linha);padding:22px 0;color:var(--cinza);font-size:13px}

/* landing */
.capa{background:var(--preto);color:var(--creme);padding:70px 0 60px}
.capa h1{font-size:64px;color:var(--creme);max-width:15ch}
.capa p{max-width:56ch;color:#CFCBC4;font-size:17px}
.capa .fio{width:90px;height:4px;background:var(--ouro);margin-bottom:20px}
.preco{font-family:"Bebas Neue",sans-serif;font-size:52px;color:var(--vinho)}

/* medidor de uso */
.medidor{height:8px;background:var(--linha);border-radius:999px;overflow:hidden;margin:10px 0}
.medidor i{display:block;height:100%;background:linear-gradient(90deg,var(--vinho),var(--ouro));
  border-radius:999px}

/* galeria de artes */
.galeria{display:flex;gap:10px;flex-wrap:wrap;margin:12px 0}
.galeria img{width:132px;height:165px;object-fit:cover;border-radius:8px;
  border:1px solid var(--linha);background:var(--papel)}
.galeria a:hover img{outline:2px solid var(--vinho)}

/* botao e caixa de ajuda */
.ajuda-botao{position:fixed;right:22px;bottom:22px;z-index:40;border:0;cursor:pointer;
  border-radius:999px;padding:13px 22px;font:inherit;font-weight:600;color:#fff;
  background:var(--vinho);box-shadow:0 6px 20px rgba(0,0,0,.18)}
.ajuda-botao:hover{filter:brightness(.92)}
.ajuda-fundo{position:fixed;inset:0;z-index:50;background:rgba(12,12,14,.55);
  display:flex;align-items:center;justify-content:center;padding:20px}
.ajuda-caixa{background:var(--papel);border-radius:14px;padding:26px;max-width:520px;
  width:100%;max-height:90vh;overflow:auto}

/* atributo hidden vence qualquer display do autor */
[hidden]{display:none !important}

/* fotos do post */
.fotos{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin:12px 0}
.foto-item{position:relative;width:96px}
.foto-item img{width:96px;height:120px;object-fit:cover;border-radius:8px;
  border:1px solid var(--linha);display:block}
.foto-item span{display:block;font-size:11px;color:var(--cinza);text-align:center;
  margin-top:4px}
.estilo-arte{width:auto;padding:7px 11px;font-size:13.5px;border-radius:8px}
.escolha.marcada{outline:2px solid var(--vinho);outline-offset:-2px}
