
.ccsp-grid{
width: 100%;
float: left;
}

.ccsp-card{
background:#fff;
border:1px solid #e5e5e5;
border-radius:12px;
padding:20px;
box-shadow:0 4px 12px rgba(0,0,0,.05);
}

.ccsp-card h3 {
    font-size: 19px;
    line-height: normal;
}
.ccsp-top{
display:flex;
justify-content:space-between;
align-items:flex-start;
margin-bottom:20px;
}

.ccsp-top h3{
font-size:34px;
margin:0 0 10px;
}

.ccsp-subtitle{
font-size:16px;
font-weight:600;
color:#0b1d3a;
margin:0;
text-align: left!important;
}

.ccsp-badge{
background:#edf3ff;
padding:4px 14px;
border-radius:20px;
font-weight:600;
color:#244b8a;
}
.ccsp-duration {
    font-size: 14px;
    color: #333;
}
.ccsp-desc{
font-size:13px;
line-height:1.8;
margin-bottom:20px;
color:#444;
}

.ccsp-rating{
display:flex;
gap:10px;
align-items:center;
margin-bottom:25px;
}

.stars{
color:#f7a500;
}

.reviews{
color:#666;
}

.ccsp-bottom{
display:flex;
justify-content:space-between;
align-items:center;
}

.ccsp-buttons{
display:flex;
gap:10px;
}

.ccsp-enroll{
background:#019155;
border:none;
padding:5px 12px;
border-radius:6px;
font-weight:700;
cursor:pointer;
font-size:14px;
}

.ccsp-details{
border:1px solid #123f7b;
padding:5px 12px;
border-radius:6px;
text-decoration:none;
font-weight:700;
color:#123f7b;
font-size:14px;
}

.ccsp-overlay{
display:none;
position:fixed;
top:0;
left:0;
width:100%;
height:100%;
background:rgba(0,0,0,.6);
z-index:9998;
}

.ccsp-popup{
display:none;
position:fixed;
top:62%;
left:50%;
transform:translate(-50%,-50%);
width:520px;
background:#fff;
border-radius:8px;
overflow:hidden;
z-index:9999;
height: 520px;
overflow: scroll;
}

.ccsp-popup-header{
background:#123f7b;
color:#fff;
padding:2px 22px;
display:flex;
justify-content:space-between;
font-size:26px;
font-weight:700;
}

.ccsp-close{
cursor:pointer;
}

.ccsp-popup-body{
padding:10px 25px;
}

.ccsp-popup-body input,
.ccsp-phone select{
width:100%;
padding:14px;
border:1px solid #ddd;
border-radius:6px;
margin-bottom:20px;
}

.ccsp-phone{
display:grid;
grid-template-columns:110px 1fr;
gap:12px;
}

.ccsp-submit{
width:100%;
background:#efc84a;
border:none;
padding:18px;
border-radius:6px;
font-weight:700;
}

span.popup-title {
    font-size: 13px;
}
label.ccsp-check span {
    font-size: 13px;
        vertical-align: top;
}




@media(max-width:768px){

.ccsp-grid{
grid-template-columns:1fr;
}

.ccsp-popup{
width:95%;
}

.ccsp-bottom{
flex-direction:column;
align-items:flex-start;
gap:20px;
}

}
