/* IlCarrozziere – contenuti Fusion Builder convertiti in HTML semplice.
   Usa le variabili del tema, con valori di riserva. */

.ilc-fc-section { --ilc-fc-gap: 32px; margin: 0 0 1em; }
.ilc-fc-row { display: flex; flex-wrap: wrap; gap: 0 var(--ilc-fc-gap); }
.ilc-fc-col { --ilc-fc-w: 1; flex: 0 0 calc(var(--ilc-fc-w) * 100% - (1 - var(--ilc-fc-w)) * var(--ilc-fc-gap)); min-width: 0; }
.ilc-fc-col > :last-child, .ilc-fc-text > :last-child, .ilc-fc-box__body > :last-child, .ilc-fc-alert > :last-child { margin-bottom: 0; }
.ilc-fc-col:empty { display: none; }
.ilc-fc-section iframe, .ilc-fc-section video { max-width: 100%; }
.ilc-fc-section a { overflow-wrap: anywhere; }

/* Testo incollato da Word o dal vecchio builder: si ignorano i caratteri forzati. */
.ilc-fc-section [style*="font-family"] { font-family: inherit !important; }
.ilc-fc-text h2:empty, .ilc-fc-text p:empty, .ilc-fc-text div:empty { display: none; }

.ilc-fc-align-left { text-align: left; }
.ilc-fc-align-center { text-align: center; }
.ilc-fc-align-right { text-align: right; }

/* Pulsante */
.ilc-fc-button { margin: 0 0 1em; }
.ilc-btn.ilc-fc-btn { display: inline-block; padding: 14px 22px; line-height: 1.3; font-family: var(--sans, sans-serif); text-decoration: none; color: var(--paper, #fff); max-width: 100%; }
.ilc-btn.ilc-fc-btn:hover { color: #fff; }

/* Riquadri */
.ilc-fc-boxes { display: grid; grid-template-columns: repeat(var(--ilc-fc-cols, 1), minmax(0, 1fr)); gap: 24px; margin: 0 0 1em; }
.ilc-fc-box { border-left: 3px solid var(--acc, #C21F1A); padding: 4px 0 4px 18px; }
.ilc-fc-box__title { font-family: var(--serif, serif); font-size: 22px; font-weight: 700; line-height: 1.2; color: var(--ink, #17160F); margin: 0 0 8px; }
.ilc-fc-box__title a { color: inherit; text-decoration: none; }
.ilc-fc-box__title a:hover { color: var(--acc, #C21F1A); }
.ilc-fc-box__more { margin: 8px 0 0; font-family: var(--sans, sans-serif); font-size: 13px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; }

/* Immagini */
.ilc-fc-image { margin: 0 0 1em; }
.ilc-fc-image img { display: inline-block; max-width: 100%; height: auto; }
.ilc-fc-image a { display: inline-block; }

/* Elenco con spunte */
.ilc-fc-checklist { list-style: none; padding: 0; margin: 0 0 1em; }
.ilc-fc-checklist li { position: relative; padding-left: 28px; margin-bottom: .4em; }
.ilc-fc-checklist li::before { content: "✓"; position: absolute; left: 0; top: 0; font-family: var(--sans, sans-serif); font-weight: 800; color: var(--acc, #C21F1A); }

/* Titolo */
.ilc-fc-title { font-family: var(--serif, serif); font-weight: 700; line-height: 1.15; letter-spacing: -.01em; color: var(--ink, #17160F); margin: 0 0 .6em; text-wrap: balance; }
h2.ilc-fc-title { font-size: clamp(26px, 3vw, 32px); }
h3.ilc-fc-title { font-size: 24px; }
h4.ilc-fc-title, h5.ilc-fc-title, h6.ilc-fc-title { font-size: 20px; }

/* Avviso */
.ilc-fc-alert { background: var(--sand, #EAE6DC); border-left: 4px solid var(--acc, #C21F1A); padding: 14px 18px; margin: 0 0 1em; font-family: var(--sans, sans-serif); font-size: 15px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; color: var(--ink, #17160F); }

@media (max-width: 781px) {
	.ilc-fc-col { flex-basis: 100%; }
	.ilc-fc-boxes { grid-template-columns: minmax(0, 1fr); }
}
