/* ==========================================================================
   Asterisco Tech — Restyling per Elementor
   Stili per header, footer, Home e Solutions. Tutte le classi iniziano con "at-".
   ========================================================================== */

:root{
  --at-navy:#0E1022;
  --at-navy-2:#14172E;
  --at-ink:#EDEEF5;
  --at-muted:#A3A7C2;
  --at-soft:#C9CCE0;
  --at-orange:#F29100;
  --at-amber:#FFC37A;
  --at-blue:#1B72B8;
  --at-light:#F2F2F4;
  --at-ease:cubic-bezier(.2,.7,.2,1);
  --at-mono:'JetBrains Mono',ui-monospace,monospace;
}

/* ---------- base e reset di Elementor ---------- */
body.at-site{
  margin:0 !important;background:var(--at-navy);color:var(--at-ink);font-family:'Archivo',sans-serif;overflow-x:clip;
  --container-default-padding-top:0px;--container-default-padding-right:0px;--container-default-padding-bottom:0px;--container-default-padding-left:0px;
  --widgets-spacing:0px;--widgets-spacing-row:0px;--widgets-spacing-column:0px;--kit-widget-spacing:0px;
}
body.at-site :is(h1,h2,h3,h4,h5,h6,p,button,input,select,textarea){font-family:'Archivo',sans-serif !important}
body.at-site :is(h1,h2,h3,h4,h5,h6){color:inherit}
.at-site a{color:var(--at-orange);text-decoration:none}
.at-site a:hover{color:#FFB347}
.at-site .elementor-heading-title{font-family:inherit;font-size:inherit;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0 !important;text-transform:inherit}
.at-site .elementor-widget-text-editor{font-family:inherit;color:inherit}
.at-site .elementor-widget-text-editor p{margin:0 !important}
.at-site .elementor-widget:not(:last-child){margin-block-end:0}
.at-site .e-con{--gap:0px;--row-gap:0px;--column-gap:0px}
.at-site .elementor-widget-image img{display:block}
.at-site .elementor-widget-container{height:100%}
.at-site .elementor-button{all:unset;box-sizing:border-box;cursor:pointer}
.at-site .elementor-button-content-wrapper{display:inline-flex;align-items:center;gap:10px}

/* lingua: nei blocchi bilingui (header, footer, catalogo) WPML imposta <html lang> */
html[lang^="it"] .at-site .en,html[lang^="it"] body.at-site .en{display:none !important}
html:not([lang^="it"]) body.at-site .it{display:none !important}

/* ---------- elementi comuni ---------- */
.at-wrap{width:100%;max-width:1440px;margin-left:auto !important;margin-right:auto !important;padding-left:64px !important;padding-right:64px !important;box-sizing:border-box}
.at-kicker{font-family:var(--at-mono);font-size:13px;letter-spacing:.14em;text-transform:uppercase;color:var(--at-orange)}
.at-kicker--dark{color:#A35F00}
.at-h1{font-weight:150;font-size:clamp(52px,8.4vw,132px);line-height:.98;letter-spacing:-.035em;color:#FFFFFF}
.at-h2{font-weight:150;font-size:clamp(40px,5vw,72px);line-height:1.02;letter-spacing:-.03em}
.at-h2--xl{font-weight:100;font-size:clamp(48px,7.4vw,118px);line-height:.98;letter-spacing:-.04em}
.at-h2 b,.at-h1 b,.at-h2 strong{font-weight:500}
.at-lead{font-size:19px;line-height:1.6;font-weight:300;color:var(--at-soft)}
.at-body{font-size:18px;line-height:1.7;font-weight:300;color:var(--at-soft)}
.at-orange{color:var(--at-orange)}
.shimmer{background:linear-gradient(90deg,#F29100 0%,#FFC37A 25%,#F29100 50%,#FFC37A 75%,#F29100 100%);background-size:200% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:at-shim 5s linear infinite}
@keyframes at-shim{to{background-position:-200% 0}}
.grad-txt{background:linear-gradient(90deg,#F29100 0%,#FFC37A 60%,#FF8A5B 100%);-webkit-background-clip:text;background-clip:text;color:transparent}
.blink{animation:at-blink 1.6s ease-in-out infinite}
@keyframes at-blink{0%,100%{opacity:1}50%{opacity:.25}}
.at-dot{display:inline-block;width:8px;height:8px;border-radius:999px;background:var(--at-orange);margin-right:12px !important;vertical-align:middle}

/* bottoni (widget Pulsante con classe at-btn + variante) */
.at-site .at-btn .elementor-button{display:inline-flex;align-items:center;gap:10px;min-height:52px;padding:0 28px;border-radius:999px;font-family:'Archivo',sans-serif;font-size:15px;line-height:1;transition:background .3s,color .3s,border-color .3s}
.at-site .at-btn--primary .elementor-button{background:var(--at-orange);color:var(--at-navy);font-weight:600}
.at-site .at-btn--primary .elementor-button:hover{background:#FFB347;color:var(--at-navy)}
.at-site .at-btn--ghost .elementor-button{border:1px solid rgba(255,255,255,.4);color:#FFFFFF}
.at-site .at-btn--ghost .elementor-button:hover{border-color:#FFFFFF;color:#FFFFFF}
.at-site .at-btn--outline .elementor-button{min-height:48px;padding:0 26px;border:1px solid rgba(242,145,0,.7);color:var(--at-orange)}
.at-site .at-btn--outline .elementor-button:hover{background:var(--at-orange);color:var(--at-navy)}
.at-site .at-btn--dark .elementor-button{min-height:48px;padding:0 26px;border:1px solid var(--at-navy);color:var(--at-navy)}
.at-site .at-btn--dark .elementor-button:hover{background:var(--at-navy);color:#FFFFFF}
.at-site .at-btn--white .elementor-button{min-height:48px;padding:0 24px;background:#FFFFFF;color:var(--at-navy);font-weight:500}
.at-site .at-btn .elementor-button-icon svg{width:18px;height:18px;fill:currentColor}
.at-site .at-btn--arrow .elementor-button-text::after{content:"→";display:inline-block;margin-left:10px !important;transition:translate .3s var(--at-ease)}
.at-site .at-btn--arrow .elementor-button:hover .elementor-button-text::after{translate:4px 0}
.at-site .screen-reader-text{position:absolute !important;width:1px;height:1px;padding:0;margin:-1px !important;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.at-hero-row > *,.at-sol-tools > .elementor-widget,.at-news-tools > .elementor-widget,.at-pill-wrap{width:auto !important}
.shine .elementor-button,a.shine,button.shine{position:relative;overflow:hidden;isolation:isolate}
.shine .elementor-button::after,a.shine::after,button.shine::after{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 30%,rgba(255,255,255,.6) 50%,transparent 70%);translate:-130% 0;transition:translate .8s var(--at-ease);pointer-events:none;z-index:-1}
.shine .elementor-button:hover::after,a.shine:hover::after,button.shine:hover::after{translate:130% 0}
@keyframes at-shineLoop{0%,70%{translate:-130% 0}100%{translate:130% 0}}
.shine-loop .elementor-button::after{animation:at-shineLoop 4.5s ease-in-out infinite}

/* ---------- animazioni di ingresso ---------- */
@keyframes rvUp{from{opacity:0;translate:0 70px}to{opacity:1;translate:0 0}}
@keyframes rvMask{from{opacity:0;clip-path:inset(0 0 100% 0);translate:0 48px}to{opacity:1;clip-path:inset(0 0 -20% 0);translate:0 0}}
@keyframes rvLeft{from{opacity:0;translate:-90px 0}to{opacity:1;translate:0 0}}
@keyframes rvRight{from{opacity:0;translate:90px 0}to{opacity:1;translate:0 0}}
@keyframes rvZoom{from{opacity:0;scale:.88}to{opacity:1;scale:1}}
@keyframes rvBlur{from{opacity:0;filter:blur(16px);translate:0 36px}to{opacity:1;filter:blur(0);translate:0 0}}
@keyframes rvWipe{from{clip-path:inset(0 100% 0 0 round 24px)}to{clip-path:inset(0 0 0 0 round 24px)}}
@keyframes par{from{translate:0 -7%}to{translate:0 7%}}
@keyframes prog{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@keyframes navbg{from{background-color:rgba(14,16,34,0);border-bottom-color:rgba(255,255,255,0)}to{background-color:rgba(14,16,34,.82);border-bottom-color:rgba(255,255,255,.08)}}
@media (prefers-reduced-motion: no-preference){
  .in{animation:rvUp 1.1s var(--at-ease) both}
  .in-mask{animation:rvMask 1.3s var(--at-ease) both}
  .in1{animation-delay:.05s}.in2{animation-delay:.25s}.in3{animation-delay:.6s}.in4{animation-delay:.85s}
  @supports (animation-timeline: view()){
    .rv{animation:rvUp linear both}
    .rv-mask{animation:rvMask linear both}
    .rv-left{animation:rvLeft linear both}
    .rv-right{animation:rvRight linear both}
    .rv-zoom{animation:rvZoom linear both}
    .rv-blur{animation:rvBlur linear both}
    .rv-wipe{animation:rvWipe linear both}
    .rv,.rv-mask,.rv-left,.rv-right,.rv-zoom,.rv-blur,.rv-wipe{animation-timeline:view();animation-range:entry 0% entry 75%}
    .d1{animation-range:entry 10% entry 85%}
    .d2{animation-range:entry 20% entry 95%}
    .d3{animation-range:entry 30% entry 100%}
    .rv-end{animation-range:entry 0% entry 50%}
    .par img{animation:par linear both;animation-timeline:view();animation-range:cover 0% cover 100%}
    .at-nav-wrap{animation:navbg linear both;animation-timeline:scroll(root);animation-range:0px 220px}
    .at-progress{animation:prog linear both;animation-timeline:scroll(root)}
  }
}

/* ==========================================================================
   HEADER (Theme Builder) — widget HTML
   ========================================================================== */
.at-nav-wrap{position:sticky;top:0;z-index:50;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);background:rgba(14,16,34,.82);border-bottom:1px solid rgba(255,255,255,.08);transition:background-color .3s,border-color .3s}
@supports (animation-timeline: scroll()){.at-nav-wrap{background:transparent}}
body.at-site.at-solid-header .at-nav-wrap{background:rgba(14,16,34,.86)}
.elementor-location-header{position:sticky;top:0;z-index:50}
.at-header{display:flex;align-items:center;justify-content:space-between;gap:24px;max-width:1440px;margin:0 auto !important;padding:22px 64px;box-sizing:border-box}
.at-logo{flex-shrink:0;display:block}
.at-logo img,.fm-bar > img{height:40px;width:auto !important;max-width:none !important;display:block}
.fm-bar > img{flex-shrink:0}
.at-logo .logo-light{display:none}
.at-nav{display:flex;align-items:center;gap:32px;font-size:14px;letter-spacing:.08em;text-transform:uppercase}
.nl{color:#C9CCE0 !important;position:relative;display:inline-flex;align-items:center;gap:6px;min-height:44px}
.nl::after{content:"";position:absolute;left:0;right:0;bottom:6px;height:1px;background:var(--at-orange);transform:scaleX(0);transform-origin:right;transition:transform .4s var(--at-ease)}
.nl:hover,.dd:hover .nl,.nl.cur{color:#FFFFFF !important}
.nl:hover::after,.dd:hover .nl::after,.nl.cur::after{transform:scaleX(1);transform-origin:left}
.at-actions{display:flex;align-items:center;gap:14px}
.lang-grp{display:flex;gap:2px;padding:3px;border:1px solid rgba(255,255,255,.2);border-radius:999px}
.lb{display:inline-flex;align-items:center;justify-content:center;min-width:44px;height:40px;padding:0 10px;border-radius:999px;color:#A3A7C2 !important;font-family:var(--at-mono);font-size:12px;letter-spacing:.08em;transition:background .3s,color .3s}
.lb:hover{color:#FFFFFF !important}
.lb.on{background:var(--at-orange);color:var(--at-navy) !important}
.nav-cta{display:inline-flex;align-items:center;min-height:44px;padding:0 22px;border:1px solid rgba(255,255,255,.35);border-radius:999px;color:#FFFFFF !important;font-size:14px;letter-spacing:.04em}
.burger{position:relative;width:44px;height:44px;border-radius:999px;border:1px solid rgba(255,255,255,.2);background:transparent;color:#FFFFFF;cursor:pointer;padding:0;transition:background .35s,border-color .35s,color .35s}
.burger .bl{position:absolute;left:12px;height:1.5px;border-radius:2px;background:currentColor;transition:width .45s var(--at-ease),translate .45s var(--at-ease)}
.burger .bl1{top:17px;width:20px}.burger .bl2{top:25px;width:12px}
.burger:hover{background:var(--at-orange);border-color:var(--at-orange);color:var(--at-navy)}
.burger:hover .bl1{width:12px;translate:8px 0}.burger:hover .bl2{width:20px}
.burger::after{content:"";position:absolute;inset:-1px;border-radius:inherit;border:1px solid var(--at-orange);opacity:0;pointer-events:none}
.burger:hover::after{animation:at-ring .9s var(--at-ease)}
@keyframes at-ring{from{opacity:.9;transform:scale(1)}to{opacity:0;transform:scale(1.6)}}
.at-progress{position:absolute;left:0;bottom:-1px;height:2px;width:100%;background:linear-gradient(90deg,#1B72B8,#F29100,#FFC37A);transform:scaleX(0);transform-origin:0 50%}

/* mega menu */
.dd{display:flex;align-items:center}
.dd-chev{transition:rotate .35s var(--at-ease)}
.dd:hover .dd-chev,.dd:focus-within .dd-chev{rotate:180deg;color:var(--at-orange)}
.dd-panel{position:absolute;left:0;right:0;top:calc(100% - 22px);padding-top:22px;visibility:hidden;transition:visibility 0s linear .6s;text-transform:none;letter-spacing:normal;z-index:40}
.dd:hover .dd-panel,.dd:focus-within .dd-panel{visibility:visible;transition-delay:0s}
.mega-sheet{background:#F5F5F7;color:var(--at-navy);border-radius:0 0 36px 36px;box-shadow:0 50px 120px rgba(0,0,0,.55);clip-path:inset(0 0 100% 0 round 0 0 36px 36px);transition:clip-path .6s cubic-bezier(.7,0,.2,1)}
.dd:hover .mega-sheet,.dd:focus-within .mega-sheet{clip-path:inset(0 0 0 0 round 0 0 36px 36px)}
.mega{position:relative;display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:40px;max-width:1440px;margin:0 auto !important;padding:44px 64px 48px;box-sizing:border-box}
.mega::before{content:"";position:absolute;left:64px;right:64px;top:0;height:1px;background:linear-gradient(90deg,#F29100,rgba(242,145,0,0))}
.mg-intro{grid-column:span 3;display:flex;flex-direction:column}
.mg-list{grid-column:span 5;display:flex;flex-direction:column;justify-content:center}
.mg-lab{font-family:var(--at-mono);font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:#A35F00}
.mg-title{margin:18px 0 14px !important;font-size:42px;font-weight:200;line-height:1.02;letter-spacing:-.035em;color:var(--at-navy)}
.mg-desc{margin:0 0 28px !important;font-size:15px;line-height:1.6;color:#4A4E66}
.mg-cta{align-self:flex-start;display:inline-flex;align-items:center;gap:10px;min-height:48px;padding:0 8px 0 22px;border-radius:999px;background:var(--at-navy);color:#FFFFFF !important;font-size:14px;transition:background .3s}
.mg-cta:hover{background:#1B1F3D}
.mg-cta .go{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:999px;background:var(--at-orange);color:var(--at-navy);transition:rotate .35s}
.mg-cta:hover .go{rotate:-45deg}
.mg-row{position:relative;display:grid;grid-template-columns:40px minmax(0,1fr) 40px;align-items:center;gap:12px;padding:16px 0;border-bottom:1px solid #DCDDE4;color:var(--at-navy) !important}
.mg-row:first-child{border-top:1px solid #DCDDE4}
.mg-row::after{content:"";position:absolute;left:0;bottom:-1px;height:1px;width:100%;background:var(--at-orange);transform:scaleX(0);transform-origin:left;transition:transform .5s var(--at-ease)}
.mg-row:hover::after{transform:scaleX(1)}
.mg-num{font-family:var(--at-mono);font-size:12px;color:#6B6E85;transition:color .3s}
.mg-name{display:block;font-size:30px;font-weight:250;letter-spacing:-.03em;line-height:1.1;transition:translate .5s var(--at-ease),font-weight .3s}
.mg-sub{display:block;margin-top:4px !important;font-size:13px;color:#555970;transition:translate .5s var(--at-ease)}
.mg-go{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:999px;border:1px solid #C9CBD6;color:var(--at-navy);transition:background .3s,border-color .3s,rotate .35s}
.mg-row:hover .mg-num{color:#A35F00}
.mg-row:hover .mg-name{translate:14px 0;font-weight:400}
.mg-row:hover .mg-sub{translate:14px 0}
.mg-row:hover .mg-go{background:var(--at-orange);border-color:var(--at-orange);rotate:-45deg}
.mg-prev{grid-column:span 4;position:relative;border-radius:24px;overflow:hidden;background:var(--at-navy);color:#FFFFFF;min-height:340px}
.mg-prev .pv{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;scale:1.08;transition:opacity .55s,scale 1s var(--at-ease)}
.mg-prev .shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(14,16,34,0) 50%,rgba(14,16,34,.85) 100%)}
.mg-prev .cp{position:absolute;left:20px;bottom:20px;font-size:22px;font-weight:300;letter-spacing:-.02em;opacity:0;translate:0 10px;transition:opacity .4s,translate .5s var(--at-ease)}
.mg-prev .pv1{opacity:1;scale:1}.mg-prev .cp1{opacity:1;translate:0 0}
.mega:has(.r2:hover) .pv1,.mega:has(.r3:hover) .pv1,.mega:has(.r4:hover) .pv1{opacity:0;scale:1.08}
.mega:has(.r2:hover) .cp1,.mega:has(.r3:hover) .cp1,.mega:has(.r4:hover) .cp1{opacity:0;translate:0 10px}
.mega:has(.r2:hover) .pv2,.mega:has(.r3:hover) .pv3,.mega:has(.r4:hover) .pv4{opacity:1;scale:1}
.mega:has(.r2:hover) .cp2,.mega:has(.r3:hover) .cp3,.mega:has(.r4:hover) .cp4{opacity:1;translate:0 0}
@keyframes mgIn{from{opacity:0;translate:0 26px}to{opacity:1;translate:0 0}}
.dd:hover .mg-st,.dd:focus-within .mg-st{animation:mgIn .7s var(--at-ease) both}
.mg-st.s1{animation-delay:.12s}.mg-st.s2{animation-delay:.18s}.mg-st.s3{animation-delay:.24s}.mg-st.s4{animation-delay:.3s}.mg-st.s5{animation-delay:.36s}
/* header chiaro mentre il mega menu è aperto */
.at-nav-wrap:has(.dd:hover),.at-nav-wrap:has(.dd:focus-within){background-color:#F5F5F7 !important;border-bottom-color:#F5F5F7 !important;backdrop-filter:none !important;-webkit-backdrop-filter:none !important}
.at-nav-wrap:has(.dd:hover) .logo-dark,.at-nav-wrap:has(.dd:focus-within) .logo-dark{display:none}
.at-nav-wrap:has(.dd:hover) .logo-light,.at-nav-wrap:has(.dd:focus-within) .logo-light{display:block}
.at-nav-wrap:has(.dd:hover) .nl,.at-nav-wrap:has(.dd:focus-within) .nl{color:#4A4E66 !important}
.at-nav-wrap .dd:hover .nl,.at-nav-wrap .dd:focus-within .nl,.at-nav-wrap:has(.dd:hover) .nl.cur{color:var(--at-navy) !important}
.at-nav-wrap:has(.dd:hover) .lang-grp{border-color:rgba(14,16,34,.18)}
.at-nav-wrap:has(.dd:hover) .lb:not(.on){color:#4A4E66 !important}
.at-nav-wrap:has(.dd:hover) .nav-cta{color:var(--at-navy) !important;border-color:rgba(14,16,34,.3)}
.at-nav-wrap:has(.dd:hover) .burger:not(:hover){color:var(--at-navy);border-color:rgba(14,16,34,.25)}
.at-nav-wrap:has(.dd:hover) .at-progress{opacity:0}
.dd-dim{position:absolute;left:0;right:0;top:100%;height:100vh;background:rgba(6,8,20,.55);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .35s,visibility 0s linear .35s}
.at-nav-wrap:has(.dd:hover) .dd-dim,.at-nav-wrap:has(.dd:focus-within) .dd-dim{opacity:1;visibility:visible;transition-delay:0s}

/* menu a schermo intero */
.fm-overlay{position:fixed;inset:0;z-index:1000;display:none}
.fm-overlay.is-open{display:block;animation:fmIn .9s cubic-bezier(.7,0,.2,1) both}
.fm-overlay.is-closing{display:block;animation:fmOut .8s cubic-bezier(.65,0,.35,1) .15s both}
@keyframes fmIn{from{clip-path:circle(0% at min(calc(100% - 86px), calc(50% + 634px)) 44px)}to{clip-path:circle(160% at min(calc(100% - 86px), calc(50% + 634px)) 44px)}}
@keyframes fmOut{from{clip-path:circle(160% at min(calc(100% - 86px), calc(50% + 634px)) 44px)}to{clip-path:circle(0% at min(calc(100% - 86px), calc(50% + 634px)) 44px)}}
@keyframes fmItem{from{opacity:0;translate:0 70px}to{opacity:1;translate:0 0}}
@keyframes fmFade{from{opacity:0;translate:0 24px}to{opacity:1;translate:0 0}}
@keyframes fmLeave{from{opacity:1;translate:0 0}to{opacity:0;translate:0 -40px}}
.fm{position:relative;width:100%;height:100%;box-sizing:border-box;background:#0B0D1E;color:var(--at-ink);overflow:hidden;display:flex;flex-direction:column}
.fm a{color:#FFFFFF}
.fm-bg{position:absolute;inset:0;overflow:hidden;pointer-events:none}
.fm-bar,.fm-grid,.fm-foot{position:relative;width:100%;max-width:1440px;margin:0 auto !important;box-sizing:border-box}
.fm-bar{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:22px 64px}
.fm-grid{flex:1 1 auto;min-height:0;display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:48px;padding:16px 64px;align-items:center}
.fm-nav{grid-column:span 7;display:flex;flex-direction:column}
.fm-item{display:grid;grid-template-columns:56px minmax(0,1fr) auto;align-items:center;gap:12px;padding:4px 0;border-bottom:1px solid rgba(255,255,255,.08)}
.fm-overlay.is-open .fm-item{animation:fmItem .9s cubic-bezier(.2,.8,.2,1) both}
.fm-item:nth-child(1){animation-delay:.3s}.fm-item:nth-child(2){animation-delay:.36s}.fm-item:nth-child(3){animation-delay:.42s}.fm-item:nth-child(4){animation-delay:.48s}.fm-item:nth-child(5){animation-delay:.54s}.fm-item:nth-child(6){animation-delay:.6s}
.fm-num{font-family:var(--at-mono);font-size:13px;color:#A3A7C2;transition:color .3s}
.fm-label{font-size:clamp(40px,5.2vw,80px);font-weight:200;letter-spacing:-.045em;line-height:1.08;color:#5C6390;transition:translate .55s var(--at-ease),color .35s}
.fm-item:hover .fm-label{color:#A3A7C2}
.fm-count{font-family:var(--at-mono);font-size:13px;color:var(--at-orange);align-self:start;margin-top:18px !important}
.fm-item.on .fm-label{translate:28px 0;color:#FFFFFF}
.fm-item.on .fm-num{color:var(--at-orange)}
.fm-panels{grid-column:span 5;position:relative}
.fm-panel{display:none;flex-direction:column;gap:18px}
.fm-panel.on{display:flex}
.fm-overlay.is-open .fm-panel.on > *{animation:fmFade .6s var(--at-ease) both}
.fm-overlay.is-open .fm-panel.on > :nth-child(2){animation-delay:.04s}
.fm-overlay.is-open .fm-panel.on > :nth-child(3){animation-delay:.1s}
.fm-overlay.is-closing .fm-item,.fm-overlay.is-closing .fm-panels{animation:fmLeave .45s cubic-bezier(.5,0,.75,0) both}
.fm-phead{display:flex;justify-content:space-between;align-items:baseline;gap:12px;font-family:var(--at-mono);font-size:12px;letter-spacing:.14em;text-transform:uppercase}
.fm-pdesc{margin:0 0 4px !important;font-size:22px;line-height:1.35;font-weight:300;letter-spacing:-.01em;color:#FFFFFF}
.fm-tiles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.fm-tile{position:relative;display:block;min-height:150px;border-radius:20px;overflow:hidden;isolation:isolate;background:var(--at-navy-2);transition:transform .45s var(--at-ease),box-shadow .45s}
.fm-tile.wide{grid-column:1 / -1;min-height:190px}
.fm-tile img,.fm-feature img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:grayscale(.35) brightness(.72);transition:transform .9s var(--at-ease),filter .5s}
.fm-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(11,13,30,.05) 0%,rgba(11,13,30,.9) 100%)}
.fm-tile::after,.fm-feature::after{content:"";position:absolute;inset:0;border-radius:inherit;box-shadow:inset 0 0 0 1px rgba(255,255,255,.12);transition:box-shadow .4s;pointer-events:none}
.fm-tile:hover{transform:translateY(-4px);box-shadow:0 22px 44px rgba(0,0,0,.45)}
.fm-tile:hover::after,.fm-feature:hover::after{box-shadow:inset 0 0 0 2px var(--at-orange)}
.fm-tile:hover img,.fm-feature:hover img{transform:scale(1.08);filter:grayscale(0) brightness(.9)}
.fm-go{position:absolute;top:14px;right:14px;width:38px;height:38px;border-radius:999px;display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,.14);backdrop-filter:blur(8px);color:#FFFFFF;transition:background .3s,color .3s,rotate .35s}
.fm-tile:hover .fm-go{background:var(--at-orange);color:var(--at-navy);rotate:-45deg}
.fm-txt{position:absolute;left:18px;right:18px;bottom:16px;display:flex;flex-direction:column;gap:3px}
.fm-tnum{font-family:var(--at-mono);font-size:11px;color:var(--at-orange)}
.fm-ttitle{font-size:21px;font-weight:400;letter-spacing:-.015em;line-height:1.12;color:#FFFFFF}
.fm-tdesc{font-size:13px;line-height:1.35;color:#D5D7E6;max-height:0;opacity:0;overflow:hidden;transition:max-height .45s var(--at-ease),opacity .35s}
.fm-tile:hover .fm-tdesc{max-height:40px;opacity:1}
.fm-feature{position:relative;display:block;flex-shrink:0;aspect-ratio:16 / 10;min-height:260px;border-radius:22px;overflow:hidden;isolation:isolate}
.fm-fcta{position:absolute;left:20px;bottom:20px;z-index:1;display:inline-flex;align-items:center;gap:10px;min-height:50px;padding:0 8px 0 24px;border-radius:999px;background:var(--at-orange);color:var(--at-navy);font-weight:600;font-size:15px}
.fm-fcta .go{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:999px;background:var(--at-navy);color:var(--at-orange);transition:rotate .35s}
.fm-feature:hover .fm-fcta .go{rotate:-45deg}
.fm-close{width:44px;height:44px;border-radius:999px;border:1px solid var(--at-orange);background:var(--at-orange);color:var(--at-navy);display:flex;align-items:center;justify-content:center;cursor:pointer;padding:0}
.fm-close svg{transition:rotate .45s var(--at-ease)}
.fm-close:hover svg{rotate:90deg}
.fm-foot{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:20px 64px 26px;border-top:1px solid rgba(255,255,255,.08);font-family:var(--at-mono);font-size:12px;letter-spacing:.06em;color:#A3A7C2}
.fm a.fm-flink{color:#C9CCE0}.fm a.fm-flink:hover{color:var(--at-orange)}
.fm a.fm-soc{display:inline-flex;align-items:center;min-height:36px;padding:0 14px;border-radius:999px;border:1px solid rgba(255,255,255,.2);color:#C9CCE0;transition:background .3s,color .3s,border-color .3s}
.fm a.fm-soc:hover{background:var(--at-orange);border-color:var(--at-orange);color:var(--at-navy)}
body.at-fm-open{overflow:hidden}

/* macchie colorate (aurora) e asterisco rotante */
.blob{position:absolute;border-radius:50%}
@keyframes drift1{0%,100%{transform:translate(0,0) scale(1)}50%{transform:translate(120px,60px) scale(1.15)}}
@keyframes drift2{0%,100%{transform:translate(0,0) scale(1)}50%{transform:translate(-140px,80px) scale(.9)}}
@keyframes drift3{0%,100%{transform:translate(0,0) scale(1)}50%{transform:translate(-90px,-70px) scale(1.2)}}
.b1{animation:drift1 22s ease-in-out infinite}.b2{animation:drift2 26s ease-in-out infinite}.b3{animation:drift3 30s ease-in-out infinite}.b4{animation:drift1 24s ease-in-out infinite reverse}.b5{animation:drift2 28s ease-in-out infinite reverse}
@keyframes at-spin{to{transform:rotate(360deg)}}
.spin{animation:at-spin 20s linear infinite;transform-origin:50% 50%}
.spin-slow{animation:at-spin 70s linear infinite;transform-origin:50% 50%}

/* ==========================================================================
   HOME
   ========================================================================== */
/* apertura */
.e-con.at-hero{position:relative;overflow:hidden;display:block !important}
.at-hero-bg{position:absolute !important;inset:0;pointer-events:none;z-index:0}
.at-hero-inner{position:relative;z-index:2;padding-top:72px !important}
.at-hero-row{display:flex !important;flex-direction:row !important;flex-wrap:wrap !important;align-items:flex-end !important;justify-content:space-between !important;gap:40px !important;margin-top:48px !important}
.at-hero-row .at-lead{max-width:560px}
.at-btns{display:flex !important;flex-direction:row !important;flex-wrap:wrap !important;gap:14px !important;width:auto !important}
.at-btns > .elementor-widget{width:auto !important}
.at-waves svg{display:block;width:100%;height:340px;margin-top:40px !important;overflow:visible}
@keyframes pulse{from{stroke-dashoffset:2000}to{stroke-dashoffset:0}}
.pulse{stroke-dasharray:110 1890;animation:pulse 5.5s linear infinite}
.p2{animation-delay:-1.8s;animation-duration:6.5s}.p3{animation-delay:-3.6s;animation-duration:7.5s}
@keyframes sway{from{transform:translateX(-36px)}to{transform:translateX(36px)}}
.sway{animation:sway 9s ease-in-out infinite alternate}.sway2{animation:sway 12s ease-in-out infinite alternate-reverse}
@keyframes floaty{0%,100%{translate:0 0}50%{translate:0 -26px}}
.floaty{animation:floaty 9s ease-in-out infinite}
.at-meta{display:grid !important;grid-template-columns:repeat(4,minmax(0,1fr)) !important;border-top:1px solid rgba(255,255,255,.12)}
.at-meta-item{padding:28px 24px 40px !important;border-left:1px solid rgba(255,255,255,.12)}
.at-meta-item:first-child{border-left:0;padding-left:0 !important}
.at-meta-k{font-family:var(--at-mono);font-size:12px;letter-spacing:.12em;color:var(--at-muted);text-transform:uppercase}
.at-meta-v{font-size:34px;font-weight:200;margin-top:8px !important;color:#FFFFFF}

/* settori */
.e-con.at-sectors{position:relative;min-height:clamp(720px,100vh,1040px);display:flex !important;flex-direction:column !important;margin-top:80px !important}
.at-sec-head{display:flex !important;flex-direction:row !important;flex-wrap:wrap !important;justify-content:space-between !important;align-items:flex-end !important;gap:32px !important;padding-top:72px !important;padding-bottom:48px !important}
.at-sec-head > .e-con{width:auto !important}
.at-sec-head .at-kicker{margin-bottom:20px !important}
.at-sec-head .at-h2{max-width:820px}
.at-panels{flex:1 1 auto !important;display:flex !important;flex-direction:row !important;gap:2px !important;min-height:580px}
.e-con.at-panel{position:relative;flex:1 1 0 !important;min-width:0;overflow:hidden;color:#FFFFFF;display:flex !important;transition:flex-grow .7s var(--at-ease)}
.e-con.at-panel:hover{flex-grow:1.9 !important}
.at-panel-img,.at-panel-cover{position:absolute !important;left:0;top:-8%;width:100% !important;height:116%;z-index:0}
.at-panel-img img,.at-panel-cover img{width:100% !important;height:100% !important;object-fit:cover;max-width:none !important}
.at-panel-img img{filter:grayscale(.7) brightness(.7);transition:transform .9s var(--at-ease),filter .6s}
.e-con.at-panel:hover .at-panel-img img{transform:scale(1.07);filter:grayscale(0) brightness(.9)}
.at-panel-cover{transition:opacity .7s var(--at-ease),transform 1.1s var(--at-ease),filter .7s}
.e-con.at-panel:hover .at-panel-cover{opacity:0;transform:scale(1.12);filter:blur(6px)}
.at-panel-deco{position:absolute !important;inset:0;z-index:1;pointer-events:none}
.at-panel-deco .shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(14,16,34,.55) 0%,rgba(14,16,34,.1) 35%,rgba(14,16,34,.95) 100%)}
.at-panel-deco .bar{position:absolute;left:0;top:0;height:3px;width:56px;background:var(--at-orange);transition:width .7s var(--at-ease)}
.e-con.at-panel:hover .at-panel-deco .bar{width:100%}
.at-panel-body{flex:1 1 auto !important;position:relative;z-index:2;display:flex !important;flex-direction:column !important;justify-content:space-between !important;gap:40px !important;padding:40px 36px !important;width:100%}
.at-panel-top{display:flex !important;flex-direction:row !important;justify-content:space-between !important;align-items:flex-start !important}
.at-panel-top > .elementor-widget{width:auto !important}
.at-panel-num{font-size:112px;font-weight:100;line-height:.8;letter-spacing:-.04em;color:rgba(255,255,255,.9);transition:color .4s}
.e-con.at-panel:hover .at-panel-num{color:var(--at-orange)}
.at-panel-tag{font-family:var(--at-mono);font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:#FFFFFF;padding:7px 12px;border-radius:999px;background:rgba(14,16,34,.6)}
.at-panel-tag.is-focus{background:var(--at-orange);color:var(--at-navy)}
.at-panel-title{margin-bottom:14px !important;font-weight:200;font-size:clamp(34px,3.3vw,54px);line-height:1;letter-spacing:-.03em}
.at-panel-title span{color:var(--at-orange);font-weight:500}
.at-panel-desc{max-width:340px;margin-bottom:28px !important;font-size:16px;line-height:1.55;color:#D5D7E6}
.at-go{display:inline-flex;align-items:center;justify-content:center;width:52px;height:52px;border-radius:999px;border:1px solid rgba(255,255,255,.5);color:#FFFFFF;transition:background .3s,color .3s,border-color .3s,transform .3s}
.e-con.at-panel:hover .at-go{background:var(--at-orange);color:var(--at-navy);border-color:var(--at-orange);transform:rotate(-45deg)}

/* focus */
.e-con.at-focus{padding-top:160px !important;padding-bottom:160px !important}
.at-split{display:grid !important;grid-template-columns:repeat(2,minmax(0,1fr)) !important;gap:64px !important;align-items:center !important}
.at-focus-media{position:relative;border-radius:24px;overflow:hidden;aspect-ratio:4 / 3;background:var(--at-navy-2)}
.at-focus-media .elementor-widget-image,.at-focus-media .elementor-widget-image img{width:100% !important;height:100% !important;object-fit:cover}
.at-focus-media .elementor-widget-image{position:absolute !important;inset:0}
.at-chip-over{position:absolute !important;left:20px;bottom:20px;width:auto !important;z-index:2;display:flex;align-items:center;gap:10px;padding:10px 16px;border-radius:999px;background:rgba(14,16,34,.82);font-family:var(--at-mono);font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:#FFFFFF}
.at-focus-text .at-kicker{margin-bottom:20px !important}
.at-focus-text .at-h2{margin-bottom:28px !important}
.at-list ul{list-style:none;margin:32px 0 40px !important;padding:0;border-top:1px solid rgba(255,255,255,.12)}
.at-list li{display:flex;justify-content:space-between;padding:18px 0;border-bottom:1px solid rgba(255,255,255,.12);font-size:17px}
.at-list li em{font-style:normal;font-family:var(--at-mono);font-size:13px;color:var(--at-muted)}

/* anteprima soluzioni (chiaro) */
.e-con.at-solprev{background:var(--at-light);color:var(--at-navy);border-radius:40px 40px 0 0;padding-top:140px !important;padding-bottom:140px !important}
.at-sol-head{display:flex !important;flex-direction:row !important;flex-wrap:wrap !important;justify-content:space-between !important;align-items:flex-end !important;gap:32px !important;margin-bottom:64px !important}
.at-sol-head > .e-con,.at-sol-head > .elementor-widget{width:auto !important}
.at-sol-head .at-kicker{margin-bottom:20px !important}
.at-sol-tools{display:flex !important;flex-direction:row !important;align-items:center !important;gap:28px !important}
.at-sol-counter{font-family:var(--at-mono);font-size:14px;color:#3C3F55}
.at-sol-counter b{font-family:'Archivo',sans-serif;font-size:40px;font-weight:200;color:var(--at-navy)}
.at-sol-list{display:flex !important;flex-direction:column !important}
.e-con.at-sol-row{display:grid !important;grid-template-columns:52px minmax(0,1fr) auto 44px !important;align-items:center !important;gap:20px !important;padding:24px 16px !important;border-radius:16px;color:var(--at-navy);cursor:pointer;transition:padding .45s var(--at-ease),background .35s}
.e-con.at-sol-row + .e-con.at-sol-row{margin-top:2px !important}
.at-sol-num{font-family:var(--at-mono);font-size:13px;color:#6B6E85;transition:color .3s}
.at-sol-title{font-size:clamp(22px,2.3vw,34px);font-weight:200;letter-spacing:-.025em;line-height:1.12;transition:font-weight .3s}
.at-sol-tag{font-family:var(--at-mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;padding:6px 10px;border-radius:999px;border:1px solid #B9BBC8;color:#3C3F55;white-space:nowrap}
.at-sol-arrow{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:999px;border:1px solid #B9BBC8;opacity:0;transform:translateX(-10px) rotate(-45deg);transition:opacity .35s,transform .45s,background .3s}
.e-con.at-sol-row.is-on{background:var(--at-navy);color:#FFFFFF;padding-left:28px !important}
.at-sol-row.is-on .at-sol-num{color:var(--at-orange)}
.at-sol-row.is-on .at-sol-title{font-weight:400}
.at-sol-row.is-on .at-sol-tag{border-color:rgba(255,255,255,.35);color:#FFFFFF}
.at-sol-row.is-on .at-sol-arrow{opacity:1;transform:none;background:var(--at-orange);border-color:var(--at-orange);color:var(--at-navy)}
.e-con.at-sol-row:not(.is-on):hover{background:#E6E7EC}
.e-con.at-sol-preview{position:sticky !important;top:110px;border-radius:28px;overflow:hidden;aspect-ratio:4 / 4.4;background:var(--at-navy);color:#FFFFFF;display:block !important}
.at-sol-preview .at-sol-img{position:absolute !important;inset:0;opacity:0;transition:opacity .6s,transform 1s var(--at-ease);transform:scale(1.05)}
.at-sol-preview .at-sol-img.is-on{opacity:1;transform:none}
.at-sol-preview .at-sol-img img{width:100% !important;height:100% !important;object-fit:cover;max-width:none !important}
.at-sol-overlay{position:absolute !important;inset:0;pointer-events:none}
.at-sol-overlay .shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(14,16,34,.5) 0%,rgba(14,16,34,0) 30%,rgba(14,16,34,.15) 55%,rgba(14,16,34,.92) 100%)}
.at-sol-overlay .segs{position:absolute;left:28px;right:28px;top:28px;display:flex;gap:6px}
.at-sol-overlay .seg{flex:1 1 0;height:3px;border-radius:2px;background:rgba(255,255,255,.3);transition:background .3s}
.at-sol-overlay .seg.on{background:var(--at-orange)}
.at-sol-overlay .info{position:absolute;left:32px;right:32px;bottom:110px;display:flex;flex-direction:column;gap:16px}
.at-sol-overlay .chips{display:flex;gap:8px;flex-wrap:wrap}
.at-sol-overlay .chip-o{font-family:var(--at-mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;padding:7px 12px;border-radius:999px;background:var(--at-orange);color:var(--at-navy)}
.at-sol-overlay .chip-w{font-family:var(--at-mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;padding:7px 12px;border-radius:999px;border:1px solid rgba(255,255,255,.45);color:#FFFFFF}
.at-sol-overlay .ttl{font-weight:300;font-size:clamp(28px,2.6vw,40px);line-height:1.08;letter-spacing:-.025em}
.at-sol-preview .at-btn{position:absolute !important;left:32px;bottom:32px;width:auto !important;z-index:2}

/* azienda */
.e-con.at-company{background:var(--at-light)}
.at-company-inner{position:relative;background:var(--at-navy);color:var(--at-ink);border-radius:48px 48px 0 0;overflow:hidden;padding-top:140px !important;padding-bottom:120px !important}
.at-company-bg{position:absolute !important;inset:0;pointer-events:none;background-image:radial-gradient(ellipse 50% 45% at 15% 20%,rgba(242,145,0,.14),transparent 70%),radial-gradient(1100px 560px at 82% 100%,rgba(27,114,184,.24),transparent 70%)}
.at-company-label{display:flex;flex-wrap:wrap;align-items:center;gap:16px;margin-bottom:40px !important;font-family:var(--at-mono);font-size:13px;letter-spacing:.14em;text-transform:uppercase}
.at-company-label .line{flex:1 1 120px;height:1px;background:rgba(255,255,255,.15)}
.at-company-label .muted{color:var(--at-muted)}
.at-h2--xl{max-width:1280px}
.mq-wrap{position:relative;padding:28px 0;border-top:1px solid rgba(255,255,255,.12);overflow:hidden}
.mq-wrap.small{padding:18px 0;border-bottom:1px solid rgba(255,255,255,.12);background:rgba(242,145,0,.06)}
.mq-track{display:flex;width:max-content;animation:mq 38s linear infinite;white-space:nowrap}
.mq-track.rev{animation-direction:reverse;animation-duration:48s}
@keyframes mq{to{transform:translateX(-50%)}}
.mq-wrap:hover .mq-track{animation-play-state:paused}
.mq-big{font-size:clamp(64px,9vw,150px);font-weight:200;line-height:1;letter-spacing:-.03em}
.mq-small{font-family:var(--at-mono);font-size:clamp(16px,1.6vw,22px);letter-spacing:.14em;text-transform:uppercase;color:#C9CCE0}
.mq-group{display:inline-flex;align-items:center;gap:48px;padding-right:48px}
.mq-small .mq-group{gap:40px;padding-right:40px}
.mq-word{color:#4E5585}
.mq-star{color:var(--at-orange);font-weight:400}
.at-company-sub{margin:24px auto 96px !important;font-family:var(--at-mono);font-size:13px;letter-spacing:.1em;text-transform:uppercase;color:var(--at-muted)}
.at-modes{display:grid !important;grid-template-columns:repeat(2,minmax(0,1fr)) !important;gap:20px !important}
.e-con.at-mode{position:relative;overflow:hidden;border-radius:28px;border:1px solid rgba(255,255,255,.12);background:#121530;padding:44px 44px 36px !important;display:flex !important;flex-direction:column !important;gap:28px !important;transition:background .4s,border-color .4s}
.e-con.at-mode:hover{background:#171A36;border-color:rgba(242,145,0,.55)}
.at-mode-head{display:flex;justify-content:space-between;align-items:center;font-family:var(--at-mono);font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--at-muted)}
.at-mode-head .live{color:#5AA6E8}
.at-mode-head .pass{display:inline-flex;align-items:center;gap:6px;color:var(--at-navy);background:var(--at-orange);padding:4px 10px;border-radius:999px;letter-spacing:0}
.at-mode-big{font-size:clamp(88px,10vw,160px);font-weight:100;line-height:.85;letter-spacing:-.05em;color:#FFFFFF;transition:color .4s}
.e-con.at-mode:hover .at-mode-big{color:var(--at-orange)}
.at-scope{position:relative;overflow:hidden}
.at-scope svg{width:100%;height:110px;display:block}
@keyframes trace{from{stroke-dashoffset:1200}to{stroke-dashoffset:0}}
.trace{stroke-dasharray:1200;animation:trace 3.2s cubic-bezier(.4,0,.2,1) infinite alternate}
@keyframes scan{from{translate:-100% 0}to{translate:100% 0}}
.scan{position:absolute;top:0;bottom:0;left:0;width:100%;animation:scan 3.4s linear infinite}
.at-mode-desc{max-width:460px;font-size:17px;line-height:1.65;font-weight:300;color:var(--at-soft)}
.at-close{display:flex !important;flex-direction:row !important;flex-wrap:wrap !important;justify-content:space-between !important;align-items:flex-end !important;gap:32px !important;margin-top:72px !important}
.at-close > .elementor-widget{width:auto !important}
.at-close .at-body{max-width:640px;font-size:20px}
.at-close .at-body b{color:#FFFFFF;font-weight:500}

/* notizie */
.e-con.at-news{position:relative;background:var(--at-navy);padding-top:120px !important;padding-bottom:120px !important}
.at-news-bg{position:absolute !important;inset:0;pointer-events:none;background-image:radial-gradient(1100px 560px at 82% 0%,rgba(27,114,184,.24),transparent 70%),radial-gradient(900px 600px at 10% 75%,rgba(242,145,0,.10),transparent 70%)}
.at-news-head{position:relative;display:flex !important;flex-direction:row !important;flex-wrap:wrap !important;justify-content:space-between !important;align-items:flex-end !important;gap:32px !important;margin-bottom:56px !important}
.at-news-head > .e-con,.at-news-head > .elementor-widget{width:auto !important}
.at-news-head .at-kicker{margin-bottom:20px !important}
.at-news-tools{display:flex !important;flex-direction:row !important;align-items:center !important;gap:12px !important}
.icon-btn{width:52px;height:52px;border-radius:999px;border:1px solid rgba(255,255,255,.25);background:transparent;color:#FFFFFF;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;padding:0;transition:background .3s,border-color .3s}
.icon-btn:hover{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.5)}
.at-bento{position:relative;display:grid !important;grid-template-columns:repeat(12,minmax(0,1fr)) !important;grid-auto-rows:minmax(250px,auto);gap:20px !important}
.e-con.at-nc{position:relative;overflow:hidden;display:flex !important;flex-direction:column !important;justify-content:space-between !important;gap:32px !important;padding:32px !important;border-radius:24px;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.03);color:#FFFFFF;grid-column:span 12;transition:transform .45s var(--at-ease),border-color .3s,background .3s}
.e-con.at-nc:hover{transform:translateY(-6px);border-color:rgba(242,145,0,.55)}
.at-nc-big{position:absolute !important;right:-10px;top:70px;width:auto !important;font-size:clamp(120px,15vw,230px);font-weight:200;line-height:.82;letter-spacing:-.05em;text-align:right;color:rgba(255,255,255,.09);pointer-events:none;display:none;transition:color .4s}
.e-con.at-nc:hover .at-nc-big{color:rgba(242,145,0,.35)}
.at-nc-top{position:relative;display:flex !important;flex-direction:row !important;flex-wrap:wrap !important;justify-content:space-between !important;align-items:center !important;gap:8px !important}
.at-nc-top > .elementor-widget{width:auto !important}
.at-nc.slot-0 .at-nc-top{justify-content:flex-start !important}
.at-nc-tag{font-family:var(--at-mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;padding:7px 12px;border-radius:999px;border:1px solid rgba(255,255,255,.3);color:#C9CCE0}
.at-nc-feat{display:none;font-family:var(--at-mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;padding:7px 12px;border-radius:999px;background:var(--at-orange);color:var(--at-navy)}
.at-nc-bottom{position:relative;display:flex !important;flex-direction:row !important;justify-content:space-between !important;align-items:flex-end !important;gap:20px !important}
.at-nc-bottom > .elementor-widget{width:auto !important}
.at-nc-title{font-weight:300;font-size:28px;line-height:1.12;letter-spacing:-.02em}
.at-nc-go{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:999px;border:1px solid rgba(255,255,255,.4);color:#FFFFFF;transition:background .3s,color .3s,border-color .3s,transform .35s}
.e-con.at-nc:hover .at-nc-go{background:var(--at-orange);color:var(--at-navy);border-color:var(--at-orange);transform:rotate(-45deg)}
/* le posizioni del mosaico: lo script assegna slot-0 … slot-5 */
.e-con.at-nc.slot-0{grid-column:span 7;grid-row:span 2;order:0;min-height:540px;padding:40px !important;border-radius:28px;background:linear-gradient(155deg,rgba(242,145,0,.18) 0%,rgba(27,114,184,.12) 55%,rgba(255,255,255,.03) 100%);border-color:rgba(255,255,255,.14)}
.at-nc.slot-0 .at-nc-big,.at-nc.slot-0 .at-nc-feat{display:block}
.at-nc.slot-0 .at-nc-ico{display:none}
.at-nc.slot-0 .at-nc-title{font-size:clamp(34px,3.4vw,52px);line-height:1.02;letter-spacing:-.03em;max-width:520px}
.e-con.at-nc.slot-1{grid-column:span 5;order:1}
.e-con.at-nc.slot-2{grid-column:span 5;order:2}
.e-con.at-nc.slot-3,.e-con.at-nc.slot-4,.e-con.at-nc.slot-5{grid-column:span 12;flex-direction:row !important;align-items:center !important;padding:22px 4px !important;border-radius:0;border:0;border-bottom:1px solid rgba(255,255,255,.12);background:transparent}
.e-con.at-nc.slot-3{order:3;margin-top:20px !important;border-top:1px solid rgba(255,255,255,.12)}
.e-con.at-nc.slot-4{order:4}.e-con.at-nc.slot-5{order:5}
.at-nc.slot-3 .at-nc-ico,.at-nc.slot-4 .at-nc-ico,.at-nc.slot-5 .at-nc-ico{display:none}
.at-nc.slot-3 .at-nc-top,.at-nc.slot-4 .at-nc-top,.at-nc.slot-5 .at-nc-top{width:170px !important;flex-shrink:0}
.at-nc.slot-3 .at-nc-tag,.at-nc.slot-4 .at-nc-tag,.at-nc.slot-5 .at-nc-tag{border:0;padding:0;font-size:12px;color:var(--at-muted)}
.at-nc.slot-3 .at-nc-bottom,.at-nc.slot-4 .at-nc-bottom,.at-nc.slot-5 .at-nc-bottom{flex:1 1 auto;align-items:center !important}
.at-nc.slot-3 .at-nc-title,.at-nc.slot-4 .at-nc-title,.at-nc.slot-5 .at-nc-title{font-size:20px}
.at-nc.slot-3 .at-nc-go,.at-nc.slot-4 .at-nc-go,.at-nc.slot-5 .at-nc-go{border:0;width:28px;height:28px}
.e-con.at-nc.slot-3:hover,.e-con.at-nc.slot-4:hover,.e-con.at-nc.slot-5:hover{transform:none;background:rgba(255,255,255,.04);padding-left:20px !important}
@keyframes nvIn{from{opacity:0;translate:36px 0}to{opacity:1;translate:0 0}}
@keyframes nvInB{from{opacity:0;translate:-36px 0}to{opacity:1;translate:0 0}}
.at-bento.nv-next .at-nc > *{animation:nvIn .6s var(--at-ease) both}
.at-bento.nv-prev .at-nc > *{animation:nvInB .6s var(--at-ease) both}
@property --ang{syntax:'<angle>';inherits:false;initial-value:0deg}
@keyframes rot{to{--ang:360deg}}
.e-con.at-nc.slot-0::before{content:"";position:absolute;inset:0;border-radius:inherit;padding:1.5px;background:conic-gradient(from var(--ang),transparent 0%,transparent 62%,#F29100 80%,#FFC37A 88%,transparent 100%);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;animation:rot 6s linear infinite;pointer-events:none}

/* CTA (home e solutions) */
.e-con.at-cta{position:relative;overflow:hidden;background:linear-gradient(180deg,#0E1022 0%,#1B1636 30%,#34193A 58%,#24132E 82%,#0E1022 100%)}
.at-cta-bg{position:absolute !important;inset:0;pointer-events:none}
.at-cta-inner{position:relative;padding-top:150px !important;padding-bottom:140px !important;text-align:center;align-items:center !important}
.at-pill{display:inline-flex;align-items:center;gap:10px;padding:9px 16px;border-radius:999px;border:1px solid rgba(255,255,255,.22);background:rgba(255,255,255,.06);backdrop-filter:blur(10px);font-family:var(--at-mono);font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:#FFFFFF}
.at-pill-wrap{width:auto !important}
.at-cta-title{margin:32px auto 28px !important;max-width:1200px;font-weight:100;font-size:clamp(48px,7.6vw,124px);line-height:.96;letter-spacing:-.045em;color:#FFFFFF}
.at-cta-title strong,.at-cta-title b{font-weight:500}
.at-cta-lead{max-width:560px;margin:0 auto 56px !important;font-size:19px;line-height:1.6;font-weight:300;color:#E4DDE8}
.at-glasses{display:grid !important;grid-template-columns:repeat(3,minmax(0,1fr)) !important;gap:16px !important;max-width:1040px;width:100%;margin:0 auto !important;text-align:left}
.e-con.at-glass{display:flex !important;flex-direction:column !important;gap:28px !important;padding:28px !important;border-radius:24px;border:1px solid rgba(255,255,255,.2);background:rgba(255,255,255,.07);backdrop-filter:blur(16px);color:#FFFFFF;transition:transform .45s var(--at-ease),background .3s,border-color .3s}
.e-con.at-glass:hover{transform:translateY(-6px);background:rgba(255,255,255,.12);border-color:rgba(255,195,122,.6)}
.e-con.at-glass.main{background:var(--at-orange);border-color:var(--at-orange);color:var(--at-navy)}
.e-con.at-glass.main:hover{background:#FFB347}
.at-glass-top{display:flex;justify-content:space-between;align-items:center;font-size:20px}
.at-glass-k{margin-bottom:8px !important;font-family:var(--at-mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:#D8CFDD}
.at-glass.main .at-glass-k{color:#3A2400}
.at-glass-v{font-size:20px;font-weight:400}
.at-glass.main .at-glass-v{font-weight:600}
.e-con.at-glass .go{transition:transform .35s}
.e-con.at-glass:hover .go{transform:translate(3px,-3px)}
@keyframes ping{0%{transform:scale(1);opacity:.8}100%{transform:scale(2.6);opacity:0}}
.ping{animation:ping 1.8s cubic-bezier(0,0,.2,1) infinite}

/* ==========================================================================
   FOOTER (Theme Builder) — widget HTML
   ========================================================================== */
.at-footer{padding:0 16px 16px;background:var(--at-navy)}
.at-footer.on-light{background:var(--at-light)}
.at-footer-card{position:relative;overflow:hidden;border-radius:40px;background:var(--at-orange);color:var(--at-navy)}
.at-footer-in{position:relative;max-width:1440px;margin:0 auto !important;padding:72px 64px 0;box-sizing:border-box}
.at-footer-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:32px;padding-bottom:56px;border-bottom:1px solid rgba(14,16,34,.25)}
.at-footer-clock{display:inline-flex;align-items:center;gap:10px;font-family:var(--at-mono);font-size:12px;letter-spacing:.12em;text-transform:uppercase;margin-bottom:24px !important}
.at-footer-claim{margin:0 !important;max-width:780px;font-weight:150;font-size:clamp(40px,5.2vw,80px);line-height:1;letter-spacing:-.04em}
.at-footer-claim b{font-weight:600}
.at-footer-cols{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:40px;padding:48px 0 40px}
.at-footer-col{display:flex;flex-direction:column;gap:10px;font-size:17px}
.at-footer-k{font-family:var(--at-mono);font-size:12px;letter-spacing:.12em;text-transform:uppercase;margin-bottom:8px !important;color:rgba(14,16,34,.72)}
.at-footer-legal{display:flex;flex-wrap:wrap;justify-content:space-between;gap:16px;padding:20px 0;border-top:1px solid rgba(14,16,34,.25);font-family:var(--at-mono);font-size:12px;letter-spacing:.04em}
.at-footer a{color:var(--at-navy) !important;text-decoration:none;background-image:linear-gradient(#0E1022,#0E1022);background-size:0 1px;background-repeat:no-repeat;background-position:0 100%;transition:background-size .35s}
.at-footer a:hover{background-size:100% 1px}
.at-footer a.soc{display:inline-flex;align-items:center;min-height:44px;padding:0 18px;border-radius:999px;border:1px solid var(--at-navy);font-size:15px;background-image:none;transition:background .3s,color .3s}
.at-footer a.soc:hover{background:var(--at-navy);color:#FFFFFF !important}
.at-footer a.top-btn{position:relative;overflow:hidden;isolation:isolate;display:inline-flex;align-items:center;justify-content:center;width:72px;height:72px;border-radius:999px;border:1px solid var(--at-navy);background-image:none;transition:color .35s,transform .45s var(--at-ease),box-shadow .45s}
.at-footer a.top-btn::before{content:"";position:absolute;inset:0;border-radius:inherit;background:var(--at-navy);transform:translateY(101%);transition:transform .5s var(--at-ease);z-index:-1}
.at-footer a.top-btn:hover,.at-footer a.top-btn:focus-visible{color:var(--at-orange) !important;transform:translateY(-4px);box-shadow:0 14px 30px rgba(14,16,34,.35)}
.at-footer a.top-btn:hover::before{transform:translateY(0)}
@keyframes arrowUp{0%{translate:0 0;opacity:1}45%{translate:0 -30px;opacity:0}46%{translate:0 30px;opacity:0}100%{translate:0 0;opacity:1}}
.at-footer a.top-btn:hover svg{animation:arrowUp 1s cubic-bezier(.6,0,.3,1) .1s infinite}
.at-wordmark{display:flex;align-items:flex-end;justify-content:center;gap:.06em;margin-top:8px !important;margin-bottom:-.17em !important;padding:0 16px;font-weight:600;font-size:min(13.5vw,232px);line-height:.8;letter-spacing:-.065em;color:var(--at-navy);white-space:nowrap;user-select:none}
.at-wordmark svg{width:.6em;height:.6em;flex-shrink:0;align-self:flex-start;margin-top:.03em !important}

/* ==========================================================================
   SOLUTIONS
   ========================================================================== */
.e-con.at-sol-hero{position:relative;overflow:hidden}
.at-sol-hero-inner{position:relative;padding-top:72px !important;padding-bottom:80px !important}
.at-crumb{margin-bottom:28px !important;font-family:var(--at-mono);font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--at-muted)}
.at-crumb a{color:var(--at-muted) !important}
.at-crumb span{color:#FFFFFF}
.at-sol-hero-grid{display:grid !important;grid-template-columns:repeat(12,minmax(0,1fr)) !important;gap:40px !important;align-items:end !important}
.at-sol-hero-grid > .e-con:first-child{grid-column:span 8}
.at-sol-hero-grid > .elementor-widget:last-child{grid-column:span 4}
.at-sol-h1{font-weight:150;font-size:clamp(48px,7vw,108px);line-height:.98;letter-spacing:-.04em;color:#FFFFFF}
.at-sol-hero-grid .at-lead{margin-top:32px !important;max-width:620px}
.at-stats{display:flex;border-top:1px solid rgba(255,255,255,.14)}
.at-stats > div{flex:1 1 0;padding:22px 16px 0}
.at-stats > div + div{border-left:1px solid rgba(255,255,255,.14)}
.at-stats > div:first-child{padding-left:0}
.at-stats .v{font-size:56px;font-weight:200;letter-spacing:-.04em;color:#FFFFFF;line-height:1}
.at-stats .v.o{color:var(--at-orange)}
.at-stats .k{margin-top:8px !important;font-family:var(--at-mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--at-muted)}
/* card settore cliccabili e catalogo: generati dallo script dentro #at-catalogue / .at-ind-cards */
.at-ind-cards{margin-top:64px !important}
.at-ind-k{margin:0 0 16px !important;font-family:var(--at-mono);font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--at-orange)}
.at-ind-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.ind{position:relative;display:block;width:100%;min-height:210px;border-radius:24px;overflow:hidden;isolation:isolate;border:0;padding:0;cursor:pointer;text-align:left;font-family:inherit;color:#FFFFFF;background:var(--at-navy-2);transition:transform .45s var(--at-ease)}
.ind img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:grayscale(.4) brightness(.65);transition:transform .9s var(--at-ease),filter .5s}
.ind .shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(14,16,34,0) 30%,rgba(14,16,34,.9) 100%)}
.ind::after{content:"";position:absolute;inset:0;border-radius:inherit;box-shadow:inset 0 0 0 1px rgba(255,255,255,.14);transition:box-shadow .35s;pointer-events:none}
.ind:hover{transform:translateY(-4px)}
.ind:hover img{transform:scale(1.07);filter:grayscale(0) brightness(.8)}
.ind.on::after{box-shadow:inset 0 0 0 3px var(--at-orange)}
.ind.on img{filter:grayscale(0) brightness(.85)}
.ind-check{position:absolute;top:16px;right:16px;width:36px;height:36px;border-radius:999px;display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,.16);backdrop-filter:blur(8px);color:#FFFFFF;transition:background .3s,color .3s,transform .4s var(--at-ease)}
.ind.on .ind-check{background:var(--at-orange);color:var(--at-navy);transform:rotate(360deg)}
.ind .tick{position:absolute;opacity:0;transition:opacity .3s}.ind .plus{transition:opacity .3s}
.ind.on .plus{opacity:0}.ind.on .tick{opacity:1}
.ind .lbl{position:absolute;left:22px;right:22px;bottom:20px;display:flex;justify-content:space-between;align-items:flex-end;gap:12px}
.ind .lbl b{font-size:30px;font-weight:300;letter-spacing:-.025em;line-height:1}
.ind .lbl i{font-style:normal;font-family:var(--at-mono);font-size:12px;color:var(--at-amber)}
.e-con.at-catalogue{background:var(--at-light);color:var(--at-navy);border-radius:40px;padding-top:72px !important;padding-bottom:120px !important}
.at-cat-tools{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:36px !important}
.srch{display:flex;align-items:center;gap:10px;flex:1 1 320px;min-height:52px;padding:0 18px;border-radius:999px;background:#FFFFFF;border:1px solid #DCDDE4;transition:border-color .3s,box-shadow .3s}
.srch:focus-within{border-color:var(--at-orange);box-shadow:0 0 0 4px rgba(242,145,0,.15)}
.srch input{flex:1 1 auto;min-width:0;border:0 !important;outline:none;background:transparent !important;font-family:inherit;font-size:16px;color:var(--at-navy);padding:0 !important;box-shadow:none !important}
.sel{min-height:52px;padding:0 44px 0 18px;border-radius:999px;border:1px solid #DCDDE4;background:#FFFFFF;font-family:inherit;font-size:15px;color:var(--at-navy);cursor:pointer;appearance:none;-webkit-appearance:none;background-image:linear-gradient(45deg,transparent 50%,#0E1022 50%),linear-gradient(135deg,#0E1022 50%,transparent 50%);background-position:calc(100% - 22px) 23px,calc(100% - 17px) 23px;background-size:5px 5px,5px 5px;background-repeat:no-repeat}
.vt{display:flex;padding:4px;border-radius:999px;background:#FFFFFF;border:1px solid #DCDDE4}
.vt button{display:flex;align-items:center;justify-content:center;width:44px;height:42px;border:0;border-radius:999px;background:transparent;color:#6B6E85;cursor:pointer;transition:background .3s,color .3s;padding:0}
.vt button.on{background:var(--at-navy);color:#FFFFFF}
.at-cat{display:grid;grid-template-columns:280px minmax(0,1fr);gap:40px;align-items:start}
.at-cat-side{position:sticky;top:108px}
.fl-group{border-top:1px solid #DCDDE4;padding:18px 0}
.fl-k{margin:0 0 8px 10px !important;font-family:var(--at-mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:#A35F00}
.fl-opt{display:flex;align-items:center;gap:12px;width:100%;min-height:44px;padding:8px 10px;border:0;border-radius:12px;background:transparent;color:var(--at-navy);font-family:inherit;font-size:15px;text-align:left;cursor:pointer;transition:background .25s}
.fl-opt:hover{background:#FFFFFF}
.fl-box{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:20px;height:20px;border-radius:6px;border:1.5px solid #9A9DB2;color:transparent;transition:background .25s,border-color .25s,color .25s}
.fl-opt.on .fl-box{background:var(--at-orange);border-color:var(--at-orange);color:var(--at-navy)}
.fl-opt.on{font-weight:600}
.fl-n{margin-left:auto !important;font-family:var(--at-mono);font-size:12px;color:#6B6E85;padding:2px 8px;border-radius:999px;background:#E6E7EC}
.fl-opt.on .fl-n{background:var(--at-navy);color:#FFFFFF}
.fl-opt.zero{opacity:.45}
.sw{position:relative;flex-shrink:0;width:38px;height:22px;border-radius:999px;background:#C9CBD6;transition:background .3s}
.sw::after{content:"";position:absolute;top:3px;left:3px;width:16px;height:16px;border-radius:999px;background:#FFFFFF;transition:translate .35s var(--at-ease)}
.fl-opt.on .sw{background:var(--at-orange)}
.fl-opt.on .sw::after{translate:16px 0}
.at-side-cta{margin-top:8px !important;padding:22px;border-radius:20px;background:var(--at-navy);color:#FFFFFF}
.at-side-cta a{display:inline-flex;align-items:center;gap:8px;margin-top:16px !important;min-height:44px;padding:0 18px;border-radius:999px;background:var(--at-orange);color:var(--at-navy) !important;font-size:14px;font-weight:600}
.clear{border:0;background:transparent;font-family:inherit;font-size:13px;color:#A35F00;text-decoration:underline;text-underline-offset:3px;cursor:pointer;min-height:36px;padding:0 6px}
.chip{display:inline-flex;align-items:center;gap:8px;min-height:36px;padding:0 8px 0 14px;border-radius:999px;border:0;background:var(--at-navy);color:#FFFFFF;font-family:inherit;font-size:13px;cursor:pointer;transition:background .3s}
.chip:hover{background:var(--at-orange);color:var(--at-navy)}
.chip .x{display:flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:999px;background:rgba(255,255,255,.15)}
.at-count-h{margin:0 0 18px !important;font-weight:200;font-size:clamp(34px,3.6vw,52px);letter-spacing:-.035em;line-height:1}
.at-count-h b{font-weight:500}
.at-count-h span{color:#6B6E85}
.at-chips{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:24px !important}
.grid3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.lst{display:flex;flex-direction:column;gap:16px}
@keyframes cardIn{from{opacity:0;translate:0 26px;scale:.98}to{opacity:1;translate:0 0;scale:1}}
.pc{position:relative;display:flex;flex-direction:column;border-radius:22px;overflow:hidden;background:#FFFFFF;color:var(--at-navy) !important;box-shadow:0 1px 0 rgba(14,16,34,.06);animation:cardIn .6s var(--at-ease) both;transition:transform .45s var(--at-ease),box-shadow .45s}
.pc:nth-child(3n+2){animation-delay:.05s}.pc:nth-child(3n+3){animation-delay:.1s}
.pc:hover{transform:translateY(-6px);box-shadow:0 26px 50px rgba(14,16,34,.14)}
.pc-img{position:relative;aspect-ratio:3 / 2;overflow:hidden;background:#EEEEF1}
.pc-img img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .9s var(--at-ease)}
.pc:hover .pc-img img{transform:scale(1.07)}
.pc-go{position:absolute;right:14px;bottom:14px;width:44px;height:44px;border-radius:999px;display:flex;align-items:center;justify-content:center;background:var(--at-navy);color:#FFFFFF;transition:background .3s,color .3s,rotate .35s}
.pc:hover .pc-go{background:var(--at-orange);color:var(--at-navy);rotate:-45deg}
.pc-ind{position:absolute;left:14px;top:14px;display:flex;gap:6px;flex-wrap:wrap}
.pc-ind span{display:inline-flex;align-items:center;min-height:26px;font-family:var(--at-mono);font-size:11px;line-height:1;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;padding:0 12px;border-radius:999px;background:var(--at-navy);color:#FFFFFF;box-shadow:0 4px 12px rgba(14,16,34,.18)}
.pc-body{display:flex;flex-direction:column;gap:12px;padding:20px 22px 22px}
.pc-ref{font-family:var(--at-mono);font-size:11px;letter-spacing:.08em;color:#6B6E85}
.pc-title{margin:0 !important;font-size:21px;font-weight:400;letter-spacing:-.015em;line-height:1.18;color:var(--at-navy)}
.pc-tags{display:flex;flex-wrap:wrap;gap:6px}
.pc-tags span{font-size:12px;padding:5px 10px;border-radius:999px;background:#F2F2F4;color:#3C3F55}
.pc-tags span.hl{background:rgba(242,145,0,.16);color:#7A4500}
.lst .pc{flex-direction:row;align-items:stretch}
.lst .pc-img{flex:0 0 280px;aspect-ratio:auto;min-height:170px}
.lst .pc-body{flex:1 1 auto;justify-content:center}
.more{display:inline-flex;align-items:center;gap:12px;min-height:56px;padding:0 10px 0 28px;border-radius:999px;border:1px solid var(--at-navy);background:transparent;color:var(--at-navy);font-family:inherit;font-size:15px;cursor:pointer;transition:background .3s,color .3s}
.more:hover{background:var(--at-navy);color:#FFFFFF}
.more .go{display:flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:999px;background:var(--at-orange);color:var(--at-navy)}
.at-empty{display:flex;flex-direction:column;align-items:center;text-align:center;gap:16px;padding:80px 24px;border-radius:24px;border:1.5px dashed #C9CBD6}

/* ==========================================================================
   RESPONSIVE
   ========================================================================== */
@media (max-width: 1100px){
  .at-cat{grid-template-columns:repeat(1,minmax(0,1fr))}
  .at-cat-side{position:static}
}
@media (max-width: 960px){
  .at-wrap,.at-header,.fm-bar,.fm-grid,.fm-foot,.at-footer-in,.mega{padding-left:24px !important;padding-right:24px !important}
  .at-nav{display:none !important}
  .at-split,.at-modes,.at-glasses,.at-ind-grid{grid-template-columns:repeat(1,minmax(0,1fr)) !important}
  .at-meta,.at-footer-cols{grid-template-columns:repeat(2,minmax(0,1fr)) !important}
  .at-meta-item:nth-child(3){border-left:0;padding-left:0 !important}
  .at-panels{flex-direction:column !important}
  .e-con.at-panel{flex:none !important;min-height:360px}
  .e-con.at-nc.slot-0,.e-con.at-nc.slot-1,.e-con.at-nc.slot-2{grid-column:1 / -1;grid-row:auto}
  .at-sol-hero-grid > *{grid-column:1 / -1 !important}
  .fm-grid{grid-template-columns:repeat(1,minmax(0,1fr));overflow-y:auto;align-items:start}
  .fm-grid > *{grid-column:1 / -1}
  .grid3{grid-template-columns:repeat(2,minmax(0,1fr))}
  .lst .pc{flex-direction:column}
  .lst .pc-img{flex:none;aspect-ratio:3 / 2}
  .e-con.at-sol-preview{position:relative !important;top:0}
}
@media (max-width: 600px){
  .at-meta,.at-footer-cols,.grid3{grid-template-columns:repeat(1,minmax(0,1fr)) !important}
  .at-meta-item{border-left:0;padding-left:0 !important}
  .nav-cta{display:none !important}
  .at-header,.fm-bar{gap:10px;padding-left:16px !important;padding-right:16px !important}
  .at-logo img,.fm-bar > img{height:32px !important}
  .at-actions{gap:8px}
  .lb{min-width:36px;height:36px;padding:0 6px}
  .at-sol-tag{display:none}
  .e-con.at-sol-row{grid-template-columns:40px minmax(0,1fr) 44px !important}
  .at-nc.slot-3 .at-nc-top,.at-nc.slot-4 .at-nc-top,.at-nc.slot-5 .at-nc-top{display:none !important}
}
@media (prefers-reduced-motion: reduce){
  *,*::before,*::after{animation-duration:.01ms !important;animation-iteration-count:1 !important;transition-duration:.01ms !important}
  .mq-track,.spin,.spin-slow,.blob,.pulse,.trace,.scan{animation:none !important}
}

/* ==========================================================================
   AGGIORNAMENTO — ingresso, hero video, famiglie, Company, notizie, catalogo
   ========================================================================== */

/* ---------- transizione d'ingresso (solo alla prima pagina della visita) ---------- */
@property --at-pct{syntax:'<integer>';inherits:false;initial-value:0}
.at-intro{display:none}
@keyframes atIbIn{from{opacity:0;scale:.2;rotate:-90deg}to{opacity:1;scale:1;rotate:0deg}}
@keyframes atIbSpin{to{rotate:60deg}}
@keyframes atInFade{from{opacity:0;translate:0 14px}to{opacity:1;translate:0 0}}
@keyframes atInBar{from{scale:0 1}to{scale:1 1}}
@keyframes atInCount{from{--at-pct:0}to{--at-pct:100}}
@keyframes atInCoreOut{to{opacity:0;scale:1.08;filter:blur(6px)}}
@keyframes atInLift{to{clip-path:inset(0 0 100% 0)}}
@keyframes atInGone{to{visibility:hidden}}
@media (prefers-reduced-motion: no-preference){
  html.at-intro-on .at-intro{display:block;position:fixed;inset:0;z-index:9999;pointer-events:none;animation:atInGone 0s linear 2.9s both}
  .at-intro-sheet{position:absolute;inset:0;clip-path:inset(0 0 0 0)}
  .at-intro-bg{background:radial-gradient(ellipse 60% 50% at 50% 45%,#16204A 0%,#0E1022 70%);animation:atInLift .9s cubic-bezier(.76,0,.24,1) 1.85s both}
  .at-intro-or{background:var(--at-orange);animation:atInLift .9s cubic-bezier(.76,0,.24,1) 2s both}
  .at-intro-core{position:absolute;left:50%;top:50%;translate:-50% -50%;display:flex;flex-direction:column;align-items:center;gap:18px;width:min(340px,80vw);animation:atInCoreOut .45s ease 1.55s both}
  .at-intro-logo{width:96px;height:auto;overflow:visible;animation:atIbSpin 1.4s cubic-bezier(.6,0,.2,1) .7s both}
  .at-intro .ib{transform-box:fill-box;transform-origin:50% 50%;animation:atIbIn .7s cubic-bezier(.2,.9,.25,1.25) both}
  .at-intro .ib0{animation-delay:.05s}.at-intro .ib1{animation-delay:.12s}.at-intro .ib2{animation-delay:.19s}.at-intro .ib3{animation-delay:.26s}.at-intro .ib4{animation-delay:.33s}.at-intro .ib5{animation-delay:.4s}
  .at-intro-name{font-size:30px;font-weight:300;letter-spacing:-.02em;color:#FFFFFF;animation:atInFade .6s ease .45s both}
  .at-intro-name b{font-weight:600;color:var(--at-orange)}
  .at-intro-meta{display:flex;justify-content:space-between;width:100%;font-family:var(--at-mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--at-muted);animation:atInFade .6s ease .6s both}
  .at-intro-n{animation:atInCount 1.2s cubic-bezier(.4,0,.2,1) .3s both;counter-reset:atpct var(--at-pct)}
  .at-intro-n::after{content:counter(atpct) "%";color:#FFFFFF}
  .at-intro-bar{width:100%;height:2px;background:rgba(255,255,255,.12);border-radius:2px;overflow:hidden}
  .at-intro-bar span{display:block;height:100%;background:linear-gradient(90deg,var(--at-blue),var(--at-orange));transform-origin:0 50%;animation:atInBar 1.2s cubic-bezier(.4,0,.2,1) .3s both}
  /* i contenuti del hero entrano mentre si alzano i sipari */
  html.at-intro-on .at-hx .in1{animation-delay:2.05s}
  html.at-intro-on .at-hx .in2{animation-delay:2.2s}
  html.at-intro-on .at-hx .in3{animation-delay:2.6s}
  html.at-intro-on .at-hx .in4{animation-delay:2.85s}
}

/* ---------- hero: video a tutto schermo ---------- */
.e-con.at-hx{margin-top:-90px !important;background:var(--at-navy)}
.at-hx-stage{position:relative;min-height:100vh;min-height:100svh;display:flex !important;flex-direction:column !important;justify-content:flex-end !important;padding:150px 0 96px !important;overflow:hidden}
.at-hx-media{position:absolute !important;inset:0;z-index:0;pointer-events:none;overflow:hidden;background:var(--at-navy)}
.at-hx-vid{position:absolute;inset:0}
.at-hx-vid video{display:block;width:100%;height:100%;object-fit:cover;object-position:62% 50%;filter:saturate(1.25) contrast(1.08) brightness(1.15)}
.at-hx-blue{position:absolute;inset:0;background:var(--at-blue);mix-blend-mode:color;opacity:.3}
.at-hx-tint{position:absolute;inset:0;background:linear-gradient(90deg,rgba(14,16,34,.9) 0%,rgba(14,16,34,.6) 35%,rgba(14,16,34,.1) 70%,rgba(14,16,34,.25) 100%),linear-gradient(180deg,rgba(14,16,34,.55) 0%,rgba(14,16,34,0) 25%,rgba(14,16,34,0) 50%,rgba(14,16,34,.85) 88%,#0E1022 100%)}
.at-hx-grid{position:absolute;inset:0;opacity:.18;background-image:linear-gradient(rgba(255,255,255,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.06) 1px,transparent 1px);background-size:64px 64px;-webkit-mask-image:radial-gradient(ellipse 60% 70% at 70% 40%,#000,transparent 75%);mask-image:radial-gradient(ellipse 60% 70% at 70% 40%,#000,transparent 75%)}
.at-hx .at-hero-inner{padding-top:0 !important}
.at-hx-cue-w{position:absolute !important;right:64px;bottom:48px;z-index:3;width:auto !important}
.at-hx-cue{display:flex;flex-direction:column;align-items:center;gap:12px;writing-mode:vertical-rl;font-family:var(--at-mono);font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--at-muted)}
.at-hx-cue span{position:relative;width:1px;height:64px;background:rgba(255,255,255,.15);overflow:hidden}
.at-hx-cue i{position:absolute;inset:0;background:var(--at-orange);animation:atCue 2.2s cubic-bezier(.6,0,.2,1) infinite}
@keyframes atCue{0%{transform:scaleY(0);transform-origin:top}45%{transform:scaleY(1);transform-origin:top}55%{transform:scaleY(1);transform-origin:bottom}100%{transform:scaleY(0);transform-origin:bottom}}
@keyframes atHxFrame{to{clip-path:inset(3% 2.5% 0 2.5% round 36px)}}
@keyframes atHxDrift{to{scale:1.12;translate:0 6%}}
@supports (animation-timeline: view()){
  @media (prefers-reduced-motion: no-preference){
    .at-hx-media{animation:atHxFrame linear both;animation-timeline:view();animation-range:exit 0% exit 70%}
    .at-hx-vid{animation:atHxDrift linear both;animation-timeline:view();animation-range:exit 0% exit 100%}
  }
}

/* ---------- soluzioni (home): testo introduttivo e famiglie di prodotti ---------- */
.at-sol-intro{max-width:620px;margin-top:24px !important;font-size:18px;line-height:1.65;font-weight:300;color:#4A4E66}
.at-fam-row{display:grid !important;grid-template-columns:repeat(3,minmax(0,1fr)) !important;gap:16px !important;margin:-16px 0 72px !important}
.e-con.at-fam{position:relative;overflow:hidden;display:flex !important;flex-direction:column !important;gap:14px !important;padding:26px 26px 24px !important;border-radius:24px;background:#FFFFFF;border:1px solid #E1E2E8;color:var(--at-navy);transition:border-color .35s,transform .5s var(--at-ease),box-shadow .5s}
.e-con.at-fam::before{content:"";position:absolute;left:0;top:0;height:3px;width:48px;background:var(--at-orange);transition:width .6s var(--at-ease)}
.e-con.at-fam:hover{transform:translateY(-6px);border-color:rgba(242,145,0,.5);box-shadow:0 24px 50px rgba(14,16,34,.10)}
.e-con.at-fam:hover::before{width:100%}
.at-fam-big{position:absolute;right:-6px;bottom:-34px;font-size:150px;font-weight:100;line-height:1;letter-spacing:-.06em;color:#F2F2F4;pointer-events:none;transition:color .4s}
.e-con.at-fam:hover .at-fam-big{color:rgba(242,145,0,.12)}
.at-fam-head-w{position:static !important}
.at-fam-head-w .elementor-widget-container{position:static}
.at-fam-head{position:relative;display:flex;justify-content:space-between;align-items:center}
.at-fam-num{font-family:var(--at-mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:#A35F00}
.at-fam-ic{display:inline-flex;align-items:center;justify-content:center;width:52px;height:52px;border-radius:16px;background:var(--at-light);transition:background .35s}
.e-con.at-fam:hover .at-fam-ic{background:rgba(242,145,0,.16)}
.at-fam-name{position:relative;margin-top:6px !important;font-size:30px;font-weight:300;letter-spacing:-.025em;line-height:1.05}
.at-fam-txt{position:relative;max-width:340px;font-size:15px;line-height:1.55;color:#555970}
.at-fam-btns{position:relative;display:flex !important;flex-direction:row !important;flex-wrap:wrap !important;gap:8px !important;margin-top:8px !important}
.at-fam-btns > .elementor-widget{width:auto !important}
.at-site .at-fam-b1 .elementor-button,.at-site .at-fam-b2 .elementor-button{display:inline-flex;align-items:center;min-height:44px;padding:0 18px;border-radius:999px;font-size:14px;font-weight:500;transition:background .3s,color .3s,border-color .3s}
.at-site .at-fam-b1 .elementor-button{background:var(--at-navy);color:#FFFFFF}
.at-site .at-fam-b1 .elementor-button:hover{background:var(--at-orange);color:var(--at-navy)}
.at-site .at-fam-b2 .elementor-button{border:1px solid #C9CBD6;color:var(--at-navy)}
.at-site .at-fam-b2 .elementor-button:hover{border-color:var(--at-navy);background:var(--at-navy);color:#FFFFFF}

/* ---------- azienda ---------- */
.at-co-intro{display:grid !important;grid-template-columns:minmax(0,7fr) minmax(0,5fr) !important;gap:64px !important;align-items:stretch !important}
.at-co-text{display:flex !important;flex-direction:column !important;justify-content:space-between !important;gap:48px !important}
.at-co-h{font-weight:100;font-size:clamp(44px,5.8vw,96px);line-height:.98;letter-spacing:-.04em}
.at-co-p{max-width:600px;margin-bottom:28px !important;font-size:20px;line-height:1.6;font-weight:300;color:var(--at-soft)}
.at-co-p b,.at-co-p strong{color:#FFFFFF;font-weight:500}
.at-co-tags{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:36px}
.at-co-tag{font-family:var(--at-mono);font-size:12px;letter-spacing:.1em;text-transform:uppercase;padding:9px 14px;border-radius:999px;border:1px solid rgba(255,255,255,.22);color:var(--at-soft)}
.at-co-text-b .at-btn{width:auto !important}
.e-con.at-co-photo{position:relative;min-height:560px;border-radius:30px;overflow:hidden}
.at-co-photo-img{position:absolute !important;inset:0}
.at-co-photo-img img{width:100% !important;height:100% !important;max-width:none !important;object-fit:cover}
.at-co-photo-over{position:absolute !important;inset:0;background:linear-gradient(180deg,rgba(14,16,34,.35),rgba(14,16,34,0) 35%,rgba(14,16,34,.55) 100%)}
.at-co-chip{position:absolute;left:20px;top:20px;font-family:var(--at-mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;padding:8px 12px;border-radius:999px;background:rgba(14,16,34,.6);border:1px solid rgba(255,255,255,.25);color:#FFFFFF;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}
.at-co-card{position:absolute;left:20px;right:20px;bottom:20px;padding:20px 22px;border-radius:20px;background:#FFFFFF;color:var(--at-navy);box-shadow:0 24px 50px rgba(0,0,0,.35)}
.at-co-card-k{display:flex;justify-content:space-between;gap:12px;font-family:var(--at-mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:#555970}
.at-co-card-k b{color:var(--at-navy);font-weight:400}
.at-co-card-g{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:16px}
.at-co-card-g > div + div{border-left:1px solid #DCDDE4;padding-left:16px}
.at-co-card-g .v{font-size:30px;font-weight:300;letter-spacing:-.03em}
.at-co-card-g .d{font-size:13px;line-height:1.45;color:#4A4E66}
.at-co-ribbon{margin:110px 0 96px !important}
.at-how-head{display:flex !important;flex-direction:row !important;flex-wrap:wrap !important;justify-content:space-between !important;align-items:flex-end !important;gap:24px !important;margin-bottom:48px !important}
.at-how-head > .elementor-widget{width:auto !important}
.at-how-h{font-size:clamp(32px,3.2vw,48px);font-weight:200;letter-spacing:-.03em;line-height:1.05;color:#FFFFFF}
.at-how-k{font-family:var(--at-mono);font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--at-muted)}
.at-steps{display:grid !important;grid-template-columns:repeat(3,minmax(0,1fr)) !important;gap:40px !important}
.e-con.at-step{position:relative;padding-top:32px !important;border-top:1px solid rgba(255,255,255,.15)}
.e-con.at-step::before{content:"";position:absolute;left:0;top:-1px;width:56px;height:1px;background:var(--at-orange);transition:width .7s var(--at-ease)}
.e-con.at-step:hover::before{width:100%}
.at-step-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:40px;font-family:var(--at-mono);font-size:13px;letter-spacing:.12em;color:var(--at-orange)}
.at-step-title{margin-bottom:14px !important;font-size:30px;font-weight:300;letter-spacing:-.02em;line-height:1.1;color:#FFFFFF}
.at-step-txt{font-size:16px;line-height:1.65;font-weight:300;color:var(--at-muted)}
.at-co-links{display:grid !important;grid-template-columns:repeat(4,minmax(0,1fr)) !important;gap:16px !important;margin-top:96px !important}
.e-con.at-co-link{position:relative;isolation:isolate;overflow:hidden;display:flex !important;flex-direction:row !important;justify-content:space-between !important;align-items:flex-end !important;gap:16px !important;min-height:220px;padding:22px !important;border-radius:22px;border:1px solid rgba(255,255,255,.12);color:#FFFFFF;transition:border-color .3s,transform .45s var(--at-ease)}
.e-con.at-co-link::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(14,16,34,0) 30%,rgba(14,16,34,.85) 100%)}
.e-con.at-co-link:hover{border-color:rgba(242,145,0,.6);transform:translateY(-4px);color:#FFFFFF}
.at-co-link-img{position:absolute !important;inset:0;z-index:-2}
.at-co-link-img img{width:100% !important;height:100% !important;max-width:none !important;object-fit:cover;filter:brightness(.78) saturate(1.05);transition:filter .5s,transform 1s var(--at-ease)}
.e-con.at-co-link:hover .at-co-link-img img{filter:brightness(1) saturate(1.15);transform:scale(1.06)}
.at-co-link-title{font-size:22px;font-weight:400;letter-spacing:-.015em;line-height:1.15}
.e-con.at-co-link > .elementor-widget:not(.at-co-link-img){width:auto !important}
.at-co-go{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:999px;border:1px solid rgba(255,255,255,.5);transition:background .3s,color .3s,border-color .3s,rotate .35s}
.e-con.at-co-link:hover .at-co-go{background:var(--at-orange);border-color:var(--at-orange);color:var(--at-navy);rotate:-45deg}

/* ---------- notizie: tre alla volta, tutte con immagine ---------- */
.at-nw{display:grid !important;grid-template-columns:repeat(12,minmax(0,1fr)) !important;grid-template-rows:repeat(2,minmax(290px,auto));gap:20px !important}
.e-con.at-nwc{position:relative;isolation:isolate;overflow:hidden;display:flex !important;flex-direction:column !important;justify-content:space-between !important;gap:24px !important;padding:30px !important;border-radius:26px;border:1px solid rgba(255,255,255,.12);background:#121530;color:#FFFFFF;transition:transform .45s var(--at-ease),border-color .3s}
.e-con.at-nwc:hover{transform:translateY(-6px);border-color:rgba(242,145,0,.6);color:#FFFFFF}
.e-con.at-nwc.slot-0{grid-column:span 7;grid-row:1 / span 2;order:0;min-height:600px;padding:40px !important;border-radius:30px}
.e-con.at-nwc.slot-1{grid-column:span 5;grid-row:1;order:1}
.e-con.at-nwc.slot-2{grid-column:span 5;grid-row:2;order:2}
.e-con.at-nwc.slot-3{display:none !important}
.at-nwc-img{position:absolute !important;inset:0;z-index:-2}
.at-nwc-img img{width:100% !important;height:100% !important;max-width:none !important;object-fit:cover;transition:transform 1.2s var(--at-ease)}
.e-con.at-nwc:hover .at-nwc-img img{transform:scale(1.06)}
.at-nwc-top-w{position:static !important}
.at-nwc-top-w .elementor-widget-container{position:static}
.at-nwc-shade{position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(14,16,34,.5) 0%,rgba(14,16,34,.05) 32%,rgba(14,16,34,.25) 55%,rgba(14,16,34,.92) 100%)}
.at-nwc-top{position:relative;display:flex;flex-wrap:wrap;gap:8px}
.at-nwc-chip{font-family:var(--at-mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;padding:7px 12px;border-radius:999px;background:rgba(14,16,34,.55);border:1px solid rgba(255,255,255,.28);color:#FFFFFF;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}
.at-nwc-chip.hl{background:var(--at-orange);border-color:var(--at-orange);color:var(--at-navy)}
.at-nwc-chip.eu{background:#FFFFFF;border-color:#FFFFFF;color:#1B3A8C}
.at-nwc-feat{display:none}
.e-con.at-nwc.slot-0 .at-nwc-feat{display:inline-block}
.at-nwc-bot{display:flex !important;flex-direction:row !important;justify-content:space-between !important;align-items:flex-end !important;gap:20px !important}
.at-nwc-bot > .e-con,.at-nwc-bot > .elementor-widget{width:auto !important}
.at-nwc-date{margin-bottom:10px !important;font-family:var(--at-mono);font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--at-amber)}
.at-nwc-title{max-width:520px;font-weight:300;font-size:22px;line-height:1.12;letter-spacing:-.02em}
.e-con.at-nwc.slot-0 .at-nwc-title{font-size:clamp(34px,3.4vw,54px);line-height:1.02;letter-spacing:-.03em}
.at-nwc-go{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:50px;height:50px;border-radius:999px;border:1px solid rgba(255,255,255,.5);background:rgba(14,16,34,.35);color:#FFFFFF;transition:background .3s,color .3s,border-color .3s,transform .35s}
.e-con.at-nwc:hover .at-nwc-go{background:var(--at-orange);color:var(--at-navy);border-color:var(--at-orange);transform:rotate(-45deg)}
/* laterali: immagine sopra e testo sotto, così il titolo resta sempre leggibile */
.e-con.at-nwc.slot-1,.e-con.at-nwc.slot-2{padding:0 !important;gap:0 !important;justify-content:flex-start !important}
.e-con.at-nwc.slot-1 .at-nwc-img,.e-con.at-nwc.slot-2 .at-nwc-img{position:relative !important;inset:auto;z-index:auto;flex:1 1 auto;min-height:150px;overflow:hidden}
.e-con.at-nwc.slot-1 .at-nwc-shade,.e-con.at-nwc.slot-2 .at-nwc-shade{display:none}
.e-con.at-nwc.slot-1 .at-nwc-top,.e-con.at-nwc.slot-2 .at-nwc-top{position:absolute;left:18px;top:18px;right:18px}
.e-con.at-nwc.slot-1 .at-nwc-bot,.e-con.at-nwc.slot-2 .at-nwc-bot{padding:20px 22px 22px !important;background:#121530;border-top:1px solid rgba(255,255,255,.08)}
.e-con.at-nwc.slot-1 .at-nwc-title,.e-con.at-nwc.slot-2 .at-nwc-title{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
@keyframes atNwIn{from{opacity:0;translate:24px 0}to{opacity:1;translate:0 0}}
@keyframes atNwInB{from{opacity:0;translate:-24px 0}to{opacity:1;translate:0 0}}
.at-nw.nv-next .at-nwc > *{animation:atNwIn .6s var(--at-ease) both}
.at-nw.nv-prev .at-nwc > *{animation:atNwInB .6s var(--at-ease) both}
.at-news-pager{display:flex;align-items:center;gap:16px;margin-top:28px;font-family:var(--at-mono);font-size:12px;letter-spacing:.12em;color:var(--at-muted)}
.at-news-pager b{font-weight:400;color:#FFFFFF}
.at-news-pager .bar{position:relative;flex:0 0 160px;height:1px;background:rgba(255,255,255,.18)}
.at-news-pager .bar i{position:absolute;left:0;top:-1px;height:3px;border-radius:3px;background:var(--at-orange);width:17%;transition:width .5s var(--at-ease)}

/* ---------- catalogo Solutions: filtri in alto, a scomparsa ---------- */
.at-cat{display:block}
.at-cat-tools{margin-bottom:20px !important}
.at-cat-tools .srch{flex:1 1 300px;max-width:520px}
.at-tb-sp{flex:1 1 0;min-width:0}
.fbtn{display:inline-flex;align-items:center;gap:10px;min-height:52px;padding:0 20px;border-radius:999px;border:1px solid #DCDDE4;background:#FFFFFF;color:var(--at-navy);font-family:inherit;font-size:15px;font-weight:500;cursor:pointer;transition:background .3s,color .3s,border-color .3s}
.fbtn:hover{border-color:var(--at-navy)}
.fbtn.on{background:var(--at-navy);color:#FFFFFF;border-color:var(--at-navy)}
.fb-n{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:22px;padding:0 6px;box-sizing:border-box;border-radius:999px;background:var(--at-orange);color:var(--at-navy);font-family:var(--at-mono);font-size:12px}
.fbtn .chev{transition:rotate .4s var(--at-ease)}
.fbtn.on .chev{rotate:180deg}
.fp{display:grid;grid-template-rows:0fr;margin-bottom:12px;transition:grid-template-rows .55s var(--at-ease),margin-bottom .55s var(--at-ease)}
.fp.open{grid-template-rows:1fr;margin-bottom:40px}
.fp-in{min-height:0;overflow:hidden}
.fp-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.5fr) minmax(0,.9fr) minmax(0,1.1fr);gap:32px;padding:28px;border-radius:28px;background:#FFFFFF;border:1px solid #DCDDE4;opacity:0;translate:0 -14px;transition:opacity .4s,translate .55s var(--at-ease)}
.fp.open .fp-grid{opacity:1;translate:0 0}
.fp .fl-group{border-top:0;padding:0}
.fp .fl-k{margin:0 0 12px !important}
.fl-list{display:flex;flex-wrap:wrap;gap:8px}
.fp .fl-opt{width:auto;min-height:40px;gap:8px;padding:6px 8px 6px 12px;border:1px solid #DCDDE4;border-radius:999px;background:#F7F7F9;font-size:14px;transition:background .25s,border-color .25s,color .25s}
.fp .fl-opt:hover{background:#FFFFFF;border-color:var(--at-navy)}
.fp .fl-opt.on{background:var(--at-navy);border-color:var(--at-navy);color:#FFFFFF;font-weight:500}
.fp .fl-opt.on .fl-n{background:var(--at-orange);color:var(--at-navy)}
.fp .fl-n{margin-left:2px !important}
.fp .fl-box{width:16px;height:16px;border-radius:5px}
.fp .fl-opt.on .fl-box{border-color:var(--at-orange)}
.fp-cta{padding:22px;border-radius:20px;background:var(--at-navy);color:#FFFFFF}
.fp-cta-row{display:flex;flex-wrap:wrap;align-items:center;gap:14px;margin-top:16px}
.fp-talk{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 18px;border-radius:999px;background:var(--at-orange);color:var(--at-navy) !important;font-size:14px;font-weight:600}
.fp-cta .clear{color:var(--at-amber)}
/* card prodotto: anteprime più grandi e dettagli più curati */
.grid3{gap:24px}
.pc{border:1px solid #E6E7EC;box-shadow:0 1px 2px rgba(14,16,34,.04)}
.pc:hover{border-color:rgba(242,145,0,.45);box-shadow:0 28px 56px rgba(14,16,34,.14)}
.pc-img{aspect-ratio:10 / 9}
.pc-img::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(14,16,34,0) 55%,rgba(14,16,34,.28) 100%);opacity:0;transition:opacity .5s;pointer-events:none}
.pc:hover .pc-img::after{opacity:1}
.pc-go{width:48px;height:48px;scale:.9;transition:background .3s,color .3s,rotate .35s,scale .45s var(--at-ease)}
.pc:hover .pc-go{scale:1}
.pc-body{position:relative;gap:10px;padding:22px 24px 24px}
.pc-body::before{content:"";position:absolute;left:24px;top:0;width:32px;height:2px;background:var(--at-orange);transition:width .55s var(--at-ease)}
.pc:hover .pc-body::before{width:calc(100% - 48px)}
.pc-ref{display:flex;align-items:center;gap:8px;text-transform:uppercase;letter-spacing:.12em;color:#A35F00}
.pc-ref::before{content:"";width:6px;height:6px;border-radius:999px;background:var(--at-orange);flex-shrink:0}
.pc-title{font-size:23px}
.lst .pc-img{flex:0 0 380px;min-height:240px}

/* ---------- responsive degli elementi nuovi ---------- */
@media (max-width: 1100px){
  .fp-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width: 960px){
  .at-hx-cue-w{display:none}
  .at-fam-row,.at-steps{grid-template-columns:repeat(1,minmax(0,1fr)) !important}
  .at-co-intro{grid-template-columns:repeat(1,minmax(0,1fr)) !important;gap:40px !important}
  .e-con.at-co-photo{min-height:460px}
  .at-co-links{grid-template-columns:repeat(2,minmax(0,1fr)) !important}
  .at-nw{grid-template-rows:none}
  .e-con.at-nwc.slot-0,.e-con.at-nwc.slot-1,.e-con.at-nwc.slot-2{grid-column:1 / -1;grid-row:auto}
  .e-con.at-nwc.slot-0{min-height:460px}
  .e-con.at-nwc.slot-1,.e-con.at-nwc.slot-2{min-height:300px}
  .lst .pc-img{flex:none}
}
@media (max-width: 600px){
  .at-hx-stage{padding-bottom:64px !important}
  .at-hx-vid video{object-position:70% 50%}
  .at-co-links{grid-template-columns:repeat(1,minmax(0,1fr)) !important}
  .at-co-card{position:relative;left:auto;right:auto;bottom:auto;margin:300px 12px 12px !important}
  .e-con.at-nwc.slot-0{padding:26px !important}
  .fp-grid{grid-template-columns:repeat(1,minmax(0,1fr));padding:20px}
  .at-cat-tools .srch{max-width:none}
  .at-tb-sp{display:none}
}

/* ---------- footer: disegno tecnico ---------- */
/* footer: disegno tecnico che si traccia da solo, con linea di scansione */
@keyframes tdDraw{0%{stroke-dashoffset:1}24%,100%{stroke-dashoffset:0}}
@keyframes tdFade{0%,20%{opacity:0}34%,100%{opacity:1}}
@keyframes tdCycle{0%,88%{opacity:1}96%{opacity:0}100%{opacity:1}}
@keyframes tdScan{from{translate:70px 0}to{translate:450px 0}}
.td-all{animation:tdCycle 14s linear infinite}
.td-l,.td-holes circle{stroke-dasharray:1;animation:tdDraw 14s cubic-bezier(.65,0,.25,1) infinite}
.td-d1{animation-delay:.35s}.td-d2,.td-holes circle{animation-delay:.7s}
.td-n,.td-h{animation:tdFade 14s ease infinite}
.td-h{animation-delay:.6s}.td-d3{animation-delay:1s}
.td-scan{opacity:.55;animation:tdScan 4.5s cubic-bezier(.45,0,.55,1) infinite alternate}
@media (prefers-reduced-motion: reduce){.td-all,.td-l,.td-holes circle,.td-n,.td-h,.td-scan{animation:none !important}.td-l,.td-holes circle{stroke-dasharray:none}.td-scan{display:none}}
@media (max-width: 760px){.tdw{width:360px !important;height:360px !important;right:-90px !important;top:-60px !important}}
