/* General */

body {
	color: #000000;
	font-family: 'Open Sans', sans-serif;
	margin: 0px;
	padding: 0px;
}

hr {					/* use border to work in all browsers */
	height: 1px;
	background-color: transparent;
	border: 0px;
	border-top: 1px solid;
	margin: 5px 50px 5px 50px;
}

hr.loc {
	text-align: left; 		/* IE */
	margin-left: 0px; 		/* Mozilla */
	margin-right: 0px;
	border-top: 1px solid #000000;
}

img {
	margin: 0px;
	border: 0px;
	padding: 0px;
}

H1, H2, H3, p, .center, .right {
    overflow: hidden;
}

/* Fonts */

H1, H2, H3 {
	font-family: 'Lusitana', serif;
	font-weight: 700;
}

H1 {
	font-size: 22px;
	margin: 5px 0px 15px 0px;
}

H2 {
	font-size: 20px;
	margin: 5px 0px 5px 0px;
}

H3 {
	font-size: 18px;
	margin: 5px 0px 5px 0px;
}

p {
	font-size: 16px;
	color: #000000;
}

a {
	text-decoration: underline;
}

a.button {
	color: #FFF;
	display: inline-block;
    font-size: 14px;
	text-decoration: none;
	line-height: 160%;
	margin: 5px 5px 2px 0px;
	padding: 0 4px;
	border-radius: 5px;
    border: solid 1px;
}

a.button:hover {
	color: #FFF;
}

input, select, textarea {
	font-size: 14px;
}

.center {
	text-align: center;
	overflow: hidden;
}

.right {
	text-align: right;
}

.small {
	font-size: small;
}

.centersmall {
	font-size: small;
	text-align: center;
}

.xsmall {
	font-size: small;
}

.centerxsmall {
	font-size: x-small;
	text-align: center;
}

.thinline {
	font-size: 8px;
}

.warn {
    color: #990000;
}

.code, .code p {
	font-family: 'Courier New', Courier, monospace;
	font-size: 10pt;
}

.PG-17, .Adult, .faq-button, .series-button {
	font-family: 'Open Sans', sans-serif;
    font-size: x-small;
    text-decoration: none;
    vertical-align: middle;
    margin: 5px;
    margin-bottom: 7px;
    border: solid 1px #330000;
    padding: 1px 3px 1px 3px;
}

.PG-17 {
    color: #330000;
    background-color: #FF9900;
}

.Adult {
    color: #330000;
    background-color: #CC3300;
}

.series-button {
	color: #ffffff;
}

a.PG-17:hover, a.Adult:hover {
    color: #330000;
}

.PG-17, .Adult, .series-button {
	display: inline-block;
	margin: 0px 0px 4px 8px;
}

h1 .PG-17, h1 .Adult, h1 .series-button {
	margin: 0px 0px 12px 12px;
}

/* Forms */

form {
	margin: 0px;
	border: 0px;
	padding: 0px;
}

input, select, textarea, button {
	background-color: #F6F6F6;
	margin: 0px 5px 0px 5px;
}

input {
	line-height: 1.2;
}

fieldset {
	border: 0px;
	padding: 10px;
}

legend {
	font-size: medium;
	font-weight: bold;
	padding-bottom: 10px;
}

input.submit {
	background-color: #F6F6F6;
	font-weight: bold;
}

input.hidden {
    visibility: hidden;
}

.short {
    display: inline;
	line-height: 180%;
}

form.long label, form.long input, form.long select, form.long textarea, form.long a, form.long fieldset.radio-group legend {
	display: block;
	float: left;
	margin-bottom: 10px;
	font-weight: normal;
}

form.long legend a {
	display: inline;
	float: none;
	margin: 0px 3px 0px 3px;
}

form.long input, form.long textarea {
    margin-left: 0px;
	padding-left: 0px;
}

form.long select {
    margin-left: 0px;
	padding-left: 0px;
}

form.long label, form.long fieldset.radio-group legend {
	text-align: right;
	width: 150px;
	padding-right: 20px;
}

form.long br {
	clear: left;
}

form.long label.nomargin {
  display: inline;
  float: none;
  margin-right: 5px;
  padding-right: 0px;
}

form.long input.nomargin, form.long select.nomargin {
  display: inline;
  float: none;
}

form.long fieldset.radio-group {
	padding: 5px 0px 0px 0px;
}

form.long fieldset.radio-group label {
	display: inline;
	padding-right: 10px;
	text-align: left;
	width: auto;
}

form.long fieldset.radio-group input {
	display: inline;
}

/********************************************/
/*                  LAYOUT                  */
/********************************************/

/* Outer, green box */

div#page {
	margin-bottom: 10px;
	margin-left:auto; 
	margin-right:auto;
	padding: 10px;
	max-width: 1200px;
}

/********************************************/
/*              TOP SECTIONS                */
/********************************************/

/* Inner sections: top (logo, news, login), middle (links, content), bottom (copyright info)  */

#top, #content, #bottom {
	border-radius: 5px;
}

div#top {
	background-color: #ffffff;
	border: solid #000000 1px;
	margin-bottom: 5px;
	position: relative;
}

div#top-logo {
	background-color: #ffffff;
	background-repeat: no-repeat;
	background-size: auto 226px;
	height: 226px;
	max-width: 524px;
	float: left;
	position: relative;
	width: 50%;
}

div#top-logo-fade {
	background-color: #ffffff;
	background: linear-gradient(90deg, rgba(255,255,255,0), rgba(255,255,255,1));
	position: absolute;
	height: 226px;
	top: 0;
	right: 0;
	width: 33%;
}

div#top-text {
	height: 206px;
	margin: 20px 0 0 0;
	text-align: center;
}

div#top-text form,
div#top-text p {
	font-size: 12px;
}

div#top-text h1#news-logo {
	font-size: 24px;
	margin: 0;
	padding-bottom: 20px;
}

div#top-text p#news-text {
	margin: 0;
	padding: 0 20px 0 20px;
	height: 90px;
}

div#login {
	margin: 0px;
	font-size: 12px;
}

input.login {
 	font-family: arial, Helvetica, sans-serif;
	font-size: 8pt;
}

input.login-submit {
	font-size: 8pt;
	padding: 1px 3px 1px 3px;
}


/********************************************/
/*              LINKS SECTION               */
/********************************************/

div#links {
	font-size: 12px;
	line-height: 28px;
	text-align: right;
	white-space: nowrap;
	height: 26px;
	margin: 0px;
	border: 0px;
	padding: 0px 5px 0px 5px;
	margin-top: 2px;
}

ul#mainlinks, ul#adminlinks {
	border: 0;
	padding: 0;
	margin: 0;
}

ul#mainlinks {
	float: left;
}

ul#mainlinks li, ul#adminlinks li {
	display: inline;
	list-style-type: none;
}

ul#mainlinks a,
ul#adminlinks a {
	border: solid #000000 1px;
	color: #FFF;
	margin: 3px 5px 0px 0px;
	padding: 3px 7px 3px 7px;
	border-top-left-radius: 5px;
	border-top-right-radius: 5px;
	font-size: 12px;
	font-weight: 700;
	text-decoration: none;
	height: 25px;
}

ul#mainlinks a.selected,
ul#adminlinks a.selected {
	background-color: #ffffff;
	border-bottom: solid #FFF 1px;
}

ul#adminlinks a {
	text-align: right;
}

/********************************************/
/*           CONTENT SECTIONS               */
/********************************************/

div#content {
	font-size: medium;
	line-height: 1.2;  /* To fix bug in IE */
	background-color: #ffffff;
	border: solid #000000 1px;
	margin: 0px 0px 5px 0px;
	padding: 20px;
}

/* Sidelinks */

div#sidelinks {
	width: 168px;
	float: left;
    overflow: auto;
	border: solid 2px;
}

div#sidelinks p {
	background-color: #ffffff;
    font-size: small;
    margin: 5px;
    padding: 5px;
	border: solid 1px;
}

div#sidemain {
    overflow: auto;
    padding: 1px;
    margin-left: 180px;
    border: 0px;
	min-height: 500px;
}

/* Contents */

div#contents {
	font-size: medium;
	margin-bottom: 20px;
}

div#contents ul {
	text-align: center;
	padding: 0px;
	margin: 0px;
}

div#contents li {
	line-height: 220%;
	font-size: small;
	display: inline-block;
	list-style-type: none;
}

div#contents a {
	white-space: nowrap;
	text-decoration: none;
	margin: 0px;
	margin-right: 5px;
	padding: 3px 10px;
	color: #FFF;
	border-radius: 5px;
    border: solid 1px;
}

/* Pictures */

div.picture {
	font-size: small;
	font-weight: bold;
	text-align: center;
}

img.picture, img.picture-small {
	display: inline;
	margin: 5px;
	border: solid 3px;
	width: auto;
	height: auto;
}

img.picture {
	max-width: 800px;
	max-height: 800px;
}

img.picture-small {
	max-width: 280px;
	max-height: 280px;
}

div.picture-thumb-ctr {
	display: inline-block;
    margin: 5px 8px 5px 8px;
	width: 100px;
	height: 100px;
	overflow: hidden;
}

#picture-ctr {
	float: right;
	position: relative;
}

.picture-thumb-box {
	border-style: solid;
	border-width: 2px;
	margin: 8px; /* small picture margin + border */
	position: absolute;
	z-index: 1000;
}

.picture-thumb-box-corner {
	position: absolute;
	z-index: 1000;
}

#picture-type {
	float: right;
}

#picture-type img {
	width: 32px;
	height: 32px;
	margin-right: 5px;
	vertical-align: middle;
}

/* Location pictures */

#location-carousel {
	background-color: white;
	margin-bottom: 20px;
	max-width: 728px;
}

#location-carousel .carousel-control-prev,
#location-carousel .carousel-control-next {
	width: 5%;
}

#location-carousel .carousel-item a {
	text-decoration: none;
}

div.loc-item {
	height: 240px;
	background-repeat: no-repeat;
}

div.loc-item h2 {
	position: absolute;
	text-shadow: 1px 1px 2px white;
}

div.loc-item p {
	position: absolute;
	background-color: white;
	font-size: 14px;
	padding: 5px;
	opacity: 80%;
	text-align: justify;
	margin-bottom: 0;
	border-radius: 3px;
}

@media (max-width: 632px) {
	div.loc-item h2,
	div.loc-item p {
		display: none;
	}
}

/* Tables */

th {
	font-weight: bold;
}

table.listpeople {
	background-color: #ffffff;
	margin-left: auto;
	margin-right: auto;
	border: 1px solid;
}

table.listpeople caption {
    font-size: medium;
    font-weight: bold;
    margin-left: auto;
    margin-right: auto;
    margin-top: 2px;
    margin-bottom: 10px;
    padding: 0px;
}

table.listpeople th, table.listpeople td {
	text-align: left;
	border: 1px solid;
	padding: 3px;
}

table.listpeople th {
	color: #FFF;
}

table.listpeople td {
	background-color: #ffffff;
}

table.npcform {
	margin-left: auto;
	margin-right: auto;
}

table.npcform th, table.npcform td {
	text-align: center;
	border: 1px solid #666666;
	padding: 3px;
}

table.npcform td {
    padding-top: 7px;
}

/* Locations */

span.levelone {
	border: solid 1px #000000;
	border-radius: 6px;
	color: #FFFFFF;
	display: inline-block;
	font-size: 12px;
	font-weight: bold;
	padding: 1px 3px 1px 3px;
	vertical-align: top;
}

/* FAQ */

h2.faq {
	color: #FFF;
	margin-top: 3px;
	margin-bottom: 5px;
	padding: 2px;
	clear: right;
}

ul.faq-subsections, ul.faq-questions, div.faq {
	margin: 0px;
	border: 0px;
	border-top: solid 1px;
	border-bottom: solid 3px;
}

div.faq {
    margin-bottom: 3px;
	padding: 10px 3px 15px 3px;
}

ul.faq-subsections, ul.faq-questions {
    font-size: small;
	padding: 3px 3px 5px 20px;
}

ul.faq-subsections li, ul.faq-questions li {
    margin-bottom: 5px;
}

ul.faq-subsections a, ul.faq-questions a {
    font-size: medium;
}

ul.faq-subsections a {
    font-weight: bold;
}

/* Calendar */

div#calendar, a.day {
    border: solid 1px;
	border-radius: 5px;
}

div#calendar {
    overflow: hidden;
    display: inline-block;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 10px;
    padding: 5px;
	text-align: left;
}

a.day {
    display: inline-block;
    font-weight: bold;
    text-decoration: none;
	background-color: #FFF;
	width: 72px;
	height: 65px;
    padding: 3px;
    overflow: hidden;
}

img.weather, img.weather-day {
	width: 32px;
	height: 32px;
	margin: 1px;
}

img.weather {
    float: right;
}

img.event, img.event-day {
	width: 25px;
	height: 25px;
	margin: 1px;
}

img.event {
    margin-top: 15px;
}

img.weather-day, img.event-day {
    float: left;
    margin-right: 10px;
}

img.event-graduation {
	border-radius: 15px;
}

.newsletter { 
    padding-left: 15px;
    padding-right: 15px;
    text-align: justify;
}

/* Stats */
.stat_body, .col_body {
    margin-left: 200px;
    text-align: center;
}

.stat_ctr {
    display: inline-block;
    vertical-align: top;
    padding: 0 30px 10px 30px;
    max-width: 400px;
}

.stat_ctr h2 {
    margin-bottom: 10px;
}

.stat_notes {
    font-style: italic;
    text-align: left;
}

.stat_notes li {
    font-size: 14px;
}

.column1 {
    display: inline-block;
    vertical-align: top;
    width: 49%;
}

/* Awards */
.award_image {
    display: inline-block;
    padding: 5px 10px 5px 0;
}

.award_image img {
    width: 72px;
    height: 72px;
}

.award_image .award_image_count {
    font-size: 15px;
    font-weight: bold;
    display: block;
    text-align: center;
}

.award_tile {
    background-image: url('CrayonAwards/Icons/tile_other.png');
    color: #ffffff;
    text-shadow: 1px 1px 2px #000000;
    margin: 0px;
}

.award_tile a {
    color: #ffffff;
}

.award_tile span {
    display: inline-block;
    padding: 3px;
}

.award_tile .award_detail {
    float: right;
}

.award_tile.award_tile_male {
    background-image: url('CrayonAwards/Icons/tile_male.png');
}

.award_tile.award_tile_female {
    background-image: url('CrayonAwards/Icons/tile_female.png');
}

.award_graphic {
    display: inline-block;
    padding: 5px;
    margin-right: 10px;
    vertical-align: top;
}

.award_graphic img,
.award_graphic .award_graphic_label {
    width: 128px;
    height: 128px;
    display: block;
}

.award_graphic .award_detail {
    display: block;
    text-align: center;
    margin-top: 5px;
}

/* Story form */
#processResult {
    color: #990000;
}

#story-pictures {
	text-align: center;
}

#location-pictures .location-picture,
#story-pictures .story-picture {
	display: inline-block;
	padding-bottom: 10px;
	text-align: center;
}

#location-pictures .location-picture {
	font-size: 14px;
	max-width: 150px;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	margin-right: 10px;
}

@media (min-width: 1100px) {
	#story-pictures {
		float: right;
		margin-right: 50px;
		max-width: 240px;
	}
}

/* Series form */

#series-form-stories {
	margin-top: 15px;
}

#series-form-stories li {
	min-height: 24px;
}

#series-form-stories .move-buttons {
	float: left;
	margin-right: 5px;
}

#series-form-stories .move-buttons button {
	font-size: 12px;
	margin: 0 1px;
}

#form-series-stories ol > li > ul {
    list-style: none;
	padding: 10px 10px 0 0;
}

#form-series-stories ol > li > ul > li label {
	margin-bottom: 2px;
	padding: 0;
	text-align: left;
    width: 100%;
}

/********************************************/
/*           BOTTOM SECTION                 */
/********************************************/

div#bottom {
	background-color: #ffffff;
	border: solid #000000 1px;
	text-align: center;
	font-size: 10px;
	margin: 0px;
	padding: 10px;
}