/* Estilo compartilhado das páginas institucionais/legais (FAQ, Termini, Privacy,
   Licenza, Rimborso, Documentazione, Status, Legale, Contatto). Tema dark igual à landing. */
:root{
  --bg:#07080b;--surface:#111319;--border:rgba(255,255,255,.08);
  --text:#eef1f6;--muted:#a0a7b4;--muted2:#6b7280;
  --teal:#14b8a6;--teal-bright:#2dd4bf;--violet:#8b6dff;
  --font-display:"Sora",system-ui,sans-serif;--font-body:"Inter",system-ui,sans-serif;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{
  background:var(--bg);color:var(--text);font-family:var(--font-body);line-height:1.7;
  -webkit-font-smoothing:antialiased;
  background-image:radial-gradient(700px circle at 15% -5%,rgba(20,184,166,.08),transparent 55%);
}
a{color:var(--teal-bright);text-decoration:none}
a:hover{text-decoration:underline}

/* Top nav */
.doc-nav{position:sticky;top:0;z-index:10;border-bottom:1px solid var(--border);
  background:rgba(8,9,12,.7);backdrop-filter:blur(12px)}
.doc-nav-in{max-width:880px;margin:0 auto;padding:0 24px;height:62px;
  display:flex;align-items:center;justify-content:space-between}
.brand{font-family:var(--font-display);font-weight:800;font-size:18px;text-decoration:none;color:var(--text)}
.brand span{background:linear-gradient(120deg,#2dd4bf,#8b6dff);-webkit-background-clip:text;background-clip:text;color:transparent}
.doc-nav-in .back{font-size:14px;color:var(--muted)}
.doc-nav-in .back:hover{color:var(--text)}

/* Document body */
.doc{max-width:820px;margin:0 auto;padding:54px 24px 90px}
.doc .eyebrow{display:inline-block;font-size:12px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;
  color:var(--teal-bright);border:1px solid rgba(45,212,191,.25);background:rgba(20,184,166,.06);
  padding:6px 13px;border-radius:999px;margin-bottom:18px}
.doc h1{font-family:var(--font-display);font-weight:800;font-size:clamp(28px,5vw,40px);
  letter-spacing:-.02em;line-height:1.12;margin-bottom:12px}
.doc .updated{color:var(--muted2);font-size:13.5px;margin-bottom:8px}
.doc h2{font-family:var(--font-display);font-weight:700;font-size:21px;margin:38px 0 12px;
  padding-top:18px;border-top:1px solid var(--border)}
.doc h3{font-weight:700;font-size:16px;margin:22px 0 8px;color:#e7eaf0}
.doc p{color:#d2d7e0;margin:0 0 14px;font-size:15.5px}
.doc ul,.doc ol{margin:0 0 16px 22px;color:#d2d7e0;font-size:15.5px}
.doc li{margin-bottom:8px}
.doc strong{color:#fff}
.doc .lead{font-size:17px;color:var(--muted);margin-bottom:26px}
.placeholder{color:#fbbf24;background:rgba(245,158,11,.08);border:1px dashed rgba(245,158,11,.4);
  border-radius:6px;padding:1px 7px;font-size:.92em;font-family:ui-monospace,monospace}
.notice{border:1px solid rgba(45,212,191,.25);background:rgba(20,184,166,.06);
  border-radius:12px;padding:16px 18px;margin:20px 0;font-size:14.5px;color:#cbeee7}
.notice strong{color:var(--teal-bright)}
.warn{border:1px solid rgba(245,158,11,.3);background:rgba(245,158,11,.07);
  border-radius:12px;padding:16px 18px;margin:20px 0;font-size:14px;color:#fcd9a0}

/* Cards (FAQ / hub / status) */
.cards{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:24px}
.card{display:block;border:1px solid var(--border);border-radius:14px;padding:20px 22px;
  background:linear-gradient(180deg,rgba(255,255,255,.035),rgba(255,255,255,.01));
  transition:transform .18s,border-color .2s;text-decoration:none}
.card:hover{transform:translateY(-3px);border-color:rgba(45,212,191,.35);text-decoration:none}
.card h3{margin:0 0 6px;color:#fff}
.card p{margin:0;color:var(--muted);font-size:14px}

/* FAQ accordion */
.q{border:1px solid var(--border);border-radius:12px;margin-bottom:12px;overflow:hidden;background:rgba(255,255,255,.018)}
.q>button{width:100%;text-align:left;padding:18px 20px;background:none;border:none;color:var(--text);
  font-family:var(--font-body);font-size:16px;font-weight:600;cursor:pointer;
  display:flex;justify-content:space-between;align-items:center;gap:14px}
.q .chev{color:var(--teal-bright);transition:transform .3s}
.q.open .chev{transform:rotate(180deg)}
.q .ans{max-height:0;overflow:hidden;transition:max-height .35s ease}
.q .ans p{padding:0 20px 18px;font-size:14.5px;color:var(--muted)}

/* Status rows */
.status-line{display:flex;align-items:center;justify-content:space-between;
  padding:15px 18px;border:1px solid var(--border);border-radius:12px;margin-bottom:10px;
  background:rgba(255,255,255,.02)}
.status-line .ok{display:inline-flex;align-items:center;gap:8px;color:#5eead4;font-size:14px;font-weight:600}
.dot{width:9px;height:9px;border-radius:50%;background:#22c55e;box-shadow:0 0 10px #22c55e}

/* Footer */
.doc-footer{border-top:1px solid var(--border);margin-top:60px}
.doc-footer-in{max-width:820px;margin:0 auto;padding:30px 24px;display:flex;flex-wrap:wrap;gap:16px;
  align-items:center;justify-content:space-between;color:var(--muted2);font-size:13px}
.doc-footer-in nav{display:flex;flex-wrap:wrap;gap:16px}
.doc-footer-in nav a{color:var(--muted);font-size:13px}

@media(max-width:680px){.cards{grid-template-columns:1fr}}
