/* Documentos legais — Estúdio Jeff Britto (privacidade / termos) */
:root {
  --bg:#08070B; --bg-e:#0D0C12; --gold:#C4954A; --gold-l:#DDB16A;
  --cream:#EDE8DF; --fog:#6E6A63; --mist:#9E9890;
  --rule:rgba(196,149,74,.12);
  --fd:'Cormorant Garamond',Georgia,serif;
  --fs:'Josefin Sans',sans-serif;
  --g:clamp(20px,6vw,80px);
  --warn:rgba(224,138,74,.12);
  --warn-bd:rgba(224,138,74,.35);
}
*,*::before,*::after { box-sizing:border-box; margin:0; padding:0; }
html { background:var(--bg); overflow-x:hidden; }
body { color:var(--cream); font-family:var(--fs); font-weight:300; letter-spacing:.03em; -webkit-font-smoothing:antialiased; background:var(--bg); line-height:1.8; }
a { color:var(--gold); text-decoration:none; transition:color .25s; }
a:hover { color:var(--gold-l); }
#grain { position:fixed; inset:0; z-index:9999; pointer-events:none; opacity:.026; background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='200' height='200'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E"); mix-blend-mode:overlay; }
.aura-bg { position:fixed; inset:0; z-index:0; pointer-events:none; }
.aura-bg::before { content:''; position:absolute; width:500px; height:400px; border-radius:50%; background:radial-gradient(circle,rgba(196,149,74,.06) 0%,transparent 70%); top:-10%; right:10%; filter:blur(100px); }
nav { position:sticky; top:0; z-index:900; background:rgba(8,7,11,.95); border-bottom:1px solid var(--rule); padding:18px var(--g); display:flex; align-items:center; justify-content:space-between; backdrop-filter:blur(24px); gap:12px; flex-wrap:wrap; }
.nav-logo { display:flex; flex-direction:column; line-height:1.15; }
.nav-logo-sub { font-size:7px; letter-spacing:.34em; text-transform:uppercase; color:var(--fog); }
.nav-logo-main { font-family:var(--fd); font-size:18px; font-weight:400; letter-spacing:.14em; text-transform:uppercase; }
.nav-links { display:flex; gap:10px; flex-wrap:wrap; align-items:center; }
.nav-back { font-size:8px; letter-spacing:.22em; text-transform:uppercase; color:var(--fog); border:1px solid var(--rule); padding:8px 18px; transition:all .3s; }
.nav-back:hover { color:var(--gold); border-color:var(--gold); }
.nav-back.on { color:var(--gold); border-color:rgba(196,149,74,.45); }
.priv-hero { padding:80px var(--g) 60px; position:relative; z-index:1; border-bottom:1px solid var(--rule); }
.priv-eyebrow { font-size:8px; letter-spacing:.28em; text-transform:uppercase; color:var(--gold); margin-bottom:14px; display:flex; align-items:center; gap:14px; }
.priv-eyebrow::before { content:''; display:block; width:24px; height:1px; background:var(--gold); }
.priv-title { font-family:var(--fd); font-size:clamp(32px,5vw,64px); font-weight:300; line-height:1.08; color:var(--cream); margin-bottom:18px; }
.priv-title em { font-style:italic; color:var(--gold); }
.priv-meta { font-size:11px; color:var(--fog); letter-spacing:.08em; }
.priv-meta span { color:var(--mist); }
.priv-body { max-width:780px; margin:0 auto; padding:64px var(--g) 100px; position:relative; z-index:1; }
.priv-toc { background:rgba(196,149,74,.04); border:1px solid var(--rule); padding:28px 32px; margin-bottom:56px; border-radius:2px; }
.priv-toc-title { font-size:9px; letter-spacing:.22em; text-transform:uppercase; color:var(--gold); margin-bottom:16px; }
.priv-toc ol { list-style:none; display:flex; flex-direction:column; gap:8px; }
.priv-toc a { font-size:12px; color:var(--mist); }
.priv-toc a:hover { color:var(--cream); }
.priv-toc li { display:flex; gap:12px; align-items:baseline; }
.priv-toc .n { font-family:var(--fd); font-size:11px; color:var(--gold); min-width:18px; }
.priv-section { margin-bottom:52px; scroll-margin-top:100px; }
.priv-section-num { font-family:var(--fd); font-size:11px; color:var(--gold); letter-spacing:.1em; margin-bottom:6px; }
.priv-section h2 { font-family:var(--fd); font-size:clamp(22px,3vw,32px); font-weight:300; color:var(--cream); margin-bottom:20px; border-bottom:1px solid var(--rule); padding-bottom:12px; }
.priv-section h3 { font-family:var(--fd); font-size:18px; font-weight:400; color:var(--mist); margin:22px 0 10px; }
.priv-section p { font-size:13px; color:var(--fog); line-height:2; margin-bottom:14px; font-weight:200; }
.priv-section ul,.priv-section ol { margin:12px 0 14px 22px; }
.priv-section li { font-size:13px; color:var(--fog); line-height:1.9; margin-bottom:6px; font-weight:200; }
.priv-section strong { color:var(--mist); font-weight:400; }
.priv-table { width:100%; border-collapse:collapse; margin:20px 0; font-size:12px; }
.priv-table th { background:rgba(196,149,74,.06); color:var(--gold); font-weight:400; letter-spacing:.1em; text-transform:uppercase; font-size:9px; padding:12px 14px; border:1px solid var(--rule); text-align:left; }
.priv-table td { padding:11px 14px; border:1px solid var(--rule); color:var(--fog); vertical-align:top; }
.priv-box { background:rgba(196,149,74,.04); border-left:2px solid var(--gold); padding:18px 22px; margin:20px 0; border-radius:0 2px 2px 0; }
.priv-box p { margin:0; font-size:12px; color:var(--mist); font-style:italic; }
.priv-box.warn { background:var(--warn); border-left-color:#e08a4a; }
.priv-box.warn p { font-style:normal; color:var(--cream); }
.priv-contact { background:var(--bg-e); border:1px solid var(--rule); padding:28px 32px; margin-top:48px; border-radius:2px; display:flex; align-items:flex-start; gap:24px; flex-wrap:wrap; }
.priv-contact-label { font-size:8px; letter-spacing:.22em; text-transform:uppercase; color:var(--gold); margin-bottom:6px; }
.priv-contact-val { font-size:14px; font-weight:200; color:var(--cream); }
footer.legal-foot { background:var(--bg); border-top:1px solid var(--rule); padding:28px var(--g); display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:14px; position:relative; z-index:1; }
.f-logo { font-family:var(--fd); font-size:14px; font-weight:300; letter-spacing:.14em; text-transform:uppercase; color:rgba(237,232,223,.2); }
.f-copy { font-size:8px; letter-spacing:.12em; color:rgba(237,232,223,.14); }
.f-links { display:flex; gap:22px; flex-wrap:wrap; }
.f-links a { font-size:8px; letter-spacing:.2em; text-transform:uppercase; color:rgba(237,232,223,.2); transition:color .25s; }
.f-links a:hover,.f-links a.on { color:var(--gold-l); }
@media (max-width:768px) {
  .priv-body { padding:40px var(--g) 70px; }
  .priv-hero { padding:60px var(--g) 40px; }
  footer.legal-foot { flex-direction:column; text-align:center; }
  .f-links { justify-content:center; }
}
@media (min-width:1400px) {
  .priv-body { max-width:860px; }
}
@media (max-aspect-ratio:16/10) and (max-width:1199px) {
  .priv-hero { padding:56px var(--g) 40px; }
  .priv-title { font-size:clamp(28px,4.2vw,44px); }
}
