html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,font,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td{margin:0;padding:0;border:0;outline:0;font-size:100%;vertical-align:baseline;background:transparent;}body {line-height:1}ol,ul{list-style:none}blockquote,q{quotes:none}blockquote:before,blockquote:after,q:before,q:after {content:'';content:none}:focus{outline:0}ins{text-decoration:none}del{text-decoration:line-through}table{border-collapse:collapse;border-spacing:0}

/* Remove annoying border on linked images. */
a img {border: none;}

/* Remove annoying border on links in Firefox */
a:active, a:focus
  {outline:0;}

/* Remove possible quote marks (") from <q>, <blockquote>. */
blockquote:before, blockquote:after, q:before, q:after {content: "";}
blockquote, q {quotes: "" "";}

/* Tables still need 'cellspacing="0"' in the markup. */
table { border-collapse: separate; border-spacing: 0; }
caption, th, td {text-align: left; font-weight: normal; }
table, td, th {vertical-align: middle;}

/* Clearing without structural markup */
.clear
  {display: inline-block;}   
.clear:after
  {content:"."; display:block; height:0; clear:both; visibility:hidden;}
* html .clear
  {height: 1%;}
.clear
  {display: block;}
.clearfix {
	clear: both;
}

/* Corners */

.tl { position:absolute; top:0; left:0; }
.tr { position:absolute; top:0; right:0; }
.bl { position:absolute; bottom:0; left:0; }
.br { position:absolute; bottom:0; right:0; }

.hidden
	{ display: none; }