/* Default custom select styles */
div.cs-select {
	display: inline-block;
	vertical-align: middle;
	position: relative;
	text-align: left;
	background: #fff;
	z-index: 100;
	width: 100%;
	max-width: 500px;
	-webkit-touch-callout: none;
	-webkit-user-select: none;
	-khtml-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
}

div.cs-select:focus {
	outline: none; /* For better accessibility add a style for this in your skin */
}

.cs-select select {
	display: none;
}

.cs-select span {
	display: block;
	position: relative;
	cursor: pointer;
	padding: 20px;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

/* Placeholder and selected option */
.cs-select > span {
	padding-right: 3em;
}

.cs-select > span::after,
.cs-select .cs-selected span::after {
	speak: none;
	position: absolute;
	top: 50%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

.cs-select > span::after {
	font: normal normal normal 14px/1 FontAwesome;
	content: '\25BE';
	right: 1em;
}

.cs-select .cs-selected span::after {
	font: normal normal normal 14px/1 FontAwesome;
	content: '\f00c';
	margin-left: 1em;
	font-size: 12px;

}

.cs-select.cs-active > span::after {
	-webkit-transform: translateY(-50%) rotate(180deg);
	transform: translateY(-50%) rotate(180deg);
}

div.cs-active {
	z-index: 200;
}

/* Options */
.cs-select .cs-options {
	position: absolute;
	overflow: hidden;
	width: 100%;
	background: #fff;
	visibility: hidden;
}

.cs-select.cs-active .cs-options {
	visibility: visible;
}

.cs-select ul {
	list-style: none;
	margin: 0;
	padding: 0;
	width: 100%;
}

.cs-select ul span {
	padding: 2em;
}

.cs-select ul li.cs-focus span {
	background-color: #ddd;
}

/* Optgroup and optgroup label */
.cs-select li.cs-optgroup ul {
	padding-left: 1em;
}

.cs-select li.cs-optgroup > span {
	cursor: default;
}


div.cs-skin-border {
	background: transparent;
	font-family: 'Montserrat', sans-serif;
	font-size: 13px;
	font-weight: normal;
	max-width: 600px;
}

@media screen and (max-width: 30em) {
	div.cs-skin-border { font-size: 1em; }
}

.cs-skin-border > span {
	border: 1px solid #000;
	text-transform: uppercase;
	border-color: inherit;
	-webkit-transition: background 0.2s, border-color 0.2s;
	transition: background 0.2s, border-color 0.2s;
}

.cs-skin-border > span::after,
.cs-skin-border .cs-selected span::after {
	font: normal normal normal 14px/1 FontAwesome;
	content: '\f063';
	font-size: 12px;

}

.cs-skin-border ul span::after {
	content: '';
	opacity: 0;
}

.cs-skin-border .cs-selected span::after {
	font: normal normal normal 14px/1 FontAwesome;
	content: '\f00c';
	color: #cc0000;
	font-size: 12px;
	opacity: 1;
	-webkit-transition: opacity 0.2s;
	transition: opacity 0.2s;
}

.cs-skin-border.cs-active > span {
	background: #fff;
	border-color: #fff;
	color: #333;
}

.cs-skin-border .cs-options {
	color: #333;
	font-size: 13px;
	opacity: 0;
	-webkit-transition: opacity 0.2s, visibility 0s 0.2s;
	transition: opacity 0.2s, visibility 0s 0.2s;
}

.cs-skin-border.cs-active .cs-options {
	opacity: 1;
	-webkit-transition: opacity 0.2s;
	transition: opacity 0.2s;
}

.cs-skin-border ul span {
	padding: 10px 20px;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
}

.cs-skin-border .cs-options li span:hover,
.cs-skin-border li.cs-focus span {
	background: #f5f5f5;
}
