/* Base compartilhada das páginas secundárias (termos, privacidade, obrigado).
   Extraída do <style> da index.html — mantenha os dois em sincronia. */
:root { --ink: #0C0B0A; --surface: #161412; --raised: #1D1A17; --line: #2A2621; --line-soft: rgba(250, 248, 245, .08); --graphite: #251E18; --amber: #E18905; --honey: #F9AD29; --ember: #F56714; --cream: #FAF8F5; --muted: #A39A90; --ease: cubic-bezier(.22, .8, .24, 1); color-scheme: dark; }
body { background: var(--ink); color: var(--cream); font-family: Inter, system-ui, sans-serif; -webkit-font-smoothing: antialiased; text-rendering: optimizeLegibility; overflow-x: hidden; }
.font-display, h1, h2, h3 { font-family: "Plus Jakarta Sans", Inter, sans-serif; }
.tight { letter-spacing: -0.035em; line-height: 1.02; }
.wordmark { font-family: "Plus Jakarta Sans", sans-serif; font-weight: 700; letter-spacing: -0.04em; }
.nav-shell { background: rgba(22,20,18,.72); border: 1px solid rgba(250,248,245,.1); box-shadow: 0 12px 40px -16px rgba(0,0,0,.8); backdrop-filter: blur(18px) saturate(140%); -webkit-backdrop-filter: blur(18px) saturate(140%); }
.nav-link { display: inline-flex; align-items: center; min-height: 44px; padding: 0 .85rem; color: var(--muted); font-size: .92rem; font-weight: 500; border-radius: 999px; transition: color .2s, background-color .2s; }
.nav-link:hover { color: var(--cream); }
.btn { display: inline-flex; align-items: center; justify-content: center; gap: .5rem; min-height: 44px; padding: 0 1.25rem; border-radius: 999px; font-weight: 600; font-size: .95rem; white-space: nowrap; transition: transform .2s var(--ease), box-shadow .25s var(--ease), background-color .2s, border-color .2s, color .2s; }
.btn .ico { transition: transform .25s var(--ease); }
.btn:hover .ico { transform: translateX(3px); }
.btn-primary { background: var(--honey); color: var(--ink); box-shadow: 0 0 0 1px rgba(249,173,41,.5), 0 8px 30px -8px rgba(249,173,41,.55), inset 0 1px 0 rgba(255,255,255,.35); }
.btn-primary:hover { transform: translateY(-1px); background: #FBB943; box-shadow: 0 0 0 1px rgba(249,173,41,.7), 0 14px 44px -10px rgba(249,173,41,.75), 0 0 60px -20px rgba(245,103,20,.6), inset 0 1px 0 rgba(255,255,255,.4); }
.btn-primary:active { transform: translateY(0); }
.btn-ghost { color: var(--cream); border: 1px solid var(--line); background: rgba(250,248,245,.02); }
.btn-ghost:hover { border-color: rgba(249,173,41,.45); background: rgba(249,173,41,.06); }
.btn-lg { min-height: 52px; padding: 0 1.6rem; font-size: 1rem; }
.ico { width: 1em; height: 1em; flex: none; }
.card { background: linear-gradient(180deg, rgba(250,248,245,.025), rgba(250,248,245,0)), var(--surface); border: 1px solid var(--line-soft); border-radius: 22px; box-shadow: 0 1px 0 rgba(250,248,245,.04) inset, 0 24px 60px -32px rgba(0,0,0,.7); }
.eyebrow { display: inline-flex; align-items: center; gap: .5rem; font-size: .78rem; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; color: var(--honey); }
.icon-tile { width: 44px; height: 44px; border-radius: 13px; display: grid; place-items: center; background: linear-gradient(160deg, rgba(249,173,41,.16), rgba(225,137,5,.04)); border: 1px solid rgba(249,173,41,.2); color: var(--honey); flex: none; }
.hero-bg { position: absolute; inset: 0; z-index: -1; overflow: hidden; pointer-events: none; }
.hero-bg::before { content: ""; position: absolute; left: 50%; top: -18%; width: 1100px; height: 800px; transform: translateX(-30%); background: radial-gradient(closest-side, rgba(225,137,5,.20), rgba(225,137,5,.06) 45%, transparent 75%); filter: blur(10px); }
.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }

/* Documento legal: tipografia de leitura longa. */
.doc { max-width: 46rem; }
.doc h1 { font-size: clamp(2rem, 5vw, 2.8rem); font-weight: 700; letter-spacing: -0.03em; line-height: 1.08; }
.doc h2 { margin-top: 2.5rem; font-size: 1.25rem; font-weight: 700; letter-spacing: -0.015em; color: var(--cream); }
.doc p, .doc li { margin-top: .9rem; font-size: 1rem; line-height: 1.75; color: var(--muted); }
.doc ul { padding-left: 1.25rem; list-style: disc; }
.doc li { margin-top: .5rem; }
.doc li::marker { color: var(--honey); }
.doc strong { color: var(--cream); font-weight: 600; }
.doc a:not(.btn) { color: var(--honey); text-decoration: underline; text-underline-offset: .2em; text-decoration-color: rgba(249,173,41,.4); }
.doc a:not(.btn):hover { text-decoration-color: var(--honey); }
.doc .notice { margin-top: 1.5rem; padding: 1rem 1.25rem; }
.doc .notice p { margin-top: 0; font-size: .92rem; }
