/* themes/alder/css/alder-bridge.css
 * The base templates Alder does not ship (pricing, hubs, guides, learn, blog,
 * auth, info pages) render inside the Alder shell unchanged. This sheet
 * restyles their components in Alder's language without touching one byte of
 * their markup.
 *
 * Scope: body.al-fallback (set by page.tpl.php only when the page body has no
 * Alder component class) and <main> only, so the Alder header, footer and tab
 * bar are never reached. Loaded last of all, just before </head>.
 *
 * Specificity: ".al-fallback main" (0,1,1) in front of the base selector, so a
 * bridge rule beats its base rule even when the base sits in an inline <style>
 * inside <main> (later in the document). Element groups go through :where().
 * Re-theming base tokens (.hs, .pvx) comes first; per-element rules only where
 * a component hard-codes its colours.
 */

/* 1. Tokens ---------------------------------------------------------------- */
.al-fallback main {
  --al-hair: rgba(14, 42, 27, .10);           /* inner dividers, lighter than --al-line */
  --al-stitch: repeating-linear-gradient(90deg, currentColor 0 1.5px, transparent 1.5px 4px);
  --ocd-font-ui: var(--al-sans);
  --site-sh-sm: none; --site-sh-md: none;
  --site-line: var(--al-line); --site-line-2: rgba(14, 42, 27, .28);
  font-family: var(--al-sans);
  color: var(--al-body);
}
/* home-scroll.css tokens (for-providers, clinic-pricing; /pricing and /user-guide are native) */
.al-fallback main :is(.hs, .hs-sec) {
  --surf-50: var(--al-paper); --surf-100: #D6F0DD; --surf-200: #C6E3C9; --surf-300: var(--al-sage);
  --surf-400: var(--al-brand); --surf-500: var(--al-brand); --surf-600: var(--al-moss);
  --surf-700: var(--al-ink); --surf-800: var(--al-deep); --surf-900: var(--al-deep);
  --sage-100: var(--al-paper); --sage-200: #C6E3C9; --sage-600: var(--al-moss);
  --slate-100: var(--al-hair); --slate-200: var(--al-line); --slate-600: var(--al-body); --slate-900: var(--al-ink);
  --page-bg: var(--al-page); --surface-sunken: var(--al-page); --surface-mint: var(--al-paper);
  --text-strong: var(--al-ink); --text-body: var(--al-body); --text-muted: var(--al-muted); --text-subtle: #7D8E87;
  --border-default: var(--al-line); --border-sage: var(--al-line); --border-mint: var(--al-line);
  --green-check: var(--al-brand); --brand: var(--al-brand); --brand-strong: var(--al-ink); --brand-hover: var(--al-moss);
  --shadow-xs: none; --shadow-lift: none; --shadow-drop: none; --shadow-btn: none;
  --ease-brand: var(--al-ease);
  --font-sans: var(--al-sans); --font-serif: var(--al-display);
  --hs-radius: var(--al-r); --hs-rule: 1px solid var(--al-line);
}
/* provider-skin.css tokens (/clinic/<slug>): Felix's .al-pvx remap, here for the base markup */
.al-fallback main .pvx {
  --pvx-acc-mid: var(--al-brand); --pvx-acc-strong: var(--al-moss); --pvx-acc-soft: var(--al-paper); --pvx-acc-ink: var(--al-ink);
  --pvx-serif: var(--al-serif); --pvx-sans: var(--al-sans);
  --pvx-text: var(--al-ink); --pvx-text-body: var(--al-body); --pvx-text-muted: var(--al-muted); --pvx-text-subtle: var(--al-muted);
  --pvx-border: var(--al-line); --pvx-rad: var(--al-r); --pvx-cta-rad: 999px; --pvx-mini-sh: none;
  --pvx-bg-mid: var(--al-paper); --pvx-bg-soft: var(--al-page);
}

/* 2. Type ------------------------------------------------------------------ */
/* Headings: Golos Text. The base sets them through --ocd-font-display (with an
   !important inside .ocd-prose), so the token is re-pointed on the heading. */
.al-fallback main :is(h1, h2, h3) {
  --ocd-font-display: var(--al-display);
  font-family: var(--al-display);
  font-style: normal;
  color: var(--al-ink);
  text-wrap: balance;
}
.al-fallback main h1 { font-weight: 800; letter-spacing: -.032em; line-height: 1.02; }
.al-fallback main h2 { font-weight: 800; letter-spacing: -.026em; line-height: 1.08; }
.al-fallback main h3 { font-weight: 700; letter-spacing: -.015em; line-height: 1.2; }
.al-fallback main :is(h4, h5, h6) { font-family: var(--al-sans); font-style: normal; color: var(--al-ink); }
/* The one italic accent inside a heading stays Lora, in moss */
.al-fallback main :is(h1, h2, h3) :where(em, i, .it, .italic),
.al-fallback main .hs-sec-title .it {
  font-family: var(--al-serif); font-style: italic; font-weight: 500; letter-spacing: -.01em; color: var(--al-moss);
}
/* Provider names and bio quotes keep the editorial serif (Eric, 2026-10-14) */
.al-fallback main .ocd-ed-name { font-family: var(--al-serif); font-weight: 600; letter-spacing: -.01em; color: var(--al-ink); }
.al-fallback main .ocd-ed-card:hover .ocd-ed-name { color: var(--al-moss); }
.al-fallback main .ocd-ed-quote { font-family: var(--al-serif); color: var(--al-body); border-left-color: var(--al-sage); }
.al-fallback main .ocd-ed-quote-arrow { color: var(--al-sage); }
.al-fallback main .ocd-ed-card:hover .ocd-ed-quote-arrow { color: var(--al-moss); }
/* Tailwind font-serif on non-headings: display face, except italic quotes */
.al-fallback main .font-serif:not(:is(h1, h2, h3, h4, h5, h6, em, i, blockquote, .italic, q)) { font-family: var(--al-display); letter-spacing: -.015em; }

/* Body copy: Inter. Long-form prose follows .al-prose (17px/1.7, body grey);
   a practice's own bio (inside .pvx) keeps Lora, as on Alder's profile. */
.al-fallback main .ocd-prose { font-family: var(--al-sans); line-height: 1.7; color: var(--al-body); }
.al-fallback main .pvx .ocd-prose { font-family: var(--al-serif); }
.al-fallback main .ocd-prose :is(h2) { border-bottom: 0; padding-bottom: 0; }
.al-fallback main .ocd-prose :is(strong, b) { color: var(--al-ink); }
.al-fallback main .ocd-prose blockquote { border-left: 2px solid var(--al-sage); color: var(--al-body); background: transparent; }

/* Eyebrows: sentence-case muted label, no caps, no tracking, no green */
.al-fallback main :is(.fp-eyebrow, .hs-sec-eyebrow, .ocd-page-hero__eyebrow, .ocd-mcta-eyebrow,
  .ocd-art-toc__label, .ocd-g-sect-count, .lrn-kicker, .ocd-ed-tagline, .ocd-ed-label, .pvx-card__head, .fp-every-title) {
  font-family: var(--al-sans); font-weight: 600; font-size: 13px; line-height: 1.3;
  letter-spacing: 0; text-transform: none; color: var(--al-muted);
}
.al-fallback main :is(.ocd-ed-tagline, .ocd-ed-label) { font-size: 12px; font-weight: 500; }
.al-fallback main .pvx-card__head svg { color: var(--al-brand); }

/* Ledes stay Inter, body grey */
.al-fallback main :is(.fp-sub, .hs-sec-sub, .ocd-page-hero__lede, .fp-close p, .fp-step p, .fp-facts dd) { color: var(--al-body); }

/* 3. Links: the stitch underline ----------------------------------------- */
.al-fallback main .ocd-prose a,
.al-fallback main :is(.ocd-page-hero__meta, .ocd-page-hero__lede, .fp-faq-a, .fp-plans-foot, .fp-table-note, .fp-note) a:not([class]) {
  color: var(--al-ink); font-weight: 500;
  text-decoration: none; border-bottom: 0;
  background: var(--al-stitch) 0 100% / 100% 1px no-repeat; padding-bottom: 3px;
  transition: color .18s var(--al-ease);
}
.al-fallback main .ocd-prose a:hover,
.al-fallback main :is(.ocd-page-hero__meta, .ocd-page-hero__lede, .fp-faq-a, .fp-plans-foot, .fp-table-note, .fp-note) a:not([class]):hover { color: var(--al-moss); }
/* Stand-alone text links (inline-flex, 44px tall): stitch under the label */
.al-fallback main :is(.fp-link, .hs-sec-link, .ocd-g-hero__cta, .ocd-art-author__link) {
  color: var(--al-ink); text-decoration: none; border-bottom: 0;
  background: var(--al-stitch) 0 calc(50% + 12px) / 100% 1px no-repeat;
}
.al-fallback main :is(.fp-link, .hs-sec-link, .ocd-g-hero__cta, .ocd-art-author__link):hover { color: var(--al-moss); text-decoration: none; }

/* 4. Buttons: the .al-pill recipe ----------------------------------------- */
.al-fallback main :is(.fp-btn, .fp-plan-cta, .ocd-page-hero__btn, .ocd-ed-btn:not(.ocd-ed-btn--icon), .ocd-g-cta__btn,
  .btn-surf, .pvx-btn, .pvx-inquiry, .ocd-print-btn) {
  min-height: 44px; border-radius: 999px;
  font-family: var(--al-sans); font-weight: 600; letter-spacing: 0;
  box-shadow: none; transform: none;
  transition: background-color .18s var(--al-ease), border-color .18s var(--al-ease), color .18s var(--al-ease);
}
/* primary: ink fill, white text, the pill raise */
.al-fallback main :is(.fp-btn--primary, .fp-plan-cta:not(.fp-plan-cta--quiet, .fp-plan-cta--off), .fp-plan-cta--dark,
  .ocd-page-hero__btn:not(.ocd-page-hero__btn--quiet), .ocd-ed-btn--primary, .ocd-g-cta__btn:not(.ocd-g-cta__btn--ghost),
  .btn-surf, .pvx-btn--solid, .pvx-inquiry, .srch-go) {
  background: var(--al-pill); color: #fff; border-color: var(--al-pill); box-shadow: var(--al-raise);
}
.al-fallback main :is(.fp-btn--primary, .fp-plan-cta:not(.fp-plan-cta--quiet, .fp-plan-cta--off), .fp-plan-cta--dark,
  .ocd-page-hero__btn:not(.ocd-page-hero__btn--quiet), .ocd-ed-btn--primary, .ocd-g-cta__btn:not(.ocd-g-cta__btn--ghost),
  .btn-surf, .pvx-btn--solid, .pvx-inquiry, .srch-go):hover {
  background: var(--al-moss); border-color: var(--al-moss); color: #fff; transform: none;
}
/* ghost: hairline, ink text */
.al-fallback main :is(.fp-btn--ghost, .fp-plan-cta--quiet, .ocd-page-hero__btn--quiet, .ocd-ed-btn--ghost, .ocd-ed-btn--quiet,
  .ocd-g-cta__btn--ghost, .pvx-btn--ghost) {
  background: transparent; color: var(--al-ink); border: 1px solid var(--al-line); box-shadow: none;
}
.al-fallback main :is(.fp-btn--ghost, .fp-plan-cta--quiet, .ocd-page-hero__btn--quiet, .ocd-ed-btn--ghost, .ocd-ed-btn--quiet,
  .ocd-g-cta__btn--ghost, .pvx-btn--ghost):hover {
  background: rgba(14, 42, 27, .04); border-color: var(--al-ink); color: var(--al-ink);
}
.al-fallback main .fp-plan-cta--off { background: var(--al-sand); color: var(--al-muted); border-color: transparent; box-shadow: none; }
.al-fallback main :is(.fp-btn, .ocd-page-hero__btn, .ocd-g-cta__btn) { padding: 12px 22px; font-size: 15px; }
.al-fallback main .ocd-ed-btn:not(.ocd-ed-btn--icon) { padding: 10px 14px; font-size: 13.5px; }
.al-fallback main :is(.pvx-btn) { padding: 10px 18px; }
/* round icon buttons (website globe, save heart): a real 44px circle */
.al-fallback main :is(.ocd-ed-btn--icon, .ocd-ed-heart) {
  width: 44px; height: 44px; min-height: 44px; padding: 0; border-radius: 999px;
  display: inline-flex; align-items: center; justify-content: center;
  background: transparent; color: var(--al-ink); border: 1px solid var(--al-line); box-shadow: none;
}
.al-fallback main :is(.ocd-ed-btn--icon, .ocd-ed-heart)::after { inset: 0; }
.al-fallback main :is(.ocd-ed-btn--icon):hover { border-color: var(--al-ink); background: rgba(14, 42, 27, .04); color: var(--al-ink); }

/* 5. Chips: sand pills ------------------------------------------------------ */
.al-fallback main :is(.cc-chip, .ocd-art-tag, .lrn-cat, .pvx-chip, .ocd-for-btn) {
  border-radius: 999px; background: var(--al-sand); color: var(--al-ink);
  border: 1px solid transparent; box-shadow: none;
  font-family: var(--al-sans); font-weight: 500;
}
.al-fallback main :is(.cc-chip, .ocd-art-tag, .lrn-cat, .pvx-chip, .ocd-for-btn):hover { background: var(--al-sand-2); color: var(--al-ink); border-color: transparent; }
.al-fallback main :is(.cc-chip, .lrn-cat, .ocd-for-btn):is(.is-on, .is-active, .active, [aria-pressed="true"], [aria-current], [aria-selected="true"]) {
  background: var(--al-pill); color: #fff; border-color: var(--al-pill);
}
/* card labels: quiet sand tags, the one "accepting" signal in brand green */
.al-fallback main .ocd-ed-pill { background: var(--al-sand); color: var(--al-ink); border-color: transparent; font-weight: 500; }
.al-fallback main .ocd-ed-pill--outline { background: transparent; color: var(--al-muted); border-color: var(--al-line); }
.al-fallback main .ocd-ed-pill--violet { background: var(--al-sand); color: var(--al-ink); border-color: transparent; }
.al-fallback main .ocd-ed-avail--yes { background: #E6F5EC; color: #1C6B3C; border-color: transparent; }
.al-fallback main .ocd-ed-avail--yes::before { background: var(--al-brand); }
.al-fallback main .ocd-ed-avail--no { background: #EEF0EF; color: #5F6663; border-color: transparent; }
.al-fallback main .ocd-ed-verified { color: var(--al-moss); letter-spacing: 0; text-transform: none; font-size: 12px; font-weight: 500; }
.al-fallback main .ocd-ed-net.is-on { color: var(--al-ink); }
.al-fallback main :is(.ocd-ed-net, .ocd-ed-net-more):hover { color: var(--al-moss); }
.al-fallback main .ocd-ed-fee { font-family: var(--al-sans); color: var(--al-ink); }
.al-fallback main .pvx-pill { min-height: 32px; background: var(--al-sand); color: var(--al-ink); font-weight: 500; }
.al-fallback main .pvx-pill--gray { background: #EEF0EF; color: var(--al-body); }
.al-fallback main .pvx-chip--check { background: transparent; border-color: var(--al-line); }
.al-fallback main .pvx-chip--check svg { color: var(--al-brand); }
.al-fallback main .pvx-chip--sunken { background: var(--al-page); border-color: var(--al-line); }

/* 6. Cards and tiles: 16px hairline panels, no shadow ---------------------- */
.al-fallback main :is(.ocd-ed-card, .fp-plan, .fp-every, .fp-close, .fp-table-wrap, .fp-manage, .ocd-blog-card, .ocd-gcard,
  .ocd-rel-card, .ocd-tx-tile, .ocd-match-cta, .pvx-card, .ocd-art-author, .ocd-art-toc, .lrn-item, .ocd-insight-fact) {
  border-radius: var(--al-r); border-color: var(--al-line); box-shadow: none;
}
.al-fallback main :is(.ocd-ed-card, .ocd-blog-card, .ocd-gcard, .ocd-rel-card, .ocd-tx-tile, .ocd-match-cta, .lrn-item):hover {
  box-shadow: none; transform: none; border-color: var(--al-ink);
}
.al-fallback main .ocd-ed-card { background: #fff; border: 1px solid var(--al-line); }
.al-fallback main .ocd-ed-row__rail { background: var(--al-page); border-color: var(--al-hair); border-top-width: 0; }
.al-fallback main :is(.ocd-ed-tile__band, .ocd-ed-tile__foot) { border-top: 0; }
.al-fallback main :is(.fp-plan--free, .fp-plan--mine) { box-shadow: none; }
.al-fallback main .fp-plan--mine { border-color: var(--al-ink); box-shadow: inset 0 0 0 1px var(--al-ink); }
.al-fallback main .ocd-art-toc { background: var(--al-paper); border: 1px solid var(--al-line); }
.al-fallback main .pvx-card--lift { box-shadow: none; }
.al-fallback main :is(.ocd-vfacade-play) { box-shadow: var(--al-raise); }

/* 7. Inputs ---------------------------------------------------------------- */
.al-fallback main :where(input[type="text"], input[type="email"], input[type="password"], input[type="search"], input[type="tel"],
  input[type="url"], input[type="number"], input[type="date"], select, textarea) {
  font-family: var(--al-sans); color: var(--al-ink); border-color: var(--al-line); border-radius: 14px;
}
.al-fallback main :where(input, select, textarea):hover { border-color: rgba(14, 42, 27, .45); }
.al-fallback main :where(input, select, textarea):focus { border-color: var(--al-brand); box-shadow: 0 0 0 4px rgba(61, 158, 120, .16); }
.al-fallback main :where(select) {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230E2A1B' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M7 10l5 5 5-5'/%3E%3C/svg%3E");
  background-size: 18px; background-position: right 14px center; background-repeat: no-repeat; color: var(--al-ink);
  -webkit-appearance: none; appearance: none; padding-right: 40px;
}
/* search bar: the .al-finder pill, 56px, round ink go */
.al-fallback main .srch {
  min-height: 56px; padding: 6px 6px 6px 12px; gap: 6px;
  background: #fff; border: 1px solid var(--al-line); border-radius: 999px; box-shadow: none;
}
.al-fallback main .srch:focus-within { border-color: var(--al-ink); outline: 2px solid var(--al-sage); outline-offset: 3px; }
.al-fallback main .srch-f svg { color: var(--al-moss); }
.al-fallback main .srch-f--loc { border-left-color: var(--al-line); }
.al-fallback main .srch-f input { color: var(--al-ink); font-family: var(--al-sans); }
.al-fallback main .srch-f input::placeholder { color: var(--al-muted); }
.al-fallback main .srch-go { min-height: 44px; border-radius: 999px; box-shadow: none; }
.al-fallback main .srch-hint { color: var(--al-muted); }
.al-fallback main .srch-head { background: transparent; border-bottom: 0; }

/* 8. Tables: zebra rows on paper, no rules ---------------------------------- */
.al-fallback main .fp-table-wrap { background: transparent; border: 0; border-radius: 0; }
.al-fallback main .fp-table :is(th, td) { border-top: 0; border-bottom: 0; }
.al-fallback main .fp-table thead th { background: var(--al-page); border-top: 0; border-bottom: 0; color: var(--al-ink); font-weight: 600; }
.al-fallback main .fp-table th[scope="row"] { background: var(--al-page); color: var(--al-ink); font-weight: 500; }
.al-fallback main .fp-table tbody tr:nth-child(odd) > :is(th, td) { background: var(--al-paper); }
.al-fallback main .fp-table .fp-col-mine { background: var(--al-paper); }
.al-fallback main .fp-table tbody tr:nth-child(odd) > .fp-col-mine { background: #D6F0DD; }
.al-fallback main .fp-table thead .fp-col-mine { color: var(--al-ink); }
.al-fallback main .fp-yes { color: var(--al-brand); }
.al-fallback main .ocd-prose table { border-collapse: collapse; border: 0; border-radius: 0; box-shadow: none; }
.al-fallback main .ocd-prose :is(th, td) { border: 0; background: transparent; }
.al-fallback main .ocd-prose tbody tr:nth-child(even) > td { background: var(--al-paper); }
.al-fallback main .ocd-prose thead th { color: var(--al-ink); font-family: var(--al-sans); background: transparent; }

/* 9. FAQ accordions: paper panels spaced apart, a plain rotating chevron ---- */
.al-fallback main .fp-faq-list { border-top: 0; }
.al-fallback main :is(.fp-faq-item, .ocd-faq-item) { border: 0; border-radius: var(--al-r); background: var(--al-paper); padding-inline: 20px; }
.al-fallback main :is(.fp-faq-item, .ocd-faq-item) + :is(.fp-faq-item, .ocd-faq-item) { margin-top: 8px; }
.al-fallback main .fp-faq-item summary { color: var(--al-ink); }
.al-fallback main .fp-faq-icon { display: none; }
.al-fallback main :is(.fp-faq-item summary, .ocd-faq-item summary)::after {
  content: ""; flex: none; width: 9px; height: 9px; margin: 0 6px 4px 0;
  border-right: 1.75px solid var(--al-ink); border-bottom: 1.75px solid var(--al-ink);
  transform: rotate(45deg); transition: transform .2s var(--al-ease);
}
.al-fallback main :is(.fp-faq-item, .ocd-faq-item)[open] > summary::after { transform: rotate(-135deg); margin: 6px 6px 0 0; }
.al-fallback main .ocd-faq-item summary > span[aria-hidden] { display: none; }
.al-fallback main .ocd-faq-item summary { align-items: center; min-height: 44px; }
.al-fallback main .ocd-faq > h2 { padding-top: 0; border-top: 0; }

/* 10. Page heads ------------------------------------------------------------ */
/* _page-hero.tpl.php: a paper band with Alder's inner-page head, no curve */
.al-fallback main .ocd-page-hero:not(.ocd-page-hero--flat) { background: var(--al-paper); color: var(--al-ink); padding: 28px 0 40px; }
@media (min-width: 1024px) { .al-fallback main .ocd-page-hero:not(.ocd-page-hero--flat) { padding: 44px 0 56px; } }
.al-fallback main .ocd-page-hero__curve { display: none; }
.al-fallback main .ocd-page-hero__title {
  font: 800 clamp(2.1rem, 4.6vw, 3.5rem)/1.02 var(--al-display); letter-spacing: -.034em; color: var(--al-ink);
}
.al-fallback main .ocd-page-hero--flat .ocd-page-hero__title { font-size: clamp(1.75rem, 3.2vw, 2.75rem); }
.al-fallback main .ocd-page-hero__eyebrow { margin: 6px 0 12px; }
.al-fallback main .ocd-page-hero__lede { font-size: 17px; line-height: 1.6; }
.al-fallback main .ocd-page-hero__meta { color: var(--al-muted); }
.al-fallback main .ocd-page-hero__meta strong { color: var(--al-ink); }
/* plan pages */
.al-fallback main .fp-h1 { font: 800 clamp(2.25rem, 4.8vw, 3.75rem)/1 var(--al-display); letter-spacing: -.034em; }
.al-fallback main :is(.hs-sec-title, .fp-close-title) { font-family: var(--al-display); font-weight: 800; font-size: clamp(1.9rem, 3.6vw, 3rem); line-height: 1.04; letter-spacing: -.03em; color: var(--al-ink); }
.al-fallback main .fp-close-title { font-size: clamp(1.6rem, 2.8vw, 2.25rem); }
.al-fallback main .hs-sec-head { border-top: 0; padding-top: 0; }
.al-fallback main :is(.fp-plans-title, .fp-table-title, .fp-manage-title) { font-family: var(--al-display); font-weight: 700; letter-spacing: -.02em; color: var(--al-ink); }

/* 11. Pricing and plan pages ------------------------------------------------ */
.al-fallback main .fp-plan { background: #fff; }
.al-fallback main .fp-plan-amt { font-family: var(--al-display); font-weight: 800; letter-spacing: -.03em; color: var(--al-ink); }
.al-fallback main .fp-plan-name { font-family: var(--al-display); font-weight: 700; font-size: 18px; color: var(--al-ink); }
.al-fallback main .fp-plan-badge { background: var(--al-sand); color: var(--al-ink); border-color: transparent; font-weight: 500; }
.al-fallback main .fp-plan-badge--dark { background: var(--al-pill); color: #fff; border-color: var(--al-pill); }
/* amber is reserved for the pro tier */
.al-fallback main .fp-plan--pro .fp-plan-badge { background: #F6E3B4; color: #6B4508; border-color: transparent; }
.al-fallback main .fp-plan-flag { color: var(--al-moss); }
.al-fallback main .fp-plan-feats svg { color: var(--al-brand); }
.al-fallback main .fp-new { background: var(--al-paper); color: var(--al-moss); box-shadow: inset 0 0 0 1px rgba(61, 158, 120, .35); }
.al-fallback main .fp-every { background: transparent; }
.al-fallback main .fp-every-list li::before { background: var(--al-sage); }
.al-fallback main .fp-notice { background: #fff; border-color: var(--al-line); border-left-color: var(--al-brand); }
.al-fallback main .fp .ocd-pricing-toggle { background: var(--al-sand); border: 0; border-radius: 999px; }
.al-fallback main .fp .ocd-pricing-toggle__btn { border-radius: 999px; color: var(--al-body); }
.al-fallback main .fp .ocd-pricing-toggle__btn:hover { color: var(--al-ink); }
.al-fallback main .fp .ocd-pricing-toggle__btn--active { background: var(--al-pill); color: #fff; box-shadow: none; }
.al-fallback main .fp .ocd-pricing-toggle__btn--active .ocd-pricing-toggle__save { color: var(--al-sage); }
.al-fallback main .fp .ocd-pricing-toggle__save { color: var(--al-moss); }
.al-fallback main .fp-sec--tint { background: var(--al-paper); border-color: transparent; }
.al-fallback main .fp-step-n { background: var(--al-pill); }
.al-fallback main .fp-step-title { font-family: var(--al-display); font-weight: 700; }
.al-fallback main .fp-facts dt { font-family: var(--al-display); font-weight: 700; letter-spacing: -.015em; color: var(--al-ink); }
.al-fallback main .fp-close { background: var(--al-paper); border-color: transparent; }
.al-fallback main .fp-pill { background: var(--al-sand); color: var(--al-ink); }
.al-fallback main .orx-wf { --wf-lit: var(--al-brand); --wf-ink: rgba(14, 42, 27, .62); }

/* 12. Utility remaps (Tailwind greens, indigo, shadows) inside base bodies -- */
.al-fallback main :is(.text-surf-400, .text-surf-500, .text-surf-600, .text-emerald-600, .text-emerald-700, .text-green-600, .text-green-700, .text-indigo-600) { color: var(--al-moss); }
.al-fallback main :is(.text-surf-700, .text-surf-800, .text-emerald-800, .text-green-800) { color: var(--al-ink); }
.al-fallback main :is(.hover\:text-surf-600, .hover\:text-surf-700, .hover\:text-surf-800, .hover\:text-surf-900, .hover\:text-emerald-600, .hover\:text-sky-600):hover,
.al-fallback main .group:hover :is(.group-hover\:text-surf-400, .group-hover\:text-surf-600, .group-hover\:text-surf-700) { color: var(--al-moss); }
.al-fallback main :is(.bg-surf-50, .bg-emerald-50, .bg-green-50, .bg-indigo-50, .from-surf-50) { background-color: var(--al-paper); }
.al-fallback main :is(.bg-surf-300, .bg-surf-500, .bg-surf-600, .bg-emerald-600, .bg-indigo-600) { background-color: var(--al-ink); }
.al-fallback main :is(.hover\:bg-surf-700, .hover\:bg-surf-600, .hover\:bg-emerald-700):hover { background-color: var(--al-moss); }
.al-fallback main :is(.hover\:bg-surf-50, .hover\:bg-indigo-50\/30):hover,
.al-fallback main .group:hover .group-hover\:bg-surf-100 { background-color: var(--al-paper); }
.al-fallback main :is(.border-surf-100, .border-surf-200, .border-emerald-100, .border-emerald-200, .border-indigo-200) { border-color: var(--al-line); }
.al-fallback main :is(.hover\:border-surf-200, .hover\:border-surf-300, .hover\:border-indigo-300, .hover\:border-indigo-400, .hover\:border-emerald-300, .hover\:border-sky-300):hover,
.al-fallback main .group:hover .group-hover\:border-surf-300 { border-color: var(--al-ink); }
.al-fallback main :is(.focus\:border-emerald-300, .focus-within\:border-surf-300):is(:focus, :focus-within) { border-color: var(--al-brand); }
.al-fallback main :is(.shadow-sm, .shadow, .shadow-md, .shadow-lg, .shadow-xl, .shadow-2xl, .hover\:shadow-sm:hover, .hover\:shadow-md:hover, .hover\:shadow-lg:hover) { box-shadow: none; }
.al-fallback main :is(.rounded-xl, .rounded-2xl):not(img, button, a[class*="btn"]) { border-radius: var(--al-r); }
.al-fallback main :is(.border-gray-100, .border-gray-200, .border-slate-100, .border-slate-200) { border-color: var(--al-line); }

/* 13. Hubs and search pages ------------------------------------------------- */
/* filter sidebar (_filter-sidebar.tpl.php) */
.al-fallback main .ocd-filter-label { font-size: 13px; font-weight: 600; letter-spacing: 0; text-transform: none; color: var(--al-muted); }
.al-fallback main .ocd-filter-select {
  min-height: 44px; border-radius: 999px; border-color: var(--al-line); color: var(--al-ink); font-family: var(--al-sans);
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230E2A1B' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M7 10l5 5 5-5'/%3E%3C/svg%3E");
  background-size: 16px; background-position: right 14px center; background-repeat: no-repeat;
}
.al-fallback main .ocd-filter-select:hover { border-color: rgba(14, 42, 27, .45); background-color: #fff; }
.al-fallback main .ocd-filter-select:is(:focus, :focus-visible) { border-color: var(--al-brand); box-shadow: 0 0 0 3px rgba(61, 158, 120, .16); }
.al-fallback main .ocd-loc-input { min-height: 44px; border-radius: 999px; border-color: var(--al-line); }
.al-fallback main .ocd-loc-input svg { color: var(--al-moss); }
.al-fallback main .ocd-loc-input:focus-within { border-color: var(--al-brand); box-shadow: 0 0 0 3px rgba(61, 158, 120, .16); }
.al-fallback main .ocd-for-btn { border-radius: 14px; min-height: 60px; font-size: 12px; font-weight: 600; color: var(--al-ink); }
.al-fallback main .ocd-anyfilter-item:is(:hover, :focus) { background: var(--al-paper); }
.al-fallback main .ocd-anyfilter-empty a { color: var(--al-ink); }
/* pagination current page and other indigo fills (the base forces them green with !important) */
.al-fallback main .bg-indigo-600 { background-color: var(--al-ink) !important; }
/* practice card: the OHP line carries an inline green */
.al-fallback main .ocd-ed-facts .item[style*="1F7537"] { color: var(--al-moss) !important; }
/* match-quiz and videos tiles */
.al-fallback main .ocd-mcta-more { color: var(--al-ink); }
.al-fallback main .ocd-match-cta:hover .ocd-mcta-title { color: var(--al-moss); }
.al-fallback main .ocd-mcta-title { font-family: var(--al-display); font-weight: 700; color: var(--al-ink); }
.al-fallback main .ocd-mcta-halo { background: radial-gradient(circle, rgba(61, 158, 120, .10), rgba(61, 158, 120, 0) 68%); }
.al-fallback main .ocd-mcta-chip { border-color: var(--al-line); box-shadow: none; }
.al-fallback main .ocd-mcta-chip--pick { border-color: var(--al-ink); box-shadow: var(--al-raise); }
.al-fallback main .ocd-match-cta:hover .ocd-mcta-chip--pick { box-shadow: var(--al-raise); }
.al-fallback main .ocd-mcta-chip--pick .av { background: linear-gradient(150deg, var(--al-brand), var(--al-moss)); }
.al-fallback main .ocd-mcta-chip--pick .tick, .al-fallback main .ocd-mcta-reel .play { background: var(--al-pill); }
.al-fallback main .ocd-vfacade:hover .ocd-vfacade-play { box-shadow: var(--al-raise); }
/* plan tables inside the paper band keep their sticky column opaque */
.al-fallback main .fp-sec--tint .fp-table :is(thead th, th[scope="row"]) { background: var(--al-paper); }

/* 14. Hard-coded greens the templates write inline ------------------------- */
/* SVG presentation attributes (stroke="#2D9650" etc.) carry no specificity. */
.al-fallback main :is([stroke="#2D9650" i], [stroke="#1F7537" i], [stroke="#047857" i], [stroke="#059669" i], [stroke="#10b981" i], [stroke="#16a34a" i]) { stroke: var(--al-brand); }
.al-fallback main :is([fill="#2D9650" i], [fill="#1F7537" i], [fill="#047857" i], [fill="#059669" i], [fill="#10b981" i], [fill="#16a34a" i]) { fill: var(--al-brand); }
/* style="color:#..." text greens (no inline background): moss */
.al-fallback main :is([style*="color:#2D9650" i], [style*="color:#1F7537" i], [style*="color:#145425" i], [style*="color:#059669" i],
  [style*="color:#047857" i], [style*="color:#15803d" i], [style*="color:#16a34a" i], [style*="color:#2f9e4f" i], [style*="color:#1c6b3c" i],
  [style*="color: #2D9650" i], [style*="color: #1F7537" i], [style*="color: #059669" i], [style*="color: #047857" i]):not([style*="background"]) {
  color: var(--al-moss) !important;
}
/* light-green inline tag chips: sand */
.al-fallback main :is([style*="background:#f0fdf4" i], [style*="background:#ecfdf5" i], [style*="background:#F0FBF3" i], [style*="background:#dcfce7" i],
  [style*="background:#d1fae5" i], [style*="background:#e6f5ec" i], [style*="background:#f2faf5" i], [style*="background-color:#F0FBF3" i]) {
  background: var(--al-sand) !important; color: var(--al-ink) !important; border-color: transparent !important;
}
/* solid-green inline fills: ink */
.al-fallback main :is([style*="background:#2D9650" i], [style*="background:#059669" i], [style*="background:#16a34a" i], [style*="background:#10b981" i],
  [style*="background:#2f9e4f" i], [style*="background:#1F7537" i], [style*="background:#15803d" i], [style*="background-color:#2D9650" i]) {
  background: var(--al-pill) !important; border-color: var(--al-pill) !important;
}
/* inline green-tinted card shadows */
.al-fallback main [style*="box-shadow:0 2px 16px rgba(45,150,80" i] { box-shadow: none !important; }
/* The base "blue killswitch" paints indigo/sky/violet utilities green with !important */
.al-fallback main :is(.text-indigo-600, .text-indigo-500, .text-sky-600, .text-sky-500, .text-violet-600, .text-violet-500) { color: var(--al-moss) !important; }
.al-fallback main :is(.bg-indigo-50, .bg-sky-50, .bg-violet-50) { background-color: var(--al-paper) !important; }
.al-fallback main :is(.bg-indigo-500, .bg-indigo-700) { background-color: var(--al-ink) !important; }
.al-fallback main :is(.border-indigo-100, .border-sky-100, .border-violet-100) { border-color: var(--al-line) !important; }
.al-fallback main :is(.hover\:text-indigo-600, .hover\:text-indigo-800):hover { color: var(--al-ink) !important; }
.al-fallback main :is(.hover\:bg-indigo-100, .hover\:bg-indigo-50):hover { background-color: var(--al-paper) !important; }
/* remaining Tailwind greens and big utility shadows */
.al-fallback main :is(.bg-emerald-700, .bg-surf-700) { background-color: var(--al-ink); }
.al-fallback main :is(.border-emerald-300, .border-surf-300) { border-color: var(--al-line); }
.al-fallback main :is(.from-emerald-100) { --tw-gradient-from: var(--al-paper) var(--tw-gradient-from-position); --tw-gradient-to: rgba(240, 247, 244, 0) var(--tw-gradient-to-position); --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to); }
.al-fallback main :is(.to-emerald-200) { --tw-gradient-to: #C6E3C9 var(--tw-gradient-to-position); }
.al-fallback main .bg-emerald-500, .al-fallback main .bg-green-500 { background-color: var(--al-brand); }
.al-fallback main :is(.shadow-sm, .shadow, .shadow-md, .shadow-lg, .shadow-xl, .shadow-2xl) { --tw-shadow: 0 0 #0000; --tw-shadow-colored: 0 0 #0000; box-shadow: none; }

/* 15. Hubs, blog, guides ----------------------------------------------------- */
.al-fallback main .ocd-tx-tile .ocd-tx-count { background: var(--al-sand); color: var(--al-ink); font-weight: 600; }
.al-fallback main .ocd-tx-tile :is(h2, h3) { font-family: var(--al-display); }
.al-fallback main .ocd-blog-card:hover { border-color: var(--al-ink); box-shadow: none; }
.al-fallback main .ocd-gcard { box-shadow: none; border-color: var(--al-line); }
.al-fallback main .ocd-gcard:hover { box-shadow: none; transform: none; border-color: var(--al-ink); }
.al-fallback main .ocd-gcard-rule { background: var(--al-brand); }
.al-fallback main .ocd-gcard h3 { font-family: var(--al-display); font-weight: 700; color: var(--al-ink); }
.al-fallback main .ocd-gcard:hover h3 { color: var(--al-moss); }
.al-fallback main .ocd-gcard-cta { color: var(--al-ink); }
.al-fallback main .ocd-art-author__verified { color: var(--al-moss); background: var(--al-paper); border-color: transparent; }

/* 16. Register and log in (.rg-page): their own tokens */
.al-fallback main .rg-page {
  --rg-ink: var(--al-ink); --rg-head: var(--al-ink); --rg-muted: var(--al-muted);
  --rg-green-900: var(--al-deep); --rg-green-800: var(--al-ink); --rg-green-700: var(--al-ink); --rg-green-600: var(--al-moss); --rg-green-500: var(--al-brand);
  --rg-brand: var(--al-brand); --rg-brand-strong: var(--al-moss); --rg-brand-deep: var(--al-ink);
  --rg-mint-100: var(--al-paper); --rg-mint-50: var(--al-paper); --rg-tint: var(--al-paper);
  --rg-rule: var(--al-line); --rg-line: var(--al-line); --rg-dawn: var(--al-sand); --rg-page: var(--al-page);
  --rg-serif: var(--al-display); --rg-sans: var(--al-sans);
}
.al-fallback main .rg-page :is(.rg-h1, .rg-h2) { font-family: var(--al-display); font-weight: 800; letter-spacing: -.03em; color: var(--al-ink); }
.al-fallback main .rg-page .rg-h1 em { font-family: var(--al-serif); font-weight: 500; color: var(--al-moss); }
.al-fallback main .rg-page .rg-found__name { font-family: var(--al-serif); }
.al-fallback main .rg-page .rg-kicker { color: var(--al-muted); }
.al-fallback main .rg-page .rg-card { border-radius: var(--al-r); box-shadow: none; }

/* 17. Targets, shadows and tables left over -------------------------------- */
.al-fallback main a.pvx-pill { min-height: 44px; display: inline-flex; align-items: center; }
.al-fallback main .ocd-mob-filters > button { min-height: 44px; border-color: var(--al-line); }
.al-fallback main .ocd-pretty__trigger { min-height: 44px; border-color: var(--al-line); border-radius: 999px; box-shadow: none; color: var(--al-ink); font-family: var(--al-sans); }
.al-fallback main .ocd-pretty__trigger:hover { border-color: rgba(14, 42, 27, .45); background-color: #fff; }
.al-fallback main :is(.ocd-pretty-wrap[data-open="true"] .ocd-pretty__trigger, .ocd-pretty__trigger:focus-visible) { border-color: var(--al-brand); box-shadow: 0 0 0 3px rgba(61, 158, 120, .16); }
/* billboard photo stacks (inline shadows) */
.al-fallback main .ocd-billboard-stack-front { box-shadow: 0 0 0 1px var(--al-line), var(--al-raise) !important; }
/* register: the dashboard proof frames */
.al-fallback main .rg-page :is(.rg-frame, .rg-clip__media) { box-shadow: 0 0 0 1px var(--al-line), var(--al-raise); border-radius: var(--al-r); }
/* about: the floating intro video bubble */
.al-fallback main #ocd-about-pip-media { box-shadow: var(--al-raise), 0 0 0 3px rgba(255, 255, 255, .85); }
.al-fallback main #ocd-about-pip:hover #ocd-about-pip-media { box-shadow: var(--al-raise), 0 0 0 3px #fff; }
.al-fallback main #ocd-about-pip-pulse { border-color: rgba(61, 158, 120, .55); }
/* prose tables on wide screens: header row on sand, ink text, zebra paper rows */
@media (min-width: 768px) {
  .al-fallback main .ocd-prose table :is(tr[data-header] td, thead th) { background: var(--al-sand); color: var(--al-ink); border-bottom: 0; }
}
/* guide and long-form reference links */
.al-fallback main .guide-body a:not([class]) {
  color: var(--al-ink); text-decoration: none; background: var(--al-stitch) 0 100% / 100% 1px no-repeat; padding-bottom: 3px;
}
.al-fallback main .guide-body a:not([class]):hover { color: var(--al-moss); }
/* clinic page: review stars, submit, contact rows */
.al-fallback main button:is([aria-label$=" star"], [aria-label$=" stars"]) { min-width: 44px; min-height: 44px; display: inline-flex; align-items: center; justify-content: center; }
.al-fallback main :where(button[type="submit"], input[type="submit"]) { min-height: 44px; border-radius: 999px; }
.al-fallback main button.w-full.flex { min-height: 44px; }

/* 18. Labels: sentence case, muted, no tracking ----------------------------- */
.al-fallback main .uppercase { text-transform: none; letter-spacing: 0; }
.al-fallback main :is(.pvx-eyebrow, .pvx-micro, .ocd-insight-fact__scope, .lrn-nav__sub, .ocd-art-share__label, .ocd-art-author__eyebrow,
  .ocd-g-tile__kicker, .ocd-g-hero__meta, .ocd-ed-reviewed, .cc-chip__soon) {
  text-transform: none; letter-spacing: 0; font-family: var(--al-sans);
}
.al-fallback main :is(.pvx-eyebrow, .ocd-insight-fact__scope, .lrn-nav__sub, .ocd-art-share__label, .ocd-art-author__eyebrow,
  .ocd-g-tile__kicker) { color: var(--al-muted); font-weight: 600; }
.al-fallback main :is(.ocd-g-tile__cta, .ocd-g-sect-title) { text-transform: none; letter-spacing: -.01em; }
.al-fallback main .ocd-g-tile__cta { color: var(--al-ink); }
/* small Tailwind label headings (h2.text-sm, h3.text-xs): an Inter label, not a display head */
.al-fallback main :is(h2, h3, h4).text-sm, .al-fallback main :is(h2, h3, h4).text-xs {
  font-family: var(--al-sans); font-weight: 600; font-size: 13px; letter-spacing: 0; color: var(--al-muted);
}
/* slate-900 Tailwind buttons: the ink pill */
.al-fallback main :is(a, button).bg-slate-900 { background-color: var(--al-ink); border-color: var(--al-ink); border-radius: 999px; box-shadow: var(--al-raise); min-height: 44px; }
.al-fallback main :is(a, button).bg-slate-900:hover { background-color: var(--al-moss); border-color: var(--al-moss); }

/* 19. Pagers: the homepage pager recipe ------------------------------------ */
/* orcounselors_render_pagination() (hubs, /providers base, /blog, /clinics,
   /complementary-care) and the /media client pager. Same look as Alder's own
   nav.al-pager (alder-pages.css): .al-round arrows, 44px hairline number
   pills, ink current page, plain ellipsis. Arrows are icon-only below 921px;
   their markup text ("← Previous", "Next →") stays the accessible name at
   font-size 0, and a CSS chevron plus a generated word stand in for it. */
.al-fallback main :is(nav[aria-label="Pagination"], #ocd-media-pager) {
  display: flex; flex-wrap: wrap; align-items: center; justify-content: center;
  gap: 4px; row-gap: 8px; margin-top: 40px;
}
.al-fallback main nav[aria-label="Pagination"] > :is(a, span),
.al-fallback main #ocd-media-pager > button {
  display: inline-grid; place-items: center;
  min-width: 44px; height: 44px; padding: 0 8px;
  border: 1px solid var(--al-line); border-radius: 999px;
  background: transparent; box-shadow: none;
  font: 600 15px/1 var(--al-sans); font-variant-numeric: tabular-nums; letter-spacing: 0;
  color: var(--al-ink); text-decoration: none;
  transition: border-color .18s, background-color .18s, opacity .18s;
}
.al-fallback main nav[aria-label="Pagination"] > span.bg-indigo-600 { border-color: var(--al-ink); color: #fff; }
.al-fallback main nav[aria-label="Pagination"] > span:not(.bg-indigo-600) {
  min-width: 0; padding: 0 2px; border: 0; color: var(--al-muted);
}
@media (hover: hover) {
  .al-fallback main nav[aria-label="Pagination"] > a:hover,
  .al-fallback main #ocd-media-pager > button:not(:disabled):hover { border-color: var(--al-ink); background: rgba(14, 42, 27, .04); }
}
.al-fallback main nav[aria-label="Pagination"] > a:focus-visible,
.al-fallback main #ocd-media-pager > button:focus-visible { outline: 2px solid var(--al-brand); outline-offset: 2px; }
.al-fallback main #ocd-media-pager > button:disabled { opacity: .35; cursor: default; }
.al-fallback main #ocd-media-pager > [data-media-pageinfo] {
  padding: 0 8px; font: 500 14px/1 var(--al-sans); font-variant-numeric: tabular-nums; color: var(--al-muted);
}
/* Previous / Next: the .al-round with the alder_icon chevrons */
.al-fallback main :is(nav[aria-label="Pagination"] > a:is(:first-child, :last-child), #ocd-media-pager > button) {
  display: inline-flex; align-items: center; justify-content: center;
  width: 44px; padding: 0; font-size: 0;
}
.al-fallback main :is(nav[aria-label="Pagination"] > a:is(:first-child, :last-child), #ocd-media-pager > button)::before {
  content: ""; flex: none; width: 18px; height: 18px; background-color: currentColor;
  -webkit-mask: var(--al-pg-chev) center / 18px 18px no-repeat; mask: var(--al-pg-chev) center / 18px 18px no-repeat;
}
.al-fallback main :is(nav[aria-label="Pagination"] > a:first-child, #ocd-media-pager > [data-media-prev]) {
  --al-pg-chev: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M15 5l-7 7 7 7'/%3E%3C/svg%3E");
}
.al-fallback main :is(nav[aria-label="Pagination"] > a:last-child, #ocd-media-pager > [data-media-next]) {
  --al-pg-chev: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 5l7 7-7 7'/%3E%3C/svg%3E");
}
.al-fallback main :is(nav[aria-label="Pagination"] > a:last-child, #ocd-media-pager > [data-media-next])::before { order: 2; }
/* Phones: drop the "... last page" jump so one row holds */
@media (max-width: 429px) {
  .al-fallback main nav[aria-label="Pagination"] > span:not(.bg-indigo-600):has(+ a + a:last-child),
  .al-fallback main nav[aria-label="Pagination"] > span:not(.bg-indigo-600) + a:has(+ a:last-child) { display: none; }
}
@media (min-width: 430px) {
  .al-fallback main :is(nav[aria-label="Pagination"], #ocd-media-pager) { gap: 8px; }
  .al-fallback main nav[aria-label="Pagination"] > a:not(:first-child):not(:last-child) { padding: 0 14px; }
}
/* 921+: the word comes back, generated (alt text "" so it is not read twice) */
@media (min-width: 921px) {
  .al-fallback main :is(nav[aria-label="Pagination"] > a:is(:first-child, :last-child), #ocd-media-pager > button) {
    width: auto; padding: 0 18px 0 13px;
  }
  .al-fallback main :is(nav[aria-label="Pagination"] > a:last-child, #ocd-media-pager > [data-media-next]) { padding: 0 13px 0 18px; }
  .al-fallback main :is(nav[aria-label="Pagination"] > a:is(:first-child, :last-child), #ocd-media-pager > button)::after {
    font: 600 15px/1 var(--al-sans); margin-left: 6px;
  }
  .al-fallback main :is(nav[aria-label="Pagination"] > a:first-child, #ocd-media-pager > [data-media-prev])::after { content: "Previous"; content: "Previous" / ""; }
  .al-fallback main :is(nav[aria-label="Pagination"] > a:last-child, #ocd-media-pager > [data-media-next])::after {
    content: "Next"; content: "Next" / ""; margin: 0 6px 0 0;
  }
}

/* 20. No horizontal rules ---------------------------------------------------
   Alder separates blocks with space and paper panels, never a drawn line.
   Outlines on controls and panels (all four sides) stay. */
.al-fallback main hr { height: 0; border: 0; background: none; margin-block: 40px; }
.al-fallback main :is(.border-t, .border-b, .border-y):not(.border) { border-top-width: 0; border-bottom-width: 0; }
.al-fallback main :is(.ocd-rel-meta, .pseo-body, .lrn-cards, .lrn-catbar,
  .rg-signin, .rg-feats, .rg-feat, .rg-next__h, .rg-clip, .rg-stats) { border-top: 0; border-bottom: 0; }
/* learn: the lesson rows become paper panels with a gap instead of hairline rows */
.al-fallback main .lrn-cards { display: grid; gap: 8px; }
.al-fallback main .lrn-item { border: 0; background: var(--al-paper); padding: 18px 20px 16px; }
@media (hover: hover) { .al-fallback main .lrn-item:hover { background: #D6F0DD; } }
/* blog cards and the archive foot draw their rules inline, so only !important reaches them */
.al-fallback main :is(.ocd-blog-card [style*="border-top"], [style*="border-top:1px"]) { border-top-width: 0 !important; }
/* guide tiles: the 22px accent dash above the title goes; the card edge carries the tile */
.al-fallback main .ocd-gcard-rule { display: none; }
