/* ==========================================
   PAYMENT PAGE
========================================== */

.payment-page{
    background:#f6f8fc;
    padding:50px 0 80px;
    min-height:100vh;
}

.payment-container{
    max-width:1280px;
}

/* ==========================================
   STEP
========================================== */

.payment-steps{
    display:flex;
    align-items:center;
    justify-content:center;
    margin-bottom:45px;
}

.payment-step{
    display:flex;
    flex-direction:column;
    align-items:center;
    gap:10px;
}

.payment-circle{
    width:52px;
    height:52px;
    border-radius:50%;
    border:2px solid #d8dde7;
    display:flex;
    align-items:center;
    justify-content:center;
    background:#fff;
    color:#9ca3af;
    font-weight:700;
    font-size:18px;
    transition:.3s;
}

.payment-step span{
    font-size:15px;
    color:#8c97a7;
    font-weight:500;
}

.payment-line{
    width:120px;
    height:3px;
    background:#d8dde7;
    margin:0 15px;
    border-radius:50px;
}

.payment-step.active .payment-circle{
    background:#003963;
    border-color:#003963;
    color:#fff;
}

.payment-step.active span{
    color:#003963;
    font-weight:700;
}

.payment-line.active{
    background:#003963;
}

/* ==========================================
   CARD
========================================== */

.payment-card{
    background:#fff;
    border-radius:20px;
    padding:35px;
    box-shadow:0 12px 35px rgba(0,0,0,.06);
}

.payment-title{
    display:flex;
    align-items:center;
    gap:15px;
    margin-bottom:35px;
}

.payment-title i{
    font-size:30px;
    color:#003963;
}

.payment-title h2{
    margin:0;
    font-size:28px;
    font-weight:700;
    color:#183153;
}

/* ==========================================
   SECTION
========================================== */

.payment-section{
    margin-bottom:35px;
}

.payment-section h4{
    font-size:15px;
    color:#8c97a7;
    font-weight:700;
    margin-bottom:18px;
    letter-spacing:1px;
}

.payment-method-list{
    display:flex;
    flex-direction:column;
    gap:16px;
}

/* ==========================================
   PAYMENT ITEM
========================================== */

.payment-method{
    display:block;
    cursor:pointer;
}

.payment-method input{
    display:none;
}

.payment-method-content{

    display:flex;
    justify-content:space-between;
    align-items:center;

    background:#fff;

    border:2px solid #e6ebf2;

    border-radius:16px;

    padding:20px 22px;

    transition:.25s;

}

.payment-method:hover .payment-method-content{

    border-color:#003963;

}

.payment-method input:checked + .payment-method-content{

    border-color:#003963;

    box-shadow:0 0 0 4px rgba(13,110,253,.08);

}

.payment-left{

    display:flex;

    align-items:center;

    gap:18px;

}

.payment-left img{

    width:54px;

    height:54px;

    object-fit:contain;

}

.payment-left span{

    font-size:17px;

    font-weight:600;

    color:#22304a;

}

.payment-right{

    display:flex;

    align-items:center;

    gap:15px;

}

.payment-right i{

    font-size:18px;

    color:#9ca3af;

}

.payment-card-logo{

    display:flex;

    align-items:center;

    gap:10px;

}

.payment-card-logo img{

    width:42px;

    height:28px;

    object-fit:contain;

}

/* ==========================================
   INFORMATION
========================================== */

.payment-information{

    display:flex;

    gap:18px;

    margin-top:40px;

    background:#eef7ff;

    border-radius:16px;

    padding:22px;

}

.payment-information-icon{

    width:52px;

    height:52px;

    border-radius:50%;

    background:#003963;

    color:#fff;

    display:flex;

    align-items:center;

    justify-content:center;

    font-size:22px;

}

.payment-information h5{

    margin-bottom:6px;

    font-weight:700;

    color:#1d3557;

}

.payment-information p{

    margin:0;

    color:#667085;

    line-height:1.7;

}

/* =====================================================
   SIDEBAR
===================================================== */

.payment-summary{

    position:sticky;

    top:110px;

}

.payment-summary-card{

    background:#fff;

    border-radius:20px;

    padding:28px;

    margin-bottom:22px;

    box-shadow:0 10px 30px rgba(0,0,0,.06);

}

.payment-summary-card h3{

    font-size:22px;

    font-weight:700;

    color:#183153;

    margin-bottom:25px;

}


/* =====================================================
   MOBIL
===================================================== */

.payment-car{

    display:flex;

    gap:18px;

    align-items:center;

    margin-bottom:25px;

}

.payment-car img{

    width:110px;

    height:72px;

    object-fit:contain;

}

.payment-car h4{

    font-size:19px;

    font-weight:700;

    color:#1d3557;

    margin-bottom:5px;

}

.payment-car span{

    font-size:14px;

    color:#7b8794;

}


/* =====================================================
   DETAIL
===================================================== */

.payment-detail{

    border-top:1px solid #edf1f5;

    padding-top:20px;

}

.payment-row{

    display:flex;

    justify-content:space-between;

    align-items:center;

    margin-bottom:18px;

}

.payment-row:last-child{

    margin-bottom:0;

}

.payment-row span{

    color:#6b7280;

    font-size:15px;

}

.payment-row strong{

    color:#183153;

    font-size:15px;

    font-weight:700;

}


/* =====================================================
   DISCOUNT
===================================================== */

.payment-discount span{

    color:#16a34a;

    font-weight:600;

}

.payment-discount strong{

    color:#16a34a;

}


/* =====================================================
   TOTAL
===================================================== */

.payment-total{

    display:flex;

    justify-content:space-between;

    align-items:center;

    margin-top:20px;

}

.payment-total span{

    color:#667085;

    font-size:16px;

}

.payment-total h2{

    margin:0;

    color:#003963;

    font-size:30px;

    font-weight:800;

}


/* =====================================================
   TIMER
===================================================== */

.payment-timer{

    display:flex;

    align-items:center;

    gap:18px;

}

.payment-timer-icon{

    width:58px;

    height:58px;

    border-radius:50%;

    background:#e9f2ff;

    display:flex;

    justify-content:center;

    align-items:center;

    color:#003963;

    font-size:25px;

}

.payment-timer small{

    display:block;

    color:#7b8794;

    margin-bottom:6px;

}

.payment-timer h4{

    margin:0;

    color:#ef4444;

    font-size:30px;

    font-weight:700;

    letter-spacing:2px;

}


/* =====================================================
   BUTTON
===================================================== */

.payment-btn{

    width:100%;

    border:none;

    border-radius:14px;

    background:#005a96;

    color:#fff;

    font-size:18px;

    font-weight:700;

    padding:16px;

    transition:.3s;

}

.payment-btn:hover{

    background:#003963;

    transform:translateY(-2px);

}


/* =====================================================
   NOTE
===================================================== */

.payment-note{

    margin-top:18px;

    text-align:center;

    font-size:14px;

    color:#7b8794;

    line-height:1.8;

}


/* =====================================================
   SECURITY
===================================================== */

.payment-security{

    margin-top:30px;

    display:flex;

    flex-direction:column;

    gap:15px;

}

.payment-security div{

    display:flex;

    align-items:center;

    gap:12px;

    color:#374151;

    font-size:15px;

    font-weight:600;

}

.payment-security i{

    color:#003963;

    font-size:18px;

}


/* =====================================================
   RESPONSIVE
===================================================== */

@media(max-width:992px){

    .payment-summary{

        position:relative;

        top:0;

        margin-top:30px;

    }

}

@media(max-width:768px){

    .payment-page{

        padding:30px 0;

    }

    .payment-card{

        padding:22px;

    }

    .payment-summary-card{

        padding:22px;

    }

    .payment-title h2{

        font-size:23px;

    }

    .payment-left img{

        width:45px;

        height:45px;

    }

    .payment-left span{

        font-size:15px;

    }

    .payment-total h2{

        font-size:25px;

    }

    .payment-timer h4{

        font-size:24px;

    }

    .payment-line{

        width:55px;

    }

}