.savi-intro {
	margin: 130px 0 0 0;
	padding: 100px 0 90px 0;
	position: relative;
}

	.savi-intro .container {
		z-index: 2;
	}

	.savi-intro .logo {
		max-width: 465px;
	}

	.savi-intro p {
		font-size: 24px;
		color: #FFF;
		font-family: "Proxima N W01 Light";
	}

	.savi-intro .title {
		padding: 100px 0 20px 0;
		max-width: 465px;
	}

	.savi-intro .btn {
		border: 1px solid #FFF;
	}

		.savi-intro .btn.outline {
			background: rgba(0,0,0,0);
			border: 1px solid #FFF;
			color: #FFF;
		}

		.savi-intro .btn:hover {
			background: #9DE147;
			color: #fff;
			border-color: #9DE147;
		}

	.savi-intro .bg {
		position: absolute;
		top: 0;
		right: 0;
		bottom: 0;
		left: 0;
		width: 100%;
		height: 100%;
		z-index: 100;
		object-fit: cover;
		object-position: 50% 50%;
		z-index: -1;
	}

		.savi-intro .bg.mobile {
			display: none;
		}

@media only screen and (max-width: 1400px) {

	.savi-intro .bg {
		object-position: 40% 50%;
	}
}


@media only screen and (max-width: 1280px) {

	.savi-intro {
		margin: 90px 0 0 0;
	}
}

@media only screen and (max-width: 575px) {

	.savi-intro {
		padding: 100px 20px 100px 20px;
	}

		.savi-intro p {
			font-size: 1.8rem;
		}
}

@media only screen and (max-width: 440px) {

	.savi-intro .bg.mobile {
		display: block;
		object-position: 50% 50%;
	}

	.savi-intro .bg.desktop {
		display: none;
	}

	.savi-intro .button {
		display: flex;
		justify-content: space-between;
	}

	.savi-intro .btn {
		min-width: 140px;
	}
}


/* savi-text-only */

.savi-text-only {
	background: #1F2028;
	color: #FFF;
	text-align: center;
	padding: 60px 20px 60px 20px;
}

	.savi-text-only .heading {
		font-size: 24px;
		margin-bottom: 1.5em;
		font-family: "Proxima N W01 Light";
	}

	.savi-text-only p {
		color: #FFF;
		margin-bottom: 1.5em;
	}

		.savi-text-only p a {
			color: #85C335;
			border-bottom: 1px solid rgba(0,0,0,0);
		}

			.savi-text-only p a:hover {
				color: #9DE147;
				border-color: #9DE147;
			}



/* savi-video */

.savi-video {
	background: #000;
	color: #FFF;
	text-align: center;
	padding: 60px 20px 60px 20px;
}

	.savi-video .heading {
		font-size: 24px;
		margin-bottom: 1.5em;
		font-family: "Proxima N W01 Light";
		color: #85C335;
	}

	.savi-video .video-wrapper {
		position: relative;
		padding-bottom: 56.25%; /* 16:9 */
		height: 0;
		float: left;
		width: 100%;
		margin: 0;
		font-size: 16px;
	}

		.savi-video .video-wrapper object,
		.savi-video .video-wrapper embed,
		.savi-video .video-wrapper iframe {
			position: absolute;
			top: 0;
			left: 0;
			width: 100%;
			height: 100%;
		}



/* savi-analytics */

.savi-analytics {
	background: #1F2028;
	color: #FFF;
	text-align: center;
	padding: 60px 20px 40px 20px;
}

	.savi-analytics .heading {
		font-size: 24px;
		margin-bottom: 1.5em;
		font-family: "Proxima N W01 Light";
	}

	.savi-analytics .links img {
		width: 110px;
		height: auto;
		margin: 10px 0 15px 0;
		opacity: 1;
		transition: opacity 0.3s linear;
	}

	.savi-analytics .links p {
		color: #85C335;
		font-family: "Proxima N W01 Smbd";
		font-size: 20px;
		margin: 0 0 20px 0;
		transition: color 0.3s linear;
	}


	.savi-analytics .links a:hover p {
		color: #9DE147;
	}

	.savi-analytics .links a:hover img {
		opacity: 0.8;
	}

@media only screen and (max-width: 440px) {

	.savi-analytics .links img {
		display: none;
	}
}


/* savi-text-image */

.savi-text-image {
	background: #000;
	overflow: hidden;
}


	.savi-text-image.grey {
		background: #1F2028;
	}

	.savi-text-image .image {
		padding: 0;
		position: relative;
	}

		.savi-text-image .image:after {
			content: "";
			display: block;
			background: #183637;
			position: absolute;
			top: 0;
			left: 0;
			bottom: 0;
			right: 0;
			height: 100%;
			width: 1000px;
			z-index: 1;
		}

		.savi-text-image .image img {
			position: absolute;
			top: 0;
			right: 0;
			bottom: 0;
			left: 0;
			width: auto;
			height: 100%;
			z-index: 2;
		}

	.savi-text-image .text {
		display: flex;
		flex-flow: row wrap;
		align-items: center;
	}

		.savi-text-image .text .middle {
			padding: 60px 0 40px 0;
		}

	.savi-text-image .title {
		color: #85C335;
		font-size: 24px;
		margin-bottom: 1.5em;
		font-family: "Proxima N W01 Light";
	}

	.savi-text-image .maintitle {
		color: #FFF;
		font-size: 24px;
		margin-bottom: 1.5em;
		font-family: "Proxima N W01 Smbd";
	}

	.savi-text-image p {
		color: #fff;
		margin: 0 0 1.5em 0;
	}


@media only screen and (max-width: 768px) {

	.savi-text-image .text {
		order: 2;
	}

		.savi-text-image .text .middle {
			padding: 60px 20px 40px 20px;
		}

	.savi-text-image .image {
		order: 1;
	}

		.savi-text-image .image img {
			position: relative;
			top: auto;
			right: auto;
			bottom: auto;
			left: auto;
			width: 100%;
			height: auto;
		}
}


/* savi-samples */

.savi-samples {
	background: #1F2028;
	color: #FFF;
	text-align: center;
	padding: 60px 20px 60px 20px;
}

	.savi-samples .heading {
		font-size: 24px;
		margin-bottom: 1.5em;
		font-family: "Proxima N W01 Light";
		color: #85C335;
		padding: 0 20px;
	}


	.savi-samples .reports {
		float: left;
		width: 100%;
	}

		.savi-samples .reports .report {
			float: left;
			width: 100%;
			padding: 10px 10px 30px 10px;
		}

			.savi-samples .reports .report a {
				display: flex;
				flex-direction: column;
				color: #fff;
				text-align: left;
			}

				.savi-samples .reports .report a:hover .image img {
					opacity: 1;
				}

				.savi-samples .reports .report a:hover .title {
					color: #000;
				}

				.savi-samples .reports .report a .image {
					margin: 0 0 20px 0;
					padding-bottom: 66.323%;
					position: relative;
					background: #000;
				}

					.savi-samples .reports .report a .image img {
						width: 100%;
						height: 100%;
						opacity: 0.9;
						transition: opacity 0.3s linear;
						position: absolute;
						top: 0;
						right: 0;
						bottom: 0;
						left: 0;
						object-fit: cover;
					}

					.savi-samples .reports .report a .image.notice {
						position: relative;
					}

						.savi-samples .reports .report a .image.notice:after {
							content: "Free";
							display: block;
							position: absolute;
							background: #57A997;
							top: 0;
							left: 0;
							text-transform: uppercase;
							letter-spacing: 0.2em;
							padding: 5px 15px;
							z-index: 10;
						}

				.savi-samples .reports .report a .title {
					font-size: 18px;
					padding: 15px 0;
					transition: color 0.3s linear;
					color: #85C335 !important;
					font-family: "Proxima N W01 Smbd";
				}

				.savi-samples .reports .report a:hover .title {
					color: #9DE147 !important;
				}

				.savi-samples .reports .report a p {
					font-size: 16px;
					line-height: 1.5em;
					color: #fff;
				}

					.savi-samples .reports .report a p.date {
						text-transform: uppercase;
						font-size: 1.2rem;
					}


	.savi-samples .btn {
		border: 1px solid #FFF;
	}


		.savi-samples .btn.outline {
			background: rgba(0,0,0,0);
			border: 1px solid #FFF;
			color: #FFF;
		}

		.savi-samples .btn:hover {
			background: #9DE147;
			border-color: #9DE147;
		}


@media only screen and (max-width: 991px) {


	.savi-samples .container {
		max-width: 100% !important;
		width: 100%;
	}

		.savi-samples .container > .row {
			--bs-gutter-x: 0;
			padding: 0;
			margin: 0;
		}
}


@media only screen and (max-width: 1000px) {

	.savi-samples {
		padding-left: 15px;
		padding-right: 0px;
	}

		.savi-samples .container {
			padding: 0;
		}

		.savi-samples .owl-carousel .owl-stage {
			left: -100px;
		}
}

@media only screen and (max-width: 600px) {

	.savi-samples .owl-carousel .owl-stage {
		left: -50px;
	}
}


@media only screen and (max-width: 440px) {

	.savi-samples .owl-carousel .owl-stage {
		left: -20px;
	}

	.savi-samples .btn {
		min-width: 140px;
		padding-right: 10px;
		padding-left: 10px;
	}
}


/* savi-dashboards */

.savi-dashboards {
	background: #000;
	color: #FFF;
	padding: 60px 20px 60px 20px;
}

	.savi-dashboards .heading {
		font-size: 24px;
		margin-bottom: 1.5em;
		font-family: "Proxima N W01 Light";
		color: #85C335;
	}

	.savi-dashboards .maintitle {
		font-size: 24px;
		margin-bottom: 1.5em;
		font-family: "Proxima N W01 Smbd";
		color: #fff;
	}

	.savi-dashboards .dashboard {
		background: #1F2028;
		color: #fff;
		margin-top: 30px;
		overflow: hidden;
	}


		.savi-dashboards .dashboard.alt .text {
			order: 2;
		}

		.savi-dashboards .dashboard .text {
			padding: 40px 40px 25px 40px;
			display: flex;
			flex-flow: row wrap;
			align-items: center;
			z-index: 2;
		}

			.savi-dashboards .dashboard .text .maintitle {
				color: #85C335;
				text-transform: uppercase;
			}

			.savi-dashboards .dashboard .text p {
				color: #FFF;
				margin: 0 0 1.5em 0;
			}

		.savi-dashboards .dashboard .image {
			padding: 40px 40px 40px 100px;
			display: flex;
			flex-flow: row wrap;
			align-items: center;
			justify-content: center;
			background: #57A997;
			position: relative;
		}

		.savi-dashboards .dashboard.no2 .image {
			background: #52858A;
		}

		.savi-dashboards .dashboard.no3 .image {
			background: #357579;
		}

		.savi-dashboards .dashboard.no4 .image {
			background: #29595C;
		}

		.savi-dashboards .dashboard .image:before {
			content: "";
			display: block;
			position: absolute;
			top: 0;
			right: 100%;
			height: 102%;
			width: 360px;
			margin-right: -70px;
			transform: skew(-20deg);
			background: #1F2028;
			z-index: 1;
		}

		.savi-dashboards .dashboard .image img {
			max-width: 398px;
			width: 100%;
			height: auto;
		}


		.savi-dashboards .dashboard.alt .image {
			order: 1;
		}

			.savi-dashboards .dashboard.alt .image:before {
				right: auto;
				left: 100%;
				margin-right: 0;
				margin-left: -70px;
				transform: skew(-20deg);
			}

		.savi-dashboards .dashboard.alt .image {
			padding: 20px 120px 20px 40px;
		}


	.savi-dashboards .button {
		text-align: center;
		margin: 50px 0 0 0;
	}


	.savi-dashboards .btn:hover {
		background: #9DE147;
		border-color: #9DE147;
	}


@media only screen and (max-width: 991px) {

	.savi-dashboards .dashboard .image,
	.savi-dashboards .dashboard.alt .image {
		padding: 20px 40px 20px 40px;
		order: 1;
	}

		.savi-dashboards .dashboard .image:before {
			display: none;
		}

	.savi-dashboards .dashboard .text {
		order: 2;
	}
}


@media only screen and (max-width: 440px) {

	.savi-dashboards .dashboard .image {
		padding: 30px 20px;
	}

	.savi-dashboards .dashboard .text {
		padding: 40px 20px 20px 20px;
	}
}


/* savi-updates */

.savi-updates {
	background: #000;
	color: #FFF;
	text-align: center;
	padding: 60px 20px 60px 20px;
}

	.savi-updates .heading {
		font-size: 24px;
		margin-bottom: 1.5em;
		color: #85C335;
		font-family: "Proxima N W01 Light";
	}

	.savi-updates .stats {
		text-align: center;
		padding: 30px 0;
	}

		.savi-updates .stats .circle {
			width: 120px;
			height: 120px;
			line-height: 120px;
			background: #57A997;
			font-size: 36px;
			margin: 0 auto 20px auto;
			text-align: center;
			border-radius: 100px;
			font-family: "Proxima N W01 Smbd";
		}

			.savi-updates .stats .circle.no2 {
				background: #52858A;
			}

			.savi-updates .stats .circle.no3 {
				background: #357579;
			}

			.savi-updates .stats .circle.no4 {
				background: #29595C;
			}

		.savi-updates .stats p {
			color: #FFF;
			font-family: "Proxima N W01 Smbd";
			font-size: 14px;
			padding: 0 0 20px 0;
		}

	.savi-updates .btn:hover {
		background: #9DE147;
		border-color: #9DE147;
	}


/* savi-notice-block */

.savi-notice-block {
	position: relative;
}

	.savi-notice-block .container {
		max-width: 100%;
		width: 100%;
		z-index: 10;
		padding: 0;
	}

		.savi-notice-block .container .row {
			--bs-gutter-x: 0px;
			padding: 0 !important;
			background: rgba(0,0,0,0.25);
		}

	.savi-notice-block .bg {
		position: absolute;
		top: 0;
		right: 0;
		bottom: 0;
		left: 0;
		width: 100%;
		height: 100%;
		object-fit: cover;
		z-index: -1;
	}


	.savi-notice-block .title {
		font-size: 36px;
		font-family: "Proxima N W01 Light";
		text-align: center;
		color: #fff;
		padding: 130px 20px;
	}


@media only screen and (max-width: 440px) {

	.savi-notice-block .title {
		font-size: 24px;
		padding: 100px 20px;
	}

	.savi-notice-block .bg {
		object-position: 60% 50%;
	}
}


/* savi-get-savi */

.savi-get-savi {
	background: #1F2028;
	color: #FFF;
	text-align: center;
	padding: 0px 20px 60px 20px;
}

	.savi-get-savi .heading {
		font-size: 24px;
		margin: 60px 0;
		color: #FFF;
		font-family: "Proxima N W01 Light";
	}


	.savi-get-savi .logo {
		width: 303px;
		height: auto;
		margin: 30px 0;
	}

	.savi-get-savi .info {
		position: relative;
		padding-bottom: 40px;
	}


		.savi-get-savi .info .col-md-3 {
			position: relative;
		}

		.savi-get-savi .info p {
			color: #85C335;
			font-size: 20px;
			margin: 0;
			font-family: "Proxima N W01 Smbd";
		}

			.savi-get-savi .info p:before {
				content: "";
				display: block;
				height: 20px;
				width: 1px;
				background: #57A997;
				position: absolute;
				bottom: -40px;
				left: 50%;
			}

		.savi-get-savi .info:before {
			content: "";
			display: block;
			width: 75%;
			position: absolute;
			bottom: 0;
			left: 12.5%;
			border-bottom: 1px solid #57A997;
		}

		.savi-get-savi .info p.first:before {
			transform: skew(25deg);
			margin-left: -4px;
		}

		.savi-get-savi .info.above p.first:before {
			transform: skew(-25deg);
		}

		.savi-get-savi .info p.last:before {
			transform: skew(-25deg);
			margin-left: 4px;
		}

		.savi-get-savi .info.above p.last:before {
			transform: skew(25deg);
		}

		.savi-get-savi .info.above {
			padding-bottom: 0;
			padding-top: 40px;
		}

			.savi-get-savi .info.above p:before {
				bottom: auto;
				top: -40px;
			}

			.savi-get-savi .info.above:before {
				bottom: auto;
				top: 0;
			}

	.savi-get-savi .btn:hover {
		background: #9DE147;
		border-color: #9DE147;
	}



@media only screen and (max-width: 768px) {

	.savi-get-savi .heading {
		margin: 60px 0 20px 0;
	}

	.savi-get-savi .button {
		margin: 40px 0 0 0;
	}

	.savi-get-savi .info:before {
		width: 90%;
		left: 5%;
	}

	.savi-get-savi .info p {
		margin-top: 30px;
		padding: 0 40px;
	}

		.savi-get-savi .info p:before {
			display: none;
		}


	.savi-get-savi .info.below p.last:before,
	.savi-get-savi .info.below p.last:after {
		content: "";
		display: block;
		height: 20px;
		width: 1px;
		background: #57A997;
		position: absolute;
		bottom: -40px;
		left: 5%;
		transform: skew(25deg);
		margin-left: -4px;
	}

	.savi-get-savi .info.below p.last:after {
		left: 95%;
		transform: skew(-25deg);
		margin-left: 4px;
	}

	.savi-get-savi .info.above {
		padding-bottom: 0;
		padding-top: 20px;
	}

		.savi-get-savi .info.above p.first:before,
		.savi-get-savi .info.above p.first:after {
			content: "";
			display: block;
			height: 20px;
			width: 1px;
			background: #57A997;
			position: absolute;
			top: -20px;
			left: 5%;
			transform: skew(-25deg);
			margin-left: -4px;
		}

		.savi-get-savi .info.above p.first:after {
			left: 95%;
			transform: skew(25deg);
			margin-left: 4px;
		}
}
.savi-get-savi .btn.outline {
	background: rgba(0,0,0,0);
	border: 1px solid #FFF;
	color: #FFF;
}

/* savi-team */

.savi-team {
	background: #000;
	color: #FFF;
	padding: 60px 20px 60px 20px;
	text-align: center;
}

	.savi-team .heading {
		font-size: 24px;
		margin-bottom: 1.5em;
		font-family: "Proxima N W01 Light";
		color: #FFF;
	}

	.savi-team p {
		color: #FFF;
		line-height: 1.5em;
	}

		.savi-team p.intro a {
			color: #85C335;
			font-family: "Proxima N W01 Smbd";
			border-bottom: 1px solid rgba(0,0,0,0);
		}

			.savi-team p.intro a:hover {
				color: #9DE147;
				border-color: #9DE147;
			}

	.savi-team .team .col-md-4 {
		margin-top: 40px;
	}

	.savi-team .team a {
		color: #85C335;
		border-bottom: 1px solid rgba(0,0,0,0);
	}

		.savi-team .team a:hover {
			color: #9DE147;
			border-color: #9DE147;
		}

	.savi-team .team img {
		width: 60px;
		height: 60px;
		border-radius: 100px;
		margin: 5px 0 15px 0;
	}


	.savi-team .button {
		margin-top: 60px;
	}

		.savi-team .button .btn {
			border: 1px solid #FFF;
		}

		.savi-team .button .outline {
			background: rgba(0,0,0,0);
			color: #FFF;
		}

	.savi-team .btn:hover {
		background: #9DE147;
		border-color: #9DE147;
	}

@media only screen and (max-width: 440px) {

	.savi-team .btn {
		min-width: 140px;
		padding-right: 10px;
		padding-left: 10px;
	}
}
