/* v1.0 | 20080212 */

html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, font, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td { margin: 0; padding: 0; border: 0; outline: 0; font-size: 100%; vertical-align: baseline; background: transparent; }
body        { line-height: 1.4; font-family:Verdana,"Bitstream Vera Sans",Arial,sans-serif; font-size:80%; margin:auto; width:auto  }
a           { color:#3f65e2; }
ol, ul      { list-style: none; }
p           { margin:5px 0 10px;}
.article p  { margin:1em 0;}

input, select, textarea { font-size:85%; font-family:"lucida grande",Verdana,"Bitstream Vera Sans",Arial,sans-serif; }
textarea { height:70px; vertical-align:top }

/* remember to define focus styles! */


table       { border-collapse: collapse; border-spacing: 0; }
table tbody td { vertical-align:top;}
fieldset    { border:solid 1px #CCC; padding:5px; margin-bottom:10px; -moz-border-radius:5px; -webkit-border-radius:5px; }
div.container { border:solid 1px #CCC; padding:10px; margin-top:10px; -moz-border-radius:10px; -webkit-border-radius:10px; }
div.container h1 { margin-top:0;}
legend      { padding: 0 5px; color: #666; font-weight:bold;}
div.inline_box { margin:10px 0;}
ul.indented ul { margin-left:10px;}

.expand        { width:10px; display:inline-block; color:#EEE; }
.expand a      { color:black; font-weight:bold; font-size:.9em; line-height:1em; text-decoration:none}

.framework h1 { margin-top:0px; }
h1          { font-size:1.6em; color: #666; margin:10px 0 }
h1.big      { font-size:2.2em; color:black; text-align:center; text-shadow:white 0px -1px 1px; margin-top:0; padding-top:20px;  }
h2          { font-size:1.4em; margin:8px 0 4px; }
h2.big      { font-size:1.4em; color:#28385f; text-align:center; text-shadow:white 0px -1px 1px; }
h3          { font-size:1.2em; margin:14px 0 3px; }
h3.big      { font-size:1.6em; color:#28385f; text-align:center; }
h4          { font-size:1.2em; font-weight:normal; margin:6px 0 2px; clear:both; }
h5          { font-weight:normal; margin:5px 0; }

#site                  { }
#logo a:focus          { outline:0; }
#logo                  { margin-left:0px; padding:8px 5px; display:inline-block; vertical-align:bottom; }
#header_wrapper        { padding:0px; background: #000 url('/images/header_bg.gif') repeat-x top;  }
#header                { position:relative; width:980px; margin:auto; }
#tagline               { color:white; font-size:.8em; display:inline-block; padding:11px 2px; vertical-align:bottom; }
#header form           { position:absolute; left:200px; top:62px; z-index:20;}
#navigation            { background: #254380 url('/images/navigation/bg.gif') repeat-x top; border-top: solid 1px #586883; text-align:right; font-family:arial  }
#navigation ul         { position:relative; margin:auto; width:980px; }
#navigation li         { display:inline-block; padding:4px 8px;  zoom:1; *display: inline; _height: 30px; }
#navigation li a       { display:block; padding:2px 12px; text-decoration:none; color:#DDD; border:1px solid transparent; color:#DDD; text-transform: uppercase; font-size:.9em; letter-spacing:1px; word-spacing:2px }
#navigation li a:hover { color:#FFF; border:1px solid #536fb4; -moz-border-radius:13px; -webkit-border-radius:13px; background-color:#335cad; }
#navigation li.home    { float:left; border:none; }

.big_nav #navigation { }
.big_nav #navigation li a { padding:9px 12px; }


#body_navigation { margin-top:10px; }
.body_navigation { margin-bottom:20px; border:solid 1px #AAA; -moz-border-radius:5px; -webkit-border-radius:5px; background-color:#EEE; }
.body_navigation li { border-top: solid 1px white; border-bottom:solid 1px #CCC; padding:3px 5px; font-weight:normal; margin:0;  }
.body_navigation li li { border:none; font-size:90%; padding:0px; margin: 3px 0 4px 10px; line-height:100%; background:none; }
.body_navigation li a { text-decoration:none; }
.body_navigation li a:hover { text-decoration:underline; }
.body_navigation li.indent { padding-left:10px;}

.body_navigation select { border:solid 1px #CCC; width:100%; -moz-border-radius:1px; -webkit-border-radius:1px; }

.body_navigation li a { color:black; text-shadow:white 1px 1px 1px; }
.body_navigation li img { vertical-align:text-bottom; margin-right:2px; }
.body_navigation h3 { font-size:100%; margin:0px; background-color:#FFF; padding:5px; border-bottom:solid 1px #888; -moz-border-radius-topleft:5px; -webkit-border-top-left-radius:5px; -moz-border-radius-topright:5px; -webkit-border-top-right-radius:5px; }
.body_navigation h3 a { text-decoration:none; }
.body_navigation h3 a:hover { text-decoration:underline; }
.body_navigation:last-child { -moz-border-radius-bottomleft:5px; -webkit-border-bottom-left-radius:5px; -moz-border-radius-bottomright:5px; -webkit-border-bottom-right-radius:5px; }

.body_navigation .current { background: transparent url('/images/icons/square.png') 98% center no-repeat }


#welcome          { position:absolute; top:0px; right:10px; font-size:.8em; padding:4px 10px 8px; line-height:40px; color:#AAA }
#welcome a        { margin: 5px; text-decoration:none; font-size:1.1em; color:#CCC; padding:3px 8px; border:1px solid transparent;  }
#welcome a:hover  { -moz-border-radius:11px; -webkit-border-radius:11px; background-color:#333; border:1px solid #555; color:#FFF;}
#welcome .select_navigation        { display:inline }
#welcome .select_navigation select { border:1px solid #444; height:16px;}
.knockout #body              { position:relative; width:auto; padding-bottom:40px; }
.knockout #site              { background-color:#8aa8d0;}
#body              { width:980px; margin:auto; min-height:320px; }
#body .display     { background: #FFF url('/images/display_gradient.png') repeat-x top }
#body .display_content, #body .content     { width:980px; margin:auto;}
#body              { background-color:white }
.knockout #footer_wrapper   { background-color: #222; background-image: -webkit-gradient(linear, left top, left bottom, from(#111), to(#222)); background-image: -moz-linear-gradient(top, #111, #222); color:#AAA; border-top:4px solid #555; }
.knockout #footer_wrapper a { color: #8ab4d0; }
.knockout #footer { border-top:none }
#footer_wrapper    { font-size:12px; padding:30px 0; clear:both }
#footer a          { text-decoration:none;}
#footer a:hover    { text-decoration:underline;}
#footer            { width:980px; margin:auto; padding:10px; border-top:1px solid #AAA; }
#footer .AuthorizeNetSeal { margin:auto;}
#breadcrumbs { font-family:arial; font-size:.95em; border-bottom:solid 1px #EEE; padding:3px; margin-bottom:0px; padding-top:6px; }
#breadcrumbs li { display:inline; padding:2px;}
#breadcrumbs li.sep { color:#AAA;}
#promo      { position:relative; background:#223f62 url('/images/promo/contractor.gif') no-repeat right center; height:150px ; -moz-border-radius:10px; -webkit-border-radius:10px; padding:20px; color:white; margin:10px 0;}
#promo h3   { color:#F90;}
#promo_signup { position:absolute; bottom:20px; left:236px;}
.pagination { margin:10px 0;}

#search_form {  }
#search_form form { text-align:left; display:inline-block; }

span.count  { color:#888;}
span.hint { font-size:.9em; color:#888 }
a.hint    { font-size:.9em; color:#888 }
.body_navigation .hint { float:right }

.knockout .alert { margin:10px auto; width:980px; }
.alert                  { border:solid 1px #8D8; background-color:#EEF1EE; color:green; margin:10px auto; padding:7px; -moz-border-radius:7px; -webkit-border-radius:7px; position:relative; width:960px; }
.errorExplanation       { border:solid 1px #C00; background-color:#F1EEEE; color:#C00; margin:10px 0px; padding:7px; -moz-border-radius:7px; -webkit-border-radius:7px; position:relative; }

.errorExplanation h2 { margin:0; font-size:110%;}
.alert .clickable               { border:solid 1px #AAAFAA; background-color:white; padding:2px 8px; font-size:.7em; text-align:center; -moz-border-radius:7px; -webkit-border-radius:7px; border-bottom-color:#666; border-right-color:#666; position:absolute; right:7px; top:7px; cursor:pointer; }

.fieldWithErrors {display:inline; }
.fieldWithErrors label { color:#C00 }

label { display: inline-block; width: 90px; overflow:visible; white-space:nowrap; text-align:right; }
.indent { padding-left:93px; }
form label.block { display:inline;}
form a           { text-decoration:none }
form a:hover     { text-decoration:underline }
.lightbox        { border:solid 2px black; padding:10px; background-color:white; width:220px; position:absolute; top:50%; right:50%;  -moz-border-radius:7px; -webkit-border-radius:7px; }

form input.primary     {
                          -moz-border-radius:10px;
                          -webkit-border-radius:10px;
                          background-color:#EFEFEF;
                          cursor:pointer;
                          border:1px solid #999;
                          border-bottom-color:#444;
                          border-right-color:#444;
                          font-weight:bold;
                          font-family:arial;
                          font-size:1.2em;
                          padding:5px 14px; 
                        }

form .separate { margin-top:20px }
.separate { margin-top:40px }
ul.separate { margin-top:8px;}
.padded   { padding:10px }
.clear    { clear:both }

ul.buttons li { display:inline-block; margin: 0 20px; font-family:'Helvetica Neue',Helvetica,Arial,sans-serif; vertical-align:middle; zoom:1; *display: inline; _height: 30px; }
ul.buttons li a { text-shadow:black 0px -1px 1px; background: #6d6d8f url('/images/buttons/green_bg.gif') top repeat-x ; border:1px solid #444; -moz-border-radius:18px; -webkit-border-radius:18px; display:block ; padding: 12px 24px; text-decoration:none; color:white; text-align:center; }
ul.buttons li.main a { background-color: red; padding:3px 24px; background: #9a0000 url('/images/buttons/red_bg.gif') top repeat-x; }
ul.buttons li strong { font-weight:600; font-size:1.2em; }

ul.display_options { padding:3px 5px; text-align:right; }
ul.display_options a { text-decoration:none;}
ul.display_options a:hover { text-decoration:underline;}
ul.display_options li { display:inline; margin-left:10px; line-height:14px; }
ul.display_options li img { vertical-align:top;}

ul.clean { margin:20px }
ul.clean li { display:inline-block; vertical-align:top; border:1px solid #AAA; text-align:center; line-height:.98em; padding:2px 2px; background-color:#EEE; -moz-border-radius:5px; -webkit-border-radius:5px;}
ul.clean li a { text-decoration:none; display:table-cell; width: 85px; height:60px; vertical-align:middle; padding:0 3px;   }
ul.clean li:hover { background-color:white; }
ul.clean li.current { background-color:white; border-color:#c2665b; }
ul.clean li.current a { color:#444; font-weight:bold; }

.tour_buttons   { margin-top:20px; clear:both; }

ul.high_points li
{
  -moz-border-radius:7px; -webkit-border-radius:7px;
  padding:5px;
  border:3px solid #EEE;
  vertical-align:top;
  font-size:1.2em;
  background-repeat: no-repeat;
  background-position: .4em .6em;
  padding-left: 3.2em;
  text-align:left;
  margin-bottom:20px;
}

ul.high_points li.hardhat { background-image: url(/images/home/hardhat_icon.png); }
ul.high_points li.time { background-image: url(/images/home/time_icon.png); }
ul.high_points li.document { background-image: url(/images/home/document_icon.png); }
ul.high_points li.computer { background-image: url(/images/home/computer_icon.png); }

ul.high_points h3 { margin-top:0;}

.partners { margin:0px; text-align:center; padding-bottom:1px; text-align:left;  }
.partners li { display:inline-block; width:22%; padding:10px; margin:15px 7px; vertical-align:middle; }
.partners li.list { display:block; width:auto; padding:10px; margin:10px 7px }
.partners li img { vertical-align:middle;}
.partners h3 { color:#28385f; border-bottom:1px solid #DDD;  }

.industries { -moz-border-radius:7px; -webkit-border-radius:7px; margin:0px; text-align:left; padding-bottom:1px; padding-bottom:20px;  }
.industries li { display:inline-block; width:190px; vertical-align:top; font-size:.85em; text-align:left; zoom:1; *display: inline; _height: 10px;}
.industries h3 { color:#28385f; border-bottom:1px solid #DDD;  }
.industries h4 { text-align:left; margin-top:15px;}

.testimonial { background-color:white; -moz-border-radius:7px; -webkit-border-radius:7px; padding:17px 22px; margin:20px 28px; text-align:left; border:1px solid #DDD }
.testimonial h3 { color:#28385f; padding:5px; margin:0 0 10px; }
.testimonial p  { font-style:italic;}

table.framework  { clear:both; width:100%; table-layout:fixed; border-collapse:collapse; }
.thin { width:38.2%;}
.wide { width:61.8%;}
.left { padding-right:10px;}
.center { padding-right:10px; padding-left:10px;}
.right { padding-left:10px;}
.centered { text-align: center}


table.framework .gutter_left { width:180px; padding-right:20px }
.safari table.framework .gutter_left { width:200px }
table.framework .gutter_right { width:220px; padding-left:20px }
.safari table.framework .gutter_right { width:240px; }

.remove a { color:#B2160b; }

table.framework .filters { background-color:#EEE; padding:10px;}

.filter { margin-bottom:10px;}
.filter h3 { font-size:.9em; }
.filter ul { border:1px solid #DDD; font-size:.8em; background-color:white; padding:5px; }
.filter ul.scroll { overflow-x:hidden; height:25em; }
.filter li { overflow:hidden; white-space:nowrap; }
.filter li a { text-decoration:none;}
.filter li a:hover { text-decoration:underline;}

ul.fancy    { list-style-image: url('/images/tour/bullet.png'); margin:10px 0 20px; }
ul.fancy li { margin-left:20px;}
ul.fancy li a { text-decoration:none }
ul.fancy li a:hover { text-decoration:underline }
ul.fancy li.current { font-weight:bold }
ul.fancy li.header { list-style-image:none; font-size:1.2em; font-weight:bold; }
ul.fancy h2 { font-size:1em;}

ul.tight { margin:10px 0 20px; font-weight:bold; }
ul.tight a { text-decoration:none }
ul.tight a:hover { text-decoration:underline }
ul.tight li { font-size:.9em; font-weight:normal; }


ol.fancy    { list-style-type: lower-alpha }
ol.fancy li { margin-left:20px;}

.delimited_list li { display: inline }

.list       { margin-top:10px; clear:both; }
.list h3    { clear:none ;}
.list .photo      { display:inline-block; padding:10px; width:90px; margin-bottom:10px; }
.inline           { float:left; margin-right:10px; margin-bottom:10px; }
.article .photo   { float:right; margin-left:20px; margin-bottom:20px; border:solid 1px #AAA; padding:10px; text-align:center }
hr                { border:0; background-color:#EEE; height:1px; clear:both; }
.photo            { text-align:center; border:solid 2px #EEE; font-size:.8em; padding:10px; -moz-border-radius:5px; -webkit-border-radius:5px;  }
.photo, .photo a  { text-decoration:none; color:#444; line-height:1.8em; }
.photo img        { }

.spreadsheet { width:100%; line-height:1.1em }
.spreadsheet thead th { color: #333; border-bottom:3px double #DDD; font-family:arial; font-size:1.1em; border-top:3px double #DDD; padding:5px; background-color:white;  }
.spreadsheet thead th a { text-decoration:none; }
.spreadsheet thead th.header { font-size:1.2em }
.spreadsheet thead .title { background-color:black; color:white;}
.spreadsheet th { text-align:left; padding:4px 5px; }
.spreadsheet td { text-align:left; padding:2px 5px; font-size:.9em }
.spreadsheet ul li { white-space:nowrap; overflow:hidden; }


h1 .page_actions { margin-top:10px }
.page_actions { display:inline-block; font-size:12px; font-weight:normal; margin-left:30px; vertical-align:middle; padding-bottom:4px; float:right;  }
.page_actions a { border:solid 1px black; background-color:#444; -moz-border-radius:3px; -webkit-border-radius:3px; padding:1px 6px; text-decoration:none; margin-left:5px; color:#EEE; text-shadow:black -1px -1px 2px; }

.details .page_actions a { font-size:85%; float:right; text-decoration:none; color:#666; text-shadow:none; background-color:white; border-color:#AAA; }

.details_actions  { float:right; text-align:right; }
.details_actions a { border:solid 1px #AAA; border-bottom-color:#888; border-right-color:#888; background-color:white; -moz-border-radius:3px; -webkit-border-radius:3px; padding:1px 6px; text-decoration:none; color:#444; line-height:25px; }

.tabs                { border-bottom:solid 1px #AAA; margin-bottom:10px; padding:1px; font-size:.9em; }
.tabs li             { border: solid 1px #AAA; background-color:white; display:inline; padding: 2px 10px; -moz-border-radius-topright:4px; -moz-border-radius-topleft:4px; -webkit-border-top-right-radius:4px; -webkit-border-top-left-radius:4px; margin-left:4px; }
.tabs li.selected    { border-bottom:solid 1px white; }
.tabs li a           { text-decoration:none; }
.tabs li a:hover           { text-decoration:underline; }

.header              { border-bottom:solid 1px #EEE; }

form .header         { border-bottom:1px solid #CCC; padding:1px 10px; color:#a90808;}
td.header            {  font-weight:bold; font-size:1.2em; padding:7px 0 3px; clear:both; }
.section_actions    { font-size:75%; float:right; display:inline-block; margin-top: 4px;  }
.section_actions a  { text-decoration:none; margin-left:10px; }

.details         { background-color:#e4e4da; border:solid 1px #a4a59d; -moz-border-radius:6px; -webkit-border-radius:6px;  }
.callout         { background-color:#c9dae3; border:1px solid #7bacc8; }
.callout a       { color:#1d5992 ;}

.cork            { background: #c0a26f url(/images/home/cork.gif); border:solid 2px #836c46;}
.details .details { background-color:white; }
.details_image   { width:79px; text-align:center; }
.details_image .photo { padding:10px; border:solid 1px #AAA; background-color:white;}
.details_image .photo img { border:0;}
.details_image,
.details_info   { padding:10px }
.details_info p   { margin-top:0; }
.details .header  { -moz-border-radius-topleft:6px; -moz-border-radius-topright:6px; -webkit-border-top-left-radius:6px; -webkit-border-top-right-radius:6px; background:white; margin-top: 0; padding:6px 10px;border-bottom:solid 1px #CCC; }

.details form label { display:block; font-size:.8em; width:auto; text-align:left;}
.details form p.indent { padding-left:0px}
.details form .hint  { display:block; }
.details form .header { background:none; padding:0; border:none; }

.row_b { background-color:#F2F2F2; }
.row_b td, .row_a td { border-top:solid 1px #D6D6D6;}


fieldset legend a { border:solid 1px #AAA; font-weight:normal; border-right-color:#888; border-bottom-color:#888; line-height:14px; display:inline-block; font-size:11px; height: 14px; padding:0 3px; background-color:#EEF; text-decoration:none; vertical-align:text-top; margin-left:5px }
fieldset legend a.plus { line-height:13px; font-weight:bold; }
fieldset .view_all a    { font-size:85%; float:right; margin-top:-8px; text-decoration:none; color:#AAA; }
fieldset .view_all a:hover { color:#3f65e2; text-decoration:underline;}
fieldset li.file img { vertical-align:text-bottom;}


.pagination { clear:both;  padding: 3px;  margin: 30px 3px;  text-align:center; }
.pagination a {  padding: 2px 5px 2px 5px;  margin: 2px;  border: 1px solid #aaaadd;  text-decoration: none;  color: #3f65e2;}
.pagination a:hover, .pagination a:active {  border: 1px solid #3f65e2;  color: #000; }
.pagination span.current {  padding: 2px 5px 2px 5px;  margin: 2px;  border: 1px solid #3f65e2;  font-weight: bold;  background-color: #3f65e2;  color: #FFF; }
.pagination span.disabled {  padding: 2px 5px 2px 5px; margin: 2px;  border: 1px solid #eee;  color: #ddd; }