/* WEEVO - la hero "fabbrica".
 *
 * Tutto sta sotto .weevo-fabbrica: niente di qui tocca il resto del sito.
 *
 * La scena: una camera (.wf-camera) che lo script sposta e ingrandisce, e
 * dentro un palco con le proporzioni della pianta (1672 x 941) che copre lo
 * schermo come una fotografia. Dentro il palco tutto e' in percentuale della
 * pianta: pallini, flussi e figure restano sul loro punto a ogni misura.
 *
 * Due stati, in data-ia sulla sezione: "spenta" (luce bassa, solo persone) e
 * "accesa" (luce piena, flussi dei dati, robot).
 *
 * Senza script (niente .wf-pronta) la pianta resta ferma e le schede dei
 * reparti stanno sotto, una dopo l'altra.
 */

.weevo-fabbrica{
  --wf-inchiostro:#0A1017;
  --wf-blu:#0072CE;
  --wf-azzurro:#5AB8FF;
  --wf-tenue:#AAB4BF;
  --wf-vetro:rgba(9,14,21,.78);
  --wf-bordo:rgba(255,255,255,.14);
  --wf-palco-l:max(100vw,177.68vh);
  --wf-palco-a:max(56.28vw,100vh);
  position:relative;height:100vh;height:100svh;min-height:600px;overflow:hidden;isolation:isolate;
  background:var(--wf-inchiostro);color:#FFFFFF;
  font-family:var(--f-corpo,"IBM Plex Sans","Segoe UI",Roboto,Arial,sans-serif);
}
@supports (width:1cqw){
  .weevo-fabbrica{container-type:size}
  .weevo-fabbrica .wf-palco{--wf-palco-l:max(100cqw,177.68cqh);--wf-palco-a:max(56.28cqw,100cqh)}
}
.weevo-fabbrica *,.weevo-fabbrica *::before,.weevo-fabbrica *::after{box-sizing:border-box}
.weevo-fabbrica img{max-width:none;display:block}
.weevo-fabbrica button{font:inherit;color:inherit;cursor:pointer}

/* ---- La scena ---------------------------------------------------------- */

.weevo-fabbrica .wf-scena{position:absolute;inset:0;overflow:hidden}
.weevo-fabbrica .wf-camera{position:absolute;inset:0;transform-origin:0 0;will-change:transform}
.weevo-fabbrica .wf-palco{position:absolute;left:50%;top:50%;width:var(--wf-palco-l);height:var(--wf-palco-a);
  margin-left:calc(var(--wf-palco-l) / -2);margin-top:calc(var(--wf-palco-a) / -2)}
.weevo-fabbrica .wf-mappa{position:absolute;inset:0;width:100%;height:100%;
  filter:brightness(.5) saturate(.45) contrast(1.05);transition:filter 1.6s ease}
.weevo-fabbrica[data-ia="accesa"] .wf-mappa{filter:brightness(.92) saturate(1) contrast(1.04)}

/* La luce dell'IA: un alone blu attorno al cuore dei dati. */
.weevo-fabbrica .wf-luce{position:absolute;inset:0;pointer-events:none;opacity:0;transition:opacity 1.8s ease;mix-blend-mode:screen;
  background:radial-gradient(ellipse 42% 46% at 54.1% 27.8%,rgba(0,114,206,.42),rgba(0,114,206,.12) 55%,transparent 75%)}
.weevo-fabbrica[data-ia="accesa"] .wf-luce{opacity:1}

/* I flussi dei dati: archi dai reparti al cuore. */
/* Gli strati: la folla, sopra i flussi nell'aria, sopra ancora l'onda e i pallini. */
.weevo-fabbrica .wf-flussi{position:absolute;inset:0;z-index:2;width:100%;height:100%;overflow:visible;pointer-events:none;
  opacity:0;transition:opacity 1s ease;filter:drop-shadow(0 0 4px rgba(90,184,255,.9))}
.weevo-fabbrica[data-ia="accesa"] .wf-flussi{opacity:1}
.weevo-fabbrica .wf-arco{fill:none;stroke:var(--wf-azzurro);stroke-width:1.6;stroke-linecap:round;opacity:.55;transition:opacity .5s ease,stroke-width .5s ease}
.weevo-fabbrica .wf-arco--scia{stroke-width:.8;stroke-dasharray:2 7;opacity:.9}
.weevo-fabbrica .wf-goccia{fill:#DDF0FF}
.weevo-fabbrica.wf-a-fuoco .wf-arco{opacity:.12}
.weevo-fabbrica.wf-a-fuoco .wf-goccia{opacity:.25}
.weevo-fabbrica.wf-a-fuoco .wf-arco.wf-attivo{opacity:1;stroke-width:2.6}
.weevo-fabbrica.wf-a-fuoco .wf-goccia.wf-attivo{opacity:1}

/* Le figure: le muove lo script, qui solo l'appoggio a terra. */
.weevo-fabbrica .wf-folla{position:absolute;inset:0;z-index:1;pointer-events:none}
.weevo-fabbrica .wf-figura{position:absolute;left:0;top:0;height:auto;will-change:transform,opacity;
  filter:drop-shadow(3px 5px 3px rgba(0,0,0,.45)) brightness(.8);transition:filter 1.6s ease}
.weevo-fabbrica[data-ia="accesa"] .wf-figura{filter:drop-shadow(3px 5px 3px rgba(0,0,0,.45))}
.weevo-fabbrica[data-ia="accesa"] .wf-figura--robot{filter:drop-shadow(0 0 5px rgba(90,184,255,.75)) drop-shadow(3px 5px 3px rgba(0,0,0,.45))}

/* L'onda che parte dal cuore quando l'IA si accende. */
.weevo-fabbrica .wf-onda{position:absolute;left:54.13%;top:27.84%;width:6%;aspect-ratio:1;margin:-3% 0 0 -3%;border-radius:50%;
  border:2px solid var(--wf-azzurro);box-shadow:0 0 40px rgba(90,184,255,.6),inset 0 0 40px rgba(90,184,255,.4);
  z-index:3;opacity:0;pointer-events:none;transform:scale(0)}

/* ---- I pallini dei reparti ---------------------------------------------- */

.weevo-fabbrica .wf-punti{position:absolute;inset:0;z-index:4;pointer-events:none}
.weevo-fabbrica .wf-punto{position:absolute;display:flex;align-items:center;gap:8px;padding:0;margin:0;border:0;background:none;
  transform:translate(-9px,-50%);pointer-events:auto;z-index:1;-webkit-tap-highlight-color:transparent}
.weevo-fabbrica .wf-punto-segno{position:relative;flex:none;width:18px;height:18px;border-radius:50%;background:#FFFFFF;
  box-shadow:0 0 0 4px rgba(255,255,255,.25),0 2px 8px rgba(0,0,0,.5);transition:background .4s ease,box-shadow .4s ease,transform .3s ease}
.weevo-fabbrica .wf-punto-segno::after{content:"";position:absolute;inset:-4px;border-radius:50%;border:2px solid #FFFFFF;opacity:0;animation:wf-battito 2.4s ease-out infinite}
.weevo-fabbrica[data-ia="accesa"] .wf-punto-segno{background:var(--wf-azzurro);box-shadow:0 0 0 4px rgba(90,184,255,.3),0 0 18px rgba(90,184,255,.8)}
.weevo-fabbrica[data-ia="accesa"] .wf-punto-segno::after{border-color:var(--wf-azzurro)}
.weevo-fabbrica .wf-punto-nome{padding:6px 11px;border-radius:999px;background:var(--wf-vetro);border:1px solid var(--wf-bordo);
  -webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);
  font:600 12px/1 var(--f-corpo,"IBM Plex Sans",sans-serif);letter-spacing:.02em;white-space:nowrap;
  transition:background .3s ease,border-color .3s ease,opacity .3s ease}
.weevo-fabbrica .wf-punto:hover .wf-punto-segno,.weevo-fabbrica .wf-punto:focus-visible .wf-punto-segno{transform:scale(1.25)}
.weevo-fabbrica .wf-punto:hover .wf-punto-nome,.weevo-fabbrica .wf-punto:focus-visible .wf-punto-nome,
.weevo-fabbrica .wf-punto[aria-expanded="true"] .wf-punto-nome{background:var(--wf-blu);border-color:var(--wf-blu)}
.weevo-fabbrica .wf-punto:focus-visible{outline:none}
.weevo-fabbrica .wf-punto:focus-visible .wf-punto-nome{box-shadow:0 0 0 2px #FFFFFF}
.weevo-fabbrica.wf-a-fuoco .wf-punto:not([aria-expanded="true"]){opacity:.55}
/* In primo piano i nomi degli altri reparti sarebbero grandi e sfocati: resta il pallino. */
.weevo-fabbrica.wf-a-fuoco .wf-punto:not([aria-expanded="true"]) .wf-punto-nome{opacity:0}
.weevo-fabbrica .wf-punto{transition:opacity .4s ease}

/* Il cuore dei dati: un globo, piu' grande degli altri. */
.weevo-fabbrica .wf-punto--cuore{transform:translate(-21px,-50%)}
.weevo-fabbrica .wf-punto--cuore .wf-punto-segno{width:42px;height:42px;
  background:radial-gradient(circle at 35% 30%,#FFFFFF 0,#9FD6FF 22%,var(--wf-blu) 62%,#003A6B 100%);
  box-shadow:0 0 0 6px rgba(0,114,206,.25),0 0 30px rgba(0,114,206,.55)}
.weevo-fabbrica[data-ia="accesa"] .wf-punto--cuore .wf-punto-segno{
  background:radial-gradient(circle at 35% 30%,#FFFFFF 0,#BFE4FF 22%,#1E8FE8 62%,#004C8C 100%);
  box-shadow:0 0 0 7px rgba(90,184,255,.28),0 0 60px rgba(90,184,255,.95)}
.weevo-fabbrica .wf-punto--cuore .wf-punto-segno::before{content:"";position:absolute;inset:-12px;border-radius:50%;border:1px dashed rgba(159,214,255,.7);animation:wf-giro 14s linear infinite}
.weevo-fabbrica .wf-punto--cuore .wf-punto-nome{font-size:13px;padding:8px 13px}

/* Vicino al bordo destro il nome va a sinistra del pallino. */
.weevo-fabbrica .wf-punto--sinistra{flex-direction:row-reverse;transform:translate(calc(-100% + 9px),-50%)}
/* Sotto il titolo resta il pallino: il nome coprirebbe il testo. */
.weevo-fabbrica .wf-punto.wf-sotto-testi .wf-punto-nome{opacity:0}
.weevo-fabbrica.wf-a-fuoco .wf-punto.wf-sotto-testi[aria-expanded="true"] .wf-punto-nome,.weevo-fabbrica .wf-punto.wf-sotto-testi:hover .wf-punto-nome,.weevo-fabbrica .wf-punto.wf-sotto-testi:focus-visible .wf-punto-nome{opacity:1}

@keyframes wf-battito{0%{transform:scale(.8);opacity:.9}100%{transform:scale(2.4);opacity:0}}
@keyframes wf-giro{to{transform:rotate(360deg)}}

/* ---- I testi ------------------------------------------------------------ */

/* Il velo scurisce a sinistra, sotto i testi, e in fondo, sotto l'elenco. */
.weevo-fabbrica .wf-velo{position:absolute;inset:0;pointer-events:none;transition:opacity .8s ease;
  background:
    linear-gradient(90deg,rgba(8,12,18,.92) 0,rgba(8,12,18,.7) 26%,rgba(8,12,18,0) 52%),
    linear-gradient(0deg,rgba(8,12,18,.85) 0,rgba(8,12,18,0) 22%),
    linear-gradient(180deg,rgba(8,12,18,.6) 0,rgba(8,12,18,0) 16%)}
.weevo-fabbrica.wf-a-fuoco .wf-velo{opacity:.35}

.weevo-fabbrica .wf-testi{position:absolute;left:var(--gutter,clamp(16px,4vw,48px));top:clamp(96px,17vh,180px);width:min(560px,calc(100% - 2 * var(--gutter,24px)));
  z-index:3;pointer-events:none;transition:opacity .6s ease,transform .6s ease}
.weevo-fabbrica.wf-a-fuoco .wf-testi{opacity:0;transform:translateX(-24px)}
.weevo-fabbrica .wf-etichetta{margin:0 0 22px;font:500 12px/1.4 var(--f-mono,"IBM Plex Mono",monospace);letter-spacing:.14em;text-transform:uppercase;color:var(--wf-azzurro)}
.weevo-fabbrica .wf-titolo{margin:0;font-family:var(--f-display,"Archivo","Arial Narrow",sans-serif);font-weight:800;font-variation-settings:"wdth" 78;
  font-size:clamp(42px,6.2vw,96px);line-height:.93;letter-spacing:-.02em;color:#FFFFFF;text-wrap:balance}
.weevo-fabbrica .wf-riga{display:block;overflow:hidden;padding-bottom:.06em;margin-bottom:-.06em}
.weevo-fabbrica .wf-riga > span{display:inline-block}
.weevo-fabbrica .wf-riga + .wf-riga > span{color:var(--wf-azzurro)}
.weevo-fabbrica .wf-sotto{margin:26px 0 0;max-width:440px;font-size:17px;line-height:1.55;color:#D2DAE2}
.weevo-fabbrica .wf-comandi{display:flex;flex-wrap:wrap;align-items:center;gap:14px 24px;margin-top:30px;pointer-events:auto}

.weevo-fabbrica .wf-interruttore{display:inline-flex;align-items:center;gap:12px;padding:8px 16px 8px 8px;border-radius:999px;
  background:var(--wf-vetro);border:1px solid var(--wf-bordo);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);font-weight:600;font-size:14px}
.weevo-fabbrica .wf-interruttore-binario{position:relative;width:46px;height:26px;border-radius:999px;background:#3A4048;transition:background .4s ease}
.weevo-fabbrica .wf-interruttore-binario > span{position:absolute;left:3px;top:3px;width:20px;height:20px;border-radius:50%;background:#FFFFFF;transition:transform .4s cubic-bezier(.5,1.6,.4,1)}
.weevo-fabbrica .wf-interruttore[aria-checked="true"] .wf-interruttore-binario{background:var(--wf-blu);box-shadow:0 0 16px rgba(90,184,255,.7)}
.weevo-fabbrica .wf-interruttore[aria-checked="true"] .wf-interruttore-binario > span{transform:translateX(20px)}
.weevo-fabbrica .wf-interruttore:focus-visible{outline:2px solid #FFFFFF;outline-offset:3px}
.weevo-fabbrica .wf-tocca{display:flex;align-items:center;gap:10px;margin:0;font:500 12px/1 var(--f-mono,"IBM Plex Mono",monospace);letter-spacing:.12em;text-transform:uppercase;color:var(--wf-tenue)}
.weevo-fabbrica .wf-tocca > span{width:8px;height:8px;border-radius:50%;background:var(--wf-azzurro);animation:wf-battito-piccolo 1.6s ease-in-out infinite}
@keyframes wf-battito-piccolo{50%{transform:scale(1.6);opacity:.5}}

/* ---- L'elenco dei reparti, in fondo -------------------------------------- */

.weevo-fabbrica .wf-elenco{position:absolute;left:0;right:0;bottom:18px;z-index:3;transition:opacity .5s ease}
.weevo-fabbrica .wf-elenco ul{display:flex;gap:8px;margin:0;padding:4px var(--gutter,24px);list-style:none;overflow-x:auto;scrollbar-width:none;
  -webkit-mask-image:linear-gradient(90deg,transparent 0,#000 var(--gutter,24px),#000 calc(100% - var(--gutter,24px)),transparent 100%);
  mask-image:linear-gradient(90deg,transparent 0,#000 var(--gutter,24px),#000 calc(100% - var(--gutter,24px)),transparent 100%)}
.weevo-fabbrica .wf-elenco ul::-webkit-scrollbar{display:none}
.weevo-fabbrica .wf-elenco li{flex:none}
.weevo-fabbrica .wf-elenco button{padding:9px 14px;border-radius:999px;border:1px solid var(--wf-bordo);background:var(--wf-vetro);
  -webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);font-size:13px;font-weight:500;white-space:nowrap;transition:background .3s ease,border-color .3s ease}
.weevo-fabbrica .wf-elenco button:hover,.weevo-fabbrica .wf-elenco button[aria-expanded="true"]{background:var(--wf-blu);border-color:var(--wf-blu)}
.weevo-fabbrica .wf-elenco button:focus-visible{outline:2px solid #FFFFFF;outline-offset:2px}

/* ---- La scheda del reparto ---------------------------------------------- */

.weevo-fabbrica .wf-schede{position:absolute;top:0;right:0;bottom:0;z-index:4;width:min(440px,100%);overflow-y:auto;overscroll-behavior:contain;
  padding:104px 36px 32px;background:rgba(9,14,21,.9);border-left:1px solid var(--wf-bordo);
  -webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);
  transform:translateX(102%);visibility:hidden;transition:transform .7s cubic-bezier(.7,0,.2,1),visibility 0s linear .7s}
.weevo-fabbrica.wf-a-fuoco .wf-schede{transform:none;visibility:visible;transition:transform .8s cubic-bezier(.7,0,.2,1) .15s,visibility 0s}
.weevo-fabbrica.wf-a-fuoco .wf-elenco{opacity:0;pointer-events:none}

/* L'interruttore nella scheda: lo stesso della pianta, in cima. */
.weevo-fabbrica .wf-interruttore--scheda{margin:0 0 22px;background:rgba(255,255,255,.06)}

.weevo-fabbrica .wf-scheda{display:none}
.weevo-fabbrica .wf-scheda.wf-attiva{display:block;animation:wf-entra .6s cubic-bezier(.2,.7,.2,1) both}
@keyframes wf-entra{from{opacity:0;transform:translateY(14px)}}
.weevo-fabbrica .wf-scheda-numero{margin:0 0 10px;font:500 12px/1 var(--f-mono,"IBM Plex Mono",monospace);letter-spacing:.14em;color:var(--wf-azzurro)}
.weevo-fabbrica .wf-scheda-nome{margin:0 0 26px;font-family:var(--f-display,"Archivo",sans-serif);font-weight:800;font-variation-settings:"wdth" 80;
  font-size:clamp(32px,3.4vw,44px);line-height:.98;letter-spacing:-.015em;outline:none}
.weevo-fabbrica .wf-scheda h3:not(.wf-scheda-nome){margin:0 0 10px;font:500 11px/1 var(--f-mono,"IBM Plex Mono",monospace);letter-spacing:.16em;text-transform:uppercase}
.weevo-fabbrica .wf-scheda-oggi{padding:16px 18px;border-radius:10px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.08)}
.weevo-fabbrica .wf-scheda-oggi h3{color:var(--wf-tenue)}
.weevo-fabbrica .wf-scheda-oggi p{margin:0;font-size:15px;line-height:1.5;color:#C3CBD3}
.weevo-fabbrica .wf-scheda-ia{margin-top:22px}
.weevo-fabbrica .wf-scheda-ia h3{display:flex;align-items:center;gap:8px;color:var(--wf-azzurro)}
.weevo-fabbrica .wf-scheda-ia h3::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--wf-azzurro);box-shadow:0 0 10px var(--wf-azzurro)}
.weevo-fabbrica .wf-scheda-ia ul{margin:0;padding:0;list-style:none}
.weevo-fabbrica .wf-scheda-ia li{position:relative;padding:11px 0 11px 26px;border-bottom:1px solid rgba(255,255,255,.08);font-size:15.5px;line-height:1.45}
.weevo-fabbrica .wf-scheda-ia li::before{content:"";position:absolute;left:2px;top:17px;width:11px;height:6px;border-left:2px solid var(--wf-azzurro);border-bottom:2px solid var(--wf-azzurro);transform:rotate(-45deg)}
.weevo-fabbrica .wf-scheda.wf-attiva li{animation:wf-entra .5s cubic-bezier(.2,.7,.2,1) both}
.weevo-fabbrica .wf-scheda.wf-attiva li:nth-child(1){animation-delay:.18s}
.weevo-fabbrica .wf-scheda.wf-attiva li:nth-child(2){animation-delay:.28s}
.weevo-fabbrica .wf-scheda.wf-attiva li:nth-child(3){animation-delay:.38s}
.weevo-fabbrica .wf-scheda-risultato{margin:24px 0 0;padding-left:16px;border-left:3px solid var(--wf-blu);font-size:18px;line-height:1.45;font-weight:500}

/* Spenta la scheda dice quanto costa oggi il reparto; accesa, cosa cambia. */
.weevo-fabbrica.wf-pronta[data-ia="spenta"] .wf-solo-accesa,
.weevo-fabbrica.wf-pronta[data-ia="accesa"] .wf-solo-spenta{display:none}
.weevo-fabbrica.wf-pronta .wf-scheda.wf-attiva .wf-solo-spenta,
.weevo-fabbrica.wf-pronta .wf-scheda.wf-attiva .wf-solo-accesa{animation:wf-entra .55s cubic-bezier(.2,.7,.2,1) both}

.weevo-fabbrica .wf-scheda-spreco{margin-top:22px;padding:18px 18px 20px;border-radius:10px;
  background:linear-gradient(160deg,rgba(255,107,87,.14),rgba(255,107,87,.04));border:1px solid rgba(255,107,87,.3)}
.weevo-fabbrica .wf-scheda-spreco h3,.weevo-fabbrica .wf-scheda-spreco h4{color:#FF9C8C}
.weevo-fabbrica .wf-spreco-cifra{margin:4px 0 10px;font-family:var(--f-display,"Archivo",sans-serif);font-weight:800;font-variation-settings:"wdth" 80;
  font-size:clamp(38px,3.6vw,52px);line-height:.95;letter-spacing:-.015em;color:#FF6B57}
.weevo-fabbrica .wf-spreco-cifra span{display:block;margin-top:6px;font:600 15px/1.3 var(--f-corpo,"IBM Plex Sans",sans-serif);letter-spacing:0;color:#FFD2CB}
.weevo-fabbrica .wf-spreco-testo{margin:0;font-size:15px;line-height:1.5;color:#E3E8ED}
.weevo-fabbrica .wf-spreco-stima{margin:12px 0 0;font:500 11px/1.4 var(--f-mono,"IBM Plex Mono",monospace);letter-spacing:.04em;color:var(--wf-tenue)}

/* Industria 4.0: robot e sensori non li vendiamo, li colleghiamo. */
.weevo-fabbrica .wf-scheda-industria{margin:18px 0 0;padding:12px 14px;border-radius:10px;border:1px solid rgba(255,255,255,.12);
  background:rgba(255,255,255,.04);font-size:14px;line-height:1.5;color:#C3CBD3}
.weevo-fabbrica .wf-scheda-industria strong{display:block;margin-bottom:4px;font:500 11px/1 var(--f-mono,"IBM Plex Mono",monospace);letter-spacing:.16em;text-transform:uppercase;color:var(--wf-azzurro)}
.weevo-fabbrica .wf-scheda-app{margin-top:24px}
.weevo-fabbrica .wf-scheda-app h3,.weevo-fabbrica .wf-scheda-app h4{margin:0 0 10px;color:var(--wf-azzurro)}
.weevo-fabbrica .wf-scheda-app ul{display:grid;gap:8px;margin:0;padding:0;list-style:none}
.weevo-fabbrica .wf-scheda-app li{padding:12px 14px;border-radius:10px;background:rgba(0,114,206,.14);border:1px solid rgba(90,184,255,.25);font-size:14.5px;line-height:1.45;color:#D2DAE2}
.weevo-fabbrica .wf-scheda-app strong{display:block;margin-bottom:3px;font-family:var(--f-display,"Archivo",sans-serif);font-weight:800;font-variation-settings:"wdth" 86;
  font-size:19px;line-height:1;letter-spacing:.01em;text-transform:uppercase;color:#FFFFFF}
.weevo-fabbrica .wf-scheda-app > p{margin:0;padding:12px 14px;border-radius:10px;border:1px dashed rgba(90,184,255,.4);font-size:14.5px;line-height:1.45;color:#D2DAE2}
.weevo-fabbrica .wf-scheda.wf-attiva .wf-scheda-app li{animation:wf-entra .5s cubic-bezier(.2,.7,.2,1) both}
.weevo-fabbrica .wf-scheda.wf-attiva .wf-scheda-app li:nth-child(1){animation-delay:.45s}
.weevo-fabbrica .wf-scheda.wf-attiva .wf-scheda-app li:nth-child(2){animation-delay:.55s}
.weevo-fabbrica .wf-scheda.wf-attiva .wf-scheda-app li:nth-child(3){animation-delay:.65s}
.weevo-fabbrica .wf-scheda.wf-attiva .wf-scheda-app li:nth-child(4){animation-delay:.75s}
/* I titoletti della scheda, anche quando da sezione sono h4. */
.weevo-fabbrica .wf-scheda h4{margin:0 0 10px;font:500 11px/1 var(--f-mono,"IBM Plex Mono",monospace);letter-spacing:.16em;text-transform:uppercase}
.weevo-fabbrica .wf-scheda-oggi h4{color:var(--wf-tenue)}
.weevo-fabbrica .wf-scheda-ia h4{display:flex;align-items:center;gap:8px;color:var(--wf-azzurro)}
.weevo-fabbrica .wf-scheda-ia h4::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--wf-azzurro);box-shadow:0 0 10px var(--wf-azzurro)}

.weevo-fabbrica .wf-schede-piede{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:32px}
.weevo-fabbrica .wf-cta{display:inline-flex;gap:8px;padding:13px 22px;border-radius:999px;background:var(--wf-blu);color:#FFFFFF;text-decoration:none;font-weight:600;font-size:15px;transition:background .3s ease}
.weevo-fabbrica .wf-cta:hover{background:#0A84E8}
.weevo-fabbrica .wf-giro{display:flex;gap:8px}
.weevo-fabbrica .wf-giro button,.weevo-fabbrica .wf-chiudi{width:44px;height:44px;padding:0;border-radius:50%;border:1px solid var(--wf-bordo);background:rgba(255,255,255,.04);font-size:18px;line-height:1;transition:background .3s ease}
.weevo-fabbrica .wf-giro button:hover,.weevo-fabbrica .wf-chiudi:hover{background:rgba(255,255,255,.14)}
.weevo-fabbrica .wf-chiudi{position:absolute;top:92px;right:24px;font-size:24px}
.weevo-fabbrica .wf-schede :focus-visible{outline:2px solid #FFFFFF;outline-offset:2px}
/* Il nome prende il fuoco solo per chi legge con lo screen reader: niente bordo. */
.weevo-fabbrica .wf-schede .wf-scheda-nome:focus-visible{outline:none}
/* Da sezione, con la scheda aperta, l'indice della pagina a destra si toglie. */
html.wf-scheda-aperta body.quattro .indice{opacity:0;pointer-events:none;transition:opacity .4s ease}

/* ---- Telefono ------------------------------------------------------------- */

@media (max-width:760px){
  .weevo-fabbrica .wf-punto-nome{display:none}
  .weevo-fabbrica .wf-punto--cuore .wf-punto-nome{display:block}
  .weevo-fabbrica .wf-punto::before{content:"";position:absolute;inset:-12px}
  .weevo-fabbrica .wf-testi{top:auto;bottom:86px}
  .weevo-fabbrica .wf-titolo{font-size:clamp(38px,11vw,56px)}
  .weevo-fabbrica .wf-sotto{font-size:15px;margin-top:16px}
  .weevo-fabbrica .wf-comandi{margin-top:18px}
  .weevo-fabbrica .wf-velo{background:
    linear-gradient(0deg,rgba(8,12,18,.95) 0,rgba(8,12,18,.8) 42%,rgba(8,12,18,0) 70%),
    linear-gradient(180deg,rgba(8,12,18,.6) 0,rgba(8,12,18,0) 16%)}
  .weevo-fabbrica .wf-schede{top:auto;left:0;width:100%;height:64%;padding:26px 20px 24px;border-left:0;border-top:1px solid var(--wf-bordo);border-radius:18px 18px 0 0;transform:translateY(102%)}
  .weevo-fabbrica .wf-chiudi{top:14px;right:14px}
  .weevo-fabbrica .wf-scheda-nome{font-size:30px;margin-bottom:18px;padding-right:48px}
}

/* ---- Senza script ---------------------------------------------------------- */

.weevo-fabbrica:not(.wf-pronta){height:auto;min-height:0;overflow:visible}
.weevo-fabbrica:not(.wf-pronta) .wf-scena{position:relative;height:100vh;height:100svh;min-height:600px}
.weevo-fabbrica:not(.wf-pronta) .wf-mappa{filter:brightness(.8)}
.weevo-fabbrica:not(.wf-pronta) .wf-elenco,
.weevo-fabbrica:not(.wf-pronta) .wf-comandi,
.weevo-fabbrica:not(.wf-pronta) .wf-giro,
.weevo-fabbrica:not(.wf-pronta) .wf-chiudi{display:none}
.weevo-fabbrica:not(.wf-pronta) .wf-schede{position:static;width:auto;transform:none;visibility:visible;border:0;overflow:visible;
  display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:40px;padding:64px var(--gutter,24px)}
.weevo-fabbrica:not(.wf-pronta) .wf-scheda{display:block}
.weevo-fabbrica:not(.wf-pronta) .wf-interruttore--scheda{display:none}

/* ---- Da sezione, dentro la pagina ----------------------------------------- */

/* La sezione di Elementor che la contiene non ha margini: la fabbrica va da
   bordo a bordo. Nell'editor il posto resta vuoto, e si vede dov'e'. */
body.quattro .ia-reparti{padding:0 !important;gap:0 !important}
body.quattro .fabbrica-posto{width:100%}
body.quattro .fabbrica-posto:empty{display:grid;place-items:center;min-height:320px;background:#0A1017;color:#5AB8FF;
  font:500 13px/1.4 var(--f-mono,"IBM Plex Mono",monospace);letter-spacing:.12em;text-transform:uppercase}
body.quattro .fabbrica-posto:empty::before{content:"Qui va la fabbrica: l’IA nei reparti"}

@media (prefers-reduced-motion:reduce){
  .weevo-fabbrica .wf-punto-segno::after,.weevo-fabbrica .wf-punto--cuore .wf-punto-segno::before,.weevo-fabbrica .wf-tocca > span{animation:none}
  .weevo-fabbrica .wf-scheda.wf-attiva,.weevo-fabbrica .wf-scheda.wf-attiva li{animation:none}
}
