.noc-image{margin:0}
.noc-image img,.noc-image picture{display:inline-block;max-width:100%;vertical-align:middle}
.noc-image img{height:auto;object-fit:var(--noc-img-fit,cover)}
:where(.noc-image) img{border-radius:var(--noc-img-radius,0)}
.noc-image__link{display:inline-block;max-width:100%;overflow:hidden;border-radius:var(--noc-img-radius,0)}
.noc-image__caption{margin-top:.5em;font-size:.875em;opacity:.75}
.noc-image--zoom .noc-image__link,.noc-image--zoom picture{overflow:hidden;border-radius:var(--noc-img-radius,0)}
.noc-image--zoom img{transition:transform .6s cubic-bezier(.2,.7,.2,1)}
.noc-image--zoom:hover img{transform:scale(1.06)}
.noc-image--lift img{transition:transform .3s,box-shadow .3s}
.noc-image--lift:hover img{transform:translateY(-6px);box-shadow:0 18px 40px rgba(0,0,0,.15)}
.noc-image--grayscale img{filter:grayscale(1);transition:filter .4s}
.noc-image--grayscale:hover img{filter:none}
@media (prefers-reduced-motion:reduce){.noc-image img{transition:none!important}}
.noc-col>.noc-image:only-child{display:flex;flex-direction:column}
.noc-col>.noc-image:only-child :is(.noc-image__link,picture){display:flex;flex-direction:column;flex:var(--noc-col-fill,0 1 auto);min-height:0}
.noc-col>.noc-image:only-child img{flex:var(--noc-col-fill,0 1 auto);width:var(--noc-fill-w,auto);height:var(--noc-fill-h,auto);min-height:var(--noc-fill-min,0);object-fit:var(--noc-img-fit,cover)}
.noc-button{--d:var(--noc-btn-dur,.25s);display:inline-flex;align-items:center;justify-content:center;gap:.5em;align-self:var(--noc-self,flex-start);box-sizing:border-box;padding:var(--noc-btn-py,.8em) var(--noc-btn-px,1.6em);border:var(--noc-btn-border,1.5px) solid var(--noc-btn-bg,var(--noc-color-accent,#2563eb));border-radius:var(--noc-btn-radius,4px);background-color:var(--noc-btn-bg,var(--noc-color-accent,#2563eb));color:var(--noc-btn-ink,var(--noc-btn-color,#fff));font:inherit;font-size:var(--noc-btn-fs,inherit);font-weight:var(--noc-btn-fw,600);letter-spacing:var(--noc-btn-ls,normal);text-transform:var(--noc-btn-tt,none);line-height:1.2;text-align:center;text-decoration:none;cursor:pointer;transition:background-color var(--d),color var(--d),border-color var(--d),transform var(--d),box-shadow var(--d),filter var(--d)}
.noc-button:hover{background-color:var(--noc-btn-bg-hover,var(--noc-btn-bg,var(--noc-color-accent,#2563eb)));border-color:var(--noc-btn-bg-hover,var(--noc-btn-bg,var(--noc-color-accent,#2563eb)));color:var(--noc-btn-ink,var(--noc-btn-color-hover,var(--noc-btn-color,#fff)));filter:brightness(1.06)}
.noc-button--outline{background-color:transparent;color:var(--noc-btn-ink,var(--noc-btn-bg,var(--noc-color-accent,#2563eb)))}
.noc-button--outline:hover{background-color:var(--noc-btn-bg,var(--noc-color-accent,#2563eb));color:var(--noc-btn-ink,var(--noc-btn-color-hover,var(--noc-btn-color,#fff)));filter:none}
.noc-button--text{padding-inline:0;border-color:transparent;background:none;color:var(--noc-btn-ink,var(--noc-btn-bg,var(--noc-color-accent,#2563eb)))}
.noc-button--text:hover{background:none;border-color:transparent;filter:none;opacity:.75}
.noc-button--sm{font-size:calc(var(--noc-btn-fs,1em)*.875)}
.noc-button--lg{font-size:calc(var(--noc-btn-fs,1em)*1.125);--noc-btn-py:1em;--noc-btn-px:2em}
.noc-button .noc-icon{transition:transform var(--noc-btn-dur,.25s) cubic-bezier(.22,.8,.3,1)}
.noc-button:hover .noc-icon--after{transform:translateX(3px)}
@media (prefers-reduced-motion:reduce){.noc-button,.noc-button .noc-icon{transition:none}}
.noc-sr{position:absolute!important;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
/* Effetti al passaggio (si sommano allo stile globale). */
.noc-button__arrow{display:inline-flex;width:0;margin-left:-.5em;opacity:0;overflow:hidden;transform:translateX(-.5em);transition:width var(--d) cubic-bezier(.22,.8,.3,1),margin var(--d) cubic-bezier(.22,.8,.3,1),opacity var(--d),transform var(--d) cubic-bezier(.22,.8,.3,1)}
.noc-button--fx-arrow:hover .noc-button__arrow,.noc-button--fx-arrow:focus-visible .noc-button__arrow{width:1em;margin-left:0;opacity:1;transform:none}
.noc-button__diag{position:relative;display:inline-block;width:1em;height:1em;overflow:hidden}
.noc-button__diag>span{position:absolute;inset:0;display:flex;transition:transform calc(var(--d)*1.6) cubic-bezier(.22,.8,.3,1)}
.noc-button__diag>span+span{transform:translate(-110%,110%)}
.noc-button--fx-arrow-diag:hover .noc-button__diag>span:first-child{transform:translate(110%,-110%)}
.noc-button--fx-arrow-diag:hover .noc-button__diag>span+span{transform:none}
.noc-button--fx-arrow-circle{gap:.75em}
.noc-button__circle{display:inline-grid;place-items:center;width:2.1em;height:2.1em;margin:-.5em -1em -.5em 0;border:1px solid currentColor;border-radius:50%;transition:background-color var(--d),color var(--d),transform var(--d) cubic-bezier(.22,.8,.3,1)}
.noc-button--text .noc-button__circle{margin-right:0}
.noc-button--fx-arrow-circle:hover .noc-button__circle{background:currentColor;transform:rotate(-45deg)}
.noc-button--fx-arrow-circle:hover .noc-button__circle svg{color:var(--noc-btn-bg,var(--noc-color-accent,#2563eb))}
.noc-button--text.noc-button--fx-arrow-circle:hover .noc-button__circle svg{color:#fff}
.noc-button__roll{display:inline-grid;overflow:hidden;line-height:1.2}
.noc-button__roll>span{grid-area:1/1;transition:transform calc(var(--d)*1.6) cubic-bezier(.65,0,.15,1)}
.noc-button__roll>span+span{transform:translateY(105%)}
.noc-button--fx-reveal:hover .noc-button__roll>span:first-child{transform:translateY(-105%)}
.noc-button--fx-reveal:hover .noc-button__roll>span+span{transform:none}
.noc-button__wave{display:inline-flex;overflow:hidden;line-height:1.2}
.noc-button__c{display:inline-block;text-shadow:0 1.25em currentColor;transition:transform calc(var(--d)*1.8) cubic-bezier(.65,0,.15,1)}
.noc-button--fx-wave:hover .noc-button__c{transform:translateY(-1.25em)}
.noc-button__c:nth-child(2){transition-delay:20ms}.noc-button__c:nth-child(3){transition-delay:40ms}.noc-button__c:nth-child(4){transition-delay:60ms}.noc-button__c:nth-child(5){transition-delay:80ms}.noc-button__c:nth-child(6){transition-delay:100ms}.noc-button__c:nth-child(7){transition-delay:120ms}.noc-button__c:nth-child(8){transition-delay:140ms}.noc-button__c:nth-child(9){transition-delay:160ms}.noc-button__c:nth-child(10){transition-delay:180ms}.noc-button__c:nth-child(n+11){transition-delay:200ms}
.noc-button--fx-underline{background-image:linear-gradient(currentColor,currentColor);background-repeat:no-repeat;background-position:100% 100%;background-size:0 1px;transition:background-size calc(var(--d)*1.6) cubic-bezier(.65,0,.15,1),color var(--d)}
.noc-button--text.noc-button--fx-underline{padding-bottom:.25em;background-size:100% 1px;background-position:0 100%}
.noc-button--fx-underline:hover{background-size:100% 1px;background-position:0 100%}
.noc-button--text.noc-button--fx-underline:hover{animation:noc-btn-line calc(var(--d)*3) cubic-bezier(.65,0,.15,1)}
@keyframes noc-btn-line{0%{background-size:100% 1px;background-position:100% 100%}45%{background-size:0 1px;background-position:100% 100%}46%{background-position:0 100%}100%{background-size:100% 1px;background-position:0 100%}}
.noc-button--fx-material{box-shadow:0 2px 6px rgba(0,0,0,.14),0 1px 2px rgba(0,0,0,.08)}
.noc-button--fx-material:hover{filter:none;transform:translateY(-2px);box-shadow:0 12px 26px -8px rgba(0,0,0,.32),0 2px 6px rgba(0,0,0,.1)}
.noc-button--fx-material:active{transform:none;box-shadow:0 1px 3px rgba(0,0,0,.18)}
.noc-button--next{flex-direction:column}
@media (prefers-reduced-motion:reduce){.noc-button__arrow,.noc-button__diag>span,.noc-button__circle,.noc-button__roll>span,.noc-button__c{transition:none}.noc-button--text.noc-button--fx-underline:hover{animation:none}}
.noc-accordion details{border-bottom:1px solid var(--noc-acc-line,rgba(127,127,127,.25));background:var(--noc-acc-bg,transparent)}
.noc-accordion summary{position:relative;display:flex;align-items:center;justify-content:space-between;gap:1em;padding:var(--noc-acc-pad,1.1rem) 0;cursor:pointer;list-style:none;transition:color .2s}
.noc-accordion summary::-webkit-details-marker{display:none}
.noc-accordion summary::after{content:"";flex:none;width:.75em;height:.75em;background:linear-gradient(currentColor,currentColor) 50%/100% 1.5px no-repeat,linear-gradient(currentColor,currentColor) 50%/1.5px 100% no-repeat;transition:transform .25s}
.noc-accordion details[open]>summary::after{transform:rotate(45deg)}
.noc-accordion--chevron summary::after{width:.5em;height:.5em;margin-right:.2em;background:none;border:solid currentColor;border-width:0 1.5px 1.5px 0;transform:rotate(45deg) translate(-25%,-25%)}
.noc-accordion--chevron details[open]>summary::after{transform:rotate(225deg)}
.noc-accordion__title{margin:0;font-size:1.0625em;font-weight:var(--noc-typo-h3-weight,500);line-height:1.35}
.noc-accordion__body{padding:0 0 var(--noc-acc-pad,1.1rem)}
.noc-accordion__body>:first-child{margin-top:0}
.noc-accordion__body>:last-child{margin-bottom:0}
.noc-accordion--boxed details{margin-bottom:.6rem;border:1px solid var(--noc-acc-line,rgba(127,127,127,.25));border-radius:6px}
.noc-accordion--boxed summary,.noc-accordion--boxed .noc-accordion__body{padding-inline:1.1rem}
.noc-accordion--minimal details{border:0}
.noc-accordion--minimal summary{padding-block:.6rem}
.noc-accordion summary:focus-visible{outline:2px solid currentColor;outline-offset:2px}
@media (prefers-reduced-motion:reduce){.noc-accordion summary::after{transition:none}}
html.lenis,html.lenis body{height:auto}
.lenis:not(.lenis-autoToggle).lenis-stopped{overflow:clip}
.lenis [data-lenis-prevent]{overscroll-behavior:contain}
.lenis.lenis-smooth{scroll-behavior:auto!important}
.lenis.lenis-smooth iframe{pointer-events:none}
