.elementor-kit-5{--e-global-color-primary:#15265D;--e-global-color-secondary:#A9A3D2;--e-global-color-text:#0D1A3D;--e-global-color-accent:#C9A35D;--e-global-color-waan_deep:#07132F;--e-global-color-waan_lilac:#EFEDFB;--e-global-color-waan_gold_light:#EFDCA9;--e-global-color-waan_paper:#FBFAFF;--e-global-typography-primary-font-family:"Orbitron";--e-global-typography-primary-font-weight:500;--e-global-typography-secondary-font-family:"Orbitron";--e-global-typography-secondary-font-weight:600;--e-global-typography-text-font-family:"Space Grotesk";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Space Grotesk";--e-global-typography-accent-font-weight:700;font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-kit-5 e-page-transition{background-color:#FFBC7D;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}
/* Start custom CSS *//* ==========================================================
   OTTIMIZZAZIONE MOBILE E TABLET — 2070connectedvision.com
   ========================================================== */

/* ---------- Base (tutti i dispositivi) ---------- */
html, body {
  overflow-x: clip;
}
.elementor *, .elementor *::before, .elementor *::after {
  box-sizing: border-box;
}
img, video, iframe {
  max-width: 100%;
}
img, video {
  height: auto;
}

/* ---------- Tablet e mobile (fino a 1024px) ---------- */
@media (max-width: 1024px) {
  /* niente salti dovuti alle animazioni di ingresso */
  .elementor-invisible { visibility: visible !important; }
  .animated { animation: none !important; }

  /* sfondi fissi: causano scatti su tablet e mobile */
  .elementor-element, .e-con { background-attachment: scroll !important; }

  /* contenitori mai più larghi dello schermo */
  .e-con, .e-con-inner { max-width: 100% !important; }
}

/* ---------- Solo mobile (fino a 767px) ---------- */
@media (max-width: 767px) {

  /* contenitori e widget non superano lo schermo */
  .e-con, .e-con-inner, .elementor-widget {
    max-width: 100% !important;
    min-width: 0;
  }
  .elementor-widget-container {
    overflow-wrap: anywhere;
  }

  /* testi: vanno a capo invece di uscire dal contenitore */
  .elementor-heading-title,
  .e-heading-base,
  .e-paragraph-base,
  .elementor-widget-text-editor,
  .elementor-widget-text-editor p {
    overflow-wrap: anywhere;
    word-break: break-word;
    hyphens: auto;
    max-width: 100%;
  }
  .elementor-heading-title {
    letter-spacing: normal !important;
  }

  /* titoli: dimensioni fluide (widget classici e atomici) */
  h1.elementor-heading-title,
  h1.e-heading-base {
    font-size: clamp(1.7rem, 8vw, 2.4rem) !important;
    line-height: 1.15 !important;
  }
  h2.elementor-heading-title,
  h2.e-heading-base {
    font-size: clamp(1.5rem, 7vw, 2.1rem) !important;
    line-height: 1.2 !important;
  }
  h3.elementor-heading-title,
  h3.e-heading-base {
    font-size: clamp(1.25rem, 5.5vw, 1.6rem) !important;
    line-height: 1.25 !important;
  }
  h4.e-heading-base,
  h5.e-heading-base,
  h6.e-heading-base {
    font-size: clamp(1.1rem, 4.5vw, 1.35rem) !important;
    line-height: 1.3 !important;
  }

  /* paragrafi e testi */
  .e-paragraph-base,
  .elementor-widget-text-editor {
    font-size: clamp(1rem, 4.2vw, 1.2rem) !important;
    line-height: 1.5 !important;
  }/* ---------- HEADER SENZA EFFETTI ALLO SCORRIMENTO (tablet e mobile) ---------- */
@media (max-width: 1024px) {
  .elementor-location-header,
  .elementor-location-header * {
    transition: none !important;
    animation: none !important;
  }
  .elementor-location-header .elementor-invisible {
    visibility: visible !important;
    opacity: 1 !important;
  }
}/* ---------- HEADER: logo + menu su un'unica riga (tablet e mobile) ---------- */
@media (max-width: 1024px) {

  /* contenitore dell'header: una sola riga, compatta */
  [class*="waan-global-head"] {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 12px !important;
    width: 100% !important;
    min-height: 0 !important;
    height: auto !important;
    padding: 12px 16px !important;
  }

  /* se l'header ha un contenitore interno, si comporta allo stesso modo */
  [class*="waan-global-head"] > .e-con-inner {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 12px !important;
    width: 100% !important;
    min-height: 0 !important;
    height: auto !important;
    padding: 0 !important;
  }

  /* elementi dell'header: niente margini e larghezze forzate */
  [class*="waan-global-head"] > *,
  [class*="waan-global-head"] > .e-con-inner > * {
    margin: 0 !important;
    min-width: 0;
    align-self: center !important;
  }

  /* logo a sinistra, con altezza contenuta */
  [class*="waan-global-head"] img {
    max-height: 52px;
    width: auto;
    max-width: 100%;
  }

  /* menu a destra */
  [class*="waan-global-head"] .elementor-widget-nav-menu,
  [class*="waan-global-head"] .elementor-widget-n-menu {
    flex: 0 0 auto !important;
    width: auto !important;
    margin-left: auto !important;
  }

  /* hamburger ben visibile, con area di tocco comoda */
  [class*="waan-global-head"] .elementor-menu-toggle,
  [class*="waan-global-head"] .e-n-menu-toggle {
    min-width: 44px;
    min-height: 44px;
    display: flex !important;
    align-items: center;
    justify-content: center;
    margin: 0 !important;
    color: #ffffff !important;
  }
  [class*="waan-global-head"] .elementor-menu-toggle svg,
  [class*="waan-global-head"] .elementor-menu-toggle i,
  [class*="waan-global-head"] .e-n-menu-toggle svg,
  [class*="waan-global-head"] .e-n-menu-toggle i {
    color: #ffffff !important;
    fill: #ffffff !important;
    width: 24px;
    height: 24px;
  }
}/* Correzione globale per la resa dei testi RTL / Arabo su mobile */
@media (max-width: 767px) {
  /* Assicura la corretta direzione da destra a sinistra e allineamento */
  .elementor-widget-text-editor,
  .elementor-widget-heading {
    direction: rtl !important;
    text-align: right !important;
  }

  /* Impedisce alle colonne di Elementor di restringersi eccessivamente e interrompere le parole */
  .elementor-column {
    width: 100% !important;
  }

  /* Evita che le parole lunghe vengano spezzate lettera per lettera */
  .elementor-widget-text-editor *,
  .elementor-widget-heading * {
    word-break: normal !important;
    overflow-wrap: break-word !important;
    hyphens: manual !important;
  }
}
}/* End custom CSS */