/* Otimiza — mesmo tipo de layout do site Agenda do Forró SP (v4), com as cores da Otimiza.
   Topo fixo com linha de menu, menu em tela cheia, cartões com borda grossa, botões em pílula,
   seções numeradas, rodapé grande e modo escuro. */
:root{
  --tinta:#181614;
  --tinta-2:#4a4540;
  --tinta-3:#6b655e;
  --marinho:#231f1d;
  --marinho-2:#2f2a27;
  --destaque:#e2372b;
  --destaque-hover:#f0564a;
  --destaque-claro:#f58278;
  --destaque-texto:#b4261c;
  --destaque-suave:#fbe3e0;
  --botao-bg:#c62d21;
  --botao-ink:#ffffff;
  --papel:#ffffff;
  --areia:#f7f3ee;
  --papel-3:#ece6dd;
  --linha:#e7e2da;
  --linha-forte:#d4cdc2;
  --ok:#1e7f4f; --ok-suave:#e3f4ea; --alerta:#b3261e; --alerta-suave:#fce8e6;
  --sombra:0 24px 48px -24px rgba(24,22,20,.28);
  --f-display:"Bricolage Grotesque","Inter",system-ui,sans-serif;
  --f-texto:"Inter",system-ui,-apple-system,"Segoe UI",sans-serif;
  --largura:1180px;
  --leitura:760px;
  --gutter:clamp(1.25rem,3.2vw,3rem);
  --raio:14px;
  --raio-sm:8px;
  color-scheme:light;
}
:root[data-tema="escuro"]{
  --tinta:#f7f3ee; --tinta-2:#cfc8bf; --tinta-3:#a8a198;
  --marinho:#171412; --marinho-2:#231f1d;
  --destaque:#f0564a; --destaque-hover:#f58278; --destaque-claro:#f8a39b; --destaque-texto:#f58278; --destaque-suave:rgba(240,86,74,.16);
  --botao-bg:#f0564a; --botao-ink:#1a0a08;
  --papel:#1a1715; --areia:#221e1b; --papel-3:#2b2623;
  --linha:rgba(247,243,238,.14); --linha-forte:rgba(247,243,238,.32);
  --ok:#6fd39c; --ok-suave:#15301f; --alerta:#ff8a80; --alerta-suave:#3a1714;
  --sombra:0 24px 48px -24px rgba(0,0,0,.6);
  color-scheme:dark;
}
@media (prefers-color-scheme:dark){
  :root:not([data-tema="claro"]){
    --tinta:#f7f3ee; --tinta-2:#cfc8bf; --tinta-3:#a8a198;
    --marinho:#171412; --marinho-2:#231f1d;
    --destaque:#f0564a; --destaque-hover:#f58278; --destaque-claro:#f8a39b; --destaque-texto:#f58278; --destaque-suave:rgba(240,86,74,.16);
    --botao-bg:#f0564a; --botao-ink:#1a0a08;
    --papel:#1a1715; --areia:#221e1b; --papel-3:#2b2623;
    --linha:rgba(247,243,238,.14); --linha-forte:rgba(247,243,238,.32);
    --ok:#6fd39c; --ok-suave:#15301f; --alerta:#ff8a80; --alerta-suave:#3a1714;
    --sombra:0 24px 48px -24px rgba(0,0,0,.6);
    color-scheme:dark;
  }
}

*,*::before,*::after{ box-sizing:border-box; }
html{ -webkit-text-size-adjust:100%; scroll-padding-top:120px; scroll-behavior:smooth; }
body{
  margin:0; background:var(--papel); color:var(--tinta);
  font-family:var(--f-texto); font-size:1.125rem; line-height:1.6;
  -webkit-font-smoothing:antialiased; -moz-osx-font-smoothing:grayscale;
}
img{ max-width:100%; display:block; }
h1,h2,h3,h4,p,ul,ol,dl,dd,figure,blockquote{ margin:0; }
ul,ol{ padding:0; }
a{ color:inherit; }
button{ font:inherit; color:inherit; }
[hidden]{ display:none !important; }
::selection{ background:var(--destaque); color:#fff; }
:focus-visible{ outline:3px solid var(--destaque); outline-offset:3px; }
.so-leitor{ position:absolute !important; width:1px; height:1px; overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap; }
.pular{ position:fixed; left:12px; top:-60px; z-index:200; background:var(--tinta); color:var(--papel); padding:10px 16px; border-radius:var(--raio-sm); text-decoration:none; font-weight:600; transition:top .15s; }
.pular:focus{ top:12px; }
.ico{ width:1.1em; height:1.1em; flex:none; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
.wrap{ max-width:var(--largura); margin:0 auto; padding:0 var(--gutter); }
.wrap-leitura{ max-width:calc(var(--leitura) + 2 * var(--gutter)); margin:0 auto; padding:0 var(--gutter); }
.estreito{ max-width:var(--leitura); margin:0 auto; }

/* ---------- tipografia ---------- */
.display{ font-family:var(--f-display); font-weight:800; letter-spacing:-.02em; line-height:1.04; }
.display em,.titulo em,h1 em{ font-style:normal; color:var(--destaque-texto); }
h1,h2,h3{ font-family:var(--f-display); font-weight:800; line-height:1.1; letter-spacing:-.015em; text-wrap:balance; }
h1{ font-size:clamp(2.1rem,5vw,3.3rem); }
h2{ font-size:clamp(1.7rem,3.4vw,2.4rem); margin-bottom:10px; }
h3{ font-size:1.3rem; margin-bottom:6px; }
.titulo{ font-family:var(--f-display); font-weight:800; font-size:clamp(1.9rem,3.8vw,2.8rem); line-height:1.08; letter-spacing:-.02em; text-wrap:balance; margin-bottom:0; }
.rotulo,.eyebrow{
  font-family:var(--f-texto); font-size:.8rem; font-weight:700; letter-spacing:.1em; text-transform:uppercase; color:var(--tinta-2);
  display:inline-flex; gap:.6em; align-items:baseline; margin-bottom:12px;
}
.rotulo .n{ color:var(--destaque-texto); font-variant-numeric:tabular-nums; }
.parenteses{ font-size:.92rem; color:var(--tinta-2); }
p{ margin:0 0 14px; }
.lead,.sub,.lede{ font-size:clamp(1.1rem,1.4vw,1.24rem); line-height:1.55; color:var(--tinta-2); max-width:56ch; text-wrap:pretty; }
.corpo{ color:var(--tinta-2); max-width:64ch; }
.corpo strong{ color:var(--tinta); }
.link-seta{ display:inline-flex; align-items:center; gap:.5em; font-weight:700; text-decoration:none; border-bottom:1px solid currentColor; padding-bottom:2px; margin-top:6px; }
.cartao-link:hover .link-seta{ color:var(--destaque-texto); }

/* ---------- topo ---------- */
.topo{
  position:sticky; top:0; z-index:60; background:color-mix(in srgb, var(--papel) 90%, transparent);
  -webkit-backdrop-filter:blur(12px); backdrop-filter:blur(12px); border-bottom:1px solid var(--linha);
}
.topo-in{ max-width:var(--largura); margin:0 auto; padding:.7rem var(--gutter); display:flex; align-items:center; gap:1.2rem; }
.marca{ display:flex; align-items:center; gap:.65rem; text-decoration:none; margin-right:auto; }
.marca img{ width:36px; height:36px; border-radius:9px; }
.marca span{ font-family:var(--f-display); font-weight:800; font-size:1.25rem; letter-spacing:-.01em; }
.nav-links{ border-top:1px solid var(--linha); }
.nav-in{ max-width:var(--largura); margin:0 auto; padding:0 var(--gutter); display:flex; gap:1.6rem; overflow-x:auto; scrollbar-width:none; -webkit-overflow-scrolling:touch; }
.nav-in::-webkit-scrollbar{ display:none; }
.nav-links a{ white-space:nowrap; font-size:.95rem; font-weight:600; text-decoration:none; color:var(--tinta-2); padding:.7rem 0; transition:color .15s; }
.nav-links a:hover,.nav-links a[aria-current]{ color:var(--tinta); }
.nav-links a[aria-current]{ box-shadow:inset 0 -3px 0 var(--destaque-texto); }
.acoes-topo{ display:flex; align-items:center; gap:.5rem; }
.botao-ico{
  display:inline-flex; align-items:center; justify-content:center; gap:.5rem; height:44px; min-width:44px; padding:0 .95rem;
  border:1px solid var(--linha-forte); border-radius:999px; background:transparent; cursor:pointer; text-decoration:none; font-size:.92rem; font-weight:700;
  transition:background .15s, color .15s, border-color .15s;
}
.botao-ico:hover{ background:var(--tinta); color:var(--papel); border-color:var(--tinta); }
.botao-zap{ background:var(--botao-bg); color:var(--botao-ink); border-color:var(--botao-bg); }
.botao-zap:hover{ background:var(--destaque-hover); border-color:var(--destaque-hover); color:var(--botao-ink); }
.botao-menu{ background:var(--tinta); color:var(--papel); border-color:var(--tinta); }
.botao-menu:hover{ background:var(--botao-bg); color:var(--botao-ink); border-color:var(--botao-bg); }
.tema-escuro-ico{ display:none; }
:root[data-tema="escuro"] .tema-claro-ico{ display:none; }
:root[data-tema="escuro"] .tema-escuro-ico{ display:block; }
@media (prefers-color-scheme:dark){ :root:not([data-tema="claro"]) .tema-claro-ico{ display:none; } :root:not([data-tema="claro"]) .tema-escuro-ico{ display:block; } }
@media (max-width:560px){ .rot-zap{ position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap; } .botao-zap{ padding:0; width:44px; } .marca span{ font-size:1.15rem; } .topo-in{ gap:.6rem; } }

/* ---------- menu em tela cheia ---------- */
.menu{ position:fixed; inset:0; z-index:100; background:var(--marinho); color:#f7f3ee; display:flex; flex-direction:column; overflow:auto; }
.menu-topo{ display:flex; justify-content:space-between; align-items:center; padding:1rem var(--gutter); max-width:var(--largura); width:100%; margin:0 auto; border-bottom:1px solid rgba(247,243,238,.14); }
.menu-topo .botao-ico{ border-color:rgba(247,243,238,.35); color:#f7f3ee; }
.menu-topo .botao-ico:hover{ background:var(--botao-bg); border-color:var(--botao-bg); color:var(--botao-ink); }
.menu-grade{ max-width:var(--largura); width:100%; margin:0 auto; padding:2.2rem var(--gutter) 3rem; display:grid; grid-template-columns:1.5fr 1fr; gap:4vw; flex:1; }
@media (max-width:760px){ .menu-grade{ grid-template-columns:1fr; } }
.menu-lista{ list-style:none; }
.menu-lista li{ border-top:1px solid rgba(247,243,238,.14); }
.menu-lista a{ display:flex; align-items:baseline; gap:1rem; padding:.85rem 0; text-decoration:none; font-family:var(--f-display); font-weight:700; font-size:clamp(1.5rem,3vw,2.1rem); line-height:1.15; color:#f7f3ee; transition:color .15s; }
.menu-lista a .n{ font-family:var(--f-texto); font-weight:600; font-size:.8rem; letter-spacing:.08em; color:rgba(247,243,238,.5); min-width:2rem; }
.menu-lista a:hover,.menu-lista a[aria-current]{ color:var(--destaque-claro); }
.menu-lado{ align-self:start; display:flex; flex-direction:column; gap:1.4rem; font-size:1rem; color:rgba(247,243,238,.75); padding-top:.6rem; }
.menu-lado .rotulo{ color:rgba(247,243,238,.55); }

/* ---------- botões ---------- */
.btn{
  display:inline-flex; align-items:center; justify-content:center; gap:.6rem; padding:.95rem 1.5rem; border-radius:999px;
  font-family:inherit; font-weight:700; font-size:1.02rem; line-height:1.2; text-decoration:none; cursor:pointer; text-align:center;
  border:2px solid var(--tinta); background:var(--tinta); color:var(--papel); min-height:52px;
  transition:background .15s, color .15s, border-color .15s, transform .15s;
}
.btn:hover{ background:var(--botao-bg); border-color:var(--botao-bg); color:var(--botao-ink); transform:translateY(-1px); }
.btn-luz{ background:var(--botao-bg); border-color:var(--botao-bg); color:var(--botao-ink); }
.btn-luz:hover{ background:var(--destaque-hover); border-color:var(--destaque-hover); }
.btn-contorno{ background:transparent; color:var(--tinta); }
.btn-contorno:hover{ background:var(--tinta); border-color:var(--tinta); color:var(--papel); }
.btn-contorno-claro{ background:transparent; border-color:rgba(247,243,238,.6); color:#f7f3ee; }
.btn-contorno-claro:hover{ background:#f7f3ee; border-color:#f7f3ee; color:#181614; }
.btn-pequeno{ min-height:44px; padding:.55rem 1.05rem; font-size:.92rem; }
.btn .ico{ width:1.2em; height:1.2em; }
.botoes{ display:flex; gap:.7rem; flex-wrap:wrap; }
@media (max-width:480px){ .botoes .btn{ width:100%; } }

/* ---------- seções ---------- */
main > section{ padding:clamp(2.6rem,6vw,5rem) var(--gutter); border-top:1px solid var(--linha); }
main > section:first-child{ border-top:none; }
main > section > .wrap,main > section > .wrap-leitura{ padding-left:0; padding-right:0; }
.secao-escura,section.escura{ background:var(--marinho); color:#f7f3ee; border-top:none; }
.secao-escura .rotulo,.secao-escura .lead,.secao-escura .corpo,.secao-escura .parenteses,section.escura .sub{ color:rgba(247,243,238,.75); }
.secao-escura .rotulo .n{ color:var(--destaque-claro); }
.secao-areia,section.suave{ background:var(--areia); }
.cabeca{ display:grid; grid-template-columns:minmax(0,1.1fr) minmax(0,1fr); gap:var(--gutter); align-items:end; margin-bottom:clamp(1.8rem,4vw,2.8rem); }
.cabeca .titulo{ margin-top:.5rem; }
.cabeca-lado{ display:flex; flex-direction:column; gap:1.1rem; align-items:flex-start; }
.cabeca-lado .lead{ margin-bottom:0; }
@media (max-width:820px){ .cabeca{ grid-template-columns:1fr; align-items:start; } }

/* ---------- hero ---------- */
.hero{ padding-block:clamp(2.4rem,6vw,4.5rem); }
.hero-topo{ display:flex; justify-content:space-between; gap:1rem; flex-wrap:wrap; align-items:baseline; margin-bottom:clamp(1.1rem,2.4vw,1.7rem); }
.hero-topo .rotulo{ margin-bottom:0; }
.hero-grade{ display:grid; grid-template-columns:1.15fr .85fr; gap:clamp(2rem,4vw,3.5rem); align-items:center; }
@media (max-width:860px){ .hero-grade{ grid-template-columns:1fr; } }
.hero h1.display{ font-size:clamp(2.3rem,5.4vw,4.1rem); }
.hero .sub{ margin-top:1.3rem; }
.hero .ctas{ margin-top:1.8rem; display:flex; gap:.7rem; flex-wrap:wrap; }
.hero-bento{ display:grid; grid-template-columns:1fr 1fr; gap:14px; }
.tile{ border-radius:var(--raio); padding:1.4rem 1.4rem 1.3rem; display:flex; flex-direction:column; justify-content:flex-end; min-height:130px; }
.tile-selo{ grid-column:1 / -1; min-height:0; aspect-ratio:16/9; padding:0; background:var(--marinho); align-items:center; justify-content:center; }
.tile-selo img{ height:70%; width:auto; border-radius:22px; }
.tile-destaque{ background:var(--botao-bg); color:var(--botao-ink); }
.tile-areia{ background:var(--areia); color:var(--tinta); border:2px solid var(--tinta); }
.tile .num{ font-family:var(--f-display); font-weight:800; font-size:2.2rem; line-height:1; letter-spacing:-.02em; }
.tile .rot{ margin-top:.45rem; font-size:.95rem; font-weight:600; line-height:1.3; }
.grade-dor{ display:grid; gap:12px; }

/* ---------- grades e cartões ---------- */
.grade-2{ display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
.grade-3{ display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
.grade-4{ display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:16px; }
@media (max-width:900px){ .grade-3,.grade-4{ grid-template-columns:1fr 1fr; } }
@media (max-width:640px){ .grade-2,.grade-3,.grade-4{ grid-template-columns:1fr; } }
.cartao{ background:var(--papel); border:2px solid var(--tinta); border-radius:var(--raio); padding:1.4rem 1.4rem 1.3rem; }
.cartao p{ color:var(--tinta-2); }
.cartao p:last-child{ margin-bottom:0; }
a.cartao-link{ display:block; text-decoration:none; transition:transform .15s, box-shadow .15s; }
a.cartao-link:hover{ transform:translateY(-2px); box-shadow:var(--sombra); }
.valor-preco{ font-family:var(--f-display); font-weight:800; font-size:clamp(2.4rem,5vw,3.3rem); line-height:1; letter-spacing:-.02em; margin:.4rem 0 .8rem; }
.valor-preco small{ font-family:var(--f-texto); font-size:1rem; font-weight:600; letter-spacing:0; color:var(--tinta-3); }
.aviso-dados{ margin-top:1.2rem; font-size:.92rem; color:var(--tinta-3); max-width:70ch; }
.cartao-escuro{ border:2px solid rgba(247,243,238,.4); border-radius:var(--raio); padding:1.4rem; background:var(--marinho-2); }
.cartao-escuro .valor-preco{ font-size:clamp(1.8rem,4vw,2.4rem); }
.contato-grade{ display:grid; grid-template-columns:1fr 1fr; gap:var(--gutter); align-items:start; }
@media (max-width:820px){ .contato-grade{ grid-template-columns:1fr; } }
.outro-link{ margin:1rem 0 0; font-size:.95rem; color:rgba(247,243,238,.75); }
.outro-link a{ color:#f7f3ee; font-weight:700; }
.lista{ list-style:none; margin:0 0 8px; max-width:70ch; }
.lista li{ position:relative; padding:.5rem 0 .5rem 2rem; border-bottom:1px solid var(--linha); }
.lista li::before{ content:""; position:absolute; left:.3rem; top:.95rem; width:14px; height:8px; border-left:3px solid var(--ok); border-bottom:3px solid var(--ok); transform:rotate(-45deg); }
.lista.nao li::before{ width:16px; height:3px; border:none; background:var(--alerta); transform:rotate(45deg); top:1.2rem; }
.lista.nao li::after{ content:""; position:absolute; left:.3rem; top:1.2rem; width:16px; height:3px; background:var(--alerta); transform:rotate(-45deg); }
.secao-escura .lista li{ border-color:rgba(247,243,238,.18); }
.passos .passo{ border-top:3px solid var(--tinta); padding-top:1rem; }
.secao-escura .passos .passo{ border-color:rgba(247,243,238,.5); }
.passo .n{ font-family:var(--f-display); font-weight:800; font-size:2.4rem; line-height:1; color:var(--destaque-texto); margin-bottom:.5rem; }
.secao-escura .passo .n{ color:var(--destaque-claro); }
.passo h3{ font-size:1.15rem; }
.passo p{ color:var(--tinta-2); font-size:1rem; }
.secao-escura .passo p{ color:rgba(247,243,238,.78); }
.tag{ display:inline-block; font-size:.8rem; font-weight:700; letter-spacing:.06em; text-transform:uppercase; padding:5px 10px; border-radius:999px; background:var(--destaque-suave); color:var(--destaque-texto); margin-bottom:12px; }

/* ---------- avisos, perguntas, tabelas, formulários ---------- */
.aviso{ border-radius:var(--raio); padding:1.1rem 1.3rem; border:2px solid var(--linha-forte); background:var(--papel); }
.aviso.amarelo{ background:var(--destaque-suave); border-color:transparent; }
.aviso.vermelho{ background:var(--alerta-suave); border-color:transparent; }
.aviso.verde{ background:var(--ok-suave); border-color:transparent; }
.aviso p:last-child{ margin-bottom:0; }
details{ background:var(--papel); border:2px solid var(--tinta); border-radius:var(--raio); padding:.2rem 1.3rem; margin-bottom:12px; }
summary{ cursor:pointer; font-weight:700; padding:.9rem 0; list-style:none; display:flex; justify-content:space-between; gap:12px; }
summary::-webkit-details-marker{ display:none; }
summary::after{ content:"+"; font-size:1.4rem; line-height:1; color:var(--destaque-texto); }
details[open] summary::after{ content:"–"; }
details p,details ul{ color:var(--tinta-2); }
.tabela{ width:100%; border-collapse:collapse; font-size:1rem; background:var(--papel); border:2px solid var(--tinta); border-radius:var(--raio); overflow:hidden; }
.tabela th,.tabela td{ text-align:left; padding:.8rem .95rem; border-bottom:1px solid var(--linha); vertical-align:top; }
.tabela th{ background:var(--areia); font-size:.9rem; }
.rolar{ overflow-x:auto; }
label{ display:block; font-weight:700; margin:16px 0 6px; }
input[type=text],input[type=tel],textarea,select{
  width:100%; font:inherit; font-size:1.05rem; padding:.85rem 1rem; border-radius:12px;
  border:2px solid var(--linha-forte); background:var(--papel); color:var(--tinta);
}
input:focus,textarea:focus,select:focus{ outline:3px solid var(--destaque); outline-offset:1px; border-color:var(--tinta); }
.check{ display:flex; gap:12px; align-items:flex-start; padding:.85rem 1rem; border:2px solid var(--linha-forte); border-radius:12px; background:var(--papel); margin:0 0 10px; cursor:pointer; font-weight:500; }
.check:hover{ border-color:var(--tinta); }
.check input{ width:24px; height:24px; margin-top:3px; flex:none; accent-color:var(--botao-bg); }
.check small{ display:block; color:var(--tinta-3); font-weight:400; }
.saida{ white-space:pre-wrap; background:var(--papel); border:2px dashed var(--destaque); border-radius:var(--raio); padding:1rem 1.1rem; font-size:1rem; }
.placar{ font-family:var(--f-display); font-weight:800; font-size:3.4rem; line-height:1; color:var(--destaque-texto); }

/* ---------- rodapé ---------- */
.rodape{ background:var(--marinho); color:#f7f3ee; padding:clamp(2.6rem,6vw,4.5rem) var(--gutter) 2rem; }
.rodape .wrap{ padding:0; }
.rodape .rotulo{ color:rgba(247,243,238,.6); }
.rodape-grade{ display:grid; grid-template-columns:1.6fr 1fr 1fr 1fr; gap:2rem; }
@media (max-width:860px){ .rodape-grade{ grid-template-columns:1fr 1fr; } }
@media (max-width:520px){ .rodape-grade{ grid-template-columns:1fr; } }
.rodape p{ color:rgba(247,243,238,.75); font-size:.98rem; max-width:44ch; }
.rodape ul{ list-style:none; display:grid; gap:.45rem; color:rgba(247,243,238,.75); font-size:.98rem; }
.rodape a{ text-decoration:none; font-weight:600; color:#f7f3ee; }
.rodape a:hover{ color:var(--destaque-claro); }
.rodape-marca{ display:flex; align-items:center; gap:clamp(.6rem,2vw,1.4rem); font-family:var(--f-display); font-weight:800; font-size:clamp(3.4rem,15vw,10rem); line-height:1; letter-spacing:-.04em; margin:clamp(2rem,5vw,3.4rem) 0 1.4rem; }
.rodape-marca img{ width:clamp(2.6rem,10vw,6.5rem); height:auto; border-radius:18%; }
.rodape-marca em{ font-style:normal; color:var(--destaque); }
.rodape .aviso-marca{ font-size:.85rem; max-width:90ch; margin-bottom:.6rem; }
.rodape-base{ border-top:1px solid rgba(247,243,238,.14); padding-top:1rem; margin-top:1rem; font-size:.88rem; color:rgba(247,243,238,.6); }

/* ---------- impressão e ficha A4 ---------- */
@media print{ .topo,.menu,.rodape,.nao-imprimir,.pular{ display:none !important; } body{ background:#fff; color:#000; } main > section{ border:none; padding-block:16px; } }
.ficha h3{ margin:22px 0 8px; font-size:1.2rem; }
.ficha h3 small{ font-weight:500; color:var(--tinta-3); font-size:.9rem; }
.ficha-topo{ display:flex; justify-content:space-between; align-items:flex-end; gap:16px; border-bottom:3px solid var(--tinta); padding-bottom:10px; }
.ficha-marca{ font-family:var(--f-display); font-weight:800; font-size:1.6rem; letter-spacing:-.01em; }
.ficha-codigo{ font-weight:600; }
.ficha table{ width:100%; border-collapse:collapse; font-size:.98rem; background:var(--papel); }
.ficha td,.ficha th{ border:1px solid var(--linha-forte); padding:8px 10px; text-align:left; vertical-align:middle; }
.ficha-dados td:first-child{ width:34%; font-weight:600; }
.ficha-dados td:last-child{ height:34px; }
.ficha-check th{ background:var(--areia); font-size:.85rem; }
.ficha-check .caixa-col,.ficha-check th:nth-child(n+2){ width:58px; text-align:center; }
.caixa{ display:inline-block; width:18px; height:18px; border:2px solid var(--tinta); border-radius:3px; }
.ficha-passos{ font-weight:600; }
.ficha-rodape{ margin-top:16px; font-size:.85rem; color:var(--tinta-3); }
@media print{
  @page{ size:A4; margin:12mm; }
  .ficha{ padding:0 !important; font-size:9.5pt; line-height:1.3; }
  .ficha-marca{ font-size:1.3rem; }
  .caixa{ width:13px; height:13px; }
  .ficha table{ background:#fff; }
  .ficha td,.ficha th{ border-color:#999; padding:3px 7px; }
  .ficha-dados td:last-child{ height:21px; }
  .ficha h3{ margin:8px 0 4px; font-size:1.05rem; }
  .ficha-rodape{ margin-top:8px; }
  .ficha .estreito{ max-width:none; }
}

.marca .marca-servico{ font-weight:500; opacity:.7; }
.marca span{ white-space:nowrap; }
@media (max-width:560px){ .marca .marca-servico{ font-size:.95em; } }
