body { 
	width: 100% !important;
	margin: 0;
	padding: 0;
	color: #000; 
	background: none; 
	font-size: 13pt;
	line-height: 1.45em; 
	font-family: Arial, sans-serif; 
}
body.screen {
	font-size: 14px;
}

/* Headings */
h1, h2, h3, h4, h5, h6 { 
	page-break-after: avoid; 
}
h1	{ font-size: 1.5em; }
h2	{ font-size: 1.3em; }
h3	{ font-size: 1.2em; }
h4, 
h5, 
h6	{ font-size: 1.1em; }


p, h2, h3 { orphans: 3; widows: 3; }

code { font: 0.9em Courier, monospace; } 
blockquote { margin: 1.2em; padding: 1em;  font-size: 0.9em; }
hr { 
	box-sizing: content-box; 
	border: 0;
	border-top: 1px solid #aaa;
	margin: 10px 0;
}

img { 
	max-width: 100% !important; 
}
a img { border: none; }

a:link, 
a:visited { 
	background: transparent; 
	font-weight: 700; 
	text-decoration: underline; 
	color: #333; 
}

a:link[href^="http://"]:after, 
a[href^="http://"]:visited:after { 
	content: " (" attr(href) ") "; 
	font-size: 0.9; 
}

abbr[title]:after { 
	content: " (" attr(title) ")"; 
}

/* Don't show linked images  */
a[href^="http://"] {
	color: #000; 
}
a[href$=".jpg"]:after, 
a[href$=".jpeg"]:after, 
a[href$=".gif"]:after, 
a[href$=".png"]:after { 
	content: " (" attr(href) ") "; 
	display: none; 
}

/* Don't show links that are fragment identifiers, or use the `javascript:` pseudo protocol .. taken from html5boilerplate */
a[href^="#"]:after, 
a[href^="javascript:"]:after {
	content: "";
}

img,
tr {
	page-break-inside: avoid;
} 


/* -------------------------------------------------------------- 
 	Layout
-------------------------------------------------------------- */

.screen .container {
	box-sizing: border-box;
	width: 100%;
	max-width: 1170px;
	padding: 15px;
	margin: 0 auto;
}

.document:not(:last-child) {
	page-break-after: always;
}


/* -------------------------------------------------------------- 
 	Utils
-------------------------------------------------------------- */

.m-0	{ margin: 0 !important; }
.m-1	{ margin: 4px !important; }
.m-2	{ margin: 8px !important; }
.m-3	{ margin: 16px !important; }
.m-4	{ margin: 24px !important; }
.m-5	{ margin: 36px !important; }
.m-6	{ margin: 48px !important; }

.mx-0	{ margin-left: 0 !important;  margin-right: 0 !important; }
.mx-1	{ margin-left: 4px !important;  margin-right: 4px !important; }
.mx-2	{ margin-left: 8px !important;  margin-right: 8px !important; }
.mx-3	{ margin-left: 16px !important;  margin-right: 16px !important; }
.mx-4	{ margin-left: 24px !important;  margin-right: 24px !important; }
.mx-5	{ margin-left: 36px !important;  margin-right: 36px !important; }
.mx-6	{ margin-left: 48px !important;  margin-right: 48px !important; }

.my-0	{ margin-top: 0 !important;  margin-bottom: 0 !important; }
.my-1	{ margin-top: 4px !important;  margin-bottom: 4px !important; }
.my-2	{ margin-top: 8px !important;  margin-bottom: 8px !important; }
.my-3	{ margin-top: 16px !important;  margin-bottom: 16px !important; }
.my-4	{ margin-top: 24px !important;  margin-bottom: 24px !important; }
.my-5	{ margin-top: 36px !important;  margin-bottom: 36px !important; }
.my-6	{ margin-top: 48px !important;  margin-bottom: 48px !important; }

.mt-0	{ margin-top: 0 !important; }
.mt-1	{ margin-top: 4px !important; }
.mt-2	{ margin-top: 8px !important; }
.mt-3	{ margin-top: 16px !important; }
.mt-4	{ margin-top: 24px !important; }
.mt-5	{ margin-top: 36px !important; }
.mt-6	{ margin-top: 48px !important; }

.mb-0	{ margin-bottom: 0 !important; }
.mb-1	{ margin-bottom: 4px !important; }
.mb-2	{ margin-bottom: 8px !important; }
.mb-3	{ margin-bottom: 16px !important; }
.mb-4	{ margin-bottom: 24px !important; }
.mb-5	{ margin-bottom: 36px !important; }
.mb-6	{ margin-bottom: 48px !important; }

.ml-0	{ margin-left: 0 !important; }
.ml-1	{ margin-left: 4px !important; }
.ml-2	{ margin-left: 8px !important; }
.ml-3	{ margin-left: 16px !important; }
.ml-4	{ margin-left: 24px !important; }
.ml-5	{ margin-left: 36px !important; }
.ml-6	{ margin-left: 48px !important; }

.mr-0	{ margin-right: 0 !important; }
.mr-1	{ margin-right: 4px !important; }
.mr-2	{ margin-right: 8px !important; }
.mr-3	{ margin-right: 16px !important; }
.mr-4	{ margin-right: 24px !important; }
.mr-5	{ margin-right: 36px !important; }
.mr-6	{ margin-right: 48px !important; }


.p-0	{ padding: 0 !important; }
.p-1	{ padding: 4px !important; }
.p-2	{ padding: 8px !important; }
.p-3	{ padding: 16px !important; }
.p-4	{ padding: 24px !important; }
.p-5	{ padding: 36px !important; }
.p-6	{ padding: 48px !important; }

.px-0	{ padding-left: 0 !important;  padding-right: 0 !important; }
.px-1	{ padding-left: 4px !important;  padding-right: 4px !important; }
.px-2	{ padding-left: 8px !important;  padding-right: 8px !important; }
.px-3	{ padding-left: 16px !important;  padding-right: 16px !important; }
.px-4	{ padding-left: 24px !important;  padding-right: 24px !important; }
.px-5	{ padding-left: 36px !important;  padding-right: 36px !important; }
.px-6	{ padding-left: 48px !important;  padding-right: 48px !important; }

.py-0	{ padding-top: 0 !important;  padding-bottom: 0 !important; }
.py-1	{ padding-top: 4px !important;  padding-bottom: 4px !important; }
.py-2	{ padding-top: 8px !important;  padding-bottom: 8px !important; }
.py-3	{ padding-top: 16px !important;  padding-bottom: 16px !important; }
.py-4	{ padding-top: 24px !important;  padding-bottom: 24px !important; }
.py-5	{ padding-top: 36px !important;  padding-bottom: 36px !important; }
.py-6	{ padding-top: 48px !important;  padding-bottom: 48px !important; }

.pt-0	{ padding-top: 0 !important; }
.pt-1	{ padding-top: 4px !important; }
.pt-2	{ padding-top: 8px !important; }
.pt-3	{ padding-top: 16px !important; }
.pt-4	{ padding-top: 24px !important; }
.pt-5	{ padding-top: 36px !important; }
.pt-6	{ padding-top: 48px !important; }

.pb-0	{ padding-bottom: 0 !important; }
.pb-1	{ padding-bottom: 4px !important; }
.pb-2	{ padding-bottom: 8px !important; }
.pb-3	{ padding-bottom: 16px !important; }
.pb-4	{ padding-bottom: 24px !important; }
.pb-5	{ padding-bottom: 36px !important; }
.pb-6	{ padding-bottom: 48px !important; }

.pl-0	{ padding-left: 0 !important; }
.pl-1	{ padding-left: 4px !important; }
.pl-2	{ padding-left: 8px !important; }
.pl-3	{ padding-left: 16px !important; }
.pl-4	{ padding-left: 24px !important; }
.pl-5	{ padding-left: 36px !important; }
.pl-6	{ padding-left: 48px !important; }

.pr-0	{ padding-right: 0 !important; }
.pr-1	{ padding-right: 4px !important; }
.pr-2	{ padding-right: 8px !important; }
.pr-3	{ padding-right: 16px !important; }
.pr-4	{ padding-right: 24px !important; }
.pr-5	{ padding-right: 36px !important; }
.pr-6	{ padding-right: 48px !important; }

.text-muted		{ color: #999 }
.text-left		{ text-align: left }
.text-center	{ text-align: center }
.text-right		{ text-align: right }

.text-small		{ font-size: 0.85em; }
.text-smaller	{ font-size: 0.77em; }
.text-smallest	{ font-size: 0.69em; }

.pull-left,
.float-left		{ float: left }
.pull-right,
.float-right	{ float: right }

.nobr			{ white-space: nowrap !important }

.clearfix:before, 
.clearfix:after {
    display: table;
    content: " ";
}
.clearfix:after {
	clear: both;
}

/* -------------------------------------------------------------- 
 	Tables
-------------------------------------------------------------- */

table { 
	width: 100%;
	max-width: 100%;
	border-spacing: 0;
	border-collapse: collapse;
}

caption {
	padding-top: 8px;
	padding-bottom: 8px;
	text-align: left;
}

thead {
	display: table-header-group;
}


th, td { 
	vertical-align: top;
	text-align: left;
	line-height: 1.45em;
}


.table {
	margin-bottom: 20px;
}

.table tr {
	border-top: 1px solid #999;
}

.table > thead > tr {
	border-bottom: 2px solid #999;
}

.table th,
.table td {
	padding: 8px;
	background-color: #fff;
}

.table > thead > tr > th {
	vertical-align: bottom;
}

.table-bordered {
	border: 1px solid #999;
}
.table-bordered th,
.table-bordered td {
	border-left: 1px solid #999;
	border-right: 1px solid #999;
}


/* -------------------------------------------------------------- 
 	Order Summary (receipts like invoice, packaging slip etc.)
-------------------------------------------------------------- */

.order-summary tbody td,
.order-summary tbody th {
	padding-top: 12px;
	padding-bottom: 12px;
}

.order-summary > tbody > tr,
.order-summary > tfoot > tr {
	border-top: none;
}

.order-summary > tbody {
	border-top: 1px solid #999;
	page-break-inside: avoid;
}

.order-summary td .attributes {
	margin-left: 30px;
}

.order-summary tr.child-row > td {
	padding-top: 0;
}

.order-summary tr.child-row > td > .associated-product {
	margin-left: 30px;
}

/* -------------------------------------------------------------- 
 	Order address & info
-------------------------------------------------------------- */

.order-address {
	width: 55%;
	box-sizing: border-box;
}

.order-address .header {
	display: inline-block; 
	border-bottom: 1px solid #777; 
	padding-bottom: 5px;
}

.order-info {
	width: 40%;
	box-sizing: border-box;
	border: 1px solid #777; 
	padding: 10px;
}

.order-info td {
	width: 50%;
}
.order-info td.label {
	font-weight: bold;
}

/* -------------------------------------------------------------- 
 	Order totals
-------------------------------------------------------------- */

.attr-caption {
	font-weight: bold;
}

.order-totals td.label {
	font-weight: bold;
	padding-left: 0;
}

.order-totals td.value {
	text-align: right;
}

/* -------------------------------------------------------------- 
 	catalog
-------------------------------------------------------------- */

.additional-products {
    width: 45%;
    float: left;
    margin-top: 20px;
    margin-right: 20px;
    min-height: 100px;
    page-break-inside: avoid;
}
.additional-products .picture {
    float: left;
    margin-right: 20px;
    min-width: 80px;
    text-align: center;
}

.detail-picture img {
    max-width: 500px !important;
    /*max-height: 500px !important;*/
}