* { margin:0; padding:0; }
body { background:#9BABC1 url(/images/bg.gif) repeat-x left top; font:normal 82% arial, helvetica, verdana, tahoma, sans-serif; text-align:center; }

img { border:none; }
* html img { behavior: url(/shared_includes/javascript/behavior/png_fix.htc); }

select option { padding-right:12px; }

.center { text-align:center; }
.left { text-align:left; }
.right { text-align:right; }
.clear { height:1px; clear:both; }
.cleaner { clear:both; }
.float-left { float:left; padding:10px; }
.float-right { float:right; padding:10px; }
.block-left { float:left; width:400px; margin-bottom:20px; }
.block-right { float:right; width:400px; margin-bottom:20px; }
.icon { vertical-align:bottom; }

/* Typography
-------------------------------------------------------------- */
textarea,input { font:100% arial, helvetica, verdana, tahoma, sans-serif; }

#content-text h1,#content-text h2,#content-text h3,#content-text h4,#content-text h5,#content-text h6 { color:#3F4F6B; padding:5px 0; }
#content-text h1 { border-bottom:1px solid #C2CCD8; margin:0 0 5px; padding:0 0 5px; }
#content-text h3.alt { border-bottom:1px solid #C2CCD8; margin:0pt 0pt 3px; padding:0pt 0pt 1px; }
#content-text p { color:#3F4F6B; padding-bottom:15px; line-height:150%; }
#content-text p.note { padding-bottom:0; }
#content-text li { color:#3F4F6B; margin:0 0 5px 15px; }
#content-text ul { color:#3F4F6B; margin:0 0 15px 15px; }

h1 { font-size:1.6em; }
h2 { font-size:1.4em; }
h3,h4 { font-size:1.2em; }
h5,h6 { font-size:1.1em; }

a,a:link,a:visited,a:active { color:#4169B1; text-decoration:underline; }
a:hover,#footer a:hover { text-decoration:none; }


/* Navigation
-------------------------------------------------------------- */
#navigation { list-style:none; float:left; position:absolute; top:140px; left:0; width:901px; margin:0; padding:0; }
#navigation li { float:left; margin-right:2px; display:inline; } 
#navigation li.signup { float:left; margin-right:0; display:inline; }
#navigation li a { float:left; position:relative; display:block; height:44px; overflow:hidden; text-decoration:none; }
.home a:hover,.about a:hover,.programs a:hover,.how a:hover,.what a:hover,.contact a:hover,.signup a:hover { background-position:0 -44px; }
.home a:active,.about a:active,.programs a:active,.what a:active,.how a:active,.contact a:active,.signup a:active { background-position:0 -88px; }
.home a { display:block; float:left; width:103px; height:44px; background:url(/images/home-nav.jpg) top left no-repeat; }
.about a { display:block; width:105px; height:44px; background:url(/images/about-nav.jpg) top left no-repeat; }
.programs a { display:block; width:127px; height:44px; background:url(/images/programs-nav.jpg) top left no-repeat; }
.how a { display:block; width:160px; height:44px; background:url(/images/how-it-works-nav.jpg) top left no-repeat; }
.what a { display:block; width:155px; height:44px; background:url(/images/what-to-ask-nav.jpg) top left no-repeat; }
.contact a { display:block; width:121px; height:44px; background:url(/images/contact-us-nav.jpg) top left no-repeat; }
.signup a { display:block; width:118px; height:44px; background:url(/images/signup-nav.jpg) top left no-repeat; }
.home a span,.about a span,.programs a span,.how a span,.what a span,.contact a span,.signup a span,#sidebar h3.employees a span,#sidebar h3.yourself a span,#sidebar h3.cards a span { visibility:hidden; }

#sidebar { width:315px; float:left; padding-top:0; }
#sidebar h3 { width:274px; height:174px; position:relative; display:block; text-align:center; text-decoration:none; overflow:hidden; margin:0 0 5px 30px; }
#sidebar h3 a { width:274px; height:174px; position:relative; display:block; text-decoration:none; overflow:hidden; }
#sidebar h4 { width:274px; height:185px; position:relative; display:block; text-align:center; text-decoration:none; overflow:hidden; margin:0 0 5px 30px; }
#sidebar h5 { width:274px; height:185px; position:relative; display:block; text-align:center; text-decoration:none; overflow:hidden; margin:30px 0 5px 30px; }
#sidebar h3.employees a { width:274px; height:174px; position:absolute; display:block; top:0; left:0; background:url(/images/for_your_employees.jpg) top left no-repeat; overflow:hidden; }
#sidebar h3.yourself a { width:274px; height:174px; position:absolute; display:block; top:0; left:0; background:url(/images/for_yourself.jpg) top left no-repeat; overflow:hidden; }
#sidebar h3.cards a { width:274px; height:174px; position:absolute; display:block; top:0; left:0; background:url(/images/card_gallery.jpg) top left no-repeat; overflow:hidden; }
#sidebar h3.employees a:hover,#sidebar h3.yourself a:hover,#sidebar h3.cards a:hover { background-position:0 -174px; }


/* Layout
-------------------------------------------------------------- */
#accessibility,hr { display:none; margin-top:-9999px; }
#wrapper { width:941px; text-align:left; margin:0 auto; padding:0; }
#left-shadow { width:20px; height:860px; float:left; background:url(/images/left.jpg) top right no-repeat #9BABC1; }
#right-shadow { width:20px; height:860px; float:right; background:url(/images/right.jpg) top right no-repeat #9BABC1; }
#inner-wrapper { width:901px; float:left; display:inline; background:url(/images/cont_bg.jpg) top repeat-x #ADBACC; }
#branding { width:901px; height:185px; overflow:hidden; background:url(/images/branding.jpg) top left no-repeat; position:relative; }
#branding h1 { position:relative; width:335px; height:135px; font-size:1em; float:left; margin-left:15px; overflow:hidden; display:inline; }
#branding h1 a,#branding h1 a span { display:block; position:relative; width:335px; height:135px; text-decoration:none; }
#home #branding h1 a span { position:absolute; width:335px; height:135px; top:0; left:0; background:url(/images/maestro-logo.jpg) no-repeat top left; cursor:pointer; }
#branding h2 { clear:right; position:relative; width:439px; height:65px; font-size:1em; float:right; overflow:hidden; display:inline; margin:2px 38px 0 0; }
#branding h2 span { display:block; position:relative; width:439px; height:65px; text-decoration:none; }
#home #branding h2 span { position:absolute; width:439px; height:65px; top:0; left:0; background:url(/images/orchestrate_no_number.jpg) no-repeat top left; }
#login { color:#3F4F6B; text-align:right; float:right; font-size:1em; height:55px; overflow:hidden; margin:10px 25px 0 0; }
#login p { margin-bottom:8px; }

#content { padding-top:20px; background:url(/images/content-bg.jpg) top left no-repeat; min-height:650px; }
#content-large { padding-top:20px; min-height:650px; }
#main-content { width:586px; float:right; text-align:left; height:500px; }
#main-content-large { width:906px; float:right; text-align:left; height:500px; }
html>body #main-content,html>body #main-content-large { min-height:500px; height:auto; }
*html #main-content-large { width:900px; float:right; text-align:left; height:500px; }
#main-content p#home-notice { width:550px; height:172px; position:relative; display:block; text-align:right; text-decoration:none; overflow:hidden; color:#020366; margin:0 0 5px 33px; }
#main-content p#home-notice span { width:550px; height:172px; position:absolute; display:block; top:0; left:0; background:#fff url(/images/amanda.jpg) top left no-repeat; }
#content-wrapper { background:#EAEDF2 url(/images/content-wrapper.jpg) no-repeat left top; margin-left:36px; width:497px; padding:25px 15px 0; }
#content-wrapper-no-header { background:#EAEDF2 url(/images/content-wrapper-no-header.jpg) no-repeat left top; margin-left:36px; width:497px; padding:15px 15px 0; }
#content-large-wrapper { background:#EAEDF2 url(/images/content-large-wrapper.jpg) no-repeat left top; margin-left:33px; width:817px; padding:15px 15px 0; }
#content-wrapper-no-header2 { background:#EAEDF2 url(/images/content-wrapper-no-header2.jpg) no-repeat left top; margin-left:36px; width:497px; padding:25px 15px 0; }
#content-text { width:497px; font-size:100%; } 
#content-text.wide { width:817px; }
#content-wrapper-bottom { background:url(/images/wrapper-bottom.gif) no-repeat left top; height:11px; margin-left:36px; width:527px; }
#content-large-wrapper-bottom { background:url(/images/wrapper-bottom-large.gif) no-repeat left top; height:11px; margin-left:33px; width:847px; }
:first-child+html #content-large-wrapper,* html #content-large-wrapper { background:#EAEDF2 url(/images/content-large-wrapper.jpg) no-repeat left top; margin-left:27px; width:817px; padding:15px 15px 0; }
:first-child+html #content-large-wrapper-bottom,* html #content-large-wrapper-bottom { background:url(/images/wrapper-bottom-large.gif) no-repeat left top; height:11px; margin-left:27px; width:847px; }

#breadcrumb { font-size:90%; margin:0 0 10px 40px; }

#footer { color:#3F4F6B; margin:0 auto 15px; padding:5px; }
#footer p { clear: left; padding:10px 0 0 25px; }
#footer a,#footer a a:link,#footer a a:visited { text-decoration:underline; }
#footer a:active { text-decoration:none; color:#999; }
#footer ul { float: left; list-style-type: none; margin: 20px 0; text-align: left; }
#footer ul li { line-height: 1.6em; }
#footer ul.column1 { padding-left: 25px; width: 320px; }
#footer ul.column2 { width: 330px; }
#footer ul.column3 { width: 170px; }
#footer .promo { float: right; display: block; margin: 0 10px 10px; }
#footer .promo img { float: right; }
#footer .promo p { clear: right; text-align: right; font-size: 80%; }


/* Rounded corner box
-------------------------------------------------------------- */
#round { text-align:center; }
.round { display:block; }
.round * { display:block; height:1px; overflow:hidden; font-size:.01em; background:#CCD6E4; }
.round1 { margin-left:3px; margin-right:3px; padding-left:1px; padding-right:1px; border-left:1px solid #dde3eb; border-right:1px solid #dde3eb; background:#d3dbe7; }
.round2 { margin-left:1px; margin-right:1px; padding-right:1px; padding-left:1px; border-left:1px solid #e7eaf0; border-right:1px solid #e7eaf0; background:#d1dae6; }
.round3 { margin-left:1px; margin-right:1px; border-left:1px solid #d1dae6; border-right:1px solid #d1dae6; }
.round4 { border-left:1px solid #dde3eb; border-right:1px solid #dde3eb; }
.round5 { border-left:1px solid #d3dbe7; border-right:1px solid #d3dbe7; }
.roundfg { background:#CCD6E4; }
.roundfg p { padding:10px !important; }

.roundfg .iconlist { margin-left:10px !important; }
.what-to-ask .roundfg  { padding:10px; }
.what-to-ask .roundfg p { padding:0 !important; }
p.more-questions { font-size: 90%;margin-top:10px; }

/* Blockquote
-------------------------------------------------------------- */
blockquote { padding:10px; background-image:url(/images/quote-open.png); background-position:top left; background-repeat:no-repeat; text-indent:23px; }
blockquote span { color:#3F4F6B; line-height:150%; display:block; background-image:url(/images/quote-close.png); background-repeat:no-repeat; background-position:bottom right; }


/* Pricing table
-------------------------------------------------------------- */
table#pricing { width:80%; border-collapse:collapse; margin:0 auto; }
table#pricing a:hover { background-color:transparent; }
table#pricing thead tr th { background:#B2BFD0; text-align:left; font-weight:400; padding:10px 0 10px 10px; }
table#pricing tbody tr td { text-align:center; border:1px solid #EEE; color:#000; padding:10px 0; }
table#pricing tbody tr td.minutes { width:115px; text-align:center; font-weight:700; background:#B2BFD0; }
table#pricing tbody tr td.price { text-align:center; font-weight:700; background:#CCD6E0; }
table#pricing tbody tr td.cent { text-align:center; background:#DBE2EA; }


/* Silk icons
-------------------------------------------------------------- */
ul.iconlist { margin:0pt !important; padding:0pt !important; }
ul.iconlist li { display:block; line-height:1.6em; list-style-type:none; margin:0px !important; }
.icon-telephone { background-image:url(/shared_includes/images/icons/silk/telephone.png); }
.icon-email { background-image:url(/shared_includes/images/icons/silk/email.png); }
.icon-world { background-image:url(/shared_includes/images/icons/silk/world.png); }
.icon-page_white_acrobat { background-image:url(/shared_includes/images/icons/silk/page_white_acrobat.png); }
.icon-page_white_powerpoint { background-image:url(/shared_includes/images/icons/silk/page_white_powerpoint.png); }
.icon-car { background-image:url(/shared_includes/images/icons/silk/car.png); }
.icon-house { background-image:url(/shared_includes/images/icons/silk/house.png); }
.icon-telephone, .icon-email, .icon-world, .icon-page_white_acrobat, .icon-car, .icon-house, .icon-page_white_powerpoint { background-position:0pt 70%; background-repeat:no-repeat; font-weight:700; padding:1px 0pt 0pt 24px; position:relative; }


/* Forms
-------------------------------------------------------------- */
.contain_floats:after { clear:both; display:block; height:0; visibility:hidden; content:'.'; }
.contain_floats { display:block;}
form.main { padding:21px 0 0 14px; }
form.main dl { clear:both; width:100%; }
form.main dl:after { clear:both; display:block; height:0; visibility:hidden; content:'.'; }
form.main dt { float:left; position:relative; width:30%; min-height:1px; padding-right:20px; text-align:right; font-weight:bold; line-height:22px; }
*:first-child+html form.main dt { height:1px; }
* html form.main dt { height:1px; }
form.main dd { float:left; width:60%; padding-bottom:3px; }
form.main dt { color:#3F4F6B; }
form.main dt em { position:absolute; right:8px; font-size:100%; font-style:normal; color:#C00; }
form.main input { padding:2px; }
form.main textarea { padding:2px; width:270px; height:70px; }
form.main input.error, form.main textarea.error, form.main select.error { background-color:#FEF; border-color:#C00; }
form span.input_error { display:none; margin:0 0 10px 0; color:#f00; }
form.main input { width:200px; }
form.main input.checkbox, form.main input.radio, form.main input.button, form.main input.submit, form.main input.reset, form.main input.file { width:auto; }
form.main p { margin:0; }
form.main p.lb, form.main p.hr { margin:.25em 0pt; }
form.main p.note { margin:0 0 10px 32%; font-size:90%; }
form.main dl p.note { margin-left:0; }
form.main span.checkbox_wrapper { margin-right:15px; }
form.main span.radio_wrapper { display:block; margin-bottom:10px; }

div.message { background:#FFF none repeat scroll 0; border:1px solid #B8D3E5; padding:.5em; margin:5px 0 15px; }
div.message ul { margin: 5px 0px 0px 20px; }
div.message ul li { line-height:1.3em; }
div.success { background-color:#ECFBEC; color:#3A3; border-color:#C7F2C8; }
div.error, div.warning { color:#C52020; background:#FCC none repeat scroll 0; border:1px solid #D77; }


/* Page styles
-------------------------------------------------------------- */
#carriers,#vip-cards { padding:10px; }
#custom-cards img { padding:5px; }
.what-to-ask .right { margin-top:10px !important; }
.what-to-ask .outer { margin:0 auto; height:220px; }
.what-to-ask .outer2 { margin:0 auto; height:255px; }
.what-to-ask .inner { height:135px; }
.what-to-ask .inner2 { height:175px; }
.what-to-ask img { float:right; padding:0 5px; margin-top:-30px; }
.links { float:left; margin:0pt; width:235px; }
.links ul { margin-top:13px !important; }
#address_city { width:135px; } 
#pin { width:40px; }
.lytebox { background:url('/images/lytebox-bg.png'); }
#lytebox { padding:1em; text-align:left; }
#lytebox .lb { border-bottom:1px solid #C2CCD8; margin:-10px 0 15px 0; }
#lytebox h4 { font-size:1.2em; margin:0 0 3px 0; color:#3F4F6B; border-bottom:1px solid #C2CCD8; }
#lytebox p { color:#3F4F6B; line-height:150%; padding-bottom:15px; }



div.form { 
    position:relative; 
    padding: 21px 0 0 14px; 
}
div.form dl { display: block; position:relative; }
div.form dl:after { clear:both; display:block; height:0; visibility:hidden; content:'.'; }

div.form dt
{
  clear:left;
  float: left;
  position: relative;
  width: 30%;
  min-height: 1px;
  line-height: 22px;
  text-align: right;
  font-weight: bold;
  font-size: 12px;
  padding: 0 12px 0 0;
}
/* holly hack */
* html div.form dt { height: 1%; }
*:first-child+html div.form dt { height: 1%; }

div.form dd
{
  float: left;
  width: 60%;
  margin: 0 0 3px;
  line-height: 22px;
}

div.form input { padding: 2px; }
div.form textarea { padding: 2px; width: 270px; height: 70px; }

div.form ul.errors, div.form ul.errors li { list-style-type:none; margin:0; padding:0; color:red; }

div.form input.error, div.form textarea.error, div.form select.error { background-color: #FEF; border-color: #C00; }

div.form input[type="text"], div.form input[type="password"] { width: 200px; }
div.form input.phone_number { width:120px; }
div.form input.phone_number_ext { width:50px; }
div.form input.address_city { width:120px; }
div.form input.address_zip { width:40px; }

div.form label span.required, div.form dt em /* em only here to support existing sites */
{
    position: absolute;
    font-size: 100%;
    font-style: normal;
    color: #C00;
    margin-left: 2px;
}
/* align asterisk at top */
* html div.form label span.required { margin:-4px 0 0 1px; }
*:first-child+html div.form label span.required { margin:-4px 0 0 1px; }
div.form p.hint { }

div.form span.checkbox_wrapper { margin-right: 15px; }
div.form span.radio_wrapper { display: block; margin-bottom: 10px; }

div.spacer {
    clear:both; 
    margin:1em 0 0; 
    width:1px;
}
* html div.spacer { margin:0; }
*:first-child+html div.spacer { margin:0; }


div.form input.max_length_1 { width:1em; }                   /* max length classes for text inputs. Not 100% sure I like this idea, but trying it out */
div.form input.max_length_2 { width:2em; }
div.form input.max_length_3 { width:3em; }
div.form input.max_length_4 { width:4em; }
div.form input.max_length_5 { width:5em; }
div.form input.max_length_6 { width:6em; }
div.form input.max_length_7 { width:7em; }
div.form input.max_length_8 { width:8em; }
div.form input.max_length_9 { width:9em; }
div.form input.max_length_10{ width:10em; }

