/**
 * culinaryadvisors.com main site style sheet.
 *
 * @package    CulinaryAdvisors
 * @subpackage UI
 * @copyright  Copyright 2009 Spenlen Media, Inc. (http://spenlen.com)
 * @version    $Id$
 */


/**** Global Rules ****/

/* Page Structure */

HTML, BODY, H1, H2, H3, H4, H5, H6, HR, DIV, P, PRE, UL, OL, LI, BLOCKQUOTE, FORM, FIELDSET, LEGEND, TABLE, TR, TH, TD, DL, DT, DD {
  margin: 0;
  padding: 0;
}

HTML {
  background: #fbfbfb;
  height: 100%;
}

BODY {
  margin: 0 auto;
  background: #fff;
  font: normal normal normal 0.9em/1.2em "Arial Narrow", "Helvetica Narrow", Arial, Helvetica, sans-serif;
  color: #000;
  min-width: 980px;
  max-width: 1200px;
  height: 100%;
}

/* Headings */

H1, H2, H3, H4, H5, H6 {
  margin: 0 0 0.7em 0;
  font-size: 1em;
  line-height: 1.1em;
  font-weight: normal;
  color: #211d3e;
}

H2 {
  font-weight: bold;
  text-transform: uppercase;
}

H3 {
  font-size: 1.4em;
}

H4 {
  font-size: 1.2em;
}

/* Tables */

TABLE {
  border-collapse: collapse;
  border-spacing: 0;
  background: none;
}

TH, TD {
  font-style: normal;
  font-weight: normal;
  text-align: left;
}

TR.odd, DIV.odd {
  background: #fff;
}
TR.even, DIV.even {
  background: #ccc;
}


/* Paragraphs and Other Block-Level Elements */

P {
  margin-bottom: 1em;
  line-height: 1.3em;
  text-align: justify;
}

OL, UL {
  margin: 1em 1em 1em 2em;
  list-style: none;
}

UL.bullets, DIV.markeddown UL {
  list-style: disc;
}
OL.numbered {
  list-style: decimal;
}

LI {
  margin-bottom: 1em;
}

HR.separator {
  margin: 1em 0;
}

BR.clear {
  clear: both;
}


/* Anchors (Hyperlinks) */

A, A:link, A:visited {
  color: #211d3e;
  text-decoration: none;
}
A:hover {
  color: #900;
}

A.current, .selected A {
  color: #900;
}

A.deleteLink {
  font-size: 0.8em;
}


/* Form Elements */

INPUT, TEXTAREA, SELECT, BUTTON {
  font: normal normal normal 1em "Arial Narrow", "Helvetica Narrow", Arial, Helvetica, sans-serif;
}

INPUT.fullWidth, TEXTAREA.fullWidth {
  width: 100%;
  max-width: 50em;
}

INPUT.cancelButton, BUTTON.cancelButton {
  margin-left: 2em;
}

BUTTON {
  padding: 0.2em 1.5em;
  background: #fff;
  border: none;
  color: #000;
  vertical-align: middle;
  cursor: pointer;
}


/* Images and Other Inline Elements */

IMG {
  border: none;
}

ACRONYM, ABBR {
  text-decoration: none;
}


/**** Site Layout ****/

/* Page Header */

#pageHeader {
  border-bottom: 1px solid #999;
  position: relative;
}

#pageHeader H1 {
  margin: 0;
  background: url('../images/logo_header.gif') left top no-repeat;
  border-right: 1px solid #ccc;
  border-bottom: 1px solid #ccc;
  border-left: 1px solid #ccc;
  text-indent: -1000em;
  display: block;
  width: 372px;
  height: 122px;
  position: absolute;
  left: 25px;
  bottom: -124px;
}

/* Page Navigation */

#pageNavigation {
  margin: 0;
  padding: 75px 1em 0.5em 400px;
  font-family: "Times New Roman", Times, serif;
  text-transform: uppercase;
}

#pageNavigation LI {
  margin: 0 1.5em;
  display: inline;
}

#pageNavigation LI.current A {
  color: #900;
}



/* Page Content Area */

#pageContentFrame {
  height: 449px;
  position: relative;
}

#pageContent {
  padding: 0 25px 0 399px;
  height: 449px;
  position: relative;
  overflow: auto;
}

BODY.contact #pageContent H2 {
  margin-bottom: 0;
}

BODY.about #pageContentFrame, BODY.about #pageContent,
BODY.services #pageContentFrame, BODY.services #pageContent,
BODY.portfolio #pageContentFrame, BODY.portfolio #pageContent {
  height: auto;
  min-height: 500px;
}
BODY.portfolio #pageContent {
  padding-top: 130px;
}

#portfolioNavigation {
  position: absolute;
  top: 14px;
  left: 399px;
}


#tagline {
  background: url('../images/tagline.gif') left top no-repeat;
  border-top: 1px solid #ccc;
  border-right: 1px solid #ccc;
  border-left: 1px solid #ccc;
  display: block;
  width: 372px;
  height: 25px;
  position: absolute;
  left: 25px;
  bottom: 0;
}

.alignLeft {
  text-align: left;
}

.alignCenter {
  text-align: center;
}

.alignRight {
  text-align: right;
}

.alignMiddle {
  vertical-align: middle;
}

.floatLeft {
  padding-right: 1em;
  padding-bottom: 1em;
  float: left;
}

.floatRight {
  padding-left: 1em;
  padding-bottom: 1em;
  float: right;
}

.noWrap {
  white-space: nowrap;
}

.hidden {
  visibility: hidden;
}


/* Sidebar */

#sidebar {
  padding: 12px 10px;
  background: #dbdbdb;
  border-top: 1px solid #ccc;
  border-right: 1px solid #ccc;
  border-left: 1px solid #ccc;
  display: block;
  width: 352px;
  position: absolute;
  top: 123px;
  left: 25px;
  bottom: 26px;
  overflow: auto;
}
BODY.home #sidebar {
  background: url('../images/sidebar_home.jpg') left top no-repeat;
}
BODY.contact #sidebar {
  background: url('../images/sidebar_contact.jpg') left top no-repeat;
}

P.sidebarTitle {
  font-weight: bold;
  text-transform: uppercase;
}

#sidebar A {
  font-weight: bold;
}


DIV.linkList {
  margin: 15px 45px 15px 15px;
  font-size: 0.9em;
  float: left;
}
DIV.linkList H2 {
  padding: 0.5em 0 0 0;
  font-weight: normal;
  font-size: 1em;
  float: left;
  text-transform: none;
}
DIV.linkList UL {
  margin: 0 0 0 22px;
  padding: 0.5em 0;
  border-left: 1px solid #999;
  max-width: 150px;
  float: left;
}
DIV.linkList LI {
  padding: 0 0 0 22px;
  text-transform: uppercase;
}
DIV.linkList LI.selected {
  background: url('../images/projects_selected.gif') left center no-repeat;
}


DIV.homeLocations {
  position: absolute;
  left: 435px;
  bottom: 10px;
}
DIV.homeLocations H2 {
  margin: 0;
  padding: 0.2em 0;
  font-size: 1em;
  display: inline;
}
DIV.homeLocations UL {
  margin: 0;
  display: inline;
}
DIV.homeLocations LI {
  margin: 0;
  padding: 0.2em 0.7em;
  border-left: 1px dotted #211d3e;
  text-transform: uppercase;
  display: inline;
}
DIV.homeLocations LI:first-child {
  border-left: none;
}

UL.portfolioLinks, UL.portfolioLinks LI {
  margin: 0.35em 0;
}
UL.portfolioLinks UL {
  margin: 0 0 0 1em;
}
UL.portfolioLinks UL LI {
  margin: 0.1em 0;
  font-size: 0.9em;
}


/* Forms */

TABLE.form TH {
  padding: 0.4em 1em;
  background: #cbb688;
  text-align: right;
  color: #161006;
  vertical-align: top;
}

TABLE.form TD {
  padding: 0.4em 1em;
  background: #d8c99f;
  color: #161006;
  vertical-align: top;
}
TABLE.form TD TD {
  padding: 0 0.05em 0 0;
}

.promptText {
  color: #b3b3b3;
}

.validationError {
  padding: 0.5em;
  border-left: 3px double #ff6c55;
  font-size: 0.9em;
  font-weight: bold;
  color: #ff6c55;
}
.validationError INPUT, .validationError TEXTAREA {
  outline-color: #993333;
}

.formButtons {
  padding-top: 1.5em;
}


/* Page Footer */

#pageFooter {
  border-top: 1px solid #999;
  padding: 0 35px;
  color: #666;
}

#pageFooter P {
  margin: 0.5em 0;
  font-size: 0.9em;
  line-height: 1.2em;
}
