/*
	HTML5 Reset :: style.css
	----------------------------------------------------------
	We have learned much from/been inspired by/taken code where offered from:

	Eric Meyer					:: http://meyerweb.com
	HTML5 Doctor				:: http://html5doctor.com
	and the HTML5 Boilerplate	:: http://html5boilerplate.com

-------------------------------------------------------------------------------*/
/* Let's default this puppy out
-------------------------------------------------------------------------------*/
html, body, body div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, figure, footer, header, menu, nav, section, time, mark, audio, video, details, summary {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font-weight: normal;
  vertical-align: baseline;
  background: transparent;
}

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

/* Handle box-sizing while better addressing child elements:
   http://css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice/ */
html {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

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

/* consider resetting the default cursor: https://gist.github.com/murtaugh/5247154 */
/* Responsive images and other embedded objects */
/* if you don't have full control over `img` tags (if you have to overcome attributes), consider adding height: auto */
img,
object,
embed {
  max-width: 100%;
}

/*
   Note: keeping IMG here will cause problems if you're using foreground images as sprites.
	In fact, it *will* cause problems with Google Maps' controls at small size.
	If this is the case for you, try uncommenting the following:

#map img {
		max-width: none;
}
*/
/* force a vertical scrollbar to prevent a jumpy page */
html {
  overflow-y: scroll;
}

/* we use a lot of ULs that aren't bulleted.
	you'll have to restore the bullets within content,
	which is fine because they're probably customized anyway */
ul {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

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

a {
  margin: 0;
  padding: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
}

del {
  text-decoration: line-through;
}

abbr[title], dfn[title] {
  border-bottom: 1px dotted #000;
  cursor: help;
}

/* tables still need cellspacing="0" in the markup */
table {
  border-collapse: collapse;
  border-spacing: 0;
}

th {
  font-weight: bold;
  vertical-align: bottom;
}

td {
  font-weight: normal;
  vertical-align: top;
}

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

input, select {
  vertical-align: middle;
}

pre {
  white-space: pre;
  /* CSS2 */
  white-space: pre-wrap;
  /* CSS 2.1 */
  white-space: pre-line;
  /* CSS 3 (and 2.1 as well, actually) */
  word-wrap: break-word;
  /* IE */
}

input[type="radio"] {
  vertical-align: text-bottom;
}

input[type="checkbox"] {
  vertical-align: bottom;
}

.ie7 input[type="checkbox"] {
  vertical-align: baseline;
}

.ie6 input {
  vertical-align: text-bottom;
}

select, input, textarea {
  font: 99% sans-serif;
}

table {
  font-size: inherit;
  font: 100%;
}

small {
  font-size: 85%;
}

strong {
  font-weight: bold;
}

td, td img {
  vertical-align: top;
}

/* Make sure sup and sub don't mess with your line-heights http://gist.github.com/413930 */
sub, sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
}

sup {
  top: -0.5em;
}

sub {
  bottom: -0.25em;
}

/* standardize any monospaced elements */
pre, code, kbd, samp {
  font-family: monospace, sans-serif;
}

/* hand cursor on clickable elements */
.clickable,
label,
input[type=button],
input[type=submit],
input[type=file],
button {
  cursor: pointer;
}

/* Webkit browsers add a 2px margin outside the chrome of form elements */
button, input, select, textarea {
  margin: 0;
}

/* make buttons play nice in IE */
button,
input[type=button] {
  width: auto;
  overflow: visible;
}

/* scale images in IE7 more attractively */
.ie7 img {
  -ms-interpolation-mode: bicubic;
}

/* prevent BG image flicker upon hover
   (commented out as usage is rare, and the filter syntax messes with some pre-processors)
.ie6 html {filter: expression(document.execCommand("BackgroundImageCache", false, true));}
*/
/* let's clear some floats */
.clearfix:before, .clearfix:after {
  content: "\0020";
  display: block;
  height: 0;
  overflow: hidden;
}

.clearfix:after {
  clear: both;
}

.clearfix {
  zoom: 1;
}

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

*:focus {
  outline: none;
}

td, td img {
  vertical-align: middle;
}

button:focus {
  outline: 0;
}

input {
  padding: 0 1em;
  width: 100%;
  height: 50px;
  line-height: 1.6;
  font-size: 14px;
  font-size: 1.4rem;
  background-color: #fff;
  border: none;
  -webkit-appearance: none;
  border-radius: 6px;
  outline: none;
}

@media (max-width: 767px) {
  input {
    font-size: 16px;
    font-size: 1.6rem;
  }
}

input[type="password"] {
  font-family: Verdana, sans-serif !important;
}

input[type=checkbox],
input[type=radio] {
  display: none;
}

input:disabled {
  background: #F5F5F5;
}

input::-ms-clear {
  visibility: hidden;
}

@-webkit-keyframes onAutoFillStart {
  from {
  }
  to {
  }
}

@keyframes onAutoFillStart {
  from {
  }
  to {
  }
}

input:-webkit-autofill,
select:-webkit-autofill {
  -webkit-animation-name: onAutoFillStart;
          animation-name: onAutoFillStart;
  -webkit-transition: background-color 50000s ease-in-out 0s;
  transition: background-color 50000s ease-in-out 0s;
}

body.bg-color input::-webkit-input-placeholder,
body.bg-color input::-webkit-input-placeholder,
body.bg-color input:-ms-input-placeholder,
body.bg-color input::-moz-placeholder,
body.bg-color textarea::-webkit-input-placeholder,
body.bg-color textarea::-webkit-input-placeholder,
body.bg-color textarea:-ms-input-placeholder,
body.bg-color textarea::-moz-placeholder {
  color: #fff !important;
}

body.bg-color input::placeholder,
body.bg-color input::-webkit-input-placeholder,
body.bg-color input:-ms-input-placeholder,
body.bg-color input::-moz-placeholder,
body.bg-color textarea::placeholder,
body.bg-color textarea::-webkit-input-placeholder,
body.bg-color textarea:-ms-input-placeholder,
body.bg-color textarea::-moz-placeholder {
  color: #fff !important;
}

input::-webkit-input-placeholder,
input::-webkit-input-placeholder,
input:-ms-input-placeholder,
input::-moz-placeholder,
textarea::-webkit-input-placeholder,
textarea::-webkit-input-placeholder,
textarea:-ms-input-placeholder,
textarea::-moz-placeholder {
  color: #E83939;
}

input::placeholder,
input::-webkit-input-placeholder,
input:-ms-input-placeholder,
input::-moz-placeholder,
textarea::placeholder,
textarea::-webkit-input-placeholder,
textarea:-ms-input-placeholder,
textarea::-moz-placeholder {
  color: #E83939;
}

input[type="file"]::-webkit-file-upload-button {
  background: -webkit-gradient(linear, left top, left bottom, from(transparent), to(transparent));
  margin: 0 20px 0 0;
  background-color: transparent;
  border: 0;
}

input,
select,
textarea {
  outline: none;
  border: 1px solid #B7B7B7;
  -webkit-transition: all .3s;
  transition: all .3s;
}

button,
input,
select,
textarea {
  font-family: inherit !important;
  font-size: 100%;
}

select {
  outline: none;
  -moz-appearance: none;
  text-overflow: ellipsis;
  background: none transparent;
  vertical-align: middle;
  font-size: inherit;
  color: inherit;
  -webkit-appearance: button;
  -moz-appearance: button;
  appearance: button;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  padding: 0 10px;
  color: #131313;
  width: 285px;
  height: 46px;
  cursor: pointer;
}

select option {
  color: #131313;
}

select option:checked {
  color: #E83939;
}

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

textarea {
  display: block;
  padding: 10px;
  width: 100%;
  background-color: #fff;
  border-radius: 6px;
}

button {
  background-color: transparent;
  border: none;
  cursor: pointer;
  outline: none;
  padding: 0;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  line-height: 1;
}

body.home.is-header-bg .header {
  background-color: rgba(255, 255, 255, 0.2);
  -webkit-transition: .1s;
  transition: .1s;
}

body:not(.home) .header {
  background-color: #fff;
}

body:not(.home) .header:before {
  display: block;
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  margin: auto;
  -webkit-box-shadow: 0 2px 2px #00000033;
          box-shadow: 0 2px 2px #00000033;
  opacity: .5;
}

body:not(.home) .main {
  margin-top: 62px;
}

.header {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 9999;
  background-color: #fff;
}

.header > .flex {
  margin: 0 1%;
}

@media (min-width: 2000px) {
  .header > .flex {
    margin: 0 auto;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    max-width: 95%;
    min-width: 1280px;
    min-height: 62px;
  }
}

@media (max-width: 1999px) {
  .header > .flex {
    display: inherit;
    position: relative;
    margin: 0;
    padding: 0 1.8%;
    z-index: 9999;
  }
}

@media (min-width: 2000px) {
  .header .menu-icon {
    display: none;
  }
}

.hdr-title {
  margin: 0;
  padding: 10px 0;
  line-height: 1;
  text-align: left;
  background-color: inherit;
  font-size: 10px;
  font-size: 1rem;
}

.hdr-title img {
  width: auto;
  max-width: 100%;
  vertical-align: middle;
}

.hdr-title a {
  display: inline-block;
  color: #131313;
}

.hdr-title object,
.hdr-title a img {
  pointer-events: none;
  width: 42px;
  height: 42px;
  border-radius: 50vw;
}

@media (max-width: 1999px) {
  .hdr-title object,
  .hdr-title a img {
    width: 42px;
    height: 42px;
  }
}

@media (min-width: 2000px) {
  .global-nav {
    position: absolute;
    top: 0;
    left: auto;
    bottom: 0;
    margin: auto;
    right: 10%;
    height: 40px;
    right: 0;
    width: 100%;
  }
}

@media (min-width: 2000px) {
  .global-nav-inner {
    margin: 0 auto;
    max-width: 95%;
    min-width: 1280px;
  }
}

.global-nav-inner a {
  display: inline-block;
  color: #fff;
}

@media (max-width: 1999px) {
  .global-nav-inner a {
    color: #fff;
  }
}

.menu-under > a {
  position: relative;
}

.menu-under > a:before {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  right: 5%;
  margin: auto;
  width: 8px;
  height: 8px;
  border-top: 2px solid #131313;
  border-right: 2px solid #131313;
  -webkit-transform: translate(0, -50%) rotate(135deg);
          transform: translate(0, -50%) rotate(135deg);
}

@media (max-width: 1999px) {
  .menu-under > a:before {
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
  }
}

@media (min-width: 2000px) {
  .menu-under > a:hover:before {
    -webkit-transform: translate(0, 0) rotate(-45deg);
            transform: translate(0, 0) rotate(-45deg);
  }
}

@media (min-width: 2000px) {
  .menu-under:hover .sub-menu {
    visibility: visible;
    -webkit-transition: .2s ease;
    transition: .2s ease;
    opacity: 1;
  }
}

.sub-menu {
  display: none;
}

@media (min-width: 2000px) {
  .sub-menu {
    display: block;
    position: absolute;
    background-color: linear-gradient(-45deg, #1c6e81 0%, #207283 2.96%, #9eead3 100%);
    -webkit-transition: .2s ease;
    transition: .2s ease;
    visibility: hidden;
    opacity: 0;
    z-index: 999;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    top: 100%;
    left: 0;
    width: 100%;
  }
}

.sub-menu li {
  width: calc(100% / 5);
}

.sub-menu a {
  display: block;
  padding: 20px 10px;
  color: #fff;
}

@media (min-width: 2000px) {
  .sub-menu a {
    text-align: center;
    -webkit-transition: .2s;
    transition: .2s;
  }
  .sub-menu a:hover {
    background-color: linear-gradient(-45deg, #1c6e81 0%, #207283 2.96%, #9eead3 100%);
    -webkit-transition: .2s;
    transition: .2s;
  }
}

@media (max-width: 1999px) {
  .sp-menu-under .sub-menu {
    display: none;
  }
  .sp-menu-under.sub-menu-open .sub-menu {
    display: block;
  }
  .sp-menu-under.sub-menu-open > a:before {
    -webkit-transform: rotate(-45deg);
            transform: rotate(-45deg);
  }
}

.hdr-info {
  position: absolute;
  top: 0;
  left: auto;
  right: 80px;
  bottom: 0;
  margin: auto;
  height: 26px;
}

@media (max-width: 767px) {
  .hdr-info {
    right: 15%;
  }
}

.hdr-info .col {
  display: inline-block;
}

.hdr-info a {
  display: block;
  width: 26px;
  height: auto;
}

.hdr-info a:hover {
  opacity: .8;
  -webkit-transition: .3s;
  transition: .3s;
}

.hdr-info [class^="icon-"] {
  display: block;
  font-size: 22px;
  font-size: 2.2rem;
}

@media (max-width: 767px) {
  .hdr-info [class^="icon-"] {
    font-size: 26px;
    font-size: 2.6rem;
  }
}

.hdr-info [class^="icon-"]:before {
  color: #131313;
}

footer {
  background-color: #131313;
}

footer ul {
  padding-left: 0;
  list-style: none;
}

footer a,
footer p {
  color: #fff;
}

@media (max-width: 768px) {
  footer a {
    display: block;
    padding: .6em 0;
  }
}

footer .row .col {
  margin-bottom: 0;
}

footer.is-fixed {
  padding-bottom: 100px;
}

@media (max-width: 767px) {
  footer.is-fixed {
    padding-bottom: 20.5%;
  }
}

@media (max-width: 375px) {
  footer.is-fixed {
    padding-bottom: 31%;
  }
}

@media (max-width: 320px) {
  footer.is-fixed {
    padding-bottom: 35%;
  }
}

.footer-nav {
  padding: 3em 0;
}

@media (max-width: 767px) {
  .footer-nav {
    padding: .6em 0;
  }
}

.footer-nav ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

@media (min-width: 768px) {
  .footer-nav ul {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}

@media (max-width: 767px) {
  .footer-nav ul {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
}

@media (max-width: 767px) {
  .footer-nav li:nth-child(odd) {
    width: 50%;
  }
  .footer-nav li:nth-child(even) {
    width: 50%;
  }
}

@media (min-width: 768px) {
  .footer-nav li + li {
    margin-left: 20px;
  }
}

.footer-nav a:hover {
  text-decoration: underline;
}

@media (max-width: 767px) {
  .footer-nav a {
    font-size: 12px;
    font-size: 1.2rem;
  }
}

.copyright {
  text-align: center;
  -webkit-box-shadow: 0px -1px 0px #FFFFFF1A;
          box-shadow: 0px -1px 0px #FFFFFF1A;
}

.copyright p {
  padding: 1em 0;
  color: #fff;
  font-size: 13px;
  font-size: 1.3rem;
}

@media (max-width: 767px) {
  .copyright p {
    padding: 1em 0;
  }
}

@media (max-width: 320px) {
  .copyright p {
    font-size: 11px;
    font-size: 1.1rem;
  }
}

@media (max-width: 767px) {
  .copyright .row {
    margin: auto;
    width: 96%;
  }
}

.header .menu-icon {
  display: none;
}

@media (max-width: 1999px) {
  .header .menu-icon {
    display: block;
    position: absolute;
    top: 50%;
    left: auto;
    right: 2%;
    margin: auto;
    width: 24px;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
    z-index: 9999;
  }
}

@media (max-width: 767px) {
  .header .menu-icon {
    right: 4%;
  }
}

.header .menu-wrap {
  padding-bottom: 2em;
  height: 100%;
}

.header .menu-wrap .button.button-white-invert {
  color: #fff;
  border-color: #fff;
}

.header .menu-wrap p {
  color: #fff;
}

.header .menu-wrap.is-login {
  padding-bottom: 140px;
}

.header .menu-wrap > div {
  margin: auto;
  padding: 2em;
  width: 600px;
  height: 100%;
  overflow-y: auto;
}

@media (max-width: 768px) {
  .header .menu-wrap > div {
    padding: 2em 1em 1em;
    width: 100%;
  }
}

.header .menu-wrap .add-arrow {
  padding: 1em 2em 1em 1em;
  font-weight: bold;
  border-radius: 11px;
  border: 1px solid #fff;
}

.header .menu-wrap .add-arrow i {
  right: 5px;
  font-size: 10px;
  font-size: 1rem;
}

.header .menu-wrap .add-arrow span {
  color: #fff;
  font-size: 12px;
  font-size: 1.2rem;
  font-weight: normal;
  opacity: 1;
}

.header .menu-wrap a span {
  display: block;
  font-family: "Quicksand", sans-serif;
  font-weight: bold;
}

.header .menu-wrap ul a {
  font-size: 26px;
  font-size: 2.6rem;
}

.header .menu-wrap ul a span {
  font-size: 21px;
  font-size: 2.1rem;
}

.header .menu-wrap ul.list-styled-type1 li:before {
  top: 15px;
  bottom: auto;
}

.header .menu-wrap ul.list-styled-type1 a {
  font-size: 18px;
  font-size: 1.8rem;
}

.header .menu-wrap ul.list-styled-type1 a span {
  font-size: 12px;
  font-size: 1.2rem;
}

.header.menu-open .global-nav-inner .menu-wrap {
  display: block;
  height: 100vh;
  background: linear-gradient(284deg, #FF5A93 0%, #F05656 100%);
}

body.home .menu-icon > div:before, body.home .menu-icon > div:after {
  background: #131313;
}

body.home .menu-icon > div span {
  background: #131313;
}

body:not(.home) .menu-icon > div:before, body:not(.home) .menu-icon > div:after {
  background: #F53F70;
}

body:not(.home) .menu-icon > div span {
  background: #F53F70;
}

header.menu-open .menu-icon > div:before, header.menu-open .menu-icon > div:after {
  background: #fff;
}

header.menu-open .menu-icon > div span {
  background: #fff;
}

.menu-icon {
  cursor: pointer;
}

.menu-icon > div {
  position: relative;
  display: block;
  width: 24px;
  height: 18px;
  padding: 0;
  -webkit-transition: -webkit-transform .3s;
  transition: -webkit-transform .3s;
  transition: transform .3s;
  transition: transform .3s, -webkit-transform .3s;
  overflow: hidden;
}

.menu-icon > div:before, .menu-icon > div:after {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  right: 0;
  margin: auto;
  width: 100%;
  height: 2px;
  background: #F53F70;
  -webkit-transition: -webkit-transform .5s;
  transition: -webkit-transform .5s;
  transition: transform .5s;
  transition: transform .5s, -webkit-transform .5s;
}

.menu-icon > div:before {
  top: 0;
}

.menu-icon > div:after {
  bottom: 0;
}

.menu-icon > div span {
  position: absolute;
  top: 50%;
  -webkit-transform: translate(0, -50%);
          transform: translate(0, -50%);
  left: 0;
  right: 0;
  margin: auto;
  width: 100%;
  height: 2px;
  background: #F53F70;
  -webkit-transition: -webkit-transform .5s;
  transition: -webkit-transform .5s;
  transition: transform .5s;
  transition: transform .5s, -webkit-transform .5s;
  overflow: hidden;
  text-indent: 100%;
  white-space: nowrap;
}

.menu-icon > div.close {
  height: 22px;
}

.menu-icon > div.close:before {
  bottom: 0;
  -webkit-transform: translate(0, 0) rotate(45deg);
          transform: translate(0, 0) rotate(45deg);
}

.menu-icon > div.close:after {
  top: 0;
  -webkit-transform: translate(0, 0) rotate(-45deg);
          transform: translate(0, 0) rotate(-45deg);
}

.menu-icon > div.close span {
  display: none;
}

/*# sourceMappingURL=maps/base.css.map */
