.form-input {
	height: 30px;
	line-height: 30px;
	padding: 3px;
}
.form-input label {
	display: inline-block;
	width: 20%;
	text-align: right;
	height: 30px;
	line-height: 24px;
	font-weight: bold;
	color: #666;
}
.spinner {
	margin: 10px auto 0;
	width: 70px;
	text-align: center;
	display: none;
}

.spinner > div {
	width: 18px;
	height: 18px;
	background-color: #e42d1a;

	border-radius: 100%;
	display: inline-block;
	-webkit-animation: sk-bouncedelay 1.4s infinite ease-in-out both;
	animation: sk-bouncedelay 1.4s infinite ease-in-out both;
}

.spinner .bounce1 {
	-webkit-animation-delay: -0.32s;
	animation-delay: -0.32s;
}

.spinner .bounce2 {
	-webkit-animation-delay: -0.16s;
	animation-delay: -0.16s;
}

@-webkit-keyframes sk-bouncedelay {
	0%, 80%, 100% { -webkit-transform: scale(0) }
	40% { -webkit-transform: scale(1.0) }
}

@keyframes sk-bouncedelay {
	0%, 80%, 100% { 
		-webkit-transform: scale(0);
		transform: scale(0);
	} 40% { 
		-webkit-transform: scale(1.0);
		transform: scale(1.0);
	}
}

.newsstand-item-title-wrapper.newsstand-left .newsstand-item-title {
	margin-bottom: 1rem;
}
.calendar-races-container {
	overflow-x: auto;
}

.alert-races {
	background: #d7181d;
    color: #fff;
    font-weight: bold;
}
.advanced-search a:hover, .modal a:hover {
	color: #d7181d;
}

#calendar-races {
	background: #eee;
	border: none;
	display: none;
}
#calendar-races thead tr th {
	background: #333;
	font-weight: bold;
	font-size: .8rem;
	padding: 1rem;
	white-space: nowrap;
}
#calendar-races thead tr th:first-child {
	text-align: left;
}
#calendar-races tbody tr:hover {
	background: #d7181d;
	color: #fff;
	cursor: pointer;
	transition: all .3s ease-in-out;
}
#calendar-races tbody tr:hover td {
	color: #fff;
	transition: all .3s ease-in-out;
}
#calendar-races tbody tr td {
	border: 1px solid #aaa;
	border-bottom: none;
	font-size: .85rem;
	color: #333;
	padding: 1rem;
}
#calendar-races tbody tr td:first-child {
	border-left: none;
	text-align: left;
}
#calendar-races tbody tr td:last-child {
	border-right: none;
}
.search-marathon label {
	display: block;
}
.search-marathon .two label {
	display: inline-block;
}
.search-marathon select {
    max-width: 100%;
}

/* Detail race modal */
.modal {
    display: none; /* Hidden by default */
    position: fixed; /* Stay in place */
    z-index: 99999; /* Sit on top */
    padding-top: 12%;
    left: 0;
    top: 0;
    width: 100%; /* Full width */
    height: 100%; /* Full height */
    overflow: auto; /* Enable scroll if needed */
    background-color: rgb(0,0,0); /* Fallback color */
    background-color: rgba(0,0,0,0.4); /* Black w/ opacity */
}

/* Modal Content */
.modal-content.container {
    background-color: #fff;
    margin: auto;
    padding: 20px;
    border: 1px solid #888;
    width: 640px;
    position: relative;
}
.modal-content ul {
    list-style: none;
    margin: 0;
}
.modal-content ul li {
    color: #333;
	font-size: 0.85rem;
}
#region-filter .provinces-container {
	display: none;
}
#calendar-pagination {
	padding: .3rem;
}
#calendar-pagination .page_number {
	display: inline-block;
	background: #333;
	color: #fff;
	font-weight: bold;
	text-align: center;
	width: 2rem;
	height: 2rem;
	line-height: 2rem;
	margin: .3rem;
	transition: all .3s ease-in-out;
}
#calendar-pagination .page_number.active, #calendar-pagination .page_number:hover {
	background: #e42d1a;
	cursor: pointer;
}

@media screen and (max-width: 768px) {
	#myModal {
		padding-top: 0;
	}
	.modal-content .map-container {
		border-left: none;
		padding: 0;
		margin-bottom: 1rem;
	}
	.modal-content.container {
		width: auto;
		border: none;
	}
}

#map_canvas {
	height:250px;
	width:100%;
	display: none;
}
.map-container {
	padding: 2rem;
	border-left: 1px solid #ccc;
}

/* The Close Button */
.close {
    color: #aaaaaa;
    float: right;
    font-size: 28px;
    font-weight: bold;
    line-height: normal;
    display: block;
    position: absolute;
    right: 8px;
    top: 0;
}
.close:hover,
.close:focus {
    color: #000;
    text-decoration: none;
    cursor: pointer;
}
.distanceBox {
	overflow: hidden;
    padding-bottom: .6rem;
    border-bottom: 1px solid #ddd;
    margin-bottom: 10px;
}
.distanceBox .container {
	display: flex;
}
#distancebox-container .newsstand-widget-title {
    margin-bottom: 12px;
}
.distanceBox .date, .distanceBox button, .distanceBox .distance {
	background: #999;
    color: #fff;
    font-weight: bold;
    text-align: center;
    font-size: .9rem;
    display: block;
    border: none;
    align-items: center;
    justify-content: center;
    display: flex;
    flex-direction: column;
}
.distanceBox button {
    padding: .25rem;
    margin-top: .25rem;
    cursor: pointer;
    font-size: .85rem;
}
.distanceBox span {
	line-height: normal;
    font-size: 1.1rem;
    display: block;
}
.distanceBox .start_day {
    font-size: 1.2rem;
}
.distanceBox button {
    width: 100%;
}
.distanceBox .race .race_data {
	color: #222;
	padding: 0 .6rem;
	transition: all .3s ease-in-out;
}
.distanceBox .race .race_data:hover {
	color: #d7181d;
	cursor: pointer;
}
.distanceBox .race .race_data .next_date {
    background: #1b96e4;
    color: #fff;
    font-weight: bold;
    width: 4rem;
    text-align: center;
}
.distanceBox .container .image {
	/* background-size: 40% auto; */
	background-position: 50% 0;
	background-repeat: no-repeat;
	background-color: #fff;
    min-height: 90px;
}
@media screen and (max-width: 768px) {
	.newsstand-content .newsstand-item {
		margin: 0;
	}
}