Changeset - 32dd831a5056
[Not reviewed]
0 3 3
Ben Sturmfels (bsturmfels) - 7 months ago 2021-10-19 13:32:45
ben@sturm.com.au
First-pass implementation of new design for home page.

Uses a combination of CSS changes and Tachyons classes to implement the design.

Adds the non-minified Tachyons CSS library itself and SVG icons from Font Awesome.
6 files changed with 3528 insertions and 120 deletions:
0 comments (0 inline, 0 general)
www/conservancy/static/css/conservancy.css
Show inline comments
...
 
@@ -5,23 +5,88 @@ body { margin: 0; padding: 0; }
 
.hidden { display: none; }
 

	
 
p, h1, h2, h3, h4, h5, h6, #mainContent ul, #mainContent ol {
 
  margin-top: 1em;
 
  /* margin-top: 1em; */
 
  margin-bottom: 1em;
 
}
 

	
 
p {
 
  line-height: 1.6;
 
}
 

	
 
html {
 
  /* Standard colorss. */
 
  --khaki-green: #587733;
 
  --light-green: #afe478;
 
  --light-blue: #92d4d1;
 
  --navy: #224c57;
 
  --orange: #ec6343;
 
  --orange-dim: #e05340;
 
}
 

	
 
/* Some Tachyons-like classes to apply those standard colors. */
 
.bg-light-blue { background: var(--light-blue); }
 
.bg-orange { background: var(--orange); }
 
.orange { color: var(--orange); }
 
.b--light-blue { border-color: var(--light-blue); }
 
.navy { color: var(--navy); }
 

	
 
body {
 
/*  font-family: "Lucida Grande",Verdana,Lucida,Helvetica,Arial,sans-serif; */
 
  font-family: "Lucida Sans Unicode", "Lucida Grande", "Verdana", "FreeSans", sans-serif;
 
  font-size: large;
 
  /* Native font stack as per Bootstrap 5.1. */
 
  font-family:
 
    system-ui,
 
    -apple-system,
 
    "Segoe UI",
 
    Roboto,
 
    "Helvetica Neue", Arial,
 
    "Noto Sans",
 
    "Liberation Sans",
 
    sans-serif,
 
    "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
 
  font-size: .875rem;
 
  color: #333;
 
}
 

	
 
a {
 
  text-decoration: none;
 
  color: var(--navy);
 
  transition: all .2s ease;
 
  font-weight: bold;
 
}
 
a:hover { text-decoration: underline; }
 

	
 
a { text-decoration: none; color: #557733; }
 
a:hover { text-decoration: underline; color: #577632; }
 
a.read-more {
 
    cursor: pointer;
 
    font-style: italic;
 
}
 

	
 
.btn-orange {
 
  color: white;
 
  background: var(--orange);
 
  border: 1px solid var(--orange-dim);
 
}
 
.btn-orange:hover {
 
  background: var(--orange-dim);
 
  text-decoration: none;
 
  box-shadow: 1px 1px 1px rgba(0,0,0,0.2);
 
}
 
.btn-white {
 
  color: var(--orange);
 
  background: white;
 
}
 
.btn-white:hover {
 
  background: #eee;
 
  text-decoration: none;
 
  box-shadow: 1px 1px 1px rgba(0,0,0,0.2);
 
}
 

	
 

	
 
a svg {
 
  transition: all .2s ease;
 
}
 
a:hover svg {
 
  transform: scale(1.1);
 
}
 

	
 
.toggle-control  {
 
cursor: pointer;
 
text-decoration: none; color: #557733;
...
 
@@ -49,15 +114,11 @@ p.footnote {
 
}
 

	
 
h1 { margin-top: .75em; margin-bottom: .5em; }
 
h2 { margin-top: .75em; margin-bottom: .5em; }
 
/* h2 { margin-top: .75em; margin-bottom: .5em; } */
 
h3 { margin-top: .6em; margin-bottom: .4em; }
 

	
 
#mainContent h1 { border-bottom: 1px solid #00334b; }
 
#mainContent h2 { border-bottom: 1px solid #aaa; }
 

	
 
#mainContent ul, #mainContent ol { padding-left: 1.5em; }
 

	
 
#mainContent img { margin: 3px; }
 

	
 
.internalNavigate { width: 19%; float: right; }
 
#mainContent .internalNavigate ul { list-style-type: none; padding-left: 0; }
...
 
@@ -66,17 +127,15 @@ h3 { margin-top: .6em; margin-bottom: .4em; }
 
/* Header */
 

	
 
#conservancyheader {
 
  margin: 0;
 
  /* Leave 0 padding on the right so the header image is clipped by the edge of
 
   * the browser window. */
 
  padding: 10px 0 10px 17px;
 
  max-width: 1140px;
 
  margin: 0 auto;
 
  padding: 10px 0;
 
/*  background-color: #d1ff96; */
 
/*  background-color: #92CC58; */
 
/*  background-color: #BDD8A2; */
 
/*  background-color: #92cc58; */
 
/*  background-color: #b5cd9d; */
 
  background-color: #ffffff;
 
  border-bottom: 1px solid #808080;
 
  text-indent: -5000px; /* hide in favor of image */
 
}
 
#logobutton {
...
 
@@ -84,51 +143,31 @@ h3 { margin-top: .6em; margin-bottom: .4em; }
 
  margin: 0;
 
  padding: 0;
 
  height: 120px;
 
  width: 100%;
 
  min-width: 350px;  /* So at least tree and text is visible */
 
  background: url(/img/conservancy-header.png) no-repeat;
 
  background-size: contain;
 
}
 

	
 
/* Navigation bar */
 
#navbar-outer { background: #577632; }
 
#navbar { margin-left: 104px; margin-top: 3px; float: left; display: inline; }
 
#navbar-outer { background: var(--navy); }
 
#navbar { margin-top: 3px; max-width: 1140px; margin: 0 auto;}
 
#navbar ul { list-style: none; }
 
#navbar-clear { clear: both; border-bottom: 1px solid #808080; }
 
#navbar li.supporter a {
 
  display: block;
 
  background: #fafafe;
 
  padding: .2em .8em;
 
  margin-right: 3px;
 
  border: 1px solid #808080;
 
  font-size: .8em;
 
  background: #ffd843;
 
  background: -moz-linear-gradient(top, #fff, #ffd533);
 
  background: -webkit-linear-gradient(top, #fff, #ffd533);
 
  background: linear-gradient(to bottom, #fff, #ffd533);
 
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffff', endColorstr='#ffd533', GradientType=0);
 
  border-color: #ffffff;
 
}
 
#navbar-clear { clear: both; }
 
#navbar li a {
 
  display: block;
 
  background: #fafafe;
 
  padding: .2em .8em;
 
  margin-right: 3px;
 
  border: 1px solid #808080;
 
  font-size: .8em;
 
  background: #eaf1f1;
 
  background: -moz-linear-gradient(top, #fff, #eaf1f1);
 
  background: -webkit-linear-gradient(top, #fff, #eaf1f1);
 
  background: linear-gradient(to bottom, #fff, #eaf1f1);
 
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffff', endColorstr='#eaf1f1', GradientType=0);
 
  border-color: #ffffff;
 
}
 
#navbar li:hover a { background: #577632; color: #fff; }
 
#navbar li.supporter:hover a { background: #577632; color: #CE1F1F; }
 
  color: white;
 
  padding: .5em .8em .1em;
 
  margin: 0 3px .1em 0;
 
  text-decoration: none;
 
  border-bottom: 4px solid transparent;
 
}
 
#navbar li:hover a {
 
  border-bottom: 4px solid var(--light-green);
 
}
 
#navbar li { float: left; display: inline; margin-bottom: 3px; }
 

	
 
#mainContent {
 
    margin-left: 50px;
 
    margin-right: 50px;
 
  max-width: 1140px;
 
  margin: 0 auto;
 
}
 
#sidebar + #mainContent {
 
    float: left;
...
 
@@ -390,23 +429,7 @@ body.conservancy-donate #navbar ul li.donate a,
 
body.conservancy-npoacct #navbar ul li.npoacct a,
 
body.conservancy-sponsors #navbar ul li.sponsors a /* NO COMMA HERE! */
 
{
 
    color: #000033;
 
    font-weight: bold;
 
    background: #eaf1f1;
 
    background: -moz-linear-gradient(bottom, #fff, #eaf1f1);
 
    background: -webkit-linear-gradient(bottom, #fff, #eaf1f1);
 
    background: linear-gradient(to top, #fff, #eaf1f1);
 
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#eaf1f1', endColorstr='#ffffff', GradientType=0);
 
}
 
body.conservancy-supporter #navbar ul li.supporter a
 
{
 
    color: #000033;
 
    font-weight: bold;
 
    background: #ffd843;
 
    background: -moz-linear-gradient(bottom, #fff, #ffd533);
 
    background: -webkit-linear-gradient(bottom, #fff, #ffd533);
 
    background: linear-gradient(to top, #fff, #ffd533);
 
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd533', endColorstr='#ffffff', GradientType=0);
 
    border-bottom: 4px solid var(--light-green);
 
}
 

	
 
#supporters ul {
www/conservancy/static/css/tachyons.css
Show inline comments
 
new file 100644
 
/*! TACHYONS v4.12.0 | http://tachyons.io */
 
/*
 
 *
 
 *      ________            ______
 
 *      ___  __/_____ _________  /______  ______________________
 
 *      __  /  _  __ `/  ___/_  __ \_  / / /  __ \_  __ \_  ___/
 
 *      _  /   / /_/ // /__ _  / / /  /_/ // /_/ /  / / /(__  )
 
 *      /_/    \__,_/ \___/ /_/ /_/_\__, / \____//_/ /_//____/
 
 *                                 /____/
 
 *
 
 *    TABLE OF CONTENTS
 
 *
 
 *    1. External Library Includes
 
 *       - Normalize.css | http://normalize.css.github.io
 
 *    2. Tachyons Modules
 
 *    3. Variables
 
 *       - Media Queries
 
 *       - Colors
 
 *    4. Debugging
 
 *       - Debug all
 
 *       - Debug children
 
 *
 
 */
 
/* External Library Includes */
 
/*! normalize.css v8.0.0 | MIT License | github.com/necolas/normalize.css */
 
/* Document
 
   ========================================================================== */
 
/**
 
 * 1. Correct the line height in all browsers.
 
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 
 */
 
html { line-height: 1.15; /* 1 */ -webkit-text-size-adjust: 100%; /* 2 */ }
 
/* Sections
 
   ========================================================================== */
 
/**
 
 * Remove the margin in all browsers.
 
 */
 
body { margin: 0; }
 
/**
 
 * Correct the font size and margin on `h1` elements within `section` and
 
 * `article` contexts in Chrome, Firefox, and Safari.
 
 */
 
h1 { font-size: 2em; margin: .67em 0; }
 
/* Grouping content
 
   ========================================================================== */
 
/**
 
 * 1. Add the correct box sizing in Firefox.
 
 * 2. Show the overflow in Edge and IE.
 
 */
 
hr { box-sizing: content-box; /* 1 */ height: 0; /* 1 */ overflow: visible; /* 2 */ }
 
/**
 
 * 1. Correct the inheritance and scaling of font size in all browsers.
 
 * 2. Correct the odd `em` font sizing in all browsers.
 
 */
 
pre { font-family: monospace, monospace; /* 1 */ font-size: 1em; /* 2 */ }
 
/* Text-level semantics
 
   ========================================================================== */
 
/**
 
 * Remove the gray background on active links in IE 10.
 
 */
 
a { background-color: transparent; }
 
/**
 
 * 1. Remove the bottom border in Chrome 57-
 
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 
 */
 
abbr[title] { border-bottom: none; /* 1 */ text-decoration: underline; /* 2 */ -webkit-text-decoration: underline dotted; text-decoration: underline dotted; /* 2 */ }
 
/**
 
 * Add the correct font weight in Chrome, Edge, and Safari.
 
 */
 
b, strong { font-weight: bolder; }
 
/**
 
 * 1. Correct the inheritance and scaling of font size in all browsers.
 
 * 2. Correct the odd `em` font sizing in all browsers.
 
 */
 
code, kbd, samp { font-family: monospace, monospace; /* 1 */ font-size: 1em; /* 2 */ }
 
/**
 
 * Add the correct font size in all browsers.
 
 */
 
small { font-size: 80%; }
 
/**
 
 * Prevent `sub` and `sup` elements from affecting the line height in
 
 * all browsers.
 
 */
 
sub, sup { font-size: 75%; line-height: 0; position: relative; vertical-align: baseline; }
 
sub { bottom: -0.25em; }
 
sup { top: -0.5em; }
 
/* Embedded content
 
   ========================================================================== */
 
/**
 
 * Remove the border on images inside links in IE 10.
 
 */
 
img { border-style: none; }
 
/* Forms
 
   ========================================================================== */
 
/**
 
 * 1. Change the font styles in all browsers.
 
 * 2. Remove the margin in Firefox and Safari.
 
 */
 
button, input, optgroup, select, textarea { font-family: inherit; /* 1 */ font-size: 100%; /* 1 */ line-height: 1.15; /* 1 */ margin: 0; /* 2 */ }
 
/**
 
 * Show the overflow in IE.
 
 * 1. Show the overflow in Edge.
 
 */
 
button, input {/* 1 */ overflow: visible; }
 
/**
 
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 
 * 1. Remove the inheritance of text transform in Firefox.
 
 */
 
button, select {/* 1 */ text-transform: none; }
 
/**
 
 * Correct the inability to style clickable types in iOS and Safari.
 
 */
 
button, [type="button"], [type="reset"], [type="submit"] { -webkit-appearance: button; }
 
/**
 
 * Remove the inner border and padding in Firefox.
 
 */
 
button::-moz-focus-inner, [type="button"]::-moz-focus-inner,
 
[type="reset"]::-moz-focus-inner, [type="submit"]::-moz-focus-inner { border-style: none; padding: 0; }
 
/**
 
 * Restore the focus styles unset by the previous rule.
 
 */
 
button:-moz-focusring, [type="button"]:-moz-focusring,
 
[type="reset"]:-moz-focusring, [type="submit"]:-moz-focusring { outline: 1px dotted ButtonText; }
 
/**
 
 * Correct the padding in Firefox.
 
 */
 
fieldset { padding: .35em .75em .625em; }
 
/**
 
 * 1. Correct the text wrapping in Edge and IE.
 
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 
 * 3. Remove the padding so developers are not caught out when they zero out
 
 *    `fieldset` elements in all browsers.
 
 */
 
legend { box-sizing: border-box; /* 1 */ color: inherit; /* 2 */ display: table; /* 1 */ max-width: 100%; /* 1 */ padding: 0; /* 3 */ white-space: normal; /* 1 */ }
 
/**
 
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 
 */
 
progress { vertical-align: baseline; }
 
/**
 
 * Remove the default vertical scrollbar in IE 10+.
 
 */
 
textarea { overflow: auto; }
 
/**
 
 * 1. Add the correct box sizing in IE 10.
 
 * 2. Remove the padding in IE 10.
 
 */
 
[type="checkbox"], [type="radio"] { box-sizing: border-box; /* 1 */ padding: 0; /* 2 */ }
 
/**
 
 * Correct the cursor style of increment and decrement buttons in Chrome.
 
 */
 
[type="number"]::-webkit-inner-spin-button,
 
[type="number"]::-webkit-outer-spin-button { height: auto; }
 
/**
 
 * 1. Correct the odd appearance in Chrome and Safari.
 
 * 2. Correct the outline style in Safari.
 
 */
 
[type="search"] { -webkit-appearance: textfield; /* 1 */ outline-offset: -2px; /* 2 */ }
 
/**
 
 * Remove the inner padding in Chrome and Safari on macOS.
 
 */
 
[type="search"]::-webkit-search-decoration { -webkit-appearance: none; }
 
/**
 
 * 1. Correct the inability to style clickable types in iOS and Safari.
 
 * 2. Change font properties to `inherit` in Safari.
 
 */
 
::-webkit-file-upload-button { -webkit-appearance: button; /* 1 */ font: inherit; /* 2 */ }
 
/* Interactive
 
   ========================================================================== */
 
/*
 
 * Add the correct display in Edge, IE 10+, and Firefox.
 
 */
 
details { display: block; }
 
/*
 
 * Add the correct display in all browsers.
 
 */
 
summary { display: list-item; }
 
/* Misc
 
   ========================================================================== */
 
/**
 
 * Add the correct display in IE 10+.
 
 */
 
template { display: none; }
 
/**
 
 * Add the correct display in IE 10.
 
 */
 
[hidden] { display: none; }
 
/* Modules */
 
/*
 
 
 
  BOX SIZING
 

	
 
*/
 
html, body, div, article, aside, section, main, nav, footer, header, form,
 
fieldset, legend, pre, code, a, h1, h2, h3, h4, h5, h6, p, ul, ol, li, dl, dt,
 
dd, blockquote, figcaption, figure, textarea, table, td, th, tr,
 
input[type="email"], input[type="number"], input[type="password"],
 
input[type="tel"], input[type="text"], input[type="url"], .border-box { box-sizing: border-box; }
 
/*
 

	
 
   ASPECT RATIOS
 

	
 
*/
 
/* This is for fluid media that is embedded from third party sites like youtube, vimeo etc.
 
 * Wrap the outer element in aspect-ratio and then extend it with the desired ratio i.e
 
 * Make sure there are no height and width attributes on the embedded media.
 
 * Adapted from: https://github.com/suitcss/components-flex-embed
 
 *
 
 * Example:
 
 *
 
 * <div class="aspect-ratio aspect-ratio--16x9">
 
 *  <iframe class="aspect-ratio--object"></iframe>
 
 * </div>
 
 *
 
 * */
 
.aspect-ratio { height: 0; position: relative; }
 
.aspect-ratio--16x9 { padding-bottom: 56.25%; }
 
.aspect-ratio--9x16 { padding-bottom: 177.77%; }
 
.aspect-ratio--4x3 { padding-bottom: 75%; }
 
.aspect-ratio--3x4 { padding-bottom: 133.33%; }
 
.aspect-ratio--6x4 { padding-bottom: 66.6%; }
 
.aspect-ratio--4x6 { padding-bottom: 150%; }
 
.aspect-ratio--8x5 { padding-bottom: 62.5%; }
 
.aspect-ratio--5x8 { padding-bottom: 160%; }
 
.aspect-ratio--7x5 { padding-bottom: 71.42%; }
 
.aspect-ratio--5x7 { padding-bottom: 140%; }
 
.aspect-ratio--1x1 { padding-bottom: 100%; }
 
.aspect-ratio--object { position: absolute; top: 0; right: 0; bottom: 0; left: 0; width: 100%; height: 100%; z-index: 100; }
 
/*
 

	
 
   IMAGES
 
   Docs: http://tachyons.io/docs/elements/images/
 

	
 
*/
 
/* Responsive images! */
 
img { max-width: 100%; }
 
/*
 

	
 
   BACKGROUND SIZE
 
   Docs: http://tachyons.io/docs/themes/background-size/
 

	
 
   Media Query Extensions:
 
     -ns = not-small
 
     -m  = medium
 
     -l  = large
 

	
 
*/
 
/*
 
  Often used in combination with background image set as an inline style
 
  on an html element.
 
*/
 
.cover { background-size: cover !important; }
 
.contain { background-size: contain !important; }
 
/*
 

	
 
    BACKGROUND POSITION
 

	
 
    Base:
 
    bg = background
 

	
 
    Modifiers:
 
    -center = center center
 
    -top = top center
 
    -right = center right
 
    -bottom = bottom center
 
    -left = center left
 

	
 
    Media Query Extensions:
 
      -ns = not-small
 
      -m  = medium
 
      -l  = large
 

	
 
 */
 
.bg-center { background-repeat: no-repeat; background-position: center center; }
 
.bg-top { background-repeat: no-repeat; background-position: top center; }
 
.bg-right { background-repeat: no-repeat; background-position: center right; }
 
.bg-bottom { background-repeat: no-repeat; background-position: bottom center; }
 
.bg-left { background-repeat: no-repeat; background-position: center left; }
 
/*
 

	
 
   OUTLINES
 

	
 
   Media Query Extensions:
 
     -ns = not-small
 
     -m  = medium
 
     -l  = large
 

	
 
*/
 
.outline { outline: 1px solid; }
 
.outline-transparent { outline: 1px solid transparent; }
 
.outline-0 { outline: 0; }
 
/*
 

	
 
    BORDERS
 
    Docs: http://tachyons.io/docs/themes/borders/
 

	
 
    Base:
 
      b = border
 

	
 
    Modifiers:
 
      a = all
 
      t = top
 
      r = right
 
      b = bottom
 
      l = left
 
      n = none
 

	
 
   Media Query Extensions:
 
     -ns = not-small
 
     -m  = medium
 
     -l  = large
 

	
 
*/
 
.ba { border-style: solid; border-width: 1px; }
 
.bt { border-top-style: solid; border-top-width: 1px; }
 
.br { border-right-style: solid; border-right-width: 1px; }
 
.bb { border-bottom-style: solid; border-bottom-width: 1px; }
 
.bl { border-left-style: solid; border-left-width: 1px; }
 
.bn { border-style: none; border-width: 0; }
 
/*
 

	
 
   BORDER COLORS
 
   Docs: http://tachyons.io/docs/themes/borders/
 

	
 
   Border colors can be used to extend the base
 
   border classes ba,bt,bb,br,bl found in the _borders.css file.
 

	
 
   The base border class by default will set the color of the border
 
   to that of the current text color. These classes are for the cases
 
   where you desire for the text and border colors to be different.
 

	
 
   Base:
 
     b = border
 

	
 
   Modifiers:
 
   --color-name = each color variable name is also a border color name
 

	
 
*/
 
.b--black { border-color: #000; }
 
.b--near-black { border-color: #111; }
 
.b--dark-gray { border-color: #333; }
 
.b--mid-gray { border-color: #555; }
 
.b--gray { border-color: #777; }
 
.b--silver { border-color: #999; }
 
.b--light-silver { border-color: #aaa; }
 
.b--moon-gray { border-color: #ccc; }
 
.b--light-gray { border-color: #eee; }
 
.b--near-white { border-color: #f4f4f4; }
 
.b--white { border-color: #fff; }
 
.b--white-90 { border-color: rgba( 255, 255, 255, .9 ); }
 
.b--white-80 { border-color: rgba( 255, 255, 255, .8 ); }
 
.b--white-70 { border-color: rgba( 255, 255, 255, .7 ); }
 
.b--white-60 { border-color: rgba( 255, 255, 255, .6 ); }
 
.b--white-50 { border-color: rgba( 255, 255, 255, .5 ); }
 
.b--white-40 { border-color: rgba( 255, 255, 255, .4 ); }
 
.b--white-30 { border-color: rgba( 255, 255, 255, .3 ); }
 
.b--white-20 { border-color: rgba( 255, 255, 255, .2 ); }
 
.b--white-10 { border-color: rgba( 255, 255, 255, .1 ); }
 
.b--white-05 { border-color: rgba( 255, 255, 255, .05 ); }
 
.b--white-025 { border-color: rgba( 255, 255, 255, .025 ); }
 
.b--white-0125 { border-color: rgba( 255, 255, 255, .0125 ); }
 
.b--black-90 { border-color: rgba( 0, 0, 0, .9 ); }
 
.b--black-80 { border-color: rgba( 0, 0, 0, .8 ); }
 
.b--black-70 { border-color: rgba( 0, 0, 0, .7 ); }
 
.b--black-60 { border-color: rgba( 0, 0, 0, .6 ); }
 
.b--black-50 { border-color: rgba( 0, 0, 0, .5 ); }
 
.b--black-40 { border-color: rgba( 0, 0, 0, .4 ); }
 
.b--black-30 { border-color: rgba( 0, 0, 0, .3 ); }
 
.b--black-20 { border-color: rgba( 0, 0, 0, .2 ); }
 
.b--black-10 { border-color: rgba( 0, 0, 0, .1 ); }
 
.b--black-05 { border-color: rgba( 0, 0, 0, .05 ); }
 
.b--black-025 { border-color: rgba( 0, 0, 0, .025 ); }
 
.b--black-0125 { border-color: rgba( 0, 0, 0, .0125 ); }
 
.b--dark-red { border-color: #e7040f; }
 
.b--red { border-color: #ff4136; }
 
.b--light-red { border-color: #ff725c; }
 
.b--orange { border-color: #ff6300; }
 
.b--gold { border-color: #ffb700; }
 
.b--yellow { border-color: #ffd700; }
 
.b--light-yellow { border-color: #fbf1a9; }
 
.b--purple { border-color: #5e2ca5; }
 
.b--light-purple { border-color: #a463f2; }
 
.b--dark-pink { border-color: #d5008f; }
 
.b--hot-pink { border-color: #ff41b4; }
 
.b--pink { border-color: #ff80cc; }
 
.b--light-pink { border-color: #ffa3d7; }
 
.b--dark-green { border-color: #137752; }
 
.b--green { border-color: #19a974; }
 
.b--light-green { border-color: #9eebcf; }
 
.b--navy { border-color: #001b44; }
 
.b--dark-blue { border-color: #00449e; }
 
.b--blue { border-color: #357edd; }
 
.b--light-blue { border-color: #96ccff; }
 
.b--lightest-blue { border-color: #cdecff; }
 
.b--washed-blue { border-color: #f6fffe; }
 
.b--washed-green { border-color: #e8fdf5; }
 
.b--washed-yellow { border-color: #fffceb; }
 
.b--washed-red { border-color: #ffdfdf; }
 
.b--transparent { border-color: transparent; }
 
.b--inherit { border-color: inherit; }
 
.b--initial { border-color: initial; }
 
.b--unset { border-color: unset; }
 
/*
 

	
 
   BORDER RADIUS
 
   Docs: http://tachyons.io/docs/themes/border-radius/
 

	
 
   Base:
 
     br   = border-radius
 

	
 
   Modifiers:
 
     0    = 0/none
 
     1    = 1st step in scale
 
     2    = 2nd step in scale
 
     3    = 3rd step in scale
 
     4    = 4th step in scale
 

	
 
   Literal values:
 
     -100 = 100%
 
     -pill = 9999px
 

	
 
   Media Query Extensions:
 
     -ns = not-small
 
     -m  = medium
 
     -l  = large
 

	
 
*/
 
.br0 { border-radius: 0; }
 
.br1 { border-radius: .125rem; }
 
.br2 { border-radius: .25rem; }
 
.br3 { border-radius: .5rem; }
 
.br4 { border-radius: 1rem; }
 
.br-100 { border-radius: 100%; }
 
.br-pill { border-radius: 9999px; }
 
.br--bottom { border-top-left-radius: 0; border-top-right-radius: 0; }
 
.br--top { border-bottom-left-radius: 0; border-bottom-right-radius: 0; }
 
.br--right { border-top-left-radius: 0; border-bottom-left-radius: 0; }
 
.br--left { border-top-right-radius: 0; border-bottom-right-radius: 0; }
 
.br-inherit { border-radius: inherit; }
 
.br-initial { border-radius: initial; }
 
.br-unset { border-radius: unset; }
 
/*
 

	
 
   BORDER STYLES
 
   Docs: http://tachyons.io/docs/themes/borders/
 

	
 
   Depends on base border module in _borders.css
 

	
 
   Base:
 
     b = border-style
 

	
 
   Modifiers:
 
     --none   = none
 
     --dotted = dotted
 
     --dashed = dashed
 
     --solid  = solid
 

	
 
   Media Query Extensions:
 
     -ns = not-small
 
     -m  = medium
 
     -l  = large
 

	
 
 */
 
.b--dotted { border-style: dotted; }
 
.b--dashed { border-style: dashed; }
 
.b--solid { border-style: solid; }
 
.b--none { border-style: none; }
 
/*
 

	
 
   BORDER WIDTHS
 
   Docs: http://tachyons.io/docs/themes/borders/
 

	
 
   Base:
 
     bw = border-width
 

	
 
   Modifiers:
 
     0 = 0 width border
 
     1 = 1st step in border-width scale
 
     2 = 2nd step in border-width scale
 
     3 = 3rd step in border-width scale
 
     4 = 4th step in border-width scale
 
     5 = 5th step in border-width scale
 

	
 
   Media Query Extensions:
 
     -ns = not-small
 
     -m  = medium
 
     -l  = large
 

	
 
*/
 
.bw0 { border-width: 0; }
 
.bw1 { border-width: .125rem; }
 
.bw2 { border-width: .25rem; }
 
.bw3 { border-width: .5rem; }
 
.bw4 { border-width: 1rem; }
 
.bw5 { border-width: 2rem; }
 
/* Resets */
 
.bt-0 { border-top-width: 0; }
 
.br-0 { border-right-width: 0; }
 
.bb-0 { border-bottom-width: 0; }
 
.bl-0 { border-left-width: 0; }
 
/*
 

	
 
  BOX-SHADOW
 
  Docs: http://tachyons.io/docs/themes/box-shadow/
 

	
 
  Media Query Extensions:
 
   -ns = not-small
 
   -m  = medium
 
   -l  = large
 

	
 
 */
 
.shadow-1 { box-shadow: 0 0 4px 2px rgba( 0, 0, 0, .2 ); }
 
.shadow-2 { box-shadow: 0 0 8px 2px rgba( 0, 0, 0, .2 ); }
 
.shadow-3 { box-shadow: 2px 2px 4px 2px rgba( 0, 0, 0, .2 ); }
 
.shadow-4 { box-shadow: 2px 2px 8px 0 rgba( 0, 0, 0, .2 ); }
 
.shadow-5 { box-shadow: 4px 4px 8px 0 rgba( 0, 0, 0, .2 ); }
 
/*
 

	
 
   CODE
 

	
 
*/
 
.pre { overflow-x: auto; overflow-y: hidden; overflow: scroll; }
 
/*
 

	
 
   COORDINATES
 
   Docs: http://tachyons.io/docs/layout/position/
 

	
 
   Use in combination with the position module.
 

	
 
   Base:
 
     top
 
     bottom
 
     right
 
     left
 

	
 
   Modifiers:
 
     -0  = literal value 0
 
     -1  = literal value 1
 
     -2  = literal value 2
 
     --1 = literal value -1
 
     --2 = literal value -2
 

	
 
   Media Query Extensions:
 
     -ns = not-small
 
     -m  = medium
 
     -l  = large
 

	
 
*/
 
.top-0 { top: 0; }
 
.right-0 { right: 0; }
 
.bottom-0 { bottom: 0; }
 
.left-0 { left: 0; }
 
.top-1 { top: 1rem; }
 
.right-1 { right: 1rem; }
 
.bottom-1 { bottom: 1rem; }
 
.left-1 { left: 1rem; }
 
.top-2 { top: 2rem; }
 
.right-2 { right: 2rem; }
 
.bottom-2 { bottom: 2rem; }
 
.left-2 { left: 2rem; }
 
.top--1 { top: -1rem; }
 
.right--1 { right: -1rem; }
 
.bottom--1 { bottom: -1rem; }
 
.left--1 { left: -1rem; }
 
.top--2 { top: -2rem; }
 
.right--2 { right: -2rem; }
 
.bottom--2 { bottom: -2rem; }
 
.left--2 { left: -2rem; }
 
.absolute--fill { top: 0; right: 0; bottom: 0; left: 0; }
 
/*
 

	
 
   CLEARFIX
 
   http://tachyons.io/docs/layout/clearfix/
 

	
 
*/
 
/* Nicolas Gallaghers Clearfix solution
 
   Ref: http://nicolasgallagher.com/micro-clearfix-hack/ */
 
.cf:before, .cf:after { content: " "; display: table; }
 
.cf:after { clear: both; }
 
.cf { *zoom: 1; }
 
.cl { clear: left; }
 
.cr { clear: right; }
 
.cb { clear: both; }
 
.cn { clear: none; }
 
/*
 

	
 
   DISPLAY
 
   Docs: http://tachyons.io/docs/layout/display
 

	
 
   Base:
 
    d = display
 

	
 
   Modifiers:
 
    n     = none
 
    b     = block
 
    ib    = inline-block
 
    it    = inline-table
 
    t     = table
 
    tc    = table-cell
 
    t-row          = table-row
 
    t-columm       = table-column
 
    t-column-group = table-column-group
 

	
 
   Media Query Extensions:
 
     -ns = not-small
 
     -m  = medium
 
     -l  = large
 

	
 
*/
 
.dn { display: none; }
 
.di { display: inline; }
 
.db { display: block; }
 
.dib { display: inline-block; }
 
.dit { display: inline-table; }
 
.dt { display: table; }
 
.dtc { display: table-cell; }
 
.dt-row { display: table-row; }
 
.dt-row-group { display: table-row-group; }
 
.dt-column { display: table-column; }
 
.dt-column-group { display: table-column-group; }
 
/*
 
  This will set table to full width and then
 
  all cells will be equal width
 
*/
 
.dt--fixed { table-layout: fixed; width: 100%; }
 
/*
 

	
 
  FLEXBOX
 

	
 
  Media Query Extensions:
 
   -ns = not-small
 
   -m  = medium
 
   -l  = large
 

	
 
*/
 
.flex { display: flex; }
 
.inline-flex { display: inline-flex; }
 
/* 1. Fix for Chrome 44 bug.
 
 * https://code.google.com/p/chromium/issues/detail?id=506893 */
 
.flex-auto { flex: 1 1 auto; min-width: 0; /* 1 */ min-height: 0; /* 1 */ }
 
.flex-none { flex: none; }
 
.flex-column { flex-direction: column; }
 
.flex-row { flex-direction: row; }
 
.flex-wrap { flex-wrap: wrap; }
 
.flex-nowrap { flex-wrap: nowrap; }
 
.flex-wrap-reverse { flex-wrap: wrap-reverse; }
 
.flex-column-reverse { flex-direction: column-reverse; }
 
.flex-row-reverse { flex-direction: row-reverse; }
 
.items-start { align-items: flex-start; }
 
.items-end { align-items: flex-end; }
 
.items-center { align-items: center; }
 
.items-baseline { align-items: baseline; }
 
.items-stretch { align-items: stretch; }
 
.self-start { align-self: flex-start; }
 
.self-end { align-self: flex-end; }
 
.self-center { align-self: center; }
 
.self-baseline { align-self: baseline; }
 
.self-stretch { align-self: stretch; }
 
.justify-start { justify-content: flex-start; }
 
.justify-end { justify-content: flex-end; }
 
.justify-center { justify-content: center; }
 
.justify-between { justify-content: space-between; }
 
.justify-around { justify-content: space-around; }
 
.content-start { align-content: flex-start; }
 
.content-end { align-content: flex-end; }
 
.content-center { align-content: center; }
 
.content-between { align-content: space-between; }
 
.content-around { align-content: space-around; }
 
.content-stretch { align-content: stretch; }
 
.order-0 { order: 0; }
 
.order-1 { order: 1; }
 
.order-2 { order: 2; }
 
.order-3 { order: 3; }
 
.order-4 { order: 4; }
 
.order-5 { order: 5; }
 
.order-6 { order: 6; }
 
.order-7 { order: 7; }
 
.order-8 { order: 8; }
 
.order-last { order: 99999; }
 
.flex-grow-0 { flex-grow: 0; }
 
.flex-grow-1 { flex-grow: 1; }
 
.flex-shrink-0 { flex-shrink: 0; }
 
.flex-shrink-1 { flex-shrink: 1; }
 
/*
 

	
 
   FLOATS
 
   http://tachyons.io/docs/layout/floats/
 

	
 
   1. Floated elements are automatically rendered as block level elements.
 
      Setting floats to display inline will fix the double margin bug in
 
      ie6. You know... just in case.
 

	
 
   2. Don't forget to clearfix your floats with .cf
 

	
 
   Base:
 
     f = float
 

	
 
   Modifiers:
 
     l = left
 
     r = right
 
     n = none
 

	
 
   Media Query Extensions:
 
     -ns = not-small
 
     -m  = medium
 
     -l  = large
 

	
 
*/
 
.fl { float: left; _display: inline; }
 
.fr { float: right; _display: inline; }
 
.fn { float: none; }
 
/*
 

	
 
   FONT FAMILY GROUPS
 
   Docs: http://tachyons.io/docs/typography/font-family/
 

	
 
*/
 
.sans-serif { font-family: -apple-system, BlinkMacSystemFont, 'avenir next', avenir, 'helvetica neue', helvetica, ubuntu, roboto, noto, 'segoe ui', arial, sans-serif; }
 
.serif { font-family: georgia, times, serif; }
 
.system-sans-serif { font-family: sans-serif; }
 
.system-serif { font-family: serif; }
 
/* Monospaced Typefaces (for code) */
 
/* From http://cssfontstack.com */
 
code, .code { font-family: Consolas, monaco, monospace; }
 
.courier { font-family: 'Courier Next', courier, monospace; }
 
/* Sans-Serif Typefaces */
 
.helvetica { font-family: 'helvetica neue', helvetica, sans-serif; }
 
.avenir { font-family: 'avenir next', avenir, sans-serif; }
 
/* Serif Typefaces */
 
.athelas { font-family: athelas, georgia, serif; }
 
.georgia { font-family: georgia, serif; }
 
.times { font-family: times, serif; }
 
.bodoni { font-family: "Bodoni MT", serif; }
 
.calisto { font-family: "Calisto MT", serif; }
 
.garamond { font-family: garamond, serif; }
 
.baskerville { font-family: baskerville, serif; }
 
/*
 

	
 
   FONT STYLE
 
   Docs: http://tachyons.io/docs/typography/font-style/
 

	
 
   Media Query Extensions:
 
     -ns = not-small
 
     -m  = medium
 
     -l  = large
 

	
 
*/
 
.i { font-style: italic; }
 
.fs-normal { font-style: normal; }
 
/*
 

	
 
   FONT WEIGHT
 
   Docs: http://tachyons.io/docs/typography/font-weight/
 

	
 
   Base
 
     fw = font-weight
 

	
 
   Modifiers:
 
     1 = literal value 100
 
     2 = literal value 200
 
     3 = literal value 300
 
     4 = literal value 400
 
     5 = literal value 500
 
     6 = literal value 600
 
     7 = literal value 700
 
     8 = literal value 800
 
     9 = literal value 900
 

	
 
   Media Query Extensions:
 
     -ns = not-small
 
     -m  = medium
 
     -l  = large
 

	
 
*/
 
.normal { font-weight: normal; }
 
.b { font-weight: bold; }
 
.fw1 { font-weight: 100; }
 
.fw2 { font-weight: 200; }
 
.fw3 { font-weight: 300; }
 
.fw4 { font-weight: 400; }
 
.fw5 { font-weight: 500; }
 
.fw6 { font-weight: 600; }
 
.fw7 { font-weight: 700; }
 
.fw8 { font-weight: 800; }
 
.fw9 { font-weight: 900; }
 
/*
 

	
 
   FORMS
 
   
 
*/
 
.input-reset { -webkit-appearance: none; -moz-appearance: none; }
 
.button-reset::-moz-focus-inner, .input-reset::-moz-focus-inner { border: 0; padding: 0; }
 
/*
 

	
 
   HEIGHTS
 
   Docs: http://tachyons.io/docs/layout/heights/
 

	
 
   Base:
 
     h = height
 
     min-h = min-height
 
     min-vh = min-height vertical screen height
 
     vh = vertical screen height
 

	
 
   Modifiers
 
     1 = 1st step in height scale
 
     2 = 2nd step in height scale
 
     3 = 3rd step in height scale
 
     4 = 4th step in height scale
 
     5 = 5th step in height scale
 

	
 
     -25   = literal value 25%
 
     -50   = literal value 50%
 
     -75   = literal value 75%
 
     -100  = literal value 100%
 

	
 
     -auto = string value of auto
 
     -inherit = string value of inherit
 

	
 
   Media Query Extensions:
 
     -ns = not-small
 
     -m  = medium
 
     -l  = large
 

	
 
*/
 
/* Height Scale */
 
.h1 { height: 1rem; }
 
.h2 { height: 2rem; }
 
.h3 { height: 4rem; }
 
.h4 { height: 8rem; }
 
.h5 { height: 16rem; }
 
/* Height Percentages - Based off of height of parent */
 
.h-25 { height: 25%; }
 
.h-50 { height: 50%; }
 
.h-75 { height: 75%; }
 
.h-100 { height: 100%; }
 
.min-h-100 { min-height: 100%; }
 
/* Screen Height Percentage */
 
.vh-25 { height: 25vh; }
 
.vh-50 { height: 50vh; }
 
.vh-75 { height: 75vh; }
 
.vh-100 { height: 100vh; }
 
.min-vh-100 { min-height: 100vh; }
 
/* String Properties */
 
.h-auto { height: auto; }
 
.h-inherit { height: inherit; }
 
/*
 

	
 
   LETTER SPACING
 
   Docs: http://tachyons.io/docs/typography/tracking/
 

	
 
   Media Query Extensions:
 
     -ns = not-small
 
     -m  = medium
 
     -l  = large
 

	
 
*/
 
.tracked { letter-spacing: .1em; }
 
.tracked-tight { letter-spacing: -.05em; }
 
.tracked-mega { letter-spacing: .25em; }
 
/*
 

	
 
   LINE HEIGHT / LEADING
 
   Docs: http://tachyons.io/docs/typography/line-height
 

	
 
   Media Query Extensions:
 
     -ns = not-small
 
     -m  = medium
 
     -l  = large
 

	
 
*/
 
.lh-solid { line-height: 1; }
 
.lh-title { line-height: 1.25; }
 
.lh-copy { line-height: 1.5; }
 
/*
 

	
 
   LINKS
 
   Docs: http://tachyons.io/docs/elements/links/
 

	
 
*/
 
.link { text-decoration: none; transition: color .15s ease-in; }
 
.link:link, .link:visited { transition: color .15s ease-in; }
 
.link:hover { transition: color .15s ease-in; }
 
.link:active { transition: color .15s ease-in; }
 
.link:focus { transition: color .15s ease-in; outline: 1px dotted currentColor; }
 
/*
 

	
 
   LISTS
 
   http://tachyons.io/docs/elements/lists/
 

	
 
*/
 
.list { list-style-type: none; }
 
/*
 

	
 
   MAX WIDTHS
 
   Docs: http://tachyons.io/docs/layout/max-widths/
 

	
 
   Base:
 
     mw = max-width
 

	
 
   Modifiers
 
     1 = 1st step in width scale
 
     2 = 2nd step in width scale
 
     3 = 3rd step in width scale
 
     4 = 4th step in width scale
 
     5 = 5th step in width scale
 
     6 = 6st step in width scale
 
     7 = 7nd step in width scale
 
     8 = 8rd step in width scale
 
     9 = 9th step in width scale
 

	
 
     -100 = literal value 100%
 

	
 
     -none  = string value none
 

	
 

	
 
   Media Query Extensions:
 
     -ns = not-small
 
     -m  = medium
 
     -l  = large
 

	
 
*/
 
/* Max Width Percentages */
 
.mw-100 { max-width: 100%; }
 
/* Max Width Scale */
 
.mw1 { max-width: 1rem; }
 
.mw2 { max-width: 2rem; }
 
.mw3 { max-width: 4rem; }
 
.mw4 { max-width: 8rem; }
 
.mw5 { max-width: 16rem; }
 
.mw6 { max-width: 32rem; }
 
.mw7 { max-width: 48rem; }
 
.mw8 { max-width: 64rem; }
 
.mw9 { max-width: 96rem; }
 
/* Max Width String Properties */
 
.mw-none { max-width: none; }
 
/*
 

	
 
   WIDTHS
 
   Docs: http://tachyons.io/docs/layout/widths/
 

	
 
   Base:
 
     w = width
 

	
 
   Modifiers
 
     1 = 1st step in width scale
 
     2 = 2nd step in width scale
 
     3 = 3rd step in width scale
 
     4 = 4th step in width scale
 
     5 = 5th step in width scale
 

	
 
     -10  = literal value 10%
 
     -20  = literal value 20%
 
     -25  = literal value 25%
 
     -30  = literal value 30%
 
     -33  = literal value 33%
 
     -34  = literal value 34%
 
     -40  = literal value 40%
 
     -50  = literal value 50%
 
     -60  = literal value 60%
 
     -70  = literal value 70%
 
     -75  = literal value 75%
 
     -80  = literal value 80%
 
     -90  = literal value 90%
 
     -100 = literal value 100%
 

	
 
     -third      = 100% / 3 (Not supported in opera mini or IE8)
 
     -two-thirds = 100% / 1.5 (Not supported in opera mini or IE8)
 
     -auto       = string value auto
 

	
 

	
 
   Media Query Extensions:
 
     -ns = not-small
 
     -m  = medium
 
     -l  = large
 

	
 
*/
 
/* Width Scale */
 
.w1 { width: 1rem; }
 
.w2 { width: 2rem; }
 
.w3 { width: 4rem; }
 
.w4 { width: 8rem; }
 
.w5 { width: 16rem; }
 
.w-10 { width: 10%; }
 
.w-20 { width: 20%; }
 
.w-25 { width: 25%; }
 
.w-30 { width: 30%; }
 
.w-33 { width: 33%; }
 
.w-34 { width: 34%; }
 
.w-40 { width: 40%; }
 
.w-50 { width: 50%; }
 
.w-60 { width: 60%; }
 
.w-70 { width: 70%; }
 
.w-75 { width: 75%; }
 
.w-80 { width: 80%; }
 
.w-90 { width: 90%; }
 
.w-100 { width: 100%; }
 
.w-third { width: 33.33333%; }
 
.w-two-thirds { width: 66.66667%; }
 
.w-auto { width: auto; }
 
/*
 

	
 
    OVERFLOW
 

	
 
    Media Query Extensions:
 
      -ns = not-small
 
      -m  = medium
 
      -l  = large
 

	
 
 */
 
.overflow-visible { overflow: visible; }
 
.overflow-hidden { overflow: hidden; }
 
.overflow-scroll { overflow: scroll; }
 
.overflow-auto { overflow: auto; }
 
.overflow-x-visible { overflow-x: visible; }
 
.overflow-x-hidden { overflow-x: hidden; }
 
.overflow-x-scroll { overflow-x: scroll; }
 
.overflow-x-auto { overflow-x: auto; }
 
.overflow-y-visible { overflow-y: visible; }
 
.overflow-y-hidden { overflow-y: hidden; }
 
.overflow-y-scroll { overflow-y: scroll; }
 
.overflow-y-auto { overflow-y: auto; }
 
/*
 

	
 
   POSITIONING
 
   Docs: http://tachyons.io/docs/layout/position/
 

	
 
   Media Query Extensions:
 
     -ns = not-small
 
     -m  = medium
 
     -l  = large
 

	
 
*/
 
.static { position: static; }
 
.relative { position: relative; }
 
.absolute { position: absolute; }
 
.fixed { position: fixed; }
 
/*
 

	
 
    OPACITY
 
    Docs: http://tachyons.io/docs/themes/opacity/
 

	
 
*/
 
.o-100 { opacity: 1; }
 
.o-90 { opacity: .9; }
 
.o-80 { opacity: .8; }
 
.o-70 { opacity: .7; }
 
.o-60 { opacity: .6; }
 
.o-50 { opacity: .5; }
 
.o-40 { opacity: .4; }
 
.o-30 { opacity: .3; }
 
.o-20 { opacity: .2; }
 
.o-10 { opacity: .1; }
 
.o-05 { opacity: .05; }
 
.o-025 { opacity: .025; }
 
.o-0 { opacity: 0; }
 
/*
 

	
 
   ROTATIONS
 

	
 
*/
 
.rotate-45 { -webkit-transform: rotate( 45deg ); transform: rotate( 45deg ); }
 
.rotate-90 { -webkit-transform: rotate( 90deg ); transform: rotate( 90deg ); }
 
.rotate-135 { -webkit-transform: rotate( 135deg ); transform: rotate( 135deg ); }
 
.rotate-180 { -webkit-transform: rotate( 180deg ); transform: rotate( 180deg ); }
 
.rotate-225 { -webkit-transform: rotate( 225deg ); transform: rotate( 225deg ); }
 
.rotate-270 { -webkit-transform: rotate( 270deg ); transform: rotate( 270deg ); }
 
.rotate-315 { -webkit-transform: rotate( 315deg ); transform: rotate( 315deg ); }
 
/*
 

	
 
   SKINS
 
   Docs: http://tachyons.io/docs/themes/skins/
 

	
 
   Classes for setting foreground and background colors on elements.
 
   If you haven't declared a border color, but set border on an element, it will 
 
   be set to the current text color. 
 

	
 
*/
 
/* Text colors */
 
.black-90 { color: rgba( 0, 0, 0, .9 ); }
 
.black-80 { color: rgba( 0, 0, 0, .8 ); }
 
.black-70 { color: rgba( 0, 0, 0, .7 ); }
 
.black-60 { color: rgba( 0, 0, 0, .6 ); }
 
.black-50 { color: rgba( 0, 0, 0, .5 ); }
 
.black-40 { color: rgba( 0, 0, 0, .4 ); }
 
.black-30 { color: rgba( 0, 0, 0, .3 ); }
 
.black-20 { color: rgba( 0, 0, 0, .2 ); }
 
.black-10 { color: rgba( 0, 0, 0, .1 ); }
 
.black-05 { color: rgba( 0, 0, 0, .05 ); }
 
.white-90 { color: rgba( 255, 255, 255, .9 ); }
 
.white-80 { color: rgba( 255, 255, 255, .8 ); }
 
.white-70 { color: rgba( 255, 255, 255, .7 ); }
 
.white-60 { color: rgba( 255, 255, 255, .6 ); }
 
.white-50 { color: rgba( 255, 255, 255, .5 ); }
 
.white-40 { color: rgba( 255, 255, 255, .4 ); }
 
.white-30 { color: rgba( 255, 255, 255, .3 ); }
 
.white-20 { color: rgba( 255, 255, 255, .2 ); }
 
.white-10 { color: rgba( 255, 255, 255, .1 ); }
 
.black { color: #000; }
 
.near-black { color: #111; }
 
.dark-gray { color: #333; }
 
.mid-gray { color: #555; }
 
.gray { color: #777; }
 
.silver { color: #999; }
 
.light-silver { color: #aaa; }
 
.moon-gray { color: #ccc; }
 
.light-gray { color: #eee; }
 
.near-white { color: #f4f4f4; }
 
.white { color: #fff; }
 
.dark-red { color: #e7040f; }
 
.red { color: #ff4136; }
 
.light-red { color: #ff725c; }
 
.orange { color: #ff6300; }
 
.gold { color: #ffb700; }
 
.yellow { color: #ffd700; }
 
.light-yellow { color: #fbf1a9; }
 
.purple { color: #5e2ca5; }
 
.light-purple { color: #a463f2; }
 
.dark-pink { color: #d5008f; }
 
.hot-pink { color: #ff41b4; }
 
.pink { color: #ff80cc; }
 
.light-pink { color: #ffa3d7; }
 
.dark-green { color: #137752; }
 
.green { color: #19a974; }
 
.light-green { color: #9eebcf; }
 
.navy { color: #001b44; }
 
.dark-blue { color: #00449e; }
 
.blue { color: #357edd; }
 
.light-blue { color: #96ccff; }
 
.lightest-blue { color: #cdecff; }
 
.washed-blue { color: #f6fffe; }
 
.washed-green { color: #e8fdf5; }
 
.washed-yellow { color: #fffceb; }
 
.washed-red { color: #ffdfdf; }
 
.color-inherit { color: inherit; }
 
/* Background colors */
 
.bg-black-90 { background-color: rgba( 0, 0, 0, .9 ); }
 
.bg-black-80 { background-color: rgba( 0, 0, 0, .8 ); }
 
.bg-black-70 { background-color: rgba( 0, 0, 0, .7 ); }
 
.bg-black-60 { background-color: rgba( 0, 0, 0, .6 ); }
 
.bg-black-50 { background-color: rgba( 0, 0, 0, .5 ); }
 
.bg-black-40 { background-color: rgba( 0, 0, 0, .4 ); }
 
.bg-black-30 { background-color: rgba( 0, 0, 0, .3 ); }
 
.bg-black-20 { background-color: rgba( 0, 0, 0, .2 ); }
 
.bg-black-10 { background-color: rgba( 0, 0, 0, .1 ); }
 
.bg-black-05 { background-color: rgba( 0, 0, 0, .05 ); }
 
.bg-white-90 { background-color: rgba( 255, 255, 255, .9 ); }
 
.bg-white-80 { background-color: rgba( 255, 255, 255, .8 ); }
 
.bg-white-70 { background-color: rgba( 255, 255, 255, .7 ); }
 
.bg-white-60 { background-color: rgba( 255, 255, 255, .6 ); }
 
.bg-white-50 { background-color: rgba( 255, 255, 255, .5 ); }
 
.bg-white-40 { background-color: rgba( 255, 255, 255, .4 ); }
 
.bg-white-30 { background-color: rgba( 255, 255, 255, .3 ); }
 
.bg-white-20 { background-color: rgba( 255, 255, 255, .2 ); }
 
.bg-white-10 { background-color: rgba( 255, 255, 255, .1 ); }
 
.bg-black { background-color: #000; }
 
.bg-near-black { background-color: #111; }
 
.bg-dark-gray { background-color: #333; }
 
.bg-mid-gray { background-color: #555; }
 
.bg-gray { background-color: #777; }
 
.bg-silver { background-color: #999; }
 
.bg-light-silver { background-color: #aaa; }
 
.bg-moon-gray { background-color: #ccc; }
 
.bg-light-gray { background-color: #eee; }
 
.bg-near-white { background-color: #f4f4f4; }
 
.bg-white { background-color: #fff; }
 
.bg-transparent { background-color: transparent; }
 
.bg-dark-red { background-color: #e7040f; }
 
.bg-red { background-color: #ff4136; }
 
.bg-light-red { background-color: #ff725c; }
 
.bg-orange { background-color: #ff6300; }
 
.bg-gold { background-color: #ffb700; }
 
.bg-yellow { background-color: #ffd700; }
 
.bg-light-yellow { background-color: #fbf1a9; }
 
.bg-purple { background-color: #5e2ca5; }
 
.bg-light-purple { background-color: #a463f2; }
 
.bg-dark-pink { background-color: #d5008f; }
 
.bg-hot-pink { background-color: #ff41b4; }
 
.bg-pink { background-color: #ff80cc; }
 
.bg-light-pink { background-color: #ffa3d7; }
 
.bg-dark-green { background-color: #137752; }
 
.bg-green { background-color: #19a974; }
 
.bg-light-green { background-color: #9eebcf; }
 
.bg-navy { background-color: #001b44; }
 
.bg-dark-blue { background-color: #00449e; }
 
.bg-blue { background-color: #357edd; }
 
.bg-light-blue { background-color: #96ccff; }
 
.bg-lightest-blue { background-color: #cdecff; }
 
.bg-washed-blue { background-color: #f6fffe; }
 
.bg-washed-green { background-color: #e8fdf5; }
 
.bg-washed-yellow { background-color: #fffceb; }
 
.bg-washed-red { background-color: #ffdfdf; }
 
.bg-inherit { background-color: inherit; }
 
/* 
 
  
 
   SKINS:PSEUDO
 

	
 
   Customize the color of an element when
 
   it is focused or hovered over.
 
 
 
 */
 
.hover-black:hover { color: #000; }
 
.hover-black:focus { color: #000; }
 
.hover-near-black:hover { color: #111; }
 
.hover-near-black:focus { color: #111; }
 
.hover-dark-gray:hover { color: #333; }
 
.hover-dark-gray:focus { color: #333; }
 
.hover-mid-gray:hover { color: #555; }
 
.hover-mid-gray:focus { color: #555; }
 
.hover-gray:hover { color: #777; }
 
.hover-gray:focus { color: #777; }
 
.hover-silver:hover { color: #999; }
 
.hover-silver:focus { color: #999; }
 
.hover-light-silver:hover { color: #aaa; }
 
.hover-light-silver:focus { color: #aaa; }
 
.hover-moon-gray:hover { color: #ccc; }
 
.hover-moon-gray:focus { color: #ccc; }
 
.hover-light-gray:hover { color: #eee; }
 
.hover-light-gray:focus { color: #eee; }
 
.hover-near-white:hover { color: #f4f4f4; }
 
.hover-near-white:focus { color: #f4f4f4; }
 
.hover-white:hover { color: #fff; }
 
.hover-white:focus { color: #fff; }
 
.hover-black-90:hover { color: rgba( 0, 0, 0, .9 ); }
 
.hover-black-90:focus { color: rgba( 0, 0, 0, .9 ); }
 
.hover-black-80:hover { color: rgba( 0, 0, 0, .8 ); }
 
.hover-black-80:focus { color: rgba( 0, 0, 0, .8 ); }
 
.hover-black-70:hover { color: rgba( 0, 0, 0, .7 ); }
 
.hover-black-70:focus { color: rgba( 0, 0, 0, .7 ); }
 
.hover-black-60:hover { color: rgba( 0, 0, 0, .6 ); }
 
.hover-black-60:focus { color: rgba( 0, 0, 0, .6 ); }
 
.hover-black-50:hover { color: rgba( 0, 0, 0, .5 ); }
 
.hover-black-50:focus { color: rgba( 0, 0, 0, .5 ); }
 
.hover-black-40:hover { color: rgba( 0, 0, 0, .4 ); }
 
.hover-black-40:focus { color: rgba( 0, 0, 0, .4 ); }
 
.hover-black-30:hover { color: rgba( 0, 0, 0, .3 ); }
 
.hover-black-30:focus { color: rgba( 0, 0, 0, .3 ); }
 
.hover-black-20:hover { color: rgba( 0, 0, 0, .2 ); }
 
.hover-black-20:focus { color: rgba( 0, 0, 0, .2 ); }
 
.hover-black-10:hover { color: rgba( 0, 0, 0, .1 ); }
 
.hover-black-10:focus { color: rgba( 0, 0, 0, .1 ); }
 
.hover-white-90:hover { color: rgba( 255, 255, 255, .9 ); }
 
.hover-white-90:focus { color: rgba( 255, 255, 255, .9 ); }
 
.hover-white-80:hover { color: rgba( 255, 255, 255, .8 ); }
 
.hover-white-80:focus { color: rgba( 255, 255, 255, .8 ); }
 
.hover-white-70:hover { color: rgba( 255, 255, 255, .7 ); }
 
.hover-white-70:focus { color: rgba( 255, 255, 255, .7 ); }
 
.hover-white-60:hover { color: rgba( 255, 255, 255, .6 ); }
 
.hover-white-60:focus { color: rgba( 255, 255, 255, .6 ); }
 
.hover-white-50:hover { color: rgba( 255, 255, 255, .5 ); }
 
.hover-white-50:focus { color: rgba( 255, 255, 255, .5 ); }
 
.hover-white-40:hover { color: rgba( 255, 255, 255, .4 ); }
 
.hover-white-40:focus { color: rgba( 255, 255, 255, .4 ); }
 
.hover-white-30:hover { color: rgba( 255, 255, 255, .3 ); }
 
.hover-white-30:focus { color: rgba( 255, 255, 255, .3 ); }
 
.hover-white-20:hover { color: rgba( 255, 255, 255, .2 ); }
 
.hover-white-20:focus { color: rgba( 255, 255, 255, .2 ); }
 
.hover-white-10:hover { color: rgba( 255, 255, 255, .1 ); }
 
.hover-white-10:focus { color: rgba( 255, 255, 255, .1 ); }
 
.hover-inherit:hover, .hover-inherit:focus { color: inherit; }
 
.hover-bg-black:hover { background-color: #000; }
 
.hover-bg-black:focus { background-color: #000; }
 
.hover-bg-near-black:hover { background-color: #111; }
 
.hover-bg-near-black:focus { background-color: #111; }
 
.hover-bg-dark-gray:hover { background-color: #333; }
 
.hover-bg-dark-gray:focus { background-color: #333; }
 
.hover-bg-mid-gray:hover { background-color: #555; }
 
.hover-bg-mid-gray:focus { background-color: #555; }
 
.hover-bg-gray:hover { background-color: #777; }
 
.hover-bg-gray:focus { background-color: #777; }
 
.hover-bg-silver:hover { background-color: #999; }
 
.hover-bg-silver:focus { background-color: #999; }
 
.hover-bg-light-silver:hover { background-color: #aaa; }
 
.hover-bg-light-silver:focus { background-color: #aaa; }
 
.hover-bg-moon-gray:hover { background-color: #ccc; }
 
.hover-bg-moon-gray:focus { background-color: #ccc; }
 
.hover-bg-light-gray:hover { background-color: #eee; }
 
.hover-bg-light-gray:focus { background-color: #eee; }
 
.hover-bg-near-white:hover { background-color: #f4f4f4; }
 
.hover-bg-near-white:focus { background-color: #f4f4f4; }
 
.hover-bg-white:hover { background-color: #fff; }
 
.hover-bg-white:focus { background-color: #fff; }
 
.hover-bg-transparent:hover { background-color: transparent; }
 
.hover-bg-transparent:focus { background-color: transparent; }
 
.hover-bg-black-90:hover { background-color: rgba( 0, 0, 0, .9 ); }
 
.hover-bg-black-90:focus { background-color: rgba( 0, 0, 0, .9 ); }
 
.hover-bg-black-80:hover { background-color: rgba( 0, 0, 0, .8 ); }
 
.hover-bg-black-80:focus { background-color: rgba( 0, 0, 0, .8 ); }
 
.hover-bg-black-70:hover { background-color: rgba( 0, 0, 0, .7 ); }
 
.hover-bg-black-70:focus { background-color: rgba( 0, 0, 0, .7 ); }
 
.hover-bg-black-60:hover { background-color: rgba( 0, 0, 0, .6 ); }
 
.hover-bg-black-60:focus { background-color: rgba( 0, 0, 0, .6 ); }
 
.hover-bg-black-50:hover { background-color: rgba( 0, 0, 0, .5 ); }
 
.hover-bg-black-50:focus { background-color: rgba( 0, 0, 0, .5 ); }
 
.hover-bg-black-40:hover { background-color: rgba( 0, 0, 0, .4 ); }
 
.hover-bg-black-40:focus { background-color: rgba( 0, 0, 0, .4 ); }
 
.hover-bg-black-30:hover { background-color: rgba( 0, 0, 0, .3 ); }
 
.hover-bg-black-30:focus { background-color: rgba( 0, 0, 0, .3 ); }
 
.hover-bg-black-20:hover { background-color: rgba( 0, 0, 0, .2 ); }
 
.hover-bg-black-20:focus { background-color: rgba( 0, 0, 0, .2 ); }
 
.hover-bg-black-10:hover { background-color: rgba( 0, 0, 0, .1 ); }
 
.hover-bg-black-10:focus { background-color: rgba( 0, 0, 0, .1 ); }
 
.hover-bg-white-90:hover { background-color: rgba( 255, 255, 255, .9 ); }
 
.hover-bg-white-90:focus { background-color: rgba( 255, 255, 255, .9 ); }
 
.hover-bg-white-80:hover { background-color: rgba( 255, 255, 255, .8 ); }
 
.hover-bg-white-80:focus { background-color: rgba( 255, 255, 255, .8 ); }
 
.hover-bg-white-70:hover { background-color: rgba( 255, 255, 255, .7 ); }
 
.hover-bg-white-70:focus { background-color: rgba( 255, 255, 255, .7 ); }
 
.hover-bg-white-60:hover { background-color: rgba( 255, 255, 255, .6 ); }
 
.hover-bg-white-60:focus { background-color: rgba( 255, 255, 255, .6 ); }
 
.hover-bg-white-50:hover { background-color: rgba( 255, 255, 255, .5 ); }
 
.hover-bg-white-50:focus { background-color: rgba( 255, 255, 255, .5 ); }
 
.hover-bg-white-40:hover { background-color: rgba( 255, 255, 255, .4 ); }
 
.hover-bg-white-40:focus { background-color: rgba( 255, 255, 255, .4 ); }
 
.hover-bg-white-30:hover { background-color: rgba( 255, 255, 255, .3 ); }
 
.hover-bg-white-30:focus { background-color: rgba( 255, 255, 255, .3 ); }
 
.hover-bg-white-20:hover { background-color: rgba( 255, 255, 255, .2 ); }
 
.hover-bg-white-20:focus { background-color: rgba( 255, 255, 255, .2 ); }
 
.hover-bg-white-10:hover { background-color: rgba( 255, 255, 255, .1 ); }
 
.hover-bg-white-10:focus { background-color: rgba( 255, 255, 255, .1 ); }
 
.hover-dark-red:hover { color: #e7040f; }
 
.hover-dark-red:focus { color: #e7040f; }
 
.hover-red:hover { color: #ff4136; }
 
.hover-red:focus { color: #ff4136; }
 
.hover-light-red:hover { color: #ff725c; }
 
.hover-light-red:focus { color: #ff725c; }
 
.hover-orange:hover { color: #ff6300; }
 
.hover-orange:focus { color: #ff6300; }
 
.hover-gold:hover { color: #ffb700; }
 
.hover-gold:focus { color: #ffb700; }
 
.hover-yellow:hover { color: #ffd700; }
 
.hover-yellow:focus { color: #ffd700; }
 
.hover-light-yellow:hover { color: #fbf1a9; }
 
.hover-light-yellow:focus { color: #fbf1a9; }
 
.hover-purple:hover { color: #5e2ca5; }
 
.hover-purple:focus { color: #5e2ca5; }
 
.hover-light-purple:hover { color: #a463f2; }
 
.hover-light-purple:focus { color: #a463f2; }
 
.hover-dark-pink:hover { color: #d5008f; }
 
.hover-dark-pink:focus { color: #d5008f; }
 
.hover-hot-pink:hover { color: #ff41b4; }
 
.hover-hot-pink:focus { color: #ff41b4; }
 
.hover-pink:hover { color: #ff80cc; }
 
.hover-pink:focus { color: #ff80cc; }
 
.hover-light-pink:hover { color: #ffa3d7; }
 
.hover-light-pink:focus { color: #ffa3d7; }
 
.hover-dark-green:hover { color: #137752; }
 
.hover-dark-green:focus { color: #137752; }
 
.hover-green:hover { color: #19a974; }
 
.hover-green:focus { color: #19a974; }
 
.hover-light-green:hover { color: #9eebcf; }
 
.hover-light-green:focus { color: #9eebcf; }
 
.hover-navy:hover { color: #001b44; }
 
.hover-navy:focus { color: #001b44; }
 
.hover-dark-blue:hover { color: #00449e; }
 
.hover-dark-blue:focus { color: #00449e; }
 
.hover-blue:hover { color: #357edd; }
 
.hover-blue:focus { color: #357edd; }
 
.hover-light-blue:hover { color: #96ccff; }
 
.hover-light-blue:focus { color: #96ccff; }
 
.hover-lightest-blue:hover { color: #cdecff; }
 
.hover-lightest-blue:focus { color: #cdecff; }
 
.hover-washed-blue:hover { color: #f6fffe; }
 
.hover-washed-blue:focus { color: #f6fffe; }
 
.hover-washed-green:hover { color: #e8fdf5; }
 
.hover-washed-green:focus { color: #e8fdf5; }
 
.hover-washed-yellow:hover { color: #fffceb; }
 
.hover-washed-yellow:focus { color: #fffceb; }
 
.hover-washed-red:hover { color: #ffdfdf; }
 
.hover-washed-red:focus { color: #ffdfdf; }
 
.hover-bg-dark-red:hover { background-color: #e7040f; }
 
.hover-bg-dark-red:focus { background-color: #e7040f; }
 
.hover-bg-red:hover { background-color: #ff4136; }
 
.hover-bg-red:focus { background-color: #ff4136; }
 
.hover-bg-light-red:hover { background-color: #ff725c; }
 
.hover-bg-light-red:focus { background-color: #ff725c; }
 
.hover-bg-orange:hover { background-color: #ff6300; }
 
.hover-bg-orange:focus { background-color: #ff6300; }
 
.hover-bg-gold:hover { background-color: #ffb700; }
 
.hover-bg-gold:focus { background-color: #ffb700; }
 
.hover-bg-yellow:hover { background-color: #ffd700; }
 
.hover-bg-yellow:focus { background-color: #ffd700; }
 
.hover-bg-light-yellow:hover { background-color: #fbf1a9; }
 
.hover-bg-light-yellow:focus { background-color: #fbf1a9; }
 
.hover-bg-purple:hover { background-color: #5e2ca5; }
 
.hover-bg-purple:focus { background-color: #5e2ca5; }
 
.hover-bg-light-purple:hover { background-color: #a463f2; }
 
.hover-bg-light-purple:focus { background-color: #a463f2; }
 
.hover-bg-dark-pink:hover { background-color: #d5008f; }
 
.hover-bg-dark-pink:focus { background-color: #d5008f; }
 
.hover-bg-hot-pink:hover { background-color: #ff41b4; }
 
.hover-bg-hot-pink:focus { background-color: #ff41b4; }
 
.hover-bg-pink:hover { background-color: #ff80cc; }
 
.hover-bg-pink:focus { background-color: #ff80cc; }
 
.hover-bg-light-pink:hover { background-color: #ffa3d7; }
 
.hover-bg-light-pink:focus { background-color: #ffa3d7; }
 
.hover-bg-dark-green:hover { background-color: #137752; }
 
.hover-bg-dark-green:focus { background-color: #137752; }
 
.hover-bg-green:hover { background-color: #19a974; }
 
.hover-bg-green:focus { background-color: #19a974; }
 
.hover-bg-light-green:hover { background-color: #9eebcf; }
 
.hover-bg-light-green:focus { background-color: #9eebcf; }
 
.hover-bg-navy:hover { background-color: #001b44; }
 
.hover-bg-navy:focus { background-color: #001b44; }
 
.hover-bg-dark-blue:hover { background-color: #00449e; }
 
.hover-bg-dark-blue:focus { background-color: #00449e; }
 
.hover-bg-blue:hover { background-color: #357edd; }
 
.hover-bg-blue:focus { background-color: #357edd; }
 
.hover-bg-light-blue:hover { background-color: #96ccff; }
 
.hover-bg-light-blue:focus { background-color: #96ccff; }
 
.hover-bg-lightest-blue:hover { background-color: #cdecff; }
 
.hover-bg-lightest-blue:focus { background-color: #cdecff; }
 
.hover-bg-washed-blue:hover { background-color: #f6fffe; }
 
.hover-bg-washed-blue:focus { background-color: #f6fffe; }
 
.hover-bg-washed-green:hover { background-color: #e8fdf5; }
 
.hover-bg-washed-green:focus { background-color: #e8fdf5; }
 
.hover-bg-washed-yellow:hover { background-color: #fffceb; }
 
.hover-bg-washed-yellow:focus { background-color: #fffceb; }
 
.hover-bg-washed-red:hover { background-color: #ffdfdf; }
 
.hover-bg-washed-red:focus { background-color: #ffdfdf; }
 
.hover-bg-inherit:hover, .hover-bg-inherit:focus { background-color: inherit; }
 
/* Variables */
 
/*
 
   SPACING
 
   Docs: http://tachyons.io/docs/layout/spacing/
 

	
 
   An eight step powers of two scale ranging from 0 to 16rem.
 

	
 
   Base:
 
     p = padding
 
     m = margin
 

	
 
   Modifiers:
 
     a = all
 
     h = horizontal
 
     v = vertical
 
     t = top
 
     r = right
 
     b = bottom
 
     l = left
 

	
 
     0 = none
 
     1 = 1st step in spacing scale
 
     2 = 2nd step in spacing scale
 
     3 = 3rd step in spacing scale
 
     4 = 4th step in spacing scale
 
     5 = 5th step in spacing scale
 
     6 = 6th step in spacing scale
 
     7 = 7th step in spacing scale
 

	
 
   Media Query Extensions:
 
     -ns = not-small
 
     -m  = medium
 
     -l  = large
 

	
 
*/
 
.pa0 { padding: 0; }
 
.pa1 { padding: .25rem; }
 
.pa2 { padding: .5rem; }
 
.pa3 { padding: 1rem; }
 
.pa4 { padding: 2rem; }
 
.pa5 { padding: 4rem; }
 
.pa6 { padding: 8rem; }
 
.pa7 { padding: 16rem; }
 
.pl0 { padding-left: 0; }
 
.pl1 { padding-left: .25rem; }
 
.pl2 { padding-left: .5rem; }
 
.pl3 { padding-left: 1rem; }
 
.pl4 { padding-left: 2rem; }
 
.pl5 { padding-left: 4rem; }
 
.pl6 { padding-left: 8rem; }
 
.pl7 { padding-left: 16rem; }
 
.pr0 { padding-right: 0; }
 
.pr1 { padding-right: .25rem; }
 
.pr2 { padding-right: .5rem; }
 
.pr3 { padding-right: 1rem; }
 
.pr4 { padding-right: 2rem; }
 
.pr5 { padding-right: 4rem; }
 
.pr6 { padding-right: 8rem; }
 
.pr7 { padding-right: 16rem; }
 
.pb0 { padding-bottom: 0; }
 
.pb1 { padding-bottom: .25rem; }
 
.pb2 { padding-bottom: .5rem; }
 
.pb3 { padding-bottom: 1rem; }
 
.pb4 { padding-bottom: 2rem; }
 
.pb5 { padding-bottom: 4rem; }
 
.pb6 { padding-bottom: 8rem; }
 
.pb7 { padding-bottom: 16rem; }
 
.pt0 { padding-top: 0; }
 
.pt1 { padding-top: .25rem; }
 
.pt2 { padding-top: .5rem; }
 
.pt3 { padding-top: 1rem; }
 
.pt4 { padding-top: 2rem; }
 
.pt5 { padding-top: 4rem; }
 
.pt6 { padding-top: 8rem; }
 
.pt7 { padding-top: 16rem; }
 
.pv0 { padding-top: 0; padding-bottom: 0; }
 
.pv1 { padding-top: .25rem; padding-bottom: .25rem; }
 
.pv2 { padding-top: .5rem; padding-bottom: .5rem; }
 
.pv3 { padding-top: 1rem; padding-bottom: 1rem; }
 
.pv4 { padding-top: 2rem; padding-bottom: 2rem; }
 
.pv5 { padding-top: 4rem; padding-bottom: 4rem; }
 
.pv6 { padding-top: 8rem; padding-bottom: 8rem; }
 
.pv7 { padding-top: 16rem; padding-bottom: 16rem; }
 
.ph0 { padding-left: 0; padding-right: 0; }
 
.ph1 { padding-left: .25rem; padding-right: .25rem; }
 
.ph2 { padding-left: .5rem; padding-right: .5rem; }
 
.ph3 { padding-left: 1rem; padding-right: 1rem; }
 
.ph4 { padding-left: 2rem; padding-right: 2rem; }
 
.ph5 { padding-left: 4rem; padding-right: 4rem; }
 
.ph6 { padding-left: 8rem; padding-right: 8rem; }
 
.ph7 { padding-left: 16rem; padding-right: 16rem; }
 
.ma0 { margin: 0; }
 
.ma1 { margin: .25rem; }
 
.ma2 { margin: .5rem; }
 
.ma3 { margin: 1rem; }
 
.ma4 { margin: 2rem; }
 
.ma5 { margin: 4rem; }
 
.ma6 { margin: 8rem; }
 
.ma7 { margin: 16rem; }
 
.ml0 { margin-left: 0; }
 
.ml1 { margin-left: .25rem; }
 
.ml2 { margin-left: .5rem; }
 
.ml3 { margin-left: 1rem; }
 
.ml4 { margin-left: 2rem; }
 
.ml5 { margin-left: 4rem; }
 
.ml6 { margin-left: 8rem; }
 
.ml7 { margin-left: 16rem; }
 
.mr0 { margin-right: 0; }
 
.mr1 { margin-right: .25rem; }
 
.mr2 { margin-right: .5rem; }
 
.mr3 { margin-right: 1rem; }
 
.mr4 { margin-right: 2rem; }
 
.mr5 { margin-right: 4rem; }
 
.mr6 { margin-right: 8rem; }
 
.mr7 { margin-right: 16rem; }
 
.mb0 { margin-bottom: 0; }
 
.mb1 { margin-bottom: .25rem; }
 
.mb2 { margin-bottom: .5rem; }
 
.mb3 { margin-bottom: 1rem; }
 
.mb4 { margin-bottom: 2rem; }
 
.mb5 { margin-bottom: 4rem; }
 
.mb6 { margin-bottom: 8rem; }
 
.mb7 { margin-bottom: 16rem; }
 
.mt0 { margin-top: 0; }
 
.mt1 { margin-top: .25rem; }
 
.mt2 { margin-top: .5rem; }
 
.mt3 { margin-top: 1rem; }
 
.mt4 { margin-top: 2rem; }
 
.mt5 { margin-top: 4rem; }
 
.mt6 { margin-top: 8rem; }
 
.mt7 { margin-top: 16rem; }
 
.mv0 { margin-top: 0; margin-bottom: 0; }
 
.mv1 { margin-top: .25rem; margin-bottom: .25rem; }
 
.mv2 { margin-top: .5rem; margin-bottom: .5rem; }
 
.mv3 { margin-top: 1rem; margin-bottom: 1rem; }
 
.mv4 { margin-top: 2rem; margin-bottom: 2rem; }
 
.mv5 { margin-top: 4rem; margin-bottom: 4rem; }
 
.mv6 { margin-top: 8rem; margin-bottom: 8rem; }
 
.mv7 { margin-top: 16rem; margin-bottom: 16rem; }
 
.mh0 { margin-left: 0; margin-right: 0; }
 
.mh1 { margin-left: .25rem; margin-right: .25rem; }
 
.mh2 { margin-left: .5rem; margin-right: .5rem; }
 
.mh3 { margin-left: 1rem; margin-right: 1rem; }
 
.mh4 { margin-left: 2rem; margin-right: 2rem; }
 
.mh5 { margin-left: 4rem; margin-right: 4rem; }
 
.mh6 { margin-left: 8rem; margin-right: 8rem; }
 
.mh7 { margin-left: 16rem; margin-right: 16rem; }
 
/*
 
   NEGATIVE MARGINS
 

	
 
   Base:
 
     n = negative
 

	
 
   Modifiers:
 
     a = all
 
     t = top
 
     r = right
 
     b = bottom
 
     l = left
 

	
 
     1 = 1st step in spacing scale
 
     2 = 2nd step in spacing scale
 
     3 = 3rd step in spacing scale
 
     4 = 4th step in spacing scale
 
     5 = 5th step in spacing scale
 
     6 = 6th step in spacing scale
 
     7 = 7th step in spacing scale
 

	
 
   Media Query Extensions:
 
     -ns = not-small
 
     -m  = medium
 
     -l  = large
 

	
 
*/
 
.na1 { margin: -0.25rem; }
 
.na2 { margin: -0.5rem; }
 
.na3 { margin: -1rem; }
 
.na4 { margin: -2rem; }
 
.na5 { margin: -4rem; }
 
.na6 { margin: -8rem; }
 
.na7 { margin: -16rem; }
 
.nl1 { margin-left: -0.25rem; }
 
.nl2 { margin-left: -0.5rem; }
 
.nl3 { margin-left: -1rem; }
 
.nl4 { margin-left: -2rem; }
 
.nl5 { margin-left: -4rem; }
 
.nl6 { margin-left: -8rem; }
 
.nl7 { margin-left: -16rem; }
 
.nr1 { margin-right: -0.25rem; }
 
.nr2 { margin-right: -0.5rem; }
 
.nr3 { margin-right: -1rem; }
 
.nr4 { margin-right: -2rem; }
 
.nr5 { margin-right: -4rem; }
 
.nr6 { margin-right: -8rem; }
 
.nr7 { margin-right: -16rem; }
 
.nb1 { margin-bottom: -0.25rem; }
 
.nb2 { margin-bottom: -0.5rem; }
 
.nb3 { margin-bottom: -1rem; }
 
.nb4 { margin-bottom: -2rem; }
 
.nb5 { margin-bottom: -4rem; }
 
.nb6 { margin-bottom: -8rem; }
 
.nb7 { margin-bottom: -16rem; }
 
.nt1 { margin-top: -0.25rem; }
 
.nt2 { margin-top: -0.5rem; }
 
.nt3 { margin-top: -1rem; }
 
.nt4 { margin-top: -2rem; }
 
.nt5 { margin-top: -4rem; }
 
.nt6 { margin-top: -8rem; }
 
.nt7 { margin-top: -16rem; }
 
/*
 

	
 
  TABLES
 
  Docs: http://tachyons.io/docs/elements/tables/
 

	
 
*/
 
.collapse { border-collapse: collapse; border-spacing: 0; }
 
.striped--light-silver:nth-child(odd) { background-color: #aaa; }
 
.striped--moon-gray:nth-child(odd) { background-color: #ccc; }
 
.striped--light-gray:nth-child(odd) { background-color: #eee; }
 
.striped--near-white:nth-child(odd) { background-color: #f4f4f4; }
 
.stripe-light:nth-child(odd) { background-color: rgba( 255, 255, 255, .1 ); }
 
.stripe-dark:nth-child(odd) { background-color: rgba( 0, 0, 0, .1 ); }
 
/*
 

	
 
   TEXT DECORATION
 
   Docs: http://tachyons.io/docs/typography/text-decoration/
 

	
 

	
 
   Media Query Extensions:
 
     -ns = not-small
 
     -m  = medium
 
     -l  = large
 

	
 
*/
 
.strike { text-decoration: line-through; }
 
.underline { text-decoration: underline; }
 
.no-underline { text-decoration: none; }
 
/*
 

	
 
  TEXT ALIGN
 
  Docs: http://tachyons.io/docs/typography/text-align/
 

	
 
  Base
 
    t = text-align
 

	
 
  Modifiers
 
    l = left
 
    r = right
 
    c = center
 
    j = justify
 

	
 
  Media Query Extensions:
 
    -ns = not-small
 
    -m  = medium
 
    -l  = large
 

	
 
*/
 
.tl { text-align: left; }
 
.tr { text-align: right; }
 
.tc { text-align: center; }
 
.tj { text-align: justify; }
 
/*
 

	
 
   TEXT TRANSFORM
 
   Docs: http://tachyons.io/docs/typography/text-transform/
 

	
 
   Base:
 
     tt = text-transform
 

	
 
   Modifiers
 
     c = capitalize
 
     l = lowercase
 
     u = uppercase
 
     n = none
 

	
 
   Media Query Extensions:
 
     -ns = not-small
 
     -m  = medium
 
     -l  = large
 

	
 
*/
 
.ttc { text-transform: capitalize; }
 
.ttl { text-transform: lowercase; }
 
.ttu { text-transform: uppercase; }
 
.ttn { text-transform: none; }
 
/*
 

	
 
   TYPE SCALE
 
   Docs: http://tachyons.io/docs/typography/scale/
 

	
 
   Base:
 
    f = font-size
 

	
 
   Modifiers
 
     1 = 1st step in size scale
 
     2 = 2nd step in size scale
 
     3 = 3rd step in size scale
 
     4 = 4th step in size scale
 
     5 = 5th step in size scale
 
     6 = 6th step in size scale
 
     7 = 7th step in size scale
 

	
 
   Media Query Extensions:
 
     -ns = not-small
 
     -m  = medium
 
     -l  = large
 
*/
 
/*
 
 * For Hero/Marketing Titles
 
 *
 
 * These generally are too large for mobile
 
 * so be careful using them on smaller screens.
 
 * */
 
.f-6, .f-headline { font-size: 6rem; }
 
.f-5, .f-subheadline { font-size: 5rem; }
 
/* Type Scale */
 
.f1 { font-size: 3rem; }
 
.f2 { font-size: 2.25rem; }
 
.f3 { font-size: 1.5rem; }
 
.f4 { font-size: 1.25rem; }
 
.f5 { font-size: 1rem; }
 
.f6 { font-size: .875rem; }
 
.f7 { font-size: .75rem; }
 
/* Small and hard to read for many people so use with extreme caution */
 
/*
 

	
 
   TYPOGRAPHY
 
   http://tachyons.io/docs/typography/measure/
 

	
 
   Media Query Extensions:
 
     -ns = not-small
 
     -m  = medium
 
     -l  = large
 

	
 
*/
 
/* Measure is limited to ~66 characters */
 
.measure { max-width: 30em; }
 
/* Measure is limited to ~80 characters */
 
.measure-wide { max-width: 34em; }
 
/* Measure is limited to ~45 characters */
 
.measure-narrow { max-width: 20em; }
 
/* Book paragraph style - paragraphs are indented with no vertical spacing. */
 
.indent { text-indent: 1em; margin-top: 0; margin-bottom: 0; }
 
.small-caps { font-variant: small-caps; }
 
/* Combine this class with a width to truncate text (or just leave as is to truncate at width of containing element. */
 
.truncate { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
 
/*
 

	
 
   UTILITIES
 

	
 
   Media Query Extensions:
 
     -ns = not-small
 
     -m  = medium
 
     -l  = large
 

	
 
*/
 
/* Equivalent to .overflow-y-scroll */
 
.overflow-container { overflow-y: scroll; }
 
.center { margin-right: auto; margin-left: auto; }
 
.mr-auto { margin-right: auto; }
 
.ml-auto { margin-left: auto; }
 
/*
 

	
 
   VISIBILITY
 

	
 
   Media Query Extensions:
 
     -ns = not-small
 
     -m  = medium
 
     -l  = large
 

	
 
*/
 
/*
 
    Text that is hidden but accessible
 
    Ref: http://snook.ca/archives/html_and_css/hiding-content-for-accessibility
 
*/
 
.clip { position: fixed !important; _position: absolute !important; clip: rect( 1px 1px 1px 1px ); /* IE6, IE7 */ clip: rect( 1px, 1px, 1px, 1px ); }
 
/*
 

	
 
   WHITE SPACE
 

	
 
   Media Query Extensions:
 
     -ns = not-small
 
     -m  = medium
 
     -l  = large
 

	
 
*/
 
.ws-normal { white-space: normal; }
 
.nowrap { white-space: nowrap; }
 
.pre { white-space: pre; }
 
/*
 

	
 
   VERTICAL ALIGN
 

	
 
   Media Query Extensions:
 
     -ns = not-small
 
     -m  = medium
 
     -l  = large
 

	
 
*/
 
.v-base { vertical-align: baseline; }
 
.v-mid { vertical-align: middle; }
 
.v-top { vertical-align: top; }
 
.v-btm { vertical-align: bottom; }
 
/*
 

	
 
  HOVER EFFECTS
 
  Docs: http://tachyons.io/docs/themes/hovers/
 

	
 
    - Dim
 
    - Glow
 
    - Hide Child
 
    - Underline text
 
    - Grow
 
    - Pointer
 
    - Shadow
 

	
 
*/
 
/*
 

	
 
  Dim element on hover by adding the dim class.
 

	
 
*/
 
.dim { opacity: 1; transition: opacity .15s ease-in; }
 
.dim:hover, .dim:focus { opacity: .5; transition: opacity .15s ease-in; }
 
.dim:active { opacity: .8; transition: opacity .15s ease-out; }
 
/*
 

	
 
  Animate opacity to 100% on hover by adding the glow class.
 

	
 
*/
 
.glow { transition: opacity .15s ease-in; }
 
.glow:hover, .glow:focus { opacity: 1; transition: opacity .15s ease-in; }
 
/*
 

	
 
  Hide child & reveal on hover:
 

	
 
  Put the hide-child class on a parent element and any nested element with the
 
  child class will be hidden and displayed on hover or focus.
 

	
 
  <div class="hide-child">
 
    <div class="child"> Hidden until hover or focus </div>
 
    <div class="child"> Hidden until hover or focus </div>
 
    <div class="child"> Hidden until hover or focus </div>
 
    <div class="child"> Hidden until hover or focus </div>
 
  </div>
 
*/
 
.hide-child .child { opacity: 0; transition: opacity .15s ease-in; }
 
.hide-child:hover  .child, .hide-child:focus  .child, .hide-child:active .child { opacity: 1; transition: opacity .15s ease-in; }
 
.underline-hover:hover, .underline-hover:focus { text-decoration: underline; }
 
/* Can combine this with overflow-hidden to make background images grow on hover
 
 * even if you are using background-size: cover */
 
.grow { -moz-osx-font-smoothing: grayscale; -webkit-backface-visibility: hidden; backface-visibility: hidden; -webkit-transform: translateZ( 0 ); transform: translateZ( 0 ); transition: -webkit-transform .25s ease-out; transition: transform .25s ease-out; transition: transform .25s ease-out, -webkit-transform .25s ease-out; }
 
.grow:hover, .grow:focus { -webkit-transform: scale( 1.05 ); transform: scale( 1.05 ); }
 
.grow:active { -webkit-transform: scale( .90 ); transform: scale( .90 ); }
 
.grow-large { -moz-osx-font-smoothing: grayscale; -webkit-backface-visibility: hidden; backface-visibility: hidden; -webkit-transform: translateZ( 0 ); transform: translateZ( 0 ); transition: -webkit-transform .25s ease-in-out; transition: transform .25s ease-in-out; transition: transform .25s ease-in-out, -webkit-transform .25s ease-in-out; }
 
.grow-large:hover, .grow-large:focus { -webkit-transform: scale( 1.2 ); transform: scale( 1.2 ); }
 
.grow-large:active { -webkit-transform: scale( .95 ); transform: scale( .95 ); }
 
/* Add pointer on hover */
 
.pointer:hover { cursor: pointer; }
 
/* 
 
   Add shadow on hover.
 

	
 
   Performant box-shadow animation pattern from 
 
   http://tobiasahlin.com/blog/how-to-animate-box-shadow/ 
 
*/
 
.shadow-hover { cursor: pointer; position: relative; transition: all .5s cubic-bezier( .165, .84, .44, 1 ); }
 
.shadow-hover::after { content: ''; box-shadow: 0 0 16px 2px rgba( 0, 0, 0, .2 ); border-radius: inherit; opacity: 0; position: absolute; top: 0; left: 0; width: 100%; height: 100%; z-index: -1; transition: opacity .5s cubic-bezier( .165, .84, .44, 1 ); }
 
.shadow-hover:hover::after, .shadow-hover:focus::after { opacity: 1; }
 
/* Combine with classes in skins and skins-pseudo for 
 
 * many different transition possibilities. */
 
.bg-animate, .bg-animate:hover, .bg-animate:focus { transition: background-color .15s ease-in-out; }
 
/*
 

	
 
  Z-INDEX
 

	
 
  Base
 
    z = z-index
 

	
 
  Modifiers
 
    -0 = literal value 0
 
    -1 = literal value 1
 
    -2 = literal value 2
 
    -3 = literal value 3
 
    -4 = literal value 4
 
    -5 = literal value 5
 
    -999 = literal value 999
 
    -9999 = literal value 9999
 

	
 
    -max = largest accepted z-index value as integer
 

	
 
    -inherit = string value inherit
 
    -initial = string value initial
 
    -unset = string value unset
 

	
 
  MDN: https://developer.mozilla.org/en/docs/Web/CSS/z-index
 
  Spec: http://www.w3.org/TR/CSS2/zindex.html
 
  Articles:
 
    https://philipwalton.com/articles/what-no-one-told-you-about-z-index/
 

	
 
  Tips on extending:
 
  There might be a time worth using negative z-index values.
 
  Or if you are using tachyons with another project, you might need to
 
  adjust these values to suit your needs.
 

	
 
*/
 
.z-0 { z-index: 0; }
 
.z-1 { z-index: 1; }
 
.z-2 { z-index: 2; }
 
.z-3 { z-index: 3; }
 
.z-4 { z-index: 4; }
 
.z-5 { z-index: 5; }
 
.z-999 { z-index: 999; }
 
.z-9999 { z-index: 9999; }
 
.z-max { z-index: 2147483647; }
 
.z-inherit { z-index: inherit; }
 
.z-initial { z-index: initial; }
 
.z-unset { z-index: unset; }
 
/*
 

	
 
    NESTED
 
    Tachyons module for styling nested elements
 
    that are generated by a cms.
 

	
 
*/
 
.nested-copy-line-height p, .nested-copy-line-height ul,
 
.nested-copy-line-height ol { line-height: 1.5; }
 
.nested-headline-line-height h1, .nested-headline-line-height h2,
 
.nested-headline-line-height h3, .nested-headline-line-height h4,
 
.nested-headline-line-height h5, .nested-headline-line-height h6 { line-height: 1.25; }
 
.nested-list-reset ul, .nested-list-reset ol { padding-left: 0; margin-left: 0; list-style-type: none; }
 
.nested-copy-indent p+p { text-indent: 1em; margin-top: 0; margin-bottom: 0; }
 
.nested-copy-separator p+p { margin-top: 1.5em; }
 
.nested-img img { width: 100%; max-width: 100%; display: block; }
 
.nested-links a { color: #357edd; transition: color .15s ease-in; }
 
.nested-links a:hover { color: #96ccff; transition: color .15s ease-in; }
 
.nested-links a:focus { color: #96ccff; transition: color .15s ease-in; }
 
/*
 

	
 
  STYLES
 

	
 
  Add custom styles here.
 

	
 
*/
 
/* Variables */
 
/* Importing here will allow you to override any variables in the modules */
 
/*
 

	
 
   Tachyons
 
   COLOR VARIABLES
 

	
 
   Grayscale
 
   - Solids
 
   - Transparencies
 
   Colors
 

	
 
*/
 
/*
 

	
 
  CUSTOM MEDIA QUERIES
 

	
 
  Media query values can be changed to fit your own content.
 
  There are no magic bullets when it comes to media query width values.
 
  They should be declared in em units - and they should be set to meet
 
  the needs of your content. You can also add additional media queries,
 
  or remove some of the existing ones.
 

	
 
  These media queries can be referenced like so:
 

	
 
  @media (--breakpoint-not-small) {
 
    .medium-and-larger-specific-style {
 
      background-color: red;
 
    }
 
  }
 

	
 
  @media (--breakpoint-medium) {
 
    .medium-screen-specific-style {
 
      background-color: red;
 
    }
 
  }
 

	
 
  @media (--breakpoint-large) {
 
    .large-and-larger-screen-specific-style {
 
      background-color: red;
 
    }
 
  }
 

	
 
*/
 
/* Media Queries */
 
/* Debugging */
 
/*
 

	
 
  DEBUG CHILDREN
 
  Docs: http://tachyons.io/docs/debug/
 

	
 
  Just add the debug class to any element to see outlines on its
 
  children.
 

	
 
*/
 
.debug * { outline: 1px solid gold; }
 
.debug-white * { outline: 1px solid white; }
 
.debug-black * { outline: 1px solid black; }
 
/*
 

	
 
   DEBUG GRID
 
   http://tachyons.io/docs/debug-grid/
 

	
 
   Can be useful for debugging layout issues
 
   or helping to make sure things line up perfectly.
 
   Just tack one of these classes onto a parent element.
 

	
 
*/
 
.debug-grid { background: transparent url( data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAgAAAAICAYAAADED76LAAAAFElEQVR4AWPAC97/9x0eCsAEPgwAVLshdpENIxcAAAAASUVORK5CYII= ) repeat top left; }
 
.debug-grid-16 { background: transparent url( data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAMklEQVR4AWOgCLz/b0epAa6UGuBOqQHOQHLUgFEDnAbcBZ4UGwDOkiCnkIhdgNgNxAYAiYlD+8sEuo8AAAAASUVORK5CYII= ) repeat top left; }
 
.debug-grid-8-solid { background: white url( data:image/gif;base64,R0lGODdhCAAIAPEAAADw/wDx/////wAAACwAAAAACAAIAAACDZQvgaeb/lxbAIKA8y0AOw== ) repeat top left; }
 
.debug-grid-16-solid { background: white url( data:image/gif;base64,R0lGODdhEAAQAPEAAADw/wDx/xXy/////ywAAAAAEAAQAAACIZyPKckYDQFsb6ZqD85jZ2+BkwiRFKehhqQCQgDHcgwEBQA7 ) repeat top left; }
 
/* Uncomment out the line below to help debug layout issues */
 
/* @import './_debug'; */
 
@media screen and (min-width: 30em) {
 
 .aspect-ratio-ns { height: 0; position: relative; }
 
 .aspect-ratio--16x9-ns { padding-bottom: 56.25%; }
 
 .aspect-ratio--9x16-ns { padding-bottom: 177.77%; }
 
 .aspect-ratio--4x3-ns { padding-bottom: 75%; }
 
 .aspect-ratio--3x4-ns { padding-bottom: 133.33%; }
 
 .aspect-ratio--6x4-ns { padding-bottom: 66.6%; }
 
 .aspect-ratio--4x6-ns { padding-bottom: 150%; }
 
 .aspect-ratio--8x5-ns { padding-bottom: 62.5%; }
 
 .aspect-ratio--5x8-ns { padding-bottom: 160%; }
 
 .aspect-ratio--7x5-ns { padding-bottom: 71.42%; }
 
 .aspect-ratio--5x7-ns { padding-bottom: 140%; }
 
 .aspect-ratio--1x1-ns { padding-bottom: 100%; }
 
 .aspect-ratio--object-ns { position: absolute; top: 0; right: 0; bottom: 0; left: 0; width: 100%; height: 100%; z-index: 100; }
 
 .cover-ns { background-size: cover !important; }
 
 .contain-ns { background-size: contain !important; }
 
 .bg-center-ns { background-repeat: no-repeat; background-position: center center; }
 
 .bg-top-ns { background-repeat: no-repeat; background-position: top center; }
 
 .bg-right-ns { background-repeat: no-repeat; background-position: center right; }
 
 .bg-bottom-ns { background-repeat: no-repeat; background-position: bottom center; }
 
 .bg-left-ns { background-repeat: no-repeat; background-position: center left; }
 
 .outline-ns { outline: 1px solid; }
 
 .outline-transparent-ns { outline: 1px solid transparent; }
 
 .outline-0-ns { outline: 0; }
 
 .ba-ns { border-style: solid; border-width: 1px; }
 
 .bt-ns { border-top-style: solid; border-top-width: 1px; }
 
 .br-ns { border-right-style: solid; border-right-width: 1px; }
 
 .bb-ns { border-bottom-style: solid; border-bottom-width: 1px; }
 
 .bl-ns { border-left-style: solid; border-left-width: 1px; }
 
 .bn-ns { border-style: none; border-width: 0; }
 
 .br0-ns { border-radius: 0; }
 
 .br1-ns { border-radius: .125rem; }
 
 .br2-ns { border-radius: .25rem; }
 
 .br3-ns { border-radius: .5rem; }
 
 .br4-ns { border-radius: 1rem; }
 
 .br-100-ns { border-radius: 100%; }
 
 .br-pill-ns { border-radius: 9999px; }
 
 .br--bottom-ns { border-top-left-radius: 0; border-top-right-radius: 0; }
 
 .br--top-ns { border-bottom-left-radius: 0; border-bottom-right-radius: 0; }
 
 .br--right-ns { border-top-left-radius: 0; border-bottom-left-radius: 0; }
 
 .br--left-ns { border-top-right-radius: 0; border-bottom-right-radius: 0; }
 
 .br-inherit-ns { border-radius: inherit; }
 
 .br-initial-ns { border-radius: initial; }
 
 .br-unset-ns { border-radius: unset; }
 
 .b--dotted-ns { border-style: dotted; }
 
 .b--dashed-ns { border-style: dashed; }
 
 .b--solid-ns { border-style: solid; }
 
 .b--none-ns { border-style: none; }
 
 .bw0-ns { border-width: 0; }
 
 .bw1-ns { border-width: .125rem; }
 
 .bw2-ns { border-width: .25rem; }
 
 .bw3-ns { border-width: .5rem; }
 
 .bw4-ns { border-width: 1rem; }
 
 .bw5-ns { border-width: 2rem; }
 
 .bt-0-ns { border-top-width: 0; }
 
 .br-0-ns { border-right-width: 0; }
 
 .bb-0-ns { border-bottom-width: 0; }
 
 .bl-0-ns { border-left-width: 0; }
 
 .shadow-1-ns { box-shadow: 0 0 4px 2px rgba( 0, 0, 0, .2 ); }
 
 .shadow-2-ns { box-shadow: 0 0 8px 2px rgba( 0, 0, 0, .2 ); }
 
 .shadow-3-ns { box-shadow: 2px 2px 4px 2px rgba( 0, 0, 0, .2 ); }
 
 .shadow-4-ns { box-shadow: 2px 2px 8px 0 rgba( 0, 0, 0, .2 ); }
 
 .shadow-5-ns { box-shadow: 4px 4px 8px 0 rgba( 0, 0, 0, .2 ); }
 
 .top-0-ns { top: 0; }
 
 .left-0-ns { left: 0; }
 
 .right-0-ns { right: 0; }
 
 .bottom-0-ns { bottom: 0; }
 
 .top-1-ns { top: 1rem; }
 
 .left-1-ns { left: 1rem; }
 
 .right-1-ns { right: 1rem; }
 
 .bottom-1-ns { bottom: 1rem; }
 
 .top-2-ns { top: 2rem; }
 
 .left-2-ns { left: 2rem; }
 
 .right-2-ns { right: 2rem; }
 
 .bottom-2-ns { bottom: 2rem; }
 
 .top--1-ns { top: -1rem; }
 
 .right--1-ns { right: -1rem; }
 
 .bottom--1-ns { bottom: -1rem; }
 
 .left--1-ns { left: -1rem; }
 
 .top--2-ns { top: -2rem; }
 
 .right--2-ns { right: -2rem; }
 
 .bottom--2-ns { bottom: -2rem; }
 
 .left--2-ns { left: -2rem; }
 
 .absolute--fill-ns { top: 0; right: 0; bottom: 0; left: 0; }
 
 .cl-ns { clear: left; }
 
 .cr-ns { clear: right; }
 
 .cb-ns { clear: both; }
 
 .cn-ns { clear: none; }
 
 .dn-ns { display: none; }
 
 .di-ns { display: inline; }
 
 .db-ns { display: block; }
 
 .dib-ns { display: inline-block; }
 
 .dit-ns { display: inline-table; }
 
 .dt-ns { display: table; }
 
 .dtc-ns { display: table-cell; }
 
 .dt-row-ns { display: table-row; }
 
 .dt-row-group-ns { display: table-row-group; }
 
 .dt-column-ns { display: table-column; }
 
 .dt-column-group-ns { display: table-column-group; }
 
 .dt--fixed-ns { table-layout: fixed; width: 100%; }
 
 .flex-ns { display: flex; }
 
 .inline-flex-ns { display: inline-flex; }
 
 .flex-auto-ns { flex: 1 1 auto; min-width: 0; /* 1 */ min-height: 0; /* 1 */ }
 
 .flex-none-ns { flex: none; }
 
 .flex-column-ns { flex-direction: column; }
 
 .flex-row-ns { flex-direction: row; }
 
 .flex-wrap-ns { flex-wrap: wrap; }
 
 .flex-nowrap-ns { flex-wrap: nowrap; }
 
 .flex-wrap-reverse-ns { flex-wrap: wrap-reverse; }
 
 .flex-column-reverse-ns { flex-direction: column-reverse; }
 
 .flex-row-reverse-ns { flex-direction: row-reverse; }
 
 .items-start-ns { align-items: flex-start; }
 
 .items-end-ns { align-items: flex-end; }
 
 .items-center-ns { align-items: center; }
 
 .items-baseline-ns { align-items: baseline; }
 
 .items-stretch-ns { align-items: stretch; }
 
 .self-start-ns { align-self: flex-start; }
 
 .self-end-ns { align-self: flex-end; }
 
 .self-center-ns { align-self: center; }
 
 .self-baseline-ns { align-self: baseline; }
 
 .self-stretch-ns { align-self: stretch; }
 
 .justify-start-ns { justify-content: flex-start; }
 
 .justify-end-ns { justify-content: flex-end; }
 
 .justify-center-ns { justify-content: center; }
 
 .justify-between-ns { justify-content: space-between; }
 
 .justify-around-ns { justify-content: space-around; }
 
 .content-start-ns { align-content: flex-start; }
 
 .content-end-ns { align-content: flex-end; }
 
 .content-center-ns { align-content: center; }
 
 .content-between-ns { align-content: space-between; }
 
 .content-around-ns { align-content: space-around; }
 
 .content-stretch-ns { align-content: stretch; }
 
 .order-0-ns { order: 0; }
 
 .order-1-ns { order: 1; }
 
 .order-2-ns { order: 2; }
 
 .order-3-ns { order: 3; }
 
 .order-4-ns { order: 4; }
 
 .order-5-ns { order: 5; }
 
 .order-6-ns { order: 6; }
 
 .order-7-ns { order: 7; }
 
 .order-8-ns { order: 8; }
 
 .order-last-ns { order: 99999; }
 
 .flex-grow-0-ns { flex-grow: 0; }
 
 .flex-grow-1-ns { flex-grow: 1; }
 
 .flex-shrink-0-ns { flex-shrink: 0; }
 
 .flex-shrink-1-ns { flex-shrink: 1; }
 
 .fl-ns { float: left; _display: inline; }
 
 .fr-ns { float: right; _display: inline; }
 
 .fn-ns { float: none; }
 
 .i-ns { font-style: italic; }
 
 .fs-normal-ns { font-style: normal; }
 
 .normal-ns { font-weight: normal; }
 
 .b-ns { font-weight: bold; }
 
 .fw1-ns { font-weight: 100; }
 
 .fw2-ns { font-weight: 200; }
 
 .fw3-ns { font-weight: 300; }
 
 .fw4-ns { font-weight: 400; }
 
 .fw5-ns { font-weight: 500; }
 
 .fw6-ns { font-weight: 600; }
 
 .fw7-ns { font-weight: 700; }
 
 .fw8-ns { font-weight: 800; }
 
 .fw9-ns { font-weight: 900; }
 
 .h1-ns { height: 1rem; }
 
 .h2-ns { height: 2rem; }
 
 .h3-ns { height: 4rem; }
 
 .h4-ns { height: 8rem; }
 
 .h5-ns { height: 16rem; }
 
 .h-25-ns { height: 25%; }
 
 .h-50-ns { height: 50%; }
 
 .h-75-ns { height: 75%; }
 
 .h-100-ns { height: 100%; }
 
 .min-h-100-ns { min-height: 100%; }
 
 .vh-25-ns { height: 25vh; }
 
 .vh-50-ns { height: 50vh; }
 
 .vh-75-ns { height: 75vh; }
 
 .vh-100-ns { height: 100vh; }
 
 .min-vh-100-ns { min-height: 100vh; }
 
 .h-auto-ns { height: auto; }
 
 .h-inherit-ns { height: inherit; }
 
 .tracked-ns { letter-spacing: .1em; }
 
 .tracked-tight-ns { letter