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

body,
html {
  margin: 0;
  padding: 0;
}

body {
  font-family: "Lato", sans-serif;
  font-weight: 400;
  overflow-x: hidden !important;
}

.container {
  max-width: 1110px;
  margin-left: auto;
  margin-right: auto;
}

.btn {
  display: inline-block;
  font-size: 15px;
  text-transform: uppercase;
  background: #f42e6c;
  color: #fff;
  font-family: "Lato", sans-serif;
  font-weight: 700;
  outline: none;
  text-align: center;
  padding: 12px 33px;
  text-decoration: none;
  border: 2px solid #f42e6c;
  -webkit-border-radius: 40px;
  -moz-border-radius: 40px;
  border-radius: 40px;
  -moz-transition: all 0.3s;
  -o-transition: all 0.3s;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
.btn:focus, .btn:hover {
  background: transparent;
  outline: none;
}

header {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 99998;
  background: #1d0042;
  -moz-transition: all 0.3s;
  -o-transition: all 0.3s;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
header .logo {
  margin-top: 6px;
  display: block;
  float: left;
  max-width: 164px;
  -moz-transition: all 0.3s;
  -o-transition: all 0.3s;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
header .logo img {
  -moz-transition: all 0.3s;
  -o-transition: all 0.3s;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  width: 100%;
}
header nav {
  display: block;
  width: 100%;
}
header nav ul {
  margin: 0;
  padding: 0;
  float: right;
}
header nav ul li {
  list-style: none;
  float: left;
  padding: 0 20px;
}
header nav ul li a {
  text-transform: uppercase;
  font-size: 13px;
  font-weight: 600;
  text-decoration: none;
  padding: 31px 0;
  display: block;
  color: #fff;
  -moz-transition: all 0.3s;
  -o-transition: all 0.3s;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  font-family: "Lato", sans-serif;
  font-weight: 900;
  border-bottom: 2px solid #1d0042;
}
header nav ul li a:focus {
  outline: none;
}
header nav ul li a.active {
  color: #f42e6c;
  border-bottom: 2px solid #f42e6c;
}
header nav ul li.lang {
  padding: 25px 0 0 10px;
  -moz-transition: all 0.3s;
  -o-transition: all 0.3s;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
header nav ul li.lang a {
  padding: 5px;
  border: 1px solid #fff;
  font-size: 10px;
  display: inline-block;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  border-radius: 50%;
}
header nav ul li.lang a.selected {
  color: #f42e6c;
}
header.header-scroll .logo {
  margin-top: 8px;
}
header.header-scroll .logo img {
  width: 85px;
}
header.header-scroll nav ul li a {
  padding: 16px 0;
}
header.header-scroll nav ul li.lang {
  padding: 10px 0 0 10px;
}
header.header-scroll nav ul li.lang a {
  padding: 5px;
}
header.header-scroll #toggle_menu {
  top: 10px;
}
@media screen and (max-width: 1200px) {
  header .container {
    padding-left: 10px;
    padding-right: 10px;
  }
}
@media screen and (max-width: 992px) {
  header nav ul {
    display: none;
    padding-top: 100px;
  }
  header nav ul.mobile-menu {
    text-align: center;
    display: block;
    position: fixed;
    top: 0px;
    left: 0;
    width: 100%;
    height: 100%;
    background: #1d0042;
  }
  header nav ul.mobile-menu li {
    float: none;
  }
  header nav ul.mobile-menu li.lang {
    padding: 10px 0 0 0;
  }
  header nav ul.mobile-menu li.lang a {
    padding: 5px 5px;
  }
  header nav ul.mobile-menu li a {
    padding: 20px 0;
  }
  header #toggle_menu {
    display: block;
  }
  header .logo {
    margin-left: 30px;
  }
}
@media screen and (max-width: 768px) {
  header nav ul {
    padding-top: 5%;
  }
  header nav ul.mobile-menu li.lang a {
    padding: 5px !important;
  }
  header nav ul.mobile-menu li a {
    padding: 16px 0;
  }
  header .logo {
    margin-left: 5px;
  }
}
@media screen and (max-width: 732px) {
  header nav ul.mobile-menu li a {
    padding: 8px 0;
  }
}
@media screen and (max-width: 480px) {
  header nav ul.mobile-menu li a {
    padding: 7px 0;
  }
}
@media only screen and (min-device-width: 320px) and (max-device-width: 640px) and (orientation: landscape) {
  header nav ul {
    padding-top: 1% !important;
  }
}

section {
  transform: translate3d(0, 0, 0);
}
section.about-us {
  background: url(assets/images/main-bg.jpg) no-repeat right bottom;
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -o-background-size: cover;
  background-size: cover;
  height: 100vh;
  text-align: center;
  display: flex;
  justify-content: center;
  align-content: center;
  flex-direction: column;
}
section.about-us ul#about-scene {
  position: absolute;
  bottom: 0;
  list-style-type: none;
  margin: 0;
  padding: 0;
  z-index: 1;
  width: 100%;
  height: 100%;
  overflow: hidden;
}
section.about-us ul#about-scene li {
  height: 100vh;
  width: 100%;
}
section.about-us ul#about-scene li.rays img {
  position: absolute;
  bottom: 12px;
  right: 0;
}
section.about-us ul#about-scene li.casino-elements img {
  position: absolute;
  bottom: 120px;
  right: -50px;
}
section.about-us ul#about-scene li.spade img {
  position: absolute;
  bottom: 340px;
  right: 350px;
}
section.about-us ul#about-scene li.first-main {
  position: absolute;
  left: 70px;
  bottom: -15px;
  width: 436px;
  height: 706px;
  overflow: hidden;
  background-image: url("assets/images/DwarfSprite.png");
  background-repeat: no-repeat;
  background-position-y: 0;
  background-position-x: -4802px;
}
section.about-us ul#about-scene li.first-main.appear {
  animation: dwarf-appear 0.7s steps(8) forwards;
}
section.about-us ul#about-scene li.first-main.disappear {
  animation: dwarf-disappear 0.4s steps(3) forwards;
}
@keyframes dwarf-appear {
  0% {
    background-position-x: 0px;
  }
  100% {
    background-position-x: -3488px;
  }
}
@keyframes dwarf-disappear {
  0% {
    background-position-x: -3488px;
  }
  100% {
    background-position-x: -4802px;
  }
}
section.about-us ul#about-scene li.first-main .sheriff-front {
  position: absolute;
  left: 85px;
  bottom: -105px;
  width: 476px;
  height: 916px;
  overflow: hidden;
  background-image: url("assets/images/SheriffFrontSprite.png");
  background-repeat: no-repeat;
  background-position-y: 0;
  background-position-x: -5238px;
  transform: scale(0.8);
}
section.about-us ul#about-scene li.first-main .sheriff-front.appear {
  animation: sheriff-front-appear 0.7s steps(8) forwards;
}
section.about-us ul#about-scene li.first-main .sheriff-front.disappear {
  animation: sheriff-front-disappear 0.4s steps(3) forwards;
}
@keyframes sheriff-front-appear {
  0% {
    background-position-x: 0px;
  }
  100% {
    background-position-x: -3810px;
  }
}
@keyframes sheriff-front-disappear {
  0% {
    background-position-x: -3810px;
  }
  100% {
    background-position-x: -5238px;
  }
}
section.about-us ul#about-scene li.first-main .mrspaddy {
  position: absolute;
  left: 77px;
  bottom: -20px;
  width: 434px;
  height: 611px;
  overflow: hidden;
  background-image: url("assets/images/MrsPaddySprite.png");
  background-repeat: no-repeat;
  background-position-y: 0;
  background-position-x: -4769px;
}
section.about-us ul#about-scene li.first-main .mrspaddy.appear {
  animation: mrspaddy-appear 0.7s steps(8) forwards;
}
section.about-us ul#about-scene li.first-main .mrspaddy.disappear {
  animation: mrspaddy-disappear 0.4s steps(3) forwards;
}
@keyframes mrspaddy-appear {
  0% {
    background-position-x: 0px;
  }
  100% {
    background-position-x: -3472px;
  }
}
@keyframes mrspaddy-disappear {
  0% {
    background-position-x: -3472px;
  }
  100% {
    background-position-x: -4769px;
  }
}
section.about-us ul#about-scene li.second-main .dwarfball {
  position: absolute;
  left: 444px;
  bottom: 28px;
  width: 251px;
  height: 283px;
  overflow: hidden;
  background-image: url("assets/images/DwarfBallSprite.png");
  background-repeat: no-repeat;
  background-position-y: 0;
  background-position-x: -2766px;
}
section.about-us ul#about-scene li.second-main .dwarfball.appear {
  animation: dwarfball-appear 0.7s steps(8) forwards;
}
section.about-us ul#about-scene li.second-main .dwarfball.disappear {
  animation: dwarfball-disappear 0.4s steps(3) forwards;
}
@keyframes dwarfball-appear {
  0% {
    background-position-x: 0px;
  }
  100% {
    background-position-x: -2008px;
  }
}
@keyframes dwarfball-disappear {
  0% {
    background-position-x: -2008px;
  }
  100% {
    background-position-x: -2766px;
  }
}
section.about-us ul#about-scene li.second-main .sheriff-back {
  position: absolute;
  left: 310px;
  bottom: 25px;
  width: 476px;
  height: 613px;
  overflow: hidden;
  background-image: url("assets/images/SheriffBackSprite.png");
  background-repeat: no-repeat;
  background-position-y: 0;
  background-position-x: -5232px;
  transform: scale(0.8);
}
section.about-us ul#about-scene li.second-main .sheriff-back.appear {
  animation: sheriff-back-appear 0.7s steps(8) forwards;
}
section.about-us ul#about-scene li.second-main .sheriff-back.disappear {
  animation: sheriff-back-disappear 0.4s steps(3) forwards;
}
@keyframes sheriff-back-appear {
  0% {
    background-position-x: 0px;
  }
  100% {
    background-position-x: -3805px;
  }
}
@keyframes sheriff-back-disappear {
  0% {
    background-position-x: -3805px;
  }
  100% {
    background-position-x: -5232px;
  }
}
section.about-us ul#about-scene li.second-main .mrpaddy {
  position: absolute;
  left: 355px;
  bottom: -20px;
  width: 444px;
  height: 565px;
  overflow: hidden;
  background-image: url("assets/images/MrPaddySprite.png");
  background-repeat: no-repeat;
  background-position-y: 0;
  background-position-x: -4879px;
}
section.about-us ul#about-scene li.second-main .mrpaddy.appear {
  animation: mrpaddy-appear 0.7s steps(8) forwards;
}
section.about-us ul#about-scene li.second-main .mrpaddy.disappear {
  animation: mrpaddy-disappear 0.4s steps(3) forwards;
}
@keyframes mrpaddy-appear {
  0% {
    background-position-x: 0px;
  }
  100% {
    background-position-x: -3548px;
  }
}
@keyframes mrpaddy-disappear {
  0% {
    background-position-x: -3548px;
  }
  100% {
    background-position-x: -4879px;
  }
}
section.about-us #main_about {
  z-index: 10;
}
section.about-us .info h1 {
  font-size: 62px;
  line-height: 82px;
  margin: 0;
  color: #fff;
  text-shadow: -1px 2px 2px rgba(0, 0, 0, 0.2);
}
section.about-us .info p {
  font-size: 16px;
  margin: 50px auto 0 auto;
  color: #fff;
  max-width: 700px;
  text-shadow: -1px 2px 2px rgba(0, 0, 0, 0.2);
}
section.about-us .info .welcome {
  font-size: 70px;
  margin-bottom: 25px;
}
section.about-us .info .company {
  font-size: 120px;
}
section.about-us .info .owner {
  font-size: 40px;
}
section.about-us .btn {
  margin: 60px auto 0 auto;
  max-width: 280px;
  display: inline-block;
}
section.about-us .scroll {
  position: absolute;
  bottom: 26px;
  left: 50%;
  margin-left: -8px;
  width: 15px;
  height: 24px;
  z-index: 299;
}
section.about-us .scroll:after {
  content: "";
  position: absolute;
  height: 20px;
  width: 1px;
  background: #fff;
  bottom: -25px;
  left: 50%;
  margin-left: 0px;
}
section.about-us .scroll .svg path {
  fill: #fff;
}
@media screen and (max-width: 992px) {
  section.about-us .info .company {
    font-size: 90px;
  }
  section.about-us .scroll {
    bottom: 26px;
  }
}
@media screen and (max-width: 600px) {
  section.about-us {
    padding-left: 20px;
    padding-right: 20px;
  }
  section.about-us .info h1 {
    font-size: 38px;
    line-height: 46px;
  }
}
@media screen and (max-width: 480px) {
  section.about-us .info h1 {
    font-size: 28px;
    line-height: 46px;
  }
  section.about-us .info p {
    margin-top: 20px;
    padding: 0 5px;
  }
  section.about-us .btn {
    margin-top: 30px;
  }
}
@media screen and (device-width: 360px) and (device-height: 640px) {
  section.about-us .info h1 {
    font-size: 30px;
    line-height: 35px;
  }
}
section .section-header {
  display: flex;
  align-items: center;
}
section.gallery, section.vision, section.mission, section.portfolio, section.careers {
  background-color: white;
  position: relative;
  padding: 110px 20px 30px 20px;
  min-height: 765px;
}
section.gallery img.flutter-logo, section.vision img.flutter-logo, section.mission img.flutter-logo, section.portfolio img.flutter-logo, section.careers img.flutter-logo {
  width: 120px;
  transform: rotateZ(-180deg) scale(0.66);
  margin-top: 10px;
}
section.gallery img.flutter-logo.huge, section.vision img.flutter-logo.huge, section.mission img.flutter-logo.huge, section.portfolio img.flutter-logo.huge, section.careers img.flutter-logo.huge {
  position: absolute;
  width: unset;
  height: 25vw;
  transform: scale(1) rotate(180deg);
  margin-top: 0;
}
section.gallery img.flutter-logo.bottom-left, section.vision img.flutter-logo.bottom-left, section.mission img.flutter-logo.bottom-left, section.portfolio img.flutter-logo.bottom-left, section.careers img.flutter-logo.bottom-left {
  position: absolute;
  left: 20px;
  bottom: -30px;
  transform: rotateZ(90deg) scale(0.66);
  margin-top: 0;
}
section.gallery img.flutter-logo.top-right, section.vision img.flutter-logo.top-right, section.mission img.flutter-logo.top-right, section.portfolio img.flutter-logo.top-right, section.careers img.flutter-logo.top-right {
  position: absolute;
  right: 25px;
  top: -25px;
  transform: rotateZ(90deg) scale(0.66);
  margin-top: 0;
}
section.gallery h2, section.vision h2, section.mission h2, section.portfolio h2, section.careers h2 {
  color: #fff;
  font-size: 140px;
  line-height: 100%;
  font-family: "Lato", sans-serif;
  margin: 0;
  text-transform: uppercase;
}
section.gallery p, section.vision p, section.mission p, section.portfolio p, section.careers p {
  position: relative;
  min-height: 58px;
  max-width: 770px;
  margin: 0 auto 62px auto;
  color: white;
  font-size: 32px;
  line-height: 18px;
  text-align: left;
  opacity: 0.75;
  z-index: 1;
}
@media screen and (max-width: 992px) {
  section.gallery h2, section.vision h2, section.mission h2, section.portfolio h2, section.careers h2 {
    font-size: 90px;
  }
}
@media screen and (max-width: 600px) {
  section.gallery, section.vision, section.mission, section.portfolio, section.careers {
    padding: 30px 30px 30px;
  }
  section.gallery h2, section.vision h2, section.mission h2, section.portfolio h2, section.careers h2 {
    font-size: 60px;
  }
}
section#mission {
  background: #111230;
}
section#mission h2 {
  top: 33%;
  right: 15px;
  left: unset;
}
section#mission .vision-header-logo {
  position: absolute;
  left: -145px;
}
section#mission .vision-header-logo.huge {
  right: unset;
  left: 0;
  top: 0;
  bottom: unset;
  transform: rotateZ(0deg);
}
section#mission .vision-header-logo.top-right {
  right: 60px;
  left: unset;
  transform: rotateZ(90deg);
  top: 10px;
}
section.careers {
  background: #111230;
  position: relative;
  padding-bottom: 60px;
  padding-top: 130px;
  min-height: 765px;
}
section.careers .header h3 {
  color: #000;
  opacity: 0.15;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=15)";
  filter: alpha(opacity=15);
  font-size: 205px;
  line-height: 100%;
  font-family: "Lato", sans-serif;
  font-weight: 900;
  position: absolute;
  top: 45px;
  left: 15px;
  text-transform: uppercase;
  z-index: 0;
  margin: 0;
}
section.careers .header p {
  color: #000;
  font-size: 32px;
  opacity: 0.5;
  min-height: 58px;
  text-align: left;
  margin: 0px 0 52px 0;
  position: relative;
  z-index: 1;
  max-width: 747px;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (max-width: 1200px) {
  section.careers .tabs-container .careers-info {
    padding-right: 10px;
  }
}
@media screen and (max-width: 1024px) {
  section.careers .tabs li:hover a {
    color: #000;
  }
  section.careers .tabs li:hover a:after {
    display: none;
  }
}
@media screen and (max-width: 990px) {
  section.careers {
    padding: 40px 30px 30px;
  }
  section.careers .header h3 {
    font-size: 120px;
    text-align: center;
    position: relative;
    top: initial;
    left: initial;
  }
  section.careers .header p {
    margin: -49px auto 33px auto;
    text-align: center;
    min-height: auto;
    width: auto;
    font-size: 20px;
  }
  section.careers .left-tabs {
    width: 100%;
    background: #fff;
  }
  section.careers .left-tabs ul {
    float: none;
    margin: 0 auto 30px auto;
    border: 1px solid #f42e6c;
    -webkit-border-radius: 8px;
    -moz-border-radius: 8px;
    border-radius: 8px;
    max-width: 320px;
    min-height: 48px;
    position: relative;
  }
  section.careers .left-tabs ul li a {
    visibility: hidden;
    opacity: 0;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
    filter: alpha(opacity=0);
    -moz-transition: 0.3s ease-in-out;
    -o-transition: 0.3s ease-in-out;
    -webkit-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
  }
  section.careers .left-tabs ul li a.active {
    visibility: visible;
    opacity: 1;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
    filter: alpha(opacity=100);
    z-index: 9999;
  }
  section.careers .left-tabs ul.select {
    padding-top: 48px;
  }
  section.careers .left-tabs ul.select li a {
    visibility: visible;
    opacity: 1;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
    filter: alpha(opacity=100);
    position: relative;
  }
  section.careers .left-tabs ul.select li a.active {
    top: 0;
    position: absolute;
    bottom: initial;
    height: 47px;
    -webkit-border-radius: 6px 6px 0 0;
    -moz-border-radius: 6px 6px 0 0;
    border-radius: 6px 6px 0 0;
  }
  section.careers .tabs-container {
    width: 100%;
    min-height: initial;
    height: auto;
    padding-left: 0;
  }
  section.careers .tabs {
    padding-left: 0;
  }
  section.careers .tabs li a.active {
    margin-right: 0;
    -webkit-border-radius: 6px;
    -moz-border-radius: 6px;
    border-radius: 6px;
  }
  section.careers .tabs li a.active:after {
    margin: 2px 0 0 0;
    -moz-transform: rotate(90deg);
    -o-transform: rotate(90deg);
    -ms-transform: rotate(90deg);
    -webkit-transform: rotate(90deg);
    transform: rotate(90deg);
    opacity: 1;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
    filter: alpha(opacity=100);
    visibility: visible;
    display: inline-block;
  }
}
@media screen and (max-width: 600px) {
  section.careers {
    padding-top: 32px;
  }
  section.careers .header h3 {
    font-size: 60px;
  }
  section.careers .header p {
    margin: 0 auto 17px auto;
  }
  section.careers .left-tabs ul {
    max-width: initial;
    width: 100%;
  }
  section.careers .tabs-container .careers-info {
    padding-right: 0;
  }
  section.careers .careers-article {
    display: block;
    width: 100%;
  }
  section.careers .careers-article .img-box {
    width: 100%;
    height: 83px;
    display: block;
    -webkit-border-radius: 4px 4px 0 0;
    -moz-border-radius: 4px 4px 0 0;
    border-radius: 4px 4px 0 0;
  }
  section.careers .careers-article .img-box a {
    height: auto;
    line-height: 87px;
  }
  section.careers .careers-article .article-info {
    width: 100%;
  }
}
section.portfolio {
  position: relative;
  min-height: 770px;
  padding: 30px 5px 10px 5px;
  background-image: url(assets/images/portfolio_left.png), url(assets/images/portfolio_center.png), url(assets/images/portfolio_right.png);
  background-repeat: no-repeat, no-repeat, no-repeat;
  background-size: contain, contain, contain;
  background-position: left bottom, center, right bottom;
}
@media screen and (max-width: 1450px) {
  section.portfolio {
    background-image: url(assets/images/portfolio_center.png);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
  }
}
section.portfolio h2 {
  color: #111230;
}
section.portfolio h1 {
  position: absolute;
  bottom: 20vh;
  color: #111230;
  width: 100%;
  text-align: center;
  font-size: 22px;
}
section.portfolio #flutterstudios-btn {
  display: flex;
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  bottom: 14vh;
  padding: 5px 33px;
  text-transform: lowercase;
  font-size: 1em;
  transition: none;
}
section.portfolio #flutterstudios-btn .btn-text {
  background-color: #f4316d;
  border-radius: 20px;
  padding: 0px 5px;
  z-index: 1;
  line-height: 15px;
}
section.portfolio #flutterstudios-btn .circle {
  width: 18px;
  height: 18px;
  background-color: white;
  margin-left: -4px;
  border-radius: 50%;
}
section.portfolio #flutterstudios-btn:hover {
  color: #111230;
  transition: none;
}
section.portfolio #flutterstudios-btn:hover .btn-text {
  background-color: white;
  transition: none;
}
section.portfolio #flutterstudios-btn:hover .circle {
  background-color: #f4316d;
  transition: none;
}
@media screen and (max-width: 1200px) {
  section.portfolio h3 {
    font-size: 120px;
    top: 18px;
  }
  section.portfolio p {
    margin: 66px 0 63px 310px;
  }
}
@media screen and (max-width: 990px) {
  section.portfolio {
    padding-left: 10px;
    padding-right: 10px;
  }
  section.portfolio h3 {
    font-size: 120px;
    position: relative;
    top: initial;
    right: initial;
    text-align: center;
  }
  section.portfolio p {
    max-width: initial;
    width: auto;
    margin: -50px 0 20px 0;
    text-align: center;
    font-size: 20px;
  }
  section.portfolio .portfolio-listing {
    padding-top: 30px;
  }
  section.portfolio .portfolio-listing h3 {
    top: 49px;
  }
  section.portfolio .portfolio-listing p {
    margin: 0px 0 40px 0;
  }
  section.portfolio .portfolio-listing.full-portfolio {
    padding-top: 10px;
  }
  section.portfolio .portfolio-listing.full-portfolio p {
    margin: 0px 0 15px 0px;
  }
}
@media screen and (max-width: 768px) {
  section.portfolio h3 {
    font-size: 100px;
  }
  section.portfolio .portfolio-listing h3 {
    top: 51px;
  }
  section.portfolio .portfolio-listing p {
    margin: 46px 0 40px 0;
    min-height: 38px;
  }
}
@media screen and (max-width: 600px) {
  section.portfolio h3 {
    font-size: 60px;
  }
  section.portfolio p {
    margin: 10px 0;
  }
  section.portfolio .portfolio-listing .tabs li {
    margin: 0 5px;
    min-width: initial;
    width: 100%;
  }
  section.portfolio .portfolio-listing .tabs li a {
    padding: 10px 15px;
    font-size: 13px;
  }
  section.portfolio .portfolio-listing .tabs li a:after {
    display: none;
  }
}
@media screen and (max-width: 480px) {
  section.portfolio h3 {
    font-size: 47px;
  }
  section.portfolio .portfolio-listing .tabs li {
    display: block;
  }
  section.portfolio .portfolio-listing .tabs li a:after {
    display: none;
  }
}

footer {
  position: relative;
  text-align: center;
  padding: 35px 0 15px 0;
}
footer h3 {
  text-transform: uppercase;
  font-family: "Lato", sans-serif;
  font-weight: 900;
  margin: 0;
  font-size: 77px;
  height: 82px;
  line-height: 140%;
  color: #f42e6c;
  position: relative;
  z-index: 1;
  display: inline-block;
}
footer .box {
  width: 475px;
  height: 233px;
  margin: -5px auto 0 auto;
  background: #fff;
  position: relative;
  z-index: 1;
}
footer .box .left {
  background: #f42e6c url(assets/images/box-bg.png) no-repeat center center;
  float: left;
  width: 50%;
  display: flex;
  justify-content: center;
  align-content: center;
  flex-direction: column;
  height: 100%;
}
footer .box .left p {
  color: #fff;
  text-align: center;
  margin: 0 auto;
  max-width: 170px;
  width: 100%;
}
footer .box .right {
  float: left;
  width: 50%;
  height: 100%;
}
footer .box .right .right-info-wrapper {
  display: inline-block;
  position: relative;
  top: 50%;
  transform: translateY(-50%);
}
footer .box .right .right-info-wrapper .info:nth-child(2) {
  margin-top: 30px;
}
footer .box .right .info {
  text-align: left;
}
footer .box .right .info span {
  display: block;
  font-size: 13px;
  color: #000;
}
footer .box .right .info span a {
  color: #000;
}
footer .box .right .info .title {
  font-family: "Lato", sans-serif;
  font-weight: 700;
}
footer .social {
  margin: 255px auto 25px auto;
  text-align: center;
  padding: 0;
  position: relative;
  z-index: 1;
  display: block;
  max-width: 320px;
}
footer .social li {
  list-style: none;
  display: inline-block;
  margin: 0 8px;
}
footer .social li a {
  display: block;
}
footer .social li a .svg {
  width: 46px;
  height: 46px;
  display: inline-block;
}
footer .bottom-info {
  display: inline-block;
  margin: 0;
  font-size: 13px;
  color: #000;
  position: relative;
  z-index: 1;
}
footer .bottom-info span {
  color: #797979;
  margin: 0 10px;
}
@media screen and (max-width: 992px) {
  footer {
    padding-top: 29px;
  }
}
@media screen and (max-width: 680px) {
  footer {
    padding-left: 30px;
    padding-right: 30px;
    padding-top: 77px;
    overflow: hidden;
  }
  footer #map {
    max-height: 900px;
  }
  footer h3 {
    margin: 0 0 -26px 0;
  }
  footer .box {
    width: 100%;
    max-width: 475px;
    display: inline-block;
    height: auto;
  }
  footer .box .left p {
    margin: 25px auto;
  }
  footer .box .left,
  footer .box .right {
    width: 100%;
    display: inline-block;
    float: none;
  }
  footer .box .right {
    background: #fff;
    padding: 10px 0;
  }
  footer .box .right .info {
    text-align: center;
    margin: 20px auto;
  }
  footer .social {
    display: table;
  }
}
@media screen and (max-width: 480px) {
  footer h3 {
    font-size: 47px;
  }
}
@media screen and (max-width: 350px) {
  footer {
    padding-left: 25px;
    padding-right: 25px;
  }
  footer h3 {
    font-size: 40px;
    margin: 0 0 -37px 0;
    width: 100%;
  }
}

#map {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 0;
  min-height: 715px;
}

.scroll-icon {
  width: 15px;
  height: 24px;
  display: inline-block;
}

#toggle_menu {
  background: transparent;
  border: none;
  box-shadow: none;
  outline: none;
  padding: 0;
  position: fixed;
  top: 25px;
  right: 30px;
  display: none;
  width: 34px;
  height: 28px;
  -moz-transform: rotate(0deg);
  -o-transform: rotate(0deg);
  -ms-transform: rotate(0deg);
  -webkit-transform: rotate(0deg);
  transform: rotate(0deg);
  -moz-transition: 0.5s ease-in-out;
  -o-transition: 0.5s ease-in-out;
  -webkit-transition: 0.5s ease-in-out;
  transition: 0.5s ease-in-out;
  cursor: pointer;
}
#toggle_menu span {
  display: block;
  position: absolute;
  height: 5px;
  width: 50%;
  background: #ed2d6b;
  opacity: 1;
  -moz-transform: rotate(0deg);
  -o-transform: rotate(0deg);
  -ms-transform: rotate(0deg);
  -webkit-transform: rotate(0deg);
  transform: rotate(0deg);
  -moz-transition: 0.25s ease-in-out;
  -o-transition: 0.25s ease-in-out;
  -webkit-transition: 0.25s ease-in-out;
  transition: 0.25s ease-in-out;
}
#toggle_menu span:nth-child(even) {
  left: 50%;
  -webkit-border-radius: 0 9px 9px 0;
  -moz-border-radius: 0 9px 9px 0;
  border-radius: 0 9px 9px 0;
}
#toggle_menu span:nth-child(odd) {
  left: 0px;
  -webkit-border-radius: 9px 0 0 9px;
  -moz-border-radius: 9px 0 0 9px;
  border-radius: 9px 0 0 9px;
}
#toggle_menu span:nth-child(1), #toggle_menu span:nth-child(2) {
  top: 0px;
}
#toggle_menu span:nth-child(3), #toggle_menu span:nth-child(4) {
  top: 12px;
}
#toggle_menu span:nth-child(5), #toggle_menu span:nth-child(6) {
  top: 24px;
}
#toggle_menu.open span:nth-child(1), #toggle_menu.open span:nth-child(6) {
  -moz-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
#toggle_menu.open span:nth-child(2), #toggle_menu.open span:nth-child(5) {
  -moz-transform: rotate(-45deg);
  -o-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}
#toggle_menu.open span:nth-child(1) {
  left: 3px;
  top: 11px;
}
#toggle_menu.open span:nth-child(2) {
  left: calc(50% - 3px);
  top: 11px;
}
#toggle_menu.open span:nth-child(3) {
  left: -50%;
  opacity: 0;
}
#toggle_menu.open span:nth-child(4) {
  left: 100%;
  opacity: 0;
}
#toggle_menu.open span:nth-child(5) {
  left: 3px;
  top: 23px;
}
#toggle_menu.open span:nth-child(6) {
  left: calc(50% - 3px);
  top: 23px;
}
@media screen and (max-width: 768px) {
  #toggle_menu.open {
    top: 3px;
  }
}

.hidden {
  opacity: 0;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
  filter: alpha(opacity=0);
}

.visible {
  opacity: 1;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
  filter: alpha(opacity=100);
}

/* ----------- iPad mini ----------- */
/* Portrait and Landscape */
@media only screen and (min-device-width: 768px) and (max-device-width: 1024px) and (-webkit-min-device-pixel-ratio: 1) {
  footer h3 {
    letter-spacing: -4px;
  }
}
/* Portrait */
@media only screen and (min-device-width: 768px) and (max-device-width: 1024px) and (orientation: portrait) and (-webkit-min-device-pixel-ratio: 1) {
  footer h3 {
    letter-spacing: -4px;
  }
}
/* Landscape */
@media only screen and (min-device-width: 768px) and (max-device-width: 1024px) and (orientation: landscape) and (-webkit-min-device-pixel-ratio: 1) {
  section.about-us ul#about-scene {
    bottom: -60px;
  }
  footer h3 {
    letter-spacing: -4px;
  }
}
/* ----------- iPad 1 and 2 ----------- */
/* Portrait and Landscape */
@media only screen and (min-device-width: 768px) and (max-device-width: 1024px) and (-webkit-min-device-pixel-ratio: 1) {
  footer h3 {
    letter-spacing: -4px;
  }
}
/* Portrait */
@media only screen and (min-device-width: 768px) and (max-device-width: 1024px) and (orientation: portrait) and (-webkit-min-device-pixel-ratio: 1) {
  footer h3 {
    letter-spacing: -4px;
  }
}
/* Landscape */
@media only screen and (min-device-width: 768px) and (max-device-width: 1024px) and (orientation: landscape) and (-webkit-min-device-pixel-ratio: 1) {
  section.about-us ul#about-scene {
    bottom: -60px;
  }
  footer h3 {
    letter-spacing: -4px;
  }
}
/* ----------- iPad 3 and 4 ----------- */
/* Portrait and Landscape */
@media only screen and (min-device-width: 768px) and (max-device-width: 1024px) and (-webkit-min-device-pixel-ratio: 2) {
  footer h3 {
    letter-spacing: -4px;
  }
}
/* Portrait */
@media only screen and (min-device-width: 768px) and (max-device-width: 1024px) and (orientation: portrait) and (-webkit-min-device-pixel-ratio: 2) {
  footer h3 {
    letter-spacing: -4px;
  }
}
/* Landscape */
@media only screen and (min-device-width: 768px) and (max-device-width: 1024px) and (orientation: landscape) and (-webkit-min-device-pixel-ratio: 2) {
  footer h3 {
    letter-spacing: -4px;
  }
}
/* Tablet common */
@media only screen and (max-device-width: 1024px) {
  header {
    transition: none !important;
  }
  header nav ul li a {
    padding: 16px 0;
  }
  header nav ul li.lang {
    padding: 10px 0 0 10px;
  }
  header .logo {
    margin-top: 8px !important;
  }
  header .logo img {
    width: 85px !important;
  }
  header #toggle_menu {
    top: 10px !important;
  }
  .portfolio-games .game:hover .img-box .btn:hover:after {
    display: none !important;
  }
  .contacts-bg-footer #main_contacts.contacts-bg #map {
    min-height: inherit;
  }
}
/* Tablet portrait */
@media only screen and (max-device-width: 1024px) and (orientation: portrait) {
  section.timeline .description-container {
    margin: 60px auto;
    top: -15px;
    left: initial;
    font-size: 25px;
  }
  section.about-us ul#about-scene li.casino-elements img {
    right: -145px;
  }
  section.about-us ul#about-scene li.rays img {
    right: -110px;
  }
  section.about-us ul#about-scene li.spade img {
    bottom: 378px;
    right: 190px;
  }
  .contacts-bg-footer #main_contacts.contacts-bg .social {
    margin-top: 460px;
  }
}
/* Tablet landscape */
@media only screen and (max-device-width: 1024px) and (orientation: landscape) {
  section.about-us ul#about-scene li.spade img {
    bottom: 378px;
    right: 300px;
  }
  section.about-us .info .company {
    font-size: 90px;
  }
  #main_contacts.contacts-bg .bottom-info {
    bottom: -80px;
  }
  .contacts-bg-footer #main_contacts.contacts-bg .social {
    margin-top: 270px;
  }
  .contacts-bg-footer #main_contacts.contacts-bg #map {
    min-height: 840px;
  }
}
/* Phone common */
@media only screen and (max-device-width: 736px) {
  section.about-us .btn {
    display: none;
  }
}
/* Phone landscape */
@media only screen and (max-device-width: 736px) and (orientation: landscape) {
  section.gallery {
    min-height: 700px;
  }
  section.timeline .description-container {
    margin: 0px auto;
  }
  section.about-us ul#about-scene {
    bottom: -20px;
  }
  section.about-us ul#about-scene li.casino-elements img {
    bottom: -110px;
    right: -310px;
    transform: scale(0.5);
  }
  section.about-us ul#about-scene li.rays img {
    bottom: -210px;
    right: -500px;
    transform: scale(0.5);
  }
  section.about-us ul#about-scene li.spade img {
    display: none;
    position: absolute;
    bottom: 120px;
    right: 90px;
    transform: scale(0.5);
  }
  section.about-us .scroll {
    display: none;
  }
  section.about-us .info p {
    margin-top: 10px;
  }
  section.about-us .info .welcome {
    margin-top: -20px;
    font-size: 50px;
    margin-bottom: 10px;
  }
  section.about-us .info .company {
    font-size: 65px;
  }
  section.about-us .info .owner {
    font-size: 25px;
    line-height: 60px;
  }
  .contacts-bg-footer .bottom-info {
    position: relative;
    bottom: -20px;
  }
  .contacts-bg-footer #main_contacts.contacts-bg #map {
    height: inherit;
  }
  .contacts-bg-footer #main_contacts.contacts-bg .social {
    margin-top: 290px;
  }
  .contacts-bg-footer #main_contacts.contacts-bg .contact-us-wrapper h3 {
    display: none;
  }
  .contacts-bg-footer #main_contacts.contacts-bg .contact-us-wrapper .box {
    width: 100%;
  }
}
@media only screen and (max-device-width: 667px) and (orientation: landscape) {
  footer .box .right {
    height: 85px;
  }
}
/* Phone portrait */
@media only screen and (max-device-width: 736px) and (orientation: portrait) {
  header nav ul.mobile-menu li a {
    font-size: 20px;
  }
  section.timeline .description-container {
    margin: 0px auto;
  }
  section.about-us .info h1 {
    line-height: 42px;
  }
  section.about-us {
    padding-left: 0;
    padding-right: 0;
  }
  section.about-us ul#about-scene li.casino-elements img {
    bottom: -120px;
    right: -310px;
    transform: scale(0.5);
  }
  section.about-us ul#about-scene li.rays img {
    bottom: -55px;
    right: -420px;
    transform: scale(0.5);
  }
  section.about-us ul#about-scene li.spade img {
    position: absolute;
    bottom: 250px;
    right: 170px;
    transform: scale(0.5);
  }
  section.about-us .info .welcome {
    margin-top: -30px;
    font-size: 48px;
  }
  section.about-us .info .company {
    font-size: 60px;
    line-height: 58px;
  }
  section.about-us .info .owner {
    font-size: 24px;
  }
  .contacts-bg-footer .bottom-info {
    position: relative;
    z-index: 1;
    bottom: 0;
  }
  .contacts-bg-footer #main_contacts.contacts-bg #map {
    height: inherit;
  }
  .contacts-bg-footer #main_contacts.contacts-bg .social {
    margin-top: 230px;
  }
  .contacts-bg-footer #main_contacts.contacts-bg .contact-us-wrapper .box {
    width: 100%;
  }
  footer .box .right {
    height: 85px;
  }
}
/* ----------- iPhone 6 ----------- */
/* Landscape */
@media only screen and (min-device-width: 375px) and (max-device-width: 667px) and (-webkit-min-device-pixel-ratio: 2) and (orientation: landscape) {
  footer h3 {
    font-size: 72px;
  }
}
/* ----------- iPhone 6+ ----------- */
/* Portrait */
@media only screen and (min-device-width: 414px) and (max-device-width: 736px) and (-webkit-min-device-pixel-ratio: 3) and (orientation: portrait) {
  footer h3 {
    font-size: 50px;
  }
}
/* Landscape */
@media only screen and (min-device-width: 414px) and (max-device-width: 736px) and (-webkit-min-device-pixel-ratio: 3) and (orientation: landscape) {
  footer h3 {
    font-size: 80px !important;
  }
}
/* ----------- iPhone 5 and 5S ----------- */
/* Landscape */
@media only screen and (min-device-width: 320px) and (max-device-width: 568px) and (-webkit-min-device-pixel-ratio: 2) and (orientation: landscape) {
  section.about-us .info .welcome {
    font-size: 44px;
    margin-bottom: 12px;
  }
  section.about-us .info .company {
    font-size: 60px;
  }
  section.about-us .info .owner {
    font-size: 28px;
    line-height: 60px;
  }
  section.about-us .btn {
    display: none;
  }
  section.about-us .scroll {
    bottom: 0;
  }
  section.about-us .scroll:after {
    display: none;
  }
}
@media only screen and (device-width: 320px) and (max-device-width: 568px) and (-webkit-min-device-pixel-ratio: 2) and (orientation: portrait) {
  section.about-us .scroll {
    bottom: 5px;
  }
  section.about-us .scroll::after {
    height: 27px;
    bottom: -30px;
  }
}
/* ----------- Galaxy S5 ----------- */
@media only screen and (max-device-width: 750px) {
  .description-container:empty {
    margin: 0 !important;
  }
}