/*--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
    Boilerplate resets
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------*/

* {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

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

div, section, ul, li, h1, h2, h3, h4, table, td, tr, form, label, iframe, hr {
    margin: 0;
    padding: 0;
    border: 0;
    outline: 0;
}

div, footer, header, nav, section, label {
    display: block;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

ul {
    list-style: none;
}

.clear {
    clear:both;
}

button, input, select, textarea {
    margin: 0;
    font-size: 100%;
    vertical-align: middle;
    position: relative;
}

button, input {
    *overflow: visible;
    line-height: normal;
}

button::-moz-focus-inner, input::-moz-focus-inner {
    padding: 0;
    border: 0;
}

button, html input[type="button"], input[type="reset"], input[type="submit"] {
    cursor: pointer;
    -webkit-appearance: button;
}

select, button, input[type="button"], input[type="reset"], input[type="submit"], input[type="radio"], input[type="checkbox"] {
    cursor: pointer;
    outline: 0;
}

input[type="search"] {
    -webkit-box-sizing: content-box;
    -moz-box-sizing: content-box;
    box-sizing: content-box;
    -webkit-appearance: textfield;
}

input[type="search"]::-webkit-search-decoration, input[type="search"]::-webkit-search-cancel-button {
    -webkit-appearance: none;
}

textarea {
    overflow: auto;
    vertical-align: top;
}

a, button, .btn, .button {
    outline: none;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

a:focus,
button:focus,
.btn:focus,
.button:focus {
    outline: 2px auto rgba(66, 139, 202, 0.5);
    outline-offset: 3px;
}

/* https://developer.paciellogroup.com/blog/2018/03/focus-visible-and-backwards-compatibility/ */
a:focus:not(:focus-visible),
button:focus:not(:focus-visible),
.btn:focus:not(:focus-visible),
.button:focus:not(:focus-visible) {
    outline: none;
}

a:focus-visible,
button:focus-visible,
.btn:focus-visible,
.button:focus-visible {
    outline: 2px auto rgba(66, 139, 202, 0.5);
    outline-offset: 3px;
}

/*--------------------------------------------------------------------------------------------------------------------
    States
--------------------------------------------------------------------------------------------------------------------*/

.hidden {
    display: none;
}

.loggedin {
    display: none;
}

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

::-webkit-scrollbar {
    width: 8px;
}

::-webkit-scrollbar-thumb {
    -webkit-border-radius: 10px;
    border-radius: 10px;
    background: #d8dadd;
    box-shadow: inset 2px 0 6px #000000;
}

::-webkit-scrollbar-thumb:vertical:hover {
    background-color: #c8cacc;
}

/*--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
    Body
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------*/


body {
    margin: 0;
    font-size: 15px;
    line-height: 20px;
    color: #333333;
    font-family: Arial, sans-serif;
    background: #e2e6eb;
    overflow-x: hidden;
}

body.intro {
    overflow-y: hidden;
}

/*--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
    Typography
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------*/

h1, h2, h3, h4, h5, h6, b, strong {
    font-weight: normal;
}

h1, h2, h3, h4, h5, h6 {
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

h1 {
    font-size: 15px;
}

h4 {
    font-weight: bold;
}

b, strong {
    font-family: Arial, sans-serif;
    font-weight: bold;
}

p {
    line-height: 23px;
    margin: 10px 0;
}

p:first-child {
    margin-top: 0;
}

input, button, select, textarea {
    color: #40526a;
    font-family: Arial, sans-serif;
}

table {
    width: 100%;
    max-width: 100%;
    background-color: transparent;
    border-collapse: collapse;
    border-spacing: 0;
}

select, textarea, input[type="text"], input[type="password"], input[type="datetime"], input[type="datetime-local"], input[type="date"], input[type="month"], input[type="time"], input[type="week"], input[type="number"], input[type="email"], input[type="url"], input[type="search"], input[type="tel"], input[type="color"], .uneditable-input, .btn-input {

    display: inline-block;
    background-color: #ffffff;

    font-size: 15px;
    height: 34px;
    padding: 6px 8px;

    border-radius: 4px;
    border: 1px solid #d8dadd;

    -webkit-transition: border linear 0.1s, box-shadow linear 0.1s;
    -moz-transition: border linear 0.1s, box-shadow linear 0.1s;
    -o-transition: border linear 0.1s, box-shadow linear 0.1s;
    transition: border linear 0.1s, box-shadow linear 0.1s;

}

select {
    padding-top: 5px;
    padding-left: 3px;
    height: 40px;
    line-height: 40px;
    min-width: 140px;
}

.ellipsis {
    text-overflow: ellipsis;
    white-space: nowrap;
    overflow: hidden;
    width: 100%;
    display: block;
}

.hint {
    font-size: 13px;
    text-align: left;
    width: 100%;
    color: #878787;
}

.grey {
    color: #99a3b5;
}

.row {
    width: 100%;
    clear: both;
    position: relative;
}

.row::before, .row::after {
    content: "";
    display: table;
}

.row::after {
    clear: both;
}

/*--------------------------------------------------------------------------------------------------------------------
    Ticket itself
--------------------------------------------------------------------------------------------------------------------*/

.section {
    position: relative;
    background: #fff;
    -webkit-transition: padding 0.55s ease;
    -moz-transition: padding 0.55s ease;
    -o-transition: padding 0.55s ease;
    transition: padding 0.55s ease;
}

.section:first-child {
    border-top: none;
}

.section.collapsed {
    cursor: pointer;
    padding: 0;
}

.wrapper {
    padding: 20px;
}

hr.blank {
    height: 25px;
}

img.icon {
    position: relative;
    top: 4px;
    margin: 0 8px 0 0;
}

/*--------------------------------------------------------------------------------------------------------------------
    Inputs & buttons
--------------------------------------------------------------------------------------------------------------------*/

input[type="text"], input[type="password"], input[type="date"], textarea {
    border-radius: 4px;
    border: 1px solid #e5e5e5;
    width: 100%;
    font-family: Arial, sans-serif;
    font-size: 15px;
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-shadow: 0;
    color: #333333;
    outline: none;
    height: 30px;
    padding: 8px 8px;
}

input[type="text"]:focus, input[type="password"]:focus, input[type="date"]:focus, textarea:focus {
    border: 1px solid #CCCCCC;
    box-shadow: 0 0 3px rgba(204, 204, 204, 0.50);
}

::-webkit-input-placeholder {
    color: #b8babf;
}

::-moz-placeholder {
    color: #b8babf;
}

/* firefox 19+ */
:-ms-input-placeholder {
    color: #b8babf;
}

/* ie */
input:-moz-placeholder {
    color: #b8babf;
}

input[type="text"].flat, input[type="password"].flat {
    border: 0;
    box-shadow: none;
    height: 40px;
    padding: 10px 10px 10px 10px;
}

input.flat:focus {
    border: 0;
    box-shadow: 0;
}

input[type="text"].regular-border:required,
input[type="password"].regular-border:required {
    box-shadow: none;
}

input.inline {
    display: inline-block;
}

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

a, a:visited {
    color: #99a3b5;
    cursor: pointer;
    text-decoration: none;
    -webkit-transition: color 0.25s ease;
    -moz-transition: color 0.25s ease;
    -o-transition: color 0.25s ease;
    transition: color 0.25s ease;
}

a:hover {
    color: #40526a;
}



.action-panel {
    margin-top: 20px;
}

.checkbox {
    border: 1px solid #E4E7EB;
    border-radius: 2px;
    width: 18px;
    height: 18px;
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-shadow: 0 1px 1px 0 #E4E7EB;
    background-repeat: no-repeat;
    background-position: center center;
    cursor: pointer;
    float: left;
    margin-top: 0;
    margin-right: 10px;
    color: #99a3b5;
}

.custom-checkbox {
    position: relative;
}

.custom-checkbox input {
    display: none;
}

.custom-checkbox label {
    cursor: pointer;
    display: block;
    font-size: 13px;
    line-height: 18px;
    padding: 2px 0 0 26px;
}

.custom-checkbox label::before {
    content: '';
    position: absolute;
    left: 0;
    top: 3px;
    width: 14px;
    height: 14px;
    border: 1px solid rgba(0, 0, 0, 0.2);
    background: none;
    border-radius: 2px;
    -webkit-box-shadow: none;
    -moz-box-shadow: none;
    box-shadow: none;
}

.custom-checkbox label::after {
    content: '';
    position: absolute;
    left: 2px;
    top: 6px;
    width: 10px;
    height: 8px;
    background: url(../img/checkbox-gray-check.png) no-repeat;
    display: none;
}

.custom-checkbox input:checked + label::after {
    display: block;
}

.custom-checkbox input:disabled + label {
    cursor: default;
    opacity: 0.5;
}

.custom-checkbox input:disabled + label::before {
    background: #eaebed;
}

.custom-select {
    width: 100%;
    position: relative;
}

.custom-select__select option {
    color: black;
}

.custom-select:after {
    content: '';
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 6px 6px 0 6px;
    border-color: rgba(0, 0, 0, 0.7) transparent transparent transparent;
    position: absolute;
    top: 20px;
    right: 10px;
    transform: translateY(-50%);
}

.custom-select__label {
    display: block;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    left: 40px;
}

.custom-select__label.active {
    color: #333333;
}

.custom-select__select {
    border: 0;
    border-radius: 0;
    outline: 0;
    margin: 0;
    color: #c6c8cd;
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    width: 100%;
    top: 0;
    left: 0px;
    position: absolute;
    padding: 0 0 0 40px;
    background: transparent;
}

.custom-select__select:valid {
    color: black;
}

.custom-select__select:focus::-ms-value{
    background-color: transparent;
    color: black;
}

.custom-select__select::-ms-expand {
    display: none;
}

.custom-select__select::-moz-focus-inner,
.custom-select__select:-moz-focusring {
    border: 0;
    outline: none;
}

.custom-select__outline {
    position: absolute;
    width: 100%;
    height: 100%;
    top:0;
    left: 0;
    border: 1px solid #ddd;
    display: none;
    pointer-events: none;
}

.custom-select__select:focus + .custom-select__outline {
    display: block;
}


/*--------------------------------------------------------------------------------------------------------------------
    Payment buttons
--------------------------------------------------------------------------------------------------------------------*/

.payment-options {
    margin: 0 0 5px 0;
    padding: 0;
    list-style: none;
    width: 100%;
    padding-top: 13px;
    display: block;
}

.payment-options li {
    width: 100%;
    text-align: center;
    height: 55px;
    border: 1px solid #E4E7EB;
    border-bottom: none;
    background: #fff;
    cursor: pointer;
    padding: 7px 0;
    box-sizing: border-box;
    -moz-box-sizing: border-box;
}

.payment-options li:first-child {
    border-top-left-radius: 8px;
    border-top-right-radius: 8px;
}

.payment-options .lastbutton {
    border-bottom-left-radius: 8px;
    border-bottom-right-radius: 8px;
    border-bottom: 1px solid #E4E7EB;
}

.payment-options .button.pay {
    width: 100%;
    height: 40px;
    display: block;
    color: #40526a;
    line-height: 40px;
    background-position: center center;
    background-repeat: no-repeat;
}

.save-card {
    font-size: 13px;
    color: #99a3b5;
    cursor: pointer;
}

/*--------------------------------------------------------------------------------------------------------------------
    Price summary
--------------------------------------------------------------------------------------------------------------------*/

#ticket #price-summary {
    background: #F4F8FA;
}

/*--------------------------------------------------------------------------------------------------------------------
    Input groups
--------------------------------------------------------------------------------------------------------------------*/


/*--------------------------------------------------------------------------------------------------------------------
    Credit card
--------------------------------------------------------------------------------------------------------------------*/


.new-card-form .date-slash {
    display: inline-block;
    top: 2px;
    margin-right: 20px;
    position: relative;
}

input.input-date {
    width: 50px;
}


/*--------------------------------------------------------------------------------------------------------------------
    Modals
--------------------------------------------------------------------------------------------------------------------*/

.modal {
    z-index: 1000;
    position: fixed;
    top: 0;
    left: 0;
}

.modal-overlay, .modal {
    position: absolute;
    display: none;
    opacity: 0;
}

.modal-overlay {
    width: 100%;
    /*height: 100%;*/
    /*background: url('../img/ticket/bluegradient.png') repeat-x #1854AC ;*/
    background: #000000;
    left: 0;
    top: 0;
    bottom: 0;
    /*display: none !important;*/
    z-index: 1000;
}

.modal {
    background: #fff;
    border: 0;
    /*box-shadow: 0 2px 6px #1854AC;*/
    border-radius: 8px;
    /*padding: 30px;*/
    font-size: 15px;
    overflow: hidden;
    width: 650px;
    left: 50%;
    top: 25px;
    margin-top: 0;
    margin-left: -325px;
    z-index: 1002;
}

.modal h1 {
    font-size: 18px;
    font-family: "Graphik Web Regular", Helvetica, Arial, sans-serif;
    text-align: center;
    margin: 0 0 25px 0;
}

.modal-overlay.active, .modal.active {
    display: block;
}

#modal-login-account .signin-header {
    text-align: center;
    height: 50px;
    margin: 5px 0 25px 0;
    background: url('../img/ticket/signin.png') no-repeat center center;
}

.modal .action-panel {
    border-top: solid 1px #eeeeee;
    position: absolute;
    padding-bottom: 20px;
    bottom: 0;
    width: 100%;
    text-align: center;
    padding-top: 20px;
}

.modal .modal-content {
    padding: 0 100px 45px;
    text-align: center;
    height: 100%;
    margin-bottom: 74px;
}

.modal .modal-header {
    margin-top: 90px;
    margin-bottom: 50px;
    height: 66px;
    background: url('../img/Info.png') no-repeat center center;
}

@media screen and (max-width: 600px) {
    .modal {
        width: 310px;
        margin-left: -155px;
    }

    .modal .modal-header {
        width: 100%;
        margin-top: 40px;
        margin-bottom: 10px;
    }

    .modal .modal-content {
        padding: 30px 10px 30px;
    }
}

/*--------------------------------------------------------------------------------------------------------------------
    ERRORS
--------------------------------------------------------------------------------------------------------------------*/

.start-screen-error {
    padding: 20px;
    background: #c74d41;
    border-radius: 2px;
    color: #fff;
}

.modal-overlay.error {
    background: #023044;
}

.modal.error {
    background: #c74d41;
    box-shadow: none;
    color: #fff;
}

.modal.error p {
    text-align: center;
}




.float-left {
    float: left;
}

.overflow-hidden {
    overflow: hidden;
}

.whitespace-nowrap {
    white-space: nowrap;
}

.ml10 {
    margin-left: 10px!important;
}

.mb20 {
    margin-bottom: 20px;
}

h1 {
    font-size: 18px;
    line-height: normal;
}

a.button,
button.button,
a.button:visited {
    font-family: Arial, sans-serif;

    cursor: pointer;
    text-align: center;
    display: inline-block;
    line-height: 30px;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;

    color: white;
    border: 0 none;
    border-radius: 4px;
    box-sizing: border-box;
    border-collapse: separate;
    background-color: #81c875;
    margin-right: 10px;
    padding: 0 16px;
    transition: opacity 0.25s ease 0s, background 0.25s ease 0s;
}

a.button:hover,
button.button:hover {
    background-color: #74b46a;
}

a.button:focus,
button.button:focus {
    background-color: #74b46a;
    outline: 2px auto rgba(66, 139, 202, 0.5);
    outline-offset: 3px;
}

a.button:focus:not(:focus-visible),
button.button:focus:not(:focus-visible) {
    outline: none;
}

a.button:focus-visible,
button.button:focus-visible {
    outline: 2px auto rgba(66, 139, 202, 0.5);
    outline-offset: 3px;
}

a.button:active,
button.button:active {
    background-color: #73bb67;
}

a.button[disabled],
a.button:disabled,
button.button[disabled],
button.button:disabled {
    cursor: default;
    text-shadow: none;
    background-color: #81c875;
    opacity: 0.5;
}

a.button.disabled,
a.button[disabled]:hover,
a.button:disabled:hover,
button.button.disabled,
button.button[disabled]:hover,
button.button:disabled:hover {
    cursor: default;
    text-shadow: none;
    background-color: #81c875;
    opacity: 0.5;
}


a.button.full,
button.button.full {
    width: 100%;
    margin-right: 0;
}

a.button.full + a.button.full,
button.button.full + button.button.full {
    margin-top: 10px;
}

a.button.error,
button.button.error,
a.button.error:visited {
    background: #9b281d;
    padding: 8px 12px;
}

a.button.error:hover,
button.button.error:hover {
    background: #951f14;
}

a.button.error:active,
button.button.error:active {
    -webkit-box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.15);
    -moz-box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.15);
    box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.15);
}



a.button.gray,
button.button.gray,
a.button.gray:visited {
    background-color: #ededed;
    color: #a2a2a2;
}

a.button.gray:hover,
a.button.gray:focus,
button.button.gray:hover,
button.button.gray:focus {
    background-color: #f3f3f3;
}

a.button.gray:active,
button.button.gray:active {
    background-color: #e0e0e0;
}

a.button.close,
button.button.close,
a.button.close:visited {
    background-color: #ededed;
    color: #a2a2a2;
    min-width: 140px;
    line-height: 40px;
}

a.button.close:hover,
a.button.close:focus,
button.button.close:hover,
button.button.close:focus {
    background-color: #f3f3f3;
}

a.button.close:active,
button.button.close:active {
    background-color: #e0e0e0;
}

a.button.edit,
button.button.edit {
    display: inline-block;
    width: 15px;
    height: 15px;
    background: url(../img/pencil.png) center center no-repeat #f5f5f5;
}

a.button.big,
button.button.big {
    line-height: 40px;
}

a.button.fixed,
button.button.fixed {
    min-width: 115px;
}

a.button.promo-code-apply,
button.button.promo-code-apply {
    line-height: 30px;
    min-width: 115px;
}

a.button.access-check-apply,
button.button.access-check-apply {
    line-height: 40px;
    min-width: 115px;
}

a.button.cancel,
button.button.cancel {
    min-width: 115px;
    line-height: 40px;
}

.previous-button-wrapper {
    float: left;
    width: 52px;
    height: 25px;
    margin-top: 15px;
    border-right: 1px solid #d6d6d6;
}

a.button.back,
button.button.back {
    cursor: pointer;
    width: 56px;
    height: 55px;
    margin: -15px 0 0 0;
    padding: 0;
    background: url(../img/arrow-back.png) center center no-repeat;
}

a.button.complete-purchase,
a.button.goto-confirmation,
button.button.complete-purchase,
button.button.goto-confirmation {
    line-height: 40px !important;
}

/*--------------------------------------------------------------------------------------------------------------------
    Errors
--------------------------------------------------------------------------------------------------------------------*/
.field-error:before {
    border-bottom: 7px solid rgba(248, 106, 106, 0.2);
    border-left: 7px solid transparent;
    border-right: 7px solid transparent;
    content: "";
    display: inline-block;
    left: 29px;
    position: absolute;
    top: -7px;
}

.field-error:after {
    border-bottom: 6px solid #f86a6a;
    border-left: 6px solid transparent;
    border-right: 6px solid transparent;
    content: "";
    display: inline-block;
    left: 30px;
    position: absolute;
    top: -6px;
}

.field-error {
    position: absolute;
    top: 100%;
    margin-top: 10px;
    background-color: #f86a6a;
    border: 0 none;
    border-collapse: separate;
    border-radius: 4px;
    box-sizing: border-box;
    color: white;
    line-height: 30px !important;
    margin-right: 10px;
    padding: 0 16px;
    transition: opacity 0.25s ease 0s, background 0.25s ease 0s;
    white-space: nowrap;
    z-index: 2;
}

input[type="text"].error {
    background: #fcf6f5;
}

.select-payment-options {
    margin-left: 40px;
    margin-top: 30px;
}

.select-payment-options--mobile {
  cursor: pointer;
  color: #a2a2a2;
  height: 55px;
  line-height: 55px;
  margin: 0 0 30px;
  padding: 0 30px;
  background: #eaeaea;
}

#checkout-container .message-block {
    position: absolute;
    background-color: #f86a6a;
    font-family: "Graphik Web Medium", Helvetica, Arial, sans-serif;
    color: #ffffff;
    width: 100%;
    padding: 0px 123px 0px 70px;
    top: 55px;
    z-index: 2;
}

#checkout-container .message-block .errors {
    padding-left: 5px;
    font-size: 13px;
}

#checkout-container .message-block .errors .bullet-item::before {
  content: "\2022";
  margin-right: 13px;
}

#checkout-container .message-block .errors  li:not(:last-child) {
    padding-bottom: 5px
}

#checkout-container .message-block .errors li:last-child {
  margin-bottom: 15px;
}

#checkout-container .message-block .errors  li.one-error{
   list-style: none;
   font-size: 13px;
   line-height: 20px;
   margin-top: 15px;
}

#checkout-container .message-block .error:first-child {
    margin-top: 0;
}

#checkout-container .message-block .error:last-child {
    margin: 0px 0px 15px 0px;
}

#checkout-container .message-block .icon-attention {
    position: absolute;
    left: 30px;
    top: 15px;
    width: 20px;
    height: 20px;
    background: url(../img/stroke-error-icon.png) 0 0 no-repeat;
    filter: brightness(0) invert(1);
    opacity: 0.4;
}

#checkout-container .message-block .errors-title {
  display: inline-block;
  margin-top: 15px;
  margin-bottom: 15px;
  font-size: 13px;
}

#checkout-container .message-block .btn-close {
    cursor: pointer;
    position: absolute;
    right: 30px;
    width: 20px;
    height: 20px;
    background: url(../img/btn-close.png) center no-repeat;
    opacity: 0.4;
    top: 15px;
}

#checkout-container .message-block .btn-close:hover {
    opacity: 1;
}

#checkout-container  #payment-form-component .message-block{
    position: inherit;
    margin-left: 40px;
    margin-right: 40px;
    margin-top: -20px;
    margin-bottom: 20px;
    border-radius: 4px;
    width: inherit;
}

/*--------------------------------------------------------------------------------------------------------------------
    External errors from external api
--------------------------------------------------------------------------------------------------------------------*/

.external-errors {
    background-color: #f86a6a;
    font-family: "Graphik Web Medium", Helvetica, Arial, sans-serif;
    color: #ffffff;
    width: 100%;
    position: relative;
    padding: 5px 0 5px 30px;
}

.external-errors .icon-attention {
    position: absolute;
    left: 20px;
    top: 20px;
    width: 18px;
    height: 18px;
    background: url(../img/icon-attention.png) 0 0 no-repeat;
}

.external-errors__list-item {
    list-style: none;
}
.external-errors__list-item:not(:last-child) {
    margin-bottom: 5px;
}

.external-descriptions {
    text-align: center;
    margin: 10px 0 30px 0;
}

.external-descriptions__item {
    display: block;
    font-size: 15px;
    color: #a2a2a2;
    padding-top: 5px;
}

/*--------------------------------------------------------------------------------------------------------------------
    Payment buttons Vanilla
--------------------------------------------------------------------------------------------------------------------*/
.payment-options-wrapper {
    margin: 0 33px 0 32px;
}

.payment-options-wrapper-new {
  margin: 0px 24px;
}

.payment-options {
    display: table;
    padding: 20px 0 30px;
    margin-bottom: 2px;
}

.payment-options li:first-child {
    border-top-left-radius: 0;
    border-top-right-radius: 0;
}

.payment-options li {
    position: relative;
    display: table-cell;
    width: auto;
    height: 60px;
    border: 0 solid;
    padding-right: 6px;
    padding-left: 4px;
}

.payment-options .button.pay {
    border: 2px solid transparent;
    border-radius: 4px;
    height: 60px;
    background-color: #f5f5f5;
}

.payment-options .button.pay.payment-method-selected {
    border-color: #84c978;
    background-color: #ffffff;
}

.payment-options .button.pay.payment-method-selected:after {
    background-color: #84c978;
    background-position: center;
}

.payment-options .button.pay:after {
    position: absolute;
    content: "";
    right: 0;
    top: 0;
    width: 22px;
    height: 22px;
    background: url(/ng/common/img/symbol-check-white.png) no-repeat;
    background-position: -100px;
    background-size: 10px;
    border-radius: 50%;
}

/* new payment methods container start*/
.payment-methods-container {
  margin-top: 10px;
  margin-bottom: 20px;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
}

.payment-method-tile {
  border: #e5e5e5 solid 2px;
  border-radius: 2px;
  flex-basis: 160px;
  flex-grow: 1;
  flex-shrink: 0;
  margin: 5px;
  position: relative;
}

.payment-method-items-inner-container {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 60px;
}

.payment-method-title {
  font-size: 15px;
  padding: 0px 0px 0px 0px;
  margin-right: 5px;
}

.payment-button {
  text-decoration: none;
}

.payment-button:visited {
  text-decoration: none;
}

.payment-method-tile.payment-method-selected {
  border-color: #428bca;
}

.payment-method-tile.payment-method-selected .payment-method-selection-icon {
  display: block;
}

.payment-method-selection-icon {
  width: 22px;
  height: 22px;
  background: url(/ng/common/img/symbol-check-white.png) no-repeat;
  background-size: 10px;
  border-radius: 50%;
  display: none;
  background-color: #428bca;
  background-position: center;
  position: absolute;
  top: -11px;
  right: -11px;
}

.payment-method-custom-logo {
  display: block;
  margin: 10px;
  height: 24px;
  width: 30px;
}

.payment-method-logo {
  background-position: center center;
  background-repeat: no-repeat;
  background-size: contain;
  margin: 10px;
  height: 100%;
  width: 30px;
}

.payment-method-logo.credit,
.payment-method-logo.edgil_payway,
.payment-method-logo.eigen,
.payment-method-logo.obi,
.payment-method-logo.onet,
.payment-method-logo.cyber_source,
.payment-method-logo.cyber_source_tms,
.payment-method-logo.datatrans,
.payment-method-logo.stripe,
.payment-method-logo.wirecard,
.payment-method-logo.pay_u_peru_cc,
.payment-method-logo.pay_u_chile_cc,
.payment-method-logo.pay_u_colombia_cc,
.payment-method-logo.pay_u_argentina_cc,
.payment-method-logo.pay_u_brazil_cc,
.payment-method-logo.gmo
.payment-method-logo.chase {
  background-image: url(../img/creditcard.svg);
  width: 130px;
}

.payment-method-logo.paypalbt,
.payment-method-logo.obi_paypal,
.payment-method-logo.paypal_express_checkout {
  background-image: url(../img/paypal.svg);
  width: 80px;
}

.payment-method-logo.applepaybt,
.payment-method-logo.applepay_ss,
.payment-method-logo.applepay_pw,
.payment-method-logo.applepay_stripe {
  background-image: url('../img/applepay-ch-logo.svg');
  width: 60px;
}

.payment-method-logo.credit_guard_cc {
  background-image: url(../img/cg_logo.png);
  width: 130px;
}

.payment-method-logo.openpay_cash {
  background-image: url(../img/pago-en-efetivo.png);
  width: 125px;
}

.payment-method-logo.datatrans_postfinance {
  background-image: url(../img/postfinance-pay.png);
  width: 123px;
}

.payment-method-logo.easypay_multibanco {
  background-image: url(/ng/common/img/payment-providers/EasypayMultibancoBill.png);
  width: 30px;
}

.payment-method-logo.easypay_mbway {
  background-image: url(/ng/common/img/payment-providers/EasypayMbwayBill.png);
  width: 60px;
}

.payment-method-logo.easypay_boleto {
  background-image: url(/ng/common/img/payment-providers/EasypayBoletoBill.png);
  width: 54px;
}

.payment-method-logo.easypay_dd {
  background-image: url(/ng/common/img/payment-providers/EasypayDD.png);
  width: 87px;
}

/* new payment methods container end*/

.payment-options .button.pay.credit,
.payment-options .button.pay.edgil_payway ,
.payment-options .button.pay.eigen,
.payment-options .button.pay.obi,
.payment-options .button.pay.onet,
.payment-options .button.pay.datatrans,
.payment-options .button.pay.stripe,
.payment-options .button.pay.gmo,
.payment-options .button.pay.chase {
    background-image: url(../img/creditcard.svg);
    background-size: 110px auto;
}

.payment-options .button.pay.paypalbt,
.payment-options .button.pay.obi_paypal,
.payment-options .button.pay.paypal_express_checkout {
    background-image: url(../img/paypal.svg);
    background-size: 60px auto;
}

.payment-options .button.pay.applepaybt,
.payment-options .button.pay.applepay_ss,
.payment-options .button.pay.applepay_stripe,
.payment-options .button.pay.applepay_pw {
    background-image: url('../img/apple-pay-mark-black.svg');
    background-size: 140px 32px;
}

.payment-options .button.credit_guard_cc {
  background-image: url(../img/cg_logo.png);
  background-size: contain;
}

.payment-options .button.pay.openpay_cash {
    background-image: url(../img/pago-en-efetivo.png);
}

.payment-options .button.pay.datatrans_postfinance {
    background-image: url(../img/postfinance-pay.png);
}

.payment-options .button.pay.easypay_multibanco {
    background-image: url(/ng/common/img/payment-providers/EasypayMultibancoBill.png);
}

.payment-options .button.pay.easypay_mbway {
    background-image: url(/ng/common/img/payment-providers/EasypayMbwayBill.png);
}

.payment-options .button.pay.easypay_boleto {
    background-image: url(/ng/common/img/payment-providers/EasypayBoletoBill.png);
    background-size: 40px;
}

.payment-options .button.pay.easypay_dd {
    background-image: url(/ng/common/img/payment-providers/EasypayDD.png);
    background-size: 60px;
}

.cc_new_card,
.cc_stored_cards,
.paypal-login,
.amazon-loading,
.amazon-tech-error-message,
.amazon-login,
.amazon-wallet,
.mock-payment-form,
.zero-payment-form,
.paypalbt-payment-form,
.apple-pay-bt-form,
.consents,
.pass-through-payment-form,
.billing-country-form,
.paypal-express-checkout-payment-form,
.postfinance-checkout-payment-form,
.obi-paypal-payment-form,
.openpay-cash-payment-form,
.easypay-multibanco-payment-form,
.easypay-boleto-payment-form,
.easypay-mbway-payment-form {
    padding: 0 40px;
}

.payment-system-condition {
    margin-bottom: 32px;
}

.payment-system-condition > * {
    margin-top: 10px;
    margin-bottom: 10px;
}

.payment-system-condition > :first-child {
    margin-top: initial;
}

.payment-system-condition input {
    margin-top: -3px;
    margin-right: 4px;
}

.payment-system-condition label {
    cursor: pointer;
}

.add-credit-card-wrapper {
    margin-bottom: 20px;
}

.add-credit-card-wrapper h4 {
    display: inline;
}


.add-credit-card,
.go-back-to-cards {
    float: right;
    color: #6b9bcd;
    font-size: 13px;
}

.add-credit-card:hover,
.add-credit-card:focus,
.go-back-to-cards:hover,
.go-back-to-cards:focus {
    color: #6b9bcd;
}

.go-back-to-cards {
    padding-left: 12px;
    background: url(../img/arrow-back-to-cards.png) 0 center no-repeat;
}

.go-back-to-cards-wrapper {
    overflow: hidden;
    margin-bottom: 20px;
}

.table-form-inline {
    color: #c6c8cd;
    margin-bottom: 17px;
}

.payment-system-login-widget {
    float: left;
    margin-right: 15px;
}

.payment-system-brief-section {
    font-size: 13px;
    color: #b4b4b4;
    font-weight: bold;
}

.credit-card-mc {
    width: 35px;
    height: 20px;
    background: url(../img/card_mc.png) 0 0 no-repeat;
}

.credit-card-v {
    width: 35px;
    height: 20px;
    background: url(../img/card_v.png) 0 0 no-repeat;
}

.credit-card-d {
    width: 35px;
    height: 20px;
    background: url(../img/card_d.png) 0 0 no-repeat;
}

.credit-card-dci {
    width: 35px;
    height: 20px;
    background: url(../img/card_dci.png) 0 0 no-repeat;
}

.credit-card-amex {
    width: 35px;
    height: 20px;
    background: url(../img/card_amex.png) 0 0 no-repeat;
}

.credit-card-jcb {
    width: 35px;
    height: 20px;
    background: url(../img/card_jcb.png) 0 0 no-repeat;
}

.credit-card-bcrd {
    width: 35px;
    height: 20px;
    background: url(../img/card_bcrd.png) 0 0 no-repeat;
}

.credit-card-unpay {
  width: 35px;
  height: 20px;
  background: url(../img/card_unpay.svg) 0 0 no-repeat;
}

.payment-method-paypal-express {
    width: 60px;
    height: 30px;
    background: url(../img/paypal.png) 0 0 no-repeat;
}

.payment-method-ideal-ssl {
    width: 40px;
    height: 35px;
    background: url(../img/idealpm.png) 0 0 no-repeat;
}

.payment-method-elv-ssl {
    width: 40px;
    height: 35px;
    background: url(../img/elv-mobile.png) 0 0 no-repeat;
}

.table-form-inline td {
    box-sizing: content-box;
    padding-right: 10px;
}

.table-form-inline td:last-child {
    padding-right: 0;
}

.onet-payway-wrapper .cc-fields-layout__expire,
.onet-payway-wrapper .cc-fields-layout__cvv,
.table-form-inline .field-card-expiry-month,
.table-form-inline .field-card-cvv,
.table-form-inline .field-card-postal-code {
    width: 138px;
}

.table-form-inline .field-card-edgil {
    width: 211px;
}

.table-form-inline .field-card--half {
    width: 50%;
}

.table-form-inline .field-card--half .tp-datepicker,
.table-form-inline .field-card--half [tp-datepicker] {
    width: 100%;
    display: block;
}

.table-form-inline .field-card-expiry-month .field-wrapper {
    padding-right: 10px;
}

.table-form-inline .field-card-birth-date {
    width: 150px;
}

.table-form-inline .field-wrapper {
    border-radius: 4px;
    border: 1px solid #e4e7eb;
    white-space: nowrap;
    overflow: hidden;
    position: relative;
}

.table-form-inline input.input-date[type="text"] {
    width: 26px;
    padding: 0;
}

.table-form-inline input[type="text"],
.table-form-inline input[type="password"] {
    padding-left: 0;
}

.table-form-inline .input-cardholder {
    text-overflow: ellipsis;
    max-width: 80%;
}

.new-card-form .date-slash {
    margin-right: 3px;
}

.table-form-inline .icon {
    float: left;
    width: 42px;
    height: 40px;
    background: none center center no-repeat;
}

.table-form-inline .left-margin {
    float: left;
    width: 17px;
    height: 40px;
    background: none center center no-repeat;
}

.table-form-inline .input {
    margin-left: 42px;
    height: 40px;
}

.table-form-inline .icon.card {
    background-image: url(../img/card.png);
}

.table-form-inline .icon.expiry {
    background-image: url(../img/expiry.png);
}

.table-form-inline .icon.password {
    background-image: url(../img/password.png);
}

.table-form-inline .icon.cardholder {
    background-image: url(../img/cardholder.png);
}

.table-form-inline .icon.email {
    background-image: url(../img/Mail.png);
}

.table-form-inline .icon.phone {
    background-image: url(../img/Phone.png);
}

.table-form-inline .icon.passport {
    background-image: url(../img/Passport.png);
}

.table-form-inline .icon.number {
    background-image: url(../img/Number.png);
}

.table-form-inline .icon.country {
    background-image: url(../img/Country.png);
}

.table-form-inline .icon.map-pin {
    background-image: url(../img/Map-pin.png);
}

.table-form-inline .icon.city {
    background-image: url(../img/City.png);
}
.table-form-inline .icon.road {
    background-image: url(../img/road.png);
}

.table-form-inline .icon.bday {
    background-image: url(../img/Calendar.png);
}

.table-form-inline input:focus:invalid:focus,
.table-form-inline textarea:focus:invalid:focus,
.table-form-inline select:focus:invalid:focus,
.table-form-inline input.ng-invalid:focus,
.table-form-inline select.ng-invalid:focus,
.table-form-inline textarea.ng-invalid:focus {
    box-shadow: none;
}

.billing-country {
    margin-top: 15px;
    margin-bottom: 22px;
}

.billing-country-form {
    margin-bottom: 30px;
}

.billing-country-form .custom-checkbox {
    margin-bottom: 20px;
}


.billing-country-group {
    display: inline-block;
    vertical-align: top;
    margin-left: 6px;
}

.billing-country-group:first-child {
    margin-left: 0;
}

.phone-information-cell .tp-dropdown__select,
.billing-country .tp-dropdown__select {
    border-radius: 4px;
    height: 40px;
    border: 1px solid #e5e5e5;
    line-height: 38px;
    font-size: 15px;
    width: 270px;
    padding-left: 15px;
    background: url(../img/select-arrow.png) right 17px no-repeat;
}

.billing-country .tp-dropdown__item-color.blue {
    color: #333333;
}

.tp-dropdown__item-color .placeholder {
    color: rgba(0,0,0,0.4);
}

.billing-country input[type="text"] {
    height: 40px;
    width: 160px;
}



/*--------------------------------------------------------------------------------------------------------------------
    Access check Vanilla
--------------------------------------------------------------------------------------------------------------------*/

.header-title-information {
    margin: 0 40px;
    line-height: 21px;
    text-align: center;
    padding: 37px 0 34px 0;
}

    .header-title-information span {
        display: block;
        font-size: 15px;
        color: #a2a2a2;
        padding-top: 5px;
    }

.external-error {
    display: block;
    font-size: 15px;
    color: #EF8A8A;
    padding-top: 5px
}

.floating-table {
    font-size: 0;
    margin: 0 40px 30px;
}

.floating-table.grayed {
    background: #f5f5f5;
    padding: 20px;
    margin: -30px 30px 30px;
    border-top: 1px solid #e5e5e5;
}

.floating-table.center {
    text-align: center;
}
    .floating-table.single-field-table {
        width: 50%;
        margin: 0 auto 30px;
    }

        .floating-table.single-field-table .floating-table-cell {
            width: 100%;
        }

            .floating-table.single-field-table .floating-table-cell:nth-child(odd) {
                padding-right: 0;
            }

    .floating-table-cell {
        position: relative;
        display: inline-block;
        vertical-align: top;
        width: 50%;
        font-size: 13px;
        line-height: 21.4px;
        margin-bottom: 14px;
    }

    .floating-table-cell:nth-child(odd) {
        padding-right: 10px;
    }
        .floating-table-cell label {
            text-align: left;
            font-size: 15px;
            color: #333333;
            margin-bottom: 3px;
        }

        .floating-table-cell .field-wrapper {
            border: 1px solid #e4e7eb;
            border-radius: 4px;
        }

        .floating-table-cell .hint {
            position: relative;
            display: inline-block;
            width: 15px;
            height: 15px;
            margin-left: 3px;
            font-weight: normal;
            vertical-align: text-top;
        }

        .floating-table-cell .hint:before {
            content: '?';
            position: absolute;
            z-index: 11;
            left: 0;
            top: 0;
            width: 15px;
            height: 15px;
            line-height: 15px;
            font-size: 11px;
            font-weight: bold;
            text-align: center;
            border: 1px solid #c1c1c1;
            border-radius: 50%;
        }

            .floating-table-cell .hint .hint-text {
                display: none;
                position: absolute;
                left: -6px;
                top: -7px;
                z-index: 10;
                width: 196px;
                color: #333333;
                padding: 28px 24px 24px 30px;
                box-shadow: 0 5px 10px 0 rgba(51,51,51,0.1);
                background-color: white;
            }

            .floating-table-cell .hint:hover .hint-text {
                display: block;
            }

 /*--------------------------------------------------------------------------------------------------------------------
    External API address Vanilla
--------------------------------------------------------------------------------------------------------------------*/

.fieldset {
    display: inline;
}

.fieldset.field-country,
.fieldset.field-companyName {
    display: inline-block;
    width: 100%;
}

.fieldset.field-country .floating-table-cell {
    width: 50%;
}

.fieldset.field-country select,
.fieldset.field-region select {
    width: 100%;
}

.print-address-form .floating-table-cell {
    padding-right: 10px;
}

.print-address-form .field-country,
.print-address-form .field-companyName {
    display: inline-block;
    width: 100%;
}
.print-address-form .field-country select,
.print-address-form .field-region select {
    width: 100%;
}

.print-address-form.validated .ng-invalid,
.validated .fieldset .ng-invalid {
    border: 1px solid #f86a6a;
}

.no-animate {
    -webkit-transition: none !important;
    transition: none !important;
}

/*--------------------------------------------------------------------------------------------------------------------
    Selectable items list
    Example: managing addresses
--------------------------------------------------------------------------------------------------------------------*/

.selectable-radio-list {
    margin: 0 30px 30px;
}

.selectable-list-item {
    border: 1px solid #e5e5e5;
    padding-left: 60px;
    padding-top: 15px;
    padding-bottom: 11px;
    margin-top: 10px;
    cursor: pointer;
    position: relative;
}

.selectable-list-item.current,
.selectable-list-item.current:hover {
    background: #f5f5f5;
    border: none;
    padding-top: 16px;
    padding-bottom: 12px;
    padding-left: 61px;
}


.selectable-list-radiobutton {
    position: absolute;
    top: 50%;
    margin-top: -8px;
    left: 22px;
}

.selectable-list-item:hover {
    background: #fbfbfb;
}

.selectable-list-title {
    font-size: 13px;
}

.selectable-list-title-single {
    font-size: 13px;
    padding-top: 10px;
    padding-bottom: 12px;
}

.selectable-list-note {
    color: #b4b4b4;
    font-size: 13px;
    margin-top: 2px;
}



/*--------------------------------------------------------------------------------------------------------------------
    Wait panel
--------------------------------------------------------------------------------------------------------------------*/
/* TODO */
.checkout #waitParent {
    width: 100%;
    height: 100%;
    display: block;
    position: absolute;
    z-index: 2000;
    background-color: rgba(153, 153, 153, 0.9);
    opacity: 1;
}

.not-transparent-loading #waitParent{
    background-color: rgba(153, 153, 153, 1);
}

.checkout #waitParent:before {
    top: 50%;
    width: 100%;
    position: absolute;
    display: block;
    margin-top: -66px;
    height: 66px;
    content: "";
    background: url(../img/Loader.gif) no-repeat center;
}

.checkout #waitParent #waitPanel {
    top: 50%;
    width: 100%;
    position: absolute;
    display: block;
    padding-top: 10px;
    text-align: center;
    color: #ffffff;
    font-size: 18px;
    line-height: 24px;
}

.checkout #lock-modal-overlay {
    position: fixed;
    opacity: .5;
    top: 0;
    left: 0;
    z-index: 1000;
    width: 100%;
    height: 100%;
    filter: alpha(opacity=50);
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=50)";
}

/*--------------------------------------------------------------------------------------------------------------------
    Pay what you want widget
--------------------------------------------------------------------------------------------------------------------*/
.custom-amount-edit-input {
    line-height: 36px;
}

.custom-price {
    position: relative;
    display: inline-block;
    vertical-align: middle;
}

.custom-price #custom-price-amount-input {
    width: 100px;
    display: inline-block;
    padding-top: 0;
    padding-bottom: 0;
    padding-left: 12px;
    padding-right: 12px;
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
    border-right: 0;
    line-height: 15px;
    height: 36px;
}

.custom-price .currency-name {
    border: 1px solid #E4E7EB;;
    border-radius: 4px;
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
    border-left: 0;
    padding-left: 12px;
    padding-right: 12px;
    height: 36px;
    display: inline-block;
    vertical-align: middle;
}

.custom-amount-info {
    height: 36px;
    display: inline-block;
    padding: 0 0 0 15px;
    line-height: 17px;
    vertical-align: middle;
}
.custom-amount-info div{
    height: 36px;
    display: table-cell;
    vertical-align: middle;
}
.custom-amount-info span{
    color:#a2a2a2;
    padding-left: 0;
    font-size: 13px;
    width: 100%;
    display: block;
}

/*--------------------------------------------------------------------------------------------------------------------
  Promo code vanilla
  --------------------------------------------------------------------------------------------------------------------*/
.original-price {
    color: #b4b4b4;
    text-decoration: line-through;
}

.price-pre {
    display: inline-block;
}

.price-pre::first-letter {
    text-transform: uppercase;
}

.promo-code-component {
    float: none;
    width: 100%;
    height: 48px;
    padding-bottom: 18px;
    margin-top: 18px;
}

.promo-code-component .promo-code-input-wrapper {
    position: relative;
    float: left;
    width: 172px;
    margin-right: 7px;

}

.promo-code-component .promo-code-input-wrapper input {
    padding-top: 0;
    padding-bottom: 0;
    height: 30px
}

.promo-code-component .promo-code-applied {
    background-color: #81c875;
    border: 0 none;
    border-collapse: separate;
    border-radius: 4px;
    box-sizing: border-box;
    color: white;
    line-height: 30px !important;
    margin-right: 10px;
    padding: 0 16px 0 0;
    transition: opacity 0.25s ease 0s, background 0.25s ease 0s;
    float: left;
}

.promo-code-component .promo-code-revert {
    cursor: pointer;
    display: inline-block;
    width: 31px;
    height: 31px;
    background-image: url(../img/x.png);
}

.promo-code-component .promo-code-verified {
    display: inline-block;
    width: 16px;
    height: 18px;
    background: url(../img/ok.png) no-repeat;
    float: left;
    margin-top: 10px;
    margin-left: 10px;
    margin-right: 10px;
}

.promo-code-component .promo-code-lock {
    display: none;
}

.promo-code-component .promo-code-description {
    display: none;
}

.promo-code-component.promo-code-unlocked {
    display: block;
    text-align: center;
    height: 100%;
    padding-top: 0;
    padding-bottom: 0;
}

.promo-code-component.promo-code-unlocked .promo-code-eclipse {
    display: block;
    height: 66px;
    width: 66px;
    margin: 60px auto 5px;
    background: url('../img/ellipse.png') no-repeat center center;
}

.promo-code-component.promo-code-unlocked .promo-code-lock {
    display: block;
    height: 66px;
    width: 66px;
    margin-left: auto;
    margin-right: auto;
    background: url('../img/lock.png') no-repeat center center;
}

.promo-code-component.promo-code-unlocked .promo-code-description {
    display: block;
    min-height: 46px;
    padding: 10px;
    font-size: 18px;
    margin-bottom: 25px;
    text-align: center;
    line-height: 31px;
}
.promo-code-component.promo-code-unlocked .promo-code-description p {
    line-height: 31px;
}
.promo-code-component.promo-code-unlocked .promo-code-description .resource-name{
    font-size: 15px;
    color: #a2a2a2;
}

.promo-code-component.promo-code-unlocked .promo-code-input-wrapper {
    display: block;
    float: none;
    width: 275px;
    margin-bottom: 15px;
    margin-left: auto;
    margin-right: auto;
}

.promo-code-component.promo-code-unlocked .promo-code-apply {
    width: 275px;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 90px;
}

.promo-code-component.promo-code-unlocked .promo-code-input-wrapper input {
    height: 40px;
}

.promo-code-component.promo-code-unlocked .promo-code-apply {
    height: 40px;
    line-height: 40px ! important;;
}


/*--------------------------------------------------------------------------------------------------------------------
/*--------------------------------------------------------------------------------------------------------------------
  Tariff plan vanilla
  --------------------------------------------------------------------------------------------------------------------*/
.tariff-plan {
    clear: none;
    margin-top: 19px;
}

.tariff-plan-title {
    width: 10%;
    min-width: 20px;
    font-size: 13px;
    color: #b4b4b4;
    font-weight: normal;
    text-align: left;
    padding: 0 10px 2px 0;
    line-height: 21px;
}

.tariff-plan-row .custom-price {
    position: relative;
}

.tariff-plan-row:last-child .tariff-plan-cell {
    min-width: 102px;
}

.tariff-plan-title:first-child {
    width: 10%;
    white-space: nowrap;
}

.tariff-plan-title:last-child {
    width: 14%;
    white-space: nowrap;
}

.tariff-plan-title.starting-title {
    width: 20.3125%;
}

.tariff-plan-title.duration-title {
    width: 29.6875%;
}

.tariff-plan-title.billing-title {
    width: 31.25%;
}

.tariff-plan-title.vat-title {
    width: 18.75%;
}

.tariff-plan-cell {
    vertical-align: top;
    font-size: 13px;
    min-width: 20px;
    padding: 3px 20px 10px 0;
    border-top: 1px solid #e6e6e6;
}

.tariff-plan-cell.vat-amount {
    color: #b4b4b4;
}

.incl-vat-row td {
    padding: 3px 20px 3px 0;
    font-size: 13px;
    color: #b4b4b4;
}

.incl-vat-row .tariff-plan-cell {
    border: none;
}

.incl-vat-row .link {
    color: #6b9bcd;
}

.dropdown-toggle {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  color: #428bca;
  background: none;
  border: none;
  line-height: 21px;
  font-size: 13px;
  margin: 0;
  padding: 0;
}

.dropdown-toggle__arrow {
  width: 20px;
  height: 20px;
}

.dropdown-toggle--is-on .dropdown-toggle__arrow {
  -webkit-transform: rotate(180deg);
  -ms-transform: rotate(180deg);
  transform: rotate(180deg);
}

.tariff-plan__toggle {
  margin-top: 20px;
}

.tariff-plan-mobile-wrapper {
    padding-top: 16px;
    margin-top: 14px;
    border-top: 1px solid #e5e5e5;
}

.tariff-plan-mobile-wrapper:first-child {
    padding-top: 0;
    margin-top: 0;
    border-top: none;
}

.tariff-plan-mobile {
    font-size: 13px;
}

.tariff-plan-mobile-title {
    font-weight: normal;
    text-align: left;
    width: 36.4%;
    padding: 7px 0 8px;
    color: #878787;
}

.tariff-plan-mobile-value {
    padding: 7px 0 8px;
}

/*--------------------------------------------------------------------------------------------------------------------
  Future Start Component
 --------------------------------------------------------------------------------------------------------------------*/

.future-start-component {
  float: none;
  width: 100%;
  padding-top: 23px;
  padding-bottom: 30px;
  border-bottom: 1px solid rgba(0, 0, 0, 0.1);
}

.future-start-component .future-start-input-wrapper {
  margin-top: 20px;
  width: 330px;
  height: 40px;
}

.future-start-component .dtpicker-input .icon-calendar {
  background-image: url('../img/calendar.svg');
  background-position: center;
  opacity: 1;
  pointer-events: none;
}

.future-start-component .future-start-input {
  height: 40px;
}

/*--------------------------------------------------------------------------------------------------------------------
  Checkout Account
--------------------------------------------------------------------------------------------------------------------*/
.account-popup-header {
    height: 55px;
    background: #eaeaea;
}

.account-popup-header .button {
    float: right;
    width: 35px;
    height: 35px;
}

.account-popup-language-toggle {
    float: left;
    margin: 18px 0 0 18px;
}

.account-group {
    float: right;
    margin: 0 0 0 0;
}

.account-popup-header .pict {
    margin: 10px 30px 0 0;
    background: url(../img/icon-logged-on.png);
}
.account-popup-header .pict.sign-out{
    margin-right: 20px;
    background: url(../img/log-out.png);
}

.account-data {
    float: left;
    margin-top: 10px;
    margin-right: 15px;
}

.account-data > * {
    -webkit-transition: none !important;
    transition: none !important;
}

.account-data .account-name.account-mail-only {
    margin-top: 10px;
    margin-right: 4px;
    font-weight: normal;
    color: #a2a2a2;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.account-data .account-name.account-mail-only.sign-out {
    margin-right: 0;
}

.account-data .account-name {
    font-size: 12px;
    line-height: 16px;
    color: #a2a2a2;
    text-align: end;
}

.account-data .account-mail {
    font-size: 12px;
    font-weight: normal;
}

.account-data .account-name a,
.account-data .account-name .link,
.account-data .account-name a:visited {
    color: #98c779;
    font-weight: normal;
    cursor: pointer;
}

/*--------------------------------------------------------------------------------------------------------------------
  Footer vanilla
  --------------------------------------------------------------------------------------------------------------------*/
.footer-modal {
    overflow: hidden;
    clear: both;
    padding: 20px 40px;
    background-color: #f5f5f5;
}

.auto-renew-purchase {
    margin-right: 0;
    text-align: left;
    float: left;
    width: 50%;
    white-space: nowrap;
    display: block;
}

.auto-renew-purchase-checkbox {
    display: inline-block;
    margin-right: 10px !important;
    vertical-align: top;
    margin-top: 4px;
}

.auto-renew-purchase-label {
    cursor: pointer;
    display: inline-block;
    vertical-align: middle;
    white-space: normal;
}

.complete-purchase-button {
    float: right;
}

.complete-purchase-button a.button {
    margin-right: 0;
}

.start-screen-header {
    padding: 20px;
}

    .start-screen-header h1 {
        margin-bottom: 16px;
    }

.start-screen-header .text-button {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    padding: 3px;
    border: none;
    background: none;
    vertical-align: baseline;
}

.start-screen-language-toggle {
    margin-bottom: 10px;
}

.start-checkout {
    margin-bottom: 101px;
}

.choose-specific-term {
    margin-bottom: 18px;
    padding: 0 20px;
}

.default-offer {
    min-height:400px;
}
.default-offer p {
    color: #a2a2a2;
    margin: 12px 0 22px 0;
}

.start-screen-content p {
    margin-top: 0;
    margin-bottom: 25px;
}

/*--------------------------------------------------------------------------------------------------------------------
  Terms
  --------------------------------------------------------------------------------------------------------------------*/
.account-terms {
    width: 90%;
    margin: -27px auto 0 auto;
}
.start-screen-terms.account-terms {
    width: 100%;
    margin-top: 0;
}

.account-terms-section {
    padding: 0 25px;
    border-radius: 4px;
    border: 1px solid #eaeaea;
}

.mobile-account-terms-section {
    border-radius: 4px;
    border-top: 1px solid #eaeaea;
}

.account-terms tbody td {
    line-height: 22px;
    vertical-align: middle;
    padding: 20px 30px 20px 0;
}

h2 {
    font-size: 18px;
    line-height: 22px;
}

.account-terms tbody a.button {
    margin-right: 0;
}

.account-terms tbody .detail {
    text-align: left;
    white-space: nowrap;
    width: 10px;
    padding-right: 23px;
}

    .account-terms tbody .price {
        font-size: 18px;
        margin-right: 6px;
    }

    .account-terms tbody .period {
        font-size: 13px;
        color: #a2a2a2;
        vertical-align: bottom;
    }

.account-terms tbody .choose {
    text-align: right;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
    padding: 20px 0;
}

/* SWG styles */

.swg-button {
    width: auto;
    min-height: 40px;
    margin-top: 20px;
    padding: 10px 9px 9px 10px;
    font-family: "Roboto", "Helvetica", sans-serif;
    font-weight: 500;
    font-size: 14px;
    line-height: 18px;
    color: rgba(0, 0, 0, 0.54);
    background-color: #ffffff;
    border: 0;
    border-radius: 4px;
    -webkit-box-shadow: 0 1px 4px rgba(0, 0, 0, 0.25);
    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.25);
    text-shadow: none;
}

.swg-button:hover,
.swg-button:focus {
    opacity: 0.8;
}

.swg-icon {
    vertical-align: top;
    margin-left: 3px;
    margin-top: 1px;
}

.account-terms tbody tr:not(:last-child) {
    border-bottom: 1px solid #f2f2f2;
}


/*--------------------------------------------------------------------------------------------------------------------
  Receipt
  --------------------------------------------------------------------------------------------------------------------*/
.receipt .content {
    text-align: center;
    margin: 60px auto 80px;
    width: 70%;
    line-height: 25px;
    color: #b4b4b4;
}

.receipt .content a {
    font-weight: bold;
    color: #6b9bcd;
}

/*--------------------------------------------------------------------------------------------------------------------
  Continue-three-ds-purchase-screen
  --------------------------------------------------------------------------------------------------------------------*/

.continue-three-ds-purchase-component {
    height: 400px;
}

/*--------------------------------------------------------------------------------------------------------------------
  Error-screen
  --------------------------------------------------------------------------------------------------------------------*/
.error-screen .error-notification-icon {
    width: 62px;
    height: 62px;
    margin: 60px auto 30px;
    background: url(../img/fail-icon.png) center center no-repeat;
}

.error-screen .content {
    text-align: center;
    margin: 0 auto 80px;
    padding-left: 5px;
    color: #b4b4b4;
}

.error-screen .content a {
    font-weight: bold;
    color: #6b9bcd;
}

.error-screen .content h1 {
    color: #333333;
    font-size: 22px;
}

.receipt .content .bold {
    font-weight: bold;
}

.receipt-previous-button {
    width: 100%;
    height: 50px;
    background: green;
    margin: 20px 0;
    line-height: 50px;
    display: none !important;
}

.receipt-footer {
    height: 55px;
    background: #eaeaea;
}

.receipt-footer-content {
    width: 485px;
    margin: 0 auto;
    padding: 15px 0;
}

.social-tell {
    display: inline-block;
}

.social-twitter {
    display: inline-block;
}

.social-fb {
    display: inline-block;
    width: 90px;
}

.social-gplus {
    display: inline-block;
    width: 110px;
}

@media screen and (max-width: 600px) {
    .social-tell {
        display: none;
    }

    .receipt-footer-content {
        width: 320px;
    }

    .receipt-previous-button {
        display: block !important;
    }
}

/*--------------------------------------------------------------------------------------------------------------------
  Already Has Access
  --------------------------------------------------------------------------------------------------------------------*/

.already-has-access-component .content {
    color: #b4b4b4;
    text-align: center;
    line-height: 25px;
    margin: 60px auto 80px;
    width: 70%;
}

.you-already-have-access {
    padding-top: 90px;
    margin-bottom: 15px;
    color: #333333;
    background: url(../img/already-have-access.png) center 0 no-repeat;
}

.access-footer {

    border-top: 1px solid #ededed;
    padding: 22px 0;
}

.access-footer-content {
    margin: 0 auto;
    text-align: center;
}

.access-footer-content .access-button {
    display: inline-block;
}

/*--------------------------------------------------------------------------------------------------------------------
  Terms head
  --------------------------------------------------------------------------------------------------------------------*/
.account-head {
    width: auto;
    margin: 0 0 27px;
    padding: 35px 40px 25px;
    background-color: #f5f5f5;
}

.view-confirmation .account-head {
    margin-bottom: 0;
}

.account-head .business-logo {
    margin-right: 35px;
    z-index: 1;
    float: left;
    width: 120px;
}

.account-head .business-logo .logo-img {
    width: 120px;
    height: 120px;
}

.account-head-contentcol.no-logo {
    margin-left: 0;
}

.account-head-contentcol {
    margin-left: 155px;
    line-height: 24px;
    overflow: visible;
}

.account-head-content {
    float: none;
    width: 100%;
}

.account-head-content h1 {
    margin-bottom: 6px;
    margin-top: -3px;
}

.has-free-trial,
.subscription-has-free-trial {
    display: block;
    color: #a2a2a2;
}

.subscription-has-free-trial {
    margin-bottom: 11px;
}

.selected-term-hasfreetrial {
    display: block;
    margin-bottom: 3px;
}

span.charge-details {
  color: #878787;
}

span.charge-details b {
  color: black;
}

.discount-details {
    height: 20px;
}

.payment-method-card {
    font-size: 13px;
    margin-bottom: 30px;
}

.payment-method-card-row:last-child .payment-method-card-cell {
    border-bottom-width: 0;
}

.payment-method-card-row .payment-method-card-cell:last-child {
    white-space: nowrap;
    color: #b4b4b4;
}

.payment-method-card-row:not(:last-child) .payment-method-card-cell:last-child {
    text-align: right;
}

.payment-method-card-row .payment-method-card-cell:nth-of-type(3) {
    width: auto;
}

.payment-method-card-row.selected .payment-method-card-cell {
    background-color: #fbfbfb;
}

.payment-method-card-cell {
    border: 1px solid #f2f2f2;
    border-left-width: 0;
    border-right-width: 0;
    padding: 14px 10px 13px 10px;
    width: 10px;
    box-sizing: content-box;
}

.payment-method-card-cell-expiration {
    width: 130px;
    color: #878787;
}

.payment-method-card-cell-default-payment {
    white-space: nowrap;
    color: #878787;
}

.payment-method-card-cell img {
    max-width: none;
    vertical-align: middle;
}

.set-as-default-button {
    height: 24px;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    border: 1px solid #84c978;
    background: #ffffff;
    border-radius: 2px;
    color: #84c978;
    padding: 0 8px;
}

.payment-method-card-default-payment {
    text-align: right;
}

.applepay-add-new-card {
    float: right;
    width: 115px;
    margin-right: 0!important;
    background: url('../img/apple-pay-mark.svg') center 0 no-repeat #000000!important;
}

.add-new-account-msg.w385 {
    max-width: 385px;
}

.applepay-ss-complete-purchase {
    float: right;
    width: 115px;
    margin-right: 0!important;
    background: url('../img/apple-pay-mark.svg') center 0 no-repeat #000000!important;
}

.stripe-applepay-complete-purchase {
    float: right;
    width: 115px;
    margin-right: 0!important;
    background: url('../img/apple-pay-mark.svg') center 0 no-repeat #000000!important;
}

.payment-method-paypalbt {
    font-size: 13px;
    margin-bottom: 30px;
    margin-top: 20px;
}

.payment-method-paypalbt-row:last-child .payment-method-paypalbt-cell {
    border-bottom-width: 0;
}

.payment-method-paypalbt-row.selected .payment-method-paypalbt-cell {
    background-color: #fbfbfb;
}

.payment-method-paypalbt-row .payment-method-paypalbt-cell:first-child {
    width: 10px;
}

.payment-method-paypalbt-row.add-new-account td {
    padding: 0 0 20px;
    background-color: transparent !important;
    border: none;
}

.payment-method-paypalbt-row + .payment-method-paypalbt-row.add-new-account td {
    padding-top: 20px;
}

.payment-method-paypalbt-cell {
    border: 1px solid #f2f2f2;
    border-left-width: 0;
    border-right-width: 0;
    padding: 14px 10px 13px 10px;
    box-sizing: content-box;
}

.payment-method-paypalbt-selected-pm__email {
  display: inline-block;
  margin-right: 20px;
  margin-left: 36px;
}

.payment-method-paypal-express-checkout {
    font-size: 13px;
    margin-bottom: 30px;
    margin-top: 20px;
}

.payment-method-paypal-express-checkout-row:last-child .payment-method-paypal-express-checkout-cell {
    border-bottom-width: 0;
}

.payment-method-paypal-express-checkout-row.selected .payment-method-paypal-express-checkout-cell {
    background-color: #fbfbfb;
}

.payment-method-paypal-express-checkout-row .payment-method-paypal-express-checkout-cell:first-child {
    width: 10px;
}

.payment-method-paypal-express-checkout-row.add-new-account td {
    padding: 0 0 20px;
    background-color: transparent !important;
    border: none;
}

.payment-method-paypal-express-checkout-row + .payment-method-paypal-express-checkout-row.add-new-account td {
    padding-top: 20px;
}

.payment-method-paypal-express-checkout-cell {
    border: 1px solid #f2f2f2;
    border-left-width: 0;
    border-right-width: 0;
    padding: 14px 10px 13px 10px;
    box-sizing: content-box;
}

.paypal-express-checkout-remember-account {
    padding-top: 10px;
}

.paypal-express-checkout-payment-form {
    padding-bottom: 20px;
}

.paypal-express-checkout-loggedin {
    background: url(../img/paypal-small.svg) 0 50% no-repeat;
    background-size: 13px 15px;
    overflow: hidden;
}

.paypal-express-checkout-name {
    float: left;
    color: rgb(40, 48, 54);
    font-size: 13px;
    font-weight: 800;
    font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
    margin-left: 36px;
    -webkit-font-smoothing: antialiased;
}

.paypal-express-checkout-email {
    float: left;
    color: #333;
    font-size: 13px;
    font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
    margin-left: 5px;
    -webkit-font-smoothing: antialiased;
}

.payment-method-paypalbt-selected-pm__cancel,
.paypal-express-checkout-cancel-button {
    color: rgb(61, 149, 206);
    font-size: 11px;
    font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
    line-height: 20px;
    cursor: pointer;
    text-decoration: underline;
    -webkit-font-smoothing: antialiased;
    padding: 0;
    background-color: transparent;
    border: 0;
}

.paypal-express-checkout-cancel-button {
    margin: 0 0 0 36px;
    float: left;
}

.payment-method-paypalbt-selected-pm__cancel {
    display: inline-block;
}

.paypal-express-checkout-title {
    display: block;
}

/* Obi paypal */
.payment-method-obi-paypal {
    font-size: 13px;
    margin-bottom: 30px;
    margin-top: 20px;
}

.payment-method-obi-paypal-row:last-child .payment-method-obi-paypal-cell {
    border-bottom-width: 0;
}

.payment-method-obi-paypal-row.selected .payment-method-obi-paypal-cell {
    background-color: #fbfbfb;
}

.payment-method-obi-paypal-row .payment-method-obi-paypal-cell:first-child {
    width: 10px;
}

.payment-method-obi-paypal-row.add-new-account td {
    padding: 0 0 20px;
    background-color: transparent !important;
    border: none;
}

.payment-method-obi-paypal-row + .payment-method-obi-paypal-row.add-new-account td {
    padding-top: 20px;
}

.payment-method-obi-paypal-cell {
    border: 1px solid #f2f2f2;
    border-left-width: 0;
    border-right-width: 0;
    padding: 14px 10px 13px 10px;
    box-sizing: content-box;
}

.obi-paypal-remember-account {
    padding-top: 10px;
}

.obi-paypal-payment-form {
    padding-bottom: 20px;
}

.obi-paypal-loggedin {
    background: url(../img/paypal-small.svg) 0 50% no-repeat;
    background-size: 13px 15px;
    overflow: hidden;
}

.obi-paypal-name {
    float: left;
    color: rgb(40, 48, 54);
    font-size: 13px;
    font-weight: 800;
    font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
    -webkit-font-smoothing: antialiased;
    margin-left: 36px;
}

.obi-paypal-email {
    float: left;
    color: #333;
    font-size: 13px;
    font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
    margin-left: 5px;
    -webkit-font-smoothing: antialiased;
}

.obi-paypal-cancel-button {
    color: rgb(61, 149, 206);
    font-size: 11px;
    font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
    line-height: 20px;
    margin: 0px 0px 0px 36px;
    padding: 0px;
    background-color: transparent;
    border: 0px;
    cursor: pointer;
    text-decoration: underline;
    float: left;
    -webkit-font-smoothing: antialiased;
}

.obi-paypal-title {
    display: block;
}

.obi-disabled {
    pointer-events: none;
    opacity: 0.5;
}


#braintree-paypal-loggedin {
    width: 100% !important;
    max-width: 100% !important;
    padding: 0 !important;
    border: none !important;
    background-position: 0 50% !important;
}

#braintree-paypal-loggedout {
    margin-right: 16px;
}

.pm-login-button {
    display: inline-block;
    vertical-align: middle;
    cursor: pointer;
}

.paypal-login-button {
    background: url(../img/paypal-login-button.png) no-repeat;
    width: 115px;
    height: 45px;
    margin-right: 16px;
}

.postfinance-login-button {
    background: url(../img/postfinance.png) no-repeat;
    width: 65px;
    height: 45px;
    margin-right: 16px;
}

.ideal-login-button {
    background: url(../img/ideal-login-button.png) no-repeat;
    width: 115px;
    height: 45px;
    margin-right: 16px;
}

.elv-login-button {
    background: url(../img/ELV.png) no-repeat;
    width: 115px;
    height: 45px;
    margin-right: 16px;
}

.bancard-new-card-create-button {
    color: #ffffff;
    font-weight: bold;
    font-size: 16px;
    border: 0 solid;
    background: #428BCA;
    min-width: 130px;
    text-align: center;
    padding: 0 20px;
    height: 40px;
    line-height: 40px;

    -moz-border-radius: 2px;
    -webkit-border-radius: 2px;
    border-radius: 2px;
}

/* datatrans postfinance */
.postfinance-checkout-title {
    display: block;
}

.payment-method-postfinance-checkout {
    font-size: 13px;
    margin-bottom: 30px;
    margin-top: 20px;
}

.payment-method-postfinance-checkout-row:last-child .payment-method-postfinance-checkout-cell {
    border-bottom-width: 0;
}

.payment-method-postfinance-checkout-row.selected .payment-method-postfinance-checkout-cell {
    background-color: #fbfbfb;
}

.payment-method-postfinance-checkout-row .payment-method-postfinance-checkout-cell:first-child {
    width: 10px;
}

.payment-method-postfinance-checkout-row.add-new-account td {
    padding: 0 0 20px;
    background-color: transparent !important;
    border: none;
}

.payment-method-postfinance-checkout-row + .payment-method-postfinance-checkout-row.add-new-account td {
    padding-top: 20px;
}

.payment-method-postfinance-checkout-cell {
    border: 1px solid #f2f2f2;
    border-left-width: 0;
    border-right-width: 0;
    padding: 14px 10px 13px 10px;
    box-sizing: content-box;
}

.postfinance-checkout-name {
    float: left;
    color: rgb(40, 48, 54);
    font-size: 13px;
    font-weight: 800;
    font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
    -webkit-font-smoothing: antialiased;
}

.postfinance-checkout-payerInfo {
    float: left;
    color: #333;
    font-size: 13px;
    font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
    margin-left: 5px;
    -webkit-font-smoothing: antialiased;
}

.postfinance-checkout-cancel-button {
    color: rgb(61, 149, 206);
    font-size: 11px;
    font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
    line-height: 20px;
    margin: 0px 0px 0px 36px;
    padding: 0px;
    background-color: transparent;
    border: 0px;
    cursor: pointer;
    text-decoration: underline;
    float: left;
    -webkit-font-smoothing: antialiased;
}

.postfinance-checkout-title {
    display: block;
}

/* Add Easypay account */

.easypay-account-button {
    background: url(../img/paypal-login-button.png) no-repeat;
    width: 115px;
    height: 45px;
    margin-right: 16px;
    margin-top: 10px;
}

#bt-pp-name {
    float: left !important;
}

#bt-pp-email {
    color: #333 !important;
    float: left !important;
}

#bt-pp-cancel {
    float: left !important;
    margin-left: 36px !important;
}

.add-new-account-msg {
    display: inline-block;
    vertical-align: middle;
    color: #b4b4b4;
    max-width: 365px;
    font-size: 13px;
}

/*--------------------------------------------------------------------------------------------------------------------
  Gifts edgil-payway-wrapper
  --------------------------------------------------------------------------------------------------------------------*/

.gift-header {
    padding: 22px 30px;
    background: #fafafa;
}

.gift-footer {
    padding: 22px 30px;
    background: #fafafa;
    text-align: right;
}

.gift-footer .button {
    margin-right: 0;
    margin-left: 10px;
}

.gift-row {
    margin: 22px 30px;
    font-size: 0;
}

.gift-row > * {
    font-size: 16px;
}

.gift-row label {
    display: inline-block;
    width: 30%;
}

.gift-row .gift-input {
    display: inline-block;
    width: 69%;
}

.gift-input textarea {
    width: 100%;
    line-height: 1.6;
    resize: vertical;
}

.gift-input textarea,
.gift-input input[type="text"],
.gift-input input[type="password"],
.gift-input input[type="datetime"],
.gift-input input[type="datetime-local"],
.gift-input input[type="date"],
.gift-input input[type="month"],
.gift-input input[type="time"],
.gift-input input[type="week"] {
    height: 100%;
}

.gift-input input:disabled {
    background-color: #ededed;
    color: #a2a2a2;
}

.gift-input .radio-label {
    display: inline;
}

.gift-input .radio-label span {
    padding: 0 10px 0 4px;
    vertical-align: middle;
    font-size: 14px;
}

.gift-input.sides {
    text-align: right;
}

.gift-input.sides .right-side {
    margin-left: 20px;
}

@media (max-width: 600px) {
    .gift-row .gift-input,
    .gift-row label {
        display: block;
        width: 100%;
    }

    .gift-row label {
        padding-bottom: 10px;
    }

    .gift-input.sides > * {
        display: block;
        text-align: left;
    }

    .gift-input.sides .right-side {
        margin-left: 0;
    }
}

/*--------------------------------------------------------------------------------------------------------------------
  Edgil payway
  --------------------------------------------------------------------------------------------------------------------*/
.edgil-payway-wrapper .mb20 {
    margin-bottom: 20px;
}

.edgil-payway-wrapper .edgil-payway-form {
    overflow: hidden;
}

.edgil-payway-wrapper .field-edgil {
    float: left;
    margin-right: 10px;
}

/*--------------------------------------------------------------------------------------------------------------------
  Apple Pay Spreedly Stripe
  --------------------------------------------------------------------------------------------------------------------*/
.applepay-ss-wrapper .mb20 {
    margin-bottom: 20px;
}

.applepay-ss-wrapper .applepay-ss-form {
    overflow: hidden;
}

.applepay-ss-wrapper .field-applepay-ss {
    float: left;
    margin-right: 10px;
}

/*--------------------------------------------------------------------------------------------------------------------
  Eigen
  --------------------------------------------------------------------------------------------------------------------*/
.eigen-wrapper .mb20 {
    margin-bottom: 20px;
}

.eigen-wrapper .eigen-form {
    overflow: hidden;
}

.eigen-wrapper .field-eigen {
    float: left;
    margin-right: 10px;
}

/*--------------------------------------------------------------------------------------------------------------------
  Redemption
  --------------------------------------------------------------------------------------------------------------------*/
.redemption-form {
    padding: 22px 30px;
}

.redeem-code-description {
    font-weight: bold;
}

.redeem-code-input-wrapper input {
    width: 230px;
    display: inline-block;
}

.redeem-code-input-error {
    width: 300px;
    display: inline-block;
    font-size: 12px;
    line-height: 1.3;
    vertical-align: middle;
    margin-left: 10px;
    color: #e55c4e;
}

.redemption-form input.invalid {
    color: #40526a;
    border-color: #e55c4e;
}

.redemption-info table th {
    color: #a2a2a2;
    text-align: left;
    font-weight: normal;
}

.redemption-info table tr {
    line-height: 1.8;
}

.redemption-info table td {
    vertical-align: top;
}

.offer-redemption {
    padding: 22px 30px;
}

.offer-redemption .choose {
    text-align: right;
}

.offer-redemption .button {
    margin-right: 0;
}

/*--------------------------------------------------------------------------------------------------------------------
  Datepicker icons
  --------------------------------------------------------------------------------------------------------------------*/

[class^="icon-"], [class*=" icon-"] {
    display: inline-block;
    width: 20px;
    height: 20px;
    *margin-right: .3em;
    line-height: 14px;
    vertical-align: middle;
    background-image: url(../img/small-icons.png);
    background-position: 14px 14px;
    background-repeat: no-repeat;
    position: relative;
}

.icon-calendar {
    background-position: -260px -260px;
}

.icon-arrow-datepicker-left {
    background-position: -440px -727px;
}

.icon-arrow-datepicker-right {
    background-position: -440px -727px;
    -webkit-transform: rotate(180deg);
    -moz-transform: rotate(180deg);
    -ms-transform: rotate(180deg);
    -o-transform: rotate(180deg);
    transform: rotate(180deg);
}

.icon-arrow-double-datepicker-left {
    background-position: -500px -727px;
}

.icon-arrow-double-datepicker-right {
    background-position: -500px -727px;
    -webkit-transform: rotate(180deg);
    -moz-transform: rotate(180deg);
    -ms-transform: rotate(180deg);
    -o-transform: rotate(180deg);
    transform: rotate(180deg);
}

.dtpicker-pager {
    font-size: 0;
}

.dtpicker-input {
    position: relative;
}

.dtpicker-input .icon-calendar {
    z-index: 1;
    position: absolute;
    left: 10px;
    top: 9px;
    opacity: 0.4;
}

.dtpicker-input input {
    padding-left: 36px;
}

/*--------------------------------------------------------------------------------------------------------------------
  Consents
  --------------------------------------------------------------------------------------------------------------------*/
.consents .consent {
    margin: 10px 0;
}

.tp-modal .tp-close {
    background-image: url(../img/close.png) !important;
}

.account-data .account-mail-ellipsis {
    display: inline-block;
    max-width: 140px;
    overflow: hidden;
    vertical-align: top;
    text-overflow: ellipsis;
}


/*--------------------------------------------------------------------------------------------------------------------
  Open Pay
  --------------------------------------------------------------------------------------------------------------------*/

.openpay-cash-receipt-success-message {
    background: rgba(70, 140, 200, 0.07);
    padding: 22px 30px 19px;
    font-size: 18px;
    color: #000000;
    font-weight: normal;
    line-height: 30px;
    margin-left: -30px;
    margin-right: -30px;
    margin-bottom: 22px;
}
.openpay-cash-payment-subtitle {
    font-size: 13px;
    text-transform: uppercase;
    font-weight: bold;
    margin: 25px 0 0;
}

.openpay-cash-payment-instructions-list {
    font-size: 13px;
    padding: 0 0 0 15px;
    margin: 18px 0 0;
}

.openpay-cash-payment-instructions-list li {
    margin-top: 10px;
}

.openpay-cash-payment-instructions-paragraph {
    font-size: 13px;
    line-height: 20px;
}

.receipt .content.openpaycash {
    text-align: left;
    margin: 0;
    width: 100%;
    line-height: normal;
    color: #333333;
}

.openpay-cash-receipt {
    padding: 0 30px 27px;
}

.openpay-cash-payment-barcode {
    text-align: center;
    margin-top: 14px;
}

.openpay-cash-receipt-links {
    text-align: center;
    margin-left: -10px;
}

.openpay-cash-receipt-links a.button {
    min-width: 172px;
    color: #ffffff;
    margin-top: 21px;
    margin-left: 10px;
    margin-right: 0;
}

.openpay-cash-payment-barcode-example {
    width: 254px;
    height: 90px;
    background: url(../img/openpay-barcode-example.png) 0 0 no-repeat;
    background-size: contain;
    max-width: 100%;
    margin: 33px auto 0;
    padding: 0 0 36px;
    text-align: center;
}

.openpay-cash-payment-barcode-example-text {
    background: #ffffff;
    text-transform: uppercase;
    line-height: 20px;
    display: inline-block;
    font-size: 14px;
    padding: 0 6px;
    margin-top: 10px;
}

.openpay-cash-receipt-resend-message {
    text-align: center;
    display: block;
    font-size: 13px;
    margin-top: 36px;
}

.openpay-cash-receipt-resend-message::before {
    content: '';
    display: inline-block;
    width: 11px;
    height: 9px;
    background: url(../img/check-bullet.png) left center no-repeat;
    margin-right: 12px;
}

/*--------------------------------------------------------------------------------------------------------------------
  Easypay
  --------------------------------------------------------------------------------------------------------------------*/
.easypay-mbway-payment-form,
.easypay-multibanco-payment-form,
.easypay-boleto-payment-form {
    line-height: 25px;
}

.easypay-boleto-payment-form {
    padding: 20px 30px;
    border-top: 1px solid rgba(0, 0, 0, 0.1);
    border-bottom: 1px solid rgba(0, 0, 0, 0.1);
    font-size: 13px;
}

.easypay-direct-debit-payment-form {
    padding: 25px 30px 30px;
    border-top: 1px solid rgba(0, 0, 0, 0.1);
    border-bottom: 1px solid rgba(0, 0, 0, 0.1);
    font-size: 13px;
}

.easypay-cash-receipt-links {
    text-align: right;
    padding: 10px 30px;
}

.easypay-cash-receipt-links a.button {
    min-width: 172px;
    color: #ffffff;
    margin-top: 21px;
    margin-left: 10px;
    margin-right: 0;
}

.app-notification-info {
    font-size: 13px;
    margin-bottom: 20px;
}

.phone-information-wrapper {
    overflow: hidden;
    margin-bottom: 10px;
}

.notification-wrapper {
    font-size: 15px;
    margin: -27px -30px 27px -30px;
    padding: 21px 30px 23px 30px;
    background: rgba(70, 140, 200, 0.07);
}

.phone-information-cell {
    float: left;
}

.calling-cell {
    position: relative;
    padding-right: 10px;
    width: 40%;
}

.phone-input-cell {
    width: 60%;
}

.phone-information-cell .tp-dropdown__select {
    width: 100%;
    padding-right: 30px;
    -webkit-border-radius: 2px;
    border-radius: 2px;
}

.phone-information-cell .tp-dropdown__select:hover {
    border-color: #CCCCCC;
}

input.default-input[type="text"] {
    border-radius: 0;
    height: 40px;
}

.payment-form-title {
    margin-bottom: 25px;
}

.easypay-multibanco-payment-form .warning-wrapper {
    margin-bottom: 30px;
}

.receipt .easypaymbway,
.receipt .easypaymultibanco {
    color: #000000;
    width: auto;
    text-align: left;
    margin: 27px 30px 26px 30px;
    font-size: 13px;
}

.receipt .content.easypayboleto {
    padding: 0 0 40px;
    margin: 0;
    text-align: left;
    color: #000;
    width: 100%;
}

.receipt .content.easypaydirectdebit {
    padding: 0 0 55px;
    margin: 0;
    text-align: left;
    color: #000;
    width: 100%;
}

.receipt .easypaydirectdebit .direct-debit-logo {
    background-image: url(/ng/common/img/payment-providers/EasypayDD.png);
    width: 87px;
    height: 37px;
}

.receipt .easypay-direct-debit-receipt__header {
    margin: 20px 30px;
}

.receipt .easypay-direct-debit-receipt__body {
    text-align: center;
    font-size: 15px;
    color: #878787;
    border-top: 1px solid rgba(0, 0, 0, 0.1);
}

.receipt .easypay-direct-debit-receipt__body .receipt-title {
    font-weight: bold;
    font-size: 18px;
    margin-bottom: 10px;
    color: #333333;
}

.receipt .easypay-direct-debit-receipt__body .done-icon {
    margin: 40px 0 15px;
}

.receipt .easypay-direct-debit-receipt__header .table-cell--delimiter {
    padding-right: 20px;
}

.receipt .easypay-direct-debit-receipt__header .table-cell--delimiter-right {
    border-right: 1px solid rgba(0, 0, 0, 0.1);
    padding-right: 20px;
}

.receipt .content.easypayboleto .easypay-boleto-receipt__link {
    font-weight: normal;
}

.receipt .content.easypayboleto .easypay-boleto-receipt__link--blue {
    color: #3977ad;
}

.payu-brazil-boleto-receipt__refund,
.easypay-boleto-receipt__refund {
    line-height: 20px;
    font-size: 16px;
    font-weight: bold;
    padding: 22px 30px;
}

.payu-brazil-boleto-receipt__highlighted-area,
.easypay-boleto-receipt__highlighted-area {
    padding: 10px 20px;
    background-color: #fffff8;
    border: 1px solid #f1f1e8;
}

.payu-brazil-boleto-receipt__highlighted-area--instructions,
.easypay-boleto-receipt__highlighted-area--instructions {
    font-size: 13px;
    line-height: 30px;
    margin: 0 30px;
}

.payu-brazil-boleto-receipt__instructions-title,
.easypay-boleto-receipt__instructions-title {
    font-weight: bold;
}

.payu-brazil-boleto-receipt__instructions,
.easypay-boleto-receipt__instructions {
    margin: 0 0 5px;
}

.payu-brazil-boleto-receipt__success-message,
.easypay-boleto-receipt__success-message {
    font-size: 18px;
    line-height: 30px;
    background-color: #f2f7fb;
    padding: 22px 30px;
}

.easypaymultibanco .receipt-title {
    font-size: 16px;
    font-weight: bold;
    margin-bottom: 17px;
}

.easypay-direct-debit-payment-form .add-account {
    font-size: 16px;
    padding-right: 30px;
    padding-left: 30px;
    margin-right: 20px;
}

.transaction-information-list {
    margin-bottom: 22px;
}

.transaction-information-list li {
    margin-bottom: 5px;
}

.warning-wrapper {
    font-size: 13px;
    padding: 10px 20px 16px 20px;
    border: 1px solid rgba(142, 146, 162, 0.1);
    background: rgba(253, 255, 188, 0.1);
}

.warning-wrapper ol {
    padding: 6px 0 0 13px;
    margin: 0;
}

.warning-wrapper ol li:not(:last-child) {
    margin-bottom: 5px;
}

.logos-wrapper {
    overflow: hidden;
    padding: 0 30px 30px 30px;
    margin: 0 -30px 23px -30px;
    border-bottom: 1px solid rgba(0, 0, 0, 0.1);
}

@media (max-width: 360px) {
    .logos-wrapper {
        padding: 0 15px 30px 20px;
    }
}

.delimiter {
    position: relative;
    top: 3px;
    float: left;
    width: 1px;
    height: 40px;
    margin: 0 17px 0 18px;
    background: rgba(0, 0, 0, 0.1);
}

.multibanco-logo {
    float: left;
    width: 44px;
    height: 47px;
    background: url(/ng/common/img/payment-providers/multibanco-logo.png) 0 3px no-repeat;
}

.mbway-logo {
    float: left;
    width: 81px;
    height: 47px;
    background: url(/ng/common/img/payment-providers/mbway-logo.png) 0 3px no-repeat;
}

.boleto-logo {
    float: left;
    width: 25px;
    height: 30px;
    background: url(/ng/common/img/payment-providers/boleto-logo.png) 0 3px no-repeat;
}

.easypay-logo {
    float: left;
    width: 164px;
    height: 47px;
    background: url(/ng/common/img/payment-providers/easypay-logo.png) 0 0 no-repeat;
}

.payment-options.easypay_boleto {
    padding-bottom: 10px;
}

/* Landscape phones and down */
@media (max-width: 600px) {

    .mobile-mode .account-terms {
        table-layout: fixed;
    }

    .account-data {
        margin-right: 0;
    }

    .account-information {
        margin-right: 30px;
    }

    .account-data .account-name.account-mail-only {
       width: 200px;
    }

    .go-back-to-cards-wrapper {
        display: none;
    }

    .cc_new_card .table-form-inline {

        background-color: white;
        color: #c6c8cd;
        margin-bottom: 17px;
        /*margin-top: -32px;*/

    }

    .cc_new_card .table-form-inline input[type="text"],
    .cc_new_card .table-form-inline input[type="password"] {
        background-color: white;
    }

    .auto-renew-purchase {
        position: relative;
        margin-right: 0;
        margin-bottom: 20px;
        text-align:left;
        width: 100%;
    }

    .auto-renew-purchase .auto-renew-purchase-checkbox {
        position: absolute;
        left: 0;
        top: 2px;
    }

    .auto-renew-purchase .auto-renew-purchase-label {
        position: static;
        margin-left: 25px;
    }

    .complete-purchase-button {
        float: none;
    }

    a.button.complete-purchase {
        width: 100%;
    }

    .promo-code-component {
        height: auto;
        padding-bottom: 0;
    }

    .apple-pay-bt-form .button.big {
        width: 100%;
        margin: 0;
    }

    .promo-code-component.promo-code-unlocked .promo-code-input-wrapper {
        display: block;
        float: none;
        width: 100%;
        margin-bottom: 15px;
    }

    .promo-code-component.promo-code-unlocked .promo-code-apply {
        width: 100%;
        margin-bottom: 30px;
    }

    .cc_new_card,
    .cc_stored_cards,
    .paypal-login,
    .amazon-loading,
    .amazon-tech-error-message,
    .amazon-login,
    .amazon-wallet,
    .billing-country-form {
        padding: 0 30px;
    }

    .payment-system-brief-section {
        clear: both;
        padding-top: 10px;
    }

    .mobile-hide {
        display: none;
    }

    .back-to-payment-methods {
        cursor: pointer;
        color: #a2a2a2;
        height: 55px;
        line-height: 55px;
        margin: 0 0 30px;
        padding: 0 30px 0 45px;
        background: url(../img/arrow-back-to-payment-method.png) 30px center no-repeat #eaeaea;
    }

    .already-has-access-component .content {
        width: 100%;
    }

    .account-head {
        padding: 30px;
    }

    .account-head .business-logo {
        float: right;
        margin-right: 0;
        margin-left: 20px;
        margin-bottom: 20px;
        width: 50px;
    }

    .account-head-contentcol {
        overflow: visible;
        margin-left: 0;
    }

    .account-head-content {
        float: none;
    }

    .tariff-plan {
        clear: both;
    }

    .tariff-plan-title {
        display: none;
    }

    .tariff-plan-row:last-child .tariff-plan-cell {
        white-space: normal;
        padding-top: 10px;
    }

    .term-details {
        clear: none;
        padding-bottom: 20px;
    }

    .account-head .business-logo .logo-img {
        width: 50px;
        height: 50px;
    }

    .has-free-trial {
        margin-bottom: 0;
    }

    .go-back-to-cards {
        display: none;
    }

    /*--------------------------------------------------------------------------------------------------------------------
      Credit cards
      --------------------------------------------------------------------------------------------------------------------*/

    .payment-options-wrapper {
        margin: -30px -30px 0;
    }

    .payment-options-wrapper-new {
      margin: 0 3px;
    }

    .payment-options {
        display: block;
        padding: 0;
    }

    .payment-options li:last-child {
        border-bottom: 0 solid;
    }

    .payment-options li:first-child {
        border-top: 1px solid #f2f2f2;
    }

    .payment-options li {
        display: block;
        padding: 0;
        height: 70px;
        border-bottom: 1px solid #f2f2f2;
    }

    .payment-options .button.pay:after {
        top: 10px;
        right: 10px;
    }

    .payment-options .button.pay {
        padding: 0;
        border: 0 solid;
        height: 100%;
        background-color: #ffffff;
    }

    .payment-options .button.pay.credit,
    .payment-options .button.pay.edgil_payway,
    .payment-options .button.pay.eigen,
    .payment-options .button.pay.obi,
    .payment-options .button.pay.datatrans,
    .payment-options .button.pay.stripe,
    .payment-options .button.pay.gmo,
    .payment-options .button.pay.chase {
        background-size: auto;
    }

    .table-form-inline td {
        display: block;
        width: 100% !important;
        border-bottom: 0 solid;
    }

    .table-form-inline td:first-child .field-wrapper {
        border-top-left-radius: 4px;
        border-top-right-radius: 4px;
    }

    .table-form-inline td:last-child .field-wrapper {
        border-bottom: 1px solid #e4e7eb;
        border-bottom-left-radius: 4px;
        border-bottom-right-radius: 4px;
    }

    .table-form-inline .field-wrapper {
        border-bottom: 0 solid;
        border-radius: 0;
    }

    /*--------------------------------------------------------------------------------------------------------------------
      Terms table
      --------------------------------------------------------------------------------------------------------------------*/
    .account-terms {
        width: 100%;
    }
    .account-terms thead {
        display: none;
    }
    .account-terms tbody td {
        padding-top: 18px;
        padding-bottom: 17px;
    }
    .account-terms tbody .title {
        padding-left: 30px;
    }

    .account-terms tbody .choose {
        padding-left: 0;
        padding-right: 30px;
        vertical-align: middle;
    }

    /*--------------------------------------------------------------------------------------------------------------------
        Access check Vanilla
    --------------------------------------------------------------------------------------------------------------------*/
    .header-title-information {
        margin-left: 30px;
        margin-right: 30px;
        padding-bottom: 19px;
    }

    .floating-table.single-field-table,
    .floating-table {
        width: auto;
        margin: 0 30px 0;
    }

    .floating-table-cell:nth-child(odd) {
        padding-right: 0;
    }

    .floating-table-cell {
        width: 100%;
    }

    a.button.promo-code-apply {
        width: 100%;
        min-width: 100%;
    }

    .floating-table-cell .hint {
        display: none;
    }

    .access-footer.vanilla2 {
        padding-top: 10px;
        border-top: 0 solid;
    }
    .vanilla2 .access-footer-content .access-button {
        display: block;
        padding: 0 30px 10px;
    }


    .billing-country-group {
        margin-bottom: 10px;
        margin-left: 0;
        max-width: 100%;
        width: 100%;
    }

    .billing-country .tp-dropdown__select {
        max-width: 100%;
    }

    .billing-country input[type="text"] {
        width: 100%;
    }

    .calling-cell {
        padding-right: 0;
        width: 100%;
        margin-bottom: 15px;
    }

    .phone-input-cell {
        width: 100%;
    }
}

input::-webkit-input-placeholder { /* WebKit, Blink, Edge */
    color:    #b8babf;
}

input:-moz-placeholder { /* Mozilla Firefox 4 to 18 */
    color:    #b8babf;
    opacity:  1;
}

input::-moz-placeholder { /* Mozilla Firefox 19+ */
    color:    #b8babf;
    opacity:  1;
}

input:-ms-input-placeholder { /* Internet Explorer 10-11 */
    color:    #b8babf;
}

/*-------------------------------------------------------------------------------------------------------
	tp-dropdown component
-----------------------------------------------------------------------------------------------------*/

.tp-dropdown__select {
    cursor: pointer;
    width: 100%;
    height: 30px;
    line-height: 30px;
    padding: 0 10px 0 0;
    border: none;
    margin: 0;
    border-radius: 2px;
    font-size: 13px;
    vertical-align: baseline;
    background-color: #fff;
}
.tp-dropdown__select:focus {
    border: 1px solid #468cc8;
}

.payu-form .tp-dropdown__select {
    position: relative;
    font-size: 16px;
    height: 40px;
    line-height: 40px;
    background-color: transparent;
}

.payu-form .tp-dropdown__select:before {
    border-color: rgba(0, 0, 0, 0.7) transparent transparent;
    border-style: solid;
    border-width: 6px 6px 0;
    content: "";
    height: 0;
    position: absolute;
    right: 10px;
    top: 20px;
    transform: translateY(-50%);
    width: 0;
}

.payu-form .tp-dropdown__item-color.blue {
    color: black;
}

.component-opened .tp-dropdown__select {
    pointer-events: none;
}

.ellipsis.tp-dropdown__select_auto_width {
    width: auto;
}

.tp-dropdown__select_icon_arrow_down {
    opacity: 0.5;
    margin-top: 10px;
    background-position: -320px -822px;
}

.tp-dropdown__container {
    display: none;
    position: relative;
    z-index: 400;
    box-shadow: 0 5px 15px rgba(58, 124, 219, 0.1);
    background: #ffffff;
    border-radius: 4px;
    margin: 10px 0;
}

@media (max-width: 360px) {
    .tp-dropdown__container {
        width: 240px!important;
    }
}

.tp-dropdown__tail:before {
    content: '';
    display: block;
    position: absolute;
    width: 0;
    height: 0;
    border-style: solid;
}

.tp-dropdown__tail_position_top:before {
    top: -5px;
    border-width: 0 5px 5px 5px;
}

.tp-dropdown__tail_position_bottom:before {
    bottom: -5px;
    border-width: 5px 5px 0 5px;
}

.tp-dropdown__tail_position_center:before,
.tp-dropdown__tail_position_center:after {
    left: 50%;
    margin-left: -5px;
}

.tp-dropdown__tail_theme_blue.tp-dropdown__tail_position_top:before {
    border-color: transparent transparent #194ba3 transparent;
}

.tp-dropdown__tail_theme_blue.tp-dropdown__tail_position_bottom:before {
    border-color: #194ba3 transparent transparent transparent;
}

.tp-dropdown__tail_theme_white.tp-dropdown__tail_position_top:before {
    border-color: transparent transparent #c8d2e1 transparent;
}

.tp-dropdown__tail_theme_white.tp-dropdown__tail_position_bottom:before {
    border-color: #c8d2e1 transparent transparent transparent;
}

.no-triangle .tp-dropdown__tail_theme_white.tp-dropdown__tail_position_bottom:before,
.no-triangle .tp-dropdown__tail_theme_white.tp-dropdown__tail_position_bottom:after {
    border-color: transparent;
}

.tp-dropdown__tail_theme_white.tp-dropdown__tail_position_top:after {
    content: '';
    display: block;
    position: absolute;
    width: 0;
    height: 0;
    border-style: solid;
    top: -4px;
    border-color: transparent transparent #ffffff transparent;
    border-width: 0 5px 5px 5px;
}

.tp-dropdown__tail_theme_white.tp-dropdown__tail_position_bottom:after {
    content: '';
    display: block;
    position: absolute;
    width: 0;
    height: 0;
    border-style: solid;
    bottom: -4px;
    border-color: #ffffff transparent transparent transparent;
    border-width: 5px 5px 0 5px;
}


.tp-dropdown__head {
    background: #194ba3;
    border-radius: 4px 4px 0 0;
    height: 41px;
    position: relative;
}

.tp-dropdown__title {
    display: block;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    font-size: 9px;
    text-transform: uppercase;
    letter-spacing: 1px;
    color: #ffffff;
    padding-top: 16px;
    text-align: center;
}

.tp-dropdown__nav {
    position: absolute;
    top: 10px;
}

.tp-dropdown__nav_left {
    left: 3px;
}

.tp-dropdown__nav_right {
    right: 3px;
}

.tp-dropdown__list-category-label {
    color: #a1aab6;
    font-size: 9px;
    text-transform: uppercase;
    display: block;
    padding: 5px 9px 3px 9px;
    line-height: 22px;
}

.tp-dropdown__list {
    border-radius: 4px;
    border: 1px solid #c8d2e1;
}

.tp-dropdown__list_no-top {
    border-top: none;
    border-top-left-radius: 0;
    border-top-right-radius: 0;
}

.tp-dropdown__item {

}

.tp-dropdown__item:last-child .tp-dropdown__link {
    border-bottom-left-radius: 4px;
    border-bottom-right-radius: 4px;
}

.tp-dropdown__item:first-child .tp-dropdown__link {
    border-top-left-radius: 4px;
    border-top-right-radius: 4px;
}

.tp-dropdown__item_heading {
    padding: 5px 9px 2px 9px;
    color: #a1aab6;
    font-size: 9px;
    text-transform: uppercase;
    font-family: "BentonSans Medium", Helvetica, Arial, sans-serif;
    letter-spacing: 1px;
    line-height: 22px;
}

.tp-dropdown__item_control {
    padding: 5px 4px;
}

.tp-dropdown__item_divider {
    height: 1px;
    width: 100%;
    background: #c8d2e1;
    padding: 0;
    margin: 0;
}

.tp-dropdown__item_border_divider {
    border-top: 1px solid #c8d2e1;
}

.tp-dropdown__item_border_divider:first-child {
    border-top-width: 0;
}

.tp-dropdown__text-highlight {
    color: #3b8ede;
}

.tp-dropdown__item-color.grey {
    color: #a1aab6;
}

.tp-dropdown__item-color.blue {
    color: #0088cc;
}

.tp-dropdown__item-color.dark-blue {
    color: #20225e;
}

.tp-dropdown__link {
    color: #40526a !important;
    font-size: 13px;
    display: block;
    padding: 5px 9px 3px 9px;
    line-height: 22px;
    white-space: nowrap;
    max-width: 100%;
    box-sizing: border-box;
    overflow: hidden;
    text-overflow: ellipsis;
}

.tp-dropdown__link-category.tp-dropdown__link-active,
.tp-dropdown__link-category.tp-dropdown__link-current,

.tp-dropdown__link-active,
.tp-dropdown__link-current,
.tp-dropdown__link:hover {
    background-color: #eff5fc;
}

.tp-dropdown__link-active,
.tp-dropdown__link-current,
.tp-dropdown__link:focus {
    background-color: #eff5fc;
}

.tp-dropdown__link-category {
    text-transform: capitalize;
    background: url(../img/selector-carets.png) 133px -95px no-repeat;
}

.tp-dropdown__link-category.tp-dropdown__link-active,
.tp-dropdown__link-category.tp-dropdown__link-current,
.tp-dropdown__link-category:hover {
    background-position-y: -63px;
}

.tp-dropdown__scrollable-list {
    overflow: hidden;
    position: relative;
}

.tp-dropdown__categories {
    float: left;
    width: 150px;
    border-right: 1px solid #c8d2e1;
}

.tp-dropdown__categories,
.tp-dropdown__categories-height_medium,
.tp-dropdown__scrollable-list_medium {
    height: 200px;
}

.dropdown-link-group {

}

.dropdown-link-group__link {
    float: left;
    width: 50%;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    padding-right: 5px;
}

.country-icon {
    display: inline-block;
    width: 24px;
    height: 16px;
    margin: -3px 7px 0 0;
    vertical-align: middle;
    background: url(../img/flags/24x24/flags.png) 0 0 no-repeat;
}

.country-icon-hidden {
    display: none;
}

.country-icon-af {
    background-position: -52px 0;
}

.country-icon-al {
    background-position: -130px 0;
}

.country-icon-dz {
    background-position: -26px -72px;
}

.country-icon-as {
    background-position: -260px 0;
}

.country-icon-ao {
    background-position: -182px 0;
}

.country-icon-ai {
    background-position: -104px 0;
}

.country-icon-aq {
    background-position: -208px 0;
}

.country-icon-ag {
    background-position: -78px 0;
}

.country-icon-ar {
    background-position: -234px 0;
}

.country-icon-am {
    background-position: -156px 0;
}

.country-icon-aw {
    background-position: -338px 0;
}

.country-icon-au {
    background-position: -312px 0;
}

.country-icon-at {
    background-position: -286px 0;
}

.country-icon-az {
    background-position: 0 -18px;
}

.country-icon-bs {
    background-position: -26px -36px;
}

.country-icon-bh {
    background-position: -182px -18px;
}

.country-icon-bd {
    background-position: -78px -18px;
}

.country-icon-bb {
    background-position: -52px -18px;
}

.country-icon-by {
    background-position: -130px -36px;
}

.country-icon-be {
    background-position: -104px -18px;
}

.country-icon-bz {
    background-position: -156px -36px;
}

.country-icon-bj {
    background-position: -234px -18px;
}

.country-icon-bm {
    background-position: -286px -18px;
}

.country-icon-bt {
    background-position: -52px -36px;
}

.country-icon-bo {
    background-position: -338px -18px;
}

.country-icon-bq {
    background-position: -364px -18px;
}

.country-icon-ba {
    background-position: -26px -18px;
}

.country-icon-bw {
    background-position: -104px -36px;
}

.country-icon-bv {
    background-position: -78px -36px;
}

.country-icon-br {
    background-position: 0 -36px;
}

.country-icon-io {
    background-position: 0 -126px;
}

.country-icon-bn {
    background-position: -312px -18px;
}

.country-icon-bg {
    background-position: -156px -18px;
}

.country-icon-bf {
    background-position: -130px -18px;
}

.country-icon-bi {
    background-position: -208px -18px;
}

.country-icon-cv {
    background-position: -182px -54px;
}

.country-icon-kh {
    background-position: -286px -126px;
}

.country-icon-cm {
    background-position: -26px -54px;
}

.country-icon-ca {
    background-position: -182px -36px;
}

.country-icon-ky {
    background-position: -78px -144px;
}

.country-icon-cf {
    background-position: -260px -36px;
}

.country-icon-td {
    background-position: -104px -18px;
}

.country-icon-cl {
    background-position: 0 -54px;
}

.country-icon-cn {
    background-position: -52px -54px;
}

.country-icon-cx {
    background-position: -208px -54px;
}

.country-icon-cc {
    background-position: -208px -36px;
}

.country-icon-co {
    background-position: -78px -54px;
}

.country-icon-km {
    background-position: -338px -126px;
}

.country-icon-cg {
    background-position: -286px -36px;
}

.country-icon-cd {
    background-position: -234px -36px;
}

.country-icon-ck {
    background-position: -364px -36px;
}

.country-icon-cr {
    background-position: -104px -54px;
}

.country-icon-hr {
    background-position: -182px -108px;
}

.country-icon-cu {
    background-position: -130px -54px;
}

.country-icon-cw {
    background-position: -182px -54px;
}

.country-icon-cy {
    background-position: -234px -54px;
}

.country-icon-cz {
    background-position: -260px -54px;
}

.country-icon-ci {
    background-position: -338px -36px;
}

.country-icon-dk {
    background-position: -338px -54px;
}

.country-icon-dj {
    background-position: -312px -54px;
}

.country-icon-dm {
    background-position: -364px -54px;
}

.country-icon-do {
    background-position: 0 -72px;
}

.country-icon-ec {
    background-position: -52px -72px;
}

.country-icon-eg {
    background-position: -104px -72px;
}

.country-icon-sv {
    background-position: -364px -234px;
}

.country-icon-gq {
    background-position: -312px -90px;
}

.country-icon-er {
    background-position: -156px -72px;
}

.country-icon-ee {
    background-position: -78px -72px;
}

.country-icon-et {
    background-position: -208px -72px;
}

.country-icon-fk {
    background-position: -286px -72px;
}

.country-icon-fo {
    background-position: -338px -72px;
}

.country-icon-fj {
    background-position: -260px -72px;
}

.country-icon-fi {
    background-position: -234px -72px;
}

.country-icon-fr {
    background-position: -130px -288px;
}

.country-icon-gf {
    background-position: -104px -90px;
}

.country-icon-pf {
    background-position: -234px -198px;
}

.country-icon-tf {
    background-position: -130px -252px;
}

.country-icon-ga {
    background-position: 0 -90px;
}

.country-icon-gm {
    background-position: -234px -90px;
}

.country-icon-ge {
    background-position: -78px -90px;
}

.country-icon-de {
    background-position: -286px -54px;
}

.country-icon-gh {
    background-position: -156px -90px;
}

.country-icon-gi {
    background-position: -182px -90px;
}

.country-icon-gr {
    background-position: -338px -90px;
}

.country-icon-gl {
    background-position: -208px -90px;
}

.country-icon-gd {
    background-position: -52px -90px;
}

.country-icon-gp {
    background-position: -286px -90px;
}

.country-icon-gu {
    background-position: -26px -108px;
}

.country-icon-gt {
    background-position: 0 -108px;
}

.country-icon-gg {
    background-position: -130px -90px;
}

.country-icon-gn {
    background-position: -260px -90px;
}

.country-icon-gw {
    background-position: -52px -108px;
}

.country-icon-gy {
    background-position: -78px -108px;
}

.country-icon-ht {
    background-position: -208px -108px;
}

.country-icon-hm {
    background-position: -312px 0;
}

.country-icon-va {
    background-position: -260px -270px;
}

.country-icon-hn {
    background-position: -156px -108px;
}

.country-icon-hk {
    background-position: -104px -108px;
}

.country-icon-hu {
    background-position: -234px -108px;
}

.country-icon-is {
    background-position: -130px -234px;
}

.country-icon-in {
    background-position: -364px -108px;
}

.country-icon-id {
    background-position: -260px -108px;
}

.country-icon-ir {
    background-position: -52px -126px;
}

.country-icon-iq {
    background-position: -26px -126px;
}

.country-icon-ie {
    background-position: -286px -108px;
}

.country-icon-im {
    background-position: -338px -108px;
}

.country-icon-il {
    background-position: -312px -108px;
}

.country-icon-it {
    background-position: -104px -126px;
}

.country-icon-jm {
    background-position: -156px -126px;
}

.country-icon-jp {
    background-position: -208px -126px;
}

.country-icon-je {
    background-position: -130px -126px;
}

.country-icon-jo {
    background-position: -182px -126px;
}

.country-icon-kz {
    background-position: -104px -144px;
}

.country-icon-ke {
    background-position: -234px -126px;
}

.country-icon-ki {
    background-position: -312px -126px;
}

.country-icon-kp {
    background-position: 0 -144px;
}

.country-icon-kr {
    background-position: -26px -144px;
}

.country-icon-kw {
    background-position: -52px -144px;
}

.country-icon-kg {
    background-position: -260px -126px;
}

.country-icon-la {
    background-position: -130px -144px;
}

.country-icon-lv {
    background-position: -364px -144px;
}

.country-icon-lb {
    background-position: -156px -144px;
}

.country-icon-ls {
    background-position: -286px -144px;
}

.country-icon-lr {
    background-position: -260px -144px;
}

.country-icon-ly {
    background-position: 0 -162px;
}

.country-icon-li {
    background-position: -208px -144px;
}

.country-icon-lt {
    background-position: -312px -144px;
}

.country-icon-lu {
    background-position: -338px -144px;
}

.country-icon-mo {
    background-position: -312px -162px;
}

.country-icon-mk {
    background-position: -208px -162px;
}

.country-icon-mg {
    background-position: -156px -162px;
}

.country-icon-mw {
    background-position: -130px -180px;
}

.country-icon-my {
    background-position: -182px -180px;
}

.country-icon-mv {
    background-position: -104px -180px;
}

.country-icon-ml {
    background-position: -234px -162px;
}

.country-icon-mt {
    background-position: -52px -180px;
}

.country-icon-mh {
    background-position: -182px -162px;
}

.country-icon-mq {
    background-position: -364px -162px;
}

.country-icon-mr {
    background-position: 0 -180px;
}

.country-icon-mu {
    background-position: -78px -180px;
}

.country-icon-yt {
    background-position: -182px -216px;
}

.country-icon-mx {
    background-position: -156px -180px;
}

.country-icon-fm {
    background-position: -312px -72px;
}

.country-icon-md {
    background-position: -78px -162px;
}

.country-icon-mc {
    background-position: -52px -162px;
}

.country-icon-mn {
    background-position: -286px -162px;
}

.country-icon-me {
    background-position: -104px -162px;
}

.country-icon-ms {
    background-position: -26px -180px;
}

.country-icon-ma {
    background-position: -26px -162px;
}

.country-icon-mz {
    background-position: -208px -180px;
}

.country-icon-mm {
    background-position: -260px -162px;
}

.country-icon-na {
    background-position: -234px -180px;
}

.country-icon-nr {
    background-position: -78px -198px;
}

.country-icon-np {
    background-position: -52px -198px;
}

.country-icon-nl {
    background-position: 0 -198px;
}

.country-icon-nc {
    background-position: -260px -180px;
}

.country-icon-nz {
    background-position: -130px -198px;
}

.country-icon-ni {
    background-position: -364px -180px;
}

.country-icon-ne {
    background-position: -286px -180px;
}

.country-icon-ng {
    background-position: -338px -180px;
}

.country-icon-nu {
    background-position: -104px -198px;
}

.country-icon-nf {
    background-position: -312px -180px;
}

.country-icon-mp {
    background-position: -338px -162px;
}

.country-icon-no {
    background-position: -26px -198px;
}

.country-icon-om {
    background-position: -156px -198px;
}

.country-icon-pk {
    background-position: -312px -198px;
}

.country-icon-pw {
    background-position: -104px -216px;
}

.country-icon-ps {
    background-position: -52px -216px;
}

.country-icon-pa {
    background-position: -182px -198px;
}

.country-icon-pg {
    background-position: -260px -198px;
}

.country-icon-py {
    background-position: -130px -216px;
}

.country-icon-pe {
    background-position: -208px -198px;
}

.country-icon-ph {
    background-position: -286px -198px;
}

.country-icon-pn {
    background-position: 0 -216px;
}

.country-icon-pl {
    background-position: -338px -198px;
}

.country-icon-pt {
    background-position: -78px -216px;
}

.country-icon-pr {
    background-position: -26px -216px;
}

.country-icon-qa {
    background-position: -156px -216px;
}

.country-icon-ro {
    background-position: -208px -216px;
}

.country-icon-ru {
    background-position: -260px -216px;
}

.country-icon-rw {
    background-position: -286px -216px;
}

.country-icon-re {
    background-position: -182px -216px;
}

.country-icon-bl {
    background-position: -182px -216px;
}

.country-icon-sh {
    background-position: -78px -234px;
}

.country-icon-kn {
    background-position: -364px -126px;
}

.country-icon-lc {
    background-position: -182px -144px;
}

.country-icon-mf {
    background-position: -286px -198px;
}

.country-icon-pm {
    background-position: -364px -198px;
}

.country-icon-vc {
    background-position: -286px -270px;
}

.country-icon-ws {
    background-position: -78px -288px;
}

.country-icon-sm {
    background-position: -208px -234px;
}

.country-icon-st {
    background-position: -338px -234px;
}

.country-icon-sa {
    background-position: -312px -216px;
}

.country-icon-sn {
    background-position: -234px -234px;
}

.country-icon-rs {
    background-position: -234px -216px;
}

.country-icon-sc {
    background-position: -364px -216px;
}

.country-icon-sl {
    background-position: -182px -234px;
}

.country-icon-sg {
    background-position: -52px -234px;
}

.country-icon-sx {
    background-position: 0 -252px;
}

.country-icon-sk {
    background-position: -156px -234px;
}

.country-icon-si {
    background-position: -104px -234px;
}

.country-icon-sb {
    background-position: -338px -216px;
}

.country-icon-so {
    background-position: -260px -234px;
}

.country-icon-za {
    background-position: -156px -288px;
}

.country-icon-gs {
    background-position: -338px -270px;
}

.country-icon-ss {
    background-position: -312px -234px;
}

.country-icon-es {
    background-position: -182px -72px;
}

.country-icon-lk {
    background-position: -234px -144px;
}

.country-icon-sd {
    background-position: 0 -234px;
}

.country-icon-sr {
    background-position: -286px -234px;
}

.country-icon-sj {
    background-position: -26px -198px;
}

.country-icon-sz {
    background-position: -52px -252px;
}

.country-icon-se {
    background-position: -26px -234px;
}

.country-icon-ch {
    background-position: -312px -36px;
}

.country-icon-sy {
    background-position: -26px -252px;
}

.country-icon-tw {
    background-position: -52px -270px;
}

.country-icon-tj {
    background-position: -208px -252px;
}

.country-icon-tz {
    background-position: -78px -270px;
}

.country-icon-th {
    background-position: -182px -252px;
}

.country-icon-tl {
    background-position: -260px -252px;
}

.country-icon-tg {
    background-position: -156px -252px;
}

.country-icon-tk {
    background-position: -234px -252px;
}

.country-icon-to {
    background-position: -338px -252px;
}

.country-icon-tt {
    background-position: 0 -270px;
}

.country-icon-tn {
    background-position: -312px -252px;
}

.country-icon-tr {
    background-position: -364px -252px;
}

.country-icon-tm {
    background-position: -286px -252px;
}

.country-icon-tc {
    background-position: -78px -252px;
}

.country-icon-tv {
    background-position: -26px -270px;
}

.country-icon-ug {
    background-position: -130px -270px;
}

.country-icon-ua {
    background-position: -104px -270px;
}

.country-icon-ae {
    background-position: -26px 0;
}

.country-icon-gb {
    background-position: -78px -234px;
}

.country-icon-us {
    background-position: -156px -270px;
}

.country-icon-um {
    background-position: -182px -270px;
}

.country-icon-uy {
    background-position: -208px -270px;
}

.country-icon-uz {
    background-position: -234px -270px;
}

.country-icon-vu {
    background-position: -26px -288px;
}

.country-icon-ve {
    background-position: -312px -270px;
}

.country-icon-vn {
    background-position: 0 -288px;
}

.country-icon-vg {
    background-position: -78px -144px;
}

.country-icon-vi {
    background-position: -364px -270px;
}

.country-icon-wf {
    background-position: -52px -288px;
}

.country-icon-eh {
    background-position: -130px -72px;
}

.country-icon-ye {
    background-position: -104px -288px;
}

.country-icon-zm {
    background-position: -182px -288px;
}

.country-icon-zw {
    background-position: -208px -288px;
}

.country-icon-ax {
    background-position: -364px 0;
}

.auth-state-valid {
    height: 215px;
}

.field-card-birth-date [tp-datepicker],
.field-card-birth-date .tp-datepicker {
    height: auto;
    display: block;
}

/*--------------------------------------------------------------------------------------------------------------------
  Common Elements
  --------------------------------------------------------------------------------------------------------------------*/
.table-cell {
    display: table-cell;
}

.table-cell--centered {
    vertical-align: middle;
}

.done-icon {
    background: url(/ng/common/img/tick-green.png) center no-repeat;
    background-size: 20px 20px;
    background-position-x: 20px;
    width: 60px;
    height: 60px;
    border: 1px solid rgba(0, 0, 0, 0.1);
    border-radius: 50%;
    display: inline-block;
}

/*--------------------------------------------------------------------------------------------------------------------
  Boilerplate close button
  --------------------------------------------------------------------------------------------------------------------*/
.boilerplate-close-button {
    box-sizing: border-box;
    width: 52px;
    height: 25px;
    margin-top: 15px;
    border-left: 1px solid #d6d6d6;
    background-color: #eaeaea;
    cursor: pointer;
    float:right;
}

.boilerplate-close-button {
    position: relative;
    display: inline-block;
}

.boilerplate-close-button:hover:after,
.boilerplate-close-button:hover:before {
    opacity: 0.7;
}

.boilerplate-close-button:after,
.boilerplate-close-button:before {
    position: absolute;
    top: 13px;
    left: 16px;
    content: '';
    width: 15px;
    height: 2px;
    background-color: #323232;
    z-index: 1;
    opacity: 0.3;
}

.boilerplate-close-button:after {
    transform: rotate(45deg);
}

.boilerplate-close-button:before {
    transform: rotate(-45deg);
}

.error-occurred-wrapper {
    display: none;
    position: absolute;
    z-index: 1;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background: #ffffff;
}

.loader-overlay {
    position: absolute;
    opacity: .5;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(153, 153, 153, 0.9);
}

.loader-overlay::before {
    top: 50%;
    width: 100%;
    position: absolute;
    display: block;
    margin-top: -66px;
    height: 66px;
    content: "";
    background: url('../img/Loader.gif') no-repeat center;
}

.align-content-center-flex {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;

    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;

    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.bank-secure-container {
    position: relative;
    width: 100%;
}

.bank-secure-loader {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.bank-secure-full-amount-attention {
  padding: 20px;
  font-weight: bold;
  margin: auto;
}

.onet-buttons-container {
    width: 100%;
    height: 100%;
}

.passwordless-login-form {
    text-align: center;
    padding: 40px 40px 20px;
    font-size: 12px;
}

.icon-email {
    background: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAAOxAAADsQBlSsOGwAAABl0RVh0U29mdHdhcmUAd3d3Lmlua3NjYXBlLm9yZ5vuPBoAAAGpSURBVFiF7da9axRBGAbwX4yHIARSiQjWflRpBS1S2glqqaWtoIVoFAQLa/8FIUUiCEYQLEQFRZPCxrtGAmITUQgIUbG4fBQ7y723dxc2d7sicg8MzMz78Twzu+/MMMYYHTRwBy20sV1xa6OJ24mrCxN4WgPpoLYUieECHqX+N7zFZvnNK4VJnMahND6Px7lxOai7VjFxxPXA8z4aWrq3aB7TFRJPp5yRoxUdFvV+py+YrYB8NuUq5l+MTgvB8Cn0t/AAB4YgbuCu7F/K830O/YVBAg4m0qi2iZk9kJ/Eh0KOh5gqIyDHWayF+T+4gX27EE/gCn6FuO84F3xKCyArmaXCSl7gaB/yw3hW8H2OIwW/PQnIcRkbwecHLgX7RawH+29c1TlnRhYAx7Cie4XzestrJfkOwtACyP7se/rfFe1k6znnqxSQ4xRWQ8xqmiuDLgH7SwYV8U5WljfT+D5+DpNoWAES4dwI8di9pv8KxgL+GQFfw9zxGvlOhP4anSp4JTs64TXeqOdJdiaMXxYdipdOne1JP4UNWV031fcs/4hbRjt/xvjPsAMYFf9+Xzn+HwAAAABJRU5ErkJggg==') no-repeat;
    background-size: contain;
}

.lead {
    text-transform: none;
    margin-bottom: 0.4em;
    margin-top: 1em !important;
    font-size: 1.7em;
    font-weight: 300;
}

.sub-lead {
    text-transform: none;
    color: #9397A0;
    font-size: 1.1667em;
}

.passwordless-input-group {
    position: relative;
    margin: 0;
    font-size: unset;
}

.passwordless-input-group.with-icon input {
    padding-right: 20px;
}

.passwordless-input-group .float {
    position: absolute;
    top: 15px;
    cursor: pointer;
    right: 2px;
    opacity: 0.2;
}

.passwordless-input-group .float:hover {
    opacity: 0.6;
}

input.passwordless-input {
    display: block;
    width: 100%;
    background: #FFFFFF;
    font-size: 1.1667em;
    margin-top: 26px;
    padding: 10px 0;
    box-sizing: border-box;
    border-radius: 0;
    color: #151515;
    font-weight: 300;
    line-height: 1.25em;
    letter-spacing: 0.025em;
    outline: none;
    text-transform: none;
    text-align: left;
}

input.passwordless-input.without-outline {
    border: 0;
    border-bottom: 1px solid #ECEEF1;
    outline: none;
    height: unset;
}

.passwordless-input + passwordless-placeholder,
input + .passwordless-placeholder,
input.empty:active + .passwordless-placeholder,
input.empty:focus + .passwordless-placeholder {
    transition: top .2s ease;
    position: absolute;
    top: -14px;
    left: 0;
}

input.empty + .passwordless-placeholder {
    top: 11px;
}

.passwordless-placeholder .icon {
    width: 12px;
    height: 12px;
    margin-right: 10px;
    vertical-align: middle;
    opacity: 0.3;
}

.passwordless-placeholder {
    pointer-events: none;
    color: #9397a0;
    text-transform: uppercase;
    font-size: 0.8334em;
    letter-spacing: 0.1em;
}

.btn {
    display: block;
    width: 100%;
    background: #2878af;
    font-size: 1em;
    padding: 14px 16px;
    box-sizing: border-box;
    border: 1px #2878af solid;
    border-radius: 0;
    color: #e8e8e8;
    font-weight: 300;
    letter-spacing: 0.1em;
    outline: none;
    cursor: pointer;
    text-align: center;
    text-transform: uppercase;
    text-decoration: none;
}

.btn:active, .btn:hover {
    background: #3182b9;
    border-color: #3182b9;
    text-decoration: none;
}

.btn.prime {
    position: relative;
    text-align: left;
    background: #034b7c;
    border-color: #034b7c;
    color: #e8e8e8;
}

.btn.prime[disabled] {
    cursor: unset;
    pointer-events: none;
    opacity: 0.5;
}

.btn.prime > * {
    transition: width .5s ease;
    display: inline-block;
    text-align: center;
    white-space: nowrap;
    width: 100%;
}

.btn.prime:active > *,
.btn.prime:hover > * {
    width: 0;
}

.btn.prime:active:after,
.btn.prime:hover:after {
    content: "";
    color: white;
    position: absolute;
    right: 16px;
    top: 16px;
    width: 12px;
    height: 12px;
    background-repeat: no-repeat;
    background-size: contain;
    background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYBAMAAAASWSDLAAAALVBMVEUAAADv7+/n5+fr6+vo6Ojn5+fo6Ojo6Ojo6Ojo6Ojn5+fo6Ojp6eno6Oj///8Bhd/4AAAADXRSTlMAEBUav8LGycrS2fLy4JDZDwAAAAFiS0dEDm+9ME8AAAA7SURBVBjTY2CgDmBtQuJw3FRAcBh7FyNJSdwywC/FehcKDiBzNiCUWd0QgLOZ1zYSIcGO7ByWJKr4FwCuGBuF1nK4dwAAAABJRU5ErkJggg==');
}

.pane {
    display: block;
    position: relative;
    padding-top: 40px;
    min-height: 60px;
}

.pane:before {
    content: "";
    display: block;
    position: absolute;
    margin: 0 -40px 0;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    height: 100px;
    background-color: #E4F1F5;
    background-image: -o-linear-gradient(55deg, #F2F8FD 30%, #E3F0F4 70%);
    background-image: -moz-linear-gradient(55deg, #F2F8FD 30%, #E3F0F4 70%);
    background-image: -webkit-linear-gradient(55deg, #F2F8FD 30%, #E3F0F4 70%);
    background-image: -ms-linear-gradient(55deg, #F2F8FD 30%, #E3F0F4 70%);
    background-image: linear-gradient(55deg, #F2F8FD 30%, #E3F0F4 70%);
}

.error-message {
    margin-top: 6px;
    color: #eb6465;
    font-size: 10px;
    line-height: 2em;
    text-align: left;
}

.re-captcha--centered {
    position: relative;
    display: inline-block;
    margin: 20px auto 10px;
}

.re-captcha--right-padded {
    padding-right: 50px;
}

.re-captcha--mobile {
    transform: scale(0.7);
    transform-origin: 0;
}

.re-captcha--mobile.re-captcha--mobile-wide {
    transform-origin: unset;
}

.pn-icon--refresh {
    background: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' preserveAspectRatio='xMidYMid' viewBox='0 0 20 20' fill='%231c2544'%3E%3Cpath d='M17 3v2.8C15.7 3.5 13.2 2 10.5 2 6.4 2 3 5.3 3 9.5c0 4.1 3.3 7.5 7.5 7.5 4.1 0 7.5-3.3 7.5-7.5h-1c0 2.7-1.7 5.1-4.2 6.1-3.4 1.3-7.1-.4-8.4-3.8-1.3-3.3.4-7.1 3.8-8.4 2.9-1.1 6.2 0 7.8 2.6h-2v1h4V3h-1z'/%3E%3C/svg%3E") no-repeat;
    display: inline-block;
}

.reset-icon {
    position: absolute;
    top: 50%;
    right: 0;
    margin-top: -20px;
    width: 40px;
    height: 40px;
    background-repeat: no-repeat;
    background-size: contain;
    opacity: 0.3;
    cursor: pointer;
}

@supports (-webkit-overflow-scrolling: touch) {
    select,
    input[type="text"],
    input[type="number"],
    input[type="date"],
    input[type="password"] {
        font-size: 16px !important;
    }
}


.upgrade-complete-footer {
    padding: 22px 30px;
    background: #fafafa;
    text-align: right;
}

.upgrade-complete-footer .button {
    margin-right: 0;
    margin-left: 10px;
}

.upgrade-complete-footer .confirmation-button{
    margin-right: 0;
    margin-left: 10px;
}

.subscription-changes-list {
    list-style: none;
}

.subscription-changes-list .list-item {
    display: flex;
    justify-content: flex-start;
    margin-top: 10px;
}

.subscription-changes-list .list-item--bullet::before {
    content: "\2022";
    color: #000000;
    display: flex;
    width: 24px;
    height: 30px;
    font-size: 16px;
    margin-right: 16px;
    flex: 0;
    justify-content: center;
    align-items: center;
}

.subscription-changes-list .list-item .item-text {
    font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
    font-size: 13px;
    line-height: 30px;
    color:  #000000;
}

.upgrade-container {
    padding: 30px;
}

.upgrade-container__additional-information {
    margin-top: 30px;
}

.upgrade-title {
    font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
    font-style: normal;
    font-weight: normal;
    font-size: 16px;
    line-height: 16px;
    color: #000000;
}

.manage-payment-method-wrapper {
  margin: 0 30px 20px 30px;
}

a.button.cancel-button {
    background-color: #c9c9c9;
    color: #FFFFFF;
}

.fixed--middle{
    min-width: 120px;
}

a.button.cancel-button--primary {
    background-color: #428bca;
    color: #FFFFFF;
}
