@import 'bootstrap.min.css';
@import 'fix.css';
@import 'general-sans.css';
@import 'owl.carousel.min.css';
@import 'owl.theme.default.min.css';

body{
    direction: ltr;
    text-align: left;
    font-family: 'GeneralSans-Variable';
    font-size: 14px;
}
header{
    background: #fff;
    height: 80px;
    box-shadow: 0 5px 5px rgba(0,0,0,0.1);
    position: relative;
    z-index: 1;
}
.form-floating > .form-control:focus ~ label,.form-floating > .form-control:not(:placeholder-shown) ~ label,.form-floating > .form-select ~ label{
    transform: translateY(-.9rem) translateX(-0.5rem);
}
.form-check .form-check-input{
    float: left;
    position: relative;
    top: 2px
}
.form-check-input:checked{
    background-color: #2c2c2c;
    border-color: #2c2c2c;
}
.form-check-label{
    position: relative;
    top: 6px;
    font-size: 14px;
}
.form-control{
    border-radius: 0;
    border: 0;
    border-bottom: 1px solid #BABABA;
    box-shadow: unset !important;
}
.form-group{
    position: relative;
}
.form-floating > label{
    font-size: 13px;
    color: #989898;
    padding-left: 5px !important;
    padding-right: 5px !important;
}
.form-floating > .form-control, .form-floating > .form-select{
    height: calc(3.1rem + 2px) !important;
}
.mb-6{
    margin-bottom: 5rem !important;
}
.logo{
    float: left;
    margin-top: 15px;
}
header .navbar{
    float: left;
    margin-left: 40px;
    margin-top: 28px;
}
header .navbar li{
    margin-left: 4px;
}
header .navbar li a{
    transition: all ease-in-out 0.3s;
    color: #989898;
    padding: 0 8px 10px;
    border-bottom: 1px solid transparent;
}
header .navbar li a:hover,header .navbar li.active a{
    color: #2C2C2C;
    border-color: #2C2C2C;
}
.login-btn{
    float: right;
    margin-top: 19px;
    background: #fff;
    color: #2C2C2C !important;
    border: 1px solid #2C2C2C;
    width: 150px;
    text-align: center;
    padding: 13px 0;
    margin-right: 15px;
}
.get-card-btn{
    float: right;
    margin-top: 19px;
    background: #2C2C2C;
    color: #fff !important;
    width: 150px;
    text-align: center;
    padding: 14px 0;
}
main{
    display: block;
}
#slider{
    display: block;
    width: 100%;
    margin-bottom: 120px;
    position: relative;
    z-index: 0;
}
#why-us,#earth,#make-order,#features,#benefits,#faq,#our-customers,footer{
    float: left;
    width: 100%;
}
#why-us .img-box,#description .img-box,#features  .img-box,#earth .img-box,#make-order .img-box{
    float: left;
    width: 45%;
}
#why-us .img-box{
    width: 60%;
}
.img-box img{
    width: 100%;
}
#description .img-box img{
    margin: 50px 0;
}
#why-us .description-box,#description .description-box,#features .description-box,#earth .description-box,#make-order .description-box{
    float: left;
    width: 55%;
}
#why-us .description-box{
    width: 40%;
}
.description-box h3::before{
    display: inline-block;
    content: '';
    width: 46px;
    height: 23px;
    background: url('../img/title-icon.png');
    position: relative;
    top: 5px;
    margin-right: 15px;
}
.os-pay-img{
    width: 50px;
    position: relative;
    top: 12px;
}
.description-box.white h3::before{
    background: url('../img/title-icon-white.png');
}
.description-box h3{
    font-size: 25px;
    margin-bottom: 40px;
}
.description-box p{
    text-align: justify;
    padding-left: 64px;
    line-height: 25px;
    margin-bottom: 20px;
}
#why-us .description-box b{
    padding-left: 64px;
    font-size: 17px;
    margin-top: 40px;
    display: block;
    text-align: center;
}
.description-box .steps{
    padding-left: 64px;
    margin-top: 60px;
}
.description-box .steps li span{
    display: inline-block;
    position: relative;
    border: 1px solid #2C2C2C;
    width: 40px;
    height: 40px;
    margin-bottom: 40px;
    text-align: center;
    line-height: 39px;
    margin-left: 20px;
}
.description-box .steps li span::after{
    content: '';
    width: 1px;
    height: 24px;
    background: #2C2C2C;
    position: absolute;
    bottom: -33px;
    left: 50%;
    transform: translateX(-50%);
}
.description-box .steps li:last-child span::after{
    content: unset;
}
#description{
    float: left;
    position: relative;
    width: 100%;
    background: #2C2C2C;
    margin: 60px 0 100px;
}
#description .description-box h3{
    color: #fff;
}
#description .description-box{
    margin-top: 220px;
    color: #fff;
}
#features .description-box{
    padding-right: 50px;
    margin-top: 170px;
}
#earth{
    width: 100%;
    height: 100vh;
    background: url('../img/world.jpg') no-repeat;
    background-size: cover !important;
    margin: 130px 0;
}
#description{
    width: 100%;
    height: 100vh;
    background: url('../img/profiles.jpg') center no-repeat;
    background-size: cover !important;
}
#earth h3{
    color: #fff;
    text-align: center;
    margin-top: 75px;
    font-size: 30px;
}
#make-order{
    position: relative;
    padding-bottom: 75px;
}
#make-order img{
    position: absolute;
    right: 0;
    max-width: 550px;
    bottom: 0;
}
#earth .description-box{
    margin-top: 180px;
    padding-left: 40px;
}
#earth .earth-img{
    position: relative;
}
.earth-icon{
    width: unset !important;
    position: absolute;
    animation: tilt-shaking 1.5s infinite;
}
.earth-icon:first-child{
    right: 0;
    top: 274px;
    width: 66px !important;
}
.earth-icon:nth-child(2){
    top: 260px;
    width: 110px !important;
}
.earth-icon:nth-child(3){
    right: 25px;
    top: 70px;
}
.earth-icon:nth-child(4){
    left: 46%;
    top: 50px;
}
.earth-icon:nth-child(5){
    bottom: 42px;
    left: 224px;
}
#benefits h3{
    margin-bottom: 60px;
}
.benefit-item{
    text-align: center;
    margin-bottom: 40px;
}
.benefit-item img{
    width: 50px;
    margin-bottom: 20px;
}
.benefit-item h4{
    font-size: 18px;
    margin-bottom: 20px;
}
.benefit-item p{
    line-height: 25px;
}
#benefits{
    margin-bottom: 100px;
}
#make-order{
    background: #F1F1F1;
    margin-bottom: 130px;
}
#make-order .img-box img{
    margin-top: 100px;
    width: 70%;
}
#make-order .description-box{
    margin-top: 110px;
}
.buy-card{
    float: left;
    background: #2C2C2C;
    color: #fff !important;
    text-align: center;
    min-width: 200px;
    padding: 18px 20px;
    margin-top: 60px;
    margin-left: 64px;
}
#make-order .description-box ul{
    padding-left: 64px;
    margin-top: 30px;
}
#make-order .description-box ul li::before{
    content: '';
    border: 7px solid #000;
    display: inline-block;
    width: 5px;
    height: 5px;
    border-right-color: transparent;
    border-top-color: transparent;
    border-bottom-color: transparent;
    position: relative;
    top: 3px;
    margin-right: 5px;
}
#make-order .description-box ul li{
    line-height: 45px;
    font-size: 13px;
}
#faq{
    margin-bottom: 110px;
}
#faq-questions .accordion-button{
    outline: unset !important;
    box-shadow: unset !important;
}
.accordion-item{
    border: 0 !important;
    border-bottom: 1px solid #C4C4C4 !important;
}
.accordion-button:not(.collapsed){
    color: #000;
    background-color: #C4C4C4;
}
#faq .accordion-button::after{
    content: '+';
    font-size: 22px;
    background: #000 !important;
    color: #fff;
    padding: 0;
    text-align: center;
    width: 35px;
    height: 35px;
    line-height: 38px;
}
.accordion-button:not(.collapsed)::after {
    content: '-' !important;
    transform: unset !important;
    font-size: 25px !important;
    position: relative;
    top: -4px;
}
.accordion-item:last-child{
    border: 0 !important;
}
#comments{
    margin-top: 60px;
    margin-bottom: 120px;
}
.comment-item{
    width: 100%;
    background: #F1F1F1;
    height: 206px;
    margin-top: 50px;
}
.comment-item img{
    width: 104px !important;
    height: 104px;
    position: absolute;
    right: 50%;
    transform: translateX(50%);
    top: 0;
    border-radius: 100%;
    padding: 2px;
    border: 1px solid #989898;
}
.comment-item h5{
    position: absolute;
    right: 50%;
    transform: translateX(50%);
    top: 120px;
    font-size: 18px;
    font-weight: 500;
}
.comment-item p{
    position: absolute;
    width: 70%;
    right: 15%;
    text-align: center;
    top: 160px;
}
#comments .owl-nav{
    position: absolute;
    right: 0;
    width: 100%;
    top: 47%;
}
#comments .owl-nav .owl-prev,#comments .owl-nav .owl-next{
    position: absolute;
    background: #000;
    color: #fff;
    font-size: 34px;
    width: 40px;
    height: 40px;
    border-radius: 0;
}
#comments .owl-nav .owl-prev{
    right: -25px;
}
#comments .owl-nav .owl-next{
    left: -25px;
}
.page-title{
    margin-top: 50px;
    display: block;
    text-align: center;
    color: #000;
    font-weight: 400;
    font-size: 21px;
}
#products{
    margin-top: 30px;
    margin-bottom: 50px;
}
#products .nav-tabs{
    display: block !important;
    text-align: center;
}
#products .nav-link{
    display: inline-block !important;
}
#products .nav-tabs .nav-link{
    border-right: 0;
    border-left: 0;
    border-top: 0;
    padding: 10px 20px;
    margin: 0 50px;
    color: #989898;
}
#products .nav-tabs .nav-link.active{
    border-bottom: 2px solid #2C2C2C;
    color: #2C2C2C;
}
#products .tab-content{
    margin-top: 50px;
}
.card-details{
    padding: 0 75px;
}
.card-details h5{
    font-size: 15px;
    margin-bottom: 35px;
}
.card-detail-box-title{
    display: block;
    letter-spacing: -1px;
    margin-bottom: 20px;
}
.card-item{
    position: relative;
    display: inline-block;
    border-radius: 100%;
    margin-right: 10px;
    cursor: pointer;
}
.card-item img{
    border-radius: 100%;
    width: 48px;
    height: 48px;
}
.card-item:last-child{
    margin-left: 0;
}
.card-item::after{
    content: '';
    position: absolute;
    width: 16px;
    height: 16px;
    background: #C4C4C4;
    border: 4px solid #fff;
    right: -4px;
    bottom: 5px;
    border-radius: 100%;
}
.card-item.active::after{
    background: #1DD34E;
}
.card-item span{
    display: block;
    color: #989898;
    text-align: center;
    position: absolute;
    width: 100%;
    font-size: 13px;
    margin-top: 10px;
}
.card-option-item{
    width: 65%;
    border: 1px solid #DADADA;
    height: 65px;
    border-radius: 10px;
    position: relative;
    margin-bottom: 20px;
    cursor: pointer;
    margin-right: 0;
}
.card-option-item.active{
    border-color: #2C2C2C;
}
.card-option-item:last-child{
    margin-bottom: 0;
}
.card-option-item img{
    display: table;
    margin: 0 auto;
    position: relative;
    top: 50%;
    transform: translateY(-50%);
}
.card-option-item .option-title{
    display: block;
    margin-top: 25px;
    font-size: 13px;
}
.card-option-item .option-description{
    font-size: 11px;
    color: rgba(17, 17, 17, 0.48);
    position: relative;
    top: 1px;
}
.card-option-item .option-price{
    position: absolute;
    right: 10px;
    font-size: 14px;
    bottom: 10px;
    font-family: 'GeneralSans-Variable';
}
.card-option-item .upload-logo{
    font-size: 12px;
    position: absolute;
    right: 10px;
    top: 10px;
    padding: 3px 10px;
}
.add-to-cart-btn,.send-contact{
    margin-top: 10px;
    background: #2C2C2C;
    color: #fff !important;
    width: 200px;
    font-size: 13px;
    text-align: center;
    padding: 20px 0;
}
.card-container{
    position: relative;
    width: 90%;
    height: 320px;
    border-radius: 10px;
    background: #000;
    box-sizing: border-box;
    color: #fff;
    margin-bottom: 30px;
}
.card-container.marble{
    background: url('../img/marble.jpg');
    background-size: cover;
}
.card-container .customer-name{
    position: absolute;
    font-weight: bold;
    left: 40px;
    bottom: 105px;
    font-size: 30px;
}
.card-container .customer-family{
    position: absolute;
    font-weight: bold;
    left: 40px;
    bottom: 70px;
    font-size: 30px;
}
.card-container .customer-title{
    position: absolute;
    left: 40px;
    bottom: 40px;
    font-size: 18px;
    color: #989898;
}
.card-container.gold-color .customer-name,.card-container.gold-color .customer-family,.card-container.gold-color .customer-title{
    color: #ebbe6a;
}
.card-details-container{
    display: block;
    width: 90%;
}
.card-label{
    letter-spacing: -1px;
    font-size: 13px;
    color: #A5A5A5;
}
.card-price{
    letter-spacing: -1px;
    font-family: 'GeneralSans-Variable';
    font-weight: 600;
    font-size: 15px;
}
.card-description{
    margin-top: 40px;
}
.card-description h6{
    font-weight: bold;
    font-size: 16px;
    letter-spacing: -1px;
    margin-bottom: 20px;
}
.card-description li{
    line-height: 30px;
    font-size: 14px;
    letter-spacing: -1px;
}
.card-description li::before{
    content: '';
    border: 7px solid #000;
    display: inline-block;
    width: 5px;
    height: 5px;
    border-right-color: transparent;
    border-top-color: transparent;
    border-bottom-color: transparent;
    position: relative;
    top: 3px;
    margin-right: 5px;
}
.custom-title{
    font-size: 18px;
}
.custom-title::before{
    content: '';
    width: 46px;
    height: 14px;
    background: url('../img/mini-title-icon.png');
    display: inline-block;
    margin-right: 15px;
}
.custom-breadcrumb{
    background: #fff;
    border-bottom: 1px solid #C4C4C4;
    display: block;
    padding: 20px 0;
}
.custom-breadcrumb ul li{
    display: inline-block;
    color: #2C2C2C;
    font-size: 13px;
    font-weight: 400;
}
.custom-breadcrumb ul li a{
    color: #2C2C2C;
}
.custom-breadcrumb ul li::after{
    content: '';
    border: 7px solid #000;
    display: inline-block;
    width: 5px;
    height: 5px;
    border-right-color: transparent;
    border-top-color: transparent;
    border-bottom-color: transparent;
    position: relative;
    top: 3px;
    margin-left: 15px;
}
.custom-breadcrumb ul li:last-child::after{
    content: unset;
}
#cart{
    background: rgba(196,196,196,0.3);
    padding: 50px 0 50px;
}
#cart .custom-title{
    margin-bottom: 40px;
}
#cart .card-preview{
    width: 100%;
    border-radius: 10px;
}
.custom-table-header{
    font-size: 15px;
    font-weight: 600;
    border-bottom: 3px solid #2C2C2C;
    padding-bottom: 5px;
    margin-bottom: 20px;
}
.custom-table{
    margin-bottom: 50px;
}
.table-row{
    border-bottom: 1px solid #C4C4C4;
    margin: 0 !important;
}
.row-without-img{
    padding: 20px 0;
}
.theme-title{
    display: block;
    margin-top: 3px;
}
.theme-img{
    width: 36px;
    height: 36px;
    border-radius: 100%;
    margin-top: -8px;
    margin-bottom: 7px;
}
.theme-color{
    position: relative;
    top: -22px;
    margin-right: 5px;
}
.cart-price{
    position: relative;
    top: 3px;
    font-family: 'GeneralSans-Variable';
    font-size: 15px;
    font-weight: 600;
}
.custom-input{
    display: block;
    width: 100%;
    padding: 10px;
    margin-bottom: 10px;
}
.custom-input{
    box-shadow: 0 3px 3px rgba(0,0,0,0.1);
    text-align: center;
}
.custom-input::placeholder{
    color: #000 !important;
    opacity: 1 !important;
    text-align: right !important;
    direction: rtl !important;
}
.discount-code::after{
    content: '';
    width: 24px;
    height: 24px;
    background: url('../img/product-items/gift.png');
    position: absolute;
    bottom: 7px;
    left: 10px;
}
.total-box{
    margin-top: 30px;
    position: relative;
    background: #2C2C2C;
    padding: 21px 15px 20px;
    color: #fff;
    font-size: 13px;
    font-family: 'GeneralSans-Variable';
}
.total-box::before{
    content: '';
    position: absolute;
    width: 100%;
    height: 4px;
    background: #2C2C2C;
    right: 0;
    top: -9px;
}
#cart-address{
    padding: 70px 0 60px;
}
#callback h3{
    display: block;
    text-align: center;
    margin-top: 100px;
}
.callback-result{
    text-align: center;
    margin-bottom: 200px;
    font-family: 'GeneralSans-Variable';
    font-family: 14px;
}
.callback-result b{
    font-size: 17px;
}
#extra-header img{
    display: block;
    width: 100%;
    position: absolute;
    top: -112%;
}
.extra-page{
    padding: 50px 0;
}
.extra-page p{
    line-height: 28px;
}
.contact-us-details{
    padding-right: 62px;
}
.contact-us-details p{
    margin-bottom: 15px;
}
.contact-us-details p:last-child{
    margin-bottom: 0;
}
footer{
    display: block;
    width: 100%;
    background: url('../img/footer.jpg') center no-repeat;
    background-size: cover;
    min-height: 400px;
    padding-top: 60px;
    position: relative;
}
.footer-box{
    color: #fff;
}
.footer-box h4{
    font-size: 15px;
    margin-bottom: 25px;
}
.footer-box ul li{
    margin-bottom: 15px;
}
.footer-box ul li a{
    color: #fff;
    font-size: 13px;
    font-weight: 300;
}
.copyright{
    position: absolute;
    bottom: 3px;
    text-align: left;
    width: 100%;
    padding: 15px 0;
    color: #BABABA;
    font-size: 13px;
}
.copyright p{
    float: left;
}
.copyright img{
    float: right;
    position: relative;
    top: -15px;
    opacity: 0.4;
}
.accordion-body p{
    line-height: 26px;
}
.mobile-navbar{
    position: fixed;
    top: 0;
    left: -300px;
    width: 300px;
    height: 100vh;
    background: rgba(0,0,0,0.8);
    z-index: 9;
    transition: all ease-in-out 0.3s;
}
.mobile-navbar.show{
    left: 0;
}
.mobile-navbar ul{
    margin-top: 55px;
}
.mobile-navbar ul li{
    display: block;
    width: 100%;
}
.mobile-navbar ul li a{
    display: block;
    width: 100%;
    padding: 15px 20px;
    transition: all ease-in-out 0.3s;
    color: #fff;
}
.mobile-navbar ul li a:hover{
    background: #fff;
    color: #000;
}
.open-menu,.close-menu{
    cursor: pointer;
}
.open-menu,.close-menu{
    display: none;
}
.menu-header-btns{
    display: none !important;
}
.open-menu{
    position: absolute;
    top: 23px;
    margin-left: 15px;
    background: #ececec;
    padding: 6px;
    width: 37px;
}
.mobile-navbar .close-menu{
    position: absolute;
    right: 20px;
    width: 22px;
    top: 20px;
}
@keyframes tilt-shaking{
    0% { -webkit-transform: translate(2px, 1px) rotate(0deg); }
	10% { -webkit-transform: translate(-1px, -2px) rotate(-1deg); }
	20% { -webkit-transform: translate(-3px, 0px) rotate(1deg); }
	30% { -webkit-transform: translate(0px, 2px) rotate(0deg); }
	40% { -webkit-transform: translate(1px, -1px) rotate(1deg); }
	50% { -webkit-transform: translate(-1px, 2px) rotate(-1deg); }
	60% { -webkit-transform: translate(-3px, 1px) rotate(0deg); }
	70% { -webkit-transform: translate(2px, 1px) rotate(-1deg); }
	80% { -webkit-transform: translate(-1px, -1px) rotate(1deg); }
	90% { -webkit-transform: translate(2px, 2px) rotate(0deg); }
	100% { -webkit-transform: translate(1px, -2px) rotate(-1deg); }
}
@media only screen and (max-width: 1269px){
    #earth .description-box{
        margin-top: 100px;
    }
}
@media only screen and (max-width: 1199px){
    #earth .description-box{
        margin-top: 25px;
    }
    #make-order .img-box img{
        margin-top: 160px;
    }
    #make-order .buy-card{
        margin-top: 15px;
    }
    .card-details{
        padding: 0;
    }
    .card-option-item{
        width: 100%;
    }
    #make-order img{
        max-width: 450px;
    }
}
@media only screen and (max-width: 991px){
    .navbar{
        display: none;
    }
    .open-menu,.close-menu{
        display: unset;
    }
    .login-btn,.get-card-btn{
        width: 110px;
    }
    .description-box h3{
        line-height: 36px;
    }
    #why-us .description-box b{
        line-height: 26px;
    }
    #description .description-box{
        margin-top: 75px;
    }
    #description .description-box p{
        margin-bottom: 65px;
    }
    #features .description-box{
        margin-top: 10px;
    }
    #make-order .img-box img{
        margin-top: 350px;
    }
    .footer-box img{
        width: 100%;
    }
    .card-container{
        width: 100%;
    }
    .card-description{
        margin-bottom: 40px;
    }
    .card-details h5{
        margin-bottom: 10px;
    }
    .col-12.mb-6:last-child{
        margin-bottom: 1rem !important;
    }
    #make-order img{
        display: none;
    }
}
@media only screen and (max-width: 767px){
    #slider{
        margin-bottom: 50px
    }
    .img-box{
        display: none;
    }
    .description-box{
        width: 100% !important;
    }
    .description-box p{
        padding-right: 0;
    }
    #why-us .description-box b{
        padding-right: 0;
    }
    #features .description-box{
        padding-left: 0;
    }
    #earth{
        margin: 35px 0 100px;
        background: url('../img/world-res.jpg') no-repeat;
        background-position: center !important;
    }
    #description{
        background: url('../img/profiles-res.jpg') no-repeat;
        background-position: center !important;
    }
    #benefits{
        margin-bottom: 70px;
    }
    #make-order .buy-card{
        margin-bottom: 90px;
    }
    #faq-questions .accordion-button{
        line-height: 28px;
    }
    #earth .description-box{
        padding-right: 0;
    }
    .comment-item p{
        line-height: 26px;
    }
    .footer-box img{
        width: auto;
        max-width: 100%;
    }
    .footer-box{
        margin-bottom: 50px;
    }
    .about-demo{
        width: unset !important;
        display: table;
        margin: 50px auto 0;
    }
    .contact-us-details{
        margin-bottom: 50px;
    }
    #cart .card-preview{
        margin-bottom: 45px;
    }
    .copyright{
        position: unset;
    }
}
@media only screen and (max-width: 575px){
    .container{
        width: 92%;
    }
    .table-row .col-sm-4{
        text-align: right !important;
    }
    .theme-title{
        margin-bottom: 20px;
    }
    .theme-img{
        width: 30px;
        height: 30px;
        border-radius: 100%;
        margin-top: -8px;
        margin-bottom: 7px;
    }
    .theme-color{
        top: -19px;
    }
    .price-col{
        margin-bottom: 20px;
    }
    .card-container{
        height: 255px;
    }
}
@media only screen and (max-width: 485px){
    .login-btn,.get-card-btn{
        display: none;
    }
    .menu-header-btns{
        display: block !important;
    }
    .add-to-cart-btn{
        width: 100%;
    }
    .copyright p{
        width: 100%;
    }
    .copyright img{
        float: left;
        margin: 15px 0;
        top: 0;
        position: unset;
    }
}
#extra-header{
    height: 300px;
    overflow: hidden;
    position: relative;
}
