@charset "UTF-8";
html {
  font-family: "Georgia", serif;
  color: #111;
  text-size-adjust: none;
  font-size: 16px;
  line-height: 1.8; }

p, ul, ol, table, blockquote {
  margin: 1em 0; }

h1 {
  font-family: "Helvetica", "Helvetica Neue", 'Open Sans', sans-serif;
  line-height: 1.5;
  margin: 0.75em 0 0.75em;
  letter-spacing: -0.02em; }

h2 {
  font-family: "Helvetica", "Helvetica Neue", 'Open Sans', sans-serif;
  line-height: 1.5;
  margin: 0.75em 0 0.75em;
  letter-spacing: -0.02em; }

h3 {
  font-family: "Helvetica", "Helvetica Neue", 'Open Sans', sans-serif;
  line-height: 1.5;
  margin: 0.75em 0 0.75em;
  letter-spacing: -0.02em; }

h4 {
  font-family: "Helvetica", "Helvetica Neue", 'Open Sans', sans-serif;
  line-height: 1.5;
  margin: 0.75em 0 0.75em;
  letter-spacing: -0.02em; }

h5 {
  font-family: "Helvetica", "Helvetica Neue", 'Open Sans', sans-serif;
  line-height: 1.5;
  margin: 0.75em 0 0.75em;
  letter-spacing: -0.02em; }

h6 {
  font-family: "Helvetica", "Helvetica Neue", 'Open Sans', sans-serif;
  line-height: 1.5;
  margin: 0.75em 0 0.75em;
  letter-spacing: -0.02em; }

#body > p:first-of-type::first-letter {
  font-size: 3.55em;
  line-height: 1em;
  margin-right: 0.1em;
  float: left; }

#body blockquote {
  padding: 0 0 0 1em;
  margin-left: 2.5em;
  position: relative;
  font-style: italic; }
  #body blockquote:before {
    content: '“';
    font-style: normal;
    color: #808080;
    font-size: 4.5em;
    position: absolute;
    top: -0.525em;
    left: -0.6em; }
  #body blockquote:after {
    content: '';
    position: absolute;
    left: 0;
    top: 0.45em;
    bottom: 0.45em;
    width: 0.15em;
    background-color: #808080; }

h1 {
  font-size: 1.9em;
  line-height: 1.15;
  margin-top: 1.5em;
  margin-bottom: 0;
  max-width: 10em;
  font-weight: 600;
  letter-spacing: -0.03em; }

h2 {
  font-size: 1.3em;
  font-weight: 500; }

h3 {
  font-size: 1.75em;
  font-weight: 600;
  margin: 1.5em 0 -0.25em; }

@media screen and (min-width: 390px) {
  h1 {
    font-size: 2.5em; }
  h2 {
    font-size: 1.5em; } }

@media screen and (min-width: 480px) {
  h1 {
    font-size: 2.9em; }
  h2 {
    font-size: 1.65em; } }

@media screen and (min-width: 725px) {
  #body blockquote {
    margin-left: 0; } }

@media screen and (min-width: 580px) {
  html {
    font-size: 17px; } }

@media screen and (min-width: 980px) {
  html {
    font-size: 18px; } }

@media screen and (min-width: 1200px) {
  html {
    font-size: 20px; } }

@media screen and (min-width: 1342px) {
  html {
    font-size: 21px; } }

@media screen and (min-width: 2242px) {
  html {
    font-size: 23px; } }

a {
  color: #006e7f;
  text-decoration: none; }
  a:hover {
    text-decoration: underline; }

.footnote {
  font-family: "Helvetica", "Helvetica Neue", 'Open Sans', sans-serif;
  display: inline-block;
  position: relative;
  font-size: 0.85em;
  line-height: 1;
  font-weight: 500;
  top: -0.5em;
  padding: 0.2em;
  text-align: center;
  min-width: 1em;
  height: 1em;
  margin: 0 0 0 0.15em;
  border: 1px solid #006e7f;
  border-radius: 1em;
  transform-origin: center;
  transition: transform ease 0.25s, margin ease 0.25s; }
  .footnote:hover, .footnote:focus {
    text-decoration: none;
    background-color: #006e7f;
    color: #fff; }
  .footnote:focus {
    transform: rotate(360deg);
    outline: none; }
  .footnote:hover {
    transform: translateY(-0.1em) scale(1.25) rotate(-360deg);
    margin: 0 0.25em; }

#footnotes {
  padding: 0;
  margin: 0;
  counter-reset: footnotes;
  margin-left: 1.84em; }
  #footnotes blockquote {
    margin-left: 0; }
  #footnotes li {
    margin: 1em 0;
    position: relative;
    padding: 0 0 0 1.1em; }
    #footnotes li:before {
      font-family: "Helvetica", "Helvetica Neue", 'Open Sans', sans-serif;
      font-size: 0.85em;
      top: 0.1em;
      content: counter(footnotes);
      counter-increment: footnotes;
      position: absolute;
      left: -1.84em;
      background-color: #fff;
      display: inline-block;
      padding: 0.42em;
      width: 1em;
      height: 1em;
      text-align: center;
      line-height: 1.1;
      border: 1px solid #111;
      border-radius: 100%; }
    #footnotes li p {
      margin: 0.25em 0; }
    #footnotes li:target:before {
      background-color: #006e7f;
      border-color: #006e7f;
      color: #fff; }
  #footnotes .ff-back {
    font-family: serif; }

@media screen and (min-width: 780px) {
  #footnotes {
    margin-left: -1.1em; }
  .footnote {
    font-size: 0.75em;
    line-height: 1.1; } }

figure {
  width: 100%;
  box-sizing: border-box;
  padding: 0.5em;
  margin: 0;
  margin-bottom: 2em;
  border: 1px solid #ccc;
  border-radius: 0.1em; }
  figure img, figure .img {
    width: 100%;
    border: 1px solid #ccc;
    border-radius: 0.05em; }
  figure figcaption {
    text-align: center;
    margin: 0.5em 0 1em;
    font-size: 0.85em; }
    figure figcaption p {
      margin: 0; }
  figure .desc {
    font-weight: bold;
    font-style: italic; }
  figure .source {
    font-size: 0.85em; }

@media screen and (min-width: 481px) {
  figure {
    padding: 0.75em; }
    figure figcaption {
      font-size: 0.95em; } }

@media screen and (min-width: 725px) {
  figure {
    padding: 1em; } }

@media screen and (min-width: 321px) {
  #mongodb-is-web-scale {
    height: 250px; } }

@media screen and (min-width: 481px) {
  #mongodb-is-web-scale {
    height: 350px; } }

@media screen and (min-width: 1350px) {
  #mongodb-is-web-scale {
    height: 400px; } }

html, body {
  padding: 0;
  margin: 0;
  text-size-adjust: none; }

.n-logo {
  background-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDIxLjEuMCwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgMCkgIC0tPgo8IURPQ1RZUEUgc3ZnIFBVQkxJQyAiLS8vVzNDLy9EVEQgU1ZHIDEuMS8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9HcmFwaGljcy9TVkcvMS4xL0RURC9zdmcxMS5kdGQiPgo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkNhbHF1ZV8xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4PSIwcHgiIHk9IjBweCIKCSB2aWV3Qm94PSIwIDAgMzIgMzIiIHN0eWxlPSJlbmFibGUtYmFja2dyb3VuZDpuZXcgMCAwIDMyIDMyOyIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+CjxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI+Cgkuc3Qwe2ZpbGw6I0ZGRkZGRjt9Cjwvc3R5bGU+CjxnPgoJPHBhdGggY2xhc3M9InN0MCIgZD0iTTEuNCwxLjAzaDkuMDQ5bDEyLjg0OCwyMS4wMDFoMC4wODVWMS4wM2g2LjY1OXYzMC4yMjFoLTguNzA4TDguMTQ1LDkuNzM4SDguMDU5djIxLjUxM0gxLjRWMS4wM3oiLz4KPC9nPgo8L3N2Zz4K);
  background-repeat: no-repeat; }

.back-to-home {
  position: relative;
  z-index: 9001;
  /* It's over 9000 */
  background-color: #000;
  display: inline-block;
  width: 2.25em;
  height: 4.5em;
  background-position: 53% 2.25em;
  background-size: 1.5em; }

header {
  background-color: #f0f6fa;
  position: relative;
  width: 100%;
  padding-bottom: 15%;
  box-sizing: border-box; }
  header .container {
    max-width: 40em;
    margin: 0 auto;
    padding: 0 0.75em;
    min-height: 8em; }
  header .cover {
    position: absolute;
    display: inline-block;
    width: 100%;
    height: 100%;
    bottom: -23%; }

@media screen and (min-width: 680px) {
  .back-to-home {
    width: 2.75em;
    height: 6.5em;
    background-position: 53% 4.25em;
    background-size: 1.7em; }
  header .container {
    max-width: 50em; } }

#body {
  max-width: 38em;
  margin: 0 auto;
  padding: 0.75em; }


  .remark {
    font-size:85%;
    line-height: 1.3;
  }
