body {
	font-family: "Open Sans", Arial, Helvetica, sans-serif;
	font-size: 16px;
	color: #FFFFFF;
	background-color: #000000;
	margin: 0;
	padding: 0;
	background-image: url(elements/grad_main.png);
	background-repeat: repeat-y;
	background-position: center top;
}
#debug {
	z-index: 500;
	background-color: rgba(256,256,256,.8);
	border: 1px solid #FFF;
	padding: 4px;
	position: fixed;
	bottom: 0;
	right: 0;
	color: #000;
}

audio, video {
	max-width: 100%;
}
video {
	height: auto;
}
em {
	font-style: italic;
	font-weight: 700;
}
hr {
	margin: 1.5em auto;
}
h1 {
	font-size: 36px;
	line-height: 1.2em;
	color: #4B0975;
	font-weight: 700;
	margin-bottom: 1rem;
}
h1.title {
	font-size: 3em;
	color: #FFF;
	text-align: center;
}
h2 {
	font-size: 28px;
	color: #814C76;
	font-weight: 700;
	margin-bottom: 1rem;
}
h3 {
	font-family: "Salsa", Georgia, Times, serif;
	font-size: 23px;
	line-height: 1.13em;
	color: #dc143c;
	font-weight: 700;
	text-shadow: 1px 1px 1px #000000, 2px 2px 2px #4F5E80;
	margin-bottom: 1rem;
}
.h3size {
	height: 30px;
}
h4 {
	margin-top: 1em;
	font-size: 1.2em;
}
a, .submitbutton {
	-webkit-transition-duration: 200ms;
	transition-duration: 200ms;
	-webkit-transition-property: color, background-color, background-position, opacity, text-shadow;
	transition-property: color, background-color, background-position, opacity, text-shadow;
	-webkit-transition-timing-function: cubic-bezier(.5, 0, .5, 1);
	transition-timing-function: cubic-bezier(.5, 0, .5, 1);
}
a {
	overflow-wrap: break-word;
	word-wrap: break-word;
}
a, a:link, a:visited {
	text-decoration: none;
}

a:link, a:visited{
	color: #4B5D8B;
}
a:hover, a:visited:hover {
	color: #000000;
	cursor: pointer;
}
ol, ul {
	padding: 0 0 0 1em;
	margin: 1em 0;
}
li {
	list-style-position: outside;
	padding-bottom: .5em;
}

ul.tracklist {
	border-top: 2px solid #799AD0;
	padding-top: .5em;
	padding-bottom: .5em;
	padding-left: .5em;
	margin: 0;
	background-color: #000000;
}
ul.tracklist li {
	-webkit-transition: all 500ms cubic-bezier(.5, 0, .5, 1);
	transition: all 500ms cubic-bezier(.5, 0, .5, 1);
	list-style: none;
	padding: 0;
	margin-bottom: .2em;
	font-size: 18px;
	line-height: 1.2em;
	background-image: url(elements/grad_purple.png);
	background-position: -200px top;
	background-repeat: repeat;
	text-align: left;
}
ul.tracklist li:hover {
	background-position: 0px top;
}
ul.tracklist a, ul.tracklist li.missing, a.musiclink {
	padding-left: 30px;
	padding-top: 0.2em;
	padding-bottom: 0.2em;
	color: #C39438;
}
ul.tracklist a, a.musiclink {
	background-image: url(elements/pieces.png);
	background-repeat: no-repeat;
	background-position: -196px -46px;
	display: block;
}
ul.tracklist a, ul.tracklist a:link, ul.tracklist a:visited{
	opacity: .8;
}
ul.tracklist a:hover, ul.tracklist a:visited:hover{
	opacity: 1;
}
ul.tracklist li.clean {
	background-image: none;
	padding: 8px 8px 4px 8px;
}	
ul.musiclist {
	margin: 4px auto 8px;
	padding: 0;
}
ul.musiclist li {
	text-align: center;
	list-style: none;
	font-style: italic;
	padding: 0 0 4px;
	font-weight: 700;
}
ul.tour img, ul.tour p {
	display: inline-block;
	margin-right: 8px;
	vertical-align: middle;
	padding-top: 8px;
	padding-bottom: 8px;
}
.border, .blacktable, table.bigtable td {
	border: 1px solid #799AD0;
}
.border2, .darktable {
	border: 1px solid #C39438;
}
#fullwidth {
	width: 1600px;
	max-width: 100%;
	margin: auto;
	outline: 1px solid #183346;
}
#header {
}
#header img{
	background-image: url(elements/vincenzo-banner22.jpg);
	background-size: 100%;
	background-repeat: no-repeat;
	background-position: 0 0;
	width: 100%;
	height: auto;
	position: relative;
}
.subheader {
	font-weight: bold;
	text-align: center;
	color: #FFFFFF;
	background-color: #BBBBBB;
	padding: 4px;
	font-size: 16px;
}
.titletop {
	display: table;
	width: 100%;
}
.titletop > div {
	display: table-cell;
	vertical-align: middle;
}
.titletop .leftside {
	width: 28%;
	text-align: center;
}
.titletop .leftside img {
	width: 291px;
	height: auto;
	max-width: 100%;
}
.titletop .rightside {
	width: 72%;
}

#main {
	padding: 1em 2em 2em;
	color: #FFFFFF;
	background-image: url(elements/grad_main.png);
	background-repeat: repeat-y;
	background-position: left top;

}
#main a, #main a:link, #main a:visited {
	color: #C39438;
}
#main a:hover, #main a:visited:hover {
	color: #799AD0;
}
.columnize {
	margin-bottom: 1em;
	-moz-column-count: 3;
	-moz-column-gap: 2em;
	-webkit-column-count: 3;
	-webkit-column-gap: 2em;
	column-count: 3;
	column-gap: 2em;
}
.columnize img {
	width: 100%;
	height: auto;
}
.smallpage {
	width: 960px;
	margin: auto;
	max-width: 100%;
}
.breakout {
	margin-left: -8em;
	margin-right: -8em;
}
#footer {
	padding-top: 1em;
	padding-bottom: .5em;
}	
#footer, #footer p {
	text-align: center;
}
#footer a, #footer a:link, #footer a:visited {
	color: #FFFFFF;
	font-weight: inherit;
}
.credit {
	color: #000000;
	text-shadow: 1px 1px 2px #799AD0;
	font-family: "Salsa", sans-serif;
}

.darkback, .darktable  {
	background-color: #183346;
}
.darklink {
	color: #FFFFFF;
}
.darklink  a, .darklink  a:link, .darklink a:visited {
	text-decoration: none;
	color: #799AD0;
}
.darklink a:hover, .darklink a:visited:hover {
	text-decoration: none;
	color: #C39438;
}
.lightback  {
	background-color: #F4E9CD;
}


.lightlink {
	color: #000000;
}
.lightlink a, .lightlink a:link, .lightlink a:visited {
	color: #4B5D8B;
	text-decoration: none;
	font-weight: bold;
}
.lightlink a:hover, .lightlink a:visited:hover {
	color: #8C9BC1;
	text-decoration: underline;
	font-weight: bold;
}
.blackback, .blacktable td, .blacktable th, .bigtable td, .bigtable th  {
	background-color: #000000;
}
.blacklink {
	color: #FFFFFF;
}
.blacklink a, .blacklink a:link, .blacklink a:visited {
	text-decoration: none;
	color: #C39438;
}
.blacklink a:hover, .blacklink a:visited:hover {
	color: #799AD0;
	text-decoration: none;
}
#navbar{
	text-align: center;
	font-size: 19px;
	padding-right: .5em;
	padding-left: 0.5em;
}
#navbar > ul {
	display: table;
	padding: 0;
	margin: 0 0 0 auto;
	width: 100%;
}
#navbar li{
	position: relative;
	list-style: none;
	margin: 0;
	padding: 0;
	text-align: right;
}
#navbar > ul > li{
	display: table-cell;
	vertical-align: middle;
}
#navbar .nav a {
	padding: .3em 1em .6em;
}
#navbar a, #navbar a:link, #navbar a:visited{
	color: #799AD0;
	display: block;
}
#navbar a:hover, #navbar a:visited:hover {
	color: #C39438;
	text-shadow: 0px 0px 4px #C39438;
}
#navbar .on a, #navbar .on a:link, #navbar .on a:visited {
	color: #FFFFFF;
}
#navbar .on a:hover, #navbar .on a:visited:hover {
	color: #FFFFFF;
}
#navbar ul ul {
	width: 100%;
	box-sizing: border-box;
	font-size: .937em;
	position: absolute;
	z-index: 500;
	display: none;
	background-color: rgba(37,33,47);
	background-color: rgba(37,33,47,.9);
	text-align: left;
	padding: 16px 2px 2px;
}
#navbar ul ul a, #navbar ul ul a:link, #navbar ul ul a:visited {
	text-transform: none;
	padding: 5px .6em;
}
#navbar ul ul .on a, #navbar ul ul .on a:link, #navbar ul ul .on a:visited {
	font-weight: 700;
}

div#navbar li:hover {
	cursor:pointer;
	z-index:100;
}

div#navbar li:hover ul ul,
div#navbar li li:hover ul ul,
div#navbar li li li:hover ul ul,
div#navbar li li li li:hover ul ul
{display:none;}

div#navbar li:hover ul,
div#navbar li li:hover ul,
div#navbar li li li:hover ul,
div#navbar li li li li:hover ul
{display:block;}

#mobilenav {
	display: none;
	width: 100%;
	position: relative;
}
#mobilenav ul	{
	font-size: 19px;
	font-weight: bold;
	margin: 0;
	padding: 0;
}
#mobilenav li{
	box-sizing: border-box;
	width: 100%;
	list-style:none;
	display: table;
	text-align: center;
	padding: 0;
}
#mobilehide > ul > li{
	border-top: 1px solid #C39438;
} 
#mobilehide > ul:last-child{
	border-bottom: 1px solid #C39438;
}
#mobilehide .more, #mobilehide .nomore{
	width: 70px;
	height: 44px;
}
#mobilenav .more {
	background-image: url(https://backdraftserver.com/common/elements/mobile_pieces.png);
	background-position: center -56px;
	display: table-cell;
}
#mobilenav li > div {
	display: table-cell;
	vertical-align: middle;
}
#mobilenav a, #mobilenav a:link, #mobilenav a:visited {
	line-height: 44px;
	height: 44px;
	display: block;
	color: #BBCCE8;
}
#mobilenav .mobiletitle {
	color: #FFFFFF;
	text-align: center;
	font-weight: normal;
	font-size: x-large;
	line-height: 52px;
	height: 52px;
	display: block;
	margin-right: 70px;
	overflow: hidden;
}
#mobilenav ul ul {
	display:none;
}
.mobileicon {
	text-align: center;
	position: absolute;
	top: 0;
	right: 0;
	width: 70px;
	height: 52px;
	background-image: url(https://backdraftserver.com/common/elements/mobile_pieces.png);
	background-position: center 0px;
}
.mobileicon:hover, #mobiletoggle:checked ~ .mobileicon, #mobilenav .more, #mobilenav a:hover, #mobilenav a:visited:hover, #mobilenav .on a {
	color: #FFFFFF;
	background-color: #C39438;
}
#mobilehide {
	display: none;
}
#mobiletoggle, .subtoggle {
	position:absolute;
	left:-100%;
	top:-100%;
}
#mobiletoggle + label, #mobilehide.more{
	cursor: pointer;
}
#mobiletoggle:checked ~ #mobilehide {
	display: block;
}
#mobilehide ul li input:checked ~ ul {
	display: table-row;
}
#mobilehide ul li input:checked + label {
	background-position: center -109px;
}

.light1 {
	color: #8B9698;
}
.light2 {
	color: #799AD0;
}
.light3 {
	color: #53DCF4;
}
.dark1 {
	color: #565C54;
}
.dark2 {
	color: #3D6AAB;
}

.bar1 {
	text-align: center;
	color: #FFFFFF;
	background-color: #183346;
}
strong {
	font-weight: bold;
	color: #8B9698;
}
.split {
	display: table;
	width: 100%;
}
.split > div {
	display: table-cell;
	vertical-align: top;
}
.split > div:first-child {
	padding-right: 1em;
}
.split > div.middle {
	vertical-align: middle;
}
.split img{
	margin-top: .5em;
	margin-bottom: .5em;
	width: 100%;
	height: auto;
}
.split .paintings img {
	margin-bottom: 2px;
}
.split.p6040 > div:first-child {
	width: 60%;
}
.withborder img, .fancy img {
	border: 4px outset #799AD0;
	box-sizing: border-box;
}
img.noborder, .fancy img.noborder {
	border: none;
	width: 100%;
	height: auto;
}
.fancy img {
	height: 200px;
	width: auto;	
}	
.imagegroup {
	text-align: center;
}
.imagegroup div {
	display: inline-block;
	vertical-align: middle;
	margin: .5em .6em;
}
.imagegroup.x2 div {
	width: 45%;
}
.imagegroup p {
	padding: 0;
	margin: 0;
	text-align: center;
	font-size: .9em;
}
.imagegroup img {
	display: inline-block;
	height: auto;
}
.thumbnail {
	display: block;
	position: relative;
}
.thumbnail svg {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
a.thumbnail path, a.thumbnail:link path, a.thumbnail:visited path{
	fill: rgba(255,255,255,.5);
}
a.thumbnail:hover path, a.thumbnail:visited:hover path{
	fill: rgba(255,255,255,.8);
}
#audiotitle {
	font-size: 18px;
	line-height: 1.11em;
	font-family: "Salsa", Georgia, Times, serif;
	text-align: center;
}
#audiotitle a {
	color: #FFF;
}
h3#audiotitle {
	font-size: 24px;
	margin-top: .5em;
}
h1 + .simpletable {
	padding-top: 1em;
}
.simpletable {
	display: table;
	position: relative;
}
.simpletable > div {
	display: table-cell;
	vertical-align: middle;
	padding: 8px;
}

table.tablegroup {
	border-collapse: separate;
	border-spacing: 8px;
}
table.tablegroup td, table.tablegroup th {
	padding: 4px;
	text-align: center;
}
table.blacktable,
table.darktable {
	width: 420px;
	max-width: 100%;
	border-collapse: collapse;
	border-spacing: 0;
	margin: 1em auto;
	font-size: 17px;
}
.split > div:last-child table.blacktable {
	width: 100%;
}
table.blacktable td, table.blacktable th,
table.darktable td, table.darktable th {
	padding: 12px;
	text-align: center;
	vertical-align: middle;
}
table.bigtable {
	border-collapse: collapse;
	border-spacing: 0;
	margin-left: auto;
	margin-right: auto;
	min-width: 320px;
}
table.bigtable td, table.bigtable th {
	padding: 0;
	text-align: center;
}

.iconside {
	padding-left: 20px;
	padding-right: 20px;
}
.release {
	background-color: #cfcfd0;
	color: #000;
	border: 1px solid #000;
	border-radius: 4px;
	box-shadow: 2px 2px 2px #4F5E80;
	padding: 1.2em;
	margin: .5em auto 1em;
	font-size: 1.1em;
}
#main .release a, #main .release a:link, #main .release a:visited {
	color: #4B0975;
	text-decoration: underline;
}
#main .release a:hover, #main .release a:visited:hover {
	color: #000;
}
.release img.floatleft {
	width: 140px;
	height: auto;
}
.release h3 {
	font-size: 31px;
	color: #4B0975;
	text-shadow: none;
}
.release h4 {
	font-size: 1.3em;
	margin-bottom: .8em;
	margin-top: 2px;
}
.release h5 {
	font-size: 1.1em;
	font-weight: 400;
	text-align: left;
	margin-top: 0;
	margin-bottom: .8em;
}
div.floatright, div.floatleft {
	margin-top: .2em;
}
span.floatright, span.floatleft {
	margin-top: .5em;
}
.forcebreak:after {
	content: "\A";
	white-space: pre;
}
.formtable {
	font-size: 1.2em;
	padding: 10px;
	background-color: rgba(255,255,255,.7);
	color: #000;
	border-radius: 3px;
}
.formtable h2 {
	text-align: center;
	font-size: 18px;
}
#loginform .formnorm{
	width: 200px;
}
.submitbutton {
	box-sizing: border-box;
	width: 100%;
	font-size: 1.1em;
	background-image: linear-gradient(#DDD,#AAA);
	border-radius: 6px;
	text-transform: uppercase;
}	
.submitbutton:hover {
	background-image: linear-gradient(#DDD,#799AD0);
	border: 2px outset #799AD0;
}
.formnorm {
	width: 400px;
}
.check_human > div {
	padding: 4px;
}
.album {
	width: 80%;
	margin: auto;
	max-width: 100%;
}
.album h1, .album h2 {
	display: inline;
}
.album h1 {
	padding-right: 1em;
}
.album .photo {
	text-align: center;
}
.album .photo img {
	width: 100%;
	max-width: 300px;
	height: auto;
}
.album ul.tracklist {
	margin-top: 1em;
    border-right: 2px solid #799AD0;
}
.album .media {
	padding: 8px;
	width: 320px;
}
.album .text {
	padding: 8px;
}
.album .split > div:first-child {
	width: 270px;
}
hr#library {
	margin: 3em .5em;
}
.formobile {
	display: none;
}
table.littletable td {
	padding: .25em 1em;
}
.flexrow {
	display:flex;
	flex-flow: row nowrap;
	justify-content: center;
	align-items: center;
	width: 100%;
}
.flexrow > a {
	display: block;
	margin: 4px;
}
@media only screen and (max-width: 1230px) {
	#debug::before {
		content: "<1230";
	}
	.album {
		width: 100%;
	}
	.breakout {
		margin-left: auto;
		margin-right: auto;
	}
	.columnize {
		-moz-column-count: 2;
		-webkit-column-count: 2;
		column-count: 2;
	}
	span.floatright, span.floatleft {
		display: none;
	}
}
@media only screen and (max-width: 962px) {
	#debug::before {
		content: "<962";
	}
	.titletop .leftside {
		display: none;
		text-align: center;
		width: 100%;
	}
	.titletop .rightside {
		display: block;
		width: 100%;
		margin: 0 auto;
	}
	#navbar{
		font-size: 18px;
	}
	#main {
		padding-left: 1em;
		padding-right: 1em;
	}
	.columnize {
		-moz-column-count: 2;
		-webkit-column-count: 2;
		column-count: 2;
	}
	.album .media, .album .text {
		display: block;
		width: auto;
	}
}
@media only screen and (max-width: 811px){
	#debug::before {
		content: "<811";
	}
	.split {
		display: block;
	}
	.split > div {
		display: block;
		width: 100%;
		margin-bottom: 1em;
	}
	.split > div:first-child {
		padding-right: 0;
	}
	.split.p6040 > div:first-child {
		width: 100%;
	}
	.split.p6040 {
		display: flex;
		flex-flow: column wrap;
	}
	.floatleft, .floatright {
		float: none;
		display: block;
		margin: 1em auto;
		text-align: center;
	}
	img.floatleft, img.floatright, .floatleft img, .floatright img {
		width: 100%;
		height: auto;
	}
	span.floatright, span.floatleft {
		display: block;
		margin-top: 1em;
		margin-bottom: 1em;
	}
	img, video, .fancy img {
		width: 100%;
		height: auto;
	}
	.formobile {
		display: block;
	}
	.fordesktop, .split > div.fordesktop {
		display: none;
	}
}
@media only screen and (max-width: 767px) {
	#debug::before {
		content: "<767";
	}
	.titletop {
		display: none;
	}
	#mobilenav {
		display: block;
	}
	ul.tracklist a{
		padding-top: 20px;
		padding-bottom: 20px;
		background-position: -196px -30px;
	}
	.columnize {
		-moz-column-count: 1;
		-webkit-column-count: 1;
		column-count: 1;
	}
	table.tablegroup, table.bigtable {
		text-align: center;
		margin-left: auto;
		margin-right: auto;
		border-collapse: collapse;
		border-spacing: 0;
	}
	table.tablegroup tr,
	table.bigtable tr {
		display: inline;
	}
	table.tablegroup td, table.tablegroup th,
	table.bigtable td, table.bigtable th {
		display: inline-block;
	}
	table.tablegroup td, table.tablegroup th {
		padding: 12px;
	}

	.album h1, .album h2 {
		padding: 0;
		display: block;
	}
	.album .split > div:first-child {
		width: auto;
	}
}
@media only screen and (max-width: 463px) {
	#debug::before {
		content: "<463";
	}
	.forcebreak:after {
		content: "";
	}
	.formnorm {
		box-sizing: border-box;
		width: 100%;
	}
	td {
		display: block;
	}
	.littletable td {
		display: table-cell;
	}
	.imagegroup.x2 div {
		width: 100%;
		margin-right: auto;
		margin-left: auto;
	}
	.big.center {
		margin-top: 1em;
	}
	.big.center a {
		display: block;
		line-height: 2em;
	}
	h1.title {
		font-size: 10vw;
	}
}
@media only screen and (max-width: 360px) {
	#debug::before {
		content: "<360";
	}
}
