@font-face{font-family:Poppins;font-weight:400;font-display:swap;src:url(fonts/poppins-latin-400-normal.woff2) format("woff2")}
@font-face{font-family:Poppins;font-weight:500;font-display:swap;src:url(fonts/poppins-latin-500-normal.woff2) format("woff2")}
@font-face{font-family:Poppins;font-weight:600;font-display:swap;src:url(fonts/poppins-latin-600-normal.woff2) format("woff2")}
@font-face{font-family:Poppins;font-weight:800;font-display:swap;src:url(fonts/poppins-latin-800-normal.woff2) format("woff2")}

:root{--cr-green:#addA1c;--cr-pink:#e81278;--cr-black:#000;--cr-accent:var(--cr-pink);--cr-head:var(--cr-black);--cr-ease:cubic-bezier(.2,.7,.2,1)}
.cr-head-exhibit{--cr-accent:#7da80f;--cr-head:var(--cr-green)}
.cr-head-visual{--cr-accent:var(--cr-pink);--cr-head:var(--cr-pink)}
.cr-site{font-family:Poppins,system-ui,sans-serif;color:#000;background:#fff;overflow-x:hidden;margin:0}
.cr-site *{box-sizing:border-box}
.cr-site .elementor-heading-title{font-family:Poppins,system-ui,sans-serif;font-weight:800;color:#000;line-height:1.05;letter-spacing:-.01em}

/* Header */
.cr-header{position:sticky;top:0;z-index:50;display:flex;align-items:center;gap:32px;min-height:72px;padding:10px 28px;background:var(--cr-head)}
.admin-bar .cr-header{top:32px}
.cr-logo img{display:block;height:48px;width:auto}
.cr-nav{flex:1}
.cr-nav ul{display:flex;justify-content:center;gap:clamp(16px,3vw,44px);list-style:none;margin:0;padding:0}
.cr-nav a{display:block;font-weight:600;font-size:14px;letter-spacing:.1em;text-transform:uppercase;color:#000;text-decoration:none;transition:color .25s}
.cr-nav a:hover,.cr-nav .current-menu-item>a,.cr-nav .current_page_ancestor>a{color:#fff}
.cr-head-black .cr-nav a{color:#fff}
.cr-head-black .cr-nav a:hover,.cr-head-black .cr-nav .current-menu-item>a{color:var(--cr-pink)}
.cr-lang{display:flex;gap:10px;margin:0;font-size:14px}
.cr-lang a{color:#000;text-decoration:underline;text-underline-offset:3px}
.cr-header:not(.cr-header-home) .cr-lang a{color:#fff}
.cr-burger{display:none;margin-left:auto;width:44px;height:44px;padding:12px 9px;background:none;border:0;cursor:pointer}
.cr-burger span{display:block;height:2px;margin:6px 0;background:#000;transition:transform .25s}
.cr-head-black .cr-burger span{background:#fff}
.cr-header-home{position:absolute;inset:0 0 auto;background:none;justify-content:center;padding-top:2.2vw;z-index:5}
.admin-bar .cr-header-home{top:0}
.cr-header-home .cr-logo img{height:clamp(58px,8.600vw,120px)}
.cr-header-home .cr-lang{position:absolute;top:2.6vw;right:9vw}

/* Home */
.cr-home{position:relative;overflow:hidden;min-height:max(79vw,640px)!important;padding:clamp(130px,20vw,300px) 16px clamp(150px,14vw,220px)!important;margin-bottom:-14vw}
.cr-home:before,.cr-home:after{content:"";position:absolute;top:-4.9vw;width:96.800vw;height:96.800vw;border-radius:50%;z-index:0;transition:transform .5s var(--cr-ease);pointer-events:none}
.cr-home:before{left:-67.400vw;background:var(--cr-green);transform:translate(var(--mx,0),var(--my,0));animation:cr-from-left 1.1s var(--cr-ease) both}
.cr-home:after{right:-70.100vw;background:var(--cr-pink);transform:translate(calc(var(--mx,0px)*-1),calc(var(--my,0px)*-1));animation:cr-from-right 1.1s var(--cr-ease) both}
@keyframes cr-from-left{from{translate:-25vw 0}to{translate:0 0}}
@keyframes cr-from-right{from{translate:25vw 0}to{translate:0 0}}
.cr-home>*{position:relative;z-index:1}
.cr-site .cr-title .elementor-heading-title{font-size:clamp(42px,6.600vw,112px);text-align:center;line-height:1.02}

/* Bottoni */
.cr-site .cr-btn .elementor-button{display:inline-flex;align-items:center;justify-content:center;gap:18px;min-width:210px;padding:9px 26px;border-radius:40px;background:#000;font-family:Poppins,sans-serif;font-size:clamp(20px,2vw,28px);font-weight:400;line-height:1.2;overflow:hidden;transition:transform .3s var(--cr-ease)}
.cr-site .cr-btn .elementor-button:hover{transform:translateY(-2px)}
.cr-site .cr-btn-exhibit .elementor-button{color:var(--cr-green)}
.cr-site .cr-btn-visual .elementor-button{color:var(--cr-pink)}
.cr-site .cr-btn .elementor-button:after{content:"\2197";font-size:1.05em;transition:transform .3s var(--cr-ease)}
.cr-site .cr-btn .elementor-button:hover:after{transform:translate(3px,-3px)}
.cr-site .cr-btn-ghost .elementor-button{min-width:180px;padding:9px 24px;background:#fff;color:#000;border:1px solid #000;font-size:15px;letter-spacing:.06em}
.cr-site .cr-btn-ghost .elementor-button:after{display:none}
.cr-roll{display:inline-block;position:relative;overflow:hidden;vertical-align:bottom;line-height:1.2}
.cr-roll>span{display:block;transition:transform .4s var(--cr-ease)}
.cr-roll>span+span{position:absolute;top:100%;left:0;width:100%}
a:hover .cr-roll>span,a:focus-visible .cr-roll>span{transform:translateY(-100%)}

/* WhatsApp */
.cr-wa-btn{display:inline-flex;align-items:center;gap:12px;padding:10px 24px;border-radius:40px;background:#000;color:#3fd05f!important;font-weight:600;font-size:18px;text-decoration:none;transition:transform .3s var(--cr-ease)}
.cr-wa-btn:hover{transform:translateY(-2px)}
.cr-wa-btn svg{width:28px;height:28px}
.cr-call{text-align:center;font-size:15px;letter-spacing:.1em;line-height:1.4}
.cr-call p{margin:0}
.cr-call a{color:#000;font-weight:500;text-decoration:none}
.cr-wa-dot{position:fixed;right:22px;bottom:22px;z-index:40;display:grid;place-items:center;width:56px;height:56px;border-radius:50%;background:#25d366;color:#fff;box-shadow:0 6px 18px rgba(0,0,0,.25);transition:transform .25s var(--cr-ease)}
.cr-wa-dot:hover{transform:scale(1.08);color:#fff}
.cr-wa-dot svg{width:30px;height:30px}

/* Hero area */
.cr-hero{position:relative;min-height:min(41.300vw,640px)!important;padding:clamp(60px,8vw,110px) 16px clamp(50px,6vw,90px)!important;background:url(img/hero-visual.jpg) center top/cover no-repeat}
.cr-head-exhibit .cr-hero{background:linear-gradient(180deg,#f3f9dd,#fff)}
.cr-feat{padding:clamp(40px,5vw,70px) clamp(16px,6vw,80px)!important}
.cr-site .cr-feat-title .elementor-heading-title{font-size:clamp(18px,1.700vw,23px);color:var(--cr-accent);display:inline}
.cr-site .cr-feat-title .elementor-heading-title:after{content:" \2197";color:#000}
.cr-feat-title{text-align:center}
.cr-feat-text{text-align:center;font-size:14px;letter-spacing:.06em;line-height:1.5}
.cr-rule{width:1px;height:60px;background:#000;margin:0 auto}
.cr-site .cr-h2 .elementor-heading-title{font-size:clamp(30px,3.800vw,52px);text-align:center;padding-bottom:40px}

/* Footer */
.cr-footer{position:relative;z-index:2;margin-top:10vw;padding-top:clamp(40px,5vw,80px);background:#000;color:#fff}
.cr-footer:before{content:"";position:absolute;left:-10%;right:-10%;top:-9vw;height:18vw;background:#000;border-radius:50%}
.cr-footer-inner{position:relative}
.cr-site .cr-foot-title .elementor-heading-title,.cr-foot-title{margin:0 0 32px;font-family:Poppins,sans-serif;font-weight:800;font-size:clamp(28px,3.800vw,52px);color:#fff;text-align:center}
.cr-site .cr-foot-title .elementor-heading-title:after,.cr-foot-title:after{content:" \2197";color:var(--cr-pink)}
.cr-marquee{overflow:hidden;margin:6px 0}
.cr-marquee-track{display:flex;width:max-content;animation:cr-marquee 48s linear infinite}
.cr-marquee-2 .cr-marquee-track{animation-duration:42s;animation-direction:reverse}
.cr-marquee img{display:block;height:clamp(52px,6vw,84px);width:auto;max-width:none}
.cr-clienti:hover .cr-marquee-track{animation-play-state:paused}
@keyframes cr-marquee{to{transform:translateX(-50%)}}
.cr-foot-grid{display:grid;grid-template-columns:1.3fr .9fr 1.5fr 1fr;gap:32px;max-width:1320px;margin:70px auto 0;padding:0 28px;font-size:12px;line-height:1.7}
.cr-foot-grid h3{margin:0 0 14px;color:#fff;font:500 11px Poppins,sans-serif;letter-spacing:.06em}
.cr-foot-grid p{margin:0 0 8px}
.cr-foot-grid a{color:#fff}
.cr-foot-logo{display:block;width:150px;height:auto;margin-bottom:14px}
.cr-dot{position:relative;padding-left:24px}
.cr-dot:before{content:"";position:absolute;left:0;top:.35em;width:14px;height:14px;border-radius:50%;background:var(--cr-pink)}
.cr-news label{display:block;color:#aaa}
.cr-news input[type=email]{display:block;width:100%;padding:4px 0;background:none;border:0;border-bottom:1px solid #fff;border-radius:0;color:#fff}
.cr-news .cr-check{margin:12px 0;color:#fff;font-size:11px}
.cr-news button{padding:5px 16px;border:0;border-radius:20px;background:var(--cr-pink);color:#fff;font:500 11px Poppins,sans-serif;letter-spacing:.06em;cursor:pointer}
.cr-foot-right{text-align:right}
.cr-social{display:flex;justify-content:flex-end;gap:14px;font-weight:600}
.cr-social a{text-decoration:none}
.cr-foot-right .cr-lang{justify-content:flex-end;margin-top:18px}
.cr-site .cr-foot-right .cr-lang a{color:var(--cr-pink)}
.cr-copy{position:relative;margin:0;padding:48px 16px 28px;text-align:center;font-size:11px}

/* Effetti: partono solo con JS attivo */
.cr-js:not(.elementor-editor-active) .fx-reveal{opacity:0;transform:translateY(28px);transition:opacity .8s var(--cr-ease),transform .8s var(--cr-ease);transition-delay:var(--d,0s)}
.cr-js .fx-reveal.is-in{opacity:1!important;transform:none!important}
.cr-word{display:inline-block;white-space:nowrap}
.cr-char{display:inline-block;opacity:0;transform:translateY(.45em);transition:opacity .55s var(--cr-ease),transform .55s var(--cr-ease);transition-delay:calc(var(--i)*28ms)}
.is-in .cr-char{opacity:1;transform:none}
.elementor-editor-active .cr-char{opacity:1;transform:none}

@media (max-width:900px){
	.cr-burger{display:block}
	.cr-header{gap:12px;padding:8px 16px}
	.cr-nav{position:absolute;top:100%;left:0;right:0;display:none;padding:18px;background:var(--cr-head)}
	.cr-nav.is-open{display:block}
	.cr-nav ul{flex-direction:column;align-items:center;gap:18px}
	.cr-header:not(.cr-header-home) .cr-lang{order:-1;margin-left:auto}
	.cr-burger{margin-left:0}
	.cr-header-home .cr-lang{top:16px;right:16px}
	.cr-header-home .cr-logo img{height:64px}
	.cr-header-home{padding-top:44px}
	.cr-home:before,.cr-home:after{top:-20vw;width:96vw;height:96vw}
	.cr-home:before{left:-74vw}
	.cr-home:after{right:-76vw}
	.cr-home{min-height:0!important;padding-top:170px!important;margin-bottom:-6vw}
	.cr-foot-grid{grid-template-columns:1fr 1fr}
	.cr-foot-right{text-align:left}
	.cr-social,.cr-foot-right .cr-lang{justify-content:flex-start}
	.admin-bar .cr-header{top:0}
	.cr-hero{min-height:360px!important}
	.cr-footer:before{top:-6vw;height:12vw}
}
@media (max-width:560px){
	.cr-foot-grid{grid-template-columns:1fr}
	.cr-wa-dot{right:14px;bottom:14px}
}
@media (prefers-reduced-motion:reduce){
	.cr-site *,.cr-site *:before,.cr-site *:after{animation:none!important;transition:none!important}
	.cr-js .fx-reveal,.cr-char{opacity:1!important;transform:none!important}
	.cr-marquee{overflow-x:auto}
}

/* Priorita sul kit Elementor */
.cr-site .elementor-widget-heading .elementor-heading-title{font-family:Poppins,system-ui,sans-serif;font-weight:800;color:#000}
.cr-site .cr-feat-title.elementor-widget-heading .elementor-heading-title{color:var(--cr-accent)}
.cr-site .cr-foot-title.elementor-widget-heading .elementor-heading-title{color:#fff}
.cr-site .elementor-widget-text-editor{font-family:Poppins,system-ui,sans-serif;color:#000}
.cr-site .elementor-button{font-family:Poppins,system-ui,sans-serif}

html,.cr-site{overflow-x:clip}
.elementor-widget.cr-foot-title:after{content:none}
.cr-footer{overflow-x:clip}

@media (max-width:900px){.cr-logo{order:-2}.cr-header:not(.cr-header-home) .cr-lang{order:0;margin-left:auto}.cr-burger{order:1}}
