/*
==================
Author       : Kreative Codes
Template Name: Bizflex - Business, Finance, Insurance and Corporate HTML template
Version      : 1.1
~~~~~~~~~
Copyright (c) 2023 - Kreative Codes - https://themeforest.net/user/kreativecodes
~~~~~~~~~
==================
*/

/*
==================
Table of Content
==================

[01] Root
[02] HTML and Elements
[03] Preloader
[04] Navigation
[05] Large header
[06] About section
[07] Services section
[08] Callback section
[09] Portfolio section
[10] Stats section
[11] Plans section
[12] Testimonials section
[13] Team section
[14] Blog section
[15] Contact section
[16] Footer
[17] Responsive CSS

*/

/*
=========
[01] Root
=========
*/

:root {
	--kcprimary: #12837a;
	--kcsecondary: #2b212c;
	--kcfooter: #2b212c;
	--kclight: #ffffff;
	--kcdark: #333333;
	--kcgreen: #00d664;
	--kcred: #ff3366;
}

/*
=========
[02] HTML and Elements
=========
*/

html {
	scroll-behavior: smooth;
}

body {
	font-size: 16px;
	font-weight: 400;
	line-height: 20px;
	letter-spacing: 1px;
	height: 100%;
	font-family: 'Poppins', sans-serif;
	overflow-x: hidden;
	position: relative;
}

html,
body {
	height: 100%;
}

.h1,
.h2,
.h3,
.h4,
.h5,
.h6,
h1,
h2,
h3,
h4,
h5,
h6 {
	font-weight: 700;
}

a {
	color: var(--kcprimary);
	text-decoration: none;
	-webkit-transition: all 0.2s;
	transition: all 0.2s;
}

a:hover {
	color: var(--kcsecondary);
	text-decoration: none;
}

a:focus {
	outline: none;
	text-decoration: none;
}

button:focus {
	outline: 0;
}

img {
	max-width: 100%;
	height: auto;
}

p {
	font-size: 16px;
	line-height: 20px;
	letter-spacing: 1px;
	font-weight: 400;
	color: #333333;
}

.kcprimary {
	color: var(--kcprimary);
}

.kcsecondary {
	color: var(--kcsecondary);
}

.kclight {
	color: var(--kclight);
}

.kcdark {
	color: var(--kcdark);
}

.kcgreen {
	color: var(--kcgreen);
}

.kcred {
	color: var(--kcred);
}

ul,
li {
	margin: 0;
	padding: 0;
}

fieldset {
	border: 0 none;
	margin: 0 auto;
	padding: 0;
}

.empty {
	display: block;
	height: 30px;
	clear: both;
}

section {
	padding: 90px 0;
}

.section-title {
	margin-bottom: 30px;
}

.section-title h2 {
	margin: 0;
	position: relative;
}

.section-title h2:before {
	width: 28px;
	height: 5px;
	display: block;
	content: "";
	position: absolute;
	bottom: -2px;
	left: 50%;
	margin-left: -14px;
	background-color: var(--kcprimary);
}

.section-title h2:after {
	width: 100px;
	height: 1px;
	display: block;
	content: "";
	position: relative;
	margin-top: 15px;
	left: 50%;
	margin-left: -50px;
	background-color: var(--kcprimary);
}

.kc-btn {
	align-items: center;
	background: var(--kcprimary);
	border: 0;
	border: 2px solid var(--kcprimary);
	border-radius: 3px;
	cursor: pointer;
	display: inline-flex;
	font-weight: 700;
	justify-content: center;
	outline: none;
	overflow: hidden;
	padding: 10px 15px;
	position: relative;
	text-decoration: none;
	text-transform: uppercase;
	transition: color 0.4s ease;
}

.kc-btn:hover {
	border: 2px solid var(--kcprimary);
}

.kc-btn span {
	color: #ffffff;
	z-index: 1;
}

.kc-btn:after {
	background: var(--kcsecondary);
	box-sizing: border-box;
	content: "";
	height: 0%;
	left: 50%;
	position: absolute;
	top: 50%;
	transform: translateX(-50%) translateY(-50%) rotate(-25deg);
	transition: all 0.35s ease 0s;
	webkit-transform: translateX(-50%) translateY(-50%) rotate(-25deg);
	width: 150%;
}

.kc-btn:hover:after {
	border: 0px;
	height: 450%;
	transition: all 1s ease 0s;
}

.kc-btn-secondary {
	background: var(--kcsecondary);
	border: 2px solid var(--kcsecondary);
}

.kc-btn-secondary:hover {
	border: 2px solid var(--kcsecondary);
}

.kc-btn-secondary:after {
	background: var(--kcprimary);
}

.res-text-end {
	text-align: right;
}

.border-radius-3 {
	border-radius: 3px;
}

.btt {
	background: var(--kcprimary);
	border-radius: 50%;
	display: block;
	position: fixed;
	bottom: 20px;
	right: 10px;
	height: 64px;
	width: 64px;
	padding: 12px 14px;
	z-index: 9998;
	color: #ffffff !important;
	-webkit-transition: opacity .4s ease-in-out;
	transition: opacity .4s ease-in-out;
	animation: zoom-in-zoom-out 2s ease-out infinite;
}

@keyframes zoom-in-zoom-out {
    0%,to {
        transform: scale(1,1)
    }

    50% {
        transform: scale(1.1,1.1)
    }
}

.btt:hover {
	color: #ffffff;
	opacity: 1;
}

.no-btt {
	display: none;
}

.btt span {
    font-size: 10px;
    text-transform: uppercase;
    width: 64px;
    display: block;
    margin-left: -14px;
    color: var(--kcprimary);
    background: #ffffff;
    border-radius: 3px;
    text-align: center;
    font-weight: bold;
    margin-top: 5px;
}


/*
=========
[03] Preloader
=========
*/

.preload * {
	-moz-transition:none!important;
	-ms-transition:none!important;
	-o-transition:none!important;
	-webkit-transition:none!important;
}

#kc-loading {
	background:var(--kcsecondary);
	height:100%;
	left:0;
	position:fixed;
	text-align:center;
	top:0;
	width:100%;
	z-index:9999;
}

.kc-table-cell {
	-webkit-transform:translate(-50%,-50%);
	left:50%;
	position:relative;
	top:50%;
	transform:translate(-50%,-50%);
}

.spinner {
	-webkit-animation:sk-scaleout 1s infinite ease-in-out;
	animation:sk-scaleout 1s infinite ease-in-out;
	background-color:var(--kcprimary);
	border-radius:100%;
	height:40px;
	margin:auto;
	width:40px;
}

@-webkit-keyframes sk-scaleout {
	0% {
		-webkit-transform: scale(0);
	}
	100% {
		-webkit-transform: scale(1.0);
		opacity: 0;
	}
}

@keyframes sk-scaleout {
	0% { 
		-webkit-transform: scale(0);
		transform: scale(0);
	}
	100% {
		-webkit-transform: scale(1.0);
		transform: scale(1.0);
		opacity: 0;
	}
}


/*
=========
[04] Navigation
=========
*/

.navbar {
	padding: 0;
}

.navscroll {
	box-shadow: 0px 0px 3px 0px rgba(0, 0, 0, 0.75);
	moz-box-shadow: 0px 3px 5px 0px rgba(0, 0, 0, 0.75);
	webkit-box-shadow: 0px 3px 5px 0px rgba(0, 0, 0, 0.75);
}

.navbarbg {
	background: var(--kcsecondary);
}

.navbar-toggler:focus {
	box-shadow: none;
}

.navbar-brand {
	color: #fff;
	font-weight: 700;
}

.navbar-brand:hover {
	color: var(--kcprimary);
}

.nav-link {
	color: #ffffff;
	font-size: 14px;
	font-weight: 500;
	letter-spacing: 1px;
	text-transform: capitalize;
}

.nav-item:last-child a {
	padding-right: 0 !important;
}

.nav-link:hover {
	color: var(--kcprimary);
}

/*
=========
[05] Large header
=========
*/

.large-header {
	align-items: center;
	background: #333333;
	background-position: top center;
	background-size: cover;
	display: flex;
	height: 100%;
	justify-content: center;
	max-width: 100%;
	overflow: hidden;
	padding: 0;
	position: relative;
	width: 100vw;
	z-index: 1;
	height: calc(100vh - 70px);
    margin-top: 70px;
}

.large-header .cover {
	background-color: var(--kclight);
	border-radius: 3px;
	color: var(--kcdark);
	padding: 60px;
}

.large-header .cover p {
	color: var(--kcdark);
	margin-top: 0;
	padding-bottom: 0;
}

.large-header .button {
	border: 1px solid var(--kcdark);
	color: #ffffff;
	font-weight: 700;
	padding: 10px 20px;
}

.large-h-btn {
    width: 100%;
    font-size: 20px;
    display: block;
    background: var(--kcprimary);
    text-align: center;
    color: #ffffff;
    font-weight: 700;
    padding: 20px;
    border-radius: 3px;
	text-transform: uppercase;
}

.large-h-btn:hover {
	color: #ffffff;
	box-shadow: 3px 3px 3px #555;
	
}

.owl-hero .owl-nav {
    position: absolute;
    bottom: 10px;
    left: 10px;
    color: #fff;
}

#home .owl-hero .owl-nav button {
    background: var(--kcprimary);
    border-radius: 50%;
    color: #fff;
    height: 40px;
    margin: 0 10px 0 0;
    width: 40px;
}

#home .owl-hero .owl-nav button:hover {
    background: var(--kcsecondary);
}

.large-header-strip {
	background-color: var(--kcprimary);
}

.float-y {
  -webkit-animation-name: float-y;
  animation-name: float-y;
  -webkit-animation-duration: 2s;
  animation-duration: 2s;
  -webkit-animation-iteration-count: infinite;
  animation-iteration-count: infinite;
  -webkit-animation-timing-function: linear;
  animation-timing-function: linear;
}

@keyframes float-y {
  0% {
    transform: translateY(-20px);
  }

  50% {
    transform: translateY(-10px);
  }

  100% {
    transform: translateY(-20px);
  }
}

/*
=========
[06] About section
=========
*/

#about {
	background-color:var(--kcsecondary);
}

.about-image {
	margin-top: 60px;
	padding-right: 60px;
	position: relative;
	z-index: 1;
}

.about-image:after {
	border: 2px solid var(--kcprimary);
	border-radius: 3px;
	bottom: 60px;
	content: '';
	left: 60px;
	position: absolute;
	right: 0;
	top: -60px;
	z-index: 1;
}

.about-image img {
    z-index: 2;
    position: relative;
}

/*
=========
[07] Services section
=========
*/

.single-service {
	background-color: var(--kcsecondary);
	border-radius: 3px;
	box-shadow: 0 0 10px 0 rgba(0,0,0,.1);
	transition: margin-top ease 0.5s;
}

.single-service:hover {
	margin-top: -10px;
}

.single-service .part-1 {
	border-bottom: 2px solid #1d1e23;
	padding: 40px 40px 25px;
}

.single-service .part-1 i {
	color: var(--kcprimary);
	font-size: 50px;
	margin-bottom: 25px;
}

.single-service .part-1 .title {
	font-size: 17px;
	font-weight: 700;
	letter-spacing: 0.02em;
	line-height: 1.8em;
}

.single-service .part-2 {
	padding: 30px 40px 40px;
}

.single-service .part-2 .description {
	color: var(--kclight);
	font-size: 14px;
	line-height: 1.8em;
	margin-bottom: 22px;
}

.single-service .part-2 a {
    color: #fff;
    background: var(--kcprimary);
    padding: 10px;
    border-radius: 3px;
    font-weight: 700;
}

.single-service .part-2 a .fas {
    margin-right: 5px;
}

/*
=========
[08] Callback section
=========
*/

#callback {
	background-color: var(--kcsecondary);
	color: var(--kclight);
}

#callback h2 {
	margin-top: 0;
}

#callback p {
	color: #ffffff;
	margin: 20px 0 0px;
	padding-bottom: 0;
}

#callbackform {
    position: relative;
}

#callbackform input {
	background: #555555;
	border: none;
	border-radius: 0;
	color: #ffffff;
	font-size: 14px;
	height: 46px;
	letter-spacing: 1px;
	margin-bottom: 0;
	outline: none;
	text-indent: 10px;
	width: 100%;
}

#callbackform input::-moz-placeholder {
	color: var(--kclight);
}

#callbackform input::-moz-placeholder {
	color: var(--kclight);
}

#callbackform input:-moz-placeholder {
	color: var(--kclight);
}

#callbackform input:-ms-input-placeholder {
	color: var(--kclight);
}

#callbackform input::-webkit-input-placeholder {
	color: var(--kclight);
}

#callbackform #email {
	margin-bottom: 0;
}

#responsecall,
#responsemessagecall {
	bottom: -30px;
	position: absolute;
}

/*
=========
[09] Portfolio section
=========
*/

.portfolio {
	background: var(--kcsecondary);
	cursor: default;
	float: left;
	height: 100%;
	overflow: hidden;
	position: relative;
	width: 100%;
}

.portfolio .overlay {
	bottom: 20px;
	left: 0;
	overflow: hidden;
	padding: 0 30px;
	position: absolute;
	width: 100%;
}

.portfolio a, .portfolio .portfolio-desc {
	-webkit-transform: translate3d(100%,0,0);
	-webkit-transition: opacity 0.35s, -webkit-transform 0.35s;
	color: #FFF;
	filter: alpha(opacity=0);
	opacity: 0;
	transform: translate3d(100%,0,0);
	transition: opacity 0.35s, transform 0.35s;
}

.portfolio h3 {
	color: #fff;
	font-size: 1.5rem;
	overflow: hidden;
	padding: 0.5em 0;
	position: relative;
	text-transform: uppercase;
}

.portfolio h3:after {
	-webkit-transform: translate3d(-100%,0,0);
	-webkit-transition: -webkit-transform 0.35s;
	background: #fff;
	bottom: 0;
	content: '';
	height: 2px;
	left: 0;
	position: absolute;
	transform: translate3d(-100%,0,0);
	transition: transform 0.35s;
	width: 100%;
}

.portfolio:hover a, .portfolio:hover .portfolio-desc {
	-webkit-transform: translate3d(0,0,0);
	filter: alpha(opacity=100);
	opacity: 1;
	transform: translate3d(0,0,0);
}

.portfolio:hover h3:after {
	-webkit-transform: translate3d(0,0,0);
	transform: translate3d(0,0,0);
}

.portfolio:hover img {
	-webkit-transform: translate3d(0,0,0);
	filter: alpha(opacity=40);
	opacity: 0.4;
	transform: translate3d(0,0,0);
}

.portfolio img {
	display: block;
	position: relative;
	-webkit-transition: all 0.35s;
	transition: all 0.35s;
}

/*
=========
[10] Stats section
=========
*/

#stats {
	background-color: var(--kcsecondary);
	background-attachment: fixed;
	background-size: cover;
	position: relative;
	z-index: 1;
}

#stats .counter {
	color: var(--kcprimary);
}

#stats .section-title {
	margin: 0;
}

#stats h2 {
	color: var(--kclight);
}

.kc-stats-stat {
	cursor: default;
	text-align: center;
}

.kc-stats-stat h4,
.stats-icon {
	color: var(--kclight);
	margin-bottom: 0;
	text-transform: uppercase;
}

.kc-stats-stat h4 {
	font-size: 16px;
	font-weight: 400;
}

.stats-col {
	margin: 30px 0 0 0;
}

/*
=========
[11] Plans section
=========
*/

#plans {
	position: relative;
}

#plans::before {
	background-color: var(--kcprimary);
	bottom: 0;
	content: "";
	left: 0;
	opacity: 0.05;
	position: absolute;
	right: 0;
	top: 0;
	z-index: -1;
}

.plan-box {
	box-shadow: 0 20px 70px rgba(38, 42, 76, 5%);
	background: #fff;
	border-radius: 3px;
	padding: 30px 0;
}

.plan-box-item {
	margin: 15px 0;
	padding: 0 30px;
}

.plan-box-item.buy-now {
	border-top: 1px solid #f1f1f1;
	margin-bottom: 0;
	margin-top: 30px;
	padding-top: 30px;
}

.plan-box-item.description {
	padding: 0 30px;
	margin: 30px 0;
	padding-bottom: 30px;
	border-bottom: 1px solid #f1f1f1;
	color: #aaaaaa;
}

.plan-box-item.name {
	margin-bottom: 30px;
	margin-top: 0;
}

.plan-box-item.name h4 {
	font-weight: 400;
	font-size: 30px;
	color: var(--kcprimary);
}

.plan-box-item.pricing {
	font-size: 30px;
	line-height: 1;
	margin-bottom: 30px;
	margin-top: 0;
}

.plan-box.highlighted {
	background-color: var(--kcsecondary);
	color: #fff;
}

.billing-switch {
	margin-bottom: 40px;
	position: relative;
}

.monthly-check, .yearly-check {
	font-weight: 500;
	font-size: 17px;
	position: absolute;
	line-height: 34px;
	color: var(--kcdark);
}

.monthly-check {
	right: calc(50% + 45px);
	top: 0;
}

.yearly-check {
	left: calc(50% + 45px);
	top: 0;
}

.switch {
	position: relative;
	display: inline-block;
	width: 60px;
	height: 34px;
}

.switch input {
	opacity: 0;
	width: 0;
	height: 0;
}

.slider {
	position: absolute;
	cursor: pointer;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background-color: var(--kcprimary);
	-webkit-transition: .4s;
	transition: .4s;
}

.slider:before {
	position: absolute;
	content: "";
	height: 26px;
	width: 26px;
	left: 4px;
	bottom: 4px;
	background-color: var(--kclight);
	-webkit-transition: .4s;
	transition: .4s;
}

input:checked + .slider {
	background-color: var(--kcprimary);
}

input:focus + .slider {
	box-shadow: 0 0 1px var(--kcprimary);
}

input:checked + .slider:before {
	-webkit-transform: translateX(26px);
	-ms-transform: translateX(26px);
	transform: translateX(26px);
}

.slider.round {
	border-radius: 34px;
}

.slider.round:before {
	border-radius: 50%;
}

.stats-icon,
.kc-stats-stat h4 {
	color: #ffffff;
	margin-bottom: 0;
	text-transform: uppercase;
}

.yearly-price {
	display: none;
}

/*
=========
[12] Testimonials section
=========
*/

#testimonials {
	background: var(--kcsecondary);
}

.owl-carousel .owl-stage {
	display: flex;
}

.testimonials-text {
	background: var(--kcprimary);
	border-radius: 3px;
	color: #fff;
	height: 100%;
	padding: 40px;
	position: relative;
}

.ghost {
	font-size: 80px;
	opacity: 0.3;
	position: absolute;
	right: 10px;
	top: -5px;
}

.testimonials-text h4 {
	font-size: 16px;
	margin-top: 20px;
}

.testimonial-image {
	border-radius: 60px;
	max-width: 60px;
	height: auto;
}

#testimonials .owl-nav {
	text-align: left;
}

#testimonials .owl-nav button {
	background: var(--kcprimary);
	border-radius: 50%;
	color: #fff;
	height: 40px;
	margin: 0 10px 0 0;
	width: 40px;
}

#testimonials .owl-nav button:hover {
	background: #ffffff;
	color: var(--kcprimary);
}

/*
=========
[13] Team section
=========
*/

#team {
    position: relative;
}

#team::before {
    background-color: var(--kcprimary);
    bottom: 0;
    content: "";
    left: 0;
    opacity: 0.05;
    position: absolute;
    right: 0;
    top: 0;
    z-index: -1;
}

.team-member {
    background: #fff;
    border-radius: 3px;
    box-shadow: 0 20px 70px rgba(38,42,76,5%);
    padding: 30px 0;
    text-align: center;
}

.team-member h3 {
    font-size: 18px;
    font-weight: 700;
}

.team-member h4 {
    font-size: 18px;
    font-weight: 500;
}

.team-member:hover {
    background: linear-gradient(120deg, var(--kcsecondary) 0%, var(--kcprimary) 100%);
    color: #ffffff;
}

.team-member img {
    border-radius: 50%;
    height: auto;
    max-width: 90px;
}

.social-icons a i {
    background: var(--kcprimary);
    border-radius: 50%;
    color: #fff;
    padding: 8px 0;
    text-align: center;
    width: 30px;
}

.social-icons a:hover i {
    background: var(--kcsecondary);
}

/*
=========
[14] Blog section
=========
*/

.blog-post h3 {
	color: var(--kcsecondary);
	font-size: 18px;
	font-weight: 500;
}

.blog-post h3:hover {
	color: var(--kcprimary);
}

.blog-post .post-meta {
	color: var(--kcprimary);
    font-weight: 500;
}

.blog-post .post-meta a{
    color: var(--kcsecondary);
}

/*
=========
[15] Contact section
=========
*/

#contact {
	background-color: var(--kcsecondary);
	color: var(--kclight);
}

.contact-area-icon {
	font-size: 36px;
}

.contact-area-title {
	font-weight: 700;
}

#contactform {
	position: relative;
}

#contactform input::placeholder,
#contactform textarea::placeholder {
	color: #ffffff;
}

#contactform input {
	width: 100%;
	outline: none;
	height: 46px;
	text-indent: 10px;
	border: none;
	font-size: 14px;
	letter-spacing: 1px;
	color: #ffffff;
	background: #555555;
	border-radius: 0;
	margin-bottom: 20px;
}

#contactform textarea {
	width: 100%;
	outline: none;
	border: none;
	font-size: 14px;
	letter-spacing: 1px;
	color: #ffffff;
	background: #555555;
	border-radius: 0;
	margin-bottom: 20px;
	min-height: 150px;
	padding: 10px;
}

#responsemessagecontact,
#responsecontact {
	position: absolute;
	bottom: -30px;
}

.weekday {
	padding: 20px 0;
}

.weekday-text {
	font-weight: 700;
}

.active {
	background-color: var(--kcprimary);
	border-radius: 3px;
}

/*
=========
[16] Footer
=========
*/

#footer {
	background-color: var(--kcfooter);
	color: var(--kclight);
	padding: 90px 0;
}

#footer a {
	color: var(--kcprimary);
}

#footer a:hover {
	text-decoration: underline;
}

#footer p {
	color: var(--kclight);
}

#footer li {
	list-style-type: none;
	margin-bottom: 10px;
}

#footer li:last-child {
	margin-bottom: 0;
}

.footer-brand {
	display: block;
	font-size: 20px;
	font-weight: 700;
}

.widget-title {
	color: var(--kcprimary);
	font-size: 20px;
	font-weight: 700;
}

/*
=========
[17] Responsive CSS
=========
*/

@media only screen and (max-width: 991px) {
	.weekday {
		margin: 0 12px;
	}
}

@media only screen and (max-width: 768px) {
	.res-text-end {
		text-align: left;
	}
	.resmb-10 {
		margin-bottom: 10px !important;
	}
	.resmb-20 {
		margin-bottom: 20px !important;
	}
	.resmb-30 {
		margin-bottom: 30px !important;
	}
	.resmb-40 {
		margin-bottom: 40px !important;
	}
}

.client-logo {
    max-width: 150px;
    margin: auto;
}

.new-page-sec {
    padding-top: 100px;
}
}