.booking-body{min-height:100vh;background:radial-gradient(circle at top left,rgba(14,166,166,.12),transparent 28rem),linear-gradient(180deg,#f6fcfa,#eef7f4)}.booking-header{position:sticky}.booking-nav{gap:.45rem}.booking-main{width:min(76rem,calc(100% - 2rem));margin:0 auto 4rem}.reveal-block{animation:bookingRise .52s ease both}.booking-hero{margin:1.25rem 0 1.5rem;padding:clamp(1.5rem,5vw,3rem);border:1px solid rgba(0,93,96,.12);background:linear-gradient(135deg,#fffffff2,#eaf8f4eb),url(/assets/doctor-team-t-c_bh0k.png) right bottom / min(32rem,48%) no-repeat;box-shadow:var(--shadow)}.booking-hero-copy{width:min(38rem,100%)}.booking-hero-copy p:not(.eyebrow){color:#25444c;font-size:1.05rem;line-height:1.65}.booking-hero-meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.9rem;margin-top:1.5rem}.booking-hero-meta article,.doctor-card,.step-panel,.date-pill,.time-pill,.booking-selection{border:1px solid var(--line);background:#ffffffeb;box-shadow:0 12px 32px #004b4d14}.booking-hero-meta article{padding:1rem}.booking-hero-meta strong{display:block;color:var(--teal-700);font-size:1.4rem;font-weight:900}.booking-hero-meta span{color:var(--muted);font-weight:800}.booking-layout{display:grid;grid-template-columns:minmax(18rem,22rem) minmax(0,1fr);gap:1rem}.booking-sidebar,.booking-panel{min-width:0}.doctor-list,.date-grid,.time-grid{display:grid;gap:.85rem}.doctor-card{width:100%;padding:1rem;text-align:left;cursor:pointer;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.doctor-card:hover,.doctor-card:focus-visible{transform:translateY(-2px);border-color:#007b8073;outline:none}.doctor-card.is-selected{border-color:var(--teal-700);box-shadow:0 18px 34px #005d602e}.doctor-card h3{font-size:1.15rem}.doctor-card p{margin:.45rem 0 0;color:var(--muted);line-height:1.45}.doctor-tag{display:inline-flex;width:fit-content;margin-bottom:.55rem;padding:.28rem .52rem;color:var(--white);background:var(--teal-900);font-size:.72rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.step-panel{padding:clamp(1.15rem,4vw,1.6rem);margin-bottom:1rem}.booking-note{margin:.5rem 0 1rem;color:var(--muted);line-height:1.55}.date-grid{grid-template-columns:repeat(auto-fit,minmax(9rem,1fr));margin-bottom:1rem}.time-grid{grid-template-columns:repeat(auto-fit,minmax(8rem,1fr))}.date-pill,.time-pill{min-height:4.25rem;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:.18rem;padding:.85rem .95rem;cursor:pointer;transition:transform .18s ease,border-color .18s ease,background .18s ease}.date-pill:hover,.time-pill:hover,.date-pill:focus-visible,.time-pill:focus-visible{transform:translateY(-2px);border-color:#007b806b;outline:none}.date-pill.is-selected,.time-pill.is-selected{border-color:var(--teal-700);background:#0ea6a614}.date-pill strong,.time-pill strong{color:var(--teal-900)}.date-pill span,.time-pill span{color:var(--muted);font-size:.9rem}.booking-selection{margin-bottom:1rem;padding:.95rem 1rem;color:var(--teal-900);font-weight:800}.booking-form{display:grid;gap:.95rem}.booking-form label{display:grid;gap:.45rem;color:var(--ink);font-weight:800}.booking-form input,.booking-form textarea{width:100%;padding:.9rem 1rem;border:1px solid rgba(0,93,96,.18);background:#fff;color:var(--ink);font:inherit}.booking-form input:focus,.booking-form textarea:focus{border-color:var(--teal-700);outline:2px solid rgba(14,166,166,.14);outline-offset:2px}.booking-submit{width:fit-content}.booking-submit:disabled{cursor:not-allowed;opacity:.48}.booking-status{min-height:1.5rem;margin:0;color:var(--muted);font-weight:700}.booking-status.is-error{color:#a13f34}.booking-status.is-success{color:#196f4c}.booking-empty{padding:1rem;color:var(--muted);border:1px dashed rgba(0,93,96,.24);background:#ffffffb3}@keyframes bookingRise{0%{opacity:0;transform:translateY(1rem)}to{opacity:1;transform:translateY(0)}}@media(max-width:960px){.booking-layout{grid-template-columns:1fr}.booking-hero{background:linear-gradient(135deg,#fffffff5,#eaf8f4f0),none}}@media(max-width:700px){.booking-main{width:min(100%,calc(100% - 1rem))}.booking-hero-meta{grid-template-columns:1fr}.booking-submit{width:100%}}
