/* NUMBERS */
#numbers{background:var(--v);padding:56px 5vw}
.numbers-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px}
.num-card{padding:32px 24px;background:rgba(0,0,0,.1);text-align:center}
.num-val{font-size:clamp(2.2rem,3.8vw,3.4rem);font-weight:700;color:var(--wh);line-height:1;margin-bottom:7px}
.num-val em{color:rgba(255,255,255,.55);font-style:normal;font-size:55%}
.num-label{font-size:.65rem;letter-spacing:.18em;text-transform:uppercase;color:rgba(255,255,255,.6)}
@media(max-width:580px){.numbers-grid{grid-template-columns:repeat(2,1fr)}}

/* CHI SIAMO */
#chi-siamo{background:var(--wh);color:var(--bk)}
.cs-grid{display:grid;grid-template-columns:1fr 1fr;gap:72px;align-items:center;margin-bottom:90px}
.cs-grid:last-child{margin-bottom:0}
.cs-grid.rev{direction:rtl}
.cs-grid.rev>*{direction:ltr}
.cs-eye{font-size:.65rem;letter-spacing:.25em;text-transform:uppercase;color:var(--v);margin-bottom:14px;display:flex;align-items:center;gap:10px}
.cs-eye::before{content:'';display:inline-block;width:22px;height:1px;background:var(--v)}
.cs-title{font-size:clamp(1.8rem,3vw,2.9rem);font-weight:700;text-transform:uppercase;line-height:1.02;margin-bottom:22px}
.cs-text{font-size:.9rem;line-height:1.88;color:#444}
.cs-img{position:relative;aspect-ratio:4/3}
.cs-img-inner{position:absolute;inset:0;background:linear-gradient(135deg,#0d0020,#7100fd);display:flex;align-items:center;justify-content:center}
.cs-ph{font-size:.6rem;letter-spacing:.2em;text-transform:uppercase;color:rgba(255,255,255,.2)}
.cs-deco{position:absolute;bottom:-14px;right:-14px;width:70px;height:70px;background:var(--v);opacity:.13}
@media(max-width:800px){.cs-grid,.cs-grid.rev{grid-template-columns:1fr;direction:ltr;gap:40px}.cs-grid{margin-bottom:60px}}

/* WHY */
#why{background:linear-gradient(135deg,#060012,#0e0028);padding:110px 5vw;position:relative;overflow:hidden}
#why::before{content:'';position:absolute;top:-40%;right:-12%;width:65%;height:160%;background:radial-gradient(ellipse,rgba(113,0,253,.18) 0%,transparent 62%)}
.why-inner{position:relative;z-index:1;display:grid;grid-template-columns:1fr 1fr;gap:72px;align-items:center}
.why-left h2{font-size:clamp(2rem,3.8vw,3.4rem);font-weight:700;text-transform:uppercase;line-height:.96;margin-bottom:22px}
.why-left h2 em{color:var(--v);font-style:normal}
.why-left p{font-size:.9rem;line-height:1.85;color:var(--gy);margin-bottom:34px}
.why-right{display:flex;flex-direction:column;gap:16px}
.wc{padding:26px;border:1px solid rgba(255,255,255,.07);display:flex;gap:18px;align-items:flex-start;transition:all .3s}
.wc:hover{border-color:rgba(113,0,253,.35);background:rgba(113,0,253,.05)}
.wc-icon{width:42px;height:42px;background:rgba(113,0,253,.13);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.wc-icon svg{width:18px;height:18px;color:var(--v)}
.wc-title{font-size:.82rem;font-weight:700;text-transform:uppercase;letter-spacing:.09em;margin-bottom:5px;color:var(--wh)}
.wc-text{font-size:.8rem;line-height:1.72;color:var(--gy)}
@media(max-width:860px){.why-inner{grid-template-columns:1fr}}

/* MODELLO */
#modello{background:var(--bk)}
.mod-head{text-align:center;max-width:660px;margin:0 auto 72px}
.mod-head .lbl{font-size:.65rem;letter-spacing:.25em;text-transform:uppercase;color:var(--v);display:block;margin-bottom:14px}
.mod-head h2{font-size:clamp(1.9rem,3.5vw,3rem);font-weight:700;text-transform:uppercase;line-height:1.02;margin-bottom:18px}
.mod-head p{font-size:.88rem;line-height:1.82;color:var(--gy)}
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:rgba(255,255,255,.04);margin-bottom:56px}
.step{background:var(--bk);padding:42px 30px;position:relative;overflow:hidden;transition:background .3s}
.step:hover{background:#08000f}
.step::after{content:'';position:absolute;bottom:0;left:0;right:0;height:2px;background:var(--v);transform:scaleX(0);transform-origin:left;transition:transform .4s}
.step:hover::after{transform:scaleX(1)}
.step-n{font-size:4rem;font-weight:700;color:rgba(113,0,253,.35);line-height:1;margin-bottom:20px}
.step-title{font-size:.95rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--wh);margin-bottom:3px}
.step-sub{font-size:.62rem;letter-spacing:.2em;text-transform:uppercase;color:var(--v);margin-bottom:14px}
.step-text{font-size:.82rem;line-height:1.75;color:var(--gy)}
@media(max-width:840px){.steps{grid-template-columns:1fr 1fr}}
@media(max-width:480px){.steps{grid-template-columns:1fr}}

/* CLIENTI */
#clienti{background:var(--wh);color:var(--bk);overflow:hidden;padding:88px 0}
#clienti h2{font-size:clamp(1.8rem,3vw,2.8rem);font-weight:700;text-transform:uppercase;text-align:center;margin-bottom:56px;padding:0 5vw;line-height:1.05}
.mq-wrap{overflow:hidden;mask-image:linear-gradient(90deg,transparent,black 7%,black 93%,transparent)}
.mq-track{display:flex;white-space:nowrap;animation:mq 16s linear infinite}
.mq-track:hover{animation-play-state:paused}
.logo-chip{display:inline-flex;align-items:center;justify-content:center;padding:18px 40px;border-right:1px solid rgba(0,0,0,.07);flex-shrink:0;min-width:170px;transition:transform .3s}
.logo-chip:hover{transform:scale(1.06)}
.logo-img{height:76px;width:auto;max-width:160px;object-fit:contain;opacity:.9;transition:opacity .3s;mix-blend-mode:multiply}
.logo-chip:hover .logo-img{opacity:1}
@keyframes mq{from{transform:translateX(0)}to{transform:translateX(-50%)}}

/* LAVORA */
#lavora{position:relative;overflow:hidden;background:var(--v);padding:120px 5vw;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}
#lavora::before{content:'KREVIA';font-size:28vw;font-weight:700;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:rgba(255,255,255,.1);white-space:nowrap;pointer-events:none;text-transform:uppercase;letter-spacing:-.05em}
.lav-inner{position:relative;z-index:1}
#lavora h2{font-size:clamp(2.4rem,7vw,7rem);font-weight:700;text-transform:uppercase;line-height:.9;margin-bottom:18px;color:var(--wh)}
#lavora p{font-size:.92rem;color:rgba(255,255,255,.68);max-width:480px;margin:0 auto 44px;line-height:1.75}
.lav-btn{background:var(--wh);color:var(--v);padding:16px 42px;font-size:.8rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;text-decoration:none;display:inline-flex;align-items:center;gap:10px;transition:all .25s}
.lav-btn:hover{background:var(--bk);color:var(--wh)}
.lav-btn svg{transition:transform .25s}
.lav-btn:hover svg{transform:translateX(4px)}

