.elementor-11579 .elementor-element.elementor-element-035a35b{--display:flex;}.elementor-11579 .elementor-element.elementor-element-035a35b.e-con{--flex-grow:0;--flex-shrink:0;}@media(min-width:768px){.elementor-11579 .elementor-element.elementor-element-035a35b{--width:114.583%;}}/* Start custom CSS for html, class: .elementor-element-bfaa6ea *//* ============================================================
   COLORE DEL PULSANTE INVIA — form 11686 e 11806
   La forma (pillola, padding, font, bordo, bagliore) arriva
   dall'Elementor Kit. Qui si imposta solo la tinta di questa pagina.
   Sta nel CSS della pagina e non del form perche' il campo CSS
   dei due form non e' disponibile.
   ============================================================ */
.metform-form-content {
  --btn-from: #5b6472;
  --btn-to:   #d81b60;
  --btn-text: #ffffff;
  --glow:     149,25,71;
  --glow-a:   .9;
  --glow-b:   1;
}

html { margin: 0; padding: 0; background: #14161a; overflow-x: hidden; overflow-x: clip; }
body { margin: 0; padding: 0; background: #14161a; overflow-x: clip; }
::-webkit-scrollbar { width: 10px; height: 10px; }
::-webkit-scrollbar-track { background: #0a0b0d; }
::-webkit-scrollbar-thumb { background: #3a3f47; border-radius: 6px; }
::-webkit-scrollbar-thumb:hover { background: #4b515b; }
body { font-family: 'Inter', system-ui, sans-serif; -webkit-font-smoothing: antialiased; }
* { box-sizing: border-box; }

[data-bsg-root] { position: relative; overflow-x: clip; width: 100vw; max-width: 100vw; margin: -32px calc(-50vw + 50%) 0; }
[data-bsg-root] a { color: inherit; text-decoration: none; }
[data-bsg-root] h1, [data-bsg-root] h2, [data-bsg-root] h3, [data-bsg-root] p { margin: 0; }
::selection { background: rgba(91,100,114,0.3); }

@keyframes bsgBounceY { 0%,100% { transform: translateY(0); } 50% { transform: translateY(4px); } }
@keyframes bsgRise { from { opacity: 0; transform: translateY(18px) scale(0.97); } to { opacity: 1; transform: none; } }

@media (prefers-reduced-motion: no-preference) {
  [data-bsg-root] [data-reveal] { animation: bsgRise .65s cubic-bezier(.16,1,.3,1) both; }
  [data-grid3] > [data-reveal]:nth-child(1) { animation-delay: 0ms; }
  [data-grid3] > [data-reveal]:nth-child(2) { animation-delay: 80ms; }
  [data-grid3] > [data-reveal]:nth-child(3) { animation-delay: 160ms; }
  [data-grid3] > [data-reveal]:nth-child(4) { animation-delay: 240ms; }
  [data-grid3] > [data-reveal]:nth-child(5) { animation-delay: 320ms; }
  [data-grid3] > [data-reveal]:nth-child(6) { animation-delay: 400ms; }
  [data-grid5] > [data-reveal]:nth-child(1) { animation-delay: 0ms; }
  [data-grid5] > [data-reveal]:nth-child(2) { animation-delay: 60ms; }
  [data-grid5] > [data-reveal]:nth-child(3) { animation-delay: 120ms; }
  [data-grid5] > [data-reveal]:nth-child(4) { animation-delay: 180ms; }
  [data-grid5] > [data-reveal]:nth-child(5) { animation-delay: 240ms; }
  [data-grid4] > [data-reveal]:nth-child(1) { animation-delay: 0ms; }
  [data-grid4] > [data-reveal]:nth-child(2) { animation-delay: 70ms; }
  [data-grid4] > [data-reveal]:nth-child(3) { animation-delay: 140ms; }
  [data-grid4] > [data-reveal]:nth-child(4) { animation-delay: 210ms; }
  [data-grid4] > [data-reveal]:nth-child(5) { animation-delay: 280ms; }
}

a:focus-visible, button:focus-visible, input:focus-visible, textarea:focus-visible, summary:focus-visible { outline: 2px solid #8b93a1; outline-offset: 3px; }

@media (max-width: 900px) {
  [data-bsg-root] [data-hero-grid], [data-bsg-root] [data-split], [data-bsg-root] [data-poc] { grid-template-columns: 1fr !important; gap: 36px !important; }
  [data-bsg-root] [data-split] > div[style*="width:1px"] { display: none !important; }
  [data-bsg-root] [data-grid3], [data-bsg-root] [data-grid4], [data-bsg-root] [data-grid5] { grid-template-columns: repeat(2,1fr) !important; }
  [data-bsg-root] [data-checklist] { grid-template-columns: 1fr !important; }
}

@media (max-width: 600px) {
  [data-bsg-root] [data-grid2], [data-bsg-root] [data-grid3], [data-bsg-root] [data-grid4], [data-bsg-root] [data-grid5] { grid-template-columns: 1fr !important; }
  [data-bsg-root] section { padding-top: 48px !important; padding-bottom: 48px !important; }
  [data-bsg-root] h1, [data-bsg-root] h2 { text-wrap: balance; }
  [data-bsg-root] footer { flex-direction: column; align-items: flex-start !important; gap: 12px !important; }
}

.bsg-btn-primary:hover { box-shadow: 0 30px 70px -14px rgba(149,25,71,1), 0 0 36px -6px rgba(91,100,114,0.8); }
.bsg-close:hover { background: rgba(255,255,255,0.1); color: #fff; }
.bsg-link-cta:hover { transform: translateY(-2px); }
.bsg-input:focus { border-color: rgba(139,147,161,0.6); background: rgba(149,25,71,0.06); outline: none; }

[data-observe] { opacity: 0; transform: translateY(20px); transition: opacity 500ms cubic-bezier(.23,1,.32,1), transform 500ms cubic-bezier(.23,1,.32,1); }
[data-observe].is-in { opacity: 1; transform: translateY(0); }
[data-sfide-grid] [data-observe]:nth-child(1) { transition-delay: 0ms; }
[data-sfide-grid] [data-observe]:nth-child(2) { transition-delay: 60ms; }
[data-sfide-grid] [data-observe]:nth-child(3) { transition-delay: 120ms; }
[data-sfide-grid] [data-observe]:nth-child(4) { transition-delay: 180ms; }
[data-sfide-grid] [data-observe]:nth-child(5) { transition-delay: 240ms; }
[data-sfide-grid] [data-observe]:nth-child(6) { transition-delay: 300ms; }

.sfide-card { transition: transform 240ms cubic-bezier(.23,1,.32,1), border-color 240ms ease, background 240ms ease; }
.sfide-card:hover { transform: translateY(-6px); border-color: rgba(139,147,161,0.45); background: rgba(255,255,255,0.06); }

@media (prefers-reduced-motion: reduce) {
  [data-observe] { transform: none; transition: opacity 400ms ease; }
  .sfide-card:hover { transform: none; }
}

/* ---------- Popup checklist: su schermi bassi evita che finisca sotto il menu fisso in alto ---------- */
@media (max-height: 700px), (max-width: 600px) {
  #bsg-checklist-modal {
    align-items: flex-start !important;
    padding-top: 90px !important;
  }
}

#bsg-checklist-form .g-recaptcha { transform: scale(0.9); transform-origin: 0 0; }
@media (max-width: 480px) {
#bsg-checklist-modal { padding: 12px !important; }
#bsg-checklist-modal > div { padding: 24px 18px 20px !important; border-radius: 14px !important; }
#bsg-checklist-modal h3 { font-size: 18px !important; }
#bsg-checklist-form .g-recaptcha { transform: scale(0.78); }
}
@media (max-width: 360px) {
#bsg-checklist-form .g-recaptcha { transform: scale(0.7); }
}

/* sempre centrato sullo schermo: annulla la vecchia regola nel CSS
    della pagina che su schermi bassi/stretti lo spingeva verso l'alto */
@media (max-height: 700px), (max-width: 600px) {
#bsg-checklist-modal { align-items: center !important; padding-top: 16px !important; }
}
@media (max-width: 480px) {
#bsg-checklist-modal { padding-top: 12px !important; }
}/* End custom CSS */