/* 
 * Begin of images definitions. 
 */
table.image_wrapper img {
	max-width: 100%;
	max-height: 100%;
}

table.image_wrapper {
	margin-top: 50px;
	margin-bottom: 50px;
	margin-left: auto;
	margin-right: auto;
}

table.image_wrapper td.caption {
	font-style: italic;
	padding-top: 10px;
	line-height: 1.25;
}
/* 
 * End of images definitions. 
 */

/* 
 * Begin of header definitions. 
 */
#navigation_bar_div {
	padding: 20px;
	display: flex;
	flex-flow: row wrap;
	justify-content: flex-end;
	align-items: center;
}

#breadcrumb_div {
	border-top: 1px solid #AFAFAF;
	background-color: transparent;
	display: flex;
	flex-flow: row wrap;
	justify-content: flex-end;
	color: #AFAFAF;
}

.breadcrumb_item, .breadcrumb_first_item, .breadcrumb_separator,
		.breadcrumb_last_item, .breadcrumb_last_separator {
	line-height: 30px;
	border-bottom: 1px solid #AFAFAF;
	padding: 0 5px;
	text-align: center;
}

.breadcrumb_first_item {
	padding-left: 10px;
	border-left: 1px solid #AFAFAF;
	border-bottom-left-radius: 10px;
}

.breadcrumb_separator, .breadcrumb_last_separator {
	width: 15px;
	padding: 0px;
}
.breadcrumb_last_item {
	padding-right: 10px;
	border-right: 1px solid #AFAFAF;
	border-bottom-right-radius: 10px;
}

.breadcrumb_item a:link, .breadcrumb_first_item a:link, .breadcrumb_item a:visited,
	.breadcrumb_first_item a:visited {
	color: #636373;
}

.breadcrumb_item a:hover, .breadcrumb_first_item a:hover,
	.breadcrumb_item a:active, .breadcrumb_first_item a:active {
	color: #FFD900;
	text-decoration: underline
}

#navigation_bar_div .icon {
	height: 32px;
	vertical-align: -20%;
	margin: 8px 10px;
}

#navigation_bar_div .title {
	margin-left: 10px;
	margin-right: 40px;
	font-weight: bold;
}

#navigation_bar_div h1 {
	flex-basis: 1px;
	flex-grow: 1;
	margin: 0px;	
}
/* 
 * End of breadcrumb section. 
 */

/* 
 * Begin of loading dialog section. 
 */
@keyframes overlay_opaque_animation {        
  from {
	opacity: .0;
  }
  to {
	opacity: .5;
  }      
}

#overlay_div {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 100;
	background: #aaa;
	opacity: .0;	
}

#overlay_div.run_opaque_animation {
  	animation: overlay_opaque_animation 5s linear 1 2s forwards;
}
 
div.loading_dialog {
	padding: 0px;
    background-color: #EDEDED;
    border-radius: 15px !important;	
} 

#loading_dialog_content_div {
    border-radius: 15px;
	display: flex;
	justify-content: center;
	align-items: center;
	align-content: center;
	flex-wrap: wrap;
	padding: 0px;
	opacity: 0.95;
	overflow: hidden;
}
 
.loading_icon_wrapper {
	font-size: 300%;
	color: #D40000;
}

.loading_text {
	font-weight: bold;
	margin-top: 5px;
	font-size: 90%;
}

.loading_dialog .ui-dialog-titlebar {
	display: none;
}
/* 
 * End of loading dialog section. 
 */

/* 
 * Begin of global definitions. 
 */
h1, h2, h3, h4, h5, h6 {
	width: 100%;
	padding: 5px;
	font-family: "Palatino Linotype", "Book Antiqua", Palatino, serif;
	text-align: left;
	color: #E71D36;
}

h1 {
	font-size: 230%;
	font-weight: bold;
	color: #2E294E;
	margin-bottom: 40px;
}

h2 {
	font-size: 190%;
	margin: 35px 0px 15px;
	font-weight: bold;
}

h3 {
	font-size: 150%;
	margin-bottom: 10px;
	font-style: italic;
}

h4 {
	font-size: 120%;
	color: inherit;
}

* {
	box-sizing: border-box;
}

html, body {
	width: 100%;
	margin: 0px;
}

li {
	list-style-type: circle;
}

li li {
	list-style-type: disc;
}

li li li {
	list-style-type: square;
}

ul, li {
	line-height: 1.25;
}

ul {
	padding-left: 50px;
}

p {
	margin: 15px 0;
	width: 100%;
	line-height: 1.5;
	/* Hack for Android (100% width). */
	background-color: inherit;
	text-indent: 50px;
}

b {
	font-weight: bold;
}

i {
	font-style: italic;
}

body {
	font-size: 100%;
	color: #4F4F4F;
	background-color: #FFFFFF;
	font-family: verdana, helvetica, arial, sans-serif;
}

hr {
	background-color: #FFFFFF;
	border-width: 0;
	height: 1px;
	margin: 25px 0px;
}

#content_div {
	max-width: 1400px;
	text-align: justify;
	margin: 0 auto 30px auto;
}

#content_box_div {
	margin: 0px 0;
	padding: 20px;
	width: 100%;
}

img {
	border: 0px;
}

a:link {
	font-weight: bold;
	color: #1B998B;
	background-color: transparent;
	text-decoration: none;
}

a:visited {
	font-weight: bold;
	color: #1B998B;
	background-color: transparent;
	text-decoration: none;
}

a:active {
	font-weight: bold;
	color: #0F574E;
	background-color: transparent;
	text-decoration: none;
	cursor: pointer;
}

a:hover {
	font-weight: bold;
	color: #0F574E;
	background-color: transparent;
	text-decoration: none;
	cursor: pointer;
}

.footnote {
	font-size: 80%;
	padding-left: 0px;
	margin-top: 20px;
}

.footnote li {
	list-style-type: none;
}

.error_icon {
	width: 64px;
	height: 64px;
	margin: 10px;
}

.icon_very_small {
	font-size: 100%;
	margin: 2px;
}

.icon_small {
	font-size: 130%;
	margin: 3px;
}

.icon {
	font-size: 170%;
	margin: 5px;	
}

.icon_big {
	font-size: 210%;
	margin: 5px;	
}

.icon_very_small, .icon_small, .icon, .icon_big {
	color: #BA1200;
	display: inline-block;
}

.icon_with_border {
	border: 1px solid #BA1200;
	padding: 2px 5px;
	border-radius: 3px;
}

a.icon_very_small:link, a.icon_small:link, a.icon:link, a.icon_big:link,
a.icon_very_small:visited, a.icon_small:visited, a.icon:visited, a.icon_big:visited {
	color: #BA1200;
	border-color: #BA1200; 
}

a.icon_very_small:active, a.icon_small:active, a.icon:active, a.icon_big:active,
a.icon_very_small:hover, a.icon_small:hover, a.icon:hover, a.icon_big:hover {
	color: #0353A4;
	border-color: #0353A4; 	
}

textarea, input, button, select {
	font-family: inherit; 
	font-size: inherit;
}

.label {
	font-size: 80%;
}

#small_device_flag_span, #big_device_flag_span, #desktop_flag_span {
	width: 0px;
	height: 0px;
	display: none;
}

/* 
 * End of global definitions. 
 */

/* 
 * Begin of embed videos definitions.
 */
.embed_video_frame {
	margin: 50px auto 0px auto;	
	max-width: 800px;
	max-height: calc(800px * 0.5625);
}
 
/* Based on the following solution: http://www.bymichaellancaster.com/blog/fluid-iframe-and-images-without-javascript-plugins/ */
.embed_video_canvas {
    position: relative;
    padding-bottom: 56.25%; /* proportion value to aspect ratio 16:9 (9 / 16 = 0.5625 or 56.25%) */
    height: 0;
    overflow: hidden;
}
 
.embed_video {
    position: absolute;
    top: 0; 
    left: 0;
    width: 100%;
    height: 100%;	
	display: block;
}
/* 
 * End of embed videos definitions.
 */

/* 
 * Begin of development environment. 
 */
.html_validation_report {
	border: 5px red solid;
	background-color: yellow;
	position: absolute;
	max-height: 400px;
	max-width: 400px;
	overflow-y: scroll;
	right: 0px;
	top: 0px;
}

.html_validation_report div {
	margin: 10px;
}
/* 
 * End of development environment. 
 */

/* 
 * Begin of form related section. 
 */
form fieldset>ul {
	display: flex;
	flex-flow: row wrap;
	align-items: center;
	list-style-type: none;
	padding: 0;
}

form fieldset>ul>li {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	width: 100%;
	margin-top: 10px;
}

form .label {
	font-weight: bold;
	text-align: right;
	margin-right: 10px;
}

form input, form textarea {
	font-size: 80%;
	background-color: white;
	color: #636373;
	border: solid 1px #8F8F8F; 
	padding: 5px 10px;
	border-radius: 5px;
}

form input:focus, form textarea:focus {
	border-color: #00396C;
}

form input[type='submit'], form input[type='button'] {
	font-size: 100%;
	border: none;
	background-color: #1B998B;
	font-weight: bold;
	cursor: pointer;
	box-shadow: none;
	border-radius: 5px;
	padding: 5px 15px;
	transition: 0.4s;
	margin: 0px 10px 0px 0px;
	color: white;
}

form input[type='submit']:hover, form input[type='button']:hover {
	background-color: #0F574E;
}

textarea {
    height: 10em;
    width: 600px;
}

form input:disabled, form textarea:disabled {
	background-color: #EDEDED;
	color: #636373;
}

form textarea, form input {
	max-width: 500px;
	width: calc(100% - 140px);	
}

form input[type='checkbox'], form input[type='submit'], form input[type='button'] {
	width: auto;
}

/* 
 * End of form related section. 
 */
