/* =============================================================================
   HTML5 Boilerplate CSS: h5bp.com/css
   ========================================================================== */
* {margin:0;padding:0;}
.cufon-loading {visibility:hidden !important;}

article, aside, details, figcaption, figure, footer, header, hgroup, nav, section { display: block; }
audio, canvas, video { display: inline-block; *display: inline; *zoom: 1; }
audio:not([controls]) { display: none; }
[hidden] { display: none; }

html { font-size: 100%; -webkit-text-size-adjust: 100%; -ms-text-size-adjust: 100%;height:100%; overflow-y:scroll;}
html, button, input, select, textarea { font-family: sans-serif; color: #222; }
body { margin: 0; font-size: 1em; line-height: 1.4; height:100%; }

::-moz-selection { background: #fe57a1; color: #fff; text-shadow: none; }
::selection { background: #fe57a1; color: #fff; text-shadow: none; }
abbr[title] { border-bottom: 1px dotted; }
b, strong { font-weight: bold; }
blockquote { margin: 1em 40px; }
dfn { font-style: italic; }
hr { display: block; height: 1px; border: 0; border-top: 1px solid #ccc; margin: 1em 0; padding: 0; }
ins { background: #ff9; color: #000; text-decoration: none; }
mark { background: #ff0; color: #000; font-style: italic; font-weight: bold; }
pre, code, kbd, samp { font-family: monospace, serif; _font-family: 'courier new', monospace; font-size: 1em; }
pre { white-space: pre; white-space: pre-wrap; word-wrap: break-word; }
q { quotes: none; }
q:before, q:after { content: ""; content: none; }
small { font-size: 85%; }
sub, sup { font-size: 75%; line-height: 0; position: relative; vertical-align: baseline; }
sup { top: -0.5em; }
sub { bottom: -0.25em; }
ul, ol { margin: 0; padding: 0; }
dd { margin: 0 0 0 40px; }
nav ul, nav ol { list-style: none; list-style-image: none; margin: 0; padding: 0; }
svg:not(:root) { overflow: hidden; }
figure { margin: 0; }
form { margin: 0; }
fieldset { border: 0; margin: 0; padding: 0; }
label { cursor: pointer; }
legend { border: 0; *margin-left: -7px; padding: 0; white-space: normal; }
button, input, select, textarea { font-size: 100%; margin: 0; vertical-align: baseline; *vertical-align: middle; }
button, input { line-height: normal; }
button, input[type="button"], input[type="reset"], input[type="submit"] { cursor: pointer; -webkit-appearance: button; *overflow: visible; }
button[disabled], input[disabled] { cursor: default; }
input[type="checkbox"], input[type="radio"] { box-sizing: border-box; padding: 0; *width: 13px; *height: 13px; }
input[type="search"] { -webkit-appearance: textfield; -moz-box-sizing: content-box; -webkit-box-sizing: content-box; box-sizing: content-box; }
input[type="search"]::-webkit-search-decoration, input[type="search"]::-webkit-search-cancel-button { -webkit-appearance: none; }
button::-moz-focus-inner, input::-moz-focus-inner { border: 0; padding: 0; }
textarea { overflow: auto; vertical-align: top; resize: vertical; }
input:valid, textarea:valid {  }
input:invalid, textarea:invalid { background-color: #f0dddd; }
table { border-collapse: collapse; border-spacing: 0; }
td { vertical-align: top; }
/* end resets */



.chromeframe { margin: 0.2em 0; background: #ccc; color: black; padding: 0.2em 0; }







/* begin theme, text sizing and colours */
body { font:0.75em/140% "Helvetica Neue", Helvetica, Arial; 
background-color:#efefef;
background-position:50% 0%;
background-image:url(/app_images/bg.jpg);
background-repeat:no-repeat;
color:#666666;
}

a { color: #444444; }
a:visited { color: #444444; }
a:hover, a:hover * { color: #cf6733;text-decoration:none;  }
a:focus { outline: none; }
a:hover, a:active { outline: 0; }

p { margin:10px 0px 20px 0px;}

h1, h2, h3, h4, h5, h6 {margin-bottom:5px; color:#5f5f5f;font-family:Arial, Helvetica, sans-serif;}
h1, h2 {letter-spacing:-1px;}
h3, h4 {letter-spacing:-0.5px;}

h1 {font-size:2.5em; line-height:1.1em;font-family: "Palatino Linotype", "Book Antiqua", Palatino, serif; margin-bottom:15px;}
h2 {font-size:1.9em; line-height:1.1em;font-family: "Palatino Linotype", "Book Antiqua", Palatino, serif; margin-bottom:15px;}
h3 {font-size:1.5em; line-height:1.1em;font-family: "Palatino Linotype", "Book Antiqua", Palatino, serif;}
h4 {font-size:1.2em;}
h5 {font-size:0.9em; line-height:1.2em;}
h6 {}

h1 span, h2 span, h3 span, h4 span, h5 span, h6 span {color:#9b9b9b;}


ul.primary h3, ul.secondary h3 {font-family:Arial, Helvetica, sans-serif; text-transform:uppercase; font-weight:normal; margin-bottom:3px;font-size:1.1em; line-height:1.4em;}
body.home ul.primary h3 {font-size:1.3em; line-height:1.1em;}
ul.primary h5 {font-family: "Palatino Linotype", "Book Antiqua", Palatino, serif; font-weight:bold; margin-bottom:0px; color:#999999; line-height:10px;}
ul.secondary h3 {font-size:1.3em; padding:0px; margin:0px; display:inline; float:right; line-height:40px; margin-right:12px;}

article h4 {color:#cf6733; font-size:1.3em; margin-top:2px;}

#footer-container footer {font-size:90%;}
#footer-container footer, #footer-container footer a:link, #footer-container footer a:visited {color:#a7a7a7; text-decoration:none;}
#footer-container footer a:hover {color:#cf6733;}
#footer-container footer a.activeLink {background:url(/app_images/activeLink.png) top center no-repeat;}

.altcolor1 {color:#9b9b9b;}
.altcolor2, .activeLink, .activeLink *, .activeLink:hover * {color:#cf6733 !important;}

ul.primary, ul.secondary, h1, h2, h3 { text-shadow:#fff 0px 1px;}

header h1 {margin-top:50px;color:#9b9b9b; margin-bottom:0px; text-shadow:#000 0px 1px; margin-left:60px; font-size:3em;}
header h4 {color:#9b9b9b; margin-bottom:0px; text-shadow:#000 0px 1px; margin-left:60px;}


div.slide h1 {color:#9b9b9b; margin-bottom:15px; text-shadow:#000 0px 1px;}
div.slide h4 {color:#9b9b9b; margin-bottom:10px; text-transform:uppercase;}
div.slide h5 {color:#cccccc; margin-bottom:2px; text-transform:uppercase;}




/* structure */
#wrapper {
	height:100%;
	width:1000px;
	margin:0px auto;
}

.wrapper {margin:0px auto;}

article.wrapper {width:700px;}

footer.wrapper {width:660px;}

.container {position:relative;}



#header-container  { 
width:1000px;
margin:0px auto; 
background: #454545 url(/app_images/slidebg.jpg) no-repeat; 
background-position:0px 0px;
min-height:350px;
}

body.home #header-container  {min-height:600px;}

body.strategies #header-container  {background-image:url(/app_images/headers-strategy.jpg);}
body.services #header-container  {background-image:url(/app_images/headers-services.jpg);}
body.rewards #header-container  {background-image:url(/app_images/headers-portfolio.jpg);}
body.showcase #header-container  {background-image:url(/app_images/headers-casestudies.jpg);}
body.contact #header-container  {background-image:url(/app_images/headers-contact.jpg);}

#header-container header {padding-bottom:0px; padding-top:0px; width:100%;}
body.home #header-container header {position:absolute;}


#title {padding-bottom:25px; position:relative; z-index:10000;}
#title a{ display:block; height:75px; width:190px; margin-left:60px; margin-top:30px; text-indent:-5000px; background: url(/app_images/sprite.png) no-repeat; background-position:-340px 15px;}
div#logo {width:160px; height:64px; float:right; margin-right:124px; top:95px; position:relative;}

::-moz-selection { background: #f16529; color: #fff; text-shadow: none; }
::selection      { background: #f16529; color: #fff; text-shadow: none; }


#header-container nav { 
	background:#efefef;
	min-height:40px;
	width:100%;
}

body.home #header-container nav { 
	background:none;
	height:80px;
	width:100%;
}

span.leftnav {display:block; width:20px; height:110px; background:url(/app_images/sprite.png) no-repeat; 
background-position:-170px -110px; float:left; position:absolute; z-index:1003; left:-20px; top:112px;}

span.rightnav {display:block; width:20px; height:110px; background:url(/app_images/sprite.png) no-repeat; 
background-position:-240px -110px; float:right; position:absolute; z-index:1003; right:-20px; top:112px;}

body.home span.leftnav {background-position:-30px -110px;}
body.home span.rightnav {background-position:-100px -110px;}

#header-container nav ul.primary {
	background-image:url(/app_images/sprite.png);
	background-repeat:no-repeat;
	background-position:0px -265px;
	position:relative;
	z-index:1001;
	float:left;
	margin-left:45px;
	}
	
body.home #header-container nav ul.primary {width:540px;height:80px;margin-left:0px;}	
	
#header-container nav ul.secondary {
	background-image:url(/app_images/sprite.png);
	background-repeat:no-repeat;
	background-position:92% -100px ;
	height:80px;
	position:relative;
	z-index:1002;
	width:105px;
	float:right;
	}	
	
#header-container nav ul.primary li {
	background:url(/app_images/sprite.png) no-repeat 100% 100%;
	padding-right:2px;
	float:left;
	}

body.home #header-container nav ul.primary li {height:80px;}	

#header-container nav ul.primary li a {
	float:left;
	padding:10px 17px 8px 15px;
	text-align:center;
	}

body.home #header-container nav ul.primary li a {padding:8px 15px 8px 13px;}

#header-container nav ul.secondary li a {text-align:right;padding:8px 5px;}		

#header-container nav ul.primary li a, #header-container nav ul.secondary li a {text-decoration:none;}

#header-container nav ul.primary li a:hover { background: url(/app_images/tile.png) top right no-repeat;}





#main {
	width:1000px;
	margin:0px auto;
}

#main article {
	padding:40px 1% 0px 1%;
	}

body.home #main article {
	padding:40px 1% 0px 1%;
	background-image:url(/app_images/whitefade.jpg);
	background-position:0% 50%;
	background-repeat:no-repeat;
	}

article header {
	float:left;
	width:60%;
	padding:0px 5% 10px 5%;
}

article section {
	float:left;
	width:55%;
	padding:0px 5% 30px 5%;
}

article footer, article aside {
	float:right;
	width:30%;
	padding:0px 5% 30px 0%;
}

body.home article section, body.home article footer {
	float:left;
	text-align:center;
	width:40%;
}


body.rewards article {background:url(/app_images/rewards-carousel.jpg) center bottom no-repeat;}
body.rewards article h1 {margin-bottom:15px;}
body.services article section, body.rewards article section {
	float:left;
	width:27%;
	padding:0px 0% 0px 5%;
}

body.services article footer {
	clear:left;
	float:left;
	width:60%;
	padding:20px 0% 30px 5%;
}

body.services article aside {
	float:right;
	padding:20px 40px 30px 0px;
	width:27%;
}

body.rewards article footer {
	float:left;
	width:100%;
	padding:100px 0 35px 0;
}



body.contact article section, body.contact article aside {
	float:left;
	width:40%;
	padding:0px 5% 30px 5%;
}

body.contact article aside {padding-top:7px;}

body.showcase article section {
	float:left;
	width:90%;
	padding:0px 5% 30px 5%;
}




article footer a {
	text-align:center;
	text-transform:uppercase;
	padding:0px 10px;
	background-image:url(/app_images/sprite.png);
	background-repeat:no-repeat;
	background-position:0px -377px;
	font-size:0.9em;
	line-height:160%;
}


article section ul li {
	list-style-type:none;
	padding:0px 15px;
	background-image:url(/app_images/sprite.png);
	background-repeat:no-repeat;
	background-position:0px -375px;
	line-height:160%;
}










#footer-container footer {
	padding-bottom:50px;
	padding-top:50px;
	text-align:center;
	width:75%;
	margin:0px auto;
}

#footer-container footer div.clearfix {
	height:10px;
	background:url(/app_images/sprite.png) repeat-x;
	background-position:0px -235px;
	margin-top:5px;
	margin-bottom:5px;
}

#footer-container footer div.clearfix span {
	height:10px;
	display:block;
	width:30px;
	margin:0px auto;
	background:#efefef url(/app_images/sprite.png) no-repeat;
	background-position:-263px 0px;
}

#footer-container footer nav ul  {width:auto; margin:0px auto 10px auto;}
#footer-container footer nav ul li {display:inline-table; margin:5px;}
#footer-container footer nav ul li a {padding:12px 5px;}


/* ===============
    ALL: IE Fixes
   =============== */

/*.ie7 #title{ padding-top:20px; }*/


/* =============================================================================
   Non-Semantic Helper Classes
   ========================================================================== */

.ir { display: block; border: 0; text-indent: -999em; overflow: hidden; background-color: transparent; background-repeat: no-repeat; text-align: left; direction: ltr; *line-height: 0; }
.ir br { display: none; }
.hidden { display: none !important; visibility: hidden; }
.visuallyhidden { border: 0; clip: rect(0 0 0 0); height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute; width: 1px; }
.visuallyhidden.focusable:active, .visuallyhidden.focusable:focus { clip: auto; height: auto; margin: 0; overflow: visible; position: static; width: auto; }
.invisible { visibility: hidden; }
.clearfix:before, .clearfix:after { content: ""; display: table; }
.clearfix:after { clear: both; }
.clearfix { *zoom: 1; }


/* =============================================================================
   Print Styles
   ========================================================================== */
 
@media print {
  * { background: transparent !important; color: black !important; box-shadow:none !important; text-shadow: none !important; filter:none !important; -ms-filter: none !important; } /* Black prints faster: h5bp.com/s */
  a, a:visited { text-decoration: underline; }
  a[href]:after { content: " (" attr(href) ")"; }
  abbr[title]:after { content: " (" attr(title) ")"; }
  .ir a:after, a[href^="javascript:"]:after, a[href^="#"]:after { content: ""; }  /* Don't show links for images, or javascript/internal links */
  pre, blockquote { border: 1px solid #999; page-break-inside: avoid; }
  thead { display: table-header-group; } /* h5bp.com/t */
  tr, img { page-break-inside: avoid; }
  img { max-width: 100% !important; }
  @page { margin: 0.5cm; }
  p, h2, h3 { orphans: 3; widows: 3; }
  h2, h3 { page-break-after: avoid; }
}



















div.holder {
	display:block;
	width:100%;
	background:rgba(245,245,245,0.9); 
	background:#efefef\9; 
	border-bottom:1px solid #fff;
	padding:10px 0px 10px 0px;
}
div.message {
	position:relative;
	margin:0px ;
	text-align:center;
	z-index:1000;
	width:100%;
	text-transform:uppercase;
	font-size:9px;
	}







/*
 * jQuery FlexSlider v2.0
 * http://www.woothemes.com/flexslider/
 *
 * Copyright 2012 WooThemes
 * Free to use under the GPLv2 license.
 * http://www.gnu.org/licenses/gpl-2.0.html
 *
 * Contributing author: Tyler Smith (@mbmufffin)
 */

 
/* Browser Resets */
.flex-container a:active,
.flexslider a:active,
.flex-container a:focus,
.flexslider a:focus  {outline: none;}
.slides,
.flex-control-nav,
.flex-direction-nav {margin: 0; padding: 0; list-style: none;} 

/* FlexSlider Necessary Styles
*********************************/ 
.flexslider {margin: 0; padding: 0;}
.flexslider .slides > li {display: none; -webkit-backface-visibility: hidden;} /* Hide the slides before the JS is loaded. Avoids image jumping */
.flexslider .slides img {/*width: 100%;*/ display: block;}
.flex-pauseplay span {text-transform: capitalize;}

/* Clearfix for the .slides element */
.slides:after {content: "."; display: block; clear: both; visibility: hidden; line-height: 0; height: 0;} 
html[xmlns] .slides {display: block;} 
* html .slides {height: 1%;}

/* No JavaScript Fallback */
/* If you are not using another script, such as Modernizr, make sure you
 * include js that eliminates this class on page load */
.no-js .slides > li:first-child {display: block;}

/* FlexSlider Default Theme
*********************************/
.flexslider {/*margin: 0 0 60px; background: #fff; border: 4px solid #fff;*/ position: relative; /*-webkit-border-radius: 4px; -moz-border-radius: 4px; -o-border-radius: 4px; border-radius: 4px; box-shadow: 0 1px 4px rgba(0,0,0,.2); -webkit-box-shadow: 0 1px 4px rgba(0,0,0,.2); -moz-box-shadow: 0 1px 4px rgba(0,0,0,.2); -o-box-shadow: 0 1px 4px rgba(0,0,0,.2);*/ zoom: 1;}
.flex-viewport {max-height: 2000px; -webkit-transition: all 1s ease; -moz-transition: all 1s ease; transition: all 1s ease;}
.loading .flex-viewport {max-height: 300px;}
.flexslider .slides {zoom: 1;}

.carousel li {margin-right: 5px}


/* Direction Nav */
.flex-direction-nav a {width: 20px; height: 20px; margin: -20px 0 0; display: block; background: #ccc url(images/bg_direction_nav.png) no-repeat 0 0; position: absolute; top: 560px; /*top:50%\9; top: 107%; top:100%\9;*/ cursor: pointer; text-indent: -9999px; /*opacity: 0;*/ -webkit-transition: all .3s ease;}
.flex-direction-nav .flex-next {background-position: 100% 0; right:-20px; background:url(/app_images/rightarrow.png) no-repeat center right;}
.flex-direction-nav .flex-prev {/*left: -36px;*/ left:-20px; background:url(/app_images/leftarrow.png) no-repeat center left;}
.flexslider:hover .flex-next {opacity: 0.8; /*right: 5px;*/}
.flexslider:hover .flex-prev {opacity: 0.8; /*left: 5px;*/}
.flexslider:hover .flex-next:hover, .flexslider:hover .flex-prev:hover {opacity: 1;}
.flex-direction-nav .disabled {opacity: .3!important; filter:alpha(opacity=30); cursor: default;}

/* Control Nav */
.flex-control-nav {width: 100%; position: absolute; bottom: 20px; text-align: center;}
.flex-control-nav li {margin: 0 6px; display: inline-block; zoom: 1; *display: inline;}
.flex-control-paging li a {width: 11px; height: 11px; display: block; background: #666; background: rgba(0,0,0,0.5); cursor: pointer; text-indent: -9999px; -webkit-border-radius: 20px; -moz-border-radius: 20px; -o-border-radius: 20px; border-radius: 20px; box-shadow: inset 0 0 3px rgba(0,0,0,0.3);}
.flex-control-paging li a:hover { background: #333; background: rgba(0,0,0,0.7); }
.flex-control-paging li a.flex-active { background: #000; background: rgba(0,0,0,0.9); cursor: default; }

.flex-control-thumbs {margin: 5px 0 0; position: static; overflow: hidden;}
.flex-control-thumbs li {width: 25%; float: left; margin: 0;}
.flex-control-thumbs img {width: 100%; display: block; opacity: .7; cursor: pointer;}
.flex-control-thumbs img:hover {opacity: 1;}
.flex-control-thumbs .active {opacity: 1; cursor: default;}

@media screen and (max-width: 860px) {
  .flex-direction-nav .flex-prev {opacity: 1; left: 0;}
  .flex-direction-nav .flex-next {opacity: 1; right: 0;}
}


div#nav { position:absolute; top:500px; background:#ffffff; width:100%; -webkit-box-shadow:  0px 2px 7px rgba(0,0,0,0.2); -moz-box-shadow: 0px 2px 7px rgba(0,0,0,0.2); box-shadow: 0px 2px 7px rgba(0,0,0,0.2); border-bottom:1px solid #ccc\9;}
div#nav a { float:left; height:55px; padding-top:20px; padding-bottom:25px; margin-left:24px;}
div#nav a.flex-active { background:url(/app_images/selected.png) no-repeat; background-position:50% 0px;}


ul.slides li {display:block;}
ul.slides li div.slide {width:300px; margin-left:60px; top:270px; position:absolute;}
div.slide h4 span {background-image:url(/app_images/greenarrow.png); background-repeat:no-repeat; background-position:100% 2px; padding-right:15px;}


div#carousel {
	width:980px; 
	height:155px; 
	background:#ffffff url(/app_images/reward-noflash.jpg) center no-repeat;
	}
	
.carouseljs {background-image:none !important;}	

div.map {
width:350px; 
border:5px solid #FFF;  
-webkit-box-shadow:  0px 2px 7px rgba(0,0,0,0.2); 
-moz-box-shadow: 0px 2px 7px rgba(0,0,0,0.2); 
box-shadow: 0px 2px 7px rgba(0,0,0,0.2); 
}


#form label {width:120px; display:inline-table; line-height:1.2em;}
#form label.ok {}
#form label.error {color: #cf6733;}
#form input[type=text] {padding:2px; width:200px; margin-bottom:4px;}
#form input[type=submit] {margin-left:125px; padding:2px 4px;}
#form select {margin-bottom:4px;}
#form select option {padding-left: 2px;}
#form textarea {padding:2px; font-family:Arial, Helvetica, sans-serif; width:250px; height: 100px}

img.showcase { 
	border:5px solid #FFF; 
	-webkit-box-shadow:  0px 2px 7px rgba(0,0,0,0.2); 
	-moz-box-shadow: 0px 2px 7px rgba(0,0,0,0.2); 
	box-shadow: 0px 2px 7px rgba(0,0,0,0.2); 
	margin-bottom:10px;
}

img.logo {
	float:right; 
	border-top:1px solid #FFF;
	border-bottom:1px solid #FFF;
	border-left:8px solid #FFF;
	border-right:8px solid #FFF;
	-webkit-box-shadow:  0px 2px 7px rgba(0,0,0,0.2); 
	-moz-box-shadow: 0px 2px 7px rgba(0,0,0,0.2); 
	box-shadow: 0px 2px 7px rgba(0,0,0,0.2); 
	margin-bottom:20px;
}

body.showcase #main ul li {
	background:none;
	padding:0px;
	min-height:320px;
	border-bottom:1px solid #dedede;
	width:410px;
	margin-bottom:40px;
	margin-left:15px;
	margin-right:15px;
	float:left;
	}

body.showcase #main ul li h2 {margin-bottom:0px; margin-top:10px;}
body.showcase #main ul li h4 {color:#aaaaaa;}

ul.error {color: #cf6733;}

/*div#form {display:none;}*/