details {
  margin: 1rem 0;
  padding: 1rem;
  border-radius: 8px;
  background: color-mix(in srgb, var(--brand) 5%, white);
  border: 1px solid color-mix(in srgb, var(--brand) 25%, white);
  transition: background .3s ease;
  color: #000;
}
details[open] {
  background: color-mix(in srgb, var(--brand) 10%, white);
}
summary {
  cursor: pointer;
  font-weight: 700;
  list-style: none;
}
summary::-webkit-details-marker {
  display: none;
}
summary::before {
  content: "▸ ";
  font-size: 1rem;
  display: inline-block;
  transform: rotate(0deg);
  transition: transform 0.3s ease;
}
details[open] summary::before {
  transform: rotate(90deg);
}
.cta-box {
  text-align: center;
  margin-top: 2rem;
}
.cta-box a.cta-btn {
  display: inline-block;
  background: var(--brand);
  color: #fff;
  padding: 0.8rem 1.4rem;
  border-radius: 8px;
  text-decoration: none;
  font-weight: 700;
  transition: background 0.3s ease;
}
.cta-box a.cta-btn:hover {
  background: color-mix(in srgb, var(--brand) 80%, black);
}

/* Modalità scura */
html[data-theme="dark"] details {
  background: color-mix(in srgb, var(--brand) 15%, #1a1a1a);
  border-color: color-mix(in srgb, var(--brand) 50%, #1a1a1a);
  color: #fff;
}
html[data-theme="dark"] details[open] {
  background: color-mix(in srgb, var(--brand) 25%, #1a1a1a);
}
html[data-theme="dark"] summary {
  color: #fff;
}
html[data-theme="dark"] .cta-box a.cta-btn {
  background: color-mix(in srgb, var(--brand) 70%, white);
  color: #000;
}
html[data-theme="dark"] .cta-box a.cta-btn:hover {
  background: color-mix(in srgb, var(--brand) 50%, white);
}
