/* -----------------------
Base styles
------------------------*/

body
{
	margin: 0;
	padding: 0;
	background-color: #FFFFCC;
	font: 1em/1.2 Helvetica, Arial, Geneva, sans-serif;
	color: #0B0B3B;
}

h1,h2,h3,h4,h5,h6
{
	margin: 0 0 .5em;
	font-weight: 500;
	line-height: 1.1;
}

h1 { font-size: 1.9em; } /* 29,4px */
h2 { font-size: 1.7em; } /* 27,2px */
h3 { font-size: 1.375em; } /* 22px */
h4 { font-size: 1.125em; } /* 18px */
h5 { font-size: 1em; } /* 16px */
h6 { font-size: .875em; } /* 14px */

p
{
	margin: 0 0 1.5em;
	line-height: 1.5em;
	text-align: justify;
}

blockquote
{
	padding: 1em 2em;
	margin: 0 0 2em;
	line-height: 1.5em;
	border-left: 5px solid #eee;
	font-style: italic;
}

hr
{
	height: 0;
	margin-top: 1em;
	margin-bottom: 2em;
	border: 0;
	border-top: 1px solid #ddd;
}

table
{
	background-color: transparent;
	border-spacing: 0;
	border-collapse: collapse;
	border-top: 1px solid #ddd;
}

th, td
{
	padding: .5em 1em;
	vertical-align: top;
	text-align: left;
	border-bottom: 1px solid #ddd;
}
dl {
    display: block;
    margin-top: 1em;
    margin-bottom: 1em;
    margin-left: 0;
    margin-right: 0;
	font-size: .875em;
}

dt {
	font-weight: bold;
}

dd {
	font-style: italic;
}
	
a:link, a:visited { color: royalblue; text-decoration: none; }
a:focus { color: black; background-color: green;}
a:hover { color: green; text-decoration: none; background-color: #0B0B3B; color: #FFFFCC;}
a:active { color: red; }

/* -----------------------
Layout styles
------------------------*/

.container
{
	max-width: 70em;
	margin: 0 auto;
}

.header
{
	color: #FFFFCC;
	background: #0B0B3B;
	padding: 1em 1.05em;
}

.header-heading { margin: 0; }

.nav-bar
{
	background: #0B0B3B;
	padding: 0;
}

.content
{
	overflow: hidden;
	padding: 1em 1.25em;
}

.main, .aside
{
	margin-bottom: 1em;
}

.aside
{
	margin-top: 2em;
	background: #fff;
}

.footer
{
	color: #FFFFCC;
	background: #0B0B3B;
	padding: 1em 1.25em;
}

div.thumb_l, div.thumb_r {
  float:left;
  background-color:#0B0B3B;
  max-width: 100%;
  padding:5px;
  margin:0 10px 5px 0;
}

div.thumb_r
{
  float:right;
  margin:0 0 5px 10px;
}

div.thumb_l img, div.thumb_r img
{
  display: block;
  margin: auto;
  max-width: 100%;
}

div.caption
{
  font: Helvetica, Arial, Geneva, sans-serif;
  text-align: center;
  font-size: 90%;
  color:#FFFFCC;
  margin-top: 5px;
}
/* -----------------------
Nav
------------------------*/

.nav
{
	margin: 0;
	padding: 0;
	list-style: none;
}

.nav li
{
	display: inline;
	margin: 0;
}

.nav a
{
	display: block;
	padding: .7em 1.25em;
	color: #fff;
	text-decoration: none;
	border-bottom: 1px solid gray;
}

.nav a:link { color: white; }
.nav a:visited { color: gray; }

.nav a:focus
{
	color: black;
	background-color: white;
}

.nav a:hover
{
	color: white;
	background-color: green;
}

.nav a:active
{
	color: white;
	background-color: red;
}

/* -----------------------
Single styles
------------------------*/

.blockus
{
	padding-left: 1.1em;
	font-style: italic;
}

.mappina
{
	display: flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-align-content: center;
	align-content: center;
}

.aside h3
{
	padding-top: .5em;
	padding-right: .3em;
	padding-left: .3em;
	font-size: 1.125em;
}

.aside h4
{
	padding-top: .5em;
	padding-right: .3em;
	padding-left: .3em;
	font-size: .95em;
	font-weight: bold;
	letter-spacing: -1px;
}

.aside p
{
	padding-right: .5em;
	padding-left: .5em;
	font: .8em/1 Helvetica, Arial, Geneva, sans-serif;
}

.aside ul
{
	font: .8em/1 Helvetica, Arial, Geneva, sans-serif;
}

.img-responsive, .img-responsive-right, .img-responsive-left
 {
  display: block;
  margin: auto;
  max-width: 100%;
 }

 .img-responsive-right
 {
	padding-top: .3em;
	padding-right: .4em;
	float: left;
 }

 .img-responsive-left
 {
	padding-top: .3em;
	padding-left: .4em;
	float: right;
 }

.btn
{
	color: #fff !important;
	background-color: royalblue;
	border-color: #222;
	display: inline-block;
	padding: .5em 1em;
	margin-bottom: 0;
	font-weight: 400;
	line-height: 1.2;
	text-align: center;
	white-space: nowrap;
	vertical-align: middle;
	cursor: pointer;
	border: 1px solid transparent;
	border-radius: .2em;
	text-decoration: none;
}

.btn:hover
{
	color: #fff !important;
	background-color: green;
}

.btn:focus
{
	color: #fff !important;
	background-color: black;
}

.btn:active
{
	color: #fff !important;
	background-color: red;
}

.table
{
	width: 100%;
	max-width: 100%;
	margin-bottom: 20px;
}

.list-unstyled
{
	padding-left: 0;
	list-style: none;
}

.list-inline
{
	padding-left: 0;
	margin-left: -5px;
	list-style: none;
}

.list-inline > li
{
	display: inline-block;
	padding-right: 5px;
	padding-left: 5px;
}

/* -----------------------
Wide styles
------------------------*/

@media (min-width: 55em)
{
	.header { padding: .3em 1em; }
	.nav-bar { padding: .5em .5em; }
	.content { padding: 2em 3em; }

	.main
	{
		float: left;
		width: 65%;
		margin-right: 5%;
		margin-bottom: 1em;
	}

	.aside
	{
		float: left;
		width: 30%;
		margin-bottom: 1em;
	}

	.footer { padding: 2em 3em; }
	
	.nav li
	{
		display: inline;
		margin: 0 1em 0 0;
	}
	
	.nav a
	{
		display: inline;
		padding: 0;
		border-bottom: 0;
	}
}