html {
	margin:0;
	padding:0;
	width:100%;
	height:100%;
	font-size:10px;
	font-family: sans-serif;
}

body {
	margin:0;
		padding:0;
	width:100%;
	height:100%;
	font-size:1.3rem;
	line-height:1.5;
	font-family:sans-serif;
}

div {
	position:relative;
}


.container {
	overflow-x:hidden;
	overflow-y:visible;
	margin:0 auto;
		padding:0 2rem;
	width:96rem;
	/* border:1px solid blue; */
}

/* -- something a little different: we're using wrappers as both abstract container objects and as object-level child control --*/  
.wrapper {
	position:relative;
	/* border:1px solid red; */
	zoom:1;
}
.wrapper:before,
.wrapper:after {
	display: table;
	content: "";
} 
.wrapper:after {
	clear: both;
}

.one.wrapper 	{ width:24rem; }
.two.wrapper 	{ width:48rem; }
.three.wrapper 	{ width:72rem; }
.four.wrapper 	{ width:96rem; }

.column {
	margin:0 2rem 0 0;
		padding:2rem 0 2rem 2rem;
}

.one.column 	{ width:20rem; }
.two.column 	{ width:42rem; }
.three.column 	{ width:68rem; }
.four.column 	{ width:92rem; }

.column.split	{ column-gap:4rem; }

.two.column.split p {
		-webkit-column-count:2;
		-moz-column-count:2;
	column-count:2;
}

.three.column.split p {
		-webkit-column-count:3;
		-moz-column-count:3;
	column-count:3;
}

.four.column.split p {
		-webkit-column-count:4;
		-moz-column-count:4;
	column-count:4;
}

.column.right {
	overflow-x:visible;
	margin-right:0;
	padding-right:2rem;
}

.one.column.right 	{ width:20rem; }
.two.column.right 	{ width:42rem; }
.three.column.right	{ width:68rem; }

.left 		{ float:left; }
.right 		{ float:right; }
.absolute.right {
	position:absolute;
		top:0;
		right:0;
	float:none;
	overflow:visible;
	padding-top:0;
	padding-bottom:0;
}

.justpretendimnotevenhere {
	clear:both;
	overflow:hidden !important;
	margin:0 !important;
		padding:0 !important;
		min-width:0 !important;
		min-height:0 !important;
		max-width:0 !important;
		max-height:0 !important;
	width:0 !important;
	height:0 !important;
	border:0 !important;
}

.object {
	margin:0 -2rem 1.5rem;
		padding:1rem 2rem;
}

.object>.edge {
	display:block;
	margin:0 -2rem;
}

/* ------------- GENERAL STYLES AND MAJOR EXCITEMENT --------------- */

h1, h2, h3, h4 	{ 
	margin:0;
	padding:0;
	font-weight:normal;
	line-height: 1.1em; 
	-webkit-font-smoothing: antialiased;
}

h1 {
	
}

h2 {
	display:inline-block;
	margin:.0 -2rem 0 -2rem;
		padding:.4rem 2.5rem .4rem 2rem;
	letter-spacing:-1px;
}

h3 {
	margin:1rem 0 0;
}

h4 {
	margin:1.5rem 0 -0.5rem;
}
p + h4 {
	margin-top:1.5rem;
}
p + h3 {
	margin:2rem 0 0;
}

p { margin:1rem 0 1rem;

}

a {
	text-decoration:none;
}

ul {
	margin:0;
	padding:0 0 1em 1em;
}

li {
	margin:0;
	padding:0;
}

h4 + ul, h3 + ul { margin-top: 1rem; }

strong, b {
	letter-spacing:-1px;	
}
.phone {
	background-color:transparent;
	white-space: nowrap;
}

/* ------------- A HEADER AND ALL IT'S BOUNTEOUS CHILDREN --------------- */

img.header {
	
}
#headblock {
	background:transparent url(/rsrc/img/rush_header.png) center top no-repeat;
}
#branding {
	position:relative;
	margin:0 auto;
	width:96rem;
	height:185px;
	background:transparent url(/rsrc/img/rush_header.png) center top no-repeat;
}
#branding img {
	width:96rem;
	height:185px;
}
#branding p {
	position:absolute;
	top:30px;
	right:0;
	padding:1rem 1.5rem 1rem 3.5rem;
	width:26rem;
	border-left:1px solid rgba(0,0,0,0.25);
	color:#333;	
	text-shadow: -1px 1px 1px rgba(255,255,255,0.5);
	font-size:1.3em;
	opacity:0.85;
}
#branding small {
	display:block;
	font-size:0.8em;
	line-height:1.5;
}
#nav {
	margin:0;
	padding:0;
	-webkit-font-smoothing: antialiased;
	height:4.3rem;
	overflow:hidden;
}
ul.menu {
	position:relative;
	display:block;	
	margin:0 auto;
	padding:0 2rem;
	overflow:hidden;
/* text-align:center; */
}

ul.menu li {
	position:relative;
	display:inline-block;
	float:left;
	margin:0;
	margin-right:-1px;
	padding:0;
	border-right:1px solid #333;
	border-left:1px solid #333;
	list-style:none;
}

ul.menu li a {
	display:block;
	padding:12px 20px;
	text-decoration:none; 
	height:4.3rem;
}

ul.menu .selected a {
	text-transform:uppercase;
}
#pageintro {
	margin:0;
	padding:0;
}

#pageintro ul {
	text-align:left;
}
#pageintro li {
	display:none;
	margin:0;
		padding:0;
/* border:1px solid pink; */
	list-style:none;
}

#pageintro li.selected {
	display:block;
	margin:0 auto;
}

#pageintro .intro p {
	margin-top:1.5rem;
	margin-right:4rem;
	margin-bottom:0;
	font-size:2rem;
}
#pageintro .intro p + p {
	margin-top:0;
}
/* ------------- CONTENT: THE OTHER WHITE SPACE --------------- */

#content {
	
}

#content > div > div > img.hero {
		display:block;
		margin:0 -2rem -1.7rem;
		min-width:100%;
		height:auto;
/* 		clear:right; */
}

#content > div > div {
	margin-top:2.5rem;
	margin-bottom:2.5rem;
}
.intro {
	height:12.85rem;
	font-size: 1.25em;
	line-height:1.5em;
}
.intro.right {
	background-position:center center;
	background-size:cover;
}

.breakout {
	margin:0 -2rem 2rem;
	padding:0 2rem 1rem 2rem;
	border:1px solid #ffbb7f;
	font-size:1.10em;
	position:relative;
}

.breakout h2 {
	position:relative;
	display:block;
	margin-bottom:1.2rem;
}

.breakout strong, .breakout b {
	color:#f70;
}

.breakout .area {
	margin-bottom:0;
}
.breakout .area + p {
	margin-top:0;
}
p img {
	display:block;
	float:left;
	margin:.5rem 1rem .5rem -1rem;
}

p img.right {
	float:right;
	margin:.5rem -1rem .5rem 1rem;
}

a.linkwidget {
	position:relative;
	display:block;
	margin-left:-20px;
	padding:12px 65px 10px 65px;
	min-height:40px;
	border-top:1px solid #dfdfdf;
	border-bottom:1px solid #dfdfdf;
	background-color:#fff1e6;
	background-image:url(/rsrc/img/download.png);
	background-position:390px 12px; 
	background-repeat:no-repeat;
	font-family:sans-serif, 'Franklin ITC W01 Bold';
	cursor:pointer;
}
a.linkwidget:hover {
	background-color:#ffe5cf;
	background-position:390px -84px;
}
a.linkwidget span {
	display:block;
	font-family:sans-serif, 'Franklin ITC W01 Light';
}
a.linkwidget:after {
	position:absolute;
	top:10px;
	left:10px;
	width:42px;
	height:42px;
	background-color:transparent;
}
a.pdf:after {
	content:url('/rsrc/img/PDF.png');
}
a.doc:after {
	content:url('/rsrc/img/DOC.png');
}
a.mp3:after {
	content:url('/rsrc/img/MP3.png');
}
a.other:after {
	content:url('/rsrc/img/OTHER.png');
}

/* ------------- SIDEBAR EXCITEMENT --------------- */

#sidebar {
	min-height:100%;
}

.alert {
	position:relative;
	margin:0 -2rem 0 -2rem;
	padding:.4rem 2.5rem .4rem 2rem;
	letter-spacing:-1px;
}

.alert h3 {font-size:2.4rem;}
.alert p {letter-spacing:0; font-size:1.6rem; line-height:1.35;}

a.service.ad {
	position:relative;
	display:block;
	margin:0 -2rem;
	padding:1rem 2rem;
	padding-right:16rem;
	background-color:black;
	color:white;	
}
a.service.ad:hover {
	opacity:0.85;
}

a.service.ad a.phone {
	padding:0;
	background-color:transparent;
	color:inherit;
	text-decoration: none;
}
a.service.ad div {
	position:absolute;
	top:1rem;
	right:2rem;
	bottom:1rem;
	width:12rem;
	background-position: center center;
	background-size:contain;
	background-repeat: no-repeat;
}

.locations {
	
}
.locations h2 {
	display: block;
	margin-bottom:1px;
	padding-top:1.2rem;
	padding-bottom:1.2rem;
	font-size:2.1rem;
}
.locations h3 {
	margin:0 -2rem;
	padding:.5rem 2rem;
	letter-spacing:0;
	font-size:14px;
}
.locations h3 strong, .locations h3 b {
	text-transform: uppercase;
}
.locations h3 {
	font-size:1.2rem;
}
.locations ul {
	margin:0px -2rem;
	padding:0;
	list-style:none;
}
.locations li {
	padding:.7rem 2rem .5rem;
	position:relative;
}
.locations li:hover {
	cursor:pointer;
}
.locations li.selected:hover {
	cursor:auto;
}
.locations h4 {
	margin:0;
	padding:.1rem 0 .5rem 0;
}
.locations .content {
	display:block;
}
.locations h4:after {
	float:right;
	content:url(/rsrc/img/locations_arrow.png);
}
.locations p {
	margin:0;
	padding:0;
}
.locations .map {
	display:block;
	overflow:hidden;
	margin:1.5rem 0 1rem;
	width:418px;
	height:190px;
	border:1px solid transparent;
}
.locations li.inactive {
	height:1.6rem;
	overflow:hidden;
}
.locations li.selected {
	padding:1rem 2rem;
	height:auto;
	overflow:visible;
}
.locations li.selected h4:after {
	content:none;
}

.locations li.inactive .edit {
	display:none;
}
.locations li.selected .edit {
	display:block;
}

/* ------------- THE PASSION OF FOOTER --------------- */

#footer {
	font-size:1.2rem;
	line-height:1.85rem;
}

#footer .copyright {
	border-bottom:5px solid #f70;
}

.branding img {
	float:right;
	margin-top:20px;
}

.copyright .container {
	width:92rem;
}

p.ee {
	padding-right:2em;
}

p.ee a, p#designchums a {
	color: #555;
	background-color: transparent;
	text-decoration:none;
}

p#designchums a:hover {
	color:#eee;
	background-color:#f70;
}

/* ----------- GOD I HATE FORMS ---------------- */

form dl {
	display:block;
	margin:0;
	padding:1rem 0;
}
form div dl:nth-child(even), form div div dl:nth-child(odd) {
	background-color:#f2f2f2;
}

form div dl:nth-child(odd), form div div dl:nth-child(even) {
	background-color:#fff;
}


form dl + dl {
	padding-top:1rem;
}
form dt {
	display:inline-block;
	clear:left;
	margin:0 1rem 0 0;
	padding:.5rem 0;
	width:29rem;
	vertical-align:top;
	text-align:right !important;
}
form dt.short {
	width:8rem;
}
form dd {
	display:inline-block;
	margin:0;
	padding:.5rem 0;
	width:41.2rem;
	vertical-align:middle;
	white-space:nowrap;
}
form dd.short {
	width:9.8rem;
}
form dd.very.short {
	width:3.1rem;
}
form dd:nth-child(odd) {
	margin-left:0;
}
form dd input[type=text], form dd textarea {
	margin:-0.5rem 0;
	padding:0.6rem 0.5rem 0.7rem;
	width:100%;
	border:1px solid #ddd;
}

form .subset {
	display:none;
}

form > div {
	margin-top:-0.7rem;
	margin-bottom:1.2rem;
	border:1px solid #ccc;
	
}

form h2 {
	font-size:2.5em;
}
form h3 {
	display:block;
	margin:1rem 0 .7rem;
	margin-bottom:1.5rem;
		padding:.4rem 2.5rem .4rem 2rem;
	letter-spacing:-1px;
	font-size:1.5em;
}

.button {
  display:inline-block; /* IE is so silly */
  padding: 10px 20px;
  border:0px solid transparent;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  border-radius: 4px;
  background: -webkit-gradient(linear, 0 0, 0 100%, from(#5c5c5c), to(#262626));
  background: -moz-linear-gradient(top, #5c5c5c, #262626);
  -webkit-box-shadow: 0px 1px 1px #666666;
  -moz-box-shadow: 0px 1px 1px #666666;
  box-shadow: 0px 1px 1px #666666;
  color: #ffffff;
  text-decoration: none;
  text-shadow: 1px 1px 3px #000000;
  font-size: 13px;
  font-family: Arial;
  -ms-filter: progid:DXImageTransform.Microsoft.gradient(startColorStr=#5c5c5c, endColorStr=#262626);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorStr=#5c5c5c, endColorStr=#262626);
}
.button:hover {
  background: -webkit-gradient(linear, 0 0, 0 100%, from(#999999), to(#000000));
  background: -moz-linear-gradient(top, #999999, #000000)
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr=#5c5c5c, endColorstr=#262626);
}
form .button {
	float:right;
}

/* ------------- EDIT BUTTONS FOR THE CHOSEN FEW ------------- */

.edit {
	position:absolute;
	top:4px;
	left:-0px;
	z-index:1000;
	margin-left:-30px;
	width:20px;
	height:20px;
	background:transparent url(/rsrc/img/edit.png) left top no-repeat;
	text-indent:-999em;
	font-size:10px;
	font-family:verdana;
	opacity:.25;
}
.edit:hover {
	background-position:right top;
	opacity:1;
}

.accordion .edit {
	position:relative;
	top:0;
	left:0;
	float:left;
	margin-top:-3px;
	margin-right:5px;
	margin-left:-30px;
}
.service .edit {
	position:absolute;
	top:3px;
	left:0px;
	float:none;
}

.alert .edit, .breakout .edit {
	top:3px;
	left:20px;
	left:2rem;
	float:none;
}

#footer .edit, #pageintro .edit {
	left:0;
	top:20px;
	top:2rem;
	margin-left:-10px;
	margin-left:-1rem;
	margin-top:5px;
}

/* ------------- GO SMALL, LITTLE MAN ---------------- */

@media only screen and (max-device-width: 480px) {
	body {
		width:480px;
	}
	
	#mobile{
		margin:0 auto;
/*
		width:440px;
		overflow:hidden;
*/
		border:20px solid white;
	}
	
	#mobile div, #mobile ul {
		margin:0 auto;
		padding:0;
		border:0;
	}
	
	#mobile #headblock {
		background-image:url();
		background-color:black;
	}
	
	#mobile #branding {
		margin-top:20px;
		width:440px;
		height:145px;
		background-color:black;
		background-image:url(/rsrc/img/rush_mobile.jpg);
		background-position:center center;
		background-size:cover;
		background-repeat: no-repeat;
		text-indent:-999em;
	}
	
	#mobile .wrapper {
		padding:20px 0;
		max-width:440px;
	}
	
	#mobile .intro {
		display:none;
		padding:20px 0;
		width:100%;
		height:auto;
		background-color:black;
	}		
	
	#mobile .intro.selected {
		display:block;
	}

	#mobile .intro.intouch {
		display:block;
		margin:10px 0 0;
		padding:0;
	}
	#mobile .intro p {
		color:white !important;
	}
	
	#mobile .intro a {
		background-color:#f70;
		color:white;
	}
	
	#mobile .intro .button {
		margin-bottom:10px;
		margin-left:20px;
		background:#f70 url() center center no-repeat;
		color:white;
		text-transform:uppercase;
		text-shadow:0 0 0 transparent;
		font-size:1.15em;
		font-family:sans-serif, 'Franklin ITC W01 Bold';
			
	}
	
	#content > div > div { margin:10px 0; }
	#mobile .div {
		margin:1px auto;
	}
	#mobile .container {
		padding:0;
		width:100%;
	}
	
	#mobile h2, #mobile h3 {
		display:block;
		margin:0;
	}
	
	#mobile h2 {
		margin-top:10px;
		padding:10px 20px;
	}
	
	#mobile h2:after {
		float:right;
		margin-top:5px;
		content:url(/rsrc/img/general_arrow.gif);
	}
	#mobile p {
		margin-right:20px;
		margin-left:20px;
	}
	
	#mobile .segment ul {
		margin-right:20px;
		margin-left:30px;
	}
	
	#mobile .segment h3 {
		margin-left:20px;
	}
	#mobile h2 + .segment h3 {
		margin-top:15px;
	}
	#mobile .wrapper {
		width: 100%;
	}
	
	#mobile .left {
		float:none;
	}
	
	#mobile div.right {
		float:none;
	}
	
	#mobile ul.menu, #mobile #nav {
		background-color:#000 !important;
		height:auto;
	}
	
	#mobile .menu.container {
		margin:0;
		padding:0;
		width:100%;
	}
	
	#mobile #nav {
		margin:0;
		padding:0;
		border:10px solid #ddd;
		background-color:#ddd;
	}

	#mobile .alert {
		padding: 20px 0;
	}
			
	#mobile .alert h3 {
		position:relative;
		margin:20px 20px 10px 20px;
		border:10px solid #f70;
		border-right:0;
		border-left:0;
	}
	
	#mobile .alert p {
		margin:5px 20px;
		padding:0;
	}
	#mobile #nav ul {
	}
	
	#mobile #nav li {
		margin: 0 0 0 -1px;
		padding-right:0;
		padding-left:0;
		width:50%;
		border-top:1px solid #ddd;
		border-right:0px;
		border-left:1px solid #ddd;
		background-color:#333;
		font-size:1.5em;
	}
	#mobile #nav li.selected {
		background-color:#f70;
	}
	#mobile #nav li a {
		padding:15px;
	}
	#mobile #nav li.selected a {
		text-transform:none;
		
	}
	
	#mobile div.column {
		margin-right:0;
		margin-left:0;
		padding:0;
		width:100%;
	}
	
	#mobile .segment {
		overflow:hidden;
		margin:0;
		height:0;
	}
	#mobile .segment.open {
		height:auto;
	}
	#mobile .segment.closed {
		overflow:hidden;
		height:0;
	}
	
	
	#mobile #content > div > div img.hero {
		position:relative;
		display:none;
		margin:0 0 -10px 0;
		width:100%;
		width:45rem;
	}
	
	#mobile .accordion {
		margin:0;
	}

	#mobile .locations .content {
		display:none;
	}
	
	
	#mobile .locations .content.open {
		display:block;
	}
	
	#mobile .locations p {
		margin-left:0;
	}
	
	#mobile .locations .map {
		width:400px;
	}
	
	#mobile form dt {
		display:block;
		padding-left:10px;
		text-align:left !important;
	}
	
	#mobile form dd {
		padding-left:10px;
	}
	
	#footer {
		margin:0; padding:0;
		max-width:100%;
		width:100%;
	}

	#footer .one.column {
		width:200px;
	}
	#footer .two.column, #footer .three.column, #footer .four.column {
		margin:0;
		padding:20px;
		width:400px;
	}
	
	.outro,#footer .container {
		margin:0;
		padding:0;
	}
	.branding img {
		float:left;
		margin:20px;
	}
	.outro, .outro * {
		letter-spacing:0;
		font-size:.925em;
		line-height:1.5;
		-webkit-font-smoothing:antialiased;
	}
	#footer .copyright .container, #footer .container {
		margin:0 auto;
		width:440px;
	}
	.copyright .left {
		float:left;
	} 
	 #designchums {
		float:right;
		margin-right:30px;
		width:125px;
		text-align:right;
		font-size:10px;
		color:#333;
	}
}
@media only screen and (max-width:890px) {
	html {
		font-size:8px;	
	}
	.container {
		width:890px;
	}
}
@media only screen and (max-width:990px) {
	html {
		font-size:9px;
	}
}
@media only screen and (min-width: 1600px) {
	html {
		font-size:11px;
	}
}
@media only screen and (min-width: 2000px) {
	html {
		font-size:12px;
	}
}