/* ==========================================================================
   Pagine legali (privacy policy, cookie policy) e pagina 404.
   Misure riprese da post-2652.css / post-2663.css e dal tema Hello Elementor
   (testo 16px/24px, h1 51px, h2 32px, h3 31px peso 500, margini 8px/16px).
   ========================================================================== */

/* --- Testo legale --------------------------------------------------------- */
.legal {
  padding: 150px 0 102px;
}
.legal__inner {
  max-width: var(--container);
  margin-inline: auto;
}
.legal h1,
.legal h2,
.legal h3 {
  line-height: 1.2;
  overflow-wrap: break-word;
}
.legal h1 { font-size: 51px; font-weight: 800; margin: 0 0 16px; }
.legal h2 { font-size: 32px; font-weight: 700; margin: 8px 0 16px; }
.legal h3 { font-size: 31px; font-weight: 500; font-style: italic; margin: 8px 0 16px; }
.legal p { margin: 0 0 .9em; }
.legal ul { margin: 0; padding-left: 40px; }
.legal a {
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 3px;
  overflow-wrap: anywhere;
  transition: color .3s;
}
.legal a:hover,
.legal a:focus-visible { text-decoration-thickness: 2px; }

/* Privacy: titoli e link indaco (CSS personalizzato del widget nell'originale) */
.legal--privacy { padding-top: 188px; } /* 150px + riga vuota iniziale dell'originale */
.legal--privacy :is(h1, h2, h3) { color: var(--c-indigo); }
.legal--privacy a { color: var(--c-indigo); }
.legal--privacy a:hover,
.legal--privacy a:focus-visible { color: var(--c-violet); }

/* Cookie: titoli e link bianchi (stile globale del kit, come il widget CookieYes) */
.legal--cookie { padding: 168px 0 124px; }
.legal--cookie a { color: var(--c-accent); }
.legal--cookie h2 { margin-top: 46px; }
.legal--cookie h3 { margin-top: 35px; }
.legal--cookie .legal__h2--prefs { margin-bottom: 20px; }
.legal__dates { margin-bottom: 0; }
.legal .legal__credit { margin-top: 38px; }

@media (max-width: 1180px) {
  .legal__inner { padding-inline: var(--gutter); }
}
@media (max-width: 1024px) {
  .legal__inner { padding-inline: 5%; } /* allineato al logo dell'header */
}
@media (max-width: 767px) {
  .legal ul { padding-left: 28px; }
}

/* --- Pagina 404 ------------------------------------------------------------ */
/* la sezione riempie lo spazio tra header e footer: il footer resta in fondo alla finestra */
body.page-404 { display: flex; flex-direction: column; min-height: 100vh; }
body.page-404 .site-main { flex: 1 0 auto; display: grid; }
.notfound {
  display: grid;
  place-items: center;
  padding: calc(var(--header-h) + 70px) var(--gutter) 110px;
  text-align: center;
}
.notfound__inner { max-width: 760px; }
.notfound__code {
  display: flex;
  align-items: baseline;
  justify-content: center;
  gap: .08em;
  margin: 0 0 24px;
  color: var(--c-accent);
  font-size: 170px;
  font-weight: 800;
  font-style: italic;
  line-height: 1;
}
/* la "0" è una pila di sassi, come nel logo */
.notfound__stones {
  display: block; /* senza testo: la sua linea di base è il bordo inferiore → poggia sulla base dei "4" */
  width: .74em;
}
.notfound__stones i { display: block; margin-inline: auto; border-radius: 50%; }
.notfound__stones i:nth-child(1) { width: .26em; height: .15em; background: var(--c-secondary); }
.notfound__stones i:nth-child(2) { width: .5em; height: .25em; margin-top: -.02em; background: var(--c-violet); }
.notfound__stones i:nth-child(3) { width: .74em; height: .34em; margin-top: -.03em; background: var(--c-accent); }
.notfound h1 { margin: 0 0 16px; }
.notfound__text { margin: 0 auto 40px; max-width: 34em; font-size: 20px; line-height: 1.5; }
.notfound__links {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 20px;
}

@media (max-width: 767px) {
  .notfound { padding-top: calc(var(--header-h) + 50px); padding-bottom: 80px; }
  .notfound__code { font-size: 120px; margin-bottom: 16px; }
  .notfound h1 { font-size: 40px; }
  .notfound__text { font-size: 18px; margin-bottom: 32px; }
  .notfound__links { flex-direction: column; align-items: center; gap: 16px; }
  .notfound__links .btn { min-width: 240px; }
}
