@charset "UTF-8";
/**
Support for color inversions where the .text-invert CSS class
is a parent.

Note that text color inversion always indicates "flip from
dark-on-white to white-on-dark" (i.e., never the other way
around).
*/
/**
Provides a clearfix that allows content to overflow outside edges.
*/
/**
Mixins to produce rem-based font sizes with pixel-based fallbacks.
Pixels are the canonical input unit; rems are calculated based on
the document's root font size specified in the html tag.
*/
/**
This mixin is an essential component of our mobile-first strategy.
It produces a media query and / or output depending on the
targeted breakpoint and the include_media_* variables defined at
compile time. Thus it's possible, through configuration alone, to
exclude specific media queries or breakpoints, making IE support
and performance-related file slicing a matter of configuration.
*/
@font-face {
  font-family: "Helvetica Neue Custom";
  src: url("/fonts/hn-045-n.eot");
  src: url("/fonts/hn-045-n.eot?#iefix") format("embedded-opentype"), url("/fonts/hn-045-n.woff") format("woff"), url("/fonts/hn-045-n.ttf") format("truetype");
  font-weight: 300; }

@font-face {
  font-family: "Helvetica Neue Custom";
  src: url("/fonts/hn-055-n.eot");
  src: local("Helvetica Neue"), url("/fonts/hn-055-n.eot?#iefix") format("embedded-opentype"), url("/fonts/hn-055-n.woff") format("woff"), url("/fonts/hn-055-n.ttf") format("truetype");
  font-weight: 400; }

@font-face {
  font-family: "Helvetica Neue Custom";
  src: url("/fonts/hn-075-n.eot");
  src: local("Helvetica Neue Bold"), local("Helvetica Neue"), url("/fonts/hn-075-n.eot?#iefix") format("embedded-opentype"), url("/fonts/hn-075-n.woff") format("woff"), url("/fonts/hn-075-n.ttf") format("truetype");
  font-weight: 700; }

/**
Bower imports
*/
/*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */
/**
 * 1. Set default font family to sans-serif.
 * 2. Prevent iOS and IE text size adjust after device 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; }

/* HTML5 display definitions
   ========================================================================== */
/**
 * Correct `block` display not defined for any HTML5 element in IE 8/9.
 * Correct `block` display not defined for `details` or `summary` in IE 10/11
 * and Firefox.
 * Correct `block` display not defined for `main` in IE 11.
 */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
menu,
nav,
section,
summary {
  display: block; }

/**
 * 1. Correct `inline-block` display not defined in IE 8/9.
 * 2. Normalize vertical alignment of `progress` in Chrome, Firefox, and Opera.
 */
audio,
canvas,
progress,
video {
  display: inline-block;
  /* 1 */
  vertical-align: baseline;
  /* 2 */ }

/**
 * 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/10.
 * Hide the `template` element in IE 8/9/10/11, Safari, and Firefox < 22.
 */
[hidden],
template {
  display: none; }

/* Links
   ========================================================================== */
/**
 * Remove the gray background color from active links in IE 10.
 */
a {
  background-color: transparent; }

/**
 * Improve readability of focused elements when they are also in an
 * active/hover state.
 */
a:active,
a:hover {
  outline: 0; }

/* Text-level semantics
   ========================================================================== */
/**
 * Address styling not present in IE 8/9/10/11, Safari, and Chrome.
 */
abbr[title] {
  border-bottom: 1px dotted; }

/**
 * Address style set to `bolder` in Firefox 4+, Safari, and Chrome.
 */
b,
strong {
  font-weight: bold; }

/**
 * Address styling not present in Safari and Chrome.
 */
dfn {
  font-style: italic; }

/**
 * Address variable `h1` font-size and margin within `section` and `article`
 * contexts in Firefox 4+, Safari, and Chrome.
 */
h1 {
  font-size: 2em;
  margin: 0.67em 0; }

/**
 * Address styling not present in IE 8/9.
 */
mark {
  background: #ff0;
  color: #000; }

/**
 * 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/10.
 */
img {
  border: 0; }

/**
 * Correct overflow not hidden in IE 9/10/11.
 */
svg:not(:root) {
  overflow: hidden; }

/* Grouping content
   ========================================================================== */
/**
 * Address margin not present in IE 8/9 and Safari.
 */
figure {
  margin: 1em 40px; }

/**
 * Address differences between Firefox and other browsers.
 */
hr {
  box-sizing: content-box;
  height: 0; }

/**
 * Contain overflow in all browsers.
 */
pre {
  overflow: auto; }

/**
 * Address odd `em`-unit font size rendering in all browsers.
 */
code,
kbd,
pre,
samp {
  font-family: monospace, monospace;
  font-size: 1em; }

/* Forms
   ========================================================================== */
/**
 * Known limitation: by default, Chrome and Safari on OS X allow very limited
 * styling of `select`, unless a `border` property is set.
 */
/**
 * 1. Correct color not being inherited.
 *    Known issue: affects color of disabled elements.
 * 2. Correct font properties not being inherited.
 * 3. Address margins set differently in Firefox 4+, Safari, and Chrome.
 */
button,
input,
optgroup,
select,
textarea {
  color: inherit;
  /* 1 */
  font: inherit;
  /* 2 */
  margin: 0;
  /* 3 */ }

/**
 * Address `overflow` set to `hidden` in IE 8/9/10/11.
 */
button {
  overflow: visible; }

/**
 * 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 Firefox, IE 8/9/10/11, and Opera.
 * Correct `select` style inheritance in Firefox.
 */
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"],
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; }

/**
 * Remove inner padding and border in Firefox 4+.
 */
button::-moz-focus-inner,
input::-moz-focus-inner {
  border: 0;
  padding: 0; }

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

/**
 * It's recommended that you don't attempt to style these elements.
 * Firefox's implementation doesn't respect box-sizing, padding, or width.
 *
 * 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 */ }

/**
 * Fix the cursor style for Chrome's increment/decrement buttons. For certain
 * `font-size` values of the `input`, it causes the cursor style of the
 * decrement button to change from `default` to `text`.
 */
input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
  height: auto; }

/**
 * 1. Address `appearance` set to `searchfield` in Safari and Chrome.
 * 2. Address `box-sizing` set to `border-box` in Safari and Chrome.
 */
input[type="search"] {
  -webkit-appearance: textfield;
  /* 1 */
  box-sizing: content-box;
  /* 2 */ }

/**
 * Remove inner padding and search cancel button in Safari and Chrome on OS X.
 * Safari (but not Chrome) clips the cancel button when the search input has
 * padding (and `textfield` appearance).
 */
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none; }

/**
 * 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/10/11.
 * 2. Remove padding so people aren't caught out if they zero out fieldsets.
 */
legend {
  border: 0;
  /* 1 */
  padding: 0;
  /* 2 */ }

/**
 * Remove default vertical scrollbar in IE 8/9/10/11.
 */
textarea {
  overflow: auto; }

/**
 * Don't inherit the `font-weight` (applied by a rule above).
 * NOTE: the default cannot safely be changed in Chrome and Safari on OS X.
 */
optgroup {
  font-weight: bold; }

/* Tables
   ========================================================================== */
/**
 * Remove most spacing between table cells.
 */
table {
  border-collapse: collapse;
  border-spacing: 0; }

td,
th {
  padding: 0; }

/*!
 *  Font Awesome 4.2.0 by @davegandy - http://fontawesome.io - @fontawesome
 *  License - http://fontawesome.io/license (Font: SIL OFL 1.1, CSS: MIT License)
 */
/* FONT PATH
 * -------------------------- */
@font-face {
  font-family: 'FontAwesome';
  src: url("../fonts/fontawesome-webfont.eot?v=4.2.0");
  src: url("../fonts/fontawesome-webfont.eot?#iefix&v=4.2.0") format("embedded-opentype"), url("../fonts/fontawesome-webfont.woff?v=4.2.0") format("woff"), url("../fonts/fontawesome-webfont.ttf?v=4.2.0") format("truetype"), url("../fonts/fontawesome-webfont.svg?v=4.2.0#fontawesomeregular") format("svg");
  font-weight: normal;
  font-style: normal; }

.fa {
  display: inline-block;
  font: normal normal normal 14px/1 FontAwesome;
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

/* makes the font 33% larger relative to the icon container */
.fa-lg {
  font-size: 1.33333333em;
  line-height: 0.75em;
  vertical-align: -15%; }

.fa-2x {
  font-size: 2em; }

.fa-3x {
  font-size: 3em; }

.fa-4x {
  font-size: 4em; }

.fa-5x {
  font-size: 5em; }

.fa-fw {
  width: 1.28571429em;
  text-align: center; }

.fa-ul {
  padding-left: 0;
  margin-left: 2.14285714em;
  list-style-type: none; }

.fa-ul > li {
  position: relative; }

.fa-li {
  position: absolute;
  left: -2.14285714em;
  width: 2.14285714em;
  top: 0.14285714em;
  text-align: center; }

.fa-li.fa-lg {
  left: -1.85714286em; }

.fa-border {
  padding: .2em .25em .15em;
  border: solid 0.08em #eeeeee;
  border-radius: .1em; }

.pull-right {
  float: right; }

.pull-left {
  float: left; }

.fa.pull-left {
  margin-right: .3em; }

.fa.pull-right {
  margin-left: .3em; }

.fa-spin {
  animation: fa-spin 2s infinite linear; }

@keyframes fa-spin {
  0% {
    transform: rotate(0deg); }
  100% {
    transform: rotate(359deg); } }

.fa-rotate-90 {
  filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=1);
  -ms-transform: rotate(90deg);
  transform: rotate(90deg); }

.fa-rotate-180 {
  filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=2);
  -ms-transform: rotate(180deg);
  transform: rotate(180deg); }

.fa-rotate-270 {
  filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=3);
  -ms-transform: rotate(270deg);
  transform: rotate(270deg); }

.fa-flip-horizontal {
  filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1);
  -ms-transform: scale(-1, 1);
  transform: scale(-1, 1); }

.fa-flip-vertical {
  filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1);
  -ms-transform: scale(1, -1);
  transform: scale(1, -1); }

:root .fa-rotate-90,
:root .fa-rotate-180,
:root .fa-rotate-270,
:root .fa-flip-horizontal,
:root .fa-flip-vertical {
  filter: none; }

.fa-stack {
  position: relative;
  display: inline-block;
  width: 2em;
  height: 2em;
  line-height: 2em;
  vertical-align: middle; }

.fa-stack-1x,
.fa-stack-2x {
  position: absolute;
  left: 0;
  width: 100%;
  text-align: center; }

.fa-stack-1x {
  line-height: inherit; }

.fa-stack-2x {
  font-size: 2em; }

.fa-inverse {
  color: #ffffff; }

/* Font Awesome uses the Unicode Private Use Area (PUA) to ensure screen
   readers do not read off random characters that represent icons */
.fa-glass:before {
  content: "\f000"; }

.fa-music:before {
  content: "\f001"; }

.fa-search:before {
  content: "\f002"; }

.fa-envelope-o:before {
  content: "\f003"; }

.fa-heart:before {
  content: "\f004"; }

.fa-star:before {
  content: "\f005"; }

.fa-star-o:before {
  content: "\f006"; }

.fa-user:before {
  content: "\f007"; }

.fa-film:before {
  content: "\f008"; }

.fa-th-large:before {
  content: "\f009"; }

.fa-th:before {
  content: "\f00a"; }

.fa-th-list:before {
  content: "\f00b"; }

.fa-check:before {
  content: "\f00c"; }

.fa-remove:before,
.fa-close:before,
.fa-times:before {
  content: "\f00d"; }

.fa-search-plus:before {
  content: "\f00e"; }

.fa-search-minus:before {
  content: "\f010"; }

.fa-power-off:before {
  content: "\f011"; }

.fa-signal:before {
  content: "\f012"; }

.fa-gear:before,
.fa-cog:before {
  content: "\f013"; }

.fa-trash-o:before {
  content: "\f014"; }

.fa-home:before {
  content: "\f015"; }

.fa-file-o:before {
  content: "\f016"; }

.fa-clock-o:before {
  content: "\f017"; }

.fa-road:before {
  content: "\f018"; }

.fa-download:before {
  content: "\f019"; }

.fa-arrow-circle-o-down:before {
  content: "\f01a"; }

.fa-arrow-circle-o-up:before {
  content: "\f01b"; }

.fa-inbox:before {
  content: "\f01c"; }

.fa-play-circle-o:before {
  content: "\f01d"; }

.fa-rotate-right:before,
.fa-repeat:before {
  content: "\f01e"; }

.fa-refresh:before {
  content: "\f021"; }

.fa-list-alt:before {
  content: "\f022"; }

.fa-lock:before {
  content: "\f023"; }

.fa-flag:before {
  content: "\f024"; }

.fa-headphones:before {
  content: "\f025"; }

.fa-volume-off:before {
  content: "\f026"; }

.fa-volume-down:before {
  content: "\f027"; }

.fa-volume-up:before {
  content: "\f028"; }

.fa-qrcode:before {
  content: "\f029"; }

.fa-barcode:before {
  content: "\f02a"; }

.fa-tag:before {
  content: "\f02b"; }

.fa-tags:before {
  content: "\f02c"; }

.fa-book:before {
  content: "\f02d"; }

.fa-bookmark:before {
  content: "\f02e"; }

.fa-print:before {
  content: "\f02f"; }

.fa-camera:before {
  content: "\f030"; }

.fa-font:before {
  content: "\f031"; }

.fa-bold:before {
  content: "\f032"; }

.fa-italic:before {
  content: "\f033"; }

.fa-text-height:before {
  content: "\f034"; }

.fa-text-width:before {
  content: "\f035"; }

.fa-align-left:before {
  content: "\f036"; }

.fa-align-center:before {
  content: "\f037"; }

.fa-align-right:before {
  content: "\f038"; }

.fa-align-justify:before {
  content: "\f039"; }

.fa-list:before {
  content: "\f03a"; }

.fa-dedent:before,
.fa-outdent:before {
  content: "\f03b"; }

.fa-indent:before {
  content: "\f03c"; }

.fa-video-camera:before {
  content: "\f03d"; }

.fa-photo:before,
.fa-image:before,
.fa-picture-o:before {
  content: "\f03e"; }

.fa-pencil:before {
  content: "\f040"; }

.fa-map-marker:before {
  content: "\f041"; }

.fa-adjust:before {
  content: "\f042"; }

.fa-tint:before {
  content: "\f043"; }

.fa-edit:before,
.fa-pencil-square-o:before {
  content: "\f044"; }

.fa-share-square-o:before {
  content: "\f045"; }

.fa-check-square-o:before {
  content: "\f046"; }

.fa-arrows:before {
  content: "\f047"; }

.fa-step-backward:before {
  content: "\f048"; }

.fa-fast-backward:before {
  content: "\f049"; }

.fa-backward:before {
  content: "\f04a"; }

.fa-play:before {
  content: "\f04b"; }

.fa-pause:before {
  content: "\f04c"; }

.fa-stop:before {
  content: "\f04d"; }

.fa-forward:before {
  content: "\f04e"; }

.fa-fast-forward:before {
  content: "\f050"; }

.fa-step-forward:before {
  content: "\f051"; }

.fa-eject:before {
  content: "\f052"; }

.fa-chevron-left:before {
  content: "\f053"; }

.fa-chevron-right:before {
  content: "\f054"; }

.fa-plus-circle:before {
  content: "\f055"; }

.fa-minus-circle:before {
  content: "\f056"; }

.fa-times-circle:before {
  content: "\f057"; }

.fa-check-circle:before {
  content: "\f058"; }

.fa-question-circle:before {
  content: "\f059"; }

.fa-info-circle:before {
  content: "\f05a"; }

.fa-crosshairs:before {
  content: "\f05b"; }

.fa-times-circle-o:before {
  content: "\f05c"; }

.fa-check-circle-o:before {
  content: "\f05d"; }

.fa-ban:before {
  content: "\f05e"; }

.fa-arrow-left:before {
  content: "\f060"; }

.fa-arrow-right:before {
  content: "\f061"; }

.fa-arrow-up:before {
  content: "\f062"; }

.fa-arrow-down:before {
  content: "\f063"; }

.fa-mail-forward:before,
.fa-share:before {
  content: "\f064"; }

.fa-expand:before {
  content: "\f065"; }

.fa-compress:before {
  content: "\f066"; }

.fa-plus:before {
  content: "\f067"; }

.fa-minus:before {
  content: "\f068"; }

.fa-asterisk:before {
  content: "\f069"; }

.fa-exclamation-circle:before {
  content: "\f06a"; }

.fa-gift:before {
  content: "\f06b"; }

.fa-leaf:before {
  content: "\f06c"; }

.fa-fire:before {
  content: "\f06d"; }

.fa-eye:before {
  content: "\f06e"; }

.fa-eye-slash:before {
  content: "\f070"; }

.fa-warning:before,
.fa-exclamation-triangle:before {
  content: "\f071"; }

.fa-plane:before {
  content: "\f072"; }

.fa-calendar:before {
  content: "\f073"; }

.fa-random:before {
  content: "\f074"; }

.fa-comment:before {
  content: "\f075"; }

.fa-magnet:before {
  content: "\f076"; }

.fa-chevron-up:before {
  content: "\f077"; }

.fa-chevron-down:before {
  content: "\f078"; }

.fa-retweet:before {
  content: "\f079"; }

.fa-shopping-cart:before {
  content: "\f07a"; }

.fa-folder:before {
  content: "\f07b"; }

.fa-folder-open:before {
  content: "\f07c"; }

.fa-arrows-v:before {
  content: "\f07d"; }

.fa-arrows-h:before {
  content: "\f07e"; }

.fa-bar-chart-o:before,
.fa-bar-chart:before {
  content: "\f080"; }

.fa-twitter-square:before {
  content: "\f081"; }

.fa-facebook-square:before {
  content: "\f082"; }

.fa-camera-retro:before {
  content: "\f083"; }

.fa-key:before {
  content: "\f084"; }

.fa-gears:before,
.fa-cogs:before {
  content: "\f085"; }

.fa-comments:before {
  content: "\f086"; }

.fa-thumbs-o-up:before {
  content: "\f087"; }

.fa-thumbs-o-down:before {
  content: "\f088"; }

.fa-star-half:before {
  content: "\f089"; }

.fa-heart-o:before {
  content: "\f08a"; }

.fa-sign-out:before {
  content: "\f08b"; }

.fa-linkedin-square:before {
  content: "\f08c"; }

.fa-thumb-tack:before {
  content: "\f08d"; }

.fa-external-link:before {
  content: "\f08e"; }

.fa-sign-in:before {
  content: "\f090"; }

.fa-trophy:before {
  content: "\f091"; }

.fa-github-square:before {
  content: "\f092"; }

.fa-upload:before {
  content: "\f093"; }

.fa-lemon-o:before {
  content: "\f094"; }

.fa-phone:before {
  content: "\f095"; }

.fa-square-o:before {
  content: "\f096"; }

.fa-bookmark-o:before {
  content: "\f097"; }

.fa-phone-square:before {
  content: "\f098"; }

.fa-twitter:before {
  content: "\f099"; }

.fa-facebook:before {
  content: "\f09a"; }

.fa-github:before {
  content: "\f09b"; }

.fa-unlock:before {
  content: "\f09c"; }

.fa-credit-card:before {
  content: "\f09d"; }

.fa-rss:before {
  content: "\f09e"; }

.fa-hdd-o:before {
  content: "\f0a0"; }

.fa-bullhorn:before {
  content: "\f0a1"; }

.fa-bell:before {
  content: "\f0f3"; }

.fa-certificate:before {
  content: "\f0a3"; }

.fa-hand-o-right:before {
  content: "\f0a4"; }

.fa-hand-o-left:before {
  content: "\f0a5"; }

.fa-hand-o-up:before {
  content: "\f0a6"; }

.fa-hand-o-down:before {
  content: "\f0a7"; }

.fa-arrow-circle-left:before {
  content: "\f0a8"; }

.fa-arrow-circle-right:before {
  content: "\f0a9"; }

.fa-arrow-circle-up:before {
  content: "\f0aa"; }

.fa-arrow-circle-down:before {
  content: "\f0ab"; }

.fa-globe:before {
  content: "\f0ac"; }

.fa-wrench:before {
  content: "\f0ad"; }

.fa-tasks:before {
  content: "\f0ae"; }

.fa-filter:before {
  content: "\f0b0"; }

.fa-briefcase:before {
  content: "\f0b1"; }

.fa-arrows-alt:before {
  content: "\f0b2"; }

.fa-group:before,
.fa-users:before {
  content: "\f0c0"; }

.fa-chain:before,
.fa-link:before {
  content: "\f0c1"; }

.fa-cloud:before {
  content: "\f0c2"; }

.fa-flask:before {
  content: "\f0c3"; }

.fa-cut:before,
.fa-scissors:before {
  content: "\f0c4"; }

.fa-copy:before,
.fa-files-o:before {
  content: "\f0c5"; }

.fa-paperclip:before {
  content: "\f0c6"; }

.fa-save:before,
.fa-floppy-o:before {
  content: "\f0c7"; }

.fa-square:before {
  content: "\f0c8"; }

.fa-navicon:before,
.fa-reorder:before,
.fa-bars:before {
  content: "\f0c9"; }

.fa-list-ul:before {
  content: "\f0ca"; }

.fa-list-ol:before {
  content: "\f0cb"; }

.fa-strikethrough:before {
  content: "\f0cc"; }

.fa-underline:before {
  content: "\f0cd"; }

.fa-table:before {
  content: "\f0ce"; }

.fa-magic:before {
  content: "\f0d0"; }

.fa-truck:before {
  content: "\f0d1"; }

.fa-pinterest:before {
  content: "\f0d2"; }

.fa-pinterest-square:before {
  content: "\f0d3"; }

.fa-google-plus-square:before {
  content: "\f0d4"; }

.fa-google-plus:before {
  content: "\f0d5"; }

.fa-money:before {
  content: "\f0d6"; }

.fa-caret-down:before {
  content: "\f0d7"; }

.fa-caret-up:before {
  content: "\f0d8"; }

.fa-caret-left:before {
  content: "\f0d9"; }

.fa-caret-right:before {
  content: "\f0da"; }

.fa-columns:before {
  content: "\f0db"; }

.fa-unsorted:before,
.fa-sort:before {
  content: "\f0dc"; }

.fa-sort-down:before,
.fa-sort-desc:before {
  content: "\f0dd"; }

.fa-sort-up:before,
.fa-sort-asc:before {
  content: "\f0de"; }

.fa-envelope:before {
  content: "\f0e0"; }

.fa-linkedin:before {
  content: "\f0e1"; }

.fa-rotate-left:before,
.fa-undo:before {
  content: "\f0e2"; }

.fa-legal:before,
.fa-gavel:before {
  content: "\f0e3"; }

.fa-dashboard:before,
.fa-tachometer:before {
  content: "\f0e4"; }

.fa-comment-o:before {
  content: "\f0e5"; }

.fa-comments-o:before {
  content: "\f0e6"; }

.fa-flash:before,
.fa-bolt:before {
  content: "\f0e7"; }

.fa-sitemap:before {
  content: "\f0e8"; }

.fa-umbrella:before {
  content: "\f0e9"; }

.fa-paste:before,
.fa-clipboard:before {
  content: "\f0ea"; }

.fa-lightbulb-o:before {
  content: "\f0eb"; }

.fa-exchange:before {
  content: "\f0ec"; }

.fa-cloud-download:before {
  content: "\f0ed"; }

.fa-cloud-upload:before {
  content: "\f0ee"; }

.fa-user-md:before {
  content: "\f0f0"; }

.fa-stethoscope:before {
  content: "\f0f1"; }

.fa-suitcase:before {
  content: "\f0f2"; }

.fa-bell-o:before {
  content: "\f0a2"; }

.fa-coffee:before {
  content: "\f0f4"; }

.fa-cutlery:before {
  content: "\f0f5"; }

.fa-file-text-o:before {
  content: "\f0f6"; }

.fa-building-o:before {
  content: "\f0f7"; }

.fa-hospital-o:before {
  content: "\f0f8"; }

.fa-ambulance:before {
  content: "\f0f9"; }

.fa-medkit:before {
  content: "\f0fa"; }

.fa-fighter-jet:before {
  content: "\f0fb"; }

.fa-beer:before {
  content: "\f0fc"; }

.fa-h-square:before {
  content: "\f0fd"; }

.fa-plus-square:before {
  content: "\f0fe"; }

.fa-angle-double-left:before {
  content: "\f100"; }

.fa-angle-double-right:before {
  content: "\f101"; }

.fa-angle-double-up:before {
  content: "\f102"; }

.fa-angle-double-down:before {
  content: "\f103"; }

.fa-angle-left:before {
  content: "\f104"; }

.fa-angle-right:before {
  content: "\f105"; }

.fa-angle-up:before {
  content: "\f106"; }

.fa-angle-down:before {
  content: "\f107"; }

.fa-desktop:before {
  content: "\f108"; }

.fa-laptop:before {
  content: "\f109"; }

.fa-tablet:before {
  content: "\f10a"; }

.fa-mobile-phone:before,
.fa-mobile:before {
  content: "\f10b"; }

.fa-circle-o:before {
  content: "\f10c"; }

.fa-quote-left:before {
  content: "\f10d"; }

.fa-quote-right:before {
  content: "\f10e"; }

.fa-spinner:before {
  content: "\f110"; }

.fa-circle:before {
  content: "\f111"; }

.fa-mail-reply:before,
.fa-reply:before {
  content: "\f112"; }

.fa-github-alt:before {
  content: "\f113"; }

.fa-folder-o:before {
  content: "\f114"; }

.fa-folder-open-o:before {
  content: "\f115"; }

.fa-smile-o:before {
  content: "\f118"; }

.fa-frown-o:before {
  content: "\f119"; }

.fa-meh-o:before {
  content: "\f11a"; }

.fa-gamepad:before {
  content: "\f11b"; }

.fa-keyboard-o:before {
  content: "\f11c"; }

.fa-flag-o:before {
  content: "\f11d"; }

.fa-flag-checkered:before {
  content: "\f11e"; }

.fa-terminal:before {
  content: "\f120"; }

.fa-code:before {
  content: "\f121"; }

.fa-mail-reply-all:before,
.fa-reply-all:before {
  content: "\f122"; }

.fa-star-half-empty:before,
.fa-star-half-full:before,
.fa-star-half-o:before {
  content: "\f123"; }

.fa-location-arrow:before {
  content: "\f124"; }

.fa-crop:before {
  content: "\f125"; }

.fa-code-fork:before {
  content: "\f126"; }

.fa-unlink:before,
.fa-chain-broken:before {
  content: "\f127"; }

.fa-question:before {
  content: "\f128"; }

.fa-info:before {
  content: "\f129"; }

.fa-exclamation:before {
  content: "\f12a"; }

.fa-superscript:before {
  content: "\f12b"; }

.fa-subscript:before {
  content: "\f12c"; }

.fa-eraser:before {
  content: "\f12d"; }

.fa-puzzle-piece:before {
  content: "\f12e"; }

.fa-microphone:before {
  content: "\f130"; }

.fa-microphone-slash:before {
  content: "\f131"; }

.fa-shield:before {
  content: "\f132"; }

.fa-calendar-o:before {
  content: "\f133"; }

.fa-fire-extinguisher:before {
  content: "\f134"; }

.fa-rocket:before {
  content: "\f135"; }

.fa-maxcdn:before {
  content: "\f136"; }

.fa-chevron-circle-left:before {
  content: "\f137"; }

.fa-chevron-circle-right:before {
  content: "\f138"; }

.fa-chevron-circle-up:before {
  content: "\f139"; }

.fa-chevron-circle-down:before {
  content: "\f13a"; }

.fa-html5:before {
  content: "\f13b"; }

.fa-css3:before {
  content: "\f13c"; }

.fa-anchor:before {
  content: "\f13d"; }

.fa-unlock-alt:before {
  content: "\f13e"; }

.fa-bullseye:before {
  content: "\f140"; }

.fa-ellipsis-h:before {
  content: "\f141"; }

.fa-ellipsis-v:before {
  content: "\f142"; }

.fa-rss-square:before {
  content: "\f143"; }

.fa-play-circle:before {
  content: "\f144"; }

.fa-ticket:before {
  content: "\f145"; }

.fa-minus-square:before {
  content: "\f146"; }

.fa-minus-square-o:before {
  content: "\f147"; }

.fa-level-up:before {
  content: "\f148"; }

.fa-level-down:before {
  content: "\f149"; }

.fa-check-square:before {
  content: "\f14a"; }

.fa-pencil-square:before {
  content: "\f14b"; }

.fa-external-link-square:before {
  content: "\f14c"; }

.fa-share-square:before {
  content: "\f14d"; }

.fa-compass:before {
  content: "\f14e"; }

.fa-toggle-down:before,
.fa-caret-square-o-down:before {
  content: "\f150"; }

.fa-toggle-up:before,
.fa-caret-square-o-up:before {
  content: "\f151"; }

.fa-toggle-right:before,
.fa-caret-square-o-right:before {
  content: "\f152"; }

.fa-euro:before,
.fa-eur:before {
  content: "\f153"; }

.fa-gbp:before {
  content: "\f154"; }

.fa-dollar:before,
.fa-usd:before {
  content: "\f155"; }

.fa-rupee:before,
.fa-inr:before {
  content: "\f156"; }

.fa-cny:before,
.fa-rmb:before,
.fa-yen:before,
.fa-jpy:before {
  content: "\f157"; }

.fa-ruble:before,
.fa-rouble:before,
.fa-rub:before {
  content: "\f158"; }

.fa-won:before,
.fa-krw:before {
  content: "\f159"; }

.fa-bitcoin:before,
.fa-btc:before {
  content: "\f15a"; }

.fa-file:before {
  content: "\f15b"; }

.fa-file-text:before {
  content: "\f15c"; }

.fa-sort-alpha-asc:before {
  content: "\f15d"; }

.fa-sort-alpha-desc:before {
  content: "\f15e"; }

.fa-sort-amount-asc:before {
  content: "\f160"; }

.fa-sort-amount-desc:before {
  content: "\f161"; }

.fa-sort-numeric-asc:before {
  content: "\f162"; }

.fa-sort-numeric-desc:before {
  content: "\f163"; }

.fa-thumbs-up:before {
  content: "\f164"; }

.fa-thumbs-down:before {
  content: "\f165"; }

.fa-youtube-square:before {
  content: "\f166"; }

.fa-youtube:before {
  content: "\f167"; }

.fa-xing:before {
  content: "\f168"; }

.fa-xing-square:before {
  content: "\f169"; }

.fa-youtube-play:before {
  content: "\f16a"; }

.fa-dropbox:before {
  content: "\f16b"; }

.fa-stack-overflow:before {
  content: "\f16c"; }

.fa-instagram:before {
  content: "\f16d"; }

.fa-flickr:before {
  content: "\f16e"; }

.fa-adn:before {
  content: "\f170"; }

.fa-bitbucket:before {
  content: "\f171"; }

.fa-bitbucket-square:before {
  content: "\f172"; }

.fa-tumblr:before {
  content: "\f173"; }

.fa-tumblr-square:before {
  content: "\f174"; }

.fa-long-arrow-down:before {
  content: "\f175"; }

.fa-long-arrow-up:before {
  content: "\f176"; }

.fa-long-arrow-left:before {
  content: "\f177"; }

.fa-long-arrow-right:before {
  content: "\f178"; }

.fa-apple:before {
  content: "\f179"; }

.fa-windows:before {
  content: "\f17a"; }

.fa-android:before {
  content: "\f17b"; }

.fa-linux:before {
  content: "\f17c"; }

.fa-dribbble:before {
  content: "\f17d"; }

.fa-skype:before {
  content: "\f17e"; }

.fa-foursquare:before {
  content: "\f180"; }

.fa-trello:before {
  content: "\f181"; }

.fa-female:before {
  content: "\f182"; }

.fa-male:before {
  content: "\f183"; }

.fa-gittip:before {
  content: "\f184"; }

.fa-sun-o:before {
  content: "\f185"; }

.fa-moon-o:before {
  content: "\f186"; }

.fa-archive:before {
  content: "\f187"; }

.fa-bug:before {
  content: "\f188"; }

.fa-vk:before {
  content: "\f189"; }

.fa-weibo:before {
  content: "\f18a"; }

.fa-renren:before {
  content: "\f18b"; }

.fa-pagelines:before {
  content: "\f18c"; }

.fa-stack-exchange:before {
  content: "\f18d"; }

.fa-arrow-circle-o-right:before {
  content: "\f18e"; }

.fa-arrow-circle-o-left:before {
  content: "\f190"; }

.fa-toggle-left:before,
.fa-caret-square-o-left:before {
  content: "\f191"; }

.fa-dot-circle-o:before {
  content: "\f192"; }

.fa-wheelchair:before {
  content: "\f193"; }

.fa-vimeo-square:before {
  content: "\f194"; }

.fa-turkish-lira:before,
.fa-try:before {
  content: "\f195"; }

.fa-plus-square-o:before {
  content: "\f196"; }

.fa-space-shuttle:before {
  content: "\f197"; }

.fa-slack:before {
  content: "\f198"; }

.fa-envelope-square:before {
  content: "\f199"; }

.fa-wordpress:before {
  content: "\f19a"; }

.fa-openid:before {
  content: "\f19b"; }

.fa-institution:before,
.fa-bank:before,
.fa-university:before {
  content: "\f19c"; }

.fa-mortar-board:before,
.fa-graduation-cap:before {
  content: "\f19d"; }

.fa-yahoo:before {
  content: "\f19e"; }

.fa-google:before {
  content: "\f1a0"; }

.fa-reddit:before {
  content: "\f1a1"; }

.fa-reddit-square:before {
  content: "\f1a2"; }

.fa-stumbleupon-circle:before {
  content: "\f1a3"; }

.fa-stumbleupon:before {
  content: "\f1a4"; }

.fa-delicious:before {
  content: "\f1a5"; }

.fa-digg:before {
  content: "\f1a6"; }

.fa-pied-piper:before {
  content: "\f1a7"; }

.fa-pied-piper-alt:before {
  content: "\f1a8"; }

.fa-drupal:before {
  content: "\f1a9"; }

.fa-joomla:before {
  content: "\f1aa"; }

.fa-language:before {
  content: "\f1ab"; }

.fa-fax:before {
  content: "\f1ac"; }

.fa-building:before {
  content: "\f1ad"; }

.fa-child:before {
  content: "\f1ae"; }

.fa-paw:before {
  content: "\f1b0"; }

.fa-spoon:before {
  content: "\f1b1"; }

.fa-cube:before {
  content: "\f1b2"; }

.fa-cubes:before {
  content: "\f1b3"; }

.fa-behance:before {
  content: "\f1b4"; }

.fa-behance-square:before {
  content: "\f1b5"; }

.fa-steam:before {
  content: "\f1b6"; }

.fa-steam-square:before {
  content: "\f1b7"; }

.fa-recycle:before {
  content: "\f1b8"; }

.fa-automobile:before,
.fa-car:before {
  content: "\f1b9"; }

.fa-cab:before,
.fa-taxi:before {
  content: "\f1ba"; }

.fa-tree:before {
  content: "\f1bb"; }

.fa-spotify:before {
  content: "\f1bc"; }

.fa-deviantart:before {
  content: "\f1bd"; }

.fa-soundcloud:before {
  content: "\f1be"; }

.fa-database:before {
  content: "\f1c0"; }

.fa-file-pdf-o:before {
  content: "\f1c1"; }

.fa-file-word-o:before {
  content: "\f1c2"; }

.fa-file-excel-o:before {
  content: "\f1c3"; }

.fa-file-powerpoint-o:before {
  content: "\f1c4"; }

.fa-file-photo-o:before,
.fa-file-picture-o:before,
.fa-file-image-o:before {
  content: "\f1c5"; }

.fa-file-zip-o:before,
.fa-file-archive-o:before {
  content: "\f1c6"; }

.fa-file-sound-o:before,
.fa-file-audio-o:before {
  content: "\f1c7"; }

.fa-file-movie-o:before,
.fa-file-video-o:before {
  content: "\f1c8"; }

.fa-file-code-o:before {
  content: "\f1c9"; }

.fa-vine:before {
  content: "\f1ca"; }

.fa-codepen:before {
  content: "\f1cb"; }

.fa-jsfiddle:before {
  content: "\f1cc"; }

.fa-life-bouy:before,
.fa-life-buoy:before,
.fa-life-saver:before,
.fa-support:before,
.fa-life-ring:before {
  content: "\f1cd"; }

.fa-circle-o-notch:before {
  content: "\f1ce"; }

.fa-ra:before,
.fa-rebel:before {
  content: "\f1d0"; }

.fa-ge:before,
.fa-empire:before {
  content: "\f1d1"; }

.fa-git-square:before {
  content: "\f1d2"; }

.fa-git:before {
  content: "\f1d3"; }

.fa-hacker-news:before {
  content: "\f1d4"; }

.fa-tencent-weibo:before {
  content: "\f1d5"; }

.fa-qq:before {
  content: "\f1d6"; }

.fa-wechat:before,
.fa-weixin:before {
  content: "\f1d7"; }

.fa-send:before,
.fa-paper-plane:before {
  content: "\f1d8"; }

.fa-send-o:before,
.fa-paper-plane-o:before {
  content: "\f1d9"; }

.fa-history:before {
  content: "\f1da"; }

.fa-circle-thin:before {
  content: "\f1db"; }

.fa-header:before {
  content: "\f1dc"; }

.fa-paragraph:before {
  content: "\f1dd"; }

.fa-sliders:before {
  content: "\f1de"; }

.fa-share-alt:before {
  content: "\f1e0"; }

.fa-share-alt-square:before {
  content: "\f1e1"; }

.fa-bomb:before {
  content: "\f1e2"; }

.fa-soccer-ball-o:before,
.fa-futbol-o:before {
  content: "\f1e3"; }

.fa-tty:before {
  content: "\f1e4"; }

.fa-binoculars:before {
  content: "\f1e5"; }

.fa-plug:before {
  content: "\f1e6"; }

.fa-slideshare:before {
  content: "\f1e7"; }

.fa-twitch:before {
  content: "\f1e8"; }

.fa-yelp:before {
  content: "\f1e9"; }

.fa-newspaper-o:before {
  content: "\f1ea"; }

.fa-wifi:before {
  content: "\f1eb"; }

.fa-calculator:before {
  content: "\f1ec"; }

.fa-paypal:before {
  content: "\f1ed"; }

.fa-google-wallet:before {
  content: "\f1ee"; }

.fa-cc-visa:before {
  content: "\f1f0"; }

.fa-cc-mastercard:before {
  content: "\f1f1"; }

.fa-cc-discover:before {
  content: "\f1f2"; }

.fa-cc-amex:before {
  content: "\f1f3"; }

.fa-cc-paypal:before {
  content: "\f1f4"; }

.fa-cc-stripe:before {
  content: "\f1f5"; }

.fa-bell-slash:before {
  content: "\f1f6"; }

.fa-bell-slash-o:before {
  content: "\f1f7"; }

.fa-trash:before {
  content: "\f1f8"; }

.fa-copyright:before {
  content: "\f1f9"; }

.fa-at:before {
  content: "\f1fa"; }

.fa-eyedropper:before {
  content: "\f1fb"; }

.fa-paint-brush:before {
  content: "\f1fc"; }

.fa-birthday-cake:before {
  content: "\f1fd"; }

.fa-area-chart:before {
  content: "\f1fe"; }

.fa-pie-chart:before {
  content: "\f200"; }

.fa-line-chart:before {
  content: "\f201"; }

.fa-lastfm:before {
  content: "\f202"; }

.fa-lastfm-square:before {
  content: "\f203"; }

.fa-toggle-off:before {
  content: "\f204"; }

.fa-toggle-on:before {
  content: "\f205"; }

.fa-bicycle:before {
  content: "\f206"; }

.fa-bus:before {
  content: "\f207"; }

.fa-ioxhost:before {
  content: "\f208"; }

.fa-angellist:before {
  content: "\f209"; }

.fa-cc:before {
  content: "\f20a"; }

.fa-shekel:before,
.fa-sheqel:before,
.fa-ils:before {
  content: "\f20b"; }

.fa-meanpath:before {
  content: "\f20c"; }

/*!
 * Pikaday
 * Copyright © 2014 David Bushell | BSD & MIT license | http://dbushell.com/
 */
.pika-single {
  z-index: 9999;
  display: block;
  position: relative;
  color: #333;
  background: #fff;
  border: 1px solid #ccc;
  border-bottom-color: #bbb;
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; }

/*
clear child float (pika-lendar), using the famous micro clearfix hack
http://nicolasgallagher.com/micro-clearfix-hack/
*/
.pika-single:before,
.pika-single:after {
  content: " ";
  display: table; }

.pika-single:after {
  clear: both; }

.pika-single {
  *zoom: 1; }

.pika-single.is-hidden {
  display: none; }

.pika-single.is-bound {
  position: absolute;
  box-shadow: 0 5px 15px -5px rgba(0, 0, 0, 0.5); }

.pika-lendar {
  float: left;
  width: 240px;
  margin: 8px; }

.pika-title {
  position: relative;
  text-align: center; }

.pika-label {
  display: inline-block;
  *display: inline;
  position: relative;
  z-index: 9999;
  overflow: hidden;
  margin: 0;
  padding: 5px 3px;
  font-size: 14px;
  line-height: 20px;
  font-weight: bold;
  background-color: #fff; }

.pika-title select {
  cursor: pointer;
  position: absolute;
  z-index: 9998;
  margin: 0;
  left: 0;
  top: 5px;
  filter: alpha(opacity=0);
  opacity: 0; }

.pika-prev,
.pika-next {
  display: block;
  cursor: pointer;
  position: relative;
  outline: none;
  border: 0;
  padding: 0;
  width: 20px;
  height: 30px;
  /* hide text using text-indent trick, using width value (it's enough) */
  text-indent: 20px;
  white-space: nowrap;
  overflow: hidden;
  background-color: transparent;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: 75% 75%;
  opacity: .5;
  *position: absolute;
  *top: 0; }

.pika-prev:hover,
.pika-next:hover {
  opacity: 1; }

.pika-prev,
.is-rtl .pika-next {
  float: left;
  background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAeCAYAAAAsEj5rAAAAUklEQVR42u3VMQoAIBADQf8Pgj+OD9hG2CtONJB2ymQkKe0HbwAP0xucDiQWARITIDEBEnMgMQ8S8+AqBIl6kKgHiXqQqAeJepBo/z38J/U0uAHlaBkBl9I4GwAAAABJRU5ErkJggg==");
  *left: 0; }

.pika-next,
.is-rtl .pika-prev {
  float: right;
  background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAeCAYAAAAsEj5rAAAAU0lEQVR42u3VOwoAMAgE0dwfAnNjU26bYkBCFGwfiL9VVWoO+BJ4Gf3gtsEKKoFBNTCoCAYVwaAiGNQGMUHMkjGbgjk2mIONuXo0nC8XnCf1JXgArVIZAQh5TKYAAAAASUVORK5CYII=");
  *right: 0; }

.pika-prev.is-disabled,
.pika-next.is-disabled {
  cursor: default;
  opacity: .2; }

.pika-select {
  display: inline-block;
  *display: inline; }

.pika-table {
  width: 100%;
  border-collapse: collapse;
  border-spacing: 0;
  border: 0; }

.pika-table th,
.pika-table td {
  width: 14.285714285714286%;
  padding: 0; }

.pika-table th {
  color: #999;
  font-size: 12px;
  line-height: 25px;
  font-weight: bold;
  text-align: center; }

.pika-button {
  cursor: pointer;
  display: block;
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  outline: none;
  border: 0;
  margin: 0;
  width: 100%;
  padding: 5px;
  color: #666;
  font-size: 12px;
  line-height: 15px;
  text-align: right;
  background: #f5f5f5; }

.pika-week {
  font-size: 11px;
  color: #999; }

.is-today .pika-button {
  color: #33aaff;
  font-weight: bold; }

.is-selected .pika-button {
  color: #fff;
  font-weight: bold;
  background: #33aaff;
  box-shadow: inset 0 1px 3px #178fe5;
  border-radius: 3px; }

.is-inrange .pika-button {
  background: #D5E9F7; }

.is-startrange .pika-button {
  color: #fff;
  background: #6CB31D;
  box-shadow: none;
  border-radius: 3px; }

.is-endrange .pika-button {
  color: #fff;
  background: #33aaff;
  box-shadow: none;
  border-radius: 3px; }

.is-disabled .pika-button {
  pointer-events: none;
  cursor: default;
  color: #999;
  opacity: .3; }

.pika-button:hover {
  color: #fff;
  background: #ff8000;
  box-shadow: none;
  border-radius: 3px; }

/* styling for abbr */
.pika-table abbr {
  border-bottom: none;
  cursor: help; }

* {
  box-sizing: border-box; }

html {
  font-size: 87.5%;
  line-height: 1.5; }

body {
  color: #333;
  font-family: "Helvetica Neue Custom", "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 400; }

body,
input,
select {
  font-smooth: always;
  -webkit-font-smoothing: antialiased; }

hr {
  background-color: #DADADA;
  border: 0;
  height: 1px;
  margin: 10px 0; }

a {
  color: #E62B1E; }

p {
  margin: 0 0 1.5em; }

svg {
  pointer-events: none;
  display: inline-block; }

.container {
  *zoom: 1;
  clear: both;
  margin: 0 auto;
  max-width: 1240px;
  padding: 0 20px;
  position: relative; }
  .container:after {
    content: "";
    display: table;
    clear: both; }

.container--collapsed {
  padding: 0; }

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

.ph__deco__sizer {
  display: none; }

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

.pl {
  list-style-position: inside;
  margin: 0 0 0 2px;
  padding-left: 1em;
  text-indent: -1em; }

.dl {
  margin: 0; }

.dl dd {
  margin-left: 0; }

.dl--n dd {
  margin-bottom: 10px; }

.image-link {
  display: inline-block; }

.tl {
  width: 100%; }
  .tl th {
    font-weight: normal;
    text-align: left;
    padding-right: 0.8ex; }
  .tl td {
    text-align: right; }

.vc {
  display: table;
  height: 100%;
  width: 100%; }

.vc__wrap {
  display: table-cell;
  vertical-align: middle; }

.show-xs,
.show-sm,
.show-lg,
.show-xl {
  display: none; }

.vpad1,
.vpad2,
.vpad3 {
  padding-top: 20px;
  padding-bottom: 20px; }

.vpad4 {
  padding-top: 10px;
  padding-bottom: 10px; }

.vpad5 {
  padding-top: 5px;
  padding-bottom: 5px; }

.hpad1,
.hpad2,
.hpad3 {
  padding-left: 20px;
  padding-right: 20px; }

.hpad4 {
  padding-left: 10px;
  padding-right: 10px; }

.hpad5 {
  padding-left: 5px;
  padding-right: 5px; }

.screen-reader-only {
  position: absolute;
  left: -9999px;
  top: -9999px; }

.text-center {
  text-align: center; }

.text-justify {
  text-align: justify; }

.text-left {
  text-align: left; }

.text-right {
  text-align: right; }

@media only screen and (min-width: 480px) {
  .hide-xs {
    display: none; }
  .show-xs {
    display: block; } }

@media only screen and (min-width: 768px) {
  .ph {
    *zoom: 1;
    clear: both; }
    .ph:after {
      content: "";
      display: table;
      clear: both; }
  .ph__body {
    float: left; }
  .ph__link {
    float: right; }
  .ph__link__sizer {
    display: inline; }
  .dl--n dt {
    margin-bottom: 10px; }
  .dl--n dt {
    clear: left;
    float: left;
    padding-right: 0.8ex;
    width: 180px; }
  .dl--n dd {
    margin-left: 180px; }
  .hide-sm {
    display: none; }
  .show-sm {
    display: block; } }

@media only screen and (min-width: 1024px) {
  .hide-lg {
    display: none; }
  .show-lg {
    display: block; } }

@media only screen and (min-width: 1200px) {
  .container {
    padding: 0 40px; }
  .hide-xl {
    display: none; }
  .show-xl {
    display: block; }
  .vpad1 {
    padding-top: 40px;
    padding-bottom: 40px; }
  .vpad2 {
    padding-top: 30px;
    padding-bottom: 30px; }
  .hpad1 {
    padding-left: 40px;
    padding-right: 40px; }
  .hpad2 {
    padding-left: 30px;
    padding-right: 30px; } }

/**
Typographic styles.
*/
.h1,
.h2,
.h3,
.h4,
.h5,
.h6,
.h7,
.h8,
.h9,
.h10,
.h11,
.h12,
.h13 {
  color: #222;
  font-size: 100%;
  font-weight: 700;
  line-height: 1.2;
  margin: 0; }
  .text-invert .h1, .text-invert
  .h2, .text-invert
  .h3, .text-invert
  .h4, .text-invert
  .h5, .text-invert
  .h6, .text-invert
  .h7, .text-invert
  .h8, .text-invert
  .h9, .text-invert
  .h10, .text-invert
  .h11, .text-invert
  .h12, .text-invert
  .h13 {
    color: #FFF; }
  .h1 a,
  .h2 a,
  .h3 a,
  .h4 a,
  .h5 a,
  .h6 a,
  .h7 a,
  .h8 a,
  .h9 a,
  .h10 a,
  .h11 a,
  .h12 a,
  .h13 a {
    color: #111;
    text-decoration: none; }
    .text-invert .h1 a, .text-invert
    .h2 a, .text-invert
    .h3 a, .text-invert
    .h4 a, .text-invert
    .h5 a, .text-invert
    .h6 a, .text-invert
    .h7 a, .text-invert
    .h8 a, .text-invert
    .h9 a, .text-invert
    .h10 a, .text-invert
    .h11 a, .text-invert
    .h12 a, .text-invert
    .h13 a {
      color: #FFF; }
    .h1 a:hover,
    .h2 a:hover,
    .h3 a:hover,
    .h4 a:hover,
    .h5 a:hover,
    .h6 a:hover,
    .h7 a:hover,
    .h8 a:hover,
    .h9 a:hover,
    .h10 a:hover,
    .h11 a:hover,
    .h12 a:hover,
    .h13 a:hover {
      color: #555; }
      .text-invert .h1 a:hover, .text-invert
      .h2 a:hover, .text-invert
      .h3 a:hover, .text-invert
      .h4 a:hover, .text-invert
      .h5 a:hover, .text-invert
      .h6 a:hover, .text-invert
      .h7 a:hover, .text-invert
      .h8 a:hover, .text-invert
      .h9 a:hover, .text-invert
      .h10 a:hover, .text-invert
      .h11 a:hover, .text-invert
      .h12 a:hover, .text-invert
      .h13 a:hover {
        color: #FFF; }
  a:hover .h1, a:hover
  .h2, a:hover
  .h3, a:hover
  .h4, a:hover
  .h5, a:hover
  .h6, a:hover
  .h7, a:hover
  .h8, a:hover
  .h9, a:hover
  .h10, a:hover
  .h11, a:hover
  .h12, a:hover
  .h13 {
    color: #555; }
    .text-invert a:hover .h1, .text-invert a:hover
    .h2, .text-invert a:hover
    .h3, .text-invert a:hover
    .h4, .text-invert a:hover
    .h5, .text-invert a:hover
    .h6, .text-invert a:hover
    .h7, .text-invert a:hover
    .h8, .text-invert a:hover
    .h9, .text-invert a:hover
    .h10, .text-invert a:hover
    .h11, .text-invert a:hover
    .h12, .text-invert a:hover
    .h13 {
      color: #FFF; }

.h1,
.h2 {
  font-size: 38px;
  font-size: 2.71429rem; }

.h1--alt,
.h1__alt {
  font-weight: 300; }

.h2 {
  font-weight: 700;
  letter-spacing: -1px; }

.h3 {
  font-size: 32px;
  font-size: 2.28571rem;
  font-weight: 300; }

.h4 {
  font-size: 28px;
  font-size: 2rem;
  font-weight: 300; }

.h5 {
  font-size: 24px;
  font-size: 1.71429rem;
  font-weight: 300; }

.h6 {
  font-size: 24px;
  font-size: 1.71429rem;
  font-weight: 700; }

.h7 {
  font-size: 18px;
  font-size: 1.28571rem;
  font-weight: 700; }

.h8 {
  font-size: 18px;
  font-size: 1.28571rem; }

.h8__alt {
  font-weight: 300; }

.h9 {
  font-size: 16px;
  font-size: 1.14286rem;
  font-weight: 700; }

.h10 {
  font-size: 16px;
  font-size: 1.14286rem; }

.h11 {
  font-size: 16px;
  font-size: 1.14286rem;
  font-weight: 400; }

.h12 {
  font-size: 16px;
  font-size: 1.14286rem;
  font-family: Georgia, "Times New Roman", Times, serif;
  font-style: italic;
  font-weight: 400; }

.h13 {
  font-weight: 400;
  text-transform: uppercase; }

.p1 {
  font-size: 22px;
  font-size: 1.57143rem;
  line-height: 1.59091;
  font-weight: 300; }

.p2 {
  font-size: 18px;
  font-size: 1.28571rem;
  line-height: 1.38889; }

.p3 {
  color: #666;
  font-size: 15px;
  font-size: 1.07143rem;
  line-height: 1.66667; }
  .text-invert .p3 {
    color: #FFF; }

.p4 {
  color: #666;
  font-size: 14px;
  font-size: 1rem;
  line-height: 1.78571; }
  .text-invert .p4 {
    color: #FFF; }

.l1,
.l2,
.l3 {
  color: #333;
  font-weight: 700; }
  .text-invert .l1, .text-invert
  .l2, .text-invert
  .l3 {
    color: #FFF; }
  .l1:hover,
  .l2:hover,
  .l3:hover {
    color: #666; }
    .text-invert .l1:hover, .text-invert
    .l2:hover, .text-invert
    .l3:hover {
      color: #FFF; }

.l1 {
  font-size: 16px;
  font-size: 1.14286rem; }

.l2 {
  font-size: 15px;
  font-size: 1.07143rem; }

.ld, .ld:hover, .ld:focus {
  color: #AAA; }
  .text-invert .ld, .text-invert .ld:hover, .text-invert .ld:focus {
    color: #FFF; }

.small {
  font-size: 12px;
  font-size: 0.85714rem;
  line-height: 1.5; }

.undec {
  text-decoration: none; }

.dec {
  text-decoration: underline; }

.text-invert {
  color: #FFF; }

.text-danger,
.text-danger a {
  color: #E62B1E; }
  .text-invert .text-danger, .text-invert
  .text-danger a {
    color: #FFF; }

.text-primary,
.text-primary a {
  color: #111; }
  .text-invert .text-primary, .text-invert
  .text-primary a {
    color: #FFF; }

.text-secondary,
.text-secondary a {
  color: #717171;
  font-weight: 400; }
  .text-invert .text-secondary, .text-invert
  .text-secondary a {
    color: #FFF; }

a.text-secondary:hover, a.text-secondary:focus,
.text-secondary a:hover,
.text-secondary a:focus {
  color: #333; }
  .text-invert a.text-secondary:hover, .text-invert a.text-secondary:focus, .text-invert
  .text-secondary a:hover, .text-invert
  .text-secondary a:focus {
    color: #FFF; }

.text-light,
.text-light a {
  color: #AAA; }
  .text-invert .text-light, .text-invert
  .text-light a {
    color: #FFF; }

a.text-light:hover, a.text-light:focus,
.text-light a:hover,
.text-light a:focus {
  color: #777; }
  .text-invert a.text-light:hover, .text-invert a.text-light:focus, .text-invert
  .text-light a:hover, .text-invert
  .text-light a:focus {
    color: #FFF; }

.text-twitter {
  color: #59ADEC;
  width: 14px; }

.text-facebook {
  color: #405f9e;
  width: 14px; }

.m1,
.m2,
.m3 {
  margin-bottom: 20px; }

.m4 {
  margin-bottom: 10px; }

.m5 {
  margin-bottom: 5px; }

@media only screen and (min-width: 1024px) {
  .h1,
  .h2 {
    font-size: 42px;
    font-size: 3rem;
    line-height: 1.04762; }
  .h3 {
    font-size: 32px;
    font-size: 2.28571rem; }
  .h9 {
    font-size: 15px;
    font-size: 1.07143rem; }
  .h10 {
    font-size: 15px;
    font-size: 1.07143rem; }
  .h11 {
    font-size: 15px;
    font-size: 1.07143rem; }
  .h12 {
    font-size: 15px;
    font-size: 1.07143rem; }
  .p1 {
    font-size: 22px;
    font-size: 1.57143rem;
    line-height: 1.59091; }
  .p3 {
    font-size: 14px;
    font-size: 1rem;
    line-height: 1.42857; }
  .p4 {
    font-size: 13px;
    font-size: 0.92857rem;
    line-height: 1.53846; }
  .l1 {
    font-size: 14px;
    font-size: 1rem; }
  .l2 {
    font-size: 13px;
    font-size: 0.92857rem; }
  .m1 {
    margin-bottom: 40px; }
  .m2 {
    margin-bottom: 30px; } }

/**
 * Grid system
 */
.row {
  *zoom: 1;
  clear: both;
  margin-left: -40px; }
  .row:after {
    content: "";
    display: table;
    clear: both; }

.col {
  padding-left: 40px;
  float: left;
  width: 100%; }

.row--skinny {
  margin-left: -20px; }
  .row--skinny .col {
    padding-left: 20px; }

.row--collapsed {
  margin-left: 0; }
  .row--collapsed .col {
    padding-left: 0; }

.row--oh-2up .col {
  width: 50%; }

.row--oh-2up .col:nth-child(1n) {
  clear: none; }

.row--oh-2up .col:nth-child(2n+1) {
  clear: left; }

.row--oh-3up .col {
  width: 33.33333%; }

.row--oh-3up .col:nth-child(1n) {
  clear: none; }

.row--oh-3up .col:nth-child(3n+1) {
  clear: left; }

@media only screen and (min-width: 480px) {
  .col--xs-1 {
    width: 8.33333%; }
  .col--xs-2 {
    width: 16.66667%; }
  .col--xs-3 {
    width: 25%; }
  .col--xs-4 {
    width: 33.33333%; }
  .col--xs-5 {
    width: 41.66667%; }
  .col--xs-6 {
    width: 50%; }
  .col--xs-7 {
    width: 58.33333%; }
  .col--xs-8 {
    width: 66.66667%; }
  .col--xs-9 {
    width: 75%; }
  .col--xs-10 {
    width: 83.33333%; }
  .col--xs-11 {
    width: 91.66667%; }
  .col--xs-12 {
    width: 100%; }
  .row--xs-1up .col {
    width: 100%; }
  .row--xs-1up .col:nth-child(1n) {
    clear: none; }
  .row--xs-1up .col:nth-child(1n+1) {
    clear: left; }
  .row--xs-2up .col {
    width: 50%; }
  .row--xs-2up .col:nth-child(1n) {
    clear: none; }
  .row--xs-2up .col:nth-child(2n+1) {
    clear: left; }
  .row--xs-3up .col {
    width: 33.33333%; }
  .row--xs-3up .col:nth-child(1n) {
    clear: none; }
  .row--xs-3up .col:nth-child(3n+1) {
    clear: left; } }

@media only screen and (min-width: 600px) {
  .col--ss-1 {
    width: 8.33333%; }
  .col--ss-2 {
    width: 16.66667%; }
  .col--ss-3 {
    width: 25%; }
  .col--ss-4 {
    width: 33.33333%; }
  .col--ss-5 {
    width: 41.66667%; }
  .col--ss-6 {
    width: 50%; }
  .col--ss-7 {
    width: 58.33333%; }
  .col--ss-8 {
    width: 66.66667%; }
  .col--ss-9 {
    width: 75%; }
  .col--ss-10 {
    width: 83.33333%; }
  .col--ss-11 {
    width: 91.66667%; }
  .col--ss-12 {
    width: 100%; }
  .col--ss-offset-0 {
    margin-left: 0%; }
  .col--ss-offset-1 {
    margin-left: 8.33333%; }
  .col--ss-offset-2 {
    margin-left: 16.66667%; }
  .col--ss-offset-3 {
    margin-left: 25%; }
  .col--ss-offset-4 {
    margin-left: 33.33333%; }
  .col--ss-offset-5 {
    margin-left: 41.66667%; }
  .col--ss-offset-6 {
    margin-left: 50%; }
  .col--ss-offset-7 {
    margin-left: 58.33333%; }
  .col--ss-offset-8 {
    margin-left: 66.66667%; }
  .col--ss-offset-9 {
    margin-left: 75%; }
  .col--ss-offset-10 {
    margin-left: 83.33333%; }
  .col--ss-offset-11 {
    margin-left: 91.66667%; }
  .col--ss-offset-12 {
    margin-left: 100%; }
  .row--ss-1up .col {
    width: 100%; }
  .row--ss-1up .col:nth-child(1n) {
    clear: none; }
  .row--ss-1up .col:nth-child(1n+1) {
    clear: left; }
  .row--ss-2up .col {
    width: 50%; }
  .row--ss-2up .col:nth-child(1n) {
    clear: none; }
  .row--ss-2up .col:nth-child(2n+1) {
    clear: left; }
  .row--ss-3up .col {
    width: 33.33333%; }
  .row--ss-3up .col:nth-child(1n) {
    clear: none; }
  .row--ss-3up .col:nth-child(3n+1) {
    clear: left; }
  .row--ss-4up .col {
    width: 25%; }
  .row--ss-4up .col:nth-child(1n) {
    clear: none; }
  .row--ss-4up .col:nth-child(4n+1) {
    clear: left; } }

@media only screen and (min-width: 768px) {
  .col--sm-1 {
    width: 8.33333%; }
  .col--sm-2 {
    width: 16.66667%; }
  .col--sm-3 {
    width: 25%; }
  .col--sm-4 {
    width: 33.33333%; }
  .col--sm-5 {
    width: 41.66667%; }
  .col--sm-6 {
    width: 50%; }
  .col--sm-7 {
    width: 58.33333%; }
  .col--sm-8 {
    width: 66.66667%; }
  .col--sm-9 {
    width: 75%; }
  .col--sm-10 {
    width: 83.33333%; }
  .col--sm-11 {
    width: 91.66667%; }
  .col--sm-12 {
    width: 100%; }
  .col--sm-offset-0 {
    margin-left: 0%; }
  .col--sm-offset-1 {
    margin-left: 8.33333%; }
  .col--sm-offset-2 {
    margin-left: 16.66667%; }
  .col--sm-offset-3 {
    margin-left: 25%; }
  .col--sm-offset-4 {
    margin-left: 33.33333%; }
  .col--sm-offset-5 {
    margin-left: 41.66667%; }
  .col--sm-offset-6 {
    margin-left: 50%; }
  .col--sm-offset-7 {
    margin-left: 58.33333%; }
  .col--sm-offset-8 {
    margin-left: 66.66667%; }
  .col--sm-offset-9 {
    margin-left: 75%; }
  .col--sm-offset-10 {
    margin-left: 83.33333%; }
  .col--sm-offset-11 {
    margin-left: 91.66667%; }
  .col--sm-offset-12 {
    margin-left: 100%; }
  .row--sm-1up .col {
    width: 100%; }
  .row--sm-1up .col:nth-child(1n) {
    clear: none; }
  .row--sm-1up .col:nth-child(1n+1) {
    clear: left; }
  .row--sm-2up .col {
    width: 50%; }
  .row--sm-2up .col:nth-child(1n) {
    clear: none; }
  .row--sm-2up .col:nth-child(2n+1) {
    clear: left; }
  .row--sm-3up .col {
    width: 33.33333%; }
  .row--sm-3up .col:nth-child(1n) {
    clear: none; }
  .row--sm-3up .col:nth-child(3n+1) {
    clear: left; }
  .row--sm-4up .col {
    width: 25%; }
  .row--sm-4up .col:nth-child(1n) {
    clear: none; }
  .row--sm-4up .col:nth-child(4n+1) {
    clear: left; } }

@media only screen and (min-width: 1024px) {
  .col--lg-1 {
    width: 8.33333%; }
  .col--lg-2 {
    width: 16.66667%; }
  .col--lg-3 {
    width: 25%; }
  .col--lg-4 {
    width: 33.33333%; }
  .col--lg-5 {
    width: 41.66667%; }
  .col--lg-6 {
    width: 50%; }
  .col--lg-7 {
    width: 58.33333%; }
  .col--lg-8 {
    width: 66.66667%; }
  .col--lg-9 {
    width: 75%; }
  .col--lg-10 {
    width: 83.33333%; }
  .col--lg-11 {
    width: 91.66667%; }
  .col--lg-12 {
    width: 100%; }
  .col--lg-offset-0 {
    margin-left: 0%; }
  .col--lg-offset-1 {
    margin-left: 8.33333%; }
  .col--lg-offset-2 {
    margin-left: 16.66667%; }
  .col--lg-offset-3 {
    margin-left: 25%; }
  .col--lg-offset-4 {
    margin-left: 33.33333%; }
  .col--lg-offset-5 {
    margin-left: 41.66667%; }
  .col--lg-offset-6 {
    margin-left: 50%; }
  .col--lg-offset-7 {
    margin-left: 58.33333%; }
  .col--lg-offset-8 {
    margin-left: 66.66667%; }
  .col--lg-offset-9 {
    margin-left: 75%; }
  .col--lg-offset-10 {
    margin-left: 83.33333%; }
  .col--lg-offset-11 {
    margin-left: 91.66667%; }
  .col--lg-offset-12 {
    margin-left: 100%; }
  .row--lg-1up .col {
    width: 100%; }
  .row--lg-1up .col:nth-child(1n) {
    clear: none; }
  .row--lg-1up .col:nth-child(1n+1) {
    clear: left; }
  .row--lg-2up .col {
    width: 50%; }
  .row--lg-2up .col:nth-child(1n) {
    clear: none; }
  .row--lg-2up .col:nth-child(2n+1) {
    clear: left; }
  .row--lg-3up .col {
    width: 33.33333%; }
  .row--lg-3up .col:nth-child(1n) {
    clear: none; }
  .row--lg-3up .col:nth-child(3n+1) {
    clear: left; }
  .row--lg-4up .col {
    width: 25%; }
  .row--lg-4up .col:nth-child(1n) {
    clear: none; }
  .row--lg-4up .col:nth-child(4n+1) {
    clear: left; }
  .row--lg-5up .col {
    width: 20%; }
  .row--lg-5up .col:nth-child(1n) {
    clear: none; }
  .row--lg-5up .col:nth-child(5n+1) {
    clear: left; }
  .row--lg-6up .col {
    width: 16.66667%; }
  .row--lg-6up .col:nth-child(1n) {
    clear: none; }
  .row--lg-6up .col:nth-child(6n+1) {
    clear: left; } }

/**
Basic borders for grid items.
*/
.col--bd {
  border-color: #AAA;
  border-style: dotted;
  border-width: 0; }

@media only screen and (min-width: 1024px) {
  .col--lg-br {
    border-right-width: 1px;
    padding-right: 5px; } }

/**
Styles for CSM-controlled content
>:(
*/
.cms-content ul {
  list-style-position: inside;
  margin: 0 0 0 2px;
  padding-left: 1em;
  text-indent: -1em; }

/**
Right-rail admin tools for archive player
*/
.Admin-player-tools {
  margin-top: 20px; }

.Admin-tool-group {
  margin-bottom: 20px; }

.Input.Admin-tool__input {
  width: 160px;
  height: 32px; }

/**
Styles for non-popup alert and flash messages.
*/
.Alert {
  padding: 10px; }

.Alert,
.Alert--info {
  background: #CFEAF5;
  color: #333; }

.Alert--success {
  background: #CFEAF5; }

.Alert--warning {
  background: #FCF1CC; }

.Alert--danger {
  background: #F2D2CF; }

/**
Styles for non-popup alert and flash messages.
*/
.Announcement {
  display: none;
  text-align: center; }

.Banner {
  background-color: #101010;
  color: #FFF;
  overflow: hidden;
  position: relative; }

.Banner__bg,
.Banner__bg__image {
  *zoom: 1;
  clear: both;
  margin: 0 auto;
  max-width: 1240px;
  overflow: hidden;
  position: absolute;
  top: -10px;
  left: -10px;
  right: -10px;
  bottom: -10px; }
  .Banner__bg:after,
  .Banner__bg__image:after {
    content: "";
    display: table;
    clear: both; }

.Banner__bg__image {
  background-position: center center;
  background-repeat: no-repeat;
  background-size: 120%;
  filter: blur(7px);
  opacity: 0.4; }

.Banner__bg:after {
  content: ' ';
  display: block;
  background: linear-gradient(to left, #101010, rgba(0, 0, 0, 0), #101010);
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0; }

/**
Boxen have backgrounds.
*/
.Box--info {
  background: #F3FAFC; }

/*doc
---
title: Buttons
name: Button
category: Forms
---

Button flavors:

```haml_example_table
%button.Button Default

%button.Button.Button--dark Dark

%button.Button.Button--highlight Highlight

%button.Button.Button--link Link
```

Button widths:

```haml_example_table
%button.Button.Button--narrow Narrow

%button.Button.Button--mid Mid

%button.Button.Button--wide Wide
```

Button height:

```haml_example_table
%button.Button.Button--short Short

%button.Button.Button--small Small
```
*/
/**
This mixin is an essential component of our mobile-first strategy.
It produces a media query and / or output depending on the
targeted breakpoint and the include_media_* variables defined at
compile time. Thus it's possible, through configuration alone, to
exclude specific media queries or breakpoints, making IE support
and performance-related file slicing a matter of configuration.
*/
.Button {
  border: 1px solid #CCC;
  border-radius: 3px;
  color: #444;
  cursor: pointer;
  display: inline-block;
  font-size: 14px;
  font-weight: bold;
  line-height: 24px;
  text-decoration: none;
  text-shadow: 0 1px 0 white;
  padding: 7px 30px; }
  .Button:hover, .Button:focus {
    background-color: #DDD;
    background: linear-gradient(#EEE, #DDD); }
  .Button, .Button:hover:disabled, .Button:focus:disabled {
    background-color: #EEE;
    background: linear-gradient(#F5F5F5, #E6E6E6); }

.Button[disabled],
.Button--disabled {
  opacity: 0.6; }

.Button--medium {
  border: 1px solid #BBB;
  color: #333; }
  .Button--medium:hover, .Button--medium:focus {
    background: linear-gradient(#E3E3E3, #D4D4D4);
    color: #111; }
  .Button--medium, .Button--medium:hover:disabled, .Button--medium:focus:disabled {
    background: linear-gradient(#ECECEC, #DBDBDB); }

.Button--dark,
.Button--highlight {
  border-color: transparent;
  color: #FFF;
  font-weight: bold;
  text-shadow: 0 1px 0 #111; }
  .Button--dark:hover, .Button--dark:focus,
  .Button--highlight:hover,
  .Button--highlight:focus {
    background: linear-gradient(#666, #2D2D2D);
    color: #FFF; }
  .Button--dark, .Button--dark:hover:disabled, .Button--dark:focus:disabled,
  .Button--highlight,
  .Button--highlight:hover:disabled,
  .Button--highlight:focus:disabled {
    background: linear-gradient(#555, #222); }
  .Button--dark[disabled], .Button--dark.Button--disabled,
  .Button--highlight[disabled],
  .Button--highlight.Button--disabled {
    opacity: 0.2; }

.Button--highlight {
  background-color: #E62B1E; }
  .Button--highlight:hover, .Button--highlight:focus {
    background: #B21714; }
  .Button--highlight, .Button--highlight:hover:disabled, .Button--highlight:focus:disabled {
    background: linear-gradient(#E62B1E, #CF271B); }

.Button--link {
  border: none;
  text-decoration: underline; }
  .Button--link:hover, .Button--link:focus {
    background: transparent; }
  .Button--link, .Button--link:hover:disabled, .Button--link:focus:disabled {
    background: transparent; }

.Button--short,
.Button--small {
  padding-top: 2px;
  padding-bottom: 3px; }

.Button--narrow,
.Button--small,
.Button--mid,
.Button--wide {
  padding-left: 10px;
  padding-right: 10px; }

.Button--mid,
.Button--wide {
  text-align: center; }

.Button--mid {
  min-width: 12em; }

.Button--wide {
  max-width: 50em;
  min-width: 100%; }

.Button--header {
  width: auto;
  padding-left: 20px;
  padding-right: 20px;
  text-align: center;
  margin-left: 25px; }

@media only screen and (min-width: 768px) {
  .Button--small {
    font-size: 13px; } }

/**
Applied to an <html> element that contains content overlays (e.g. modals).

When showing an overlay:

1. Add Carrier__backdrop--active class to Carrier__backdrop.
2. Record the current scroll position.
3. Add Carrier--active class to carrier.
4. Position browser to top.
5. Add Carrier__overlay--active class to the desired Carrier__overlay.

When hiding an overlay:

1. Remove Carrier__overlay--active from the Carrier__overlay.
2. Remove Carrier--active from Carrier.
3. Apply the recorded scroll position.
4. Remove Carrier__backdrop--active from Carrier__backdrop.

Example use:

    <html class="Carrier Carrier--active">
    <body>
      <div class="Carrier__base">
        (Original page contents)
      </div>

      <div class="Carrier__backdrop"></div>

      <div class="Carrier__overlay">
        <div class="Modal">(Modal that is hidden)</div>
      </div>

      <div class="Carrier__overlay Carrier__overlay--active">
        <div class="Modal">(Modal that is visible)</div>
      </div>
    </body>
    </html>
*/
.Carrier--active .Carrier__base {
  display: none; }

.Carrier__backdrop,
.Carrier__overlay {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1000;
  width: 100%;
  height: 0;
  opacity: 0;
  overflow: hidden; }

.Carrier__backdrop--active,
.Carrier__overlay--active {
  height: 100%;
  opacity: 1;
  overflow: visible; }

.Carrier__backdrop--active {
  background: white;
  background: linear-gradient(#DDD, white);
  position: fixed; }

.Carrier__overlay {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center; }

@media only screen and (min-width: 768px) {
  .Carrier--active {
    overflow: hidden; }
  .Carrier--active .Carrier__base {
    display: block; }
  .Carrier__backdrop--active {
    background: white;
    opacity: 0.94; }
  .Carrier__overlay--active {
    overflow: auto;
    position: fixed; }
  .Carrier__backdrop,
  .Carrier__overlay {
    transition: opacity 0.25s; } }

/**
Styles for checkbox/radio containers and their inputs.
*/
.Checkbox,
.Radio {
  display: block;
  padding-left: 20px; }

.Checkbox--inline,
.Radio--inline {
  display: inline-block;
  margin-right: 15px; }

.Checkbox__input,
.Radio__input {
  margin-left: -20px;
  margin-right: 5px; }

/**
Styles for the order confirmation sidebar.
*/
.ConfirmOrder {
  color: #BBB; }

.ConfirmOrder--available {
  color: #333; }

.ConfirmOrder__discount--disabled {
  color: #BBB; }

/**
Sometimes HTML comes from third parties.
They do not respect our CSS classes.
We hates them.
But we works around them.
*/
.Copy ol,
.Copy ul {
  list-style-position: inside;
  margin: 0 0 0 2px;
  padding-left: 1em;
  text-indent: -1em; }

/**
The pairing of an input and label.

.Field
  .Field__label Text label
  .Field__entry
    %input.Input.Input--error
    .Field__error Error message!
*/
.Field {
  display: block;
  margin-bottom: 20px; }

.Field__label {
  font-weight: bold;
  margin-bottom: 5px; }

.Field--required .Field__label:after {
  color: #E62B1E;
  content: '*'; }

.Field__entry,
.Field__note {
  padding-bottom: 10px; }
  .Field__entry:last-child,
  .Field__note:last-child {
    margin-bottom: -10px; }

.Field__error {
  color: #BF0C00;
  margin-top: 5px; }

/**
Styles for the common page footer.
*/
.Footer {
  border-top: 1px solid #E62B1E;
  padding: 20px 0; }

.Footer__cell {
  margin-top: 3px;
  margin-bottom: 3px; }

.Footer__logo {
  display: inline-block; }

.Footer__link {
  color: #666;
  font-weight: bold;
  text-decoration: none; }
  .Footer__link:hover {
    text-decoration: underline; }

@media only screen and (min-width: 1024px) {
  .Footer__logo {
    position: relative;
    top: 3px; } }

/**
Styles for the banner header that sits atop every page.
*/
.Header {
  border-bottom: 2px solid #CDCDCD;
  padding: 10px 0; }

.Header--inline {
  *zoom: 1;
  clear: both;
  border-bottom: 0; }
  .Header--inline:after {
    content: "";
    display: table;
    clear: both; }

.Header__logo {
  display: block;
  width: 110px;
  height: 24px; }
  .Header--small .Header__logo {
    height: 30px; }

.Header__logo__image {
  width: 100%;
  height: 100%; }

.Header__avatar,
.Header__ted {
  display: none; }

.Header__links {
  margin-top: 10px; }

.Header__link {
  color: #999;
  display: inline-block;
  text-decoration: none; }

.Header__link--logged-out {
  margin-left: 25px !important;
  display: inline-block;
  color: #333; }

.Header__link--you {
  color: #777;
  font-weight: bold; }
  .Header__link--you:after {
    content: '|';
    display: inline-block;
    font-weight: normal;
    margin-left: 5px;
    margin-right: 5px; }

.Header__link--pale {
  background-color: #000;
  background: rgba(50, 50, 50, 0.6);
  border-radius: 5px;
  color: #FFF;
  padding: 0 5px; }

@media only screen and (min-width: 320px) {
  .Header__logo {
    float: left; }
  .Header__links {
    font-size: 13px;
    font-size: 0.92857rem;
    float: right;
    line-height: 24px;
    margin-top: 0; }
  .Header__link {
    line-height: 1.4;
    margin-left: 5px;
    margin-right: -5px;
    padding: 0 5px; }
  .Header__link--you:after {
    margin-left: 5px;
    margin-right: -5px; }
  .Header__link--pale {
    font-weight: 700;
    padding: 1px 5px 2px;
    margin-right: 0; } }

@media only screen and (min-width: 480px) {
  .Header__link--pale {
    padding: 2px 10px 3px; } }

@media only screen and (min-width: 768px) {
  .Header {
    padding: 30px 0; }
  .Header--small {
    padding: 6px 0; }
    .Header--small .Header__logo {
      width: 120px;
      height: 46px; }
  .Header__avatar {
    display: inline-block;
    float: left;
    position: relative;
    top: 8px;
    width: 30px;
    height: 30px; }
  .Header__avatar__image {
    width: 100%;
    height: 100%; }
  .Header__logo {
    width: 210.83333px;
    height: 46px; }
  .Header__links {
    line-height: 46px; }
  .Header__link--you:after {
    margin-left: 10px;
    margin-right: 0; }
  .Header__ted {
    display: inline-block;
    float: right;
    margin-left: 15px;
    position: relative;
    top: 13px; }
  .Header__ted__logo {
    display: block;
    width: 49.65517px;
    height: 18px; } }

@media only screen and (min-width: 1024px) {
  .Header {
    padding: 40px 0; }
  .Header--small {
    padding: 6px 0; }
    .Header--small .Header__logo {
      width: 140px;
      height: 46px; } }

/**
A hero is any element that sits immediately below the header INSTEAD
of the 2px border that normally separates the header from the page.
*/
.Hero {
  margin-top: -2px; }

/**
Styles that are specific to the home page conference pancakes.

Considered a separate block rather than a modifier because homepage
conference pancake layers use some unique markup.
*/
.Home-conference {
  background: #222;
  border-bottom: 1px solid #444;
  color: #FFF; }
  .Home-conference .Conference__tab {
    background: #292929;
    border-top: 1px solid #444;
    padding: 30px 0; }
  .Home-conference .Conference__copy {
    color: #BBB; }
  .Home-conference .Conference__tab-link {
    color: #CCC;
    fill: #CCC; }
    .Home-conference .Conference__tab-link:hover {
      color: #EEE;
      fill: #EEE; }
  .Home-conference .Conference__tab-link--active,
  .Home-conference .Conference__tab-link--active:hover {
    color: #E62B1E;
    fill: #E62B1E; }

@media only screen and (min-width: 1024px) {
  .Home-conference__intro {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: row;
        flex-direction: row;
    -ms-flex-align: end;
        align-items: flex-end; }
  .Home-conference__intro__stack {
    border-right: 1px dotted #777;
    padding-right: 40px; } }

/**
The home page hero.
*/
.Home-hero {
  background: #120A08;
  margin-top: -2px; }

.Home-hero__container {
  *zoom: 1;
  clear: both;
  margin: 0 auto;
  max-width: 1240px;
  max-width: 1300px;
  height: 0;
  padding-bottom: 56.25%;
  position: relative; }
  .Home-hero__container:after {
    content: "";
    display: table;
    clear: both; }

.Home-hero__backdrop {
  height: 100%;
  overflow: hidden;
  pointer-events: none;
  width: 100%; }

.Home-hero__backdrop__image {
  background-position: center center;
  background-repeat: no-repeat;
  background-size: 120%;
  opacity: 0.8;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0; }

.Home-hero__backdrop__video {
  width: 177.77778%;
  height: 100%;
  position: absolute;
  top: -9999px;
  bottom: -9999px;
  left: -9999px;
  right: -9999px;
  margin: auto; }

.Home-hero__backdrop__text {
  color: #FFF;
  font-weight: 300;
  line-height: 1.1;
  text-align: center;
  text-shadow: 1px 1px 4px #000;
  font-size: 16px;
  position: relative;
  top: 0.8em; }
  @media only screen and (min-width: 320px) {
    .Home-hero__backdrop__text {
      font-size: 20px; } }
  @media only screen and (min-width: 600px) {
    .Home-hero__backdrop__text {
      font-size: 32px; } }
  @media only screen and (min-width: 1024px) {
    .Home-hero__backdrop__text {
      font-size: 42px; } }
  @media only screen and (min-width: 1024px) {
    .Home-hero__backdrop__text {
      top: 0.4ex; } }

.Home-hero__backdrop__text__highlight {
  font-weight: 700; }

.Home-hero__ted {
  height: 12px;
  width: 33.10345px; }
  @media only screen and (min-width: 320px) {
    .Home-hero__ted {
      height: 15px;
      width: 41.37931px; } }
  @media only screen and (min-width: 600px) {
    .Home-hero__ted {
      height: 24px;
      width: 66.2069px; } }
  @media only screen and (min-width: 1024px) {
    .Home-hero__ted {
      height: 31px;
      width: 85.51724px; } }

.Home-hero__backdrop,
.Home-hero__bottom,
.Home-hero__top {
  width: 100%;
  position: absolute;
  left: 0; }

.Home-hero__backdrop {
  top: 0;
  height: 100%; }

.Home-hero__bottom {
  bottom: 0; }

.Home-hero__top {
  top: 0; }

@media only screen and (min-width: 1024px) {
  .Home-hero__container {
    padding-bottom: 0;
    height: 500px; }
  .Home-hero__backdrop__video {
    width: 1300px;
    height: 731.25px; } }

@media only screen and (min-width: 1200px) {
  .bgsizecover .Home-hero {
    background-image: url(/images/homepage/hero-bg.jpg);
    background-size: cover; }
  .Home-hero__container {
    height: 580px; } }

/**
Base CSS for the following HTML elements:

<input type="text">
<textarea>
<select>
*/
.Input {
  background: #FFF;
  border: 1px solid #DDD;
  border-radius: 4px;
  color: #333;
  display: inline-block;
  font-family: "Helvetica Neue Custom", "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 16px;
  font-weight: 400;
  height: 40px;
  padding: 10px 10px;
  vertical-align: middle;
  width: 100%; }
  .Input:focus {
    border-color: rgba(168, 203, 236, 0.8);
    box-shadow: 0 1px 1px rgba(0, 0, 0, 0.075) inset, 0 0 8px rgba(168, 203, 236, 0.6);
    outline: 0 none;
    outline: -webkit-focus-ring-color auto 5px; }

textarea.Input {
  height: auto; }

.Input--dropdown {
  border-radius: 3px;
  text-align: left;
  text-decoration: none;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABwAAAAXBAMAAADq5DJkAAAABGdBTUEAALGPC/xhBQAAAAFzUkdCAK7OHOkAAAAYUExURQAAADIyMiYmJjIyMjAwMDMzMzExMczMzG/7/KwAAAAHdFJOUwCoC4YjllkQbp1YAAAARklEQVQY02MoYEAB9OYyGTswMDgbwbgsgiEMLIEicFlDUQdXQbgsg7JgSKCwApzLZCgIlESYrCwIlERwmQyNUOxVUaCjBwG62A+AiSlt5gAAAABJRU5ErkJggg==") right 15px center no-repeat, linear-gradient(#FFF, #F8F8F8);
  box-shadow: none;
  padding-right: 50px;
  padding-top: 8px;
  padding-bottom: 8px;
  line-height: 22px;
  text-indent: 1px;
  text-overflow: '';
  position: relative; }
  .Input--dropdown::-ms-expand {
    display: none; }

@-moz-document url-prefix() {
  select.Input--dropdown {
    background-image: none;
    border-radius: 0; } }

.Input--disabled,
.Input[disabled] {
  border-color: #DDD;
  color: #666;
  opacity: 0.6; }

.Input--error {
  border-color: #BF0C00; }

@media only screen and (min-width: 600px) {
  select.Input--dropdown {
    padding-top: 10px;
    padding-bottom: 10px;
    line-height: normal; } }

@media only screen and (min-width: 1024px) {
  .Input {
    font-size: 15px; }
  .Input--small {
    font-size: 13px; } }

/**
A wrapper class for overlaying inputs with icons and other addons:

.Input-overlay
  %input.Input.Input-overlay__input
  %span.Input-overlay__addon ☺
*/
.Input-overlay {
  position: relative; }

.Input-overlay__input {
  padding-right: 40px; }

.Input-overlay__addon {
  color: #333;
  overflow: hidden;
  text-align: center;
  text-decoration: none;
  position: absolute;
  right: 0;
  top: 0;
  padding-top: 10px;
  height: 40px;
  width: 40px; }
  .text-invert .Input-overlay__addon {
    color: #FFF; }

.Input-overlay:not(.Input-overlay--pointable) .Input-overlay__addon {
  pointer-events: none; }

.Input-overlay--font .Input-overlay__addon {
  padding-top: 20px; }
  .Input-overlay--font .Input-overlay__addon:before {
    position: relative;
    top: -0.5em; }

/**
Style lists
*/
.List {
  border-bottom: 1px solid #DADADA; }

.List__item {
  border-top: 1px solid #DADADA;
  display: block;
  padding: 10px 0; }

.List--wide .List__item {
  padding: 20px 0; }

/**
Media object class; smart/responsive version of Nicole Sullivan's
original media object, described in her blog post here:

http://www.stubbornella.org/content/2010/06/25/the-media-object-saves-hundreds-of-lines-of-code/

Basic example:

.Media
  .Media__image
    = thumb image
  .Media__message
    Text that sits next to image.

Example showing use for thumbnails and responsive behavior:

.Media.Media--lg-v
  .Media__image.Media__image--thumb
    = thumb image
  .Media__message
    Text that sits next to image on mobile screens,
    and below image on 1024px+ (lg) screens.

*/
@media only screen and (min-width: 320px) {
  .Media {
    display: block;
    overflow: hidden;
    _overflow: visible;
    zoom: 1; }
  .Media__image {
    float: left;
    margin-right: 20px;
    text-align: center; }
  .Media__image--alt {
    float: right;
    margin-left: 20px;
    margin-right: 0; }
  .Media__image--thumb {
    width: 100px; }
  .Media__message {
    word-wrap: break-word;
    overflow-wrap: break-word;
    overflow: hidden;
    _overflow: visible;
    zoom: 1; }
  .Media--oh-v .Media__image {
    float: none;
    margin-bottom: 10px;
    margin-right: 0;
    width: 100%; }
  .Media--oh-v .Media__image--alt {
    float: none;
    margin-bottom: 10px;
    margin-left: 0;
    margin-right: 0; } }

@media only screen and (min-width: 480px) {
  .Media__image--thumb {
    width: 30%; }
  .Media--xs-v .Media__image {
    float: none;
    margin-bottom: 10px;
    margin-right: 0;
    width: 100%; }
  .Media--xs-v .Media__image--alt {
    float: none;
    margin-bottom: 10px;
    margin-left: 0;
    margin-right: 0; }
  .Media--xs-h .Media__image {
    float: left;
    margin-bottom: 0;
    margin-right: 20px;
    width: auto; }
  .Media--xs-h .Media__image--alt {
    float: right;
    margin-bottom: 0;
    margin-left: 20px;
    margin-right: 0; }
  .Media--xs-h .Media__image--thumb {
    width: 30%; } }

@media only screen and (min-width: 768px) {
  .Media--sm-v .Media__image {
    float: none;
    margin-bottom: 10px;
    margin-right: 0;
    width: 100%; }
  .Media--sm-v .Media__image--alt {
    float: none;
    margin-bottom: 10px;
    margin-left: 0;
    margin-right: 0; }
  .Media--sm-h .Media__image {
    float: left;
    margin-bottom: 0;
    margin-right: 20px;
    width: auto; }
  .Media--sm-h .Media__image--alt {
    float: right;
    margin-bottom: 0;
    margin-left: 20px;
    margin-right: 0; }
  .Media--sm-h .Media__image--thumb {
    width: 30%; } }

@media only screen and (min-width: 1024px) {
  .Media--lg-v .Media__image {
    float: none;
    margin-bottom: 10px;
    margin-right: 0;
    width: 100%; }
  .Media--lg-v .Media__image--alt {
    float: none;
    margin-bottom: 10px;
    margin-left: 0;
    margin-right: 0; }
  .Media--lg-h .Media__image {
    float: left;
    margin-bottom: 0;
    margin-right: 20px;
    width: auto; }
  .Media--lg-h .Media__image--alt {
    float: right;
    margin-bottom: 0;
    margin-left: 20px;
    margin-right: 0; }
  .Media--lg-h .Media__image--thumb {
    width: 30%; } }

/**
Styles for modals themselves.
*/
.Modal {
  background: white;
  border-top: 2px solid #E62B1E;
  box-shadow: -1px 1px 6px 1px rgba(0, 0, 0, 0.25);
  margin: 20px auto;
  padding: 20px;
  width: 85%; }

@media only screen and (min-width: 480px) {
  .Modal {
    max-width: 480px; } }

/**
"Your Order" sidebar.
*/
.Order {
  background: #F3F6F7;
  padding: 0 15px; }

.Order__line {
  border-bottom: 1px solid #FFF;
  padding: 12px 0; }
  .Order__line:last-child {
    border-bottom: none; }

.Order__field {
  float: right; }

.Order__item {
  font-size: 12px;
  font-size: 0.85714rem;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 4px; }

.Order__item:last-child {
  margin-bottom: 0; }

.Order__item__price {
  float: right;
  -ms-flex-positive: 1;
      flex-grow: 1;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  padding-left: 5px;
  text-align: right; }

/**
Styles for pages that have sidebars.
*/
@media only screen and (min-width: 1024px) {
  .Page__main {
    border-left: 1px solid #E4E4E4; } }

/**
Pancakes are used as a metaphor for blocks of content on
pages that are stratified vertically. i.e., such pages
are a stack of pancakes.
*/
.Pancake {
  background: #F3F6F7; }

.Pancake--tinted {
  background: #EDEDED; }

.Pancake--shaded {
  background: #333; }

/**
The video player.
*/
.Player {
  color: #FFF;
  width: 100%;
  height: 0;
  padding-bottom: 56.25%;
  position: relative; }

.Player__video {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0; }

@media only screen and (min-width: 1024px) and (min-height: 700px) {
  .Player--sticky {
    z-index: 1;
    position: fixed;
    top: 0;
    left: 0;
    width: 256px;
    height: 144px;
    padding-bottom: 0; } }

/**
A pancake wrapper for the video player.
*/
.Player-pancake {
  background: #212121; }

.Player-pancake__container {
  max-width: 1024px; }

.Player-pancake__sizer {
  width: 100%;
  height: 0;
  padding-bottom: 56.25%; }

/**
Styles for non-modal popups: widgets that pop open at specific
coordinates in an overlay, often with a tail. (e.g., tooltips!)
*/
.Popup {
  transition: opacity 0.3s ease-out;
  background: #000;
  border-radius: 2px;
  display: none;
  padding: 10px;
  position: absolute;
  z-index: 100; }

.Popup--tailed:after {
  content: " ";
  display: block;
  height: 0;
  position: absolute;
  width: 0; }

.Popup--tailed-center:after {
  left: 50%;
  margin-left: -10px; }

.Popup--tailed-left:after,
.Popup--tailed-right:after {
  border-top: 10px solid transparent;
  border-bottom: 10px solid transparent; }

.Popup--tailed-left {
  box-shadow: rgba(0, 0, 0, 0.3) -3px 0 20px; }
  .Popup--tailed-left:after {
    border-right: 10px solid #000;
    left: -10px; }

.Popup--tailed-right {
  box-shadow: rgba(0, 0, 0, 0.3) 0 3px 0 20px; }
  .Popup--tailed-right:after {
    border-left: 10px solid #000;
    right: -10px; }

.Popup--tailed-middle:after {
  top: 50%;
  margin-top: -10px; }

.Popup--tailed-top:after,
.Popup--tailed-bottom:after {
  border-left: 10px solid transparent;
  border-right: 10px solid transparent; }

.Popup--tailed-top {
  box-shadow: rgba(0, 0, 0, 0.3) 0 -3px 20px; }
  .Popup--tailed-top:after {
    border-bottom: 10px solid #000;
    border-top: none;
    top: -10px; }

.Popup--tailed-bottom {
  box-shadow: rgba(0, 0, 0, 0.3) 0 3px 20px; }
  .Popup--tailed-bottom:after {
    border-top: 10px solid #000;
    bottom: -10px; }

.Popup--positioning {
  display: block;
  opacity: 0; }

.Popup--show {
  display: block;
  opacity: 0.8; }

.Popup--hide {
  opacity: 0; }

.Popup--invert {
  background: #FFF; }
  .Popup--invert.Popup--show {
    opacity: 1; }
  .Popup--invert.Popup--tailed-left:after {
    border-right-color: #FFF; }
  .Popup--invert.Popup--tailed-right:after {
    border-left-color: #FFF; }
  .Popup--invert.Popup--tailed-top:after {
    border-bottom-color: #FFF; }
  .Popup--invert.Popup--tailed-bottom:after {
    border-top-color: #FFF; }

/**
Styles for the purchase call to action links and buttons on the single webcast view
*/
.Purchase-options__input {
  margin-top: 10px;
  width: auto; }

.Purchase-options__button {
  margin-top: 10px;
  vertical-align: bottom; }

.Purchase-options .notice {
  padding-bottom: 8px; }

@media only screen and (min-width: 1024px) {
  .Purchase-options {
    text-align: center; }
  .Purchase-options__input,
  .Purchase-options__button {
    margin-top: 0; } }

/**
Styles for the purchase options selector widget used on the
purchase selection screen.
*/
.Purchase-options-selector__option:hover {
  background: linear-gradient(to right, #FFF, #F7FAFF); }

/**
Styles for session contents lists
*/
.Session-contents__content {
  position: relative; }

.Session-contents__content__indicator {
  display: block;
  text-align: center;
  position: absolute;
  top: 0;
  left: 0;
  width: 30px;
  height: 100%; }

.Session-contents__content__indicator__icon {
  display: none;
  position: relative;
  top: 50%;
  margin-top: -7px; }

.Session-contents__content--activating .Session-contents__content__indicator__icon--activating {
  display: block; }

.Session-contents--purchased .Session-contents__content * {
  color: #BBB; }

.Session-contents--purchased .Session-contents__time {
  font-size: 13px;
  font-size: 0.92857rem;
  display: inline;
  font-weight: normal; }

.Session-contents--purchased .Session-contents__content--available * {
  color: #333; }

.Session-contents--purchased .Session-contents__content--available .Session-contents__time {
  color: #777; }

.Session-contents--purchased .Session-contents__content--most-recent {
  background: #F3FAFC; }

.Session-contents--interactive .Session-contents__content {
  padding-left: 30px; }

.Session-contents--interactive .Session-contents__time {
  display: none; }

.Session-contents--interactive .Session-contents__content--active {
  background: #F3FAFC; }
  .Session-contents--interactive .Session-contents__content--active .Session-contents__content__indicator__icon--activating {
    display: none; }
  .Session-contents--interactive .Session-contents__content--active .Session-contents__content__indicator__icon--active {
    display: block; }

.Session-contents--interactive .Session-contents__content--available {
  cursor: pointer; }
  .Session-contents--interactive .Session-contents__content--available:hover {
    background: #F3FAFC; }

/**
Styles for the "social media share" shared partial.
*/
.Share {
  *zoom: 1;
  clear: both;
  margin-left: -7px;
  max-width: 300px; }
  .Share:after {
    content: "";
    display: table;
    clear: both; }

.Share__service {
  float: left;
  padding-left: 7px;
  width: 20%; }

.Share__link {
  display: block;
  overflow: hidden;
  width: 100%;
  height: 0;
  padding-bottom: 100%;
  position: relative; }

.Share__icon {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0; }

.Share__link {
  display: block; }
  .Share__link:hover {
    opacity: 0.7; }

.Share__icon--twitter {
  fill: #1CA9ED; }

.Share__icon--facebook {
  fill: #385594; }

.Share__icon--linkedin {
  fill: #106FB1; }

.Share__icon--email {
  fill: #666; }

/**
 * Styles for a sidebar submenu.
 */
.Submenu {
  line-height: 2;
  margin-bottom: 20px; }

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

.Submenu__item {
  border-bottom: 1px dotted #B2B2B2;
  padding: 10px 0; }
  .Submenu__item:first-child {
    padding-top: 0; }

.Submenu--condensed .Submenu__item {
  padding: 5px 0; }

.Submenu--reduced {
  margin-bottom: 0; }

.Submenu--reduced .Submenu__item {
  border-bottom: none;
  padding: 0; }

.Submenu__item .Submenu__item {
  border-bottom: 0;
  padding: 0;
  position: relative; }
  .Submenu__item .Submenu__item .Submenu__link {
    font-weight: 400; }

.Submenu__link {
  color: #333;
  font-weight: 700;
  text-decoration: none; }
  .Submenu__link:hover, .Submenu__link:focus {
    color: #666; }

.Submenu__link--disabled,
.Submenu__link--disabled:hover,
.Submenu__link--disabled:focus {
  color: #CCC; }

.Submenu__item--active > .Submenu__link {
  color: #E62B1E; }

@media only screen and (min-width: 1024px) {
  .Submenu {
    padding-right: 40px; }
  .Submenu__item:last-child {
    border-bottom: none; } }

/**
Ad-hoc styles for webcast session lister.
*/
.Lister {
  font-size: 14px;
  font-size: 1rem;
  line-height: 1.5; }

.Lister__link {
  font-weight: normal; }

.Lister__item--active > .Lister__link {
  font-weight: 700; }

/**
Styles for displaying the TED logo.
*/
.Ted {
  fill: #E42F25;
  vertical-align: baseline; }

.Ted--h1 {
  height: 27px;
  width: 74.48276px; }

.Ted--h3 {
  height: 24px;
  width: 66.2069px; }

.Ted--h5 {
  height: 19px;
  margin-right: 0.5px;
  width: 52.41379px; }

.Ted--h11 {
  height: 12px;
  margin-right: 0.5ex;
  width: 33.10345px; }

.Ted--h3,
.Ted--h5 {
  position: relative;
  top: 1px; }

.Ted--white {
  fill: white; }

.Ted--black {
  fill: #333; }

@media only screen and (min-width: 1024px) {
  .Ted--h1 {
    height: 30px;
    width: 82.75862px; }
  .Ted--h11 {
    height: 11px;
    width: 30.34483px; } }

/**
Styles for handling thumbnails.

%span.Thumb.Thumb--square.Thumb--crop-top
  %span.Thumb__sizer
    %span.Thumb__tugger
      %img.Thumb__image
      %span.Thumb__aligner
*/
.Thumb {
  display: block;
  overflow: hidden;
  position: relative;
  width: 100%; }

.Thumb__sizer {
  display: block;
  padding-bottom: 56.25%; }

.Thumb__tugger {
  text-align: center;
  white-space: nowrap;
  word-break: normal;
  position: absolute;
  _position: static;
  bottom: -100px;
  top: -100px;
  left: 0;
  right: 0; }

.Thumb__image {
  display: inline-block;
  vertical-align: middle;
  margin: 0;
  width: 100%; }

.Thumb__aligner {
  display: inline-block;
  vertical-align: middle;
  height: 100%; }

.Thumb--square .Thumb__sizer {
  padding-bottom: 100%; }

.Thumb--square .Thumb__tugger {
  bottom: 0;
  top: 0;
  left: -100px;
  right: -100px; }

.Thumb--square .Thumb__image {
  height: 100%;
  width: auto; }

.Thumb--tv .Thumb__sizer {
  padding-bottom: 75%; }

.Thumb--crop-top .Thumb__tugger {
  top: 0; }

.Thumb--crop-top .Thumb__aligner {
  display: none; }

/**
Styles for webcast pancakes.
*/
.Webcast {
  color: #FFF; }

.Webcast__copy {
  color: #BBB; }

.Webcast__main {
  background: #222;
  padding: 20px 0 40px; }

.Webcast--tabbed .Webcast__main {
  padding-bottom: 15px; }

.Webcast__thumb {
  display: block;
  margin-bottom: 10px; }

.Webcast__description,
.Webcast__tabs {
  clear: both;
  overflow: hidden;
  width: 100%; }

.Webcast__tabs {
  margin-top: 15px; }

@media only screen and (min-width: 480px) {
  .Webcast__thumb {
    -ms-flex-negative: 0;
        flex-shrink: 0;
    float: left;
    margin-right: 20px;
    width: 30%; }
  .Webcast__title {
    margin-top: -0.5ex; } }

@media only screen and (min-width: 768px) {
  .Webcast .Webcast-tab {
    margin-right: 40px; } }

@media only screen and (min-width: 1024px) {
  .Webcast__description {
    border-right: 1px dotted #777;
    margin-right: 40px;
    padding-right: 30px;
    clear: none;
    width: auto;
    -ms-flex-preferred-size: 360px;
        flex-basis: 360px; }
  .Webcast__thumb {
    margin-bottom: 0;
    margin-right: 40px;
    width: 25%; }
  .Webcast__row,
  .Webcast__vspread {
    display: -ms-flexbox;
    display: flex; }
  .Webcast__row__col {
    -ms-flex-positive: 1;
        flex-grow: 1; }
  .Webcast__row__sinker {
    -ms-flex-item-align: end;
        align-self: flex-end;
    width: 100%; }
  .Webcast__vspread {
    -ms-flex-direction: column;
        flex-direction: column; }
  .Webcast__vspread__large {
    -ms-flex-positive: 2;
        flex-grow: 2; } }

@media only screen and (min-width: 1200px) {
  .Webcast__description {
    -ms-flex-preferred-size: 420px;
        flex-basis: 420px; } }

/**
Purchase details for a particular webcast.
*/
@media only screen and (min-width: 480px) {
  .Webcast-details--caked .Webcast-details__copy {
    color: #BBB; }
  .Webcast-details__purchase {
    float: right; } }

@media only screen and (min-width: 768px) {
  .Webcast-details__purchase {
    float: none; } }

@media only screen and (min-width: 1024px) {
  .Webcast-details__purchase {
    float: right; } }

/**
A single tab for a webcast.
*/
.Webcast-tabs__tab {
  float: left;
  margin: 0 20px 0 0;
  text-align: center; }

.Webcast-tabs__icon,
.Webcast-tabs__link {
  display: block; }

.Webcast-tabs__icon {
  margin: 0 auto 5px;
  width: 40px;
  height: 40px; }

.Webcast-tabs__link {
  color: #333;
  fill: #333;
  text-decoration: none; }

.Webcast-tabs__link:hover {
  color: #666;
  fill: #666; }

.Webcast-tabs__tab--active .Webcast-tabs__link,
.Webcast-tabs__tab--active .Webcast-tabs__link:hover,
.Webcast-tabs--caked .Webcast-tabs__tab--active .Webcast-tabs__link,
.Webcast-tabs--caked .Webcast-tabs__tab--active .Webcast-tabs__link:hover {
  color: #E62B1E;
  fill: #E62B1E; }

.Webcast-tabs--caked .Webcast-tabs__tab {
  border-bottom: 5px solid transparent;
  padding-bottom: 10px;
  position: relative;
  top: 15px; }

.Webcast-tabs--caked .Webcast-tabs__tab--active {
  border-color: #E62B1E; }

.Webcast-tabs--caked .Webcast-tabs__link {
  color: #CCC;
  fill: #CCC; }

.Webcast-tabs--caked .Webcast-tabs__link:hover {
  color: #FFF;
  fill: #FFF; }

.Webcast-tabs__folder {
  display: none;
  padding: 30px 0; }

.Webcast-tabs__folder--active {
  display: block; }

.Webcast-tabs--caked .Webcast-tabs__folder {
  border-top: 1px solid #E62B1E;
  background: #292929; }

@media only screen and (min-width: 480px) {
  .Webcast-tabs__tab {
    margin-right: 40px; } }

@media only screen and (min-width: 768px) {
  .Webcast-tabs__tab {
    margin-right: 60px; }
  .Webcast-tabs--caked .Webcast-tabs__tab {
    margin-right: 50px; } }
