html{
  background-color:#
  color:#111;
  font-family:"PT Serif", Georgia, sans-serif;
  font-size:16px;
  font-size:calc(16px + 0.25vw);
  line-height:1.5; }

body{
  margin:1em; }
  body > header,
  body > main,
  body > footer,
  body > article{
    position:relative;
    display:block;
    max-width:900px;
    margin:0 auto; }
  body > header{
    margin-bottom:2.5em;
    text-align:center; }
  body > footer{
    margin-top:4em;
    color:#A3A39B;
    font-size:0.9rem;
    text-align:center; }

header p{
  font-size:1.125rem; }

section, article{
  margin-bottom:4em; }

address{
  font-style:normal; }

aside{
  position:absolute;
  right:-200px;
  max-width:150px;
  padding-right:1em;
  color:#7D7D77;
  font-style:italic; }
  @media (max-width: 1066px){
    aside{
      position:relative;
      right:auto;
      max-width:none;
      padding:0; } }

a{
  color:#0064C1;
  text-decoration:none;
  -webkit-transition:color 300ms;
  transition:color 300ms; }
  a:visited{
    color:#6d00c1; }
  a:hover, a:focus{
    color:#3000c1;
    -webkit-transition:color 0ms;
    transition:color 0ms; }

nav{
  margin:2em 0; }
  nav ul{
    padding:0;
    margin:0;
    list-style:none; }
    nav ul li{
      display:inline-block;
      margin:0 5px;
      color:#7D7D77; }
  nav a:visited{
    color:#0064C1; }
  nav a:hover, nav a:focus{
    color:#3000c1; }

h1{
  margin-top:0.5em;
  margin-bottom:0;
  color:#070600;
  font-size:4rem;
  font-weight:400;
  line-height:1.2; 
  text-align:center;}

h2{
  margin-top:.8em;
  margin-bottom:.5em;
  color:#25291C;
  font-weight:400;
  font-size:2.1rem;
  text-align:center;}

h3{
  margin-top:1.2em;
  margin-bottom:.5em;
  color:#25291C;
  font-size:1.4rem;
  font-weight:400;
  text-align:center;}

h4{
  margin:0 0 .5em;
  color:#63635e;
  font-size:1rem; }

form{
  max-width:400px;
  padding:12px 10px;
  margin:0 auto; }

fieldset{
  border:1px solid #cfcfcf; }
  fieldset > p{
    margin-top:0; }
  fieldset p + p{
    margin-bottom:0.75em; }

legend{
  color:#7D7D77; }

button{
  box-sizing:border-box;
  padding:.3em .5em;
  border:1px solid #b5b5b5;
  outline:none;
  font-size:1em;
  font-family:inherit;
  -webkit-transition:border 200ms;
  transition:border 200ms;
  display:inline-block;
  width:auto;
  margin-bottom:0;
  border-radius:2px;
  background:#E8E8E8;
  color:#25291C;
  cursor:pointer; }
  button:focus, button:hover{
    border:1px solid dimgray;
    background:#c2c2c2;
    color:#070600; }

select{
  box-sizing:border-box;
  padding:.3em .5em;
  border:1px solid #b5b5b5;
  outline:none;
  font-size:1em;
  font-family:inherit;
  -webkit-transition:border 200ms;
  transition:border 200ms;
  display:inline-block;
  width:auto;
  margin-bottom:0;
  border-radius:2px;
  background:#E8E8E8;
  color:#25291C;
  cursor:pointer;
  display:block; }
  select:focus, select:hover{
    border:1px solid dimgray;
    background:#c2c2c2;
    color:#070600; }

input[type=text], input[type^=date], input[type=email], input[type=number], input[type=search], input[type=tel], input[type=time], input[type=month], input[type=week], input[type=url]{
  box-sizing:border-box;
  padding:.3em .5em;
  border:1px solid #b5b5b5;
  outline:none;
  font-size:1em;
  font-family:inherit;
  -webkit-transition:border 200ms;
  transition:border 200ms;
  display:block;
  width:100%;
  border-radius:0;
  display:block; }
  input[type=text]:focus, input[type^=date]:focus, input[type=email]:focus, input[type=number]:focus, input[type=search]:focus, input[type=tel]:focus, input[type=time]:focus, input[type=month]:focus, input[type=week]:focus, input[type=url]:focus{
    border:1px solid dimgray; }

input[type=submit], input[type=button], input[type=reset]{
  box-sizing:border-box;
  padding:.3em .5em;
  border:1px solid #b5b5b5;
  outline:none;
  font-size:1em;
  font-family:inherit;
  -webkit-transition:border 200ms;
  transition:border 200ms;
  display:inline-block;
  width:auto;
  margin-bottom:0;
  border-radius:2px;
  background:#E8E8E8;
  color:#25291C;
  cursor:pointer;
  -webkit-appearance:none; }
  input[type=submit]:focus, input[type=submit]:hover, input[type=button]:focus, input[type=button]:hover, input[type=reset]:focus, input[type=reset]:hover{
    border:1px solid dimgray;
    background:#c2c2c2;
    color:#070600; }

input[type=color], input[type=file]{
  box-sizing:border-box;
  padding:.3em .5em;
  border:1px solid #b5b5b5;
  outline:none;
  font-size:1em;
  font-family:inherit;
  -webkit-transition:border 200ms;
  transition:border 200ms;
  display:inline-block;
  width:auto;
  margin-bottom:0;
  border-radius:2px;
  background:#E8E8E8;
  color:#25291C;
  cursor:pointer;
  display:block; }
  input[type=color]:focus, input[type=color]:hover, input[type=file]:focus, input[type=file]:hover{
    border:1px solid dimgray;
    background:#c2c2c2;
    color:#070600; }

input[type=color]{
  width:4em;
  height:2em; }

input[type=file]{
  width:100%; }

textarea{
  box-sizing:border-box;
  padding:.3em .5em;
  border:1px solid #b5b5b5;
  outline:none;
  font-size:1em;
  font-family:inherit;
  -webkit-transition:border 200ms;
  transition:border 200ms;
  display:block;
  width:100%;
  border-radius:0; }
  textarea:focus{
    border:1px solid dimgray; }

pre{
  background:#f2f2f2;
  border:1px solid #E8E8E8;
  border-radius:1px;
  font-size:0.9em;
  font-family:Consolas, Courier, monospace;
  margin:0; }
  pre > code{
    display:block;
    padding:10px 15px;
    -webkit-overflow-scrolling:touch;
    overflow-x:auto;
    background:transparent;
    border:none; }

code{
  background:#f2f2f2;
  border:1px solid #E8E8E8;
  border-radius:1px;
  font-size:0.9em;
  font-family:Consolas, Courier, monospace;
  padding:0.06250em 0.31250em; }

img{
  display:block;
  max-width:100%;
  margin:0 auto; }

p{
  margin:.5em 0; }
  p img{
    float:right;
    margin:.3em 0 .3em .5em;
    border:1px solid #E8E8E8; }

figure{
  box-sizing:border-box;
  display:inline-block;
  padding:6px 22px;
  margin:.5em 0;
  border:1px solid #E8E8E8;
  border-radius:1px; }
  figure img{
    max-width:100%;
    margin:10px 0 15px; }
    figure img + figcaption{
      margin-top:0;
      margin-bottom:10px; }
  figure figcaption{
    margin-top:10px;
    font-style:italic;
    text-align:center; }
    figure figcaption + img{
      margin:15px 0 10px; }

dl{
  margin:1em 0 1.5em; }
  dl dt{
    font-weight:700; }
  dl dd{
    margin-bottom:1em; }

details{
  display:block;
  padding:0 .5em 0;
  margin:20px 0;
  border:1px solid #E8E8E8;
  border-radius:1px;
  background-color:#fafafa; }
  details summary{
    display:block;
    padding:0 .5em .1em;
    margin:0 -.5em 0;
    background-color:white;
    outline:none;
    font-weight:700;
    cursor:pointer; }
table{
  -webkit-overflow-scrolling:touch;
  display:inline-block;
  max-width:100%;
  width:100%;
  overflow-x:auto;
  vertical-align:top;
  background:-webkit-radial-gradient(left, ellipse, rgba(0, 0, 0, 0.2) 0%, transparent 75%) 0 center, -webkit-radial-gradient(right, ellipse, rgba(0, 0, 0, 0.2) 0%, transparent 75%) 100% center;
  background:radial-gradient(left, ellipse, rgba(0, 0, 0, 0.2) 0%, transparent 75%) 0 center, radial-gradient(right, ellipse, rgba(0, 0, 0, 0.2) 0%, transparent 75%) 100% center;
  background-size:10px 100%, 10px 100%;
  background-attachment:scroll, scroll;
  background-repeat:no-repeat;
  border-spacing:0;
  border-collapse:collapse;
  text-align:left; }
  table caption{
    padding:0.5em 0;
    background:#fff;
    font-style:italic; }
  table thead{
    background:#E8E8E8; }
  table td, table th{
    padding:.3em .7em;
    border:1px solid #E8E8E8;
    vertical-align:top; }
  table td:first-child{
    background-image:-webkit-linear-gradient(left, white 50%, rgba(255, 255, 255, 0) 100%);
    background-image:linear-gradient(to right, white 50%, rgba(255, 255, 255, 0) 100%);
    background-size:20px 100%;
    background-repeat:no-repeat; }
  table td:last-child{
    background-image:-webkit-linear-gradient(right, white 50%, rgba(255, 255, 255, 0) 100%);
    background-image:linear-gradient(to left, white 50%, rgba(255, 255, 255, 0) 100%);
    background-position:100% 0;
    background-size:20px 100%;
    background-repeat:no-repeat; }
  table th{
    border:1px solid #cfcfcf; }

abbr{
  margin-right:-0.15em;
  font-size:.875rem;
  letter-spacing:.15em; }

dfn{
  letter-spacing:0.05em; }

del{
  color:#7D7D77; }

ins{
  background:#ededec;
  text-decoration:none; }

mark{
  background:#ffeab9; }

hr{
  margin:25px 0;
  border:1px solid rgba(232, 232, 232, 0.7);
  border-bottom:none; }

var{
  font-family:monospace;
  font-style:normal; }

audio{
  width:100%;
  margin:10px 0 15px; }

video{
  max-width:100%;
  width:100%;
  margin:10px 0 15px; }

noscript{
  color:#d00000; }

kbd{
  display:inline-block;
  padding:0 .6ex;
  margin:0 0.4ex;
  background:#f9f9f8;
  border-radius:5px;
  box-shadow:0 1px #E8E8E8; }

output{
  display:block; }
