.clinic-appointment-form{
    max-width:700px;
    margin:40px auto;
    background:#ffffff;
    padding:35px;
    border-radius:12px;
    box-shadow:0 10px 35px rgba(0,0,0,.08);
}

.clinic-appointment-form h2{
    margin:0 0 25px;
    font-size:30px;
    font-weight:700;
    text-align:center;
}

.clinic-appointment-form .row{
    display:flex;
    gap:20px;
    margin-bottom:18px;
}

.clinic-appointment-form .col{
    flex:1;
}

.clinic-appointment-form label{
    display:block;
    font-weight:600;
    margin-top: 30px
    color:#333;
}
.clinic-branch-address {
    margin-top: 8px;
    font-size: 14px;
    line-height: 1.5;
    color: #666;
}

.clinic-appointment-form input,
.clinic-appointment-form select,
.clinic-appointment-form textarea{
    width:100%;
    height:48px;
    border:1px solid #d8d8d8;
    border-radius:8px;
    padding:0 15px;
    font-size:15px;
    transition:.25s;
    background:#fff;
    box-sizing:border-box;
}
.clinic-slot-fee {
    margin-top: 8px;
    font-size: 14px;
    font-weight: 600;
}

.clinic-appointment-form textarea{
    min-height:120px;
    padding:15px;
    resize:vertical;
}

.clinic-appointment-form input:focus,
.clinic-appointment-form select:focus,
.clinic-appointment-form textarea:focus{
    border-color:#0a8f7a;
    outline:none;
    box-shadow:0 0 0 3px rgba(10,143,122,.12);
}

.clinic-appointment-form input[type=file]{
    height:auto;
    padding:12px;
}

.clinic-appointment-form button,
.clinic-appointment-form input[type=submit]{
    width:100%;
    height:52px;
    border:none;
    border-radius:8px;
    background:#0a8f7a;
    color:#fff;
    font-size:17px;
    font-weight:600;
    cursor:pointer;
    transition:.3s;
}

.clinic-appointment-form button:hover,
.clinic-appointment-form input[type=submit]:hover{
    background:#087462;
}

.clinic-success-message{
    max-width:700px;
    margin:25px auto;
    padding:22px;
    border-radius:8px;
    background:#e8fff1;
    border-left:5px solid #22a447;
}

/*
.clinic-success-message{
    background:#e8f7e8;
    border:1px solid #4caf50;
    padding:20px;
    margin-bottom:20px;
    border-radius:6px;
}
*/

.clinic-success-message h3{
    margin:0 0 10px;
    color:#14833a;
}

.clinic-success-message strong{
    font-size:20px;
    color:#000;
}

@media(max-width:768px){
	.clinic-appointment-form .row{
		display:block;
	}

	.clinic-appointment-form .col{
		margin-bottom:18px;
	}
}

.clinic-message{
	padding:14px 18px;
	border-radius:6px;
	margin-bottom:20px;
	font-weight:600;
}

.clinic-success{
	background:#d1e7dd;
	color:#0f5132;
	border:1px solid #badbcc;
}

.clinic-error{
	background:#f8d7da;
	color:#842029;
	border:1px solid #f5c2c7;
}

.clinic-payment-info{
    background:#f8fbfd;
    border:1px solid #d7e7ef;
    border-left:5px solid #0a8f7a;
    border-radius:10px;
    padding:25px;
    margin:30px 0;
}

.clinic-payment-info h3{
    margin:0 0 12px;
    color:#0a8f7a;
    font-size:24px;
}

.clinic-payment-info>p{
    margin-bottom:20px;
    line-height:1.7;
}

.clinic-payment-grid{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
    gap:18px;
    margin-bottom:20px;
}

.clinic-payment-card{
    background:#fff;
    border:1px solid #e5e5e5;
    border-radius:8px;
    padding:18px;
}

.clinic-payment-card h4{
    margin:0 0 12px;
    color:#0a8f7a;
    font-size:18px;
}

.clinic-payment-card p{
    margin:6px 0;
    line-height:1.6;
}

.clinic-payment-note{
    margin:0;
    padding:12px 15px;
    background:#fff8e5;
    border-left:4px solid #f4b400;
    border-radius:6px;
    font-weight:600;
}
.clinic-payment-info{
    background:#f8fbfd;
    border:1px solid #d7e7ef;
    border-left:5px solid #0a8f7a;
    border-radius:10px;
    padding:25px;
    margin:30px 0;
    box-sizing:border-box;
}

.clinic-payment-grid{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(260px,1fr));
    gap:20px;
}

.clinic-payment-card{
    background:#fff;
    border:1px solid #e5e5e5;
    border-radius:8px;
    padding:18px;
    box-sizing:border-box;
    word-break:break-word;
}

.clinic-radio-group{
    display:flex;
    align-items:center;
    gap:20px;
    margin:18px 0;
    flex-wrap:wrap;
}

.clinic-radio-group strong{
    min-width:120px;
}

.clinic-radio-group label{
    display:flex;
    align-items:center;
    gap:6px;
    margin:0;
    cursor:pointer;
}

.clinic-radio-group input[type="radio"]{
    margin:0;
}
.clinic-radio-group{
    display:flex;
    align-items:center;
    gap:20px;
    flex-wrap:wrap;
}

.clinic-radio-group label{
    display:inline-flex;
    align-items:center;
    gap:6px;
    margin:0;
    cursor:pointer;
}

.clinic-radio-group input[type="radio"]{
    width:16px;
    height:16px;
    margin:0;
    flex-shrink:0;
}

.clinic-radio-group span{
    font-size:13px;
    color:#666;
    margin-left:4px;
}

@media (max-width:768px){

    .clinic-payment-info{
        padding:18px;
    }

    .clinic-payment-info h3{
        font-size:22px;
    }

    .clinic-payment-grid{
        grid-template-columns:1fr;
        gap:15px;
    }

    .clinic-payment-card{
        padding:15px;
    }

}