/* Keep nested punctuation inside a single inline text flow. */
.button>.button-label{display:block;max-width:100%;text-align:center;}
.button-label .punctuation-word{display:inline-block;white-space:nowrap;}
.booking-guidance{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:24px 36px;margin-top:32px;padding-top:24px;border-top:1px solid var(--line);}
.booking-guidance>p{margin:0;max-width:none;}
.booking-note-heading{display:block;margin-bottom:8px;font-weight:600;color:var(--espresso);}
:root body .booking-guidance a{color:var(--espresso);}
.billing-overview-action{margin:28px 0 0;}
:root body .billing-overview-button{border:1px solid var(--bronze);color:var(--espresso);background:transparent;min-height:48px;}
:root body .billing-overview-button:is(:hover,:focus-visible){color:var(--bronze);border-color:var(--bronze);background:transparent;}
@media(max-width:680px){.booking-guidance{grid-template-columns:1fr;gap:22px;}.billing-overview-button{max-width:100%;}}

/* Consistent outlines for secondary and related-page actions. */
:root body main .button.secondary{border-color:var(--bronze);color:var(--espresso);background:transparent;}
:root body main .button.secondary:is(:hover,:focus-visible){color:var(--bronze);border-color:var(--bronze);background:transparent;}
.booking-guidance>.billing-link-action{align-self:start;margin:0;}
.booking-guidance .billing-link-action .button{padding:12px 18px;max-width:100%;}

/* Prescription / EMR first; private appointment choices together below. */
.booking-panel .booking-organized{display:block;border:0;}
.booking-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:28px;}
.booking-row-private{grid-template-columns:repeat(2,minmax(0,1fr));}
.booking-row>.booking-option{border-left:0;border-right:0;border-top:1px solid var(--line);padding:24px 0;min-width:0;}
.booking-private-group{margin-top:24px;}
.booking-group-label{letter-spacing:.08em;text-transform:uppercase;margin:0 0 12px;color:var(--editorial-taupe);}
.booking-unavailable{cursor:default;}
.booking-status{color:var(--editorial-taupe);}
@media(max-width:680px){.booking-row,.booking-row-private{grid-template-columns:1fr;gap:0;}.booking-private-group{margin-top:20px;}}
