/*! 2pweb-consenso | pagine Privacy policy e Cookie policy | 2P Web https://www.2pweb.it/ */
/*
 * Porting di src/styles/legal.css di soimm.com. Testi e titoli usano i font e le dimensioni
 * del tema del sito (le pagine devono sembrare pagine del sito); solo indice, riquadri e
 * tabelle hanno colori propri, dalle stesse variabili del banner (consenso.css).
 */
.p2wc-legal { max-width: 860px; margin: 0 auto; text-align: left; }
.p2wc-legal .p2wc-legal-section { scroll-margin-top: 120px; }
.p2wc-legal .p2wc-legal-section h2 { margin-top: 44px; }
.p2wc-legal .p2wc-legal-section:first-child h2 { margin-top: 0; }
.p2wc-legal ul { padding-left: 1.4em; }
.p2wc-legal a { text-decoration: underline; text-underline-offset: 3px; }

/* Indice */
.p2wc-legal .p2wc-legal-toc {
  margin: 0 0 40px;
  padding: 22px 26px;
  background: var(--p2wc-crema, #f8f7f5);
  border: 1px solid var(--p2wc-bordo, #e9e3dc);
  border-radius: var(--p2wc-raggio, 12px);
}
.p2wc-legal .p2wc-legal-toc-title {
  font-size: 11.5px;
  font-weight: 700;
  letter-spacing: 1.6px;
  text-transform: uppercase;
  color: var(--p2wc-primario, #7B5B3A);
  margin: 0 0 12px;
}
.p2wc-legal .p2wc-legal-toc ol {
  margin: 0;
  padding-left: 1.5em;
  list-style: decimal;
  columns: 2;
  column-gap: 36px;
  font-size: 14.5px;
  line-height: 1.5;
}
.p2wc-legal .p2wc-legal-toc li { break-inside: avoid; padding: 3px 0 3px 2px; margin: 0; }
.p2wc-legal .p2wc-legal-toc li::marker { color: var(--p2wc-accento, #A68038); font-weight: 600; }
.p2wc-legal .p2wc-legal-toc a { color: inherit; text-decoration: none; }
.p2wc-legal .p2wc-legal-toc a:hover { color: var(--p2wc-primario, #7B5B3A); text-decoration: underline; }
@media (max-width: 767px) {
  .p2wc-legal .p2wc-legal-toc { padding: 18px 20px; margin-bottom: 28px; }
  .p2wc-legal .p2wc-legal-toc ol { columns: 1; }
}

/* Titolare */
.p2wc-legal .p2wc-legal-titolare {
  padding: 20px 24px;
  border: 1px solid var(--p2wc-bordo, #e9e3dc);
  border-left: 4px solid var(--p2wc-accento, #A68038);
  border-radius: 0 var(--p2wc-raggio, 12px) var(--p2wc-raggio, 12px) 0;
  background: #fff;
}
.p2wc-legal .p2wc-legal-titolare p { margin: 0 0 4px; }
.p2wc-legal .p2wc-legal-titolare p:last-child { margin-bottom: 0; }

.p2wc-legal .p2wc-legal-updated {
  margin-top: 48px;
  padding-top: 18px;
  border-top: 1px solid var(--p2wc-bordo, #e9e3dc);
  font-size: 13.5px;
  opacity: 0.85;
}

/* Elenco cookie */
.p2wc-legal .p2wc-legal-cat { margin: 28px 0 0; }
.p2wc-legal .p2wc-legal-cat h3 { display: flex; align-items: center; flex-wrap: wrap; gap: 6px 0; }
.p2wc-legal .p2wc-legal-service {
  margin: 18px 0 0;
  padding: 18px 20px;
  border: 1px solid var(--p2wc-bordo, #e9e3dc);
  border-radius: var(--p2wc-raggio, 12px);
  background: #fff;
}
.p2wc-legal .p2wc-legal-service h4 { margin: 0 0 10px; font-size: 1.1em; font-weight: 700; line-height: 1.35; text-transform: none; letter-spacing: normal; }
.p2wc-legal .p2wc-legal-meta { margin: 0 0 14px; display: grid; gap: 6px; font-size: 0.92em; line-height: 1.6; }
.p2wc-legal .p2wc-legal-meta > div { display: grid; grid-template-columns: 170px 1fr; gap: 12px; }
.p2wc-legal .p2wc-legal-meta dt { font-weight: 700; color: var(--p2wc-tenue, #6b5745); margin: 0; }
.p2wc-legal .p2wc-legal-meta dd { margin: 0; }
@media (max-width: 640px) {
  .p2wc-legal .p2wc-legal-meta > div { grid-template-columns: 1fr; gap: 0; }
}

.p2wc-legal .p2wc-legal-table { width: 100%; border-collapse: collapse; font-size: 0.88em; line-height: 1.5; margin: 0; border: 0; }
.p2wc-legal .p2wc-legal-table caption { text-align: left; font-size: 12px; font-weight: 700; letter-spacing: 1px; text-transform: uppercase; color: var(--p2wc-tenue, #6b5745); padding: 0 0 6px; caption-side: top; }
.p2wc-legal .p2wc-legal-table th { text-align: left; font-weight: 700; background: var(--p2wc-crema, #f8f7f5); padding: 8px 10px; border: 0; border-bottom: 1px solid var(--p2wc-bordo, #e9e3dc); }
.p2wc-legal .p2wc-legal-table td { padding: 8px 10px; border: 0; border-bottom: 1px solid var(--p2wc-bordo, #e9e3dc); vertical-align: top; background: none; }
.p2wc-legal .p2wc-legal-table tr:last-child td { border-bottom: 0; }
.p2wc-legal .p2wc-legal-table code { font-size: 0.93em; background: var(--p2wc-crema, #f8f7f5); padding: 1px 5px; border-radius: 4px; word-break: break-word; }
@media (max-width: 640px) {
  .p2wc-legal .p2wc-legal-table thead { display: none; }
  .p2wc-legal .p2wc-legal-table caption { display: block; width: 100%; }
  .p2wc-legal .p2wc-legal-table, .p2wc-legal .p2wc-legal-table tbody, .p2wc-legal .p2wc-legal-table tr, .p2wc-legal .p2wc-legal-table td { display: block; width: 100%; }
  .p2wc-legal .p2wc-legal-table tr { padding: 8px 0; border-bottom: 1px solid var(--p2wc-bordo, #e9e3dc); }
  .p2wc-legal .p2wc-legal-table tr:last-child { border-bottom: 0; }
  .p2wc-legal .p2wc-legal-table td { display: grid; grid-template-columns: 76px 1fr; gap: 10px; padding: 3px 0; border: 0; }
  .p2wc-legal .p2wc-legal-table td::before { content: attr(data-label); font-weight: 700; color: var(--p2wc-tenue, #6b5745); }
}
