/* Italia Assistance: shared responsive reading rules, 2026-10-24. */
#primary .entry-content :is(h1,h2,h3,h4,h5,h6),
#primary .elementor-widget-heading .elementor-heading-title {
  word-break: normal !important;
  overflow-wrap: break-word;
  hyphens: manual;
}
body.single-post #primary .entry-content h2 {
  font-size: 34px !important; line-height: 1.25 !important;
  margin-block: 1.25em .6em;
}
body.single-post #primary .entry-content h3 {
  font-size: 27px !important; line-height: 1.3 !important;
  margin-block: 1.15em .55em;
}
#primary .entry-content :is(img,video,iframe) { max-width: 100%; }
#primary .entry-content :is(img,video) { height: auto; }
#primary .wpcf7 :is(input:not([type=checkbox]):not([type=radio]),select,textarea) {
  max-width: 100%; box-sizing: border-box;
}
@media (max-width: 767px) {
  #primary :is(.elementor-widget-text-editor,.entry-content) {
    word-break: normal !important;
    overflow-wrap: break-word;
  }
  #primary .elementor-widget-text-editor,
  #primary .elementor-widget-text-editor :is(p,li,h1,h2,h3,h4,h5,h6),
  body.single-post #primary .entry-content :is(p,li,h1,h2,h3,h4,h5,h6) {
    text-align: left !important;
    word-spacing: normal !important;
    letter-spacing: normal !important;
  }
  #primary :is(.elementor-widget-text-editor,.elementor-widget-heading) > .elementor-widget-container {
    margin-inline: 0 !important;
    min-width: 0;
  }
  #primary .elementor-widget-text-editor :is(p,li),
  body.single-post #primary .entry-content :is(p,li) {
    font-size: 17px !important; line-height: 1.65 !important;
  }
  #primary .elementor-widget-text-editor p,
  body.single-post #primary .entry-content p { margin-block-end: 1em; }
  #primary :is(h1,.theme_breadcrumb__area-content h1),
  #primary .elementor-widget-heading h1.elementor-heading-title {
    font-size: clamp(28px,7.5vw,36px) !important;
    line-height: 1.2 !important;
    word-break: normal !important;
    overflow-wrap: break-word;
    hyphens: manual;
  }
  #primary h2,
  body.single-post #primary .entry-content h2,
  #primary .elementor-widget-heading h2.elementor-heading-title {
    font-size: clamp(25px,6.5vw,30px) !important;
    line-height: 1.25 !important;
  }
  #primary h3,
  body.single-post #primary .entry-content h3,
  #primary .elementor-widget-heading h3.elementor-heading-title {
    font-size: clamp(22px,5.7vw,25px) !important;
    line-height: 1.3 !important;
  }
  #primary :is(h4,h5,h6) { font-size: 20px !important; line-height: 1.35 !important; }
  #primary .entry-content :is(figure,.wp-caption) { max-width: 100%; margin-inline: 0; }
  #primary .entry-content .wp-block-table { overflow-x: auto; }
  #primary .wpcf7 :is(input:not([type=checkbox]):not([type=radio]),select,textarea) {
    font-size: 16px !important; min-width: 0;
  }
  #primary :is(.elementor-button,.tOri-button) { white-space: normal; }
  #cmplz-manage-consent .cmplz-manage-consent {
    left: 12px !important; right: auto !important;
    bottom: 0 !important; top: auto !important;
    width: auto !important; max-width: calc(100vw - 88px) !important;
    min-height: 44px !important; height: auto !important;
    padding: 8px 12px !important; font-size: 12px !important;
    line-height: 1.3 !important;
    transform: none !important;
  }
  body .scroll-up {
    right: 16px !important; bottom: 72px !important;
    width: 44px !important; height: 44px !important;
  }
}
