/* DEFAULT STYLE-SHEET */
/* Sets some sensible defaults to avoid re-writing code */

	.default, .default * {
		list-style 		: none;
		margin 			: 0;
		padding 		: 0;
	}
	
	a img, form, fieldset {
		border			: none;
	}
	
	
/* Accessibility */
/* These need proper testing in screen-reader environments but _should_ work well as far as I can tell */

	.hidden {
		display			: block;
		overflow		: hidden;
		text-indent 	: -90000px; /* accessible visibility:hidden - read by screenreaders  */
	}
	
	.removed {
		left 			: -90000px; /* accessible display:none - read by screenreaders */
		position 		: absolute;
	}

/* Navigation */
/* These are global catch-all rules and should be over-ridden where necessary to the design */
	a			{
		outline			: none;
	}
	a:link 		{ }
	a:visited 	{ } /* hardly anyone makes this different but it improves usability immensely if used! :) */
	a:hover 	{ }
	a:active 	{ }

/* Floats */	

	.left {
		float 			: left;
	}
	
	img.left {
		margin-right	: 10px;
	}
	
	.right {
		float 			: right;
	}
	
	img.right {
		margin-left		: 10px;
	}
	
/* Cleaners */
/* Clean up the mess left by floats as semantically as possible - try and use FNE (Float Nearly Everything) to avoid these */
/* http://orderedlist.com/articles/clearing-floats-fne/ */
	
	.clear {
		clear 			: both !important; /* Usually br.clear but you never know */
		
	}
	
	br.clear {
		display			: none;
	}
	
	hr.default {
		clear 			: both;
		visibility 		: hidden;
	}
	
/* Lists */
/* The majority of lists are used for navigation links for semantics and accessibility and therefore we don't need the bullets ta v much */

	ul.default {
		list-style 		: none;
	}
	
	ul.bul li {
		list-style		: disc outside;
		margin-left		: 20px;
	}
	
	ol.default {
		margin-bottom	: 15px;
	}
	
	ol.default li {
		list-style		: decimal outside;
		margin-left		: 20px;
	}
	
/* Border removal */
/* Often the last item in a list of items needs the border removing. This globally clears all borders (also background ones) */
		
	.last, .first {
		border 			: none !important;
	}