/* RAPCO2 — pagine legali (Privacy, Termini). Stessi colori e carattere del sito. */
:root{
  --lg-bg:#F3F6FB;
  --lg-ink:#070C17;
  --lg-ink-2:#0C162A;
  --lg-blue:#254C96;
  --lg-line:rgba(7,12,23,.13);
  --lg-soft:#D3E0F5;
  --lg-card:rgba(255,255,255,.86);
}
*{box-sizing:border-box}
html{background:var(--lg-bg);scroll-behavior:smooth}
body{
  margin:0;background:var(--lg-bg);color:var(--lg-ink);
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  -webkit-font-smoothing:antialiased;line-height:1.7;
  background-image:radial-gradient(900px 420px at 85% -80px,rgba(37,76,150,.10),transparent 70%),
                   radial-gradient(700px 360px at -10% 20%,rgba(50,118,142,.08),transparent 70%);
  background-repeat:no-repeat;min-height:100vh;display:flex;flex-direction:column;
}
a{color:var(--lg-blue);text-decoration:none}
a:hover{text-decoration:underline;text-underline-offset:3px}
.legal-shell{width:min(860px,calc(100% - 32px));margin-inline:auto}

.legal-header{position:sticky;top:0;z-index:10;background:rgba(243,246,251,.88);backdrop-filter:blur(18px) saturate(1.25);border-bottom:1px solid rgba(7,12,23,.07)}
.legal-header__inner{display:flex;align-items:center;justify-content:space-between;gap:16px;height:72px;width:min(1100px,calc(100% - 32px))}
.legal-brand{display:flex;align-items:center;gap:10px;color:var(--lg-ink)}
.legal-brand:hover{text-decoration:none}
.legal-brand__symbol svg{display:block;width:56px;height:auto}
.legal-brand__word{font-weight:800;letter-spacing:.04em;font-size:18px}
.legal-back{display:inline-flex;align-items:center;gap:8px;border-radius:999px;padding:11px 18px;font-size:12px;font-weight:800;letter-spacing:.025em;color:#fff;background:var(--lg-ink-2);transition:background .2s ease,transform .2s ease}
.legal-back:hover{background:var(--lg-blue);text-decoration:none;transform:translateY(-1px)}

.legal-main{flex:1;padding:40px 0 64px}
.legal-card{background:var(--lg-card);border:1px solid var(--lg-line);border-radius:28px;padding:clamp(24px,5vw,56px);box-shadow:0 18px 55px rgba(12,22,42,.08)}
.legal-eyebrow{margin:0 0 10px;font-size:11px;font-weight:800;letter-spacing:.16em;color:var(--lg-blue)}
.legal-card h1{margin:0 0 14px;font-size:clamp(30px,5vw,46px);line-height:1.1;letter-spacing:-.02em;color:var(--lg-ink-2)}
.legal-lead{margin:0 0 18px;font-size:17px;color:var(--lg-blue);font-weight:600}
.legal-meta{margin:20px 0 8px;padding:16px 20px;border-left:3px solid var(--lg-blue);background:rgba(211,224,245,.45);border-radius:0 14px 14px 0}
.legal-meta p{margin:2px 0;font-size:14px;line-height:1.6;color:var(--lg-ink-2)}

.legal-body h2{margin:44px 0 12px;padding-top:26px;border-top:1px solid var(--lg-line);font-size:clamp(20px,3vw,25px);line-height:1.25;letter-spacing:-.01em;color:var(--lg-ink-2)}
.legal-body h2:first-child{margin-top:28px}
.legal-body h3{margin:28px 0 8px;font-size:17px;line-height:1.35;color:var(--lg-blue)}
.legal-body p{margin:0 0 14px;font-size:16px}
.legal-body ul{margin:0 0 16px;padding-left:22px}
.legal-body li{margin:0 0 8px;font-size:16px}
.legal-body li::marker{color:var(--lg-blue)}

.legal-footer{border-top:1px solid rgba(7,12,23,.08);background:rgba(255,255,255,.5)}
.legal-footer__inner{width:min(1100px,calc(100% - 32px));display:flex;flex-wrap:wrap;gap:12px 28px;align-items:center;justify-content:space-between;padding:22px 0;font-size:13px;color:#3b4660}
.legal-footer nav{display:flex;flex-wrap:wrap;gap:8px 20px;font-weight:600}

@media (max-width:560px){
  .legal-main{padding:24px 0 44px}
  .legal-card{border-radius:22px}
  .legal-brand__symbol svg{width:46px}
  .legal-back{padding:10px 14px}
}