/************************************************************
/************************************************************
Global Layout */

html {
	background:#2e3133;
}
body {
	background:#f0efef;
	color:#6e6e6e;
	font:10pt/1.3 'Century Gothic',Arial,Helvetica,sans-serif;
	margin:0;
	padding:0;
	min-width:300px;
}

/* Headings */
h1,h2,h3,h4,h5,h6 {
	font:bold 11pt/1.1 'Century Gothic',Arial,Helvetica,sans-serif;
	text-transform:uppercase;
	margin:0.7em 0;
}
h1 {
	font-size:20pt;
}
h2 {
	font-size:15pt;
	padding:0 1em 0.4em 0;
	border-bottom:1px solid #dadada;
}
h3 {
	font-size:12pt;
}
h4 {
	text-transform:none;
	color:#2e3133;
}

/* Links */
a:link,
a:visited,
a:hover,
a:active {
	color:#8bbf45;
	text-decoration:none;
}
a img, iframe {
	border:none;
}

/* Block-level */
p {
	margin:1em 0;
}
address {
	font-style:normal;
	margin:1em 0;
}


/************************************************************
Layout: Header */

body>header {
	position:relative;
	z-index:2;
	background:#2e3133;
	color:#c5c7c7;
	padding:0 1.5em;
	min-height:100px;
	border-bottom:8px solid #8dc63f;
}
body>header:after {
	content:' ';
	position:absolute;
	left:0;
	bottom:-25px;
	height:34px;
	width:100%;
	background:transparent url('../images/site/lines.png') repeat center center;
}

/* Logo */
body>header h1 {
	float:left;
	margin:0;
}
body>header h1 a {
	display:block;
	text-indent:-9999px;
	outline:none;
	background:transparent url('../images/site/logo.png') no-repeat center center;
	margin:0 auto;
	width:225px;
	height:100px;
}


/* Navigation */
#main-nav {
	text-align:right;
}
#main-nav a {
	color:#c5c7c7;
	text-transform:uppercase;
}
#main-nav>a { /* "Log Out" tab */
	display:inline-block;
	background:#1b1f20;
	padding:0.5em 2em;
	border:1px solid #787b7c;
	border-top:none;
	border-radius:0 0 0.5em 0.5em;
}
#main-nav>ul {
	list-style:none;
	margin:0 -0.4em 0 0;
	padding:0.8em 0;
	font-size:12pt;
}
#main-nav>ul>li {
	display:inline-block;
}
#main-nav ul a {
	display:block;
	font-weight:bold;
	padding:0.5em 0.7em;

	-webkit-transition:all 0.4s ease 0s;
	transition:all 0.4s ease 0s;
}
#main-nav li.sel>a {
	color:#8dc63f !important;
}
#main-nav ul a:hover {
	color:#fff;
}

/* Second level */
#main-nav ul ul {
	list-style:none;
	position:absolute;
	text-align:left;
	z-index:100;
	font-size:10.5pt;
	margin:0;
	padding:0 0 0.5em;
	background:#2e3133;
	border-radius:0 0 0.5em 0.5em;
	visibility:hidden;
	opacity:0;

	-webkit-transition:all 0.4s ease 0s;
	transition:all 0.4s ease 0s;
}
#main-nav ul ul a {
	text-transform:none;
	padding:0.5em 2em 0.5em 1em;
}
#main-nav li:hover>ul {
	visibility:visible;
	opacity:1;
}

#main-nav>ul>li:last-child ul {
	margin-left:-5em;
}


/************************************************************
Layout: Content */

/* Top grainy box */
#content {
	position:relative;
	background:#fafafa url('../images/site/grain.jpg') repeat center top;
	padding-top:2em;
	min-height:10em;
}
#content:after {
	content:' ';
	position:absolute;
	left:0;
	bottom:-9px;
	height:18px;
	width:100%;
	background:transparent url('../images/site/lines.png') repeat center center;
}
#content>header>address { /* E.g. for invoice header */
	clear:both;
	margin-left:0.4em;
	font-size:12pt;
}


/* General */
body>section {
	padding:1.5em 2em 1em;
}
body>section>h2,
body>section>h3 {
	text-align:center;
}
body>section>h3 {
	position:relative;
	z-index:2;
	text-shadow:3px 0 0 #f0efef, -3px 0 0 #f0efef, 6px 0 0 #f0efef, -6px 0 0 #f0efef, 9px 0 0 #f0efef, -9px 0 0 #f0efef, 12px 0 0 #f0efef, -12px 0 0 #f0efef, 15px 0 0 #f0efef, -15px 0 0 #f0efef, 18px 0 0 #f0efef, -18px 0 0 #f0efef;
}
body>section>h3:before {
	content:' ';
	position:absolute;
	width:100%;
	top:6pt;
	left:0;
	border-top:1px solid #dadada;
	z-index:-1;
}

body>section>header {
	overflow:hidden;
}
body>section>header>h2 {
	min-width:40%;
	float:left;
}
body>section>header>h2>small {
	font-size:90%;
	text-transform:none;
}
body>section>header>h2>small:before {
	content:'\2013  ';
}
body>section>header>a.button {
	float:right;
	margin:2em 0 0 1em;
}
body>section>header nav {
	clear:both;
}


/************************************************************
Layout: Footer */

body>footer {
	background:#2e3133;
	color:#999;
	text-align:center;
	padding:0.1em 0;
	font-size:9pt;
}
body>footer a {
	color:#999 !important;
}


/************************************************************
Status colors */

/* NOTES:

CUSTOMER FLAGS

warning - red
caution - yellow
awesome - green
newbie - blue


LEAD STATUSES

new - blue
in-quoting - red
awaiting (customer) - yellow
converted - green
closed - gray


QUOTE STATUSES

new (in progress) - blue
sent - purple
awaiting (customer) - yellow
revisions (needed) - orange
accepted - green
(accepted and) billed - teal
rejected - red

*/

/* Grayed-out */
.closed,
.disabled {
	background-color:#ffe7dd !important;
	font-style:italic;
	opacity:0.65;
}

/* Red */
.overdue,
.in-quoting,
.rejected,
.warning {
	background-color:#ffc7b7 !important;
}

/* Orange */
.revisions {
	background-color:#ffe099 !important;
}

/* Yellow */
.awaiting,
.caution {
	background-color:#fffeb7 !important;
}

/* Green */
.accepted,
.awesome,
.converted,
.send {
	background-color:#d7ffb7 !important;
}

/* Teal */
.billed {
	background-color:#d7ffd7 !important;
}

/* Blue */
.info,
.new,
.newbie {
	background-color:#d2e2ff !important;
}

/* Purple */
.sent {
	background-color:#e4d2ff !important;
}

/* Negative numbers */
.negative { color:#f00; }
.negative:before { content:'('; }
.negative:after { content:')'; }

/* Color key table*/
.color-key {
    width: auto;
    margin-bottom: 25px;
}

/************************************************************
Miscellaneous */

/* Text alignment */
.left { text-align:left !important; }
.center { text-align:center !important; }
.right { text-align:right !important; }

/* Prevent wrapping */
.nowrap { white-space:nowrap; }

/* Buttons */
.button {
	display:inline-block;
	background:#8dc63f;
	color:#2e3133 !important;
	font:bold 11pt/1.3 'Century Gothic',Arial,Helvetica,sans-serif;
	text-transform:uppercase;
	padding:0.4em 1.7em;
	margin-bottom:0.5em;
	border:none;
	border-radius:0.4em;
	cursor:pointer;
}
.button.alt {
	background:#2e3133;
	color:#8dc63f !important;
}

.button.inline {
	padding: .2em 1em;
	text-transform: none;
	font-size: 10.5pt;
}

.button.add:before {
	content:'+';
	font-size:125%;
	line-height:1;
	vertical-align:middle;
	margin:0 0.4em 0 -0.6em;
}

/* Back link/s */
a.back,
nav.back a {
	display:inline-block;
	margin:0.5em 0 0 0.5em;
	text-transform:uppercase;
	font-weight:bold;
	color:#2e3133;
}
a.back:before,
nav.back a:first-child:before {
	content:' ';
	display:inline-block;
	vertical-align:baseline;
	height:0;
	margin-right:0.4em;
	border-right:6px solid #2e3133;
	border-top:5px solid transparent;
	border-bottom:5px solid transparent;
}
nav.back a+a:before {
	content:'  |  ';
	font-weight:bold;
	margin:0 0.5em 0 0;
}

/* Icons */
a.icon {
	display:inline-block;
	text-indent:-9999px;
	text-align:left;
	outline:none;
	width:20px;
	height:20px;
	background:transparent url('../images/icons/actions.png') no-repeat center center;
	cursor:pointer;
	vertical-align:top;
}
a.icon.add { background-position:center -25px; }
a.icon.delete { background-position:center -51px; }
a.icon.edit { background-position:center 0; }
a.icon.sort{ background-image:url('../images/icons/movehandles.png'); cursor:move; }
a.icon.write { background-image:url('../images/icons/edit-icons.png'); background-position:center -136px; }

/* Loading Icon -- TODO: CHANGE THIS? */
.icon.loading {
	display:inline-block;
	width:16px;
	height:16px;
	background-image:url('../images/icons/loading-sm.gif');
}

/* Note text */
.note {
	display:inline-block;
	padding:0 0 0 0.7em;
	font-size:90%;
}
.note:before {
	content:'*';
	float:left;
	margin:0 0 0 -0.7em;
	font-style:normal;
	font-weight:bold;
	font-size:130%;
	color:#900;
}


/* SQL debug box */
.debug-sql {
	position:absolute;
	border:1px solid #fff;
	white-space:nowrap;
	overflow:hidden;
	margin:1.5em 0 0;
	background:#fff;
	padding:0.2em;
	opacity:0.1;
	width:50%;
	right:0;

	-webkit-transition:all 0.4s ease 0s;
	transition:all 0.4s ease 0s;
}
.debug-sql:hover {
	white-space:pre-wrap;
	background-color:#fee;
	border-color:#fdd;
	opacity:1;
}


/* Fix extra button padding in Firefox */
input[type="submit"]::-moz-focus-inner {
	border:none;
	padding:0;
	line-height:1;
}


/************************************************************
/************************************************************
Pages */

/************************************************************
General stuff */

/* Content box */
article {
	background:#fff;
	margin:1em 0;
	padding:1em 1.2em;
	border-radius:0.5em;
	overflow:auto;
}
article header {
	overflow:hidden;
}
article header h3:after {
	content:' ';
	display:inline-block;
	vertical-align:middle;
	width:35%;
	margin-left:0.5em;
	border-top:1px solid #dadada;
}
article header>a.button {
	float:right;
	margin:-2em 0 0;
	font-size:10pt;
}


/* Icon headers */
h2.icon:before {
	content:' ';
	display:inline-block;
	vertical-align:bottom;
	width:45px;
	height:40px;
	background:transparent url('../images/site/nav-icons.png') no-repeat center center;
	background-size:100px auto;
}
h2.icon.cust:before { background-position:-22px -101px; width:59px; }
h2.icon.dash:before { background-position:-28px 5px; }
h2.icon.inv:before { background-position:-28px -407px; }
h2.icon.mng:before { background-position:-28px -304px; }
h2.icon.proj:before { background-position:-27px -197px; }
h2.icon.sales:before { background-position:-28px -507px; }


/************************************************************
Section navigation */

/* Buttons */
#sub-nav {
	margin:0 -1em 1em;
}
#sub-nav ul {
	display:table;
	table-layout:fixed;
	list-style:none;
	width:100%;
	margin:0;
	padding:0;
}
#sub-nav li {
	display:table-cell;
	vertical-align:middle;
	text-align:center;
}
#sub-nav a {
	display:inline-block;
	text-align:center;
	background:#f0efef;
	color:#6e6e6e !important;
	width:90%;
	margin:0.2em 0;
	font:bold 21pt/2.3 'Century Gothic',Arial,Helvetica,sans-serif;
	text-transform:uppercase;
	border-radius:0.3em;
}
#sub-nav li.sel>a {
	background:#8dc63f;
	color:#2e3133 !important;
}


/* Tabs */
.tabs {
	margin:1em 0.5em 0;
	padding:0 2em;
	box-shadow:inset 0 -0.5em 0.5em -0.7em rgba(0,0,0,0.2);
}
.tabs ul {
	list-style:none;
	margin:0;
	padding:0;
	font:bold 11pt/2 'Century Gothic',Arial,Helvetica,sans-serif;
	text-transform:uppercase;
}
.tabs li {
	display:inline-block;
}
.tabs a {
	display:block;
	background:#8dc63f;
	color:#2e3133;
	padding:0.2em 1.5em 0;
	box-shadow:inset 0 -0.5em 0.5em -0.7em rgba(0,0,0,0.2);
	border-radius:0.4em 0.4em 0 0;
}
.tabs li.sel a {
	background:#fff;
	box-shadow:none;
}

.tabs+article,
.tabs+section {
	margin-top:0;
}


/************************************************************
Forms */

/* Layout */
fieldset {
	border:none;
	background:#f0efef;
	color:#2e3133;
	margin:1em 0 3em;
	padding:0.8em 1.2em 0.2em;
	border-radius:0.5em;
}
fieldset p {
	display:inline-block;
	vertical-align:bottom;
	margin:0 1em 1em 0;
}
fieldset label {
	display:block;
	margin:0.2em;
}
fieldset legend {
	float:left;
	margin:-2.5em 0 0;
	font:bold 12pt/2 'Century Gothic',Arial,Helvetica,sans-serif;
	text-transform:uppercase;
	color:#6e6e6e;
}
fieldset p.block {
	display:block;
}
fieldset p.block textarea {
	width:100%;
}
form table+fieldset {
	margin-top:4em;
}


/* Labels */
label {
	font-weight:bold;
}
label[title] {
	cursor:help;
}
label[title]:after {
	content:'?';
	display:inline-block;
	text-align:center;
	background:#2e3133;
	color:#fff;
	height:14px;
	width:14px;
	font-size:9pt;
	line-height:14px;
	margin-left:0.3em;
	border-radius:100%;
}

/* Icons w/in labels */
label .icon {
	margin:0 0.2em;
}
label .icon:before,
label .icon:after {
	content:'[';
	display:inline-block;
	font-weight:bold;
	margin:0 -0.2em;
	text-indent:0;
	float:left;
	color:#999;
}
label .icon:after {
	content:']';
	float:right;
}


/* Fields */
textarea,
select,
input[type="text"],
input[type="password"],
input[type="email"],
input[type="tel"] {
	font:10.5pt/1.3 'Century Gothic',Arial,Helvetica,sans-serif;
	background:#fff;
	width:15em;
	padding:0.1em 0.4em;
	margin-right:0.5em;
	border:1px solid #c1c8d0;
	border-radius:1px;
	box-sizing:border-box;
}
textarea:focus,
select:focus,
input[type="text"]:focus,
input[type="password"]:focus,
input[type="email"]:focus,
input[type="tel"]:focus {
	border-color:#8dc63f;
}
.datePickerLink {
	color:#2e3133 !important;
	text-transform:uppercase;
	font-weight:bold;
}
input[type="text"].datePicker {
	max-width:10em;
}
input[type="text"].numeric {
	text-align:right;
	max-width:6em;
}

/* Radio / checkbox groups */
form .nowrap {
	display:inline-block;
	vertical-align:top;
	white-space:normal;
	padding:0 0 0 1.2em;

	-moz-box-sizing:border-box;
	box-sizing:border-box;
}
form .nowrap input {
	margin:0.2em 0 0 -1.2em;
	float:left;
}
form .nowrap label {
	margin:0 0.2em;
}


/* Errors */
p.error {
	font-weight:bold;
	color:#f30;
}



/************************************************************
Modal */

.modal {
	position:fixed;
	background:#fff url('../images/site/lines.png') repeat-x center -17px;
	padding:2em 1.5em 1em;
	top:10%;
	left:10%;
	width:80%;
	height:80%;
	z-index:9999;
	border-radius:0.5em;

	-moz-box-sizing:border-box;
	-webkit-box-sizing:border-box;
	box-sizing:border-box;
}
.modal-content {
	max-height:100%;
	overflow-y:auto;
}
.modal-close {
	position:absolute;
	right:-0.5em;
	top:-0.5em;
	color:#000 !important;
	background:#fff;
	width:1.3em;
	height:1.3em;
	text-align:center;
	font:bold 14pt/1.3em 'Century Gothic',Arial,Helvetica,sans-serif;
	border:3px solid #000;
	border-radius:100%;
	cursor:pointer;
}
.modal-overlay {
	position:fixed;
	background-color:rgba(0,0,0,0.5);
	z-index:9998;
	width:100%;
	height:100%;
	left:0;
	top:0;
}

/*.modal-title{
	margin:0;
	background-color:#88f;
}
.modal-content{
	border-bottom-left-radius:4px;
	border-bottom-right-radius:4px;
	padding:.5em 1em;
}*/


/* Forms within */
.modal h3 {
	border-bottom:1px solid #dadada;
}
.modal form {
	padding-left:10em;
}
.modal form label:first-child {
	float:left;
	margin-left:-10em;
	width:9.5em;
}
.modal form textarea,
.modal form input[type="text"],
.modal form input[type="password"],
.modal form input[type="email"],
.modal form input[type="tel"] {
	width:90%;
}


/************************************************************
Tables */

/* General */
table {
	width:100%;
	border-collapse:collapse;
	margin:1em 0;
	background:#fff;
	color:#2e3133;
}
td, th {
	padding:0.5em 0.7em;
}
tr[title] {
	cursor:help;
}

/* Captions */
caption {
	margin:0.7em 0.4em;
}
caption, th {
	text-align:left;
	font-size:11pt;
	font-weight:bold;
	color:#2e3133;
}
caption .button {
	float:right;
	font-size:75%;
	margin:0;
}

/* Table header */
thead {
	background:#f0efef;
	border-radius:0.3em;
	box-shadow:0 0 6px rgba(0,0,0,0.3);
}
thead th {
	padding:1em 0.5em;
}
thead th.sort { /* Current sorted column */
	text-decoration:underline;
}
thead th.sort:after {
	content:' ';
	display:inline-block;
	vertical-align:middle;
	margin:0 0 0 0.5em;
	border-top:0.4em solid #2e3133;
	border-left:0.5em solid transparent;
	border-right:0.5em solid transparent;
}
thead th.sort.desc:after { /* Current sorted column - descending */
	border-bottom:0.4em solid #2e3133;
	border-top:none;
}

/* Zebra striping */
/*tbody tr:nth-child(even) {
	background:#f0efef;
}*/
tbody tr:nth-child(even) th,
tbody tr:nth-child(even) td {
	background-color:rgba(0,0,0,0.07);
}


/* Search tables */
#search-tbl {
	position:relative;
	margin:-1em 0 2em;
	min-height:10em;
}
#search-tbl nav {
	position:relative;
	float:right;
	z-index:2;
}
#search-tbl.loading:after {
	content:' ';
	position:absolute;
	z-index:90;
	height:100%;
	width:100%;
	left:0;
	top:0;
	background:rgba(0,0,0,0.2) url('../images/icons/loading.gif') no-repeat center center;
	box-shadow:0 0 1em rgba(0,0,0,0.42);
	opacity:0.5;
}


/************************************************************
"Frank Says" */

.frank-says {
	float:right;
	position:relative;
	margin:0 0 1em 1em;
	padding:0 80px 0 0;
	max-width:30%;
}
.frank-says:before {
	content:url('../images/icons/jb-frank.png');
	float:right;
	margin:0 -80px 0 0;
}
.frank-says blockquote {
	position:relative;
	margin:0;
	padding:0.1em 0.7em;
	background:#fff;
	border:0.3em solid rgba(0,0,0,0.1);
	border-radius:0.7em;

	-webkit-transition:all 0.4s ease 0s;
	transition:all 0.4s ease 0s;
}
.frank-says blockquote:before { /* Arrow */
	content:' ';
	position:absolute;
	left:100%;
	top:1em;
	background:inherit;
	border:0.5em solid rgba(0,0,0,0.1);
	border-radius:0 0 0 100%;
	border-bottom:none;
	border-left:none;
	height:1.5em;
	width:1.5em;

	-webkit-transform:scaleY(0.5) rotate(45deg);
	-ms-transform:scaleY(0.5) rotate(45deg);
	transform:scaleY(0.5) rotate(45deg);

	-webkit-transform-origin:center top;
	-ms-transform-origin:center top;
	transform-origin:center top;
}
.frank-says blockquote p {
	margin:0.5em 0;
}

/* Editing stuff */
.frank-says textarea {
	display:block;
	background-color:rgba(255,255,255,0.4);
	border:1px solid rgba(0,0,0,0.1);
	height:7em;
	width:100%;
	margin:0;

	-moz-box-sizing:border-box;
	box-sizing:border-box;
}
.frank-says .nowrap {
	width:49%;
}
.frank-says cite {
	white-space:nowrap;
	opacity:0.7;
}
.frank-says cite:before {
	content:'\2015  ';
	margin:0 0 0 0.3em;
}

/* Status colors *
.frank-says blockquote.awesome { background-color:#d7ffb7; } /* Green *
.frank-says blockquote.caution { background-color:#fffeb7; } /* Yellow *
.frank-says blockquote.warning { background-color:#ffc7b7; } /* Red *
.frank-says blockquote.newbie { background-color:#d2e2ff; } /* Blue *
.frank-says blockquote.info { background-color:#d2e2ff; } /* Blue *
.frank-says blockquote.random { background-color:#e4d2ff; } /* Purple *
*/


/************************************************************
Message boxes */

.message {
	padding:0.1em 0.7em;
	background:#d7ffb7;
	border:0.3em solid rgba(0,0,0,0.1);
	border-radius:0.7em;
	visibility:visible;
	max-height:400px;
	overflow:hidden;
	opacity:1;

	-webkit-transition:all 0.4s ease 0s;
	transition:all 0.4s ease 0s;
}
.message p {
	margin:0.5em 0;
	font-weight:bold;
}

/* Hiding animation */
.message.hide {
	visibility:hidden;
	padding-bottom:0;
	border-width:0;
	padding-top:0;
	max-height:0;
	opacity:0;
}



/************************************************************
Page slider */

#slider {
	min-height:20em;
	overflow:hidden;
	position:relative;
	z-index:3; /* Prevents some glitches with overflow */
}
#slider>section {
	width:100%;
}
#slider section>header>h2 {
	display:none;
}
#slider article {
	margin:0;
	padding:0.5em;
}
#slider fieldset {
	margin:0;
}

/************************************************************
Pagination */

.pgtn {
	list-style:none;
	font-weight:bold;
	text-transform:uppercase;
	text-align:right;
	line-height:1;
	margin:1em 0;
	padding:0;
}
.pgtn li {
	display:inline;
}
.pgtn a {
	color:#2e3133 !important;
	padding:0 0.1em;
}
.pgtn strong {
	color:#8dc63f;
	padding:0 0.1em;
}
.pgtn .prev {
	margin-right:0.5em;
	padding-right:0.5em;
	border-right:1px solid #2e3133;
}
.pgtn .prev a:before {
	content:' ';
	display:inline-block;
	vertical-align:baseline;
	height:0;
	margin-right:0.4em;
	border-right:6px solid #2e3133;
	border-top:5px solid transparent;
	border-bottom:5px solid transparent;
}
.pgtn .next {
	margin-left:0.5em;
	padding-left:0.5em;
	border-left:1px solid #2e3133;
}
.pgtn .next a:after {
	content:' ';
	display:inline-block;
	vertical-align:baseline;
	height:0;
	margin-left:0.4em;
	border-left:6px solid #2e3133;
	border-top:5px solid transparent;
	border-bottom:5px solid transparent;
}


/************************************************************
Portal */

/* Navigation */
#portal-nav {
	margin:1em 0;
}
#portal-nav ul {
	text-align:center;
	list-style:none;
	margin:0;
	padding:0;
}
#portal-nav li {
	display:inline;
	vertical-align:middle;
}
#portal-nav a {
	position:relative;
	display:inline-block;
	text-indent:-9999px;
	outline:none;
	/*width:21em;*/
	width:31%;
	height:12em;
	margin:1.2em 1%;
	background:#f0efef url('../images/site/nav-icons.png') no-repeat center center;
	border-radius:0.5em;
}
#portal-nav a:after {
	content:'\2014  Access \2014';
	position:absolute;
	text-align:center;
	text-indent:0;
	z-index:2;
	top:0;
	left:0;
	width:100%;
	height:100%;
	font:bold 16.5pt/160px 'Century Gothic',Arial,Helvetica,sans-serif;
	text-transform:uppercase;
	color:#2e3133;
	background:rgba(138,194,62,0.95);
	box-shadow:inset 0 0 2em rgba(0,0,0,0.2);
	border-radius:0.3em;
	visibility:hidden;
	opacity:0;

	-webkit-transition:all 0.4s ease 0s;
	transition:all 0.4s ease 0s;
}
#portal-nav a:hover:after {
	visibility:visible;
	opacity:1;
}

#portal-nav li[title="Dashboards"] a { background-position:center 30px; }
#portal-nav li[title="Customers"] a { background-position:center -124px; }
#portal-nav li[title="Projects"] a { background-position:center -280px; }
#portal-nav li[title="Sales"] a { background-position:center -750px; }
#portal-nav li[title="Invoicing"] a { background-position:center -595px; }
#portal-nav li[title="Manage"] a { background-position:center -440px; }


/* "Navigate tasks" */
#portal-tasks {
	display:table;
	width:100%;
	padding:0;
}
#portal-tasks>figure,
#portal-tasks>section {
	display:table-cell;
	padding:1em;
	margin:0;
}
#portal-tasks>figure {
	background:#8dc63f;
	color:#fff;
	width:380px;
	vertical-align:middle;
	border-radius:0.5em 0 0 0.5em;
}
#portal-tasks>figure a {
	color:#fff !important;
}
#portal-tasks>figure img,
#portal-tasks>figure figcaption {
	display:inline-block;
	vertical-align:middle;
}
#portal-tasks>figure img {
	text-align:center;
	max-width:200px;
	width:40%;
	margin:0 1em 0 0;
	background:#bbdd8c;
	border-radius:100%;
	overflow:hidden;
}
#portal-tasks figcaption {
	width:55%;
}
#portal-tasks figcaption h2 {
	border-bottom-color:#c6e39f;
}
#portal-tasks figcaption p {
	font-size:12pt;
}
#portal-tasks figcaption strong {
	text-transform:uppercase;
	display:block;
}


/************************************************************
Manage page */

/* Main tool nav */
#tool-nav {
	margin:0 0 2em;
	padding:0.5em 1em;
	width:39%;
	min-width:225px;
	background:#f0efef;
	border-radius:0.5em;
}
#tool-nav ul {
	list-style:none;
	margin:0;
	padding:0;
}
#tool-nav li {
	margin:0.5em 0;
}
#tool-nav li+li {
	border-top:1px solid #ddd;
	padding:0.5em 0 0;
}
#tool-nav a {
	font-size:13pt;
	display:block;
	color:#6e6e6e;
}
#tool-nav a:before {
	content:' ';
	display:inline-block;
	vertical-align:bottom;
	width:20px;
	height:22px;
	margin-right:0.5em;
	background:transparent url('../images/icons/edit-icons.png') no-repeat center center;
}
#tool-nav li.driptemplates a:before { background-position:center -549px; }
#tool-nav li.emailtemplates a:before { background-position:center -383px; }
#tool-nav li.leadsources a:before { background-position:center -577px; }
#tool-nav li.projectcategories a:before { background-position:center -50px; }
#tool-nav li.projecttemplates a:before { background-position:center -413px; }
#tool-nav li.quotesnippets a:before { background-position:center -189px; }
#tool-nav li.renewables a:before { background-position:center -246px; }
#tool-nav li.servicetypes a:before { background-position:center -25px; }
#tool-nav li.users a:before { background-position:center -161px; }




/************************************************************
/************************************************************
Responsive */

@media screen and (max-width: 900px) {

	/* Portal tasks area */
	#portal-tasks>figure {
		width:49%;
	}
	#portal-tasks figcaption {
		width:53%;
	}
}
@media screen and (max-width: 800px) {

	/* Portal nav */
	#portal-nav a {
		width:47%;
	}

	/* Portal task area */
	#portal-tasks figcaption h2 {
		font-size:13pt;
	}
	#portal-tasks figcaption p {
		font-size:11pt;
	}

	/* Sub-navigation */
	#sub-nav a {
		font-size:18pt;
	}

	/* "Frank Says" */
	.frank-says {
		max-width:35%;
	}
	.frank-says .nowrap {
		width:100%;
	}

}
@media screen and (max-width: 675px) {

	/* Portal task area */
	#portal-tasks>figure {
		width:35%;
	}
	#portal-tasks>figure img,
	#portal-tasks figcaption {
		display:block;
		width:100%;
		margin:0 auto;
	}

	/* Tables */
	table {
		font-size:90%;
	}
	th {
		font-size:105%;
	}
	td, th {
		padding:0.4em 0.5em
	}
	a.icon {
		transform:scale(0.8);
	}

	/* Sub-navigation */
	#sub-nav a {
		font-size:15pt;
	}
}
@media screen and (max-width: 625px) {

	/* Header / nav */
	#main-nav>ul {
		font-size:10pt;
	}

	/* Article header - get rid of line */
	article header h3:after {
		display:none;
	}

	/* "Frank Says" */
	.frank-says {
		float:none;
		max-width:100%;
		overflow:hidden;
		margin-left:0;
	}
	.frank-says .nowrap {
		margin-right:1em;
		width:10em;
	}
}
@media screen and (max-width: 575px) {

	/* Header / nav */
	body>header h1 { /* Logo */
		float:none;
		text-align:center;
	}
	#main-nav>a { /* Tab */
		position:absolute;
		top:0;
		right:1em;
	}
	#main-nav>ul { /* Navigation */
		text-align:center;
		font-size:12pt;
	}

	/* Portal task area */
	#portal-tasks>figure {
		width:150px;
	}

	/* Tables */
	table {
		font-size:85%;
	}

	/* Forms */
	fieldset p {
		display:block;
		width:auto;
	}
	fieldset textarea,
	fieldset input[type="text"],
	fieldset input[type="password"],
	fieldset input[type="email"],
	fieldset input[type="tel"] {
		width:98%;
	}

	/* Sub-navigation */
	#sub-nav {
		margin:0;
	}
	#sub-nav li {
		display:block;
		margin:0 0 1em;
	}
	#sub-nav a {
		display:block;
		width:auto;
		text-align:left;
		padding-left:1em;
	}
}
@media screen and (max-width: 525px) {

	/* Portal nav */
	#portal-nav a {
		display:block;
		margin:1.5em 0;
		width:100%;
	}

	/* Portal task area */
	#portal-tasks>figure,
	#portal-tasks>section {
		display:block;
	}
	#portal-tasks>figure {
		width:auto;
		border-radius:0.5em 0.5em 0 0;
	}
	#portal-tasks>figure img {
		display:inline-block;
		width:40%;
		margin-right:2%;
	}
	#portal-tasks>figure figcaption {
		display:inline-block;
		width:55%;
	}

	/* Tables */
	table {
		font-size:80%;
	}

	/* Pagination */
	#search-tbl nav {
		float:none;
	}
	#search-tbl nav .pgtn {
		text-align:left;
		margin:2em 0 -0.7em;
	}

	/* Article header buttons */
	article header>a.button {
		float:none;
	}

	/* Modal forms */
	.modal {
		width:98%;
		height:95%;
		left:1%;
		top:2%;
	}
	.modal-content {
		max-height:100%;
	}
	.modal form {
		padding-left:0;
	}
	.modal form label:first-child {
		float:none;
		display:block;
		width:auto;
		margin-left:0;
	}
}
@media screen and (max-width: 425px) {

	/* Header / nav */
	#main-nav>ul {
		font-size:10pt;
	}

	/* Portal task area */
	#portal-tasks>figure img,
	#portal-tasks>figure figcaption {
		display:block;
		width:auto;
		margin:0.4em auto;
	}
}


/* TODO: MOVE THESE */

.proposalDiv {
	text-align: left;
}
.onlyprint{
	display:none;
}
#jwplayer_wrapper{
	margin:0 auto;
}