/******************************************************************************
  DEFAULTS
******************************************************************************/

div, img {
  margin: 0;
  border: none;
  padding: 0;
}

/******************************************************************************
  TOP LEVEL STYLE
******************************************************************************/

body {
	margin: 0;
	font-family: Arial, sans-serif;
	font-size: 13px;
}

/******************************************************************************
  MAIN LAYOUT
******************************************************************************/

div.main {
	width: 950px;
	margin: 0 auto;
}

div.left {
	width: 120px;
	float: left;
}

div.centre {
	width: 590px;
	float: left;
}

div.centre img.logo {
  margin-top: 10px;
}

div.right {
	width: 240px;
	float: left;
	background-image: url("../images/bus.png");
	background-repeat: no-repeat;
	vertical-align: middle;
}

div.foot {
  margin-top: 10px;
	clear: both;
}

/******************************************************************************
  START
******************************************************************************/

div.start {
	background-color: #ef3d34;
  color: #ffffff;
  text-align: center;
  font-size: 20px;
  font-weight: bold;
}

/******************************************************************************
  BOURNEMOUTH PICTURES
******************************************************************************/

#bournemouth-images div {
	padding: 10px 10px 30px 10px;
	height: 80px;
	width: 100px;
	background-color: #003d7e;
	color: #ffffff;
  text-align: center;
  font-style: italic;
}

#bournemouth-images img {
	display: block;
  border: none;
  width: 120px;
  height: 120px;
}

/******************************************************************************
  MENU
******************************************************************************/

div.menu {
  margin-top: 180px;
	border-left: 1px solid #003d7d;
	padding-left: 10px;
}

div.menu p {
  margin: 10px 0;
}

div.menu a {
  color: #000000;
}

/******************************************************************************
  FOOT
******************************************************************************/

div.foot {
  padding-top: 10px;
}

div.foot p {
	margin: 0;
	border-top: 1px solid #003d7d;
	border-bottom: 1px solid #003d7d;
	padding: 0;
	text-align: center;
	font-size: 10px;
	line-height: 20px;
}

/******************************************************************************
  CENTRE DEFAULTS
******************************************************************************/

div.centre {
	text-align: center;
}

div.centre h1 {
	font-size: 25px;
	color: #003d7e;
}

div.centre h2{
	font-size: 20px;
}

div.centre p {
    text-align: left;
	margin: 20px 25px;
}

div.centre hr {
	margin: 20px 25px;
}

div.centre ul {
    text-align: left;
	margin: 20px 80px;
}

/******************************************************************************
  INDEX
******************************************************************************/

body.index div.centre span.service {
  color: #ffffff;
	background-color: #003d7e;
}

body.index div.centre span.fare {
	font-size: 65px;
	font-weight: bold;
	color: #ef3d34;
	vertical-align: middle;
	margin-left: 35px;
}

/******************************************************************************
  TIME TABLE
******************************************************************************/

body.time-table div.centre span.service {
  color: #ffffff;
	background-color: #003d7e;
}

body.time-table div.centre table.airport-ti,
body.time-table div.centre table.town-loop {
	background-color: #ef3d34;
  color: #ffffff;
	margin: 0 auto;
	border-collapse: collapse;
	border: 2px solid #000000;
}

body.time-table div.centre table.airport-ti,
body.time-table div.centre table.town-loop .title {
  font-size: 15px;
}

body.time-table div.centre table.airport-ti a,
body.time-table div.centre table.town-loop a {
  color: #ffffff;
  text-decoration: none;
}

body.time-table div.centre td {
	border: 1px solid #ffffff;
  padding: 2px 4px;
	text-align: center;
}

body.time-table div.centre td img {
	vertical-align: top;
  margin: -1px 0;
}

body.time-table div.centre tr.title td {
  font-style: italic;
  font-weight: bold;
  text-align: left;
}

body.time-table div.centre td.stop,
body.time-table div.centre td.every-hour {
  background-color: #003d7e;
}

body.time-table div.centre td.no-service {
  background-color: #3f3f3f;
}

body.time-table div.centre tr.selected td,
body.time-table div.centre tr.main-selected td {
  background-color: #ff5f55;
}

body.time-table div.centre tr.selected td.stop,
body.time-table div.centre tr.selected td.every-hour,
body.time-table div.centre tr.main-selected td.stop,
body.time-table div.centre tr.main-selected td.every-hour {
  background-color: #205d9d;
}

body.time-table div.centre tr.selected td.no-service,
body.time-table div.centre tr.main-selected td.no-service  {
  background-color: #7f7f7f;
}

body.time-table div.centre td.stop {
  text-align: left;
}

body.time-table div.centre tr.subtitle,
body.time-table div.centre tr.main,
body.time-table div.centre tr.main-selected {
  font-weight: bold;
}

body.time-table div.centre col.every-hour {
  width: 60px;
}

body.time-table div.centre img.number,
body.time-table div.centre img.number-screen,
body.time-table div.centre img.number-print {
	width: 18px;
  height: 18px;
}

body.time-table div.centre img.ti,
body.time-table div.centre img.ti-screen
body.time-table div.centre img.ti-print {
	width: 16px;
  height: 18px;
}

body.time-table div.centre p.key {
  margin-left: 60px;
}

body.time-table div.centre p.key img {
	vertical-align: middle;
}

body.time-table div.centre img.number-print,
body.time-table div.centre img.ti-print {
  display: none;
}

body.time-table div.centre img.stop-map {
  border: 2px solid #000000;
}

/******************************************************************************
  ROUTE
******************************************************************************/

body.route div.centre img.logo {
  display: none;
}

body.route div.centre img.route {
  display: block;
  margin: 20px auto;
}

/******************************************************************************
  FARES
******************************************************************************/

body.fares div.centre h2 {
  color: #003d7e;
  font-size: 18px;
}

body.fares div.centre table {
	background-color: #ef3d34;
  color: #ffffff;
	margin: 0 auto;
	border-collapse: collapse;
	border: 2px solid #000000;
}

body.fares div.centre td,
body.fares div.centre th {
	border: 1px solid #ffffff;
  padding: 2px 12px;
	text-align: left;
}

body.fares div.centre th {
  font-size: 15px;
  font-style: italic;
  font-weight: bold;
}

body.fares div.centre .left,
body.fares div.centre th {
  background-color: #003d7e;
}

body.fares div.centre table.add-fares {
  margin-bottom: 20px;
}

body.fares div.centre table.add-fares .left {
  width: 300px;
}

body.fares div.centre table.add-fares h3,
body.fares div.centre table.add-fares p {
  margin: 0;
}

body.fares div.centre table.add-fares p {
  font-size: 11px;
  text-align: left;
}

/******************************************************************************
  CONNECTIONS
******************************************************************************/

body.connections div.centre ul.links-left,
body.connections div.centre ul.links-right {
  margin: 0 0 20px 0;
  padding: 0;
  text-indent: 0;
  float: left;
  width: 295px;
 }

body.connections div.centre li {
  list-style-position: inside;
}

body.connections div.centre ul.links-left li {
  margin-left: 80px;
}

body.connections div.centre .clear {
  clear: both;
}

body.connections table.regional {
  width: 80%;
  margin-left: 10%;
  margin-right: 10%;
  border-collapse: collapse;
}

body.connections table.regional th,
body.connections table.regional td {
  border: 1px solid #000000;
  text-align: left;
}

/******************************************************************************
  CONTACT
******************************************************************************/

body.contact div.centre p {
  margin-left: 60px;
  margin-right: 60px;
}

body.contact div.centre table {
  margin-left: 60px;
  width: 300px;
}

body.contact div.centre p.numbers {
  font-size: 11px;
}

/******************************************************************************
  HOTEL CHOOSER
******************************************************************************/

body.hotel-chooser div.centre h2 {
  margin-left: 60px;
  margin-right: 60px;
}

body.hotel-chooser div.centre p {
  text-align: center;
}

body.hotel-chooser div.centre div.hotels {
  margin: 0 50px 0 60px;
}

body.hotel-chooser div.centre div.hotels ul {
  margin: 0 0 20px 0;
  padding: 0 10px 0 20px;
  text-indent: -20px;
  float: left;
  width: 130px;
}

body.hotel-chooser div.centre div.hotels li {
  list-style-type: none;
  font-size: 11px;
  margin: 5px 0;
}

body.hotel-chooser div.centre .clear {
  clear: both;
}

/******************************************************************************
  HOTEL INFO
******************************************************************************/

body.hotel-info div.centre {
  width: 504px;
  padding-left: 43px;
  padding-right: 43px;
}

body.hotel-info div.centre p.print {
  margin: -50px 0 0 0;
  text-decoration: underline;
}

body.hotel-info div.centre h1 {
  text-align: left;
}

body.hotel-info div.centre h1 span {
  background-color: #ffffff;
}

body.hotel-info div.centre p.nearest-stop {
  margin: 10px 0;
}

body.hotel-info div.centre table.time-table {
	background-color: #ef3d34;
  color: #ffffff;
	margin: 0 auto;
	border-collapse: collapse;
	border: 2px solid #000000;
  width: 100%;
}

body.hotel-info div.centre table.time-table td {
	border: 1px solid #ffffff;
  padding: 1px 2px;
	text-align: center;
  font-size: 12px;
}

body.hotel-info div.centre tr.title td {
  font-size: 13px;
  font-style: italic;
  font-weight: bold;
  text-align: left;
}

body.hotel-info div.centre table.time-table img {
	vertical-align: top;
  margin: 0;
}

body.hotel-info div.centre span.number {
	display: none;
}

body.hotel-info div.centre td.stop,
body.hotel-info div.centre td.every-hour {
  background-color: #003d7e;
}

body.hotel-info div.centre td.no-service {
  background-color: #3f3f3f;
}

body.hotel-info div.centre tr.selected td.stop,
body.hotel-info div.centre tr.selected td.every-hour {
  background-color: #205d9d;
}

body.hotel-info div.centre tr.selected td.no-service {
  background-color: #7f7f7f;
}

body.hotel-info div.centre tr.selected td {
  background-color: #ff5f55;
}

body.hotel-info div.centre table.time-table td.stop {
  text-align: left;
}

body.hotel-info div.centre tr.subtitle {
  font-weight: bold;
}

body.hotel-info div.centre col.every-hour {
  width: 60px;
}

body.hotel-info div.centre img.number {
	height: 15px;
  width: 15px;
}

body.hotel-info div.centre p.nearest-stop img.number {
	height: 18px;
  width: 18px;
  vertical-align: -3px;
}

body.hotel-info div.centre img.ti {
	height: 15px;
  width: 13px;
}

body.hotel-info div.centre div.hotel-details,
body.hotel-info div.centre div.stop-map {
  margin: 10px 0;
  border-top: 1px solid #003d7d;
  padding-top: 10px;
  width: 100%;
}

body.hotel-info div.centre img.area-map {
  display: block;
  margin: 0 0 0 10px;
  border: 2px solid #000000;
  float: right;
  width: 300px;
  height: 200px;
}

body.hotel-info div.centre div.hotel-details p {
  margin: 0 0 5px 0;
}

body.hotel-info div.centre div.clear {
  clear: both;
  height: 0;
}

body.hotel-info div.centre table.key {
  margin: 0 auto 5px auto;
  font-size: 11px;
  border-collapse: collapse;
}

body.hotel-info div.centre table.key td {
  padding: 0 2px;
}

body.hotel-info div.centre table.key img.number {
  vertical-align: -3px;
}

body.hotel-info div.centre td.icon {
  width: 60px;
  text-align: right;
}

body.hotel-info div.centre table.key td.def {
  padding-left: 24px;
  text-indent: -22px;
  width: 400px;
  text-align: left;
}

body.hotel-info div.centre img.marker {
  vertical-align: middle;
}

body.hotel-info div.centre img.stop-map {
  display: block;
  margin: 0;
  border: 2px solid #000000;
  width: 500px;
  height: 250px;
}

/******************************************************************************
  COMPETITION
******************************************************************************/

body.competition div.centre p {
  margin: 20px 50px 25px 100px;
  text-indent: -50px;
}

body.competition div.centre em {
  font-style: normal;
  font-weight: bold;
}

body.competition div.centre ol {
  margin: 20px 100px;
}

body.competition div.centre li {
  text-align: left;
}

body.competition div.centre table {
  width: 450px;
  margin: 0 auto;
  border: 1px solid #bfbfbf;
}

body.competition div.centre td {
  padding: 2px 4px;
  text-align: left;
}

body.competition div.centre td.label {
  text-align: right;
}

body.competition div.centre td.submit {
  text-align: center;
}

body.competition div.centre td p {
  margin: 0 50px 0 100px;
  text-indent: -50px;
}

body.competition div.centre textarea,
body.competition div.centre input.text {
  font-family: Arial, sans-serif;
  font-size: 12px;
  width: 200px;
}

body.competition div.centre td.checkbox {
  font-size: 11px;
}

body.competition div.centre td.checkbox input {
  vertical-align: middle;
}

/******************************************************************************
  TERMS AND CONDITIONS
******************************************************************************/

body.terms-and-conditions div.centre {
  font-size: 11px;
}

body.terms-and-conditions div.centre ol {
  margin: 0 25px;
  padding-left: 20px;
}

body.terms-and-conditions div.centre ol ol {
  margin: 0;
}

body.terms-and-conditions div.centre div ol {
  margin-left: 20px;
}

body.terms-and-conditions div.centre li {
  margin: 5px 0;
  list-style-type: none;
  text-indent: -20px;
  text-align: left;
}

body.terms-and-conditions div.centre li p {
  margin: 5px 0;
  text-indent: 0;
}

body.terms-and-conditions div.centre em {
  font-weight: bold;
  font-style: normal;
}

/******************************************************************************
  XMAS
******************************************************************************/

h3.xmas {
	font-size: 18px;
	color: #bf003f;
}

div.menu h3.xmas {
	font-size: 14px;
}

h3.xmas  img {
  display: inline;
	vertical-align: middle;
	margin: 0;
}

h3.xmas  a {
  color: #bf003f;
}

p.xmas {
  text-align: center !important;
}

p.xmas em {
  font-style: normal;
	font-weight: bold;
}

/******************************************************************************
  TOURISM AWARDS
******************************************************************************/

div.tourism-awards h3 {
  color: #003d7e;
  text-align: center;
	font-size: 16px;
	font-weight: bold;
	margin: 5px 0;
}

div.tourism-awards h4 {
  text-align: center;
	font-size: 14px;
	font-weight: bold;
	font-style: italic;
	margin: 5px 0;
}

div.tourism-awards p {
  text-align: center;
	font-size: 12px;
  margin: 5px 0;
}

/******************************************************************************
  EASTER
******************************************************************************/

h3.easter {
	font-size: 18px;
	color: #bf003f;
}

div.menu h3.easter {
	font-size: 14px;
}

h3.easter  img {
  display: inline;
	vertical-align: middle;
	margin: 0;
}

h3.easter  a {
  color: #bf003f;
}

p.easter {
  text-align: center !important;
}

p.easter em {
  font-style: normal;
	font-weight: bold;
}

/******************************************************************************
  EASTER
******************************************************************************/

div.roar {
  width: 290px;
  height: 186px;
  margin: 10px auto;
  border: 1px solid #003d7d;
  padding: 10px;
}

div.roar-left {
  width: 140px;
  float: left;
}

div.roar-right {
  width: 140px;
  float: right;
}

div.roar p {
  margin: 20px 0;
  text-align: center;
  font-weight: bold;
  font-size: 20px;
}

/******************************************************************************
  LOCAL DESTINATIONS
******************************************************************************/

body.local div.centre  h1 {margin-top: 40px; margin-left: 10%; margin-right: 10%; width: 80%;}

body.local div.centre  p {margin-left: 10%; margin-right: 10%; width: 80%;}

body.local div.centre  p.style-indented {margin-left: 30%; margin-right: 10%; width: 60%;}
