#idButtonContainer {
  padding-top: 3px;
  padding-right: 5px;
}


#needAuth {
  text-align: center;
  padding: 20px 0;
}

#msgForm {
  display: none;
}

#needAuth span {
  cursor: pointer;
  border-bottom: 1px dashed;
}

#messageSent {
  display: none;
}

#messageSent h2 {
  margin: 140px 0 80px 0;
}

@media all and (max-width: 600px) {
  #messageSent {
    min-height: 240px;
  }

  #messageSent h2 {
    margin: 80px 0 40px 0;
  }
}

#messageSent button {
  padding: 0;
}

.video-box iframe {
  width: 786px;
  height: 436px;
}

@media all and (max-width: 1050px) {
  .video-box {
    width: auto !important;
  }
}

@media all and (max-width: 846px) {
  .video-box iframe {
    width: 560px;
    height: 315px;
  }
}

@media all and (max-width: 650px) {
  .video-box iframe {
    width: 260px;
    height: 147px;
  }
}

.header-top__menu a {
  font-size: 16px;
  text-decoration-line: underline;
  color: #FED543;
  display: inline-block;
  margin: 0 10px;
}

.count {
  color: #666;
  margin-bottom: 3.4rem;
  font-size: 14px;
  margin-top: 5px;
}

.empty-list {
  text-align: center;
  color: white;
  margin-bottom: 70px;
  font-style: italic;
}

.likes {
  border: 1px #ccc solid;
  padding: 5px 6px 3px 28px;
  height: 18px;
  background: url(../img/joy.png) 7px 50% no-repeat;
  border-radius: 10px;
  font-size: 14px;
  line-height: 18px;
  cursor: pointer;
  user-select: none;
}

.likes.voted {
  cursor: default;
  pointer-events: none;
}

html {
  font-size: 10px; }

html, body {
  padding: 0;
  margin: 0;
  min-height: 100%; }

.section--feed .subtitle:before {
  position: absolute;
  content: '';
  display: block;
  box-sizing: border-box; }

.btn, button {
  text-align: center;
  color: #000;
  border-radius: 3px;
  line-height: 5rem;
  text-decoration: none;
  padding: 0 4rem;
  cursor: pointer;
  margin-left: auto;
  margin-right: auto;
  display: block;
  transition: .4s;
  -webkit-tap-highlight-color: transparent;
  font-size: 2rem;
  width: 41.2rem;
  max-width: 100%;
  height: 5.7rem; }
  .btn:hover, button:hover {
    transform: translateY(-2px); }
  .btn:active, button:active {
    box-shadow: none;
    border: none; }
  .btn:focus, button:focus {
    outline: none;
    transform: scale(0.99); }

body {
  -webkit-text-size-adjust: none;
  overflow-x: hidden;
  -webkit-font-smoothing: antialiased;
  font-size: 1.6rem;
  font-family: 'Proxima','ProximaLight', 'Montserrat', sans-serif;
  color: #4e5567; }
  body.noscroll {
    overflow: hidden !important; }

.svg-uses {
  opacity: 0;
  height: 0;
  overflow: hidden;
  position: absolute;
  z-index: -2; }

.page {
  overflow: hidden;
  filter: blur(0);
  transition: .4s;
  will-change: filter;
  background: linear-gradient(194.95deg, #39526C 6.16%, #8550AF 75.02%); }

.container {
  max-width: 92%;
  width: 100%;
  margin-left: auto;
  margin-right: auto; }
  @media all and (min-width: 1300px) {
    .container {
      width: 1200px; } }

.wow {
  opacity: 0; }
  .wow.animated {
    opacity: 1; }

@font-face {
  font-family: ProximaBold;
  font-weight: bold;
  src: url("../fonts/ProximaNovaBlack.otf ") format("opentype"); }

@font-face {
  font-family: ProximaSemiBold;
  font-weight: bold;
  src: url("../fonts/ProximaNovaSemibold.otf ") format("opentype"); }

@font-face {
  font-family: Proxima;
  font-weight: normal;
  src: url("../fonts/ProximaNovaRegular.otf ") format("opentype"); }

@font-face {
  font-family: ProximaLight;
  font-weight: normal;
  src: url("../fonts/ProximaNovaLight.otf ") format("opentype"); }

@font-face {
  font-family: IntroScript;
  font-weight: bold;
  src: url("../fonts/IntroScriptR-H2Base.otf") format("opentype"); }

h2 {
  font-size: 6rem;
  line-height: 5rem;
  font-family: IntroScript;
  color: #fff;
  text-align: center;
  margin: 0; }
  @media all and (max-width: 600px) {
    h2 {
      font-size: 3rem;
      line-height: 4rem; } }

h3 {
  font-size: 2.8rem;
  color: #007d92;
  line-height: 1.2;
  font-weight: 400;
  margin: 0 0 1.6rem;
  font-family: Proxima; }

p {
  display: block;
  margin-bottom: 1.6rem; }

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

.mt-1 {
  margin-top: .9rem; }

.mt-2 {
  margin-top: 1.8rem; }

.mt-3 {
  margin-top: 2.7rem; }

.mt-4 {
  margin-top: 3.6rem; }

.mt-5 {
  margin-top: 4.5rem; }

.mb-1 {
  margin-bottom: .9rem; }

.mb-2 {
  margin-bottom: 1.8rem; }

.mb-3 {
  margin-bottom: 2.7rem; }

.mb-4 {
  margin-bottom: 3.6rem; }

.mb-5 {
  margin-bottom: 4.5rem; }

.btn, button {
  background-color: #FED543;
  border: none;
  border-radius: 3px; }
  .btn.btn-nobg, button.btn-nobg {
    background-color: transparent;
    color: #fff;
    border: 1px solid #fff; }

.ribbons {
  position: absolute; }

.topline {
  background: #fff;
  padding: 0 0 0 .5rem;
  display: flex;
  justify-content: space-between;
  align-items: center; }
  .topline a:link, .topline a:visited {
    display: inline-block;
    vertical-align: middle;
    color: #a29e9c;
    text-decoration: none; }
  .topline img {
    display: block; }
  .topline .action-logo img {
    vertical-align: middle;
    max-width: 85%; }

.header {
  padding: 0 0 5rem;
  position: relative;
  overflow: hidden; }
  .header .container {
    width: 1066px; }
  .header-top {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    padding: 5.4rem 0 2rem; }
    .header-top__logo {
      width: 16rem; }
      .header-top__logo img {
        max-width: 100%; }
    .header-top .socials-list {
      padding: 0;
      margin: 0;
      display: block;
      position: relative;
      z-index: 2; }
      .header-top .socials-list__item {
        display: inline-block;
        vertical-align: middle;
        margin-left: 1rem; }
        .header-top .socials-list__item a:hover {
          opacity: .8; }
@media all and (max-width: 750px) {
  .header-top {
    flex-wrap: wrap;
  }

  .header-top__menu {
    width: 100%;
    order: 1;
    text-align: center;
    margin-top: 20px;
  }
}

    @media all and (max-width: 600px) {
      .header-top {
        flex-direction: column-reverse; }
      .header-top__menu {
        order: 0;
        line-height: 25px;
      }



        .header-top .header-top__logo {
          text-align: center;
          margin-top: 3rem; } }
  .header-content {
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    flex-direction: column;
    text-align: center;
    color: #fff; }
    .header-content__text {
      font-size: 2.4rem;
      line-height: 3.5rem;
      max-width: 78rem;
      margin: 0 auto; }
      @media all and (max-width: 420px) {
        .header-content__text {
          font-size: 1.8rem;
          line-height: 2.4rem; } }
    .header-content .picture-box {
      text-align: center;
      position: relative;
      padding-top: 4rem;
      padding-bottom: 2rem; }
      .header-content .picture-box .main-pic {
        max-width: 100%;
        margin: 0 auto;
        display: block;
        width: 82rem; }
      .header-content .picture-box .ribbon {
        position: absolute;
        top: -50%;
        left: 0;
        z-index: -1;
        width: 100%;
        max-width: 100%; }
    .header-content__video .video-box {
      width: 78rem;
      max-width: 100%;
      margin: 4rem auto;
      position: relative; }
      .header-content__video .video-box .video-poster, .header-content__video .video-box video {
        max-width: 100%; }
      .header-content__video .video-box__btn {
        position: absolute;
        left: calc(50% - .5em);
        top: calc(50% - .5em);
        display: block;
        width: 1em;
        height: 1em;
        border-radius: 50%;
        font-size: 14rem;
        background: #4879D8;
        overflow: hidden;
        transition: opacity .4s;
        /*cursor: pointer;*/ }
        .header-content__video .video-box__btn:before {
          content: "";
          display: block;
          width: 0;
          height: 0;
          border-style: solid;
          border-width: .2em 0 .2em .4em;
          left: 35%;
          top: 31%;
          position: relative;
          border-color: transparent transparent transparent #ffffff; }
        /*.header-content__video .video-box__btn:hover {
          opacity: .8; }*/
        @media all and (max-width: 600px) {
          .header-content__video .video-box__btn {
            font-size: 6rem; } }
      .header-content__video .video-box .ribbon {
        position: absolute;
        top: -60rem;
        left: -20rem;
        z-index: -1;
        animation: sway1 6s infinite ease-in-out;
        transform-origin: 50% 0 0; }
        @media all and (max-width: 768px) {
          .header-content__video .video-box .ribbon {
            transform: scale(0.5); } }
    @media all and (max-width: 768px) {
      .header-content {
        padding: 0 2rem; }
        .header-content .pretitle {
          font-size: 1.4rem; }
        .header-content .title {
          font-size: 2.6rem;
          line-height: 3rem; }
        .header-content .buttons-box {
          display: block; }
          .header-content .buttons-box .btn {
            margin-bottom: 1.6rem; } }
  .header .ribbon0 {
    right: 0;
    top: 0;
    position: absolute; }
  .header .ribbon3 {
    right: 20rem;
    top: 20rem;
    position: absolute;
    animation: sway1 5s infinite ease-in-out;
    transform-origin: 50% 0 0; }
  @media all and (max-width: 1150px) {
    .header .ribbon0 {
      top: -5rem;
      right: -5rem; }
    .header .ribbon3 {
      display: none; } }
  @media all and (max-width: 768px) {
    .header {
      padding-bottom: 0; }
      .header .ribbon0 {
        transform: scale(0.5);
        top: -8rem;
        right: -11rem; } }

.section__header {
  position: relative;
  max-width: 100%;
  margin: 0 auto 4rem;
  width: 78rem; }
  .section__header h2 {
    line-height: 5rem;
    font-size: 6rem;
    text-align: center;
    color: #fff; }
  @media all and (max-width: 600px) {
    .section__header {
      padding: 2.8rem 0; }
      .section__header h2 {
        display: block;
        text-align: center;
        padding: 1rem;
        font-size: 2.3rem;
        line-height: 2.8rem;
        margin-right: 0; } }

.section__content {
  display: flex;
  justify-content: space-between;
  padding: 5rem 0 8rem;
  flex-wrap: wrap; }
  @media all and (max-width: 768px) {
    .section__content {
      padding: 2rem 0; } }
  .section__content .item__pic {
    width: 13.2rem;
    height: 13.2rem;
    border-radius: 50%;
    overflow: hidden;
    margin: 2.5rem 0; }
    .section__content .item__pic img {
      max-width: 100%; }
  .section__content .item__title {
    display: block;
    line-height: 3.5rem; }
  .section__content .item__text {
    font-size: 1.8rem;
    line-height: 1.44;
    color: #4e5567; }
  @media all and (max-width: 768px) {
    .section__content .item {
      flex: 100% 1 1;
      padding: 2rem; }
      .section__content .item .item__pic {
        margin: 2.5rem auto;
        width: 20rem;
        height: 20rem; } }

.section__caption {
  display: block;
  border-top: 1px solid #4e5567;
  width: 84rem;
  max-width: 100%;
  margin: 5rem auto;
  padding-top: 3.4rem;
  font-size: 3rem;
  line-height: 4rem;
  text-align: center; }
  .section__caption p {
    margin-bottom: 2.7rem; }
  .section__caption .btn {
    font-size: 1.8rem; }
  @media all and (max-width: 768px) {
    .section__caption {
      font-size: 2rem;
      line-height: 3rem; } }

.section--feed .title {
  margin-bottom: 4rem; }

.section--feed .subtitle {
  color: #fff;
  font-size: 2.4rem;
  line-height: 2.9rem;
  text-align: center;
  position: relative;
  width: 62rem;
  margin: 0 auto 4rem;
  max-width: 100%; }
  @media all and (max-width: 600px) {
    .section--feed .subtitle {
      font-size: 1.6rem; }
      .section--feed .subtitle:before {
        display: none; } }
  .section--feed .subtitle:before {
    bottom: -10.6rem;
    right: -1.6rem;
    background: url(../img/pic/arrow.svg) no-repeat;
    background-size: contain;
    height: 10.5rem;
    width: 10rem; }

.section--feed .section__content {
  padding-top: 0; }

.section--feed .msg-box {
  background: #fff;
  width: 78rem;
  max-width: 100%;
  padding: 2.7rem 9.3rem 4.2rem;
  box-sizing: border-box;
  margin: 2.2rem auto;
  min-height: 538px;
}

@media (max-width: 768px) {
  .section--feed .msg-box {
    min-height: 0;
  }

}
  @media all and (max-width: 600px) {
    .section--feed .msg-box {
      padding: 2rem;
      margin-top: -10rem;
    } }
  .section--feed .msg-box h2 {
    color: #435466;
    margin-bottom: 2rem; }
  .section--feed .msg-box label {
    position: relative;
    display: block;
    margin-bottom: 1.5rem; }
  .section--feed .msg-box input {
    border: 1px solid #E5E5E5;
    display: block;
    width: 100%;
    box-sizing: border-box;
    height: 5rem;
    padding: 1.8rem 1rem .7rem;
    font-size: 2rem; }
    .section--feed .msg-box input:focus {
      outline: none;
      box-shadow: 0 0 1rem rgba(0, 0, 0, 0.1) inset; }
  .section--feed .msg-box .placeholder {
    position: absolute;
    top: .6rem;
    left: 1.2rem;
    display: block;
    width: 80%;
    font-size: 1.2rem; }
  .section--feed .msg-box textarea {
    border: 1px solid #E5E5E5;
    width: 100%;
    resize: none;
    min-height: 22rem;
    display: block;
    box-sizing: border-box;
    padding: 1rem;
    font-size: 1.9rem;
    line-height: 2.4rem;
    color: #435466;
    }
    .section--feed .msg-box textarea:focus {
      outline: none;
      box-shadow: 0 0 1rem rgba(0, 0, 0, 0.1) inset; }

.section--reviews .section__content {
  padding-top: 2rem; }

.section--reviews .reviews-list {
  display: flex;
  width: 100%;
  justify-content: center;
  flex-wrap: wrap; }
  .section--reviews .reviews-list__item {
    flex: calc(33.3% - 1.6rem) 0 0;
    margin: 0 1.6rem 1.6rem 0; }

.section--reviews .feedback {
  position: relative;
  border-radius: .3rem;
  background: #fff;
  box-shadow: 0px 3px 9px rgba(0, 0, 0, 0.02);
  border: 1px solid #E6E6E6;
  padding: 2.7rem 2.2rem 1rem; }
  .section--reviews .feedback-pic {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: .8rem; }
    .section--reviews .feedback-pic .feedback-userpic {
      width: 4.5rem;
      height: 4.5rem;
      flex: 4.5rem 0 0;
      border-radius: 50%;
      overflow: hidden;
      margin-right: 1.7rem; }
      .section--reviews .feedback-pic .feedback-userpic img {
        max-width: 100%;
        width: 100%; }
    .section--reviews .feedback-pic .feedback-title {
      font-size: 1.7rem; }
  .section--reviews .feedback-text {
    font-size: 1.7rem;
    margin-bottom: 2.7rem;
    min-height: 12rem;
    line-height: 2.1rem; }

.section--reviews .button-box {
  text-align: center;
  width: 100%;
  margin-top: 4.6rem; }
  .section--reviews .button-box .btn {
    width: 368px;
    max-width: 100%;
    box-sizing: border-box;
    display: inline-block;
    line-height: 5.7rem; }

@media all and (max-width: 768px) {
  .section--reviews .reviews-list {
    width: 100%; }
    .section--reviews .reviews-list__item {
      margin: 0 auto 1.6rem;
      max-width: 100%;
      flex: 48% 0 0; } }

@media all and (max-width: 600px) {
  .section--reviews .section__header {
    margin-bottom: 0; }
    .section--reviews .section__header h2 {
      font-size: 3rem; }
  .section--reviews .reviews-list__item {
    flex: 100% 0 0; } }

.section--gift {
  background: url(../img/pic/ribbon2.png) 50% 50% no-repeat;
  color: #fff; }
  @media all and (max-width: 768px) {
    .section--gift {
      padding-top: 12rem; } }
  @media all and (max-width: 600px) {
    .section--gift .section__header h2 {
      font-size: 4rem; }
    .section--gift .section__content p {
      font-size: 1.8rem;
      line-height: 2.4rem; } }
  .section--gift .section__content {
    padding-top: 0;
    margin-bottom: 10rem; }
    .section--gift .section__content p {
      width: 78rem;
      max-width: 100%;
      display: block;
      margin: 0 auto 2em;
      text-align: center; }
  .section--gift p {
    font-size: 2.4rem;
    line-height: 31px; }
  .section--gift .btn {
    line-height: 5.7rem; }

.section .ribbon {
  position: absolute;
  top: -20rem;
  left: 5%;
  z-index: -1;
  animation: sway1 8s infinite ease-in-out;
  transform-origin: 50% 0 0; }

.section .ribbon2 {
  position: absolute;
  top: 20rem;
  left: 70vw;
  z-index: -1;
  animation: sway1 7s infinite ease-in-out;
  transform-origin: 50% 0 0; }

@media all and (max-width: 1150px) {
  .section .ribbon {
    top: -50rem; }
  .section .ribbon2 {
    left: 90rem; } }

.footer-line {
  display: flex;
  justify-content: space-between;
  padding: 5rem 0 6rem;
  border-top: 1px solid #C6C6C6; }

.footer .copyright {
  font-size: 1.3rem;
  margin-right: 8rem; }
  .footer .copyright div {
    margin-bottom: 1.6rem;
    color: #fff; }
  .footer .copyright a, .footer .copyright a:link, .footer .copyright a:visited {
    color: #fff;
    display: inline-block;
    margin-right: 1rem;
    text-decoration: none;
    border-bottom: 1px solid #b9b0b0;
    transition: .4s; }
  .footer .copyright a:hover {
    border-color: transparent; }

.footer .footer-contact span {
  display: block;
  font-size: 1.3rem;
  margin-bottom: 1rem;
  color: #fff; }

.footer .footer-contact .phone {
  display: block;
  font-size: 1.8rem;
  font-weight: bold;
  text-decoration: none;
  color: #fff; }

.footer .footer-logo {
  padding-left: 2rem;
  text-align: right; }
  .footer .footer-logo img {
    max-width: 100%;
    width: 24rem; }

@media all and (max-width: 600px) {
  .footer .footer-line {
    flex-direction: column-reverse; }
  .footer .footer-logo {
    text-align: center; }
  .footer .footer-contact {
    text-align: center;
    margin-top: 3rem; }
    .footer .footer-contact .phone {
      font-size: 3rem; }
  .footer .copyright {
    margin: 3rem  auto 0;
    text-align: center; }
    .footer .copyright a, .footer .copyright a:link, .footer .copyright a:visited {
      display: block;
      font-size: 1.2rem;
      text-align: center;
      border-bottom: none;
      margin-bottom: 1rem; } }

@keyframes sway1 {
  0%, 100% {
    transform: rotate(-7deg) scale(1, 1.16); }
  50% {
    transform: rotate(6deg); } }

@media all and (min-width: 1700px) {
  html {
    font-size: 10px; } }

@media all and (min-width: 2000px) {
  html {
    font-size: 14px; } }

@media all and (min-width: 3000px) {
  html {
    font-size: 32px; } }

@media all and (max-width: 1050px) {
  html {
    font-size: 8px; } }

@media all and (max-width: 980px) {
  html {
    font-size: 7px; } }

@media all and (max-width: 768px) {
  html {
    font-size: 6px; } }

@media all and (max-width: 600px) {
  html {
    font-size: 12px; } }

@media all and (max-width: 440px) {
  html {
    font-size: 10px; } }

@media all and (max-width: 340px) {
  html {
    font-size: 9px; } }

@media all and (max-width: 600px) {
  .header-top__logo img {
    width: 14rem; }
  .header-content .event-name {
    font-size: 2rem; } }

@media (min-width: 600px) and (max-width: 768px) {
  .btn {
    font-size: 2em; } }
