/* Pagina legale autonoma: asset locali, lettura agevole e tabella confinata su mobile. */
.privacy-page .header-inner { justify-content:space-between; }
.privacy-page .language-form { margin-left:18px; }
.privacy-page .language-form select:focus-visible { outline:3px solid var(--red); outline-offset:4px; }
.privacy-intro { padding:68px 0 54px; background:var(--paper); border-bottom:1px solid var(--line); }
.privacy-eyebrow { color:var(--red); font-weight:700; font-size:13px; letter-spacing:.08em; margin-bottom:18px; }
.privacy-intro h1 { max-width:850px; font-size:clamp(40px,5vw,68px); line-height:1.06; margin-bottom:22px; }
.privacy-intro p { margin-bottom:20px; }
.privacy-date { color:var(--muted); font-size:13px; }
/* Senza indice laterale, testo e introduzione condividono una colonna centrata. */
.privacy-intro .shell, .privacy-layout { max-width:960px; }
.privacy-layout { padding-block:58px 80px; }
.privacy-document { min-width:0; }
.privacy-document section { padding-bottom:32px; margin-bottom:32px; border-bottom:1px solid var(--line); scroll-margin-top:24px; }
.privacy-document section:last-child { border-bottom:0; margin-bottom:0; padding-bottom:0; }
.privacy-document h2 { font-size:clamp(28px,3vw,38px); margin-bottom:20px; line-height:1.15; }
.privacy-document p { max-width:none; margin-bottom:18px; white-space:pre-line; }
.privacy-document address { font-style:normal; padding:20px; background:var(--paper); }
.privacy-document a { color:var(--green-dark); text-underline-offset:3px; overflow-wrap:anywhere; }
.privacy-document .button { margin-bottom:20px; }
/* Le celle possono spezzare gli identificativi; soltanto la tabella scorre quando serve. */
.privacy-table-wrap { max-width:100%; overflow-x:auto; margin:24px 0; }
.privacy-table-wrap table { width:100%; min-width:760px; table-layout:fixed; border-collapse:collapse; font-size:13px; }
.privacy-table-wrap caption { text-align:left; font-weight:700; margin-bottom:12px; }
.privacy-table-wrap th,.privacy-table-wrap td { padding:14px 12px; text-align:left; vertical-align:top; border-bottom:1px solid var(--line); overflow-wrap:anywhere; }
.privacy-table-wrap thead { background:var(--paper); }
.privacy-table-wrap thead th:nth-child(1) { width:25%; }
.privacy-table-wrap thead th:nth-child(2) { width:18%; }
.privacy-table-wrap thead th:nth-child(3) { width:30%; }
.privacy-table-wrap thead th:nth-child(4) { width:27%; }
.privacy-table-wrap tbody th { font-family:monospace; font-weight:400; max-width:190px; }
.privacy-footer { display:flex; flex-wrap:wrap; align-items:center; gap:14px 28px; padding-block:22px; font-size:12px; }
.privacy-footer p { margin-right:auto; }
.privacy-footer button { background:none; border:0; color:inherit; padding:8px 0; text-decoration:underline; }
@media (max-width:620px) { .privacy-page .shell { width:calc(100% - 32px); } .privacy-intro { padding:40px 0; } .privacy-layout { padding-block:32px 50px; } .privacy-page .brand { max-width:135px; } .privacy-page .language-form { margin-left:auto; } .privacy-footer { align-items:flex-start; flex-direction:column; } }
@media (prefers-reduced-motion:reduce) { html:has(.privacy-page) { scroll-behavior:auto; } }