/* ARGUMENT FROM DESIGN <http://www.ardes.com/> */

/* =====GENERAL===== */
/* =ZERO margins & padding, which we define elsewhere, courtesy Eric Meyer (HTML5 edition, 01/11) */
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, 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,
article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
	margin: 0; padding: 0;
	border: 0;
	font-size: 100%; font: inherit;
	vertical-align: baseline;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
	display: block;
}
body { line-height: 1; }
ol, ul { list-style: none; }
blockquote, q { quotes: none; }
blockquote:before, blockquote:after, q:before, q:after {
	content: '';
	content: none;
}
table { border-collapse: collapse; border-spacing: 0; }


/* =====HTML REDEFINITIONS===== */
body { 
  background-color: #F1F1F1; color: #333;
  font-family: Georgia, serif; font-size: 100%;
  background-image: url(../images/bodybg.gif); background-repeat: repeat-x; background-position: bottom;
}
  body#vrsample { 
    background-color: #FFF; color: #CCC; 
    margin: 18px 0 0 0; 
    background-image: none;
  }

a:link { color: #1A3C77; } 
  a:visited { color: #052e77; text-decoration: none; }
  a:focus,a:hover { color: #6A7D2A; }
  a:active { color: #6A7D2A; }
  #sidebar p a { margin: auto; }

blockquote { padding: 0.5em 1em; margin: 0.75em 0.25em 0.25em;
  background-color: #EEF2D7; border: 1px solid #A3AE67; 
  -moz-border-radius: 0.7em; -webkit-border-radius: 0.7em;
}

cite { font-style: normal; color: #414141; }
  cite.book, cite.magazine, cite.movie, cite.tv { font-style: italic; color: inherit; }

code { font-size: 100%; }

dfn, acronym { 
  font-style: normal; color: #163469;
  cursor: help; border-bottom: 1px dashed #CCC;
}

h1, h2, h3, h4, h5, h6 {
  font-family: "AkzidenzGrotesk-Light", Helvetica, Arial, "MS Trebuchet", sans-serif;
  color: #294981; font-weight: 100; line-height: 90%;
}
  h1 { font-size: 105%; padding-bottom: 0.25em; }
    body#home h1 { padding-bottom: 0; }
  h2 { font-size: 105%; }
    #content h2 { padding: 0.25em 0.25em 0.5em; }
  h3 { font-size: 100%; clear: both; }
    body.terms #content h3 { padding: 0.5em 0 0.5em; }
  h4 { font-size: 93%; clear: both; letter-spacing: 0px; }
  h5 { font-size: 89%; clear: both; }
  h6 { font-size: 85%; clear: both; font-style: italic; }
  
  iframe { margin: 1em 0 2em 3em; }

  #masthead p, #masthead p, #location p { margin-right: 10px; padding-bottom: 0;  }

#content ul, #content ol { font-size: 92%; clear: both; margin: 0px 10px 10px 18px; }
  #content ol { padding-left: 5px;}
    #content ol.internal { padding-left: 3em;}
  #content div.context ol { margin-left: 25px; list-style-type: decimal; }
  #content ul { list-style-type: disc; }
    body.terms #content ul { list-style-type: none; }
  
  #content li { margin-bottom: 0.5em; line-height: 135%; }
  
    body.terms #content ul li { margin-bottom: 0; padding: 0.15em 0; border-bottom: 0.1em dotted #CCC; }
      body.terms #content ul li a { display: block; text-decoration: none; }
      body.terms #content ul li:hover { background-color: #EEF2D7; }
        body.terms #content ul li:hover a { color: #000; }
    
    #content ol.internal li { margin-bottom: 0.15em; }
    
      #content li li { font-size: 110%; margin-bottom: 0.15em; }
      #content ol ul { padding-top: 0.25em; margin-bottom: 0.15em; }

#content p, #sidebar p, #footer p { font-size: 95%; line-height: 140%; }
  #content p, #sidebar p { margin: 0.25em 0.5em 0.5em 0.25em; }
    #content p.toc { text-align: right; }
  p.permalink { font-size: 80%; }
  #footer p { padding: 0.5em 0 0.5em 1em; text-align: center; }
  #sidebar p.note { margin-bottom: 2em; }
  
code, pre { font-size: 0.8em; font-family: Courier, Monospace; }
  pre { margin-bottom: 1em; }

strong { font-weight: bold; }

#sidebar div.moreinfo { border-bottom: 1px #A3AE67 solid;  text-align: left; margin-bottom: 0.5em; }
  #sidebar div.moreinfo h3 { text-align: left; margin-bottom: 3px; }
  #sidebar div.moreinfo p, #sidebar div.moreinfo ul { margin: 0.5em 10px 10px 10px; }
    #sidebar div.moreinfo p a { font-weight: normal; }


/* =====MAJOR ELEMENT WIDTHS===== */
#container { /* Container DIV for subsidiary elements. */
  background-color: #FFF;
  width: 950px!important; 
  margin-bottom: 1em!important;
  margin: 25px auto 0 auto; 
  border-style: solid; border-width: 1px; border-color: #A3AE67;
  -moz-border-radius-topleft: 0.75em; -webkit-border-top-left-radius: 0.75em;
  -moz-border-radius-topright: 0.75em; -webkit-border-top-right-radius: 0.75em;
}

  #masthead { /* Logo, header & page title location */ 
    width: 625px; background-color: transparent;
    float: left; 
    margin: 0; padding: 0 0 15px 10px;
  }

  #nav * { z-index: 2!important; /* So nav appears above relatively-positioned #sidebar/#newsbar */}
  #navbar { /* Navigation DIV bar, further delineated below */
    clear: both;
    background-color: #A3AE67; height: 24px;
    background-image: url(../images/nav/bg.gif); background-repeat: repeat-x; background-position: bottom left;
    border-top: 1px solid #828b52; border-bottom: 1px solid #828b52;
    font-family: Helvetica, Arial, "MS Trebuchet", sans-serif; font-weight: normal; font-size: 14px!important; text-align: center; color: #FFF;
  }

  #masthead, #content { 
    border-right: #A3AE67 1px solid;
  }

  #content { /* Location of content, duh */
    width: 595px;
    float: left; clear: left;
    padding: 5px 20px 10px 20px; 
    z-index: 1;
  }

  #sidebar, #newsbar { /* Information related to content: news, screenshots, etc. */
    width: 313px!important; position: relative; left: -1px; /* Moved a bit left so either #content or #sidebar/#newsbar can be longest */
    z-index: 1!important; /* So nav drop-down can be seen */
    border-left: #A3AE67 1px solid;
    float: right;
  }

  #footer { /* Copyright footer */
    font-size: 70%; text-align: left; 
    font-family: Helvetica, Arial, "MS Trebuchet", sans-serif;
    clear: both; width: 100%;
    color: #555; background-color: inherit;
    border-top: 1px solid #A3AE67;
    padding: 5px 0 5px 0;
  }

  #location, #content, #sidebar, #newsbar, #footer { background-color: inherit; text-align: left; }

  #splash { /* More marketing hoo-ha, on major pages */
    display: block; clear: both; 
    width: 950px!important; height: 200px;
    border-bottom: 1px solid #828b52; 
    background-color: #FFF;
  }

/* =====IMAGE REPLACEMENT FOR SIDEBAR DIV===== */
#sidebar h2.whats_new, #newsbar h2.whats_new, #sidebar h2.screenshots, 
#sidebar h2.preview, #sidebar h2.more, #sidebar h2.samples {
  height: 35px; width: 220px; 
  margin-bottom: 0;
}
  #sidebar h2.whats_new, #newsbar h2.whats_new{ background-image: url(../images/sidebarheaders/whats_new.gif); }
  #sidebar h2.screenshots { background-image: url(../images/sidebarheaders/screenshots.gif); }
  #sidebar h2.preview { background-image: url(../images/sidebarheaders/preview.gif); }
  #sidebar h2.samples { background-image: url(../images/sidebarheaders/samples.gif); }
  #sidebar h2.more { background-image: url(../images/sidebarheaders/more.gif); }

    #sidebar h2.whats_new span, #newsbar h2.whats_new span, #sidebar h2.screenshots span, 
    #sidebar h2.preview span, #sidebar h2.more span, #sidebar h2.samples span {
      display: none;
    }


/* =====MAIN CONTENT TEXT COLUMNS===== */
/* Multi-column support integrated for WebKit & Mozilla browsers, div.context contains the columns */
div.context { 
  display: block; clear: both; margin-bottom: 12px; padding-bottom: 10px; border-bottom: 1px solid #A3AE67; 
  -moz-column-count: 2; -webkit-column-count: 2; column-count: 2;
  -moz-column-gap: 1em; -webkit-column-gap: 1em; column-gap: 1em;
  }
  div.context.last { border-bottom: 0; margin-bottom: 0; padding-bottom: 0; }
  body.testimonials div.context, body.terms div.context { -moz-column-count: 1; -webkit-column-count: 1; }
    body.testimonials div.context.intro, body.terms div.context.toc, body.terms div.context.intro {
      -moz-column-count: 2; -webkit-column-count: 2; column-count: 2;
      -moz-column-gap: 1em; -webkit-column-gap: 1em; column-gap: 1em;
    }

  div.context h3 { padding-top: 15px; }


/* =====SIDEBAR/=NEWSBAR DEFINITIONS===== */
#sidebar h2, #newsbar h2 { margin: 0 0 0 8px; padding-bottom: 0; }

#sidebar h3, #sidebar p { margin: 10px 10px 4px 10px; padding-bottom: 0!important; }
  #sidebar h3 { text-align: center; }

#newsbar a:hover, #newsbar a:active { /* Mouseover obscures default link hover colour */
  color: #000; 
}
#sidebar img { margin: 0 auto 2em 55px!important; }
  #sidebar a img { border: none; text-decoration: none; }

#newsbar div.news {
  font-size: 90%;
  border-bottom: 1px #A3AE67 solid;
}
  #newsbar div.news.lastitem { border-bottom: none; padding-bottom: 3px; }
  #newsbar div.news:hover { background-color: #EEF2D7; }
  
  #newsbar div.news p { line-height: 130%; margin: 0 11px 12px 11px; padding-top: 12px; }


/* =====NAVIGATION BAR===== */
#nav, #nav ul { padding: 0; margin: 0; list-style: none; }

#nav a { display: block; width: 149px; padding-top: 2px; } /* Padding-top fixes Firefox, IE nav problem: links too high */
  #nav a:link, #nav a:visited, #nav a:hover, #nav a:active { 
    color: #fff; font-weight: normal; text-decoration: none; 
  }

#nav li { 
  position: relative; float: left;
  width: 158px; height: 23px; padding-top: 2px;
  border-right: 1px solid #828b52;
}
  #nav li.contactus { width: 155px; border-right: none; } /* Clean up right edge of navbar */
  #nav li:hover, #nav li:active { 
    background-image: url(../images/nav/on.gif); background-repeat: repeat-x; 
    background-color: #3e5308;
  }

  /* 1st-level subnavigation */
  #nav li ul { 
    position: absolute; left: 0px!important; top: 25px; /* Specified here for subnav to appear on right location in IE/Win</=6*/
    background-color: #A3AE67; border-top: 1px solid #3e5308;
    display: none; 
  }
    #nav ul ul {
      top: auto; left: auto; margin-top: 5px;  /* Opera honours the direct child selector, IE/Win</=6 doesn't */
      font-size: 12px; 
    }
      #nav li li { font-size: 12px; text-align: left; padding-left: 5px;  border-bottom: 1px solid #828b52;} /* Make that subnav look nicer */
        #nav li li a { padding-bottom: 5px; } /* Make the paddding correct */

        #nav li:hover ul { display: block; } /* Here's where the subnav appears */
          #nav li ul li:hover { background-image: none; } 

      /* 2nd-level subnavigation */
      #nav li.ancillary ul { 
        left: 125px!important; top: 0; /* Specified here for subnav to appear on right location in IE/Win</=6*/
        display: none;
      }
        #nav li.ancillary ul li { border-left: 1px solid #3e5308; }
        #nav li ul li:hover ul { display: block; }
      #nav li a span.more { margin-left: 4.95em; /* Indication of a further subnav, moved to the right */ }
      
      
      body#home #nav li.home, body#about #nav li.aboutus, body#folio #nav li.portfolio, body#casestudies #nav li.cases, 
      body#extra #nav li.extrastuff, body#contact #nav li.contactus 
      { background-image: url(../images/nav/at.gif);}
      
      body#home #nav li.home:hover, body#about #nav li.aboutus:hover, body#folio #nav li.portfolio:hover, body#casestudies #nav li.cases:hover, 
      body#extra #nav li.extrastuff:hover, body#contact #nav li.contactus:hover 
      { background-image: url(../images/nav/on.gif);}

/* =====SUBNAV ON CASESTUDIES===== */
p.subnav { text-align: center; }
  p.subnav a { 
    padding: 0.15em 0.75em 0.15em 0.5em; 
    border-right: 1px solid #1A3C77;
    }
    p.subnav a.last { border-right: 0px solid #FFF; }


/* =====FORM ELEMENTS===== */
div.context.form { -moz-column-count: 1; -webkit-column-count: 1; /* Double-columns on a form? Are you MAD?!? */ }

fieldset { 
  width: 590px; border: 0px solid #FFF;
  font-size: 14px;
 }
fieldset.multi { border-bottom: 1px solid #A3AE67; padding-bottom: 10px; }

legend { 
  font-family: "AkzidenzGrotesk-Light", Helvetica, Arial, "MS Trebuchet", sans-serif;
  color: #294981; line-height: 90%; padding: 0.5em 0;
  font-weight: normal; font-size: 110%; 
}

div.field { display: block; clear: both; }
  div.field label, div.field input, textarea, select { height: 1.5em; }
  div.field input, textarea, select { 
    width: 35em; margin: 0 5px 5px 5px; float: right;
    font-family: Helvetica, Arial, "MS Trebuchet", sans-serif; font-size: 12px;
  }
  div.field p.advice { 
    clear: both; text-align: right; 
    font-family: Helvetica, Arial, "MS Trebuchet", sans-serif; font-size: 82%;
  }

label { width: 10.5em; float: left; text-align: right; }
  label.required { font-weight: bold; }

input, textarea, select { border: 1px solid #BFBFBF; background-color: #F9F9F9; } /* Remove nasty border in Firefox */
  select, textarea { margin-bottom: 10px; } /* Give extra spacing for these */

  textarea { width: 35.2em; }
    textarea.address { height: 60px; }
    textarea.enquiry { height: 100px; }
    textarea.notes { height: 60px; }

  input:focus, textarea:focus { background-color: #EEF2E5; }

  input.button { float: right; width: auto; margin-right: 10px; }
    input.button, p.call_to_action a {
      padding: 0.15em 0.75em; font-size: 80%; color: #FFF;
      border: 1px solid #859947;
      background-color: #627239; background-image: url(../images/nav/bg.gif); background-repeat: repeat-x; background-position: bottom left;
      -moz-border-radius: 0.7em; -webkit-border-radius: 0.7em;
    }
      input.button:active, p.call_to_action a:active {
        background-color: #3E5403; background-image: url(../images/nav/on.gif); background-repeat: repeat-x; background-position: bottom left;
        border: 1px solid #4F5B2C;
      }
    input.button:focus, p.call_to_action:focus { background-color: inherit; }
 
    p.call_to_action { 
      font-family: Helvetica, Arial, "MS Trebuchet", sans-serif;
      width: auto!important; text-align: right; padding: 1em;
    }
      p.call_to_action a { font-size: 95%; }
      p.call_to_action a, p.call_to_action a:visited, p.call_to_action a:hover, p.call_to_action a:active { color: #FFF!important; text-decoration: none; }

div.multi { margin: 10px 0 15px 0; } /* Tickbox & Radio buttons */
  div.multi label { float: none; margin-right: 10px; }
    div.multi input { width: auto; float: none; display: inline; margin-bottom: 0; position: relative; top: 5px; }


/* =====TEASER DIV===== */
div#teaser {
  display: block; clear: both; width: 635px; height: 111px;
  border-width: 1px 0; border-color: #A3AE67; border-style: solid;
  margin: 10px 0 15px 0;
  position: relative; left: -20px;
  font-size: 94%; text-align: left;
  background-image: url(../images/teaser_bg.jpg); background-repeat: no-repeat; background-position: left bottom;
}
  div#teaser p { 
    line-height: 160%; 
    padding: 20px 5px 5px 20px; 
  }
    div#teaser p a { font-weight: bold; }
  div#teaser a { text-decoration: none; border: 0; }

  div#teaser img { margin-top: 0; float: right; }


/* =====FOOTER NAV===== */
#footer p { margin: 0.5em auto; line-height: normal; padding: 0; }
  #footer a { text-decoration: none; }
  #footer p.nav a { border-right: 1px solid #A3AE67; }
    #footer p.nav a { padding: 0.15em 0.5em; }
      #footer p.nav a:hover, #footer p.nav a:active { text-decoration: underline; }
      #footer p.nav a:visited { color: #1A3C77; }
      #footer p a.contactus { border-right: 0px solid #FFF; }


/* =====HEADERS & LOCATIONS===== */
img.logo { float: left; margin: 15px 5px 0 50px; }

#masthead p, #location p {
  background-repeat: no-repeat;
  background-position: 0 0;
  margin-bottom: 0; padding-bottom: 0; line-height: 100%; 
}
  #masthead p.ardes {
    float: right; margin: 25px 50px 0 0; 
    background-image: url(../images/titles/header_ardes.gif);
    height: 35px; width: 356px;
  }
  #masthead p.webdev {
    float: right; margin-right: 50px;
    background-image: url(../images/titles/header_wgdesign.gif);
    height: 35px;
    width: 245px;
  }
    #masthead p span, #location p span { display: none; }

  #location p { /* The name of the page we're on */ 
    float: right;
    margin: 60px 25px 0 0; 
    height: 35px;
    width: 142px;
  }
    #location p.about { background-image: url(../images/titles/loc_about.gif); }
    #location p.casestudies { background-image: url(../images/titles/loc_casestudies.gif); }
    #location p.contact { background-image: url(../images/titles/loc_contact.gif); }
    #location p.extra { background-image: url(../images/titles/loc_extra.gif); }
    #location p.folio { background-image: url(../images/titles/loc_folio.gif); }
    #location p.featured { background-image: url(../images/titles/loc_featured.gif); }
    #location p.frameworks { background-image: url(../images/titles/loc_frameworks.gif); }
    #location p.home { background-image: url(../images/titles/loc_home.gif); }
    #location p.personal { background-image: url(../images/titles/loc_personal.gif); }
    #location p.proposals { background-image: url(../images/titles/loc_proposals.gif); }
    #location p.rails { background-image: url(../images/titles/loc_rails.gif);}
    #location p.services { background-image: url(../images/titles/loc_services.gif); }
    #location p.terms { background-image: url(../images/titles/loc_terms.gif);}
    #location p.testimonials { background-image: url(../images/titles/loc_testimonials.gif);}

/* Image replacement for #content  */
#content h1.about, #content h1.about_approach, #content h1.about_tech, #content h1.audit, 
#content h1.casestudies, #content h1.casestudies_edu, #content h1.casestudies_enterprise, #content h1.casestudies_smallbiz,
#content h1.contact, #content h1.extra, #content h1.extra_vruk, #content h1.extra_fun, #content h1.extra_belize, 
#content h1.featured, #content h1.folio, #content h1.folio_cid, #content h1.folio_photo, #content h1.folio_print, 
#content h1.folio_qtvr, #content h1.folio_web, #content h1.proposals, #content h1.rails, #content h1.rfp, #content h1.terms, 
#content h1.testimonials, #content h1.thanks, #content h1.welcome {
  height: 35px; width: 460px; 
  background-repeat: no-repeat;
  background-position: 0 0; 
}
  #content h1.about { background-image: url(../images/contentheaders/about.gif); }
  #content h1.about_approach { background-image: url(../images/contentheaders/about_approach.gif); } 
  #content h1.about_tech { background-image: url(../images/contentheaders/about_tech.gif); }
  #content h1.audit { background-image: url(../images/contentheaders/audit.gif); }
  #content h1.casestudies { background-image: url(../images/contentheaders/casestudies.gif); }
  #content h1.casestudies_edu { background-image: url(../images/contentheaders/casestudies_edu.gif); }
  #content h1.casestudies_enterprise { background-image: url(../images/contentheaders/casestudies_enterprise.gif); }
  #content h1.casestudies_smallbiz { background-image: url(../images/contentheaders/casestudies_smallbiz.gif); }
  #content h1.contact { background-image: url(../images/contentheaders/contact.gif); }
  #content h1.extra { background-image: url(../images/contentheaders/extra.gif); }
  #content h1.extra_vruk { background-image: url(../images/contentheaders/extra_vruk.gif); }
  #content h1.extra_fun { background-image: url(../images/contentheaders/extra_fun.gif); }
  #content h1.extra_belize { background-image: url(../images/contentheaders/extra_belize.gif); }
  #content h1.featured { background-image: url(../images/contentheaders/featured.gif); }
  #content h1.folio { background-image: url(../images/contentheaders/folio.gif); }
  #content h1.folio_cid { background-image: url(../images/contentheaders/folio_cid.gif); }
  #content h1.folio_photo { background-image: url(../images/contentheaders/folio_photo.gif); }
  #content h1.folio_print { background-image: url(../images/contentheaders/folio_print.gif); }
  #content h1.folio_qtvr {background-image: url(../images/contentheaders/folio_qtvr.gif);  }
  #content h1.folio_web { background-image: url(../images/contentheaders/folio_web.gif); }
  #content h1.personal { background-image: url(../images/contentheaders/personal.gif); }
  #content h1.proposals { background-image: url(../images/contentheaders/proposals.gif); }
  #content h1.rails { background-image: url(../images/contentheaders/rails.gif);}
  #content h1.rfp { background-image: url(../images/contentheaders/rfp.gif); }
  #content h1.terms { background-image: url(../images/contentheaders/terms.gif);}
  #content h1.testimonials { background-image: url(../images/contentheaders/testimonials.gif);}
  #content h1.thanks { background-image: url(../images/contentheaders/thanks.gif); }
  #content h1.welcome { background-image: url(../images/contentheaders/welcome.gif); }

    #content h1 span {
      display: none; /* Textual header removed */
    }


/* =====LIGHTWINDOW BITS===== */
#lightwindow_stage, #lightwindow_contents {
  background: rgba(255, 255, 255, 0.2)!important; /*  CSS3 RGBA, supported by only some browsers */
  -moz-border-radius: 0.75em; -webkit-border-radius: 0.75em;
}

