* {
  margin: 0;
  padding: 0; 
 }

*,
*:before,
*:after {
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-box-sizing: border-box; }

html {

}

body {
  color: #858585;
  font-family: "Courier New", "Courier", "monospace";
  letter-spacing: 0px;
  font-weight: normal;
  font-style: normal;
  -webkit-font-smoothing: subpixel-antialiased !important;
  padding: 0;
  margin: 0;
  line-height: 1;
  cursor: default;
  height: 100%;
  xoverflow: hidden;
}

html {
  font-size: 100%;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

input,
button,
select,
textarea {
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
}

a {
  color: #428bca;
  text-decoration: none;
}

a:hover,
a:focus {
  text-decoration: none;
}

img {
  vertical-align: middle;
}

.img-responsive {
  display: block;
  width: 100%;
  max-width: 100%;
}

hr {
  border-color: #414141;
  border-style: solid;
  border-width: 1px;
}

/* ============================================
   Typography
   ============================================ */
h1,
h2,
h3 {
  font-family: "Courier New", "Courier", "monospace";
  font-weight: 500;
  line-height: 1.1;
  color: inherit;
  text-align: center;
}

h1,
h2,
h3 {
  margin-top: 1em;
  color: #636363;
  margin-bottom: 10px;
}


h1 {font-size: 36px;}
h2 {font-size: 30px;}
h3 {font-size: 24px;}
h4 {font-size: 18px;}
h5 {font-size: 14px;}
h6 {font-size: 12px;}

p {
   text-align: center;
   margin: 0 0 10px;
   line-height: 1.8em;
}

small,
.small {
  font-size: 85%;
}

h1 {
  font-size: 2.9em;
  line-height: .85em;
  text-decoration: none;
  font-weight: 400;
  font-style: normal;
  font-family: "Londrina Solid";
  letter-spacing: 6px;
  text-transform: uppercase;
}

h2 {
  font-size: 1.4em;
  font-size: 1.6em;
  line-height: 1.2em;
  text-transform: uppercase;
  text-decoration: none;
  letter-spacing: 1px;
  font-style: normal;
  font-family: "News Cycle";
  font-weight: 400;
}

h3 {
  font-size: 18px;
  font-weight: 400;
  font-family: "Source Sans Pro";
  font-size: 16px;
  text-transform: uppercase;
  text-decoration: none;
  font-weight: 600;
  font-style: normal;
  line-height: 1.2em;
  letter-spacing: 0;
}

b, 
strong {
  font-weight: bold;
}

h1.block {
  padding-bottom: 40px;
}

h2.block {

}
h3.block {

}
p.block {
 padding-top: 40px;
}

/* 
 * Custom Links 
 */
a:hover, 
a:focus {
  color: rgba(234, 35, 100, .7);
}

a, 
a:visited {
  color: #ea2364;
  text-decoration: none;
}

/* 
 * Typography Mobile Styles 
 */
@media only screen and (max-width: 40em) {
  h1,
  h2,
  h3 {
    font-family: "Courier New", "Courier", "monospace";
    font-weight: 500;
    line-height: 1.1;
    color: inherit;
  }

  h1,
  h2,
  h3 {
    margin-top: 1em;
    color: #636363;
    margin-bottom: 10px;
  }

  h1 {font-size: 36px;}
  h2 {font-size: 30px;}
  h3 {font-size: 24px;}
  h4 {font-size: 18px;}
  h5 {font-size: 14px;}
  h6 {font-size: 12px;}

  p {
     margin: 0 0 10px;
     line-height: 1.3em;
  }

  small,
  .small {
    font-size: 85%;
  }

  h1 {
    font-size: 2.9em;
    line-height: .85em;
    text-decoration: none;
    font-weight: 400;
    font-style: normal;
    font-family: "Londrina Solid";
    letter-spacing: 6px;
    text-transform: uppercase;
  }

  h2 {
    font-size: 1.4em;
    font-size: 1.6em;
    line-height: 1.2em;
    text-transform: uppercase;
    text-decoration: none;
    letter-spacing: 1px;
    font-style: normal;
    font-family: "News Cycle";
    font-weight: 400;
  }

  h3 {
    font-size: 18px;
    font-weight: 400;
    font-family: "Source Sans Pro";
    font-size: 16px;
    text-transform: uppercase;
    text-decoration: none;
    font-weight: 600;
    font-style: normal;
    line-height: 1.2em;
    letter-spacing: 0;
  }

  b, 
  strong {
    font-weight: bold;
  }   
}

/* ============================================
   Images
   ============================================ */

.bottom-flower {
  background-image:url('../img/bottom-flower.png'); 
  background-repeat:no-repeat;
  height: 57px;
  background-size: contain;
  margin:30px 0;
  background-position:center;
}

.top-flower {
  background-image:url('../img/top-flower.png'); 
  background-repeat:no-repeat;
  height: 57px;
  background-size: contain;
  background-position:center;
}

.party {
  background-image:url('../img/party-small-white.png'); 
  background-repeat:no-repeat;
  background-size: 100%;
  background-position:top;
  margin:25px 0;
  height:100%;
  width:100%;
}

/* ============================================
   Parallax
   ============================================ */

/* 
 * iScroll 
 */
#wrapper {
 width: 100%;
 overflow: hidden;
}

#scroller {
   width: 100%;
   position: relative;
}

article {
  display: block;
  width: 100%;
}

.mobile body {
  overflow: hidden;
}

.mobile #wrapper {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  width: 100%;
}

.mobile #scroller {
  height: 13090px;
}

.mobile .party {
  background-image:url('../img/party-small-white.png'); 
  display: none;
  background-repeat:no-repeat;
  background-size: 100%;
  background-position:top;
  margin:25px 0;
  height:100%;
  width:100%;
}
  

/* ============================================
   Parallax Background Images
   ============================================ */ 

.parallax-img {
  background-repeat:no-repeat;
  background-position:center;
  width: 100%;
      -moz-background-size: cover;
      -o-background-size: cover;
  -webkit-background-size: cover;
  xbackground-attachment: initial;
  background-size: cover;
}

#img-1 {
  background-image:url('../img/intro-bg.jpg');
  height:850px;
}

#img-2 {
  background-image:url('../img/blue-bg.jpg');
  height:800px;
}

#img-3 {
  background-image:url('../img/blue-bg.jpg'); 
  height: 800px;
}

#img-4 {
  background-image:url('../img/blue-bg.jpg'); 
  height: 800px;
}

#img-5 {
  background-image:url('../img/blue-bg.jpg'); 
  height: 800px;
}

#img-6 {
    background-image:url('../img/blue-bg.jpg'); 
    height: 800px;
}

/* 
 * NOTE: Width 100% & height 100% will break mobile version. Do not use.
*/
.parallax-content {
  padding: 50px 10px;
  background: #fcfcfc;
}

.background-img {
  background-image:url('../img/blue-bg.jpg'); 
  background-repeat:no-repeat;
  background-size: cover;
  background-position: 50% 0;
  -moz-background-size: cover;
    -o-background-size: cover;
      -webkit-background-size: cover;
  xbackground-attachment: fixed;
  top: 0;
  height: 700px;
  bottom: 0;
  left: 0;
  right: 0;
  position: relative;
}

#intro-bg {
  background-image:url('../img/intro.jpg');
}

.footer-bg {
  background-image:url('../img/footer.png');
  background-repeat:no-repeat;
  background-position:center;
  background-size:cover;
      -webkit-background-size: cover;
      -moz-background-size: cover;
      -o-background-size: cover;
  height: 175px;
  position: absolute;
  width: 100%;
  margin-top: -30px;
  left: 0;
  right: 0;
}

/* 
 * Mobile Parallax Styles 
 */
@media only screen and (max-width: 600px) {
  .background-img { 
    background-size:cover;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-position: center;
    xbackground-attachment: inherit;
  height: 700px;
  }
}

/* ============================================
   Forms
   ============================================ */
@media only screen and (min-width: 40.063em) {
  button, .button {
    display: inline-block; 
  } 
}

/* 
 * Standard Forms 
 */
form {
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em;
  margin-left: 2px;
  margin-right: 2px;;
}
/* Using forms within rows, we need to set some defaults */
form .row .row {
  margin: 0 -0.5rem; }
  form .row .row .column,
  form .row .row .columns {
    padding: 0 0.5rem; }
  form .row .row.collapse {
    margin: 0; }
    form .row .row.collapse .column,
    form .row .row.collapse .columns {
      padding: 0; }
    form .row .row.collapse input {
      -moz-border-radius-bottomright: 0;
      -moz-border-radius-topright: 0;
      -webkit-border-bottom-right-radius: 0;
      -webkit-border-top-right-radius: 0; }
form .row input.column,
form .row input.columns,
form .row textarea.column,
form .row textarea.columns {
  padding-left: 0.5rem; }

/* Label Styles */
label {
  font-size: 13px;
  color: #4d4d4d;
  cursor: pointer;
  display: block;
  font-weight: normal;
  margin-bottom: 4px;
  /* Styles for required inputs */ 
}

label.right {
    float: none;
    text-align: right; 
}

label.inline {
  margin: 0 0 1rem 0;
  padding: 0.625rem 0; 
}

label small {
  text-transform: capitalize;
  color: #676767; 
}

label.bottom {
  margin-top: 10px;
}

.form-item {
  xmargin: 0 2px;
  xpadding: 0.35em 0.625em 0.75em;
  padding-bottom: 30px;
}

.form-item > .title {
  font-size: 17px;
  margin-bottom: 7px;
}

label.title {
  font-size: 17px;
}

select {
  -webkit-appearance: none !important;
  background: #fafafa url("data:image/svg+xml;base64, PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZlcnNpb249IjEuMSIgeD0iMHB4IiB5PSIwcHgiIHdpZHRoPSI2cHgiIGhlaWdodD0iM3B4IiB2aWV3Qm94PSIwIDAgNiAzIiBlbmFibGUtYmFja2dyb3VuZD0ibmV3IDAgMCA2IDMiIHhtbDpzcGFjZT0icHJlc2VydmUiPjxwb2x5Z29uIHBvaW50cz0iNS45OTIsMCAyLjk5MiwzIC0wLjAwOCwwICIvPjwvc3ZnPg==") no-repeat;
  background-position-x: 97%;
  background-position-y: center;
  border: 1px solid #cccccc;
  padding: 0.5rem;
  font-size: 0.875rem;
  -webkit-border-radius: 0;
  border-radius: 0; }
  select.radius {
    -webkit-border-radius: 3px;
    border-radius: 3px; }
  select:hover {
    background: #f3f3f3 url("data:image/svg+xml;base64, PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZlcnNpb249IjEuMSIgeD0iMHB4IiB5PSIwcHgiIHdpZHRoPSI2cHgiIGhlaWdodD0iM3B4IiB2aWV3Qm94PSIwIDAgNiAzIiBlbmFibGUtYmFja2dyb3VuZD0ibmV3IDAgMCA2IDMiIHhtbDpzcGFjZT0icHJlc2VydmUiPjxwb2x5Z29uIHBvaW50cz0iNS45OTIsMCAyLjk5MiwzIC0wLjAwOCwwICIvPjwvc3ZnPg==") no-repeat;
    background-position-x: 97%;
    background-position-y: center;
    border-color: #999999; }

select::-ms-expand {
  display: none; }

@-moz-document url-prefix() {
  select {
    background: #fafafa; }

  select:hover {
    background: #f3f3f3; } }

/* We use this to get basic styling on all basic form elements */
input[type="text"],
input[type="password"],
input[type="date"],
input[type="datetime"],
input[type="datetime-local"],
input[type="month"],
input[type="week"],
input[type="email"],
input[type="number"],
input[type="search"],
input[type="tel"],
input[type="time"],
input[type="url"],
textarea {
  -webkit-appearance: none;
  -webkit-border-radius: 0;
  border-radius: 2px;
  background-color: #fafafa;
  font-family: inherit;
  border: 1px solid #cccccc;
  color: rgba(0, 0, 0, 0.75);
  font-size: 0.875rem;
  width: 100%;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -moz-transition: -moz-box-shadow 0.45s, border-color 0.45s ease-in-out;
    -webkit-transition: -webkit-box-shadow 0.45s, border-color 0.45s ease-in-out;
    transition: box-shadow 0.45s, border-color 0.45s ease-in-out;
    height: 40px;
    padding: 0 4px; 
}

  input[type="text"]:focus,
  input[type="password"]:focus,
  input[type="date"]:focus,
  input[type="datetime"]:focus,
  input[type="datetime-local"]:focus,
  input[type="month"]:focus,
  input[type="week"]:focus,
  input[type="email"]:focus,
  input[type="number"]:focus,
  input[type="search"]:focus,
  input[type="tel"]:focus,
  input[type="time"]:focus,
  input[type="url"]:focus,
  textarea:focus {
    -moz-box-shadow: 0 0 5px #999999; 
    background: #fff;
    outline: none;
    border-color: #999999; 
}

/* Add height value for select elements to match text input height */
select {
  height: 2.3125rem; 
}

/* Adjust margin for form elements below */
input[type="file"],
input[type="checkbox"],
input[type="radio"],
select {
  margin-bottom: 5px; 
}

input[type="checkbox"] + label,
input[type="radio"] + label {
  display: inline-block;
  margin-left: 0.5rem;
  margin-right: 1rem;
  margin-bottom: 0;
  vertical-align: baseline; 
}

/* Normalize file input width */
input[type="file"] {
  width: 100%; }

/* We add basic fieldset styling */
fieldset {
  border: none;
  padding-bottom: 30px;
  margin: 0;
  padding-left: 0;
  padding-right: 0;
}
  
fieldset legend {
  font-weight: 400;
  background: #fff;
  font-size: 17px;
  margin-bottom: 7px;
}

textarea {
  min-height: 100px;
  resize: vertical;
}

input.submit-button,
.input[type=submit] {
  display: block;
  background-color: #272727;
  border: none;
  color: #fff;
  cursor: pointer;
  font: 14px/1em 'Helvetica Neue', helvetica, arial, sans-serif;
  font-weight: normal;
  padding: 14px 25px;
  text-align: center;
  -webkit-appearance: none;
}

/* Attach elements to the beginning or end of an input */
.prefix,
.postfix {
  display: block;
  position: relative;
  z-index: 2;
  text-align: center;
  width: 100%;
  padding-top: 0;
  padding-bottom: 0;
  border-style: solid;
  border-width: 1px;
  overflow: hidden;
  font-size: 0.875rem;
  height: 2.3125rem;
  line-height: 2.3125rem; }

/* Adjust padding, alignment and radius if pre/post element is a button */
.postfix.button {
  padding-left: 0;
  padding-right: 0;
  padding-top: 0;
  padding-bottom: 0;
  text-align: center;
  line-height: 2.125rem;
  border: none; }

.prefix.button {
  padding-left: 0;
  padding-right: 0;
  padding-top: 0;
  padding-bottom: 0;
  text-align: center;
  line-height: 2.125rem;
  border: none; }

.prefix.button.radius {
  -webkit-border-radius: 0;
  border-radius: 0;
  -moz-border-radius-bottomleft: 3px;
  -moz-border-radius-topleft: 3px;
  -webkit-border-bottom-left-radius: 3px;
  -webkit-border-top-left-radius: 3px;
  border-bottom-left-radius: 3px;
  border-top-left-radius: 3px; }

.postfix.button.radius {
  -webkit-border-radius: 0;
  border-radius: 0;
  -moz-border-radius-topright: 3px;
  -moz-border-radius-bottomright: 3px;
  -webkit-border-top-right-radius: 3px;
  -webkit-border-bottom-right-radius: 3px;
  border-top-right-radius: 3px;
  border-bottom-right-radius: 3px; }

.prefix.button.round {
  -webkit-border-radius: 0;
  border-radius: 0;
  -moz-border-radius-bottomleft: 1000px;
  -moz-border-radius-topleft: 1000px;
  -webkit-border-bottom-left-radius: 1000px;
  -webkit-border-top-left-radius: 1000px;
  border-bottom-left-radius: 1000px;
  border-top-left-radius: 1000px; }

.postfix.button.round {
  -webkit-border-radius: 0;
  border-radius: 0;
  -moz-border-radius-topright: 1000px;
  -moz-border-radius-bottomright: 1000px;
  -webkit-border-top-right-radius: 1000px;
  -webkit-border-bottom-right-radius: 1000px;
  border-top-right-radius: 1000px;
  border-bottom-right-radius: 1000px; }

/* Separate prefix and postfix styles when on span or label so buttons keep their own */
span.prefix, label.prefix {
  background: #f2f2f2;
  border-color: #d8d8d8;
  border-right: none;
  color: #333333; }
  span.prefix.radius, label.prefix.radius {
    -webkit-border-radius: 0;
    border-radius: 0;
    -moz-border-radius-bottomleft: 3px;
    -moz-border-radius-topleft: 3px;
    -webkit-border-bottom-left-radius: 3px;
    -webkit-border-top-left-radius: 3px;
    border-bottom-left-radius: 3px;
    border-top-left-radius: 3px; }

span.postfix, label.postfix {
  background: #f2f2f2;
  border-color: #cbcbcb;
  border-left: none;
  color: #333333; }
  span.postfix.radius, label.postfix.radius {
    -webkit-border-radius: 0;
    border-radius: 0;
    -moz-border-radius-topright: 3px;
    -moz-border-radius-bottomright: 3px;
    -webkit-border-top-right-radius: 3px;
    -webkit-border-bottom-right-radius: 3px;
    border-top-right-radius: 3px;
    border-bottom-right-radius: 3px; }

/* Input groups will automatically style first and last elements of the group */
.input-group.radius > *:first-child, .input-group.radius > *:first-child * {
  -moz-border-radius-bottomleft: 3px;
  -moz-border-radius-topleft: 3px;
  -webkit-border-bottom-left-radius: 3px;
  -webkit-border-top-left-radius: 3px;
  border-bottom-left-radius: 3px;
  border-top-left-radius: 3px; }
.input-group.radius > *:last-child, .input-group.radius > *:last-child * {
  -moz-border-radius-topright: 3px;
  -moz-border-radius-bottomright: 3px;
  -webkit-border-top-right-radius: 3px;
  -webkit-border-bottom-right-radius: 3px;
  border-top-right-radius: 3px;
  border-bottom-right-radius: 3px; }
.input-group.round > *:first-child, .input-group.round > *:first-child * {
  -moz-border-radius-bottomleft: 1000px;
  -moz-border-radius-topleft: 1000px;
  -webkit-border-bottom-left-radius: 1000px;
  -webkit-border-top-left-radius: 1000px;
  border-bottom-left-radius: 1000px;
  border-top-left-radius: 1000px; }
.input-group.round > *:last-child, .input-group.round > *:last-child * {
  -moz-border-radius-topright: 1000px;
  -moz-border-radius-bottomright: 1000px;
  -webkit-border-top-right-radius: 1000px;
  -webkit-border-bottom-right-radius: 1000px;
  border-top-right-radius: 1000px;
  border-bottom-right-radius: 1000px; }
