@font-face {
	font-family: 'OpenSans-Light';
	src: url('/fonts/OpenSans-Light.woff') format('woff');
	font-weight: normal;
	font-style: normal;
}

@font-face {
	font-family: 'OpenSans-Regular';
	src: url('/fonts/OpenSans-Regular.woff') format('woff');
	font-weight: normal;
	font-style: normal;
}

@font-face {
	font-family: 'OpenSans-SemiBold';
	src: url('/fonts/OpenSans-SemiBold.woff') format('woff');
	font-weight: normal;
	font-style: normal;
}

@font-face {
	font-family: 'OpenSans-Bold';
	src: url('/fonts/OpenSans-Bold.woff') format('woff');
	font-weight: normal;
	font-style: normal;
}


body {
	font-family: 'OpenSans-Regular';
	font-size: 13px;
}

strong {
	font-family: 'OpenSans-Bold';
}

a {
	color: rgb(12, 75, 157);
	cursor: pointer;
}

h1.title {
	font-family: OpenSans-Light;
	margin-bottom: 25px;
	color: rgb(45,44,47);
}

h2 {
	font-size: 24px;
	color: rgb(45, 44, 47);
}

h3 {
	font-size: 24px;
	color: rgb(74, 74, 74);
}

.bold {
	font-family: OpenSans-Bold;
}

.semibold {
	font-family: OpenSans-SemiBold;
}

.light {
	font-family: OpenSans-Light;
}

.regular {
	font-family: OpenSans-Regular;
}

.container {
	max-width: 1280px;
}

.fz-10	{
	font-size: 10px!important;
}

.fz-12	{
	font-size: 12px!important;
}

.fz-13	{
	font-size: 13px!important;
}

.fz-14	{
	font-size: 14px!important;
}

.fz-16	{
	font-size: 16px!important;
}

.fz-18	{
	font-size: 18px!important;
}

.fz-20	{
	font-size: 20px!important;
}

.fz-22	{
	font-size: 22px!important;
}

.fz-24	{
	font-size: 24px!important;
}

.w-30 {
	width: 30%!important;
}

.width-max-content {
	width: max-content;
}

.hint {
	font-size: 12px!important;
	color: rgb(102, 102, 102)!important;
}

hr {
	border-color: rgb(221,221,221);
}

hr.nav-hr {
	margin: 4px 10px 4px 10px;
}

.iti {
	width: 100%;
}

.fb-100 {
	flex-basis: 100%;;
}

.form-group label {
	margin-bottom: 4px;
	color: #4a4a4a;
}

.form-control, .bootstrap-select > .dropdown-toggle {
	min-height: 48px;
	background-color: #fff;
	border: 1px solid #ddddddff;
	padding: 8px;
}

.form-control-small {
	height: 33px;
}

.selectpicker-small {
	height: 33px;
}

.bootstrap-select.show-tick .dropdown-menu .selected span.check-mark {
	top: 15px;
}

#top_notification {
	background: rgb(54,146,38);
	width: 256px;
	height: 36px;
	margin: 16px;
	padding: 8px;
	border: 1px solid #f2f2f2ff;
	border-radius: 4px;
	box-shadow: rgb(234, 234, 234) 0px 4px 8px 0px;
	color: rgb(242,242,242);
	line-height: 17px;
	-webkit-transition: all 0.15s ease-in-out;
	transition: all 0.15s ease-in-out;
	top: -80px;
	opacity: 0;
}

#top_notification.show {
	display: block;
	top: 0px;
	opacity: 1;
}

#top_notification a span {
	color: rgb(242,242,242);
}

#top_notification a:hover {
	text-decoration: none;
}

#logo {
	display: block;
	width: 62px;
	height: 26px;
	margin-top: -5px;
}

#logo-text {
	font-size: 10px;
}

.navbar-nav .nav-item:not(.dropdown) {
	border-radius: 4px;
	padding-right: .7rem;
	padding-left: .7rem;
}

.navbar-nav .nav-item a:not(.dropdown-item) {
	font-family: 'OpenSans-SemiBold';
	font-size: 14px;
	display: block;
	height: 48px;
	line-height: 30px;
}

.navbar-toggler {
	display: block;
	height: 48px;
	width: 48px;
	color: rgb(12, 75, 157);
	border-color: rgba(0, 0, 0, .1);
	padding: 0;
	cursor: pointer;
}

#navbar-mobile {
	position: fixed;
	top: 0;
	left: 0;
	z-index: 999;
	width: 280px;
	height: 100%;
	background: #fff;
}

.filter-nav {
	position: fixed;
	top: 0;
	right: 0;
	z-index: 999;
	width: 280px;
	height: 100%;
	background: #fff;
}

nav .nav-item {
	border-radius: 4px 4px 0px 0px;
	border-bottom: 2px solid #fff;
}

nav .nav-item.hover-border-bottom:active, nav .nav-item.hover-border-bottom.show {
	border-bottom: 2px solid rgb(12, 75, 157);
	background-color: #F5F5F5;
}

nav.navbar .dropdown-menu {
	width: max-content;
}

nav.navbar .dropdown-menu .col:not(:nth-child(1)) {
	border-left: 1px solid rgb(234,234,234);
}

nav.navbar .dropdown-menu .col:not(:first-child) {
	padding-left: 0;
	padding-right: 0;
}

nav.navbar .dropdown-menu .col:last-child {
	padding-right: 15px ;
}

nav .dropdown-menu .col {
	width: 200px;
}

.nav-item:hover:not(.no-hover) {
	background: #F5F5F5;
}

.navbar-header {
	min-height: 80px;
}

#basket:after {
	content: none;
}

#basket:hover {
	cursor: pointer;
}

button:disabled, input[type="text"]:read-only {
	cursor: not-allowed;
}

a.close-mobile-nav {
	display: inline-block;
	padding: 10px 15px;
}

.close-mobile-nav:hover {
	text-decoration: none;
}

.nav-item-mobile {
	font-size: 18px;
	border-bottom: 1px solid #ddddddff;
}

.nav-item-mobile a.dropdown-toggle {
	color: rgb(74,74,74);
}


.nav-item-mobile a.dropdown-toggle:after {
	float: right;
	margin-right: 0.255em;
	font-size: 12px;
	line-height: 35px;
}

.nav-item-mobile .dropdown-menu {
	border: 0;
}

.bg-primary {
	background-color: rgb(12, 75, 157)!important;
	color: #fff;
}

.btn {
	font-size: 13px;
}

.btn:focus {
	box-shadow: none;
}

.btn-primary {
	background: rgb(12, 75, 157);
	min-height: 48px;
	padding: 8px 16px 8px 16px;
	border-radius: 4px;
	border-color: rgb(12, 75, 157);
}

.btn-twitter {
	background: rgb(29,161,242);
	min-height: 48px;
	padding: 8px 16px 8px 16px;
	border-radius: 4px;
	border-color: rgb(29,161,242);
	color: #fff;
}

.btn-warning {
	min-height: 48px;
	padding: 8px 16px 8px 16px;
	border-radius: 4px;
}

.btn-primary:active, .btn-primary:focus {
	background: rgb(12, 75, 157)!important;
	border-color: rgb(12, 75, 157)!important;
}

.btn-disabled {
	background:rgb(221,221,221);
	opacity: 0.5!important;
	min-height: 48px;
	padding: 8px 16px 8px 16px;
	border-radius: 4px;
	cursor: default;
	color: rgb(45,44,47);
}

.btn-reverse {
	margin: 0px 16px 0px 0px;
	padding: 8px 64px 8px 64px!important;
	border: 2px solid #0c4b9dff;
	border-radius: 64px;
	color: #0c4b9dff;
}

.btn-reverse:hover {
	background-color: #F5F5F5;
	color: #0c4b9dff;
}

.btn-light:not(.dropdown-toggle) {
	background-color: transparent;
	color: rgb(12, 75, 157);
	border: none;
	min-height: 48px;
}

.btn-light:hover:not(.dropdown-toggle) {
	background-color: #F5F5F5;
	color: rgb(12, 75, 157);
}

.btn-twitter:hover {
	color: #fff;
	background-color: #0084b4;
}

.btn-success {
	min-height: 48px;;
}

.alert {
	background-color: transparent;
	border-width: 2px;
	border-style: solid;
	padding: 4px;
}

.alert-info {
	border-color: rgb(12, 75, 157);
	color: rgb(12, 75, 157);
}

.alert-danger {
	border-color: rgb(199,81,80);
	color: rgb(199,81,80)!important;
}

.text-danger {
	color: rgb(199,81,80)!important;
}

.alert-small {
	padding: 4px;
}

.card.grey .alert-warning {
	border-color: #856404;
}

.card-info {
	border: 2px solid rgb(12, 75, 157)!important;
}

.card-info .card-header {
	background-color:  rgb(12, 75, 157)!important;
	color: #fff!important;
	font-size: 14px!important;
}

.dropzone {
    min-height: 92px;
    border: 0;
    background: white;
	padding: 20px 20px;
	color: rgb(128,128,128);
	border-radius: .25rem
}

.dropzone.is-invalid {
	border: 1px solid rgb(199,81,80);
}

a.btn {
	padding-top: 14px;
	line-height: 19px;
}

.btn-primary:hover {
	background: #0A3F85;
	border-color: #0A3F85;
}

.btn-secondary, .btn-outline-secondary {
	font: 13px OpenSans-SemiBold, "Open Sans SemiBold", "Open Sans";
	color: rgb(45,44,47)!important;
	background:rgb(221,221,221);
	border: none;
	min-height: 48px;
}

.btn-secondary:focus , .show > .btn-secondary.dropdown-toggle{
	color: rgb(45,44,47)!important;
	background:rgb(221,221,221);
}

.btn-danger {
	min-height: 48px;
}

.btn-secondary:hover, .btn-outline-secondary {
	background-color: #CCCCCC!important;
	border: none;
}

.page-footer {
	background: #005FAB;;
	font-size: 13px;
	color: #ffffff;
}

.page-footer h2 {
	color: #ffffff;
}

.page-footer a {
	color: #ffffff;
}

.page-footer .knxicon {
	color: #ffffff;
}

.page-footer input#email {
	background-color: transparent;
	border: 0px;
	border-bottom: 1px solid #fff;
	min-height: 44px;
	display: block;
	margin-bottom: 2rem;
	width: 100%;
	caret-color: #ffffff;
}

@media (max-width: 991.98px) {
	.page-footer .subscribe-newsletter {
		border: 1px solid #ffffff;
		border-radius: 4px;
	}
}
@media (min-width: 992px) {
	.page-footer .subscribe-newsletter {
		border-left: 1px solid #ffffff;
		padding-left: 30px;
		margin-bottom: 30px;
	}
}

.page-footer input#email:focus {
	outline: none;
}

.page-footer input#email::placeholder {
	color: #ffffff;
}

.btn-white {
	background-color: #ffffff;
	min-height: 48px;
	padding: 8px 16px 8px 16px;
	border-radius: 4px;
	border-color: #ffffff;
}

.breadcrumb {
	background-color: transparent;
}

.breadcrumb-logo {
	background: url('knx-logo-white.png');
	display: block;
	width: 36px;
	height: 24px;
	background-repeat: no-repeat;
	background-size: contain;
}
.custom-breadcrumbs ol.breadcrumb {
	background-color: #fff;
	line-height: 32px;
}

.custom-breadcrumbs ol.breadcrumb .breadcrumb-item.active {
	color: rgb(74, 74, 74);
}

.page-footer .custom-breadcrumbs ol.breadcrumb .breadcrumb-item.active {
	color: #ffffff;
}

.custom-breadcrumbs ol.breadcrumb .breadcrumb-item .breadcrumb-circle {
	font: 12px "OpenSans-Regular", "Open Sans Regular", "Open Sans";
	color: rgb(153,153,153);
	background: rgb(255,255,255);
	width: 32px;
	height: 32px;
	border: 1px solid #999999ff;
	border-radius: 24px;
	text-align: center;
	line-height: 30px;
	flex-shrink: 0;
}

.custom-breadcrumbs ol.breadcrumb .breadcrumb-item.active .breadcrumb-circle {
	font: 12px OpenSans-Bold, "Open Sans Bold", "Open Sans";
	color: rgb(255,255,255);
	background: rgb(12,75,157);
	line-height: 32px;
	border: 0;
}


.footer-copyright {
	background: rgb(45, 44, 47);
	color: rgb(153, 153, 153);
	font-size: 12px;
}

.footer-copyright a {
	color: #fff;
}

.footer-copyright a:hover {
	color: rgb(153, 153, 153);
}

.cookie-disclaimer, .form-buttons-sticky-bottom {
	min-height: 80px;
	background: rgba(255,255,255,96%);
	box-shadow: rgba(0, 0, 0, 0.1) 0px -4px 8px 0px;
	position: fixed;
	z-index: 1000;
	width: 100%;
	bottom: 0;
	left: 0;
}

.cookie-disclaimer .container, .cookie-disclaimer .container .row, .form-buttons-sticky-bottom .container, .form-buttons-sticky-bottom .container .row {
	min-height: 80px;
}

.cookie-close {
	width: 48px;
	height: 48px;
}


.language-selector .dropdown-toggle:after {
	content: none;
}

.dropdown-toggle:hover {
	cursor: pointer;
}

.language-selector.show a {
	color: rgb(153, 153, 153);
	text-decoration: none;
}

.dropdown-header {
	font: 18px OpenSans-Light, "Open Sans Light", "Open Sans";
	color: rgb(74,74,74);
	padding: 0 16px;
}

.dropdown-subheader {
	font-size: 14px;
}

.dropdown-item {
	font-size: 13px;
	color: rgb(74, 74, 74);
	white-space: inherit;
	padding-left: 10px!important;
	padding-right: 5px;
	/* min-height: 48px; */
}

.nav-item .dropdown-menu .dropdown-item {
	padding: 8px 16px 8px 16px;
}

.dropdown-item:hover {
	cursor: pointer;
}

.dropdown:not(.nav-item) .dropdown-item {
	padding-top: 14px;
}

.dropdown-item.active, .dropdown-item:active {
	background-color: #F5F5F5;
	font-family: OpenSans-Bold;
}

.dropdown-item.selected {
	font: 13px "OpenSans-Bold", "Open Sans Bold", "Open Sans";
	color: rgb(74,74,74);
	line-height: 35px;
}

.bootstrap-select.show-tick .dropdown-menu li a span.text {
	margin-right: 0;
}

footer .social-media {
	font-size: 18px;
}

footer .knxicon-open, .nav-item .knxicon-open, .nav-link .knxicon-open {
	color: rgb(153,153,153);
}

.custom-control-input:checked ~ .custom-control-label::before {
	background-color:  rgb(12, 75, 157);
	border-color:  rgb(12, 75, 157);
}

.checkbox-lg .custom-control-label::before,
.checkbox-lg .custom-control-label::after {
	top: .7rem;
	width: 24px;
	height: 24px;
}

.checkbox-lg .custom-control-label {
	padding-top: 13px;
	padding-left: 6px;
}

.checkbox.disabled label {
	opacity: 0.5;
}

.custom-control-label:hover {
	cursor: pointer;
}

.custom-radio-button input[type=radio] {
	position: absolute;
	opacity: 0;
}

.custom-radio-button .radio-span {
	position: absolute;
	top: 0;
	left: 0;
	height: 25px;
	width: 25px;
	background-color: white;
	border: 1px solid #ddddddff;
	border-radius: 50%;
}

.share-organization-radio-span {
	top: 12px!important;
}

.custom-radio-button .radio-span:after {
	content: "";
	position: absolute;
	display: none;
}

.custom-radio-button input:checked ~ .radio-span:after {
	display: block;
}

/* Style the checkmark/indicator */
.custom-radio-button .radio-span:after {
	top: 7px;
	left: 7px;
	width: 10px;
	height: 10px;
	border-radius: 50%;
	background: rgb(12, 75, 157);;
}

.small-label {
	font-size: 12px;
}

#newsletter-form #email {
	height: 48px;
}

.overlay {
    visibility: hidden;
    position: fixed;
    /* full screen */
    width: 100vw;
    height: 100vh;
    /* transparent black */
    background: rgba(0, 0, 0, 0.2);
    /* middle layer, i.e. appears below the sidebar */
    z-index: 998;
    opacity: 0;
    /* animate the transition */
    transition: all 0.5s ease-in-out;
}

/* display .overlay when it has the .active class */
.overlay.active {
    visibility: visible;
    opacity: 1;
}

.grey {
	background: #F5F5F5;
}

.supergrey {
	background: rgb(234,234,234);
}

.card-parent {
    background-color: rgb(234,234,234);
    border-top: 0px !important;
    border-right: 0px !important;
    border-left: 0px !important;
}

.card-parent-header {
	background-color: rgb(234,234,234);
	border-top: 0px!important;
	border-right: 0px!important;
	border-bottom: 0px solid #ddddddff!important;
	border-left: 0px!important;
}

.card-parent.open .card-header {
	border-bottom: 0px!important;
}

.card-parent .card {
	border: 0px solid transparent!important;
}

.card-parent .card.open {
	border: 1px solid #ddddddff!important;
}

.card.grey .card-body {
	color: rgb(74,74,74);
}

.card.dark .card-body {
	color: rgb(45,44,47);
}

.card-radio:hover {
	background: #F5F5F5;
	cursor: pointer;
	border-radius: 4px;
}

.greyed {
	background: #F5F5F5;
	opacity: 0.5;
}

a.greyed {
	cursor: not-allowed;
}

.color-grey {
	color: rgb(153,153,153);
}

.color-dark {
	color: rgb(45,44,47);
}

.color-black {
	color: rgb(0,0,0);
}

.color-blue {
	color: rgb(12, 75, 157);
}

.color-silver {
	color: rgb(128, 128, 128);
}

.color-tundora, .bootstrap-select.color-tundora .filter-option .filter-option-inner {
	color: rgb(74, 74, 74);
}

hr.dark {
	border-top: 1px solid rgb(74, 74, 74);
}

.dark {
	color: rgb(45, 44, 47);
}

.select-account-button {
	border: 1px solid #ddddddff;
	border-radius: 2px;
	background-color: #fff;
	font: 14px OpenSans-SemiBold, "Open Sans SemiBold", "Open Sans";
	color: rgb(74,74,74);
	height: 30px!important;
	padding-top: 0px;
	line-height: 20px!important;
}

.select-account-button:active, .select-account-button:hover, .select-account-button:focus, .select-account-button[aria-expanded="true"] {
	background-color: #DDDDDD;
	color: rgb(74,74,74);
}

.select-account-button .knxicon-user, .select-account-button .knxicon-building {
	color: rgb(153,153,153);
}

.select-account-button .knxicon-user:before, .select-account-button .knxicon-building:before {
	vertical-align: bottom;
	font-size: 16px;
}

nav .dropdown-menu {
	border-radius: 0px;
}

nav .dropdown-account {
	min-width: 256px;
	width: max-content;
}

.dropdown-account .dropdown-item {
	padding: 8px 16px;
}

.mobile-dropdown-account {
	top: 65px;
}

.dropdown-item-title {
	color: rgb(12, 75, 157);
	font: 13px OpenSans-SemiBold, "Open Sans SemiBold", "Open Sans";
}

.dropdown-item-description {
	font-size: 11px;
	color: rgb(128,128,128);
}

.dropdown-account .dropdown-item:hover {
	background-color: #F5F5F5;
}

.dropdown-account .dropdown-item.link:hover {
	background-color: #fff;
	text-decoration: underline;
}

.bootstrap-select .dropdown-menu, .bootstrap-select .dropdown-menu .inner {
	min-height: 0!important;
}

.account-icon {
	width: 46px;
	height: 46px;
	padding-top: 5px;
}

.account-icon .knxicon-user, .account-icon .knxicon-building {
	font-size: 24px;
}

.blue {
	color:rgb(12, 75, 157)!important;
}

.badge {
	border-radius: 0;
	font-size: 13px;
	line-height: 1;
	padding: .375rem .5625rem;
}

.badge.badge-pill {
	border-radius: 10rem
}

.badge-pill.badge-success {
	padding: 0px 4px 0px 4px;
	min-width: 22px;
	min-height: 22px;
	line-height: 22px;
}

.badge:not(.badge-pill) {
	border-radius: 4px;
	margin: 0px 4px 0px 0px;

}

.badge-primary {
	background: rgb(12,75,157);
}

.badge-success {
	background: rgb(54,146,38);
}

.badge-danger {
	background: rgb(199,81,80);
}


a.nav-link .badge {
	position: relative;
	right: 12px;
    top: -16px;
    color: #fff;
}

.card-icon {
	font-size: 128px;
	text-align: center;
	color: rgb(12, 75, 157);
	margin-top: -30px;
}

.card-text {
	color: rgb(102,102,102);
}

.application-card-image {
	width: 100px;
}

.search-store .form-control {
	height: 36px;
}

.search-store .input-group .input-group-prepend {
	margin-top: -3px;
}

.form-control {
	font-size: 13px;
}

div.store-product .card-header, .card-body.notification {
	background: rgb(234,234,234)!important;
	/* margin: 0px 0px 8px 0px; */
	border-radius: 4px;
	min-height: 48px;
	color: rgb(45,44,47);
	border: 0
}

div.accordion .card {
	border: 2px solid transparent;
	overflow: inherit;
}

div.accordion .card:not(.card-parent).open {
	border: 2px solid #ddddddff;
}

div.card:not(.card-parent).open .card-header, .accordion .card:not(.card-parent) .card-body {
	background-color:rgb(245,245,245)!important;
}

div.accordion > .store-product {
	border-radius: 4px!important;
}


div.accordion > .store-product .btn-link:hover, div.accordion > .store-product .btn-link:focus {
	text-decoration: none!important;
}

div.accordion > .store-product .btn:focus {
	box-shadow: none;
}

div.accordion .card-header {
	border:0;
}

div.store-product .btn-link {
	color: rgb(45,44,47);
}

div.store-product-header {
	padding: 16px 0px 16px 16px;
}

div.store-product-arrow {
	font: 12px KNXIconfont, "KNX Iconfont", knx-iconfont;
	color: rgb(153,153,153);
	text-align: right;
	margin-top: auto;
	margin-bottom: auto;
}

.store-product-name {
	font-size: 18px;
	color: rgb(45,44,47);
	min-height: 10px;
	height: 100%;
	vertical-align: middle;
}

.store-product-price {
	font: 18px OpenSans-Bold, "Open Sans Bold", "Open Sans";
	color: rgb(0,0,0);
	min-height: 10px;
}

.store-product-price-info {
	font: 12px "OpenSans-Regular", "Open Sans Regular", "Open Sans";
	color: rgb(102,102,102)!important;
}


img.product-image, div.product-image {
	width: auto;
	border: 1px solid #ddddddff;
}

img.product-image {
	max-width: 50px;
}
@media (min-width: 576px) {
	img.product-image {
		max-width: 80px;
	}
}
@media (min-width: 768px) {
	img.product-image {
		max-width: 60px;
	}
}

.product-image-wrapper {
	background-color: #FFF;
	width: 48px;
	height: 48px;
	padding: 8px;
}

.product-image-wrapper .product-image {
	width: 32px;
	height: 32px;
	background-position: center;
	background-size: cover;
}

.product-comment {
	min-height: 96px;
}

.store-buy-button {
	width: 152px;
	text-align: center;
}

.store-download-button {
	width: 152px;
	text-align: center;
}

.pagination li {
	text-align: center;
}

.pagination li:first-child a {
	border: 1px solid rgb(211,211,211);
}

.pagination li a {
	display: block;
	width: 48px;
	height: 48px;
	line-height: 48px;
	font-size: 13px;
	font-family: OpenSans-SemiBold;
	border-right: 1px solid rgb(211,211,211);
	border-top: 1px solid rgb(211,211,211);
	border-bottom: 1px solid rgb(211,211,211);
}

.pagination li a:hover {
	background-color: #F5F5F5;
	text-decoration: none;
}

.pagination li.active a {
	text-decoration: none;
	color: #fff;
	background-color: rgb(12, 75, 157);
	border-right: 1px solid rgb(12, 75, 157);
	border-top: 1px solid rgb(12, 75, 157);
	border-bottom: 1px solid rgb(12, 75, 157);
}

li.disabled {
	opacity:0.5;
	cursor: not-allowed;
}

.modal-header {
	border-bottom: 0;
}

.modal-header a:hover {
	text-decoration: none;
}

.modal-title {
	font: 24px "OpenSans-Light", "Open Sans Light", "Open Sans";
	color: rgb(74,74,74);
}

.modal-content {
	border-radius: 0;
}

.modal-footer {
	border-top: 0;
}

.table thead th {
	border-bottom: 1px solid rgb(221,221,221);
	padding-top: 8px;
	padding-bottom: 8px;
	color: rgb(0,0,0);
}

.table tbody td {
	padding-top: 8px;
	padding-bottom: 8px;
	color: rgb(0,0,0);
	vertical-align: middle;
}

.table-custom {
	border-collapse: separate;
	border-spacing: 0 7px;
}

.table-custom td {
	vertical-align: middle;
	background-color: rgb(234,234,234);
	border: 1px solid rgb(234,234,234);
	padding: 24px 16px 24px 16px;
}
.table-custom td:first-of-type{
	border-top-left-radius: 4px;
	border-bottom-left-radius: 4px;
}

.table-custom td:last-of-type{
	border-top-right-radius: 4px;
	border-bottom-right-radius: 4px;
}

table.no-border-top tr:first-of-type td {
	border-top: 0;
}

table.th-border-0 thead th {
	border-top: 0;
}

tr.active {
	color: #212529;
	background-color: rgba(0,0,0,.075);
}

.tab-content {
	padding: 30px 30px 10px 30px;
	border: solid 1px #ddd;
	border-top: 0;
	margin-bottom: 30px;
}

.title-underline {
	font: 13px "OpenSans-SemiBold", "Open Sans SemiBold", "Open Sans";
	color: rgb(45,44,47);
	margin: 0px 0px 8px 0px;
	padding: 0px 0px 8px 0px;
	border-bottom: 1px solid #ddddddff;
}

.card {
	border-color: rgb(221,221,221);
}

.card-dashed, .dropzone {
	border: 1px dashed rgba(0,0,0,.5);
}

.card-body {
	padding: 16px;
}

.card-body .card-header {
	background-color: transparent;
	padding-left: 0;
	font: 18px "OpenSans-Regular", "Open Sans Regular", "Open Sans";
	color: rgb(45,44,47);
	padding-top: 8px;
	padding-bottom: 8px;
}

.card-header-link {
	line-height: 48px;
}

hr.hr-light {
	border-color: rgb(234,234,234);
}

.invalid-feedback, .custom-control-input.is-invalid ~ .custom-control-label, .was-validated .custom-control-input:invalid ~ .custom-control-label {
	color: rgb(199,81,80);
}

.custom-control-input.is-invalid ~ .custom-control-label::before, .was-validated .custom-control-input:invalid ~ .custom-control-label::before, .form-control.is-invalid, .was-validated .form-control:invalid {
	border-color: rgb(199,81,80);
}

.form-control.is-invalid, .was-validated .form-control:invalid {
	background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='rgb(199,81,80)' viewBox='0 0 12 12'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e");
}

.form-control-plaintext {
	font-size: 13px;
}

.checkout-item-image, .offer-item-image {
	background: rgb(255,255,255);
	width: 64px;
	height: 104px;
	margin: 0px 16px 0px 0px;
	padding: 8px;
	border: 1px solid #ddddddff;
	border-radius: 4px;
	background-repeat: no-repeat;
	background-size: contain;
	background-position: center;
}

.offer-item-image {
	width: 48px;
	height: 48px;
}

.checkout-item-title {
	font-size: 18px;
	color: rgb(12, 75, 157);
}

.text-decoration-line-through {
	text-decoration: line-through;
}

.entity-contacts {
	overflow: hidden;
	max-height: 580px;
	-webkit-transition: max-height 0.5s ease-in;
    -moz-transition: max-height 0.5s ease-in;
    -o-transition: max-height 0.5s ease-in;
    transition: max-height 0.5s ease-out;
}

.entity-contacts.open {
	max-height: 2300px;
}

.h-75px {
	height: 75px;
}

.invoice-image {
	width: 32px;
	height: 24px;
	border: 1px solid #000000ff;
	border-radius: 4px;
}

dl dd {
	margin-bottom: 1px;
}

.no-wrap {
	white-space: nowrap;
}

.align-sub {
	vertical-align: sub;
}

.oem-permission-type {
    height: 20px;
    width: 20px;
    font-size: 13px;
    background-color: #666;
    border-radius: 50%;
    display: inline-block;
    text-align: center;
    color: #fff;
}

/**
 * Waiting animating on ajax call for typeahead
 */
input.loading {
	background: transparent url('/ajax-loader.gif') no-repeat scroll right center content-box;
}

.bootstrap-select > .dropdown-toggle.bs-placeholder {
	color:#000;
}

div.enumeration {
    position: absolute;
    margin-left: 5px;
    margin-top: -10px;
    width: 95%;
    border: 1px solid #ddd;
    background: #fff;
    padding: 5px;
    z-index: 999;
}

.reply-knx {
	margin-left: 20px;
}

.reply-customer {
	margin-right: 20px;
}

#ets-app-language-descriptions .ets-app-description {
    border: dotted 1px #ddd;
    padding: 20px 30px;
    margin-bottom: 10px;
}

.ets-app-version-new-file {
    border: solid 1px #ddd;
    padding: 20px;
    background-color: #fff;
    margin-bottom: 25px;
    min-height: 125px;
}

.add-voucher-code {
	width: 131px!important;
}

.progress-bar {
	background-color: rgb(12, 75, 157);
}

.confirmation-edit-link {
	width: 48px;
	height: 48px;
	line-height: 48px!important;
}

#banner_image {
	max-width: 560px;
}
#highlight_image {
	max-width: 320px;
}

.treeview ul {
	background: none!important
}
.treeview span.folder {
	padding-left: 2px
}
.treeview .selected {
	color: rgb(12, 75, 157);
}

@media (max-width: 992px) {
    #navbar-mobile {
		position: fixed;
		top: 0;
        left: 0;
        padding-left: 15px;
        padding-right: 15px;
		padding-bottom: 15px;
		width: 265px;
		height: 100vh;
	}

	#navbar-mobile .navbar-nav {
		max-height: 80vh;
	}

	#navbar-mobile .nav-item-mobile .dropdown-menu, #navbar-mobile .navbar-nav {
		width: 100%;
	}

    #navbar-mobile.collapsing {
        left: -65%;
        transition: height 0s ease;
    }

    #navbar-mobile.show {
        left: 0;
        transition: left 300ms ease-in-out;
    }

    .navbar-toggler.collapsed ~ #navbar-mobile {
        transition: left 300ms ease-in-out;
	}

    .filter-nav {
		position: fixed;
		top: 0;
        right: 0;
        padding-left: 15px;
        padding-right: 15px;
        padding-bottom: 15px;
        width: 65%;
		height: 100vh;
	}

	.filter-nav .navbar-nav {
		max-height: 80vh;
		height: 100%;
	}

	.filter-nav .nav-item-mobile .dropdown-menu, .filter-nav .navbar-nav {
		width: 100%;
	}

   .filter-nav.collapsing {
        right: -50%;
        transition: height 0s ease;
    }

	.filter-nav.show {
        right: 0;
        transition: right 300ms ease-in-out;
    }

    .navbar-toggler.collapsed ~ .filter-nav {
        transition: right 300ms ease-in-out;
	}

	.checkout-item-image {
		width: 45px;
		height: 45px;
	}

	#mobile-accout-dropdown {
		padding: 0px 8px 4px 8px;
	}

	div.store-highlight-body {
		background-size: contain;
		min-height: 226px!important;
		width: 226px!important;
	}

	#banner_image, #highlight_image {
		max-width: 100%;
	}
}

@media(min-width: 768px) {
	.border-bottom-md-0 {
		border-bottom: 0!important;
	}

	.border-md-right {
		border-right: 1px solid #dee2e6!important;
	}
}

@media (max-width:600px) {
	.store-product-name {
		font-size: 14px;
		font-family: OpenSans-Semibold!important;
		color: rgb(45,44,47);
	}

	div.store-product-price {
		font-size: 14px;
	}

	.knxicon:not(a.nav-link .knxicon) {
		font-size: 14px;
	}

	div.store-content-bordered {
		height: 431px!important;
	}
}

@media (max-width:480px) {
	.w-sm-100 {
		width: 100%;
	}
}

div.dropdown-notifications {
	background: rgb(255,255,255);
	min-width: 128px;
	max-width: 1280px;
	min-height: 128px;
	border: 1px solid #eaeaeaff;
	border-radius: 4px;
	box-shadow: rgba(0, 0, 0, 0.1) 0px 4px 8px 0px;
	left: -268px;
}

li.nav-item-notifications {
	border-radius: 4px;
	padding-right: .7rem;
	padding-left: .7rem;
	border-bottom: 2px solid #fff;
}

li.nav-item-notifications:hover {
	background: #F5F5F5;
}

div.notifications-header {
	padding-right: 16px;
	padding-bottom: 8px;
}

div.notifications-header a {
	font: 13px "OpenSans-Regular", "Open Sans Regular", "Open Sans";
	color: rgb(12,75,157);
	min-height: 10px;
	border-top: 0px solid transparent;
	border-right: 0px solid transparent;
	border-bottom: 1px solid transparent;
	border-left: 0px solid transparent;
	margin-left: 16px;
}

div.notifications {
}

.notifications article {
	background: rgb(234,234,234);
	margin: 0px 8px 8px 8px;
	padding: 16px 16px 16px 0px;
	border: 2px solid transparent;
	border-radius: 4px;
}

	.notifications article:last-of-type {
		border-bottom: none
	}

	.notifications .title {
		font: 13px "OpenSans-SemiBold", "Open Sans SemiBold", "Open Sans";
		color: rgb(0,0,0);
		min-height: 10px;
	}

	.notifications .body {
		font: 13px "OpenSans-Regular", "Open Sans Regular", "Open Sans";
		color: rgb(0,0,0);
		min-height: 10px;
	}

	.notifications time {
		font: 13px "OpenSans-Regular", "Open Sans Regular", "Open Sans";
		color: rgb(0,0,0);
		min-height: 10px;
	}

	.notifications .status {
		border: 1px solid rgb(153, 153, 153);
    	width: 15px;
    	height: 15px;
		display: block;
    	border-radius: 50%;
		margin-top: 2px
	}

		.notifications .not-viewed .status {
			background: rgb(54,146,38);
		}

h1 {
	font: 36px "OpenSans-Light", "Open Sans Light", "Open Sans";
	color: rgb(74,74,74);
	min-height: 10px;
	margin: 0px;
	padding: 0px;
}

h1 .badge {
	font: 36px "OpenSans-Light", "Open Sans Light", "Open Sans";
}

div.search-store {
	background: rgb(255,255,255);
	width: 192px;
	height: 48px;
	margin: 0px;
	padding: 8px;
	border: 1px solid #ddddddff;
	border-radius: 4px;
}

div.search-store input {
	font: 13px "OpenSans-Regular", "Open Sans Regular", "Open Sans";
	color: rgb(128,128,128);
	min-height: 10px;
	margin: 0px;
	padding: 0px;
	border: none;
	width: 90px;
	margin-top: -2px;
	margin-left: 8px;
}

div.search-store span.search-icon {
	font: 16px KNXIconfont, "KNX Iconfont", knx-iconfont;
	color: rgb(74,74,74);
	min-height: 10px;
	margin: 8px 8px 0px 0px;
	padding: 0px;
}

div.search-store-label {
	font: 13px "OpenSans-Regular", "Open Sans Regular", "Open Sans";
	color: rgb(74,74,74);
	min-height: 10px;
	margin: 0px 0px 4px 0px;
}

div.sort-store {
	width: 192px;
	margin: 0px 16px 16px 0px;
}


div.sort-store-label {
	font: 13px "OpenSans-Regular", "Open Sans Regular", "Open Sans";
	color: rgb(74,74,74);
	min-height: 10px;
	margin: 0px 0px 4px 0px;
}

div.sort-store-combo {
	background-color: pink;
}

div.sort-store-combo select {
	background: rgb(255,255,255);
	width: 100%;
	height: 48px;
	padding: 0px 8px 0px 8px;
	border: 1px solid #ddddddff;
	border-radius: 4px;
}

div.sort-store-combo select option {
	font: 13px "OpenSans-Regular", "Open Sans Regular", "Open Sans";
	color: rgb(74,74,74);
	min-height: 10px;
	margin: 0px 4px 0px 0px;
}

div.store-highlight {
	background-image: radial-gradient(rgb(245, 245, 245) 0%, rgb(234, 234, 234) 100%);
	flex: 0 0 auto;
	margin: 0px;
	padding: 16px;
	border: 0px solid #ddddddff;
	border-radius: 6px;
}

div.store-content-grey {
	background-image: radial-gradient(rgb(245, 245, 245) 0%, rgb(234, 234, 234) 100%);
	padding: 16px;
	min-height: 210px;
}

div.store-highlight-element {
	padding: 16px;
	border: 0px solid #ddddddff;
	border-radius: 4px;
}

div.store-highlight-title {
	font: 36px "OpenSans-Light", "Open Sans SemiBold", "Open Sans";
	color: rgb(45,44,47);
	min-height: 10px;
	margin: 0px;
	padding: 0px;
	text-align: center;
}

div.store-highlight-body {
	max-width: 256px;
	min-height: 256px;
	margin: 16px;
	padding: 0px;
	border: 0px solid #f2f2f2ff;
	border-radius: 4px;
	box-shadow: rgba(0, 0, 0, 0.25) 0px 4px 16px 0px;
	background-repeat: no-repeat;
}

div.store-highlight-body-flat-border {
	box-shadow: none;
	border: 1px solid #ccccccff;
}

.store-highlight-text {
	padding: 8px 0px 8px 0px;
}

.store-highlight-text-line {
	padding: 4px 16px 4px 16px;
}

.store-highlight-text-line span.knxicon {
	font-size: 14px;
	margin: 0px 4px 0px 4px;
	color: rgb(12,75,157);
}

.store-highlight-text-line span.icon {
	color: rgb(12,75,157);
	font-size: 24px;
	margin: 0px 8px 0px 4px;
}

.store-highlight-text-line a {
	font: 14px OpenSans-SemiBold, "Open Sans SemiBold", "Open Sans";
}

.store-highlight-footer {
	margin-top: 32px;
	margin-bottom: 10px;
}

.store-highlight-footer a {
	color: rgb(255,255,255);
	height: 48px;
	margin: 0px;
	padding: 8px 32px 8px 32px;
	border: 2px solid #0c4b9dff;
	border-radius: 4px;
	background: rgb(234,234,234);
	font-size: 18px;
	color: rgb(12,75,157);
}

.store-highlight-footer a#link-see-all-apps {
	margin-top: -3px;
}

.store-highlight-footer a:hover {
	text-decoration: none;
}

div.store-content {
	margin: 0px;
	padding: 16px;
	border: 0px solid #ddddddff;
	border-radius: 4px;
	margin-top: 32px;
}

div.store-content-title {
	font: 18px "OpenSans-Regular", "Open Sans Regular", "Open Sans";
	color: rgb(45,44,47);
	min-height: 10px;
	margin: 0px 0px 10px 0px;
	padding: 0px;
	padding-bottom: 10px;
	border-bottom: 1px solid #ddddddff;
}

div.store-content-body {
	margin: 5px 0px 0px 0px;
}

div.store-content-bordered {
	border: 1px solid #ddddddff;
	border-radius: 6px;
	padding: 8px;
}

div.store-content-body img {
	width: 100%;
	margin: 0px 0px 8px 0px;
	padding: 0px;
}

div.store-content-body-text {
	margin: 0px;
	padding: 0px;
}

div.store-content-body-text-title {
	font: 24px "OpenSans-Light", "Open Sans Light", "Open Sans";
	color: rgb(74,74,74);
	min-height: 10px;
	margin: 8px;
	padding: 0px;
}

div.store-content-body-text-text {
	font: 14px "OpenSans-Regular", "Open Sans Regular", "Open Sans";
	color: rgb(74,74,74);
	min-height: 10px;
	margin: 8px;
	padding: 0px;
}

div.store-content-body-text-text a {
	font: 14px "OpenSans-SemiBold", "Open Sans SemiBold", "Open Sans";
	color: rgb(12,75,157);
	min-height: 10px;
	margin: 0px;
	padding: 0px;
	border-top: 0px solid transparent;
	border-right: 0px solid transparent;
	border-bottom: 1px solid transparent;
	border-left: 0px solid transparent;
	border-radius: 0px;
}

div.store-content-body-element {
	margin: 0px;
	padding: 8px;
}

div.store-content-body-element:hover {
	background: rgb(245,245,245);
}

div.store-content-body-element-picture-container {
	margin: 0px 8px 0px 0px;
	padding: 2px;
	border: 1px solid #ddddddff;
	border-radius: 6px;
	float: left;
	width: 64px;
	height: 64px;
	background-repeat: no-repeat;
	background-position: center;
}

div.store-content-body-element-text {
	height: 70px;
	margin-top: auto;
	margin-bottom: auto;
}

div.store-content-body-element-text a {
	font: 14px OpenSans-SemiBold, "Open Sans SemiBold", "Open Sans";
	color: rgb(12,75,157);
	min-height: 10px;
	margin: 0px;
	padding: 0px;
}

div.store-content-footer {
	padding: 8px 64px 8px 64px;
	border: 2px solid #0c4b9dff;
	border-radius: 4px;
	margin-bottom: 10px;
	margin-top: 16px;
}

div.store-content-footer:hover {
	background-color: #F5F5F5;
}

div.store-content-footer a {
	font: 14px "OpenSans-SemiBold", "Open Sans SemiBold", "Open Sans";
	color: rgb(12,75,157);
	min-height: 10px;
	margin: 0px;
	padding: 0px;
}

div.store-content-footer a:hover {
	text-decoration: none;
}

div.card.border-card-in-card {
	margin: 16px;
	border: 1px solid #ddddddff;
	border-radius: 4px;
}

	.course_type_module {
		cursor: all-scroll;
		border: solid 1px #ccc;
		margin: 5px;
		padding: 2px;
		text-align: center;
		font-weight: bold;
		color: #fff
	}

		.course_type_module.theoretical {
			background-color: #3a87ad;
		}

			.course_type_module.theoretical:hover {
				background-color: #135373;
			}

		.course_type_module.practical {
			background-color: #329c32;
		}

			.course_type_module.practical:hover {
				background-color: #106b10;

			}

		.course_type_module.optional {
			background-color: #bbb;
		}

			.course_type_module.optional:hover {
				background-color: #888
			}

.fixed-top {
	background-color: #fff;
}

#ced-registration-modules .disabled {
    opacity: .5
}

@media (min-width: 992px) {
	div.store-highlight-element {
		margin: 0px;
	}

	div.store-content-bordered {
		height: 532px;
	}

	div.store-content-footer {
		margin: 16px 8px 0px 8px;
	}
}

@media (max-width: 992px) {
	.container-content {
		margin-top: 80px;
	}

	.mobile-navbar-brand {
		left: 45%;
		position: fixed;
	}

	.dropdown-menu.dropdown-menu-right.dropdown-notifications.show {
		position: absolute;
	}
}

@media (max-width: 600px) {
	.mobile-navbar-brand {
		left: 25%;
	}

	.dropdown-notifications {
		left: -187px!important;
	}

	.dropdown-notifications.empty-notification {
		left: -214px!important;
	}
}
