.booking-features-section{padding:60px 0 20px;background:#fff;position:relative}.booking-header-text{text-align:center;max-width:700px;margin:0 auto 50px}.booking-header-text h1{font-size:38px;font-weight:800;color:#1a1a1a;margin-bottom:16px;position:relative;display:inline-block}.booking-header-text h1:after{content:"";position:absolute;bottom:-8px;left:50%;transform:translateX(-50%);width:60px;height:4px;background:var(--color-primary);border-radius:2px}.booking-header-text p{font-size:17px;color:#4b5563;line-height:1.6}.b-features-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:24px;gap:24px;margin-bottom:20px}.b-feature-card{background:#f9fafb;border-radius:20px;padding:30px 20px;text-align:center;box-shadow:none;border:1px solid #e5e7eb;transition:all .3s ease;display:flex;flex-direction:column;align-items:center}.b-feature-card:hover{transform:translateY(-4px);box-shadow:0 12px 32px rgba(0,0,0,.06);border-color:#d1d5db;background:#fff}.b-feature-icon-wrap{width:64px;height:64px;border-radius:16px;background:#fff;border:1px solid #e5e7eb;display:flex;align-items:center;justify-content:center;margin-bottom:20px;color:var(--color-primary);transition:all .3s ease}.b-feature-card:hover .b-feature-icon-wrap{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.b-feature-icon{width:28px;height:28px}.b-feature-card h3{font-size:18px;font-weight:700;color:#1f2937;margin-bottom:12px}.b-feature-card p{font-size:14px;color:#6b7280;line-height:1.6;margin:0}@media (max-width:1024px){.b-features-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:640px){.b-features-grid{grid-template-columns:1fr}.booking-header-text h1{font-size:32px}}.booking-section{padding:20px 0 80px;background:#f3f4f6;position:relative}.booking-wrapper{gap:0;background:#fff;border-radius:20px;box-shadow:0 4px 24px rgba(0,0,0,.06);border:1px solid #e5e7eb}.booking-info,.booking-wrapper{display:flex;overflow:hidden;position:relative}.booking-info{flex:1 1;padding:56px 44px;background:#12847c;color:#fff;flex-direction:column;justify-content:center}.booking-info:after{content:"";position:absolute;right:-20%;bottom:-20%;width:280px;height:280px;background:radial-gradient(circle,hsla(0,0%,100%,.06) 0,hsla(0,0%,100%,0) 70%);border-radius:50%}.booking-info h2{font-size:32px;font-weight:800;margin-bottom:18px;color:#fff;line-height:1.3}.booking-info p{font-size:15px;line-height:1.8;margin-bottom:36px;color:#cbd5e1}.contact-details{margin-top:auto;padding-top:32px;border-top:1px solid hsla(0,0%,100%,.12)}.contact-item{margin-bottom:20px}.contact-item strong{display:flex;align-items:center;gap:10px;font-size:16px;margin-bottom:10px;color:#f1f5f9}.booking-info .booking-address-link,.contact-item p{display:block;margin-bottom:6px;font-size:14px;color:#d4d4d4;text-decoration:none}.booking-info .booking-address-link:hover{color:#fff;text-decoration:underline}.booking-form-container{flex:1.5 1;padding:56px 44px;background:#fff}.booking-form .form-group{margin-bottom:22px}.booking-form .form-row{display:flex;gap:20px}.booking-form .form-row .form-group{flex:1 1}.booking-form label{display:block;font-weight:600;color:#374151;margin-bottom:8px;font-size:14px}.booking-form input,.booking-form select,.booking-form textarea{width:100%;padding:13px 16px;border:1px solid #d1d5db;border-radius:10px;font-family:inherit;font-size:15px;transition:all .2s ease;background:#fff;color:#1f2937}.booking-form input:focus,.booking-form select:focus,.booking-form textarea:focus{border-color:var(--color-primary);outline:none;box-shadow:0 0 0 3px var(--color-primary-ring)}.booking-form textarea{resize:vertical}.booking-form .field-hint{display:block;margin-top:6px;font-size:12px;color:#6b7280;line-height:1.4}.booking-form .checkbox-label{display:flex;align-items:center;gap:8px;margin-top:10px;font-weight:500;font-size:13px;color:#4b5563;cursor:pointer}.booking-form .checkbox-label input[type=checkbox]{width:auto;margin:0;cursor:pointer;accent-color:var(--color-primary)}.booking-form .diagnosis-options{display:flex;flex-direction:column;gap:12px}.booking-form .radio-label{display:flex;align-items:flex-start;gap:10px;padding:14px 16px;border:1px solid #d1d5db;border-radius:10px;cursor:pointer;font-weight:500;font-size:14px;color:#374151;line-height:1.5;transition:border-color .2s ease,background .2s ease}.booking-form .radio-label:hover{border-color:var(--color-primary);background:var(--color-primary-soft)}.booking-form .radio-label input[type=radio]{width:auto;margin-top:3px;flex-shrink:0;cursor:pointer;accent-color:var(--color-primary)}.booking-form .radio-label:has(input:checked){border-color:var(--color-primary);background:var(--color-primary-soft)}.booking-form .diagnosis-note{margin-top:12px;padding:12px 16px;background:#fff7ed;border:1px solid #fed7aa;border-radius:10px;color:#c2410c;font-size:14px;font-weight:600;line-height:1.5}.submit-btn{width:100%;padding:15px;background:var(--color-primary);color:#fff;border:none;border-radius:10px;font-size:17px;font-weight:700;cursor:pointer;transition:all .2s ease;margin-top:12px}.submit-btn:hover{background:var(--color-primary-hover)}.submit-btn:active{transform:scale(.99)}body.booking-modal-open{overflow:hidden}.booking-success-overlay{position:fixed;inset:0;z-index:9999;display:flex;align-items:center;justify-content:center;padding:20px;background:rgba(15,23,42,.55);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:bookingFadeIn .25s ease}.booking-success-modal{position:relative;width:100%;max-width:460px;padding:36px 32px 28px;background:#fff;border-radius:20px;box-shadow:0 24px 60px rgba(0,0,0,.18);text-align:center;animation:bookingSlideUp .35s ease}.booking-success-close{position:absolute;top:16px;right:16px;display:flex;align-items:center;justify-content:center;width:36px;height:36px;border:none;border-radius:50%;background:#f3f4f6;color:#6b7280;cursor:pointer;transition:all .2s ease}.booking-success-close:hover{background:#e5e7eb;color:#374151}.booking-success-icon-wrap{display:inline-flex;align-items:center;justify-content:center;width:88px;height:88px;margin-bottom:18px;border-radius:50%;background:linear-gradient(135deg,var(--color-primary-light) 0,var(--color-primary-soft) 100%);color:var(--color-primary);animation:bookingPop .5s ease .1s both}.booking-success-title{margin-bottom:10px;font-size:26px;font-weight:800;color:#111827;line-height:1.3}.booking-success-message{margin-bottom:22px;font-size:15px;line-height:1.7;color:#6b7280}.booking-success-details{margin-bottom:18px;padding:16px 18px;border:1px solid #e5e7eb;border-radius:14px;background:#f9fafb;text-align:left}.booking-success-detail-row{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:10px 0;border-bottom:1px dashed #e5e7eb;font-size:14px}.booking-success-detail-row:last-child{border-bottom:none;padding-bottom:0}.booking-success-detail-row span{color:#6b7280;flex-shrink:0}.booking-success-detail-row strong{color:#111827;text-align:right;line-height:1.5}.booking-success-note{display:flex;align-items:center;justify-content:center;gap:8px;margin-bottom:22px;padding:12px 14px;border-radius:12px;background:var(--color-primary-soft);color:var(--color-primary-dark);font-size:14px;font-weight:600}.booking-success-btn{width:100%;padding:14px 20px;border:none;border-radius:12px;background:var(--color-primary);color:#fff;font-size:16px;font-weight:700;cursor:pointer;transition:background .2s ease,transform .2s ease}.booking-success-btn:hover{background:var(--color-primary-hover)}.booking-success-btn:active{transform:scale(.99)}@keyframes bookingFadeIn{0%{opacity:0}to{opacity:1}}@keyframes bookingSlideUp{0%{opacity:0;transform:translateY(24px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes bookingPop{0%{opacity:0;transform:scale(.5)}70%{transform:scale(1.08)}to{opacity:1;transform:scale(1)}}@media (max-width:991px){.booking-wrapper{flex-direction:column}.booking-form-container,.booking-info{padding:36px 32px}}@media (max-width:768px){.booking-section{padding:24px 15px 56px}.booking-info h2{font-size:26px}.booking-form .form-row{flex-direction:column;gap:0}.booking-form-container,.booking-info{padding:28px 20px}}