*
{
	box-sizing: border-box;
	max-width: 100vw;

}


body
{
	width: 100%;
	min-width: 600px;
	max-width: 100vw;
	height: 100%;
	min-height: calc(100vh - 70px - 20px - 30vh);
	max-height: 100vh;
	background-color: #ffffff;
	margin: 0px;
	padding: 0px;
	top: 0px;
	bottom: 0px;
	left: auto;
	right: auto;
	font-family: "Josefin Sans", Verdana, Tahoma, Arial, Helvetica, sans-serif;
	font-size: 22px;
	line-height: 1.35;
	text-align: justify;
	overflow: visible;
	overflow-wrap: normal;
}


textarea, input, select, button, legend, label
{
	font-family: "Josefin Sans", Verdana, Tahoma, Arial, Helvetica, sans-serif;
	font-size: 22px;
	line-height: 1.35;
}


header
{
	max-height: 45vh;
	min-height: 90px;
	/* height: 45vh; */
	height: 450px;

	/*	max-width: 645px;
		min-width: 129px;
		width: auto; */

	/* min-height: 90px;
	height: calc(100vh - 70px);
	max-height: 450px; */
	/* text-align: center; */
	top: 0px;
	bottom: 0px;
	left: 0px;
	right: 0px;

	min-width: 100%;
	width: 100%;
	max-width: 100%;
	/* width: 100vw;
	max-width: 100vw; */
	overflow: hidden;
	/*display: block;*/
	background-color: #e6cc99;
	white-space: nowrap;
	margin: 0px;
	padding: 0px;
	display: inline-block;
}


@media only screen and (max-width: 1200px)
{
	header
	{
		max-height: 30vh;
	}
}


section
{
	max-width: 100vw;
}


/*.header-logo
{
	max-height: 450px;
	min-height: 90px;*/
/* height: 69.76744vh; */
/*	height: 100%;

	max-width: 645px;
	min-width: 129px;
	width: 100%;

/*	height: 100%;
	min-height: 90px;
	max-height: 450px;
	width: 100%;
	min-width: 129px;*/
/*	margin: 0px;
	padding: 0px;
	position: absolute;
	top: 0px;
	/* margin-left: auto;
	margin-right: auto; */
/*	text-align: center;
} */


.header-logo img
{
	max-height: 450px;
	min-height: 90px;
	height: 45vh;

	max-width: 645px;
	min-width: 129px;
	width: auto;

	/*display: inline-block;*/
	position: absolute;
	/*left: 50%;
	right: 50%;*/
	top: 0px;


	left: 50%;
	-webkit-transform: translate(-50%, 0);
	-moz-transform: translate(-50%, 0);
	transform: translate(-50%, 0);

}


@media only screen and (max-width: 1200px)
{
	.header-logo img
	{
		height: 30vh;
	}
}


.header-left
{
	height: 100%;
	/* min-height: 90px; */
	background-color: #b3b3ff;

	min-width: 50%;
	width: 50%;
	max-width: 50%;

	display: inline-block;
	margin: 0px;
	padding: 0px;
}


.header-left-top
{
	height: 35.16078%;
	background-color: #80cc99;
	/*overflow: hidden;*/
	margin: 0px;
	padding: 0px;
	display: block;
}


.header-left-bottom
{
	height: 64.83922%;
	background-color: #b3b3ff;
	/*overflow: hidden;*/
	margin: 0px;
	padding: 0px;
	display: block;
}


.header-right
{
	height: 100%;
	background-color: #e6cc99;
	min-width: 50%;
	width: 50%;
	max-width: 50%;
	display: inline-block;
	margin: 0px;
	padding: 0px;
}


nav
{
	width: 100%;
	max-width: 100vw;
	height: 70px;
	min-height: 40px;
	line-height: 70px;
	background-color: rgba(255, 255, 255, 1.0);
	overflow: visible;
	margin: 0px;
	padding: 0px;
	border: none;
	display: table;
	/* position: -webkit-sticky; /* Safari
	position: sticky; */
	top: 0px;
	/*vertical-align: middle;*/
	text-align: center;
}


nav > a
{
	min-height: 70px;
	height: 70px;
	/* line-height: 26px; */
	line-height: 70px;
	vertical-align: bottom;
	text-align: center;
	overflow: visible;
	overflow-wrap: normal;
	display: inline-block;
	/* padding: 8px; */
	margin: 0px;
	/* margin-right: -0.4EM; */
	/* background-color: gold; */
	font-weight: bold;
	text-decoration: none;
	text-transform: uppercase;
	/*width: 160px;*/
	padding-left: 24px;
	padding-right: 24px;
	min-width: 160px;
	color: #000000;
}


nav > a > div
{
	position: relative;
	display: table-cell;
	vertical-align: middle;
	/* top: 50%;
	-webkit-transform: translate(0, -50%);
	-moz-transform: translate(0, -50%);
	transform: translate(0, -50%); */
}


/* nav > a::before
{
	height: 70px;
	line-height: 70px;
	display: inline-block;
	vertical-align: bottom;
} */


nav > a:visited
{
	color: #000000;
}


nav > a:hover
{
	color: #7b5c1f;
	text-shadow: #ffffff 0 0 7px, #7b5c1f 0 0 30px;
	/*	background-color: orange; */
	background-color: rgba(0, 0, 0, 0.1);
	text-decoration: none;
}


nav > a:active
{
	color: #cc9933;
	text-shadow: #ffffff 0 0 3px, #ffffff 0 0 7px, #cc9933 0 0 15px;
}


/* The sticky class is added to the navbar with JS when it reaches its scroll position */
.sticky
{
	position: fixed;
	top: 20px;
	width: 100%;
	background-color: red;
}


.camp-heading
{
	font-weight: bold;
	text-align: center;
	margin-bottom: 0px;
	line-height: normal;
}


h2.event-heading
{
	font-weight: bold;
	text-align: center;
}


.camp-past
{
	color: #777777;
	font-size: 70%;
}


.camp-date
{
	font-weight: bold;
	text-align: center;
	margin-top: 0px;
	margin-bottom: 0px;
}


.camp-time
{
	text-align: center;
	margin-top: 0px;
	margin-bottom: 0px;
}


.camp-venue
{
	text-align: center;
	margin-top: 0px;
	margin-bottom: 0px;
}


.camp-cost
{
	font-weight: bold;
	margin-top: 0px;
	margin-bottom: 0px;
}


.contact-us-fieldname
{
	font-weight: bold;
	margin-bottom: 0px;
}


.contact-us-info
{
	margin-top: 0px;
}


.hidden
{
	display: none;
}


.indent
{
	margin-left: 30px;
}


.sticky
{
	position: fixed;
	top: 0px;
	width: 100%;
}


.heading
{
	font-size: 35px;
	font-family: "Permanent Marker", cursive;
	text-transform: uppercase;
	min-height: 50px !important;
	/* height: 50px; */
	vertical-align: middle;
	text-align: center;
	margin-top: 0px;
	margin-bottom: 0px;
	padding: 0px;
	padding-left: 16px;
	padding-right: 16px;
}


.heading > a
{
	padding-top: 70px;
}


@media only screen and (max-width: 1200px)
{
	.heading > a
	{
		padding-top: 140px;
	}
}


@media only screen and (max-width: 800px)
{
	.heading > a
	{
		padding-top: 210px;
	}
}


h1
{
	font-weight: normal;
	clear: both;
	/* height: 50px; */
	min-height: 50px;
	line-height: 50px;
	vertical-align: middle;
}


.content
{
	width: 1064px;
	/*max-width: 1064px;*/
	/*max-width: 90vw;*/
	max-width: 100%;
	min-width: 300px;
	margin-left: auto;
	margin-right: auto;
	margin-top: 0px;
	margin-bottom: 0px;
	padding-top: 16px;
	padding-bottom: 16px;
	padding-left: 32px;
	padding-right: 32px;
	clear: both;
}


/*.content > .copyright-footer
{
	display: none;
	height: 0px;
	padding: 0px;
	margin: 0px;
}*/


.pane-gold
{
	background-color: rgba(203, 152, 50, 0.2);
}


.pane-blue
{
	background-color: rgba(101, 101, 254, 0.2);
}


.pane-green
{
	background-color: rgba(0, 153, 51, 0.2);
}


.pane-purple
{
	background-color: rgba(152, 0, 203, 0.2);
}


.pane-red
{
	background-color: rgba(254, 0, 0, 0.2);
}


.pane-orange
{
	background-color: rgba(254, 101, 0, 0.2);
}


.pane-yellow
{
	background-color: rgba(254, 254, 0, 0.2);
}


.pane-gold > h1
{
	background-color: rgba(203, 152, 50, 0.6);
}


.pane-blue > h1
{
	background-color: rgba(101, 101, 254, 0.6);
}


.pane-green > h1
{
	background-color: rgba(0, 153, 51, 0.6);
}


.pane-purple > h1
{
	background-color: rgba(152, 0, 203, 0.6);
}


.pane-red > h1
{
	background-color: rgba(254, 0, 0, 0.6);
}


.pane-orange > h1
{
	background-color: rgba(254, 101, 0, 0.6);
}


.pane-yellow > h1
{
	background-color: rgba(254, 254, 0, 0.6);
}


.dates
{
	/* height: 300px; */
}


.about-nautilus
{
	/* height: 300px; */
}


.events
{
	/* height: 300px; */
}


.photo-gallery
{
	height: 300px;
}


.previous-papers
{
	height: 300px;
}


.mathematician-of-the-month
{
	height: 300px;
}


.problem-of-the-week
{
	height: 300px;
}


.read-some-more
{
	height: 300px;
}


.staff
{
	/* height: 300px; */
}


.contact-us
{
	/* height: 300px; */
}


footer
{
	height: 20px;
	max-height: 20px;
	font-size: 14px;
	line-height: 20px;
	vertical-align: middle;
	text-align: center;
	width: 100%;
	max-width: 100%;
	/*overflow: hidden;*/
}


.copyright-footer
{
	font-size: 14px;
	height: 20px;
	min-height: 20px;
	max-height: 20px;
	line-height: 20px;
	vertical-align: middle;
	text-align: center;
	width: 100%;
	max-width: 100%;
	margin: 0px;
	bottom: 0px;
	position: fixed;
	/*
	top: 50%;
	-webkit-transform: translate(0, -50%);
	-moz-transform: translate(0, -50%);
	transform: translate(0, -50%);
	*/
}


.question-papers-download
{
	display: inline-block;
	text-align: center;
	width: 244px;
	height: 380px;
	padding-right: 20px;
	padding-bottom: 32px;
}


.question-papers-download > a > img
{
	border: 1px #000000 solid;
	width: 226px;
	height: 320px;
	/*padding-right: 31px;*/
}


.question-papers-download > a > img:hover
{
	border: 1px #a9a9a9 solid;
	background-color: green;
}


.prize-winner
{
	display: table-row;
}


.prize-winner-place
{
	display: table-cell;
	width: 40px;
	vertical-align: top;
	text-align: left;
}


.prize-winner-name
{
	display: table-cell;
	width: 250px;
	text-align: left;
	vertical-align: top;
}


.prize-winner-school
{
	display: table-cell;
	width: 250px;
	text-align: left;
	vertical-align: top;
}


.newsletter-thumbnail
{
	text-align: center;
}
