html
{
}

body /* visualized to look like a grey background, that a white piece of paper is on */
{
	background-color: #ddd;
	color: #000;
	font-family: georgia,verdana,arial;
	display: flex;
	justify-content: center;
}



/* links */

a
{
	text-decoration: none;
}

a:link
{
	color: #009;
}

a:visited
{
	color: #900;
}

a:hover
{
	color: #f00;
	text-decoration: underline;
}

a:active
{
	color: #ff0;
}



/* paper -- renders like an actual piece of white paper on a gray background */

div.paper /* contains site header, page body, and site footer */
{
	font-size: 18px;
	background-color: #fff;
	width: 100%; /* force to be wide when text content does not; such as cv & contact pages */
	max-width: 1024px; /* restrict page to be only so wide, such as when maximized in desktop */
	margin: 50px;
	padding: 50px;
}



/* site header */

div.siteHeader /* contains site title, site subtitle, social, and menu */
{
	color: #000;
	background-color: #fff;
	font-family:  georgia,verdana,arial;
	text-align: center;
	padding-top: 50px;
	padding-bottom: 50px;
}



/* site header contents */

div.siteTitle
{
	font-size: 64px;
	font-variant: small-caps;
	font-weight: bold;
	margin-top: -15px; /* to nullify the extra ~15px the font adds at top*/
	margin-bottom: 0px;
}

div.siteSubtitle
{
	font-size: 24px;
	font-variant: all-small-caps;
	font-weight: bold;
}

div.social
{
	text-align: right;
	margin-top: 0px;
	margin-bottom: 0px;
}

div.menu
{
	font-size: 24px;
	font-variant: small-caps;
}



/* page */

div.page /* contains page title and page body (which contains page headings) */
{
	color: #000;
	background-color: #fff;
	font-family:  georgia,verdana,arial;
	padding: 0px;
	padding-top: 0px;
	padding-bottom: 50px;
}



/* page contents */

div.pageTitle
{
	font-family: georgia,verdana,arial;
	font-size: 42px;
	text-align: center;
	text-transform: uppercase;
	padding-top: 0px;
	padding-bottom: 25px;
}

div.pageBody
{
	margin-top: 0px;
}

div.pageHeading1
{
	/* text-align: center; */
	font-family: georgia,verdana,arial;
	font-size: 38px;
	font-variant: small-caps;
	/* border-bottom: 1px solid #ddd; */
	padding-top: 50px;
	padding-bottom: 20px;
	padding-left: 50px;
	padding-right: 50px;
}

div.pageHeading2
{
	font-family: georgia,verdana,arial;
	font-size: 24px;
	/*font-weight: bold;*/
	font-variant: small-caps;
	padding-top: 25px;
	padding-bottom: 10px;
	padding-left: 50px;
	padding-right: 50px;
}

div.normal
{
	padding-top: 0px;
	padding-left: 100px;
	padding-right: 100px;
	font-family: georgia,verdana,arial;
	font-size: 18px;
}

div.cv
{
	margin: 25px;
}


/* lists */
ul
{
	list-style-type: disc;
	margin-left: -25px; /* to offset indentation list already has */
}


/* tables */

table
{
	padding: 0px;
	margin-top: 25px;
	border-spacing: 0px;
}

th
{
	border-bottom: 1px solid #ddd;
	font-size: 18px;
	font-weight: bold;
	padding: 15px;
	text-align: center; 
}

td
{
	font-size: 16px;
	padding-top: 10px;
	padding-bottom: 10px;
	padding-left: 15px;
	padding-right: 15px;
}



/* site footer */

div.siteFooter
{
	color: #000;
	background-color: #fff;
	font-family: georgia,verdana,arial;
	font-size: 12px;
	text-align: center;
	padding: 0px;
	padding-top: 50px;
	border-top: 1px solid #ddd;
}
