/*
Variable Grid System.
Learn more ~ http://www.spry-soft.com/grids/
Based on 960 Grid System - http://960.gs/

Licensed under GPL and MIT.
*/

/*
Forces backgrounds to span full width,
even if there is horizontal scrolling.
Increase this if your layout is wider.

Note: IE6 works fine without this fix.
*/

body {
  min-width: 975px;
}

/* Containers
----------------------------------------------------------------------------------------------------*/
.container_3 {
	margin-left: auto;
	margin-right: auto;
	width: 975px;
}

/* Grid >> Global
----------------------------------------------------------------------------------------------------*/


.grid_1,
.grid_2,
.grid_3 {
	display:inline;
	float: left;
	position: relative;
	margin-left: 5px;
	margin-right: 5px;
}



.push_1, .pull_1,
.push_2, .pull_2,
.push_3, .pull_3 {
	position:relative;
}


/* Grid >> Children (Alpha ~ First, Omega ~ Last)
----------------------------------------------------------------------------------------------------*/

.alpha {
	margin-left: 0;
}

.omega {
	margin-right: 0;
}

/* Grid >> 3 Columns
----------------------------------------------------------------------------------------------------*/


.container_3 .grid_1 {
	width:315px;
}

.container_3 .grid_2 {
	width:640px;
}

.container_3 .grid_3 {
	width:965px;
}




/* Prefix Extra Space >> 3 Columns
----------------------------------------------------------------------------------------------------*/


.container_3 .prefix_1 {
	padding-left:325px;
}

.container_3 .prefix_2 {
	padding-left:650px;
}



/* Suffix Extra Space >> 3 Columns
----------------------------------------------------------------------------------------------------*/


.container_3 .suffix_1 {
	padding-right:325px;
}

.container_3 .suffix_2 {
	padding-right:650px;
}



/* Push Space >> 3 Columns
----------------------------------------------------------------------------------------------------*/


.container_3 .push_1 {
	left:325px;
}

.container_3 .push_2 {
	left:650px;
}



/* Pull Space >> 3 Columns
----------------------------------------------------------------------------------------------------*/


.container_3 .pull_1 {
	left:-325px;
}

.container_3 .pull_2 {
	left:-650px;
}




/* `Clear Floated Elements
----------------------------------------------------------------------------------------------------*/

/* http://sonspring.com/journal/clearing-floats */

.clear {
  clear: both;
  display: block;
  overflow: hidden;
  visibility: hidden;
  width: 0;
  height: 0;
}

/* http://www.yuiblog.com/blog/2010/09/27/clearfix-reloaded-overflowhidden-demystified */

.clearfix:before,
.clearfix:after {
  content: '\0020';
  display: block;
  overflow: hidden;
  visibility: hidden;
  width: 0;
  height: 0;
}

.clearfix:after {
  clear: both;
}

/*
  The following zoom:1 rule is specifically for IE6 + IE7.
  Move to separate stylesheet if invalid CSS is a problem.
*/

.clearfix {
  zoom: 1;
}


/*** ESSENTIAL STYLES ***/
.sf-menu, .sf-menu * {margin:0;padding:0;list-style:none;}
.sf-menu {line-height:1.0;}
.sf-menu ul {position:absolute;top:-999em;width:10em; /* left offset of submenus need to match (see below) */}
.sf-menu ul li {width:100%;}
.sf-menu li:hover {visibility:inherit; /* fixes IE7 'sticky bug' */}
.sf-menu li {float:left;position:relative;}
.sf-menu a {display:block;position:relative;}
.sf-menu li:hover ul,.sf-menu li.sfHover ul {left:0;top:2.5em; /* match top ul list item height */z-index:99;}
ul.sf-menu li:hover li ul,ul.sf-menu li.sfHover li ul {top:-999em;}
ul.sf-menu li li:hover ul,ul.sf-menu li li.sfHover ul {left:10em; /* match ul width */top:0;}
ul.sf-menu li li:hover li ul,ul.sf-menu li li.sfHover li ul {top:-999em;}
ul.sf-menu li li li:hover ul,ul.sf-menu li li li.sfHover ul {left:10em; /* match ul width */top:0;}
/*** arrows **/.sf-menu a.sf-with-ul {padding-right: 2.25em;min-width:1px; /* trigger IE7 hasLayout so spans position accurately */}
.sf-sub-indicator {position:absolute;display:block;right:.75em;top:1.05em; /* IE6 only */width:10px;height:10px;text-indent:-999em;overflow:hidden;background:url('images/arrows-ffffff.png') no-repeat -10px -100px; /* 8-bit indexed alpha png. IE6 gets solid image only */}
a > .sf-sub-indicator {  /* give all except IE6 the correct values */top:.8em;background-position: 0 -100px; /* use translucent arrow for modern browsers*/}
/* apply hovers to modern browsers */
a:focus > .sf-sub-indicator,
a:hover > .sf-sub-indicator,
a:active > .sf-sub-indicator,
li:hover > a > .sf-sub-indicator,
li.sfHover > a > .sf-sub-indicator {background-position: -10px -100px; /* arrow hovers for modern browsers*/}

/* point right for anchors in subs */
.sf-menu ul .sf-sub-indicator { background-position:  -10px 0; }
.sf-menu ul a > .sf-sub-indicator { background-position:  0 0; }
/* apply hovers to modern browsers */
.sf-menu ul a:focus > .sf-sub-indicator,
.sf-menu ul a:hover > .sf-sub-indicator,
.sf-menu ul a:active > .sf-sub-indicator,
.sf-menu ul li:hover > a > .sf-sub-indicator,
.sf-menu ul li.sfHover > a > .sf-sub-indicator {background-position: -10px 0; /* arrow hovers for modern browsers*/}

/*** shadows for all but IE6 ***/
.sf-shadow ul {background:	url('images/shadow.png') no-repeat bottom right;padding: 0 8px 9px 0;-moz-border-radius-bottomleft: 17px;-moz-border-radius-topright: 17px;-webkit-border-top-right-radius: 17px;-webkit-border-bottom-left-radius: 17px;}
.sf-shadow ul.sf-shadow-off {background: transparent;}