@charset "UTF-8";
@media all {
  html {
    font-size: 17px; } }
/* @media all and (max-width:900px){html {font-size: 18px;}} */
/* @media all and (max-width:880px){html {font-size: 17px;}} */
@media all and (max-width: 890px) {
  html {
    font-size: 16px; } }
@media all and (max-width: 830px) {
  html {
    font-size: 15px; } }
@media all and (max-width: 780px) {
  html {
    font-size: 14px; } }
@media all and (max-width: 730px) {
  html {
    font-size: 13px; } }
/*****************************************************************************/
/*
/* Common
/*
/*****************************************************************************/
/* Global Reset */
* {
  margin: 0;
  padding: 0; }

html,
body {
  height: 100%; }

body {
  background-color: #fff;
  color: #073642;
  font-family: "Bitstream Charter", Georgia, Times, "Times New Roman", serif;
  text-align: center;
  text-rendering: optimizelegibility; }

::selection {
  background: #dc322f;
  /* Safari */
  color: white; }

::-moz-selection {
  background: #dc322f;
  /* Firefox */
  color: white; }

h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: 100%; }

ul,
ol,
dl,
pre,
p {
  margin: 0 0 1em; }

li > ul:last-child,
li > ol:last-child,
li > dl:last-child,
li > pre:last-child,
li > p:last-child {
  margin-bottom: 0; }

sup {
  /* exponents should not screw up paragraph alignment */
  display: inline-block;
  margin-top: -1em; }

a {
  color: #00a; }

a:hover {
  color: #000; }

a:visited {
  color: #a0a; }

/*****************************************************************************/
/*
/* Home
/*
/*****************************************************************************/
.content ul.posts {
  list-style-type: none;
  margin-bottom: 2em;
  margin-left: 0; }

.content ul.posts li {
  padding-left: 0;
  margin-bottom: 0.5rem; }

/*****************************************************************************/
/*
/* Site
/*
/*****************************************************************************/
.site {
  text-align: left;
  width: 35rem;
  padding-left: 13rem;
  margin: 3em auto 2em;
  line-height: 150%; }

.resize {
  width: 35rem; }

.site img {
  vertical-align: bottom;
  max-width: 35rem; }

.room-below, figure {
  margin-bottom: 3rem; }

.fullwidth {
  margin-left: -13rem;
  clear: both; }

.site .fullwidth img,
.site img.fullwidth {
  max-width: 48rem; }

.fullwidth.resize {
  width: 48rem; }

.half-left {
  margin-left: -13rem;
  width: 22.5rem; }

.half-right {
  float: right;
  width: 22.5rem; }

.half-left img, .half-right img {
  width: 22.5rem; }

.title,
.margin {
  text-align: right;
  float: left;
  width: 10rem;
  clear: both;
  padding-right: 3rem;
  margin-left: -13rem;
  margin-right: 0;
  margin-top: 0;
  /* preserve margins even if collapsing does not work for floats */ }

.margin.time {
  position: relative; }

.margin.time::before {
  content: "»";
  position: absolute;
  right: 0;
  width: 2.5rem;
  padding: 0 0.25rem;
  text-align: left; }

.site .margin img,
.site img.margin {
  max-width: 10rem; }

.note {
  font-size: 80%;
  font-style: italic; }

.header {
  margin-bottom: 4em; }

.header a,
.footer a {
  color: #aaa;
  font-weight: bold;
  text-decoration: none; }

.title {
  display: inline-block;
  color: #c0c0c0;
  margin-bottom: 2em; }

.header a.current {
  color: #dc322f; }

.header a:hover,
.footer a:hover {
  color: #000; }

.header a.extra {
  margin-right: 1em; }

.header a.lang {
  float: right;
  margin-right: 1em; }

.footer {
  clear: both;
  font-size: 80%;
  color: #586e75;
  margin-top: 7em;
  overflow: hidden; }

.footer div {
  float: left;
  margin-right: 4em; }

.footer div:last-child {
  margin-right: 0; }

.footer .contact a {
  color: #aaa; }

.footer .current {
  color: #586e75; }

.footer .rss {
  margin-top: 1.1em;
  margin-right: -0.2em;
  float: right; }

.footer .rss img {
  border: 0; }

/*****************************************************************************/
/*
/* Content
/*
/*****************************************************************************/
/* standard */
h2,
h3,
h4 {
  font-family: "League Gothic";
  font-weight: normal;
  line-height: 105%; }

h2 {
  font-size: 180%;
  margin: 2em 0 1em; }

h3 {
  font-size: 120%;
  text-transform: uppercase;
  letter-spacing: 0.07em;
  margin: 2em 0 0.9em; }

h4 {
  font-size: 130%;
  margin: 2em 0 0.9em; }

/* Only when next to the article's title, not in lists. */
.content > .meta {
  margin-top: 0.4em; }

.content .margin, .content figcaption {
  color: #586e75; }

.content figcaption {
  text-align: right; }

.content img + figcaption {
  margin-top: 0.4rem; }

.content pre {
  color: #586e75;
  background-color: #fdf6e3;
  padding: 0.2em 0.4em;
  border: 1px solid #eee8d5;
  line-height: 1.1em;
  overflow-x: auto; }

.content code {
  background-color: #f5f5f5;
  /* color: #586e75; */
  padding: 0.1em 0.2em;
  -webkit-border-radius: 2px;
  -moz-border-radius: 2px;
  border-radius: 2px;
  font-family: "FantasqueSansMono", Monaco, "Consolas", "Inconsolata", monospace; }

.content pre code {
  background-color: transparent;
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  border-radius: 0;
  padding: 0;
  border: none; }

/* terminal TODO invert colors for text acording to solarized */
.content pre.terminal {
  border: 1px solid #002b36;
  background-color: #073642; }

.content pre.terminal code {
  background-color: #073642; }

.content a {
  font-weight: bold;
  text-decoration: none;
  color: inherit;
  position: relative;
  bottom: 0px;
  /* background: #f5f5f5; */
  border-color: white;
  padding: 0 0.15em 0.05em;
  margin: 0 -0.1em;
  -moz-border-radius: 2px;
  -webkit-border-radius: 2px;
  border-radius: 2px; }

.content a[target=_blank]::after {
  content: " ↗" }

.content p a,
.content blockquote a {
  font-weight: inherit;
  font-family: "CharterishSmallCaps";
  text-transform: lowercase;
  letter-spacing: 0.05em; }

.content a:hover {
  transition-property: border-color, bottom, background-color;
  transition-duration: 150ms;
  bottom: 2px;
  border-bottom: 2px solid #ddd !important;
  background: #f5f5f5; }

.content a:active,
.content a:focus,
.content a:visited {
  transition-duration: 0ms;
  background-color: #f5f5f5;
  bottom: 0px;
  outline: none;
  border-bottom: white 0px solid; }

/* Images */
img.framed.resize {
  width: 34rem; }

img.framed.fullwidth.resize {
  width: 47rem; }

.content .framed img,
img.framed {
  border: 0.5rem solid #f5f5f5; }

/* Lists */
.content ul,
.content ol {
  margin-left: 1.35rem; }

.content li {
  padding-left: 0.65rem; }

.content dl dt {
  font-family: "CharterishSmallCaps";
  text-transform: lowercase;
  letter-spacing: 0.06em;
  font-weight: bold; }

.content dl dd {
  margin-left: 2em; }

/* Rulers */
.content hr {
  border: none;
  border-top: 4px solid #ddd;
  clear: both;
  margin-right: 50%;
  margin-top: 4em; }

hr + h2,
hr + h3,
hr + h4 {
  margin-top: 2em; }

/* Quotes */
blockquote,
q {
  font-style: italic; }

blockquote {
  position: relative;
  padding-left: 2em; }

blockquote::before {
  content: "“";
  font-family: "League Gothic";
  font-style: normal;
  font-size: 400%;
  display: block;
  position: absolute;
  width: 0.5em;
  height: 100%;
  overflow: hidden;
  top: 0;
  padding-top: 0.3em;
  left: 0; }

blockquote.margin::before {
  text-align: right;
  content: "”";
  left: 100%;
  top: 100%;
  margin-top: -0.65em;
  margin-left: -0.8em; }

blockquote.margin {
  padding-left: 0; }

/* Tables */
table {
  width: 36rem;
  /* = 610 + 10 */
  border-collapse: separate;
  border-spacing: 0.5rem;
  clear: none;
  margin: 0 0 1rem -0.5rem; }

table.fullwidth {
  margin-left: 0;
  margin-right: 0;
  width: 49rem;
  /* = 870 + 10*2 */ }

td,
th {
  padding: 0 0.1em; }

th {
  font-family: "CharterishSmallCaps";
  text-transform: lowercase;
  letter-spacing: 0.06em;
  font-weight: bold;
  border-bottom: 2px solid #ddd; }

/* Footnotes */
div.footnotes {
  border: none;
  color: #586e75; }

div.footnotes::before {
  content: "";
  display: block;
  border: none;
  border-top: 4px solid #ddd;
  margin: 5em 50% 1em 0; }

div.footnotes li {
  margin-top: 1em; }

/* List of languages in the resume */
ul.inline-list {
  margin-left: 0; }

ul.inline-list li {
  display: inline-block;
  padding-left: 0rem;
  padding-right: 1rem; }
