/* CareServ microsite CONTENT styles. No site-wide resets and no invented brand palette.
   Keep the existing Bricks typography. Bind --cs-* tokens in the microsite templates
   to actual site tokens after inspecting the site locally. All sizes use em/rem so
   the site's root font sizing remains authoritative. */
.cs-microsite {
  --cs-gap: var(--space-l, 1.5em);
  --cs-card-radius: var(--radius-m, .5em);
  --cs-line-color: var(--border-primary, color-mix(in srgb, currentColor 18%, transparent));
  --cs-card-surface: var(--bg-surface, transparent);
  width: 100%;
  min-width: 0;
}
.cs-microsite *, .cs-microsite *::before, .cs-microsite *::after { box-sizing: border-box; }
.cs-richtext > :first-child { margin-top: 0; }
.cs-richtext > :last-child { margin-bottom: 0; }
.cs-richtext p, .cs-richtext li { overflow-wrap: anywhere; }
.cs-richtext p { margin-block: 0 1em; }
.cs-richtext :is(h2,h3,h4) { margin-block: 1.6em .65em; text-wrap: balance; }
.cs-richtext :is(h2,h3,h4) strong { font-weight: inherit; }
.cs-richtext :is(ul,ol) { margin-block: .8em 1.25em; padding-inline-start: 1.8em; list-style-position: outside; }
.cs-richtext li { display: list-item; margin-block: .4em; }
.cs-richtext li > :is(ul,ol) { margin-block: .5em; }
.cs-richtext li > p:last-child { margin-bottom: 0; }
.cs-richtext ul { list-style-type: disc; }
.cs-richtext ul ul { list-style-type: circle; }
.cs-richtext ul.cs-list-square { list-style-type: square; }
.cs-richtext ol, .cs-richtext ol.cs-list-decimal { list-style-type: decimal; }
.cs-richtext ol.cs-list-upper-alpha { list-style-type: upper-alpha; }
.cs-richtext ol.cs-list-lower-alpha { list-style-type: lower-alpha; }
.cs-richtext ol.cs-list-upper-roman { list-style-type: upper-roman; }
.cs-richtext ol.cs-list-lower-roman { list-style-type: lower-roman; }
.cs-richtext a { text-underline-offset: .18em; }
.cs-richtext a:focus-visible, .cs-microsite-nav a:focus-visible { outline: 2px solid currentColor; outline-offset: 4px; }
.cs-richtext [id] { scroll-margin-top: 7em; }
.cs-richtext .cs-content-image { display: block; max-width: 100%; height: auto; }
.cs-guide-document .cs-content-image { margin-block: 1.5em; border: 1px solid var(--cs-line-color, currentColor); border-radius: var(--cs-card-radius); }
.cs-legal-document { max-width: 82ch; margin-inline: auto; }
.cs-legal-document > :is(h2,h3) { padding-top: .35em; }
.cs-card-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: var(--cs-gap); margin-block: 1em 2em; }
.cs-resource-card { display: flex; flex-direction: column; align-items: flex-start; min-width: 0; padding: 1.35em; border: 1px solid var(--cs-line-color, currentColor); border-radius: var(--cs-card-radius); background: var(--cs-card-surface); }
.cs-resource-card .cs-card-image { display: block; width: 100%; }
.cs-resource-card .cs-content-image { width: 100%; height: 10em; object-fit: contain; margin: 0 0 1em; border: 0; }
.cs-resource-card .cs-card-title { margin-block: .2em .6em; font-size: 1.25em; }
.cs-resource-card .cs-card-link { display: inline-flex; align-items: center; margin-top: auto; padding-top: .85em; font-weight: 600; }
.cs-richtext .cs-link-cards { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); list-style: none; padding: 0; gap: var(--cs-gap); }
.cs-richtext .cs-link-cards > li { display: flex; margin: 0; }
.cs-link-cards a { display: flex; width: 100%; align-items: center; padding: 1.5em; border: 1px solid var(--cs-line-color, currentColor); border-radius: var(--cs-card-radius); font-weight: 600; }
.cs-form-slot { margin-block: 1.5em; width: 100%; min-width: 0; }
.cs-form-notice { padding: 1em; border: 1px solid currentColor; }
/* This navigation is optional: existing Bricks Nav Menu elements are preferred. */
.cs-microsite-nav ul { display: flex; flex-wrap: wrap; align-items: center; gap: .65em 1.3em; list-style: none; margin: 0; padding: 0; }
.cs-microsite-nav li { list-style: none; margin: 0; padding: 0; }
.cs-microsite-nav [aria-current="page"] { text-decoration: underline; text-underline-offset: .3em; }
.cs-microsite-nav--footer ul { align-items: flex-start; }
.cs-microsite-breadcrumbs { display: flex; flex-wrap: wrap; gap: .4em; margin-bottom: 1.25em; }
/* Existing child-site Pages predate the importer and therefore render through
   Bricks' native page fallback rather than the .cs-microsite content template. */
body:is(.cs-site-help,.cs-site-legal) #brx-content {
  box-sizing: border-box;
  width: min(100%, calc(82ch + clamp(2rem, 8vw, 8rem)));
  min-width: 0;
  margin-inline: auto;
  padding: clamp(7.5rem, 8vw, 9rem) clamp(1rem, 4vw, 4rem) clamp(3rem, 7vw, 6rem);
}
body.cs-site-help #brx-content { width: min(100%, 75rem); }
body:is(.cs-site-help,.cs-site-legal) #brx-content *,
body:is(.cs-site-help,.cs-site-legal) #brx-content *::before,
body:is(.cs-site-help,.cs-site-legal) #brx-content *::after { box-sizing: border-box; }
body:is(.cs-site-help,.cs-site-legal) #brx-content > :first-child { margin-top: 0; }
body:is(.cs-site-help,.cs-site-legal) #brx-content > :last-child { margin-bottom: 0; }
body:is(.cs-site-help,.cs-site-legal) #brx-content :is(p,li) { line-height: 1.65; overflow-wrap: anywhere; }
body:is(.cs-site-help,.cs-site-legal) #brx-content :is(h1,h2,h3,h4) { text-wrap: balance; }
body:is(.cs-site-help,.cs-site-legal) #brx-content :is(h2,h3,h4) { margin-block: 1.6em .65em; }
body:is(.cs-site-help,.cs-site-legal) #brx-content :is(ul,ol) { padding-inline-start: 1.8em; }
body:is(.cs-site-help,.cs-site-legal) #brx-content img { max-width: 100%; height: auto; }

/* Legal microsite design system. These rules intentionally do not affect Help or
   the main marketing site. */
body.cs-site-legal {
  --cs-legal-brand: #287a84;
  --cs-legal-brand-dark: #123f47;
  --cs-legal-brand-soft: #e7f2f3;
  --cs-legal-accent: #9b2f68;
  --cs-legal-ink: #172a31;
  --cs-legal-muted: #5d7077;
  --cs-legal-canvas: #f3f7f8;
  --cs-legal-surface: #fff;
  --cs-legal-border: #d8e5e7;
  min-height: 100vh;
  background:
    radial-gradient(circle at 12% 0%, rgba(40,122,132,.12), transparent 32rem),
    linear-gradient(180deg, #eef5f6 0, var(--cs-legal-canvas) 38rem, #f7f9fa 100%);
  color: var(--cs-legal-ink);
  font-family: "Inter", "Segoe UI", Arial, sans-serif;
  font-size: 1.6rem;
  line-height: 1.7;
}
body.cs-site-legal .cs-microsite-nav--header ul { flex-wrap: nowrap; gap: .6rem; }
body.cs-site-legal .cs-microsite-nav--header a {
  display: inline-flex;
  align-items: center;
  min-height: 4rem;
  padding: .7rem 1.2rem;
  border: 1px solid transparent;
  border-radius: 999px;
  color: var(--cs-legal-ink);
  font-size: 1.45rem;
  font-weight: 600;
  line-height: 1.2;
  text-decoration: none;
  white-space: nowrap;
  transition: color .2s ease, background-color .2s ease, border-color .2s ease, transform .2s ease;
}
body.cs-site-legal .cs-microsite-nav--header a:hover {
  border-color: var(--cs-legal-border);
  background: var(--cs-legal-brand-soft);
  color: var(--cs-legal-brand-dark);
  transform: translateY(-1px);
}
body.cs-site-legal .cs-microsite-nav--header [aria-current="page"] {
  border-color: var(--cs-legal-brand);
  background: var(--cs-legal-brand);
  color: #fff;
  box-shadow: 0 .7rem 1.8rem rgba(40,122,132,.2);
  text-decoration: none;
}
body.cs-site-legal .cs-microsite-nav--header li:last-child a {
  border-color: rgba(155,47,104,.3);
  color: var(--cs-legal-accent);
}
body.cs-site-legal .cs-microsite-nav--header li:last-child a:hover {
  border-color: var(--cs-legal-accent);
  background: #fbf0f6;
}
body.cs-site-legal #brx-content {
  width: min(calc(100% - clamp(3.2rem, 8vw, 12rem)), 88rem);
  margin: 14rem auto 5rem;
  padding: clamp(3.2rem, 5vw, 6.4rem);
  border: 1px solid rgba(40,122,132,.14);
  border-radius: 2.4rem;
  background: rgba(255,255,255,.98);
  box-shadow: 0 2.4rem 6rem rgba(18,63,71,.1), 0 .3rem 1rem rgba(18,63,71,.05);
}
body.cs-site-legal #brx-content > h1 {
  max-width: 20ch;
  margin: 0;
  color: var(--cs-legal-ink);
  font-family: "Manrope", "Inter", "Segoe UI", sans-serif;
  font-size: clamp(3.6rem, 5vw, 5.6rem);
  font-weight: 700;
  letter-spacing: -.035em;
  line-height: 1.08;
}
body.cs-site-legal #brx-content > h1::after {
  display: block;
  width: 5.6rem;
  height: .5rem;
  margin-top: 1.6rem;
  border-radius: 999px;
  background: linear-gradient(90deg, var(--cs-legal-brand), var(--cs-legal-accent));
  content: "";
}
body.cs-site-legal .cs-microsite-breadcrumbs {
  display: inline-flex;
  width: auto;
  margin: 2rem 0 3rem;
  padding: .65rem 1.1rem;
  border: 1px solid var(--cs-legal-border);
  border-radius: 999px;
  background: var(--cs-legal-brand-soft);
  color: var(--cs-legal-muted);
  font-size: 1.3rem;
  font-weight: 600;
  letter-spacing: .025em;
  line-height: 1.35;
}
body.cs-site-legal .cs-microsite-breadcrumbs a { color: var(--cs-legal-brand-dark); text-decoration: none; }
body.cs-site-legal.home .cs-microsite-breadcrumbs { display: none; }
body.cs-site-legal #brx-content > p:first-of-type {
  max-width: 68ch;
  margin-top: 3rem;
  color: var(--cs-legal-muted);
  font-size: 1.8rem;
  line-height: 1.7;
}
body.cs-site-legal:not(.home) #brx-content > p:first-of-type {
  padding: 1.6rem 1.8rem;
  border-left: .4rem solid var(--cs-legal-brand);
  border-radius: 0 1rem 1rem 0;
  background: #f5f9fa;
}
body.cs-site-legal #brx-content p:empty { display: none; }
body.cs-site-legal #brx-content a {
  color: var(--cs-legal-brand-dark);
  font-weight: 600;
  text-decoration-color: rgba(40,122,132,.42);
  text-decoration-thickness: .14em;
  text-underline-offset: .2em;
}
body.cs-site-legal #brx-content a:hover { color: var(--cs-legal-accent); text-decoration-color: currentColor; }
body.cs-site-legal #brx-content :is(h2,h3,h4) {
  color: var(--cs-legal-ink);
  font-family: "Manrope", "Inter", "Segoe UI", sans-serif;
  font-weight: 700;
  letter-spacing: -.02em;
  line-height: 1.2;
}
body.cs-site-legal #brx-content h2 {
  margin: 4.4rem 0 1.8rem;
  padding-top: 3.2rem;
  border-top: 1px solid var(--cs-legal-border);
  font-size: clamp(2.5rem, 3.5vw, 3.4rem);
}
body.cs-site-legal #brx-content h3 { margin: 3rem 0 1.2rem; font-size: clamp(2.1rem, 2.8vw, 2.7rem); }
body.cs-site-legal #brx-content h4 { margin: 2.4rem 0 1rem; font-size: 1.9rem; }
body.cs-site-legal #brx-content :is(p,li) { color: #304249; line-height: 1.78; }
body.cs-site-legal #brx-content :is(ul,ol) { margin-block: 1.4rem 2.4rem; padding-inline-start: 2.6rem; }
body.cs-site-legal #brx-content li { margin-block: .65rem; padding-left: .35rem; }
body.cs-site-legal #brx-content li::marker { color: var(--cs-legal-brand); font-weight: 700; }
body.cs-site-legal #brx-content strong { color: var(--cs-legal-ink); }
body.cs-site-legal #brx-content blockquote {
  margin: 2.8rem 0;
  padding: 2rem 2.4rem;
  border-left: .4rem solid var(--cs-legal-accent);
  border-radius: 0 1.2rem 1.2rem 0;
  background: #fbf4f8;
}
body.cs-site-legal #brx-content table {
  display: block;
  width: 100%;
  margin-block: 2.5rem;
  overflow-x: auto;
  border: 1px solid var(--cs-legal-border);
  border-radius: 1.2rem;
  border-collapse: separate;
  border-spacing: 0;
}
body.cs-site-legal #brx-content :is(th,td) { padding: 1.2rem 1.4rem; border-bottom: 1px solid var(--cs-legal-border); }
body.cs-site-legal #brx-content th { background: var(--cs-legal-brand-soft); color: var(--cs-legal-brand-dark); text-align: left; }
body.cs-site-legal.home #brx-content > p:first-of-type { margin-bottom: 0; }
body.cs-site-legal.home #brx-content > ul {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1.6rem;
  margin: 3.2rem 0 0;
  padding: 0;
  list-style: none;
}
body.cs-site-legal.home #brx-content > ul > li { display: flex; margin: 0; padding: 0; list-style: none; }
body.cs-site-legal.home #brx-content > ul > li::marker { content: ""; }
body.cs-site-legal.home #brx-content > ul > li > a {
  position: relative;
  display: flex;
  width: 100%;
  min-height: 13rem;
  flex-direction: column;
  justify-content: space-between;
  padding: 2rem;
  overflow: hidden;
  border: 1px solid var(--cs-legal-border);
  border-radius: 1.6rem;
  background: linear-gradient(145deg, #fff 0%, #f4f9f9 100%);
  box-shadow: 0 .7rem 2rem rgba(18,63,71,.06);
  color: var(--cs-legal-brand-dark);
  font-family: "Manrope", "Inter", sans-serif;
  font-size: 1.65rem;
  font-weight: 700;
  line-height: 1.35;
  text-decoration: none;
  transition: border-color .2s ease, box-shadow .2s ease, transform .2s ease;
}
body.cs-site-legal.home #brx-content > ul > li > a::before {
  width: 3.8rem;
  height: .4rem;
  border-radius: 999px;
  background: linear-gradient(90deg, var(--cs-legal-brand), var(--cs-legal-accent));
  content: "";
}
body.cs-site-legal.home #brx-content > ul > li > a::after {
  align-self: flex-end;
  color: var(--cs-legal-accent);
  font-size: 2rem;
  line-height: 1;
  content: "\2192";
}
body.cs-site-legal.home #brx-content > ul > li > a:hover {
  border-color: rgba(40,122,132,.5);
  box-shadow: 0 1.2rem 2.8rem rgba(18,63,71,.12);
  transform: translateY(-.3rem);
}
body.cs-site-legal ::selection { background: rgba(40,122,132,.24); color: var(--cs-legal-ink); }
body.cs-site-legal :is(a,button):focus-visible { outline: .3rem solid var(--cs-legal-accent); outline-offset: .3rem; }
body:is(.cs-site-help,.cs-site-legal) header .brxe-shortcode:has(.cs-nav-shell) { width: 100%; }
.cs-nav-shell { display: flex; align-items: center; justify-content: flex-end; }
.cs-nav-panel { display: flex; align-items: center; gap: 1rem; }
.cs-nav-call {
  box-sizing: border-box;
  display: inline-flex;
  min-height: 4.2rem;
  align-items: center;
  justify-content: center;
  padding: .75rem 1.45rem;
  border: 2px solid #fff;
  border-radius: 999px;
  background: #a14f8c;
  color: #fff;
  font-size: 1.42rem;
  font-weight: 700;
  line-height: 1.1;
  text-decoration: none;
  white-space: nowrap;
  box-shadow: 0 .65rem 1.6rem rgba(18,63,71,.18);
  transition: box-shadow .2s ease, transform .2s ease;
}
.cs-nav-call:hover {
  background: #a14f8c;
  color: #fff;
  box-shadow: 0 .9rem 2rem rgba(18,63,71,.24);
  transform: translateY(-1px);
}

/* Match the main CareServ site's OneTap presentation on both microsites. The
   network plugin stores its visual options per site, so the child sites need a
   scoped override until those settings are network-global. */
body:is(.cs-site-help,.cs-site-legal) .onetap-container-toggle .onetap-toggle {
  top: auto !important;
  right: auto !important;
  bottom: 0 !important;
  left: 0 !important;
  margin: 0 0 2rem 2rem !important;
}
body:is(.cs-site-help,.cs-site-legal) .onetap-container-toggle .onetap-toggle img {
  background: #22899b !important;
}
body:is(.cs-site-help,.cs-site-legal) nav.onetap-accessibility.onetap-plugin-onetap {
  right: auto !important;
  left: -580px !important;
}
body:is(.cs-site-help,.cs-site-legal) nav.onetap-accessibility.onetap-plugin-onetap.onetap-toggle-open {
  right: auto !important;
  left: 0 !important;
}
body:is(.cs-site-help,.cs-site-legal) nav.onetap-accessibility.onetap-plugin-onetap .onetap-header-top .onetap-close {
  right: auto !important;
  left: 510px !important;
}
.cs-nav-toggle,
.cs-nav-backdrop,
.cs-nav-drawer-header { display: none; }

@media (max-width: 991px) {
  .cs-card-grid, .cs-richtext .cs-link-cards { grid-template-columns: repeat(2,minmax(0,1fr)); }
  body.cs-site-legal .cs-microsite-nav--header {
    width: 100%;
    max-width: 100%;
    padding: 0 1.2rem .8rem;
    overflow-x: auto;
    overscroll-behavior-inline: contain;
    scrollbar-width: thin;
  }
  body.cs-site-legal .cs-microsite-nav--header ul { width: max-content; margin-inline: auto; }
  body.cs-site-legal #brx-content { margin-top: 13rem; }
  body.cs-site-legal.home #brx-content > ul { grid-template-columns: repeat(2, minmax(0,1fr)); }
}
@media (min-width: 601px) and (max-width: 991px) {
  /* The fixed desktop-style header can wrap onto a second row at tablet widths. */
  body:is(.cs-site-help,.cs-site-legal) #brx-content { padding-top: 10rem; }
  body.cs-site-legal #brx-content { padding-top: clamp(3.2rem, 5vw, 6.4rem); }
}
@media (max-width: 600px) {
  .cs-card-grid, .cs-richtext .cs-link-cards { grid-template-columns: minmax(0,1fr); }
  .cs-resource-card { padding: 1.1em; }
  .cs-richtext :is(ul,ol) { padding-inline-start: 1.5em; }
  .cs-microsite-nav--header {
    width: 100%;
    max-width: 100%;
    overflow-x: auto;
    overscroll-behavior-inline: contain;
    scrollbar-width: thin;
  }
  .cs-microsite-nav--header ul { width: max-content; flex-wrap: nowrap; gap: .9em; }
  .cs-microsite-nav--header a { white-space: nowrap; }
  body:is(.cs-site-help,.cs-site-legal) #brx-content { padding-top: 12.5rem; }
  body.cs-site-legal { font-size: 1.55rem; }
  body.cs-site-legal .cs-microsite-nav--header { padding-inline: .8rem; }
  body.cs-site-legal .cs-microsite-nav--header ul { margin-inline: 0; }
  body.cs-site-legal .cs-microsite-nav--header a { min-height: 3.6rem; padding: .6rem 1rem; font-size: 1.35rem; }
  body.cs-site-legal #brx-content {
    width: calc(100% - 2rem);
    margin-top: 12rem;
    margin-bottom: 2.5rem;
    padding: 2.6rem 2.2rem 3rem;
    border-radius: 1.8rem;
  }
  body.cs-site-legal #brx-content > h1 { font-size: clamp(3.2rem, 10vw, 4.2rem); }
  body.cs-site-legal #brx-content > h1::after { margin-top: 1.2rem; }
  body.cs-site-legal .cs-microsite-breadcrumbs { margin: 1.6rem 0 2.4rem; }
  body.cs-site-legal #brx-content > p:first-of-type { margin-top: 2.4rem; font-size: 1.65rem; }
  body.cs-site-legal #brx-content h2 { margin-top: 3.6rem; padding-top: 2.6rem; }
  body.cs-site-legal #brx-content :is(ul,ol) { padding-inline-start: 2.2rem; }
  body.cs-site-legal.home #brx-content > ul { grid-template-columns: minmax(0,1fr); gap: 1.2rem; margin-top: 2.5rem; }
  body.cs-site-legal.home #brx-content > ul > li > a { min-height: 10.5rem; padding: 1.7rem; }
}

@media (max-width: 576px) {
  body:is(.cs-site-help,.cs-site-legal) .onetap-container-toggle .onetap-toggle {
    margin: 0 0 1.6rem 1.6rem !important;
  }
  body:is(.cs-site-help,.cs-site-legal) nav.onetap-accessibility.onetap-plugin-onetap .onetap-header-top .onetap-close {
    right: 2rem !important;
    left: auto !important;
  }
}

/* Shared Help + Legal mobile navigation. This block intentionally follows the
   legacy responsive rules above so the drawer wins without altering desktop. */
@media (max-width: 991px) {
  html:has(body:is(.cs-site-help,.cs-site-legal)) { overflow-x: clip; }
  body:is(.cs-site-help,.cs-site-legal) { overflow-x: clip; }
  body:is(.cs-site-help,.cs-site-legal).cs-nav-open { overflow: hidden; }
  body:is(.cs-site-help,.cs-site-legal) header .brxe-shortcode:has(.cs-nav-shell) { width: auto; }
  .cs-nav-shell { align-items: center; }
  .cs-nav-toggle {
    display: inline-flex;
    width: 4.8rem;
    height: 4.8rem;
    align-items: center;
    justify-content: center;
    padding: .35rem;
    border: 0;
    border-radius: .6rem;
    background: transparent;
    color: #268c99;
    font: inherit;
    line-height: 1;
    cursor: pointer;
  }
  .cs-nav-toggle:hover { background: rgba(40,122,132,.08); }
  .cs-nav-toggle__icon {
    display: grid;
    width: 3.8rem;
    gap: .52rem;
  }
  .cs-nav-toggle__icon span {
    display: block;
    width: 100%;
    height: .5rem;
    border-radius: 999px;
    background: currentColor;
  }
  .cs-nav-backdrop {
    position: fixed;
    inset: 0;
    z-index: 1001;
    display: block;
    width: 100%;
    height: 100%;
    padding: 0;
    border: 0;
    background: rgba(12,35,41,.5);
    opacity: 0;
    visibility: hidden;
    transition: opacity .24s ease, visibility .24s ease;
    cursor: pointer;
  }
  .cs-nav-panel {
    box-sizing: border-box;
    position: fixed;
    inset: 0 0 0 auto;
    z-index: 1002;
    display: flex;
    width: min(92vw, 48rem);
    height: 100dvh;
    flex-direction: column;
    align-items: stretch;
    gap: 0;
    padding: 0 2.4rem 2.8rem;
    background: #eaf4f8;
    color: #172a31;
    box-shadow: -2rem 0 5rem rgba(12,35,41,.2);
    overflow-y: auto;
    overscroll-behavior: contain;
    transform: translateX(105%);
    visibility: hidden;
    transition: transform .28s cubic-bezier(.22,.8,.3,1), visibility .28s ease;
  }
  .cs-nav-drawer-header {
    display: flex;
    min-height: 8.4rem;
    flex: 0 0 auto;
    align-items: center;
    justify-content: flex-end;
  }
  .cs-nav-drawer-title {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0,0,0,0);
    white-space: nowrap;
    border: 0;
  }
  .cs-nav-close {
    position: relative;
    display: inline-flex;
    width: 5rem;
    height: 5rem;
    align-items: center;
    justify-content: center;
    padding: 0;
    border: 0;
    border-radius: .6rem;
    background: transparent;
    color: #268c99;
    cursor: pointer;
  }
  .cs-nav-close:hover { background: rgba(40,122,132,.08); }
  .cs-nav-close::before,
  .cs-nav-close::after {
    position: absolute;
    content: '';
  }
  .cs-nav-close::before {
    width: 3.5rem;
    height: .5rem;
    border-radius: 999px;
    background: currentColor;
  }
  .cs-nav-close::after {
    right: .65rem;
    width: 1.55rem;
    height: 1.55rem;
    border-top: .5rem solid currentColor;
    border-right: .5rem solid currentColor;
    transform: rotate(45deg);
  }
  .cs-nav-panel .cs-microsite-nav--header {
    width: 100%;
    max-width: none;
    flex: 0 0 auto;
    padding: 1rem 0 2rem;
    overflow: visible;
  }
  .cs-nav-panel .cs-microsite-nav--header ul {
    display: flex;
    width: 100%;
    flex-direction: column;
    align-items: stretch;
    gap: .25rem;
    margin: 0;
  }
  .cs-nav-panel .cs-microsite-nav--header li { width: 100%; }
  body:is(.cs-site-help,.cs-site-legal) .cs-nav-panel .cs-microsite-nav--header a {
    display: flex;
    width: 100%;
    min-height: 5.6rem;
    align-items: center;
    justify-content: flex-start;
    padding: 1rem .8rem;
    border: 0;
    border-bottom: 1px solid rgba(18,63,71,.11);
    border-radius: .4rem;
    color: #111;
    font-size: 2rem;
    font-weight: 750;
    white-space: normal;
  }
  body:is(.cs-site-help,.cs-site-legal) .cs-nav-panel .cs-microsite-nav--header [aria-current='page'] {
    border-color: rgba(18,63,71,.11);
    background: rgba(255,255,255,.45);
    color: #123f47;
  }
  body:is(.cs-site-help,.cs-site-legal) .cs-nav-panel .cs-microsite-nav--header li:last-child a {
    margin-top: 0;
    border-color: rgba(18,63,71,.11);
    color: #111;
  }
  .cs-nav-panel .cs-nav-call {
    align-self: flex-start;
    min-height: 5rem;
    margin-top: auto;
    padding: 1rem 2.4rem;
    font-size: 1.65rem;
  }
  .cs-nav-shell.is-open .cs-nav-backdrop { opacity: 1; visibility: visible; }
  .cs-nav-shell.is-open .cs-nav-panel { transform: translateX(0); visibility: visible; }
  body:is(.cs-site-help,.cs-site-legal) #brx-content { margin-top: 11.2rem; }
}

@media (max-width: 600px) {
  body:is(.cs-site-help,.cs-site-legal) #brx-content { margin-top: 8.5rem; }
}

@media (prefers-reduced-motion: reduce) {
  body.cs-site-legal * { scroll-behavior: auto !important; transition-duration: .01ms !important; }
}
@media print {
  .cs-card-grid, .cs-richtext .cs-link-cards { display: block; }
  .cs-richtext :is(h2,h3) { break-after: avoid; }
  .cs-microsite-nav { display: none; }
  body.cs-site-legal { background: #fff; color: #000; }
  body.cs-site-legal #brx-content {
    width: 100%;
    margin: 0;
    padding: 0;
    border: 0;
    border-radius: 0;
    box-shadow: none;
  }
}

/* Match the main site's restrained active-page treatment. Header links remain
   neutral; only the current internal destination receives the short teal rule. */
body.cs-site-legal .cs-microsite-nav--header a {
  position: relative;
  border-color: transparent;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}
body.cs-site-legal .cs-microsite-nav--header a:hover {
  border-color: transparent;
  background: transparent;
  box-shadow: none;
}
body.cs-site-legal .cs-microsite-nav--header [aria-current='page'] {
  border-color: transparent;
  background: transparent;
  color: var(--cs-legal-ink);
  box-shadow: none;
  text-decoration: none;
}
body.cs-site-legal .cs-microsite-nav--header [aria-current='page']::after {
  position: absolute;
  bottom: .25rem;
  left: 50%;
  width: 4.8rem;
  height: .22rem;
  border-radius: 999px;
  background: var(--cs-legal-brand);
  content: '';
  transform: translateX(-50%);
}
body.cs-site-legal .cs-microsite-nav--header li:last-child a {
  border-radius: 999px;
}
body.cs-site-legal .cs-microsite-nav--header li:last-child a::after { display: none; }

@media (max-width: 991px) {
  /* 100svh tracks the smallest usable mobile viewport, keeping the support
     action above browser chrome and device safe areas on every microsite. */
  .cs-nav-panel {
    height: 100vh;
    height: 100svh;
    max-height: 100svh;
    overflow: hidden;
    padding-bottom: max(4rem, calc(env(safe-area-inset-bottom) + 2.4rem));
    scroll-padding-bottom: max(4rem, calc(env(safe-area-inset-bottom) + 2.4rem));
  }
  .cs-nav-panel .cs-microsite-nav--header {
    flex: 1 1 auto;
    min-height: 0;
    overflow-y: auto;
    overscroll-behavior: contain;
  }
  .cs-nav-panel .cs-nav-call {
    flex: 0 0 auto;
    margin: 1rem 0 0;
  }
  /* WordPress offsets the document below its signed-in admin toolbar. The
     fixed drawer inherits that visual offset, so subtract it from the usable
     viewport or the support action can fall below the fold for editors. */
  body.admin-bar .cs-nav-panel {
    height: calc(100svh - var(--wp-admin--admin-bar--height, 0px));
    max-height: calc(100svh - var(--wp-admin--admin-bar--height, 0px));
  }
  body.cs-site-legal .cs-nav-panel .cs-microsite-nav--header [aria-current='page'] {
    background: transparent;
    color: var(--cs-legal-ink);
  }
  body.cs-site-legal .cs-nav-panel .cs-microsite-nav--header [aria-current='page']::after {
    right: auto;
    bottom: .55rem;
    left: .8rem;
    transform: none;
  }
}
