/*   
Author: Tom Rose (tom@slurve.com)
Author URI: http://slurve.com
Date: 07 Sept 2007
*/


/* -------------------------------------------------------------------------- global */

body { margin: 0; padding: 0; font-family: "Lucida Grande", Verdana, sans-serif; font-size: small; line-height: 130%; background-color: #666; }

/* -------------------------------------------------------------------------- links */

a:link, a:visited, a:active { color: #fff; text-decoration: none; }
a:hover { color: #fff; text-decoration: none; border-bottom: 1px dotted; }
.nav a, .nav a:visited { display: block; font-family: "Tahoma"; text-transform: lowercase; margin: 0 0 0 22px; border: none; line-height: 15px; font-size: 125%; color: #ccc; }
.nav a:hover, #dates .dates, #home .home, #bio .bio, #records .records, #contact .contact { color: #fff; }
.logo a { position: relative; width: 232px; height: 0px !important; display: block; background: url(../../../images/logo.gif) top left no-repeat; overflow: hidden; padding: 37px 0 0 0; border: none; }
.logo a:hover { background-position: 0 -44px; border: none; }
#masthead a:hover { border: none; }

/* -------------------------------------------------------------------------- headers */

h1, h2, h3, h4, h5, h6 { font-weight: normal; margin: 0; padding: 0; }
h1 { font-size: 200%; line-height: 21px; margin: 0 0 18px 0; }
h2 { font-size: 260%; margin: 30px 0; text-transform: lowercase; letter-spacing: -1px; color: #888; }
h3 { clear: both; margin: 20px 0 0 0; font-size: 100%; color: #888; border-bottom: 1px dotted #ddd; text-transform: uppercase; font-family: Georgia, Verdana; }

/* -------------------------------------------------------------------------- masthead */

.logo { position: absolute; bottom: 8px; left: 0; margin: 0; }
.nav { z-index: 5000; position: absolute; right: 10px; bottom: 10px; padding: 0; margin: 0; }
.nav li { float: left; list-style-type: none; text-align: center; }

/* -------------------------------------------------------------------------- containers */

#container { position: relative; margin: 0 auto 0 auto; padding: 0 20px 20px 20px; width: 900px; }
#masthead { position: relative; height: 100px; }
#wrap { position: relative; color: #ddd; font-size: 90%; width: 100%; }
#sidebar { position: relative; float: left; width: 241px; }
#main { position: relative; float: right; background: #404040 url(../../../images/bg.jpg) 0 0 no-repeat; min-height: 394px; width: 638px; padding: 0 0 20px 20px; }
#home #main { position: relative; background: #666 url(../../../images/photos/tunisia_1_bw.jpg) 0 0 no-repeat; width: 100%; height: 394px; padding: 0; }
#footer { text-align: right; font-size: 80%; margin: 4px 0 0 0; color: #ccc; }

/* -------------------------------------------------------------------------- homepage */

.promo { position: relative; background-color: #444; width: 400px; height: 110px; position: absolute; right: 30px; top: 50px; opacity: .80; font-size: 95%; }
.promo img { position: relative; float: left; border: 6px solid #888; margin: -6px 20px 0 -6px; }
.promo h2 { margin: 20px 0 15px 0; font-size: 230%; }
.legend { margin: 0 60px 0 0; padding: 0; list-style-type: none; float: right; width: 250px; }
.legend li { margin: 10px 0; padding: 0; color: #ccc; }
.legend .past { float: right; }

/* -------------------------------------------------------------------------- footer */

#footer p { margin: 10px 0; }

/* -------------------------------------------------------------------------- records */

.tourdates { width: 95%; margin: 20px 0; }
.tourdates td { border: 1px solid #666; padding: 5px; vertical-align: top; } 
.tourdates th { text-align: left; background-color: #333; padding: 3px 7px; }
#dates #main strong { margin: 0 0 0 0; }
#dates #main strong:after { content: " - "; }
#dates #main p em { margin: 15px 0 5px 0; display: block; font-style: normal; color: #999; }
.record { margin: 20px 0; clear: both; }
.record img { float: left; margin: 0 15px 20px 0; }
.record strong { display: block; font-size: 140%; font-weight: normal; padding: 30px 0 0 0; }
.albumCover { float: right; margin: 0 80px 0 0; }
.tracks { padding: 0; margin: 0; list-style-type: none; }
.tracks li { width: 250px; background-color: #777; margin-bottom: 1px; padding: 2px 5px; }
.notes { width: 350px; padding: 0; margin: 0 0 20px 0; list-style-type: none; }

/* -------------------------------------------------------------------------- utility */

.photo-left { float: left; margin: 5px 25px 5px 0; }
.photo-right { float: right; border: 5px solid #777; margin: 5px 15px 5px 25px; }
.shadow-left { background:  transparent url(../../../images/shadow_left.png) no-repeat 0 0; width:  13px; height:  203px; position:  absolute; top:  0; left:  -13px; z-index:  99; }
.shadow-right { background:  transparent url(../../../images/shadow_right.png) no-repeat 0 0; width:  13px; height:  203px; position:  absolute; top:  0; right: -13px; z-index:  99; }
a img, a.imglink:link, a.imglink:visited { border: none; }
a.imglink:hover { background: transparent; }
p { margin: 0 0 15px 0; } 
a img { border: none; }
ol { margin: 0 0 0 20px; padding: 0 0 0 20px; position: relative; }
li { margin: 0; }
ul { list-style-type: circle; margin: 0; padding: 0 0 0 15px; }
.clear { clear: both; margin: 0; height: 0; }

/* -------------------------------------------------------------------------------- form elements */


label { display: block; margin: 15px 0 3px 0; }
select { width: 200px; font-size: 95%; color: #555; border: 1px solid #ccc; padding: 3px; }
option { border-top: 1px dotted #ccc; }   
input, textarea {  width: 200px; border: 1px solid #ccc; padding: 3px 4px; color: #444; }
input:focus, textarea:focus, select:focus { background-color: #fffff2; }
textarea { width: 400px; height: 120px; }
.required { color: #ccc; margin-top: 10px; }
.ddfmerrors { font-size: 130%; margin-bottom: 10px; }
.errorlist { color: #ccc; font-weight: bold; }
.submit { width: 100px; background-color: #999; color: #fff; border: none; }
.submit:hover { background-color: #888; cursor: pointer; border: none; }