@charset "utf-8";
body {
	font-family: "Overpass", Arial, Helvetica, sans-serif;
	font-size: medium;
	color: #000;
	background-color: #FFF;
	margin: 0;
	padding: 0;
}
figure, .figure {
	margin: 0;
}
.floatleft, .floatright{
	text-align: center;
	margin: 0 .5em .5em;
	float: none;
}
img, video, audio, iframe {
	width: 100%;
	height: auto;
}
.serif {
	font-family: "Times New Roman", Times, serif;
}
.smaller {
	font-size: .75em;
}
hr {
	margin: 1em .2em;
	clear: both;
}
p {
	padding: 0;
	margin: .125em 0 .5em; 
}
blockquote {
	margin: 1em;
}
a {
	-webkit-transition: all 200ms cubic-bezier(.5, 0, .5, 1);
	transition: all 200ms cubic-bezier(.5, 0, .5, 1);
}
a, a:link, a:visited{
	text-decoration: none;
	color: #0094DE;
}
a:hover, a:visited:hover {
	color: #5CE8FF;
	text-decoration: none;
	cursor: pointer;
}
h1 {
	font-size: 2em;
	margin: 1em 0 0; 
	line-height: 1em;
}
h2 {
	font-size: 1.5em;
	margin: 0 0 .5em; 
	line-height: 1em;
}
h3 {
	font-size: 1.3em;
	line-height: 1em;
}
h4 {
	font-size: 1.1em;
	line-height: 1em;
	font-weight: 400;
	color: #FE7213;
}
.side h4 {
	font-size: 1.2em;
	color: #000;
	background-image: linear-gradient(90deg,#2AB6EB,#2AB6EB 75%,transparent);
	padding: 4px 0 2px 1rem;
	margin: 1.5rem 0 1rem;
}
p + h3 {
	margin-top: 1em;
}
ul, ol {
	list-style-position: outside;
	padding: 0;
	margin: .125em 0 .5em 1em; 
}
li, dd, .together {
	page-break-inside: avoid;
	-webkit-column-break-inside: avoid;
	break-inside: avoid;
}
li, dd {
	padding-bottom: .625em;
}
li:last-child {
	padding-bottom: 0;
}
li.clean {
	list-style: none;
}
ul.simple {
	position: relative;
	list-style: none;
	margin-left: 1rem;
	padding-left: 1em;
}
ul.simple li:before {
	content: "::";
	position: absolute;
	left: 0;
}
.fullblock ul.buttons {
	text-align: center;
	margin-top: 0;
	margin-bottom: 0;
}
ul.buttons li{
	font-size: 1em;
	font-weight: 400;
	line-height: 1em;
	display: inline-block;
	width: 46%;
	margin: 1%;
	padding: 0;
}
ul.buttons li a, .bigbutton a{
	display: block;
	background-image: linear-gradient(90deg,transparent,#000,transparent);
	padding: .2em 0 0;
	border-radius: .8em;
}
.bigbutton a {
	text-align: center;
	font-size: 1em;
	font-weight: 400;
	line-height: 1em;
	margin: 0 auto;
	padding: .3em 1em .1em;
}
ul.buttons li a, ul.buttons li a:link, ul.buttons li a:visited,
.bigbutton a, .bigbutton a:link, .bigbutton a:visited {
	border: 1px solid #143E66;
	background-color: #143E66;
	color: #FFF;
}
ul.buttons li a:hover, ul.buttons li a:visited:hover,
.bigbutton a:hover, .bigbutton a:visited:hover {
	border: 1px solid #2AB6EB;
	background-color: #2AB6EB;
}
#fullwidth {
	box-sizing: border-box;
	padding: 1px;
	width: 100%;
	margin: auto;
	background-color: #000;
	color: #FFF;
}
#main {
	padding: 0 4%;
	line-height: 1.3em;
	margin: 0 0 .5em;
	position: relative;
}
#header {
	padding-top: 1em;
	margin-bottom: 2em;
}
#header a, #header a:link, #header a:visited {
	color: #FE7213;
}	
#header a:hover, #header a:visited:hover {
	color: #FFA445;
}
.starside {
	position: relative;
	padding-left: 2em;
}
.starside::before {
	position: absolute;
	color: #FE7213;
	content: "*";
	font-family: "Times New Roman", Times, serif;
	font-size: 3em;
	top: .35em;
	left: 0;
}
#footer {
	text-align: center;
	margin: 1em 0;
	color: #6E6E6E;
	clear: both;
}
#navbar, .original, #mobilehide, #mobilenav ul ul {
	display: none;
}
#mobilenav {
	display: block;
	width: 100%;
	position: relative;
	background-color: #2C323E;
}
#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;
}
#mobilenav .soon {
	display: none;
}	

#mobilehide > ul > li{
	border-top: 1px solid #F9DFA2;
} 
#mobilehide > ul:last-child{
	border-bottom: 1px solid #F9DFA2;
}
#mobilehide .more, #mobilehide .nomore, #mobilehide .more2{
	width: 70px;
	height: 44px;
}
#mobilehide .more2 {
	position: absolute;
	right: -70px;
	top: 0;
}
#mobilenav .more, #mobilenav .more2 {
	background-image: url(https://commonelements.net/common/elements/mobile_pieces.png);
	background-position: center -56px;
}
#mobilenav li > div, #mobilenav .more {
	display: table-cell;
	vertical-align: middle;
}

#mobilenav a {
	display: block;
	line-height: 44px;
	height: 44px;
}
#mobilenav .mobiletitle {
	color: #FFF;
	text-align: center;
	font-weight: normal;
	font-size: x-large;
	line-height: 52px;
	height: 52px;
	display: block;
	margin-right: 70px;
	overflow: hidden;
}
.mobileicon {
	text-align: center;
	position: absolute;
	top: 0;
	right: 0;
	width: 70px;
	height: 52px;
	background-image: url(https://commonelements.net/common/elements/mobile_pieces.png);
	background-position: center 0px;
	
}
.mobileicon:hover, #mobiletoggle:checked ~ .mobileicon, #mobilenav .more, #mobilenav a:hover, #mobilenav a:visited:hover {
	color: #FFF;
	background-color: #BDA366;
}
#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;
}
#medianav {
	margin: 1em;
	overflow: hidden;
	display: block;
	border: 1px solid #2AB5EA;
	font-size: 1em;
	line-height: 1.1em;
	border-radius: .8rem;
}
#medianav ul {
	padding: 0;
	margin: 0;
	list-style: none;
}
#medianav li{
	display: block;
	text-align: left;
	margin: 0;
	padding: 0;
}
#medianav a {
	display: block;
	background-image: linear-gradient(90deg,#000 25%,transparent);
}
#medianav a, #medianav a:link, #medianav a:visited {
	color: #2AB6EB;
	background-color: #27B8E6;
	padding: .9em 0 .8em 2em;
}
#medianav a:hover, #medianav a:visited:hover {
	color: #FFF;
	background-color: #5CE8FF;
}
#medianav .nav.on a {
	color: #000;
	background-image: none;
	background-color: #2AB6EB;
}


.articlelist {
	display: table;
	border-collapse: collapse;
	border-spacing: 0px;
	margin: 1em 0;
}
.articlelist > div{
	padding-top: .5em;
}
.articlelist .content {
	font-size: .9em;
}
.articlelist .docside {
	text-align: center;
}
.docside img {
	max-width: 150px;
}
.articlelist img, #media img {
	box-shadow: 2px 2px 4px #000;
}
.articlelist .more {
	margin-top: .4em;
}
#media {
	margin: .4em auto;
	text-align: center;
}
.navigation {
	text-align: right;
	font-size: .9em;
	opacity: .9;
	margin: .5em 0;
}
.fullarticle {
	position: relative;
}
.fullblock .fullarticle h1 {
	border-top-left-radius: 0;
	border-top-right-radius: 0;
}
.fullarticle h3 {
	font-size: 1.12em;
	margin-top: .82em;
}	
.articlelist h3 {
	font-size: 1.3em;
}
.articlelist h3 a{
	padding: 0;
}
.articlelist h4, .fullarticle h4{
	opacity: .9;
	font-weight: 700;
	font-size: 1.2em;
}
.articlelist h5, .fullarticle h5, .fullarticle h6 {
	padding: .5em 0 0 .5em;
	margin: 0;
	font-size: .8em;
	color: #7E90A6;
}
.articlelist h5 + div, .fullarticle h5 + div, .fullarticle h6 + div {
	padding-top: .5em;
}
.fullarticle .date{
	padding: .8em 0;
}
.fullarticle .image {
	margin: 1em .5em .5em;
	width: auto;
}	
.fullarticle img {
	width: 100%;
	height: auto;
}
.fullarticle .author {
	padding: 0 0 .4em;
	color: #7E90A6;
}
.photoshell {
	margin: .5em auto;
	text-align: center;
}
.caption {
	display: block;
	font-size: .9em;
	line-height: 1em;
	margin-top: .3em;
 	color: #F9DFA2;
}

.page {
	padding: 0;
}
.page .fullblock:first-child {
	margin-top: 0;
}
.border {
	border: 1px solid #666666;
}
.light1 {
	color: #4FBFD7;
}
.light2 {
	color: #50C3F0;
}
.light3 {
	color: #EB010A;
}
.dark1 {
	color: #693714;
}
.dark2 {
	color: #786777;
}
.bar1 {
	font-size: 14px;
	color: #FFF;
	font-family: Arial, Helvetica, sans-serif;
	font-weight: bold;
	background-color: #786777;
}
.fullblock {
	border: 1px solid #FE7213;
	border-radius: 1rem;
	padding: .8rem;
	margin: 1em 0;
}
.fullblock h1, .fullblock h2 {
	color: #000;
	font-weight: 300;
	font-size: 1.375em;
	line-height: 1em;
	background-color: #FE7213;
	padding: .4em 1rem .3em;
	margin: -.8rem -.8rem .8rem;
	border-top-left-radius: .8rem;
	border-top-right-radius: .8rem;
}
.fullblock h1 + h2 {
	font-size: 1.3rem;
	margin-top: -1.5rem;
	border-top-left-radius: 0;
	border-top-right-radius: 0;
}	
.side .fullblock h3 {
	color: #000;
	font-weight: 300;
	font-size: 1.375em;
	line-height: 1em;
	background-color: #27B8E6;
	padding: .4em 1rem .3em;
	margin: -.8rem -.8rem .8rem;
	border-top-left-radius: .8rem;
	border-top-right-radius: .8rem;
}
.side .fullblock {
	border: 1px solid #27B8E6;
	margin: 1em;
}
.inblock {
	display: inline-block;
	vertical-align: middle;
}
.quote {
	font-family: "Balthazar", serif;
	color: #FE7213;
	font-size: 1.22em;
	line-height: 1.1em;
	padding: 1em;
	text-align: center;
}
.quotegroup > .quote {
	padding: 2em 2.5em;
}
.quote .credit {
	font-family: Arial, Helvetica, sans-serif;
	font-size: .82rem;
	line-height: 1.1em;
	color: #9D9C9A;
}
#header .credit {
	display: inline-block;
	vertical-align: bottom;
}
.thumbgroup, .fullphoto, .photodata {
	margin: 1em 0;
	text-align: center;
}
ul.thumbgroup, .photogroup {
	list-style: none;
	margin: 1em auto .625em;
}
.thumbgroup, .photogroup {
	display: table;
}
ul.thumbgroup li {
	display: inline-block;
	vertical-align: top;
	text-align: left;
	max-width: 190px;
	margin: 0 1em .5em 0;
}
.thumbphotos {
	display: inline-block;
	vertical-align: top;
	padding: 0;
	font-size: .9em;
	line-height: 1.1em;
	margin: 1em;
}
.thumbphotos h3 {
	margin-top: 0;
}
.thumbphotos img {
	border: 1px solid;
	width: 100%;
	height: auto;
}
.gallery .fullphoto, .photodata {
	padding: .5em;
}
.photodata hr {
	width: 200px;
	margin: .5em auto;
}

.thumb {
	font-weight: 400;
	width: 190px;
	height: 130px;
	background-color: #4A4A4A;
	background-position: center;
	overflow: hidden;
	background-size: cover;
	background-repeat: no-repeat;
	color: #FFF;
	text-transform: uppercase;
	display: flex;
	align-items: center;
	justify-content: center;
	position: relative;
	margin-bottom: .2em;
}
.arrow {
	position: absolute;
	bottom: 0;
	right: 0;
	width: 128px;
	height: 128px;
}
.arrow svg polygon {
	fill: #FFF;
}
.arrow svg path {
	fill: rgba(255,255,255,.5);
}
a:hover .arrow svg polygon {
	fill: #000;
}
a:hover .arrow svg path {
	fill: rgba(229,183,25,.5);
}
.amazon {
	max-width: 156px;
	width: 6.5em;
	display: inline-block;
	position: relative;
	top: .2em;
	left: .2em;
}
.medialogos {
	border-radius: .8rem;
	padding: .8rem;
	margin: 1em;
	border: 1px solid #27B8E6;
	position: relative;
}
.medialogos h4 {
	position: absolute;
	top: 0;
	left: 0;
	color: #000;
	font-weight: 300;
	font-size: 2.1vw;
	line-height: 1em;
	background-color: #27B8E6;
	padding: .4em .6em .3em;
	margin: 0;
	border-bottom-right-radius: .8rem;
	border-top-left-radius: .6rem;
}
@media only screen and (min-width: 20em) {
	#debug {
		z-index: 501;
		background-color: rgba(256,256,256,.5);
		border: 1px solid #FFF;
		color: #3300FF;
		padding: 4px;
		position: fixed;
		bottom: 0;
		right: 0;
	}
	#debug::before {
		content: "> 320";
	}
	.debugnotes {
		font-size: medium;
		line-height: 1.15em;
	}
}
@media only screen and (min-width: 23.8em) {
	#debug::before {
		content: "> 381";
	}
}
@media only screen and (min-width: 30em) {
	#debug::before {
		content: "> 480";
	}
	ul.buttons li{
		font-size: 1.2em;
	}
	.original {
		display: initial;
	}
	.articlelist > div{
		display: table-cell;
		vertical-align: top;
	}
	.articlelist .docside {
		padding-right: 1em;
		width: 150px;
	}
	.fullarticle .image {
		float: right;
		width: 35%;
	}	
	.side {
		box-sizing: border-box;
		display: table;
		margin: .625em auto;
		width: 24em;
	}

}
@media only screen and (min-width: 41.1em) {
	#debug::before {
		content: "> 656";
	}
	.split{
		display: table;
	}
	.split > div{
		display: table-cell;
		vertical-align: top;
	}
	.floatleft {
		max-width: 200px;
		float: left;
		margin: .2em 1em .5em 0;
	}
	.floatright {
		max-width: 200px;
		float: right;
		margin: .2em 0 .5em 1em;
	}
	.thumbphotos {
		width: 28%;
	}

}
@media only screen and (min-width: 54em) {
	#debug::before {
		content: "> 864";
	}
	body {
		font-size: 18px;
	}
	.logo {
		text-align: left;
		max-width: 70%;
	}
	#main {
		margin: 0 0 1.5em;
		padding: 0 1.5rem;
	}
	#main a.tel, #main a.tel:link, #main a.tel:visited {
		color: #FFF;
	}
	#main.maintable, .shortheader #header {
		position: relative;
		padding-left: 24rem;
	}
	.shortheader #header {
		margin-left: -1.5rem;
	}
	.side {
		font-size: .94em;
		position: absolute;
		width: 22rem;
		top: 0;
		left: 0;
		margin: 0;
	}
	.side .quote {
		background-image: linear-gradient(0deg, transparent, #191816, transparent);
	}
	.side h4 {
		padding-left: 2rem;
	}
	ul.simple {
		margin-left: 2rem;
	}
	ul.buttons li{
		font-size: 1em;
	}
	#footer {
		font-size: .9em;
		margin: 1rem 2%;
	}
	#medianav {
		margin: 2em;
	}
	#navbar {
		display: block;
		font-size: .9em;
		line-height: 1.1em;
		background-color: #000;
	}
	#navbar > ul {
		display: table;
		padding: 0;
		margin: 0 0 0 auto;
		list-style: none;
	}
	#navbar li{
		margin: 0;
		padding: 0;
	}
	#navbar > ul > li {
		display: table-cell;
		vertical-align: middle;
		text-align: center;
		position: relative;
	}
	#navbar a {
		display: block;
		background-image: linear-gradient(-90deg,#000,transparent 2em,#2AB6EB);
		border-bottom-left-radius: 1em;
	}
	#navbar a, #navbar a:link, #navbar a:visited {
		color: #AEDAE5;
		padding: .4em 2em .3em;
	}
	#navbar a:hover, #navbar a:visited:hover {
		color: #FFF;
		background-color: #222;
	}
	#navbar .nav.on a {
		color: #000;
		background-color: #2AB6EB;
	}
	#navbar ul ul li {
		text-transform: none;
	}	
	#navbar ul ul {
		border-top: 2px solid #A6A6A6;
		margin: 0;
		padding: 0;
		position: absolute;
		z-index: 500;
		display: none;
		text-align: center;
		list-style: none;
		font-size: .9em;
		background-color: #1276B5;
		background-color: rgba(0,118,192,.85);
		width: 100%;
	}
	#navbar ul ul a, #navbar ul ul a:link, #navbar ul ul a:visited {
		color: #FFF;
		padding: .3em .5em;
		border-bottom: 2px solid #A6A6A6;
	}
	#navbar ul ul a:hover, #navbar ul ul a:visited:hover {
		color: #0076C0;
		background-color: #000;
	}
	#navbar ul ul .on a, #navbar ul ul .on a:link, #navbar ul ul .on a:visited {
		color: #F9DFA2;
	}
	
	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;}
	.original {
		display: inherit;
	}
	#mobilenav {
		display: none;
	}
	.container{
		text-align: right;
	}
	.socialmedia .soon {
		display: initial;
	}

	video, audio {
		width: auto;
	}
	.forcebreak:after {
		content: "\A";
		white-space: pre;
	}
	.page {
		padding: .2em 0 .5em;
	}
	.photoshell {
		max-width: 50%;
		float: right;
		margin: 0 0 .5em .5em;
	}
	.figure{ 
		max-width: 200px;
	}
	.articlelist {
		margin: 1em 2em;
	}
}
@media only screen and (min-width: 60.2em) {
	#debug::before {
		content: "> 962";
	}
}
@media only screen and (min-width: 985px) {
	#debug::before {
		content: "> 985";
	}
}
@media only screen and (min-width: 64em) {
	#debug::before {
		content: "> 1024";
	}
	#fullwidth {
		box-shadow: 0 0 1.11em #000;
	}
	#main {
		padding: 0 4%;
	}
	#main.maintable, .shortheader #header {
		padding-left: 40%;
	}
	.shortheader #header {
		margin-left: -.8%;
	}
	.side {
		width: 38%;
	}
	.side .thumbgroup {
		font-size: .9em;
	}
	#navbar {
		font-size: 1.1em;
	}
	.side ul.thumbgroup li {
		width: 44%;
	}
	.side .thumb {
		width: 10em;
		height: 6.84em;
	}
	ul.buttons li {
		width: 30%;
	}
}
@media only screen and (min-width: 71.2em) {
	#debug::before {
		content: "> 1139";
	}
	.columnize {
		-moz-column-count: 2;
		-moz-column-gap: 3em;
		-moz-column-rule: 1px dashed #000;
		-webkit-column-count: 2;
		-webkit-column-gap: 3em;
		-webkit-column-rule: 1px dashed #000;
		column-count: 2;
		column-gap: 3em;
		column-rule: 1px dashed #000;
	}
}

@media only screen and (min-width: 80em) {
	#debug::before {
		content: "> 1280";
	}
	body {
		font-size: 1.25vw;
	}	
	#fullwidth {
		padding: 0 0 2em;
		max-width: 80vw;
	}
	.thumbgroup {
		font-size: .8em;
		line-height: 1.1em;
	}
	.side .thumb {
		width: 11em;
		height: 7.52em;
	}
	.medialogos h4 {
		font-size: 1.7vw;
	}
}
@media only screen and (min-width: 85.5em) {
	#debug::before {
		content: "> 1368";
	}
}
@media only screen and (min-width: 89em) {
	#debug::before {
		content: "> 1424";
	}
}
@media only screen and (min-width: 100em) {
	#debug::before {
		content: "> 1600";
	}
}
@media only screen and (min-width: 120em) {
	#debug::before {
		content: "> 1920";
	}
}
