/*
 * Project:   Belighted
 * Date:      2009/10/23
/* ---------------------------------------- */

* { margin: 0; padding: 0; }

html { min-height: 100%; margin: 0 0 1px; font-size: 100.01%; }
body { background: #fff url(/images/core-bg-a.png) repeat-x; font-size: 62.5%; }

@media only screen and (max-device-width: 480px) { html { -webkit-text-size-adjust: none; } }

body, textarea, input, select, option, button { color: #333; font-family: "Helvetica Neue",Helvetica,Arial,sans-serif; line-height: 1.5; }
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: 15px; }

a { color: #4d8ebb; text-decoration: none; }
a:hover, a:focus, a:active { 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; }

p, li { text-shadow: 0 1px 1px rgba(255,255,255,0.5); }

code { font-family: "Courier New",monospace; white-space: pre-wrap; }

/* LAYOUT
------------------------------------------- */

#root { }
 #top { border-bottom: 1px solid #9dc8e7; background: url(/images/core-header-a.png) 0 97px repeat-x; }
  #brand { width: 940px; height: 42px; margin: 0 auto; padding: 13px 0 0; }
   #logo { margin: 0; background: url(/images/logo-a.png) 2px 0 no-repeat; }
    #logo a { display: block; overflow: hidden; width: 121px; height: 31px; text-indent: -10001px; }
   #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; }
  #nav { width: 940px; height: 41px; margin: 0 auto; }
   #nav ul { overflow: hidden; list-style: none; width: 100%; margin: 0; padding: 7px 0 0; }
    #nav ul li { float: left; padding-left: 2px; background: url(/images/nav-sep.gif) 0 50% no-repeat; font-size: 1.3em; font-weight: bold; }
    #nav ul li.first { background: none; }
     #nav ul li a { float: left; padding: 0 0 0 5px; background: url(/images/nav-tab.png) -10001px -10001px no-repeat; color: #a7ddff; text-decoration: none; line-height: 26px; text-shadow: #0d1d29 0 1px 0; outline: none; }
     #nav ul li a:hover,
     #nav ul li a:focus,
     #nav ul li a:active { color: #fff371; text-decoration: none; }
      #nav ul li a span { float: left; height: 26px; padding: 0 10px 2px 5px; background: url(/images/nav-tab.png) -10001px -10001px no-repeat; cursor: pointer; }
     #nav ul li a.active { position: relative; margin: 0 -2px; background-position: 0 0; color: #fff !important; text-shadow: #000 0 -1px 0; }
      #nav ul li a.active span { padding-left: 7px; padding-right: 12px; background-position: 100% 0; }
     #nav ul li em { position: absolute; left: -10001px; top: -10001px; }
  #header { overflow: hidden; width: 940px; margin: 0 auto; padding: 15px 0 5px; }
   #header h2,
   #header p.catch { float: left; width: 600px; margin: 0; padding: 0 0 10px; color: #fff; font-size: 4.2em; line-height: 1.1; font-weight: bold; letter-spacing: -1px; text-shadow: #6da5cc 0 2px 1px; }
   #header div.side { float: right; width: 305px; padding-top: 2px; }
    #header div.side p { margin: 0 0 3px; }
    #header div.side p.description { margin-top: -2px; padding-left: 9px; color: #2a6690; font-weight: bold; text-shadow: #a6d2f1 0 1px 0; }
     #header div.side p.description .feed { padding-right: 20px; background: url(/images/iconset-a-feed.png) 100% 50% no-repeat; }
 #content { overflow: hidden; width: 100%; padding: 30px 0 0; }
  div.double-a { background: url(/images/core-bg-double-a.png) 50% 0 repeat-y; }
   div.double-a div.primary { float: left; width: 530px; padding: 0 0 15px; }
   div.double-a div.secondary { float: right; width: 305px; padding: 0 0 15px; }
  #content div.content-inner { width: 940px; margin: 0 auto; padding: 0 0 1px; }
 #footer { overflow: hidden; width: 100%; padding: 35px 0 20px; border-top: 1px solid #e4e4e4; background: #f7f7f7 url(/images/dot-b.gif) repeat-x; }
  #footer div.inner { position: relative; width: 940px; min-height: 35px; margin: 0 auto; background: url(/images/dot-a.gif) 0 25px repeat-x; }
  * html #footer div.inner { height: 35px; }
   #footer div.one { float: left; color: #777;}
   #footer div.two { float: left; color: #7fb4da; }
    #footer p.start { margin: 0 0 25px; padding-right: 20px; color: #222; font-size: 1.1em; }
    #footer div.two p.start { font-weight: bold; }
     #footer div.one p.start a { color: #333; font-weight: bold; }
     #footer p.start br { display: none; }
     #footer div.one a { color: #777; }
     #footer ul { list-style: none; width: 365px; margin: 0; padding: 0; }
     #footer div.two ul { width: 450px; }
      #footer ul li { float: left; width: 105px; margin: 0 0 10px; padding: 0 20px 0 0; font-size: 1.1em; }
      #footer ul li.middle { width: 90px; }
      #footer div.two li { width: 125px; }
      #footer div.two li.middle { width: 105px; }
       #footer ul li strong { display: block; }
       #footer div.two ul li a { display: block; color: #7fb4da; font-weight: bold; }
    #footer p.green { position: absolute; right: -7px; float: right; padding-right: 25px; background: url(/images/green-a.png) 100% 0 no-repeat; font-size: 1.1em; }
     #footer p.green span { float: left; height: 24px; padding: 8px 0 0 15px; background: url(/images/green-a.png) no-repeat; color: #777 !important; line-height: ; }

/* GENERAL
------------------------------------------- */

/* headers */

h1, h2, h3, h4, h5, h6 { color: #000; line-height: 1.1; font-weight: bold; }
h1 { margin-bottom: 20px; color: #33749f; font-size: 3.0em; letter-spacing: -1px; }
 h1 span { color: #000; }
h2 { font-size: 1.8em; }
h3 { font-size: 1.4em; }
h4 { font-size: 1.4em; }
h5 { font-size: 1.2em; }
h6 { font-size: 1.0em; }

h1.a, h2.a, h3.a, h4.a, h5.a, h6.a { padding: 0 0 10px; border-bottom: 1px solid #e3e3e3; color: #909192; font-size: 1.8em; letter-spacing: -1px; text-shadow: 0 1px 1px #fff; }
h1.b, h2.b, h3.b, h4.b, h5.b, h6.b { margin: 0 0 10px; font-size: 1.4em; }
 h1.b small, h2.b small, h3.b small, h4.b small, h5.b small, h6.b small { padding-left: 3px; font-size: 0.86em; text-shadow: 0 1px 1px #fff;}

p.sub-b { margin-top: -8px; }

/* cols */

div.split-a { overflow: hidden; width: 100%; }
 div.split-a ul.tags { color: #777; }
div.split-a-530 { width: 530px; }
 div.split-a div.one { float: left; width: 47%; }
 div.split-a div.two { float: right; width: 47%; }

/* containers */

div.address-a { margin: 0 10px 15px; }
 div.address-a ul { overflow: hidden; list-style: none; width: 100%; margin: 0 0 10px; padding: 0 0 10px; border-bottom: 1px solid #e7e7e7; margin-bottom: 0;}
  div.address-a ul li { float: left; margin: 0 0 0 10px; color: #999; font-size: 1.1em; }
  div.address-a ul li:first-child,
  div.address-a ul li.first { margin-left: 0; }
   div.address-a ul li strong { display: block; }
   div.address-a ul li a { color: #999; }
 div.address-a p { color: #333; font-size: 1.1em; border-top: 1px solid #fff; padding: 10px 0 0; margin-top: 0;}

div.box-a { margin-bottom: 30px; }
 div.box-a ul.photos-a { margin-bottom: -10px; }

div.comment-a { margin: 0 0 20px; border-top: 1px solid #e7e7e7; }
 div.comment-a p.date { margin: 0 0 5px; color: #aaa; font-size: 1.1em; font-weight: bold; line-height: 2; }
  div.comment-a p.date a { display: -moz-inline-stack; display: inline-block; }
  * html div.comment-a p.date a { display: inline; zoom: 1; }
  *:first-child+html div.comment-a p.date a { display: inline; zoom: 1; }
  div.comment-a p.date a.author { padding: 0 5px; margin-right: 5px; background: #f8ef84; color: #333; }
 div.comment-a blockquote { margin: 0; padding: 0; color: #777; }

div.cta-a { margin: 0 -10px 20px -16px; border: 1px solid #e7e7e7; border-radius: 5px; -moz-border-radius: 5px; -webkit-border-radius: 5px; }
* html div.cta-a { position: relative; zoom: 1; }
*:first-child+html div.cta-a { position: relative; zoom: 1; }
 div.cta-a div.top { padding: 15px 15px 1px; background: #eef7fd; }
  div.cta-a div.top p { color: #89c8f0; font-size: 2.3em; line-height: 1.3; font-weight: bold; letter-spacing: -1px; text-shadow: #fff 0 1px 0; }
 div.cta-a div.footer { overflow: hidden; width: 100%; padding: 12px 0; }
  div.cta-a div.footer ul { float: left; list-style: none; margin: 0; padding: 0; }
   div.cta-a div.footer ul li { display: inline; float: left; margin: 0 0 0 15px; padding: 0 0 0 16px; background: url(/images/cta-a-sep.gif) 0 50% no-repeat; font-weight: bold; line-height: 26px; }
   div.cta-a div.footer ul li:first-child,
   div.cta-a div.footer ul li.first { padding-left: 0; background: none; }
    div.cta-a div.footer ul li a { color: #33739f; }
  div.cta-a div.footer p { float: right; margin: 0; padding: 0 15px 0 0; }

div.featured-a { position: relative; min-height: 110px; padding-left: 110px; }
* html div.featured-a { zoom: 1; }
 div.featured-a p.photo { position: absolute; left: 0; top: 0; }
  div.featured-a p.photo img { float: left; padding: 9px; border: 1px solid #e7e7e7; border-radius: 8px; -moz-border-radius: 8px; -webkit-border-radius: 8px; background: #fff; }

div.header-a { overflow: hidden; width: 100%; margin: 0 0 20px; }
 div.header-a h1 { float: left; min-width: 615px; margin: 0; padding-right: 20px; }
 div.header-a p { float: left; margin: 37px 0 0; }

div.introduction-a { width: 100%; margin: 0 0 30px; background: url(/images/dot-a.gif) 32.5% 0 repeat-y; }
 div.introduction-a div.row { overflow: hidden; width: 100%; padding-top: 19px; }
 div.introduction-a div.first { padding-top: 0; }
  div.introduction-a div.one { float: left; width: 282px; margin: 0 0 -30px; }
   div.introduction-a div.one p.loud-a { margin-bottom: 30px; padding-bottom: 20px; border-bottom: 1px solid #e7e7e7; }
    div.introduction-a div.one h3 a { color: #235374; }
  div.introduction-a div.two { display: inline; float: left; width: 282px; margin: 0 0 -30px 47px }
  div.introduction-a div.three { float: right; width: 282px; margin: 0 0 -30px; }
   div.introduction-a div.story-a { margin-bottom: 30px; }

div.mapwrap-a { position: relative; width: 285px; height: 200px; margin: 0 0 15px; padding: 9px; border: 1px solid #e7e7e7; border-radius: 8px; -moz-border-radius: 8px; -webkit-border-radius: 8px; background: #fff; }
 div.mapwrap-a h3 { margin: 0; }
  div.mapwrap-a h3 span { position: absolute; left: 9px; bottom: 9px; overflow: hidden; width: 285px; height: 6px; background: url(/images/mapwrap-a.png) 0 -6px no-repeat; text-indent: -10001px; }
  div.mapwrap-a h3 span.first { top: 9px; bottom: auto; background-position: 0 0; }
  * html div.mapwrap-a h3 span { background-image: url(/images/mapwrap-a-ie.png); }

div.paging-a { overflow: hidden; width: 100%; margin: 30px 0; text-align: center; }
 div.paging-a ul.steps { list-style: none; margin: 0; padding: 0; }
  div.paging-a ul.steps li { font-size: 1.1em; }
  div.paging-a ul.steps li.prev { float: left; }
  div.paging-a ul.steps li.next { float: right; }
 div.paging-a p { display: inline; margin: 0; padding: 0 11px 0 0; background: url(/images/paging-a-sep.gif) 100% 50% no-repeat; color: #777; font-size: 1.1em; }
 div.paging-a ul.pages { display: inline; list-style: none; margin: 0; padding: 0 0 0 5px; }
  div.paging-a ul.pages li { display: inline; padding: 0 0 0 5px; font-size: 1.1em; }
   div.paging-a ul.pages li a.current { color: #333 !important; }

div.person-a { margin: 0 0 30px; }
 div.person-a h2 { font-size: 1.4em; }
 div.person-a ul.tags { overflow: hidden; list-style: none; width: 100%; margin: -7px 0 10px; padding: 0; }
  div.person-a ul.tags li { float: left; margin: 0 4px 4px 0; padding: 2px 5px; border-radius: 3px; -moz-border-radius: 3px; -webkit-border-radius: 3px; background: #eee; font-size: 1.1em; line-height: 1.2; font-weight: bold; text-transform: lowercase; text-shadow: #fff 0 1px 0; }
 div.person-a p.photo { position: relative; float: left; width: 50px; height: 50px; margin: 0 10px 3px 0; padding: 5px 6px 7px; }
  div.person-a p.photo img { display: block; }
  div.person-a p.photo span { position: absolute; left: 0; top: 0; width: 62px; height: 62px; background: url(/images/photos-a-frame-a.png) no-repeat; text-indent: -10001px; }
  * html div.person-a p.photo span { background-image: url(/images/photos-a-frame-a-ie.png); }
 div.person-a ul.connect { overflow: hidden; list-style: none; margin: 0; padding: 0; border: 1px solid #d2eafb; border-radius: 5px; -moz-border-radius: 5px; -webkit-border-radius: 5px; }
 * html div.person-a ul.connect { zoom: 1; }
  div.person-a ul.connect li { float: left; padding: 0 7px 0 8px; background: url(/images/person-a-connect-sep.gif) 0 50% no-repeat; font-size: 1.1em; font-weight: bold; line-height: 2; }
  div.person-a ul.connect li.email { position: relative; margin: 0 -1px 0 0; padding: 0 7px; background: #eef7fd; }
   div.person-a ul.connect li.email a { padding-right: 13px; background: url(/images/person-a-connect-email.gif) 100% 50% no-repeat; color: #1a374a; }

div.post-a { margin: 0 0 30px; }
 div.post-a h1,
 div.post-a h2 { padding-bottom: 5px; border-bottom: 1px solid #e7e7e7; color: #33729f; font-size: 3em; }
 div.post-a p.date { margin: -10px 0 20px; font-size: 1.3em; line-height: 1.2; font-weight: bold; color: #777;}
  div.post-a p.date a,
  div.post-a p.date strong { color: #333; font-weight: bold; }
 div.post-a p.image { }
  div.post-a p.image img { padding: 9px; border: 1px solid #e7e7e7; border-radius: 8px; -moz-border-radius: 8px; -webkit-border-radius: 8px; }
 div.post-a p { font-size: 1.3em; }
 div.post-a li { font-size: 1.3em; }
 div.post-a li li { font-size: 1em; }
 div.post-a div.info { overflow: hidden; margin: 25px 0 0; border: 1px solid #d2eafb; border-radius: 5px; -moz-border-radius: 5px; -webkit-border-radius: 5px; background: #fff url(/images/labeled-a.gif) repeat-y; }
 * html div.post-a div.info { zoom: 1; }
  div.post-a div.info p.category { display: inline; float: left; margin: 0 0 0 3px; padding: 0 10px 0 7px; background: #eef7fd; color: #1b374a; font-size: 1.1em; font-weight: bold; line-height: 2; }
   div.post-a div.info p.category span { position: absolute; left: -10001px; top: -10001px; }
   div.post-a div.info p.category a { color: #1b374a; }
  div.post-a div.info p.tags { position: absolute; left: -10001px; top: -10001px; }
  div.post-a div.info ul.tags { float: left; list-style: none; margin: 0; padding: 0; }
   div.post-a div.info ul.tags li { float: left; margin: 0 0 0 10px; font-size: 1.1em; font-weight: bold; line-height: 2; }
  div.post-a div.info p.comments { float: right; margin: 0; padding: 0 10px 0 11px; background: url(/images/post-a-info-sep.gif) 0 50% no-repeat; font-size: 1.1em; line-height: 2; }
 div.post-a blockquote { position: relative; margin: 20px 0; padding: 15px 20px 1px; border: 1px solid #e7e7e7; border-radius: 8px; -moz-border-radius: 8px; -webkit-border-radius: 8px; color: #8ccaf2; font-weight: bold; line-height: 1.25; }
 * html div.post-a blockquote { zoom: 1; }
  div.post-a blockquote p { font-size: 1.8em; }
  div.post-a blockquote span { position: absolute; left: -6px; top: -8px; width: 25px; height: 22px; background: url(/images/post-a-quote.png) no-repeat; text-indent: -10001px; }
 div.post-a div.pre-a { margin: 20px 0; padding: 3px 10px 3px 35px; border: 1px solid #e7e7e7; border-radius: 8px; -moz-border-radius: 8px; -webkit-border-radius: 8px; background: url(/images/post-a-pre.gif) repeat-y; font: 1.1em/1.5 Monaco,Courier New,Courier,mono; }
  div.post-a div.pre-a span { position: absolute; width: 30px; margin: 0 0 0 -35px; color: #999; text-align: center; text-shadow: #fff 0 1px 0; }
 div.post-a h3,
 div.post-a h4,
 div.post-a h5 { color: #777; }

div.quote-a { width: 266px; margin: 0 0 15px; padding: 6px 0 0; background: url(/images/quote-a-top.gif) no-repeat; color: #777;}
 div.quote-a blockquote { padding: 5px 12px 1px; border: 1px solid #e6e6e8; border-width: 0 1px; background: #fff; }
  div.quote-a blockquote p { margin: 0 0 10px; }
 div.quote-a p.info { padding: 5px 12px 7px; border-top: 1px solid #edf1f4; background: url(/images/quote-a-bottom.png) 0 100% no-repeat; font-size: 1.1em; font-weight: bold; text-shadow: #fff 0 1px 0; }

div.story-a { margin: 0 0 15px; }
 div.story-a h3 { margin: 0 0 5px; }
 div.story-a p { margin-bottom: 10px; }
 div.story-a p.info { margin-top: -10px; color: #98a3aa; }

div.team-a { width: 530px; margin: 0 0 20px; }
 div.team-a p.photo { margin: 0; }
  div.team-a p.photo img { display: block; }
 div.team-a p.about { display: block; margin: 0; padding: 10px 14px; border: 1px solid #ededed; border-width: 0 1px; background: #4081b0 url(/images/team-a-about.png) no-repeat; color: #fff; font-size: 1.3em; line-height: 1.2; text-shadow: 0 1px 1px rgba(0,0,0,0.3);}
  div.team-a p.about em { color: #fff271; font-style: normal; }
 div.team-a p.more { margin: 0; padding: 10px 14px; border: 1px solid #ededed; border-width: 0 1px; border-bottom: 1px solid #e3e3e3; font-size: 1.3em; line-height: 1.4em; background-color: #f8f8fa; color: #555;}
 div.team-a p.action { margin: 0; padding: 10px 14px; border: 1px solid #ededed; border-width: 0 1px 1px; -moz-border-radius-bottomleft: 8px; -webkit-border-bottom-left-radius: 8px; border-bottom-left-radius: 8px; -moz-border-radius-bottomright: 8px; -webkit-border-bottom-right-radius: 8px; border-bottom-right-radius: 8px; background: #dbdbdb url(/images/team-a-action.png) repeat-x; font-size: 1.2em; font-weight: bold; text-shadow: #fff 0 1px 0; color: #555; }

div.term-a { overflow: hidden; width: 100%; margin: 0 0 15px; }
 div.term-a div.main { float: left; width: 150px; }
  div.term-a div.main h3 { margin: 0 0 10px; font-size: 1.4em; }
  div.term-a div.main p { margin: 0 0 10px; }
 div.term-a div.side { float: right; width: 145px; }
  div.term-a div.side h4 { margin: 0 0 0px; padding: 2px 0 6px; color: #999; font-size: 1.2em; font-weight: normal; border-bottom: 1px solid #e3e3e3;}
  div.term-a div.side ul { list-style: none; margin: 0 0 10px; padding: 0; }
   div.term-a div.side ul li { padding: 3px 0 3px; border-top: 1px solid #fff; border-bottom: 1px solid #e3e3e3; }
   div.term-a div.side ul li.last { border-bottom: none;}

div.term-b { overflow: hidden; width: 100%; margin: 0 0 15px; }
 div.term-b h2 { margin: 0 0 5px; font-size: 1.4em; }
 div.term-b ul { float: right; list-style: none; width: 190px; margin: 0 -10px 0 0; padding: 0; }
  div.term-b ul li { padding: 0 0 0 20px; background: url(/images/bullet-a.gif) 0 4px no-repeat; color: #33749f; font-weight: bold; }
   div.term-b ul li a { color: #33749f; }
 div.term-b p { margin: 0 200px 10px 0; }
 div.term-b dl { margin: 0 200px 10px 0; }

div.triple-a { margin: 0 -26px 25px; padding: 5px; border-radius: 5px; -moz-border-radius: 5px; -webkit-border-radius: 5px; background: #d7edfb; }
* html div.triple-a { position: relative; zoom: 1; }
*:first-child+html div.triple-a { position: relative; zoom: 1; }
 div.triple-a-inner { overflow: hidden; padding: 20px 20px 5px; border: 1px solid #c9deed; border-radius: 5px; -moz-border-radius: 5px; -webkit-border-radius: 5px; background: #fff url(/images/triple-a-bg.png) 325px 0 no-repeat; }
 * html div.triple-a-inner { position: relative; zoom: 1; }
 *:first-child+html div.triple-a-inner { position: relative; zoom: 1; }
  div.triple-a div.one { float: left; width: 282px; }
  div.triple-a div.two { display: inline; float: left; width: 282px; margin: 0 0 0 47px; text-shadow: #fff 0 1px 0; }
  div.triple-a div.three { float: right; width: 282px; text-shadow: #fff 0 1px 0; }
  div.triple-a div.two h3, div.triple-a div.three h3 { color: #6eb6e7; }
  div.triple-a div.two a.more-b:hover, div.triple-a div.two a.more-b:focus, div.triple-a div.two a.more-b:active,
  div.triple-a div.three a.more-b:hover, div.triple-a div.three a.more-b:focus, div.triple-a div.three a.more-b:active { background-color: #fff; }

div.work-a { margin: 0 0 35px; }
 div.work-a div.showcase { overflow: hidden; margin: 0 -26px 20px; border: 1px solid #eee; border-radius: 8px; -moz-border-radius: 8px; -webkit-border-radius: 8px; background: url(/images/work-a-footer.gif) 0 100% repeat-x; }
  div.work-a div.showcase div.one,
  div.work-a div.showcase div.two,
  div.work-a div.showcase div.three { float: left; width: 323px; background: # url(/images/) no-repeat; }
  div.work-a div.showcase div.three { width: 344px; }
   div.work-a div.showcase div h2 { position: relative; margin: 0; padding: 8px 10px 8px 23px; border-bottom: 1px solid #ddd !important; background: #eee url(/images/work-a-header.gif) repeat-x; color: #333; font-size: 1.5em; }
   * html div.work-a div.showcase div.two h2 { padding-bottom: 9px; }
   div.work-a div.showcase div.one h2 { -moz-border-radius-topleft: 8px; -webkit-border-top-left-radius: 8px; border-top-left-radius: 8px; }
   div.work-a div.showcase div.three h2 { -moz-border-radius-topright: 8px; -webkit-border-top-right-radius: 8px; border-top-right-radius: 8px; }
    div.work-a div.showcase div h2 small { padding-left: 5px; color: #aaa; font-size: 0.8em; }
   div.work-a div.showcase div p.description { margin: 0; padding: 8px 10px 8px 23px; border-bottom: 1px solid #f3f3f3; color: #777; font-size: 1.1em; font-weight: bold; }
   div.work-a div.showcase div p.screen { position: relative; width: 300px; height: 220px; margin: 0; padding: 20px 0 20px 22px; border-top: 1px solid #fff; border-left: 1px solid #fff; background: url(/images/work-a-screen-back.png) repeat-x; }
   div.work-a div.showcase div.two p.screen { border-left: none; padding-left: 23px; }
   div.work-a div.showcase div.three p.screen { padding-right: 21px; border-left: none; border-right: 1px solid #fff; }
    div.work-a div.showcase div p.screen span { position: absolute; left: 22px; top: 20px; overflow: hidden; width: 300px; height: 220px; background: url(/images/work-a-screen-bg.png) no-repeat; text-indent: -10001px; }
    div.work-a div.showcase div.two p.screen span { left: 23px; }
    * html div.work-a div.showcase div p.screen span { background-image: url(/images/work-a-screen-bg-ie.png); }
   div.work-a div.showcase div ul.more { overflow: hidden; list-style: none; width: 300px; margin: 0; padding: 10px 0 10px 23px; background: url(/images/work-a-footer-sep.gif) 1px 0 repeat-y;   border-top: 1px solid #eee; }
   div.work-a div.showcase div.one ul.more { background: none; }
   div.work-a div.showcase div.three ul.more { padding-right: 21px; }
    div.work-a div.showcase div ul.more li { display: inline; float: left; margin: 0 3px 0 0; font-size: 1.1em; font-weight: bold; line-height: 1.1; }
     div.work-a div.showcase div ul.more li a { float: left; padding: 4px 6px; }
     div.work-a div.showcase div ul.more li a.active { padding: 3px 5px; border: 1px solid #dce5e9; border-radius: 3px; -moz-border-radius: 3px; -webkit-border-radius: 3px; background: #fff; color: #255475; text-decoration: none !important; }
   div.work-a div.showcase div p.go { position: absolute; left: -10001px; top: -10001px; }
 div.work-a div.details { overflow: hidden; width: 100%; margin: 0 0 20px; background: url(/images/work-a-details.gif) 299px 0 repeat-y; }
  div.work-a div.details div.one { float: left; width: 280px; }
  div.work-a div.details div.two { display: inline; float: left; width: 280px; margin: 0 0 0 43px; }
  div.work-a div.details div.three { float: right; width: 280px; margin-right: 20px; }
   div.work-a div.details div h4.label { display: none; }
   div.work-a div.details div h3 { margin: 0 0 7px; }
   div.work-a div.details div ul { padding-top: 16px; background: url(/images/work-a-details-list.gif) repeat-x; }

div.work-b { overflow: hidden; margin: 0 -26px 30px; padding: 20px 25px; border: 1px solid #eee; border-radius: 8px; -moz-border-radius: 8px; -webkit-border-radius: 8px; background: #fafafb; }
 div.work-b h2 { margin: 0 0 15px; padding: 0 0 10px; border-bottom: 1px solid #eee; font-size: 1.8em; letter-spacing: -1px; }
 div.work-b ul { overflow: hidden; list-style: none; width: 100%; margin: 0; padding: 0; }
  div.work-b ul li { float: left; padding: 0 25px 0 0; color: #aaa; font-size: 1.1em; line-height: 1.3; font-weight: bold; }
   div.work-b ul li a { font-size: 1.09em; }

/* forms */

form.contact-a { display: block; margin: 0 0 30px; border: 1px solid #e7e7e7; border-radius: 8px; -moz-border-radius: 8px; -webkit-border-radius: 8px; }
 form.contact-a p.time { margin: 0; padding: 5px 10px; border-bottom: 1px solid #e7e7e7; -moz-border-radius-topleft: 8px; -webkit-border-top-left-radius: 8px; border-top-left-radius: 8px; -moz-border-radius-topright: 8px; -webkit-border-top-right-radius: 8px; border-top-right-radius: 8px; background: #eef7fd; }
 form.contact-a div.fields { padding: 0; background: #f8f8fa; }
  form.contact-a div.fields p { overflow: hidden; margin: 0; padding: 10px; border-top: 1px solid #fff; border-bottom: 1px solid #ededed; line-height: 30px; }
   form.contact-a div.fields p label { float: left; width: 75px; padding-right: 15px; font-size: 1.08em; line-height: 1.1; font-weight: bold; text-align: right; }
    form.contact-a div.fields p label small { font-size: 0.85em; color: #aaa; text-transform: capitalize; }
    form.contact-a div.fields p label small.required { color: #84bfe5; }
   form.contact-a div.fields p input { width: 190px; height: 15px; margin-right: 5px; padding: 2px; }
   form.contact-a div.fields p select { width: 198px; margin-right: 5px; padding: 2px; }
   form.contact-a div.fields p textarea { overflow: auto; width: 190px; margin-right: 5px; padding: 2px; }
   form.contact-a div.fields p span { color: #aaa; font-size: 0.92em; font-weight: bold; }
   form.contact-a div.fields p span.error { padding-left: 15px; background: url(/images/iconset-a-error.gif) 0 50% no-repeat; }
   form.contact-a div.fields p span.ok { padding-left: 15px; background: url(/images/iconset-a-smile.gif) 0 50% no-repeat; color: #84bfe5; }
 form.contact-a p.submit { margin: 0; padding: 8px 10px; font-size: 1.1em; }
  form.contact-a p.submit input[type="submit"] { margin-right: 10px; font-size: 12px; }
  form.contact-a p.submit span.sending { padding-left: 20px; background: url(/images/iconset-a-indicator.gif) 0 50% no-repeat; font-weight: bold; }
 form.contact-a p.submitted { margin: 0; padding: 8px 10px; font-size: 1.1em; text-align: center; }
  form.contact-a p.submitted span.sent { padding-left: 20px; background: url(/images/iconset-a-tick.gif) 0 50% no-repeat; font-weight: bold; }
  form.contact-a p.submitted a.another { padding-left: 20px; font-weight: bold; }

form.sidesearch-a { float: right; }
 form.sidesearch-a p { float: left; position: relative; }
  .js form.sidesearch-a p label { position: absolute; left: 6px; top: 4px; line-height: 1; }
  form.sidesearch-a p input { float: left; height: 15px; margin: 0 3px 0 0; padding: 1px 4px; width: 100px; vertical-align: middle; }
  form.sidesearch-a p .button { float: left; height: 21px; vertical-align: middle; width: auto;}
  * html form.sidesearch-a p button { height: 15px; line-height: 1; }
  *:first-child+html form.sidesearch-a p .button { height: 15px; line-height: 1; }

form.reply-a { display: block; padding: 20px 20px 0; border: 1px solid #ededed; border-radius: 8px; -moz-border-radius: 8px; -webkit-border-radius: 8px; background: #f8f8fa; }
 form.reply-a div.wrap { overflow: hidden; width: 100%; }
  form.reply-a div.wrap div.you { float: left; width: 225px; }
  form.reply-a div.wrap p.comment { float: right; width: 240px;}

  form.reply-a div.wrap div.post-header #post_title { width: 98% }
  form.reply-a div.wrap textarea.post-body { width: 98%; height: auto;}

  form.reply-a div.wrap p { margin: 0 0 10px; }
   form.reply-a div.wrap label { display: block; margin: 0 0 3px; font-weight: bold; color: #777;}
    form.reply-a div.wrap label small { color: #aaa; font-size: 0.92em; font-weight: normal; }
   form.reply-a div.wrap input { width: 215px; height: 15px; padding: 2px; }
   form.reply-a div.wrap textarea { overflow: auto; width: 230px; height: 123px; padding: 2px; }
 form.reply-a p.submit { margin: 10px -20px 0; padding: 10px 20px; border-top: 1px solid #ededed; -moz-border-radius-bottomleft: 8px; -webkit-border-bottom-left-radius: 8px; border-bottom-left-radius: 8px; -moz-border-radius-bottomright: 8px; -webkit-border-bottom-right-radius: 8px; border-bottom-right-radius: 8px; background: #fff; }
  form.reply-a p.submit input[type="submit"] { margin: 0 10px 0 0; color: #333; vertical-align: middle; }
  form.reply-a p.submit input { margin: 0; padding: 0; vertical-align: middle; }
  form.reply-a p.submit label { padding: 0 0 0 5px; color: #aaa; font-size: 0.92em; font-weight: bold; vertical-align: middle; }

/* tables */

table { }
 table th, table td { padding: 5px 10px; border: 1px solid #ccc; }

/* lists */

ul.browse-a { list-style: none; margin: 0 0 15px; padding: 0; }
 ul.browse-a li { overflow: hidden; width: 100%; }
  ul.browse-a li a { float: left; width: 65%; padding: 4px 0; border-top: 1px solid #fff; border-bottom: 1px solid #ededed; font-weight: bold; }
  ul.browse-a li span { float: right; color: #777; width: 30%; padding: 4px 0; border-top: 1px solid #fff; border-bottom: 1px solid #ededed; }
  ul.browse-a li.first a, ul.browse-a li:first-child a,
  ul.browse-a li.first span, ul.browse-a li:first-child span { padding-top: 0; border-top: none; }
  ul.browse-a li.last a, ul.browse-a li:last-child a,
  ul.browse-a li.last span, ul.browse-a li:last-child span { border-bottom: none; }

ul.checklist-a { list-style: none; margin: 0 0 15px; padding: 0; }
 ul.checklist-a li { padding-left: 20px; background: url(/images/iconset-a-check.gif) 0 4px no-repeat; font-weight: bold; }

ul.files-a { list-style: none; margin: 0 0 15px; padding: 0; }
 ul.files-a li { overflow: hidden; width: 100%; }
  ul.files-a li a { float: left; padding: 4px 0; width: 65%; font-weight: bold; border-top: 1px solid #fff; border-bottom: 1px solid #ededed; }
  ul.files-a li small { float: right; padding: 4px 0; width: 30%; color: #999; font-size: 1em; border-top: 1px solid #fff; border-bottom: 1px solid #ededed; }
  ul.files-a li.first a, ul.files-a li:first-child a,
  ul.files-a li.first small, ul.files-a li:first-child small { padding-top: 0; border-top: none; }
  ul.files-a li.last a, ul.files-a li:last-child a,
  ul.files-a li.last small, ul.files-a li:last-child small { border-bottom: none;}

ul.photos-a { overflow: hidden; list-style: none; margin: 10px 0 5px -6px; padding: 0; }
* html ul.photos-a { zoom: 1; }
 ul.photos-a li { position: relative; float: left; width: 50px; height: 50px; margin: 0 0 0 6px; padding: 5px 6px 17px; }
  ul.photos-a li a { display: block; overflow: hidden; }
   ul.photos-a li span { position: absolute; left: 0; top: 0; width: 62px; height: 62px; background: url(/images/photos-a-frame-a.png) no-repeat; text-indent: -10001px; }
   * html ul.photos-a li span { background-image: url(/images/photos-a-frame-a-ie.png); }

/* paragraphs */

p.labeled-a { overflow: hidden; margin: 15px 0; border: 1px solid #d2eafb; border-radius: 5px; -moz-border-radius: 5px; -webkit-border-radius: 5px; background: #fff url(/images/labeled-a.gif) repeat-y; font-size: 1.1em; font-weight: bold; line-height: 2; }
 p.labeled-a strong { float: left; margin: 0 10px 0 3px; padding: 0 10px 0 7px; background: #eef7fd; color: #1a374a; }

p.loud-a { color: #8ccaf3; font-size: 2.3em; line-height: 1.3; font-weight: bold; letter-spacing: -1px; }

/* links */

a.more-a { display: -moz-inline-stack; display: inline-block; padding: 1px; border: 1px solid #f7eb6d; border-radius: 5px; -moz-border-radius: 5px; -webkit-border-radius: 5px; background: #fff8a8; color: #5f5a27; font-weight: bold; }
* html a.more-a { display: inline; zoom: 1; }
*:first-child+html a.more-a { display: inline; zoom: 1; }
a.more-a:hover,
a.more-a:focus,
a.more-a:active { border-color: #e5d95b; color: #333; text-decoration: none; }
 a.more-a span { display: -moz-inline-stack; display: inline-block; padding: 2px 7px; background: #fff371; cursor: pointer; }
 * html a.more-a span { display: inline; zoom: 1; }
 *:first-child+html a.more-a span { display: inline; zoom: 1; }

a.more-b { display: -moz-inline-stack; display: inline-block; padding: 0; border: 1px solid #d2eafb; border-radius: 5px; -moz-border-radius: 5px; -webkit-border-radius: 5px; font-weight: bold; }
* html a.more-b { display: inline; zoom: 1; }
*:first-child+html a.more-b { display: inline; zoom: 1; }
a.more-b:hover,
a.more-b:focus,
a.more-b:active { border-color: #afd1e9; background-color: #e8f4fd; color: #3677a5; text-decoration: none; }
 a.more-b span { display: -moz-inline-stack; display: inline-block; padding: 2px 7px; border-radius: 5px; -moz-border-radius: 5px; -webkit-border-radius: 5px; border: 1px solid #fff; cursor: pointer; }
 * html a.more-b span { display: inline; zoom: 1; border: none; }
 *:first-child+html a.more-b span { display: inline; zoom: 1; border: none; }

a.more-c { display: -moz-inline-stack; display: inline-block; padding: 0; border: 1px solid #5495c4; border-radius: 5px; -moz-border-radius: 5px; -webkit-border-radius: 5px; background: #72add6; color: #fff; font-weight: bold; text-shadow: #4f83a9 0 -1px 0; }
* html a.more-c { display: inline; zoom: 1; }
*:first-child+html a.more-c { display: inline; zoom: 1; }
a.more-c:hover,
a.more-c:focus,
a.more-c:active { border-color: #4b8bbb; background-color: #69a4cd; text-decoration: none; }
 a.more-c span { display: -moz-inline-stack; display: inline-block; padding: 2px 7px; border-radius: 5px; -moz-border-radius: 5px; -webkit-border-radius: 5px; border: 1px solid #7bb1d8; cursor: pointer; }
 * html a.more-c span { display: inline; zoom: 1; }
 *:first-child+html a.more-c span { display: inline; zoom: 1; }

/* other */

/* SPECIFIC
------------------------------------------- */

.home { }
 .home #root { background: url(/images/core-bg-home-a.png) 50% 0 no-repeat; }
  .home #top { min-height: 500px; border: none; background: url(/images/core-bg-home-b.png) 50% 0 no-repeat; }
  * html .home #top { height: 500px; }
   .home #header { padding: 26px 0 0; }
    .home #header p { overflow: hidden; width: 509px; height: 146px; margin: 0 0 30px -5px; text-indent: -10001px; /*background: url(/images/header-copy-a.png) no-repeat;*/ }
    .home #header ul { overflow: hidden; width: 100%; list-style: none; margin: 0 0 20px; padding: 0; }
     .home #header ul li { display: inline; float: left; margin-right: 6px; font-size: 1.8em; font-weight: bold; letter-spacing: -1px; }
      .home #header ul li a { float: left; padding: 0 0 0 8px; background: url(/images/header-button-a.png) no-repeat; color: #6ba6d6; text-decoration: none !important; text-shadow: #fff 0 1px 0; }
       .home #header ul li a span { float: left; padding: 0 23px 0 15px; height: 47px; background: url(/images/header-button-a.png) 100% 0 no-repeat; line-height: 45px; cursor: pointer; }
      .home #header ul li a:hover,
      .home #header ul li a:focus,
      .home #header ul li a:active { background-position: 0 -50px; color: #fff; text-shadow: #000 0 1px 0; }
	   .home #header ul li a:hover span,
       .home #header ul li a:focus span,
       .home #header ul li a:active span { background-position: 100% -50px; }
  .home #content { margin-top: -105px; }
  .home #content p.blog-p { color: #777; }

/* Map
------------------------------------------- */

#map { width: 285px;height: 200px; }
 #map div a { display: block; }

/* reCaptcha
------------------------------------------- */

table#recaptcha_table { width: 99% !important;}

/* Error Management
------------------------------------------- */

.errorExplanation, .errorExplanation h2 { color: #f30032; }
.error-field .errorExplanation ul { margin-bottom: 0; }
.contact-a .errorExplanation, .login-a .errorExplanation { padding: 10px; background-color: #f8f8fa; border-bottom: 1px solid #ededed; border-top: 1px solid #fff; }

/* Admin tools
------------------------------------------- */

.admin-tool { margin: 10px 10px 0 0; text-align: right; }
 .admin-tool span { background-color: #6baedb; border: 1px solid #4d8ab6; border-radius: 5px; -moz-border-radius: 5px; -webkit-border-radius: 5px; padding: 3px 0; margin: 0 0 0 5px; }
  .admin-tool span a { font-size: 1.1em; font-weight: bold; color: #fff; text-shadow: 0 -1px 1px rgba(0,0,0,.3); text-decoration: none; border-radius: 5px; -moz-border-radius: 5px; -webkit-border-radius: 5px; padding: 1px 4px 2px 4px; border: 1px solid rgba(255,255,255,.2); }
  .admin-tool span:hover a { background-color: #5a9ccc; }
.usersession-a { position: absolute; right: 30px; top: 18px; color: #fff; text-shadow: 0 1px -1px #000; }

/* Login form
---------------------------------------------- */

form.login-a { display: block; margin: 0 0 30px; border: 1px solid #e7e7e7; border-radius: 8px; -moz-border-radius: 8px; -webkit-border-radius: 8px; }
 form.login-a p.time { margin: 0; padding: 5px 10px; border-bottom: 1px solid #e7e7e7; -moz-border-radius-topleft: 8px; -webkit-border-top-left-radius: 8px; border-top-left-radius: 8px; -moz-border-radius-topright: 8px; -webkit-border-top-right-radius: 8px; border-top-right-radius: 8px; background: #eef7fd; }
 form.login-a div.fields { padding: 0; background: #f8f8fa; }
  form.login-a div.fields p { overflow: hidden; margin: 0; padding: 10px; border-top: 1px solid #fff; border-bottom: 1px solid #ededed; line-height: 30px; }
   form.login-a div.fields p label { float: left; width: 90px; padding-right: 15px; font-size: 1.08em; line-height: 1.1; font-weight: bold; text-align: right; }
    form.login-a div.fields p label small { font-size: 0.85em; color: #aaa; text-transform: capitalize; display: block;}
    form.login-a div.fields p label small.required { color: #84bfe5; }
   form.login-a div.fields p input { width: 190px; height: 15px; margin-right: 5px; padding: 2px; }
   form.login-a div.fields p select { width: 198px; margin-right: 5px; padding: 2px; }
   form.login-a div.fields p textarea { overflow: auto; width: 190px; margin-right: 5px; padding: 2px; }
   form.login-a div.fields p span { color: #aaa; font-size: 0.92em; font-weight: bold; }
   form.login-a div.fields p span.error { padding-left: 15px; background: url(/images/iconset-a-error.gif) 0 50% no-repeat; }
   form.login-a div.fields p span.ok { padding-left: 15px; background: url(/images/iconset-a-smile.gif) 0 50% no-repeat; color: #84bfe5; }
 form.login-a p.submit { margin: 0; padding: 8px 10px; font-size: 1.1em; }
  form.login-a p.submit input[type="submit"] { margin-right: 10px; font-size: 12px; }