/*

Type Supply CSS

Notes:
------
1. If you are looking for CSS tips and tricks,
   I suggest that you look elsewhere. I have
   no idea what I'm doing.
2. Shadows are implemented with:
   -webkit-box-shadow: 4px 4px 3px black;
   This is, obviously, supported only by Safari.
3. Round corners are implemented with:
   -webkit-border-radius: 5px; and friends.
   This is, obviously, supported only by Safari.
   I tried using the Mozilla equivalents, but
   they didn't look so good and the images
   inside the corners were not properly clipped.

*/

body {
	padding: 0px;
	margin: 0px;
	font-family: "Helvetica Neue", Helvetica, Verdana, Arial, sans-serif;
	font-size: 12px;
	color: white;
	background-color: #14141e;
}

p {
	line-height: 20px;
}

a {
	text-decoration: none;
}

a:link {
	text-decoration: none;
}

a:visited {
	text-decoration: none;
}

a img {
	border: none;
}

.invisible {
	opacity: 0;
	display: none;
}

span.caps {
	letter-spacing: 0.05em;
	font-size: 95%;
}

/* ---------- */
/* Navigation */
/* ---------- */

.navigationColumn {
	position: absolute;
	left: 30px;
	top: 30px;
	width: 125px;
}

/* Main Navigation */

.navigation {
	margin-bottom: 10px;
	border: 1px solid #787882;
	background-color: #343440;
	-webkit-box-shadow: 4px 4px 3px black;
	/* -moz-border-radius-bottomleft: 5px; */
	/* -moz-border-radius-bottomright: 5px; */
	-webkit-border-bottom-left-radius: 5px;
	-webkit-border-bottom-right-radius: 5px;
}

.navigation a.logo {
	display: block;
	padding: 0px;
	background-image: url(img/nav_logo-off.png);
	background-repeat: no-repeat;
}

.navigation a.logo:hover {
	background-image: url(img/nav_logo-on.png);
	background-repeat: no-repeat;
}

.navigation ul {
	margin: 0px;
	padding: 0px;
}

.navigation li {
	display: block;
	list-style-type: none;
	font-size: 14px;
	border-top: 1px solid #787882;
	background-image: url(img/nav_buttonGradient-off.png);
	background-repeat: repeat-x;
	padding: 6px 0px 6px 7px;
}

.navigation li a {
	display: block;
	background-color: transparent;
	color: white;
}

.navigation li:hover,
#portfolioTypefaces #navigationPortfolioTypefaces,
#portfolioLettering #navigationPortfolioLettering,
#profile #navigationProfile,
#news #navigationNews {
	background-color: #525261;
	background-image: url(img/nav_buttonGradient-on.png);
	background-repeat: repeat-x;
}

.navigation li.roundedBottom,
#news .roundedBottom a,
.navigation li.roundedBottom a:hover  {
	/* -moz-border-radius-bottomleft: 5px; */
	/* -moz-border-radius-bottomright: 5px; */
	-webkit-border-bottom-left-radius: 5px;
	-webkit-border-bottom-right-radius: 5px;
}

/* secondary navigation */

.secondaryNavigation {
	padding-top: 1px;
	border: 1px solid #787882;
	background-color: #343440;
	-webkit-box-shadow: 4px 4px 3px black;
	/* -moz-border-radius: 5px; */
	-webkit-border-radius: 5px;
}

.secondaryNavigation ul {
	margin: -1px 0px 0px 0px;
	padding: 0px;
}

.secondaryNavigation li {
	display: block;
	list-style-type: none;
	font-size: 11px;
	border-top: 1px solid #787882;
	background-image: url(img/nav_buttonGradient-off.png);
	background-repeat: repeat-x;
	padding: 7px 0px 8px 7px;
}

.secondaryNavigation li a {
	display: block;
	background-color: transparent;
	color: white;
}

.secondaryNavigation li:hover {
	background-color: #525261;
	background-image: url(img/nav_buttonGradient-on.png);
	background-repeat: repeat-x;
}

.secondaryNavigation li.selected {
	background-color: #525261;
	background-image: url(img/nav_buttonGradient-on.png);
	background-repeat: repeat-x;
}

/* rounding add ons */

.secondaryNavigation li.roundedTop,
.secondaryNavigation li.roundedTop:hover,
.secondaryNavigation li.roundedTop.selected {
	border-top: none;
	/* -moz-border-radius-topleft: 5px; */
	/* -moz-border-radius-topright: 5px; */
	-webkit-border-top-left-radius: 5px;
	-webkit-border-top-right-radius: 5px;
}

.secondaryNavigation li.roundedBottom,
.secondaryNavigation li.roundedBottom:hover,
.secondaryNavigation li.roundedBottom.selected {
	/* -moz-border-radius-bottomleft: 5px; */
	/* -moz-border-radius-bottomright: 5px; */
	-webkit-border-bottom-left-radius: 5px;
	-webkit-border-bottom-right-radius: 5px;
}

/* arrow buttons */

.secondaryNavigation .arrowContainer {
	margin: -1px 0px 1px 0px;
	width: 123px;
	height: 36px;
}

.secondaryNavigation .arrowContainer ul {
	margin: 0px;
	padding: 0px;
	list-style: none;
}

.secondaryNavigation .arrowContainer li {
	margin: 0px;
	padding: 0px;
	display: inline;
}

.secondaryNavigation .arrowContainer a {
	float: left;
	display: block;
	padding: 0px;
}

.secondaryNavigation .arrowContainer a.backButton {
	width: 61px;
	height: 36px;
	border-right: 1px solid #787882;
	background-image: url(img/nav_arrowBack-off.png);
	background-repeat: no-repeat;
	/* -moz-border-radius-topleft: 5px; */
	-webkit-border-top-left-radius: 5px;
}

.secondaryNavigation .arrowContainer a.backButton:hover {
	background-image: url(img/nav_arrowBack-on.png);
}

.secondaryNavigation .arrowContainer a.forwardButton {
	width: 61px;
	height: 36px;
	background-image: url(img/nav_arrowForward-off.png);
	background-repeat: no-repeat;
	/* -moz-border-radius-topright: 5px; */
	-webkit-border-top-right-radius: 5px;
}

.secondaryNavigation .arrowContainer a.forwardButton:hover {
	background-image: url(img/nav_arrowForward-on.png);
}

/* ------- */
/* Content */
/* ------- */

.contentColumn {
	position: absolute;
	left: 185px;
	top: 30px;
	padding-bottom: 40px;
}

.content {
	width: 570px;
	margin-bottom: 10px;
	border: 1px solid #787882;
	-webkit-box-shadow: 4px 4px 3px black;
}

.whiteContent {
	width: 570px;
	margin-bottom: 10px;
	background-color: white;
	color: black;
	border: 1px solid white;
	-webkit-box-shadow: 4px 4px 3px black;
}

/* ------------ */
/* Story Column */
/* ------------ */

.storyColumn {
	overflow: visible;
	margin: 30px;
}

.storyColumn p {
	margin: 0px 0px 10px 0px;
}

.storyColumn a,
.storyColumn a:visited {
	color: black;
	border-bottom: 1px solid #b4b4be;
}

.storyColumn h1 {
	width: 510px;
	padding: 15px 0px 15px 0px;
	margin: 30px 0px 20px 0px;
	font-size: 40px;
	font-weight: bold;
	color: #14141e;
	background-color: white;
	border-top: 1px solid #b4b4be;
	border-bottom: 1px solid #b4b4be;
}

.storyColumn h2.missionStatement {
	margin-bottom: 20px;
	padding: 0px;
	font-size: 17px;
	line-height: 25px;
	font-weight: normal;
	color: #85858c;
}

.storyColumn h3.bio {
	margin: 20px 0px 10px 0px;
	padding-bottom: 7px;
	font-size: 15px;
	color: #14141e;
	border-bottom: 1px solid #b4b4be;
}

.storyIllustration {
	width: 510px;
	padding: 15px 0px 15px 0px;
	margin: 5px 0px 5px 0px;
	background-color: white;
}

/* ------- */
/* Headers */
/* ------- */

h2.homeSubsectionHeader {
	margin: 10px;
	padding-bottom: 5px;
	border-bottom: 1px solid #787882;
	font-size: 14px;
	font-style: normal;
	font-weight: normal;
	color: #787882;
}

h3.sectionIntro {
	margin: 0px 0px 10px 0px;
	padding: 15px 20px 15px 20px;
	font-size: 15px;
	line-height: 1.50;
	font-weight: normal;
	border-bottom: 1px solid #787882;
}

h3.sectionIntro a,
h3.sectionIntro a:visited {
	font-weight: bold;
	color: white;
}

/* ----- */
/* Lists */
/* ----- */

img.listImageLarge {
	margin: 0px 10px 10px 10px;
}

img.listImageSmall {
	/* XXX why is the -3px offset necessary!? */
	margin: 0px -3px 7px 10px;
}


/* -------- */
/* Sections */
/* -------- */

/* Profile */

table.clientList {
	width: 100%;
	margin: -10px 0px 15px 0px;
	padding: 0px;
	font-size: 12px;
	color: black;
}

td.clientListName {
	height: 25px;
	background-color: white;
	border-bottom: 1px solid #b4b4be;
}

td.clientListIcon {
	border-bottom-color: #b4b4be;
	height: 25px;
	text-align: center;
	background-color: white;
	border-bottom: 1px solid #b4b4be;
}

span.clientListNote {
	color: #787882;
}

/* Typefaces */

.typefaceItemHeader {
	width: 100%;
	height: 82px;
	margin-bottom: 1px;
	background-color: #14141e;
	font-size: 14px;
}

.typefaceItemHeader a:hover {
	color: white;
}

.typefaceItemHeader a.selected {
	color: white;
}

.typefaceItemHeaderRow1 {
	position: relative;
	top: 15px;
	left: 15px;
	width: 540px;
	padding-bottom: 10px;
	color: white;
	border-bottom: 1px solid white;
	vertical-align: middle;
}

.typefaceItemHeaderRow2 {
	position: relative;
	float: left;
	top: 25px;
	left: 15px;
	width: 540px;
	color: white;
	vertical-align: middle;
}

.typefaceItemHeaderRow2 .sectionItemContainer {
	float: left;
}

.typefaceItemHeaderRow2 .buyButton {
	float: right;
	margin-top: -3px;
	padding: 3px 5px 3px 5px;
	background-color: #14141e;
	background-repeat: repeat-x;
	background-image: url(img/header_buyButtonGradient.png);
	border: 1px solid white;
	color: white;
	font-weight: bold;
	font-size: 10px;
	/* -moz-border-radius: 5px; */
	-webkit-border-radius: 5px;
}

.typefaceItemSpecimenContainer {
	text-align: center;
	margin: 30px 0px 30px 0px;
}

.typefaceItemSpecimenContainerWithMembers {
	text-align: center;
	margin: 85px 0px 30px 0px;
}

/* LetterSetter */

.lsSuperContainer {
	margin-top: 30px;
}

.lsSuperContainerWithMembers {
	margin-top: 85px;
}

.lsContainer {
	margin: 30px 30px 30px 30px;
	background-color: white;
	border: 1px solid black;
}

img.lsImage {
	margin: 0px 0px 0px 0px;
}

.lsInterfaceContainer {
	position: relative;
	width: 478px;
	padding: 15px;
	overflow: hidden;
}

.lsInputContainer {
	float: left;
	width: 220px;
}

.lsFeaturesContainer {
	float: left;
	width: 242px;
	margin-left: 14px;
	border: 1px solid black;
}

input.lsTextInput {
	width: 100%;
}

img.lsProgressIndicator {
	margin: 10px 0px 20px 0px;
}

p.lsInstructions {
	color : black;
}

h3.lsFeaturesTitle {
	margin: 0px;
	padding: 5px 5px 5px 5px;
	background-color: black;
	font-size: 12px;
	color: white;
}

h3.lsFeatureGroupHead {
	margin: 0px;
	padding: 5px 5px 5px 25px;
	border-top: 1px solid black;
	background-color: black;
	font-size: 12px;
	color: black;
}

h3.lsFeatureGroupHead.open {
	background-image: url(img/ls_buttonOpen.png);
	background-repeat: no-repeat;
}

h3.lsFeatureGroupHead.closed {
	background-image: url(img/ls_buttonClosed.png);
	background-repeat: no-repeat;
}

.lsFeatureGroup {
	padding: 5px;
	border-top: 1px solid black;
	background-color: white;
}

input.lsFeatureCheckBox {
	margin: 3px;
}

input.lsFeatureRadio {
	margin: 3px;
}

span.lsFeatureText {
	margin-left: 1px;
	line-height: normal;
}

/* member buttons */
/* credit to: http://exploding-boy.com/images/cssmenus/menus.html */

.memberButtonContainer {
	float: left;
	width: 508px;
	margin: 30px 0px 0px 30px;
	border: 1px solid black;
	background-color: black;
	background-image: url(img/memberButton_gradientOff.png);
	font-size: 10px;
	font-weight: bold;
	line-height: normal;
	/* -moz-border-radius: 5px; */
	-webkit-border-radius: 5px;
}

.memberButtonContainer ul {
	margin: 0px;
	padding: 0px;
	list-style: none;
}

.memberButtonContainer li {
	display: inline;
	margin: 0px;
	padding: 0px;
}

.memberButtonContainer span {
	float: left;
	display: block;
	padding: 3px 7px 3px 7px;
	border-right: 1px solid black;
}

.memberButtonContainer span.hover,
.memberButtonContainer span.selected {
	background-color: black;
	background-image: url(img/memberButton_gradientOn.png);
	color: white;
}

.memberButtonContainer span.first {
	/* -moz-border-radius-topleft: 4px; */
	/* -moz-border-radius-bottomleft: 4px; */
	-webkit-border-top-left-radius: 4px;
	-webkit-border-bottom-left-radius: 4px;
}

/* Lettering */

img.portLetteringImage {
	display: block;
	margin-right: auto;
	margin-left: auto;
}

.portLetteringStoryContainer {
	overflow: hidden;
	margin: 0px 10px 10px 10px;
	padding-top: 10px;
}

.portLetteringTitleColumn {
	float: left;
	width: 165px;
	padding-right: 10px;
	font-size: 14px;
	font-weight: bold;
	text-align: right;
}

.portLetteringStoryColumn {
	float: left;
	width: 364px;
	padding-left: 10px;
	line-height: 17px;
}

.portLetteringStoryColumn p {
	margin: 0px;
	padding-bottom: 7px;
}

.portLetteringStoryColumn a,
.portLetteringStoryColumn a:visited {
	color: black;
	border-bottom: 1px solid #b4b4be;
}

/* ---- */
/* News */
/* ---- */

h2.newsItem {
	width: 510px;
	padding-top: 15px;
	padding-bottom: 15px;
	margin: 30px 0px 10px 0px;
	font-size: 20px;
	line-height: 25px;
	color: #14141e;
	background-color: white;
	border-top: 1px solid #b4b4be;
	border-bottom: 1px solid #b4b4be;
}

h2.newsHeadline {
	width: 510px;
	padding-top: 15px;
	padding-bottom: 15px;
	margin: 30px 0px 10px 0px;
	font-size: 20px;
	line-height: 25px;
	color: #14141e;
	background-color: white;
	border-top: 1px solid #b4b4be;
	border-bottom: 1px solid #b4b4be;
}

.newsHeadlines {
	padding-top: 10px;
	margin-top: 20px;
	border-top: 1px solid #b4b4be;
}

h3.newsItem {
	padding: 0px;
	margin: 10px 0px 10px 0px;
	font-size: 15px;
	color: #14141e;
}

span.newsItemHeaderDate {
	color: #b4b4be;
	font-weight: normal;
}

/* ---- */
/* EULA */
/* ---- */

h2.EULATitle {
	width: 510px;
	padding-top: 15px;
	padding-bottom: 15px;
	margin: 30px 0px 10px 0px;
	font-size: 20px;
	line-height: 25px;
	color: #14141e;
	background-color: white;
	border-top: 1px solid #b4b4be;
	border-bottom: 1px solid #b4b4be;
}

ol.EULA {
	margin: 0px 0px 5px 15px;
	padding: 0px;
	line-height: 20px;
}

ol.EULA li {
	margin: 5px 0px 0px 0px;
}

/* ------ */
/* Errors */
/* ------ */

h1.error {
	margin: 0px;
	padding: 30px 0px 10px 0px;
	font-size: 30px;
	font-weight: bold;
	text-align: center;
}

p.error {
	padding: 0px 0px 30px 0px;
	font-size: 15px;
	text-align: center;
}

