/* Reset All Styles to baseline */
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%; }
html, button, input, select, textarea { font-family: sans-serif; color: #222; }
body { margin: 0; font-size: 1em; line-height: 1.4; }

a { color: #00e; }
a:visited { color: #551a8b; }
a:hover { color: #06e; }
a:focus { outline: thin dotted; }
a:hover, a:active { outline: 0; }
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; }


dd { margin: 0 0 0 20px; }
img { border: 0; -ms-interpolation-mode: bicubic; vertical-align: middle; }
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; }

/* Grid System:  based on a 12 grid system of 45 columns, 10 pix margins, with an extra 20 pix on the outside of the grid. */
#page 						{ width:990px;margin:0 auto;}

.module 					{ display: -moz-inline-stack;display:inline-block;*display:inline;letter-spacing:normal;margin:0 15px 20px;position:relative;vertical-align:top;word-spacing:normal;zoom:1;}

.span1 						{ width:50px}
.span2 						{ width:130px}
.span3						{ width:210px}
.span4						{ width:290px}
.span5						{ width:370px}
.span6						{ width:450px}
.span7						{ width:530px}
.span8 						{ width:610px}
.span9						{ width:690px}
.span10						{ width:770px}
.span11						{ width:850px}
.span12 					{ width:930px}


.zone 						{ float:left;letter-spacing:-3px;word-spacing:-4px}
.main						{ width:640px; padding-top:35px;}
.sidebar					{ width:320px; padding-top:20px;}
.wide						{ width:960px;}
.wide2						{ width:990px;}
.clearfix:after				{ content: "."; display: block; height: 0; clear: both; visibility: hidden; }
* html .clearfix			{ height:1%; }
*+html .clearfix			{ min-height: 1%; }

/* -- Base Typography (measurements from 12px = 1em mark) */
address {
font-style:italic;
margin:0 0 1.5em
}

body { /* fonts based on 16 px base */ 
font:100%/1.5 "Libre Franklin thin", sans-serif;
}

del {
color:#666
}

em,dfn,mark {
font-style:italic
}

h1 {
color: #004067;
font:400 1.5em/1.2 "Crimson Text", "Times New Roman", serif;
margin:0px 0px 1em;
}

h1 span {
color: #44ade2;
}


h2 {
color:#44ade2;
/*font-size:1.1em; */
font-size:1.16em;
line-height:1.25;
font-weight:500;
margin-bottom:.75em
}

h3 {
font-size:1em;
line-height:1.25;
font-weight:500;
margin-bottom:.75em
}

h4 {
font-size:1em;
line-height:1.25;
margin-bottom:1.25em
}

h5 {
font-size:1em;
font-weight:700;
margin-bottom:1.5em
}

h6 {
font-size:1em;
font-style:italic;
font-weight:700
}

html {
font-size:100.01%
}

li {
line-height:1.4em;
margin-bottom:0.5em;
}

nav li {
list-style:none;
}

nav ul {
margin:0;
padding:0
}

ol {
margin-bottom:1.5em;
padding-left:20px
}

p {
padding:0px;
margin:0px 0px 1.5em
}

pre {
margin:1.5em 0;
white-space:pre
}

pre,code,tt,kbd,samp {
font:1em 'andale mono', 'lucida console', monospace;
line-height:1.5
}

strong,dfn {
font-weight:700
}

sup,sub {
line-height:0
}

ul {
margin-bottom:1.5em;
padding-left:15px
}

.sidebar, .wide { /* resets sidebar, bottom zones to 12px */
/* font-size:0.9em; */
font-size:0.9em;
}

.wide2 { /* resets bottom zones to 15.68px */
font-size:0.9em;
}


/* Five Star Specific Styles (base fonts specified in Typography section */
body {
background-color:#414854;
border-top:6px solid #faaf30;
color:#414854;
}

a {
color:#db9828;
text-decoration: none;
}

a:focus,a:hover,a:visited {
color:#db9828
}

header {
background-image:url(../img/header_bg.gif);
}

header h1.module {
margin-bottom:0px;
margin-right:0px;
}

#logo {
background:url(../img/header_logo.png) no-repeat left top;
display:block;
height:92px;
text-indent: -100em;
overflow: hidden;
margin-bottom:0px;
}

#addressCt {
color:#444;
font-size:0.875em;
margin-bottom:0px;
padding-top:14px;
padding-left:30px;
text-shadow: 0px 0px 3px #fff;
width:305px;
margin-right:0px;
}

#addressCt strong {
color:#1f587a;
}

#addressCt a {
color:#414854;
font-weight: normal;
text-decoration: underline;
}

#navGlobal {
background-color:#fff;
border-bottom:1px solid #b2b5ba;
border-top:1px solid #b2b5ba;	
height: 30px;
margin:0px;
width:932px;
padding:0px 29px;
/* temp toolbar fix 
width:990px;
padding:0px;*/
}

#navGlobal ul {
list-style:none;
margin-bottom:0px;
padding-left:0px;
}

#navGlobal li {
border-right:1px solid #dddee0;
display: block;
float: left;
text-align: center;
}

#navGlobal li a {
color:#414854;
display: block;
text-decoration: none;
font-size: 92%;
text-transform:uppercase;
padding:5px 16px 3px;
/* temp toolbar fix */
/*padding:5px 26px 3px;*/
}

#navGlobal li:first-child {
border-left:1px solid #dddee0;
}

#navGlobal li a:hover,
#navGlobal li.current a {
background: #e1f0fb;
}

#navGlobal li.current a {
cursor: pointer;
}

#grid {
background-color:#fff;
padding:0px 15px;
}

footer {
color:#fff;
font:normal 1em "Crimson Text", "Times New Roman", serif;
padding:15px 0px;
text-align:center;
}

.consultButton, .consultButton:visited {
background:#00405f url(../img/btn_contactLogo.png) no-repeat 160px 7px;
color:#fff;
display:block;
padding:10px 65px 10px 15px;
overflow: hidden;
width:123px;
margin:0px auto;
line-height:1.3;
-webkit-border-radius:5px;
		border-radius:5px;
  -webkit-box-shadow: 0px 0px 4px 0px #000;
          box-shadow: 0px 0px 4px 0px #000;
}

.consultButton:hover {
color:#DB9828;
}



.tips.module, .testimonials.module {
border:1px solid #414854;
color:#03415f;
padding:0px 20px 0px;
width:248px;
}

.tipImg, .testImg {
border-bottom:1px solid #d8dadd;
margin:0px -20px 1em;
}

.tipImg img, .testImg img {
width:100%;
}

.rotator div {
display:block;
float:left;
width:248px;
}

#rotatorPaging {
margin:0px 86px 20px 86px; 

}

#rotatorPaging a {
-webkit-border-radius:3px;
border-radius: 3px;
background-color: #d8dadd;
width:15px;
height:15px;
margin-left:10px;
display:block;
float:left;
text-indent:-9999px;
overflow:hidden;
}


#rotatorPaging a.selected {
background-color:#44ade2;
}


.testName {
color:#44ade2;
font-size:1.1em;
line-height:1.25;
font-weight:500;
text-align:right;
margin-bottom:1.5em;
}

.homeCallout h2 a {
color:#44ade2;
padding:20px 0px 20px 0px;
text-decoration:none;
}

.homeCallout h2 span {
background-repeat:no-repeat;
background-position:left top;
display: -moz-inline-stack;
display:inline-block;
*display:inline;
height:50px;
letter-spacing:normal;
position:relative;
vertical-align:middle;
width:65px;
word-spacing:normal;
zoom:1;
text-indent: -100em;
overflow: hidden;
}

#HPService h2 span {
background-image:url(/img/icon_service_HP.jpg);
}

#HPTutorial h2 span {
background-image:url(/img/icon_tutorial_HP.jpg);
}

#HPTheatre h2 span {
background-image:url(/img/icon_theatre_HP.jpg);
}

.specialNote { /* no longer used */
color:#00405f;
font-size:0.75em;
font-weight:500;
margin-bottom:0px;
}

.serviceOfferings h2 {
margin-top:-15px;
position:absolute;
}

.main .serviceOfferings {
/* font-size:0.75em; */
font-size:0.9em;
}

.accordion {
letter-spacing:normal;
margin:0 10px 20px;
word-spacing:normal;
}

.accordion .itemToggle	{
background:#f1f2f2 url(/img/accordion_closed.gif) no-repeat 10px 50%;
font-weight:500;
cursor:pointer;
padding:5px 10px 5px 25px;
}

.accordion .active .itemToggle	{
background-image:url(/img/accordion_active.gif);
}

.accordion .itemToggle strong {
color:#44ade2;
}

.accordion .itemContainer	{
padding:15px 10px 0px;
}

.accordion .itemset	{
background-color:#fbfbfb;
-webkit-border-radius: 4px;
border-radius: 4px;
/* font-size:0.75em; */
font-size:0.9em;
margin-bottom:5px;
}

#pricelist ul {
display: -moz-inline-stack;
display:inline-block;
*display:inline;
letter-spacing:normal;
margin:0px 10px 0px 0px;
position:relative;
vertical-align:top;
width:260px;
word-spacing:normal;
zoom:1;
}

#pricelist .note {
color:#44ADE2;
display:block;
font-style:italic;
padding-left:15px;
text-indent:-18px;
margin-bottom:5px;
}

#contactSidebar.module {
border:1px solid #414854;
color:#03415f;
padding:0px 20px 0px;
width:248px;
}

.contactImg {
border-bottom:1px solid #d8dadd;
margin:0px -20px 1em;
}

.contactImg img, .testImg img {
width:100%;
}

#contactSidebar .contactInfo {
border-bottom:1px solid #d8dadd;
margin:0px -20px 1.5em;
padding:0px 20px 20px; 
}

#contactSidebar .contactInfo strong {
color: #004067
}

#contactSidebar .contactBio h2 {
color: #004067
}

#contactSidebar .contactBio h2 span {
color: #44ade2;
}


/* form styles */
button {
 width: auto; overflow: visible;
}
.field {
 margin-bottom: 20px
}
.label {
 float: left; width:140px; font-size: 0.875em; margin: 0px 5px;
}
.required label {
 font-weight: bold
}
.input {
 float: left; width: 440px; margin: 0px 5px;
}
.input INPUT[type="text"], .input INPUT[type="password"], .input TEXTAREA, .input SELECT {
 border: 1px solid #666; font-size: 12px; color: #444; padding: 3px 4px; width: 80%;
}
.input label {
 float: none; width: auto;
}
.twoCol .field {
 float: left; width: 300px;
}
.twoCol .input {
 width: 140px
}
.vertical .label, .vertical .input {
 float: none; width: 590px;
}
.vertical .label {
margin-bottom:10px;
}
.twoCol.vertical .label, .twoCol.vertical .input {
 float: none; width: 290px;
}
.checklist {
float:left;
font-size:0.875em;
padding:0px 0px 0px 20px;
}
.checkfield {
margin-bottom:10px;
}
#topicOther {
width:420px;
}

.formButton {
color: #FFF;
background: #00405F;
border: 5px solid #00405F;
font-size: 16px;
}

.error {
color: #F00;
}
