{"id":1585,"date":"2022-05-04T10:50:07","date_gmt":"2022-05-04T10:50:07","guid":{"rendered":"https:\/\/in2real.comservices\/"},"modified":"2026-10-08T16:20:50","modified_gmt":"2026-10-08T16:20:50","slug":"servizi","status":"publish","type":"page","link":"https:\/\/in2real.com\/it\/servizi\/","title":{"rendered":"Visual Systems"},"content":{"rendered":"\n<style>\n\/* ===== Clayroom \u2014 stile allineato alla home (sistema i2r) ===== *\/\n.cr-sec{position:relative;isolation:isolate;overflow:clip;padding:16vh 6vw !important;margin:0 !important;max-width:none !important;box-sizing:border-box}\n.cr-sec > .wp-block-group__inner-container,.cr-sec > *:not(style):not(script){max-width:1500px;margin-left:max(0px,calc((100% - 1500px) \/ 2)) !important;margin-right:auto !important}\n.cr-hero > *:not(style):not(script){margin-left:auto !important;margin-right:auto !important}\n.cr-light{background:#eceef4}\n.cr-white{background:#fff}\n.cr-dark{background:radial-gradient(ellipse 110% 85% at 85% 0%,#1a0f6e 0%,#08021a 55%,#030006 100%);color:#fff}\n.cr-grid::before{content:\"\";position:absolute;inset:0;z-index:-1;pointer-events:none;background-image:linear-gradient(rgba(0,0,150,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(0,0,150,.07) 1px,transparent 1px);background-size:64px 64px;-webkit-mask-image:radial-gradient(ellipse 75% 70% at 50% 50%,#000 20%,transparent 80%);mask-image:radial-gradient(ellipse 75% 70% at 50% 50%,#000 20%,transparent 80%)}\n.cr-glow::after{content:\"\";position:absolute;z-index:-1;right:-12vw;top:-10%;width:55vw;height:55vw;max-width:850px;max-height:850px;border-radius:50%;background:radial-gradient(circle,rgba(90,100,255,.22) 0%,rgba(90,100,255,0) 65%);filter:blur(40px);pointer-events:none}\n.cr-eyebrow{margin:0 0 2.2em !important;font-family:\"GT America Mono\",monospace !important;font-weight:400 !important;font-size:13px !important;line-height:1.5 !important;letter-spacing:.22em !important;text-transform:uppercase !important;color:#000096 !important;opacity:.75}\n.cr-eyebrow::before{content:\"[ \"}.cr-eyebrow::after{content:\" ]\"}\n.cr-dark .cr-eyebrow,.cr-onimg .cr-eyebrow{color:rgba(255,255,255,.55) !important;opacity:1}\n.cr-title{font-family:\"Codec Pro\",sans-serif !important;font-weight:700 !important;font-size:clamp(2.5rem,5.4vw,6.4rem) !important;line-height:1 !important;letter-spacing:-.032em !important;margin:0 !important;max-width:17ch !important;color:#0a0a0a}\n.cr-dark .cr-title,.cr-onimg .cr-title{color:#fff}\n.cr-title em{font-style:normal}\n.cr-h3{font-family:\"Codec Pro\",sans-serif !important;font-weight:700 !important;font-size:clamp(1.6rem,2.4vw,2.8rem) !important;line-height:1.05 !important;letter-spacing:-.025em !important;margin:0 0 .6em !important;color:#0a0a0a}\n.cr-h3 em,.cr-hero-title em{font-family:inherit;font-style:normal;font-weight:inherit;font-size:1em;letter-spacing:inherit;padding-right:.02em;background:linear-gradient(95deg,#5a64ff 0%,#000096 90%);-webkit-background-clip:text;background-clip:text;color:transparent}\n.i2r-w{display:inline-block}\n.i2r-w.is-accent{font-family:inherit;font-style:normal;font-weight:inherit;font-size:1em;letter-spacing:inherit;padding-right:.02em;background:linear-gradient(95deg,#5a64ff 0%,#000096 90%);-webkit-background-clip:text;background-clip:text;color:transparent}\n.cr-dark .i2r-w.is-accent,.cr-onimg .i2r-w.is-accent,.cr-hero .i2r-w.is-accent{background:linear-gradient(95deg,#ffffff 0%,#c6caff 45%,#8c94ff 100%);-webkit-background-clip:text;background-clip:text}\n.cr-lead{font-family:\"Codec Pro News\",\"Codec Pro\",sans-serif !important;font-weight:300 !important;font-size:clamp(1.05rem,1.4vw,1.45rem) !important;line-height:1.5 !important;max-width:44ch !important;margin:2em 0 0 !important;color:#2c2c3a}\n.cr-dark .cr-lead,.cr-onimg .cr-lead{color:rgba(255,255,255,.72)}\n.cr-text{font-family:\"Codec Pro News\",\"Codec Pro\",sans-serif !important;font-weight:300 !important;font-size:clamp(1rem,1.1vw,1.15rem) !important;line-height:1.55 !important;color:#2c2c3a;margin:0 !important}\n.cr-num{font-family:\"GT America Mono\",monospace !important;font-size:12px !important;letter-spacing:.18em !important;color:#000096 !important;opacity:.7;margin:0 0 1.4em !important;text-transform:uppercase}\n.cr-tags{margin:1.8em 0 0 !important;font-family:\"GT America Mono\",monospace !important;font-size:12px !important;letter-spacing:.16em !important;text-transform:uppercase;color:rgba(10,10,10,.5) !important;line-height:1.7 !important}\n.cr-cols{gap:0 !important;margin-top:9vh !important;border-top:1px solid rgba(0,0,150,.14)}\n.cr-cols > .wp-block-column{padding:6vh 3vw 0 0;margin:0 !important}\n.cr-cols > .wp-block-column + .wp-block-column{padding-left:3vw;border-left:1px solid rgba(0,0,150,.14)}\n.cr-cols-2 > .wp-block-column{padding-top:7vh;padding-right:4vw}\n.cr-cols-2 > .wp-block-column + .wp-block-column{padding-left:4vw}\n.cr-cards{gap:24px !important;margin-top:7vh !important}\n.cr-cards + .cr-cards{margin-top:24px !important}\n.cr-cards > .wp-block-column{background:#fff;border-radius:16px;padding:36px 32px;box-shadow:0 10px 30px -14px rgba(8,2,26,.18);margin:0 !important}\n.cr-cards .cr-h3{font-size:clamp(1.25rem,1.5vw,1.6rem) !important}\n.cr-btns{display:flex;flex-wrap:wrap;gap:14px;margin-top:3em}\n.cr-btn{display:inline-flex;align-items:center;gap:12px;background:#000;color:#fff !important;font-family:\"GT America Mono\",monospace;font-size:14.4px;letter-spacing:2px;text-transform:uppercase;padding:15px 38px;border-radius:24px;text-decoration:none !important;transition:background .3s ease,gap .3s ease}\n.cr-btn:hover{background:#000096;gap:18px}\n.cr-btn--ghost{background:transparent;color:#000 !important;box-shadow:inset 0 0 0 1px rgba(0,0,0,.25)}\n.cr-btn--ghost:hover{background:#000;color:#fff !important}\n.cr-dark .cr-btn,.cr-onimg .cr-btn{background:#fff;color:#000 !important}\n.cr-dark .cr-btn:hover,.cr-onimg .cr-btn:hover{background:#a9afff}\n\/* hero *\/\n.cr-hero{padding:22vh 6vw 20vh !important;text-align:center;min-height:82vh;display:flex;flex-direction:column;justify-content:center}\n.cr-hero::before{content:\"\";position:absolute;inset:0;z-index:-1;pointer-events:none;background-image:linear-gradient(rgba(255,255,255,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.055) 1px,transparent 1px);background-size:72px 72px;background-position:center top;-webkit-mask-image:radial-gradient(ellipse 60% 38% at 50% 18%,#000 10%,transparent 75%);mask-image:radial-gradient(ellipse 60% 38% at 50% 18%,#000 10%,transparent 75%)}\n.cr-hero .cr-eyebrow{text-align:center}\n.cr-hero-title{font-family:\"Codec Pro\",sans-serif;font-weight:700;font-size:clamp(3rem,6.2vw,7.6rem);line-height:.98;letter-spacing:-.035em;color:#fff;margin:0 auto;max-width:14ch}\n.cr-hero .cr-lead{margin:2.2em auto 0 !important;text-align:center;max-width:46ch !important}\n.cr-persp{perspective:1800px;perspective-origin:50% 0%;margin-top:9vh}\n.cr-frame{position:relative;max-width:1300px;margin:0 auto;padding:20px;border-radius:32px;background:linear-gradient(155deg,#202028 0%,#0c0c12 55%,#06060a 100%);border:1px solid rgba(255,255,255,.08);box-shadow:0 60px 120px rgba(0,0,30,.6),0 0 80px rgba(0,0,150,.25),inset 0 1px 1px rgba(255,255,255,.15)}\n.cr-frame video{display:block;width:100%;aspect-ratio:16\/9;object-fit:cover;border-radius:14px;background:#000}\n.cr-meta{position:absolute;left:6vw;right:6vw;bottom:7vh;display:flex;justify-content:space-between;gap:16px;font-family:\"GT America Mono\",monospace;font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:rgba(255,255,255,.28);max-width:none !important;margin:0 !important}\n.cr-meta span{transition:color .4s}.cr-meta span.is-on{color:#a9afff}\n\/* stats *\/\n.cr-stats{display:grid;grid-template-columns:1fr 1fr;gap:0;margin-top:9vh;border-top:1px solid rgba(255,255,255,.14)}\n.cr-stat{padding:6vh 4vw 0 0}\n.cr-stat + .cr-stat{padding-left:4vw;border-left:1px solid rgba(255,255,255,.14)}\n.cr-stat-num{display:block;font-family:\"Codec Pro\",sans-serif;font-style:normal;font-weight:700;font-size:clamp(4.5rem,9vw,10rem);line-height:.95;letter-spacing:-.04em;background:linear-gradient(95deg,#ffffff 0%,#c6caff 45%,#8c94ff 100%);-webkit-background-clip:text;background-clip:text;color:transparent;padding-right:.08em}\n.cr-stat-label{display:block;margin-top:1.4em;font-family:\"Codec Pro News\",\"Codec Pro\",sans-serif;font-weight:300;font-size:clamp(1rem,1.15vw,1.2rem);line-height:1.5;color:rgba(255,255,255,.72);max-width:36ch}\n.cr-stat-label b{font-family:\"GT America Mono\",monospace;font-weight:500;font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:#a9afff;display:block;margin-bottom:.8em}\n.cr-note{margin-top:6vh !important;font-family:\"GT America Mono\",monospace !important;font-size:11px !important;letter-spacing:.14em !important;text-transform:uppercase;color:rgba(255,255,255,.35) !important}\n\/* intelligo *\/\n.cr-onimg{background:#08021a url(https:\/\/in2real.com\/wp-content\/uploads\/2026\/09\/intein2-1.jpg) center\/cover no-repeat;color:#fff}\n.cr-onimg::before{content:\"\";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(8,2,26,.88) 0%,rgba(8,2,26,.55) 60%,rgba(8,2,26,.3) 100%)}\n.cr-logo img{max-width:340px;height:auto;margin:0 0 6vh}\n.cr-clients{margin:7vh 0 0 !important;padding-top:4vh;border-top:1px solid rgba(255,255,255,.16);display:flex;flex-wrap:wrap;align-items:baseline;gap:.4em 1.6em;font-family:\"Codec Pro\",sans-serif !important;font-weight:700 !important;font-size:clamp(1.4rem,2.4vw,2.6rem) !important;letter-spacing:-.02em;color:rgba(255,255,255,.85) !important;line-height:1.2 !important}\n.cr-clients-label{margin:7vh 0 0 !important;font-family:\"GT America Mono\",monospace !important;font-size:12px !important;letter-spacing:.18em !important;text-transform:uppercase;color:rgba(255,255,255,.5) !important}\n.cr-clients-label + .cr-clients{margin-top:1.4em !important}\n\/* video band *\/\n.cr-film{background:linear-gradient(180deg,#eceef4 0%,#eceef4 50%,#ffffff 50%,#ffffff 100%);padding:0}\n.cr-film-inner{position:relative;width:100%;height:min(100vh,56.25vw);overflow:hidden;clip-path:inset(0% 6vw 0% 6vw round 24px);background:#08021a}\n.cr-film-inner video{width:100%;height:100%;object-fit:cover;display:block;transform-origin:50% 50%}\n.cr-film-tag{position:absolute;z-index:2;left:calc(6vw + 22px);top:22px;display:inline-flex;align-items:center;gap:8px;font-family:\"GT America Mono\",monospace;font-weight:500;font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:#fff;background:rgba(8,2,26,.55);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);padding:6px 11px;border-radius:999px}\n.cr-film-tag i{width:7px;height:7px;border-radius:50%;background:#8c94ff;box-shadow:0 0 8px #8c94ff;animation:crpulse 1.6s ease-in-out infinite}\n@keyframes crpulse{50%{opacity:.35}}\n\/* client logos marquee *\/\n.cr-marquee{margin-top:1.6em !important;overflow:hidden;padding:4vh 0;border-top:1px solid rgba(255,255,255,.16);-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 8%,#000 92%,transparent 100%);mask-image:linear-gradient(90deg,transparent 0,#000 8%,#000 92%,transparent 100%)}\n.cr-marquee-track{display:flex;width:max-content;animation:crMarquee 30s linear infinite}\n.cr-marquee:hover .cr-marquee-track{animation-play-state:paused}\n.cr-marquee-set{display:flex;align-items:center}\n.cr-marquee-item{display:flex;align-items:center;justify-content:center;padding-right:7vw}\n.cr-marquee-item img{height:58px;width:auto;max-width:190px;object-fit:contain;filter:grayscale(1) invert(1);opacity:.82}\n@keyframes crMarquee{to{transform:translateX(-50%)}}\n\/* Clayroom forms *\/\n.cr-tabs{display:inline-flex;gap:6px;padding:6px;border-radius:999px;background:#eceef4;margin-top:3em}\n.cr-tab{font-family:\"GT America Mono\",monospace;font-size:13px;letter-spacing:.14em;text-transform:uppercase;padding:13px 28px;border-radius:999px;border:0;background:transparent;color:#0a0a0a;cursor:pointer;transition:background .3s ease,color .3s ease}\n.cr-tab.is-active{background:#000;color:#fff}\n.cr-tab:not(.is-active):hover{background:rgba(0,0,150,.08)}\n.cr-form-panel{margin-top:6vh;max-width:1000px}\n.cr-form-panel .wpcf7 form{margin:0}\n.cr-f-grid{display:grid;grid-template-columns:1fr 1fr;gap:34px 48px}\n.cr-f-grid > p,.cr-f-accept p{display:contents}\n.cr-f-grid br{display:none}\n.cr-f{display:flex !important;flex-direction:column;gap:8px;margin:0 !important;font-family:\"GT America Mono\",monospace !important;font-size:11px !important;letter-spacing:.16em !important;text-transform:uppercase;color:rgba(10,10,10,.55) !important}\n.cr-f--full{grid-column:1 \/ -1}\n.cr-form-panel input[type=text],.cr-form-panel input[type=email],.cr-form-panel select,.cr-form-panel textarea{width:100% !important;font-family:\"Codec Pro News\",\"Codec Pro\",sans-serif !important;font-weight:300 !important;font-size:18px !important;letter-spacing:0 !important;text-transform:none !important;color:#0a0a0a !important;background:transparent !important;border:0 !important;border-bottom:1px solid rgba(0,0,150,.25) !important;border-radius:0 !important;padding:10px 0 !important;box-shadow:none !important;outline:none !important;transition:border-color .3s ease}\n.cr-form-panel input:focus,.cr-form-panel select:focus,.cr-form-panel textarea:focus{border-bottom-color:#000096 !important}\n.cr-form-panel textarea{min-height:120px;resize:vertical}\n.cr-f-accept{font-family:\"Codec Pro News\",\"Codec Pro\",sans-serif !important;font-size:14px !important;letter-spacing:0 !important;text-transform:none !important;color:#2c2c3a !important;line-height:1.5}\n.cr-f-accept .wpcf7-list-item{display:block;margin:0 0 10px !important}\n.cr-f-accept a{color:#000096;text-decoration:underline}\n.cr-form-panel .cr-f-submit{display:inline-flex;align-items:center;background:#000 !important;color:#fff !important;font-family:\"GT America Mono\",monospace !important;font-size:14.4px !important;letter-spacing:2px !important;text-transform:uppercase;padding:15px 38px !important;border-radius:24px !important;border:0 !important;cursor:pointer;transition:background .3s ease}\n.cr-form-panel .cr-f-submit:hover{background:#000096 !important}\n.cr-form-panel .wpcf7-not-valid-tip{font-family:\"Codec Pro News\",sans-serif;font-size:12px;letter-spacing:0;text-transform:none;color:#c0392b;margin-top:6px}\n.cr-form-panel .wpcf7-response-output{margin:24px 0 0 !important;padding:14px 18px !important;border-radius:12px;font-family:\"Codec Pro News\",sans-serif;font-size:15px}\n.cr-form-panel .wpcf7-spinner{margin-left:14px}\n@media (prefers-reduced-motion: reduce){.cr-marquee-track{animation:none}}\n\n\/* ===== Visual Systems specifics ===== *\/\n.cr-sec.vs-band-intro{padding-top:2vh !important;padding-bottom:9vh !important}\n.vs-meta{margin:2.6em auto 0 !important;font-family:\"GT America Mono\",monospace;font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:rgba(255,255,255,.4)}\n.vs-stat-inline{display:flex;align-items:baseline;gap:1.2em;margin-top:7vh !important;padding-top:4vh;border-top:1px solid rgba(0,0,150,.14)}\n.vs-stat-inline b{font-family:\"Codec Pro\",sans-serif;font-weight:700;font-size:clamp(3rem,5vw,5.5rem);letter-spacing:-.04em;line-height:1;background:linear-gradient(95deg,#5a64ff 0%,#000096 90%);-webkit-background-clip:text;background-clip:text;color:transparent}\n.vs-stat-inline span{font-family:\"Codec Pro News\",sans-serif;font-weight:300;font-size:clamp(1rem,1.2vw,1.25rem);color:#2c2c3a;max-width:30ch}\n\/* services with hover video *\/\n.vs-hover > .wp-block-column{position:relative;isolation:isolate;padding:8vh 3vw 7vh !important;display:flex;flex-direction:column}\n.vs-hover > .wp-block-column + .wp-block-column{padding-left:3vw !important}\n.vs-hmedia{position:absolute;inset:0;z-index:-1;opacity:0;overflow:hidden;transition:opacity .6s ease;pointer-events:none;margin:0 !important}\n.vs-hmedia video{width:100%;height:100%;object-fit:cover;transform:scale(1.08);transition:transform 1.6s cubic-bezier(.2,.7,.2,1)}\n.vs-hmedia::after{content:\"\";position:absolute;inset:0;background:linear-gradient(180deg,rgba(8,2,26,.35) 0%,rgba(8,2,26,.88) 100%)}\n.vs-link{margin-top:auto !important;padding-top:2.4em}\n.vs-link a{font-family:\"GT America Mono\",monospace;font-size:13px;letter-spacing:.16em;text-transform:uppercase;color:#000 !important;text-decoration:none !important;border-bottom:1px solid currentColor;padding-bottom:4px;transition:color .4s ease}\n.vs-hover .cr-num,.vs-hover .cr-h3,.vs-hover .cr-text,.vs-hover .cr-tags{transition:color .45s ease}\n@media (hover:hover) and (pointer:fine){\n  .vs-hover > .wp-block-column:hover .vs-hmedia{opacity:1}\n  .vs-hover > .wp-block-column:hover .vs-hmedia video{transform:scale(1)}\n  .vs-hover > .wp-block-column:hover .cr-h3{color:#fff !important}\n  .vs-hover > .wp-block-column:hover .cr-h3 em{background:linear-gradient(95deg,#ffffff 0%,#c6caff 45%,#8c94ff 100%);-webkit-background-clip:text;background-clip:text}\n  .vs-hover > .wp-block-column:hover .cr-text{color:rgba(255,255,255,.82) !important}\n  .vs-hover > .wp-block-column:hover .cr-tags{color:rgba(255,255,255,.6) !important}\n  .vs-hover > .wp-block-column:hover .cr-num{color:#a9afff !important;opacity:1}\n  .vs-hover > .wp-block-column:hover .vs-link a{color:#fff !important}\n}\n@media (max-width:768px),(hover:none){\n.vs-hover .vs-hmedia{display:block !important;position:relative;inset:auto;z-index:0;opacity:1;width:100%;aspect-ratio:16\/9;border-radius:14px;margin:0 0 26px !important;background:#08021a}\n.vs-hover .vs-hmedia video{transform:none}\n.vs-hover .vs-hmedia::after{background:linear-gradient(180deg,rgba(8,2,26,0) 60%,rgba(8,2,26,.3) 100%)}\n.vs-hover > .wp-block-column:first-child{border-left:1px solid rgba(0,0,150,.14)}\n}\n\/* CTA Discover: bottone nero (come View all works in home) *\/\n.vs-hover .vs-link a{display:inline-flex;align-items:center;gap:10px;background:#000;color:#fff !important;border:0;border-radius:24px;padding:14px 26px;font-size:12px;letter-spacing:.14em;line-height:1.2;transition:background .3s ease,gap .3s ease}\n.vs-hover .vs-link a:hover{background:#000096;gap:16px}\n@media (hover: hover) and (pointer: fine){.vs-hover > .wp-block-column:hover .vs-link a{background:#fff;color:#000 !important}}\n.cr-sec.vs-one{padding-bottom:9vh !important}\n.vs-stats3{grid-template-columns:repeat(3,1fr) !important}\n.vs-stats3 .cr-stat-num{font-size:clamp(3.6rem,7vw,8rem)}\n@media (max-width:768px){.vs-stats3{grid-template-columns:1fr !important}.vs-stats3 .cr-stat + .cr-stat{padding-left:0;border-left:0;border-top:1px solid rgba(255,255,255,.14);margin-top:4vh}}\n\/* one to infinite flow *\/\n.vs-flow{display:flex;flex-wrap:wrap;align-items:center;gap:.5em 1.1em;margin:2.4em 0 0 !important;font-family:\"GT America Mono\",monospace;font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:rgba(10,10,10,.35)}\n.vs-flow span,.vs-flow i{font-style:normal;transition:color .4s ease}\n.vs-flow .is-on{color:#000096}\n.vs-flow .vs-inf{font-family:\"Codec Pro\",sans-serif;font-size:22px;letter-spacing:0;line-height:1}\n\/* proof: works cards on dark *\/\n.vs-proof .nb-cards-wrapper{margin-top:6vh}\n.vs-proof .nb-cta{background:#fff !important;color:#000 !important}\n.vs-proof .nb-cta:hover{background:#a9afff !important}\n<\/style>\n<script>\n(function(){\n  function split(h){var out=[];Array.prototype.slice.call(h.childNodes).forEach(function(n){\n    if(n.nodeType===3){n.textContent.split(\/(\\s+)\/).forEach(function(t){if(!t)return;if(\/^\\s+$\/.test(t)){out.push(document.createTextNode(' '));}else{var s=document.createElement('span');s.className='i2r-w';s.textContent=t;out.push(s);}});}\n    else if(n.nodeName==='BR'){out.push(document.createElement('br'));}\n    else{var acc=\/^(EM|I)$\/.test(n.nodeName);n.textContent.split(\/\\s+\/).filter(Boolean).forEach(function(t,i){if(i)out.push(document.createTextNode(' '));var s=document.createElement('span');s.className=acc?'i2r-w is-accent':'i2r-w';s.textContent=t;out.push(s);});}\n  });h.innerHTML='';out.forEach(function(o){h.appendChild(o);});return h.querySelectorAll('.i2r-w');}\n  function ready(){return !!(window.gsap ? window.ScrollTrigger : false);}\n  function init(){\n    gsap.registerPlugin(ScrollTrigger);\n    var rm=window.matchMedia('(prefers-reduced-motion: reduce)').matches;\n    var WIN={opacity:.06,yPercent:45,rotateX:-50,filter:'blur(12px)',transformOrigin:'50% 100%',transformPerspective:600};\n    var hh=document.querySelector('.cr-hero-title');\n    if(hh){var hw=split(hh);if(!rm){gsap.from(hw,{opacity:0,yPercent:45,rotateX:-50,filter:'blur(12px)',transformOrigin:'50% 100%',transformPerspective:600,duration:1.1,ease:'power3.out',stagger:.1,delay:.2});\n      gsap.from('.cr-hero .cr-eyebrow',{opacity:0,y:12,duration:.8,ease:'power3.out'});\n      gsap.from('.cr-hero .cr-lead',{opacity:0,y:20,filter:'blur(8px)',duration:1,ease:'power3.out',delay:1.1});}}\n    document.querySelectorAll('.cr-words').forEach(function(h){var w=split(h);if(rm)return;\n      gsap.set(w,WIN);\n      gsap.to(w,{opacity:1,yPercent:0,rotateX:0,filter:'blur(0px)',ease:'none',stagger:.14,scrollTrigger:{trigger:h,start:'top 90%',end:'top 50%',scrub:1}});});\n    if(!rm){\n      document.querySelectorAll('.cr-sec:not(.cr-hero) .cr-eyebrow, .cr-sec:not(.cr-hero) .cr-lead, .cr-cols > .wp-block-column, .cr-cards > .wp-block-column, .cr-stat, .cr-clients, .cr-btns, .cr-logo').forEach(function(el){\n        gsap.from(el,{opacity:0,y:24,duration:.9,ease:'power3.out',scrollTrigger:{trigger:el,start:'top 88%'}});});\n      var fr=document.querySelector('.cr-frame');\n      if(fr){gsap.set(fr,{rotateX:30,scale:.82,transformOrigin:'50% 100%'});\n        gsap.to(fr,{rotateX:0,scale:1,ease:'none',scrollTrigger:{trigger:'.cr-persp',start:'top 90%',end:'top 20%',scrub:1}});}\n    }\n    var metas=document.querySelectorAll('.cr-meta span');\n    if(metas.length){metas[0].classList.add('is-on');\n      ScrollTrigger.create({trigger:'.cr-persp',start:'top 85%',end:'top 15%',onLeave:function(){metas.forEach(function(m){m.classList.add('is-on');});},\n        onUpdate:function(st){var k=Math.min(metas.length-1,Math.floor(st.progress*metas.length));metas.forEach(function(m,i){m.classList.toggle('is-on',i<=k);});}});}\n    document.querySelectorAll('.cr-stat-num[data-to]').forEach(function(el){\n      var to=parseFloat(el.getAttribute('data-to')),pre=el.getAttribute('data-prefix')||'',suf=el.getAttribute('data-suffix')||'',o={v:0};\n      if(rm)return;\n      el.textContent=pre+'0'+suf;\n      ScrollTrigger.create({trigger:el,start:'top 85%',once:true,onEnter:function(){gsap.to(o,{v:to,duration:1.6,ease:'power2.out',onUpdate:function(){el.textContent=pre+Math.round(o.v)+suf;}});}});\n    });\n    var fl=document.querySelectorAll('.vs-flow span, .vs-flow i');\n    if(fl.length){if(rm){fl.forEach(function(x){x.classList.add('is-on');});}else{ScrollTrigger.create({trigger:'.vs-flow',start:'top 85%',end:'top 45%',onUpdate:function(st){var k=Math.floor(st.progress*fl.length);fl.forEach(function(x,i){x.classList.toggle('is-on',i<k ? true : st.progress>.98);});},onLeave:function(){fl.forEach(function(x){x.classList.add('is-on');});}});}}\n    var fi=document.querySelector('.cr-film-inner');\n    if(fi){if(!rm){\n      gsap.fromTo(fi,{clipPath:'inset(0% 6vw 0% 6vw round 24px)'},{clipPath:'inset(0% 0vw 0% 0vw round 0px)',ease:'none',scrollTrigger:{trigger:'.cr-film',start:'top 80%',end:'top 5%',scrub:1}});\n      gsap.fromTo(fi.querySelector('video'),{scale:1.12},{scale:1,ease:'none',scrollTrigger:{trigger:'.cr-film',start:'top bottom',end:'bottom top',scrub:true}});\n    }}\n    ScrollTrigger.refresh();\n  }\n  var tr=0,p=setInterval(function(){tr++;if(ready()||tr>150){clearInterval(p);if(ready())init();}},60);\n})();\n<\/script>\n<script>\n(function(){\n  \/* Mobile: il video diventa copertina della sezione, parte quando e' visibile *\/\n  function mobile(){\n    var vids=document.querySelectorAll('.vs-hover .vs-hmedia video');\n    if(!vids.length||!('IntersectionObserver' in window))return;\n    var io=new IntersectionObserver(function(es){es.forEach(function(e){var v=e.target;\n      if(e.isIntersecting){if(!v.getAttribute('src'))v.setAttribute('src',v.getAttribute('data-src'));var p=v.play();if(p)p.catch(function(){});}\n      else{v.pause();}\n    });},{rootMargin:'200px 0px',threshold:0.2});\n    vids.forEach(function(v){v.muted=true;io.observe(v);});\n  }\n  function go(){\n    if(window.matchMedia('(max-width: 768px), (hover: none)').matches){mobile();return;}\n    if(!window.matchMedia('(hover: hover) and (pointer: fine)').matches)return;\n    document.querySelectorAll('.vs-hover > .wp-block-column').forEach(function(col){\n      var v=col.querySelector('.vs-hmedia video');if(!v)return;var src=v.getAttribute('data-src');if(!src)return;\n      col.addEventListener('mouseenter',function(){if(!v.getAttribute('src'))v.setAttribute('src',src);var p=v.play();if(p)p.catch(function(){});});\n      col.addEventListener('mouseleave',function(){v.pause();});\n    });\n  }\n  if(document.readyState==='loading'){document.addEventListener('DOMContentLoaded',go);}else{go();}\n})();\n<\/script>\n\n\n\n<section data-color=\"255, 255, 255\">\n\n\n\n<section class=\"wp-block-group cr-sec cr-dark cr-hero is-layout-flow wp-block-group-is-layout-flow\">\n<p class=\"cr-eyebrow\">Visual Systems \u2014 real-time 3D<\/p>\n<h1 class=\"cr-hero-title\">Un solo asset. Ogni <em>mondo.<\/em><\/h1>\n<p class=\"cr-lead\">Il vostro prodotto esiste una volta sola. Quello che vi serve cambia a seconda del team, del mercato e del momento.<\/p>\n<p class=\"vs-meta\">Automotive e moto \u00b7 Industrial \u00b7 Arredo high-end<\/p>\n<\/section>\n\n\n\n<\/section>\n\n\n\n<section class=\"wp-block-group cr-sec cr-light cr-grid vs-one is-layout-flow wp-block-group-is-layout-flow\">\n<p class=\"cr-eyebrow wp-block-paragraph\">Da uno a infiniti<\/p>\n\n\n\n<h2 class=\"wp-block-heading cr-title cr-words\">Un solo modello. Infiniti <em>output.<\/em><\/h2>\n\n\n\n<p class=\"cr-lead wp-block-paragraph\">Una volta creato il Digital Twin, ogni output nasce dalla stessa pipeline: immagini, animazioni, 360\u00b0, configuratori, AR, pagine di lancio, XR. Un nuovo colore, una variante o un nuovo mercato diventano un aggiornamento alla fonte, non una nuova produzione.<\/p>\n\n\n\n<p class=\"vs-flow\"><span>1 Digital Twin<\/span><i>\u2192<\/i><span>Immagini<\/span><span>Animazione<\/span><span>360\u00b0<\/span><span>Configuratore<\/span><span>AR<\/span><span>Launchsite<\/span><span>XR<\/span><i>\u2192<\/i><span class=\"vs-inf\">\u221e<\/span><\/p>\n<\/section>\n\n\n\n<div class=\"cr-film\"><div class=\"cr-film-inner\"><video autoplay muted loop playsinline preload=\"metadata\" src=\"https:\/\/in2real.com\/wp-content\/uploads\/2026\/09\/System_02.mp4\"><\/video><span class=\"cr-film-tag\"><i><\/i>Un solo Digital Twin \u2014 ogni output<\/span><\/div><\/div>\n\n\n\n<section class=\"wp-block-group cr-sec cr-white is-layout-flow wp-block-group-is-layout-flow\">\n<p class=\"cr-eyebrow wp-block-paragraph\">Partire dal problema<\/p>\n\n\n\n<h2 class=\"wp-block-heading cr-title cr-words\">Cosa state cercando di <em>risolvere?<\/em><\/h2>\n\n\n\n<div class=\"wp-block-columns cr-cols vs-hover is-layout-flex wp-container-core-columns-is-layout-8f761849 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\n<div class=\"vs-hmedia\" aria-hidden=\"true\"><video muted loop playsinline preload=\"none\" data-src=\"https:\/\/in2real.com\/wp-content\/uploads\/2024\/09\/CGI_no-paola.mp4\"><\/video><\/div>\n\n\n\n<p class=\"cr-num wp-block-paragraph\">Troppi prodotti, troppo pochi shooting<\/p>\n\n\n\n<h3 class=\"wp-block-heading cr-h3\">Tutta la gamma, <em>fotorealistica.<\/em><\/h3>\n\n\n\n<p class=\"cr-text wp-block-paragraph\">Immagini e film per ogni variante, mercato e canale, compresi prodotti che ancora non esistono. Una sola fonte, sempre coerente.<\/p>\n\n\n\n<p class=\"cr-tags wp-block-paragraph\">Immagini \u00b7 Animazione \u00b7 Real-time<\/p>\n\n\n\n<p class=\"vs-link\"><a href=\"https:\/\/in2real.com\/it\/servizi\/cgi-production\/\">Scopri CGI Production \u2192<\/a><\/p>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\n<div class=\"vs-hmedia\" aria-hidden=\"true\"><video muted loop playsinline preload=\"none\" data-src=\"https:\/\/in2real.com\/wp-content\/uploads\/2025\/03\/configurator_nopaola_opt.mp4\"><\/video><\/div>\n\n\n\n<p class=\"cr-num wp-block-paragraph\">I clienti non vedono la loro versione<\/p>\n\n\n\n<h3 class=\"wp-block-heading cr-h3\">Ogni variante, a un <em>clic<\/em> di distanza.<\/h3>\n\n\n\n<p class=\"cr-text wp-block-paragraph\">I clienti configurano e vedono esattamente la loro versione nel browser, su qualsiasi dispositivo, invece di immaginarla da una brochure.<\/p>\n\n\n\n<p class=\"cr-tags wp-block-paragraph\">Web \u00b7 360\u00b0 \u00b7 Ogni dispositivo<\/p>\n\n\n\n<p class=\"vs-link\"><a href=\"https:\/\/in2real.com\/it\/servizi\/configuratori-3d\/\">Scopri i configuratori 3D \u2192<\/a><\/p>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\n<div class=\"vs-hmedia\" aria-hidden=\"true\"><video muted loop playsinline preload=\"none\" data-src=\"https:\/\/in2real.com\/wp-content\/uploads\/2025\/03\/Archiproduct_experience_AR_opt-1.mp4\"><\/video><\/div>\n\n\n\n<p class=\"cr-num wp-block-paragraph\">Il prodotto si perde nello scroll<\/p>\n\n\n\n<h3 class=\"wp-block-heading cr-h3\">Un prodotto da <em>attraversare.<\/em><\/h3>\n\n\n\n<p class=\"cr-text wp-block-paragraph\">Pagine di lancio, showroom virtuali e installazioni XR che accompagnano le persone dentro la storia del prodotto, invece di fargliela scorrere davanti.<\/p>\n\n\n\n<p class=\"cr-tags wp-block-paragraph\">Launchsite \u00b7 Showroom \u00b7 VR \/ AR<\/p>\n\n\n\n<p class=\"vs-link\"><a href=\"https:\/\/in2real.com\/it\/servizi\/brand-experience\/\">Scopri Brand Experience \u2192<\/a><\/p>\n<\/div>\n<\/div>\n<\/section>\n\n\n\n<section data-color=\"255, 255, 255\">\n\n\n\n<section class=\"wp-block-group cr-sec cr-dark cr-glow vs-proof is-layout-flow wp-block-group-is-layout-flow\">\n<p class=\"cr-eyebrow wp-block-paragraph\">Dal 2016<\/p>\n\n\n\n<h2 class=\"wp-block-heading cr-title cr-words\">Messo alla prova su gamme <em>reali.<\/em><\/h2>\n\n\n\n<div class=\"cr-stats vs-stats3\"><div class=\"cr-stat\"><span class=\"cr-stat-num\" data-to=\"250\" data-suffix=\"+\">250+<\/span><span class=\"cr-stat-label\"><b>Singoli prodotti<\/b>Realizzati dal 2016.<\/span><\/div><div class=\"cr-stat\"><span class=\"cr-stat-num\" data-to=\"155\" data-suffix=\"\">155<\/span><span class=\"cr-stat-label\"><b>Configuratori<\/b>Per il mondo dell\u2019arredo e del design.<\/span><\/div><div class=\"cr-stat\"><span class=\"cr-stat-num\" data-to=\"125\" data-suffix=\"+\">125+<\/span><span class=\"cr-stat-label\"><b>Famiglie di modelli<\/b>Costruite e mantenute per un brand di moto.<\/span><\/div><\/div>\n\n\n\n<style data-wp-block-html=\"css\">\n.nb-cards-wrapper {\n  --nb-s: 1;\n  position: relative;\n  width: 100%;\n  height: calc(var(--nb-s) * 540px);\n  overflow: hidden; \/* prima era visible: le card sforavano e rompevano il layout su mobile *\/\n}\n.nb-cards-row {\n  position: absolute;\n  left: 0;\n  right: 0;\n  top: 0;\n  height: calc(var(--nb-s) * 500px);\n  pointer-events: none;\n}\n.nb-cards-row > * {\n  pointer-events: auto;\n}\n.nb-card {\n  position: absolute;\n  border-radius: 16px;\n  overflow: hidden;\n  background: linear-gradient(145deg, #1a1230 0%, #150d28 50%, #0d0818 100%);\n  box-shadow:\n    0 16px 32px -10px rgba(0, 0, 0, 0.30),\n    0 6px 14px -4px rgba(0, 0, 0, 0.16),\n    inset 0 1px 0 rgba(255, 255, 255, 0.10),\n    inset 0 -2px 5px rgba(0, 0, 0, 0.30);\n  cursor: pointer;\n  will-change: transform;\n  transition: box-shadow 0.5s cubic-bezier(0.6, 0, 0.2, 1);\n}\n.nb-card::before {\n  content: \"\";\n  position: absolute;\n  inset: 0;\n  background: linear-gradient(\n    160deg,\n    rgba(255, 255, 255, 0.12) 0%,\n    transparent 35%,\n    transparent 65%,\n    rgba(0, 0, 0, 0.18) 100%\n  );\n  pointer-events: none;\n  border-radius: inherit;\n  z-index: 2;\n}\n.nb-card a {\n  display: block;\n  width: 100%;\n  height: 100%;\n}\n.nb-card img {\n  width: 100%;\n  height: 100%;\n  object-fit: cover;\n  object-position: center top;\n  display: block;\n}\n.nb-card:hover {\n  box-shadow:\n    0 24px 48px -14px rgba(0, 0, 0, 0.38),\n    0 10px 20px -6px rgba(0, 0, 0, 0.20),\n    inset 0 1px 0 rgba(255, 255, 255, 0.12),\n    inset 0 -2px 5px rgba(0, 0, 0, 0.32);\n}\n\n\/* Desktop (card ingrandite, scala con --nb-s) *\/\n@media (max-width: 1400px) { .nb-cards-wrapper { --nb-s: .85; } }\n@media (max-width: 1150px) { .nb-cards-wrapper { --nb-s: .7; } }\n@media (max-width: 950px)  { .nb-cards-wrapper { --nb-s: .58; } }\n.nb-card-1 { width: calc(var(--nb-s)*200px); height: calc(var(--nb-s)*270px); left: calc(50% - var(--nb-s)*640px); top: calc(var(--nb-s)*70px); z-index: 1; }\n.nb-card-2 { width: calc(var(--nb-s)*270px); height: calc(var(--nb-s)*365px); left: calc(50% - var(--nb-s)*465px); top: calc(var(--nb-s)*30px); z-index: 3; }\n.nb-card-3 { width: calc(var(--nb-s)*330px); height: calc(var(--nb-s)*445px); left: calc(50% - var(--nb-s)*260px); top: 0px; z-index: 5; }\n.nb-card-4 { width: calc(var(--nb-s)*270px); height: calc(var(--nb-s)*360px); left: calc(50% + var(--nb-s)*5px); top: calc(var(--nb-s)*35px); z-index: 3; }\n.nb-card-5 { width: calc(var(--nb-s)*235px); height: calc(var(--nb-s)*320px); left: calc(50% + var(--nb-s)*232px); top: calc(var(--nb-s)*85px); z-index: 2; }\n.nb-card-6 { width: calc(var(--nb-s)*200px); height: calc(var(--nb-s)*270px); left: calc(50% + var(--nb-s)*445px); top: calc(var(--nb-s)*70px); z-index: 1; }\n\n\/* CTA View all works *\/\n.nb-cards-cta { display: flex; justify-content: center; margin-top: 28px; }\n.nb-cta { display: inline-flex; align-items: center; gap: 12px; background: #000; color: #fff !important; font-family: \"GT America Mono\", monospace; font-size: 14.4px; letter-spacing: 2px; text-transform: uppercase; padding: 15px 38px; border-radius: 24px; text-decoration: none !important; transition: background .3s ease, gap .3s ease; }\n.nb-cta:hover { background: #000096; gap: 18px; }\n.nb-cta-arrow { display: inline-block; font-family: \"Codec Pro\", sans-serif; }\n\n\/* Desktop: 5 card (senza Capezzana) ricentrate *\/\n@media (min-width: 751px) {\n  .vs-proof .nb-cards-row { transform: translateX(6.7%); }\n}\n\n\/* Tablet \/ phone grande (751px \u2192 481px) \u2014 card ingrandite *\/\n@media (max-width: 750px) {\n  .nb-cards-wrapper { height: 440px; }\n  .nb-cards-row     { height: 430px; }\n  .nb-card-1 { width: 130px; height: 175px; left: 0%;  top: 40px; }\n  .nb-card-2 { width: 155px; height: 210px; left: 17%; top: 180px; }\n  .nb-card-3 { width: 180px; height: 245px; left: 34%; top: 10px; }\n  .nb-card-4 { width: 150px; height: 205px; left: 56%; top: 195px; }\n  .nb-card-5 { width: 145px; height: 195px; left: 70%; top: 40px; }\n  .nb-card-6 { width: 125px; height: 170px; left: 85%; top: 215px; }\n}\n\n\/* Phone piccolo (fino a 480px) \u2014 card ingrandite *\/\n@media (max-width: 480px) {\n  .nb-cards-wrapper { height: 385px; }\n  .nb-cards-row     { height: 375px; }\n  .nb-card-1 { width: 105px; height: 140px; left: -2%; top: 30px; }\n  .nb-card-2 { width: 125px; height: 170px; left: 16%; top: 150px; }\n  .nb-card-3 { width: 145px; height: 195px; left: 32%; top: 10px; }\n  .nb-card-4 { width: 120px; height: 165px; left: 54%; top: 160px; }\n  .nb-card-5 { width: 115px; height: 155px; left: 68%; top: 30px; }\n  .nb-card-6 { width: 100px; height: 135px; left: 82%; top: 175px; }\n}\n<\/style>\n\n<script data-wp-block-html=\"js\">\n(function () {\n  var AMP = String.fromCharCode(38);\n\n  \/\/ Qui scegli TU quali works mostrare, in che ordine, e a quale\n  \/\/ URL devono puntare. L'URL e' fisso e non dipende dal permalink\n  \/\/ che ti torna la REST API: se un domani cambia la struttura\n  \/\/ permalink del CPT, queste card continuano a puntare esattamente\n  \/\/ dove hai deciso tu.\n  var WORKS = [\n    { slug: 'meta-experience-exuvia-2',              url: 'https:\/\/in2real.com\/it\/works\/meta-experience-exuvia-2\/' },\n    { slug: 'configuratori-3d-omp-group',           url: 'https:\/\/in2real.com\/it\/works\/configuratori-3d-omp-group\/' },\n    { slug: 'case-study-triumph',                   url: 'https:\/\/in2real.com\/it\/works\/case-study-triumph\/' },\n    { slug: 'leggere-forte-esperienza-vr-lettura-silenziosa',  url: 'https:\/\/in2real.com\/it\/works\/leggere-forte-esperienza-vr-lettura-silenziosa\/' },\n    { slug: 'triumph-virtual-dealership-2',           url: 'https:\/\/in2real.com\/it\/works\/triumph-virtual-dealership-2\/' }\n  ];\n\n  var SLOT_CONFIG = [\n    { rot: -8, depth: 14 },\n    { rot: -4, depth: 9 },\n    { rot: 0,  depth: 6 },\n    { rot: 4,  depth: 10 },\n    { rot: 7,  depth: 12 },\n    { rot: -5, depth: 13 }\n  ];\n\n  function buildCard(slot, url, imgSrc, title) {\n    var n = slot + 1;\n    var cfg = SLOT_CONFIG[slot];\n\n    var card = document.createElement('div');\n    card.className = 'nb-card nb-card-' + n;\n    card.setAttribute('data-rot', cfg.rot);\n    card.setAttribute('data-depth', cfg.depth);\n\n    var link = document.createElement('a');\n    link.href = url;\n    link.target = '_blank';\n\n    var img = document.createElement('img');\n    img.src = imgSrc;\n    img.alt = title;\n    img.loading = 'lazy';\n\n    link.appendChild(img);\n    card.appendChild(link);\n    return card;\n  }\n\n  function fetchWorks(callback) {\n    var slugs = WORKS.map(function (w) { return w.slug; });\n    var restBase = window.location.origin + '\/wp-json\/wp\/v2\/';\n    var qs = 'slug=' + encodeURIComponent(slugs.join(',')) +\n      AMP + '_embed=wp:featuredmedia' +\n      AMP + 'per_page=' + slugs.length +\n      AMP + 'lang=it';\n\n    fetch(restBase + 'works?' + qs)\n      .then(function (res) { return res.json(); })\n      .then(function (data) { callback(data); })\n      .catch(function () { callback([]); });\n  }\n\nfunction renderCards(posts) {\n    var row = document.getElementById('nbCardsRow');\n    if (!row) return;\n\n    var bySlug = {};\n    posts.forEach(function (post) { bySlug[post.slug] = post; });\n\n    var slot = 0;\n\n    WORKS.forEach(function (w) {\n      if (slot >= 8) return;\n\n      var post = bySlug[w.slug];\n      if (!post) return; \/\/ slug non trovato via REST, si salta senza rompere tutto\n\n      var imgSrc = null;\n\n      \/\/ 1) prova l'embed standard wp:featuredmedia\n      if (post._embedded) {\n        var media = post._embedded['wp:featuredmedia'];\n        if (media && media[0] && media[0].source_url) {\n          imgSrc = media[0].source_url;\n        }\n      }\n\n      \/\/ 2) fallback: campo custom gia' presente sul post, non passa\n      \/\/ dall'endpoint \/media\/ che sta rispondendo 401 su questo sito\n      if (!imgSrc && post.featured_image_src_large && post.featured_image_src_large[0]) {\n        imgSrc = post.featured_image_src_large[0];\n      }\n\n      if (!imgSrc) return; \/\/ davvero nessuna immagine disponibile, si salta\n\n      var card = buildCard(slot, w.url, imgSrc, post.title.rendered);\n      row.appendChild(card);\n      slot++;\n    });\n\n    initCards();\n}\n\n  function initCards() {\n    if (typeof gsap === 'undefined') {\n      return setTimeout(initCards, 100);\n    }\n    var cards = document.querySelectorAll('.nb-card');\n    if (!cards.length) return;\n\n    cards.forEach(function (card) {\n      var rot = parseFloat(card.dataset.rot) || 0;\n      card.dataset.restRot = rot;\n      gsap.set(card, { y: -600, rotation: rot + 25, opacity: 0, scale: 0.7 });\n    });\n\n    gsap.to(cards, {\n      y: 0,\n      opacity: 1,\n      scale: 1,\n      rotation: function (i, el) { return parseFloat(el.dataset.restRot) || 0; },\n      duration: 1.1,\n      stagger: { each: 0.08, from: 'center' },\n      ease: 'back.out(1.4)',\n      delay: 0.3\n    });\n\n    cards.forEach(function (card, i) {\n      var rot = parseFloat(card.dataset.restRot) || 0;\n      gsap.to(card, {\n        y: '+=' + (8 + (i % 3) * 5),\n        rotation: rot + (i % 2 === 0 ? 1.5 : -1.5),\n        duration: 3 + (i % 4) * 0.5,\n        delay: 1.4 + i * 0.1,\n        ease: 'sine.inOut',\n        yoyo: true,\n        repeat: -1\n      });\n    });\n\n    var wrapper = document.getElementById('nbCardsWrapper');\n    var mx = 0, my = 0, tx = 0, ty = 0;\n\n    wrapper.addEventListener('mousemove', function (e) {\n      var r = wrapper.getBoundingClientRect();\n      mx = ((e.clientX - r.left) \/ r.width - 0.5) * 2;\n      my = ((e.clientY - r.top) \/ r.height - 0.5) * 2;\n    });\n    wrapper.addEventListener('mouseleave', function () { mx = 0; my = 0; });\n\n    (function parallax() {\n      tx += (mx - tx) * 0.05;\n      ty += (my - ty) * 0.05;\n      cards.forEach(function (card) {\n        var d = parseFloat(card.dataset.depth) || 8;\n        card.style.translate = tx * d + 'px ' + ty * d * 0.5 + 'px';\n      });\n      requestAnimationFrame(parallax);\n    })();\n\n    cards.forEach(function (card) {\n      card.addEventListener('mousemove', function (e) {\n        var r = card.getBoundingClientRect();\n        var px = (e.clientX - r.left) \/ r.width - 0.5;\n        var py = (e.clientY - r.top) \/ r.height - 0.5;\n        gsap.to(card, {\n          rotateX: -py * 16,\n          rotateY: px * 16,\n          scale: 1.12,\n          zIndex: 20,\n          duration: 0.4,\n          ease: 'power2.out',\n          transformPerspective: 700,\n          overwrite: 'auto'\n        });\n      });\n      card.addEventListener('mouseleave', function () {\n        gsap.to(card, {\n          rotateX: 0,\n          rotateY: 0,\n          scale: 1,\n          duration: 0.8,\n          ease: 'elastic.out(1, 0.6)',\n          overwrite: 'auto'\n        });\n      });\n    });\n  }\n\n  fetchWorks(renderCards);\n})();\n<\/script>\n\n<div class=\"nb-cards-wrapper\" id=\"nbCardsWrapper\">\n  <div class=\"nb-cards-row\" id=\"nbCardsRow\"><\/div>\n<\/div>\n<div class=\"nb-cards-cta\"><a class=\"nb-cta\" href=\"https:\/\/in2real.com\/it\/lavori\/\">Vedi tutti i lavori <span class=\"nb-cta-arrow\" aria-hidden=\"true\">\u2192<\/span><\/a><\/div>\n<\/section>\n\n\n\n<\/section>\n\n\n\n<section class=\"wp-block-group cr-sec cr-white cr-grid is-layout-flow wp-block-group-is-layout-flow\">\n<p class=\"cr-eyebrow wp-block-paragraph\">Iniziamo un progetto<\/p>\n\n\n\n<h2 class=\"wp-block-heading cr-title cr-words\">Raccontateci cosa state <em>costruendo.<\/em><\/h2>\n\n\n\n<p class=\"cr-lead wp-block-paragraph\">Inviateci un file CAD, una scheda tecnica o una foto. Vi diremo cosa pu\u00f2 diventare.<\/p>\n\n\n\n<div class=\"cr-btns\"><a class=\"cr-btn\" href=\"https:\/\/in2real.com\/it\/contatti-in2real\/\">Parliamone <span aria-hidden=\"true\">\u2192<\/span><\/a><\/div>\n<\/section>\n\n\n\n<style>\n\/* ===== mobile keywords (chips \/ numbered list) ===== *\/\n.kw-nb{white-space:nowrap}\n.kw b{font-weight:inherit;color:inherit}\n@media (max-width:768px){\n .hl-meta{display:none !important}\n .kw-chips{display:flex !important;flex-wrap:wrap !important;gap:8px !important;line-height:1 !important;margin-top:1.8em !important}\n .kw-chips .kw-sep,.kw-chips > i{display:none !important}\n .kw-chips .kw{display:inline-block;padding:9px 13px;border:1px solid currentColor;border-radius:999px;white-space:nowrap;font-size:10.5px !important;letter-spacing:.12em !important;line-height:1 !important}\n .kw-chips .vs-inf{font-size:15px !important;padding:6px 13px}\n .kw-list{display:block !important;margin-top:2.2em !important;line-height:1.3 !important}\n .kw-list .kw-sep{display:none !important}\n .kw-list .kw{display:flex !important;align-items:baseline;gap:18px;padding:13px 0;border-top:1px solid rgba(120,120,170,.28);white-space:normal;width:auto !important;margin:0 !important}\n .kw-list .kw:last-child{border-bottom:1px solid rgba(120,120,170,.28)}\n .kw-list .kw b{display:inline-block;min-width:2.2em;font-weight:500;color:#000096}\n .cr-dark .kw-list .kw b,.cr-onimg .kw-list .kw b,.is-dark .kw-list .kw b{color:#a9afff}\n}\n<\/style>\n<script>\n(function(){\n  function wrapSep(el,mode){\n    if(el.getAttribute('data-kw'))return;\n    if(el.children.length)return;\n    var t=el.textContent;if(t.indexOf('\u00b7')<0)return;\n    var parts=t.split('\u00b7').map(function(s){return s.trim();}).filter(function(s){return s.length;});\n    var numbered=parts.every(function(p){return \/^\\d{2}\\s\/.test(p);});\n    el.textContent='';\n    parts.forEach(function(p,i){\n      if(i){var sp=document.createElement('span');sp.className='kw-sep';sp.textContent=' \u00b7 ';el.appendChild(sp);}\n      var s=document.createElement('span');s.className=(mode==='nb') ? 'kw-nb' : 'kw';\n      if(numbered ? mode!=='nb' : false){var m=p.match(\/^(\\d{2})\\s+(.*)$\/);var b=document.createElement('b');b.textContent=m[1];s.appendChild(b);s.appendChild(document.createTextNode(' '+m[2]));}\n      else{s.textContent=p;}\n      el.appendChild(s);\n    });\n    if(mode!=='nb')el.classList.add(numbered ? 'kw-list' : 'kw-chips');\n    el.setAttribute('data-kw','1');\n  }\n  function go(){\n    document.querySelectorAll('.cr-tags, .i2r-tags').forEach(function(el){wrapSep(el,'kw');});\n    document.querySelectorAll('.vs-meta').forEach(function(el){wrapSep(el,'nb');});\n    document.querySelectorAll('.i2r-truth-meta').forEach(function(el){\n      if(el.getAttribute('data-kw'))return;\n      el.classList.add('kw-list');el.setAttribute('data-kw','1');\n      Array.prototype.forEach.call(el.children,function(s){\n        s.classList.add('kw');var m=s.textContent.trim().match(\/^(\\d{2})\\s+(.*)$\/);\n        if(m){s.textContent='';var b=document.createElement('b');b.textContent=m[1];s.appendChild(b);s.appendChild(document.createTextNode(' '+m[2]));}\n      });\n    });\n    document.querySelectorAll('.vs-flow').forEach(function(el){\n      el.classList.add('kw-chips');\n      Array.prototype.forEach.call(el.querySelectorAll('span'),function(s){s.classList.add('kw');});\n    });\n  }\n  if(document.readyState==='loading'){document.addEventListener('DOMContentLoaded',go);}else{go();}\n})();\n<\/script>\n","protected":false},"excerpt":{"rendered":"<p>Visual Systems \u2014 real-time 3D Un solo asset. Ogni mondo. Il vostro prodotto esiste una volta sola. Quello che vi serve cambia a seconda del team, del mercato e del momento. Automotive e moto \u00b7 Industrial \u00b7 Arredo high-end Da uno a infiniti Un solo modello. Infiniti output. Una volta creato il Digital Twin, ogni &hellip; <a href=\"https:\/\/in2real.com\/it\/servizi\/\">Continued<\/a><\/p>\n","protected":false},"author":5,"featured_media":4063,"parent":0,"menu_order":47,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_acf_changed":false,"_kad_blocks_custom_css":"","_kad_blocks_head_custom_js":"","_kad_blocks_body_custom_js":"","_kad_blocks_footer_custom_js":"","footnotes":""},"class_list":["post-1585","page","type-page","status-publish","has-post-thumbnail","hentry"],"acf":[],"taxonomy_info":[],"featured_image_src_large":["https:\/\/in2real.com\/wp-content\/uploads\/2022\/12\/in2real_logo_min.jpeg",400,400,false],"author_info":{"display_name":"Pietro Fantoni","author_link":"https:\/\/in2real.com\/it\/blog\/author\/pietro-fantoni\/"},"comment_info":0,"_links":{"self":[{"href":"https:\/\/in2real.com\/it\/wp-json\/wp\/v2\/pages\/1585","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/in2real.com\/it\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/in2real.com\/it\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/in2real.com\/it\/wp-json\/wp\/v2\/users\/5"}],"replies":[{"embeddable":true,"href":"https:\/\/in2real.com\/it\/wp-json\/wp\/v2\/comments?post=1585"}],"version-history":[{"count":78,"href":"https:\/\/in2real.com\/it\/wp-json\/wp\/v2\/pages\/1585\/revisions"}],"predecessor-version":[{"id":31728,"href":"https:\/\/in2real.com\/it\/wp-json\/wp\/v2\/pages\/1585\/revisions\/31728"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/in2real.com\/it\/wp-json\/wp\/v2\/media\/4063"}],"wp:attachment":[{"href":"https:\/\/in2real.com\/it\/wp-json\/wp\/v2\/media?parent=1585"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}