  .intl-tel-input * { box-sizing: border-box; }
  .intl-tel-input { position: relative; display: inline-block; }
  .intl-tel-input .hide { display: none; }
  .intl-tel-input .v-hide { visibility: hidden; }
  .intl-tel-input input, .intl-tel-input input[type=text], .intl-tel-input input[type=tel] {
    position: relative;
    z-index: 0;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    padding-right: 36px;}
  .intl-tel-input .flag-container { position: absolute; top: 0; bottom: 0; right: 0; padding: 1px; }
  .intl-tel-input .selected-flag {
    z-index: 1;
    position: relative;
    width: 36px;
    height: 100%;
    padding: 0 0 0 8px; }
  .intl-tel-input .selected-flag .iti-flag { position: absolute; top: 0; bottom: 0; margin: auto; }
  .intl-tel-input .selected-flag .iti-arrow {
    position: absolute;
    top: 50%;
    margin-top: -2px;
    right: 6px;
    width: 0;
    height: 0;
    border-left: 3px solid transparent;
    border-right: 3px solid transparent;
    border-top: 4px solid #555; }
  .intl-tel-input .selected-flag .iti-arrow.up { border-top: none; border-bottom: 4px solid #555; }
  .intl-tel-input .country-list {
    position: absolute;
    z-index: 2;
    list-style: none;
    text-align: left;
    padding: 0;
    margin: 0 0 0 -1px;
    box-shadow: 1px 1px 4px rgba(0, 0, 0, 0.2);
    background-color: white;
    border: 1px solid #CCC;
    white-space: nowrap;}
  .intl-tel-input .country-list.dropup { bottom: 100%; margin-bottom: -1px; }
  .intl-tel-input .country-list .flag-box { display: inline-block; width: 20px; }
  @media (max-width: 500px) { .intl-tel-input .country-list { white-space: normal; } }
  .intl-tel-input .country-list .divider { padding-bottom: 5px; margin-bottom: 5px; border-bottom: 1px solid #CCC; }
  .intl-tel-input .country-list .country { padding: 5px 10px; }
  .intl-tel-input .country-list .country .dial-code { color: #999; }
  .intl-tel-input .country-list .country.highlight { background-color: rgba(0, 0, 0, 0.05); }
  .intl-tel-input .country-list .flag-box, .intl-tel-input .country-list .country-name, .intl-tel-input .country-list .dial-code { vertical-align: middle; }
  .intl-tel-input .country-list .flag-box, .intl-tel-input .country-list .country-name { margin-right: 6px; }
  .intl-tel-input.allow-dropdown input, .intl-tel-input.allow-dropdown input[type=text], .intl-tel-input.allow-dropdown input[type=tel], .intl-tel-input.separate-dial-code input, .intl-tel-input.separate-dial-code input[type=text], .intl-tel-input.separate-dial-code input[type=tel] {
    padding-right: 6px;
    padding-left: 50px;
    margin-left: 0;  }
  .intl-tel-input.allow-dropdown .flag-container, .intl-tel-input.separate-dial-code .flag-container { right: auto; left: 0; }
  .intl-tel-input.allow-dropdown .selected-flag, .intl-tel-input.separate-dial-code .selected-flag { width: 46px; }
  .iti-flag.cn { height: 14px; background-position: -1049px 0px; }
  .iti-flag.nz { height: 10px; background-position: -3855px 0px; }
.iti-flag {
  width: 20px;
  height: 15px;
  box-shadow: 0px 0px 1px 0px #888;
  background-image: url("../images/flags.png");
  background-repeat: no-repeat;
  background-color: #DBDBDB;
  background-position: 20px 0; }