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

*, *:before, *:after {
  box-sizing: inherit; margin:0; padding:0;
}

/*****************************************************************************/
/* general layout ------- */

/* --- generic typographic and color design ---- */
body{
  margin:0;
  background: white;
  color: black; 
  /* "A Better Helvetica" and "Helvetica Neue Alternatives" */
  font-family:  "HelveticaNeue-Light", "Helvetica Neue Light", "Helvetica Neue", "TeXGyreHeros", "Roboto", Helvetica, Arial, "Lucida Grande", sans-serif; 
  font-weight: 300;
  font-size: 16px;
}

img { border:0; }

pre {
  background-color: black;
  color: lime;
  margin:12px;
}

/*-----------------------------------------------------*/
header {
  position:relative;
  background: black;
  color: #ccc;
  min-height: 80px;
  padding: 12px;
  border-bottom: 6px solid #333;
  font-size: 0.8rem;
}

header p {
  
}
header p.small {
  font-size:80%;
  font-style: italic;
}
header h1 {

}

header #logo { 
  float: left; 
  height: 40px; 
  padding-right:24px;
  margin-top: 6px;
} 

@media (min-width:641px)  { /* portrait tablets, portrait iPad, landscape e-readers, landscape 800x480 or 854x480 phones */ 
header {
  min-height: 120px;
  font-size: 1rem;
}
header #logo { 
  height: 64px; 
  padding-right:24px;
  margin-top: 6px;
} 
}


/*****************************************************************************/
main {
  min-height: 600px;
}

main section article {
  padding:12px; 
}

main section h1 {
  background-color: #eee;
  padding:12px;
}

@media (min-width:641px)  { /* portrait tablets, portrait iPad, landscape e-readers, landscape 800x480 or 854x480 phones */ 
main section article {
  max-width: 640px;
  margin:0 auto;
}
}


/*****************************************************************************/
footer {
  background: #333;
  color: #999;
  min-height: 120px;
  text-align: center;
  font-size: 0.8rem;
}
footer nav {
  padding: 24px;
}

footer nav a {
  color:#ccc;
  padding: 12px;
  text-transform: uppercase;
  text-decoration: none;
  font-weight:normal;
  cursor: pointer;  
}
footer nav a:hover  {
  color:orange;
}

footer img {
  width:40px;
  margin:24px;
}

.member {
  display:block;
  min-height:120px;
  margin: 0;
}

.member .filler {
  min-height:100px; 
  float:left;  
  position:relative;
}

.member img.person {
  border-radius:50%;
  width: 100px;
  height: 100px;
  object-fit: cover;
  margin:10px;
  float:left;
}

.member img.spouse {
  float:left;
  margin-left: -20px;
}

.member p.name {
  display:inline-block;
  margin-top:34px;
  font-size: 1.2rem;
 
}
