@import url('https://fonts.googleapis.com/css2?family=Open+Sans:ital,wght@0,300..800;1,300..800&display=swap');

 *,*::before,*::after{
    box-sizing:border-box;
    -webkit-box-sizing:border-box
}
html{
    -ms-text-size-adjust:100%;
    -webkit-text-size-adjust:100%;
    box-sizing:border-box;
    touch-action:manipulation
}
body{
    -webkit-font-smoothing:antialiased;
    -moz-osx-font-smoothing:grayscale;
    text-rendering:optimizeLegibility;
    font-feature-settings:"liga";
    overflow-x:hidden
}
html,body,pre{
    padding:0;
    margin:0
}
a{
    background-color:rgba(0,0,0,0);
    text-decoration:none
}
a:active,a:hover{
    outline:0
}
button,select{
    text-transform:none
}
button[disabled],html input[disabled]{
    cursor:default
}
button::-moz-focus-inner,input::-moz-focus-inner{
    border:0;
    padding:0
}
input{
    line-height:normal
}
pre{
    overflow:auto
}
table{
    border-collapse:collapse;
    border-spacing:0
}
table th,table td{
    padding:0
}
[hidden],#template,template{
    display:none
}
img{
    border:none;
    max-width:100%
}
@keyframes loader{
    100%{
        transform:rotate(1turn)
    }
}
.flex{
    display:flex;
    align-items:center;
    justify-content:center
}
.flex-item{
    flex:1
}
.flex-item--50{
    flex:0 0 50%
}
.flex--center{
    align-items:center;
    justify-content:center
}
.flex--start{
    justify-content:flex-start
}
.flex--top{
    align-items:flex-start
}
.flex--between{
    justify-content:space-between
}
.col{
    margin:0 16px
}
.col:first-child{
    margin-left:0
}
.col:last-child{
    margin-right:0
}
@media screen and (max-width: 400px){
    .p4 .col{
        margin:0 8px
    }
    .p4 .col:first-child{
        margin-left:0
    }
    .p4 .col:last-child{
        margin-right:0
    }
}
.width-100{
    width:100%
}
.hidden{
    opacity:0;
    visibility:hidden
}
.auto{
    margin-left:auto;
    margin-right:auto
}
.max-680{
    max-width:680px
}
.margin-b-20{
    margin-bottom:20px
}
.margin-t-12{
    margin-top:12px
}
.text-left{
    text-align:left;
    align-self:flex-start
}
.text-right{
    text-align:right;
    align-self:flex-end
}
.text-center{
    text-align:center;
    align-self:center
}
.text-uppercase{
    text-transform:uppercase
}
.relative{
    position:relative
}
.font--500{
    font-weight:500
}
.font--semi-bold{
    font-weight:600
}
body{
    font-family: "Open Sans", sans-serif;
    font-size:1em;
    font-weight:400;
    line-height:1.75em;
    font-style:normal;
    background:#f1fdff;
    color:#000
}
.section--payment{
    padding:48px 16px 64px 16px;
    max-width:832px;
    margin:auto
}
.section--payment .h2{
    font-size:36px;
    font-weight:400;
    line-height:54px;
    letter-spacing:0;
    text-align:center;
    margin-top:0;
    margin-bottom:24px
}
@media screen and (max-width: 1024px){
    .section--payment .h2{
        font-size:24px;
        line-height:36px
    }
}
.payment2{
    padding:48px 0 64px 0
}
.payment2 .ui-form{
    max-width:283px;
    width:100%
}
.payment2 .ui-label{
    white-space:nowrap
}
.payment2-h1{
    font-size:36px;
    font-weight:400;
    line-height:54px;
    letter-spacing:0;
    text-align:center;
    margin-top:0;
    margin-bottom:24px
}
@media screen and (max-width: 1024px){
    .payment2-h1{
        font-size:24px;
        line-height:36px
    }
}
.payment2-content{
    margin:auto
}
.payment2-content__left{
    position:relative;
    padding-right:30px
}
@media screen and (max-width: 800px){
    .payment2-content__left{
        display:none
    }
}
.payment2-content__left:after{
    content:"";
    position:absolute;
    width:674px;
    height:681px;
    top:-163px;
    left:-130px;
    background:url(../img/gradient.svg) center center no-repeat;
    background-size:cover
}
.payment2-content__right{
    padding-left:30px;
    position:relative;
    z-index:2
}
@media screen and (max-width: 800px){
    .payment2-content__right{
        padding:0 8px
    }
}
.payment2-container{
    max-width:832px;
    padding-left:16px;
    padding-right:16px;
    margin:auto
}
.payment2-card{
    border-bottom:1px solid hsla(0,0%,100%,.77);
    border-right:1px solid hsla(0,0%,100%,.5);
    background:linear-gradient(112.91deg, #C7E1FF 3.51%, #99D1F1 50.85%, #ECF5FF 111.71%);
    position:relative;
    z-index:1;
    width:386px;
    height:239px;
    border-radius:32px;
    padding:64px 32px 32px 32px
}
.payment2-card__type{
    position:absolute;
    right:32px;
    top:32px;
    width:60px;
    height:38px;
    background-size:contain;
    background-repeat:no-repeat;
    background-position:right center
}
.payment2-card__type[data-icon=visa]{
    width:70px;
    height:21px;
    background-image:url(../images/payment2/card-types/visa.svg)
}
.payment2-card__type[data-icon=mastercard]{
    background-image:url(../images/payment2/card-types/mastercard.svg)
}
.payment2-card__type[data-icon=amex]{
    background-image:url(../images/payment2/card-types/amex.svg)
}
.payment2-card__type[data-icon=jcb]{
    background-image:url(../images/payment2/card-types/jcb.svg)
}
.payment2-card__type[data-icon=discover]{
    background-image:url(../images/payment2/card-types/discover.svg)
}
.payment2-card__type[data-icon=unionPay]{
    background-image:url(../images/payment2/card-types/unionPay.svg)
}
.payment2-card__type[data-icon=diners]{
    width:49px;
    height:32px;
    top:29px;
    transform:scale(1.4);
    background-image:url(../images/payment2/card-types/diners.svg)
}
.payment2-card__chip{
    width:39px;
    height:31px;
    background:url(../img/card-chip.svg) center center no-repeat
}
.payment2-card__number{
    font-size:22px;
    margin:23px 0 20px 0;
    color:#d0edf4;
    height:28px
}
.payment2-card__number.changed{
    color:#fff;
    font-weight:500
}
.payment2-card__info{
    justify-content:flex-start
}
.payment2-card__info-cell{
    overflow:hidden;
    white-space:nowrap;
    text-overflow:ellipsis
}
.payment2-card__info-cell--name{
    padding-right:8px;
    flex:auto
}
.payment2-card__info-cell--expiry{
    padding-right:8px;
    min-width:72px
}
.payment2-card__info-cell--cvv{
    flex:0 0 40px
}
.payment2-card__label{
    font-size:12px;
    line-height:20px;
    color:#767db5;
    display:block
}
.payment2-card__value{
    font-size:16px;
    color:#d0edf4;
    white-space:nowrap;
    height:23px;
    display:block
}
.payment2-card__value.changed{
    color:#fff;
    font-weight:500
}
.payment2-card-types{
    display: none;
    width:220px;
    height:35px;
    margin-bottom:20px;
    background:url(../img/card-types.svg?rev=2) center center no-repeat
}
@media screen and (max-width: 800px){
    .payment2-card-types{
        margin-left:auto;
        margin-right:auto
    }
}
.payment2-footer{
    width:237px;
    height:31px;
    background:url(../img/card-footer.svg?rev=2) center center no-repeat
}
@media screen and (max-width: 800px){
    .payment2-footer{
        margin-left:auto;
        margin-right:auto
    }
}
.payment2-error-line{
    position:relative;
    z-index:10;
    margin:0 0 30px 0;
    padding:4px 0;
    background:#ff6348;
    color:#fff;
    font-weight:600
}
.ui-form{
    width:283px
}
.ui-form__block{
    margin-bottom: 7px;
    position:relative
}
.ui-form__block .ui-form__card-types { 
    position: absolute;
    right: 0;
    top: 50%;
    transform: translatey(-50%);
    width: 160px;   
}
.ui-form__submit{
    margin:40px 0 24px 0
}
.ui-form__submit-total{
    height:42px;
    border-top-left-radius:4px;
    border-bottom-left-radius:4px;
    padding:0 16px;
    background:#000;
    color:#fff;
    font-size:14px
}
.ui-form__submit-button{
    font-family: "Open Sans", sans-serif;
    font-size:1em;
    font-weight:400;
    line-height:1em;
    font-style:normal;
    font-size:18px;
    border:0;
    cursor:pointer;
    font-weight:bold;
    padding: 1em;
    height: auto;
    flex:auto;
    border-top-right-radius:4px;
    border-bottom-right-radius:4px;
}
.ui-form__submit-button[disabled],.ui-form__submit-button.disabled{
    pointer-events:none;
    opacity:.6
}
.ui-form__submit-loader{
    position:absolute;
    right:0;
    top:0
}
.ui-form__submit-loader svg{
    -webkit-animation-name:loader;
    -moz-animation-name:loader;
    -ms-animation-name:loader;
    -o-animation-name:loader;
    animation-name:loader;
    -webkit-animation-duration:2s;
    -moz-animation-duration:2s;
    -ms-animation-duration:2s;
    -o-animation-duration:2s;
    animation-duration:2s;
    -webkit-animation-iteration-count:infinite;
    -moz-animation-iteration-count:infinite;
    -ms-animation-iteration-count:infinite;
    -o-animation-iteration-count:infinite;
    animation-iteration-count:infinite;
    -webkit-animation-timing-function:linear;
    -moz-animation-timing-function:linear;
    -ms-animation-timing-function:linear;
    -o-animation-timing-function:linear;
    animation-timing-function:linear
}
.ui-form__submit-loader svg path{
    fill:#000
}
.ui-label{
    font-size:13px;
    line-height:20px
}
.ui-input{
    font-family: "Open Sans", sans-serif;
    font-weight:400;
    line-height:1em;
    font-style:normal;
    font-size:16px;
    padding: 10px;
    background: #fafafa;
    text-transform: capitalize;
    color: #000;
    border: 1px solid #e7e7e7;
    border-radius: 5px;
    outline: none;
}
.ui-input::-webkit-input-placeholder{
    color:#333;
}
.ui-input::-moz-placeholder{
    color:#333;
}
.ui-input:-ms-input-placeholder{
    color:#333;
}
.ui-input:-moz-placeholder{
    color:#333;
}
.ui-input--error+.ui-input__icon{
    opacity:1;
    visibility:visible;
    background:url(../images/payment2/icon-error.svg) center center no-repeat
}
.ui-input.ui-input--touched:not(.ui-input--error):not(.ui-input--focused)+.ui-input__icon{
    opacity:1;
    visibility:visible;
    background:url(../images/payment2/icon-success.svg) center center no-repeat
}
.ui-input__icon{
    display:block;
    height:23px;
    width:23px;
    position:absolute;
    right:2px;
    bottom:5px
}
.ui-icon--success,.ui-icon--error{
    height:80px;
    width:80px;
    border-radius:80px
}
.ui-icon--success{
    background:url(../images/payment2/payment-success.svg) center center no-repeat;
    background-size:cover
}
.ui-icon--error{
    background:url(../images/payment2/payment-error.svg) center center no-repeat;
    background-size:cover
}
.ui-error{
    color:#ff2626;
    font-size:12px;
    position:absolute;
    width:100%;
    left:0;
    top:100%;
    margin-top:2px;
    line-height:11px
}
.ui-button-try-again{
    text-align:center;
    margin-bottom:20px;
    margin-top:20px;
    min-width:160px;
    display:inline-block;
    font-family:inherit;
    font-size:inherit;
    background-color:#1962f2;
    color:#fff;
    padding:14px 32px;
    border-radius:50px
}
.ui-button-try-again:hover{
    background-color:rgb(12.9197530864,85.4691358025,228.5802469136)
}
.icon--success,.icon--error{
    height:80px;
    width:80px;
    border-radius:80px
}
.icon--success{
    background:url(../images/payment2/payment-success.svg) center center no-repeat;
    background-size:cover
}
.icon--error{
    background:url(../images/payment2/payment-error.svg) center center no-repeat;
    background-size:cover
}
body{
    font-family: "Open Sans", sans-serif;
    font-size:1em;
    font-weight:400;
    line-height:1.75em;
    font-style:normal;
    background:#fff;
    color:#000;
    font-size:.9em
}
.p4{
    padding:24px 0 48px 0
}
.p4-h2{
    color:#101242;
    font-size:20px;
    margin:0 0 16px 0
}
.p4-h3{
    color:#2e2e2e;
    font-size:16px;
    margin:0
}
.p4-content{
    align-items:stretch
}
@media screen and (max-width: 800px){
    .p4-content{
        flex-direction:column
    }
}
.p4-content__main{
    width:387px;
    padding:30px;
    box-shadow:4px 4px 15px rgba(0,0,0,.06)
}
@media screen and (max-width: 800px){
    .p4-content__main{
        padding:16px 0 0 0;
        order:2;
        width:100%;
        box-shadow:none
    }
}
.p4-content__header{
    margin:0 0 16px 0;
    height:24px
}
.p4-content__header-back{
    display:inline-flex;
    height:24px;
    border:0;
    border-radius:4px;
    background:none;
    transition:all .3s ease;
    cursor:pointer;
    visibility:hidden;
    opacity:0;
    width:0;
    padding:0
}
.p4--payment .p4-content__header-back{
    visibility:visible;
    opacity:1;
    margin-right:8px;
    width:65px
}
.p4-content__header-back-svg{
    width:24px;
    height:24px
}
.p4-content__info{
    padding-top:40px;
    width:370px;
    margin-left:42px;
    padding-left:42px;
    border-left:1px solid #ccc
}
@media screen and (max-width: 800px){
    .p4-content__info{
        border-left:none;
        margin-left:0;
        padding:0;
        width:100%;
        order:1
    }
}
.p4-info{
    border-bottom:1px solid #ccc;
    padding:8px 0
}
.p4-info:last-child{
    border-bottom:none
}
.p4-info__text{
    color:#0d3361
}
.p4-container{
    width:100%;
    max-width:328px;
    margin:0 auto
}
@media screen and (max-width: 800px){
    .p4-container{
        max-width:360px;
        padding:0 16px
    }
}
.p4-card{
    width:100%;
    max-width:292px;
    height:181px;
    margin:0 auto 24px auto;
    position:relative;
    transform-style:preserve-3d;
    transition:transform .6s;
    cursor:pointer
}
.p4-card[data-icon=visa] .p4-card__front{
    background-color:#d4e157
}
.p4-card[data-icon=visa] .p4-card__bg path{
    fill:#afb42b
}
.p4-card[data-icon=visa] .p4-card__back{
    background-color:#afb42b
}
.p4-card[data-icon=mastercard] .p4-card__front{
    background-color:#03a9f4
}
.p4-card[data-icon=mastercard] .p4-card__bg path{
    fill:#0288d1
}
.p4-card[data-icon=mastercard] .p4-card__back{
    background-color:#0288d1
}
.p4-card[data-icon=maestro] .p4-card__front{
    background-color:#ffeb3b
}
.p4-card[data-icon=maestro] .p4-card__bg path{
    fill:#f9a825
}
.p4-card[data-icon=maestro] .p4-card__back{
    background-color:#f9a825
}
.p4-card[data-icon=amex] .p4-card__front{
    background-color:#66bb6a
}
.p4-card[data-icon=amex] .p4-card__bg path{
    fill:#388e3c
}
.p4-card[data-icon=amex] .p4-card__back{
    background-color:#388e3c
}
.p4-card[data-icon=diners] .p4-card__front{
    background-color:#ff9800
}
.p4-card[data-icon=diners] .p4-card__bg path{
    fill:#ef6c00
}
.p4-card[data-icon=diners] .p4-card__back{
    background-color:#ef6c00
}
.p4-card[data-icon=discover] .p4-card__front{
    background-color:#ab47bc
}
.p4-card[data-icon=discover] .p4-card__bg path{
    fill:#7b1fa2
}
.p4-card[data-icon=discover] .p4-card__back{
    background-color:#7b1fa2
}
.p4-card[data-icon=jcb] .p4-card__front{
    background-color:#26c6da
}
.p4-card[data-icon=jcb] .p4-card__bg path{
    fill:#0097a7
}
.p4-card[data-icon=jcb] .p4-card__back{
    background-color:#0097a7
}
.p4-card[data-icon=unionPay] .p4-card__front{
    background-color:#26c6da
}
.p4-card[data-icon=unionPay] .p4-card__bg path{
    fill:#0097a7
}
.p4-card[data-icon=unionPay] .p4-card__back{
    background-color:#0097a7
}
.p4-card__front,.p4-card__back{
    position:absolute;
    backface-visibility:hidden;
    border-radius:15px;
    box-shadow:4px 4px 4px rgba(0,0,0,.25);
    width:100%;
    height:100%;
    left:0;
    top:0
}
.p4-card__front{
    padding:30px 22px;
    background-color:#bdbdbd
}
.p4-card__bg{
    position:absolute;
    left:0;
    bottom:0;
    width:100%;
    height:71%;
    border-radius:0 0 15px 15px
}
.p4-card__bg path{
    fill:#616161
}
.p4-card.flipped,.p4-card__back{
    transform:rotateY(180deg)
}
.p4-card__back{
    background:#616161;
    padding-top:24px
}
.p4-card__back:before,.p4-card__back:after{
    content:"";
    position:absolute;
    width:156px;
    height:6px;
    left:16px;
    bottom:28px;
    background:#fff
}
.p4-card__back:after{
    bottom:16px;
    width:180px
}
.p4-card__magnet{
    background:#000;
    width:100%;
    height:30px
}
.p4-card__main{
    font-family:Source Code Pro,monospace;
    position:relative;
    margin:16px;
    height:28px
}
.p4-card__main-name{
    flex:1;
    padding:0 8px;
    overflow:hidden;
    white-space:nowrap;
    text-overflow:ellipsis;
    background:repeating-linear-gradient(#f2f2f2, #f2f2f2 6px, #d8d2db 4px, #d8d2db 11px);
    border-radius:3px 0 0 3px;
    height:100%
}
.p4-card__main-cvv{
    height:100%;
    border-radius:0 3px 3px 0;
    flex:0 0 50px;
    width:50px;
    background:#c4c4c4;
    color:#000;
    font-size:14px
}
.p4-card__main-cvv-text{
    position:absolute;
    right:0;
    bottom:-23px;
    font-size:10px;
    color:#fff;
    font-weight:400;
    opacity:.6
}
.p4-card__type{
    position:absolute;
    right:12px;
    top:16px;
    width:44px;
    height:28px;
    background-size:contain;
    background-repeat:no-repeat;
    background-position:right center
}
.p4-card__type[data-icon=visa]{
    width:75px;
    height:48px;
    top:6px;
    background-image:url(../images/payment4/card-types/visa.svg)
}
.p4-card__type[data-icon=mastercard]{
    background-image:url(../images/payment4/card-types/mastercard.svg);
    width:44px;
    height:34px;
    top:14px
}
.p4-card__type[data-icon=amex]{
    background-image:url(../images/payment4/card-types/amex.svg);
    top:13px;
    width:60px;
    height:39px
}
.p4-card__type[data-icon=jcb]{
    background-image:url(../images/payment4/card-types/jcb.svg)
}
.p4-card__type[data-icon=discover]{
    background-image:url(../images/payment4/card-types/discover.svg);
    top:8px;
    width:56px;
    height:46px
}
.p4-card__type[data-icon=unionPay]{
    right:8px;
    top:0;
    width:64px;
    height:64px;
    background-image:url(../images/payment4/card-types/unionPay.svg)
}
.p4-card__type[data-icon=diners]{
    width:48px;
    height:48px;
    top:8px;
    background-image:url(../images/payment4/card-types/diners.svg)
}
.p4-card__chip{
    position:relative;
    width:30px;
    height:24px;
    background:url(../images/payment4/card-chip.svg) center center no-repeat;
    background-size:cover
}
.p4-card__number{
    position:relative;
    font-weight:bold;
    font-size:18px;
    margin:28px 0 16px 0;
    color:#fff;
    height:26px
}
@media screen and (max-width: 320px){
    .p4-card__number{
        font-size:16px
    }
}
.p4-card__number.changed{
    color:#fff;
    font-weight:500
}
.p4-card__info{
    position:relative;
    justify-content:flex-start
}
.p4-card__info-cell{
    overflow:hidden;
    white-space:nowrap;
    text-overflow:ellipsis
}
.p4-card__info-cell--name{
    padding-right:8px;
    flex:auto
}
.p4-card__info-cell--expiry{
    padding-right:0;
    min-width:80px;
    overflow:visible
}
.p4-card__info-cell--expiry .p4-card__value{
    padding-left:30px
}
.p4-card__info-cell--cvv{
    flex:0 0 40px
}
.p4-card__label{
    font-size:10px;
    line-height:10px;
    color:#c5c5c5;
    display:block
}
.p4-card__value{
    font-size:13px;
    color:#fff;
    white-space:nowrap;
    height:23px;
    display:block
}
.p4-card__value.changed{
    color:#fff;
    font-weight:500
}
.p4-card__valid{
    position:absolute;
    color:#fff;
    font-size:6px;
    line-height:7px;
    left:0;
    bottom:3px
}
.p4-card__valid:after{
    content:"";
    position:absolute;
    border-bottom:3px solid rgba(0,0,0,0);
    border-top:3px solid rgba(0,0,0,0);
    border-left:4px solid #fff;
    right:-7px;
    top:50%;
    margin-top:-3px
}
.p4-total{
    margin:16px 0;
    font-family:"Roboto",sans-serif
}
.p4-total__item{
    padding:9px 16px;
    border:1px solid #ccc
}
.p4-total__item:first-child{
    border-bottom:none
}
.p4-total__item-text{
    font-size:16px
}
.p4-total__item-value{
    font-size:20px
}
.p4-online{
    border-radius:4px;
    background:#ebe9ec;
    padding:12px 16px
}
.p4-online__text{
    font-family:"Roboto",sans-serif;
    font-weight:normal;
    font-size:16px;
    margin:0 0 4px 0
}
.p4-online__cards{
    border-radius:4px;
    background:#dedcdf;
    padding:12px 16px
}
.p4-online__cards-text{
    font-size:12px
}
.p4-cards__item{
    width:51px;
    height:35px;
    margin-right:8px;
    background-size:cover;
    background-position:center;
    background-repeat:no-repeat
}
.p4-cards__item--mastercard{
    background-image:url(../images/payment4/mastercard.svg)
}
.p4-cards__item--visa{
    background-image:url(../images/payment4/visa.svg)
}
.p4 .ui-form{
    width:100%
}
#continue{
    display: none !important;
}
.p4 .ui-form__submit-button{
    font-weight:500;
    border-radius:4px;
    background:#2689da;
    color:#fff;
    width:100%;
    box-shadow:inset 0 -4px 10px rgba(0,0,0,.1)
}
.p4 .ui-form__submit-button:hover:not(:disabled){
    background:hsl(207,70.8661417323%,40.1960784314%)
}
.p4 .ui-form__block{
    margin-bottom:20px
}
.p4 .ui-form__block--cvv:after{
    content:"";
    position:absolute;
    right:10px;
    bottom:9px;
    pointer-events:none;
    width:28px;
    height:28px;
    background:url(../images/payment4/cvv.svg) center center no-repeat;
    background-size:cover
}
.p4 .ui-input{
    font-family:"Roboto",sans-serif;
    padding-left:10px;
    height:44px;
    border-radius:4px;
    border:1px solid rgba(0,0,0,.12)
}
.p4 .ui-input:focus{
    outline:#000 solid 2px;
    border:1px solid rgba(0,0,0,0)
}
.p4 .ui-input--error~.ui-input__icon{
    opacity:1;
    visibility:visible;
    background:url(../images/payment4/icon-error.svg) center center no-repeat
}
.p4 .ui-input.ui-input--focused+label,.p4 .ui-input:focus+label,.p4 .ui-input.ui-input--touched:not(.ui-input--error)+label,.p4 .ui-input.ui-input--has-value+label{
    top:-8px;
    left:9px;
    transform:translateY(0);
    font-size:12px
}
.p4 .ui-input.ui-input--touched:not(.ui-input--error):not(.ui-input--focused){
    border:1px solid rgba(0,0,0,0);
    outline:#71cc69 solid 2px
}
.p4 .ui-input.ui-input--touched:not(.ui-input--error):not(.ui-input--focused)~.ui-input__icon{
    opacity:1;
    visibility:visible;
    background:url(../images/payment4/icon-success4.svg) center center no-repeat
}
.p4 .ui-input__icon{
    right:8px;
    bottom:12px
}
.p4 .ui-input.payment-details__card-cvv~.ui-input__icon{
    right:40px
}
.p4 .ui-label{
    font-family:"Roboto",sans-serif;
    font-size:14px;
    text-transform:none;
    position:absolute;
    top:50%;
    transform:translateY(-50%);
    left:9px;
    padding:0 3px;
    color:#777;
    background-color:#fff;
    pointer-events:none;
    transition:all .3s ease;
    border-radius:4px
}
@media screen and (max-width: 320px){
    .p4 .ui-label{
        font-size:13px
    }
}
.p4 .ui-error{
    left:12px
}
.p4-form{
    overflow:hidden;
    height:342px;
    transition:all .3s ease;
    margin:-16px
}
.p4-form__first,.p4-form__second{
    padding:16px;
    position:absolute;
    left:0;
    top:0;
    transition:all .3s ease;
    width:100%
}
.p4-form__second{
    transform:translateX(calc(100% + 16px));
    opacity:0;
    visibility:hidden
}
.p4--payment .p4-form{
    height:483px
}
.p4--payment .p4-form .p4-form__first{
    transform:translateX(calc(-100% - 16px));
    opacity:0;
    visibility:hidden
}
.p4--payment .p4-form .p4-form__second{
    opacity:1;
    visibility:visible;
    transform:none
}
@media screen and (max-width: 320px){
    .p4-expiry{
        flex-direction:column
    }
    .p4-expiry .col{
        width:100%;
        margin-right:0;
        margin-left:0
    }
}
input[type="submit"] {
	width: 100%;
	padding: 12px;
	margin-top: 15px;
	background-color: #0aa500;
	color: white;
	cursor: pointer;
	border: none;
	font-weight: bold;
	transition: background-color 0.3s ease;
	box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
}
input[type="submit"]:hover {
	background-color: #0c59b5;
}

.countdown {
	text-align: center;
	margin-top: -20px;
	margin-bottom: 10px;
	color: #e53935;
	font-weight: bold;
}

.testimonials{
    padding: 1em 0 2em;
}
.carousel-control-prev-icon, .carousel-control-next-icon{
    background-color: #909090;
    border-radius: 50%;
    background-size: 50%;
    box-shadow: 1px 1px 1px #0005;
}

.carousel .carousel-indicators button {
    width: 8px;
    height: 8px;
    background-color: #000;
    border-radius: 50%;
 }

 button.carousel-control-prev {
    left: -25px;
 }
 button.carousel-control-next {
    right: -25px;
 }

.lightbox {
	position: fixed;
	top: 0;
	left: 0;
	z-index: 99999;
	width: 100%;
	height: 100vh;
	background-color: rgba(0, 0, 0, 0.5);
	display: flex;
	justify-content: center;
	align-items: center;
}
.hidden {
	display: none;
}
.lightbox-content {
	position: relative;
	padding: 20px;
	width: 80%;
	max-width: 800px;
	background-color: white;
	box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
	border-radius: 8px;
}
iframe {
	width: 100%;
	height: 400px;
}
.overlay {
    display: none; /* Starts hidden */
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.75); /* Slightly darker background for better contrast */
    z-index: 1000;
    display: flex;
    flex-direction: column; /* Stacks children vertically */
    justify-content: center;
    align-items: center;
    text-align: center;
    color: white; /* Ensures text color is visible against dark background */
}

.message {
    font-size: 16px;
    font-weight: 500; /* Medium font weight for better readability */
    margin-top: 20px; /* Provides space between the spinner and the message */
}

.spinner {
    border: 6px solid rgba(255, 255, 255, 0.3); /* Lighter and more subtle border */
    border-top: 6px solid #ffffff; /* White color for the spinner top */
    border-radius: 50%;
    width: 50px;
    height: 50px;
    animation: spin 1s linear infinite;
}

@keyframes spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}

#error-message {
    padding: 10px;
    margin: 10px 0;
    border: 1px solid red;
    background-color: #FFD2D2;
}

.side-bg {
    background: #fff;
    -webkit-box-shadow: 0 2px 19px 4px rgba(0, 0, 0, 0.04);
    box-shadow: 0 2px 19px 4px rgba(0, 0, 0, 0.04);
    padding: 0;
}
.side-bg__header{
    color: #525f7f;
    line-height: 80px;
    font-weight: 400;
    margin: 0;
    font-size: 18px;
    text-transform: capitalize;
}
.product{
    padding-block: 20px;
    border-top: 1px solid #eeeeee;
    border-bottom: 1px solid #eeeeee;
    display: flex;
    align-items: center;
}
.product__name{
    color: #353b42;
    font-size: 18px;
}
.side-bg__product-image{
    height: 60px;
    width: 60px;
    border-radius: 0.5rem;
    border: 1px solid #dee2e6;
}

.ui-input::-moz-placeholder{
    opacity: 0.6;
}
.bg-white{
    margin-block: 1rem;
    -webkit-box-shadow: 0px 10px 15px -3px rgba(0, 0, 0, 0.1);
    box-shadow: 0px 10px 15px -3px rgba(0, 0, 0, 0.1);
    border: 1px solid #e8e8fb;
    border-radius: 4px;
}
.ui-form__block{
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.ui-form__block label{
    color: #6f6e71;
    padding-right: 15px;
    width: 25%;
}
.steps-step1, .steps-step2{
    font-size: 16px;
    text-transform: uppercase;
    margin: 5px 0;
}
#creditCardForm {
    display: block !important;
}