a {
  color: #0BA6E3;
  text-decoration: none;
  }

#overlays {
  position: relative;
  z-index: 999;
  height: auto;
  }

.mainBlue-bg {
  background-color: #0BA6E3;
  }

.mainBlue-color {
  color: #0BA6E3;
  }

.mainOrange-bg {
  background-color: #F4772B;
  }

.mainOrange-color {
  color: #F4772B;
  }

body {
  font-family: Gigakids, sans-serif; /* 1 */
  -ms-text-size-adjust: 100%; /* 2 */
  -webkit-text-size-adjust: 100%; /* 2 */
  font-size: 16px;
  line-height: 22px;
  font-weight: 400;
  background: #fff;
  color: #262262;
  /*height: 100%;*/
  padding: 0;
  margin: 0;
  position: relative;
  }

.container {
  width: 1066px;
  }

.container-wider {
  width: 1146px;
  padding: 0;
  margin: 0 auto;
  }

h2 {
  font-size: 36px;
  line-height: 44px;
  margin: 0 0 25px 0;
  font-weight: 600;
  }

h3 {
  font-size: 44px;
  line-height: 55px;
  margin: 0 0 25px 0;
  }

h4 {
  font-size: 24px;
  line-height: 32px;
  font-weight: 600;
  margin: 40px 0 20px 0;
  }

input,
textarea {
  background: white;
  border-radius: 10px;
  border: 1px solid white;
  width: 100%;
  margin: 7px 0;
  line-height: 24px;
  padding: 5px 8px;
  resize: none;
  font-family: 'Gigakids';
  font-size: 18px;
  }

input.input_error {
  border: 1px solid red;
  }

input[type = submit] {
  width: auto;
  text-transform: uppercase;
  /*background: #2944CC;*/
  /*font-weight: 600;*/
  /*font-size: 24px;*/
  /*color: white;*/
  border: 0;
  /*margin-top: 15px;*/
  }

.errorMessage {
  color: red;
  }

#wrapper {
  /*padding-bottom: 25px;*/
  }

/** SPEECH BUBBLES **/
.speechBlockWrap {
  padding: 50px 0 15px 0;
  position: relative;
  }

.speechBlockAvatarWrap {
  position: absolute;
  top: 0;
  z-index: 2;
  left: calc(50% - 50px);
  }

.speechBlockAvatarWrap .speechBlockAvatarBG {
  padding: 20px 20px 0 20px;
  border-radius: 100px;
  background: white;
  overflow: hidden;
  display: inline-block;
  width: 100px;
  height: 100px;
  text-align: center;
  vertical-align: bottom;
  position: relative;
  cursor: pointer;
  }

.speechBlockAvatarWrap img {
  position: absolute;
  width: 60%;
  bottom: 0;
  left: 19.5%;
  }

/** END SPEECH BUBBLES **/
#footer {
  background: #0BA6E3;
  color: white;
  z-index: 3;
  position: relative;
  }

.footer-bot {
  text-align: center;
  font-weight: 600;
  }

#footer a {
  color: #FFFFFF;
  text-decoration: none;
  line-height: 35px;
  }

#footer hr {
  margin: 0;
  }

/** START POPUP OVERLAY STYLES **/
.popupMask {
  background: rgba(0, 0, 0, 0.75);
  position: fixed;
  left: 0;
  right: 0;
  /*height: 100%;*/
  /*width: 100%;*/
  /*overflow: auto;*/
  text-align: center;
  /*padding: 30px;*/
  outline: none;
  z-index: 500;
  width: 100%;
  height: 100%;
  overflow: auto;
  /*background: #0a84b5;*/
  padding: 0;
  display: none;
  }

.popupMask.bubblesBG {
  position: fixed;
  z-index: 800;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  overflow: auto;
  }

.popupWrapper {
  /*position: relative;*/
  /*margin: 0 auto;*/
  /*display: inline-block;*/
  /*text-align: left;*/
  /*border-radius: 25px;*/
  /*overflow: hidden;*/
  /*max-width: 1024px;*/
  /*width: 100%;*/
  /*height: 100%;*/
  /*overflow: auto;*/
  background: transparent;
  /*margin: 8% auto 0 auto;*/
  /*padding: 25px*/
  /*overflow: auto;*/
  }

@media screen and (max-height: 750px) {
  .popupWrapper {
    margin: 5.5% auto 0 auto;
    }
  }

.popupContent {
  padding: 5px 25px;
  }

/** END POPUP OVERLAY STYLES **/


/** START BTN STYLES **/

.btn {
  color: white;
  text-transform: uppercase;
  font-weight: 600;
  background: #2944CC;
  font-size: 20px;
  text-decoration: none;
  line-height: 24px;
  padding: 8px 40px;
  border-radius: 15px;
  display: block;
  box-sizing: border-box;
  text-align: center;
  margin-top: 15px;
  cursor: pointer;
  }

.btn.alt {
  background: #D1D3D4;
  color: #2944CC;
  }

.btn.disabled {
  opacity: 0.7;
  }

/** END BTN STYLES **/

.relative {
  position: relative;
  }

.characterBG {
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  }

#footer ul {
  list-style: none;
  margin: 0;
  padding: 0;
  text-align: left;
  }

#footer h3 {
  text-align: left;
  }

#avatarList {
  text-align: center;
  position: relative;
  }

#avatarList .avatarBG {
  padding: 20px 20px 0 20px;
  border-radius: 100px;
  background: white;
  overflow: hidden;
  display: inline-block;
  width: 150px;
  height: 150px;
  text-align: center;
  vertical-align: bottom;
  position: relative;
  cursor: pointer;
  margin: 15px;
  }

#avatarList .avatarBG.selectedAvatar::after {
  content: "";
  border: 10px solid #2944CC;
  width: calc(100% - 19px);
  height: calc(100% - 19px);
  background: transparent;
  position: absolute;
  left: -1px;
  z-index: 5;
  top: -1px;
  right: -1px;
  bottom: -1px;
  border-radius: 100px;
  }

#avatarList img {
  position: absolute;
  width: 55%;
  bottom: 0;
  left: 22.5%;
  }

.popupMask {
  background: #9ddbf4;
  z-index: 200;
  }

.popupHeader {
  position: relative;
  }

.popupTitle {
  font-weight: 500;
  font-size: 48px;
  margin: 0;
  padding: 10px 0;
  }

.closePopup {
  /*color: #ccc;*/
  /*position: absolute;*/
  /*z-index: 9999;*/
  /*right: 0;*/
  /*top: 0;*/
  /*bottom: 0;*/
  /*text-transform: uppercase;*/
  /*cursor: pointer;*/
  /*padding: 25px;*/
  /*font: 600 40px/40px Bookman, sans-serif;*/
  }

.popupSplit {
  width: 80%;
  margin: 0 auto;
  background-color: #ccc;
  height: 2px;
  }

body.popupOpen {
  overflow: hidden;
  }

.specialTxtBlockWrap {
  position: relative;
  color: white;
  overflow: hidden;
  border-radius: 80px 80px 50px 50px;
  margin: 30px 15px 30px 0;
  }

p {
  margin: 0;
  }

.speechBlock_content,
.specialTxtBlock_content {
  padding: 0 50px 50px 50px;
  background: #F4772B;
  }

.specialTxtBlock_content {
  padding: 0 50px 25px 50px;
  }

.speechBlockWrap .speechBlock_content {
  padding: 50px 25px 25px 25px;
  border-radius: 50px;
  background: #0BA6E3;
  color: white;
  position: relative;
  z-index: 1;
  border: 1px solid #ccc;
  }

.speechBlockWrap .speechBlock_content.hasBtn {
  padding-bottom: 130px;
  }

.speechBlockWrap .speechBlock_content.hasBtn .btn {
  position: absolute;
  bottom: 40px;
  left: 50px;
  right: 50px;
  }

.speechBlockWrap.dynamic {
  font-size: 26px;
  line-height: 34px;
  font-weight: 600;
  text-align: center;
  }

.speechBlockWrap.dynamic .description span {
  color: #262262;
  }

.speechBlockWrap.dynamic .btn {
  display: inline-block;
  margin: 30px auto 0 auto;
  padding-left: 60px;
  padding-right: 60px;
  }

.speechBlockWrap.dynamic .speechBlockAvatarBG {
  background: #FFDA42;
  }

.specialTxtBlock_top {
  background: white;
  padding-top: 20px;
  text-align: center;
  line-height: 0;
  border-radius: 100px 100px 0 0;
  }

.specialTxtBlock_top img {
  height: 100px;
  }

.bubblesBG {
  background-image: none;
  background-color: #9ddbf4;
  position: relative;
  overflow: hidden;
  }

.bubblesBG > div,
.bubblesBG > .container {
  position: relative;
  z-index: 3;
  }

.bubblesBG .bgBubble {
  position: absolute;
  z-index: 0;
  }

/*.bubblesBG > .bgb_0 {*/
/*  left: 70%;*/
/*  top: -75%;*/
/*  }*/

/*.bubblesBG > .bgb_1 {*/
/*  bottom: 62%;*/
/*  left: 79%;*/
/*  }*/

/*.bubblesBG > .bgb_2 {*/
/*  top: 72%;*/
/*  right: 65%;*/
/*  }*/

/*.bubblesBG > .bgb_3 {*/
/*  bottom: 75%;*/
/*  right: 76%;*/
/*  }*/

.speechDots {
  display: block;
  clear: both;
  opacity: 0.4;
  text-align: center;
  padding: 15px;
  }

.speechDots .speechDot {
  border-radius: 10px;
  height: 15px;
  width: 15px;
  display: inline-block;
  margin: 0 10px;
  background: white;
  vertical-align: middle;
  }

.unboxedTxtBlock_title,
.speechBlock_title,
.specialTxtBlock_title {
  font-size: 28px;
  line-height: 35px;
  margin: 0 0 25px 0;
  }

.unboxedTxtBlockWrap {
  padding-top: 50px;
  }

.unboxedTxtBlock_content {
  padding: 0px 20px 25px 0;
  position: relative;
  z-index: 1;
  }

.fullWidth {
  width: 100%;
  }

.popupContent .specialTxtBlockWrap {
  max-height: 100%;
  overflow: visible;
  margin: 3% 12%;
  }

.popupContent .specialTxtBlock_content {
  border-radius: 0px 0 50px 50px;
  }

.textBoxPage {
  display: none;
  }

.textBoxPage.activeTextBoxPage {
  display: block;
  }

.pageBubbles {
  text-align: center;
  margin: 15px 0;
  }

.pageBubble {
  display: inline-block;
  vertical-align: center;
  background: rgba(255, 255, 255, 0.5);
  height: 20px;
  width: 20px;
  color: transparent;
  border-radius: 10px;
  cursor: pointer;
  margin: 10px;
  transition: background-color 0.3s ease-in-out;
  }

.pageBubble:hover {
  background: white;
  }

.pageBubble.activeTextBoxPage {
  background: #2944CC;
  }

.pageNavBtn {
  position: absolute;
  top: 250px;
  width: 123px;
  height: 250px;
  background-size: initial;
  background-repeat: no-repeat;
  background-position: center;
  cursor: pointer;
  }

.pageBackBtn {
  left: -135px;
  background-image: url('/assets/img/arrow_left.png');
  }

.pageNextBtn {
  right: -135px;
  background-image: url('/assets/img/arrow_right.png');
  }

#avatarPicker .btns {
  text-align: center;
  }

#avatarPicker .btn {
  max-width: 300px;
  width: 100%;
  display: inline-block;
  margin: 25px;
  }

.speechBubble {
  width: 100%;
  padding: 20px 170px 30px 20px;
  position: relative;
  font-weight: 600;
  }

.speechBubble.avatarLeft {
  padding: 20px 20px 30px 210px;
  }

.speechBubble.avatarRight .speechBubbleAvatarWrap {
  background-image: url(/assets/img/char_orange_upsidedown.png);
  background-repeat: no-repeat;
  background-size: auto 150px;
  width: 125px;
  height: 150px;
  background-position: top center;
  position: absolute;
  top: -1px;
  right: 20px;
  }

.speechBubbleContent {
  background: white;
  border-radius: 55px;
  padding: 20px 30px;
  font-size: 22px;

  line-height: 26px;
  position: relative;
  display: inline-block;
  }

.speechBubble.avatarRight {
  text-align: right;
  color: #F4772B;
  }

.speechBubble.avatarRight .speechTriangle {
  position: absolute;
  right: -25px;
  top: 50%;
  margin-top: -18.5px;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 18.5px 0 18.5px 32px;
  border-color: transparent transparent transparent #ffffff;
  }


.speechBubble.avatarLeft .speechBubbleAvatarWrap {
  background-image: url('/assets/img/char_green_upsidedown.png');
  background-repeat: no-repeat;
  background-size: auto 220px;
  width: 160px;
  height: 220px;
  background-position: top center;
  position: absolute;
  top: -1px;
  left: 20px;
  }

.speechBubble.avatarLeft {
  text-align: left;
  color: #22B573;
  }

.speechBubble.avatarLeft .speechTriangle {
  position: absolute;
  left: -30px;
  top: 50%;
  margin-top: -18.5px;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 18.5px 32px 18.5px 0;
  border-color: transparent #ffffff transparent transparent;
  }

.content {
  padding: 45px 0;
  }

body.TP_fullscreen #wrapper #TP_fullWrap.content{
  z-index: 50;
}

.speechBlockWrap small {
  font-size: 16px;
  font-weight: 400;
  }


.pageTop {

  }

.pageTop_left {
  width: 59.66%;
  float: left;
  }

.pageTop_right {
  width: 40.34%;
  float: right;
  }


table.GKTable {
  text-align: center;
  font-size: 16px;
  line-height: 16px;
  width: 100%;
  margin: 0 auto;
  font-weight: 600;
  position: relative;
  border-collapse: separate;
  border-spacing: 0;
  }

table.GKTable::after {
  /*content: "";*/
  width: 30px;
  height: 30px;
  z-index: 400;
  display: block;
  border-right: 2px solid #2944CC;
  border-bottom: 2px solid #2944CC;
  border-radius: 15px;
  position: absolute;
  right: 0;
  bottom: 0;
  }

.GKTable .stars {
  text-align: left;
  }

.GKTable .stars img {
  margin: 0 5px;
  height: 16px;
  }

.GKTable th {
  color: white;
  }

.GKTable tr {
  }

.GKTable th,
.GKTable td {
  padding: 4px 10px;
  position: relative;
  border-bottom: 2px solid #2944CC;
  }

.GKTable td:first-child {
  border-left: 2px solid #2944CC;
  }

.GKTable td:last-child {
  border-right: 2px solid #2944CC;
  }

.GKTable .lastRow td {
  border-bottom: 0;
  }

.GKTable tr:last-child td:first-child {
  border-radius: 0 0 0 15px;
  }

.GKTable th:first-child {
  border-radius: 15px 0 0 0;
  }

.GKTable tr:last-child td:last-child {
  border-radius: 0 0 15px 0;
  }

.GKTable th:last-child {
  border-radius: 0 15px 0 0;
  }

.GKTable table .tLeft {
  border-left: 0;
  }

.GKTable td.tRight {
  font-weight: 500;
  }

.GKTable table img {
  position: absolute;
  right: 20px;
  top: 7px;
  }

.GKTable table {
  margin: 0 auto;
  width: 100%;
  border-radius: 35px;
  overflow: hidden;
  font-weight: 600;
  }

.GKTable .passed img {
  width: 16px;
  }

.GKTable thead {
  background: #2944CC;
  }

.GKTable tbody {
  background: white;
  color: #262262;
  }

.attempt {
  margin-top: 30px;
  }

.navBtn {
  display: none;
  }

.IE_warning {
  display: none;
  position: fixed;
  background: #9c9432;
  left: 20%;
  top: 20%;
  right: 20%;
  bottom: 20%;
  z-index: 9999999;
  color: #960000;
  padding: 25px;
  font-size: 20px;
  line-height: 30px;
  }

.IE_warning a {
  text-decoration: underline;
  color: darkblue;
  }

.is_internet_explorer .IE_warning {
  display: block;
  }