/* Structures */
* {
  padding: 0;
  margin: 0;
}

body, html {
  height: 100%;
}

body {
  background: #e7e7e7 url('images/background.gif') repeat-x top center;
  font-family: Arial, Helvetica, sans-serif;
  color: #333;
  font-size: 9pt;
}

body.context-object-specials {
  background-image: url('images/background-main-specials.gif');
}

/* === Containers */

/* === Top level Containers */
#page-wrapper {
  min-height: 100%;
  position: relative;
}

#header {
  background: #fff url('images/header.gif') repeat-x bottom left;
  height: 145px;
}

#header-front {
  background: #fff url('images/header.gif') repeat-x bottom left;
  height: 515px;
}

#main {
  /* overflow and width for clearing */
  /* height of footer + 20px padding*/
  margin-top: 20px;
  overflow: hidden; 
  width: 100%;
  padding-bottom: 150px; 
}

#column-primary {
  float: left;
}

#column-secondary {
  /* width and negative margin-left must be equal. No margins/padding here */
  width: 280px;
  float: left;
  margin-left: -290px;
}

#region-content-lower {
  margin-top: 10px;
} 

#region-header {
  /* wrapper needed for clear left else IE messes up floats */
  clear: left;
  padding-top: 0px;
  border-top: 0 none;
}
#title {
  border-bottom: 1px solid #eee;
  margin-bottom: 1em;
  padding-bottom: .25em;
}

#footer {
  background: #fff url('images/footer.gif') repeat-x top left;
  padding: 1em 0 0 0;
  line-height: 1.8em;
  bottom: 0;
  position: absolute;
  height: 100px;
  width: 100%;
}

/* ^^=== Top level Containers: Customizations */
.single-column #column-primary {
  /* allows column to expand to full width when no secondary column is present */
  width: 720px;
  margin-left: auto;
  margin-right: auto;
  float: none;
}

.two-columns #column-primary {
  /* 558px + 2px border + 20px padding = 580px total */
  /* margin-right must equal negative margin-left of #column-secondary */
  /* #tabs needs to be the same */
  width: 590px;
  margin-right: 300px;
}

.with-tabs #column-primary-main {
  border-top: none;
}

#column-secondary.with-tabs {
  margin-top: 35px;
}


/* @group Column Primary Rounded Corners */
.two-columns #column-primary.with-tabs #column-primary-main.roundcorners .inner, .two-columns #column-primary #column-primary-main.roundcorners .inner, .two-columns #column-primary #region-content-lower.roundcorners .inner {
  background-color: #fff; 
  padding: 10px 15px;
}

.single-column #column-primary #column-primary-main.roundcorners .inner, .single-column #column-primary.with-tabs #column-primary-main.roundcorners .inner, .single-column #column-primary #region-content-lower.roundcorners .inner {
  background-color: #fff; 
  padding: 20px 40px;
}

.two-columns #column-primary #column-primary-main.roundcorners .outer-top, .two-columns #column-primary #region-content-lower.roundcorners .outer-top {
  padding-top: 6px;
  background: url(images/main-white_top.gif) no-repeat top left;
}

.two-columns #column-primary.with-tabs #column-primary-main.roundcorners .outer-top {
  padding-top: 6px;
  background: url(images/main-white_top-with_tabs.gif) no-repeat top left;
}

.two-columns #column-primary.with-tabs #column-primary-main.roundcorners .outer-bottom, .two-columns #column-primary #column-primary-main.roundcorners .outer-bottom,  .two-columns #column-primary #region-content-lower.roundcorners .outer-bottom{
  padding-bottom: 6px;
  background: url(images/main-white_bottom.gif) no-repeat bottom left;
}

.single-column #column-primary #column-primary-main.roundcorners .outer-top, .single-column #column-primary #region-content-lower.roundcorners .outer-top {
  padding-top: 6px;
  background: url(images/main-white_top-single_column.gif) no-repeat top left;
}

.single-column #column-primary.with-tabs #column-primary-main.roundcorners .outer-top {
  padding-top: 6px;
  background: url(images/main-white_top-single_column-with_tabs.gif) no-repeat top left;
}

.single-column #column-primary #column-primary-main.roundcorners .outer-bottom, .single-column #column-primary #region-content-lower.roundcorners .outer-bottom {
  padding-bottom: 6px;
  background: url(images/main-white_bottom-single_column.gif) no-repeat bottom left;
}
/* @end */

/* @group Column Scondary Round Corners */
#column-secondary .roundcorners .outer-top,
#full-width .roundcorners .outer-top {
  /* top rounded edge */
  width: 280px;
  background: url('images/white_top.gif') no-repeat top left;
  padding-top: 5px;
}
#column-secondary .roundcorners .outer-bottom,
#full-width .roundcorners .outer-bottom {
  /* bottom rounded edge */
  background: url('images/white_bottom.gif') no-repeat bottom left;
  padding-bottom: 5px;
}
/* @end */
/*============================================*/



/* === Second level Containers */
#header-base {
  clear: both;
  width: 100%;
}

#masthead {
  margin-bottom: 10px;
}

#breadcrumb {
  clear: both;
  width: 100%;
  color: #666;
  padding: 10px;
  background-color: #fff;
  margin: 0 0 10px 0;
}

#tasks, .tasks {
  text-align: right;
}

#tabs {
  font-family: "Lucida Sans", "Lucida Grande", "Lucida Unicode", "Trebuchet MS", sans-serif;
  height: 34px;
  letter-spacing: -0.03em;
  font-size: 8.5pt;
}


/* ^^=== Second level Containers: Customizations */

#region-header #masthead {
  position: relative;
  height: 280px;
  margin-bottom: 15px;
}

#region-header #masthead #front-suggestion {
  background: #fff;
  border-bottom: 0 none;
  padding: 5px;
  width: auto;
  position: absolute;
  bottom:35px;
  right:0;
}
/*============================================*/





/* === Generic containers */
.container {
  margin: 0 auto;
  width: 880px;
}

.block {
  margin-bottom: 0.4em; 
  padding-bottom:5px;
}

.section {
  clear: both;
}

.half-width {
  width: 270px;
  margin-left: 10px;
  margin-bottom: 0.5em;
}

.half-width-left {
  width: 270px;
  margin-bottom: 0.5em;
}

.area.half-width-left, .area .half-width-left {
  width: 270px;
  margin-bottom: 0;
}

/* ^^=== Generic Containers: Customizations */
#column-primary .content-base {
  margin-bottom: 10px;
  padding-bottom:  0px;
}

.single-column .half-width {
  width: 300px !important; 
  margin-left: 10px !important;
  margin-bottom: 0.5em;  
}

.single-column .half-width-left {
  width: 300px !important;
  margin-bottom: 0.5em;
}

#full-width .block {
  float: left;
  margin-right: 20px;
}

#full-width .last{
  margin-right: 0;
}

#column-primary .block, #region-footer .block {
  margin: 0;
  padding: 0;
}

#footer .container {
  padding: 1em 0.5em 0 0.5em;
}

/*??? Should we use .title and target it by #masthead .title*/
#masthead #title {
  width:100%;
  border-bottom: 1px solid #ccc;
  padding:5px 10px 3px 10px;
  margin-bottom: 0;
  background: #fff url(images/masthead-white_top_880px.gif) top left no-repeat;
}
/*============================================*/



/* === Modules */
#menu-personal {
  float: right;
  margin-top: 30px;
  text-align: right;
}

#menu-primary {
  padding-top: 30px;
}

#messages {
  padding: 0px;
  margin-top: 20px;
}

.messages {
  padding: 10px;
  margin-bottom: 2px;
}

#column-primary .teaser {
  margin-bottom: 1em;
  padding-bottom: 0;
  border-bottom: 1px solid #efefef;
  overflow: hidden;
}

#column-primary .area-specials .teaser {
  border-bottom: 1px solid #ddc;
}

#signup-anonymous {
  border: solid 1px #efefef;
  background-color: #f8f8f8;
  float: right;
  margin-top: 25px;
  padding: 15px;
  text-align: right;
}

.homepage-specials #signup-anonymous {
  margin-top: 40px;
}

.looking-for-wrapper {
  border-top: 1px solid #efefef;
  clear: left;
  padding-top: 1em;
}

.notifications-settings {
  border-top: 1px solid #efefef;
  padding-top: 1em;
  margin-top: 1em;
}

#skip-navigation {
  background-color: #efefef;
  overflow: hidden;
}

/* @group Areas */
.area {
  padding: 10px;
  margin-bottom: 0.5em;
}
.area-text-illustrated {
  padding:10px 0;
}

.area-text-illustrated .logo {
  margin-right: 10px;
  width: auto;
  float: left;
}
.area-text-illustrated .logo img {
  border: 0 none;
}

.area-text-illustrated .content {
  padding-left:91px;
}

.area-interaction {
  margin-left: -15px;
  width: 568px;
  border: 1px solid #fff;
  display: block;
  overflow: hidden;
}

.area-action {
  border-bottom: 1px solid #efefef;
  padding: 5px 0;
  margin: 5px 0; 
  display: block;
  overflow: hidden;
}

.area-readmore {
  text-align: right;
  background: #fff url(images/area-readmore-three-stars.gif) no-repeat left center;
  border: 1px solid #efefef;
  margin-bottom: 0;
}

.area-metadata {
  background-color: #ffeee0;
  border: 1px solid #999;
}

.area-information-default {
  background-color: #f8f8f8;
}

.area-information {
  padding-left:48px;
  background-image:url(images/icon-information-small.gif);
  background-position: 10px 10px;
  background-repeat: no-repeat;
  border: 2px solid #efefef;
}

.area-information-section {
  padding-left:80px;
  background-image:url(images/icon-information.gif);
  background-position: 10px 10px;
  background-repeat: no-repeat;
}

.area-reviews {
  padding-left:80px;
  background-image:url(images/icon-reviews-thumbs-up.gif);
  background-position: 0px 10px;
  background-repeat: no-repeat;
  min-height: 70px;
}

.area-distinct {
  border: 2px solid #efefef;
}

.area-teach {
  background-color: #def;
}

.area-learn {
  background-color: #dfc;
}

.area-primary {
  background-color: #ffeee0;
}

.area-specials {
  background-color: #f4ede3;
}

.area-texture-rough {
  background-image: url('images/bg-rough.gif');
  background-repeat: repeat;
}

.area-texture-rough-paper {
  background-image: url('images/bg-rough-paper.gif');
  background-repeat: repeat;
}

.area-default .area-advertisement {
  background-color: #f8f8f8;
}

#full-width-lower .area-advertisement-banner {
  width: 570px;
  height: 60px;
  text-align: center;
}

.single-column #full-width-lower .area-advertisement-banner {
  width: 700px;
  margin: 0 auto;
}

/* @end */


/* ^^=== Modules: Customizations */
.single-column .area-interaction{
  margin-left: -40px;
  width: 698px;
}

.area-interaction-default, .context-learn .area-interaction-default, .context-teach .area-interaction-default {
  border: 1px solid #FFBB99;
  background: #ffeee0 url(images/area-interaction-default-bg.gif) repeat-x bottom;
}

.context-teach .area-interaction, .area-interaction-teach, .area-interaction-teaching {
  border: 1px solid #99CCFF;
  background: #DDEEFF url(images/area-interaction-teach-bg.gif) repeat-x bottom;
}

.context-learn .area-interaction, .area-interaction-learn, .area-interaction-learning {
  border: 1px solid #99cc99;
  background: #DDFFCC url(images/area-interaction-learn-bg.gif) repeat-x bottom;
}
/*============================================*/


/* @group REVIEW NEEDED */
/* why we are using these, why are we targeting these  */


/* ??? Why "#column-primary" */
/* Local nav. */
/* The local nav region should always contain only menu blocks. We force the theming to a tabbed style with a little bit of padding and margin fiddling. */
#column-primary #region-local-nav {
  margin-top: 3em;
}
#column-primary #region-local-nav .block {
  padding-bottom: 10px;
  border-bottom: 1px solid #ccc;
}
/* END Local nav. */


/*??? What is so Special About this */
#column-primary .context-teach .area-interaction.block, #column-primary .area-interaction-teach.block {
  border-bottom: 1px solid #99CCFF;
  padding: 10px;
}
/* END ??? */


/* ??? Should there be a .class, and try to target it by #masthead .class*/
#masthead #image-container {
  height:170px;
}

.photo-credit {
  background: url(images/logo-creative_commons.gif) center left no-repeat;
  color: #666;
  font-size: 10px;
  padding: 7px 5px 5px 50px;
}

.frontpage #photo-credit {
 padding: 5px 45px 5px 2px;
 width: 150px;
}

#masthead #photo-credit {
  padding: 5px 45px 5px 2px;
  width: 233px;
  text-align: right;
  float: right;
}
/* END ??? */


/* ??? why div#steps and not just #steps */
/* === Steps - initially for booking steps === */
div#steps {
  text-align: center;
}
/* ENd ??? */




/* @end */