body {
  background-color: #fff;
  padding-left:30px;
  padding-right:30px;
  padding-top:15px;
  font: 14px/1.5 -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, "Fira Sans", "Droid Sans", "Helvetica Neue", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
  color:#595959;
  font-weight:400;
}

h1, h2, h3, h4, h5, h6 {
  color:#222;
  margin:0 0 20px;
}

p, ul, ol, table, pre, dl, details {
  margin:0 0 20px;
}

h1, h2, h3 {
  line-height:1.1;
}

h1 {
  font-size:28px;
  font-weight: 500;
}

h2 {
  color:#393939;
  font-weight: 500;
}

h3, h4, h5, h6 {
  color:#494949;
  font-weight: 500;
}

a {
  color:#39c;
  text-decoration:none;
}

a:hover {
  color:#069;
}

a small {
  font-size:11px;
  color:#777;
  margin-top:-0.3em;
  display:block;
}

a:hover small {
  color:#777;
}

.projlinks{
  color:#39c;
  font-size:1.25em;
  text-decoration:none;
}

.projlinks:hover{
  color:#069;
}

/*.wrapper {
  width:920px;
  margin:0 auto;
}*/

blockquote {
  border-left:1px solid #e5e5e5;
  margin:0;
  padding:0 0 0 20px;
  font-style:italic;
}

code, pre {
  font-family:Monaco, Bitstream Vera Sans Mono, Lucida Console, Terminal, Consolas, Liberation Mono, DejaVu Sans Mono, Courier New, monospace;
  color:#333;
}

pre {
  padding:8px 15px;
  background: #f8f8f8;
  border-radius:5px;
  border:1px solid #e5e5e5;
  overflow-x: auto;
}

table {
  width:100%;
  border-collapse:collapse;
}

th, td {
  text-align:left;
  padding:5px 10px;
  border-bottom:1px solid #e5e5e5;
}

dt {
  color:#444;
  font-weight:500;
}

th {
  color:#444;
}

/*img {
  max-width:33%;
}*/

/*header (column 1) related styling*/

header {
  width:100px;
  float:left;
  position:fixed;
  -webkit-font-smoothing:subpixel-antialiased;
}

header span {
  color:black;
}

header ul {
  list-style:none;
  height:40px;
  padding:0;
  background: #f4f4f4;
  border-radius:5px;
  border:1px solid #e0e0e0;
  width:270px;
}

header li {
  width:89px;
  float:left;
  border-right:1px solid #e0e0e0;
  height:40px;
}

header li:first-child a {
  border-radius:5px 0 0 5px;
}

header li:last-child a {
  border-radius:0 5px 5px 0;
}

header ul a {
  line-height:1;
  font-size:11px;
  color:#999;
  display:block;
  text-align:center;
  padding-top:6px;
  height:34px;
}

header ul a:hover {
  color:#999;
}

header ul a:active {
  background-color:#f0f0f0;
}

strong {
  color:#222;
  font-weight:500;
}

header ul li + li + li {
  border-right:none;
  width:89px;
}

header ul a strong {
  font-size:14px;
  display:block;
  color:#222;
}

section {
/*  width:500px;*/
  width:auto;
  float:left;
  padding-bottom:50px;
/*  add this back in to allow for first column*/
/*  padding-left: 120px;*/
}

small {
  font-size:11px;
}

hr {
  border:0;
  background:#e5e5e5;
  height:1px;
  margin:0 0 20px;
}

footer {
  width:150px;
  float:left;
  position:fixed;
  bottom:50px;
  -webkit-font-smoothing:subpixel-antialiased;
}

/*span {
      -webkit-transition: .5s all;   
    -webkit-transition-delay: 5s; 
    -moz-transition: .5s all;   
    -moz-transition-delay: 5s; 
    -ms-transition: .5s all;   
    -ms-transition-delay: 5s; 
    -o-transition: .5s all;   
    -o-transition-delay: 5s; 
    transition: .5s all;   
    transition-delay: 5s; 
}*/

span:not( :hover ){
transition: 3s all 2s
}

/*project gallery specific stuff*/
/*https://css-tricks.com/adaptive-photo-layout-with-flexbox/*/

/** {
    box-sizing: border-box;
}*/

section ul {
    display: flex;
    flex-wrap: wrap;
    padding: 0 0px;
    list-style-type: none;
    overflow: hidden;
    flex: 0 0 33.333333%;
}

section li {
    /*min-width: 0;*/
    /*max-width: 33%;*/
    height:30vh;
    padding: 5px 5px;
    align-content: start;
/*    box-shadow: 5px 5px;*/
/*    flex: 0 0 33.333333%;*/
}

section img {
    vertical-align: bottom;
    max-height: 100%;
    min-width: 100%;
    object-fit: cover;
}

/*project titles*/

section li .title-container{
  position:relative;
}

section li .project-title{
  visibility: hidden;
  position:absolute;
  text-align: center;
  width:100%;
/*  font-size: x-large;*/
}

section li:hover img{
  opacity: 20%;
  z-index:1;
}

section li:hover .project-title{
  visibility: visible;
  z-index:2;
}

@media print, screen and (max-width: 1600px) {
  section li {
        height:25vh;
    }
}

/*@media print, screen and (max-width: 1350px) {
  section li {
        height:20vh;
    }
}*/


@media print, screen and (max-width: 1100px) {

  div.wrapper {
    width:auto;
    margin:0;
  }

  header, section, footer {
    float:none;
    position:static;
    width:auto;
  }

  header {
/*    padding-right:32px;*/
    position:fixed;
    /*margin: -50px -10px;*/
    top:0;
    left:0;
    margin-left:10px;
    width:100%;
    background-color:white;
    height:40px;
    display:inline-block;
    white-space:nowrap;
  }

  section {
    border:1px solid #e5e5e5;
    border-width:1px 0;
    padding:20px 0;
    margin:0 0 20px;
  }

  header a small {
    display:inline-block;
  }

  header ul {
    position:absolute;
    right:50px;
    top:52px;
  }

  header h1, p, details, #about, #projects, #cv, #contact {
/*    display:inline;*/
    margin-right: 20px;
  }

  section ul {
    display: flex;
    flex-wrap: wrap;
/*    padding: 0 0px;*/
    list-style-type: none;
    overflow: hidden;
  flex: 0 0 50%;
}

  section li {
/*        flex: 50%;
        max-width: 50%;*/
        padding: 5 5px;
        height:25vh;
        align-content: start;
    }

  section img {
    vertical-align: bottom;
    max-height: 100%;
    min-width: 100%;
    object-fit: cover;
}

/*project titles*/

section li .title-container{
  position:relative;
}

section li .project-title{
  visibility: hidden;
  position:absolute;
  text-align: center;
  width:100%;
/*  font-size: x-large;*/
}

section li:hover img{
  opacity: 20%;
  z-index:1;
}

section li:hover .project-title{
  visibility: visible;
  z-index:2;
}

}

@media print, screen and (max-width: 940px) {
  section li {
        height:20vh;
    }
  section li .project-title h1{
  font-size: 1.5em;
  font-weight: bold;
  margin-bottom: 0px;
}
section li .project-title h2{
  font-size: 1em;
  margin-bottom: 5px;
}
}

@media print, screen and (max-width: 760px) {
  body {
    word-wrap:break-word;
  }

  header {
    padding:0;
  }

  header ul, header p.view {
    position:static;
  }

  pre, code {
    word-wrap:normal;
  }

  section li {
    flex: 100%;
    max-width: 100%;
    padding: 5 5px;
    height:30vh;
    align-content: start;
    overflow:visible;
}

  section img {
    vertical-align: bottom;
    max-height: 70%;
    min-width: 100%;
    /*object-fit: cover;*/
}

/*project titles*/

section li .title-container{
/*  position:absolute;
  width:100%;
  text-align: center;*/
}

section li .project-title{
  visibility: visible;
  position:relative;
  text-align: left;
  width:100%;
  /*font-size: x-large;*/
}

section li .project-title h1{
  font-size: 1.5em;
  font-weight: bold;
  margin-bottom: 0px;
}
section li .project-title h2{
  font-size: 1em;
  margin-bottom: 5px;
}

section li:hover img{
  opacity: 100%;
  z-index:1;
}


/*section li:hover img{
  opacity: 20%;
  z-index:1;
}

section li:hover .project-title{
  visibility: visible;
  z-index:2;
}*/

}

@media print, screen and (max-width: 480px) {
  body {
    word-wrap:break-word;
  }

  header {
    padding:0;
  }

  header ul, header p.view {
    position:static;
  }

  pre, code {
    word-wrap:normal;
  }

  section li {
    flex: 100%;
    max-width: 100%;
    padding: 5 5px;
    height:30vh;
    align-content: start;
    overflow:visible;
}

  section img {
    vertical-align: top;
    max-height: 50%;
    min-width: 100%;
    /*object-fit: cover;*/
}

section h1 {
/*  text-align: center;*/
}

/*project titles*/

section li .title-container{
/*  position:absolute;
  width:100%;
  text-align: center;*/
}

section li .project-title{
  visibility: visible;
  position:relative;
  text-align: left;
  width:100%;
  /*font-size: x-large;*/
}

section li .project-title h1{
  font-size: 1.5em;
  font-weight: bold;
  margin-bottom: 0px;
}
section li .project-title h2{
  font-size: 1em;
  margin-bottom: 5px;
}
}

@media print {
  body {
    padding:0.4in;
    font-size:12pt;
    color:#444;
  }
}


