* {
	margin: 0;
	padding: 0;
	border: 0;
	font: inherit;
	font-size: 100%;
	vertical-align: baseline;
}

html {
	line-height: 1;
}

ol, ul {
	list-style: none;
}

table {
	border-collapse: collapse;
	border-spacing: 0;
}

caption, th, td {
	text-align: left;
	font-weight: normal;
	vertical-align: middle;
}

q, blockquote {
	quotes: none;
}
q:before, q:after, blockquote:before, blockquote:after {
	content: "";
	content: none;
}

a img {
	border: none;
}

article, aside, details, figcaption, figure, footer, header, hgroup, main, menu, nav, section, summary {
	display: block;
}

@font-face {
	font-family: "Open Sans";
	font-weight: normal;
	font-style: normal;

	src: url('fonts/opensans/opensans-regular.eot?1417018244');
	src: url('fonts/opensans/opensans-regular.eot?&1417018244#iefix') format('embedded-opentype'),
		 url('fonts/opensans/opensans-regular.woff2?1417018244') format('woff2'),
		 url('fonts/opensans/opensans-regular.woff?1417018244') format('woff'),
		 url('fonts/opensans/opensans-regular.ttf?1417018244') format('truetype'),
		 url('fonts/opensans/opensans-regular.otf?1417018244') format('opentype'),
		 url('fonts/opensans/opensans-regular.svg?1417018244#Open-Sans-Regular') format('svg');
}
@font-face {
	font-family: "Open Sans";
	font-weight: bold;
	font-style: normal;

	src: url('fonts/opensans/opensans-bold.eot?1417018244');
	src: url('fonts/opensans/opensans-bold.eot?&1417018244#iefix') format('embedded-opentype'),
		 url('fonts/opensans/opensans-bold.woff2?1417018244') format('woff2'),
		 url('fonts/opensans/opensans-bold.woff?1417018244') format('woff'),
		 url('fonts/opensans/opensans-bold.ttf?1417018244') format('truetype'),
		 url('fonts/opensans/opensans-bold.otf?1417018244') format('opentype'),
		 url('fonts/opensans/opensans-bold.svg?1417018244#Open-Sans-Bold') format('svg');
}

.clearfix {
	display: block;
	clear: both;
}

#container {
	font: normal 13px/1.4em 'Open Sans', Sans-serif;
	margin: 0 auto;
	padding: 40px;
	min-height: 1078px;
}

#header {
	padding-bottom: 30px;
	border-bottom: 1px solid #e2e2e2;
}
#header .logo {
	float: left;
	margin-right: 20px;
}
#header .logo img {
	width: 150px;
	height: 100px;
}
#header .company-info1 {
	float: left;
}
#header .company-info1 > div:first-child {
	font-weight: bold;
	font-size: 20px;
}
#header .company-info1 div {
	margin-bottom: 3px;
}
#header .company-info2 {
	float: right;
	text-align: right;
}
#header .company-info2 div {
	margin-bottom: 3px;
}
#header:after {
	content: '';
	display: block;
	clear: both;
}

#bill-to-info {
	float: left;
	margin-top: 31px;
	margin-left: 0px;
	min-width: 250px;
}
#bill-to-info > div {
	margin-bottom: 3px;
}
#bill-to-info > div:first-child {
	font-weight: bold;
}

#invoice-title {
	text-align: left;
	font-size: 20px;
	font-weight: bold;
	margin: 15px 0 20px 0;
}

#invoice-info {
	float: right;
	margin-top: 31px;
}
#invoice-info > div > label {
	width: 130px;
	float: left;
}
#invoice-info > div > span {
	display: block;
	width: 130px;
	float: left;
	text-align: right;
}
#invoice-info > div:after {
	content: '';
	display: block;
	clear: both;
	margin-bottom: 3px;
}

table {
	table-layout: fixed;
}
table th, table td {
	vertical-align: top;
	word-break: keep-all;
	word-wrap: break-word;
}

#items table {
	border-collapse: separate;
	width: 100%;
}
#items table tr:nth-child(odd) {
	background: #fafafa;
}
#items table th,
#items table td {
	padding: 10px 5px;
	text-align: right;
}
#items table th {
	font-weight: bold;

	border-bottom: 2px solid #898989;
	background: #f7f7f7;
}
#items table td {
	border-bottom: 1px solid #e2e2e2;
	border-top: 1px solid #fff;
}
#items table th.row-cmds,
#items table td.row-cmds {
	width: 1px;
	padding-left: 0;
	padding-right: 0;
}
#items table th.row-number,
#items table td.row-number {
	width: 2%;
	text-align: left;
}
#items table th.line-total,
#items table td.line-total {
	text-align: right;
}
#items table th.description,
#items table td.description {
	text-align: left;
}
#items table th.quantity,
#items table td.quantity,
#items table th.tax,
#items table td.tax,
#items table th.discount,
#items table td.discount {
	width: 7%;
	white-space: nowrap;
}
#items table th.price,
#items table td.price,
#items table th.line-total,
#items table td.line-total {
	width: 10%;
	white-space: nowrap;
}

#sums {
	float: right;
	margin-top: 30px;
	width: 280px;
}
#sums table {
	width: 100%;
}
#sums table tr th,
#sums table tr td {
	width: 50%;
	padding: 10px;
	text-align: right;
}
#sums table tr th {
	text-align: left;
}
#sums table tr.amount_total th,
#sums table tr.amount_total td {
	font-weight: bold;
	border-bottom: 1px solid #e2e2e2;
	border-top: 2px solid #898989;
	background: #f7f7f7;
}
#sums table tr:last-child th,
#sums table tr:last-child td {
	font-weight: bold;
	border-top: 1px solid #e2e2e2;
	background: #f7f7f7;
	border-bottom: 2px solid #898989;
}

#terms {
	margin-top: 80px;
}
#terms .label {
	font-weight: bold;
}
#terms .text {
	margin-top: 10px;
	min-height: 70px;
}
