/*********************************************************/
/*********************** TYPOGRAPHY **********************/
/*********************************************************/

/* 
 * COLOURS
 * 
 * PRIMARY: #252161 
 * SECONDARY / LINK: #ec7516
 * TERTIARY: #b3b2c2
 * TERTIARY BOX: #e8eef4
 * BORDER: #dedede
 * TEXT: #333333
 * RED: #ee371f
 * YELLOW: #fbe34c
 * 
 */

body{
	font-family: Arial, sans-serif;
	font-size: 100%;
	color: #252161;
}

/*** smaller screens have reduced font weight for better readability ***/
@media only screen and (max-width: 302px) {
	body{ font-size: 80%; }
}

@media only screen and (max-width: 403px) {
	body{ font-size: 85%; }
}

@media only screen and (max-width: 605px) {
	body{ font-size: 90%; }
}

/*** HEADINGS ***/

h1, h2, h3, h4, h5, h6 {
	font-weight: normal;
	font-family: "Nunito", Arial;
	margin-bottom: 0.75em;
	line-height: 1.25;
	color: #252161;
	font-weight: 400;
}

h1 { font-size: 2.25em; margin-bottom: 0.25em; font-weight: 300; }
h2 { font-size: 1.75em; margin-bottom: 0.5em; font-weight: 300; }
h3 { font-size: 1.25em; }
h4 { font-size: 1.0em; text-transform: uppercase; }
h5 { font-size: 0.95em; }
h6 { font-size: 0.9em; font-weight: bold; text-transform: uppercase; }

/*** PARAGRAPH ***/

p,
address {
	font-family: Arial;
	margin-bottom: 10px;
	line-height: 1.5;
	font-size: 0.875em;
	color: #575e66;
}

address {
	font-size: 0.8em;
	color: #999;
}
address a { color: #666; }

p.Right{ float: right; }
p.Left { float: left; }

p.Primary,
span.Primary,
strong.Primary { color: #252161 !important; }
p.Secondary,
span.Secondary,
strong.Secondary { color: #ec7516 !important; }

.Red { color: red !important; }

/*** LINKS ***/

a {
	outline: 0;
	-moz-outline-style: none;
	
	color: #ec7516;
	text-decoration: none;
}

a:hover, a:active {
	color: #ec7516;
	text-decoration: underline;
}

/*** LINK VARIATIONS ***/

a.Arrow{
	padding: 0 0 0 20px;
	background-image: url('../images/elem/arrow-link.png');
	background-repeat: no-repeat;
	background-position: left center;
	text-decoration: underline;
}

/*** LISTS ***/

ul, ol {
	margin-bottom: 0.75em;
}

ul li, ol li{
	font-family: Arial;
	line-height: 1.5;
	font-size: 0.9em;
	color: #575e66;
}

/*** don't modify ***/
li ul, li ol {
	margin-top: 0.75em;
	margin-bottom: 0;
	margin-left: 1.0em;
}

/*** don't modify ***/
li ul li, li ol li { font-size: 1.0em; }

/*** UNORDERED LISTS ***/

ul { list-style: disc inside; }

/*** ORDERED LIST ***/

ol { list-style: decimal inside; }

/*** OTHER ***/

sup{ font-size: 12px; font-weight: normal; vertical-align: super; line-height: 1.25; } 
sub{ font-size: 12px; font-weight: normal; vertical-align: sub; line-height: 1.25; } 

strong{ font-weight: bold; }
em{ font-style: italic; }

/*** HORIZONTAL LINE ***/

hr {
	height: 1px;
	border: 0;
	background-color: #dedede;
	margin: 15px 0;
	clear: both;
}

hr.Inline{
	clear: none;
}

.Secondary hr{
	background-color: #e3a251;
}

.Tertiary hr{
	background-color: #252161;
}

/*** SIZES ***/

.Large{
	font-size: 1.5em;
}

/*** IMAGE ***/

img.Img{
	margin-bottom: 15px;
	max-width: 100%;
}

img.Thumb{
	border: 10px solid #c3d2dd;
	border-radius: 5px;
}

img.Right{
	float: right;
	margin: 0 0 15px 15px;
	max-width: 100%;
}

img.Left{
	float: left;
	margin: 0 15px 15px 0;
	max-width: 100%;
}

img.Left-Top{
	float: left;
	margin-bottom: 18px;
}

img.Left-Bottom{
	float: left;
}

/*** TABLE ***/

table{
	width: 100%;
	margin-bottom: 10px;
}

table th,
table td{
	padding: 5px 0 5px 0;
	color: #252161;
	text-align: left;
	vertical-align: middle;
}

table th.Right,
table td.Right{
	text-align: right;
}

table th{
	font-weight: bold;
	white-space: nowrap;
}

table td{
	
}

table th > *,
table td > *{
	margin: 0 !important;
}

/*** CART TABLE ***/

table.Cart{
	float: left;
	width: 100%;
	margin: 5px 0;
}

table.Cart td{
	font-size: 0.7em;
	font-weight: bold;
	font-family: "Nunito";
}

table.Cart tr td{
	border-top: 1px solid #bfbfbf;
	vertical-align: top;
	line-height: 12px;
}

table.Cart tr td.Right{
	text-align: right;
	padding-left: 10px;
}

table.Cart tr:first-child td{
	border: 0;
}

/*** LIST TABLE ***/

table.List{
	padding-top: 6px;
	border-collapse: separate;
    border-spacing: 0 6px;
}

table.List th{
	padding: 0 20px 0 0;
}

table.List td{
	vertical-align: top;
	padding: 10px 15px 10px 0;
}

table.List tfoot td{
	padding: 10px 15px 0 0;
}

table.List thead td{
	padding: 0 15px 10px 0;
}

table.List thead.Footable{ display: none; }

table.List tbody tr{
	background-color: #e8eef4;
}

table.List th:first-child,
table.List td:first-child{
	padding-left: 1.5em;
	border-top-left-radius: 3px;
	border-bottom-left-radius: 3px;
}

table.List td:last-child,
table.List td:last-child{
	border-top-right-radius: 3px;
	border-bottom-right-radius: 3px;
}

/*** Expand arrow shows only for smaller widths ***/
@media only screen and (max-width: 807px) {

table.List td.expand{
	background-image: url('../images/elem/arrow-white.png');
	background-repeat: no-repeat;
	background-position: 0.45em center;
	cursor: pointer;
}

table.List tr.footable-detail-show td.expand{
	background-image: url('../images/elem/arrow-down-white.png');
}

}