/* megrim-regular - latin */
@font-face {
  font-family: 'Megrim';
  font-style: normal;
  font-weight: 400;
  src: local(''),
       url('../fonts/megrim-v14-latin-regular.woff2') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */
       url('../fonts/megrim-v14-latin-regular.woff') format('woff'); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
}

/* open-sans-regular - latin-ext_latin_greek-ext_greek_cyrillic */
@font-face {
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 400;
  src: local(''),
       url('../fonts/open-sans-v27-latin-ext_latin_greek-ext_greek_cyrillic-regular.woff2') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */
       url('../fonts/open-sans-v27-latin-ext_latin_greek-ext_greek_cyrillic-regular.woff') format('woff'); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
}

/* open-sans-600 - latin-ext_latin_greek-ext_greek_cyrillic */
@font-face {
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 600;
  src: local(''),
       url('../fonts/open-sans-v27-latin-ext_latin_greek-ext_greek_cyrillic-600.woff2') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */
       url('../fonts/open-sans-v27-latin-ext_latin_greek-ext_greek_cyrillic-600.woff') format('woff'); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
}

/* open-sans-700 - latin-ext_latin_greek-ext_greek_cyrillic */
@font-face {
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 700;
  src: local(''),
       url('../fonts/open-sans-v27-latin-ext_latin_greek-ext_greek_cyrillic-700.woff2') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */
       url('../fonts/open-sans-v27-latin-ext_latin_greek-ext_greek_cyrillic-700.woff') format('woff'); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
}

/* open-sans-italic - latin-ext_latin_greek-ext_greek_cyrillic */
@font-face {
  font-family: 'Open Sans';
  font-style: italic;
  font-weight: 400;
  src: local(''),
       url('../fonts/open-sans-v27-latin-ext_latin_greek-ext_greek_cyrillic-italic.woff2') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */
       url('../fonts/open-sans-v27-latin-ext_latin_greek-ext_greek_cyrillic-italic.woff') format('woff'); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
}

/* open-sans-600italic - latin-ext_latin_greek-ext_greek_cyrillic */
@font-face {
  font-family: 'Open Sans';
  font-style: italic;
  font-weight: 600;
  src: local(''),
       url('../fonts/open-sans-v27-latin-ext_latin_greek-ext_greek_cyrillic-600italic.woff2') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */
       url('../fonts/open-sans-v27-latin-ext_latin_greek-ext_greek_cyrillic-600italic.woff') format('woff'); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
}

/* open-sans-700italic - latin-ext_latin_greek-ext_greek_cyrillic */
@font-face {
  font-family: 'Open Sans';
  font-style: italic;
  font-weight: 700;
  src: local(''),
       url('../fonts/open-sans-v27-latin-ext_latin_greek-ext_greek_cyrillic-700italic.woff2') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */
       url('../fonts/open-sans-v27-latin-ext_latin_greek-ext_greek_cyrillic-700italic.woff') format('woff'); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
}

html {
  background: #f9f9f9;
  color: #555;
}
body {
  margin: auto;
  max-width: 72em;
  font-size: 12pt;
  font-family: 'Open Sans', sans-serif;
  line-height: 1.6;
}
div.container {
  display: flex;
  flex-wrap: wrap;
}
header {
  display: flex;
}
main {
  min-width: 12em;
  max-width: 48em;
  padding: 6pt;
  margin-top: 0;
}

p {
  padding-top: 3pt;
}
span.nowrap code { white-space: nowrap; }
a.option code { color: inherit; }
.smallcaps{font-variant: small-caps;}
.line-block{white-space: pre-line;}
.column{display: inline-block;}
q { quotes: "“" "”" "‘" "’"; }
a {
  color: #337ab7;
  text-decoration: none;
}
pre.ascii-art {
  line-height:5pt;
  font-size:5pt;
  letter-spacing: 1.27pt;
  background-color: black;
  color: white;
  padding: 0; }
hr {
  height: 1px;
  color: #aaa;
  background-color: #aaa;
  border: 0;
  margin: .2em 0 .2em 0;
}
h1, h2, h3, h4, h5, h6 {
  font-weight: normal;
  font-family: 'Megrim', arial, serif;
}
h1 {
  border-bottom: 3px dotted #999;
}
h1 a:hover {
  text-decoration: none;
}
a {
    text-decoration: none;
}
ul {
  list-style-type: square;
}
dt {
  font-weight: bold;
  margin-bottom: .1em;
}
table, th, td {
  border: none;
}
blockquote {
  padding: 0 1.6em;
  color: #666;
  font-size: 12pt;
  border: none;
}
dt {
  padding-top: 0.8em;
}
#logo {
  width: 180px; /* fallback */
  width: 16vw;
  max-width: 12em;
}
#logo img {
  width: 66%;
  padding: 6pt;
}
#banner {
  padding: 0;
  margin: 6pt;
}
#banner h1 {
  border: none;
  margin: 0;
  font-size: 64pt;
  font-weight: bold;
}
footer {
  padding: 1em;
  color: #888;
  text-align: center;
  font-size: 12pt;
}
nav {
  width: 12em;
  margin-top: 1em;
}
nav ul {
  font-family: 'Megrim', arial, serif;
  font-weight: bold;
  font-size: 20pt;
  margin: 0 1em 0 0;
  padding: 0;
}
nav li {
  list-style: none;
  padding: 6pt;
  margin: 3pt;
  border-radius: 8px;
}
nav li.active {
 background-color: #aaa;
}
nav li:hover {
  background-color: #ddd;
}
nav li a {
  text-decoration: none;
  padding: 6pt 4em 6pt 6pt;
}
nav li.current a {
  text-decoration: underline;
}
#nav-toggle {
  display: none;
}

@media (max-width: 991px) {
  #banner h1 {
    font-size: 8vw;
  }
  #logo {
    display: none;
  }
  div.container {
    max-width: 100%;
  }
  #nav-toggle {
    display: block;
    margin: 12pt;
    margin-left: auto;
  }
  #nav-toggle-button {
    height: 26pt;
    width: 26pt;
    background-color: transparent;
    border: 1px solid grey;
    vertical-align: text-bottom;
    border-radius: 6px;
  }
  nav {
    width: 100%;
    margin-top: 0;
    margin: 6pt;
    font-size: 14pt;
  }
  nav ul {
    display: none;
  }
  nav ul.show {
    display: block;
  }
  nav ul li {
    display: block;
    padding: 6pt 0 0 0;
  }
  nav ul li a {
    padding: 6pt;
  }
}
div.contact {
  margin: 1em 0 0 1em;
}
img.cover {
  padding: 10px;
}
.pics figure {
  float: none;
}

.pics figcaption {
  font-style: italic;
  margin-bottom: 1em;
  margin-top: 0.4em;
}
.pics img {
  padding: 10px;
  border:  1px solid #ccc;
  background-color: #eee;
  max-width:  700px;
  max-height: 500px;
  top:  0;
  left: 0
}
img#photo {
  width: 330px;
  padding: 0px;
  margin: 10px 10px 0px 0px;
}
span#caption {
  font-family: 'Megrim', arial,sans-serif;
  font-size: 123%;
}
span.date {
  font-size: 83%;
  color: #999;
}

/* code highlighting */
@media screen {
  pre > code.sourceCode > span > a:first-child::before { text-decoration: underline; }
  }
  code span.al { color: #ff0000; font-weight: bold; } /* Alert */
  code span.an { color: #60a0b0; font-weight: bold; font-style: italic; } /* Annotation */
  code span.at { color: #7d9029; } /* Attribute */
  code span.bn { color: #40a070; } /* BaseN */
  code span.bu { } /* BuiltIn */
  code span.cf { color: #007020; font-weight: bold; } /* ControlFlow */
  code span.ch { color: #4070a0; } /* Char */
  code span.cn { color: #880000; } /* Constant */
  code span.co { color: #60a0b0; font-style: italic; } /* Comment */
  code span.cv { color: #60a0b0; font-weight: bold; font-style: italic; } /* CommentVar */
  code span.do { color: #ba2121; font-style: italic; } /* Documentation */
  code span.dt { color: #902000; } /* DataType */
  code span.dv { color: #40a070; } /* DecVal */
  code span.er { color: #ff0000; font-weight: bold; } /* Error */
  code span.ex { } /* Extension */
  code span.fl { color: #40a070; } /* Float */
  code span.fu { color: #06287e; } /* Function */
  code span.im { } /* Import */
  code span.in { color: #60a0b0; font-weight: bold; font-style: italic; } /* Information */
  code span.kw { color: #007020; font-weight: bold; } /* Keyword */
  code span.op { color: #666666; } /* Operator */
  code span.ot { color: #007020; } /* Other */
  code span.pp { color: #bc7a00; } /* Preprocessor */
  code span.sc { color: #4070a0; } /* SpecialChar */
  code span.ss { color: #bb6688; } /* SpecialString */
  code span.st { color: #4070a0; } /* String */
  code span.va { color: #19177c; } /* Variable */
  code span.vs { color: #4070a0; } /* VerbatimString */
  code span.wa { color: #60a0b0; font-weight: bold; font-style: italic; } /* Warning */
}
@media print {
  body { 
  width:100% !important;
  margin:0 !important;
  padding:0 !important;
  line-height: 1.4;
  word-spacing:1.1pt;
  letter-spacing:0.2pt; font-family: "Times New Roman", serif; color: #000; background: none; }

  pre, code { font: 10pt Courier, monospace; } 
  blockquote { margin: 1.3em; padding: 1em;  font-size: 10pt; }
  hr { background-color: #ccc; }

  /* Images */
  img { float: left; margin: 1em 1.5em 1.5em 0; }
  a img { border: none; }

  /* Links */
  a:link, a:visited { background: transparent; font-weight: normal; text-decoration: underline; color:#333; }
  /* a:link[href^="http://"]:after, a[href^="http://"]:visited:after { content: " (" attr(href) ")"; font-size: 90%; } */
  a[href^="http://"] {color:#000; }

  /* Table */
  table { margin: 1px; text-align:left; }
  th { font-weight: bold; }
  th,td { padding: 4px 10px 4px 0; }
  tfoot { font-style: italic; }
  caption { background: #fff; margin-bottom:2em; text-align:left; }
  thead {display: table-header-group;}
  tr {page-break-inside: avoid;} 

  /*hide various parts from the site*/
  nav { display: none; }
  img#square { display: none; }
  div#banner { display: none; }
}
