/*
 * HTML5 Boilerplate
 *
 * What follows is the result of much research on cross-browser styling.
 * Credit left inline and big thanks to Nicolas Gallagher, Jonathan Neal,
 * Kroc Camen, and the H5BP dev community and team.
 */

/* ==========================================================================
   Base styles: opinionated defaults
   ========================================================================== */

html,
button,
input,
select,
textarea {
    color: #666;
}

body {
    font-size: 1em;
    line-height: 1.4;
	/*text-align:justify;*/
	background:transparent url('../../images/mobile/background.png') 0 0 repeat;
	min-width: 320px;
	color: #666;
}

a {
    color: #912019;
}

a:visited {
    color: #DD0000;
}

a:hover {
	text-decoration:none;
}

/*
 * Remove the gap between images and the bottom of their containers: h5bp.com/i/440
 */

img {
    vertical-align: middle;
}

/*
 * Remove default fieldset styles.
 */

fieldset {
    border: 0;
    margin: 0;
    padding: 0;
}

/*
 * Allow only vertical resizing of textareas.
 */

textarea {
    resize: vertical;
}

/* ==========================================================================
   Author's custom styles
   ========================================================================== */

.RadDock .rdContent { font: normal normal 1em/1.4 sans-serif; }

/********************  Mobile Navigation  ********************/
	
	.mobileNav
	{
		display:none;
		padding: 0px 0 0 0;
		margin: 0 0 20px 0;
		/*background-color:#0f5ea2;*/
		border-radius: 0px 0px 10px 10px;
		overflow: hidden;
	}
	
	.mobileNav ul.home
	{
		border-radius: 10px 10px 0px 0px;
		overflow: hidden;
		border-bottom: 1px solid #FFF;
	}
	
	.mobileNav > ul
	{
		background:transparent url('../../images/mobile/header-accent.png') left bottom repeat;
	}
	
	.mobileNav ul
	{
		margin:0;
		padding:0;
		list-style-type:none;
	}

	.mobileNav ul li
	{
		margin:0;
		padding:0;
		border-top: 1px solid #FFF;
	}
		.mobileNav ul li:first-child { border: none; }
	
	.mobileNav ul li.return { background:transparent url('../../images/mobile/nav-return.png') 15px 11px no-repeat; }
	.mobileNav ul li.return a { padding-left:50px; }

	.mobileNav ul li a
	{
		display: block;
		position:relative;
		padding: 8px 35px 8px 15px;
		color:#FFF;
		text-decoration:none;
	}
		.mobileNav ul li a:hover { background: transparent url('../../images/mobile/nav-hover-bg.png'); }
	
	.mobileNav ul li a span
	{
		display:block;
		position: absolute;
		right: 10px;
		top: 50%;
		margin-top: -9px;
		height: 18px;
		width: 18px;
		background: transparent url("../../images/mobile/nav-arrow.png") no-repeat 0 0;
	}
		
	.mobileNav ul ul ul { border-top: 1px solid #FFF; background: transparent url('../../images/mobile/nav-hover-bg.png'); }
	.mobileNav ul ul ul li { background:transparent url('../../images/mobile/nav-bullet.png') 35px 15px no-repeat; }
	.mobileNav ul ul ul li:last-child { border-bottom:none; }
	.mobileNav ul ul ul li a { padding-left:50px; font-size:0.875em; }
	/*.mobileNav ul ul ul {display:none !important;}*/
	.mobileNav ul ul ul ul li { background:transparent url('../../images/mobile/nav-bullet.png') 70px 15px no-repeat; }
	.mobileNav ul ul ul ul li a { padding-left:85px; }
	
@media
	only screen and (-webkit-min-device-pixel-ratio : 1.5),
	only screen and (min-device-pixel-ratio : 1.5) {
		.mobileNav ul li.return { background-size:24px 15px; -webkit-background-size:24px 15px; background-image:url('../../images/mobile/nav-return-retina.png'); }
		.mobileNav ul li a span { background-size:18px 18px; -webkit-background-size:18px 18px; background-image:url('../../images/mobile/nav-arrow-retina.png'); }
		.mobileNav ul ul ul li, .mobileNav ul ul ul ul li { background-size:5px 5px; -webkit-background-size:5px 5px; background-image:url('../../images/mobile/nav-bullet-retina.png'); }
	}


/********************  Mobile Header  ********************/
	
	.mobileHeader
	{
		position:relative;
		height:74px;
		background:transparent url('../../images/mobile/header-shadow.png') left bottom repeat-x;
	}
	
	/*.headerLogo
	{
		display:block;
		position:absolute;
		top:0;
		left:0;
		width:244px;
		height:74px;
		background:transparent url('../../images/mobile/header-logo.png') 0 0 no-repeat;
	}
		.headerLogo span { display:none; }*/
		
	
	.headerLogo
	{
		display:block;
		margin:0 auto;
		width:188px;
		height:74px;
		background:transparent url('../../images/mobile/header-logo.png') 0 0 no-repeat;
		text-indent:-9000px;
	}	
	
	
		
@media
	only screen and (-webkit-min-device-pixel-ratio : 1.5),
	only screen and (min-device-pixel-ratio : 1.5) {
	
		.headerLogo
		{
			background-image: url('../../images/mobile/header-logo-retina.png');
			background-size:188px 74px;
			-webkit-background-size:188px 74px;
		}
	}
	
	.mobileHeader .headerNavBtn
	{
		display:block;
		position:absolute;
		top:23px;
		right:10px;
		width:72px;
		height:27px;
		background:transparent url('../../images/mobile/header-menu-btn.png') 0 -27px no-repeat;
	}
	
	.mobileHeader .headerNavClose
	{
		background-position:0 0;
	}
	
	.mobileHeader .headerSignup
	{
		display:block;
		position:absolute;
		top:21px;
		right:10px;
		padding:3px 10px;
		width:auto;
		height:auto;
		color:#ffffff;
		font-size: 1em;
		text-transform:uppercase;
		text-shadow: 1px 1px 2px #020202;
		background-color:#E47700;
		border:1px solid #DD5900;
		border-radius: 10px;
		text-decoration:none;
	}
	.mobileHeader .logoutButton
	{
		color:#44598e;
		text-shadow:none;
		background-color:#ffffff;
		border:1px solid #9cbfd3;
	}
	.mobileHeader .headerSignup:hover
	{
		width:auto;
		color:#ffffff;
		text-shadow: 1px 1px 2px #020202;
		background-color:#688CCA;
		border:1px solid #567AB7;
	}

	.mobileAccent
	{
		position:relative;
		min-height:10px;
		background:transparent url('../../images/mobile/header-accent.png') left bottom repeat;
	}
	.mobileAccent:after
	{
		visibility: hidden;
		display: block;
		content: ".";
		clear: both;
		height: 0;
	}
	* html .mobileAccent             { zoom: 1; } /* IE6 */
	*:first-child+html .mobileAccent { zoom: 1; } /* IE7 */
	
	h2.page_title
	{
		color: #FFFFFF;
		display: block;
		float:left;
		font-size: 1em;
		font-weight: 600;
		line-height: 1;
		margin: 0 0 0px 0;
		padding: 8px 0px 8px 10px;
		width:175px;
		white-space:nowrap;
		overflow:hidden;
		text-overflow:ellipsis;
	}

	ul.headerImageBtns { list-style: none; margin: 3px 10px 2px 0; padding:0; float:right; }
	ul.headerImageBtns li { margin:0; padding:0; float:left; margin-left:10px; }
	ul.headerImageBtns li a
	{
		display:block;
		width:1px;
		height:1px;
		background: url('../../images/mobile/spacer.png') no-repeat 0 0;
		text-indent:-9999px;
		opacity:0.8;
		filter:alpha(opacity=80); /* For IE8 and earlier */
	}
	ul.headerImageBtns li a:active, ul.headerImageBtns li a:hover { text-decoration: none; opacity:1; filter:alpha(opacity=100); /* For IE8 and earlier */ }
	ul.headerImageBtns li a.headerBackBtn { width:58px; height:26px; background-image:url('../../images/mobile/header-back-btn.png'); }
	ul.headerImageBtns li a.headerNavBtn { width:74px; height:26px; background-image:url('../../images/mobile/header-menu-btn.png'); }
	ul.headerImageBtns li a.headerNavBtn.navClose { background-position: 0 -26px; }
	ul.headerImageBtns li a.headerHomeBtn { width:30px; height:26px; background-image: url('../../images/mobile/header-home-btn.png'); }
	
@media
	only screen and (-webkit-min-device-pixel-ratio : 1.5),
	only screen and (min-device-pixel-ratio : 1.5) {
	
		ul.headerImageBtns li a.headerNavBtn { background-size:74px 52px; -webkit-background-size:74px 52px; background-image:url('../../images/mobile/header-menu-btn-retina.png'); }
		ul.headerImageBtns li a.headerHomeBtn { background-size:30px 26px; -webkit-background-size:30px 26px; background-image: url('../../images/mobile/header-home-btn-retina.png'); }
	}
	
	
/********************  Mobile Container  ********************/

	/**** dynamic image control ****/
	.FW_EDITOR_STYLE { table-layout:fixed; }
	.FW_EDITOR_STYLE img { max-width:100%; height: auto; }
	/*****/
	
	.mobileContainer
	{
		overflow:visible;
		padding: 20px 25px 20px;
		background:transparent url('../../images/mobile/content-bg.png') repeat left top;
		position:relative;
		/*min-height:200px;*/
	}
	.mobileContent.topContent.menuPadding {padding-bottom:20px; z-index:2;}

	ul.containerMenu
	{
		margin: 0 0 20px 0;
		padding:0;
		list-style-type:none;
	}
	
	ul.containerMenu li
	{
		margin:10px 0 0 0;
		padding:0;
		background: url('../../images/mobile/nav-bg.png');
		/*border-radius: 10px;
		box-shadow: 0px 0px 3px #ccc;*/
	}
		ul.containerMenu li:hover { background: url('../../images/mobile/nav-bg-hover.png'); }
		ul.containerMenu li:first-child { margin:0 0 0 0; }
	
	ul.containerMenu li a
	{
		display: block;
		padding: 0.3em 0.25em;
		font-size:1.25em;
		color:#FFF;
		text-align: center;
		text-decoration:none;
		background:url('../../images/mobile/nav-overlay.png');
		background-size:100% 100%;
		background-repeat:no-repeat;
	}
	
	
/********* default Catapult title ***********/
	
	.catapultTitle 
	{
		border-bottom: 1px solid #CCCCCC;
		font-size: 1.25em;
		font-weight: 400;
		line-height: 1;
		margin: 20px 0 10px;
		padding: 0 35px 5px 35px;
		position: relative;
	}
	.topContent h3.catapultTitle:nth-child(3)
	{
		margin-top:0;
	}
	.catapultTitle img
	{
		position:absolute;
		z-index:2;
		width: 30px;
		height: 30px;
		top: -5px;
		left: 0;   
	}
	.catapultTitle span
	{
		
	}
	.catapultTitle a
	{
		display:none;
	}
		.catapultTitle a:hover { opacity:1; filter:alpha(opacity=100); /* For IE8 and earlier */ }
		
	.catapultTitle.disabledIcon { padding: 0 0px 5px 0px; }
	.catapultTitle.disabledIcon img { display:none; }
	.catapultTitle.disabledIcon span {  }
	.catapultTitle.disabledIcon a {  }
	
	.mobileContent .catapultTitle.firstTitle { margin-top:0px; }
	
	/*** expanding content titles ***/
	.bottomContent .catapultTitle 
	{
		cursor:pointer;
	}
	.bottomContent .catapultTitle img
	{
		  
	}
	.bottomContent .catapultTitle span
	{
		display:block;
		position: absolute;
		right: 10px;
		top: 50%;
		margin-top: -9px;
		height: 18px;
		width: 18px;
		background: transparent url("../../images/mobile/title-icon.png") no-repeat top left;
	}
	.bottomContent .catapultTitle.open span { background-position: top right }
	.bottomContent .catapultTitle a
	{
		
	}
		.bottomContent .catapultTitle a:hover {  }
		
	.bottomContent .catapultTitle.disabledIcon {  }
	.bottomContent .catapultTitle.disabledIcon img {  }
	.bottomContent .catapultTitle.disabledIcon span {  }
	.bottomContent .catapultTitle.disabledIcon a {  }
	
	.bottomContent .mobileContent .catapultTitle.firstTitle {  }
	
	.bottomContent .FW_EDITOR_STYLE { display:none; }
	.rspPane .bottomContent .FW_EDITOR_STYLE { display:table; }
	.rspPane .bottomContent .catapultTitle span { background-position: top right }

@media
	only screen and (-webkit-min-device-pixel-ratio : 1.5),
	only screen and (min-device-pixel-ratio : 1.5) {
	
		.bottomContent .catapultTitle span { background-image:url('../../images/mobile/title-icon-retina.png'); background-size:36px 18px; -webkit-background-size:36px 18px; }
	}
	
	/*<a href="freedompage://33797951-66b4-4678-907d-1fea467873ed" class="contentLinkButton">This is a button!</a>*/
	a.contentLinkButton
	{
		display:block;
		float:left;
		margin: 10px 0 10px 0;
		padding:3px 10px;
		width:auto;
		height:auto;
		color:#ffffff;
		font-size: 1em;
		text-transform:uppercase;
		text-shadow: 1px 1px 2px #020202;
		background-color:#E47700;
		border:1px solid #DD5900;
		border-radius: 10px;
		text-decoration:none;
	}
	a.contentLinkButton:hover
	{
		width:auto;
		color:#ffffff;
		text-shadow: 1px 1px 2px #020202;
		background-color:#688CCA;
		border:1px solid #567AB7;
	}
	
/* Tablet Layout: 481px to 768px. Inherits styles from: Mobile Layout. */
@media only screen and (min-width: 481px) {
	a.contentLinkButton
	{
		
	}
	
}


/********************  Mobile Footer  ********************/
	
	.mobileAccentFooter
	{
		position:relative;
		min-height:10px;
		background:transparent url('../../images/mobile/header-accent.png') left bottom repeat;
	}
	
	.mobileFooter
	{
		position:relative;
		height:87px;
		background:transparent url('../../images/mobile/footer-shadow.png') left top repeat-x;
	}

	.footerWatermark
	{
		display:none;
		position:absolute;
		top:-54px;
		right:0;
		width:141px;
		height:141px;
		background:transparent url('../../images/mobile/footer-watermark.png') 0 0 no-repeat;
	}

/* footer icons */
	ul.footerIcons
	{
		position:relative;
		text-align:center;
		list-style: none;
		margin:0;
		padding:14px 0 0 0;
		border: none;
	}
	ul.footerIcons li
	{
		display:inline-block;
		margin: 0 0 0 10px;
		padding: 0;
		background:transparent url('../../images/mobile/header-accent.png') repeat 0 0;
		border-radius: 5px;
		box-shadow: 0px 1px 3px #333;
		overflow:hidden;
		
		/* For IE 7 */
		zoom: 1;
		*display: inline;
	}
	ul.footerIcons li:first-child { margin:0; }
	ul.footerIcons li:hover { opacity:0.8; filter:alpha(opacity=80); /* For IE8 and earlier */ }
	ul.footerIcons li a
	{
		display:block;
		margin:0;
		padding:0;
		width:42px;
		Height:42px;
		background:transparent url('../../images/mobile/spacer.png') no-repeat 0 0;
		text-indent:-9000px;
	}
	ul.footerIcons li a:hover {  }
	ul.footerIcons li.phone a { background-image:url('../../images/mobile/footer-icon-phone.png'); }
	ul.footerIcons li.map a { background-image:url('../../images/mobile/footer-icon-map.png'); }
	ul.footerIcons li.full a { background-image:url('../../images/mobile/footer-icon-full.png'); }
	ul.footerIcons li.newone a { background-image:url('../../images/mobile/footer-icon-newone.png'); }
	ul.footerIcons li.newtwo a { background-image:url('../../images/mobile/footer-icon-newtwo.png'); }

@media
	only screen and (-webkit-min-device-pixel-ratio : 1.5),
	only screen and (min-device-pixel-ratio : 1.5) {
	
		ul.footerIcons li.phone a { background-image:url('../../images/mobile/footer-icon-phone-retina.png'); }
		ul.footerIcons li.map a { background-image:url('../../images/mobile/footer-icon-map-retina.png'); }
		ul.footerIcons li.full a { background-image:url('../../images/mobile/footer-icon-full-retina.png'); }
		ul.footerIcons li.newone a { background-image:url('../../images/mobile/footer-icon-newone-retina.png'); }
		ul.footerIcons li.newtwo a { background-image:url('../../images/mobile/footer-icon-newtwo-retina.png'); }
		ul.footerIcons li a { background-size:42px 42px; -webkit-background-size:42px 42px; }
	}
	
.footerCopyright
	{
		position:relative;
		padding:14px 0;
		color:#ffffff;
		text-align:center;
		font-size:0.75em;
	}

ul.generalInfo
{
	position:relative;
	list-style:none;
	background:#eee;
	margin: 0 0 25px 0;
	padding:0;
	border:1px solid #acadb1;
	border-radius:8px;
	font-size:14px;
	line-height: 20px;
	overflow:hidden;
	color:#000;
}
/*ul.generalInfo:nth-child(3) { margin: 0 0 25px 0; }*/

ul.generalInfo li { margin:0; padding:0; border-bottom:1px solid #acadb1; border-top:1px solid #ffffff; }
ul.generalInfo li:last-child { border-bottom:none; }
ul.generalInfo li strong { font-weight:700; }
ul.generalInfo li h3 { margin:0; padding:8px; font-size:14px; line-height: 20px; }
ul.generalInfo li div { padding:5px 10px 5px 45px; background: transparent url('../../images/mobile/spacer.png') no-repeat 8px 8px; }
ul.generalInfo li a
{
	display:block;
	position:relative;
	margin:0;
	padding:10px 10px 10px 45px;
	text-decoration:none;
	color:#000;
	font-weight:700;
	background: transparent url('../../images/mobile/spacer.png') no-repeat 8px 4px;
}
ul.generalInfo li a span
{
    display: block;
    height: 18px;
    margin-top: -9px;
    position: absolute;
    right: 8px;
    top: 50%;
    width: 18px;
	background: transparent url("../../images/mobile/gi-arrow.png") no-repeat 0 0;
}

ul.generalInfo li .map { background-image: url('../../images/mobile/icon-gi-map.png'); }
ul.generalInfo li .directions { background-image: url('../../images/mobile/icon-gi-directions.png'); }
ul.generalInfo li .fax { background-image: url('../../images/mobile/icon-gi-fax.png'); }
ul.generalInfo li .phone { background-image: url('../../images/mobile/icon-gi-phone.png'); }
ul.generalInfo li .website { background-image: url('../../images/mobile/icon-gi-website.png'); }
ul.generalInfo li .email { background-image: url('../../images/mobile/icon-gi-email.png'); }

@media
	only screen and (-webkit-min-device-pixel-ratio : 1.5),
	only screen and (min-device-pixel-ratio : 1.5) {
	
		ul.generalInfo li a span { background-size:18px 18px; -webkit-background-size:18px 18px; background-image:url('../../images/mobile/gi-arrow-retina.png'); }
		
		ul.generalInfo li .map { background-image: url('../../images/mobile/icon-gi-map-retina.png'); }
		ul.generalInfo li .directions { background-image: url('../../images/mobile/icon-gi-directions-retina.png'); }
		ul.generalInfo li .fax { background-image: url('../../images/mobile/icon-gi-fax-retina.png'); }
		ul.generalInfo li .phone { background-image: url('../../images/mobile/icon-gi-phone-retina.png'); }
		ul.generalInfo li .website { background-image: url('../../images/mobile/icon-gi-website-retina.png'); }
		ul.generalInfo li .email { background-image: url('../../images/mobile/icon-gi-email-retina.png'); }
		ul.generalInfo li div, ul.generalInfo li a { background-size:30px 30px; -webkit-background-size:30px 30px; }
	}


/* ==========================================================================
   Helper classes
   ========================================================================== */

/* Prevent callout */

.nocallout {
    -webkit-touch-callout: none;
}

.pressed {
    background-color: rgba(0, 0, 0, 0.7);
}

/* A hack for HTML5 contenteditable attribute on mobile */

textarea[contenteditable] {
    -webkit-appearance: none;
}

/* A workaround for S60 3.x and 5.0 devices which do not animated gif images if
   they have been set as display: none */

.gifhidden {
    position: absolute;
    left: -100%;
}

/*
 * Image replacement
 */

.ir {
    background-color: transparent;
    background-repeat: no-repeat;
    border: 0;
    direction: ltr;
    display: block;
    overflow: hidden;
    text-align: left;
    text-indent: -999em;
}

.ir br {
    display: none;
}

/*
 * Hide from both screenreaders and browsers: h5bp.com/u
 */

.hidden {
    display: none !important;
    visibility: hidden;
}

/*
 * Hide only visually, but have it available for screenreaders: h5bp.com/v
 */

.visuallyhidden {
    border: 0;
    clip: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
}

/*
 * Extends the .visuallyhidden class to allow the element to be focusable
 * when navigated to via the keyboard: h5bp.com/p
 */

.visuallyhidden.focusable:active,
.visuallyhidden.focusable:focus {
    clip: auto;
    height: auto;
    margin: 0;
    overflow: visible;
    position: static;
    width: auto;
}

/*
 * Hide visually and from screenreaders, but maintain layout
 */

.invisible {
    visibility: hidden;
}

/**
 * Clearfix helper
 * Used to contain floats: h5bp.com/q
 */

.clearfix:before,
.clearfix:after {
    content: "";
    display: table;
}

.clearfix:after {
    clear: both;
}

/*
 * For IE 6/7 only
 * Include this rule to trigger hasLayout and contain floats.
 */

.clearfix {
    *zoom: 1;
}

/* ==========================================================================
   EXAMPLE Media Queries for Responsive Design.
   Theses examples override the primary ('mobile first') styles.
   Modify as content requires.
   ========================================================================== */

@media only screen and (min-width: 800px) {
    /* Style adjustments for viewports that meet the condition */
}

@media only screen and (-webkit-min-device-pixel-ratio: 1.5),
       only screen and (min-resolution: 144dpi) {
    /* Style adjustments for viewports that meet the condition */
}
