/* Gruppo "prodotto": /caratteristiche/, /prezzi/, /banche-dati/ */

/* Prezzo in evidenza */
.cr-pricing .cr-price { font-family: var(--wp--preset--font-family--heading, inherit); font-size: clamp(2.5rem, 6vw, 3.25rem); font-weight: 800; line-height: 1; letter-spacing: -.02em; color: var(--wp--preset--color--ink); margin: 0; }
.cr-pricing .cr-price-num { white-space: nowrap; }
.cr-pricing .cr-price small { white-space: normal; display: inline-block; font-size: 1rem; font-weight: 600; letter-spacing: 0; color: var(--wp--preset--color--muted); margin-left: .25rem; }
.cr-pricing .cr-price-note { color: var(--wp--preset--color--muted); font-size: var(--wp--preset--font-size--small); margin: 0; }
.cr-pricing-card.is-featured { border: 2px solid var(--wp--preset--color--primary); box-shadow: 0 16px 40px rgba(59,75,168,.12); }
.cr-pricing-card > .wp-block-buttons { margin-top: auto !important; width: 100%; }
.cr-pricing-card > .wp-block-buttons .wp-block-button { flex: 1 1 100%; }
.cr-pricing-card > .wp-block-buttons .wp-block-button__link { width: 100%; }
.cr-pricing-card .cr-check-list { margin: 0; }
.cr-pricing-card hr { width: 100%; border: 0; border-top: 1px solid var(--wp--preset--color--line); margin: .25rem 0; }

/* Righe "cosa non paghi" e passi numerati */
.cr-prodotto .cr-step-num { font-family: var(--wp--preset--font-family--heading, inherit); font-weight: 800; font-size: 1.25rem; width: 44px; height: 44px; border-radius: 50%; background: var(--wp--preset--color--primary); color: #fff; display: inline-flex; align-items: center; justify-content: center; margin: 0; }
.cr-prodotto .cr-card h3 { margin: 0; }
.cr-prodotto .cr-card p { margin: 0; }
.cr-prodotto .cr-risk { color: var(--wp--preset--color--muted); font-size: var(--wp--preset--font-size--small); }

/* Tabelle di confronto ed esempi */
.cr-prodotto .wp-block-table { overflow-x: auto; margin-top: var(--wp--preset--spacing--30); }
.cr-prodotto .wp-block-table table { border-collapse: collapse; width: 100%; font-size: var(--wp--preset--font-size--small); }
.cr-prodotto .wp-block-table th { background: var(--wp--preset--color--surface); text-align: left; font-weight: 600; }
.cr-prodotto .wp-block-table th, .cr-prodotto .wp-block-table td { border: 1px solid var(--wp--preset--color--line); padding: 12px 14px; vertical-align: top; }
.cr-prodotto .wp-block-table td:first-child { font-weight: 600; color: var(--wp--preset--color--ink); }
.cr-prodotto .wp-block-table.cr-compare td:last-child { background: #f7f8fd; }

/* FAQ */
.cr-prodotto details.cr-card { height: auto; }
.cr-prodotto details.cr-card summary { cursor: pointer; font-weight: 600; color: var(--wp--preset--color--ink); }
.cr-prodotto details.cr-card[open] summary { margin-bottom: .5rem; }

/* Box "prossimo passo" in fondo alle pagine con testata */
.cr-prodotto .cr-next { height: auto; }
.cr-pricing-card > .cr-badge, .cr-pricing-card > .cr-eyebrow { align-self: flex-start; width: auto; }
.cr-pricing-card .wp-block-separator { width: 100%; max-width: none; border-top: 1px solid var(--wp--preset--color--line); border-bottom: 0; opacity: 1; margin: .25rem 0; }
.cr-prodotto .wp-block-table thead { border-bottom: 0; }
.cr-prodotto-page > h2.wp-block-heading { margin-top: var(--wp--preset--spacing--60); }
@media (max-width: 600px) {
  /* Tabelle impilate: la prima colonna diventa l'etichetta della riga, le altre due affiancate */
  .cr-prodotto .wp-block-table table, .cr-prodotto .wp-block-table thead, .cr-prodotto .wp-block-table tbody { display: block; }
  .cr-prodotto .wp-block-table tr { display: grid; grid-template-columns: 1fr 1fr; }
  .cr-prodotto .wp-block-table tr > :first-child { grid-column: 1 / -1; }
  .cr-prodotto .wp-block-table thead tr > :first-child:empty { display: none; }
  .cr-prodotto .wp-block-table td:first-child { background: var(--wp--preset--color--surface); }
  .cr-prodotto .wp-block-table thead th:first-child:not(:empty) { display: none; }
  .cr-prodotto .wp-block-table th, .cr-prodotto .wp-block-table td { padding: 8px 10px; }
}
.cr-pricing .cr-price { display: flex; flex-wrap: wrap; align-items: baseline; column-gap: .4rem; row-gap: .35rem; }
.cr-pricing .cr-price small { margin-left: 0; line-height: 1.3; }
