/*--------------- Start TT - CMS banner --------------*/
#ttcmsbanner {
	margin:0 0 80px;
}
#ttcmsbanner .ttbanner-img {
    padding: 0 15px;
    float: left;
    width: 100%;
}
#ttcmsbanner .ttbanner > a::before {
	border: 8px solid rgba(255,255,255,.1);
    bottom: 0;
    content: "";
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
    -webkit-transition: all .6s ease-in-out;
    -moz-transition: all .6s ease-in-out;
    -ms-transition: all .6s ease-in-out;
    -o-transition: all .6s ease-in-out;
    transition: all .6s ease-in-out;
    z-index: 1;
}
#ttcmsbanner .ttbanner:hover > a::before {
	border: 8px solid rgba(255,255,255,.3);
}
#ttcmsbanner .ttbanner a {
	display: inline-block;
	overflow: hidden;
	position: relative;
	vertical-align: top;
}
#ttcmsbanner .ttbanner > a img {
    -webkit-transform: scale(1);
    -moz-transform: scale(1);
    -ms-transform: scale(1);
    -o-transform: scale(1);
    transform: scale(1);
    -webkit-transition: all .4s ease-in-out;
    -moz-transition: all .4s ease-in-out;
    -ms-transition: all .4s ease-in-out;
    -o-transition: all .4s ease-in-out;
    transition: all .4s ease-in-out;
}
#ttcmsbanner .ttbanner:hover >a img {
    -webkit-transform: scale(1.05);
    -moz-transform: scale(1.05);
    -ms-transform: scale(1.05);
    -o-transform: scale(1.05);
    transform: scale(1.05);
}
#ttcmsbanner .ttcms-banner .ttcmsbanner .ttbanner-content .ttcms-subtitle::after {
    content: '';
    position: absolute;
    top: auto;
    bottom: 0;
    left: 0;
    right: 0;
    margin: 0 auto;
    width: 30px;
    height: 2px;
}
#ttcmsbanner .ttbanner {
	position: relative;
}
#ttcmsbanner .ttbanner-text {
	position: absolute;
	top: 0;
	bottom:0;
	right: auto;
	z-index: 1;
    left: 40px;
    margin: auto 0;
    text-align: center;
    display: flex;
    align-items: center;
}
#ttcmsbanner .ttbanner-text h2 {
	letter-spacing: 2px;
	color: #ddd;
	margin: 0 0 30px;
	font: 400 36px/40px var(--primary-font);
}
#ttcmsbanner .ttbanner-text h4 {
	width: auto;
	float: none;
	display: inline-block;
	vertical-align:top;
	color: #ddd;
	font: 400 38px/40px var(--ternary-font);
	padding: 0 0 20px;
	margin: 0 0 10px;
	position:relative;
}
#ttcmsbanner .ttbanner-text h4::after {
    content: '';
    position: absolute;
    top: auto;
    bottom: 0;
    left: 0;
    right: 0;
    margin: 0 auto;
    width: 30px;
    height: 2px;
	background:var(--secondary-bg-color);
}
#ttcmsbanner .ttbanner-text .btn {
    padding: 10px 22px;
    border: none;
    background: var(--secondary-bg-color);
    color: var(--secondary-text-color);
	font: 600 14px/20px var(--secondary-font);
}
#ttcmsbanner .ttbanner-text .btn:focus, 
#ttcmsbanner .ttbanner-text .btn:active, 
#ttcmsbanner .ttbanner-text .btn:hover {
    color: #111;
}
#ttcmsbanner .ttbanner-text .btn::after {
	content: '';
    background: #fff;
    height: 100%;
    width: 0;
    position: absolute;
    transition: .3s cubic-bezier(.785, .135, .15, .86);
    -webkit-transition: .3s cubic-bezier(.785, .135, .15, .86);
    -moz-transition: .3s cubic-bezier(.785, .135, .15, .86);
    -o-transition: .3s cubic-bezier(.785, .135, .15, .86);
    -ms-transition: .3s cubic-bezier(.785, .135, .15, .86);
    top: 0;
    left: auto;
    right: 0;
    z-index: -1;
    border: none;
}
#ttcmsbanner .ttbanner-text .btn:hover::after,
#ttcmsbanner .ttbanner-text .btn:focus::after,
#ttcmsbanner .ttbanner-text .btn:active::after {
    width: 100%;
    right: auto;
    left: 0;
}
@media (max-width: 1199px) {
	#ttcmsbanner .ttbanner-text h4 {
		font-size: 30px;
		line-height: 32px;
		padding: 0 0 10px;
	}
	#ttcmsbanner .ttbanner-text h2 {
		font-size: 32px;
		line-height: 34px;
		margin: 0 0 20px;
	}
	#ttcmsbanner .ttbanner-text .btn {
		padding: 8px 22px;
	}
	#ttcmsbanner {
		margin:0 0 40px;
	}
}
@media (max-width: 991px) {
	#ttcmsbanner .ttbanner-text h4 {
		font-size: 24px;
		line-height: 26px;
	}
	#ttcmsbanner .ttbanner-text h2 {
		font-size: 26px;
		line-height: 28px;
		margin: 0 0 15px;
	}
	#ttcmsbanner .ttbanner-text .btn {
		padding: 6px 16px;
	}
}
@media (max-width: 670px) {
	#ttcmsbanner .ttbanner-text h4 {
		font-size: 20px;
		line-height: 22px;
		padding: 0 0 8px;
	}
	#ttcmsbanner .ttbanner-text h2 {
		font-size: 18px;
		line-height: 20px;
		margin: 0 0 10px;
	}
	#ttcmsbanner .ttbanner-text .btn {
		padding: 5px 12px;
		font-size:13px;
	}
	#ttcmsbanner {
		margin:0 0 30px;
	}
}
@media (max-width: 599px) {
	#ttcmsbanner .ttbanner-text h4 {
		font-size: 28px;
		line-height: 32px;
		padding: 0 0 15px;
	}
	#ttcmsbanner .ttbanner-text h2 {
		font-size: 26px;
		line-height: 29px;
		margin: 0 0 15px;
	}
	#ttcmsbanner .ttbanner-text .btn {
		padding: 8px 16px;
	}
}
@media (max-width: 543px) {
	#ttcmsbanner .ttbanner-img {
		padding:0 10px;
	}
}
@media (max-width: 380px) {
	#ttcmsbanner .ttbanner-text h4 {
		font-size: 24px;
		line-height: 26px;
		padding: 0 0 10px;
	}
	#ttcmsbanner .ttbanner-text h2 {
		font-size: 20px;
		line-height: 22px;
		margin: 0 0 10px;
	}
	#ttcmsbanner .ttbanner-text .btn {
		padding: 6px 12px;
	}
}