/*----------------------------------------------
*
* [Softbit Element Stylesheet]
*
* Theme    : Softbit - Technology & IT Solutions WordPress Theme
* Version  : 1.0
* Author   : Themeland
* Support  : hridoy1272@gmail.com
* 
----------------------------------------------*/

/*----------------------------------------------

[ALL CONTENTS]

1. CPT
2. All Media Queries

----------------------------------------------*/

/*----------------------------------------------
1. CPT
----------------------------------------------*/

/* #region CPT */

/* Accordion */

.accordion-item {
	border: none;
}

.accordion-header {
    margin-top: 1rem;
}

.accordion-item:first-of-type .accordion-header {
    margin-top: 0;
}

.accordion-button {
    font-size: 18px;
	font-weight: 600;
	background-color: var(--primary-bg-color-2);
	border-radius: 6px !important;
	box-shadow: none;
}

.accordion-button:not(.collapsed) {
	background: -webkit-linear-gradient(270.31deg, #213FD4 37.05%, #3858E9 68.28%);
	background: linear-gradient(270.31deg, #213FD4 37.05%, #3858E9 68.28%);
	color: var(--white-color);
	box-shadow: none;
}

.accordion-button::after {
	position: absolute;
	content: "\f063";
	right: 1rem;
	z-index: 1;
	background-image: none;
	font-size: 18px;
	font-weight: 900;
	font-family: 'Font Awesome 6 Free';
}

.accordion-button:not(.collapsed)::after {
	background-image: none;
}

.accordion-body {
	background-color: var(--primary-bg-color-2);
	border-bottom-left-radius: 4px;
	border-bottom-right-radius: 4px;
}

/* Portfolio */

.portfolio:not(.no-hero) {
	position: relative;
	overflow: hidden;
	border-radius: 10px;
	-webkit-transition: -webkit-transform 0.65s cubic-bezier(0.05, 0.2, 0.1, 1), -webkit-box-shadow 0.65s cubic-bezier(0.05, 0.2, 0.1, 1);
	transition: -webkit-transform 0.65s cubic-bezier(0.05, 0.2, 0.1, 1), -webkit-box-shadow 0.65s cubic-bezier(0.05, 0.2, 0.1, 1);
	transition: transform 0.65s cubic-bezier(0.05, 0.2, 0.1, 1), box-shadow 0.65s cubic-bezier(0.05, 0.2, 0.1, 1);
	transition: transform 0.65s cubic-bezier(0.05, 0.2, 0.1, 1), box-shadow 0.65s cubic-bezier(0.05, 0.2, 0.1, 1), -webkit-transform 0.65s cubic-bezier(0.05, 0.2, 0.1, 1), -webkit-box-shadow 0.65s cubic-bezier(0.05, 0.2, 0.1, 1);
	z-index: 2;
}

.portfolio:not(.no-hero)::before,
.portfolio:not(.no-hero)::after {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 85%;
	display: block;
	z-index: 1;
	content: "";
	-webkit-transition: opacity 0.65s cubic-bezier(0.05, 0.2, 0.1, 1);
	transition: opacity 0.65s cubic-bezier(0.05, 0.2, 0.1, 1);
	cursor: pointer;
}

.portfolio:not(.no-hero)::before {
	background: -webkit-gradient(linear, left top, left bottom, from(rgba(15, 15, 15, 0)), to(rgba(15, 15, 15, 0.75)));
	background: linear-gradient(180deg, rgba(15, 15, 15, 0), rgba(15, 15, 15, 0.75));
}

.portfolio:not(.no-hero)::after {
	background: -webkit-gradient(linear, left top, left bottom, from(transparent), to(var(--primary-color)));
	background: linear-gradient(180deg, transparent, var(--primary-color));
	opacity: 0;
}

.portfolio-thumb {
	display: block;
}

.portfolio-thumb img {
	border-radius: 10px;
	width: 100%;
	-webkit-transition: opacity .5s ease .25s,-webkit-transform 1s ease;
	transition: opacity .5s ease .25s,-webkit-transform 1s ease;
	transition: transform 1s ease,opacity .5s ease .25s;
	transition: transform 1s ease,opacity .5s ease .25s,-webkit-transform 1s ease;
}

.portfolio-content {
	position: absolute;
	bottom: 0;
	left: 0;
	padding: 30px;
	z-index: 2;
	width: 100%;
}

.portfolio-meta {
	-webkit-transition: opacity 0.65s cubic-bezier(0.05, 0.2, 0.1, 1), -webkit-transform 0.65s cubic-bezier(0.05, 0.2, 0.1, 1);
	transition: opacity 0.65s cubic-bezier(0.05, 0.2, 0.1, 1), -webkit-transform 0.65s cubic-bezier(0.05, 0.2, 0.1, 1);
	transition: opacity 0.65s cubic-bezier(0.05, 0.2, 0.1, 1), transform 0.65s cubic-bezier(0.05, 0.2, 0.1, 1);
	transition: opacity 0.65s cubic-bezier(0.05, 0.2, 0.1, 1), transform 0.65s cubic-bezier(0.05, 0.2, 0.1, 1), -webkit-transform 0.65s cubic-bezier(0.05, 0.2, 0.1, 1);
}

.portfolio-meta .terms {
	font-size: 14px;
	font-weight: 600;
	letter-spacing: 1px;
	color: var(--white-color);
	opacity: 0.8;
}

.portfolio-meta .title {
	color: var(--white-color);
}

.portfolio-hover-content {
	opacity: 0;
	position: absolute;
	bottom: 35px;
	-webkit-transform: translateY(20px);
	transform: translateY(20px);
	line-height: 1.5em;
	max-width: 80%;
	-webkit-transition: opacity 0.18s cubic-bezier(0.05, 0.2, 0.1, 1), -webkit-transform 0.18s cubic-bezier(0.05, 0.2, 0.1, 1);
	transition: opacity 0.18s cubic-bezier(0.05, 0.2, 0.1, 1), -webkit-transform 0.18s cubic-bezier(0.05, 0.2, 0.1, 1);
	transition: opacity 0.18s cubic-bezier(0.05, 0.2, 0.1, 1), transform 0.18s cubic-bezier(0.05, 0.2, 0.1, 1);
	transition: opacity 0.18s cubic-bezier(0.05, 0.2, 0.1, 1), transform 0.18s cubic-bezier(0.05, 0.2, 0.1, 1), -webkit-transform 0.18s cubic-bezier(0.05, 0.2, 0.1, 1);
}

.portfolio-hover-content p {
	color: var(--white-color);
	opacity: 0.7;
}

.portfolio-link {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 2;
}

.portfolio:not(.no-hero):hover::before {
	opacity: 0;
}

.portfolio:not(.no-hero):hover::after {
	opacity: 1;
}

.portfolio:not(.no-hero):hover .portfolio-thumb img {
	-webkit-transform: scale(1.1);
	transform: scale(1.1);
	-webkit-transition: all 9s cubic-bezier(0.1, 0.2, 7, 1);
	transition: all 9s cubic-bezier(0.1, 0.2, 7, 1);
}

.portfolio:not(.no-hero):hover .portfolio-meta {
	-webkit-transform: translateY(-62px);
	transform: translateY(-62px);
	-webkit-transition: opacity 0.65s cubic-bezier(0.05, 0.2, 0.1, 1), -webkit-transform 0.65s cubic-bezier(0.05, 0.2, 0.1, 1);
	transition: opacity 0.65s cubic-bezier(0.05, 0.2, 0.1, 1), -webkit-transform 0.65s cubic-bezier(0.05, 0.2, 0.1, 1);
	transition: opacity 0.65s cubic-bezier(0.05, 0.2, 0.1, 1), transform 0.65s cubic-bezier(0.05, 0.2, 0.1, 1);
	transition: opacity 0.65s cubic-bezier(0.05, 0.2, 0.1, 1), transform 0.65s cubic-bezier(0.05, 0.2, 0.1, 1), -webkit-transform 0.65s cubic-bezier(0.05, 0.2, 0.1, 1);
}

.portfolio:not(.no-hero):hover .portfolio-hover-content {
	-webkit-transform: translateY(0);
	transform: translateY(0);
	opacity: 1;
	-webkit-transition: opacity 0.65s cubic-bezier(0.05, 0.2, 0.1, 1) 0.15s, -webkit-transform 0.65s cubic-bezier(0.05, 0.2, 0.1, 1) 0.15s;
	transition: opacity 0.65s cubic-bezier(0.05, 0.2, 0.1, 1) 0.15s, -webkit-transform 0.65s cubic-bezier(0.05, 0.2, 0.1, 1) 0.15s;
	transition: opacity 0.65s cubic-bezier(0.05, 0.2, 0.1, 1) 0.15s, transform 0.65s cubic-bezier(0.05, 0.2, 0.1, 1) 0.15s;
	transition: opacity 0.65s cubic-bezier(0.05, 0.2, 0.1, 1) 0.15s, transform 0.65s cubic-bezier(0.05, 0.2, 0.1, 1) 0.15s, -webkit-transform 0.65s cubic-bezier(0.05, 0.2, 0.1, 1) 0.15s;
}

/* Portfolio Interactive */

.interactive .portfolio-content {
	position: absolute;
	z-index: -2;
	height: 0;
	width: 0;
	margin: 0;
	margin-bottom: 40px;
	padding: 0;
	outline: none;
	opacity: 0;
	visibility: hidden;
	overflow: hidden;
}

.interactive-link {
	position: fixed;
	right: 100%;
	z-index: 999;
	height: 270px;
	width: 370px;
	margin-right: 60px;
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center center;
	border-radius: 2px;
	opacity: 0;
	visibility: hidden;
	overflow: hidden;
	-webkit-transition: opacity .5s,visibility .5s,-webkit-transform .5s;
	transition: opacity .5s,visibility .5s,-webkit-transform .5s;
	transition: transform .5s,opacity .5s,visibility .5s;
	transition: transform .5s,opacity .5s,visibility .5s,-webkit-transform .5s;
}

.interactive-link.active {
	opacity: 1;
	visibility: visible;
	-webkit-transform: scale(1);
		transform: scale(1);
}

.interactive-link.active .portfolio-meta a {
	display: table;
	padding: 6px;
	background: rgba(15, 15, 15, 0.69);
	opacity: 1;
}

.interactive .portfolio::before {
    background: -webkit-gradient(linear, left top, left bottom, from(rgba(15, 15, 15, 0)), to(rgba(15, 15, 15, 0.69)));
    background: linear-gradient(180deg, rgba(15, 15, 15, 0), rgba(15, 15, 15, 0.69));
}

.interactive .portfolio:hover::before {
    opacity: inherit;
}

.interactive .portfolio:hover::after {
	display: none;
}

/* Portfolio Filter */

.portfolio-filter .items .item {
	margin-top: 30px;
}

.filter-menu {
	margin-bottom: 30px;
}

.filter-menu .btn {
	margin: 1rem 2rem;
	background: inherit;
	color: var(--primary-t-color);
	font-weight: 500;
	position: relative;
	-webkit-box-shadow: none;
			box-shadow: none;
	transition: color 0.3s ease-in-out;
}

.filter-menu .btn::before {
    position: absolute;
    content: '/';
    left: calc(100% + 1rem);
    top: 50%;
    transform: translateY(-50%);
	color: var(--primary-t-color);
}

.filter-menu .btn:last-of-type::before {
    content: none;
}

.filter-menu .btn::after {
	position: absolute;
	content: '';
	height: 2px;
	width: 0;
	bottom: 2px;
	left: 50%;
	background-color: var(--primary-color);
	-webkit-transform: translateX(-50%);
			transform: translateX(-50%);
	border-top-left-radius: 6px;
	border-top-right-radius: 6px;
	visibility: hidden;
	opacity: 0;
	-webkit-transition: all 0.3s ease 0s;
	transition: all 0.3s ease 0s;
}

.filter-menu .btn:has(input[type="radio"]:checked) {
	color: var(--primary-color);
}

.filter-menu .btn:has(input[type="radio"]:checked)::after {
	width: 60%;
	visibility: visible;
	opacity: 1;
}

.filter-menu .btn .content {
    position: relative;
    display: inline-flex;
}

.filter-menu .count {
    position: absolute;
    right: -1.5em;
    font-size: 0.75em;
    line-height: 0;
    vertical-align: baseline;
}

.filter-menu .btn:hover {
	color: var(--primary-color);
}

.recent-projects {
	background-color: var(--primary-bg-color-2);
}

.single-portfolio .portfolio-card {
    padding: 2.5rem;
    background-color: var(--primary-color);
    border-radius: 0.5rem;
}

.single-portfolio .portfolio-title h4 {
	color: var(--white-color);
}

.single-portfolio .portfolio-meta .table tr,
.single-portfolio .portfolio-meta .table td {
    border: none;
}

.single-portfolio .portfolio-meta .table td:first-of-type {
    padding-left: 0;
}

.single-portfolio .portfolio-meta span:not(.title),
.single-portfolio .portfolio-meta .tax {
    color: var(--white-color);
	opacity: 0.8;
}

.single-portfolio .portfolio-meta .title {
    font-weight: 500;
}

/* Service */

.service-card {
	position: relative;
    padding: 32px;
    background-color: #fff;
    box-shadow: 0px 4px 10px 4px rgba(0, 0, 0, 0.03);
    border-radius: 10px;
	transition: all 0.3s ease-out;
}

.service-image {
    position: relative;
}

.service-image img {
    min-width: 45px;
	max-width: 50px;
	transition: filter 0.3s ease;
}

.service-card .title {
    display: inline-block;
    margin-top: 20px;
    letter-spacing: -1px;
}

.service-card .service-content p {
	margin: 20px 0;
}

.service-content .content-btn {
	font-weight: 500 !important;
}

.service-card .service-link {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 2;
}

.service-card.style-2:hover img {
    filter: brightness(0) invert(1);
}

.service-card.style-2 .title {
    margin-bottom: 14px;
}

.service-card.style-2 .service-content p {
    margin-bottom: 0;
}

.service-card.style-2 .service-content .content-btn {
	color: #fff;
}

.service-card.style-2:hover .content-btn svg {
    -webkit-animation: MoveScaleLeftInitial 0.3s forwards, MoveScaleLeftEnd 0.25s forwards 0.25s;
    animation: MoveScaleLeftInitial 0.3s forwards, MoveScaleLeftEnd 0.25s forwards 0.25s;
}

.service .service-list li,
.career-list li {
    display: flex;
	align-items: center;
	line-height: 1.8;
}

.service .service-list li svg,
.career-list li svg {
	font-size: 20px;
	color: var(--primary-color);
}

.service-nav .menu-item {
    margin: 0.25rem 0;
}

.service-nav .menu-item:first-child {
    margin-top: 0;
}

.service-nav .menu-item a {
	position: relative;
	display: block;
    padding: 1rem;
	border-radius: 4px;
	font-size: 18px;
	font-weight: 500;
	background-color: var(--primary-bg-color-2);
    color: var(--primary-p-color);
}

.service-nav .menu-item a::after {
    position: absolute;
	content: "\f061";
	right: 20px;
    font-family: 'Font Awesome 6 Free';
	font-size: 18px;
    font-weight: 900;
    color: var(--primary-t-color);
	transition: all 0.4s ease-out 0s;
}

.service-nav .current-menu-item a {
	background: -webkit-linear-gradient(45deg, #3858E9 15%, #213FD4 65%);
	background: linear-gradient(45deg, #3858E9 15%, #213FD4 65%);
	color: var(--white-color);
}

.service-nav .current-menu-item a::after {
	color: var(--white-color);
}

.service-nav .menu-item:not(.current-menu-item) a:hover,
.service-nav .menu-item:not(.current-menu-item) a:hover::after {
	color: var(--primary-color);
}

/* Team */

.team:not(.no-hero) {
    position: relative;
}

.team-thumb {
	border-radius: 0.5rem;
	overflow: hidden;
}

.team-thumb img {
	border-radius: 0.5rem;
	transition: transform 1s ease;
	transition: transform 1s ease,-webkit-transform 1s ease;
}

.team-content {
    position: relative;
	width: 75%;
	margin-top: -55px;
	margin-right: auto;
    margin-left: auto;
	background-color: #fff;
	box-shadow: 0px 4px 10px 4px rgb(0 0 0 / 3%);
	border-radius: 0.5rem;
	transition: all 0.65s cubic-bezier(0.05, 0.2, 0.1, 1);
}

.team:not(.no-hero):hover .team-thumb img {
	-webkit-transform: scale(1.1);
	transform: scale(1.1);
}

.team:not(.no-hero):hover .team-content {
	background-color: var(--primary-color);
}

.team:not(.no-hero):hover .title,
.team:not(.no-hero):hover .designation {
	color: var(--white-color);
}

.team-single-content {
    padding: 50px 40px;
    background-color: var(--primary-bg-color-2);
    border-radius: 10px;
}

.team-meta .table tr,
.team-meta .table td {
    border: none;
}

.team-meta .table td:first-of-type {
    padding-left: 0;
}

.team-meta .title {
    font-weight: 500;
}

.team-single .socical-links a {
	display: flex;
	justify-content: center;
	align-items: center;
	height: 45px;
	width: 45px;
	background-color: var(--primary-color);
	border-radius: 50%;
	color: var(--white-color);
	text-align: center;
}

.team-experiences svg {
	font-size: 20px;
	color: var(--primary-color);
}

/* Testimonial */

.testimonial-item {
	padding: 2rem;
	background: #fff;
	box-shadow: 0px 4px 10px 4px rgba(0, 0, 0, 0.03);
	border-radius: 10px;
}

.testimonial-category span {
    padding: 10px;
    border-radius: 6px;
    background-color: var(--primary-bg-color-2);
	font-weight: 500;
}

.testimonial-icon img {
	width: 34px;
}

.testimonial-content p {
	font-family: var(--primary-font);
	font-size: 20px;
	line-height: 30px;
}

.testimonial_thumb img {
    height: 80px;
    width: 80px;
    border-radius: 50%;
    filter: drop-shadow(0px 4px 4px var(--primary-color));
}

.testimonial-meta .testimonial-name,
.testimonial-meta .testimonial-title {
    font-family: var(--secondary-font);
}

.testimonial-meta .testimonial-name {
	font-weight: 500;
}

.testimonials.swiper-container {
	overflow: hidden;
}

/* Post */

.card-simple .post-image {
    display: block;
    margin-bottom: 30px;
}

.card-simple .post-image .card-img-top {
    border-radius: 10px;
}

.post-meta a:not(:hover) {
    color: #555555;
}

.post-meta a svg {
	margin-right: 5px;
	color: var(--primary-color);
}

.post-content .title {
	margin: 20px 0;
    letter-spacing: -0.02em;
}

.post-content .title a {
	font-size: 1.5rem;
	font-weight: 600;
	color: var(--primary-t-color);
	display: inline;
    padding-bottom: 5px;
    background-image: linear-gradient(to right, var(--primary-t-color) 0%, var(--primary-t-color) 100%);
    background-size: 100% 5%;
    background-repeat: no-repeat;
    background-position: left 80%;
    transition: all .4s ease;
}

.card-simple .post-holder-tags a:not(.btn) {
    margin: 0 5px 5px 0;
    background-color: var(--primary-bg-color-2);
}

.has-bg .card-simple .post-holder-tags a:not(.btn) {
    background-color: #fff;
}

.card-simple:hover .post-content .title a {
    background-size: 0% 5%;
}

.single-job {
	padding: 2rem;
	background-color: var(--primary-bg-color-2);
	border-radius: 10px;
}

.single-job .post-date {
	color: var(--primary-color);
}

.apply-button {
    font-weight: 500;
    background-color: var(--primary-color) !important;
	color: var(--white-color) !important;
    border-radius: 6px;
    padding: 16px 24px;
}

.icon-rotate svg {
	transform: rotate(-45deg);
	transition: 0.2s ease-out;
}

.icon-rotate:hover svg {
	transform: rotate(0);
}

/* #endregion CPT */

/*----------------------------------------------
2. All Media Queries
----------------------------------------------*/

/* #region All Media Queries */

@media (max-width: 576px) {

	.interactive .portfolio-content {
		position: unset;
		height: auto;
		width: 100%;
		margin-bottom: 0;
		padding-top: 1rem;
		opacity: 1;
		visibility: visible;
	}

	.interactive-link {
		display: none;
	}

	.interactive .portfolio-meta .terms {
		color: var(--primary-p-color);
	}

	.interactive .portfolio-meta .title {
		color: var(--primary-t-color);
	}

	.filter-menu .btn {
		margin: 0.5rem 1rem;
	}

	.filter-menu .btn::before {
		left: calc(100% + 0.5rem);
	}

	/* #region Service */

	.service-card.style-2 .service-image img {
		width: 40px;
		min-width: auto;
	}

	.service-card.style-2 .title {
		margin-bottom: 10px;
	}

	/* #endregion Service */

	/* #region Team */

	.team-single-content {
		padding: 30px 16px;
	}

	/* #endregion Team */

	/* #region Testimonial */

	.testimonial-category span {
		font-size: 15px;
	}

	.testimonial-content p {
		font-size: 18px;
		line-height: 24px;
	}

	/* #endregion Testimonial */
}

/* #endregion All Media Queries */