@font-face{font-family:MuseoSans;font-style:normal;font-weight:300;src:url("/fonts/MuseoSans_300Web.eot");src:url("/fonts/MuseoSans_300Web?#iefix") format("embedded-opentype"),url("/fonts/MuseoSans_300Web.woff") format("woff")}@font-face{font-family:MuseoSans;font-style:italic;font-weight:300;src:url("/fonts/MuseoSans_300_ItalicWeb.eot");src:url("/fonts/MuseoSans_300_ItalicWeb?#iefix") format("embedded-opentype"),url("/fonts/MuseoSans_300_ItalicWeb.woff") format("woff")}@font-face{font-family:MuseoSans;font-style:normal;font-weight:500;src:url("/fonts/MuseoSans_500Web.eot");src:url("/fonts/MuseoSans_500Web?#iefix") format("embedded-opentype"),url("/fonts/MuseoSans_500Web.woff") format("woff")}@font-face{font-family:MuseoSans;font-style:italic;font-weight:500;src:url("/fonts/MuseoSans_500_ItalicWeb.eot");src:url("/fonts/MuseoSans_500_ItalicWeb?#iefix") format("embedded-opentype"),url("/fonts/MuseoSans_500_ItalicWeb.woff") format("woff")}@font-face{font-family:MuseoSans;font-style:normal;font-weight:700;src:url("/fonts/MuseoSans_700Web.eot");src:url("/fonts/MuseoSans_700Web?#iefix") format("embedded-opentype"),url("/fonts/MuseoSans_700Web.woff") format("woff")}@font-face{font-family:MuseoSans;font-style:italic;font-weight:700;src:url("/fonts/MuseoSans_700_ItalicWeb.eot");src:url("/fonts/MuseoSans_700_ItalicWeb?#iefix") format("embedded-opentype"),url("/fonts/MuseoSans_700_ItalicWeb.woff")}

body {
    padding-top: 40px;
    padding-bottom: 120px;
    font-family: MuseoSans, "HelveticaNeue", "Helvetica Neue", Helvetica, Arial, sans-serif;
}

.zf-green {
    color: #68b604;
}

.btn-success {
    background-color: #57a900;
    background-image: -moz-linear-gradient(top, #70d900, #57a900);
    background-image: -ms-linear-gradient(top, #70d900, #57a900);
    background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#70d900), to(#57a900));
    background-image: -webkit-linear-gradient(top, #70d900, #57a900);
    background-image: -o-linear-gradient(top, #70d900, #57a900);
    background-image: linear-gradient(top, #70d900, #57a900);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#70d900', endColorstr='#57a900', GradientType=0);
}

.btn-success:hover,
.btn-success:active,
.btn-success.active,
.btn-success.disabled,
.btn-success[disabled] {
    background-color: #57a900;
}

.btn-back{
	-webkit-border-top-right-radius:0 !important;
	-webkit-border-top-left-radius:0 !important;
	-webkit-border-bottom-right-radius:0 !important;
	-moz-border-top-right-radius:0 !important;
	-moz-border-top-left-radius:0 !important;
	-moz-border-bottom-right-radius:0 !important;
	border-top-right-radius:0 !important;
	border-top-left-radius:0 !important;
	border-bottom-right-radius:0 !important;	
}

.navbar-inverse .navbar-brand, .navbar-inverse .navbar-nav > li > a{
	text-shadow:0 0 0;
}

div.container a.navbar-brand > img {
    display: inline;
    margin-right: 4px;
    margin-top: -2px;
}

.no-gutter{
	padding:0 !important;
}
.no-row-spacing{
	margin-top:0 !important;
	padding-top:0 !important;
	margin-bottom:0 !important;
	padding-bottom:0 !important;
}

.no-bottom-gutter{
	padding-bottom:0 !important;
}

.row.no-margin{
	margin-left:0;
	margin-right:0;
}
.no-top-gap{
	margin-top:0 !important;
}
.no-bottom-gap{
	margin-bottom:0 !important;
}

.absolute{
	position:absolute;
}

.absolute.bottom{
	top:auto;
	bottom:15px;
}

.container-fluid{
	padding-left:0;
	padding-right:0;
	max-width:100%;
	overflow-x:hidden;
}

/**
 * 	grids
 */
.grid{
	display:grid;
	grid-gap: 15px;
}

.grid-item{
	position:relative;
}
.grid-8-4{
	grid-template-columns: 0.6fr 0.4fr;
}
.grid-2 .grid-item:last-child,
.grid-8-4 .grid-item{
	grid-column:1;
	grid-row:1;
}
.grid-8-4 .grid-item:last-child{
	grid-column:2;
}

.grid-8-4 .grid-item{
	padding-top:30px;
	padding-bottom:30px;
}

/*
 * flex
 */
@media (min-width:992px) {
	.flex{
		display:flex;
		width:100%;
	}

	.flex-center{
		justify-content:center;
	}
	.flex-bottom{
		margin-bottom:auto;
	}


	.flexbox .container-flex,
	.flexbox .row-flex{
		display:flex !important;
		justify-conten:center;
	}
	.flexbox .row-flex{
		width:100%;
	}
	.flexbox .col-product{
		align-self:stretch;
	}
	.flexbox .col-product .box{
		height:100%;
	}
}

@media (max-width: 991px) {
	.col-product,
	.item-list .col-xs-6{
		width:100% !important;
	}

	.item-list .col-xs-6:nth-child(2n){
		padding-left: 15px !important;
	}
	.item-list .col-xs-6:nth-child(2n+1){
		padding-right: 15px !important;
	}
	body{
		padding-bottom:200px;
	}

	.filter-item,
	.filter-container{
		float: left;
		display: inline;
		width:100% !important;
	}

	form#customer{
		margin-bottom: 100px !important;
	}
}


.flexbox .bg-default .row-flex{
	background:#ecf3f8 !important;
	padding-bottom:30px !important;
}

/**
 * 	Forms
 */

.form-control{
	border-bottom: 1px solid rgba(0,0,0,0.075);
	-webkit-box-shadow: 0 0 0;
	box-shadow: 0 0 0;
}

.checkbox-group label{
	width:100%;
	font-weight:normal;
}
.checkbox-group label input{
	margin-right:15px;
}
/**
 * 	Icons
 */
.icon,
.icon-product{
	background-size:auto 50%;
	background-repeat:no-repeat;
	background-position:center;
}
.icon-s{
	min-width:48px;
	min-height:51px;
}

.icon-left{
	background-position:left center;
}

.icon-search{
	background-image:url('../img/search.png');
}
.icon-filter{
	background-image:url('../img/filter.png');
	cursor:pointer;
}

.icon-profile{
	background-image:url('../img/user-profile.png');
}
.icon-email{
	background-image:url('../img/email.png');
}
.icon-phone{
	background-image:url('../img/phone.png');
}
.icon-email.alt{
	background-image:url('../img/email-inv.png');
}
.icon-phone.alt{
	background-image:url('../img/phone-inv.png');
}

.icon-chevron-right.alt{
	background-image:url('../img/chevron-right-alt.png');
}

.icon-cart{
	background-image:url('../img/cart.png');
}

.locked,
.locked.inverted,
.locked.inverted:focus,
.locked.inverted:hover{
	width:100%;
	background-size:contain;
	background-repeat:no-repeat;
	background-position:center bottom;
	background-image:url('../img/lock.png');
}
.locked.inverted,
.locked.inverted:focus,
.locked.inverted:hover{
	background-image:url('../img/lock-inverted.png');
}
.btn.locked.inverted,
.locked.inverted:focus,
.locked.inverted:hover{
	background-size:auto 80%;
	background-position:center;
}

.icon-product{
	background-size:contain;
	background-position:center bottom;
	height:35px;
}

i.icon{
	padding-left:48px;
	padding-top:5px;
	padding-bottom:5px;
	background-size:contain;
	line-height:inherit;
}
i.icon:hover,
i.icon:focus,
.icon-filter:hover,
.icon-filter:focus{
	filter:grayscale(100%);
}

.r-icon{
	padding:15px 0 15px 20px;
	margin-right:60px;
	background-repeat:no-repeat;
	background-position:left center;
}

.r-icon.desc{
	background-image:url('../img/sort-desc.png');
}
.r-icon.asc{
	background-image:url('../img/sort-asc.png');
}
.r-icon.neutral{
	background-image:url('../img/sort-neutral.png');
}


/**
 * 	fonts
 */

h1,h2,h3,.h1,.h2,.h3,.pub-price,.btn-price{
	color:#f23962;
}
.bg-highlight{
	color:#fff;
}
.text-primary,h4 a, h5 a{
	color:#576b71;
}
.text-grey{
	color:#b2babc;
}
.bg-highlight h1,
.bg-highlight h2,
.bg-highlight h3,
.bg-highlight h4,
.bg-highlight h5{
	color:inherit;
}
.bg-highlight a{
	color:#b2babc;
}

#search-banner h1{
	font-size:30px;
	margin-bottom:20px;
	color:#fff;
}

.product a:hover,
.product a:focus{
	text-decoration:none;
}

.heading-underline{
	border-bottom:1px solid #b2babc;
	padding-bottom:20px;
	margin-bottom:16px;
}

.remove-cart-item{
	color:#b2babc;
}

#nav-functions li a.btn-login:hover,
#nav-functions li a.btn-login:focus{
		background-position: 0 0 !important;
		border-radius:3px !important;
		border:1px solid #f23962 !important;
		background: #df0f3d !important;
}

#nav-functions li a.btn-register:hover,
#nav-functions li a.btn-register:focus{
		border:1px solid #b2babc !important;
		color:#b2babc !important;
		background: #fff !important;
}

.navbar-inverse .navbar-toggle .icon-bar{
	background-color: #f23962 !important;
}
	
/**
 * 	Functional nav (customer profile ...)
 */
@media(max-width:991px){
	#nav-functions{
		width:auto;
		position:absolute;
		top:-4px;
		left:auto;
		right:80px;
	}

	#nav-functions li,
	#nav-functions li a{
		position: relative;
		float:left !important;
		display: inline !important;
	}
}


/**
 * 	Frontend customer slide-in panel
 */
#customer-panel{
	position:fixed;
	top:0;
	left:auto;
	right:0;
	width:100%;
	z-index:1100;
	background-color:#f23962;
	height:100%;
	margin-right:-100%;
	-webkit-transition: margin-right 0.5s ease-in-out;
	-moz-transition: margin-right 0.5s ease-in-out;
	transition: margin-right 0.5s ease-in-out;
	padding-top:15px;
}
#customer-panel.panel-active{
	-webkit-transition: margin-right 0.5s ease-in-out;
	-moz-transition: margin-right 0.5s ease-in-out;
	transition: margin-right 0.5s ease-in-out;
	margin-right:0;
}

#customer-panel-body{
	margin-top:3em;
	margin-bottom:3em;
}

#customer-panel .btn-plain{
	color:#fff;
	border:1px solid #fff;
	padding:5px 10px 5px 10px;
}
#customer-panel .btn-plain:hover,
#customer-panel .btn-plain:focus{
	color:#f23962;
	background-color:#fff;
}
.nav-customer li,
.nav-customer li a{
	margin:0;
	padding:0;
	color:#fff;
}

.nav-customer li{
	margin:0 0 5px 0;
	padding:10px 0 5px 0;
	border-top:1px solid #fff;
}

.nav-customer li a:hover,
.nav-customer li a:focus{
	color:#b2babc;
	background:transparent;
}

/**
 * 	Form search
 */
#search-banner{
	width:100%;
	top:50%;
	transform: translateY(-50%);
}

#searchUserForm{
	margin-left:10px;
	width:70px;
	font-size:24px;
}

#search-home{
	padding-left:30px;
	padding-right:30px;
}

#filter-wrap{
	display:none;
}

#filter,.filter-container{
	background:#f23962;
	color:#fff;
}
#filter a,
#filter a:hover,
#filter a:focus,
#filter p,
#filter .fas{
	color:inherit;
}
.filter-item-heading,
.filter-item-heading:hover,
.filter-item-heading:focus{
	border-bottom:1px solid #fff;
	min-width:200px !important;
	position:relative;
	display:block;
	text-align:center;
	text-decoration: none;
	line-height:30px;
}
.filter-item-heading,.filter-item{
	font-size:16px;
	font-weight:100;
}
.result-info{
	padding-top:10px;
}

@media (min-width: 992px){
	#filter .container{
		justify-content: center;
		display:flex;
	}
}


.filter-item{
	width:200px;
	position:relative;
	margin:30px 5px 30px 5px;
}

.filter-container{
	position:absolute;
	z-index:998;
	padding:15px;
	top:51px;
	width:200px;
	display:none;
}
.filter-values{
	list-style:none;
	margin:0;
	padding:0;
	max-height:300px;
	overflow:auto;
}
.filter-values li{
	max-width: 100%;
	overflow:hidden;
	white-space:nowrap;
	text-overflow:ellipsis;
}

.btn-filter{
	margin-top:15px;
	background:#fff !important;
	border-color:#fff !important;
	color:#f23962 !important;
}

.filter-close{
	font-size:30px;
	padding-left:30px;
	font-weight:100;
	text-decoration: none;
}

#search-head{
	padding-top:2em !important;
	background-image:url('../img/bg-shadow.png');
	background-repeat:repeat-x;
}

/**
 * 	container
 */
.bg-default,
.bg-white{
	background:#ecf3f8;
	margin-top:1em;
	margin-bottom:1em;
}
.bg-white{
	background:#fff;
}
.bg-highlight{
	background:#b90c32;
}

.row-default{
	margin-top:2em;
	padding-bottom:1em;
}

.margin-top{
	margin-top:2em;
}

/**
 * 	boxes
 */
.box{
	float:left;
	position:relative;
	display:inline;
	width:100%;
}

.box-white{
	background:#fff;
}

.box-pad-left{
	padding-left:2em;
}

.box-pad-bottom{
	padding-bottom:2em;
}
.box-payment-method{
	padding-bottom:50px;
}

.pad-bottom{
	padding-bottom:30px;
}
.pad-bottom.large{
	padding-bottom:65px;
}

.product,
.publication{
	text-align:center;
	padding:15px 15px 15px 15px;
	margin-bottom:1em;
	margin-top:1em;
	transition: all 0.5s ease-in-out;
}

/**
 * badges
 */
.badge-count{
	position:absolute;
	top:5px;
	right:10px;
	background:#b90c32;
	transition: all 0.5s;
}
.scaled{
	transition: all 1s;
	-webkit-transform: scale(1.2);
	-moz-transform: scale(1.2);
	transform: scale(1.2);
}

/**
 * 	publication list
 */
.pub-list{
	min-height:300px;
}
.pub-latest .pub-item{
	display:none;
}
.pub-latest .pub-item:nth-child(1),
.pub-latest .pub-item:nth-child(2),
.pub-latest .pub-item:nth-child(3),
.pub-latest .pub-item:nth-child(4){
	display:block;
}
.pub-date,
.pub-price{
	float:left;
	display:inline-block;
}

.pub-price{
	float:right;
}
.publication{
	text-align:left;
	padding:15px;
}

.pub-list .pub-company,
.pub-list .pub-label{
	white-space: nowrap; 
	overflow: hidden;
	text-overflow: ellipsis;
	width:100%;
}

.pub-company,
.pub-target-price,
.pub-rating{
	color:#44575b;
}

.pub-label{
	color:#576b71;
	font-size:16px;
	padding-top:5px;
}

.pub-company{
	font-size:20px;
	padding-top:1em;
}

.pub-value{
	margin-top:40px;
}

.pub-value div:first-child{
	border-right:1px solid #576b71;
}

.pub-target-price,
.pub-rating{
	font-size:24px;
	font-weight:300;
}

.pub-buttons .btn-group{
	width:100%;
}

/**
 * 	Publication detail view
 */

.pub-synopsis,.pub-synopsis p{
	text-align:justify;
}

.pub-image{
	background:transparent;
	padding:0;
	margin:0 0 2em 0;
}

.pub-buttons{
	margin-top:2em;
}

#result-container{
	padding-top:1em;
	padding-bottom:1em;
}

.pub-details{
	margin-top:2em;
}
.pub-properties,
.pub-analysts{
	width:100%;
	float:left;
	display:inline-block;
	margin-top:	2em;
}

.pub-analysts dt,
.pub-analysts dd{
	float:left;
	display:inline-block;
	margin:0;
	width:100%;
	padding:5px 0 5px 0;
	font-weight:300;
}
.pub-properties td{
	width:50%;
	padding:5px 0 5px 0;
	font-weight:300;
	border-bottom:1px solid #576b71;
	vertical-align:top;
}

/**
 * 	Lists
 */

 .list-group-item.item-passive{
 	border:0;
 }
 .list-group-item{
 	border-color:#b2babc;
 }
 .list-group-col-header{
 	margin:30px 15px 0 0;
 }

/**
 * 	checkout
 */
.list-group{
	-webkit-box-shadow: 0 0 0;
	-moz-box-shadow: 0 0 0;
	box-shadow: 0 0 0;
}
.checkout-list{
	width:100%;
	margin-top:9px;
}
.checkout-list .list-group-item{
	border-left:0;
	border-right:0;
}


/**
 * 	products
 */

.product:hover,
.product:focus{
	-webkit-filter:grayscale(100%);
	-moz-filter:grayscale(100%);
	filter:grayscale(100%);
	transition: all 0.5s ease-in-out;
}

/**
 * 	sales contact (big layer on home)
 */
#sales-contact .box{
	background:#f23962;
	float:right;
	text-align:center;
	color:#fff;
}


/**
 * 	buttons
 */

.btn{
	border-radius:3px;
}

.btn-darkgrey{
	background:#576b71;
	border-color:#576b71;
	color:#fff;
}

.btn-grey,
.btn-darkgrey:hover,
.btn-darkgrey:focus{
	background:#a0a8ab;
	border-color:#a0a8ab;
	color:#fff;
}


.btn-grey:hover,
.btn-grey:focus{
	background:#44575b;
	border-color:#44575b;
	color:#fff;
}

.btn-white{
	background:#fff;
	border-color:#f23962;
	color:#f23962;
}

.fill{
	width:100%;
}

#apply-profile{
	left:auto;
	right:15px;
}

.btn-primary,
.navbar-inverse .navbar-nav > li > a.btn-primary{
	color:#fff;
}

.navbar-inverse .navbar-nav > li > a.btn{
	height: auto;
	padding:3px 15px 3px 15px;
	margin:6px 0 0 15px;
}

.btn-close{
	font-size:40px;
	background:#fff;
	border:0;
	font-weight:100;
	margin:0 0 15px 0;
	padding:0;
	line-height:30px;
}

.btn-plain{
	padding:0;
	margin:0;
}

#result .pub-buttons .btn{
	float:right;
}
#result .btn-price,
#result .btn-buy{
	width:35%;
	margin-left:2.5%;
	margin-right:2.5%;
}

.btn-price,
.btn-price:hover
.btn-price:focus{
	cursor:default !important;
	color:#f23962  !important;
}

#result .pub-date{
	float:left;
	max-width:80%;
}

.col-btn-cart{
	text-align:center;
}
.btn-cart img{
	max-height:25px;
	margin-top:3px;
}

#result .btn-cart img{
	max-height:44px;
	margin:0;
}

.button-centered{
	width:100%;
	text-align:center;
}
.button-centered button,
.button-centered input{
	margin:0px auto;
}

/**
 * 	helper classes
 */

.hidden-xsd{
	display:none;
}

.no-border,
.nav-customer li.no-border{
	border:0;
}

.grid-divider{
	border-top:15px solid #ecf3f8;
}

/**
 * 	carousel
 */
.carousel{
	padding-top:30px;
	padding-bottom:30px;
}
.carousel-control{
	background:transparent !important;
	display:none;
}

.carousel-indicators{
	top:auto;
	bottom:0;
}
.carousel-indicators li{
	background-color:transparent;
	border-color:#d10e39;
}
.carousel-indicators li.active,
.carousel-indicators li:hover,
.carousel-indicators li:focus{
	background-color:#d10e39;
}

@media(max-width:320px){
	h2{
		font-size:20px;
	}
	h3{
		font-size:14px;
	}
	h4{
		font-size:12px;
	}
	
	.item-list .col-xs-6:nth-child(even){
		padding-left:7.5px;
	}
	.item-list .col-xs-6:nth-child(odd){
		padding-right:7.5px;
	}
	.product{
		margin-top:0;
	}
}

@media(max-width:480px){
	h2{
		font-size:24px;
	}
	h3{
		font-size:16px;
	}
	h4{
		font-size:14px;
	}
	
	.item-list .col-xs-6:nth-child(even){
		padding-left:7.5px;
	}
	.item-list .col-xs-6:nth-child(odd){
		padding-right:7.5px;
	}
	.product{
		margin-top:0;
	}
}

@media(min-width:768px){
	.container{
		padding-left:15px;
		padding-right:15px;
	}
	
	.grid-2{
		grid-template-columns: 1fr 1fr;
	}

	.grid-2 .grid-item:last-child{
		grid-column:auto;
		grid-row:auto;
	}
	
	#search-home{
		padding-left:15px;
		padding-right:0px;
	}

	#sales-contact .box{
		width:215px;
		height:215px;
		padding-top:15px;
	}
	
	#sales-contact img{
		max-height:48px;
	}
	
	.icon-product{
		height:70px;
	}
	
	#result .btn-price,
	#result .btn-buy{
		width:30%;
	}
	
	.pub-image{
		margin:0;	
	}
	
	
	
	.pub-properties{
		margin-top:0; 
	}
	.pub-analysts dt,
	.pub-analysts dd{
		width:auto;
	}
	.pub-analysts dt{
		max-width:20%;
		padding-right:0.5em;
	}
	.pub-analysts dd{
		max-width:70%;
	}
	
	.navbar-fixed-bottom{
		position:fixed;
		top:auto;
		bottom:0;
		z-index:1003;
	}
	
	#customer-panel{
		width:50%;
		margin-right:-50%;
	}
	
	.analyst-image{
		height:148px;
		overflow:hidden;
	}
}

@media(min-width:992px){
	/**
	 * 	company listing
	 */
	
	.company-list{
		display:grid;
		grid-template-columns: auto auto auto; 
	}
	
	
	.page-heading{
		padding:1em 0 1em 0;
	}
	
	.margin-top{
		margin-top:0;
	}
	
	#customer-panel{
		width:33%;
		margin-right:-33%;
	}
	#customer-panel.panel-active{
		margin-right:0;
	}
	.navbar-collapse{
		width:auto;
		float:left;
	}
	
	
}

@media(min-width:1200px){
	#search-banner h1{
		font-size:50px;
		margin-bottom:40px;
		color:#fff;
	}

	#search-home,#filter-nav{
		padding-left:85px;
	}
	
	#sales-contact{
		padding-right:85px;
	}
	
	#sales-contact .box{
		width:320px;
		height:320px;
		padding-top:55px;
	}
	
	.product{
		text-align:center;
		padding:50px 15px 50px 15px;
	}
	
	.container{
		max-width:100%;
		width:auto;
	}
	
	.analyst-image{
		height:212px;
	}
}

@media(min-width:1400px){
	.container{
		max-width:1300px;
	}
	
	#search-banner{
		overflow:hidden;
		max-width:100%;
	}
	
	.analyst-image{
		height:244px;
	}
}

@media(min-width:1600px){
	.container{
		max-width:1480px;
	}
	
	#customer-panel{
		width:23%;
		margin-right:-23%;
	}
}
