/* Sites dos produtos (ADR 0005): Preços na raiz, Campo em /campo. Archivo (títulos) + IBM Plex Sans (texto) + IBM Plex Mono (números e rótulos), como no DESIGN.md.
   Regras de docs/referencias-spell-ui.md: animar só transição, cor indica estado, contraste alto, prova só verdadeira. */
:root{--bg:#F9F8F6;--bg2:#F1EEE8;--ink:#2E2A25;--ink2:#5E5850;--line:#E3DFD8;--brand:#9C5A17;--brand-ink:#7A4510;--brand-soft:#F6E8D2;--green:#2F5E47;--green-soft:#E3EFE7;--red:#9D3B2C;--card:#FFFFFF;color-scheme:light}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){--bg:#171410;--bg2:#1F1B15;--ink:#EDE7DD;--ink2:#B4ACA0;--line:#332D25;--brand:#D9A054;--brand-ink:#E8B76F;--brand-soft:#2E2417;--green:#8FC4A6;--green-soft:#1D2E24;--red:#E08A7A;--card:#1F1B15;color-scheme:dark}}
:root[data-theme="dark"]{--bg:#171410;--bg2:#1F1B15;--ink:#EDE7DD;--ink2:#B4ACA0;--line:#332D25;--brand:#D9A054;--brand-ink:#E8B76F;--brand-soft:#2E2417;--green:#8FC4A6;--green-soft:#1D2E24;--red:#E08A7A;--card:#1F1B15;color-scheme:dark}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:"IBM Plex Sans",system-ui,-apple-system,Segoe UI,sans-serif;font-size:17px;line-height:1.55;-webkit-font-smoothing:antialiased}
h1,h2,h3{font-family:Archivo,"Arial Narrow",Arial,sans-serif;font-stretch:87.5%;font-weight:900;letter-spacing:-.02em;line-height:1.04;margin:0;text-wrap:balance}
h1{font-size:clamp(40px,6.4vw,84px)}h2{font-size:clamp(30px,4.2vw,54px)}h3{font-size:21px;font-weight:700;line-height:1.2}
p{margin:0}a{color:inherit}.mono{font-family:"IBM Plex Mono",ui-monospace,Menlo,monospace;font-variant-numeric:tabular-nums}
.wrap{max-width:1180px;margin:0 auto;padding:0 28px}
.eyebrow{font-family:"IBM Plex Mono",monospace;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--brand);font-weight:500}
.lede{font-size:clamp(18px,2vw,21px);color:var(--ink2);max-width:62ch}
header.top{position:sticky;top:0;z-index:5;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 28px;margin:0 -28px;background:color-mix(in oklab,var(--bg) 85%,transparent);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
header.top nav{display:flex;gap:22px;font-size:15px}header.top nav a{text-decoration:none;color:var(--ink2)}header.top nav a:hover{color:var(--ink)}
.brand{font-family:Archivo,Arial,sans-serif;font-stretch:87.5%;font-weight:900;font-size:28px;letter-spacing:-.03em;text-decoration:none}.brand span{color:var(--brand)}.brand small{font-family:"IBM Plex Mono",monospace;font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink2);font-weight:500;margin-left:8px}
.btn{display:inline-flex;align-items:center;gap:10px;padding:15px 22px;border-radius:8px;background:var(--brand);color:#fff;font-weight:600;text-decoration:none;font-size:16px;min-height:50px;border:0;box-shadow:0 1px 2px rgba(0,0,0,.12),0 6px 16px -10px rgba(0,0,0,.35);transition:transform .15s ease,box-shadow .15s ease}.btn:hover{transform:translateY(-1px)}.btn:active{transform:translateY(1px)}
.btn.ghost{background:transparent;color:var(--brand-ink);border:1.5px solid var(--brand);box-shadow:none}.btn.ghost:hover{background:var(--brand-soft)}.btn.small{padding:10px 16px;min-height:42px;font-size:14px}
.btn:focus-visible,a:focus-visible{outline:3px solid var(--brand);outline-offset:3px}
.hero{padding:64px 0 56px}.hero h1{max-width:16ch;margin:18px 0 22px}.hero .ctas{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}
.proof{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:12px;overflow:hidden;margin:8px 0 72px}.proof div{background:var(--card);padding:22px}.proof strong{display:block;font-family:"IBM Plex Mono",monospace;font-size:clamp(26px,3.2vw,38px);font-weight:500;letter-spacing:-.02em}.proof span{font-size:13px;color:var(--ink2)}
section.bloco{padding:64px 0;border-top:1px solid var(--line)}section.bloco>.wrap>h2{max-width:20ch;margin:12px 0 18px}section.bloco>.wrap>.lede{margin-bottom:34px}
.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:16px}.card{background:var(--card);border-radius:12px;padding:26px;box-shadow:0 0 0 1px color-mix(in oklab,var(--ink) 7%,transparent),0 8px 24px -18px rgba(0,0,0,.35)}.card h3{margin:10px 0 10px}.card p{color:var(--ink2);font-size:16px}
.card .num{font-family:"IBM Plex Mono",monospace;color:var(--brand);font-size:13px;letter-spacing:.1em}
.passos{counter-reset:p;display:grid;gap:14px;max-width:820px}.passos li{list-style:none;display:grid;grid-template-columns:48px 1fr;gap:16px;align-items:start;background:var(--card);border-radius:12px;padding:20px 22px;box-shadow:0 0 0 1px color-mix(in oklab,var(--ink) 7%,transparent)}
.passos li:before{counter-increment:p;content:counter(p);font-family:Archivo,Arial,sans-serif;font-weight:900;font-size:30px;color:var(--brand);line-height:1}.passos ol{padding:0;margin:0}.passos strong{display:block;margin-bottom:4px}.passos span{color:var(--ink2)}
.honesto{display:grid;grid-template-columns:1fr 1fr;gap:16px}.honesto .card{box-shadow:none;border:1px solid var(--line)}.honesto ul{margin:12px 0 0;padding-left:20px;color:var(--ink2)}.honesto li{margin:6px 0}
.faixa-final{background:var(--brand-soft);border-radius:16px;padding:44px;display:flex;justify-content:space-between;align-items:center;gap:24px;flex-wrap:wrap;margin:72px 0}.faixa-final h2{font-size:clamp(28px,3.6vw,44px);max-width:22ch}
.proximo{display:grid;grid-template-columns:1.2fr .8fr;gap:24px;align-items:center}.proximo .card{background:var(--bg2);box-shadow:none}
footer{border-top:1px solid var(--line);padding:32px 0 48px;color:var(--ink2);font-size:14px;display:flex;justify-content:space-between;gap:24px;flex-wrap:wrap}footer p{max-width:44ch;margin-top:6px}footer nav{display:flex;gap:18px;flex-wrap:wrap;align-items:flex-start}footer nav a{text-decoration:none}footer nav a:hover{color:var(--ink)}
.hero .nota,.nota{margin-top:16px;font-size:14px;color:var(--ink2)}.hero.curto{padding:48px 0 40px}.hero.curto h1{font-size:clamp(36px,5.2vw,64px);max-width:20ch}.eyebrow a{text-decoration:none}
.tabela{overflow-x:auto;border:1px solid var(--line);border-radius:12px;background:var(--card);margin:8px 0 18px}.tabela table{width:100%;border-collapse:collapse;font-size:15px;min-width:620px}.tabela th,.tabela td{padding:14px 16px;text-align:left;vertical-align:top;border-bottom:1px solid var(--line)}.tabela tr:last-child>*{border-bottom:0}.tabela thead th{font-family:"IBM Plex Mono",monospace;font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink2);font-weight:500}.tabela tbody th{font-weight:600;width:22%}.tabela td{color:var(--ink2)}.tabela .nos{background:var(--brand-soft);color:var(--ink)}.tabela thead .nos{color:var(--brand-ink)}
.mais a{color:var(--brand-ink);font-weight:600;text-decoration:none}.mais a:hover{text-decoration:underline}
.faq{display:grid;gap:10px;max-width:860px;margin-top:26px}.faq details{background:var(--card);border-radius:12px;box-shadow:0 0 0 1px color-mix(in oklab,var(--ink) 7%,transparent);padding:0 22px}.faq summary{cursor:pointer;font-weight:600;padding:18px 0;list-style:none;display:flex;justify-content:space-between;gap:16px}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:"+";font-family:"IBM Plex Mono",monospace;color:var(--brand);font-size:20px;line-height:1}.faq details[open] summary:after{content:"–"}.faq details p{color:var(--ink2);padding:0 0 20px;max-width:70ch}.faq a{color:var(--brand-ink)}
.lista{margin:12px 0 20px;padding-left:20px;color:var(--ink2)}.lista li{margin:6px 0}
a.card.link{text-decoration:none;transition:transform .15s ease}a.card.link:hover{transform:translateY(-2px)}.card.destaque{background:var(--brand-soft);border-color:transparent}.card .fonte{font-size:13px;margin-top:14px}.card .fonte a{color:var(--brand-ink)}
h2.sub{font-size:clamp(24px,3vw,34px);margin:34px 0 16px}section.bloco>.wrap>h2.sub:first-child{margin-top:0}
@media(max-width:820px){.proof{grid-template-columns:1fr 1fr}.honesto,.proximo{grid-template-columns:1fr}header.top nav{display:none}.faixa-final{padding:28px}}
@media(max-width:480px){.wrap{padding:0 16px}header.top{margin:0 -16px;padding:12px 16px}.proof strong{font-size:24px}}
@media(prefers-reduced-motion:reduce){.btn{transition:none}}
