/* Prisma 0.1.3: direzione approvata da Marco il 2026-10-11. */
:is(.ds-immersive,.editor-styles-wrapper) main{overflow:hidden}:is(.ds-immersive,.editor-styles-wrapper) .hero,:is(.ds-immersive,.editor-styles-wrapper) .page-heading,:is(.ds-immersive,.editor-styles-wrapper) .case-top,:is(.ds-immersive,.editor-styles-wrapper) .cta,:is(.ds-immersive,.editor-styles-wrapper) .method,:is(.ds-immersive,.editor-styles-wrapper) .contact-intro{position:relative;isolation:isolate}
:is(.ds-immersive,.editor-styles-wrapper) .hero>.wrap,:is(.ds-immersive,.editor-styles-wrapper) .page-heading>.wrap,:is(.ds-immersive,.editor-styles-wrapper) .case-top>.wrap,:is(.ds-immersive,.editor-styles-wrapper) .cta>.wrap,:is(.ds-immersive,.editor-styles-wrapper) .method>.wrap{position:relative;z-index:2}
.prismatic-field{position:absolute;right:-7%;top:-10%;width:52%;height:118%;pointer-events:none;z-index:-1;perspective:900px;overflow:hidden}
.prismatic-field i{display:block;position:absolute;width:84%;height:90%;right:0;top:3%;clip-path:polygon(44% 0,100% 91%,0 73%);transform:rotateY(-22deg) rotateZ(10deg);background:linear-gradient(125deg,transparent 23%,#69cddd26 46%,#efeee81e 49%,transparent 51%,#ff815a2a 79%);animation:ds-facet-drift 10s ease-in-out infinite alternate}
.prismatic-field i:nth-child(2){right:20%;top:19%;width:65%;height:78%;transform:rotateY(30deg) rotateZ(-18deg);background:linear-gradient(150deg,transparent 30%,#ff815a30 60%,#ffbe9924 66%,transparent 68%);animation-delay:-4s}
.prismatic-field i:nth-child(3){right:-17%;top:-9%;width:93%;height:110%;background:linear-gradient(115deg,transparent 25%,#77e1ec22 51%,transparent 55%);animation-delay:-7s}
:is(.ds-immersive,.editor-styles-wrapper) .hero .prismatic-field{opacity:.65;right:-13%;width:50%;z-index:0}:is(.ds-immersive,.editor-styles-wrapper) .hero-visual{z-index:3}
:is(.ds-immersive,.editor-styles-wrapper) .hero:after,:is(.ds-immersive,.editor-styles-wrapper) .page-heading:after,:is(.ds-immersive,.editor-styles-wrapper) .case-top:after{content:'';position:absolute;bottom:0;left:0;width:100%;height:2px;background:linear-gradient(90deg,transparent 5%,#57bfc980 40%,#e4e4dc 53%,#ff815a 63%,transparent 87%);transform-origin:left;animation:ds-light-travel 5s ease-in-out infinite}
:is(.ds-immersive,.editor-styles-wrapper) #studio{position:relative;background:radial-gradient(ellipse at 91% 31%,#67c4d526,transparent 37%),var(--paper)}
:is(.ds-immersive,.editor-styles-wrapper) #studio:after{content:'';position:absolute;right:-12%;top:3%;width:49%;height:110%;clip-path:polygon(44% 0,100% 100%,3% 77%);background:linear-gradient(138deg,transparent 32%,#86cad831 52%,#ffffff80 52.4%,transparent 53.2%,#fba68425 90%);pointer-events:none}
:is(.ds-immersive,.editor-styles-wrapper) .studio-grid{position:relative;z-index:1}:is(.ds-immersive,.editor-styles-wrapper) .studio-photo{border:1px solid #e3cbbc;box-shadow:14px 16px 0 -2px #eaded2,26px 30px 0 -4px #d5dedc;transform:perspective(900px) rotateY(-8deg) rotateZ(2deg);transition:transform .7s cubic-bezier(.2,.65,.2,1)}
:is(.ds-immersive,.editor-styles-wrapper) .services{padding-bottom:115px}:is(.ds-immersive,.editor-styles-wrapper) .service-row{position:relative;isolation:isolate;transition:padding .35s,background .35s}:is(.ds-immersive,.editor-styles-wrapper) .service-row:before{content:'';position:absolute;left:0;top:0;bottom:0;width:3px;background:linear-gradient(#70c6d2,#ff815a);opacity:0;transform:scaleY(.2);transition:opacity .35s,transform .35s}:is(.ds-immersive,.editor-styles-wrapper) .service-row:hover,:is(.ds-immersive,.editor-styles-wrapper) .service-row:focus-visible{padding-left:22px;background:linear-gradient(100deg,#f4d9cc66,transparent 65%)}:is(.ds-immersive,.editor-styles-wrapper) .service-row:hover:before,:is(.ds-immersive,.editor-styles-wrapper) .service-row:focus-visible:before{opacity:1;transform:scaleY(1)}
:is(.ds-immersive,.editor-styles-wrapper) .project-grid{perspective:1200px;align-items:start}:is(.ds-immersive,.editor-styles-wrapper) .project-card{--rx:0deg;--ry:0deg;position:relative;transform-style:preserve-3d;transform:rotateX(var(--rx)) rotateY(var(--ry));transition:transform .35s ease,box-shadow .35s;padding:10px;background:#eee9e1;border:1px solid #dcd6cf;border-radius:5px;box-shadow:0 14px 30px #1118200b}
:is(.ds-immersive,.editor-styles-wrapper) .project-card .cover{position:relative;border-radius:2px;overflow:hidden}:is(.ds-immersive,.editor-styles-wrapper) .project-card .cover:after{content:'';position:absolute;inset:-25% -70%;background:linear-gradient(115deg,transparent 40%,#ffffff38 48%,#ffffff83 50%,transparent 57%);transform:translateX(-45%);transition:transform 1s;pointer-events:none}:is(.ds-immersive,.editor-styles-wrapper) .project-card:hover .cover:after,:is(.ds-immersive,.editor-styles-wrapper) .project-card:focus-visible .cover:after{transform:translateX(35%)}:is(.ds-immersive,.editor-styles-wrapper) .project-card:hover{box-shadow:0 22px 45px #11182017}:is(.ds-immersive,.editor-styles-wrapper) .project-meta{padding:20px 9px 12px}
:is(.ds-immersive,.editor-styles-wrapper) .method{background:var(--ink);color:var(--paper);padding:110px 0 125px;overflow:hidden}:is(.ds-immersive,.editor-styles-wrapper) .method-grid{position:relative;gap:36px;margin-top:54px}:is(.ds-immersive,.editor-styles-wrapper) .method-grid:before{content:'';height:2px;position:absolute;top:29px;left:25px;right:25px;background:linear-gradient(90deg,#68c3cf66,#f6f3e8cc,#ff815abb);transform-origin:left;animation:ds-light-travel 5s ease-in-out infinite}:is(.ds-immersive,.editor-styles-wrapper) .method-item{position:relative;padding:28px 25px 24px;background:#ffffff06;border:1px solid #ffffff21;border-radius:5px;flex-direction:column;display:flex;gap:24px;align-items:start;backdrop-filter:blur(3px)}:is(.ds-immersive,.editor-styles-wrapper) .method-item p{color:#bcc1c6}:is(.ds-immersive,.editor-styles-wrapper) .method-num{background:#151c22;border:1px solid #86c5cc66;color:#fcfaf2;position:relative;z-index:2;border-radius:50%;width:56px;height:56px;display:grid;place-items:center;font-size:18px}
:is(.ds-immersive,.editor-styles-wrapper) .cta{background:#e6ded3;color:var(--ink);overflow:hidden}:is(.ds-immersive,.editor-styles-wrapper) .cta .prismatic-field{opacity:.6;right:8%;width:43%;z-index:0}:is(.ds-immersive,.editor-styles-wrapper) .cta>.wrap{z-index:2}
:is(.ds-immersive,.editor-styles-wrapper) .page-heading{padding:95px 0 90px;overflow:hidden}:is(.ds-immersive,.editor-styles-wrapper) .page-heading .prismatic-field{width:43%;right:1%;opacity:.9}:is(.ds-immersive,.editor-styles-wrapper) .page-heading h1{position:relative;z-index:2}
:is(.ds-immersive,.editor-styles-wrapper) .case-top{overflow:hidden}:is(.ds-immersive,.editor-styles-wrapper) .case-top .prismatic-field{right:-2%;width:42%;opacity:.72}:is(.ds-immersive,.editor-styles-wrapper) .case-cover{border-bottom:2px solid #ff815a}:is(.ds-immersive,.editor-styles-wrapper) .case-story{perspective:1000px}:is(.ds-immersive,.editor-styles-wrapper) .case-mini{transform:rotateY(-8deg) rotateZ(1deg);box-shadow:18px 20px 0 -3px #ddd6cc;transition:transform .6s}:is(.ds-immersive,.editor-styles-wrapper) .case-strip article{padding:22px 22px 24px;background:#ece7df;border:1px solid #d8d2c9;border-top:2px solid #8cafb3}
:is(.ds-immersive,.editor-styles-wrapper) .contact-intro{position:relative;padding:40px 30px;background:var(--ink);color:var(--paper);border-radius:5px;overflow:hidden}:is(.ds-immersive,.editor-styles-wrapper) .contact-intro>h1,:is(.ds-immersive,.editor-styles-wrapper) .contact-intro>.eyebrow,:is(.ds-immersive,.editor-styles-wrapper) .contact-intro>p,:is(.ds-immersive,.editor-styles-wrapper) .contact-detail{position:relative;z-index:2}:is(.ds-immersive,.editor-styles-wrapper) .contact-intro p{color:#bbc1c6}:is(.ds-immersive,.editor-styles-wrapper) .contact-intro .prismatic-field{top:43%;height:65%;width:90%;right:-21%;opacity:.65;z-index:1}:is(.ds-immersive,.editor-styles-wrapper) .contact-layout{gap:70px}:is(.ds-immersive,.editor-styles-wrapper) .form{border:1px solid #d7d0c7;border-top:2px solid #85b5b9;padding:32px;border-radius:5px;background:#faf7f1;position:relative;z-index:2}
:is(.ds-immersive,.editor-styles-wrapper) .success-icon{border-color:#75bfc880;box-shadow:0 0 0 14px #70c5d308,0 0 0 27px #ff815a08}
:is(.ds-immersive,.editor-styles-wrapper) .legal-layout,:is(.ds-immersive,.editor-styles-wrapper) .legal-main{position:relative}:is(.ds-immersive,.editor-styles-wrapper) .legal-main:before{content:'';display:block;width:90px;height:2px;background:linear-gradient(90deg,#74bdc9,#ff815a);margin-bottom:30px}
:is(.ds-immersive,.editor-styles-wrapper) .footer{position:relative;border-top:1px solid #ffffff16}:is(.ds-immersive,.editor-styles-wrapper) .footer:before{content:'';position:absolute;height:1px;top:0;left:0;width:100%;background:linear-gradient(90deg,transparent,#6bbfc988,#ff815a88,transparent);animation:ds-light-travel 6s ease-in-out infinite}
@keyframes ds-facet-drift{from{translate:0 -8px;rotate:-3deg}to{translate:0 14px;rotate:3deg}}
@keyframes ds-light-travel{0%,100%{opacity:.32;transform:scaleX(.72)}50%{opacity:1;transform:scaleX(1)}}
@media(max-width:760px){:is(.ds-immersive,.editor-styles-wrapper) .hero .prismatic-field{display:none}:is(.ds-immersive,.editor-styles-wrapper) .project-grid{perspective:none}:is(.ds-immersive,.editor-styles-wrapper) .project-card{transform:none!important}:is(.ds-immersive,.editor-styles-wrapper) .studio-photo{transform:rotateZ(1deg);box-shadow:8px 10px 0 -2px #eaded2,15px 20px 0 -4px #d5dedc}:is(.ds-immersive,.editor-styles-wrapper) .services{padding-bottom:65px}:is(.ds-immersive,.editor-styles-wrapper) .method{padding:70px 0}:is(.ds-immersive,.editor-styles-wrapper) .method-grid{gap:16px;margin-top:30px}:is(.ds-immersive,.editor-styles-wrapper) .method-grid:before{top:20px;bottom:20px;left:26px;right:auto;width:1px;height:auto}:is(.ds-immersive,.editor-styles-wrapper) .method-item{padding:23px 20px;gap:17px;backdrop-filter:none}:is(.ds-immersive,.editor-styles-wrapper) .method-num{width:44px;height:44px;font-size:15px}:is(.ds-immersive,.editor-styles-wrapper) .contact-layout{gap:30px}:is(.ds-immersive,.editor-styles-wrapper) .contact-intro{padding:30px 24px}:is(.ds-immersive,.editor-styles-wrapper) .form{padding:24px 18px}:is(.ds-immersive,.editor-styles-wrapper) .page-heading{padding:65px 0}:is(.ds-immersive,.editor-styles-wrapper) .case-strip article{padding:22px}.prismatic-field{width:70%;opacity:.6}:is(.ds-immersive,.editor-styles-wrapper) .cta .prismatic-field{right:-10%;width:70%}:is(.ds-immersive,.editor-styles-wrapper) .service-row:hover{padding-left:0}}
@media(prefers-reduced-motion:reduce){:is(.ds-immersive,.editor-styles-wrapper) *, :is(.ds-immersive,.editor-styles-wrapper) *:before, :is(.ds-immersive,.editor-styles-wrapper) *:after{animation:none!important;transition:none!important}:is(.ds-immersive,.editor-styles-wrapper) .studio-photo,:is(.ds-immersive,.editor-styles-wrapper) .case-mini,:is(.ds-immersive,.editor-styles-wrapper) .project-card{transform:none!important}}

/* The theme owns appearance. Core owns the common motion lifecycle. */
:is(.ds-immersive,.editor-styles-wrapper) .prismatic-field,
:is(.ds-immersive,.editor-styles-wrapper) .prismatic-field i,
:is(.ds-immersive,.editor-styles-wrapper) .hero:after,
:is(.ds-immersive,.editor-styles-wrapper) .page-heading:after,
:is(.ds-immersive,.editor-styles-wrapper) .case-top:after,
:is(.ds-immersive,.editor-styles-wrapper) .method-grid:before,
:is(.ds-immersive,.editor-styles-wrapper) .footer:before{animation-play-state:inherit}
.ds-motion-paused,.ds-motion-hidden .prismatic-field,.ds-motion-hidden [data-ds-scene],
.ds-motion-hidden .hero,.ds-motion-hidden .page-heading,.ds-motion-hidden .case-top,
.ds-motion-hidden .method-grid,.ds-motion-hidden .footer{animation-play-state:paused!important}
.ds-immersive.light-motion .prismatic-field{display:none}
.ds-immersive.light-motion :is(.hero,.page-heading,.case-top):after,
.ds-immersive.light-motion .method-grid:before,.ds-immersive.light-motion .footer:before{animation-duration:12s}
.ds-immersive.light-motion :is(.studio-photo,.case-mini,.project-card),
.ds-immersive.reduced-motion :is(.studio-photo,.case-mini,.project-card),
.ds-section-static :is(.studio-photo,.case-mini,.project-card){transform:none!important}
.ds-immersive.reduced-motion *,.ds-immersive.reduced-motion *:before,.ds-immersive.reduced-motion *:after,
.ds-section-static *,.ds-section-static *:before,.ds-section-static *:after,
.editor-styles-wrapper *,.editor-styles-wrapper *:before,.editor-styles-wrapper *:after{animation:none!important;transition:none!important}
.ds-immersive.reduced-motion{scroll-behavior:auto}
.ds-immersive.reduced-motion [data-ds-scene],.ds-immersive.light-motion [data-ds-scene],
.ds-section-static [data-ds-scene]{transform:none!important}
.ds-immersive.reduced-motion .service-row:hover,.ds-immersive.light-motion .service-row:hover{padding-left:0}
.ds-immersive.reduced-motion .project-card:hover img,.ds-section-static .project-card:hover img{transform:none}
/* Editing keeps the finished layout but never moves the selected fields. */
.editor-styles-wrapper :is(.studio-photo,.case-mini,.project-card){transform:none}
.editor-styles-wrapper :is(.hero,.page-heading,.case-top,.method,.cta,.contact-intro){
 background-image:linear-gradient(120deg,transparent 57%,#77e1ec14 71%,transparent 72%),linear-gradient(140deg,transparent 68%,#ff815a18 85%,transparent 86%)}
@media(max-width:760px){:is(.ds-immersive,.editor-styles-wrapper) .contact-intro h1{overflow-wrap:anywhere}}
/* Labels retain contrast after the approved dark contact panel. */
:is(.ds-immersive,.editor-styles-wrapper) .contact-detail .tag{color:#b6bdc4}
.ds-immersive .lost .wrap{min-width:0}
.ds-immersive .lost-code{color:#69717b}
.ds-immersive .lost .eyebrow{justify-content:center}
.ds-immersive .lost p{max-width:min(420px,calc(100% - 20px))}
