.body {
  font-family: 'Comfortaa', cursive;
  color: #000000;
  background-size: cover;
  background-position-x: center;
  background-repeat: no-repeat;
  min-width: 100vw;
  min-height: 100vh;
  padding-top: 10px;
  box-sizing: border-box;
}

.container {
  width: 320px;
  margin: 0px auto 10px;
  padding: 0 10px 30px;
  text-align: center;
  box-sizing: border-box;
}

.container .image img {
  width: 100%;
}

.header {
  padding-top: 30px;
  margin-bottom: 40px;
}

.foreigners {
  padding: 16px 0;
}

.logo {
  text-align: center;
  margin-bottom: 40px;
}

.text {
  margin-bottom: 40px;
}

.strong {
  font-weight: 600;
  color: #f02854;
}

.auth {
  box-sizing: border-box;
  text-align: center;
  margin-bottom: 20px;
}

.auth .text {
  margin-bottom: 20px;
}

.phone {
  margin-bottom: 20px;
  padding-left: 38px;
}

.icon {
  padding-left: 20px;
}

.icon path {
  fill: #ff2e67;
}

.foreigner-form .edit-wrapper {
  padding: 10px 0 0;
}

.edit-wrapper {
  padding: 10px 0;
  position: relative;
}

.edit-wrapper input {
  background: rgba(35, 85, 88, 0.4);
  border-radius: 5px;
  color: #ffffff;
  text-align: center;
  font-size: 18px;
  width: 250px;
  height: 35px;
  font-family: 'Comfortaa', cursive;
  border: none;
  letter-spacing: 2px;
}

.edit-wrapper input::-webkit-input-placeholder {
  color: inherit;
  opacity: 0.5;
}

.edit-wrapper input:focus {
  outline: none;
}

.button-wrapper {
  padding: 10px 0;
}

.edit-wrapper input.check {
  border: 1px solid;
  position: absolute;
  top: 0;
  left: calc(50% - 125px);
  /* text-transform: uppercase; */
  /* text-decoration: line-through; */
  display: table-cell;
  line-height: 100%;
}

.button-wrapper .button {
  background: rgba(35, 85, 88, 1);
  border-radius: 5px;
  padding: 8px 25px;
  text-transform: uppercase;
  color: #ffffff;
  display: inline-block;
  font-family: 'Comfortaa', cursive;
  text-decoration: none;
  cursor: pointer;
}

.button-wrapper .button:visited {
}

.method-desc {
  min-height: 80px;
  font-size: 1.2em;
  font-weight: 100;
}

.legal {
  font-size: 14px;
  cursor: pointer;
}

.legal-methods {
  margin-top: 20px;
  margin-bottom: 20px;
  text-align: center;
}

.legal-custom {
  display: inline-block;
  text-align: justify;
}

.legal .link {
  text-decoration: underline;
  font-weight: bold;
}

.footer {
  text-align: center;
  display: block;
  margin: 40px auto 20px;
  background: transparent;
}

.footer .wfc {
  margin: 10px auto;
}

.footer .wfc img {
  height: 20px;
}

.error {
  margin: 5px;
  font-size: 12px;
  color: #ff2e67;
  min-height: 12px;
}

.info {
  text-align: center;
  font-size: 16px;
  margin: 0 0 20px 0;
  color: #2b16b3;
}

.opacity05 {
  opacity: 0.75;
}

.auth-error {
  margin: 20px auto 30px;
  font-size: 16px;
  color: #ff2e67;
  text-align: center;
}

.foreigner-form .error {
  margin-top: 3px;
}

.hidden {
  display: none;
}

.error.hidden {
  visibility: hidden;
  display: block;
}

.semitransparent {
  opacity: 0.5;
}

#container {
  min-height: 30px;
  position: relative;
}

.types::after {
  clear: both;
  display: block;
  content: '';
}

.types.three .type {
  width: 33%;
}

.types.two .type {
  width: 50%;
}

.type {
  float: left;
  opacity: 0.5;
}

.type.active {
  opacity: 1;
}

.type.active svg path {
  fill: #ff2e67;
}

#type-description {
  margin-top: 15px;
  font-size: 80%;
  min-height: 50px;
}

.rules {
  position: absolute;
  top: 0;
  background: #ffffff;
  left: 0;
  width: 100%;
  text-align: justify;
}

.rules-text {
  color: #000;
  padding: 45px 10px;
  width: 100%;
  min-height: 100vh;
  box-sizing: border-box;
}

.rules-actions {
  position: fixed;
  width: 100%;
  background: rgba(255, 255, 255, 0.7);
  padding: 10px 10px 5px;
  text-align: right;
  box-sizing: border-box;
  text-transform: uppercase;
  border-bottom: 1px solid rgba(0, 0, 0, 0.2);
}

.loader-wrapper {
  position: absolute;
  top: 13.5px;
  right: 30px;
}

.loader-wrapper.center {
  position: absolute;
  top: 0px;
  right: calc(50% - 10px);
}

.loader,
.loader:after {
  border-radius: 50%;
  width: 20px;
  height: 20px;
}

.loader.inverse {
  border-top: 1.1em solid rgba(255, 46, 103, 0.2);
  border-right: 1.1em solid rgba(255, 46, 103, 0.2);
  border-bottom: 1.1em solid rgba(255, 46, 103, 0.2);
  border-left: 1.1em solid #2b21b3;
}

.loader {
  margin: 0px auto;
  font-size: 4px;
  position: relative;
  text-indent: -9999em;
  border-top: 1.1em solid rgba(43, 33, 179, 0.2);
  border-right: 1.1em solid rgba(43, 33, 179, 0.2);
  border-bottom: 1.1em solid rgba(43, 33, 179, 0.2);
  border-left: 1.1em solid #ff2e67;
  -webkit-transform: translateZ(0);
  -ms-transform: translateZ(0);
  transform: translateZ(0);
  -webkit-animation: load8 1.1s infinite linear;
  animation: load8 1.1s infinite linear;
}

@-webkit-keyframes load8 {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}

@keyframes load8 {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}

.login {
  /* width: 252px; */
  width: 100%;
  /* margin: 5px auto; */
  margin: 5px 0;
  cursor: pointer;
}

.login img {
  width: 100%;
}

/* Sign in buttons */

.login .button-icon {
  float: left;
  width: 37px;
  height: 37px;
  text-align: center;
}
.login-separator a .button-text {
  border-left: 1px solid #fff;
}
.login .button-text {
  float: right;
  width: calc(100% - 38px);
  box-sizing: border-box;
  padding-left: 10px;
  text-align: left;
  font-size: 90%;
}
.login-by-phone {
  background: #f11254;
}
.login.login-by-phone .button-icon {
  background: url(../images/ico-phone.svg) 50% 50% no-repeat;
  background-size: auto 30px;
}

.login-by-voucher {
  background: #7f35c0;
}
.login.login-by-voucher .button-icon::after {
  /* background: url(../images/ico-phone.svg) 50% 50% no-repeat;
  background-size: auto 30px; */
  content: '***';
  display: inline-block;
  font-size: 22px;
  padding-top: 8px;
}
/* OK.ru */
.login-by-ok {
  background: #f7931e;
}
.login.login-by-ok .button-icon {
  background: url(../images/ico-ok.svg) 50% 50% no-repeat;
  background-size: auto 30px;
}
/* VK.RU */
.login-by-vk {
  background: #4a76a8;
}
.login.login-by-vk .button-icon {
  background: url(../images/ico-vk.svg) 50% 50% no-repeat;
  background-size: 30px auto;
}

/* Facebook */
.login-by-fb {
  background: #4a76a8;
}
.login.login-by-fb .button-icon {
  background: url(../images/ico-fb.svg) 50% 50% no-repeat;
  background-size: auto 30px;
}

/* esia */
.login-by-esia {
  background: #0263b2;
}
.login.login-by-esia .button-icon {
  background: url(../images/ico-esia.svg) 50% 50% no-repeat;
  background-size: auto 30px;
}

.login-by-rsaag {
  background: #02bb72;
}

.login.login-by-rsaag .button-icon {
  background: url(../images/ico-rsaag.svg) 50% 50% no-repeat;
  background-size: auto 30px;
}

.method-link {
  height: 37px;
  /* background: #7F35C0; */
  /* margin-bottom: 7px; */
  border-radius: 5px;
  width: 100%;
  /* cursor: pointer; */
}

.method-link.active {
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
  /* border-bottom: 1px solid red; */
}

.method-select-wrapper {
  border-bottom-right-radius: 5px;
  border-bottom-left-radius: 5px;
  width: 280px;
  position: absolute;
  top: 37px;
  overflow: hidden;
}

.method-select.button {
  border-radius: 0;
  width: 100%;
  line-height: normal !important;
}

.method-select {
  height: 37px;
  width: 100%;
  cursor: pointer;
  border-bottom: 1px solid #fff !important;
}

.method-select:last-child {
  border-bottom: none !important;
}

.method-link::after,
.method-select::after {
  display: block;
  content: '';
  clear: both;
}

.method-img {
  float: left;
  margin-top: 5px;
}

.method-img svg {
  height: 27px;
}

.method-triangle {
  float: right;
  margin-right: 10px;
  margin-top: 5px;
}

.method-triangle svg {
  height: 27px;
}

.method-triangle.active {
  transform: rotate(180deg);
  margin-top: 3px;
}

.method-description {
  float: left;
  line-height: 37px !important;
  /* margin-top: 13px;
  max-width: 255px; */
}

.method-name {
  /*margin-bottom: 5px;*/
  color: #fff;
  font-size: 13px;
  font-weight: 500;
}

.method-text {
}

.navigation {
  width: 252px;
  height: 37px;
  margin: 0 auto;
}

.navigation .prev-btn,
.navigation .next-btn {
  float: left;
  text-align: center;
  height: 100%;
}

.navigation .prev-btn {
  margin-right: 3px;
  width: 82px;
}

.navigation .next-btn {
  margin-left: 3px;
  width: 164px;
}

.button {
  overflow: hidden;
  display: block;
  box-sizing: border-box;
  text-align: center;
  /* height: 37px; */
  border-radius: 5px;
  background: #ff2e67;
  color: #fff;
  line-height: 37px !important;
  cursor: pointer;
  width: 100%;
  /* width: 252px; */
  font-weight: 100;
  text-decoration: none;
}

.auth-method-select {
  position: relative;
  margin: 0 auto 21px auto;
  width: 280px;
}

.language {
  position: fixed;
  right: 0;
  top: 10px;
  text-transform: uppercase;
}

.language .current {
  padding: 10px 15px;
  background: #f02854;
  color: #fff;
  cursor: pointer;
}

.language .lang-list {
  background: #2b16b3;
  color: #fff;
  cursor: pointer;
}

.language .lang-list .lang-list-item {
  padding: 10px 15px;
  border-top: 1px solid #fff;
}

.button.button-social {
  background: #4a75a8;
  color: #ffffff;
  display: block;
  margin: 10px auto;
}

.button.disable {
  opacity: 0.5;
}

.social-popup {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  background: rgba(0, 0, 0, 0.5);
}

.social-popup-data {
  width: 300px;
  background: #ffffff;
  color: #000000;
  border-radius: 10px;
  left: calc(50vw - 150px);
  top: calc(50vh - 150px);
  position: relative;
  padding: 20px 10px;
  box-sizing: border-box;
}

.social-popup-data-description {
  margin-bottom: 20px;
}

.check18-request {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  background: rgba(0, 0, 0, 0.5);
}
.check18-request__data {
  width: 300px;
  background: #ffffff;
  color: #000000;
  border-radius: 10px;
  left: calc(50vw - 150px);
  top: calc(50vh - 150px);
  position: relative;
  padding: 20px 10px;
  box-sizing: border-box;
}
.check18-request__description {
  margin-bottom: 20px;
}

.voucher .edit-wrapper {
  padding-bottom: 0;
}

.loader-container {
  padding: 100px;
}

.required-block {
  border-top: 1px solid rgba(0, 0, 0, 0.5);
  margin-top: 10px;
  padding: 10px 0 0 0;
}
.required-number {
  width: 35px;
  height: 35px;
  text-align: center;
  float: left;
  background: #ff2e67;
  color: #ffffff;
  border-radius: 35px;
  line-height: 36px;
  font-weight: bold;
  font-size: 18px;
  margin-right: 10px;
}
.required-text {
  text-align: center;
}

.required-actions {
  margin-left: 45px;
}

.required-actions-wrapper {
  margin: 0 auto;
}
.mini-social-login,
.mini-social-action {
  width: 40px;
  height: 40px;
  margin: 5px;
  display: inline-table;
}
.mini-social-login.vk {
  background: url(/images/logo_vk.png);
  background-size: 40px 40px;
}
.mini-social-login.fb {
  background: url(/images/logo_fb.png);
  background-size: 40px 40px;
}

.mini-social-action.vk.like {
  background: url(/images/vk_like.svg);
  background-size: 40px 40px;
}
.mini-social-action.vk.repost {
  background: url(/images/vk_repost.svg);
  background-size: 40px 40px;
}

.mini-social-action.fb.post {
  background: url(/images/fb_post.svg);
  background-size: 40px 40px;
}

.ckeck18-yesno .ckeck18-yesno__button {
  float: left;
  text-align: center;
  height: 100%;
  margin: 0 3px;
  width: 123px;
}

.ckeck18-yesno {
  margin: 0 11px;
}

.ckeck18-yesno::after {
  clear: both;
  display: block;
  content: '';
}

.logout {
  width: 252px;
  margin: 20px auto;
}
/* Phone field with country select ***********************************************************************/

.phone-field,
.email-field,
.custom-field
 {
  margin-top: 20px;
  position: relative;
  max-width: 250px;
  height: 40px;
  border-radius: 5px;
  margin: 0 auto;
  text-align: center;
  overflow: hidden;
}

/* .phone-field .dial-code {

} */

.phone-field input,
.email-field input,
.custom-field input {
  display: inline-block;
  background: none;
  line-height: 100%;
  height: 100%;
  letter-spacing: 1px;
  font-family: sans-serif;
}
.checkbox-wrapper {
  margin: 0 auto;
  max-width: 300px;
}
.checkbox-wrapper .text {
  vertical-align: middle;
  display: inline-block;
  max-width: 235px;
}
.number-field input {
  -moz-appearance:textfield;
}
.checkbox-field {
  display: inline-block;
  max-width: 55px;
}

.checkbox-field input {
  width: 35px;
  height: 35px;
  margin: 10px 10px;
}

.number-field input::-webkit-outer-spin-button,
.number-field input::-webkit-inner-spin-button {
  -webkit-appearance: none;
}
/* style: `
            -webkit-appearance: none;
            margin: 0;
            -moz-appearance: textfield;
          `, */
.phone-field input.dial-code__input {
  /* float: left; */
  /* max-width: 70px; */
  /* font-size: 100%; */
  text-align: right;
  margin: 0 1ex 0 0;
  width: auto;
  background: none;
  /* border: 1px dotted #ddd; */
}

.phone-field input.phone-field__input {
  /* display: block;
  float: left; */
  text-align: left;
  background: none;
  /*width: calc(100% - 95px);*/
  width: 170px;
  /* margin-left: 10px; */
  /* font-size: 100%; */
  box-sizing: border-box;
  font-size: 1.1em;
}

.phone-field input.phone-field__input::placeholder {
  text-align: center;
}

.call-to a {
  font-size: 1.5em;
}

.country-select {
  position: relative;
  display: block;
  float: left;
  height: 100%;
  padding: 13px 10px;
  margin-right: 2px;
  padding-left: 10px;
  padding-right: 3px;
  /*background: rgba(35, 85, 88, 1);*/
  box-sizing: border-box;
  border-radius: 5px 0 0 5px;
  border-right: 1px solid #ffffff;
  /* line-height: 100%; */
  width: 50px;
}

.country-select .flag {
  display: block;
  float: left;
  background-image: url('../images/flags@2x.png');
  background-repeat: no-repeat;
  background-position: -43px 0px;
  margin-right: 2px;
  text-align: center;
  font-weight: 600;
  box-shadow: 0px 0px 1px 0px #888;
}

.country-select .no-flag {
  background: rgba(255, 255, 255, 0.9);
  width: 22px;
  height: 15px;
  color: #000000;
  line-height: 17px;
}

.country-select .open-country-list {
  display: block;
  float: right;
  width: 12px;
}

.country-select .open-country-list svg {
  display: block;
  margin-top: 5px;
}

.country-select select {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
}

.phone-field__reset {
  display: block;
  float: right;
  height: 100%;
  /* padding: 8px 0 8px 5px; */
  /* padding-right: 10px; */
  padding: 13px 8px;
  /* margin-right: -5px; */
  /* background: rgba(35, 85, 88, 1); */
  color: white;
  cursor: pointer;
  box-sizing: border-box;
}

.flag {
  width: 20px;
}

.flag.be {
  width: 18px;
}

.flag.ch {
  width: 15px;
}

.flag.mc {
  width: 19px;
}

.flag.ne {
  width: 18px;
}

.flag.np {
  width: 13px;
}

.flag.va {
  width: 15px;
}

.flag {
  background-size: 5630px 15px;
}

.flag.ac {
  height: 10px;
  background-position: 0px 0px;
}

.flag.ad {
  height: 14px;
  background-position: -22px 0px;
}

.flag.ae {
  height: 10px;
  background-position: -44px 0px;
}

.flag.af {
  height: 14px;
  background-position: -66px 0px;
}

.flag.ag {
  height: 14px;
  background-position: -88px 0px;
}

.flag.ai {
  height: 10px;
  background-position: -110px 0px;
}

.flag.al {
  height: 15px;
  background-position: -132px 0px;
}

.flag.am {
  height: 10px;
  background-position: -154px 0px;
}

.flag.ao {
  height: 14px;
  background-position: -176px 0px;
}

.flag.aq {
  height: 14px;
  background-position: -198px 0px;
}

.flag.ar {
  height: 13px;
  background-position: -220px 0px;
}

.flag.as {
  height: 10px;
  background-position: -242px 0px;
}

.flag.at {
  height: 14px;
  background-position: -264px 0px;
}

.flag.au {
  height: 10px;
  background-position: -286px 0px;
}

.flag.aw {
  height: 14px;
  background-position: -308px 0px;
}

.flag.ax {
  height: 13px;
  background-position: -330px 0px;
}

.flag.az {
  height: 10px;
  background-position: -352px 0px;
}

.flag.ba {
  height: 10px;
  background-position: -374px 0px;
}

.flag.bb {
  height: 14px;
  background-position: -396px 0px;
}

.flag.bd {
  height: 12px;
  background-position: -418px 0px;
}

.flag.be {
  height: 15px;
  background-position: -440px 0px;
}

.flag.bf {
  height: 14px;
  background-position: -460px 0px;
}

.flag.bg {
  height: 12px;
  background-position: -482px 0px;
}

.flag.bh {
  height: 12px;
  background-position: -504px 0px;
}

.flag.bi {
  height: 12px;
  background-position: -526px 0px;
}

.flag.bj {
  height: 14px;
  background-position: -548px 0px;
}

.flag.bl {
  height: 14px;
  background-position: -570px 0px;
}

.flag.bm {
  height: 10px;
  background-position: -592px 0px;
}

.flag.bn {
  height: 10px;
  background-position: -614px 0px;
}

.flag.bo {
  height: 14px;
  background-position: -636px 0px;
}

.flag.bq {
  height: 14px;
  background-position: -658px 0px;
}

.flag.br {
  height: 14px;
  background-position: -680px 0px;
}

.flag.bs {
  height: 10px;
  background-position: -702px 0px;
}

.flag.bt {
  height: 14px;
  background-position: -724px 0px;
}

.flag.bv {
  height: 15px;
  background-position: -746px 0px;
}

.flag.bw {
  height: 14px;
  background-position: -768px 0px;
}

.flag.by {
  height: 10px;
  background-position: -790px 0px;
}

.flag.bz {
  height: 14px;
  background-position: -812px 0px;
}

.flag.ca {
  height: 10px;
  background-position: -834px 0px;
}

.flag.cc {
  height: 10px;
  background-position: -856px 0px;
}

.flag.cd {
  height: 15px;
  background-position: -878px 0px;
}

.flag.cf {
  height: 14px;
  background-position: -900px 0px;
}

.flag.cg {
  height: 14px;
  background-position: -922px 0px;
}

.flag.ch {
  height: 15px;
  background-position: -944px 0px;
}

.flag.ci {
  height: 14px;
  background-position: -961px 0px;
}

.flag.ck {
  height: 10px;
  background-position: -983px 0px;
}

.flag.cl {
  height: 14px;
  background-position: -1005px 0px;
}

.flag.cm {
  height: 14px;
  background-position: -1027px 0px;
}

.flag.cn {
  height: 14px;
  background-position: -1049px 0px;
}

.flag.co {
  height: 14px;
  background-position: -1071px 0px;
}

.flag.cp {
  height: 14px;
  background-position: -1093px 0px;
}

.flag.cr {
  height: 12px;
  background-position: -1115px 0px;
}

.flag.cu {
  height: 10px;
  background-position: -1137px 0px;
}

.flag.cv {
  height: 12px;
  background-position: -1159px 0px;
}

.flag.cw {
  height: 14px;
  background-position: -1181px 0px;
}

.flag.cx {
  height: 10px;
  background-position: -1203px 0px;
}

.flag.cy {
  height: 13px;
  background-position: -1225px 0px;
}

.flag.cz {
  height: 14px;
  background-position: -1247px 0px;
}

.flag.de {
  height: 12px;
  background-position: -1269px 0px;
}

.flag.dg {
  height: 10px;
  background-position: -1291px 0px;
}

.flag.dj {
  height: 14px;
  background-position: -1313px 0px;
}

.flag.dk {
  height: 15px;
  background-position: -1335px 0px;
}

.flag.dm {
  height: 10px;
  background-position: -1357px 0px;
}

.flag.do {
  height: 13px;
  background-position: -1379px 0px;
}

.flag.dz {
  height: 14px;
  background-position: -1401px 0px;
}

.flag.ea {
  height: 14px;
  background-position: -1423px 0px;
}

.flag.ec {
  height: 14px;
  background-position: -1445px 0px;
}

.flag.ee {
  height: 13px;
  background-position: -1467px 0px;
}

.flag.eg {
  height: 14px;
  background-position: -1489px 0px;
}

.flag.eh {
  height: 10px;
  background-position: -1511px 0px;
}

.flag.er {
  height: 10px;
  background-position: -1533px 0px;
}

.flag.es {
  height: 14px;
  background-position: -1555px 0px;
}

.flag.et {
  height: 10px;
  background-position: -1577px 0px;
}

.flag.eu {
  height: 14px;
  background-position: -1599px 0px;
}

.flag.fi {
  height: 12px;
  background-position: -1621px 0px;
}

.flag.fj {
  height: 10px;
  background-position: -1643px 0px;
}

.flag.fk {
  height: 10px;
  background-position: -1665px 0px;
}

.flag.fm {
  height: 11px;
  background-position: -1687px 0px;
}

.flag.fo {
  height: 15px;
  background-position: -1709px 0px;
}

.flag.fr {
  height: 14px;
  background-position: -1731px 0px;
}

.flag.ga {
  height: 15px;
  background-position: -1753px 0px;
}

.flag.gb {
  height: 10px;
  background-position: -1775px 0px;
}

.flag.gd {
  height: 12px;
  background-position: -1797px 0px;
}

.flag.ge {
  height: 14px;
  background-position: -1819px 0px;
}

.flag.gf {
  height: 14px;
  background-position: -1841px 0px;
}

.flag.gg {
  height: 14px;
  background-position: -1863px 0px;
}

.flag.gh {
  height: 14px;
  background-position: -1885px 0px;
}

.flag.gi {
  height: 10px;
  background-position: -1907px 0px;
}

.flag.gl {
  height: 14px;
  background-position: -1929px 0px;
}

.flag.gm {
  height: 14px;
  background-position: -1951px 0px;
}

.flag.gn {
  height: 14px;
  background-position: -1973px 0px;
}

.flag.gp {
  height: 14px;
  background-position: -1995px 0px;
}

.flag.gq {
  height: 14px;
  background-position: -2017px 0px;
}

.flag.gr {
  height: 14px;
  background-position: -2039px 0px;
}

.flag.gs {
  height: 10px;
  background-position: -2061px 0px;
}

.flag.gt {
  height: 13px;
  background-position: -2083px 0px;
}

.flag.gu {
  height: 11px;
  background-position: -2105px 0px;
}

.flag.gw {
  height: 10px;
  background-position: -2127px 0px;
}

.flag.gy {
  height: 12px;
  background-position: -2149px 0px;
}

.flag.hk {
  height: 14px;
  background-position: -2171px 0px;
}

.flag.hm {
  height: 10px;
  background-position: -2193px 0px;
}

.flag.hn {
  height: 10px;
  background-position: -2215px 0px;
}

.flag.hr {
  height: 10px;
  background-position: -2237px 0px;
}

.flag.ht {
  height: 12px;
  background-position: -2259px 0px;
}

.flag.hu {
  height: 10px;
  background-position: -2281px 0px;
}

.flag.ic {
  height: 14px;
  background-position: -2303px 0px;
}

.flag.id {
  height: 14px;
  background-position: -2325px 0px;
}

.flag.ie {
  height: 10px;
  background-position: -2347px 0px;
}

.flag.il {
  height: 15px;
  background-position: -2369px 0px;
}

.flag.im {
  height: 10px;
  background-position: -2391px 0px;
}

.flag.in {
  height: 14px;
  background-position: -2413px 0px;
}

.flag.io {
  height: 10px;
  background-position: -2435px 0px;
}

.flag.iq {
  height: 14px;
  background-position: -2457px 0px;
}

.flag.ir {
  height: 12px;
  background-position: -2479px 0px;
}

.flag.is {
  height: 15px;
  background-position: -2501px 0px;
}

.flag.it {
  height: 14px;
  background-position: -2523px 0px;
}

.flag.je {
  height: 12px;
  background-position: -2545px 0px;
}

.flag.jm {
  height: 10px;
  background-position: -2567px 0px;
}

.flag.jo {
  height: 10px;
  background-position: -2589px 0px;
}

.flag.jp {
  height: 14px;
  background-position: -2611px 0px;
}

.flag.ke {
  height: 14px;
  background-position: -2633px 0px;
}

.flag.kg {
  height: 12px;
  background-position: -2655px 0px;
}

.flag.kh {
  height: 13px;
  background-position: -2677px 0px;
}

.flag.ki {
  height: 10px;
  background-position: -2699px 0px;
}

.flag.km {
  height: 12px;
  background-position: -2721px 0px;
}

.flag.kn {
  height: 14px;
  background-position: -2743px 0px;
}

.flag.kp {
  height: 10px;
  background-position: -2765px 0px;
}

.flag.kr {
  height: 14px;
  background-position: -2787px 0px;
}

.flag.kw {
  height: 10px;
  background-position: -2809px 0px;
}

.flag.ky {
  height: 10px;
  background-position: -2831px 0px;
}

.flag.kz {
  height: 10px;
  background-position: -2853px 0px;
}

.flag.la {
  height: 14px;
  background-position: -2875px 0px;
}

.flag.lb {
  height: 14px;
  background-position: -2897px 0px;
}

.flag.lc {
  height: 10px;
  background-position: -2919px 0px;
}

.flag.li {
  height: 12px;
  background-position: -2941px 0px;
}

.flag.lk {
  height: 10px;
  background-position: -2963px 0px;
}

.flag.lr {
  height: 11px;
  background-position: -2985px 0px;
}

.flag.ls {
  height: 14px;
  background-position: -3007px 0px;
}

.flag.lt {
  height: 12px;
  background-position: -3029px 0px;
}

.flag.lu {
  height: 12px;
  background-position: -3051px 0px;
}

.flag.lv {
  height: 10px;
  background-position: -3073px 0px;
}

.flag.ly {
  height: 10px;
  background-position: -3095px 0px;
}

.flag.ma {
  height: 14px;
  background-position: -3117px 0px;
}

.flag.mc {
  height: 15px;
  background-position: -3139px 0px;
}

.flag.md {
  height: 10px;
  background-position: -3160px 0px;
}

.flag.me {
  height: 10px;
  background-position: -3182px 0px;
}

.flag.mf {
  height: 14px;
  background-position: -3204px 0px;
}

.flag.mg {
  height: 14px;
  background-position: -3226px 0px;
}

.flag.mh {
  height: 11px;
  background-position: -3248px 0px;
}

.flag.mk {
  height: 10px;
  background-position: -3270px 0px;
}

.flag.ml {
  height: 14px;
  background-position: -3292px 0px;
}

.flag.mm {
  height: 14px;
  background-position: -3314px 0px;
}

.flag.mn {
  height: 10px;
  background-position: -3336px 0px;
}

.flag.mo {
  height: 14px;
  background-position: -3358px 0px;
}

.flag.mp {
  height: 10px;
  background-position: -3380px 0px;
}

.flag.mq {
  height: 14px;
  background-position: -3402px 0px;
}

.flag.mr {
  height: 14px;
  background-position: -3424px 0px;
}

.flag.ms {
  height: 10px;
  background-position: -3446px 0px;
}

.flag.mt {
  height: 14px;
  background-position: -3468px 0px;
}

.flag.mu {
  height: 14px;
  background-position: -3490px 0px;
}

.flag.mv {
  height: 14px;
  background-position: -3512px 0px;
}

.flag.mw {
  height: 14px;
  background-position: -3534px 0px;
}

.flag.mx {
  height: 12px;
  background-position: -3556px 0px;
}

.flag.my {
  height: 10px;
  background-position: -3578px 0px;
}

.flag.mz {
  height: 14px;
  background-position: -3600px 0px;
}

.flag.na {
  height: 14px;
  background-position: -3622px 0px;
}

.flag.nc {
  height: 10px;
  background-position: -3644px 0px;
}

.flag.ne {
  height: 15px;
  background-position: -3666px 0px;
}

.flag.nf {
  height: 10px;
  background-position: -3686px 0px;
}

.flag.ng {
  height: 10px;
  background-position: -3708px 0px;
}

.flag.ni {
  height: 12px;
  background-position: -3730px 0px;
}

.flag.nl {
  height: 14px;
  background-position: -3752px 0px;
}

.flag.no {
  height: 15px;
  background-position: -3774px 0px;
}

.flag.np {
  height: 15px;
  background-position: -3796px 0px;
}

.flag.nr {
  height: 10px;
  background-position: -3811px 0px;
}

.flag.nu {
  height: 10px;
  background-position: -3833px 0px;
}

.flag.nz {
  height: 10px;
  background-position: -3855px 0px;
}

.flag.om {
  height: 10px;
  background-position: -3877px 0px;
}

.flag.pa {
  height: 14px;
  background-position: -3899px 0px;
}

.flag.pe {
  height: 14px;
  background-position: -3921px 0px;
}

.flag.pf {
  height: 14px;
  background-position: -3943px 0px;
}

.flag.pg {
  height: 15px;
  background-position: -3965px 0px;
}

.flag.ph {
  height: 10px;
  background-position: -3987px 0px;
}

.flag.pk {
  height: 14px;
  background-position: -4009px 0px;
}

.flag.pl {
  height: 13px;
  background-position: -4031px 0px;
}

.flag.pm {
  height: 14px;
  background-position: -4053px 0px;
}

.flag.pn {
  height: 10px;
  background-position: -4075px 0px;
}

.flag.pr {
  height: 14px;
  background-position: -4097px 0px;
}

.flag.ps {
  height: 10px;
  background-position: -4119px 0px;
}

.flag.pt {
  height: 14px;
  background-position: -4141px 0px;
}

.flag.pw {
  height: 13px;
  background-position: -4163px 0px;
}

.flag.py {
  height: 11px;
  background-position: -4185px 0px;
}

.flag.qa {
  height: 8px;
  background-position: -4207px 0px;
}

.flag.re {
  height: 14px;
  background-position: -4229px 0px;
}

.flag.ro {
  height: 14px;
  background-position: -4251px 0px;
}

.flag.rs {
  height: 14px;
  background-position: -4273px 0px;
}

.flag.ru {
  height: 14px;
  background-position: -4295px 0px;
}

.flag.rw {
  height: 14px;
  background-position: -4317px 0px;
}

.flag.sa {
  height: 14px;
  background-position: -4339px 0px;
}

.flag.sb {
  height: 10px;
  background-position: -4361px 0px;
}

.flag.sc {
  height: 10px;
  background-position: -4383px 0px;
}

.flag.sd {
  height: 10px;
  background-position: -4405px 0px;
}

.flag.se {
  height: 13px;
  background-position: -4427px 0px;
}

.flag.sg {
  height: 14px;
  background-position: -4449px 0px;
}

.flag.sh {
  height: 10px;
  background-position: -4471px 0px;
}

.flag.si {
  height: 10px;
  background-position: -4493px 0px;
}

.flag.sj {
  height: 15px;
  background-position: -4515px 0px;
}

.flag.sk {
  height: 14px;
  background-position: -4537px 0px;
}

.flag.sl {
  height: 14px;
  background-position: -4559px 0px;
}

.flag.sm {
  height: 15px;
  background-position: -4581px 0px;
}

.flag.sn {
  height: 14px;
  background-position: -4603px 0px;
}

.flag.so {
  height: 14px;
  background-position: -4625px 0px;
}

.flag.sr {
  height: 14px;
  background-position: -4647px 0px;
}

.flag.ss {
  height: 10px;
  background-position: -4669px 0px;
}

.flag.st {
  height: 10px;
  background-position: -4691px 0px;
}

.flag.sv {
  height: 12px;
  background-position: -4713px 0px;
}

.flag.sx {
  height: 14px;
  background-position: -4735px 0px;
}

.flag.sy {
  height: 14px;
  background-position: -4757px 0px;
}

.flag.sz {
  height: 14px;
  background-position: -4779px 0px;
}

.flag.ta {
  height: 10px;
  background-position: -4801px 0px;
}

.flag.tc {
  height: 10px;
  background-position: -4823px 0px;
}

.flag.td {
  height: 14px;
  background-position: -4845px 0px;
}

.flag.tf {
  height: 14px;
  background-position: -4867px 0px;
}

.flag.tg {
  height: 13px;
  background-position: -4889px 0px;
}

.flag.th {
  height: 14px;
  background-position: -4911px 0px;
}

.flag.tj {
  height: 10px;
  background-position: -4933px 0px;
}

.flag.tk {
  height: 10px;
  background-position: -4955px 0px;
}

.flag.tl {
  height: 10px;
  background-position: -4977px 0px;
}

.flag.tm {
  height: 14px;
  background-position: -4999px 0px;
}

.flag.tn {
  height: 14px;
  background-position: -5021px 0px;
}

.flag.to {
  height: 10px;
  background-position: -5043px 0px;
}

.flag.tr {
  height: 14px;
  background-position: -5065px 0px;
}

.flag.tt {
  height: 12px;
  background-position: -5087px 0px;
}

.flag.tv {
  height: 10px;
  background-position: -5109px 0px;
}

.flag.tw {
  height: 14px;
  background-position: -5131px 0px;
}

.flag.tz {
  height: 14px;
  background-position: -5153px 0px;
}

.flag.ua {
  height: 14px;
  background-position: -5175px 0px;
}

.flag.ug {
  height: 14px;
  background-position: -5197px 0px;
}

.flag.um {
  height: 11px;
  background-position: -5219px 0px;
}

.flag.us {
  height: 11px;
  background-position: -5241px 0px;
}

.flag.uy {
  height: 14px;
  background-position: -5263px 0px;
}

.flag.uz {
  height: 10px;
  background-position: -5285px 0px;
}

.flag.va {
  height: 15px;
  background-position: -5307px 0px;
}

.flag.vc {
  height: 14px;
  background-position: -5324px 0px;
}

.flag.ve {
  height: 14px;
  background-position: -5346px 0px;
}

.flag.vg {
  height: 10px;
  background-position: -5368px 0px;
}

.flag.vi {
  height: 14px;
  background-position: -5390px 0px;
}

.flag.vn {
  height: 14px;
  background-position: -5412px 0px;
}

.flag.vu {
  height: 12px;
  background-position: -5434px 0px;
}

.flag.wf {
  height: 14px;
  background-position: -5456px 0px;
}

.flag.ws {
  height: 10px;
  background-position: -5478px 0px;
}

.flag.xk {
  height: 15px;
  background-position: -5500px 0px;
}

.flag.ye {
  height: 14px;
  background-position: -5522px 0px;
}

.flag.yt {
  height: 14px;
  background-position: -5544px 0px;
}

.flag.za {
  height: 14px;
  background-position: -5566px 0px;
}

.flag.zm {
  height: 14px;
  background-position: -5588px 0px;
}

.flag.zw {
  height: 10px;
  background-position: -5610px 0px;
}
