

:root{

  --spring:linear(0, 0.0145 1.7%, 0.0729 4.1%, 0.1756 6.7%, 0.3101 9.6%, 0.4596 12.7%, 0.608 16.0%, 0.7424 19.4%, 0.8542 22.9%, 0.9396 26.6%, 0.9986 30.3%, 1.0341 34.1%, 1.0509 38.0%, 1.0541 42.0%, 1.0487 46.1%, 1.0389 50.3%, 1.0279 54.5%, 1.0177 58.8%, 1.0094 63.2%, 1.0035 67.6%, 0.9997 72.0%, 0.9978 76.6%, 0.9971 81.2%, 0.9972 85.8%, 0.9978 90.5%, 0.9984 95.2%, 1);
  --spring-2:linear(0, 0.0218 1.7%, 0.11 4.1%, 0.2632 6.7%, 0.4582 9.6%, 0.664 12.7%, 0.8511 16.0%, 0.9981 19.4%, 1.0945 22.9%, 1.1407 26.6%, 1.1454 30.3%, 1.1219 34.1%, 1.0845 38.0%, 1.0454 42.0%, 1.0129 46.1%, 0.9911 50.3%, 0.9803 54.5%, 0.9784 58.8%, 0.9822 63.2%, 0.9885 67.6%, 0.9948 72.0%, 0.9995 76.6%, 1.0023 81.2%, 1.0032 85.8%, 1.0029 90.5%, 1.002 95.2%, 1);
  --spring-3:linear(0, 0.0318 1.7%, 0.1596 4.1%, 0.3763 6.7%, 0.6388 9.6%, 0.8924 12.7%, 1.0897 16.0%, 1.204 19.4%, 1.2331 22.9%, 1.196 26.6%, 1.1229 30.3%, 1.0446 34.1%, 0.984 38.0%, 0.9516 42.0%, 0.9462 46.1%, 0.9594 50.3%, 0.9799 54.5%, 0.9983 58.8%, 1.0095 63.2%, 1.0128 67.6%, 1.0102 72.0%, 1.0052 76.6%, 1.0005 81.2%, 0.9977 85.8%, 0.997 90.5%, 0.9978 95.2%, 1);
  --settle:linear(0, 0.0103 1.7%, 0.0518 4.1%, 0.1248 6.7%, 0.2213 9.6%, 0.3313 12.7%, 0.445 16.0%, 0.5545 19.4%, 0.6541 22.9%, 0.7405 26.6%, 0.8124 30.3%, 0.8698 34.1%, 0.9139 38.0%, 0.9465 42.0%, 0.9696 46.1%, 0.9851 50.3%, 0.995 54.5%, 1.0008 58.8%, 1.0037 63.2%, 1.0049 67.6%, 1.0049 72.0%, 1.0044 76.6%, 1.0036 81.2%, 1.0028 85.8%, 1.0021 90.5%, 1.0014 95.2%, 1);

}
@supports not (transition-timing-function:linear(0,1)){
  :root{--spring:cubic-bezier(.16,1,.3,1);--spring-2:cubic-bezier(.34,1.45,.5,1);
    --spring-3:cubic-bezier(.24,1.4,.4,1);--settle:cubic-bezier(.22,1,.28,1)}
}

@property --rv{syntax:'<number>';inherits:false;initial-value:1}
@property --rx0{syntax:'<angle>';inherits:false;initial-value:0deg}
@property --ry0{syntax:'<angle>';inherits:false;initial-value:0deg}
@property --ty0{syntax:'<length>';inherits:false;initial-value:0px}
@property --pz{syntax:'<length>';inherits:false;initial-value:0px}
@property --psc{syntax:'<number>';inherits:false;initial-value:1}
@property --gy{syntax:'<angle>';inherits:false;initial-value:0deg}
@property --gx{syntax:'<angle>';inherits:false;initial-value:0deg}
@property --ink-a{syntax:'<percentage>';inherits:false;initial-value:104%}
@property --ink-b{syntax:'<percentage>';inherits:false;initial-value:118%}
@property --ink-c{syntax:'<percentage>';inherits:false;initial-value:140%}
@property --tx{syntax:'<angle>';inherits:false;initial-value:0deg}
@property --ty2{syntax:'<angle>';inherits:false;initial-value:0deg}
@property --lift{syntax:'<length>';inherits:false;initial-value:0px}
@property --bx{syntax:'<length>';inherits:false;initial-value:0px}
@property --by{syntax:'<length>';inherits:false;initial-value:0px}
@property --bsc{syntax:'<number>';inherits:false;initial-value:1}
@property --f{syntax:'<number>';inherits:false;initial-value:0}
@property --edge{syntax:'<number>';inherits:false;initial-value:0}
@property --uw{syntax:'<percentage>';inherits:false;initial-value:0%}
@property --sva{syntax:'<number>';inherits:false;initial-value:0}

html{--sv:0;--sva:0}

:root{--corsa:24px;--corsina:10px}

[data-reveal]{
  opacity:0;
  transform:translate3d(0,var(--corsa),0) scale(.986);
  transform-origin:50% 100%;
  transition:
    opacity .62s var(--out) calc(var(--i,0) * 62ms),
    transform 1.05s var(--spring) calc(var(--i,0) * 62ms),
    filter .5s var(--out) calc(var(--i,0) * 62ms)}
[data-reveal].is-in{opacity:1;transform:none;filter:none}
[data-reveal].d1{--i:1.4}
[data-reveal].d2{--i:2.8}
[data-reveal].d3{--i:4.2}

h2.words[data-reveal],h3.words[data-reveal]{
  clip-path:none;opacity:1;transform:none;
  -webkit-mask-image:none;mask-image:none;transition:none}

.words{perspective:1000px;perspective-origin:52% 62%}
.display.words .reveal-line{overflow:visible;padding-bottom:0;margin-bottom:0}
.display.words .reveal-line>span{transform:none;transition:none;display:block}
.words .mw{display:inline-block;white-space:nowrap;transform-style:preserve-3d}
.words .mwi{
  display:inline-block;
  opacity:0;
  transform:translate3d(0,.5em,0) rotateX(-58deg) scale(.94);
  transform-origin:50% 130%;
  filter:blur(var(--sfoc,4px))}
h1.words .mwi{--sfoc:5px}

h2.words .mwi,h3.words .mwi{filter:none;
  transform:translate3d(0,.44em,0) rotateX(-52deg) scale(.95)}
.is-in .words .mwi,.words.is-in .mwi{
  opacity:1;transform:none;filter:blur(0);
  transition:
    transform 1.25s var(--spring-3) var(--d,0s),
    opacity .46s var(--out) var(--d,0s),
    filter .34s var(--out) var(--d,0s);
  animation:inkGlow 1.15s var(--out) var(--d,0s) both}
@keyframes inkGlow{
  0%,26%{text-shadow:0 0 0 rgba(201,165,94,0)}
  46%{text-shadow:0 0 26px rgba(201,165,94,.5),0 0 5px rgba(201,165,94,.3)}
  100%{text-shadow:0 0 0 rgba(201,165,94,0)}}
@media (max-width:720px){.words .mwi{filter:none}}

.words.misura .mwi{transform:none!important;filter:none!important;opacity:0!important}

.pop svg path{stroke-dasharray:1 3;stroke-dashoffset:1;
  transition:stroke-dashoffset .6s var(--settle) var(--d,.7s)}
.is-in .pop svg path{stroke-dashoffset:0}

.phone{
  transform:
    translate3d(0,0,var(--pz))
    rotateY(calc(var(--ry,0deg) + var(--ry0) + var(--gy,0deg)))
    rotateX(calc(var(--rx,0deg) + var(--rx0) + var(--gx,0deg)))
    translateY(calc(var(--ty,0px) + var(--ty0)))
    scale(var(--psc))}
.phone-stage[data-reveal]{opacity:1;filter:none;
  transform:translate3d(0,var(--pty,0px),0) scaleY(calc(1 + var(--sva) * .012))}

.phone-stage[data-reveal]::before,.phone-stage[data-reveal]::after,
.phone-stage[data-reveal] .stage-ring{opacity:0}
.phone-stage[data-reveal].is-in::before,.phone-stage[data-reveal].is-in::after{
  opacity:1;transition:opacity .55s var(--out) .26s}
.phone-stage[data-reveal].is-in .stage-ring{
  animation:ringBreathe 20s ease-in-out .5s infinite alternate,
    ringIn .9s var(--out) .3s both}
@keyframes ringIn{from{opacity:0}to{opacity:.85}}
.phone-stage[data-reveal] .phone{--ry0:-19deg;--rx0:11deg;--ty0:52px;--pz:-140px;--psc:.9;opacity:0}
.phone-stage[data-reveal].is-in .phone{
  --ry0:0deg;--rx0:0deg;--ty0:0px;--pz:0px;--psc:1;opacity:1;
  transition:--ry0 1.05s var(--spring-3) .1s,--rx0 1.05s var(--spring-3) .1s,
    --ty0 1s var(--spring-3) .1s,--pz 1s var(--spring-3) .1s,
    --psc 1s var(--spring-3) .1s,opacity .48s var(--out) .1s}

.phone-frame{position:absolute;inset:-1px;pointer-events:none;z-index:9;opacity:0;overflow:visible}
.phone-frame path{fill:none;stroke:#C9A55E;stroke-width:1.4;
  stroke-dasharray:1;stroke-dashoffset:1;vector-effect:non-scaling-stroke}
.phone-stage.is-in .phone-frame{animation:frameShow 1.25s var(--out) .1s both}
.phone-stage.is-in .phone-frame path{animation:frameDraw .8s var(--settle) .14s both}
@keyframes frameDraw{to{stroke-dashoffset:0}}
@keyframes frameShow{0%{opacity:0}10%{opacity:.95}70%{opacity:.95}100%{opacity:0}}

.screen-boot{position:absolute;inset:0;z-index:8;pointer-events:none;border-radius:35px;
  background:linear-gradient(180deg,#100E0C,#1A1512);opacity:1;overflow:hidden}
.screen-boot::after{content:"";position:absolute;inset:0;
  background:radial-gradient(130% 62% at 50% 50%,rgba(255,247,232,.95),rgba(255,247,232,0) 72%);
  opacity:0;transform:scaleY(.02)}
.phone-stage.is-in .screen-boot{animation:bootOut .3s var(--out) .22s both}
.phone-stage.is-in .screen-boot::after{animation:bootFlash .46s var(--out) .19s both}
@keyframes bootOut{0%,42%{opacity:1}100%{opacity:0}}
@keyframes bootFlash{0%{opacity:0;transform:scaleY(.02)}
  38%{opacity:.9;transform:scaleY(.07)}100%{opacity:0;transform:scaleY(1)}}

.phone-stage .scr-top,.phone-stage .scr-elabel,.phone-stage .scard,.phone-stage .scr-tabs{
  opacity:0;transform:translate3d(0,10px,0) scale(.985)}
.phone-stage.is-in .scr-top,.phone-stage.is-in .scr-elabel,
.phone-stage.is-in .scard,.phone-stage.is-in .scr-tabs{
  opacity:1;transform:none;
  transition:opacity .5s var(--out) var(--sd,0s),transform .95s var(--spring) var(--sd,0s)}

.float--punt{opacity:0;transform:translate3d(-38px,20px,0) scale(.9) rotate(-3.5deg)}
.float--vetri{opacity:0;transform:translate3d(38px,20px,0) scale(.9) rotate(3.5deg)}

[data-reveal].is-in .float--punt{animation:fPuntIn .85s var(--spring-2) .78s both,drift 9s var(--in-out) 1.9s infinite}
[data-reveal].is-in .float--vetri{animation:fVetriIn .85s var(--spring-2) .94s both,drift 11s var(--in-out) 2.1s infinite}
@keyframes fPuntIn{from{opacity:0;transform:translate3d(-38px,20px,0) scale(.9) rotate(-3.5deg)}
  to{opacity:1;transform:none}}
@keyframes fVetriIn{from{opacity:0;transform:translate3d(38px,20px,0) scale(.9) rotate(3.5deg)}
  to{opacity:1;transform:none}}

.odo{display:inline-flex;align-items:baseline;font-variant-numeric:tabular-nums;letter-spacing:inherit}
.odo-c{display:inline-block;position:relative;height:1.06em;overflow:hidden;vertical-align:baseline}
.odo-s{display:block;transform:translate3d(0,calc(var(--n,0) * -1.06em),0);
  transition:transform .16s var(--out)}
.odo-s i{display:block;height:1.06em;line-height:1.06em;font-style:normal;text-align:center}
.odo.gira .odo-s{will-change:transform}

.feat,.lang-card,.timb-mode,.plan,
[data-reveal].is-in.feat,[data-reveal].is-in.lang-card,
[data-reveal].is-in.timb-mode,[data-reveal].is-in.plan,
.feat:hover,.timb-mode:hover,a.lang-card:hover{
  transform:
    perspective(1100px)
    translate3d(0,calc((1 - var(--rv)) * var(--corsa) + var(--lift)),0)
    rotateX(var(--tx))
    rotateY(var(--ty2))
    scale(calc(1 - (1 - var(--rv)) * .018));
  transform-origin:50% 100%}
.feat:hover,.timb-mode:hover{--lift:-5px}
.feat[data-reveal],.timb-mode[data-reveal],.plan[data-reveal],.lang-card[data-reveal]{
  --rv:0;opacity:0;
  transition:--rv 1.1s var(--spring) calc(var(--i,0) * 62ms),
    opacity .6s var(--out) calc(var(--i,0) * 62ms),
    box-shadow .4s var(--out)}
.feat[data-reveal].is-in,.timb-mode[data-reveal].is-in,
.plan[data-reveal].is-in,.lang-card[data-reveal].is-in{--rv:1;opacity:1}
.feat .fe-ic,.feat h3,.feat p,.lang-card .lc-name,.lang-card .lc-line{
  transform:translate3d(calc(var(--px2,0) * var(--dz,1) * 1px),calc(var(--py2,0) * var(--dz,1) * 1px),0)}
.feat .fe-ic{--dz:3.2}
.feat h3{--dz:1.9}
.feat p{--dz:.9}
.lang-card .lc-name{--dz:2.4}
.lang-card .lc-line{--dz:1.1}
.lang-grid .lang-card{--rv:0;opacity:0;animation:none;
  transition:--rv 1.1s var(--spring) calc(var(--i,0) * 62ms),
    opacity .6s var(--out) calc(var(--i,0) * 62ms),box-shadow .4s var(--out)}
.lang-grid.is-in .lang-card{--rv:1;opacity:1;animation:none}
a.lang-card:hover{--lift:-3px}

.btn{transform:translate3d(var(--bx),calc(var(--by) + var(--blift,0px)),0) scale(var(--bsc))}
.btn.mag{transition:box-shadow .34s var(--out),background-color .24s var(--ease)}
.btn:not(.mag){transition:box-shadow .34s var(--out),background-color .24s var(--ease),
  transform .55s var(--spring)}
.btn:hover{--blift:-2px}
.btn:active{--bsc:.972;--blift:0px}
.btn .lbl{position:relative;z-index:1;display:inline-flex;align-items:center;gap:.55em;
  transform:translate3d(calc(var(--bx) * .32),calc(var(--by) * .32),0)}
.btn .rip{position:absolute;border-radius:50%;pointer-events:none;z-index:0;
  width:14px;height:14px;margin:-7px 0 0 -7px;
  background:radial-gradient(circle,rgba(255,255,255,.5),rgba(255,255,255,0) 70%);
  animation:ripOut .75s var(--out) forwards}
.btn--onink .rip,.mc-act .btn .rip,.btn--ghost .rip{
  background:radial-gradient(circle,rgba(192,64,42,.38),rgba(192,64,42,0) 70%)}
@keyframes ripOut{from{transform:scale(1);opacity:.85}to{transform:scale(24);opacity:0}}

.gilt-thread{height:2px}
.gilt-thread::after{transform:scaleX(var(--p,0));
  background:linear-gradient(90deg,rgba(168,133,75,.5) 0%,var(--gilt) 44%,var(--gilt-3) 88%,#FFF6E2 100%)}
.gilt-thread::before{content:"";position:absolute;top:50%;left:0;
  width:70px;height:18px;margin:-9px 0 0 -56px;pointer-events:none;will-change:transform;
  transform:translate3d(calc(var(--p,0) * var(--vw,100vw)),0,0) scaleX(calc(.6 + var(--sva) * .7));
  background:radial-gradient(closest-side,rgba(255,246,226,.9),rgba(201,165,94,.34) 46%,transparent 78%);
  opacity:calc(.22 + var(--sva) * .78);
  transition:opacity .32s var(--out),transform .32s var(--out)}

.how-phone{transform:perspective(1400px) rotateY(var(--hry,0deg));
  transition:transform 1.15s var(--spring)}
.hs{opacity:0;transform:translate3d(calc(var(--dir,1) * 66%),0,0) scale(.93);
  filter:brightness(.72);pointer-events:none;
  transition:opacity .34s var(--out),transform .82s var(--spring),filter .5s var(--out)}
.hs.on{opacity:1;transform:none;filter:none;pointer-events:auto;z-index:2}
.hs.was{opacity:0;transform:translate3d(calc(var(--dir,1) * -30%),0,0) scale(.95);
  filter:brightness(.6);z-index:1;
  transition:opacity .5s var(--out),transform .82s var(--spring),filter .5s var(--out)}
.how-phone .screen>.hs-flash{position:absolute;inset:0;z-index:7;pointer-events:none;opacity:0;
  background:linear-gradient(102deg,transparent 38%,rgba(255,255,255,.45) 50%,transparent 62%)}
.how-phone.turn .screen>.hs-flash{animation:hsFlash .64s var(--out)}
@keyframes hsFlash{0%{opacity:0;transform:translateX(-62%)}
  32%{opacity:.9}100%{opacity:0;transform:translateX(72%)}}

.how-steps .step .in{
  opacity:calc(.1 + var(--f,0) * .9);
  filter:blur(calc((1 - var(--f,0)) * 1.1px));
  transform:translate3d(calc((1 - var(--f,0)) * 15px),0,0)
    scale(calc(.945 + var(--f,0) * .055));
  transform-origin:0 50%;
  transition:none}
.how-steps .step .st-n{transform:scale(calc(.86 + var(--f,0) * .14));
  opacity:calc(.16 + var(--f,0) * .84);transition:color .4s var(--out)}

@media (max-width:1080px){
  .how-steps .step .in{opacity:1;filter:none;transform:none}
  .how-steps .step .st-n{opacity:1;transform:none}
}

.trad .task .tx{display:block;perspective:420px}
.tx-w{display:inline-block;white-space:nowrap}
.tx-ch{display:inline-block;will-change:transform,opacity,filter}
.tx-ch.out{animation:chOut .32s var(--in-out) both}
.tx-ch.in{animation:chIn .68s var(--spring-2) both}
@keyframes chOut{to{opacity:0;transform:translate3d(0,-.5em,0) rotateX(50deg);filter:blur(3px)}}
@keyframes chIn{from{opacity:0;transform:translate3d(0,.55em,0) rotateX(-54deg);filter:blur(3px)}
  to{opacity:1;transform:none;filter:blur(0)}}
.trad .task{transition:height .72s var(--settle)}
.trad .chip{transition:transform .55s var(--spring-2),color .22s var(--ease),
  background-color .28s var(--ease),box-shadow .28s var(--ease)}
.trad .chip.on{transform:scale(1.07)}
.trad .chip:active{transform:scale(.93)}

.acc summary::after{
  content:"";position:absolute;right:8px;top:50%;
  width:15px;height:2px;margin-top:-1px;border:0;
  background:currentColor;border-radius:2px;
  transform:rotate(0deg);transition:transform .55s var(--spring)}

.acc details[open] summary::after{transform:rotate(180deg)}
.acc summary .plus{position:absolute;right:14.5px;top:50%;width:2px;height:15px;margin-top:-7.5px;
  background:currentColor;border-radius:2px;transform-origin:50% 50%;
  transition:transform .6s var(--spring-2),opacity .3s var(--out)}
.acc details[open] summary .plus{transform:scaleY(.02) rotate(90deg);opacity:0}
.acc .a{animation:none}
.acc .a>*{opacity:0;transform:translate3d(0,10px,0)}
.acc details[open] .a>*{opacity:1;transform:none;
  transition:opacity .45s var(--out) calc(var(--j,0) * 55ms + 70ms),
    transform .85s var(--spring) calc(var(--j,0) * 55ms + 70ms)}
@supports (interpolate-size:allow-keywords){
  .acc details::details-content{transition:height .64s var(--settle),
    content-visibility .64s allow-discrete,opacity .42s var(--out)}
}

.section--ink::before{content:"";position:absolute;left:0;right:0;top:0;height:1px;z-index:4;
  pointer-events:none;
  background:linear-gradient(90deg,transparent,var(--gilt-2) 18%,var(--gilt-3) 50%,var(--gilt-2) 82%,transparent);
  transform:scaleX(var(--edge));transform-origin:center;
  transition:transform 1.5s var(--settle)}

.doors-line a,.acc .a a,.foot-links a,.rm-note a{
  text-decoration:none;
  background-image:linear-gradient(currentColor,currentColor);
  background-repeat:no-repeat;
  background-position:var(--ux,0%) calc(100% - 1px);
  background-size:var(--uw) 1.5px;
  transition:background-size .45s var(--out),color .22s var(--ease)}
.doors-line a:hover,.acc .a a:hover,.foot-links a:hover,.rm-note a:hover{--uw:100%}

.microtrust .tick path,.plan li svg path{stroke-dasharray:1;stroke-dashoffset:1;

  transition:stroke-dashoffset .55s var(--settle) calc(var(--j,0) * 55ms + 160ms)}
.is-in .microtrust .tick path,.is-in .plan li svg path,
.plan.is-in li svg path{stroke-dashoffset:0}

@media (prefers-reduced-motion:reduce){
  [data-reveal],[data-reveal].is-in,h2[data-reveal],h3[data-reveal],
  .display.words .mwi,.phone-stage .scr-top,.phone-stage .scr-elabel,
  .phone-stage .scard,.phone-stage .scr-tabs,.acc .a>*,.hs,.tx-ch,
  .feat,.lang-card,.timb-mode,.plan,.float--punt,.float--vetri{
    opacity:1!important;transform:none!important;filter:none!important;
    animation:none!important;transition:none!important;
    -webkit-mask-image:none!important;mask-image:none!important}
  .phone-stage[data-reveal] .phone{--ry0:0deg;--rx0:11deg;--ty0:0px;--pz:0px;--psc:1;opacity:1}
  .phone-stage[data-reveal] .phone{--rx0:0deg;--gy:0deg;--gx:0deg}
  .phone-frame,.screen-boot,.gilt-thread::before{display:none!important}
  .phone-stage[data-reveal] .stage-ring{opacity:.85!important;animation:none!important}
  .phone-stage[data-reveal]::before,.phone-stage[data-reveal]::after{opacity:1!important}
  .phone-stage,.how-phone{transform:none!important}
  .section--ink::before{transform:scaleX(1)!important}
  .microtrust .tick path,.plan li svg path,.pop svg path{stroke-dashoffset:0!important}
  .how-steps .step .in{opacity:1!important;filter:none!important;transform:none!important}
}

.sr-o{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;
  clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;border:0}

.sc-dist .sc-dot{
  opacity:0;transform:translate(-50%,calc(-50% - 30px)) scale(.5);
  transition:transform .95s var(--spring-2) calc(var(--i,0) * 78ms + .28s),
    opacity .24s var(--out) calc(var(--i,0) * 78ms + .28s)}
.is-in .sc-dist .sc-dot{opacity:1;transform:translate(-50%,-50%) scale(1)}
.sc-dist .sc-dot.sc-out{background:transparent;opacity:0;
  box-shadow:0 0 0 1.5px var(--faint);
  transform:translate(calc(-50% + 40px),-50%) scale(.5);
  transition:transform 1.15s var(--spring-2) 1.18s,opacity .32s var(--out) 1.18s}
.is-in .sc-dist .sc-dot.sc-out{opacity:.9;transform:translate(-50%,-50%) scale(1)}
.sc-dist .sc-band{transition:transform 1.2s var(--settle) .44s}

.bench-tick{transition:opacity .4s var(--ease) calc(var(--i,0) * 70ms + .32s),
  transform .8s var(--spring-2) calc(var(--i,0) * 70ms + .32s)}
.bench-you{transform:translateX(calc(-50% + var(--slide0,0px)));
  transition:opacity .4s var(--ease) .4s,transform 1.1s var(--spring-3) .4s}
.is-in .bench-you{transform:translateX(-50%)}
.bench-verdict{opacity:0;transform:translate3d(0,10px,0);
  transition:opacity .5s var(--out) .78s,transform .8s var(--spring) .78s}
.is-in .bench-verdict{opacity:1;transform:none}

@media (prefers-reduced-motion:reduce){
  .sc-dist .sc-dot,.sc-dist .sc-dot.sc-out,.bench-tick,.bench-you,.bench-verdict{
    opacity:1!important;transform:translate(-50%,-50%)!important;transition:none!important}
  .bench-tick,.bench-you{transform:translateX(-50%)!important}
  .bench-verdict{transform:none!important}
  .sc-dist .sc-band{transform:scaleX(1)!important}
}

.gilt-thread i{position:absolute;top:1px;width:5px;height:5px;margin:0 0 0 -2.5px;
  border-radius:50%;background:var(--rule-strong);transform:scale(.62);opacity:.85;
  transition:transform .55s var(--spring-2),background-color .45s var(--out),
    box-shadow .45s var(--out),opacity .45s var(--out)}
.gilt-thread i.on{background:var(--gilt-3);transform:scale(1.3);opacity:1;
  box-shadow:0 0 0 1px rgba(168,133,75,.4),0 0 10px rgba(201,165,94,.9)}

@media (max-width:900px){.gilt-thread i{display:none}}

.chapter::before{transform-origin:right;transform:scaleX(0);
  transition:transform 1.15s var(--settle) .2s}
.chapter::after{transform-origin:left;transform:scaleX(0);
  transition:transform 1.15s var(--settle) .2s}
.chapter.is-in::before,.chapter.is-in::after{transform:scaleX(1)}

.nav-links a:not(.btn)::after{transform-origin:left;
  transform:scaleX(0) translateX(var(--uo,0px))}
.nav-links a:not(.btn):hover::after{transform:scaleX(1) translateX(0)}

.eyebrow{text-wrap:balance}

@media (prefers-reduced-motion:reduce){
  .chapter::before,.chapter::after{transform:scaleX(1)!important}
  .gilt-thread i{display:none}
}

.nav-links a:not(.btn).qui{opacity:1}
.nav-links a:not(.btn).qui::after{transform:scaleX(1) translateX(0);
  background:var(--gilt-2);opacity:.75}

@media (min-width:1241px){
  .float--vetri{top:73%;right:-92px}
}

header.nav{transition:background-color .5s var(--ease),box-shadow .4s var(--ease),
  backdrop-filter .4s var(--ease),color .5s var(--ease)}
header.nav.scuro.scrolled{background:rgba(18,15,13,.72);
  box-shadow:0 1px 0 rgba(201,165,94,.16)}
header.nav.scuro .brand,
header.nav.scuro .nav-links a:not(.btn){color:var(--cream);
  transition:color .5s var(--ease)}
header.nav.scuro .menu-btn span{background:var(--cream)}
header.nav.scuro .menu-btn:hover{background:rgba(234,227,212,.12)}
header.nav.scuro::after{background:linear-gradient(90deg,transparent,rgba(201,165,94,.42) 24%,
  rgba(201,165,94,.42) 76%,transparent)}
header.nav.scuro .nav-links a:not(.btn).qui::after{background:var(--gilt-3)}

.rc-meter i{transition:transform 1.1s var(--settle) calc(var(--i,0) * 90ms + .34s)}
@media (prefers-reduced-motion:reduce){.rc-meter i{transform:scaleX(1)!important}}

@property --g{syntax:'<number>';inherits:false;initial-value:1}

.timb-scene{perspective:700px}
.timb-fone{
  --g:0;
  transform:
    translate3d(calc((1 - var(--g)) * 86px),0,0)
    rotate(calc((1 - var(--g)) * 7deg));
  animation:none}
.timb-scene.tocca .timb-fone{animation:timbColpo .5s var(--spring-2) both}
@keyframes timbColpo{
  0%{transform:translate3d(0,0,0)}
  22%{transform:translate3d(-7px,0,0) scale(1.03)}
  100%{transform:translate3d(0,0,0)}}

.timb-rip{animation:timbAttesa 2.8s var(--in-out) infinite;opacity:0}
.timb-rip+.timb-rip{animation-delay:1.4s}
@keyframes timbAttesa{0%,100%{transform:scale(1);opacity:0}
  40%{transform:scale(1.28);opacity:.2}}
.timb-scene.tocca .timb-rip{animation:timbOnda .95s var(--out) both}
.timb-scene.tocca .timb-rip+.timb-rip{animation-delay:.14s}
@keyframes timbOnda{0%{transform:scale(.9);opacity:.85}
  100%{transform:scale(2.5);opacity:0}}

.timb-disc{transition:transform .5s var(--spring-2),box-shadow .5s var(--out)}
.timb-scene.tocca .timb-disc{transform:scale(1.06)}
.timb-disc svg{transition:color .35s var(--out),transform .6s var(--spring-2)}
.timb-scene.tocca .timb-disc svg{color:var(--gilt-text);transform:scale(1.12)}
.timb-glow{opacity:calc(.35 + var(--gg,0) * .65);
  transition:opacity .5s var(--out),transform .6s var(--out)}
.timb-scene.tocca .timb-glow{--gg:1;transform:scale(1.25)}

.tf-attesa{position:absolute;inset:0;z-index:2;display:grid;place-items:center;
  color:var(--gilt);opacity:1;transition:opacity .28s var(--out)}
.tf-attesa svg{width:17px;height:17px;animation:tfPulsa 1.9s var(--in-out) infinite}
@keyframes tfPulsa{0%,100%{opacity:.4;transform:scale(.94)}50%{opacity:1;transform:scale(1.06)}}
.timb-scene.tocca .tf-attesa{opacity:0}
.tf-ok,.tf-t,.tf-k{opacity:0;transform:translate3d(0,5px,0)}
.tf-ok path{stroke-dasharray:1;stroke-dashoffset:1}
.timb-scene.tocca .tf-ok{opacity:1;transform:none;transition:opacity .3s var(--out) .1s,transform .6s var(--spring-2) .1s}
.timb-scene.tocca .tf-ok path{stroke-dashoffset:0;transition:stroke-dashoffset .42s var(--settle) .18s}
.timb-scene.tocca .tf-t{opacity:1;transform:none;transition:opacity .3s var(--out) .26s,transform .6s var(--spring-2) .26s}
.timb-scene.tocca .tf-k{opacity:1;transform:none;transition:opacity .3s var(--out) .34s,transform .6s var(--spring-2) .34s}

.timb-confirm{opacity:0;transform:translate3d(0,12px,0) scale(.985);
  transition:opacity .4s var(--out),transform .75s var(--spring)}
.timb-stage.tocca-ok .timb-confirm{opacity:1;transform:none;transition-delay:.34s}
.timb-confirm .ok{transform:scale(.5);opacity:0;
  transition:transform .6s var(--spring-2),opacity .3s var(--out)}
.timb-stage.tocca-ok .timb-confirm .ok{transform:none;opacity:1;transition-delay:.62s}
.timb-confirm .ok path{stroke-dasharray:1;stroke-dashoffset:1;
  transition:stroke-dashoffset .4s var(--settle) .74s}
.timb-stage.tocca-ok .timb-confirm .ok path{stroke-dashoffset:0}

@media (prefers-reduced-motion:reduce){
  .timb-fone{--g:1;transform:none!important;animation:none!important}
  .timb-rip{animation:none!important;opacity:.2!important}
  .tf-attesa{display:none!important}
  .tf-ok,.tf-t,.tf-k,.timb-confirm,.timb-confirm .ok{
    opacity:1!important;transform:none!important;transition:none!important}
  .tf-ok path,.timb-confirm .ok path{stroke-dashoffset:0!important}
}

@property --w{syntax:'<number>';inherits:false;initial-value:1}
@property --pw{syntax:'<number>';inherits:false;initial-value:0}

html.scrub [data-reveal]{
  opacity:clamp(0,calc(var(--rv) * 1.9),1);
  transform:translate3d(0,calc((1 - var(--rv)) * var(--corsa)),0)
    scale(calc(1 - (1 - var(--rv)) * .014));
  transform-origin:50% 100%;
  filter:none;
  transition:none}

html.scrub .q-list[data-reveal],
html.scrub h2.words[data-reveal],html.scrub h3.words[data-reveal]{
  opacity:1;transform:none;filter:none}

html.scrub [data-reveal].posato{transform:none}

html.scrub .words .mwi{
  opacity:clamp(0,calc(var(--w) * 1.7),1);
  transform:translate3d(0,calc((1 - var(--w)) * .5em),0)
    rotateX(calc((1 - var(--w)) * -58deg))
    scale(calc(.94 + var(--w) * .06));
  filter:blur(max(0px,calc((1 - var(--w)) * var(--sfoc,4px))));
  transition:none;animation:none}
html.scrub h2.words .mwi,html.scrub h3.words .mwi{
  filter:none;
  transform:translate3d(0,calc((1 - var(--w)) * .44em),0)
    rotateX(calc((1 - var(--w)) * -52deg))
    scale(calc(.95 + var(--w) * .05))}
@media (max-width:720px){html.scrub .words .mwi{filter:none}}

html.scrub .pop svg path{stroke-dashoffset:var(--pw);transition:none}

html.scrub .feat,html.scrub .lang-card,html.scrub .timb-mode,html.scrub .plan{
  transform:perspective(1100px)
    translate3d(0,calc((1 - var(--rv)) * var(--corsa) + var(--lift)),0)
    rotateX(var(--tx)) rotateY(var(--ty2))
    scale(calc(1 - (1 - var(--rv)) * .018));
  transform-origin:50% 100%;
  opacity:clamp(0,calc(var(--rv) * 1.9),1);
  transition:box-shadow .4s var(--out);
  animation:none}
html.scrub .lang-grid.is-in .lang-card{animation:none}

html.scrub .lang-grid[data-reveal]{opacity:1;transform:none}

html.scrub .phone-stage[data-reveal]{
  opacity:1;filter:none;
  transform:translate3d(0,var(--pty,0px),0) scaleY(calc(1 + var(--sva) * .012))}
html.scrub .phone-stage[data-reveal] .phone{
  --ry0:calc((1 - var(--rv)) * -19deg);
  --rx0:calc((1 - var(--rv)) * 11deg);
  --ty0:calc((1 - var(--rv)) * 52px);
  --pz:calc((1 - var(--rv)) * -140px);
  --psc:calc(1 - (1 - var(--rv)) * .1);
  opacity:clamp(0,calc(var(--rv) * 2.2),1);
  transition:none}

html.scrub .phone-stage[data-reveal] .stage-ring{
  opacity:calc(clamp(0,calc((var(--rv) - .35) * 2.4),1) * .85);
  animation:ringBreathe 20s ease-in-out infinite alternate}

html.scrub .section--ink::before{transform:scaleX(0)}
html.scrub .section--ink.is-in::before{transform:scaleX(1)}
