/*
 * Project:   Caon Services
 * Date:      2010/04/22
/* ---------------------------------------- */

* { margin: 0; padding: 0; }

html { min-height: 100%; margin: 0 0 1px; font-size: 100.01%; }
body { padding: 0 0 20px; background: #fff; font-size: 62.5%; }

* html body { behavior: url("styles/csshover.htc"); }

@media only screen and (max-device-width: 480px) { html { -webkit-text-size-adjust: none; } }

body, textarea, input, select, option, button { color: #6f7c89; font-family: "Helvetica Neue",Helvetica,Arial,sans-serif; line-height: 1.66; }
li, dt, dd, p, th, td, caption, pre { font-size: 1.2em; }
ul, ol, dl, p, table, pre, h1, h2, h3, h4, h5, h6 { margin-bottom: 20px; }

a { color: #6f7c89; text-decoration: underline; }
a:hover, a:focus, a:active { color: #333; text-decoration: underline; }

ul, ol, dd, blockquote { padding-left: 40px; }
ul ul, ol ol, ul ol, ol ul { margin-bottom: 0; }
li *, li p, li li, dt *, dd *, p *, th *, td * { font-size: 1em; }

img { border: none; -ms-interpolation-mode: bicubic; }
pre { font-family: "Courier New",monospace; white-space: pre-wrap; }
table { border-collapse: collapse; border-spacing: 0; }
button { overflow: visible; padding: 0 10px; cursor: pointer; } button::-moz-focus-inner { padding: 0; border: none; }

hr { overflow: hidden; height: 1px; margin: 15px 0 !important; margin: -5px 0 8px; padding: 0; border: none; background-color: #ccc; color: #ccc; }
*:first-child+html hr { margin: -7px 0 8px !important; }

.offset { position: absolute !important; left: -10001px !important; overflow: hidden !important; }

/* LAYOUT
------------------------------------------- */

#root { margin: 0 auto; }
 #top { background: url(../images/top-bg.png) repeat-x; }
  #top div.inner { position: relative; width: 930px; margin: 0 auto; padding: 110px 0 0; }
   #logo { position: absolute; left: 0; top: 20px; }
    #logo a { display: block; overflow: hidden; width: 137px; height: 73px; background: url(../images/logo-a.png) no-repeat; font-size: 0; text-indent: -10001px; }
    * html #logo a { background-image: url(../images/logo-a-ie.png); }
   #skip-links { position: absolute; top: 0; left: -10001px; list-style: none; margin: 0; padding: 0; }
    #skip-links li a:focus, #skip-links li a:active { display: block; position: absolute; left: 10001px; top: 0; z-index: 10001; width: 200px; margin: 15px 0 0 15px; padding: 2px 0; background: #333; color: #fff; text-align: center; text-decoration: none; }
  #card { position: absolute; right: 0; top: 33px; color: #fff; }
   #card p { margin: 0; font-size: 1.1em; text-transform: uppercase; font-weight: bold; text-align: right; line-height: 1.2; }
   #card p.fn { margin: 0 0 2px; font-weight: bold; }
    #card p a { color: #fff; text-decoration: none; }
  #nav { position: relative; z-index: 25; list-style: none; height: 45px; margin: 0; padding: 0; background: url(../images/nav-bg.png) no-repeat; }
   #nav li { position: relative; float: left; margin: 0 0 0 2px; font-size: 1em; }
   #nav li.home { margin: 0; }
    #nav li a.a { overflow: hidden; float: left; height: 45px; background: url(../images/nav-bg.png) no-repeat; text-indent: -10001px; }
    #nav li.home a.a { width: 118px; background-position: 0px 0; } #nav li.home a.a:hover, #nav li.home a.a:focus, #nav li.home a.a:active { background-position: 0px -45px; } #nav li.home a.active { background-position: 0px -90px !important; }
    #nav li.about a.a { width: 118px; background-position: -120px 0; } #nav li.about a.a:hover, #nav li.about a.a:focus, #nav li.about a.a:active { background-position: -120px -45px; } #nav li.about a.active { background-position: -120px -90px !important; }
    #nav li.news a.a { width: 118px; background-position: -240px 0; } #nav li.news a.a:hover, #nav li.news a.a:focus, #nav li.news a.a:active { background-position: -240px -45px; } #nav li.news a.active { background-position: -240px -90px !important; }
    #nav li.programs a.a { width: 148px; background-position: -360px 0; } #nav li.programs a.a:hover, #nav li.programs a.a:focus, #nav li.programs a.a:active { background-position: -360px -45px; } #nav li.programs a.active { background-position: -360px -90px !important; }
    #nav li.projects a.a { width: 144px; background-position: -510px 0; } #nav li.projects a.a:hover, #nav li.projects a.a:focus, #nav li.projects a.a:active { background-position: -510px -45px; } #nav li.projects a.active { background-position: -510px -90px !important; }
    #nav li.careers a.a { width: 138px; background-position: -656px 0; } #nav li.careers a.a:hover, #nav li.careers a.a:focus, #nav li.careers a.a:active { background-position: -656px -45px; } #nav li.careers a.active { background-position: -656px -90px !important; }
    #nav li.contact a.a { width: 134px; background-position: -796px 0; } #nav li.contact a.a:hover, #nav li.contact a.a:focus, #nav li.contact a.a:active { background-position: -796px -45px; } #nav li.contact a.active { background-position: -796px -90px !important; }
    #nav li em { position: absolute; left: -10001px; top: -10001px; }
    #nav li ul { display: none; position: absolute; left: -12px; top: 45px; z-index: 50; list-style: none; width: 188px; margin: 0; padding: 0 12px 15px; background: url(../images/nav-sub-bg.png) 0 100% no-repeat; }
    * html #nav li ul { background-image: url(../images/nav-sub-bg-ie.png); }
    #nav li:hover ul { display: block; }
     #nav li ul li { margin: 0; padding: 2px 0 0; background: url(../images/nav-sub-sep.gif) repeat-x; color: #fff; font-size: 1.2em; font-weight: bold; }
     #nav li ul li:first-child { padding-top: 0; background: none; }
     #nav li ul li.first { padding-top: 0; background: none; }
      #nav li ul li a { display: block; width: 165px; padding: 10px 8px 10px 15px; color: #fff; text-decoration: none !important; }
      #nav li ul li a:hover,
      #nav li ul li a:focus,
      #nav li ul li a:active { color: #e5d9da; }
      #nav li ul li a.active { color: #ba6c6f; }
 #content { width: 930px; margin: 0 auto; padding: 20px 0 5px; }
 #footer { width: 930px; margin: 0 auto; padding: 10px 0 55px; color: #bec4ca; text-align: center; }
  #footer p { font-size: 1em; font-weight: bold; text-transform: uppercase; text-transform: uppercase; }
   
/* GENERAL
------------------------------------------- */

/* headers */

h1, h2, h3, h4, h5, h6 { line-height: 1.3; }
h1 { font-size: 3.0em; font-weight: normal; }
h2 { font-size: 2.4em; font-weight: normal; }
h3 { font-size: 1.8em; font-weight: normal; }
h4 { font-size: 1.6em; }
h5 { font-size: 1.2em; }
h6 { font-size: 1.0em; }

h1.a, h2.a, h3.a, h4.a, h5.a, h6.a { color: #500105; font-size: 1.3em; font-weight: bold; text-transform: uppercase; }
h1.b, h2.b, h3.b, h4.b, h5.b, h6.b { color: #0b3054; font-size: 1em; font-weight: bold; text-transform: uppercase; }
h1.c, h2.c, h3.c, h4.c, h5.c, h6.c { color: #500105; }

/* columns */

div.single-a { padding: 0 30px; }

div.double-a { overflow: hidden; width: 100%; margin: -20px 0 0; }
 div.double-a div.primary { float: right; width: 600px; padding: 30px 40px 0 0; }
 div.double-a div.secondary { float: left; width: 260px; padding: 30px 0 0; }

div.double-b { overflow: hidden; width: 100%; }
 div.double-b div.primary { float: right; width: 260px; padding: 0 30px 0 0; }
  div.double-b div.primary h1.c { font-size: 2.8em; }
 div.double-b div.secondary { float: left; width: 580px; padding: 0 0 0 30px; }

div.triple-a { overflow: hidden; width: 100%; padding: 25px 0 0; }
 div.triple-a div.primary { float: left; width: 300px; }
 div.triple-a div.secondary { display: inline; float: left; width: 300px; margin: 0 30px; }
 div.triple-a div.tertiary { float: right; width: 260px; }

/* containers */

div.box-a { margin: 0 0 20px; padding: 25px 30px 15px; background: #f7f7f7; }
div.box-a { border-radius: 10px; -moz-border-radius: 10px; -webkit-border-radius: 10px; }
 div.box-a h2 { margin: 0 0 105x; color: #500105; font-size: 1.3em; font-weight: bold; text-transform: uppercase; }
 div.box-a ul.projects-a { position: relative; margin: 0 -30px 15px; }
 div.box-a p.more { margin: 0; font-size: 1em; font-weight: bold; text-transform: uppercase; text-align: right; }
  div.box-a p.more a { color: #500105; text-decoration: none !important; }

div.header-a { position: relative; padding: 30px 30px 33px; border-top: 1px solid #aa282e; background: #a0292e url(../images/header-a-bg.jpg) 0 100% no-repeat; }
* html div.header-a { zoom: 1; }
 div.header-a h2 { margin: 0 250px 0 0; color: #fff; font-size: 3em; line-height: 1; font-weight: normal; }
 div.header-a p.sub { margin: 0 250px 0 0; color: #fff; font-size: 1.4em; font-weight: bold; text-transform: uppercase; }
 div.header-a p.contact { position: absolute; right: 30px; top: 50%; margin: -25px 0 0; }
  div.header-a p.contact a { display: block; overflow: hidden; width: 222px; height: 52px; background: url(../images/header-a-contact.png) no-repeat; font-size: 0; text-indent: -10001px; }
  div.header-a p.contact a:hover,
  div.header-a p.contact a:focus,
  div.header-a p.contact a:active { background-position: 0 -52px; }

div.showcase-a { position: relative; overflow: hidden; width: 100%; }
 .js div.showcase-a ul.index { position: absolute; left: 445px; bottom: 20px; z-index: 20; list-style: none; width: 335px; height: 54px; margin: 0; padding: 23px 0 0 15px; background: url(../images/showcase-a-index.png) no-repeat; }
  .js div.showcase-a ul.index li { display: inline; float: left; width: 103px; margin: 0 0 0 1px; font-size: 1.1em; font-weight: bold; line-height: 28px; text-align: center; text-transform: uppercase; }
  .js div.showcase-a ul.index li.middle { width: 109px; }
   .js div.showcase-a ul.index li a { float: left; width: 100%; height: 30px; color: #6f7c89; text-decoration: none !important; }
   .js div.showcase-a ul.index li a:hover,
   .js div.showcase-a ul.index li a:focus,
   .js div.showcase-a ul.index li a:active { color: #333; }
 .js div.showcase-a div.wrap { overflow: hidden; width: 100%; height: 296px; }
  .js div.showcase-a div.wrap div.slider { overflow: hidden; width: 100001px; }
   div.showcase-a div.wrap div.slider div.slide { position: relative; width: 930px; height: 296px; }
   .js div.showcase-a div.wrap div.slider div.slide { float: left; }
    div.showcase-a div.wrap div.slider div.slide h2 { position: absolute; left: 460px; top: 40px; width: 415px; z-index: 25; color: #fff; font-size: 3.0em; line-height: 1.2; font-weight: bold; }
    div.showcase-a div.wrap div.slider div.slide p { position: absolute; left: 0; top: 0; }

div.showcase-b { }
 div.showcase-b p { min-height: 340px; border: 5px solid #c4c4c4; background: url(../images/indicator-a.gif) 50% 50% no-repeat; }
 * html div.showcase-b p { height: 340px; }
 div.showcase-b p { border-radius: 5px; -moz-border-radius: 5px; -webkit-border-radius: 5px; }
  div.showcase-b p img { display: block; }
 div.showcase-b ul { overflow: hidden; list-style: none; width: 100%; margin: 0 0 15px; padding: 0; }
  div.showcase-b ul li { float: left; margin: 0 0 0 7px; padding: 5px; }
  div.showcase-b ul li:first-child { margin-left: 0; }
  div.showcase-b ul li.first { margin-left: 0; }
   div.showcase-b ul li a { float: left; width: 100px; height: 75px; }
   div.showcase-b ul li a { border-radius: 5px; -moz-border-radius: 5px; -webkit-border-radius: 5px; }
   .js div.showcase-b ul li a.active { position: relative; margin: -5px; border: 5px solid #500105; }
    div.showcase-b ul li a img { float: left; }
    .js div.showcase-b ul li a img { visibility: hidden; }

div.testimonials-a { position: relative; overflow: hidden; width: 100%; margin: 25px 0; background: #f7f7f7 url(../images/testimonials-a-bg.gif) no-repeat; }
div.testimonials-a { border-radius: 5px; -moz-border-radius: 5px; -webkit-border-radius: 5px; }
 div.testimonials-a h3 { float: left; width: 155px; height: 53px; margin: 0; padding: 0 0 0 20px; color: #500105; font-size: 1.3em; font-weight: bold ; line-height: 53px; text-transform: uppercase; }
 div.testimonials-a p { width: 690px; margin: 0 0 0 175px; padding: 19px 0; color: #848484; font-weight: bold; }
 .js div.testimonials-a p { display: none; }
 .js div.testimonials-a p.active { display: block; }
  div.testimonials-a p strong { font-weight: normal; font-style: italic; }
 div.testimonials-a ul { position: absolute; right: 20px; top: 22px; list-style: none; margin: 0; padding: 0; }
  div.testimonials-a ul li { display: inline; float: left; margin: 0 0 0 5px; }
   div.testimonials-a ul li a { float: left; display: block; overflow: hidden; width: 6px; height: 11px; background: #bebebe url(../images/testimonials-a-index.gif) no-repeat; font-size: 0; text-indent: -10001px; }
   div.testimonials-a ul li.next a { background-position: -6px 0; }
   div.testimonials-a ul li a:hover,
   div.testimonials-a ul li a:focus,
   div.testimonials-a ul li a:active { background-color: #999; }

/* forms */



/* tables */

table { }
 table th, table td { padding: 5px 10px; border: 1px solid #ccc; }

/* lists */

ul.news-a { list-style: none; margin: 0 0 15px; padding: 0; }
 ul.news-a li { margin: 0 0 20px; }
  ul.news-a li strong { display: block; margin: 0 0 -15px; color: #0b2f53; font-size: 10px; font-weight: bold; text-transform: uppercase; }

ul.projects-a { list-style: none; margin: 0 0 15px; padding: 0; border-top: 1px solid #c4c4c4; }
 ul.projects-a li { overflow: hidden; padding: 15px 15px 15px 30px; border-bottom: 1px solid #c4c4c4; }
 * html ul.projects-a li { zoom: 1; }
  ul.projects-a li a.thumb { float: left; width: 100px; height: 75px; margin: 0; background: #fff; background-repeat: no-repeat; }
  ul.projects-a li a.thumb { border-radius: 5px; -moz-border-radius: 5px; -webkit-border-radius: 5px; }
   ul.projects-a li a.thumb img { float: left; }
   .js ul.projects-a li a.thumb img { visibility: hidden; }
  ul.projects-a li a { display: block; margin: 0 0 0 110px; color: #848484; text-decoration: none !important; }
  ul.projects-a li a:hover,
  ul.projects-a li a:focus,
  ul.projects-a li a:active { color: #333; }
  ul.projects-a li br { display: none; }

ul.sidenav-a { position: relative; list-style: none; margin: -30px 0 0; padding: 30px 0 200px; background: url(../images/sidenav-a-bg.png) 100% 100% no-repeat; }
 ul.sidenav-a li { padding: 1px 0 0; background: url(../images/sidenav-a-item-bg.png) 100% 0 no-repeat; font-size: 1.2em; line-height: 33px; font-weight: bold; text-align: right; }
 ul.sidenav-a li:first-child { padding-top: 0; background-position: 100% -1px; }
 ul.sidenav-a li.first { padding-top: 0; background-position: 100% -1px; }
  ul.sidenav-a li a { display: block; width: 230px; height: 33px; margin: 0 auto; padding: 0 30px 0 0; color: #848484; text-decoration: none; text-transform: uppercase; }
  ul.sidenav-a li a:hover,
  ul.sidenav-a li a:focus,
  ul.sidenav-a li a:active { color: #0b2f53; }
  ul.sidenav-a li a.active { position: relative; margin-top: -7px; margin-bottom: -7px; padding-top: 7px; padding-bottom: 7px; background: url(../images/sidenav-a-item-active-bg.png) no-repeat; color: #0b2f53; }
  * html ul.sidenav-a li a.active { top: -7px; margin-bottom: -14px; }

/* paragraphs */

p.breadcrumbs-a { margin: 0 0 15px; color: #848484; }
 p.breadcrumbs-a span { padding: 0 5px; }
 p.breadcrumbs-a a { color: #0b2f53; text-decoration: none; }
 p.breadcrumbs-a a:hover,
 p.breadcrumbs-a a:focus,
 p.breadcrumbs-a a:active { text-decoration: underline; }

p.featured-a { min-height: 90px; margin: -35px 0 20px; padding: 65px 120px 0 30px; background: url(../images/featured-a-bg.png) no-repeat; color: #fff; font-size: 1.3em; font-weight: bold; }
* html p.featured-a { height: 90px; }
 p.featured-a a { color: #fff; text-decoration: none !important; }

p.intro-a { color: #6f7c89; font-size: 1.6em; font-weight: bold; line-height: 1.4; }

/* links */



/* other */


 
/* SPECIFIC
------------------------------------------- */
