/* header */

.top-bar {
	background: var(--black-dark);
	padding: 10px 0;
	display: flex;
	align-items: center;
	transition: all 0.2s cubic-bezier(0.3, 0, 0.5, 1);
}

.top-header {
	background: #fff;
	top: 0;
	z-index: 9999;
	transition: all 0.2s cubic-bezier(0.3, 0, 0.5, 1);
}

.top-bar--phones {
	display: flex;
	padding: 5px 0;
	justify-content: flex-end;
	width: 100%;
	gap: var(--space-s);
}

.top-bar--phones p {
	color: var(--color-white);
	margin: 0;
	font-size: .8em;
}

.top-bar--phones a {
	color: var(--color-white);
}

.top-bar--phones a:hover {
	text-decoration: underline;
}

.top-bar--phones .ico-phone {
	width: 15px;
	height: 15px;
}

@media (max-width:767px) {
	.top-bar--phones p {
		font-size: .7rem;
	}
}


/* main-header */

.flex-header {
	padding: 15px 0;
	display: flex;
	justify-content: space-between;
	align-items: center;
	transition: all 0.2s cubic-bezier(0.3, 0, 0.5, 1);
}

.header--logocti {
	max-width: 270px;
	gap: 25px;
	display: flex;
	transition: all 0.2s cubic-bezier(0.3, 0, 0.5, 1);
}

.header--logocti svg {
	margin: 0;
	padding: 0;
	width: 120px;
	height: 80px;
	transition: all 0.2s cubic-bezier(0.3, 0, 0.5, 1);
	fill: #2275bc;
}

.header--logocti a {
	display: flex;
	width: 100%;
	gap: 15px;
	align-items: center;
	justify-content: flex-start;
}

.header--logocti p {
	width: 180px;
	max-width: 180px;
	height: 40px;
	background-image: url('../../images/slogan-dark.png');
	background-repeat: no-repeat;
	background-size: contain;
	transition: all 0.2s cubic-bezier(0.3, 0, 0.5, 1);
	text-indent: -9999px;
}

.flex-header--cta {
	display: flex;
	gap: calc(var(--space-s) * 1.4);
	align-items: center;
	justify-content: space-between;
}

.flex-header--cta .btn {
	padding: 12px 18px;
	font-size: 14px;
}

.top-header--main-menus {
	display: flex;
	justify-content: space-between;
	align-items: center;
	width: 71%;
}

.main-nav ul {
	display: flex;
	list-style: none;
	gap: 15px;
	margin: 0;
	padding: 0;
}

.fixed .header--logocti p {
	width: 130px;
	height: 30px;
}

.main-nav li {
	position: relative;
	padding: 10px 0;
	display: flex;
}

.main-nav li .sub-nav {
	position: absolute;
	box-shadow: rgba(100, 100, 111, 0.2) 0px 7px 29px 0px;
	width: 240px;
	display: none;
	flex-direction: column;
	gap: var(--space-xs);
	margin: 0;
	background: var(--color-white);
	padding: 20px;
	border-radius: 15px;
	top: 45px;
	transition: all 0.2s cubic-bezier(0.3, 0, 0.5, 1);
	opacity: 0;
	z-index: 9999;
	visibility: hidden;
}

.main-nav .sub-nav li {
	padding: 0;
}

@media (min-width:1081px) {
	.main-nav li:hover .sub-nav {
		display: block;
		opacity: 1;
		visibility: visible;
	}
}

.main-nav li .sub-nav li a {
	font-weight: 400;
}

.main-nav li a {
	color: var(--black-color);
	font-weight: 700;
	padding: 5px;
	font-size: 17px;
}

.main-nav li a:hover {
	color: var(--blue-primary);
}

.main-nav .plus {
	color: var(--blue-primary);
	display: none!important;
}

/* mobile-hamburguer */

.c-hamburger {
	display: none;
	position: relative;
	overflow: hidden;
	margin: 0 10px;
	padding: 0;
	width: 36px;
	height: 36px;
	z-index: 2;
	font-size: 0;
	text-indent: -9999px;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	background: transparent;
	box-shadow: none;
	border-radius: none;
	border: none;
	cursor: pointer;
	-webkit-transition: background 0.3s;
	transition: background 0.3s;
}

.c-hamburger:focus {
	outline: none;
}

.c-hamburger span {
	display: block;
	position: absolute;
	top: 20px;
	left: 0;
	right: 0;
	height: 4px;
	background: var(--blue-primary);
}

.c-hamburger span:before,
.c-hamburger span:after {
	position: absolute;
	display: block;
	left: 0;
	width: 100%;
	height: 4px;
	background-color: var(--blue-primary);
	content: "";
}

.c-hamburger span:before {
	top: -10px;
}

.c-hamburger span:after {
	bottom: -10px;
}

.c-hamburger--htx span {
	-webkit-transition: background 0s 0.3s;
	transition: background 0s 0.3s;
}

.c-hamburger--htx span:before,
.c-hamburger--htx span:after {
	-webkit-transition-duration: 0.3s, 0.3s;
	transition-duration: 0.3s, 0.3s;
	-webkit-transition-delay: 0.3s, 0s;
	transition-delay: 0.3s, 0s;
}

.c-hamburger--htx span:before {
	-webkit-transition-property: top, -webkit-transform;
	transition-property: top, transform;
}

.c-hamburger--htx span:after {
	-webkit-transition-property: bottom, -webkit-transform;
	transition-property: bottom, transform;
}

.c-hamburger--htx.is-active span {
	background: transparent !important;
}

.c-hamburger--htx.is-active span:before,
.c-hamburger--htx.is-active span:after {
	-webkit-transition-delay: 0s, 0.3s;
	transition-delay: 0s, 0.3s;
}

.c-hamburger--htx.is-active span:before {
	top: 0;
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
}

.c-hamburger--htx.is-active span:after {
	bottom: 0;
	-webkit-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	transform: rotate(-45deg);
}


.header-fixed-wb .top-header {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	background: transparent;
}

@media (max-width:1280px) {
	.header--logocti {
		max-width: 200px;
	}

	.top-header--main-menus {
		width: 78%;
	}

	.top-header--main-menus .btn {
		padding: 15px 20px;
	}

}

@media (max-width:1100px) {
	.top-header--main-menus {
		width: 70%;
		justify-content: flex-end;
	}

	.main-nav {
		display: none;
	}

	.c-hamburger {
		display: block;
	}

	.top-header--main-menus {
		flex-direction: column;
		width: 100%;
		max-width: 280px;
		position: fixed;
		background: var(--color-white);
		height: 100vh;
		left: -100%;
		top: 0;
		box-shadow: rgba(100, 100, 111, 0.2) 0px 7px 29px 0px;
		justify-content: flex-start;
		align-items: flex-start;
		padding: 20px;
		transition: all 0.2s cubic-bezier(0.3, 0, 0.5, 1);
		z-index: 99999;
	}

	.menu-visible .top-header--main-menus {
		left: 0;
	}

	.menu-visible .main-nav {
		display: block;
	}

	.main-nav ul {
		flex-direction: column;
		gap: 0px;
	}

	.main-nav li {
		display: block;
	}

	.main-nav ul .sub-nav {
		display: flex;
		flex-direction: column;
		visibility: visible;
		position: inherit;
		opacity: 1;
		top: 10px;
		box-shadow: none;
		margin: 0 0 10px 10px;
		padding: 0;
	}

	.header--logocti {
		max-width: 100%;
	}

	.header--logocti a {
		width: 250px;
	}

	.header--logocti svg {
		width: 70px;
		height: 80px;
	}

	.flex-header--cta {
		flex-direction: column;
		width: 100%;
		align-items: flex-start;
		justify-content: flex-start;
		margin: 30px 0 0 0;
	}

	.flex-header--cta a {
		min-width: 200px;
	}
}

@media(max-width:800px) {
	.flex-header {
		padding: 5px 0;
	}
}


.top-header.fixed {
	position: fixed;
	width: 100%;
	left: 0;
	top: 0;
	z-index: 999999;
	background-color: var(--color-white) !important;
	box-shadow: rgba(100, 100, 111, 0.2) 0px 7px 29px 0px;
}


.menu-white .header--logocti svg {
	fill: #fff;
}

.menu-white .header--logocti p {
background-image: url(../../images/slogan-white.png);
}

.menu-white .fixed .header--logocti p {
	background-image: url(../../images/slogan-dark.png);
}

.menu-white .fixed .header--logocti svg {
	fill: #2275bc;
}


@media (min-width:980px) {

	.top-header.fixed .flex-header {
		padding: 5px 0;
	}

	.top-header.fixed .header--logocti svg {
		width: 80px;
		height: 50px;
	}

	.top-header.fixed .top-bar {
		opacity: 0;
		height: 0px;
		padding: 0;
		overflow: hidden;
	}

	.menu-white .main-nav>ul>li>a {
		color: var(--color-white);
	}

	.menu-white .header--logocti p,
	.menu-white .main-nav .plus {
		color: var(--color-white);
	}

	.menu-white .fixed .main-nav>ul>li>a,
	.menu-white .fixed .main-nav .plus,
	.menu-white .fixed .header--logocti p {
		color: var(--black-color);
	}
}

@media (max-width: 1100px) {

	.menu-white .c-hamburger span {
		background: var(--color-white);
	}

	.menu-white .c-hamburger span:before,
	.menu-white .c-hamburger span:after {
		background: var(--color-white);
	}

	.menu-white .fixed .c-hamburger span {
		background: var(--black-color);
	}

	.menu-white .fixed .c-hamburger span:before,
	.menu-white .fixed .c-hamburger span:after {
		background: var(--black-color);
	}

	.header--logocti p {
		width: 130px;
		height: 29px!important;
	}
	.header--logocti p {
	}

}
