Porta il tuo
BUSINESS
nel digitale
Accompagniamo le imprese verso una presenza digitale solida e professionale
giklik.digital
Sappiamo quanto per una piccola o media impresa sia importante farsi notare online senza complicazioni.

Per questo abbiamo riunito in un’unica agenzia chi si occupa di siti web, video e assistenza informatica:

un partner unico, pronto ad aiutarti a crescere con soluzioni pratiche e su misura.
Richiedi una consulenza gratuita
La tua presenza online, il tuo biglietto da visita digitale

Siti web

Oggi un sito web non è un lusso, è una necessità.
È il primo posto in cui i tuoi clienti ti cercano, lo spazio dove puoi raccontare la tua azienda e far crescere il tuo business.
Visita la pagina dedicata
Porta la tua comunicazione al livello successivo
Vuoi dare più forza alla tua immagine aziendale?
I video sono lo strumento ideale per farti notare, coinvolgere il pubblico e distinguerti dalla concorrenza.
Visita la pagina dedicata

Video

La tecnologia al tuo servizio

Assistenza informatica

Che tu abbia bisogno di prevenire problemi, risolvere guasti o ottimizzare i sistemi aziendali, siamo al tuo fianco con soluzioni rapide e professionali.
Visita la pagina dedicata
Parliamo del tuo prossimo progetto

Google reCaptcha: Chiave del sito non valida.

oppure visita la pagina Contatti
<script src="https://unpkg.com/@rive-app/canvas-lite" defer></script>
<script>
  
const hero = document.getElementById('hero-container');
const mask = document.getElementById('hero-mask');
const arrowDiv = document.getElementById('arrow-click');
const headerLogo = document.querySelectorAll('#brxe-fpcrch :not([fill="none"])');
const headerNav = document.getElementById('header-nav');
      
let mouseClicked = false;

window.addEventListener('mousemove', e => {
  if (mouseClicked) return;
  
  const xPercent = (e.clientX / window.innerWidth) * 100 + '%';
  const yPercent = (e.clientY / window.innerHeight) * 100 + '%';
  mask.style.setProperty('--mx', xPercent);
  mask.style.setProperty('--my', yPercent);
});

window.addEventListener('DOMContentLoaded', e => {
  if (mouseClicked) return;
  
  setTimeout(() => {
    mask.style.setProperty('--msize', '50px');
  }, 500);
});

setTimeout(() => {  
  let loopCount = 0;
  const maxLoops = 3;

  const r = new rive.Rive({
    src: "/wp-content/uploads/2025/09/arrow_click.riv",
    canvas: arrowDiv,
    autoplay: true,
    animations: "Arrow",
    onLoad: () => {
      r.resizeDrawingSurfaceToCanvas();
    },
    onLoop: () => {
      loopCount++;
      if (loopCount == maxLoops || mouseClicked) {
        r.cleanup();
        arrowDiv.remove();
      }
    }
  });  
}, 1000);

hero.addEventListener('click', e => {
  if (mouseClicked) return;

  mask.style.setProperty('--msize', '200vw');
  headerNav.style.color = '#fff';
  headerNav.style.setProperty('--aftercolor', '#fff');
  headerLogo.forEach(el => {
    el.style.fill = '#fff';
  });

  mouseClicked = true;
});
  </script>
const hero = document.getElementById('hero-container');
const mask = document.getElementById('hero-mask');
const arrowDiv = document.getElementById('arrow-click');
const headerLogo = document.querySelectorAll('#brxe-fpcrch :not([fill="none"])');
const headerNav = document.getElementById('header-nav');
      
let mouseClicked = false;

window.addEventListener('mousemove', e => {
  if (mouseClicked) return;
  
  const xPercent = (e.clientX / window.innerWidth) * 100 + '%';
  const yPercent = (e.clientY / window.innerHeight) * 100 + '%';
  mask.style.setProperty('--mx', xPercent);
  mask.style.setProperty('--my', yPercent);
});

window.addEventListener('DOMContentLoaded', e => {
  if (mouseClicked) return;
  
  setTimeout(() => {
    mask.style.setProperty('--msize', '50px');
  }, 500);
});

setTimeout(() => {  
  let loopCount = 0;
  const maxLoops = 3;

  const r = new rive.Rive({
    src: "/wp-content/uploads/2025/09/arrow_click.riv",
    canvas: arrowDiv,
    autoplay: true,
    animations: "Arrow",
    onLoad: () => {
      r.resizeDrawingSurfaceToCanvas();
    },
    onLoop: () => {
      loopCount++;
      if (loopCount == maxLoops || mouseClicked) {
        r.cleanup();
        arrowDiv.remove();
      }
    }
  });  
}, 1000);

hero.addEventListener('click', e => {
  if (mouseClicked) return;

  mask.style.setProperty('--msize', '200vw');
  headerNav.style.color = '#fff';
  headerNav.style.setProperty('--aftercolor', '#fff');
  headerLogo.forEach(el => {
    el.style.fill = '#fff';
  });

  mouseClicked = true;
});