* {
margin: 0;
padding: 0;
}

body {
background: #cacaca /*url(../img/bg_body.png) fixed 0 0*/;
color: #000;
font: normal 75% arial, helvetica, sans serif;
margin: 0;
padding: 0;
text-align: center;
width: 100%;
margin-bottom:1.5em;
}

h1, h2, h3, h4 {
font-size: 110%;
}

h2, h3, h4 {
margin-top: 14px;
}

a {
color: #0a5daf;
text-decoration: none;
}

a:hover {
color: #930;
}

p {
margin: 0.75em 0;
}

img {
border: 0;
}

hr {
visibility: hidden;
clear: both;
margin: 0;
padding: 0;
}

li.selected {
font-weight: bold;
}

span.requiredfield {
font-size: 90%;
color: #c03;
}

/* definition lists are used on the glossary index page */

div#content dt {
color: #06c;
font-size: 120%;
font-weight: bold;
margin: 0 0 0 0;
padding: 0;
}

dd {
margin: 0 0 12px 0;
padding: 0;
}

/* container wraps around the body of the page */

div#container {
background: #fff;
text-align: left;
margin: 0 auto;
margin-top:1.5em;
margin-bottom:1.5em;
width: 900px;
}


div#sitetitle {
background: #0d68af /*url(../img/bg_header.png) repeat-x 0 100%*/;
/*border-bottom: 1px solid #fff;*/
color: #fff;
padding:0;
position: relative;
width: 900px;
}

div#sitetitle h1 a {
color: #fff;
font: normal 200% arial;
display: block;
margin: 0;
padding: 0;
}

div#sitetitle img {
margin: 8px 16px;
}

div#flashMessage {
color: #0f70b7;
font-weight: bold;
margin: 1em 0;
padding: 4px;
text-align: left;
}

/* top navigation */

div#top-navigation {
font-family:Verdana, Arial, Helvetica, sans-serif;
font-size:120%;
background-color: #0d68af;
clear: both;
color: #fff;
display: block;
margin: 0 0 1em 0;
padding: 4px 0;
border-bottom:4px solid #0d68af;
}

div#top-navigation ul {
margin: 0 0 0 12px;
padding: 0;
}

div#top-navigation li {
display: inline;
margin: 0 3px 0 0;
padding: 0;
}

div#top-navigation li.account a {
color: #fc6 !important;
}

div#top-navigation li.account a:hover {
color: #fff !important;
}

div#top-navigation li a {
color: #fff;
/*font-weight: bold;*/
padding: 6px 6px;
margin: 0;
}

div#top-navigation li a:hover {
background: #1375c6;
color: #fff;
text-decoration: none;
}

div#top-navigation li a.selected {
background: #1375c6 /*#36f url(../img/bg_top-navigation.png) repeat-x 0 0*/;
color: #fff !important;
}

/* content wrapper */

div#content-container {
line-height: 1.5em;
padding: 0 12px;
}

/* central content div */

div#content {
border-left: 1px solid #efefef;
float: left;
line-height: 1.5em;
padding: 0 0 30px 0;
width: 510px;
}

div#content div.padding {
padding: 0 16px ;
}

div#content h1, div#content h2, div#content h3 {
color: #036;
font: bold 140% arial, helvetica, sans-serif;
letter-spacing: -1px;
margin: 0 0 1em 0;
text-align: left;
}

div#content h1 {
border-bottom: 2px solid #ccc;
margin-bottom: 0;
padding-bottom: 2px;
}

div#content h2 {
border-bottom: 2px solid #efefef;
margin-top: 12px;
}

div#content h3 {
font-size: 110%;
margin-top: 14px;
margin-bottom: 4px;
}

div#content h2.related {
border-bottom: 1px solid #efefef;
font-size: 120%;
margin: 1em 0 0 0;
}

div#content ul {
margin: 1.5em;
}

/* teasers */

div.teaser {
border-bottom: 1px dotted #ccc;
margin: 4px 0;
padding: 4px 0;
}

div.last {
border-bottom: 0;
}

div.teaser h3 {
color: #002a90 !important;
font-size: 120% !important;
margin: 0 !important;
padding: 0 !important;
}

div.teaser div {
margin: 0;
padding: 0;
}

div.meta {
background-color: #eff5ff;
color: #666;
font-size: 90%;
margin: 0 0 1em 0;
padding: 2px;
}

div.meta span {
border-right: 1px dotted #ccc;
margin-right: 4px;
padding-right: 8px;
}

div.meta span.last {
border: 0;
}

div.teaser div.meta {
margin: 2px 0;
padding: 2px 0;
}

/* lists */

ol {
padding-left: 20px;
}

ol.related-list {
list-style-type: none;
margin: 8px 0 0 0;
padding: 0;
}

ol.related-list li {
background: url(../img/blue_bullseye.png) no-repeat 0 5px;
padding: 2px 0 2px 16px;
}

/* pagination */

div.pagination {
border-bottom: 1px dotted #ccc;
clear: both;
display: block;
font-weight: bold;
margin: 1em 0;
padding: 2px 0;
}

div.bottom {
border-top: 1px dotted #ccc;
border-bottom: 0;
padding-top: 6px;
}

div.pagination p.result-count {
color: #930;
display: inline;
float: left;
font-size: 120%;
margin: 0;
}

div.pagination p.page-links {
display: inline;
float: right;
margin: 0;
}

div.pagination a {
background-color: #fff;
border: 1px solid #ccc;
color: #930;
padding: 1px 4px;
}

div.pagination em, span.current {
background-color: #efefef;
border: 1px solid #ccc;
color: #666;
font-style: normal;
padding: 1px 4px;
}

span.current {
margin-right: 3px;
}

div.pagination a:hover {
background-color: #930;
border: 1px solid #930;
color: #fff;
}

a.more-details {
background: url(../img/bullet_arrow.png) no-repeat 100% 100%;
padding-right: 10px;
}

div#googlemap {
border: 1px solid #efefef;
}

/* lists on the service provider page */

ul.service-provider {
background-color: #f8f8f8;
border: 1px solid #efefef;
margin: 1em 0 !important;
padding: 1em 3em;
}

ul.service-provider strong {
color: #666;
}

/* market */

div.market {
background: url(../img/bg_market.png) no-repeat 100% 4px;
padding-right: 100px;
}

/* user profile */

p.lookatme {
background-color: #ffefef;
border: 1px solid #ffcfcf;
margin-top: 14px;
padding: 4px;
}


/* right-hand column */

div#banner-column {
width: 180px;
float: left;
}

div.tile {
background-color: #f8f8f8;
border: 1px solid #ccc;
margin: 0 0 16px 0;
padding: 0 0 4px 0;
}

div.tile h3 {
color: #FFFFFF;
background:#0d68af;
padding: 5px 0 5px 6px;
margin: 0px 0 0 0;
}

div.tile p {
padding: 2px 6px;
}

div.tile ul {
margin: 4px 0 0 0;
padding: 0 4px 0 2px;
}

div.tile li {
background: url(../img/bullet_arrow.png) no-repeat 0 6px;
list-style-type: none;
list-style-image: none;
padding-left: 12px;
margin-bottom: 2px;
}

div#banner-column img.banner {
margin-bottom: 16px;
}

/* summary table */

table#summary {
border-collapse: collapse;
margin-top: 14px;
width: 100%;
}

/* set all the borders */

table#summary th,
table#summary td {
border: 1px solid #efefef;
}

table#summary th {
background: #f6f6f6 url(../img/bg_th.png) repeat-x 0 100%;
border-bottom: 0 !important;
color: #060;
padding: 4px;
text-align: left;
}

table#summary th a {
color: #060;
}

table#summary td {
padding: 4px;
}

table#summary td.label {
font-weight: bold;
}

table#summary td.selected {
background-color: #efffbf !important;
}

table#summary tr#last {
background-color: #fafafa;
color: #036;
font-size: 120%;
}

table#summary tr#submitrow {
background-image: url(../img/bg_th.png);
padding: 8px;
text-align: center;
}

table#summary checkbox {
border: none;
display: inline;
}

/* error messages - refactor */

ul.errors {
background-color: #ffc;
color: #0f70b7;
margin: 0 !important;
padding: 1em 1.5em !important;
}

p.errorMessage {
color: #930;
font-size: 120%;
font-weight: bold;
}

div#authMessage {
background: url(../img/icons/error.png) no-repeat 4px 40%;
color: #900;
font-weight: bold;
margin: 12px 0;
padding: 6px 0 6px 22px;
}

/* this appears below an invalid form field */
div.error-message {
background: url(../img/icons/error.png) no-repeat 0 40%;
color: #900;
font-weight: bold;
padding: 2px 0 2px 22px;
}

/* footer */

div#footer {
background: #1c3f95;
color: #FFFFFF;
clear: both;
display: block;
font-size: 90%;
margin: 2em 0 0 0;
padding: 4px 0 8px 14px;
text-align: left;
}

div#footer a {
color:#FFFFFF
}


/* debug styles */

table.cake-sql-log {
background-color: #fff;
border-collapse: collapse;
border: 1px solid #ccc;
clear: both;
color: #666;
font-size: 90%;
margin-top: 20px;
}

table.cake-sql-log th {
background-color: #e9eff7;
border: 1px solid #ccc;
margin: 1px;
padding: 2px;
vertical-align: bottom;
}

table.cake-sql-log td {
border: 1px solid #ccc;
margin: 1px;
padding: 2px;
text-align: left !important;
vertical-align: top;
}

#toplinks {
top:10px; 
right:30px; 
position:relative; 
float:right
}

#toplinks a {
color:#FFFFFF;
}z