* {
	box-sizing: border-box;
}

html, body {
	margin: 0;
	padding: 0;
}

.pagewrap {
	max-width: 1450px;
	margin: 0 auto;
}

.header {
	padding-top: 24px;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	height: auto;
	min-height: 160px;
	overflow: visible;
}

.logo {
	display: block;
	flex: 0 0 180px;
	height: 194px;
	background: url(images/logo.png) no-repeat;
	background-size: contain;

	text-indent: -9999px;
	overflow: hidden;
	white-space: nowrap;
}

.logo:hover {
	cursor: pointer;
}

.centerTop {
	overflow: hidden;
	background-position: center;
	background-size: contain;
	flex: 1;
	min-width: 0;
	height: 158px;
	width: 62%;
	max-width: 100%;
	background: url(images/race.jpg) no-repeat;
	display: flex;
	margin: 0 .5% 10px 0;
}

.rightTop {
	flex: 0 0 180px;
	color: #a4a199;
	width: 20%;
	vertical-align: top;
	display: flex;
	margin: -12px 0 0 8px;
}





.gallery {
	display: flex;
	flex-wrap: wrap;
	flex-direction: column;
	gap: 10px;
	justify-content: flex-start;
}

.gallery a {
	display: flex;
	gap: 10px;
	justify-content: flex-start;
	flex-wrap: wrap; /* optional */
}

.gallery img {
	display: flex;
	gap: 10px;
	justify-content: flex-start;
}

.thumbnail-container {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;   /* centers rows */
    gap: 20px;                 /* spacing between thumbnails */
    padding: 0 20px;           /* ensures left/right breathing room */
    box-sizing: border-box;
}

.whitebkgnd {
    display: flex;
    justify-content: center;
    padding: 0 20px;
}

.whitebkgnd iframe {
    width: 100%;
    max-width: 580px;
    aspect-ratio: 580 / 740;
    height: auto;
    border: none;
}

.bgpic {
	display: block;
	max-width: 100%;
	height: auto;
	display: block;
	margin: 20px auto;
}

.responsive-video {
    display: block;
	max-width: 100%;
	height: auto;
	display: block;
	margin: 20px auto;
}

.responsive-audio {
    display: block;
    width: 100%;
    max-width: 720px;
    height: auto;
    margin: 20px auto;
}

ul {
	margin: 0;
	padding: 0;
}

li {
	display: block;
	padding: 0;
	margin: 10px;
	list-style: none;
}

li a {
	text-decoration: none;
	text-align: center;
	font: bold 18px Arial, sans-serif;
	padding: 8px 70px;
	line-height: 1;
	color: #444;
	border: none;
	background-color: #fff;
	background: -webkit-linear-gradient(#fff, #bbb);
	background: -o-linear-gradient(#fff, #bbb);
	background: -moz-linear-gradient(#fff, #bbb);
	background: linear-gradient(#fff, #bbb);
	border-radius: 23px;
	box-shadow: 0 1px 2px rgba(0, 0, 0, 0.5);
}





.footer {
	text-align: center;
}

.footer p {
	text-align: center;
}

.primary {
	line-height: 1;
	text-align: center;
}

.primary ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 8px;
	margin: 0;
	padding: 0;
}

.primary li {
	margin: 0;
}

.primary a {
	margin: 0;
	display: inline-block;
}

.secondary {
	text-align: center;
	margin: 48px 0 36px 0;
}

.secondary a {
	margin: 24px 4% 0 4%;
}

/* =========================
   MEDIA QUERIES
   ========================= */

@media all and (max-width: 1450px) {
	.pagewrap { width: 100%; }
	.header { width: 100%; }
	.logo { width: 16%; }
	.centerTop { width: 58%; }
	.rightTop { width: 22%; }
	.rightTop div { width: 18%; margin: 22px 1% 0 0; }
	nav { width: 100%; }
	.centeredText {
   		margin: 0 0 40px 0;
		text-align: center;
	}
	.mainPic { width: 100%; }
	.mainPicBlank { width: 100%; margin: 0 0 440px 0; }
	.mainHead { width: 100%; margin: 0 auto 30px auto; }
	.coderpic { width: 100%; }
	.primary { margin: 24px 4px; }
	.regText { margin: 10px 84px 50px 84px; }
}

@media all and (max-width: 1250px) {
	.logo { width: 16%; }
	.centerTop { width: 56%; }
	.rightTop { width: 26%; }
	.rightTop div { width: 14%; margin: 22px 3% 0 0; }
	.rightTop p { width: 18%; }
	.centeredText {
   		margin: 0 0 40px 0;
		text-align: center;
	}
	.mainPic { width: 100%; }
	.mainPicBlank { width: 100%; margin: 0 0 480px 0; }
	.mainHead { margin: -20px 0 30px 0; }
	.primary { margin: 24px 4px; }
	.regText { margin: 10px 84px 50px 84px; }
}

@media all and (max-width: 1080px) {
	.logo { width: 20%; }

	.centerTop {
		width: 44%;
		background: url(images/racead1.jpg) no-repeat;
		background-size: contain;
		display: flex;
		margin: 0 .5% 0 0;
	}

	.rightTop {
		width: 32%;
		margin: -8px 5px 50px 23%;
	}

	.rightTop div { width: 16%; margin: 22px 10px 0 0; }
	.rightTop p { width: 100%; }

	.mainHead { margin: -20px 0 30px 0; }

	.centeredText {
   		margin: 0 0 40px 0;
		text-align: center;
	}

	.mainPic { width: 100%; margin: 0 0 -240px 0; }
	.mainPicBlank { width: 100%; margin: 0 0 460px 0; }

	.primary { margin: 24px 4px; }
	.regText { margin: 10px 84px 50px 84px; }
}

@media all and (max-width: 950px) {
	.logo { width: 29%; }

	.centerTop {
		width: 70%;
		background: url(images/racead1.jpg) no-repeat;
		background-size: contain;
		display: flex;
	}

	.rightTop {
		width: 60%;
		margin: 0 19% 50px 19%;
	}

	.rightTop div { width: 18%; margin: 22px -10px 0 0; }
	.rightTop p { width: 18%; }

	.mainHead { margin: -20px 0 30px 0; }

	.centeredText {
   		margin: 0 0 40px 0;
		text-align: center;
	}

	.mainPic { width: 100%; margin: 0 0 -240px 0; }
	.mainPicBlank { width: 100%; margin: 0 0 280px 0; }

	.primary { margin: 24px 4px; }
	.regText { margin: 10px 10% 50px 10%; }
}

@media all and (max-width: 600px) {
	.logo { width: 58%; }

	.header { margin: 0; }

	.centerTop {
		width: 40%;
		background: url(images/racead2.jpg) no-repeat;
		background-size: contain;
		display: flex;
	}

	.rightTop {
		width: 70%;
		margin: -40px 14% -20px 14%;
	}

	.rightTop div { width: 18%; margin: 22px 2% 0 2%; }
	.rightTop p { width: 18%; }

	.mainHead { margin: 30px 0; }

	.centeredText {
   		margin: 0 0 40px 0;
		text-align: center;
	}

	.mainPic { width: 100%; margin: 0 0 -380px 0; }
	.mainPicBlank { width: 100%; margin: 0 0 190px 0; }

	.primary { margin: -40px 4px 24px 4px; }
	.regText { margin: 10px 10% 50px 10%; }
}