/* ==========================================================================

  Base Stylesheet - http://git.io/base
  Author: Matthew Hartman - http://www.matthewhartman.com.au/
  Version: 1.7.3 - Last Updated: 13th of March, 2014
  http://matthewhartman.github.io/base/docs/css.html

========================================================================== */
/* Resets */
* {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box; }

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

html, button, input, select, textarea {
  font-family: sans-serif; }

body, form, fieldset, legend, input, select, textarea, button {
  margin: 0; 
}
html {
  font-size: 100%; }

/* ==========================================================================
/* 1.0 - Document Setup (typography, links, paragraph, etc)
   ========================================================================== */
/* Body */
body {
  font-family: sans-serif;
  font-size: 16px;
  font-size: 1rem;
  line-height: 21px;
  line-height: 1.3125rem;
  color: #434343;
  background-color: #fff;
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%; }

/* Strong and Italic */
/* Links */
a {
  color: #27ae61; }

a:hover {
  text-decoration: none; }

a:focus {
  outline: thin dotted; }

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

/* Paragraph and Small */
p {
  margin: 0 0 1em 0; }

pre {
  margin: 1em 0; }

ul + p, ul + pre, ol + p, ol + pre {
  margin-top: 0; }

small {
  font-size: 80%; }

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

/* Audio */
audio:not([controls]) {
  height: 0; }

/* Small, 
Sub and Sup */
small {
  font-size: 80%; }

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

sup {
  top: -.5em; }

sub {
  bottom: -.25em; }

/* Definition */
/* Images */
img {
  border: 0;
  -ms-interpolation-mode: bicubic; }

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

figure {
  margin: 0; }

.image-left {
  margin-right: 20px; }

.image-right {
  margin-left: 20px; }

/* 1.1 Headings - h1, h2, h3, h4, h5, h6 & other (if any)
   ========================================================================== */
h1, h2, h3, h4, h5, h6 {
  line-height: normal;
  font-weight: normal;
  margin: 0 0 .33em 0; }

h1, .h1 {
  font-size: 40px;
  font-size: 2.5rem; }

h2, .h2 {
  font-size: 32px;
  font-size: 2rem; }

h3, .h3 {
  font-size: 26px;
  font-size: 1.625rem; }

h4, .h4 {
  font-size: 20px;
  font-size: 1.25rem; }

h5, .h5 {
  font-size: 18px;
  font-size: 1.125rem; }

h6, .h6 {
  font-size: 16px;
  font-size: 1rem; }

/* Reset Heading */
.no-style-heading {
  margin: 0;
  font-size: 100%; }

/* Horizontal Rule */
hr {
  border: 0;
  background: none;
  outline: 0;
  background-color: #ddd;
  margin: 2em 0;
  *margin: 1em 0;
  -moz-box-sizing: content-box;
  box-sizing: content-box;
  height: 1px; }

/* 1.2 Quotes and Code - block quotes, quotes, code, pre, etc
   ========================================================================== */
/* Block Quotes and Quotes */
blockquote {
  font-size: 22px;
  font-size: 1.375rem;
  line-height: 32px;
  line-height: 2rem;
  color: #434343;
  margin: 1em 0; }
  blockquote p {
    margin: 1em 0; }

cite {
  color: #434343;
  font-style: normal;
  font-size: 16px;
  font-size: 1rem;
  line-height: normal; }

q {
  quotes: none; }

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

/* Mark */
mark {
  background: #ff0;
  color: #111; }

/* Code */
code, kbd, pre, samp {
  word-wrap: break-word;
  font-family: 'courier new', monospace, serif;
  font-size: 13px;
  font-size: 0.8125rem;
  line-height: normal;
  font-weight: normal;
  background-color: #f1f1f1;
  padding: 10px; }

code {
  color: #111; }

/* 1.3 Lists
   ========================================================================== */
dl, menu, ol, ul {
  margin: 1em 0; }

dd,
ul ul,
ol ol,
ul ol,
ol ul {
  margin: 0; }

dd {
  margin-bottom: 1em; }

menu, ol, ul {
  padding: 0 0 0 22px; }

nav ul, nav ol {
  list-style: none;
  list-style-image: none; }

/* Remove Styling from List */
.unstyled-list, .inline-list {
  list-style: none;
  padding: 0;
  margin: 0; }
  .unstyled-list li, .inline-list li {
    margin-top: 0;
    margin-bottom: 0; }

/* 1.4 Tables
   ========================================================================== */
table {
  width: 100%;
  margin: 1em 0;
  table-layout: fixed;
  border-collapse: collapse;
  border-spacing: 0;
  border-right: 1px solid #f1f1f1;
  border-bottom: 1px solid #f1f1f1;
  word-wrap: break-word;
  -ms-word-wrap: break-word;
  *white-space: normal; }

table th,
table td {
  padding: 8px;
  text-align: left;
  vertical-align: top;
  border-top: 1px solid #eee;
  border-left: 1px solid #eee; }

table thead th,
table tfoot th {
  vertical-align: bottom;
  background-color: #f1f1f1;
  color: #333; }

table caption {
  padding: 8px;
  font-weight: normal;
  font-style: normal;
  border-bottom: 0; }

/* 1.5 Forms, Labels and Inputs
   ========================================================================== */
fieldset {
  border: 0;
  padding: 0; }

legend {
  border: 0;
  padding: 0;
  white-space: normal;
  *margin-left: -7px; }

label {
  margin: 0;
  cursor: pointer; }

button, input, select, textarea {
  font-size: 100%;
  vertical-align: baseline;
  *vertical-align: middle; }

input[type=text],
input[type=password],
input[type=email],
input[type=search],
input[type=tel],
textarea {
  padding: 5px;
  -webkit-appearance: none;
  -moz-appearance: none;
  line-height: normal;
  background-color: #fff;
  border: 1px solid #ccc;
  color: #111;
  border: 1px solid #ccc; }

input[type=checkbox],
input[type=radio] {
  cursor: pointer;
  box-sizing: border-box;
  line-height: normal;
  margin: 0;
  padding: 0;
  *height: 13px;
  *width: 13px; }

.checkbox {
  margin: .2em 0; }
  .checkbox input[type=checkbox],
  .checkbox input[type=radio] {
    margin-top: .05em; }
  .checkbox label {
    padding-left: 5px;
    overflow: hidden;
    display: table;
    *zoom: 1; }

button, input {
  line-height: normal; }

button, select {
  text-transform: none; }

/* Buttons */
button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
  cursor: pointer;
  -webkit-appearance: button;
  cursor: pointer;
  *overflow: visible; }

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

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

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

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

textarea {
  overflow: auto;
  vertical-align: top;
  resize: none; }

/* Custom Buttons */
.button {
  border: 0;
  padding: 1em 3em;
  background-color: #e74b3c;
  color: #fff;
  text-decoration: none;
  position: relative; }

.button:hover {
  background-color: #fc5547; }

.button:active {
  top: 1px; }

.grey-button {
  background-color: #eee;
  color: #434343; }

.grey-button:hover {
  background-color: #f1f1f1; }

.button[disabled],
.button.disabled {
  color: #999;
  background-color: #f1f1f1; }

.unstyled-button {
  font-size: 16px;
  font-size: 1rem;
  color: #27ae61;
  text-decoration: underline;
  border: 0;
  background: transparent;
  height: auto;
  padding: 0;
  cursor: pointer;
  outline: 0; }
  .unstyled-button:hover {
    text-decoration: none; }

.unstyled-button[disabled],
.unstyled-button.disabled {
  text-decoration: none;
  color: #999;
  background-color: #ccc; }

/* ==========================================================================
/* 2.0 - Grid Layout (Responsive)
   ========================================================================== */
/* Sections & Content Blocks */
.section {
  position: relative; }

.container {
  max-width: 1140px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 10px;
  padding-right: 10px; }

.container-full {
  max-width: 1140px;
  padding-left: 0;
  padding-right: 0;
  margin-left: auto;
  margin-right: auto; }

  .container .container-full {
    padding: 0;
  }

/* Fluid Grid */
.col {
  float: left;
  padding-left: 10px;
  padding-right: 10px; }

[class*="pull-"], [class*="push-"] {
  position: relative; }

.no-gutter {
  padding-left: 0;
  padding-right: 0; }

/* Columns */
.col-1 {
  width: 8.33333%; }

.col-2 {
  width: 16.66667%; }

.col-3, .col-1-4 {
  width: 25%; }

.col-4, .col-1-3 {
  width: 33.33333%; }

.col-5 {
  width: 41.66665%; }

.col-6, .col-1-2 {
  width: 50%; }

.col-7 {
  width: 58.33333%; }

.col-8 {
  width: 66.66666%; }

.col-9 {
  width: 75%; }

.col-10 {
  width: 83.33333%; }

.col-11 {
  width: 91.66666%; }

.col-12 {
  width: 100%; }

/* Push/Pull */
.push-1 {
  left: 8.33333%; }

.pull-1 {
  left: -8.33333%; }

.push-2 {
  left: 16.66667%; }

.pull-2 {
  left: -16.66667%; }

.push-3 {
  left: 25%; }

.pull-3 {
  left: -25%; }

.push-4 {
  left: 33.33333%; }

.pull-4 {
  left: -33.33333%; }

.push-5 {
  left: 41.66665%; }

.pull-5 {
  left: -41.66665%; }

.push-6 {
  left: 50%; }

.pull-6 {
  left: -50%; }

.push-7 {
  left: 58.33333%; }

.pull-7 {
  left: -58.33333%; }

.push-8 {
  left: 66.66666%; }

.pull-8 {
  left: -66.66666%; }

.push-9 {
  left: 75%; }

.pull-9 {
  left: -75%; }

.push-10 {
  left: 83.33333%; }

.pull-10 {
  left: -83.33333%; }

.push-11 {
  left: 91.66666%; }

.pull-11 {
  left: -91.66666%; }

/* Rows */
.row {
  padding-top: 1em;
  padding-bottom: 1em; }

/* ==========================================================================
/* 3.0 - CSS Helpers / Extras
   ========================================================================== */
/* Clearfix */
.clear:before, .clear:after {
  content: "";
  display: table; }

.clear:after {
  clear: both; }

.clear {
  zoom: 1; }

/* Floats */
.left, .checkbox input[type=checkbox],
.checkbox input[type=radio] {
  float: left; }

.right {
  float: right; }

/* Display */
.block, .checkbox {
  display: block; }

.inline {
  display: inline; }

.inline-block, audio, canvas, video, .inline-list, .inline-list li, .button {
  display: inline-block;
  *zoom: 1;
  *display: inline; }

.none, audio:not([controls]),
[hidden],
.no-desktop {
  display: none; }

/* Font Weights */
.heavy {
  font-weight: 900; }

.strong, b, strong {
  font-weight: 700; }

.normal, cite, dt, table thead th,
table tfoot th, table caption, legend, input[type=text],
input[type=password],
input[type=email],
input[type=search],
input[type=tel],
textarea {
  font-weight: normal; }

.thin {
  font-weight: 300; }

.italic, i, em, .em, dfn, blockquote, q {
  font-style: italic; }

/* Font Styles */
.capitalize {
  text-transform: capitalize; }

.uppercase {
  text-transform: uppercase; }

/* Text Position */
.left-text, table caption {
  text-align: left; }

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

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

/* Accessibility (offscreen text for screen readers) */
.visuallyhidden {
  border: 0;
  clip: rect(0 0 0 0);
  height: 1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
  left: -9999em; }

.visuallyvisible {
  clip: auto;
  width: auto;
  height: auto;
  overflow: visible;
  left: 0; }

/* Margin and Padding Reset */
.no-margin {
  margin: 0; }

.no-padding {
  padding: 0; }

.no-padding-left {
  padding-left: 0; }

.no-padding-right {
  padding-right: 0; }

/* ==========================================================================
/* -- 5.0 Tablet Devices (Layout, Modifications, etc)
   ========================================================================== */
@media only screen and (min-width: 740px) and (max-width: 960px) {
  .container, .tablet-container {
    max-width: 960px;
    padding-left: 10px;
    padding-right: 10px;
    margin-left: auto;
    margin-right: auto;
    float: none; }
    .container:first-child, .tablet-container:first-child {
      margin-left: auto; }
      
  .tablet-container-full {
    padding-left: 0;
    padding-right: 0;
    margin-left: auto;
    margin-right: auto;
    float: none; }
    .tablet-container-full:first-child {
      margin-left: auto; }

  .container .container-full {
    padding-left: 10px;
    padding-right: 10px;
  }

  .tablet-no-gutter {
    padding-left: 0;
    padding-right: 0; }

  /* Tablet Grid */
  .tablet-col-1 {
    width: 8.33333%; }

  .tablet-col-2 {
    width: 16.66667%; }

  .tablet-col-3, .tablet-col-1-4 {
    width: 25%; }

  .tablet-col-4, .tablet-col-1-3 {
    width: 33.33333%; }

  .tablet-col-5 {
    width: 41.66665%; }

  .tablet-col-6, .tablet-col-1-2 {
    width: 50%; }

  .tablet-col-7 {
    width: 58.33333%; }

  .tablet-col-8 {
    width: 66.66666%; }

  .tablet-col-9 {
    width: 75%; }

  .tablet-col-10 {
    width: 83.33333%; }

  .tablet-col-11 {
    width: 91.66666%; }

  .tablet-col-12 {
    width: 100%; }

  /* Tablet Push/Pull */
  .tablet-push-1 {
    left: 8.33333%; }

  .tablet-pull-1 {
    left: -8.33333%; }

  .tablet-push-2 {
    left: 16.66667%; }

  .tablet-pull-2 {
    left: -16.66667%; }

  .tablet-push-3 {
    left: 25%; }

  .tablet-pull-3 {
    left: -25%; }

  .tablet-push-4 {
    left: 33.33333%; }

  .tablet-pull-4 {
    left: -33.33333%; }

  .tablet-push-5 {
    left: 41.66665%; }

  .tablet-pull-5 {
    left: -41.66665%; }

  .tablet-push-6 {
    left: 50%; }

  .tablet-pull-6 {
    left: -50%; }

  .tablet-push-7 {
    left: 58.33333%; }

  .tablet-pull-7 {
    left: -58.33333%; }

  .tablet-push-8 {
    left: 66.66666%; }

  .tablet-pull-8 {
    left: -66.66666%; }

  .tablet-push-9 {
    left: 75%; }

  .tablet-pull-9 {
    left: -75%; }

  .tablet-push-10 {
    left: 83.33333%; }

  .tablet-pull-10 {
    left: -83.33333%; }

  .tablet-push-11 {
    left: 91.66666%; }

  .tablet-pull-11 {
    left: -91.66666%; }

  .tablet-no-push, .tablet-no-pull {
    left: auto; }

  /* Tablet Rows */
  .tablet-row {
    padding-top: 1em;
    padding-bottom: 1em; }

  .tablet-full {
    left: auto;
    clear: both;
    float: none;
    width: 100%;
    margin: 1em 0 0 0;
    display: block; }

  .tablet-full:first-child {
    margin-top: 0; }

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

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

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

  .tablet-left {
    float: left; }

  .tablet-right {
    float: right; }

  .tablet-no-float {
    float: none; }

  /* Margin and Padding Reset */
  .tablet-no-margin {
    margin: 0; }

  .tablet-no-padding {
    padding: 0; }

  .no-tablet {
    display: none; }

  .show-tablet {
    display: block; } }
/* End Tablet Media Query */
/* ==========================================================================
/* -- 7.0 Mobile Devices (Layout, Modifications, etc)
   ========================================================================== */
@media only screen and (max-width: 739px) {
  .container, .mobile-container {
    padding-left: 10px;
    padding-right: 10px;
    margin-left: auto;
    margin-right: auto;
    float: none; }
    .container:first-child, .mobile-container:first-child {
      margin-left: auto; }

  .container-full, .mobile-container-full {
    padding-left: 80px;
    padding-right: 10px;
    margin-left: auto;
    margin-right: auto;
    float: none; }

  .mobile-container-full:first-child {
      margin-left: auto; }

  .container .container-full {
    padding-left: 10px;
    padding-right: 10px;
  }

  .mobile-no-gutter {
    padding-left: 0;
    padding-right: 0; }

  /* Mobile Grid */
  .mobile-col-1-2 {
    width: 50%; }

  .mobile-col-1-3 {
    width: 33.33333%; }

  .mobile-col-1-4 {
    width: 25%; }

  /* Push/Pull */
  .mobile-push-1-2 {
    left: 50%; }

  .mobile-pull-1-2 {
    left: -50%; }

  .mobile-push-1-3 {
    left: 33.33333%; }

  .mobile-pull-1-3 {
    left: -33.33333%; }

  .mobile-push-1-4 {
    left: 25%; }

  .mobile-pull-1-4 {
    left: -25%; }

  .mobile-no-push, .mobile-no-pull {
    left: auto; }

  /* Mobile Rows */
  .mobile-row {
    padding-top: 1em;
    padding-bottom: 1em; }

  .mobile-full {
    left: auto;
    clear: both;
    float: none;
    width: 100%;
    margin: .2em 0 0 0;
    display: block; }

  .mobile-full:first-child {
    margin-top: 0; }

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

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

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

  .mobile-left {
    float: left; }

  .mobile-right {
    float: right; }

  .mobile-no-float {
    float: none; }

  /* Margin and Padding Reset */
  .mobile-no-margin {
    margin: 0; }

  .mobile-no-padding {
    padding: 0; }

  /* Mobile Tables */
  table th, table td {
    padding: 4px; }

  .no-mobile {
    display: none; }

  .show-mobile {
    display: block; } }
/* End Mobile Media Query */
/* ==============================================================================
/* -- 7.0 Small Mobile Devices (Layout, Modifications, etc) - my modification --
   ============================================================================== */
@media only screen and (max-width: 480px) {
  .container, .small-mobile-container {
    padding-left: 20px;
    padding-right: 20px;
    margin-left: auto;
    margin-right: auto;
    float: none; }

    .container:first-child, .small-mobile-container:first-child {
      margin-left: auto; }

  .small-mobile-container-full {
    padding-left: 0;
    padding-right: 0;
    margin-left: auto;
    margin-right: auto;
    float: none; }
    .mobile-container-full:first-child {
      margin-left: auto; }

  .small-mobile-no-gutter {
    padding-left: 0;
    padding-right: 0; }

  /* Mobile Grid */
  .small-mobile-col-1-2 {
    width: 50%; }

  .small-mobile-col-1-3 {
    width: 33.33333%; }

  .small-mobile-col-1-4 {
    width: 25%; }

  /* Push/Pull */
  .small-mobile-push-1-2 {
    left: 50%; }

  .small-mobile-pull-1-2 {
    left: -50%; }

  .small-mobile-push-1-3 {
    left: 33.33333%; }

  .small-mobile-pull-1-3 {
    left: -33.33333%; }

  .small-mobile-push-1-4 {
    left: 25%; }

  .small-mobile-pull-1-4 {
    left: -25%; }

  .small-mobile-no-push, .small-mobile-no-pull {
    left: auto; }

  /* Mobile Rows */
  .small-mobile-row {
    padding-top: 1em;
    padding-bottom: 1em; }

  .small-mobile-full {
    left: auto;
    clear: both;
    float: none;
    width: 100%;
    margin: .2em 0 0 0;
    display: block; }

  .small-mobile-full:first-child {
    margin-top: 0; }

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

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

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

  .small-mobile-left {
    float: left; }

  .small-mobile-right {
    float: right; }

  .small-mobile-no-float {
    float: none; }

  /* Margin and Padding Reset */
  .small-mobile-no-margin {
    margin: 0; }

  .small-mobile-no-padding {
    padding: 0; }

  /* Mobile Tables */
  table th, table td {
    padding: 4px; }

  .no-small-mobile {
    display: none; }

  .show-small-mobile {
    display: block; } }
/* End Mobile Media Query */
@media print {
  * {
    background: transparent; }

  a, a:visited {
    text-decoration: underline; }

  abbr[title]:after {
    content: " (" attr(title) ")"; }

  pre, blockquote {
    border: 1px solid #999;
    page-break-inside: avoid; }

  thead {
    display: table-header-group; }

  tr, img {
    page-break-inside: avoid; }

  img {
    max-width: 100%; }

  @page {
    margin: 0.5cm; }

  p, h2, h3 {
    orphans: 3;
    widows: 3; }

  h2, h3 {
    page-break-after: avoid; } }
