﻿/*! normalize.css v2.1.3 | MIT License | git.io/normalize */

/* ==========================================================================
   HTML5 display definitions
   ========================================================================== */

/**
 * Correct `block` display not defined in IE 8/9.
 */

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
nav,
section,
summary {
    display: block;
}

/**
 * Correct `inline-block` display not defined in IE 8/9.
 */

audio,
canvas,
video {
    display: inline-block;
}

/**
 * Prevent modern browsers from displaying `audio` without controls.
 * Remove excess height in iOS 5 devices.
 */

audio:not([controls]) {
    display: none;
    height: 0;
}

/**
 * Address `[hidden]` styling not present in IE 8/9.
 * Hide the `template` element in IE, Safari, and Firefox < 22.
 */

[hidden],
template {
    display: none;
}

/* ==========================================================================
   Base
   ========================================================================== */

/**
 * 1. Set default font family to sans-serif.
 * 2. Prevent iOS text size adjust after orientation change, without disabling
 *    user zoom.
 */

html {
    font-family: sans-serif; /* 1 */
    -ms-text-size-adjust: 100%; /* 2 */
    -webkit-text-size-adjust: 100%; /* 2 */
}

/**
 * Remove default margin.
 */

body {
    margin: 0;
}

/* ==========================================================================
   Links
   ========================================================================== */

/**
 * Remove the gray background color from active links in IE 10.
 */

a {
    background: transparent;
}

/**
 * Address `outline` inconsistency between Chrome and other browsers.
 */

a:focus {
    outline: thin dotted;
}

/**
 * Improve readability when focused and also mouse hovered in all browsers.
 */

a:active,
a:hover {
    outline: 0;
}

/* ==========================================================================
   Typography
   ========================================================================== */

/**
 * Address variable `h1` font-size and margin within `section` and `article`
 * contexts in Firefox 4+, Safari 5, and Chrome.
 */

h1 {
    font-size: 2em;
    margin: 0.67em 0;
}

/**
 * Address styling not present in IE 8/9, Safari 5, and Chrome.
 */

abbr[title] {
    border-bottom: 1px dotted;
}

/**
 * Address style set to `bolder` in Firefox 4+, Safari 5, and Chrome.
 */

b,
strong {
    font-weight: bold;
}

/**
 * Address styling not present in Safari 5 and Chrome.
 */

dfn {
    font-style: italic;
}

/**
 * Address differences between Firefox and other browsers.
 */

hr {
    -moz-box-sizing: content-box;
    box-sizing: content-box;
    height: 0;
}

/**
 * Address styling not present in IE 8/9.
 */

mark {
    background: #ff0;
    color: #000;
}

/**
 * Correct font family set oddly in Safari 5 and Chrome.
 */

code,
kbd,
pre,
samp {
    font-family: monospace, serif;
    font-size: 1em;
}

/**
 * Improve readability of pre-formatted text in all browsers.
 */

pre {
    white-space: pre-wrap;
}

/**
 * Set consistent quote types.
 */

q {
    quotes: "\201C" "\201D" "\2018" "\2019";
}

/**
 * Address inconsistent and variable font size in all browsers.
 */

small {
    font-size: 80%;
}

/**
 * Prevent `sub` and `sup` affecting `line-height` in all browsers.
 */

sub,
sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline;
}

sup {
    top: -0.5em;
}

sub {
    bottom: -0.25em;
}

/* ==========================================================================
   Embedded content
   ========================================================================== */

/**
 * Remove border when inside `a` element in IE 8/9.
 */

img {
    border: 0;
}

/**
 * Correct overflow displayed oddly in IE 9.
 */

svg:not(:root) {
    overflow: hidden;
}

/* ==========================================================================
   Figures
   ========================================================================== */

/**
 * Address margin not present in IE 8/9 and Safari 5.
 */

figure {
    margin: 0;
}

/* ==========================================================================
   Forms
   ========================================================================== */

/**
 * Define consistent border, margin, and padding.
 */

fieldset {
    border: 1px solid #c0c0c0;
    margin: 0 2px;
    padding: 0.35em 0.625em 0.75em;
}

/**
 * 1. Correct `color` not being inherited in IE 8/9.
 * 2. Remove padding so people aren't caught out if they zero out fieldsets.
 */

legend {
    border: 0; /* 1 */
    padding: 0; /* 2 */
}

/**
 * 1. Correct font family not being inherited in all browsers.
 * 2. Correct font size not being inherited in all browsers.
 * 3. Address margins set differently in Firefox 4+, Safari 5, and Chrome.
 */

button,
input,
select,
textarea {
    font-family: inherit; /* 1 */
    font-size: 100%; /* 2 */
    margin: 0; /* 3 */
}

/**
 * Address Firefox 4+ setting `line-height` on `input` using `!important` in
 * the UA stylesheet.
 */

button,
input {
    line-height: normal;
}

/**
 * Address inconsistent `text-transform` inheritance for `button` and `select`.
 * All other form control elements do not inherit `text-transform` values.
 * Correct `button` style inheritance in Chrome, Safari 5+, and IE 8+.
 * Correct `select` style inheritance in Firefox 4+ and Opera.
 */

button,
select {
    text-transform: none;
}

/**
 * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
 *    and `video` controls.
 * 2. Correct inability to style clickable `input` types in iOS.
 * 3. Improve usability and consistency of cursor style between image-type
 *    `input` and others.
 */

button,
html input[type="button"], /* 1 */
input[type="reset"],
input[type="submit"] {
    -webkit-appearance: button; /* 2 */
    cursor: pointer; /* 3 */
}

/**
 * Re-set default cursor for disabled elements.
 */

button[disabled],
html input[disabled] {
    cursor: default;
}

/**
 * 1. Address box sizing set to `content-box` in IE 8/9/10.
 * 2. Remove excess padding in IE 8/9/10.
 */

input[type="checkbox"],
input[type="radio"] {
    box-sizing: border-box; /* 1 */
    padding: 0; /* 2 */
}

/**
 * 1. Address `appearance` set to `searchfield` in Safari 5 and Chrome.
 * 2. Address `box-sizing` set to `border-box` in Safari 5 and Chrome
 *    (include `-moz` to future-proof).
 */

input[type="search"] {
    -webkit-appearance: textfield; /* 1 */
    -moz-box-sizing: content-box;
    -webkit-box-sizing: content-box; /* 2 */
    box-sizing: content-box;
}

/**
 * Remove inner padding and search cancel button in Safari 5 and Chrome
 * on OS X.
 */

input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
    -webkit-appearance: none;
}

/**
 * Remove inner padding and border in Firefox 4+.
 */

button::-moz-focus-inner,
input::-moz-focus-inner {
    border: 0;
    padding: 0;
}

/**
 * 1. Remove default vertical scrollbar in IE 8/9.
 * 2. Improve readability and alignment in all browsers.
 */

textarea {
    overflow: auto; /* 1 */
    vertical-align: top; /* 2 */
}

/* ==========================================================================
   Tables
   ========================================================================== */

/**
 * Remove most spacing between table cells.
 */

table {
    border-collapse: collapse;
    border-spacing: 0;
}

/*

COLORS

dark brown #262524
dark dark brown #161615
link orange #FB4
blue #4BF
green #1FB


*/

* {
  -webkit-box-sizing: border-box;
     -moz-box-sizing: border-box;
          box-sizing: border-box;
}

body {
  font-family: 'Lucida Sans', 'Lucida Sans Regular', 'Lucida Grande', 'Lucida Sans Unicode', Arial, sans-serif;
  font-size: 15px;
  line-height: 1.5;
  color: #EEE;
  background: #262524;
}

/* margins */
h1, h2, h3, h4, h5, h6,
p,
ol, ul,
pre {
  margin-top: 0;
  margin-bottom: 1.0em;
}

/* Fonts
------------------------- */

/* montserrat */

h1, h2, h3, h4, h5, h6,
#site-nav li,
.tagline,
.element-item,
.buy-button,
.big-ol-buttons .button,
.param-bit b,
#in-use-container,
#multiple-sort-by-demo,
.support-button,
.footer-copy,
.other-product {
  font-family: 'Montserrat', Gotham, 'Proxima Nova', 'Lucida Sans', 'Lucida Sans Regular', 'Lucida Grande', 'Lucida Sans Unicode', Arial, sans-serif;
}

/* metafizzy logo */
@font-face {
  font-family: 'Metafizzy Logo';
  src: url('../fonts/metafizzylogo-regular.eot');
  src: url('../fonts/metafizzylogo-regular.eot?#iefix') format('embedded-opentype'),
       url('../fonts/metafizzylogo-regular.woff') format('woff'),
       url('../fonts/metafizzylogo-regular.ttf') format('truetype');
  font-weight: normal;
  font-style: normal;
}

/* ---- links ---- */

a,
a code {
  color: #FB4;
  text-decoration: none;
}

a:hover,
a:hover code {
  color: #4BF;
}

a:active,
a:active code {
  color: #1FB;
  background: #161615;
}

/* ---- headers ---- */

h1, h2, h3, h4 {
  line-height: 1.25;
}

h1 {
  font-weight: bold;
  font-size: 2.65em;
  margin-bottom: 0.2em;
  margin-top: 2.0em;
}

h1:first-child { margin-top: 0; }

h2 {
  font-weight: bold;
}

h3 {
  font-weight: normal;
  font-size: 1.4em;
  margin-top: 2.0em;
  margin-bottom: 0.8em;
}

h4 {
  text-transform: uppercase;
  letter-spacing: 0.1em;
  font-size: 1.1em;
}

/* ---- lists ---- */

ul, ol {
  padding-left: 1.8em;
}

/* Code
------------------------- */

pre, code {
  font-family: Consolas, Menlo, monospace;
  font-size: 14px;
  background: #161615;
  color: white;
}

pre {
  padding: 0.8em;
  border-radius: 5px;
}

code {
  padding: 0.2em 0.3em;
  line-height: 1.2;
  border-radius: 3px;
}

pre code {
  padding: 0;
  line-height: 1.5;
  background: none;
}

a code {
  background: #A2C;
  color: white;
}

a:hover code {
  color: white;
  background: #D26;
}

code .string,
code .tag .value { color: #0C4; }
code .number, /* integer */
code .cp, /* doctype */
code .literal { color: #38F; } /*boolean*/
code .keyword { color: #F73; } /* keyword */
code .kd, /* storage */
code .attribute { color: #DC8; } /* markup attribute */
code .title { color: #9CF; }
code .params { color: #98D; }
code .regexp  { color: #FC8; } /* regex */
code .o  { color: #F63; }   /* operator */
code .nb { color: #AA97AC;} /* support */

/* comment */
code .comment { color: #999; font-style: italic; }

code .tag { color: #6CF; } /* Markup open tag */

code .id { color: #ABC; } /* css id */
code .class { color: #A63; }  /* CSS class */
code .rules { color: #FED; }
code .m  { color: #DE8E50; } /* CSS value */
code .nd { color: #9FAD7E; } /* CSS pseudo selector */
code .hexcolor { color: #F63; }
code .at_rule { color: #088; }

.code-display code {
  font-size: 18px;
}
/* ---- demos ---- */

.demo {
  margin-bottom: 0.8em;
}

.demo .isotope,
.demo.isotope {
  border: 2px solid #484542;
  background: hsla(0, 0%, 0%, 0.15);
}

/* horizontal examples need height */
.isotope.horizontal {
  height: 334px;
}

.demo .button {
  margin-bottom: 0.8em;
}


/* clearfix */
.isotope:before,
.isotope:after {
  content: " ";
  display: table;
}

.isotope:after {
  clear: both;
}


/* ---- item elements ---- */

.element-item {
  position: relative;
  float: left;
  width: 100px;
  height: 100px;
  margin: 5px;
  padding: 10px;
  background: #888;
  color: #262524;
}

.element-item > * {
  margin: 0;
  padding: 0;
}

.element-item .name {
  position: absolute;

  left: 10px;
  top: 60px;
  text-transform: none;
  letter-spacing: 0;
  font-size: 12px;
  font-weight: normal;
}

.element-item .symbol {
  position: absolute;
  left: 10px;
  top: 0px;
  font-size: 42px;
  font-weight: bold;
  color: white;
}

.element-item .number {
  position: absolute;
  right: 8px;
  top: 5px;
}

.element-item .weight {
  position: absolute;
  left: 10px;
  top: 76px;
  font-size: 12px;
}

.element-item.alkali          { background: #F00; background: hsl(   0, 100%, 50%); }
.element-item.alkaline-earth  { background: #F80; background: hsl(  36, 100%, 50%); }
.element-item.lanthanoid      { background: #FF0; background: hsl(  72, 100%, 50%); }
.element-item.actinoid        { background: #0F0; background: hsl( 108, 100%, 50%); }
.element-item.transition      { background: #0F8; background: hsl( 144, 100%, 50%); }
.element-item.post-transition { background: #0FF; background: hsl( 180, 100%, 50%); }
.element-item.metalloid       { background: #08F; background: hsl( 216, 100%, 50%); }
.element-item.diatomic        { background: #00F; background: hsl( 252, 100%, 50%); }
.element-item.halogen         { background: #F0F; background: hsl( 288, 100%, 50%); }
.element-item.noble-gas       { background: #F08; background: hsl( 324, 100%, 50%); }

/* varying sizes */
.is-varying-sizes .element-item.width2 { width: 210px; }
.is-varying-sizes .element-item.height2 { height: 210px; }

/* ---- mini items ---- */

.item,
.mini-item {
  float: left;
  width: 50px;
  height: 50px;
  background: #e6e5e4;
  border: 2px solid #b6b5b4;
  border-color: hsla(0, 0%, 0%, 0.4);
}

.mini-item.w2 { width: 100px; }
.mini-item.h2 { height: 100px; }

.mini-item.w3 { width: 150px; }
.mini-item.h3 { height: 150px; }

.mini-item.gigante {
  width: 150px;
  height: 200px;
}

.clickable .mini-item:hover {
  border-color: #28F;
  background: #8CF;
  cursor: pointer;
}


/* ----  ---- */

.rainbowed > *:nth-child(10n+0) { background: hsl(   0, 100%, 50%); }
.rainbowed > *:nth-child(10n+1) { background: hsl(  36, 100%, 50%); }
.rainbowed > *:nth-child(10n+2) { background: hsl(  72, 100%, 50%); }
.rainbowed > *:nth-child(10n+3) { background: hsl( 108, 100%, 50%); }
.rainbowed > *:nth-child(10n+4) { background: hsl( 144, 100%, 50%); }
.rainbowed > *:nth-child(10n+5) { background: hsl( 180, 100%, 50%); }
.rainbowed > *:nth-child(10n+6) { background: hsl( 216, 100%, 50%); }
.rainbowed > *:nth-child(10n+7) { background: hsl( 252, 100%, 50%); }
.rainbowed > *:nth-child(10n+8) { background: hsl( 288, 100%, 50%); }
.rainbowed > *:nth-child(10n+9) { background: hsl( 324, 100%, 50%); }

/* ---- individual demos ---- */

/* flexible 5 columns */
.flex-5-col .grid-sizer,
.flex-5-col .mini-item { width: 20%; }
.flex-5-col .mini-item.w2 { width: 40%; }
.flex-5-col .gutter-sizer { width: 5%; }

/* masonry gutter */
.masonry-gutter .mini-item.w2,
.packery-gutter .mini-item.w2 { width: 110px; }

.packery-gutter .mini-item.h2 { height: 110px; }

/* masonry bottom spaced */
#masonry-bottom-spaced .mini-item {
  margin-bottom: 10px;
}
#masonry-bottom-spaced .mini-item.h2 {
  height: 110px;
}

/* flexible 4 columns w/ gutter */
.flex-4-col-gutter .grid-sizer,
.flex-4-col-gutter .mini-item { width: 22%; }
.flex-4-col-gutter .mini-item.w2 { width: 48%; }
.flex-4-col-gutter .gutter-sizer { width: 4%; }

/* masonry flex gutter */
#masonry-flex-gutter .gutter-sizer {
  width: 3%;
}

#masonry-horizontal-right-spaced .mini-item {
  margin-right: 10px;
}

/* ---- fit width ---- */

#masonry-fit-width {
  border: 2px solid white;
}

/* center container with CSS */
#masonry-fit-width .isotope {
  margin: 10px auto;
}

/* ---- cells-by-row-element-sizing ---- */

.cells-by-row-element-sizing .mini-item { width: 10.5%; }

.cells-by-row-element-sizing .mini-item.w2 { width: 23%; }

.cells-by-row-element-sizing .grid-sizer {
  width: 25%;
  height: 110px;
}

/* ---- cells-by-column-element-sizing ---- */

.cells-by-row-column-sizing .mini-item { height: 10.5%; }

.cells-by-row-column-sizing .mini-item.w2 { height: 23%; }

.cells-by-row-column-sizing .grid-sizer {
  width: 110px;
  height: 25%;
}

/* ---- counting ---- */

.isotope.counting {
  counter-reset: item;
}

.isotope.counting .mini-item:before,
.isotope.counting .item:before {
  counter-increment: item;
  content: counter(item);
  display: block;
  color: #555;
  padding-top: 0.2em;
  text-align: center;
  font-size: 18px;
}

/* ---- measurement demos ---- */

#gutter-opt-demo2 .item {
  margin-bottom: 10px;
}

/* responive column width */
#column-width-demo2 .grid-sizer { width: 20%; }
#column-width-demo2 .item { width: 20%; }
#column-width-demo2 .item.w2 { width: 40%; }

#row-height-demo2 .grid-sizer {
  height: 60px;
}

#gutter-opt-demo3 .gutter-sizer {
  width: 3%;
}

/* ---- stamp ---- */

.has-stamp {
  position: relative;
}

.demo .stamp {
  position: absolute;
  width: 30%;
  height: 60px;
  background: orange;
  border: 4px dotted #161615;
}

#stamp-opt-demo .stamp1 {
  left: 30%;
  top: 10px;
  width: 20%;
  height: 100px;
}

#stamp-opt-demo .stamp2 {
  right: 10%;
  top: 20px;
  width: 70%;
  height: 30px;
}

#stamp-demo .stamp {
  right: 10%;
  top: 10px;
  width: 35%;
  height: 70px;
}

#stamp-demo .mini-item { opacity: 0.8; }

#packery-stamp-opt-demo .stamp1 {
  right: 20%;
  top: 80px;
  width: 45%;
  height: 90px;
}

/* ---- clickable ---- */

.clickable .item:hover {
  border-color: white;
  background: #A2C;
  cursor: pointer;
}

/* ---- vertical table-like ---- */

.table-like {
  list-style: none;
  margin: 0;
  padding: 0;
}

.table-like > li {
  width: 100%;
  clear: both;
  border-top: 1px solid;
  border-color: hsla(0, 0%, 100%, 0.2);
}

/* clearfix */
.table-like > li:after {
  display: block;
  content: '';
  clear: both;
}

.table-like > li > * {
  float: left;
  padding: 2px 4px;
}

.table-like .name { width: 30%; }
.table-like .symbol { width: 10%; }
.table-like .weight { width: 15%; }
.table-like .number { width: 10%; }
.table-like .category { width: 20%; }

/* ----  ---- */

#fit-columns-feature-demo {
  height: 448px;
}

/* ---- insert-demo ---- */

#insert-demo .mini-item .number {
  padding: 0px;
  font-size: 24px;
  font-weight: bold;
  color: #777;
  text-align: center;
  line-height: 50px;
}

/* ---- multiple-sort-by ---- */

#multiple-sort-by-demo .mini-item .number {
  font-size: 50px;
  font-weight: 600;
  color: #222;
  padding-top: 0.1em;
  text-align: center;
}

#multiple-sort-by-demo [data-color="blue"] { background: blue; }
#multiple-sort-by-demo [data-color="red"] { background: red; }
#multiple-sort-by-demo [data-color="yellow"] { background: yellow; }

/* ---- animate-item-size ---- */

/* item is invisible, but used for layout */
.isotope.animate-item-size-demo .item,
.isotope.animate-item-size-demo .item-content {
  width: 60px;
  height: 60px;
}

.isotope.animate-item-size-demo .item {
  border: none;
  background: transparent;
}

/* item-content is visible, and transitions size */
.animate-item-size-demo .item-content {
  width: 60px;
  height: 60px;
  background: #8DF;
  border: 2px solid #333;
  border-color: hsla(0, 0%, 0%, 0.5);
  -webkit-transition: width 0.4s, height 0.4s;
     -moz-transition: width 0.4s, height 0.4s;
       -o-transition: width 0.4s, height 0.4s;
          transition: width 0.4s, height 0.4s;
}

.animate-item-size-demo .item:hover .item-content {
  border-color: white;
  background: #4BF;
}

/* both item and item content change size */
.animate-item-size-demo .item.is-expanded,
.animate-item-size-demo .item.is-expanded .item-content {
  width: 180px;
  height: 120px;
}

.animate-item-size-demo .item.is-expanded {
  z-index: 2;
}

.animate-item-size-demo .item.is-expanded .item-content {
  background: #F90;
}


/* ---- animate item size responsive ---- */

#animate-item-size-responsive .item,
#animate-item-size-responsive .grid-sizer {
  width: 20%;
}

#animate-item-size-responsive .item-content {
  width:  100%;
  height: 100%;
}

/* item has expanded size */
#animate-item-size-responsive .item.is-expanded {
  width: 60%;
}

/* ---- combination filters ---- */

.ui-group {
  display: inline-block;
}

.ui-group h3 {
  display: inline-block;
  vertical-align: top;
  line-height: 36px;
  margin: 0 0.2em 0 0;
  font-size: 16px;
}

.ui-group .button-group {
  display: inline-block;
  margin-right: 20px;
}

.color-shape {
  width: 70px;
  height: 70px;
  margin: 5px;
  float: left;
}
 
.color-shape.round {
  border-radius: 35px;
}
 
.color-shape.big.round {
  border-radius: 75px;
}
 
.color-shape.red { background: red; }
.color-shape.blue { background: blue; }
.color-shape.yellow { background: yellow; }
 
.color-shape.wide, .color-shape.big { width: 150px; }
.color-shape.tall, .color-shape.big { height: 150px; }

/* ---- Metafizzy logo ---- */

/* use custom font for logo */
.metafizzy-logo {
  font-family: 'Metafizzy Logo', sans-serif;
}

.metafizzy-logo .etafizzy {
  display: none;
}

/* ---- footer ---- */

#footer {
  position: relative;
  padding: 3.0em 0;
  background: #161615;
}

#footer .primary-content {
  border: none;
}

#footer .brand {
  bottom: 20px;
  text-align: center;
  font-size: 12px;
}

#footer .metafizzy-logo {
  display: block;
  font-size: 80px;
  line-height: 1.3;
  background: none;
  color: #4BF;
  opacity: 0.5;
}

#footer a.metafizzy-logo {  }

#footer .metafizzy-logo:hover {
  color: #FB4;
  opacity: 1;
}

.footer-copy {
  font-size: 18px;
}

#footer .other-products {
  margin-bottom: 30px;
}

/* desktop */
@media screen and ( min-width: 800px ) {
  #footer {
    min-height: 240px;
  }

  #footer .brand {
    width: 200px;
    position: absolute;
    left: 0;
    top: 20px;
  }

  #footer .metafizzy-logo {
    font-size: 130px;
  }
}

#hero {
}

#hero .primary-content {
  padding-bottom: 20px;
}

#hero .primary-content:after  {
  content: '';
  display: block;
  clear: both;
}

#hero h1 {
  font-size: 70px;
  line-height: 1.2;
  letter-spacing: -0.01em;
  margin-bottom: 0.1em;
}

#hero .tagline {
  font-size: 24px;
  margin-bottom: 0.8em;
  line-height: 1.2;
}


/* ---- hero buttons ---- */

.big-ol-buttons:after {
  content: '';
  display: block;
  clear: both;
}

.big-ol-buttons .button {
  position: relative;
  padding-left: 50px;
  min-height: 52px;
  font-size: 18px;
  background: #161615;
  color: #FB4;
  text-shadow: none;
}

.big-ol-buttons .button:hover {
  background: #4FB;
  color: #222;
  text-shadow: none;
}

.big-ol-buttons .icon {
  position: absolute;
  left: 10px;
  top: 10px;
  font-size: 32px;
}


/* ---- desktop ---- */

@media screen and ( min-width: 960px ) {

  #hero h1 {
    font-size: 120px;
  }

  #hero .tagline {
    font-size: 32px;
  }

  /* buttons */

  .big-ol-buttons .button {
    font-size: 22px;
    padding-left: 86px;
    min-height: 94px;
  }

  .big-ol-buttons .icon {
    font-size: 56px;
    left: 18px;
    top: 16px;
  }

}

@font-face {
	font-family: 'icomoon';
	src:url('../fonts/icomoon.eot');
	src:url('../fonts/icomoon.eot?#iefix') format('embedded-opentype'),
		url('../fonts/icomoon.woff') format('woff'),
		url('../fonts/icomoon.ttf') format('truetype'),
		url('../fonts/icomoon.svg#icomoon') format('svg');
	font-weight: normal;
	font-style: normal;
}

/* Use the following CSS code if you want to use data attributes for inserting your icons */
[data-icon]:before {
	font-family: 'icomoon';
	content: attr(data-icon);
	speak: none;
	font-weight: normal;
	font-variant: normal;
	font-style: normal;
	text-transform: none;
	line-height: 1;
	-webkit-font-smoothing: antialiased;
}

/* Use the following CSS code if you want to have a class per icon */
/*
Instead of a list of all class selectors,
you can use the generic selector below, but it's slower:
[class*="icon-"] {
*/
.icon {
	font-family: 'icomoon';
	speak: none;
	font-style: normal;
	font-weight: normal;
	font-variant: normal;
	text-transform: none;
	line-height: 1;
	-webkit-font-smoothing: antialiased;
}
.icon-file-download:before {
	content: "\e001";
}
.icon-folder-download:before {
	content: "\e002";
}
.icon-github:before {
	content: "\e000";
}

#content #in-use-container {
  max-width: none;
}

#in-use-container .grid-sizer,
.in-use-item { width: 23.5%; }
#in-use-container .gutter-sizer { width: 2%; }

.in-use-item {
  display: block;
  background: #161615;
  float: left;
  margin-bottom: 20px;
  border-radius: 5px;
}

.in-use-item img {
  display: block;
  max-width: 100%;
  border-radius: 0 0 5px 5px;
}

.in-use-item .title {
  margin: 0;
  padding: 10px;
}

/* ---- desktop  ---- */

@media screen and ( min-width: 960px ) {

  /* first primary content not used on homepage */
  .index-page #content > .primary-content:first-child {
    border-top: none;
    padding-top: 0;
  }

}

/* conditional css class
  http://adactio.com/journal/5429/ */
head { font-family: 'base'; }

/* ---- primary-content ---- */

/* stuff that isn't in the gutter */
.primary-content {
  margin-left: 10px;
  margin-right: 10px;
  max-width: 1200px;
}

#content .primary-content > * {
  max-width: 700px;
}

#content #notification,
#content #hero-demos {
  max-width: none;
}

/* ---- #content ---- */

#content h2,
#content .horiz-rule {
  font-size: 1.7em;
  font-weight: 600;
  padding: 20px 0;
  clear: both;
  margin-top: 2.5em;
  border-top: 2px solid #484542;
}

#content h2:target {
  padding-left: 0.5em;
  background: #D26;
  color: white;
}

#content h1:first-child {
  padding-bottom: 20px;
  margin-bottom: 20px;
  border-bottom: 2px solid #484542;
}

#content h1:first-child + h2 {
  border: none;
  margin-top: 0;
}

/* ---- row ---- */

.row .cell {
  margin-bottom: 0.8em;
}

/* clearfix */
.row:after {
  content: ' ';
  display: block;
  clear: both;
}

.row4 .cell {
  float: left;
  width: 48%;
  margin-right: 2%;
}

/* tablet-ish */
@media screen and ( min-width: 800px ) {

  head { font-family: 'desktop'; }

  .primary-content {
    margin-left: 220px;
  }

  #content {
    padding-top: 20px;
    min-height: 540px; /* space so footer doesn't overlap */
  }

  /* content primary-content */
  #content .primary-content {
    padding-top: 20px;
    padding-bottom: 20px;
  }

  #content .primary-content:first-child { border: none; }

  #content .primary-content > * {
    max-width: 700px;
  }

  #content .primary-content > .demo { max-width: none; }

  /* stuff that can go extra wide */
  #content .primary-content .row,
  #content #notification,
  #content #hero-demos {
    max-width: 1200px;
  }

  .row {
    margin-bottom: 0.8em;
  }

  /* clearfix */
  .row:after {
    content: '';
    display: block;
    clear: both;
  }

  /* two column by default*/
  .row .cell {
    float: left;
    width: 48.75%;
    margin-right: 2.5%;
    margin-bottom: 0;
  }
  /* IE8 doesn't support :last-child */
  .lt-ie9 .row .cell { margin-right: 1.5%; }

  /* no margin */
/*  .example.row .cell {
    width: 50%;
    margin-right: 0;
  }*/

  /* three column */
  .row3 .cell {
    width: 31.6%;
  }

  /* four column */
  .row4 .cell {
    width: 23.1%;
  }

  .row .cell:last-child {
    margin-right: 0;
  }

}

/* desktop */
@media screen and ( min-width: 960px ) {

  head { font-family: 'desktop-ish'; }

  .primary-content {
    margin-right: 6%;
  }

}

.tagline {
  font-size: 1.5em;
  line-height: 1.35;
  margin-bottom: 0.4em;
}

/* ---- button ---- */

.button {
  display: inline-block;
  padding: 0.5em 1.0em;
  background: #EEE;
  border: none;
  border-radius: 7px;
  background-image: linear-gradient( to bottom, hsla(0, 0%, 0%, 0), hsla(0, 0%, 0%, 0.2) );
  color: #222;
  font-weight: 500;
  text-shadow: 0 1px white;
  cursor: pointer;
}

.button:hover {
  background-color: #8CF;
  text-shadow: 0 1px hsla(0, 0%, 100%, 0.5);
  color: #222;
}

.button:active,
.button.is-checked {
  background-color: #28F;
}

.button.is-checked {
  color: white;
  text-shadow: 0 -1px hsla(0, 0%, 0%, 0.8);
}

.button:active {
  box-shadow: inset 0 1px 10px hsla(0, 0%, 0%, 0.8);
}

/* hide radio inputs */
.button input[type="radio"] { display: none; }

/* ---- button-group ---- */

.button-group:after {
  content: '';
  display: block;
  clear: both;
}

.button-group .button {
  float: left;
  border-radius: 0;
  margin-right: 1px;
}

.button-group .button:first-child { border-radius: 0.5em 0 0 0.5em; }
.button-group .button:last-child { border-radius: 0 0.5em 0.5em 0; }

/* ---- .buy-button ---- */

.buy-button {
  padding: 0;
  font-size: 1.05em;
}

.buy-button > * {
  display: inline-block;
  padding: 8px 1.0em;
}

.buy-button .price {
  background-color: #2c6;
  border-radius: 0 7px 7px 0;
  color: white;
  text-shadow: 0 -1px hsla(0, 0%, 0%, 0.8);
  background-image: linear-gradient( to bottom, hsla(0, 0%, 0%, 0), hsla(0, 0%, 0%, 0.2) );
}

.buy-button:hover .price { background-color: #2A5; }

.buy-button:active .price { background: transparent; }

.buy-button .dollar { font-size: 0.95em; }
.buy-button .amount { font-size: 1.2em; }

.buy-button ~ .buy-button { margin-left: 2.0em; }

/* ---- #content ---- */

#content .primary-content {
}

#content li {
  margin-bottom: 0.2em;
}

/* ---- parameters ---- */

.params {
  padding: 0;
  list-style: none;
}

.param {
  background: hsla(0, 0%, 100%, 0.1);
  padding: 0.4em 0.8em;
  margin: 0;
  border-radius: 5px;
}

.param,
.param code {
  font-size: 14px;
}

/* just one param */
div.param {
  margin-bottom: 0.8em;
}

.param-bit {
  display: inline;
  display: inline-block;
  margin-bottom: 0;
  margin-right: 1.0em;
}

.param-bit:last-child { margin-right: 0}

.param-name {
  font-size: 15px;
  font-weight: normal;
  color: #BBB;
}

.param-bit b {
  font-weight: normal;
}

.param-bit.type .value {
  color: #ADF;
}

/* ---- instruction ---- */

.instruction {
  font-size: 18px;
  margin-bottom: 0.2em;
  color: #888;
}

/* ---- warning ---- */

.warning {
  position: relative;
  min-height: 40px;
  background: #FF8;
  color: #333;
  border-radius: 5px;
  margin-bottom: 0.8em;
  padding: 10px;
  padding-left: 60px;
}

.warning a { color: #09F; }

.warning p:last-child {
  margin-bottom: 0;
}

.warning:before {
  content: '!';
  display: block;
  position: absolute;
  left: 10px;
  top: 10px;
  width: 40px;
  height: 40px;
  border-radius: 20px;
  background: red;
  line-height: 40px;
  text-align: center;
  font-weight: bold;
  font-size: 30px;
  color: white;
}

/* ---- notification ---- */

#notification {
  display: none; /* hide by default */
  position: fixed;
  z-index: 20; /* above most stuff */
  bottom: 0px;
  right: 0px;
  background: #A2C;
  padding: 0.5em;
  color: white;
  font-size: 20px;
  pointer-events: none;
}

/* ---- top-banner ---- */

#top-banner {
  background: #FF0;
  padding: 0.6em 0;
  color: #222;
}

#top-banner h2 {
  margin-bottom: 0.4em;
}

#top-banner a {
  color: #06F;
  font-weight: 500;
}

#top-banner a:hover { color: #F06; }

/* ---- support button ---- */

.support-button {
  font-size: 20px;
}

/* ---- other-products ---- */

.other-product > a {
  position: relative; /* gonna abs */
  display: block;
  padding: 0px;
  background: #262524;
  border-radius: 5px;
  color: #4BF;
}

.other-product > a:hover {
  background: #1FB;
  color: #262524;
}

.other-product > a:after {
  content: '';
  display: block;
  clear: both;
}

.other-product img {
  float: left;
  display: block;
  width: 100%;
  max-width: 140px;
  margin-right: 1.0em;
  border-radius: 5px 0 0 5px;
}

.other-product h3 {
  font-weight: bold;
  font-size: 32px;
  margin-bottom: 0.25em;
  margin-top: 0px;
  padding-top: 5px;
}

.other-product .description {
  font-size: 15px;
}

/* ---- desktop media query ---- */

@media screen and ( min-width: 960px ) {
  .tagline {
    font-size: 1.8em;
  }
}

/* ---- nav h1 ---- */


#nav h1 {
  float: left;
  margin: 0;
  line-height: 44px;
  font-size: 1.5em;
}

#nav h1 a {
  padding: 0 0.8em;
  display: block;
  color: #4FB;
}

#nav h1 a:hover {
  background: #D26;
  color: white;
}

/* ---- site-nav ---- */

#site-nav {
  list-style: none;
  font-size: 15px;
  margin-bottom: 0;
  padding: 0;
}


/* clear fix */
#site-nav:after {
  content: '';
  display: block;
  clear: both;
}

#site-nav li {
  float: left;
  font-weight: 500;
}

#site-nav li a {
  display: block;
  padding: 0 1.0em;
}

#site-nav li a:hover {
  background: #161615;
  color: white;
}

.sub-nav ul {
  display: none;
}

/* selected */
.filtering-page #site-nav .nav-filtering a,
.sorting-page #site-nav .nav-sorting a,
.options-page #site-nav .nav-options a,
.methods-page #site-nav .nav-methods a,
.events-page #site-nav .nav-events a,
.draggable-page #site-nav .nav-draggable a,
.license-page #site-nav .nav-license a,
.appendix-page #site-nav .nav-appendix a,
.faq-page #site-nav .nav-faq a {
  color: #4Bf;
  background: #161615;
}

/* ---- #page-nav ---- */

#page-nav {
  padding: 1.0em 10px;
  font-size: 13px;
}

#page-nav li {
  display: inline-block;
}

#page-nav li:after {
  content: ' •';
  margin: 0 0.3em;
  opacity: 0.5;
}

#page-nav li:last-child:after {
  content: none;
}

#page-nav a {
  color: #4BF;
}

#page-nav a:hover {
  color: #FB4;
}

@media screen and ( min-width: 800px ) {

  #nav {
    position: absolute;
    left: 0;
    top: 39px;
    width: 200px;
    z-index: 10; /* keep above footer */
  }

  #site-nav,
  #nav h1 {
    line-height: 1.25;
  }

  #nav h1,
  #site-nav li {
    float: none;
  }

  #nav h1 {
    font-size: 32px;
  }

  #site-nav {
  }

  #site-nav li {
    float: none;
    font-size: 16px;
  }

  #site-nav li ul {
    margin: 0;
    padding: 0;
  }

  #site-nav li li {
    font-size: 15px;
  }

  #nav h1 a,
  #nav li a {
    padding: 7px 20px;
  }

  #site-nav li li a {
    padding-top: 5px;
    padding-bottom: 5px;
  }


  /* hide h1 on index */
  .index-page #nav h1 {
    visibility: hidden;
  }

  /* expand sub nav */

  .sub-nav {
    position: relative;
    max-height: 2em;
  }

  .sub-nav ul {
    display: block; /* visible on desktop */
    position: absolute;
    left: 100%;
    top: 0;
    list-style: none;
    width: 0;
    overflow: hidden;
    opacity: 0;
    transition: width 0.2s, opacity 0.2s;
  }

  .sub-nav:hover ul {
    opacity: 1;
    width: 190px;
    z-index: 2; /* on top of stuff */
  }

  .sub-nav:hover,
  .sub-nav ul {
    background: #161615;
  }

  .sub-nav > a:after { content: '...'; }
  .sub-nav:hover > a:after { content: none; }

  #page-nav {
    list-style: none;
    padding: 0;
    padding-top: 20px;
  }

  #page-nav.is-fixed {
    position: fixed;
    left: 0;
    top: 0;
    width: 200px;
  }

  #page-nav li {
    display: block;
    margin: 0;
  }

  #page-nav li:after {
    content: none;
  }

  #page-nav li a {
    display: block;
    padding-top:    3px;
    padding-bottom: 3px;
  }

}
