/* --------------------------------- */
/* ----------- TYPOGRAPHY ---------- */
/* --------------------------------- */

p, h1, h2, h3, h4, h5, li, input, label, select {
font:12px/15px arial;
color:#000;
}
p {
margin-bottom:15px;
}

a, a p, a h1, a h2, a h3, a h4 {
color:#ff0000;
text-decoration:none;
}
a:hover, a:hover p, a:hover h2, a:hover h3, a:hover h4 {
	color:#000;
}
a:focus, a:active {
  outline: none; /* this is for FF (to avoid those annoying dotted lines) */
  border:none;
}
a.selected {
color:#000;
}
h1 { /* h1s are the huge headings unless overridden */
text-indent:-999em;
float:left;
width:100%;
height:171px;
position:absolute;
top:86px;
left:0;
}
span.format-details {
color:#999;
}
strong {
font-weight:bold;
}
em {
font-style:italic;
}

/* ------------------------------------ */
/* ---------- PAGE STRUCTURE ---------- */
/* ------------------------------------ */

html, body {
height:100%;
}
div#container {
width:940px;
padding:0 30px;
margin:0 auto -30px;
min-height:100%;
height:auto!important;
height:100%;
}
div#footer, div#push {
height:30px;
width:940px;
margin:0 auto;
}
div#push {
clear:both;
padding-top:0px; /* bit experimental - going to use this to control gap above footer. If it doesn't work, add a clearing div above push div */
}
div#footer-wrapper { /* bit experimetal - trying to stop footer touching left side on small windows */
padding:0 30px;
margin:0 auto;
}

#content {
width:700px;
float:right;
background:url(/images/site/rule-thick-black.gif) -240px 0 no-repeat;
padding-top:20px;
position:relative;
}
#sidebar {
width:220px;
float:left;
background:url(/images/site/rule-thick-black.gif) top left no-repeat;
padding:20px 20px 0 0;
}
/* when we don't want the full width rule, cancel it here... */
body.home #sidebar, body.catalogue #sidebar, body.programme #sidebar {
background:none;
padding:0;
}


/* ------------------------------------ */
/* ---------- COMMON ELEMENTS --------- */
/* ------------------------------------ */

li.last-in-row {
margin-right:0!important;
}

p.pagination {
border-top:1px solid #000;
padding:8px 0 7px 0;
margin:0;
}

.print-only {
display:none;
}

/* ----- FORMS ----- */

input {
font:11px arial;
}

input.text {
height:13px;
width:214px;
padding:2px;
border:1px solid;
border-color:#b4b4b4;
border-top-color:#727272;
border-bottom-color:#dadada;
background:url(/images/site/form-input-bg.gif) top left repeat-x;
}

/* ----- UTILITY BAR ----- */

#utility-bar {
float:left;
width:100%;
height:28px;
padding:12px 0 0px 0;
border-bottom:1px solid #ddd;
margin-bottom:0px;
}
#utility-bar form {
float:left;
display:none;
}
#utility-bar form input {
margin-right:7px;
}
#login p {
float:right;
padding-top:3px;
margin-bottom:0;
}
#utility-bar p span {
color:#bbbbbb;
}
div#login-form {
float:left;
background:#ddd;
width:100%;
height:51px;
}
div#login-form form {
float:left;
margin:15px 0 0 13px;
}
div#login-form form label {
margin-right:8px;
}
div#login-form form input.input {
margin-right:25px;
width:213px;
}
div#login-form p.forgot-username {
float:right;
margin:18px 15px 0 0;
}
.JS div#login-form {
display:none;
}
div#login a.login-link {
padding-right:10px;
background:url(/images/site/login-arrows.gif) no-repeat top right;
}
div#login a.login-link.open {
background-position:bottom right;
}
/* ----- HEADER ----- */

#header {
width:100%;
float:left;
background:url(/images/site/header-bg.gif) 0 -23px repeat-x;
height:257px;
position:relative;
}

#header h2 {
width:140px;
height:51px;
text-indent:-999em;
background:url(/images/site/dcd-logo.gif);
clear:left;
float:left;
margin-top:12px;
}

/* ----- MAIN NAV ----- */

#main-nav {
float:right;
margin-top:47px;
}
#main-nav li {
float:left;
padding-left:6px;
border-left:1px solid #bbb;
margin-left:6px;
font-size:15px;
font-weight:bold;
}
#main-nav li.first {
border:none;
}
#main-nav li.selected a {
color:#000;
}

/* ----- ARTICLE LIST ----- */

ul.article-list li, div.article-list p {
background:url(/images/site/rule-article-list.gif) no-repeat;
padding:10px 0 5px 0;
font-family:courier;
margin-bottom:0;
}
#sidebar .article-list {
margin-top:-2px;
}
body.about-us ul.article-list li, body.acquisition ul.article-list li {
text-transform:uppercase
}
/* ----- PROGRAMME LIST ----- */

ul.programme-list {
}
ul.programme-list li {
border-top:1px solid #000;
padding:9px 0 0 0;
float:left;
width:100%;
}
ul.programme-list li img {
float:left;
margin:0 20px 10px 0;
}
ul.programme-list li h3 {
font:12px/15px arial;
font-weight:bold;
margin-top:-3px;
margin-left:160px;
}

/* ----- SEARCH CATALOGUE BOX ----- */

h2.programme-search {
text-indent:-999em;
width:220px;
height:69px;
background:url(/images/site/headings/search.gif) no-repeat;
}
form#programme-search {
padding-bottom:20px;
}
form#programme-search label {
display:block;
border-top:1px solid #94b0bc;
padding:7px 0 8px 0;
}
form#programme-search label.genre-select {
padding-top:6px;
}

form#programme-search fieldset {
height:59px;
}
form#programme-search fieldset label {
padding-bottom:6px;
}
form#programme-search fieldset input {
margin-bottom:0px;
height:15px!important;
margin-top:0px;
padding-top:0;
}
form#programme-search select {
width:100%;
}
div#format-checkboxes {
margin-top:10px;
}
div#format-checkboxes input {
float:left;
clear:both;
position:relative;
top:9px;
}
div#format-checkboxes label {
padding:8px 0 6px 19px;
}
div.search-submit {
border-top:1px solid #94b0bc;
padding:9px 0 0 0;
}
p.download-catalogue {
background:url(/images/site/download-catalogue-bg.gif) top left repeat-x;
padding:7px 0 10px 0;
}

/* ----- FOOTER ----- */

#footer p, #footer p a {
font-size:11px;
color:#666;
margin:0;
}
#footer p {
border-top:1px solid #ccc;
padding-top:6px;
}

/* ------------------------------------ */
/* ---------- SPECIFIC PAGES ---------- */
/* ------------------------------------ */

/* ----- HOME ----- */

body.home #header {
height:195px;
}

body.home #intro-text p {
float:left;
clear:both;
width:430px;
font:14px/17px georgia;
margin-top:40px;
}
p#an-expresso-with {
width:460px;
height:82px;
float:right;
text-indent:-999em;
background:url(/images/site/headings/an-expresso-with-2.jpg);
position:absolute;
top:93px; right:0;
}
body.home #content {
float:left;
background-position: 0 0;
}
body.home #sidebar {
float:right;
}
body.home #content h2 {
text-indent:-999em;
width:100%;
height:79px;
background:url(/images/site/headings/latest-programmes.gif) no-repeat;
margin:0;
}

/* Featured programme */
div.featured-programme {
padding-top:9px;
display:none; /* hide all but first - JS will cycle through... */
height:260px; /* height is neccesary to help jquery fade */
}
div.featured-programmes {
border-top:1px solid #000;
height:269px; /* this div keeps the shape of the page when programme divs are hidden/shown */
}
div.featured-programme img {
float:left;
margin-right:20px;
}
div.featured-programme h3 {
font:18px/20px arial;
font-weight:bold;
margin-bottom:15px;
}
div.featured-programme.no1 {
display:block;
}

/* Programme grid */
ul.programme-grid {
clear:both;
float:left;
margin-top:10px;
}
ul.programme-grid li {
border-top:1px solid #000;
padding-top:9px;
height:180px;
float:left;
margin-right:20px;
}
ul.programme-grid li h3 {
font:12px/15px arial;
font-weight:bold;
margin-top:1px;
width:220px;
}

/* News lists */
body.home h2.news {
text-indent:-999em; width:93px; height:92px;
background:url(/images/site/headings/news-home.gif);
margin:-4px 0 12px 0;
}
body.home h2.hot-topics {
text-indent:-999em; width:97px; height:95px;
background:url(/images/site/headings/hot-topics-home.gif);
margin:19px 0 22px 0;
}

/* ----- CATALOGUE ----- */

body.catalogue h1 {
background:url(/images/site/headings/catalogue.jpg) top left no-repeat;
}
body.catalogue #content h2.latest-releases {
text-indent:-999em;
width:100%;
height:108px;
background:url(/images/site/headings/latest-releases.gif) no-repeat;
margin:0;
}

p.catalogue-download {
background:url(/images/site/pdf-icon.gif) no-repeat 0 8px;
padding:10px 0 10px 40px;
border:1px solid #94B0BC; 
border-width:1px 0; 
margin-top:9px;
}

/* ----- PROGRAMME ----- */

body.programme h1 {
background:url(/images/site/headings/catalogue.jpg);
}
body.programme #content h2 {
font:22px/25px arial;
font-weight:bold;
margin:9px 0 16px 0;
}
body.programme #content h2 span em {
font:16px/25px arial;
}
p.back-to-search {
padding:6px 0 7px 0;
border-bottom:1px solid #000;
margin-bottom:0;
}

p#preview-logged-out {
background:#000;
position:relative;
width:640px;
float:left;
}
p#preview-logged-out img {
margin:0;
line-height:0;
float:left;
zoom:1;
}
p#preview-logged-out span {
position:absolute;
top:0px;
left:0px;
color:white;
font:22px/25px georgia;
background:url(/images/site/opacity-fill-80.png);
width:620px;
height:259px;
padding:125px 0 0 20px;
}
p#preview-logged-out span a:hover {
color:white;
}
.JS p#preview span {
display:none;
}

/* hide print-only image */
p#print-main-image {
display:none;
}

div#programme-summary {
float:left;
clear:both;
width:460px;
padding:7px 20px 0 0;
background:url(/images/site/rule-thin-dashed.gif) repeat-x;
margin-top:6px;
}
div#programme-summary p {
font:16px/20px arial;
margin:0 0 20px 0;
}

ul#programme-links {
float:right;
width:220px;
margin-top:6px;
}
ul#programme-links li {
background:url(/images/site/rule-thin-dashed.gif) repeat-x;
padding:8px 0 7px 0;
}
ul#programme-links li.print-card a {
background:url(/images/site/printer-icon.gif) 0 0 no-repeat;
padding-left:22px;
padding-top:1px;
}

div#gallery {
clear:both;
float:left;
background:url(/images/site/rule-thin-dashed.gif) 0 50px repeat-x;
width:100%;
}
div#gallery h3 {
text-indent:-999em;
width:80px;
height:26px;
background:url(/images/site/headings/gallery.gif);
margin:10px 0;
}
div#gallery ul {
float:left;
padding-bottom:20px;
width:720px;
/* extra width for image margins */
}
div#gallery p.contact-sales {
margin:15px 0 0 0;
}
div#gallery li {
float:left;
margin:15px 20px 0 0;
}

/* ----- PROGRAMME SEARCH RESULTS ----- */

body.catalogue.search #content h2.results {
text-indent:-999em;
width:100%;
height:49px;
background:url(/images/site/headings/results.gif) no-repeat;
margin:0;
}
body.catalogue.search p.you-searched-for {
background:#94b0bc;
padding:8px 8px;
margin-bottom:0;
}
body.catalogue.search p.your-search-produced {
margin:7px 0 6px 0;
}
div.no-results h3 {
font-weight:bold;
margin:0 0 6px 0;
border-bottom:1px solid #000;
padding:7px 0 6px 0;
}
div.no-results ul {
margin:0 0 15px 0;
}
div.no-results ul li {
list-style:disc;
list-style-position:inside;
}


/* ----- ARTICLES (NEWS/ACQUISITIONS/HOT TOPICS) ----- */

body.article div.article-bg {
float:left;
background:url(/images/site/bg-stripe.gif) 720px 39px repeat-y;
padding-bottom:9px;
}
body.article #sidebar {
padding-top:49px;
}
body.article #sidebar p.pagination {
margin-top:10px;
}
body.article p.article-date {
position:absolute;
top:27px;
left:0;
}
body.article div#content {
padding-top:48px;
}
body.article div.article {
border-top:1px solid #000;
padding-right:240px;
}
body.article div.article h2 {
font:26px/30px georgia;
margin-top:7px;
padding-bottom:12px;
margin-bottom:10px;
border-bottom:1PX solid #000;
}
body.article div.article img {
margin-bottom:20px;
}
body.article div.article p {
font:16px/20px arial;
margin-bottom:20px;
}
/* About us */
body.about-us #header {
background:url(/images/site/header-bgs/about-us.jpg) 0 -23px;
}
body.about-us #header h1 {
background:url(/images/site/headings/about-us.jpg) no-repeat;
}
/* News */
body.news #header {
background:url(/images/site/header-bgs/news.jpg) 0 -23px;
}
body.news #header h1 {
background:url(/images/site/headings/news.jpg) no-repeat;
}
/* Hot topics */
body.hot-topics #header {
background:url(/images/site/header-bgs/hot-topics.jpg) 0 -23px;
}
body.hot-topics #header h1 {
background:url(/images/site/headings/hot-topics.jpg) no-repeat;
}

/* ----- SINGLE ARTICLES (ACQUISITIONS/ABOUT US) ----- */
body.article.single div.article-bg {
background:url(/images/site/bg-stripe-both-sides.gif) 0px 39px repeat-y;
}
body.article.single #sidebar ul {
display:none;
}
body.article.single #sidebar {
height:50px; /* a bit of height to stop it collapsing */
}

/* ----- ACQUISITIONS ----- */

body.acquisition #header {
background:url(/images/site/header-bgs/aquisisition.jpg) 0 -23px;
}

/* ----- CONTACT US ----- */

body.contact-us h1 {
background:url(/images/site/headings/contact-us.jpg) no-repeat;
}

body.contact-us #content div.contact-details p {
padding-left:120px;
}
body.contact-us #content div.contact-details p.contact-field {
float:left;
width:120px;
padding-left:0;
}
body.contact-us div.article-list p a {
font-family:arial;
}


/* ----- REGISTER ----- */

body.register h1 {
background:url(/images/site/headings/register.jpg) no-repeat;
}

body.register #content h2 {
margin-bottom:15px;
}

body.register #content form {
padding-top:4px;
}


body.register #content label {
float:left;
clear:both;
width:220px;
border-top:1px solid #000;
padding-top:7px;
margin-bottom:0;
}
body.register #content input, body.register #content select {
float:left;
clear:both;
margin:-23px 0 21px 240px;
}



body.register #content select {
width:220px;
}
body.register #content .address-fields label {
border:none;
}
body.register #content .address-fields input {
margin-top:-17px;
}
body.register #content input.submit {
float:left; clear:both;
margin:10px 0 0 240px;
}
p.mandatory {
font:11px arial!important;
float:left;
clear:both;
margin:30px 0 40px 240px;
}