/*
 * Cerbo booking widget (/cerbo/), 15 September 2026.
 *
 * This page renders through the generic page.php, not one of the five
 * approved-mockup templates -- the booking form itself is injected by
 * Cerbo's own third-party script into post_content (see the Cerbo REST/WXR
 * note in BB-CLEANUP-RUNBOOK.md), so none of this markup exists in the
 * approved mockup, and theme.css (the mockup's own stylesheet, verbatim --
 * see its file header, "do not restyle from here") is the wrong place for
 * it. Not touching the script or post_content itself: Tommy asked for
 * styling only, and the runbook already flags that page's post_content as
 * fragile (a stored <script> tag that breaks the REST pages endpoint).
 *
 * Own file, enqueued only on is_page('cerbo') (see functions.php), rather
 * than folded into pages.css: pages.css is the 5-new-page-template
 * component library and is only enqueued on those templates, which is
 * exactly why the first attempt at this fix (added to pages.css) never
 * rendered -- page.php never loads that stylesheet. Isolating this in its
 * own file means it also can't leak onto any other page.php page.
 *
 * Two real bugs fixed here, both confirmed on the rendered DOM before
 * writing any rule (getBoundingClientRect + getComputedStyle, not guessed):
 *
 * 1. page.php's .grid is 300px/1fr (a TOC column + content column, built
 *    for article/framework pages with a sidebar). This page has no TOC, so
 *    the single <article> child was auto-placed into the 300px track, and
 *    Cerbo's own .booking_wrap (hardcoded to 700px by the widget's own
 *    script) simply overflowed out of it rather than filling the intended
 *    1240px content width -- left-aligned rather than centered, per
 *    Tommy's report.
 * 2. The widget's own <h1>"Book Appointment" inherits the theme's global
 *    h1 rule (color:#fff), which is only readable on the navy hero -- on
 *    this cream body background it rendered as invisible white-on-cream
 *    text at 60px.
 *
 * Selectors are scoped to .booking_wrap and its own child IDs/classes,
 * which are unique to Cerbo's script output.
 */
.grid:has(.booking_wrap){grid-template-columns:1fr}
.grid:has(.booking_wrap) article{max-width:900px;margin:0 auto;width:100%}
.booking_wrap{max-width:900px;margin:0 auto;padding:32px;background:var(--paper);border:1px solid var(--line);border-radius:var(--radius)}
.booking_wrap h1{color:var(--navy);font-size:clamp(26px,3vw,36px);padding:0 0 24px;text-align:center}
.booking_wrap select,
.booking_wrap input[type="text"],
.booking_wrap input[type="email"],
.booking_wrap input[type="tel"]{width:100%;padding:14px 16px;margin-bottom:16px;border:1px solid var(--line);border-radius:4px;background:#fff;font:400 16px 'Instrument Sans',system-ui,-apple-system,'Segoe UI',sans-serif;color:var(--slate)}
.booking_wrap button,
.booking_wrap input[type="submit"]{font:600 15.5px 'Instrument Sans',system-ui,-apple-system,'Segoe UI',sans-serif;border-radius:4px;padding:13px 24px;cursor:pointer}
.custom-alert .alert-content{border:1px solid var(--line);border-radius:var(--radius)}
.custom-alert .alert-content p{font:400 16px/1.5 'Instrument Sans',system-ui,-apple-system,'Segoe UI',sans-serif;color:var(--slate)}
.custom-alert .alert-content button{font:600 15px 'Instrument Sans',system-ui,-apple-system,'Segoe UI',sans-serif}
