.elementor-kit-345{--e-global-color-primary:#E03020;--e-global-color-secondary:#F09050;--e-global-color-text:#F6F3F0;--e-global-color-accent:#EE6A35;--e-global-color-8eae21f:#00D0D3;--e-global-color-45acdca:#E6E7EB;--e-global-color-deededa:#9CA3AF;--e-global-color-1ba7704:#12181B;--e-global-color-tmbg:#0B0A0A;--e-global-color-tmbg2:#121011;--e-global-color-tmsurface:#17171A;--e-global-color-tmmuted:#A9A29C;--e-global-color-tmline:rgba(255,255,255,0.09);--e-global-color-tmdark:#170703;--e-global-typography-primary-font-family:"Space Grotesk";--e-global-typography-primary-font-weight:600;--e-global-typography-secondary-font-family:"Space Grotesk";--e-global-typography-secondary-font-weight:500;--e-global-typography-text-font-family:"Inter";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Inter";--e-global-typography-accent-font-weight:600;background-color:#0B0A0A;}.elementor-kit-345 e-page-transition{background-color:#FFBC7D;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1200px;}.e-con{--container-max-width:1200px;}.elementor-widget:not(:last-child){--kit-widget-spacing:24px;}.elementor-element{--widgets-spacing:24px 24px;--widgets-spacing-row:24px;--widgets-spacing-column:24px;}{}h1.entry-title{display:var(--page-title-display);}@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;}}:root { --tm-background:#0B0F10; --tm-surface:#12181B; --tm-surface-2:#182126; --tm-text:#E5E7EB; --tm-accent:#00E0D3; --tm-accent-hover:#00BFB3; --tm-title:Space Grotesk; --tm-body:Inter; --tm-label:12px; --tm-text-secondary:#9CA3AF; --tm-paragraph:18px; --tm-paragraph-mobile:16px; }
/* Start custom CSS *//* ============================================================
   TOUCHMEDIA — OBSIDIAN · CSS globale minimo
   Una sola casa: Elementor Site Settings → Custom CSS
   ============================================================ */

/* 1) Header a pillola: sempre fixed, vetro */
.tm-header{
  position:fixed;
  top:18px;
  left:0;
  right:0;
  margin-inline:auto;
  width:min(1200px,calc(100% - 32px));
  z-index:50;
  backdrop-filter:blur(18px);
  -webkit-backdrop-filter:blur(18px);
}

/* 2) Fix Elementor V3: container figli in flex-row → width auto */
.tm-header .e-con{
  width:auto;
}

/* 3) Testo in gradiente brand */
.tm-brand b,
.tm-header .elementor-heading-title b,
.tm-grad{
  background:linear-gradient(115deg,#E03020 0%,#EE6A35 55%,#F09050 100%);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
}
.tm-brand b,
.tm-header .elementor-heading-title b{
  font-weight:700;
}

/* 4) CTA — hover / press / focus coerente su TUTTI i pulsanti.
      Aggancio a .elementor-button (classe SEMPRE presente): non si
      perde mai all'import, a differenza della vecchia .tm-cta.
      .tm-cta resta solo per il glow extra dei primari a gradiente. */
.elementor-button{
  transition:transform .18s ease, box-shadow .18s ease,
             background-color .18s ease, border-color .18s ease, color .18s ease;
}
.elementor-button:hover{ transform:translateY(-2px); }
.elementor-button:active{ transform:translateY(0); }      /* feedback al clic */
.elementor-button:focus-visible{                            /* accessibilità tastiera */
  outline:2px solid #F09050;
  outline-offset:3px;
}
.tm-cta:hover{
  transform:translateY(-2px);
  box-shadow:0 12px 34px rgba(224,48,32,.34);              /* glow brand sui primari */
}

/* 5) Failsafe: contenuti mai nascosti in attesa dell'entrance animation */
.elementor-invisible{
  visibility:visible !important;
}

/* 6) Hero: altezza controllata — no deformazioni su desktop grandi */
.tm-hero{
  min-height:clamp(560px,100vh,880px) !important;
}

/* <br class="tm-br"> = interruzione solo desktop (niente parole orfane su mobile) */
@media (max-width:767px){ br.tm-br{ display:none; } }/* End custom CSS */