/*==========================================================================
/* General declarations 
*/

 /* Tell the browser to render HTML 5 elements as block */
header, footer, aside, nav, article {
	display: block;
}

body {
	margin: 0 auto;
	padding: 0;
	width: 940px;
	font: 14px/22px Helvetica, Arial, sans-serif;
	background: #fff;
}
 
h1 {
 font-weight: normal;
 font-size: 1.3em;
 margin: 0;
 padding: 10px 20px;
 color: #666;
}


h2 {
	font-size: 2em;
	line-height: 44px;
}

h3 {
	font-size: 1.2em;
	line-height: 22px;
	padding: 0;
}


h4 { color: #666; border-bottom: 1px solid #ccc; margin-top: 40px; }

p {	padding-bottom: 12px; }

dt { margin: 15px 0 5px 0; font-weight: bold;}
dd { font-size: 0.9em; padding: 0; margin: 0; }

a { color: #693; text-decoration: none; border-bottom: 1px dotted #693; } 
a:hover { border-bottom: 1px solid #693; }
a:visited { color: #B34B27; border-bottom: 1px dotted #693; }

.cross-lang { font-style: italic; }

.quote-source { font-style: italic; text-align: right; }


/* header elements */

#branding {
 position: relative;
 background: #ddd;
-moz-box-shadow: 0px 3px 9px #999;
 -webkit-box-shadow: 0px 3px 9px #999;
 box-shadow: 0px 3px 9px #999; 

 border-bottom-right-radius: 10px 5px;
 -moz-border-radius-bottomright: 10px 5px;            
}
 
h1 a, h1 a:visited {
  border: none;
  color: #666;
} 
 
#contact {
 display: block;
 position: absolute;
 top: 7px;
 right: 20px;
 text-align: right;
border-bottom: none; 
}


/* wrapper div for all content pages */
#main {
  text-align: center;
}
.content {
    margin: auto;
    padding: 10px 20px;
    width: 700px;
    text-align: left;
}

.img-wrapper {
       text-align: center;
       margin: 10px auto;
}

.img-wrapper img {
       padding: 5px;
       margin: 0;
       border: 1px dotted #ccc;
}

section { text-align: left; display: block; }

/* homepage-specific */

#topContent { display: table; }

#who { display: table-cell; width: 66%; padding: 0px 50px 0 0; }

#intro p {
   margin: 0;
   font-size: 1.4em;
 }
 
#intro .img-wrapper {
 width: 100px;
 height: 105px;
 float: left;
 margin: 0px 20px 5px 0;
 padding: 0;
 text-align: center;
}

#intro .img-wrapper img {
  border: none;
}


aside { display: table-cell; width: 33%; padding: 0 20px; }

#do { display: table; }
#do section {  display: table-cell; width: 33%; padding-right: 30px; }
#do section:last-child { padding-right: 30px; }
#do section .do-content { padding: 0px 15px; }

#do h3 {
 background: #444;
	padding: 11px 10px;      
 color: white;
 /* -moz-box-shadow: 0px 3px 9px #999;
  -webkit-box-shadow: 0px 3px 9px #999;
  box-shadow: 0px 3px 9px #999;  */
  border-top-right-radius: 10px 5px; 
  -moz-border-radius-topright: 10px 5px;       
}

#fade-rotate { margin: 50px 0px 10px 20px; position: relative; height: 1.5em;}
/* #fade-rotate span { display: block; } */
#fade-rotate #verb-1, #fade-rotate #verb-2, #fade-rotate #verb-3 {  position: absolute; left: 0px; }
#fade-rotate #adjective-1, #fade-rotate #adjective-2, #fade-rotate #adjective-3 { position: absolute; left: 120px; }
#fade-rotate #noun-1, #fade-rotate #noun-2, #fade-rotate #noun-3 { position: absolute; left: 275px;  } 
#fade-rotate #noun-3 { left: 253px; }

#fade-rotate #verb-2, #verb-3, #adjective-2, #adjective-3, #noun-2, #noun-3 { display: none; }

.see-more { text-align: right; } 
ul.see-more { list-style: none; margin: 0; padding: 0; }
ul.see-more li {  padding: 0 20px;}

.icon-wrapper { width: 60px; height: 60px; float: left; border: 1px dotted #ccc; margin: 5px 10px 20px 0;}

dl#current-work dt { margin: 15px 0 5px 0; }
dl#current-work dd { padding-left: 70px; margin: 0;}


/* to be sorted lot */


.content table#events-table, .content table#course-details {
  border-collapse: collapse;
}

.content table#events-table th, .content table#course-details th {
  background: #999;
}

.content table#events-table th, td {
  padding: 10px 8px;
  vertical-align: top;
}

.content table#course-details th, .content table#course-details td {
  border: 1px solid #ccc;
}

.content table#events-table tr:nth-child(2n+1) {
  background: #dedede;
}


.content table#events-table caption {
  margin: 0;
  padding: 10px;  
  text-align: left;
}

.content table#course-details tr:nth-child(2n+1) {
  background: #eeeeee;
} 

#course-session .content h3 { font-size: 1.1em;}

/* cv specific declarations */
#cv .content section {
  border-top: 1px dotted #ccc;
}

#cv .content section section {
  border-top: none;
}


#cv h3  { font-family: georgia, times, serif; font-weight: normal; font-size: 1.6em; color: #666;}
#cv h4 {  font-size: 1.2em; border: none; color: #333; margin: 10px 0 5px 0; font-weight: normal;}

#cv #cv-contact { float: right; padding-left: 30px; border-left: 1px dotted #ccc;}

/* subnav on cv page */

#cv .content #sub-nav {
  float: right;
}

#cv .content #sub-nav ul {
  list-style: none;
  margin-left: 0;
  padding-left: 0;
}

#cv .content #sub-nav ul li ul {
  margin-left: 1em;
  list-style: square;
}

#cv .content dl {
  margin: 0px;
  width: 70%;
}

#cv .content section#skills dl {
  margin: 0 0 0 10px;
}

#cv .content dt {
  margin: 5px 0;
}

#cv .content dt .date {
  display: block;
  font-family: georgia, times, serif;
  font-weight: normal;
}

#cv .content dt .position {
  font-weight: bold;
}

#cv .content dt .location {
  display: block;
  font-weight: normal;
}

#cv .content dd .client {
  font-style: italic;
  display: block;
  margin-bottom: 3px;
}

#cv .content dd {
  margin: 0 0 0 20px;
  padding: 0 0 5px 0;
}

#cv .content .back-to-top {
  font-size: 0.8em;
  margin: 0 0 20px 0;
  display: block;
  text-align: right;
  border: none;
}

/*==========================================================================
/* Persistent objects 
*/

/* main navigation */

nav#main-menu {
  overflow: auto;
  text-align: center;
  border-bottom: 1px dotted #ccc;
}

nav#main-menu ul {
  list-style: none;
  margin: 0 auto;
  padding: 0;
  overflow: auto;
  width: 450px;
}

nav#main-menu ul li {
  display: inline;
  margin: 0;
  padding: 0;
}

nav#main-menu ul li a {
  padding: 8px 15px;
  /* color: #CAB07D; */
  float: left;
  display: block;
  border-bottom: none;  
}

nav#main-menu ul li.current a {
  background: #444; 
  color: #fff;  

  }

nav#main-menu ul li a:hover {
 /* background: #AA8D55;
  color: #fff;  */
}

/* footer */ 

footer {
  font-size: 0.9em;
  color: #999;
  padding: 10px;
  clear: both;
  text-align: left;
}

footer a {
  color: #999;
  border-bottom: 1px dotted #999;
}

.print-link { display: none; }



@media screen and (max-width: 480px) {
   
   #intro .img-wrapper { display: none; } 
   
   #topContent, #do, #do section, #who, aside { display: block; position: static; text-align: left; }
   #branding, #intro {
     position: static;
   }
   
  #fade-rotate { height: 5em; }
  #fade-rotate #verb-1, #fade-rotate #verb-2, #fade-rotate #verb-3 {  top: 0em; left: 10px; }
  #fade-rotate #adjective-1, #fade-rotate #adjective-2, #fade-rotate #adjective-3 { top: 1.5em; left: 10px; }
  #fade-rotate #noun-1, #fade-rotate #noun-2, #fade-rotate #noun-3 { top: 3em; left: 10px; }
}
