@import url("https://fonts.googleapis.com/css2?family=Montserrat:wght@100;200;300;400;500;600;700;800;900&display=swap");

:root {
	--animate-duration: 500ms;
	--animate-delay: 0.1s;
	--nav-link-transition: unset !important;
}

body {
	font-family: "Montserrat", sans-serif;
	font-size: 15px;
	color: #3b3b3b;
	font-weight: 300;
}
a {
	color: inherit;
	text-decoration: none;
}
input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
	/* display: none; <- Crashes Chrome on hover */
	-webkit-appearance: none;
	margin: 0; /* <-- Apparently some margin are still there even though it's hidden */
}
input[type="number"] {
	-moz-appearance: textfield; /* Firefox */
}
.btn {
	border-radius: 50px;
}
.btn-primary {
	background-color: #272c63;
	border-color: #272c63;
}
.btn-primary:hover {
	transition: 0.3s;
	background-color: #454da4;
	border-color: #454da4;
}
.tbs-card {
	background-color: #efefef;
	padding: 30px;
	border-radius: 50px;
}
.tbs-wcard {
	background-color: #fff;
	padding: 30px;
	border-radius: 50px;
}
.tbs-bcard {
	background-color: #272c63;
	padding: 30px;
	border-radius: 50px;
	color: #fff;
}
.color-tbs {
	color: #272c63;
}
.tbs-color {
	color: #272c63;
}

b {
	font-weight: 700;
}

/*
** Navigation
*/
.navigation {
	width: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
	padding-top: 20px;
	padding-right: 30px;
	padding-bottom: 20px;
	padding-left: 30px;
	position: fixed;
	top: 0;
	z-index: 9;
	animation: initNav 0.3s ease-in-out 0s;
	animation-fill-mode: forwards;
}

.mnavigation {
	width: 100%;
	display: none;
	justify-content: space-between;
	align-items: center;
	padding: 15px;
	position: fixed;
	top: 0;
	z-index: 9;
	animation: initNav 0.3s ease-in-out 0s;
	animation-fill-mode: forwards;
}

@keyframes initNav {
	from {
		padding-top: 5px;
	}
	to {
		padding-top: 20px;
	}
}
.navigation-bar {
	width: 100%;
	height: 75px;
	background-color: #efefef;
	border-radius: 50px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 0 0 0 15px;
	font-size: 16px;
	font-weight: 500;
}
.mnavigation .navigation-bar {
	box-shadow: 0 0.3rem 0.3rem rgba(0, 0, 0, 0.1);
}
.navigation-logo {
	margin-right: 75px;
	text-decoration: none;
}
.navigation-logo img {
	height: 55px;
}
.navigation-links .navigation-link {
	font-size: 16px;
	font-weight: 500;
	margin: 0 25px;
	color: #212121;
	text-decoration: none;
}
.navigation-links .navigation-link-contact {
	color: #26285b;
}

.navigation-actions {
	display: flex;
	align-items: center;
	justify-content: flex-end;
}

.navigation-lang {
	display: flex;
	align-items: center;
	justify-content: center;
	color: #26285b;
	cursor: pointer;
	user-select: none;
	position: relative;
}
.navigation-lang i {
	margin-left: 5px;
}

.navigation-lang-block {
	display: flex;
	align-items: center;
}

.offcanvas-body .navigation-lang-dropdown a {
	font-weight: bold;
}

.navigation-lang-dropdown {
	position: absolute;
	top: 25px;
	left: -60px;
	background-color: #fff;
	border-radius: 25px;
	box-shadow: 0 1rem 3rem rgba(0, 0, 0, 0.175);
	display: none;
	flex-direction: column;
	padding: 8px 8px 8px 2px;
}
.navigation-lang-dropdown a {
	display: flex;
	align-items: center;
	justify-content: flex-start;
	padding: 5px 15px;
	color: #212121;
	text-decoration: none;
	font-size: 15px;
}
.navigation-lang-dropdown a img {
	width: 20px;
	margin-right: 5px;
}
.navigation-consultation-block {
	width: 300px;
	height: 75px;
	overflow: hidden;
	margin-left: 25px;
	border-top-right-radius: 50px;
	border-bottom-right-radius: 50px;
	display: flex;
	align-items: center;
	justify-content: center;
}
.navigation-consultation {
	background-color: #272c63;
	width: 300px;
	height: 100px;
	color: #fff;
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	user-select: none;
	text-transform: uppercase;
}

.navigation-consultation:hover {
	transition: 0.3s;
	background-color: #454da4;
}

/*
** Scrolled Navigation
*/
.snavigation {
	animation: scrolledHeight 0.5s ease-in-out 0s;
	animation-fill-mode: forwards;
}
.snavigation .navigation-bar {
	box-shadow: 0 0.3rem 1rem rgba(0, 0, 0, 0.1);
}
@keyframes scrolledHeight {
	from {
		padding-top: 20px;
	}
	to {
		padding-top: 5px;
	}
}

/*
** Consultation modal
*/
#consultationModal .modal-content {
	border-radius: 50px;
	position: relative;
}
#consultationModal .close-modal {
	position: absolute;
	top: -10px;
	right: -10px;
	width: 50px;
	height: 50px;
	background-color: #4b4b4b;
	color: #fff;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 35px;
	cursor: pointer;
	user-select: none;
}
#consultationModal .modal-body {
	padding: 35px 50px 45px 50px;
}
#consultationModal input {
	border-radius: 50px;
	margin-bottom: 15px;
	padding-left: 20px;
}

/*
** Main
*/
.main {
	margin-top: 125px;
	height: calc(100vh - 125px);
	padding: 0 30px;
}
.main-vertical-cards {
	height: calc(100vh - 125px);
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	justify-content: space-between;
}
.main-desc {
	width: 100%;
	height: 270px;
	position: relative;
}

.main-desc p {
	margin-bottom: 0;
}

.main-desc:before {
	content: "";
	position: absolute;
	top: 0;
	left: 100px;
	width: 100%;
	height: 350px;
	background-color: #efefef;
	z-index: -2;
}
.main-desc h4 {
	color: #26285b;
}
.main-brand {
	margin-top: 25px;
	flex-grow: 1;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	justify-content: space-between;
	position: relative;
}
.main-brand:before {
	content: "";
	position: absolute;
	top: -25px;
	right: -25px;
	width: 100%;
	height: 350px;
	background-color: #fff;
	border-top-right-radius: 50px;
	z-index: -1;
}
.main-brand img {
	width: 40%;
	max-width: 100%;
	animation-name: spin;
	animation-duration: 10000ms;
	animation-iteration-count: infinite;
	animation-timing-function: linear;
}
@keyframes spin {
	from {
		transform: rotate(0deg);
	}
	to {
		transform: rotate(360deg);
	}
}
.main-brand h1 {
	font-size: 2vw;
	font-weight: 300;
	margin-bottom: 0;
	line-height: 1;
}
.main-brand button {
	border-radius: 50px;
	width: 100%;
}
.main-banner {
	height: calc(100vh - 125px);
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	align-items: flex-start;
}
.main-banner h1 {
	color: #26285b;
	font-size: 72px;
	line-height: 1;
	margin-bottom: 0;
}
.main-banner h5 {
	padding-left: 7px;
	font-weight: 300;
	margin-bottom: 0;
}
.main-banner img {
	width: 100%;
	height: calc(72vh - 125px);
	object-fit: cover;
	border-radius: 50px;
	image-rendering: crisp-edges;
}

/*
** Consultation
*/
.consultation {
	padding: 50px 30px 0 30px;
}
.consult-img {
	width: 100%;
	height: 600px;
	object-fit: cover;
	border-radius: 50px;
}
.consult-desc {
	width: 100%;
	height: 600px;
	display: flex;
	flex-direction: column;
	justify-content: space-evenly;
	align-items: flex-start;
}
.consult-desc a {
	padding: 10px 50px;
}
.consult-desc-years {
	font-size: 52px;
	color: #26285b;
	font-weight: 700;
}
.consult-desc-title {
	line-height: 1;
	font-size: 24px;
}
.consult-desc-subtitle {
	font-weight: 300;
}

/*
** Services
*/
.services {
	padding: 50px 30px 0 30px;
}
.services .tbs-card {
	padding-bottom: 0;
}
.services-title h1 {
	color: #26285b;
	font-size: 82px;
	margin-bottom: 27px;
}
.services-title a {
	width: 50%;
	text-align: center;
	padding: 15px 10px;
}
.services .tbs-wcard {
	height: 280px;
	margin-bottom: 30px;
}
.services .tbs-wcard {
	height: 280px;
}
.service-title {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	margin-bottom: 50px;
}
.service-title h2 {
	color: #26285b;
	display: flex;
	flex-grow: 1;
}
.service-title .service-title-icon {
	width: 70px;
}
.service-title .service-title-icon-circle {
	width: 70px;
	height: 70px;
	background-color: #efefef;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 32px;
}
.service-title .service-title-icon-circle i {
	transform: rotate(45deg);
}
.tbs-wcard-services .service-title-icon-circle {
	background-color: #26285b;
	color: white;
	transition: 0.3s;
}

/*
** Mobile Services
*/
.mobile-services {
	display: none;
}
.mobile-service-item {
	width: 100%;
	background-color: #ffffff;
	border-radius: 50px;
	margin-bottom: 30px;
}
.mobile-service-item-btn {
	width: 100%;
	height: 100px;
	font-size: 24px;
	color: #272c63;
	background-color: #ffffff;
	padding: 0 35px;
	font-weight: 500;
	border-radius: 50px;
	display: flex;
	align-items: center;
	justify-content: space-between;
}
.service-collapse {
	padding: 0 35px 35px 35px;
	font-size: 21px;
}

/*
** Services
*/
.desktop-services-tab {
	width: 95%;
	height: 100px;
	background-color: #fff;
	border-radius: 50px;
	font-size: 27px;
	color: #26285b;
	display: flex;
	align-items: center;
	padding: 5px 50px;
	font-weight: 500;
	line-height: 1;
	position: relative;
	margin-bottom: 25px;
	cursor: pointer;
	user-select: none;
}
.desktop-services-tab-active:before {
	content: "";
	position: absolute;
	height: 150px;
	width: 150px;
	top: -87px;
	right: -108px;
	background-image: url(/assets/images/corner.png);
	background-size: 100% 100%;
	background-repeat: no-repeat;
	background-position: center;
	transform: rotate(90deg);
}
.desktop-services-tab-active:after {
	content: "";
	position: absolute;
	height: 150px;
	width: 150px;
	top: 37px;
	right: -108px;
	background-image: url(/assets/images/corner.png);
	background-size: 100% 100%;
	background-repeat: no-repeat;
	background-position: center;
}
#stab1.desktop-services-tab-active:before {
	transform: unset !important;
	content: unset;
	content: "";
	position: absolute;
	height: 38px;
	width: 250px;
	top: 0;
	right: -107px;
	background-color: #fff;
}
#stab6.desktop-services-tab-active:after {
	transform: unset !important;
	content: unset;
	content: "";
	position: absolute;
	height: 45px;
	width: 200px;
	top: 55px;
	right: -107px;
	background-color: #fff;
	z-index: 1;
}

.desktop-services-tab span {
	position: relative;
	z-index: 8;
}

.desktop-services-text {
	width: 100%;
	height: 725px;
	background-color: #fff;
	border-radius: 50px;
	font-size: 18px;
	font-weight: 500;
	padding: 50px;
	position: relative;
	display: none;
}
#text1 {
	display: block;
}
/*
** Why we
*/
.why-we {
	padding: 50px 30px 0 30px;
}
.whywe-desc {
	height: 600px;
	display: flex;
	flex-direction: column;
	justify-content: space-around;
	align-items: flex-start;
	padding: 30px 55px;
}
.whywe-desc button {
	padding: 10px 50px;
}
.whywe-desc-item h4 {
	display: flex;
	align-items: center;
}
.whywe-desc-item h4 img {
	margin-right: 10px;
	width: 35px;
}

/*
** Partners
*/
.partners {
	padding: 50px 30px 0 30px;
}
.partners .tbs-card {
	display: flex;
	justify-content: space-evenly;
	align-items: center;
}

.owl-partners .item {
	display: flex;
	justify-content: center;
}

.owl-partners .item .incolor-partner {
	width: auto;
	max-width: 200px;
	display: block;
}
.owl-partners .item .color-partner {
	width: auto;
	max-width: 200px;
	display: none;
}

.no-js .owl-carousel,
.owl-carousel.owl-loaded {
	display: flex;
}

/*
** Footer desc
*/
.footer-desc {
	padding: 50px 30px 0 30px;
}
.footer-desc .main-brand {
	margin-top: 0;
	height: 400px;
}
.footer-desc .main-brand img {
	width: 30%;
}
.footer-desc-card {
	width: 100%;
	height: 400px;
	border-radius: 50px;
	background-image: url(/assets/images/footer-desc.png);
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	display: flex;
	flex-direction: column;
	justify-content: space-evenly;
	padding: 50px 75px;
	color: white;
	font-size: 18px;
}

/*
** Footer
*/
.footer {
	padding: 50px 30px 0 30px;
}
.tbs-bcard {
	width: 100%;
	height: 75px;
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 5px 35px;
}
.footer-logo {
	width: 30%;
}
.footer-logo img {
	height: 55px;
}
.footer-links {
	width: 30%;
	display: flex;
	justify-content: center;
	align-items: center;
}
.footer-links a {
	font-size: 16px;
	margin: 0 25px;
}
.footer-social {
	width: 30%;
	display: flex;
	align-items: center;
	justify-content: flex-end;
}
.footer-social-link {
	width: 45px;
	height: 45px;
	border-radius: 50%;
	background-color: #3d3d5b;
	font-size: 21px;
	display: flex;
	align-items: center;
	justify-content: center;
	margin-left: 10px;
}

/*
** Copyrights
*/
.copyrights {
	padding: 30px 40px;
	display: flex;
	justify-content: space-between;
	align-items: center;
}
.copyrights p {
	margin-bottom: 0;
}

/* About us page */

.about-us-page {
	margin-top: 125px;
	padding: 0 30px;
}

.tbs-breadcrumb-list {
	display: flex;
	list-style: none;
	align-items: center;
	gap: 5px;
}

.tbs-breadcrumb-item {
	color: #000;
	font-weight: 500;
}

.tbs-breadcrumb-list .active {
	color: #26285b;
	font-weight: 600;
}

.tbs-card-title {
	font-size: 60px;
	color: #26285b;
	font-weight: 500;
}

.tbs-team {
	margin-top: 70px;
	background-color: #efefef;
	padding: 40px;
	border-radius: 50px;
}

.section-title {
	font-size: 27px;
	font-weight: 600;
	color: #000;
}

.tbs-team-card {
	position: relative;
	margin-top: 25px;
	background-color: #fff;
	border-radius: 45px;
	overflow: hidden;
}

.tbs-team-card-header img {
	width: 100%;
	height: 600px;
	object-fit: cover;
}

.tbs-team-card-footer {
	width: 100%;
	background: #fff;
	display: grid;
	place-content: center;
	text-align: center;
	height: 100px;
	position: relative;
	bottom: 0;
	border-bottom-left-radius: 45px;
	border-bottom-right-radius: 45px;
}

.tbs-team-card-name {
	font-weight: 600;
	font-size: 21px;
}

.tbs-team-card-name span {
	text-transform: uppercase;
}

.tbs-team-card-position {
	font-size: 14px;
	line-height: 1;
}

/* Services */

.services-page {
	margin-top: 125px;
	padding: 0 30px;
}

.services-page .row {
	background: #efefef;
	padding: 30px;
	border-radius: 50px;
}

.service-items {
	display: grid;
	gap: 20px;
}

.service-item {
	background: #fff;
	color: #26285b;
	font-size: 22px;
	height: 85px;
	display: grid;
	place-content: center;
	place-items: center;
	font-weight: 400;
	border-radius: 35px;
	text-align: center;
	width: 85%;
}

.service-items-active {
	width: 130%;
}

.services-page-title {
	font-size: 50px;
	font-weight: 600;
	margin-bottom: 20px;
	color: #26285b;
}

.service-text {
	background: #fff;
	border-radius: 50px;
	height: 100%;
	padding: 25px;
}

.service-text-list {
	height: 100%;
	display: grid;
	place-content: space-between;
}

.service-text-item {
	font-size: 19px;
	font-weight: 400;
}

.mobile-service-row {
	display: none;
}

.tab-content {
	padding: 0;
}

.accordion-item {
	border: none;
}

.nav-tabs .nav-item.show .nav-link,
.nav-tabs .nav-link.active {
	position: relative;
	border: none;
	background-color: white;
}

.nav-tabs .nav-link {
	border-top-left-radius: 0;
	border-top-right-radius: 0;
}

.accordion-item {
	border-radius: 20px !important;
}

.nav-tabs {
	--bs-nav-tabs-border-width: none;
	--bs-nav-tabs-border-color: none;
	--bs-nav-tabs-border-radius: none;
	--bs-nav-tabs-link-hover-border-color: none;
	--bs-nav-tabs-link-active-color: none;
	color: #000;
}

.nav-link {
	color: #000;
}

.nav-item .active:before {
	content: "";
	position: absolute;
	height: 100px;
	width: 100px;
	top: -58px;
	right: 24px;
	background-image: url(/assets/images/corner.png);
	background-size: 100% 100%;
	background-repeat: no-repeat;
	background-position: center;
	transform: rotate(90deg);
}
.nav-item .active:after {
	content: "";
	position: absolute;
	height: 100px;
	width: 100px;
	top: 35px;
	right: 24px;
	background-image: url(/assets/images/corner.png);
	background-size: 100% 100%;
	background-repeat: no-repeat;
	background-position: center;
}

#lorem-left-tab:before {
	content: none !important;
}

#servicii-payroll-tab:after {
	content: none !important;
}

.desktop-service-row {
	display: flex;
	flex-wrap: nowrap;
	position: relative;
}

.desktop-service-row .col-md-9 {
	position: absolute;
	right: 0;
}

.desktop-service-row .col-md-3 {
	width: 30%;
}

.service-desktop-tab {
	margin-bottom: 15px !important;
	padding: 20px;
	font-size: 25px;
	font-weight: 600;
	border-radius: 25px !important;
	color: #26285b !important;
}

.tab-pane {
	height: 540px;
}

#sapien-left-article section,
#sapien-left-article ul li,
#sapien-left-article div {
	font-size: 21px;
}

#sapien-left-article {
	height: 100%;
	gap: 20px;
}

.accordion-body {
	padding: 30px 55px;
}

.left-tabs .nav-item {
	cursor: pointer;
	user-select: none;
}

/* Contacts */

.contacts-page {
	margin-top: 125px;
	padding: 0 30px;
}

.contacts {
	background: #efefef;
	padding: 30px;
	border-radius: 50px;
}

.contacts-information {
	display: grid;
	gap: 40px;
}

.contacts-title {
	font-size: 70px;
	color: #26285b;
	font-weight: 600;
}

.contacts-methods {
	display: grid;
	gap: 15px;
}

.contacts-method {
	display: flex;
	align-items: center;
	gap: 15px;
}

.contacts-method div {
	font-size: 25px;
	color: #26285b;
}

#map {
	height: 430px;
	border-radius: 50px;
}

.offcanvas-body .navigation-links {
	display: flex;
	flex-direction: column;
}
.offcanvas-body .navigation-link {
	margin: 0 !important;
	padding: 8px 0;
	border-bottom: 1px solid #ebebeb;
}
.offcanvas-body .navigation-actions {
	display: flex;
	gap: 30px;
	align-items: center;
	margin-top: 25px;
}
.offcanvas-body .navigation-consultation {
	height: 45px;
	border-radius: 50px;
}

.offcanvas-body .navigation-lang-dropdown {
	left: -10px;
}
