/* Le pagine legali e la pagina di grazie nello stile della home: fondo crema, testata blu notte col filo ambra,
   titoli in Libre Bodoni, testo in Public Sans (da Google Fonts, come la home). */
:root { --ambra: #FEB42F; --ambra-scura: #8A5A00; --crema: #FFFDCD; --azzurro: #30E9FE; --notte: #0D0552;
  --notte-fonda: #080338; --testo: #0D0552; --tenue: #4A4770; --bordo: #E6E3C9; --bianco: #FFFFFF;
  --titolo: "Libre Bodoni", "Bodoni 72", Didot, Georgia, serif;
  --corpo: "Public Sans", "Segoe UI", system-ui, -apple-system, sans-serif;
  --g1: 32px; --g2: 21px; --g3: 16px; --g4: 13px; }
@media (min-width: 900px) { :root { --g1: 44px; --g2: 26px; --g3: 17px; --g4: 13.5px; } }

* { box-sizing: border-box; }
html { background: var(--notte-fonda); }
body { margin: 0; background: var(--crema); font-family: var(--corpo); color: var(--testo);
  -webkit-font-smoothing: antialiased; line-height: 1.55; }
.wrap { background: var(--crema); min-height: 100vh; display: flex; flex-direction: column; }
:root { --gut: max(16px, env(safe-area-inset-left, 0px)); }
@media (min-width: 768px) { :root { --gut: max(24px, calc((100% - 720px) / 2)); } }
h1, h2, h3 { margin: 0; font-family: var(--titolo); font-weight: 700; }
a { color: var(--ambra-scura); }

/* la testata: blu notte, filo ambra sotto, marchio a sinistra */
.testata { position: sticky; top: 0; z-index: 30; display: flex; align-items: center; justify-content: space-between;
  gap: 14px; padding: 12px var(--gut); background: var(--notte);
  box-shadow: inset 0 -3px 0 0 var(--ambra), 0 6px 18px rgba(13, 5, 82, 0.22); }
.testata-marchio { display: flex; align-items: center; gap: 10px; text-decoration: none; }
.tm-segno { display: block; width: 34px; height: 34px; border-radius: 50%; }
.tm-nome { font-family: var(--titolo); font-size: 17px; font-weight: 700; color: #FFFFFF; white-space: nowrap; }
.tm-nome em { color: var(--ambra); font-style: italic; }
@media (min-width: 900px) { .tm-nome { font-size: 21px; } }
.testata-cta { display: none; align-items: center; justify-content: center; height: 42px; padding: 0 20px;
  background: var(--ambra); color: var(--notte); font-size: 15px; font-weight: 800; border-radius: 999px;
  text-decoration: none; white-space: nowrap; }
.testata-cta:hover { background: #FFC24F; }
.testata-cta:focus-visible { outline: 3px solid var(--azzurro); outline-offset: 2px; }
@media (min-width: 900px) { .testata-cta { display: flex; } }

/* il corpo */
.corpo { flex: 1 0 auto; padding: 34px var(--gut) 54px var(--gut); }
.filetto { width: 40px; height: 3px; background: var(--ambra); }
.corpo h1 { font-size: var(--g1); line-height: 1.08; margin-top: 16px; text-wrap: balance; }
.aggiornato { font-size: var(--g4); color: var(--tenue); margin-top: 10px; }
.corpo h2 { font-size: var(--g2); margin-top: 34px; line-height: 1.15; }
.corpo p, .corpo ul, .corpo ol { font-size: var(--g3); color: var(--tenue); margin-top: 12px; }
.corpo ul, .corpo ol { padding-left: 20px; }
.corpo li { margin-top: 6px; }
.corpo strong { color: var(--testo); font-weight: 700; }
.nota { background: var(--bianco); border: 1px solid var(--bordo); border-radius: 12px; padding: 16px 18px;
  font-size: var(--g3); color: var(--tenue); margin-top: 20px; }

/* il piede: blu notte fondo */
.piede { padding: 38px var(--gut) 44px var(--gut); background: var(--notte-fonda); color: var(--crema); }
.piede-marchio { display: flex; align-items: center; gap: 9px; }
.piede-marchio img { display: block; width: 32px; height: 32px; border-radius: 50%; }
.piede-marchio span { font-family: var(--titolo); font-size: 18px; font-weight: 700; color: #FFFFFF; }
.piede-marchio span em { color: var(--ambra); font-style: italic; }
.piede-scrivi { font-size: var(--g4); margin: 14px 0 0 0; }
.piede a { color: var(--azzurro); text-decoration: underline; }
.piede-link { display: flex; flex-wrap: wrap; gap: 8px 16px; margin-top: 16px; font-size: var(--g4); }
