/*! normalize.css v1.1.2 | MIT License | git.io/normalize */
/* ==========================================================================
   HTML5 display definitions
   ========================================================================== */
/**
 * Correct `block` display not defined in IE 6/7/8/9 and Firefox 3.
 */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
nav,
section,
summary {
  display: block;
}

/**
 * Correct `inline-block` display not defined in IE 6/7/8/9 and Firefox 3.
 */
audio,
canvas,
video {
  display: inline-block;
  *display: inline;
  *zoom: 1;
}

/**
 * Prevent modern browsers from displaying `audio` without controls.
 * Remove excess height in iOS 5 devices.
 */
audio:not([controls]) {
  display: none;
  height: 0;
}

/**
 * Address styling not present in IE 7/8/9, Firefox 3, and Safari 4.
 * Known issue: no IE 6 support.
 */
[hidden] {
  display: none;
}

/* ==========================================================================
   Base
   ========================================================================== */
/**
 * 1. Correct text resizing oddly in IE 6/7 when body `font-size` is set using
 *    `em` units.
 * 2. Prevent iOS text size adjust after orientation change, without disabling
 *    user zoom.
 */
html {
  font-size: 100%;
  /* 1 */
  -ms-text-size-adjust: 100%;
  /* 2 */
  -webkit-text-size-adjust: 100%;
  /* 2 */
}

/**
 * Address `font-family` inconsistency between `textarea` and other form
 * elements.
 */
html,
button,
input,
select,
textarea {
  font-family: sans-serif;
}

/**
 * Address margins handled incorrectly in IE 6/7.
 */
body {
	margin: 0;
	font-size: medium;
}

/* ==========================================================================
   Links
   ========================================================================== */
/**
 * Address `outline` inconsistency between Chrome and other browsers.
 */
a:focus {
  outline: thin dotted;
}

/**
 * Improve readability when focused and also mouse hovered in all browsers.
 */
a:active,
a:hover {
  outline: 0;
}

/* ==========================================================================
   Typography
   ========================================================================== */
/**
 * Address font sizes and margins set differently in IE 6/7.
 * Address font sizes within `section` and `article` in Firefox 4+, Safari 5,
 * and Chrome.
 */
h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

h2 {
  font-size: 1.5em;
  margin: 0.83em 0;
}

h3 {
  font-size: 1.17em;
  margin: 1em 0;
}

h4 {
  font-size: 1em;
  margin: 1.33em 0;
}

h5 {
  font-size: 0.83em;
  margin: 1.67em 0;
}

h6 {
  font-size: 0.67em;
  margin: 2.33em 0;
}

/**
 * Address styling not present in IE 7/8/9, Safari 5, and Chrome.
 */
abbr[title] {
  border-bottom: 1px dotted;
}

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

blockquote {
  margin: 1em 40px;
}

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

/**
 * Address differences between Firefox and other browsers.
 * Known issue: no IE 6/7 normalization.
 */
hr {
  -moz-box-sizing: content-box;
  box-sizing: content-box;
  height: 0;
}

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

/**
 * Address margins set differently in IE 6/7.
 */
p,
pre {
  margin: 1em 0;
}

/**
 * Correct font family set oddly in IE 6, Safari 4/5, and Chrome.
 */
code,
kbd,
pre,
samp {
  font-family: monospace, serif;
  _font-family: 'courier new', monospace;
  font-size: 1em;
}

/**
 * Improve readability of pre-formatted text in all browsers.
 */
pre {
  white-space: pre;
  white-space: pre-wrap;
  word-wrap: break-word;
}

/**
 * Address CSS quotes not supported in IE 6/7.
 */
q {
  quotes: none;
}

/**
 * Address `quotes` property not supported in Safari 4.
 */
q:before,
q:after {
  content: '';
  content: none;
}

/**
 * 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;
}

/* ==========================================================================
   Lists
   ========================================================================== */
/**
 * Address margins set differently in IE 6/7.
 */
dl,
menu,
ol,
ul {
  margin: 1em 0;
}

dd {
  margin: 0 0 0 40px;
}

/**
 * Address paddings set differently in IE 6/7.
 */
menu,
ol,
ul {
  padding: 0 0 0 40px;
}

/**
 * Correct list images handled incorrectly in IE 7.
 */
nav ul,
nav ol {
  list-style: none;
  list-style-image: none;
}

/* ==========================================================================
   Embedded content
   ========================================================================== */
/**
 * 1. Remove border when inside `a` element in IE 6/7/8/9 and Firefox 3.
 * 2. Improve image quality when scaled in IE 7.
 */
img {
  border: 0;
  /* 1 */
  -ms-interpolation-mode: bicubic;
  /* 2 */
}

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

/* ==========================================================================
   Figures
   ========================================================================== */
/**
 * Address margin not present in IE 6/7/8/9, Safari 5, and Opera 11.
 */
figure {
  margin: 0;
}

/* ==========================================================================
   Forms
   ========================================================================== */
/**
 * Correct margin displayed oddly in IE 6/7.
 */
form {
  margin: 0;
}

/**
 * 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 6/7/8/9.
 * 2. Correct text not wrapping in Firefox 3.
 * 3. Correct alignment displayed oddly in IE 6/7.
 */
legend {
  border: 0;
  /* 1 */
  padding: 0;
  white-space: normal;
  /* 2 */
  *margin-left: -7px;
  /* 3 */
}

/**
 * 1. Correct font size not being inherited in all browsers.
 * 2. Address margins set differently in IE 6/7, Firefox 3+, Safari 5,
 *    and Chrome.
 * 3. Improve appearance and consistency in all browsers.
 */
button,
input,
select,
textarea {
  font-size: 100%;
  /* 1 */
  margin: 0;
  /* 2 */
  vertical-align: baseline;
  /* 3 */
  *vertical-align: middle;
  /* 3 */
}

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

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

/**
 * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
 *    and `video` controls.
 * 2. Correct inability to style clickable `input` types in iOS.
 * 3. Improve usability and consistency of cursor style between image-type
 *    `input` and others.
 * 4. Remove inner spacing in IE 7 without affecting normal text inputs.
 *    Known issue: inner spacing remains in IE 6.
 */
button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
  -webkit-appearance: button;
  /* 2 */
  cursor: pointer;
  /* 3 */
  *overflow: visible;
  /* 4 */
}

/**
 * Re-set default cursor for disabled elements.
 */
button[disabled],
html input[disabled] {
  cursor: default;
}

/**
 * 1. Address box sizing set to content-box in IE 8/9.
 * 2. Remove excess padding in IE 8/9.
 * 3. Remove excess padding in IE 7.
 *    Known issue: excess padding remains in IE 6.
 */
input[type="checkbox"],
input[type="radio"] {
  box-sizing: border-box;
  /* 1 */
  padding: 0;
  /* 2 */
  *height: 13px;
  /* 3 */
  *width: 13px;
  /* 3 */
}

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

/**
 * Remove inner padding and search cancel button in Safari 5 and Chrome
 * on OS X.
 */
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

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

/**
 * 1. Remove default vertical scrollbar in IE 6/7/8/9.
 * 2. Improve readability and alignment in all browsers.
 */
textarea {
  overflow: auto;
  /* 1 */
  vertical-align: top;
  /* 2 */
}

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

/* Pixel to EM */
/* REM converter */
/* List reset */
* {
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  vertical-align: middle;
  background-repeat: no-repeat;
}

/* Variables */
/* Breakpoint */
/* Fonts */
@font-face {
  font-family: 'Chang-Sans-Light';
  src: url("../fonts/CHANG-sans-LIGHT.eot");
  src: url("../fonts/CHANG-sans-LIGHT.eot?#iefix") format("embedded-opentype"), url("../fonts/CHANG-sans-LIGHT.woff") format("woff"), url("../fonts/CHANG-sans-LIGHT.ttf") format("truetype"), url("../fonts/CHANG-sans-LIGHT.svg#Chang-Sans-Light") format("svg");
  font-style: normal;
  font-weight: normal;
}
@font-face {
  font-family: 'CHANG-Sans';
  src: url("../fonts/CHANG-Sans-REG.eot");
  /* IE9 Compat Modes */
  src: url("../fonts/CHANG-Sans-REG.eot?#iefix") format("embedded-opentype"), url("../fonts/CHANG-Sans-REG.woff") format("woff"), url("../fonts/CHANG-Sans-REG.ttf") format("truetype"), url("../fonts/CHANG-Sans-REG.svg#ba218470754ebe639dcc8d038c8d6e68") format("svg");
  /* Legacy iOS */
  font-style: normal;
  font-weight: 400;
}
@font-face {
  font-family: 'Chang-Sans-Bold';
  src: url("../fonts/CHANG-sans-BOLD.eot");
  src: url("../fonts/CHANG-sans-BOLD.eot?#iefix") format("embedded-opentype"), url("../fonts/CHANG-sans-BOLD.woff") format("woff"), url("../fonts/CHANG-sans-BOLD.ttf") format("truetype"), url("../fonts/CHANG-sans-BOLD.svg#Chang-Sans-Bold") format("svg");
  font-style: normal;
  font-weight: normal;
}
@font-face {
  font-family: 'RSU-Regular';
  src: url("../fonts/RSU_Regular.eot");
  src: url("../fonts/RSU_Regular.eot?#iefix") format("embedded-opentype"), url("../fonts/RSU_Regular.woff") format("woff"), url("../fonts/RSU_Regular.ttf") format("truetype"), url("../fonts/RSU_Regular.svg#RSU-Regular") format("svg");
  font-style: normal;
  font-weight: normal;
}
/* =============================================================
   HTML5 Boilerplate styles - h5bp.com (generated via initializr.com)
   ============================================================= */
html,
button,
input,
select,
textarea {
  color: #262626;
}

body {
  font-family: "Chang-Sans", sans-serif;
  font-size: 13px;
  line-height: 1.5;
}
@media (min-width: 48.0625em) {
  body {
    font-size: 16px;
  }
}

h1 {
  font-size: 64px;
  font-size: 4rem;
}
h1.topic {
  margin-top: 0;
  color: white;
  text-align: center;
}

p {
  -webkit-hyphens: auto;
  -moz-hyphens: auto;
  hyphens: auto;
}

label {
  cursor: pointer;
}

::-moz-selection {
  color: white;
  background-color: #262626;
  text-shadow: none;
}

::selection {
  color: white;
  background-color: #262626;
  text-shadow: none;
}

hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #ccc;
  margin: 1em 0;
  padding: 0;
}

img, iframe, embed, audio {
  max-width: 100%;
  height: auto;
}

video {
  width: 100%;
  height: auto;
}

fieldset {
  border: 0;
  margin: 0;
  padding: 0;
}

textarea {
  resize: vertical;
}

.chromeframe {
  margin: 0.2em 0;
  background-color: #000;
  color: #FFF;
  padding: 0.2em 0;
}

/* =============================================================
   Author's custom styles
   ============================================================= */
/* ---------- Navigation ---------- */
.nav-collapse {
  font-family: "Chang-Sans-Bold", sans-serif;
}

.nav-collapse ul {
  display: block;
  margin: 0;
  padding: 0;
  width: 100%;
  list-style: none;
}

.nav-collapse li {
  display: block;
  width: 100%;
}

.js .nav-collapse {
  position: absolute;
  display: block;
  overflow: hidden;
  clip: rect(0 0 0 0);
  max-height: 0;
  zoom: 1;
}

.nav-collapse.opened {
  max-height: 9999px;
}

.nav-collapse.disable-pointer-events {
  pointer-events: none !important;
}

.nav-toggle {
  -webkit-tap-highlight-color: transparent;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  -o-user-select: none;
  user-select: none;
  margin-bottom: 1em;
}

@media screen and (min-width: 48.0625em) {
  .js .nav-collapse {
    position: relative;
  }

  .js .nav-collapse.closed {
    max-height: none;
  }

  .nav-toggle {
    display: none;
  }
}
.nav-collapse,
.nav-collapse ul {
  float: left;
  width: 100%;
  list-style: none;
}

.nav-collapse li {
  width: 100%;
}
@media (min-width: 48.0625em) {
  .nav-collapse li {
    float: left;
    width: 16.666666667%;
  }
}

.nav-collapse a {
  float: left;
  padding: 0.8em 1em;
  width: 100%;
  border-bottom: 1px solid white;
  background: #404040;
  color: white;
  text-align: center;
  text-decoration: none;
}
.nav-collapse a:hover, .nav-collapse a.selected {
  background: #262626;
  color: white;
}
@media (min-width: 48.0625em) {
  .nav-collapse a {
    float: left;
    margin: 0;
    padding: 0.75em 0.5em;
    border-bottom: 0;
    background: white;
    color: #262626;
  }
}

.nav-collapse ul ul a {
  padding-left: 2em;
  background: #ca3716;
}
@media (min-width: 48.0625em) {
  .nav-collapse ul ul a {
    display: none;
  }
}

.nav-toggle {
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  float: right;
  overflow: hidden;
  width: 70px;
  height: 55px;
  background: #262626 url("../images/nav/hamburger.gif") no-repeat 50% 33%;
  text-indent: -9999px;
}

@media screen and (-webkit-min-device-pixel-ratio: 1.3), screen and (min--moz-device-pixel-ratio: 1.3), screen and (-o-min-device-pixel-ratio: 2 / 1), screen and (min-device-pixel-ratio: 1.3), screen and (min-resolution: 192dpi), screen and (min-resolution: 2dppx) {
  .nav-toggle {
    background-image: url("../images/nav/hamburger-retina.gif");
    -webkit-background-size: 100px 100px;
    -moz-background-size: 100px 100px;
    -o-background-size: 100px 100px;
    background-size: 100px 100px;
  }
}
/* ---------- Layout ---------- */
.nav-container {
  margin: auto;
  max-width: 1440px;
  width: 100%;
}
@media (min-width: 48.0625em) {
  .nav-container {
    width: 65%;
  }
}

.top-section {
  clear: both;
  width: 100%;
  background: #262626;
}

.container {
  margin: auto;
  padding: 0 2.5%;
  max-width: 1440px;
  width: 95%;
}

.splash-content {
	margin: 3em auto 4em;
	width: 60%;
	color: white;
	font-family: "Chang-Sans", sans-serif;
}
@media (min-width: 48.0625em) {
  .splash-content {
	width: 70%;
  }
}
@media (min-width: 80em) {
  .splash-content {
    width: 50%;
  }
}

/* ---------- Logo ---------- */
.logo {
  margin-top: 30px;
  text-align: center;
}
@media (min-width: 48.0625em) {
  .logo {
    margin-top: 45px;
  }
}
.logo img {
  max-width: 900px;
}

.logo-short {
  display: inline;
  width: 100px;
  padding-top: 10px;
}
@media (min-width: 30em) {
  .logo-short {
    display: none;
  }
}

.logo-full {
  display: none;
}
@media (min-width: 30em) {
  .logo-full {
    display: inline;
  }
}

/* ---------- Topic ---------- */
.award-topic {
  font-size: 3.75em;
  color: white;
  text-align: center;
}
.award-topic span {
  display: block;
  font-size: 0.35em;
}
.award-topic span a {
  font-family: "Chang-Sans-Light", sans-serif;
  font-style: italic;
  color: white;
}
.award-topic span a:hover {
  color: #cccccc;
}

/* ---------- Top 8 ---------- */
.top-photo-8,
.top-photo-8 li {
  list-style: none;
  margin: 0;
  padding: 0;
  background: none;
}

.top-photo-8 li {
  margin-bottom: 1.5em;
  color: white;
  text-align: center;
  font-size: 1.2em;
  font-family: "Chang-Sans-Light", sans-serif;
}
@media (min-width: 30em) {
  .top-photo-8 li {
    float: left;
    width: 48.75%;
  }
  .top-photo-8 li:nth-child(2n) {
    margin-left: 2.5%;
  }
}
@media (min-width: 30em) {
  .top-photo-8 li .photo,
  .top-photo-8 li .photo img {
    min-height: 150px;
    max-height: 150px;
  }
}
@media (min-width: 37.5em) {
  .top-photo-8 li .photo,
  .top-photo-8 li .photo img {
    min-height: 200px;
    max-height: 200px;
  }
}
@media (min-width: 48.0625em) {
  .top-photo-8 li .photo,
  .top-photo-8 li .photo img {
    min-height: 250px;
    max-height: 250px;
  }
}
@media (min-width: 64em) {
  .top-photo-8 li .photo,
  .top-photo-8 li .photo img {
    min-height: 300px;
    max-height: 300px;
  }
}
@media (min-width: 80em) {
  .top-photo-8 li .photo,
  .top-photo-8 li .photo img {
    min-height: 360px;
    max-height: 360px;
  }
}
@media (min-width: 90em) {
  .top-photo-8 li .photo,
  .top-photo-8 li .photo img {
    min-height: 430px;
    max-height: 430px;
  }
}

.photo-9-15,
.photo-9-15 li {
  list-style: none;
  margin: 0;
  padding: 0;
  background: none;
}

.photo-9-15 {
  margin-top: 3em;
}
.photo-9-15 li {
  margin-bottom: 1.5em;
  text-align: center;
  font-size: 1.2em;
  font-family: "Chang-Sans-Light", sans-serif;
}
@media (min-width: 30em) {
  .photo-9-15 li {
    float: left;
    width: 48.75%%;
  }
  .photo-9-15 li:nth-child(2n) {
    margin-left: 2.5%;
  }
}
@media (min-width: 37.5em) {
  .photo-9-15 li {
    width: 31.666666667%;
    margin-left: 2.5%;
  }
  .photo-9-15 li:nth-child(3n+1) {
    margin-left: 0;
  }
}
@media (min-width: 30em) {
  .photo-9-15 li .photo,
  .photo-9-15 li .photo img {
    min-height: 150px;
    max-height: 150px;
  }
}
@media (min-width: 37.5em) {
  .photo-9-15 li .photo,
  .photo-9-15 li .photo img {
    min-height: 110px;
    max-height: 110px;
  }
}
@media (min-width: 48.0625em) {
  .photo-9-15 li .photo,
  .photo-9-15 li .photo img {
    min-height: 160px;
    max-height: 160px;
  }
}
@media (min-width: 64em) {
  .photo-9-15 li .photo,
  .photo-9-15 li .photo img {
    min-height: 210px;
    max-height: 210px;
  }
}
@media (min-width: 80em) {
  .photo-9-15 li .photo,
  .photo-9-15 li .photo img {
    min-height: 270px;
    max-height: 270px;
  }
}

.photo-title {
  color: #b3b3b3;
  font-style: italic;
}

/* ---------- Rules ---------- */
.line-section {
  clear: both;
  margin: auto;
  width: 250px;
  height: 1px;
  background-color: #262626;
}

#rules {
  clear: both;
}
#rules h1 {
  font-size: 2.75em;
}
#rules h2 {
  font-size: 1.8em;
}

/* ---------- Footer ---------- */
.sponsor {
  clear: both;
  padding: 5em 0;
}

.sponsor-list,
.sponsor-list li {
  list-style: none;
  margin: 0;
  padding: 0;
  background: none;
}

.sponsor-list {
  text-align: center;
}
.sponsor-list li {
  display: inline-block;
  margin: 0 0 2em 2em;
}

/* ---------- Lightbox ---------- */
/*	
 *	jQuery Touch Optimized Sliders "R"Us
 *	
 *	Copyright (c) 2013 Fred Heusschen
 *	www.frebsite.nl
 *
 *	Plugin website:
 *	tosrus.frebsite.nl
 *
 *	Dual licensed under the MIT and GPL licenses.
 *	http://en.wikipedia.org/wiki/MIT_License
 *	http://en.wikipedia.org/wiki/GNU_General_Public_License
 */
.tos-wrapper {
  display: none;
  width: 100%;
  height: 100%;
  padding: 0;
  margin: 0;
  overflow: hidden;
}

.tos-wrapper.tos-fixed {
  background-color: #0a0a0a;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 3000;
}

.tos-wrapper.tos-inline {
  position: relative;
}

.tos-wrapper * {
  -webkit-text-size-adjust: none;
  -moz-text-size-adjust: none;
  -ms-text-size-adjust: none;
  -o-text-size-adjust: none;
  text-size-adjust: none;
}

.tos-slider {
  white-space: nowrap;
  width: 100%;
  height: 100%;
  padding: 0;
  margin: 0;
  position: absolute;
  left: 0;
  top: 0;
}

.tos-slide {
  -webkit-overflow-scrolling: touch;
  line-height: 1px;
  text-align: center;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -ms-box-sizing: border-box;
  -o-box-sizing: border-box;
  box-sizing: border-box;
  display: inline-block;
  width: 100%;
  height: 100%;
  overflow: hidden;
  position: relative;
}

.tos-slide:before {
  content: "";
  display: inline-block;
  height: 50%;
  width: 1px;
  margin-right: -1px;
}

.tos-slide.tos-loading {
  background: url("../images/lightbox/tos-preloader-black.png") center center no-repeat transparent;
}

.tos-wrapper.tos-fixed .tos-slide.tos-loading {
  background-image: url("../images/lightbox/tos-preloader-white.png");
}

.tos-slide > * {
  vertical-align: middle;
  display: inline-block;
  max-height: 100%;
  max-width: 100%;
}

.tos-wrapper.tos-fill .tos-slide > * {
  max-height: none;
  max-width: none;
  min-height: 100%;
  min-width: 100%;
}

.tos-content {
  background-color: #fff;
  color: #333;
  white-space: normal;
  text-align: left;
  line-height: 1.4;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -ms-box-sizing: border-box;
  -o-box-sizing: border-box;
  box-sizing: border-box;
  display: inline-block;
  padding: 30px;
  overflow: auto;
}

.tos-caption {
  background-image: -webkit-linear-gradient(bottom, rgba(10, 10, 10, 0.5) 0%, transparent 100%);
  background-image: -moz-linear-gradient(bottom, rgba(10, 10, 10, 0.5) 0%, transparent 100%);
  background-image: linear-gradient(to top, rgba(10, 10, 10, 0.5) 0%, rgba(0, 0, 0, 0) 100%);
  color: #fff;
  font-size: 15px;
  line-height: 1.3;
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.8);
  text-align: center;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -ms-box-sizing: border-box;
  -o-box-sizing: border-box;
  box-sizing: border-box;
  width: 100%;
  padding: 50px 30px 20px 30px;
  bottom: 0;
  left: 0;
}

.tos-prev,
.tos-next,
.tos-close,
.tos-play,
.tos-zoom:after {
  background: center center no-repeat #000;
  border: 1px solid #666;
  border-radius: 5px;
  display: block;
  width: 40px;
}

.tos-caption,
.tos-prev,
.tos-next,
.tos-close,
.tos-play,
.tos-zoom:after {
  -webkit-transition: opacity 0.4s ease;
  -moz-transition: opacity 0.4s ease;
  -ms-transition: opacity 0.4s ease;
  -o-transition: opacity 0.4s ease;
  transition: opacity 0.4s ease;
  opacity: 0;
  position: absolute;
}

.tos-wrapper.tos-desktop:hover .tos-prev,
.tos-wrapper.tos-desktop:hover .tos-next,
.tos-wrapper.tos-desktop:hover .tos-close,
.tos-wrapper.tos-desktop:hover .tos-play {
  opacity: 0.7;
}

.tos-wrapper.tos-desktop:hover .tos-prev:hover,
.tos-wrapper.tos-desktop:hover .tos-next:hover,
.tos-wrapper.tos-desktop:hover .tos-close:hover,
.tos-wrapper.tos-desktop:hover .tos-play:hover {
  opacity: 0.9;
}

.tos-wrapper.tos-desktop:hover .tos-caption {
  opacity: 1;
}

.tos-wrapper.tos-desktop:hover .tos-disabled.tos-prev, .tos-wrapper.tos-desktop:hover .tos-disabled.tos-next {
  opacity: 0.2;
}

.tos-wrapper.tos-desktop:hover .tos-disabled.tos-prev:hover, .tos-wrapper.tos-desktop:hover .tos-disabled.tos-next:hover {
  opacity: 0.2;
}

.tos-wrapper.tos-touch .tos-play {
  opacity: 0.9;
}

.tos-wrapper.tos-touch.tos-hover .tos-prev,
.tos-wrapper.tos-touch.tos-hover .tos-next,
.tos-wrapper.tos-touch.tos-hover .tos-close {
  opacity: 0.9;
}

.tos-wrapper.tos-touch.tos-hover .tos-caption {
  opacity: 1;
}

.tos-wrapper.tos-touch.tos-hover .tos-disabled.tos-prev, .tos-wrapper.tos-touch.tos-hover .tos-disabled.tos-next {
  opacity: 0.2;
}

.tos-zoom:hover:after {
  opacity: 0.7;
}

.tos-prev,
.tos-next {
  height: 70px;
  margin-top: -35px;
  top: 50%;
}

.tos-prev.tos-disabled,
.tos-next.tos-disabled {
  cursor: default;
}

.tos-prev {
  background-image: url("../images/lightbox/tos-prev.png");
  left: 20px;
  -webkit-transform-origin: left center;
  -moz-transform-origin: left center;
  -ms-transform-origin: left center;
  -o-transform-origin: left center;
  transform-origin: left center;
}

.tos-next {
  background-image: url("../images/lightbox/tos-next.png");
  right: 20px;
  -webkit-transform-origin: right center;
  -moz-transform-origin: right center;
  -ms-transform-origin: right center;
  -o-transform-origin: right center;
  transform-origin: right center;
}

.tos-close {
  background-image: url("../images/lightbox/tos-close.png");
  height: 40px;
  top: 20px;
  right: 20px;
  -webkit-transform-origin: right top;
  -moz-transform-origin: right top;
  -ms-transform-origin: right top;
  -o-transform-origin: right top;
  transform-origin: right top;
}

.tos-play {
  background-color: rgba(0, 50, 100, 0.5);
  background-image: url("../images/lightbox/tos-play.png");
  background-position: 25px center;
  border-radius: 80px;
  border: 5px solid #eee;
  width: 80px;
  height: 80px;
  margin: -45px;
  position: absolute;
  top: 50%;
  left: 50%;
}

.tos-zoom {
  position: relative;
  display: inline-block;
}

.tos-zoom:after {
  content: "";
  background-image: url("../images/lightbox/tos-zoom.png");
  height: 40px;
  margin: -22px;
  top: 50%;
  left: 50%;
}

@media all and (-webkit-min-device-pixel-ratio: 1.5) {
  .tos-prev {
    background-image: url("../images/lightbox/tos-prev-retina.png");
    background-size: 16px 22px;
  }

  .tos-next {
    background-image: url("../images/lightbox/tos-next-retina.png");
    background-size: 16px 22px;
  }

  .tos-close {
    background-image: url("../images/lightbox/tos-close-retina.png");
    background-size: 20px 20px;
  }

  .tos-play {
    background-image: url("../images/lightbox/tos-play-retina.png");
    background-size: 44px 44px;
  }

  .tos-slide.tos-loading {
    background-image: url("../images/lightbox/tos-preloader-black-retina.png");
    background-size: 22px 22px;
  }

  .tos-wrapper.tos-fixed .tos-slide.tos-loading {
    background-image: url("../images/lightbox/tos-preloader-white-retina.png");
    background-size: 22px 22px;
  }
}
/* ==========================================================================
   Helper classes
   ========================================================================== */
.align-center {
  text-align: center;
}

.cream-color {
  color: #E2D0A2;
}

.button {
  display: inline-block;
  padding: 0.5em 2em;
  background: linear-gradient(#e2d0a2, #d0b368);
  color: #262626;
  text-decoration: none;
  font-family: "Chang-Sans-Bold", sans-serif;
  font-size: 1.2em;
  border-radius: 5px;
}
.button:hover {
  background: linear-gradient(#d0b368, #e2d0a2);
}
.button:active {
  background: linear-gradient(#e2d0a2, #d0b368);
}

.link-cream {
  color: #E2D0A2;
}
.link-cream:hover {
  text-decoration: none;
}
.link-cream:visited {
  color: #eee4c9;
}

.ir {
  background-color: transparent;
  border: 0;
  overflow: hidden;
  *text-indent: -9999px;
}

.ir:before {
  content: "";
  display: block;
  width: 0;
  height: 150%;
}

.hidden {
  display: none !important;
  visibility: hidden;
}

.visuallyhidden {
  border: 0;
  clip: rect(0 0 0 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
}

.visuallyhidden.focusable:active,
.visuallyhidden.focusable:focus {
  clip: auto;
  height: auto;
  margin: 0;
  overflow: visible;
  position: static;
  width: auto;
}

.invisible {
  visibility: hidden;
}

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

.clearfix:after {
  clear: both;
}

.clearfix {
  *zoom: 1;
}
