/*  Reset ♥
    http://meyerweb.com/eric/tools/css/reset/
    v2.0 | 20110126
    License: none (public domain)
------------------------------------------------------- */
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin:0;
  padding:0;
  border:0;
  font-size:100%;
  font:inherit;
  vertical-align:baseline;
  }
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display:block;
  }
body { line-height:1; }
ol, ul { list-style:none;  }
blockquote, q { quotes:none; }
blockquote:before, blockquote:after,
q:before, q:after { content:''; content:none; }
/* tables still need 'cellspacing="0"' in the markup */
table { border-collapse: collapse; border-spacing:0; }
/* remember to define focus styles. Hee Haw */
:focus { outline:0; }

/* Inline Elements & Typography
------------------------------------------------------- */
*, *:after, *:before {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  }

body,
input,
textarea {
  font:16px/26px 'Helvetica Neue', Sans-serif;
  -webkit-font-smoothing:antialiased;
  }

h1,
h2,
h3,
h4,
h5,
h6 {
  margin:0;
  }

h1 {
  font-size:46px;
  line-height:52px;
  margin-bottom:20px;
  }

h2 {
  font-size:34px;
  line-height:42px;
  margin-bottom:20px;
  }

h3 {
  font-size:22px;
  line-height:28px;
  margin-bottom:20px;
  }

h4, h5 {
  font-size:16px;
  line-height:26px;
  font-weight:bold;
  margin-bottom:0;
  }

p {
  margin:0 0 20px;
  }
  p:last-child { margin-bottom:0;}

/* Links */
a {
  text-decoration:none;
  }
  a:hover {
    text-decoration:none;
    }

abbr {
  border-bottom:1px dotted #000;
  cursor:help;
  }

address { font-style:italic;}
small   { font-size:13px; line-height:1; }
strong  { font-weight:bold;}
em      { font-style:italic;}

hr {
  background:rgba(0,0,0,0.10);
  margin:0 0 20px;
  border:0;
  height:1px;
  }

/* Block Quotes */
blockquote,
q {
  quotes:none;
  font-style:italic;
  padding-left:20px;
  }

blockquote:before,
blockquote:after,
q:before,
q:after {
  content:'';
  }

/* Code Blocks & Pre */
code,
pre {
  padding:5px;
  font-family:Menlo, Bitstream Vera Sans Mono, Monaco, Consolas, monospace;
  font-size:12px;
  border-radius:3px;
  }
code {
  padding:5px;
  background:#f8f8f8;
  border:1px solid #ddd;
  }
pre {
  display:block;
  padding:10px;
  margin-bottom:10px;
  font-size:12px;
  word-break:break-all;
  word-wrap:break-word;
  white-space:pre;
  white-space:pre-wrap;
  background:#f8f8f8;
  border:1px solid #ddd;
  border-radius:3px;
  }
  pre code {
    padding:0;
    color:inherit;
    background-color:transparent;
    border:0;
    }
.pre-scrollable {
  max-height:300px;
  overflow-y:scroll;
  }

/* sub/superscripts */
sup,
sub {
  height:0;
  line-height:1;
  vertical-align:baseline;
  _vertical-align:bottom;
  position:relative;
  font-size:75%;
  }
sup {
  top:.5em;
  bottom:1em;
  }

label {
  display:block;
  }
  .options label {
    display:inline-block;
    min-width:50px;
    font-weight:normal;
    }
select,
textarea,
input[type=text] {
  display:inline-block;
  height:30px;
  width:95%;
  max-width:400px;
  margin-bottom:10px;
  font-size:13px;
  font-weight:500;
  line-height:20px;
  color:#a0a0a0;
  vertical-align:middle;
  padding:4px 6px;
  -webkit-border-radius:1px;
          border-radius:1px;
  }
textarea,
input[type=text] {
  background-color:#fff;
  border:1px solid #ccc;
  -webkit-box-shadow:1px 1px 2px rgba(0,0,0,0.1);
     -moz-box-shadow:1px 1px 2px rgba(0,0,0,0.1);
          box-shadow:1px 1px 2px rgba(0,0,0,0.1);
  -webkit-transition:border linear .2s, box-shadow linear .2s;
     -moz-transition:border linear .2s, box-shadow linear .2s;
       -o-transition:border linear .2s, box-shadow linear .2s;
          transition:border linear .2s, box-shadow linear .2s;
  }
  textarea:focus,
  input[type=text]:focus {
    outline:thin dotted\8; /* ie8 below */
    color:#404040;
    border-color:#00395D;
    border-width:1px;
    }

textarea {
  height:200px;
  max-width:none;
  resize:none;
  }

input[type=submit] {
  background-color:#86b619;
  border:1px solid #7a9738;
  cursor:pointer;
  color:#fff;
  padding:8px 40px;
  -webkit-border-radius:3px;
          border-radius:3px;
  box-shadow:inset 0 1px 0 rgba(255,255,255,0.5),
             inset 0 10px 10px rgba(255,255,255,0.15);
  }
  input[type=submit]:hover {
    color:#fff;
    box-shadow:inset 0 1px 0 rgba(255,255,255,0.5),
               inset 0 10px 10px rgba(255,255,255,0.25);
    }
  input[type=submit]:active {
    background-color:#7ba717;
    box-shadow:inset 0 1px 2px rgba(0,0,0,0.9);
    }

table {
  width:100%;
  background-color:transparent;
  border-collapse:collapse;
  border-spacing:0;
  margin-bottom:20px;
  table-layout:fixed;
  }
  th,
  td {
    padding:4px 0;
    line-height:20px;
    text-align:left;
    vertical-align:top;
    border-bottom:1px solid #d5d5d5;
    }
  th {
    font-weight:bold;
    }
  thead th {
    vertical-align:bottom;
    color:#57594D;
    }

/* Read content styling */
.prose ul {
  list-style:disc;
  margin-left:40px;
  }
.prose ol {
  list-style:decimal;
  margin-left:40px;
  }
.prose ul li,
.prose ol li {
  margin-bottom:10px;
  }
.prose p {
  margin:0 0 20px;
  }
.prose img {
  display:block;
  margin:0 auto;
  max-width:100%;
  }
.prose h1,
.prose h2 {
  padding-top:20px;
  }
.prose h3,
.prose h4,
.prose h5,
.prose h6 {
  padding-top:10px;
  }
.prose h1:first-child,
.prose h2:first-child,
.prose h3:first-child,
.prose h4:first-child,
.prose h5:first-child,
.prose h6:first-child {
  padding-top:0;
  }

/* Columns
------------------------------------------------------- */
.limiter {
  width:83.33%;
  max-width:960px;
  margin-left:auto;
  margin-right:auto;
  }

.col0    { float:left; width:04.1666%; }
.col1    { float:left; width:08.3333%; }
.col2    { float:left; width:16.6666%; }
.col3    { float:left; width:25.0000%; }
.col4    { float:left; width:33.3333%; }
.col5    { float:left; width:41.6666%; }
.col6    { float:left; width:50.0000%; }
.col7    { float:left; width:58.3333%; }
.col8    { float:left; width:66.6666%; }
.col9    { float:left; width:75.0000%; }
.col10   { float:left; width:83.3333%; }
.col11   { float:left; width:91.6666%; }
.col12   { display:block; width:100%; }
.col13    { float:left; width:20%; background-color: #ec11d7 (opacity=60);}
.margin0  { margin-left:04.1666%; }
.margin1  { margin-left:08.3333%; }
.margin2  { margin-left:16.6666%; }
.margin3  { margin-left:25.0000%; }
.margin4  { margin-left:33.3333%; }
.margin5  { margin-left:41.6666%; }
.margin6  { margin-left:50.0000%; }
.margin7  { margin-left:58.3333%; }
.margin8  { margin-left:66.6666%; }
.margin9  { margin-left:75.0000%; }
.margin10 { margin-left:83.3333%; }
.margin11 { margin-left:91.6666%; }
.margin12 { margin-left:100.0000%; }

.row0  { height: 0px;}
.row1  { height: 40px;}
.row2  { height: 80px;}
.row3  { height: 120px;}
.row4  { height: 160px;}
.row5  { height: 200px;}
.row6  { height: 240px;}
.row7  { height: 280px;}
.row8  { height: 320px;}
.row9  { height: 360px;}
.row10 { height: 400px;}
.row11 { height: 440px;}
.row12 { height: 480px;}
.row13 { height: 520px;}
.row14 { height: 560px;}
.row15 { height: 600px;}
.row16 { height: 640px;}

/* Padding
------------------------------------------------------- */
.pad0    { padding:5px; }
.pad1    { padding:10px; }
.pad2    { padding:20px; }
.pad4    { padding:40px; }

.pad0x { padding-left: 5px; padding-right: 5px;}
.pad1x { padding-left: 10px; padding-right: 10px;}
.pad2x { padding-left: 20px; padding-right: 20px;}
.pad4x { padding-left: 40px; padding-right: 40px;}

.pad0y { padding-top: 5px; padding-bottom: 5px;}
.pad1y { padding-top: 10px; padding-bottom: 10px;}
.pad2y { padding-top: 20px; padding-bottom: 20px;}
.pad4y { padding-top: 40px; padding-bottom: 40px;}

/* Keylines
------------------------------------------------------- */
.keyline-all    { border:1px solid rgba(0,0,0,0.20); }
.keyline-top    { border-top:1px solid rgba(0,0,0,0.20); }
.keyline-right  { border-right:1px solid rgba(0,0,0,0.20); }
.keyline-bottom { border-bottom:1px solid rgba(0,0,0,0.20); }
.keyline-left   { border-left:1px solid rgba(0,0,0,0.20); }

/* Fixed containers
------------------------------------------------------- */
.pin-top,
.pin-right,
.pin-bottom,
.pin-left {
  position:absolute;
  }
  .pin-bottom { right:0; bottom:0; left:0; }
  .pin-top    { top:0; right:0; left:0; }
  .pin-left   { top:0; bottom:0; left:0; }
  .pin-right  { top:0; right:0; bottom:0; }

/* Animation
------------------------------------------------------- */
.animate {
  -webkit-transition:all .125s;
     -moz-transition:all .125s;
      -ms-transition:all .125s;
          transition:all .125s;
  }

/* Additional Utility Classes
------------------------------------------------------- */
.fr                           { float:right; }
.fl                           { float:left; }
.dot                          { border-radius:50%; }
.quiet                        { color:#7f7f7f; color: rgba(0,0,0,.5); }
.dark .quiet                  { color: #7f7f7f; color: rgba(255,255,255,.5);}
.center                       { text-align:center; }
.contain                      { position:relative; }
.clip                         { overflow:hidden; }
.hidden                       { display:none; }
.text-left                    { text-align:left; }
.text-right                   { text-align:right; }
.space > *                    { margin-right:5px; }
.space-bottom0                { margin-bottom:5px; }
.space-bottom1                { margin-bottom:10px; }
.space-bottom2, .space-bottom { margin-bottom:20px; }
.space-bottom4                { margin-bottom:40px; }
.hide-tablet, .hide-mobile    { display:block; }
.show-tablet, .show-mobile    { display:none; }
.show-mobile                  { display:none; }
img.inline, .inline           { display:inline-block; }
.block                        { display:block; }
.small                        { font-size:14px; line-height:24px; }
.z1   { z-index:1; }
.z10  { z-index:10; }
.z100 { z-index:100; }

.truncate {
  text-overflow:ellipsis;
  white-space:nowrap;
  overflow:hidden;
  }

/* Markup free clearing
Details: http://www.positioniseverything.net/easyclearing.html
------------------------------------------------------- */
.clearfix:after {
  content:'.';
  display:block;
  height:0;
  clear:both;
  visibility:hidden;
  }

.clearfix { display:inline-block; }

/* Tablet Layout
------------------------------------------------------- */
@media only screen and (max-width:770px) {
  .hide-tablet { display:none; }
  .show-tablet { display:block; }
  }

/* Mobile Layout
------------------------------------------------------- */
@media only screen and (max-width:640px) {
  .col1,
  .col2,
  .col3,
  .col4,
  .col5,
  .col6,
  .col7,
  .col8,
  .col9,
  .col10,
  .col11,
  .col12 { width:100%; max-width:100%; }
  .margin0,
  .margin1,
  .margin2,
  .margin3,
  .margin4,
  .margin5,
  .margin6,
  .margin7,
  .margin8,
  .margin9,
  .margin10,
  .margin11,
  .margin12 { margin-left:0; }
  .pad4c { padding:0; }
  .pad4,
  .pad4h { padding-left:20px; padding-right:20px; }
  .pad8 { padding:40px 20px; }
  .hide-mobile { display:none; }
  .show-mobile { display:block; }
  .container { margin:0; }

  .header .contact { text-align:left; }
  /* Some little special cases */
  .header .subtitle { top:10px; }

  .row1  { height:auto; min-height: 40px;}
  .row2  { height:auto; min-height: 80px;}
  .row3  { height:auto; min-height: 120px;}
  .row4  { height:auto; min-height: 160px;}
  .row5  { height:auto; min-height: 200px;}
  .row6  { height:auto; min-height: 240px;}
  .row7  { height:auto; min-height: 280px;}
  .row8  { height:auto; min-height: 320px;}
  .row9  { height:auto; min-height: 360px;}
  .row10 { height:auto; min-height: 400px;}
  .row11 { height:auto; min-height: 440px;}
  .row12 { height:auto; min-height: 480px;}
  .row13 { height:auto; min-height: 520px;}
  .row14 { height:auto; min-height: 560px;}
  .row15 { height:auto; min-height: 600px;}
  .row16 { height:auto; min-height: 640px;}
  }

h1 { font-family: 'Comfortaa', cursive; font-size:32px; line-height:36px; }
body { background-image: url('/img/old_mathematics.png'); color:#404040; }

a       { color:#279acb; }
a:hover { text-decoration:underline; }

.dark a, 
.dark a:hover { color:#fff; text-decoration:none; }

h1 a, 
h2 a,
h3 a,
h4 a,
h5 a,
h6 a { color:#404040; }

h1 a:hover,
h2 a:hover,
h3 a:hover,
h4 a:hover,
h5 a:hover,
h6 a:hover { text-decoration:none;}

.main {
  background-image: url('/img/maptime-sf-blurred.jpg');
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -o-background-size: cover;
  background-size: cover;
  background-position: center;
}
.about {
  background-image: url('/img/maptime-about.jpg');
}

.main h1 {}
@media screen and (min-width: 800px) {
  .main h1 {
    font-size: 80px;
    line-height: 80px;
  }
}

.button {
  background: rgba(255,255,255,0.2);
  margin: 0;
  color:#fff;
  display:inline-block;
  /*border-radius:4px;*/
  text-align:center;
  padding:8px 20px;
  font-weight:bold;
  border-style: solid;
  }
  .dark .button:hover,
  .button:hover {
    text-decoration:none;
    color: #ddd;
    border-color: #ddd;
    }
  .button:active {
    position:relative;
    top:2px;
    box-shadow:none;
    }

.button.stroke {
  border-color: white;
  border-width: 2px;
}

.button.right {
  right: 200px;
  position: absolute;
  top: 40px;
}

/*
 * MAIN NAVIGATION
 */
.navbar {
  background:rgb(19,78,102);
  z-index: 100;
}
#nav { display:block; }
  #nav ul { display:none; }
  #nav li {
    text-align:right;
    width:100%;
    padding:7px 10px;
    border-bottom:1px solid rgba(255,255,255,0.25);
  }
  #nav li a {
    color:#ffffff;
    font-size:1.1em;
    font-family:'Comfortaa', cursive;
    font-weight: bold;
    text-align:center;
    display:inline-block;
    padding:10px 15px;
    color: rgba(255,255,255,0.8);
  }
  #nav li.current_page_item a { background-color:#222; }

button.nav-expand {
  position:relative;
  z-index: 10;
  padding:13px 10px;
  border:none;
  background:rgb(19,78,102);
  float:right;
}
button.nav-expand:hover {
  opacity:.8;
  cursor:pointer;
}
button.nav-expand:focus { outline:none; }

@media screen and (min-width: 800px) {
  .navbar {
    background:transparent;
    text-align:right;
    position:absolute;
    right:0;
  }
  #nav ul {
    float:right;
    display:block;
  }
  #nav li {
    background-color:transparent;
    width:auto;
    padding:0;
    float:left;
    border:none;
  }
  #nav li a {
    border-bottom:2px solid rgba(255,255,255,0.25);
    background:rgba(19,78,102,.6);
    border-left:1px solid rgba(255,255,255,0.25);
  }
  #nav li.active a { background:rgba(19,78,102,.8); }
  #nav li.event a { background:rgba(31, 166, 70,.8); }
  #nav li a:hover {
    text-decoration: none;
    background:rgba(19,78,102,.8);
  }
  button.nav-expand {
    display:none;
  }
}

/* Tab style for links that toggle between views */
.tabs {
  position: absolute;
  z-index: 1;
  right: 10px;
  }
  .tabs,
  .pill.tabs {
    -webkit-border-radius:3px;
            border-radius:3px;
    }
  .tabs > a {
    border-bottom:2px solid rgba(255,255,255,0.25);
    background:rgba(19,78,102,.6);
    font-family:'Comfortaa', cursive;
    font-weight: bold;
    text-align:center;
    display:inline-block;
    margin:0;
    padding:10px;
    white-space:nowrap;
    text-overflow:ellipsis;
    color: rgba(255,255,255,0.8);
    }
    .tabs > * {
      border:0 solid rgba(255,255,255,0.25);
      border-right-width:1px;
      }
    .tabs > *:first-child {
      border-left-width:1px;
      border-radius: 3px 0 0 3px;
      }
    .tabs > *:last-child {
      border-radius: 0 3px 3px 0;
      }
    .tabs > *:hover {
      background:rgba(19,78,102,.8);
      }
    .tabs > *.active {
      background:rgba(19,78,102,.8);
      }


.round { border-radius:4px; }
.dark { color:#fff; }
.strong { font-weight:bold; }
.block { display:block; }
.capitalize { text-transform:capitalize; }

.icon:before,
.rcon:after,
.sprite {
  background:transparent url(/img/sprite@2x.png) no-repeat 0 0;
  display:inline-block;
  text-indent:-999em;
  background-size:640px 140px;
  }
  .icon:before,
  .rcon:after {
    content:'';
    width:20px;
    height:20px;
    vertical-align:middle;
    }
  .icon:before { margin-right:5px; }
  .rcon:after  { margin-left:5px; }

  .sprite.maptime {
    background-position:0 0;
    width:385px;
    height:140px;
    /*top:120px;*/
    left: 0;
    }
  .sprite.marker {
    background-position:-385px 0;
    width:100px;
    height:140px;
    }
  .sprite.mozilla {
    background-position:-485px -100px;
    width:140px;
    height:40px;
    }

.rcon.right-arrow:after, .icon.right-arrow:before { background-position:-485px 0; }
.rcon.left-arrow:after, .icon.left-arrow:before  { background-position:-505px 0; }

.fill-light   { background-color:#eee; }

.fill-blue            { background-color:#2babe2; }
a.fill-blue:hover     { background-color:#279acb; text-decoration:none; }
.fill-purple          { background-color:#B44176; }
a.fill-purple:hover   { background-color:#5b2980; text-decoration:none; }
.fill-green           { background-color:#009347; }
a.fill-green:hover    { background-color:#008440; text-decoration:none; }
.fill-ltgreen         { background-color:#6CA67A; }
a.fill-ltgreen:hover  { background-color:#6CA67A; text-decoration:none; }
.fill-yellow          { background-color:#beb311; }
a.fill-yellow:hover   { background-color:#d5c917; text-decoration:none; }
.fill-orange          { background-color:#f79420; }
a.fill-orange:hover   { background-color:#de851d; text-decoration:none; }
.fill-red             { background-color:#ec2127; }
a.fill-red:hover      { background-color:#d41e23; text-decoration:none; }
.fill-navy            { background:rgba(19,78,102,.6);}

.fill-darken3 {
    background-color: rgba(9, 37, 44, 0.65);
}

a.fill-red:hover      { background-color:#008440; text-decoration:none; }

.fill-darken0         { background-color:rgba(0,0,0,0.10); }
a.fill-darken0:hover  { background-color:rgba(0,0,0,0.15); }
.fill-darken1 { background-color:rgba(0,0,0,0.25); }

.fill-chapter {
  /* Replace this with a map of your city */
  /*background-image:url(img/toronto.png); 
  background-repeat:no-repeat;
  background-size:cover;*/
  max-width:100%;
  position: absolute;
  top: 96px;
  left: 18px;
  }

.thumbnail {
  display:inline-block;
  width:48px;
  height:48px;
  background: white 50% 50% no-repeat;
  background-size: 48px;
  }
.popup {
  display:none;
  position:absolute;
  right:-24px;
  bottom:48px;
  width:100px;
  z-index:10;
  box-shadow:0 2px 0 0 rgba(0,0,0,0.10);
  color:#404040;
  background:#fff;
  }
  .popup:after {
    content:'';
    position:absolute;
    border-left:5px solid transparent;
    border-right:5px solid transparent;
    border-top:5px solid #fff;
    bottom:-5px;
    right:45px;
    }
  .popup span {
    width:80px;
    display:block;
    }
  .thumbnail:hover .popup { display:block; }

.popup-group      { position:relative; }
.popup-group > a:hover + .popup { display:block; }

.popup.popup-big {
  width:320px; 
  right:auto;
  top:0;
  left:-330px;
  bottom:auto;
  }
  .popup.popup-big:after {
    top:10px;
    bottom:auto;
    right:-8px;
    border-top:8px solid transparent;
    border-bottom:8px solid transparent;
    border-left:8px solid rgba(0,0,0,0.10);
    border-right:none;
    }

.followers {
  max-height:480px;
  position:relative;
  }
  .followers:after {
    /*background:red;*/
    content:'';
    display:block;
    position:absolute;
    bottom:0;
    width:100%;
    height:40px; 
    }

.chapter a {
    color: rgba(19,78,102,.8);
    }
.chapter a:hover {
  color:rgba(19,78,102,.8);
  text-decoration: underline;
  }
.chapter a.active {
  color:rgba(19,78,102,.8);
  }
.chapter img {
  display:inline;
  margin:0 auto;
  }
.chapter h2:first-child {
  padding-top: 20px;
}
.chapter h2 {
  margin-bottom: 0px;
}


@media only screen and (max-width:800px) {
  .sidebar, .content { width:50%; }
  .sprite.maptime { max-width:100%; }
}
@media only screen and (max-width:640px) {
  .sidebar, .content { width:100%; }
  .sidebar { padding:0; }
  header .limiter { padding:120px 0 0; }
}

/* Chapter map */
#map { width:100%; height: 480px;}

.content {
	background: white;
	padding: 2em;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  border-radius: 5px;
}

/* Hover link for sharing an anchor tag */
a.hover-link {
  display: inline-block;
  content: "";
}

a.hover-link:after {
  display: inline-block;
  position: relative;
  right: 20px;
  opacity: 0;
  content: "";
  -moz-transition: all 0.5s ease;
  -o-transition: all 0.5s ease;
  -webkit-transition: all 0.5s ease;
  transition: all 0.5s ease;
}

a.hover-link:hover:after {
  opacity: 1;
  right: -5px;
  vertical-align: middle;
  content: url(../img/link-sm.png);
}

.share-heading {
  display: inline-block;
}

/* start a chapter */
.form-alert {
  display:none;
  padding:1em;
  background:rgb(31, 166, 70);
  color:white;
  font-weight:900;
  margin-bottom:1em;
  border-radius:.5em;
}
.form-alert.show {
  display:block;
}
