@charset "UTF-8";
/** Start Block Kit CSS: 71-3-d415519effd9e11f35d2438c58ea7ebf **/

.envato-block__preview{overflow: visible;}

/** End Block Kit CSS: 71-3-d415519effd9e11f35d2438c58ea7ebf **/

.elementor-208 .elementor-element.elementor-element-7cd821ce { display: none; }

.page-header .entry-title, .site-footer .footer-inner, .site-footer:not(.dynamic-footer), .site-header .header-inner, .site-header:not(.dynamic-header), body:not([class*=elementor-page-]) .site-main {
	
	    margin-inline-end: auto;
	
	    margin-inline-start: auto;
	
	    width: 100%;
}


.elementor-208 .elementor-element.elementor-element-60d29322 .elementor-heading-title {
    font-family: "Libre Baskerville", serif;
    font-size: clamp(30px, 7vw, 46px);
    font-weight: 400;
    text-transform: none;
    font-style: normal;
    text-decoration: none;
    line-height: 1.25em;
    letter-spacing: 0px;
    word-spacing: 0em;
    color: #15233A;
    margin-top: 100px;
    overflow-wrap: break-word;
    hyphens: auto;
}

a {
    background-color: transparent;
    color: #15233A;
    text-decoration: none;
}

/* ==== TMC Avvocati Associati — CSS aggiuntivo (novembre 2026) ==== */

/*
 * TMC Avvocati Associati — pulizia grafica leggera
 * Da incollare in WordPress: Aspetto › Personalizza › CSS aggiuntivo.
 * Porta il blu notte al posto del verde-nero e non cambia caratteri né impaginazione: rende più ordinati e leggibili
 * alcuni elementi e dà lo stile ai blocchi nuovi (In breve, Domande frequenti, modulo contatti).
 */

:root {
  /* Tavolozza: si cambia solo qui (e in Elementor › Impostazioni sito › Colori globali) */
  --tmc-scuro: #15233a;          /* blu notte, al posto del verde-nero #111916: menu, footer, sezioni scure, pulsanti */
  --tmc-scuro-rgb: 21 35 58;     /* lo stesso, per le trasparenze */
  --tmc-scuro-2: #24375a;        /* pulsanti al passaggio del mouse */
  --tmc-testo: #27303d;
  --tmc-testo-2: #4a5566;        /* testi secondari */
  --tmc-grigio: #5b6470;         /* date, note */
  --tmc-grigio-chiaro: #98a2b0;  /* frecce, dettagli */
  --tmc-linea: #d3d9e1;
  --tmc-bordo: #e4e8ee;
  --tmc-chiaro: #f3f5f8;         /* fondo delle schede e delle sezioni chiare */
  --tmc-campo: #7a8494;          /* bordo dei campi del modulo */
  --tmc-fuoco: #1a73e8;
}

/* 1. Testo più leggibile */
body { -webkit-font-smoothing: antialiased; text-rendering: optimizeLegibility; }
.site-main .elementor-widget-text-editor p,
.site-main .elementor-widget-text-editor li { line-height: 1.65; }
.site-main .elementor-widget-text-editor p:not(:last-child) { margin-bottom: 0.9em; }

/* 2. Home, “Il cliente al centro”: 6 schede su una griglia regolare */
.elementor-element.elementor-element-b6f50b0 {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 40px 32px;
  padding-left: clamp(16px, 6vw, 100px) !important;
  padding-right: clamp(16px, 6vw, 100px) !important;
}
.elementor-element.elementor-element-b6f50b0 > .e-con {
  --width: auto;
  width: auto !important;
  max-width: none !important;
  margin: 0 !important;
}
@media (max-width: 1024px) {
  .elementor-element.elementor-element-b6f50b0 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 767px) {
  .elementor-element.elementor-element-b6f50b0 { grid-template-columns: 1fr; gap: 28px; }
}

/* 3. Home, aree di competenza: niente foto di repertorio dietro le schede */
.elementor-element-3bd424b .e-con::before { background-image: none !important; }
#aree-di-competenza, .tmc-ancora { scroll-margin-top: 110px; }

/* 4. Elenchi a fisarmonica (Aree di intervento, Servizi): più leggeri */
.jkit-accordion .card-wrapper {
  margin-bottom: 0 !important;
  border-bottom: 1px solid var(--tmc-linea);
  background: #fff;
}
.jkit-accordion .card-wrapper:first-child { border-top: 1px solid var(--tmc-linea); }
.jkit-accordion .card-header-button {
  background: #fff !important;
  color: var(--tmc-scuro) !important;
  text-transform: none !important;
  font-weight: 600 !important;
  padding: 18px 8px !important;
}
.jkit-accordion .card-header-button svg { fill: currentColor !important; }
.jkit-accordion .card-header-button:hover { background: var(--tmc-chiaro) !important; }
.jkit-accordion .card-expand .card-body,
.jkit-accordion .card-body { padding: 4px 8px 20px !important; line-height: 1.65; }

/* 5. Elenco articoli: pulsanti e filtri nel carattere e nel colore del sito */
.wpr-grid-filters li span,
.wpr-grid-item-date,
.wpr-grid-item-date span { font-family: Lato, sans-serif !important; }
.wpr-grid-filters li span { color: var(--tmc-testo) !important; padding: 4px 2px !important; }
.wpr-grid-filters li .wpr-active-filter { color: var(--tmc-scuro) !important; font-weight: 700; text-decoration: underline; text-underline-offset: 4px; }
.wpr-grid-item-read-more a,
.wpr-grid-item-read-more a span {
  font-family: Lato, sans-serif !important;
  color: var(--tmc-scuro) !important;
  font-weight: 700 !important;
  text-decoration: underline;
  text-underline-offset: 3px;
}
.wpr-load-more-btn {
  font-family: Lato, sans-serif !important;
  background: var(--tmc-scuro) !important;
  color: #fff !important;
  border-radius: 0 !important;
  padding: 14px 28px !important;
  font-size: 16px !important;
}

/* 6. Footer: righe più spaziate */
.elementor-location-footer .elementor-icon-list-text { line-height: 1.5; }
.elementor-element-1b970e81 .elementor-heading-title { line-height: 1.6 !important; }

/* 7. Navigazione da tastiera: contorno sempre visibile */
a:focus-visible, button:focus-visible, summary:focus-visible,
input:focus-visible, select:focus-visible, textarea:focus-visible,
[tabindex]:focus-visible {
  outline: 3px solid var(--tmc-fuoco) !important;
  outline-offset: 3px;
}
.elementor-location-footer a:focus-visible,
.elementor-location-header a:focus-visible { outline-color: #fff !important; }

/* 8. Blocchi nuovi */
.tmc-contenitore { max-width: 1140px; margin: 0 auto; padding: 0 20px; }

.tmc-sottotitolo {
  display: block;
  margin-top: 0.45em;
  font-family: Lato, sans-serif;
  font-size: 0.3em;
  font-weight: 400;
  letter-spacing: 0;
  line-height: 1.3;
}
@media (max-width: 767px) { .tmc-sottotitolo { font-size: 0.45em; } }

.tmc-ruolo {
  margin: 8px 0 0;
  font-family: Lato, sans-serif;
  font-size: 18px;
  color: var(--tmc-grigio);
}

.tmc-bottone {
  display: inline-block;
  padding: 15px 30px;
  background: var(--tmc-scuro);
  color: #fff !important;
  font: 600 16px/1.2 Lato, sans-serif;
  text-decoration: none;
  border: 2px solid var(--tmc-scuro);
  border-radius: 0;
  cursor: pointer;
}
.tmc-bottone:hover { background: var(--tmc-scuro-2); border-color: var(--tmc-scuro-2); }
.tmc-azione { width: 100%; margin-top: 8px; text-align: center; }

.tmc-in-breve {
  margin: 0 0 32px;
  padding: 20px 24px;
  background: var(--tmc-chiaro);
  border-left: 3px solid var(--tmc-scuro);
  font-family: Lato, sans-serif;
  color: var(--tmc-testo);
}
.tmc-in-breve p { margin: 0; font-size: 18px; line-height: 1.6; }
.tmc-in-breve .tmc-in-breve__titolo {
  margin-bottom: 6px;
  font-size: 14px;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--tmc-grigio);
}
.tmc-in-breve .tmc-in-breve__data { margin-top: 10px; font-size: 14px; color: var(--tmc-grigio); }

.tmc-faq, .tmc-modulo {
  padding: 64px 0;
  background: #fff;
  font-family: Lato, sans-serif;
  color: var(--tmc-testo);
}
.tmc-faq h2, .tmc-modulo h2 {
  margin: 0 0 24px;
  font: 600 32px/1.2 Lato, sans-serif;
  color: var(--tmc-scuro);
}
.tmc-faq details { border-bottom: 1px solid var(--tmc-linea); }
.tmc-faq details:first-of-type { border-top: 1px solid var(--tmc-linea); }
.tmc-faq summary {
  position: relative;
  padding: 18px 44px 18px 0;
  font-size: 18px;
  font-weight: 600;
  color: var(--tmc-scuro);
  cursor: pointer;
  list-style: none;
}
.tmc-faq summary::-webkit-details-marker { display: none; }
.tmc-faq summary::after {
  content: "+";
  position: absolute;
  right: 8px;
  top: 50%;
  transform: translateY(-50%);
  font-size: 26px;
  font-weight: 400;
  line-height: 1;
}
.tmc-faq details[open] summary::after { content: "−"; }
.tmc-faq__risposta p { margin: 0 0 20px; max-width: 72ch; font-size: 18px; line-height: 1.65; }

.tmc-modulo { border-top: 1px solid var(--tmc-linea); }
.tmc-modulo > .tmc-contenitore > p { max-width: 72ch; font-size: 18px; line-height: 1.6; margin: 0 0 24px; }
.tmc-campi { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 24px; }
.tmc-campi .tmc-largo { grid-column: 1 / -1; }
@media (max-width: 767px) { .tmc-campi { grid-template-columns: 1fr; } }
.tmc-modulo label { display: block; margin-bottom: 6px; font-size: 16px; font-weight: 600; color: var(--tmc-scuro); }
.tmc-modulo input:not([type="checkbox"]), .tmc-modulo select, .tmc-modulo textarea {
  width: 100%;
  min-height: 48px;
  padding: 10px 12px;
  font: 400 17px/1.4 Lato, sans-serif;
  color: var(--tmc-scuro);
  background: #fff;
  border: 1px solid var(--tmc-campo);
  border-radius: 4px;
}
.tmc-modulo [aria-invalid="true"] { border-color: #b3261e !important; box-shadow: 0 0 0 1px #b3261e; }
.tmc-aiuto { display: block; margin-top: 6px; font-size: 15px; color: var(--tmc-grigio); }
.tmc-consenso { display: flex; gap: 10px; align-items: flex-start; margin: 8px 0 24px; }
.tmc-consenso input { width: 22px; height: 22px; margin-top: 2px; flex: none; accent-color: var(--tmc-scuro); }
.tmc-consenso label { font-weight: 400; }
.tmc-consenso a { color: var(--tmc-scuro); text-decoration: underline; }
.tmc-esito { margin-top: 16px; font-size: 17px; }
.tmc-esito--errore { color: #b3261e; }
.tmc-esito--ok { color: #1f6f43; }


/*
 * TMC Avvocati Associati — dettagli in stile Apple (proposta)
 * Da incollare in WordPress SOTTO pulizia-grafica.css: Aspetto › Personalizza › CSS aggiuntivo.
 *
 * Restano i colori del sito (var(--tmc-scuro)), i caratteri (Libre Baskerville per i titoli, Lato per il testo)
 * e l'impaginazione. Cambiano i dettagli: angoli arrotondati, pulsanti a pillola, menu traslucido
 * che resta in alto, elenchi raggruppati come nelle Impostazioni di iPhone, linee sottili, più aria.
 * Sotto i 768 px: menu a tutto schermo, pulsanti larghi, barra “Chiama · Scrivici” in basso.
 */

/* il colore globale di Elementor segue la tavolozza (in WordPress: cambiarlo anche in Impostazioni sito › Colori globali) */
.elementor-kit-7 { --e-global-color-90e8452: var(--tmc-scuro); }

:root {
  --tmc-raggio: 22px;          /* schede */
  --tmc-raggio-s: 14px;        /* immagini, menu, campi */
  --tmc-pillola: 2px; /* angoli netti, scelta di Luca del 6/11 (prima 980px) */        /* pulsanti */
  --tmc-filo: rgb(var(--tmc-scuro-rgb) / 0.1);
  --tmc-filo-chiaro: rgba(255, 255, 255, 0.14);
  --tmc-ombra: 0 1px 2px rgb(var(--tmc-scuro-rgb) / 0.04), 0 0 0 1px rgb(var(--tmc-scuro-rgb) / 0.06);
  --tmc-ombra-su: 0 18px 40px -12px rgb(var(--tmc-scuro-rgb) / 0.22), 0 0 0 1px rgb(var(--tmc-scuro-rgb) / 0.05);
  --tmc-vetro-scuro: rgb(var(--tmc-scuro-rgb) / 0.94);
  --tmc-vetro-chiaro: rgba(255, 255, 255, 0.86);
}

/* ------------------------------------------------------------------ 1. Testo e titoli */
body { overflow-x: clip; }
.site-main h1, .site-main h2, .site-main h3, .elementor-heading-title { text-wrap: balance; }
.site-main p, .site-main li { text-wrap: pretty; }
.site-main .elementor-heading-title { text-transform: none !important; }
.site-main .elementor-widget-text-editor p,
.site-main .elementor-widget-text-editor li { font-size: max(1em, 16px); }
.site-main h2.elementor-heading-title { letter-spacing: -0.01em; }
.site-main .elementor-widget-divider { --divider-color: var(--tmc-filo) !important; }
::selection { background: rgb(var(--tmc-scuro-rgb) / 0.14); }

/* ------------------------------------------------------------------ 2. Barra del menu: traslucida e sempre in alto */
.elementor-location-header {
  position: sticky;
  top: 0;
  z-index: 100;
}
.elementor-location-header .elementor-element-70ba177e {
  background-color: var(--tmc-vetro-scuro) !important;
  -webkit-backdrop-filter: saturate(180%) blur(20px);
  backdrop-filter: saturate(180%) blur(20px);
  box-shadow: 0 1px 0 var(--tmc-filo-chiaro);
}
@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))) {
  .elementor-location-header .elementor-element-70ba177e { background-color: var(--tmc-scuro) !important; }
}
.elementor-location-header .elementor-nav-menu--main .elementor-item {
  text-transform: none !important;
  letter-spacing: 0 !important;
  font-size: 15px !important;
  color: rgba(255, 255, 255, 0.82) !important;
  transition: color 0.2s;
}
.elementor-location-header .elementor-nav-menu--main .elementor-item:hover,
.elementor-location-header .elementor-nav-menu--main .elementor-item.highlighted,
.elementor-location-header .elementor-nav-menu--main .elementor-item.elementor-item-active { color: #fff !important; }

/* sottomenu (Aree di competenza, Blog): riquadro chiaro arrotondato */
.elementor-location-header .elementor-nav-menu--main .elementor-nav-menu--dropdown {
  padding: 6px !important;
  background: var(--tmc-vetro-chiaro) !important;
  -webkit-backdrop-filter: saturate(180%) blur(24px);
  backdrop-filter: saturate(180%) blur(24px);
  border: 0 !important;
  border-radius: var(--tmc-raggio-s) !important;
  box-shadow: 0 20px 50px -12px rgba(0, 0, 0, 0.35), 0 0 0 1px rgb(var(--tmc-scuro-rgb) / 0.08) !important;
  min-width: 240px !important;
}
.elementor-location-header .elementor-nav-menu--main .elementor-nav-menu--dropdown a {
  padding: 10px 14px !important;
  border-radius: 9px !important;
  font-size: 15px !important;
  text-transform: none !important;
  color: var(--tmc-scuro) !important;
  background: transparent !important;
}
.elementor-location-header .elementor-nav-menu--main .elementor-nav-menu--dropdown a:hover,
.elementor-location-header .elementor-nav-menu--main .elementor-nav-menu--dropdown a.highlighted {
  background: rgb(var(--tmc-scuro-rgb) / 0.07) !important;
}

/* ------------------------------------------------------------------ 3. Pulsanti a pillola */
.site-main .elementor-button,
.site-main .elementor-widget-jkit_button a,
.tmc-bottone,
.wpr-load-more-btn {
  border-radius: var(--tmc-pillola) !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
  font-family: Lato, sans-serif !important;
  font-weight: 700 !important;
  text-decoration: none !important;
  transition: background-color 0.2s, color 0.2s, border-color 0.2s, transform 0.2s;
}
.site-main .elementor-button { padding: 13px 26px !important; font-size: 16px !important; }
.tmc-bottone { padding: 14px 28px; }
.site-main .elementor-button:active, .tmc-bottone:active { transform: scale(0.98); }

/* Home: “Contattaci” pieno, “Chi siamo” solo contorno */
.elementor-element-5444108 .elementor-button {
  background: #fff !important;
  color: var(--tmc-scuro) !important;
  border: 1px solid #fff !important;
}
.elementor-element-5444108 .elementor-button:hover { background: var(--tmc-bordo) !important; border-color: var(--tmc-bordo) !important; }
.elementor-element-2ddb4099 .elementor-button {
  background: transparent !important;
  color: #fff !important;
  border: 1px solid rgba(255, 255, 255, 0.5) !important;
}
.elementor-element-2ddb4099 .elementor-button:hover { background: rgba(255, 255, 255, 0.12) !important; border-color: #fff !important; }
.elementor-element-43cfe0e6 { gap: 14px !important; }

/* ------------------------------------------------------------------ 4. Home */
/* frase sotto il titolo */
.elementor-element-b0d0137 p {
  font-size: clamp(19px, 1.6vw, 23px);
  color: rgba(255, 255, 255, 0.78);
  letter-spacing: 0.01em;
}
/* foto dei tre fondatori: riquadro arrotondato con margini, senza effetto fisso */
.elementor-element-65b9c161 {
  --width: calc(100% - 2 * clamp(16px, 4vw, 56px));
  width: calc(100% - 2 * clamp(16px, 4vw, 56px)) !important;
  margin-left: auto !important;
  margin-right: auto !important;
  border-radius: 28px;
  overflow: hidden;
  background-attachment: scroll !important;
  background-position: center 35% !important;
}
/* “Il cliente al centro”: schede arrotondate */
.elementor-element-b6f50b0 > .e-con {
  background-color: var(--tmc-chiaro) !important;
  border-radius: var(--tmc-raggio) !important;
  padding: 34px 30px !important;
}
/* Aree di competenza: schede bianche su fondo chiaro, tutta la scheda è cliccabile */
.elementor-element-3bd424b { background-color: var(--tmc-chiaro) !important; }
.elementor-element-7997fbde { gap: 20px !important; }
.elementor-element-7997fbde > .e-con {
  position: relative;
  background-color: #fff !important;
  border: 0 !important;
  border-radius: var(--tmc-raggio) !important;
  box-shadow: var(--tmc-ombra);
  padding: 30px 28px !important;
  overflow: hidden;
}
.elementor-element-7997fbde > .e-con::before { display: none !important; }
.elementor-element-7997fbde .jkit-icon-box-wrapper,
.elementor-element-7997fbde .jkit-icon-box-wrapper::before { position: static !important; background: none !important; }
.elementor-element-7997fbde .jkit-icon-box-wrapper { display: flex !important; flex-direction: column !important; align-items: flex-start !important; text-align: left !important; }
.elementor-element-7997fbde .icon-box-header { margin: 0 !important; }
.elementor-element-7997fbde .icon-box-link::after { content: ""; position: absolute; inset: 0; z-index: 1; }
.elementor-element-7997fbde .icon-box-link {
  font-size: 15px !important;
  font-weight: 700;
  color: var(--tmc-scuro) !important;
  text-decoration: none !important;
}
.elementor-element-7997fbde .icon-box-link i { margin-left: 4px; font-style: normal; }
.elementor-element-7997fbde .icon-box-link i::before { content: "›" !important; font: 700 17px/1 Lato, sans-serif !important; }
.elementor-element-7997fbde .title { margin: 14px 0 6px !important; font-size: 22px !important; }
.tmc-icona { display: inline-block; width: 44px; height: 44px; color: var(--tmc-scuro); line-height: 0; }
.tmc-icona svg {
  display: block; width: 100% !important; height: 100% !important;
  fill: none !important; stroke: currentColor !important; stroke-width: 5.5; stroke-linecap: round; stroke-linejoin: round;
}
.tmc-icona svg .f { fill: currentColor; stroke: none; }
/* fondatori: foto con angoli arrotondati */
a.e-con[href$="pasquale-tarricone/"],
a.e-con[href$="giancarlo-caporaso/"],
a.e-con[href$="giuseppe-cilenti/"] {
  border-radius: var(--tmc-raggio);
  overflow: hidden;
  isolation: isolate;
}

/* ------------------------------------------------------------------ 5. Pagine delle aree */
/* testata senza foto di repertorio: fondo chiaro, icona, occhiello e frase introduttiva */
.tmc-hero-area {
  background-image: none !important;
  background-color: var(--tmc-chiaro) !important;
  --min-height: 0px !important;
  min-height: 0 !important;
  padding: clamp(64px, 9vw, 120px) 20px clamp(56px, 7vw, 96px) !important;
}
.tmc-hero-area::before { display: none !important; }
.tmc-hero-area > .e-con, .tmc-hero-area .elementor-element-5a1772e8 { --min-height: 0px !important; min-height: 0 !important; }
.tmc-occhiello {
  display: flex; flex-direction: column; align-items: center; gap: 14px;
  margin: 0 0 18px;
  font: 700 14px/1.2 Lato, sans-serif;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--tmc-grigio);
}
.tmc-occhiello .tmc-icona { width: 52px; height: 52px; }
.tmc-lead {
  max-width: 40em;
  margin: 22px auto 0;
  font: 400 clamp(18px, 1.5vw, 21px)/1.55 Lato, sans-serif;
  color: #3d4440;
  text-align: center;
}
/* contenuto e colonna laterale */
.elementor-element-8efd53b { border: 0 !important; }
.elementor-element-ec29bff { align-self: flex-start; position: sticky; top: 108px; }
.elementor-element-cef629e .elementor-heading-title {
  font: 700 13px/1.2 Lato, sans-serif !important;
  letter-spacing: 0.06em !important;
  text-transform: uppercase !important;
  color: var(--tmc-grigio) !important;
  margin: 0 0 10px 16px !important;
}
/* “Altre aree di competenza”: elenco raggruppato come nelle Impostazioni di iPhone */
.elementor-widget-wpr-page-list .wpr-page-list {
  margin: 0; padding: 0;
  background: var(--tmc-chiaro);
  border-radius: 16px;
  overflow: hidden;
}
.elementor-widget-wpr-page-list .wpr-page-list-item {
  margin: 0 !important; padding: 0 !important;
  border: 0 !important;
}
.elementor-widget-wpr-page-list .wpr-page-list-item + .wpr-page-list-item { box-shadow: inset 16px 1px 0 -15px var(--tmc-filo); border-top: 1px solid var(--tmc-filo) !important; }
.elementor-widget-wpr-page-list .wpr-page-list-item-icon { display: none !important; }
.elementor-widget-wpr-page-list .wpr-page-list-item > div { width: 100%; }
.elementor-widget-wpr-page-list .wpr-pl-title {
  display: flex !important; align-items: center; justify-content: space-between; gap: 12px;
  padding: 13px 16px;
  font: 400 16px/1.35 Lato, sans-serif !important;
  color: var(--tmc-scuro) !important;
  text-decoration: none !important;
}
.elementor-widget-wpr-page-list .wpr-pl-title::after {
  content: ""; flex: none; width: 7px; height: 7px;
  border-top: 2px solid var(--tmc-grigio-chiaro); border-right: 2px solid var(--tmc-grigio-chiaro);
  transform: rotate(45deg);
}
.elementor-widget-wpr-page-list .wpr-pl-title:hover { background: rgb(var(--tmc-scuro-rgb) / 0.05); }
/* “Aree di intervento” e “Servizi”: fisarmonica come gruppo arrotondato */
.jkit-accordion { background: #fff; border-radius: 18px; overflow: hidden; box-shadow: var(--tmc-ombra); }
.jkit-accordion .card-wrapper,
.jkit-accordion .card-wrapper:first-child { border: 0 !important; }
.jkit-accordion .card-wrapper + .card-wrapper { border-top: 1px solid var(--tmc-filo) !important; }
.jkit-accordion .card-header-button { padding: 17px 22px !important; font-size: 17px !important; }
.jkit-accordion .card-body { padding: 0 22px 20px !important; }
/* “In breve” */
.tmc-in-breve {
  border-left: 0;
  border-radius: 18px;
  padding: 22px 26px;
  background: var(--tmc-chiaro);
}
/* Domande frequenti: gruppo arrotondato con freccia che ruota */
.tmc-faq__elenco { background: var(--tmc-chiaro); border-radius: 18px; overflow: hidden; }
.tmc-faq .tmc-faq__elenco details { border: 0; }
.tmc-faq .tmc-faq__elenco details + details { border-top: 1px solid var(--tmc-filo); }
.tmc-faq .tmc-faq__elenco summary { padding: 18px 56px 18px 22px; }
.tmc-faq .tmc-faq__elenco summary::after {
  content: ""; right: 24px; width: 8px; height: 8px;
  border-right: 2px solid var(--tmc-grigio); border-bottom: 2px solid var(--tmc-grigio);
  transform: translateY(-70%) rotate(45deg);
  transition: transform 0.25s;
}
.tmc-faq .tmc-faq__elenco details[open] summary::after { content: ""; transform: translateY(-30%) rotate(225deg); }
.tmc-faq .tmc-faq__elenco summary:hover { background: rgb(var(--tmc-scuro-rgb) / 0.04); }
.tmc-faq .tmc-faq__risposta { padding: 0 22px 4px; }
.tmc-faq h2, .tmc-modulo h2 { font-family: "Libre Baskerville", serif; font-weight: 400; letter-spacing: -0.01em; }

/* ------------------------------------------------------------------ 6. Articoli (elenchi e blog) */
.wpr-grid-media-wrap, .wpr-grid-image-wrap, .jkit-postblock .jkit-thumb { border-radius: var(--tmc-raggio-s); overflow: hidden; }
.wpr-grid-item-title, .wpr-grid-item-title a, .jkit-postblock .jkit-post-title a {
  text-transform: none !important;
  letter-spacing: 0 !important;
}
.wpr-grid-item-title a { font-size: 19px !important; line-height: 1.3 !important; }
.wpr-load-more-btn { background: #fff !important; color: var(--tmc-scuro) !important; }
.wpr-load-more-btn:hover { background: var(--tmc-bordo) !important; }

/* ------------------------------------------------------------------ 7. Contatti, fondatori, modulo */
.elementor-widget-google_maps .elementor-custom-embed { border-radius: var(--tmc-raggio-s); overflow: hidden; }
.elementor-widget-image img[src*="pasquale"],
.elementor-widget-image img[src*="caporaso"],
.elementor-widget-image img[src*="cilenti"],
.elementor-widget-image img[src*="clienti"] { border-radius: var(--tmc-raggio); }
.tmc-modulo input:not([type="checkbox"]), .tmc-modulo select, .tmc-modulo textarea {
  border: 1px solid #c9ccc8;
  border-radius: 12px;
  padding: 12px 14px;
  background: #fbfbfa;
  transition: border-color 0.2s, box-shadow 0.2s, background-color 0.2s;
}
.tmc-modulo input:not([type="checkbox"]):focus, .tmc-modulo select:focus, .tmc-modulo textarea:focus {
  border-color: var(--tmc-scuro);
  background: #fff;
  box-shadow: 0 0 0 4px rgb(var(--tmc-scuro-rgb) / 0.12);
}
.tmc-sezione-persona h2, .tmc-pagina h2 { font-family: "Libre Baskerville", serif; font-weight: 400; }

/* ------------------------------------------------------------------ 8. Blocchi delle pagine nuove (sedi e aree) e dei fondatori */
.tmc-pagina { font-family: Lato, sans-serif; color: var(--tmc-testo); background: #fff; }
.tmc-pagina .tmc-contenitore { max-width: 1080px; }
.tmc-titolo {
  margin: 0;
  font: 400 clamp(34px, 4.5vw, 56px)/1.15 "Libre Baskerville", serif;
  letter-spacing: -0.015em;
  color: var(--tmc-scuro);
  text-wrap: balance;
}
.tmc-hero-area .tmc-titolo { text-align: center; }
.tmc-azioni { display: flex; flex-wrap: wrap; justify-content: center; gap: 12px; margin-top: 28px; }
.tmc-bottone--chiaro { background: #fff !important; color: var(--tmc-scuro) !important; box-shadow: inset 0 0 0 1px var(--tmc-filo); }
.tmc-bottone--chiaro:hover { background: var(--tmc-bordo) !important; }
.tmc-sezione-persona { padding: clamp(40px, 6vw, 72px) 0; background: var(--tmc-chiaro); }
.tmc-sezione-persona .tmc-gruppo { background: #fff; box-shadow: var(--tmc-ombra); }
.tmc-sezione-persona .tmc-due > div > h2 { margin: 0 0 16px; font-size: clamp(24px, 2.4vw, 30px); color: var(--tmc-scuro); }
.tmc-profilo { margin: 0 0 14px !important; font: 400 clamp(24px, 2.4vw, 30px)/1.2 "Libre Baskerville", serif !important; color: var(--tmc-scuro); }
.tmc-sezione { padding: clamp(48px, 7vw, 88px) 0; }
.tmc-sezione--chiara { background: var(--tmc-chiaro); }
.tmc-pagina h2 { margin: 0 0 22px; font-size: clamp(28px, 3vw, 36px); line-height: 1.2; color: var(--tmc-scuro); letter-spacing: -0.01em; }
.tmc-pagina h3 { margin: 0 0 10px; font: 700 19px/1.3 Lato, sans-serif; color: var(--tmc-scuro); }
.tmc-pagina p { font-size: 18px; line-height: 1.65; max-width: 72ch; }
.tmc-griglia { display: grid; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); gap: 20px; }
.tmc-scheda {
  position: relative;
  padding: 28px;
  background: #fff;
  border-radius: var(--tmc-raggio);
  box-shadow: var(--tmc-ombra);
}
.tmc-sezione:not(.tmc-sezione--chiara) .tmc-scheda { background: var(--tmc-chiaro); box-shadow: none; }
.tmc-scheda ul { margin: 0; padding-left: 1.1em; }
.tmc-scheda li { margin: 0 0 6px; font-size: 16px; line-height: 1.5; }
.tmc-scheda a.tmc-tutta::after { content: ""; position: absolute; inset: 0; }
.tmc-gruppo { margin: 0; padding: 0; list-style: none; background: var(--tmc-chiaro); border-radius: 16px; overflow: hidden; }
.tmc-sezione--chiara .tmc-gruppo { background: #fff; box-shadow: var(--tmc-ombra); }
.tmc-gruppo > li + li { border-top: 1px solid var(--tmc-filo); }
.tmc-gruppo a, .tmc-gruppo .tmc-riga {
  display: flex; align-items: center; justify-content: space-between; gap: 16px;
  padding: 15px 18px;
  font-size: 17px; color: var(--tmc-scuro); text-decoration: none;
}
.tmc-gruppo a::after {
  content: ""; flex: none; width: 7px; height: 7px;
  border-top: 2px solid var(--tmc-grigio-chiaro); border-right: 2px solid var(--tmc-grigio-chiaro); transform: rotate(45deg);
}
.tmc-gruppo a:hover { background: rgb(var(--tmc-scuro-rgb) / 0.05); }
.tmc-gruppo .tmc-etichetta { color: var(--tmc-grigio); font-size: 15px; }
.tmc-passi { counter-reset: passo; display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 20px; margin: 0; padding: 0; list-style: none; }
.tmc-passi li { counter-increment: passo; padding: 26px; background: #fff; border-radius: var(--tmc-raggio); box-shadow: var(--tmc-ombra); }
.tmc-passi li::before {
  content: counter(passo);
  display: grid; place-items: center; width: 34px; height: 34px; margin-bottom: 14px;
  border-radius: 50%; background: var(--tmc-scuro); color: #fff; font: 700 15px/1 Lato, sans-serif;
}
.tmc-passi p { margin: 6px 0 0; font-size: 16px; }
.tmc-nota { padding: 20px 24px; background: var(--tmc-chiaro); border-radius: 18px; }
.tmc-nota a, .tmc-pagina p a { color: var(--tmc-scuro); text-decoration: underline; text-underline-offset: 3px; }
.tmc-chiusura { text-align: center; }
.tmc-chiusura p { margin-left: auto; margin-right: auto; }
.tmc-mappa { border-radius: var(--tmc-raggio); overflow: hidden; aspect-ratio: 16 / 10; background: var(--tmc-bordo); }
.tmc-mappa iframe { display: block; width: 100%; height: 100%; border: 0; }
.tmc-due { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(24px, 4vw, 56px); align-items: start; }
@media (max-width: 900px) { .tmc-due { grid-template-columns: 1fr; } }
.tmc-persone { display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 20px; }
.tmc-persona { display: flex; gap: 16px; align-items: center; padding: 16px; background: #fff; border-radius: 18px; box-shadow: var(--tmc-ombra); position: relative; }
.tmc-persona img { width: 72px; height: 72px; border-radius: 50%; object-fit: cover; object-position: center 20%; }
.tmc-persona a { color: var(--tmc-scuro); font-weight: 700; text-decoration: none; }
.tmc-persona a::after { content: ""; position: absolute; inset: 0; }
.tmc-persona span { display: block; color: var(--tmc-grigio); font-size: 15px; }

/* ------------------------------------------------------------------ 9. Footer */
.elementor-location-footer a { transition: opacity 0.2s; }
.elementor-location-footer a:hover { opacity: 0.75; }
.elementor-location-footer .elementor-heading-title a { color: inherit; text-decoration: none; }

/* ------------------------------------------------------------------ 10. Barra in basso su telefono (nascosta da 768 px in su) */
.tmc-barra { display: none; }

/* ------------------------------------------------------------------ 11. Tablet e telefono: menu a tutto schermo */
@media (max-width: 1024px) {
  .elementor-location-header .elementor-nav-menu--dropdown.elementor-nav-menu__container {
    background: rgb(var(--tmc-scuro-rgb) / 0.97) !important;
    -webkit-backdrop-filter: saturate(180%) blur(20px);
    backdrop-filter: saturate(180%) blur(20px);
    border-top: 1px solid var(--tmc-filo-chiaro) !important;
    padding: 8px 0 24px !important;
  }
  .elementor-location-header .elementor-nav-menu--dropdown.elementor-nav-menu__container a {
    min-height: 52px;
    padding: 12px 24px !important;
    font: 400 21px/1.3 Lato, sans-serif !important;
    text-transform: none !important;
    letter-spacing: 0 !important;
    color: #fff !important;
    background: transparent !important;
    border-radius: 0 !important;
  }
  .elementor-location-header .elementor-nav-menu--dropdown.elementor-nav-menu__container > ul > li + li { border-top: 1px solid var(--tmc-filo-chiaro); }
  .elementor-location-header .elementor-nav-menu--dropdown.elementor-nav-menu__container .sub-menu { background: transparent !important; padding-bottom: 8px !important; }
  .elementor-location-header .elementor-nav-menu--dropdown.elementor-nav-menu__container .sub-menu a {
    min-height: 44px;
    padding: 9px 24px 9px 40px !important;
    font-size: 17px !important;
    color: rgba(255, 255, 255, 0.72) !important;
    border: 0 !important;
  }
  .elementor-location-header .elementor-nav-menu--dropdown.elementor-nav-menu__container a:hover,
  .elementor-location-header .elementor-nav-menu--dropdown.elementor-nav-menu__container a.highlighted { background: rgba(255, 255, 255, 0.06) !important; }
  .elementor-element-ec29bff { position: static; }
}

/* ------------------------------------------------------------------ 12. Telefono */
@media (max-width: 767px) {
  .site-main .elementor-widget-text-editor p,
  .site-main .elementor-widget-text-editor li { font-size: 17px; line-height: 1.6; }

  /* home: titolo, pulsanti uno sotto l'altro e larghi */
  .elementor-element-12756691 .elementor-heading-title { font-size: 40px !important; letter-spacing: -0.5px !important; }
  .elementor-element-43cfe0e6 {
    --flex-direction: column !important;
    flex-direction: column !important;
    align-items: stretch !important;
    width: 100%; max-width: 340px; margin: 8px auto 0;
    padding: 0 20px;
  }
  .elementor-element-43cfe0e6 > .elementor-widget-button { width: 100%; }
  .elementor-element-43cfe0e6 .elementor-button { display: flex !important; justify-content: center; width: 100%; min-height: 50px; font-size: 17px !important; }
  .elementor-element-65b9c161 { border-radius: var(--tmc-raggio); }
  .elementor-element-b6f50b0 > .e-con { padding: 26px 22px !important; }
  .elementor-element-7997fbde > .e-con { padding: 22px !important; }
  .elementor-element-7997fbde .title { font-size: 20px !important; }

  /* aree */
  .tmc-hero-area { padding: 48px 20px 40px !important; }
  .tmc-hero-area .elementor-heading-title { font-size: 34px !important; line-height: 1.15 !important; }
  .tmc-lead { font-size: 18px; }
  .elementor-element-ec29bff { --padding-left: 20px !important; --padding-right: 20px !important; }
  .jkit-accordion .card-header-button { padding: 15px 18px !important; }
  .tmc-in-breve { padding: 20px; }
  .tmc-faq, .tmc-modulo { padding: 48px 0; }
  .tmc-faq h2, .tmc-modulo h2 { font-size: 28px; }

  /* modulo: campi alti, testo 17 px (niente zoom automatico su iPhone) */
  .tmc-modulo input:not([type="checkbox"]), .tmc-modulo select, .tmc-modulo textarea { min-height: 50px; font-size: 17px; }
  .tmc-modulo .tmc-bottone { width: 100%; min-height: 52px; }

  /* WhatsApp su telefono: solo l'icona (la barra in basso ha il suo CSS nel plugin) */
  .qlwapp__container .qlwapp__button { width: 54px; height: 54px; padding: 0 !important; justify-content: center; border-radius: 50% !important; }
  /* il testo resta per i lettori di schermo, ma non occupa spazio */
  .qlwapp__container .qlwapp__button .qlwapp__text {
    position: absolute !important; width: 1px; height: 1px; overflow: hidden;
    clip: rect(0 0 0 0); clip-path: inset(50%); white-space: nowrap;
  }
}

/* ------------------------------------------------------------------ 13. Movimento: solo se il sistema non chiede di ridurlo */
@media (prefers-reduced-motion: no-preference) {
  .elementor-element-7997fbde > .e-con,
  .tmc-scheda, .tmc-persona,
  a.e-con[href$="pasquale-tarricone/"], a.e-con[href$="giancarlo-caporaso/"], a.e-con[href$="giuseppe-cilenti/"] {
    transition: transform 0.35s cubic-bezier(0.2, 0.7, 0.2, 1), box-shadow 0.35s;
  }
  .elementor-element-7997fbde > .e-con:hover,
  .tmc-scheda:has(a.tmc-tutta):hover, .tmc-persona:hover {
    transform: translateY(-3px);
    box-shadow: var(--tmc-ombra-su);
  }
  a.e-con[href$="pasquale-tarricone/"]:hover, a.e-con[href$="giancarlo-caporaso/"]:hover, a.e-con[href$="giuseppe-cilenti/"]:hover { transform: translateY(-4px); }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto !important; }
}

/* ------------------------------------------------------------------ 14. Revisione UX e accessibilità */
/* 14.1 Fondo bianco ovunque. In WordPress: Elementor › Impostazioni sito › Sfondo › bianco (poi questa riga si può togliere) */
body { background-color: #fff !important; }

/* 14.2 Un solo sistema di caratteri: Libre Baskerville per H1 e H2, Lato per tutto il resto */
.site-main h1, .site-main h2 {
  font-family: "Libre Baskerville", Georgia, serif !important;
  font-weight: 400 !important;
  letter-spacing: -0.01em;
}
.site-main h2.elementor-heading-title { line-height: 1.25 !important; }
/* titoli di sezione con la stessa misura in tutto il sito; sottotitoli dentro il testo un gradino sotto */
.site-main .elementor-widget-heading h2.elementor-heading-title { font-size: clamp(30px, 3.2vw, 42px) !important; }
.site-main .e-con-inner .elementor-widget-heading h2.elementor-heading-title { font-size: clamp(24px, 2.2vw, 30px) !important; }
/* informativa privacy (pagina WordPress senza Elementor: WordPress le dà la classe privacy-policy) */
.privacy-policy .page-content { max-width: 760px; margin: 0 auto; padding: clamp(40px, 6vw, 72px) 20px; }
.privacy-policy .page-content, .privacy-policy .page-content p, .privacy-policy .page-content li { font: 400 17px/1.65 Lato, sans-serif; color: var(--tmc-testo); }
.privacy-policy .page-content h1 { font-size: clamp(32px, 4vw, 44px) !important; line-height: 1.15; margin: 0 0 16px; color: var(--tmc-scuro); }
.privacy-policy .page-content h2 { font-size: clamp(22px, 2.2vw, 26px) !important; line-height: 1.3; margin: 40px 0 12px; color: var(--tmc-scuro); }
.privacy-policy .page-content a { color: var(--tmc-scuro); text-decoration: underline; text-underline-offset: 3px; }

/* 14.3 Barra del menu: più bassa, logo senza riquadro, voci raggruppate, pulsante principale */
.elementor-location-header .elementor-element-70ba177e { --min-height: 76px !important; min-height: 76px !important; }
.elementor-location-header .elementor-element-7864d9e3 {
  background: none !important; border: 0 !important;
  --width: auto !important; width: auto !important;
  justify-content: center !important;
  padding: 0 8px 0 clamp(20px, 4vw, 56px) !important;
}
.elementor-location-header .elementor-element-8eb1f5b,
.elementor-location-header .elementor-element-8eb1f5b a { width: auto !important; display: block; line-height: 0; }
.elementor-location-header .tmc-logo,
.elementor-location-header .elementor-element-8eb1f5b img { width: auto !important; height: 50px !important; max-width: none !important; }
.elementor-location-header .elementor-element-3099ea9d {
  flex: 1 1 auto !important; --width: auto !important; width: auto !important;
  flex-direction: row !important; --flex-direction: row !important;
  justify-content: flex-end !important; align-items: center !important;
  gap: 20px !important;
  padding: 0 clamp(20px, 4vw, 56px) 0 0 !important;
}
.elementor-location-header .elementor-element-1a273e73 { width: auto !important; --width: auto !important; flex: 0 1 auto !important; height: auto !important; align-self: center !important; }
.elementor-location-header .elementor-element-1a273e73 .elementor-nav-menu--main > .elementor-nav-menu { justify-content: flex-end !important; gap: 4px; }
.elementor-location-header .elementor-element-1a273e73 .elementor-nav-menu--main > .elementor-nav-menu > li { flex-grow: 0 !important; }
.elementor-location-header .elementor-element-1a273e73 .elementor-nav-menu--main .elementor-item { padding: 10px 14px !important; }
.tmc-cta-testata .tmc-bottone {
  display: inline-flex; align-items: center; min-height: 44px; padding: 0 22px;
  background: #fff; color: var(--tmc-scuro) !important; font-size: 15px; white-space: nowrap;
}
.tmc-cta-testata .tmc-bottone:hover { background: var(--tmc-bordo); }
@media (max-width: 1024px) {
  .tmc-cta-testata { display: none; }
  .elementor-location-header .elementor-element-3099ea9d { padding-right: 12px !important; }
}
@media (max-width: 767px) {
  .elementor-location-header .elementor-element-70ba177e { --min-height: 64px !important; min-height: 64px !important; }
  .elementor-location-header .tmc-logo,
  .elementor-location-header .elementor-element-8eb1f5b img { height: 42px !important; }
}

/* 14.4 Home, primo blocco: gerarchia chiara tra nome, città e motto */
.tmc-sottotitolo { margin-top: 14px; font-size: clamp(18px, 1.6vw, 22px) !important; color: rgba(255, 255, 255, 0.88); line-height: 1.4; }
.elementor-element-b0d0137 p {
  font: italic 400 clamp(17px, 1.4vw, 20px)/1.5 "Libre Baskerville", Georgia, serif !important;
  color: rgba(255, 255, 255, 0.75);
  letter-spacing: 0;
  margin-top: 14px !important;
}
.elementor-element-5444108 .elementor-button, .elementor-element-2ddb4099 .elementor-button { min-height: 48px; }

/* 14.5 Home, schede: testo a tutta larghezza e descrizione delle aree */
.elementor-element-b6f50b0 > .e-con .elementor-widget-icon-box { width: 100%; }
.elementor-element-5eb59ab { background-color: var(--tmc-chiaro) !important; }
.elementor-element-7997fbde .tmc-breve { margin: 0 0 16px; font: 400 16px/1.55 Lato, sans-serif; color: var(--tmc-testo-2); text-align: left; }
@media (max-width: 767px) {
  .elementor-element-b6f50b0 > .e-con .elementor-widget-icon-box,
  .elementor-element-b6f50b0 > .e-con .elementor-widget-icon-box > .elementor-widget-container { padding: 0 !important; margin: 0 !important; max-width: none !important; }
}

/* 14.6 Blog: copertine della stessa proporzione, titoli in Libre Baskerville, data leggibile */
.jkit-postblock .jkit-thumb img { width: 100% !important; height: auto !important; aspect-ratio: 16 / 10; object-fit: cover; }
.jkit-postblock .jkit-post-title { font: 400 19px/1.35 "Libre Baskerville", Georgia, serif !important; letter-spacing: -0.005em; }
.jkit-postblock .jkit-post-title a { font: inherit !important; color: var(--tmc-scuro) !important; }
.jkit-postblock .jkit-meta-date, .jkit-postblock .jkit-meta-date * { font: 400 14px/1.4 Lato, sans-serif !important; color: var(--tmc-grigio) !important; }
.jkit-postblock .jkit-post-category a { font-size: 13px !important; letter-spacing: 0.02em; }
@media (max-width: 767px) { .wpr-grid-item-excerpt, .wpr-grid-item-excerpt p { font-size: 16px !important; line-height: 1.55 !important; } }

/* 14.7 Contatti: titolo più vicino al contenuto, sedi in schede chiare */
.elementor-element-14a391ca, .elementor-element-1ad3d32a { --min-height: 0px !important; min-height: 0 !important; }
.elementor-element-14a391ca { padding-top: clamp(40px, 6vw, 80px) !important; padding-bottom: 0 !important; }
.elementor-element-1ad3d32a { padding-bottom: 0 !important; }
.elementor-element-6e20eb50, .elementor-element-e1e2680, .elementor-element-321ef0e {
  background: var(--tmc-chiaro) !important; background-image: none !important;
  border: 0 !important; border-radius: var(--tmc-raggio) !important; overflow: hidden;
}
.elementor-element-6e20eb50::before, .elementor-element-e1e2680::before, .elementor-element-321ef0e::before { display: none !important; }
.elementor-element-6c9e955, .elementor-element-1b45117, .elementor-element-943e82b { background: none !important; background-image: none !important; border: 0 !important; }
.elementor-element-24cbb9dc { padding-top: clamp(40px, 5vw, 64px) !important; }
.tmc-modulo { border-top: 0 !important; }
.tmc-consenso label { line-height: 1.5; }

/* 14.8 Fisarmonica delle aree: righe non più lunghe del necessario */
.jkit-accordion { max-width: 880px; }

/* 14.9 Footer: testo leggibile, link facili da toccare, riga finale ordinata */
.elementor-location-footer .elementor-icon-list-text { font-size: 15px !important; line-height: 1.45 !important; }
.elementor-location-footer .elementor-heading-title { font-family: Lato, sans-serif; }
.elementor-location-footer .elementor-element-37f6f9d img { width: 120px !important; max-width: 100% !important; height: auto !important; }
/* nomi delle città: ora H2 (struttura corretta) ma con la stessa misura di prima */
.elementor-location-footer .tmc-citta { font-size: 22px !important; font-weight: 600 !important; line-height: 1.3 !important; }
.elementor-location-footer .elementor-element-1b970e81 .elementor-heading-title { font-size: 14px !important; line-height: 1.6 !important; }
.tmc-legale > span + span::before { content: "·"; margin: 0 0.55em; opacity: 0.6; }
@media (max-width: 767px) {
  .elementor-location-footer .elementor-icon-list-item > a,
  .elementor-location-footer .elementor-heading-title a { display: inline-flex !important; align-items: center; min-height: 44px; }
  .elementor-location-footer .elementor-icon-list-text { font-size: 16px !important; }
  .elementor-location-footer .elementor-element-37f6f9d img { width: 104px !important; }
  .elementor-location-footer .tmc-citta { font-size: 20px !important; }
  .elementor-location-footer .elementor-element-1b970e81 { width: 100% !important; max-width: 100% !important; --container-widget-width: 100% !important; align-self: stretch !important; padding: 0 10px !important; }
  .tmc-legale > span { display: block; }
  .tmc-legale > span + span::before { content: none; }
}

/* 14.10 WhatsApp: testo scuro sul verde (contrasto 9:1 invece di 2:1). In WordPress: WP WhatsApp Chat › Personalizza › Colore del testo #15233A */
.qlwapp { --qlwapp-scheme-text: var(--tmc-scuro) !important; }

/* 14.11 Fondatori su telefono: prima la foto, più piccola, poi nome e profilo */
@media (max-width: 767px) {
  .tmc-persona-testata, .tmc-persona-testata > .e-con-inner { flex-direction: column !important; --flex-direction: column !important; }
  .tmc-persona-testata > .e-con:first-child,
  .tmc-persona-testata > .e-con-inner > .e-con:first-child { order: -1; padding: 24px 30px 0 !important; }
  .tmc-persona-testata > .e-con:first-child img,
  .tmc-persona-testata > .e-con-inner > .e-con:first-child img { width: 180px !important; height: auto !important; aspect-ratio: 4 / 5; object-fit: cover; object-position: center 15%; }
}

/* 14.12 Pagina Blog: griglia con margini laterali, schede alla pari, titoli senza sottolineatura, pulsanti come nel resto del sito */
.elementor-element-5c09b4df { min-height: 0 !important; --min-height: 0px !important; padding-top: clamp(48px, 6vw, 88px) !important; padding-bottom: clamp(24px, 3vw, 40px) !important; }
.elementor-element-38d9b590 > .e-con-inner { max-width: 1200px !important; padding-left: clamp(20px, 4vw, 40px) !important; padding-right: clamp(20px, 4vw, 40px) !important; }
.elementor-element-4e7f3d1 .jkit-post { display: flex !important; flex-direction: column; background: var(--tmc-chiaro) !important; border-radius: 22px; overflow: hidden; padding: 14px 14px 24px !important; }
.elementor-element-4e7f3d1 .jkit-thumb, .elementor-element-4e7f3d1 .jkit-thumb img { border-radius: 14px; }
.elementor-element-4e7f3d1 .jkit-postblock-content { display: flex; flex-direction: column; flex: 1 1 auto; padding: 0 8px; }
.elementor-element-4e7f3d1 .jkit-post-meta-bottom { margin-top: auto !important; padding-top: 16px; }
.elementor-element-4e7f3d1 .jkit-post-title a,
.elementor-element-4e7f3d1 .jkit-post-category a { text-decoration: none !important; }
.elementor-element-4e7f3d1 .jkit-post-title a:hover,
.elementor-element-4e7f3d1 .jkit-post-title a:focus-visible { text-decoration: underline !important; text-underline-offset: 3px; }
.elementor-element-4e7f3d1 .jkit-post-category a { color: var(--tmc-testo-2) !important; letter-spacing: 0.02em; }
.elementor-element-4e7f3d1 .jkit-readmore { display: inline-flex !important; align-items: center; min-height: 44px; padding: 0 20px !important; border-radius: var(--tmc-pillola) !important; font-size: 15px !important; }
.elementor-element-4e7f3d1 .jkit-post-meta { justify-content: flex-start !important; }

/* 14.13 “Leggi l’articolo” nelle notizie delle pagine aree (fondo scuro): nell’originale era arancione, con la pulizia dei colori diventava scuro su scuro */
.elementor-widget-wpr-grid a.wpr-button-effect { display: inline-flex !important; align-items: center; min-height: 44px; margin-top: 8px; padding: 0 18px !important; border: 1px solid rgba(255, 255, 255, 0.6) !important; border-radius: var(--tmc-pillola) !important; background: transparent !important; color: #fff !important; font-size: 15px !important; }
.elementor-widget-wpr-grid a.wpr-button-effect, .elementor-widget-wpr-grid a.wpr-button-effect span { color: inherit; text-decoration: none !important; }
.elementor-widget-wpr-grid a.wpr-button-effect span { color: inherit !important; }
.elementor-widget-wpr-grid a.wpr-button-effect:hover,
.elementor-widget-wpr-grid a.wpr-button-effect:focus-visible { background: #fff !important; color: var(--tmc-scuro) !important; }

/* 14.14 Aree di tocco: almeno 24 px su computer e 44 px su telefono (WCAG 2.5.8) */
@media (min-width: 768px) {
  .elementor-location-footer .elementor-icon-list-item > a,
  .elementor-location-footer .elementor-heading-title a { display: inline-flex !important; align-items: center; min-height: 28px; }
}
a.icon-box-link { display: inline-flex !important; align-items: center; min-height: 32px; }
@media (max-width: 767px) {
  a.icon-box-link { min-height: 44px; }
  .site-main .elementor-icon-list-item > a { display: inline-flex !important; align-items: center; min-height: 44px; }
  .elementor-location-header .elementor-widget-image a { display: inline-flex; align-items: center; min-height: 44px; }
}


/* 15. (rimossa il 6/11) Accento giallo sui pulsanti principali: Luca lo ha giudicato antiquato. Ora i pulsanti seguono la sezione 18. */

/* 16. "Leggi l'articolo" su schede chiare (pagina Blog e archivi delle categorie): la regola 14.13 è pensata per i fondi scuri e qui rendeva il pulsante bianco su bianco */
body.archive .elementor-widget-wpr-grid a.wpr-button-effect,
.elementor-390 .elementor-widget-wpr-grid a.wpr-button-effect { color: #15233A !important; border-color: rgba(21, 35, 58, 0.5) !important; }
body.archive .elementor-widget-wpr-grid a.wpr-button-effect:hover,
body.archive .elementor-widget-wpr-grid a.wpr-button-effect:focus-visible,
.elementor-390 .elementor-widget-wpr-grid a.wpr-button-effect:hover,
.elementor-390 .elementor-widget-wpr-grid a.wpr-button-effect:focus-visible { background: #15233A !important; color: #fff !important; border-color: #15233A !important; }
body.archive .elementor-widget-wpr-grid a.wpr-button-effect:focus-visible,
.elementor-390 .elementor-widget-wpr-grid a.wpr-button-effect:focus-visible { outline: 3px solid #15233A !important; outline-offset: 3px; }


/* 17. Articoli (modello 208) e card del blog: leggibilità (audit UI del 6/11) */
/* paragrafi giustificati: allineati a sinistra per evitare spazi irregolari */
.elementor-208 .elementor-widget-theme-post-content .has-text-align-justify,
.elementor-208 .elementor-widget-theme-post-content p[style*="justify"] { text-align: left !important; }
/* navigazione Precedente/Successivo: titoli leggibili, a capo pulito */
.elementor-208 .elementor-widget-post-navigation .post-navigation__prev--title,
.elementor-208 .elementor-widget-post-navigation .post-navigation__next--title { white-space: normal; line-height: 1.35; }
/* card del blog e degli archivi: stessa altezza per l'immagine, senza ritagliare le copertine con testo */
body.archive .wpr-grid-item .wpr-grid-image-wrap,
.elementor-390 .wpr-grid-item .wpr-grid-image-wrap { aspect-ratio: 3 / 2; overflow: hidden; background: #F9F9F9; }
body.archive .wpr-grid-item .wpr-grid-image-wrap img,
.elementor-390 .wpr-grid-item .wpr-grid-image-wrap img { width: 100%; height: 100%; object-fit: contain; }


/* 18. Pulsanti (scelta di Luca del 6/11): principali = variante 1 (pieno, angoli netti, niente giallo); secondari = variante 2 (solo contorno, si riempie al passaggio) */
/* 18a. Principale su blu notte: home, "Richiedi una consulenza" */
.elementor-8 .elementor-element-5444108 .elementor-button { background-color: #FFFFFF !important; color: #15233A !important; border: 1px solid #FFFFFF !important; border-radius: 2px !important; }
.elementor-8 .elementor-element-5444108 .elementor-button:hover,
.elementor-8 .elementor-element-5444108 .elementor-button:focus-visible { background-color: #E6EAF0 !important; border-color: #E6EAF0 !important; color: #15233A !important; }
/* 18b. Principali su fondo chiaro: "Contattaci" negli articoli, "Iscriviti", "Richiedi una consulenza" nelle pagine avvocati */
.elementor-208 .elementor-element-8fec42d .elementor-button,
.elementor-208 .elementor-element-17bce9d0 .elementor-button,
.elementor-widget-jkit_button .jkit-button-wrapper { background-color: #15233A !important; color: #FFFFFF !important; border: 1px solid #15233A !important; border-radius: 2px !important; }
.elementor-208 .elementor-element-8fec42d .elementor-button:hover,
.elementor-208 .elementor-element-8fec42d .elementor-button:focus-visible,
.elementor-208 .elementor-element-17bce9d0 .elementor-button:hover,
.elementor-208 .elementor-element-17bce9d0 .elementor-button:focus-visible,
.elementor-widget-jkit_button .jkit-button-wrapper:hover,
.elementor-widget-jkit_button .jkit-button-wrapper:focus-visible { background-color: #2B4066 !important; border-color: #2B4066 !important; color: #FFFFFF !important; }
/* 18c. Secondari su blu notte: home "Chi siamo", griglia articoli nelle pagine delle aree */
.elementor-8 .elementor-element-2ddb4099 .elementor-button { background-color: transparent !important; color: #FFFFFF !important; border: 1px solid rgba(255,255,255,.7) !important; border-radius: 2px !important; }
.elementor-8 .elementor-element-2ddb4099 .elementor-button:hover,
.elementor-8 .elementor-element-2ddb4099 .elementor-button:focus-visible,
.elementor-element-260efb3 .wpr-grid-item-read-more a:hover,
.elementor-element-260efb3 .wpr-grid-item-read-more a:focus-visible { background-color: #FFFFFF !important; color: #15233A !important; border-color: #FFFFFF !important; }
.wpr-grid-item-read-more a { border-radius: 2px !important; }
/* 18d. Secondari su fondo chiaro: "Scopri di più" nelle aree della home */
.elementor-8 .elementor-widget-jkit_icon_box .icon-box-link { display: inline-flex !important; align-items: center; gap: 8px; padding: 10px 18px !important; border: 1px solid rgba(21,35,58,.5) !important; border-radius: 2px !important; color: #15233A !important; background-color: transparent !important; text-decoration: none !important; transition: background-color .2s, color .2s, border-color .2s; }
.elementor-8 .elementor-widget-jkit_icon_box .icon-box-link:hover,
.elementor-8 .elementor-widget-jkit_icon_box .icon-box-link:focus-visible { background-color: #15233A !important; border-color: #15233A !important; color: #FFFFFF !important; }
.elementor-8 .elementor-widget-jkit_icon_box .icon-box-link:hover i,
.elementor-8 .elementor-widget-jkit_icon_box .icon-box-link:focus-visible i { color: #FFFFFF !important; }
/* 18f. "Richiedi una consulenza" nelle sei pagine delle aree (fondo chiaro) */
.elementor-element-47560b3 a.jkit-button-wrapper { background-color: #15233A !important; background-image: none !important; color: #FFFFFF !important; border: 1px solid #15233A !important; border-radius: 2px !important; }
.elementor-element-47560b3 a.jkit-button-wrapper * { color: inherit !important; fill: currentColor !important; }
.elementor-element-47560b3 a.jkit-button-wrapper:hover,
.elementor-element-47560b3 a.jkit-button-wrapper:focus-visible { background-color: #2B4066 !important; border-color: #2B4066 !important; color: #FFFFFF !important; }
.elementor-element-47560b3 a.jkit-button-wrapper:focus-visible { outline: 3px solid #15233A; outline-offset: 3px; }
/* 18e. Focus visibile da tastiera */
.elementor-8 .elementor-element-5444108 .elementor-button:focus-visible,
.elementor-8 .elementor-element-2ddb4099 .elementor-button:focus-visible,
.elementor-element-260efb3 .wpr-grid-item-read-more a:focus-visible { outline: 3px solid #FFFFFF; outline-offset: 3px; }
.elementor-208 .elementor-button:focus-visible,
.elementor-widget-jkit_button .jkit-button-wrapper:focus-visible,
.elementor-8 .elementor-widget-jkit_icon_box .icon-box-link:focus-visible { outline: 3px solid #15233A; outline-offset: 3px; }


/* 19. Revisione UX del 6/11 (revisore esterno): coerenza tipografica, card, articoli, moduli, menu */
/* 19a. Un solo carattere per testi, moduli e menu: Lato (niente caratteri di sistema, DM Sans o Inter) */
body, button, input, select, textarea, .elementor-field, .elementor-field-group label, .elementor-field-label,
.elementor-nav-menu li, .elementor-post-navigation, .qlwapp__button { font-family: "Lato", sans-serif !important; }
/* 19b. Header su computer: "Contatti" come pulsante (unico invito sempre visibile) */
@media (min-width: 1025px) {
  .elementor-nav-menu--main .menu-item-758 > a.elementor-item { background: #FFFFFF; color: #15233A !important; border-radius: 2px; padding: 9px 18px !important; font-weight: 700; margin-left: 10px; }
  .elementor-nav-menu--main .menu-item-758 > a.elementor-item:hover,
  .elementor-nav-menu--main .menu-item-758 > a.elementor-item:focus-visible { background: #E6EAF0; }
  .elementor-nav-menu--main .menu-item-758 > a.elementor-item::before,
  .elementor-nav-menu--main .menu-item-758 > a.elementor-item::after { display: none !important; }
}
/* 19c. Home, aree di competenza: descrizioni allineate al titolo, stesso carattere, pulsanti alla stessa altezza */
.jkit-icon-box .icon-box-description { font-family: "Lato", sans-serif !important; font-size: 16px !important; letter-spacing: 0 !important; margin-left: 0 !important; padding-left: 0 !important; color: #3D4757; }
.page-id-8 .elementor-widget-jkit_icon_box, .page-id-8 .elementor-widget-jkit_icon_box > .elementor-widget-container, .page-id-8 .jkit-icon-box, .page-id-8 .jkit-icon-box .jkit-icon-box-wrapper { height: 100%; }
.page-id-8 .jkit-icon-box .jkit-icon-box-wrapper { display: flex; flex-direction: column; }
.page-id-8 .jkit-icon-box .icon-box-body { display: flex; flex-direction: column; flex: 1 1 auto; }
.page-id-8 .jkit-icon-box .icon-box-button { margin-top: auto; }
/* 19c-bis. Aree in home: icona e titolo alla stessa quota in tutte le schede (lo sfondo animato del widget spostava il contenuto) */
.page-id-8 .jkit-icon-box .jkit-icon-box-wrapper { justify-content: flex-start !important; flex-direction: column !important; }
.page-id-8 .jkit-icon-box .jkit-icon-box-wrapper::before { display: none !important; }
.page-id-8 .jkit-icon-box .icon-box-header { height: 56px; flex: 0 0 56px; margin-bottom: 16px !important; }
.page-id-8 .jkit-icon-box .icon-box-header svg { height: 40px !important; width: auto !important; }
.page-id-8 .jkit-icon-box .icon-box-body { flex: 1 1 auto !important; }
.jkit-icon-box .icon-box-description { color: #3D4757 !important; font-weight: 400 !important; }
/* 19d. Articoli: "Contattaci" senza sfumatura arancio né animazione */
.elementor-208 .elementor-element-8fec42d .elementor-button { background-image: none !important; transform: none !important; }
/* 19e. Articoli: titoli Precedente / Successivo leggibili (prima erano quasi bianchi su bianco) */
.elementor-post-navigation .post-navigation__prev--title, .elementor-post-navigation .post-navigation__next--title { color: #15233A !important; text-transform: none !important; font-size: 16px !important; font-family: "Lato", sans-serif !important; font-weight: 700 !important; }
.elementor-post-navigation .post-navigation__prev--label, .elementor-post-navigation .post-navigation__next--label { color: #5B6573 !important; font-size: 13px !important; letter-spacing: .06em; text-transform: uppercase; }
/* 19f. Articoli: testo a sinistra, colore del sito, immagini con angoli 22px */
.elementor-widget-theme-post-content p, .elementor-widget-theme-post-content li { text-align: left !important; color: #2B3442; }
.elementor-widget-theme-post-content img { border-radius: 22px; }
/* 19g. Blog e archivi: card con angoli 22px, copertine 1200x630 a tutta card (sostituisce il "contain" della sezione 17) */
body.archive .wpr-grid-item, .elementor-390 .wpr-grid-item { border-radius: 22px; overflow: hidden; }
body.archive .wpr-grid-item .wpr-grid-image-wrap, .elementor-390 .wpr-grid-item .wpr-grid-image-wrap { aspect-ratio: 1200 / 630; }
body.archive .wpr-grid-item .wpr-grid-image-wrap img, .elementor-390 .wpr-grid-item .wpr-grid-image-wrap img { object-fit: cover; }
/* 19h. WhatsApp su computer: angoli 2px come gli altri pulsanti; su telefono spazio sotto il footer per non coprire l'ultima riga */
@media (min-width: 768px) { .qlwapp__button { border-radius: 2px !important; font-size: 15px !important; } }
@media (max-width: 767px) { [data-elementor-type="footer"] { padding-bottom: 84px; } }
/* 19i. Home su telefono: schede "Il cliente al centro" senza altezza minima (meno spazio vuoto) */
@media (max-width: 767px) { .page-id-8 .elementor-element-b6f50b0 > .e-con { min-height: 0 !important; padding-bottom: 28px !important; } }
/* 19j. Modulo contatti: casella privacy più grande, pulsante allegato nello stile del sito */
.elementor-form input[type="checkbox"] { width: 22px; height: 22px; accent-color: #15233A; vertical-align: middle; margin-right: 8px; }
.elementor-form input[type="file"]::file-selector-button { background: #15233A; color: #FFFFFF; border: 0; border-radius: 2px; padding: 10px 16px; font-family: "Lato", sans-serif; font-weight: 700; cursor: pointer; margin-right: 12px; }
/* 19k. Menu su telefono: fondo pieno (il titolo sotto non traspare), frecce dei sottomenu facili da toccare */
@media (max-width: 1024px) {
  .elementor-nav-menu--dropdown { background-color: #15233A !important; }
  .elementor-nav-menu--dropdown .sub-arrow { min-width: 44px; min-height: 44px; display: inline-flex; align-items: center; justify-content: center; }
}

/* 19l. Footer: nomi delle città come etichette (non più titoli H2 su ogni pagina) */
[data-elementor-type="footer"] p.elementor-heading-title { font-family: "Lato", sans-serif !important; font-size: 20px !important; font-weight: 700 !important; line-height: 1.3; margin: 0; }

/* 19m. Home su smartphone: card valori e aree piu compatte */
@media (max-width: 767px) {
  .page-id-8 .elementor-element-b6f50b0 .e-con, .page-id-8 .elementor-element-3bd424b .e-con { gap: 14px !important; }
  .page-id-8 .elementor-element-b6f50b0 .e-con > .e-con, .page-id-8 .elementor-element-7997fbde > .e-con { padding: 20px 18px 22px !important; }
  .page-id-8 .jkit-icon-box .jkit-icon-box-wrapper { padding-top: 0 !important; padding-bottom: 0 !important; }
  .page-id-8 .jkit-icon-box .icon-box-header { height: 32px !important; flex: 0 0 32px !important; margin-bottom: 10px !important; }
  .page-id-8 .jkit-icon-box .icon-box-header svg { height: 28px !important; }
  .page-id-8 .jkit-icon-box .icon-box-title { font-size: 19px !important; margin-bottom: 6px !important; }
  .page-id-8 .jkit-icon-box .icon-box-description { font-size: 15px !important; line-height: 1.5 !important; }
}

/* 19n. Home su smartphone: card "Il cliente al centro" con icona accanto al titolo */
@media (max-width: 767px) {
  .page-id-8 .elementor-element-b6f50b0 { gap: 14px !important; }
  .page-id-8 .elementor-element-b6f50b0 > .e-con { padding: 20px 18px 22px !important; }
  .page-id-8 .elementor-element-b6f50b0 .elementor-icon-box-wrapper { display: grid !important; grid-template-columns: auto 1fr; column-gap: 12px; align-items: center; text-align: left !important; }
  .page-id-8 .elementor-element-b6f50b0 .elementor-icon-box-content { display: contents !important; }
  .page-id-8 .elementor-element-b6f50b0 .elementor-icon-box-icon { margin: 0 !important; line-height: 0; }
  .page-id-8 .elementor-element-b6f50b0 .elementor-icon-box-icon svg, .page-id-8 .elementor-element-b6f50b0 .elementor-icon-box-icon i { width: 26px !important; height: 26px !important; font-size: 26px !important; }
  .page-id-8 .elementor-element-b6f50b0 .elementor-icon-box-title { margin: 0 !important; font-size: 19px !important; }
  .page-id-8 .elementor-element-b6f50b0 .elementor-icon-box-description { grid-column: 1 / -1; margin-top: 10px !important; font-size: 16px !important; line-height: 1.5 !important; }
}


/* 20. Blog, revisione UX del 6/11 sera: titoli negli articoli, card, "Carica altri", telefono */
/* 20a. Titoli dentro gli articoli: carattere e colore del sito, a sinistra, staccati dal paragrafo sopra */
.elementor-widget-theme-post-content :is(h2,h3,h4) { text-align: left !important; color: #15233A !important; margin: 2.2em 0 .6em !important; }
.elementor-widget-theme-post-content h2 { font-family: "Libre Baskerville", Georgia, serif !important; font-weight: 400 !important; font-size: 27px !important; line-height: 1.3 !important; }
.elementor-widget-theme-post-content :is(h3,h4) { font-family: "Lato", sans-serif !important; font-weight: 700 !important; font-size: 21px !important; line-height: 1.35 !important; text-transform: none !important; }
.elementor-widget-theme-post-content :is(h2,h3):first-child { margin-top: 0 !important; }
/* 20b. Card del blog e degli archivi: angoli 22px (la 19g perdeva per specificita), un solo grigio */
.wpr-grid .wpr-grid-item { border-radius: 22px !important; overflow: hidden !important; background-color: #F4F5F7 !important; }
.wpr-grid .wpr-grid-item .wpr-grid-media-wrap,
.wpr-grid .wpr-grid-item .wpr-grid-image-wrap { border-radius: 0 !important; }
.tmc-rubrica { border-radius: 22px !important; background-color: #F4F5F7 !important; }
/* 20c. "Carica altri articoli": riconoscibile come pulsante secondario */
.wpr-load-more-btn { border: 1px solid #15233A !important; border-radius: 2px !important; background: #fff !important; color: #15233A !important; padding: 12px 22px !important; }
.wpr-load-more-btn:hover, .wpr-load-more-btn:focus-visible { background: #15233A !important; color: #fff !important; }
/* 20d. Condivisione: icone nel blu del sito */
.elementor-share-btn { background-color: #15233A !important; }
.elementor-share-btn:hover { background-color: #2B3A55 !important; }
/* 20e. Telefono */
@media (max-width: 767px) {
  .elementor-widget-theme-post-content h2 { font-size: 23px !important; }
  .elementor-widget-theme-post-content :is(h3,h4) { font-size: 19px !important; }
  .tmc-rubrica { padding: 16px 18px !important; }
  .tmc-rubrica .elementor-widget-text-editor p:first-child { display: none !important; }
  .tmc-rubrica .elementor-heading-title { font-size: 20px !important; margin: 0 0 4px !important; }
  .elementor-390 .elementor-element-38d9b590 > .e-con-inner { padding-left: 0 !important; padding-right: 0 !important; }
  /* archivi (categorie, ricerca, tag): card non piu a filo dello schermo */
  body:is(.archive,.search) .elementor-widget-wpr-grid { padding-left: 16px !important; padding-right: 16px !important; }
}

/* ===== 22. Home: Aree di competenza come fascia chiara, solo testo (proposta C in chiaro, scelta di Luca 6/11/2026) ===== */
.elementor-element-5eb59ab.elementor-element-5eb59ab,.elementor-element-3bd424b.elementor-element-3bd424b{background:#F3F5F8!important}
.elementor-element-5eb59ab{padding-top:96px!important;padding-bottom:8px!important}
.elementor-element-5eb59ab>.e-con,.elementor-element-5eb59ab .e-con{max-width:1160px;margin-inline:auto;padding-inline:0!important}
.elementor-element-5eb59ab .elementor-heading-title{color:#15233A!important;font-family:'Libre Baskerville',Georgia,serif!important;text-align:left!important}
.elementor-element-3bd424b{padding:40px 24px 96px!important}
.elementor-element-3bd424b .elementor-element-ca47461{max-width:1160px;margin-inline:auto;padding:0!important}
.elementor-element-3bd424b .elementor-element-7997fbde{column-gap:48px!important;row-gap:40px!important;padding:0!important}
.elementor-element-7997fbde>.e-con{background:transparent!important;box-shadow:none!important;border:0!important;border-radius:0!important;padding:0!important}
.elementor-element-3bd424b .elementor-element-7997fbde>.e-con.e-con{padding:0!important}
.elementor-element-3bd424b .jkit-icon-box-wrapper{position:relative;background:transparent!important;box-shadow:none!important;border:0!important;border-top:1px solid rgba(21,35,58,.25)!important;border-radius:0!important;padding:24px 0 0!important;transition:border-color .2s;height:100%;display:flex!important;flex-direction:column}
.elementor-element-3bd424b .jkit-icon-box-wrapper::before,.elementor-element-3bd424b .jkit-icon-box-wrapper::after{display:none!important}
.elementor-element-3bd424b .icon-box-header{display:none!important}
.elementor-element-3bd424b .icon-box-body{padding:0!important;text-align:left!important;flex:1;display:flex;flex-direction:column}
.elementor-element-3bd424b .icon-box-body .title{font:400 22px/1.3 'Libre Baskerville',Georgia,serif!important;color:#15233A!important;margin:0 0 12px!important;text-underline-offset:5px;text-decoration-thickness:1px}
.elementor-element-3bd424b .icon-box-description{font:400 15px/1.6 Lato,sans-serif!important;color:#4A5568!important;margin:0 0 18px!important;flex:1}
.elementor-element-3bd424b .icon-box-button{margin:0!important}
.elementor-element-3bd424b .icon-box-button a{position:static!important;border:0!important;background:none!important;box-shadow:none!important;padding:0!important;font:700 15px/1.4 Lato,sans-serif!important;border-radius:0!important}
html body .elementor-element-3bd424b.elementor-element-3bd424b .icon-box .icon-box-button .btn-wrapper{padding:0!important;margin:0!important;display:block!important;text-align:left!important}
html body .elementor-element-3bd424b.elementor-element-3bd424b .icon-box .icon-box-button .btn-wrapper a{padding:0!important;margin:0!important;border:0!important;text-decoration:underline!important;text-decoration-color:#15233A!important;text-underline-offset:4px!important;display:inline!important}
html body .elementor-element-3bd424b.elementor-element-3bd424b .icon-box .icon-box-button .btn-wrapper a,html body .elementor-element-3bd424b.elementor-element-3bd424b .icon-box .icon-box-button .btn-wrapper a *{color:#15233A!important;fill:#15233A!important}
html body .elementor-element-3bd424b.elementor-element-3bd424b .icon-box .icon-box-button .btn-wrapper a:focus-visible{outline:2px solid #15233A!important;outline-offset:4px}
.elementor-element-3bd424b .icon-box-button a i,.elementor-element-3bd424b .icon-box-button a svg{display:none!important}
.elementor-element-3bd424b .icon-box-button a::after{content:'';position:absolute;inset:-8px 0 0;z-index:1}
.elementor-element-7997fbde>.e-con>.elementor-widget{flex-grow:1;height:100%}
.elementor-element-7997fbde>.e-con>.elementor-widget>.elementor-widget-container,.elementor-element-7997fbde .jeg-elementor-kit{height:100%}
.elementor-element-3bd424b .jkit-icon-box-wrapper:hover{border-top-color:#15233A!important}
.elementor-element-3bd424b .jkit-icon-box-wrapper:hover .title{text-decoration:underline}
@media(max-width:1024px){.elementor-element-3bd424b .elementor-element-7997fbde{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:767px){.elementor-element-5eb59ab{padding-top:64px!important}.elementor-element-5eb59ab.elementor-element-5eb59ab{padding-left:20px!important;padding-right:20px!important}.elementor-element-3bd424b.elementor-element-3bd424b{padding:32px 20px 64px!important}.elementor-element-3bd424b .e-con-inner,.elementor-element-3bd424b .elementor-element-ca47461,.elementor-element-3bd424b .elementor-element-7997fbde{padding-left:0!important;padding-right:0!important;margin-left:0!important;margin-right:0!important}.elementor-element-3bd424b .elementor-element-7997fbde.elementor-element-7997fbde{grid-template-columns:1fr!important;gap:36px!important;row-gap:36px!important}}

/* ===== 20f. Card blog: "Leggi l'articolo" come link testuale, niente taglio negli angoli (6/11/2026) ===== */
.wpr-grid-item-below-content{padding:20px 24px 24px!important;background:transparent!important}
.wpr-grid-last-element-yes .wpr-grid-item-below-content > div:last-child{left:24px!important;right:auto!important;bottom:14px!important}
.wpr-grid-item-read-more .inner-block a{border:0!important;background:none!important;padding:0!important;margin:0!important;min-height:44px;display:inline-flex!important;align-items:center;color:#15233A!important;font:700 15px/1.2 Lato,sans-serif!important;text-decoration:underline!important;text-decoration-thickness:1px!important;text-underline-offset:4px!important;border-radius:0!important;overflow:visible!important}
.wpr-grid-item-read-more .inner-block a:hover{color:#2B4066!important;text-decoration-thickness:2px!important}
.wpr-grid-item-read-more .inner-block a:focus-visible{outline:2px solid #15233A;outline-offset:3px}

/* ===== 23. WhatsApp valorizzato: pulsante piu grande e con ombra su desktop, icona da 60px su mobile (richiesta di Luca, 6/11/2026) ===== */
@media(min-width:768px){html body .qlwapp__container.qlwapp__container--bottom-right{bottom:28px!important;right:28px!important}html body .qlwapp__container .qlwapp__button.qlwapp__button--button{height:56px!important;margin:0!important;padding:0 26px 0 20px!important;gap:12px!important;display:inline-flex!important;align-items:center!important;background:#25D366!important;color:#15233A!important;border-radius:2px!important;font:700 16px/1 Lato,sans-serif!important;letter-spacing:.01em;box-shadow:0 12px 30px rgba(21,35,58,.30),0 2px 6px rgba(21,35,58,.18)!important;transition:transform .2s ease,box-shadow .2s ease}html body .qlwapp__container .qlwapp__button.qlwapp__button--button:hover{transform:translateY(-2px);box-shadow:0 16px 36px rgba(21,35,58,.34),0 3px 8px rgba(21,35,58,.2)!important}html body .qlwapp__container .qlwapp__button .qlwapp__icon{font-size:26px!important;color:#15233A!important}html body .qlwapp__container .qlwapp__button:focus-visible{outline:3px solid #15233A!important;outline-offset:3px}}
@media(max-width:767px){html body .qlwapp__container .qlwapp__button{width:60px!important;height:60px!important;box-shadow:0 0 0 3px #fff,0 10px 24px rgba(21,35,58,.32)!important}html body .qlwapp__container .qlwapp__button .qlwapp__icon{font-size:28px!important}}
@media(prefers-reduced-motion:reduce){html body .qlwapp__container .qlwapp__button{transition:none!important}html body .qlwapp__container .qlwapp__button:hover{transform:none!important}}

/* ===== 21. Footer sedi (6/11/2026) ===== */
footer .elementor-element-c77817f{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));column-gap:48px;row-gap:28px;align-items:start;max-width:1160px;margin-inline:auto;padding:72px 24px 48px!important}
footer .elementor-element-db358c6{display:contents!important}
footer .elementor-element-1115f94c{align-items:flex-start!important;gap:24px!important}
footer .elementor-element-37f6f9d{text-align:left!important}
footer .elementor-element-37f6f9d img{width:112px!important;height:auto}
footer .elementor-element-6c00ab2 .elementor-social-icons-wrapper{justify-content:flex-start!important;gap:18px}
footer .elementor-element-6c00ab2 .elementor-grid-item{margin:0!important}
footer .elementor-element-6c00ab2 .elementor-social-icon{background:none!important;padding:0!important;width:auto!important;height:auto!important;font-size:20px!important;min-width:44px;min-height:44px;display:inline-flex!important;align-items:center;justify-content:flex-start}
footer .elementor-element-6c00ab2 .elementor-social-icon svg{width:20px!important;height:20px!important;fill:rgba(255,255,255,.6)!important;transition:fill .2s}
footer .elementor-element-6c00ab2 .elementor-social-icon:hover svg,footer .elementor-element-6c00ab2 .elementor-social-icon:focus-visible svg{fill:#fff!important}
footer .elementor-element-db358c6 .elementor-widget-heading .elementor-heading-title{font:400 21px/1.3 "Libre Baskerville",Georgia,serif!important;color:#fff!important;margin:0}
footer .elementor-element-db358c6 .elementor-widget-heading .elementor-heading-title::after{content:"";display:block;width:40px;height:1px;background:rgba(255,255,255,.22);margin-top:16px}
footer .elementor-element-db358c6 .elementor-widget-heading{margin-bottom:18px!important}
footer .elementor-element-db358c6 .elementor-icon-list-items{display:flex;flex-direction:column;gap:10px}
footer .elementor-element-db358c6 .elementor-icon-list-item{margin:0!important;padding:0!important}
footer .elementor-element-db358c6 .elementor-icon-list-item>a{display:flex!important;align-items:flex-start!important;gap:12px;min-height:44px;color:#C9D1DC!important;text-decoration:none}
footer .elementor-element-db358c6 .elementor-icon-list-icon{flex:0 0 16px;width:16px!important;height:16px;margin-top:4px;background:rgba(255,255,255,.6);-webkit-mask:var(--tmc-ic) center/16px no-repeat;mask:var(--tmc-ic) center/16px no-repeat}
footer .elementor-element-db358c6 .elementor-icon-list-icon>*{display:none!important}
footer .elementor-element-db358c6 .elementor-icon-list-item:nth-child(1){--tmc-ic:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 10c0 4.99-5.54 10.19-7.4 11.8a1 1 0 0 1-1.2 0C9.54 20.19 4 14.99 4 10a8 8 0 0 1 16 0'/%3E%3Ccircle cx='12' cy='10' r='3'/%3E%3C/svg%3E")}
footer .elementor-element-db358c6 .elementor-icon-list-item:nth-child(2){--tmc-ic:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M22 16.92v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6 19.79 19.79 0 0 1-3.07-8.67A2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72c.13.96.36 1.9.7 2.81a2 2 0 0 1-.45 2.11L8.09 9.91a16 16 0 0 0 6 6l1.27-1.27a2 2 0 0 1 2.11-.45c.91.34 1.85.57 2.81.7A2 2 0 0 1 22 16.92z'/%3E%3C/svg%3E")}
footer .elementor-element-db358c6 .elementor-icon-list-item:nth-child(3){--tmc-ic:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect width='20' height='16' x='2' y='4' rx='2'/%3E%3Cpath d='m22 7-8.97 5.7a1.94 1.94 0 0 1-2.06 0L2 7'/%3E%3C/svg%3E")}
footer .elementor-element-db358c6 .elementor-icon-list-text{font:400 15px/1.6 Lato,sans-serif!important;color:#C9D1DC!important;padding:0!important;text-underline-offset:3px}
footer .elementor-element-db358c6 .elementor-icon-list-item>a:hover .elementor-icon-list-text,footer .elementor-element-db358c6 .elementor-icon-list-item>a:focus-visible .elementor-icon-list-text{color:#fff!important;text-decoration:underline;text-decoration-color:#fff}
footer .elementor-element-db358c6 .elementor-icon-list-item>a:focus-visible{outline:2px solid #fff;outline-offset:3px}
footer .tmc-f-orari{grid-column:2/-1;display:flex;align-items:center;gap:12px;padding-top:24px;border-top:1px solid rgba(255,255,255,.1);font:400 14px/1.5 Lato,sans-serif;color:rgba(255,255,255,.6)}
footer .tmc-f-orari::before{content:"";flex:0 0 16px;height:16px;background:rgba(255,255,255,.6);-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10'/%3E%3Cpath d='M12 6v6l4 2'/%3E%3C/svg%3E") center/16px no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10'/%3E%3Cpath d='M12 6v6l4 2'/%3E%3C/svg%3E") center/16px no-repeat}
footer .elementor-element-4e917fcc{border-top:1px solid rgba(255,255,255,.1)!important;padding-bottom:96px!important}
footer .elementor-element-4e917fcc,footer .elementor-element-4e917fcc *{font-size:13px!important;color:rgba(255,255,255,.55)!important;font-weight:400!important}
footer .elementor-element-4e917fcc a:hover{color:#fff!important;text-decoration:underline}
@media(max-width:1024px){footer .elementor-element-c77817f{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:40px}footer .tmc-f-orari{grid-column:1/-1}}
@media(max-width:767px){footer .elementor-element-c77817f{grid-template-columns:1fr;row-gap:32px;padding:56px 20px 32px!important}footer .elementor-element-4e917fcc{padding-bottom:110px!important}}
footer .elementor-element-c77817f>.e-con,footer .elementor-element-db358c6>.e-con{width:auto!important;max-width:none!important;min-width:0!important;--width:auto!important;--container-widget-width:auto}
footer .elementor-element-37f6f9d{width:120px!important;max-width:120px!important;--container-widget-width:120px!important}
footer .elementor-element-37f6f9d img{width:120px!important;max-width:120px!important}
footer .elementor-element-6c00ab2 .elementor-social-icons-wrapper{display:flex!important;flex-wrap:nowrap!important}
footer .elementor-element-db358c6 .elementor-icon-list-item>a{min-height:0}
footer .elementor-element-db358c6 .elementor-icon-list-text{margin:0!important}
footer .elementor-element-db358c6 .elementor-icon-list-items{gap:12px}
footer .elementor-element-4e917fcc{max-width:1160px!important;margin-inline:auto!important;padding-left:24px!important;padding-right:24px!important}
@media(max-width:767px){footer .elementor-element-db358c6 .elementor-icon-list-item>a{min-height:44px;align-items:center!important}footer .elementor-element-db358c6 .elementor-icon-list-icon{margin-top:0}}
footer.elementor-location-footer,footer[data-elementor-type=footer]{background:#15233A}
footer .elementor-element-c77817f>.e-con,footer .elementor-element-db358c6>.e-con{padding:0!important}
footer .elementor-element-4e917fcc .elementor-icon-list-text,footer .elementor-element-4e917fcc .elementor-heading-title{font-size:13px!important;color:rgba(255,255,255,.55)!important}
@media(max-width:767px){footer .elementor-element-4e917fcc{padding:24px 20px 104px!important;text-align:left}footer .elementor-element-4e917fcc>.e-con{padding:0!important;align-items:flex-start!important}footer .elementor-element-4e917fcc .elementor-icon-list-items,footer .elementor-element-4e917fcc .elementor-heading-title{justify-content:flex-start!important;text-align:left!important}}
footer .tmc-f-orari p,footer .tmc-f-orari .elementor-widget-container{margin:0!important;padding:0!important;font:400 14px/1.5 Lato,sans-serif!important;color:rgba(255,255,255,.6)!important}

/* ===== 24. Header: pulsante Contatti sempre leggibile (attivo, hover, focus) (6/11/2026) ===== */
@media(min-width:1025px){html body .elementor-location-header .elementor-nav-menu--main .menu-item-758>a.elementor-item,html body .elementor-location-header .elementor-nav-menu--main .menu-item-758>a.elementor-item.elementor-item-active,html body .elementor-location-header .elementor-nav-menu--main .menu-item-758>a.elementor-item:hover,html body .elementor-location-header .elementor-nav-menu--main .menu-item-758>a.elementor-item:focus{color:#15233A!important;background:#fff!important}html body .elementor-location-header .elementor-nav-menu--main .menu-item-758>a.elementor-item:hover{background:#E6EAF0!important}html body .elementor-location-header .elementor-nav-menu--main .menu-item-758>a.elementor-item:focus-visible{outline:2px solid #fff!important;outline-offset:3px}html body .elementor-location-header .elementor-nav-menu--main .menu-item-758>a.elementor-item::before,html body .elementor-location-header .elementor-nav-menu--main .menu-item-758>a.elementor-item::after{display:none!important}}

/* ===== 29. Leggibilita: card notizie su sfondo chiaro + nomi fondatori senza sottolineatura (7/11/2026) ===== */
html body .wpr-grid-item .wpr-grid-item-title .inner-block a{color:#15233A!important}
html body .wpr-grid-item .wpr-grid-item-date,html body .wpr-grid-item .wpr-grid-item-date *{color:#5A6472!important}
html body .wpr-grid-item .wpr-grid-item-excerpt,html body .wpr-grid-item .wpr-grid-item-excerpt *{color:#4A5568!important}
html body .wpr-grid-item .wpr-grid-item-date .wpr-grid-extra-text-right{display:none!important}
html body a.e-con,html body a.e-con:hover,html body a.e-con:focus{text-decoration:none!important}
html body a.e-con:hover .elementor-heading-title,html body a.e-con:focus-visible .elementor-heading-title{text-decoration:underline;text-decoration-color:currentColor;text-decoration-thickness:1px;text-underline-offset:5px}

/* ===== 30. Footer piu sottile (7/11/2026) ===== */
footer .elementor-element-b09fa78,footer .elementor-element-c92298c{padding:0!important}
@media(min-width:1025px){footer .elementor-element-c77817f{grid-template-columns:1.15fr repeat(3,minmax(0,1fr));column-gap:40px;row-gap:14px}}
footer .elementor-element-c77817f{padding:56px 24px 24px!important}
footer .elementor-element-1115f94c{gap:16px!important}
footer .elementor-element-37f6f9d,footer .elementor-element-37f6f9d img{width:88px!important;max-width:88px!important;--container-widget-width:88px!important}
footer .elementor-element-6c00ab2 .elementor-social-icons-wrapper{gap:4px!important}
footer .elementor-element-6c00ab2 .elementor-social-icon{min-width:36px;min-height:36px}
footer .elementor-element-6c00ab2 .elementor-social-icon svg{width:16px!important;height:16px!important;fill:rgba(255,255,255,.5)!important}
footer .elementor-element-db358c6 .elementor-widget-heading .elementor-heading-title{font:700 12px/1.2 Lato,sans-serif!important;letter-spacing:.14em;text-transform:uppercase;color:#fff!important}
footer .elementor-element-db358c6 .elementor-widget-heading .elementor-heading-title::after{display:none}
footer .elementor-element-db358c6 .elementor-widget-heading{margin-bottom:12px!important}
footer .elementor-element-db358c6 .elementor-icon-list-items{gap:6px}
footer .elementor-element-db358c6 .elementor-icon-list-text{font:400 14px/1.55 Lato,sans-serif!important;color:#AEB8C6!important}
footer .elementor-element-db358c6 .elementor-icon-list-item>a{gap:10px}
footer .elementor-element-db358c6 .elementor-icon-list-icon{flex-basis:14px;width:14px!important;height:14px;margin-top:4px;background:rgba(255,255,255,.4);-webkit-mask-size:14px;mask-size:14px}
footer .tmc-f-orari{border-top:0;padding-top:4px;gap:10px}
footer .tmc-f-orari,footer .tmc-f-orari p{font-size:13px!important;color:rgba(255,255,255,.66)!important}
footer .tmc-f-orari::before{flex-basis:14px;height:14px;background:rgba(255,255,255,.4);-webkit-mask-size:14px;mask-size:14px}
footer .elementor-element-4e917fcc{padding:16px 24px 28px!important;border-top-color:rgba(255,255,255,.08)!important;align-items:center!important}
footer .elementor-element-4e917fcc>.e-con{padding:0!important}
footer .elementor-element-4e917fcc,footer .elementor-element-4e917fcc *,footer .elementor-element-4e917fcc .elementor-heading-title,footer .elementor-element-4e917fcc .elementor-icon-list-text{font-size:12.5px!important;color:rgba(255,255,255,.62)!important}
@media(max-width:767px){footer .elementor-element-c77817f{row-gap:24px;padding:44px 20px 24px!important}footer .elementor-element-4e917fcc{padding:16px 20px 104px!important;gap:10px!important;flex-direction:column!important}footer .elementor-element-1115f94c{flex-direction:row!important;justify-content:space-between!important;align-items:center!important;width:100%!important}footer .elementor-element-37f6f9d,footer .elementor-element-37f6f9d img{width:76px!important;max-width:76px!important}footer .elementor-element-6c00ab2 .elementor-social-icon{min-width:44px;min-height:44px;justify-content:center}footer .elementor-element-db358c6 .elementor-widget-heading{margin-bottom:2px!important}footer .elementor-element-db358c6 .elementor-icon-list-items{gap:0}footer .elementor-element-4e917fcc>.e-con{padding:0!important;margin:0!important;min-height:0!important}footer .elementor-element-4e917fcc .elementor-icon-list-items,footer .elementor-element-4e917fcc .elementor-icon-list-item,footer .elementor-element-4e917fcc .elementor-widget{padding:0!important;margin:0!important}}

/* ===== 27. Lo studio (1752): fondatori minimal su bianco (7/11/2026) ===== */
html body .elementor-1752 .elementor-element-8e219c6.elementor-element-8e219c6,html body .elementor-1752 .elementor-element-3a68f1b.elementor-element-3a68f1b{background:#fff!important;background-image:none!important}
html body .elementor-1752 .elementor-element-8e219c6{padding:96px 24px 0!important;min-height:0!important}
html body .elementor-1752 .elementor-element-8e219c6>.e-con-inner,html body .elementor-1752 .elementor-element-8e219c6 .elementor-element-8c378ec{max-width:1160px!important;margin-inline:auto!important;padding:0!important;width:100%!important}
html body .elementor-1752 .elementor-element-75cbbee{width:100%!important}
html body .elementor-1752 .elementor-element-75cbbee .elementor-heading-title{text-align:left!important;font:400 34px/1.25 'Libre Baskerville',Georgia,serif!important;color:#15233A!important;padding-bottom:24px;border-bottom:1px solid #D9DDE3}
html body .elementor-1752 .elementor-element-75cbbee .elementor-heading-title::before{content:'Le persone';display:block;font:700 12px/1 Lato,sans-serif;letter-spacing:.14em;text-transform:uppercase;color:#4A5568;margin-bottom:16px}
html body .elementor-1752 .elementor-element-3a68f1b.elementor-element-3a68f1b{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:48px!important;max-width:none!important;padding:40px max(24px,calc((100% - 1160px)/2)) 104px!important}
html body .elementor-1752 .elementor-element-3a68f1b a.e-con{background:none!important;background-image:none!important;min-height:0!important;height:auto!important;width:auto!important;max-width:none!important;padding:0!important;margin:0!important;flex:none!important;gap:0!important;display:flex!important;flex-direction:column!important;justify-content:flex-start!important;border-radius:0!important;box-shadow:none!important;overflow:visible!important;text-decoration:none!important;--width:auto}
html body .elementor-1752 .elementor-element-3a68f1b a.e-con::before{content:''!important;display:block!important;position:static!important;inset:auto!important;width:100%!important;height:auto!important;aspect-ratio:1/1;background:var(--tmc-ph) center 22%/cover no-repeat!important;border-radius:22px;opacity:1!important;filter:grayscale(1)}
html body .elementor-1752 .elementor-element-3a68f1b a.e-con::after{content:'Profilo \2192';display:block;margin-top:14px;font:700 14px/1.4 Lato,sans-serif;color:#15233A;text-decoration:underline;text-decoration-color:rgba(21,35,58,.3);text-underline-offset:4px}
html body .elementor-1752 .elementor-element-3a68f1b a.e-con:hover::after{text-decoration-color:#15233A}
html body .elementor-1752 .elementor-element-3a68f1b a.e-con:focus-visible{outline:2px solid #15233A;outline-offset:6px;border-radius:22px}
html body .elementor-1752 .elementor-element-3a68f1b a.e-con>.e-con{position:static!important;padding:20px 0 0!important;background:none!important;width:100%!important;min-height:0!important;gap:4px!important;justify-content:flex-start!important;align-items:flex-start!important;flex:none!important}
html body .elementor-1752 .elementor-element-3a68f1b .elementor-widget-heading{width:auto!important;margin:0!important}
html body .elementor-1752 .elementor-element-3a68f1b h3.elementor-heading-title{font:400 22px/1.3 'Libre Baskerville',Georgia,serif!important;color:#15233A!important;text-decoration:none!important}
html body .elementor-1752 .elementor-element-e84b6d2 .elementor-heading-title,html body .elementor-1752 .elementor-element-2d6d18d .elementor-heading-title,html body .elementor-1752 .elementor-element-12166ba .elementor-heading-title{font:400 15px/1.4 Lato,sans-serif!important;color:#4A5568!important;text-decoration:none!important}
@media(max-width:1024px){html body .elementor-1752 .elementor-element-3a68f1b.elementor-element-3a68f1b{grid-template-columns:repeat(2,minmax(0,1fr));gap:40px!important}}
@media(max-width:767px){html body .elementor-1752 .elementor-element-8e219c6{padding:64px 20px 0!important}html body .elementor-1752 .elementor-element-75cbbee .elementor-heading-title{font-size:28px!important}html body .elementor-1752 .elementor-element-3a68f1b.elementor-element-3a68f1b{grid-template-columns:1fr!important;gap:0!important;padding:32px 20px 72px!important}html body .elementor-1752 .elementor-element-3a68f1b a.e-con.e-con{display:grid!important;grid-template-columns:96px 1fr;grid-template-rows:auto auto;column-gap:20px!important;row-gap:0!important;align-items:center;padding:18px 0!important;border-bottom:1px solid #D9DDE3!important}html body .elementor-1752 .elementor-element-3a68f1b a.e-con::before{grid-column:1;grid-row:1/span 2;border-radius:14px}html body .elementor-1752 .elementor-element-3a68f1b a.e-con>.e-con{grid-column:2;grid-row:1;padding:0!important;align-self:end}html body .elementor-1752 .elementor-element-3a68f1b a.e-con::after{grid-column:2;grid-row:2;align-self:start;margin-top:8px}html body .elementor-1752 .elementor-element-3a68f1b h3.elementor-heading-title{font-size:19px!important}}
html body .elementor-1752 .elementor-element-e57688f{--tmc-ph:url("/wp-content/uploads/2025/12/pasquale-tarricone-scaled.webp")}
html body .elementor-1752 .elementor-element-895162d{--tmc-ph:url("/wp-content/uploads/2025/12/giancarlo-caporaso-scaled.webp")}
html body .elementor-1752 .elementor-element-f09b837{--tmc-ph:url("/wp-content/uploads/2025/12/giuseppe-clienti-scaled.webp")}

/* ===== 25. Pagina Contatti (702): versione moderna (7/11/2026) ===== */
html body .elementor-702 .elementor-element-14a391ca{padding:72px 24px 8px!important;min-height:0!important}
html body .elementor-702 .elementor-element-1ad3d32a{max-width:1160px!important;margin-inline:auto!important;padding:0!important}
html body .elementor-702 .elementor-element-1ad3d32a>.e-con-inner{max-width:none!important;padding:0!important;align-items:flex-start!important}
html body .elementor-702 .elementor-element-4e5226b2{width:100%!important;text-align:left!important}
html body .elementor-702 .elementor-element-4e5226b2 .elementor-heading-title{text-align:left!important;font:400 52px/1.15 'Libre Baskerville',Georgia,serif!important;color:#15233A!important;letter-spacing:-.01em;padding-bottom:28px;border-bottom:1px solid #D9DDE3}
html body .elementor-702 .elementor-element-3c41929{padding:48px 24px 96px!important}
html body .elementor-702 .elementor-element-3c41929>.e-con-inner{max-width:1160px!important;margin-inline:auto!important;padding:0!important;display:grid!important;grid-template-columns:minmax(0,7fr) minmax(0,5fr);column-gap:64px;align-items:start}
html body .elementor-702 .elementor-element-fd332e2,html body .elementor-702 .elementor-element-660e024{width:auto!important;max-width:none!important;padding:0!important;--width:auto}
html body .elementor-702 .elementor-element-e80b38a .elementor-heading-title{font:400 30px/1.25 'Libre Baskerville',Georgia,serif!important;color:#15233A!important;text-align:left!important}
html body .elementor-702 .elementor-element-4717893,html body .elementor-702 .elementor-element-4717893 p{font:400 17px/1.65 Lato,sans-serif!important;color:#4A5568!important;margin:0!important;max-width:560px}
html body .elementor-702 .elementor-element-2efb3e8 .elementor-form-fields-wrapper{row-gap:22px!important;margin-top:8px}
html body .elementor-702 .elementor-element-2efb3e8 .elementor-field-group{margin-bottom:0!important}
html body .elementor-702 .elementor-element-2efb3e8 .elementor-field-label{font:700 14px/1.4 Lato,sans-serif!important;color:#15233A!important;margin:0 0 8px!important;padding:0!important;text-decoration:none!important;border:0!important}
html body .elementor-702 .elementor-element-2efb3e8 .elementor-field-textual,html body .elementor-702 .elementor-element-2efb3e8 select.elementor-field{min-height:54px!important;padding:14px 16px!important;background:#F6F7F9!important;border:1px solid #D2D8E0!important;border-radius:2px!important;font:400 16px/1.4 Lato,sans-serif!important;color:#15233A!important;box-shadow:none!important;transition:border-color .2s,background-color .2s,box-shadow .2s}
html body .elementor-702 .elementor-element-2efb3e8 textarea.elementor-field-textual{min-height:140px!important;resize:vertical}
html body .elementor-702 .elementor-element-2efb3e8 .elementor-field-textual::placeholder{color:#8A94A3!important;opacity:1}
html body .elementor-702 .elementor-element-2efb3e8 .elementor-field-textual:hover,html body .elementor-702 .elementor-element-2efb3e8 select.elementor-field:hover{border-color:#9AA5B4!important}
html body .elementor-702 .elementor-element-2efb3e8 .elementor-field-textual:focus,html body .elementor-702 .elementor-element-2efb3e8 select.elementor-field:focus{outline:0!important;background:#fff!important;border-color:#15233A!important;box-shadow:0 0 0 3px rgba(21,35,58,.14)!important}
html body .elementor-702 .elementor-element-2efb3e8 .elementor-select-wrapper::before{content:''!important;width:10px;height:10px;border-right:1.5px solid #15233A;border-bottom:1.5px solid #15233A;transform:translateY(-70%) rotate(45deg)!important;right:20px!important;top:50%!important;font-size:0!important}
html body .elementor-702 .elementor-element-2efb3e8 .select-caret-down-wrapper{display:none!important}
html body .elementor-702 .elementor-element-2efb3e8 select.elementor-field{appearance:none;-webkit-appearance:none;padding-right:44px!important}
html body .elementor-702 .elementor-element-2efb3e8 .elementor-field-type-upload input[type=file]{width:100%;padding:18px 16px!important;border:1px dashed #9AA5B4!important;border-radius:2px!important;background:#fff!important;font:400 15px/1.4 Lato,sans-serif!important;color:#4A5568!important;cursor:pointer}
html body .elementor-702 .elementor-element-2efb3e8 .elementor-field-type-upload input[type=file]::file-selector-button{margin-right:14px;padding:10px 16px;border:1px solid #15233A;border-radius:2px;background:#fff;color:#15233A;font:700 14px/1 Lato,sans-serif;cursor:pointer}
html body .elementor-702 .elementor-element-2efb3e8 .elementor-field-type-upload input[type=file]:hover::file-selector-button{background:#15233A;color:#fff}
html body .elementor-702 .elementor-element-2efb3e8 .elementor-field-type-upload input[type=file]:focus-visible{outline:2px solid #15233A;outline-offset:3px}
html body .elementor-702 .elementor-element-2efb3e8 .elementor-field-type-acceptance .elementor-field-label{display:none!important}
html body .elementor-702 .elementor-element-2efb3e8 .elementor-field-subgroup .elementor-field-option{display:flex!important;align-items:flex-start;gap:12px}
html body .elementor-702 .elementor-element-2efb3e8 .elementor-field-type-acceptance input[type=checkbox]{width:20px;height:20px;margin:2px 0 0!important;flex:0 0 20px;accent-color:#15233A;cursor:pointer}
html body .elementor-702 .elementor-element-2efb3e8 .elementor-field-type-acceptance label{font:400 15px/1.55 Lato,sans-serif!important;color:#4A5568!important;margin:0!important}
html body .elementor-702 .elementor-element-2efb3e8 .elementor-field-type-acceptance a{color:#15233A!important;text-decoration:underline;text-underline-offset:3px}
html body .elementor-702 .elementor-element-2efb3e8 .e-form__buttons{margin-top:6px}
html body .elementor-702 .elementor-element-2efb3e8 .elementor-button{min-height:56px!important;width:100%;border-radius:2px!important;background:#15233A!important;color:#fff!important;font:700 16px/1 Lato,sans-serif!important;letter-spacing:.01em;transition:background-color .2s}
html body .elementor-702 .elementor-element-2efb3e8 .elementor-button .elementor-button-text::after{content:'\2192';margin-left:10px;display:inline-block;transition:transform .2s}
html body .elementor-702 .elementor-element-2efb3e8 .elementor-button:hover{background:#2B4066!important}
html body .elementor-702 .elementor-element-2efb3e8 .elementor-button:hover .elementor-button-text::after{transform:translateX(4px)}
html body .elementor-702 .elementor-element-2efb3e8 .elementor-button:focus-visible{outline:2px solid #15233A;outline-offset:3px}
html body .elementor-702 .elementor-element-660e024{background:#15233A!important;border:0!important;border-radius:22px!important;padding:44px 40px!important;position:sticky!important;top:112px;gap:0!important;box-shadow:none!important}
html body .elementor-702 .elementor-element-4d2f6f4 .elementor-heading-title{font:400 26px/1.3 'Libre Baskerville',Georgia,serif!important;color:#fff!important;margin-bottom:24px!important}
html body .elementor-702 .elementor-element-3fde6c8,html body .elementor-702 .elementor-element-3fde6c8 p{font:400 15px/1.65 Lato,sans-serif!important;color:#C9D1DC!important}
html body .elementor-702 .elementor-element-3fde6c8 strong{color:#fff!important;font-weight:700}
html body .elementor-702 .elementor-element-3fde6c8 ol{list-style:none;counter-reset:tmcpi;margin:0 0 28px!important;padding:0!important;display:flex;flex-direction:column;gap:18px}
html body .elementor-702 .elementor-element-3fde6c8 ol li{counter-increment:tmcpi;display:grid;grid-template-columns:36px 1fr;column-gap:14px;align-items:start;color:#fff;font:400 16px/1.55 Lato,sans-serif;margin:0!important;padding:0!important}
html body .elementor-702 .elementor-element-3fde6c8 ol li::before{content:counter(tmcpi);width:36px;height:36px;border:1px solid rgba(255,255,255,.35);border-radius:50%;display:flex;align-items:center;justify-content:center;font:400 15px/1 'Libre Baskerville',Georgia,serif;color:#fff;margin-top:-6px}
html body .elementor-702 .elementor-element-3fde6c8 p{margin:0!important;padding:20px 0 0!important;border-top:1px solid rgba(255,255,255,.14)}
html body .elementor-702 .elementor-element-3fde6c8 p+p{margin-top:20px!important}
html body .elementor-702 .elementor-element-24cbb9dc{background:#F3F5F8!important;padding:88px 24px 96px!important;display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;max-width:none!important}
html body .elementor-702 .elementor-element-24cbb9dc>.e-con{width:auto!important;max-width:none!important;padding:0!important;--width:auto}
@media(min-width:1209px){html body .elementor-702 .elementor-element-24cbb9dc{padding-inline:calc((100% - 1160px)/2)!important}}
html body .elementor-702 .elementor-element-6c9e955,html body .elementor-702 .elementor-element-1b45117,html body .elementor-702 .elementor-element-943e82b{background:#fff!important;border:1px solid #DDE2E8!important;border-radius:22px!important;overflow:hidden;padding:32px 0 0!important;height:100%;gap:0!important;align-items:stretch!important;box-shadow:none!important}
html body .elementor-702 .elementor-element-6eff18a,html body .elementor-702 .elementor-element-dcaeb84,html body .elementor-702 .elementor-element-9aa3787,html body .elementor-702 .elementor-element-87ea720,html body .elementor-702 .elementor-element-0381198,html body .elementor-702 .elementor-element-01b3821{width:auto!important;padding:0 32px!important;text-align:left!important}
html body .elementor-702 .elementor-element-24cbb9dc .elementor-widget-heading .elementor-heading-title{font:400 26px/1.3 'Libre Baskerville',Georgia,serif!important;color:#15233A!important;text-align:left!important;margin:0 0 18px!important}
html body .elementor-702 .elementor-element-24cbb9dc .elementor-icon-list-items{display:flex!important;flex-direction:column;gap:6px;margin:0 0 28px!important;align-items:flex-start!important}
html body .elementor-702 .elementor-element-24cbb9dc .elementor-icon-list-item{margin:0!important;padding:0!important;justify-content:flex-start!important}
html body .elementor-702 .elementor-element-24cbb9dc .elementor-icon-list-item>a{display:flex!important;align-items:center;gap:12px;min-height:40px;color:#15233A!important;text-decoration:none!important}
html body .elementor-702 .elementor-element-24cbb9dc .elementor-icon-list-icon{flex:0 0 16px;width:16px!important;height:16px;background:#15233A;-webkit-mask:var(--tmc-ic) center/16px no-repeat;mask:var(--tmc-ic) center/16px no-repeat;opacity:.7}
html body .elementor-702 .elementor-element-24cbb9dc .elementor-icon-list-icon>*{display:none!important}
html body .elementor-702 .elementor-element-24cbb9dc .elementor-icon-list-item:nth-child(1){--tmc-ic:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M22 16.92v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6 19.79 19.79 0 0 1-3.07-8.67A2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72c.13.96.36 1.9.7 2.81a2 2 0 0 1-.45 2.11L8.09 9.91a16 16 0 0 0 6 6l1.27-1.27a2 2 0 0 1 2.11-.45c.91.34 1.85.57 2.81.7A2 2 0 0 1 22 16.92z'/%3E%3C/svg%3E")}
html body .elementor-702 .elementor-element-24cbb9dc .elementor-icon-list-item:nth-child(2){--tmc-ic:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect width='20' height='16' x='2' y='4' rx='2'/%3E%3Cpath d='m22 7-8.97 5.7a1.94 1.94 0 0 1-2.06 0L2 7'/%3E%3C/svg%3E")}
html body .elementor-702 .elementor-element-24cbb9dc .elementor-icon-list-text{font:400 16px/1.4 Lato,sans-serif!important;color:#15233A!important;padding:0!important;text-decoration:underline;text-decoration-color:rgba(21,35,58,.3);text-underline-offset:4px}
html body .elementor-702 .elementor-element-24cbb9dc .elementor-icon-list-item>a:hover .elementor-icon-list-text{text-decoration-color:#15233A}
html body .elementor-702 .elementor-element-24cbb9dc .elementor-icon-list-item>a:focus-visible{outline:2px solid #15233A;outline-offset:3px}
html body .elementor-702 .elementor-element-24cbb9dc .elementor-widget-google_maps{margin-top:auto!important;width:100%!important;padding:0!important;border-top:1px solid #DDE2E8}
html body .elementor-702 .elementor-element-24cbb9dc .elementor-widget-google_maps iframe{height:300px!important;display:block;filter:grayscale(.9) contrast(1.02);transition:filter .3s;border-radius:0!important}
html body .elementor-702 .elementor-element-24cbb9dc .elementor-widget-google_maps:hover iframe,html body .elementor-702 .elementor-element-24cbb9dc .elementor-widget-google_maps:focus-within iframe{filter:none}
@media(max-width:1024px){html body .elementor-702 .elementor-element-3c41929>.e-con-inner{grid-template-columns:1fr;row-gap:48px}html body .elementor-702 .elementor-element-660e024{position:static!important}html body .elementor-702 .elementor-element-24cbb9dc{grid-template-columns:1fr;max-width:640px!important;margin-inline:auto;padding-inline:24px!important;background:#F3F5F8!important}}
@media(max-width:1024px) and (min-width:641px){html body .elementor-702 .elementor-element-24cbb9dc{max-width:none!important;padding-inline:calc((100% - 592px)/2)!important}}
@media(max-width:767px){html body .elementor-702 .elementor-element-14a391ca{padding:44px 20px 0!important}html body .elementor-702 .elementor-element-4e5226b2 .elementor-heading-title{font-size:36px!important;padding-bottom:20px}html body .elementor-702 .elementor-element-3c41929{padding:32px 20px 64px!important}html body .elementor-702 .elementor-element-e80b38a .elementor-heading-title{font-size:25px!important}html body .elementor-702 .elementor-element-660e024{padding:32px 24px!important}html body .elementor-702 .elementor-element-24cbb9dc{padding:56px 20px 64px!important;gap:20px}html body .elementor-702 .elementor-element-6eff18a,html body .elementor-702 .elementor-element-dcaeb84,html body .elementor-702 .elementor-element-9aa3787,html body .elementor-702 .elementor-element-87ea720,html body .elementor-702 .elementor-element-0381198,html body .elementor-702 .elementor-element-01b3821{padding:0 24px!important}html body .elementor-702 .elementor-element-24cbb9dc .elementor-widget-google_maps iframe{height:240px!important}}
@media(prefers-reduced-motion:reduce){html body .elementor-702 .elementor-element-2efb3e8 .elementor-button .elementor-button-text::after,html body .elementor-702 .elementor-element-24cbb9dc .elementor-widget-google_maps iframe{transition:none}}

/* ===== 28. Home: foto sala riunioni tra valori e Aree (container 0ce590c, 7/11/2026) ===== */
html body .elementor-8 .tmc-sala .tmc-sala-img{width:100%!important;margin:0!important}
html body .elementor-8 .tmc-sala .tmc-sala-img img{width:100%!important;height:auto!important;max-width:none!important;aspect-ratio:21/9;object-fit:cover;object-position:50% 62%;border-radius:22px;display:block}
@media(max-width:767px){html body .elementor-8 .tmc-sala .tmc-sala-img img{aspect-ratio:4/3}}

/* ===== 31. CTA finale "Come possiamo aiutarti?" uniforme su tutte le pagine (footer 696, container tmc-cta-fine, 7/11/2026) ===== */
html body.home .tmc-cta-fine,html body.page-id-702 .tmc-cta-fine{display:none!important}
html body .elementor-1752 .elementor-element-897d4e4{display:none!important}
html body .tmc-cta-fine{background:#fff!important;padding:32px 24px 80px!important}
html body .tmc-cta-fine .elementor-heading-title{font-family:"Libre Baskerville",Georgia,serif!important;font-size:42px!important;font-weight:400!important;line-height:1.25!important;letter-spacing:-.01em!important;color:#15233A!important}
html body .tmc-cta-fine .elementor-widget-text-editor{font-family:Lato,sans-serif!important;font-size:24px!important;line-height:1.5!important;color:#15233A!important;text-align:center}
html body .tmc-cta-fine .elementor-widget-text-editor p{margin:0 auto!important}
html body .tmc-cta-fine .elementor-button{font-family:Lato,sans-serif!important;font-size:16px!important;font-weight:700!important;padding:13px 26px!important;background:#15233A!important;color:#fff!important;border:1px solid #15233A!important;border-radius:2px!important}
html body .tmc-cta-fine .elementor-button:hover,html body .tmc-cta-fine .elementor-button:focus-visible{background:#fff!important;color:#15233A!important}
@media(max-width:767px){
html body .tmc-cta-fine{padding:16px 24px 64px!important}
html body .tmc-cta-fine .elementor-heading-title{font-size:30px!important}
html body .tmc-cta-fine .elementor-widget-text-editor{font-size:18px!important}
}

/* ===== 32. Banner hero animato in cima alla home: logo + H1 + frase + pulsanti (container 5fcff67, v2 7/11/2026) ===== */
html body .tmc-banner-wrap{padding:0!important;margin:0!important}
html body .tmc-banner-wrap .elementor-widget-html{width:100%}
.tmc-banner { --tmc-bg: #F3F5F8; --tmc-bg-2: #FFFFFF; --tmc-logo: #15233A; --tmc-hover: #24375A; --tmc-text: #27303D; --tmc-text-2: #4A5566; --tmc-ease: cubic-bezier(.16, 1, .3, 1); position: relative; display: grid; place-items: center; min-height: clamp(460px, 52vw, 640px); padding: clamp(48px, 7vw, 88px) 16px; overflow: hidden; box-sizing: border-box; background: radial-gradient(ellipse at 50% 45%, var(--tmc-bg-2) 0%, var(--tmc-bg) 75%); text-align: center; } .tmc-banner *, .tmc-banner *::before, .tmc-banner *::after { box-sizing: border-box; } .tmc-inner { display: flex; flex-direction: column; align-items: center; max-width: 760px; } .tmc-row { display: flex; align-items: center; gap: clamp(14px, 3vw, 36px); } .tmc-clip { display: block; overflow: hidden; } .tmc-clip svg { display: block; width: 100%; height: auto; overflow: visible; } .tmc-m { width: clamp(118px, 24vw, 250px); } .tmc-n { width: clamp(150px, 30vw, 320px); } .tmc-vline { width: 1px; height: clamp(64px, 11vw, 126px); background: var(--tmc-logo); } .tmc-flood { flood-color: var(--tmc-logo); } .tmc-h1 { margin: clamp(32px, 4.5vw, 52px) 0 0; font: 400 clamp(17px, 1.6vw, 19px)/1.5 Lato, "Helvetica Neue", Arial, sans-serif; color: var(--tmc-text); letter-spacing: .01em; } .tmc-sr { position: absolute; width: 1px; height: 1px; margin: -1px; padding: 0; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0; } .tmc-tag { margin: 10px 0 0; font: italic 400 clamp(16px, 1.5vw, 18px)/1.5 "Libre Baskerville", Georgia, serif; color: var(--tmc-text-2); } .tmc-cta { display: flex; flex-wrap: wrap; justify-content: center; gap: 12px; margin-top: clamp(26px, 3.5vw, 36px); } .tmc-btn { display: inline-flex; align-items: center; justify-content: center; min-height: 48px; min-width: 210px; padding: 13px 26px; border-radius: 2px; border: 1px solid var(--tmc-logo); font: 700 17px/1.2 Lato, "Helvetica Neue", Arial, sans-serif; text-decoration: none; transition: background-color .25s ease, color .25s ease, border-color .25s ease; } .tmc-btn--primary { background: var(--tmc-logo); color: #fff; } .tmc-btn--primary:hover { background: var(--tmc-hover); border-color: var(--tmc-hover); color: #fff; } .tmc-btn--ghost { background: transparent; color: var(--tmc-logo); } .tmc-btn--ghost:hover { background: var(--tmc-logo); color: #fff; } .tmc-btn:focus-visible { outline: 3px solid var(--tmc-logo); outline-offset: 3px; } @media (max-width: 480px) { .tmc-cta { flex-direction: column; width: 100%; max-width: 320px; } .tmc-btn { width: 100%; } } .tmc-ready .tmc-vline { transform: scaleY(0); } .tmc-ready .tmc-m svg { transform: translateX(104%); } .tmc-ready .tmc-n svg { transform: translateX(-104%); } .tmc-ready .tmc-up { opacity: 0; transform: translateY(14px); filter: blur(4px); } .tmc-banner.is-playing .tmc-vline { animation: tmc-in 1.3s var(--tmc-ease) .25s forwards; } .tmc-banner.is-playing .tmc-m svg { animation: tmc-in 1.8s var(--tmc-ease) .95s forwards; } .tmc-banner.is-playing .tmc-n svg { animation: tmc-in 1.8s var(--tmc-ease) 1.2s forwards; } .tmc-banner.is-playing .tmc-up { animation: tmc-in 1.3s var(--tmc-ease) forwards; } .tmc-banner.is-playing .tmc-d1 { animation-delay: 1.95s; } .tmc-banner.is-playing .tmc-d2 { animation-delay: 2.2s; } .tmc-banner.is-playing .tmc-d3 { animation-delay: 2.45s; } .tmc-banner.is-playing .tmc-d4 { animation-delay: 2.6s; } @keyframes tmc-in { to { transform: none; opacity: 1; filter: blur(0); } } @media (prefers-reduced-motion: reduce) { .tmc-banner .tmc-vline, .tmc-banner .tmc-m svg, .tmc-banner .tmc-n svg, .tmc-banner .tmc-up { transform: none !important; opacity: 1 !important; filter: none !important; animation: none !important; } }
/* 32b. Protezioni contro gli stili del tema (titolo in Lato, pulsanti senza sottolineatura) */
html body .tmc-banner .tmc-h1{font-family:Lato,"Helvetica Neue",Arial,sans-serif!important;font-size:clamp(17px,1.6vw,19px)!important;font-weight:400!important;line-height:1.5!important;color:#27303D!important;letter-spacing:.01em!important;text-transform:none!important}
html body .tmc-banner a.tmc-btn,html body .tmc-banner a.tmc-btn:hover,html body .tmc-banner a.tmc-btn:focus{text-decoration:none!important}
html body .tmc-banner a.tmc-btn--primary,html body .tmc-banner a.tmc-btn--primary:hover,html body .tmc-banner a.tmc-btn--ghost:hover{color:#fff!important}
html body .tmc-banner a.tmc-btn--ghost{color:#15233A!important}


/* ===== 33. Profili avvocati e fondatori home (7/11/2026) ===== */
/* Pagine 1615 (Tarricone), 1686 (Cilenti), 1661 (Caporaso): scheda personale con foto piccola e naturale.
   Home (pagina 8): "I nostri fondatori" compatta, container .tmc-fh al posto di 8e219c6 + 3a68f1b.
   Solo classi tmc-av-* e tmc-fh-* assegnate nel JSON (css_classes / _css_classes): nessun data-id. */

/* 33a. Ritaglio sul volto: la foto (ritratto 2:3) riempie un quadrato e viene ingrandita attorno al viso */
html body .tmc-av-foto,html body .tmc-fh-foto{position:relative;flex:none!important;aspect-ratio:1/1;overflow:hidden;border-radius:22px;background:#E9ECF0;margin:0!important;--tmc-zoom:1.22;--tmc-volto:50% 47%}
html body .site-main .tmc-av-foto.elementor-widget-image img,html body .site-main .tmc-fh-foto.elementor-widget-image img{display:block;width:100%!important;height:100%!important;max-width:none!important;object-fit:cover;object-position:50% 0;transform:scale(var(--tmc-zoom));transform-origin:var(--tmc-volto);border-radius:0!important;box-shadow:none!important}
html body .tmc-volto-tarricone{--tmc-volto:50% 47%}
html body .tmc-volto-caporaso{--tmc-volto:47% 46%}
html body .tmc-volto-cilenti{--tmc-volto:45% 52%}

/* 33b. Scheda personale: impaginazione */
html body .tmc-av.e-con{padding:72px 24px 96px!important;background:#fff!important;min-height:0!important}
html body .tmc-av>.e-con-inner{max-width:1080px!important;margin-inline:auto!important;padding:0!important;gap:0!important;flex-direction:column!important}
html body .tmc-av :where(.e-con.e-con-full),html body .tmc-fh :where(.e-con.e-con-full){padding:0;min-height:0!important;background:none;--padding-top:0px;--padding-right:0px;--padding-bottom:0px;--padding-left:0px}

/* testata: foto accanto a nome, ruolo e sede */
html body .tmc-av-testa.e-con{flex-direction:row!important;align-items:center!important;gap:32px!important;padding:0 0 40px!important;border-bottom:1px solid #D9DDE3;width:100%!important}
html body .tmc-av-testa .tmc-av-foto{width:152px!important;max-width:152px!important}
html body .tmc-av-nome.e-con{flex:1 1 auto!important;gap:8px!important;width:auto!important}
html body .site-main .tmc-av-h1.elementor-widget-heading .elementor-heading-title{font:400 clamp(32px,3.6vw,46px)/1.15 'Libre Baskerville',Georgia,serif!important;letter-spacing:-.01em!important;color:#15233A!important;text-align:left!important;margin:0!important}
html body .site-main .tmc-av-ruolo.elementor-widget-text-editor,html body .site-main .tmc-av-ruolo.elementor-widget-text-editor p{font:400 18px/1.5 Lato,sans-serif!important;color:#2B3442!important;margin:0!important}
html body .site-main .tmc-av-sede.elementor-widget-text-editor,html body .site-main .tmc-av-sede.elementor-widget-text-editor p{font:400 16px/1.5 Lato,sans-serif!important;color:#5B6573!important;margin:0!important}

/* corpo: biografia a sinistra, contatti a destra (nel DOM i contatti vengono prima: su telefono restano subito sotto il nome) */
html body .tmc-av-corpo.e-con{flex-direction:row-reverse!important;align-items:flex-start!important;justify-content:space-between!important;gap:64px!important;padding:48px 0 0!important;width:100%!important}
html body .tmc-av-bio-col.e-con{flex:1 1 0!important;width:auto!important;max-width:68ch!important;gap:0!important}
html body .site-main .tmc-av-bio.elementor-widget-text-editor p{font:400 18px/1.65 Lato,sans-serif!important;color:#2B3442!important;margin:0 0 1em!important;max-width:68ch}
html body .site-main .tmc-av-bio.elementor-widget-text-editor p:first-child{font-size:21px!important;line-height:1.55!important;color:#15233A!important}
html body .site-main .tmc-av-bio.elementor-widget-text-editor p:last-child{margin-bottom:0!important}
html body .site-main .tmc-av-bio.elementor-widget-text-editor a{color:#15233A!important;text-decoration:underline!important;text-decoration-color:rgba(21,35,58,.35)!important;text-underline-offset:4px}
html body .site-main .tmc-av-bio.elementor-widget-text-editor a:hover{text-decoration-color:#15233A!important}

/* riquadro Contatti */
html body .tmc-av-contatti.e-con{flex:0 0 340px!important;width:340px!important;max-width:100%!important;background:#F4F5F7!important;border-radius:22px;padding:28px!important;gap:6px!important;position:sticky;top:104px}
html body .site-main .tmc-av-h2-contatti.elementor-widget-heading .elementor-heading-title{font:400 22px/1.3 'Libre Baskerville',Georgia,serif!important;color:#15233A!important;margin:0 0 6px!important;text-align:left!important}
html body .site-main .tmc-av-etichetta.elementor-widget-text-editor,html body .site-main .tmc-av-etichetta.elementor-widget-text-editor p{font:700 12px/1.4 Lato,sans-serif!important;letter-spacing:.12em!important;text-transform:uppercase;color:#5B6573!important;margin:10px 0 0!important}
html body .tmc-av-recapiti .elementor-icon-list-items{display:flex!important;flex-direction:column;gap:0;margin:0!important;padding:0!important}
html body .tmc-av-recapiti .elementor-icon-list-item{margin:0!important;padding:0!important}
html body .tmc-av-recapiti .elementor-icon-list-item>a{display:flex!important;align-items:center;gap:12px;min-height:44px;color:#15233A!important;text-decoration:none!important}
html body .tmc-av-recapiti .elementor-icon-list-item>a::before{content:'';flex:0 0 18px;height:18px;background:#15233A;-webkit-mask:var(--tmc-ic) center/18px no-repeat;mask:var(--tmc-ic) center/18px no-repeat}
html body .tmc-av-recapiti a[href*="maps"]{--tmc-ic:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 10c0 6-8 12-8 12s-8-6-8-12a8 8 0 0 1 16 0Z'/%3E%3Ccircle cx='12' cy='10' r='3'/%3E%3C/svg%3E")}
html body .tmc-av-recapiti a[href^="tel:"]{--tmc-ic:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M22 16.92v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6 19.79 19.79 0 0 1-3.07-8.67A2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72c.13.96.36 1.9.7 2.81a2 2 0 0 1-.45 2.11L8.09 9.91a16 16 0 0 0 6 6l1.27-1.27a2 2 0 0 1 2.11-.45c.91.34 1.85.57 2.81.7A2 2 0 0 1 22 16.92z'/%3E%3C/svg%3E")}
html body .tmc-av-recapiti a[href^="mailto:"]{--tmc-ic:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect width='20' height='16' x='2' y='4' rx='2'/%3E%3Cpath d='m22 7-8.97 5.7a1.94 1.94 0 0 1-2.06 0L2 7'/%3E%3C/svg%3E")}
html body .tmc-av-recapiti .elementor-icon-list-text{font:400 16px/1.4 Lato,sans-serif!important;color:#15233A!important;padding:0!important;text-decoration:underline;text-decoration-color:rgba(21,35,58,.3);text-underline-offset:4px;overflow-wrap:anywhere}
html body .tmc-av-recapiti a:hover .elementor-icon-list-text{text-decoration-color:#15233A}

/* pulsanti: principale pieno, secondario a contorno, angoli 2px, tutta larghezza nel riquadro */
html body .tmc-av-btn,html body .tmc-av-btn-sec{width:100%!important;margin:0!important}
html body .tmc-av-btn{margin-top:18px!important}
html body .tmc-av-btn-sec{margin-top:10px!important}
html body .site-main .tmc-av-btn .elementor-button,html body .site-main .tmc-av-btn-sec .elementor-button{display:flex!important;justify-content:center;align-items:center;width:100%;min-height:48px;padding:12px 20px!important;font:700 16px/1.2 Lato,sans-serif!important;border-radius:2px!important;text-decoration:none!important;box-shadow:none!important}
html body .site-main .tmc-av-btn .elementor-button{background:#15233A!important;color:#fff!important;border:1px solid #15233A!important}
html body .site-main .tmc-av-btn .elementor-button:hover,html body .site-main .tmc-av-btn .elementor-button:focus-visible{background:#2B4066!important;border-color:#2B4066!important;color:#fff!important}
html body .site-main .tmc-av-btn-sec .elementor-button{background:transparent!important;color:#15233A!important;border:1px solid #15233A!important}
html body .site-main .tmc-av-btn-sec .elementor-button:hover,html body .site-main .tmc-av-btn-sec .elementor-button:focus-visible{background:#15233A!important;color:#fff!important}
html body .site-main .tmc-av-orari.elementor-widget-text-editor,html body .site-main .tmc-av-orari.elementor-widget-text-editor p{font:400 14px/1.5 Lato,sans-serif!important;color:#5B6573!important;margin:10px 0 0!important}
html body .site-main .tmc-av-area.elementor-widget-text-editor p{margin:0!important;font:400 16px/1.4 Lato,sans-serif!important}
html body .site-main .tmc-av-area.elementor-widget-text-editor a{display:inline-flex;align-items:center;min-height:44px;color:#15233A!important;text-decoration:underline!important;text-decoration-color:rgba(21,35,58,.3)!important;text-underline-offset:4px}
html body .site-main .tmc-av-area.elementor-widget-text-editor a:hover{text-decoration-color:#15233A!important}

/* "Gli altri fondatori" */
html body .tmc-av-altri.e-con{width:100%!important;margin-top:80px!important;padding:40px 0 0!important;border-top:1px solid #D9DDE3;gap:24px!important}
html body .site-main .tmc-av-h2-altri.elementor-widget-heading .elementor-heading-title{font:400 26px/1.25 'Libre Baskerville',Georgia,serif!important;color:#15233A!important;text-align:left!important;margin:0!important}
html body .tmc-av-mini-griglia.e-con{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px!important;width:100%!important}

/* 33c. Card persona (mini-card nei profili e card della home): stessa grammatica */
html body a.tmc-av-mini.e-con,html body a.tmc-fh-card.e-con{display:grid!important;grid-template-columns:var(--tmc-foto,72px) minmax(0,1fr);align-items:center;column-gap:20px;width:auto!important;max-width:none!important;min-height:0!important;padding:16px!important;background:#F4F5F7!important;background-image:none!important;border-radius:22px!important;overflow:hidden;text-decoration:none!important;transform:none!important;box-shadow:none!important;transition:background-color .2s}
html body a.tmc-av-mini.e-con:hover,html body a.tmc-fh-card.e-con:hover{background:#EBEEF2!important;transform:none!important}
html body a.tmc-av-mini.e-con:focus-visible,html body a.tmc-fh-card.e-con:focus-visible{outline:2px solid #15233A!important;outline-offset:4px}
html body a.tmc-av-mini .tmc-av-foto,html body a.tmc-fh-card .tmc-fh-foto{width:var(--tmc-foto,72px)!important;max-width:var(--tmc-foto,72px)!important}
html body .tmc-card-testo.e-con{gap:2px!important;width:auto!important;padding:0!important;align-items:flex-start!important;justify-content:center!important}
html body .site-main .tmc-card-nome.elementor-widget-heading .elementor-heading-title{font:400 20px/1.3 'Libre Baskerville',Georgia,serif!important;color:#15233A!important;text-align:left!important;margin:0!important}
html body .site-main .tmc-card-ruolo.elementor-widget-text-editor,html body .site-main .tmc-card-ruolo.elementor-widget-text-editor p{font:400 15px/1.45 Lato,sans-serif!important;color:#5B6573!important;margin:0!important}
html body .site-main .tmc-card-link.elementor-widget-text-editor,html body .site-main .tmc-card-link.elementor-widget-text-editor p{font:700 14px/1.4 Lato,sans-serif!important;color:#15233A!important;margin:6px 0 0!important}

/* 33d. Home: "I nostri fondatori" compatta (container .tmc-fh) */
html body .tmc-fh.e-con{padding:96px 24px!important;background:#fff!important;background-image:none!important;min-height:0!important}
html body .tmc-fh>.e-con-inner{max-width:1160px!important;margin-inline:auto!important;padding:0!important;gap:0!important;flex-direction:column!important}
html body .site-main .tmc-fh-occhiello.elementor-widget-text-editor,html body .site-main .tmc-fh-occhiello.elementor-widget-text-editor p{font:700 12px/1 Lato,sans-serif!important;letter-spacing:.14em!important;text-transform:uppercase;color:#4A5568!important;margin:0 0 16px!important}
html body .site-main .tmc-fh-h2.elementor-widget-heading .elementor-heading-title{font:400 34px/1.25 'Libre Baskerville',Georgia,serif!important;color:#15233A!important;text-align:left!important;margin:0!important;padding-bottom:24px;border-bottom:1px solid #D9DDE3}
html body .tmc-fh-griglia.e-con{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px!important;width:100%!important;padding:32px 0 0!important}
html body a.tmc-fh-card.e-con{--tmc-foto:96px;padding:20px!important}

/* 33e. Tablet */
@media (max-width:1024px){
  html body .tmc-av-corpo.e-con{gap:40px!important}
  html body .tmc-av-contatti.e-con{flex-basis:300px!important;width:300px!important}
  html body .tmc-fh-griglia.e-con{grid-template-columns:minmax(0,1fr);max-width:640px}
}

/* 33f. Telefono: foto e nome in testa, poi i contatti, poi la biografia */
@media (max-width:767px){
  html body .tmc-av.e-con{padding:32px 20px 64px!important}
  html body .tmc-av-testa.e-con{gap:18px!important;padding-bottom:28px!important}
  html body .tmc-av-testa .tmc-av-foto{width:96px!important;max-width:96px!important;border-radius:18px}
  html body .site-main .tmc-av-h1.elementor-widget-heading .elementor-heading-title{font-size:28px!important;line-height:1.2!important}
  html body .site-main .tmc-av-ruolo.elementor-widget-text-editor,html body .site-main .tmc-av-ruolo.elementor-widget-text-editor p{font-size:16px!important;line-height:1.45!important}
  html body .site-main .tmc-av-sede.elementor-widget-text-editor,html body .site-main .tmc-av-sede.elementor-widget-text-editor p{font-size:15px!important}
  html body .tmc-av-corpo.e-con{flex-direction:column!important;gap:36px!important;padding-top:28px!important}
  html body .tmc-av-contatti.e-con{flex:none!important;width:100%!important;position:static;padding:22px!important}
  html body .tmc-av-bio-col.e-con{flex:none!important;max-width:none!important;width:100%!important}
  html body .site-main .tmc-av-bio.elementor-widget-text-editor p{font-size:17px!important;line-height:1.65!important}
  html body .site-main .tmc-av-bio.elementor-widget-text-editor p:first-child{font-size:19px!important;line-height:1.55!important}
  html body .tmc-av-altri.e-con{margin-top:56px!important;padding-top:32px!important;gap:18px!important}
  html body .site-main .tmc-av-h2-altri.elementor-widget-heading .elementor-heading-title{font-size:24px!important}
  html body .tmc-av-mini-griglia.e-con{grid-template-columns:minmax(0,1fr);gap:12px!important}
  html body .tmc-fh.e-con{padding:64px 20px!important}
  html body .site-main .tmc-fh-h2.elementor-widget-heading .elementor-heading-title{font-size:28px!important;padding-bottom:20px}
  html body .tmc-fh-griglia.e-con{gap:12px!important;padding-top:24px!important}
  html body a.tmc-fh-card.e-con{--tmc-foto:80px;padding:16px!important;column-gap:16px}
  html body .site-main .tmc-card-nome.elementor-widget-heading .elementor-heading-title{font-size:19px!important}
}
@media (prefers-reduced-motion:reduce){html body a.tmc-av-mini.e-con,html body a.tmc-fh-card.e-con{transition:none}}
/* =====================================================================
   34. Rifinitura UI globale (7/11)
   Da incollare in fondo al CSS aggiuntivo (Aspetto > Personalizza), dopo la 33.
   Regole: nessun giallo; pulsanti angoli 2px; card angoli 22px; contrasto AA;
   bersagli tattili 44px; focus visibile; niente scorrimento orizzontale a 360px.
   Non tocca le scelte di Luca: fascia Aree solo testo (22), WhatsApp grande (23),
   banner animato e H1 piccolo della home (32/32b).
   I blocchi nuovi si agganciano alle classi tmc-…, mai agli ID (Elementor può rigenerarli).
   ===================================================================== */

/* 34a. Scala tipografica unica (gettoni). Riferimento: pagina Lo Studio. */
:root {
  --tmc-t-h1: clamp(34px, 4.2vw, 52px);
  --tmc-t-h1-articolo: clamp(30px, 3.2vw, 44px);
  --tmc-t-h2: clamp(26px, 2.8vw, 34px);
  --tmc-t-h3: clamp(20px, 1.6vw, 22px);
  --tmc-t-display: clamp(30px, 3.6vw, 42px);   /* solo CTA finale */
  --tmc-t-testo: 18px;
  --tmc-t-piccolo: 15px;
  --tmc-t-etichetta: 13px;
  --tmc-testata: 76px;                          /* altezza barra del menu */
}
@media (max-width: 767px) { :root { --tmc-t-testo: 17px; --tmc-testata: 64px; } }

/* H1 di tutte le pagine interne: stessa misura (prima andava da 32 a 56px) */
html body .tmc-hero-area h1.elementor-heading-title,
html body .elementor-390 .elementor-element-7bfff4ef .elementor-heading-title,
html body .elementor-4390 .elementor-element-48f94e4 .elementor-heading-title,
html body .elementor-element-0d2bce6 .elementor-heading-title,
html body .elementor-element-dc67893 .elementor-heading-title,
html body .elementor-element-f099cb5 .elementor-heading-title {
  font-family: "Libre Baskerville", Georgia, serif !important;
  font-weight: 400 !important;
  font-size: var(--tmc-t-h1) !important;
  line-height: 1.12 !important;
  letter-spacing: -0.01em;
}
/* Titolo dell'articolo: un gradino sotto, perché i titoli sono lunghi */
html body .elementor-208 .elementor-element.elementor-element-60d29322 .elementor-heading-title {
  font-size: var(--tmc-t-h1-articolo) !important;
  line-height: 1.18 !important;
}
@media (max-width: 767px) {
  /* 100px di margine sopra il titolo sprecavano mezzo schermo su telefono */
  html body .elementor-208 .elementor-element.elementor-element-60d29322 .elementor-heading-title { margin-top: 36px !important; }
}

/* H2 di sezione: home e pagine area allineate a 34px (prima 42 in home, 30 nelle colonne) */
html body.home .elementor-element-3ddb61d .elementor-heading-title,
html body.home .elementor-element-5e8aeb7 .elementor-heading-title,
html body :is(.elementor-646, .elementor-1828, .elementor-1845, .elementor-1871, .elementor-1897, .elementor-1922) .elementor-widget-heading h2.elementor-heading-title {
  font-family: "Libre Baskerville", Georgia, serif !important;
  font-weight: 400 !important;
  font-size: var(--tmc-t-h2) !important;
  line-height: 1.2 !important;
}
/* Titoli delle due rubriche nel blog: misura da card (H3 visivo) */
html body .tmc-rubrica .elementor-heading-title {
  font-family: "Libre Baskerville", Georgia, serif !important;
  font-size: var(--tmc-t-h3) !important;
  line-height: 1.3 !important;
}

/* 34b. Angoli coerenti: tutte le card a 22px (alcune erano 16 o 18px) */
.elementor-widget-wpr-page-list .wpr-page-list,
.jkit-accordion,
.tmc-faq__elenco,
.tmc-in-breve,
.tmc-nota,
.tmc-persona,
.tmc-gruppo { border-radius: var(--tmc-raggio, 22px) !important; }

/* 34c. Testata: logo più leggibile, menu mobile opaco a tutta altezza, pulsante consulenza su tablet/telefono */
html body .elementor-location-header .elementor-element-8eb1f5b img,
html body .elementor-location-header .tmc-logo { height: 56px !important; }
@media (max-width: 767px) {
  html body .elementor-location-header .elementor-element-8eb1f5b img,
  html body .elementor-location-header .tmc-logo { height: 46px !important; }
}
@media (max-width: 1024px) {
  /* il blu al 97% (sezione 11) lasciava intravedere la pagina sotto il menu */
  html body .elementor-location-header .elementor-nav-menu--dropdown.elementor-nav-menu__container {
    background: #15233A !important;
    -webkit-backdrop-filter: none !important;
    backdrop-filter: none !important;
    min-height: calc(100vh - var(--tmc-testata));
    min-height: calc(100dvh - var(--tmc-testata));
    max-height: calc(100dvh - var(--tmc-testata));
    overflow-y: auto !important;
    overscroll-behavior: contain;
  }
  html body .elementor-location-header .elementor-element-3099ea9d { gap: 10px !important; }
  html body .elementor-location-header .tmc-cta-mobile { flex: 0 0 auto !important; width: auto !important; margin: 0 !important; }
  html body .elementor-location-header .tmc-cta-mobile .elementor-button {
    display: inline-flex; align-items: center; justify-content: center;
    min-height: 44px; padding: 0 16px !important;
    background: #FFFFFF !important; color: #15233A !important;
    border: 0 !important; border-radius: 2px !important; box-shadow: none !important;
    font: 700 14px/1 "Lato", sans-serif !important; letter-spacing: 0; white-space: nowrap;
    transition: background-color .2s;
  }
  html body .elementor-location-header .tmc-cta-mobile .elementor-button:hover { background: #E4E8EE !important; }
  html body .elementor-location-header .tmc-cta-mobile .elementor-button:focus-visible { outline: 2px solid #FFFFFF; outline-offset: 3px; }
}
@media (max-width: 380px) {
  html body .elementor-location-header .tmc-cta-mobile .elementor-button { font-size: 13px !important; padding: 0 12px !important; }
  html body .elementor-location-header .elementor-element-7864d9e3 { padding-left: 16px !important; }
}
@media (min-width: 1025px) {
  html body .elementor-location-header .tmc-cta-mobile { display: none !important; }
}

/* 34d. Pulsanti e accessibilità comuni */
/* focus visibile ovunque (specificità zero: le regole già scritte restano valide) */
:where(a, button, input, select, textarea, summary, [tabindex]):focus-visible { outline: 2px solid #15233A; outline-offset: 3px; }
/* su fondo blu (footer scuro b09fa78, card laterale) il contorno diventa bianco */
:where(.elementor-location-footer .elementor-element-b09fa78, .tmc-cta-laterale) :where(a, button):focus-visible { outline-color: #FFFFFF; }
/* pulsanti Elementor: mai a pillola (il banner della home ha già i suoi 2px) */
.elementor-button { border-radius: 2px !important; }
/* le ancore interne non finiscono sotto la barra del menu fissa */
html { scroll-padding-top: calc(var(--tmc-testata) + 20px); }
/* niente scorrimento orizzontale a 360px (clip non rompe la barra fissa) */
body { overflow-x: clip; }
.elementor-widget-theme-post-content { overflow-wrap: break-word; }
.elementor-widget-theme-post-content table { display: block; max-width: 100%; overflow-x: auto; }
.elementor-widget-theme-post-content img, .elementor-widget-theme-post-content iframe { max-width: 100%; height: auto; }
/* telefoni ed email nel footer: bersaglio tattile pieno su telefono */
@media (max-width: 767px) {
  .elementor-location-footer .elementor-icon-list-item > a[href^="tel:"],
  .elementor-location-footer .elementor-icon-list-item > a[href^="mailto:"] { min-height: 44px; display: inline-flex !important; align-items: center; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto !important; }
}

/* 34e. Pagine area (civile, commerciale, lavoro, fallimentare, penale, tributario) */
/* CTA subito sotto il titolo (blocco 02) */
html body .tmc-hero-area .tmc-hero-cta { margin: 28px 0 0 !important; width: auto !important; align-self: center; }
html body .tmc-hero-area .tmc-hero-cta .elementor-button {
  display: inline-flex; align-items: center; min-height: 52px; padding: 0 28px !important;
  background: #15233A !important; color: #FFFFFF !important; border: 1px solid #15233A !important; border-radius: 2px !important;
  font: 700 16px/1 "Lato", sans-serif !important; box-shadow: none !important; transform: none !important;
}
html body .tmc-hero-area .tmc-hero-cta .elementor-button:hover,
html body .tmc-hero-area .tmc-hero-cta .elementor-button:focus-visible { background: #2B4066 !important; border-color: #2B4066 !important; }
@media (max-width: 767px) { html body .tmc-hero-area .tmc-hero-cta { margin-top: 22px !important; } }
/* lavoro e tributario: il pulsante del riquadro in cima fa da CTA iniziale, stessa veste */
html body .elementor-element-ad7567d .elementor-button,
html body .elementor-element-681c482 .elementor-button {
  display: inline-flex; align-items: center; min-height: 48px; padding: 0 24px !important;
  background: #15233A !important; color: #FFFFFF !important; border: 1px solid #15233A !important; border-radius: 2px !important;
  font: 700 16px/1 "Lato", sans-serif !important; box-shadow: none !important; transform: none !important;
}

/* righe di testo non oltre ~68 caratteri: si legge meglio */
.elementor-element-8efd53b .elementor-widget-text-editor { max-width: 68ch; }

/* card contatto nella colonna laterale (blocco 03) */
html body .tmc-cta-laterale {
  margin-top: 28px !important; padding: 24px !important;
  background: #15233A !important; color: #FFFFFF; border-radius: var(--tmc-raggio, 22px) !important;
}
html body .tmc-cta-laterale .elementor-heading-title { font: 400 22px/1.3 "Libre Baskerville", Georgia, serif !important; color: #FFFFFF !important; margin: 0 !important; }
html body .tmc-cta-laterale .tmc-tel { list-style: none; margin: 0; padding: 0; }
html body .tmc-cta-laterale .tmc-tel a { display: flex; flex-wrap: wrap; gap: 0 8px; align-items: center; min-height: 44px; color: #FFFFFF !important; text-decoration: none; font: 400 16px/1.3 "Lato", sans-serif; }
html body .tmc-cta-laterale .tmc-tel li + li { border-top: 1px solid rgba(255, 255, 255, .14); }
html body .tmc-cta-laterale .tmc-tel__sede { font-weight: 700; min-width: 86px; }
html body .tmc-cta-laterale .tmc-tel__numero { text-decoration: underline; text-underline-offset: 3px; text-decoration-color: rgba(255, 255, 255, .45); }
html body .tmc-cta-laterale .elementor-button {
  width: 100%; justify-content: center; display: flex; align-items: center; min-height: 48px;
  background: #FFFFFF !important; color: #15233A !important; border: 0 !important; border-radius: 2px !important;
  font: 700 16px/1 "Lato", sans-serif !important;
}
html body .tmc-cta-laterale .elementor-button:hover { background: #E4E8EE !important; }
/* la colonna laterale resta fissa solo se lo schermo è abbastanza alto da mostrarla tutta */
@media (min-width: 1025px) and (max-height: 820px) { .elementor-element-ec29bff { position: static !important; } }

/* blocco finale con frase e pulsante (8f048ae): più compatto (era alto 380px, testo 32px) */
html body .elementor-element.elementor-element-8f048ae {
  --min-height: 0px !important; min-height: 0 !important;
  --padding-top: clamp(48px, 6vw, 72px) !important; --padding-bottom: clamp(48px, 6vw, 72px) !important;
  --padding-left: 20px !important; --padding-right: 20px !important;
  --gap: 24px !important; gap: 24px !important;
}
html body .elementor-element.elementor-element-0853145 {
  max-width: 760px; margin: 0 auto !important;
  font: 400 clamp(19px, 1.8vw, 22px)/1.5 "Lato", sans-serif !important; color: #2B3442 !important; text-align: center;
}
html body .elementor-element.elementor-element-0853145 p { font: inherit !important; color: inherit !important; margin: 0 !important; }

/* indice "In questa pagina" (blocco 12, pagina penale) */
html body .tmc-indice { padding: 22px 26px; background: #F4F5F7; border-radius: var(--tmc-raggio, 22px); margin: 0 0 32px; }
html body .tmc-indice .tmc-indice__titolo { margin: 0 0 10px !important; font: 700 var(--tmc-t-etichetta)/1.2 "Lato", sans-serif; letter-spacing: .12em; text-transform: uppercase; color: #5B6573; }
html body .tmc-indice ol { margin: 0; padding: 0; list-style: none; columns: 2 260px; column-gap: 32px; }
html body .tmc-indice li { break-inside: avoid; }
html body .tmc-indice a { display: flex; align-items: center; min-height: 44px; color: #15233A; font: 400 16px/1.35 "Lato", sans-serif; text-decoration: underline; text-underline-offset: 3px; text-decoration-color: rgba(21, 35, 58, .35); }
html body .tmc-indice a:hover { text-decoration-color: #15233A; }

/* 34f. Articolo (modello 208) */
/* la frase "Se vuoi un parere sul tuo caso…" del plugin doppiava il pulsante sotto l'articolo */
.elementor-widget-theme-post-content .tmc-li-contatto { display: none !important; }
/* pulsante sotto l'articolo: allineato al testo, senza effetto "shrink" */
html body .elementor-208 .elementor-element-8fec42d { text-align: left !important; margin-top: 8px !important; }
html body .elementor-208 .elementor-element-8fec42d .elementor-button-wrapper { text-align: left !important; justify-content: flex-start !important; }
html body .elementor-208 .elementor-element-8fec42d .elementor-button { min-height: 52px; display: inline-flex; align-items: center; padding: 0 28px !important; }
/* riquadro newsletter: titolo nel blu del sito (era #1C244B) e nella misura degli H2 */
html body .elementor-208 .elementor-element-280d6189 .elementor-heading-title { color: #15233A !important; font-size: var(--tmc-t-h2) !important; line-height: 1.2 !important; }
/* DECISIONE APERTA (non attiva): mostrare la copertina sotto il titolo. Togliere i commenti solo con l'ok di Luca.
html body .elementor-208 .elementor-element.elementor-element-7cd821ce { display: block; }
html body .elementor-208 .elementor-element-7cd821ce img { width: 100%; aspect-ratio: 16 / 9; object-fit: cover; border-radius: var(--tmc-raggio, 22px); }
*/

/* 34g. CTA finale: riga dei telefoni (blocco 04) e home */
html body .tmc-cta-fine .elementor-widget-text-editor.tmc-cta-tel,
html body .elementor-widget-text-editor.tmc-cta-tel { font-size: 16px !important; margin-top: 4px !important; text-align: center; }
html body .tmc-cta-tel .tmc-cta-tel__etichetta { margin: 0 0 6px !important; font: 700 var(--tmc-t-etichetta)/1.2 "Lato", sans-serif !important; letter-spacing: .12em; text-transform: uppercase; color: #5B6573 !important; }
html body .tmc-cta-tel .tmc-tel { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; justify-content: center; gap: 0 28px; }
html body .tmc-cta-tel .tmc-tel a { display: inline-flex; align-items: center; gap: 8px; min-height: 44px; color: #15233A !important; text-decoration: none; font: 400 16px/1.3 "Lato", sans-serif !important; }
html body .tmc-cta-tel .tmc-tel__sede { font-weight: 700; }
html body .tmc-cta-tel .tmc-tel__numero { text-decoration: underline; text-underline-offset: 3px; text-decoration-color: rgba(21, 35, 58, .35); }
html body .tmc-cta-tel .tmc-tel a:hover .tmc-tel__numero { text-decoration-color: #15233A; }
@media (max-width: 767px) {
  html body .tmc-cta-tel .tmc-tel { flex-direction: column; align-items: center; gap: 0; }
}
/* Home: quando la CTA propria della home (215be752) viene eliminata, si mostra quella comune del footer.
   Finché 215be752 esiste, la regola non scatta (nessun doppione). */
html body.home:not(:has(.elementor-element-215be752)) .elementor-location-footer .tmc-cta-fine { display: var(--display, flex) !important; }
/* Finché 215be752 resta: stessa veste della CTA comune (titolo Libre 42, testo Lato 24) */
html body.home .elementor-element-1e0d0739 .elementor-heading-title { font: 400 var(--tmc-t-display)/1.25 "Libre Baskerville", Georgia, serif !important; letter-spacing: -.01em; color: #15233A !important; text-align: center; }
html body.home .elementor-element-380b72f, html body.home .elementor-element-380b72f p { font: 400 clamp(18px, 1.7vw, 24px)/1.5 "Lato", sans-serif !important; color: #15233A !important; text-align: center; }

/* 34h. Contatti (702): icone per indirizzo/telefono/email, "Indicazioni stradali", mappe più basse */
/* icona scelta in base al link, non alla posizione: regge l'aggiunta della riga indirizzo */
/* :nth-child(n) serve solo a pareggiare la specificità delle regole della 25 */
html body .elementor-702 .elementor-element-24cbb9dc .elementor-icon-list-item:nth-child(n) { --tmc-ic: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 10c0 4.99-5.54 10.19-7.4 11.8a1 1 0 0 1-1.2 0C9.54 20.19 4 14.99 4 10a8 8 0 0 1 16 0'/%3E%3Ccircle cx='12' cy='10' r='3'/%3E%3C/svg%3E"); }
html body .elementor-702 .elementor-element-24cbb9dc .elementor-icon-list-item:nth-child(n):has(> a[href^="tel:"]) { --tmc-ic: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M22 16.92v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6 19.79 19.79 0 0 1-3.07-8.67A2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72c.13.96.36 1.9.7 2.81a2 2 0 0 1-.45 2.11L8.09 9.91a16 16 0 0 0 6 6l1.27-1.27a2 2 0 0 1 2.11-.45c.91.34 1.85.57 2.81.7A2 2 0 0 1 22 16.92z'/%3E%3C/svg%3E"); }
html body .elementor-702 .elementor-element-24cbb9dc .elementor-icon-list-item:nth-child(n):has(> a[href^="mailto:"]) { --tmc-ic: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect width='20' height='16' x='2' y='4' rx='2'/%3E%3Cpath d='m22 7-8.97 5.7a1.94 1.94 0 0 1-2.06 0L2 7'/%3E%3C/svg%3E"); }
html body .elementor-702 .tmc-indicazioni { width: auto !important; margin: -12px 0 24px !important; }
html body .elementor-702 .tmc-indicazioni .elementor-button {
  display: inline-flex; align-items: center; min-height: 44px; padding: 0 20px !important;
  background: #FFFFFF !important; color: #15233A !important; border: 1px solid #15233A !important; border-radius: 2px !important;
  font: 700 15px/1 "Lato", sans-serif !important; box-shadow: none !important;
}
html body .elementor-702 .tmc-indicazioni .elementor-button:hover,
html body .elementor-702 .tmc-indicazioni .elementor-button:focus-visible { background: #15233A !important; color: #FFFFFF !important; }
html body .elementor-702 .elementor-element-24cbb9dc .elementor-widget-google_maps iframe { height: 200px !important; }
@media (max-width: 767px) {
  html body .elementor-702 .elementor-element-24cbb9dc .elementor-widget-google_maps iframe { height: 170px !important; }
}

/* 34i. Blog (390), archivi (4711, 4390, 4391, 396) */
/* ricerca + "N articoli pubblicati" (shortcode [tmc_blog_ricerca], blocchi 08-09) */
html body .tmc-blog-ricerca-box { padding: 0 20px !important; margin: 0 0 clamp(28px, 4vw, 44px) !important; }
html body .tmc-blog-ricerca-widget { width: 100%; max-width: 760px; margin: 0 auto !important; }
html body .tmc-blog-ricerca-widget--archivio { margin: 20px 0 0 !important; }
html body .tmc-blog-ricerca-widget form { display: flex; flex-wrap: wrap; align-items: flex-end; gap: 8px; margin: 0; }
html body .tmc-blog-ricerca-widget label { flex: 1 0 100%; margin: 0 0 2px; font: 700 15px/1.3 "Lato", sans-serif !important; color: #2B3442; }
html body .tmc-blog-ricerca-widget input[type="search"] {
  flex: 1 1 220px; min-width: 0; height: 52px; padding: 0 16px;
  font: 400 17px/1 "Lato", sans-serif !important; color: #2B3442;
  background: #FFFFFF; border: 1px solid #8A94A3; border-radius: 2px; box-shadow: none;
}
html body .tmc-blog-ricerca-widget input[type="search"]::placeholder { color: #5B6573; opacity: 1; }
html body .tmc-blog-ricerca-widget input[type="search"]:focus { outline: 2px solid #15233A; outline-offset: 1px; border-color: #15233A; }
html body .tmc-blog-ricerca-widget button[type="submit"] {
  flex: 0 0 auto; height: 52px; padding: 0 26px;
  background: #15233A; color: #FFFFFF; border: 1px solid #15233A; border-radius: 2px;
  font: 700 16px/1 "Lato", sans-serif !important; cursor: pointer;
}
html body .tmc-blog-ricerca-widget button[type="submit"]:hover { background: #2B4066; border-color: #2B4066; }
html body .tmc-blog-ricerca-widget .tmc-blog-ricerca__conteggio { margin: 10px 0 0; font: 400 15px/1.4 "Lato", sans-serif; color: #5B6573; }
html body .tmc-blog-ricerca-widget .tmc-blog-ricerca__conteggio strong { color: #15233A; font-weight: 700; }
@media (max-width: 420px) {
  html body .tmc-blog-ricerca-widget button[type="submit"] { flex: 1 1 100%; }
}

/* rubriche: card intera cliccabile, descrizione sempre visibile, "per chi" e conteggio */
html body .tmc-rubrica { position: relative; gap: 6px !important; transition: box-shadow .2s; }
html body .tmc-rubrica .elementor-heading-title a { color: #15233A !important; text-decoration: none; }
html body .tmc-rubrica .elementor-heading-title a::after { content: ""; position: absolute; inset: 0; border-radius: inherit; }
html body .tmc-rubrica:hover { box-shadow: 0 0 0 1px #15233A inset; }
html body .tmc-rubrica:focus-within { outline: 2px solid #15233A; outline-offset: 3px; }
html body .tmc-rubrica .elementor-heading-title a:focus-visible { outline: none; }
html body .tmc-rubrica .elementor-widget-text-editor p { margin: 0 0 6px !important; font: 400 16px/1.5 "Lato", sans-serif !important; color: #2B3442; }
html body .tmc-rubrica .tmc-rubrica__perchi { color: #5B6573 !important; font-size: 15px !important; }
html body .tmc-rubrica .tmc-rubrica__meta { margin-top: 4px !important; font: 700 var(--tmc-t-etichetta)/1.2 "Lato", sans-serif !important; letter-spacing: .1em; text-transform: uppercase; color: #5B6573 !important; }
html body .tmc-rubrica .tmc-rubrica__vai a { position: relative; z-index: 1; color: #15233A; font-weight: 700; }
@media (max-width: 767px) {
  /* la 20e nascondeva la descrizione: la rimettiamo e togliamo invece il link doppio (la card è già cliccabile) */
  html body .tmc-rubrica .elementor-widget-text-editor p:first-child { display: block !important; }
  html body .tmc-rubrica .elementor-widget-text-editor p.tmc-rubrica__vai,
  html body .tmc-rubrica .elementor-widget-text-editor p:has(> a:only-child) { display: none !important; }
  html body .tmc-rubrica .elementor-widget-text-editor p { font-size: 15px !important; }
  html body .tmc-rubrica .elementor-heading-title { font-size: 20px !important; }
}

/* filtri per materia sopra l'elenco: pulsanti chiari; su telefono una sola riga scorrevole */
html body .elementor-element-a1a3ea8 .wpr-grid-filters li { margin: 0 !important; }
html body .elementor-element-a1a3ea8 .wpr-grid-filters li span {
  display: inline-flex; align-items: center; min-height: 44px; padding: 0 14px !important;
  border: 1px solid #DDE2E8; border-radius: 2px; background: #FFFFFF; text-decoration: none !important;
  font: 400 15px/1 "Lato", sans-serif !important; color: #2B3442 !important; white-space: nowrap;
}
html body .elementor-element-a1a3ea8 .wpr-grid-filters li .wpr-active-filter { background: #15233A; border-color: #15233A; color: #FFFFFF !important; font-weight: 700; }
html body .elementor-element-a1a3ea8 .wpr-grid-filters { display: flex !important; flex-wrap: wrap; gap: 8px; justify-content: center; }
@media (max-width: 767px) {
  html body .elementor-element-a1a3ea8 .wpr-grid-filters {
    flex-wrap: nowrap; justify-content: flex-start; overflow-x: auto; scroll-snap-type: x proximity;
    padding: 0 0 6px !important; margin: 0 0 20px !important; scrollbar-width: thin;
  }
  html body .elementor-element-a1a3ea8 .wpr-grid-filters li { flex: 0 0 auto; scroll-snap-align: start; }
}

/* 34j. Pagina 404 (modello 13-modello-404.json) */
html body .tmc-404 { padding: clamp(56px, 8vw, 112px) 20px clamp(56px, 7vw, 96px) !important; }
html body .tmc-404 .elementor-heading-title { font: 400 var(--tmc-t-h1)/1.12 "Libre Baskerville", Georgia, serif !important; color: #15233A !important; margin: 0 !important; }
html body .tmc-404 .tmc-404__testo p { margin: 0 !important; max-width: 62ch; font: 400 var(--tmc-t-testo)/1.6 "Lato", sans-serif !important; color: #2B3442; }
html body .tmc-404 .tmc-404__nav { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; padding: 24px 26px; background: #F4F5F7; border-radius: var(--tmc-raggio, 22px); }
html body .tmc-404 .tmc-404__etichetta { margin: 0 0 6px !important; font: 700 var(--tmc-t-etichetta)/1.2 "Lato", sans-serif !important; letter-spacing: .12em; text-transform: uppercase; color: #5B6573 !important; }
html body .tmc-404 .tmc-404__nav ul { list-style: none; margin: 0; padding: 0; }
html body .tmc-404 .tmc-404__nav a { display: flex; align-items: center; min-height: 44px; color: #15233A; font: 400 16px/1.3 "Lato", sans-serif; text-decoration: underline; text-underline-offset: 3px; text-decoration-color: rgba(21, 35, 58, .35); }
html body .tmc-404 .tmc-404__cta .elementor-button { background: #15233A !important; color: #FFFFFF !important; border-radius: 2px !important; font: 700 16px/1 "Lato", sans-serif !important; min-height: 52px; padding: 0 28px !important; display: inline-flex; align-items: center; }
@media (max-width: 600px) { html body .tmc-404 .tmc-404__nav { grid-template-columns: 1fr; gap: 12px; } }
/* ===== fine 34 ===== */

/* ------------------------------------------------------------------ 35. Correzioni dalla review finale UX (8/11) */
/* ricerca del blog: campo e pulsante sulla stessa riga, contatore sotto */
html body .tmc-ricerca form.tmc-ricerca__modulo { display: block; }
/* risultati di ricerca: ricerca allineata alla griglia da 1140 px */
html body.search .tmc-ricerca { max-width: 1140px; margin-left: auto; margin-right: auto; }
/* modulo contatti: placeholder e bordi dei campi leggibili (AA) */
html body .elementor-702 .elementor-field-group .elementor-field::placeholder { color: #5B6573 !important; opacity: 1; }
html body .elementor-702 .elementor-field-group .elementor-field:not([type=checkbox]) { border-color: #7A8493 !important; }
html body .elementor-702 .elementor-element-2efb3e8 .elementor-field-type-acceptance input[type=checkbox],
html body .elementor-field-type-acceptance input[type=checkbox] { width: 24px !important; height: 24px !important; flex: 0 0 24px !important; }
/* «Indicazioni stradali» allineato al testo della card */
html body .elementor-702 .tmc-indicazioni { margin: -12px 32px 24px !important; }
@media (max-width: 767px) { html body .elementor-702 .tmc-indicazioni { margin: -12px 25px 24px !important; } }
/* il focus da tastiera non finisce sotto la barra in basso o sotto WhatsApp */
html { scroll-padding-bottom: 72px; }
@media (max-width: 767px) { html { scroll-padding-bottom: 80px; } }
/* aree: colori della palette */
html body .elementor-element.elementor-element-75d26f7 .elementor-heading-title,
html body .elementor-element.elementor-element-93ec0c8 .elementor-heading-title,
html body .elementor-element.elementor-element-830c01f .elementor-heading-title,
html body .elementor-8 .elementor-element.elementor-element-3ddb61d .elementor-heading-title { color: #15233A !important; }
html body .elementor-element.elementor-element-68b9587,
html body .elementor-element.elementor-element-68b9587 p,
html body .elementor-element.elementor-element-68b9587 li { color: #2B3442 !important; }
html body .elementor-element.elementor-element-4248ed2,
html body .elementor-element.elementor-element-476dd3ea { background-color: #F4F5F7 !important; }
/* profili: foto con angoli 22 px anche su telefono */
@media (max-width: 767px) {
  html body .elementor-element-12445df img,
  html body .elementor-element-682ed40 img,
  html body .elementor-element-b2f61d0 img { border-radius: 22px !important; }
}
/* home: «Approfondisci →» con area di tocco più alta */
html body .elementor-8 a.icon-box-link { display: inline-block; padding: 13px 0; }
/* articolo: condivisione, data e autore nel grigio della palette */
html body .elementor-element.elementor-element-333c70b9 .elementor-heading-title,
html body .elementor-element.elementor-element-333c70b9,
html body .elementor-element.elementor-element-33203548 .elementor-icon-list-text,
html body .elementor-element.elementor-element-33203548 .elementor-post-info__item,
html body .elementor-element.elementor-element-33203548 a { color: #5B6573 !important; }
/* filtri del blog: focus visibile (il plugin li rende raggiungibili da tastiera) */
html body .wpr-grid-filters li > span[data-filter]:focus-visible { outline: 3px solid #15233A; outline-offset: 2px; border-radius: 2px; }
/* ===== fine 35 ===== */

/* ------------------------------------------------------------------ 36. Ritocchi finali UX (8/11) */
/* pulsante «Richiedi una consulenza» uguale in tutte le pagine (escluse testata, banner e scheda laterale, che hanno il loro stile) */
html body :is([data-elementor-type="wp-page"], [data-elementor-type="single-post"], [data-elementor-type="single"], [data-elementor-type="archive"], [data-elementor-type="error-404"]) .elementor-widget-button:not(.tmc-indicazioni) a.elementor-button[href*="/richiedi-una-consulenza/"] {
  display: inline-flex; align-items: center; justify-content: center;
  min-height: 48px; padding: 0 28px !important; border-radius: 2px !important;
  font-family: "Lato", sans-serif !important; font-size: 16px !important; font-weight: 700 !important; line-height: 1.2 !important;
}
/* titoli delle card degli articoli: Libre Baskerville ovunque, come in /blog/ */
html body .wpr-grid-item-title, html body .wpr-grid-item-title a {
  font-family: "Libre Baskerville", Georgia, serif !important; font-weight: 400 !important; line-height: 1.35 !important; color: #15233A !important;
}
/* riquadri «Lettera di licenziamento ricevuta?» e «Avviso di accertamento ricevuto?»: titolo blu notte */
html body .elementor-element.elementor-element-e68bb8c .elementor-heading-title,
html body .elementor-element.elementor-element-826037a .elementor-heading-title { color: #15233A !important; }
/* footer: link di telefono ed email con un'area di tocco più alta */
html body .elementor-location-footer .elementor-icon-list-items .elementor-icon-list-item > a { padding-top: 6px; padding-bottom: 6px; }
@media (max-width: 767px) {
  /* testo di lettura a 16 px anche su telefono */
  html body .elementor-8 .icon-box-description,
  html body .elementor-element.elementor-element-3fde6c8,
  html body .elementor-element.elementor-element-3fde6c8 p { font-size: 16px !important; }
  /* «Come possiamo aiutare?» non attaccato ai bordi */
  html body .elementor-element.elementor-element-1e0d0739 { padding-left: 10px; padding-right: 10px; }
}
/* ===== fine 36 ===== */

/* ===== 37. In breve e FAQ negli articoli (9/11) ===== */
.tmc-in-breve{background:#F3F5F8;border-left:4px solid #15233A;border-radius:0 22px 22px 0;padding:18px 22px 10px;margin:0 0 28px}
.tmc-in-breve .tmc-in-breve__titolo{font:700 13px/1.4 Lato,sans-serif;letter-spacing:.12em;text-transform:uppercase;color:#15233A;margin:0 0 8px}
.tmc-in-breve ul{margin:0;padding-left:20px}
.tmc-in-breve li{margin:0 0 8px;font-size:16px;line-height:1.6;color:#2b2f36}
.tmc-faq{margin:36px 0 8px}
.tmc-faq h2{font-family:"Libre Baskerville",Georgia,serif;color:#15233A;font-size:24px;line-height:1.3;margin:0 0 14px}
.tmc-faq details{border:1px solid #E3E6EB;border-radius:22px;margin:0 0 10px;background:#fff}
.tmc-faq summary{cursor:pointer;padding:14px 48px 14px 20px;min-height:44px;font:700 16px/1.5 Lato,sans-serif;color:#15233A;list-style:none;position:relative}
.tmc-faq summary::-webkit-details-marker{display:none}
.tmc-faq summary::after{content:"+";position:absolute;right:20px;top:12px;font-weight:400;font-size:20px}
.tmc-faq details[open] summary::after{content:"\2013"}
.tmc-faq summary:focus-visible{outline:2px solid #15233A;outline-offset:2px;border-radius:22px}
.tmc-faq .tmc-faq__risposta{padding:0 20px 6px}
.tmc-faq .tmc-faq__risposta p{margin:0 0 12px;font-size:16px;line-height:1.6}
@media (max-width:767px){.tmc-in-breve{padding:16px 18px 8px}.tmc-faq h2{font-size:21px}}

/* =====================================================================================================
   38. Blog · v8-A «Rivista» con i colori e lo stile del feed approvato (11/11/2026): carta chiara, una carta azzurra e
   una carta rossa in diagonale, il rosso come segno. File unico: 38-base-v7.css + v8-colori.css + v8-A.css. Va incollato in
   fondo a Personalizza › CSS aggiuntivo, dopo la sezione 37, come sezione 38. Vale per /blog/ (pagina 390), per le pagine
   delle materie e per le altre pagine di archivio e di ricerca. Istruzioni passo per passo: INSTALLA.md.
   ===================================================================================================== */

/* =====================================================================================================
   38. Blog nello stile del sito · BASE della v7 (10/11/2026): è la v6 SENZA il blocco 38a. Nessuna carta da nessuna parte:
   «Blog» nel menu è una voce normale come le altre (il CSS del menu non si tocca). Sopra questa base va UNO dei
   file della direzione scelta: v7-A.css, v7-B.css o v7-C.css. La 37 «Blog di carta» v5 NON va incollata.
   - Tutto il resto di /blog/, delle categorie e della ricerca è nello stile del sito: blu notte #15233A,
     Libre Baskerville per i titoli e Lato per il testo, card grigio chiaro #F4F5F7 con raggio 22, pulsanti ad angoli
     di 2 px con bordo di 2 px, focus sempre visibile. Nessuna carta, nessun elemento disegnato.
   - Blocchi indipendenti: 38b testa di /blog/ · 38c rubriche · 38d materie · 38e-card aspetto delle card ·
     38e-griglia griglia senza buchi (l'unico da togliere se «Carica altri» non passa) · 38f articolo.
   - Va incollata in fondo al CSS aggiuntivo, dopo la 36.
   ===================================================================================================== */
:root {
  --tmc-blog-larghezza: 1160px;                      /* come le sezioni della home e di /lo-studio/ (140-1300 px a 1440) */
  --tmc-blog-margine: 40px;                          /* margine laterale fra 1025 e 1240 px */
  --tmc-card: #F4F5F7;                               /* il grigio delle card del sito (20b, 33c) */
  --tmc-card-sopra: #EBEEF2;                         /* card al passaggio del mouse (33c) */
  --tmc-filetto: #DDE2E8;
}
@media (max-width: 1024px) { :root { --tmc-blog-margine: 32px; } }
@media (max-width: 767px) { :root { --tmc-blog-margine: 16px; } }

/* 38a tolto in v7: «Blog» nel menu è una voce normale come le altre */
/* ---------------------------------------------------------------- 38b. /blog/ (pagina 390): testa della pagina */
/* Come le pagine interne del sito: etichetta in maiuscoletto sopra l'H1 (stessa etichetta di «LO STUDIO» su /lo-studio/:
   Lato 700 12 px, spaziatura .14em, maiuscolo, #4A5568), H1 centrato con la scala del sito, ricerca centrata.
   Testa compatta: a 1440×900 la prima riga di copertine parte entro 700 px.
   Elementor (E1): nel contenitore 5c09b4df, PRIMA del titolo 7bfff4ef, un widget Titolo con tag P, testo «Blog»,
   classe CSS «tmc-blog-etichetta». L'H1 resta «Approfondimenti giuridici» (SEO invariata). */
html body .elementor-390 .elementor-element-76ed196c { min-height: 0 !important; padding: 0 !important; }
html body .elementor-390 .elementor-element-5c09b4df { padding: clamp(28px, 2.2vw, 32px) var(--tmc-blog-margine) 0 !important; }
html body .elementor-390 .elementor-element-5c09b4df > .e-con-inner { gap: 12px !important; align-items: center !important; }
html body .elementor-390 .tmc-blog-etichetta { width: auto !important; margin: 0 !important; }
html body .elementor-390 .tmc-blog-etichetta .elementor-heading-title,
html body .site-main .elementor-390 .tmc-blog-etichetta .elementor-heading-title {
  margin: 0 !important; font: 700 12px/1.2 "Lato", sans-serif !important;
  letter-spacing: .14em !important; text-transform: uppercase !important; color: #4A5568 !important; text-align: center;
}
html body .elementor-390 .elementor-element-7bfff4ef .elementor-heading-title { color: #15233A !important; text-align: center; margin: 0 !important; }
/* ricerca: subito sotto il titolo, centrata (760 px, come oggi) */
html body .elementor-390 .tmc-blog-ricerca-box { margin: 0 !important; padding: clamp(20px, 1.7vw, 24px) var(--tmc-blog-margine) 0 !important; }
html body .elementor-390 .tmc-blog-ricerca-box > .e-con-inner { max-width: var(--tmc-blog-larghezza) !important; padding: 0 !important; }
html body .elementor-390 .tmc-blog-ricerca-box .tmc-ricerca { max-width: 760px; margin-left: auto !important; margin-right: auto !important; margin-bottom: 0 !important; }
html body .elementor-390 .tmc-ricerca__conteggio { text-align: left; }
/* campo di ricerca: oggi al fuoco non mostra un anello; qui l'anello del sito (2 px blu notte), su blog, categorie e ricerca */
html body .tmc-ricerca input[type="search"]:focus-visible { outline: 2px solid #15233A !important; outline-offset: 2px !important; border-color: #15233A !important; }
/* telefono: campo e pulsante sulla stessa riga (oggi il pulsante va a capo sotto i 420 px) */
@media (max-width: 479px) {
  html body .tmc-ricerca .tmc-ricerca__riga { flex-wrap: nowrap !important; }
  html body .tmc-ricerca .tmc-ricerca__campo-box { flex: 1 1 auto !important; min-width: 0 !important; }
  html body .tmc-ricerca .tmc-ricerca__pulsante { flex: 0 0 auto !important; width: auto !important; min-width: 84px !important; padding: 10px 18px !important; }
}

/* ---------------------------------------------------------------- 38c. Le due rubriche: due card del sito, compatte */
/* Due card grigio chiaro con raggio 22: titolo in Libre Baskerville, descrizione su una riga, poi numero di articoli e
   «Tutti gli articoli della rubrica →» sulla stessa riga, in fondo (allineati fra le due card). «Per chi» si legge nella
   testata della pagina della rubrica: qui non si ripete. La card intera porta alla rubrica: il ::after del link del
   titolo copre la card, perché i widget dentro la card sono resi «static» (Elementor li mette «relative»). */
html body .elementor-390 .elementor-element-e37e601 { padding: clamp(28px, 2.4vw, 34px) var(--tmc-blog-margine) 0 !important; margin: 0 !important; }
html body .elementor-390 .elementor-element-e37e601 > .e-con-inner {
  max-width: var(--tmc-blog-larghezza) !important; padding: 0 !important;
  display: grid !important; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px !important;
}
html body .elementor-390 .tmc-rubrica {
  position: relative !important; display: flex !important; flex-direction: column !important; justify-content: flex-start !important;
  width: auto !important; max-width: none !important; margin: 0 !important;
  padding: 16px clamp(24px, 2.4vw, 32px) 16px !important;
  background: var(--tmc-card) !important; border-radius: 22px !important; gap: 0 !important;
  transition: background-color .2s, box-shadow .2s;
}
html body .elementor-390 .tmc-rubrica::before { display: none !important; }
html body .elementor-390 .tmc-rubrica .elementor-widget,
html body .elementor-390 .tmc-rubrica .elementor-widget-container,
html body .elementor-390 .tmc-rubrica .elementor-heading-title { position: static !important; }
html body .elementor-390 .tmc-rubrica:hover { background: var(--tmc-card-sopra) !important; box-shadow: none !important; }
html body .elementor-390 .tmc-rubrica .elementor-widget-heading { margin: 0 0 4px !important; }
html body .elementor-390 .tmc-rubrica .elementor-heading-title { font: 400 var(--tmc-t-h3, 22px)/1.3 "Libre Baskerville", Georgia, serif !important; color: #15233A !important; }
html body .elementor-390 .tmc-rubrica .elementor-heading-title a { color: #15233A !important; text-decoration: none !important; }
html body .elementor-390 .tmc-rubrica .elementor-heading-title a::after { content: "" !important; position: absolute !important; inset: 0 !important; z-index: 1 !important; border-radius: 22px; }
/* testo: descrizione in alto, riga «numero · tutti gli articoli» in fondo (stessa altezza nelle due card) */
html body .elementor-390 .tmc-rubrica .elementor-widget-text-editor {
  flex: 1 1 auto !important; display: flex !important; flex-wrap: wrap; align-items: baseline; align-content: space-between;
  column-gap: 24px; row-gap: 8px; margin: 0 !important;
}
html body .elementor-390 .tmc-rubrica .elementor-widget-text-editor p { margin: 0 !important; font: 400 16px/1.55 "Lato", sans-serif !important; color: #2B3442 !important; }
html body .elementor-390 .tmc-rubrica .elementor-widget-text-editor p.tmc-rubrica__desc { flex: 0 0 100%; display: block !important; }
html body .elementor-390 .tmc-rubrica .elementor-widget-text-editor p.tmc-rubrica__perchi { display: none !important; }
html body .elementor-390 .tmc-rubrica .elementor-widget-text-editor p.tmc-rubrica__meta { flex: 0 0 auto; padding: 0; border: 0; font: 700 var(--tmc-t-etichetta, 13px)/1.2 "Lato", sans-serif !important; letter-spacing: .12em !important; text-transform: uppercase; color: #5B6573 !important; }
html body .elementor-390 .tmc-rubrica .elementor-widget-text-editor p.tmc-rubrica__vai { display: block !important; flex: 0 0 auto; margin-left: auto !important; line-height: 1.3 !important; }
html body .elementor-390 .tmc-rubrica .tmc-rubrica__vai a { position: relative !important; z-index: 2 !important; color: #15233A !important; font-weight: 700; text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 4px; }
html body .elementor-390 .tmc-rubrica .tmc-rubrica__vai a::after { content: "\00a0\2192"; }   /* «→» come «Approfondisci →» e «Profilo →» */
/* fuoco: anello sulla card intera (con :has), ripiego :focus-within dove :has manca */
html body .elementor-390 .tmc-rubrica:focus-within { outline: none !important; }
@supports selector(:has(*)) {
  html body .elementor-390 .tmc-rubrica:has(a:focus-visible) { outline: 2px solid #15233A !important; outline-offset: 4px !important; }
  html body .elementor-390 .tmc-rubrica a:focus-visible { outline: none !important; box-shadow: none !important; }
}
@supports not selector(:has(*)) { html body .elementor-390 .tmc-rubrica:focus-within { outline: 2px solid #15233A !important; outline-offset: 4px !important; } }
/* tablet: la riga in fondo può andare a capo; resta in fondo alla card */
@media (max-width: 1024px) { html body .elementor-390 .tmc-rubrica .elementor-widget-text-editor p.tmc-rubrica__vai { margin-left: 0 !important; flex-basis: 100%; } }
/* telefono: due card affiancate e compatte (titolo e numero di articoli →); la card intera resta il link */
@media (max-width: 767px) {
  html body .elementor-390 .elementor-element-e37e601 { padding-top: 28px !important; }
  html body .elementor-390 .elementor-element-e37e601 > .e-con-inner { gap: 12px !important; }
  html body .elementor-390 .tmc-rubrica { padding: 16px 16px 15px !important; }
  html body .elementor-390 .tmc-rubrica .elementor-widget-heading { margin: 0 0 8px !important; }
  html body .elementor-390 .tmc-rubrica .elementor-heading-title { font-size: 18px !important; line-height: 1.28 !important; }
  html body .elementor-390 .tmc-rubrica .elementor-widget-text-editor p.tmc-rubrica__desc,
  html body .elementor-390 .tmc-rubrica .elementor-widget-text-editor p.tmc-rubrica__vai { display: none !important; }
  html body .elementor-390 .tmc-rubrica .elementor-widget-text-editor { align-content: flex-end; }
  html body .elementor-390 .tmc-rubrica .elementor-widget-text-editor p.tmc-rubrica__meta { flex: 1 1 auto; font-size: 12px !important; letter-spacing: .1em !important; line-height: 1.35 !important; }
  html body .elementor-390 .tmc-rubrica p.tmc-rubrica__meta::after { content: "\00a0\2192"; letter-spacing: 0; color: #15233A; }   /* la card si tocca */
}

/* ---------------------------------------------------------------- 38d. Tutti gli articoli: titolo di sezione e materie */
/* Elementor (E3): griglia a1a3ea8 › Filtri = No; nel contenitore 38d9b590, PRIMA della griglia, un widget HTML con
   elementor/materie-blog-7.html (consigliato) oppure materie-blog-8.html (con Attualità), Classi CSS = «tmc-materie-box».
   Titolo di sezione come «I fondatori» (H2 del sito e filetto sotto); materie come link veri alle pagine di categoria.
   Facoltativo (E4): le stesse materie nel modello delle categorie per MATERIA (396, non 4391 che è quello delle rubriche)
   con materie-categoria-*.html, stessa classe: lo script dello snippet mette aria-current sulla materia della pagina;
   la classe del body accende la voce anche senza script. */
html body .elementor-390 .elementor-element-38d9b590 { padding: clamp(32px, 2.8vw, 40px) var(--tmc-blog-margine) 0 !important; }
html body .elementor-390 .elementor-element-38d9b590 > .e-con-inner { max-width: var(--tmc-blog-larghezza) !important; padding: 0 !important; gap: 0 !important; }
html body .elementor-390 .elementor-element-a1a3ea8 { width: 100% !important; max-width: none !important; margin-top: 0 !important; }
html body .tmc-materie-box,
html body .elementor-390 .elementor-element-38d9b590 .elementor-widget-html { width: 100% !important; max-width: none !important; }
html body .tmc-articoli-testa { margin: 0; width: 100%; }
html body .tmc-articoli-testa .tmc-articoli-titolo {
  margin: 0 !important; padding: 0 0 16px; border-bottom: 1px solid var(--tmc-filetto);
  font: 400 var(--tmc-t-h2, 34px)/1.2 "Libre Baskerville", Georgia, serif !important; letter-spacing: 0; color: #15233A !important; text-align: left;
}
html body .tmc-materie { margin: 20px 0 28px; width: 100%; }
html body .tmc-materie ul { display: flex; flex-wrap: wrap; gap: 8px; margin: 0; padding: 0; list-style: none; }
html body .tmc-materie li { margin: 0; padding: 0; }
html body .tmc-materie a {
  display: inline-flex; align-items: center; box-sizing: border-box; min-height: 44px; padding: 0 16px; white-space: nowrap;
  background: #FFFFFF; border: 1px solid #8A94A3; border-radius: 2px;
  font: 400 15px/1 "Lato", sans-serif; color: #15233A; text-decoration: none;
  transition: background-color .15s, border-color .15s;
}
html body .tmc-materie a:hover { border-color: #15233A; background: var(--tmc-card); }
html body .tmc-materie a:focus-visible { outline: 2px solid #15233A !important; outline-offset: 2px; }
/* materia della pagina: piena, come il filtro attivo di oggi */
html body .tmc-materie a[aria-current="page"],
html body.page-id-390 .tmc-materie a[href="/blog/"],
html body.category-diritto-civile .tmc-materie a[href$="/diritto-civile/"],
html body.category-diritto-processuale .tmc-materie a[href$="/diritto-processuale/"],
html body.category-diritto-penale .tmc-materie a[href$="/diritto-penale/"],
html body.category-diritto-tributario .tmc-materie a[href$="/diritto-tributario/"],
html body.category-diritto-di-famiglia .tmc-materie a[href$="/diritto-di-famiglia/"],
html body.category-diritto-commerciale .tmc-materie a[href$="/diritto-commerciale/"],
html body.category-diritto-del-lavoro .tmc-materie a[href$="/diritto-del-lavoro/"],
html body.category-approfondimenti-attualita-giuridica .tmc-materie a[href$="/approfondimenti-attualita-giuridica/"] {
  background: #15233A; border-color: #15233A; color: #FFFFFF; font-weight: 700;
}
/* fino a 1024 px: una riga che scorre e arriva al bordo dello schermo (mai una voce sola su una riga): la voce tagliata
   dal bordo dice che la riga continua. A 834 e 1024 le 7 voci stanno tutte in vista. Anello di fuoco DENTRO la voce
   (la riga che scorre non lo taglia): blu notte sulle voci bianche, BIANCO sulla voce attiva piena (15,75:1). */
@media (max-width: 1024px) {
  html body .tmc-materie { margin: 20px calc(-1 * var(--tmc-blog-margine)) 28px 0; width: auto; }
  html body .tmc-materie ul { flex-wrap: nowrap; overflow-x: auto; scrollbar-width: none; padding: 2px var(--tmc-blog-margine) 2px 2px; margin-left: -2px; scroll-padding-inline: 2px var(--tmc-blog-margine); }
  /* negli archivi (modello 396, facoltativo) il contenitore non ha margini laterali: il widget prende quello della griglia */
  html body:is(.archive, .search) .tmc-materie-box { box-sizing: border-box; padding-left: var(--tmc-blog-margine) !important; padding-right: var(--tmc-blog-margine) !important; }
  html body .tmc-materie ul::-webkit-scrollbar { display: none; }
  html body .tmc-materie li { flex: 0 0 auto; }
  html body .tmc-materie a { padding: 0 14px; }
  html body .tmc-materie a:focus-visible { outline-offset: -4px; }
  html body .tmc-materie a[aria-current="page"]:focus-visible,
  html body.page-id-390 .tmc-materie a[href="/blog/"]:focus-visible,
  html body.category-diritto-civile .tmc-materie a[href$="/diritto-civile/"]:focus-visible,
  html body.category-diritto-processuale .tmc-materie a[href$="/diritto-processuale/"]:focus-visible,
  html body.category-diritto-penale .tmc-materie a[href$="/diritto-penale/"]:focus-visible,
  html body.category-diritto-tributario .tmc-materie a[href$="/diritto-tributario/"]:focus-visible,
  html body.category-diritto-di-famiglia .tmc-materie a[href$="/diritto-di-famiglia/"]:focus-visible,
  html body.category-diritto-commerciale .tmc-materie a[href$="/diritto-commerciale/"]:focus-visible,
  html body.category-diritto-del-lavoro .tmc-materie a[href$="/diritto-del-lavoro/"]:focus-visible,
  html body.category-approfondimenti-attualita-giuridica .tmc-materie a[href$="/approfondimenti-attualita-giuridica/"]:focus-visible { outline-color: #FFFFFF !important; }
}
@media (min-width: 768px) and (max-width: 1024px) { html body .tmc-materie a { padding: 0 12px; } html body .tmc-materie ul { gap: 6px; } }
@media (max-width: 767px) { html body .tmc-articoli-testa .tmc-articoli-titolo { padding-bottom: 16px; } }
/* sotto 768 la riga delle materie scorre sempre: sfumatura di 64 px sul bordo destro (copre sempre il testo della voce sul bordo), così si capisce a ogni larghezza
   (prima a 360 il bordo cadeva fra due voci e la riga sembrava finita); 64 px di spazio in fondo, così a fine scorrimento
   «Lavoro» esce dalla sfumatura; scroll-padding, così la voce raggiunta con Tab non resta sotto la sfumatura */
@media (max-width: 767px) {
  html body .tmc-materie ul {
    padding-right: 64px; scroll-padding-inline-end: 64px;
    -webkit-mask-image: linear-gradient(90deg, #000 calc(100% - 64px), transparent);
            mask-image: linear-gradient(90deg, #000 calc(100% - 64px), transparent);
  }
}
/* categorie e ricerca: il campo di ricerca centrato a 760 px, come sul blog (oggi è largo quanto la pagina) */
html body:is(.archive, .search) .tmc-ricerca { max-width: 760px; margin-left: auto !important; margin-right: auto !important; }

/* ---------------------------------------------------------------- 38e-card. Aspetto delle card degli articoli */
/* Solo l'aspetto: sicuro anche con la griglia isotope di Royal (se si toglie il 38e-griglia resta valido).
   Card del sito: grigio #F4F5F7, raggio 22, copertina 1200×630 intera in testa, titolo in Libre Baskerville, in fondo
   «6 novembre 2026 · Ti può succedere» (la copertina nuova stampa già la rubrica in alto: sotto non si ripete in
   maiuscoletto). La card intera è un solo link (il titolo). Vale per blog, categorie, ricerca e autori.
   Elementor (E2): sulla pagina 390 Titolo › Tag HTML = h3 (sotto l'H2 «Tutti gli articoli»); negli archivi resta h2. */
html body:is(.page-id-390, .archive, .search) .wpr-grid .wpr-grid-item {
  background: var(--tmc-card) !important; border-radius: 22px !important; overflow: hidden !important; box-shadow: none !important;
  transition: background-color .2s;
}
html body:is(.page-id-390, .archive, .search) .wpr-grid .wpr-grid-item-inner { display: flex; flex-direction: column; height: 100%; background: transparent !important; }
html body:is(.page-id-390, .archive, .search) .wpr-grid .wpr-grid-media-wrap,
html body:is(.page-id-390, .archive, .search) .wpr-grid .wpr-grid-image-wrap,
html body:is(.page-id-390, .archive, .search) .wpr-grid .wpr-grid-image-wrap img { border-radius: 0 !important; }
html body:is(.page-id-390, .archive, .search) .wpr-grid .wpr-grid-image-wrap img { display: block; width: 100% !important; height: auto !important; aspect-ratio: 1200 / 630; object-fit: cover; }
html body:is(.page-id-390, .archive, .search) .wpr-grid .wpr-grid-media-hover-bg { background: transparent !important; }
html body:is(.page-id-390, .archive, .search) .wpr-grid .wpr-grid-item-below-content {
  flex: 1 1 auto; display: flex; flex-direction: column;
  padding: 20px 24px 22px !important; background: transparent !important; text-align: left !important;
}
html body:is(.page-id-390, .archive, .search) .wpr-grid .wpr-grid-item-title { margin: 0 0 14px !important; }
html body:is(.page-id-390, .archive, .search) .wpr-grid .wpr-grid-item-title .inner-block { padding: 0 !important; }
html body:is(.page-id-390, .archive, .search) .wpr-grid .wpr-grid-item-title a {
  font: 400 19px/1.42 "Libre Baskerville", Georgia, serif !important;
  color: #15233A !important; text-decoration: none !important; text-wrap: pretty;
}
html body:is(.page-id-390, .archive, .search) .wpr-grid .wpr-grid-item-title a::after { content: ""; position: absolute; inset: 0; z-index: 2; }
html body:is(.page-id-390, .archive, .search) .wpr-grid .wpr-grid-item-read-more { display: none !important; }
html body:is(.page-id-390, .archive, .search) .wpr-grid .wpr-grid-item-date { margin-top: auto !important; }
html body:is(.page-id-390, .archive, .search) .wpr-grid .wpr-grid-item-date .inner-block { padding: 0 !important; }
html body:is(.page-id-390, .archive, .search) .wpr-grid .wpr-grid-item-date span { font: 400 14px/1.4 "Lato", sans-serif !important; color: #5B6573 !important; text-transform: lowercase; }   /* «6 novembre 2026» */
/* rubrica accanto alla data, con la maiuscola (non nelle pagine delle due rubriche, dove sarebbe sempre la stessa) */
html body:is(.page-id-390, .archive, .search) .wpr-grid .wpr-grid-item:is(.category-osservatorio-cassazione, .category-domande-e-diritti) .wpr-grid-item-date span::after { text-transform: none; }
html body:is(.page-id-390, .archive, .search) .wpr-grid .wpr-grid-item.category-osservatorio-cassazione .wpr-grid-item-date span::after { content: "\00a0· Sentenze in chiaro"; }
html body:is(.page-id-390, .archive, .search) .wpr-grid .wpr-grid-item.category-domande-e-diritti .wpr-grid-item-date span::after { content: "\00a0· Ti può succedere"; }
html body:is(.page-id-390, .archive, .search) .wpr-grid .wpr-grid-item.category-osservatorio-cassazione.category-domande-e-diritti .wpr-grid-item-date span::after { content: "\00a0· Sentenze in chiaro · Ti può succedere"; }
html body:is(.category-osservatorio-cassazione, .category-domande-e-diritti).archive .wpr-grid .wpr-grid-item .wpr-grid-item-date span::after { content: none; }
@media (hover: hover) {
  html body:is(.page-id-390, .archive, .search) .wpr-grid .wpr-grid-item:hover { background: var(--tmc-card-sopra) !important; }
  html body:is(.page-id-390, .archive, .search) .wpr-grid .wpr-grid-item:hover .wpr-grid-item-title a { text-decoration: underline !important; text-decoration-thickness: 1px !important; text-underline-offset: 4px; }
}
/* fuoco: anello sulla card intera con :has; senza :has resta l'anello del sito sul titolo */
@supports selector(:has(*)) {
  html body:is(.page-id-390, .archive, .search) .wpr-grid .wpr-grid-item:has(.wpr-grid-item-title a:focus-visible) { overflow: visible !important; outline: 2px solid #15233A !important; outline-offset: 4px !important; }
  html body:is(.page-id-390, .archive, .search) .wpr-grid .wpr-grid-item:has(.wpr-grid-item-title a:focus-visible) .wpr-grid-media-wrap { border-radius: 22px 22px 0 0 !important; overflow: hidden; }
  html body:is(.page-id-390, .archive, .search) .wpr-grid .wpr-grid-item-title a:focus-visible { outline: none !important; }
}
@supports not selector(:has(*)) {
  html body:is(.page-id-390, .archive, .search) .wpr-grid .wpr-grid-item-title a:focus-visible { outline: 2px solid #15233A !important; outline-offset: 3px !important; }
}
/* «Carica altri articoli»: un vero pulsante del sito (secondario: bordo blu notte di 2 px, si riempie al passaggio) */
html body:is(.page-id-390, .archive, .search) .wpr-grid-pagination { margin-top: clamp(40px, 4.4vw, 56px) !important; text-align: center; }
html body:is(.page-id-390, .archive, .search) .wpr-grid-pagination .wpr-load-more-btn {
  display: inline-flex !important; align-items: center; justify-content: center; box-sizing: border-box; min-height: 52px; min-width: 220px;
  padding: 0 32px !important; margin: 0 !important; background: #FFFFFF !important; color: #15233A !important;
  border: 2px solid #15233A !important; border-radius: 2px !important; box-shadow: none !important;
  font: 700 16px/1 "Lato", sans-serif !important; letter-spacing: 0 !important; text-decoration: none !important;
  transition: background-color .15s, color .15s;
}
html body:is(.page-id-390, .archive, .search) .wpr-grid-pagination .wpr-load-more-btn:hover,
html body:is(.page-id-390, .archive, .search) .wpr-grid-pagination .wpr-load-more-btn:focus-visible { background: #15233A !important; color: #FFFFFF !important; }
html body:is(.page-id-390, .archive, .search) .wpr-grid-pagination .wpr-load-more-btn:focus-visible { outline: 2px solid #15233A !important; outline-offset: 3px !important; }
html body:is(.page-id-390, .archive, .search) .wpr-grid-pagination .wpr-pagination-finish { font: 400 15px/1.4 "Lato", sans-serif !important; color: #5B6573 !important; }
html body.archive .elementor-location-archive .tmc-blog-ricerca-widget--archivio { margin-bottom: 0 !important; }
/* categorie e ricerca: margine laterale anche sul tablet (oggi le card toccano il bordo fra 768 e 1024 px) */
@media (min-width: 768px) and (max-width: 1024px) {
  html body:is(.archive, .search) .elementor-widget-wpr-grid { padding-left: var(--tmc-blog-margine) !important; padding-right: var(--tmc-blog-margine) !important; }
}

/* ---------------------------------------------------------------- 38e-griglia. Griglia senza buchi (sostituisce isotope) */
/* Se la prova di «Carica altri articoli» (LEGGIMI § 4) non passa, si toglie SOLO questo blocco: resta la griglia
   isotope di Royal di oggi, con le card del 38e-card. La griglia Royal (posizioni assolute scritte dal JS) diventa una
   griglia CSS a 6 colonne: ogni card ne occupa 2 (tre per riga). Ultima riga incompleta: una card sola → tutta la riga,
   in orizzontale; due card → metà riga ciascuna. Tablet: 2 colonne. Telefono: 1.
   Elementor (E2 ed E2-bis): 12 articoli per pagina nelle griglie di 390, 396, 4391 e 4711 → righe sempre piene. */
html body:is(.page-id-390, .archive, .search) .wpr-grid {
  display: grid !important;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 40px 28px;
  height: auto !important;
}
html body:is(.page-id-390, .archive, .search) .wpr-grid .wpr-grid-item {
  grid-column: span 2;
  position: relative !important; left: auto !important; top: auto !important;
  width: auto !important; height: auto !important; margin: 0 !important;
  transform: none !important; opacity: 1 !important;
}
@media (min-width: 1025px) {
  html body:is(.page-id-390, .archive, .search) .wpr-grid .wpr-grid-item:last-child:nth-child(3n+1) { grid-column: 1 / -1; }
  html body:is(.page-id-390, .archive, .search) .wpr-grid .wpr-grid-item:last-child:nth-child(3n+2),
  html body:is(.page-id-390, .archive, .search) .wpr-grid .wpr-grid-item:nth-last-child(2):nth-child(3n+1) { grid-column: span 3; }
  html body:is(.page-id-390, .archive, .search) .wpr-grid .wpr-grid-item:last-child:nth-child(3n+1) .wpr-grid-item-inner { display: grid; grid-template-columns: calc((100% - 56px) / 3) minmax(0, 1fr); align-items: center; }
  html body:is(.page-id-390, .archive, .search) .wpr-grid .wpr-grid-item:last-child:nth-child(3n+1) .wpr-grid-item-below-content { padding: 24px 40px !important; justify-content: center; }
  html body:is(.page-id-390, .archive, .search) .wpr-grid .wpr-grid-item:last-child:nth-child(3n+1) .wpr-grid-item-title a { font-size: 22px !important; line-height: 1.36 !important; }
  html body:is(.page-id-390, .archive, .search) .wpr-grid .wpr-grid-item:last-child:nth-child(3n+1) .wpr-grid-item-date { margin-top: 0 !important; }
}
@media (min-width: 768px) and (max-width: 1024px) {
  html body:is(.page-id-390, .archive, .search) .wpr-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 32px 24px; }
  html body:is(.page-id-390, .archive, .search) .wpr-grid .wpr-grid-item { grid-column: auto; }
  html body:is(.page-id-390, .archive, .search) .wpr-grid .wpr-grid-item:last-child:nth-child(2n+1) { grid-column: 1 / -1; }
  html body:is(.page-id-390, .archive, .search) .wpr-grid .wpr-grid-item:last-child:nth-child(2n+1) .wpr-grid-item-inner { display: grid; grid-template-columns: calc((100% - 24px) / 2) minmax(0, 1fr); align-items: center; }
  html body:is(.page-id-390, .archive, .search) .wpr-grid .wpr-grid-item:last-child:nth-child(2n+1) .wpr-grid-item-below-content { padding: 20px 28px !important; justify-content: center; }
  html body:is(.page-id-390, .archive, .search) .wpr-grid .wpr-grid-item:last-child:nth-child(2n+1) .wpr-grid-item-date { margin-top: 0 !important; }
}
@media (max-width: 767px) {
  html body:is(.page-id-390, .archive, .search) .wpr-grid { grid-template-columns: minmax(0, 1fr); gap: 24px; }
  html body:is(.page-id-390, .archive, .search) .wpr-grid .wpr-grid-item { grid-column: auto; }
}

/* ---------------------------------------------------------------- 38f. Articolo (modello 208) */
/* Data dell'articolo in minuscolo come nelle card («6 novembre 2026», oggi «6 Novembre 2026»). */
html body .elementor-location-single .elementor-post-info__item--type-date,
html body .elementor-location-single .elementor-post-info__item--type-date time { text-transform: lowercase !important; }
/* FACOLTATIVO (E5): occhiello della rubrica, solo testo. Nel modello 208, PRIMA del titolo 60d29322, un widget HTML con
   elementor/occhiello-rubrica.html, classe «tmc-occhiello-box». Etichetta del sito (maiuscoletto, grigio), link alla
   rubrica: si vede solo il link della rubrica dell'articolo; senza rubrica il box è nascosto. Nessuna carta. */
html body .elementor-location-single:not(.category-osservatorio-cassazione, .category-domande-e-diritti) .tmc-occhiello-box { display: none !important; }
html body .tmc-occhiello { margin: 100px 0 14px !important; line-height: 1.2; }
@media (max-width: 767px) { html body .tmc-occhiello { margin-top: 36px !important; } }
html body .elementor-location-single:is(.category-osservatorio-cassazione, .category-domande-e-diritti) .elementor-element-60d29322 .elementor-heading-title { margin-top: 0 !important; }
html body .tmc-occhiello a { display: none; }
html body .elementor-location-single.category-osservatorio-cassazione .tmc-occhiello a.tmc-occhiello--sentenze,
html body .elementor-location-single.category-domande-e-diritti .tmc-occhiello a.tmc-occhiello--ti {
  display: inline-flex; align-items: center; min-height: 44px; margin-right: 18px;
  font: 700 12px/1.2 "Lato", sans-serif; letter-spacing: .14em; text-transform: uppercase;
  color: #4A5568; text-decoration: none;
}
html body .tmc-occhiello a:hover { color: #15233A; text-decoration: underline; text-underline-offset: 4px; }
html body .tmc-occhiello a:focus-visible { outline: 2px solid #15233A !important; outline-offset: 3px; }

@media (prefers-reduced-motion: reduce) {
  html body .elementor-location-header .menu-item-476 > a.elementor-item,
  html body .elementor-390 .tmc-rubrica,
  html body:is(.page-id-390, .archive, .search) .wpr-grid .wpr-grid-item,
  html body .tmc-materie a,
  html body:is(.page-id-390, .archive, .search) .wpr-load-more-btn { transition: none !important; }
}
/* ===== fine 38 ===== */
/* v8 · Colori e stile del feed approvato su /blog/ e sulle pagine d'archivio (11/11/2026). Va DOPO 38-base-v7.css e PRIMA
   di v8-A.css. Luca (11/11), mandando la griglia del feed (consegne/2026-11-07-social/anteprime/artwork/griglia-feed-2.png):
   «Da cambiare» e «questi sono i colori e lo stile». Il blog si legge come quella griglia di tessere editoriali:
   - carta chiara quasi ovunque (avorio #F7F6F2 e bianco), testo blu notte, titoli serif grandi; il corsivo solo nella seconda
     voce dei nomi delle due rubriche («Sentenze in chiaro», «Ti può succedere»), come nel feed;
   - etichette piccole in maiuscoletto in alto, come «LA PAROLA» e «IL TESTO»;
   - DUE carte piene, come nel feed e in diagonale: la carta azzurra #9CB2EF (l'articolo grande di /blog/, in alto a
     sinistra) e la carta rossa #D13E2A con il testo bianco (la rubrica «Sentenze in chiaro», sotto a destra). Mai nella
     stessa colonna, mai due uguali vicine;
   - il rosso è un segno solo: nell'interfaccia il bordo della voce attiva del filtro, più la carta rossa della rubrica. Ogni
     card ha il suo segno rosso dentro la copertina, sulla parola che conta (revisione del produttore n. 9: niente segni rossi
     su titoli di pagina o etichette, gesto già bocciato su «Blog»);
   - niente texture di carta, strappi, sticker o ritagli (v5 bocciata il 10/11): solo tipografia, colori pieni e segni.
   Colori usati (stile.md § 2 più le carte rosso e azzurro), nient'altro, nessuna tinta derivata, nessun colore per materia:
     testo blu notte #15233A · secondari #2B3442, #3F4958 · bianco #FFFFFF · avorio #F7F6F2
     carte azzurro #9CB2EF, rosso #D13E2A · rosso Vox #D93A2F per i segni. L'acqua #49A3B0 non si usa (non è nella griglia).
   Contrasti WCAG (strumenti/contrasti-v8.py, poi misurati nel browser): bianco su rosso 4,74 ·
   blu notte su azzurro 7,52 · #2B3442 su azzurro 6,00 · blu notte su avorio 14,56 e su bianco 15,75 · #3F4958 su avorio
   8,42 e su bianco 9,11 · bordo #D93A2F sul bianco 4,57 (segno, soglia 3). Sul rosso solo testo bianco.
   Testata e piè di pagina del sito restano blu notte: sono del sito intero.
   Installazione: dentro v8-A-completo.css, come sezione 38 in fondo a Personalizza › CSS aggiuntivo (vedi INSTALLA.md).
   Struttura, misure e legature sono quelle che hanno avuto il PASSA (revisioni del produttore 1-9). Stati precedenti:
   passa-colori-materia/ (colori per materia) e passa-azzurro-acqua/ (azzurro e acqua). */

/* ---------------------------------------------------------------- 0. Neutri: solo bianco, avorio e i secondari della palette */
/* la base v7 usava i grigi del sito (#F4F5F7, #EBEEF2, #DDE2E8, #8A94A3, #5B6573, #4A5568): qui diventano colori della palette */
:root { --tmc-card: #F7F6F2; --tmc-card-sopra: #F7F6F2; --tmc-filetto: #3F4958; }
html body:is(.page-id-390, .archive, .search) .wpr-grid .wpr-grid-item-date span { color: #3F4958 !important; }
html body:is(.page-id-390, .archive, .search) .wpr-grid-pagination .wpr-pagination-finish { color: #3F4958 !important; }
html body .elementor-390 .tmc-blog-etichetta .elementor-heading-title,
html body .site-main .elementor-390 .tmc-blog-etichetta .elementor-heading-title { color: #3F4958 !important; }
html body .elementor-390 .tmc-rubrica .elementor-widget-text-editor p.tmc-rubrica__meta { color: #3F4958 !important; }
html body .tmc-materie a { border-color: #3F4958; }
html body:is(.archive, .search) .tmc-ricerca .tmc-ricerca__campo,
html body .elementor-390 .tmc-ricerca .tmc-ricerca__campo { border-color: #15233A !important; }
html body:is(.page-id-390, .archive, .search) .tmc-ricerca .tmc-ricerca__conteggio { color: #3F4958 !important; }
/* descrizione nella testata degli altri archivi (rubriche, sottocategorie, materie minori: oggi #3D4A5C nei modelli) */
html body:is(.archive, .search) .elementor-location-archive > .e-parent:first-child .elementor-widget-text-editor p { color: #2B3442; }
/* «Cerca» negli archivi come su /blog/: bianco con bordo e testo blu notte, non pieno di blu notte */
html body:is(.archive, .search) .tmc-ricerca .tmc-ricerca__pulsante { background: #FFFFFF !important; border-color: #15233A !important; color: #15233A !important; }
@media (hover: hover) { html body:is(.archive, .search) .tmc-ricerca .tmc-ricerca__pulsante:hover { background: #F7F6F2 !important; } }

/* ---------------------------------------------------------------- 1. Nome della materia di ogni articolo su /blog/ (solo il testo) */
/* A parità di forza vince l'ultima regola, cioè la materia più specifica: Attualità → Processuale → Civile → Penale →
   Commerciale → Tributario → Lavoro → Famiglia (48 articoli su 56 hanno anche «diritto processuale»). Nessun colore. */
html body.page-id-390 .wpr-grid .wpr-grid-item { --mn: "Attualità"; }
html body.page-id-390 .wpr-grid .wpr-grid-item.category-diritto-processuale  { --mn: "Processuale"; }
html body.page-id-390 .wpr-grid .wpr-grid-item.category-diritto-civile       { --mn: "Civile"; }
html body.page-id-390 .wpr-grid .wpr-grid-item.category-diritto-penale       { --mn: "Penale"; }
html body.page-id-390 .wpr-grid .wpr-grid-item.category-diritto-commerciale  { --mn: "Commerciale"; }
html body.page-id-390 .wpr-grid .wpr-grid-item.category-diritto-tributario   { --mn: "Tributario"; }
html body.page-id-390 .wpr-grid .wpr-grid-item.category-diritto-del-lavoro   { --mn: "Lavoro"; }
html body.page-id-390 .wpr-grid .wpr-grid-item:is(.category-diritto-di-famiglia, .category-famiglia) { --mn: "Famiglia"; }

/* ---------------------------------------------------------------- 2. Pagine d'archivio: testata delle 8 materie come una tessera chiara */
/* carta avorio, come «Caparra.» nel feed: etichetta «LA MATERIA» in maiuscoletto in alto, titolo serif grande allineato a
   sinistra, descrizione sotto. Nessun segno rosso su un'etichetta di sezione. Uguale su tutte le materie. */
html body.archive:is(.category-diritto-civile, .category-diritto-penale, .category-diritto-commerciale, .category-diritto-tributario, .category-diritto-del-lavoro, .category-diritto-di-famiglia, .category-diritto-processuale, .category-approfondimenti-attualita-giuridica) { --tmc-testata: #F7F6F2; }
/* testata della pagina = il primo contenitore del modello di archivio (65871a6c nel 396, 56fed68 nel 439). L'altezza la dà
   il contenuto, uguale in tutti i modelli (oggi il 396 e il 439 hanno altezze diverse: 50 vh + 340 px contro 50 vh). */
@supports selector(:has(*)) {
  html body.archive.category .elementor-location-archive > .e-parent:first-child:has(.elementor-widget-heading) {
    background: var(--tmc-testata, transparent) !important;
  }
  html body.archive.category:is(.category-diritto-civile, .category-diritto-penale, .category-diritto-commerciale, .category-diritto-tributario, .category-diritto-del-lavoro, .category-diritto-di-famiglia, .category-diritto-processuale, .category-approfondimenti-attualita-giuridica) .elementor-location-archive > .e-parent:first-child:has(.elementor-widget-heading) {
    min-height: 0 !important; padding: 28px var(--tmc-blog-margine) 32px !important;
  }
  html body.archive.category:is(.category-diritto-civile, .category-diritto-penale, .category-diritto-commerciale, .category-diritto-tributario, .category-diritto-del-lavoro, .category-diritto-di-famiglia, .category-diritto-processuale, .category-approfondimenti-attualita-giuridica) .elementor-location-archive > .e-parent:first-child:has(.elementor-widget-heading) > .e-con { min-height: 0 !important; }
  html body.archive.category:is(.category-diritto-civile, .category-diritto-penale, .category-diritto-commerciale, .category-diritto-tributario, .category-diritto-del-lavoro, .category-diritto-di-famiglia, .category-diritto-processuale, .category-approfondimenti-attualita-giuridica) .elementor-location-archive > .e-parent:first-child:has(.elementor-widget-heading) :is(.elementor-heading-title, .elementor-widget-text-editor, .elementor-widget-text-editor p) { color: #15233A !important; }
  /* testata bassa (revisioni del produttore n. 2 e 3): padding 40 px, niente padding interno né margine sotto l'ultimo
     paragrafo. Descrizione larga al massimo 780 px (72-92 caratteri per riga) con le righe bilanciate: 2 o 3 righe, testata
     di circa 255 px, prima fila di copertine intera a 1366×657. Le parole di 1-2 lettere le lega lo script delle legature.
     Il titolo è uniformato più sotto, con una regola per tutti gli archivi. */
  html body.archive.category:is(.category-diritto-civile, .category-diritto-penale, .category-diritto-commerciale, .category-diritto-tributario, .category-diritto-del-lavoro, .category-diritto-di-famiglia, .category-diritto-processuale, .category-approfondimenti-attualita-giuridica) .elementor-location-archive > .e-parent:first-child:has(.elementor-widget-heading) > .e-con > .e-con-inner { padding-top: 0 !important; padding-bottom: 0 !important; }
  html body.archive.category:is(.category-diritto-civile, .category-diritto-penale, .category-diritto-commerciale, .category-diritto-tributario, .category-diritto-del-lavoro, .category-diritto-di-famiglia, .category-diritto-processuale, .category-approfondimenti-attualita-giuridica) .elementor-location-archive > .e-parent:first-child:has(.elementor-widget-heading) .tmc-intro-categoria { width: min(100%, 780px) !important; max-width: 780px !important; }
  html body.archive.category:is(.category-diritto-civile, .category-diritto-penale, .category-diritto-commerciale, .category-diritto-tributario, .category-diritto-del-lavoro, .category-diritto-di-famiglia, .category-diritto-processuale, .category-approfondimenti-attualita-giuridica) .elementor-location-archive > .e-parent:first-child:has(.elementor-widget-heading) .tmc-intro-categoria p { text-wrap: balance; }
  html body.archive.category:is(.category-diritto-civile, .category-diritto-penale, .category-diritto-commerciale, .category-diritto-tributario, .category-diritto-del-lavoro, .category-diritto-di-famiglia, .category-diritto-processuale, .category-approfondimenti-attualita-giuridica) .elementor-location-archive > .e-parent:first-child:has(.elementor-widget-heading) .tmc-intro-categoria p:last-child { margin-bottom: 0 !important; }
  /* tessera: tutto a sinistra, sulla stessa colonna della griglia (1160 px), come /blog/ */
  html body.archive.category:is(.category-diritto-civile, .category-diritto-penale, .category-diritto-commerciale, .category-diritto-tributario, .category-diritto-del-lavoro, .category-diritto-di-famiglia, .category-diritto-processuale, .category-approfondimenti-attualita-giuridica) .elementor-location-archive > .e-parent:first-child:has(.elementor-widget-heading) > .e-con > .e-con-inner { box-sizing: border-box; max-width: var(--tmc-blog-larghezza) !important; margin: 0 auto !important; padding-left: 10px !important; padding-right: 10px !important; align-items: flex-start !important; }
  html body.archive.category:is(.category-diritto-civile, .category-diritto-penale, .category-diritto-commerciale, .category-diritto-tributario, .category-diritto-del-lavoro, .category-diritto-di-famiglia, .category-diritto-processuale, .category-approfondimenti-attualita-giuridica) .elementor-location-archive > .e-parent:first-child:has(.elementor-widget-heading) :is(.elementor-heading-title, .elementor-widget-text-editor, .elementor-widget-text-editor p) { text-align: left !important; }
  html body.archive.category:is(.category-diritto-civile, .category-diritto-penale, .category-diritto-commerciale, .category-diritto-tributario, .category-diritto-del-lavoro, .category-diritto-di-famiglia, .category-diritto-processuale, .category-approfondimenti-attualita-giuridica) .elementor-location-archive > .e-parent:first-child:has(.elementor-widget-heading) .elementor-widget-heading { width: 100% !important; }
  html body.archive.category:is(.category-diritto-civile, .category-diritto-penale, .category-diritto-commerciale, .category-diritto-tributario, .category-diritto-del-lavoro, .category-diritto-di-famiglia, .category-diritto-processuale, .category-approfondimenti-attualita-giuridica) .elementor-location-archive > .e-parent:first-child:has(.elementor-widget-heading) .elementor-widget-heading::before {
    content: "La materia"; display: block; margin: 0 0 8px;
    font: 700 12px/1.2 "Lato", sans-serif; letter-spacing: .14em; text-transform: uppercase; color: #15233A;
  }
}
@media (max-width: 767px) {
  html body.archive.category:is(.category-diritto-civile, .category-diritto-penale, .category-diritto-commerciale, .category-diritto-tributario, .category-diritto-del-lavoro, .category-diritto-di-famiglia, .category-diritto-processuale, .category-approfondimenti-attualita-giuridica) .elementor-location-archive > .e-parent:first-child:has(.elementor-widget-heading) { padding-top: 24px !important; padding-bottom: 28px !important; }
}
/* titolo della testata: UNA regola per tutte le pagine d'archivio e la ricerca (revisioni del produttore n. 3 e 4). Solo la
   tipografia: colore, altezza e descrizione restano quelli di ogni modello. Oggi i modelli hanno 400/52 px (396, rubriche,
   4711), 500/56 px con ripiego senza grazie (412, 418, 421, 427, 439, 472, 466, 463, 415) e Baskervville (436).
   Minimo 30 px: a 360 px «Diritto di Famiglia» e «Diritto del Lavoro» stanno su una riga. */
html body:is(.archive, .search) .elementor-location-archive > .e-parent:first-child h1.elementor-heading-title {
  font-family: "Libre Baskerville", Georgia, serif !important; font-weight: 400 !important;
  font-size: clamp(30px, 3.8vw, 52px) !important; line-height: 1.12 !important; letter-spacing: 0 !important;
}
/* rubriche (modelli 4390 e 4391): il titolo partiva 10 px sotto la barra blu notte (padding 0 nei modelli). Con 30 px parte a
   40 px dalla barra, come nelle pagine di materia. Per non spingere giù le copertine, la ricerca si avvicina alla descrizione
   (28 px invece di 40) e il conteggio alla griglia (32 px invece di 42): a 1366×657 la prima fila va a 441-631, come sulle
   materie, con 26 px sotto (revisione del produttore n. 5). */
html body.archive.category:is(.category-osservatorio-cassazione, .category-domande-e-diritti) .elementor-location-archive > .e-parent:first-child { padding-top: 30px !important; }
html body.archive.category:is(.category-osservatorio-cassazione, .category-domande-e-diritti) .elementor-location-archive .tmc-blog-ricerca-widget--archivio { margin-top: 8px !important; }
html body.archive.category:is(.category-osservatorio-cassazione, .category-domande-e-diritti) .elementor-location-archive .tmc-ricerca { margin-bottom: 22px !important; }
/* descrizione nella testata delle altre pagine d'archivio (rubriche, sottocategorie, ricerca, materie minori): niente ultima
   riga di una parola sola. Le pagine delle 8 materie usano «balance» (sopra), che vince perché è più specifico. */
html body.archive .elementor-location-archive > .e-parent:first-child .elementor-widget-text-editor p { text-wrap: pretty; }
/* il filtro delle materie si stacca dalla testata colorata */
html body.archive.category .tmc-materie-box .tmc-materie { margin-top: 28px; margin-bottom: 12px; }   /* + 20 px di gap = 32 px fino alla griglia */

/* ---------------------------------------------------------------- 3. Card: avorio ferme, carta azzurra al passaggio e al fuoco */
/* ferme: avorio #F7F6F2, titolo blu notte (14,56:1), data #3F4958 (8,42:1). Al passaggio del mouse e sul fuoco da tastiera ogni
   card diventa la carta azzurra #9CB2EF, la stessa dell'articolo grande: titolo e occhiello blu notte (7,52), data #2B3442
   (6,00). Vale per /blog/, per tutti gli archivi e per la ricerca, anche sulle card aggiunte da «Carica altri articoli».
   Dietro le copertine niente grigio #F9F9F9 di Royal (si vedrebbe mentre l'immagine carica): trasparente. */
html body:is(.page-id-390, .archive, .search) .wpr-grid .wpr-grid-item { --m: #9CB2EF; --mx: #15233A; --md: #2B3442; }
html body:is(.page-id-390, .archive, .search) .wpr-grid .wpr-grid-image-wrap { background: transparent !important; }
@media (hover: hover) {
  html body:is(.page-id-390, .archive, .search) .wpr-grid .wpr-grid-item:hover { background: var(--m) !important; }
  html body:is(.page-id-390, .archive, .search) .wpr-grid .wpr-grid-item:hover .wpr-grid-item-title a { color: var(--mx) !important; }
  html body:is(.page-id-390, .archive, .search) .wpr-grid .wpr-grid-item:hover .wpr-grid-item-date span { color: var(--md) !important; }
}
/* fuoco da tastiera: la card diventa azzurra come al passaggio, con l'anello blu notte della base. Il sito mette anche un alone
   bianco di 4 px sul link: sul colore disegnerebbe un secondo riquadro dentro la card, quindi qui si toglie. */
@supports selector(:has(*)) {
  html body:is(.page-id-390, .archive, .search) .wpr-grid .wpr-grid-item:has(.wpr-grid-item-title a:focus-visible) { background: var(--m) !important; }
  html body:is(.page-id-390, .archive, .search) .wpr-grid .wpr-grid-item:has(.wpr-grid-item-title a:focus-visible) .wpr-grid-item-title a { color: var(--mx) !important; }
  html body:is(.page-id-390, .archive, .search) .wpr-grid .wpr-grid-item:has(.wpr-grid-item-title a:focus-visible) .wpr-grid-item-date span { color: var(--md) !important; }
  html body:is(.page-id-390, .archive, .search) .wpr-grid .wpr-grid-item-title a:focus-visible { box-shadow: none !important; }
}
/* occhiello della materia sopra il titolo, solo su /blog/: il nome in blu notte, maiuscolo, senza fondo né bordo (14,56:1
   sull'avorio, 7,52 sull'azzurro). Lo scrive il CSS dalla classe della categoria (variabile --mn): nelle pagine d'archivio e
   nella ricerca non c'è. */
html body:is(.page-id-390, .archive) .wpr-grid .wpr-grid-item-below-content::before {
  content: var(--mn, none); order: -2; align-self: flex-start;
  margin: 0 0 10px; padding: 0; background: none; color: #15233A;
  font: 700 12px/1.2 "Lato", sans-serif; letter-spacing: .12em; text-transform: uppercase; white-space: nowrap;
}
/* rubriche di /blog/ come due tessere del feed: etichetta «RUBRICA» in maiuscoletto in alto, titolo serif con il corsivo
   (in Elementor: «Sentenze <em>in chiaro</em>», «Ti può <em>succedere</em>»). In Elementor «Ti può succedere» va a sinistra
   e «Sentenze in chiaro» a destra: la carta rossa sta in diagonale con l'azzurra dell'articolo grande.
   - «Sentenze in chiaro» (56f98f1) è la carta rossa #D13E2A, con tutto il testo bianco (4,74:1): la seconda carta del feed;
   - «Ti può succedere» (c21f3c5) resta avorio e al passaggio diventa azzurra, come le card (blu notte 7,52).
   Il fuoco resta l'anello blu notte della base, fuori dalla card. */
html body .elementor-390 .tmc-rubrica .elementor-widget-heading::before {
  content: "Rubrica"; display: block; margin: 4px 0 10px;
  font: 700 12px/1.2 "Lato", sans-serif; letter-spacing: .14em; text-transform: uppercase; color: #15233A;
}
/* corpo del titolo: il CSS del sito ha già «.site-main .e-con-inner .elementor-widget-heading h2.elementor-heading-title»
   (clamp 24-30 px, più forte della base): qui un selettore più forte, 30 px da computer e 20 px sul telefono */
html body .elementor-390 .tmc-rubrica .elementor-widget-heading h2.elementor-heading-title { font-size: clamp(24px, 2.2vw, 30px) !important; line-height: 1.2 !important; }
@media (max-width: 767px) { html body .elementor-390 .tmc-rubrica .elementor-widget-heading h2.elementor-heading-title { font-size: 20px !important; line-height: 1.28 !important; } }
html body .elementor-390 .tmc-rubrica .elementor-heading-title em { font-style: italic; }
html body .elementor-390 .tmc-rubrica.elementor-element-56f98f1,
html body .elementor-390 .tmc-rubrica.elementor-element-56f98f1:hover { background: #D13E2A !important; }
html body .elementor-390 .tmc-rubrica.elementor-element-56f98f1 .elementor-widget-heading::before,
html body .elementor-390 .tmc-rubrica.elementor-element-56f98f1 .elementor-heading-title,
html body .elementor-390 .tmc-rubrica.elementor-element-56f98f1 .elementor-heading-title a,
html body .elementor-390 .tmc-rubrica.elementor-element-56f98f1 .elementor-widget-text-editor p,
html body .elementor-390 .tmc-rubrica.elementor-element-56f98f1 .elementor-widget-text-editor p.tmc-rubrica__meta,
html body .elementor-390 .tmc-rubrica.elementor-element-56f98f1 .tmc-rubrica__vai a { color: #FFFFFF !important; }
@media (hover: hover) {
  html body .elementor-390 .tmc-rubrica:not(.elementor-element-56f98f1):hover { background: #9CB2EF !important; }
  html body .elementor-390 .tmc-rubrica:not(.elementor-element-56f98f1):hover .elementor-widget-text-editor p,
  html body .elementor-390 .tmc-rubrica:not(.elementor-element-56f98f1):hover .elementor-widget-text-editor p.tmc-rubrica__meta { color: #15233A !important; }
  html body .elementor-390 .tmc-rubrica.elementor-element-56f98f1:hover .elementor-heading-title a { text-decoration: underline !important; text-decoration-thickness: 1px !important; text-underline-offset: 5px; }
}

/* ---------------------------------------------------------------- 4. Filtro per materia: neutro, la voce attiva segnata in rosso */
/* voci bianche con il bordo #3F4958 e il testo blu notte; al passaggio l'avorio. Nessun pallino, nessun colore per materia.
   La voce attiva («Tutte le materie» su /blog/, la materia sulla sua pagina) è bianca, in grassetto, con il bordo rosso Vox
   #D93A2F di 2 px: il rosso come segno (4,57:1 sul bianco). */
@media (hover: hover) { html body .tmc-materie a:hover { background: #F7F6F2; border-color: #15233A; } }
html body .tmc-materie a[aria-current="page"],
html body.page-id-390 .tmc-materie a[href="/blog/"],
html body.category-diritto-civile .tmc-materie a[href$="/diritto-civile/"],
html body.category-diritto-processuale .tmc-materie a[href$="/diritto-processuale/"],
html body.category-diritto-penale .tmc-materie a[href$="/diritto-penale/"],
html body.category-diritto-tributario .tmc-materie a[href$="/diritto-tributario/"],
html body.category-diritto-di-famiglia .tmc-materie a[href$="/diritto-di-famiglia/"],
html body.category-diritto-commerciale .tmc-materie a[href$="/diritto-commerciale/"],
html body.category-diritto-del-lavoro .tmc-materie a[href$="/diritto-del-lavoro/"],
html body.category-approfondimenti-attualita-giuridica .tmc-materie a[href$="/approfondimenti-attualita-giuridica/"] {
  background: #FFFFFF; border-color: #D93A2F; box-shadow: inset 0 0 0 1px #D93A2F; color: #15233A; font-weight: 700;
}
/* anello di fuoco: blu notte fuori dalla voce (15,75:1). Fino a 1024 px la base lo mette DENTRO la voce e, sulla voce
   attiva, bianco: qui torna blu notte, perché la voce attiva è bianca. */
html body .tmc-materie a:focus-visible { outline: 2px solid #15233A !important; outline-offset: 2px !important; }
@media (max-width: 1024px) {
  html body .tmc-materie a:focus-visible { outline-offset: -4px !important; }
  html body .tmc-materie a[aria-current="page"]:focus-visible,
  html body.page-id-390 .tmc-materie a[href="/blog/"]:focus-visible,
  html body.category-diritto-civile .tmc-materie a[href$="/diritto-civile/"]:focus-visible,
  html body.category-diritto-processuale .tmc-materie a[href$="/diritto-processuale/"]:focus-visible,
  html body.category-diritto-penale .tmc-materie a[href$="/diritto-penale/"]:focus-visible,
  html body.category-diritto-tributario .tmc-materie a[href$="/diritto-tributario/"]:focus-visible,
  html body.category-diritto-di-famiglia .tmc-materie a[href$="/diritto-di-famiglia/"]:focus-visible,
  html body.category-diritto-commerciale .tmc-materie a[href$="/diritto-commerciale/"]:focus-visible,
  html body.category-diritto-del-lavoro .tmc-materie a[href$="/diritto-del-lavoro/"]:focus-visible,
  html body.category-approfondimenti-attualita-giuridica .tmc-materie a[href$="/approfondimenti-attualita-giuridica/"]:focus-visible { outline-color: #15233A !important; }
}

/* ---------------------------------------------------------------- 5. «Cerca» e «Carica altri articoli» */
/* «Cerca»: bottone del sito senza il fondo blu notte (bianco, bordo 2 px e testo blu notte) */
html body .elementor-390 .tmc-ricerca .tmc-ricerca__pulsante { background: #FFFFFF !important; border-color: #15233A !important; color: #15233A !important; }
@media (hover: hover) { html body .elementor-390 .tmc-ricerca .tmc-ricerca__pulsante:hover { background: #F7F6F2 !important; } }
html body .elementor-390 .tmc-ricerca .tmc-ricerca__campo { border-color: #15233A; }
/* «Carica altri articoli»: al passaggio e al fuoco si riempie di avorio #F7F6F2, non di blu notte */
html body.page-id-390 .wpr-grid-pagination .wpr-load-more-btn:hover,
html body.page-id-390 .wpr-grid-pagination .wpr-load-more-btn:focus-visible { background: #F7F6F2 !important; color: #15233A !important; }

/* ---------------------------------------------------------------- 6. Articolo (facoltativo E5): occhiello della rubrica */
/* le rubriche non hanno un colore: nell'articolo l'occhiello è blu notte (15,75:1 sul bianco), senza pallino */
html body .elementor-location-single.category-osservatorio-cassazione .tmc-occhiello a.tmc-occhiello--sentenze,
html body .elementor-location-single.category-domande-e-diritti .tmc-occhiello a.tmc-occhiello--ti { color: #15233A; }

@media (prefers-reduced-motion: reduce) { html body .tmc-materie a { transition: none; } }
/* v8 · A «Rivista» a colori (è la v7-A, invariata, più il blocco «v8 · colore» in fondo). Va DOPO 38-base-v7.css e
   v8-colori.css. 11/11: colori e stile del feed approvato (carta azzurra per l'articolo grande; rubrica rossa in v8-colori.css).
   v7 · A «Rivista»: testata da giornale (titolo a sinistra, ricerca a destra), poi «Ultimi pubblicati»: l'ultimo articolo
   in grande e i tre successivi in colonna; poi le due rubriche (card v6) e «Tutti gli articoli» dal 5° articolo.
   Elementor:
   - ricerca: il contenitore c69f3e5 si trascina DENTRO la testata 5c09b4df, dopo l'H1;
   - «Ultimi pubblicati»: PRIMA delle rubriche e37e601, un contenitore con Classi CSS «tmc-apertura» con dentro un Titolo
     (H2 «Ultimi pubblicati», classe «tmc-apertura__titolo») e una Griglia Royal (classe «tmc-apertura-griglia»):
     Query = Post, 4 per pagina, Offset 0, Paginazione = No, Filtri = No, elementi = immagine, titolo (H3), data;
   - griglia generale a1a3ea8: Offset = 4, 12 per pagina (Royal calcola offset = (pagina − 1) × 12 + 4: niente doppioni).
   Le card dell'apertura usano il markup vero di Royal (.wpr-grid-item…), lo stesso della griglia generale. */

/* testata: occhiello e H1 a sinistra, ricerca a destra, filetto sotto */
html body .elementor-390 .elementor-element-5c09b4df { padding: clamp(28px, 2.6vw, 40px) var(--tmc-blog-margine) 0 !important; }
html body .elementor-390 .elementor-element-5c09b4df > .e-con-inner {
  display: grid !important; grid-template-columns: minmax(0, 1fr) minmax(320px, 460px); column-gap: 56px; row-gap: 8px;
  align-items: end !important; max-width: var(--tmc-blog-larghezza) !important; margin: 0 auto !important;
  padding: 0 0 28px !important; border-bottom: 1px solid var(--tmc-filetto);
}
html body .elementor-390 .tmc-blog-etichetta { grid-column: 1; grid-row: 1; justify-self: start; }
html body .elementor-390 .tmc-blog-etichetta .elementor-heading-title, html body .site-main .elementor-390 .tmc-blog-etichetta .elementor-heading-title { text-align: left !important; }
html body .elementor-390 .elementor-element-7bfff4ef { grid-column: 1; grid-row: 2; width: auto !important; }
html body .elementor-390 .elementor-element-7bfff4ef .elementor-heading-title { text-align: left !important; font-size: clamp(34px, 3.4vw, 48px) !important; line-height: 1.12 !important; }
html body .elementor-390 .tmc-blog-ricerca-box { grid-column: 2; grid-row: 1 / 3; padding: 0 !important; width: 100% !important; }
html body .elementor-390 .tmc-blog-ricerca-box .tmc-ricerca { max-width: none; }
html body .elementor-390 .tmc-ricerca__conteggio { display: none !important; }
@media (max-width: 900px) {
  html body .elementor-390 .elementor-element-5c09b4df > .e-con-inner { grid-template-columns: minmax(0, 1fr); padding-bottom: 20px !important; }
  html body .elementor-390 .tmc-blog-ricerca-box { grid-column: 1; grid-row: 3; margin-top: 12px !important; }
}

/* «Ultimi pubblicati»: contenitore e titolo (etichetta in maiuscoletto, come «BLOG») */
html body .elementor-390 .tmc-apertura { display: block !important; padding: clamp(24px, 2.6vw, 36px) var(--tmc-blog-margine) 0 !important; margin: 0 !important; }
html body .elementor-390 .tmc-apertura > .e-con-inner { display: block !important; max-width: var(--tmc-blog-larghezza) !important; margin: 0 auto !important; padding: 0 !important; }
html body .elementor-390 .tmc-apertura__titolo .elementor-heading-title, html body .site-main .elementor-390 .tmc-apertura__titolo h2.elementor-heading-title { margin: 0 0 18px !important; font: 700 12px/1.2 "Lato", sans-serif !important; letter-spacing: .14em !important; text-transform: uppercase !important; color: #3F4958 !important; text-align: left !important; }
/* nelle pagine /blog/page/2/ e seguenti (aperte da un link diretto) l'apertura non serve */
html body.paged .elementor-390 .tmc-apertura { display: none !important; }

/* la griglia dell'apertura: 1 grande a sinistra (7/12), 3 richiami in colonna a destra (5/12) */
html body.page-id-390 .elementor-390 .tmc-apertura-griglia .wpr-grid {
  display: grid !important; grid-template-columns: minmax(0, 7fr) minmax(0, 5fr) !important; grid-auto-rows: auto;
  column-gap: 48px !important; row-gap: 0 !important; align-items: start;
}
html body.page-id-390 .elementor-390 .tmc-apertura-griglia .wpr-grid .wpr-grid-item {
  grid-column: 2 !important; grid-row: auto; background: transparent !important; border-radius: 0 !important; overflow: visible !important;
  padding: 20px 0 !important; border-top: 1px solid var(--tmc-filetto);
}
html body.page-id-390 .elementor-390 .tmc-apertura-griglia .wpr-grid .wpr-grid-item:nth-child(1) { grid-column: 1 !important; grid-row: 1 / span 3; padding: 0 !important; border-top: 0; }
html body.page-id-390 .elementor-390 .tmc-apertura-griglia .wpr-grid .wpr-grid-item:nth-child(2) { padding-top: 0 !important; border-top: 0; }
html body.page-id-390 .elementor-390 .tmc-apertura-griglia .wpr-grid .wpr-grid-item:hover { background: transparent !important; }
html body.page-id-390 .elementor-390 .tmc-apertura-griglia .wpr-grid .wpr-grid-item .wpr-grid-item-inner { display: flex !important; flex-direction: column; align-items: stretch; position: static !important; }
/* il link del titolo copre tutto il richiamo, filetto e margini compresi (la «inner» di Royal non fa da riferimento) */
html body.page-id-390 .elementor-390 .tmc-apertura-griglia .wpr-grid .wpr-grid-item .wpr-grid-media-wrap { border-radius: 12px !important; overflow: hidden !important; }
html body.page-id-390 .elementor-390 .tmc-apertura-griglia .wpr-grid .wpr-grid-item:nth-child(1) .wpr-grid-media-wrap { border-radius: 22px !important; }
html body.page-id-390 .elementor-390 .tmc-apertura-griglia .wpr-grid .wpr-grid-item .wpr-grid-item-below-content { padding: 0 !important; display: flex; flex-direction: column; justify-content: flex-start !important; }
/* data e rubrica SOPRA il titolo, come in una rivista */
html body.page-id-390 .elementor-390 .tmc-apertura-griglia .wpr-grid .wpr-grid-item .wpr-grid-item-date { order: -1; margin: 0 0 6px !important; }
html body.page-id-390 .elementor-390 .tmc-apertura-griglia .wpr-grid .wpr-grid-item .wpr-grid-item-title { margin: 0 !important; }
/* l'articolo grande */
html body.page-id-390 .elementor-390 .tmc-apertura-griglia .wpr-grid .wpr-grid-item:nth-child(1) .wpr-grid-item-below-content { padding: 20px 0 0 !important; }
html body.page-id-390 .elementor-390 .tmc-apertura-griglia .wpr-grid .wpr-grid-item:nth-child(1) .wpr-grid-item-date { margin-bottom: 8px !important; }
html body.page-id-390 .elementor-390 .tmc-apertura-griglia .wpr-grid .wpr-grid-item:nth-child(1) .wpr-grid-item-title a { font-size: clamp(24px, 2.3vw, 32px) !important; line-height: 1.25 !important; text-wrap: balance; }
/* i tre richiami: miniatura 168 px a sinistra, titolo con le righe bilanciate (text-wrap: balance: niente righe di una o due parole) */
html body.page-id-390 .elementor-390 .tmc-apertura-griglia .wpr-grid .wpr-grid-item:not(:first-child) .wpr-grid-item-inner {
  display: grid !important; grid-template-columns: 168px minmax(0, 1fr); column-gap: 20px; align-items: start;
}
html body.page-id-390 .elementor-390 .tmc-apertura-griglia .wpr-grid .wpr-grid-item:not(:first-child) .wpr-grid-item-title a { font-size: 18px !important; line-height: 1.38 !important; text-wrap: balance; }
html body.page-id-390 .elementor-390 .tmc-apertura-griglia .wpr-grid .wpr-grid-item:not(:first-child) .wpr-grid-item-date span { font-size: 13px !important; }
/* fuoco: l'anello segue la forma (raggio 22 sull'articolo grande, 12 sui richiami) */
@supports selector(:has(*)) {
  html body.page-id-390 .elementor-390 .tmc-apertura-griglia .wpr-grid .wpr-grid-item:has(.wpr-grid-item-title a:focus-visible) { outline-offset: 6px !important; border-radius: 12px !important; }
  html body.page-id-390 .elementor-390 .tmc-apertura-griglia .wpr-grid .wpr-grid-item:nth-child(1):has(.wpr-grid-item-title a:focus-visible) { border-radius: 22px !important; }
  html body.page-id-390 .elementor-390 .tmc-apertura-griglia .wpr-grid .wpr-grid-item:has(.wpr-grid-item-title a:focus-visible) .wpr-grid-media-wrap { border-radius: 12px !important; }
  html body.page-id-390 .elementor-390 .tmc-apertura-griglia .wpr-grid .wpr-grid-item:nth-child(1):has(.wpr-grid-item-title a:focus-visible) .wpr-grid-media-wrap { border-radius: 22px !important; }
}

/* computer piccolo e tablet orizzontale (901-1100 px): stesse due colonne, più strette */
@media (min-width: 901px) and (max-width: 1100px) {
  html body.page-id-390 .elementor-390 .tmc-apertura-griglia .wpr-grid { column-gap: 32px !important; grid-template-columns: minmax(0, 3fr) minmax(0, 2fr) !important; }
  html body.page-id-390 .elementor-390 .tmc-apertura-griglia .wpr-grid .wpr-grid-item:not(:first-child) .wpr-grid-item-inner { grid-template-columns: 120px minmax(0, 1fr); column-gap: 16px; }
  html body.page-id-390 .elementor-390 .tmc-apertura-griglia .wpr-grid .wpr-grid-item:not(:first-child) .wpr-grid-item-title a { font-size: 16px !important; }
  html body.page-id-390 .elementor-390 .tmc-apertura-griglia .wpr-grid .wpr-grid-item { padding: 14px 0 !important; }
  html body.page-id-390 .elementor-390 .tmc-apertura-griglia .wpr-grid .wpr-grid-item:nth-child(1) { padding: 0 !important; }
  html body.page-id-390 .elementor-390 .tmc-apertura-griglia .wpr-grid .wpr-grid-item:nth-child(2) { padding-top: 0 !important; }
  html body.page-id-390 .elementor-390 .tmc-apertura-griglia .wpr-grid .wpr-grid-item:nth-child(1) .wpr-grid-item-title a { font-size: 24px !important; }
}
/* tablet verticale (768-900 px): l'articolo grande in orizzontale (copertina a sinistra, titolo a destra), i tre richiami in fila sotto */
@media (min-width: 768px) and (max-width: 900px) {
  html body.page-id-390 .elementor-390 .tmc-apertura-griglia .wpr-grid { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; column-gap: 24px !important; row-gap: 28px !important; }
  html body.page-id-390 .elementor-390 .tmc-apertura-griglia .wpr-grid .wpr-grid-item { grid-column: auto !important; grid-row: auto !important; padding: 0 !important; border-top: 0; }
  html body.page-id-390 .elementor-390 .tmc-apertura-griglia .wpr-grid .wpr-grid-item:nth-child(1) { grid-column: 1 / -1 !important; }
  html body.page-id-390 .elementor-390 .tmc-apertura-griglia .wpr-grid .wpr-grid-item:nth-child(1) .wpr-grid-item-inner { display: grid !important; grid-template-columns: minmax(0, 3fr) minmax(0, 2fr); column-gap: 24px; align-items: center; }
  html body.page-id-390 .elementor-390 .tmc-apertura-griglia .wpr-grid .wpr-grid-item:nth-child(1) .wpr-grid-item-below-content { padding: 0 !important; }
  html body.page-id-390 .elementor-390 .tmc-apertura-griglia .wpr-grid .wpr-grid-item:nth-child(1) .wpr-grid-item-title a { font-size: 24px !important; }
  html body.page-id-390 .elementor-390 .tmc-apertura-griglia .wpr-grid .wpr-grid-item:not(:first-child) .wpr-grid-item-inner { grid-template-columns: minmax(0, 1fr); row-gap: 12px; }
  html body.page-id-390 .elementor-390 .tmc-apertura-griglia .wpr-grid .wpr-grid-item:not(:first-child) .wpr-grid-item-title a { font-size: 16px !important; }
}
/* telefono: l'articolo grande sopra, i tre richiami in righe con miniatura 120 px */
@media (max-width: 767px) {
  html body.page-id-390 .elementor-390 .tmc-apertura-griglia .wpr-grid { grid-template-columns: minmax(0, 1fr) !important; }
  html body.page-id-390 .elementor-390 .tmc-apertura-griglia .wpr-grid .wpr-grid-item { grid-column: 1 !important; grid-row: auto !important; padding: 16px 0 !important; border-top: 1px solid var(--tmc-filetto); }
  html body.page-id-390 .elementor-390 .tmc-apertura-griglia .wpr-grid .wpr-grid-item:nth-child(1) { padding: 0 0 20px !important; border-top: 0; }
  html body.page-id-390 .elementor-390 .tmc-apertura-griglia .wpr-grid .wpr-grid-item:nth-child(2) { padding-top: 16px !important; border-top: 1px solid var(--tmc-filetto); }
  html body.page-id-390 .elementor-390 .tmc-apertura-griglia .wpr-grid .wpr-grid-item:nth-child(1) .wpr-grid-item-title a { font-size: 24px !important; }
  html body.page-id-390 .elementor-390 .tmc-apertura-griglia .wpr-grid .wpr-grid-item:not(:first-child) .wpr-grid-item-inner { grid-template-columns: 120px minmax(0, 1fr); column-gap: 14px; }
  html body.page-id-390 .elementor-390 .tmc-apertura-griglia .wpr-grid .wpr-grid-item:not(:first-child) .wpr-grid-item-title a { font-size: 16px !important; }
}
/* v8 · stile del feed: le rubriche sulle stesse colonne di «Ultimi pubblicati» (7/12 e 5/12 sopra i 1100 px, 3/5 e 2/5 fra
   901 e 1100). In Elementor «Ti può succedere» va a sinistra e «Sentenze in chiaro», la carta rossa, a destra: così la carta
   azzurra (articolo grande, colonna di sinistra) e la carta rossa (colonna di destra) stanno in diagonale, come nel feed, e
   non condividono mai una colonna (revisione del produttore n. 9). */
@media (min-width: 1101px) {
  html body.page-id-390 .elementor-390 .elementor-element-e37e601 > .e-con-inner { grid-template-columns: minmax(0, 7fr) minmax(0, 5fr) !important; column-gap: 48px !important; }
}
@media (min-width: 901px) and (max-width: 1100px) {
  html body.page-id-390 .elementor-390 .elementor-element-e37e601 > .e-con-inner { grid-template-columns: minmax(0, 3fr) minmax(0, 2fr) !important; column-gap: 32px !important; }
}
/* rubriche: un po' più d'aria sopra, perché vengono dopo «Ultimi pubblicati» */
html body .elementor-390 .elementor-element-e37e601 { padding-top: clamp(36px, 3.6vw, 52px) !important; }

/* ---------------------------------------------------------------- v8 · colore */
/* l'articolo grande di «Ultimi pubblicati» è la carta azzurra #9CB2EF (raggio 22), come la tessera «DEFINITIVA.» del feed:
   sempre la stessa (posizione, non materia). Titolo e nome della materia blu notte (7,52:1), data #2B3442 (6,00:1).
   Al passaggio non cambia colore: il titolo si sottolinea, come nel resto del sito. I tre richiami restano su bianco, con
   l'occhiello blu notte come le card. */
html body.page-id-390 .elementor-390 .tmc-apertura-griglia .wpr-grid .wpr-grid-item:nth-child(1),
html body.page-id-390 .elementor-390 .tmc-apertura-griglia .wpr-grid .wpr-grid-item:nth-child(1):hover {
  background: #9CB2EF !important; border-radius: 22px !important; overflow: hidden !important; padding: 0 !important;
}
html body.page-id-390 .elementor-390 .tmc-apertura-griglia .wpr-grid .wpr-grid-item:nth-child(1) { --m: #9CB2EF; --mx: #15233A; --md: #2B3442; }
/* il nome della materia nell'articolo grande: blu notte sull'azzurro (7,52:1), senza fondo, come sulle card. Il segno rosso
   della tessera è quello della copertina (revisione del produttore n. 9). */
html body.page-id-390 .elementor-390 .tmc-apertura-griglia .wpr-grid .wpr-grid-item:nth-child(1) .wpr-grid-item-below-content::before { color: #15233A !important; }
/* i tre richiami: al passaggio e al fuoco restano su bianco, con i colori di riposo (le variabili sono quelle del riposo) */
html body.page-id-390 .elementor-390 .tmc-apertura-griglia .wpr-grid .wpr-grid-item:not(:first-child) { --m: transparent; --mx: #15233A; --md: #3F4958; }

html body.page-id-390 .elementor-390 .tmc-apertura-griglia .wpr-grid .wpr-grid-item:nth-child(1) .wpr-grid-media-wrap { border-radius: 0 !important; }
html body.page-id-390 .elementor-390 .tmc-apertura-griglia .wpr-grid .wpr-grid-item:nth-child(1) .wpr-grid-item-below-content { padding: 22px clamp(22px, 2.2vw, 30px) 26px !important; }
/* data: #2B3442 sulla carta azzurra (6,00:1); sui richiami, che sono su bianco, #3F4958 (9,11:1) */
html body.page-id-390 .elementor-390 .tmc-apertura-griglia .wpr-grid .wpr-grid-item:nth-child(1) .wpr-grid-item-date span { color: #2B3442 !important; }
html body.page-id-390 .elementor-390 .tmc-apertura-griglia .wpr-grid .wpr-grid-item:not(:first-child) .wpr-grid-item-date span { color: #3F4958 !important; }
html body.page-id-390 .elementor-390 .tmc-apertura-griglia .wpr-grid .wpr-grid-item:not(:first-child) .wpr-grid-item-below-content::before { margin-bottom: 6px; font-size: 11px; letter-spacing: .1em; }
/* fuoco dell'articolo grande: l'anello segue il riquadro */
@supports selector(:has(*)) {
  html body.page-id-390 .elementor-390 .tmc-apertura-griglia .wpr-grid .wpr-grid-item:nth-child(1):has(.wpr-grid-item-title a:focus-visible) .wpr-grid-media-wrap { border-radius: 22px 22px 0 0 !important; }
}
@media (min-width: 768px) and (max-width: 900px) {
  html body.page-id-390 .elementor-390 .tmc-apertura-griglia .wpr-grid .wpr-grid-item:nth-child(1) .wpr-grid-item-below-content { padding: 20px 24px 20px 0 !important; }
}
@media (max-width: 767px) {
  html body.page-id-390 .elementor-390 .tmc-apertura-griglia .wpr-grid .wpr-grid-item:nth-child(1) { padding: 0 !important; margin-bottom: 4px; }
  html body.page-id-390 .elementor-390 .tmc-apertura-griglia .wpr-grid .wpr-grid-item:nth-child(1) .wpr-grid-item-below-content { padding: 18px 20px 20px !important; }
  html body.page-id-390 .elementor-390 .tmc-apertura-griglia .wpr-grid .wpr-grid-item:nth-child(2) { border-top: 0 !important; }
}

/* 38z. /blog/: i filtri Royal della griglia generale restano nascosti (il vecchio 1770 li forzava visibili; li sostituisce il filtro delle materie). Chat Sito, 11/11 */
html body .elementor-element-a1a3ea8 .wpr-grid-filters { display: none !important; }

/* 38aa. TMC · correzioni accessibilità 12/11/2026 (chat UX articoli, ok di Luca): focus blu notte nella fascia bianca del footer; WhatsApp nascosto con banner/preferenze cookie aperti */
html body .elementor-location-footer .tmc-cta-fine :is(a, button):focus-visible {
	outline: 3px solid #15233A !important;
	outline-offset: 3px !important;
}
html.show--consent .qlwapp__container,
html.show--preferences .qlwapp__container {
	display: none !important;
}