
/* ==========================================================
   PMPro Enhanced Checkout Payment
   Version: 0.2.5
   Mockup Typography Refinements
   ========================================================== */

/* Payment heading */
.pd-pmpecp-title{
    margin:0 0 18px;
    font-size:40px;
    line-height:1.1;
    font-weight:700;
    color:#202124;
}

/* Stripe notice */
.pd-pmpecp-stripe-notice{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:16px;
    margin:0 18px 18px;
    padding:10px 16px 0px 16px;
    background:#F6F8FF;
    border:1px solid #D8DCFF;
    border-radius:12px;
}

.pd-pmpecp-stripe-content{
    flex:1;
    min-width:0;
}

.pd-pmpecp-stripe-content h3{
    margin:0 0 2px;
    font-size:16px;
    line-height:20px;
    font-weight:700;
    color:#202124;
}

.pd-pmpecp-stripe-content p{
    margin:0;
    font-size:14px !important;
    line-height:22px !important;
    font-weight:400;
    color:#5F6C87;
}

.pd-pmpecp-stripe-brand{
    display:flex;
    align-items:center;
    justify-content:center;
    flex:0 0 auto;
    padding:6px 12px;
    background:#635BFF;
    border-radius:999px;
}

.pd-pmpecp-stripe-brand img{
    display:block;
    width:52px;
    height:auto;
}

/* Reduce PMPro spacing */
#pmpro_payment_information_fields .pmpro_card_content{
    padding-top:0;
}

#pmpro_payment_information_fields .pmpro_form_field,
#pmpro_payment_information_fields p{
    margin-top:0;
    margin-bottom:12px;
}

#pmpro_payment_information_fields label{
    display:block;
    margin:0 0 6px;
    font-size:15px;
    line-height:1.35;
    font-weight:600;
}

/* Placeholder cards */
.pd-pmpecp-section{
    margin-top:12px;
    padding:15px;
    background:#F8FAF8;
    border:1px solid #E7ECE3;
    border-radius:12px;
}

.pd-pmpecp-section h3{
    margin:0 0 6px;
    font-size:16px;
    line-height:22px;
    font-weight:700;
    color:#202124;
}

.pd-pmpecp-section p{
    margin:0;
    font-size:14px;
    line-height:20px;
    color:#667085;
}

.pd-pmpecp-section label{
    display:flex;
    align-items:flex-start;
    gap:12px;
    margin:0;
    font-size:15px;
    line-height:1.45;
    font-weight:600;
    color:#202124;
}

.pd-pmpecp-section input[type="checkbox"]{
    width:18px;
    height:18px;
    margin:2px 0 0;
}

@media (max-width:768px){
    .pd-pmpecp-title{font-size:32px;}
    .pd-pmpecp-stripe-notice{
        gap:12px;
        margin:0 12px 16px;
        padding:14px 16px;
    }
    .pd-pmpecp-stripe-content h3{
        font-size:14px;
        line-height:19px;
    }
    .pd-pmpecp-stripe-content p{
        font-size:13px;
        line-height:20px;
    }
    .pd-pmpecp-stripe-brand{
        padding:6px 10px;
    }
    .pd-pmpecp-stripe-brand img{
        width:54px;
    }
}
