input[type=range] {
    /*removes default webkit styles*/
    -webkit-appearance: none;

    /*fix for FF unable to apply focus style bug */
    border: 1px solid white;

    /*required for proper track sizing in FF*/
    width: 100%;

    margin: 10px 0 0;
}

input[type=range]::-webkit-slider-runnable-track {
    width: 100%;
    height: 5px;
    background: #ddd;
    border: none;
    border-radius: 3px;
}

input[type=range]::-webkit-slider-thumb {
    -webkit-appearance: none;
    border: none;
    height: 16px;
    width: 16px;
    border-radius: 50%;
    background: #0058a4;
    margin-top: -5px;
}

@media only screen and (max-width: 500px) {
	input[type=range]::-webkit-slider-thumb {
		height: 30px;
		width: 30px;
		margin-top: -12px;
	}
}

input[type=range]:focus::-webkit-slider-runnable-track {
    background: #ccc;
}


input[type=range]::-moz-range-track {
    width: 100%;
    height: 5px;
    background: #ddd;
    border: none;
    border-radius: 3px;
}

input[type=range]::-moz-range-thumb {
    border: none;
    height: 16px;
    width: 16px;
    border-radius: 50%;
    background: #0058a4;
}

input[type=range]:focus::-moz-range-thumb {
    border: none;
    height: 16px;
    width: 16px;
    border-radius: 50%;
    background: #0058a4;
	box-shadow: 0 0 0 6px #f8d44c;
	transition: 0.3s; 
}

input[type=range]:focus::-webkit-slider-thumb {
    -webkit-appearance: none;
    border: none;
    height: 16px;
    width: 16px;
    border-radius: 50%;
    background: #0058a4;
    margin-top: -5px;
	box-shadow: 0 0 0 6px #f8d44c;
	transition: 0.3s; 
}

@media only screen and (max-width: 500px) {
	input[type=range]::-moz-range-thumb {
		height: 30px;
		width: 30px;
	}
}

/*hide the outline behind the border*/
input[type=range]:-moz-focusring{
    outline: 1px solid white;
    outline-offset: -1px;
}

input[type=range]::-ms-track {
    width: 100%;
    height: 5px;

    /*remove bg colour from the track, we'll use ms-fill-lower and ms-fill-upper instead */
    background: transparent;

    /*leave room for the larger thumb to overflow with a transparent border */
    border-color: transparent;
    border-width: 20px 0;

    /*remove default tick marks*/
    color: transparent;
}

input[type=range]::-ms-fill-lower {
    background: #777;
    border-radius: 10px;
}

input[type=range]::-ms-fill-upper {
    background: #ddd;
    border-radius: 10px;
}

input[type=range]::-ms-thumb {
    border: none;
    height: 16px;
    width: 16px;
    border-radius: 50%;
    background: #0b6bb5;
}

@media only screen and (max-width: 500px) {
	input[type=range]::-ms-thumb {
		height: 30px;
		width: 30px;
        margin-top: 0;
	}
}

input[type=range]:focus::-ms-fill-lower {
    background: #888;
}

input[type=range]:focus::-ms-fill-upper {
    background: #ccc;
}

/*turn off default focus*/
input.ns-slider__Item:active, input.ns-slider__Item:focus {
    outline: none;
    outline-offset: 0;
    text-decoration: none;
}


