/* =====================================================================
   ARCHICONTRACTOR · Restyle globale delle pagine non ridisegnate
   (landing Bologna/Ferrara, Conto Termico, Preventivo, Privacy, Grazie…)
   Attivo solo con body.ac-legacy (vedi inc/legacy.php). Stessi contenuti e
   struttura di Avada, riportati sulle regole del design system:
   bianco e nero, Satoshi, titoli 64/36/24/20, testo 20, pulsanti neri.
   ===================================================================== */

/* ---------- Colori: solo bianco e nero (le sezioni grigie diventano bianche) ---------- */
body.ac-legacy #main{ --awb-color2: #fff; --awb-color3: #e0e0e0; }

/* ---------- Titoli ---------- */
body.ac-legacy #main :is(.fusion-title, .fusion-text, .content-box-heading, .post-content) :is(h1, h2, h3, h4, h5, h6),
body.ac-legacy #main :is(h1, h2, h3, h4, h5, h6).fusion-title-heading{
  font-family: var(--ac-font) !important; font-weight: 400 !important;
  letter-spacing: 0 !important; text-transform: none !important; font-style: normal !important;
  margin-top: 0 !important;
}
body.ac-legacy #main :is(.fusion-title, .fusion-text, .post-content) h1, body.ac-legacy #main h1.fusion-title-heading{ font-size: var(--ac-fs-64) !important; line-height: 1 !important; }
body.ac-legacy #main :is(.fusion-title, .fusion-text, .post-content) h2, body.ac-legacy #main h2.fusion-title-heading{ font-size: var(--ac-fs-36) !important; line-height: 1.1 !important; }
body.ac-legacy #main :is(.fusion-title, .fusion-text, .post-content) h3, body.ac-legacy #main h3.fusion-title-heading{ font-size: var(--ac-fs-24) !important; line-height: 1.2 !important; }
body.ac-legacy #main :is(.fusion-title, .fusion-text, .post-content) :is(h4, h5), body.ac-legacy #main :is(h4, h5).fusion-title-heading{ font-size: var(--ac-fs-20) !important; line-height: 1.3 !important; font-weight: 500 !important; }
body.ac-legacy #main :is(.fusion-title, .fusion-text, .post-content) h6, body.ac-legacy #main h6.fusion-title-heading{ font-size: var(--ac-fs-16) !important; line-height: 1.375 !important; }
body.ac-legacy #main .fusion-title{ margin-bottom: clamp(12px, 1.389vw, 24px) !important; }
body.ac-legacy #main .fusion-title .title-sep-container, body.ac-legacy #main .fusion-title .awb-title-spacer{ display: none !important; }

/* ---------- Testo ---------- */
body.ac-legacy #main :is(.fusion-text, .content-container, .post-content) :is(p, li, span, a, b, strong, em){
  font-family: var(--ac-font) !important; letter-spacing: 0 !important; text-transform: none !important;
}
body.ac-legacy #main :is(.fusion-text, .content-container) :is(p, li),
body.ac-legacy #main .fusion-text{ font-size: var(--ac-fs-20) !important; line-height: 1.5 !important; }
body.ac-legacy #main .fusion-text :is(span, a, b, strong, em):not(.fusion-button, .fusion-button *){ font-size: inherit !important; line-height: inherit !important; }
body.ac-legacy #main :is(.fusion-text, .content-container) :is(b, strong){ font-weight: 600 !important; }
body.ac-legacy #main .fusion-text a:not(.fusion-button){ color: inherit !important; text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 3px; }
body.ac-legacy #main .fusion-text ul, body.ac-legacy #main .fusion-text ol{ padding-left: 1.4em; }
body.ac-legacy #main .fusion-text li{ margin-bottom: .4em; }

/* Colori del testo: nero, bianco solo dentro le sezioni con foto di sfondo */
body.ac-legacy #main .fusion-fullwidth:not([data-bg]):not([style*="background-image"]) :is(h1,h2,h3,h4,h5,h6,p,li,span,b,strong,a):not(.fusion-button, .fusion-button *, .ac-on-dark *){ color: var(--ac-black) !important; }
/* Blocchi con sfondo scuro (segnati da ac-legacy.js) */
body.ac-legacy #main .ac-on-dark :is(h1,h2,h3,h4,h5,h6,p,li,span,b,strong,a):not(.fusion-button, .fusion-button *){ color: var(--ac-white) !important; }
body.ac-legacy #main .ac-on-dark .fusion-button{ background: var(--ac-white) !important; color: var(--ac-black) !important; }
body.ac-legacy #main .fusion-fullwidth:is([data-bg], [style*="background-image"]) :is(h1,h2,h3,h4,h5,h6,p,li,span,b,strong):not(.fusion-button, .fusion-button *){ color: var(--ac-white) !important; }

/* ---------- Pulsanti: rettangoli neri del design system (bianchi sulle foto) ---------- */
body.ac-legacy #main .fusion-button{
  --awb-button_gradient_top_color: #000; --awb-button_gradient_bottom_color: #000;
  --awb-button_gradient_top_color_hover: #1a1a1a; --awb-button_gradient_bottom_color_hover: #1a1a1a;
  --awb-button_accent_color: #fff; --awb-button_accent_hover_color: #fff;
  background: var(--ac-black) !important; color: var(--ac-white) !important;
  border: 0 !important; border-radius: 0 !important; box-shadow: none !important;
  min-height: var(--ac-btn-h); padding: 12px 24px !important; line-height: 1.2 !important;
  display: inline-flex !important; align-items: center; justify-content: center; gap: 12px;
}
body.ac-legacy #main .fusion-button:hover{ background: #1a1a1a !important; }
body.ac-legacy #main .fusion-button :is(.fusion-button-text, i){
  color: inherit !important; font-family: var(--ac-font) !important; font-size: var(--ac-fs-20) !important;
  font-weight: 400 !important; letter-spacing: 0 !important; text-transform: none !important; line-height: 1.2 !important;
}
body.ac-legacy #main .fusion-fullwidth:is([data-bg], [style*="background-image"]) .fusion-button{ background: var(--ac-white) !important; color: var(--ac-black) !important; }
body.ac-legacy #main .fusion-fullwidth:is([data-bg], [style*="background-image"]) .fusion-button:hover{ background: #e0e0e0 !important; }

/* ---------- Separatori: linee sottili nere ---------- */
body.ac-legacy #main .fusion-separator .fusion-separator-border{ border-color: rgba(0,0,0,.2) !important; border-top-width: 1px !important; border-bottom-width: 0 !important; }
body.ac-legacy #main .fusion-separator .icon-wrapper{ display: none !important; }

/* ---------- Icone (box e icone singole): nere, senza cerchi colorati ---------- */
body.ac-legacy #main :is(.fontawesome-icon, .content-box-column .icon i, .fusion-content-boxes i){
  color: var(--ac-black) !important; background: transparent !important; border-color: var(--ac-black) !important;
  box-shadow: none !important;
}
body.ac-legacy #main .content-box-column .icon > span, body.ac-legacy #main .content-box-column .icon .fa{ background-color: transparent !important; border: 1px solid var(--ac-black) !important; }
body.ac-legacy #main .content-box-column .heading{ margin-bottom: 12px !important; }
body.ac-legacy #main .content-box-heading{ font-size: var(--ac-fs-24) !important; line-height: 1.2 !important; color: var(--ac-black) !important; }

/* ---------- Gallerie e immagini: spigoli vivi, niente effetti ---------- */
body.ac-legacy #main :is(.fusion-gallery, .fusion-imageframe) img{ border-radius: 0 !important; }
body.ac-legacy #main .fusion-imageframe{ border-radius: 0 !important; box-shadow: none !important; }

/* ---------- Moduli: campi sottolineati, etichette piccole sopra ---------- */
body.ac-legacy #main .fusion-form .fusion-form-field{ margin-bottom: 18px !important; }
body.ac-legacy #main .fusion-form .fusion-form-label-wrapper label,
body.ac-legacy #main .fusion-form .fusion-form-field > label{ font-family: var(--ac-font) !important; font-size: var(--ac-fs-16) !important; font-weight: 400 !important; color: inherit !important; letter-spacing: 0 !important; text-transform: none !important; }
body.ac-legacy #main .fusion-form :is(input.fusion-form-input:not([type="checkbox"]):not([type="radio"]), textarea.fusion-form-input, select.fusion-form-input){
  background: transparent !important; color: inherit !important; border: 0 !important; border-bottom: 1px solid currentColor !important;
  border-radius: 0 !important; box-shadow: none !important; padding: 6px 0 !important; height: auto !important; min-height: 44px;
  font-family: var(--ac-font) !important; font-size: var(--ac-fs-20) !important;
}
body.ac-legacy #main .fusion-form textarea.fusion-form-input{ resize: none !important; overflow: hidden !important; min-height: 88px; }
body.ac-legacy #main .fusion-form :is(input, textarea, select):focus{ outline: none; border-bottom-width: 2px !important; }
body.ac-legacy #main .fusion-form .fusion-form-submit-field .fusion-button{ width: 100%; }

/* ---------- Testo semplice (Privacy): colonna leggibile ---------- */
body.ac-legacy-plain #content{ max-width: 54em; margin-left: 0; padding-top: clamp(36px, 2.778vw, 48px); padding-bottom: clamp(48px, 5.556vw, 96px); }
body.ac-legacy-plain #main .post-content :is(p, li){ font-size: var(--ac-fs-20) !important; line-height: 1.5 !important; }
body.ac-legacy-plain #main .post-content h1{ margin-bottom: clamp(36px, 4.167vw, 72px) !important; }
body.ac-legacy-plain #main .post-content h2{ margin: clamp(36px, 4.167vw, 72px) 0 18px !important; padding-top: 18px; border-top: 1px solid var(--ac-black); }
body.ac-legacy-plain #main .post-content h3{ margin: 36px 0 12px !important; }
body.ac-legacy-plain #main .post-content a{ color: inherit !important; text-decoration: underline; text-underline-offset: 3px; }

/* Pulsanti uno sotto l'altro: un po' d'aria */
body.ac-legacy #main .fusion-button-wrapper{ margin-block: 6px !important; }
