/* ==========================================================================
   Furadouro SPA — Versão 3.0 · base do desenho «Consulta guiada»
   Tipos de letra autohospedados, cores, raios e movimento comuns ao site
   público e ao painel. Carregar ANTES de publico.css / admin-v2.css.
   Marca (vinculativa): pinho #2b4a3d e dourado #d9a84e.
   ========================================================================== */

@font-face {
  font-family: 'Instrument Serif';
  src: url('fonts/InstrumentSerif-Regular.woff2') format('woff2');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Instrument Serif';
  src: url('fonts/InstrumentSerif-Italic.woff2') format('woff2');
  font-weight: 400;
  font-style: italic;
  font-display: swap;
}
@font-face {
  font-family: 'Hanken Grotesk';
  src: url('fonts/HankenGrotesk-Variable.woff2') format('woff2');
  font-weight: 100 900;
  font-style: normal;
  font-display: swap;
}

/* Fallbacks com métricas ajustadas (medidos pelo Fontes e Templates no Chrome/Windows):
   evitam o salto do título quando as fontes web carregam. São aproximações. */
@font-face { font-family: 'Instrument Serif Fallback'; src: local('Georgia'); size-adjust: 76.33%; ascent-override: 129.7%; descent-override: 40.61%; line-gap-override: 0%; }
@font-face { font-family: 'Instrument Serif Fallback'; src: local('Georgia Italic'), local('Georgia-Italic'); font-style: italic; size-adjust: 79.06%; ascent-override: 125.22%; descent-override: 39.21%; line-gap-override: 0%; }
@font-face { font-family: 'Hanken Fallback'; src: local('Arial'); size-adjust: 99.62%; ascent-override: 100.39%; descent-override: 30.62%; line-gap-override: 0%; font-weight: 100 599; }
@font-face { font-family: 'Hanken Fallback'; src: local('Arial Bold'), local('Arial-BoldMT'); size-adjust: 94.32%; ascent-override: 106.03%; descent-override: 32.34%; line-gap-override: 0%; font-weight: 600 900; }

:root {
  /* superfícies: papel quente, pergaminho, e a tinta da casa */
  --papel: #efe7da;
  --papel-fundo: #e7dec9;
  --pergaminho: #f8f3e8;
  --pergaminho-2: #f3ecdd;
  --linha-solida: #d9ccb4;
  --linha-forte: #bfae8a;
  --tinta: #1f2b26;
  --tinta-suave: #556058;
  --pinho: #2b4a3d;
  --pinho-escuro: #1f372d;
  --salva: #7c9a8c;
  --salva-clara: #dfe7de;
  --ouro: #d9a84e;
  --ouro-claro: #ecd49b;
  --ouro-tx: #85601f;
  --coral: #b4562f;
  --coral-fundo: #f3ddd2;
  --verde-ok: #2f6b48;

  --serif: 'Instrument Serif', 'Instrument Serif Fallback', 'Iowan Old Style', 'Palatino Linotype', Georgia, serif;
  --sans: 'Hanken Grotesk', 'Hanken Fallback', system-ui, -apple-system, 'Segoe UI', Arial, sans-serif;

  --raio-pilula: 999px;
  --raio-cartao: 22px;
  --raio-campo: 14px;
  --ease: cubic-bezier(0.32, 0.72, 0, 1);
  --ease-out: cubic-bezier(0.16, 1, 0.3, 1);
  --sombra-resumo: 0 1px 2px rgba(31, 55, 45, 0.05), 0 24px 48px -28px rgba(31, 55, 45, 0.38);
}

/* o que o browser desenha por omissão também pertence ao desenho */
::selection { background: var(--ouro-claro); color: var(--tinta); }
html { scrollbar-color: var(--linha-forte) transparent; }
input, textarea, select { caret-color: var(--pinho); accent-color: var(--pinho); }
a { text-underline-offset: 3px; text-decoration-thickness: 1px; }
.nums, .tabular { font-variant-numeric: lining-nums tabular-nums; }

/* ícones desenhados (máscara em currentColor): seta, esquerda, fechar, visto */
.ico-seta, .ico-x, .ico-visto {
  display: inline-block;
  width: 1.15em;
  height: 1.15em;
  vertical-align: -0.2em;
  background-color: currentColor;
  -webkit-mask: var(--ico) center / contain no-repeat;
  mask: var(--ico) center / contain no-repeat;
}
.ico-seta { --ico: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14M13 6l6 6-6 6'/%3E%3C/svg%3E"); }
.ico-seta.ico-esq { transform: scaleX(-1); }
.ico-x { --ico: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round'%3E%3Cpath d='M6 6l12 12M18 6 6 18'/%3E%3C/svg%3E"); }
.ico-visto { --ico: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E"); }

/* logótipo (assets/logo/*): símbolo e nome em PNG com transparência */
.logo-marca, .logo-nome { display: block; height: auto; }
