/* outfit-200 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Outfit';
  font-style: normal;
  font-weight: 200;
  src: url('../fonts/outfit-v11-latin-200.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* outfit-300 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Outfit';
  font-style: normal;
  font-weight: 300;
  src: url('../fonts/outfit-v11-latin-300.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* outfit-regular - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Outfit';
  font-style: normal;
  font-weight: 400;
  src: url('../fonts/outfit-v11-latin-regular.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* outfit-500 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Outfit';
  font-style: normal;
  font-weight: 500;
  src: url('../fonts/outfit-v11-latin-500.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* outfit-600 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Outfit';
  font-style: normal;
  font-weight: 600;
  src: url('../fonts/outfit-v11-latin-600.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* outfit-700 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Outfit';
  font-style: normal;
  font-weight: 700;
  src: url('../fonts/outfit-v11-latin-700.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* outfit-800 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Outfit';
  font-style: normal;
  font-weight: 800;
  src: url('../fonts/outfit-v11-latin-800.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* outfit-900 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Outfit';
  font-style: normal;
  font-weight: 900;
  src: url('../fonts/outfit-v11-latin-900.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
body, #sp-footer, #sp-bottom {
	font-family: 'Outfit';
	font-style: normal;
	background: #F7F8FC;
	color: #1E232F;
	line-height: 1.3;
	font-weight: 300;
}
a,a:hover, a:focus, a:active {
	color: #6f40f1;
}
p {
	font-size: 1.125rem;
	line-height: 1.5;
}
.row {
	--bs-gutter-x: 3.125rem;
}
/*CLASSI PERSONALIZZATE SPAZIATURA*/
.mb-150 {
	margin-bottom: 6.25rem;
}
.mt-150 {
	margin-top: 6.25rem;
}
.mt-30 {
	margin-top: 1.875rem;
}
#sp-header {
	background: transparent;
	box-shadow: 0 0 4px 0 rgba(0, 0, 0, 0);
}
#sp-header .container {
  max-width: 100%;
}
#sp-header.header-sticky {
	box-shadow: 0 0 6px 0 rgba(0, 0, 0, 0.2);
	background-color: rgba(230, 235, 249, .6);
	backdrop-filter: blur(.5rem);
	-webkit-backdrop-filter: blur(.3rem);
}
#sp-logo, #sp-menu, #sp-menu-right {
	display: flex;
	align-items: center;
}
#sp-header .sp-module.cambia-lingua {
	margin-left: 20px;
}
.cambia-lingua {
	order: 2;
	padding-left: 20px;
	border-left: 2px solid #6f40f1;
}
.cambia-lingua ul {
	display: flex;
	align-items: center;
}
.cambia-lingua .mod-languages ul li.lang-active {
	background-color: #6f40f1;
  background-image: linear-gradient(51deg,#7141f1 50%,#4d6bd8 75%,#3183e2 100%);
  padding: 5px 10px;
}
.cambia-lingua .mod-languages ul.lang-inline li.lang-active a {
  color: #fff;
}
.cambia-lingua .mod-languages ul.lang-inline li.lang-active a:hover {
  color: #fff;
}
.cambia-lingua .mod-languages ul.lang-inline li a:hover {
	color: #6f40f1;
}
/*MENU*/
#sp-main-menu {
	justify-content: end;
	display: flex;
}
/*MODULO MENU*/
.dj-megamenu-default {
	font-family: 'Outfit';
}
body .dj-megamenu-clean.dj-fa-5 .arrow::before {
	font-family: "Font Awesome 6 Free";
}
.dj-megamenu-wrapper .dj-megamenu-clean li a.dj-up_a,
.dj-megamenu-wrapper .dj-megamenu-clean li ul.dj-submenu > li > a {
	font-size: 1.125rem;
	color: #0d0a46;
}
.dj-megamenu-clean li a.dj-up_a {
	padding: 0 25px;
}
.dj-megamenu-wrapper .dj-megamenu-clean li a.dj-up_a:hover,
.dj-megamenu-wrapper .dj-megamenu-clean li a.dj-up_a.active {
	color: #6f40f1;
	font-weight: 500;
}
.dj-megamenu-clean li ul.dj-submenu > li > a {
	font-size: 1.125rem;
	color: #0d0a46;
	background: #fff;
	text-decoration: none;
	padding: 20px;
	width: max-content !important;
}
.dj-megamenu-wrapper .dj-megamenu-clean li div.dj-subwrap .dj-subwrap-in {
	background-color: #fff;
}
.dj-megamenu-wrapper .dj-megamenu-clean li ul.dj-submenu > li:hover > a, 
.dj-megamenu-wrapper .dj-megamenu-clean li ul.dj-submenu > li.active > a {
	background: #fff;
	color: #6f40f1;
}
.dj-megamenu-wrapper .dj-megamenu-clean li ul.dj-submenu > li {
	background: #fff;
	border-bottom: 2px solid #6f40f1;
	padding: 10px 0;
}
.dj-megamenu-clean li ul.dj-submenu > li > a .dj-icon {
	width: 30px;
	height: auto;
	max-height: 100% !important;
}
.icona-menu {
	display: flex !important;
	align-items: center;
}
.icona-menu img {
	width: 25px;
	height: auto;
	margin-right: 20px;
}
#sp-menu-right {
	justify-content: end;
}
#sp-menu-right p {
	margin-bottom: 0;
}
/*OFFCANVAS*/
.dj-megamenu-offcanvas .dj-offcanvas {
	width: 320px;
}
.dj-offcanvas-light .dj-offcanvas-logo img {
	max-width: 100%;
	height: 35px;
}
.dj-megamenu-wrapper .dj-megamenu-select-light .dj-mobile-open-btn,
.dj-megamenu-wrapper .dj-megamenu-offcanvas-light .dj-mobile-open-btn,
.dj-megamenu-wrapper .dj-megamenu-accordion-light .dj-mobile-open-btn,
.dj-megamenu-wrapper .dj-mobile-open-btn.active .dj-mobile-open-icon,
.dj-megamenu-wrapper .dj-megamenu-select-light .dj-mobile-open-btn:focus,
.dj-megamenu-wrapper .dj-megamenu-select-light:hover .dj-mobile-open-btn,
.dj-megamenu-wrapper .dj-megamenu-offcanvas-light .dj-mobile-open-btn:hover,
.dj-megamenu-wrapper .dj-megamenu-offcanvas-light .dj-mobile-open-btn:focus,
.dj-megamenu-wrapper .dj-megamenu-accordion-light .dj-mobile-open-btn:hover,
.dj-megamenu-wrapper .dj-megamenu-accordion-light .dj-mobile-open-btn:focus {
	background: transparent;
	color: #0d0a46;
}
.dj-megamenu-wrapper .dj-mobile-open-btn.dj-fa-0 .dj-mobile-open-icon::before,
.dj-megamenu-wrapper .dj-mobile-open-btn.dj-fa-1 .dj-mobile-open-icon::before,
.dj-megamenu-wrapper .dj-mobile-open-btn.dj-fa-5 .dj-mobile-open-icon::before {
	font-size: 28px;
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
}
.dj-megamenu-offcanvas ul.dj-mobile-light li.dj-mobileitem>a {
	font-size: 1.125rem;
	background: #fff;
	color: #0d0a46;
	border-top: 1px solid #6f40f1;
}
.dj-megamenu-offcanvas .dj-offcanvas-light .dj-offcanvas-top {
	background: #e6ebf9;
}
.dj-megamenu-offcanvas ul.dj-mobile-light li.dj-mobileitem:hover > a, 
.dj-megamenu-offcanvas ul.dj-mobile-light li.dj-mobileitem.active > a {
	color: #6f40f1;
	font-weight: 500;
	background: #fff;
}
.dj-megamenu-offcanvas .dj-offcanvas-light {
	background: #fff;
	color: #0d0a46;
}
.dj-fa-5 .dj-offcanvas-close-btn .dj-offcanvas-close-icon::before {
	color: #0d0a46;
}
/*MENU helix-ultimate
#sp-menu {
	justify-content: center;
}
.sp-megamenu-parent > li > a, .sp-megamenu-parent > li > span, .sp-megamenu-parent .sp-dropdown li.sp-menu-item > a {
	font-family: 'Outfit';
}
.sp-megamenu-parent > li > a {
	color: #0d0a46;
	transition: .1s ease-in-out;
	font-size: 1.125rem;
}
.sp-megamenu-parent > li > a, .sp-megamenu-parent > li > span {
	padding: 0 1.875rem;
}
.sp-megamenu-parent > li.active > a,
.sp-megamenu-parent > li.active:hover > a,
.sp-megamenu-parent > li:hover > a {
	color: #6f40f1;
}
.sp-megamenu-parent .sp-dropdown li.sp-menu-item > a, .sp-megamenu-parent .sp-dropdown li.sp-menu-item span:not(.sp-menu-badge) {
	font-size: 1.125rem;
	padding: 0;
	font-weight: 300;
}
.sp-dropdown.sp-dropdown-main.sp-menu-right {
	width: max-content !important;
}
.sp-megamenu-parent .sp-dropdown .sp-dropdown-inner {
	padding: 0px;
}
.sp-megamenu-parent .sp-dropdown li.sp-menu-item {
	padding: 20px;
	border-bottom: 2px solid;
	border-image: linear-gradient(51deg,#7141f1c9 50%,#4d6bd8b0 75%,#3183e2 100%) 1;
}
.sp-megamenu-parent .sp-dropdown li.sp-menu-item > a:hover,
.sp-megamenu-parent .sp-dropdown li.sp-menu-item.active>a {
	color: #6f40f1;
}
*/


/*MENU OFFCANVAS HELIX
.offcanvas-menu .offcanvas-inner ul.menu > li a, 
.offcanvas-menu .offcanvas-inner ul.menu > li span {
	color: #1E232F;
	font-weight: 400;
	opacity: 1;
}
.offcanvas-menu .offcanvas-inner ul.menu > li li a {
	color: rgba(37, 37, 37, 1);
}
#offcanvas-toggler>.fa:hover,
#offcanvas-toggler>.fa:focus,
#offcanvas-toggler>.fa:active {
  color:#6f40f1
}
.offcanvas-menu .offcanvas-inner ul.menu>li a:hover,
.offcanvas-menu .offcanvas-inner ul.menu>li a:focus,
.offcanvas-menu .offcanvas-inner ul.menu>li span:hover,
.offcanvas-menu .offcanvas-inner ul.menu>li span:focus,
.offcanvas-menu .offcanvas-inner ul.menu li.active a {
	color: #6f40f1 !important;
}
.offcanvas-menu .offcanvas-inner ul.menu > li > ul li a {
	font-size: 0.9rem;
	padding: 10px 0px;
	border-bottom: 1px solid;
}*/
#sp-main-body {
	padding: 0;
}
#sp-main-body .container {
  max-width: 100%;
  padding: 0;
}
.container-contenuti {
	max-width: 1320px;
	margin: 0 auto;
	padding-left: 0.9375rem;
	padding-right: 0.9375rem;
}
/*TITOLO*/
.sp-page-title {
	/*background-image: url(/images/home/sfondo-hero.webp);*/
	background-position: center;
	background-size: cover;
	background-repeat: no-repeat;
	margin-top: -60px;
	background-color: #e6ebf9;
	padding: 200px 0 0 0;
	color: #1E232F;
}
.sp-page-title .sp-page-title-heading, .sp-page-title .sp-page-title-sub-heading {
	color: #1E232F;
}
.sp-page-title .sp-page-title-heading {
	font-size: 2rem;
	line-height: 1.2;
	font-weight: 900;
	max-width: 800px;
}
.sp-page-title .sp-page-title-sub-heading {
	font-size: 1.3rem;
	line-height: 1.2;
	margin-top: 1.5rem;
	margin-bottom: 0px;
	max-width: 800px;
}
.sp-page-title .breadcrumb {
	background: none;
	padding: 200px 0 15px 0;
	margin: 0;
}
.breadcrumb {
	font-size: 0.875rem;
}
.sp-page-title .breadcrumb > span, .sp-page-title .breadcrumb > li, .sp-page-title .breadcrumb > li + li::before, .sp-page-title .breadcrumb > li > a {
	color: #1E232F;
}
.sp-page-title .breadcrumb > .active {
	color: #1E232F;
}
/*ANIMAZIONE*/
#sp-animazione {
	margin-bottom: -70px;
}
.animazione-container {
	padding-bottom: 90px;
	max-width: 100%;
	margin-left: auto;
	margin-right: auto;
	height: 0;
}
#sp-position2 {
	background-image: url(/images/sfondo-titolo.svg);
	background-repeat: no-repeat;
	background-position: bottom center;
	background-size: cover;
}
/*SEZIONE HERO*/
.hero {
	background-image: url(/images/home/sfondo-hero.webp);
	background-position: center;
	background-size: cover;
	background-repeat: no-repeat;
	margin-top: -120px;
	background-color: #e6ebf9;
}
.hero .row {
	height: 100vh;
	background: url(/images/ritratti/webdesigner-elmir-mustafic-pesaro.webp);
	background-repeat: no-repeat;
	background-size: 50%;
	background-position-y: bottom;
	background-position-x: right;
}
.hero-descrizione, .img-hero {
	display: flex;
	align-items: end;
}
.hero-descrizione {
	padding-bottom: 100px;
}
.position-relative {
	position: relative !important;
}
.hero h2 {
	font-size: 1.125rem;
	letter-spacing: 2px;
	text-transform: uppercase;
	font-weight: 400;
	display: inline-block;
	margin: 0
}
.hero h1 {
	font-size: 2.1875rem;
	letter-spacing: -1px;
	margin-top: 0;
	margin-bottom: 0;
	font-weight: 800;
	line-height: 1;
}
.hero p {
	margin: 1.875rem 0;
	font-size: 1.375rem;
	line-height: 28px
}
.img-hero {
	margin-bottom: 3rem;
}
/*SEZIONI HOME*/
.titolo-sezioni,
.titolo-big {
	padding-bottom: 1.875rem;
}
.riga, .cta, .blog {
	margin-top: 6.25rem;
}
.titolo-sezioni h2 {
	font-size: 2.25rem;
	font-weight: 800;
}
.titolo-sezioni p{
	font-size: 1.25rem;
	font-weight: 400;
}
.titolo-sezioni p.about-home {
	max-width: 100%;
	padding-bottom: 0;
	font-size: 1.3rem;
}
.centro-verticalmente {
	align-items: center;
}
/*Animazione 3 punti*/
.animate-dot {
   opacity: 0;
   animation: animateDot1 2s linear infinite;
}
.animate-dot:nth-child(2) {
   animation: animateDot2 2s linear infinite;
}
.animate-dot:nth-child(3) {
   animation: animateDot3 2s linear infinite;
}
@keyframes animateDot1 {
   0%   {opacity: 0; }
   20%  {opacity: 0;}
   30%  {opacity: 1;}
   90% {opacity: 1;}
}
@keyframes animateDot2 {
   0%   {opacity: 0; }
   35%  {opacity: 0;}
   45%  {opacity: 1;}
   90% {opacity: 1;}
}
@keyframes animateDot3 {
   0%   {opacity: 0; }
   50%  {opacity: 0;}
   60%  {opacity: 1;}
   90% {opacity: 1;}
}
/*SEZIONE SITO PERFORMANTE HOME*/
.sito-performante {
	margin-top: 6.25rem;
}
.sito-performante-sx h2 {
	font-size: 2.25rem;
	font-weight: 800;
}
.h2-viola {
	color: #6f40f1;
}
.divisore-viola {
	background-color: #6f40f1;
	margin-top: 1.5rem;
	margin-bottom: 1.5rem;
	height: 3px;
	width: 2.25rem;
}
.sito-performante-sx h3 {
	font-size: 1.25rem;
	font-weight: 400;
	padding-bottom: 2.5rem;
}
.sito-performante h5 {
	margin-top: 2.25rem;
	margin-bottom: 1rem;
}
.sito-performante ul {
	margin-bottom: 2rem;
}
ol, ul {
	padding-left: 0;
}
.lista-privacy {
	padding-left: 2rem;
}
li.include {
	list-style: none;
	font-size: 1.25rem;
}
li.include::before {
	font-family: "Font Awesome 6 Free";
	font-weight: 900;
	content: "";
	color: #6f40f1;
	padding-right: 0.9375rem;
}
.btn-larg-100 {
	width: 100%;
	margin-top: 1.875rem !important;
}
/*GRID PROGETTI*/
.progetti-container {
      display: grid;
      grid-template-columns: repeat(2, 1fr);
      gap: 50px;
}
.card-elemento {
	position: relative;
	overflow: hidden;
	border-radius: 2.5rem;
}
.card-elemento img {
	width: 100%;
	height: auto;
	transition: transform .8s;
	border-radius: 2.5rem;
}
.card-elemento:hover img {
	transform: scale(1.1);
	border-radius: 2.5rem;
}
.card-anno {
	position: absolute;
	right: 1.875rem;
	top: 1.875rem;
	background-image: linear-gradient(51deg,#7141f1c9 50%,#4d6bd8b0 75%,#3183e2 100%);
	border-radius: 50%;
	height: 60px;
	width: 60px;
	text-align: center;
	font-size: 1rem;
	color: #fff;
	line-height: 60px;
	z-index: 999;
}
.card-info {
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	color: #fff;
	transition: .8s ease;
	opacity: 0;
	height: 100%;
	padding: 1.875rem 1.875rem 0;
	background-image: linear-gradient(51deg,#7141f1f2 50%,#4d6bd8db 75%,#3183e2 100%);
}
.card-descr {
	position: absolute;
	bottom: 20px;
	left: 1rem;
	right: 1rem;
}
.card-elemento:hover .card-info {
      opacity: 1;
}
a h2.card-titolo {
	font-size: 1.6rem;
	color: #1E232F;
	text-decoration: underline;
	padding-top: 20px;
}
a h2.card-titolo:hover {
	color: #6f40f1;
}
/*SEZIONE SERVIZI e COLLABORO CON*/
.servizi-container {
  display: grid;
  grid-template-columns: repeat(1, 1fr);
  grid-gap: 3rem;
}
.servizi-item {
  background-color: transparent;
  padding: 2rem 1.5rem;
  border: 1px solid #ABB5DD;
  transition:.4s cubic-bezier(0.280, 0.840, 0.420, 1);
  transition-property:transform;
  height: 100%;
  border-radius: 2.5rem
}
.servizi-item img {
	width: 50px;
	height: auto;
}
.servizi-item:hover {
  transform:scale(1.05);
  background-color: #e6ebf9;
}
.servizi-container p {
	color: #1E232F;
}
.servizi-numero {
  font-size: 1.5rem;
  font-weight: bold;
  margin-bottom: 0.625rem;
}
.servizi-numero {
	background-image: linear-gradient(51deg,#7141f1c9 50%,#4d6bd8b0 75%,#3183e2 100%);
	border-radius: 50%;
	height: 1.875rem;
	width: 1.875rem;
	text-align: center;
	font-size: .8rem;
	color: #fff !important;
	line-height: 1.75rem;
}
a .servizi-item h3 {
	font-size: 1.6rem;
	color: #1E232F;
	text-decoration: underline;
	margin: 0.625rem 0 1.75rem;
}
a .servizi-item h3:hover {
	color: #6f40f1;
}
.colaboro-con-item {
	background-color: #e6ebf9;
}
/*PULSANTI*/
.btn {
	margin: 0;
	border: none;
	overflow: visible;
	font: inherit;
	color: inherit;
	text-transform: none;
	-webkit-appearance: none;
	border-radius: 0;
	display: inline-block;
	box-sizing: border-box;
	padding: 0.9375rem 1.875rem;
	vertical-align: middle;
	font-size: 1.125rem;
	line-height: 1.125rem;
	text-align: center;
	text-decoration: none;
	transition: .2s ease-in-out;
	transition-property: color,background-color,background-position,background-size,border-color,box-shadow;
	font-weight: 600;
	border-radius: 500px;
	background-origin: border-box;
	background-size: 200%;
	background-position-x: 100%;
	letter-spacing: 1px;
}
.btn-primary {
	background-color: #6f40f1;
	color: #fff;
	border: 2px solid transparent;
	background-image: linear-gradient(51deg,#7141f1 50%,#4d6bd8 75%,#3183e2 100%);
	box-shadow: -5px -5px 0.9375rem rgba(255,255,255,.9),5px 5px 0.9375rem rgba(60,14,189,.3);
}
.btn-secondary {
	background-color: transparent;
	color: #6f40f1;
	border: 2px solid #6f40f1;
	background-image: none;
	box-shadow: -5px -5px 0.9375rem rgba(255,255,255,.9),5px 5px 0.9375rem rgba(60,14,189,.3);
}
.btn:hover {
	text-decoration: none;
	background-position-x: 0;
}
.btn-primary:hover, .btn-primary:focus, .btn-primary:active,
.btn-secondary:hover, .btn-secondary:focus, .btn-secondary:active {
	background-color: #5d28ef;
	color: #fff;
	border-color: transparent;
	box-shadow: -2px -2px 5px rgba(255,255,255,.9),2px 2px 5px rgba(60,14,189,.3);
}
.btn-form {
	background-color: #6f40f1;
	color: #fff;
	border: 2px solid transparent !important;
	background-image: linear-gradient(51deg,#7141f1 50%,#4d6bd8 75%,#3183e2 100%);
	box-shadow: -5px -5px 0.9375rem rgba(255,255,255,.9),5px 5px 0.9375rem rgba(60,14,189,.3) !important;
	font-size: inherit !important;
	font-weight: 700;
	padding: 0.9375rem 1.875rem !important;
	border-radius: 500px !important;
}
/*ACCORDION*/
.accordion-container {
  max-width: 1240px;
  border-bottom: 1px solid #ABB5DD;
  overflow: hidden;
}
details[open] summary ~ * {
  animation: sweep .2s linear;
}
@keyframes sweep {
  0%    {opacity: 0; margin-top: -10px}
  100%  {opacity: 1; margin-top: 0px}
}
.accordion-item {
  width: 100%;
}
.accordion-trigger {
	width: 100%;
	background-color: rgba(250, 250, 250, 0);
	color: rgb(0, 0, 0);
	padding: 1.1rem 0 1.1rem;
	font-size: 1.25rem;
	font-weight: 500;
	text-align: left;
	border: none;
	display: flex;
	gap: 16px;
	justify-content: space-between;
	cursor: pointer;
	transition: .25s transform ease;
}
.accordion-icon:after {
	content: '+';
  transition: transform 0.5s;
}
.accordion-item[open] .accordion-icon:after {
  content: '-';
}
.accordion-item:not(:first-of-type) .accordion-trigger {
  border-top: 1px solid #ABB5DD;
}
.accordion-content p {
	margin: 0 0 2rem;
}
.faq li {
	margin-bottom: 1rem;
}
/*PAGINE INTERNE*/
.titolo-paragrafo {
	font-size: 1.8rem;
	margin-bottom: 1.5rem;
	line-height: 1.1;
}
/*PAGINA PORTFOLIO BLOG LAYOUT*/
.article-list {
	max-width: 1320px;
	padding-left: 0.9375rem;
	padding-right: 0.9375rem;
	margin: 0 auto;
}
.article-list .article {
	padding: 0px;
	border: 0;
}
.blog a h2.card-titolo {
	font-size: 1.6rem;
	color: #1E232F;
	text-decoration: underline;
	padding-top: 20px;
	padding-bottom: 30px;
}
/*DETTAGLIO PROGETTO*/
.article-details .article-full-image {
	max-width: 1320px;
	margin: 4.5rem auto 0rem;
}
.scheda-tecnica-item {
	margin-top: 1.25rem;
}
.logo-cliente {
	margin-bottom: 2rem;
}
.logo-cliente img {
	max-width: 200px;
	width: 100%;
}
.scheda-tecnica-container p {
	font-size: 1rem;
	font-weight: 300;
	margin-bottom: 0;
}
.scheda-tecnica-container h5 {
	font-weight: 400;
	padding-top: 2rem;
}
.soluzione-progetti {
	margin-top: 3rem;
}
.link-sito {
	padding-top: 10px;
}
.link-sito a::after {
	font-family: "Font Awesome 6 Free";
	content: "\f061";
	margin-left: 7px;
	font-weight: 900;
	display: inline-block;
	transform: rotate(-40deg);
	transition: transform .3s ease-in-out;
}
.link-sito a:hover::after {
	transform: rotate(0deg);
}
/*GRIGLIA IMMAGINI DOPO TESTO*/
.img-100w img {
	max-width: 100%;
	width: 100%;
}
.img-2-col {
	display: grid;
	grid-template-columns: 1fr;
	gap: 1.875rem;
	margin-top: 1.875rem;
}
/*FORM CONTATTI*/
.convertforms .cf-content-wrap, .convertforms .cf-form-wrap {
	padding: 10px;
}
.convertforms.cf-labelpos-left .cf-control-group:not(.cf-hide) .cf-control-label {
	max-width: 18rem;
	padding-right: 10px;
}
.convertforms .cf-radio-group .cf-label {
	border: 1px solid #ABB5DD;
	padding: 0.8rem 1.6rem;
	width: 100%;
	text-align: center;
	border-radius: 50px;
	cursor: pointer;
}
.convertforms [class*="cf-list-"] > div {
	padding: 10px;
}
.convertforms .cf-input[type="radio"] {
	display: none;
}
.convertforms .cf-input, 
input[type="text"]:not(.form-control), 
input[type="email"]:not(.form-control), 
input[type="url"]:not(.form-control), 
input[type="date"]:not(.form-control), 
input[type="password"]:not(.form-control), 
input[type="search"]:not(.form-control), 
input[type="tel"]:not(.form-control), 
input[type="number"]:not(.form-control), 
select:not(.form-select):not(.form-control) {
	padding: 1rem 1rem !important;
	border-radius: 25px;
}
.convertforms .cf-control-group {
	border-bottom: 1px solid #ABB5DD;
	padding: 1.5rem 0;
	margin-bottom: 1rem;
}
.cf-control-group.pulsante-contatti {
	padding-bottom: 0;
}
.opzione-selezionata .cf-list label {
    transition: all 100ms ease-in-out;
}
.opzione-selezionata .cf-list > div:hover label {
    background-color: #ABB5DD;
	pointer: 
}
.opzione-selezionata .cf-list input:checked + label {
    background-color: #ABB5DD;
}
.cf-label h4 {
    font-size: 1.25rem;
	margin-bottom: 0.2rem;
}
.opzione-selezionata .cf-label {
	padding-top: 8px;
}
.pulsante-contatti,
.privacy-form {
	border-bottom: 0px !important;
	margin-bottom: 0px !important;
}
.privacy-form .cf-checkbox-group {
	-webkit-box-align: baseline;
	-ms-flex-align: baseline;
	align-items: baseline;
}
.cf-response p {
	margin: 1rem;
}
.flatpickr-months .flatpickr-month {
	height: 50px;
}
.flatpickr-current-month {
	width: auto;
	height: 40px;
	display: flex;
}
.flatpickr-monthDropdown-months {
	border: 0px;
}
html body.site.helix-ultimate.hu.com_content.com-content.view-article.layout-default.task-none.itemid-216.it-it.ltr.sticky-header.layout-fluid.offcanvas-init.offcanvs-position-right div.flatpickr-calendar.animate.open.arrowBottom.arrowLeft div.flatpickr-months div.flatpickr-month div.flatpickr-current-month select.flatpickr-monthDropdown-months, html body.site.helix-ultimate.hu.com_content.com-content.view-article.layout-default.task-none.itemid-216.it-it.ltr.sticky-header.layout-fluid.offcanvas-init.offcanvs-position-right div.flatpickr-calendar.animate.open.arrowBottom.arrowLeft div.flatpickr-months div.flatpickr-month div.flatpickr-current-month div.numInputWrapper input.numInput.cur-year {
	padding: 0.5rem !important;
	border: none !important;
	font-weight: 500;
}
.flatpickr-current-month .numInputWrapper {
	width: 9ch;
}
/*CTA IN FONDO*/
.cta .container-contenuti {
	border-top: 1px solid #ABB5DD;
	padding: 6.25rem 0 0;
}
.cta p {
	font-size: 1.25rem;
}
.cta-link {
	font-size: 1.5rem;
}
.cta .titolo-sezioni {
	padding-bottom: 10px;
}
#sp-cta-bottom .container-contenuti {
	padding-left: 0;
	padding-right: 0;
}
/*CTA PROGETTI*/
.cta-progetti {
	margin: 6.25rem 0 0;
}
/*.container-cta-progetti {
	border-top: 1px solid #ABB5DD;
	padding-bottom: 6.25rem;
}*/
.titolo-cta-progetti,
.pulsante-cta-progetti {
	text-align: center;
}
.titolo-cta-progetti h2 {
	font-size: 1.7rem;
	font-weight: 300;
	text-wrap: balance;
}
.pulsante-cta-progetti {
	margin-top: 3rem;
}
/*BOTTOM*/
#sp-bottom {
	padding: 6.25rem 0 0;
}
#sp-bottom .sp-module {
	margin-bottom: 0px;
}
#sp-bottom a {
	color: #1E232F;
	font-size: 1rem;
	font-weight: 500;
}
#sp-footer a:hover, #sp-footer a:active, #sp-footer a:focus, #sp-bottom a:hover, #sp-bottom a:active, #sp-bottom a:focus {
	color: #6f40f1;
}
#sp-bottom .container {
	background-color: #e6ebf9;
	margin: 0 auto;
	padding: 30px 15px 15px;
	border-radius: 34px 34px 0 0;
}
.menu-footer, .menu-privacy {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	list-style: none;
}
.menu-footer {
	justify-content: center;
}
.menu-privacy {
	justify-content: center;
}
ul.menu-footer li, ul.menu-privacy li {
	font-size: 1rem;
	font-weight: 500;
}
ul.menu-footer li {
	padding-right: 1.25rem;
	margin-bottom: 5px !important;
}
ul.menu-privacy li {
	padding-right: 1.25rem;
	padding-top: 20px;
}
/*FOOTER*/
#sp-footer {
	margin-bottom: 2rem;
	font-size: 0.875rem;
	font-weight: 500;
}
#sp-footer a {
	color: #1E232F;
}
#sp-footer .container {
	background-color: #e6ebf9;
	border-radius: 0 0 34px 34px;
	padding-left: 15px;
	padding-right: 15px;
}
#sp-footer .container .container-inner {
	border-top: 1px solid #ABB5DD;
}
#sp-footer #sp-footer1 {
	text-align: center;
}
#sp-footer #sp-footer2 {
	text-align: center;
	padding-top: 15px;
}
/*SFONDO PATERN*/
.block-hero-content__image-wrapper {
	z-index: 2;
	width: 79.375%;
	padding-bottom: 87.5%;
	transition: opacity .8s ease-in-out;
}
.image-wrapper {
	position: relative;
	display: block;
	width: 100%;
	height: 0;
	padding-bottom: 56%;
	overflow: hidden;
}
.image-wrapper img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform .4s ease-in-out;
}
.block-hero-content__image {
	clip-path: url(#hexagon);
}
.block-hero-content__pattern--pattern-6 {
  -webkit-mask-image:url(/images/patterns/sfondo-righe.svg);
  -webkit-mask-size:contain;
  mask-image:url(/images/patterns/sfondo-righe.svg);
  mask-size:contain
}
.block-hero-content__pattern {
	position: absolute;
	top: 50%;
	right: 10.3125%;
	z-index: 1;
	width: 50%;
	height: 85.71428571%;
	transform: translateY(-50%);
	overflow: hidden;
}
.block-hero-content__pattern-gradient {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	opacity: 1;
	transform-origin: right center;
	transition: transform 1s .5s ease-in-out,opacity .8s .2s ease-in-out;
}
/*GDPR*/
div.cc-window.cc-floating {
	max-width: 450px !important;
	-webkit-box-shadow: -10px -10px 28px -15px rgba(112,112,112,0.85);
	-moz-box-shadow: -10px -10px 28px -15px rgba(112,112,112,0.85);
	box-shadow: -10px -10px 28px -15px rgba(112,112,112,0.85);
	font-size: 15px;
	line-height: 1.3;
	border-radius: 20px;
}
.cc-revoke, .cc-window {
	font-family: 'Outfit',sans-serif;
}
.cc-revoke.cc-right {
	right: 5px;
}
.cc-revoke {
	color: rgb(111, 64, 241) !important;
	background-color: rgb(255, 255, 255);
	border: 1px solid  !important;
	-webkit-box-shadow: -10px -10px 28px -15px rgba(112,112,112,0.85);
	-moz-box-shadow: -10px -10px 28px -15px rgba(112,112,112,0.85);
	box-shadow: rgba(112, 112, 112, 0.85) -10px -10px 28px -15px;
}
.cc-compliance.cc-highlight {
	padding: 10px 0;
}
div.cc-window a.cc-btn, span.cc-cookie-settings-toggle {
	border-radius: 50px !important;
}
.cc-btn {
	font-size: 1rem;
	letter-spacing: 0.5px;
	font-weight: 400;
	border-width: 1px;
}
div.cc-checkboxes-container a.cc-btn.cc-allow {
	min-width: auto;
	padding: 0.5rem 1rem;
	height: auto;
	margin-top: 10px;
	width: 100%;
}
div.cc-window.cc-floating div.cc-settings-label {
	width: 100%;
	margin-bottom: 10px;
}
div.cc-checkboxes-container a:not(.cc-btn) {
	margin: 0 0 0 5px;
	padding: 0px 6px 0px 0;
	text-decoration: none;
}
.cc-checkbox-container a.cc-link.cc-cookie-checkbox label {
	margin: -3px 0 0 0;
}
input.cc-cookie-checkbox:checked + span::after {
	background-image: none;
	content: '';
	font-family: "Font Awesome 6 Free";
	font-weight: 900;
	color: green;
	margin-top: -1px;
	margin-left: 1px;
	font-size: 13px;
}
input.cc-cookie-checkbox + span::after {
	border-style: none;
	background-image: none;
}
/*ICONA ACCESSBILITA*/
._access-icon {
	border-radius: 50px;
	left: 5px !important;
	bottom: 5px !important;
}
._access-menu ._menu-close-btn {
	color: rgb(111, 64, 241);
}
._access-icon {
	content: url(/images/icone/icona-accessibilita.png);
	padding: 5px;
}
@media (min-width:0px) {
.container, .container-md, .container-sm, .container-contenuti {
	max-width: 1100px;
}
#sp-bottom .container,
#sp-footer .container {
	max-width: 1110px;
}
}
@media (min-width:576px) {
.img-hero {
	display: none;
}
/*DETTAGLIO PROGETTO*/
.img-2-col {
	grid-template-columns: 1fr 1fr;
}
}
@media (min-width:768px) {
/*MENU E OFFCANVAS*/.icona-menu img {
	width: 40px;
}
/*TITOLO PAGINE*/
.sp-page-title {
	margin-top: -100px;
	padding: 300px 0 0px;
}
.sp-page-title .sp-page-title-heading {
	font-size: 3rem;
}
.sp-page-title .sp-page-title-sub-heading {
	font-size: 1.5rem;
}
/*SEZIONI HOME*/
.sito-performante-sx h3 {
	font-size: 1.75rem;
	text-align: left;
}
.titolo-sezioni p{
	font-size: 1.5rem;
	text-align: left;
	max-width: 50%;
}
.servizi-container {
  grid-template-columns: repeat(3, 1fr);
}
.servizi-item {
  padding: 2rem 1.5rem;
}
/*FINE SEZIONI HOME*/
/*BOTTOM*/
.menu-footer {
	justify-content: start;
}
.menu-privacy {
	justify-content: end;
}
.menu-privacy li {
	padding-left: 1.25rem;
}
ul.menu-footer li {
	padding-right: 1.25rem;
	margin-bottom: 15px !important;
}
ul.menu-privacy li {
	padding-left: 1.25rem;
	padding-top: 0px;
	padding-right: 0;
}
/*FOOTER*/
#sp-footer #sp-footer1 {
	text-align: left;
}
#sp-footer #sp-footer2 {
	text-align: right;
	padding-top: 0px;
}
}
@media (min-width:992px) {
.titolo-cta-progetti h2 {
	font-size: 2rem;
}
#sp-main-menu {
	justify-content: center;
}
}
@media (min-width:1200px) {
.container, .container-md, .container-sm, .container-contenuti,#sp-bottom .container, #sp-footer .container {
	max-width: 1180px;
}
.hero h1 {
	font-size: 4.6875rem;
}
.descrizione-progetto {
	padding-left: 5rem;
}
.titolo-cta-progetti h2 {
	font-size: 2.6rem;
}
}
@media (min-width:1400px) {
.container, .container-md, .container-sm, .container-contenuti {
	max-width: 1320px;
}
#sp-bottom .container, #sp-footer .container {
	max-width: 1360px;
	padding-left: 35px;
	padding-right: 35px;
}

}
@media (max-width: 991px) {
#sp-menu {
	justify-content: end;
}
#sp-menu-right {
	display: none;
}
.hero .row {
	height: unset;
	padding-top: 300px;
}
.hero-descrizione {
	display: flex;
	align-items: center;
}
.hero-descrizione {
	padding-bottom: 4rem;
}

.img-fluid {
	width: 500px;
}
.convertforms [class*="cf-list-"].cf-list-3-columns > div {
	-ms-flex-preferred-size: 100%;
	flex-basis: 100%;
}
}
@media (max-width: 767px) {
.img-fluid {
	max-width: 400px;
}
.sfida-progetti {
	margin-top: 5rem;
}
.titolo-paragrafo {
	font-size: 1.5rem;
	margin-bottom: 1rem;
	line-height: 1.1;
}
#sp-footer {
	margin: 0px 15px 30px;
}
#sp-bottom {
	margin: 0px 15px;
}
}
@media (max-width: 575px) {
.hero .row {
	height: unset;
	padding-top: 6.25rem;
}
.hero h2 {
	font-size: 0.875rem;
	padding-bottom: 0.625rem;
}
.hero .row {
	background: none;
}
.hero-descrizione {
	padding-top: 0px;
	order: 2;
}
.img-fluid {
	max-width: 100%;
}
.progetti-container {
	grid-template-columns: repeat(1, 1fr);
}
}
