.cos-booking{--cos-pink:#E90F88;--cos-blue:#0772B5;--cos-txt:#23445E;--cos-br:#DCE8F0;--cos-bg:#F7FBFE;box-sizing:border-box;max-width:850px;margin:0 auto;padding:32px;background:#fff;border:1px solid var(--cos-br);border-radius:20px;box-shadow:0 14px 35px rgba(7,114,181,.06);font-family:Inter,Arial,sans-serif;color:var(--cos-txt)}
.cos-booking *, .cos-booking *:before,.cos-booking *:after{box-sizing:border-box}
.cos-booking__head{margin-bottom:24px}.cos-booking__eyebrow{display:inline-block;padding:8px 13px;margin-bottom:12px;border-radius:100px;background:#EAF6FC;color:var(--cos-blue);font-weight:800;font-size:13px}.cos-booking__head h2{font-size:30px!important;line-height:1.2!important;margin:0 0 10px!important;color:var(--cos-blue)!important}.cos-booking__head p{font-size:14px!important;line-height:1.6!important;margin:0!important;color:var(--cos-txt)!important}
.cos-booking__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.cos-booking__grid--optional{margin-top:16px}.cos-booking__field{min-width:0;display:flex;flex-direction:column;gap:7px;font-size:13px;font-weight:700;color:var(--cos-txt)}.cos-booking__field b{color:var(--cos-pink)}.cos-booking__field--wide{grid-column:1/-1}.cos-booking__field input,.cos-booking__field select,.cos-booking__field textarea{display:block;width:100%;min-width:0;min-height:48px;padding:11px 13px;border:1px solid var(--cos-br);border-radius:10px;background:#fff;color:var(--cos-txt);font:inherit;font-weight:500;font-size:14px;box-shadow:none}.cos-booking__field textarea{min-height:90px;resize:vertical}.cos-booking__field input:focus,.cos-booking__field select:focus,.cos-booking__field textarea:focus{outline:2px solid rgba(7,114,181,.2);border-color:var(--cos-blue)}.cos-booking__consent{display:flex;align-items:flex-start;gap:10px;margin:22px 0 16px;font-size:12px;line-height:1.6;color:var(--cos-txt)}.cos-booking__consent input{margin-top:3px;flex:0 0 auto}.cos-booking__consent a{color:var(--cos-blue);text-decoration:underline}.cos-booking__submit{min-height:50px;display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:12px 24px;border:0;border-radius:10px;background:var(--cos-pink);color:#fff;font-weight:800;font-size:14px;cursor:pointer}.cos-booking__submit:hover{background:var(--cos-blue);color:#fff}.cos-booking__fineprint{margin:14px 0 0!important;font-size:12px!important;line-height:1.6!important;color:#647889!important}.cos-booking__message{padding:12px 15px;border-radius:10px;margin:0 0 18px!important;font-size:13px!important}.cos-booking__message--success{background:#E8F6EF;color:#12623B}.cos-booking__message--error{background:#FFF1F1;color:#9E2633}.cos-booking__optional{margin-top:16px;padding:12px 15px;border:1px solid var(--cos-br);border-radius:12px;background:var(--cos-bg)}.cos-booking__optional summary{cursor:pointer;color:var(--cos-blue);font-size:13px;font-weight:700}.cos-booking__optional[open]{padding-bottom:18px}.cos-booking__trap{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.cos-booking--compact{max-width:740px;padding:27px}
@media(max-width:767px){.cos-booking{padding:23px 18px;border-radius:14px}.cos-booking__grid{grid-template-columns:1fr;gap:13px}.cos-booking__field--wide{grid-column:auto}.cos-booking__head h2{font-size:25px!important}.cos-booking__submit{width:100%}}
@media(prefers-reduced-motion:reduce){.cos-booking__submit{transition:none}}
/* Optional referring physician question (v1.1). */
.cos-booking__referral{margin:22px 0 0;padding:16px 18px;border:1px solid var(--cos-br);border-radius:12px;background:var(--cos-bg);min-width:0}
.cos-booking__referral legend{float:none;width:auto;margin:0;padding:0 3px;color:var(--cos-blue);font-size:13px;font-weight:800}
.cos-booking__radios{display:flex;align-items:center;gap:18px;margin:8px 0 0;flex-wrap:wrap}
.cos-booking__radios label{display:inline-flex;align-items:center;gap:7px;cursor:pointer;font-size:14px;font-weight:600}
.cos-booking__radios input{accent-color:var(--cos-pink);margin:0;width:18px;height:18px}
.cos-booking__referral-fields{display:grid;grid-template-columns:1fr;gap:14px;padding-top:15px;max-width:500px}
.cos-booking__referral-fields[hidden],.cos-booking__other-doctor[hidden]{display:none!important}
.cos-booking__referral-fields .cos-booking__field{margin:0}
