* {
  
  margin: 0;
  padding: 0;
}
/*----------------------------------------------------------------------
  =GENERAL CLASSES
  ----------------------------------------------------------------------*/
.clear, .clear-block {
  clear: both;
}
/*----------------------------------------------------------------------
  =GENERAL POSITIONING
  ----------------------------------------------------------------------*/
#page {
  margin: 0 auto;
  width: 900px;
}
#container {
  background: #EFEFEF url('i/page-background.jpg') repeat-x top left;
  float: right;
  margin-bottom: 20px;
  min-height: 600px;
  padding-bottom: 20px;
  padding-top: 70px; /*to make way for the logo*/
  width: 900px;
}
.not-front #container {
  padding-top: 110px;
}
#footer-wrapper {
  margin-bottom: 20px;
}
#sidebar-left {
  float: left;
  margin-left: 10px;
  width: 292px;
}
#main {
  float: right;
  margin-right: 10px;
  width: 584px;
}
.no-sidebars #main {
  margin-right: 0;
  width: 875px;
}

/*----------------------------------------------------------------------
  =FONTS GENERAL
  ----------------------------------------------------------------------*/
body {
  background-color: #EFEFEF;
  font-family: Tahoma, Helvetica, Arial, Verdana, sans-serif;
  font-size: 62.5%;
}
p, ul {
  color: #555;
  font-size: 1.2em;
  line-height: 1.6;
  margin-bottom: 5px;
}
ul ul {
  font-size: 1em;
}
.not-front #sidebar-left .block-aggregator ul {
  font-size: 1.2em;
}
.not-front #sidebar-left ul a {
  color: #7B807B;
}
.not-front #sidebar-left ul a:hover {
  color: #DF2800;
}
h1, h2, h2 a, h3, h4, h5, h6 {
  color: #7B807B;
  font-family: Gotham-Bold, Helvetica, Arial, Verdana, sans-serif;
  margin-bottom: 10px;
}
h1 {
  font-size: 3.5em;
  letter-spacing: -1px;
  line-height: 1.1;
  margin-bottom: 40px;
}
h2 {
  background: transparent url('i/h2-background.gif') repeat-x left bottom;
  color: #7B807B;
  font-size: 2.1em;
  line-height: 1;
  margin-bottom: 15px;
  padding-bottom: 15px;
}
.special h2 {
  background-image: url('i/h2-special-background.gif');
  color: #DF2800;
}
h3 {
  font-size: 1.5em;
  margin-top: 20px;
}
a {
/*  color: #111;*/
  color: #5C8FC6;
  outline: none;
  text-decoration: none;
}
.page-admin a {
  color: blue;
}
a:hover,
a.active,
.more-link a:hover,
a.tagadelic:hover,
a.tagadelic.active,
li a.active,
div.links ul.links li a:hover {
  color: #DF2800;
}
a:hover {
  transition: all 0.4s ease-in-out;

  -moz-transition: all 0.4s ease-in-out;
  -ms-transition: all 0.4s ease-in-out;
  -o-transition: all 0.4s ease-in-out;
  -webkit-transition: all 0.4s ease-in-out;
}
p a {
/*  border-bottom: 1px solid #DFDFDF;*/
/*  color: #DF2800;*/
  color: #5C8FC6;
}
p a:hover {
  border-color: #DF2800;
}
/*----------------------------------------------------------------------
  =BODY
  ----------------------------------------------------------------------*/
body {
  background-color: #eee;
}

/*----------------------------------------------------------------------
  =HEADER
  ----------------------------------------------------------------------*/
#site-name {
  height: 0;
  text-indent: -1000em;
}
#header {
  height: 40px;
  position: relative;
}
#header a {
  background: none;
  padding: 0;
}
#logo img:hover {
  transform: rotate(-2deg);
  transition: all 0.2s ease-in-out;
  
  -moz-transform: rotate(-2deg);
  -ms-transform: rotate(-2deg);
  -o-transform: rotate(-2deg);
  -webkit-transform: rotate(-2deg);
  
  -moz-transition: all 0.2s ease-in-out;
  -ms-transition: all 0.2s ease-in-out;
  -o-transition: all 0.2s ease-in-out;
  -webkit-transition: all 0.2s ease-in-out;
}
#logo-title {
  left: -40px;
  position: relative;
  top: 10px;
  width: 407px;
}
/*----------------------------------------------------------------------
  =SEARCH
  ----------------------------------------------------------------------*/
#search-box {
  position: absolute;
  right: 0px;
  text-align: right;
  top: 80px;
  width: 200px;
}
/*----------------------------------------------------------------------
  =PRIMARY-LINKS
  ----------------------------------------------------------------------*/
#navigation {
  max-width: 560px;
  padding: 0 20px 20px 0px;
  position: absolute;
  right: -20px;
  top: 0px;
}
#primary {
  padding: 0 0 0 20px;
}
#primary ul {
  font-family: Verdana, Arial, Helvetica, sans-serif;
  font-size: 0.8em;
}
#primary li {
  background: transparent;
  display: block;
  float: left;
  height: 54px;
  margin: 0 4px;
}
#primary li.last {
  margin-right: 0;
}
#primary li a {
  color: #777;
  display: block;
  font-weight: bold;
  padding: 15px 0 8px;
  text-decoration: none;
  text-transform: uppercase;
}
#primary li.active a, #primary li a:hover, #primary li.active-trail a {
  border-bottom: 4px solid #DF2800;
  color: #DF2800;
}
#primary li a:hover {
  transition: none;

  -moz-transition: none;
  -ms-transition: none;
  -o-transition: none;
  -webkit-transition: none;
}
/*----------------------------------------------------------------------
  =LISTS
  ----------------------------------------------------------------------*/
.block ul {
  padding-left: 0;
}
.block ul.menu li {
  margin-left: 0;
}
li.leaf,
li.collapsed,
li.expanded {
  list-style-image: none;
  list-style-type: none;
}
li.leaf a,
li.collapsed a,
li.expanded a {
  background: transparent url('i/menu-leaf-sprite.png') no-repeat 0 -96px;
  font-size: 1.1em;
  padding-left: 16px;
}
li.collapsed a {
  background-position: 0 -296px;
}
li.expanded a {
  background-position: 0 -196px;
}
li.expanded li.leaf a {
  background-position: 0 -96px;
  margin-left: 10px;
}
li.leaf a:hover,
li.leaf a.active {
  background-position: 0 4px;
}
/*----------------------------------------------------------------------
  =SUBMENU
  ----------------------------------------------------------------------*/
.submenu .content {
  background: transparent url('i/li-background.gif') repeat-x scroll center top;  
  padding: 12px 0 0;
}
.submenu ul.menu {
  background: transparent url('i/li-background.gif') repeat-x scroll center bottom;
  font-family: Verdana, Arial, Helvetica, sans-serif;
  font-size: 1em;
  font-weight: bold;
  padding: 0 0 10px;
  text-transform: uppercase;
}
.submenu ul.menu li {
  list-style-image: none;
  list-style-type: none;
  margin: 0 0 5px;
}
.submenu ul.menu li a {
  background: transparent url('i/menu-item-background.png') no-repeat left -18px;
  padding-left: 15px;
}
#sidebar-left .submenu ul.menu li a.active {
  background-position: left 1px;
  color: #DF2800;
}
/*----------------------------------------------------------------------
  =CONTENT-TOP
  ----------------------------------------------------------------------*/
#content-top {
  background: transparent url('i/banner-background.png') no-repeat;
  height: 200px;
  left: -25px;
  padding: 25px;
  position: relative;
  width: 900px;
}
#content-top .views-field-body {
  text-indent: -1000em;
}
/*----------------------------------------------------------------------
  =COLUMNS
  ----------------------------------------------------------------------*/
#columns {
  background: transparent url('i/li-background.gif') repeat-x bottom;
  margin-bottom: 25px;
  padding-bottom: 5px;
}
#columns .block {
  float: left;
  margin-left: 20px;
  width: 272px;
}
#columns h3 {
  line-height: 1;
  margin-top: 0;
}
/*----------------------------------------------------------------------
  =VIEWS
  ----------------------------------------------------------------------*/
div.view-header {
  margin-bottom: 2.5em;
}
/*----------------------------------------------------------------------
  =PORTFOLIO VIEW on front page
  ----------------------------------------------------------------------*/
.block .view-portfolio a img {
  background: transparent url('i/portfolio-img-background.png') no-repeat top left;
  margin: -10px 0 5px -10px;
  padding: 10px;
}
.block .view-portfolio a:hover img {
  background-position: bottom left;
}
/*----------------------------------------------------------------------
  =BLOG VIEW on front page
  ----------------------------------------------------------------------*/
.front .view-blog .views-row-odd, .front .view-blog .views-row-even {
  margin-bottom: 20px;
} 

.front .view-blog h3 {
  clear: right;
}
.front .view-blog h3 a {
  color: #7B807B;
}
.front .view-blog h3 a:hover {
  color: #DF2800;
}
/*#block-views-blog-block_1 .more-link,*/
.more-link {
  margin-bottom: 2.5em;
  margin-top: 10px;
}
/*#block-views-blog-block_1 .more-link a,*/
.more-link a {
  background: #eee;
  border-bottom: 1px solid #ddd;
  color: #5C8FC6;
  display: inline-block;
  font-weight: bold;
  padding: 3px;
  text-transform: uppercase;
  width: 100%;
}
#block-views-blog-block_1 .view-content .views-row-last .node {
  margin-bottom: 20px;
}
.view .more, .views-field-view-node {
  display: block;
  font-family: Georgia, Times New Roman, Times, sans-serif;
  font-style: italic;
  width: 100%;
}
.view .more a, div.views-field-view-node a {
  background: transparent url('i/read-more-sprite.png') no-repeat left top;
  display: block;
  text-indent: -1000em;
  height: 12px;
  width: 100%;
}
.views-field-view-node a:hover {
  background-position: left bottom;
}
#block-views-blog-block_1 .node div.links ul.links {
  padding-left: 0;
}
/*----------------------------------------------------------------------
  =MAIN CONTENT
  ----------------------------------------------------------------------*/
#content-content h2 {
  margin-top: 20px;
}
.front #content-content h2 {
  margin-top: 0;
}
#main-squeeze {
  margin-right: 20px;
}
.meta {
  color: #9999AA;
  font-size: 1.1em;
  letter-spacing: 1px;
  margin-bottom: 10px;
  text-transform: uppercase;
}
.picture img {
  background: transparent url('i/picture-background.png') no-repeat;
  float: left;
  margin: -6px 0 0 -10px;
  padding: 10px 18px 10px 10px;
}
.node {
  margin-bottom: 20px;
}
.node .terms {
/*  border-top: 1px solid #ddd;*/
  clear: both;
  margin-top: 10px;
  padding-top: 10px;
/*  text-align: right;*/
}
.node .terms li, .node .terms p {
  text-transform: uppercase;
}
.node .terms p {
  color: #ccb;
  font-size: 1em;
  font-weight: bold;
/*  line-height: 1.8;*/
  padding-right: 4px;
  text-transform: uppercase;
}
.terms p {
  display: inline;
}
.terms ul li a {
  color: #bbc;
}
.terms ul li a:hover,
.terms ul li:hover a {
  color: #DF2800;
}
div.links {
  margin-bottom: 10px;
  margin-top: 10px;
}
div.links ul.links li,
.comment ul.links li,
.node .terms li {
  background-color: #ddd;
  border-bottom: 1px solid #ccc;
  font-family: Verdana, Arial, Helvetica, sans-serif;
  font-size: 0.8em;
  font-weight: bold;
  padding-bottom: 3px;
  padding-top: 3px;
  text-transform: uppercase;
}
.node .terms li {
  background: none;
  border: none;
}
div.links ul.links li a {
  color: #5C8FC6;
}
#content .content ul {
  list-style-type: none;
  padding-left: 20px;
}
#content .content ul li {
  background: transparent url('i/list-bullet.png') no-repeat center left;
  padding-left: 20px;
}
.not-front #content .content img.inline-imagefield {
  float: right;
  padding: 10px 0 10px 10px;
}
#content .content a.image-link {
  padding: 0;
}
#content .content object {
  clear: left;
  display: block;
  margin: 10px 0;
}
/*----------------------------------------------------------------------
  =PORTFOLIO VIEW ON OUR WORK PAGE
  ----------------------------------------------------------------------*/
#main .view-portfolio .views-row-odd, #main .view-portfolio .views-row-even {
  float: left;
}
#main .view-portfolio .views-row-even {
  left: 10px;
  position: relative;
}
#main .view-portfolio a img, #main .field-field-image a img,
.node-type-portfolio .images a img {
  background: transparent url('i/portfolio-img-background.png') no-repeat top left;
  margin: -10px 0 5px -10px;
  padding: 10px;
}
.node-type-portfolio .images {
  margin-left: -18px;
  margin-top: 30px;
}
#main .view-portfolio a:hover img, 
#main .field-field-image a:hover img, 
.node-type-portfolio .images a:hover img {
  background-position: bottom left;
}
.node .field-field-viewreference {
  margin-top: 20px;
}
/*----------------------------------------------------------------------
  =PORTFOLIO PAGE
  ----------------------------------------------------------------------*/
.node-type-portfolio .node p.client {
  font-weight: bold;
}
/*----------------------------------------------------------------------
  =FEEDBACK PAGE
  ----------------------------------------------------------------------*/
.view-feedback .views-row {
  background: transparent url('i/quotes.png') left top no-repeat;
  font-size: 1.1em;
  margin-bottom: 20px;
  margin-left: -32px;
  padding-left: 32px;
}
/*----------------------------------------------------------------------
  =TAGS
  ----------------------------------------------------------------------*/
a.tagadelic {
  color: #5C8FC6;
}
/*----------------------------------------------------------------------
  =CONTACT PAGE
  ----------------------------------------------------------------------*/
#webform-component-message {
/*  width: 292px;*/
}
#webform-client-form-8 {
  margin-top: 20px;
}
.node-type-webform .form-item {
  padding: 5px 0 0;
}
/*.node-type-webform label*/
label {
  color: #555;
  font-size: 1.1em;
  padding-bottom: 3px;
}
.node-type-webform .form-checkboxes {
  padding-left: 20px;
}
.node-type-webform .form-checkboxes .form-item {
  padding: 5px 0 0;
}
.node-type-webform .form-checkboxes input {
  vertical-align: bottom;
}
/*----------------------------------------------------------------------
  =ABOUT
  ----------------------------------------------------------------------*/
img.mugshot {
  background: transparent url('i/picture-background.png') no-repeat;
  float: left;
  margin: -6px 0 0 -10px;
  padding: 10px;
}
img.da {
  float: right;
  padding-left: 10px;
}
div.bio {
  margin-bottom: 40px;
  margin-top: 30px;
  position: relative;
}
div.bio p {
  margin-left: 110px;
}
/*----------------------------------------------------------------------
  =SIDEBAR-LEFT
  ----------------------------------------------------------------------*/
#sidebar-left .block {
  margin-bottom: 20px;
  margin-left: 20px;
}
.sidebar .item-list ul {
  padding-left: 0;
}
.sidebar .item-list ul li {
  background: transparent url('i/li-background.gif') repeat-x bottom;
  list-style-type: none;
  margin: 0 0 10px;
  padding: 0 0 10px;
}
.sidebar .item-list ul li.last {
  background: none;
}
.block-aggregator .more-link {
  display: none; /*TODO remove this properly. May have to generate a new block.*/
}
.not-front #sidebar-left {
  margin-top: 78px;
  width: 239px;
}
#block-menu-menu-le-tour-de-drupal {
  margin-bottom: 20px;
}
/*----------------------------------------------------------------------
  =TWITTER
  ----------------------------------------------------------------------*/
a.twitter-id {
  background: transparent url('i/twitter.png') left top no-repeat;
  border-bottom: none;
  display: block;
  line-height: 16px;
  padding-left: 46px;
  padding-top: 20px;
}
.view-tweets .view-header {
  margin-bottom: 12px;
}
/*----------------------------------------------------------------------
  =FOOTER
  ----------------------------------------------------------------------*/
#footer a {
  background: none;
  padding: none;
}
#footer, #footer ul.menu {
  text-align: right;
}
#footer ul.menu {
  margin-bottom: 14px;
}
#footer ul.menu li {
  display: inline;
  list-style-type: none;
}
#footer ul.menu li.last {
  padding-right: 0;
}
.legal {
  margin-top: 20px;
}
.legal p {
  font-size: 1em;
}
/*----------------------------------------------------------------------
  =COURSE CONTENT TYPE
  ----------------------------------------------------------------------*/
.node-type-course div.fieldgroup .content,
.node-type-course .field-field-course-instance .field-item {
  color: #555;
  font-size: 1.3em;
  line-height: 1.6;
  padding: 0;
}
.field-field-course-instance .field-label {
  background: transparent url('i/h2-background.gif') repeat-x left bottom;
  color: #7B807B;
  font-family: Gotham-Bold, Helvetica, Arial, Verdana, sans-serif;
  font-size: 2.1em;
  line-height: 1;
  margin-bottom: 15px;
  margin-top: 20px;
  padding-bottom: 15px;
}
.node-type-course .field-field-course-instance .views-row {
  margin-bottom: 15px;
}
#content .views-field-field-location-value {
  font-weight: bold;
}
#content .views-field-field-location-value .field-content:after {
  content: ".";
}
.views-field-field-booking-link-url a {
  background: transparent url('i/book-now-button.png') left top no-repeat;
  display: block;
  height: 20px;
  margin: 5px 0;
  outline: hidden;
  text-indent: -1000em;
  width: 80px;
}
.views-field-field-booking-link-url a:hover {
  background-position: left bottom;
}
/*----------------------------------------------------------------------
  =COURSE-INSTANCE CONTENT TYPE
  ----------------------------------------------------------------------*/
p.when-and-where {
  color: #555;
  font-weight: bold;
}
/*----------------------------------------------------------------------
  =ADMIN
  ----------------------------------------------------------------------*/
div.admin .left {
  clear: none;
  margin-left: 0;
}
div.admin .right {
  clear: none;
  margin-right: 0;
}
/**
 * Admin Styles
 */
div.admin-panel,
div.admin-panel .description,
div.admin-panel .body,
div.admin,
div.admin .left,
div.admin .right,
div.admin .expert-link,
div.item-list,
.menu {
  margin: 0;
  padding: 0;
}
div.admin .left {
  float: left; /* LTR */
  width: 48%;
}
div.admin .right {
  float: right; /* LTR */
  width: 48%;
}
div.admin-panel {
  padding: 1em 1em 1.5em;
}
div.admin-panel .description {
  margin-bottom: 1.5em;
}
div.admin-panel dl {
  margin: 0;
}
div.admin-panel dd {
  color: #898989;
  font-size: 0.92em;
  line-height: 1.3em;
  margin-top: -.2em;
  margin-bottom: .65em;
}
table.system-status-report th {
  border-color: #d3e7f4;
}
#autocomplete li.selected, tr.selected td, tr.selected td.active {
  background: #027ac6;
  color: #fff;
}
tr.selected td a:link, tr.selected td a:visited, tr.selected td a:active {
  color: #d3e7f4;
}
tr.taxonomy-term-preview {
  opacity: 0.5;
}
tr.taxonomy-term-divider-top {
  border-bottom: none;
}
tr.taxonomy-term-divider-bottom {
  border-top: 1px dotted #CCC;
}
dl {
  margin: 0.5em 0 1em 1.5em; /* LTR */
}
dl dt {
}
dl dd {
  margin: 0 0 .5em 1.5em; /* LTR */
}
img, a img {
  border: none;
}
img.left {
  float: left;
  margin: 0 20px 10px 0;
}
img.right {
  float: right;
  margin: 0 0 10px 10px;
}
table {
  margin: 1em 0;
  width: 100%;
}
thead th {
  border-bottom: 2px solid #d3e7f4;
  color: #494949;
  font-weight: bold;
}
th a:link, th a:visited {
  color: #6f9dbd;
}
td, th {
  padding: .3em .5em;
}
tr.even, tr.odd, tbody th {
  border: solid #d3e7f4;
  border-width: 1px 0;
}
tr.odd, tr.info {
  background-color: #edf5fa;
}
tr.even {
  background-color: #fff;
}
tr.drag {
  background-color: #fffff0;
}
tr.drag-previous {
  background-color: #ffd;
}
tr.odd td.active {
  background-color: #ddecf5;
}
tr.even td.active {
  background-color: #e6f1f7;
}
td.region, td.module, td.container, td.category {
  border-top: 1.5em solid #fff;
  border-bottom: 1px solid #b4d7f0;
  background-color: #d4e7f3;
  color: #455067;
  font-weight: bold;
}
tr:first-child td.region, tr:first-child td.module, tr:first-child td.container, tr:first-child td.category {
  border-top-width: 0;
}
span.form-required {
  color: #ffae00;
}
span.submitted, .description {
  font-size: 0.92em;
  color: #898989;
}
.description {
  line-height: 150%;
  margin-bottom: 0.75em;
  color: #898989;
}
.messages, .preview {
  margin: .75em 0 .75em;
  padding: .5em 1em;
}
div.error {
  background: #CE2500;  
  border: 3px dotted #DF2800;
  color: #fff;
  font-size: 1.2em;
  padding: 10px;
}
div.messages {
  background: #5C8FC6;  
  border: 3px dotted #5380B2;
  color: #fff;
  font-size: 1.2em;
  margin: 0 20px 20px;
  padding: 10px;
}
div.messages a {
  color: #EFEFEF;
}
.error li {
  color: #fff;
}
.form-item input.error, .form-item textarea.error, .form-item select.error {
  border: 2px solid #DF2800;
}
.messages ul {
  color: #fff;
  font-size: 1.5em;
  list-style-type: none;
  margin: 0;
}
.form-checkboxes, .form-radios, .form-checkboxes .form-item, .form-radios .form-item {
  margin: 0.25em 0;
}
#center form {
  margin-bottom: 2em;
}
.form-button, .form-submit {
  margin: 2em 0.5em 1em 0; /* LTR */
}
#dblog-form-overview .form-submit,
.confirmation .form-submit,
.search-form .form-submit,
.poll .form-submit,
fieldset .form-button, fieldset .form-submit,
.sidebar .form-button, .sidebar .form-submit,
table .form-button, table .form-submit {
  margin: 0;
}
.box {
  margin-bottom: 2.5em;
}

/*----------------------------------------------------------------------
  =COMMENTS
  ----------------------------------------------------------------------*/
#comments .box {
/*  background: #fff;*/
/*  border: 1px solid #eee;*/
  margin-top: 40px;
/*  padding: 0 20px 10px;*/
}
#comments h2 {
  background: none;
  border-bottom: 1px solid #eee;
  font-size: 1.1em;
  text-transform: uppercase;
}
#comments h3 {
  margin-bottom: 2px; 
  margin-top: 25px;
  padding-top: 15px;
}
#comments .picture img {
  margin-top: 8px;
}
#comments h3 a {
  color: #5C8FC6;
}
#comments .submitted {
  color: #99A;
  letter-spacing: 1px;
  margin-bottom: 10px;
  text-transform: uppercase;
}
.comment ul.links {
/*  text-align: right;*/
}
.comment ul.links li {
  background: #eee;
}
.comment ul.links li:hover {
  background: #ddd;
}
.comment ul.links li a {
  color: #bbc;
}
.comment ul.links li a:hover,
.comment ul.links li:hover a {
  color: #DF2800;
}
.comment-author {
  background: #fff;
  padding: 0 18px 12px;
}
.form-item textarea,
.form-item input {
  border: 2px solid #eee;
  padding: 4px;
}
.form-item textarea:focus,
.form-item input:focus {
  background: #eee;
  border-color: #5C8FC6;
}
#content .content ul.tips {
  padding: 0;
}
#content .content ul.tips li {
  font-size: 1em;
}
p.filter-tips {
 font-size: 1em;
}