/* editorial.css — template "editorial" do kit Solutattoo: tema claro de revista por cima do molde.
   Osso, tinta e cinza quente, um acento fosco (a cor `cores.acento` do estudio.json). Herói dividido (texto à esquerda, foto alta à direita),
   navegação lateral fixa em telas largas, portfólio em tira horizontal, técnicas em tabela, projetos em lista com número grande,
   bio em duas colunas com foto pequena, perguntas em acordeão fino. Sem 3D, brilho, cursor, letreiro ou botão magnético.
   Tipografia: Instrument Serif (títulos) + Inter (texto) + IBM Plex Mono (rótulos e números). Carregada DEPOIS de site.css, reserva.css e efeitos.css. */
:root {
  --display: "Instrument Serif", Georgia, "Times New Roman", serif;
  --cond: "IBM Plex Mono", ui-monospace, "Cascadia Mono", Consolas, monospace;
  --body: "Inter", system-ui, "Segoe UI", Arial, sans-serif;
  --goth: "Instrument Serif", Georgia, serif;
  --bg: #f4f1ea;
  --bg-2: #ece7dd;
  --surface: #fbf9f4;
  --surface-2: #e8e2d6;
  --line: rgba(20, 18, 16, .16);
  --fg: #141210;
  --muted: #6a645b;
  --accent-ink: #f4f1ea;
  --accent-texto: var(--accent);
  --wa: #1f9d55;
  --wa-ink: #ffffff;
  --cor1: var(--fg); --cor2: var(--fg); --cor3: var(--fg);
  --r: 0px;
  --max: 1180px;
  color-scheme: light;
}
html, body { background: var(--bg); color: var(--fg); }
body { font-size: 16.5px; line-height: 1.6; }
::selection { background: var(--fg); color: var(--bg); }
:focus-visible { outline: 2px solid var(--accent); outline-offset: 2px; }

/* tipografia */
.display { font-family: var(--display); font-weight: 400; text-transform: none; letter-spacing: -.012em; line-height: 1.02; }
h2.display { font-size: clamp(38px, 5.2vw, 68px); }
h3 { font-family: var(--display); font-weight: 400; text-transform: none; letter-spacing: 0; font-size: 26px; line-height: 1.1; }
.eyebrow { font-family: var(--cond); font-weight: 500; letter-spacing: .08em; font-size: 12px; color: var(--muted); text-transform: uppercase; }
.eyebrow::before { width: 28px; height: 1px; background: var(--accent); }
.lead { color: var(--muted); font-size: clamp(16px, 1.25vw, 17.5px); line-height: 1.6; }
.goth { font-family: var(--display); font-style: italic; font-weight: 400; letter-spacing: 0; text-transform: none; }
em.goth { color: var(--accent); }
.cor { background: none !important; color: inherit !important; -webkit-text-fill-color: currentColor; }
.cabeca { margin-bottom: clamp(32px, 5vw, 56px); }
.secao { padding-block: clamp(72px, 10vw, 136px); }
.secao--tinta { background: var(--bg); }
.secao--papel { background: var(--bg-2); border-block: 1px solid var(--line); }
.fundo-sec { display: none !important; }

/* botões: retos, tinta sobre osso */
.btn { font-family: var(--body); font-weight: 500; letter-spacing: 0; text-transform: none; font-size: 14.5px; border-radius: 0; padding: 14px 22px; transition: background .2s ease, color .2s ease, border-color .2s ease; will-change: auto; }
.btn--acento { background: var(--fg); color: var(--bg); }
.btn--acento:hover { background: var(--accent); color: var(--bg); }
.btn--claro { background: var(--fg); color: var(--bg); }
.btn--claro:hover { background: var(--accent); color: var(--bg); }
.btn--vazado { border: 1px solid var(--fg); color: var(--fg); background: transparent; }
.btn--vazado:hover { background: var(--fg); color: var(--bg); border-color: var(--fg); }
.btn--wa { background: var(--wa); color: var(--wa-ink); }
.btn--wa:hover { background: #22b061; }
.btn--mini { padding: 12px 16px; }

/* abertura: só a logo, meio segundo */
#preloader { background: var(--bg); }
#preloader .pre { gap: 14px; }
#preloader .pre__anel, #preloader .pre__linha, #preloader .pre__sub { display: none; }
#preloader .pre__selo { width: 76px; }
#preloader .pre__logo { box-shadow: none; border-radius: 50%; }
#preloader .pre__marca { font-family: var(--display); font-size: 22px; letter-spacing: 0; text-transform: none; font-weight: 400; filter: none; color: var(--fg); }
#preloader .pre__marca em, #preloader .pre__marca .c, #preloader .pre__marca em .c { background: none; color: var(--accent); -webkit-text-fill-color: var(--accent); font-style: italic; }

/* menu: barra fina em cima; em tela larga vira trilho lateral */
.nav { background: var(--bg); border-bottom: 1px solid var(--line); }
.nav.is-solida { background: rgba(244, 241, 234, .94); backdrop-filter: blur(8px); box-shadow: none; }
.nav__in { height: 64px; }
.marca__logo { border-radius: 50%; box-shadow: none; transition: none; }
.marca:hover .marca__logo { transform: none; }
.marca__nome { font-family: var(--display); font-size: 22px; letter-spacing: 0; text-transform: none; font-weight: 400; }
.marca__nome em { color: var(--accent); font-style: italic; font-weight: 400; }
.nav__links a { font-family: var(--cond); font-size: 12px; letter-spacing: .06em; text-transform: uppercase; font-weight: 500; opacity: .75; }
.nav__links a::after { height: 1px; background: var(--accent); }
.nav__links a:hover, .nav__links a.is-ativo { opacity: 1; }
@media (min-width: 1180px) {
  body { padding-left: 216px; }
  .nav { top: 0; bottom: 0; right: auto; width: 216px; border-right: 1px solid var(--line); border-bottom: 0; background: var(--bg); transition: none; }
  .nav.is-solida { background: var(--bg); backdrop-filter: none; }
  .nav.is-oculta { transform: none; }
  .nav__in { flex-direction: column; align-items: flex-start; justify-content: flex-start; height: 100%; padding: 28px 24px; gap: 40px; }
  .marca { flex-direction: column; align-items: flex-start; gap: 14px; }
  .nav__links { flex-direction: column; align-items: flex-start; gap: 14px; counter-reset: sec; }
  .nav__links li { counter-increment: sec; }
  .nav__links a { display: flex; gap: 10px; align-items: baseline; padding: 2px 0; }
  .nav__links a::before { content: counter(sec, decimal-leading-zero); font-size: 10px; color: var(--accent); }
  .nav__links a::after { display: none; }
  .nav__cta { display: inline-flex; margin-top: auto; }
}

/* herói dividido: texto à esquerda, foto alta à direita */
.heroi--edit { min-height: 100svh; display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); align-items: stretch; padding: 0; overflow: hidden; background: var(--bg); }
.heroi--edit .heroi__veu { display: none; }
.heroi--edit .heroi__in { grid-column: 1; align-self: end; display: grid; gap: 22px; max-width: none; margin: 0; padding: 140px var(--gutter) clamp(40px, 6vw, 72px) var(--gutter); container-type: inline-size; }
.heroi__foto { grid-column: 2; position: relative; min-height: 100svh; overflow: hidden; border-left: 1px solid var(--line); background: var(--bg-2); }
.heroi__foto img { width: 100%; height: 100%; object-fit: cover; object-position: center top; display: block; opacity: 0; animation: ed-foto .9s ease-out .15s forwards; }
@keyframes ed-foto { to { opacity: 1; } }
html.sem-anim .heroi__foto img { opacity: 1; animation: none; }
.heroi__status { border-radius: 0; border: 0; border-bottom: 1px solid var(--line); background: none; backdrop-filter: none; font-family: var(--cond); font-size: 11.5px; letter-spacing: .06em; font-weight: 500; color: var(--muted); padding: 0 0 10px; text-transform: uppercase; }
.heroi__status i { width: 6px; height: 6px; background: var(--accent); box-shadow: none; animation: none; border-radius: 50%; }
/* o título é dividido em letras pelo SplitText (sem agrupar palavras): cada linha fica sem quebra e o corpo segue a largura da coluna (cqw) */
.heroi__titulo { font-size: clamp(40px, 15cqw, 104px); line-height: .98; letter-spacing: -.015em; max-width: none; font-weight: 400; }
.heroi__titulo .l { display: block; white-space: nowrap; }
.heroi__titulo .l2 { font-family: var(--display); font-style: italic; font-weight: 400; font-size: 1em; line-height: .98; letter-spacing: -.01em; margin: 0; color: var(--accent); text-shadow: none; }
.heroi__titulo .l3 { -webkit-text-stroke: 0; color: var(--fg); }
.heroi__tecs li { border-radius: 0; background: none; backdrop-filter: none; border: 1px solid var(--line); font-family: var(--cond); font-size: 11px; font-weight: 500; letter-spacing: .04em; padding: 6px 10px; color: var(--muted); text-transform: none; }
.heroi__tecs li.is-cor { border: 1px solid var(--line); background: none; }
.heroi__sub { grid-template-columns: 1fr; }
.heroi__sub p { max-width: 46ch; color: var(--muted); font-size: clamp(16px, 1.25vw, 17.5px); line-height: 1.6; }
.heroi__acoes { gap: 10px; }
@media (max-width: 900px) {
  .heroi--edit { grid-template-columns: 1fr; min-height: 0; }
  .heroi__foto { grid-column: 1; grid-row: 1; min-height: 0; aspect-ratio: 1 / 1; max-height: 52svh; border-left: 0; border-bottom: 1px solid var(--line); margin-top: 64px; }
  .heroi--edit .heroi__in { grid-column: 1; grid-row: 2; padding-top: 32px; padding-bottom: 96px; }
}

/* assinaturas: três colunas abertas */
.pilares { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 40px; }
@media (max-width: 900px) { .pilares { grid-template-columns: 1fr; gap: 28px; } }
.pilar { background: none; border: 0; border-top: 1px solid var(--line); border-radius: 0; padding: 22px 0 0; gap: 14px; transform: none !important; }
.pilar__n { position: static; order: -1; font-family: var(--cond); font-size: 12px; letter-spacing: .06em; color: var(--accent); }
.pilar__img { aspect-ratio: 3 / 4; border-radius: 0; }
.pilar__img img { transform: none; transition: transform .7s ease; }
.pilar:hover .pilar__img img { transform: scale(1.025); }
.pilar__img::after { background: none; }
.pilar h3 { font-size: 30px; }
.pilar p { font-size: 15.5px; color: var(--muted); }
.pilar__meta span { background: none; border: 1px solid var(--line); border-radius: 0; font-family: var(--cond); letter-spacing: .04em; font-size: 11px; font-weight: 500; color: var(--muted); text-transform: none; }
.pilar__meta span.alvo { border-color: var(--accent); color: var(--accent); }

/* na pele de quem você conhece: faixa de revista */
.conhecidos { background: var(--bg-2); border-block: 1px solid var(--line); }
.conhecidos .cabeca .lead { max-width: 52ch; }
.conhecidos__lista { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0 32px; border-top: 1px solid var(--line); }
.conhecidos__lista li { padding: 24px 0 22px; border-bottom: 1px solid var(--line); display: grid; gap: 6px; }
.conhecidos__lista b { font-family: var(--display); font-weight: 400; font-size: clamp(30px, 3.6vw, 46px); letter-spacing: -.01em; line-height: 1; }
.conhecidos__lista span { color: var(--muted); font-family: var(--cond); font-size: 12.5px; }
.conhecidos__cred { margin: 22px 0 0; color: var(--muted); font-family: var(--cond); font-weight: 500; font-size: 12px; letter-spacing: .04em; text-transform: uppercase; display: flex; flex-wrap: wrap; gap: 8px 14px; }
.conhecidos__cred span + span::before { content: "·"; margin-right: 14px; color: var(--accent); }
@media (max-width: 760px) { .conhecidos__lista { grid-template-columns: 1fr; } .conhecidos__lista li { padding: 16px 0; } }

/* portfólio em tira horizontal */
.filtro { border-radius: 0; font-family: var(--cond); font-size: 12px; letter-spacing: .04em; text-transform: uppercase; font-weight: 500; }
.filtro.is-ativo, .filtro[data-filtro="colorido"].is-ativo { background: var(--fg); color: var(--bg); border-color: var(--fg); }
.grade { display: flex; gap: 16px; overflow-x: auto; overscroll-behavior-x: contain; scroll-snap-type: x mandatory; padding: 4px var(--gutter) 18px; margin-inline: calc(-1 * var(--gutter)); scrollbar-width: thin; scrollbar-color: var(--accent) transparent; }
.grade::-webkit-scrollbar { height: 4px; }
.grade::-webkit-scrollbar-thumb { background: var(--accent); }
.grade::-webkit-scrollbar-track { background: var(--line); }
.obra { flex: 0 0 clamp(240px, 26vw, 340px); aspect-ratio: 3 / 4; scroll-snap-align: start; border-radius: 0; border: 1px solid var(--line); background: var(--surface-2); }
.obra.is-oculta { display: none; }
.obra__veu { background: linear-gradient(180deg, transparent 52%, rgba(20, 18, 16, .78)); opacity: 1; }
.obra__legenda b { color: #fff; font-family: var(--display); font-weight: 400; font-size: 21px; text-transform: none; letter-spacing: 0; }
.obra__legenda span { color: rgba(255, 255, 255, .78); font-family: var(--cond); letter-spacing: .04em; font-size: 11px; }
.obra__tag, .obra__tag--cor { background: rgba(244, 241, 234, .92); color: var(--fg); border: 0; border-radius: 0; font-family: var(--cond); font-weight: 500; letter-spacing: .04em; }
.grade__nota { font-family: var(--cond); color: var(--muted); font-size: 12px; }
.lightbox__in { border-radius: 0; }
.lightbox__info h3 { font-family: var(--display); font-size: 28px; font-weight: 400; text-transform: none; letter-spacing: 0; }

/* técnicas: tabela de uma linha por técnica, foto fixa ao lado */
.tecnicas { background: var(--bg-2); border-block: 1px solid var(--line); }
.tec__pin { min-height: 0; padding-block: clamp(72px, 10vw, 128px); }
.tec__cabeca h2 { font-size: clamp(38px, 5.2vw, 68px); }
.tec__palco { grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); gap: clamp(24px, 5vw, 72px); align-items: start; }
.tec__foto { border-radius: 0; border: 1px solid var(--line); box-shadow: none; aspect-ratio: 3 / 4; max-height: none; position: sticky; top: 96px; background: var(--surface-2); }
.tec__foto::after { background: linear-gradient(180deg, transparent 70%, rgba(20, 18, 16, .55)); }
.tec__foto-tag { font-family: var(--cond); font-weight: 500; letter-spacing: .04em; font-size: 11px; color: #fff; text-transform: none; }
.tec__nivel { font-family: var(--cond); color: var(--accent); font-size: 12px; letter-spacing: .06em; }
.tec__rotulo { font-family: var(--cond); letter-spacing: .06em; font-size: 11px; }
.tec__nome, .tec__nome.is-cor { background: none; color: var(--fg); -webkit-text-fill-color: var(--fg); filter: none; font-size: clamp(40px, 5.6vw, 76px); letter-spacing: -.01em; font-weight: 400; }
.tec__sub { color: var(--accent); font-family: var(--cond); letter-spacing: .06em; font-size: 12px; font-weight: 500; }
.tec__desc { color: var(--muted); }
.tec__regua { display: grid; grid-template-columns: 1fr; gap: 0; padding-top: 0; border-top: 1px solid var(--line); }
.tec__regua::before, .tec__regua::after { display: none; }
.tec__tick { display: grid; grid-template-columns: minmax(0, 1fr) auto; justify-items: start; align-items: baseline; text-align: left; gap: 12px; padding: 12px 0; border-bottom: 1px solid var(--line); color: var(--muted); width: 100%; cursor: pointer; }
.tec__tick::before { display: none; }
.tec__tick b { font-family: var(--body); font-weight: 500; text-transform: none; letter-spacing: 0; font-size: 15px; line-height: 1.3; }
.tec__tick span { font-family: var(--cond); font-size: 13px; letter-spacing: 0; opacity: 1; justify-self: end; }
.tec__tick.is-ativo { color: var(--fg); }
.tec__tick.is-ativo b::before { content: "→ "; color: var(--accent); }
.tec__calc { border-radius: 0; background: var(--surface); border: 1px solid var(--line); }
.tec__calc-topo { font-family: var(--cond); font-weight: 500; letter-spacing: .04em; font-size: 11.5px; text-transform: none; }
.tec__delta { color: var(--accent); }
.tecp { border-radius: 0; background: none; font-family: var(--cond); text-transform: none; letter-spacing: 0; font-size: 12.5px; font-weight: 500; }
.tecp.is-sel { background: var(--fg); color: var(--bg); border-color: var(--fg); }
.tec__valor-n { font-family: var(--display); font-weight: 400; letter-spacing: -.01em; }
.tec__valor-sinal { font-family: var(--cond); letter-spacing: 0; font-weight: 500; text-transform: none; font-size: 13px; }
.tec__aviso { border-radius: 0; }
/* no celular a foto deixa de ser fixa, mas continua `relative`: a imagem dentro dela é absoluta e precisa desse contêiner */
@media (max-width: 900px) {
  .tec__palco { grid-template-columns: 1fr; }   /* a regra de 2 colunas acima venceria a do molde para celular (mesma especificidade, arquivo posterior) */
  .tec__foto { position: relative; top: auto; width: min(100%, 320px); aspect-ratio: 3 / 4; max-height: none; height: auto; justify-self: start; }
}

/* projetos: lista de revista, número grande, valor à direita */
.promos { display: grid; grid-template-columns: 1fr; gap: 0; border-top: 1px solid var(--line); }
.promo { display: grid; grid-template-columns: 72px minmax(0, 1.25fr) minmax(0, 1fr); grid-template-areas: "num cat preco" "num titulo preco" "num desc base" "num sess tecs" "num cond chips" "num acoes acoes"; gap: 10px 32px; align-items: start; padding: 34px 0; border: 0; border-bottom: 1px solid var(--line); border-radius: 0; background: none; transform: none !important; transition: none; }
.promo:hover { border-color: var(--line); }
.promo--destaque { grid-column: auto; background: none; border-color: var(--line); }
.promo--destaque .promo__grade, .promo--destaque .promo__grade > div { display: contents !important; }
.promo__num { grid-area: num; position: static; font-family: var(--display); font-size: clamp(34px, 4vw, 56px); color: var(--accent); line-height: 1; letter-spacing: 0; }
.promo__cat { grid-area: cat; font-family: var(--cond); color: var(--muted); font-weight: 500; font-size: 11.5px; letter-spacing: .06em; }
.promo h3 { grid-area: titulo; font-size: clamp(28px, 3.2vw, 40px); margin: 0; }
.promo--destaque h3 { font-size: clamp(28px, 3.2vw, 40px); }
.promo__desc { grid-area: desc; margin: 0; color: var(--muted); max-width: 52ch; }
.promo__sess { grid-area: sess; border-left: 1px solid var(--accent); font-size: 14px; }
.promo__sess b { font-family: var(--cond); font-weight: 500; letter-spacing: .04em; font-size: 11px; text-transform: uppercase; color: var(--muted); }
.promo__preco { grid-area: preco; justify-content: flex-end; align-items: baseline; text-align: right; gap: 6px 14px; }
.promo__por { font-family: var(--display); font-size: clamp(34px, 3.6vw, 48px); font-weight: 400; letter-spacing: -.01em; }
.promo__por small, .promo__econ, .promo__de { display: none; }
.promo__parc { flex-basis: 100%; font-family: var(--cond); font-weight: 500; font-size: 12px; letter-spacing: 0; text-transform: none; color: var(--muted); }
.promo__base { grid-area: base; text-align: right; font-family: var(--cond); font-weight: 500; letter-spacing: 0; font-size: 11.5px; text-transform: none; color: var(--muted); }
.promo__base b { color: var(--fg); }
.promo__tecs { grid-area: tecs; justify-content: flex-end; }
.ptec { border-radius: 0; background: none; font-family: var(--cond); letter-spacing: 0; font-size: 12px; text-transform: none; }
.ptec:hover, .ptec.is-base { border-color: var(--fg); }
.ptec.is-base::after { color: var(--accent); }
.promo__cond { grid-area: cond; }
.promo__cond li::before { background: var(--accent); width: 5px; height: 5px; top: 9px; transform: none; border-radius: 50%; }
.promo .chips { grid-area: chips; justify-content: flex-end; align-content: start; }
.chip { border-radius: 0; background: none; border: 1px solid var(--line); font-family: var(--cond); font-weight: 500; font-size: 11px; letter-spacing: .04em; text-transform: none; }
.chip--alvo { border-color: var(--accent); color: var(--accent); }
.promo__acoes { grid-area: acoes; }
@media (max-width: 860px) {
  .promo { grid-template-columns: 1fr; grid-template-areas: "num" "cat" "titulo" "desc" "preco" "base" "tecs" "sess" "cond" "chips" "acoes"; gap: 12px; padding: 28px 0; }
  .promo__preco, .promo__base { text-align: left; justify-content: flex-start; }
  .promo__tecs, .promo .chips { justify-content: flex-start; }
  .promo__num { font-size: 30px; }
}
.regras { grid-template-columns: 1fr 1fr; gap: 32px; margin-top: 40px; }
@media (max-width: 760px) { .regras { grid-template-columns: 1fr; } }
.regra { background: none; border: 0; border-top: 1px solid var(--line); border-radius: 0; padding: 20px 0 0; }
.regra h3 { font-size: 22px; }

/* diferencial */
.dif__cartao { background: var(--surface); border: 1px solid var(--line); border-radius: 0; box-shadow: none; transform: none !important; }
.dif__cartao::after { display: none; }
.dif__demo { transform: none !important; }
.dif__cod { font-family: var(--cond); }

/* como marcar: lista numerada em coluna */
.processo { grid-template-columns: 1fr; gap: 0; border-top: 1px solid var(--line); }
.processo__linha { display: none; }
.passo { grid-template-columns: 120px minmax(0, 1fr); grid-template-areas: "n titulo" "n texto"; gap: 6px 24px; padding: 26px 0; border-bottom: 1px solid var(--line); align-items: start; }
.passo__n { grid-area: n; width: auto; height: auto; border: 0; border-radius: 0; background: none; display: block; font-family: var(--display); font-size: clamp(44px, 5vw, 72px); color: var(--accent); line-height: 1; }
.passo h3 { grid-area: titulo; font-size: 28px; }
.passo p { grid-area: texto; max-width: 60ch; }
.passo b { font-weight: 600; }
@media (max-width: 600px) { .passo { grid-template-columns: 56px minmax(0, 1fr); gap: 4px 16px; } .passo__n { font-size: 40px; } .passo h3 { font-size: 24px; } }

/* sobre: página de revista */
.sobre { grid-template-columns: minmax(0, 1fr) 300px; gap: clamp(28px, 5vw, 72px); align-items: start; }
.sobre__texto { order: 1; gap: 18px; }
.sobre__mosaico { order: 2; display: block; perspective: none; position: sticky; top: 96px; }
.sobre__mosaico img { border-radius: 0; border: 1px solid var(--line); aspect-ratio: 3 / 4; margin: 0 !important; }
.sobre__mosaico img:not(:first-child) { display: none; }
#sobreTitulo { font-size: clamp(44px, 6vw, 80px); }
.sobre__paragrafos { columns: 2; column-gap: 36px; font-size: 16px; }
.sobre__paragrafos p { margin: 0 0 14px; break-inside: avoid; color: var(--fg); }
.sobre__texto p { font-size: 16px; }
.sobre__fatos { margin: 6px 0 0; color: var(--muted); font-family: var(--cond); font-weight: 500; font-size: 12px; letter-spacing: .04em; text-transform: uppercase; }
.sobre__numeros { display: none; }
.sobre__local { color: var(--muted); font-family: var(--cond); font-size: 12.5px; }
@media (max-width: 900px) { .sobre { grid-template-columns: 1fr; } .sobre__mosaico { position: static; max-width: 260px; order: 0; } .sobre__paragrafos { columns: 1; } }

/* dúvidas: acordeão fino */
.faq { gap: 0; }
.faq details { border: 0; border-top: 1px solid var(--line); border-radius: 0; background: none; }
.faq details:last-child { border-bottom: 1px solid var(--line); }
.faq summary { font-family: var(--display); font-weight: 400; text-transform: none; letter-spacing: 0; font-size: 22px; padding: 18px 0; }
.faq summary::after { font-family: var(--cond); font-weight: 400; color: var(--accent); font-size: 22px; }
.faq details p { padding: 0 0 18px; font-size: 15.5px; }

/* chamada final */
.cta-final { background: var(--bg); border-top: 1px solid var(--line); }
.cta-final h2 { font-size: clamp(44px, 8vw, 110px); letter-spacing: -.015em; font-weight: 400; }
.cta-final h2 em { color: var(--accent); font-style: italic; }
.cta__logo { animation: none; box-shadow: none; width: 56px; height: 56px; border-radius: 50%; }
.cta-final .tel { font-family: var(--cond); letter-spacing: 0; font-size: 12.5px; font-weight: 500; text-transform: none; }
.cta-final .tel b { font-size: 12.5px; letter-spacing: 0; }

/* rodapé: miúdo, mono; crédito da GD bem discreto, mas clicável */
footer { font-family: var(--cond); text-transform: none; letter-spacing: 0; font-size: 12px; background: var(--bg-2); border-top: 1px solid var(--line); padding-block: 32px calc(32px + env(safe-area-inset-bottom, 0px)); }
footer .wrap { gap: 10px 24px; }
footer a { color: var(--fg); }
footer a:hover { color: var(--accent); }
.rodape__marca img { border-radius: 50%; }
.rodape__marca .goth { font-family: var(--display); font-style: normal; font-size: 18px; letter-spacing: 0; text-transform: none; color: var(--fg); }
.rodape__contato { color: var(--muted); }
.rodape__contato a { color: var(--muted); text-decoration: underline; text-underline-offset: 3px; }
.rodape__inkbridge { flex-basis: 100%; color: var(--muted); font-size: 12px; }
.rodape__inkbridge a { color: var(--fg); text-decoration: underline; text-underline-offset: 3px; }
footer .rodape__privacidade summary { font-family: var(--cond); text-transform: none; letter-spacing: 0; font-weight: 500; font-size: 12px; }
footer .rodape__privacidade p, footer .rodape__privacidade li { font-family: var(--body); }
footer .gd { flex-basis: 100%; text-align: right; font-size: 10.5px; color: rgba(20, 18, 16, .38); letter-spacing: 0; margin-top: 4px; }
footer .gd a { color: rgba(20, 18, 16, .55); text-decoration: none; }
footer .gd a:hover { color: var(--accent); }

/* assistente de reserva e consulta: cantos retos, tema claro */
.reserva__in { border-radius: 0; }
.res__nota, .res__lead { color: var(--muted); }

/* sem os efeitos do molde que o template dispensa (segurança, caso o JS antigo volte) */
.cursor, #tinta, .wa-flutuante, .faixa, .vitrine, .heroi__3d, .heroi__estatico, .heroi__grao, .heroi__rolar, .heroi__dados, .progresso { display: none !important; }
.has-brilho::after { display: none !important; }
.btn--mag { will-change: auto; }
