/* Site-wide centered text (approved by Daniel, 2026-10-07).
   Loaded last on every page so it sits on top of each page's own styles. Text inherits the centring
   from <main> and <footer>; the rules below only (1) undo the few places that set left alignment
   explicitly, (2) centre constrained text blocks inside their containers, and (3) keep structured UI
   (forms, the questionnaire, tables, lists, the homepage journey timeline) in its working alignment.
   Header navigation is untouched. Alignment only: no colours, fonts, images or breakpoints change. */

main, footer { text-align: center; }

/* (1) Explicit left alignment elsewhere, now centred. */
.team-copy p,
.bo-strategy, .bo-faq, .bo-placeholder, .bo-intake,
.faq-item, .faq-q, .faq-answer, .faq-source { text-align: center; }

/* (2) Text blocks with a reading-width cap sit in the middle of their container. */
main :is(p:not(form p), .section-copy, .eyebrow, .gold-rule, .section-title, blockquote, figcaption, .step) { margin-left: auto; margin-right: auto; }
.about-hero .gold-rule { margin-left: auto; margin-right: auto; }

/* Button rows and the footer logo sit in the middle too. */
.bo-actions { justify-content: center; }
main .cta-inner { align-items: center; }
.faq-source, .faq-rule, .bo-faq { margin-left: auto; margin-right: auto; }
/* The FAQ accent line grew from its left edge; with centred text it now grows from its middle. */
.faq-item .faq-rule { transform-origin: 50% 50%; }
footer .brand { justify-content: center; margin-left: auto; margin-right: auto; }
footer .brand-mark, .footer .brand-logo { margin-left: auto; margin-right: auto; }

/* Accordion questions (Business Owners FAQ): the +/- sign sits at the right, so balance the text
   with matching left padding. */
.bo-faq summary { padding-left: 44px; }
.bo-faq details p { margin-left: auto; margin-right: auto; }

/* (3) Structured UI keeps its working alignment. */
main :is(form, table, fieldset, select, input, textarea, .choice-card, .questionnaire-email) { text-align: start; }
/* The Business Owners radio group is centred as a block; its options stay left-aligned. */
.bo-intake fieldset { width: fit-content; max-width: 100%; margin-left: auto; margin-right: auto; }

/* Lists: the group is centred, items stay left-aligned so markers line up neatly. */
main :is(ul, ol) { text-align: left; }
.checklist { max-width: 820px; margin-left: auto; margin-right: auto; }
