.homepage .maincontent {
	display: flex;
	justify-content: stretch;
	width: 100%;
}
.homepage .maincontent .component-container {
	padding: 0;
	width: 100%;
}

.homepage .com-content-article__body section {
	.chi-sono-eyebrow {
		font-size: 1.1rem;
		color: var(--dgreen);
		text-transform: uppercase;
		font-weight: 600;
		margin: 0;
		padding: 0px 0.5rem 0.5rem;
    text-align: center;
		border-bottom: 2px solid var(--lgreen);
	}

	.chi-sono-title {
		margin: 2rem 0 2rem;
		line-height: 1;
		font-weight: 700;
		font-size: 3rem;
    text-align: center;
	}

	.chi-sono-text {
		margin: 0;
		text-align: center;
		color: #333333;
		font-weight: 400;
		line-height: 1.6;
		font-size: 1.1rem;
		text-wrap: balance;
	}
}

.hero-section-nutrizionista {
	display: flex;
	justify-content: center;
	padding: 0;
	margin: 0;
	margin: 0 3rem;

	.inner-section {
		min-height: 600px;
		max-width: 1920px;
		width: 100%;

		position: relative;
	}

	& picture.herobg {
		position: absolute;
		top: 0;
		left: 0;
		height: 100%;
    width: 100%;
		margin: 0;

		& img {
			width: 100%;
			height: 100%;
			object-fit: cover;
		}
	}
}

.hero-wrap {
	max-width: 1920px;
	position: relative;
	z-index: 10;
	display: flex;
	justify-content: flex-start;
	align-items: flex-start;
	padding: 4rem 0;
}
.hero-wrap-inner {
	width: 100%;
	max-width: 630px;
	padding: 4rem;
	display: flex;
	flex-direction: column;
	justify-content: flex-start;
	align-items: flex-start;
	background-color: #fff;
	margin-left: 4rem;

  @media (max-width: 550px) {
    padding-inline: 1rem!important;
  }


& picture.potrait-picture {
	width: 100px;
	height: 100px;
	aspect-ratio: 1;
	object-fit: cover;
	display: none;
	border-radius: 100%;
	overflow: hidden;


	@media (max-width: 1279px) {
		display: block;
				width: 200px;
		height: 200px;
		
		margin: -140px auto 2.5rem;
		margin-bottom: 2.5rem;
		
		border: 6px solid #fff;
	}

		@media (max-width: 650px) {

	}

}


}




.hero-badge {
	margin-bottom: 0 !important;
	display: flex;
	align-items: center;
	flex: 0 1 auto;
	width: auto;
	gap: 0.5rem;
	margin: 0;
	padding: 0.5rem 1.5rem;
	border-radius: 999px;
	background: #ebebeb;
	font-weight: 500;
	font-size: 0.9rem;
	color: var(--dgreen);
	flex-wrap: wrap;



  @media (max-width: 550px) {
    font-size: 0.6rem;
    padding-inline: 0.5rem 0.75rem;
    gap: 0.25rem;
  }


	& > * {
		flex: 0 1 auto;
	}
}

.hero-badge-icon svg {
	width: 100%;
	height: 100%;
}

h1.hero-title {
	margin: 2rem 0 1rem;
	line-height: 1;
	font-weight: 700;
	font-size: clamp(2rem, 12vw, 4.3rem);
}

.hero-title-dark,
.hero-title-green {
	display: block;
}

.hero-title-dark {
	color: var(--dgreen);
}

.hero-title-green {
	color: var(--lorange);
}

.hero-text {
	margin: 0 0 2rem !important;
	color: #333333;
	font-weight: 400;
	line-height: 1.6;
	font-size: 1.1rem;
	text-wrap: balance;
}

.hero-actions {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 1rem;

  @media (max-width: 550px) {
    gap: 0.5rem;
    flex-direction: column;

    & > * {
      width: 100%;
      max-width: none;
      justify-content: space-between;
    }

  }

}

.chi-sono-section {
	display: flex;
	justify-content: center;
	padding: 10rem 0;
	margin: 0;
	position: relative;
	margin: 0;

	.chi-sono-container {
		display: flex;
		max-width: 1920px;
		width: auto;
		margin: 0 3rem;

		& picture {
			flex: 1 1 auto;
			& img {
				width: 100%;
				height: 100%;
				object-fit: cover;
			}
		}

		.potrait-description {
			display: flex;
			flex-direction: column;
			justify-content: center;
			align-items: flex-start;
			padding: 4rem;
			gap: 0;
			max-width: 800px;
			flex: 0 1 auto;

			.chi-sono-title {
        text-align: left;
			}

			.chi-sono-text {
				text-wrap: initial;
				margin: 0 0 2rem;
				text-align: left;
			}

			.chi-sono-cards {
				display: flex;
				gap: 2rem;
				flex-wrap: wrap;
				margin: 1rem 0 0;
			}

			.chi-card {
				display: flex;
				align-items: center;
				gap: 0.75rem;
				padding: 0.75rem 1rem;
				border-radius: 15px;
				background-color: var(--vlgreen);
			}

			.chi-card-icon {
				background-color: var(--lgreen);
				color: #fff;
				width: 56px;
				height: 56px;
				flex: 0 0 56px;
				border-radius: 15px;
				font-size: 1.6rem;
				display: flex;
				align-items: center;
				justify-content: center;
				text-align: center;
			}

			.chi-card-content {
				display: flex;
				flex-direction: column;
				gap: 0.15rem;

				& h3 {
					font-size: 0.9rem;
					margin: 0;
					font-weight: 700;
					color: var(--lorange);
				}

				& p {
					margin: 0;
					font-size: 0.9rem;
					line-height: 1.3;
					color: #333333;
					font-style: italic;
				}
			}
		}
	}
}

.servizi-section {
	display: flex;
	justify-content: center;
	padding: 6rem 0;
	margin: 0;
	position: relative;
	margin: 0;
	background-color: var(--vlgreen);

	.servizi-container {
		display: flex;
		flex-direction: column;
		max-width: 1920px;
		width: auto;
		margin: 0 3rem;

		& picture {
			flex: 1 1 auto;
			& img {
				width: 100%;
				height: 100%;
				object-fit: cover;
			}
		}

		.servizi-description {
			display: flex;
			flex-direction: column;
			align-items: center;
			padding: 4rem 0;
			gap: 0;
			max-width: 730px;
			margin: 0 auto;
			flex: 0 1 auto;
		}

		.chi-sono-cards {
			display: flex;
			gap: 2rem;
			flex-wrap: wrap;
			margin: 0 0 4rem;
		}

		.chi-card {
			display: flex;
			flex-direction: column;
			flex: 1 1 30%;
			gap: 0;
			padding: 0.5rem;
			border-radius: 20px;
			background-color: #fff;
			position: relative;
		}


		.service-pic{
			border-radius: 10px 10px 0 0;
			overflow: hidden;
		}

		.chi-card-icon {
			background-color: var(--lgreen);
			color: #fff;
			width: 56px;
			height: 56px;
			flex: 0 0 56px;
			border-radius: 14px;
			font-size: 1.8rem;
			display: flex;
			align-items: center;
			justify-content: center;
			text-align: center;
			margin-bottom: 0.5rem;
			position: absolute;
			top: 2rem;
			right: 2rem;
			z-index: 1;
		}

		.chi-card-innercontent{
			padding: 2rem 1rem 2rem;
			min-height: 160px;
			display: flex;
			flex-direction: column;
			justify-content: flex-start;
		}

		.chi-card:nth-child(1) .chi-card-icon {
			background-color: var(--lorange);
		}	


		.chi-card:nth-child(2) .chi-card-icon {
			background-color: var(--lgreen);
		}	

		.chi-card:nth-child(3) .chi-card-icon {
			background-color: var(--lorange);
		}

		
		.chi-card:nth-child(4) .chi-card-icon {
			background-color: var(--lorange);
		}

		.chi-card:nth-child(5) .chi-card-icon {
			background-color: var(--lgreen);
		}


		.chi-card:nth-child(6) .chi-card-icon {
			background-color: var(--lorange);
		}



		.chi-card-content {
			display: flex;
			flex-direction: column;
			gap: 0.5rem;

			& h3 {
				font-size: 1.2rem;
				color: var(--lorange);
				margin: 0 0 0.5rem;
				font-weight: 700;
			}

			& p {
				margin: 0;
				font-size: 1rem;
				color: #333333;
				text-wrap: balance;
			}
		}
	}
}

.comefunziona-section {
	display: flex;
	justify-content: center;
	padding: 6rem 0;
	margin: 0;
	position: relative;
	margin: 0;

	.comefunziona-container {
		display: flex;
		flex-direction: column;
		max-width: 1920px;
		width: auto;
		margin: 0 3rem;

		& picture {
			flex: 1 1 auto;
			& img {
				width: 100%;
				height: 100%;
				object-fit: cover;
			}
		}

		.comefunziona-description {
			display: flex;
			flex-direction: column;
			align-items: center;
			padding: 4rem 0;
			gap: 0;
			max-width: 690px;
			margin: 0 auto;
			flex: 0 1 auto;
		}

		.chi-sono-cards {
			display: grid;
			grid-template-columns: repeat(3, 1fr);
			gap: 0;
			flex-wrap: wrap;
			margin: 0 0 4rem;
			position: relative;

			&:after {
				content: "";
				display: block;
				position: absolute;
				top: 3.7rem;
				left: 0;
				width: 100%;
				height: 2px;
				background-color: var(--lorange);
				margin: 0;
			}
		}

		.chi-card {
			display: flex;
			flex-direction: column;
			flex: 1 1 30%;
			gap: 0.5rem;
			padding: 2rem;
			border-radius: 20px;
			align-items: center;
			position: relative;
			z-index: 1;
		}

		.icon-container {
			display: flex;
			gap: 0;
			justify-content: center;
			align-items: center;
			padding: 0 1rem;
			background-color: #fff;
		}

		.chi-card-number {
			color: #fff;
			font-size: 2rem;
			font-weight: 300;
			background-color: var(--dgreen);
			            width: 100%;
            text-align: center;
            position: relative;
            z-index: 1;
						border-radius: 15px 0 0 15px;
						width: 56px;
						height: 56px;
						display: flex;
						align-items: center;
						justify-content: center;
						text-align: center;
        }

		.chi-card-icon {
			background-color: var(--lorange);
			color: #fff;
			width: 56px;
			height: 56px;
			flex: 0 0 56px;
			padding: 0;
			border-radius: 0 15px 15px 0;
			font-size: 1.8rem;
			display: flex;
			align-items: center;
			justify-content: center;
			text-align: center;

			& i {
				font-weight: 300 !important;
			}
		}

		.chi-card-content {
			display: flex;
			flex-direction: column;
			gap: 0.5rem;
			text-align: center;
			margin-top: 0.5rem;

			& h3 {
				font-size: 1rem;
				margin: 0;
				font-weight: 700;
			}

			& p {
				font-size: 0.9rem;
				font-style: italic;
				font-weight: 400;
				color: #333333;
				text-wrap: balance;
				max-width: 400px;
				margin: 0 auto;
			}
		}
	}
}









.dovericevo-section {
	display: flex;
	justify-content: center;
	padding: 6rem 0;
	margin: 0;
	position: relative;
	margin: 0;
	background-color: var(--vlgreen);

	.comefunziona-container {
		display: flex;
		flex-direction: column;
		max-width: 1920px;
		width: auto;
		margin: 0 3rem;

		& picture {
			flex: 1 1 auto;
			& img {
				width: 100%;
				height: 100%;
				object-fit: cover;
			}
		}

		.comefunziona-description {
			display: flex;
			flex-direction: column;
			align-items: center;
			padding: 4rem 0;
			gap: 0;
			max-width: 690px;
			margin: 0 auto;
			flex: 0 1 auto;
		}

		.chi-sono-cards {
			max-width: 1279px;
			display: grid;
			grid-template-columns: repeat(2, 1fr);
			gap: 4rem;
			flex-wrap: wrap;
			margin: 0 auto 4rem;
			position: relative;
		}

		.chi-card {
			display: flex;
			flex-direction: column;
			flex: 1 1 30%;
			gap: 0.5rem;
			padding: 2rem;
			border-radius: 20px;
			align-items: center;
			position: relative;
			z-index: 1;
			padding: 2rem;
			background-color: #fff;
		}




		.chi-card-content {
			display: flex;
			flex-direction: column;
			gap: 0.5rem;
			margin: 0;

			& h3 {
				font-size: 1rem;
				margin: 0;
				font-weight: 700;
				display: flex;
				align-items: center;
				gap: 1rem;


		.span-icon {
			background-color: var(--vlgreen);
			color: var(--dgreen);
			width: 56px;
			height: 56px;
			flex: 0 0 56px;
			border-radius: 15px;
			font-size: 1.8rem;
			display: flex;
			align-items: center;
			justify-content: center;
			text-align: center;

			& i {
				font-weight: 300 !important;
			}
		}



		.span-title{
			color: var(--lorange);
		}


			}

			& p {
				font-size: 1rem;
				color: #333333;
				text-wrap: balance;
				margin: 0 auto;
			}
		}
	}
}



















.recensioni-section {
	display: flex;
	justify-content: center;
	padding: 6rem 0 10rem;
	margin: 0 auto;
	position: relative;
	margin: 0;
	/* background-color: var(--vlgreen); */

	.recensioni-container {
		display: flex;
		flex-direction: column;
		width: auto;
		margin: 0 3rem;

		& picture {
			flex: 1 1 auto;
			& img {
				width: 100%;
				height: 100%;
				object-fit: cover;
			}
		}

		.recensioni-description {
			display: flex;
			flex-direction: column;
			align-items: center;
			padding: 4rem 2rem;
			gap: 0;
			max-width: 820px;
			margin: 0 auto;
			flex: 0 1 auto;
			text-align: center;
		}

		.recensioniSwiper {
			padding: 0 3rem 90px;

			&:not(.swiper-initialized) {
				display: flex;
				flex-wrap: wrap;

				.swiper-wrapper {
					flex-wrap: wrap;
					overflow: auto;
					justify-content: center;
				}

				.swiper-slide {
					flex: 1 1 30%;
					max-width: 30%;
					height: auto;
				}
			}

			.swiper-wrapper {
				.swiper-slide {
					display: flex;
					flex-direction: column;
					gap: 1rem;
					padding: 2rem;
					border-radius: 15px;
					background-color: #fff;
					border: 1px solid var(--lgreen);
				}
			}


			.inner-container{
				display: flex;
				flex-direction: column;
				height: 100%;
			}


			.chi-card-content{
				flex: 1 1 auto;
				display: flex;
				flex-direction: column;
				justify-content: space-between;
			}

			.icon-container {
				display: flex;
				justify-content: space-between;
				align-items: center;
				position: relative;

				&:after {
					content: "\f10e";
					font-family: "FontAwesome";
					display: block;
					position: absolute;
					top: 0;
					right: 0;
					color: var(--lorange);
					font-size: 6rem;
					opacity: 0.05;
				}
			}

			.recensione-stars {
				color: var(--dgreen);
				display: flex;
				gap: 0;

				& i{
					font-weight: 700!important;
				}
			}

			.chi-card-content p {
				margin: 1rem 0;
				font-size: 0.9rem;
				color: #333333;
				font-style: italic;
				position: relative;
				z-index: 2;
			}
			.recensione-name {
				font-weight: 700;
				text-align: right;
			}
		}
	}
}

@media (max-width: 1279px) {




.homepage .com-content-article__body section {
	.chi-sono-eyebrow {
		font-size: 1.2rem;
	}

	.chi-sono-title {
		line-height: 1;
		font-weight: 700;
		font-size: 2rem;
	}

	.chi-sono-text {
		font-weight: 400;
		line-height: 1.6;
		font-size: 1.1rem;
	}
}




	.hero-section-nutrizionista {
		margin: 0;

		.inner-section {
			min-height: 520px;

      & picture.herobg {
        position: relative;
        height: 400px;
      }

		}
	}

	.hero-wrap {
		padding: 0;
    display: flex;
    justify-content: center;
    margin-top: -100px;
    position: relative;
    z-index: 100;
	}

	.hero-wrap-inner {
		max-width: 560px;
		padding: 2.5rem;
		margin-left: 0;
    text-align: center;
    align-items: center;
    box-shadow: 0px 8px 20px -20px #000;
	}

	h1.hero-title {
		font-size: clamp(2.6rem, 8vw, 3.6rem);
	}

	.chi-sono-section {
		padding: 6rem 0;

		.chi-sono-container {
			margin: 0;
      flex-direction: column;
			


      .potrait-picture {
        max-width: 767px;
        width: 100%;
        height: 500px;
        margin: 0 auto;

        & img{
          width: 100%;
          height: 100%;
          object-fit: cover;
        }
      }

			.potrait-description {
				padding: 2.5rem 0;
				max-width: none;
				max-width: 767px;

			@media (max-width: 800px) {
				padding: 2.5rem;
			}

			}
		}
	}

	.servizi-section {
		padding: 5rem 0;

		.servizi-container {
			margin: 0 1.5rem;

			.servizi-description {
				padding: 3rem 0;
			}

			.chi-sono-cards {
				gap: 1.5rem;
			}

			.chi-card {
				flex: 1 1 40%;
			}
		}
	}

	.comefunziona-section {
		padding: 5rem 0;

		.comefunziona-container {
			margin: 0 1.5rem;

			.comefunziona-description {
				padding: 3rem 0;
			}

			.chi-sono-cards {
				grid-template-columns: 1fr;
				gap: 1rem;

				&:after {
					display: none;
				}
			}

			.chi-card {
				padding: 1.5rem;
			}
		}
	}



	.dovericevo-section {
		padding: 5rem 0;

		.comefunziona-container {
			margin: 0 1.5rem;

			.comefunziona-description {
				padding: 3rem 0;
			}

			.chi-sono-cards {
				grid-template-columns: 1fr;
				gap: 2rem;
				max-width: 550px;
			}

			.chi-card {
				padding: 1.5rem;
			}
		}
	}



	.recensioni-section {
		padding: 5rem 0 7rem;

		.recensioni-container {
			margin: 0 1.5rem;

			.recensioni-description {
				padding: 3rem 1rem;
			}

			.recensioniSwiper {
				padding: 0 2.5rem 80px;

				&:not(.swiper-initialized) {
					.swiper-slide {
						flex: 1 1 48%;
						max-width: 48%;
					}
				}
			}
		}
	}
}



@media (max-width: 650px) {

	.hero-wrap {
		margin-top: 0;
	}


	.hero-section-nutrizionista {
		margin: 0;

		.inner-section {
			min-height: auto;

      & picture.herobg{
        position: relative;
        height: 260px;
      }

		}


		.hero-wrap-inner{
			box-shadow: none;
		}

	}



	.chi-sono-section{
		.chi-sono-container {
			.potrait-description {
				padding: 2.5rem 1.5rem;
			}
		}
	}

}




@media (max-width: 550px) {

	.servizi-section {
		padding: 5rem 0;

		.servizi-container {
			margin: 0 1.5rem;

			.servizi-description {
				padding: 3rem 0;
			}

			.chi-sono-cards {
				gap: 1.5rem;
				flex-direction: column;
			}

			.chi-card {
				flex: 1 1 auto;
			}
		}
	}
}