/* ------------------------------------------------------------------
   Pagine legali (Privacy Policy / Termini e condizioni)
   Documento long-form, leggibile, coerente col design system J&B.
   ------------------------------------------------------------------ */

.legal-hero{padding-bottom:clamp(1.5rem,3vw,2.25rem)}
.legal-hero h1{max-width:18ch}
.legal-updated{
  margin-top:1.5rem;font-size:.82rem;font-weight:600;letter-spacing:.06em;
  text-transform:uppercase;color:var(--text-muted)
}

.legal-section{padding-top:clamp(2rem,4vw,3rem)}

.legal-doc{
  max-width:74ch;margin-inline:auto;background:var(--off-white);
  border:1px solid var(--border);border-top:3px solid var(--gold);
  border-radius:var(--radius,4px);
  padding:clamp(1.6rem,4vw,3.25rem)
}

.legal-intro{
  margin-bottom:clamp(1.75rem,3vw,2.5rem);
  font-size:1.02rem;line-height:1.7;color:var(--text-muted);
  padding-left:1rem;border-left:2px solid var(--gold)
}
.legal-intro p{font-size:inherit;line-height:inherit;color:inherit;margin:0 0 .85rem}
.legal-intro p:last-child{margin-bottom:0}

/* Indice */
.legal-toc{
  background:var(--bg-alt);border:1px solid var(--border);
  padding:1.25rem 1.4rem;margin-bottom:clamp(2rem,4vw,3rem)
}
.legal-toc-title{
  display:block;font-family:var(--font-body);font-weight:600;font-size:.72rem;
  letter-spacing:.12em;text-transform:uppercase;color:var(--text-muted);margin-bottom:.85rem
}
.legal-toc ol{list-style:none;counter-reset:toc;display:grid;gap:.45rem;margin:0;padding:0}
.legal-toc li{counter-increment:toc;display:flex;gap:.6rem;align-items:baseline}
.legal-toc li::before{
  content:"";flex:0 0 auto;width:6px;height:6px;margin-top:.42rem;
  background:var(--gold);border-radius:50%
}
.legal-toc a{
  font-size:.92rem;line-height:1.45;color:var(--text);
  border-bottom:1px solid transparent;transition:color .2s,border-color .2s
}
.legal-toc a:hover{color:var(--gold-dim);border-bottom-color:var(--gold)}

/* Blocchi */
.legal-block{scroll-margin-top:96px;padding-top:clamp(1.6rem,3vw,2.25rem)}
.legal-block + .legal-block{border-top:1px solid var(--border)}
.legal-block h2{
  font-size:clamp(1.15rem,2.2vw,1.5rem);line-height:1.25;
  margin-bottom:.9rem;color:var(--text)
}
.legal-block:target h2{color:var(--gold-dim)}

.legal-body p{
  font-size:.97rem;line-height:1.75;color:var(--text-muted);margin-bottom:1rem
}
.legal-body p:last-child{margin-bottom:0}
.legal-body strong{color:var(--text);font-weight:600}
.legal-body ul,.legal-body ol{margin:0 0 1rem 1.15rem;padding:0}
.legal-body li{
  font-size:.97rem;line-height:1.7;color:var(--text-muted);margin-bottom:.45rem
}
.legal-body a{
  color:var(--text);font-weight:500;
  border-bottom:1px solid var(--gold);transition:color .2s,background-color .2s
}
.legal-body a:hover{color:var(--gold-dim)}

/* ------------------------------------------------------------------
   Elenco cookie generato da Complianz — shortcode [cmplz-cookies].
   Markup: #cmplz-cookies-overview > details.cmplz-dropdown-cookiepolicy
   Non dipendiamo dal CSS del plugin: qui c'è tutto il layout.
   ------------------------------------------------------------------ */
.cookie-table{margin-top:1.5rem}

#cmplz-cookies-overview{display:grid;gap:.6rem}

#cmplz-cookies-overview details{
  background:#fff;border:1px solid var(--border);
  border-left:2px solid var(--gold);border-radius:var(--radius,4px)
}
#cmplz-cookies-overview details[open]{background:var(--bg-alt)}

#cmplz-cookies-overview summary{
  display:block;cursor:pointer;list-style:none;padding:.9rem 1rem
}
#cmplz-cookies-overview summary::-webkit-details-marker,
#cmplz-cookies-overview summary::marker{display:none;content:""}
#cmplz-cookies-overview summary>div{
  display:grid;grid-template-columns:minmax(0,1fr) 16px;gap:.75rem;align-items:start
}
#cmplz-cookies-overview summary h3{
  grid-column:1;margin:0;font-family:var(--font-head);font-weight:700;
  font-size:1rem;line-height:1.25;letter-spacing:-.01em;color:var(--text)
}
#cmplz-cookies-overview summary p{
  grid-column:1;margin:.3rem 0 0;font-size:.86rem;line-height:1.5;color:var(--text-muted)
}
#cmplz-cookies-overview summary>div::after{
  content:"";grid-column:2;grid-row:1;justify-self:end;margin-top:.3rem;
  width:8px;height:8px;border-right:2px solid var(--gold-dim);
  border-bottom:2px solid var(--gold-dim);transform:rotate(45deg);
  transition:transform .2s
}
#cmplz-cookies-overview details[open] summary>div::after{transform:rotate(-135deg)}
#cmplz-cookies-overview summary input,
#cmplz-cookies-overview summary label{display:none}

#cmplz-cookies-overview .cmplz-service-description,
#cmplz-cookies-overview .cmplz-sharing-data{display:block;width:auto;padding:0 1rem}
#cmplz-cookies-overview .cookies-per-purpose{padding:0 1rem}
#cmplz-cookies-overview details>*:last-child{padding-bottom:1.1rem}

#cmplz-cookies-overview h4{
  margin:1rem 0 .3rem;font-family:var(--font-body);font-weight:600;
  font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;color:var(--gold-dim)
}
#cmplz-cookies-overview p{
  margin:0;font-size:.9rem;line-height:1.65;color:var(--text-muted)
}

/* Righe cookie: etichetta a sinistra, valore a destra. Regge i 360px. */
#cmplz-cookies-overview .cookies-per-purpose{
  display:grid;grid-template-columns:5.25rem minmax(0,1fr);
  gap:.28rem .9rem;align-items:start
}
#cmplz-cookies-overview .cookies-per-purpose .purpose{grid-column:1/-1}
#cmplz-cookies-overview .cookies-per-purpose h5{
  margin:0;font-family:var(--font-body);font-weight:600;font-size:.68rem;
  letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);line-height:1.6
}
#cmplz-cookies-overview .name,
#cmplz-cookies-overview .retention,
#cmplz-cookies-overview .function{
  min-width:0;font-size:.88rem;line-height:1.55;color:var(--text);
  overflow-wrap:anywhere
}
#cmplz-cookies-overview .name{font-weight:600}
#cmplz-cookies-overview .function{margin-bottom:.7rem}
#cmplz-cookies-overview a{
  color:var(--text);font-weight:500;border-bottom:1px solid var(--gold)
}
#cmplz-cookies-overview a:hover{color:var(--gold-dim)}

@media(max-width:768px){
  .legal-doc{padding:1.35rem 1.15rem}
  .legal-block{scroll-margin-top:80px}
  #cmplz-cookies-overview .cookies-per-purpose{grid-template-columns:4.5rem minmax(0,1fr)}
}
