/* Induxt Industry Business HTML-5 Template */

/*** 

====================================================================
	Services One
====================================================================

***/

.service-one {
	position: relative;
	padding: 120px 0px 120px;
}

.service-one:before {
	position: absolute;
	content: '';
	left: 60px;
	top: 0px;
	right: 60px;
	bottom: 0px;
	border-radius: 25px;
	background-color: #F5F5F5;
}

.service-one.style-two {
	padding-bottom: 90px;
}

.service-one.style-two::before {
	display: none;
}

.service-block_one {
	position: relative;
	margin-bottom: 40px;
}

.service-block_one-inner {
	position: relative;
}

.service-block_one-inner:hover .service-block_one-icon {
	transform: rotateY(180deg);
}

.service-block_one-image {
	position: relative;
}

.service-block_one-image img {
	position: relative;
	width: 100%;
	display: block;
	-webkit-mask-image: url(../images/resource/service-1-1.webp);
	-webkit-mask-size: cover;
	-webkit-mask-repeat: no-repeat;
	mask-image: url(../images/resource/service-1-1.webp);
	mask-size: cover;
	mask-repeat: no-repeat;
}

.service-block_one-icon {
	position: absolute;
	right: 30px;
	top: 60px;
	z-index: 1;
	width: 110px;
	height: 110px;
	font-size: 50px;
	text-align: center;
	line-height: 100px;
	border-radius: 15px;
	color: var(--white-color);
	border: 6px solid #F5F5F5;
	font-family: "flaticon_induxt";
	background-color: var(--main-color);
}

.service-block_one-content {
	position: relative;
	padding: 30px 40px;
	margin-left: 40px;
	margin-top: -88px;
	margin-right: 40px;
	border-radius: 25px;
	background-color: var(--white-color);
	box-shadow: 0px 10px 10px rgba(0, 0, 0, 0.10);
}

.service-block_one-title {
	position: relative;
}

.service-block_one-title a {
	position: relative;
	color: var(--color-two);
}

.service-block_one-title a:hover {
	color: var(--main-color);
}

.service-block_one-text {
	position: relative;
	margin-top: 15px;
	font-size: 18px;
	line-height: 30px;
}

.service-block_one-arrow {
	position: absolute;
	right: 10px;
	bottom: 10px;
	width: 48px;
	height: 48px;
	font-size: 20px;
	font-weight: 600;
	line-height: 48px;
	text-align: center;
	border-radius: 50px;
	display: inline-block;
	color: var(--white-color);
	font-family: "flaticon_induxt";
	background-color: var(--main-color);
}

.service-block_one-arrow:hover {
	color: var(--white-color);
	background-color: var(--color-two);
}

/*** 

====================================================================
	Services Two
====================================================================

***/

.service-two {
	position: relative;
}

.service-two .side-icon {
	position: absolute;
	left: 0px;
	top: 100px;
	z-index: 11;
}

.service-two .inner-container {
	position: relative;
}

.service-two .services-two_content {
	position: relative;
	z-index: 10;
	margin-left: 300px;
	padding: 80px 80px;
	border-radius: 25px;
	background-repeat: no-repeat;
	background-position: left bottom;
	background-color: var(--color-two);
}

.services-two_list {
	position: relative;
}

.services-two_list li {
	position: relative;
	margin-bottom: 30px;
	padding-bottom: 30px;
	border-bottom: 1px solid rgba(var(--white-color-rgb), 0.10);
}

.services-two_list li a {
	position: relative;
	display: block;
	font-size: 24px;
	color: var(--white-color);
	font-family: "Alexandria", sans-serif;
}

.services-two_list li a span {
	position: absolute;
	right: 0px;
	font-family: "flaticon_induxt";
}

.services-two_list li a:hover {
	color: var(--main-color);
}

.services-two_images-outer {
	position: relative;
	width: 92%;
	height: 572px;
	margin-top: -80px;
}

.services-two_images-outer .image.active {
	opacity: 1;
}

.services-two_images-outer .image {
	position: absolute;
	left: 0px;
	top: 0px;
	right: 0px;
	bottom: 0px;
	opacity: 0;
	overflow: hidden;
	border-radius: 30px;
	background-size: cover;
}

/*** 

====================================================================
	Services Three
====================================================================

***/

.service-three {
	position: relative;
	padding: 80px 0px 80px;
}

.service-three.style-two {
	padding-top: 0px;
}

.service-block_two {
	position: relative;
	margin-bottom: 30px;
}

.service-block_two-inner {
	position: relative;
	width: 100%;
	display: block;
	min-height: 348px;
	border-radius: 25px;
	padding: 110px 35px 30px;
	background-color: #f5f5f5;

	-webkit-mask-image: url(../images/resource/service-3-1.webp);
	-webkit-mask-size: cover;
	-webkit-mask-repeat: no-repeat;
	mask-image: url(../images/resource/service-3-1.webp);
	mask-size: cover;
	mask-repeat: no-repeat;
}

.service-block_two-inner:hover {
	background-color: var(--color-two);
}

.service-block_two a.btn-read-more {
	position: absolute;
	right: 10px;
	bottom: 0;
	width: 48px;
	height: 48px;
	font-size: 20px;
	font-weight: 600;
	line-height: 48px;
	text-align: center;
	border-radius: 50px;
	display: inline-block;
	color: var(--white-color);
	font-family: "flaticon_induxt";
	background-color: var(--main-color);
	opacity: 0;
	transition: all 300ms ease;
}

.service-block_two:hover a.btn-read-more {
	right: 0;
	opacity: 1;
	transform: rotate(-30deg);
}

.service-block_two-number {
	position: absolute;
	right: 45px;
	bottom: -28px;
	opacity: 0.08;
	font-size: 200px;
	font-weight: 800;
	line-height: 1em;
	font-family: "Alexandria", sans-serif;
}

.service-block_two-inner:hover .service-block_two-text,
.service-block_two-inner:hover .service-block_two-title a,
.service-block_two-inner:hover .service-block_two-number {
	color: var(--white-color);
}

.service-block_two-inner:hover .service-block_two-icon {
	animation: rubberBand 1s;
}

.service-block_two-icon {
	position: absolute;
	right: 30px;
	top: 30px;
	font-size: 60px;
	line-height: 1em;
	color: var(--main-color);
	font-family: "flaticon_induxt";
}

.service-block_two-title {
	position: relative;
	font-size: 1.5rem;
	font-weight: 500;
}

.service-block_two-title a {
	position: relative;
	color: var(--color-two);
}

.service-block_two-title a:hover {
	color: var(--main-color);
}

.service-block_two-text {
	position: relative;
	font-weight: 400;
	margin-top: 18px;
	font-size: 18px;
	line-height: 30px;
}

/*** 

====================================================================
	Services Four
====================================================================

***/

.service-four {
	position: relative;
	padding: 110px 0px 80px;
	background-color: #f4f4f4;
	background-position: right bottom;
	background-repeat: no-repeat;
}

.service-block_three {
	position: relative;
	margin-bottom: 30px;
}

.service-block_three-inner {
	position: relative;
	width: 100%;
	display: block;
	min-height: 348px;
	border-radius: 25px;
	padding: 20px 20px 20px;
	background-color: var(--white-color);

	-webkit-mask-image: url(../images/resource/service-4-1.png);
	-webkit-mask-size: cover;
	-webkit-mask-repeat: no-repeat;
	mask-image: url(../images/resource/service-4-1.png);
	mask-size: cover;
	mask-repeat: no-repeat;
}

.service-block_three-image {
	position: relative;
}

.service-block_three-image img {
	position: relative;
	-webkit-mask-image: url(../images/resource/service-9-1.png);
	-webkit-mask-size: cover;
	-webkit-mask-repeat: no-repeat;
	mask-image: url(../images/resource/service-9-1.png);
	mask-size: cover;
	mask-repeat: no-repeat;
}

.service-block_three .content {
	position: relative;
	padding-top: 45px;
}

.service-block_three-title {
	position: relative;
	font-weight: 700;
	margin-bottom: 20px;
}

.service-block_three-title a {
	position: relative;
	color: var(--color-two);
}

.service-block_three-title a:hover {
	color: var(--main-color);
}

.service-block_three-text {
	position: relative;
	font-size: 18px;
	line-height: 30px;
	padding-right: 50px;
	color: var(--color-three);
}

.service-block_three-button {
	position: relative;
	margin-top: 30px;
}

/*** 

====================================================================
	Services Five
====================================================================

***/

.service-five {
	position: relative;
	padding: 110px 0px 80px;
}

/***

====================================================================
	Sidebar Page Container
====================================================================

***/

.sidebar-page-container {
	position: relative;
	padding: 110px 0px 100px;
}

@media (max-width: 767px) {
	.sidebar-page-container {
		padding: 60px 0px 60px;
	}
}

.sidebar-page-container.alternate {
	padding-bottom: 100px;
}

.sidebar-page-container .content-side,
.sidebar-page-container .sidebar-side {
	margin-bottom: 0px;
}

.sticky-top {
	z-index: 1;
	top: 110px;
}

/* Sidebar Title */

.sidebar-widget {
	position: relative;
	margin-bottom: 40px;
}

.sidebar-title {
	position: relative;
	margin-bottom: 25px;
}

.sidebar-title h3 {
	position: relative;
	font-size: 1.5rem;
	font-weight: 600;
	color: var(--black-color);
	text-transform: uppercase;
}

/* Category List */

.category-list {
	position: relative;
	z-index: 1;
}

.category-list li {
	position: relative;
	z-index: 1;
	margin-bottom: 15px;
}

.category-list li a {
	position: relative;
	display: block;
	font-size: 18px;
	z-index: 1;
	font-weight: 600;
	border-radius: 50px;
	color: var(--black-color);
	text-transform: capitalize;
	padding: 22px 80px 22px 30px;

	-webkit-transition: all 300ms ease;
	-moz-transition: all 300ms ease;
	-ms-transition: all 300ms ease;
	-o-transition: all 300ms ease;
	transition: all 300ms ease;
	border: 1px solid rgba(var(--black-color-rgb), 0.10);
}

.category-list li a:hover::before,
.category-list li.active a::before {
	opacity: 1;
}

.category-list li a:before,
.category-list li.active a:before {
	position: absolute;
	content: '';
	left: 0px;
	top: 0px;
	right: 0px;
	bottom: 0px;
	z-index: -1;
	opacity: 0;
	border-radius: 50px;
	-webkit-transition: all 300ms ease;
	-moz-transition: all 300ms ease;
	-ms-transition: all 300ms ease;
	-o-transition: all 300ms ease;
	transition: all 300ms ease;
	background-color: var(--main-color);
}

.category-list li span {
	position: absolute;
	right: 6px;
	top: 50%;
	transform: translateY(-50%);
	width: 55px;
	height: 55px;
	padding: 0;
	line-height: 55px;
	border-radius: 50px;
	display: inline-block;
	color: var(--white-color);
	background-color: var(--black-color);
}

.category-list li a:hover span,
.category-list li.active a span {
	color: var(--black-color);
	background-color: var(--white-color);
}

.category-list li a:hover {
	color: var(--white-color);
	transform: rotate(2deg);
}

.category-list li:last-child {
	margin-bottom: 0px;
}

/* Appointment Widget */

.appointment-widget {
	position: relative;
	padding: 45px 35px;
	border-radius: 30px;
	background-size: cover;
}

.appointment-widget .title {
	position: relative;
	font-weight: 600;
	color: var(--white-color);
}

.appointment-widget .text {
	position: relative;
	margin-top: 20px;
	margin-bottom: 35px;
	color: var(--white-color);
}

.rating-widget .widget-content {
	position: relative;
	border-radius: 30px;
	padding: 35px 50px 50px;
	background-position: center top;
	background-repeat: no-repeat;
	background-color: var(--black-color);
}

.rating-widget_rating {
	position: relative;
	font-size: 128px;
	font-weight: 700;
	line-height: 1em;
	text-align: center;
	color: var(--white-color);
}

/* Rating Widget Authors */

.rating-widget_authors {
	position: relative;
	display: flex;
	gap: 20px;
	margin-top: 25px;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
}

.rating-widget_authors ul {
	position: relative;
	display: flex;
	margin-left: 20px;
}

.rating-widget_authors ul li {
	position: relative;
	width: 54px;
	height: 54px;
	margin-left: -20px;
	border-radius: 50px;
	display: inline-block;
	border: 3px solid var(--white-color);
}

.rating-widget_reviews {
	position: relative;
	font-weight: 600;
	font-size: 16px;
	color: var(--white-color);
}

.rating-widget .company-logo {
	position: relative;
	text-align: center;
	margin-top: 40px;
}

.rating-widget_phone {
	position: relative;
	text-align: center;
	margin-top: 30px;
	font-size: 16px;
	line-height: 40px;
	color: var(--white-color);
}

.rating-widget_phone a {
	position: relative;
	display: block;
	font-weight: 700;
	font-size: 32px;
	color: var(--white-color);
	font-family: "Lexend Deca", sans-serif;
}

.rating-widget_title-button {
	position: relative;
	text-align: center;
	margin-top: 35px;
}

.rating-widget_title-button .theme-btn {
	position: relative;
	text-transform: uppercase;
}

/***

====================================================================
	Service Detail
====================================================================

***/

.service-detail {
	position: relative;
}

.service-detail_inner {
	position: relative;
}

.service-detail_image {
	position: relative;
	overflow: hidden;
	margin-bottom: 25px;
	border-radius: 25px;
}

.service-detail_image img {
	position: relative;
	width: 100%;
	display: block;
	-webkit-mask-image: url(../images/resource/service-13-1.webp);
	-webkit-mask-size: cover;
	-webkit-mask-repeat: no-repeat;
	mask-image: url(../images/resource/service-13-1.webp);
	mask-size: cover;
	mask-repeat: no-repeat;
}

.service-detail_title {
	position: relative;
	margin-bottom: 30px;
}

.service-detail .two-column {
	position: relative;
	margin-bottom: 0px;
}

.service-detail_subtitle {
	position: relative;
	font-weight: 600;
	margin-bottom: 20px;
}

/*** Service Photos Grid ***/

.service-photos {
	margin-top: 36px;
}

.service-photos_grid {
	margin-top: 20px;
	row-gap: 28px;
}

.service-photos_item {
	margin-bottom: 0;
}

.service-photos_link {
	display: block;
	text-decoration: none;
}

.service-photos_img-wrap {
	position: relative;
	overflow: hidden;
	border-radius: 8px;
	aspect-ratio: 4 / 3;
	background-color: #f0f0f0;
}

.service-photos_img-wrap img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
	transition: transform 400ms ease;
}

.service-photos_link:hover .service-photos_img-wrap img {
	transform: scale(1.05);
}

.service-photos_zoom {
	position: absolute;
	inset: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	background: rgba(var(--main-color-rgb), 0.55);
	color: var(--white-color);
	font-size: 26px;
	opacity: 0;
	transition: opacity 300ms ease;
	border-radius: 8px;
}

.service-photos_link:hover .service-photos_zoom {
	opacity: 1;
}

.service-photos_caption {
	margin-top: 10px;
	font-size: 13px;
	line-height: 20px;
	color: var(--color-three);
	text-align: center;
}

.service-detail_icon {
	position: absolute;
	right: 30px;
	top: 60px;
	z-index: 1;
	width: 110px;
	height: 110px;
	font-size: 50px;
	text-align: center;
	line-height: 100px;
	border-radius: 15px;
	color: var(--white-color);
	border: 6px solid #F5F5F5;
	font-family: "flaticon_induxt";
	background-color: var(--main-color);
}

.service-detail_list {
	position: relative;
	margin-top: 20px;
}

.service-detail_list li {
	position: relative;
	font-size: 16px;
	padding-left: 30px;
	margin-bottom: 15px;
}

.service-detail_list li:before {
	position: absolute;
	content: '\f560';
	left: 0px;
	top: 0px;
	font-weight: 800;
	color: var(--main-color);
	font-family: 'Font Awesome 6 Free';
}

.service-detail_list li:last-child {
	margin-bottom: 0px;
}