@import url('stockflow-fonts.css'); /* font self-hosted (no Google Fonts) */

*{box-sizing:border-box;margin:0;padding:0;}
:root{
  --navy:#060e1f;
  --navy2:#0a1628;
  --navy3:#0d1e35;
  --blue:#1e6bff;
  --cyan:#00aaff;
  --green:#00cc66;
  --green2:#00ff88;
  --gold:#c8a96e;
  --gold2:#e8c98e;
  --white:#f8faff;
  --offwhite:#f0f4ff;
  --gray:#8a9abf;
  --lightgray:#c8d4e8;
  --text-light:#d8e4f8;
  --border-dark:rgba(30,107,255,.15);
  --border-light:rgba(30,107,255,.15);
  --text-dark:#0a1222;
  --text-gray:#4a5a7a;
}
html{scroll-behavior:smooth;}
body{font-family:'Syne',sans-serif;overflow-x:hidden;}

/* ── MARQUEE (TOP STRIP) ── */
.marquee-top{
  background:#030810;
  border-bottom:1px solid rgba(0,204,102,.15);
  padding:10px 0;overflow:hidden;
  position:relative;z-index:50;
}
.marquee-track{display:flex;gap:40px;animation:marquee 22s linear infinite;white-space:nowrap;}
.marquee-item{
  display:flex;align-items:center;gap:8px;
  font-family:'DM Mono',monospace;font-size:10px;
  letter-spacing:2.5px;color:var(--green);
  text-transform:uppercase;flex-shrink:0;
}
.marquee-dot{
  width:5px;height:5px;border-radius:50%;
  background:var(--green);flex-shrink:0;
  box-shadow:0 0 6px var(--green);
}
@keyframes marquee{from{transform:translateX(0);}to{transform:translateX(-50%);}}

/* ── NAV ── */
nav{
  position:fixed;top:32px;left:0;right:0;z-index:200;
  padding:0 5vw;height:60px;
  display:flex;align-items:center;justify-content:space-between;
  transition:all .3s;
}
nav.dark{background:rgba(6,14,31,.0);}
nav.dark.scrolled{
  top:0;
  background:rgba(6,14,31,.96);
  border-bottom:1px solid rgba(0,204,102,.1);
  backdrop-filter:blur(20px);
}
nav.light{background:rgba(248,250,255,.0);}
nav.light.scrolled{
  top:0;
  background:rgba(248,250,255,.96);
  border-bottom:1px solid rgba(30,107,255,.1);
  backdrop-filter:blur(20px);
}

/* ── Logo & trademark ── */
.nav-logo {
  font-family: "DM Mono", monospace;
  font-size: 20px;
  font-weight: 700;
  letter-spacing: 2px;
  text-decoration: none;
  display: inline-flex;
  align-items: flex-start;
  gap: 1px;
  line-height: 1;
  white-space: nowrap;
}
.nav-logo.dark-logo { color: var(--text-light); }
.nav-logo.light-logo { color: var(--navy); }
.nav-logo span { color: var(--blue); }

.brand-tm {
  /* <sup class="brand-tm"> — lascia che <sup> gestisca l'elevazione naturalmente */
  font-family: "DM Mono", monospace;
  font-size: 9px;
  font-weight: 400;
  line-height: 1;
  margin-left: 1px;
  vertical-align: super;
  color: rgba(255,255,255,.60);
  letter-spacing: 0;
}
.nav-logo.light-logo .brand-tm { color: rgba(6,14,31,.50); }

.footer-brand {
  display: inline-flex;
  align-items: baseline;
  gap: 0;
  line-height: 1;
  white-space: nowrap;
  text-decoration: none;
  color: rgba(255,255,255,.88);
  margin-bottom: 12px;
  font-family: "DM Mono", monospace;
  font-size: 20px;
  font-weight: 500;
  letter-spacing: 2px;
}
.footer-brand span { color: #3b82f6; }
.footer-brand .brand-tm {
  font-size: 9px;
  font-weight: 400;
  vertical-align: super;
  color: rgba(255,255,255,.50);
  letter-spacing: 0;
  margin-left: 1px;
}

.inline-tm {
  font-family: "DM Mono", monospace;
  font-size: .34em;
  font-weight: 700;
  position: relative;
  top: -.75em;
  margin-left: 2px;
  color: currentColor;
  opacity: .72;
}

/* Remove legacy .tm class */
.tm { display: none; }


.nav-center{display:flex;gap:28px;align-items:center;}

/* ── BASE — transizioni su tutti i link ── */
.nav-center a{
  font-size:13px;font-weight:500;letter-spacing:.3px;
  text-decoration:none;
  position:relative;
  transition:color .25s ease, text-shadow .25s ease;
}

/* ── UNDERLINE animata — comune a dark e light ── */
.nav-center a::after{
  content:'';
  position:absolute;
  bottom:-6px;left:50%;
  width:0;height:1px;
  background:var(--green);
  box-shadow:0 0 8px rgba(0,204,102,.55);
  transform:translateX(-50%);
  transition:width .28s ease;
}

/* ── DARK LINKS (su sfondi scuri: index, features, pricing, about) ── */
.nav-center a.dark-link{
  color:rgba(200,212,240,.68);
}
.nav-center a.dark-link:hover{
  color:var(--green);
  text-shadow:0 0 12px rgba(0,204,102,.40);
}
.nav-center a.dark-link:hover::after{
  width:100%;
}
/* link attivo dark */
.nav-center a.active-dark{
  color:var(--green) !important;
  text-shadow:0 0 10px rgba(0,204,102,.30);
}
.nav-center a.active-dark::after{
  width:100%;
}

/* ── LIGHT LINKS (su sfondi chiari: contact) ── */
.nav-center a.light-link{
  color:var(--text-gray);
}
.nav-center a.light-link:hover{
  color:#009944;
  text-shadow:0 0 10px rgba(0,153,68,.25);
}
.nav-center a.light-link:hover::after{
  background:#009944;
  box-shadow:0 0 8px rgba(0,153,68,.40);
  width:100%;
}
/* link attivo light */
.nav-center a.active-light{
  color:#009944 !important;
  text-shadow:0 0 8px rgba(0,153,68,.20);
}
.nav-center a.active-light::after{
  background:#009944;
  width:100%;
}

.nav-right{display:flex;gap:10px;align-items:center;}
.lang-group{display:flex;gap:2px;}
.lang-btn{background:transparent;border:1px solid rgba(138,154,191,.25);color:rgba(180,196,228,.6);padding:4px 9px;border-radius:3px;cursor:pointer;font-family:'DM Mono',monospace;font-size:10px;letter-spacing:1px;transition:all .2s;}
.lang-btn.active{background:var(--blue);border-color:var(--blue);color:white;}
.nav-cta-btn{background:var(--blue);color:white;padding:8px 20px;border-radius:4px;font-size:12px;font-weight:600;letter-spacing:.5px;text-decoration:none;transition:all .2s;border:1px solid transparent;}
.nav-cta-btn:hover{background:transparent;border-color:var(--blue);color:var(--blue);}
.nav-cta-btn.outline{background:transparent;border:1px solid rgba(255,255,255,.3);color:rgba(220,232,255,.9);}
.nav-cta-btn.outline:hover{background:white;color:var(--navy);}

/* ── LEFT ACCENT LINE ── */
.left-line{
  position:fixed;left:20px;top:0;bottom:0;
  width:1px;background:linear-gradient(180deg,transparent 0%,rgba(0,204,102,.4) 20%,rgba(30,107,255,.4) 50%,rgba(0,204,102,.4) 80%,transparent 100%);
  z-index:10;pointer-events:none;
}

/* ── SECTIONS ── */
.sec-dark{background:var(--navy);color:var(--text-light);}
.sec-light{background:var(--white);color:var(--text-dark);}
.sec-off{background:var(--offwhite);color:var(--text-dark);}
.sec-navy2{background:var(--navy2);color:var(--text-light);}
.sec-grad{background:linear-gradient(135deg,var(--navy) 0%,var(--navy3) 100%);color:var(--text-light);}

.container{max-width:1140px;margin:0 auto;padding:0 5vw;}
.section-pad{padding:96px 0;}
.section-pad-sm{padding:64px 0;}

.sec-label{
  font-family:'DM Mono',monospace;font-size:10px;
  letter-spacing:3px;text-transform:uppercase;margin-bottom:14px;
  display:flex;align-items:center;gap:8px;
}
.sec-label::before{content:'';width:16px;height:1px;flex-shrink:0;}
.sec-label.blue{color:var(--blue);}
.sec-label.blue::before{background:var(--blue);}
.sec-label.gold{color:var(--gold);}
.sec-label.gold::before{background:var(--gold);}
.sec-label.cyan{color:var(--cyan);}
.sec-label.cyan::before{background:var(--cyan);}
.sec-label.green{color:var(--green);}
.sec-label.green::before{background:var(--green);}

.sec-title{font-size:clamp(28px,4vw,52px);font-weight:800;line-height:1.05;letter-spacing:-1px;}
.sec-title-lg{font-size:clamp(36px,5.5vw,72px);font-weight:800;line-height:.98;letter-spacing:-2px;}

/* On dark backgrounds — titles bright white */
.sec-dark .sec-title,
.sec-dark .sec-title-lg,
.sec-navy2 .sec-title,
.sec-navy2 .sec-title-lg,
.sec-grad .sec-title,
.sec-grad .sec-title-lg{color:#ffffff;}

/* On light backgrounds — titles dark navy */
.sec-light .sec-title,
.sec-light .sec-title-lg,
.sec-off .sec-title,
.sec-off .sec-title-lg{color:var(--text-dark);}

.sec-sub{font-family:'DM Mono',monospace;font-size:14px;font-weight:300;line-height:1.7;margin-top:14px;max-width:500px;}
.sec-sub.dark{color:rgba(200,212,240,.75);}
.sec-sub.light{color:var(--text-gray);}

/* ── BUTTONS ── */
.btn{display:inline-flex;align-items:center;gap:8px;text-decoration:none;font-weight:600;font-size:14px;letter-spacing:.3px;padding:13px 28px;border-radius:5px;transition:all .2s;border:1px solid transparent;cursor:pointer;font-family:'Syne',sans-serif;}
.btn-blue{background:var(--blue);color:white;border-color:var(--blue);}
.btn-blue:hover{background:transparent;color:var(--blue);}
.btn-outline-white{background:transparent;color:rgba(220,232,255,.9);border-color:rgba(255,255,255,.3);}
.btn-outline-white:hover{background:white;color:var(--navy);}
.btn-outline-blue{background:transparent;color:var(--blue);border-color:var(--blue);}
.btn-outline-blue:hover{background:var(--blue);color:white;}
.btn-gold{background:var(--gold);color:var(--navy);border-color:var(--gold);}
.btn-gold:hover{background:transparent;color:var(--gold);}
.btn-lg{padding:16px 36px;font-size:15px;}
.btn-sm{padding:9px 20px;font-size:12px;}

/* ── CARDS ── */
.card{border-radius:8px;padding:32px;transition:all .3s;}
.card-dark{background:rgba(255,255,255,.04);border:1px solid rgba(30,107,255,.18);}
.card-dark:hover{background:rgba(30,107,255,.08);border-color:rgba(30,107,255,.35);}
.card-light{background:white;border:1px solid rgba(30,107,255,.1);box-shadow:0 2px 16px rgba(30,107,255,.06);}
.card-light:hover{box-shadow:0 8px 32px rgba(30,107,255,.12);transform:translateY(-2px);}

/* ── TAG ── */
.tag{display:inline-block;font-family:'DM Mono',monospace;font-size:9px;letter-spacing:2px;text-transform:uppercase;padding:4px 12px;border-radius:3px;}
.tag-blue{background:rgba(30,107,255,.15);color:#6aaeff;border:1px solid rgba(30,107,255,.2);}
.tag-gold{background:rgba(200,169,110,.15);color:var(--gold);border:1px solid rgba(200,169,110,.2);}
.tag-green{background:rgba(0,204,102,.12);color:var(--green);border:1px solid rgba(0,204,102,.2);}

/* ── DIVIDERS ── */
.divider-gold{width:48px;height:2px;background:linear-gradient(90deg,var(--gold),var(--gold2));margin:20px 0;}
.divider-blue{width:48px;height:2px;background:linear-gradient(90deg,var(--blue),var(--cyan));margin:20px 0;}
.divider-green{width:48px;height:2px;background:linear-gradient(90deg,var(--green),var(--cyan));margin:20px 0;}

/* ── REVEAL ANIMATIONS ── */
.reveal{opacity:0;transform:translateY(28px);transition:opacity .7s ease,transform .7s ease;}
.reveal.visible{opacity:1;transform:none;}
.reveal-left{opacity:0;transform:translateX(-28px);transition:opacity .7s ease,transform .7s ease;}
.reveal-left.visible{opacity:1;transform:none;}
.reveal-right{opacity:0;transform:translateX(28px);transition:opacity .7s ease,transform .7s ease;}
.reveal-right.visible{opacity:1;transform:none;}



/* ── FOOTER ── */
.footer{background:#030810;border-top:1px solid rgba(0,204,102,.08);padding:56px 0 32px;}
.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:40px;margin-bottom:48px;}
/* .footer-brand merged above — no duplicate */
.footer-tagline{font-family:'DM Mono',monospace;font-size:11px;color:#838fa8;line-height:1.7;max-width:240px;}
.footer-col-title{font-family:'DM Mono',monospace;font-size:9px;letter-spacing:3px;color:#36b06f;text-transform:uppercase;margin-bottom:16px;}
.footer-links{display:flex;flex-direction:column;gap:10px;}
.footer-links a{font-family:'DM Mono',monospace;font-size:12px;color:#909cb6;text-decoration:none;transition:color .2s;letter-spacing:.3px;}
.footer-links a:hover{color:white;}
.footer-bottom{display:flex;justify-content:space-between;align-items:center;padding-top:28px;border-top:1px solid rgba(255,255,255,.04);}
.footer-copy{font-family:'DM Mono',monospace;font-size:11px;color:#7e8aa3;letter-spacing:.5px;}

/* ── NOISE ── */
.noise-overlay{position:fixed;inset:0;pointer-events:none;z-index:999;opacity:.02;
  background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='4'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");}

/* ── GRID UTILS ── */
.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:24px;}
.grid-3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:20px;}

/* ── MOBILE ── */
/* Hamburger button */
.nav-burger{display:none;flex-direction:column;gap:5px;cursor:pointer;padding:8px;background:none;border:none;}
.nav-burger span{display:block;width:22px;height:2px;background:var(--text-light);border-radius:2px;transition:all .3s;}
.nav-mobile-menu{
  display:none;position:fixed;top:0;left:0;right:0;bottom:0;
  background:rgba(6,14,31,.97);z-index:199;
  flex-direction:column;align-items:center;justify-content:center;gap:32px;
}
.nav-mobile-menu.open{display:flex;}
.nav-mobile-menu a{font-size:22px;font-weight:700;color:var(--text-light);text-decoration:none;letter-spacing:1px;}
.nav-mobile-menu .close-btn{position:absolute;top:24px;right:24px;font-size:28px;color:var(--gray);background:none;border:none;cursor:pointer;}
.nav-mobile-menu .lang-group{margin-top:8px;}
.nav-mobile-menu .nav-cta-btn{font-size:16px;padding:14px 36px;}

@media(max-width:900px){
  .nav-center{display:none;}
  .nav-right .nav-cta-btn{display:none;}
  .nav-burger{display:flex;}
}
@media(max-width:768px){
  html,body{overflow-x:clip;max-width:100%;}
  .container{min-width:0;}
  .left-line{display:none;}
  .grid-2,.grid-3{grid-template-columns:1fr;}
  .footer-grid{grid-template-columns:1fr 1fr;}
  .sec-title-lg{font-size:36px;}
  .lang-group{display:none;}
}

/* ════════════════════════════════════════
   ANIMATIONS v2 — Modern interactive layer
   ════════════════════════════════════════ */

/* ── GLASSMORPHISM NAV (enhanced) ── */
nav.dark.scrolled{
  background:rgba(6,14,31,.76);
  backdrop-filter:blur(28px) saturate(200%);
  -webkit-backdrop-filter:blur(28px) saturate(200%);
  box-shadow:0 8px 32px rgba(0,0,0,.28), 0 1px 0 rgba(0,204,102,.1);
}
nav.light.scrolled{
  background:rgba(248,250,255,.80);
  backdrop-filter:blur(28px) saturate(200%);
  -webkit-backdrop-filter:blur(28px) saturate(200%);
  box-shadow:0 8px 32px rgba(30,107,255,.07), 0 1px 0 rgba(30,107,255,.12);
}

/* ── PARTICLE CANVAS (hero) ── */
.hero-particles{
  position:absolute;inset:0;
  width:100%;height:100%;
  pointer-events:none;z-index:0;
}

/* ── SHIMMER BUTTON ── */
.btn-shimmer{position:relative;overflow:hidden;}
.btn-shimmer::after{
  content:'';position:absolute;top:0;left:-100%;
  width:55%;height:100%;
  background:linear-gradient(105deg,transparent 35%,rgba(255,255,255,.22) 50%,transparent 65%);
  animation:sfShimmer 3.6s ease-in-out infinite;
}
@keyframes sfShimmer{
  0%{left:-100%;}
  40%,100%{left:160%;}
}

/* ── PULSE RING (primary CTA) ── */
.btn-pulse{animation:sfPulse 2.8s ease-in-out infinite;}
@keyframes sfPulse{
  0%,100%{box-shadow:0 0 0 0 rgba(30,107,255,.55);}
  50%{box-shadow:0 0 0 12px rgba(30,107,255,0);}
}

/* ── ENHANCED CARD HOVER ── */
.card-dark:hover{
  background:rgba(30,107,255,.07);
  border-color:rgba(30,107,255,.42);
  box-shadow:0 0 0 1px rgba(30,107,255,.22), 0 14px 44px rgba(30,107,255,.15);
  transform:translateY(-5px);
}
.card-light:hover{
  box-shadow:0 0 0 1px rgba(30,107,255,.16), 0 14px 44px rgba(30,107,255,.11);
  transform:translateY(-4px);
}

/* ── SECTOR CARD ENHANCED ── */
.sector-card:hover{
  border-color:rgba(30,107,255,.4);
  transform:translateY(-5px);
  box-shadow:0 14px 36px rgba(30,107,255,.15), 0 0 0 1px rgba(30,107,255,.22);
}

/* ── DEEP SECTOR CARD ENHANCED ── */
.sd-card:hover{
  border-color:rgba(30,107,255,.4);
  background:rgba(30,107,255,.07);
  box-shadow:0 14px 36px rgba(30,107,255,.12);
  transform:translateY(-4px);
}

/* ── PRICING CARD PRO — ANIMATED GLOW ── */
@keyframes sfProGlow{
  0%,100%{box-shadow:0 16px 48px rgba(30,107,255,.28), 0 0 0 1px rgba(30,107,255,.38);}
  33%    {box-shadow:0 16px 48px rgba(0,170,255,.32),  0 0 0 1px rgba(0,170,255,.48);}
  66%    {box-shadow:0 16px 48px rgba(0,204,102,.22),  0 0 0 1px rgba(0,204,102,.38);}
}
.price-card.pro{animation:sfProGlow 4s ease-in-out infinite;}

/* ── FEATURE PROGRESS BAR ── */
.feat-bar-wrap{height:2px;background:rgba(30,107,255,.1);border-radius:2px;margin-top:20px;overflow:hidden;}
.feat-bar{height:100%;width:0;border-radius:2px;background:linear-gradient(90deg,var(--blue),var(--cyan));transition:width 1.3s cubic-bezier(.4,0,.2,1);}

/* ── REVEAL SCALE variant ── */
.reveal-scale{opacity:0;transform:scale(.96);transition:opacity .7s ease,transform .7s ease;}
.reveal-scale.visible{opacity:1;transform:none;}

/* ── TYPEWRITER CURSOR ── */
.tw-cursor{animation:sfBlink 1s step-end infinite;color:var(--green);font-weight:300;margin-left:2px;}
@keyframes sfBlink{0%,100%{opacity:1;}50%{opacity:0;}}

/* ── STAGGER reveal (children animated by JS) ── */
.sf-stagger-child{opacity:0;transform:translateY(22px);transition:opacity .65s ease,transform .65s ease;}
.sf-stagger-child.sf-visible{opacity:1;transform:none;}

/* ── PAGE TRANSITION ── */
@keyframes sfPageIn{from{opacity:0;}to{opacity:1;}}
body{animation:sfPageIn .35s ease;}


/* ════════════════════════════════════════════════════════
   ENTERPRISE ANIMATIONS — Secondary Pages
   Manhattan-style modern enterprise WMS look
════════════════════════════════════════════════════════ */

/* ── HERO GRID BACKGROUND ── */
.hero-enterprise{
  position:relative;overflow:hidden;
}
.hero-enterprise::before{
  content:'';position:absolute;inset:0;
  background-image:
    linear-gradient(rgba(30,107,255,.045) 1px, transparent 1px),
    linear-gradient(90deg, rgba(30,107,255,.045) 1px, transparent 1px);
  background-size:72px 72px;
  animation:gridShift 8s linear infinite;
  pointer-events:none;z-index:0;
}
.hero-enterprise::after{
  content:'';position:absolute;inset:0;
  background:radial-gradient(ellipse 60% 50% at 50% 0%, rgba(30,107,255,.08) 0%, transparent 70%);
  pointer-events:none;z-index:0;
}
@keyframes gridShift{
  0%{background-position:0 0,0 0;}
  100%{background-position:72px 72px,72px 72px;}
}

/* ── SCAN LINE — disabilitato globalmente (causava raya visibile) ── */
.hero-scanline{position:relative;overflow:hidden;}
.hero-scanline .scanline{ display:none !important; }
@keyframes scanDown{
  0%{top:0;opacity:0;}
  5%{opacity:1;}
  95%{opacity:1;}
  100%{top:100%;opacity:0;}
}

/* ── METRICS / KPI STRIP ── */
.metrics-strip{
  display:flex;gap:0;
  border:1px solid rgba(30,107,255,.14);
  border-radius:10px;overflow:hidden;
  margin-top:56px;
  background:linear-gradient(160deg,rgba(8,16,34,.9),rgba(4,10,22,.95));
}
.metric-item{
  flex:1;padding:24px 28px;
  border-right:1px solid rgba(30,107,255,.1);
  text-align:center;transition:background .25s;
  position:relative;
}
.metric-item:last-child{border-right:none;}
.metric-item:hover{background:rgba(30,107,255,.05);}
.metric-item::before{
  content:'';position:absolute;top:0;left:20%;right:20%;height:1px;
  background:linear-gradient(90deg,transparent,rgba(30,107,255,.3),transparent);
}
.metric-val{
  font-family:'DM Mono',monospace;
  font-size:clamp(26px,3.5vw,38px);
  font-weight:500;color:#e4eeff;
  line-height:1;margin-bottom:6px;
  background:linear-gradient(135deg,#e4eeff 0%,#7aadff 100%);
  -webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;
}
.metric-val.green{
  background:linear-gradient(135deg,#00ff88 0%,#00cc66 100%);
  -webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;
}
.metric-label{
  font-family:'DM Mono',monospace;font-size:9px;
  letter-spacing:2.5px;text-transform:uppercase;
  color:rgba(130,160,210,.45);
}

/* ── DATA TICKER (inline badge) ── */
.data-ticker{
  display:inline-flex;align-items:center;gap:8px;
  font-family:'DM Mono',monospace;font-size:10px;
  letter-spacing:1.5px;text-transform:uppercase;
  background:rgba(30,107,255,.08);
  border:1px solid rgba(30,107,255,.18);
  border-radius:4px;padding:5px 11px;
  color:rgba(140,175,230,.7);
  margin-bottom:20px;
}
.data-ticker-dot{
  width:5px;height:5px;border-radius:50%;
  background:var(--green);box-shadow:0 0 6px var(--green);
  animation:tickPulse 1.6s ease-in-out infinite;flex-shrink:0;
}
@keyframes tickPulse{
  0%,100%{opacity:1;transform:scale(1);}
  50%{opacity:.4;transform:scale(.7);}
}

/* ── ENTERPRISE HERO TITLE GLOW ── */
.title-glow{
  text-shadow:0 0 60px rgba(30,107,255,.15),0 0 120px rgba(30,107,255,.08);
}

/* ── FLOATING STAT CHIPS (hero sidebar) ── */
.stat-chip{
  display:inline-flex;align-items:center;gap:10px;
  background:linear-gradient(135deg,rgba(8,16,34,.95),rgba(4,10,22,.98));
  border:1px solid rgba(30,107,255,.2);
  border-radius:8px;padding:10px 16px;
  box-shadow:0 8px 32px rgba(0,0,0,.3),0 0 0 1px rgba(30,107,255,.05);
  backdrop-filter:blur(16px);
}
.stat-chip-val{
  font-family:'DM Mono',monospace;font-size:16px;font-weight:500;
  color:#e4eeff;line-height:1;
}
.stat-chip-label{
  font-family:'DM Mono',monospace;font-size:9px;
  letter-spacing:1.5px;text-transform:uppercase;
  color:rgba(120,155,210,.5);
}

/* ── COUNTER ANIMATION ── */
.count-up{
  display:inline-block;
  transition:all .1s;
}

/* ── ENTERPRISE SECTION DIVIDER ── */
.section-divider{
  display:flex;align-items:center;gap:16px;
  margin:0 0 48px;opacity:.35;
}
.section-divider::before,.section-divider::after{
  content:'';flex:1;height:1px;
  background:linear-gradient(90deg,transparent,rgba(30,107,255,.6));
}
.section-divider::after{
  background:linear-gradient(270deg,transparent,rgba(30,107,255,.6));
}
.section-divider-text{
  font-family:'DM Mono',monospace;font-size:9px;
  letter-spacing:3px;text-transform:uppercase;color:rgba(30,107,255,.8);
  white-space:nowrap;
}

/* ── GLOW CARD (timeline / value) ── */
.glow-on-hover{transition:box-shadow .3s,transform .3s;}
.glow-on-hover:hover{
  box-shadow:0 0 0 1px rgba(30,107,255,.3),0 16px 48px rgba(30,107,255,.12),0 0 60px rgba(30,107,255,.06);
  transform:translateY(-4px);
}

/* ── HERO BADGE (enterprise version) ── */
.ent-badge{
  display:inline-flex;align-items:center;gap:8px;
  background:rgba(30,107,255,.1);border:1px solid rgba(30,107,255,.22);
  border-radius:4px;padding:5px 12px;margin-bottom:20px;
  font-family:'DM Mono',monospace;font-size:10px;letter-spacing:2px;
  text-transform:uppercase;color:rgba(30,107,255,.85);
}
.ent-badge-green{
  background:rgba(0,204,102,.08);border-color:rgba(0,204,102,.2);
  color:rgba(0,204,102,.8);
}

/* ── ANIMATED UNDERLINE (section titles) ── */
.title-underline{
  display:inline-block;position:relative;
}
.title-underline::after{
  content:'';position:absolute;bottom:-6px;left:0;width:0;height:2px;
  background:linear-gradient(90deg,var(--blue),var(--green));
  transition:width .6s cubic-bezier(.4,0,.2,1);
  border-radius:1px;
}
.title-underline.revealed::after{width:100%;}

/* ── MARQUEE BLUE VARIANT ── */
.marquee-top.blue-strip{
  background:#050e22;
  border-bottom:1px solid rgba(30,107,255,.18);
}
.marquee-top.blue-strip .marquee-item{color:rgba(100,150,230,.7);}
.marquee-top.blue-strip .marquee-dot{background:var(--blue);box-shadow:0 0 6px var(--blue);}

/* ── MOBILE FIXES for enterprise layout ── */
@media(max-width:768px){
  .metrics-strip{flex-direction:column;gap:0;}
  .metric-item{border-right:none;border-bottom:1px solid rgba(30,107,255,.1);padding:18px;}
  .metric-item:last-child{border-bottom:none;}
}

/* ── RESPONSIVE — sections ── */
@media(max-width:768px){
  .hero-inner{grid-template-columns:1fr;flex-direction:column;}
  .laptop-wrap{max-width:100%;transform:scale(.85);transform-origin:top center;}
  .problem-cols{grid-template-columns:1fr;flex-direction:column;}
  .sol-grid{grid-template-columns:1fr;flex-direction:column;}
  .sectors-grid{grid-template-columns:1fr 1fr;}
  .testimonial-grid{grid-template-columns:1fr;}
  .prima-dopo-grid{flex-direction:column;}
  .modules-grid{grid-template-columns:1fr;}
  .feat-hl-grid{grid-template-columns:1fr;}
  .feat-grid{grid-template-columns:1fr;}
  .sector-deep{grid-template-columns:1fr;}
  .pricing-grid{grid-template-columns:1fr;}
  .comp-header,.comp-row{grid-template-columns:1fr 1fr;}
  .comp-header > :nth-child(3),
  .comp-header > :nth-child(4),
  .comp-row > :nth-child(3),
  .comp-row > :nth-child(4){display:none;}
}
@media(max-width:480px){
  .sectors-grid{grid-template-columns:1fr;}
}

/* ── MOBILE: stack di TUTTE le griglie di contenuto (rete di sicurezza globale) ── */
/* Le pagine definiscono griglie proprie senza media query: qui le impiliamo su mobile */
@media(max-width:768px){
  .contact-grid,.promise-grid,.form-row,
  .sec-block,.sector-deep,
  .values-grid,.mission-grid,
  .rm-grid,
  .card-grid-2,.card-grid-3,.plan-row,.benefit-row,.firma-grid,
  .form-grid-2,.form-grid-3,.charts-row,.guarantee-row{
    grid-template-columns:1fr !important;
    gap:20px !important;
  }
  /* griglie di icone/badge: poche colonne invece di tante */
  .kpi-grid,.kpi-row{
    grid-template-columns:1fr 1fr !important;
  }
  .stack-grid{
    grid-template-columns:repeat(3,1fr) !important;
  }
  .contact-grid{gap:36px !important;margin-top:36px !important;}
}
